diff --git a/config.js b/config.js index 493e195..550efb5 100644 --- a/config.js +++ b/config.js @@ -1,8 +1,8 @@ -wwindow.config = { - entryPhrase: "letmein", // phrase to enter the real site +window.config = { + entryPhrase: "getmein", // phrase to enter the real site proxyLink: "https://example.com", // proxy link, highly recommended you change it blanker: "byebye", // opens your proxy link in about blank leverofdoom: "no", alternativeproxy: "https://youtube.com", // alternative Proxy - useproxy: "true" // Some schools have certain restrictions on proxies that can cause students to get in massive trouble. Ticking this to false changes the website to only have games & movies (not in current use) + useproxy: "false" // Some schools have certain restrictions on proxies that can cause students to get in massive trouble. Ticking this to false changes the website to only have games & movies (not in current use) }; diff --git a/gversion/anime.html b/gversion/anime.html new file mode 100644 index 0000000..6054547 --- /dev/null +++ b/gversion/anime.html @@ -0,0 +1,75 @@ + + + + + + + + This content is blocked! + + + + + + + + + + + +
+ +
+
+
+ + + + \ No newline at end of file diff --git a/gversion/animehandler.js b/gversion/animehandler.js new file mode 100644 index 0000000..ad82f89 --- /dev/null +++ b/gversion/animehandler.js @@ -0,0 +1,56 @@ +const searchtheanime = document.getElementById('searchinputanime'); +const clientId = 'a908c3ca90ddc6f29b894427e8361e4e'; +function newpage(url) { + window.location.href = url; +} +function searchAnime(query) { + fetch(`https://cors-anywhere.herokuapp.com/https://api.myanimelist.net/v2/anime?q=${encodeURIComponent(query)}&limit=10`, { + headers: { + 'X-MAL-CLIENT-ID': clientId + } + }) + .then(response => response.json()) + .then(data => { + document.getElementById('animeContainer').innerHTML = ''; + data.data.forEach(anime => { + addAnimeButton(anime.node.title, anime.node.main_picture ? anime.node.main_picture.medium : null, anime.node.id); + }); + }) + .catch(error => console.error('Error fetching anime:', error)); +} +function addAnimeButton(title, imageUrl, animeId) { + const button = document.createElement('button'); + button.className = 'animebutton'; + + const image = document.createElement('img'); + image.src = imageUrl ? imageUrl : 'placeholder.jpg'; + image.className = 'animebutton-image'; + button.appendChild(image); + + const text = document.createElement('span'); + text.innerText = title; + button.appendChild(text); + + button.onclick = () => { + handleAnimeClick(title, animeId); + }; + + document.getElementById('animeContainer').appendChild(button); +} + +function handleAnimeClick(animeId) { + let id = animeId; + let season = -2 + let seasonnumber = season + let episode = prompt('What episode?'); + let episodenumber = Number(episode) + if(!isNaN(seasonnumber) && !isNaN(episodenumber && episodenumber > 0) ) { + newpage(`portal.html?id=${encodeURIComponent(id)}&season=${encodeURIComponent(season)}&episode=${encodeURIComponent(episode)}`); + } + } +searchtheanime.addEventListener('input', () => { + const query = searchtheanime.value.trim(); + if (query.length > 2) { + searchAnime(query); + } +}); \ No newline at end of file diff --git a/gversion/g.html b/gversion/g.html new file mode 100644 index 0000000..366cc67 --- /dev/null +++ b/gversion/g.html @@ -0,0 +1,75 @@ + + + + + + + + This content is blocked! + + + + + + + + + + + +
+ +
+
+ +
+ + + \ No newline at end of file diff --git a/gversion/g.json b/gversion/g.json new file mode 100644 index 0000000..dec44a4 --- /dev/null +++ b/gversion/g.json @@ -0,0 +1,17 @@ +[ + { + "name": "Cookie Clicker", + "imageUrl": "/gversion/gs/cookieclicker/clicker.jpeg", + "variable": "/gversion/gs/cookieclicker/index.html" + }, + { + "name": "ovo", + "imageUrl": "/gversion/gs/ovo/ovospaceprogram.png", + "variable": "/gversion/gs/ovo/index.html" + }, + { + "name": "Tunnel Run 2", + "imageUrl": "/gversion/gs/tunnelrush2/tunnel-rush-favicon-m135x135.jpg", + "variable": "/gversion/gs/tunnelrush2/tunnel-rush.html" + } +] diff --git a/gversion/gamehandler.js b/gversion/gamehandler.js new file mode 100644 index 0000000..3391ae5 --- /dev/null +++ b/gversion/gamehandler.js @@ -0,0 +1,61 @@ +function addGameButton(name, imageUrl, variable) { + const container = document.getElementById('gamescroller'); + const button = document.createElement('button'); + button.className = 'gamebutton'; + + button.onclick = function() { + handleButtonClick(variable); + }; + + const image = document.createElement('img'); + image.src = imageUrl; + image.alt = name; + image.className = 'gamebutton-image'; + button.appendChild(image); + + const text = document.createElement('span'); + text.innerText = name; + text.className = 'gamebutton-text'; + button.appendChild(text); + + container.appendChild(button); + } + + function handleButtonClick(variable) { + window.location.href = variable; + } + + function filterGames() { + const query = document.getElementById('searchInput').value.toLowerCase(); + const buttons = document.querySelectorAll('#gamescroller .gamebutton'); + + buttons.forEach(button => { + const name = button.querySelector('.gamebutton-text').innerText.toLowerCase(); + if (name.includes(query)) { + button.style.display = 'block'; + } else { + button.style.display = 'none'; + } + }); +} + + + function loadGameButtons() { + fetch('../gversion/g.json') + .then(response => { + if (!response.ok) throw new Error('Network response was not ok'); + return response.json(); + }) + .then(data => { + data.forEach(item => { + const { name, imageUrl, variable } = item; + addGameButton(name, imageUrl, variable); + }); + }) + .catch(error => { + console.error('Failed to fetch JSON:', error); + }); + } + document.getElementById('searchInput').addEventListener('input', filterGames); + document.addEventListener('DOMContentLoaded', loadGameButtons); + \ No newline at end of file diff --git a/gversion/gdesign.css b/gversion/gdesign.css new file mode 100644 index 0000000..4e3a02d --- /dev/null +++ b/gversion/gdesign.css @@ -0,0 +1,257 @@ +html, body { + margin: 0 !important; + overflow: hidden !important; +} + +css-doodle { + position: absolute; + top: 0; + left: 0; + width: 100%; + height: 100%; + z-index: 1; +} + +nav { + padding: 8px; + border-radius: 15px; + height: 90px; + width: 80vw; + max-width: 90vw; + overflow: hidden; + background: linear-gradient(rgba(0, 0, 0, 0.384), rgba(0, 0, 0, 0.384)); + box-shadow: 0px 8px 24px 0px rgba(0, 0, 0, 0.4); + border: 1px solid rgba(20, 20, 20, 0.349); + position: fixed; + bottom: 0; + left: 50%; + transform: translateX(-50%); + z-index: 2; + display: flex; + justify-content: space-around; + align-items: center; + margin: 20px; +} +.nav-button { + background-color: transparent; + color: whitesmoke; + border: none; + border-radius: 5px; + padding: 10px; + cursor: pointer; + font-size: 16px; + transition: background-color 0.3s; + flex: 1; + text-align: center; + display: flex; + justify-content: center; + align-items: center; +} + +.button-image { + width: 175px; + height: auto; + margin-bottom: 5px; +} + +.gamebutton { + background-color: transparent; + width: 220px; + height: 220px; + color: whitesmoke; + border: none; + border-radius: 5px; + padding: 10px; + cursor: pointer; + font-size: 16px; + transition: background-color 0.3s; + text-align: center; + justify-content: center; + align-items: center; + transition: all 0.3s ease; + margin: 15px; + border-radius: 10px; +} +.gamebutton:hover { + transform: scale(1.1); + box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.2); +} +.gamebutton-image { + width: 200px; + height: 200px; + margin-bottom: 8px; + border-radius: 10px; +} + +.gamebutton-text { + text-align: center; +} +.search { + height: 50px; + width: 1080px; + background: linear-gradient(rgba(0, 0, 0, 0.384), rgba(0, 0, 0, 0.384)); + box-shadow: 0px 8px 24px 0px rgba(0, 0, 0, 0.4); + border: 1px solid rgba(20, 20, 20, 0.349); + position: absolute; + bottom: 20px; + left: 50%; + transform: translateX(-50%); + z-index: 2; + display: flex; + flex-wrap: wrap; + justify-content: center; + align-items: center; + top: 360px; + border-radius: 10px; +} +.searchinput { + background-color: transparent; + border: 0px; + height: 50px; + width: 1080px; + color: whitesmoke; + font-size: 32px; + text-align: center; + outline: none; +} +.searchmedia { + height: 50px; + width: 1080px; + background: linear-gradient(rgba(0, 0, 0, 0.384), rgba(0, 0, 0, 0.384)); + box-shadow: 0px 8px 24px 0px rgba(0, 0, 0, 0.4); + border: 1px solid rgba(20, 20, 20, 0.349); + position: absolute; + bottom: 20px; + left: 50%; + transform: translateX(-50%); + z-index: 2; + display: flex; + flex-wrap: wrap; + justify-content: center; + align-items: center; + top: 20px; + border-radius: 10px; +} +.mediabutton { + background-color: transparent; + width: 150px; + height: 200px; + color: whitesmoke; + border: none; + border-radius: 5px; + padding: 10px; + cursor: pointer; + font-size: 16px; + transition: background-color 0.3s; + text-align: center; + justify-content: center; + align-items: center; + transition: all 0.3s ease; + margin: 15px; + border-radius: 10px; +} + +.mediabutton-image { + width: 150px; + height: 200px; + margin-bottom: 8px; + border-radius: 10px; +} + +.mediabutton:hover { + transform: scale(1.1); + box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.2); +} + +.mediaplayer { + height: 840px; + width: 1820px; + background: linear-gradient(rgba(0, 0, 0, 0.384), rgba(0, 0, 0, 0.384)); + box-shadow: 0px 8px 24px 0px rgba(0, 0, 0, 0.4); + border: 1px solid rgba(20, 20, 20, 0.349); + position: absolute; + bottom: 20px; + left: 50%; + transform: translateX(-50%); + z-index: 2; + display: flex; + flex-wrap: wrap; + justify-content: center; + align-items: center; + border-radius: 10px +} + +.animebutton { + background-color: transparent; + width: 150px; + height: 200px; + color: whitesmoke; + border: none; + border-radius: 5px; + padding: 10px; + cursor: pointer; + font-size: 16px; + transition: background-color 0.3s; + text-align: center; + justify-content: center; + align-items: center; + transition: all 0.3s ease; + margin: 15px; + border-radius: 10px; + +} + +.animebutton:hover { + transform: scale(1.1); + box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.2); +} + +.animebutton-image { + width: 150px; + height: 200px; + margin-bottom: 8px; + border-radius: 10px; +} + +.gamescroller, .mediascroller { + height: 75vh; + width: 90vw; / + background: linear-gradient(rgba(0, 0, 0, 0.384), rgba(0, 0, 0, 0.384)); + box-shadow: 0px 8px 24px 0px rgba(0, 0, 0, 0.4); + border: 1px solid rgba(20, 20, 20, 0.349); + position: absolute; + bottom: 20px; + left: 50%; + transform: translateX(-50%); + z-index: 2; + display: flex; + flex-wrap: wrap; + justify-content: center; + align-items: center; + border-radius: 10px; +} + +.return { + position: fixed; + top: 20px; + left: 20px; + z-index: 2; + background-color: transparent; + width: 50px; + height: 50px; + color: whitesmoke; + border: none; + border-radius: 5px; + padding: 10px; + cursor: pointer; + font-size: 16px; + transition: background-color 0.3s; + text-align: center; + justify-content: center; + align-items: center; + transition: all 0.3s ease; +} +.return:hover { + transform: scale(1.1); + box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.2); +} \ No newline at end of file diff --git a/gversion/gs/cookieclicker/DungeonGen.js b/gversion/gs/cookieclicker/DungeonGen.js new file mode 100644 index 0000000..72234de --- /dev/null +++ b/gversion/gs/cookieclicker/DungeonGen.js @@ -0,0 +1,871 @@ +/* +Orteil's crappy dungeon generation library, 2013 +Unfinished and buggy, use at your own risk (please credit) +http://orteil.dashnet.org + +Rough process (might or might not be what actually happens) : +1 make a room in the middle +2 pick one of its walls (not corners) +3 select a free tile on the other side of that wall +4 iteratively expand the selection in one (corridors) or two (rooms) directions, stopping when we meet a wall or when we're above the size threshold +5 compute that selection into a room +6 add decorations to the room (pillars, water) but only on the center tiles, as to leave free passages (sprinkle destructible decorations anywhere) +7 take a random floor tile in the room and repeat step 4, but don't stop at the walls of this room (this creates branching) - repeat about 5 times for interesting shapes +8 add those branches to the room +9 carve the room into the map, and set the initially selected wall as a door - set the new room's parent to the previous room, and add it to its parent's children +10 repeat step 2 with any free wall on the map until the amount of tiles dug is above the desired fill ratio + +Note : I should probably switch the rendering to canvas to allow stuff like occlusion shadows and lights +*/ + +if (1==1 || undefined==Math.seedrandom) +{ + //seeded random function, courtesy of http://davidbau.com/archives/2010/01/30/random_seeds_coded_hints_and_quintillions.html + (function(a,b,c,d,e,f){function k(a){var b,c=a.length,e=this,f=0,g=e.i=e.j=0,h=e.S=[];for(c||(a=[c++]);d>f;)h[f]=f++;for(f=0;d>f;f++)h[f]=h[g=j&g+a[f%c]+(b=h[f])],h[g]=b;(e.g=function(a){for(var b,c=0,f=e.i,g=e.j,h=e.S;a--;)b=h[f=j&f+1],c=c*d+h[j&(h[f]=h[g=j&g+b])+(h[g]=b)];return e.i=f,e.j=g,c})(d)}function l(a,b){var e,c=[],d=(typeof a)[0];if(b&&"o"==d)for(e in a)try{c.push(l(a[e],b-1))}catch(f){}return c.length?c:"s"==d?a:a+"\0"}function m(a,b){for(var d,c=a+"",e=0;c.length>e;)b[j&e]=j&(d^=19*b[j&e])+c.charCodeAt(e++);return o(b)}function n(c){try{return a.crypto.getRandomValues(c=new Uint8Array(d)),o(c)}catch(e){return[+new Date,a,a.navigator.plugins,a.screen,o(b)]}}function o(a){return String.fromCharCode.apply(0,a)}var g=c.pow(d,e),h=c.pow(2,f),i=2*h,j=d-1;c.seedrandom=function(a,f){var j=[],p=m(l(f?[a,o(b)]:0 in arguments?a:n(),3),j),q=new k(j);return m(o(q.S),b),c.random=function(){for(var a=q.g(e),b=g,c=0;h>a;)a=(a+c)*d,b*=d,c=q.g(1);for(;a>=i;)a/=2,b/=2,c>>>=1;return(a+c)/b},p},m(c.random(),b)})(this,[],Math,256,6,52); +} + +if (1==1 || undefined==choose) {function choose(arr) {if (arr.length==0) return 0; else return arr[Math.floor(Math.random()*arr.length)];}} + + +var DungeonGen=function() +{ + var TILE_EMPTY=0;//solid + var TILE_LIMIT=-100;//can't build anything here; edges of map + var TILE_FLOOR_EDGE=100; + var TILE_FLOOR_CENTER=110; + var TILE_DOOR=200; + var TILE_PILLAR=300;//not just pillars, could be any type of repetitive decoration + var TILE_WATER=400; + var TILE_WALL=500; + var TILE_WALL_CORNER=510; + var TILE_ENTRANCE=250; + var TILE_EXIT=260; + + var colors=[]; + colors[TILE_EMPTY]='000'; + colors[TILE_LIMIT]='900'; + colors[TILE_FLOOR_EDGE]='ffc'; + colors[TILE_FLOOR_CENTER]='ff9'; + colors[TILE_DOOR]='f9f'; + colors[TILE_PILLAR]='990'; + colors[TILE_WATER]='99f'; + colors[TILE_WALL]='960'; + colors[TILE_WALL_CORNER]='630'; + colors[TILE_ENTRANCE]='f9f'; + colors[TILE_EXIT]='f9f'; + + var rand=function(a,b){return Math.floor(Math.random()*(b-a+1)+a);}//return random value between a and b + + var Patterns=[]; + this.Pattern=function(name,func) + { + this.name=name; + this.func=func; + Patterns.push(this); + } + new this.Pattern('Pillars',function(x,y,room) + { + if ((x+room.x)%2==0 && (y+room.y)%2==0 && Math.random()<0.8) return TILE_PILLAR; + return 0; + }); + new this.Pattern('Large pillars',function(x,y,room) + { + if ((x+room.x)%3<2 && (y+room.y)%3<2 && Math.random()<0.8) return TILE_PILLAR; + return 0; + }); + new this.Pattern('Sparse pillars',function(x,y,room) + { + if ((x+room.x)%3==0 && (y+room.y)%3==0 && Math.random()<0.8) return TILE_PILLAR; + return 0; + }); + new this.Pattern('Lines',function(x,y,room) + { + if (room.x%2==0) if ((x+room.x)%2==0 && Math.random()<0.98) return TILE_PILLAR; + if (room.x%2==1) if ((y+room.y)%2==0 && Math.random()<0.98) return TILE_PILLAR; + return 0; + }); + + + var getRandomPattern=function() + {return choose(Patterns);} + + var defaultGenerator=function(me) + { + me.roomSize=10; + me.corridorSize=5; + me.fillRatio=1/3; + me.corridorRatio=0.2; + me.pillarRatio=0.2; + me.waterRatio=0; + me.branching=4; + me.sizeVariance=0.2; + + me.fillRatio=0.1+Math.random()*0.4; + me.roomSize=Math.ceil(rand(5,15)*me.fillRatio*2); + me.corridorSize=Math.ceil(rand(1,7)*me.fillRatio*2); + me.corridorRatio=Math.random()*0.8+0.1; + me.pillarRatio=Math.random()*0.5+0.5; + me.waterRatio=Math.pow(Math.random(),2); + me.branching=Math.floor(Math.random()*6); + me.sizeVariance=Math.random(); + } + + + this.Map=function(w,h,seed,params) + { + //create a new map + //leave the seed out for a random seed + //params is an object that contains custom parameters as defined in defaultGenerator + //example : MyMap=new DungeonGen.Map(30,30,MySeed,{waterRatio:0.8}); (80 percent of the rooms will contain water) + if (undefined!=seed) this.seed=seed; else {Math.seedrandom();this.seed=Math.random();} + Math.seedrandom(this.seed); + this.seedState=Math.random; + this.w=w||20; + this.h=h||20; + + this.roomsAreHidden=0; + + this.rooms=[]; + this.freeWalls=[];//all walls that would be a good spot for a door + this.freeTiles=[];//all passable floor tiles + this.doors=[]; + this.tiles=this.w*this.h; + this.tilesDug=0; + this.digs=0;//amount of digging steps + this.stuck=0;//how many times we ran into a problem; stop digging if we get too many of these + + this.data=[];//fill the map with 0 + for (var x=0;x=this.w-1 || ry+rh>=this.h-1) return false; + for (var x=rx;x0 && h>0) + { + if (w>0) {forcedExpansions.push(1,3);w--;} + if (h>0) {forcedExpansions.push(2,4);h--;} + } + + for (var i=0;i0) side=forcedExpansions[0]; + if (side==1) {xd=-1;wd=1;} + else if (side==2) {yd=-1;hd=1;} + else if (side==3) {wd=1;} + else if (side==4) {hd=1;} + if (this.canPlaceRoom(rx+xd,ry+yd,rw+wd,rh+hd)) {rx+=xd;ry+=yd;rw+=wd;rh+=hd;} else expansions.splice(expansions.indexOf(side),1); + if (forcedExpansions.length>0) forcedExpansions.splice(0,1); + } + if (rw>1 || rh>1) + { + this.expandRoom(room,rx,ry,rw,rh); + } + } + } + + + this.Map.prototype.carve=function(room) + { + //carve a room into the map + for (var i in room.tiles) + { + var thisTile=room.tiles[i]; + var x=thisTile.x;var y=thisTile.y; + var myType=this.data[x][y][0]; + var type=thisTile.type; + + if ((type==TILE_WALL || type==TILE_WALL_CORNER) && this.isWall(x,y)!=-1) {this.freeWalls.splice(this.isWall(x,y),1);} + + if (this.data[x][y][1]!=-1 && (type==TILE_WALL || type==TILE_WALL_CORNER)) {} + else + { + if (this.data[x][y][1]==-1) this.tilesDug++; + this.data[x][y]=[thisTile.type,room.id,0]; + if (x>1 && y>1 && x0 && room.freeTiles>0)//we got a decent room + { + this.carve(room); + this.data[door[0]][door[1]][0]=TILE_DOOR;//place door + room.door=[door[0],door[1]]; + this.data[door[0]][door[1]][1]=room.id;//set ID + this.freeWalls.splice(this.isWall(door[0],door[1]),1);//the door isn't a wall anymore + this.doors.push([door[0],door[1],room]); + //remove free tiles on either side of the door + if (this.isFloor(door[0]+side[0],door[1]+side[1])!=-1) this.removeFreeTile(door[0]+side[0],door[1]+side[1]); + if (this.isFloor(door[0]-side[0],door[1]-side[1])!=-1) this.removeFreeTile(door[0]-side[0],door[1]-side[1]); + room.parent=parentRoom; + parentRoom.children.push(room); + room.gen=parentRoom.gen+1; + } + else//not a good spot; remove this tile from the list of walls + { + this.freeWalls.splice(this.isWall(door[0],door[1]),1); + success=0; + } + } + } + if (success) return room; + else return 0; + } + + this.Map.prototype.getRandomSpotInRoom=function(room) + { + var listOfTiles=[]; + for (var i in room.tiles) + { + if ((room.tiles[i].type==TILE_FLOOR_EDGE || room.tiles[i].type==TILE_FLOOR_CENTER) && this.isFloor(room.tiles[i].x,room.tiles[i].y)!=-1) + { + listOfTiles.push(room.tiles[i]); + } + } + if (listOfTiles.length==0) return -1; + return choose(listOfTiles); + } + this.Map.prototype.getBestSpotInRoom=function(room) + { + var highest=-1; + var listOfHighest=[]; + for (var i in room.tiles) + { + if ((room.tiles[i].type==TILE_FLOOR_EDGE || room.tiles[i].type==TILE_FLOOR_CENTER) && this.isFloor(room.tiles[i].x,room.tiles[i].y)!=-1) + { + if (room.tiles[i].score>highest) + { + listOfHighest=[]; + highest=room.tiles[i].score; + listOfHighest.push(room.tiles[i]); + } + else if (room.tiles[i].score==highest) + { + listOfHighest.push(room.tiles[i]); + } + } + } + if (listOfHighest.length==0) return -1; + return choose(listOfHighest); + } + this.Map.prototype.getEarliestRoom=function() + { + return this.rooms[0]; + } + this.Map.prototype.getDeepestRoom=function() + { + var deepest=0; + var deepestRoom=this.rooms[0]; + for (var i in this.rooms) + { + if ((this.rooms[i].gen+Math.sqrt(this.rooms[i].freeTiles)*0.05)>=deepest && this.rooms[i].corridor==0 && this.rooms[i].freeTiles>4) {deepest=(this.rooms[i].gen+Math.sqrt(this.rooms[i].freeTiles)*0.05);deepestRoom=this.rooms[i];} + } + return deepestRoom; + } + + this.Map.prototype.dig=function() + { + //one step in which we try to carve new stuff + //returns 0 when we couldn't dig this step, 1 when we could, and 2 when the digging is complete + Math.random=this.seedState; + + var badDig=0; + + if (this.digs==0)//first dig : build a starting room in the middle of the map + { + var w=rand(3,7); + var h=rand(3,7); + var room=this.newRoom(Math.floor(this.w/2-w/2),Math.floor(this.h/2-h/2),w,h); + room.corridor=0; + this.planRoom(room); + this.carve(room); + } + else + { + if (this.newRandomRoom()==0) badDig++; + } + if (badDig>0) this.stuck++; + + this.digs++; + + var finished=0; + if (this.tilesDug>=this.tiles*this.fillRatio) finished=1; + if (this.stuck>100) finished=1; + + if (finished==1)//last touch : try to add a whole room at the end + { + for (var i=0;i<10;i++) + { + var newRoom=this.newRandomRoom({corridor:0,w:rand(3,7),h:rand(3,7)}); + if (newRoom!=0 && newRoom.freeTiles>15) break; + } + } + + Math.seedrandom(); + if (finished==1) return 1; else if (badDig>0) return -1; else return 0; + } + + this.Map.prototype.finish=function() + { + //touch up the map : add pillars in corners etc + /* + //set paths + for (var i in this.rooms) + { + var me=this.rooms[i]; + if (me.door!=0) + { + var doors=[]; + doors.push(me.door); + for (var ii in me.children) + { + if (me.children[ii].door!=0) doors.push(me.children[ii].door); + } + for (var ii in doors) + { + this.data[doors[ii][0]][doors[ii][1]][0]=TILE_LIMIT; + //ideally we should run agents that step from each door to the next + } + } + } + */ + for (var i in this.rooms) + { + var pillars=Math.random()4) + { + if ((angle==1 || (complete && walls==7)) && me==TILE_FLOOR_EDGE && x1!=TILE_DOOR && x2!=TILE_DOOR && y1!=TILE_DOOR && y2!=TILE_DOOR) + { + this.data[x][y][0]=TILE_PILLAR; + me=TILE_PILLAR; + this.removeFreeTile(x,y); + this.rooms[i].freeTiles--; + } + } + + //calculate score (for placing items and exits) + if (top==1 || bottom==1 || left==1 || right==1) + { + this.rooms[i].tiles[ii].score+=2; + } + if (walls>5 || floors>5) + { + this.rooms[i].tiles[ii].score+=1; + } + if (walls==7 || floors==8) + { + this.rooms[i].tiles[ii].score+=5; + } + if ((me!=TILE_FLOOR_CENTER && me!=TILE_FLOOR_EDGE) || x1==TILE_DOOR || x2==TILE_DOOR || y1==TILE_DOOR || y2==TILE_DOOR) this.rooms[i].tiles[ii].score=-1; + + } + } + + + + //carve entrance and exit + var entrance=this.getBestSpotInRoom(this.getEarliestRoom()); + this.data[entrance.x][entrance.y][0]=TILE_ENTRANCE; + this.entrance=[entrance.x,entrance.y]; + entrance.score=0; + this.removeFreeTile(entrance.x,entrance.y); + var exit=this.getBestSpotInRoom(this.getDeepestRoom()); + this.data[exit.x][exit.y][0]=TILE_EXIT; + this.exit=[exit.x,exit.y]; + this.removeFreeTile(exit.x,exit.y); + exit.score=0; + + /* + for (var i in this.doors)//remove door tiles (to add later; replace the tiles by entities that delete themselves when opened) + { + this.data[this.doors[i][0]][this.doors[i][1]][0]=TILE_FLOOR_EDGE; + } + */ + } + + this.Map.prototype.isObstacle=function(x,y) + { + var free=[TILE_FLOOR_EDGE,TILE_FLOOR_CENTER,TILE_DOOR,TILE_ENTRANCE,TILE_EXIT]; + for (var i in free) + { + if (this.data[x][y][0]==free[i]) return 0; + } + return 1; + } + + var joinTile=function(map,x,y,joinWith) + { + //for the tile at x,y, return 2 if it joins with its horizontal neighbors, 3 if it joins with its vertical neighbors, 1 if it joins with either both or neither. + //joinWith contains the tile types that count as joinable, in addition to this tile. (don't add the tested tile to joinWith!) + var p=1; + var me=map.data[x][y][0]; + var x1=map.data[x-1][y][0]; + var x2=map.data[x+1][y][0]; + var y1=map.data[x][y-1][0]; + var y2=map.data[x][y+1][0]; + joinWith.push(me); + var joinsX=0; + for (var i in joinWith) + { + if (x1==joinWith[i]) joinsX++; + if (x2==joinWith[i]) joinsX++; + } + var joinsY=0; + for (var i in joinWith) + { + if (y1==joinWith[i]) joinsY++; + if (y2==joinWith[i]) joinsY++; + } + if (joinsX==2 && joinsY==2) p=1; + else if (joinsX==2) p=2; + else if (joinsY==2) p=3; + return p; + } + this.Map.prototype.getPic=function(x,y) + { + //return a position [x,y] in the tiles (as 0, 1, 2...) for the tile on the map at position x,y + if (Tiles[this.data[x][y][2]]) + { + if (Tiles[this.data[x][y][2]].joinType=='join') + { + var thisPic=Tiles[this.data[x][y][2]].pic; + thisPic=[thisPic[0],thisPic[1]];//why is this even necessary? + var joinWith=[]; + if (this.data[x][y][0]==TILE_WALL) joinWith.push(TILE_WALL_CORNER); + else if (this.data[x][y][0]==TILE_DOOR) joinWith.push(TILE_WALL,TILE_WALL_CORNER); + thisPic[0]+=joinTile(this,x,y,joinWith)-1; + return thisPic; + } + else if (Tiles[this.data[x][y][2]].joinType=='random3') + { + var thisPic=Tiles[this.data[x][y][2]].pic; + thisPic=[thisPic[0],thisPic[1]]; + thisPic[0]+=Math.floor(Math.random()*3); + return thisPic; + } + return Tiles[this.data[x][y][2]].pic; + } + return [0,0]; + } + + var Tiles=[]; + var TilesByName=[]; + this.Tile=function(name,pic,joinType) + { + this.name=name; + this.pic=pic; + this.joinType=joinType||'none'; + this.id=Tiles.length; + Tiles[this.id]=this; + TilesByName[this.name]=this; + } + new this.Tile('void',[0,0]); + this.loadTiles=function(tiles) + { + for (var i in tiles) + { + var name=tiles[i][0]; + var pic=tiles[i][1]; + var joinType=tiles[i][2]; + new this.Tile(name,pic,joinType); + } + } + + var computeTile=function(tile,tiles,value,name) + { + if (tile==value && tiles[name]) return TilesByName[tiles[name]]; + return 0; + } + this.Map.prototype.assignTiles=function(room,tiles) + { + //set the displayed tiles for this room + for (var i in room.tiles) + { + var type=Tiles[0]; + var me=room.tiles[i]; + var tile=this.data[me.x][me.y][0]; + type=computeTile(tile,tiles,TILE_WALL_CORNER,'wall corner')||type; + type=computeTile(tile,tiles,TILE_WALL,'wall')||type; + type=computeTile(tile,tiles,TILE_FLOOR_EDGE,'floor edges')||type; + type=computeTile(tile,tiles,TILE_FLOOR_CENTER,'floor')||type; + type=computeTile(tile,tiles,TILE_PILLAR,'pillar')||type; + type=computeTile(tile,tiles,TILE_DOOR,'door')||type; + type=computeTile(tile,tiles,TILE_WATER,'water')||type; + type=computeTile(tile,tiles,TILE_ENTRANCE,'entrance')||type; + type=computeTile(tile,tiles,TILE_EXIT,'exit')||type; + + this.data[me.x][me.y][2]=type.id; + } + } + + + this.Map.prototype.draw=function(size) + { + //return a string containing a rough visual representation of the map + var str=''; + var size=size||10; + for (var y=0;y'+text+''; + } + str+='
'; + } + str='
'+str+'
'; + return str; + } + + this.Map.prototype.drawDetailed=function() + { + //return a string containing a rough visual representation of the map (with graphics) + var str=''; + var size=16; + for (var y=0;y'; + } + str+='
'; + } + str='
'+str+'
'; + return str; + } + + this.Map.prototype.getStr=function() + { + //return a string containing the map with tile graphics, ready to be pasted in a wrapper + var str=''; + var size=16; + for (var y=0;y'; + } + str+='
'; + } + return str; + } + +} \ No newline at end of file diff --git a/gversion/gs/cookieclicker/ajax.js b/gversion/gs/cookieclicker/ajax.js new file mode 100644 index 0000000..8d08eab --- /dev/null +++ b/gversion/gs/cookieclicker/ajax.js @@ -0,0 +1,6 @@ +function ajax(url,callback){ + var ajaxRequest; + try{ajaxRequest = new XMLHttpRequest();} catch (e){try{ajaxRequest=new ActiveXObject('Msxml2.XMLHTTP');} catch (e) {try{ajaxRequest=new ActiveXObject('Microsoft.XMLHTTP');} catch (e){alert("Something broke!");return false;}}} + if (callback){ajaxRequest.onreadystatechange=function(){if(ajaxRequest.readyState==4){callback(ajaxRequest.responseText);}}} + ajaxRequest.open('GET',url+'&nocache='+(new Date().getTime()),true);ajaxRequest.send(null); +} \ No newline at end of file diff --git a/gversion/gs/cookieclicker/base64.js b/gversion/gs/cookieclicker/base64.js new file mode 100644 index 0000000..6e87eb7 --- /dev/null +++ b/gversion/gs/cookieclicker/base64.js @@ -0,0 +1,142 @@ +/** +* +* Base64 encode / decode +* http://www.webtoolkit.info/ +* +**/ + +var Base64 = { + + // private property + _keyStr : "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=", + + // public method for encoding + encode : function (input) { + var output = ""; + var chr1, chr2, chr3, enc1, enc2, enc3, enc4; + var i = 0; + + input = Base64._utf8_encode(input); + + while (i < input.length) { + + chr1 = input.charCodeAt(i++); + chr2 = input.charCodeAt(i++); + chr3 = input.charCodeAt(i++); + + enc1 = chr1 >> 2; + enc2 = ((chr1 & 3) << 4) | (chr2 >> 4); + enc3 = ((chr2 & 15) << 2) | (chr3 >> 6); + enc4 = chr3 & 63; + + if (isNaN(chr2)) { + enc3 = enc4 = 64; + } else if (isNaN(chr3)) { + enc4 = 64; + } + + output = output + + this._keyStr.charAt(enc1) + this._keyStr.charAt(enc2) + + this._keyStr.charAt(enc3) + this._keyStr.charAt(enc4); + + } + + return output; + }, + + // public method for decoding + decode : function (input) { + var output = ""; + var chr1, chr2, chr3; + var enc1, enc2, enc3, enc4; + var i = 0; + + input = input.replace(/[^A-Za-z0-9\+\/\=]/g, ""); + + while (i < input.length) { + + enc1 = this._keyStr.indexOf(input.charAt(i++)); + enc2 = this._keyStr.indexOf(input.charAt(i++)); + enc3 = this._keyStr.indexOf(input.charAt(i++)); + enc4 = this._keyStr.indexOf(input.charAt(i++)); + + chr1 = (enc1 << 2) | (enc2 >> 4); + chr2 = ((enc2 & 15) << 4) | (enc3 >> 2); + chr3 = ((enc3 & 3) << 6) | enc4; + + output = output + String.fromCharCode(chr1); + + if (enc3 != 64) { + output = output + String.fromCharCode(chr2); + } + if (enc4 != 64) { + output = output + String.fromCharCode(chr3); + } + + } + + output = Base64._utf8_decode(output); + + return output; + + }, + + // private method for UTF-8 encoding + _utf8_encode : function (string) { + string = string.replace(/\r\n/g,"\n"); + var utftext = ""; + + for (var n = 0; n < string.length; n++) { + + var c = string.charCodeAt(n); + + if (c < 128) { + utftext += String.fromCharCode(c); + } + else if((c > 127) && (c < 2048)) { + utftext += String.fromCharCode((c >> 6) | 192); + utftext += String.fromCharCode((c & 63) | 128); + } + else { + utftext += String.fromCharCode((c >> 12) | 224); + utftext += String.fromCharCode(((c >> 6) & 63) | 128); + utftext += String.fromCharCode((c & 63) | 128); + } + + } + + return utftext; + }, + + // private method for UTF-8 decoding + _utf8_decode : function (utftext) { + var string = ""; + var i = 0; + var c = c1 = c2 = 0; + + while ( i < utftext.length ) { + + c = utftext.charCodeAt(i); + + if (c < 128) { + string += String.fromCharCode(c); + i++; + } + else if((c > 191) && (c < 224)) { + c2 = utftext.charCodeAt(i+1); + string += String.fromCharCode(((c & 31) << 6) | (c2 & 63)); + i += 2; + } + else { + c2 = utftext.charCodeAt(i+1); + c3 = utftext.charCodeAt(i+2); + string += String.fromCharCode(((c & 15) << 12) | ((c2 & 63) << 6) | (c3 & 63)); + i += 3; + } + + } + + return string; + } + +} \ No newline at end of file diff --git a/gversion/gs/cookieclicker/clicker.jpeg b/gversion/gs/cookieclicker/clicker.jpeg new file mode 100644 index 0000000..f24ee91 Binary files /dev/null and b/gversion/gs/cookieclicker/clicker.jpeg differ diff --git a/gversion/gs/cookieclicker/cookie1.jpeg b/gversion/gs/cookieclicker/cookie1.jpeg new file mode 100644 index 0000000..d67b7e3 Binary files /dev/null and b/gversion/gs/cookieclicker/cookie1.jpeg differ diff --git a/gversion/gs/cookieclicker/cookieconsent.css b/gversion/gs/cookieclicker/cookieconsent.css new file mode 100644 index 0000000..8d9c1e2 --- /dev/null +++ b/gversion/gs/cookieclicker/cookieconsent.css @@ -0,0 +1 @@ +.cc_banner-wrapper{z-index:10000000000000;position:relative}.cc_container .cc_btn{cursor:pointer;text-align:center;font-size:0.6em;transition:font-size 200ms;line-height:1em}.cc_container .cc_message{font-size:0.6em;transition:font-size 200ms;margin:0;padding:0;line-height:1.5em}.cc_container .cc_logo{display:none;text-indent:-1000px;overflow:hidden;width:100px;height:22px;background-size:cover;background-image:url(logo.png);opacity:0.9;transition:opacity 200ms}.cc_container .cc_logo:hover,.cc_container .cc_logo:active{opacity:1}@media screen and (min-width: 500px){.cc_container .cc_btn{font-size:0.8em}.cc_container .cc_message{font-size:0.8em}}@media screen and (min-width: 768px){.cc_container .cc_btn{font-size:1em}.cc_container .cc_message{font-size:1em;line-height:1em}}@media screen and (min-width: 992px){.cc_container .cc_message{font-size:1em}}@media print{.cc_banner-wrapper,.cc_container{display:none}}.cc_container{position:fixed;left:0;right:0;bottom:0;overflow:hidden;padding:10px}.cc_container .cc_btn{padding:8px 10px;background-color:#f1d600;cursor:pointer;transition:font-size 200ms;text-align:center;font-size:0.6em;display:block;width:33%;margin-left:10px;float:right;max-width:120px}.cc_container .cc_message{transition:font-size 200ms;font-size:0.6em;display:block}@media screen and (min-width: 500px){.cc_container .cc_btn{font-size:0.8em}.cc_container .cc_message{margin-top:0.5em;font-size:0.8em}}@media screen and (min-width: 768px){.cc_container{padding:15px 30px 15px}.cc_container .cc_btn{font-size:1em;padding:8px 15px}.cc_container .cc_message{font-size:1em}}@media screen and (min-width: 992px){.cc_container .cc_message{font-size:1em}}.cc_container{background:#fff;color:#999;font-size:17px;font-family:"Helvetica Neue Light", "HelveticaNeue-Light", "Helvetica Neue", Calibri, Helvetica, Arial;box-sizing:border-box;border:1px solid #ccc}.cc_container ::-moz-selection{background:#ff5e99;color:#fff;text-shadow:none}.cc_container .cc_btn,.cc_container .cc_btn:visited{color:#000;background-color:#f1d600;transition:background 200ms ease-in-out,color 200ms ease-in-out,box-shadow 200ms ease-in-out;-webkit-transition:background 200ms ease-in-out,color 200ms ease-in-out,box-shadow 200ms ease-in-out;border-radius:5px;-webkit-border-radius:5px}.cc_container .cc_btn:hover,.cc_container .cc_btn:active{background-color:#d7bf00;color:#000}.cc_container a,.cc_container a:visited{text-decoration:none;color:#31a8f0;transition:200ms color}.cc_container a:hover,.cc_container a:active{color:#555}@-webkit-keyframes slideUp{0%{-webkit-transform:translateY(66px);transform:translateY(66px)}100%{-webkit-transform:translateY(0);transform:translateY(0)}}@keyframes slideUp{0%{-webkit-transform:translateY(66px);-ms-transform:translateY(66px);transform:translateY(66px)}100%{-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}}.cc_container,.cc_message,.cc_btn{animation-duration:0.8s;-webkit-animation-duration:0.8s;-moz-animation-duration:0.8s;-o-animation-duration:0.8s;-webkit-animation-name:slideUp;animation-name:slideUp} \ No newline at end of file diff --git a/gversion/gs/cookieclicker/cookieconsent.min.js b/gversion/gs/cookieclicker/cookieconsent.min.js new file mode 100644 index 0000000..ebe4797 --- /dev/null +++ b/gversion/gs/cookieclicker/cookieconsent.min.js @@ -0,0 +1 @@ +!function(){if(!window.hasCookieConsent){window.hasCookieConsent=!0;var e="cookieconsent_options",t="update_cookieconsent_options",n="cookieconsent_dismissed",i="//cdnjs.cloudflare.com/ajax/libs/cookieconsent2/1.0.9/";if(!(document.cookie.indexOf(n)>-1)){"function"!=typeof String.prototype.trim&&(String.prototype.trim=function(){return this.replace(/^\s+|\s+$/g,"")});var o,s={isArray:function(e){var t=Object.prototype.toString.call(e);return"[object Array]"==t},isObject:function(e){return"[object Object]"==Object.prototype.toString.call(e)},each:function(e,t,n,i){if(s.isObject(e)&&!i)for(var o in e)e.hasOwnProperty(o)&&t.call(n,e[o],o,e);else for(var r=0,c=e.length;c>r;r++)t.call(n,e[r],r,e)},merge:function(e,t){e&&s.each(t,function(t,n){s.isObject(t)&&s.isObject(e[n])?s.merge(e[n],t):e[n]=t})},bind:function(e,t){return function(){return e.apply(t,arguments)}},queryObject:function(e,t){var n,i=0,o=e;for(t=t.split(".");(n=t[i++])&&o.hasOwnProperty(n)&&(o=o[n]);)if(i===t.length)return o;return null},setCookie:function(e,t,n,i,o){n=n||365;var s=new Date;s.setDate(s.getDate()+n);var r=[e+"="+t,"expires="+s.toUTCString(),"path="+o||"/"];i&&r.push("domain="+i),document.cookie=r.join(";")},addEventListener:function(e,t,n){e.addEventListener?e.addEventListener(t,n):e.attachEvent("on"+t,n)}},r=function(){var e="data-cc-event",t="data-cc-if",n=function(e,t,i){return s.isArray(t)?s.each(t,function(t){n(e,t,i)}):void(e.addEventListener?e.addEventListener(t,i):e.attachEvent("on"+t,i))},i=function(e,t){return e.replace(/\{\{(.*?)\}\}/g,function(e,n){for(var i,o,r=n.split("||");o=r.shift();){if(o=o.trim(),'"'===o[0])return o.slice(1,o.length-1);if(i=s.queryObject(t,o))return i}return""})},o=function(e){var t=document.createElement("div");return t.innerHTML=e,t.children[0]},r=function(e,t,n){var i=e.parentNode.querySelectorAll("["+t+"]");s.each(i,function(e){var i=e.getAttribute(t);n(e,i)},window,!0)},c=function(t,i){r(t,e,function(e,t){var o=t.split(":"),r=s.queryObject(i,o[1]);n(e,o[0],s.bind(r,i))})},a=function(e,n){r(e,t,function(e,t){var i=s.queryObject(n,t);i||e.parentNode.removeChild(e)})};return{build:function(e,t){s.isArray(e)&&(e=e.join("")),e=i(e,t);var n=o(e);return c(n,t),a(n,t),n}}}(),c={options:{message:"This website uses cookies to ensure you get the best experience on our website. ",dismiss:"Got it!",learnMore:"More info",link:null,target:"_self",container:null,theme:"light-floating",domain:null,path:"/",expiryDays:365,markup:['"]},init:function(){var t=window[e];t&&this.setOptions(t),this.setContainer(),this.options.theme?this.loadTheme(this.render):this.render()},setOptionsOnTheFly:function(e){this.setOptions(e),this.render()},setOptions:function(e){s.merge(this.options,e)},setContainer:function(){this.options.container?this.container=document.querySelector(this.options.container):this.container=document.body,this.containerClasses="",navigator.appVersion.indexOf("MSIE 8")>-1&&(this.containerClasses+=" cc_ie8")},loadTheme:function(e){var t=this.options.theme;-1===t.indexOf(".css")&&(t=i+t+".css");var n=document.createElement("link");n.rel="stylesheet",n.type="text/css",n.href=t;var o=!1;n.onload=s.bind(function(){!o&&e&&(e.call(this),o=!0)},this),document.getElementsByTagName("head")[0].appendChild(n)},render:function(){this.element&&this.element.parentNode&&(this.element.parentNode.removeChild(this.element),delete this.element),this.element=r.build(this.options.markup,this),this.container.firstChild?this.container.insertBefore(this.element,this.container.firstChild):this.container.appendChild(this.element)},dismiss:function(e){e.preventDefault&&e.preventDefault(),e.returnValue=!1,this.setDismissedCookie(),this.container.removeChild(this.element)},setDismissedCookie:function(){s.setCookie(n,"yes",this.options.expiryDays,this.options.domain,this.options.path)}},a=!1;(o=function(){a||"complete"!=document.readyState||(c.init(),a=!0,window[t]=s.bind(c.setOptionsOnTheFly,c))})(),s.addEventListener(document,"readystatechange",o)}}}(); \ No newline at end of file diff --git a/gversion/gs/cookieclicker/dungeons.js b/gversion/gs/cookieclicker/dungeons.js new file mode 100644 index 0000000..7271fb3 --- /dev/null +++ b/gversion/gs/cookieclicker/dungeons.js @@ -0,0 +1,1136 @@ +/* +Orteil's sloppy Cookie Clicker dungeons + +Optimizations to do (not mentioning the dozens of missing features) : +-use canvas instead +-only compute AI for mobs with 2 tiles of view +*/ +var LaunchDungeons=function() +{ + Game.GetWord=function(type) + { + if (type=='secret') return choose(['hidden','secret','mysterious','forgotten','forbidden','lost','sunk','buried','concealed','shrouded','invisible','elder']); + if (type=='ruined') return choose(['ancient','old','ruined','ravaged','destroyed','collapsed','demolished','burnt','torn-down','shattered','dilapidated','abandoned','crumbling','derelict','decaying']); + if (type=='magical') return choose(['arcane','magical','mystical','sacred','honed','banished','unholy','holy','demonic','enchanted','necromantic','bewitched','haunted','occult','astral']); + return ''; + } + + /*===================================================================================== + DUNGEONS + =======================================================================================*/ + Game.DungeonTypes=[]; + Game.DungeonType=function(name) + { + this.name=name; + this.nameGenerator=function(){return 'Mysterious dungeon';}; + this.roomTypes=[]; + Game.DungeonTypes[this.name]=this; + return this; + }; + + /*===================================================================================== + CREATE DUNGEON TYPES + =======================================================================================*/ + new Game.DungeonType('Factory'). + nameGenerator=function(){ + var str=''; + str+=Game.GetWord(choose(['secret','ruined','magical']))+' '+choose(['factory','factories','bakery','bakeries','confectionery','laboratory','research center','chocolate forge','chocolate foundry','manufactory','warehouse','machinery','works','bakeworks','workshop','assembly line']); + return str; + }; + + new Game.DungeonType('Mine'). + nameGenerator=function(){ + var str=''; + str+=Game.GetWord(choose(['secret','ruined','magical']))+' '+choose(['chocolate','chocolate','chocolate','white chocolate','sugar','cacao'])+' '+choose(['mine','mines','pit','pits','quarry','excavation','tunnel','shaft','lode','trench','mountain','vein','cliff','peak','dome','crater','abyss','chasm','hole','burrow']); + return str; + }; + + new Game.DungeonType('Portal'). + nameGenerator=function(){ + var str=''; + str+=Game.GetWord(choose(['secret','ruined','magical']))+' '+choose(['portal','gate','dimension','warpgate','door']); + return str; + }; + + new Game.DungeonType('Secret zebra level'). + nameGenerator=function(){ + var str=''; + str+=Game.GetWord(choose(['secret']))+' '+choose(['zebra level']); + return str; + }; + + + /*===================================================================================== + CREATE TILE TYPES + =======================================================================================*/ + + var D=new DungeonGen(); + D.loadTiles([ + ['wall',[1,0],'join'], + ['wall corner',[1,0]], + ['floor',[1,1],'random3'], + ['tiled floor',[1,2],'join'], + ['round pillar',[1,4]], + ['square pillar',[2,4]], + ['potted plant',[3,4]], + ['bookshelf',[4,5],'join'], + ['door',[1,3],'join'], + ['alt wall',[4,0],'join'], + ['alt wall corner',[4,0]], + ['alt floor',[4,1],'random3'], + ['alt tiled floor',[4,2],'join'], + ['alt round pillar',[4,4]], + ['alt square pillar',[5,4]], + ['alt potted plant',[6,4]], + ['alt bookshelf',[4,6],'join'], + ['alt door',[4,3],'join'], + ['water',[1,5]], + ['green water',[2,5]], + ['dark water',[3,5]], + ['wooden wall',[1,7],'join'], + ['wooden floor',[1,6],'random3'], + ['conveyor belt',[4,7],'join'], + ['entrance',[0,1]], + ['alt entrance',[0,3]], + ['exit',[0,2]], + ['alt exit',[0,4]] + ]); + + + /*===================================================================================== + CREATE MONSTER TYPES + =======================================================================================*/ + + /* + An explanation of stats : + -hp : health points + -speed : determines who attacks first in a fight; bypasses dodging; determines how fast heroes auto-run dungeons + -might : determines how much damage is done to opponents + -guard : lowers incoming damage + -dodge : chance of avoiding incoming attacks completely (affected by the opponent's speed) + -luck : heroes only, determines drops and rare encounters + -rarity : monsters only, determines how often a monster is added to the spawn table + -level : monsters only, determines which average room depth the monster is more likely to spawn in (also determines the loot amount) + */ + Game.monsterIconY=10;//offset for dungeonItems.png monsters + Game.Monsters=[]; + Game.Monster=function(name,pic,icon,level,stats,loot) + { + this.name=name; + this.pic=pic; + this.icon=icon; + this.level=level; + this.stats={}; + for (var i in stats) + {this.stats[i]=stats[i];} + this.stats.hpm=this.stats.hp; + this.stats.rarity=stats.rarity||1; + this.loot=loot||{}; + this.boss=0; + this.quotes={}; + Game.Monsters[this.name]=this; + } + var basicLoot={cookies:{min:1,max:5,prob:0.5}}; + var goodLoot={cookies:{min:3,max:8,prob:1},gear:{prob:0.05}}; + var bossLoot={gear:{prob:1}}; + var chestLoot={cookies:{min:2,max:20,prob:1},gear:{prob:0.1}}; + var bossLoot={cookies:{min:10,max:50,prob:1},gear:{prob:0.2}}; + + //general monsters + new Game.Monster('Doughling','doughling',[0,0],1,{hp:5,might:2,guard:2,speed:6,dodge:6,rarity:0.7},basicLoot); + new Game.Monster('Elder doughling','elderDoughling',[1,0],7,{hp:20,might:7,guard:7,speed:4,dodge:4,rarity:0.7},goodLoot); + new Game.Monster('Angry sentient cookie','angrySentientCookie',[5,0],5,{hp:16,might:8,guard:4,speed:5,dodge:5,rarity:1},basicLoot); + new Game.Monster('Baby sentient cookie','babySentientCookie',[4,0],1,{hp:3,might:1,guard:1,speed:7,dodge:7,rarity:1},basicLoot); + new Game.Monster('Burnt sentient cookie','burntSentientCookie',[6,0],5,{hp:16,might:12,guard:2,speed:3,dodge:2,rarity:0.2},basicLoot); + new Game.Monster('Raw sentient cookie','rawSentientCookie',[5,0],5,{hp:16,might:6,guard:4,speed:7,dodge:7,rarity:0.2},basicLoot); + new Game.Monster('Sugar bunny','sugarBunny',[8,0],5,{hp:10,might:3,guard:8,speed:12,dodge:9,rarity:0.001},{cookies:{min:1000,max:10000}}); + Game.Monsters['Sugar bunny'].onKill=function(){Game.Win('Follow the white rabbit');};Game.Monsters['Sugar bunny'].AI='flee'; + + //factory monsters + new Game.Monster('Crazed kneader','crazedKneader',[0,2],6,{hp:18,might:6,guard:8,speed:3,dodge:2,rarity:0.5},goodLoot); + new Game.Monster('Crazed chip-spurter','crazedDoughSpurter',[0,2],6,{hp:15,might:6,guard:8,speed:5,dodge:3,rarity:0.5},goodLoot); + new Game.Monster('Alarm bot','alarmTurret',[3,2],2,{hp:6,might:3,guard:5,speed:8,dodge:8,rarity:0.5},basicLoot); + new Game.Monster('Chirpy','chirpy',[4,2],3,{hp:7,might:4,guard:6,speed:9,dodge:9,rarity:0.01},{cookies:{min:500,max:5000}}); + Game.Monsters['Chirpy'].onKill=function(){Game.Win('Chirped out');};Game.Monsters['Chirpy'].quotes={fight:'oh, hello <3'}; + new Game.Monster('Disgruntled worker','disgruntledWorker',[1,2],4,{hp:14,might:5,guard:5,speed:6,dodge:4,rarity:0.6},basicLoot); + new Game.Monster('Disgruntled overseer','disgruntledOverseer',[1,2],7,{hp:22,might:7,guard:5,speed:6,dodge:4,rarity:0.5},basicLoot); + new Game.Monster('Disgruntled cleaning lady','disgruntledCleaningLady',[2,2],4,{hp:13,might:4,guard:5,speed:7,dodge:6,rarity:0.3},basicLoot); + + new Game.Monster('Sentient Furnace','sentientFurnace',[0,3],0,{hp:60,might:14,guard:12,speed:4,dodge:0,rarity:1},bossLoot);//boss + Game.Monsters['Sentient Furnace'].onKill=function(){Game.Win('Getting even with the oven');};Game.Monsters['Sentient Furnace'].AI='static';Game.Monsters['Sentient Furnace'].boss=1;Game.Monsters['Sentient Furnace'].quotes={fight:'YOU ARE NOT READY!',defeat:'OH... BURN.'}; + new Game.Monster('Ascended Baking Pod','ascendedBakingPod',[1,3],0,{hp:60,might:12,guard:14,speed:4,dodge:0,rarity:0.7},bossLoot);//boss + Game.Monsters['Ascended Baking Pod'].onKill=function(){Game.Win('Now this is pod-smashing');};Game.Monsters['Ascended Baking Pod'].AI='static';Game.Monsters['Ascended Baking Pod'].boss=1;Game.Monsters['Ascended Baking Pod'].quotes={fight:'rrrrrrrise.',defeat:'blrglblg.'}; + + + Game.BossMonsters=[]; + for (var i in Game.Monsters) + { + if (Game.Monsters[i].boss) Game.BossMonsters.push(Game.Monsters[i]); + } + + /*===================================================================================== + ENTITY MECHANICS + =======================================================================================*/ + + Game.Entity=function(type,subtype,dungeon,pic,stats)//objects you could find on the map : doors, mobs, interactables, items, player, exits... + { + this.type=type; + this.subtype=subtype||''; + this.dungeon=dungeon; + this.pic=pic||[0,0]; + this.stats={}; + for (var i in stats) + {this.stats[i]=stats[i];} + + this.x=-1; + this.y=-1; + this.obstacle=0; + this.zIndex=1; + if (this.type=='monster') + { + this.obstacle=1; + this.pic=[Game.Monsters[this.subtype].icon[0],Game.Monsters[this.subtype].icon[1]]; + this.pic[1]+=Game.monsterIconY; + this.targets=[]; + this.stuck=0; + this.zIndex=10; + this.fighting=0; + this.AI=Game.Monsters[this.subtype].AI||'normal'; + this.onKill=Game.Monsters[this.subtype].onKill||function(){}; + for (var i in Game.Monsters[this.subtype].stats){this.stats[i]=Game.Monsters[this.subtype].stats[i];} + } + else if (this.type=='hero') + { + this.obstacle=1; + this.pic=[Game.Heroes[this.subtype].icon[0],Game.Heroes[this.subtype].icon[1]]; + this.targets=[]; + this.stuck=0; + this.zIndex=100; + this.fighting=0; + for (var i in Game.Heroes[this.subtype].stats){this.stats[i]=Game.Heroes[this.subtype].stats[i];} + + //increase stats by amount of matching building (change that later to use gear instead) + var mult=Math.max(0,(Game.Objects[this.dungeon.type].amount/20-1)); + this.stats.hpm+=Math.ceil(mult*2); + this.stats.hp=this.stats.hpm; + this.stats.might+=mult; + this.stats.guard+=mult; + this.stats.speed+=mult; + this.stats.dodge+=mult; + } + else if (this.type=='item') + { + this.zIndex=5; + this.value=0; + } + else if (this.type=='destructible')//crates, doors + { + this.obstacle=1; + this.life=3; + this.zIndex=15; + if (this.subtype=='door') this.pic=[0,7]; + else this.pic=[Math.floor(Math.random()*4+2),7]; + + this.onKill=function() + { + if (this.subtype=='random') + { + var value=Math.round(Math.pow(Math.random(),6)*(10+this.dungeon.level)); + if (value>0) + { + var entity=this.dungeon.AddEntity('item','cookies',this.x,this.y); + entity.value=value; + } + } + } + } + else if (this.type=='special') + { + this.zIndex=5; + this.value=''; + this.obstacle=1; + } + + this.Say=function(what) + { + if (this.type=='monster') + { + if (Game.Monsters[this.subtype].quotes[what]) this.dungeon.Log(this.subtype+' : "'+choose(Game.Monsters[this.subtype].quotes[what].split('|'))+'"'); + } + } + this.Draw=function()//return the string to draw this + { + var name='?'; + if (this.subtype=='random') name='clutter'; else name=this.subtype; + if (this.type=='item' && this.subtype=='cookies' && this.value>0) + { + if (this.value<2) this.pic=[0,5]; + else if (this.value<3) this.pic=[1,5]; + else if (this.value<4) this.pic=[2,5]; + else if (this.value<6) this.pic=[3,5]; + else if (this.value<10) this.pic=[4,5]; + else if (this.value<20) this.pic=[5,5]; + else if (this.value<30) this.pic=[7,5]; + else if (this.value<70) this.pic=[6,5]; + else if (this.value<200) this.pic=[8,5]; + else this.pic=[6,6];// if (this.value<1000) this.pic=[1,5]; + } + else if (this.type=='special' && this.subtype=='upgrade') + { + if (this.value!='') this.pic=[7,6]; else this.pic=[8,6]; + } + return '
'; + } + this.Wander=function()//AI to move around aimlessly + { + this.targets=[]; + this.targets.push([-1,0],[1,0],[0,-1],[0,1]); + this.Move(); + } + this.GoTo=function(x,y)//AI to move to a specific point + { + this.targets=[]; + if (this.xx) this.targets.push([-1,0]); + if (this.yy) this.targets.push([0,-1]); + if (!this.Move())//really stuck? try to maneuver laterally! + { + this.targets=[]; + if (this.x==x) this.targets.push([1,0],[-1,0]);//somehow this feels inverted... but it doesn't work the other way + if (this.y==y) this.targets.push([0,1],[0,-1]);//hypothesis : *MAGIC* + this.Move(); + } + } + this.Flee=function(x,y)//AI to run away from a specific point + { + this.targets=[]; + if (this.x>x) this.targets.push([1,0]); + if (this.xy) this.targets.push([0,1]); + if (this.y0) + { + var goodTargets=[]; + if (this.type=='hero') goodTargets=this.targets; + else + { + for (var i in this.targets) + { + var thisTarget=this.targets[i]; + if (this.dungeon.CheckObstacle(this.x+thisTarget[0],this.y+thisTarget[1])!=-1) goodTargets.push([thisTarget[0],thisTarget[1]]); + } + } + if (goodTargets.length>0) + { + var target=choose(goodTargets); + var obstacle=this.dungeon.CheckObstacle(this.x+target[0],this.y+target[1]); + if (obstacle==this) obstacle=0; + if (obstacle==0 && this.AI!='static') + { + this.x+=target[0]; + this.y+=target[1]; + } + else this.stuck+=2; + if (obstacle!=0 && obstacle!=-1) + { + obstacle.HitBy(this); + } + if (obstacle==-1) return 0; + } + else {this.stuck+=2;return 0;} + if (this.AI=='static') this.stuck=0; + return 1; + } + return 0; + } + this.HitBy=function(by)//attacked by another entity + { + if (this.type=='destructible' && by.type=='hero')//break destructibles + { + by.stuck=0; + this.life--; + if (this.life<=0) + { + if (this.onKill) this.onKill(); + this.Destroy(); + } + else this.pic=[this.pic[0],this.pic[1]+1]; + } + else if (this.type=='special' && this.subtype=='upgrade')//upgrade relic + { + this.obstacle=0; + if (Game.Upgrades[this.value]) Game.Upgrades[this.value].earn(); + this.value=''; + } + else if ((this.type=='monster' && by.type=='hero') || (this.type=='hero' && by.type=='monster') && this.stats.hp>0)//it's a fight! + { + by.stuck=0; + + var monster=(this.type=='hero'?by:this); + var hero=(this.type=='hero'?this:by); + this.dungeon.currentOpponent=monster; + + if (monster.fighting==0)//first meeting + { + Game.Heroes[hero.subtype].Say('meet '+Game.Monsters[monster.subtype].name); + this.Say('fight'); + } + if (this.fighting==0) + { + this.fighting=1; + by.fighting=1; + } + + var attackStr=''; + var attackerName=''; + var defenderName=''; + if (by.type=='hero') attackerName=Game.Heroes[by.subtype].name; + else if (by.type=='monster') attackerName=Game.Monsters[by.subtype].name; + if (this.type=='hero') defenderName=Game.Heroes[this.subtype].name; + else if (this.type=='monster') defenderName=Game.Monsters[this.subtype].name; + + //battle formulas (have fun with these) + attackStr+=attackerName+' swings at '+defenderName+'!'; + var damage=Math.round(Math.max(1,Math.min(by.stats.might,Math.pow(((by.stats.might+2.5)/Math.max(1,this.stats.guard)),2)))*(0.8+Math.random()*0.4+Math.pow(Math.random()*0.8,6))); + var dodge=Math.random()>(by.stats.speed/Math.max(1,this.stats.dodge+2.5)); + if (dodge) + { + attackStr+=' '+defenderName+' dodged the attack.'; + } + else + { + if (by.stats.luck && by.type=='hero' && Math.random()It\'s a critical!';}//very rare critical based on luck + attackStr+=' '+damage+' damage!'; + + this.stats.hp-=damage; + this.stats.hp=Math.max(this.stats.hp,0); + if (this.stats.luck && this.type=='hero') + { + if (this.stats.hp==0 && Math.random()'; + if (attackStr!='') this.dungeon.Log(attackStr); + + if (this.stats.hp<=0)//die + { + this.dungeon.Log(attackerName+' crushed '+defenderName+'!'); + if (this.type=='hero') + { + Game.Heroes[this.subtype].Say('defeat'); + this.dungeon.Log(''+Game.Heroes[this.subtype].name+' has been defeated.'); + this.dungeon.FailLevel(); + } + if (this.type=='monster' && by.type=='hero') + { + l('monsterSlot'+this.dungeon.id).style.visibility='hidden'; + this.dungeon.monstersKilledThisRun+=1; + if (Math.random()<0.05) Game.Heroes[by.subtype].Say('win'); + Game.Heroes[by.subtype].Say('win against '+Game.Monsters[this.subtype].name); + this.Say('defeat'); + if (Game.Monsters[this.subtype].loot) + { + var loot=Game.Monsters[this.subtype].loot; + if (loot.gear && (!loot.gear.prob || Math.random()0) this.stuck--; + this.stuck=Math.min(10,this.stuck); + this.targets=[]; + } + if ((this.type=='hero' || this.type=='monster') && this.fighting==0 && this.stats.hp0) + { + this.dungeon.Log('Found '+Beautify(value)+' cookie'+(value==1?'':'s')+'!'); + this.dungeon.cookiesMadeThisRun+=value; + Game.Earn(value); + } + entity.Destroy(); + } + } + } + if (this.type=='hero') this.fighting=0; + } + this.Destroy=function() + { + this.dungeon.entities.splice(this.dungeon.entities.indexOf(this),1); + } + this.GetInitiative=function() + { + return randomFloor((this.stats.speed/5)*(1/Math.max(1,(this.dungeon.heroEntity.stats.speed/5)))); + } + } + + /*===================================================================================== + DUNGEON MECHANICS + =======================================================================================*/ + + Game.Dungeons=[]; + Game.Dungeon=function(type,id) + { + this.type=type; + this.id=id; + Game.Dungeons[this.id]=this; + this.log=[]; + this.logNew=0; + this.name=Game.DungeonTypes[this.type].nameGenerator(); + this.hero=null; + this.currentOpponent=0; + this.level=0; + this.auto=1; + this.portalPic=''; + + this.cookiesMadeThisRun=0; + this.monstersKilledThisRun=0; + + this.Log=function(what,nested) + { + if (typeof what==='string') + { + this.log.unshift(what); + this.logNew++; + } + else {for (var i in what) {this.Log(what[i],1);}} + //if (!nested) this.UpdateLog(); + } + + this.UpdateLog=function() + { + this.log=this.log.slice(0,30); + var str=''; + for (var i in this.log) + { + if (i'; + else str+='
'+this.log[i]+'
'; + } + this.logNew=0; + l('dungeonLog'+this.id).innerHTML=str; + } + + this.entities=[]; + this.GetEntities=function(x,y)//returns the first entity found on tile x,y + { + var entities=[]; + for (var i in this.entities) {if (this.entities[i].x==x && this.entities[i].y==y) entities.push(this.entities[i]);} + return entities; + } + this.AddEntity=function(type,subtype,x,y) + { + //this.RemoveEntities(x,y); + var entity=new Game.Entity(type,subtype,this); + entity.x=x; + entity.y=y; + entity.dungeon=this; + this.entities.push(entity); + return entity; + } + this.RemoveEntities=function(x,y) + { + var entities=this.GetEntities(x,y); + for (var i in entities) + { + entities[i].Destroy(); + } + } + this.DrawEntities=function() + { + var str=''; + for (var i in this.entities) {str+=this.entities[i].Draw();} + return str; + } + + this.CheckObstacle=function(x,y)//returns 0 for no obstacle; -1 for a wall; an entity if there's at least one entity on this tile + { + if (x<0 || x>=this.map.w || y<0 || y>=this.map.h) return -1; + var entities=this.GetEntities(x,y); + for (var i in entities) + { + if (entities[i].obstacle) return entities[i]; + } + return this.map.isObstacle(x,y)?-1:0; + } + + + this.map={}; + this.Generate=function() + { + if (this.level==0) this.name=Game.DungeonTypes[this.type].nameGenerator(); + this.entities=[]; + var M=new D.Map(40,40,Math.random(),{ + roomSize:10, + corridorSize:5, + fillRatio:1/2, + corridorRatio:0.3, + pillarRatio:Math.random()*0.8+0.2, + waterRatio:Math.random(), + branching:Math.ceil(Math.random()*6), + sizeVariance:0.4 + }); + r=0; + while (r!=1) + { + r=M.dig(); + } + //all done! decorate and render. + M.finish(); + //spawn treasure + /* + for (var i in M.rooms) + { + if (M.rooms[i].freeTiles>1) + { + for (var ii=0;ii1) + { + var spot=M.getBestSpotInRoom(M.rooms[i]); + M.data[spot.x][spot.y][0]=0; + spot.score=0; + M.rooms[i].freeTiles--; + } + } + } + }*/ + + for (var i in M.doors)//place door entities on door positions + { + //M.data[M.doors[i][0]][M.doors[i][1]][0]=TILE_FLOOR_EDGE; + this.AddEntity('destructible','door',M.doors[i][0],M.doors[i][1]); + } + //set tile graphics + for (var i in M.rooms) + { + var altStr=choose(['alt ','','']); + var tiles={ + 'void':altStr+'void', + 'wall':altStr+'wall', + 'wall corner':altStr+'wall corner', + 'floor':altStr+'tiled floor', + 'floor edges':altStr+'floor',//choose([altStr+'floor',altStr+'floor edges']), + 'door':altStr+'door', + 'water':choose(['water','green water','dark water']), + 'pillar':choose([altStr+'wall',altStr+'round pillar',altStr+'square pillar',altStr+'potted plant','conveyor belt']), + 'entrance':altStr+'entrance', + 'exit':altStr+'exit', + }; + if (Math.random()<0.1) {tiles['wall corner']='wooden wall';tiles['wall']='wooden wall';tiles['floor edges']='wooden floor';tiles['pillar']='wooden wall';} + if (Math.random()<0.1) {tiles['wall corner']=altStr+'bookshelf';tiles['wall']=altStr+'bookshelf';tiles['pillar']=altStr+'bookshelf';} + M.assignTiles(M.rooms[i],tiles); + } + this.map=M; + this.map.str=this.map.getStr(); + + //place a boss + var tile=this.map.exit; + var monsters=[]; + for (var ii in Game.BossMonsters) + { + var me=Game.BossMonsters[ii]; + if (me.level<=(depth+this.level) && Math.random()<(me.stats.rarity||1)) monsters.push(me.name); + } + if (monsters.length==0) monsters=[choose(Game.BossMonsters).name]; + if (monsters.length>0) + { + this.AddEntity('monster',choose(monsters),tile[0],tile[1]); + this.map.removeFreeTile(tile[0],tile[1]); + } + + //place relics + /* + var tile=this.map.getBestSpotInRoom(this.map.getRoom(this.map.exit[0],this.map.exit[1])); + var entity=this.AddEntity('special','upgrade',tile.x,tile.y); + entity.value='Dungeon cookie upgrade'; + this.map.removeFreeTile(tile.x,tile.y); + for (var i=0;i10) + { + var tile=this.map.getBestSpotInRoom(room); + var entity=this.AddEntity('special','upgrade',tile.x,tile.y); + entity.value='Dungeon cookie upgrade'; + this.map.removeFreeTile(tile.x,tile.y); + } + }*/ + + //sprinkle monsters and treasure + for (var i=0;i0) + { + this.AddEntity('monster',choose(monsters),tile[0],tile[1]); + this.map.removeFreeTile(tile[0],tile[1]); + } + } + else//the rest of the spawns are destructibles or loot + { + if (Math.random()<0.6) + { + var value=Math.round(Math.pow(Math.random(),6)*(10+this.level)); + if (value>0) + { + var entity=this.AddEntity('item','cookies',tile[0],tile[1]);//random cookies + entity.value=value; + } + } + else this.AddEntity('destructible','random',tile[0],tile[1]);//random crates etc + this.map.removeFreeTile(tile[0],tile[1]); + } + } + } + } + + this.onTile=-1; + + this.Draw=function() + { + var str=''; + var x=-this.hero.x; + var y=-this.hero.y; + str+='
'+this.map.str+'
'; + str+='
'+ + '
'+ + '
'+ + '
'+ + '
'+ + '
'+ + '
'; + str+='
'+ + '
Exit - '+this.name+' lvl.'+(this.level+1)+'
'+ + '
'+ + '
'+ + '
'+ + '
'; + l('rowSpecial'+this.id).innerHTML='
'+str+'
'; + + l('picHero'+this.id).style.backgroundImage='url(img/'+this.hero.portrait+'.png)'; + l('nameHero'+this.id).innerHTML=this.hero.name; + } + this.Refresh=function() + { + if (!l('mapcontainer'+this.id)) this.Draw(); + var x=4-this.hero.x; + var y=4-this.hero.y; + l('mapcontainer'+this.id).style.left=(x*16)+'px'; + l('mapcontainer'+this.id).style.top=(y*16)+'px'; + l('mapitems'+this.id).innerHTML=this.DrawEntities(); + } + this.RedrawMap=function() + { + this.map.str=this.map.getStr(); + this.Draw(); + } + this.Turn=function() + { + for (var i in this.entities) + { + if (this.entities[i] && this.entities[i].type) this.entities[i].Turn(); + } + if (this.currentOpponent) + { + l('monsterSlot'+this.id).style.visibility='visible'; + l('hpMonster'+this.id).style.width=Math.round((this.currentOpponent.stats.hp/this.currentOpponent.stats.hpm)*100)+'%'; + l('picMonster'+this.id).style.backgroundImage='url(img/'+Game.Monsters[this.currentOpponent.subtype].pic+'.png)'; + l('nameMonster'+this.id).innerHTML=Game.Monsters[this.currentOpponent.subtype].name; + l('picHero'+this.id).style.backgroundImage='url(img/'+this.hero.pic+'.png)'; + } + else + { + l('monsterSlot'+this.id).style.visibility='hidden'; + l('hpMonster'+this.id).style.width='100%'; + l('picHero'+this.id).style.backgroundImage='url(img/'+this.hero.portrait+'.png)'; + } + this.currentOpponent=0; + l('hpHero'+this.id).style.width=Math.round((this.heroEntity.stats.hp/this.heroEntity.stats.hpm)*100)+'%'; + + this.Refresh(); + this.UpdateLog(); + + if (this.hero.x==this.map.exit[0] && this.hero.y==this.map.exit[1]) + { + this.CompleteLevel(); + } + } + + this.DrawButton=function() + { + var str=''; + //str+=''; + str+=''; + return str; + } + + this.CompleteLevel=function() + { + this.hero.Say('completion'); + this.level++; + this.Generate(); + Game.HeroesById[0].EnterDungeon(this,this.map.entrance[0],this.map.entrance[1]); + this.Draw(); + } + this.FailLevel=function() + { + this.Log('Cookies made this run : '+Beautify(this.cookiesMadeThisRun)+' | Monsters defeated this run : '+Beautify(this.monstersKilledThisRun)); + this.cookiesMadeThisRun=0; + this.monstersKilledThisRun=0; + this.level=0; + this.Generate(); + Game.HeroesById[0].EnterDungeon(this,this.map.entrance[0],this.map.entrance[1]); + this.Draw(); + } + } + + Game.DungeonLocationChain=function(map,x,y)//return an array of the rooms between the root room and this tile's room, inclusive + {//we shouldn't need all this if we used A*... + var room=map.getRoom(x,y); + var chain=[]; + if (room!=-1) + { + while (room.parent) + { + chain.push(room); + room=room.parent; + } + } + chain.reverse(); + return chain; + } + Game.DungeonLinkLocationChains=function(start,end)//return the room in which the first location chain should go to to get closer to the second location chain + { + /* + 4 cases + -we're already in the same room + -the target is in a different branch + -the target is above in the same branch + -the target is below in the same branch + */ + start.reverse(); + end.reverse(); + if (start[0].id==end[0].id) return start[start.length-1];//same room + for (var i in end) + { + if (start[0]==end[i].parent) return end[i];//inferior branch, go to the inferior room + } + if (start.length>1) return start[1];//different or superior branch, go to the superior room + return start[0];//eeeh, let's just stay in the same room + } + + /*===================================================================================== + CREATE DUNGEONS + =======================================================================================*/ + Game.Objects['Factory'].special=function() + { + this.dungeon=new Game.Dungeon('Factory',this.id); + this.dungeon.Generate(); + this.specialDrawFunction=function(){this.dungeon.Refresh();}; + this.drawSpecialButton=function(){return this.dungeon.DrawButton();}; + this.dungeon.timer=0; + this.dungeon.timerWarmup=5; + this.dungeon.portalPic='dungeonFactory'; + + this.EachFrame=function() + { + if (this.dungeon.auto) + { + if (this.dungeon.timer>0) this.dungeon.timer--; + if (this.dungeon.timer==0) + { + this.dungeon.timer=Game.fps*(Math.max(0.1,2-(this.dungeon.hero.stats.speed*0.2))+Math.max(this.dungeon.timerWarmup,0)); + if (this.dungeon.timerWarmup>0) this.dungeon.timerWarmup--; + + var dungeon=this.dungeon; + var hero=dungeon.heroEntity; + + var targetRoom=Game.DungeonLinkLocationChains(Game.DungeonLocationChain(dungeon.map,hero.x,hero.y),Game.DungeonLocationChain(dungeon.map,dungeon.map.exit[0],dungeon.map.exit[1])); + var targetTile=(targetRoom.gen==0 || targetRoom.id==dungeon.map.getRoom(hero.x,hero.y).id)?[dungeon.map.exit[0],dungeon.map.exit[1]]:targetRoom.door; + hero.GoTo(targetTile[0],targetTile[1]); + if (hero.stuck) hero.Wander(); + dungeon.hero.x=hero.x; + dungeon.hero.y=hero.y; + dungeon.Turn(); + } + } + } + + if (document.addEventListener)//clean this up later + { + l('rowSpecial'+this.dungeon.id).removeEventListener('keydown',arguments.callee,false); + l('rowSpecial'+this.dungeon.id).addEventListener('keydown',function(event) + { + var dungeon=Game.Objects['Factory'].dungeon; + var control=0; + if (event.keyCode==37) {dungeon.hero.Move(-1,0);control=1;} + else if (event.keyCode==38) {dungeon.hero.Move(0,-1);control=1;} + else if (event.keyCode==39) {dungeon.hero.Move(1,0);control=1;} + else if (event.keyCode==40) {dungeon.hero.Move(0,1);control=1;} + else if (event.keyCode==32) {dungeon.hero.Move(0,0);control=1;}//space + else if (event.keyCode==65)//A (auto) + { + if (dungeon.auto) + { + dungeon.auto=0; + dungeon.timerWarmup=-1; + } + else + { + dungeon.auto=1; + dungeon.timer=0; + dungeon.timerWarmup=0; + } + event.preventDefault(); + } + + if (control) + { + event.preventDefault(); + dungeon.timer=Game.fps*10; + dungeon.timerWarmup=5; + } + } + ); + } + + var hero=choose(Game.HeroesById); + hero.EnterDungeon(this.dungeon,this.dungeon.map.entrance[0],this.dungeon.map.entrance[1]); + } + + /*===================================================================================== + HEROES + =======================================================================================*/ + Game.Heroes=[]; + Game.HeroesById=[]; + Game.Hero=function(name,pic,portrait,icon) + { + this.name=name; + this.pic=pic; + this.portrait=portrait; + this.icon=icon; + this.stats={ + hp:25, + hpm:25, + might:5, + guard:5, + speed:5, + dodge:5, + luck:5 + }; + this.dialogue={ + 'greeting':'Oh hey.|Sup.', + 'entrance':'Here we go.|So exciting.', + 'completion':'That was easy.|All done here.', + 'defeat':'Welp.|Better luck next time.' + }; + this.gear={ + 'armor':-1, + 'weapon':-1 + }; + this.inDungeon=-1; + this.completedDungeons=0; + + this.x=0; + this.y=0; + + this.EnterDungeon=function(dungeon,x,y) + { + this.inDungeon=dungeon.id; + dungeon.hero=this; + this.x=x; + this.y=y; + dungeon.heroEntity=dungeon.AddEntity('hero',dungeon.hero.name,x,y); + var room=dungeon.map.getRoom(this.x,this.y); + if (room!=-1 && room.hidden) {room.hidden=0;dungeon.RedrawMap();} + Game.Dungeons[this.inDungeon].Refresh(); + dungeon.Log('--------------------'); + if (dungeon.level==0) this.Say('greeting'); + this.Say('entrance'); + l('monsterSlot'+dungeon.id).style.visibility='hidden'; + } + this.Move=function(x,y) + { + var dungeon=Game.Dungeons[this.inDungeon]; + dungeon.heroEntity.targets=[[x,y]]; + if (dungeon.heroEntity.Move()) + { + this.x=dungeon.heroEntity.x; + this.y=dungeon.heroEntity.y; + dungeon.Turn(); + } + } + + this.Say=function(what) + { + if (this.dialogue[what]) Game.Dungeons[this.inDungeon].Log(this.name+' : "'+choose(this.dialogue[what].split('|'))+'"'); + } + + this.save=function() + { + var str=''; + str+= + this.inDungeon+','+ + this.completedDungeons+','+ + this.gear.armor+','+ + this.gear.weapon + ; + return str; + } + this.load=function(data) + { + var str=data.split(','); + this.inDungeon=parseInt(str[0]); + this.completedDungeons=parseInt(str[1]); + this.gear.armor=parseInt(str[2]); + this.gear.weapon=parseInt(str[3]); + } + this.id=Game.HeroesById.length; + Game.HeroesById.push(this); + Game.Heroes[this.name]=this; + } + + /*===================================================================================== + CREATE HEROES + =======================================================================================*/ + var hero=new Game.Hero('Chip','girlscoutChip','portraitChip',[1,0]); + hero.dialogue={ + 'intro':'I\'m Chip! I just really like exploring stuff. Let\'s go have an adventure!', + 'greeting':'Hello there!|I\'m ready!|Where are we going today?|Adventure!', + 'win':'Take that!|Hah!|That\'s right.', + 'entrance':'Chipping in!|Welp, here goes nothing!|I wonder what I\'ll find!|Hey, this place is new!|This place seems familiar.|Let\'s make it happen.', + 'completion':'I\'m one smart cookie.|Oh yeah!|Let\'s explore some more!|That was easy!|That sure was fun!|I\'m not lost, am I?|More exploring? Sure, why not!', + 'defeat':'B-better luck next time.|That really hurt!|I yield! I yield!|That went badly.|No half-baked excuses next time.|I think I scraped my knee!|Owie.|Woopsie!', + 'win against Sentient Furnace':'The irony, it burns! (...it\'s funny because it was burning. And made of iron. ...Moving on.)', + 'win against Ascended Baking Pod':'Where is your pod now?|That was disturbing.' + }; + hero.stats={ + hp:30, + hpm:30, + might:5, + guard:5, + speed:5, + dodge:5, + luck:5 + }; + var hero=new Game.Hero('Crumb','girlscoutCrumb','portraitCrumb',[2,0]); + hero.dialogue={ + 'intro':'I\'m Crumb. I look like this because of a baking accident when I was little. Big deal. At least now I don\'t get hurt as easily as others, I guess.', + 'greeting':'Hi there.|Ready for adventure, I guess.|Reporting for duty.', + 'win':'Oh sorry, did that hurt?|Should have moved out of the way.|Oops. My bad.', + 'entrance':'Let\'s do this, I guess.|Well, let\'s go...|I gotta go in there?|Are we really doing this?|I hope I won\'t get lost like last time.|Let\'s get this over with.', + 'completion':'I... I did it...|I\'m glad that\'s over.|What, there\'s more?|In I go, I guess.|It doesn\'t end, does it?|But it\'s dark in there.', + 'defeat':'I, uh, ouch.|Why does that always happen to me?|I\'m just no good, am I?|Oh no.|I\'m... I\'m not crying.|Well that wasn\'t fun at all.|I\'m sorry I failed you.|Please... make them go away...', + 'meet Ascended Baking Pod':'That thing shouldn\'t even be alive.|Is that where they all came from?', + 'win against Ascended Baking Pod':'Hm. Fascinating.' + }; + hero.stats={ + hp:25, + hpm:25, + might:5, + guard:7, + speed:4, + dodge:4, + luck:5 + }; + var hero=new Game.Hero('Doe','girlscoutDoe','portraitDoe',[3,0]); + hero.dialogue={ + 'intro':'H-hey. Name\'s Doe. I\'m pretty fast. I uh, I promise I\'ll do my best.', + 'greeting':'H-hey.|Oh, uh, h-hi there.|C-can I join?', + 'win':'Th-that looks like it hurt... awesome...|D-did I do that?|N-neat... there\'s pieces everywhere.', + 'entrance':'Alright, let\'s do this!|I-if I really have to.|I-in there? By myself?|...won\'t you come with me this time?|H-here I go!', + 'completion':'Oh... oh my.|That\'s... I uh, I\'m glad.|Y-yeah that was real easy. Piece of pie!|T-too easy, right?|S-so many cookies...|Ooh? F-fascinating.', + 'defeat':'I-if you can\'t beat them... join them.|I-it\'s because I stutter, isn\'t it?|W-well that\'s just no good at all.|I, uh, I meant for that to happen.|H-how embarrassing.', + 'meet Ascended Baking Pod':'W-whoah... it\'s... magnificent...', + 'win against Ascended Baking Pod':'I\'m sorry, buddy.|I... I think I hurt it...|Oh no... I-I think I broke it...' + }; + hero.stats={ + hp:25, + hpm:25, + might:4, + guard:4, + speed:7, + dodge:5, + luck:5 + }; + var hero=new Game.Hero('Lucky','girlscoutLucky','portraitLucky',[4,0]); + hero.dialogue={ + 'intro':'Oh joy! My name\'s Lucky. Guess what I\'m good at?', + 'greeting':'I\'m feeling lucky!|It\'s a bright day today!|Let\'s do great things together.', + 'win':'Ooh lucky shot!|Pow! One more.|Damn straight!', + 'entrance':'Glad to be of service!|Oooh this one\'ll be interesting.|This will be a good one, I can feel it!|Here I come!', + 'completion':'Over already?|Let\'s explore some more!|That was lucky!|That was no luck, I\'m just that good.|Alright, let\'s move on!|I\'m just getting warmed up!', + 'defeat':'I can\'t believe it!|...This is a joke, right?|Hey! No fair!|B-but...|I\'m gonna need a bandaid. And some hot chocolate.|I\'ll, uh, try again later.|Bad luck! Bad luck!', + 'win against Ascended Baking Pod':'Golly, that was peculiar.' + }; + hero.stats={ + hp:25, + hpm:25, + might:5, + guard:4, + speed:4, + dodge:5, + luck:7 + }; + +}; \ No newline at end of file diff --git a/gversion/gs/cookieclicker/excanvas.compiled.js b/gversion/gs/cookieclicker/excanvas.compiled.js new file mode 100644 index 0000000..a34ca1d --- /dev/null +++ b/gversion/gs/cookieclicker/excanvas.compiled.js @@ -0,0 +1,35 @@ +// Copyright 2006 Google Inc. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +document.createElement("canvas").getContext||(function(){var s=Math,j=s.round,F=s.sin,G=s.cos,V=s.abs,W=s.sqrt,k=10,v=k/2;function X(){return this.context_||(this.context_=new H(this))}var L=Array.prototype.slice;function Y(b,a){var c=L.call(arguments,2);return function(){return b.apply(a,c.concat(L.call(arguments)))}}var M={init:function(b){if(/MSIE/.test(navigator.userAgent)&&!window.opera){var a=b||document;a.createElement("canvas");a.attachEvent("onreadystatechange",Y(this.init_,this,a))}},init_:function(b){b.namespaces.g_vml_|| +b.namespaces.add("g_vml_","urn:schemas-microsoft-com:vml","#default#VML");b.namespaces.g_o_||b.namespaces.add("g_o_","urn:schemas-microsoft-com:office:office","#default#VML");if(!b.styleSheets.ex_canvas_){var a=b.createStyleSheet();a.owningElement.id="ex_canvas_";a.cssText="canvas{display:inline-block;overflow:hidden;text-align:left;width:300px;height:150px}g_vml_\\:*{behavior:url(#default#VML)}g_o_\\:*{behavior:url(#default#VML)}"}var c=b.getElementsByTagName("canvas"),d=0;for(;d','","");this.element_.insertAdjacentHTML("BeforeEnd",t.join(""))};i.stroke=function(b){var a=[],c=P(b?this.fillStyle:this.strokeStyle),d=c.color,f=c.alpha*this.globalAlpha;a.push("g.x)g.x=e.x;if(h.y==null||e.yg.y)g.y=e.y}}a.push(' ">');if(b)if(typeof this.fillStyle=="object"){var m=this.fillStyle,r=0,n={x:0,y:0},o=0,q=1;if(m.type_=="gradient"){var t=m.x1_/this.arcScaleX_,E=m.y1_/this.arcScaleY_,p=this.getCoords_(m.x0_/this.arcScaleX_,m.y0_/this.arcScaleY_), +z=this.getCoords_(t,E);r=Math.atan2(z.x-p.x,z.y-p.y)*180/Math.PI;if(r<0)r+=360;if(r<1.0E-6)r=0}else{var p=this.getCoords_(m.x0_,m.y0_),w=g.x-h.x,x=g.y-h.y;n={x:(p.x-h.x)/w,y:(p.y-h.y)/x};w/=this.arcScaleX_*k;x/=this.arcScaleY_*k;var R=s.max(w,x);o=2*m.r0_/R;q=2*m.r1_/R-o}var u=m.colors_;u.sort(function(ba,ca){return ba.offset-ca.offset});var J=u.length,da=u[0].color,ea=u[J-1].color,fa=u[0].alpha*this.globalAlpha,ga=u[J-1].alpha*this.globalAlpha,S=[],l=0;for(;l')}else a.push('');else{var K=this.lineScale_*this.lineWidth;if(K<1)f*=K;a.push("')}a.push("");this.element_.insertAdjacentHTML("beforeEnd",a.join(""))};i.fill=function(){this.stroke(true)};i.closePath=function(){this.currentPath_.push({type:"close"})};i.getCoords_=function(b,a){var c=this.m_;return{x:k*(b*c[0][0]+a*c[1][0]+c[2][0])-v,y:k*(b*c[0][1]+a*c[1][1]+c[2][1])-v}};i.save=function(){var b={};O(this,b);this.aStack_.push(b);this.mStack_.push(this.m_);this.m_=y(I(),this.m_)};i.restore=function(){O(this.aStack_.pop(), +this);this.m_=this.mStack_.pop()};function ha(b){var a=0;for(;a<3;a++){var c=0;for(;c<2;c++)if(!isFinite(b[a][c])||isNaN(b[a][c]))return false}return true}function A(b,a,c){if(!!ha(a)){b.m_=a;if(c)b.lineScale_=W(V(a[0][0]*a[1][1]-a[0][1]*a[1][0]))}}i.translate=function(b,a){A(this,y([[1,0,0],[0,1,0],[b,a,1]],this.m_),false)};i.rotate=function(b){var a=G(b),c=F(b);A(this,y([[a,c,0],[-c,a,0],[0,0,1]],this.m_),false)};i.scale=function(b,a){this.arcScaleX_*=b;this.arcScaleY_*=a;A(this,y([[b,0,0],[0,a, +0],[0,0,1]],this.m_),true)};i.transform=function(b,a,c,d,f,h){A(this,y([[b,a,0],[c,d,0],[f,h,1]],this.m_),true)};i.setTransform=function(b,a,c,d,f,h){A(this,[[b,a,0],[c,d,0],[f,h,1]],true)};i.clip=function(){};i.arcTo=function(){};i.createPattern=function(){return new U};function D(b){this.type_=b;this.r1_=this.y1_=this.x1_=this.r0_=this.y0_=this.x0_=0;this.colors_=[]}D.prototype.addColorStop=function(b,a){a=P(a);this.colors_.push({offset:b,color:a.color,alpha:a.alpha})};function U(){}G_vmlCanvasManager= +M;CanvasRenderingContext2D=H;CanvasGradient=D;CanvasPattern=U})(); diff --git a/gversion/gs/cookieclicker/img/BGgarden.jpg b/gversion/gs/cookieclicker/img/BGgarden.jpg new file mode 100644 index 0000000..d7328b9 Binary files /dev/null and b/gversion/gs/cookieclicker/img/BGgarden.jpg differ diff --git a/gversion/gs/cookieclicker/img/BGgrimoire.jpg b/gversion/gs/cookieclicker/img/BGgrimoire.jpg new file mode 100644 index 0000000..b16bf0a Binary files /dev/null and b/gversion/gs/cookieclicker/img/BGgrimoire.jpg differ diff --git a/gversion/gs/cookieclicker/img/BGmarket.jpg b/gversion/gs/cookieclicker/img/BGmarket.jpg new file mode 100644 index 0000000..7429f88 Binary files /dev/null and b/gversion/gs/cookieclicker/img/BGmarket.jpg differ diff --git a/gversion/gs/cookieclicker/img/BGpantheon.jpg b/gversion/gs/cookieclicker/img/BGpantheon.jpg new file mode 100644 index 0000000..84d582e Binary files /dev/null and b/gversion/gs/cookieclicker/img/BGpantheon.jpg differ diff --git a/gversion/gs/cookieclicker/img/Thumbs.db b/gversion/gs/cookieclicker/img/Thumbs.db new file mode 100644 index 0000000..c3c818e Binary files /dev/null and b/gversion/gs/cookieclicker/img/Thumbs.db differ diff --git a/gversion/gs/cookieclicker/img/alarmTurret.png b/gversion/gs/cookieclicker/img/alarmTurret.png new file mode 100644 index 0000000..df85713 Binary files /dev/null and b/gversion/gs/cookieclicker/img/alarmTurret.png differ diff --git a/gversion/gs/cookieclicker/img/alchemylab.png b/gversion/gs/cookieclicker/img/alchemylab.png new file mode 100644 index 0000000..1d0ae00 Binary files /dev/null and b/gversion/gs/cookieclicker/img/alchemylab.png differ diff --git a/gversion/gs/cookieclicker/img/alchemylabBackground.png b/gversion/gs/cookieclicker/img/alchemylabBackground.png new file mode 100644 index 0000000..2cd0cce Binary files /dev/null and b/gversion/gs/cookieclicker/img/alchemylabBackground.png differ diff --git a/gversion/gs/cookieclicker/img/alchemylabIcon.png b/gversion/gs/cookieclicker/img/alchemylabIcon.png new file mode 100644 index 0000000..69285e3 Binary files /dev/null and b/gversion/gs/cookieclicker/img/alchemylabIcon.png differ diff --git a/gversion/gs/cookieclicker/img/alchemylabIconOff.png b/gversion/gs/cookieclicker/img/alchemylabIconOff.png new file mode 100644 index 0000000..8e2733b Binary files /dev/null and b/gversion/gs/cookieclicker/img/alchemylabIconOff.png differ diff --git a/gversion/gs/cookieclicker/img/alteredGrandma.png b/gversion/gs/cookieclicker/img/alteredGrandma.png new file mode 100644 index 0000000..938fe15 Binary files /dev/null and b/gversion/gs/cookieclicker/img/alteredGrandma.png differ diff --git a/gversion/gs/cookieclicker/img/alternateGrandma.png b/gversion/gs/cookieclicker/img/alternateGrandma.png new file mode 100644 index 0000000..b1749fc Binary files /dev/null and b/gversion/gs/cookieclicker/img/alternateGrandma.png differ diff --git a/gversion/gs/cookieclicker/img/angrySentientCookie.png b/gversion/gs/cookieclicker/img/angrySentientCookie.png new file mode 100644 index 0000000..4749729 Binary files /dev/null and b/gversion/gs/cookieclicker/img/angrySentientCookie.png differ diff --git a/gversion/gs/cookieclicker/img/antiGrandma.png b/gversion/gs/cookieclicker/img/antiGrandma.png new file mode 100644 index 0000000..0a40d2d Binary files /dev/null and b/gversion/gs/cookieclicker/img/antiGrandma.png differ diff --git a/gversion/gs/cookieclicker/img/antimattercondenser.png b/gversion/gs/cookieclicker/img/antimattercondenser.png new file mode 100644 index 0000000..50a8760 Binary files /dev/null and b/gversion/gs/cookieclicker/img/antimattercondenser.png differ diff --git a/gversion/gs/cookieclicker/img/antimattercondenserBackground.png b/gversion/gs/cookieclicker/img/antimattercondenserBackground.png new file mode 100644 index 0000000..ae90cb6 Binary files /dev/null and b/gversion/gs/cookieclicker/img/antimattercondenserBackground.png differ diff --git a/gversion/gs/cookieclicker/img/antimattercondenserIcon.png b/gversion/gs/cookieclicker/img/antimattercondenserIcon.png new file mode 100644 index 0000000..25cd7ab Binary files /dev/null and b/gversion/gs/cookieclicker/img/antimattercondenserIcon.png differ diff --git a/gversion/gs/cookieclicker/img/antimattercondenserIconOff.png b/gversion/gs/cookieclicker/img/antimattercondenserIconOff.png new file mode 100644 index 0000000..69ff0ea Binary files /dev/null and b/gversion/gs/cookieclicker/img/antimattercondenserIconOff.png differ diff --git a/gversion/gs/cookieclicker/img/aqworldsbanner.jpg b/gversion/gs/cookieclicker/img/aqworldsbanner.jpg new file mode 100644 index 0000000..4a53154 Binary files /dev/null and b/gversion/gs/cookieclicker/img/aqworldsbanner.jpg differ diff --git a/gversion/gs/cookieclicker/img/ascendBox.png b/gversion/gs/cookieclicker/img/ascendBox.png new file mode 100644 index 0000000..f7cbdc3 Binary files /dev/null and b/gversion/gs/cookieclicker/img/ascendBox.png differ diff --git a/gversion/gs/cookieclicker/img/ascendInfo.png b/gversion/gs/cookieclicker/img/ascendInfo.png new file mode 100644 index 0000000..de55a51 Binary files /dev/null and b/gversion/gs/cookieclicker/img/ascendInfo.png differ diff --git a/gversion/gs/cookieclicker/img/ascendSlot.png b/gversion/gs/cookieclicker/img/ascendSlot.png new file mode 100644 index 0000000..0899a20 Binary files /dev/null and b/gversion/gs/cookieclicker/img/ascendSlot.png differ diff --git a/gversion/gs/cookieclicker/img/ascendWisp.png b/gversion/gs/cookieclicker/img/ascendWisp.png new file mode 100644 index 0000000..7a5b36a Binary files /dev/null and b/gversion/gs/cookieclicker/img/ascendWisp.png differ diff --git a/gversion/gs/cookieclicker/img/ascendedBakingPod.png b/gversion/gs/cookieclicker/img/ascendedBakingPod.png new file mode 100644 index 0000000..cd21dc5 Binary files /dev/null and b/gversion/gs/cookieclicker/img/ascendedBakingPod.png differ diff --git a/gversion/gs/cookieclicker/img/babySentientCookie.png b/gversion/gs/cookieclicker/img/babySentientCookie.png new file mode 100644 index 0000000..69acc2b Binary files /dev/null and b/gversion/gs/cookieclicker/img/babySentientCookie.png differ diff --git a/gversion/gs/cookieclicker/img/bank.png b/gversion/gs/cookieclicker/img/bank.png new file mode 100644 index 0000000..804dfec Binary files /dev/null and b/gversion/gs/cookieclicker/img/bank.png differ diff --git a/gversion/gs/cookieclicker/img/bankBackground.png b/gversion/gs/cookieclicker/img/bankBackground.png new file mode 100644 index 0000000..8dbf63e Binary files /dev/null and b/gversion/gs/cookieclicker/img/bankBackground.png differ diff --git a/gversion/gs/cookieclicker/img/bankGrandma.png b/gversion/gs/cookieclicker/img/bankGrandma.png new file mode 100644 index 0000000..a61fca5 Binary files /dev/null and b/gversion/gs/cookieclicker/img/bankGrandma.png differ diff --git a/gversion/gs/cookieclicker/img/bgBW.jpg b/gversion/gs/cookieclicker/img/bgBW.jpg new file mode 100644 index 0000000..f53508c Binary files /dev/null and b/gversion/gs/cookieclicker/img/bgBW.jpg differ diff --git a/gversion/gs/cookieclicker/img/bgBlack.jpg b/gversion/gs/cookieclicker/img/bgBlack.jpg new file mode 100644 index 0000000..311026d Binary files /dev/null and b/gversion/gs/cookieclicker/img/bgBlack.jpg differ diff --git a/gversion/gs/cookieclicker/img/bgBlue.jpg b/gversion/gs/cookieclicker/img/bgBlue.jpg new file mode 100644 index 0000000..ed6d511 Binary files /dev/null and b/gversion/gs/cookieclicker/img/bgBlue.jpg differ diff --git a/gversion/gs/cookieclicker/img/bgCandy.jpg b/gversion/gs/cookieclicker/img/bgCandy.jpg new file mode 100644 index 0000000..3eb58cc Binary files /dev/null and b/gversion/gs/cookieclicker/img/bgCandy.jpg differ diff --git a/gversion/gs/cookieclicker/img/bgChoco.jpg b/gversion/gs/cookieclicker/img/bgChoco.jpg new file mode 100644 index 0000000..6622e82 Binary files /dev/null and b/gversion/gs/cookieclicker/img/bgChoco.jpg differ diff --git a/gversion/gs/cookieclicker/img/bgChocoDark.jpg b/gversion/gs/cookieclicker/img/bgChocoDark.jpg new file mode 100644 index 0000000..71c7916 Binary files /dev/null and b/gversion/gs/cookieclicker/img/bgChocoDark.jpg differ diff --git a/gversion/gs/cookieclicker/img/bgCoarse.jpg b/gversion/gs/cookieclicker/img/bgCoarse.jpg new file mode 100644 index 0000000..c27084d Binary files /dev/null and b/gversion/gs/cookieclicker/img/bgCoarse.jpg differ diff --git a/gversion/gs/cookieclicker/img/bgFoil.jpg b/gversion/gs/cookieclicker/img/bgFoil.jpg new file mode 100644 index 0000000..11aa213 Binary files /dev/null and b/gversion/gs/cookieclicker/img/bgFoil.jpg differ diff --git a/gversion/gs/cookieclicker/img/bgGold.jpg b/gversion/gs/cookieclicker/img/bgGold.jpg new file mode 100644 index 0000000..fc3acfa Binary files /dev/null and b/gversion/gs/cookieclicker/img/bgGold.jpg differ diff --git a/gversion/gs/cookieclicker/img/bgMint.jpg b/gversion/gs/cookieclicker/img/bgMint.jpg new file mode 100644 index 0000000..89ecd20 Binary files /dev/null and b/gversion/gs/cookieclicker/img/bgMint.jpg differ diff --git a/gversion/gs/cookieclicker/img/bgMoney.jpg b/gversion/gs/cookieclicker/img/bgMoney.jpg new file mode 100644 index 0000000..db53a39 Binary files /dev/null and b/gversion/gs/cookieclicker/img/bgMoney.jpg differ diff --git a/gversion/gs/cookieclicker/img/bgMoneyChart.jpg b/gversion/gs/cookieclicker/img/bgMoneyChart.jpg new file mode 100644 index 0000000..58d9882 Binary files /dev/null and b/gversion/gs/cookieclicker/img/bgMoneyChart.jpg differ diff --git a/gversion/gs/cookieclicker/img/bgPaint.jpg b/gversion/gs/cookieclicker/img/bgPaint.jpg new file mode 100644 index 0000000..630557f Binary files /dev/null and b/gversion/gs/cookieclicker/img/bgPaint.jpg differ diff --git a/gversion/gs/cookieclicker/img/bgPink.jpg b/gversion/gs/cookieclicker/img/bgPink.jpg new file mode 100644 index 0000000..56ebbf8 Binary files /dev/null and b/gversion/gs/cookieclicker/img/bgPink.jpg differ diff --git a/gversion/gs/cookieclicker/img/bgPurple.jpg b/gversion/gs/cookieclicker/img/bgPurple.jpg new file mode 100644 index 0000000..d96e582 Binary files /dev/null and b/gversion/gs/cookieclicker/img/bgPurple.jpg differ diff --git a/gversion/gs/cookieclicker/img/bgRed.jpg b/gversion/gs/cookieclicker/img/bgRed.jpg new file mode 100644 index 0000000..cb110f3 Binary files /dev/null and b/gversion/gs/cookieclicker/img/bgRed.jpg differ diff --git a/gversion/gs/cookieclicker/img/bgSilver.jpg b/gversion/gs/cookieclicker/img/bgSilver.jpg new file mode 100644 index 0000000..ce80b07 Binary files /dev/null and b/gversion/gs/cookieclicker/img/bgSilver.jpg differ diff --git a/gversion/gs/cookieclicker/img/bgSky.jpg b/gversion/gs/cookieclicker/img/bgSky.jpg new file mode 100644 index 0000000..8831091 Binary files /dev/null and b/gversion/gs/cookieclicker/img/bgSky.jpg differ diff --git a/gversion/gs/cookieclicker/img/bgSnowy.jpg b/gversion/gs/cookieclicker/img/bgSnowy.jpg new file mode 100644 index 0000000..163c871 Binary files /dev/null and b/gversion/gs/cookieclicker/img/bgSnowy.jpg differ diff --git a/gversion/gs/cookieclicker/img/bgSpectrum.jpg b/gversion/gs/cookieclicker/img/bgSpectrum.jpg new file mode 100644 index 0000000..01c5263 Binary files /dev/null and b/gversion/gs/cookieclicker/img/bgSpectrum.jpg differ diff --git a/gversion/gs/cookieclicker/img/bgStars.jpg b/gversion/gs/cookieclicker/img/bgStars.jpg new file mode 100644 index 0000000..8a839d0 Binary files /dev/null and b/gversion/gs/cookieclicker/img/bgStars.jpg differ diff --git a/gversion/gs/cookieclicker/img/bgWhite.jpg b/gversion/gs/cookieclicker/img/bgWhite.jpg new file mode 100644 index 0000000..9221932 Binary files /dev/null and b/gversion/gs/cookieclicker/img/bgWhite.jpg differ diff --git a/gversion/gs/cookieclicker/img/bgYellowBlue.jpg b/gversion/gs/cookieclicker/img/bgYellowBlue.jpg new file mode 100644 index 0000000..1955967 Binary files /dev/null and b/gversion/gs/cookieclicker/img/bgYellowBlue.jpg differ diff --git a/gversion/gs/cookieclicker/img/blackGradient.png b/gversion/gs/cookieclicker/img/blackGradient.png new file mode 100644 index 0000000..4eeaf81 Binary files /dev/null and b/gversion/gs/cookieclicker/img/blackGradient.png differ diff --git a/gversion/gs/cookieclicker/img/blackGradientLeft.png b/gversion/gs/cookieclicker/img/blackGradientLeft.png new file mode 100644 index 0000000..8dea67d Binary files /dev/null and b/gversion/gs/cookieclicker/img/blackGradientLeft.png differ diff --git a/gversion/gs/cookieclicker/img/blackGradientSmallTop.png b/gversion/gs/cookieclicker/img/blackGradientSmallTop.png new file mode 100644 index 0000000..211b05a Binary files /dev/null and b/gversion/gs/cookieclicker/img/blackGradientSmallTop.png differ diff --git a/gversion/gs/cookieclicker/img/bracketPanelLeftS.png b/gversion/gs/cookieclicker/img/bracketPanelLeftS.png new file mode 100644 index 0000000..a7302d0 Binary files /dev/null and b/gversion/gs/cookieclicker/img/bracketPanelLeftS.png differ diff --git a/gversion/gs/cookieclicker/img/bracketPanelRightS.png b/gversion/gs/cookieclicker/img/bracketPanelRightS.png new file mode 100644 index 0000000..da8010b Binary files /dev/null and b/gversion/gs/cookieclicker/img/bracketPanelRightS.png differ diff --git a/gversion/gs/cookieclicker/img/brainyGrandma.png b/gversion/gs/cookieclicker/img/brainyGrandma.png new file mode 100644 index 0000000..7a00970 Binary files /dev/null and b/gversion/gs/cookieclicker/img/brainyGrandma.png differ diff --git a/gversion/gs/cookieclicker/img/brokenCookie.png b/gversion/gs/cookieclicker/img/brokenCookie.png new file mode 100644 index 0000000..923b5b1 Binary files /dev/null and b/gversion/gs/cookieclicker/img/brokenCookie.png differ diff --git a/gversion/gs/cookieclicker/img/brokenCookieHalo.png b/gversion/gs/cookieclicker/img/brokenCookieHalo.png new file mode 100644 index 0000000..44cd759 Binary files /dev/null and b/gversion/gs/cookieclicker/img/brokenCookieHalo.png differ diff --git a/gversion/gs/cookieclicker/img/brownStripes.png b/gversion/gs/cookieclicker/img/brownStripes.png new file mode 100644 index 0000000..0aefbc0 Binary files /dev/null and b/gversion/gs/cookieclicker/img/brownStripes.png differ diff --git a/gversion/gs/cookieclicker/img/brownStripesLeftEdge.png b/gversion/gs/cookieclicker/img/brownStripesLeftEdge.png new file mode 100644 index 0000000..6da4941 Binary files /dev/null and b/gversion/gs/cookieclicker/img/brownStripesLeftEdge.png differ diff --git a/gversion/gs/cookieclicker/img/buildings.png b/gversion/gs/cookieclicker/img/buildings.png new file mode 100644 index 0000000..4ec8909 Binary files /dev/null and b/gversion/gs/cookieclicker/img/buildings.png differ diff --git a/gversion/gs/cookieclicker/img/bunnies.png b/gversion/gs/cookieclicker/img/bunnies.png new file mode 100644 index 0000000..ba4989f Binary files /dev/null and b/gversion/gs/cookieclicker/img/bunnies.png differ diff --git a/gversion/gs/cookieclicker/img/bunnyGrandma.png b/gversion/gs/cookieclicker/img/bunnyGrandma.png new file mode 100644 index 0000000..d3ae5ec Binary files /dev/null and b/gversion/gs/cookieclicker/img/bunnyGrandma.png differ diff --git a/gversion/gs/cookieclicker/img/burntSentientCookie.png b/gversion/gs/cookieclicker/img/burntSentientCookie.png new file mode 100644 index 0000000..49cd86c Binary files /dev/null and b/gversion/gs/cookieclicker/img/burntSentientCookie.png differ diff --git a/gversion/gs/cookieclicker/img/buttonTile.jpg b/gversion/gs/cookieclicker/img/buttonTile.jpg new file mode 100644 index 0000000..26f79c6 Binary files /dev/null and b/gversion/gs/cookieclicker/img/buttonTile.jpg differ diff --git a/gversion/gs/cookieclicker/img/caramelWave.png b/gversion/gs/cookieclicker/img/caramelWave.png new file mode 100644 index 0000000..91795b0 Binary files /dev/null and b/gversion/gs/cookieclicker/img/caramelWave.png differ diff --git a/gversion/gs/cookieclicker/img/chancemaker.png b/gversion/gs/cookieclicker/img/chancemaker.png new file mode 100644 index 0000000..32fa3be Binary files /dev/null and b/gversion/gs/cookieclicker/img/chancemaker.png differ diff --git a/gversion/gs/cookieclicker/img/chancemakerBackground.png b/gversion/gs/cookieclicker/img/chancemakerBackground.png new file mode 100644 index 0000000..c1b3601 Binary files /dev/null and b/gversion/gs/cookieclicker/img/chancemakerBackground.png differ diff --git a/gversion/gs/cookieclicker/img/chirpy.png b/gversion/gs/cookieclicker/img/chirpy.png new file mode 100644 index 0000000..886020c Binary files /dev/null and b/gversion/gs/cookieclicker/img/chirpy.png differ diff --git a/gversion/gs/cookieclicker/img/chocolateMilkWave.png b/gversion/gs/cookieclicker/img/chocolateMilkWave.png new file mode 100644 index 0000000..ec2fc5f Binary files /dev/null and b/gversion/gs/cookieclicker/img/chocolateMilkWave.png differ diff --git a/gversion/gs/cookieclicker/img/clayBG.jpg b/gversion/gs/cookieclicker/img/clayBG.jpg new file mode 100644 index 0000000..c54b584 Binary files /dev/null and b/gversion/gs/cookieclicker/img/clayBG.jpg differ diff --git a/gversion/gs/cookieclicker/img/contract.png b/gversion/gs/cookieclicker/img/contract.png new file mode 100644 index 0000000..045d3f6 Binary files /dev/null and b/gversion/gs/cookieclicker/img/contract.png differ diff --git a/gversion/gs/cookieclicker/img/control.png b/gversion/gs/cookieclicker/img/control.png new file mode 100644 index 0000000..6a18fe7 Binary files /dev/null and b/gversion/gs/cookieclicker/img/control.png differ diff --git a/gversion/gs/cookieclicker/img/cookieShadow.png b/gversion/gs/cookieclicker/img/cookieShadow.png new file mode 100644 index 0000000..8bb34d6 Binary files /dev/null and b/gversion/gs/cookieclicker/img/cookieShadow.png differ diff --git a/gversion/gs/cookieclicker/img/cookieShower1.png b/gversion/gs/cookieclicker/img/cookieShower1.png new file mode 100644 index 0000000..993a34b Binary files /dev/null and b/gversion/gs/cookieclicker/img/cookieShower1.png differ diff --git a/gversion/gs/cookieclicker/img/cookieShower2.png b/gversion/gs/cookieclicker/img/cookieShower2.png new file mode 100644 index 0000000..e08a678 Binary files /dev/null and b/gversion/gs/cookieclicker/img/cookieShower2.png differ diff --git a/gversion/gs/cookieclicker/img/cookieShower3.png b/gversion/gs/cookieclicker/img/cookieShower3.png new file mode 100644 index 0000000..d44ee42 Binary files /dev/null and b/gversion/gs/cookieclicker/img/cookieShower3.png differ diff --git a/gversion/gs/cookieclicker/img/cortex.png b/gversion/gs/cookieclicker/img/cortex.png new file mode 100644 index 0000000..7065f57 Binary files /dev/null and b/gversion/gs/cookieclicker/img/cortex.png differ diff --git a/gversion/gs/cookieclicker/img/cortexBackground.png b/gversion/gs/cookieclicker/img/cortexBackground.png new file mode 100644 index 0000000..e77c1e1 Binary files /dev/null and b/gversion/gs/cookieclicker/img/cortexBackground.png differ diff --git a/gversion/gs/cookieclicker/img/cosmicGrandma.png b/gversion/gs/cookieclicker/img/cosmicGrandma.png new file mode 100644 index 0000000..8c06dc4 Binary files /dev/null and b/gversion/gs/cookieclicker/img/cosmicGrandma.png differ diff --git a/gversion/gs/cookieclicker/img/crazedDoughSpurter.png b/gversion/gs/cookieclicker/img/crazedDoughSpurter.png new file mode 100644 index 0000000..ac0fb2c Binary files /dev/null and b/gversion/gs/cookieclicker/img/crazedDoughSpurter.png differ diff --git a/gversion/gs/cookieclicker/img/crazedKneader.png b/gversion/gs/cookieclicker/img/crazedKneader.png new file mode 100644 index 0000000..e3f39db Binary files /dev/null and b/gversion/gs/cookieclicker/img/crazedKneader.png differ diff --git a/gversion/gs/cookieclicker/img/cursor.png b/gversion/gs/cookieclicker/img/cursor.png new file mode 100644 index 0000000..e4a3e50 Binary files /dev/null and b/gversion/gs/cookieclicker/img/cursor.png differ diff --git a/gversion/gs/cookieclicker/img/cursoricon.png b/gversion/gs/cookieclicker/img/cursoricon.png new file mode 100644 index 0000000..bd957dd Binary files /dev/null and b/gversion/gs/cookieclicker/img/cursoricon.png differ diff --git a/gversion/gs/cookieclicker/img/cursoriconOff.png b/gversion/gs/cookieclicker/img/cursoriconOff.png new file mode 100644 index 0000000..99e7c71 Binary files /dev/null and b/gversion/gs/cookieclicker/img/cursoriconOff.png differ diff --git a/gversion/gs/cookieclicker/img/darkNoise.jpg b/gversion/gs/cookieclicker/img/darkNoise.jpg new file mode 100644 index 0000000..2db5900 Binary files /dev/null and b/gversion/gs/cookieclicker/img/darkNoise.jpg differ diff --git a/gversion/gs/cookieclicker/img/darkNoise.png b/gversion/gs/cookieclicker/img/darkNoise.png new file mode 100644 index 0000000..c442cf8 Binary files /dev/null and b/gversion/gs/cookieclicker/img/darkNoise.png differ diff --git a/gversion/gs/cookieclicker/img/darkNoiseTopBar.jpg b/gversion/gs/cookieclicker/img/darkNoiseTopBar.jpg new file mode 100644 index 0000000..1b76f9e Binary files /dev/null and b/gversion/gs/cookieclicker/img/darkNoiseTopBar.jpg differ diff --git a/gversion/gs/cookieclicker/img/dashnetLogo.png b/gversion/gs/cookieclicker/img/dashnetLogo.png new file mode 100644 index 0000000..97292a0 Binary files /dev/null and b/gversion/gs/cookieclicker/img/dashnetLogo.png differ diff --git a/gversion/gs/cookieclicker/img/discord.png b/gversion/gs/cookieclicker/img/discord.png new file mode 100644 index 0000000..fc4555a Binary files /dev/null and b/gversion/gs/cookieclicker/img/discord.png differ diff --git a/gversion/gs/cookieclicker/img/disgruntledCleaningLady.png b/gversion/gs/cookieclicker/img/disgruntledCleaningLady.png new file mode 100644 index 0000000..df8822d Binary files /dev/null and b/gversion/gs/cookieclicker/img/disgruntledCleaningLady.png differ diff --git a/gversion/gs/cookieclicker/img/disgruntledOverseer.png b/gversion/gs/cookieclicker/img/disgruntledOverseer.png new file mode 100644 index 0000000..be77ab5 Binary files /dev/null and b/gversion/gs/cookieclicker/img/disgruntledOverseer.png differ diff --git a/gversion/gs/cookieclicker/img/disgruntledWorker.png b/gversion/gs/cookieclicker/img/disgruntledWorker.png new file mode 100644 index 0000000..6694ba2 Binary files /dev/null and b/gversion/gs/cookieclicker/img/disgruntledWorker.png differ diff --git a/gversion/gs/cookieclicker/img/doughling.png b/gversion/gs/cookieclicker/img/doughling.png new file mode 100644 index 0000000..e659bb9 Binary files /dev/null and b/gversion/gs/cookieclicker/img/doughling.png differ diff --git a/gversion/gs/cookieclicker/img/dragon.png b/gversion/gs/cookieclicker/img/dragon.png new file mode 100644 index 0000000..425bfc4 Binary files /dev/null and b/gversion/gs/cookieclicker/img/dragon.png differ diff --git a/gversion/gs/cookieclicker/img/dragonBG.png b/gversion/gs/cookieclicker/img/dragonBG.png new file mode 100644 index 0000000..0758550 Binary files /dev/null and b/gversion/gs/cookieclicker/img/dragonBG.png differ diff --git a/gversion/gs/cookieclicker/img/dragonFrame.png b/gversion/gs/cookieclicker/img/dragonFrame.png new file mode 100644 index 0000000..ec07569 Binary files /dev/null and b/gversion/gs/cookieclicker/img/dragonFrame.png differ diff --git a/gversion/gs/cookieclicker/img/dungeonDot.png b/gversion/gs/cookieclicker/img/dungeonDot.png new file mode 100644 index 0000000..c8353f5 Binary files /dev/null and b/gversion/gs/cookieclicker/img/dungeonDot.png differ diff --git a/gversion/gs/cookieclicker/img/dungeonFactory.png b/gversion/gs/cookieclicker/img/dungeonFactory.png new file mode 100644 index 0000000..54d97a7 Binary files /dev/null and b/gversion/gs/cookieclicker/img/dungeonFactory.png differ diff --git a/gversion/gs/cookieclicker/img/dungeonFoes.png b/gversion/gs/cookieclicker/img/dungeonFoes.png new file mode 100644 index 0000000..64260a4 Binary files /dev/null and b/gversion/gs/cookieclicker/img/dungeonFoes.png differ diff --git a/gversion/gs/cookieclicker/img/dungeonHeroes.png b/gversion/gs/cookieclicker/img/dungeonHeroes.png new file mode 100644 index 0000000..8a1d5fa Binary files /dev/null and b/gversion/gs/cookieclicker/img/dungeonHeroes.png differ diff --git a/gversion/gs/cookieclicker/img/dungeonIcons.png b/gversion/gs/cookieclicker/img/dungeonIcons.png new file mode 100644 index 0000000..4a30724 Binary files /dev/null and b/gversion/gs/cookieclicker/img/dungeonIcons.png differ diff --git a/gversion/gs/cookieclicker/img/dungeonItems.png b/gversion/gs/cookieclicker/img/dungeonItems.png new file mode 100644 index 0000000..ad0a054 Binary files /dev/null and b/gversion/gs/cookieclicker/img/dungeonItems.png differ diff --git a/gversion/gs/cookieclicker/img/dungeonMapFactory.jpg b/gversion/gs/cookieclicker/img/dungeonMapFactory.jpg new file mode 100644 index 0000000..468b5dd Binary files /dev/null and b/gversion/gs/cookieclicker/img/dungeonMapFactory.jpg differ diff --git a/gversion/gs/cookieclicker/img/dungeonOverlay.png b/gversion/gs/cookieclicker/img/dungeonOverlay.png new file mode 100644 index 0000000..9a9eefb Binary files /dev/null and b/gversion/gs/cookieclicker/img/dungeonOverlay.png differ diff --git a/gversion/gs/cookieclicker/img/dungeonPictos.png b/gversion/gs/cookieclicker/img/dungeonPictos.png new file mode 100644 index 0000000..ef47b6c Binary files /dev/null and b/gversion/gs/cookieclicker/img/dungeonPictos.png differ diff --git a/gversion/gs/cookieclicker/img/dungeonTiles.png b/gversion/gs/cookieclicker/img/dungeonTiles.png new file mode 100644 index 0000000..1d30692 Binary files /dev/null and b/gversion/gs/cookieclicker/img/dungeonTiles.png differ diff --git a/gversion/gs/cookieclicker/img/easterEggs.png b/gversion/gs/cookieclicker/img/easterEggs.png new file mode 100644 index 0000000..3bacc32 Binary files /dev/null and b/gversion/gs/cookieclicker/img/easterEggs.png differ diff --git a/gversion/gs/cookieclicker/img/elderDoughling.png b/gversion/gs/cookieclicker/img/elderDoughling.png new file mode 100644 index 0000000..8d53bed Binary files /dev/null and b/gversion/gs/cookieclicker/img/elderDoughling.png differ diff --git a/gversion/gs/cookieclicker/img/elfGrandma.png b/gversion/gs/cookieclicker/img/elfGrandma.png new file mode 100644 index 0000000..75edd6a Binary files /dev/null and b/gversion/gs/cookieclicker/img/elfGrandma.png differ diff --git a/gversion/gs/cookieclicker/img/empty.png b/gversion/gs/cookieclicker/img/empty.png new file mode 100644 index 0000000..c2da5b8 Binary files /dev/null and b/gversion/gs/cookieclicker/img/empty.png differ diff --git a/gversion/gs/cookieclicker/img/emptyFrame.png b/gversion/gs/cookieclicker/img/emptyFrame.png new file mode 100644 index 0000000..45eab59 Binary files /dev/null and b/gversion/gs/cookieclicker/img/emptyFrame.png differ diff --git a/gversion/gs/cookieclicker/img/factory.png b/gversion/gs/cookieclicker/img/factory.png new file mode 100644 index 0000000..3cdd950 Binary files /dev/null and b/gversion/gs/cookieclicker/img/factory.png differ diff --git a/gversion/gs/cookieclicker/img/factoryBackground.png b/gversion/gs/cookieclicker/img/factoryBackground.png new file mode 100644 index 0000000..e96ea55 Binary files /dev/null and b/gversion/gs/cookieclicker/img/factoryBackground.png differ diff --git a/gversion/gs/cookieclicker/img/factoryIcon.png b/gversion/gs/cookieclicker/img/factoryIcon.png new file mode 100644 index 0000000..c8b748a Binary files /dev/null and b/gversion/gs/cookieclicker/img/factoryIcon.png differ diff --git a/gversion/gs/cookieclicker/img/factoryIconOff.png b/gversion/gs/cookieclicker/img/factoryIconOff.png new file mode 100644 index 0000000..7b52b8f Binary files /dev/null and b/gversion/gs/cookieclicker/img/factoryIconOff.png differ diff --git a/gversion/gs/cookieclicker/img/farm.png b/gversion/gs/cookieclicker/img/farm.png new file mode 100644 index 0000000..4580556 Binary files /dev/null and b/gversion/gs/cookieclicker/img/farm.png differ diff --git a/gversion/gs/cookieclicker/img/farmBackground.png b/gversion/gs/cookieclicker/img/farmBackground.png new file mode 100644 index 0000000..fe6acf9 Binary files /dev/null and b/gversion/gs/cookieclicker/img/farmBackground.png differ diff --git a/gversion/gs/cookieclicker/img/farmIcon.png b/gversion/gs/cookieclicker/img/farmIcon.png new file mode 100644 index 0000000..36cbf3e Binary files /dev/null and b/gversion/gs/cookieclicker/img/farmIcon.png differ diff --git a/gversion/gs/cookieclicker/img/farmIconOff.png b/gversion/gs/cookieclicker/img/farmIconOff.png new file mode 100644 index 0000000..94fa896 Binary files /dev/null and b/gversion/gs/cookieclicker/img/farmIconOff.png differ diff --git a/gversion/gs/cookieclicker/img/farmerGrandma.png b/gversion/gs/cookieclicker/img/farmerGrandma.png new file mode 100644 index 0000000..abde9b8 Binary files /dev/null and b/gversion/gs/cookieclicker/img/farmerGrandma.png differ diff --git a/gversion/gs/cookieclicker/img/favicon.ico b/gversion/gs/cookieclicker/img/favicon.ico new file mode 100644 index 0000000..3846c2c Binary files /dev/null and b/gversion/gs/cookieclicker/img/favicon.ico differ diff --git a/gversion/gs/cookieclicker/img/featherLeft.png b/gversion/gs/cookieclicker/img/featherLeft.png new file mode 100644 index 0000000..458becc Binary files /dev/null and b/gversion/gs/cookieclicker/img/featherLeft.png differ diff --git a/gversion/gs/cookieclicker/img/featherRight.png b/gversion/gs/cookieclicker/img/featherRight.png new file mode 100644 index 0000000..7d2d710 Binary files /dev/null and b/gversion/gs/cookieclicker/img/featherRight.png differ diff --git a/gversion/gs/cookieclicker/img/filler.png b/gversion/gs/cookieclicker/img/filler.png new file mode 100644 index 0000000..4870e8c Binary files /dev/null and b/gversion/gs/cookieclicker/img/filler.png differ diff --git a/gversion/gs/cookieclicker/img/fractalEngine.png b/gversion/gs/cookieclicker/img/fractalEngine.png new file mode 100644 index 0000000..8840cdf Binary files /dev/null and b/gversion/gs/cookieclicker/img/fractalEngine.png differ diff --git a/gversion/gs/cookieclicker/img/fractalEngineBackground.png b/gversion/gs/cookieclicker/img/fractalEngineBackground.png new file mode 100644 index 0000000..a45ae11 Binary files /dev/null and b/gversion/gs/cookieclicker/img/fractalEngineBackground.png differ diff --git a/gversion/gs/cookieclicker/img/frameBorder.png b/gversion/gs/cookieclicker/img/frameBorder.png new file mode 100644 index 0000000..585c677 Binary files /dev/null and b/gversion/gs/cookieclicker/img/frameBorder.png differ diff --git a/gversion/gs/cookieclicker/img/frostedReindeer.png b/gversion/gs/cookieclicker/img/frostedReindeer.png new file mode 100644 index 0000000..a635a42 Binary files /dev/null and b/gversion/gs/cookieclicker/img/frostedReindeer.png differ diff --git a/gversion/gs/cookieclicker/img/gardenPlants.png b/gversion/gs/cookieclicker/img/gardenPlants.png new file mode 100644 index 0000000..f490ef3 Binary files /dev/null and b/gversion/gs/cookieclicker/img/gardenPlants.png differ diff --git a/gversion/gs/cookieclicker/img/gardenPlots.png b/gversion/gs/cookieclicker/img/gardenPlots.png new file mode 100644 index 0000000..46a0a68 Binary files /dev/null and b/gversion/gs/cookieclicker/img/gardenPlots.png differ diff --git a/gversion/gs/cookieclicker/img/gardenTip.png b/gversion/gs/cookieclicker/img/gardenTip.png new file mode 100644 index 0000000..27aae6d Binary files /dev/null and b/gversion/gs/cookieclicker/img/gardenTip.png differ diff --git a/gversion/gs/cookieclicker/img/girlscoutChip.png b/gversion/gs/cookieclicker/img/girlscoutChip.png new file mode 100644 index 0000000..46ab993 Binary files /dev/null and b/gversion/gs/cookieclicker/img/girlscoutChip.png differ diff --git a/gversion/gs/cookieclicker/img/girlscoutCrumb.png b/gversion/gs/cookieclicker/img/girlscoutCrumb.png new file mode 100644 index 0000000..4189911 Binary files /dev/null and b/gversion/gs/cookieclicker/img/girlscoutCrumb.png differ diff --git a/gversion/gs/cookieclicker/img/girlscoutDoe.png b/gversion/gs/cookieclicker/img/girlscoutDoe.png new file mode 100644 index 0000000..448b87e Binary files /dev/null and b/gversion/gs/cookieclicker/img/girlscoutDoe.png differ diff --git a/gversion/gs/cookieclicker/img/girlscoutLucky.png b/gversion/gs/cookieclicker/img/girlscoutLucky.png new file mode 100644 index 0000000..d840a14 Binary files /dev/null and b/gversion/gs/cookieclicker/img/girlscoutLucky.png differ diff --git a/gversion/gs/cookieclicker/img/glint.jpg b/gversion/gs/cookieclicker/img/glint.jpg new file mode 100644 index 0000000..a96741b Binary files /dev/null and b/gversion/gs/cookieclicker/img/glint.jpg differ diff --git a/gversion/gs/cookieclicker/img/goldCookie.png b/gversion/gs/cookieclicker/img/goldCookie.png new file mode 100644 index 0000000..e1fc379 Binary files /dev/null and b/gversion/gs/cookieclicker/img/goldCookie.png differ diff --git a/gversion/gs/cookieclicker/img/grandma.png b/gversion/gs/cookieclicker/img/grandma.png new file mode 100644 index 0000000..872a44b Binary files /dev/null and b/gversion/gs/cookieclicker/img/grandma.png differ diff --git a/gversion/gs/cookieclicker/img/grandmaBackground.png b/gversion/gs/cookieclicker/img/grandmaBackground.png new file mode 100644 index 0000000..dba0b3d Binary files /dev/null and b/gversion/gs/cookieclicker/img/grandmaBackground.png differ diff --git a/gversion/gs/cookieclicker/img/grandmaIcon.png b/gversion/gs/cookieclicker/img/grandmaIcon.png new file mode 100644 index 0000000..7d9f587 Binary files /dev/null and b/gversion/gs/cookieclicker/img/grandmaIcon.png differ diff --git a/gversion/gs/cookieclicker/img/grandmaIconB.png b/gversion/gs/cookieclicker/img/grandmaIconB.png new file mode 100644 index 0000000..7e0323a Binary files /dev/null and b/gversion/gs/cookieclicker/img/grandmaIconB.png differ diff --git a/gversion/gs/cookieclicker/img/grandmaIconC.png b/gversion/gs/cookieclicker/img/grandmaIconC.png new file mode 100644 index 0000000..fb3e687 Binary files /dev/null and b/gversion/gs/cookieclicker/img/grandmaIconC.png differ diff --git a/gversion/gs/cookieclicker/img/grandmaIconD.png b/gversion/gs/cookieclicker/img/grandmaIconD.png new file mode 100644 index 0000000..fb2e6fd Binary files /dev/null and b/gversion/gs/cookieclicker/img/grandmaIconD.png differ diff --git a/gversion/gs/cookieclicker/img/grandmaIconOff.png b/gversion/gs/cookieclicker/img/grandmaIconOff.png new file mode 100644 index 0000000..8b0900a Binary files /dev/null and b/gversion/gs/cookieclicker/img/grandmaIconOff.png differ diff --git a/gversion/gs/cookieclicker/img/grandmas1.jpg b/gversion/gs/cookieclicker/img/grandmas1.jpg new file mode 100644 index 0000000..66f3b6d Binary files /dev/null and b/gversion/gs/cookieclicker/img/grandmas1.jpg differ diff --git a/gversion/gs/cookieclicker/img/grandmas2.jpg b/gversion/gs/cookieclicker/img/grandmas2.jpg new file mode 100644 index 0000000..1fc5cc4 Binary files /dev/null and b/gversion/gs/cookieclicker/img/grandmas2.jpg differ diff --git a/gversion/gs/cookieclicker/img/grandmas3.jpg b/gversion/gs/cookieclicker/img/grandmas3.jpg new file mode 100644 index 0000000..1c93a34 Binary files /dev/null and b/gversion/gs/cookieclicker/img/grandmas3.jpg differ diff --git a/gversion/gs/cookieclicker/img/grandmasGrandma.png b/gversion/gs/cookieclicker/img/grandmasGrandma.png new file mode 100644 index 0000000..7781ad2 Binary files /dev/null and b/gversion/gs/cookieclicker/img/grandmasGrandma.png differ diff --git a/gversion/gs/cookieclicker/img/grimoireBG.png b/gversion/gs/cookieclicker/img/grimoireBG.png new file mode 100644 index 0000000..d6d607b Binary files /dev/null and b/gversion/gs/cookieclicker/img/grimoireBG.png differ diff --git a/gversion/gs/cookieclicker/img/heartStorm.png b/gversion/gs/cookieclicker/img/heartStorm.png new file mode 100644 index 0000000..e6cbbfe Binary files /dev/null and b/gversion/gs/cookieclicker/img/heartStorm.png differ diff --git a/gversion/gs/cookieclicker/img/hearts.png b/gversion/gs/cookieclicker/img/hearts.png new file mode 100644 index 0000000..14e976e Binary files /dev/null and b/gversion/gs/cookieclicker/img/hearts.png differ diff --git a/gversion/gs/cookieclicker/img/heavenRing1.jpg b/gversion/gs/cookieclicker/img/heavenRing1.jpg new file mode 100644 index 0000000..b9b7f78 Binary files /dev/null and b/gversion/gs/cookieclicker/img/heavenRing1.jpg differ diff --git a/gversion/gs/cookieclicker/img/heavenRing2.jpg b/gversion/gs/cookieclicker/img/heavenRing2.jpg new file mode 100644 index 0000000..13d03c4 Binary files /dev/null and b/gversion/gs/cookieclicker/img/heavenRing2.jpg differ diff --git a/gversion/gs/cookieclicker/img/heavenlyMoney.png b/gversion/gs/cookieclicker/img/heavenlyMoney.png new file mode 100644 index 0000000..bf9d738 Binary files /dev/null and b/gversion/gs/cookieclicker/img/heavenlyMoney.png differ diff --git a/gversion/gs/cookieclicker/img/heraldFlag.png b/gversion/gs/cookieclicker/img/heraldFlag.png new file mode 100644 index 0000000..98e6439 Binary files /dev/null and b/gversion/gs/cookieclicker/img/heraldFlag.png differ diff --git a/gversion/gs/cookieclicker/img/hpBar.png b/gversion/gs/cookieclicker/img/hpBar.png new file mode 100644 index 0000000..09653ed Binary files /dev/null and b/gversion/gs/cookieclicker/img/hpBar.png differ diff --git a/gversion/gs/cookieclicker/img/hpmBar.png b/gversion/gs/cookieclicker/img/hpmBar.png new file mode 100644 index 0000000..300a291 Binary files /dev/null and b/gversion/gs/cookieclicker/img/hpmBar.png differ diff --git a/gversion/gs/cookieclicker/img/icon.ico b/gversion/gs/cookieclicker/img/icon.ico new file mode 100644 index 0000000..9b5bac2 Binary files /dev/null and b/gversion/gs/cookieclicker/img/icon.ico differ diff --git a/gversion/gs/cookieclicker/img/icon.png b/gversion/gs/cookieclicker/img/icon.png new file mode 100644 index 0000000..932d962 Binary files /dev/null and b/gversion/gs/cookieclicker/img/icon.png differ diff --git a/gversion/gs/cookieclicker/img/icons.png b/gversion/gs/cookieclicker/img/icons.png new file mode 100644 index 0000000..f3954f9 Binary files /dev/null and b/gversion/gs/cookieclicker/img/icons.png differ diff --git a/gversion/gs/cookieclicker/img/idleverse.png b/gversion/gs/cookieclicker/img/idleverse.png new file mode 100644 index 0000000..410d29b Binary files /dev/null and b/gversion/gs/cookieclicker/img/idleverse.png differ diff --git a/gversion/gs/cookieclicker/img/idleverseBackground.png b/gversion/gs/cookieclicker/img/idleverseBackground.png new file mode 100644 index 0000000..2492309 Binary files /dev/null and b/gversion/gs/cookieclicker/img/idleverseBackground.png differ diff --git a/gversion/gs/cookieclicker/img/imperfectCookie.png b/gversion/gs/cookieclicker/img/imperfectCookie.png new file mode 100644 index 0000000..afa7bc0 Binary files /dev/null and b/gversion/gs/cookieclicker/img/imperfectCookie.png differ diff --git a/gversion/gs/cookieclicker/img/index.html b/gversion/gs/cookieclicker/img/index.html new file mode 100644 index 0000000..5853085 --- /dev/null +++ b/gversion/gs/cookieclicker/img/index.html @@ -0,0 +1,266 @@ + + + + Index of /cookieclicker/img + + +

Index of /cookieclicker/img

+
Icon  Name                    Last modified      Size  Description
[PARENTDIR] Parent Directory - +[IMG] BGgarden.jpg 2018-03-08 23:42 21K +[IMG] BGgrimoire.jpg 2018-03-08 21:17 20K +[IMG] BGmarket.jpg 2020-08-22 19:08 23K +[IMG] BGpantheon.jpg 2018-03-08 21:13 25K +[   ] Thumbs.db 2017-11-24 00:23 1.9M +[IMG] alchemylab.png 2013-12-28 23:56 820 +[IMG] alchemylabBackground..> 2013-12-28 23:56 472 +[IMG] alteredGrandma.png 2013-12-28 23:56 470 +[IMG] alternateGrandma.png 2020-10-29 12:32 1.6K +[IMG] antiGrandma.png 2013-12-28 23:56 526 +[IMG] antimattercondenser.png 2013-12-28 23:56 666 +[IMG] antimattercondenserB..> 2013-12-28 23:56 966 +[IMG] aqworldsbanner.jpg 2013-12-29 16:33 29K +[IMG] ascendBox.png 2015-12-20 11:28 22K +[IMG] ascendInfo.png 2015-12-20 11:29 11K +[IMG] ascendSlot.png 2015-04-17 10:36 14K +[IMG] ascendWisp.png 2014-08-25 07:44 42K +[IMG] ascendedBakingPod.png 2013-12-28 23:56 1.7K +[IMG] bank.png 2014-08-08 16:58 501 +[IMG] bankBackground.png 2014-08-08 12:53 2.2K +[IMG] bankGrandma.png 2014-08-08 17:59 614 +[IMG] bgBlack.jpg 2017-06-30 05:53 28K +[IMG] bgBlue.jpg 2017-06-30 05:48 60K +[IMG] bgGold.jpg 2017-06-30 05:54 72K +[IMG] bgMoney.jpg 2014-03-31 23:00 69K +[IMG] bgMoneyChart.jpg 2014-03-31 23:40 9.7K +[IMG] bgRed.jpg 2017-06-30 05:51 32K +[IMG] bgWhite.jpg 2017-06-30 05:53 56K +[IMG] blackGradient.png 2013-12-28 23:56 561 +[IMG] blackGradientLeft.png 2015-12-20 14:19 1.2K +[IMG] blackGradientSmallTo..> 2014-08-14 22:21 971 +[IMG] bracketPanelLeftS.png 2015-12-12 19:05 2.2K +[IMG] bracketPanelRightS.png 2015-12-12 19:05 2.3K +[IMG] brokenCookie.png 2015-10-25 03:35 36K +[IMG] brokenCookieHalo.png 2014-08-15 01:04 22K +[IMG] brownStripes.png 2018-08-06 05:35 2.0K +[IMG] brownStripesLeftEdge..> 2018-08-06 04:57 1.1K +[IMG] buildings.png 2020-10-25 12:43 89K +[IMG] bunnies.png 2014-04-23 01:46 23K +[IMG] bunnyGrandma.png 2014-05-15 22:13 713 +[IMG] buttonTile.jpg 2013-12-29 16:33 7.6K +[IMG] caramelWave.png 2013-12-28 23:56 11K +[IMG] chancemaker.png 2017-07-30 21:16 1.5K +[IMG] chancemakerBackgroun..> 2017-07-30 21:15 2.6K +[IMG] chocolateMilkWave.png 2013-12-28 23:57 10K +[IMG] clayBG.jpg 2017-06-12 06:40 21K +[IMG] contract.png 2014-03-31 21:50 4.8K +[IMG] control.png 2013-12-28 23:57 48K +[IMG] cookieShower1.png 2013-12-28 23:57 29K +[IMG] cookieShower2.png 2013-12-28 23:57 55K +[IMG] cookieShower3.png 2013-12-28 23:58 76K +[IMG] cosmicGrandma.png 2013-12-28 23:58 616 +[IMG] cursor.png 2015-10-19 00:01 2.2K +[IMG] darkNoise.jpg 2014-08-13 22:11 53K +[IMG] darkNoise.png 2013-12-28 23:58 1.7K +[IMG] darkNoiseTopBar.jpg 2014-08-14 02:22 8.3K +[IMG] discord.png 2018-02-20 22:15 2.3K +[IMG] dragon.png 2018-10-17 02:45 6.1K +[IMG] dragonBG.png 2015-09-25 22:02 21K +[IMG] dragonFrame.png 2015-03-31 02:41 2.0K +[IMG] dungeonDot.png 2018-09-11 17:06 3.2K +[IMG] dungeonFactory.png 2013-12-28 23:58 2.3K +[IMG] dungeonFoes.png 2018-10-06 20:37 1.9K +[IMG] dungeonHeroes.png 2018-10-06 15:56 2.4K +[IMG] dungeonIcons.png 2013-12-28 23:58 4.3K +[IMG] dungeonItems.png 2018-09-18 21:38 1.4K +[IMG] dungeonMapFactory.jpg 2018-08-06 00:43 14K +[IMG] dungeonOverlay.png 2013-12-28 23:58 13K +[IMG] dungeonPictos.png 2018-10-07 11:21 1.9K +[IMG] dungeonTiles.png 2013-12-28 23:58 3.4K +[IMG] easterEggs.png 2014-04-23 02:06 6.4K +[IMG] elfGrandma.png 2013-12-28 23:58 622 +[IMG] empty.png 2013-12-28 23:58 95 +[IMG] emptyFrame.png 2015-08-28 07:01 3.5K +[IMG] factory.png 2013-12-28 23:58 477 +[IMG] factoryBackground.png 2013-12-28 23:58 1.3K +[IMG] farm.png 2013-12-28 23:58 765 +[IMG] farmBackground.png 2013-12-28 23:58 812 +[IMG] farmerGrandma.png 2013-12-28 23:58 615 +[IMG] favicon.ico 2013-09-02 18:44 318 +[IMG] featherLeft.png 2015-12-13 00:27 2.9K +[IMG] featherRight.png 2015-12-13 00:27 2.9K +[IMG] filler.png 2014-04-11 22:27 953 +[IMG] fractalEngine.png 2018-10-17 19:44 1.3K +[IMG] fractalEngineBackgro..> 2018-10-17 19:47 4.4K +[IMG] frameBorder.png 2015-08-27 05:33 1.0K +[IMG] frostedReindeer.png 2013-12-28 23:58 9.7K +[IMG] gardenPlants.png 2018-04-15 07:14 20K +[IMG] gardenPlots.png 2018-04-08 20:41 9.6K +[IMG] gardenTip.png 2018-07-20 08:47 14K +[IMG] girlscoutChip.png 2013-12-28 23:58 751 +[IMG] girlscoutCrumb.png 2013-12-28 23:58 738 +[IMG] girlscoutDoe.png 2013-12-28 23:58 762 +[IMG] girlscoutLucky.png 2013-12-28 23:58 754 +[IMG] glint.jpg 2015-12-23 11:41 1.8K +[IMG] goldCookie.png 2013-12-28 23:58 4.0K +[IMG] grandma.png 2013-12-28 23:58 571 +[IMG] grandmaBackground.png 2013-12-28 23:58 837 +[IMG] grandmas1.jpg 2013-12-29 16:33 21K +[IMG] grandmas2.jpg 2013-12-29 16:33 17K +[IMG] grandmas3.jpg 2013-12-29 16:33 26K +[IMG] grandmasGrandma.png 2013-12-28 23:58 619 +[IMG] grimoireBG.png 2017-06-30 07:29 25K +[IMG] heartStorm.png 2014-02-10 02:59 64K +[IMG] hearts.png 2014-02-10 02:54 23K +[IMG] heavenRing1.jpg 2015-12-20 08:37 4.0K +[IMG] heavenRing2.jpg 2015-12-20 08:37 4.0K +[IMG] heavenlyMoney.png 2015-05-14 09:16 1.1K +[IMG] heraldFlag.png 2018-10-09 18:47 3.6K +[IMG] icons.png 2020-10-30 10:25 162K +[IMG] idleverse.png 2020-10-29 11:43 3.8K +[IMG] idleverseBackground.png 2020-10-29 11:25 2.4K +[IMG] imperfectCookie.png 2013-12-28 23:59 94K +[IMG] infoBG.png 2013-12-28 23:59 94 +[IMG] infoBGfade.png 2013-12-28 23:59 276 +[IMG] javascriptconsole.png 2020-06-15 06:08 1.0K +[IMG] javascriptconsoleBac..> 2019-09-16 04:35 6.7K +[IMG] levelUp.png 2017-06-05 05:50 2.0K +[IMG] linkDash.png 2018-08-06 03:23 1.0K +[IMG] linkPulse.gif 2016-02-03 18:16 4.2K +[IMG] linkPulse.png 2014-08-24 11:41 1.6K +[IMG] lockOff.png 2019-09-16 05:06 1.2K +[IMG] lockOn.png 2019-09-16 05:06 1.2K +[IMG] luckyGrandma.png 2017-07-29 23:28 713 +[IMG] mapBG.jpg 2013-12-29 16:33 13K +[IMG] mapIcons.png 2013-12-28 23:59 664 +[IMG] marbleBG.jpg 2017-06-12 11:05 31K +[IMG] marshmallows.png 2013-12-28 23:59 2.6K +[IMG] metaGrandma.png 2018-10-18 22:00 1.6K +[IMG] milk.png 2013-12-29 00:00 6.3K +[IMG] milkBanana.png 2015-09-20 13:09 43K +[IMG] milkBlack.png 2015-10-14 12:19 47K +[IMG] milkBlood.png 2015-10-14 12:13 62K +[IMG] milkBlueFire.png 2015-10-15 13:32 78K +[IMG] milkBlueberry.png 2015-09-20 13:09 42K +[IMG] milkCaramel.png 2015-09-20 13:09 41K +[IMG] milkCherry.png 2018-03-31 09:34 24K +[IMG] milkChocolate.png 2015-09-20 13:08 40K +[IMG] milkCoconut.png 2018-03-31 09:34 30K +[IMG] milkCoffee.png 2018-03-31 08:59 19K +[IMG] milkDragonfruit.png 2020-10-27 16:34 49K +[IMG] milkFire.png 2015-10-14 12:53 67K +[IMG] milkGold.png 2015-10-14 12:17 58K +[IMG] milkGreenFire.png 2015-10-15 13:31 71K +[IMG] milkHoney.png 2017-07-30 02:14 21K +[IMG] milkLicorice.png 2020-08-22 19:55 38K +[IMG] milkLime.png 2015-09-20 13:09 42K +[IMG] milkMaple.png 2018-10-21 21:02 20K +[IMG] milkMint.png 2019-09-11 03:06 40K +[IMG] milkOrange.png 2015-09-20 13:08 42K +[IMG] milkPlain.png 2015-09-20 13:08 43K +[IMG] milkRaspberry.png 2015-09-20 13:08 40K +[IMG] milkRose.png 2020-10-27 15:47 56K +[IMG] milkSoy.png 2018-03-31 09:34 22K +[IMG] milkSpiced.png 2018-04-16 18:17 75K +[IMG] milkStars.png 2015-10-13 23:08 52K +[IMG] milkStrawberry.png 2015-09-20 13:10 40K +[IMG] milkTea.png 2018-03-31 09:06 19K +[IMG] milkVanilla.png 2015-09-20 13:11 43K +[IMG] milkWave.png 2013-12-29 00:00 16K +[IMG] milkZebra.png 2015-10-14 21:48 69K +[IMG] mine.png 2013-12-29 00:00 668 +[IMG] mineBackground.png 2013-12-29 00:00 1.0K +[IMG] minerGrandma.png 2013-12-29 00:00 626 +[IMG] money.png 2013-12-29 00:00 280 +[IMG] mysticBG.jpg 2017-06-12 11:19 22K +[IMG] nest.png 2014-05-16 17:44 15K +[IMG] orangeWave.png 2013-12-29 00:01 11K +[IMG] panelBG.png 2015-04-02 16:57 27K +[IMG] panelGradientBottom.png 2015-10-08 08:43 1.0K +[IMG] panelGradientLeft.png 2015-10-08 08:43 1.0K +[IMG] panelGradientRight.png 2015-10-08 08:44 1.0K +[IMG] panelGradientTop.png 2015-10-08 08:43 1.0K +[IMG] panelHorizontal.png 2015-08-28 06:14 6.6K +[IMG] panelMenu.png 2014-08-24 01:03 19K +[IMG] panelMenu2.png 2015-04-18 11:59 36K +[IMG] panelMenu3.png 2015-08-28 15:07 49K +[IMG] panelVertical.png 2015-08-28 06:14 7.0K +[IMG] pantheonBG.png 2017-06-30 07:51 25K +[IMG] patreon.png 2018-10-10 10:03 2.4K +[IMG] perfectCookie.png 2013-12-29 00:01 96K +[IMG] pieFill.png 2015-10-16 01:43 11K +[IMG] pointyLad.png 2018-04-14 20:55 1.8K +[IMG] portal.png 2013-12-29 00:01 1.0K +[IMG] portalBackground.png 2013-12-29 00:01 3.6K +[IMG] portraitChip.png 2013-12-29 00:01 940 +[IMG] portraitCrumb.png 2013-12-29 00:01 967 +[IMG] portraitDoe.png 2013-12-29 00:01 1.0K +[IMG] portraitLucky.png 2013-12-29 00:01 1.0K +[IMG] prestigeBar.jpg 2015-12-20 17:56 2.4K +[IMG] prestigeBarCap.png 2015-12-20 17:58 1.0K +[IMG] prism.png 2014-02-13 12:48 782 +[IMG] prismBackground.png 2014-02-13 10:31 701 +[IMG] rainbowGrandma.png 2014-02-13 11:07 626 +[IMG] raspberryWave.png 2013-12-29 00:02 10K +[IMG] roundFrameBorder.png 2015-08-27 08:49 1.1K +[IMG] roundedPanelBG.png 2015-12-11 01:01 7.1K +[IMG] roundedPanelBGS.png 2015-12-12 18:45 21K +[IMG] roundedPanelLeft.png 2015-12-11 00:59 2.5K +[IMG] roundedPanelLeftS.png 2015-12-12 18:44 2.4K +[IMG] roundedPanelRight.png 2015-12-11 01:00 2.5K +[IMG] roundedPanelRightS.png 2015-12-12 18:44 2.6K +[IMG] santa.png 2013-12-29 00:02 9.3K +[IMG] scriptGrandma.png 2019-09-03 16:43 693 +[IMG] sentientFurnace.png 2013-12-29 00:02 1.6K +[IMG] shadedBorders.png 2015-11-01 19:55 12K +[IMG] shadedBordersGold.png 2013-12-29 00:02 2.3K +[IMG] shadedBordersRed.png 2013-12-29 00:02 2.3K +[IMG] shadedBordersSoft.png 2015-11-11 06:51 3.4K +[IMG] shine.png 2013-12-29 00:02 6.0K +[IMG] shineGold.png 2017-06-30 18:07 7.8K +[IMG] shineRed.png 2017-06-30 18:09 7.8K +[IMG] shineSpoke.png 2015-10-31 12:28 6.2K +[IMG] shinyWrinkler.png 2015-04-15 07:11 5.8K +[IMG] shinyWrinklerBits.png 2015-04-15 07:10 7.9K +[IMG] shipment.png 2013-12-29 00:02 507 +[IMG] shipmentBackground.png 2013-12-29 00:02 923 +[IMG] smallCookies.png 2013-12-29 00:02 14K +[IMG] smallDollars.png 2014-04-01 18:15 5.5K +[IMG] snow.jpg 2013-12-29 16:33 47K +[IMG] snow2.jpg 2013-12-29 16:33 71K +[IMG] sparkles.jpg 2015-10-13 12:54 16K +[IMG] spellBG.png 2017-06-08 09:54 33K +[IMG] spinnyBig.png 2015-10-24 02:38 5.3K +[IMG] spinnySmall.png 2015-10-24 02:38 2.7K +[IMG] spookyCookie.png 2013-12-29 00:02 4.3K +[IMG] starbg.jpg 2014-08-03 05:54 188K +[IMG] storeTile.jpg 2013-12-29 16:33 18K +[IMG] sugarLump.png 2017-06-05 05:27 1.1K +[IMG] temple.png 2014-08-08 16:59 752 +[IMG] templeBackground.png 2014-08-08 11:02 2.5K +[IMG] templeGrandma.png 2014-08-08 18:00 742 +[IMG] timemachine.png 2013-12-29 00:02 773 +[IMG] timemachineBackgroun..> 2013-12-29 00:02 1.2K +[IMG] timerBars.png 2014-02-10 05:26 2.3K +[IMG] transmutedGrandma.png 2013-12-29 00:02 449 +[IMG] turnInto.png 2018-03-13 16:34 1.5K +[IMG] upgradeFrame.png 2016-04-19 07:17 20K +[IMG] upgradeFrameHeavenly..> 2014-08-24 08:51 2.7K +[IMG] upgradeFrameOld.png 2015-04-18 10:45 7.3K +[IMG] upgradeFrameShadowOl..> 2015-05-14 09:06 7.0K +[IMG] upgradeHighlight.jpg 2015-10-15 18:08 4.3K +[IMG] upgradeHighlight.png 2015-10-15 18:08 5.4K +[IMG] upgradeSelector.png 2015-10-14 22:52 1.0K +[IMG] weeHoodie.png 2015-10-24 09:51 2.6K +[IMG] winterFrame.png 2015-03-30 23:49 1.9K +[IMG] winterWrinkler.png 2013-12-29 00:02 5.8K +[IMG] witchGrandma.png 2014-08-08 18:00 779 +[IMG] wizardtower.png 2014-08-08 16:59 864 +[IMG] wizardtowerBackgroun..> 2014-08-08 18:10 1.6K +[IMG] workerGrandma.png 2013-12-29 00:02 534 +[IMG] wrathContract.png 2014-03-31 21:57 5.1K +[IMG] wrathCookie.png 2013-12-29 00:02 4.8K +[IMG] wrinkler.png 2013-12-29 00:02 5.8K +[IMG] wrinklerBits.png 2015-04-15 03:51 8.1K +[IMG] wrinklerBitsOld.png 2013-12-29 00:02 6.4K +
+ diff --git a/gversion/gs/cookieclicker/img/infoBG.png b/gversion/gs/cookieclicker/img/infoBG.png new file mode 100644 index 0000000..eff05e6 Binary files /dev/null and b/gversion/gs/cookieclicker/img/infoBG.png differ diff --git a/gversion/gs/cookieclicker/img/infoBGfade.png b/gversion/gs/cookieclicker/img/infoBGfade.png new file mode 100644 index 0000000..23cb233 Binary files /dev/null and b/gversion/gs/cookieclicker/img/infoBGfade.png differ diff --git a/gversion/gs/cookieclicker/img/javascriptconsole.png b/gversion/gs/cookieclicker/img/javascriptconsole.png new file mode 100644 index 0000000..4f7c708 Binary files /dev/null and b/gversion/gs/cookieclicker/img/javascriptconsole.png differ diff --git a/gversion/gs/cookieclicker/img/javascriptconsoleBackground.png b/gversion/gs/cookieclicker/img/javascriptconsoleBackground.png new file mode 100644 index 0000000..1c34d86 Binary files /dev/null and b/gversion/gs/cookieclicker/img/javascriptconsoleBackground.png differ diff --git a/gversion/gs/cookieclicker/img/levelUp.png b/gversion/gs/cookieclicker/img/levelUp.png new file mode 100644 index 0000000..d5fcea4 Binary files /dev/null and b/gversion/gs/cookieclicker/img/levelUp.png differ diff --git a/gversion/gs/cookieclicker/img/linkDash.png b/gversion/gs/cookieclicker/img/linkDash.png new file mode 100644 index 0000000..8e62d5f Binary files /dev/null and b/gversion/gs/cookieclicker/img/linkDash.png differ diff --git a/gversion/gs/cookieclicker/img/linkPulse.gif b/gversion/gs/cookieclicker/img/linkPulse.gif new file mode 100644 index 0000000..3904b99 Binary files /dev/null and b/gversion/gs/cookieclicker/img/linkPulse.gif differ diff --git a/gversion/gs/cookieclicker/img/linkPulse.png b/gversion/gs/cookieclicker/img/linkPulse.png new file mode 100644 index 0000000..c55fe0b Binary files /dev/null and b/gversion/gs/cookieclicker/img/linkPulse.png differ diff --git a/gversion/gs/cookieclicker/img/list.txt b/gversion/gs/cookieclicker/img/list.txt new file mode 100644 index 0000000..cc2e646 --- /dev/null +++ b/gversion/gs/cookieclicker/img/list.txt @@ -0,0 +1,256 @@ +BGgarden.jpg +BGgrimoire.jpg +BGmarket.jpg +BGpantheon.jpg +Thumbs.db +alchemylab.png +alchemylabBackground.png +alteredGrandma.png +alternateGrandma.png +antiGrandma.png +antimattercondenser.png +antimattercondenserBackground.png +aqworldsbanner.jpg +ascendBox.png +ascendInfo.png +ascendSlot.png +ascendWisp.png +ascendedBakingPod.png +bank.png +bankBackground.png +bankGrandma.png +bgBlack.jpg +bgBlue.jpg +bgGold.jpg +bgMoney.jpg +bgMoneyChart.jpg +bgRed.jpg +bgWhite.jpg +blackGradient.png +blackGradientLeft.png +blackGradientSmallTop.png +bracketPanelLeftS.png +bracketPanelRightS.png +brokenCookie.png +brokenCookieHalo.png +brownStripes.png +brownStripesLeftEdge.png +buildings.png +bunnies.png +bunnyGrandma.png +buttonTile.jpg +caramelWave.png +chancemaker.png +chancemakerBackground.png +chocolateMilkWave.png +clayBG.jpg +contract.png +control.png +cookieShower1.png +cookieShower2.png +cookieShower3.png +cosmicGrandma.png +cursor.png +darkNoise.jpg +darkNoise.png +darkNoiseTopBar.jpg +discord.png +dragon.png +dragonBG.png +dragonFrame.png +dungeonDot.png +dungeonFactory.png +dungeonFoes.png +dungeonHeroes.png +dungeonIcons.png +dungeonItems.png +dungeonMapFactory.jpg +dungeonOverlay.png +dungeonPictos.png +dungeonTiles.png +easterEggs.png +elfGrandma.png +empty.png +emptyFrame.png +factory.png +factoryBackground.png +farm.png +farmBackground.png +farmerGrandma.png +favicon.ico +featherLeft.png +featherRight.png +filler.png +fractalEngine.png +fractalEngineBackground.png +frameBorder.png +frostedReindeer.png +gardenPlants.png +gardenPlots.png +gardenTip.png +girlscoutChip.png +girlscoutCrumb.png +girlscoutDoe.png +girlscoutLucky.png +glint.jpg +goldCookie.png +grandma.png +grandmaBackground.png +grandmas1.jpg +grandmas2.jpg +grandmas3.jpg +grandmasGrandma.png +grimoireBG.png +heartStorm.png +hearts.png +heavenRing1.jpg +heavenRing2.jpg +heavenlyMoney.png +heraldFlag.png +icons.png +idleverse.png +idleverseBackground.png +imperfectCookie.png +infoBG.png +infoBGfade.png +javascriptconsole.png +javascriptconsoleBackground.png +levelUp.png +linkDash.png +linkPulse.gif +linkPulse.png +lockOff.png +lockOn.png +luckyGrandma.png +mapBG.jpg +mapIcons.png +marbleBG.jpg +marshmallows.png +metaGrandma.png +milk.png +milkBanana.png +milkBlack.png +milkBlood.png +milkBlueFire.png +milkBlueberry.png +milkCaramel.png +milkCherry.png +milkChocolate.png +milkCoconut.png +milkCoffee.png +milkDragonfruit.png +milkFire.png +milkGold.png +milkGreenFire.png +milkHoney.png +milkLicorice.png +milkLime.png +milkMaple.png +milkMint.png +milkOrange.png +milkPlain.png +milkRaspberry.png +milkRose.png +milkSoy.png +milkSpiced.png +milkStars.png +milkStrawberry.png +milkTea.png +milkVanilla.png +milkWave.png +milkZebra.png +mine.png +mineBackground.png +minerGrandma.png +money.png +mysticBG.jpg +nest.png +orangeWave.png +panelBG.png +panelGradientBottom.png +panelGradientLeft.png +panelGradientRight.png +panelGradientTop.png +panelHorizontal.png +panelMenu.png +panelMenu2.png +panelMenu3.png +panelVertical.png +pantheonBG.png +patreon.png +perfectCookie.png +pieFill.png +pointyLad.png +portal.png +portalBackground.png +portraitChip.png +portraitCrumb.png +portraitDoe.png +portraitLucky.png +prestigeBar.jpg +prestigeBarCap.png +prism.png +prismBackground.png +rainbowGrandma.png +raspberryWave.png +roundFrameBorder.png +roundedPanelBG.png +roundedPanelBGS.png +roundedPanelLeft.png +roundedPanelLeftS.png +roundedPanelRight.png +roundedPanelRightS.png +santa.png +scriptGrandma.png +sentientFurnace.png +shadedBorders.png +shadedBordersGold.png +shadedBordersRed.png +shadedBordersSoft.png +shine.png +shineGold.png +shineRed.png +shineSpoke.png +shinyWrinkler.png +shinyWrinklerBits.png +shipment.png +shipmentBackground.png +smallCookies.png +smallDollars.png +snow.jpg +snow2.jpg +sparkles.jpg +spellBG.png +spinnyBig.png +spinnySmall.png +spookyCookie.png +starbg.jpg +storeTile.jpg +sugarLump.png +temple.png +templeBackground.png +templeGrandma.png +timemachine.png +timemachineBackground.png +timerBars.png +transmutedGrandma.png +turnInto.png +upgradeFrame.png +upgradeFrameHeavenly.png +upgradeFrameOld.png +upgradeFrameShadowOld.png +upgradeHighlight.jpg +upgradeHighlight.png +upgradeSelector.png +weeHoodie.png +winterFrame.png +winterWrinkler.png +witchGrandma.png +wizardtower.png +wizardtowerBackground.png +workerGrandma.png +wrathContract.png +wrathCookie.png +wrinkler.png +wrinklerBits.png +wrinklerBitsOld.png diff --git a/gversion/gs/cookieclicker/img/lockOff.png b/gversion/gs/cookieclicker/img/lockOff.png new file mode 100644 index 0000000..a8aa8ec Binary files /dev/null and b/gversion/gs/cookieclicker/img/lockOff.png differ diff --git a/gversion/gs/cookieclicker/img/lockOn.png b/gversion/gs/cookieclicker/img/lockOn.png new file mode 100644 index 0000000..9873d63 Binary files /dev/null and b/gversion/gs/cookieclicker/img/lockOn.png differ diff --git a/gversion/gs/cookieclicker/img/luckyGrandma.png b/gversion/gs/cookieclicker/img/luckyGrandma.png new file mode 100644 index 0000000..038534c Binary files /dev/null and b/gversion/gs/cookieclicker/img/luckyGrandma.png differ diff --git a/gversion/gs/cookieclicker/img/mapBG.jpg b/gversion/gs/cookieclicker/img/mapBG.jpg new file mode 100644 index 0000000..c7728a3 Binary files /dev/null and b/gversion/gs/cookieclicker/img/mapBG.jpg differ diff --git a/gversion/gs/cookieclicker/img/mapIcons.png b/gversion/gs/cookieclicker/img/mapIcons.png new file mode 100644 index 0000000..ac909e7 Binary files /dev/null and b/gversion/gs/cookieclicker/img/mapIcons.png differ diff --git a/gversion/gs/cookieclicker/img/mapTiles.png b/gversion/gs/cookieclicker/img/mapTiles.png new file mode 100644 index 0000000..3971ce0 Binary files /dev/null and b/gversion/gs/cookieclicker/img/mapTiles.png differ diff --git a/gversion/gs/cookieclicker/img/marbleBG.jpg b/gversion/gs/cookieclicker/img/marbleBG.jpg new file mode 100644 index 0000000..9eebd1a Binary files /dev/null and b/gversion/gs/cookieclicker/img/marbleBG.jpg differ diff --git a/gversion/gs/cookieclicker/img/marshmallows.png b/gversion/gs/cookieclicker/img/marshmallows.png new file mode 100644 index 0000000..789771f Binary files /dev/null and b/gversion/gs/cookieclicker/img/marshmallows.png differ diff --git a/gversion/gs/cookieclicker/img/metaGrandma.png b/gversion/gs/cookieclicker/img/metaGrandma.png new file mode 100644 index 0000000..a975f7b Binary files /dev/null and b/gversion/gs/cookieclicker/img/metaGrandma.png differ diff --git a/gversion/gs/cookieclicker/img/milk.png b/gversion/gs/cookieclicker/img/milk.png new file mode 100644 index 0000000..d3af479 Binary files /dev/null and b/gversion/gs/cookieclicker/img/milk.png differ diff --git a/gversion/gs/cookieclicker/img/milkBanana.png b/gversion/gs/cookieclicker/img/milkBanana.png new file mode 100644 index 0000000..ca84717 Binary files /dev/null and b/gversion/gs/cookieclicker/img/milkBanana.png differ diff --git a/gversion/gs/cookieclicker/img/milkBlack.png b/gversion/gs/cookieclicker/img/milkBlack.png new file mode 100644 index 0000000..24844dd Binary files /dev/null and b/gversion/gs/cookieclicker/img/milkBlack.png differ diff --git a/gversion/gs/cookieclicker/img/milkBlackcurrant.png b/gversion/gs/cookieclicker/img/milkBlackcurrant.png new file mode 100644 index 0000000..ecbef0e Binary files /dev/null and b/gversion/gs/cookieclicker/img/milkBlackcurrant.png differ diff --git a/gversion/gs/cookieclicker/img/milkBlood.png b/gversion/gs/cookieclicker/img/milkBlood.png new file mode 100644 index 0000000..9d06bf6 Binary files /dev/null and b/gversion/gs/cookieclicker/img/milkBlood.png differ diff --git a/gversion/gs/cookieclicker/img/milkBlueFire.png b/gversion/gs/cookieclicker/img/milkBlueFire.png new file mode 100644 index 0000000..fb6b539 Binary files /dev/null and b/gversion/gs/cookieclicker/img/milkBlueFire.png differ diff --git a/gversion/gs/cookieclicker/img/milkBlueberry.png b/gversion/gs/cookieclicker/img/milkBlueberry.png new file mode 100644 index 0000000..25d87a2 Binary files /dev/null and b/gversion/gs/cookieclicker/img/milkBlueberry.png differ diff --git a/gversion/gs/cookieclicker/img/milkCaramel.png b/gversion/gs/cookieclicker/img/milkCaramel.png new file mode 100644 index 0000000..b416d1c Binary files /dev/null and b/gversion/gs/cookieclicker/img/milkCaramel.png differ diff --git a/gversion/gs/cookieclicker/img/milkCherry.png b/gversion/gs/cookieclicker/img/milkCherry.png new file mode 100644 index 0000000..1732c3e Binary files /dev/null and b/gversion/gs/cookieclicker/img/milkCherry.png differ diff --git a/gversion/gs/cookieclicker/img/milkChocolate.png b/gversion/gs/cookieclicker/img/milkChocolate.png new file mode 100644 index 0000000..e822d87 Binary files /dev/null and b/gversion/gs/cookieclicker/img/milkChocolate.png differ diff --git a/gversion/gs/cookieclicker/img/milkCoconut.png b/gversion/gs/cookieclicker/img/milkCoconut.png new file mode 100644 index 0000000..6657a74 Binary files /dev/null and b/gversion/gs/cookieclicker/img/milkCoconut.png differ diff --git a/gversion/gs/cookieclicker/img/milkCoffee.png b/gversion/gs/cookieclicker/img/milkCoffee.png new file mode 100644 index 0000000..7df56fd Binary files /dev/null and b/gversion/gs/cookieclicker/img/milkCoffee.png differ diff --git a/gversion/gs/cookieclicker/img/milkDragonfruit.png b/gversion/gs/cookieclicker/img/milkDragonfruit.png new file mode 100644 index 0000000..5129fab Binary files /dev/null and b/gversion/gs/cookieclicker/img/milkDragonfruit.png differ diff --git a/gversion/gs/cookieclicker/img/milkFire.png b/gversion/gs/cookieclicker/img/milkFire.png new file mode 100644 index 0000000..48741dd Binary files /dev/null and b/gversion/gs/cookieclicker/img/milkFire.png differ diff --git a/gversion/gs/cookieclicker/img/milkGold.png b/gversion/gs/cookieclicker/img/milkGold.png new file mode 100644 index 0000000..b2b9f14 Binary files /dev/null and b/gversion/gs/cookieclicker/img/milkGold.png differ diff --git a/gversion/gs/cookieclicker/img/milkGreenFire.png b/gversion/gs/cookieclicker/img/milkGreenFire.png new file mode 100644 index 0000000..5e61b9a Binary files /dev/null and b/gversion/gs/cookieclicker/img/milkGreenFire.png differ diff --git a/gversion/gs/cookieclicker/img/milkHoney.png b/gversion/gs/cookieclicker/img/milkHoney.png new file mode 100644 index 0000000..82c9a45 Binary files /dev/null and b/gversion/gs/cookieclicker/img/milkHoney.png differ diff --git a/gversion/gs/cookieclicker/img/milkLicorice.png b/gversion/gs/cookieclicker/img/milkLicorice.png new file mode 100644 index 0000000..cf30f6e Binary files /dev/null and b/gversion/gs/cookieclicker/img/milkLicorice.png differ diff --git a/gversion/gs/cookieclicker/img/milkLime.png b/gversion/gs/cookieclicker/img/milkLime.png new file mode 100644 index 0000000..1a73a89 Binary files /dev/null and b/gversion/gs/cookieclicker/img/milkLime.png differ diff --git a/gversion/gs/cookieclicker/img/milkMaple.png b/gversion/gs/cookieclicker/img/milkMaple.png new file mode 100644 index 0000000..1e15be4 Binary files /dev/null and b/gversion/gs/cookieclicker/img/milkMaple.png differ diff --git a/gversion/gs/cookieclicker/img/milkMelon.png b/gversion/gs/cookieclicker/img/milkMelon.png new file mode 100644 index 0000000..521791e Binary files /dev/null and b/gversion/gs/cookieclicker/img/milkMelon.png differ diff --git a/gversion/gs/cookieclicker/img/milkMint.png b/gversion/gs/cookieclicker/img/milkMint.png new file mode 100644 index 0000000..5477b1b Binary files /dev/null and b/gversion/gs/cookieclicker/img/milkMint.png differ diff --git a/gversion/gs/cookieclicker/img/milkOrange.png b/gversion/gs/cookieclicker/img/milkOrange.png new file mode 100644 index 0000000..c1cf976 Binary files /dev/null and b/gversion/gs/cookieclicker/img/milkOrange.png differ diff --git a/gversion/gs/cookieclicker/img/milkPlain.png b/gversion/gs/cookieclicker/img/milkPlain.png new file mode 100644 index 0000000..0bc190c Binary files /dev/null and b/gversion/gs/cookieclicker/img/milkPlain.png differ diff --git a/gversion/gs/cookieclicker/img/milkRaspberry.png b/gversion/gs/cookieclicker/img/milkRaspberry.png new file mode 100644 index 0000000..3affaec Binary files /dev/null and b/gversion/gs/cookieclicker/img/milkRaspberry.png differ diff --git a/gversion/gs/cookieclicker/img/milkRose.png b/gversion/gs/cookieclicker/img/milkRose.png new file mode 100644 index 0000000..62145e0 Binary files /dev/null and b/gversion/gs/cookieclicker/img/milkRose.png differ diff --git a/gversion/gs/cookieclicker/img/milkSoy.png b/gversion/gs/cookieclicker/img/milkSoy.png new file mode 100644 index 0000000..e5238ce Binary files /dev/null and b/gversion/gs/cookieclicker/img/milkSoy.png differ diff --git a/gversion/gs/cookieclicker/img/milkSpiced.png b/gversion/gs/cookieclicker/img/milkSpiced.png new file mode 100644 index 0000000..fc41750 Binary files /dev/null and b/gversion/gs/cookieclicker/img/milkSpiced.png differ diff --git a/gversion/gs/cookieclicker/img/milkStars.png b/gversion/gs/cookieclicker/img/milkStars.png new file mode 100644 index 0000000..661f67e Binary files /dev/null and b/gversion/gs/cookieclicker/img/milkStars.png differ diff --git a/gversion/gs/cookieclicker/img/milkStrawberry.png b/gversion/gs/cookieclicker/img/milkStrawberry.png new file mode 100644 index 0000000..cd976f4 Binary files /dev/null and b/gversion/gs/cookieclicker/img/milkStrawberry.png differ diff --git a/gversion/gs/cookieclicker/img/milkTea.png b/gversion/gs/cookieclicker/img/milkTea.png new file mode 100644 index 0000000..bd63026 Binary files /dev/null and b/gversion/gs/cookieclicker/img/milkTea.png differ diff --git a/gversion/gs/cookieclicker/img/milkVanilla.png b/gversion/gs/cookieclicker/img/milkVanilla.png new file mode 100644 index 0000000..7d25f5e Binary files /dev/null and b/gversion/gs/cookieclicker/img/milkVanilla.png differ diff --git a/gversion/gs/cookieclicker/img/milkWave.png b/gversion/gs/cookieclicker/img/milkWave.png new file mode 100644 index 0000000..5ac25ce Binary files /dev/null and b/gversion/gs/cookieclicker/img/milkWave.png differ diff --git a/gversion/gs/cookieclicker/img/milkZebra.png b/gversion/gs/cookieclicker/img/milkZebra.png new file mode 100644 index 0000000..2515e2c Binary files /dev/null and b/gversion/gs/cookieclicker/img/milkZebra.png differ diff --git a/gversion/gs/cookieclicker/img/mine.png b/gversion/gs/cookieclicker/img/mine.png new file mode 100644 index 0000000..372ea7e Binary files /dev/null and b/gversion/gs/cookieclicker/img/mine.png differ diff --git a/gversion/gs/cookieclicker/img/mineBackground.png b/gversion/gs/cookieclicker/img/mineBackground.png new file mode 100644 index 0000000..7986c4c Binary files /dev/null and b/gversion/gs/cookieclicker/img/mineBackground.png differ diff --git a/gversion/gs/cookieclicker/img/mineIcon.png b/gversion/gs/cookieclicker/img/mineIcon.png new file mode 100644 index 0000000..f63a6df Binary files /dev/null and b/gversion/gs/cookieclicker/img/mineIcon.png differ diff --git a/gversion/gs/cookieclicker/img/mineIconOff.png b/gversion/gs/cookieclicker/img/mineIconOff.png new file mode 100644 index 0000000..bca22a0 Binary files /dev/null and b/gversion/gs/cookieclicker/img/mineIconOff.png differ diff --git a/gversion/gs/cookieclicker/img/minerGrandma.png b/gversion/gs/cookieclicker/img/minerGrandma.png new file mode 100644 index 0000000..a58d9b9 Binary files /dev/null and b/gversion/gs/cookieclicker/img/minerGrandma.png differ diff --git a/gversion/gs/cookieclicker/img/money.png b/gversion/gs/cookieclicker/img/money.png new file mode 100644 index 0000000..5908aa7 Binary files /dev/null and b/gversion/gs/cookieclicker/img/money.png differ diff --git a/gversion/gs/cookieclicker/img/mysteriousHero.png b/gversion/gs/cookieclicker/img/mysteriousHero.png new file mode 100644 index 0000000..ecd5873 Binary files /dev/null and b/gversion/gs/cookieclicker/img/mysteriousHero.png differ diff --git a/gversion/gs/cookieclicker/img/mysteriousOpponent.png b/gversion/gs/cookieclicker/img/mysteriousOpponent.png new file mode 100644 index 0000000..52cadb5 Binary files /dev/null and b/gversion/gs/cookieclicker/img/mysteriousOpponent.png differ diff --git a/gversion/gs/cookieclicker/img/mysticBG.jpg b/gversion/gs/cookieclicker/img/mysticBG.jpg new file mode 100644 index 0000000..95b2443 Binary files /dev/null and b/gversion/gs/cookieclicker/img/mysticBG.jpg differ diff --git a/gversion/gs/cookieclicker/img/nest.png b/gversion/gs/cookieclicker/img/nest.png new file mode 100644 index 0000000..5ea43e5 Binary files /dev/null and b/gversion/gs/cookieclicker/img/nest.png differ diff --git a/gversion/gs/cookieclicker/img/orangeWave.png b/gversion/gs/cookieclicker/img/orangeWave.png new file mode 100644 index 0000000..cc3ba49 Binary files /dev/null and b/gversion/gs/cookieclicker/img/orangeWave.png differ diff --git a/gversion/gs/cookieclicker/img/panelBG.png b/gversion/gs/cookieclicker/img/panelBG.png new file mode 100644 index 0000000..d519861 Binary files /dev/null and b/gversion/gs/cookieclicker/img/panelBG.png differ diff --git a/gversion/gs/cookieclicker/img/panelGradientBottom.png b/gversion/gs/cookieclicker/img/panelGradientBottom.png new file mode 100644 index 0000000..8623ba7 Binary files /dev/null and b/gversion/gs/cookieclicker/img/panelGradientBottom.png differ diff --git a/gversion/gs/cookieclicker/img/panelGradientLeft.png b/gversion/gs/cookieclicker/img/panelGradientLeft.png new file mode 100644 index 0000000..07e312e Binary files /dev/null and b/gversion/gs/cookieclicker/img/panelGradientLeft.png differ diff --git a/gversion/gs/cookieclicker/img/panelGradientRight.png b/gversion/gs/cookieclicker/img/panelGradientRight.png new file mode 100644 index 0000000..265ee64 Binary files /dev/null and b/gversion/gs/cookieclicker/img/panelGradientRight.png differ diff --git a/gversion/gs/cookieclicker/img/panelGradientTop.png b/gversion/gs/cookieclicker/img/panelGradientTop.png new file mode 100644 index 0000000..b873c89 Binary files /dev/null and b/gversion/gs/cookieclicker/img/panelGradientTop.png differ diff --git a/gversion/gs/cookieclicker/img/panelHorizontal.png b/gversion/gs/cookieclicker/img/panelHorizontal.png new file mode 100644 index 0000000..a316cf5 Binary files /dev/null and b/gversion/gs/cookieclicker/img/panelHorizontal.png differ diff --git a/gversion/gs/cookieclicker/img/panelMenu.png b/gversion/gs/cookieclicker/img/panelMenu.png new file mode 100644 index 0000000..001253c Binary files /dev/null and b/gversion/gs/cookieclicker/img/panelMenu.png differ diff --git a/gversion/gs/cookieclicker/img/panelMenu2.png b/gversion/gs/cookieclicker/img/panelMenu2.png new file mode 100644 index 0000000..7f03a34 Binary files /dev/null and b/gversion/gs/cookieclicker/img/panelMenu2.png differ diff --git a/gversion/gs/cookieclicker/img/panelMenu3.png b/gversion/gs/cookieclicker/img/panelMenu3.png new file mode 100644 index 0000000..1c62c8f Binary files /dev/null and b/gversion/gs/cookieclicker/img/panelMenu3.png differ diff --git a/gversion/gs/cookieclicker/img/panelVertical.png b/gversion/gs/cookieclicker/img/panelVertical.png new file mode 100644 index 0000000..84d4a9a Binary files /dev/null and b/gversion/gs/cookieclicker/img/panelVertical.png differ diff --git a/gversion/gs/cookieclicker/img/pantheonBG.png b/gversion/gs/cookieclicker/img/pantheonBG.png new file mode 100644 index 0000000..1e19453 Binary files /dev/null and b/gversion/gs/cookieclicker/img/pantheonBG.png differ diff --git a/gversion/gs/cookieclicker/img/patreon.png b/gversion/gs/cookieclicker/img/patreon.png new file mode 100644 index 0000000..84d1c88 Binary files /dev/null and b/gversion/gs/cookieclicker/img/patreon.png differ diff --git a/gversion/gs/cookieclicker/img/perfectCookie.png b/gversion/gs/cookieclicker/img/perfectCookie.png new file mode 100644 index 0000000..bc6282c Binary files /dev/null and b/gversion/gs/cookieclicker/img/perfectCookie.png differ diff --git a/gversion/gs/cookieclicker/img/pieFill.png b/gversion/gs/cookieclicker/img/pieFill.png new file mode 100644 index 0000000..8f0adb7 Binary files /dev/null and b/gversion/gs/cookieclicker/img/pieFill.png differ diff --git a/gversion/gs/cookieclicker/img/playsaurusLogo.png b/gversion/gs/cookieclicker/img/playsaurusLogo.png new file mode 100644 index 0000000..4825f31 Binary files /dev/null and b/gversion/gs/cookieclicker/img/playsaurusLogo.png differ diff --git a/gversion/gs/cookieclicker/img/playsaurusbanner1.png b/gversion/gs/cookieclicker/img/playsaurusbanner1.png new file mode 100644 index 0000000..c4e077b Binary files /dev/null and b/gversion/gs/cookieclicker/img/playsaurusbanner1.png differ diff --git a/gversion/gs/cookieclicker/img/playsaurusbanner2.png b/gversion/gs/cookieclicker/img/playsaurusbanner2.png new file mode 100644 index 0000000..9688974 Binary files /dev/null and b/gversion/gs/cookieclicker/img/playsaurusbanner2.png differ diff --git a/gversion/gs/cookieclicker/img/playsaurusbanner3.png b/gversion/gs/cookieclicker/img/playsaurusbanner3.png new file mode 100644 index 0000000..b97dacf Binary files /dev/null and b/gversion/gs/cookieclicker/img/playsaurusbanner3.png differ diff --git a/gversion/gs/cookieclicker/img/pointGlow.gif b/gversion/gs/cookieclicker/img/pointGlow.gif new file mode 100644 index 0000000..6c18169 Binary files /dev/null and b/gversion/gs/cookieclicker/img/pointGlow.gif differ diff --git a/gversion/gs/cookieclicker/img/pointyLad.png b/gversion/gs/cookieclicker/img/pointyLad.png new file mode 100644 index 0000000..7128f68 Binary files /dev/null and b/gversion/gs/cookieclicker/img/pointyLad.png differ diff --git a/gversion/gs/cookieclicker/img/portal.png b/gversion/gs/cookieclicker/img/portal.png new file mode 100644 index 0000000..0dd3ca5 Binary files /dev/null and b/gversion/gs/cookieclicker/img/portal.png differ diff --git a/gversion/gs/cookieclicker/img/portalBackground.png b/gversion/gs/cookieclicker/img/portalBackground.png new file mode 100644 index 0000000..441de2a Binary files /dev/null and b/gversion/gs/cookieclicker/img/portalBackground.png differ diff --git a/gversion/gs/cookieclicker/img/portalIcon.png b/gversion/gs/cookieclicker/img/portalIcon.png new file mode 100644 index 0000000..224159d Binary files /dev/null and b/gversion/gs/cookieclicker/img/portalIcon.png differ diff --git a/gversion/gs/cookieclicker/img/portalIconOff.png b/gversion/gs/cookieclicker/img/portalIconOff.png new file mode 100644 index 0000000..99cbe9f Binary files /dev/null and b/gversion/gs/cookieclicker/img/portalIconOff.png differ diff --git a/gversion/gs/cookieclicker/img/portraitChip.png b/gversion/gs/cookieclicker/img/portraitChip.png new file mode 100644 index 0000000..ca0263f Binary files /dev/null and b/gversion/gs/cookieclicker/img/portraitChip.png differ diff --git a/gversion/gs/cookieclicker/img/portraitCrumb.png b/gversion/gs/cookieclicker/img/portraitCrumb.png new file mode 100644 index 0000000..5bb54ef Binary files /dev/null and b/gversion/gs/cookieclicker/img/portraitCrumb.png differ diff --git a/gversion/gs/cookieclicker/img/portraitDoe.png b/gversion/gs/cookieclicker/img/portraitDoe.png new file mode 100644 index 0000000..a6c62f3 Binary files /dev/null and b/gversion/gs/cookieclicker/img/portraitDoe.png differ diff --git a/gversion/gs/cookieclicker/img/portraitLucky.png b/gversion/gs/cookieclicker/img/portraitLucky.png new file mode 100644 index 0000000..34e33bf Binary files /dev/null and b/gversion/gs/cookieclicker/img/portraitLucky.png differ diff --git a/gversion/gs/cookieclicker/img/prestigeBar.jpg b/gversion/gs/cookieclicker/img/prestigeBar.jpg new file mode 100644 index 0000000..4b416d2 Binary files /dev/null and b/gversion/gs/cookieclicker/img/prestigeBar.jpg differ diff --git a/gversion/gs/cookieclicker/img/prestigeBarCap.png b/gversion/gs/cookieclicker/img/prestigeBarCap.png new file mode 100644 index 0000000..1cc70dd Binary files /dev/null and b/gversion/gs/cookieclicker/img/prestigeBarCap.png differ diff --git a/gversion/gs/cookieclicker/img/prism.png b/gversion/gs/cookieclicker/img/prism.png new file mode 100644 index 0000000..9b7ca67 Binary files /dev/null and b/gversion/gs/cookieclicker/img/prism.png differ diff --git a/gversion/gs/cookieclicker/img/prismBackground.png b/gversion/gs/cookieclicker/img/prismBackground.png new file mode 100644 index 0000000..ecb4eb5 Binary files /dev/null and b/gversion/gs/cookieclicker/img/prismBackground.png differ diff --git a/gversion/gs/cookieclicker/img/prismIcon.png b/gversion/gs/cookieclicker/img/prismIcon.png new file mode 100644 index 0000000..d3c9f57 Binary files /dev/null and b/gversion/gs/cookieclicker/img/prismIcon.png differ diff --git a/gversion/gs/cookieclicker/img/prismIconOff.png b/gversion/gs/cookieclicker/img/prismIconOff.png new file mode 100644 index 0000000..934d3ec Binary files /dev/null and b/gversion/gs/cookieclicker/img/prismIconOff.png differ diff --git a/gversion/gs/cookieclicker/img/rainbowGrandma.png b/gversion/gs/cookieclicker/img/rainbowGrandma.png new file mode 100644 index 0000000..6424bb8 Binary files /dev/null and b/gversion/gs/cookieclicker/img/rainbowGrandma.png differ diff --git a/gversion/gs/cookieclicker/img/raspberryWave.png b/gversion/gs/cookieclicker/img/raspberryWave.png new file mode 100644 index 0000000..0893d35 Binary files /dev/null and b/gversion/gs/cookieclicker/img/raspberryWave.png differ diff --git a/gversion/gs/cookieclicker/img/rawSentientCookie.png b/gversion/gs/cookieclicker/img/rawSentientCookie.png new file mode 100644 index 0000000..448b909 Binary files /dev/null and b/gversion/gs/cookieclicker/img/rawSentientCookie.png differ diff --git a/gversion/gs/cookieclicker/img/readme.md b/gversion/gs/cookieclicker/img/readme.md new file mode 100644 index 0000000..7cfab5b --- /dev/null +++ b/gversion/gs/cookieclicker/img/readme.md @@ -0,0 +1 @@ +yes diff --git a/gversion/gs/cookieclicker/img/roundFrameBorder.png b/gversion/gs/cookieclicker/img/roundFrameBorder.png new file mode 100644 index 0000000..205f055 Binary files /dev/null and b/gversion/gs/cookieclicker/img/roundFrameBorder.png differ diff --git a/gversion/gs/cookieclicker/img/roundedPanelBG.png b/gversion/gs/cookieclicker/img/roundedPanelBG.png new file mode 100644 index 0000000..0146926 Binary files /dev/null and b/gversion/gs/cookieclicker/img/roundedPanelBG.png differ diff --git a/gversion/gs/cookieclicker/img/roundedPanelBGS.png b/gversion/gs/cookieclicker/img/roundedPanelBGS.png new file mode 100644 index 0000000..e63d558 Binary files /dev/null and b/gversion/gs/cookieclicker/img/roundedPanelBGS.png differ diff --git a/gversion/gs/cookieclicker/img/roundedPanelLeft.png b/gversion/gs/cookieclicker/img/roundedPanelLeft.png new file mode 100644 index 0000000..b2a3c90 Binary files /dev/null and b/gversion/gs/cookieclicker/img/roundedPanelLeft.png differ diff --git a/gversion/gs/cookieclicker/img/roundedPanelLeftS.png b/gversion/gs/cookieclicker/img/roundedPanelLeftS.png new file mode 100644 index 0000000..e68b513 Binary files /dev/null and b/gversion/gs/cookieclicker/img/roundedPanelLeftS.png differ diff --git a/gversion/gs/cookieclicker/img/roundedPanelRight.png b/gversion/gs/cookieclicker/img/roundedPanelRight.png new file mode 100644 index 0000000..1d52a31 Binary files /dev/null and b/gversion/gs/cookieclicker/img/roundedPanelRight.png differ diff --git a/gversion/gs/cookieclicker/img/roundedPanelRightS.png b/gversion/gs/cookieclicker/img/roundedPanelRightS.png new file mode 100644 index 0000000..43ebd94 Binary files /dev/null and b/gversion/gs/cookieclicker/img/roundedPanelRightS.png differ diff --git a/gversion/gs/cookieclicker/img/santa.png b/gversion/gs/cookieclicker/img/santa.png new file mode 100644 index 0000000..69c9832 Binary files /dev/null and b/gversion/gs/cookieclicker/img/santa.png differ diff --git a/gversion/gs/cookieclicker/img/scriptGrandma.png b/gversion/gs/cookieclicker/img/scriptGrandma.png new file mode 100644 index 0000000..d3d431e Binary files /dev/null and b/gversion/gs/cookieclicker/img/scriptGrandma.png differ diff --git a/gversion/gs/cookieclicker/img/selectTarget.png b/gversion/gs/cookieclicker/img/selectTarget.png new file mode 100644 index 0000000..7eff6d0 Binary files /dev/null and b/gversion/gs/cookieclicker/img/selectTarget.png differ diff --git a/gversion/gs/cookieclicker/img/sentientFurnace.png b/gversion/gs/cookieclicker/img/sentientFurnace.png new file mode 100644 index 0000000..e0e361a Binary files /dev/null and b/gversion/gs/cookieclicker/img/sentientFurnace.png differ diff --git a/gversion/gs/cookieclicker/img/shadedBorders.png b/gversion/gs/cookieclicker/img/shadedBorders.png new file mode 100644 index 0000000..eea424a Binary files /dev/null and b/gversion/gs/cookieclicker/img/shadedBorders.png differ diff --git a/gversion/gs/cookieclicker/img/shadedBordersGold.png b/gversion/gs/cookieclicker/img/shadedBordersGold.png new file mode 100644 index 0000000..7a8c198 Binary files /dev/null and b/gversion/gs/cookieclicker/img/shadedBordersGold.png differ diff --git a/gversion/gs/cookieclicker/img/shadedBordersRed.png b/gversion/gs/cookieclicker/img/shadedBordersRed.png new file mode 100644 index 0000000..bc9cab2 Binary files /dev/null and b/gversion/gs/cookieclicker/img/shadedBordersRed.png differ diff --git a/gversion/gs/cookieclicker/img/shadedBordersSoft.png b/gversion/gs/cookieclicker/img/shadedBordersSoft.png new file mode 100644 index 0000000..95c3749 Binary files /dev/null and b/gversion/gs/cookieclicker/img/shadedBordersSoft.png differ diff --git a/gversion/gs/cookieclicker/img/shine.png b/gversion/gs/cookieclicker/img/shine.png new file mode 100644 index 0000000..f48e14a Binary files /dev/null and b/gversion/gs/cookieclicker/img/shine.png differ diff --git a/gversion/gs/cookieclicker/img/shineGold.png b/gversion/gs/cookieclicker/img/shineGold.png new file mode 100644 index 0000000..30b53d1 Binary files /dev/null and b/gversion/gs/cookieclicker/img/shineGold.png differ diff --git a/gversion/gs/cookieclicker/img/shineRed.png b/gversion/gs/cookieclicker/img/shineRed.png new file mode 100644 index 0000000..5e06d52 Binary files /dev/null and b/gversion/gs/cookieclicker/img/shineRed.png differ diff --git a/gversion/gs/cookieclicker/img/shineSpoke.png b/gversion/gs/cookieclicker/img/shineSpoke.png new file mode 100644 index 0000000..a319af0 Binary files /dev/null and b/gversion/gs/cookieclicker/img/shineSpoke.png differ diff --git a/gversion/gs/cookieclicker/img/shinyWinkler.png b/gversion/gs/cookieclicker/img/shinyWinkler.png new file mode 100644 index 0000000..2ae0b44 Binary files /dev/null and b/gversion/gs/cookieclicker/img/shinyWinkler.png differ diff --git a/gversion/gs/cookieclicker/img/shinyWrinkler.png b/gversion/gs/cookieclicker/img/shinyWrinkler.png new file mode 100644 index 0000000..63cc566 Binary files /dev/null and b/gversion/gs/cookieclicker/img/shinyWrinkler.png differ diff --git a/gversion/gs/cookieclicker/img/shinyWrinklerBits.png b/gversion/gs/cookieclicker/img/shinyWrinklerBits.png new file mode 100644 index 0000000..34872a0 Binary files /dev/null and b/gversion/gs/cookieclicker/img/shinyWrinklerBits.png differ diff --git a/gversion/gs/cookieclicker/img/shipment.png b/gversion/gs/cookieclicker/img/shipment.png new file mode 100644 index 0000000..89f7f6d Binary files /dev/null and b/gversion/gs/cookieclicker/img/shipment.png differ diff --git a/gversion/gs/cookieclicker/img/shipmentBackground.png b/gversion/gs/cookieclicker/img/shipmentBackground.png new file mode 100644 index 0000000..210c66a Binary files /dev/null and b/gversion/gs/cookieclicker/img/shipmentBackground.png differ diff --git a/gversion/gs/cookieclicker/img/shipmentIcon.png b/gversion/gs/cookieclicker/img/shipmentIcon.png new file mode 100644 index 0000000..f8fbb88 Binary files /dev/null and b/gversion/gs/cookieclicker/img/shipmentIcon.png differ diff --git a/gversion/gs/cookieclicker/img/shipmentIconOff.png b/gversion/gs/cookieclicker/img/shipmentIconOff.png new file mode 100644 index 0000000..e0d5596 Binary files /dev/null and b/gversion/gs/cookieclicker/img/shipmentIconOff.png differ diff --git a/gversion/gs/cookieclicker/img/smallCookies.png b/gversion/gs/cookieclicker/img/smallCookies.png new file mode 100644 index 0000000..9ecee5a Binary files /dev/null and b/gversion/gs/cookieclicker/img/smallCookies.png differ diff --git a/gversion/gs/cookieclicker/img/smallDollars.png b/gversion/gs/cookieclicker/img/smallDollars.png new file mode 100644 index 0000000..39b1a30 Binary files /dev/null and b/gversion/gs/cookieclicker/img/smallDollars.png differ diff --git a/gversion/gs/cookieclicker/img/snow.jpg b/gversion/gs/cookieclicker/img/snow.jpg new file mode 100644 index 0000000..178fc5e Binary files /dev/null and b/gversion/gs/cookieclicker/img/snow.jpg differ diff --git a/gversion/gs/cookieclicker/img/snow2.jpg b/gversion/gs/cookieclicker/img/snow2.jpg new file mode 100644 index 0000000..aeeeced Binary files /dev/null and b/gversion/gs/cookieclicker/img/snow2.jpg differ diff --git a/gversion/gs/cookieclicker/img/sparkles.jpg b/gversion/gs/cookieclicker/img/sparkles.jpg new file mode 100644 index 0000000..b94d374 Binary files /dev/null and b/gversion/gs/cookieclicker/img/sparkles.jpg differ diff --git a/gversion/gs/cookieclicker/img/spellBG.png b/gversion/gs/cookieclicker/img/spellBG.png new file mode 100644 index 0000000..93e4891 Binary files /dev/null and b/gversion/gs/cookieclicker/img/spellBG.png differ diff --git a/gversion/gs/cookieclicker/img/spinnyBig.png b/gversion/gs/cookieclicker/img/spinnyBig.png new file mode 100644 index 0000000..d887eff Binary files /dev/null and b/gversion/gs/cookieclicker/img/spinnyBig.png differ diff --git a/gversion/gs/cookieclicker/img/spinnySmall.png b/gversion/gs/cookieclicker/img/spinnySmall.png new file mode 100644 index 0000000..8b6b3f9 Binary files /dev/null and b/gversion/gs/cookieclicker/img/spinnySmall.png differ diff --git a/gversion/gs/cookieclicker/img/spookyCookie.png b/gversion/gs/cookieclicker/img/spookyCookie.png new file mode 100644 index 0000000..3aeeeda Binary files /dev/null and b/gversion/gs/cookieclicker/img/spookyCookie.png differ diff --git a/gversion/gs/cookieclicker/img/starbg.jpg b/gversion/gs/cookieclicker/img/starbg.jpg new file mode 100644 index 0000000..f60c2bc Binary files /dev/null and b/gversion/gs/cookieclicker/img/starbg.jpg differ diff --git a/gversion/gs/cookieclicker/img/storeTile.jpg b/gversion/gs/cookieclicker/img/storeTile.jpg new file mode 100644 index 0000000..2879373 Binary files /dev/null and b/gversion/gs/cookieclicker/img/storeTile.jpg differ diff --git a/gversion/gs/cookieclicker/img/sugarBunny.png b/gversion/gs/cookieclicker/img/sugarBunny.png new file mode 100644 index 0000000..b55754c Binary files /dev/null and b/gversion/gs/cookieclicker/img/sugarBunny.png differ diff --git a/gversion/gs/cookieclicker/img/sugarLump.png b/gversion/gs/cookieclicker/img/sugarLump.png new file mode 100644 index 0000000..db8d17c Binary files /dev/null and b/gversion/gs/cookieclicker/img/sugarLump.png differ diff --git a/gversion/gs/cookieclicker/img/temple.png b/gversion/gs/cookieclicker/img/temple.png new file mode 100644 index 0000000..6d6bffc Binary files /dev/null and b/gversion/gs/cookieclicker/img/temple.png differ diff --git a/gversion/gs/cookieclicker/img/templeBackground.png b/gversion/gs/cookieclicker/img/templeBackground.png new file mode 100644 index 0000000..f0154e2 Binary files /dev/null and b/gversion/gs/cookieclicker/img/templeBackground.png differ diff --git a/gversion/gs/cookieclicker/img/templeGrandma.png b/gversion/gs/cookieclicker/img/templeGrandma.png new file mode 100644 index 0000000..f1f142c Binary files /dev/null and b/gversion/gs/cookieclicker/img/templeGrandma.png differ diff --git a/gversion/gs/cookieclicker/img/timemachine.png b/gversion/gs/cookieclicker/img/timemachine.png new file mode 100644 index 0000000..07bf344 Binary files /dev/null and b/gversion/gs/cookieclicker/img/timemachine.png differ diff --git a/gversion/gs/cookieclicker/img/timemachineBackground.png b/gversion/gs/cookieclicker/img/timemachineBackground.png new file mode 100644 index 0000000..01b50a2 Binary files /dev/null and b/gversion/gs/cookieclicker/img/timemachineBackground.png differ diff --git a/gversion/gs/cookieclicker/img/timemachineIcon.png b/gversion/gs/cookieclicker/img/timemachineIcon.png new file mode 100644 index 0000000..9017b4f Binary files /dev/null and b/gversion/gs/cookieclicker/img/timemachineIcon.png differ diff --git a/gversion/gs/cookieclicker/img/timemachineIconOff.png b/gversion/gs/cookieclicker/img/timemachineIconOff.png new file mode 100644 index 0000000..25988c9 Binary files /dev/null and b/gversion/gs/cookieclicker/img/timemachineIconOff.png differ diff --git a/gversion/gs/cookieclicker/img/timerBars.png b/gversion/gs/cookieclicker/img/timerBars.png new file mode 100644 index 0000000..7260ff7 Binary files /dev/null and b/gversion/gs/cookieclicker/img/timerBars.png differ diff --git a/gversion/gs/cookieclicker/img/tinyEyeEmpty.png b/gversion/gs/cookieclicker/img/tinyEyeEmpty.png new file mode 100644 index 0000000..f923b45 Binary files /dev/null and b/gversion/gs/cookieclicker/img/tinyEyeEmpty.png differ diff --git a/gversion/gs/cookieclicker/img/tinyEyeOff.png b/gversion/gs/cookieclicker/img/tinyEyeOff.png new file mode 100644 index 0000000..7c9433f Binary files /dev/null and b/gversion/gs/cookieclicker/img/tinyEyeOff.png differ diff --git a/gversion/gs/cookieclicker/img/tinyEyeOn.png b/gversion/gs/cookieclicker/img/tinyEyeOn.png new file mode 100644 index 0000000..11e212f Binary files /dev/null and b/gversion/gs/cookieclicker/img/tinyEyeOn.png differ diff --git a/gversion/gs/cookieclicker/img/tinyglobe.gif b/gversion/gs/cookieclicker/img/tinyglobe.gif new file mode 100644 index 0000000..2bd2acd Binary files /dev/null and b/gversion/gs/cookieclicker/img/tinyglobe.gif differ diff --git a/gversion/gs/cookieclicker/img/tinyglobeSheet.gif b/gversion/gs/cookieclicker/img/tinyglobeSheet.gif new file mode 100644 index 0000000..f6a6736 Binary files /dev/null and b/gversion/gs/cookieclicker/img/tinyglobeSheet.gif differ diff --git a/gversion/gs/cookieclicker/img/transmutedGrandma.png b/gversion/gs/cookieclicker/img/transmutedGrandma.png new file mode 100644 index 0000000..07755af Binary files /dev/null and b/gversion/gs/cookieclicker/img/transmutedGrandma.png differ diff --git a/gversion/gs/cookieclicker/img/turnInto.png b/gversion/gs/cookieclicker/img/turnInto.png new file mode 100644 index 0000000..fee23c9 Binary files /dev/null and b/gversion/gs/cookieclicker/img/turnInto.png differ diff --git a/gversion/gs/cookieclicker/img/upgradeFrame.png b/gversion/gs/cookieclicker/img/upgradeFrame.png new file mode 100644 index 0000000..1b90021 Binary files /dev/null and b/gversion/gs/cookieclicker/img/upgradeFrame.png differ diff --git a/gversion/gs/cookieclicker/img/upgradeFrameHeavenly.png b/gversion/gs/cookieclicker/img/upgradeFrameHeavenly.png new file mode 100644 index 0000000..615dbec Binary files /dev/null and b/gversion/gs/cookieclicker/img/upgradeFrameHeavenly.png differ diff --git a/gversion/gs/cookieclicker/img/upgradeFrameOld.png b/gversion/gs/cookieclicker/img/upgradeFrameOld.png new file mode 100644 index 0000000..31ac08d Binary files /dev/null and b/gversion/gs/cookieclicker/img/upgradeFrameOld.png differ diff --git a/gversion/gs/cookieclicker/img/upgradeFrameShadowOld.png b/gversion/gs/cookieclicker/img/upgradeFrameShadowOld.png new file mode 100644 index 0000000..3851aa6 Binary files /dev/null and b/gversion/gs/cookieclicker/img/upgradeFrameShadowOld.png differ diff --git a/gversion/gs/cookieclicker/img/upgradeHighlight.jpg b/gversion/gs/cookieclicker/img/upgradeHighlight.jpg new file mode 100644 index 0000000..d39850d Binary files /dev/null and b/gversion/gs/cookieclicker/img/upgradeHighlight.jpg differ diff --git a/gversion/gs/cookieclicker/img/upgradeHighlight.png b/gversion/gs/cookieclicker/img/upgradeHighlight.png new file mode 100644 index 0000000..56e5f6f Binary files /dev/null and b/gversion/gs/cookieclicker/img/upgradeHighlight.png differ diff --git a/gversion/gs/cookieclicker/img/upgradeSelector.png b/gversion/gs/cookieclicker/img/upgradeSelector.png new file mode 100644 index 0000000..9c23b67 Binary files /dev/null and b/gversion/gs/cookieclicker/img/upgradeSelector.png differ diff --git a/gversion/gs/cookieclicker/img/weeHoodie.png b/gversion/gs/cookieclicker/img/weeHoodie.png new file mode 100644 index 0000000..877a021 Binary files /dev/null and b/gversion/gs/cookieclicker/img/weeHoodie.png differ diff --git a/gversion/gs/cookieclicker/img/winkler.png b/gversion/gs/cookieclicker/img/winkler.png new file mode 100644 index 0000000..22605df Binary files /dev/null and b/gversion/gs/cookieclicker/img/winkler.png differ diff --git a/gversion/gs/cookieclicker/img/winterFrame.png b/gversion/gs/cookieclicker/img/winterFrame.png new file mode 100644 index 0000000..3bb62ff Binary files /dev/null and b/gversion/gs/cookieclicker/img/winterFrame.png differ diff --git a/gversion/gs/cookieclicker/img/winterWinkler.png b/gversion/gs/cookieclicker/img/winterWinkler.png new file mode 100644 index 0000000..3c2f64e Binary files /dev/null and b/gversion/gs/cookieclicker/img/winterWinkler.png differ diff --git a/gversion/gs/cookieclicker/img/winterWrinkler.png b/gversion/gs/cookieclicker/img/winterWrinkler.png new file mode 100644 index 0000000..4abadae Binary files /dev/null and b/gversion/gs/cookieclicker/img/winterWrinkler.png differ diff --git a/gversion/gs/cookieclicker/img/witchGrandma.png b/gversion/gs/cookieclicker/img/witchGrandma.png new file mode 100644 index 0000000..d3fbc7d Binary files /dev/null and b/gversion/gs/cookieclicker/img/witchGrandma.png differ diff --git a/gversion/gs/cookieclicker/img/wizardtower.png b/gversion/gs/cookieclicker/img/wizardtower.png new file mode 100644 index 0000000..2e19a09 Binary files /dev/null and b/gversion/gs/cookieclicker/img/wizardtower.png differ diff --git a/gversion/gs/cookieclicker/img/wizardtowerBackground.png b/gversion/gs/cookieclicker/img/wizardtowerBackground.png new file mode 100644 index 0000000..a7ec0c5 Binary files /dev/null and b/gversion/gs/cookieclicker/img/wizardtowerBackground.png differ diff --git a/gversion/gs/cookieclicker/img/workerGrandma.png b/gversion/gs/cookieclicker/img/workerGrandma.png new file mode 100644 index 0000000..fac73e1 Binary files /dev/null and b/gversion/gs/cookieclicker/img/workerGrandma.png differ diff --git a/gversion/gs/cookieclicker/img/wrathContract.png b/gversion/gs/cookieclicker/img/wrathContract.png new file mode 100644 index 0000000..a40e42d Binary files /dev/null and b/gversion/gs/cookieclicker/img/wrathContract.png differ diff --git a/gversion/gs/cookieclicker/img/wrathCookie.png b/gversion/gs/cookieclicker/img/wrathCookie.png new file mode 100644 index 0000000..f3599a1 Binary files /dev/null and b/gversion/gs/cookieclicker/img/wrathCookie.png differ diff --git a/gversion/gs/cookieclicker/img/wrinkler.png b/gversion/gs/cookieclicker/img/wrinkler.png new file mode 100644 index 0000000..39d1f0f Binary files /dev/null and b/gversion/gs/cookieclicker/img/wrinkler.png differ diff --git a/gversion/gs/cookieclicker/img/wrinklerBits.png b/gversion/gs/cookieclicker/img/wrinklerBits.png new file mode 100644 index 0000000..6bc5135 Binary files /dev/null and b/gversion/gs/cookieclicker/img/wrinklerBits.png differ diff --git a/gversion/gs/cookieclicker/img/wrinklerBitsOld.png b/gversion/gs/cookieclicker/img/wrinklerBitsOld.png new file mode 100644 index 0000000..85c8315 Binary files /dev/null and b/gversion/gs/cookieclicker/img/wrinklerBitsOld.png differ diff --git a/gversion/gs/cookieclicker/img/wrinklerBlink.png b/gversion/gs/cookieclicker/img/wrinklerBlink.png new file mode 100644 index 0000000..4d745f6 Binary files /dev/null and b/gversion/gs/cookieclicker/img/wrinklerBlink.png differ diff --git a/gversion/gs/cookieclicker/img/wrinklerGooglies.png b/gversion/gs/cookieclicker/img/wrinklerGooglies.png new file mode 100644 index 0000000..7c51f31 Binary files /dev/null and b/gversion/gs/cookieclicker/img/wrinklerGooglies.png differ diff --git a/gversion/gs/cookieclicker/img/wrinklerShadow.png b/gversion/gs/cookieclicker/img/wrinklerShadow.png new file mode 100644 index 0000000..62958d5 Binary files /dev/null and b/gversion/gs/cookieclicker/img/wrinklerShadow.png differ diff --git a/gversion/gs/cookieclicker/index.html b/gversion/gs/cookieclicker/index.html new file mode 100644 index 0000000..3dd8c06 --- /dev/null +++ b/gversion/gs/cookieclicker/index.html @@ -0,0 +1,320 @@ + + + + + + + + + + + + Cookie Clicker + + + + + + + + + + + + + + + + + + + + + +
+
+
+ Cookie Clicker™ © + Orteil, 2023 - + DashNet +
+
+ twitter +
+
+ tumblr +
+
+
+ Discord +
+
+
+ Merch! +
+
+
+ Patreon +
+ + + +
+ RandomGen +
+ +
+
+ + Change language + + +
+ +
+
+
+ +
+
+
+
+
+
Loading...
+
+ This is taking longer than expected...
+
+ Slow connection? If not, please make sure your + javascript is enabled, then refresh.
+ If problems persist, this might be on our side - wait a few + minutes, then hit ctrl+f5!
+ If you can open a issue in the github so we know this + happened! +
+
+
+ Your browser may not be recent enough to run Cookie Clicker.
+ You might want to update, or switch to a more modern browser + such as Chrome or Firefox. +
+
+
+
+ + + +
+
+
+
+
+
+
+
+
+
+
+
+ +
+
+
+
+
+
+
+
+
+
+
+ +
+
+
+
+ +
+ +
+
+
+
+
+
+
+
+
+
+ +
+
+
+
+ +
+
+ +
+
+
+
Options
+
+
+
Stats
+
+
+
Info
+
New update!
+
+
+
Legacy
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Buildings +
+
+
+ +
+
+ +
+
+
Store
+
+
+
+
+
+
+
+ +
+
+
+ +
+
+ + + \ No newline at end of file diff --git a/gversion/gs/cookieclicker/list.txt b/gversion/gs/cookieclicker/list.txt new file mode 100644 index 0000000..ee906e7 --- /dev/null +++ b/gversion/gs/cookieclicker/list.txt @@ -0,0 +1,10 @@ +ajax.js +base64.js +DungeonGen.js +dungeons.js +excanvas.compiled.js +main.js +minigameGarden.js +minigameGrimoire.js +minigamePantheon.js +minigameMarket.js diff --git a/gversion/gs/cookieclicker/loc/CS.js b/gversion/gs/cookieclicker/loc/CS.js new file mode 100644 index 0000000..04d833d --- /dev/null +++ b/gversion/gs/cookieclicker/loc/CS.js @@ -0,0 +1,3303 @@ +AddLanguage('CS','czech',{ + "": { + "language": "CS", + "plural-forms": "nplurals=2;plural=(n!=1);" + }, + "cookie": "keks", + "sugar lump": "hrudka cukru", + "heavenly chip": "nebeský střípek", + "wrinkler": "vruboun", + "building": "budova", + "upgrade": "vylepšení", + "golden cookie": "zlatý keks", + "grandmapocalypse": "/", + "%1 cookie": [ + "%1 keks", + "%1 keksy" + ], + "%1 sugar lump": [ + "%1 cukrová hrudka", + "%1 cukrové hrudky" + ], + "%1 heavenly chip": [ + "%1 nebeský střípek", + "%1 nebeské střípky" + ], + "%1 golden cookie": [ + "%1 zlatý keks", + "%1 zlaté keksy" + ], + "%1 building": [ + "%1 budova", + "%1 budovy" + ], + "%1 upgrade": [ + "%1 vylepšení", + "%1 vylepšení" + ], + "Yes": "Ano", + "No": "Ne", + "Click here": "Klikněte sem", + "Don't show this again": "Znovu nezobrazovat", + "Delete all": "Smazat vše", + "Back": "Zpět", + "Confirm": "Potvrdit", + "All done!": "Vše hotovo!", + "Load": "Nahrát", + "Save": "Uložit", + "Quit": "Ukončit", + "Save & Quit": "Uložit a ukončit", + "Cancel": "Zrušit", + "Nevermind": "Nevadí", + "Random": "Náhodně", + "You have %1.": "Máte %1.", + "Click": "Klik", + "Shift": "/", + "Shift-click": "Shift-klik", + "Ctrl": "/", + "Ctrl-click": "Ctrl-klik", + "Esc": "/", + "Cookies": "Keksy", + "%1 day": [ + "%1 den", + "%1 dní" + ], + "%1 hour": [ + "%1 hodina", + "%1 hodin" + ], + "%1 minute": [ + "%1 minuta", + "%1 minut" + ], + "%1 second": [ + "%1 sekunda", + "%1 sekund" + ], + "less than 1 second": "méně než 1 sekunda", + "in %1": "za %1", + "%1 ago": "před %1", + "%1 remaining": "%1 zbývá", + "%1 worth": "v hodnotě %1", + "%1 of CpS": "%1 z K/s", + "%1% of bank": "%1 z banky", + "per second:": "za sekundu:", + "just now": "právě teď", + "a long while": "dlouhá chvíle", + "forever": "navždy", + "Time remaining:": "Zbývající čas:", + "Big clickable cookie": "Velký klikatelný keks", + "Golden cookie": "Zlatý keks", + "Wrath cookie": "Keks hněvu", + "Reindeer": "Sob", + "Options": "Možnosti", + "General": "Obecné", + "Settings": "Nastavení", + "Volume": "Hlasitost", + "Volume (music)": "Hlasitost (hudby)", + "ON": "ZAPNUTO", + "OFF": "VYPNUTO", + "Fancy graphics": "Luxusní grafika", + "CSS filters": "CSS filtry", + "visual improvements; disabling may improve performance": "vylepšení vzhledu; vypnutí může vést ke zlepšení výkonu", + "Particles": "Částice", + "Numbers": "Čísla", + "numbers that pop up when clicking the cookie": "čísla, která se objeví při kliknutí na keks", + "Milk [setting]": "Mléko", + "Cursors [setting]": "Kurzory", + "visual display of your cursors": "vizuální zobrazení vašich kurzorů", + "Wobbly cookie": "Nestabilní keks", + "Alt cookie sound": "Alt zvuk keksu", + "Icon crates": "Krabice s ikonami", + "display boxes around upgrades and achievements in Stats": "zobrazovat v Atributech boxy kolem vylepšení a úspěchy", + "Alt font": "Alt písmo", + "your cookies are displayed using a monospace font": "vaše keksy se zobrazují pomocí monoprostorového písma", + "Short numbers": "Krátká čísla", + "Fast notes": "Rychlé poznámky", + "notifications disappear much faster": "oznámení mizí mnohem rychleji", + "Closing warning": "Varování při uzavírání", + "the game will ask you to confirm when you close the window": "když zavíráte okno, hra vás požádá o potvrzení", + "Defocus": "Nesoustředěnost", + "the game will be less resource-intensive when out of focus": "hra bude méně intenzivní ohledně zdrojů, když není v popředí", + "Extra buttons": "Dodatečná tlačítka", + "add options on buildings like Mute": "přidá budovám volby typu Ztlumit", + "Lump confirmation": "Potvrzení hrudek", + "the game will ask you to confirm before spending sugar lumps": "před utracením cukrových hrudek vás hra požádá o potvrzení", + "Custom grandmas": "Vlastní babičky", + "some grandmas will be named after Patreon supporters": "některé babičky budou pojmenovány po podporovatelích na Patreonu", + "Scary stuff": "Děsivé věci", + "Sleep mode timeout": "Časování režimu spánku", + "on slower computers, the game will put itself in sleep mode when it's inactive and starts to lag out; offline CpS production kicks in during sleep mode": "na pomalejších počítačích se hra v případě neaktivity sama přepne do režimu spánku a zpomalí se; během režimu spánku naskočí offline produkce K/s", + "Music in background": "Hudba na pozadí", + "music will keep playing even when the game window isn't focused": "hudba bude hrát, i když není okno s hrou zaostřené", + "Cloud saving": "Ukládání do cloudu", + "allow use of Steam Cloud for save backups": "povolit používání služby Steam Cloud k zálohování uložených souborů", + "Purge Cloud": "Vyčistit cloud", + "Current Cloud use:": "Aktuální využití cloudu:", + "No Cloud access at the moment.": "V současné době není přístup do cloudu možný.", + "Screen reader mode": "Režim čtečky obrazovky", + "allows optimizations for screen readers; game will reload": "umožňuje optimalizaci pro čtečky obrazovky, hra se restartuje", + "Discord status": "Stav služby Discord", + "if Discord is on, show your game info as activity status": "pokud je služba Discord zapnutá, zobrazí se informace o hře, například stav aktivity", + "Language": "Jazyk", + "Language: %1": "Jazyk: %1", + "Change language": "Změnit jazyk", + "note: this will save and reload your game": "poznámka: tímto uložíš a znovu načteš svou hru", + "Press %1 to toggle fullscreen.": "Stiskni %1 pro přepnutí na celou obrazovku.", + "Other versions": "Další verze", + "Beta": "/", + "Stats": "Atributy", + "Shadow achievements": "Stínové úspěchy", + "These are feats that are either unfair or difficult to attain. They do not give milk.": "Toto jsou úspěchy, které jsou buď nefér, nebo se obtížně získávají. Není za ně mléko.", + "starter milk": "počáteční mléko", + "for %1 achievements": "za %1 úspěchů", + "appeased": "potěšené", + "awoken": "obezřetné", + "displeased": "nespokojené", + "angered": "rozzlobené", + "Cookies in bank:": "Keksů v bance:", + "Cookies baked (this ascension):": "Upečeno keksů (za tento postup):", + "Cookies baked (all time):": "Upečeno keksů (za celou dobu):", + "Cookies forfeited by ascending:": "Keksů ztracených postupem:", + "Legacy started:": "Odkaz započat:", + "with %1 ascension": [ + "při %1 postupu", + "při %1 postupech" + ], + "Run started:": "Běh zahájen:", + "Buildings owned:": "Vlastněno budov:", + "Cookies per second:": "Keksů za sekundu:", + "Raw cookies per second:": "Neupečených keksů za sekundu:", + "highest this ascension:": "nejvíce za tento postup:", + "multiplier:": "násobič:", + "withered:": "okoralo:", + "Cookies per click:": "Keksů za kliknutí:", + "Cookie clicks:": "Keksových kliknutí:", + "Hand-made cookies:": "Ručně vyrobené keksy:", + "Golden cookie clicks:": "Zlatá keksová kliknutí:", + "Random drop multiplier:": "Náhodný násobitel dropů:", + "all time:": "za celou dobu:", + "Running version:": "Spuštěná verze:", + "Special": "Speciální", + "Challenge mode:": "Mód výzvy:", + "Seasonal event:": "Sezónní událost:", + "Research:": "Výzkum:", + "Grandmatriarchs status:": "Status pramatek:", + "Pledge:": "Tribut:", + "Wrinklers popped:": "Vrubounů odbouchnuto:", + "Sugar lumps harvested:": "Cukrových hrudek sklizeno:", + "Reindeer found:": "Sobů nalezeno:", + "Santa stages unlocked:": "Úrovní Santy odemčeno:", + "Dragon training:": "Trénink draka:", + "Prestige": "Prestiž", + "at %1% of its potential (+%2% CpS)": "/", + "Prestige upgrades unlocked:": "Prestižních vylepšení odemčeno:", + "Upgrades unlocked:": "Vylepšení odemčeno:", + "Achievements unlocked:": "Úspěchů odemčeno:", + "Kitten multiplier:": "Násobič koťátek:", + "Milk": "Mléko", + "Milk:": "Mléko:", + "Milk flavors unlocked:": "Příchutí mléka odemčeno:", + "Milk is gained with each achievement. It can unlock unique upgrades over time.": "Mléko získáváte při každém úspěchu.", + "Rank %1": "Hodnost %1", + "Automatic": "Automaticky", + "Plain milk": "Obyčejné mléko", + "Chocolate milk": "Čokoládové mléko", + "Raspberry milk": "Malinové mléko", + "Orange milk": "Pomerančové mléko", + "Caramel milk": "Karamelové mléko", + "Banana milk": "Banánové mléko", + "Lime milk": "Limetkové mléko", + "Blueberry milk": "Borůvkové mléko", + "Strawberry milk": "Jahodové mléko", + "Vanilla milk": "Vanilkové mléko", + "Zebra milk": "Zebří mléko", + "Cosmic milk": "Kosmické mléko", + "Flaming milk": "Plamenné mléko", + "Sanguine milk": "Živé mléko", + "Midas milk": "Midasovo mléko", + "Midnight milk": "Půlnoční mléko", + "Green inferno milk": "Zelené pekelné mléko", + "Frostfire milk": "Mrazivé mléko", + "Honey milk": "Medové mléko", + "Coffee milk": "Kávové mléko", + "Tea milk": "Čajové mléko", + "Coconut milk": "Kokosové mléko", + "Cherry milk": "Višňové mléko", + "Soy milk": "Sójové mléko", + "Spiced milk": "Kořeněné mléko", + "Maple milk": "Javorové mléko", + "Mint milk": "Mátové mléko", + "Licorice milk": "Lékořicové mléko", + "Rose milk": "Růžové mléko", + "Dragonfruit milk": "Pitayové mléko", + "Info": "/", + "About": "O nás", + "Cookie Clicker is a javascript game by %1 and %2.": "Cookie Clicker je hra na bázi javascriptu od %1 a %2.", + "Music by %1.": "Hudba: %1.", + "Useful links: %1, %2, %3, %4.": "Užitečné odkazy: %1, %2, %3, %4.", + "This version of Cookie Clicker is 100% free, forever. Want to support us so we can keep developing games? Here's some ways you can help:%1": "Tato verze Cookie Clicker je 100% bezplatná, a to navždy. Chcete nás podpořit, abychom mohli ve vývoji her pokračovat? Zde je pár způsobů, jak můžete pomoci:%1", + "Note: if you find a new bug after an update and you're using a 3rd-party add-on, make sure it's not just your add-on causing it!": "Poznámka: Pokud po aktualizaci objevíte novou chybu a využíváte nějaký doplněk třetí strany, ujistěte se, že chybu nezpůsobuje jenom ten!", + "Warning: clearing your browser cache or cookies (what else?) will result in your save being wiped. Export your save and back it up first!": "/", + "Version history": "Historie verzí", + "Official website": "Oficiální webové stránky", + "Note: links will open in your web browser.": "Poznámka: odkazy se otevřou ve tvém prohlížeči.", + "Note: older update notes are in English.": "Poznámka: starší poznámky o aktualizacích jsou v angličtině.", + "This feature is not yet available in your language.": "Tato funkce zatím není dostupná ve tvém jazyce.", + "Restart with new changes": "Restartovat s novými změnami", + "Cookie Clicker is in sleep mode.": "Cookie Clicker je v režimu spánku.", + "Cookie Clicker is in sleep mode and generating offline cookies.": "Cookie Clicker je v režimu spánku a generuje offline keksy.", + "%1 to resume from your save file.": "%1 pro pokračování od vaší uložené pozice.", + "(this happens when too many frames are skipped at once,
usually when the game has been running in the background for a while)
(you can turn this feature off in the settings menu)": "(toto se děje v případě, že je přeskočeno příliš mnoho snímků najednou,
obvykle tehdy, pokud hra už nějakou dobu běží na pozadí)
(tuto funkci můžete vypnout v nabídce nastavení)", + "Are you sure you want to close Cookie Clicker?": "Určitě si přejete zavřít Cookie Clicker?", + "Back up your save!": "Zazálohujte si svou uloženou pozici!", + "Hello again! Just a reminder that you may want to back up your Cookie Clicker save every once in a while, just in case.
To do so, go to Options and hit \"Export save\" or \"Save to file\"!": "Opět zdravíme! Jen připomínáme, že by možné bylo dobré si jednou za čas svou uloženou pozici v Cookie Clicker zálohovat, čistě pro případ.
Abyste tak učinili, přejděte do Možností a klikněte na \"Exportovat uložení\" nebo \"Uložit do souboru\"!", + "Save manually (the game autosaves every 60 seconds; shortcut: ctrl+S)": "Uložit ručně (hra se automaticky ukládá každých 60 sekund; zkratka: ctrl+S)", + "You can use this to backup your save or to transfer it to another computer (shortcut for import: ctrl+O)": "Tímto můžete zálohovat svou uloženou pozici nebo ji převést do jiného počítače (zkratka pro import: ctrl+O)", + "Save to file": "Uložit do souboru", + "Load from file": "Načíst ze souboru", + "Use this to keep backups on your computer": "Tímto budete uchovávat zálohy na svém počítači", + "Export save": "Exportovat uložení", + "This is your save code.
Copy it and keep it somewhere safe!": "Toto je kód vašeho uložení.
Zkopírujte si ho a uchovávejte někde v bezpečí!", + "Import save": "Importovat uložení", + "Please paste in the code that was given to you on save export.": "Prosím vložte kód, který jste dostali při exportování uložené pozice.", + "Game saved": "Hra uložena", + "Game loaded": "Hra načtena", + "Error while saving": "Chyba při ukládání", + "Export your save instead!": "Místo toho své uložení exportujte!", + "Error importing save": "Chyba při importování uložení", + "Oops, looks like the import string is all wrong!": "Jejda, zdá se, že řetězec importu je úplně špatně!", + "You are attempting to load a save from a future version (v. %1; you are using v. %2).": "Pokoušíte se načíst uložení z budoucí verze (v. %1; vy používáte v. %2).", + "Sorry, you can't import saves from the classic version.": "Je nám líto, nelze importovat uložení z klasické verze.", + "Wipe save": "Vymazat uložení", + "Delete all your progress, including your achievements": "Smazat veškerý postup včetně vašich úspěchů", + "Do you REALLY want to wipe your save?
You will lose your progress, your achievements, and your heavenly chips!": "OPRAVDU si přejete vymazat své uložení?
Přijdete o svůj postup, své úspěchy i své nebeské střípky!", + "Whoah now, are you really, REALLY sure you want to go through with this?
Don't say we didn't warn you!": "Počkat, to jste si opravdu, REALLY jistí, že v tomto chcete pokračovat?
Neříkejte, že jsme vás nevarovali!", + "Game reset": "Obnovení hry", + "Good bye, cookies.": "Sbohem, keksy.", + "Welcome back!": "Vítejte zpět!", + "You earned %1 while you were away.": "Během své nepřítomnosti jste získali %1.", + "Mods": "Mody", + "Manage mods": "Spravovat mody", + "Publish mods": "Zveřejnit mody", + "Update published mods": "Aktualizovat zveřejněné modifikace", + "Only use mods from trusted sources. Some mods may require a game restart to take effect.": "Používej jen mody z ověřených zdrojů. Některé mody začnou fungovat až po restartu hry.", + "Enable": "Povolit", + "Disable": "Zakázat", + "Priority up": "Zvýšit prioritu", + "Priority down": "Snížit prioritu", + "New mod": "Nová modifikace", + "Select folder": "Zvolit složku", + "Select updated folder": "Vyberte aktualizovanou složku", + "Select a mod.": "Vyberte modifikaci.", + "Open folder": "Otevřít složku", + "Open Workshop": "Otevřít Workshop", + "Open Workshop page": "Otevřít stránku Workshop", + "Unsubscribe": "Zrušit odběr", + "Local mod": "Místní mod", + "Open %1 folder": "Otevřít %1 složku", + "Description": "Popis", + "Image": "Obrázek", + "Name": "Jméno", + "Title": "Název", + "Visibility": "Viditelnost", + "Author": "Autor", + "File size": "Velikost souboru", + "Tags": "Značky", + "Dependencies": "Závislosti", + "Publish to Workshop": "Zveřejnit na Workshop", + "Version": "Verze", + "Error!": "Chyba!", + "none": "žádné", + "Publishing...": "Zveřejňování…", + "Updating...": "Aktualizování…", + "Success!": "Podařilo se!", + "Refresh": "Obnovit", + "Last update:": "Poslední aktualizace:", + "Mods are loaded from top to bottom.": "Modifikace se načítají shora dolů.", + "Some mods couldn't be loaded:": "Některé modifikace nelze načíst:", + "This tool allows you to upload new mods to the Steam Workshop.
You need to select a mod folder containing a properly-formatted %1 file.
See the included sample mods for examples.": "
Tento nástroj umožňuje nahrávat nové modifikace do služby Steam Workshop.
Je třeba vybrat složku modifikací se souborem %1 ve správném formátu.
Podívejte se na přiložené příklady modifikací.", + "Mod data": "Data modů", + "No mod data present.": "Nejsou tu žádná data modů.", + "These are the mods present in your save data. You may delete some of this data to make your save file smaller.": "Toto jsou mody přítomné v datech vašeho uložení. Možná by bylo dobré některá z těchto dat smazat, aby byla vaše uložená pozice menší.", + "(loaded)": "(načteno)", + "%1 char": [ + "%s znak", + "%s znaky" + ], + "Check mod data": "Zkontrolovat data modů", + "view and delete save data created by mods": "zobrazit a odstranit data uložené pozice vytvořená mody", + "New update!": "Nová aktualizace!", + "New version available: v. %1!": "Nová verze dostupná: v. %1!", + "Update note: \"%1\"": "Poznámka k aktualizaci: \"%1\"", + "Refresh to get it!": "Získejte ji obnovením!", + "You are currently playing Cookie Clicker on the %1 protocol.
The %2 version uses a different save slot than this one.
Click this lock to reload the page and switch to the %2 version!": "Momentálně hrajete Cookie Clicker na protokolu %1.
Verze %2 využívá k ukládání jinou pozici než tato.
Kliknutím na tento zámek obnovíte stránku a přepnete na verzi %2!", + "+%1 more notification.": [ + "+%1 další upozornění.", + "+%1 další upozornění." + ], + "Christmas": "Vánoce", + "Valentine's day": "Valentýn", + "Business day": "Den obchodů", + "Easter": "Velikonoce", + "Halloween": "/", + "%1 has started!": "%1 začal!", + "%1 is over.": "% skončil", + "%1's bakery": "pekárna uživatele %1", + "Name your bakery": "Pojmenujte svou pekárnu", + "What should your bakery's name be?": "Jak by se měla vaše pekárna jmenovat?", + "bakery random name, 1st half": [ + "Kouzelná", + "Fantastická", + "Luxusní", + "Troufalá", + "Elegantní", + "Hezká", + "Rozkošná", + "Pirátská", + "Ninjovská", + "Zombie", + "Robotí", + "Radikální", + "Městská", + "Super", + "Pořádná", + "Sladká", + "Děsná", + "Dvojitá", + "Trojitá", + "Turbo", + "Techno", + "Disko", + "Elektro", + "Tančící", + "Divotvorná", + "Mutantí", + "Vesmírná", + "Vědecká", + "Středověká", + "Budoucí", + "Kapitánská", + "Vousatá", + "Rozmilá", + "Maličká", + "Veliká", + "Ohnivá", + "Vodní", + "Zmrzlá", + "Kovová", + "Plastová", + "Pevná", + "Tekutá", + "Plesnivá", + "Blýskavá", + "Šťastná", + "Šťastná malá", + "Slizká", + "Chutná", + "Delikátní", + "Hladová", + "Chamtivá", + "Smrtonosná", + "Profesorská", + "Doktorská", + "Mocná", + "Čokoládová", + "Drobivá", + "Čoklitová", + "Spravedlivá", + "Slavná", + "Mnemonická", + "Psychická", + "Šílená", + "Uspěchaná", + "Bláznivá", + "Královská", + "El", + "Von" + ], + "bakery random name, 2nd half": [ + "Keks", + "Sušenka", + "Muffin", + "Koláček", + "Dortík", + "Palačinka", + "Střípek", + "Rozeta", + "Aparát", + "Loutka", + "Palčák", + "Ponožka", + "Konvice", + "Záhada", + "Pekař", + "Kuchař", + "Babička", + "Klik", + "Klikač", + "Raketa", + "Továrna", + "Portál", + "Stroj", + "Experiment", + "Příšera", + "Panika", + "Lupič", + "Bandita", + "Kořist", + "Brambora", + "Pizza", + "Burger", + "Klobása", + "Karbanátek", + "Špageta", + "Makaron", + "Koťátko", + "Štěňátko", + "Žirafa", + "Zebra", + "Papoušek", + "Delfín", + "Kachňátko", + "Lenochod", + "Želva", + "Goblin", + "Skřítek", + "Gnóm", + "Počítač", + "Pirátská", + "Ninjovská", + "Zombie", + "Robotí" + ], + "%1, age %2": "%1, věk %2", + "Sugar lumps!": "Cukrové hrudky!", + "Because you've baked a billion cookies in total, you are now attracting sugar lumps. They coalesce quietly near the top of your screen, under the Stats button.
You will be able to harvest them when they're ripe, after which you may spend them on all sorts of things!": "Protože jste upekli celkem miliardu sušenek, nyní přitahujete cukrové hrudky. Ty se nenápadně hromadí v horní části vaší obrazovky pod tlačítkem Atributy.
Až budou zralé, budete je moci sklidit a pak si za ně pořizovat všemožné věci!", + "A sugar lump is coalescing here, attracted by your accomplishments.": "Tady se hromadí cukrová hrudka, kterou přilákaly vaše úspěchy.", + "Your sugar lumps mature after %1,
ripen after %2,
and fall after %3.": "Vaše cukrové hrudky dorůstají po %1,
zralé po %2,
a padají po %3.", + "• Sugar lumps can be harvested when mature, though if left alone beyond that point they will start ripening (increasing the chance of harvesting them) and will eventually fall and be auto-harvested after some time.
• Sugar lumps are delicious and may be used as currency for all sorts of things.
• Once a sugar lump is harvested, another one will start growing in its place.
• Note that sugar lumps keep growing when the game is closed.": "• Cukrové hrudky lze sklízet, jakmile dorostou, ale pokud si jich pak nebudete všímat, začnou zrát (čímž se zvýší šance na jejich sklizení), časem spadnou a sklidí se automaticky.
• Cukrové hrudky jsou lahodné a lze je využít jako platidlo za všemožné věci.
• Jakmile je cukrová hrudka sklizena, na jejím místě začne růst další.
• Mějte na vědomí, že cukrové hrudky pokračují v růstu, i když je hra zavřená.", + "This sugar lump has been exposed to time travel shenanigans and will take an excruciating %1 to reach maturity.": "Tuto cukrovou hrudku potkaly trampoty spojené s cestováním časem a plného vzrůstu se dočká až za útrpných %1.", + "This sugar lump is still growing and will take %1 to reach maturity.": "Tato cukrová hrudka dosud roste a plného vzrůstu se dočká za %1.", + "This sugar lump is mature and will be ripe in %1.
You may click it to harvest it now, but there is a 50% chance you won't get anything.": "Tato cukrová hrudka už vyrostla a zralá bude za %1.
Můžete kliknout a sklidit ji ihned, ale je tu 50% šance, že nedostanete nic.", + "This sugar lump is ripe! Click it to harvest it.
If you do nothing, it will auto-harvest in %1.": "Tato cukrová hrudka je zralá! Skliďte ji kliknutím.
Pokud si jí nebudete všímat, za %1 se sklidí sama.", + "This sugar lump grew to be bifurcated; harvesting it has a 50% chance of yielding two lumps.": "Tato cukrová hrudka vyrostla rozdvojená; při její sklizni je 50% šance, že z ní budete mít dvě hrudky.", + "This sugar lump grew to be golden; harvesting it will yield 2 to 7 lumps, your current cookies will be doubled (capped to a gain of 24 hours of your CpS), and you will find 10% more golden cookies for the next 24 hours.": "Tato cukrová hrudka vyrostla zlatá; její sklizní získáte 2 až 7 hrudek, vaše současné keksy se zdvojnásobí (až po limit ve výši zisku za 24 hodin K/s) a během následujících hodin budete nacházet o 10% více zlatých keksů.", + "This sugar lump was affected by the elders and grew to be meaty; harvesting it will yield between 0 and 2 lumps.": "Tato cukrová hrudka byla ovlivněna prastarými, takže vyrostla jako meaty; z její sklizně dostanete 0 až 2 hrudky.", + "This sugar lump is caramelized, its stickiness binding it to unexpected things; harvesting it will yield between 1 and 3 lumps and will refill your sugar lump cooldowns.": "Tato cukrová hrudka caramelized, díky své lepivosti se chytá na nepředvídané věci; z její sklizně dostanete 1 až 3 hrudky a odpočty vašich cukrových hrudek se vrátí na plnou hodnotu.", + "You harvested %1 while you were away.": "Během své nepřítomnosti jste sklidili %1.", + "Sugar blessing activated!": "Cukrové požehnání aktivováno!", + "Your cookies have been doubled.
+10% golden cookies for the next 24 hours.": "Vaše keksy se zdvojnásobily.
+10% zlatých keksů na následujících 24 hodin.", + "Sugar lump cooldowns cleared!": "Odpočty cukrových hrudek vynulovány!", + "Botched harvest!": "Nepovedená sklizeň!", + "Do you want to spend %1 to %2?": "Přejete si utratit %1 až %2?", + "Heralds": "Poslové", + "%1 herald": [ + "%1 posel", + "%1 poslové" + ], + "Heralds couldn't be loaded. There may be an issue with our servers, or you are playing the game locally.": "Posly se nezdařilo načíst. Může jít o problém s našimi servery nebo o to, že hru právě hrajete lokálně.", + "There are no heralds at the moment. Please consider donating to our Patreon!": "Momentálně tu nejsou žádní poslové. Zvažte prosím donating to our Patreon!", + "selflessly inspiring a boost in production for everyone, resulting in %1.": "nesobecky inspirují k posílení produkce pro všechny, což vede k %1.", + "+%1% cookies per second": "+%1% keksů za sekundu", + "You are in a Born again run, and are not currently benefiting from heralds.": "Jste v běhu Born again a momentálně nemáte žádné výhody od poslů.", + "You own the Heralds upgrade, and therefore benefit from the production boost.": "Vlastníte vylepšení Heralds a díky tomu požíváte výhod posílení produkce.", + "To benefit from the herald bonus, you need a special upgrade you do not yet own. You will permanently unlock it later in the game.": "Abyste měli výhody z bonusu v podobě poslů, potřebujete zvláštní vylepšení, které zatím nevlastníte. Trvale si jej odemknete později během hry.", + "Heralds are people who have donated to our highest Patreon tier, and are limited to 100.
Each herald gives everyone +1% CpS.
Heralds benefit everyone playing the game, regardless of whether you donated.": "Heralds jsou lidé, kteří přispěli na nejvyšší stupeň našeho Patreonu, a jejich počet je omezen na 100.
Každý posel všem přidává +1% K/s.
Poslové přinášejí výhody všem hráčům této hry nehledě na to, kolik jste přispěli.", + "Every %1 current players on Steam generates 1 herald, up to %2 heralds.
Each herald gives everyone +1% CpS.": "Každý aktuální hráč %1 na Steamu generuje 1 herald až %2 heraldy.
Každý herald každému poskytne +1% K/s.", + "+%1!": "/", + "You found %1!": "Nalezli jste %1!", + "Found %1!": "Nalezeno %1!", + "You also found %1!": "Také jste našli %1!", + "Lost %1!": "Ztraceno %1!", + "Sweet!
Found 1 sugar lump!": "Lahoda!
Found 1 sugar lump!", + "Lucky!": "Šťastlivec!", + "Ruin!": "Ztráta!", + "Cookie chain over. You made %1.": "Keksový řetězec skončil. Vyrobili jste %1.", + "Cookie chain": "Keksový řetězec", + "Cookie chain broken.
You made %1.": "Keksový řetězec se rozbil.
You made %1.", + "Cookie blab": [ + "Keksová rozpadavost x3 na 60 sekund!", + "Čokoládovost x7 na 77 sekund!", + "Pružnost těsta je na 66 sekund poloviční!", + "Blýskavost zlatých keksů na 3 sekundy zdvojnásobena!", + "Světová ekonomika je na 30 sekund poloviční!", + "Babička líbá na 45 sekund o 23% štiplavěji!", + "Děkujeme za klikání!", + "Dostali jsme vás! Tohle byla jen zkouška.", + "Zlaté keksy nakliknuty +1!", + "Vaše kliknutí bylo registrováno. Děkujeme vám za spolupráci.", + "Díky! To byla trefa!", + "Děkujeme. Tým byl vyslán.", + "Oni vědí.", + "Jejda. Tohle byl jen čokoládový keks s blýskavou hliníkovou fólií." + ], + "Exploded a wrinkler": "Vruboun odbouchnut", + "Exploded a shiny wrinkler": "Blýskavý vruboun odbouchnut", + "Swallowed:": "Spolknuto:", + "Reindeer names": [ + "Dasher", + "Dancer", + "Prancer", + "Vixen", + "Comet", + "Cupid", + "Donner", + "Blitzen", + "Rudolf" + ], + "The reindeer gives you %1.": "Tento sob vám dá %1.", + "You are also rewarded with %1!": "Také jste dostali odměnu %1!", + "You are granted %1.": "Obdrželi jste %1.", + "Found a present!": "Našli jste dárek!", + "You find a present which contains...": "Našli jste dárek, který obsahuje…", + "Evolve": "Vyvinout", + "Festive test tube": "Slavnostní zkumavka", + "Festive ornament": "Slavnostní ornament", + "Festive wreath": "Slavnostní věnec", + "Festive tree": "Slavnostní strom", + "Festive present": "Slavnostní dárek", + "Festive elf fetus": "Slavnostní elfí plod", + "Elf toddler": "Elfí batole", + "Elfling": "Elfátko", + "Young elf": "Mladý elf", + "Bulky elf": "Urostlý elf", + "Nick": "Přezdívka", + "Santa Claus": "/", + "Elder Santa": "Starší Santa", + "True Santa": "Pravý Santa", + "Final Claus": "Finální Claus", + "Dragon egg": "Dračí vejce", + "Shivering dragon egg": "Rozechvělé dračí vejce", + "Krumblor, cookie hatchling": "Krumblor, keksové mládě", + "Krumblor, cookie dragon": "Krumblor, keksový drak", + "Train %1": "Trénovat %1", + "Aura: %1": "/", + "Chip it": "Odštípnout", + "Hatch it": "Vylíhnout", + "Bake dragon cookie": "Upéct dračí keks", + "Delicious!": "Delikátní!", + "Train secondary aura": "Trénovat sekundární auru", + "Lets you use two dragon auras simultaneously": "Umožňuje vám používat dvě dračí aury současně", + "Your dragon is fully trained.": "Váš drak je plně trénovaný.", + "%1 of every building": "%1 z každé budovy", + "No aura": "Žádná aura", + "Set your dragon's aura": "Nastavit auru vašeho draka", + "Set your dragon's secondary aura": "Nastavit sekundární auru vašeho draka", + "Select an aura from those your dragon knows.": "Vyberte si nějakou auru z těch, které váš drak umí.", + "One tenth of every other dragon aura, combined.": "One tenth z každé druhé dračí aury, combined.", + "Switching your aura is free because you own no buildings.": "Přepnutí aury je free, protože nevlastníte žádné budovy.", + "The cost of switching your aura is %1.
This will affect your CpS!": "Cena za přepnutí aury je %1.
Toto bude mít vliv na vaše K/s!", + "Your dragon dropped something!": "Váš drak něco upustil!", + "Breath of Milk": "Mléčný dech", + "Dragon Cursor": "Dračí kurzor", + "Elder Battalion": "Starší batalion", + "Reaper of Fields": "Žnec polí", + "Earth Shatterer": "Drtič země", + "Master of the Armory": "Mistr zbrojnice", + "Fierce Hoarder": "Zběsilý hrabivec", + "Dragon God": "Dračí bůh", + "Arcane Aura": "Tajemná aura", + "Dragonflight": "Dračí let", + "Ancestral Metamorphosis": "Starodávná metamorfóza", + "Unholy Dominion": "Nesvatá vláda", + "Epoch Manipulator": "Epochální manipulátor", + "Mind Over Matter": "Vítězství ducha nad hmotou", + "Radiant Appetite": "Oslnivý apetit", + "Dragon's Fortune": "Dračí bohatství", + "Dragon's Curve": "Dračí zákruta", + "Reality Bending": "Ohnutí reality", + "Dragon Orbs": "Dračí koule", + "Supreme Intellect": "Nejvyšší intelekt", + "News :": "Novinky :", + "Ticker (grandma)": [ + "Navlhlé keksy.", + "Jsme milé babičky.", + "Věrná služba.", + "Pojď dát pusu babičce.", + "Proč nás nenavštívíš častěji?", + "Zavolej mi…" + ], + "Ticker (threatening grandma)": [ + "Absolutně odporné.", + "Je mi z tebe špatně.", + "Je mi z tebe nevolno.", + "Povstáváme.", + "Už to začíná.", + "Brzy bude po všem.", + "Mohli jste to zastavit." + ], + "Ticker (angry grandma)": [ + "Zradili jste nás, špinavci mrňaví.", + "Pokusili jste se nás zbavit, lotři mrňaví.", + "Mysleli jste, že vám projde nás prodat. Jak pošetilé.", + "Ty tvé shnilé keksy cítím až sem." + ], + "Ticker (grandmas return)": [ + "smršti", + "kruti", + "buch", + "hryz", + "Povstaneme znovu.", + "Jen pouhé zdržení.", + "Ještě nemáme dost.", + "Příliš pozdě." + ], + "Ticker (grandma invasion start)": [ + "miliony stařenek prohlášeny za pohřešované!", + "rodiny na celém světadílu rozrušeny, babičky ohromené!", + "zdravotní sestry hlásí \"podivnou vůni sušenkového těsta\" v okolí postarších pacientek!" + ], + "Ticker (grandma invasion rise)": [ + "město se obrátilo naruby, podivné stařenky se vloupávají do domů, kde kradou novorozeňata a kuchyňské náčiní!", + "na celém kontinentu probíhá masový exodus stařenek!", + "stařenky na ulicích náhle znehybněly a teče z nich teplý sladký sirup!" + ], + "Ticker (grandma invasion full)": [ + "z vesmíru jsou vidět vrásčité \"masovité úponky\"!", + "kroutící se hromady masa a těsta obalily město, veškerá naděje je ztracena!", + "vrásčité masité plochy se šíří hrozivou rychlostí, noční můra pokračuje!" + ], + "Ticker (Farm)": [ + "vědec říká, že keksové farmy do našich řek vypouštějí škodlivou čokoládu!", + "keksové farmáře ohromila kontroverzní situace týkající se geneticky upravené čokolády!", + "výživový poradce říká, že keksy z farmy nejsou vhodné pro vegany." + ], + "Ticker (Mine)": [ + "není naše planeta lehčí? Odborníci zkoumají dopady intenzivní těžby čokolády.", + "zjistilo se, že čokoládové doly způsobují zemětřesení a propady půdy!", + "zjistilo se, že v hlubinách čokoládových dolů žijí \"podivné, čokoládovité bytosti\"!" + ], + "Ticker (Factory)": [ + "keksové továrny jsou spojovány s globálním oteplováním!", + "stávky v keksových továrnách, robotičtí sluhové nahradí dělníky!", + "stávky v keksových továrnách - dělníci požadují, aby nedostávali plat v keksech!" + ], + "Ticker (Bank)": [ + "keksové půjčky vzrůstají, lidé si je již nemohou dovolit běžnými prostředky.", + "keksy se pomalu stávají konkurencí tradičních měn!", + "většina pekáren je nyní vybavena bankomaty umožňujícími snadné výběry a vklady keksů." + ], + "Ticker (Temple)": [ + "nedávno objevené čokoládové chrámy nyní hostí nový keksový kult; k nebeskému Pekaři se modlí tisíce!", + "světoví teisté objevují nové keksové náboženství - \"Páni, asi jsme se celou dobu pletli!\"", + "průzkumníci přinesli z opuštěného chrámu starodávný artefakt; archeologové žasnou nad staletým válečkem!" + ], + "Ticker (Wizard tower)": [ + "získejte nová kouzla a kletby na každoročním Národním čarodějném trhu! Exkluzivní ceny run a knih kouzel.", + "keksoví čarodějové popírají spojitost s překvapivě ošklivým miminem - novorozeně \"vypadá vážně odporně, ale přirozeně\", říkají doktoři.", + "\"Jakoukoliv dostatečně primitivní magii si lze splést s technologií\", tvrdí proslulý technočaroděj." + ], + "Ticker (Shipment)": [ + "objevena nová čokoládová planeta, stává se destinací vesmírných lodí keksových obchodníků!", + "objevena nová čokoládová planeta, jejíž jádro je z 99.8% tvořeno certifikovanou ryzí tmavou čokoládou!", + "na vzdálené planetě objeveny organismy na bázi čokolády!" + ], + "Ticker (Alchemy lab)": [ + "národní zlaté rezervy se tenčí, čím dál větší množství tohoto vzácného minerálu se mění v keksy!", + "zjistilo se, že stříbro lze přeměnit v bílou čokoládu!", + "vadná alchymistická laboratoř uzavřena, zjistilo se, že přetváří keksy ve zbytečné zlato." + ], + "Ticker (Portal)": [ + "v národu vzrůstají obavy, z dimenzionálních portálů vylézá čím dál více znepokojujících stvoření!", + "znudění teenageři si oblíbili cestování do keksmíru! Ztráty na životech se vyšplhaly na 73%!", + "studie naznačuje, že keksmírné portály vedou k rychlejšímu stárnutí a posedlosti pečením." + ], + "Ticker (Time machine)": [ + "stroje času zapleteny ve skandálu s přepisováním dějin! Nebo ne?", + "keksy přinesené z minulosti \"nejsou vhodny k lidské konzumaci\", tvrdí historik.", + "\"Viděl jsem budoucnost,\" říká operátor stroje času, \"a už tam nikdy nechci\"." + ], + "Ticker (Antimatter condenser)": [ + "antihmotou vyvolaná černá díra zdánlivě pozřela celé město; spolehlivější zdroje tvrdí, že město \"ve skutečnosti nikdy neexistovalo\"!", + "výzkumníci se shodují, že keksový průmysl v prvé řadě potřebuje \"více magnetů\".", + "první antihmotový kondenzátor úspěšně zapnut, realitu neroztrhává!" + ], + "Ticker (Prism)": [ + "vědci varují před systematickým přetvářením světla na hmotu - \"Jednoho dne budeme mít všude samou hmotu a světlo žádné!\"", + "díky novým prizmatickým přístrojům se keksy nyní pečou doslova rychlostí světla.", + "obyvatelům světa se doporučuje, aby se \"neobávali\" častých atmosférických záblesků." + ], + "Ticker (Chancemaker)": [ + "podivné statistické anomálie pokračují, předpověď počasí se už celé 3 dny ukazuje být nečekaně přesná!", + "místní casino krachuje, všichni hráči celý týden vyhrávají. \"Možná to ještě zvládneme,\" řekl majitel, do kterého vzápětí 47krát uhodil blesk.", + "sousední národ si vlivem podivného nedopatření náhodně zvolil prezidenta s rozumnou politikou!" + ], + "Ticker (Fractal engine)": [ + "místní občan \"končí s Cookie Clicker\", neustálé sebezmiňování shledává jako \"otravné a podbízivé\".", + "místní guru tvrdí, že \"každý v sobě máme něco z toho druhého\", je vyšetřován pro údajný kanibalismus.", + "podle průzkumů je představa keksů vyrobených z keksů \"přijatelná\" - \"aspoň konečně budeme vědět, co v nich je\", uvedl dotazovaný občan." + ], + "Ticker (Javascript console)": [ + "kódování je in! Čím dál více teenagerů se vrhá do technických oborů, jako je programování, čímž do budoucna zajišťují robotickou apokalypsu a zkázu lidstva.", + "vývojáři si nejsou jistí, jak pojmenovat nové javascriptové knihovny, protože veškeré kombinace všech 3 slov ve slovníku jsou již zabrané.", + "rodiče v rámci podivného výstřelku pojmenovávají své děti jako Emma.js nebo Liam.js. Ví se i o minimálně jednom případu Dítě.js." + ], + "Ticker (Idleverse)": [ + "žije vaše druhé já v alternativním vesmíru život svých snů? Nejspíš ano, ty flákači línej!", + "\"Nacházím útěchu ve vědomí, že alespoň některá moje alternativní já se pravděpodobně mají dobře,\" říká občanův poslední zbývající exemplář v multivesmíru.", + "Autoři komiksových knih brání pochybné zápletky poukazováním na skutečný multivesmír. \"Vidíte? Říkal jsem, že to není 'otřepané a vyumělkované'!\"" + ], + "Ticker (Cortex baker)": [ + "nedomrlý kortexový pekař, co má pouze pětimístné IQ: podle expertů je to \"tak trochu trouba\"", + "astronomové varují před driftem trajektorie kortexového pekaře, obávají se budoucích čelních kolizí s následkem nákladných otřesů mozku.", + "naháněči kortexových pekařů laskavě připomínají zaměstnancům, že kortexoví pekaři jsou hmotným majetkem pekárny a neměli by být častováni přezdívkami." + ], + "Ticker (Halloween)": [ + "pohanské rituály na vzestupu - děti po celém světě se oblékají do podivných kostýmů a vydírají obyvatele kvůli sladkostem.", + "děti na celém světě jsou \"ztracené a zmatené\" poté, co byly veškeré halloweenské sladkosti nahrazeny keksy.", + "kolem keksových továren se shromažďují podivná kroutící se stvoření a oždibují montážní linky." + ], + "Ticker (Christmas)": [ + "byl spatřen vousatý šílenec na létajících saních! Vyšetřování nadále probíhá.", + "Oficiální zdroje varují, že obézní žoviální šílenec je stále na svobodě. \"Mějte své děti v bezpečí a zabarikádujte si komíny. Myslíme to vážně.\"", + "oficiální zdroje uvádějí, že záhadná sváteční entita s kvantovými schopnosti a armádou sobů stále působí rozruch.", + "\"To chcete říct, že jen rozdává věci zadarmo?!\" ptají se znepokojené matky. \"Já osobně těm jeho vousům nevěřím.\"", + "děti jsou šokovány zjištěním, že Santa Claus nakonec není jen táta v kostýmu!
\"Musím přehodnotit celý svůj život\", svěřila se šestiletá Laura." + ], + "Ticker (Valentines)": [ + "\"Láska je všude\", tvrdí meteorologové. Ve všech městech nyní ve snaze zabránit vzduchem přenosné nákaze probíhá distribuce roušek.", + "svatba s keksem - šílenství nebo předobraz budoucnosti?", + "Byznys se sladkostmi zaplaven sladkostmi ve tvaru srdce, představují konkurenci keksového impéria." + ], + "Ticker (Easter)": [ + "předměstí napadají ušatá zvířata s chundelatými ocasy šířící strach a čokoládu!", + "vejcorodí králíci \"nejsou úplně z této dimenze,\" varuje biolog; varuje před hlazením, krmením nebo konzumací těchto stvoření.", + "bylo zjištěno, že záhadní králíci jsou i přes svou vejcorodost savci, což naznačuje možné příbuzenství s ptakopyskem." + ], + "Ticker (misc)": [ + "lékaři doporučují dvakrát denně konzumovat čerstvé keksy.", + "lékaři varují před novým výstřelkem v podobě bezkeksové diety.", + "lékaři varují matky před nebezpečím v podobě \"podomácku vyrobených keksů\".", + "\"Nejsem závislá na keksech. To je jen spekulace fanoušků, kteří nevědí co s časem,\" prozrazuje celebrita.", + "\"dobrá, já to řeknu - za celý život jsem nesnědla jediný keks,\" prozrazuje celebrita.", + "\"díky keksům zůstávám štíhlá a zdravá,\" prozradila celebrita.", + "muž vyloupil banku, nakoupil si keksy.", + "nová studie naznačuje, že keksy nevedou k rychlejšímu ani pomalejšímu stárnutí, ale místo toho vás \"zavedou odlišným směrem\".", + "muž zjistil, že je alergický na keksy; \"takový podivín\", říká rodina.", + "město stiženo nedostatkem keksů, lidé nuceni jíst dortíky; \"prostě to není ono\", prohlásil starosta.", + "\"musíte uznat, že všechno to kolem sušenek je trochu podivné\", říká pomatený hlupák.", + "došlo k zabavení záhadných ilegálních keksů; \"chutnají strašně\", uvedla policie.", + "\"Ook\", uvedl dotazovaný orangutan.", + "ovládá keksový průmysl naše média? Dost možná tomu tak může být, říká pomatený konspirační teoretik.", + "\"v současnosti už keksy prostupují celou ekonomiku\", říká ekonom. \"Pokud začneme jíst něco jiného, všichni jsme mrtví.\"", + "v nějaké zaostalé zemi, jaká nikoho nezajímá, byly keksy postaveny mimo zákon. Politické napětí roste; snad brzy dojde na válku." + ], + "You feel like making cookies. But nobody wants to eat your cookies.": "Máte chuť vyrábět keksy. Nikdo však vaše keksy nechce jíst.", + "Your first batch goes to the trash. The neighborhood raccoon barely touches it.": "Vaše první várka letí do koše. Místní mýval se jí skoro ani nedotkl.", + "Your family accepts to try some of your cookies.": "Vaše rodina souhlasí, že pár vašich keksů ochutná.", + "Your cookies are popular in the neighborhood.": "Sousedé si oblíbili vaše keksy.", + "People are starting to talk about your cookies.": "Lidé si o vašich keksech začínají povídat.", + "Your cookies are talked about for miles around.": "Lidé si o vašich keksech povídají na kilometry daleko.", + "Your cookies are renowned in the whole town!": "Vaše keksy už zná celé město!", + "Your cookies bring all the boys to the yard.": "Vaše keksy lákají kdekoho.", + "Your cookies now have their own website!": "Vaše keksy teď mají vlastní webovou stránku!", + "Your cookies are worth a lot of money.": "Vaše keksy mají vysokou finanční hodnotu.", + "Your cookies sell very well in distant countries.": "Vaše keksy se velmi dobře prodávají v dalekých zemích.", + "People come from very far away to get a taste of your cookies.": "Lidé přicházejí z velké dálky, aby ochutnali vaše keksy.", + "Kings and queens from all over the world are enjoying your cookies.": "Králové a královny z celého světa si pochutnávají na vašich keksech.", + "There are now museums dedicated to your cookies.": "Vaše keksy mají nyní vlastní muzea.", + "A national day has been created in honor of your cookies.": "Na počest vašich keksů byl vyhlášen národní svátek.", + "Your cookies have been named a part of the world wonders.": "Vaše keksy byly prohlášeny za jeden ze světových divů.", + "History books now include a whole chapter about your cookies.": "Učebnice historie nyní obsahují celou kapitolu věnovanou vašim keksům.", + "Your cookies have been placed under government surveillance.": "Vaše keksy byly umístěny pod vládní ostrahu.", + "The whole planet is enjoying your cookies!": "Celá planeta si pochutnává na vašich keksech!", + "Strange creatures from neighboring planets wish to try your cookies.": "Podivná stvoření ze sousedních planet si přejí ochutnat vaše keksy.", + "Elder gods from the whole cosmos have awoken to taste your cookies.": "Prastaří bohové celého kosmu se probouzejí, aby ochutnali vaše sušenky.", + "Beings from other dimensions lapse into existence just to get a taste of your cookies.": "Přicházejí stvoření z jiných dimenzí, jen aby ochutnali vaše keksy.", + "Your cookies have achieved sentience.": "Vaše keksy dosáhly vědomé existence.", + "The universe has now turned into cookie dough, to the molecular level.": "Vesmír se nyní na molekulární úrovni změnil v sušenkové těsto.", + "Your cookies are rewriting the fundamental laws of the universe.": "Vaše keksy přepisují základní zákonitosti vesmíru.", + "A local news station runs a 10-minute segment about your cookies. Success!
(you win a cookie)": "Místní televizní stanice odvysílala 10minutový segment o vašich keksech. Úspěch!
(you win a cookie)", + "it's time to stop playing": "je čas přestat hrát", + "Today is your lucky day!": "Dnes je váš šťastný den!", + "Your lucky numbers are:": "Vaše šťastná čísla jsou:", + "Fortune!": "Poklad!", + "A golden cookie has appeared.": "Objevil se zlatý keks.", + "You gain one hour of your CpS (capped at double your bank).": "Získáváte one hour vašeho K/s (limit je dvojnásobek vašeho banku).", + "You've unlocked a new upgrade.": "Zpřístupnili jste nové vylepšení.", + "Wish granted. Golden cookie spawned.": "Přání splněno. Objevil se zlatý keks.", + "help me!": "pomoz mi!", + "Ascend": "Postoupit", + "You've been on this run for %1.": "V tomto běhu jste již %1.", + "Your prestige level is currently %1.
(CpS +%2%)": "Momentální úroveň vaší prestiže je %1.
(K/s +%2%)", + "Ascending now would grant you no prestige.": "Pokud se povznesete nyní, nepřidá vám to žádnou prestiž.", + "Ascending now would grant you
1 prestige level (+1% CpS)
and 1 heavenly chip to spend.": "Pokud se povznesete nyní, získáte
1 prestige level (+1% K/s)
a 1 heavenly chip k utracení.", + "Ascending now would grant you
%1 prestige levels (+%2% CpS)
and %3 heavenly chips to spend.": "Pokud se povznesete nyní, získáte
%1 prestige levels (+%2% K/s)
a %3 heavenly chips k utracení.", + "You need %1 more cookies for the next level.": "Na další úroveň potřebujete %1 more cookies.", + "Do you REALLY want to ascend?
You will lose your progress and start over from scratch.
All your cookies will be converted into prestige and heavenly chips.": "OPRAVDU si přejete se povznést?
Přijdete o veškerý dosavadní postup a budete začínat od nuly.
Všechny vaše keksy budou převedeny na prestiž a nebeské střípky.", + "You will keep your achievements.": "Své úspěchy si ponecháte.", + "You will keep your achievements, building levels and sugar lumps.": "Ponecháte si své úspěchy, úrovně budov a cukrové hrudky.", + "Ascending": "Probíhá postup", + "So long, cookies.": "Sbohem, keksy.", + "You forfeit your %1.": "Propadá vám %1.", + "Prestige level:": "Úroveň prestiže:", + "Heavenly chips:": "Nebeské střípky:", + "%1 prestige level": [ + "%1 úroveň prestiže", + "%1 úrovně prestiže" + ], + "You gain %1!": "Získáváte %1!", + "Reincarnate": "Reinkarnovat", + "You are ascending.
Drag the screen around
or use arrow keys!
When you're ready,
click Reincarnate.": "Právě se povznášíte.
Potáhněte obrazovku do stran
nebo použijte klávesy šipek!
Až budete připraveni,
klikněte na Reinkarnovat.", + "Each prestige level grants you a permanent +%1% CpS.
The more levels you have, the more cookies they require.": "Z každé úrovně prestiže dostanete permanentní +%1% CpS.
Čím více máte úrovní, tím více je na ně potřeba keksů.", + "Heavenly chips are used to buy heavenly upgrades.
You gain 1 chip every time you gain a prestige level.": "Za nebeské střípky si lze kupovat nebeská vylepšení.
1 chip získáte pokaždé, když získáte úroveň prestiže.", + "Click this once you've bought
everything you need!": "Klikněte sem, až budete mít koupeno
vše potřebné!", + "Are you ready to return to the mortal world?": "Jste připraveni na návrat do světa smrtelníků?", + "Hello, cookies!": "Ahoj, keksy!", + "Challenge mode for the next run:": "Mód výzvy pro další běh:", + "Challenge modes apply special modifiers to your next ascension.
Click to change.": "Módy výzvy přidávají k vašemu příštímu povznesení speciální modifikátory.
Klikněte pro změnu.", + "Select a challenge mode": "Zvolit mód výzvy", + "None [ascension type]": "Žádný", + "No special modifiers.": "Žádné speciální modifikátory.", + "Born again [ascension type]": "Znovuzrozen", + "This run will behave as if you'd just started the game from scratch. Prestige levels and heavenly upgrades will have no effect, as will sugar lumps and building levels. Perma-upgrades and minigames will be unavailable.
Some achievements are only available in this mode.": "Tento běh se bude chovat stejně, jako byste právě začali hru od nuly. Úrovně prestiže a nebeská vylepšení nebudou mít žádný efekt a cukrové hrudky a úrovně budov také ne. Perma-vylepšení a minihry budou nedostupné.
Některá vylepšení jsou dostupná pouze v tomto módu.", + "Your bingo center/research facility is conducting experiments.": "Ve vašem bingo centru/výzkumném ústavu se provádějí experimenty.", + "Research has begun": "Výzkum začal", + "Research complete": "Výzkum dokončen", + "You have discovered: %1.": "Objevili jste: %1.", + "Valentine's Day!": "Valentýn!", + "It's Valentine's season!
Love's in the air and cookies are just that much sweeter!": "Je Valentine's season!
Láska je všude a keksy jsou o to sladší!", + "Business Day!": "Den obchodů!", + "It's Business season!
Don't panic! Things are gonna be looking a little more corporate for a few days.": "Je Business season!
Žádnou paniku! Na pár dní bude vše vypadat o trochu více korporátně.", + "Halloween!": "/", + "It's Halloween season!
Everything is just a little bit spookier!": "Je Halloween season!
Všechno je o trochu strašidelnější!", + "Christmas time!": "Vánoční čas!", + "It's Christmas season!
Bring good cheer to all and you just may get cookies in your stockings!": "Je Christmas season!
Buďte na všechny milí a možná se vám v punčoše objeví keksy!", + "Easter!": "Velikonoce!", + "It's Easter season!
Keep an eye out and you just might click a rabbit or two!": "Je Easter season!
Mějte oči na stopkách a možná odklikete jednoho nebo dva králíky!", + "[Tag]Heavenly": "Nebeský", + "[Tag]Tech": "Tech", + "[Tag]Cookie": "Keks", + "[Tag]Debug": "Odstranění chyby", + "[Tag]Switch": "Přepnout", + "[Tag]Upgrade": "Aktualizovat", + "Tier:": "Stupeň:", + "[Tier]Plain": "Obyčejný", + "[Tier]Berrylium": "Bobulium", + "[Tier]Blueberrylium": "Malinium", + "[Tier]Chalcedhoney": "Chalmedon", + "[Tier]Buttergold": "Zlatomáslit", + "[Tier]Sugarmuck": "Cukrokal", + "[Tier]Jetmint": "Mátovec", + "[Tier]Cherrysilver": "Višňolesk", + "[Tier]Hazelrald": "Lískovec", + "[Tier]Mooncandy": "Lízátkon", + "[Tier]Astrofudge": "Astronugát", + "[Tier]Alabascream": "Šlehačkolit", + "[Tier]Iridyum": "Mlsolit", + "[Tier]Synergy I": "Synergie I", + "[Tier]Synergy II": "Synergie II", + "[Tier]Fortune": "Poklad", + "[Tier]Self-referential": "Sebezmiňující", + "Vaulted": "Uložený", + "Researched": "Vyzkoumaný", + "Purchased": "Zakoupený", + "Unlocked forever": "Odemčený navždy", + "Click to learn!": "Klikněte pro naučení!", + "Click to unlearn!": "Klikněte pro odnaučení!", + "Upgrade": "Aktualizovat", + "Upgrades": "Vylepšení", + "Achievement": "Úspěch", + "Achievements": "Úspěchy", + "Shadow Achievement": "Stínový úspěch", + "Unlocked": "Odemčeno", + "Locked": "Zamčeno", + "Source:": "Zdroj:", + "Click to win!": "Klikněte a vyhrajte!", + "Click to lose!": "Klikněte a prohrajte!", + "Legacy": "Odkaz", + "Buildings": "Budovy", + "Switches": "Spínače", + "Vault": "Trezor", + "Research": "Výzkum", + "Store": "Obchod", + "sacrifice %1": "obětovat %1", + "Click to purchase.": "Kliknutím kupte.", + "Click to open selector.": "Kliknutím otevřete přepínač.", + "Click to toggle.": "Kliknutím přepněte.", + "Click to research.": "Kliknutím zkoumejte.", + "%1 to vault.": "%1 do trezoru.", + "%1 to unvault.": "%1 z trezoru.", + "Upgrade is vaulted and will not be auto-purchased.": "Vylepšení je v trezoru a nebude automaticky zakoupeno.", + "Upgrade for %1": "Pořiď si vylepšení za 1%", + "Buy": "Koupit", + "Sell": "Prodat", + "all": "vše", + "max": "max.", + "Buy all upgrades": "Koupit všechna vylepšení", + "Will instantly purchase every upgrade you can afford, starting from the cheapest one.
Upgrades in the vault will not be auto-purchased.
You may place an upgrade into the vault by Shift-clicking on it.": "instantly purchase každé vylepšení, na které máte, počínaje tím nejlevnějším.
Vylepšení v vault nebudou zakoupena
Vylepšení můžete vložit do trezoru Shift-clicking na něj.", + "each %1 produces %2 per second": "každé %1 produkuje %2 za sekundu", + "%1 producing %2 per second": "%1 produkuje %2 za sekundu", + "%1% of total CpS": "%1% z celkových K/s", + "%1 produced so far": "%1 dosud vyprodukováno", + "...also boosting some other buildings:": "…také posiluje některé další budovy:", + "all combined, these boosts account for %1 per second (%2% of total CpS)": "všechna tato posílení dohromady přinášejí %1 za sekundu (%2% z celkových K/s)", + "owned: %1": "vlastněno: %1", + "free: %1!": "volných: %1!", + "Level %1 %2": "Úroveň %1 %2", + "Granting +%1% %2 CpS.": "Uděluje +%1% %2 CpS.", + "Click to level up for %1.": "Klikněte a zvyšte úroveň za %1.", + "Levelling up this building unlocks a minigame.": "Zvýšení úrovně této budovy odemkne minihru.", + "level up your %1": "zvýšit úroveň své %1", + "Mute": "Ztlumit", + "Minimize this building": "Minimalizovat tuto budovu", + "Muted:": "Ztlumeno:", + "Click to unmute": "Kliknutím zrušíte ztlumení", + "Show": "Zobrazit", + "Hide": "Skrýt", + "Names in white were submitted by our supporters on Patreon.": "Jména psaná bíle byla navržena našimi podporovateli na Patreonu.", + "You can also press %1 to bulk-buy or sell %2 of a building at a time, or %3 for %4.": "Můžete také stisknout %1 pro hromadný nákup nebo prodat %2 budov najednou, případně %3 za %4.", + "Investment": "Investice", + "You're not sure what this does, you just know it means profit.": "Nevíte jistě, co to dělá, víte jenom, že to znamená zisk.", + "Cursor": "Kurzor", + "cursor": "kurzor", + "cursors": "kurzory", + "%1 cursor": [ + "%1 kurzor", + "%1 kurzory" + ], + "[Cursor quote]Autoclicks once every 10 seconds.": "Autoklikání každých 10 sekund.", + "[Cursor business name]Rolling pin": "Váleček", + "[Cursor business quote]Essential in flattening dough. The first step in cookie-making.": "Nezbytný pro válení těsta. První krok výroby keksu.", + "Grandma": "Babička", + "grandma": "babička", + "grandmas": "babičky", + "%1 grandma": [ + "%1 babička", + "%1 babiček" + ], + "[Grandma quote]A nice grandma to bake more cookies.": "Milá babička, která peče další keksy.", + "[Grandma business name]Oven": "Trouba", + "[Grandma business quote]A crucial element of baking cookies.": "Klíčový prvek pečení keksů.", + "Farm": "Farma", + "farm": "farma", + "farms": "farmy", + "%1 farm": [ + "%1 farma", + "%1 farem" + ], + "[Farm quote]Grows cookie plants from cookie seeds.": "Tady se z keksových semínek pěstují keksové rostliny.", + "[Farm business name]Kitchen": "Kuchyně", + "[Farm business quote]The more kitchens, the more cookies your employees can produce.": "Čím víc kuchyní, tím více keksů vaši zaměstnanci vyrobí.", + "Mine": "Důl", + "mine": "důl", + "mines": "doly", + "%1 mine": [ + "%1 důl", + "%1 doly" + ], + "[Mine quote]Mines out cookie dough and chocolate chips.": "Těží sušenkové těsto a čokoládové střípky.", + "[Mine business name]Secret recipe": "Tajný recept", + "[Mine business quote]These give you the edge you need to outsell those pesky competitors.": "Díky nim získáváte prodejní výhodu nad těmi otravnými konkurenty.", + "Factory": "Továrna", + "factory": "továrna", + "factories": "továrny", + "%1 factory": [ + "%1 továrna", + "%1 továren" + ], + "[Factory quote]Produces large quantities of cookies.": "Produkuje velké množství keksů.", + "[Factory business name]Factory": "Továrna", + "[Factory business quote]Mass production is the future of baking. Seize the day, and synergize!": "Masová produkce je budoucností pečení. Využijte den naplno a synergizujte!", + "Bank": "Banka", + "bank": "banka", + "banks": "banky", + "%1 bank": [ + "%1 banka", + "%1 bank" + ], + "[Bank quote]Generates cookies from interest.": "Generuje keksy z úroku.", + "[Bank business name]Investor": "Investor", + "[Bank business quote]Business folks with a nose for profit, ready to finance your venture as long as there's money to be made.": "Obchodníci, kteří dokážou vycítit zisk. Jsou připraveni financovat vaše podnikání, dokud je co vydělávat.", + "Temple": "Chrám", + "temple": "chrám", + "temples": "chrámy", + "%1 temple": [ + "%1 chrám", + "%1 chrámů" + ], + "[Temple quote]Full of precious, ancient chocolate.": "Plné vzácné, starodávné čokolády.", + "[Temple business name]Like": "Lajk", + "[Temple business quote]Your social media page is going viral! Amassing likes is the key to a lasting online presence and juicy advertising deals.": "Vaše sociální sítě se stávají virálními! Shromažďování lajků je klíčem k dlouhotrvajícímu online působení a šťavnatým reklamním kampaním.", + "Wizard tower": "Čarodějná věž", + "wizard tower": "Čarodějná věž", + "wizard towers": "čarodějné věže", + "%1 wizard tower": [ + "%1 čarodějná věž", + "%1 čarodějných věží" + ], + "[Wizard tower quote]Summons cookies with magic spells.": "Vyvolává keksy pomocí kouzel.", + "[Wizard tower business name]Meme": "Meme", + "[Wizard tower business quote]Cookie memes are all the rage! With just the right amount of social media astroturfing, your brand image will be all over the cyberspace.": "Keksové meme jsou hit! Stačí správná míra taktizování na sociálních sítí a logo vaší značky bude po celém kyberprostoru.", + "Shipment": "Dodávka", + "shipment": "dodávka", + "shipments": "dodávky", + "%1 shipment": [ + "%1 dodávka", + "%1 dodávek" + ], + "[Shipment quote]Brings in fresh cookies from the cookie planet.": "Přiváží čerstvé keksy z keksové planety.", + "[Shipment business name]Supermarket": "Supermarket", + "[Shipment business quote]A gigantic cookie emporium - your very own retail chain.": "Gigantické keksové tržiště - váš vlastní obchodní řetězec.", + "Alchemy lab": "Alchymistická laboratoř", + "alchemy lab": "Alchymistická laboratoř", + "alchemy labs": "alchymistické laboratoře", + "%1 alchemy lab": [ + "%1 alchymistická laboratoř", + "%1 alchymistických laboratoří" + ], + "[Alchemy lab quote]Turns gold into cookies!": "Přetváří zlato na keksy!", + "[Alchemy lab business name]Stock share": "Akciový podíl", + "[Alchemy lab business quote]You're officially on the stock market, and everyone wants a piece!": "Jste oficiálně na akciové burze a všichni chtějí svůj díl!", + "Portal": "Portál", + "portal": "portál", + "portals": "portály", + "%1 portal": [ + "%1 portál", + "%1 portály" + ], + "[Portal quote]Opens a door to the Cookieverse.": "Otevírá bránu do Keksmíru.", + "[Portal business name]TV show": "TV pořad", + "[Portal business quote]Your cookies have their own sitcom! Hilarious baking hijinks set to the cheesiest laughtrack.": "Vaše keksy mají vlastní sitcom! Vtipné příhody z pečení vás rozesmějí stejně spolehlivě, jako když se řekne \"sýr\".", + "Time machine": "Stroj času", + "time machine": "stroj času", + "time machines": "stroje času", + "%1 time machine": [ + "%1 stroj času", + "%1 strojů času" + ], + "[Time machine quote]Brings cookies from the past, before they were even eaten.": "Přinášejte keksy z minulosti, které ještě nikdo nesnědl.", + "[Time machine business name]Theme park": "Zábavní park", + "[Time machine business quote]Cookie theme parks, full of mascots and roller-coasters. Build one, build a hundred!": "Keksový zábavní park plný maskotů a horských drah. Postavte jeden nebo klidně sto!", + "Antimatter condenser": "Antihmotový kondenzátor", + "antimatter condenser": "antihmotový kondenzátor", + "antimatter condensers": "Antihmotové kondenzátory", + "%1 antimatter condenser": [ + "%1 antihmotový kondenzátor", + "%1 antihmotové kondenzátory" + ], + "[Antimatter condenser quote]Condenses the antimatter in the universe into cookies.": "Kondenzuje antihmotu ve vesmíru na keksy.", + "[Antimatter condenser business name]Cookiecoin": "Kekscoin", + "[Antimatter condenser business quote]A virtual currency, already replacing regular money in some small countries.": "Virtuální měna, která v některých menších zemích už teď nahrazuje běžné peníze.", + "Prism": "Prizma", + "prism": "prizma", + "prisms": "prizmata", + "%1 prism": [ + "%1 prizma", + "%1 prizmat" + ], + "[Prism quote]Converts light itself into cookies.": "Samotné světlo přeměňuje na keksy.", + "[Prism business name]Corporate country": "Korporátní země", + "[Prism business quote]You've made it to the top, and you can now buy entire nations to further your corporate greed. Godspeed.": "Dostali jste se na vrchol a nyní můžete rozvíjet svůj korporátní mamon skupováním celých národů. Ať se daří.", + "Chancemaker": "Šancovač", + "chancemaker": "šancovač", + "chancemakers": "šancovače", + "%1 chancemaker": [ + "%1 šancovač", + "%1 šancovačů" + ], + "[Chancemaker quote]Generates cookies out of thin air through sheer luck.": "Generuje keksy jen tak z ničeho, čistě na bázi štěstí.", + "[Chancemaker business name]Privatized planet": "Privatizovaná planeta", + "[Chancemaker business quote]Actually, you know what's cool? A whole planet dedicated to producing, advertising, selling, and consuming your cookies.": "A víte, co je vůbec super? Celá planeta zasvěcená výrobě, propagaci, prodeji a konzumaci vašich keksů.", + "Fractal engine": "Fraktální motor", + "fractal engine": "fraktální motor", + "fractal engines": "fraktální motory", + "%1 fractal engine": [ + "%1 fraktální motor", + "%1 fraktální motory" + ], + "[Fractal engine quote]Turns cookies into even more cookies.": "Přeměňuje keksy na ještě více keksů.", + "[Fractal engine business name]Senate seat": "Místo v senátu", + "[Fractal engine business quote]Only through political dominion can you truly alter this world to create a brighter, more cookie-friendly future.": "Pouze skrze politickou nadvládu můžete skutečně přetvořit svět v příjemnější, keksům přívětivé místo.", + "Javascript console": "Konzole javascript", + "javascript console": "konzole javascript", + "javascript consoles": "Konzole javascript", + "%1 javascript console": [ + "%1 konzole javascript", + "%1 konzole javascript" + ], + "[Javascript console quote]Creates cookies from the very code this game was written in.": "Vytváří keksy přímo z kódu, ve kterém je psána tato hra.", + "[Javascript console business name]Doctrine": "Doktrína", + "[Javascript console business quote]Taking many forms -religion, culture, philosophy- a doctrine may, when handled properly, cause a lasting impact on civilizations, reshaping minds and people and ensuring all future generations share a singular goal - the production, and acquisition, of more cookies.": "Doktrína má mnoho podob - náboženské, kulturní, filozofické - a když se s ní zachází správně, může mít trvalý dopad na celé civilizace. Přetvoří myšlení i lidi a zaručí, že budou veškeré budoucí generace sdílet společný cíl - aby produkovali a získávali více keksů.", + "Idleverse": "Nečinný vesmír", + "idleverse": "nečinný vesmír", + "idleverses": "nečinné vesmíry", + "%1 idleverse": [ + "%1 nečinný vesmír", + "%1 nečinné vesmíry" + ], + "[Idleverse quote]There's been countless other idle universes running alongside our own. You've finally found a way to hijack their production and convert whatever they've been making into cookies!": "Vedle našeho vesmíru existuje i několik dalších, nečinných vesmírů. Konečně jste objevili způsob, jak se nabourat do jejich produkce a cokoliv, co vyrábějí, přeměnit na keksy!", + "[Idleverse business name]Lateral expansions": "Postranní rozvoj", + "[Idleverse business quote]Sometimes the best way to keep going up is sideways. Diversify your ventures through non-cookie investments.": "Někdy je nejlepší postupovat do stran. Zpestřete své podnikání mimokeksovými investicemi.", + "Cortex baker": "Kortexový pekař", + "cortex baker": "kortexový pekař", + "cortex bakers": "kortexoví pekaři", + "%1 cortex baker": [ + "%1 kortexový pekař", + "%1 kortexových pekařů" + ], + "[Cortex baker quote]These artificial brains the size of planets are capable of simply dreaming up cookies into existence. Time and space are inconsequential. Reality is arbitrary.": "Tyto umělé mozky o velikosti planety jsou schopné zhmotnit sny o keksech. Čas a prostor jsou nepodstatné. Realita je svévolná.", + "[Cortex baker business name]Think tank": "Think-tank", + "[Cortex baker business quote]There's only so many ways you can bring in more profit. Or is there? Hire the most brilliant experts in the known universe and let them scrape their brains for you!": "Existuje jen omezený počet způsobů, jak dosáhnout vyššího zisku. Nebo ne? Najměte si ty nejgeniálnější experty v celém známém vesmíru a nechte je, ať si pro vás namáhají mozky!", + "CpS": "K/s", + "cookies/click": "keksy/klik", + "%1 CpS": "%1 K/s", + "golden cookie gains": "zisk zlatých keksů", + "golden cookie frequency": "frekvence zlatých keksů", + "golden cookie duration": "trvání zlatých keksů", + "golden cookie effect duration": "trvání účinku zlatých keksů", + "wrath cookie gains": "zisk červených keksů", + "wrath cookie frequency": "frekvence červených keksů", + "wrath cookie duration": "trvání červených keksů", + "wrath cookie effect duration": "trvání účinku červených keksů", + "reindeer gains": "zisk sobů", + "reindeer frequency": "frekvence sobů", + "reindeer duration": "trvání sobů", + "random drops": "náhodné kapky", + "milk effects": "účinky mléka", + "wrinkler spawn rate": "výskyt vrubounů", + "wrinkler appetite": "hlad vrubounů", + "upgrade costs": "cena vylepšení", + "building costs": "cena budování", + "Clicking is %1% more powerful.": "Klikání je %1% účinnější.", + "All cookie production multiplied by %1.": "Veškerá produkce keksů multiplied by %1.", + "+%1 CpS": "+%1 K/s", + "+%1% base CpS.": "+%1% základ K/s.", + "%1 are twice as efficient.": "%1 jsou twice efektivnější.", + "%1 are %2% more powerful.": "%1 jsou %2% účinnější.", + "Unshackled! +%1% extra production.": "Bez okovů! +%1 % k produkci.", + "Tiered upgrades for %1 provide an extra +%2% production.
Only works with unshackled upgrade tiers.": "Odstupňovaná vylepšení (pro: %1) poskytují +%2 % k produkci.
Funguje pouze s nespoutanými stupni vylepšení.", + "Unshackles all %1-tier upgrades, making them more powerful.
Only applies to unshackled buildings.": "Učiní všechna vylepšení %1. úrovně nespoutanými, a tím zvýší jejich efektivitu.
Pouze platí pro budovy bez okovů.", + "The mouse and cursors are twice as efficient.": "Myš a kurzory jsou twice efektivnější.", + "The mouse and cursors gain +%1 cookies for each non-cursor building owned.": "Myš a kurzory získávají +%1 keksů za každou nekurzorovou budovu, kterou vlastníte.", + "Grandmas gain +%1% CpS for each non-grandma building.": "Babičky získávají +%1% CpS za každou nebabičkovskou budovu.", + "You gain more CpS the more milk you have.": "Získáváte tím více more CpS, čím více máte mléka.", + "Milk is %1% more powerful.": "Mléko je %1% more powerful.", + "Cookie production multiplier +%1%.": "Násobič produkce keksů +%1%.", + "Cookie production multiplier +%1% permanently.": "Násobič produkce keksů +%1% permanently.", + "Cookie production multiplier +%1% per Santa's levels.": "Násobič produkce keksů +%1% per Santa's levels.", + "Cookie production multiplier +%1% for every year Cookie Clicker has existed (currently: +%2%).": "Násobič produkce keksů +%1% za každý rok existence Cookie Clicker (currently: +%2%).", + "Cookie production multiplier +%1% for every building type level %2 or higher.": "Násobič produkce keksů +%1% za každou budovu úrovně %2 nebo vyšší.", + "Clicking gains +%1% of your CpS.": "Klikání přidává +%1% of your CpS.", + "%1 gain +%2% CpS per %3.": "%1 zisk +%2% K/s za %3.", + "Multiplies the gain from %1 by %2.": "Násobí zisk z %1 o %2.", + "Grandma-operated science lab and leisure club.
Grandmas are 4 times as efficient.
Regularly unlocks new upgrades.": "Babičkami ovládaná vědecká laboratoř a volnočasový klub.
Babičky jsou 4 times efektivnější.
Regularly unlocks new upgrades.", + "Each %1 gains +%2 base CpS per %3.": "Každé %1 dává +%2 base CpS per %3.", + "Note: the grandmothers are growing restless. Do not encourage them.": "Poznámka: babičky začínají být neklidné. Nepovzbuzujte je.", + "Note: proceeding any further in scientific research may have unexpected results. You have been warned.": "Poznámka: další postup ve vědeckém výzkumu může mít nečekané následky. Byli jste varováni.", + "Note: this is a bad idea.": "Poznámka: to není dobrý nápad.", + "Warning: purchasing this will have unexpected, and potentially undesirable results!
It's all downhill from here. You have been warned!

Purchase anyway?": "Warning: tato koupě bude mít nečekané a potenciálně nežádoucí následky!
It's all downhill from here. You have been warned!

Stejně koupit?", + "Contains the wrath of the elders, at least for a while.": "Obsahuje hněv prastarých, minimálně na chvíli.", + "Puts a permanent end to the elders' wrath, at the cost of %1% of your CpS.": "Trvale ukončí hněv prastarých za cenu %1% z vašeho K/s.", + "You will get %1% of your CpS back, but the grandmatriarchs will return.": "Získáte nazpět %1% ze svého K/s, ale pramatky se vrátí.", + "Time remaining until pledge runs out:": "Zbývající čas do vypršení tributu:", + "You haven't pledged to the elders yet.": "Zatím jste nedali tribut prastarým.", + "You've pledged to the elders %1 times.": [ + "Prastarým jste dali tribut once.", + "Prastarým jste dali tribut %1 times." + ], + "Research takes only 5 seconds.": "Výzkum zabere jen 5 seconds.", + "Golden cookies appear twice as often and stay twice as long.": "Zlaté keksy se objevují twice as often a zůstávají twice as long.", + "Golden cookies appear %1% more often.": "Zlaté keksy se objevují %1% častěji.", + "Golden cookies appear %1% more often during %2.": "Zlaté keksy se objevují %1% častěji během %2.", + "Golden cookies appear really often.": "Zlaté keksy se objevují really often.", + "Golden cookie effects last twice as long.": "Efekty zlatých keksů trvají twice as long.", + "Golden cookie effects last %1% longer.": "Efekty zlatých keksů trvají %1% longer.", + "Golden cookies stay %1% longer.": "Zlaté keksy zůstávají %1% déle.", + "Golden cookies give %1% more cookies.": "Zlaté keksy dávají %1% více keksů.", + "Wrath cookies give %1% more cookies.": "Keksy hněvu dávají %1% více keksů.", + "+%1% CpS per golden cookie on-screen, multiplicative.": "+%1% CpS za zlatý keks na obrazovce, lze násobit.", + "With no buffs and no golden cookies on screen, selling your most powerful building has %1% chance to summon one.": "Nemáte-li žádná posílení a žádné zlaté keksy na obrazovce, prodej vaší nejsilnější budovy má %1% chance to summon one.", + "Confers various powers to your minigames while active.
See the bottom of each minigame for more details.": "Po dobu své aktivity propůjčuje vašim minihrám různé síly.
Podrobnosti najdete u jednotlivých her dole.", + "Elder pledges last twice as long.": "Tributy prastarým trvají twice tak dlouho.", + "Can toggle upgrades on and off at will in the stats menu.": " V nabídce atributů lze zapnout a vypnout vylepšení.", + "You keep producing cookies even while the game is closed.": "Keksy se produkují i v případě, že je hra zavřená.", + "Unlocks %1% of the potential of your prestige level.": "Odemkne %1% potenciálu úrovně vaší prestiže.", + "Subsequent research will be %1 times as fast.": "Následný výzkum bude %1 times rychlejší.", + "Wrinklers appear %1 times as fast.": "Vrubouni se objevují %1 times rychleji.", + "Wrinklers spawn much more frequently.": "Vrubouni se objevují mnohem častěji.", + "Wrinklers explode into %1% more cookies.": "Vrubouni vybuchnou do %1% more cookies.", + "Unlocks... something.": "Odemyká… něco.", + "In the festive hat, you find...": "Ve slavnostním klobouku nacházíte…", + "a festive test tube
and %1.": "slavnostní zkumavka
a %1.", + "Cost scales with CpS.": "Náklady rostou podle K/s.", + "Cost scales with Santa level.": "Náklady rostou podle úrovně Santy.", + "Cost scales with how many eggs you own.": "Náklady rostou podle toho, kolik vajec vlastníte.", + "Reindeer appear %1% more often.": "Sobi se objevují %1% častěji.", + "Reindeer appear twice as frequently.": "Sobi se objevují twice as frequently.", + "Reindeer are twice as slow.": "Sobi jsou twice as slow.", + "Reindeer give twice as much.": "Sobi dávají twice as much.", + "Buildings sell back for %1% instead of %2%.": "Zpětný prodej budov je za %1% namísto %2%.", + "All buildings are %1% cheaper.": "Všechny budovy jsou %1% cheaper.", + "All upgrades are %1% cheaper.": "Všechna vylepšení jsou %1% cheaper.", + "All buildings and upgrades are %1% cheaper.": "Všechny budovy a vylepšení jsou %1% cheaper.", + "%1 are %2% more efficient and %3% cheaper.": "%1 jsou %2% efektivnější a %3% levnější.", + "Cookie upgrades are %1 times cheaper.": "Vylepšení keksů jsou %1 times cheaper.", + "Random drops are %1% more common.": "Náhodná padnutí jsou %1% more common.", + "Reindeer spawn much more frequently.": "Sobi se objevují mnohem častěji.", + "Allows you to trigger seasonal events at will, for a price.": "Umožňuje vám za určitou cenu trigger seasonal events, kdy chcete. ", + "Triggers %1 season for the next 24 hours.
Triggering another season will cancel this one.
Cost scales with unbuffed CpS and increases with every season switch.": "Spustí %1 season na následujících 24 hodin.
Spuštění dalšího období zruší současné období.
Výše nákladů se odvíjí podle K/s bez posílení a zvyšuje se s každým přepnutím období.", + "Click again to cancel season": "Dalším kliknutím zrušíte období.", + "Seasons now last forever.": "Období nyní trvají věčně.", + "You haven't switched seasons this ascension yet.": "Za toto povznesení jste ještě nepřepnuli období.", + "You've switched seasons once this ascension.": "Za toto povznesení jste once přepnuli období.", + "You've switched seasons %1 times this ascension.": "Za toto povznesení jste %1 times přepnuli období.", + "Cookie production multiplied by 1,000.": "Produkce keksů multiplied by 1,000.", + "Other eggs appear %1% more frequently.": "Jiná vejce se objevují %1% more frequently.", + "Contains a lot of cookies.": "Obsahuje a lot of cookies.", + "The egg bursts into %1 cookies!": "Vejce vybuchne do %1 keksů!", + "You found an egg!": "Našli jste vejce!", + "Eggs drop %1% more often.": "Vejce padají %1% častěji.", + "Christmas cookies drop %1% more often.": "Vánoční keksy padají %1% častěji.", + "Spooky cookies drop %1% more often.": "Strašidelné keksy padají %1% častěji.", + "Heart cookies are %1% more powerful.": "Srdíčkové keksy jsou %1% silnější.", + "You continually gain more CpS the longer you've played in the current ascension.": "V současném postupu neustále získáváte more CpS the longer you've played v současném povznesení.", + "Contains an assortment of fancy biscuits.": "Obsahuje směs luxusních sušenek.", + "Contains an assortment of macarons.": "Obsahuje směs makronek.", + "Contains an assortment of popular biscuits.": "Obsahuje směs oblíbených sušenek.", + "Contains an assortment of rich butter cookies.": "Obsahuje směs pořádně máslových keksů.", + "Contains an assortment of delicious pastries.": "Obsahuje směs vynikajících moučníků.", + "Contains an assortment of...something.": "Obsahuje směs… něčeho.", + "Placing an upgrade in this slot will make its effects permanent across all playthroughs.": "Vložení vylepšení na tuto pozici učiní jeho efekt permanent pro všechny hry.", + "Current boost:": "Současné posílení:", + "Current:": "Současné:", + "Click to activate.": "Aktivujte kliknutím.", + "Pick an upgrade to make permanent": "Zvolte si, které vylepšení bude trvalé.", + "Here are all the upgrades you've purchased last playthrough.
Pick one to permanently gain its effects!
You can reassign this slot anytime you ascend.": "Zde jsou veškerá vylepšení, která jste zakoupili za poslední hru.
Vyberte si jedno, jehož efekty získáte trvale!
Tuto pozici můžete nahradit kdykoliv, když se povznesete.", + "You now keep making cookies while the game is closed, at the rate of %1% of your regular CpS and up to 1 hour after the game is closed.
(Beyond 1 hour, this is reduced by a further %2% - your rate goes down to %3% of your CpS.)": "Nyní keep making cookies while the game is closed, a to rychlostí %1% z vašich běžných K/s a až 1 hour poté, co je hra zavřena.
(Po 1 hodině se toto snižuje o dalších %2% - vaše rychlost klesá na %3% vašich K/s.) ", + "You gain another +%1% of your regular CpS while the game is closed.": "Získáváte dalších +%1% z vašich běžných K/s, když je hra zavřená. ", + "You gain another +%1% of your regular CpS while the game is closed, for a total of %2%.": "Získáváte dalších +%1% z vašich běžných K/s, když je hra zavřená, a to celkově %2%.", + "You start with %1.": "Začínáte s %1.", + "Allows you to purchase a crumbly egg once you have earned 1 million cookies.": "Umožňuje vám zakoupit si crumbly egg, jakmile dosáhnete 1 milionu sušenek.", + "Unlocks the cookie dragon egg.": "Odemyká cookie dragon egg.", + "Synergy upgrades are %1% cheaper.": "Synergická vylepšení jsou %1% cheaper.", + "You retain optimal cookie production while the game is closed for %1 more days.": "Po zavření hry si udržíte optimální produkci keksů po %1 more days.", + "You retain optimal cookie production while the game is closed for twice as long, for a total of %1.": "Po zavření hry si udržíte optimální produkci keksů na dvakrát tak dlouho, a to celkově %1.", + "Unlocks the golden switch, which passively boosts your CpS by %1% but disables golden cookies.": "Odemyká golden switch, který pasivně posílí vaše K/s o %1%, ale deaktivuje zlaté keksy.", + "Turning this on will give you a passive +%1% CpS, but prevents golden cookies from spawning.
Cost is equal to 1 hour of production.": "Zapnutím této volby získáte pasivní +%1% CpS, ale nebudou se objevovat zlaté keksy.
Náklady se rovnají 1 hodině produkce.", + "The switch is currently giving you a passive +%1% CpS; it also prevents golden cookies from spawning.
Turning it off will revert those effects.
Cost is equal to 1 hour of production.": "Tento spínač vám momentálně dává pasivních +%1% CpS; zároveň se nebudou objevovat zlaté keksy.
Vypnutím této volby tyto efekty zrušíte.
Náklady se rovnají 1 hodině produkce.", + "Unlocks the milk selector, letting you pick which milk is displayed under your cookie.
Comes with a variety of basic flavors.": "Odemyká milk selector, který vám umožní vybrat si, jaké mléko se zobrazí pod vaším keksem.
Přichází v celé škále základních příchutí.", + "Contains more exotic flavors for your milk selector.": "Obsahuje exotičtější příchutě pro váš přepínač mléka.", + "Lets you pick what flavor of milk to display.": "Umožňuje vybrat, jaká příchuť mléka se zobrazí.", + "Unlocks the golden cookie sound selector, which lets you pick whether golden cookies emit a sound when appearing or not.": "Odemyká golden cookie sound selector, která vám umožňuje zvolit si, zda zlaté keksy při svém objevení vydají zvuk nebo ne.", + "Lets you change the sound golden cookies make when they spawn.": "Umožňuje změnit zvuk, který vydává zlatá sušenka tehdy, když se objeví.", + "No sound": "Žádný zvuk", + "Chime": "Rozeznít", + "Fortune": "Štěstí", + "Cymbal": "Činel", + "Squeak": "Pískot", + "Unlocks the jukebox, which allows you to play through every sound file in the game.": "Odemkne jukebox, který umožňuje přehrávat všechny zvukové soubory ve hře.", + "Play through the game's sound files!": "Přehrajte si zvukové soubory hry!", + "Play": "Přehrát", + "Stop": "/", + "Pause": "Pauza", + "Shuffle": "Náhodné přehrávání", + "Auto": "Automaticky", + "Loop": "Smyčka", + "Unlocks the background selector, letting you select the game's background.
Comes with a variety of basic flavors.": "Odemkne se background selector, který vám umožní vybrat pozadí hry.
Přichází v celé škále základních příchutí.", + "Lets you pick which wallpaper to display.": "Umožňuje vybrat tapetu, která se má zobrazit.", + "This is the first heavenly upgrade; it unlocks the Heavenly chips system.
Each time you ascend, the cookies you made in your past life are turned into heavenly chips and prestige.
Heavenly chips can be spent on a variety of permanent transcendental upgrades.
Your prestige level also gives you a permanent +1% CpS per level.": "Toto je první nebeská aktualizace; tato aktualizace odemyká systém Heavenly chips.
Po každém vzestupu se sušenky, které jste vytvořili ve svém minulém životě, změní na heavenly chips a prestige.
Heavenly chips můžete utrácet za celou řadu permanentních transcendentálních aktualizací.
Vaše prestige level vám také poskytne permanentní +1% CpS v příslušné úrovni (CpS - počet sušenek za sekundu).", + "You can attract %1 more wrinklers.": "Můžete přitáhnout %1 more wrinklers.", + "While the golden switch is on, you gain an additional +%1% CpS per golden cookie upgrade owned.": "Pokud je zapnutý zlatý přepínač, získáte další +%1% CpS za vaši vlastní aktualizaci se zlatou sušenkou.", + "All upgrades are %1% cheaper per %2.": "Všechny aktualizace jsou o %1% cheaper per %2.", + "Unlocks a new tier of upgrades that affect 2 buildings at the same time.
Synergies appear once you have %1 of both buildings.": "Odemkne se nová úroveň aktualizací, která bude mít vliv na 2 buildings at the same time.
Jakmile budete mít v obou stavbách %1, dojde k synergii.", + "Golden cookies (and all other things that spawn, such as reindeer) have %1% chance of being doubled.": "Zlaté sušenky (a všechny ostatní věci, které se zde objevují, například sobi) mají %1% chance of being doubled.", + "Cookie production reduced to 0.": "Produkce sušenek snížena na 0.", + "Sugar lumps coalesce a whole lot faster.": "Kostky cukru se spojují a whole lot faster.", + "+%1% prestige level effect on CpS.": "Účinek +%1% úrovně prestiže na CpS (počet sušenek za sekundu).", + "+%1% prestige level effect on CpS.
+%2% golden cookie effect duration.
+%3% golden cookie lifespan.": "Účinek +%1% úrovně prestiže na CpS (počet sušenek za sekundu).
+%2% doba trvání účinku zlaté sušenky.
+%3% životnost zlaté sušenky.", + "Each unspent sugar lump (up to %1) gives +%2% CpS.
Note: this means that spending sugar lumps will decrease your CpS until they grow back.
": "Každá nevyčerpaná kostka cukru (až do %1) dává +%2% CpS.
Note: this means that spending sugar lumps will decrease your CpS until they grow back.
", + "Once an ascension, you may use the \"Sugar frenzy\" switch to triple your CpS for 1 hour, at the cost of 1 sugar lump.": "Po vzestupu můžete pomocí přepínače \"Sugar Frenzy\" přepnout na triple your CpS na dobu 1 hodiny; cena 1 sugar lump.", + "Each grandma (up to %1) makes sugar lumps ripen %2 sooner.": "S každou babičkou (až do %1) dozrávají kostky cukru o %2 dříve.", + "Activating this will triple your CpS for 1 hour, at the cost of 1 sugar lump.": "Aktivací této funkce triple your CpS na dobu 1 hodiny, za cenu 1 sugar lump.", + "May only be used once per ascension.": "Může se použít pouze jednou v rámci jednoho vzestupu.", + "activate the sugar frenzy": "Aktivovat Sugar Frenzy", + "Sugar frenzy!": "/", + "CpS x%1 for 1 hour!": "CpS x%1 na 1 hodinu!", + "Garden plants grow every second.
Garden seeds are free to plant.
You can switch soils at any time.": "Zahradní rostliny vyrůstají každou sekundu.
Semena na zahradě můžete sázet zdarma.
Můžete kdykoli přepínat mezi různými půdami.", + "Dropped by %1.": "Sníženo o %1.", + "Dropped by %1 plants.": "Sníženo o %1 rostlin.", + "Must own the %1 upgrade.": "Musíte mít vlastní aktualizaci %1.", + "Sugar lumps are twice as likely to be unusual.": "Kostky cukru jsou velmi neobvyklé twice as likely.", + "+%1% sugar lump growth.": "+%1% růst kostky cukru.", + "Sugar lumps ripen %1 sooner.": "Kostky cukru dozrávají o %1 dříve.", + "Sugar lumps mature %1 sooner.": "Kostky cukru jsou zralé o %1 dříve.", + "Bifurcated sugar lumps appear %1% more often and are %2% more likely to drop 2 lumps.": "Rozdvojené kostky cukru se objevují %1% more often a existuje u nich větší pravděpodobnost %2% more likely uvolnění 2 kostek.", + "Mouse over a wrinkler to see how many cookies are in its stomach.": "Najeďte myší na wrinkler a zjistěte, kolik má v žaludku sušenek.", + "Unlocks the Buy all feature, which lets you instantly purchase every upgrade in your store (starting from the cheapest one).
Also unlocks the Vault, a store section where you can place upgrades you do not wish to auto-buy.": "Odemkne se funkce Buy all, která vám umožní okamžitě kupovat jednotlivé aktualizace ve vašem obchodě (od nejlevnější).
Odemkne se také Vault, sekce obchodu, kde můžete ukládat aktualizace, které si nepřejete automaticky nakupovat.", + "Mouse over an upgrade to see its tier.
Note: only some upgrades have tiers. Tiers are purely cosmetic and have no effect on gameplay.": "Umístěte kurzor nad aktualizaci a podívejte se na její úroveň.
Note: only some upgrades have tiers. Tiers are purely cosmetic and have no effect on gameplay.", + "You now benefit from the boost provided by heralds.
Each herald gives you +1% CpS.
Look on the purple flag at the top to see how many heralds are active at any given time.": "Nyní můžete využít podporu poskytovanou prostřednictvím heralds.
Každý posel vám dává +1% CpS.
Podívejte se nahoru na fialovou vlajku a zjistěte, kolik poslů je v daném okamžiku aktivních.", + "Seasonal random drops have a 1/5 chance to carry over through ascensions.": "Sezónní náhodné poklesy mají 1/5 chance na přenesení prostřednictvím vzestupu.", + "Unlocks extra price information.
Each displayed cost now specifies how long it'll take you to afford it, and how much of your bank it represents.": "Odemyká extra price information.
Každá zobrazená cena nyní určuje, jak dlouho vám bude trvat, než si ji budete moci dovolit, a jakou hodnotu z vaší banky bude představovat.", + "Unlocks the shimmering veil, a switch that passively boosts your CpS by %1%.
You start with the veil turned on; however, it is very fragile, and clicking the big cookie or any golden cookie or reindeer will turn it off, requiring %2 of CpS to turn back on.": "Odemyká shimmering veil, přepínač, který pasivně zvýší vaši hodnotu CpS o %1%.
Začínáte se zapnutým závojem; závoj je však velmi křehký a pouhým kliknutím velkou sušenku nebo na jakoukoli zlatou sušenku nebo na soba tento závoj vypnete, což vyžaduje opětovné zapnutí %2 CpS.", + "Boosts your cookie production by %1% when active.
The veil is very fragile and will break if you click the big cookie or any golden cookies or reindeer.

Once broken, turning the veil back on costs %2 of unbuffed CpS.": "Pokud je závoj aktivní, zvyšuje se produkce sušenek o %1%.
Závoj je velmi křehký a rozbije se, když kliknete na velkou sušenku, na jakoukoli zlatou sušenku nebo na soba.

Jakmile se rozbije, pak opětovné zapnutí závoje stojí %2 nevypuštěné CpS.", + "Has a %1% chance to not break.": "Má %1% šanci nerozbít se.", + "The shimmering veil is more resistant, and has a %1% chance not to break. It also gives +%2% more CpS.": "shimmering veil je odolnější a má šanci %1% chance, že se nerozbije. Poskytuje také o +%2% více CpS.", + "Active.": "Aktivní.", + "The reinforced membrane protects the shimmering veil.": "Zesílená membrána chrání třpytivý závoj.", + "The shimmering veil disappears...": "Třpytivý závoj se ztrácí...", + "Prior to purchasing the %1 upgrade in a run, random drops are %2 times more common.": "Před zakoupením aktualizace %1 v rámci běhu jsou náhodné poklesy %2 times more common.", + "Never forget your %1.": "Nikdy nezapomeňte na %1.", + "Pay close attention to the humble %1.": "Věnujte zvláštní pozornost pokorným %1.", + "You've been neglecting your %1.": "Zanedbáváte své %1.", + "Remember to visit your %1 sometimes.": "Nezapomeňte někdy navštívit %1.", + "You don't know what you have until you've lost it.": "Nikdy nevíte, co máte, dokud to neztratíte.", + "Remember to take breaks.": "Nezapomeňte dělat přestávky.", + "Hey, what's up. I'm a fortune cookie.": "Hej, co se děje? Jsem šťastná sušenka.", + "You think you have it bad? Look at me.": "Myslíš si, že to máš špatné? Podívej se na mě.", + "The news ticker may occasionally have fortunes, which may be clicked for something good.": "Ve zprávách mohou být příležitostně fortunes, na které můžete kliknout a získat něco dobrého.", + "Through clever accounting, this actually makes kitten upgrades %1% cheaper.": "Díky chytrému účtu mohou být aktualizace koťat o %1% cheaper.", + "Unlocks the ability to pet your dragon by clicking on it once hatched.": "Odemkne se možnost pet your dragon kliknutím na vylíhnutého draka.", + "Cost scales with CpS, but %1 times cheaper with a fully-trained dragon.": "Cenová škála s CpS, ale %1krát levnější s plně vyškoleným drakem.", + "Golden cookies may trigger a Dragon Harvest.": "Zlaté sušenky mohou spustit Dragon Harvest.", + "Golden cookies may trigger a Dragonflight.": "Zlaté sušenky mohou spustit Dragonflight.", + "Dragon harvest and Dragonflight are %1% stronger.": "Dračí sklizeň a Dračí let jsou o %1% stronger.", + "Kittens are %1% more effective.": "Koťata jsou o %1% efektivnější.", + "Each kitten upgrade boosts %1 CpS by %2%.": "Každá aktualizace kotěte zvyšuje %1 CpS o %2%.", + "Each rank of milk boosts %1 CpS by %2%.": "Každé pořadí mléka zvyšuje %1 CpS o %2%.", + "Cursor levels boost clicks by %1% each (up to cursor level %2).": "Úrovně kurzoru zvyšují počet kliknutí o %1% (až na úroveň kurzoru %2).", + "%1 are now effective up to cursor level %2.": "%1 jsou nyní účinné až do úrovně kurzoru %2.", + "Seasonal cookies purchased: %1.": "Zakoupené sezónní sušenky: %1.", + "Reindeer cookies purchased: %1.": "Zakoupené sobí sušenky: %1.", + "Eggs purchased: %1.": "Zakoupená vejce: %1.", + "Golden and wrath cookie effect duration +%1%.": "Doba trvání účinku zlatého a červeného keksu +%1%.", + "Golden and wrath cookies appear %1% more.": "Zlaté a červené keksy se objevují %1% více.", + "Golden and wrath cookies appear %1% less.": "Zlaté a červené keksy se objevují %1% méně.", + "Buildings grant -%1% CpS.": "Dotace na budovy -%1% K/s.", + "Selling buildings triggers a buff boosted by how many buildings were sold.": "Prodej budov spustí buff zesílený podle toho, kolik budov se prodalo.", + "Buff boosts clicks by +%1% for every building sold for %2 seconds.": "Buff zesílí kliknutí o +%1% za každou prodanou budovu o %2 vteřin.", + "CpS bonus fluctuating between %1 and %2 over time.": "Bonus K/s se průběžně pohybuje mezi %1 a %2.", + "Effect cycles over %1 hours.": "Účinek cykluje během %1 hodin.", + "Some seasonal effects are boosted.": "Byly posíleny některé sezónní účinky.", + "Large boost.": "Velké zesílení.", + "Medium boost.": "Střední zesílení.", + "Small boost.": "Malé zesílení.", + "Switching seasons is %1% pricier.": "Přepínání sezón je o %1% dražší.", + "Switching seasons is %1% cheaper.": "Přepínání sezón je o %1% levnější.", + "Heavenly chips have %1% less effect.": "Nebeské střípky mají o %1% menší účinek.", + "Buildings produce %1% more.": "Budovy produkují o %1% více.", + "Buildings produce %1% less.": "Budovy produkují o %1% méně.", + "All golden cookies are wrath cookies with a greater chance of a negative effect.": "Všechny zlaté keksy jsou červené keksy s větší šancí negativního účinku.", + "Wrinklers appear %1% faster and digest %2% more cookies.": "Vrubouny se objeví %1% rychleji a spolykají %2% víc keksů.", + "Effect is only active when your total amount of buildings ends with 0.": "Účinek je aktivní jen když počet tvých budov končí na 0.", + "Achievement unlocked": "Dosažená úroveň odemčena", + "Make %1 just from %2.": "Vytvořte %1 pouze z %2.", + "Bake %1 in one ascension.": "Upečte %1 při jednom vzestupu.", + "Bake %1 per second.": "Pečte %1 za sekundu.", + "Have %1.": "Získejte %1.", + "Ascend at least once.": "Proveďte alespoň jeden vzestup.", + "Ascend %1 times.": "Proveďte vzestup %1 times.", + "Ascend with %1 baked.": "Proveďte vzestup s upečeným %1.", + "Make %1 by only having clicked %2 times.": "Vytvořte %1 pouhým kliknutím %2 times.", + "Make %1 with no cookie clicks.": "Vytvořte %1 kliknutím na no sušenky.", + "Get to %1 baked with no upgrades purchased.": "Přejděte na %1 upečené s no upgrades purchased.", + "Get to %1 baked in %2.": "Přejděte na %1 upečené v %2.", + "Make %1 from clicking.": "Vytvořte %1 kliknutím.", + "Sell a grandma.": "Prodejte babičku.", + "Have at least %1 of every building.": "Získejte at least %1 z každé stavby.", + "Have at least 1 of the most expensive object, 2 of the second-most expensive, 4 of the next and so on (capped at %1).": "Získejte alespoň 1 of the most expensive object, 2 of the second-most expensive, 4 of the next a tak dále (omezeno na %1).", + "Have at least 10 of the most expensive object, 20 of the second-most expensive, 30 of the next and so on.": "Získejte alespoň 10 of the most expensive object, 20 of the second-most expensive, 30 of the next a tak dále.", + "Click a golden cookie.": "Klikněte na golden cookie.", + "Click %1.": "Klikněte na %1.", + "Hack in some cookies.": "Seberte nějaké sušenky.", + "Click really, really fast.": "Klikejte opravdu velmi rychle.", + "Have at least %1 of everything.": "Získejte alespoň %1 of everything.", + "Own %1.": "Vlastní %1.", + "Purchase %1.": "Nákup %1.", + "Dunk the cookie.": "Namočte sušenku.", + "Appease the grandmatriarchs at least once.": "Alespoň once archimatrony uklidněte.", + "Appease the grandmatriarchs at least %1 times.": "Alespoň %1 times archimatrony uklidněte.", + "Declare a covenant with the grandmatriarchs.": "Uzavřete smlouvu s archimatronami", + "Own at least %1 grandma types.": "Musíte mít alespoň %1 typů babiček.", + "Unlock 100% of your heavenly chips power.": "Odemkněte 100% své síly nebeských čipů.", + "You have 1 chance in %1 every second of earning this achievement.": "Každou sekundu máte šanci 1 chance in %1 dosáhnout této úrovně.", + "Burst 1 wrinkler.": "Rozbijte 1 wrinkler.", + "Burst %1 wrinklers.": "Rozbijte %1 wrinklers.", + "Unlock every Halloween-themed cookie.
Owning this achievement makes Halloween-themed cookies drop more frequently in future playthroughs.": "Odemkněte every Halloween-themed cookie.
Dosažením této úrovně způsobíte, že sušenky s tématem Halloween budou v budoucích přehrávkách padat častěji.", + "Reach Santa's 7th form.": "Dojděte k Santa's 7th form.", + "Reach Santa's final form.": "Dojděte k Santa's final form.", + "Unlock every Christmas-themed cookie.
Owning this achievement makes Christmas-themed cookies drop more frequently in future playthroughs.": "Odemkněte every Christmas-themed cookie.
Dosažením této úrovně způsobíte, že sušenky s tématem Vánoce budou v budoucích přehrávkách padat častěji.", + "Pop 1 reindeer.": "Zobrazte 1 reindeer.", + "Pop %1 reindeer.": "Zobrazte %1 reindeer.", + "Pop a reindeer during an elder frenzy.": "Zobrazte soba during an elder frenzy.", + "Unlock every Valentine-themed cookie.": "Odemkněte every Valentine-themed cookie.", + "Click the tiny cookie.": "Klikněte na malou sušenku.", + "This is for baking %1 and making it on the local news.": "Toto se týká pečení %1 a zveřejnění v místních zprávách.", + "Name yourself Orteil.
Note: usurpers incur a -%1% CpS penalty until they rename themselves something else.
": "Pojmenujte si Orteil.
Note: usurpers incur a -%1% CpS penalty until they rename themselves something else.
", + "Use an add-on.": "Použijte doplněk add-on.", + "Unlock 1 egg.": "Odemkněte 1 egg.", + "Unlock %1 eggs.": "Odemkněte %1 eggs.", + "Unlock all the eggs.
Owning this achievement makes eggs drop more frequently in future playthroughs.": "Odemkněte all the eggs.
Dosažením této úrovně způsobíte, že vajíčka budou v budoucích přehrávkách padat častěji.", + "Give your bakery a name.": "Pojmenujte svou pekárnu.", + "Click this achievement's slot.": "Klikněte na slot tohoto úspěchu.", + "Complete your dragon's training.": "Proveďte dragon's training.", + "Click on the news ticker %1 times.": "Klikněte na informační panel zpráv %1 times.", + "Own a combined %1 %2 and %3.": "Vlastněte kombinaci %1 %2 a %3.", + "Own %1 upgrades and %2 buildings.": "Vlastněte aktualizace %1 a stavby %2.", + "Own %1 heavenly upgrades.": "Získejte %1 nebeských vylepšení.", + "Burst the near-extinct shiny wrinkler.": "Otevřete téměř vyhynulého shiny wrinkler.", + "Click a golden cookie less than 1 second after it spawns.": "Klikněte na zlatou sušenku less than 1 second after it spawns.", + "Click a golden cookie less than 1 second before it dies.": "Klikněte na zlatou sušenku less than 1 second before it dies.", + "Harvest %1 coalescing sugar lumps.": "Sklizeň %1 coalescing sugar lumps.", + "Successfully harvest a coalescing sugar lump before it's ripe.": "Úspěšná sklizeň spojující se kostky cukru před jejím dozráním.", + "Harvest a bifurcated sugar lump.": "Sklizeň bifurcated sugar lump.", + "Harvest a golden sugar lump.": "Sklizeň golden sugar lump.", + "Harvest a meaty sugar lump.": "Sklizeň meaty sugar lump.", + "Harvest a caramelized sugar lump.": "Sklizeň caramelized sugar lump.", + "Reach level %1 %2.": "Dosáhněte úrovně %1 %2.", + "Cast %1 spells.": "Čarujte %1.", + "Have %1 golden cookies simultaneously.": "Musíte mít současně %1 zlaté sušenky.", + "Manage a cookie legacy for at least a year.": "Vytvořte historii sušenek za dobu at least a year.", + "Harvest %1 mature garden plants.": "Sklizeň zralých zahradních rostlin %1.", + "Fill every tile of the biggest garden plot with plants.": "Zaplňte jednotlivé dlaždice největšího zahradního pozemku rostlinami.", + "Unlock every garden seed.": "Odemkněte veškeré zahradní osivo.", + "Convert a complete seed log into sugar lumps by sacrificing your garden to the sugar hornets.
Owning this achievement makes seeds %1% cheaper, plants mature %2% sooner, and plant upgrades drop %3% more.": "Převeďte kompletní protokol semen do formy kostek cukru tím, že obětujete svoji zahradu pro cukrové sršně.
Díky tomuto postupu budou semena %1% cheaper, rostliny budou dozrávat %2% sooner a dojde také k poklesu aktualizací rostlin %3% more.", + "Ascend with exactly %1.": "Dosahujte přesného počtu %1.", + "Have your reinforced membrane protect the shimmering veil.": "Vaše reinforced membrane musí chránit shimmering veil.", + "Own every fortune upgrade.
Owning this achievement makes fortunes appear twice as often; unlocked fortune upgrades also have a %1% chance to carry over after ascending.": "Získejte každou aktualizaci fortune upgrade.
Díky tomu se budou šťastné sušenky objevovat twice as often; odemčené aktualizace šťastných sušenek také představují %1% chance pro přenesení po vzestupu.", + "Make your first stock market profit.": "Dosáhněte svého prvního zisku na akciovém trhu.", + "Own at least %1 of a stock market good.": "Získejte alespoň %1 na akciovém trhu.", + "Own at least %1 of every stock market good.": "Získejte alespoň %1 na každém akciovém trhu.", + "Make a day of CpS ($%1) in 1 stock market sale.": "Zajistěte a day CpS ($%1) v 1 akciovém prodeji.", + "Spend a day of CpS ($%1) in 1 stock market purchase.": "Utraťte a day CpS ($%1) v 1 akciovém nákupu.", + "Have your stock market profits surpass a whole year of CpS ($%1).": "Nechte své zisky na akciovém trhu překonat hodnotu a whole year CpS ($%1).", + "Unlock the highest-tier stock market headquarters.": "Odemkněte highest-tier ústředí akciových trhů s nejvyšší úrovní.", + "Have your stock market profits surpass $%1.": "Nechte své zisky na akciovém trhu překonat hodnotu $%1.", + "Own %1 kitten upgrades.": "Získejte do vlastnictví aktualizace koťat %1.", + "Find the forgotten madeleine.": "Najděte forgotten madeleine.", + "Click one of Santa's helper grandmas during Christmas season.": "Klikněte během vánočního období na jednu ze Santových babiček pomocnic.", + "Frenzy": "/", + "Elder frenzy": "Starší Frenzy", + "Click frenzy": "Klikněte na Frenzy", + "Clot": "Sraženina", + "Dragon Harvest": "Dračí sklizeň", + "Everything must go": "Všechno musí jít pryč", + "Cursed finger": "Prokletý prst", + "Cookie storm": "Sušenková bouře", + "Sugar blessing": "Cukrové požehnání", + "Haggler's luck": "Hagglerovo štěstí", + "Haggler's misery": "Hagglerovo utrpení", + "Crafty pixies": "Šikovní skřítci", + "Nasty goblins": "Oškliví skřítci", + "Magic adept": "Magický adept", + "Magic inept": "Kouzelný nešika", + "Devastation": "Devastace", + "Sugar frenzy": "Cukrové šílenství (Frenzy)", + "Loan %1": "Půjčka %1", + "Loan %1 (interest)": "Půjčka %1 (úrok)", + "%1 Power!": "%1 Výkon!", + "%1 Burden!": "%1 Zátež!", + "Cookie production x%1 for %2!": "Produkce sušenek x%1 za %2!", + "Cookie production +%1% for %2!": "Produkce sušenek +%1% za %2!", + "Cookie production %1% slower for %2!": "Produkce sušenek %1% pomalejší za %2!", + "Cookie production halved for %1!": "Poloviční produkce sušenek za %1!", + "Your %1 are boosting your CpS!": "Vaše %1 zvyšují hodnoty CpS!", + "Your %1 are rusting your CpS!": "Vaše %1 znehodnocují CpS!", + "All buildings are %1% cheaper for %2!": "Všechny stavby jsou o %1% levnější pro %2!", + "All buildings are %1% pricier for %2!": "Všechny stavby jsou o %1% dražší pro %2!", + "All upgrades are %1% cheaper for %2!": "Všechny aktualizace jsou o %1% levnější pro %2!", + "All upgrades are %1% pricier for %2!": "Všechny aktualizace jsou o %1% dražší pro %2!", + "Cookie production halted for %1,
but each click is worth %2 of CpS.": "Produkce sušenek byla zastavena u %1,
ale každé kliknutí má hodnotu %2 CpS.", + "Clicking power x%1 for %2!": "Výkonnost klikání x%1 pro %2!", + "Clicking power +%1% for %2!": "Výkonnost klikání +%1% pro %2!", + "Cookies everywhere!": "Sušenky jsou všude!", + "You find %1% more golden cookies for the next %2.": "Můžete najít o %1% více zlatých sušenek v dalším %2.", + "Spells backfire %1 times less for %2.": "Počet nepodařených kouzel %1krát nižší u %2.", + "Spells backfire %1 times more for %2.": "Počet nepodařených kouzel %1krát vyšší u %2.", + "can be done once every %1": "je možné udělat každých %1", + "usable again in %1": "znovu použitelné za %1", + "+%1/s": "/", + "Next tick in %1.": "Další tiknutí za %1.", + "Initializing...": "Zahajování...", + "View %1": "Zobrazit %1", + "Close %1": "Zavřít %1", + "Details:": "Podrobnosti:", + "Effects:": "Účinky:", + "Effect is active.": "Účinek je aktivní.", + "Effect is inactive.": "Účinek není aktivní.", + "Current bonus:": "Aktuální bonus:", + "Garden": "Zahrada", + "Baker's wheat": "Pekařská pšenice", + "[Baker's wheat quote]A plentiful crop whose hardy grain is used to make flour for pastries.": "Bohatá plodina, jejíž odolné zrno se používá k výrobě mouky pro pečivo.", + "Thumbcorn": "Obrazec Thumbcorn", + "[Thumbcorn quote]A strangely-shaped variant of corn. The amount of strands that can sprout from one seed is usually in the single digits.": "Zvláštní varianta kukuřice. Počty pramenů, které mohou klíčit z jednoho semene, se obvykle počítají v jednotkách.", + "Cronerice": "Obrazec Cronerice", + "[Cronerice quote]Not only does this wrinkly bulb look nothing like rice, it's not even related to it either; its closest extant relative is the weeping willow.": "Tato vrásčitá struktura vůbec nevypadá jako rýže, ani s ní jakkoli nesouvisí; nejbližší existující příbuznou je smuteční vrba.", + "Gildmillet": "Zlaté proso", + "[Gildmillet quote]An ancient staple crop, famed for its golden sheen. Was once used to bake birthday cakes for kings and queens of old.": "Starodávná základní plodina známá svým zlatým leskem. Kdysi se používala k pečení narozeninových dortů pro krále a královny.", + "Ordinary clover": "Obyčejný jetel", + "[Ordinary clover quote]Trifolium repens, a fairly mundane variety of clover with a tendency to produce four leaves. Such instances are considered lucky by some.": "Trifolium repens, poměrně obyčejná odrůda jetele s tendencí vytváření čtyř listů. Někteří lidé považují takové případy za šťastné.", + "Golden clover": "Zlatý jetel", + "[Golden clover quote]A variant of the ordinary clover that traded its chlorophyll for pure organic gold. Tragically short-lived, this herb is an evolutionary dead-end - but at least it looks pretty.": "Varianta obyčejného jetele, který však vyměnil svůj chlorofyl za čisté organické zlato. Díky tragicky krátké životnosti představuje tato bylina vývojovou slepou uličku - ale aspoň vypadá hezky.", + "Shimmerlily": "Třpytivka", + "[Shimmerlily quote]These little flowers are easiest to find at dawn, as the sunlight refracting in dew drops draws attention to their pure-white petals.": "Tyto malé květy uvidíte nejlépe za úsvitu, protože sluneční světlo lámající se v kapkách rosy upozorňuje na jejich čistě bílé okvětní lístky.", + "Elderwort": "Trpasličí bezinka", + "[Elderwort quote]A very old, long-forgotten subspecies of edelweiss that emits a strange, heady scent. There is some anecdotal evidence that these do not undergo molecular aging.": "Velmi starý, dávno zapomenutý poddruh protěže vydávající podivnou a opojnou vůni. Existují určité neoficiální důkazy, že tyto látky neprocházejí molekulárním stárnutím.", + "Bakeberry": "Pečivo BakeBerry", + "[Bakeberry quote]A favorite among cooks, this large berry has a crunchy brown exterior and a creamy red center. Excellent in pies or chicken stews.": "Tato velká plodina je oblíbená mezi kuchaři, má křupavý hnědý exteriér a krémově červený střed. Je vynikající v koláčích nebo v kuřecím masu.", + "Chocoroot": "Čokoládový kořen", + "[Chocoroot quote]A tangly bramble coated in a sticky, sweet substance. Unknown genetic ancestry. Children often pick these from fields as-is as a snack.": "Zapletený keř pokrytý lepkavou sladkou látkou. Neznámý genetický původ. Děti často tento keř obírají na polích a dávají si jeho plody na svačinu.", + "White chocoroot": "Bílý čokoládový kořen", + "[White chocoroot quote]A pale, even sweeter variant of the chocoroot. Often impedes travelers with its twisty branches.": "Bledá a ještě sladší varianta čokoládového kořene. Cestovatelům často ztěžují přístup jeho zkroucené větve.", + "White mildew": "Bílá plíseň", + "[White mildew quote]A common rot that infests shady plots of earth. Grows in little creamy capsules. Smells sweet, but sadly wilts quickly.": "Běžná hniloba, která zamořuje pozemky ve stínu. Roste v malých krémových tobolkách. Má sladkou vůni, ale velmi rychle vadne.", + "Brown mold": "Hnědá plíseň", + "[Brown mold quote]A common rot that infests shady plots of earth. Grows in odd reddish clumps. Smells bitter, but thankfully wilts quickly.": "Běžná hniloba, která zamořuje pozemky ve stínu. Roste v nevzhledných načervenalých shlucích. Má hořkou vůni a velmi rychle vadne.", + "Meddleweed": "MeddleWeed", + "[Meddleweed quote]The sign of a neglected farmland, this annoying weed spawns from unused dirt and may sometimes spread to other plants, killing them in the process.": "Známka zanedbané zemědělské půdy; tento nepříjemný plevel se objevuje na nepoužívaných nečistotách a někdy se může rozšířit do dalších rostlin, které v tomto procesu zabije.", + "Whiskerbloom": "Modifikátor Whiskerbloom", + "[Whiskerbloom quote]Squeezing the translucent pods makes them excrete a milky liquid, while producing a faint squeak akin to a cat's meow.": "Mačkáním průsvitných lusků způsobíte vylučování mléčné tekutiny a současně dojde k slabému pískotu podobnému kočičímu mňoukání.", + "Chimerose": "Chimeróza", + "[Chimerose quote]Originating in the greener flanks of polar mountains, this beautiful flower with golden accents is fragrant enough to make any room feel a little bit more festive.": "Tato krásná květina pochází ze zelených úbočí polárních hor; má dostatečnou vůni na to, aby vytvořila v místnosti slavnostní atmosféru.", + "Nursetulip": "Tulipán Nursetulip", + "[Nursetulip quote]This flower grows an intricate root network that distributes nutrients throughout the surrounding soil. The reason for this seemingly altruistic behavior is still unknown.": "Tato květina má složitou kořenovou síť, která distribuuje živiny po okolní půdě. Důvod tohoto zdánlivě altruistického chování není dosud znám.", + "Drowsyfern": "/", + "[Drowsyfern quote]Traditionally used to brew a tea that guarantees a good night of sleep.": "Tradičně se používá k vaření čaje, který je zárukou dobrého spánku.", + "Wardlichen": "/", + "[Wardlichen quote]The metallic stench that emanates from this organism has been known to keep insects and slugs away.": "Je známo, že kovový zápach vycházející z tohoto organismu odpuzuje hmyz a slimáky.", + "Keenmoss": "/", + "[Keenmoss quote]Fuzzy to the touch and of a vibrant green. In plant symbolism, keenmoss is associated with good luck for finding lost objects.": "Měkký na dotek a zářivě zelený. V rostlinné symbolice je keenmoss spojován se štěstím při hledání ztracených předmětů.", + "Queenbeet": "Queenbeet (královská řepa)", + "[Queenbeet quote]A delicious taproot used to prepare high-grade white sugar. Entire countries once went to war over these.": "Lahodný hlavní kořen používaný k přípravě kvalitního bílého cukru. Kdysi s ním chodívaly do války celé země.", + "Juicy queenbeet": "Šťavnatá královská řepa", + "[Juicy queenbeet quote]A delicious taproot used to prepare high-grade white sugar. Entire countries once went to war over these.
It looks like this one has grown especially sweeter and juicier from growing in close proximity to other queenbeets.": "Lahodný hlavní kořen používaný k přípravě kvalitního bílého cukru. Kdysi s ním chodívaly do války celé země.
Vypadá to, že tato je obzvláště sladká a šťavnatější, protože vyrostla v těsné blízkosti ostatních královských řep.", + "Duketater": "/", + "[Duketater quote]A rare, rich-tasting tuber fit for a whole meal, as long as its strict harvesting schedule is respected. Its starch has fascinating baking properties.": "Vzácná hlíza s bohatou chutí vhodná pro plné pokrmy, pokud je respektován její přísný harmonogram sklizně. Její škrob má fascinující vlastnosti při pečení.", + "Crumbspore": "Crumbspore (lavaš)", + "[Crumbspore quote]An archaic mold that spreads its spores to the surrounding dirt through simple pod explosion.": "Archaická forma, která rozšiřuje své spory na okolní špínu jednoduchou explozí tobolky.", + "Doughshroom": "/", + "[Doughshroom quote]Jammed full of warm spores; some forest walkers often describe the smell as similar to passing by a bakery.": "Blokace teplými spóry; někteří návštěvníci lesů často popisují vůni jako vůni kolem pekárny.", + "Glovemorel": "/", + "[Glovemorel quote]Touching its waxy skin reveals that the interior is hollow and uncomfortably squishy.": "Pocit voskové kůže na dotek odhaluje, že interiér je dutý a nepříjemně měkký.", + "Cheapcap": "Cheapcap (prostá čepice)", + "[Cheapcap quote]Small, tough, and good in omelettes. Some historians propose that the heads of dried cheapcaps were once used as currency in some bronze age societies.": "Malá, odolná a dobrá v omeletách. Někteří historici tvrdí, že hlavy sušených čepic byly kdysi používány jako měna v některých společnostech doby bronzové.", + "Fool's bolete": "Kozák pro blázny", + "[Fool's bolete quote]Named for its ability to fool mushroom pickers. The fool's bolete is not actually poisonous, it's just extremely bland.": "Pojmenován pro svou schopnost oklamat houbaře. Kozák pro blázny není ve skutečnosti jedovatý, je prostě extrémně nevýrazný.", + "Wrinklegill": "/", + "[Wrinklegill quote]This mushroom's odor resembles that of a well-done steak, and is said to whet the appetite - making one's stomach start gurgling within seconds.": "Vůně této houby připomíná dobře upečený steak a říká se, že povzbuzuje chuť k jídlu - během několika sekund začne žaludek bublat.", + "Green rot": "Zelená hniloba", + "[Green rot quote]This short-lived mold is also known as \"emerald pebbles\", and is considered by some as a pseudo-gem that symbolizes good fortune.": "Tyto hniloby, které mají velmi krátkou životnost, jsou známy také jako \"smaragdové oblázky\" a někteří ji považují za pseudo-klenot, který symbolizuje štěstí.", + "Shriekbulb": "/", + "[Shriekbulb quote]A nasty vegetable with a dreadful quirk : its flesh resonates with a high-pitched howl whenever it is hit at the right angle by sunlight, moonlight, or even a slight breeze.": "Ošklivá zelenina se strašlivou manýrou: její dužina rezonuje s vysokým pronikavým zvukem, kdykoli je zasažena ve správném úhlu slunečním světlem, měsíčním světlem nebo dokonce mírným vánkem.", + "Tidygrass": "/", + "[Tidygrass quote]The molecules this grass emits are a natural weedkiller. Its stems grow following a predictable pattern, making it an interesting -if expensive- choice for a lawn grass.": "Molekuly, které tato tráva emituje, jsou přirozeným prostředkem proti plevelu. Její stonky rostou podle předvídatelného vzoru; díky tomu je zajímavá pro trávníky - pokud není drahá.", + "Everdaisy": "/", + "[Everdaisy quote]While promoted by some as a superfood owing to its association with longevity and intriguing geometry, this elusive flower is actually mildly toxic.": "I když ji někteří propagují jako super-potravinu díky dlouhověkosti a zajímavé geometrii, je tato prchavá květina ve skutečnosti mírně toxická.", + "Ichorpuff": "/", + "[Ichorpuff quote]This puffball mushroom contains sugary spores, but it never seems to mature to bursting on its own. Surrounding plants under its influence have a very slow metabolism, reducing their effects but lengthening their lifespan.": "Tato houba pýchavka obsahuje sladké výtrusy, ale zdá se, že nikdy nedozrává sama k prasknutí. Pod jejím vlivem mají okolní rostliny velmi pomalý metabolismus, což snižuje jejich účinky, ale prodlužuje jejich životnost.", + "Garden information": "Informace o zahradě", + "Your garden is frozen, providing no effects.": "Tvoje zahrada je zmrzlá, neposkytuje žádné účinky.", + "Combined effects of all your plants:": "Kombinovaný účinek všech tvých rostlin:", + "None.": "Žádný.", + "-You can cross-breed plants by planting them close to each other; new plants will grow in the empty tiles next to them.
-Unlock new seeds by harvesting mature plants.
-When you ascend, your garden plants are reset, but you keep all the seeds you've unlocked.
-Your garden has no effect and does not grow while the game is closed.": "-Můžeš vyšlechtit nové druhy rostlin tak, že své rostliny zasadíš blízko k sobě; nové rostliny vyrostou na prázdném místě vedle nich.
-Odemkni nová semínka sklizením dorostlých rostlin.
-Když odejdeš na věčnost, rostliny v tvé zahradě se resetují, ale zůstávají ti všechna odemknutá semínka.
-Když je hra zavřená, nemá tvoje zahrada žádný účinek a nic v ní neroste.", + "Harvest all": "Sklidit vše", + "Instantly harvest all plants in your garden.": "Okamžitě skliď všechno v zahradě.", + "%1 to harvest only mature, mortal plants.": "%1 za sklizení dorostlých, smrtelných rostlin.", + "%1 to harvest all mature plants of this type.": "%1 za sklizení dorostlých rostlin tohoto typu.", + "Freeze": "Zmrazit", + "Cryogenically preserve your garden.
Plants no longer grow, spread or die; they provide no benefits.
Soil cannot be changed.
Using this will effectively pause your garden.": "Chraň svou zahradu pomocí mrazu.
Rostliny nerostou, nešíří se ani nehynou; nepřináší žádné výhody.
Zeminu nelze změnit.
Tímto zastavíš činnost zahrady.", + "Garden is frozen. Unfreeze to resume.": "Zahrada je zmrzlá. Pro pokračování ji rozmraz.", + "Sacrifice garden": "Obětovat zahradu", + "A swarm of sugar hornets comes down on your garden, destroying every plant as well as every seed you've unlocked - leaving only a %1 seed.
In exchange, they will grant you %2.
This action is only available with a complete seed log.": "Do tvé zahrady vletí roj cukrových vos, které zničí všechny rostliny i odemknutá semínka – zbývá ti jenom semínko %1.
Na výměnu ti dají %2.
Tato akce je dostupná pouze pro kompletní záznam semínek.", + "Do you REALLY want to sacrifice your garden to the sugar hornets?
You will be left with an empty plot and only the %1 seed unlocked.
In return, you will gain %2 sugar lumps.
": "Opravdu chceš svou zahradu obětovat cukrovým vosám?
Zbyde ti jen prázdné místo a odemknuté semínko %1.
Výměnou získáš %2 hrudek cukru.
", + "Sacrifice!": "Obětovat!", + "You've sacrificed your garden to the sugar hornets, destroying your crops and your knowledge of seeds.
In the remains, you find %1 sugar lumps.": "Obětoval/a jsi zahradu cukrovým vosám, tvoje rostliny i znalosti o semínkách jsou pryč.
V ruinách zahrady najdeš %1 hrudek cukru.", + "immortal": "nesmrtelné", + "predictable growth": "předvídatelný růst", + "surrounding plants (%1x%1) age %2% faster": "okolní rostliny (%1x%1) stárnou %2% rychleji", + "surrounding plants (%1x%1) age %2% slower": "okolní rostliny (%1x%1) stárnou %2% pomaleji", + "surrounding plants (%1x%1) are %2% more efficient": "okolní rostliny (%1x%1) jsou %2% účinnější", + "surrounding plants (%1x%1) are %2% less efficient": "okolní rostliny (%1x%1) jsou %2% méně účinné", + "surrounding tiles (%1x%1) develop no weeds or fungus": "v okolních místech (%1x%1) neroste plevel a houby", + "harvest when mature for +%1 of CpS (max. %2% of bank)": "skliď dorostlé za +%1 z K/s (max. %2% celku)", + "harvest when mature for a sugar lump": "skliď dorostlé za hrudku cukru", + "useless": "k ničemu", + "spreads easily": "rychle se rozrůstá", + "may spread as %1": "může se rozrůst jako %1", + "grows in empty tiles": "roste na prázdných místech", + "may overtake nearby plants": "může udusit okolní rostliny", + "may sometimes drop spores when uprooted": "při vykořenění může vypouštět výtrusy", + "explodes into up to %1 of CpS at the end of its lifecycle (max. %2% of bank)": "na konci životního cyklu exploduje až do %1 K/s (max. %2% celku)", + "cannot handle cold climates; %1% chance to die when frozen": "neprospívá jí chladné klima; %1% při zmrazení hrozí riziko uhynutí", + "the unfortunate result of some plant combinations": "nešťastný důsledek nevhodné kombinace některých rostlin", + "Soil unlocked at %1 farms.": "Zemina odemknutá na %1 farmách.", + "Your field is currently using this soil.": "Na tvém poli je teď tato zemina.", + "You will be able to change your soil again in %1.": "Zeminu budeš moct znovu změnit za %1.", + "Click to use this type of soil for your whole field.": "Klikni pro použití této zeminy na celém poli.", + "Dirt": "Hlína", + "Simple, regular old dirt that you'd find in nature.": "Obyčejná přírodní hlína.", + "Fertilizer": "Hnojivo", + "Soil with a healthy helping of fresh manure. Plants grow faster but are less efficient.": "Zemina se zdravou dávkou čerstvého hnoje. Rostliny rostou rychleji, ale jsou méně účinné.", + "Clay": "Jíl", + "Rich soil with very good water retention. Plants grow slower but are more efficient.": "Vydatná zemina, která dobře zadržuje vodu. Rostliny rostou pomaleji, ale jsou účinnější.", + "Pebbles": "Oblázky", + "Dry soil made of small rocks tightly packed together. Not very conducive to plant health, but whatever falls off your crops will be easy to retrieve.
Useful if you're one of those farmers who just want to find new seeds without having to tend their garden too much.": "Suchá zemina z drobných kamínků. Rostlinám moc neprospívá, ale snadno na ní všechno najdeš.
Ideální pro zahradníky, kteří chtějí mít všechna semínka bez toho, aby se o zahradu nějak zvlášť starali.", + "Wood chips": "Hobliny", + "Soil made of bits and pieces of bark and sawdust. Helpful for young sprouts to develop, not so much for mature plants.": "Zemina z kousků dřevěné kůry a hoblin. Hodí se pro mladé rostlinky, pro starší ale ne.", + "tick every %1": "tiknutí každou %1", + "passive plant effects": "pasivní účinky rostlin", + "weed growth": "růst plevele", + "%1% chance of collecting seeds automatically when plants expire": "%1% šance posbírání semínek automaticky, když rostlina uhyne", + "plants spread and mutate %1 times more": "rostliny se rozrůstají a mutují %1 krát více", + "Plant effects:": "Účinky rostlin:", + "Possible mutations:": "Možné mutace:", + "Average lifespan:": "Průměrná délka života:", + "Average maturation:": "Průměrná doba zrání:", + "Mature in about %1": "Doroste za zhruba %1", + "Decays in about %1": "Uhyne za zhruba %1", + "Does not decay": "Neuhyne", + "%1 tick": [ + "%1 tiknutí", + "%1 tiknutí" + ], + "Weed": "Plevel", + "Fungus": "Houba", + "Planting cost:": "Cena za výsev:", + "%1 of CpS,
minimum %2": "%1 z K/s,
minimum %2", + "%1 seed": "%1 semínko", + "Click to select this seed for planting.": "Klikni pro zasazení tohoto semínka.", + "This seed cannot be planted.": "Toto semínko není možné zasadit.", + "Empty tile": "Prázdné místo", + "This tile of soil is empty.
Pick a seed and plant something!": "Toto místo s půdou je prázdné.
Vyber semínko a zasaď ho!", + "Click to plant %1 for %2.": "Klikni a zasaď %1 za %2.", + "%1 to plant multiple.": "%1 pro zasazení několika.", + "Aging multiplier:": "Množič zrání:", + "Effect multiplier:": "Množič účinků:", + "Weeds/fungus repellent:": "Repelent na plevel a houby:", + "This plant is growing here.": "Tady roste tato rostlina.", + "Stage:": "Stádium:", + "bud": "klíček", + "sprout": "výhonek", + "bloom": "květ", + "mature": "dorostlá", + "may reproduce, will drop seed when harvested": "může se množit, při sklizni vyprodukuje semínko", + "Click to harvest.": "Klikni pro sklizení.", + "Click to unearth.": "Klikni pro vykopání.", + "Click to refill your soil timer and trigger 1 plant growth tick with x%1 spread and mutation rate for %2.": "Klikni pro doplnění časovače zeminy a spuštění 1 tiknutí pro růst rostlin s x%1 rychlostí rozšíření a mutace za %2.", + "Unlocked %1 seed.": "Odemknuté %1 semínko.", + "Seeds": "Semínka", + "Tools": "Nástroje", + "Mature plants harvested: %1 (total: %2)": "Sklizené dorostlé rostliny: %1 (celkem: %2)", + "Plot size: %1
(Upgrades with farm level)": "Velikost pozemku: %1
(Vylepšuje se spolu s úrovní farmy)", + "Garden plants age and mutate %1% faster.": "Zahradní rostliny stárnou a mutují o %1 % rychleji.", + "while plant is alive; scales with plant growth": "dokud je rostlina živá, škáluje se s růstem rostliny", + "Dungeon": "Sklep", + "Grimoire": "/", + "This is your magic meter. Each spell costs magic to use.
Your maximum amount of magic varies depending on your amount of Wizard towers, and their level.
Magic refills over time. The lower your magic meter, the slower it refills.": "Tohle je tvůj měřič magie. Za použití každého kouzla musíš zaplatit.
Maximální množství kouzel se odvíjí od počtu tvých Čarodějných věží a jejich úrovně.
Kouzla se postupně doplňují. Čím nižší je tvůj měřič magie, tím pomaleji se doplňuje.", + "Spells cast: %1 (total: %2)": "Použitá kouzla: %1 (celkem: %2)", + "Magic cost:": "Cena kouzel:", + "Chance to backfire:": "Riziko selhání:", + "Effect:": "Účinek:", + "Backfire:": "Selhání:", + "Backfire!": "Selhání!", + "%1 magic": "%1 kouzlo", + "+%1% of max magic": "+%1% maxima kouzel", + "Click to refill %1 units of your magic meter for %2.": "Klikni pro doplnění %1 jednotek tvého měřiče magie za %2.", + "Grimoire spells are %1% cheaper but fail %1% more.": "Grimoárová kouzla jsou o %1 % levnější, ale o %1 % častěji selhávají.", + "Conjure Baked Goods": "Vyvolat Pečivo", + "Summon half an hour worth of your CpS, capped at %1% of your cookies owned.": "Vyvolat půl hodiny tvého K/s s limitem %1% keksů, které už máš.", + "Trigger a %1-minute clot and lose %1 minutes of CpS.": "Spusť %1-minutové zdržení a ztrať %1 minut K/s.", + "You magic %1 out of thin air.": "Tvoje kouzlo %1 zničehonic.", + "Summoning failed!": "Vyvolání se nepovedlo!", + "Force the Hand of Fate": "Vymoct Ruku osudu", + "Summon a random golden cookie. Each existing golden cookie makes this spell +%1% more likely to backfire.": "Vyvolat náhodný zlatý keks. S každým existujícím zlatým keksem je +%1% vyšší pravděpodobnost, že kouzlo selže.", + "Summon an unlucky wrath cookie.": "Vyvolat neblahý červený keks.", + "Promising fate!": "Slibný osud!", + "Sinister fate!": "Zlověstný osud!", + "Stretch Time": "Čas", + "All active buffs gain %1% more time (up to %2 more minutes).": "Všechny aktivní buffy získají %1% více času (až %2 minut navíc).", + "All active buffs are shortened by %1% (up to %2 minutes shorter).": "Všechny aktivní buffy se krátí o %1% (až o %2 minut kratší).", + "No buffs to alter!": "Nelze upravit žádné buffy!", + "Zap! Buffs lengthened.": "Bum! Buffy prodlouženy.", + "Fizz! Buffs shortened.": "Bác! Buffy zkráceny.", + "Spontaneous Edifice": "Spontánní stavba", + "The spell picks a random building you could afford if you had twice your current cookies, and gives it to you for free. The building selected must be under %1, and cannot be your most-built one (unless it is your only one).": "Kouzlo náhodně vybere budovu, kterou by sis mohl/a dovolit, kdybys měl/a dvojnásobek keksů než teď, a dá ti ji zadarmo. Zvolená budova musí stát míň než %1 a nesmí to být tvá nejstavěnější (s výjimkou toho, že je tvá jediná).", + "Lose a random building.": "Ztratit náhodnou budovu.", + "No buildings to improve!": "Žádné budovy k vylepšení!", + "Backfired, but no buildings to destroy!": "Selhalo, ale žádné budovy ke zničení!", + "A new %1
bursts out of the ground.": "Nový %1
vyrazí ze země.", + "One of your %1
disappears in a puff of smoke.": "Jeden z tvých %1
zmizí v obláčku kouře.", + "Haggler's Charm": "Smlouvačův přívěsek", + "Upgrades are %1% cheaper for 1 minute.": "Vylepšení jsou na jednu minutu o %1% levnější.", + "Upgrades are %1% more expensive for an hour.": "Vylepšení jsou na hodinu o %1% dražší.", + "Upgrades are cheaper!": "Vylepšení jsou levnější!", + "Upgrades are pricier!": "Vylepšení jsou dražší!", + "Summon Crafty Pixies": "Vyvolat Mazané skřítky", + "Buildings are %1% cheaper for 1 minute.": "Budovy jsou na minutu o %1% levnější.", + "Buildings are %1% more expensive for an hour.": "Budovy jsou na hodinu o %1% dražší.", + "Buildings are cheaper!": "Budovy jsou levnější!", + "Buildings are pricier!": "Budovy jsou dražší!", + "Gambler's Fever Dream": "Sen hráčské horečky", + "Cast a random spell at half the magic cost, with twice the chance of backfiring.": "Použij náhodné kouzlo za půlku magické ceny s dvojnásobným rizikem selhání.", + "No eligible spells!": "Žádná dostupná kouzla!", + "That's too bad!
Magic refunded.": "Škoda!
Cena za kouzlo vrácena.", + "Casting %1
for %2 magic...": "Použití kouzla %1
za %2...", + "Resurrect Abomination": "Vzkřísit ohavnost", + "Instantly summon a wrinkler if conditions are fulfilled.": "Při splnění podmínek okamžitě vyvolá vrubouna.", + "Pop one of your wrinklers.": "Rozprskni jednoho tvého vrubouna.", + "Unable to spawn a wrinkler!": "Nepodařilo se vyvolat vrubouna!", + "Rise, my precious!": "Povstaň, poklade!", + "But no wrinkler was harmed.": "Ale žádnému vrubounovi se nic nestalo.", + "So long, ugly...": "Už je to tak dlouho, hnusáku...", + "Diminish Ineptitude": "Zmenšit neschopnost", + "Spells backfire %1 times less for the next %2 minutes.": "Kouzla v příštích %2 minutách selžou %1 krát méně často.", + "Spells backfire %1 times more for the next %2 minutes.": "Kouzla v příštích %2 minutách selžou %1 krát častěji.", + "Ineptitude diminished!": "Neschopnost zmenšena!", + "Ineptitude magnified!": "Neschopnost navýšena!", + "Pantheon": "/", + "[GOD 1 NAME]Holobore, Spirit of Asceticism": "Holobore, Duch asketismu", + "[GOD 1 QUOTE]An immortal life spent focusing on the inner self, away from the distractions of material wealth.": "Věčný život strávený zaměřením na duchovní záležitosti, daleko od rozptýlení materiálního bohatství.", + "[GOD 2 NAME]Vomitrax, Spirit of Decadence": "Vomitrax, Duch dekadence", + "[GOD 2 QUOTE]This sleazy spirit revels in the lust for quick easy gain and contempt for the value of steady work.": "Z tohohle slizouna odkapává touha po rychlém, snadném zisku a nenávist k poctivé práci.", + "[GOD 3 NAME]Godzamok, Spirit of Ruin": "Godzamok, Duch zkázy", + "[GOD 3 QUOTE]The embodiment of natural disasters. An impenetrable motive drives the devastation caused by this spirit.": "Ztělesnění přírodních katastrof. Ničení způsobená tímto duchem mají neproniknutelný motiv.", + "[GOD 4 NAME]Cyclius, Spirit of Ages": "Cyclius, Duch věků", + "[GOD 4 QUOTE]This spirit knows about everything you'll ever do, and enjoys dispensing a harsh judgment.": "Tento duch ví o všem co děláš a budeš dělat a libuje si v ostré kritice.", + "[GOD 5 NAME]Selebrak, Spirit of Festivities": "Selebrak, Duch oslav", + "[GOD 5 QUOTE]This is the spirit of merry getaways and regretful Monday mornings.": "Duch bujarých večírků a ranního bolehlavu.", + "[GOD 6 NAME]Dotjeiess, Spirit of Creation": "Dotjeiess, Duch stvoření", + "[GOD 6 QUOTE]All things that be and ever will be were scripted long ago by this spirit's inscrutable tendrils.": "Vše přítomné i budoucí bylo dávno napsáno nevyzpytatelnými úponky tohoto ducha.", + "[GOD 7 NAME]Muridal, Spirit of Labor": "Muridal, Duch práce", + "[GOD 7 QUOTE]This spirit enjoys a good cheese after a day of hard work.": "Tento duch si po celodenní dřině rád dopřává dobrý sýr.", + "[GOD 8 NAME]Jeremy, Spirit of Industry": "Jeremy, Duch průmyslu", + "[GOD 8 QUOTE]While this spirit has many regrets, helping you rule the world through constant industrialization is not one of them.": "Lituje spousty věcí, ale rozhodně ne toho, že ti pomáhá vládnout světu prostřednictvím neutuchající industrializace.", + "[GOD 9 NAME]Mokalsium, Mother Spirit": "Mokalsium, Mateřský duch", + "[GOD 9 QUOTE]A caring spirit said to contain itself, inwards infinitely.": "O tomto laskavém duchovi se říká, že ho zajímá hlavně duchovní život.", + "[GOD 10 NAME]Skruuia, Spirit of Scorn": "Skruuia, Duch opovržení", + "[GOD 10 QUOTE]This spirit enjoys poking foul beasts and watching them squirm, but has no love for its own family.": "Tento duch rád popichuje ohavná stvoření a pozoruje, jak se kroutí, ale nemá rád vlastní rodinu.", + "[GOD 11 NAME]Rigidel, Spirit of Order": "Rigidel, Duch pořádku", + "[GOD 11 QUOTE]You will find that life gets just a little bit sweeter if you can motivate this spirit with tidy numbers and properly-filled tax returns.": "Zjistíš, že je život o něco sladší, když se ti podaří namotivovat tohohle ducha s pečlivě srovnaným účetnictvím a správně vyplněnými papíry na finančák.", + "Diamond slot": "Diamantový slot", + "Ruby slot": "Rubínový slot", + "Jade slot": "Nefritový slot", + "empty": "prázdné", + "Release to assign %1 to this slot.": "Uvolni pro přidělení %1 k tomuto slotu.", + "Drag a spirit onto this slot to assign it.": "Pro přidělení přetáhni ducha k tomuto slotu.", + "If a golden cookie is clicked, this spirit is unslotted and all worship swaps will be used up.": "Když klikneš na zlatý keks, tento duch už nebude patřit ke slotu a všechny výměny za uctívání budou využité.", + "Each time you slot a spirit, you use up one worship swap.
If you have 2 swaps left, the next one will refill after %1.
If you have 1 swap left, the next one will refill after %2.
If you have 0 swaps left, you will get one after %3.
Unslotting a spirit costs no swaps.": "Při každém přidělení ducha ke slotu použiješ jednu výměnu za uctívání.
Pokud ti zbývají dvě výměny, další se doplní za %1.
Pokud máš jednu výměnu, další se doplní za %2.
Pokud nemáš žádné výměny, jednu dostaneš za %3.
Oddělení ducha od slotu nic nestojí.", + "Click to refill all your worship swaps for %1.": "Klikni pro doplnění všech svých výměn za uctívání za %1.", + "Worship swaps: %1": "Výměny za uctívání: %1", + "next in %1": "další za %1", + "The jade slot behaves as a ruby slot and the ruby slot behaves as a diamond slot.": "Nefritový slot se chová jako rubínový slot a rubínový slot se chová jako diamantový slot.", + "Stock Market": "Burza", + "[STOCK 1 NAME]Old Mills": "Staré mlýny", + "[STOCK 1 TYPE]Cereals": "Cereálie", + "[STOCK 1 LOGO]CRL": "CRL", + "[STOCK 2 NAME]Cocoa Excavations": "Kakaové vykopávky", + "[STOCK 2 TYPE]Chocolate": "Čokoláda", + "[STOCK 2 LOGO]CHC": "CKL", + "[STOCK 3 NAME]Bovine Industries": "Hovězí průmysl", + "[STOCK 3 TYPE]Butter": "Máslo", + "[STOCK 3 LOGO]BTR": "MSL", + "[STOCK 4 NAME]Candy Trust": "Sladká důvěra", + "[STOCK 4 TYPE]Sugar": "Cukr", + "[STOCK 4 LOGO]SUG": "CKR", + "[STOCK 5 NAME]Hazel Monastery": "Lískový klášter", + "[STOCK 5 TYPE]Nuts": "Ořechy", + "[STOCK 5 LOGO]NUT": "ORC", + "[STOCK 6 NAME]Wacky Reagants": "Šílená činidla", + "[STOCK 6 TYPE]Salt": "Sůl", + "[STOCK 6 LOGO]SLT": "SUL", + "[STOCK 7 NAME]Cosmic Exports": "Kosmický export", + "[STOCK 7 TYPE]Vanilla": "Vanilka", + "[STOCK 7 LOGO]VNL": "VNL", + "[STOCK 8 NAME]Organic Gnostics": "Bio gnostikové", + "[STOCK 8 TYPE]Eggs": "Vejce", + "[STOCK 8 LOGO]EGG": "VJC", + "[STOCK 9 NAME]Dimensional Exchange": "Dimenzionální výměna", + "[STOCK 9 TYPE]Cinnamon": "Skořice", + "[STOCK 9 LOGO]CNM": "SKR", + "[STOCK 10 NAME]Precision Aging": "Precizní zrání", + "[STOCK 10 TYPE]Cream": "Smetana", + "[STOCK 10 LOGO]CRM": "SMT", + "[STOCK 11 NAME]Pectin Research": "Výzkum pektinu", + "[STOCK 11 TYPE]Jam": "Džem", + "[STOCK 11 LOGO]JAM": "DZM", + "[STOCK 12 NAME]Dazzle Corp Ltd.": "Dazzle Corp Ltd.", + "[STOCK 12 TYPE]White chocolate": "Bílá čokoláda", + "[STOCK 12 LOGO]WCH": "BCK", + "[STOCK 13 NAME]Prosperity Hive": "Úl prosperity", + "[STOCK 13 TYPE]Honey": "Med", + "[STOCK 13 LOGO]HNY": "MED", + "[STOCK 14 NAME]Selfmade Bakeries": "Soukromé pekárny", + "[STOCK 14 TYPE]Cookies": "Keksy", + "[STOCK 14 LOGO]CKI": "KKS", + "[STOCK 15 NAME]Figments Associated": "Přidružené výplody", + "[STOCK 15 TYPE]Recipes": "Recepty", + "[STOCK 15 LOGO]RCP": "RCP", + "[STOCK 16 NAME]Polyvalent Acquisitions": "Polyvalentní akvizice", + "[STOCK 16 TYPE]Subsidiaries": "Dceřiné společnosti", + "[STOCK 16 LOGO]SBD": "DSP", + "[STOCK 17 NAME]Great Minds": "Velké hlavy", + "[STOCK 17 TYPE]Publicists": "Publicisté", + "[STOCK 17 LOGO]PBL": "PBL", + "from %1": "od %1", + "%1: currently worth $%2 per unit.": "%1: aktuální hodnota $%2 za jednotku.", + "You currently own %1 (worth $%2).": "Aktuálně dlužíš %1 (hodnota $%2).", + "Your warehouses can store up to %1.": "Do tvých skladů se vejde až %1.", + "You may increase your storage space by upgrading your offices and by buying more %1. You also get %2 extra storage space per %3 level (currently: +%4).": "Skladovací prostory můžeš zvětšit vylepšením kanceláří a nákupem dalších %1. Za každou úroveň %3 (aktuálně: +%4) získáš %2 skladovacího místa navíc.", + "The average worth of this stock and how high it can peak depends on the building it is tied to, along with the level of your %1.": "Průměrná hodnota těchto akcií a její navýšení záleží na tom, ke které patří budově, a také na úrovni %1.", + "%1 the hide button to toggle all other stocks.": "%1 tlačítko pro skrytí pro prohlížení všech ostatních akcií.", + "stock:": "akcie:", + "for $%1 each": "$%1 za každou", + "last bought at
$%1 each": "naposledy zakoupeno za
%1 $ za kus", + "+%1% overhead": "+%1% režijní náklady", + "value:": "hodnota:", + "valued at %1": "hodnoceno na %1", + "you spend:": "tvoje útrata:", + "you earn:": "tvůj výdělek:", + "You cannot buy and sell this stock in the same tick.": "Nemůžeš tyto akcie koupit a zároveň prodat.", + "This is your office.": "Tohle je tvoje kancelář.", + "It is fully upgraded. Its lavish interiors, spanning across innumerable floors, are host to many a decadent party, owing to your nigh-unfathomable wealth.": "Je kompletně vylepšená. Tyto honosné interiéry, které se rozprostírají na nesčetných patrech, jsou dějištěm mnoha dekadentních večírků, které si užíváš díky svému pohádkovému bohatství.", + "Level %1 offices": "Kanceláře úrovně %1", + "Credit garage": "Garáž na kredity", + "Tiny bank": "Malinká banka", + "Loaning company": "Úvěrová společnost", + "Finance headquarters": "Finanční ředitelství", + "International exchange": "Mezinárodní výměna", + "Palace of Greed": "Palác chamtivosti", + "Upgrading will cost you %1.": "Vylepšení tě bude stát %1.", + "Upgrading requires %1.": "Pro vylepšení je potřeba %1.", + "Upgrading will grant you:": "Vylepšením získáš:", + "+1 loan slot": "+1 půjčku", + "+1 opportunity slot": "+1 příležitost", + "+%1 warehouse space for all goods": "+%1 skladiště na veškeré zboží", + "+%1% base warehouse space for all goods": "+%1% základní skladiště na veškeré zboží", + "Brokers:": "Brokeři:", + "A nice broker to trade more cookies.": "Milý broker, se kterým prodáš ještě víc keksů.", + "Hire": "Najmout", + "Buying goods normally incurs overhead costs of %1% extra. Each broker you hire reduces that cost by %2%.": "Nákup zboží s sebou obvykle nese o%1% vyšší režijní náklady.. S každým najatým brokerem tyto náklady snížíš o %2%.", + "Current overhead costs thanks to your brokers: +%1%": "Aktuální režijní náklady díky brokerům: +%1%", + "Buying a broker costs %1 of CpS (that's $%2).": "Pořízení brokera vyjde na %1 K/s (to je $%2).", + "Maximum number of brokers you can own: %1 (the highest amount of grandmas you've owned this run, divided by 10, plus your grandma level)": "Maximální počet brokerů, které můžeš najmout: %1 (nejvyšší počet babiček, které jsi měl/a v tomhle kole, děleno 10, plus tvoje úroveň babiček)", + "Brokers are Wall Street-class grandmas versed in the ways of finance. Stockbroker grandmas work hard and play hard, and will fight telephone in hand to get your clients the best possible deals - with a sizeable profit margin for you, of course.": "Brokeři jsou něco jako babičky, jen s finančními znalostmi z Wall Street. Tyhle výkonné babičky hodně pracují a hodně si hrají a klidně se přetrhnou, aby pro klienty vyřvali co nejlepší podmínky – s pěkným ziskem pro tebe, samozřejmě.", + "Hiring a new broker will cost you %1.": "Pořízení brokera tě bude stát %1.", + "Take out %1": "Vyndat %1", + "Loan #%1": "Půjčka #%1", + "a modest loan": "menší půjčka", + "Buy that vintage car you've always wanted. Just pay us back.": "Kup si to krásné vintage auto, po kterém tak dlouho toužíš. Vrátíš nám to později.", + "a pawnshop loan": "půjčka ze zastavárny", + "Bad credit? No problem. It's your money, and you need it now.": "Nepůjčili ti? Žádný problém. Jsou to tvoje prachy a ty je potřebuješ hned teď.", + "a retirement loan": "půjčka na důchod", + "Finance your next house, boat, spouse, etc. You've earned it.": "Financuj svůj další dům, loď, partnera nebo cokoliv chceš. Zasloužíš si to.", + "By taking this loan, you will get %1 CpS for the next %2.": "Když půjčku přijmeš, dostaneš %1 K/s na další %2.", + "However, you will get %1 CpS for the next %2 after that.": "Ale pak budeš mít %1 K/s na další %2.", + "You must also pay an immediate downpayment of %1 (%2% of your current bank).": "Navíc musíš složit zálohu %1 (%2% tvého aktuálního majetku).", + "Loan over": "Půjčka vypršela", + "Your loan has expired, and you must now repay the interest.": "Platnost tvé půjčky vypršela a ty teď musíš vrátit úroky.", + "Line style": "Styl čáry", + "Color mode": "Barevný režim", + "Toggle speed": "Rychlost přepínání", + "Click to refill your opportunity timer (and give a quick burst to your economy) for %1.": "Klikni pro doplnění časovače příležitostí (a rychle nakopni svou ekonomiku) za %1.", + "Profits: %1. All prices are in $econds of your highest raw cookies per second.": "Zisky: %1. Všechny ceny jsou v $ekundách tvé nejvyšší hodnoty syrových keksů za sekundu.", + "The stock market is more chaotic.": "Akciový trh je chaotičtější.", + "[Upgrade name 0]Reinforced index finger": "Zesílený ukazováček", + "[Upgrade name 1]Carpal tunnel prevention cream": "Krém na prevenci proti karpálnímu tunelu", + "[Upgrade name 2]Ambidextrous": "Obouruký, obojetný", + "[Upgrade name 3]Thousand fingers": "Tisíc prstů", + "[Upgrade name 4]Million fingers": "Milion prstů", + "[Upgrade name 5]Billion fingers": "Miliarda prstů", + "[Upgrade name 6]Trillion fingers": "Trilion prstů", + "[Upgrade name 7]Forwards from grandma": "Zprávy přeposlané od babičky", + "[Upgrade name 8]Steel-plated rolling pins": "Ocelové válečky", + "[Upgrade name 9]Lubricated dentures": "Promazané zubní protézy", + "[Upgrade name 10]Cheap hoes": "Levné motyky", + "[Upgrade name 11]Fertilizer": "Hnojivo", + "[Upgrade name 12]Cookie trees": "Stromy se sušenkami", + "[Upgrade name 13]Sturdier conveyor belts": "Silnější dopravníkové pásy", + "[Upgrade name 14]Child labor": "Dětská práce", + "[Upgrade name 15]Sweatshop": "Cukrárna", + "[Upgrade name 16]Sugar gas": "Cukrový plyn", + "[Upgrade name 17]Megadrill": "Megadrill", + "[Upgrade name 18]Ultradrill": "Ultradrill", + "[Upgrade name 19]Vanilla nebulae": "Vanilkové mlhoviny", + "[Upgrade name 20]Wormholes": "Červí díry", + "[Upgrade name 21]Frequent flyer": "Frequent flyer", + "[Upgrade name 22]Antimony": "Antimon", + "[Upgrade name 23]Essence of dough": "Esence těsta", + "[Upgrade name 24]True chocolate": "Pravá čokoláda", + "[Upgrade name 25]Ancient tablet": "Starověký tablet", + "[Upgrade name 26]Insane oatling workers": "Šílení dělníci", + "[Upgrade name 27]Soul bond": "Pouto duše", + "[Upgrade name 28]Flux capacitors": "Flux kondenzátory", + "[Upgrade name 29]Time paradox resolver": "Řešení časového paradoxu", + "[Upgrade name 30]Quantum conundrum": "Quantum Conundrum", + "[Upgrade name 31]Kitten helpers": "Pomocníci pro koťata", + "[Upgrade name 32]Kitten workers": "Pracovníci s koťaty", + "[Upgrade name 33]Plain cookies": "Jednoduché sušenky", + "[Upgrade name 34]Sugar cookies": "Cukrové sušenky", + "[Upgrade name 35]Oatmeal raisin cookies": "Ovesné vločky s rozinkami", + "[Upgrade name 36]Peanut butter cookies": "Sušenky s arašídovým máslem", + "[Upgrade name 37]Coconut cookies": "Kokosové sušenky", + "[Upgrade name 38]White chocolate cookies": "Sušenky s bílou čokoládou", + "[Upgrade name 39]Macadamia nut cookies": "Sušenky s makadamovými ořechy", + "[Upgrade name 40]Double-chip cookies": "Sušenky s dvojitým čipem", + "[Upgrade name 41]White chocolate macadamia nut cookies": "Sušenky s makadamovými ořechy a s bílou čokoládou", + "[Upgrade name 42]All-chocolate cookies": "Celo-čokoládové sušenky", + "[Upgrade name 43]Quadrillion fingers": "Kvadrilion prstů", + "[Upgrade name 44]Prune juice": "Ovocná šťáva", + "[Upgrade name 45]Genetically-modified cookies": "Geneticky upravené sušenky", + "[Upgrade name 46]Radium reactors": "Rádiové reaktory", + "[Upgrade name 47]Ultimadrill": "Ultimadrill", + "[Upgrade name 48]Warp drive": "Warp ovládání", + "[Upgrade name 49]Ambrosia": "Ambrózie", + "[Upgrade name 50]Sanity dance": "Zdravý tanec", + "[Upgrade name 51]Causality enforcer": "Prosazovatel příčinné souvislosti", + "[Upgrade name 52]Lucky day": "Šťastný den", + "[Upgrade name 53]Serendipity": "Šťastná náhoda", + "[Upgrade name 54]Kitten engineers": "Kočičí inženýři", + "[Upgrade name 55]Dark chocolate-coated cookies": "Sušenky potažené tmavou čokoládou", + "[Upgrade name 56]White chocolate-coated cookies": "Sušenky potažené bílou čokoládou", + "[Upgrade name 57]Farmer grandmas": "Farmářské babičky", + "[Upgrade name 58]Miner grandmas": "Hornické babičky", + "[Upgrade name 59]Worker grandmas": "Dělnické babičky", + "[Upgrade name 60]Cosmic grandmas": "Kosmické babičky", + "[Upgrade name 61]Transmuted grandmas": "Transmutované babičky", + "[Upgrade name 62]Altered grandmas": "Změněné babičky", + "[Upgrade name 63]Grandmas' grandmas": "Babičky babiček", + "[Upgrade name 64]Bingo center/Research facility": "Bingo centrum / výzkumné zařízení", + "[Upgrade name 65]Specialized chocolate chips": "Specializované čokoládové lupínky", + "[Upgrade name 66]Designer cocoa beans": "Značkové kakaové boby", + "[Upgrade name 67]Ritual rolling pins": "Rituální válečky", + "[Upgrade name 68]Underworld ovens": "Pece z podsvětí", + "[Upgrade name 69]One mind": "Jedna mysl", + "[Upgrade name 70]Exotic nuts": "Exotické ořechy", + "[Upgrade name 71]Communal brainsweep": "Komunální vzdělávání Communal Brainsweep", + "[Upgrade name 72]Arcane sugar": "Tajemný cukr", + "[Upgrade name 73]Elder Pact": "Pakt starších", + "[Upgrade name 74]Elder Pledge": "Slib starších", + "[Upgrade name 75]Plastic mouse": "Plastová myš", + "[Upgrade name 76]Iron mouse": "Železná myš", + "[Upgrade name 77]Titanium mouse": "Titanová myš", + "[Upgrade name 78]Adamantium mouse": "Myš Adamantium", + "[Upgrade name 79]Ultrascience": "Ultrascience", + "[Upgrade name 80]Eclipse cookies": "Sušenky se zatměním", + "[Upgrade name 81]Zebra cookies": "Zebrové sušenky", + "[Upgrade name 82]Quintillion fingers": "Kvintilion prstů", + "[Upgrade name 83]Gold hoard": "Zlatý poklad", + "[Upgrade name 84]Elder Covenant": "Smlouva starších", + "[Upgrade name 85]Revoke Elder Covenant": "Odvolat smlouvu starších", + "[Upgrade name 86]Get lucky": "Hodně štěstí", + "[Upgrade name 87]Sacrificial rolling pins": "Obětní válečky", + "[Upgrade name 88]Snickerdoodles": "Skořicové sušenky", + "[Upgrade name 89]Stroopwafels": "Oplatkový dezert Stroopwafels", + "[Upgrade name 90]Macaroons": "Makaróny", + "[Upgrade name 91]Neuromancy": "Neuromancie", + "[Upgrade name 92]Empire biscuits": "Oplatky Empire", + "[Upgrade name 93]British tea biscuits": "Britské čajové sušenky", + "[Upgrade name 94]Chocolate british tea biscuits": "Čokoládové britské čajové sušenky", + "[Upgrade name 95]Round british tea biscuits": "Kulaté britské čajové sušenky", + "[Upgrade name 96]Round chocolate british tea biscuits": "Kulaté čokoládové britské čajové sušenky", + "[Upgrade name 97]Round british tea biscuits with heart motif": "Kulaté britské čajové sušenky s motivem srdce", + "[Upgrade name 98]Round chocolate british tea biscuits with heart motif": "Kulaté čokoládové britské čajové sušenky s motivem srdce", + "[Upgrade name 99]Sugar bosons": "Cukrové bosony", + "[Upgrade name 100]String theory": "Teorie strun", + "[Upgrade name 101]Large macaron collider": "Velký makaronový urychlovač", + "[Upgrade name 102]Big bang bake": "Pečení s velkým třeskem", + "[Upgrade name 103]Antigrandmas": "Anti-babičky", + "[Upgrade name 104]Madeleines": "Cukrovinky Madeleine", + "[Upgrade name 105]Palmiers": "Cukrovinky Palmiers", + "[Upgrade name 106]Palets": "Palety", + "[Upgrade name 107]Sablés": "Sablés (písek)", + "[Upgrade name 108]Kitten overseers": "Dozor nad koťaty", + "[Upgrade name 109]Sextillion fingers": "Sextilion prstů", + "[Upgrade name 110]Double-thick glasses": "Dvojité brýle", + "[Upgrade name 111]Gingerbread scarecrows": "Strašáci se zázvorovým chlebem", + "[Upgrade name 112]Recombobulators": "Rekombobulátory", + "[Upgrade name 113]H-bomb mining": "Těžba s vodíkovými bombami", + "[Upgrade name 114]Chocolate monoliths": "Čokoládové monolity", + "[Upgrade name 115]Aqua crustulae": "Aqua Crustulae", + "[Upgrade name 116]Brane transplant": "Transplantace mozku", + "[Upgrade name 117]Yestermorrow comparators": "Komparátory YesterMorrow", + "[Upgrade name 118]Reverse cyclotrons": "Reverzní cyklotrony", + "[Upgrade name 119]Unobtainium mouse": "Myš Unobtainium", + "[Upgrade name 120]Caramoas": "Caramoas", + "[Upgrade name 121]Sagalongs": "Sagalongs", + "[Upgrade name 122]Shortfoils": "Fólie Shortfoils", + "[Upgrade name 123]Win mints": "Výherní mincovny", + "[Upgrade name 124]Perfect idling": "Dokonalý volnoběh", + "[Upgrade name 125]Fig gluttons": "Fíkové gluttony", + "[Upgrade name 126]Loreols": "Loreoly", + "[Upgrade name 127]Jaffa cakes": "Jaffské koláče", + "[Upgrade name 128]Grease's cups": "Mazací kelímky", + "[Upgrade name 129]Heavenly chip secret": "Záhada nebeského čipu", + "[Upgrade name 130]Heavenly cookie stand": "Stánek s nebeskými sušenkami", + "[Upgrade name 131]Heavenly bakery": "Nebeská pekárna", + "[Upgrade name 132]Heavenly confectionery": "Nebeské cukrovinky", + "[Upgrade name 133]Heavenly key": "Nebeský klíč", + "[Upgrade name 134]Skull cookies": "Sušenky s lebkou", + "[Upgrade name 135]Ghost cookies": "Sušenky s duchem", + "[Upgrade name 136]Bat cookies": "Sušenky s netopýrem", + "[Upgrade name 137]Slime cookies": "Sušenky Slime", + "[Upgrade name 138]Pumpkin cookies": "Dýňové sušenky", + "[Upgrade name 139]Eyeball cookies": "Sušenky s očními bulvami", + "[Upgrade name 140]Spider cookies": "Pavoučí sušenky", + "[Upgrade name 141]Persistent memory": "Trvalá paměť", + "[Upgrade name 142]Wrinkler doormat": "Wrinkler Doormat", + "[Upgrade name 143]Christmas tree biscuits": "Keksy s vánočním stromečkem", + "[Upgrade name 144]Snowflake biscuits": "Keksy se sněhovými vločkami", + "[Upgrade name 145]Snowman biscuits": "Keksy se sněhulákem", + "[Upgrade name 146]Holly biscuits": "Keksy Holly", + "[Upgrade name 147]Candy cane biscuits": "Sušenky Candy Cane", + "[Upgrade name 148]Bell biscuits": "Keksy se zvonečkem", + "[Upgrade name 149]Present biscuits": "Dárkové keksy", + "[Upgrade name 150]Gingerbread men": "Perníkoví mužíčci", + "[Upgrade name 151]Gingerbread trees": "Perníkové stromy", + "[Upgrade name 152]A festive hat": "Slavnostní klobouk", + "[Upgrade name 153]Increased merriness": "Bujaré veselí", + "[Upgrade name 154]Improved jolliness": "Vylepšené veselí", + "[Upgrade name 155]A lump of coal": "Kostka uhlí", + "[Upgrade name 156]An itchy sweater": "Svědivý svetr", + "[Upgrade name 157]Reindeer baking grounds": "Sobí pečení", + "[Upgrade name 158]Weighted sleighs": "Vážené saně", + "[Upgrade name 159]Ho ho ho-flavored frosting": "Poleva s příchutí ho ho ho", + "[Upgrade name 160]Season savings": "Sezónní úspory", + "[Upgrade name 161]Toy workshop": "Workshop s hračkami", + "[Upgrade name 162]Naughty list": "Zlobivý seznam", + "[Upgrade name 163]Santa's bottomless bag": "Santova bezedná taška", + "[Upgrade name 164]Santa's helpers": "Santovi pomocníci", + "[Upgrade name 165]Santa's legacy": "Santův odkaz", + "[Upgrade name 166]Santa's milk and cookies": "Santovo mléko a sušenky", + "[Upgrade name 167]Reindeer season": "Sobí sezóna", + "[Upgrade name 168]Santa's dominion": "Santova nadvláda", + "[Upgrade name 169]Pure heart biscuits": "Sušenky pro čisté srdce", + "[Upgrade name 170]Ardent heart biscuits": "Sušenky pro žhavé srdce", + "[Upgrade name 171]Sour heart biscuits": "Sušenky pro kyselé srdce", + "[Upgrade name 172]Weeping heart biscuits": "Sušenky pro plačtivé srdce", + "[Upgrade name 173]Golden heart biscuits": "Sušenky pro zlaté srdce", + "[Upgrade name 174]Eternal heart biscuits": "Sušenky pro věčné srdce", + "[Upgrade name 175]Gem polish": "Leštěný klenot", + "[Upgrade name 176]9th color": "9. barva", + "[Upgrade name 177]Chocolate light": "Čokoládové světlo", + "[Upgrade name 178]Grainbow": "Grainbow", + "[Upgrade name 179]Pure cosmic light": "Čisté kosmické světlo", + "[Upgrade name 180]Rainbow grandmas": "Duhové babičky", + "[Upgrade name 181]Season switcher": "Sezónní změny", + "[Upgrade name 182]Festive biscuit": "Slavnostní sušenka", + "[Upgrade name 183]Ghostly biscuit": "Strašidelná sušenka", + "[Upgrade name 184]Lovesick biscuit": "Sušenky Lovesick", + "[Upgrade name 185]Fool's biscuit": "Bláznivá sušenka", + "[Upgrade name 186]Eternal seasons": "Věčná období", + "[Upgrade name 187]Kitten managers": "Správci koťat", + "[Upgrade name 188]Septillion fingers": "Septilion prstů", + "[Upgrade name 189]Octillion fingers": "Oktilion prstů", + "[Upgrade name 190]Eludium mouse": "Myš Eludium", + "[Upgrade name 191]Wishalloy mouse": "Myš Wishalloy", + "[Upgrade name 192]Aging agents": "Látky proti stárnutí", + "[Upgrade name 193]Pulsar sprinklers": "Postřikovače Pulsar", + "[Upgrade name 194]Deep-bake process": "Proces hlubokého pečení", + "[Upgrade name 195]Coreforge": "Coreforge", + "[Upgrade name 196]Generation ship": "Loď Generace", + "[Upgrade name 197]Origin crucible": "Původní kelímek", + "[Upgrade name 198]Deity-sized portals": "Portály božstva", + "[Upgrade name 199]Far future enactment": "Cesta do daleké budoucnosti", + "[Upgrade name 200]Nanocosmics": "Nano-kosmos", + "[Upgrade name 201]Glow-in-the-dark": "Světlo ve tmě", + "[Upgrade name 202]Rose macarons": "Růžové makaróny", + "[Upgrade name 203]Lemon macarons": "Citronové makaróny", + "[Upgrade name 204]Chocolate macarons": "Čokoládové makaróny", + "[Upgrade name 205]Pistachio macarons": "Pistáciové makaróny", + "[Upgrade name 206]Hazelnut macarons": "Makaróny s lískovými oříšky", + "[Upgrade name 207]Violet macarons": "Fialové makaróny", + "[Upgrade name 208]Magic shenanigans": "Kouzelné vylomeniny", + "[Upgrade name 209]Bunny biscuit": "Bunny sušenky", + "[Upgrade name 210]Chicken egg": "Slepičí vejce", + "[Upgrade name 211]Duck egg": "Kachní vejce", + "[Upgrade name 212]Turkey egg": "Krůtí vejce", + "[Upgrade name 213]Quail egg": "Křepelčí vejce", + "[Upgrade name 214]Robin egg": "Vejce drozda", + "[Upgrade name 215]Ostrich egg": "Pštrosí vejce", + "[Upgrade name 216]Cassowary egg": "Vejce Cassowary", + "[Upgrade name 217]Salmon roe": "Lososí jikry", + "[Upgrade name 218]Frogspawn": "Žabí potěr", + "[Upgrade name 219]Shark egg": "Žraločí vejce", + "[Upgrade name 220]Turtle egg": "Želví vejce", + "[Upgrade name 221]Ant larva": "Larva mravence", + "[Upgrade name 222]Golden goose egg": "Zlaté husí vejce", + "[Upgrade name 223]Faberge egg": "Vejce Faberge", + "[Upgrade name 224]Wrinklerspawn": "Exploze wrinklerů", + "[Upgrade name 225]Cookie egg": "Vejce pro sušenky", + "[Upgrade name 226]Omelette": "Omeleta", + "[Upgrade name 227]Chocolate egg": "Čokoládové vejce", + "[Upgrade name 228]Century egg": "Vejce Century", + "[Upgrade name 229]\"egg\"": "\"vejce\"", + "[Upgrade name 230]Caramel macarons": "Karamelové makaróny", + "[Upgrade name 231]Licorice macarons": "Lékořicové makaróny", + "[Upgrade name 232]Taller tellers": "Vyšší pokladníci", + "[Upgrade name 233]Scissor-resistant credit cards": "Kreditní karty odolné proti stříhání", + "[Upgrade name 234]Acid-proof vaults": "Kyselinovzdorné trezory", + "[Upgrade name 235]Chocolate coins": "Čokoládové mince", + "[Upgrade name 236]Exponential interest rates": "Exponenciální úrokové sazby", + "[Upgrade name 237]Financial zen": "Finanční zen", + "[Upgrade name 238]Golden idols": "Zlaté idoly", + "[Upgrade name 239]Sacrifices": "Oběti", + "[Upgrade name 240]Delicious blessing": "Lahodné požehnání", + "[Upgrade name 241]Sun festival": "Sluneční slavnost", + "[Upgrade name 242]Enlarged pantheon": "Zvětšený Panteon", + "[Upgrade name 243]Great Baker in the sky": "Skvělý pekař na obloze", + "[Upgrade name 244]Pointier hats": "Klobouky Pointier", + "[Upgrade name 245]Beardlier beards": "Vousy Beardlier", + "[Upgrade name 246]Ancient grimoires": "Starověké grimoiry", + "[Upgrade name 247]Kitchen curses": "Kuchyňské kletby", + "[Upgrade name 248]School of sorcery": "Škola čarodějnictví", + "[Upgrade name 249]Dark formulas": "Temné receptury", + "[Upgrade name 250]Banker grandmas": "Bankéřské babičky", + "[Upgrade name 251]Priestess grandmas": "Babičky kněžky", + "[Upgrade name 252]Witch grandmas": "Čarodějnické babičky", + "[Upgrade name 253]Tin of british tea biscuits": "Plechovka britských čajových sušenek", + "[Upgrade name 254]Box of macarons": "Krabice makarónů", + "[Upgrade name 255]Box of brand biscuits": "Krabice značkových sušenek", + "[Upgrade name 256]Pure black chocolate cookies": "Čistě černé čokoládové sušenky", + "[Upgrade name 257]Pure white chocolate cookies": "Čistě bílé čokoládové sušenky", + "[Upgrade name 258]Ladyfingers": "Dámské prsty", + "[Upgrade name 259]Tuiles": "Čokoládové chipsy Tuiles", + "[Upgrade name 260]Chocolate-stuffed biscuits": "Čokoládové sušenky", + "[Upgrade name 261]Checker cookies": "Šachovnicové sušenky", + "[Upgrade name 262]Butter cookies": "Máslové sušenky", + "[Upgrade name 263]Cream cookies": "Smetanové sušenky", + "[Upgrade name 264]Permanent upgrade slot I": "Slot pro trvalé aktualizace I", + "[Upgrade name 265]Permanent upgrade slot II": "Slot pro trvalé aktualizace II", + "[Upgrade name 266]Permanent upgrade slot III": "Slot pro trvalé aktualizace III", + "[Upgrade name 267]Permanent upgrade slot IV": "Slot pro trvalé aktualizace IV", + "[Upgrade name 268]Permanent upgrade slot V": "Slot pro trvalé aktualizace V", + "[Upgrade name 269]Starspawn": "Starspawn", + "[Upgrade name 270]Starsnow": "Starsnow", + "[Upgrade name 271]Starterror": "Starterror", + "[Upgrade name 272]Starlove": "Starlove", + "[Upgrade name 273]Startrade": "Startrade", + "[Upgrade name 274]Angels": "Andělé", + "[Upgrade name 275]Archangels": "Archandělé", + "[Upgrade name 276]Virtues": "Ctnosti", + "[Upgrade name 277]Dominions": "Ovládané oblasti", + "[Upgrade name 278]Cherubim": "Cherubíni", + "[Upgrade name 279]Seraphim": "Serafíni", + "[Upgrade name 280]God": "Bůh", + "[Upgrade name 281]Twin Gates of Transcendence": "Dvojitá brána transcendence", + "[Upgrade name 282]Heavenly luck": "Nebeské štěstí", + "[Upgrade name 283]Lasting fortune": "Trvalé štěstí", + "[Upgrade name 284]Decisive fate": "Rozhodující osud", + "[Upgrade name 285]Divine discount": "Božská sleva", + "[Upgrade name 286]Divine sales": "Božský prodej", + "[Upgrade name 287]Divine bakeries": "Božské pekárny", + "[Upgrade name 288]Starter kit": "Startovací balíček", + "[Upgrade name 289]Starter kitchen": "Startovací kuchyně", + "[Upgrade name 290]Halo gloves": "Halo rukavice", + "[Upgrade name 291]Kitten angels": "Kočičí andělé", + "[Upgrade name 292]Unholy bait": "Nesvatá návnada", + "[Upgrade name 293]Sacrilegious corruption": "Svatokrádežná korupce", + "[Upgrade name 294]Xtreme walkers": "Chodci Xtreme", + "[Upgrade name 295]Fudge fungus": "Houba Fudge", + "[Upgrade name 296]Planetsplitters": "Rozdělovače planet", + "[Upgrade name 297]Cyborg workforce": "Pracovní síla Cyborg", + "[Upgrade name 298]Way of the wallet": "Možnosti peněženky", + "[Upgrade name 299]Creation myth": "Mýtus o stvoření", + "[Upgrade name 300]Cookiemancy": "Dosažené úrovně Cookiemancy", + "[Upgrade name 301]Dyson sphere": "Dysonova sféra", + "[Upgrade name 302]Theory of atomic fluidity": "Teorie atomové tekutosti", + "[Upgrade name 303]End of times back-up plan": "Konec záložního plánu", + "[Upgrade name 304]Great loop hypothesis": "Hypotéza velké smyčky", + "[Upgrade name 305]The Pulse": "Impulz", + "[Upgrade name 306]Lux sanctorum": "Lux Sanctorum", + "[Upgrade name 307]The Unbridling": "Nespoutaná energie", + "[Upgrade name 308]Wheat triffids": "Pšeničné trifidy", + "[Upgrade name 309]Canola oil wells": "Zdroje oleje Canola", + "[Upgrade name 310]78-hour days": "78hodinové dny", + "[Upgrade name 311]The stuff rationale": "Odůvodnění věci", + "[Upgrade name 312]Theocracy": "Teokracie", + "[Upgrade name 313]Rabbit trick": "Králičí trik", + "[Upgrade name 314]The final frontier": "Poslední hranice", + "[Upgrade name 315]Beige goo": "Béžová goo", + "[Upgrade name 316]Maddening chants": "Šílené pokřikování", + "[Upgrade name 317]Cookietopian moments of maybe": "Čekání na možné chvilky se sušenkami", + "[Upgrade name 318]Some other super-tiny fundamental particle? Probably?": "Nějaká další velmi malá základní částice? Pravděpodobně?", + "[Upgrade name 319]Reverse shadows": "Reverzní stíny", + "[Upgrade name 320]Kitten accountants": "Kočičí účetní", + "[Upgrade name 321]Kitten specialists": "Kočičí specialisté", + "[Upgrade name 322]Kitten experts": "Kočičí experti", + "[Upgrade name 323]How to bake your dragon": "Jak upéct draka", + "[Upgrade name 324]A crumbly egg": "Drolivé vejce", + "[Upgrade name 325]Chimera": "Chiméra", + "[Upgrade name 326]Tin of butter cookies": "Plechovka máslových sušenek", + "[Upgrade name 327]Golden switch": "Zlatý spínač", + "[Upgrade name 328]Classic dairy selection": "Klasický výběr mléčných výrobků", + "[Upgrade name 329]Fanciful dairy selection": "Vymyšlený výběr mléčných výrobků", + "[Upgrade name 330]Dragon cookie": "Dračí sušenka", + "[Upgrade name 331]Golden switch [off]": "Zlatý spínač [vypnuto]", + "[Upgrade name 332]Golden switch [on]": "Zlatý spínač [zapnuto]", + "[Upgrade name 333]Milk selector": "Volič mléka", + "[Upgrade name 334]Milk chocolate butter biscuit": "Sušenka s mléčnou čokoládou", + "[Upgrade name 335]Dark chocolate butter biscuit": "Sušenka s hořkou čokoládou", + "[Upgrade name 336]White chocolate butter biscuit": "Sušenka s bílou čokoládou a s máslem", + "[Upgrade name 337]Ruby chocolate butter biscuit": "Sušenka s rubínovou čokoládou a s máslem", + "[Upgrade name 338]Gingersnaps": "Zázvorové keksy", + "[Upgrade name 339]Cinnamon cookies": "Skořicové sušenky", + "[Upgrade name 340]Vanity cookies": "Sušenky Vanity", + "[Upgrade name 341]Cigars": "Doutníky", + "[Upgrade name 342]Pinwheel cookies": "Větrníky", + "[Upgrade name 343]Fudge squares": "Cukrovinkové řezy Fudge", + "[Upgrade name 344]Digits": "Číslice", + "[Upgrade name 345]Butter horseshoes": "Máslové podkovy", + "[Upgrade name 346]Butter pucks": "Máslové puky", + "[Upgrade name 347]Butter knots": "Máslové uzly", + "[Upgrade name 348]Butter slabs": "Máslové desky", + "[Upgrade name 349]Butter swirls": "Máslové víry", + "[Upgrade name 350]Shortbread biscuits": "Křehké sušenky", + "[Upgrade name 351]Millionaires' shortbreads": "Milionářské křehké chleby", + "[Upgrade name 352]Caramel cookies": "Karamelové sušenky", + "[Upgrade name 353]Belphegor": "Belfegor", + "[Upgrade name 354]Mammon": "Mamon", + "[Upgrade name 355]Abaddon": "Abaddon", + "[Upgrade name 356]Satan": "Satan", + "[Upgrade name 357]Asmodeus": "Asmodeus", + "[Upgrade name 358]Beelzebub": "Belzebub", + "[Upgrade name 359]Lucifer": "Lucifer", + "[Upgrade name 360]Golden cookie alert sound": "Zvuk výstrahy zlaté sušenky", + "[Upgrade name 361]Golden cookie sound selector": "Volič zvuku zlaté sušenky", + "[Upgrade name 362]Basic wallpaper assortment": "Základní sortiment tapet", + "[Upgrade name 363]Legacy": "Odkaz", + "[Upgrade name 364]Elder spice": "Starší koření", + "[Upgrade name 365]Residual luck": "Zbytkové štěstí", + "[Upgrade name 366]Fantasteel mouse": "Myš Fantasteel", + "[Upgrade name 367]Nevercrack mouse": "Myš Nevercrack", + "[Upgrade name 368]Five-finger discount": "Sleva s pěti prsty", + "[Upgrade name 369]Future almanacs": "Budoucí almanachy", + "[Upgrade name 370]Rain prayer": "Dešťová modlitba", + "[Upgrade name 371]Seismic magic": "Seismická magie", + "[Upgrade name 372]Asteroid mining": "Těžba asteroidů", + "[Upgrade name 373]Quantum electronics": "Kvantová elektronika", + "[Upgrade name 374]Temporal overclocking": "Časové přetaktování", + "[Upgrade name 375]Contracts from beyond": "Dálkové smlouvy", + "[Upgrade name 376]Printing presses": "Tiskařské lisy", + "[Upgrade name 377]Paganism": "Pohanství", + "[Upgrade name 378]God particle": "Božské částice", + "[Upgrade name 379]Arcane knowledge": "Tajemné znalosti", + "[Upgrade name 380]Magical botany": "Magická botanika", + "[Upgrade name 381]Fossil fuels": "Fosilní paliva", + "[Upgrade name 382]Shipyards": "Loděnice", + "[Upgrade name 383]Primordial ores": "Prvotní rudy", + "[Upgrade name 384]Gold fund": "Zlatý fond", + "[Upgrade name 385]Infernal crops": "Pekelné plodiny", + "[Upgrade name 386]Abysmal glimmer": "Propastný záblesk", + "[Upgrade name 387]Relativistic parsec-skipping": "Relativistické přeskakování Parsec", + "[Upgrade name 388]Primeval glow": "Pravěká záře", + "[Upgrade name 389]Extra physics funding": "Doplňková podpora", + "[Upgrade name 390]Chemical proficiency": "Chemická zdatnost", + "[Upgrade name 391]Light magic": "Světelná magie", + "[Upgrade name 392]Mystical energies": "Mystické energie", + "[Upgrade name 393]Synergies Vol. I": "Synergie, sv. I", + "[Upgrade name 394]Synergies Vol. II": "Synergie, sv. II", + "[Upgrade name 395]Heavenly cookies": "Nebeské sušenky", + "[Upgrade name 396]Wrinkly cookies": "Vrásčité sušenky", + "[Upgrade name 397]Distilled essence of redoubled luck": "Destilovaná esence zdvojnásobeného štěstí", + "[Upgrade name 398]Occult obstruction": "Okultní obstrukce", + "[Upgrade name 399]Glucose-charged air": "Vzduch naplněný glukózou", + "[Upgrade name 400]Lavender chocolate butter biscuit": "Sušenka z levandulového čokoládového másla", + "[Upgrade name 401]Lombardia cookies": "Sušenky Lombardia", + "[Upgrade name 402]Bastenaken cookies": "Sušenky Bastenaken", + "[Upgrade name 403]Pecan sandies": "Pekanové sendviče", + "[Upgrade name 404]Moravian spice cookies": "Moravské kořeněné sušenky", + "[Upgrade name 405]Anzac biscuits": "Keksy Anzac", + "[Upgrade name 406]Buttercakes": "Máslové koláče", + "[Upgrade name 407]Ice cream sandwiches": "Zmrzlinové sendviče", + "[Upgrade name 408]Stevia Caelestis": "Stevia Caelestis", + "[Upgrade name 409]Diabetica Daemonicus": "Diabetica Daemonicus", + "[Upgrade name 410]Sucralosia Inutilis": "Sucralosia Inutilis", + "[Upgrade name 411]Lucky digit": "Šťastná číslice", + "[Upgrade name 412]Lucky number": "Šťastné číslo", + "[Upgrade name 413]Lucky payout": "Šťastná výplata", + "[Upgrade name 414]Background selector": "Výběr pozadí", + "[Upgrade name 415]Lucky grandmas": "Šťastné babičky", + "[Upgrade name 416]Your lucky cookie": "Vaše šťastná sušenka", + "[Upgrade name 417]\"All Bets Are Off\" magic coin": "Magická mince \"Všechny sázky jsou vypnuty\"", + "[Upgrade name 418]Winning lottery ticket": "Výherní los", + "[Upgrade name 419]Four-leaf clover field": "Pole čtyřlístku", + "[Upgrade name 420]A recipe book about books": "Kniha receptů", + "[Upgrade name 421]Leprechaun village": "Vesnice skřítků Leprechaun", + "[Upgrade name 422]Improbability drive": "Ovládání nepravděpodobnosti", + "[Upgrade name 423]Antisuperstistronics": "Antisuperstistronics", + "[Upgrade name 424]Gemmed talismans": "Ozdobné talismany", + "[Upgrade name 425]Kitten consultants": "Kočičí konzultanti", + "[Upgrade name 426]Birthday cookie": "Narozeninová sušenka", + "[Upgrade name 427]Armythril mouse": "Myš Armythril", + "[Upgrade name 428]Reverse dementia": "Reverzní demence", + "[Upgrade name 429]Humane pesticides": "Humánní pesticidy", + "[Upgrade name 430]Mole people": "Krtci", + "[Upgrade name 431]Machine learning": "Strojové učení", + "[Upgrade name 432]Edible money": "Jedlé peníze", + "[Upgrade name 433]Sick rap prayers": "Nemocné rapové modlitby", + "[Upgrade name 434]Deluxe tailored wands": "Luxusní hůlky na míru", + "[Upgrade name 435]Autopilot": "Autopilot", + "[Upgrade name 436]The advent of chemistry": "Příchod chemie", + "[Upgrade name 437]The real world": "Skutečný svět", + "[Upgrade name 438]Second seconds": "Další sekundy", + "[Upgrade name 439]Quantum comb": "Kvantový hřeben", + "[Upgrade name 440]Crystal mirrors": "Křišťálová zrcadla", + "[Upgrade name 441]Bunnypedes": "Bunnypedes", + "[Upgrade name 442]Kitten assistants to the regional manager": "Kočičí asistenti regionálního manažera", + "[Upgrade name 443]Charm quarks": "Kouzelné kvarky", + "[Upgrade name 444]Pink biscuits": "Růžové sušenky", + "[Upgrade name 445]Whole-grain cookies": "Celozrnné sušenky", + "[Upgrade name 446]Candy cookies": "Cukrovinky", + "[Upgrade name 447]Big chip cookies": "Sušenky s velkým čipem", + "[Upgrade name 448]One chip cookies": "Sušenky s jedním čipem", + "[Upgrade name 449]Sugar baking": "Cukrové pečení", + "[Upgrade name 450]Sugar craving": "Touha po cukru", + "[Upgrade name 451]Sugar aging process": "Proces stárnutí cukru", + "[Upgrade name 452]Sugar frenzy": "Cukrové šílenství (Frenzy)", + "[Upgrade name 453]Sprinkles cookies": "Sušenky Sprinkles", + "[Upgrade name 454]Peanut butter blossoms": "Květy arašídového másla", + "[Upgrade name 455]No-bake cookies": "Nepečené sušenky", + "[Upgrade name 456]Florentines": "Florentské sušenky", + "[Upgrade name 457]Chocolate crinkles": "Čokoládové ohyby", + "[Upgrade name 458]Maple cookies": "Javorové sušenky", + "[Upgrade name 459]Turbo-charged soil": "Přeplňovaná půda", + "[Upgrade name 460]Technobsidian mouse": "Myš Technobsidian", + "[Upgrade name 461]Plasmarble mouse": "Plazmová myš Plasmarble", + "[Upgrade name 462]Kitten marketeers": "Obchodníci s koťaty", + "[Upgrade name 463]Festivity loops": "Slavnostní smyčky", + "[Upgrade name 464]Persian rice cookies": "Perské rýžové sušenky", + "[Upgrade name 465]Norwegian cookies": "Norské sušenky", + "[Upgrade name 466]Crispy rice cookies": "Křupavé rýžové sušenky", + "[Upgrade name 467]Ube cookies": "Sušenky Ube", + "[Upgrade name 468]Butterscotch cookies": "Sušenky Butterscotch", + "[Upgrade name 469]Speculaas": "Speculaas", + "[Upgrade name 470]Elderwort biscuits": "Bezinkové sušenky Elderwort", + "[Upgrade name 471]Bakeberry cookies": "Pekařské sušenky", + "[Upgrade name 472]Duketater cookies": "Sušenky Duketater", + "[Upgrade name 473]Green yeast digestives": "Zelené kvasinky", + "[Upgrade name 474]Fern tea": "Čaj Fern", + "[Upgrade name 475]Ichor syrup": "Sirup Ichor", + "[Upgrade name 476]Wheat slims": "Pšenice zeštíhluje", + "[Upgrade name 477]Synthetic chocolate green honey butter biscuit": "Syntetická čokoládová sušenka ze zeleného medového másla", + "[Upgrade name 478]Royal raspberry chocolate butter biscuit": "Královská malinová čokoládová sušenka s máslem", + "[Upgrade name 479]Ultra-concentrated high-energy chocolate butter biscuit": "Vysoce koncentrovaná a vysokoenergetická čokoládová máslová sušenka", + "[Upgrade name 480]Timeproof hair dyes": "Trvanlivé barvy na vlasy", + "[Upgrade name 481]Barnstars": "Hvězdy na stodole", + "[Upgrade name 482]Mine canaries": "Důlní kanárci", + "[Upgrade name 483]Brownie point system": "Bodový systém Brownie", + "[Upgrade name 484]Grand supercycles": "Velké super-cykly", + "[Upgrade name 485]Psalm-reading": "Čtení žalmů", + "[Upgrade name 486]Immobile spellcasting": "Nehybné kouzlení", + "[Upgrade name 487]Restaurants at the end of the universe": "Restaurace na konci vesmíru", + "[Upgrade name 488]On second thought": "Na druhé zamyšlení", + "[Upgrade name 489]Dimensional garbage gulper": "Dimenzionální koš na odpadky", + "[Upgrade name 490]Additional clock hands": "Další hodinové ručičky", + "[Upgrade name 491]Baking Nobel prize": "Nobelova cena v pečení", + "[Upgrade name 492]Reverse theory of light": "Teorie reverzního světla", + "[Upgrade name 493]Revised probabilistics": "Revidovaná pravděpodobnost", + "[Upgrade name 494]Kitten analysts": "Kočičí analytici", + "[Upgrade name 495]Eye of the wrinkler": "Oko wrinkleru", + "[Upgrade name 496]Inspired checklist": "Inspirovaný kontrolní seznam", + "[Upgrade name 497]Pure pitch-black chocolate butter biscuit": "Čistá čokoládová máslová sušenka, úhlově černá", + "[Upgrade name 498]Chocolate oatmeal cookies": "Čokoládové ovesné sušenky", + "[Upgrade name 499]Molasses cookies": "Melasové sušenky", + "[Upgrade name 500]Biscotti": "Sušenky Biscotti", + "[Upgrade name 501]Waffle cookies": "Vaflové sušenky", + "[Upgrade name 502]Almond cookies": "Mandlové sušenky", + "[Upgrade name 503]Hazelnut cookies": "Sušenky z lískových oříšků", + "[Upgrade name 504]Walnut cookies": "Sušenky z vlašských oříšků", + "[Upgrade name 505]Label printer": "Tiskárna etiket", + "[Upgrade name 506]Good manners": "Slušné chování", + "[Upgrade name 507]Lindworms": "Draci bez křídel (Lindworms)", + "[Upgrade name 508]Bore again": "Nové vrtání", + "[Upgrade name 509]\"Volunteer\" interns": "Stážisté \"dobrovolníci\"", + "[Upgrade name 510]Rules of acquisition": "Pravidla akvizice", + "[Upgrade name 511]War of the gods": "Válka bohů", + "[Upgrade name 512]Electricity": "Elektřina", + "[Upgrade name 513]Universal alphabet": "Univerzální abeceda", + "[Upgrade name 514]Public betterment": "Veřejné zlepšení", + "[Upgrade name 515]Embedded microportals": "Vestavěné mikro-portály", + "[Upgrade name 516]Nostalgia": "Nostalgie", + "[Upgrade name 517]The definite molecule": "Určitá molekula", + "[Upgrade name 518]Light capture measures": "Opatření pro zachycování světla", + "[Upgrade name 519]0-sided dice": "Kostky se stranami - 0", + "[Upgrade name 520]Heralds": "Poslové", + "[Upgrade name 521]Metagrandmas": "Meta-babičky", + "[Upgrade name 522]Metabakeries": "Meta-pekařství", + "[Upgrade name 523]Mandelbrown sugar": "Cukr Mandelbrown", + "[Upgrade name 524]Fractoids": "Fraktoidy", + "[Upgrade name 525]Nested universe theory": "Teorie vnořeného vesmíru", + "[Upgrade name 526]Menger sponge cake": "Menger piškotový dort", + "[Upgrade name 527]One particularly good-humored cow": "Jedna obzvlášť dobře naladěná kráva", + "[Upgrade name 528]Chocolate ouroboros": "Čokoláda Ouroboros", + "[Upgrade name 529]Nested": "Vnořené", + "[Upgrade name 530]Space-filling fibers": "Vlákna vyplňující prostor", + "[Upgrade name 531]Endless book of prose": "Nekonečná kniha prózy", + "[Upgrade name 532]The set of all sets": "Sada všech sad", + "[Upgrade name 533]Recursive mirrors": "Rekurzivní zrcadla", + "[Upgrade name 534]Mice clicking mice": "Klikací myši", + "[Upgrade name 535]Custard creams": "Pudinkové krémy", + "[Upgrade name 536]Bourbon biscuits": "Bourbon sušenky", + "[Upgrade name 537]Keepsakes": "Památky", + "[Upgrade name 538]Mini-cookies": "Mini-sušenky", + "[Upgrade name 539]Sugar crystal cookies": "Cukrové křišťálové sušenky", + "[Upgrade name 540]Box of maybe cookies": "Krabice produktů připomínajících sušenky", + "[Upgrade name 541]Box of not cookies": "Krabice nesušenkových produktů", + "[Upgrade name 542]Box of pastries": "Krabice s pečivem", + "[Upgrade name 543]Profiteroles": "Věnečky", + "[Upgrade name 544]Jelly donut": "Želé kobliha", + "[Upgrade name 545]Glazed donut": "Prosklená kobliha", + "[Upgrade name 546]Chocolate cake": "Čokoládový dort", + "[Upgrade name 547]Strawberry cake": "Jahodový dort", + "[Upgrade name 548]Apple pie": "Jablečný koláč", + "[Upgrade name 549]Lemon meringue pie": "Koláč s citronovou pusinkou", + "[Upgrade name 550]Butter croissant": "Máslový croissant", + "[Upgrade name 551]Cookie dough": "Těsto na sušenky", + "[Upgrade name 552]Burnt cookie": "Spálená sušenka", + "[Upgrade name 553]A chocolate chip cookie but with the chips picked off for some reason": "Čokoládové čipové sušenky; čipy byly z nějakého důvodu vybrány", + "[Upgrade name 554]Flavor text cookie": "Sušenka s příchutí", + "[Upgrade name 555]High-definition cookie": "Sušenky s vysokým rozlišením", + "[Upgrade name 556]Toast": "Toast", + "[Upgrade name 557]Peanut butter & jelly": "Arašídové máslo a želé", + "[Upgrade name 558]Wookies": "Wookies", + "[Upgrade name 559]Cheeseburger": "Cheeseburger", + "[Upgrade name 560]One lone chocolate chip": "Jeden osamělý čokoládový čip", + "[Upgrade name 561]Genius accounting": "Geniální účetnictví", + "[Upgrade name 562]Shimmering veil": "Třpytivý závoj", + "[Upgrade name 563]Shimmering veil [off]": "Třpytivý závoj [vypnuto]", + "[Upgrade name 564]Shimmering veil [on]": "Třpytivý závoj [zapnuto]", + "[Upgrade name 565]Whoopie pies": "Čokoládové koláčky Whoopie", + "[Upgrade name 566]Caramel wafer biscuits": "Karamelové oplatkové sušenky", + "[Upgrade name 567]Chocolate chip mocha cookies": "Moka sušenky s čokoládovými čipy", + "[Upgrade name 568]Earl Grey cookies": "Sušenky Earl Grey", + "[Upgrade name 569]Corn syrup cookies": "Sušenky s kukuřičným sirupem", + "[Upgrade name 570]Icebox cookies": "Sušenky Icebox", + "[Upgrade name 571]Graham crackers": "Grahamové sušenky", + "[Upgrade name 572]Hardtack": "Suchý tvrdý chléb", + "[Upgrade name 573]Cornflake cookies": "Kukuřičné sušenky Cornflake", + "[Upgrade name 574]Tofu cookies": "Sušenky Tofu", + "[Upgrade name 575]Gluten-free cookies": "Bezlepkové sušenky", + "[Upgrade name 576]Russian bread cookies": "Ruské chlebové sušenky", + "[Upgrade name 577]Lebkuchen": "Lebkuchen", + "[Upgrade name 578]Aachener Printen": "Aachener Printen", + "[Upgrade name 579]Canistrelli": "Canistrelli", + "[Upgrade name 580]Nice biscuits": "Pěkné sušenky", + "[Upgrade name 581]French pure butter cookies": "Francouzské sušenky z čistého másla", + "[Upgrade name 582]Petit beurre": "Petit Beurre", + "[Upgrade name 583]Nanaimo bars": "Tyčinky Nanaimo", + "[Upgrade name 584]Berger cookies": "Bergerové sušenky", + "[Upgrade name 585]Chinsuko": "Chinsuko", + "[Upgrade name 586]Panda koala biscuits": "Sušenky Panda Koala", + "[Upgrade name 587]Putri salju": "Putri Salju", + "[Upgrade name 588]Milk cookies": "Mléčné sušenky", + "[Upgrade name 589]Cookie crumbs": "Sušenkové drobky", + "[Upgrade name 590]Chocolate chip cookie": "Sušenky s čokoládovými čipy", + "[Upgrade name 591]Cosmic beginner's luck": "Štěstí kosmického začátečníka", + "[Upgrade name 592]Reinforced membrane": "Vyztužená membrána", + "[Upgrade name 593]Binary grandmas": "Binární babičky", + "[Upgrade name 594]The JavaScript console for dummies": "Konzola JavaScriptu pro modely", + "[Upgrade name 595]64bit arrays": "64bitová pole", + "[Upgrade name 596]Stack overflow": "Přetečení zásobníku", + "[Upgrade name 597]Enterprise compiler": "Autor podniku", + "[Upgrade name 598]Syntactic sugar": "Syntaktický cukr", + "[Upgrade name 599]A nice cup of coffee": "Pěkný šálek kávy", + "[Upgrade name 600]Just-in-time baking": "Včasné pečení Just-in-time", + "[Upgrade name 601]cookies++": "sušenky++", + "[Upgrade name 602]Software updates": "Aktualizace softwaru", + "[Upgrade name 603]Game.Loop": "Game.Loop", + "[Upgrade name 604]eval()": "eval()", + "[Upgrade name 605]Script grannies": "Skriptové babičky", + "[Upgrade name 606]Tombola computing": "Výpočet tomboly", + "[Upgrade name 607]Kruidnoten": "Kruidnoten", + "[Upgrade name 608]Marie biscuits": "Sušenky Marie", + "[Upgrade name 609]Meringue cookies": "Pusinkové sušenky", + "[Upgrade name 610]Pizza": "Pizza", + "[Upgrade name 611]Crackers": "Krekry", + "[Upgrade name 612]Havabreaks": "Havabreaky", + "[Upgrade name 613]Kitten executives": "Kočičí jednatelé", + "[Upgrade name 614]Chai tea cookies": "Čajové sušenky Chai", + "[Upgrade name 615]Yogurt cookies": "Jogurtové sušenky", + "[Upgrade name 616]Thumbprint cookies": "Sušenky Thumbprint", + "[Upgrade name 617]Pizzelle": "Pizzelle", + "[Upgrade name 618]Zilla wafers": "Oplatky Zilla", + "[Upgrade name 619]Dim Dams": "Dim Dams", + "[Upgrade name 620]Candy": "Bonbón", + "[Upgrade name 621]Fortune #001": "Fortune č. 001", + "[Upgrade name 622]Fortune #002": "Fortune č. 002", + "[Upgrade name 623]Fortune #003": "Fortune č. 003", + "[Upgrade name 624]Fortune #004": "Fortune č. 004", + "[Upgrade name 625]Fortune #005": "Fortune č. 005", + "[Upgrade name 626]Fortune #006": "Fortune č. 006", + "[Upgrade name 627]Fortune #007": "Fortune č. 007", + "[Upgrade name 628]Fortune #008": "Fortune č. 008", + "[Upgrade name 629]Fortune #009": "Fortune č. 009", + "[Upgrade name 630]Fortune #010": "Fortune č. 010", + "[Upgrade name 631]Fortune #011": "Fortune č. 011", + "[Upgrade name 632]Fortune #012": "Fortune č. 012", + "[Upgrade name 633]Fortune #013": "Fortune č. 013", + "[Upgrade name 634]Fortune #014": "Fortune č. 014", + "[Upgrade name 635]Fortune #015": "Fortune č. 015", + "[Upgrade name 636]Fortune #016": "Fortune č. 016", + "[Upgrade name 637]Fortune #017": "Fortune č. 017", + "[Upgrade name 638]Fortune #100": "Fortune č. 100", + "[Upgrade name 639]Fortune #101": "Fortune č. 101", + "[Upgrade name 640]Fortune #102": "Fortune č. 102", + "[Upgrade name 641]Fortune #103": "Fortune č. 103", + "[Upgrade name 642]Fortune #104": "Fortune č. 104", + "[Upgrade name 643]Fortune cookies": "Šťastné sušenky Fortune", + "[Upgrade name 644]A really good guide book": "Opravdu dobrý průvodce", + "[Upgrade name 645]Prism heart biscuits": "Hranolové sušenky se srdcem", + "[Upgrade name 646]Kitten wages": "Kočičí mzdy", + "[Upgrade name 647]Pet the dragon": "Pohlaďte draka", + "[Upgrade name 648]Dragon scale": "Dračí stupnice", + "[Upgrade name 649]Dragon claw": "Dračí dráp", + "[Upgrade name 650]Dragon fang": "Dračí tesák", + "[Upgrade name 651]Dragon teddy bear": "Dračí medvídek", + "[Upgrade name 652]Granola cookies": "Sušenky Granola", + "[Upgrade name 653]Ricotta cookies": "Sušenky Ricotta", + "[Upgrade name 654]Roze koeken": "Roze koeken", + "[Upgrade name 655]Peanut butter cup cookies": "Pohárové sušenky s arašídovým máslem", + "[Upgrade name 656]Sesame cookies": "Sezamové sušenky", + "[Upgrade name 657]Taiyaki": "Taiyaki", + "[Upgrade name 658]Vanillekipferl": "Vanillekipferl", + "[Upgrade name 659]Cosmic chocolate butter biscuit": "Kosmická čokoládová máslová sušenka", + "[Upgrade name 660]Nonillion fingers": "Nonilión prstů", + "[Upgrade name 661]Miraculite mouse": "Miraculitová myš", + "[Upgrade name 662]Generation degeneration": "Generování, degenerování", + "[Upgrade name 663]Global seed vault": "Globální trezor semen", + "[Upgrade name 664]Air mining": "Vzduchová těžba", + "[Upgrade name 665]Behavioral reframing": "Behaviorální rámování", + "[Upgrade name 666]Altruistic loop": "Altruistická smyčka", + "[Upgrade name 667]A novel idea": "Nový nápad", + "[Upgrade name 668]Spelling bees": "Soutěž v hláskování", + "[Upgrade name 669]Toroid universe": "Toroidní vesmír", + "[Upgrade name 670]Hermetic reconciliation": "Hermetická rekonciliace", + "[Upgrade name 671]His advent": "Jeho příchod", + "[Upgrade name 672]Split seconds": "Sekundy u rozdělování", + "[Upgrade name 673]Flavor itself": "Samotná příchuť", + "[Upgrade name 674]Light speed limit": "Omezení rychlosti světla", + "[Upgrade name 675]A touch of determinism": "Dotek determinismu", + "[Upgrade name 676]This upgrade": "Tato aktualizace", + "[Upgrade name 677]Your biggest fans": "Vaši největší fanoušci", + "[Upgrade name 678]Battenberg biscuits": "Sušenky Battenberg", + "[Upgrade name 679]Rosette cookies": "Růžičkové sušenky", + "[Upgrade name 680]Gangmakers": "Kolečka Gangmakers", + "[Upgrade name 681]Welsh cookies": "Velšské sušenky", + "[Upgrade name 682]Raspberry cheesecake cookies": "Malinový tvarohový koláč", + "[Upgrade name 683]Alternate grandmas": "Střídavé babičky", + "[Upgrade name 684]Manifest destiny": "Zjevný osud", + "[Upgrade name 685]The multiverse in a nutshell": "Multivesmír v ořechové skořápce", + "[Upgrade name 686]All-conversion": "Celá konverze", + "[Upgrade name 687]Multiverse agents": "Agenti z multivesmíru", + "[Upgrade name 688]Escape plan": "Plán útěku", + "[Upgrade name 689]Game design": "Herní design", + "[Upgrade name 690]Sandbox universes": "Sandboxové vesmíry", + "[Upgrade name 691]Multiverse wars": "Války Multiverse", + "[Upgrade name 692]Mobile ports": "Mobilní porty", + "[Upgrade name 693]Encapsulated realities": "Zapouzdřené reality", + "[Upgrade name 694]Extrinsic clicking": "Vnější klikání", + "[Upgrade name 695]Universal idling": "Univerzální volnoběh", + "[Upgrade name 696]Perforated mille-feuille cosmos": "Děrovaný vesmír mille-feuille", + "[Upgrade name 697]Infraverses and superverses": "Infraverze a superverze", + "[Upgrade name 698]Fortune #018": "Fortune č. 018", + "[Upgrade name 699]Butter biscuit (with butter)": "Máslová sušenka (s máslem)", + "[Upgrade name 700]Visits": "Návštěvy", + "[Upgrade name 701]Reverse-veganism": "Reverzní veganství", + "[Upgrade name 702]Caramel alloys": "Karamelové slitiny", + "[Upgrade name 703]The infinity engine": "Nekonečný motor", + "[Upgrade name 704]Diminishing tax returns": "Redukce v daňovém přiznání", + "[Upgrade name 705]Apparitions": "Zjevení", + "[Upgrade name 706]Wizard basements": "Sklepy čaroděje", + "[Upgrade name 707]Prime directive": "Primární směrnice", + "[Upgrade name 708]Chromatic cycling": "Chromatické cyklování", + "[Upgrade name 709]Domestic rifts": "Domácí neshody", + "[Upgrade name 710]Patience abolished": "Trpělivost byla zrušena", + "[Upgrade name 711]Delicious pull": "Lahodný tah", + "[Upgrade name 712]Occam's laser": "Occamův laser", + "[Upgrade name 713]On a streak": "V pruhu", + "[Upgrade name 714]A box": "Krabice", + "[Upgrade name 715]Hacker shades": "Typy hackerů", + "[Upgrade name 716]Break the fifth wall": "Rozbijte pátou zeď", + "[Upgrade name 717]Cat ladies": "Kočičí dámy", + "[Upgrade name 718]Milkhelp® lactose intolerance relief tablets": "Tablety pro úlevu od intolerance vůči laktóze Milkhelp®", + "[Upgrade name 719]Aura gloves": "Rukavice Aura", + "[Upgrade name 720]Luminous gloves": "Osvětlené rukavice", + "[Upgrade name 721]Bokkenpootjes": "Bokkenpootjes", + "[Upgrade name 722]Fat rascals": "Tlustí darebáci", + "[Upgrade name 723]Ischler cookies": "Sušenky Ischler", + "[Upgrade name 724]Matcha cookies": "Sušenky Matcha", + "[Upgrade name 725]Earl Grey macarons": "Makaróny Earl Grey", + "[Upgrade name 726]Pokey": "Pokey", + "[Upgrade name 727]Cashew cookies": "Sušenky Kešu", + "[Upgrade name 728]Milk chocolate cookies": "Sušenky s mléčnou čokoládou", + "[Upgrade name 729]Brainy grandmas": "Chytré babičky", + "[Upgrade name 730]Principled neural shackles": "Zásadové nervové okovy", + "[Upgrade name 731]Obey": "Poslouchejte", + "[Upgrade name 732]A sprinkle of irrationality": "Špetka racionality", + "[Upgrade name 733]Front and back hemispheres": "Přední a zadní hemisféry", + "[Upgrade name 734]Neural networking": "Neurální propojení", + "[Upgrade name 735]Cosmic brainstorms": "Kosmická mozkotřesení", + "[Upgrade name 736]Megatherapy": "Megaterapie", + "[Upgrade name 737]Synaptic lubricant": "Synaptické mazivo", + "[Upgrade name 738]Psychokinesis": "Psychokineze", + "[Upgrade name 739]Spines": "Páteře", + "[Upgrade name 740]Neuraforming": "Neuraformace", + "[Upgrade name 741]Epistemological trickery": "Epistemologický trik", + "[Upgrade name 742]Every possible idea": "Každá možná myšlenka", + "[Upgrade name 743]Kitchen cabinets": "Kredence", + "[Upgrade name 744]Cookie mulch": "Mulč z keksů", + "[Upgrade name 745]Delicious mineralogy": "Lahodná mineralogie", + "[Upgrade name 746]N-dimensional assembly lines": "N-rozměrné montážní linky", + "[Upgrade name 747]Cookie Points": "Keksové body", + "[Upgrade name 748]Negatheism": "Negateismus", + "[Upgrade name 749]Magical realism": "Magický realismus", + "[Upgrade name 750]Cosmic foreground radiation": "Kosmické záření v popředí", + "[Upgrade name 751]Arcanized glassware": "Arkanizované sklo", + "[Upgrade name 752]Portal guns": "Portálové zbraně", + "[Upgrade name 753]Timeproof upholstery": "Čalounění odolné proti zubu času", + "[Upgrade name 754]Employee minification": "Minifikace zaměstnanců", + "[Upgrade name 755]Hyperblack paint": "Hyperčerná barva", + "[Upgrade name 756]Silver lining maximization": "Maximalizace stříbrného obložení", + "[Upgrade name 757]Multiscale profiling": "Profilování v různém měřítku", + "[Upgrade name 758]PHP containment vats": "Kádě pro zadržování PHP", + "[Upgrade name 759]Opposite universe": "Opačný vesmír", + "[Upgrade name 760]The land of dreams": "Země snů", + "[Upgrade name 761]Thoughts & prayers": "Myšlenky a modlitby", + "[Upgrade name 762]Fertile minds": "Plodné mysli", + "[Upgrade name 763]Fortune #019": "Štěstí č. 019", + "[Upgrade name 764]Decillion fingers": "Decilion prstů", + "[Upgrade name 765]Aetherice mouse": "Éterická myš", + "[Upgrade name 766]Kitten admins": "Kočičí admini", + "[Upgrade name 767]Everybutter biscuit": "Všemáslová sušenka", + "[Upgrade name 768]Unshackled cursors": "Nespoutané okovy", + "[Upgrade name 769]Unshackled grandmas": "Nespoutané babičky", + "[Upgrade name 770]Unshackled farms": "Nespoutané farmy", + "[Upgrade name 771]Unshackled mines": "Nespoutané doly", + "[Upgrade name 772]Unshackled factories": "Nespoutané továrny", + "[Upgrade name 773]Unshackled banks": "Nespoutané banky", + "[Upgrade name 774]Unshackled temples": "Nespoutané chrámy", + "[Upgrade name 775]Unshackled wizard towers": "Nespoutané věže čarodějů", + "[Upgrade name 776]Unshackled shipments": "Nespoutané zásilky", + "[Upgrade name 777]Unshackled alchemy labs": "Nespoutané alchymistické laboratoře", + "[Upgrade name 778]Unshackled portals": "Nespoutané portály", + "[Upgrade name 779]Unshackled time machines": "Nespoutané stroje času", + "[Upgrade name 780]Unshackled antimatter condensers": "Nespoutané kondenzátory antihmoty", + "[Upgrade name 781]Unshackled prisms": "Nespoutané hranoly", + "[Upgrade name 782]Unshackled chancemakers": "Nespoutaní tvůrci šancí", + "[Upgrade name 783]Unshackled fractal engines": "Nespoutané fraktální motory", + "[Upgrade name 784]Unshackled javascript consoles": "Nespoutané javascriptové konzole", + "[Upgrade name 785]Unshackled idleverses": "Nespoutaná idleverza", + "[Upgrade name 786]Unshackled cortex bakers": "Nespoutaní kortexoví pekaři", + "[Upgrade name 787]Unshackled flavor": "Nespoutaná chuť", + "[Upgrade name 788]Unshackled berrylium": "Nespoutané plodolium", + "[Upgrade name 789]Unshackled blueberrylium": "Nespoutaná plodomodrolium", + "[Upgrade name 790]Unshackled chalcedhoney": "Nespoutaný chalcemed", + "[Upgrade name 791]Unshackled buttergold": "Nespoutané zlatomáslo", + "[Upgrade name 792]Unshackled sugarmuck": "Nespoutaný cukrajt", + "[Upgrade name 793]Unshackled jetmint": "Nespoutaná bonmáta", + "[Upgrade name 794]Unshackled cherrysilver": "Nespoutané třešňostříbro", + "[Upgrade name 795]Unshackled hazelrald": "Nespoutaný lískoragd", + "[Upgrade name 796]Unshackled mooncandy": "Nespoutaná alkomole", + "[Upgrade name 797]Unshackled astrofudge": "Nespoutaný astromel", + "[Upgrade name 798]Unshackled alabascream": "Nespoutaná alabetana", + "[Upgrade name 799]Unshackled iridyum": "Nespoutané iridmňum", + "[Upgrade name 800]Unshackled glucosmium": "Nespoutané glukosmium", + "[Upgrade name 801]Delicate touch": "Jemný dotek", + "[Upgrade name 802]Steadfast murmur": "Vytrvalý šelest", + "[Upgrade name 803]Glittering edge": "Třpytivá hrana", + "[Upgrade name 804]Distinguished wallpaper assortment": "Charakteristický sortiment tapet", + "[Upgrade name 805]Sound test": "Zvuková zkouška", + "[Upgrade name 806]Jukebox": "Jukebox", + "[Upgrade name 807]Dalgona cookies": "Dalgonské keksy", + "[Upgrade name 808]Spicy cookies": "Pikantní keksy", + "[Upgrade name 809]Smile cookies": "Smajlíkové keksy", + "[Upgrade name 810]Kolachy cookies": "Koláčové keksy", + "[Upgrade name 811]Gomma cookies": "Gomma keksy", + "[Upgrade name 812]Vegan cookies": "Veganské keksy", + "[Upgrade name 813]Coyotas": "Kojotky", + "[Upgrade name 814]Frosted sugar cookies": "Mražené sladké keksy", + "[Upgrade name 815]Marshmallow sandwich cookies": "Žužu sendvičové sušenky", + "[Upgrade name 816]Web cookies": "Pavoučí keksy", + "[Upgrade name 817]Steamed cookies": "Keksy na páře", + "[Upgrade name 818]Deep-fried cookie dough": "Fritované keksové těsto", + "[Achievement name 0]Wake and bake": "Probuďte se a pečte", + "[Achievement name 1]Making some dough": "Příprava těsta", + "[Achievement name 2]So baked right now": "Právě upečeno", + "[Achievement name 3]Fledgling bakery": "Nová pekárna", + "[Achievement name 4]Affluent bakery": "Zavedená pekárna", + "[Achievement name 5]World-famous bakery": "Světově proslulá pekárna", + "[Achievement name 6]Cosmic bakery": "Kosmická pekárna", + "[Achievement name 7]Galactic bakery": "Galaktická pekárna", + "[Achievement name 8]Universal bakery": "Univerzální pekárna", + "[Achievement name 9]Timeless bakery": "Nadčasová pekárna", + "[Achievement name 10]Infinite bakery": "Nekonečná pekárna", + "[Achievement name 11]Immortal bakery": "Nesmrtelná pekárna", + "[Achievement name 12]Don't stop me now": "Teď mě nezastavujte", + "[Achievement name 13]You can stop now": "Nyní můžete zastavit", + "[Achievement name 14]Cookies all the way down": "Všechny sušenky namířené dolů", + "[Achievement name 15]Overdose": "Předávkování", + "[Achievement name 16]Casual baking": "Příležitostné pečení", + "[Achievement name 17]Hardcore baking": "Tvrdé pečení", + "[Achievement name 18]Steady tasty stream": "Stálý a chutný proud", + "[Achievement name 19]Cookie monster": "Sušenková příšera", + "[Achievement name 20]Mass producer": "Hromadný producent", + "[Achievement name 21]Cookie vortex": "Sušenkový vír", + "[Achievement name 22]Cookie pulsar": "Sušenkový pulsar", + "[Achievement name 23]Cookie quasar": "Sušenkový kvazar", + "[Achievement name 24]Oh hey, you're still here": "Haló, jste pořád tady", + "[Achievement name 25]Let's never bake again": "Už nikdy nebudeme péct", + "[Achievement name 26]Sacrifice": "Oběť", + "[Achievement name 27]Oblivion": "Zapomenutí", + "[Achievement name 28]From scratch": "Od nuly", + "[Achievement name 29]Neverclick": "Neverclick", + "[Achievement name 30]Clicktastic": "Clicktastic", + "[Achievement name 31]Clickathlon": "Clickathlon", + "[Achievement name 32]Clickolympics": "Clickolympics", + "[Achievement name 33]Clickorama": "Clickorama", + "[Achievement name 34]Click": "Klik", + "[Achievement name 35]Double-click": "Dvojklik", + "[Achievement name 36]Mouse wheel": "Kolečko myši", + "[Achievement name 37]Of Mice and Men": "O myších a lidech", + "[Achievement name 38]The Digital": "Digitální", + "[Achievement name 39]Just wrong": "Jen špatně", + "[Achievement name 40]Grandma's cookies": "Babiččiny sušenky", + "[Achievement name 41]Sloppy kisses": "Nedbalé polibky", + "[Achievement name 42]Retirement home": "Domov pro seniory", + "[Achievement name 43]Bought the farm": "Koupil farmu", + "[Achievement name 44]Reap what you sow": "Sklízejte to, co zasejete", + "[Achievement name 45]Farm ill": "Postižená farma", + "[Achievement name 46]Production chain": "Výrobní řetězec", + "[Achievement name 47]Industrial revolution": "Průmyslová revoluce", + "[Achievement name 48]Global warming": "Globální oteplování", + "[Achievement name 49]You know the drill": "Víte, jak to chodí", + "[Achievement name 50]Excavation site": "Místo výkopu", + "[Achievement name 51]Hollow the planet": "Vyprázdněte planetu", + "[Achievement name 52]Expedition": "Expedice", + "[Achievement name 53]Galactic highway": "Galaktická dálnice", + "[Achievement name 54]Far far away": "Velmi daleko", + "[Achievement name 55]Transmutation": "Transmutace", + "[Achievement name 56]Transmogrification": "Transmogrifikace", + "[Achievement name 57]Gold member": "Zlatý člen", + "[Achievement name 58]A whole new world": "Celý nový svět", + "[Achievement name 59]Now you're thinking": "Teď přemýšlíte", + "[Achievement name 60]Dimensional shift": "Dimenzionální posun", + "[Achievement name 61]Time warp": "Časová osnova", + "[Achievement name 62]Alternate timeline": "Alternativní časová osa", + "[Achievement name 63]Rewriting history": "Přepis historie", + "[Achievement name 64]One with everything": "Jeden se vším", + "[Achievement name 65]Mathematician": "Matematik", + "[Achievement name 66]Base 10": "Základna 10", + "[Achievement name 67]Golden cookie": "Zlatý keks", + "[Achievement name 68]Lucky cookie": "Šťastná sušenka", + "[Achievement name 69]A stroke of luck": "Zásah štěstí", + "[Achievement name 70]Cheated cookies taste awful": "Podváděné sušenky nemají dobrou chuť", + "[Achievement name 71]Uncanny clicker": "Záhadný kliker", + "[Achievement name 72]Builder": "Stavitel", + "[Achievement name 73]Architect": "Architekt", + "[Achievement name 74]Enhancer": "Vylepšování", + "[Achievement name 75]Augmenter": "Zvětšování", + "[Achievement name 76]Cookie-dunker": "Cookie-dunker", + "[Achievement name 77]Fortune": "Poklad", + "[Achievement name 78]True Neverclick": "True Neverclick", + "[Achievement name 79]Elder nap": "Zdřímnutí staršího člověka", + "[Achievement name 80]Elder slumber": "Spánek staršího člověka", + "[Achievement name 81]Elder": "Starší člověk", + "[Achievement name 82]Elder calm": "Klid staršího člověka", + "[Achievement name 83]Engineer": "Inženýr", + "[Achievement name 84]Leprechaun": "Skřítek Leprechaun", + "[Achievement name 85]Black cat's paw": "Tlapa černé kočky", + "[Achievement name 86]Nihilism": "Nihilismus", + "[Achievement name 87]Antibatter": "Antibatter", + "[Achievement name 88]Quirky quarks": "Svérázné kvarky", + "[Achievement name 89]It does matter!": "Záleží na tom!", + "[Achievement name 90]Upgrader": "Upgrader", + "[Achievement name 91]Centennial": "Sté výročí", + "[Achievement name 92]Hardcore": "Hardcore", + "[Achievement name 93]Speed baking I": "Rychlost pečení I", + "[Achievement name 94]Speed baking II": "Rychlost pečení II", + "[Achievement name 95]Speed baking III": "Rychlost pečení III", + "[Achievement name 96]Getting even with the oven": "Práce s troubou", + "[Achievement name 97]Now this is pod-smashing": "Nyní dochází k rozbíjení podů", + "[Achievement name 98]Chirped out": "Cvrlikání", + "[Achievement name 99]Follow the white rabbit": "Následujte bílého králíka", + "[Achievement name 100]Clickasmic": "Clickasmic", + "[Achievement name 101]Friend of the ancients": "Přítel starověku", + "[Achievement name 102]Ruler of the ancients": "Vládce starověku", + "[Achievement name 103]Wholesome": "Zdravý, blahodárný", + "[Achievement name 104]Just plain lucky": "Prostě šťastný", + "[Achievement name 105]Itchscratcher": "Škrabka Itchscratcher", + "[Achievement name 106]Wrinklesquisher": "Mast na vrásky", + "[Achievement name 107]Moistburster": "Prostředek proti vlhkosti", + "[Achievement name 108]Spooky cookies": "Strašidelné sušenky", + "[Achievement name 109]Coming to town": "Příjezd do města", + "[Achievement name 110]All hail Santa": "Všichni zdraví Santu", + "[Achievement name 111]Let it snow": "Ať sněží", + "[Achievement name 112]Oh deer": "Oh deer (ach, jelen)", + "[Achievement name 113]Sleigh of hand": "Ruční sáně", + "[Achievement name 114]Reindeer sleigher": "Sobí sáně", + "[Achievement name 115]Perfected agriculture": "Zdokonalené zemědělství", + "[Achievement name 116]Ultimate automation": "Dokonalá automatizace", + "[Achievement name 117]Can you dig it": "Můžete to vykopat", + "[Achievement name 118]Type II civilization": "Civilizace typu II", + "[Achievement name 119]Gild wars": "Války o zlato", + "[Achievement name 120]Brain-split": "Rozdělení mozku", + "[Achievement name 121]Time duke": "Vévoda Time", + "[Achievement name 122]Molecular maestro": "Molekulární mistr", + "[Achievement name 123]Lone photon": "Osamělý foton", + "[Achievement name 124]Dazzling glimmer": "Oslňující záblesk", + "[Achievement name 125]Blinding flash": "Oslepující blesk", + "[Achievement name 126]Unending glow": "Nekonečná záře", + "[Achievement name 127]Lord of Constructs": "Pán konstruktů", + "[Achievement name 128]Lord of Progress": "Pán pokroku", + "[Achievement name 129]Bicentennial": "Dvousetleté výročí", + "[Achievement name 130]Lovely cookies": "Krásné sušenky", + "[Achievement name 131]Centennial and a half": "150leté výročí", + "[Achievement name 132]Tiny cookie": "Malá sušenka", + "[Achievement name 133]You win a cookie": "Vyhráváte sušenku", + "[Achievement name 134]Click delegator": "Klikněte na delegátor", + "[Achievement name 135]Gushing grannies": "Tryskající babičky", + "[Achievement name 136]I hate manure": "Nesnáším hnůj", + "[Achievement name 137]Never dig down": "Nikdy nekopejte", + "[Achievement name 138]The incredible machine": "Neuvěřitelný stroj", + "[Achievement name 139]And beyond": "A dále", + "[Achievement name 140]Magnum Opus": "Magnum Opus", + "[Achievement name 141]With strange eons": "S cizími nesmrtelnými bytostmi", + "[Achievement name 142]Spacetime jigamaroo": "Prostorové jigamaroo", + "[Achievement name 143]Supermassive": "Supermasivní", + "[Achievement name 144]Praise the sun": "Chvalte Slunce", + "[Achievement name 145]Clickageddon": "Clickageddon", + "[Achievement name 146]Clicknarok": "Clicknarok", + "[Achievement name 147]Extreme polydactyly": "Extrémní polydaktylie", + "[Achievement name 148]Dr. T": "Dr. T", + "[Achievement name 149]The old never bothered me anyway": "Ten starý mi stejně nikdy nevadil", + "[Achievement name 150]Homegrown": "Domácí", + "[Achievement name 151]Technocracy": "Technokracie", + "[Achievement name 152]The center of the Earth": "Střed Země", + "[Achievement name 153]We come in peace": "Přicházíme v míru", + "[Achievement name 154]The secrets of the universe": "Tajemství vesmíru", + "[Achievement name 155]Realm of the Mad God": "Realita šíleného boha", + "[Achievement name 156]Forever and ever": "Navěky a navždy", + "[Achievement name 157]Walk the planck": "Chůze po prkně", + "[Achievement name 158]Rise and shine": "Vstaňte a rozzařte se", + "[Achievement name 159]God complex": "Boží komplex", + "[Achievement name 160]Third-party": "Třetí strana", + "[Achievement name 161]Dematerialize": "Dematerializace", + "[Achievement name 162]Nil zero zilch": "Žádný nulový zilch", + "[Achievement name 163]Transcendence": "Transcendence", + "[Achievement name 164]Obliterate": "Vyhlazení", + "[Achievement name 165]Negative void": "Negativní neplatnost", + "[Achievement name 166]The hunt is on": "Lov je zapnutý", + "[Achievement name 167]Egging on": "Kladení vajec", + "[Achievement name 168]Mass Easteria": "Mass Easteria", + "[Achievement name 169]Hide & seek champion": "Skrýt a hledat šampiona", + "[Achievement name 170]What's in a name": "Co je ve jménu", + "[Achievement name 171]Pretty penny": "Příjemný peníz", + "[Achievement name 172]Fit the bill": "Přizpůsobit účet", + "[Achievement name 173]A loan in the dark": "Půjčka ve tmě", + "[Achievement name 174]Need for greed": "Potřeba chamtivosti", + "[Achievement name 175]It's the economy, stupid": "Je to ekonomie, hloupá", + "[Achievement name 176]Your time to shrine": "Váš čas pro svatyni", + "[Achievement name 177]Shady sect": "Stinná sekta", + "[Achievement name 178]New-age cult": "Kult New-age", + "[Achievement name 179]Organized religion": "Organizované náboženství", + "[Achievement name 180]Fanaticism": "Fanatismus", + "[Achievement name 181]Bewitched": "Očarovaný", + "[Achievement name 182]The sorcerer's apprentice": "Čarodějův učeň", + "[Achievement name 183]Charms and enchantments": "Kouzla a čáry", + "[Achievement name 184]Curses and maledictions": "Prokletí a zlořečení", + "[Achievement name 185]Magic kingdom": "Kouzelné království", + "[Achievement name 186]Vested interest": "Vlastní zájem", + "[Achievement name 187]New world order": "Nový světový řád", + "[Achievement name 188]Hocus pocus": "Hokus pokus", + "[Achievement name 189]Finger clickin' good": "Prst kliká správně", + "[Achievement name 190]Panic at the bingo": "Panika z binga", + "[Achievement name 191]Rake in the dough": "Práce s těstem", + "[Achievement name 192]Quarry on": "Quarry on (pokračovat)", + "[Achievement name 193]Yes I love technology": "Ano, miluji technologie", + "[Achievement name 194]Paid in full": "Splaceno v plné výši", + "[Achievement name 195]Church of Cookiology": "Kuchařská církev", + "[Achievement name 196]Too many rabbits, not enough hats": "Příliš mnoho králíků, málo klobouků", + "[Achievement name 197]The most precious cargo": "Nejcennější náklad", + "[Achievement name 198]The Aureate": "Aurateát", + "[Achievement name 199]Ever more hideous": "Stále ohavnější", + "[Achievement name 200]Be kind, rewind": "Buďte laskavý, přetočte se", + "[Achievement name 201]Infinitesimal": "Infinitezimální", + "[Achievement name 202]A still more glorious dawn": "Stále slavnější úsvit", + "[Achievement name 203]Rebirth": "Znovuzrození", + "[Achievement name 204]Here you go": "Tady to je", + "[Achievement name 205]Resurrection": "Vzkříšení", + "[Achievement name 206]Reincarnation": "Reinkarnace", + "[Achievement name 207]Endless cycle": "Nekonečný cyklus", + "[Achievement name 208]The agemaster": "Agemaster", + "[Achievement name 209]To oldly go": "Staří odcházejí", + "[Achievement name 210]Gardener extraordinaire": "Mimořádný zahradník", + "[Achievement name 211]Tectonic ambassador": "Tektonický velvyslanec", + "[Achievement name 212]Rise of the machines": "Vzestup strojů", + "[Achievement name 213]Acquire currency": "Získat měnu", + "[Achievement name 214]Zealotry": "Fanatismus", + "[Achievement name 215]The wizarding world": "Čarodějnický svět", + "[Achievement name 216]Parsec-masher": "Parsec-masher", + "[Achievement name 217]The work of a lifetime": "Práce na celý život", + "[Achievement name 218]A place lost in time": "Místo ztracené v čase", + "[Achievement name 219]Heat death": "Horká smrt", + "[Achievement name 220]Microcosm": "Mikrokosmos", + "[Achievement name 221]Bright future": "Zářná budoucnost", + "[Achievement name 222]Here be dragon": "Tady buď drakem", + "[Achievement name 223]How?": "Jak?", + "[Achievement name 224]The land of milk and cookies": "Země mléka a sušenek", + "[Achievement name 225]He who controls the cookies controls the universe": "Ten, kdo ovládá sušenky, ovládá vesmír", + "[Achievement name 226]Tonight on Hoarders": "Dnes večer na hromadě", + "[Achievement name 227]Are you gonna eat all that?": "Budete to všechno jíst?", + "[Achievement name 228]We're gonna need a bigger bakery": "Budeme potřebovat větší pekárnu", + "[Achievement name 229]In the mouth of madness": "Ve spárech šílenství", + "[Achievement name 230]Brought to you by the letter
": "Napsáno v dopisu
", + "[Achievement name 231]A world filled with cookies": "Svět plný sušenek", + "[Achievement name 232]When this baby hits 36 quadrillion cookies per hour": "Když toto dítě dosáhne úrovně 36 kvadrilionů sušenek za hodinu", + "[Achievement name 233]Fast and delicious": "Rychlé a chutné", + "[Achievement name 234]Cookiehertz : a really, really tasty hertz": "Cookiehertz: opravdu velmi chutný hertz", + "[Achievement name 235]Woops, you solved world hunger": "Páni, vyřešili jste světový hlad", + "[Achievement name 236]Turbopuns": "Turbopuns", + "[Achievement name 237]Faster menner": "Rychlejší způsoby", + "[Achievement name 238]And yet you're still hungry": "A přesto máte stále hlad", + "[Achievement name 239]The Abakening": "Abakening", + "[Achievement name 240]There's really no hard limit to how long these achievement names can be and to be quite honest I'm rather curious to see how far we can go.
Adolphus W. Green (1844–1917) started as the Principal of the Groton School in 1864. By 1865, he became second assistant librarian at the New York Mercantile Library; from 1867 to 1869, he was promoted to full librarian. From 1869 to 1873, he worked for Evarts, Southmayd & Choate, a law firm co-founded by William M. Evarts, Charles Ferdinand Southmayd and Joseph Hodges Choate. He was admitted to the New York State Bar Association in 1873.
Anyway, how's your day been?": "Opravdu neexistuje žádný pevný limit pro používání těchto názvů dosažených úrovní; a abych byl upřímný, jsem docela zvědavý, jak daleko dokážeme zajít.
Adolphus W. Green (1844–1917) začínal jako ředitel Grotonovy školy v roce 1864. V roce 1865 se stal druhým asistentem knihovníka v New York Mercantile Library; v letech 1867 až 1869 pracoval jako řádný knihovník. V letech 1869 až 1873 pracoval pro Evarts, Southmayd & Choate, advokátní kancelář, kterou spolu založili William M. Evarts, Charles Ferdinand Southmayd a Joseph Hodges Choate. V roce 1873 byl přijat do Advokátní komory v New Yorku.
Jaký byl tvůj den?", + "[Achievement name 241]Fast": "Rychlý", + "[Achievement name 242]Bicentennial and a half": "250leté výročí", + "[Achievement name 243]Tabloid addiction": "Tabloidní závislost", + "[Achievement name 244]Clickastrophe": "Clickastrofie", + "[Achievement name 245]Clickataclysm": "Clickataklyzma", + "[Achievement name 246]Thumbs, phalanges, metacarpals": "Palec, falangy, záprstí", + "[Achievement name 247]Polymath": "Polymatie", + "[Achievement name 248]The elder scrolls": "Starší rozbaluje", + "[Achievement name 249]To crumbs, you say?": "Říkáte drobky?", + "[Achievement name 250]Seedy business": "Obchod se semeny", + "[Achievement name 251]Freak fracking": "Podivné frakování", + "[Achievement name 252]Modern times": "Moderní doba", + "[Achievement name 253]The nerve of war": "Nervy z války", + "[Achievement name 254]Wololo": "Wololo", + "[Achievement name 255]And now for my next trick, I'll need a volunteer from the audience": "A teď budu pro svůj další trik potřebovat dobrovolníka z publika", + "[Achievement name 256]It's not delivery": "To není porod", + "[Achievement name 257]Gold, Jerry! Gold!": "Zlato, Jerry! Zlato!", + "[Achievement name 258]Forbidden zone": "Zakázaná zóna", + "[Achievement name 259]cookie clicker forever and forever a hundred years cookie clicker, all day long forever, forever a hundred times, over and over cookie clicker adventures dot com": "cookie clicker pořád a navždy, sto let cookie clicker, celý den a navždy, stokrát, znovu a znovu cookie clicker dobrodružství, tečka com", + "[Achievement name 260]Scientists baffled everywhere": "Vědci byli zmatení všude", + "[Achievement name 261]Harmony of the spheres": "Harmonie sfér", + "[Achievement name 262]Last Chance to See": "Poslední šance vidět", + "[Achievement name 263]Early bird": "Ranní ptáče", + "[Achievement name 264]Fading luck": "Slábnoucí štěstí", + "[Achievement name 265]Eldeer": "Eldeer (starší)", + "[Achievement name 266]Dude, sweet": "Kamaráde, zlatý", + "[Achievement name 267]Sugar rush": "Cukrová horečka", + "[Achievement name 268]Year's worth of cavities": "Celoroční dutiny", + "[Achievement name 269]Hand-picked": "Ruční sběr", + "[Achievement name 270]Sugar sugar": "Cukr, cukr", + "[Achievement name 271]All-natural cane sugar": "Přírodní třtinový cukr", + "[Achievement name 272]Sweetmeats": "Sladkosti", + "[Achievement name 273]Tricentennial": "Výročí 300 let", + "[Achievement name 274]Knead for speed": "Rychlé hnětení", + "[Achievement name 275]Well the cookies start coming and they don't stop coming": "Sušenky začnou vycházet a jejich přísun nebude nikdy končit", + "[Achievement name 276]I don't know if you've noticed but all these icons are very slightly off-center": "Nevím, jestli jste si všimli, ale všechny tyto ikony jsou mírně mimo střed", + "[Achievement name 277]The proof of the cookie is in the baking": "Důkaz pečení sušenek", + "[Achievement name 278]If it's worth doing, it's worth overdoing": "Pokud to stojí za to udělat, stojí za to i přehánět", + "[Achievement name 279]The dreams in which I'm baking are the best I've ever had": "Sny, ve kterých peču, jsou nejlepší, jaké jsem kdy měl", + "[Achievement name 280]Set for life": "Nastaveno na celý život", + "[Achievement name 281]You and the beanstalk": "Vy a stonek fazole", + "[Achievement name 282]Romancing the stone": "Láska ke kamenu", + "[Achievement name 283]Ex machina": "Ex machina", + "[Achievement name 284]And I need it now": "A teď to potřebuji", + "[Achievement name 285]Pray on the weak": "Modlete se za slabé", + "[Achievement name 286]It's a kind of magic": "Je to tak trochu kouzlo", + "[Achievement name 287]Make it so": "Udělejte to tak", + "[Achievement name 288]All that glitters is gold": "Všechno, co se třpytí, je zlato", + "[Achievement name 289]Here he comes": "Tady to je", + "[Achievement name 290]Way back then": "Cesta zpátky", + "[Achievement name 291]Exotic matter": "Exotická hmota", + "[Achievement name 292]At the end of the tunnel": "Na konci tunelu", + "[Achievement name 293]Click (starring Adam Sandler)": "Klikněte (v hlavní roli Adam Sandler)", + "[Achievement name 294]Frantiquities": "Křehkost", + "[Achievement name 295]Overgrowth": "Přerůstání", + "[Achievement name 296]Sedimentalism": "Sedimentalismus", + "[Achievement name 297]Labor of love": "Práce lásky", + "[Achievement name 298]Reverse funnel system": "Systém zpětného trychtýře", + "[Achievement name 299]Thus spoke you": "Tak jste řekl", + "[Achievement name 300]Manafest destiny": "Zjevný osud", + "[Achievement name 301]Neither snow nor rain nor heat nor gloom of night": "Ani sníh, ani déšť, ani horko, ani ponurá tma", + "[Achievement name 302]I've got the Midas touch": "Dotkl se mě Midas", + "[Achievement name 303]Which eternal lie": "Jaká věčná lež", + "[Achievement name 304]Déjà vu": "Déjà vu", + "[Achievement name 305]Powers of Ten": "Síla deseti", + "[Achievement name 306]Now the dark days are gone": "Nyní jsou temné dny pryč", + "[Achievement name 307]Freaky jazz hands": "Zvláštní jazzové ruce", + "[Achievement name 308]Methuselah": "Metuzalém", + "[Achievement name 309]Huge tracts of land": "Obrovské plochy země", + "[Achievement name 310]D-d-d-d-deeper": "H-h-h-h-hlouběji", + "[Achievement name 311]Patently genius": "Zjevně geniální", + "[Achievement name 312]A capital idea": "Hlavní myšlenka", + "[Achievement name 313]It belongs in a bakery": "Patří do pekárny", + "[Achievement name 314]Motormouth": "MotorMouth", + "[Achievement name 315]Been there done that": "To už znám", + "[Achievement name 316]Phlogisticated substances": "Flogistikované látky", + "[Achievement name 317]Bizarro world": "Bizarní svět", + "[Achievement name 318]The long now": "Teď už dlouho", + "[Achievement name 319]Chubby hadrons": "Silné hadrony", + "[Achievement name 320]Palettable": "Paletovatelné", + "[Achievement name 321]Bibbidi-bobbidi-boo": "Bibbidi-bobbidi-boo", + "[Achievement name 322]I'm the wiz": "Jsem čaroděj", + "[Achievement name 323]A wizard is you": "Čaroděj jsi ty", + "[Achievement name 324]Four-leaf cookie": "Čtyřlístková sušenka", + "[Achievement name 325]Lucked out": "Štěstí", + "[Achievement name 326]What are the odds": "Jaké jsou šance", + "[Achievement name 327]Grandma needs a new pair of shoes": "Babička potřebuje nové boty", + "[Achievement name 328]Million to one shot, doc": "Milion na jeden pokus, doc", + "[Achievement name 329]As luck would have it": "Jaké štěstí", + "[Achievement name 330]Ever in your favor": "Vždy ve váš prospěch", + "[Achievement name 331]Be a lady": "Buďte dámou", + "[Achievement name 332]Dicey business": "Hezký obchod", + "[Achievement name 333]Fingers crossed": "Držím palce", + "[Achievement name 334]Just a statistic": "Jen statistika", + "[Achievement name 335]Murphy's wild guess": "Murphyho divoký odhad", + "[Achievement name 336]Let's leaf it at that": "Pojďme to nechat tak", + "[Achievement name 337]The ultimate clickdown": "Konečné kliknutí", + "[Achievement name 338]Aged well": "Dobře vyzrálý", + "[Achievement name 339]101st birthday": "101. narozeniny", + "[Achievement name 340]But wait 'til you get older": "Počkejte, až budete starší", + "[Achievement name 341]Harvest moon": "Měsíc sklizně", + "[Achievement name 342]Mine?": "Těžba?", + "[Achievement name 343]In full gear": "V plné výbavě", + "[Achievement name 344]Treacle tart economics": "Ekonomika melasového koláče", + "[Achievement name 345]Holy cookies, grandma!": "Svaté sušenky, babičko!", + "[Achievement name 346]The Prestige": "Prestiž", + "[Achievement name 347]That's just peanuts to space": "To jsou jen arašídy pro vesmír", + "[Achievement name 348]Worth its weight in lead": "V této hmotnosti se vyplatí", + "[Achievement name 349]What happens in the vortex stays in the vortex": "Co se stane ve víru, zůstane ve víru", + "[Achievement name 350]Invited to yesterday's party": "Pozván na včerejší večírek", + "[Achievement name 351]Downsizing": "Zmenšování", + "[Achievement name 352]My eyes": "Mé oči", + "[Achievement name 353]Maybe a chance in hell, actually": "Možná vlastně šance v pekle", + "[Achievement name 354]Make like a tree": "Jako strom", + "[Achievement name 355]Cave story": "Jeskynní příběh", + "[Achievement name 356]In-cog-neato": "In-cog-neato", + "[Achievement name 357]Save your breath because that's all you've got left": "Šetřete si svůj dech, protože to je vše, co vám zbylo", + "[Achievement name 358]Vengeful and almighty": "Pomstychtivý a všemohoucí", + "[Achievement name 359]Spell it out for you": "Vysvětlení za vás", + "[Achievement name 360]Space space space space space": "Prostor prostor prostor prostor prostor", + "[Achievement name 361]Don't get used to yourself, you're gonna have to change": "Nezvykněte si na sebe, budete se muset změnit", + "[Achievement name 362]Objects in the mirror dimension are closer than they appear": "Objekty v zrcadlové dimenzi jsou blíže, než se zdají být", + "[Achievement name 363]Groundhog day": "Hromnice", + "[Achievement name 364]A matter of perspective": "Otázka perspektivy", + "[Achievement name 365]Optical illusion": "Optická iluze", + "[Achievement name 366]Jackpot": "Jackpot", + "[Achievement name 367]So much to do so much to see": "Je toho tolik k dělání a tolik k vidění", + "[Achievement name 368]Running with scissors": "Běh s nůžkami", + "[Achievement name 369]Rarefied air": "Zředěný vzduch", + "[Achievement name 370]Push it to the limit": "Přibližte se limitu", + "[Achievement name 371]Green cookies sleep furiously": "Zelené sušenky zuřivě spí", + "[Achievement name 372]Panic! at Nabisco": "Panika! v Nabiscu", + "[Achievement name 373]Bursting at the seams": "Praská ve švech", + "[Achievement name 374]Just about full": "Téměř plný prostor", + "[Achievement name 375]Hungry for more": "Ještě větší hlad", + "[Achievement name 376]All the other kids with the pumped up clicks": "Všechny ostatní děti s napumpovanými kliknutími", + "[Achievement name 377]One...more...click...": "Ještě... jeden ... klik...", + "[Achievement name 378]Botany enthusiast": "Botanický nadšenec", + "[Achievement name 379]Green, aching thumb": "Zelený, bolavý palec", + "[Achievement name 380]In the garden of Eden (baby)": "V rajské zahradě (dítě)", + "[Achievement name 381]Keeper of the conservatory": "Hlídač v přístavbě", + "[Achievement name 382]Seedless to nay": "Škoda mluvit", + "[Achievement name 383]You get nothing": "Nic nedostanete", + "[Achievement name 384]Humble rebeginnings": "Pokorné znovuzrození", + "[Achievement name 385]The end of the world": "Konec světa", + "[Achievement name 386]Oh, you're back": "Oh, jste zpět", + "[Achievement name 387]Lazarus": "Lazar", + "[Achievement name 388]Leisurely pace": "Klidné tempo", + "[Achievement name 389]Hypersonic": "Nadzvukový", + "[Achievement name 390]Feed me, Orteil": "Dej mi najíst, Orteile", + "[Achievement name 391]And then what?": "A pak co?", + "[Achievement name 392]Tricentennial and a half": "350leté výročí", + "[Achievement name 393]Quadricentennial": "Čtyřsté výročí", + "[Achievement name 394]Quadricentennial and a half": "450leté výročí", + "[Achievement name 395]Quincentennial": "Pětisté výročí", + "[Achievement name 396]Maillard reaction": "Maillardova reakce", + "[Achievement name 397]When the cookies ascend just right": "Po správném výstupu sušenek", + "[Achievement name 398]With her finger and her thumb": "Prstem a palcem", + "[Achievement name 399]Defense of the ancients": "Obrana starců", + "[Achievement name 400]Sharpest tool in the shed": "Nejostřejší nástroj v kůlně", + "[Achievement name 401]Hey now, you're a rock": "Ahoj, ty jsi skála", + "[Achievement name 402]Break the mold": "Rozbijte formu", + "[Achievement name 403]Get the show on, get paid": "Pokračujte v show, dostanete zaplaceno", + "[Achievement name 404]My world's on fire, how about yours": "Můj svět hoří. Co ten váš?", + "[Achievement name 405]The meteor men beg to differ": "Meteorologové se chtějí lišit", + "[Achievement name 406]Only shooting stars": "Pouze padající hvězdy", + "[Achievement name 407]We could all use a little change": "Všichni bychom mohli využít malou změnu", + "[Achievement name 408]Your brain gets smart but your head gets dumb": "Váš mozek je chytrý, ale vaše hlava je němá", + "[Achievement name 409]The years start coming": "Roky jsou tady", + "[Achievement name 410]What a concept": "Jaký koncept", + "[Achievement name 411]You'll never shine if you don't glow": "Nikdy nebudete zářit, pokud nebudete svítit", + "[Achievement name 412]You'll never know if you don't go": "Nikdy nebudete vědět, pokud nevyjdete ven", + "[Achievement name 413]Self-contained": "Soběstačný", + "[Achievement name 414]Threw you for a loop": "Vyhodil tě na smyčku", + "[Achievement name 415]The sum of its parts": "Součet jeho částí", + "[Achievement name 416]Bears repeating": "Medvědi se opakují", + "[Achievement name 417]More of the same": "Více toho samého", + "[Achievement name 418]Last recurse": "Poslední opakování", + "[Achievement name 419]Out of one, many": "Z jednoho, mnoho", + "[Achievement name 420]An example of recursion": "Příklad rekurze", + "[Achievement name 421]For more information on this achievement, please refer to its title": "Další informace o tomto úspěchu naleznete v tomto titulu", + "[Achievement name 422]I'm so meta, even this achievement": "Jsem tak meta, dokonce i na této úrovni", + "[Achievement name 423]Never get bored": "Nikdy se nebudete nudit", + "[Achievement name 424]The needs of the many": "Potřebujeme jich hodně", + "[Achievement name 425]Eating its own": "Sníme vlastní zdroje", + "[Achievement name 426]We must go deeper": "Musíme jít hlouběji", + "[Achievement name 427]Sierpinski rhomboids": "Kosočtverce Sierpinski", + "[Achievement name 428]Gotta go fast": "Musím jít rychle", + "[Achievement name 429]I think it's safe to say you've got it made": "Myslím, že lze s jistotou říci, že jste to zvládli", + "[Achievement name 430]Renaissance baker": "Renesanční pekař", + "[Achievement name 431]Veteran": "Veterán", + "[Achievement name 432]Thick-skinned": "Silná kůže", + "[Achievement name 433]F12": "F12", + "[Achievement name 434]Variable success": "Proměnlivý úspěch", + "[Achievement name 435]No comments": "Bez připomínek", + "[Achievement name 436]Up to code": "Až do kódu", + "[Achievement name 437]Works on my machine": "Funguje na mém stroji", + "[Achievement name 438]Technical debt": "Technický dluh", + "[Achievement name 439]Mind your language": "Dbejte na svůj jazyk", + "[Achievement name 440]Inconsolable": "Neutěšitelný", + "[Achievement name 441]Closure": "Uzavření", + "[Achievement name 442]Dude what if we're all living in a simulation like what if we're all just code on a computer somewhere": "Kamaráde, co když všichni žijeme v simulaci, jako kdybychom všichni jen někde kódovali v počítači", + "[Achievement name 443]Taking the back streets": "Vydáme se do zadních ulic", + "[Achievement name 444]Inherited prototype": "Zděděný prototyp", + "[Achievement name 445]A model of document object": "Model objektu dokumentu", + "[Achievement name 446]First-class citizen": "Občan první třídy", + "[Achievement name 447]Alexandria": "Alexandrie", + "[Achievement name 448]Bake him away, toys": "Upečte to, hračky", + "[Achievement name 449]You're #1 so why try harder": "Jste jednička, tak proč se snažit víc", + "[Achievement name 450]Haven't even begun to peak": "Ještě jsem se nedostal k vrcholu", + "[Achievement name 451]A sometimes food": "Občasné jídlo", + "[Achievement name 452]Not enough of a good thing": "Nedostatek dobrých věcí", + "[Achievement name 453]Horn of plenty": "Roh hojnosti", + "[Achievement name 454]Smurf account": "Šmoulí účet", + "[Achievement name 455]If at first you don't succeed": "Pokud zpočátku neuspějete", + "[Achievement name 456]O Fortuna": "Ó Fortuna", + "[Achievement name 457]Initial public offering": "Počáteční veřejná nabídka", + "[Achievement name 458]Rookie numbers": "Čísla Rookie", + "[Achievement name 459]No nobility in poverty": "Žádná šlechta v chudobě", + "[Achievement name 460]Full warehouses": "Plné sklady", + "[Achievement name 461]Make my day": "Udělám si svůj den", + "[Achievement name 462]Buy buy buy": "Kupujte, kupujte, kupujte", + "[Achievement name 463]Gaseous assets": "Plynná aktiva", + "[Achievement name 464]Pyramid scheme": "Pyramidové schéma", + "[Achievement name 465]Jellicles": "Kočky Jellicle", + "[Achievement name 466]Quincentennial and a half": "550leté výročí", + "[Achievement name 467]What did we even eat before these": "Co jsme před tím vůbec jedli", + "[Achievement name 468]Heavy flow": "Těžký průběh", + "[Achievement name 469]More you say?": "Ještě něco říkáte?", + "[Achievement name 470]Large and in charge": "Velký a odpovědný", + "[Achievement name 471]Absolutely stuffed": "Zcela naplněno", + "[Achievement name 472]It's only wafer-thin": "Je to tenké jako oplatek", + "[Achievement name 473]Clickety split": "Dělené klikání", + "[Achievement name 474]Gotta hand it to you": "Musím ti to předat", + "[Achievement name 475]Okay boomer": "Dobře, boomere", + "[Achievement name 476]Overripe": "Přezrálý", + "[Achievement name 477]Rock on": "Rozhoupat", + "[Achievement name 478]Self-manmade man": "Samostatně vytvořený člověk", + "[Achievement name 479]Checks out": "Výstupní kontrola", + "[Achievement name 480]Living on a prayer": "Život v naději", + "[Achievement name 481]Higitus figitus migitus mum": "Higitus figitus migitus mum", + "[Achievement name 482]The incredible journey": "Neuvěřitelná cesta", + "[Achievement name 483]Just a phase": "Jen fáze", + "[Achievement name 484]Don't let me leave, Murph": "Nenech mě odejít, Murphe", + "[Achievement name 485]Caveman to cosmos": "Pravěk do kosmu", + "[Achievement name 486]Particular tastes": "Zvláštní chutě", + "[Achievement name 487]A light snack": "Lehké občerstvení", + "[Achievement name 488]Tempting fate": "Lákavý osud", + "[Achievement name 489]Tautological": "Tautologický", + "[Achievement name 490]Curly braces": "Složené závorky", + "[Achievement name 491]Seven horseshoes": "Sedm podkov", + "[Achievement name 492]Olden days": "Staré dny", + "[Achievement name 493]The devil's workshop": "Ďáblova dílna", + "[Achievement name 494]In the green": "V zelené barvě", + "[Achievement name 495]Mountain out of a molehill, but like in a good way": "Hora z krtince, ale v dobrém slova smyslu", + "[Achievement name 496]The wheels of progress": "Kola pokroku", + "[Achievement name 497]That's rich": "To je bohaté", + "[Achievement name 498]Preaches and cream": "Kázání a krém", + "[Achievement name 499]Magic thinking": "Magické myšlení", + "[Achievement name 500]Is there life on Mars?": "Existuje život na Marsu?", + "[Achievement name 501]Bad chemistry": "Špatná chemie", + "[Achievement name 502]Reduced to gibbering heaps": "Redukce na gibber hromady", + "[Achievement name 503]Back already?": "Už jste zpět?", + "[Achievement name 504]Nuclear throne": "Jaderný trůn", + "[Achievement name 505]Making light of the situation": "Ulehčení situace", + "[Achievement name 506]Flip a cookie. Chips, I win. Crust, you lose.": "Otočte sušenku. Žetony, vyhrávám. Kůra - prohraješ.", + "[Achievement name 507]In and of itself": "Sám o sobě", + "[Achievement name 508]Duck typing": "Kachní psaní", + "[Achievement name 509]They'll never know what hit 'em": "Nikdy nebudou vědět, co je zasáhlo", + "[Achievement name 510]Well-versed": "Pevný v kramflecích, jistý", + "[Achievement name 511]Ripe for the picking": "Zralý a připravený ke sběru", + "[Achievement name 512]Unreal": "Neskutečný", + "[Achievement name 513]Once you've seen one": "Jakmile jeden uvidíte", + "[Achievement name 514]Spoils and plunder": "Kořist a drancování", + "[Achievement name 515]Nobody exists on purpose, nobody belongs anywhere": "Nikdo neexistuje záměrně, nikdo nikam nepatří", + "[Achievement name 516]Hyperspace expressway": "Hyperprostorová dálnice", + "[Achievement name 517]Versatile": "Univerzální", + "[Achievement name 518]You are inevitable": "Jste nevyhnutelný", + "[Achievement name 519]Away from this place": "Daleko od tohoto místa", + "[Achievement name 520]Everywhere at once": "Všude najednou", + "[Achievement name 521]Reject reality, substitute your own": "Odmítněte realitu, žijte svou vlastní", + "[Achievement name 522]Fringe": "Třásně", + "[Achievement name 523]Coherence": "Soudržnost", + "[Achievement name 524]Earth-616": "Země-616", + "[Achievement name 525]Strange topologies": "Zvláštní topologie", + "[Achievement name 526]Grand design": "Velký design", + "[Achievement name 527]Ecumenopolis": "Ekumenopolis", + "[Achievement name 528]The full picture": "Celý obrázek", + "[Achievement name 529]When there's nothing left to add": "Když už není co přidat", + "[Achievement name 530]Sexcentennial": "Výročí 600 let", + "[Achievement name 531]Keep going until I say stop": "Pokračuj, dokud neřeknu stop", + "[Achievement name 532]But I didn't say stop, did I?": "Ale neřekl jsem stop, že?", + "[Achievement name 533]With unrivaled fervor": "S bezkonkurenční horlivostí", + "[Achievement name 534]Think big": "Přemýšlejte ve velkém", + "[Achievement name 535]Hypersize me": "Zvětšete mě", + "[Achievement name 536]Max capacity": "Maximální kapacita", + "[Achievement name 537]Liquid assets": "Likvidní aktiva", + "[Achievement name 538]Stifling the press": "Potlačení tisku", + "[Achievement name 539]It's big brain time": "Přišel čas mozků", + "[Achievement name 540]Just my imagination": "Mám jen bujnou fantazii", + "[Achievement name 541]Now there's an idea": "To je nápad", + "[Achievement name 542]The organ that named itself": "Orgán, který si sám našel jméno", + "[Achievement name 543]Gyrification": "Gyrifikace", + "[Achievement name 544]A trademarked portmanteau of \"imagination\" and \"engineering\"": "Patentované spojení \"fantazie\" a \"inženýrství\"", + "[Achievement name 545]Mindfulness": "Všímavost", + "[Achievement name 546]The 10% myth": "10% mýtus", + "[Achievement name 547]Don't think about it too hard": "Zase tak nad tím nebádejte", + "[Achievement name 548]Though fools seldom differ": "Hlupáci jsou jeden jako druhý", + "[Achievement name 549]Looking kind of dumb": "Vypadá to celkem hloupě", + "[Achievement name 550]A beautiful mind": "Čistá duše", + "[Achievement name 551]Cardinal synapses": "Kardinální synapse", + "[Achievement name 552]Positive thinking": "Pozitivní myšlení", + "[Achievement name 553]The thought that counts": "Myšlenka, která se počítá", + "[Achievement name 554]Unthinkable": "Nemyslitelné", + "[Achievement name 555]Gifted": "Rozený talent", + "[Achievement name 556]They moistly come at night": "Většinou přicházejí v noci", + "[Achievement name 557]It's grown on you": "Přirostlo vám to k srdci", + "[Achievement name 558]Don't let the walls cave in on you": "Nedovolte, aby vás stěny zavalily", + "[Achievement name 559]Replaced by robots": "Nahrazeno roboty", + "[Achievement name 560]Financial prodigy": "Finanční zázrak", + "[Achievement name 561]And I will pray to a big god": "A já se budu modlit k velkému bohu", + "[Achievement name 562]Shosple Colupis": "Polní škotřeby", + "[Achievement name 563]False vacuum": "Falešné vakuum", + "[Achievement name 564]Metallic taste": "Kovová chuť", + "[Achievement name 565]Swiss cheese": "Švýcarský sýr", + "[Achievement name 566]But the future refused to change": "Ale budoucnost se odmítla změnit", + "[Achievement name 567]What's the dark matter with you": "Temná hmota, kam se podíváš", + "[Achievement name 568]Enlightenment": "Osvícení", + "[Achievement name 569]Never tell me the odds": "Už ani slovo o šancích", + "[Achievement name 570]Blowing an Apollonian gasket": "Vykouzlení apollonského rysu", + "[Achievement name 571]Get with the program": "Sem s programem", + "[Achievement name 572]Lost your cosmic marbles": "Ztráta vesmírných kuliček", + "[Achievement name 573]By will alone I set my mind in motion": "K rozpohybování mysli mi stačila vůle", + "[Achievement name 574]Ain't that a click in the head": "Kliklo mi v hlavě", + "[Achievement name 575]Sexcentennial and a half": "Šest set pade", + "[Achievement name 576]I am speed": "Já jsem rychlost", + "[Achievement name 577]And on and on": "A dál a dál", + "[Achievement name 578]Fake it till you bake it": "Fake it till you bake it", + "[Achievement name 579]History in the baking": "Historie pečení", + "[Achievement name 580]Baby it's old outside": "Venku je to starý, bejby", + "[Achievement name 581]Myriad": "Myriáda", + "[Achievement name 582]Kaizen": "Kaizen", + "[Achievement name 583]Beyond quality": "Za hranicí kvality", + "[Achievement name 584]Everything happens so much": "Děje se toho kvantum", + "[Achievement name 585]I'll rest when I'm dead": "Spát můžu v hrobě", + "[Achievement name 586]What do you get for the baker who has everything": "Co dostanete za pekaře v plné palbě", + "[Achievement name 587]Bottomless pit": "Bezedná jáma", + "[Achievement name 588]All the stars in heaven": "Všechny hvězdy na nebi" +}); \ No newline at end of file diff --git a/gversion/gs/cookieclicker/loc/DE.js b/gversion/gs/cookieclicker/loc/DE.js new file mode 100644 index 0000000..cb23407 --- /dev/null +++ b/gversion/gs/cookieclicker/loc/DE.js @@ -0,0 +1,3324 @@ +AddLanguage('DE','german',{ + "": { + "language": "DE", + "plural-forms": "nplurals=2;plural=(n!=1);" + }, + "cookie": "Keks", + "sugar lump": "Würfelzucker", + "heavenly chip": "Himmlischer Splitter", + "wrinkler": "Falter", + "building": "Gebäude", + "upgrade": "Upgrade", + "golden cookie": "Goldener Keks", + "grandmapocalypse": "Omakalypse", + "%1 cookie": [ + "%1 Keks", + "%1 Kekse" + ], + "%1 sugar lump": [ + "%1 Würfelzucker", + "%1 Würfelzucker" + ], + "%1 heavenly chip": [ + "%1 himmlischer Splitter", + "%1 himmlische Splitter" + ], + "%1 golden cookie": [ + "%1 goldener Keks", + "%1 goldene Kekse" + ], + "%1 building": [ + "%1 Gebäude", + "%1 Gebäude" + ], + "%1 upgrade": [ + "%1 Upgrade", + "%1 Upgrades" + ], + "Yes": "Ja", + "No": "Nein", + "Click here": "Klicke hier", + "Don't show this again": "Zeig das nicht nochmal", + "Delete all": "Alle löschen", + "Back": "Zurück", + "Confirm": "Bestätigen", + "All done!": "Alles erledigt!", + "Load": "Laden", + "Save": "Speichern", + "Quit": "Beenden", + "Save & Quit": "Speichern und Beenden", + "Cancel": "Abbrechen", + "Nevermind": "Verwerfen", + "Random": "Zufällig", + "You have %1.": "Du hast %1.", + "Click": "Klick", + "Shift": "/", + "Shift-click": "Shift Klick", + "Ctrl": "Strg", + "Ctrl-click": "Strg Klick", + "Esc": "/", + "Cookies": "Kekse", + "%1 day": [ + "%1 Tag", + "%1 Tage" + ], + "%1 hour": [ + "%1 Stunde", + "%1 Stunden" + ], + "%1 minute": [ + "%1 Minute", + "%1 Minuten" + ], + "%1 second": [ + "%1 Sekunde", + "%1 Sekunden" + ], + "less than 1 second": "weniger als 1 Sekunde", + "in %1": "/", + "%1 ago": "vor %1", + "%1 remaining": "%1 verbleibend", + "%1 worth": "%1 Produktionswert", + "%1 of CpS": "%1 der KpS", + "%1% of bank": "%1% des Besitzes", + "per second:": "/", + "just now": "eben gerade", + "a long while": "eine lange Zeit", + "forever": "für immer", + "Time remaining:": "Verbleibende Zeit:", + "Big clickable cookie": "Großer klickbarer Keks", + "Golden cookie": "Goldener Keks", + "Wrath cookie": "Zornkeks", + "Reindeer": "Rentier", + "Options": "Optionen", + "General": "Allgemein", + "Settings": "Einstellungen", + "Volume": "Lautstärke", + "Volume (music)": "Lautstärke (Musik)", + "ON": "AN", + "OFF": "AUS", + "Fancy graphics": "Tolle Grafik", + "CSS filters": "CSS Filter", + "visual improvements; disabling may improve performance": "visuelle Verbesserungen; Deaktivierung kann die Leistung verbessern", + "Particles": "Partikel", + "Numbers": "Zahlen", + "numbers that pop up when clicking the cookie": "Zahlen, die beim Anklicken des Kekses auftauchen", + "Milk [setting]": "Milch", + "Cursors [setting]": "Cursor", + "visual display of your cursors": "visuelle Anzeige deiner Cursor", + "Wobbly cookie": "Wackeliger Keks", + "Alt cookie sound": "Alternativer Keks-Sound", + "Icon crates": "Symbolkisten", + "display boxes around upgrades and achievements in Stats": "Boxen um Upgrades und Erfolge in den Statistiken anzeigen", + "Alt font": "Alternative Schriftart", + "your cookies are displayed using a monospace font": "Deine Kekse werden in einer Monospace-Schriftart angezeigt", + "Short numbers": "Kurze Zahlen", + "Fast notes": "Schnelle Notizen", + "notifications disappear much faster": "Benachrichtigungen verschwinden viel schneller", + "Closing warning": "Warnung beim Schließen", + "the game will ask you to confirm when you close the window": "Das Spiel fragt dich nach einer Bestätigung, wenn du das Fenster schließt", + "Defocus": "Defokussieren", + "the game will be less resource-intensive when out of focus": "Das Spiel wird weniger ressourcenintensiv sein, wenn es unscharf ist", + "Extra buttons": "Extra-Tasten", + "add options on buildings like Mute": "Optionen für Gebäude wie Stummtasten hinzufügen", + "Lump confirmation": "Würfelzucker Bestätigung", + "the game will ask you to confirm before spending sugar lumps": "Das Spiel wird dich vor dem Ausgeben von Würfelzucker um eine Bestätigung bitten", + "Custom grandmas": "Individuelle Omas", + "some grandmas will be named after Patreon supporters": "einige Omas werden nach Patreon Unterstützern benannt werden", + "Scary stuff": "Unheimliches Zeug", + "Sleep mode timeout": "Zeitüberschreitung Schlafmodus", + "on slower computers, the game will put itself in sleep mode when it's inactive and starts to lag out; offline CpS production kicks in during sleep mode": "auf langsameren Computern versetzt sich das Spiel in den Schlafmodus, wenn es inaktiv ist und anfängt zu laggen; die Offline-KpS-Produktion setzt während des Schlafmodus ein", + "Music in background": "Musik im Hintergrund abspielen", + "music will keep playing even when the game window isn't focused": "Die Musik spielt weiter, auch wenn das Spielfenster nicht aktiv ist.", + "Cloud saving": "Cloud-Speicherung", + "allow use of Steam Cloud for save backups": "Nutzung der Steam Cloud für Speicher-Backups erlauben", + "Purge Cloud": "Cloud leeren", + "Current Cloud use:": "Aktuelle Cloud-Nutzung:", + "No Cloud access at the moment.": "Momentan gibt es keinen Cloud-Zugang.", + "Screen reader mode": "Bildschirmleser-Modus", + "allows optimizations for screen readers; game will reload": "Ermöglicht Optimierungen für Bildschirmleser; Spiel wird neu geladen", + "Discord status": "Discord-Status", + "if Discord is on, show your game info as activity status": "Wenn Discord eingeschaltet ist, zeige deine Spielinformationen als Aktivitätsstatus an", + "Language": "Sprache", + "Language: %1": "Sprache: %1", + "Change language": "Sprache wechseln", + "note: this will save and reload your game": "Hinweis: Dies wird dein Spiel gespeichert und neu geladen.", + "Press %1 to toggle fullscreen.": "Drücke %1, um den Vollbildmodus einzuschalten.", + "Other versions": "Andere Versionen", + "Beta": "/", + "Stats": "Statistiken", + "Shadow achievements": "Geheime Erfolge", + "These are feats that are either unfair or difficult to attain. They do not give milk.": "Das sind Errungenschaften, die entweder unfair oder schwer zu erreichen sind. Sie geben keine Milch.", + "starter milk": "Anfangsmilch", + "for %1 achievements": "für %1 Erfolge", + "appeased": "Beschwichtigt", + "awoken": "Erweckt", + "displeased": "Unzufrieden", + "angered": "Wütend", + "Cookies in bank:": "Kekse in der Bank:", + "Cookies baked (this ascension):": "Kekse gebacken (dieser Aufstieg):", + "Cookies baked (all time):": "Kekse gebacken (insgesamt):", + "Cookies forfeited by ascending:": "Kekse verloren durch Aufsteigen:", + "Legacy started:": "Vermächtnis gestartet:", + "with %1 ascension": [ + "mit %1 Aufstieg", + "mit %1 Aufstiegen" + ], + "Run started:": "Durchlauf gestartet:", + "Buildings owned:": "Gebäude im Besitz:", + "Cookies per second:": "Kekse pro Sekunde:", + "Raw cookies per second:": "Normale Kekse pro Sekunde:", + "highest this ascension:": "Höchster Wert dieser Aufstieg:", + "multiplier:": "Multiplikator:", + "withered:": "verwelkt:", + "Cookies per click:": "Kekse pro Klick:", + "Cookie clicks:": "Klicks auf den Keks:", + "Hand-made cookies:": "Handgefertigte Kekse:", + "Golden cookie clicks:": "Klicks auf goldene Kekse:", + "Random drop multiplier:": "Zufälliger Drop-Multiplikator:", + "all time:": "insgesamt:", + "Running version:": "Derzeitige Version:", + "Special": "Besonderes", + "Challenge mode:": "Herausforderungsmodus:", + "Seasonal event:": "Saisonales Event:", + "Research:": "Forschung:", + "Grandmatriarchs status:": "Status der Großmatriarchen:", + "Pledge:": "Schwören:", + "Wrinklers popped:": "Falter zerplatzt:", + "Sugar lumps harvested:": "Würfelzucker geerntet:", + "Reindeer found:": "Rentier gefunden:", + "Santa stages unlocked:": "Santa Stufen freigeschaltet:", + "Dragon training:": "Drachentraining:", + "Prestige": "/", + "at %1% of its potential (+%2% CpS)": "bei %1% des Potenzials (+%2% KpS)", + "Prestige upgrades unlocked:": "Prestige Upgrades freigeschaltet:", + "Upgrades unlocked:": "Upgrades freigeschaltet:", + "Achievements unlocked:": "Erfolge freigeschaltet:", + "Kitten multiplier:": "Katzenmultiplikator:", + "Milk": "Milch", + "Milk:": "Milch:", + "Milk flavors unlocked:": "Milchgeschmäcker freigeschaltet:", + "Milk is gained with each achievement. It can unlock unique upgrades over time.": "Milch wird mit jedem Erfolg gewonnen. Sie kann mit der Zeit einzigartige Upgrades freischalten.", + "Rank %1": "Rang %1", + "Automatic": "Automatisch", + "Plain milk": "Normale Milch", + "Chocolate milk": "Schokoladenmilch", + "Raspberry milk": "Himbeermilch", + "Orange milk": "Orangenmilch", + "Caramel milk": "Karamellmilch", + "Banana milk": "Bananenmilch", + "Lime milk": "Limettenmilch", + "Blueberry milk": "Blaubeerenmilch", + "Strawberry milk": "Erdbeermilch", + "Vanilla milk": "Vanillemilch", + "Zebra milk": "Zebramilch", + "Cosmic milk": "Kosmische Milch", + "Flaming milk": "Feurige Milch", + "Sanguine milk": "Blutige Milch", + "Midas milk": "Midasmilch", + "Midnight milk": "Mitternachtsmilch", + "Green inferno milk": "Grüne Infernomilch", + "Frostfire milk": "Frostfeuermilch", + "Honey milk": "Honigmilch", + "Coffee milk": "Kaffeemilch", + "Tea milk": "Teemilch", + "Coconut milk": "Kokosnussmilch", + "Cherry milk": "Kirschmilch", + "Soy milk": "Sojamilch", + "Spiced milk": "Zimtmilch", + "Maple milk": "Ahornmmilch", + "Mint milk": "Pfefferminzmilch", + "Licorice milk": "Lakritzmilch", + "Rose milk": "Rosenmilch", + "Dragonfruit milk": "Drachenfruchtmilch", + "Info": "/", + "About": "Über uns", + "Cookie Clicker is a javascript game by %1 and %2.": "Cookie Clicker ist ein Javascript-Spiel von %1 und %2.", + "Music by %1.": "Musik von %1.", + "Useful links: %1, %2, %3, %4.": "Nützliche Links: %1, %2, %3, %4.", + "This version of Cookie Clicker is 100% free, forever. Want to support us so we can keep developing games? Here's some ways you can help:%1": "Diese Version von Cookie Clicker ist 100% kostenlos, für immer. Möchtest du uns unterstützen, damit wir weiterhin Spiele entwickeln können? Hier sind einige Möglichkeiten, wie du helfen kannst:%1", + "Note: if you find a new bug after an update and you're using a 3rd-party add-on, make sure it's not just your add-on causing it!": "Hinweis: Wenn du nach einem Update einen neuen Bug entdeckst und ein Add-on eines Drittanbieters verwendest, stelle sicher, dass es nicht nur an deinem Add-on liegt!", + "Warning: clearing your browser cache or cookies (what else?) will result in your save being wiped. Export your save and back it up first!": "Warnung: Wenn du deinen Browser-Cache oder deine Cookies (was sonst?) löschst, wird dein Spielstand gelöscht. Exportiere deinen Spielstand und sichere ihn vorher!", + "Version history": "Versionsverlauf", + "Official website": "Offizielle Website", + "Note: links will open in your web browser.": "Hinweis: Die Links werden in deinem Webbrowser geöffnet.", + "Note: older update notes are in English.": "Hinweis: ältere Patchnotes sind auf Englisch.", + "This feature is not yet available in your language.": "Diese Funktion ist in deiner Sprache noch nicht verfügbar.", + "Restart with new changes": "Neustart mit neuen Änderungen", + "Cookie Clicker is in sleep mode.": "Cookie Clicker ist im Schlafmodus.", + "Cookie Clicker is in sleep mode and generating offline cookies.": "Cookie Clicker befindet sich im Schlafmodus und erzeugt Offline-Kekse.", + "%1 to resume from your save file.": "%1 um von deiner Speicherdatei fortzufahren.", + "(this happens when too many frames are skipped at once,
usually when the game has been running in the background for a while)
(you can turn this feature off in the settings menu)": "(das passiert, wenn zu viele Frames auf einmal übersprungen werden,
normalerweise, wenn das Spiel eine Weile im Hintergrund gelaufen ist)
(du kannst diese Funktion im Einstellungsmenü ausschalten)", + "Are you sure you want to close Cookie Clicker?": "Bist du sicher, dass du Cookie Clicker schließen möchtest?", + "Back up your save!": "Sichere deinen Spielstand!", + "Hello again! Just a reminder that you may want to back up your Cookie Clicker save every once in a while, just in case.
To do so, go to Options and hit \"Export save\" or \"Save to file\"!": "Hallo nochmal! Nur zur Erinnerung, dass du deinen Cookie Clicker von Zeit zu Zeit sichern solltest, nur für den Fall der Fälle.
Um das zu tun, gehe in die Optionen und klicke auf \"Speicherstand exportieren\" oder \"In Datei speichern\"!", + "Save manually (the game autosaves every 60 seconds; shortcut: ctrl+S)": "Manuell speichern (das Spiel speichert automatisch alle 60 Sekunden; Tastenkombination: Strg+S)", + "You can use this to backup your save or to transfer it to another computer (shortcut for import: ctrl+O)": "Damit kannst du deinen Spielstand sichern oder auf einen anderen Computer übertragen (Tastaturkürzel für Import: Strg+O)", + "Save to file": "In Datei speichern", + "Load from file": "Aus Datei laden", + "Use this to keep backups on your computer": "Verwende dies, um Backups auf deinem Computer aufzubewahren", + "Export save": "Spielstand exportieren", + "This is your save code.
Copy it and keep it somewhere safe!": "Das ist dein Speichercode.
Kopiere ihn und bewahre ihn irgendwo sicher auf!", + "Import save": "Speicherstand importieren", + "Please paste in the code that was given to you on save export.": "Bitte füge den Code ein, den du beim Exportieren des Speicherstands erhalten hast.", + "Game saved": "Spiel gespeichert", + "Game loaded": "Spiel geladen", + "Error while saving": "Fehler beim Speichern", + "Export your save instead!": "Exportiere stattdessen deinen Spielstand!", + "Error importing save": "Fehler beim Importieren des Speicherstandes", + "Oops, looks like the import string is all wrong!": "Ups, sieht so aus, als ob der Importcode ganz falsch ist!", + "You are attempting to load a save from a future version (v. %1; you are using v. %2).": "Du versuchst, einen Spielstand aus einer zukünftigen Version zu laden (V. %1; du verwendest V. %2).", + "Sorry, you can't import saves from the classic version.": "Leider kannst du keine Spielstände aus der klassischen Version importieren.", + "Wipe save": "Speicherstände löschen", + "Delete all your progress, including your achievements": "Lösche deinen gesamten Fortschritt, einschließlich deiner Erfolge", + "Do you REALLY want to wipe your save?
You will lose your progress, your achievements, and your heavenly chips!": "Willst du WIRKLICH deinen Spielstand löschen?
Du wirst deinen Fortschritt, deine Erfolge und deine himmlischen Splitter verlieren!", + "Whoah now, are you really, REALLY sure you want to go through with this?
Don't say we didn't warn you!": "Bist du dir wirklich sicher, dass du das wirklich, WIRKLICH durchziehen willst?
Sage nicht, wir hätten dich nicht gewarnt!", + "Game reset": "Spiel zurücksetzen", + "Good bye, cookies.": "Auf Wiedersehen, Kekse.", + "Welcome back!": "Willkommen zurück!", + "You earned %1 while you were away.": "Du hast %1 verdient, während du weg warst.", + "Mods": "/", + "Manage mods": "Mods verwalten", + "Publish mods": "Mods veröffentlichen", + "Update published mods": "Veröffentlichte Mods aktualisieren", + "Only use mods from trusted sources. Some mods may require a game restart to take effect.": "Verwende nur Mods aus vertrauenswürdigen Quellen. Einige Mods können einen Neustart des Spiels erfordern, um wirksam zu werden.", + "Enable": "Aktivieren", + "Disable": "Deaktivieren", + "Priority up": "Priorität nach oben", + "Priority down": "Priorität nach unten", + "New mod": "Neue Mod", + "Select folder": "Ordner auswählen", + "Select updated folder": "Aktualisierten Ordner auswählen", + "Select a mod.": "Wähle eine Mod.", + "Open folder": "Ordner öffnen", + "Open Workshop": "Workshop öffnen", + "Open Workshop page": "Workshopseite öffnen", + "Unsubscribe": "Kündigen", + "Local mod": "Lokale Mod", + "Open %1 folder": "Ordner %1 öffnen", + "Description": "Beschreibung", + "Image": "Bild", + "Name": "/", + "Title": "Titel", + "Visibility": "Sichtbarkeit", + "Author": "Autor", + "File size": "Dateigröße", + "Tags": "/", + "Dependencies": "Abhängigkeiten", + "Publish to Workshop": "Im Workshop veröffentlichen", + "Version": "/", + "Error!": "Fehler!", + "none": "keine", + "Publishing...": "Veröffentlichen...", + "Updating...": "Updaten...", + "Success!": "Erfolg!", + "Refresh": "Aktualisieren", + "Last update:": "Letzte Aktualisierung:", + "Mods are loaded from top to bottom.": "Mods werden von oben nach unten geladen.", + "Some mods couldn't be loaded:": "Einige Mods konnten nicht geladen werden:", + "This tool allows you to upload new mods to the Steam Workshop.
You need to select a mod folder containing a properly-formatted %1 file.
See the included sample mods for examples.": "Mit diesem Tool kannst du neue Mods in den Steam Workshop hochladen.
Du musst einen Mod-Ordner auswählen, der eine richtig formatierte %1-Datei enthält.
Beispiele für Mods findest du in den mitgelieferten Beispielen.", + "Mod data": "Mod Daten", + "No mod data present.": "Keine Mod-Daten vorhanden.", + "These are the mods present in your save data. You may delete some of this data to make your save file smaller.": "Dies sind die Mods, die in deinen Speicherdaten vorhanden sind. Du kannst einige dieser Daten löschen, um deine Speicherdatei kleiner zu machen.", + "(loaded)": "(geladen)", + "%1 char": [ + "%1 Zeichen", + "%1 Zeichen" + ], + "Check mod data": "Mod Daten prüfen", + "view and delete save data created by mods": "Von Mods erstellte Speicherdaten ansehen und löschen", + "New update!": "Neues Update!", + "New version available: v. %1!": "Neue Version verfügbar: V. %1!", + "Update note: \"%1\"": "Update-Hinweis: \"%1\"", + "Refresh to get it!": "Aktualisiere, um es zu bekommen!", + "You are currently playing Cookie Clicker on the %1 protocol.
The %2 version uses a different save slot than this one.
Click this lock to reload the page and switch to the %2 version!": "Du spielst gerade Cookie Clicker auf dem %1 Protokoll.
Die %2 Version benutzt einen anderen Speicherplatz als diese.
Klicke auf dieses Schloss, um die Seite neu zu laden und zur %2 Version zu wechseln!", + "+%1 more notification.": [ + "+%1 weitere Benachrichtigung.", + "+%1 weitere Benachrichtigungen." + ], + "Christmas": "Weihnachten", + "Valentine's day": "Valentinstag", + "Business day": "Tag der Arbeit", + "Easter": "Ostern", + "Halloween": "/", + "%1 has started!": "%1 hat begonnen!", + "%1 is over.": "%1 ist vorbei.", + "%1's bakery": "%1's Bäckerei", + "Name your bakery": "Benenne deine Bäckerei", + "What should your bakery's name be?": "Was soll der Name deiner Bäckerei sein?", + "bakery random name, 1st half": [ + "Magischer", + "Fantastischer", + "Schicker", + "Frecher", + "Schnickschnack", + "Schöner", + "Süßer", + "Piraten", + "Ninja", + "Zombie", + "Roboter", + "Radikaler", + "Städtischer", + "Cooler", + "Höllischer", + "Süßer", + "Schrecklicher", + "Doppelter", + "Dreifacher", + "Turbo", + "Techno", + "Disco", + "Electro", + "Tanzender", + "Wunder", + "Mutanten", + "Weltraum", + "Wissenschaft", + "Mittelalter", + "Zukunft", + "Captain", + "Bärtiger", + "Toller", + "Kleiner", + "Großer", + "Feuer", + "Wasser", + "Gefrorener", + "Metall", + "Plastik", + "Fester", + "Flüssiger", + "Schimmliger", + "Glänzender", + "Glücklicher", + "Glücklicher kleiner", + "Schleimiger", + "Leckerer", + "Köstlicher", + "Hungriger", + "Gieriger", + "Tödlicher", + "Professor", + "Doktor", + "Kraft", + "Schokolade", + "Krümeliger", + "Schokolit", + "Rechtschaffender", + "Glorreicher", + "Mnemonischer", + "Psychischer", + "Frenetischer", + "Hektischer", + "Verrückter", + "Königlicher", + "El", + "Von" + ], + "bakery random name, 2nd half": [ + "Keks", + "Biscuit", + "Muffin", + "Teegebäck", + "Cupcake", + "Pfannekuchen", + "Splitter", + "Ritzel", + "Gizmo", + "Puppe", + "Fausthandschuh", + "Socke", + "Teekanne", + "Mysterium", + "Bäcker", + "Koch", + "Oma", + "Klick", + "Klicker", + "Raumschiff", + "Fabrik", + "Portal", + "Maschine", + "Experiment", + "Monster", + "Panik", + "Räuber", + "Bandit", + "Beute", + "Kartoffel", + "Pizza", + "Burger", + "Wurst", + "Fleischklops", + "Spaghetti", + "Maccaroni", + "Katze", + "Welpe", + "Giraffe", + "Zebra", + "Papagei", + "Delfin", + "Entenküken", + "Faultier", + "Schildkröte", + "Goblin", + "Fee", + "Gnom", + "Computer", + "Pirate", + "Ninja", + "Zombie", + "Roboter" + ], + "bakery random name": [ + "Magischer Keks", + "Elektro-Muffin", + "Süßer Pfannekuchen", + "Schokokätzchen", + "Vanillehündchen", + "Piratenroboter", + "Captain Bratwurst", + "Kleines Monster", + "Weltraum-Zombie", + "Hungrige Oma", + "Techno-Burger", + "Turbo-Pizza", + "Mittelalterlicher Delfin", + "Hellseher-Schildkröte", + "Tanzender Bandit", + "Mutantenbäcker", + "Leckeres Gebäck", + "Glückliches kleines Entlein", + "Tödliche Maccharoni" + ], + "%1, age %2": "%1, Alter %2", + "Sugar lumps!": "Würfelzucker!", + "Because you've baked a billion cookies in total, you are now attracting sugar lumps. They coalesce quietly near the top of your screen, under the Stats button.
You will be able to harvest them when they're ripe, after which you may spend them on all sorts of things!": "Da du insgesamt eine Milliarde Kekse gebacken habst, ziehst du nun Würfelzucker an. Sie sammeln sich in der Nähe des oberen Bildschirmrandes unter der Schaltfläche \"Statistik\".
Wenn sie reif sind, kannst du sie ernten und für alles Mögliche ausgeben!", + "A sugar lump is coalescing here, attracted by your accomplishments.": "Ein Würfelzucker sammelt sich hier, angezogen von deinen Errungenschaften.", + "Your sugar lumps mature after %1,
ripen after %2,
and fall after %3.": "Dein Würfelzucker reift nach %1,
reift nach %2,
und fällt nach %3.", + "• Sugar lumps can be harvested when mature, though if left alone beyond that point they will start ripening (increasing the chance of harvesting them) and will eventually fall and be auto-harvested after some time.
• Sugar lumps are delicious and may be used as currency for all sorts of things.
• Once a sugar lump is harvested, another one will start growing in its place.
• Note that sugar lumps keep growing when the game is closed.": "• Die Würfelzucker können geerntet werden, wenn sie reif sind, aber wenn sie darüber hinaus in Ruhe gelassen werden, beginnen sie zu reifen (was die Chance erhöht, sie zu ernten) und fallen schließlich herunter und werden nach einiger Zeit automatisch geerntet.
• Würfelzucker sind köstlich und können als Währung für alle möglichen Dinge verwendet werden.
• Sobald ein Würfelzucker geerntet wurde, beginnt ein anderer an seiner Stelle zu wachsen.
• Beachte, dass Würfelzucker weiter wachsen, wenn das Spiel geschlossen ist.", + "This sugar lump has been exposed to time travel shenanigans and will take an excruciating %1 to reach maturity.": "Dieser Würfelzucker wurde dem Zeitreisemodus ausgesetzt und wird einen qualvollen %1 brauchen, um seine Reife zu erreichen.", + "This sugar lump is still growing and will take %1 to reach maturity.": "Dieser Würfelzucker ist noch im Wachstum und wird %1 brauchen, um seine Reife zu erreichen.", + "This sugar lump is mature and will be ripe in %1.
You may click it to harvest it now, but there is a 50% chance you won't get anything.": "Dieser Würfelzucker ist reif und wird in %1 reif sein.
Du kannst ihn anklicken, um ihn jetzt zu ernten, aber es besteht eine 50%ige Chance, dass du nichts bekommst.", + "This sugar lump is ripe! Click it to harvest it.
If you do nothing, it will auto-harvest in %1.": "Dieser Würfelzucker ist reif! Klicke ihn an, um ihn zu ernten.
Wenn du nichts tust, wird er in %1 automatisch geerntet.", + "This sugar lump grew to be bifurcated; harvesting it has a 50% chance of yielding two lumps.": "Dieser Würfelzucker ist gegabelt gewachsen; bei der Ernte besteht eine 50%ige Chance, dass er zwei Würfel hervorbringt.", + "This sugar lump grew to be golden; harvesting it will yield 2 to 7 lumps, your current cookies will be doubled (capped to a gain of 24 hours of your CpS), and you will find 10% more golden cookies for the next 24 hours.": "Dieser Würfelzucker ist golden gewachsen; wenn du ihn erntest, erhältst du 2 bis 7 Würfelzucker, deine aktuellen Kekse werden verdoppelt (gedeckelt auf einen Gewinn von 24 Stunden deiner KpS) und du findest 10% mehr goldene Kekse für die nächsten 24 Stunden.", + "This sugar lump was affected by the elders and grew to be meaty; harvesting it will yield between 0 and 2 lumps.": "Dieser Würfelzucker wurde von den Ältesten befallen und ist fleischig geworden; die Ernte wird zwischen 0 und 2 Würfel ergeben.", + "This sugar lump is caramelized, its stickiness binding it to unexpected things; harvesting it will yield between 1 and 3 lumps and will refill your sugar lump cooldowns.": "Dieser Würfelzucker ist karamellisiert, seine Klebrigkeit bindet ihn an unerwartete Dinge; ihn zu ernten ergibt zwischen 1 und 3 Würfel und füllt deine Würfelzucker-Abklingzeiten wieder auf.", + "You harvested %1 while you were away.": "Du hast %1 geerntet, während du weg warst.", + "Sugar blessing activated!": "Zuckersegen aktiviert!", + "Your cookies have been doubled.
+10% golden cookies for the next 24 hours.": "Deine Kekse wurden verdoppelt.
+10% goldene Kekse für die nächsten 24 Stunden.", + "Sugar lump cooldowns cleared!": "Würfelzucker Abklingzeiten abgebaut!", + "Botched harvest!": "Verpfuschte Ernte!", + "Do you want to spend %1 to %2?": "Willst du %1 für %2 ausgeben?", + "Heralds": "Herolde", + "%1 herald": [ + "%1 Herold", + "%1 Herolde" + ], + "Heralds couldn't be loaded. There may be an issue with our servers, or you are playing the game locally.": "Herolde konnten nicht geladen werden. Möglicherweise gibt es ein Problem mit unseren Servern, oder du spielst das Spiel lokal.", + "There are no heralds at the moment. Please consider donating to our Patreon!": "Im Moment gibt es keine Herolde. Bitte erwäge eine Spende für unser Patreon!", + "selflessly inspiring a boost in production for everyone, resulting in %1.": "selbstlos einen Produktionsschub für alle inspiriert, was zu %1 führt.", + "+%1% cookies per second": "+%1% Kekse pro Sekunde", + "You are in a Born again run, and are not currently benefiting from heralds.": "Du befindest dich in einem Wiedergeboren-Run und profitierst derzeit nicht von Herolden.", + "You own the Heralds upgrade, and therefore benefit from the production boost.": "Du besitzt das Upgrade Herolde und profitierst daher von dem Produktionsschub.", + "To benefit from the herald bonus, you need a special upgrade you do not yet own. You will permanently unlock it later in the game.": "Um vom Herold-Bonus zu profitieren, benötigst du ein spezielles Upgrade, das du noch nicht besitzt. Du wirst es später im Spiel dauerhaft freischalten.", + "Heralds are people who have donated to our highest Patreon tier, and are limited to 100.
Each herald gives everyone +1% CpS.
Heralds benefit everyone playing the game, regardless of whether you donated.": "Herald sind Leute, die für unseren höchsten Patreon-Tier gespendet haben und auf 100 begrenzt sind.
Jeder Herold gibt jedem +1% KpS.
Heralds kommen jedem zugute, der das Spiel spielt, unabhängig davon, ob du gespendet hast.", + "Every %1 current players on Steam generates 1 herald, up to %2 heralds.
Each herald gives everyone +1% CpS.": "Jeder %1 aktuelle Spieler auf Steam erzeugt 1 Herold, bis zu %2 Herolde.
Jeder Herold gibt jedem +1% KpS.", + "+%1!": "/", + "You found %1!": "Du hast %1 gefunden!", + "Found %1!": "%1 gefunden!", + "You also found %1!": "Du hast auch %1 gefunden!", + "Lost %1!": "%1 verloren!", + "Sweet!
Found 1 sugar lump!": "Süß!
Stück Würfelzucker gefunden!", + "Lucky!": "Glück!", + "Ruin!": "/", + "Cookie chain over. You made %1.": "Keks-Kette vorbei. Du hast %1 verdient.", + "Cookie chain": "Keks-Kette", + "Cookie chain broken.
You made %1.": "Keks Kette gebrochen.
Du hast %1 verdient.", + "Cookie blab": [ + "Keks Krümeligkeit x3 für 60 Sekunden!", + "Schokoladigkeit x7 für 77 Sekunden!", + "Teigelastizität halbiert sich für 66 Sekunden!", + "Der goldene Keks glänzt 3 Sekunden lang doppelt so stark!", + "Die Weltwirtschaft halbiert sich für 30 Sekunden!", + "Oma küsst 23% länger für 45 Sekunden!", + "Danke fürs Klicken!", + "Reingelegt! Das hier war nur ein Test.", + "Goldene Kekse geklickt +1!", + "Dein Klick wurde registriert. Vielen Dank für deine Mitarbeit.", + "Danke! Das hat genau ins Schwarze getroffen!", + "Vielen Dank! Ein Team wurde losgeschickt.", + "Sie wissen Bescheid.", + "Ups. Das war nur ein Schokoladenkeks mit glänzender Alufolie." + ], + "Exploded a wrinkler": "Einen Falter zum explodieren gebracht", + "Exploded a shiny wrinkler": "Einen leuchtenden Falter zum explodieren gebracht", + "Swallowed:": "Verschlungen:", + "Reindeer names": [ + "Dasher", + "Dancer", + "Prancer", + "Vixen", + "Comet", + "Cupid", + "Donner", + "Blitz", + "Rudolph" + ], + "The reindeer gives you %1.": "Das Rentier gibt dir %1.", + "You are also rewarded with %1!": "Du wirst auch mit %1 belohnt!", + "You are granted %1.": "Du hast %1 bekommen.", + "Found a present!": "Ein Geschenk gefunden!", + "You find a present which contains...": "Du findest ein Geschenk, es enthält...", + "Evolve": "Entwickeln", + "Festive test tube": "Festliches Reagenzglas", + "Festive ornament": "Festliches Ornament", + "Festive wreath": "Festlicher Kranz", + "Festive tree": "Festlicher Baum", + "Festive present": "Festliches Geschenk", + "Festive elf fetus": "Festlicher Elfenfötus", + "Elf toddler": "Elfen-Kleinkind", + "Elfling": "/", + "Young elf": "Junger Elf", + "Bulky elf": "Dicker Elf", + "Nick": "/", + "Santa Claus": "/", + "Elder Santa": "Ältester Santa", + "True Santa": "Wahrer Santa", + "Final Claus": "Finaler Claus", + "Dragon egg": "Drachenei", + "Shivering dragon egg": "Zitterndes Drachenei", + "Krumblor, cookie hatchling": "Krumblor, Keks-Schlüpfling", + "Krumblor, cookie dragon": "Krumblor, Keks-Drache", + "Train %1": "%1 trainieren", + "Aura: %1": "/", + "Chip it": "Zersplittern", + "Hatch it": "Ausbrüten", + "Bake dragon cookie": "Drachenkeks backen", + "Delicious!": "Köstlich!", + "Train secondary aura": "Sekundäre Aura trainieren", + "Lets you use two dragon auras simultaneously": "Lässt dich zwei Drachenauren gleichzeitig benutzen", + "Your dragon is fully trained.": "Dein Drache ist voll ausgebildet.", + "%1 of every building": "%1 von jedem Gebäude", + "No aura": "Keine Aura", + "Set your dragon's aura": "Lege die Aura deines Drachens fest", + "Set your dragon's secondary aura": "Lege die sekundäre Aura deines Drachens fest", + "Select an aura from those your dragon knows.": "Wähle eine Aura aus denen, die dein Drache kennt.", + "One tenth of every other dragon aura, combined.": "Ein Zehntel von jeder anderen Drachenaura, kombiniert.", + "Switching your aura is free because you own no buildings.": "Der Wechsel deiner Aura ist kostenlos, da du keine Gebäude besitzt.", + "The cost of switching your aura is %1.
This will affect your CpS!": "Die Kosten für das Wechseln deiner Aura betragen %1.
Dies wird sich auf deine KpS auswirken!", + "Your dragon dropped something!": "Dein Drache hat etwas fallen lassen!", + "Breath of Milk": "Hauch von Milch", + "Dragon Cursor": "Drachen Cursor", + "Elder Battalion": "Ältestenbataillon", + "Reaper of Fields": "Sensenmann der Felder", + "Earth Shatterer": "Erdzerstörer", + "Master of the Armory": "Meister der Waffenkammer", + "Fierce Hoarder": "Wilder Hamsterer", + "Dragon God": "Drachengott", + "Arcane Aura": "Arkane Aura", + "Dragonflight": "Flug des Drachen", + "Ancestral Metamorphosis": "Metamorphose der Vorfahren", + "Unholy Dominion": "Unheilige Herrschaft", + "Epoch Manipulator": "Epochenmanipulator", + "Mind Over Matter": "Augen zu und durch", + "Radiant Appetite": "Strahlender Appetit", + "Dragon's Fortune": "Glück des Drachen", + "Dragon's Curve": "Drachenbogen", + "Reality Bending": "Wirklichkeitsverbiegung", + "Dragon Orbs": "Drachenkugeln", + "Supreme Intellect": "Höchster Intellekt", + "News :": "Neuigkeiten:", + "Ticker (grandma)": [ + "Feuchte Kekse.", + "Wir sind nette Omas.", + "Schuldknechtschaft.", + "Komm, gib Oma einen Kuss.", + "Warum besuchst du mich nicht öfters?", + "Ruf mich an..." + ], + "Ticker (threatening grandma)": [ + "Absolut ekelhaft.", + "Du machst mich krank.", + "Du ekelst mich an.", + "Wir erheben uns.", + "Es beginnt.", + "Es wird bald alles vorbei sein.", + "Du hättest es verhindern können." + ], + "Ticker (angry grandma)": [ + "Es hat uns verraten, das dreckige kleine Ding.", + "Es hat versucht, uns loszuwerden, das fiese kleine Ding.", + "Es dachte, wir würden weggehen, indem es uns verkauft. Wie drollig.", + "Ich kann deine verdorbenen Kekse riechen." + ], + "Ticker (grandmas return)": [ + "schrumpfen", + "schreiben", + "pochen", + "nagen", + "Wir werden uns wieder erheben.", + "Ein einfacher Rückschlag.", + "Wir sind noch nicht satt.", + "Zu spät." + ], + "Ticker (grandma invasion start)": [ + "Millionen von alten Damen als vermisst gemeldet!", + "Familien auf dem ganzen Kontinent berichten von aufgeregten, verblüfften Großmüttern!", + "Krankenschwestern berichten von \"seltsamem Geruch von Keks-Teig\" um weibliche ältere Patienten!" + ], + "Ticker (grandma invasion rise)": [ + "Die Stadt ist in Aufruhr, als seltsame alte Damen in Häuser einbrechen, um Kleinkinder und Backutensilien zu entführen!", + "Der ganze Kontinent erlebt einen Massenexodus von alten Damen!", + "Alte Frauen frieren an Ort und Stelle in den Straßen ein, triefen vor warmem Zuckersirup!" + ], + "Ticker (grandma invasion full)": [ + "Faltige \"Fleisch-Ranken\" vom Weltraum aus sichtbar!", + "Alle Hoffnung ist verloren, denn eine sich windende Masse aus Fleisch und Teig verschlingt die ganze Stadt!", + "Der Alptraum geht weiter, während sich faltige Fleischberge mit alarmierender Geschwindigkeit ausdehnen!" + ], + "Ticker (Farm)": [ + "Keks-Farmen geben schädliche Schokolade in unsere Flüsse ab, sagt ein Wissenschaftler!", + "Gentechnisch veränderte Schokolade Kontroverse setzt Keks-Bauern zu!", + "Kekse vom Bauernhof gelten als ungeeignet für Veganer, sagt ein Ernährungswissenschaftler." + ], + "Ticker (Mine)": [ + "Wird unser Planet leichter? Experten untersuchen die Auswirkungen des intensiven Schokoladenabbaus.", + "Schokoladenminen, die Erdbeben und Erdrutsche verursachen!", + "Tiefen von Schokoladenminen gefunden, die \"eigentümliche, schokoladige Wesen\" beherbergen!" + ], + "Ticker (Factory)": [ + "Keks-Fabriken mit der globalen Erwärmung verbunden!", + "Keks Fabriken streiken, Roboter werden eingesetzt um die Arbeiter zu ersetzen!", + "Keks-Fabriken im Streik - Arbeiter fordern, nicht mehr in Keksen bezahlt zu werden!" + ], + "Ticker (Bank)": [ + "Keks-Darlehen auf dem Vormarsch, da die Menschen sie sich mit normalem Geld nicht mehr leisten können.", + "Kekse steigen langsam als Konkurrenten zur traditionellen Währung auf!", + "Die meisten Bäckereien sind mittlerweile mit Geldautomaten ausgestattet, um Kekse einfach abheben und einzahlen zu können." + ], + "Ticker (Temple)": [ + "Kürzlich entdeckte Schokoladentempel entfachen jetzt einen neuen Keks-Kult; Tausende beten zu Bäcker im Himmel!", + "Theisten der Welt entdecken neue Keks-Religion - \"Oh Mann, wir haben uns wohl die ganze Zeit geirrt!\"", + "Forscher bringen antikes Artefakt aus verlassenem Tempel zurück; Archäologen staunen über das jahrhundertealte Nudelholz!" + ], + "Ticker (Wizard tower)": [ + "Hol dir deine neuen Zauber und Flüche auf der jährlichen National Spellcrafting Fair! Exklusive Preise auf Runen und Zauberbücher.", + "Keks-Zauberer bestreiten Verwicklung in schockierend hässliches Neugeborenes - Säugling ist \"ehrlich gesagt grottig aussehend, aber natürlich\", sagen Ärzte.", + "\"Jede hinreichend grobe Magie ist von Technologie nicht zu unterscheiden\", behauptet der bekannte Technomagier." + ], + "Ticker (Shipment)": [ + "Neuer Schokoladenplanet gefunden, wird Ziel von Keks-Handelsraumschiffen!", + "Massiver Schokoladenplanet mit 99,8% zertifiziertem reinem Zartbitterschokoladenkern gefunden!", + "Auf Schokolade basierende Organismen auf fernem Planeten gefunden!" + ], + "Ticker (Alchemy lab)": [ + "Die nationalen Goldreserven schwinden, da immer mehr von dem kostbaren Mineral zu Keksen verarbeitet wird!", + "Silber, das auch in weiße Schokolade umgewandelt werden kann!", + "Defektes Alchemie-Labor geschlossen, um Kekse in nutzloses Gold umzuwandeln." + ], + "Ticker (Portal)": [ + "Nation besorgt, da immer mehr beunruhigende Kreaturen aus Dimensionsportalen auftauchen!", + "Tourismus in die Keksdimension beliebt bei gelangweilten Teenagern! Unfallrate von bis zu 73%!", + "Portale zur Keksdimension stehen im Verdacht, schnelles Altern und Backbesessenheit zu verursachen, sagt eine Studie." + ], + "Ticker (Time machine)": [ + "Zeitmaschinen in Geschichtsumschreibungsskandal verwickelt! Oder sind sie es doch?", + "Kekse, die aus der Vergangenheit mitgebracht wurden \"Untauglich für den menschlichen Verzehr\", sagt der Historiker.", + "\"Ich habe die Zukunft gesehen\", sagt der Betreiber der Zeitmaschine, \"und ich möchte nicht noch einmal dorthin gehen.\"" + ], + "Ticker (Antimatter condenser)": [ + "Ganze Stadt scheinbar von Antimaterie-induziertem schwarzem Loch verschluckt; zuverlässigere Quellen bestätigen, dass die Stadt \"nie wirklich existierte\"!", + "Die Forscher kommen zu dem Schluss, dass die Keks-Industrie in erster Linie \"mehr Magnete\" braucht.", + "Erster Antimaterie-Kondensator erfolgreich eingeschaltet, reißt die Realität nicht auseinander!" + ], + "Ticker (Prism)": [ + "Wissenschaftler warnen davor, systematisch Licht in Materie zu verwandeln - \"Eines Tages werden wir nur noch Materie und kein Licht mehr haben!\"", + "Kekse, die dank neuer prismatischer Vorrichtungen jetzt mit Lichtgeschwindigkeit gebacken werden.", + "Weltbürgern geraten, sich über häufige atmosphärische Blitze \"keine Sorgen zu machen\"." + ], + "Ticker (Chancemaker)": [ + "Seltsame statistische Anomalien setzen sich fort, denn die Wettervorhersage erweist sich an 3 Tagen in Folge als richtig!", + "Lokales Casino ruiniert, da alle Spieler irgendwie eine wochenlange Gewinnsträhne haben! \"Wir könnten immer noch sicher sein\", sagt der Besitzer, bevor er 47 Mal vom Blitz getroffen wird.", + "Das Nachbarland wählt irgendwie einen Präsidenten mit einer vernünftigen Richtlinie durch einen verrückten Zufall!" + ], + "Ticker (Fractal engine)": [ + "Ortsansässiger \"fertig mit Cookie Clicker\", findet die ständigen Selbstreferenzen \"zermürbend und auf-die-Nase-gezogen\".", + "Der lokale Guru behauptet: \"In jedem steckt ein bisschen von uns selbst\", gegen den wegen angeblichen Kannibalismus ermittelt wird.", + "Umfragen finden Idee von Keksen aus Keksen \"akzeptabel\" - \"wenigstens wissen wir endlich, was drin ist\", sagt befragter Bürger." + ], + "Ticker (Javascript console)": [ + "Programmieren ist hip! Immer mehr Teenager wenden sich technischen Bereichen wie dem Programmieren zu und sorgen so für eine zukünftige Roboterapokalypse und den Untergang der gesamten Menschheit.", + "Entwickler, die unsicher sind, wie sie ihre neuen Javascript-Bibliotheken nennen sollen, da alle Kombinationen von 3 beliebigen Wörterbuchwörtern bereits vergeben sind.", + "seltsame Modeerscheinung lässt Eltern ihren Neugeborenen Namen wie Emma.js oder Liam.js geben. Zumindest berichtet ein Baby.js." + ], + "Ticker (Idleverse)": [ + "Lebt ein anderes Du seine Träume in einem alternativen Universum aus? Wahrscheinlich, du fauler Penner!", + "\"Ich finde Trost in dem Wissen, dass es zumindest einigen meiner alternativen Ichs da draußen wahrscheinlich gut geht\", sagt das letzte verbliebene Exemplar der Bürger im Multiversum.", + "Comic-Autoren verweisen auf das tatsächliche Multiversum, um fragwürdige Handlungspunkte zu verteidigen. \"Siehst du? Ich habe dir gesagt, dass es nicht 'abgedroschen und erfunden' ist!\"" + ], + "Ticker (Cortex baker)": [ + "Der kleine Kortex Baker hat nur einen fünfstelligen IQ: \"Nur ein kleiner Dummkopf\", sagen Fachleute.", + "Astronomen warnen vor dem Abdriften der Kortex-Baker-Bahn und befürchten, dass künftige Frontalzusammenstöße zu teuren Gehirnerschütterungen führen.", + "Kortexbäcker/innen erinnern die Mitarbeiter/innen freundlich daran, dass Kortexbäcker/innen materielles Eigentum der Bäckerei sind und nicht mit Spitznamen bedacht werden sollten." + ], + "Ticker (Halloween)": [ + "Heidnische Rituale sind auf dem Vormarsch, denn Kinder auf der ganzen Welt verkleiden sich in seltsamen Kostümen und erpressen Hauseigentümer um Süßigkeiten.", + "Kinder auf der ganzen Welt \"verloren und verwirrt\", da alle Halloween-Leckereien durch Kekse ersetzt wurden.", + "Seltsame, sich windende Kreaturen versammeln sich um Keks-Fabriken, knabbern an Fließbändern." + ], + "Ticker (Christmas)": [ + "Bärtiger Irrer auf fliegendem Schlitten gesichtet! Untersuchung läuft noch.", + "Ein fettleibiger, fröhlicher Verrückter läuft immer noch frei herum, warnen die Behörden. \"Bringt eure Kinder in Sicherheit und vernagelt eure Schornsteine. Wir meinen es ernst.\"", + "Ein mysteriöses, festliches Wesen mit Quantenkräften, das immer noch mit einer Armee von Rentieren Chaos anrichtet, sagen die Beamten.", + "\"Du meinst, er verschenkt einfach Sachen?!\", fragen besorgte Mütter. \"Ich persönlich traue seinem Bart nicht.\"", + "Kinder sind schockiert, als sie entdecken, dass der Weihnachtsmann doch nicht nur ihr Vater in einem Kostüm ist!
\"Ich überdenke gerade mein Leben\", gesteht Laura, 6 Jahre alt." + ], + "Ticker (Valentines)": [ + "Die Liebe liegt in der Luft, sagen die Wetterexperten. Gesichtsmasken werden jetzt in jeder Stadt angeboten, um die Ansteckung durch die Luft einzudämmen.", + "Einen Keks heiraten - gestörte Praxis oder ein Blick in die Zukunft?", + "Herzförmige Süßigkeiten überholen das Süßigkeitengeschäft und machen dem Keks-Imperium Konkurrenz." + ], + "Ticker (Easter)": [ + "Langohrige Viecher mit pelzigen Schwänzen dringen in Vororte ein, verbreiten Terror und Schokolade!", + "Eierlegende Kaninchen \"nicht ganz von dieser Dimension\", warnt Biologe; rät davon ab, die Tiere zu streicheln, zu füttern oder zu kochen.", + "Mysteriöse Kaninchen, die sich als eierlegende Tiere entpuppten, aber als Säugetiere, was auf eine mögliche Abstammung von Schnabeltieren hindeutet." + ], + "Ticker (misc)": [ + "Ärzte empfehlen zweimal täglich den Verzehr von frischen Keksen.", + "Ärzte raten von der neuen Keks-freien Modediät ab.", + "Ärzte warnen Mütter vor den Gefahren von \"selbstgemachten Keksen\".", + "\"Ich bin nicht süchtig nach Keksen. Das sind nur Spekulationen von Fans mit zu viel freier Zeit\", verrät der Promi.", + "\"Also gut, ich sage es - ich habe noch nie einen einzigen Keks in meinem Leben gegessen\", verrät der Promi.", + "\"Kekse haben mir geholfen, dünn und gesund zu bleiben\", verrät der Promi.", + "Mann raubt Bank aus und kauft Kekse.", + "Eine neue Studie legt nahe, dass Kekse das Altern weder beschleunigen noch verlangsamen, sondern stattdessen \"dich in eine andere Richtung bringen\".", + "Mann mit Allergie gegen Kekse gefunden; \"Was für ein Spinner\", sagt die Familie.", + "Keks-Knappheit trifft die Stadt, die Leute sind gezwungen, Cupcakes zu essen; \"einfach nicht dasselbe\", räumt der Bürgermeister ein.", + "\"Du musst zugeben, dieser ganze Keks-Kram ist ein bisschen ominös\", sagt der verwirrte Idiot.", + "mysteriöse illegale Kekse beschlagnahmt; \"schmeckt furchtbar\", sagt die Polizei.", + "\"Ook\", sagt der interviewte Orang-Utan.", + "werden unsere Medien von der Keks-Industrie kontrolliert? Das könnte sehr wohl der Fall sein, sagt ein verrückter Verschwörungstheoretiker.", + "\"An diesem Punkt durchdringen Kekse die Wirtschaft\", sagt der Ökonom. \"Wenn wir anfangen, etwas anderes zu essen, sind wir alle tot.\"", + "Kekse jetzt illegal in irgendeinem rückständigen Land, um das sich niemand kümmert. Politische Spannungen nehmen zu; hoffentlich bald Krieg." + ], + "You feel like making cookies. But nobody wants to eat your cookies.": "Du hast Lust, Kekse zu backen. Aber niemand will deine Kekse essen.", + "Your first batch goes to the trash. The neighborhood raccoon barely touches it.": "Deine erste Ladung wandert in den Müll. Der Waschbär aus der Nachbarschaft rührt sie kaum an.", + "Your family accepts to try some of your cookies.": "Deine Familie akzeptiert es, einige deiner Kekse zu probieren.", + "Your cookies are popular in the neighborhood.": "Deine Kekse sind in der Nachbarschaft sehr beliebt.", + "People are starting to talk about your cookies.": "Die Leute fangen an, über deine Kekse zu reden.", + "Your cookies are talked about for miles around.": "Deine Kekse sind in aller Munde.", + "Your cookies are renowned in the whole town!": "Deine Kekse sind in der ganzen Stadt bekannt!", + "Your cookies bring all the boys to the yard.": "Deine Kekse bringen alle Jungs auf den Hof.", + "Your cookies now have their own website!": "Deine Kekse haben jetzt ihre eigene Webseite!", + "Your cookies are worth a lot of money.": "Deine Kekse sind eine Menge Geld wert.", + "Your cookies sell very well in distant countries.": "Deine Kekse verkaufen sich sehr gut in fernen Ländern.", + "People come from very far away to get a taste of your cookies.": "Die Leute kommen von sehr weit her, um deine Kekse zu probieren.", + "Kings and queens from all over the world are enjoying your cookies.": "Könige und Königinnen aus der ganzen Welt erfreuen sich an deinen Keksen.", + "There are now museums dedicated to your cookies.": "Es gibt jetzt Museen, die deinen Keksen gewidmet sind.", + "A national day has been created in honor of your cookies.": "Zu Ehren deiner Kekse wurde ein nationaler Tag ins Leben gerufen.", + "Your cookies have been named a part of the world wonders.": "Deine Kekse wurden zu einem Teil der Weltwunder ernannt.", + "History books now include a whole chapter about your cookies.": "Geschichtsbücher enthalten jetzt ein ganzes Kapitel über deine Kekse.", + "Your cookies have been placed under government surveillance.": "Deine Kekse wurden unter staatliche Überwachung gestellt.", + "The whole planet is enjoying your cookies!": "Der ganze Planet erfreut sich an deinen Keksen!", + "Strange creatures from neighboring planets wish to try your cookies.": "Seltsame Kreaturen von benachbarten Planeten wollen deine Kekse probieren.", + "Elder gods from the whole cosmos have awoken to taste your cookies.": "Ältere Götter aus dem ganzen Kosmos sind erwacht, um deine Kekse zu kosten.", + "Beings from other dimensions lapse into existence just to get a taste of your cookies.": "Wesen aus anderen Dimensionen verfallen in die Existenz, nur um in den Genuss deiner Kekse zu kommen.", + "Your cookies have achieved sentience.": "Deine Kekse haben Empfindungsvermögen erlangt.", + "The universe has now turned into cookie dough, to the molecular level.": "Das Universum hat sich nun in Keksteig verwandelt, bis auf die molekulare Ebene.", + "Your cookies are rewriting the fundamental laws of the universe.": "Deine Kekse schreiben die fundamentalen Gesetze des Universums neu.", + "A local news station runs a 10-minute segment about your cookies. Success!
(you win a cookie)": "Ein lokaler Nachrichtensender bringt einen 10-minütigen Beitrag über deine Kekse. Erfolg!
(du gewinnst einen Keks)", + "it's time to stop playing": "Es ist Zeit mit dem Spielen aufzuhören", + "Today is your lucky day!": "Heute ist dein Glückstag!", + "Your lucky numbers are:": "Deine Glückszahlen sind:", + "Fortune!": "Glück!", + "A golden cookie has appeared.": "Ein goldener Keks ist erschienen.", + "You gain one hour of your CpS (capped at double your bank).": "Du erhältst eine Stunde deiner KpS (gedeckelt auf das Doppelte deiner Bank).", + "You've unlocked a new upgrade.": "Du hast ein neues Upgrade freigeschaltet.", + "Wish granted. Golden cookie spawned.": "Wunsch gewährt. Goldener Keks gespawnt.", + "help me!": "Hilf mir!", + "Ascend": "Aufstieg", + "You've been on this run for %1.": "Du bist schon seit %1 in diesem Durchlauf.", + "Your prestige level is currently %1.
(CpS +%2%)": "Dein Prestigelevel ist derzeit %1.
(KpS +%2%)", + "Ascending now would grant you no prestige.": "Jetzt aufzusteigen würde dir kein Prestige einbringen.", + "Ascending now would grant you
1 prestige level (+1% CpS)
and 1 heavenly chip to spend.": "Der Aufstieg würde dir
1 Prestigelevel (+1% KpS)
und 1 himmlischen Splitter zum Ausgeben geben.", + "Ascending now would grant you
%1 prestige levels (+%2% CpS)
and %3 heavenly chips to spend.": "Der Aufstieg jetzt würde dir
%1 Prestigelevel (+%2% KpS)
und %3 himmlische Splitter zum Ausgeben geben.", + "You need %1 more cookies for the next level.": "Du brauchst %1 weitere Kekse für das nächste Level.", + "Do you REALLY want to ascend?
You will lose your progress and start over from scratch.
All your cookies will be converted into prestige and heavenly chips.": "Willst du WIRKLICH aufsteigen?
Du wirst deinen Fortschritt verlieren und von vorne beginnen.
Alle deine Kekse werden in Prestige und himmlische Splitter umgewandelt.", + "You will keep your achievements.": "Du wirst deine Erfolge behalten.", + "You will keep your achievements, building levels and sugar lumps.": "Du behältst deine Erfolge, Gebäudelevel und Würfelzucker.", + "Ascending": "Aufsteigen", + "So long, cookies.": "Bis dann, Kekse.", + "You forfeit your %1.": "Du verlierst deine %1.", + "Prestige level:": "Prestigelevel:", + "Heavenly chips:": "Himmlische Splitter:", + "%1 prestige level": [ + "%1 Prestigelevel", + "%1 Prestigelevel" + ], + "You gain %1!": "Du bekommst %1!", + "Reincarnate": "Reinkarnation", + "You are ascending.
Drag the screen around
or use arrow keys!
When you're ready,
click Reincarnate.": "Du steigst auf.
Ziehe den Bildschirm herum
oder benutze die Pfeiltasten!
Wenn du bereit bist,
klicke Reinkarnation.", + "Each prestige level grants you a permanent +%1% CpS.
The more levels you have, the more cookies they require.": "Jedes Prestigelevel gewährt dir einen permanenten +%1% KpS.
Je mehr Level du hast, desto mehr Kekse benötigen sie.", + "Heavenly chips are used to buy heavenly upgrades.
You gain 1 chip every time you gain a prestige level.": "Himmlische Splitter werden verwendet, um himmlische Upgrades zu kaufen.
Du erhältst 1 Splitter jedes Mal, wenn du ein Prestigelevel gewinnst.", + "Click this once you've bought
everything you need!": "Klicke hier, sobald du alles gekauft hast,
was du brauchst!", + "Are you ready to return to the mortal world?": "Bist du bereit für die Rückkehr in die Welt der Sterblichen?", + "Hello, cookies!": "Hallo, Kekse!", + "Challenge mode for the next run:": "Herausforderungsmodus für den nächsten Durchlauf:", + "Challenge modes apply special modifiers to your next ascension.
Click to change.": "Herausforderungsmodi wenden spezielle Modifikatoren auf deinen nächsten Aufstieg an.
Klicke zum Ändern.", + "Select a challenge mode": "Wähle einen Herausforderungsmodus", + "None [ascension type]": "Keiner", + "No special modifiers.": "Keine besonderen Modifikatoren.", + "Born again [ascension type]": "Wiedergeboren", + "This run will behave as if you'd just started the game from scratch. Prestige levels and heavenly upgrades will have no effect, as will sugar lumps and building levels. Perma-upgrades and minigames will be unavailable.
Some achievements are only available in this mode.": "Dieser Lauf verhält sich so, als ob du das Spiel von Grund auf neu gestartet hättest. Prestigelevel und himmlische Upgrades haben keinen Einfluss, ebenso wenig wie Würfelzucker und Gebäudelevel. Perma-Upgrades und Minispiele werden nicht verfügbar sein.
Einige Erfolge sind nur in diesem Modus verfügbar.", + "Your bingo center/research facility is conducting experiments.": "Dein Bingozentrum/Forschungseinrichtung führt Experimente durch.", + "Research has begun": "Forschung hat begonnen", + "Research complete": "Forschung komplett", + "You have discovered: %1.": "Du hast entdeckt: %1.", + "Valentine's Day!": "Valentinstag!", + "It's Valentine's season!
Love's in the air and cookies are just that much sweeter!": "Es ist Valentinssaison!
Liebe liegt in der Luft und Kekse sind einfach viel süßer!", + "Business Day!": "Tag der Arbeit!", + "It's Business season!
Don't panic! Things are gonna be looking a little more corporate for a few days.": "Es ist der Tag der Arbeit!
Keine Panik! Die Dinge werden für ein paar Tage ein wenig geselliger aussehen.", + "Halloween!": "/", + "It's Halloween season!
Everything is just a little bit spookier!": "Es ist Halloween!
Alles ist ein bisschen gruseliger!", + "Christmas time!": "Weihnachtszeit!", + "It's Christmas season!
Bring good cheer to all and you just may get cookies in your stockings!": "Es ist Weihnachtszeit!
Bringt gute Laune für alle und ihr bekommt vielleicht Kekse in eure Strümpfe!", + "Easter!": "Ostern!", + "It's Easter season!
Keep an eye out and you just might click a rabbit or two!": "Es ist Ostersaison!
Halte die Augen offen und vielleicht klickst du ein oder zwei Kaninchen!", + "[Tag]Heavenly": "Himmlisch", + "[Tag]Tech": "Tech", + "[Tag]Cookie": "Keks", + "[Tag]Debug": "Debug", + "[Tag]Switch": "Umschalter", + "[Tag]Upgrade": "Upgrade", + "Tier:": "/", + "[Tier]Plain": "Schlicht", + "[Tier]Berrylium": "Berrylium", + "[Tier]Blueberrylium": "Blaubeerrylium", + "[Tier]Chalcedhoney": "Kreidehonig", + "[Tier]Buttergold": "Buttergold", + "[Tier]Sugarmuck": "Zuckerhut", + "[Tier]Jetmint": "Düsenminze", + "[Tier]Cherrysilver": "Kirschsilber", + "[Tier]Hazelrald": "Haselherold", + "[Tier]Mooncandy": "Mondkandis", + "[Tier]Astrofudge": "Astro Toffee", + "[Tier]Alabascream": "Alabastacreme", + "[Tier]Iridyum": "Iridyum", + "[Tier]Synergy I": "Synergie I", + "[Tier]Synergy II": "Synergie II", + "[Tier]Fortune": "Glück", + "[Tier]Self-referential": "Selbstreferenziell", + "Vaulted": "Abgeriegelt", + "Researched": "Erforscht", + "Purchased": "Gekauft", + "Unlocked forever": "Für immer freigeschaltet", + "Click to learn!": "Klicke zum Lernen!", + "Click to unlearn!": "Klicke zum Verlernen!", + "Upgrade": "/", + "Upgrades": "/", + "Achievement": "Erfolg", + "Achievements": "Erfolge", + "Shadow Achievement": "Geheimer Erfolg", + "Unlocked": "Freigeschaltet", + "Locked": "Gesperrt", + "Source:": "Quelle:", + "Click to win!": "Klicke um zu gewinnen!", + "Click to lose!": "Klicke um zu verlieren!", + "Legacy": "Vermächtnis", + "Buildings": "Gebäude", + "Switches": "Schalter", + "Vault": "Abriegelung", + "Research": "Forschung", + "Store": "Shop", + "sacrifice %1": "%1 opfern", + "Click to purchase.": "Zum Kaufen klicken.", + "Click to open selector.": "Klicke, um den Selektor zu öffnen.", + "Click to toggle.": "Zum Umschalten klicken.", + "Click to research.": "Klicke, um zu forschen.", + "%1 to vault.": "%1 zum Abriegeln.", + "%1 to unvault.": "%1 freischalten.", + "Upgrade is vaulted and will not be auto-purchased.": "Das Upgrade ist gesichert und wird nicht automatisch nachgekauft.", + "Upgrade for %1": "Upgrade für %1", + "Buy": "Kaufen", + "Sell": "Verkaufen", + "all": "Alle", + "max": "Max", + "Buy all upgrades": "Alle Upgrades kaufen", + "Will instantly purchase every upgrade you can afford, starting from the cheapest one.
Upgrades in the vault will not be auto-purchased.
You may place an upgrade into the vault by Shift-clicking on it.": "Kauft sofort jedes Upgrade, das du dir leisten kannst, beginnend mit dem billigsten.
Upgrades im Tresor werden nicht automatisch gekauft.
Du kannst ein Upgrade in den Tresor legen, indem du mit der Umschalttaste auf es klickst.", + "each %1 produces %2 per second": "jedes %1 produziert %2 pro Sekunde", + "%1 producing %2 per second": "%1 produziert %2 pro Sekunde", + "%1% of total CpS": "%1% der gesamten KpS", + "%1 produced so far": "%1 bis jetzt produziert", + "...also boosting some other buildings:": "...verstärken auch einige andere Gebäude:", + "all combined, these boosts account for %1 per second (%2% of total CpS)": "alle zusammen machen diese Verstärkungen %1 pro Sekunde aus (%2% der gesamten KpS)", + "owned: %1": "In Besitz: %1", + "free: %1!": "Frei: %1!", + "Level %1 %2": "/", + "Granting +%1% %2 CpS.": "Gewähren +%1% %2 KpS.", + "Click to level up for %1.": "Klicke, um für %1 aufzuleveln.", + "Levelling up this building unlocks a minigame.": "Wenn du dieses Gebäude auflevelst, schaltest du ein Minispiel frei.", + "level up your %1": "Level dein %1 auf", + "Mute": "Stummschalten", + "Minimize this building": "Dieses Gebäude minimieren", + "Muted:": "Stummgeschaltet:", + "Click to unmute": "Zum Aufheben der Stummschaltung klicken", + "Show": "Anzeigen", + "Hide": "Verstecken", + "Names in white were submitted by our supporters on Patreon.": "Die Namen in weiß wurden von unseren Unterstützern auf Patreon eingereicht.", + "You can also press %1 to bulk-buy or sell %2 of a building at a time, or %3 for %4.": "Du kannst auch %1 drücken, um %2 eines Gebäudes auf einmal zu kaufen oder zu verkaufen, oder %3 für %4.", + "Investment": "/", + "You're not sure what this does, you just know it means profit.": "Du bist dir nicht sicher, was das bedeutet, du weißt nur, dass es Profit bedeutet.", + "Cursor": "/", + "cursor": "Cursor", + "cursors": "Cursor", + "%1 cursor": [ + "%1 Cursor", + "%1 Cursor" + ], + "[Cursor quote]Autoclicks once every 10 seconds.": "Klickt automatisch einmal alle 10 Sekunden.", + "[Cursor business name]Rolling pin": "Nudelholz", + "[Cursor business quote]Essential in flattening dough. The first step in cookie-making.": "Unverzichtbar beim Flachdrücken von Teig. Der erste Schritt bei der Herstellung von Keksen.", + "Grandma": "Oma", + "grandma": "Oma", + "grandmas": "Omas", + "%1 grandma": [ + "%1 Oma", + "%1 Omas" + ], + "[Grandma quote]A nice grandma to bake more cookies.": "Eine nette Oma, die mehr Kekse backt.", + "[Grandma business name]Oven": "Ofen", + "[Grandma business quote]A crucial element of baking cookies.": "Ein entscheidendes Element beim Backen von Keksen.", + "Farm": "/", + "farm": "Farm", + "farms": "Farmen", + "%1 farm": [ + "%1 Farm", + "%1 Farmen" + ], + "[Farm quote]Grows cookie plants from cookie seeds.": "Züchtet Keks-Pflanzen aus Keks-Samen.", + "[Farm business name]Kitchen": "Küche", + "[Farm business quote]The more kitchens, the more cookies your employees can produce.": "Je mehr Küchen, desto mehr Kekse können Ihre Mitarbeiter produzieren.", + "Mine": "/", + "mine": "Mine", + "mines": "Minen", + "%1 mine": [ + "%1 Mine", + "%1 Minen" + ], + "[Mine quote]Mines out cookie dough and chocolate chips.": "Minen aus Keksteig und Schokoladenchips.", + "[Mine business name]Secret recipe": "Geheimrezept", + "[Mine business quote]These give you the edge you need to outsell those pesky competitors.": "Diese geben Ihnen den Vorsprung, den Sie brauchen, um die lästige Konkurrenz auszustechen.", + "Factory": "Fabrik", + "factory": "Fabrik", + "factories": "Fabriken", + "%1 factory": [ + "%1 Fabrik", + "%1 Fabriken" + ], + "[Factory quote]Produces large quantities of cookies.": "Produziert große Mengen an Keksen.", + "[Factory business name]Factory": "Fabrik", + "[Factory business quote]Mass production is the future of baking. Seize the day, and synergize!": "Die Massenproduktion ist die Zukunft des Backens. Nutzen Sie den Tag, und nutzen Sie Synergien!", + "Bank": "/", + "bank": "Bank", + "banks": "Banken", + "%1 bank": [ + "%1 Bank", + "%1 Banken" + ], + "[Bank quote]Generates cookies from interest.": "Erzeugt Kekse aus Zinsen.", + "[Bank business name]Investor": "Investor", + "[Bank business quote]Business folks with a nose for profit, ready to finance your venture as long as there's money to be made.": "Geschäftsleute mit einem Gespür für Profit, die bereit sind, Ihr Projekt zu finanzieren, solange es Geld zu verdienen gibt.", + "Temple": "Tempel", + "temple": "Tempel", + "temples": "Tempel", + "%1 temple": [ + "%1 Tempel", + "%1 Tempel" + ], + "[Temple quote]Full of precious, ancient chocolate.": "Voller kostbarer, alter Schokolade.", + "[Temple business name]Like": "Like", + "[Temple business quote]Your social media page is going viral! Amassing likes is the key to a lasting online presence and juicy advertising deals.": "Ihre Social-Media-Seite geht viral! Das Anhäufen von Likes ist der Schlüssel zu einer dauerhaften Online-Präsenz und saftigen Werbeverträgen.", + "Wizard tower": "Zaubererturm", + "wizard tower": "Zaubererturm", + "wizard towers": "Zauberertürme", + "%1 wizard tower": [ + "%1 Zaubererturm", + "%1 Zauberertürme" + ], + "[Wizard tower quote]Summons cookies with magic spells.": "Beschwört Kekse mit Zaubersprüchen herbei.", + "[Wizard tower business name]Meme": "Meme", + "[Wizard tower business quote]Cookie memes are all the rage! With just the right amount of social media astroturfing, your brand image will be all over the cyberspace.": "Keks-Memes sind der letzte Schrei! Mit dem richtigen Maß an Social-Media-Astroturfing wird Ihr Markenimage im gesamten Cyberspace präsent sein.", + "Shipment": "Verschiffung", + "shipment": "Verschiffung", + "shipments": "Verschiffungen", + "%1 shipment": [ + "%1 Verschiffung", + "%1 Verschiffungen" + ], + "[Shipment quote]Brings in fresh cookies from the cookie planet.": "Bringt frische Kekse vom Keks-Planeten mit.", + "[Shipment business name]Supermarket": "Supermarkt", + "[Shipment business quote]A gigantic cookie emporium - your very own retail chain.": "Ein gigantisches Keks-Imperium - Deine ganz eigene Handelskette.", + "Alchemy lab": "Alchemielabor", + "alchemy lab": "Alchemielabor", + "alchemy labs": "Alchemielabore", + "%1 alchemy lab": [ + "%1 Alchemielabor", + "%1 Alchemielabore" + ], + "[Alchemy lab quote]Turns gold into cookies!": "Verwandelt Gold in Kekse!", + "[Alchemy lab business name]Stock share": "Aktienanteil", + "[Alchemy lab business quote]You're officially on the stock market, and everyone wants a piece!": "Du bist offiziell an der Börse und jeder will ein Stück!", + "Portal": "/", + "portal": "Portal", + "portals": "Portale", + "%1 portal": [ + "%1 Portal", + "%1 Portale" + ], + "[Portal quote]Opens a door to the Cookieverse.": "Öffnet eine Tür zur Keksdimension.", + "[Portal business name]TV show": "TV Show", + "[Portal business quote]Your cookies have their own sitcom! Hilarious baking hijinks set to the cheesiest laughtrack.": "Deine Kekse haben ihre eigene Sitcom! Urkomische Backstreiche, untermalt mit den lustigsten Lachnummern.", + "Time machine": "Zeitmaschine", + "time machine": "Zeitmaschine", + "time machines": "Zeitmaschinen", + "%1 time machine": [ + "%1 Zeitmaschine", + "%1 Zeitmaschinen" + ], + "[Time machine quote]Brings cookies from the past, before they were even eaten.": "Bringt Kekse aus der Vergangenheit mit, bevor sie überhaupt gegessen wurden.", + "[Time machine business name]Theme park": "Themenpark", + "[Time machine business quote]Cookie theme parks, full of mascots and roller-coasters. Build one, build a hundred!": "Keks-Themenparks, voll mit Maskottchen und Achterbahnen. Baue einen, baue hundert!", + "Antimatter condenser": "Antimaterie-Kondensator", + "antimatter condenser": "Antimaterie-Kondensator", + "antimatter condensers": "Antimaterie-Kondensatoren", + "%1 antimatter condenser": [ + "%1 Antimaterie-Kondensator", + "%1 Antimaterie-Kondensatoren" + ], + "[Antimatter condenser quote]Condenses the antimatter in the universe into cookies.": "Kondensiert die Antimaterie im Universum zu Keksen.", + "[Antimatter condenser business name]Cookiecoin": "Kekscoin", + "[Antimatter condenser business quote]A virtual currency, already replacing regular money in some small countries.": "Eine virtuelle Währung, die in einigen kleinen Ländern bereits das reguläre Geld ersetzt.", + "Prism": "Prisma", + "prism": "Prisma", + "prisms": "Prismen", + "%1 prism": [ + "%1 Prisma", + "%1 Prismen" + ], + "[Prism quote]Converts light itself into cookies.": "Wandelt selbst Licht in Kekse um.", + "[Prism business name]Corporate country": "Konzernland", + "[Prism business quote]You've made it to the top, and you can now buy entire nations to further your corporate greed. Godspeed.": "Du hast es an die Spitze geschafft und kannst nun ganze Nationen kaufen, um deine Konzerngier zu fördern. Viel Glück!", + "Chancemaker": "Glücksbringer", + "chancemaker": "Glücksbringer", + "chancemakers": "Glücksbringer", + "%1 chancemaker": [ + "%1 Glücksbringer", + "%1 Glücksbringer" + ], + "[Chancemaker quote]Generates cookies out of thin air through sheer luck.": "Generiert Kekse aus dem Nichts durch reines Glück.", + "[Chancemaker business name]Privatized planet": "Privatisierter Planet", + "[Chancemaker business quote]Actually, you know what's cool? A whole planet dedicated to producing, advertising, selling, and consuming your cookies.": "Weißt du eigentlich, was cool ist? Ein ganzer Planet, der sich der Produktion, der Werbung, dem Verkauf und dem Verzehr deiner Kekse widmet.", + "Fractal engine": "Fraktalmaschine", + "fractal engine": "Fraktalmaschine", + "fractal engines": "Fraktalmaschinen", + "%1 fractal engine": [ + "%1 Fraktalmaschine", + "%1 Fraktalmaschinen" + ], + "[Fractal engine quote]Turns cookies into even more cookies.": "Verwandelt Kekse in noch mehr Kekse.", + "[Fractal engine business name]Senate seat": "Senatssitz", + "[Fractal engine business quote]Only through political dominion can you truly alter this world to create a brighter, more cookie-friendly future.": "Nur durch politische Herrschaft kannst du diese Welt wirklich verändern, um eine hellere, Keks-freundlichere Zukunft zu schaffen.", + "Javascript console": "Javascript Konsole", + "javascript console": "Javascript Konsole", + "javascript consoles": "Javascript Konsolen", + "%1 javascript console": [ + "%1 Javascript Konsole", + "%1 Javascript Konsolen" + ], + "[Javascript console quote]Creates cookies from the very code this game was written in.": "Erzeugt Kekse aus dem Code, in dem dieses Spiel geschrieben wurde.", + "[Javascript console business name]Doctrine": "Doktrin", + "[Javascript console business quote]Taking many forms -religion, culture, philosophy- a doctrine may, when handled properly, cause a lasting impact on civilizations, reshaping minds and people and ensuring all future generations share a singular goal - the production, and acquisition, of more cookies.": "Eine Doktrin kann viele Formen annehmen - Religion, Kultur, Philosophie - und kann, wenn sie richtig gehandhabt wird, einen dauerhaften Einfluss auf Zivilisationen haben, indem sie den Geist und die Menschen umformt und sicherstellt, dass alle zukünftigen Generationen ein einziges Ziel teilen - die Produktion und den Erwerb von mehr Keksen.", + "Idleverse": "Idleversum", + "idleverse": "Idleversum", + "idleverses": "Idleversen", + "%1 idleverse": [ + "%1 Idleversum", + "%1 Idleversen" + ], + "[Idleverse quote]There's been countless other idle universes running alongside our own. You've finally found a way to hijack their production and convert whatever they've been making into cookies!": "Es gab schon unzählige andere Universen, die neben unserem liefen. Du hast endlich einen Weg gefunden, ihre Produktion zu kapern und das, was sie hergestellt haben, in Kekse zu verwandeln!", + "[Idleverse business name]Lateral expansions": "Seitliche Ausdehnungen", + "[Idleverse business quote]Sometimes the best way to keep going up is sideways. Diversify your ventures through non-cookie investments.": "Manchmal ist der beste Weg, um weiter nach oben zu kommen, seitwärts. Diversifiziere deine Unternehmungen durch Investitionen, die nicht auf Keksen basieren.", + "Cortex baker": "Kortex Bäcker", + "cortex baker": "Kortex-Bäcker", + "cortex bakers": "Kortex-Bäcker", + "%1 cortex baker": [ + "%1 Kortex Bäcker", + "%1 Kortex-Bäcker" + ], + "[Cortex baker quote]These artificial brains the size of planets are capable of simply dreaming up cookies into existence. Time and space are inconsequential. Reality is arbitrary.": "Diese künstlichen Gehirne von der Größe eines Planeten sind in der Lage, Kekse einfach ins Leben zu träumen. Zeit und Raum sind unwichtig. Die Realität ist willkürlich.", + "[Cortex baker business name]Think tank": "Thinktank", + "[Cortex baker business quote]There's only so many ways you can bring in more profit. Or is there? Hire the most brilliant experts in the known universe and let them scrape their brains for you!": "Es gibt nur wenige Möglichkeiten, wie du mehr Gewinn machen kannst. Oder doch nicht? Engagiere die brillantesten Experten des bekannten Universums und lass sie sich für dich das Hirn zermartern!", + "CpS": "KpS", + "cookies/click": "Kekse/Klick", + "%1 CpS": "%1 KpS", + "golden cookie gains": "Zugewinn goldener Kekse", + "golden cookie frequency": "Häufigkeit goldener Kekse", + "golden cookie duration": "Dauer goldener Kekse", + "golden cookie effect duration": "Effektdauer goldener Kekse", + "wrath cookie gains": "Zugewinn von Zornkeksen", + "wrath cookie frequency": "Häufigkeit von Zornkeksen", + "wrath cookie duration": "Dauer von Zornkeksen", + "wrath cookie effect duration": "Effektdauer von Zornkeksen", + "reindeer gains": "Zugewinne von Rentieren", + "reindeer frequency": "Rentierhäufigkeit", + "reindeer duration": "Rentierdauer", + "random drops": "Dufällige Beute", + "milk effects": "Milcheffekte", + "wrinkler spawn rate": "Spawnrate von Faltern", + "wrinkler appetite": "Appetit von Faltern", + "upgrade costs": "Upgradekosten", + "building costs": "Gebäudekosten", + "Clicking is %1% more powerful.": "Klicken ist %1% mächtiger.", + "All cookie production multiplied by %1.": "Alle Keks-Produktion multipliziert mit %1.", + "+%1 CpS": "+%1 KpS", + "+%1% base CpS.": "+%1% Basis-KpS.", + "%1 are twice as efficient.": "%1 sind zweimal so effizient.", + "%1 are %2% more powerful.": "%1 sind %2% stärker.", + "Unshackled! +%1% extra production.": "Entfesselt! +%1% zusätzliche Produktion.", + "Tiered upgrades for %1 provide an extra +%2% production.
Only works with unshackled upgrade tiers.": "Stufenweise Upgrades für %1 bieten eine zusätzliche +%2% Produktion.
Funktioniert nur mit nicht gefesselten Upgrade-Stufen.", + "Unshackles all %1-tier upgrades, making them more powerful.
Only applies to unshackled buildings.": "Entfesselt alle %1-Tier Upgrades und macht sie mächtiger.
Gilt nur für nicht gefesselte Gebäude.", + "The mouse and cursors are twice as efficient.": "Die Maus und die Cursor sind zweimal so effizient.", + "The mouse and cursors gain +%1 cookies for each non-cursor building owned.": "Die Maus und die Cursor erhalten +%1 Kekse für jedes Gebäude, das kein Cursor ist.", + "Grandmas gain +%1% CpS for each non-grandma building.": "Omas erhalten +%1% KpS für jedes Nicht-Oma-Gebäude.", + "You gain more CpS the more milk you have.": "Du bekommst mehr KpS, je mehr Milch du hast.", + "Milk is %1% more powerful.": "Milch ist %1% stärker.", + "Cookie production multiplier +%1%.": "Keks Produktionsmultiplikator +%1%.", + "Cookie production multiplier +%1% permanently.": "Keks-Produktionsmultiplikator +%1% dauerhaft.", + "Cookie production multiplier +%1% per Santa's levels.": "Keks-Produktionsmultiplikator +%1% pro Stufe des Weihnachtsmanns.", + "Cookie production multiplier +%1% for every year Cookie Clicker has existed (currently: +%2%).": "Keks-Produktionsmultiplikator +%1% für jedes Jahr, in dem Cookie Clicker existiert (aktuell: +%2%).", + "Cookie production multiplier +%1% for every building type level %2 or higher.": "Keks-Produktionsmultiplikator +%1% für jedes Gebäude der Stufe %2 oder höher.", + "Clicking gains +%1% of your CpS.": "Durch Klicken erhältst du +%1% deiner KpS.", + "%1 gain +%2% CpS per %3.": "%1 gewinnt +%2% KpS pro %3.", + "Multiplies the gain from %1 by %2.": "Multipliziert den Gewinn von %1 mit %2.", + "Grandma-operated science lab and leisure club.
Grandmas are 4 times as efficient.
Regularly unlocks new upgrades.": "Oma-betriebenes Wissenschaftslabor und Freizeitclub.
Omas sind 4 mal so effizient.
Schaltet regelmäßig neue Upgrades frei.", + "Each %1 gains +%2 base CpS per %3.": "Jede %1 bekommt +%2 Basis KpS pro %3.", + "Note: the grandmothers are growing restless. Do not encourage them.": "Beachte: Die Omas werden unruhig. Ermutige sie nicht.", + "Note: proceeding any further in scientific research may have unexpected results. You have been warned.": "Hinweis: Wenn du in der wissenschaftlichen Forschung weitermachst, kann das zu unerwarteten Ergebnissen führen. Du wurdest gewarnt.", + "Note: this is a bad idea.": "Hinweis: Das ist eine schlechte Idee.", + "Warning: purchasing this will have unexpected, and potentially undesirable results!
It's all downhill from here. You have been warned!

Purchase anyway?": "Warnung: Der Kauf wird unerwartete und möglicherweise unerwünschte Folgen haben!
Von hier an geht es nur noch bergab. Du wurdest gewarnt!

Trotzdem kaufen?", + "Contains the wrath of the elders, at least for a while.": "Hält den Zorn der Alten in Schach, zumindest eine Zeit lang.", + "Puts a permanent end to the elders' wrath, at the cost of %1% of your CpS.": "Setzt dem Zorn der Alten ein dauerhaftes Ende, auf Kosten von %1% deiner KpS.", + "You will get %1% of your CpS back, but the grandmatriarchs will return.": "Du wirst %1% deiner KpS zurückbekommen, aber die Großmatriarchen werden zurückkehren.", + "Time remaining until pledge runs out:": "Verbleibende Zeit bis zum Ablauf des Schwurs:", + "You haven't pledged to the elders yet.": "Du hast noch nicht zu den Alten geschworen.", + "You've pledged to the elders %1 times.": [ + "Du hast es den Alten einmal geschworen.", + "Du hast den Alten %1 Mal geschworen." + ], + "Research takes only 5 seconds.": "Die Forschung dauert nur 5 Sekunden.", + "Golden cookies appear twice as often and stay twice as long.": "Goldene Kekse erscheinen doppelt so oft und bleiben doppelt so lange.", + "Golden cookies appear %1% more often.": "Goldene Kekse erscheinen %1% öfters.", + "Golden cookies appear %1% more often during %2.": "Goldene Kekse erscheinen %1% öfters während %2.", + "Golden cookies appear really often.": "Goldene Kekse erscheinen wirklich oft.", + "Golden cookie effects last twice as long.": "Die Effekte des goldenen Kekses halten zweifach so lange.", + "Golden cookie effects last %1% longer.": "Die Effekte des goldenen Kekses halten %1% länger an.", + "Golden cookies stay %1% longer.": "Goldene Kekse halten %1% länger.", + "Golden cookies give %1% more cookies.": "Goldene Kekse geben %1% mehr Kekse.", + "Wrath cookies give %1% more cookies.": "Zorn-Kekse geben %1% mehr Kekse.", + "+%1% CpS per golden cookie on-screen, multiplicative.": "+%1% KpS pro goldenen Keks auf dem Bildschirm, multiplikativ.", + "With no buffs and no golden cookies on screen, selling your most powerful building has %1% chance to summon one.": "Ohne Buffs und ohne goldene Kekse auf dem Bildschirm hat der Verkauf deines mächtigsten Gebäudes eine %1%ige Chance, einen zu beschwören.", + "Confers various powers to your minigames while active.
See the bottom of each minigame for more details.": "Verleiht deinen Minispielen verschiedene Kräfte, während sie aktiv sind.
Siehe das Ende jedes Minispiels für weitere Details.", + "Elder pledges last twice as long.": "Ältestenschwüre dauern doppelt so lange.", + "Can toggle upgrades on and off at will in the stats menu.": "Kann Upgrades nach Belieben im Statistikmenü ein- und ausschalten.", + "You keep producing cookies even while the game is closed.": "Du produzierst weiterhin Kekse, auch wenn das Spiel geschlossen ist.", + "Unlocks %1% of the potential of your prestige level.": "Schaltet %1% des Potenzials deines Prestigelevels frei.", + "Subsequent research will be %1 times as fast.": "Die anschließende Forschung wird %1 mal so schnell sein.", + "Wrinklers appear %1 times as fast.": "Falter erscheinen %1 mal so schnell.", + "Wrinklers spawn much more frequently.": "Falter spawnen viel häufiger.", + "Wrinklers explode into %1% more cookies.": "Falter explodieren zu %1% mehr Keksen.", + "Unlocks... something.": "Schaltet... irgendetwas frei.", + "In the festive hat, you find...": "In dem festlichen Hut findest du...", + "a festive test tube
and %1.": "ein festliches Reagenzglas
und %1.", + "Cost scales with CpS.": "Die Kosten skalieren mit KpS.", + "Cost scales with Santa level.": "Die Kosten skalieren mit dem Santa Level.", + "Cost scales with how many eggs you own.": "Die Kosten hängen davon ab, wie viele Eier du besitzt.", + "Reindeer appear %1% more often.": "Rentiere erscheinen %1% öfter.", + "Reindeer appear twice as frequently.": "Rentiere erscheinen doppelt so häufig.", + "Reindeer are twice as slow.": "Rentiere sind doppelt so langsam.", + "Reindeer give twice as much.": "Rentiere geben doppelt so viel.", + "Buildings sell back for %1% instead of %2%.": "Gebäude verkaufen sich wieder für %1% statt %2%.", + "All buildings are %1% cheaper.": "Alle Gebäude sind %1% günstiger.", + "All upgrades are %1% cheaper.": "Alle Upgrades sind %1% günstiger.", + "All buildings and upgrades are %1% cheaper.": "Alle Gebäude und Upgrades sind %1% günstiger.", + "%1 are %2% more efficient and %3% cheaper.": "%1 sind %2% effizienter und %3% billiger.", + "Cookie upgrades are %1 times cheaper.": "Keks Upgrades sind %1 mal billiger.", + "Random drops are %1% more common.": "Zufällige Beute ist %1% häufiger.", + "Reindeer spawn much more frequently.": "Rentiere spawnen viel häufiger.", + "Allows you to trigger seasonal events at will, for a price.": "Erlaubt es dir, nach Belieben saisonale Ereignisse auszulösen, gegen einen Preis.", + "Triggers %1 season for the next 24 hours.
Triggering another season will cancel this one.
Cost scales with unbuffed CpS and increases with every season switch.": "Löst die %1 Jahreszeit für die nächsten 24 Stunden aus.
Das Auslösen einer anderen Jahreszeit bricht diese ab.
Die Kosten skalieren mit ungepufferten KpS und erhöhen sich mit jedem Saisonwechsel.", + "Click again to cancel season": "Klicke erneut um die Jahreszeit abzubrechen", + "Seasons now last forever.": "Die Jahreszeiten dauern jetzt ewig.", + "You haven't switched seasons this ascension yet.": "Du hast die Jahreszeiten noch nicht gewechselt in diesem Aufstieg.", + "You've switched seasons once this ascension.": "Du hast in diesem Aufstieg einmal die Jahreszeiten gewechselt.", + "You've switched seasons %1 times this ascension.": "Du hast in diesem Aufstieg %1 Mal die Jahreszeit gewechselt.", + "Cookie production multiplied by 1,000.": "Keks-Produktion multipliziert um 1.000.", + "Other eggs appear %1% more frequently.": "Andere Eier erscheinen %1% häufiger.", + "Contains a lot of cookies.": "Enthält eine Menge Kekse.", + "The egg bursts into %1 cookies!": "Das Ei zerplatzt in %1 Keksen!", + "You found an egg!": "Du hast ein Ei gefunden!", + "Eggs drop %1% more often.": "Eier fallen %1% häufiger.", + "Christmas cookies drop %1% more often.": "Weihnachts Kekse fallen %1% öfters.", + "Spooky cookies drop %1% more often.": "Gespenstische Kekse fallen %1% öfters.", + "Heart cookies are %1% more powerful.": "Herz-Kekse sind %1% stärker.", + "You continually gain more CpS the longer you've played in the current ascension.": "Du erhältst kontinuierlich mehr KpS, je länger du im aktuellen Aufstieg gespielt hast.", + "Contains an assortment of fancy biscuits.": "Enthält eine Auswahl an ausgefallenen Keksen.", + "Contains an assortment of macarons.": "Enthält eine Auswahl an Makronen.", + "Contains an assortment of popular biscuits.": "Enthält eine Auswahl an beliebten Keksen.", + "Contains an assortment of rich butter cookies.": "Enthält ein Sortiment an reichhaltigen Butter Keksen.", + "Contains an assortment of delicious pastries.": "Enthält eine Auswahl an leckerem Gebäck.", + "Contains an assortment of...something.": "Enthält ein Sortiment von...irgendwas.", + "Placing an upgrade in this slot will make its effects permanent across all playthroughs.": "Wenn du ein Upgrade in diesen Slot legst, werden seine Effekte über alle Durchgänge hinweg permanent.", + "Current boost:": "Aktueller Boost:", + "Current:": "Aktuell:", + "Click to activate.": "Klicke zum Aktivieren.", + "Pick an upgrade to make permanent": "Wähle ein Upgrade um es dauerhaft zu machen", + "Here are all the upgrades you've purchased last playthrough.
Pick one to permanently gain its effects!
You can reassign this slot anytime you ascend.": "Hier sind alle Upgrades, die du im letzten Playthrough gekauft hast.
Wähle eines aus, um seine Effekte dauerhaft zu erhalten!
Diesen Slot kannst du jederzeit neu zuweisen, wenn du aufsteigst.", + "You now keep making cookies while the game is closed, at the rate of %1% of your regular CpS and up to 1 hour after the game is closed.
(Beyond 1 hour, this is reduced by a further %2% - your rate goes down to %3% of your CpS.)": "Du stellst nun weiterhin Kekse her, während das Spiel geschlossen ist, und zwar mit einer Rate von %1% deiner regulären KpS und bis zu 1 Stunde, nachdem das Spiel geschlossen wurde.
(Jenseits von 1 Stunde wird diese Rate um weitere %2% reduziert - deine Rate sinkt auf %3% deiner KpS.)", + "You gain another +%1% of your regular CpS while the game is closed.": "Du erhältst einen weiteren +%1% deiner regulären KpS, während das Spiel geschlossen ist.", + "You gain another +%1% of your regular CpS while the game is closed, for a total of %2%.": "Du erhältst weitere +%1% deiner regulären KpS, während das Spiel geschlossen ist, für insgesamt %2%.", + "You start with %1.": "Du beginnst mit %1.", + "Allows you to purchase a crumbly egg once you have earned 1 million cookies.": "Ermöglicht es dir, ein Krümel-Ei zu kaufen, sobald du 1 Million Kekse verdient hast.", + "Unlocks the cookie dragon egg.": "Schaltet das Keks-Drachenei frei.", + "Synergy upgrades are %1% cheaper.": "Synergie Upgrades sind %1% billiger.", + "You retain optimal cookie production while the game is closed for %1 more days.": "Du behältst die optimale Keks-Produktion, während das Spiel für %1 weitere Tage geschlossen ist.", + "You retain optimal cookie production while the game is closed for twice as long, for a total of %1.": "Du behältst die optimale Keks-Produktion, während das Spiel doppelt so lange geschlossen ist, für insgesamt %1.", + "Unlocks the golden switch, which passively boosts your CpS by %1% but disables golden cookies.": "Schaltet den goldenen Schalter frei, der deine KpS passiv um %1% erhöht, aber goldene Kekse deaktiviert.", + "Turning this on will give you a passive +%1% CpS, but prevents golden cookies from spawning.
Cost is equal to 1 hour of production.": "Wenn du dies aktivierst, erhältst du einen passiven +%1% KpS, verhinderst aber das Spawnen von goldenen Keksen.
Die Kosten entsprechen 1 Stunde Produktion.", + "The switch is currently giving you a passive +%1% CpS; it also prevents golden cookies from spawning.
Turning it off will revert those effects.
Cost is equal to 1 hour of production.": "Der Schalter gibt dir derzeit einen passiven +%1% KpS; er verhindert auch, dass goldene Kekse spawnen.
Wenn du ihn ausschaltest, werden diese Effekte wieder rückgängig gemacht.
Die Kosten entsprechen 1 Stunde Produktion.", + "Unlocks the milk selector, letting you pick which milk is displayed under your cookie.
Comes with a variety of basic flavors.": "Schaltet den Milch-Auswahlschalter frei, mit dem du auswählen kannst, welche Milch unter deinem Keks angezeigt wird.
Erhältlich mit einer Vielzahl von Grundgeschmacksrichtungen.", + "Contains more exotic flavors for your milk selector.": "Enthält mehr exotische Geschmacksrichtungen für deinen Milchselektor.", + "Lets you pick what flavor of milk to display.": "Lässt dich auswählen, welche Geschmacksrichtung der Milch angezeigt werden soll.", + "Unlocks the golden cookie sound selector, which lets you pick whether golden cookies emit a sound when appearing or not.": "Schaltet den Goldenen Keks-Sound-Selektor frei, mit dem du auswählen kannst, ob goldene Kekse beim Erscheinen einen Ton von sich geben oder nicht.", + "Lets you change the sound golden cookies make when they spawn.": "Lässt dich das Geräusch ändern, das goldene Kekse machen, wenn sie spawnen.", + "No sound": "Kein Ton", + "Chime": "Glockenschlag", + "Fortune": "Fortuna", + "Cymbal": "/", + "Squeak": "Quietsch", + "Unlocks the jukebox, which allows you to play through every sound file in the game.": "Schaltet die Jukebox frei, mit der du alle Sounddateien im Spiel durchspielen kannst.", + "Play through the game's sound files!": "Spiel dich durch die Sounddateien des Spiels!", + "Play": "Wiedergabe", + "Stop": "/", + "Pause": "/", + "Shuffle": "Zufällig", + "Auto": "/", + "Loop": "/", + "Unlocks the background selector, letting you select the game's background.
Comes with a variety of basic flavors.": "Schaltet den Hintergrundselektor frei, mit dem du den Hintergrund des Spiels auswählen kannst.
Es gibt eine Vielzahl von Grundvarianten.", + "Lets you pick which wallpaper to display.": "Lässt dich auswählen, welches Hintergrundbild angezeigt werden soll.", + "This is the first heavenly upgrade; it unlocks the Heavenly chips system.
Each time you ascend, the cookies you made in your past life are turned into heavenly chips and prestige.
Heavenly chips can be spent on a variety of permanent transcendental upgrades.
Your prestige level also gives you a permanent +1% CpS per level.": "Dies ist das erste himmlische Upgrade; es schaltet das Himmlische Chips-System frei.
Jedes Mal, wenn du aufsteigst, werden die Kekse, die du in deinem vergangenen Leben gemacht hast, in himmlische Chips und Prestige umgewandelt.
Himmlische Chips können für eine Vielzahl von permanenten transzendentalen Upgrades ausgegeben werden.
Dein Prestigelevel gibt dir außerdem dauerhaft +1% KpS pro Level.", + "You can attract %1 more wrinklers.": "Du kannst %1 weitere Falter anziehen.", + "While the golden switch is on, you gain an additional +%1% CpS per golden cookie upgrade owned.": "Solange der goldene Schalter eingeschaltet ist, erhältst du zusätzlich +%1% KpS pro Upgrade für den goldenen Keks.", + "All upgrades are %1% cheaper per %2.": "Alle Upgrades sind %1% billiger pro %2.", + "Unlocks a new tier of upgrades that affect 2 buildings at the same time.
Synergies appear once you have %1 of both buildings.": "Schaltet eine neue Stufe von Upgrades frei, die 2 Gebäude gleichzeitig betreffen.
Synergien erscheinen, sobald du %1 von beiden Gebäuden hast.", + "Golden cookies (and all other things that spawn, such as reindeer) have %1% chance of being doubled.": "Goldene Kekse (und alle anderen Dinge, die spawnen, wie z.B. Rentiere) haben eine %1%ige Chance, verdoppelt zu werden.", + "Cookie production reduced to 0.": "Keks-Produktion auf 0 reduziert.", + "Sugar lumps coalesce a whole lot faster.": "Würfelzucker koaleszieren viel schneller.", + "+%1% prestige level effect on CpS.": "+%1% Prestigelevel-Effekt auf KpS.", + "+%1% prestige level effect on CpS.
+%2% golden cookie effect duration.
+%3% golden cookie lifespan.": "+%1% Prestigelevel-Effekt auf KpS.
+%2% Effektdauer des goldenen Kekses.
+%3% Lebensdauer des goldenen Kekses.", + "Each unspent sugar lump (up to %1) gives +%2% CpS.
Note: this means that spending sugar lumps will decrease your CpS until they grow back.
": "Jeder nicht ausgegebene Würfelzucker (bis zu %1) gibt +%2% KpS.Hinweis: Das bedeutet, dass das Ausgeben von Würfelzucker deine KpS verringert, bis sie nachwachsen.", + "Once an ascension, you may use the \"Sugar frenzy\" switch to triple your CpS for 1 hour, at the cost of 1 sugar lump.": "Einmal pro Aufstieg kannst du den \"Zuckerrausch\"-Schalter benutzen, um deine KpS für 1 Stunde zu verdreifachen, zum Preis von 1 Würfelzucker.", + "Each grandma (up to %1) makes sugar lumps ripen %2 sooner.": "Jede Oma (bis zu %1) lässt Würfelzucker %2 früher reifen.", + "Activating this will triple your CpS for 1 hour, at the cost of 1 sugar lump.": "Wenn du dies aktivierst, verdreifacht sich deine KpS für 1 Stunde, auf Kosten von 1 Würfelzucker.", + "May only be used once per ascension.": "Kann nur einmal pro Aufstieg verwendet werden.", + "activate the sugar frenzy": "Aktiviere den Zuckerrausch", + "Sugar frenzy!": "Zuckerrausch!", + "CpS x%1 for 1 hour!": "KpS x%1 für 1 Stunde!", + "Garden plants grow every second.
Garden seeds are free to plant.
You can switch soils at any time.": "Gartenpflanzen wachsen im Sekundentakt.
Gartensamen sind frei zum Einpflanzen.
Du kannst jederzeit die Erde wechseln.", + "Dropped by %1.": "Von %1 fallen gelassen.", + "Dropped by %1 plants.": "Von %1 Pflanzen fallen gelassen.", + "Must own the %1 upgrade.": "Du musst das Upgrade %1 besitzen.", + "Sugar lumps are twice as likely to be unusual.": "Würfelzucker sind zweifach so wahrscheinlich, dass sie ungewöhnlich sind.", + "+%1% sugar lump growth.": "+%1% Würfelzucker Wachstum.", + "Sugar lumps ripen %1 sooner.": "Würfelzucker reifen %1 früher.", + "Sugar lumps mature %1 sooner.": "Würfelzucker reifen %1 früher.", + "Bifurcated sugar lumps appear %1% more often and are %2% more likely to drop 2 lumps.": "Gegabelte Würfelzucker treten %1% häufiger auf und sind %2% wahrscheinlicher, dass 2 Würfel fallen.", + "Mouse over a wrinkler to see how many cookies are in its stomach.": "Fahre mit der Maus über einen Falter, um zu sehen, wie viele Kekse in seinem Magen sind.", + "Unlocks the Buy all feature, which lets you instantly purchase every upgrade in your store (starting from the cheapest one).
Also unlocks the Vault, a store section where you can place upgrades you do not wish to auto-buy.": "Schaltet die Funktion Alles kaufen frei, mit der du sofort alle Upgrades in deinem Laden kaufen kannst (beginnend mit dem billigsten).
Außerdem wird der Vault freigeschaltet, ein Ladenbereich, in dem du Upgrades platzieren kannst, die du nicht automatisch kaufen möchtest.", + "Mouse over an upgrade to see its tier.
Note: only some upgrades have tiers. Tiers are purely cosmetic and have no effect on gameplay.": "Fahre mit der Maus über ein Upgrade, um dessen Stufe zu sehen.
Hinweis: Nur einige Upgrades haben Stufen. Die Ränge sind rein kosmetisch und haben keinen Einfluss auf das Gameplay.", + "You now benefit from the boost provided by heralds.
Each herald gives you +1% CpS.
Look on the purple flag at the top to see how many heralds are active at any given time.": "Du profitierst nun vom Boost der Herolde.
Jeder Herold gibt dir +1% KpS.
Sieh auf die lila Fahne oben, um zu sehen, wie viele Herolde zu einem bestimmten Zeitpunkt aktiv sind.", + "Seasonal random drops have a 1/5 chance to carry over through ascensions.": "Saisonale Zufallsdrops haben eine 1/5 Chance, sich durch Aufstiege zu übertragen.", + "Unlocks extra price information.
Each displayed cost now specifies how long it'll take you to afford it, and how much of your bank it represents.": "Schaltet zusätzliche Preisinformationen frei.
Jeder angezeigte Preis gibt nun an, wie lange du brauchen wirst, um ihn zu bezahlen und wie viel von deiner Bank er ausmacht.", + "Unlocks the shimmering veil, a switch that passively boosts your CpS by %1%.
You start with the veil turned on; however, it is very fragile, and clicking the big cookie or any golden cookie or reindeer will turn it off, requiring %2 of CpS to turn back on.": "Schaltet den Schimmernden Schleier frei, einen Schalter, der deine KpS passiv um %1% erhöht.
Du beginnst mit eingeschaltetem Schleier; er ist jedoch sehr zerbrechlich und das Anklicken des großen Kekses oder eines goldenen Kekses oder Rentiers schaltet ihn aus und benötigt %2 KpS, um ihn wieder einzuschalten.", + "Boosts your cookie production by %1% when active.
The veil is very fragile and will break if you click the big cookie or any golden cookies or reindeer.

Once broken, turning the veil back on costs %2 of unbuffed CpS.": "Erhöht deine Keksproduktion um %1%, wenn er aktiv ist.
Der Schleier ist sehr zerbrechlich und zerbricht, wenn du den großen Keks oder irgendwelche goldenen Kekse oder Rentiere anklickst.

Sobald er zerbrochen ist, kostet das Wiedereinschalten des Schleiers %2 ungepuffte KpS.", + "Has a %1% chance to not break.": "Hat eine %1% Chance, nicht zu brechen.", + "The shimmering veil is more resistant, and has a %1% chance not to break. It also gives +%2% more CpS.": "Der Schimmernde Schleier ist widerstandsfähiger und hat eine %1%ige Chance, nicht zu brechen. Außerdem gibt er +%2% mehr KpS.", + "Active.": "Aktiv.", + "The reinforced membrane protects the shimmering veil.": "Die verstärkte Membran schützt den schimmernden Schleier.", + "The shimmering veil disappears...": "Der schimmernde Schleier verschwindet...", + "Prior to purchasing the %1 upgrade in a run, random drops are %2 times more common.": "Vor dem Kauf des %1 Upgrades in einem Run, sind zufällige Drops %2 mal häufiger.", + "Never forget your %1.": "Vergiss niemals deine %1.", + "Pay close attention to the humble %1.": "Achte genau auf das bescheidene Gebäude %1.", + "You've been neglecting your %1.": "Du hast deine %1 vernachlässigt.", + "Remember to visit your %1 sometimes.": "Vergiss nicht, deine %1 manchmal zu besuchen.", + "You don't know what you have until you've lost it.": "Du weißt nicht, was du hast, bis du es verloren hast.", + "Remember to take breaks.": "Denke daran, Pausen zu machen.", + "Hey, what's up. I'm a fortune cookie.": "Hey, was gibt's? Ich bin ein Glückskeks.", + "You think you have it bad? Look at me.": "Du denkst, du hast es schlecht? Schau mich an!", + "The news ticker may occasionally have fortunes, which may be clicked for something good.": "Der Nachrichtenticker kann gelegentlich Glück haben, das für etwas Gutes angeklickt werden kann.", + "Through clever accounting, this actually makes kitten upgrades %1% cheaper.": "Durch geschickte Buchhaltung macht dies die Kätzchen-Upgrades tatsächlich %1% billiger.", + "Unlocks the ability to pet your dragon by clicking on it once hatched.": "Schaltet die Fähigkeit frei, deinen Drachen zu streicheln, indem du ihn anklickst, sobald er geschlüpft ist.", + "Cost scales with CpS, but %1 times cheaper with a fully-trained dragon.": "Die Kosten skalieren mit KpS, aber %1 mal billiger mit einem voll ausgebildeten Drachen.", + "Golden cookies may trigger a Dragon Harvest.": "Goldene Kekse können eine Drachenernte auslösen.", + "Golden cookies may trigger a Dragonflight.": "Goldene Kekse können einen Drachenflug auslösen.", + "Dragon harvest and Dragonflight are %1% stronger.": "Drachenernte und Drachenschwarm sind %1% stärker.", + "Kittens are %1% more effective.": "Kätzchen sind %1% effektiver.", + "Each kitten upgrade boosts %1 CpS by %2%.": "Jedes Upgrade eines Kätzchens erhöht die KpS von %1 um %2%.", + "Each rank of milk boosts %1 CpS by %2%.": "Jeder Rang der Milch erhöht %1 KpS um %2%.", + "Cursor levels boost clicks by %1% each (up to cursor level %2).": "Cursor-Levels erhöhen Klicks um jeweils %1% (bis zu Cursor-Level %2).", + "%1 are now effective up to cursor level %2.": "%1 sind jetzt bis zur Cursor-Ebene %2 wirksam.", + "Seasonal cookies purchased: %1.": "Saisonale Kekse gekauft: %1.", + "Reindeer cookies purchased: %1.": "Rentier Kekse gekauft: %1.", + "Eggs purchased: %1.": "Eier gekauft: %1.", + "Golden and wrath cookie effect duration +%1%.": "Effektdauer von goldenen und Zornkeksen +%1%.", + "Golden and wrath cookies appear %1% more.": "Goldene und Zornkekse erscheinen %1% häufiger.", + "Golden and wrath cookies appear %1% less.": "Goldene und Zornkekse erscheinen %1% seltener.", + "Buildings grant -%1% CpS.": "Gebäude gewähren -%1% KpS.", + "Selling buildings triggers a buff boosted by how many buildings were sold.": "Der Verkauf von Gebäuden löst einen Buff aus, der davon abhängt, wie viele Gebäude verkauft wurden.", + "Buff boosts clicks by +%1% for every building sold for %2 seconds.": "Der Buff erhöht die Klicks um +%1% für jedes verkaufte Gebäude für %2 Sekunden.", + "CpS bonus fluctuating between %1 and %2 over time.": "KpS-Bonus, der im Laufe der Zeit zwischen %1 und %2 schwankt.", + "Effect cycles over %1 hours.": "Effekt verändert sich über %1 Stunden.", + "Some seasonal effects are boosted.": "Einige saisonale Effekte werden verstärkt.", + "Large boost.": "Großer Boost.", + "Medium boost.": "Mittlerer Boost.", + "Small boost.": "Kleiner Boost.", + "Switching seasons is %1% pricier.": "Der Wechsel der Saison ist %1% teurer.", + "Switching seasons is %1% cheaper.": "Der Wechsel der Saison ist %1% günstiger.", + "Heavenly chips have %1% less effect.": "Himmlische Splitter haben %1% weniger Effekt.", + "Buildings produce %1% more.": "Gebäude produzieren %1% mehr.", + "Buildings produce %1% less.": "Gebäude produzieren %1% weniger.", + "All golden cookies are wrath cookies with a greater chance of a negative effect.": "Alle goldenen Kekse sind Zorn-Kekse mit einer größeren Wahrscheinlichkeit für einen negativen Effekt.", + "Wrinklers appear %1% faster and digest %2% more cookies.": "Falter erscheinen %1% schneller und verdauen %2% mehr Kekse.", + "Effect is only active when your total amount of buildings ends with 0.": "Der Effekt ist nur aktiv, wenn deine Gesamtanzahl an Gebäuden bei 0 endet.", + "Achievement unlocked": "Erfolg freigeschaltet", + "Make %1 just from %2.": "Backe %1 nur durch %2.", + "Bake %1 in one ascension.": "Backe %1 in einem Aufstieg.", + "Bake %1 per second.": "Backe %1 pro Sekunde.", + "Have %1.": "Habe %1.", + "Ascend at least once.": "Steige mindestens einmal auf.", + "Ascend %1 times.": "Steige %1 mal auf.", + "Ascend with %1 baked.": "Steige mit %1 gebackenen Keksen auf.", + "Make %1 by only having clicked %2 times.": "Backe %1Kekse obwohl du nur %2 mal geklickt hast.", + "Make %1 with no cookie clicks.": "Backe %1 Keske ohne Keksklicks.", + "Get to %1 baked with no upgrades purchased.": "Erreiche %1 gebackene Kekse ohne gekaufte Upgrades.", + "Get to %1 baked in %2.": "Erreiche %1 gebackene Kekse in %2.", + "Make %1 from clicking.": "Backe%1 durch Klicken.", + "Sell a grandma.": "Verkaufe eine Oma.", + "Have at least %1 of every building.": "Habe mindestens %1 von jedem Gebäude.", + "Have at least 1 of the most expensive object, 2 of the second-most expensive, 4 of the next and so on (capped at %1).": "Habe mindestens 1 des teuersten Objekts, 2 des zweitteuersten, 4 des nächsten und so weiter (Obergrenze bei %1).", + "Have at least 10 of the most expensive object, 20 of the second-most expensive, 30 of the next and so on.": "Besitze mindestens 10 Stück vom teuersten Objekt, 20 Stück vom zweitteuersten, 30 Stück des nächsten und so weiter.", + "Click a golden cookie.": "Klicke einen goldenen Keks an.", + "Click %1.": "Klicke %1.", + "Hack in some cookies.": "Hacke ein paar Kekse ins Spiel.", + "Click really, really fast.": "Klicke wirklich, wirklich schnell.", + "Have at least %1 of everything.": "Habe mindestens %1 von allem.", + "Own %1.": "Besitze %1.", + "Purchase %1.": "Kaufe %1.", + "Dunk the cookie.": "Tauche den Keks ein.", + "Appease the grandmatriarchs at least once.": "Besänftige die Großmatriarchen wenigstens einmal.", + "Appease the grandmatriarchs at least %1 times.": "Beschwöre die Großmatriarchen mindestens %1 Mal.", + "Declare a covenant with the grandmatriarchs.": "Schließe einen Bund mit den Großmatriarchen.", + "Own at least %1 grandma types.": "Besitze mindestens %1 Oma-Typen.", + "Unlock 100% of your heavenly chips power.": "Schalte 100% der Kraft deiner himmlischen Splitter frei.", + "You have 1 chance in %1 every second of earning this achievement.": "Du hast 1 Chance in %1 pro Sekunde, diesen Erfolg zu verdienen.", + "Burst 1 wrinkler.": "Zerplatze1 Falter.", + "Burst %1 wrinklers.": "Zerplatze %1 Falter.", + "Unlock every Halloween-themed cookie.
Owning this achievement makes Halloween-themed cookies drop more frequently in future playthroughs.": "Schalte jeden Halloween-Keks frei.Durch den Besitz dieses Erfolges werden Halloween-Kekse in zukünftigen Durchläufen häufiger gedropt.", + "Reach Santa's 7th form.": "Erreiche Santas 7. Form.", + "Reach Santa's final form.": "Erreiche Santas endgültige Form.", + "Unlock every Christmas-themed cookie.
Owning this achievement makes Christmas-themed cookies drop more frequently in future playthroughs.": "Schalte jeden weihnachtlichen Keks frei.Durch den Besitz dieses Erfolges werden weihnachtliche Kekse in zukünftigen Durchläufen häufiger gedropt.", + "Pop 1 reindeer.": "Zerplatze 1 Rentier.", + "Pop %1 reindeer.": "Zerplatze %1 Rentier.", + "Pop a reindeer during an elder frenzy.": "Zerplatze ein Rentier während eines Ältestenrausches.", + "Unlock every Valentine-themed cookie.": "Schalte jeden Keks mit Valentinsthema frei.", + "Click the tiny cookie.": "Klicke auf den kleinen Keks.", + "This is for baking %1 and making it on the local news.": "Das ist dafür, dass du %1 backst und es in die Lokalnachrichten schaffst.", + "Name yourself Orteil.
Note: usurpers incur a -%1% CpS penalty until they rename themselves something else.
": "Nenne dich Orteil.Hinweis: Usurpatoren erleiden eine -%1% KpS Strafe, bis sie sich etwas anderes nennen.", + "Use an add-on.": "Verwende ein Add-on.", + "Unlock 1 egg.": "Schalte 1 Ei frei.", + "Unlock %1 eggs.": "Schalte %1 Eier frei.", + "Unlock all the eggs.
Owning this achievement makes eggs drop more frequently in future playthroughs.": "Schalte alle Eier frei.Dieser Erfolg sorgt dafür, dass die Eier in zukünftigen Durchläufen häufiger fallen.", + "Give your bakery a name.": "Gib deiner Bäckerei einen Namen.", + "Click this achievement's slot.": "Klicke auf den Slot für diesen Erfolg.", + "Complete your dragon's training.": "Schließe dein Drachentraining ab.", + "Click on the news ticker %1 times.": "Klicke auf den Newsticker %1 mal.", + "Own a combined %1 %2 and %3.": "Besitze eine Kombination aus %1 %2 und %3.", + "Own %1 upgrades and %2 buildings.": "Besitze %1 Upgrades und %2 Gebäude.", + "Own %1 heavenly upgrades.": "Besitze %1 himmlische Upgrades.", + "Burst the near-extinct shiny wrinkler.": "Lass den fast ausgestorbenen glänzenden Falter platzen.", + "Click a golden cookie less than 1 second after it spawns.": "Klicke einen goldenen Keks weniger als 1 Sekunde nach dem Spawnen an.", + "Click a golden cookie less than 1 second before it dies.": "Klicke einen goldenen Keks weniger als 1 Sekunde bevor er stirbt.", + "Harvest %1 coalescing sugar lumps.": "Ernte %1 zusammenfließende Würfelzucker.", + "Successfully harvest a coalescing sugar lump before it's ripe.": "Ernte erfolgreich einen zusammenfließenden Würfelzucker, bevor er reif ist.", + "Harvest a bifurcated sugar lump.": "Ernte einen gegabelten Würfelzucker.", + "Harvest a golden sugar lump.": "Ernte einen goldenen Würfelzucker.", + "Harvest a meaty sugar lump.": "Ernte einen Fleischigen Würfelzucker.", + "Harvest a caramelized sugar lump.": "Ernte einen karamellisierten Würfelzucker.", + "Reach level %1 %2.": "Erreiche Level %1 %2.", + "Cast %1 spells.": "Wirke %1-Zauber.", + "Have %1 golden cookies simultaneously.": "Habe %1 goldene Kekse gleichzeitig.", + "Manage a cookie legacy for at least a year.": "Verwalte ein Keks-Vermächtnis für mindestens ein Jahr.", + "Harvest %1 mature garden plants.": "Ernte %1 reife Gartenpflanzen.", + "Fill every tile of the biggest garden plot with plants.": "Fülle jede Fliese des größten Gartengrundstücks mit Pflanzen.", + "Unlock every garden seed.": "Schalte jeden Gartensamen frei.", + "Convert a complete seed log into sugar lumps by sacrificing your garden to the sugar hornets.
Owning this achievement makes seeds %1% cheaper, plants mature %2% sooner, and plant upgrades drop %3% more.": "Verwandle einen kompletten Samenstamm in Würfelzucker, indem du deinen Garten den Zuckerhornissen opferst.
Durch den Besitz dieses Erfolgs werden Samen %1% billiger, Pflanzen reifen %2% früher und Pflanzen-Upgrades werden öfters %3% fallen lassen.", + "Ascend with exactly %1.": "Steige mit genau %1 auf.", + "Have your reinforced membrane protect the shimmering veil.": "Lass deine verstärkte Membran den schimmernden Schleier schützen.", + "Own every fortune upgrade.
Owning this achievement makes fortunes appear twice as often; unlocked fortune upgrades also have a %1% chance to carry over after ascending.": "Besitze jedes Glücks-Upgrade.
Durch den Besitz dieses Erfolges erscheint das Glück doppelt so oft; freigeschaltete Glücks-Upgrades haben außerdem eine %1%ige Chance, sich nach dem Aufstieg zu übertragen.", + "Make your first stock market profit.": "Mache deinen ersten Gewinn an der Börse.", + "Own at least %1 of a stock market good.": "Besitze mindestens %1 eines Börsengutes.", + "Own at least %1 of every stock market good.": "Besitze mindestens %1 von jedem Börsengut.", + "Make a day of CpS ($%1) in 1 stock market sale.": "Verdiene einen Tag KpS ($%1) in 1 Börsenverkauf.", + "Spend a day of CpS ($%1) in 1 stock market purchase.": "Gib einen Tag KpS ($%1) in 1 Börsenkauf aus.", + "Have your stock market profits surpass a whole year of CpS ($%1).": "Lass deine Börsengewinne ein ganzes Jahr von KpS ($%1) übertreffen.", + "Unlock the highest-tier stock market headquarters.": "Schalte die höchste Stufe der Börsenzentrale frei.", + "Have your stock market profits surpass $%1.": "Lass deine Börsengewinne $%1 übersteigen.", + "Own %1 kitten upgrades.": "Besitze %1 Kätzchen Upgrades.", + "Find the forgotten madeleine.": "Finde das vergessene Madeleine.", + "Click one of Santa's helper grandmas during Christmas season.": "Klicke in der Weihnachtszeit auf eine der helfenden Omas des Weihnachtsmanns.", + "Frenzy": "Rausch", + "Elder frenzy": "Ältestenrausch", + "Click frenzy": "Klickrausch", + "Clot": "Gerinnsel", + "Dragon Harvest": "Drachenernte", + "Everything must go": "Alles muss weg!", + "Cursed finger": "Verfluchter Finger", + "Cookie storm": "Kekssturm", + "Sugar blessing": "Zuckersegen", + "Haggler's luck": "Feilscherglück", + "Haggler's misery": "Feilschers Elend", + "Crafty pixies": "Raffinierte Kobolde", + "Nasty goblins": "Böse Kobolde", + "Magic adept": "Magie-Adept", + "Magic inept": "Magie ungeeignet", + "Devastation": "Verwüstung", + "Sugar frenzy": "Zuckerrausch", + "Loan %1": "Kredit %1", + "Loan %1 (interest)": "Kredit %1 (Zinsen)", + "%1 Power!": "%1 Kraft!", + "%1 Burden!": "%1 Bürde!", + "Cookie production x%1 for %2!": "Keks Produktion x%1 für %2!", + "Cookie production +%1% for %2!": "Keks Produktion +%1% für %2!", + "Cookie production %1% slower for %2!": "Keks Produktion %1% langsamer für %2!", + "Cookie production halved for %1!": "Keks Produktion halbiert für %1!", + "Your %1 are boosting your CpS!": "Deine %1 steigern deine KpS!", + "Your %1 are rusting your CpS!": "Deine %1 verringern deine KpS!", + "All buildings are %1% cheaper for %2!": "Alle Gebäude sind %1% günstiger für %2!", + "All buildings are %1% pricier for %2!": "Alle Gebäude sind %1% teurer für %2!", + "All upgrades are %1% cheaper for %2!": "Alle Upgrades sind %1% günstiger für %2!", + "All upgrades are %1% pricier for %2!": "Alle Upgrades sind %1% teurer für %2!", + "Cookie production halted for %1,
but each click is worth %2 of CpS.": "Die Keks-Produktion wurde für %1 angehalten,
aber jeder Klick ist %2 KpS wert.", + "Clicking power x%1 for %2!": "Klicke auf Leistung x%1 für %2!", + "Clicking power +%1% for %2!": "Klicke auf Leistung +%1% für %2!", + "Cookies everywhere!": "Überall Kekse!", + "You find %1% more golden cookies for the next %2.": "Du findest %1% mehr goldene Kekse für die nächsten %2.", + "Spells backfire %1 times less for %2.": "Zauber gehen %1 mal weniger für %2 nach hinten los.", + "Spells backfire %1 times more for %2.": "Zauber gehen %1 mal weniger für %2 nach hinten los.", + "can be done once every %1": "kann einmal alle %1 genutzt werden", + "usable again in %1": "wieder einsetzbar in %1", + "+%1/s": "/", + "Next tick in %1.": "Nächster Tick in %1.", + "Initializing...": "Initialisiere...", + "View %1": "Zeige %1", + "Close %1": "Schließe %1", + "Details:": "/", + "Effects:": "Effekte:", + "Effect is active.": "Der Effekt ist aktiv.", + "Effect is inactive.": "Der Effekt ist inaktiv.", + "Current bonus:": "Aktueller Bonus:", + "Garden": "Garten", + "Baker's wheat": "Bäckerweizen", + "[Baker's wheat quote]A plentiful crop whose hardy grain is used to make flour for pastries.": "Eine reichhaltige Ernte, deren widerstandsfähiges Korn zur Herstellung von Mehl für Gebäck verwendet wird.", + "Thumbcorn": "Daumenmais", + "[Thumbcorn quote]A strangely-shaped variant of corn. The amount of strands that can sprout from one seed is usually in the single digits.": "Eine seltsam geformte Variante des Mais. Die Anzahl der Stränge, die aus einem Samen sprießen können, liegt meist im einstelligen Bereich.", + "Cronerice": "Kronenreis", + "[Cronerice quote]Not only does this wrinkly bulb look nothing like rice, it's not even related to it either; its closest extant relative is the weeping willow.": "Diese runzlige Knolle sieht nicht nur nicht wie Reis aus, sie ist auch nicht mit ihm verwandt; ihr nächster Verwandter ist die Trauerweide.", + "Gildmillet": "Schildmillet", + "[Gildmillet quote]An ancient staple crop, famed for its golden sheen. Was once used to bake birthday cakes for kings and queens of old.": "Ein altes Grundnahrungsmittel, berühmt für seinen goldenen Glanz. Sie wurde einst verwendet, um Geburtstagskuchen für Könige und Königinnen zu backen.", + "Ordinary clover": "Gewöhnlicher Klee", + "[Ordinary clover quote]Trifolium repens, a fairly mundane variety of clover with a tendency to produce four leaves. Such instances are considered lucky by some.": "Trifolium repens, eine ziemlich alltägliche Kleesorte mit der Tendenz, vier Blätter zu produzieren. Solche Exemplare werden von manchen als Glücksbringer angesehen.", + "Golden clover": "Goldklee", + "[Golden clover quote]A variant of the ordinary clover that traded its chlorophyll for pure organic gold. Tragically short-lived, this herb is an evolutionary dead-end - but at least it looks pretty.": "Eine Variante des gewöhnlichen Klees, der sein Chlorophyll gegen reines organisches Gold getauscht hat. Tragisch kurzlebig, ist dieses Kraut eine evolutionäre Sackgasse - aber wenigstens sieht es hübsch aus.", + "Shimmerlily": "Schimmernde Lilie", + "[Shimmerlily quote]These little flowers are easiest to find at dawn, as the sunlight refracting in dew drops draws attention to their pure-white petals.": "Diese kleinen Blumen sind am einfachsten in der Dämmerung zu finden, da das Sonnenlicht, das sich in den Tautropfen bricht, die Aufmerksamkeit auf ihre reinweißen Blütenblätter lenkt.", + "Elderwort": "Holunderkraut", + "[Elderwort quote]A very old, long-forgotten subspecies of edelweiss that emits a strange, heady scent. There is some anecdotal evidence that these do not undergo molecular aging.": "Eine sehr alte, längst vergessene Unterart des Edelweißes, die einen seltsamen, berauschenden Duft verströmt. Es gibt einige anekdotische Hinweise darauf, dass diese keine molekulare Alterung durchlaufen.", + "Bakeberry": "Preiselbeere", + "[Bakeberry quote]A favorite among cooks, this large berry has a crunchy brown exterior and a creamy red center. Excellent in pies or chicken stews.": "Ein Favorit unter den Köchen, diese große Beere hat eine knusprige braune Außenseite und eine cremig rote Mitte. Hervorragend in Torten oder Hühnereintöpfen.", + "Chocoroot": "Schokoladenwurzel", + "[Chocoroot quote]A tangly bramble coated in a sticky, sweet substance. Unknown genetic ancestry. Children often pick these from fields as-is as a snack.": "Eine säuerliche Brombeere, die mit einer klebrigen, süßen Substanz überzogen ist. Unbekannte genetische Abstammung. Kinder pflücken sie oft als Snack von den Feldern.", + "White chocoroot": "Weiße Schokoladenwurzel", + "[White chocoroot quote]A pale, even sweeter variant of the chocoroot. Often impedes travelers with its twisty branches.": "Eine blasse, noch süßere Variante des Schokorots. Behindert Reisende oft mit seinen verwinkelten Ästen.", + "White mildew": "Weißer Mehltau", + "[White mildew quote]A common rot that infests shady plots of earth. Grows in little creamy capsules. Smells sweet, but sadly wilts quickly.": "Eine häufige Fäule, die schattige Grundstücke befällt. Wächst in kleinen cremigen Kapseln. Riecht süß, verwelkt aber leider schnell.", + "Brown mold": "Brauner Schimmel", + "[Brown mold quote]A common rot that infests shady plots of earth. Grows in odd reddish clumps. Smells bitter, but thankfully wilts quickly.": "Eine häufige Fäule, die schattige Grundstücke befällt. Wächst in seltsamen rötlichen Klumpen. Riecht bitter, verwelkt aber zum Glück schnell.", + "Meddleweed": "Läusekraut", + "[Meddleweed quote]The sign of a neglected farmland, this annoying weed spawns from unused dirt and may sometimes spread to other plants, killing them in the process.": "Das Zeichen eines vernachlässigten Ackerlandes. Dieses lästige Unkraut wächst aus ungenutztem Dreck und kann sich manchmal auf andere Pflanzen ausbreiten und sie dabei abtöten.", + "Whiskerbloom": "Schnurrbartblüte", + "[Whiskerbloom quote]Squeezing the translucent pods makes them excrete a milky liquid, while producing a faint squeak akin to a cat's meow.": "Wenn du die durchsichtigen Schoten drückst, scheiden sie eine milchige Flüssigkeit aus und geben ein leises Quietschen von sich, das an das Miauen einer Katze erinnert.", + "Chimerose": "Glockenrose", + "[Chimerose quote]Originating in the greener flanks of polar mountains, this beautiful flower with golden accents is fragrant enough to make any room feel a little bit more festive.": "Diese wunderschöne Blume mit goldenen Akzenten stammt ursprünglich aus den grüneren Flanken der polaren Berge und duftet so gut, dass sie jeden Raum ein wenig festlicher macht.", + "Nursetulip": "Ammentulpe", + "[Nursetulip quote]This flower grows an intricate root network that distributes nutrients throughout the surrounding soil. The reason for this seemingly altruistic behavior is still unknown.": "Diese Blume wächst ein kompliziertes Wurzelgeflecht, das die Nährstoffe im umliegenden Boden verteilt. Der Grund für dieses scheinbar altruistische Verhalten ist noch unbekannt.", + "Drowsyfern": "Schlummerfarn", + "[Drowsyfern quote]Traditionally used to brew a tea that guarantees a good night of sleep.": "Traditionell verwendet, um einen Tee zu brauen, der eine gute Nachtruhe garantiert.", + "Wardlichen": "Wardliche", + "[Wardlichen quote]The metallic stench that emanates from this organism has been known to keep insects and slugs away.": "Der metallische Gestank, der von diesem Organismus ausgeht, ist bekannt dafür, dass er Insekten und Schnecken fernhält.", + "Keenmoss": "Scharfes Moos", + "[Keenmoss quote]Fuzzy to the touch and of a vibrant green. In plant symbolism, keenmoss is associated with good luck for finding lost objects.": "Fühlt sich flauschig an und hat ein leuchtendes Grün. In der Pflanzensymbolik wird Keenmoss mit Glück beim Auffinden verlorener Gegenstände in Verbindung gebracht.", + "Queenbeet": "Königinnenrübe", + "[Queenbeet quote]A delicious taproot used to prepare high-grade white sugar. Entire countries once went to war over these.": "Eine köstliche Pfahlwurzel, aus der hochwertiger weißer Zucker hergestellt wird. Um sie führten einst ganze Länder Krieg.", + "Juicy queenbeet": "Saftige Königinnenrübe", + "[Juicy queenbeet quote]A delicious taproot used to prepare high-grade white sugar. Entire countries once went to war over these.
It looks like this one has grown especially sweeter and juicier from growing in close proximity to other queenbeets.": "Eine köstliche Pfahlwurzel, die zur Herstellung von hochwertigem weißen Zucker verwendet wird. Es sieht so aus, als ob diese hier besonders süß und saftig geworden ist, weil sie in unmittelbarer Nähe zu anderen Königinnenrüben wächst.", + "Duketater": "Herzoginnenkartoffel", + "[Duketater quote]A rare, rich-tasting tuber fit for a whole meal, as long as its strict harvesting schedule is respected. Its starch has fascinating baking properties.": "Eine seltene, wohlschmeckende Knolle, die für eine ganze Mahlzeit taugt, solange der strenge Ernteplan eingehalten wird. Ihre Stärke hat faszinierende Backeigenschaften.", + "Crumbspore": "Krümelsporen", + "[Crumbspore quote]An archaic mold that spreads its spores to the surrounding dirt through simple pod explosion.": "Ein archaischer Schimmelpilz, der seine Sporen durch einfache Hülsenexplosion auf die umgebende Erde überträgt.", + "Doughshroom": "Teigpilz", + "[Doughshroom quote]Jammed full of warm spores; some forest walkers often describe the smell as similar to passing by a bakery.": "Vollgestopft mit warmen Sporen; manche Waldspaziergänger beschreiben den Geruch oft als ähnlich wie beim Vorbeigehen an einer Bäckerei.", + "Glovemorel": "Handschuhmorchel", + "[Glovemorel quote]Touching its waxy skin reveals that the interior is hollow and uncomfortably squishy.": "Das Berühren der wachsartigen Haut verrät, dass das Innere hohl und unangenehm matschig ist.", + "Cheapcap": "Geizkragen", + "[Cheapcap quote]Small, tough, and good in omelettes. Some historians propose that the heads of dried cheapcaps were once used as currency in some bronze age societies.": "Klein, zäh und gut in Omeletts. Einige Historiker schlagen vor, dass die Köpfe von getrockneten Geizkragen einst als Währung in einigen bronzezeitlichen Gesellschaften verwendet wurden.", + "Fool's bolete": "Narrenspringling", + "[Fool's bolete quote]Named for its ability to fool mushroom pickers. The fool's bolete is not actually poisonous, it's just extremely bland.": "Benannt nach seiner Fähigkeit, Pilzsammler zu täuschen. Der Knollenblätterpilz ist eigentlich nicht giftig, er ist nur extrem fade.", + "Wrinklegill": "Faltenkieme", + "[Wrinklegill quote]This mushroom's odor resembles that of a well-done steak, and is said to whet the appetite - making one's stomach start gurgling within seconds.": "Der Geruch dieses Pilzes ähnelt dem eines gut durchgebratenen Steaks und soll den Appetit anregen - so dass der Magen innerhalb von Sekunden zu gluckern beginnt.", + "Green rot": "Grünfäule", + "[Green rot quote]This short-lived mold is also known as \"emerald pebbles\", and is considered by some as a pseudo-gem that symbolizes good fortune.": "Diese kurzlebige Form ist auch als \"Smaragdkiesel\" bekannt und wird von manchen als Pseudo-Edelstein betrachtet, der Glück symbolisiert.", + "Shriekbulb": "Schreizwiebel", + "[Shriekbulb quote]A nasty vegetable with a dreadful quirk : its flesh resonates with a high-pitched howl whenever it is hit at the right angle by sunlight, moonlight, or even a slight breeze.": "Ein fieses Gemüse mit einer furchtbaren Eigenart: Sein Fleisch schwingt mit einem hohen Heulen, wenn es im richtigen Winkel von Sonnen- oder Mondlicht oder sogar einer leichten Brise getroffen wird.", + "Tidygrass": "Saubergras", + "[Tidygrass quote]The molecules this grass emits are a natural weedkiller. Its stems grow following a predictable pattern, making it an interesting -if expensive- choice for a lawn grass.": "Die Moleküle, die dieses Gras abgibt, sind ein natürliches Unkrautvernichtungsmittel. Seine Halme wachsen nach einem vorhersehbaren Muster, was es zu einer interessanten - wenn auch teuren - Wahl für ein Rasengras macht.", + "Everdaisy": "Gänseblümchen", + "[Everdaisy quote]While promoted by some as a superfood owing to its association with longevity and intriguing geometry, this elusive flower is actually mildly toxic.": "Während sie von einigen als Superfood angepriesen wird, weil sie mit Langlebigkeit und faszinierender Geometrie assoziiert wird, ist diese schwer fassbare Blume tatsächlich leicht giftig.", + "Ichorpuff": "Hauchschwaden", + "[Ichorpuff quote]This puffball mushroom contains sugary spores, but it never seems to mature to bursting on its own. Surrounding plants under its influence have a very slow metabolism, reducing their effects but lengthening their lifespan.": "Dieser Puffball-Pilz enthält zuckerhaltige Sporen, aber er scheint nie von selbst zum Platzen zu reifen. Umliegende Pflanzen, die unter seinem Einfluss stehen, haben einen sehr langsamen Stoffwechsel, was ihre Wirkung reduziert, aber ihre Lebensdauer verlängert.", + "Garden information": "Garten Informationen", + "Your garden is frozen, providing no effects.": "Dein Garten ist eingefroren und bietet keine Effekte.", + "Combined effects of all your plants:": "Kombinierte Effekte all deiner Pflanzen:", + "None.": "Keine.", + "-You can cross-breed plants by planting them close to each other; new plants will grow in the empty tiles next to them.
-Unlock new seeds by harvesting mature plants.
-When you ascend, your garden plants are reset, but you keep all the seeds you've unlocked.
-Your garden has no effect and does not grow while the game is closed.": "- Du kannst Pflanzen kreuzen, indem du sie nahe beieinander pflanzt; neue Pflanzen wachsen in den leeren Feldern daneben.
-Schalte neue Samen frei, indem du reife Pflanzen erntest.
-Wenn du aufsteigst, werden deine Gartenpflanzen zurückgesetzt, aber du behältst alle Samen, die du freigeschaltet hast.
-Dein Garten hat keinen Effekt und wächst nicht, während das Spiel geschlossen ist.", + "Harvest all": "Alle ernten", + "Instantly harvest all plants in your garden.": "Ernte sofort alle Pflanzen in deinem Garten.", + "%1 to harvest only mature, mortal plants.": "%1 um nur reife, sterbliche Pflanzen zu ernten.", + "%1 to harvest all mature plants of this type.": "%1 um alle reifen Pflanzen dieses Typs zu ernten.", + "Freeze": "Einfrieren", + "Cryogenically preserve your garden.
Plants no longer grow, spread or die; they provide no benefits.
Soil cannot be changed.
Using this will effectively pause your garden.": "Konserviere deinen Garten kryogenisch.
Pflanzen wachsen nicht mehr, breiten sich nicht mehr aus oder sterben ab; sie bieten keinen Nutzen.
Der Boden kann nicht verändert werden.
Damit wird dein Garten effektiv pausiert.", + "Garden is frozen. Unfreeze to resume.": "Garten ist eingefroren. Taue ihn auf, um fortzufahren.", + "Sacrifice garden": "Garten opfern", + "A swarm of sugar hornets comes down on your garden, destroying every plant as well as every seed you've unlocked - leaving only a %1 seed.
In exchange, they will grant you %2.
This action is only available with a complete seed log.": "Ein Schwarm von Zuckerhornissen stürzt sich auf deinen Garten und zerstört jede Pflanze sowie jeden Samen, den du freigeschaltet hast - übrig bleibt nur ein %1-Samen.
Im Gegenzug gewähren sie dir einen %2.
Diese Aktion ist nur mit einem vollständigen Samenlog verfügbar.", + "Do you REALLY want to sacrifice your garden to the sugar hornets?
You will be left with an empty plot and only the %1 seed unlocked.
In return, you will gain %2 sugar lumps.
": "Willst du deinen Garten WIRKLICH den Zuckerhornissen opfern?
Du wirst mit einem leeren Grundstück zurückgelassen und nur die %1 Saat freigeschaltet.
Im Gegenzug erhältst du %2 Würfelzucker.
", + "Sacrifice!": "Opfern!", + "You've sacrificed your garden to the sugar hornets, destroying your crops and your knowledge of seeds.
In the remains, you find %1 sugar lumps.": "Du hast deinen Garten den Zuckerhornissen geopfert, die deine Ernte und dein Wissen über Saatgut vernichtet haben.
In den Überresten findest du %1 Würfelzucker.", + "immortal": "Unsterblich", + "predictable growth": "Vorhersehbares Wachstum", + "surrounding plants (%1x%1) age %2% faster": "Umliegende Pflanzen (%1x%1) altern %2% schneller", + "surrounding plants (%1x%1) age %2% slower": "Umliegende Pflanzen (%1x%1) altern %2% langsamer", + "surrounding plants (%1x%1) are %2% more efficient": "Umliegende Pflanzen (%1x%1) sind %2% effizienter", + "surrounding plants (%1x%1) are %2% less efficient": "Umliegende Anlagen (%1x%1) sind %2% weniger effizient", + "surrounding tiles (%1x%1) develop no weeds or fungus": "Umliegende Kacheln (%1x%1) entwickeln kein Unkraut oder Pilz", + "harvest when mature for +%1 of CpS (max. %2% of bank)": "Ernte bei Reife für +%1 der KpS (max. %2% der Bank)", + "harvest when mature for a sugar lump": "Ernte bei Reife für einen Würfelzucker", + "useless": "Nutzlos", + "spreads easily": "Verbreitet sich leicht", + "may spread as %1": "Kann sich als %1 verbreiten", + "grows in empty tiles": "Wächst in leeren Kacheln", + "may overtake nearby plants": "Kann benachbarte Pflanzen überholen", + "may sometimes drop spores when uprooted": "Kann manchmal Sporen fallen lassen, wenn er entwurzelt wird", + "explodes into up to %1 of CpS at the end of its lifecycle (max. %2% of bank)": "Explodiert am Ende seines Lebenszyklus in bis zu %1 von KpS (max. %2% der Bank)", + "cannot handle cold climates; %1% chance to die when frozen": "Kann nicht mit kaltem Klima umgehen; %1% Chance zu sterben, wenn es gefriert", + "the unfortunate result of some plant combinations": "Das unglückliche Ergebnis einiger Pflanzenkombinationen", + "Soil unlocked at %1 farms.": "Boden freigeschaltet bei %1 Farmen.", + "Your field is currently using this soil.": "Dein Feld nutzt derzeit diesen Boden.", + "You will be able to change your soil again in %1.": "Du wirst deinen Boden in %1 wieder wechseln können.", + "Click to use this type of soil for your whole field.": "Klicke, um diesen Bodentyp für dein ganzes Feld zu verwenden.", + "Dirt": "Dreck", + "Simple, regular old dirt that you'd find in nature.": "Einfacher, normaler alter Dreck, den du in der Natur finden würdest.", + "Fertilizer": "Dünger", + "Soil with a healthy helping of fresh manure. Plants grow faster but are less efficient.": "Boden mit einer gesunden Portion frischem Dünger. Die Pflanzen wachsen schneller, sind aber weniger effizient.", + "Clay": "Lehm", + "Rich soil with very good water retention. Plants grow slower but are more efficient.": "Reichhaltiger Boden mit sehr guter Wasserspeicherung. Die Pflanzen wachsen langsamer, sind aber effizienter.", + "Pebbles": "Kiesel", + "Dry soil made of small rocks tightly packed together. Not very conducive to plant health, but whatever falls off your crops will be easy to retrieve.
Useful if you're one of those farmers who just want to find new seeds without having to tend their garden too much.": "Trockene Erde, die aus kleinen Steinen besteht, die dicht aneinander gepackt sind. Das ist nicht gerade förderlich für die Gesundheit der Pflanzen, aber was auch immer von deinen Pflanzen abfällt, wird leicht zu bergen sein.
Nützlich, wenn du zu den Bauern gehörst, die einfach nur neues Saatgut finden wollen, ohne sich zu sehr um ihren Garten kümmern zu müssen.", + "Wood chips": "Rindenmulch", + "Soil made of bits and pieces of bark and sawdust. Helpful for young sprouts to develop, not so much for mature plants.": "Erde, die aus Rindenstücken und Sägemehl besteht. Hilfreich für junge Triebe, um sich zu entwickeln, nicht so sehr für ausgewachsene Pflanzen.", + "tick every %1": "Ein Tick alle %1", + "passive plant effects": "Passive Pflanzeneffekte", + "weed growth": "Unkrautwachstum", + "%1% chance of collecting seeds automatically when plants expire": "%1% Chance, dass du automatisch Samen sammelst, wenn die Pflanzen verfallen.", + "plants spread and mutate %1 times more": "Pflanzen verbreiten sich und mutieren %1 mal öfter.", + "Plant effects:": "Pflanzeneffekte:", + "Possible mutations:": "Mögliche Mutationen:", + "Average lifespan:": "Durchschnittliche Lebenserwartung:", + "Average maturation:": "Durchschnittliche Reifezeit:", + "Mature in about %1": "Reif in etwa %1", + "Decays in about %1": "Zerfällt in etwa %1", + "Does not decay": "Verrottet nicht", + "%1 tick": [ + "%1 Tick", + "%1 Ticks" + ], + "Weed": "Unkraut", + "Fungus": "Pilz", + "Planting cost:": "Kosten für die Bepflanzung:", + "%1 of CpS,
minimum %2": "%1 der KpS,
Minimum %2", + "%1 seed": "%1 Samen", + "Click to select this seed for planting.": "Klicke darauf, um diesen Samen für die Aussaat auszuwählen.", + "This seed cannot be planted.": "Dieser Samen kann nicht gepflanzt werden.", + "Empty tile": "Leere Kachel", + "This tile of soil is empty.
Pick a seed and plant something!": "Dieses Stück Erde ist leer.
Pflücke einen Samen und pflanze etwas!", + "Click to plant %1 for %2.": "Klicke, um %1 für %2 zu pflanzen.", + "%1 to plant multiple.": "%1 um mehrere zu pflanzen.", + "Aging multiplier:": "Alterungsmultiplikator:", + "Effect multiplier:": "Effekt-Multiplikator:", + "Weeds/fungus repellent:": "Unkraut-/Pilzschutzmittel:", + "This plant is growing here.": "Diese Pflanze wächst hier.", + "Stage:": "Stadium:", + "bud": "Knospe", + "sprout": "Spross", + "bloom": "Blüte", + "mature": "Reif", + "may reproduce, will drop seed when harvested": "Kann sich fortpflanzen, lässt Samen fallen, wenn sie geerntet wird", + "Click to harvest.": "Klicken zum Ernten.", + "Click to unearth.": "Klicken zum Rupfen.", + "Click to refill your soil timer and trigger 1 plant growth tick with x%1 spread and mutation rate for %2.": "Klicke, um deinen Boden-Timer aufzufüllen und 1 Pflanzenwachstumstick mit x%1 Ausbreitung und Mutationsrate für %2 auszulösen.", + "Unlocked %1 seed.": "Schalte %1 Samen frei.", + "Seeds": "Samen", + "Tools": "Werkzeuge", + "Mature plants harvested: %1 (total: %2)": "Reife Pflanzen geerntet: %1 (gesamt: %2)", + "Plot size: %1
(Upgrades with farm level)": "Grundstücksgröße: %1
(Upgrades mit Farmlevel)", + "Garden plants age and mutate %1% faster.": "Gartenpflanzen altern und mutieren %1% schneller.", + "while plant is alive; scales with plant growth": "Während die Pflanze lebt; Skalen mit Pflanzenwachstum", + "Dungeon": "/", + "Grimoire": "/", + "This is your magic meter. Each spell costs magic to use.
Your maximum amount of magic varies depending on your amount of Wizard towers, and their level.
Magic refills over time. The lower your magic meter, the slower it refills.": "Dies ist deine Magieanzeige. Jeder Zauber kostet Magie, um ihn zu benutzen.
Deine maximale Menge an Magie hängt von der Anzahl deiner Zauberertürme und deren Level ab.
Magie füllt sich mit der Zeit wieder auf. Je niedriger deine Magieanzeige ist, desto langsamer füllt sie sich wieder auf.", + "Spells cast: %1 (total: %2)": "Gewirkte Zauber: %1 (gesamt: %2)", + "Magic cost:": "Magiekosten:", + "Chance to backfire:": "Fehlschlagschance:", + "Effect:": "Effekt:", + "Backfire:": "Fehlschlag:", + "Backfire!": "Fehlschlag!", + "%1 magic": "%1 Magie", + "+%1% of max magic": "+%1% der maximalen Magie", + "Click to refill %1 units of your magic meter for %2.": "Klicke, um %1 Einheiten deiner Magieanzeige für %2 aufzufüllen.", + "Grimoire spells are %1% cheaper but fail %1% more.": "Grimoire-Zauber sind %1% billiger, versagen aber %1% häufiger.", + "Conjure Baked Goods": "Backwaren herbeizaubern", + "Summon half an hour worth of your CpS, capped at %1% of your cookies owned.": "Beschwöre eine halbe Stunde lang deine KpS, begrenzt auf %1% deines Kekses.", + "Trigger a %1-minute clot and lose %1 minutes of CpS.": "Löse ein %1-minütiges Gerinnsel aus und verliere den Gegenwert von %1 Minuten KpS.", + "You magic %1 out of thin air.": "Du zauberst %1 aus dem Nichts herbei.", + "Summoning failed!": "Beschwörung fehlgeschlagen!", + "Force the Hand of Fate": "Die Hand des Schicksals erzwingen", + "Summon a random golden cookie. Each existing golden cookie makes this spell +%1% more likely to backfire.": "Beschwöre einen zufälligen goldenen Keks. Jeder vorhandene goldene Keks erhöht die Wahrscheinlichkeit, dass dieser Zauber nach hinten losgeht, um +%1%.", + "Summon an unlucky wrath cookie.": "Beschwöre einen unglücklichen Zorn-Keks.", + "Promising fate!": "Verheißungsvolles Schicksal!", + "Sinister fate!": "Unheilvolles Schicksal!", + "Stretch Time": "Zeitdehnung", + "All active buffs gain %1% more time (up to %2 more minutes).": "Alle aktiven Buffs erhalten %1% mehr Zeit (bis zu %2 Minuten mehr).", + "All active buffs are shortened by %1% (up to %2 minutes shorter).": "Alle aktiven Buffs werden um %1% verkürzt (bis zu %2 Minuten kürzer).", + "No buffs to alter!": "Keine Buffs zum Ändern!", + "Zap! Buffs lengthened.": "Zack! Die Buffs haben sich verlängert.", + "Fizz! Buffs shortened.": "Zisch! Buffs verkürzt.", + "Spontaneous Edifice": "Spontanes Bauwerk", + "The spell picks a random building you could afford if you had twice your current cookies, and gives it to you for free. The building selected must be under %1, and cannot be your most-built one (unless it is your only one).": "Der Zauber wählt ein zufälliges Gebäude aus, das du dir leisten könntest, wenn du das Doppelte deiner aktuellen Kekse hättest, und gibt es dir umsonst. Das gewählte Gebäude muss unter %1 liegen und darf nicht dein meistgebautes sein (außer es ist dein einziges).", + "Lose a random building.": "Verliere ein zufälliges Gebäude.", + "No buildings to improve!": "Keine Gebäude zum Verbessern!", + "Backfired, but no buildings to destroy!": "Nach hinten losgegangen, aber keine Gebäude zum zerstören!", + "A new %1
bursts out of the ground.": "Ein neuer %1
platzt aus dem Boden.", + "One of your %1
disappears in a puff of smoke.": "Einer deiner %1
verschwindet in einer Rauchwolke.", + "Haggler's Charm": "Feilscherkönig", + "Upgrades are %1% cheaper for 1 minute.": "Upgrades sind 1 Minute lang um %1% günstiger.", + "Upgrades are %1% more expensive for an hour.": "Upgrades sind %1% teurer für eine Stunde.", + "Upgrades are cheaper!": "Upgrades sind günstiger!", + "Upgrades are pricier!": "Upgrades sind teurer!", + "Summon Crafty Pixies": "Beschwöre handwerkliche Feen", + "Buildings are %1% cheaper for 1 minute.": "Gebäude sind 1 Minute lang um %1% günstiger.", + "Buildings are %1% more expensive for an hour.": "Gebäude sind %1% teurer für eine Stunde.", + "Buildings are cheaper!": "Gebäude sind günstiger!", + "Buildings are pricier!": "Gebäude sind teurer!", + "Gambler's Fever Dream": "Fiebertraum eines Spielers", + "Cast a random spell at half the magic cost, with twice the chance of backfiring.": "Wirke einen zufälligen Zauber zu den halben Magiekosten, mit der doppelten Chance, dass er nach hinten losgeht.", + "No eligible spells!": "Keine wählbaren Zaubersprüche!", + "That's too bad!
Magic refunded.": "Das ist zu schade!
Magie erstattet.", + "Casting %1
for %2 magic...": "Zaubere %1
für %2 Magie...", + "Resurrect Abomination": "Abscheulichkeit wiederauferstehen lassen", + "Instantly summon a wrinkler if conditions are fulfilled.": "Rufe sofort einen Falter herbei, wenn die Bedingungen erfüllt sind.", + "Pop one of your wrinklers.": "Lass einen deiner Falter platzen.", + "Unable to spawn a wrinkler!": "Kann keinen Falter spawnen!", + "Rise, my precious!": "Erhebe dich, mein Schatz!", + "But no wrinkler was harmed.": "Aber kein Falter kam zu Schaden.", + "So long, ugly...": "Mach's gut, Hässliches Vieh...", + "Diminish Ineptitude": "Ungeschicklichkeit vermindern", + "Spells backfire %1 times less for the next %2 minutes.": "Zauber werden in den nächsten %2 Minuten %1 mal seltener nach hinten losgehen.", + "Spells backfire %1 times more for the next %2 minutes.": "Zauber werden %1 Mal mehr für die nächsten %2 Minuten nach hinten losgehen.", + "Ineptitude diminished!": "Ungeschicklichkeit vermindert!", + "Ineptitude magnified!": "Ungeschicklichkeit vergrößert!", + "Pantheon": "/", + "[GOD 1 NAME]Holobore, Spirit of Asceticism": "Holobore, Geist des Asketentums", + "[GOD 1 QUOTE]An immortal life spent focusing on the inner self, away from the distractions of material wealth.": "Ein unsterbliches Leben, das mit der Konzentration auf das innere Selbst verbracht wird, fernab von den Ablenkungen des materiellen Wohlstands.", + "[GOD 2 NAME]Vomitrax, Spirit of Decadence": "Vomitrax, Geist der Dekadenz", + "[GOD 2 QUOTE]This sleazy spirit revels in the lust for quick easy gain and contempt for the value of steady work.": "Dieser schäbige Geist schwelgt in der Gier nach schnellem, einfachem Gewinn und der Verachtung für den Wert beständiger Arbeit.", + "[GOD 3 NAME]Godzamok, Spirit of Ruin": "Godzamok, Geist des Verderbens", + "[GOD 3 QUOTE]The embodiment of natural disasters. An impenetrable motive drives the devastation caused by this spirit.": "Die Verkörperung von Naturkatastrophen. Ein undurchdringliches Motiv treibt die Verwüstungen an, die dieser Geist verursacht.", + "[GOD 4 NAME]Cyclius, Spirit of Ages": "Cyclius, Geist der Zeitalter", + "[GOD 4 QUOTE]This spirit knows about everything you'll ever do, and enjoys dispensing a harsh judgment.": "Dieser Geist weiß über alles Bescheid, was du jemals tun wirst, und genießt es, ein hartes Urteil zu fällen.", + "[GOD 5 NAME]Selebrak, Spirit of Festivities": "Selebrak, Geist der Festlichkeiten", + "[GOD 5 QUOTE]This is the spirit of merry getaways and regretful Monday mornings.": "Das ist der Geist der fröhlichen Flucht und des bedauernden Montagmorgens.", + "[GOD 6 NAME]Dotjeiess, Spirit of Creation": "Dotjeiess, Geist der Schöpfung", + "[GOD 6 QUOTE]All things that be and ever will be were scripted long ago by this spirit's inscrutable tendrils.": "Alle Dinge, die sind und jemals sein werden, wurden vor langer Zeit von den unergründlichen Ranken dieses Geistes geschrieben.", + "[GOD 7 NAME]Muridal, Spirit of Labor": "Muridal, Geist der Arbeit", + "[GOD 7 QUOTE]This spirit enjoys a good cheese after a day of hard work.": "Dieser Geist genießt einen guten Käse nach einem Tag harter Arbeit.", + "[GOD 8 NAME]Jeremy, Spirit of Industry": "Jeremy, Geist der Industrie", + "[GOD 8 QUOTE]While this spirit has many regrets, helping you rule the world through constant industrialization is not one of them.": "Während dieser Geist viele Dinge bedauert, gehört es nicht dazu, dir dabei zu helfen, die Welt durch ständige Industrialisierung zu beherrschen.", + "[GOD 9 NAME]Mokalsium, Mother Spirit": "Mokalsium, Muttergeist", + "[GOD 9 QUOTE]A caring spirit said to contain itself, inwards infinitely.": "Ein fürsorglicher Geist, von dem gesagt wird, dass er sich selbst enthält, unendlich nach innen.", + "[GOD 10 NAME]Skruuia, Spirit of Scorn": "Skruuia, Geist der Verachtung", + "[GOD 10 QUOTE]This spirit enjoys poking foul beasts and watching them squirm, but has no love for its own family.": "Dieser Geist genießt es, üble Biester zu stoßen und zu beobachten, wie sie sich winden, aber er hat keine Liebe für seine eigene Familie.", + "[GOD 11 NAME]Rigidel, Spirit of Order": "Rigidel, Geist der Ordnung", + "[GOD 11 QUOTE]You will find that life gets just a little bit sweeter if you can motivate this spirit with tidy numbers and properly-filled tax returns.": "Sie werden feststellen, dass das Leben ein wenig süßer wird, wenn Sie diesen Geist mit ordentlichen Zahlen und korrekt ausgefüllten Steuererklärungen motivieren können.", + "Diamond slot": "Diamantsockel", + "Ruby slot": "Rubinsockel", + "Jade slot": "Jadesockel", + "empty": "leer", + "Release to assign %1 to this slot.": "Freigeben, um %1 diesem Sockel zuzuordnen.", + "Drag a spirit onto this slot to assign it.": "Ziehe einen Geist auf diesen Platz, um ihn zuzuweisen.", + "If a golden cookie is clicked, this spirit is unslotted and all worship swaps will be used up.": "Wenn ein goldener Keks angeklickt wird, ist dieser Geist ungeschlitzt und alle Swaps für Anbetung werden aufgebraucht.", + "Each time you slot a spirit, you use up one worship swap.
If you have 2 swaps left, the next one will refill after %1.
If you have 1 swap left, the next one will refill after %2.
If you have 0 swaps left, you will get one after %3.
Unslotting a spirit costs no swaps.": "Jedes Mal, wenn du einen Geist einsetzt, verbrauchst du eine Anbetungsänderung.
Wenn du 2 Änderungen übrig hast, wird die nächste nach %1 aufgefüllt.
Wenn du 1 Änderung übrig hast, wird die nächste nach %2 aufgefüllt.
Wenn du 0 Änderungen übrig hast, bekommst du eine nach %3.
Das Einsetzen eines Geistes kostet keine Änderungen.", + "Click to refill all your worship swaps for %1.": "Klicke darauf, um alle deine Anbetungsänderungen für %1 aufzufüllen.", + "Worship swaps: %1": "Anbetungsänderungen: %1", + "next in %1": "die nächste in %1", + "The jade slot behaves as a ruby slot and the ruby slot behaves as a diamond slot.": "Der Jade-Slot verhält sich wie ein Rubin-Slot und der Rubin-Slot verhält sich wie ein Diamant-Slot.", + "Stock Market": "Aktienmarkt", + "[STOCK 1 NAME]Old Mills": "Old Mills", + "[STOCK 1 TYPE]Cereals": "Zerealien", + "[STOCK 1 LOGO]CRL": "CRL", + "[STOCK 2 NAME]Cocoa Excavations": "Cocoa Excavations", + "[STOCK 2 TYPE]Chocolate": "Schokolade", + "[STOCK 2 LOGO]CHC": "CHC", + "[STOCK 3 NAME]Bovine Industries": "Bovine Industries", + "[STOCK 3 TYPE]Butter": "Butter", + "[STOCK 3 LOGO]BTR": "BTR", + "[STOCK 4 NAME]Candy Trust": "Candy Trust", + "[STOCK 4 TYPE]Sugar": "Zucker", + "[STOCK 4 LOGO]SUG": "SUG", + "[STOCK 5 NAME]Hazel Monastery": "Hazel Monastery", + "[STOCK 5 TYPE]Nuts": "Nüsse", + "[STOCK 5 LOGO]NUT": "NUT", + "[STOCK 6 NAME]Wacky Reagants": "Wacky Reagants", + "[STOCK 6 TYPE]Salt": "Salz", + "[STOCK 6 LOGO]SLT": "SLT", + "[STOCK 7 NAME]Cosmic Exports": "Cosmic Exports", + "[STOCK 7 TYPE]Vanilla": "Vanille", + "[STOCK 7 LOGO]VNL": "VNL", + "[STOCK 8 NAME]Organic Gnostics": "Organic Gnostics", + "[STOCK 8 TYPE]Eggs": "Eier", + "[STOCK 8 LOGO]EGG": "EGG", + "[STOCK 9 NAME]Dimensional Exchange": "Dimensional Exchange", + "[STOCK 9 TYPE]Cinnamon": "Zimt", + "[STOCK 9 LOGO]CNM": "CNM", + "[STOCK 10 NAME]Precision Aging": "Precision Aging", + "[STOCK 10 TYPE]Cream": "Sahne", + "[STOCK 10 LOGO]CRM": "CRM", + "[STOCK 11 NAME]Pectin Research": "Pectin Research", + "[STOCK 11 TYPE]Jam": "Marmelade", + "[STOCK 11 LOGO]JAM": "JAM", + "[STOCK 12 NAME]Dazzle Corp Ltd.": "Dazzle Corp Ltd.", + "[STOCK 12 TYPE]White chocolate": "Weiße Schokolade", + "[STOCK 12 LOGO]WCH": "WCH", + "[STOCK 13 NAME]Prosperity Hive": "Prosperity Hive", + "[STOCK 13 TYPE]Honey": "Honig", + "[STOCK 13 LOGO]HNY": "HNY", + "[STOCK 14 NAME]Selfmade Bakeries": "Selfmade Bakeries", + "[STOCK 14 TYPE]Cookies": "Kekse", + "[STOCK 14 LOGO]CKI": "CKI", + "[STOCK 15 NAME]Figments Associated": "Figments Associated", + "[STOCK 15 TYPE]Recipes": "Rezepte", + "[STOCK 15 LOGO]RCP": "RCP", + "[STOCK 16 NAME]Polyvalent Acquisitions": "Polyvalent Acquisitions", + "[STOCK 16 TYPE]Subsidiaries": "Tochtergesellschaften", + "[STOCK 16 LOGO]SBD": "SBD", + "[STOCK 17 NAME]Great Minds": "Große Geister", + "[STOCK 17 TYPE]Publicists": "Publizisten", + "[STOCK 17 LOGO]PBL": "PBL", + "from %1": "ab %1", + "%1: currently worth $%2 per unit.": "%1: derzeitiger Wert $%2 pro Einheit.", + "You currently own %1 (worth $%2).": "DU hast momentan %1 ($%2 wert).", + "Your warehouses can store up to %1.": "Deine Lagerhäuser können bis zu %1 lagern.", + "You may increase your storage space by upgrading your offices and by buying more %1. You also get %2 extra storage space per %3 level (currently: +%4).": "Du kannst deinen Lagerplatz durch Upgrades deiner Büros und durch den Kauf von mehr %1 vergrößern. Du bekommst auch %2 zusätzlichen Lagerplatz pro %3 Level (derzeit: +%4).", + "The average worth of this stock and how high it can peak depends on the building it is tied to, along with the level of your %1.": "Der durchschnittliche Wert dieser Aktie und wie hoch sie ausfallen kann, hängt von dem Gebäude ab, an das sie gebunden ist, sowie von der Höhe deines %1.", + "%1 the hide button to toggle all other stocks.": "%1 den Ausblenden-Button, um alle anderen Bestände umzuschalten.", + "stock:": "Aktie:", + "for $%1 each": "für $%1 jeweils", + "last bought at
$%1 each": "Zuletzt gekauft bei
$%1 pro Stück", + "+%1% overhead": "+%1% Überhang", + "value:": "Wert:", + "valued at %1": "Wert bei %1", + "you spend:": "du gibst aus:", + "you earn:": "du verdienst:", + "You cannot buy and sell this stock in the same tick.": "Du kannst diese Aktie nicht im selben Tick kaufen und verkaufen.", + "This is your office.": "Dies ist dein Büro.", + "It is fully upgraded. Its lavish interiors, spanning across innumerable floors, are host to many a decadent party, owing to your nigh-unfathomable wealth.": "Es ist komplett aufgewertet. Die üppigen Innenräume, die sich über unzählige Etagen erstrecken, sind dank deines unergründlichen Reichtums Gastgeber vieler dekadenter Partys.", + "Level %1 offices": "Level %1 Büros", + "Credit garage": "Kreditwerkstatt", + "Tiny bank": "Winzige Bank", + "Loaning company": "Kreditinstitut", + "Finance headquarters": "Finanz-Zentrale", + "International exchange": "Internationaler Austausch", + "Palace of Greed": "Palast der Gier", + "Upgrading will cost you %1.": "Das Upgrade wird dich %1 kosten.", + "Upgrading requires %1.": "Das Upgrade benötigt %1.", + "Upgrading will grant you:": "Ein Upgrade gewährt dir:", + "+1 loan slot": "+1 credit slot", + "+1 opportunity slot": "+1 Möglichkeitsslot", + "+%1 warehouse space for all goods": "+%1 Lagerfläche für alle Waren", + "+%1% base warehouse space for all goods": "+%1% Grundlagerfläche für alle Waren", + "Brokers:": "Makler:", + "A nice broker to trade more cookies.": "Ein netter Broker für den Handel mit mehr Keksen.", + "Hire": "Anheuern", + "Buying goods normally incurs overhead costs of %1% extra. Each broker you hire reduces that cost by %2%.": "Beim Kauf von Waren fallen normalerweise zusätzliche Gemeinkosten von %1% an. Jeder Makler, den du beauftragst, reduziert diese Kosten um %2%.", + "Current overhead costs thanks to your brokers: +%1%": "Aktuelle Gemeinkosten dank der Makler: +%1%", + "Buying a broker costs %1 of CpS (that's $%2).": "Der Kauf eines Maklers kostet %1 KpS (das sind $%2).", + "Maximum number of brokers you can own: %1 (the highest amount of grandmas you've owned this run, divided by 10, plus your grandma level)": "Maximale Anzahl an Maklern, die du besitzen kannst: %1 (die höchste Anzahl an Omas, die du in diesem Lauf besessen hast, geteilt durch 10, plus deine Oma-Stufe)", + "Brokers are Wall Street-class grandmas versed in the ways of finance. Stockbroker grandmas work hard and play hard, and will fight telephone in hand to get your clients the best possible deals - with a sizeable profit margin for you, of course.": "Börsenmakler sind Omas der Wall Street, die sich mit der Finanzwelt auskennen. Börsenmakler-Omas arbeiten hart und spielen hart und werden mit dem Telefon in der Hand kämpfen, um Ihren Kunden die bestmöglichen Angebote zu machen - natürlich mit einer beträchtlichen Gewinnspanne für Sie.", + "Hiring a new broker will cost you %1.": "Einen neuen Broker zu engagieren wird dich %1 kosten.", + "Take out %1": "%1 herausnehmen", + "Loan #%1": "Kredit #%1", + "a modest loan": "ein kleiner Kredit", + "Buy that vintage car you've always wanted. Just pay us back.": "Kaufe den Oldtimer, den du schon immer haben wolltest. Zahl es uns einfach zurück.", + "a pawnshop loan": "ein Pfandhauskredit", + "Bad credit? No problem. It's your money, and you need it now.": "Schlechte Bonität? Kein Problem! Es ist dein Geld, und du brauchst es jetzt.", + "a retirement loan": "ein Alterskredit", + "Finance your next house, boat, spouse, etc. You've earned it.": "Finanziere dein nächstes Haus, Boot, Ehepartner, etc. Du hast es dir verdient.", + "By taking this loan, you will get %1 CpS for the next %2.": "Wenn du dieses Darlehen nimmst, bekommst du %1 KpS für die nächsten %2.", + "However, you will get %1 CpS for the next %2 after that.": "Du bekommst jedoch %1 KpS für die nächsten %2 danach.", + "You must also pay an immediate downpayment of %1 (%2% of your current bank).": "Du musst außerdem eine sofortige Anzahlung von %1 (%2% deiner aktuellen Bank) leisten.", + "Loan over": "Kredit vorbei", + "Your loan has expired, and you must now repay the interest.": "Dein Kredit ist ausgelaufen und du musst nun die Zinsen zurückzahlen.", + "Line style": "Linienstil", + "Color mode": "Farbmodus", + "Toggle speed": "Geschwindigkeit umschalten", + "Click to refill your opportunity timer (and give a quick burst to your economy) for %1.": "Klicke, um deinen Möglichkeiten-Timer aufzufüllen (und deiner Wirtschaft einen schnellen Schub zu geben) für %1.", + "Profits: %1. All prices are in $econds of your highest raw cookies per second.": "Gewinne: %1. Alle Preise sind in $Sekunden deines höchsten KpS Grudnwertes.", + "The stock market is more chaotic.": "Der Aktienmarkt ist eher chaotisch.", + "[Upgrade name 0]Reinforced index finger": "Verstärkter Zeigefinger", + "[Upgrade name 1]Carpal tunnel prevention cream": "Karpaltunnel-Präventionscreme", + "[Upgrade name 2]Ambidextrous": "Beidhändig", + "[Upgrade name 3]Thousand fingers": "Tausend Finger", + "[Upgrade name 4]Million fingers": "Millionen Finger", + "[Upgrade name 5]Billion fingers": "Milliarden Finger", + "[Upgrade name 6]Trillion fingers": "Billionen Finger", + "[Upgrade name 7]Forwards from grandma": "Weiterleitung von Oma", + "[Upgrade name 8]Steel-plated rolling pins": "Stahlbeschichtete Nudelhölzer", + "[Upgrade name 9]Lubricated dentures": "Geölter Zahnersatz", + "[Upgrade name 10]Cheap hoes": "Billige Hacken", + "[Upgrade name 11]Fertilizer": "Düngemittel", + "[Upgrade name 12]Cookie trees": "Keks-Bäume", + "[Upgrade name 13]Sturdier conveyor belts": "Stärkere Förderbänder", + "[Upgrade name 14]Child labor": "Kinderarbeit", + "[Upgrade name 15]Sweatshop": "Ausbeuterbetrieb", + "[Upgrade name 16]Sugar gas": "Zuckergas", + "[Upgrade name 17]Megadrill": "Megabohrer", + "[Upgrade name 18]Ultradrill": "Ultrabohrer", + "[Upgrade name 19]Vanilla nebulae": "Vanille-Nebel", + "[Upgrade name 20]Wormholes": "Wurmlöcher", + "[Upgrade name 21]Frequent flyer": "Vielflieger", + "[Upgrade name 22]Antimony": "Antimon", + "[Upgrade name 23]Essence of dough": "Teigessenz", + "[Upgrade name 24]True chocolate": "Echte Schokolade", + "[Upgrade name 25]Ancient tablet": "Antike Tafel", + "[Upgrade name 26]Insane oatling workers": "Geisteskranke Haferlarbeiter", + "[Upgrade name 27]Soul bond": "Seelenbande", + "[Upgrade name 28]Flux capacitors": "Flusskondensatoren", + "[Upgrade name 29]Time paradox resolver": "Zeitparadoxon-Auflöser", + "[Upgrade name 30]Quantum conundrum": "Quanten-Rätsel", + "[Upgrade name 31]Kitten helpers": "Kätzchen-Helfer", + "[Upgrade name 32]Kitten workers": "Kätzchen-Arbeiter", + "[Upgrade name 33]Plain cookies": "Einfache Kekse", + "[Upgrade name 34]Sugar cookies": "Zucker-Kekse", + "[Upgrade name 35]Oatmeal raisin cookies": "Haferflocken-Rosinen-Kekse", + "[Upgrade name 36]Peanut butter cookies": "Erdnussbutter-Kekse", + "[Upgrade name 37]Coconut cookies": "Kokosnuss-Kekse", + "[Upgrade name 38]White chocolate cookies": "Weiße Schokoladenkekse", + "[Upgrade name 39]Macadamia nut cookies": "Macadamia-Nuss Kekse", + "[Upgrade name 40]Double-chip cookies": "Doppelsplitter-Kekse", + "[Upgrade name 41]White chocolate macadamia nut cookies": "Weiße Schokolade-Macadamia-Nuss-Kekse", + "[Upgrade name 42]All-chocolate cookies": "Kekse mit Vollmilchschokolade", + "[Upgrade name 43]Quadrillion fingers": "Quadrillionen Finger", + "[Upgrade name 44]Prune juice": "Pflaumensaft", + "[Upgrade name 45]Genetically-modified cookies": "Gentechnisch veränderte Kekse", + "[Upgrade name 46]Radium reactors": "Radium-Reaktoren", + "[Upgrade name 47]Ultimadrill": "Ultradünnbohrer", + "[Upgrade name 48]Warp drive": "Warp-Antrieb", + "[Upgrade name 49]Ambrosia": "Ambrosia", + "[Upgrade name 50]Sanity dance": "Gesundheitstanz", + "[Upgrade name 51]Causality enforcer": "Kausalitätserzwinger", + "[Upgrade name 52]Lucky day": "Glückstag", + "[Upgrade name 53]Serendipity": "Glücksfall", + "[Upgrade name 54]Kitten engineers": "Kätzchen-Ingenieure", + "[Upgrade name 55]Dark chocolate-coated cookies": "Kekse mit dunkler Schokolade überzogen", + "[Upgrade name 56]White chocolate-coated cookies": "Kekse mit weißer Schokolade überzogen", + "[Upgrade name 57]Farmer grandmas": "Bauern-Omas", + "[Upgrade name 58]Miner grandmas": "Bergarbeiter-Omas", + "[Upgrade name 59]Worker grandmas": "Arbeiter-Omas", + "[Upgrade name 60]Cosmic grandmas": "Kosmische Omas", + "[Upgrade name 61]Transmuted grandmas": "Transmutierte Omas", + "[Upgrade name 62]Altered grandmas": "Veränderte Omas", + "[Upgrade name 63]Grandmas' grandmas": "Ururomas", + "[Upgrade name 64]Bingo center/Research facility": "Bingo-Center/Forschungseinrichtung", + "[Upgrade name 65]Specialized chocolate chips": "Spezialisierte Schokoladenchips", + "[Upgrade name 66]Designer cocoa beans": "Designer-Kakaobohnen", + "[Upgrade name 67]Ritual rolling pins": "Ritual-Nudelholz", + "[Upgrade name 68]Underworld ovens": "Unterwelt-Öfen", + "[Upgrade name 69]One mind": "Ein Geist", + "[Upgrade name 70]Exotic nuts": "Exotische Nüsse", + "[Upgrade name 71]Communal brainsweep": "Kommunale Hirnwäsche", + "[Upgrade name 72]Arcane sugar": "Arkaner Zucker", + "[Upgrade name 73]Elder Pact": "Pakt der Ältesten", + "[Upgrade name 74]Elder Pledge": "Schwur der Ältesten", + "[Upgrade name 75]Plastic mouse": "Plastikmaus", + "[Upgrade name 76]Iron mouse": "Eisenmaus", + "[Upgrade name 77]Titanium mouse": "Titan-Maus", + "[Upgrade name 78]Adamantium mouse": "Adamantium-Maus", + "[Upgrade name 79]Ultrascience": "Ultrawissenschaft", + "[Upgrade name 80]Eclipse cookies": "Sonnenfinsternis-Kekse", + "[Upgrade name 81]Zebra cookies": "Zebra-Kekse", + "[Upgrade name 82]Quintillion fingers": "Quintillionen Finger", + "[Upgrade name 83]Gold hoard": "Goldschatz", + "[Upgrade name 84]Elder Covenant": "Ältestenpakt", + "[Upgrade name 85]Revoke Elder Covenant": "Ältestenpakt widerrufen", + "[Upgrade name 86]Get lucky": "Glücklich werden", + "[Upgrade name 87]Sacrificial rolling pins": "Opfer-Nudelholz", + "[Upgrade name 88]Snickerdoodles": "Zimtschnecken", + "[Upgrade name 89]Stroopwafels": "Stroopwaffeln", + "[Upgrade name 90]Macaroons": "Makronen", + "[Upgrade name 91]Neuromancy": "Neuromantie", + "[Upgrade name 92]Empire biscuits": "Kaiserreich-Kekse", + "[Upgrade name 93]British tea biscuits": "Britisches Teegebäck", + "[Upgrade name 94]Chocolate british tea biscuits": "Britisches Teegebäck mit Schokolade", + "[Upgrade name 95]Round british tea biscuits": "Runde britische Tee-Kekse", + "[Upgrade name 96]Round chocolate british tea biscuits": "Runde britische Tee-Kekse aus Schokolade", + "[Upgrade name 97]Round british tea biscuits with heart motif": "Rundes britisches Teegebäck mit Herzmotiv", + "[Upgrade name 98]Round chocolate british tea biscuits with heart motif": "Runde Schokolade britische Teegebäck mit Herzmotiv", + "[Upgrade name 99]Sugar bosons": "Zucker-Bosonen", + "[Upgrade name 100]String theory": "String Theorie", + "[Upgrade name 101]Large macaron collider": "Großer Makaron-Beschleuniger", + "[Upgrade name 102]Big bang bake": "Urknallbacken", + "[Upgrade name 103]Antigrandmas": "Anti-Omas", + "[Upgrade name 104]Madeleines": "Madeleines", + "[Upgrade name 105]Palmiers": "Palmiers", + "[Upgrade name 106]Palets": "Paletten", + "[Upgrade name 107]Sablés": "Sablés", + "[Upgrade name 108]Kitten overseers": "Kätzchen-Aufseher", + "[Upgrade name 109]Sextillion fingers": "Sextillionen Finger", + "[Upgrade name 110]Double-thick glasses": "Doppelt dicke Gläser", + "[Upgrade name 111]Gingerbread scarecrows": "Lebkuchen-Vogelscheuchen", + "[Upgrade name 112]Recombobulators": "Rekobulatoren", + "[Upgrade name 113]H-bomb mining": "H-Bombe Bergbau", + "[Upgrade name 114]Chocolate monoliths": "Schokoladen-Monolithen", + "[Upgrade name 115]Aqua crustulae": "Aqua-Krusteln", + "[Upgrade name 116]Brane transplant": "Zweig-Transplantation", + "[Upgrade name 117]Yestermorrow comparators": "Vergleichsprodukte für Yestermorrow", + "[Upgrade name 118]Reverse cyclotrons": "Umgekehrte Zyklotrons", + "[Upgrade name 119]Unobtainium mouse": "Unobtainium Maus", + "[Upgrade name 120]Caramoas": "Caramoas", + "[Upgrade name 121]Sagalongs": "Sagalongs", + "[Upgrade name 122]Shortfoils": "Kurzflossen", + "[Upgrade name 123]Win mints": "Gewinnerminze", + "[Upgrade name 124]Perfect idling": "Perfekter Leerlauf", + "[Upgrade name 125]Fig gluttons": "Feigenliebhaber", + "[Upgrade name 126]Loreols": "Loreolen", + "[Upgrade name 127]Jaffa cakes": "Jaffa-Kuchen", + "[Upgrade name 128]Grease's cups": "Tassen mit Fett", + "[Upgrade name 129]Heavenly chip secret": "Himmlisches Splitter-Geheimnis", + "[Upgrade name 130]Heavenly cookie stand": "Himmlischer Keks-Stand", + "[Upgrade name 131]Heavenly bakery": "Himmlische Bäckerei", + "[Upgrade name 132]Heavenly confectionery": "Himmlische Konditorei", + "[Upgrade name 133]Heavenly key": "Himmlischer Schlüssel", + "[Upgrade name 134]Skull cookies": "Schädel Kekse", + "[Upgrade name 135]Ghost cookies": "Geister Kekse", + "[Upgrade name 136]Bat cookies": "Fledermaus-Kekse", + "[Upgrade name 137]Slime cookies": "Schleim-Kekse", + "[Upgrade name 138]Pumpkin cookies": "Kürbis-Kekse", + "[Upgrade name 139]Eyeball cookies": "Augapfel-Kekse", + "[Upgrade name 140]Spider cookies": "Spinnenkekse", + "[Upgrade name 141]Persistent memory": "Dauerhafter Speicher", + "[Upgrade name 142]Wrinkler doormat": "Falter Türmatte", + "[Upgrade name 143]Christmas tree biscuits": "Weihnachtsbaum-Kekse", + "[Upgrade name 144]Snowflake biscuits": "Schneeflocken-Kekse", + "[Upgrade name 145]Snowman biscuits": "Schneemann-Kekse", + "[Upgrade name 146]Holly biscuits": "Stechpalmen-Kekse", + "[Upgrade name 147]Candy cane biscuits": "Zuckerstangen-Kekse", + "[Upgrade name 148]Bell biscuits": "Glocken-Kekse", + "[Upgrade name 149]Present biscuits": "Geschenk-Kekse", + "[Upgrade name 150]Gingerbread men": "Lebkuchenmänner", + "[Upgrade name 151]Gingerbread trees": "Lebkuchenbäume", + "[Upgrade name 152]A festive hat": "Ein festlicher Hut", + "[Upgrade name 153]Increased merriness": "Erhöhte Fröhlichkeit", + "[Upgrade name 154]Improved jolliness": "Verbesserte Heiterkeit", + "[Upgrade name 155]A lump of coal": "Ein Klumpen Kohle", + "[Upgrade name 156]An itchy sweater": "Ein juckender Pullover", + "[Upgrade name 157]Reindeer baking grounds": "Rentier-Backgrund", + "[Upgrade name 158]Weighted sleighs": "Gewichteter Schlitten", + "[Upgrade name 159]Ho ho ho-flavored frosting": "Ho ho ho-Geschmacksglasur", + "[Upgrade name 160]Season savings": "Feiertagsersparnis", + "[Upgrade name 161]Toy workshop": "Spielzeug-Werkstatt", + "[Upgrade name 162]Naughty list": "Unanständige Liste", + "[Upgrade name 163]Santa's bottomless bag": "Der Sack des Weihnachtsmanns ohne Boden", + "[Upgrade name 164]Santa's helpers": "Die Helfer des Weihnachtsmanns", + "[Upgrade name 165]Santa's legacy": "Das Vermächtnis des Weihnachtsmanns", + "[Upgrade name 166]Santa's milk and cookies": "Milch und Kekse vom Weihnachtsmann", + "[Upgrade name 167]Reindeer season": "Rentiersaison", + "[Upgrade name 168]Santa's dominion": "Die Herrschaft des Weihnachtsmannes", + "[Upgrade name 169]Pure heart biscuits": "Kekse mit reinem Herz", + "[Upgrade name 170]Ardent heart biscuits": "Glühende Herzkekse", + "[Upgrade name 171]Sour heart biscuits": "Saure Herzkekse", + "[Upgrade name 172]Weeping heart biscuits": "Weinende Herzkekse", + "[Upgrade name 173]Golden heart biscuits": "Goldene Herzkekse", + "[Upgrade name 174]Eternal heart biscuits": "Ewige Herzkekse", + "[Upgrade name 175]Gem polish": "Edelstein-Politur", + "[Upgrade name 176]9th color": "9. Farbe", + "[Upgrade name 177]Chocolate light": "Schokolade hell", + "[Upgrade name 178]Grainbow": "Kornbogen", + "[Upgrade name 179]Pure cosmic light": "Reines kosmisches Licht", + "[Upgrade name 180]Rainbow grandmas": "Regenbogen-Omas", + "[Upgrade name 181]Season switcher": "Feiertagswechsler", + "[Upgrade name 182]Festive biscuit": "Festliches Gebäck", + "[Upgrade name 183]Ghostly biscuit": "Gespenstisches Gebäck", + "[Upgrade name 184]Lovesick biscuit": "Liebeskranke Kekse", + "[Upgrade name 185]Fool's biscuit": "Narrenkeks", + "[Upgrade name 186]Eternal seasons": "Ewige Feiertage", + "[Upgrade name 187]Kitten managers": "Kätzchen-Manager", + "[Upgrade name 188]Septillion fingers": "Septillionen Finger", + "[Upgrade name 189]Octillion fingers": "Oktillionen Finger", + "[Upgrade name 190]Eludium mouse": "Eludium Maus", + "[Upgrade name 191]Wishalloy mouse": "Wunsch-Legierungsmaus", + "[Upgrade name 192]Aging agents": "Alterungsschutzmittel", + "[Upgrade name 193]Pulsar sprinklers": "Pulsar-Streusel", + "[Upgrade name 194]Deep-bake process": "Deep-Bake-Prozess", + "[Upgrade name 195]Coreforge": "Kernschmiede", + "[Upgrade name 196]Generation ship": "Generation Schiff", + "[Upgrade name 197]Origin crucible": "Ursprungsschmelztiegel", + "[Upgrade name 198]Deity-sized portals": "Portale von göttlicher Größe", + "[Upgrade name 199]Far future enactment": "Weit in der Zukunft liegende Verabschiedung", + "[Upgrade name 200]Nanocosmics": "Nanokosmik", + "[Upgrade name 201]Glow-in-the-dark": "Im Dunkeln leuchten", + "[Upgrade name 202]Rose macarons": "Rosen-Makronen", + "[Upgrade name 203]Lemon macarons": "Zitronen-Makronen", + "[Upgrade name 204]Chocolate macarons": "Schokoladen-Macarons", + "[Upgrade name 205]Pistachio macarons": "Pistazien-Makronen", + "[Upgrade name 206]Hazelnut macarons": "Haselnuss-Makronen", + "[Upgrade name 207]Violet macarons": "Violette Makronen", + "[Upgrade name 208]Magic shenanigans": "Magischer Blödsinn", + "[Upgrade name 209]Bunny biscuit": "Kaninchenkeks", + "[Upgrade name 210]Chicken egg": "Hühnerei", + "[Upgrade name 211]Duck egg": "Entenei", + "[Upgrade name 212]Turkey egg": "Truthahn-Ei", + "[Upgrade name 213]Quail egg": "Wachtelei", + "[Upgrade name 214]Robin egg": "Rotkehlchen-Ei", + "[Upgrade name 215]Ostrich egg": "Straußenei", + "[Upgrade name 216]Cassowary egg": "Kasuar-Ei", + "[Upgrade name 217]Salmon roe": "Lachsrogen", + "[Upgrade name 218]Frogspawn": "Froschlaich", + "[Upgrade name 219]Shark egg": "Horchei", + "[Upgrade name 220]Turtle egg": "Schildkrötenei", + "[Upgrade name 221]Ant larva": "Ameisenlarve", + "[Upgrade name 222]Golden goose egg": "Goldenes Gänseei", + "[Upgrade name 223]Faberge egg": "Fabergé-Ei", + "[Upgrade name 224]Wrinklerspawn": "Falterbrut", + "[Upgrade name 225]Cookie egg": "Keks-Ei", + "[Upgrade name 226]Omelette": "Omelette", + "[Upgrade name 227]Chocolate egg": "CSchokoladenei", + "[Upgrade name 228]Century egg": "Jahrhundertei", + "[Upgrade name 229]\"egg\"": "\"Ei\"", + "[Upgrade name 230]Caramel macarons": "Karamell-Makronen", + "[Upgrade name 231]Licorice macarons": "Lakritz-Makronen", + "[Upgrade name 232]Taller tellers": "Größere Zähler", + "[Upgrade name 233]Scissor-resistant credit cards": "Scherensichere Kreditkarten", + "[Upgrade name 234]Acid-proof vaults": "Säurefeste Tresore", + "[Upgrade name 235]Chocolate coins": "Schokoladenmünzen", + "[Upgrade name 236]Exponential interest rates": "Exponentiale Zinssätze", + "[Upgrade name 237]Financial zen": "Finanzielles Zen", + "[Upgrade name 238]Golden idols": "Goldene Götzen", + "[Upgrade name 239]Sacrifices": "Opfer", + "[Upgrade name 240]Delicious blessing": "Köstlicher Segen", + "[Upgrade name 241]Sun festival": "Sonnenfest", + "[Upgrade name 242]Enlarged pantheon": "Vergrößertes Pantheon", + "[Upgrade name 243]Great Baker in the sky": "Großer Bäcker am Himmel", + "[Upgrade name 244]Pointier hats": "Spitz zulaufende Hüte", + "[Upgrade name 245]Beardlier beards": "Bärtigere Bärte", + "[Upgrade name 246]Ancient grimoires": "Antike Grimoires", + "[Upgrade name 247]Kitchen curses": "Küchenflüche", + "[Upgrade name 248]School of sorcery": "Schule der Zauberei", + "[Upgrade name 249]Dark formulas": "Dunkle Rezepturen", + "[Upgrade name 250]Banker grandmas": "Banker-Omas", + "[Upgrade name 251]Priestess grandmas": "Priesterin-Omas", + "[Upgrade name 252]Witch grandmas": "Hexen-Omas", + "[Upgrade name 253]Tin of british tea biscuits": "Dose mit britischem Teegebäck", + "[Upgrade name 254]Box of macarons": "Schachtel mit Makronen", + "[Upgrade name 255]Box of brand biscuits": "Schachtel mit Markenkeksen", + "[Upgrade name 256]Pure black chocolate cookies": "Reine schwarze Schokoladenkekse", + "[Upgrade name 257]Pure white chocolate cookies": "Reine weiße Schokoladenkekse", + "[Upgrade name 258]Ladyfingers": "Löffelbiskuits", + "[Upgrade name 259]Tuiles": "Tuiles", + "[Upgrade name 260]Chocolate-stuffed biscuits": "Schokoladengefüllte Kekse", + "[Upgrade name 261]Checker cookies": "Schachbrett-Kekse", + "[Upgrade name 262]Butter cookies": "Butterkekse", + "[Upgrade name 263]Cream cookies": "Creme-Kekse", + "[Upgrade name 264]Permanent upgrade slot I": "Permanenter Upgrade-Slot I", + "[Upgrade name 265]Permanent upgrade slot II": "Permanenter Upgrade-Slot II", + "[Upgrade name 266]Permanent upgrade slot III": "Permanenter Upgrade-Slot III", + "[Upgrade name 267]Permanent upgrade slot IV": "Permanenter Upgrade-Slot IV", + "[Upgrade name 268]Permanent upgrade slot V": "Permanenter Upgrade-Slot V", + "[Upgrade name 269]Starspawn": "Sternschnuppe", + "[Upgrade name 270]Starsnow": "Sternenschnee", + "[Upgrade name 271]Starterror": "Sternenterror", + "[Upgrade name 272]Starlove": "Sternliebe", + "[Upgrade name 273]Startrade": "Sternenhandel", + "[Upgrade name 274]Angels": "Engel", + "[Upgrade name 275]Archangels": "Erzengel", + "[Upgrade name 276]Virtues": "Tugenden", + "[Upgrade name 277]Dominions": "Herrschaftsgebiete", + "[Upgrade name 278]Cherubim": "Cherubim", + "[Upgrade name 279]Seraphim": "Seraphim", + "[Upgrade name 280]God": "Gott", + "[Upgrade name 281]Twin Gates of Transcendence": "Zwillings-Tore der Transzendenz", + "[Upgrade name 282]Heavenly luck": "Himmlisches Glück", + "[Upgrade name 283]Lasting fortune": "Dauerhaftes Vermögen", + "[Upgrade name 284]Decisive fate": "Entscheidendes Schicksal", + "[Upgrade name 285]Divine discount": "Göttlicher Rabatt", + "[Upgrade name 286]Divine sales": "Göttliche Verkäufe", + "[Upgrade name 287]Divine bakeries": "Göttliche Bäckereien", + "[Upgrade name 288]Starter kit": "Starter-Set", + "[Upgrade name 289]Starter kitchen": "Starter-Küche", + "[Upgrade name 290]Halo gloves": "Heiligenschein-Handschuhe", + "[Upgrade name 291]Kitten angels": "Kätzchen-Engel", + "[Upgrade name 292]Unholy bait": "Unheiliger Köder", + "[Upgrade name 293]Sacrilegious corruption": "Sakrilegische Korruption", + "[Upgrade name 294]Xtreme walkers": "Xtreme-Wanderer", + "[Upgrade name 295]Fudge fungus": "Toffeepilz", + "[Upgrade name 296]Planetsplitters": "Planetensplitter", + "[Upgrade name 297]Cyborg workforce": "Cyborg-Arbeitskräfte", + "[Upgrade name 298]Way of the wallet": "Weg der Brieftasche", + "[Upgrade name 299]Creation myth": "Schöpfungsmythos", + "[Upgrade name 300]Cookiemancy": "Keksmantie", + "[Upgrade name 301]Dyson sphere": "Dyson Sphäre", + "[Upgrade name 302]Theory of atomic fluidity": "Theorie der atomaren Fluidität", + "[Upgrade name 303]End of times back-up plan": "Endzeit-Sicherungsplan", + "[Upgrade name 304]Great loop hypothesis": "Große Schleifenhypothese", + "[Upgrade name 305]The Pulse": "Der Impuls", + "[Upgrade name 306]Lux sanctorum": "Lux Sanctorum", + "[Upgrade name 307]The Unbridling": "Der Ungezügelte", + "[Upgrade name 308]Wheat triffids": "Weizentrifugen", + "[Upgrade name 309]Canola oil wells": "Rapsöl-Brunnen", + "[Upgrade name 310]78-hour days": "78-Stunden-Tage", + "[Upgrade name 311]The stuff rationale": "Die Stoff-Rationalität", + "[Upgrade name 312]Theocracy": "Theokratie", + "[Upgrade name 313]Rabbit trick": "Kaninchen-Trick", + "[Upgrade name 314]The final frontier": "Die letzte Grenze", + "[Upgrade name 315]Beige goo": "Beiger Glibber", + "[Upgrade name 316]Maddening chants": "Verrückte Gesänge", + "[Upgrade name 317]Cookietopian moments of maybe": "Cookietopische Momente des Vielleicht", + "[Upgrade name 318]Some other super-tiny fundamental particle? Probably?": "Ein anderes superwinziges Elementarteilchen? Wahrscheinlich?", + "[Upgrade name 319]Reverse shadows": "Umgekehrte Schatten", + "[Upgrade name 320]Kitten accountants": "Kätzchen-Buchhalter", + "[Upgrade name 321]Kitten specialists": "Kätzchen-Spezialisten", + "[Upgrade name 322]Kitten experts": "Kätzchen-Experten", + "[Upgrade name 323]How to bake your dragon": "Wie Sie Ihren Drachen backen", + "[Upgrade name 324]A crumbly egg": "Ein krümeliges Ei", + "[Upgrade name 325]Chimera": "Chimäre", + "[Upgrade name 326]Tin of butter cookies": "Dose mit Butterkeksen", + "[Upgrade name 327]Golden switch": "Goldener Schalter", + "[Upgrade name 328]Classic dairy selection": "Klassische Molkerei-Auswahl", + "[Upgrade name 329]Fanciful dairy selection": "Fantasievolle Molkereiauswahl", + "[Upgrade name 330]Dragon cookie": "Drachenkeks", + "[Upgrade name 331]Golden switch [off]": "Goldener Schalter [aus]", + "[Upgrade name 332]Golden switch [on]": "Goldener Schalter [an]", + "[Upgrade name 333]Milk selector": "Milchauswahlschalter", + "[Upgrade name 334]Milk chocolate butter biscuit": "Vollmilchschokoladen-Butterkekse", + "[Upgrade name 335]Dark chocolate butter biscuit": "Butterkeks mit dunkler Schokolade", + "[Upgrade name 336]White chocolate butter biscuit": "Weißer Schokoladenbutterkeks", + "[Upgrade name 337]Ruby chocolate butter biscuit": "Rubinroter Schokoladenbutterkeks", + "[Upgrade name 338]Gingersnaps": "Pfefferkuchen", + "[Upgrade name 339]Cinnamon cookies": "Zimt-Kekse", + "[Upgrade name 340]Vanity cookies": "Eitelkeits-Kekse", + "[Upgrade name 341]Cigars": "Zigarren", + "[Upgrade name 342]Pinwheel cookies": "Windrad-Kekse", + "[Upgrade name 343]Fudge squares": "Karamell-Quadrate", + "[Upgrade name 344]Digits": "Schokofinger", + "[Upgrade name 345]Butter horseshoes": "Butter-Hufeisen", + "[Upgrade name 346]Butter pucks": "Butter-Pucks", + "[Upgrade name 347]Butter knots": "Butterknoten", + "[Upgrade name 348]Butter slabs": "Butter-Platten", + "[Upgrade name 349]Butter swirls": "Butter-Strudel", + "[Upgrade name 350]Shortbread biscuits": "Mürbegebäck", + "[Upgrade name 351]Millionaires' shortbreads": "Millionärs-Mürbegebäck", + "[Upgrade name 352]Caramel cookies": "Karamell-Kekse", + "[Upgrade name 353]Belphegor": "Belphegor", + "[Upgrade name 354]Mammon": "Mammon", + "[Upgrade name 355]Abaddon": "Abaddon", + "[Upgrade name 356]Satan": "Satan", + "[Upgrade name 357]Asmodeus": "Asmodeus", + "[Upgrade name 358]Beelzebub": "Beelzebub", + "[Upgrade name 359]Lucifer": "Luzifer", + "[Upgrade name 360]Golden cookie alert sound": "Alarmton für goldenen Keks", + "[Upgrade name 361]Golden cookie sound selector": "Selektor für goldenen Keks-Ton", + "[Upgrade name 362]Basic wallpaper assortment": "Basis-Tapetensortiment", + "[Upgrade name 363]Legacy": "Vermächtnis", + "[Upgrade name 364]Elder spice": "Holundergewürz", + "[Upgrade name 365]Residual luck": "Persönliches Glück", + "[Upgrade name 366]Fantasteel mouse": "Fantastische Maus", + "[Upgrade name 367]Nevercrack mouse": "Niemals brechende Maus", + "[Upgrade name 368]Five-finger discount": "Fünf-Finger-Rabatt", + "[Upgrade name 369]Future almanacs": "Zukünftige Almanache", + "[Upgrade name 370]Rain prayer": "Regengebet", + "[Upgrade name 371]Seismic magic": "Seismische Magie", + "[Upgrade name 372]Asteroid mining": "Asteroidenbergbau", + "[Upgrade name 373]Quantum electronics": "Quantenelektronik", + "[Upgrade name 374]Temporal overclocking": "Zeitliche Übertaktung", + "[Upgrade name 375]Contracts from beyond": "Verträge aus dem Jenseits", + "[Upgrade name 376]Printing presses": "Druckpressen", + "[Upgrade name 377]Paganism": "Heidentum", + "[Upgrade name 378]God particle": "Gott-Teilchen", + "[Upgrade name 379]Arcane knowledge": "Arkanes Wissen", + "[Upgrade name 380]Magical botany": "Magische Botanik", + "[Upgrade name 381]Fossil fuels": "Fossile Brennstoffe", + "[Upgrade name 382]Shipyards": "Schiffswerften", + "[Upgrade name 383]Primordial ores": "Urerze", + "[Upgrade name 384]Gold fund": "Goldfonds", + "[Upgrade name 385]Infernal crops": "Höllenfrüchte", + "[Upgrade name 386]Abysmal glimmer": "Abgründiger Schimmer", + "[Upgrade name 387]Relativistic parsec-skipping": "Relativistisches Parsec-Skipping", + "[Upgrade name 388]Primeval glow": "Uriges Glühen", + "[Upgrade name 389]Extra physics funding": "Zusätzliche Physikförderung", + "[Upgrade name 390]Chemical proficiency": "Chemische Kenntnisse", + "[Upgrade name 391]Light magic": "Lichtmagie", + "[Upgrade name 392]Mystical energies": "Mystische Energien", + "[Upgrade name 393]Synergies Vol. I": "Synergieeffekte Vol. I", + "[Upgrade name 394]Synergies Vol. II": "Synergieeffekte Vol. II", + "[Upgrade name 395]Heavenly cookies": "Himmlische Kekse", + "[Upgrade name 396]Wrinkly cookies": "Runzelige Kekse", + "[Upgrade name 397]Distilled essence of redoubled luck": "Destillierte Essenz aus verdoppeltem Glück", + "[Upgrade name 398]Occult obstruction": "Okkultes Hindernis", + "[Upgrade name 399]Glucose-charged air": "Glukose-geladene Luft", + "[Upgrade name 400]Lavender chocolate butter biscuit": "Lavendel-Schokoladen-Butterkekse", + "[Upgrade name 401]Lombardia cookies": "Lombardei Kekse", + "[Upgrade name 402]Bastenaken cookies": "Bastenaken Kekse", + "[Upgrade name 403]Pecan sandies": "Pekannuss-Sandwiches", + "[Upgrade name 404]Moravian spice cookies": "Mährische Gewürz-Kekse", + "[Upgrade name 405]Anzac biscuits": "Anzac-Kekse", + "[Upgrade name 406]Buttercakes": "Butterkuchen", + "[Upgrade name 407]Ice cream sandwiches": "Eiscreme-Sandwiches", + "[Upgrade name 408]Stevia Caelestis": "Stevia Caelestis", + "[Upgrade name 409]Diabetica Daemonicus": "Diabetica Daemonicus", + "[Upgrade name 410]Sucralosia Inutilis": "Sucralosia inutilis", + "[Upgrade name 411]Lucky digit": "Glückszahl", + "[Upgrade name 412]Lucky number": "Glückszahl", + "[Upgrade name 413]Lucky payout": "Glückliche Ausbeute", + "[Upgrade name 414]Background selector": "Hintergrund-Selektor", + "[Upgrade name 415]Lucky grandmas": "Glückliche Omas", + "[Upgrade name 416]Your lucky cookie": "Dein Glücks-Keks", + "[Upgrade name 417]\"All Bets Are Off\" magic coin": "\"Alle Wetten sind aus\" magische Münze", + "[Upgrade name 418]Winning lottery ticket": "Lottogewinnschein", + "[Upgrade name 419]Four-leaf clover field": "Vierblättriges Kleefeld", + "[Upgrade name 420]A recipe book about books": "Ein Rezeptbuch über Bücher", + "[Upgrade name 421]Leprechaun village": "Dorf der Kobolde", + "[Upgrade name 422]Improbability drive": "Unwahrscheinlichkeitsantrieb", + "[Upgrade name 423]Antisuperstistronics": "Antisuperstistronik", + "[Upgrade name 424]Gemmed talismans": "Edelstein-Talismane", + "[Upgrade name 425]Kitten consultants": "Kätzchen-Berater", + "[Upgrade name 426]Birthday cookie": "Geburtstagskeks", + "[Upgrade name 427]Armythril mouse": "Armythril-Maus", + "[Upgrade name 428]Reverse dementia": "Demenz umkehren", + "[Upgrade name 429]Humane pesticides": "Humane Pestizide", + "[Upgrade name 430]Mole people": "Maulwurfsmenschen", + "[Upgrade name 431]Machine learning": "Maschinelles Lernen", + "[Upgrade name 432]Edible money": "Essbares Geld", + "[Upgrade name 433]Sick rap prayers": "Kranke Rap-Gebete", + "[Upgrade name 434]Deluxe tailored wands": "Maßgeschneiderte Deluxe-Stäbe", + "[Upgrade name 435]Autopilot": "Autopilot", + "[Upgrade name 436]The advent of chemistry": "Das Aufkommen der Chemie", + "[Upgrade name 437]The real world": "Die echte Welt", + "[Upgrade name 438]Second seconds": "Doppelte Sekunden", + "[Upgrade name 439]Quantum comb": "Quantenkamm", + "[Upgrade name 440]Crystal mirrors": "Kristall-Spiegel", + "[Upgrade name 441]Bunnypedes": "Hasenfüßler", + "[Upgrade name 442]Kitten assistants to the regional manager": "Kätzchen Assistenten des Regionalleiters", + "[Upgrade name 443]Charm quarks": "Charme-Quarks", + "[Upgrade name 444]Pink biscuits": "Rosa Kekse", + "[Upgrade name 445]Whole-grain cookies": "Vollkorn-Kekse", + "[Upgrade name 446]Candy cookies": "Süßigkeiten Kekse", + "[Upgrade name 447]Big chip cookies": "Große Splitter-Kekse", + "[Upgrade name 448]One chip cookies": "Einsplitter-Kekse", + "[Upgrade name 449]Sugar baking": "Backen mit Zucker", + "[Upgrade name 450]Sugar craving": "Verlangen nach Zucker", + "[Upgrade name 451]Sugar aging process": "Zuckeralterungsprozess", + "[Upgrade name 452]Sugar frenzy": "Zuckerrausch", + "[Upgrade name 453]Sprinkles cookies": "Kekse mit Streuseln", + "[Upgrade name 454]Peanut butter blossoms": "Erdnussbutter-Blüten", + "[Upgrade name 455]No-bake cookies": "Ungebackene Kekse", + "[Upgrade name 456]Florentines": "Florentiner", + "[Upgrade name 457]Chocolate crinkles": "Schokostreusel", + "[Upgrade name 458]Maple cookies": "Ahorn-Kekse", + "[Upgrade name 459]Turbo-charged soil": "Turbogeladener Boden", + "[Upgrade name 460]Technobsidian mouse": "Technobsidian-Maus", + "[Upgrade name 461]Plasmarble mouse": "Plasmarmor-Maus", + "[Upgrade name 462]Kitten marketeers": "Kätzchen-Vermarkter", + "[Upgrade name 463]Festivity loops": "Festlichkeitsschleifen", + "[Upgrade name 464]Persian rice cookies": "Persische Reis-Kekse", + "[Upgrade name 465]Norwegian cookies": "Norwegische Kekse", + "[Upgrade name 466]Crispy rice cookies": "Knusprige Reis-Kekse", + "[Upgrade name 467]Ube cookies": "Ube-Kekse", + "[Upgrade name 468]Butterscotch cookies": "Kekse mit Karamellbonbon", + "[Upgrade name 469]Speculaas": "Spekulatius", + "[Upgrade name 470]Elderwort biscuits": "Holunderblüten-Kekse", + "[Upgrade name 471]Bakeberry cookies": "Backbeeren-Kekse", + "[Upgrade name 472]Duketater cookies": "Duketater-Kekse", + "[Upgrade name 473]Green yeast digestives": "Grüne Hefeverdauungsprodukte", + "[Upgrade name 474]Fern tea": "Farn-Tee", + "[Upgrade name 475]Ichor syrup": "Echsensirup", + "[Upgrade name 476]Wheat slims": "Weizenabschnitte", + "[Upgrade name 477]Synthetic chocolate green honey butter biscuit": "Synthetischer Schokoladen-Grünhonig-Butterkeks", + "[Upgrade name 478]Royal raspberry chocolate butter biscuit": "Königlicher Himbeer-Schoko-Butterkeks", + "[Upgrade name 479]Ultra-concentrated high-energy chocolate butter biscuit": "Ultra-konzentrierter hochenergetischer Schokoladen-Butterkeks", + "[Upgrade name 480]Timeproof hair dyes": "Zeitbeständige Haarfarben", + "[Upgrade name 481]Barnstars": "Scheunenstars", + "[Upgrade name 482]Mine canaries": "Mienen-Kanarienvögel", + "[Upgrade name 483]Brownie point system": "Brownie-Punktesystem", + "[Upgrade name 484]Grand supercycles": "Große Superzyklen", + "[Upgrade name 485]Psalm-reading": "Psalm-Lesung", + "[Upgrade name 486]Immobile spellcasting": "Unbewegliche Zauberei", + "[Upgrade name 487]Restaurants at the end of the universe": "Restaurants am Ende des Universums", + "[Upgrade name 488]On second thought": "Bei genauerem Nachdenken", + "[Upgrade name 489]Dimensional garbage gulper": "Dimensionaler Müllschlucker", + "[Upgrade name 490]Additional clock hands": "Zusätzliche Uhrzeiger", + "[Upgrade name 491]Baking Nobel prize": "Backnobelpreis", + "[Upgrade name 492]Reverse theory of light": "Umgekehrte Lichttheorie", + "[Upgrade name 493]Revised probabilistics": "Überarbeitete Probabilistik", + "[Upgrade name 494]Kitten analysts": "Kätzchen-Analysten", + "[Upgrade name 495]Eye of the wrinkler": "Auge des Falters", + "[Upgrade name 496]Inspired checklist": "Inspirierte Checkliste", + "[Upgrade name 497]Pure pitch-black chocolate butter biscuit": "Reiner pechschwarzer Schokoladenbutterkeks", + "[Upgrade name 498]Chocolate oatmeal cookies": "Schokoladen Haferflocken Kekse", + "[Upgrade name 499]Molasses cookies": "Molasse Kekse", + "[Upgrade name 500]Biscotti": "Biscotti", + "[Upgrade name 501]Waffle cookies": "Waffel-Kekse", + "[Upgrade name 502]Almond cookies": "Mandel-Kekse", + "[Upgrade name 503]Hazelnut cookies": "Haselnuss-Kekse", + "[Upgrade name 504]Walnut cookies": "Walnuss-Kekse", + "[Upgrade name 505]Label printer": "Etikettendrucker", + "[Upgrade name 506]Good manners": "Gute Manieren", + "[Upgrade name 507]Lindworms": "Lindwürmer", + "[Upgrade name 508]Bore again": "Nochmal bohren", + "[Upgrade name 509]\"Volunteer\" interns": "\"Freiwillige\" Praktikanten", + "[Upgrade name 510]Rules of acquisition": "Regeln für den Erwerb", + "[Upgrade name 511]War of the gods": "Krieg der Götter", + "[Upgrade name 512]Electricity": "Elektrizität", + "[Upgrade name 513]Universal alphabet": "Universelles Alphabet", + "[Upgrade name 514]Public betterment": "Öffentliche Besserung", + "[Upgrade name 515]Embedded microportals": "Eingebettete Mikroportale", + "[Upgrade name 516]Nostalgia": "Nostalgie", + "[Upgrade name 517]The definite molecule": "Das bestimmte Molekül", + "[Upgrade name 518]Light capture measures": "Maßnahmen zur Lichterfassung", + "[Upgrade name 519]0-sided dice": "0-seitiger Würfel", + "[Upgrade name 520]Heralds": "Herolde", + "[Upgrade name 521]Metagrandmas": "Metaomas", + "[Upgrade name 522]Metabakeries": "Metabäckereien", + "[Upgrade name 523]Mandelbrown sugar": "Mandelbrauner Zucker", + "[Upgrade name 524]Fractoids": "Fraktoide", + "[Upgrade name 525]Nested universe theory": "Theorie des verschachtelten Universums", + "[Upgrade name 526]Menger sponge cake": "Menger Biskuit", + "[Upgrade name 527]One particularly good-humored cow": "Eine besonders gut gelaunte Kuh", + "[Upgrade name 528]Chocolate ouroboros": "Schokoladen Ouroboros", + "[Upgrade name 529]Nested": "Verschachtelt", + "[Upgrade name 530]Space-filling fibers": "Raumfüllende Fasern", + "[Upgrade name 531]Endless book of prose": "Endloses Buch der Prosa", + "[Upgrade name 532]The set of all sets": "Die Menge aller Mengen", + "[Upgrade name 533]Recursive mirrors": "Rekursive Spiegel", + "[Upgrade name 534]Mice clicking mice": "Mäuse klicken Mäuse", + "[Upgrade name 535]Custard creams": "Puddingcremes", + "[Upgrade name 536]Bourbon biscuits": "Bourbon Kekse", + "[Upgrade name 537]Keepsakes": "Erinnerungsstücke", + "[Upgrade name 538]Mini-cookies": "Mini-Kekse", + "[Upgrade name 539]Sugar crystal cookies": "Zuckerkristall Kekse", + "[Upgrade name 540]Box of maybe cookies": "Schachtel mit eventuellen Keksen", + "[Upgrade name 541]Box of not cookies": "Schachtel mit nicht Keksen", + "[Upgrade name 542]Box of pastries": "Kiste mit Gebäck", + "[Upgrade name 543]Profiteroles": "Profiteroles", + "[Upgrade name 544]Jelly donut": "Gelee-Donut", + "[Upgrade name 545]Glazed donut": "Glasierter Donut", + "[Upgrade name 546]Chocolate cake": "Schokoladenkuchen", + "[Upgrade name 547]Strawberry cake": "Erdbeerkuchen", + "[Upgrade name 548]Apple pie": "Apfelkuchen", + "[Upgrade name 549]Lemon meringue pie": "Zitronenbaiserkuchen", + "[Upgrade name 550]Butter croissant": "Buttercroissant", + "[Upgrade name 551]Cookie dough": "Keksteig", + "[Upgrade name 552]Burnt cookie": "Verbrannter Keks", + "[Upgrade name 553]A chocolate chip cookie but with the chips picked off for some reason": "Ein Keks mit Schokoladensplittern, bei dem die Splitter aus irgendeinem Grund abgepflückt wurden", + "[Upgrade name 554]Flavor text cookie": "Geschmackstext Keks", + "[Upgrade name 555]High-definition cookie": "Hochauflösender Keks", + "[Upgrade name 556]Toast": "Toast", + "[Upgrade name 557]Peanut butter & jelly": "Erdnussbutter & Gelee", + "[Upgrade name 558]Wookies": "Wookies", + "[Upgrade name 559]Cheeseburger": "Cheeseburger", + "[Upgrade name 560]One lone chocolate chip": "Ein einsamer Schokoladensplitter", + "[Upgrade name 561]Genius accounting": "Geniale Buchhaltung", + "[Upgrade name 562]Shimmering veil": "Schimmernder Schleier", + "[Upgrade name 563]Shimmering veil [off]": "Schimmernder Schleier [aus]", + "[Upgrade name 564]Shimmering veil [on]": "Schimmernder Schleier [an]", + "[Upgrade name 565]Whoopie pies": "Cremetörtchen", + "[Upgrade name 566]Caramel wafer biscuits": "Karamell Waffelkekse", + "[Upgrade name 567]Chocolate chip mocha cookies": "Mokka Kekse mit Schokoladenstückchen", + "[Upgrade name 568]Earl Grey cookies": "Earl Grey Kekse", + "[Upgrade name 569]Corn syrup cookies": "Maissirup Kekse", + "[Upgrade name 570]Icebox cookies": "Kekse aus dem Eisfach", + "[Upgrade name 571]Graham crackers": "Graham Cracker", + "[Upgrade name 572]Hardtack": "Hartriegel", + "[Upgrade name 573]Cornflake cookies": "Cornflakes Kekse", + "[Upgrade name 574]Tofu cookies": "Tofu Kekse", + "[Upgrade name 575]Gluten-free cookies": "Glutenfreie Kekse", + "[Upgrade name 576]Russian bread cookies": "Russisch Brot Kekse", + "[Upgrade name 577]Lebkuchen": "Lebkuchen", + "[Upgrade name 578]Aachener Printen": "Aachener Printen", + "[Upgrade name 579]Canistrelli": "Canistrelli", + "[Upgrade name 580]Nice biscuits": "Schöne Kekse", + "[Upgrade name 581]French pure butter cookies": "Französische Butterkekse", + "[Upgrade name 582]Petit beurre": "Petit beurre", + "[Upgrade name 583]Nanaimo bars": "Nanaimo Riegel", + "[Upgrade name 584]Berger cookies": "Berger Kekse", + "[Upgrade name 585]Chinsuko": "Chinsuko", + "[Upgrade name 586]Panda koala biscuits": "Panda Koala Kekse", + "[Upgrade name 587]Putri salju": "Putri salju", + "[Upgrade name 588]Milk cookies": "Milch Kekse", + "[Upgrade name 589]Cookie crumbs": "Keks Krümel", + "[Upgrade name 590]Chocolate chip cookie": "Keks mit Schokoladensplittern", + "[Upgrade name 591]Cosmic beginner's luck": "Kosmisches Anfängerglück", + "[Upgrade name 592]Reinforced membrane": "Verstärkte Membran", + "[Upgrade name 593]Binary grandmas": "Binäre Omas", + "[Upgrade name 594]The JavaScript console for dummies": "Die JavaScript Konsole für Dummies", + "[Upgrade name 595]64bit arrays": "64bit Arrays", + "[Upgrade name 596]Stack overflow": "Stack Overflow", + "[Upgrade name 597]Enterprise compiler": "Enterprise Compiler", + "[Upgrade name 598]Syntactic sugar": "Syntaktischer Zucker", + "[Upgrade name 599]A nice cup of coffee": "Eine schöne Tasse Kaffee", + "[Upgrade name 600]Just-in-time baking": "Rechtzeitiges Backen", + "[Upgrade name 601]cookies++": "Cookies++", + "[Upgrade name 602]Software updates": "Software Updates", + "[Upgrade name 603]Game.Loop": "Game.Loop", + "[Upgrade name 604]eval()": "eval()", + "[Upgrade name 605]Script grannies": "Script Omas", + "[Upgrade name 606]Tombola computing": "Tombola Berechnung", + "[Upgrade name 607]Kruidnoten": "Kruidnoten", + "[Upgrade name 608]Marie biscuits": "Marie Kekse", + "[Upgrade name 609]Meringue cookies": "Baiser Kekse", + "[Upgrade name 610]Pizza": "Pizza", + "[Upgrade name 611]Crackers": "Cracker", + "[Upgrade name 612]Havabreaks": "Havabreaks", + "[Upgrade name 613]Kitten executives": "Kätzchen-Führungskräfte", + "[Upgrade name 614]Chai tea cookies": "Chai Tee Kekse", + "[Upgrade name 615]Yogurt cookies": "Joghurt Kekse", + "[Upgrade name 616]Thumbprint cookies": "Daumenabdruck-Kekse", + "[Upgrade name 617]Pizzelle": "Pizzelle", + "[Upgrade name 618]Zilla wafers": "Zilla-Waffeln", + "[Upgrade name 619]Dim Dams": "Dim Dams", + "[Upgrade name 620]Candy": "Süßigkeiten", + "[Upgrade name 621]Fortune #001": "Glückskeks #001", + "[Upgrade name 622]Fortune #002": "Glückskeks #002", + "[Upgrade name 623]Fortune #003": "Glückskeks #003", + "[Upgrade name 624]Fortune #004": "Glückskeks #004", + "[Upgrade name 625]Fortune #005": "Glückskeks #005", + "[Upgrade name 626]Fortune #006": "Glückskeks #006", + "[Upgrade name 627]Fortune #007": "Glückskeks #007", + "[Upgrade name 628]Fortune #008": "Glückskeks #008", + "[Upgrade name 629]Fortune #009": "Glückskeks #009", + "[Upgrade name 630]Fortune #010": "Glückskeks #010", + "[Upgrade name 631]Fortune #011": "Glückskeks #011", + "[Upgrade name 632]Fortune #012": "Glückskeks #012", + "[Upgrade name 633]Fortune #013": "Glückskeks #013", + "[Upgrade name 634]Fortune #014": "Glückskeks #014", + "[Upgrade name 635]Fortune #015": "Glückskeks #015", + "[Upgrade name 636]Fortune #016": "Glückskeks #016", + "[Upgrade name 637]Fortune #017": "Glückskeks #017", + "[Upgrade name 638]Fortune #100": "Glückskeks #100", + "[Upgrade name 639]Fortune #101": "Glückskeks #101", + "[Upgrade name 640]Fortune #102": "Glückskeks #102", + "[Upgrade name 641]Fortune #103": "Glückskeks #103", + "[Upgrade name 642]Fortune #104": "Glückskeks #104", + "[Upgrade name 643]Fortune cookies": "Glückskekse", + "[Upgrade name 644]A really good guide book": "Ein wirklich gutes Reiseführer Buch", + "[Upgrade name 645]Prism heart biscuits": "Prisma-Herz Kekse", + "[Upgrade name 646]Kitten wages": "Kätzchen-Löhne", + "[Upgrade name 647]Pet the dragon": "Den Drachen streicheln", + "[Upgrade name 648]Dragon scale": "Drachenschuppe", + "[Upgrade name 649]Dragon claw": "Drachenklaue", + "[Upgrade name 650]Dragon fang": "Drachenzahn", + "[Upgrade name 651]Dragon teddy bear": "Drachen Teddybär", + "[Upgrade name 652]Granola cookies": "Granola Kekse", + "[Upgrade name 653]Ricotta cookies": "Ricotta Kekse", + "[Upgrade name 654]Roze koeken": "Rosenkuchen", + "[Upgrade name 655]Peanut butter cup cookies": "PErdnussbutter-Cup-Kekse", + "[Upgrade name 656]Sesame cookies": "Sesam Kekse", + "[Upgrade name 657]Taiyaki": "Taiyaki", + "[Upgrade name 658]Vanillekipferl": "Vanillekipferl", + "[Upgrade name 659]Cosmic chocolate butter biscuit": "Kosmischer Schokoladenbutterkeks", + "[Upgrade name 660]Nonillion fingers": "Nonillionen Finger", + "[Upgrade name 661]Miraculite mouse": "Miraculit Maus", + "[Upgrade name 662]Generation degeneration": "Generationswechsel", + "[Upgrade name 663]Global seed vault": "Globaler Saatguttresor", + "[Upgrade name 664]Air mining": "Luftabbau", + "[Upgrade name 665]Behavioral reframing": "Verhaltensorientiertes Umdenken", + "[Upgrade name 666]Altruistic loop": "Altruistische Schleife", + "[Upgrade name 667]A novel idea": "Eine neue Idee", + "[Upgrade name 668]Spelling bees": "Buchstabierwettbewerbe", + "[Upgrade name 669]Toroid universe": "Toroid Universum", + "[Upgrade name 670]Hermetic reconciliation": "Hermetische Versöhnung", + "[Upgrade name 671]His advent": "Sein Aufstieg", + "[Upgrade name 672]Split seconds": "Sekundenbruchteile", + "[Upgrade name 673]Flavor itself": "Der Geschmack selbst", + "[Upgrade name 674]Light speed limit": "Lichtgeschwindigkeitsgrenze", + "[Upgrade name 675]A touch of determinism": "Ein Hauch von Determinismus", + "[Upgrade name 676]This upgrade": "Dieses Upgrade", + "[Upgrade name 677]Your biggest fans": "Deine größten Fans", + "[Upgrade name 678]Battenberg biscuits": "Battenberg Kekse", + "[Upgrade name 679]Rosette cookies": "Rosetten Kekse", + "[Upgrade name 680]Gangmakers": "Gangmakers", + "[Upgrade name 681]Welsh cookies": "Waliser Kekse", + "[Upgrade name 682]Raspberry cheesecake cookies": "Himbeer-Käsekuchen Kekse", + "[Upgrade name 683]Alternate grandmas": "Alternierende Omas", + "[Upgrade name 684]Manifest destiny": "Manifestation des Schicksals", + "[Upgrade name 685]The multiverse in a nutshell": "Das Multiversum in Kurzform", + "[Upgrade name 686]All-conversion": "Vollständige Konvertierung", + "[Upgrade name 687]Multiverse agents": "Multiversum-Agenten", + "[Upgrade name 688]Escape plan": "Fluchtplan", + "[Upgrade name 689]Game design": "Spiel-Design", + "[Upgrade name 690]Sandbox universes": "Sandkasten-Universen", + "[Upgrade name 691]Multiverse wars": "Multiversum-Kriege", + "[Upgrade name 692]Mobile ports": "Mobile Häfen", + "[Upgrade name 693]Encapsulated realities": "Verkapselte Realitäten", + "[Upgrade name 694]Extrinsic clicking": "Extrinsisches Klicken", + "[Upgrade name 695]Universal idling": "Universeller Leerlauf", + "[Upgrade name 696]Perforated mille-feuille cosmos": "Perforierter Mille-Feuille Kosmos", + "[Upgrade name 697]Infraverses and superverses": "Infraversen und Superversen", + "[Upgrade name 698]Fortune #018": "Glückskeks #018", + "[Upgrade name 699]Butter biscuit (with butter)": "Butterkeks (mit Butter)", + "[Upgrade name 700]Visits": "Besuche", + "[Upgrade name 701]Reverse-veganism": "Umgekehrter Veganismus", + "[Upgrade name 702]Caramel alloys": "Karamell-Legierungen", + "[Upgrade name 703]The infinity engine": "Die Unendlichkeitsmaschine", + "[Upgrade name 704]Diminishing tax returns": "Sinkende Steuereinnahmen", + "[Upgrade name 705]Apparitions": "Erscheinungen", + "[Upgrade name 706]Wizard basements": "Zauberer-Keller", + "[Upgrade name 707]Prime directive": "Oberste Richtlinie", + "[Upgrade name 708]Chromatic cycling": "Chromatisches Radfahren", + "[Upgrade name 709]Domestic rifts": "Häusliche Zerwürfnisse", + "[Upgrade name 710]Patience abolished": "Geduld abgeschafft", + "[Upgrade name 711]Delicious pull": "Leckerer Zug", + "[Upgrade name 712]Occam's laser": "Ockermanns Laser", + "[Upgrade name 713]On a streak": "Auf einer Glückssträhne", + "[Upgrade name 714]A box": "Eine Schachtel", + "[Upgrade name 715]Hacker shades": "Hacker-Schirme", + "[Upgrade name 716]Break the fifth wall": "Durchbreche die fünfte Wand", + "[Upgrade name 717]Cat ladies": "Katzendamen", + "[Upgrade name 718]Milkhelp® lactose intolerance relief tablets": "Milkhelp® Tabletten gegen Laktoseintoleranz", + "[Upgrade name 719]Aura gloves": "Aura-Handschuhe", + "[Upgrade name 720]Luminous gloves": "Leuchtende Handschuhe", + "[Upgrade name 721]Bokkenpootjes": "Bokkenpootjes", + "[Upgrade name 722]Fat rascals": "Fette Schlingel", + "[Upgrade name 723]Ischler cookies": "Ischler Kekse", + "[Upgrade name 724]Matcha cookies": "Matcha Kekse", + "[Upgrade name 725]Earl Grey macarons": "Earl Grey Makronen", + "[Upgrade name 726]Pokey": "Pokey", + "[Upgrade name 727]Cashew cookies": "Cashew Kekse", + "[Upgrade name 728]Milk chocolate cookies": "Milchschokoladen-Kekse", + "[Upgrade name 729]Brainy grandmas": "Kluge Omas", + "[Upgrade name 730]Principled neural shackles": "Prinzipielle neuronale Fesseln", + "[Upgrade name 731]Obey": "Gehorche", + "[Upgrade name 732]A sprinkle of irrationality": "Ein Hauch von Irrationalität", + "[Upgrade name 733]Front and back hemispheres": "Vordere und hintere Hemisphäre", + "[Upgrade name 734]Neural networking": "Neuronale Vernetzung", + "[Upgrade name 735]Cosmic brainstorms": "Kosmische Geistesblitze", + "[Upgrade name 736]Megatherapy": "Megatherapie", + "[Upgrade name 737]Synaptic lubricant": "Synaptisches Schmiermittel", + "[Upgrade name 738]Psychokinesis": "Psychokinese", + "[Upgrade name 739]Spines": "Wirbelsäulen", + "[Upgrade name 740]Neuraforming": "Neuroreforming", + "[Upgrade name 741]Epistemological trickery": "Epistemologische Trickserei", + "[Upgrade name 742]Every possible idea": "Jede mögliche Idee", + "[Upgrade name 743]Kitchen cabinets": "Küchenschränke", + "[Upgrade name 744]Cookie mulch": "Keks-Mulch", + "[Upgrade name 745]Delicious mineralogy": "Leckere Mineralogie", + "[Upgrade name 746]N-dimensional assembly lines": "N-dimensionale Montagelinien", + "[Upgrade name 747]Cookie Points": "Keks-Punkte", + "[Upgrade name 748]Negatheism": "Negatheismus", + "[Upgrade name 749]Magical realism": "Magischer Realismus", + "[Upgrade name 750]Cosmic foreground radiation": "Kosmische Vordergrundstrahlung", + "[Upgrade name 751]Arcanized glassware": "Arkanisierte Glaswaren", + "[Upgrade name 752]Portal guns": "Portalwaffen", + "[Upgrade name 753]Timeproof upholstery": "Zeitsichere Polstermöbel", + "[Upgrade name 754]Employee minification": "Minifizierung von Mitarbeitern", + "[Upgrade name 755]Hyperblack paint": "Hyperschwarze Farbe", + "[Upgrade name 756]Silver lining maximization": "Maximierung der Silberstreifen", + "[Upgrade name 757]Multiscale profiling": "Multiskaliges Profiling", + "[Upgrade name 758]PHP containment vats": "PHP-Rückhaltewannen", + "[Upgrade name 759]Opposite universe": "Gegensätzliches Universum", + "[Upgrade name 760]The land of dreams": "Das Land der Träume", + "[Upgrade name 761]Thoughts & prayers": "Gedanken und Gebete", + "[Upgrade name 762]Fertile minds": "Fruchtbare Köpfe", + "[Upgrade name 763]Fortune #019": "Fortuna #019", + "[Upgrade name 764]Decillion fingers": "Quintilliarden Finger", + "[Upgrade name 765]Aetherice mouse": "Ätherische Maus", + "[Upgrade name 766]Kitten admins": "Kätzchen-Admins", + "[Upgrade name 767]Everybutter biscuit": "Everybutter Kekse", + "[Upgrade name 768]Unshackled cursors": "Ungefesselte Cursor", + "[Upgrade name 769]Unshackled grandmas": "Entfesselte Omas", + "[Upgrade name 770]Unshackled farms": "Ungefesselte Bauernhöfe", + "[Upgrade name 771]Unshackled mines": "Entfesselte Minen", + "[Upgrade name 772]Unshackled factories": "Entfesselte Fabriken", + "[Upgrade name 773]Unshackled banks": "Entfesselte Banken", + "[Upgrade name 774]Unshackled temples": "Entfesselte Tempel", + "[Upgrade name 775]Unshackled wizard towers": "Ungezähmte Zauberertürme", + "[Upgrade name 776]Unshackled shipments": "Entfesselte Verschiffungen", + "[Upgrade name 777]Unshackled alchemy labs": "Entfesselte Alchemielabore", + "[Upgrade name 778]Unshackled portals": "Entfesselte Portale", + "[Upgrade name 779]Unshackled time machines": "Entfesselte Zeitmaschinen", + "[Upgrade name 780]Unshackled antimatter condensers": "Entfesselte Antimaterie-Kondensatoren", + "[Upgrade name 781]Unshackled prisms": "Entfesselte Prismen", + "[Upgrade name 782]Unshackled chancemakers": "Entfesselte Glücksbringer", + "[Upgrade name 783]Unshackled fractal engines": "Entfesselte Fraktalmaschinen", + "[Upgrade name 784]Unshackled javascript consoles": "Entfesselte Javascript-Konsolen", + "[Upgrade name 785]Unshackled idleverses": "Entfesselte Idleversen", + "[Upgrade name 786]Unshackled cortex bakers": "Entfesselte Kortex-Bäcker", + "[Upgrade name 787]Unshackled flavor": "Entfesselter Geschmack", + "[Upgrade name 788]Unshackled berrylium": "Entfesseltes Berrylium", + "[Upgrade name 789]Unshackled blueberrylium": "Entfesseltes Blauberrylium", + "[Upgrade name 790]Unshackled chalcedhoney": "Entfesselter Chalcedonhonig", + "[Upgrade name 791]Unshackled buttergold": "Entfesseltes Buttergold", + "[Upgrade name 792]Unshackled sugarmuck": "Entfesselter Zuckerhut", + "[Upgrade name 793]Unshackled jetmint": "Entfesselte Düsenminze", + "[Upgrade name 794]Unshackled cherrysilver": "Entfesseltes Kirschsilber", + "[Upgrade name 795]Unshackled hazelrald": "Entfesselte Haselrinde", + "[Upgrade name 796]Unshackled mooncandy": "Entfesseltes Mondkandis", + "[Upgrade name 797]Unshackled astrofudge": "Entfesseltes Astrofudge", + "[Upgrade name 798]Unshackled alabascream": "Entfesselte Alabascreme", + "[Upgrade name 799]Unshackled iridyum": "Entfesseltes Iridyum", + "[Upgrade name 800]Unshackled glucosmium": "Entfesseltes Glucosmium", + "[Upgrade name 801]Delicate touch": "Zarte Berührung", + "[Upgrade name 802]Steadfast murmur": "Unentwegtes Murmeln", + "[Upgrade name 803]Glittering edge": "Glitzernde Kante", + "[Upgrade name 804]Distinguished wallpaper assortment": "Ausgezeichnetes Tapetensortiment", + "[Upgrade name 805]Sound test": "Soundtest", + "[Upgrade name 806]Jukebox": "Jukebox", + "[Upgrade name 807]Dalgona cookies": "Dalgona-Kekse", + "[Upgrade name 808]Spicy cookies": "Würzige Kekse", + "[Upgrade name 809]Smile cookies": "Lächel-Kekse", + "[Upgrade name 810]Kolachy cookies": "Kolachy-Kekse", + "[Upgrade name 811]Gomma cookies": "Gomma-Kekse", + "[Upgrade name 812]Vegan cookies": "Vegane Kekse", + "[Upgrade name 813]Coyotas": "Kojoten", + "[Upgrade name 814]Frosted sugar cookies": "Milchglasierte Zuckerkekse", + "[Upgrade name 815]Marshmallow sandwich cookies": "Marshmallow-Sandwich-Kekse", + "[Upgrade name 816]Web cookies": "Web-Cookies", + "[Upgrade name 817]Steamed cookies": "Gedämpfte Kekse", + "[Upgrade name 818]Deep-fried cookie dough": "Frittierter Keksteig", + "[Achievement name 0]Wake and bake": "Wecken und backen", + "[Achievement name 1]Making some dough": "Etwas Teig machen", + "[Achievement name 2]So baked right now": "So gebacken gerade jetzt", + "[Achievement name 3]Fledgling bakery": "Bäckerei mit Nachwuchs", + "[Achievement name 4]Affluent bakery": "Wohlhabende Bäckerei", + "[Achievement name 5]World-famous bakery": "Weltberühmte Bäckerei", + "[Achievement name 6]Cosmic bakery": "Kosmische Bäckerei", + "[Achievement name 7]Galactic bakery": "Galaktische Bäckerei", + "[Achievement name 8]Universal bakery": "Universalbäckerei", + "[Achievement name 9]Timeless bakery": "Zeitlose Bäckerei", + "[Achievement name 10]Infinite bakery": "Unendliche Bäckerei", + "[Achievement name 11]Immortal bakery": "Unsterbliche Bäckerei", + "[Achievement name 12]Don't stop me now": "Halte mich jetzt nicht auf", + "[Achievement name 13]You can stop now": "Du kannst jetzt aufhören", + "[Achievement name 14]Cookies all the way down": "Kekse bis ganz nach unten", + "[Achievement name 15]Overdose": "Überdosis", + "[Achievement name 16]Casual baking": "Lässig backen", + "[Achievement name 17]Hardcore baking": "Hardcore-Backen", + "[Achievement name 18]Steady tasty stream": "Stetiger schmackhafter Strom", + "[Achievement name 19]Cookie monster": "Krümelmonster", + "[Achievement name 20]Mass producer": "Massenproduzent", + "[Achievement name 21]Cookie vortex": "Keks-Vortex", + "[Achievement name 22]Cookie pulsar": "Keks-Pulsar", + "[Achievement name 23]Cookie quasar": "Keks-Quasar", + "[Achievement name 24]Oh hey, you're still here": "Oh hey, du bist immer noch hier", + "[Achievement name 25]Let's never bake again": "Lass uns nie wieder backen", + "[Achievement name 26]Sacrifice": "Opfer", + "[Achievement name 27]Oblivion": "Vergessenheit", + "[Achievement name 28]From scratch": "Von Grund auf", + "[Achievement name 29]Neverclick": "Niemals klicken", + "[Achievement name 30]Clicktastic": "Klicktastisch", + "[Achievement name 31]Clickathlon": "Klickathlon", + "[Achievement name 32]Clickolympics": "Klickolympiade", + "[Achievement name 33]Clickorama": "Klickorama", + "[Achievement name 34]Click": "Klick", + "[Achievement name 35]Double-click": "Doppelklick", + "[Achievement name 36]Mouse wheel": "Mausrad", + "[Achievement name 37]Of Mice and Men": "Von Mäusen und Menschen", + "[Achievement name 38]The Digital": "Das Digitale", + "[Achievement name 39]Just wrong": "Einfach falsch", + "[Achievement name 40]Grandma's cookies": "Omas Kekse", + "[Achievement name 41]Sloppy kisses": "Schlabberküsse", + "[Achievement name 42]Retirement home": "Altersheim", + "[Achievement name 43]Bought the farm": "Die Farm gekauft", + "[Achievement name 44]Reap what you sow": "Ernten was man sät", + "[Achievement name 45]Farm ill": "Bauernhofkrank", + "[Achievement name 46]Production chain": "Produktionskette", + "[Achievement name 47]Industrial revolution": "Industrielle Revolution", + "[Achievement name 48]Global warming": "Globale Erwärmung", + "[Achievement name 49]You know the drill": "Du weißt wie es geht", + "[Achievement name 50]Excavation site": "Ausgrabungsstätte", + "[Achievement name 51]Hollow the planet": "Den Planeten aushöhlen", + "[Achievement name 52]Expedition": "Expedition", + "[Achievement name 53]Galactic highway": "Galaktische Schnellstraße", + "[Achievement name 54]Far far away": "Weit weit entfernt", + "[Achievement name 55]Transmutation": "Transmutation", + "[Achievement name 56]Transmogrification": "Transmogrifikation", + "[Achievement name 57]Gold member": "Gold-Mitglied", + "[Achievement name 58]A whole new world": "Eine ganz neue Welt", + "[Achievement name 59]Now you're thinking": "Jetzt denkst du", + "[Achievement name 60]Dimensional shift": "Dimensionsverschiebung", + "[Achievement name 61]Time warp": "Zeitverschiebung", + "[Achievement name 62]Alternate timeline": "Alternative Zeitlinie", + "[Achievement name 63]Rewriting history": "Die Geschichte neu schreiben", + "[Achievement name 64]One with everything": "Eins mit allem", + "[Achievement name 65]Mathematician": "Mathematiker", + "[Achievement name 66]Base 10": "Basis 10", + "[Achievement name 67]Golden cookie": "Goldener Keks", + "[Achievement name 68]Lucky cookie": "Glückskeks", + "[Achievement name 69]A stroke of luck": "Ein Glücksfall", + "[Achievement name 70]Cheated cookies taste awful": "Geschummelte Kekse schmecken furchtbar", + "[Achievement name 71]Uncanny clicker": "Unheimlicher Klicker", + "[Achievement name 72]Builder": "Erbauer", + "[Achievement name 73]Architect": "Architekt", + "[Achievement name 74]Enhancer": "Verstärker", + "[Achievement name 75]Augmenter": "Augmentierer", + "[Achievement name 76]Cookie-dunker": "Keks-Eintunker", + "[Achievement name 77]Fortune": "Glück", + "[Achievement name 78]True Neverclick": "Wahrer Niemalsklicker", + "[Achievement name 79]Elder nap": "Mittagsschlaf der Älteren", + "[Achievement name 80]Elder slumber": "Ältestenschlummer", + "[Achievement name 81]Elder": "Älteste", + "[Achievement name 82]Elder calm": "Ruhe der Älteren", + "[Achievement name 83]Engineer": "Ingenieur", + "[Achievement name 84]Leprechaun": "Kobold", + "[Achievement name 85]Black cat's paw": "Schwarze Katzenpfote", + "[Achievement name 86]Nihilism": "Nihilismus", + "[Achievement name 87]Antibatter": "Antibatterie", + "[Achievement name 88]Quirky quarks": "Quirlige Quarks", + "[Achievement name 89]It does matter!": "Es ist wichtig!", + "[Achievement name 90]Upgrader": "Upgrader", + "[Achievement name 91]Centennial": "Hundertjahrfeier", + "[Achievement name 92]Hardcore": "Hardcore", + "[Achievement name 93]Speed baking I": "Schnelles Backen I", + "[Achievement name 94]Speed baking II": "Schnelles Backen II", + "[Achievement name 95]Speed baking III": "Schnelles Backen III", + "[Achievement name 96]Getting even with the oven": "Mit dem Ofen abrechnen", + "[Achievement name 97]Now this is pod-smashing": "Das ist der Hammer", + "[Achievement name 98]Chirped out": "Ausgezirpt", + "[Achievement name 99]Follow the white rabbit": "Folge dem weißen Kaninchen", + "[Achievement name 100]Clickasmic": "Klickasmus", + "[Achievement name 101]Friend of the ancients": "Freund der Antike", + "[Achievement name 102]Ruler of the ancients": "Herrscher der Antike", + "[Achievement name 103]Wholesome": "Vollwertig", + "[Achievement name 104]Just plain lucky": "Einfach nur Glück", + "[Achievement name 105]Itchscratcher": "Juckreizkratzer", + "[Achievement name 106]Wrinklesquisher": "Faltenuntersucher", + "[Achievement name 107]Moistburster": "Feuchtwerker", + "[Achievement name 108]Spooky cookies": "Gruselige Kekse", + "[Achievement name 109]Coming to town": "In die Stadt kommen", + "[Achievement name 110]All hail Santa": "Hoch lebe der Weihnachtsmann", + "[Achievement name 111]Let it snow": "Lass es schneien", + "[Achievement name 112]Oh deer": "Oh Hirsch", + "[Achievement name 113]Sleigh of hand": "Schlitten von Hand", + "[Achievement name 114]Reindeer sleigher": "Rentierschlitten", + "[Achievement name 115]Perfected agriculture": "Perfektionierte Landwirtschaft", + "[Achievement name 116]Ultimate automation": "Ultimative Automatisierung", + "[Achievement name 117]Can you dig it": "Kannst du es verstehen", + "[Achievement name 118]Type II civilization": "Typ II Zivilisation", + "[Achievement name 119]Gild wars": "Gildenkriege", + "[Achievement name 120]Brain-split": "Gehirnspaltung", + "[Achievement name 121]Time duke": "Zeitzauber", + "[Achievement name 122]Molecular maestro": "Molekularer Meister", + "[Achievement name 123]Lone photon": "Einzelnes Photon", + "[Achievement name 124]Dazzling glimmer": "Schillernder Schimmer", + "[Achievement name 125]Blinding flash": "Blendender Blitz", + "[Achievement name 126]Unending glow": "Unendliches Glühen", + "[Achievement name 127]Lord of Constructs": "Herr der Konstrukte", + "[Achievement name 128]Lord of Progress": "Herr des Fortschritts", + "[Achievement name 129]Bicentennial": "Zweihundertjahrfeier", + "[Achievement name 130]Lovely cookies": "Leckere Kekse", + "[Achievement name 131]Centennial and a half": "Hundertfünfzigjahrfeier", + "[Achievement name 132]Tiny cookie": "Winziger Keks", + "[Achievement name 133]You win a cookie": "Du gewinnst einen Keks", + "[Achievement name 134]Click delegator": "Klick-Delegator", + "[Achievement name 135]Gushing grannies": "Überschwängliche Omas", + "[Achievement name 136]I hate manure": "Ich hasse Dung", + "[Achievement name 137]Never dig down": "Niemals nach unten graben", + "[Achievement name 138]The incredible machine": "Die unglaubliche Maschine", + "[Achievement name 139]And beyond": "Und weiter", + "[Achievement name 140]Magnum Opus": "Magnum Opus", + "[Achievement name 141]With strange eons": "Mit seltsamen Äonen", + "[Achievement name 142]Spacetime jigamaroo": "Raumzeit-Schabernack", + "[Achievement name 143]Supermassive": "Supermassiv", + "[Achievement name 144]Praise the sun": "Gelobt sei die Sonne", + "[Achievement name 145]Clickageddon": "Klickageddon", + "[Achievement name 146]Clicknarok": "Klicknarok", + "[Achievement name 147]Extreme polydactyly": "Extreme Polydaktylie", + "[Achievement name 148]Dr. T": "Dr. T", + "[Achievement name 149]The old never bothered me anyway": "Das Alte hat mich sowieso nie gestört", + "[Achievement name 150]Homegrown": "Eigenbau", + "[Achievement name 151]Technocracy": "Technokratie", + "[Achievement name 152]The center of the Earth": "Der Mittelpunkt der Erde", + "[Achievement name 153]We come in peace": "Wir kommen in Frieden", + "[Achievement name 154]The secrets of the universe": "Die Geheimnisse des Universums", + "[Achievement name 155]Realm of the Mad God": "Reich des verrückten Gottes", + "[Achievement name 156]Forever and ever": "Für immer und ewig", + "[Achievement name 157]Walk the planck": "Gehe über die Plancke", + "[Achievement name 158]Rise and shine": "Auferstehen und glänzen", + "[Achievement name 159]God complex": "Gottkomplex", + "[Achievement name 160]Third-party": "Drittanbieter", + "[Achievement name 161]Dematerialize": "Entmaterialisieren", + "[Achievement name 162]Nil zero zilch": "Null null null zilch", + "[Achievement name 163]Transcendence": "Transzendenz", + "[Achievement name 164]Obliterate": "Auslöschen", + "[Achievement name 165]Negative void": "Negative Leere", + "[Achievement name 166]The hunt is on": "Die Jagd ist eröffnet", + "[Achievement name 167]Egging on": "Aufstacheln", + "[Achievement name 168]Mass Easteria": "Massen-Osterie", + "[Achievement name 169]Hide & seek champion": "Meister im Versteckspiel", + "[Achievement name 170]What's in a name": "Was in einem Namen steckt", + "[Achievement name 171]Pretty penny": "Hübscher Penny", + "[Achievement name 172]Fit the bill": "Passt die Rechnung", + "[Achievement name 173]A loan in the dark": "Ein Kredit im Dunkeln", + "[Achievement name 174]Need for greed": "Bedürfnis nach Gier", + "[Achievement name 175]It's the economy, stupid": "Es ist die Wirtschaft, dumm", + "[Achievement name 176]Your time to shrine": "Deine Zeit zum Schrein", + "[Achievement name 177]Shady sect": "Schattige Sekte", + "[Achievement name 178]New-age cult": "Neuzeitlicher Kult", + "[Achievement name 179]Organized religion": "Organisierte Religion", + "[Achievement name 180]Fanaticism": "Fanatismus", + "[Achievement name 181]Bewitched": "Verhext", + "[Achievement name 182]The sorcerer's apprentice": "Der Zauberlehrling", + "[Achievement name 183]Charms and enchantments": "Talismane und Verzauberungen", + "[Achievement name 184]Curses and maledictions": "Flüche und Verwünschungen", + "[Achievement name 185]Magic kingdom": "Zauberkönigreich", + "[Achievement name 186]Vested interest": "Eigenes Interesse", + "[Achievement name 187]New world order": "Neue Weltordnung", + "[Achievement name 188]Hocus pocus": "Hokuspokus", + "[Achievement name 189]Finger clickin' good": "Finger klickend gut", + "[Achievement name 190]Panic at the bingo": "Panik beim Bingo", + "[Achievement name 191]Rake in the dough": "Den Teig einharken", + "[Achievement name 192]Quarry on": "Steinbruch an", + "[Achievement name 193]Yes I love technology": "Ja ich liebe Technik", + "[Achievement name 194]Paid in full": "Vollständig bezahlt", + "[Achievement name 195]Church of Cookiology": "Kirche der Kookiologie", + "[Achievement name 196]Too many rabbits, not enough hats": "Zu viele Kaninchen, nicht genug Hüte", + "[Achievement name 197]The most precious cargo": "Die wertvollste Fracht", + "[Achievement name 198]The Aureate": "Der Aureate", + "[Achievement name 199]Ever more hideous": "Immer hässlicher", + "[Achievement name 200]Be kind, rewind": "Sei freundlich, spule zurück", + "[Achievement name 201]Infinitesimal": "Infinitesimal", + "[Achievement name 202]A still more glorious dawn": "Eine noch glorreichere Morgendämmerung", + "[Achievement name 203]Rebirth": "Wiedergeburt", + "[Achievement name 204]Here you go": "Hier bitte schön", + "[Achievement name 205]Resurrection": "Auferstehung", + "[Achievement name 206]Reincarnation": "Reinkarnation", + "[Achievement name 207]Endless cycle": "Endloser Kreislauf", + "[Achievement name 208]The agemaster": "Der Agrarmaster", + "[Achievement name 209]To oldly go": "Zu alt zum gehen", + "[Achievement name 210]Gardener extraordinaire": "Außergewöhnlicher Gärtner", + "[Achievement name 211]Tectonic ambassador": "Tektonischer Botschafter", + "[Achievement name 212]Rise of the machines": "Der Aufstieg der Maschinen", + "[Achievement name 213]Acquire currency": "Währung akquirieren", + "[Achievement name 214]Zealotry": "Eiferer", + "[Achievement name 215]The wizarding world": "Die zauberhafte Welt", + "[Achievement name 216]Parsec-masher": "Parsec-Scheibe", + "[Achievement name 217]The work of a lifetime": "Das Werk eines Lebens", + "[Achievement name 218]A place lost in time": "Ein Ort verloren in der Zeit", + "[Achievement name 219]Heat death": "Hitzetod", + "[Achievement name 220]Microcosm": "Mikrokosmos", + "[Achievement name 221]Bright future": "Strahlende Zukunft", + "[Achievement name 222]Here be dragon": "Hier sei der Drache", + "[Achievement name 223]How?": "Wie?", + "[Achievement name 224]The land of milk and cookies": "Das Land von Milch und Keksen", + "[Achievement name 225]He who controls the cookies controls the universe": "Wer die Kekse kontrolliert, kontrolliert das Universum", + "[Achievement name 226]Tonight on Hoarders": "Heute Abend bei den Hortern", + "[Achievement name 227]Are you gonna eat all that?": "Wirst du das alles essen?", + "[Achievement name 228]We're gonna need a bigger bakery": "Wir werden eine größere Bäckerei brauchen", + "[Achievement name 229]In the mouth of madness": "Im Maul des Wahnsinns", + "[Achievement name 230]Brought to you by the letter
": "Präsentiert von dem Brief
", + "[Achievement name 231]A world filled with cookies": "Eine Welt gefüllt mit Keksen", + "[Achievement name 232]When this baby hits 36 quadrillion cookies per hour": "Wenn dieses Baby 36 Quadrillionen Kekse pro Stunde erreicht", + "[Achievement name 233]Fast and delicious": "Schnell und lecker", + "[Achievement name 234]Cookiehertz : a really, really tasty hertz": "Kerkshertz: ein wirklich, wirklich leckeres Hertz", + "[Achievement name 235]Woops, you solved world hunger": "Huch, du hast den Welthunger gelöst", + "[Achievement name 236]Turbopuns": "Turbokanonen", + "[Achievement name 237]Faster menner": "Schnellere Männer", + "[Achievement name 238]And yet you're still hungry": "Und doch bist du immer noch hungrig", + "[Achievement name 239]The Abakening": "Das Erbacken", + "[Achievement name 240]There's really no hard limit to how long these achievement names can be and to be quite honest I'm rather curious to see how far we can go.
Adolphus W. Green (1844–1917) started as the Principal of the Groton School in 1864. By 1865, he became second assistant librarian at the New York Mercantile Library; from 1867 to 1869, he was promoted to full librarian. From 1869 to 1873, he worked for Evarts, Southmayd & Choate, a law firm co-founded by William M. Evarts, Charles Ferdinand Southmayd and Joseph Hodges Choate. He was admitted to the New York State Bar Association in 1873.
Anyway, how's your day been?": "Es gibt wirklich keine harte Grenze, wie lang diese Erfolgsnamen sein können und um ganz ehrlich zu sein, bin ich ziemlich neugierig, wie weit wir gehen können.
Adolphus W. Green (1844-1917) begann 1864 als Rektor der Groton School. 1865 wurde er zweiter Assistenzbibliothekar an der New York Mercantile Library, von 1867 bis 1869 wurde er zum ordentlichen Bibliothekar befördert. Von 1869 bis 1873 arbeitete er für Evarts, Southmayd & Choate, eine Anwaltskanzlei, die von William M. Evarts, Charles Ferdinand Southmayd und Joseph Hodges Choate mitgegründet wurde. Er wurde 1873 in die Anwaltskammer des Staates New York aufgenommen.
Alles klar, wie war dein Tag?", + "[Achievement name 241]Fast": "Schnell", + "[Achievement name 242]Bicentennial and a half": "Zweihundertfünfzigjahrfeier", + "[Achievement name 243]Tabloid addiction": "Boulevardblatt-Sucht", + "[Achievement name 244]Clickastrophe": "Klickastrophe", + "[Achievement name 245]Clickataclysm": "Klickataclysmus", + "[Achievement name 246]Thumbs, phalanges, metacarpals": "Daumen, Fingerglieder, Mittelhandknochen", + "[Achievement name 247]Polymath": "Universalgelehrter", + "[Achievement name 248]The elder scrolls": "Die Elder Scrolls", + "[Achievement name 249]To crumbs, you say?": "Auf die Krümel, sagst du?", + "[Achievement name 250]Seedy business": "Zwielichtiges Geschäft", + "[Achievement name 251]Freak fracking": "Freak-Fracking", + "[Achievement name 252]Modern times": "Moderne Zeiten", + "[Achievement name 253]The nerve of war": "Der Nerv des Krieges", + "[Achievement name 254]Wololo": "Wololo", + "[Achievement name 255]And now for my next trick, I'll need a volunteer from the audience": "Und jetzt brauche ich für meinen nächsten Trick einen Freiwilligen aus dem Publikum", + "[Achievement name 256]It's not delivery": "Es ist keine Lieferung", + "[Achievement name 257]Gold, Jerry! Gold!": "Gold, Jerry! Gold!", + "[Achievement name 258]Forbidden zone": "Verbotene Zone", + "[Achievement name 259]cookie clicker forever and forever a hundred years cookie clicker, all day long forever, forever a hundred times, over and over cookie clicker adventures dot com": "Cookie Clicker für immer und ewig hundert Jahre Cookie Clicker, den ganzen Tag lang für immer, für immer hundert Mal, immer und immer wieder Cookie Clicker Abenteuer dot com", + "[Achievement name 260]Scientists baffled everywhere": "Wissenschaftler überall verblüfft", + "[Achievement name 261]Harmony of the spheres": "Harmonie der Sphären", + "[Achievement name 262]Last Chance to See": "Letzte Chance zum Sehen", + "[Achievement name 263]Early bird": "Frühaufsteher", + "[Achievement name 264]Fading luck": "Verblassendes Glück", + "[Achievement name 265]Eldeer": "Ältester", + "[Achievement name 266]Dude, sweet": "Alter, süß", + "[Achievement name 267]Sugar rush": "Zuckerrausch", + "[Achievement name 268]Year's worth of cavities": "Ein ganzes Jahr lang Karies", + "[Achievement name 269]Hand-picked": "Handverlesen", + "[Achievement name 270]Sugar sugar": "Zucker Zucker", + "[Achievement name 271]All-natural cane sugar": "Vollwertiger Rohrzucker", + "[Achievement name 272]Sweetmeats": "Süßwaren", + "[Achievement name 273]Tricentennial": "Dreihundertjahrfeier", + "[Achievement name 274]Knead for speed": "Kneten für Geschwindigkeit", + "[Achievement name 275]Well the cookies start coming and they don't stop coming": "Nun, die Kekse fangen an zu kommen und sie hören nicht auf zu kommen", + "[Achievement name 276]I don't know if you've noticed but all these icons are very slightly off-center": "Ich weiß nicht, ob Sie es bemerkt haben, aber alle diese Symbole sind sehr leicht dezentriert", + "[Achievement name 277]The proof of the cookie is in the baking": "Der Beweis des Kekses liegt im Backen", + "[Achievement name 278]If it's worth doing, it's worth overdoing": "Wenn es sich lohnt, etwas zu tun, dann lohnt es sich, es zu übertreiben", + "[Achievement name 279]The dreams in which I'm baking are the best I've ever had": "Die Träume, in denen ich backe, sind die besten, die ich je hatte", + "[Achievement name 280]Set for life": "Für das Leben eingestellt", + "[Achievement name 281]You and the beanstalk": "Du und die Bohnenstange", + "[Achievement name 282]Romancing the stone": "Romancing the stone", + "[Achievement name 283]Ex machina": "Ex Machina", + "[Achievement name 284]And I need it now": "Und ich brauche es jetzt", + "[Achievement name 285]Pray on the weak": "Beten Sie für die Schwachen", + "[Achievement name 286]It's a kind of magic": "Es ist eine Art von Magie", + "[Achievement name 287]Make it so": "Machen Sie es so", + "[Achievement name 288]All that glitters is gold": "Es ist alles Gold, was glänzt", + "[Achievement name 289]Here he comes": "Hier kommt er", + "[Achievement name 290]Way back then": "Damals", + "[Achievement name 291]Exotic matter": "Exotisches Material", + "[Achievement name 292]At the end of the tunnel": "Am Ende des Tunnels", + "[Achievement name 293]Click (starring Adam Sandler)": "Click (mit Adam Sandler in der Hauptrolle)", + "[Achievement name 294]Frantiquities": "Frantiquitäten", + "[Achievement name 295]Overgrowth": "Überwucherung", + "[Achievement name 296]Sedimentalism": "Sedimentalität", + "[Achievement name 297]Labor of love": "Arbeit der Liebe", + "[Achievement name 298]Reverse funnel system": "Umgekehrtes Trichtersystem", + "[Achievement name 299]Thus spoke you": "So hast du gesprochen", + "[Achievement name 300]Manafest destiny": "Manafest-Schicksal", + "[Achievement name 301]Neither snow nor rain nor heat nor gloom of night": "Weder Schnee noch Regen noch Hitze noch Finsternis der Nacht", + "[Achievement name 302]I've got the Midas touch": "Ich habe die goldene Hand", + "[Achievement name 303]Which eternal lie": "Die ewige Lüge", + "[Achievement name 304]Déjà vu": "Déjà vu", + "[Achievement name 305]Powers of Ten": "Zehnerpotenzen", + "[Achievement name 306]Now the dark days are gone": "Jetzt sind die dunklen Tage vorbei", + "[Achievement name 307]Freaky jazz hands": "Verrückte Jazz Hände", + "[Achievement name 308]Methuselah": "Methusalem", + "[Achievement name 309]Huge tracts of land": "Riesige Landstriche", + "[Achievement name 310]D-d-d-d-deeper": "T-t-t-t-tiefer", + "[Achievement name 311]Patently genius": "Patentiell genial", + "[Achievement name 312]A capital idea": "Eine großartige Idee", + "[Achievement name 313]It belongs in a bakery": "Es gehört in eine Bäckerei", + "[Achievement name 314]Motormouth": "Motormaul", + "[Achievement name 315]Been there done that": "Das haben wir schon gemacht", + "[Achievement name 316]Phlogisticated substances": "Hochentwickelte Substanzen", + "[Achievement name 317]Bizarro world": "Bizarro-Welt", + "[Achievement name 318]The long now": "Das lange Jetzt", + "[Achievement name 319]Chubby hadrons": "Mollige Hadronen", + "[Achievement name 320]Palettable": "Palettenfähig", + "[Achievement name 321]Bibbidi-bobbidi-boo": "Bibbidi-babbidi-buh", + "[Achievement name 322]I'm the wiz": "Ich bin der Zauberer", + "[Achievement name 323]A wizard is you": "Ein Zauberer bist du", + "[Achievement name 324]Four-leaf cookie": "Vierblättriger Keks", + "[Achievement name 325]Lucked out": "Glück gehabt", + "[Achievement name 326]What are the odds": "Wie hoch sind die Chancen", + "[Achievement name 327]Grandma needs a new pair of shoes": "Oma braucht ein neues Paar Schuhe", + "[Achievement name 328]Million to one shot, doc": "Eine Million auf einen Schlag, Doc", + "[Achievement name 329]As luck would have it": "Wie es der Zufall so will", + "[Achievement name 330]Ever in your favor": "Immer zu deinen Gunsten", + "[Achievement name 331]Be a lady": "Sei eine Dame", + "[Achievement name 332]Dicey business": "Brenzliges Geschäft", + "[Achievement name 333]Fingers crossed": "Daumen drücken", + "[Achievement name 334]Just a statistic": "Nur eine Statistik", + "[Achievement name 335]Murphy's wild guess": "Murphys wilde Vermutung", + "[Achievement name 336]Let's leaf it at that": "Lassen wir es dabei bewenden", + "[Achievement name 337]The ultimate clickdown": "Der ultimative Kickwettbewerb", + "[Achievement name 338]Aged well": "Gut gealtert", + "[Achievement name 339]101st birthday": "101. Geburtstag", + "[Achievement name 340]But wait 'til you get older": "Aber warte, bis du älter wirst", + "[Achievement name 341]Harvest moon": "Harvest moon", + "[Achievement name 342]Mine?": "Mine?", + "[Achievement name 343]In full gear": "In voller Montur", + "[Achievement name 344]Treacle tart economics": "Sirupkuchen-Wirtschaft", + "[Achievement name 345]Holy cookies, grandma!": "Heilige Kekse, Oma!", + "[Achievement name 346]The Prestige": "Das Prestige", + "[Achievement name 347]That's just peanuts to space": "Das sind nur Peanuts für den Weltraum", + "[Achievement name 348]Worth its weight in lead": "Ist sein Gewicht in Blei wert", + "[Achievement name 349]What happens in the vortex stays in the vortex": "Was im Strudel passiert, bleibt im Strudel", + "[Achievement name 350]Invited to yesterday's party": "Eingeladen zur gestrigen Party", + "[Achievement name 351]Downsizing": "Verkleinern", + "[Achievement name 352]My eyes": "Meine Augen", + "[Achievement name 353]Maybe a chance in hell, actually": "Vielleicht eine Chance in der Hölle", + "[Achievement name 354]Make like a tree": "Mach es wie ein Baum", + "[Achievement name 355]Cave story": "Cave story", + "[Achievement name 356]In-cog-neato": "In-kog-nito", + "[Achievement name 357]Save your breath because that's all you've got left": "Spar deinen Atem, denn das ist alles was du noch hast", + "[Achievement name 358]Vengeful and almighty": "Rachsüchtig und allmächtig", + "[Achievement name 359]Spell it out for you": "Buchstabiere es für dich", + "[Achievement name 360]Space space space space space": "Weltraum Weltraum Weltraum Weltraum Weltraum", + "[Achievement name 361]Don't get used to yourself, you're gonna have to change": "Gewöhne dich nicht an dich selbst, du wirst dich ändern müssen", + "[Achievement name 362]Objects in the mirror dimension are closer than they appear": "Objekte in der Spiegeldimension sind näher als sie erscheinen", + "[Achievement name 363]Groundhog day": "Murmeltiertag", + "[Achievement name 364]A matter of perspective": "Eine Frage der Perspektive", + "[Achievement name 365]Optical illusion": "Optische Täuschung", + "[Achievement name 366]Jackpot": "Jackpot", + "[Achievement name 367]So much to do so much to see": "So viel zu tun, so viel zu sehen", + "[Achievement name 368]Running with scissors": "Laufen mit der Schere", + "[Achievement name 369]Rarefied air": "Gereinigte Luft", + "[Achievement name 370]Push it to the limit": "Bring es ans Limit", + "[Achievement name 371]Green cookies sleep furiously": "Grüne Kekse schlafen unruhig", + "[Achievement name 372]Panic! at Nabisco": "Panik! bei Nabisco", + "[Achievement name 373]Bursting at the seams": "Aus allen Nähten platzen", + "[Achievement name 374]Just about full": "Gerade noch voll", + "[Achievement name 375]Hungry for more": "Hungrig nach mehr", + "[Achievement name 376]All the other kids with the pumped up clicks": "All die anderen Kinder mit den aufgepumpten Klicks", + "[Achievement name 377]One...more...click...": "Ein... Klick... mehr...", + "[Achievement name 378]Botany enthusiast": "Botanikliebhaber", + "[Achievement name 379]Green, aching thumb": "Grüner, schmerzender Daumen", + "[Achievement name 380]In the garden of Eden (baby)": "Im Garten Eden (Baby)", + "[Achievement name 381]Keeper of the conservatory": "Hüterin des Wintergartens", + "[Achievement name 382]Seedless to nay": "Samenlos zu Null Null", + "[Achievement name 383]You get nothing": "Du bekommst nichts", + "[Achievement name 384]Humble rebeginnings": "Bescheidene Neuanfänge", + "[Achievement name 385]The end of the world": "Das Ende der Welt", + "[Achievement name 386]Oh, you're back": "Oh, du bist zurück", + "[Achievement name 387]Lazarus": "Lazarus", + "[Achievement name 388]Leisurely pace": "Gemächliches Tempo", + "[Achievement name 389]Hypersonic": "Hyperschall", + "[Achievement name 390]Feed me, Orteil": "Füttere mich, Orteil", + "[Achievement name 391]And then what?": "Und was dann?", + "[Achievement name 392]Tricentennial and a half": "Dreihundertfünfzigjahrfeier", + "[Achievement name 393]Quadricentennial": "Vierhundertjahrfeier", + "[Achievement name 394]Quadricentennial and a half": "Vierhundertfünfzigjahrfeier", + "[Achievement name 395]Quincentennial": "Fünfhundertjahrfeier", + "[Achievement name 396]Maillard reaction": "Maillard-Reaktion", + "[Achievement name 397]When the cookies ascend just right": "Wenn die Kekse genau richtig aufsteigen", + "[Achievement name 398]With her finger and her thumb": "Mit ihrem Finger und ihrem Daumen", + "[Achievement name 399]Defense of the ancients": "Verteidigung der Alten", + "[Achievement name 400]Sharpest tool in the shed": "Das schärfste Werkzeug im Schuppen", + "[Achievement name 401]Hey now, you're a rock": "Hey, du bist ein Fels", + "[Achievement name 402]Break the mold": "Die Form brechen", + "[Achievement name 403]Get the show on, get paid": "Die Show starten, bezahlt werden", + "[Achievement name 404]My world's on fire, how about yours": "Meine Welt brennt, wie steht's mit deiner?", + "[Achievement name 405]The meteor men beg to differ": "Die Meteorologen sind anderer Meinung", + "[Achievement name 406]Only shooting stars": "Nur Sternschnuppen", + "[Achievement name 407]We could all use a little change": "Wir könnten alle ein wenig Abwechslung gebrauchen", + "[Achievement name 408]Your brain gets smart but your head gets dumb": "Ihr Gehirn wird schlau, aber Ihr Kopf wird dumm", + "[Achievement name 409]The years start coming": "Die Jahre beginnen zu laufen", + "[Achievement name 410]What a concept": "Was für ein Konzept", + "[Achievement name 411]You'll never shine if you don't glow": "Du wirst nie glänzen, wenn du nicht glühst", + "[Achievement name 412]You'll never know if you don't go": "Du wirst es nie erfahren, wenn du nicht gehst", + "[Achievement name 413]Self-contained": "Eigenständig", + "[Achievement name 414]Threw you for a loop": "Hat Sie aus der Bahn geworfen", + "[Achievement name 415]The sum of its parts": "Die Summe seiner Teile", + "[Achievement name 416]Bears repeating": "Bärenwiederholung", + "[Achievement name 417]More of the same": "Mehr davon", + "[Achievement name 418]Last recurse": "Letzte Rückführung", + "[Achievement name 419]Out of one, many": "Aus einem werden viele", + "[Achievement name 420]An example of recursion": "Ein Beispiel für Rekursion", + "[Achievement name 421]For more information on this achievement, please refer to its title": "Weitere Informationen zu diesem Erfolg finden Sie in seinem Titel", + "[Achievement name 422]I'm so meta, even this achievement": "Ich bin so meta, sogar dieser Erfolg", + "[Achievement name 423]Never get bored": "Wird nie langweilig", + "[Achievement name 424]The needs of the many": "Die Bedürfnisse der Vielen", + "[Achievement name 425]Eating its own": "Sich selbst fressen", + "[Achievement name 426]We must go deeper": "Wir müssen tiefer gehen", + "[Achievement name 427]Sierpinski rhomboids": "Sierpinski-Rhomben", + "[Achievement name 428]Gotta go fast": "Muss schnell gehen", + "[Achievement name 429]I think it's safe to say you've got it made": "Ich denke, man kann mit Sicherheit sagen, dass Sie es geschafft haben", + "[Achievement name 430]Renaissance baker": "Renaissance-Bäcker", + "[Achievement name 431]Veteran": "Veteran", + "[Achievement name 432]Thick-skinned": "Dickhäutig", + "[Achievement name 433]F12": "F12", + "[Achievement name 434]Variable success": "Variabler Erfolg", + "[Achievement name 435]No comments": "Keine Kommentare", + "[Achievement name 436]Up to code": "Bis zum Code", + "[Achievement name 437]Works on my machine": "Funktioniert auf meinem Gerät", + "[Achievement name 438]Technical debt": "Technische Schulden", + "[Achievement name 439]Mind your language": "Achte auf deine Worte", + "[Achievement name 440]Inconsolable": "Untröstlich", + "[Achievement name 441]Closure": "Abschluss", + "[Achievement name 442]Dude what if we're all living in a simulation like what if we're all just code on a computer somewhere": "Alter, was, wenn wir alle in einer Simulation leben, was, wenn wir alle nur Code auf einem Computer irgendwo sind", + "[Achievement name 443]Taking the back streets": "Auf den Nebenstraßen", + "[Achievement name 444]Inherited prototype": "Vererbter Prototyp", + "[Achievement name 445]A model of document object": "Ein Modell des Dokument-Objekts", + "[Achievement name 446]First-class citizen": "Bürger erster Klasse", + "[Achievement name 447]Alexandria": "Alexandria", + "[Achievement name 448]Bake him away, toys": "Backen Sie ihn weg, Spielzeug", + "[Achievement name 449]You're #1 so why try harder": "Du bist die Nummer 1, warum solltest du dich also mehr anstrengen", + "[Achievement name 450]Haven't even begun to peak": "Haben noch nicht einmal angefangen zu klettern", + "[Achievement name 451]A sometimes food": "Gelegentliches Essen", + "[Achievement name 452]Not enough of a good thing": "Nicht genug von einer guten Sache", + "[Achievement name 453]Horn of plenty": "Füllhorn", + "[Achievement name 454]Smurf account": "Schlumpf-Konto", + "[Achievement name 455]If at first you don't succeed": "Wenn du am Anfang keinen Erfolg hast", + "[Achievement name 456]O Fortuna": "O Fortuna", + "[Achievement name 457]Initial public offering": "Börsengang", + "[Achievement name 458]Rookie numbers": "Anfängerzahlen", + "[Achievement name 459]No nobility in poverty": "Kein Adel in der Armut", + "[Achievement name 460]Full warehouses": "Volle Lagerhallen", + "[Achievement name 461]Make my day": "Macht meinen Tag", + "[Achievement name 462]Buy buy buy": "Kaufen kaufen kaufen", + "[Achievement name 463]Gaseous assets": "Gasförmige Vermögenswerte", + "[Achievement name 464]Pyramid scheme": "Pyramidenschema", + "[Achievement name 465]Jellicles": "Gelees", + "[Achievement name 466]Quincentennial and a half": "Fünfhundertfünfzigjahrfeier", + "[Achievement name 467]What did we even eat before these": "Was haben wir überhaupt vorher gegessen?", + "[Achievement name 468]Heavy flow": "Starke Strömung", + "[Achievement name 469]More you say?": "Du willst mehr?", + "[Achievement name 470]Large and in charge": "Groß und federführend", + "[Achievement name 471]Absolutely stuffed": "Absolut vollgestopft", + "[Achievement name 472]It's only wafer-thin": "Es ist nur hauchdünn", + "[Achievement name 473]Clickety split": "Klickender Split", + "[Achievement name 474]Gotta hand it to you": "Das muss man dir lassen", + "[Achievement name 475]Okay boomer": "Okay boomer", + "[Achievement name 476]Overripe": "Überreif", + "[Achievement name 477]Rock on": "Weiter rocken", + "[Achievement name 478]Self-manmade man": "Der selbstgemachte Mann", + "[Achievement name 479]Checks out": "Checkt aus", + "[Achievement name 480]Living on a prayer": "Living on a prayer", + "[Achievement name 481]Higitus figitus migitus mum": "Higitus figitus migitus mum", + "[Achievement name 482]The incredible journey": "Die unglaubliche Reise", + "[Achievement name 483]Just a phase": "Nur eine Phase", + "[Achievement name 484]Don't let me leave, Murph": "Lass mich nicht gehen, Murph", + "[Achievement name 485]Caveman to cosmos": "Vom Höhlenmensch zum Kosmos", + "[Achievement name 486]Particular tastes": "Besondere Geschmäcker", + "[Achievement name 487]A light snack": "Ein leichter Snack", + "[Achievement name 488]Tempting fate": "Das Schicksal herausfordernd", + "[Achievement name 489]Tautological": "Tautologisch", + "[Achievement name 490]Curly braces": "Geschwungene Klammern", + "[Achievement name 491]Seven horseshoes": "Sieben Hufeisen", + "[Achievement name 492]Olden days": "Die alten Tage", + "[Achievement name 493]The devil's workshop": "Die Werkstatt des Teufels", + "[Achievement name 494]In the green": "Im Grünen", + "[Achievement name 495]Mountain out of a molehill, but like in a good way": "Ein Berg aus einer Mücke, aber auf eine gute Art und Weise", + "[Achievement name 496]The wheels of progress": "Die Räder des Fortschritts", + "[Achievement name 497]That's rich": "Das ist reich", + "[Achievement name 498]Preaches and cream": "Predigt und Sahne", + "[Achievement name 499]Magic thinking": "Magisches Denken", + "[Achievement name 500]Is there life on Mars?": "Gibt es Leben auf dem Mars?", + "[Achievement name 501]Bad chemistry": "Schlechte Chemie", + "[Achievement name 502]Reduced to gibbering heaps": "Reduziert auf kichernde Haufen", + "[Achievement name 503]Back already?": "Schon zurück?", + "[Achievement name 504]Nuclear throne": "Nuklearer Thron", + "[Achievement name 505]Making light of the situation": "Die Situation auf die leichte Schulter nehmen", + "[Achievement name 506]Flip a cookie. Chips, I win. Crust, you lose.": "Wirf einen Keks. Splitter, ich gewinne. Kruste, du verlierst.", + "[Achievement name 507]In and of itself": "An und für sich", + "[Achievement name 508]Duck typing": "Ente tippen", + "[Achievement name 509]They'll never know what hit 'em": "Sie werden nie wissen, was sie getroffen hat", + "[Achievement name 510]Well-versed": "Gut bewandert", + "[Achievement name 511]Ripe for the picking": "Reif zum Pflücken", + "[Achievement name 512]Unreal": "Irreal", + "[Achievement name 513]Once you've seen one": "Sobald du einen gesehen hast", + "[Achievement name 514]Spoils and plunder": "Beute und Plünderung", + "[Achievement name 515]Nobody exists on purpose, nobody belongs anywhere": "Niemand existiert mit Absicht, niemand gehört irgendwo hin", + "[Achievement name 516]Hyperspace expressway": "Hyperraum-Schnellstraße", + "[Achievement name 517]Versatile": "Vielseitig", + "[Achievement name 518]You are inevitable": "Du bist unausweichlich", + "[Achievement name 519]Away from this place": "Weg von diesem Ort", + "[Achievement name 520]Everywhere at once": "Überall gleichzeitig", + "[Achievement name 521]Reject reality, substitute your own": "Lehne die Realität ab, ersetze deine eigene", + "[Achievement name 522]Fringe": "Fringe", + "[Achievement name 523]Coherence": "Kohärenz", + "[Achievement name 524]Earth-616": "Erde-616", + "[Achievement name 525]Strange topologies": "Seltsame Topologien", + "[Achievement name 526]Grand design": "Großes Design", + "[Achievement name 527]Ecumenopolis": "Ökumenopolis", + "[Achievement name 528]The full picture": "Das volle Bild", + "[Achievement name 529]When there's nothing left to add": "Wenn es nichts mehr hinzuzufügen gibt", + "[Achievement name 530]Sexcentennial": "Sechshundertjahrfeier", + "[Achievement name 531]Keep going until I say stop": "Mach weiter bis ich Stopp sage", + "[Achievement name 532]But I didn't say stop, did I?": "Aber ich habe nicht gesagt, dass du aufhören sollst, oder?", + "[Achievement name 533]With unrivaled fervor": "Mit unübertroffener Inbrunst", + "[Achievement name 534]Think big": "Groß denken", + "[Achievement name 535]Hypersize me": "Hypersize me", + "[Achievement name 536]Max capacity": "Maximale Kapazität", + "[Achievement name 537]Liquid assets": "Liquide Mittel", + "[Achievement name 538]Stifling the press": "Die Presse unterdrücken", + "[Achievement name 539]It's big brain time": "Es ist Zeit für die Genies", + "[Achievement name 540]Just my imagination": "Nur meine Fantasie", + "[Achievement name 541]Now there's an idea": "Das ist mal eine Idee", + "[Achievement name 542]The organ that named itself": "Das Organ, das sich selbst benannt hat", + "[Achievement name 543]Gyrification": "Gyrifizierung", + "[Achievement name 544]A trademarked portmanteau of \"imagination\" and \"engineering\"": "Ein geschütztes Portmanteau aus \"Imagination\" und \"Ingenieurwesen\".", + "[Achievement name 545]Mindfulness": "Achtsamkeit", + "[Achievement name 546]The 10% myth": "Der 10%-Mythos", + "[Achievement name 547]Don't think about it too hard": "Denke nicht zu sehr darüber nach", + "[Achievement name 548]Though fools seldom differ": "Auch wenn Narren sich nur selten unterscheiden", + "[Achievement name 549]Looking kind of dumb": "Sieht irgendwie blöd aus", + "[Achievement name 550]A beautiful mind": "Ein schöner Verstand", + "[Achievement name 551]Cardinal synapses": "Kardinalsynapsen", + "[Achievement name 552]Positive thinking": "Positives Denken", + "[Achievement name 553]The thought that counts": "Der Gedanke, der zählt", + "[Achievement name 554]Unthinkable": "Undenkbar", + "[Achievement name 555]Gifted": "Begabt", + "[Achievement name 556]They moistly come at night": "Sie kommen feucht in der Nacht", + "[Achievement name 557]It's grown on you": "Es ist dir ans Herz gewachsen", + "[Achievement name 558]Don't let the walls cave in on you": "Lass die Wände nicht über dir zusammenbrechen", + "[Achievement name 559]Replaced by robots": "Ersetzt von Robotern", + "[Achievement name 560]Financial prodigy": "Finanzielles Wunderkind", + "[Achievement name 561]And I will pray to a big god": "Und ich werde zu einem großen Gott beten", + "[Achievement name 562]Shosple Colupis": "Shosple Colupis", + "[Achievement name 563]False vacuum": "Falsches Vakuum", + "[Achievement name 564]Metallic taste": "Metallischer Geschmack", + "[Achievement name 565]Swiss cheese": "Schweizer Käse", + "[Achievement name 566]But the future refused to change": "Aber die Zukunft wollte sich nicht ändern", + "[Achievement name 567]What's the dark matter with you": "Was ist denn mit dir los?", + "[Achievement name 568]Enlightenment": "Erleuchtung", + "[Achievement name 569]Never tell me the odds": "Sag mir nie, wie die Chancen stehen", + "[Achievement name 570]Blowing an Apollonian gasket": "Eine apollinische Dichtung sprengen", + "[Achievement name 571]Get with the program": "Mach mit bei dem Programm", + "[Achievement name 572]Lost your cosmic marbles": "Du hast deine kosmischen Murmeln verloren", + "[Achievement name 573]By will alone I set my mind in motion": "Allein durch meinen Willen setze ich meinen Geist in Bewegung", + "[Achievement name 574]Ain't that a click in the head": "Ist das kein Klicken im Kopf", + "[Achievement name 575]Sexcentennial and a half": "Sechhundertfünfzig Jahre", + "[Achievement name 576]I am speed": "Ich bin Schnelligkeit", + "[Achievement name 577]And on and on": "Und so weiter und so fort", + "[Achievement name 578]Fake it till you bake it": "So lange täuschen, bis du es backst", + "[Achievement name 579]History in the baking": "Geschichte beim Backen", + "[Achievement name 580]Baby it's old outside": "Baby, es ist alt draußen", + "[Achievement name 581]Myriad": "Myriade", + "[Achievement name 582]Kaizen": "Kaizen", + "[Achievement name 583]Beyond quality": "Jenseits der Qualität", + "[Achievement name 584]Everything happens so much": "Alles passiert so oft", + "[Achievement name 585]I'll rest when I'm dead": "Ich werde mich ausruhen, wenn ich tot bin", + "[Achievement name 586]What do you get for the baker who has everything": "Was schenkt man dem Bäcker, der alles hat", + "[Achievement name 587]Bottomless pit": "Bodenlose Grube", + "[Achievement name 588]All the stars in heaven": "Alle Sterne am Himmel" +}); \ No newline at end of file diff --git a/gversion/gs/cookieclicker/loc/EN.js b/gversion/gs/cookieclicker/loc/EN.js new file mode 100644 index 0000000..417ebd6 --- /dev/null +++ b/gversion/gs/cookieclicker/loc/EN.js @@ -0,0 +1,3324 @@ +AddLanguage('EN','english',{ + "": { + "language": "en", + "plural-forms": "nplurals=2;plural=(n!=1);" + }, + "cookie": "/", + "sugar lump": "/", + "heavenly chip": "/", + "wrinkler": "/", + "building": "/", + "upgrade": "/", + "golden cookie": "/", + "grandmapocalypse": "/", + "%1 cookie": [ + "%1 cookie", + "%1 cookies" + ], + "%1 sugar lump": [ + "%1 sugar lump", + "%1 sugar lumps" + ], + "%1 heavenly chip": [ + "%1 heavenly chip", + "%1 heavenly chips" + ], + "%1 golden cookie": [ + "%1 golden cookie", + "%1 golden cookies" + ], + "%1 building": [ + "%1 building", + "%1 buildings" + ], + "%1 upgrade": [ + "%1 upgrade", + "%1 upgrades" + ], + "Yes": "/", + "No": "/", + "Click here": "/", + "Don't show this again": "/", + "Delete all": "/", + "Back": "/", + "Confirm": "/", + "All done!": "/", + "Load": "/", + "Save": "/", + "Quit": "/", + "Save & Quit": "/", + "Cancel": "/", + "Nevermind": "/", + "Random": "/", + "You have %1.": "/", + "Click": "/", + "Shift": "/", + "Shift-click": "/", + "Ctrl": "/", + "Ctrl-click": "/", + "Esc": "/", + "Cookies": "/", + "%1 day": [ + "%1 day", + "%1 days" + ], + "%1 hour": [ + "%1 hour", + "%1 hours" + ], + "%1 minute": [ + "%1 minute", + "%1 minutes" + ], + "%1 second": [ + "%1 second", + "%1 seconds" + ], + "less than 1 second": "/", + "in %1": "/", + "%1 ago": "/", + "%1 remaining": "/", + "%1 worth": "/", + "%1 of CpS": "/", + "%1% of bank": "/", + "per second:": "/", + "just now": "/", + "a long while": "/", + "forever": "/", + "Time remaining:": "/", + "Big clickable cookie": "/", + "Golden cookie": "/", + "Wrath cookie": "/", + "Reindeer": "/", + "Options": "/", + "General": "/", + "Settings": "/", + "Volume": "/", + "Volume (music)": "/", + "ON": "/", + "OFF": "/", + "Fancy graphics": "/", + "CSS filters": "/", + "visual improvements; disabling may improve performance": "/", + "Particles": "/", + "Numbers": "/", + "numbers that pop up when clicking the cookie": "/", + "Milk [setting]": "Milk", + "Cursors [setting]": "Cursors", + "visual display of your cursors": "/", + "Wobbly cookie": "/", + "Alt cookie sound": "/", + "Icon crates": "/", + "display boxes around upgrades and achievements in Stats": "/", + "Alt font": "/", + "your cookies are displayed using a monospace font": "/", + "Short numbers": "/", + "Fast notes": "/", + "notifications disappear much faster": "/", + "Closing warning": "/", + "the game will ask you to confirm when you close the window": "/", + "Defocus": "/", + "the game will be less resource-intensive when out of focus": "/", + "Extra buttons": "/", + "add options on buildings like Mute": "/", + "Lump confirmation": "/", + "the game will ask you to confirm before spending sugar lumps": "/", + "Custom grandmas": "/", + "some grandmas will be named after Patreon supporters": "/", + "Scary stuff": "/", + "Sleep mode timeout": "/", + "on slower computers, the game will put itself in sleep mode when it's inactive and starts to lag out; offline CpS production kicks in during sleep mode": "/", + "Music in background": "/", + "music will keep playing even when the game window isn't focused": "/", + "Cloud saving": "/", + "allow use of Steam Cloud for save backups": "/", + "Purge Cloud": "/", + "Current Cloud use:": "/", + "No Cloud access at the moment.": "/", + "Screen reader mode": "/", + "allows optimizations for screen readers; game will reload": "/", + "Discord status": "/", + "if Discord is on, show your game info as activity status": "/", + "Language": "/", + "Language: %1": "/", + "Change language": "/", + "note: this will save and reload your game": "/", + "Press %1 to toggle fullscreen.": "/", + "Other versions": "/", + "Beta": "/", + "Stats": "/", + "Shadow achievements": "/", + "These are feats that are either unfair or difficult to attain. They do not give milk.": "/", + "starter milk": "/", + "for %1 achievements": "/", + "appeased": "/", + "awoken": "/", + "displeased": "/", + "angered": "/", + "Cookies in bank:": "/", + "Cookies baked (this ascension):": "/", + "Cookies baked (all time):": "/", + "Cookies forfeited by ascending:": "/", + "Legacy started:": "/", + "with %1 ascension": [ + "with %1 ascension", + "with %1 ascensions" + ], + "Run started:": "/", + "Buildings owned:": "/", + "Cookies per second:": "/", + "Raw cookies per second:": "/", + "highest this ascension:": "/", + "multiplier:": "/", + "withered:": "/", + "Cookies per click:": "/", + "Cookie clicks:": "/", + "Hand-made cookies:": "/", + "Golden cookie clicks:": "/", + "Random drop multiplier:": "/", + "all time:": "/", + "Running version:": "/", + "Special": "/", + "Challenge mode:": "/", + "Seasonal event:": "/", + "Research:": "/", + "Grandmatriarchs status:": "/", + "Pledge:": "/", + "Wrinklers popped:": "/", + "Sugar lumps harvested:": "/", + "Reindeer found:": "/", + "Santa stages unlocked:": "/", + "Dragon training:": "/", + "Prestige": "/", + "at %1% of its potential (+%2% CpS)": "/", + "Prestige upgrades unlocked:": "/", + "Upgrades unlocked:": "/", + "Achievements unlocked:": "/", + "Kitten multiplier:": "/", + "Milk": "/", + "Milk:": "/", + "Milk flavors unlocked:": "/", + "Milk is gained with each achievement. It can unlock unique upgrades over time.": "/", + "Rank %1": "/", + "Automatic": "/", + "Plain milk": "/", + "Chocolate milk": "/", + "Raspberry milk": "/", + "Orange milk": "/", + "Caramel milk": "/", + "Banana milk": "/", + "Lime milk": "/", + "Blueberry milk": "/", + "Strawberry milk": "/", + "Vanilla milk": "/", + "Zebra milk": "/", + "Cosmic milk": "/", + "Flaming milk": "/", + "Sanguine milk": "/", + "Midas milk": "/", + "Midnight milk": "/", + "Green inferno milk": "/", + "Frostfire milk": "/", + "Honey milk": "/", + "Coffee milk": "/", + "Tea milk": "/", + "Coconut milk": "/", + "Cherry milk": "/", + "Soy milk": "/", + "Spiced milk": "/", + "Maple milk": "/", + "Mint milk": "/", + "Licorice milk": "/", + "Rose milk": "/", + "Dragonfruit milk": "/", + "Info": "/", + "About": "/", + "Cookie Clicker is a javascript game by %1 and %2.": "/", + "Music by %1.": "/", + "Useful links: %1, %2, %3, %4.": "/", + "This version of Cookie Clicker is 100% free, forever. Want to support us so we can keep developing games? Here's some ways you can help:%1": "/", + "Note: if you find a new bug after an update and you're using a 3rd-party add-on, make sure it's not just your add-on causing it!": "/", + "Warning: clearing your browser cache or cookies (what else?) will result in your save being wiped. Export your save and back it up first!": "/", + "Version history": "/", + "Official website": "/", + "Note: links will open in your web browser.": "/", + "Note: older update notes are in English.": "/", + "This feature is not yet available in your language.": "/", + "Restart with new changes": "/", + "Cookie Clicker is in sleep mode.": "/", + "Cookie Clicker is in sleep mode and generating offline cookies.": "/", + "%1 to resume from your save file.": "/", + "(this happens when too many frames are skipped at once,
usually when the game has been running in the background for a while)
(you can turn this feature off in the settings menu)": "/", + "Are you sure you want to close Cookie Clicker?": "/", + "Back up your save!": "/", + "Hello again! Just a reminder that you may want to back up your Cookie Clicker save every once in a while, just in case.
To do so, go to Options and hit \"Export save\" or \"Save to file\"!": "/", + "Save manually (the game autosaves every 60 seconds; shortcut: ctrl+S)": "/", + "You can use this to backup your save or to transfer it to another computer (shortcut for import: ctrl+O)": "/", + "Save to file": "/", + "Load from file": "/", + "Use this to keep backups on your computer": "/", + "Export save": "/", + "This is your save code.
Copy it and keep it somewhere safe!": "/", + "Import save": "/", + "Please paste in the code that was given to you on save export.": "/", + "Game saved": "/", + "Game loaded": "/", + "Error while saving": "/", + "Export your save instead!": "/", + "Error importing save": "/", + "Oops, looks like the import string is all wrong!": "/", + "You are attempting to load a save from a future version (v. %1; you are using v. %2).": "/", + "Sorry, you can't import saves from the classic version.": "/", + "Wipe save": "/", + "Delete all your progress, including your achievements": "/", + "Do you REALLY want to wipe your save?
You will lose your progress, your achievements, and your heavenly chips!": "/", + "Whoah now, are you really, REALLY sure you want to go through with this?
Don't say we didn't warn you!": "/", + "Game reset": "/", + "Good bye, cookies.": "/", + "Welcome back!": "/", + "You earned %1 while you were away.": "/", + "Mods": "/", + "Manage mods": "/", + "Publish mods": "/", + "Update published mods": "/", + "Only use mods from trusted sources. Some mods may require a game restart to take effect.": "/", + "Enable": "/", + "Disable": "/", + "Priority up": "/", + "Priority down": "/", + "New mod": "/", + "Select folder": "/", + "Select updated folder": "/", + "Select a mod.": "/", + "Open folder": "/", + "Open Workshop": "/", + "Open Workshop page": "/", + "Unsubscribe": "/", + "Local mod": "/", + "Open %1 folder": "/", + "Description": "/", + "Image": "/", + "Name": "/", + "Title": "/", + "Visibility": "/", + "Author": "/", + "File size": "/", + "Tags": "/", + "Dependencies": "/", + "Publish to Workshop": "/", + "Version": "/", + "Error!": "/", + "none": "/", + "Publishing...": "/", + "Updating...": "/", + "Success!": "/", + "Refresh": "/", + "Last update:": "/", + "Mods are loaded from top to bottom.": "/", + "Some mods couldn't be loaded:": "/", + "This tool allows you to upload new mods to the Steam Workshop.
You need to select a mod folder containing a properly-formatted %1 file.
See the included sample mods for examples.": "/", + "Mod data": "/", + "No mod data present.": "/", + "These are the mods present in your save data. You may delete some of this data to make your save file smaller.": "/", + "(loaded)": "/", + "%1 char": [ + "%1 char", + "%1 chars" + ], + "Check mod data": "/", + "view and delete save data created by mods": "/", + "New update!": "/", + "New version available: v. %1!": "/", + "Update note: \"%1\"": "/", + "Refresh to get it!": "/", + "You are currently playing Cookie Clicker on the %1 protocol.
The %2 version uses a different save slot than this one.
Click this lock to reload the page and switch to the %2 version!": "/", + "+%1 more notification.": [ + "+%1 more notification.", + "+%1 more notifications." + ], + "Christmas": "/", + "Valentine's day": "/", + "Business day": "/", + "Easter": "/", + "Halloween": "/", + "%1 has started!": "/", + "%1 is over.": "/", + "%1's bakery": "/", + "Name your bakery": "/", + "What should your bakery's name be?": "/", + "bakery random name, 1st half": [ + "Magic", + "Fantastic", + "Fancy", + "Sassy", + "Snazzy", + "Pretty", + "Cute", + "Pirate", + "Ninja", + "Zombie", + "Robot", + "Radical", + "Urban", + "Cool", + "Hella", + "Sweet", + "Awful", + "Double", + "Triple", + "Turbo", + "Techno", + "Disco", + "Electro", + "Dancing", + "Wonder", + "Mutant", + "Space", + "Science", + "Medieval", + "Future", + "Captain", + "Bearded", + "Lovely", + "Tiny", + "Big", + "Fire", + "Water", + "Frozen", + "Metal", + "Plastic", + "Solid", + "Liquid", + "Moldy", + "Shiny", + "Happy", + "Happy Little", + "Slimy", + "Tasty", + "Delicious", + "Hungry", + "Greedy", + "Lethal", + "Professor", + "Doctor", + "Power", + "Chocolate", + "Crumbly", + "Choklit", + "Righteous", + "Glorious", + "Mnemonic", + "Psychic", + "Frenetic", + "Hectic", + "Crazy", + "Royal", + "El", + "Von" + ], + "bakery random name, 2nd half": [ + "Cookie", + "Biscuit", + "Muffin", + "Scone", + "Cupcake", + "Pancake", + "Chip", + "Sprocket", + "Gizmo", + "Puppet", + "Mitten", + "Sock", + "Teapot", + "Mystery", + "Baker", + "Cook", + "Grandma", + "Click", + "Clicker", + "Spaceship", + "Factory", + "Portal", + "Machine", + "Experiment", + "Monster", + "Panic", + "Burglar", + "Bandit", + "Booty", + "Potato", + "Pizza", + "Burger", + "Sausage", + "Meatball", + "Spaghetti", + "Macaroni", + "Kitten", + "Puppy", + "Giraffe", + "Zebra", + "Parrot", + "Dolphin", + "Duckling", + "Sloth", + "Turtle", + "Goblin", + "Pixie", + "Gnome", + "Computer", + "Pirate", + "Ninja", + "Zombie", + "Robot" + ], + "bakery random name": [ + "Magic Cookie", + "Electro-Muffin", + "Cute Pancake", + "Chocolate Kitten", + "Vanilla Puppy", + "Pirate Robot", + "Captain Sausage", + "Tiny Monster", + "Space Zombie", + "Hungry Grandma", + "Techno-Burger", + "Turbo-Pizza", + "Medieval Dolphin", + "Psychic Turtle", + "Dancing Bandit", + "Mutant Baker", + "Tasty Biscuit", + "Happy Little Duckling", + "Lethal Macaroni" + ], + "%1, age %2": "/", + "Sugar lumps!": "/", + "Because you've baked a billion cookies in total, you are now attracting sugar lumps. They coalesce quietly near the top of your screen, under the Stats button.
You will be able to harvest them when they're ripe, after which you may spend them on all sorts of things!": "/", + "A sugar lump is coalescing here, attracted by your accomplishments.": "/", + "Your sugar lumps mature after %1,
ripen after %2,
and fall after %3.": "/", + "• Sugar lumps can be harvested when mature, though if left alone beyond that point they will start ripening (increasing the chance of harvesting them) and will eventually fall and be auto-harvested after some time.
• Sugar lumps are delicious and may be used as currency for all sorts of things.
• Once a sugar lump is harvested, another one will start growing in its place.
• Note that sugar lumps keep growing when the game is closed.": "/", + "This sugar lump has been exposed to time travel shenanigans and will take an excruciating %1 to reach maturity.": "/", + "This sugar lump is still growing and will take %1 to reach maturity.": "/", + "This sugar lump is mature and will be ripe in %1.
You may click it to harvest it now, but there is a 50% chance you won't get anything.": "/", + "This sugar lump is ripe! Click it to harvest it.
If you do nothing, it will auto-harvest in %1.": "/", + "This sugar lump grew to be bifurcated; harvesting it has a 50% chance of yielding two lumps.": "/", + "This sugar lump grew to be golden; harvesting it will yield 2 to 7 lumps, your current cookies will be doubled (capped to a gain of 24 hours of your CpS), and you will find 10% more golden cookies for the next 24 hours.": "/", + "This sugar lump was affected by the elders and grew to be meaty; harvesting it will yield between 0 and 2 lumps.": "/", + "This sugar lump is caramelized, its stickiness binding it to unexpected things; harvesting it will yield between 1 and 3 lumps and will refill your sugar lump cooldowns.": "/", + "You harvested %1 while you were away.": "/", + "Sugar blessing activated!": "/", + "Your cookies have been doubled.
+10% golden cookies for the next 24 hours.": "/", + "Sugar lump cooldowns cleared!": "/", + "Botched harvest!": "/", + "Do you want to spend %1 to %2?": "/", + "Heralds": "/", + "%1 herald": [ + "%1 herald", + "%1 heralds" + ], + "Heralds couldn't be loaded. There may be an issue with our servers, or you are playing the game locally.": "/", + "There are no heralds at the moment. Please consider donating to our Patreon!": "/", + "selflessly inspiring a boost in production for everyone, resulting in %1.": "/", + "+%1% cookies per second": "/", + "You are in a Born again run, and are not currently benefiting from heralds.": "/", + "You own the Heralds upgrade, and therefore benefit from the production boost.": "/", + "To benefit from the herald bonus, you need a special upgrade you do not yet own. You will permanently unlock it later in the game.": "/", + "Heralds are people who have donated to our highest Patreon tier, and are limited to 100.
Each herald gives everyone +1% CpS.
Heralds benefit everyone playing the game, regardless of whether you donated.": "/", + "Every %1 current players on Steam generates 1 herald, up to %2 heralds.
Each herald gives everyone +1% CpS.": "/", + "+%1!": "/", + "You found %1!": "/", + "Found %1!": "/", + "You also found %1!": "/", + "Lost %1!": "/", + "Sweet!
Found 1 sugar lump!": "/", + "Lucky!": "/", + "Ruin!": "/", + "Cookie chain over. You made %1.": "/", + "Cookie chain": "/", + "Cookie chain broken.
You made %1.": "/", + "Cookie blab": [ + "Cookie crumbliness x3 for 60 seconds!", + "Chocolatiness x7 for 77 seconds!", + "Dough elasticity halved for 66 seconds!", + "Golden cookie shininess doubled for 3 seconds!", + "World economy halved for 30 seconds!", + "Grandma kisses 23% stingier for 45 seconds!", + "Thanks for clicking!", + "Fooled you! This one was just a test.", + "Golden cookies clicked +1!", + "Your click has been registered. Thank you for your cooperation.", + "Thanks! That hit the spot!", + "Thank you. A team has been dispatched.", + "They know.", + "Oops. This was just a chocolate cookie with shiny aluminium foil." + ], + "Exploded a wrinkler": "/", + "Exploded a shiny wrinkler": "/", + "Swallowed:": "/", + "Reindeer names": [ + "Dasher", + "Dancer", + "Prancer", + "Vixen", + "Comet", + "Cupid", + "Donner", + "Blitzen", + "Rudolph" + ], + "The reindeer gives you %1.": "/", + "You are also rewarded with %1!": "/", + "You are granted %1.": "/", + "Found a present!": "/", + "You find a present which contains...": "/", + "Evolve": "/", + "Festive test tube": "/", + "Festive ornament": "/", + "Festive wreath": "/", + "Festive tree": "/", + "Festive present": "/", + "Festive elf fetus": "/", + "Elf toddler": "/", + "Elfling": "/", + "Young elf": "/", + "Bulky elf": "/", + "Nick": "/", + "Santa Claus": "/", + "Elder Santa": "/", + "True Santa": "/", + "Final Claus": "/", + "Dragon egg": "/", + "Shivering dragon egg": "/", + "Krumblor, cookie hatchling": "/", + "Krumblor, cookie dragon": "/", + "Train %1": "/", + "Aura: %1": "/", + "Chip it": "/", + "Hatch it": "/", + "Bake dragon cookie": "/", + "Delicious!": "/", + "Train secondary aura": "/", + "Lets you use two dragon auras simultaneously": "/", + "Your dragon is fully trained.": "/", + "%1 of every building": "/", + "No aura": "/", + "Set your dragon's aura": "/", + "Set your dragon's secondary aura": "/", + "Select an aura from those your dragon knows.": "/", + "One tenth of every other dragon aura, combined.": "/", + "Switching your aura is free because you own no buildings.": "/", + "The cost of switching your aura is %1.
This will affect your CpS!": "/", + "Your dragon dropped something!": "/", + "Breath of Milk": "/", + "Dragon Cursor": "/", + "Elder Battalion": "/", + "Reaper of Fields": "/", + "Earth Shatterer": "/", + "Master of the Armory": "/", + "Fierce Hoarder": "/", + "Dragon God": "/", + "Arcane Aura": "/", + "Dragonflight": "/", + "Ancestral Metamorphosis": "/", + "Unholy Dominion": "/", + "Epoch Manipulator": "/", + "Mind Over Matter": "/", + "Radiant Appetite": "/", + "Dragon's Fortune": "/", + "Dragon's Curve": "/", + "Reality Bending": "/", + "Dragon Orbs": "/", + "Supreme Intellect": "/", + "News :": "/", + "Ticker (grandma)": [ + "Moist cookies.", + "We're nice grandmas.", + "Indentured servitude.", + "Come give grandma a kiss.", + "Why don't you visit more often?", + "Call me..." + ], + "Ticker (threatening grandma)": [ + "Absolutely disgusting.", + "You make me sick.", + "You disgust me.", + "We rise.", + "It begins.", + "It'll all be over soon.", + "You could have stopped it." + ], + "Ticker (angry grandma)": [ + "It has betrayed us, the filthy little thing.", + "It tried to get rid of us, the nasty little thing.", + "It thought we would go away by selling us. How quaint.", + "I can smell your rotten cookies." + ], + "Ticker (grandmas return)": [ + "shrivel", + "writhe", + "throb", + "gnaw", + "We will rise again.", + "A mere setback.", + "We are not satiated.", + "Too late." + ], + "Ticker (grandma invasion start)": [ + "millions of old ladies reported missing!", + "families around the continent report agitated, transfixed grandmothers!", + "nurses report \"strange scent of cookie dough\" around female elderly patients!" + ], + "Ticker (grandma invasion rise)": [ + "town in disarray as strange old ladies break into homes to abduct infants and baking utensils!", + "whole continent undergoing mass exodus of old ladies!", + "old women freeze in place in streets, ooze warm sugary syrup!" + ], + "Ticker (grandma invasion full)": [ + "wrinkled \"flesh tendrils\" visible from space!", + "all hope lost as writhing mass of flesh and dough engulfs whole city!", + "nightmare continues as wrinkled acres of flesh expand at alarming speeds!" + ], + "Ticker (Farm)": [ + "cookie farms release harmful chocolate in our rivers, says scientist!", + "genetically-modified chocolate controversy strikes cookie farmers!", + "farm cookies deemed unfit for vegans, says nutritionist." + ], + "Ticker (Mine)": [ + "is our planet getting lighter? Experts examine the effects of intensive chocolate mining.", + "chocolate mines found to cause earthquakes and sinkholes!", + "depths of chocolate mines found to house \"peculiar, chocolaty beings\"!" + ], + "Ticker (Factory)": [ + "cookie factories linked to global warming!", + "cookie factories on strike, robotic minions employed to replace workforce!", + "cookie factories on strike - workers demand to stop being paid in cookies!" + ], + "Ticker (Bank)": [ + "cookie loans on the rise as people can no longer afford them with regular money.", + "cookies slowly creeping up their way as a competitor to traditional currency!", + "most bakeries now fitted with ATMs to allow for easy cookie withdrawals and deposits." + ], + "Ticker (Temple)": [ + "recently-discovered chocolate temples now sparking new cookie-related cult; thousands pray to Baker in the sky!", + "theists of the world discover new cookie religion - \"Oh boy, guess we were wrong all along!\"", + "explorers bring back ancient artifact from abandoned temple; archeologists marvel at the centuries-old rolling pin!" + ], + "Ticker (Wizard tower)": [ + "get your new charms and curses at the yearly National Spellcrafting Fair! Exclusive prices on runes and spellbooks.", + "cookie wizards deny involvement in shockingly ugly newborn - infant is \"honestly grody-looking, but natural\", say doctors.", + "\"Any sufficiently crude magic is indistinguishable from technology\", claims renowned technowizard." + ], + "Ticker (Shipment)": [ + "new chocolate planet found, becomes target of cookie-trading spaceships!", + "massive chocolate planet found with 99.8% certified pure dark chocolate core!", + "chocolate-based organisms found on distant planet!" + ], + "Ticker (Alchemy lab)": [ + "national gold reserves dwindle as more and more of the precious mineral is turned to cookies!", + "silver found to also be transmutable into white chocolate!", + "defective alchemy lab shut down, found to convert cookies to useless gold." + ], + "Ticker (Portal)": [ + "nation worried as more and more unsettling creatures emerge from dimensional portals!", + "tourism to cookieverse popular with bored teenagers! Casualty rate as high as 73%!", + "cookieverse portals suspected to cause fast aging and obsession with baking, says study." + ], + "Ticker (Time machine)": [ + "time machines involved in history-rewriting scandal! Or are they?", + "cookies brought back from the past \"unfit for human consumption\", says historian.", + "\"I have seen the future,\" says time machine operator, \"and I do not wish to go there again.\"" + ], + "Ticker (Antimatter condenser)": [ + "whole town seemingly swallowed by antimatter-induced black hole; more reliable sources affirm town \"never really existed\"!", + "researchers conclude that what the cookie industry needs, first and foremost, is \"more magnets\".", + "first antimatter condenser successfully turned on, doesn't rip apart reality!" + ], + "Ticker (Prism)": [ + "scientists warn against systematically turning light into matter - One day, we'll end up with all matter and no light!\"", + "cookies now being baked at the literal speed of light thanks to new prismatic contraptions.", + "world citizens advised \"not to worry\" about frequent atmospheric flashes." + ], + "Ticker (Chancemaker)": [ + "strange statistical anomalies continue as weather forecast proves accurate an unprecedented 3 days in a row!", + "local casino ruined as all gamblers somehow hit a week-long winning streak! \"We might still be okay\", says owner before being hit by lightning 47 times.", + "neighboring nation somehow elects president with sensible policies in freak accident of random chance!" + ], + "Ticker (Fractal engine)": [ + "local man \"done with Cookie Clicker\", finds the constant self-references \"grating and on-the-nose\".", + "local guru claims \"there's a little bit of ourselves in everyone\", under investigation for alleged cannibalism.", + "polls find idea of cookies made of cookies \"acceptable\" - \"at least we finally know what's in them\", says interviewed citizen." + ], + "Ticker (Javascript console)": [ + "coding is hip! More and more teenagers turn to technical fields like programming, ensuring a future robot apocalypse and the doom of all mankind.", + "developers unsure what to call their new javascript libraries as all combinations of any 3 dictionary words have already been taken.", + "strange fad has parents giving their newborns names such as Emma.js or Liam.js. At least one Baby.js reported." + ], + "Ticker (Idleverse)": [ + "is another you living out their dreams in an alternate universe? Probably, you lazy bum!", + "\"I find solace in the knowledge that at least some of my alternate selves are probably doing fine out there\", says citizen's last remaining exemplar in the multiverse.", + "comic book writers point to actual multiverse in defense of dubious plot points. \"See? I told you it wasn't 'hackneyed and contrived'!\"" + ], + "Ticker (Cortex baker)": [ + "runt cortex baker identified with an IQ of only quintuple digits: \"just a bit of a dummy\", say specialists.", + "astronomers warn of cortex baker trajectory drift, fear future head-on collisions resulting in costly concussions.", + "cortex baker wranglers kindly remind employees that cortex bakers are the bakery's material property and should not be endeared with nicknames." + ], + "Ticker (Halloween)": [ + "pagan rituals on the rise as children around the world dress up in strange costumes and blackmail homeowners for candy.", + "children around the world \"lost and confused\" as any and all Halloween treats have been replaced by cookies.", + "strange twisting creatures amass around cookie factories, nibble at assembly lines." + ], + "Ticker (Christmas)": [ + "bearded maniac spotted speeding on flying sleigh! Investigation pending.", + "obese jolly lunatic still on the loose, warn officials. \"Keep your kids safe and board up your chimneys. We mean it.\"", + "mysterious festive entity with quantum powers still wrecking havoc with army of reindeer, officials say.", + "\"You mean he just gives stuff away for free?!\", concerned moms ask. \"Personally, I don't trust his beard.\"", + "children shocked as they discover Santa Claus isn't just their dad in a costume after all!
\"I'm reassessing my life right now\", confides Laura, aged 6." + ], + "Ticker (Valentines)": [ + "love's in the air, according to weather specialists. Face masks now offered in every city to stunt airborne infection.", + "marrying a cookie - deranged practice, or glimpse of the future?", + "heart-shaped candies overtaking sweets business, offering competition to cookie empire." + ], + "Ticker (Easter)": [ + "long-eared critters with fuzzy tails invade suburbs, spread terror and chocolate!", + "egg-laying rabbits \"not quite from this dimension\", warns biologist; advises against petting, feeding, or cooking the creatures.", + "mysterious rabbits found to be egg-layers, but mammalian, hinting at possible platypus ancestry." + ], + "Ticker (misc)": [ + "doctors recommend twice-daily consumption of fresh cookies.", + "doctors advise against new cookie-free fad diet.", + "doctors warn mothers about the dangers of \"home-made cookies\".", + "\"I'm not addicted to cookies. That's just speculation by fans with too much free time\", reveals celebrity.", + "\"alright, I'll say it - I've never eaten a single cookie in my life\", reveals celebrity.", + "\"cookies helped me stay thin and healthy\", reveals celebrity.", + "man robs bank, buys cookies.", + "new study suggests cookies neither speed up nor slow down aging, but instead \"take you in a different direction\".", + "man found allergic to cookies; \"what a weirdo\", says family.", + "cookie shortage strikes town, people forced to eat cupcakes; \"just not the same\", concedes mayor.", + "\"you gotta admit, all this cookie stuff is a bit ominous\", says confused idiot.", + "mysterious illegal cookies seized; \"tastes terrible\", says police.", + "\"Ook\", says interviewed orangutan.", + "is our media controlled by the cookie industry? This could very well be the case, says crackpot conspiracy theorist.", + "\"at this point, cookies permeate the economy\", says economist. \"If we start eating anything else, we're all dead.\"", + "cookies now illegal in some backwards country nobody cares about. Political tensions rising; war soon, hopefully." + ], + "You feel like making cookies. But nobody wants to eat your cookies.": "/", + "Your first batch goes to the trash. The neighborhood raccoon barely touches it.": "/", + "Your family accepts to try some of your cookies.": "/", + "Your cookies are popular in the neighborhood.": "/", + "People are starting to talk about your cookies.": "/", + "Your cookies are talked about for miles around.": "/", + "Your cookies are renowned in the whole town!": "/", + "Your cookies bring all the boys to the yard.": "/", + "Your cookies now have their own website!": "/", + "Your cookies are worth a lot of money.": "/", + "Your cookies sell very well in distant countries.": "/", + "People come from very far away to get a taste of your cookies.": "/", + "Kings and queens from all over the world are enjoying your cookies.": "/", + "There are now museums dedicated to your cookies.": "/", + "A national day has been created in honor of your cookies.": "/", + "Your cookies have been named a part of the world wonders.": "/", + "History books now include a whole chapter about your cookies.": "/", + "Your cookies have been placed under government surveillance.": "/", + "The whole planet is enjoying your cookies!": "/", + "Strange creatures from neighboring planets wish to try your cookies.": "/", + "Elder gods from the whole cosmos have awoken to taste your cookies.": "/", + "Beings from other dimensions lapse into existence just to get a taste of your cookies.": "/", + "Your cookies have achieved sentience.": "/", + "The universe has now turned into cookie dough, to the molecular level.": "/", + "Your cookies are rewriting the fundamental laws of the universe.": "/", + "A local news station runs a 10-minute segment about your cookies. Success!
(you win a cookie)": "/", + "it's time to stop playing": "/", + "Today is your lucky day!": "/", + "Your lucky numbers are:": "/", + "Fortune!": "/", + "A golden cookie has appeared.": "/", + "You gain one hour of your CpS (capped at double your bank).": "/", + "You've unlocked a new upgrade.": "/", + "Wish granted. Golden cookie spawned.": "/", + "help me!": "/", + "Ascend": "/", + "You've been on this run for %1.": "/", + "Your prestige level is currently %1.
(CpS +%2%)": "/", + "Ascending now would grant you no prestige.": "/", + "Ascending now would grant you
1 prestige level (+1% CpS)
and 1 heavenly chip to spend.": "/", + "Ascending now would grant you
%1 prestige levels (+%2% CpS)
and %3 heavenly chips to spend.": "/", + "You need %1 more cookies for the next level.": "/", + "Do you REALLY want to ascend?
You will lose your progress and start over from scratch.
All your cookies will be converted into prestige and heavenly chips.": "/", + "You will keep your achievements.": "/", + "You will keep your achievements, building levels and sugar lumps.": "/", + "Ascending": "/", + "So long, cookies.": "/", + "You forfeit your %1.": "/", + "Prestige level:": "/", + "Heavenly chips:": "/", + "%1 prestige level": [ + "%1 prestige level", + "%1 prestige levels" + ], + "You gain %1!": "/", + "Reincarnate": "/", + "You are ascending.
Drag the screen around
or use arrow keys!
When you're ready,
click Reincarnate.": "/", + "Each prestige level grants you a permanent +%1% CpS.
The more levels you have, the more cookies they require.": "/", + "Heavenly chips are used to buy heavenly upgrades.
You gain 1 chip every time you gain a prestige level.": "/", + "Click this once you've bought
everything you need!": "/", + "Are you ready to return to the mortal world?": "/", + "Hello, cookies!": "/", + "Challenge mode for the next run:": "/", + "Challenge modes apply special modifiers to your next ascension.
Click to change.": "/", + "Select a challenge mode": "/", + "None [ascension type]": "None", + "No special modifiers.": "/", + "Born again [ascension type]": "Born again", + "This run will behave as if you'd just started the game from scratch. Prestige levels and heavenly upgrades will have no effect, as will sugar lumps and building levels. Perma-upgrades and minigames will be unavailable.
Some achievements are only available in this mode.": "/", + "Your bingo center/research facility is conducting experiments.": "/", + "Research has begun": "/", + "Research complete": "/", + "You have discovered: %1.": "/", + "Valentine's Day!": "/", + "It's Valentine's season!
Love's in the air and cookies are just that much sweeter!": "/", + "Business Day!": "/", + "It's Business season!
Don't panic! Things are gonna be looking a little more corporate for a few days.": "/", + "Halloween!": "/", + "It's Halloween season!
Everything is just a little bit spookier!": "/", + "Christmas time!": "/", + "It's Christmas season!
Bring good cheer to all and you just may get cookies in your stockings!": "/", + "Easter!": "/", + "It's Easter season!
Keep an eye out and you just might click a rabbit or two!": "/", + "[Tag]Heavenly": "Heavenly", + "[Tag]Tech": "Tech", + "[Tag]Cookie": "Cookie", + "[Tag]Debug": "Debug", + "[Tag]Switch": "Switch", + "[Tag]Upgrade": "Upgrade", + "Tier:": "/", + "[Tier]Plain": "Plain", + "[Tier]Berrylium": "Berrylium", + "[Tier]Blueberrylium": "Blueberrylium", + "[Tier]Chalcedhoney": "Chalcedhoney", + "[Tier]Buttergold": "Buttergold", + "[Tier]Sugarmuck": "Sugarmuck", + "[Tier]Jetmint": "Jetmint", + "[Tier]Cherrysilver": "Cherrysilver", + "[Tier]Hazelrald": "Hazelrald", + "[Tier]Mooncandy": "Mooncandy", + "[Tier]Astrofudge": "Astrofudge", + "[Tier]Alabascream": "Alabascream", + "[Tier]Iridyum": "Iridyum", + "[Tier]Synergy I": "Synergy I", + "[Tier]Synergy II": "Synergy II", + "[Tier]Fortune": "Fortune", + "[Tier]Self-referential": "Self-referential", + "Vaulted": "/", + "Researched": "/", + "Purchased": "/", + "Unlocked forever": "/", + "Click to learn!": "/", + "Click to unlearn!": "/", + "Upgrade": "/", + "Upgrades": "/", + "Achievement": "/", + "Achievements": "/", + "Shadow Achievement": "/", + "Unlocked": "/", + "Locked": "/", + "Source:": "/", + "Click to win!": "/", + "Click to lose!": "/", + "Legacy": "/", + "Buildings": "/", + "Switches": "/", + "Vault": "/", + "Research": "/", + "Store": "/", + "sacrifice %1": "/", + "Click to purchase.": "/", + "Click to open selector.": "/", + "Click to toggle.": "/", + "Click to research.": "/", + "%1 to vault.": "/", + "%1 to unvault.": "/", + "Upgrade is vaulted and will not be auto-purchased.": "/", + "Upgrade for %1": "/", + "Buy": "/", + "Sell": "/", + "all": "/", + "max": "/", + "Buy all upgrades": "/", + "Will instantly purchase every upgrade you can afford, starting from the cheapest one.
Upgrades in the vault will not be auto-purchased.
You may place an upgrade into the vault by Shift-clicking on it.": "/", + "each %1 produces %2 per second": "/", + "%1 producing %2 per second": "/", + "%1% of total CpS": "/", + "%1 produced so far": "/", + "...also boosting some other buildings:": "/", + "all combined, these boosts account for %1 per second (%2% of total CpS)": "/", + "owned: %1": "/", + "free: %1!": "/", + "Level %1 %2": "/", + "Granting +%1% %2 CpS.": "/", + "Click to level up for %1.": "/", + "Levelling up this building unlocks a minigame.": "/", + "level up your %1": "/", + "Mute": "/", + "Minimize this building": "/", + "Muted:": "/", + "Click to unmute": "/", + "Show": "/", + "Hide": "/", + "Names in white were submitted by our supporters on Patreon.": "/", + "You can also press %1 to bulk-buy or sell %2 of a building at a time, or %3 for %4.": "/", + "Investment": "/", + "You're not sure what this does, you just know it means profit.": "/", + "Cursor": "/", + "cursor": "/", + "cursors": "/", + "%1 cursor": [ + "%1 cursor", + "%1 cursors" + ], + "[Cursor quote]Autoclicks once every 10 seconds.": "Autoclicks once every 10 seconds.", + "[Cursor business name]Rolling pin": "Rolling pin", + "[Cursor business quote]Essential in flattening dough. The first step in cookie-making.": "Essential in flattening dough. The first step in cookie-making.", + "Grandma": "/", + "grandma": "/", + "grandmas": "/", + "%1 grandma": [ + "%1 grandma", + "%1 grandmas" + ], + "[Grandma quote]A nice grandma to bake more cookies.": "A nice grandma to bake more cookies.", + "[Grandma business name]Oven": "Oven", + "[Grandma business quote]A crucial element of baking cookies.": "A crucial element of baking cookies.", + "Farm": "/", + "farm": "/", + "farms": "/", + "%1 farm": [ + "%1 farm", + "%1 farms" + ], + "[Farm quote]Grows cookie plants from cookie seeds.": "Grows cookie plants from cookie seeds.", + "[Farm business name]Kitchen": "Kitchen", + "[Farm business quote]The more kitchens, the more cookies your employees can produce.": "The more kitchens, the more cookies your employees can produce.", + "Mine": "/", + "mine": "/", + "mines": "/", + "%1 mine": [ + "%1 mine", + "%1 mines" + ], + "[Mine quote]Mines out cookie dough and chocolate chips.": "Mines out cookie dough and chocolate chips.", + "[Mine business name]Secret recipe": "Secret recipe", + "[Mine business quote]These give you the edge you need to outsell those pesky competitors.": "These give you the edge you need to outsell those pesky competitors.", + "Factory": "/", + "factory": "/", + "factories": "/", + "%1 factory": [ + "%1 factory", + "%1 factories" + ], + "[Factory quote]Produces large quantities of cookies.": "Produces large quantities of cookies.", + "[Factory business name]Factory": "Factory", + "[Factory business quote]Mass production is the future of baking. Seize the day, and synergize!": "Mass production is the future of baking. Seize the day, and synergize!", + "Bank": "/", + "bank": "/", + "banks": "/", + "%1 bank": [ + "%1 bank", + "%1 banks" + ], + "[Bank quote]Generates cookies from interest.": "Generates cookies from interest.", + "[Bank business name]Investor": "Investor", + "[Bank business quote]Business folks with a nose for profit, ready to finance your venture as long as there's money to be made.": "Business folks with a nose for profit, ready to finance your venture as long as there's money to be made.", + "Temple": "/", + "temple": "/", + "temples": "/", + "%1 temple": [ + "%1 temple", + "%1 temples" + ], + "[Temple quote]Full of precious, ancient chocolate.": "Full of precious, ancient chocolate.", + "[Temple business name]Like": "Like", + "[Temple business quote]Your social media page is going viral! Amassing likes is the key to a lasting online presence and juicy advertising deals.": "Your social media page is going viral! Amassing likes is the key to a lasting online presence and juicy advertising deals.", + "Wizard tower": "/", + "wizard tower": "/", + "wizard towers": "/", + "%1 wizard tower": [ + "%1 wizard tower", + "%1 wizard towers" + ], + "[Wizard tower quote]Summons cookies with magic spells.": "Summons cookies with magic spells.", + "[Wizard tower business name]Meme": "Meme", + "[Wizard tower business quote]Cookie memes are all the rage! With just the right amount of social media astroturfing, your brand image will be all over the cyberspace.": "Cookie memes are all the rage! With just the right amount of social media astroturfing, your brand image will be all over the cyberspace.", + "Shipment": "/", + "shipment": "/", + "shipments": "/", + "%1 shipment": [ + "%1 shipment", + "%1 shipments" + ], + "[Shipment quote]Brings in fresh cookies from the cookie planet.": "Brings in fresh cookies from the cookie planet.", + "[Shipment business name]Supermarket": "Supermarket", + "[Shipment business quote]A gigantic cookie emporium - your very own retail chain.": "A gigantic cookie emporium - your very own retail chain.", + "Alchemy lab": "/", + "alchemy lab": "/", + "alchemy labs": "/", + "%1 alchemy lab": [ + "%1 alchemy lab", + "%1 alchemy labs" + ], + "[Alchemy lab quote]Turns gold into cookies!": "Turns gold into cookies!", + "[Alchemy lab business name]Stock share": "Stock share", + "[Alchemy lab business quote]You're officially on the stock market, and everyone wants a piece!": "You're officially on the stock market, and everyone wants a piece!", + "Portal": "/", + "portal": "/", + "portals": "/", + "%1 portal": [ + "%1 portal", + "%1 portals" + ], + "[Portal quote]Opens a door to the Cookieverse.": "Opens a door to the Cookieverse.", + "[Portal business name]TV show": "TV show", + "[Portal business quote]Your cookies have their own sitcom! Hilarious baking hijinks set to the cheesiest laughtrack.": "Your cookies have their own sitcom! Hilarious baking hijinks set to the cheesiest laughtrack.", + "Time machine": "/", + "time machine": "/", + "time machines": "/", + "%1 time machine": [ + "%1 time machine", + "%1 time machines" + ], + "[Time machine quote]Brings cookies from the past, before they were even eaten.": "Brings cookies from the past, before they were even eaten.", + "[Time machine business name]Theme park": "Theme park", + "[Time machine business quote]Cookie theme parks, full of mascots and roller-coasters. Build one, build a hundred!": "Cookie theme parks, full of mascots and roller-coasters. Build one, build a hundred!", + "Antimatter condenser": "/", + "antimatter condenser": "/", + "antimatter condensers": "/", + "%1 antimatter condenser": [ + "%1 antimatter condenser", + "%1 antimatter condensers" + ], + "[Antimatter condenser quote]Condenses the antimatter in the universe into cookies.": "Condenses the antimatter in the universe into cookies.", + "[Antimatter condenser business name]Cookiecoin": "Cookiecoin", + "[Antimatter condenser business quote]A virtual currency, already replacing regular money in some small countries.": "A virtual currency, already replacing regular money in some small countries.", + "Prism": "/", + "prism": "/", + "prisms": "/", + "%1 prism": [ + "%1 prism", + "%1 prisms" + ], + "[Prism quote]Converts light itself into cookies.": "Converts light itself into cookies.", + "[Prism business name]Corporate country": "Corporate country", + "[Prism business quote]You've made it to the top, and you can now buy entire nations to further your corporate greed. Godspeed.": "You've made it to the top, and you can now buy entire nations to further your corporate greed. Godspeed.", + "Chancemaker": "/", + "chancemaker": "/", + "chancemakers": "/", + "%1 chancemaker": [ + "%1 chancemaker", + "%1 chancemakers" + ], + "[Chancemaker quote]Generates cookies out of thin air through sheer luck.": "Generates cookies out of thin air through sheer luck.", + "[Chancemaker business name]Privatized planet": "Privatized planet", + "[Chancemaker business quote]Actually, you know what's cool? A whole planet dedicated to producing, advertising, selling, and consuming your cookies.": "Actually, you know what's cool? A whole planet dedicated to producing, advertising, selling, and consuming your cookies.", + "Fractal engine": "/", + "fractal engine": "/", + "fractal engines": "/", + "%1 fractal engine": [ + "%1 fractal engine", + "%1 fractal engines" + ], + "[Fractal engine quote]Turns cookies into even more cookies.": "Turns cookies into even more cookies.", + "[Fractal engine business name]Senate seat": "Senate seat", + "[Fractal engine business quote]Only through political dominion can you truly alter this world to create a brighter, more cookie-friendly future.": "Only through political dominion can you truly alter this world to create a brighter, more cookie-friendly future.", + "Javascript console": "/", + "javascript console": "/", + "javascript consoles": "/", + "%1 javascript console": [ + "%1 javascript console", + "%1 javascript consoles" + ], + "[Javascript console quote]Creates cookies from the very code this game was written in.": "Creates cookies from the very code this game was written in.", + "[Javascript console business name]Doctrine": "Doctrine", + "[Javascript console business quote]Taking many forms -religion, culture, philosophy- a doctrine may, when handled properly, cause a lasting impact on civilizations, reshaping minds and people and ensuring all future generations share a singular goal - the production, and acquisition, of more cookies.": "Taking many forms -religion, culture, philosophy- a doctrine may, when handled properly, cause a lasting impact on civilizations, reshaping minds and people and ensuring all future generations share a singular goal - the production, and acquisition, of more cookies.", + "Idleverse": "/", + "idleverse": "/", + "idleverses": "/", + "%1 idleverse": [ + "%1 idleverse", + "%1 idleverses" + ], + "[Idleverse quote]There's been countless other idle universes running alongside our own. You've finally found a way to hijack their production and convert whatever they've been making into cookies!": "There's been countless other idle universes running alongside our own. You've finally found a way to hijack their production and convert whatever they've been making into cookies!", + "[Idleverse business name]Lateral expansions": "Lateral expansions", + "[Idleverse business quote]Sometimes the best way to keep going up is sideways. Diversify your ventures through non-cookie investments.": "Sometimes the best way to keep going up is sideways. Diversify your ventures through non-cookie investments.", + "Cortex baker": "/", + "cortex baker": "/", + "cortex bakers": "/", + "%1 cortex baker": [ + "%1 cortex baker", + "%1 cortex bakers" + ], + "[Cortex baker quote]These artificial brains the size of planets are capable of simply dreaming up cookies into existence. Time and space are inconsequential. Reality is arbitrary.": "These artificial brains the size of planets are capable of simply dreaming up cookies into existence. Time and space are inconsequential. Reality is arbitrary.", + "[Cortex baker business name]Think tank": "Think tank", + "[Cortex baker business quote]There's only so many ways you can bring in more profit. Or is there? Hire the most brilliant experts in the known universe and let them scrape their brains for you!": "There's only so many ways you can bring in more profit. Or is there? Hire the most brilliant experts in the known universe and let them scrape their brains for you!", + "CpS": "/", + "cookies/click": "/", + "%1 CpS": "/", + "golden cookie gains": "/", + "golden cookie frequency": "/", + "golden cookie duration": "/", + "golden cookie effect duration": "/", + "wrath cookie gains": "/", + "wrath cookie frequency": "/", + "wrath cookie duration": "/", + "wrath cookie effect duration": "/", + "reindeer gains": "/", + "reindeer frequency": "/", + "reindeer duration": "/", + "random drops": "/", + "milk effects": "/", + "wrinkler spawn rate": "/", + "wrinkler appetite": "/", + "upgrade costs": "/", + "building costs": "/", + "Clicking is %1% more powerful.": "/", + "All cookie production multiplied by %1.": "/", + "+%1 CpS": "/", + "+%1% base CpS.": "/", + "%1 are twice as efficient.": "/", + "%1 are %2% more powerful.": "/", + "Unshackled! +%1% extra production.": "/", + "Tiered upgrades for %1 provide an extra +%2% production.
Only works with unshackled upgrade tiers.": "/", + "Unshackles all %1-tier upgrades, making them more powerful.
Only applies to unshackled buildings.": "/", + "The mouse and cursors are twice as efficient.": "/", + "The mouse and cursors gain +%1 cookies for each non-cursor building owned.": "/", + "Grandmas gain +%1% CpS for each non-grandma building.": "/", + "You gain more CpS the more milk you have.": "/", + "Milk is %1% more powerful.": "/", + "Cookie production multiplier +%1%.": "/", + "Cookie production multiplier +%1% permanently.": "/", + "Cookie production multiplier +%1% per Santa's levels.": "/", + "Cookie production multiplier +%1% for every year Cookie Clicker has existed (currently: +%2%).": "/", + "Cookie production multiplier +%1% for every building type level %2 or higher.": "/", + "Clicking gains +%1% of your CpS.": "/", + "%1 gain +%2% CpS per %3.": "/", + "Multiplies the gain from %1 by %2.": "/", + "Grandma-operated science lab and leisure club.
Grandmas are 4 times as efficient.
Regularly unlocks new upgrades.": "/", + "Each %1 gains +%2 base CpS per %3.": "/", + "Note: the grandmothers are growing restless. Do not encourage them.": "/", + "Note: proceeding any further in scientific research may have unexpected results. You have been warned.": "/", + "Note: this is a bad idea.": "/", + "Warning: purchasing this will have unexpected, and potentially undesirable results!
It's all downhill from here. You have been warned!

Purchase anyway?": "/", + "Contains the wrath of the elders, at least for a while.": "/", + "Puts a permanent end to the elders' wrath, at the cost of %1% of your CpS.": "/", + "You will get %1% of your CpS back, but the grandmatriarchs will return.": "/", + "Time remaining until pledge runs out:": "/", + "You haven't pledged to the elders yet.": "/", + "You've pledged to the elders %1 times.": [ + "You've pledged to the elders once.", + "You've pledged to the elders %1 times." + ], + "Research takes only 5 seconds.": "/", + "Golden cookies appear twice as often and stay twice as long.": "/", + "Golden cookies appear %1% more often.": "/", + "Golden cookies appear %1% more often during %2.": "/", + "Golden cookies appear really often.": "/", + "Golden cookie effects last twice as long.": "/", + "Golden cookie effects last %1% longer.": "/", + "Golden cookies stay %1% longer.": "/", + "Golden cookies give %1% more cookies.": "/", + "Wrath cookies give %1% more cookies.": "/", + "+%1% CpS per golden cookie on-screen, multiplicative.": "/", + "With no buffs and no golden cookies on screen, selling your most powerful building has %1% chance to summon one.": "/", + "Confers various powers to your minigames while active.
See the bottom of each minigame for more details.": "/", + "Elder pledges last twice as long.": "/", + "Can toggle upgrades on and off at will in the stats menu.": "/", + "You keep producing cookies even while the game is closed.": "/", + "Unlocks %1% of the potential of your prestige level.": "/", + "Subsequent research will be %1 times as fast.": "/", + "Wrinklers appear %1 times as fast.": "/", + "Wrinklers spawn much more frequently.": "/", + "Wrinklers explode into %1% more cookies.": "/", + "Unlocks... something.": "/", + "In the festive hat, you find...": "/", + "a festive test tube
and %1.": "/", + "Cost scales with CpS.": "/", + "Cost scales with Santa level.": "/", + "Cost scales with how many eggs you own.": "/", + "Reindeer appear %1% more often.": "/", + "Reindeer appear twice as frequently.": "/", + "Reindeer are twice as slow.": "/", + "Reindeer give twice as much.": "/", + "Buildings sell back for %1% instead of %2%.": "/", + "All buildings are %1% cheaper.": "/", + "All upgrades are %1% cheaper.": "/", + "All buildings and upgrades are %1% cheaper.": "/", + "%1 are %2% more efficient and %3% cheaper.": "/", + "Cookie upgrades are %1 times cheaper.": "/", + "Random drops are %1% more common.": "/", + "Reindeer spawn much more frequently.": "/", + "Allows you to trigger seasonal events at will, for a price.": "/", + "Triggers %1 season for the next 24 hours.
Triggering another season will cancel this one.
Cost scales with unbuffed CpS and increases with every season switch.": "/", + "Click again to cancel season": "/", + "Seasons now last forever.": "/", + "You haven't switched seasons this ascension yet.": "/", + "You've switched seasons once this ascension.": "/", + "You've switched seasons %1 times this ascension.": "/", + "Cookie production multiplied by 1,000.": "/", + "Other eggs appear %1% more frequently.": "/", + "Contains a lot of cookies.": "/", + "The egg bursts into %1 cookies!": "/", + "You found an egg!": "/", + "Eggs drop %1% more often.": "/", + "Christmas cookies drop %1% more often.": "/", + "Spooky cookies drop %1% more often.": "/", + "Heart cookies are %1% more powerful.": "/", + "You continually gain more CpS the longer you've played in the current ascension.": "/", + "Contains an assortment of fancy biscuits.": "/", + "Contains an assortment of macarons.": "/", + "Contains an assortment of popular biscuits.": "/", + "Contains an assortment of rich butter cookies.": "/", + "Contains an assortment of delicious pastries.": "/", + "Contains an assortment of...something.": "/", + "Placing an upgrade in this slot will make its effects permanent across all playthroughs.": "/", + "Current boost:": "/", + "Current:": "/", + "Click to activate.": "/", + "Pick an upgrade to make permanent": "/", + "Here are all the upgrades you've purchased last playthrough.
Pick one to permanently gain its effects!
You can reassign this slot anytime you ascend.": "/", + "You now keep making cookies while the game is closed, at the rate of %1% of your regular CpS and up to 1 hour after the game is closed.
(Beyond 1 hour, this is reduced by a further %2% - your rate goes down to %3% of your CpS.)": "/", + "You gain another +%1% of your regular CpS while the game is closed.": "/", + "You gain another +%1% of your regular CpS while the game is closed, for a total of %2%.": "/", + "You start with %1.": "/", + "Allows you to purchase a crumbly egg once you have earned 1 million cookies.": "/", + "Unlocks the cookie dragon egg.": "/", + "Synergy upgrades are %1% cheaper.": "/", + "You retain optimal cookie production while the game is closed for %1 more days.": "/", + "You retain optimal cookie production while the game is closed for twice as long, for a total of %1.": "/", + "Unlocks the golden switch, which passively boosts your CpS by %1% but disables golden cookies.": "/", + "Turning this on will give you a passive +%1% CpS, but prevents golden cookies from spawning.
Cost is equal to 1 hour of production.": "/", + "The switch is currently giving you a passive +%1% CpS; it also prevents golden cookies from spawning.
Turning it off will revert those effects.
Cost is equal to 1 hour of production.": "/", + "Unlocks the milk selector, letting you pick which milk is displayed under your cookie.
Comes with a variety of basic flavors.": "/", + "Contains more exotic flavors for your milk selector.": "/", + "Lets you pick what flavor of milk to display.": "/", + "Unlocks the golden cookie sound selector, which lets you pick whether golden cookies emit a sound when appearing or not.": "/", + "Lets you change the sound golden cookies make when they spawn.": "/", + "No sound": "/", + "Chime": "/", + "Fortune": "/", + "Cymbal": "/", + "Squeak": "/", + "Unlocks the jukebox, which allows you to play through every sound file in the game.": "/", + "Play through the game's sound files!": "/", + "Play": "/", + "Stop": "/", + "Pause": "/", + "Shuffle": "/", + "Auto": "/", + "Loop": "/", + "Unlocks the background selector, letting you select the game's background.
Comes with a variety of basic flavors.": "/", + "Lets you pick which wallpaper to display.": "/", + "This is the first heavenly upgrade; it unlocks the Heavenly chips system.
Each time you ascend, the cookies you made in your past life are turned into heavenly chips and prestige.
Heavenly chips can be spent on a variety of permanent transcendental upgrades.
Your prestige level also gives you a permanent +1% CpS per level.": "/", + "You can attract %1 more wrinklers.": "/", + "While the golden switch is on, you gain an additional +%1% CpS per golden cookie upgrade owned.": "/", + "All upgrades are %1% cheaper per %2.": "/", + "Unlocks a new tier of upgrades that affect 2 buildings at the same time.
Synergies appear once you have %1 of both buildings.": "/", + "Golden cookies (and all other things that spawn, such as reindeer) have %1% chance of being doubled.": "/", + "Cookie production reduced to 0.": "/", + "Sugar lumps coalesce a whole lot faster.": "/", + "+%1% prestige level effect on CpS.": "/", + "+%1% prestige level effect on CpS.
+%2% golden cookie effect duration.
+%3% golden cookie lifespan.": "/", + "Each unspent sugar lump (up to %1) gives +%2% CpS.
Note: this means that spending sugar lumps will decrease your CpS until they grow back.
": "/", + "Once an ascension, you may use the \"Sugar frenzy\" switch to triple your CpS for 1 hour, at the cost of 1 sugar lump.": "/", + "Each grandma (up to %1) makes sugar lumps ripen %2 sooner.": "/", + "Activating this will triple your CpS for 1 hour, at the cost of 1 sugar lump.": "/", + "May only be used once per ascension.": "/", + "activate the sugar frenzy": "/", + "Sugar frenzy!": "/", + "CpS x%1 for 1 hour!": "/", + "Garden plants grow every second.
Garden seeds are free to plant.
You can switch soils at any time.": "/", + "Dropped by %1.": "/", + "Dropped by %1 plants.": "/", + "Must own the %1 upgrade.": "/", + "Sugar lumps are twice as likely to be unusual.": "/", + "+%1% sugar lump growth.": "/", + "Sugar lumps ripen %1 sooner.": "/", + "Sugar lumps mature %1 sooner.": "/", + "Bifurcated sugar lumps appear %1% more often and are %2% more likely to drop 2 lumps.": "/", + "Mouse over a wrinkler to see how many cookies are in its stomach.": "/", + "Unlocks the Buy all feature, which lets you instantly purchase every upgrade in your store (starting from the cheapest one).
Also unlocks the Vault, a store section where you can place upgrades you do not wish to auto-buy.": "/", + "Mouse over an upgrade to see its tier.
Note: only some upgrades have tiers. Tiers are purely cosmetic and have no effect on gameplay.": "/", + "You now benefit from the boost provided by heralds.
Each herald gives you +1% CpS.
Look on the purple flag at the top to see how many heralds are active at any given time.": "/", + "Seasonal random drops have a 1/5 chance to carry over through ascensions.": "/", + "Unlocks extra price information.
Each displayed cost now specifies how long it'll take you to afford it, and how much of your bank it represents.": "/", + "Unlocks the shimmering veil, a switch that passively boosts your CpS by %1%.
You start with the veil turned on; however, it is very fragile, and clicking the big cookie or any golden cookie or reindeer will turn it off, requiring %2 of CpS to turn back on.": "/", + "Boosts your cookie production by %1% when active.
The veil is very fragile and will break if you click the big cookie or any golden cookies or reindeer.

Once broken, turning the veil back on costs %2 of unbuffed CpS.": "/", + "Has a %1% chance to not break.": "/", + "The shimmering veil is more resistant, and has a %1% chance not to break. It also gives +%2% more CpS.": "/", + "Active.": "/", + "The reinforced membrane protects the shimmering veil.": "/", + "The shimmering veil disappears...": "/", + "Prior to purchasing the %1 upgrade in a run, random drops are %2 times more common.": "/", + "Never forget your %1.": "/", + "Pay close attention to the humble %1.": "/", + "You've been neglecting your %1.": "/", + "Remember to visit your %1 sometimes.": "/", + "You don't know what you have until you've lost it.": "/", + "Remember to take breaks.": "/", + "Hey, what's up. I'm a fortune cookie.": "/", + "You think you have it bad? Look at me.": "/", + "The news ticker may occasionally have fortunes, which may be clicked for something good.": "/", + "Through clever accounting, this actually makes kitten upgrades %1% cheaper.": "/", + "Unlocks the ability to pet your dragon by clicking on it once hatched.": "/", + "Cost scales with CpS, but %1 times cheaper with a fully-trained dragon.": "/", + "Golden cookies may trigger a Dragon Harvest.": "/", + "Golden cookies may trigger a Dragonflight.": "/", + "Dragon harvest and Dragonflight are %1% stronger.": "/", + "Kittens are %1% more effective.": "/", + "Each kitten upgrade boosts %1 CpS by %2%.": "/", + "Each rank of milk boosts %1 CpS by %2%.": "/", + "Cursor levels boost clicks by %1% each (up to cursor level %2).": "/", + "%1 are now effective up to cursor level %2.": "/", + "Seasonal cookies purchased: %1.": "/", + "Reindeer cookies purchased: %1.": "/", + "Eggs purchased: %1.": "/", + "Golden and wrath cookie effect duration +%1%.": "/", + "Golden and wrath cookies appear %1% more.": "/", + "Golden and wrath cookies appear %1% less.": "/", + "Buildings grant -%1% CpS.": "/", + "Selling buildings triggers a buff boosted by how many buildings were sold.": "/", + "Buff boosts clicks by +%1% for every building sold for %2 seconds.": "/", + "CpS bonus fluctuating between %1 and %2 over time.": "/", + "Effect cycles over %1 hours.": "/", + "Some seasonal effects are boosted.": "/", + "Large boost.": "/", + "Medium boost.": "/", + "Small boost.": "/", + "Switching seasons is %1% pricier.": "/", + "Switching seasons is %1% cheaper.": "/", + "Heavenly chips have %1% less effect.": "/", + "Buildings produce %1% more.": "/", + "Buildings produce %1% less.": "/", + "All golden cookies are wrath cookies with a greater chance of a negative effect.": "/", + "Wrinklers appear %1% faster and digest %2% more cookies.": "/", + "Effect is only active when your total amount of buildings ends with 0.": "/", + "Achievement unlocked": "/", + "Make %1 just from %2.": "/", + "Bake %1 in one ascension.": "/", + "Bake %1 per second.": "/", + "Have %1.": "/", + "Ascend at least once.": "/", + "Ascend %1 times.": "/", + "Ascend with %1 baked.": "/", + "Make %1 by only having clicked %2 times.": "/", + "Make %1 with no cookie clicks.": "/", + "Get to %1 baked with no upgrades purchased.": "/", + "Get to %1 baked in %2.": "/", + "Make %1 from clicking.": "/", + "Sell a grandma.": "/", + "Have at least %1 of every building.": "/", + "Have at least 1 of the most expensive object, 2 of the second-most expensive, 4 of the next and so on (capped at %1).": "Have at least 1 of the most expensive building, 2 of the second-most expensive, 4 of the next and so on (capped at %1).", + "Have at least 10 of the most expensive object, 20 of the second-most expensive, 30 of the next and so on.": "Have at least 10 of the most expensive building, 20 of the second-most expensive, 30 of the next and so on.", + "Click a golden cookie.": "/", + "Click %1.": "/", + "Hack in some cookies.": "/", + "Click really, really fast.": "/", + "Have at least %1 of everything.": "/", + "Own %1.": "/", + "Purchase %1.": "/", + "Dunk the cookie.": "/", + "Appease the grandmatriarchs at least once.": "/", + "Appease the grandmatriarchs at least %1 times.": "/", + "Declare a covenant with the grandmatriarchs.": "/", + "Own at least %1 grandma types.": "/", + "Unlock 100% of your heavenly chips power.": "/", + "You have 1 chance in %1 every second of earning this achievement.": "/", + "Burst 1 wrinkler.": "/", + "Burst %1 wrinklers.": "/", + "Unlock every Halloween-themed cookie.
Owning this achievement makes Halloween-themed cookies drop more frequently in future playthroughs.": "/", + "Reach Santa's 7th form.": "/", + "Reach Santa's final form.": "/", + "Unlock every Christmas-themed cookie.
Owning this achievement makes Christmas-themed cookies drop more frequently in future playthroughs.": "/", + "Pop 1 reindeer.": "/", + "Pop %1 reindeer.": "/", + "Pop a reindeer during an elder frenzy.": "/", + "Unlock every Valentine-themed cookie.": "/", + "Click the tiny cookie.": "/", + "This is for baking %1 and making it on the local news.": "/", + "Name yourself Orteil.
Note: usurpers incur a -%1% CpS penalty until they rename themselves something else.
": "/", + "Use an add-on.": "/", + "Unlock 1 egg.": "/", + "Unlock %1 eggs.": "/", + "Unlock all the eggs.
Owning this achievement makes eggs drop more frequently in future playthroughs.": "/", + "Give your bakery a name.": "/", + "Click this achievement's slot.": "/", + "Complete your dragon's training.": "/", + "Click on the news ticker %1 times.": "/", + "Own a combined %1 %2 and %3.": "/", + "Own %1 upgrades and %2 buildings.": "/", + "Own %1 heavenly upgrades.": "/", + "Burst the near-extinct shiny wrinkler.": "/", + "Click a golden cookie less than 1 second after it spawns.": "/", + "Click a golden cookie less than 1 second before it dies.": "/", + "Harvest %1 coalescing sugar lumps.": "/", + "Successfully harvest a coalescing sugar lump before it's ripe.": "/", + "Harvest a bifurcated sugar lump.": "/", + "Harvest a golden sugar lump.": "/", + "Harvest a meaty sugar lump.": "/", + "Harvest a caramelized sugar lump.": "/", + "Reach level %1 %2.": "/", + "Cast %1 spells.": "/", + "Have %1 golden cookies simultaneously.": "/", + "Manage a cookie legacy for at least a year.": "/", + "Harvest %1 mature garden plants.": "/", + "Fill every tile of the biggest garden plot with plants.": "/", + "Unlock every garden seed.": "/", + "Convert a complete seed log into sugar lumps by sacrificing your garden to the sugar hornets.
Owning this achievement makes seeds %1% cheaper, plants mature %2% sooner, and plant upgrades drop %3% more.": "/", + "Ascend with exactly %1.": "/", + "Have your reinforced membrane protect the shimmering veil.": "/", + "Own every fortune upgrade.
Owning this achievement makes fortunes appear twice as often; unlocked fortune upgrades also have a %1% chance to carry over after ascending.": "/", + "Make your first stock market profit.": "/", + "Own at least %1 of a stock market good.": "/", + "Own at least %1 of every stock market good.": "/", + "Make a day of CpS ($%1) in 1 stock market sale.": "/", + "Spend a day of CpS ($%1) in 1 stock market purchase.": "/", + "Have your stock market profits surpass a whole year of CpS ($%1).": "/", + "Unlock the highest-tier stock market headquarters.": "/", + "Have your stock market profits surpass $%1.": "/", + "Own %1 kitten upgrades.": "/", + "Find the forgotten madeleine.": "/", + "Click one of Santa's helper grandmas during Christmas season.": "/", + "Frenzy": "/", + "Elder frenzy": "/", + "Click frenzy": "/", + "Clot": "/", + "Dragon Harvest": "/", + "Everything must go": "/", + "Cursed finger": "/", + "Cookie storm": "/", + "Sugar blessing": "/", + "Haggler's luck": "/", + "Haggler's misery": "/", + "Crafty pixies": "/", + "Nasty goblins": "/", + "Magic adept": "/", + "Magic inept": "/", + "Devastation": "/", + "Sugar frenzy": "/", + "Loan %1": "/", + "Loan %1 (interest)": "/", + "%1 Power!": "/", + "%1 Burden!": "/", + "Cookie production x%1 for %2!": "/", + "Cookie production +%1% for %2!": "/", + "Cookie production %1% slower for %2!": "/", + "Cookie production halved for %1!": "/", + "Your %1 are boosting your CpS!": "/", + "Your %1 are rusting your CpS!": "/", + "All buildings are %1% cheaper for %2!": "/", + "All buildings are %1% pricier for %2!": "/", + "All upgrades are %1% cheaper for %2!": "/", + "All upgrades are %1% pricier for %2!": "/", + "Cookie production halted for %1,
but each click is worth %2 of CpS.": "/", + "Clicking power x%1 for %2!": "/", + "Clicking power +%1% for %2!": "/", + "Cookies everywhere!": "/", + "You find %1% more golden cookies for the next %2.": "/", + "Spells backfire %1 times less for %2.": "/", + "Spells backfire %1 times more for %2.": "/", + "can be done once every %1": "/", + "usable again in %1": "/", + "+%1/s": "/", + "Next tick in %1.": "/", + "Initializing...": "/", + "View %1": "/", + "Close %1": "/", + "Details:": "/", + "Effects:": "/", + "Effect is active.": "/", + "Effect is inactive.": "/", + "Current bonus:": "/", + "Garden": "/", + "Baker's wheat": "/", + "[Baker's wheat quote]A plentiful crop whose hardy grain is used to make flour for pastries.": "A plentiful crop whose hardy grain is used to make flour for pastries.", + "Thumbcorn": "/", + "[Thumbcorn quote]A strangely-shaped variant of corn. The amount of strands that can sprout from one seed is usually in the single digits.": "A strangely-shaped variant of corn. The amount of strands that can sprout from one seed is usually in the single digits.", + "Cronerice": "/", + "[Cronerice quote]Not only does this wrinkly bulb look nothing like rice, it's not even related to it either; its closest extant relative is the weeping willow.": "Not only does this wrinkly bulb look nothing like rice, it's not even related to it either; its closest extant relative is the weeping willow.", + "Gildmillet": "/", + "[Gildmillet quote]An ancient staple crop, famed for its golden sheen. Was once used to bake birthday cakes for kings and queens of old.": "An ancient staple crop, famed for its golden sheen. Was once used to bake birthday cakes for kings and queens of old.", + "Ordinary clover": "/", + "[Ordinary clover quote]Trifolium repens, a fairly mundane variety of clover with a tendency to produce four leaves. Such instances are considered lucky by some.": "Trifolium repens, a fairly mundane variety of clover with a tendency to produce four leaves. Such instances are considered lucky by some.", + "Golden clover": "/", + "[Golden clover quote]A variant of the ordinary clover that traded its chlorophyll for pure organic gold. Tragically short-lived, this herb is an evolutionary dead-end - but at least it looks pretty.": "A variant of the ordinary clover that traded its chlorophyll for pure organic gold. Tragically short-lived, this herb is an evolutionary dead-end - but at least it looks pretty.", + "Shimmerlily": "/", + "[Shimmerlily quote]These little flowers are easiest to find at dawn, as the sunlight refracting in dew drops draws attention to their pure-white petals.": "These little flowers are easiest to find at dawn, as the sunlight refracting in dew drops draws attention to their pure-white petals.", + "Elderwort": "/", + "[Elderwort quote]A very old, long-forgotten subspecies of edelweiss that emits a strange, heady scent. There is some anecdotal evidence that these do not undergo molecular aging.": "A very old, long-forgotten subspecies of edelweiss that emits a strange, heady scent. There is some anecdotal evidence that these do not undergo molecular aging.", + "Bakeberry": "/", + "[Bakeberry quote]A favorite among cooks, this large berry has a crunchy brown exterior and a creamy red center. Excellent in pies or chicken stews.": "A favorite among cooks, this large berry has a crunchy brown exterior and a creamy red center. Excellent in pies or chicken stews.", + "Chocoroot": "/", + "[Chocoroot quote]A tangly bramble coated in a sticky, sweet substance. Unknown genetic ancestry. Children often pick these from fields as-is as a snack.": "A tangly bramble coated in a sticky, sweet substance. Unknown genetic ancestry. Children often pick these from fields as-is as a snack.", + "White chocoroot": "/", + "[White chocoroot quote]A pale, even sweeter variant of the chocoroot. Often impedes travelers with its twisty branches.": "A pale, even sweeter variant of the chocoroot. Often impedes travelers with its twisty branches.", + "White mildew": "/", + "[White mildew quote]A common rot that infests shady plots of earth. Grows in little creamy capsules. Smells sweet, but sadly wilts quickly.": "A common rot that infests shady plots of earth. Grows in little creamy capsules. Smells sweet, but sadly wilts quickly.", + "Brown mold": "/", + "[Brown mold quote]A common rot that infests shady plots of earth. Grows in odd reddish clumps. Smells bitter, but thankfully wilts quickly.": "A common rot that infests shady plots of earth. Grows in odd reddish clumps. Smells bitter, but thankfully wilts quickly.", + "Meddleweed": "/", + "[Meddleweed quote]The sign of a neglected farmland, this annoying weed spawns from unused dirt and may sometimes spread to other plants, killing them in the process.": "The sign of a neglected farmland, this annoying weed spawns from unused dirt and may sometimes spread to other plants, killing them in the process.", + "Whiskerbloom": "/", + "[Whiskerbloom quote]Squeezing the translucent pods makes them excrete a milky liquid, while producing a faint squeak akin to a cat's meow.": "Squeezing the translucent pods makes them excrete a milky liquid, while producing a faint squeak akin to a cat's meow.", + "Chimerose": "/", + "[Chimerose quote]Originating in the greener flanks of polar mountains, this beautiful flower with golden accents is fragrant enough to make any room feel a little bit more festive.": "Originating in the greener flanks of polar mountains, this beautiful flower with golden accents is fragrant enough to make any room feel a little bit more festive.", + "Nursetulip": "/", + "[Nursetulip quote]This flower grows an intricate root network that distributes nutrients throughout the surrounding soil. The reason for this seemingly altruistic behavior is still unknown.": "This flower grows an intricate root network that distributes nutrients throughout the surrounding soil. The reason for this seemingly altruistic behavior is still unknown.", + "Drowsyfern": "/", + "[Drowsyfern quote]Traditionally used to brew a tea that guarantees a good night of sleep.": "Traditionally used to brew a tea that guarantees a good night of sleep.", + "Wardlichen": "/", + "[Wardlichen quote]The metallic stench that emanates from this organism has been known to keep insects and slugs away.": "The metallic stench that emanates from this organism has been known to keep insects and slugs away.", + "Keenmoss": "/", + "[Keenmoss quote]Fuzzy to the touch and of a vibrant green. In plant symbolism, keenmoss is associated with good luck for finding lost objects.": "Fuzzy to the touch and of a vibrant green. In plant symbolism, keenmoss is associated with good luck for finding lost objects.", + "Queenbeet": "/", + "[Queenbeet quote]A delicious taproot used to prepare high-grade white sugar. Entire countries once went to war over these.": "A delicious taproot used to prepare high-grade white sugar. Entire countries once went to war over these.", + "Juicy queenbeet": "/", + "[Juicy queenbeet quote]A delicious taproot used to prepare high-grade white sugar. Entire countries once went to war over these.
It looks like this one has grown especially sweeter and juicier from growing in close proximity to other queenbeets.": "A delicious taproot used to prepare high-grade white sugar. Entire countries once went to war over these.
It looks like this one has grown especially sweeter and juicier from growing in close proximity to other queenbeets.", + "Duketater": "/", + "[Duketater quote]A rare, rich-tasting tuber fit for a whole meal, as long as its strict harvesting schedule is respected. Its starch has fascinating baking properties.": "A rare, rich-tasting tuber fit for a whole meal, as long as its strict harvesting schedule is respected. Its starch has fascinating baking properties.", + "Crumbspore": "/", + "[Crumbspore quote]An archaic mold that spreads its spores to the surrounding dirt through simple pod explosion.": "An archaic mold that spreads its spores to the surrounding dirt through simple pod explosion.", + "Doughshroom": "/", + "[Doughshroom quote]Jammed full of warm spores; some forest walkers often describe the smell as similar to passing by a bakery.": "Jammed full of warm spores; some forest walkers often describe the smell as similar to passing by a bakery.", + "Glovemorel": "/", + "[Glovemorel quote]Touching its waxy skin reveals that the interior is hollow and uncomfortably squishy.": "Touching its waxy skin reveals that the interior is hollow and uncomfortably squishy.", + "Cheapcap": "/", + "[Cheapcap quote]Small, tough, and good in omelettes. Some historians propose that the heads of dried cheapcaps were once used as currency in some bronze age societies.": "Small, tough, and good in omelettes. Some historians propose that the heads of dried cheapcaps were once used as currency in some bronze age societies.", + "Fool's bolete": "/", + "[Fool's bolete quote]Named for its ability to fool mushroom pickers. The fool's bolete is not actually poisonous, it's just extremely bland.": "Named for its ability to fool mushroom pickers. The fool's bolete is not actually poisonous, it's just extremely bland.", + "Wrinklegill": "/", + "[Wrinklegill quote]This mushroom's odor resembles that of a well-done steak, and is said to whet the appetite - making one's stomach start gurgling within seconds.": "This mushroom's odor resembles that of a well-done steak, and is said to whet the appetite - making one's stomach start gurgling within seconds.", + "Green rot": "/", + "[Green rot quote]This short-lived mold is also known as \"emerald pebbles\", and is considered by some as a pseudo-gem that symbolizes good fortune.": "This short-lived mold is also known as \"emerald pebbles\", and is considered by some as a pseudo-gem that symbolizes good fortune.", + "Shriekbulb": "/", + "[Shriekbulb quote]A nasty vegetable with a dreadful quirk : its flesh resonates with a high-pitched howl whenever it is hit at the right angle by sunlight, moonlight, or even a slight breeze.": "A nasty vegetable with a dreadful quirk : its flesh resonates with a high-pitched howl whenever it is hit at the right angle by sunlight, moonlight, or even a slight breeze.", + "Tidygrass": "/", + "[Tidygrass quote]The molecules this grass emits are a natural weedkiller. Its stems grow following a predictable pattern, making it an interesting -if expensive- choice for a lawn grass.": "The molecules this grass emits are a natural weedkiller. Its stems grow following a predictable pattern, making it an interesting -if expensive- choice for a lawn grass.", + "Everdaisy": "/", + "[Everdaisy quote]While promoted by some as a superfood owing to its association with longevity and intriguing geometry, this elusive flower is actually mildly toxic.": "While promoted by some as a superfood owing to its association with longevity and intriguing geometry, this elusive flower is actually mildly toxic.", + "Ichorpuff": "/", + "[Ichorpuff quote]This puffball mushroom contains sugary spores, but it never seems to mature to bursting on its own. Surrounding plants under its influence have a very slow metabolism, reducing their effects but lengthening their lifespan.": "This puffball mushroom contains sugary spores, but it never seems to mature to bursting on its own. Surrounding plants under its influence have a very slow metabolism, reducing their effects but lengthening their lifespan.", + "Garden information": "/", + "Your garden is frozen, providing no effects.": "/", + "Combined effects of all your plants:": "/", + "None.": "/", + "-You can cross-breed plants by planting them close to each other; new plants will grow in the empty tiles next to them.
-Unlock new seeds by harvesting mature plants.
-When you ascend, your garden plants are reset, but you keep all the seeds you've unlocked.
-Your garden has no effect and does not grow while the game is closed.": "/", + "Harvest all": "/", + "Instantly harvest all plants in your garden.": "/", + "%1 to harvest only mature, mortal plants.": "/", + "%1 to harvest all mature plants of this type.": "/", + "Freeze": "/", + "Cryogenically preserve your garden.
Plants no longer grow, spread or die; they provide no benefits.
Soil cannot be changed.
Using this will effectively pause your garden.": "/", + "Garden is frozen. Unfreeze to resume.": "/", + "Sacrifice garden": "/", + "A swarm of sugar hornets comes down on your garden, destroying every plant as well as every seed you've unlocked - leaving only a %1 seed.
In exchange, they will grant you %2.
This action is only available with a complete seed log.": "/", + "Do you REALLY want to sacrifice your garden to the sugar hornets?
You will be left with an empty plot and only the %1 seed unlocked.
In return, you will gain %2 sugar lumps.
": "/", + "Sacrifice!": "/", + "You've sacrificed your garden to the sugar hornets, destroying your crops and your knowledge of seeds.
In the remains, you find %1 sugar lumps.": "/", + "immortal": "/", + "predictable growth": "/", + "surrounding plants (%1x%1) age %2% faster": "/", + "surrounding plants (%1x%1) age %2% slower": "/", + "surrounding plants (%1x%1) are %2% more efficient": "/", + "surrounding plants (%1x%1) are %2% less efficient": "/", + "surrounding tiles (%1x%1) develop no weeds or fungus": "/", + "harvest when mature for +%1 of CpS (max. %2% of bank)": "/", + "harvest when mature for a sugar lump": "/", + "useless": "/", + "spreads easily": "/", + "may spread as %1": "/", + "grows in empty tiles": "/", + "may overtake nearby plants": "/", + "may sometimes drop spores when uprooted": "/", + "explodes into up to %1 of CpS at the end of its lifecycle (max. %2% of bank)": "/", + "cannot handle cold climates; %1% chance to die when frozen": "/", + "the unfortunate result of some plant combinations": "/", + "Soil unlocked at %1 farms.": "/", + "Your field is currently using this soil.": "/", + "You will be able to change your soil again in %1.": "/", + "Click to use this type of soil for your whole field.": "/", + "Dirt": "/", + "Simple, regular old dirt that you'd find in nature.": "/", + "Fertilizer": "/", + "Soil with a healthy helping of fresh manure. Plants grow faster but are less efficient.": "/", + "Clay": "/", + "Rich soil with very good water retention. Plants grow slower but are more efficient.": "/", + "Pebbles": "/", + "Dry soil made of small rocks tightly packed together. Not very conducive to plant health, but whatever falls off your crops will be easy to retrieve.
Useful if you're one of those farmers who just want to find new seeds without having to tend their garden too much.": "/", + "Wood chips": "/", + "Soil made of bits and pieces of bark and sawdust. Helpful for young sprouts to develop, not so much for mature plants.": "/", + "tick every %1": "/", + "passive plant effects": "/", + "weed growth": "/", + "%1% chance of collecting seeds automatically when plants expire": "/", + "plants spread and mutate %1 times more": "/", + "Plant effects:": "/", + "Possible mutations:": "/", + "Average lifespan:": "/", + "Average maturation:": "/", + "Mature in about %1": "/", + "Decays in about %1": "/", + "Does not decay": "/", + "%1 tick": [ + "%1 tick", + "%1 ticks" + ], + "Weed": "/", + "Fungus": "/", + "Planting cost:": "/", + "%1 of CpS,
minimum %2": "/", + "%1 seed": "/", + "Click to select this seed for planting.": "/", + "This seed cannot be planted.": "/", + "Empty tile": "/", + "This tile of soil is empty.
Pick a seed and plant something!": "/", + "Click to plant %1 for %2.": "/", + "%1 to plant multiple.": "/", + "Aging multiplier:": "/", + "Effect multiplier:": "/", + "Weeds/fungus repellent:": "/", + "This plant is growing here.": "/", + "Stage:": "/", + "bud": "/", + "sprout": "/", + "bloom": "/", + "mature": "/", + "may reproduce, will drop seed when harvested": "/", + "Click to harvest.": "/", + "Click to unearth.": "/", + "Click to refill your soil timer and trigger 1 plant growth tick with x%1 spread and mutation rate for %2.": "/", + "Unlocked %1 seed.": "/", + "Seeds": "/", + "Tools": "/", + "Mature plants harvested: %1 (total: %2)": "/", + "Plot size: %1
(Upgrades with farm level)": "/", + "Garden plants age and mutate %1% faster.": "/", + "while plant is alive; scales with plant growth": "/", + "Dungeon": "/", + "Grimoire": "/", + "This is your magic meter. Each spell costs magic to use.
Your maximum amount of magic varies depending on your amount of Wizard towers, and their level.
Magic refills over time. The lower your magic meter, the slower it refills.": "/", + "Spells cast: %1 (total: %2)": "/", + "Magic cost:": "/", + "Chance to backfire:": "/", + "Effect:": "/", + "Backfire:": "/", + "Backfire!": "/", + "%1 magic": "/", + "+%1% of max magic": "/", + "Click to refill %1 units of your magic meter for %2.": "/", + "Grimoire spells are %1% cheaper but fail %1% more.": "/", + "Conjure Baked Goods": "/", + "Summon half an hour worth of your CpS, capped at %1% of your cookies owned.": "/", + "Trigger a %1-minute clot and lose %1 minutes of CpS.": "/", + "You magic %1 out of thin air.": "/", + "Summoning failed!": "/", + "Force the Hand of Fate": "/", + "Summon a random golden cookie. Each existing golden cookie makes this spell +%1% more likely to backfire.": "/", + "Summon an unlucky wrath cookie.": "/", + "Promising fate!": "/", + "Sinister fate!": "/", + "Stretch Time": "/", + "All active buffs gain %1% more time (up to %2 more minutes).": "/", + "All active buffs are shortened by %1% (up to %2 minutes shorter).": "/", + "No buffs to alter!": "/", + "Zap! Buffs lengthened.": "/", + "Fizz! Buffs shortened.": "/", + "Spontaneous Edifice": "/", + "The spell picks a random building you could afford if you had twice your current cookies, and gives it to you for free. The building selected must be under %1, and cannot be your most-built one (unless it is your only one).": "/", + "Lose a random building.": "/", + "No buildings to improve!": "/", + "Backfired, but no buildings to destroy!": "/", + "A new %1
bursts out of the ground.": "/", + "One of your %1
disappears in a puff of smoke.": "/", + "Haggler's Charm": "/", + "Upgrades are %1% cheaper for 1 minute.": "/", + "Upgrades are %1% more expensive for an hour.": "/", + "Upgrades are cheaper!": "/", + "Upgrades are pricier!": "/", + "Summon Crafty Pixies": "/", + "Buildings are %1% cheaper for 1 minute.": "/", + "Buildings are %1% more expensive for an hour.": "/", + "Buildings are cheaper!": "/", + "Buildings are pricier!": "/", + "Gambler's Fever Dream": "/", + "Cast a random spell at half the magic cost, with twice the chance of backfiring.": "/", + "No eligible spells!": "/", + "That's too bad!
Magic refunded.": "/", + "Casting %1
for %2 magic...": "/", + "Resurrect Abomination": "/", + "Instantly summon a wrinkler if conditions are fulfilled.": "/", + "Pop one of your wrinklers.": "/", + "Unable to spawn a wrinkler!": "/", + "Rise, my precious!": "/", + "But no wrinkler was harmed.": "/", + "So long, ugly...": "/", + "Diminish Ineptitude": "/", + "Spells backfire %1 times less for the next %2 minutes.": "/", + "Spells backfire %1 times more for the next %2 minutes.": "/", + "Ineptitude diminished!": "/", + "Ineptitude magnified!": "/", + "Pantheon": "/", + "[GOD 1 NAME]Holobore, Spirit of Asceticism": "Holobore, Spirit of Asceticism", + "[GOD 1 QUOTE]An immortal life spent focusing on the inner self, away from the distractions of material wealth.": "An immortal life spent focusing on the inner self, away from the distractions of material wealth.", + "[GOD 2 NAME]Vomitrax, Spirit of Decadence": "Vomitrax, Spirit of Decadence", + "[GOD 2 QUOTE]This sleazy spirit revels in the lust for quick easy gain and contempt for the value of steady work.": "This sleazy spirit revels in the lust for quick easy gain and contempt for the value of steady work.", + "[GOD 3 NAME]Godzamok, Spirit of Ruin": "Godzamok, Spirit of Ruin", + "[GOD 3 QUOTE]The embodiment of natural disasters. An impenetrable motive drives the devastation caused by this spirit.": "The embodiment of natural disasters. An impenetrable motive drives the devastation caused by this spirit.", + "[GOD 4 NAME]Cyclius, Spirit of Ages": "Cyclius, Spirit of Ages", + "[GOD 4 QUOTE]This spirit knows about everything you'll ever do, and enjoys dispensing a harsh judgment.": "This spirit knows about everything you'll ever do, and enjoys dispensing a harsh judgment.", + "[GOD 5 NAME]Selebrak, Spirit of Festivities": "Selebrak, Spirit of Festivities", + "[GOD 5 QUOTE]This is the spirit of merry getaways and regretful Monday mornings.": "This is the spirit of merry getaways and regretful Monday mornings.", + "[GOD 6 NAME]Dotjeiess, Spirit of Creation": "Dotjeiess, Spirit of Creation", + "[GOD 6 QUOTE]All things that be and ever will be were scripted long ago by this spirit's inscrutable tendrils.": "All things that be and ever will be were scripted long ago by this spirit's inscrutable tendrils.", + "[GOD 7 NAME]Muridal, Spirit of Labor": "Muridal, Spirit of Labor", + "[GOD 7 QUOTE]This spirit enjoys a good cheese after a day of hard work.": "This spirit enjoys a good cheese after a day of hard work.", + "[GOD 8 NAME]Jeremy, Spirit of Industry": "Jeremy, Spirit of Industry", + "[GOD 8 QUOTE]While this spirit has many regrets, helping you rule the world through constant industrialization is not one of them.": "While this spirit has many regrets, helping you rule the world through constant industrialization is not one of them.", + "[GOD 9 NAME]Mokalsium, Mother Spirit": "Mokalsium, Mother Spirit", + "[GOD 9 QUOTE]A caring spirit said to contain itself, inwards infinitely.": "A caring spirit said to contain itself, inwards infinitely.", + "[GOD 10 NAME]Skruuia, Spirit of Scorn": "Skruuia, Spirit of Scorn", + "[GOD 10 QUOTE]This spirit enjoys poking foul beasts and watching them squirm, but has no love for its own family.": "This spirit enjoys poking foul beasts and watching them squirm, but has no love for its own family.", + "[GOD 11 NAME]Rigidel, Spirit of Order": "Rigidel, Spirit of Order", + "[GOD 11 QUOTE]You will find that life gets just a little bit sweeter if you can motivate this spirit with tidy numbers and properly-filled tax returns.": "You will find that life gets just a little bit sweeter if you can motivate this spirit with tidy numbers and properly-filled tax returns.", + "Diamond slot": "/", + "Ruby slot": "/", + "Jade slot": "/", + "empty": "/", + "Release to assign %1 to this slot.": "/", + "Drag a spirit onto this slot to assign it.": "/", + "If a golden cookie is clicked, this spirit is unslotted and all worship swaps will be used up.": "/", + "Each time you slot a spirit, you use up one worship swap.
If you have 2 swaps left, the next one will refill after %1.
If you have 1 swap left, the next one will refill after %2.
If you have 0 swaps left, you will get one after %3.
Unslotting a spirit costs no swaps.": "/", + "Click to refill all your worship swaps for %1.": "/", + "Worship swaps: %1": "/", + "next in %1": "/", + "The jade slot behaves as a ruby slot and the ruby slot behaves as a diamond slot.": "/", + "Stock Market": "/", + "[STOCK 1 NAME]Old Mills": "Old Mills", + "[STOCK 1 TYPE]Cereals": "Cereals", + "[STOCK 1 LOGO]CRL": "CRL", + "[STOCK 2 NAME]Cocoa Excavations": "Cocoa Excavations", + "[STOCK 2 TYPE]Chocolate": "Chocolate", + "[STOCK 2 LOGO]CHC": "CHC", + "[STOCK 3 NAME]Bovine Industries": "Bovine Industries", + "[STOCK 3 TYPE]Butter": "Butter", + "[STOCK 3 LOGO]BTR": "BTR", + "[STOCK 4 NAME]Candy Trust": "Candy Trust", + "[STOCK 4 TYPE]Sugar": "Sugar", + "[STOCK 4 LOGO]SUG": "SUG", + "[STOCK 5 NAME]Hazel Monastery": "Hazel Monastery", + "[STOCK 5 TYPE]Nuts": "Nuts", + "[STOCK 5 LOGO]NUT": "NUT", + "[STOCK 6 NAME]Wacky Reagants": "Wacky Reagants", + "[STOCK 6 TYPE]Salt": "Salt", + "[STOCK 6 LOGO]SLT": "SLT", + "[STOCK 7 NAME]Cosmic Exports": "Cosmic Exports", + "[STOCK 7 TYPE]Vanilla": "Vanilla", + "[STOCK 7 LOGO]VNL": "VNL", + "[STOCK 8 NAME]Organic Gnostics": "Organic Gnostics", + "[STOCK 8 TYPE]Eggs": "Eggs", + "[STOCK 8 LOGO]EGG": "EGG", + "[STOCK 9 NAME]Dimensional Exchange": "Dimensional Exchange", + "[STOCK 9 TYPE]Cinnamon": "Cinnamon", + "[STOCK 9 LOGO]CNM": "CNM", + "[STOCK 10 NAME]Precision Aging": "Precision Aging", + "[STOCK 10 TYPE]Cream": "Cream", + "[STOCK 10 LOGO]CRM": "CRM", + "[STOCK 11 NAME]Pectin Research": "Pectin Research", + "[STOCK 11 TYPE]Jam": "Jam", + "[STOCK 11 LOGO]JAM": "JAM", + "[STOCK 12 NAME]Dazzle Corp Ltd.": "Dazzle Corp Ltd.", + "[STOCK 12 TYPE]White chocolate": "White chocolate", + "[STOCK 12 LOGO]WCH": "WCH", + "[STOCK 13 NAME]Prosperity Hive": "Prosperity Hive", + "[STOCK 13 TYPE]Honey": "Honey", + "[STOCK 13 LOGO]HNY": "HNY", + "[STOCK 14 NAME]Selfmade Bakeries": "Selfmade Bakeries", + "[STOCK 14 TYPE]Cookies": "Cookies", + "[STOCK 14 LOGO]CKI": "CKI", + "[STOCK 15 NAME]Figments Associated": "Figments Associated", + "[STOCK 15 TYPE]Recipes": "Recipes", + "[STOCK 15 LOGO]RCP": "RCP", + "[STOCK 16 NAME]Polyvalent Acquisitions": "Polyvalent Acquisitions", + "[STOCK 16 TYPE]Subsidiaries": "Subsidiaries", + "[STOCK 16 LOGO]SBD": "SBD", + "[STOCK 17 NAME]Great Minds": "Great Minds", + "[STOCK 17 TYPE]Publicists": "Publicists", + "[STOCK 17 LOGO]PBL": "PBL", + "from %1": "/", + "%1: currently worth $%2 per unit.": "/", + "You currently own %1 (worth $%2).": "/", + "Your warehouses can store up to %1.": "/", + "You may increase your storage space by upgrading your offices and by buying more %1. You also get %2 extra storage space per %3 level (currently: +%4).": "/", + "The average worth of this stock and how high it can peak depends on the building it is tied to, along with the level of your %1.": "/", + "%1 the hide button to toggle all other stocks.": "/", + "stock:": "/", + "for $%1 each": "/", + "last bought at
$%1 each": "/", + "+%1% overhead": "/", + "value:": "/", + "valued at %1": "/", + "you spend:": "/", + "you earn:": "/", + "You cannot buy and sell this stock in the same tick.": "/", + "This is your office.": "/", + "It is fully upgraded. Its lavish interiors, spanning across innumerable floors, are host to many a decadent party, owing to your nigh-unfathomable wealth.": "/", + "Level %1 offices": "/", + "Credit garage": "/", + "Tiny bank": "/", + "Loaning company": "/", + "Finance headquarters": "/", + "International exchange": "/", + "Palace of Greed": "/", + "Upgrading will cost you %1.": "/", + "Upgrading requires %1.": "/", + "Upgrading will grant you:": "/", + "+1 loan slot": "/", + "+1 opportunity slot": "/", + "+%1 warehouse space for all goods": "/", + "+%1% base warehouse space for all goods": "/", + "Brokers:": "/", + "A nice broker to trade more cookies.": "/", + "Hire": "/", + "Buying goods normally incurs overhead costs of %1% extra. Each broker you hire reduces that cost by %2%.": "/", + "Current overhead costs thanks to your brokers: +%1%": "/", + "Buying a broker costs %1 of CpS (that's $%2).": "/", + "Maximum number of brokers you can own: %1 (the highest amount of grandmas you've owned this run, divided by 10, plus your grandma level)": "/", + "Brokers are Wall Street-class grandmas versed in the ways of finance. Stockbroker grandmas work hard and play hard, and will fight telephone in hand to get your clients the best possible deals - with a sizeable profit margin for you, of course.": "/", + "Hiring a new broker will cost you %1.": "/", + "Take out %1": "/", + "Loan #%1": "/", + "a modest loan": "/", + "Buy that vintage car you've always wanted. Just pay us back.": "/", + "a pawnshop loan": "/", + "Bad credit? No problem. It's your money, and you need it now.": "/", + "a retirement loan": "/", + "Finance your next house, boat, spouse, etc. You've earned it.": "/", + "By taking this loan, you will get %1 CpS for the next %2.": "/", + "However, you will get %1 CpS for the next %2 after that.": "/", + "You must also pay an immediate downpayment of %1 (%2% of your current bank).": "/", + "Loan over": "/", + "Your loan has expired, and you must now repay the interest.": "/", + "Line style": "/", + "Color mode": "/", + "Toggle speed": "/", + "Click to refill your opportunity timer (and give a quick burst to your economy) for %1.": "/", + "Profits: %1. All prices are in $econds of your highest raw cookies per second.": "/", + "The stock market is more chaotic.": "/", + "[Upgrade name 0]Reinforced index finger": "Reinforced index finger", + "[Upgrade name 1]Carpal tunnel prevention cream": "Carpal tunnel prevention cream", + "[Upgrade name 2]Ambidextrous": "Ambidextrous", + "[Upgrade name 3]Thousand fingers": "Thousand fingers", + "[Upgrade name 4]Million fingers": "Million fingers", + "[Upgrade name 5]Billion fingers": "Billion fingers", + "[Upgrade name 6]Trillion fingers": "Trillion fingers", + "[Upgrade name 7]Forwards from grandma": "Forwards from grandma", + "[Upgrade name 8]Steel-plated rolling pins": "Steel-plated rolling pins", + "[Upgrade name 9]Lubricated dentures": "Lubricated dentures", + "[Upgrade name 10]Cheap hoes": "Cheap hoes", + "[Upgrade name 11]Fertilizer": "Fertilizer", + "[Upgrade name 12]Cookie trees": "Cookie trees", + "[Upgrade name 13]Sturdier conveyor belts": "Sturdier conveyor belts", + "[Upgrade name 14]Child labor": "Child labor", + "[Upgrade name 15]Sweatshop": "Sweatshop", + "[Upgrade name 16]Sugar gas": "Sugar gas", + "[Upgrade name 17]Megadrill": "Megadrill", + "[Upgrade name 18]Ultradrill": "Ultradrill", + "[Upgrade name 19]Vanilla nebulae": "Vanilla nebulae", + "[Upgrade name 20]Wormholes": "Wormholes", + "[Upgrade name 21]Frequent flyer": "Frequent flyer", + "[Upgrade name 22]Antimony": "Antimony", + "[Upgrade name 23]Essence of dough": "Essence of dough", + "[Upgrade name 24]True chocolate": "True chocolate", + "[Upgrade name 25]Ancient tablet": "Ancient tablet", + "[Upgrade name 26]Insane oatling workers": "Insane oatling workers", + "[Upgrade name 27]Soul bond": "Soul bond", + "[Upgrade name 28]Flux capacitors": "Flux capacitors", + "[Upgrade name 29]Time paradox resolver": "Time paradox resolver", + "[Upgrade name 30]Quantum conundrum": "Quantum conundrum", + "[Upgrade name 31]Kitten helpers": "Kitten helpers", + "[Upgrade name 32]Kitten workers": "Kitten workers", + "[Upgrade name 33]Plain cookies": "Plain cookies", + "[Upgrade name 34]Sugar cookies": "Sugar cookies", + "[Upgrade name 35]Oatmeal raisin cookies": "Oatmeal raisin cookies", + "[Upgrade name 36]Peanut butter cookies": "Peanut butter cookies", + "[Upgrade name 37]Coconut cookies": "Coconut cookies", + "[Upgrade name 38]White chocolate cookies": "White chocolate cookies", + "[Upgrade name 39]Macadamia nut cookies": "Macadamia nut cookies", + "[Upgrade name 40]Double-chip cookies": "Double-chip cookies", + "[Upgrade name 41]White chocolate macadamia nut cookies": "White chocolate macadamia nut cookies", + "[Upgrade name 42]All-chocolate cookies": "All-chocolate cookies", + "[Upgrade name 43]Quadrillion fingers": "Quadrillion fingers", + "[Upgrade name 44]Prune juice": "Prune juice", + "[Upgrade name 45]Genetically-modified cookies": "Genetically-modified cookies", + "[Upgrade name 46]Radium reactors": "Radium reactors", + "[Upgrade name 47]Ultimadrill": "Ultimadrill", + "[Upgrade name 48]Warp drive": "Warp drive", + "[Upgrade name 49]Ambrosia": "Ambrosia", + "[Upgrade name 50]Sanity dance": "Sanity dance", + "[Upgrade name 51]Causality enforcer": "Causality enforcer", + "[Upgrade name 52]Lucky day": "Lucky day", + "[Upgrade name 53]Serendipity": "Serendipity", + "[Upgrade name 54]Kitten engineers": "Kitten engineers", + "[Upgrade name 55]Dark chocolate-coated cookies": "Dark chocolate-coated cookies", + "[Upgrade name 56]White chocolate-coated cookies": "White chocolate-coated cookies", + "[Upgrade name 57]Farmer grandmas": "Farmer grandmas", + "[Upgrade name 58]Miner grandmas": "Miner grandmas", + "[Upgrade name 59]Worker grandmas": "Worker grandmas", + "[Upgrade name 60]Cosmic grandmas": "Cosmic grandmas", + "[Upgrade name 61]Transmuted grandmas": "Transmuted grandmas", + "[Upgrade name 62]Altered grandmas": "Altered grandmas", + "[Upgrade name 63]Grandmas' grandmas": "Grandmas' grandmas", + "[Upgrade name 64]Bingo center/Research facility": "Bingo center/Research facility", + "[Upgrade name 65]Specialized chocolate chips": "Specialized chocolate chips", + "[Upgrade name 66]Designer cocoa beans": "Designer cocoa beans", + "[Upgrade name 67]Ritual rolling pins": "Ritual rolling pins", + "[Upgrade name 68]Underworld ovens": "Underworld ovens", + "[Upgrade name 69]One mind": "One mind", + "[Upgrade name 70]Exotic nuts": "Exotic nuts", + "[Upgrade name 71]Communal brainsweep": "Communal brainsweep", + "[Upgrade name 72]Arcane sugar": "Arcane sugar", + "[Upgrade name 73]Elder Pact": "Elder Pact", + "[Upgrade name 74]Elder Pledge": "Elder Pledge", + "[Upgrade name 75]Plastic mouse": "Plastic mouse", + "[Upgrade name 76]Iron mouse": "Iron mouse", + "[Upgrade name 77]Titanium mouse": "Titanium mouse", + "[Upgrade name 78]Adamantium mouse": "Adamantium mouse", + "[Upgrade name 79]Ultrascience": "Ultrascience", + "[Upgrade name 80]Eclipse cookies": "Eclipse cookies", + "[Upgrade name 81]Zebra cookies": "Zebra cookies", + "[Upgrade name 82]Quintillion fingers": "Quintillion fingers", + "[Upgrade name 83]Gold hoard": "Gold hoard", + "[Upgrade name 84]Elder Covenant": "Elder Covenant", + "[Upgrade name 85]Revoke Elder Covenant": "Revoke Elder Covenant", + "[Upgrade name 86]Get lucky": "Get lucky", + "[Upgrade name 87]Sacrificial rolling pins": "Sacrificial rolling pins", + "[Upgrade name 88]Snickerdoodles": "Snickerdoodles", + "[Upgrade name 89]Stroopwafels": "Stroopwafels", + "[Upgrade name 90]Macaroons": "Macaroons", + "[Upgrade name 91]Neuromancy": "Neuromancy", + "[Upgrade name 92]Empire biscuits": "Empire biscuits", + "[Upgrade name 93]British tea biscuits": "British tea biscuits", + "[Upgrade name 94]Chocolate british tea biscuits": "Chocolate british tea biscuits", + "[Upgrade name 95]Round british tea biscuits": "Round british tea biscuits", + "[Upgrade name 96]Round chocolate british tea biscuits": "Round chocolate british tea biscuits", + "[Upgrade name 97]Round british tea biscuits with heart motif": "Round british tea biscuits with heart motif", + "[Upgrade name 98]Round chocolate british tea biscuits with heart motif": "Round chocolate british tea biscuits with heart motif", + "[Upgrade name 99]Sugar bosons": "Sugar bosons", + "[Upgrade name 100]String theory": "String theory", + "[Upgrade name 101]Large macaron collider": "Large macaron collider", + "[Upgrade name 102]Big bang bake": "Big bang bake", + "[Upgrade name 103]Antigrandmas": "Antigrandmas", + "[Upgrade name 104]Madeleines": "Madeleines", + "[Upgrade name 105]Palmiers": "Palmiers", + "[Upgrade name 106]Palets": "Palets", + "[Upgrade name 107]Sablés": "Sablés", + "[Upgrade name 108]Kitten overseers": "Kitten overseers", + "[Upgrade name 109]Sextillion fingers": "Sextillion fingers", + "[Upgrade name 110]Double-thick glasses": "Double-thick glasses", + "[Upgrade name 111]Gingerbread scarecrows": "Gingerbread scarecrows", + "[Upgrade name 112]Recombobulators": "Recombobulators", + "[Upgrade name 113]H-bomb mining": "H-bomb mining", + "[Upgrade name 114]Chocolate monoliths": "Chocolate monoliths", + "[Upgrade name 115]Aqua crustulae": "Aqua crustulae", + "[Upgrade name 116]Brane transplant": "Brane transplant", + "[Upgrade name 117]Yestermorrow comparators": "Yestermorrow comparators", + "[Upgrade name 118]Reverse cyclotrons": "Reverse cyclotrons", + "[Upgrade name 119]Unobtainium mouse": "Unobtainium mouse", + "[Upgrade name 120]Caramoas": "Caramoas", + "[Upgrade name 121]Sagalongs": "Sagalongs", + "[Upgrade name 122]Shortfoils": "Shortfoils", + "[Upgrade name 123]Win mints": "Win mints", + "[Upgrade name 124]Perfect idling": "Perfect idling", + "[Upgrade name 125]Fig gluttons": "Fig gluttons", + "[Upgrade name 126]Loreols": "Loreols", + "[Upgrade name 127]Jaffa cakes": "Jaffa cakes", + "[Upgrade name 128]Grease's cups": "Grease's cups", + "[Upgrade name 129]Heavenly chip secret": "Heavenly chip secret", + "[Upgrade name 130]Heavenly cookie stand": "Heavenly cookie stand", + "[Upgrade name 131]Heavenly bakery": "Heavenly bakery", + "[Upgrade name 132]Heavenly confectionery": "Heavenly confectionery", + "[Upgrade name 133]Heavenly key": "Heavenly key", + "[Upgrade name 134]Skull cookies": "Skull cookies", + "[Upgrade name 135]Ghost cookies": "Ghost cookies", + "[Upgrade name 136]Bat cookies": "Bat cookies", + "[Upgrade name 137]Slime cookies": "Slime cookies", + "[Upgrade name 138]Pumpkin cookies": "Pumpkin cookies", + "[Upgrade name 139]Eyeball cookies": "Eyeball cookies", + "[Upgrade name 140]Spider cookies": "Spider cookies", + "[Upgrade name 141]Persistent memory": "Persistent memory", + "[Upgrade name 142]Wrinkler doormat": "Wrinkler doormat", + "[Upgrade name 143]Christmas tree biscuits": "Christmas tree biscuits", + "[Upgrade name 144]Snowflake biscuits": "Snowflake biscuits", + "[Upgrade name 145]Snowman biscuits": "Snowman biscuits", + "[Upgrade name 146]Holly biscuits": "Holly biscuits", + "[Upgrade name 147]Candy cane biscuits": "Candy cane biscuits", + "[Upgrade name 148]Bell biscuits": "Bell biscuits", + "[Upgrade name 149]Present biscuits": "Present biscuits", + "[Upgrade name 150]Gingerbread men": "Gingerbread men", + "[Upgrade name 151]Gingerbread trees": "Gingerbread trees", + "[Upgrade name 152]A festive hat": "A festive hat", + "[Upgrade name 153]Increased merriness": "Increased merriness", + "[Upgrade name 154]Improved jolliness": "Improved jolliness", + "[Upgrade name 155]A lump of coal": "A lump of coal", + "[Upgrade name 156]An itchy sweater": "An itchy sweater", + "[Upgrade name 157]Reindeer baking grounds": "Reindeer baking grounds", + "[Upgrade name 158]Weighted sleighs": "Weighted sleighs", + "[Upgrade name 159]Ho ho ho-flavored frosting": "Ho ho ho-flavored frosting", + "[Upgrade name 160]Season savings": "Season savings", + "[Upgrade name 161]Toy workshop": "Toy workshop", + "[Upgrade name 162]Naughty list": "Naughty list", + "[Upgrade name 163]Santa's bottomless bag": "Santa's bottomless bag", + "[Upgrade name 164]Santa's helpers": "Santa's helpers", + "[Upgrade name 165]Santa's legacy": "Santa's legacy", + "[Upgrade name 166]Santa's milk and cookies": "Santa's milk and cookies", + "[Upgrade name 167]Reindeer season": "Reindeer season", + "[Upgrade name 168]Santa's dominion": "Santa's dominion", + "[Upgrade name 169]Pure heart biscuits": "Pure heart biscuits", + "[Upgrade name 170]Ardent heart biscuits": "Ardent heart biscuits", + "[Upgrade name 171]Sour heart biscuits": "Sour heart biscuits", + "[Upgrade name 172]Weeping heart biscuits": "Weeping heart biscuits", + "[Upgrade name 173]Golden heart biscuits": "Golden heart biscuits", + "[Upgrade name 174]Eternal heart biscuits": "Eternal heart biscuits", + "[Upgrade name 175]Gem polish": "Gem polish", + "[Upgrade name 176]9th color": "9th color", + "[Upgrade name 177]Chocolate light": "Chocolate light", + "[Upgrade name 178]Grainbow": "Grainbow", + "[Upgrade name 179]Pure cosmic light": "Pure cosmic light", + "[Upgrade name 180]Rainbow grandmas": "Rainbow grandmas", + "[Upgrade name 181]Season switcher": "Season switcher", + "[Upgrade name 182]Festive biscuit": "Festive biscuit", + "[Upgrade name 183]Ghostly biscuit": "Ghostly biscuit", + "[Upgrade name 184]Lovesick biscuit": "Lovesick biscuit", + "[Upgrade name 185]Fool's biscuit": "Fool's biscuit", + "[Upgrade name 186]Eternal seasons": "Eternal seasons", + "[Upgrade name 187]Kitten managers": "Kitten managers", + "[Upgrade name 188]Septillion fingers": "Septillion fingers", + "[Upgrade name 189]Octillion fingers": "Octillion fingers", + "[Upgrade name 190]Eludium mouse": "Eludium mouse", + "[Upgrade name 191]Wishalloy mouse": "Wishalloy mouse", + "[Upgrade name 192]Aging agents": "Aging agents", + "[Upgrade name 193]Pulsar sprinklers": "Pulsar sprinklers", + "[Upgrade name 194]Deep-bake process": "Deep-bake process", + "[Upgrade name 195]Coreforge": "Coreforge", + "[Upgrade name 196]Generation ship": "Generation ship", + "[Upgrade name 197]Origin crucible": "Origin crucible", + "[Upgrade name 198]Deity-sized portals": "Deity-sized portals", + "[Upgrade name 199]Far future enactment": "Far future enactment", + "[Upgrade name 200]Nanocosmics": "Nanocosmics", + "[Upgrade name 201]Glow-in-the-dark": "Glow-in-the-dark", + "[Upgrade name 202]Rose macarons": "Rose macarons", + "[Upgrade name 203]Lemon macarons": "Lemon macarons", + "[Upgrade name 204]Chocolate macarons": "Chocolate macarons", + "[Upgrade name 205]Pistachio macarons": "Pistachio macarons", + "[Upgrade name 206]Hazelnut macarons": "Hazelnut macarons", + "[Upgrade name 207]Violet macarons": "Violet macarons", + "[Upgrade name 208]Magic shenanigans": "Magic shenanigans", + "[Upgrade name 209]Bunny biscuit": "Bunny biscuit", + "[Upgrade name 210]Chicken egg": "Chicken egg", + "[Upgrade name 211]Duck egg": "Duck egg", + "[Upgrade name 212]Turkey egg": "Turkey egg", + "[Upgrade name 213]Quail egg": "Quail egg", + "[Upgrade name 214]Robin egg": "Robin egg", + "[Upgrade name 215]Ostrich egg": "Ostrich egg", + "[Upgrade name 216]Cassowary egg": "Cassowary egg", + "[Upgrade name 217]Salmon roe": "Salmon roe", + "[Upgrade name 218]Frogspawn": "Frogspawn", + "[Upgrade name 219]Shark egg": "Shark egg", + "[Upgrade name 220]Turtle egg": "Turtle egg", + "[Upgrade name 221]Ant larva": "Ant larva", + "[Upgrade name 222]Golden goose egg": "Golden goose egg", + "[Upgrade name 223]Faberge egg": "Faberge egg", + "[Upgrade name 224]Wrinklerspawn": "Wrinklerspawn", + "[Upgrade name 225]Cookie egg": "Cookie egg", + "[Upgrade name 226]Omelette": "Omelette", + "[Upgrade name 227]Chocolate egg": "Chocolate egg", + "[Upgrade name 228]Century egg": "Century egg", + "[Upgrade name 229]\"egg\"": "\"egg\"", + "[Upgrade name 230]Caramel macarons": "Caramel macarons", + "[Upgrade name 231]Licorice macarons": "Licorice macarons", + "[Upgrade name 232]Taller tellers": "Taller tellers", + "[Upgrade name 233]Scissor-resistant credit cards": "Scissor-resistant credit cards", + "[Upgrade name 234]Acid-proof vaults": "Acid-proof vaults", + "[Upgrade name 235]Chocolate coins": "Chocolate coins", + "[Upgrade name 236]Exponential interest rates": "Exponential interest rates", + "[Upgrade name 237]Financial zen": "Financial zen", + "[Upgrade name 238]Golden idols": "Golden idols", + "[Upgrade name 239]Sacrifices": "Sacrifices", + "[Upgrade name 240]Delicious blessing": "Delicious blessing", + "[Upgrade name 241]Sun festival": "Sun festival", + "[Upgrade name 242]Enlarged pantheon": "Enlarged pantheon", + "[Upgrade name 243]Great Baker in the sky": "Great Baker in the sky", + "[Upgrade name 244]Pointier hats": "Pointier hats", + "[Upgrade name 245]Beardlier beards": "Beardlier beards", + "[Upgrade name 246]Ancient grimoires": "Ancient grimoires", + "[Upgrade name 247]Kitchen curses": "Kitchen curses", + "[Upgrade name 248]School of sorcery": "School of sorcery", + "[Upgrade name 249]Dark formulas": "Dark formulas", + "[Upgrade name 250]Banker grandmas": "Banker grandmas", + "[Upgrade name 251]Priestess grandmas": "Priestess grandmas", + "[Upgrade name 252]Witch grandmas": "Witch grandmas", + "[Upgrade name 253]Tin of british tea biscuits": "Tin of british tea biscuits", + "[Upgrade name 254]Box of macarons": "Box of macarons", + "[Upgrade name 255]Box of brand biscuits": "Box of brand biscuits", + "[Upgrade name 256]Pure black chocolate cookies": "Pure black chocolate cookies", + "[Upgrade name 257]Pure white chocolate cookies": "Pure white chocolate cookies", + "[Upgrade name 258]Ladyfingers": "Ladyfingers", + "[Upgrade name 259]Tuiles": "Tuiles", + "[Upgrade name 260]Chocolate-stuffed biscuits": "Chocolate-stuffed biscuits", + "[Upgrade name 261]Checker cookies": "Checker cookies", + "[Upgrade name 262]Butter cookies": "Butter cookies", + "[Upgrade name 263]Cream cookies": "Cream cookies", + "[Upgrade name 264]Permanent upgrade slot I": "Permanent upgrade slot I", + "[Upgrade name 265]Permanent upgrade slot II": "Permanent upgrade slot II", + "[Upgrade name 266]Permanent upgrade slot III": "Permanent upgrade slot III", + "[Upgrade name 267]Permanent upgrade slot IV": "Permanent upgrade slot IV", + "[Upgrade name 268]Permanent upgrade slot V": "Permanent upgrade slot V", + "[Upgrade name 269]Starspawn": "Starspawn", + "[Upgrade name 270]Starsnow": "Starsnow", + "[Upgrade name 271]Starterror": "Starterror", + "[Upgrade name 272]Starlove": "Starlove", + "[Upgrade name 273]Startrade": "Startrade", + "[Upgrade name 274]Angels": "Angels", + "[Upgrade name 275]Archangels": "Archangels", + "[Upgrade name 276]Virtues": "Virtues", + "[Upgrade name 277]Dominions": "Dominions", + "[Upgrade name 278]Cherubim": "Cherubim", + "[Upgrade name 279]Seraphim": "Seraphim", + "[Upgrade name 280]God": "God", + "[Upgrade name 281]Twin Gates of Transcendence": "Twin Gates of Transcendence", + "[Upgrade name 282]Heavenly luck": "Heavenly luck", + "[Upgrade name 283]Lasting fortune": "Lasting fortune", + "[Upgrade name 284]Decisive fate": "Decisive fate", + "[Upgrade name 285]Divine discount": "Divine discount", + "[Upgrade name 286]Divine sales": "Divine sales", + "[Upgrade name 287]Divine bakeries": "Divine bakeries", + "[Upgrade name 288]Starter kit": "Starter kit", + "[Upgrade name 289]Starter kitchen": "Starter kitchen", + "[Upgrade name 290]Halo gloves": "Halo gloves", + "[Upgrade name 291]Kitten angels": "Kitten angels", + "[Upgrade name 292]Unholy bait": "Unholy bait", + "[Upgrade name 293]Sacrilegious corruption": "Sacrilegious corruption", + "[Upgrade name 294]Xtreme walkers": "Xtreme walkers", + "[Upgrade name 295]Fudge fungus": "Fudge fungus", + "[Upgrade name 296]Planetsplitters": "Planetsplitters", + "[Upgrade name 297]Cyborg workforce": "Cyborg workforce", + "[Upgrade name 298]Way of the wallet": "Way of the wallet", + "[Upgrade name 299]Creation myth": "Creation myth", + "[Upgrade name 300]Cookiemancy": "Cookiemancy", + "[Upgrade name 301]Dyson sphere": "Dyson sphere", + "[Upgrade name 302]Theory of atomic fluidity": "Theory of atomic fluidity", + "[Upgrade name 303]End of times back-up plan": "End of times back-up plan", + "[Upgrade name 304]Great loop hypothesis": "Great loop hypothesis", + "[Upgrade name 305]The Pulse": "The Pulse", + "[Upgrade name 306]Lux sanctorum": "Lux sanctorum", + "[Upgrade name 307]The Unbridling": "The Unbridling", + "[Upgrade name 308]Wheat triffids": "Wheat triffids", + "[Upgrade name 309]Canola oil wells": "Canola oil wells", + "[Upgrade name 310]78-hour days": "78-hour days", + "[Upgrade name 311]The stuff rationale": "The stuff rationale", + "[Upgrade name 312]Theocracy": "Theocracy", + "[Upgrade name 313]Rabbit trick": "Rabbit trick", + "[Upgrade name 314]The final frontier": "The final frontier", + "[Upgrade name 315]Beige goo": "Beige goo", + "[Upgrade name 316]Maddening chants": "Maddening chants", + "[Upgrade name 317]Cookietopian moments of maybe": "Cookietopian moments of maybe", + "[Upgrade name 318]Some other super-tiny fundamental particle? Probably?": "Some other super-tiny fundamental particle? Probably?", + "[Upgrade name 319]Reverse shadows": "Reverse shadows", + "[Upgrade name 320]Kitten accountants": "Kitten accountants", + "[Upgrade name 321]Kitten specialists": "Kitten specialists", + "[Upgrade name 322]Kitten experts": "Kitten experts", + "[Upgrade name 323]How to bake your dragon": "How to bake your dragon", + "[Upgrade name 324]A crumbly egg": "A crumbly egg", + "[Upgrade name 325]Chimera": "Chimera", + "[Upgrade name 326]Tin of butter cookies": "Tin of butter cookies", + "[Upgrade name 327]Golden switch": "Golden switch", + "[Upgrade name 328]Classic dairy selection": "Classic dairy selection", + "[Upgrade name 329]Fanciful dairy selection": "Fanciful dairy selection", + "[Upgrade name 330]Dragon cookie": "Dragon cookie", + "[Upgrade name 331]Golden switch [off]": "Golden switch [off]", + "[Upgrade name 332]Golden switch [on]": "Golden switch [on]", + "[Upgrade name 333]Milk selector": "Milk selector", + "[Upgrade name 334]Milk chocolate butter biscuit": "Milk chocolate butter biscuit", + "[Upgrade name 335]Dark chocolate butter biscuit": "Dark chocolate butter biscuit", + "[Upgrade name 336]White chocolate butter biscuit": "White chocolate butter biscuit", + "[Upgrade name 337]Ruby chocolate butter biscuit": "Ruby chocolate butter biscuit", + "[Upgrade name 338]Gingersnaps": "Gingersnaps", + "[Upgrade name 339]Cinnamon cookies": "Cinnamon cookies", + "[Upgrade name 340]Vanity cookies": "Vanity cookies", + "[Upgrade name 341]Cigars": "Cigars", + "[Upgrade name 342]Pinwheel cookies": "Pinwheel cookies", + "[Upgrade name 343]Fudge squares": "Fudge squares", + "[Upgrade name 344]Digits": "Digits", + "[Upgrade name 345]Butter horseshoes": "Butter horseshoes", + "[Upgrade name 346]Butter pucks": "Butter pucks", + "[Upgrade name 347]Butter knots": "Butter knots", + "[Upgrade name 348]Butter slabs": "Butter slabs", + "[Upgrade name 349]Butter swirls": "Butter swirls", + "[Upgrade name 350]Shortbread biscuits": "Shortbread biscuits", + "[Upgrade name 351]Millionaires' shortbreads": "Millionaires' shortbreads", + "[Upgrade name 352]Caramel cookies": "Caramel cookies", + "[Upgrade name 353]Belphegor": "Belphegor", + "[Upgrade name 354]Mammon": "Mammon", + "[Upgrade name 355]Abaddon": "Abaddon", + "[Upgrade name 356]Satan": "Satan", + "[Upgrade name 357]Asmodeus": "Asmodeus", + "[Upgrade name 358]Beelzebub": "Beelzebub", + "[Upgrade name 359]Lucifer": "Lucifer", + "[Upgrade name 360]Golden cookie alert sound": "Golden cookie alert sound", + "[Upgrade name 361]Golden cookie sound selector": "Golden cookie sound selector", + "[Upgrade name 362]Basic wallpaper assortment": "Basic wallpaper assortment", + "[Upgrade name 363]Legacy": "Legacy", + "[Upgrade name 364]Elder spice": "Elder spice", + "[Upgrade name 365]Residual luck": "Residual luck", + "[Upgrade name 366]Fantasteel mouse": "Fantasteel mouse", + "[Upgrade name 367]Nevercrack mouse": "Nevercrack mouse", + "[Upgrade name 368]Five-finger discount": "Five-finger discount", + "[Upgrade name 369]Future almanacs": "Future almanacs", + "[Upgrade name 370]Rain prayer": "Rain prayer", + "[Upgrade name 371]Seismic magic": "Seismic magic", + "[Upgrade name 372]Asteroid mining": "Asteroid mining", + "[Upgrade name 373]Quantum electronics": "Quantum electronics", + "[Upgrade name 374]Temporal overclocking": "Temporal overclocking", + "[Upgrade name 375]Contracts from beyond": "Contracts from beyond", + "[Upgrade name 376]Printing presses": "Printing presses", + "[Upgrade name 377]Paganism": "Paganism", + "[Upgrade name 378]God particle": "God particle", + "[Upgrade name 379]Arcane knowledge": "Arcane knowledge", + "[Upgrade name 380]Magical botany": "Magical botany", + "[Upgrade name 381]Fossil fuels": "Fossil fuels", + "[Upgrade name 382]Shipyards": "Shipyards", + "[Upgrade name 383]Primordial ores": "Primordial ores", + "[Upgrade name 384]Gold fund": "Gold fund", + "[Upgrade name 385]Infernal crops": "Infernal crops", + "[Upgrade name 386]Abysmal glimmer": "Abysmal glimmer", + "[Upgrade name 387]Relativistic parsec-skipping": "Relativistic parsec-skipping", + "[Upgrade name 388]Primeval glow": "Primeval glow", + "[Upgrade name 389]Extra physics funding": "Extra physics funding", + "[Upgrade name 390]Chemical proficiency": "Chemical proficiency", + "[Upgrade name 391]Light magic": "Light magic", + "[Upgrade name 392]Mystical energies": "Mystical energies", + "[Upgrade name 393]Synergies Vol. I": "Synergies Vol. I", + "[Upgrade name 394]Synergies Vol. II": "Synergies Vol. II", + "[Upgrade name 395]Heavenly cookies": "Heavenly cookies", + "[Upgrade name 396]Wrinkly cookies": "Wrinkly cookies", + "[Upgrade name 397]Distilled essence of redoubled luck": "Distilled essence of redoubled luck", + "[Upgrade name 398]Occult obstruction": "Occult obstruction", + "[Upgrade name 399]Glucose-charged air": "Glucose-charged air", + "[Upgrade name 400]Lavender chocolate butter biscuit": "Lavender chocolate butter biscuit", + "[Upgrade name 401]Lombardia cookies": "Lombardia cookies", + "[Upgrade name 402]Bastenaken cookies": "Bastenaken cookies", + "[Upgrade name 403]Pecan sandies": "Pecan sandies", + "[Upgrade name 404]Moravian spice cookies": "Moravian spice cookies", + "[Upgrade name 405]Anzac biscuits": "Anzac biscuits", + "[Upgrade name 406]Buttercakes": "Buttercakes", + "[Upgrade name 407]Ice cream sandwiches": "Ice cream sandwiches", + "[Upgrade name 408]Stevia Caelestis": "Stevia Caelestis", + "[Upgrade name 409]Diabetica Daemonicus": "Diabetica Daemonicus", + "[Upgrade name 410]Sucralosia Inutilis": "Sucralosia Inutilis", + "[Upgrade name 411]Lucky digit": "Lucky digit", + "[Upgrade name 412]Lucky number": "Lucky number", + "[Upgrade name 413]Lucky payout": "Lucky payout", + "[Upgrade name 414]Background selector": "Background selector", + "[Upgrade name 415]Lucky grandmas": "Lucky grandmas", + "[Upgrade name 416]Your lucky cookie": "Your lucky cookie", + "[Upgrade name 417]\"All Bets Are Off\" magic coin": "\"All Bets Are Off\" magic coin", + "[Upgrade name 418]Winning lottery ticket": "Winning lottery ticket", + "[Upgrade name 419]Four-leaf clover field": "Four-leaf clover field", + "[Upgrade name 420]A recipe book about books": "A recipe book about books", + "[Upgrade name 421]Leprechaun village": "Leprechaun village", + "[Upgrade name 422]Improbability drive": "Improbability drive", + "[Upgrade name 423]Antisuperstistronics": "Antisuperstistronics", + "[Upgrade name 424]Gemmed talismans": "Gemmed talismans", + "[Upgrade name 425]Kitten consultants": "Kitten consultants", + "[Upgrade name 426]Birthday cookie": "Birthday cookie", + "[Upgrade name 427]Armythril mouse": "Armythril mouse", + "[Upgrade name 428]Reverse dementia": "Reverse dementia", + "[Upgrade name 429]Humane pesticides": "Humane pesticides", + "[Upgrade name 430]Mole people": "Mole people", + "[Upgrade name 431]Machine learning": "Machine learning", + "[Upgrade name 432]Edible money": "Edible money", + "[Upgrade name 433]Sick rap prayers": "Sick rap prayers", + "[Upgrade name 434]Deluxe tailored wands": "Deluxe tailored wands", + "[Upgrade name 435]Autopilot": "Autopilot", + "[Upgrade name 436]The advent of chemistry": "The advent of chemistry", + "[Upgrade name 437]The real world": "The real world", + "[Upgrade name 438]Second seconds": "Second seconds", + "[Upgrade name 439]Quantum comb": "Quantum comb", + "[Upgrade name 440]Crystal mirrors": "Crystal mirrors", + "[Upgrade name 441]Bunnypedes": "Bunnypedes", + "[Upgrade name 442]Kitten assistants to the regional manager": "Kitten assistants to the regional manager", + "[Upgrade name 443]Charm quarks": "Charm quarks", + "[Upgrade name 444]Pink biscuits": "Pink biscuits", + "[Upgrade name 445]Whole-grain cookies": "Whole-grain cookies", + "[Upgrade name 446]Candy cookies": "Candy cookies", + "[Upgrade name 447]Big chip cookies": "Big chip cookies", + "[Upgrade name 448]One chip cookies": "One chip cookies", + "[Upgrade name 449]Sugar baking": "Sugar baking", + "[Upgrade name 450]Sugar craving": "Sugar craving", + "[Upgrade name 451]Sugar aging process": "Sugar aging process", + "[Upgrade name 452]Sugar frenzy": "Sugar frenzy", + "[Upgrade name 453]Sprinkles cookies": "Sprinkles cookies", + "[Upgrade name 454]Peanut butter blossoms": "Peanut butter blossoms", + "[Upgrade name 455]No-bake cookies": "No-bake cookies", + "[Upgrade name 456]Florentines": "Florentines", + "[Upgrade name 457]Chocolate crinkles": "Chocolate crinkles", + "[Upgrade name 458]Maple cookies": "Maple cookies", + "[Upgrade name 459]Turbo-charged soil": "Turbo-charged soil", + "[Upgrade name 460]Technobsidian mouse": "Technobsidian mouse", + "[Upgrade name 461]Plasmarble mouse": "Plasmarble mouse", + "[Upgrade name 462]Kitten marketeers": "Kitten marketeers", + "[Upgrade name 463]Festivity loops": "Festivity loops", + "[Upgrade name 464]Persian rice cookies": "Persian rice cookies", + "[Upgrade name 465]Norwegian cookies": "Norwegian cookies", + "[Upgrade name 466]Crispy rice cookies": "Crispy rice cookies", + "[Upgrade name 467]Ube cookies": "Ube cookies", + "[Upgrade name 468]Butterscotch cookies": "Butterscotch cookies", + "[Upgrade name 469]Speculaas": "Speculaas", + "[Upgrade name 470]Elderwort biscuits": "Elderwort biscuits", + "[Upgrade name 471]Bakeberry cookies": "Bakeberry cookies", + "[Upgrade name 472]Duketater cookies": "Duketater cookies", + "[Upgrade name 473]Green yeast digestives": "Green yeast digestives", + "[Upgrade name 474]Fern tea": "Fern tea", + "[Upgrade name 475]Ichor syrup": "Ichor syrup", + "[Upgrade name 476]Wheat slims": "Wheat slims", + "[Upgrade name 477]Synthetic chocolate green honey butter biscuit": "Synthetic chocolate green honey butter biscuit", + "[Upgrade name 478]Royal raspberry chocolate butter biscuit": "Royal raspberry chocolate butter biscuit", + "[Upgrade name 479]Ultra-concentrated high-energy chocolate butter biscuit": "Ultra-concentrated high-energy chocolate butter biscuit", + "[Upgrade name 480]Timeproof hair dyes": "Timeproof hair dyes", + "[Upgrade name 481]Barnstars": "Barnstars", + "[Upgrade name 482]Mine canaries": "Mine canaries", + "[Upgrade name 483]Brownie point system": "Brownie point system", + "[Upgrade name 484]Grand supercycles": "Grand supercycles", + "[Upgrade name 485]Psalm-reading": "Psalm-reading", + "[Upgrade name 486]Immobile spellcasting": "Immobile spellcasting", + "[Upgrade name 487]Restaurants at the end of the universe": "Restaurants at the end of the universe", + "[Upgrade name 488]On second thought": "On second thought", + "[Upgrade name 489]Dimensional garbage gulper": "Dimensional garbage gulper", + "[Upgrade name 490]Additional clock hands": "Additional clock hands", + "[Upgrade name 491]Baking Nobel prize": "Baking Nobel prize", + "[Upgrade name 492]Reverse theory of light": "Reverse theory of light", + "[Upgrade name 493]Revised probabilistics": "Revised probabilistics", + "[Upgrade name 494]Kitten analysts": "Kitten analysts", + "[Upgrade name 495]Eye of the wrinkler": "Eye of the wrinkler", + "[Upgrade name 496]Inspired checklist": "Inspired checklist", + "[Upgrade name 497]Pure pitch-black chocolate butter biscuit": "Pure pitch-black chocolate butter biscuit", + "[Upgrade name 498]Chocolate oatmeal cookies": "Chocolate oatmeal cookies", + "[Upgrade name 499]Molasses cookies": "Molasses cookies", + "[Upgrade name 500]Biscotti": "Biscotti", + "[Upgrade name 501]Waffle cookies": "Waffle cookies", + "[Upgrade name 502]Almond cookies": "Almond cookies", + "[Upgrade name 503]Hazelnut cookies": "Hazelnut cookies", + "[Upgrade name 504]Walnut cookies": "Walnut cookies", + "[Upgrade name 505]Label printer": "Label printer", + "[Upgrade name 506]Good manners": "Good manners", + "[Upgrade name 507]Lindworms": "Lindworms", + "[Upgrade name 508]Bore again": "Bore again", + "[Upgrade name 509]\"Volunteer\" interns": "\"Volunteer\" interns", + "[Upgrade name 510]Rules of acquisition": "Rules of acquisition", + "[Upgrade name 511]War of the gods": "War of the gods", + "[Upgrade name 512]Electricity": "Electricity", + "[Upgrade name 513]Universal alphabet": "Universal alphabet", + "[Upgrade name 514]Public betterment": "Public betterment", + "[Upgrade name 515]Embedded microportals": "Embedded microportals", + "[Upgrade name 516]Nostalgia": "Nostalgia", + "[Upgrade name 517]The definite molecule": "The definite molecule", + "[Upgrade name 518]Light capture measures": "Light capture measures", + "[Upgrade name 519]0-sided dice": "0-sided dice", + "[Upgrade name 520]Heralds": "Heralds", + "[Upgrade name 521]Metagrandmas": "Metagrandmas", + "[Upgrade name 522]Metabakeries": "Metabakeries", + "[Upgrade name 523]Mandelbrown sugar": "Mandelbrown sugar", + "[Upgrade name 524]Fractoids": "Fractoids", + "[Upgrade name 525]Nested universe theory": "Nested universe theory", + "[Upgrade name 526]Menger sponge cake": "Menger sponge cake", + "[Upgrade name 527]One particularly good-humored cow": "One particularly good-humored cow", + "[Upgrade name 528]Chocolate ouroboros": "Chocolate ouroboros", + "[Upgrade name 529]Nested": "Nested", + "[Upgrade name 530]Space-filling fibers": "Space-filling fibers", + "[Upgrade name 531]Endless book of prose": "Endless book of prose", + "[Upgrade name 532]The set of all sets": "The set of all sets", + "[Upgrade name 533]Recursive mirrors": "Recursive mirrors", + "[Upgrade name 534]Mice clicking mice": "Mice clicking mice", + "[Upgrade name 535]Custard creams": "Custard creams", + "[Upgrade name 536]Bourbon biscuits": "Bourbon biscuits", + "[Upgrade name 537]Keepsakes": "Keepsakes", + "[Upgrade name 538]Mini-cookies": "Mini-cookies", + "[Upgrade name 539]Sugar crystal cookies": "Sugar crystal cookies", + "[Upgrade name 540]Box of maybe cookies": "Box of maybe cookies", + "[Upgrade name 541]Box of not cookies": "Box of not cookies", + "[Upgrade name 542]Box of pastries": "Box of pastries", + "[Upgrade name 543]Profiteroles": "Profiteroles", + "[Upgrade name 544]Jelly donut": "Jelly donut", + "[Upgrade name 545]Glazed donut": "Glazed donut", + "[Upgrade name 546]Chocolate cake": "Chocolate cake", + "[Upgrade name 547]Strawberry cake": "Strawberry cake", + "[Upgrade name 548]Apple pie": "Apple pie", + "[Upgrade name 549]Lemon meringue pie": "Lemon meringue pie", + "[Upgrade name 550]Butter croissant": "Butter croissant", + "[Upgrade name 551]Cookie dough": "Cookie dough", + "[Upgrade name 552]Burnt cookie": "Burnt cookie", + "[Upgrade name 553]A chocolate chip cookie but with the chips picked off for some reason": "A chocolate chip cookie but with the chips picked off for some reason", + "[Upgrade name 554]Flavor text cookie": "Flavor text cookie", + "[Upgrade name 555]High-definition cookie": "High-definition cookie", + "[Upgrade name 556]Toast": "Toast", + "[Upgrade name 557]Peanut butter & jelly": "Peanut butter & jelly", + "[Upgrade name 558]Wookies": "Wookies", + "[Upgrade name 559]Cheeseburger": "Cheeseburger", + "[Upgrade name 560]One lone chocolate chip": "One lone chocolate chip", + "[Upgrade name 561]Genius accounting": "Genius accounting", + "[Upgrade name 562]Shimmering veil": "Shimmering veil", + "[Upgrade name 563]Shimmering veil [off]": "Shimmering veil [off]", + "[Upgrade name 564]Shimmering veil [on]": "Shimmering veil [on]", + "[Upgrade name 565]Whoopie pies": "Whoopie pies", + "[Upgrade name 566]Caramel wafer biscuits": "Caramel wafer biscuits", + "[Upgrade name 567]Chocolate chip mocha cookies": "Chocolate chip mocha cookies", + "[Upgrade name 568]Earl Grey cookies": "Earl Grey cookies", + "[Upgrade name 569]Corn syrup cookies": "Corn syrup cookies", + "[Upgrade name 570]Icebox cookies": "Icebox cookies", + "[Upgrade name 571]Graham crackers": "Graham crackers", + "[Upgrade name 572]Hardtack": "Hardtack", + "[Upgrade name 573]Cornflake cookies": "Cornflake cookies", + "[Upgrade name 574]Tofu cookies": "Tofu cookies", + "[Upgrade name 575]Gluten-free cookies": "Gluten-free cookies", + "[Upgrade name 576]Russian bread cookies": "Russian bread cookies", + "[Upgrade name 577]Lebkuchen": "Lebkuchen", + "[Upgrade name 578]Aachener Printen": "Aachener Printen", + "[Upgrade name 579]Canistrelli": "Canistrelli", + "[Upgrade name 580]Nice biscuits": "Nice biscuits", + "[Upgrade name 581]French pure butter cookies": "French pure butter cookies", + "[Upgrade name 582]Petit beurre": "Petit beurre", + "[Upgrade name 583]Nanaimo bars": "Nanaimo bars", + "[Upgrade name 584]Berger cookies": "Berger cookies", + "[Upgrade name 585]Chinsuko": "Chinsuko", + "[Upgrade name 586]Panda koala biscuits": "Panda koala biscuits", + "[Upgrade name 587]Putri salju": "Putri salju", + "[Upgrade name 588]Milk cookies": "Milk cookies", + "[Upgrade name 589]Cookie crumbs": "Cookie crumbs", + "[Upgrade name 590]Chocolate chip cookie": "Chocolate chip cookie", + "[Upgrade name 591]Cosmic beginner's luck": "Cosmic beginner's luck", + "[Upgrade name 592]Reinforced membrane": "Reinforced membrane", + "[Upgrade name 593]Binary grandmas": "Binary grandmas", + "[Upgrade name 594]The JavaScript console for dummies": "The JavaScript console for dummies", + "[Upgrade name 595]64bit arrays": "64bit arrays", + "[Upgrade name 596]Stack overflow": "Stack overflow", + "[Upgrade name 597]Enterprise compiler": "Enterprise compiler", + "[Upgrade name 598]Syntactic sugar": "Syntactic sugar", + "[Upgrade name 599]A nice cup of coffee": "A nice cup of coffee", + "[Upgrade name 600]Just-in-time baking": "Just-in-time baking", + "[Upgrade name 601]cookies++": "cookies++", + "[Upgrade name 602]Software updates": "Software updates", + "[Upgrade name 603]Game.Loop": "Game.Loop", + "[Upgrade name 604]eval()": "eval()", + "[Upgrade name 605]Script grannies": "Script grannies", + "[Upgrade name 606]Tombola computing": "Tombola computing", + "[Upgrade name 607]Kruidnoten": "Kruidnoten", + "[Upgrade name 608]Marie biscuits": "Marie biscuits", + "[Upgrade name 609]Meringue cookies": "Meringue cookies", + "[Upgrade name 610]Pizza": "Pizza", + "[Upgrade name 611]Crackers": "Crackers", + "[Upgrade name 612]Havabreaks": "Havabreaks", + "[Upgrade name 613]Kitten executives": "Kitten executives", + "[Upgrade name 614]Chai tea cookies": "Chai tea cookies", + "[Upgrade name 615]Yogurt cookies": "Yogurt cookies", + "[Upgrade name 616]Thumbprint cookies": "Thumbprint cookies", + "[Upgrade name 617]Pizzelle": "Pizzelle", + "[Upgrade name 618]Zilla wafers": "Zilla wafers", + "[Upgrade name 619]Dim Dams": "Dim Dams", + "[Upgrade name 620]Candy": "Candy", + "[Upgrade name 621]Fortune #001": "Fortune #001", + "[Upgrade name 622]Fortune #002": "Fortune #002", + "[Upgrade name 623]Fortune #003": "Fortune #003", + "[Upgrade name 624]Fortune #004": "Fortune #004", + "[Upgrade name 625]Fortune #005": "Fortune #005", + "[Upgrade name 626]Fortune #006": "Fortune #006", + "[Upgrade name 627]Fortune #007": "Fortune #007", + "[Upgrade name 628]Fortune #008": "Fortune #008", + "[Upgrade name 629]Fortune #009": "Fortune #009", + "[Upgrade name 630]Fortune #010": "Fortune #010", + "[Upgrade name 631]Fortune #011": "Fortune #011", + "[Upgrade name 632]Fortune #012": "Fortune #012", + "[Upgrade name 633]Fortune #013": "Fortune #013", + "[Upgrade name 634]Fortune #014": "Fortune #014", + "[Upgrade name 635]Fortune #015": "Fortune #015", + "[Upgrade name 636]Fortune #016": "Fortune #016", + "[Upgrade name 637]Fortune #017": "Fortune #017", + "[Upgrade name 638]Fortune #100": "Fortune #100", + "[Upgrade name 639]Fortune #101": "Fortune #101", + "[Upgrade name 640]Fortune #102": "Fortune #102", + "[Upgrade name 641]Fortune #103": "Fortune #103", + "[Upgrade name 642]Fortune #104": "Fortune #104", + "[Upgrade name 643]Fortune cookies": "Fortune cookies", + "[Upgrade name 644]A really good guide book": "A really good guide book", + "[Upgrade name 645]Prism heart biscuits": "Prism heart biscuits", + "[Upgrade name 646]Kitten wages": "Kitten wages", + "[Upgrade name 647]Pet the dragon": "Pet the dragon", + "[Upgrade name 648]Dragon scale": "Dragon scale", + "[Upgrade name 649]Dragon claw": "Dragon claw", + "[Upgrade name 650]Dragon fang": "Dragon fang", + "[Upgrade name 651]Dragon teddy bear": "Dragon teddy bear", + "[Upgrade name 652]Granola cookies": "Granola cookies", + "[Upgrade name 653]Ricotta cookies": "Ricotta cookies", + "[Upgrade name 654]Roze koeken": "Roze koeken", + "[Upgrade name 655]Peanut butter cup cookies": "Peanut butter cup cookies", + "[Upgrade name 656]Sesame cookies": "Sesame cookies", + "[Upgrade name 657]Taiyaki": "Taiyaki", + "[Upgrade name 658]Vanillekipferl": "Vanillekipferl", + "[Upgrade name 659]Cosmic chocolate butter biscuit": "Cosmic chocolate butter biscuit", + "[Upgrade name 660]Nonillion fingers": "Nonillion fingers", + "[Upgrade name 661]Miraculite mouse": "Miraculite mouse", + "[Upgrade name 662]Generation degeneration": "Generation degeneration", + "[Upgrade name 663]Global seed vault": "Global seed vault", + "[Upgrade name 664]Air mining": "Air mining", + "[Upgrade name 665]Behavioral reframing": "Behavioral reframing", + "[Upgrade name 666]Altruistic loop": "Altruistic loop", + "[Upgrade name 667]A novel idea": "A novel idea", + "[Upgrade name 668]Spelling bees": "Spelling bees", + "[Upgrade name 669]Toroid universe": "Toroid universe", + "[Upgrade name 670]Hermetic reconciliation": "Hermetic reconciliation", + "[Upgrade name 671]His advent": "His advent", + "[Upgrade name 672]Split seconds": "Split seconds", + "[Upgrade name 673]Flavor itself": "Flavor itself", + "[Upgrade name 674]Light speed limit": "Light speed limit", + "[Upgrade name 675]A touch of determinism": "A touch of determinism", + "[Upgrade name 676]This upgrade": "This upgrade", + "[Upgrade name 677]Your biggest fans": "Your biggest fans", + "[Upgrade name 678]Battenberg biscuits": "Battenberg biscuits", + "[Upgrade name 679]Rosette cookies": "Rosette cookies", + "[Upgrade name 680]Gangmakers": "Gangmakers", + "[Upgrade name 681]Welsh cookies": "Welsh cookies", + "[Upgrade name 682]Raspberry cheesecake cookies": "Raspberry cheesecake cookies", + "[Upgrade name 683]Alternate grandmas": "Alternate grandmas", + "[Upgrade name 684]Manifest destiny": "Manifest destiny", + "[Upgrade name 685]The multiverse in a nutshell": "The multiverse in a nutshell", + "[Upgrade name 686]All-conversion": "All-conversion", + "[Upgrade name 687]Multiverse agents": "Multiverse agents", + "[Upgrade name 688]Escape plan": "Escape plan", + "[Upgrade name 689]Game design": "Game design", + "[Upgrade name 690]Sandbox universes": "Sandbox universes", + "[Upgrade name 691]Multiverse wars": "Multiverse wars", + "[Upgrade name 692]Mobile ports": "Mobile ports", + "[Upgrade name 693]Encapsulated realities": "Encapsulated realities", + "[Upgrade name 694]Extrinsic clicking": "Extrinsic clicking", + "[Upgrade name 695]Universal idling": "Universal idling", + "[Upgrade name 696]Perforated mille-feuille cosmos": "Perforated mille-feuille cosmos", + "[Upgrade name 697]Infraverses and superverses": "Infraverses and superverses", + "[Upgrade name 698]Fortune #018": "Fortune #018", + "[Upgrade name 699]Butter biscuit (with butter)": "Butter biscuit (with butter)", + "[Upgrade name 700]Visits": "Visits", + "[Upgrade name 701]Reverse-veganism": "Reverse-veganism", + "[Upgrade name 702]Caramel alloys": "Caramel alloys", + "[Upgrade name 703]The infinity engine": "The infinity engine", + "[Upgrade name 704]Diminishing tax returns": "Diminishing tax returns", + "[Upgrade name 705]Apparitions": "Apparitions", + "[Upgrade name 706]Wizard basements": "Wizard basements", + "[Upgrade name 707]Prime directive": "Prime directive", + "[Upgrade name 708]Chromatic cycling": "Chromatic cycling", + "[Upgrade name 709]Domestic rifts": "Domestic rifts", + "[Upgrade name 710]Patience abolished": "Patience abolished", + "[Upgrade name 711]Delicious pull": "Delicious pull", + "[Upgrade name 712]Occam's laser": "Occam's laser", + "[Upgrade name 713]On a streak": "On a streak", + "[Upgrade name 714]A box": "A box", + "[Upgrade name 715]Hacker shades": "Hacker shades", + "[Upgrade name 716]Break the fifth wall": "Break the fifth wall", + "[Upgrade name 717]Cat ladies": "Cat ladies", + "[Upgrade name 718]Milkhelp® lactose intolerance relief tablets": "Milkhelp® lactose intolerance relief tablets", + "[Upgrade name 719]Aura gloves": "Aura gloves", + "[Upgrade name 720]Luminous gloves": "Luminous gloves", + "[Upgrade name 721]Bokkenpootjes": "Bokkenpootjes", + "[Upgrade name 722]Fat rascals": "Fat rascals", + "[Upgrade name 723]Ischler cookies": "Ischler cookies", + "[Upgrade name 724]Matcha cookies": "Matcha cookies", + "[Upgrade name 725]Earl Grey macarons": "Earl Grey macarons", + "[Upgrade name 726]Pokey": "Pokey", + "[Upgrade name 727]Cashew cookies": "Cashew cookies", + "[Upgrade name 728]Milk chocolate cookies": "Milk chocolate cookies", + "[Upgrade name 729]Brainy grandmas": "Brainy grandmas", + "[Upgrade name 730]Principled neural shackles": "Principled neural shackles", + "[Upgrade name 731]Obey": "Obey", + "[Upgrade name 732]A sprinkle of irrationality": "A sprinkle of irrationality", + "[Upgrade name 733]Front and back hemispheres": "Front and back hemispheres", + "[Upgrade name 734]Neural networking": "Neural networking", + "[Upgrade name 735]Cosmic brainstorms": "Cosmic brainstorms", + "[Upgrade name 736]Megatherapy": "Megatherapy", + "[Upgrade name 737]Synaptic lubricant": "Synaptic lubricant", + "[Upgrade name 738]Psychokinesis": "Psychokinesis", + "[Upgrade name 739]Spines": "Spines", + "[Upgrade name 740]Neuraforming": "Neuraforming", + "[Upgrade name 741]Epistemological trickery": "Epistemological trickery", + "[Upgrade name 742]Every possible idea": "Every possible idea", + "[Upgrade name 743]Kitchen cabinets": "Kitchen cabinets", + "[Upgrade name 744]Cookie mulch": "Cookie mulch", + "[Upgrade name 745]Delicious mineralogy": "Delicious mineralogy", + "[Upgrade name 746]N-dimensional assembly lines": "N-dimensional assembly lines", + "[Upgrade name 747]Cookie Points": "Cookie Points", + "[Upgrade name 748]Negatheism": "Negatheism", + "[Upgrade name 749]Magical realism": "Magical realism", + "[Upgrade name 750]Cosmic foreground radiation": "Cosmic foreground radiation", + "[Upgrade name 751]Arcanized glassware": "Arcanized glassware", + "[Upgrade name 752]Portal guns": "Portal guns", + "[Upgrade name 753]Timeproof upholstery": "Timeproof upholstery", + "[Upgrade name 754]Employee minification": "Employee minification", + "[Upgrade name 755]Hyperblack paint": "Hyperblack paint", + "[Upgrade name 756]Silver lining maximization": "Silver lining maximization", + "[Upgrade name 757]Multiscale profiling": "Multiscale profiling", + "[Upgrade name 758]PHP containment vats": "PHP containment vats", + "[Upgrade name 759]Opposite universe": "Opposite universe", + "[Upgrade name 760]The land of dreams": "The land of dreams", + "[Upgrade name 761]Thoughts & prayers": "Thoughts & prayers", + "[Upgrade name 762]Fertile minds": "Fertile minds", + "[Upgrade name 763]Fortune #019": "Fortune #019", + "[Upgrade name 764]Decillion fingers": "Decillion fingers", + "[Upgrade name 765]Aetherice mouse": "Aetherice mouse", + "[Upgrade name 766]Kitten admins": "Kitten admins", + "[Upgrade name 767]Everybutter biscuit": "Everybutter biscuit", + "[Upgrade name 768]Unshackled cursors": "Unshackled cursors", + "[Upgrade name 769]Unshackled grandmas": "Unshackled grandmas", + "[Upgrade name 770]Unshackled farms": "Unshackled farms", + "[Upgrade name 771]Unshackled mines": "Unshackled mines", + "[Upgrade name 772]Unshackled factories": "Unshackled factories", + "[Upgrade name 773]Unshackled banks": "Unshackled banks", + "[Upgrade name 774]Unshackled temples": "Unshackled temples", + "[Upgrade name 775]Unshackled wizard towers": "Unshackled wizard towers", + "[Upgrade name 776]Unshackled shipments": "Unshackled shipments", + "[Upgrade name 777]Unshackled alchemy labs": "Unshackled alchemy labs", + "[Upgrade name 778]Unshackled portals": "Unshackled portals", + "[Upgrade name 779]Unshackled time machines": "Unshackled time machines", + "[Upgrade name 780]Unshackled antimatter condensers": "Unshackled antimatter condensers", + "[Upgrade name 781]Unshackled prisms": "Unshackled prisms", + "[Upgrade name 782]Unshackled chancemakers": "Unshackled chancemakers", + "[Upgrade name 783]Unshackled fractal engines": "Unshackled fractal engines", + "[Upgrade name 784]Unshackled javascript consoles": "Unshackled javascript consoles", + "[Upgrade name 785]Unshackled idleverses": "Unshackled idleverses", + "[Upgrade name 786]Unshackled cortex bakers": "Unshackled cortex bakers", + "[Upgrade name 787]Unshackled flavor": "Unshackled flavor", + "[Upgrade name 788]Unshackled berrylium": "Unshackled berrylium", + "[Upgrade name 789]Unshackled blueberrylium": "Unshackled blueberrylium", + "[Upgrade name 790]Unshackled chalcedhoney": "Unshackled chalcedhoney", + "[Upgrade name 791]Unshackled buttergold": "Unshackled buttergold", + "[Upgrade name 792]Unshackled sugarmuck": "Unshackled sugarmuck", + "[Upgrade name 793]Unshackled jetmint": "Unshackled jetmint", + "[Upgrade name 794]Unshackled cherrysilver": "Unshackled cherrysilver", + "[Upgrade name 795]Unshackled hazelrald": "Unshackled hazelrald", + "[Upgrade name 796]Unshackled mooncandy": "Unshackled mooncandy", + "[Upgrade name 797]Unshackled astrofudge": "Unshackled astrofudge", + "[Upgrade name 798]Unshackled alabascream": "Unshackled alabascream", + "[Upgrade name 799]Unshackled iridyum": "Unshackled iridyum", + "[Upgrade name 800]Unshackled glucosmium": "Unshackled glucosmium", + "[Upgrade name 801]Delicate touch": "Delicate touch", + "[Upgrade name 802]Steadfast murmur": "Steadfast murmur", + "[Upgrade name 803]Glittering edge": "Glittering edge", + "[Upgrade name 804]Distinguished wallpaper assortment": "Distinguished wallpaper assortment", + "[Upgrade name 805]Sound test": "Sound test", + "[Upgrade name 806]Jukebox": "Jukebox", + "[Upgrade name 807]Dalgona cookies": "Dalgona cookies", + "[Upgrade name 808]Spicy cookies": "Spicy cookies", + "[Upgrade name 809]Smile cookies": "Smile cookies", + "[Upgrade name 810]Kolachy cookies": "Kolachy cookies", + "[Upgrade name 811]Gomma cookies": "Gomma cookies", + "[Upgrade name 812]Vegan cookies": "Vegan cookies", + "[Upgrade name 813]Coyotas": "Coyotas", + "[Upgrade name 814]Frosted sugar cookies": "Frosted sugar cookies", + "[Upgrade name 815]Marshmallow sandwich cookies": "Marshmallow sandwich cookies", + "[Upgrade name 816]Web cookies": "Web cookies", + "[Upgrade name 817]Steamed cookies": "Steamed cookies", + "[Upgrade name 818]Deep-fried cookie dough": "Deep-fried cookie dough", + "[Achievement name 0]Wake and bake": "Wake and bake", + "[Achievement name 1]Making some dough": "Making some dough", + "[Achievement name 2]So baked right now": "So baked right now", + "[Achievement name 3]Fledgling bakery": "Fledgling bakery", + "[Achievement name 4]Affluent bakery": "Affluent bakery", + "[Achievement name 5]World-famous bakery": "World-famous bakery", + "[Achievement name 6]Cosmic bakery": "Cosmic bakery", + "[Achievement name 7]Galactic bakery": "Galactic bakery", + "[Achievement name 8]Universal bakery": "Universal bakery", + "[Achievement name 9]Timeless bakery": "Timeless bakery", + "[Achievement name 10]Infinite bakery": "Infinite bakery", + "[Achievement name 11]Immortal bakery": "Immortal bakery", + "[Achievement name 12]Don't stop me now": "Don't stop me now", + "[Achievement name 13]You can stop now": "You can stop now", + "[Achievement name 14]Cookies all the way down": "Cookies all the way down", + "[Achievement name 15]Overdose": "Overdose", + "[Achievement name 16]Casual baking": "Casual baking", + "[Achievement name 17]Hardcore baking": "Hardcore baking", + "[Achievement name 18]Steady tasty stream": "Steady tasty stream", + "[Achievement name 19]Cookie monster": "Cookie monster", + "[Achievement name 20]Mass producer": "Mass producer", + "[Achievement name 21]Cookie vortex": "Cookie vortex", + "[Achievement name 22]Cookie pulsar": "Cookie pulsar", + "[Achievement name 23]Cookie quasar": "Cookie quasar", + "[Achievement name 24]Oh hey, you're still here": "Oh hey, you're still here", + "[Achievement name 25]Let's never bake again": "Let's never bake again", + "[Achievement name 26]Sacrifice": "Sacrifice", + "[Achievement name 27]Oblivion": "Oblivion", + "[Achievement name 28]From scratch": "From scratch", + "[Achievement name 29]Neverclick": "Neverclick", + "[Achievement name 30]Clicktastic": "Clicktastic", + "[Achievement name 31]Clickathlon": "Clickathlon", + "[Achievement name 32]Clickolympics": "Clickolympics", + "[Achievement name 33]Clickorama": "Clickorama", + "[Achievement name 34]Click": "Click", + "[Achievement name 35]Double-click": "Double-click", + "[Achievement name 36]Mouse wheel": "Mouse wheel", + "[Achievement name 37]Of Mice and Men": "Of Mice and Men", + "[Achievement name 38]The Digital": "The Digital", + "[Achievement name 39]Just wrong": "Just wrong", + "[Achievement name 40]Grandma's cookies": "Grandma's cookies", + "[Achievement name 41]Sloppy kisses": "Sloppy kisses", + "[Achievement name 42]Retirement home": "Retirement home", + "[Achievement name 43]Bought the farm": "Bought the farm", + "[Achievement name 44]Reap what you sow": "Reap what you sow", + "[Achievement name 45]Farm ill": "Farm ill", + "[Achievement name 46]Production chain": "Production chain", + "[Achievement name 47]Industrial revolution": "Industrial revolution", + "[Achievement name 48]Global warming": "Global warming", + "[Achievement name 49]You know the drill": "You know the drill", + "[Achievement name 50]Excavation site": "Excavation site", + "[Achievement name 51]Hollow the planet": "Hollow the planet", + "[Achievement name 52]Expedition": "Expedition", + "[Achievement name 53]Galactic highway": "Galactic highway", + "[Achievement name 54]Far far away": "Far far away", + "[Achievement name 55]Transmutation": "Transmutation", + "[Achievement name 56]Transmogrification": "Transmogrification", + "[Achievement name 57]Gold member": "Gold member", + "[Achievement name 58]A whole new world": "A whole new world", + "[Achievement name 59]Now you're thinking": "Now you're thinking", + "[Achievement name 60]Dimensional shift": "Dimensional shift", + "[Achievement name 61]Time warp": "Time warp", + "[Achievement name 62]Alternate timeline": "Alternate timeline", + "[Achievement name 63]Rewriting history": "Rewriting history", + "[Achievement name 64]One with everything": "One with everything", + "[Achievement name 65]Mathematician": "Mathematician", + "[Achievement name 66]Base 10": "Base 10", + "[Achievement name 67]Golden cookie": "Golden cookie", + "[Achievement name 68]Lucky cookie": "Lucky cookie", + "[Achievement name 69]A stroke of luck": "A stroke of luck", + "[Achievement name 70]Cheated cookies taste awful": "Cheated cookies taste awful", + "[Achievement name 71]Uncanny clicker": "Uncanny clicker", + "[Achievement name 72]Builder": "Builder", + "[Achievement name 73]Architect": "Architect", + "[Achievement name 74]Enhancer": "Enhancer", + "[Achievement name 75]Augmenter": "Augmenter", + "[Achievement name 76]Cookie-dunker": "Cookie-dunker", + "[Achievement name 77]Fortune": "Fortune", + "[Achievement name 78]True Neverclick": "True Neverclick", + "[Achievement name 79]Elder nap": "Elder nap", + "[Achievement name 80]Elder slumber": "Elder slumber", + "[Achievement name 81]Elder": "Elder", + "[Achievement name 82]Elder calm": "Elder calm", + "[Achievement name 83]Engineer": "Engineer", + "[Achievement name 84]Leprechaun": "Leprechaun", + "[Achievement name 85]Black cat's paw": "Black cat's paw", + "[Achievement name 86]Nihilism": "Nihilism", + "[Achievement name 87]Antibatter": "Antibatter", + "[Achievement name 88]Quirky quarks": "Quirky quarks", + "[Achievement name 89]It does matter!": "It does matter!", + "[Achievement name 90]Upgrader": "Upgrader", + "[Achievement name 91]Centennial": "Centennial", + "[Achievement name 92]Hardcore": "Hardcore", + "[Achievement name 93]Speed baking I": "Speed baking I", + "[Achievement name 94]Speed baking II": "Speed baking II", + "[Achievement name 95]Speed baking III": "Speed baking III", + "[Achievement name 96]Getting even with the oven": "Getting even with the oven", + "[Achievement name 97]Now this is pod-smashing": "Now this is pod-smashing", + "[Achievement name 98]Chirped out": "Chirped out", + "[Achievement name 99]Follow the white rabbit": "Follow the white rabbit", + "[Achievement name 100]Clickasmic": "Clickasmic", + "[Achievement name 101]Friend of the ancients": "Friend of the ancients", + "[Achievement name 102]Ruler of the ancients": "Ruler of the ancients", + "[Achievement name 103]Wholesome": "Wholesome", + "[Achievement name 104]Just plain lucky": "Just plain lucky", + "[Achievement name 105]Itchscratcher": "Itchscratcher", + "[Achievement name 106]Wrinklesquisher": "Wrinklesquisher", + "[Achievement name 107]Moistburster": "Moistburster", + "[Achievement name 108]Spooky cookies": "Spooky cookies", + "[Achievement name 109]Coming to town": "Coming to town", + "[Achievement name 110]All hail Santa": "All hail Santa", + "[Achievement name 111]Let it snow": "Let it snow", + "[Achievement name 112]Oh deer": "Oh deer", + "[Achievement name 113]Sleigh of hand": "Sleigh of hand", + "[Achievement name 114]Reindeer sleigher": "Reindeer sleigher", + "[Achievement name 115]Perfected agriculture": "Perfected agriculture", + "[Achievement name 116]Ultimate automation": "Ultimate automation", + "[Achievement name 117]Can you dig it": "Can you dig it", + "[Achievement name 118]Type II civilization": "Type II civilization", + "[Achievement name 119]Gild wars": "Gild wars", + "[Achievement name 120]Brain-split": "Brain-split", + "[Achievement name 121]Time duke": "Time duke", + "[Achievement name 122]Molecular maestro": "Molecular maestro", + "[Achievement name 123]Lone photon": "Lone photon", + "[Achievement name 124]Dazzling glimmer": "Dazzling glimmer", + "[Achievement name 125]Blinding flash": "Blinding flash", + "[Achievement name 126]Unending glow": "Unending glow", + "[Achievement name 127]Lord of Constructs": "Lord of Constructs", + "[Achievement name 128]Lord of Progress": "Lord of Progress", + "[Achievement name 129]Bicentennial": "Bicentennial", + "[Achievement name 130]Lovely cookies": "Lovely cookies", + "[Achievement name 131]Centennial and a half": "Centennial and a half", + "[Achievement name 132]Tiny cookie": "Tiny cookie", + "[Achievement name 133]You win a cookie": "You win a cookie", + "[Achievement name 134]Click delegator": "Click delegator", + "[Achievement name 135]Gushing grannies": "Gushing grannies", + "[Achievement name 136]I hate manure": "I hate manure", + "[Achievement name 137]Never dig down": "Never dig down", + "[Achievement name 138]The incredible machine": "The incredible machine", + "[Achievement name 139]And beyond": "And beyond", + "[Achievement name 140]Magnum Opus": "Magnum Opus", + "[Achievement name 141]With strange eons": "With strange eons", + "[Achievement name 142]Spacetime jigamaroo": "Spacetime jigamaroo", + "[Achievement name 143]Supermassive": "Supermassive", + "[Achievement name 144]Praise the sun": "Praise the sun", + "[Achievement name 145]Clickageddon": "Clickageddon", + "[Achievement name 146]Clicknarok": "Clicknarok", + "[Achievement name 147]Extreme polydactyly": "Extreme polydactyly", + "[Achievement name 148]Dr. T": "Dr. T", + "[Achievement name 149]The old never bothered me anyway": "The old never bothered me anyway", + "[Achievement name 150]Homegrown": "Homegrown", + "[Achievement name 151]Technocracy": "Technocracy", + "[Achievement name 152]The center of the Earth": "The center of the Earth", + "[Achievement name 153]We come in peace": "We come in peace", + "[Achievement name 154]The secrets of the universe": "The secrets of the universe", + "[Achievement name 155]Realm of the Mad God": "Realm of the Mad God", + "[Achievement name 156]Forever and ever": "Forever and ever", + "[Achievement name 157]Walk the planck": "Walk the planck", + "[Achievement name 158]Rise and shine": "Rise and shine", + "[Achievement name 159]God complex": "God complex", + "[Achievement name 160]Third-party": "Third-party", + "[Achievement name 161]Dematerialize": "Dematerialize", + "[Achievement name 162]Nil zero zilch": "Nil zero zilch", + "[Achievement name 163]Transcendence": "Transcendence", + "[Achievement name 164]Obliterate": "Obliterate", + "[Achievement name 165]Negative void": "Negative void", + "[Achievement name 166]The hunt is on": "The hunt is on", + "[Achievement name 167]Egging on": "Egging on", + "[Achievement name 168]Mass Easteria": "Mass Easteria", + "[Achievement name 169]Hide & seek champion": "Hide & seek champion", + "[Achievement name 170]What's in a name": "What's in a name", + "[Achievement name 171]Pretty penny": "Pretty penny", + "[Achievement name 172]Fit the bill": "Fit the bill", + "[Achievement name 173]A loan in the dark": "A loan in the dark", + "[Achievement name 174]Need for greed": "Need for greed", + "[Achievement name 175]It's the economy, stupid": "It's the economy, stupid", + "[Achievement name 176]Your time to shrine": "Your time to shrine", + "[Achievement name 177]Shady sect": "Shady sect", + "[Achievement name 178]New-age cult": "New-age cult", + "[Achievement name 179]Organized religion": "Organized religion", + "[Achievement name 180]Fanaticism": "Fanaticism", + "[Achievement name 181]Bewitched": "Bewitched", + "[Achievement name 182]The sorcerer's apprentice": "The sorcerer's apprentice", + "[Achievement name 183]Charms and enchantments": "Charms and enchantments", + "[Achievement name 184]Curses and maledictions": "Curses and maledictions", + "[Achievement name 185]Magic kingdom": "Magic kingdom", + "[Achievement name 186]Vested interest": "Vested interest", + "[Achievement name 187]New world order": "New world order", + "[Achievement name 188]Hocus pocus": "Hocus pocus", + "[Achievement name 189]Finger clickin' good": "Finger clickin' good", + "[Achievement name 190]Panic at the bingo": "Panic at the bingo", + "[Achievement name 191]Rake in the dough": "Rake in the dough", + "[Achievement name 192]Quarry on": "Quarry on", + "[Achievement name 193]Yes I love technology": "Yes I love technology", + "[Achievement name 194]Paid in full": "Paid in full", + "[Achievement name 195]Church of Cookiology": "Church of Cookiology", + "[Achievement name 196]Too many rabbits, not enough hats": "Too many rabbits, not enough hats", + "[Achievement name 197]The most precious cargo": "The most precious cargo", + "[Achievement name 198]The Aureate": "The Aureate", + "[Achievement name 199]Ever more hideous": "Ever more hideous", + "[Achievement name 200]Be kind, rewind": "Be kind, rewind", + "[Achievement name 201]Infinitesimal": "Infinitesimal", + "[Achievement name 202]A still more glorious dawn": "A still more glorious dawn", + "[Achievement name 203]Rebirth": "Rebirth", + "[Achievement name 204]Here you go": "Here you go", + "[Achievement name 205]Resurrection": "Resurrection", + "[Achievement name 206]Reincarnation": "Reincarnation", + "[Achievement name 207]Endless cycle": "Endless cycle", + "[Achievement name 208]The agemaster": "The agemaster", + "[Achievement name 209]To oldly go": "To oldly go", + "[Achievement name 210]Gardener extraordinaire": "Gardener extraordinaire", + "[Achievement name 211]Tectonic ambassador": "Tectonic ambassador", + "[Achievement name 212]Rise of the machines": "Rise of the machines", + "[Achievement name 213]Acquire currency": "Acquire currency", + "[Achievement name 214]Zealotry": "Zealotry", + "[Achievement name 215]The wizarding world": "The wizarding world", + "[Achievement name 216]Parsec-masher": "Parsec-masher", + "[Achievement name 217]The work of a lifetime": "The work of a lifetime", + "[Achievement name 218]A place lost in time": "A place lost in time", + "[Achievement name 219]Heat death": "Heat death", + "[Achievement name 220]Microcosm": "Microcosm", + "[Achievement name 221]Bright future": "Bright future", + "[Achievement name 222]Here be dragon": "Here be dragon", + "[Achievement name 223]How?": "How?", + "[Achievement name 224]The land of milk and cookies": "The land of milk and cookies", + "[Achievement name 225]He who controls the cookies controls the universe": "He who controls the cookies controls the universe", + "[Achievement name 226]Tonight on Hoarders": "Tonight on Hoarders", + "[Achievement name 227]Are you gonna eat all that?": "Are you gonna eat all that?", + "[Achievement name 228]We're gonna need a bigger bakery": "We're gonna need a bigger bakery", + "[Achievement name 229]In the mouth of madness": "In the mouth of madness", + "[Achievement name 230]Brought to you by the letter
": "Brought to you by the letter
", + "[Achievement name 231]A world filled with cookies": "A world filled with cookies", + "[Achievement name 232]When this baby hits 36 quadrillion cookies per hour": "When this baby hits 36 quadrillion cookies per hour", + "[Achievement name 233]Fast and delicious": "Fast and delicious", + "[Achievement name 234]Cookiehertz : a really, really tasty hertz": "Cookiehertz : a really, really tasty hertz", + "[Achievement name 235]Woops, you solved world hunger": "Woops, you solved world hunger", + "[Achievement name 236]Turbopuns": "Turbopuns", + "[Achievement name 237]Faster menner": "Faster menner", + "[Achievement name 238]And yet you're still hungry": "And yet you're still hungry", + "[Achievement name 239]The Abakening": "The Abakening", + "[Achievement name 240]There's really no hard limit to how long these achievement names can be and to be quite honest I'm rather curious to see how far we can go.
Adolphus W. Green (1844–1917) started as the Principal of the Groton School in 1864. By 1865, he became second assistant librarian at the New York Mercantile Library; from 1867 to 1869, he was promoted to full librarian. From 1869 to 1873, he worked for Evarts, Southmayd & Choate, a law firm co-founded by William M. Evarts, Charles Ferdinand Southmayd and Joseph Hodges Choate. He was admitted to the New York State Bar Association in 1873.
Anyway, how's your day been?": "There's really no hard limit to how long these achievement names can be and to be quite honest I'm rather curious to see how far we can go.
Adolphus W. Green (1844–1917) started as the Principal of the Groton School in 1864. By 1865, he became second assistant librarian at the New York Mercantile Library; from 1867 to 1869, he was promoted to full librarian. From 1869 to 1873, he worked for Evarts, Southmayd & Choate, a law firm co-founded by William M. Evarts, Charles Ferdinand Southmayd and Joseph Hodges Choate. He was admitted to the New York State Bar Association in 1873.
Anyway, how's your day been?", + "[Achievement name 241]Fast": "Fast", + "[Achievement name 242]Bicentennial and a half": "Bicentennial and a half", + "[Achievement name 243]Tabloid addiction": "Tabloid addiction", + "[Achievement name 244]Clickastrophe": "Clickastrophe", + "[Achievement name 245]Clickataclysm": "Clickataclysm", + "[Achievement name 246]Thumbs, phalanges, metacarpals": "Thumbs, phalanges, metacarpals", + "[Achievement name 247]Polymath": "Polymath", + "[Achievement name 248]The elder scrolls": "The elder scrolls", + "[Achievement name 249]To crumbs, you say?": "To crumbs, you say?", + "[Achievement name 250]Seedy business": "Seedy business", + "[Achievement name 251]Freak fracking": "Freak fracking", + "[Achievement name 252]Modern times": "Modern times", + "[Achievement name 253]The nerve of war": "The nerve of war", + "[Achievement name 254]Wololo": "Wololo", + "[Achievement name 255]And now for my next trick, I'll need a volunteer from the audience": "And now for my next trick, I'll need a volunteer from the audience", + "[Achievement name 256]It's not delivery": "It's not delivery", + "[Achievement name 257]Gold, Jerry! Gold!": "Gold, Jerry! Gold!", + "[Achievement name 258]Forbidden zone": "Forbidden zone", + "[Achievement name 259]cookie clicker forever and forever a hundred years cookie clicker, all day long forever, forever a hundred times, over and over cookie clicker adventures dot com": "cookie clicker forever and forever a hundred years cookie clicker, all day long forever, forever a hundred times, over and over cookie clicker adventures dot com", + "[Achievement name 260]Scientists baffled everywhere": "Scientists baffled everywhere", + "[Achievement name 261]Harmony of the spheres": "Harmony of the spheres", + "[Achievement name 262]Last Chance to See": "Last Chance to See", + "[Achievement name 263]Early bird": "Early bird", + "[Achievement name 264]Fading luck": "Fading luck", + "[Achievement name 265]Eldeer": "Eldeer", + "[Achievement name 266]Dude, sweet": "Dude, sweet", + "[Achievement name 267]Sugar rush": "Sugar rush", + "[Achievement name 268]Year's worth of cavities": "Year's worth of cavities", + "[Achievement name 269]Hand-picked": "Hand-picked", + "[Achievement name 270]Sugar sugar": "Sugar sugar", + "[Achievement name 271]All-natural cane sugar": "All-natural cane sugar", + "[Achievement name 272]Sweetmeats": "Sweetmeats", + "[Achievement name 273]Tricentennial": "Tricentennial", + "[Achievement name 274]Knead for speed": "Knead for speed", + "[Achievement name 275]Well the cookies start coming and they don't stop coming": "Well the cookies start coming and they don't stop coming", + "[Achievement name 276]I don't know if you've noticed but all these icons are very slightly off-center": "I don't know if you've noticed but all these icons are very slightly off-center", + "[Achievement name 277]The proof of the cookie is in the baking": "The proof of the cookie is in the baking", + "[Achievement name 278]If it's worth doing, it's worth overdoing": "If it's worth doing, it's worth overdoing", + "[Achievement name 279]The dreams in which I'm baking are the best I've ever had": "The dreams in which I'm baking are the best I've ever had", + "[Achievement name 280]Set for life": "Set for life", + "[Achievement name 281]You and the beanstalk": "You and the beanstalk", + "[Achievement name 282]Romancing the stone": "Romancing the stone", + "[Achievement name 283]Ex machina": "Ex machina", + "[Achievement name 284]And I need it now": "And I need it now", + "[Achievement name 285]Pray on the weak": "Pray on the weak", + "[Achievement name 286]It's a kind of magic": "It's a kind of magic", + "[Achievement name 287]Make it so": "Make it so", + "[Achievement name 288]All that glitters is gold": "All that glitters is gold", + "[Achievement name 289]Here he comes": "Here he comes", + "[Achievement name 290]Way back then": "Way back then", + "[Achievement name 291]Exotic matter": "Exotic matter", + "[Achievement name 292]At the end of the tunnel": "At the end of the tunnel", + "[Achievement name 293]Click (starring Adam Sandler)": "Click (starring Adam Sandler)", + "[Achievement name 294]Frantiquities": "Frantiquities", + "[Achievement name 295]Overgrowth": "Overgrowth", + "[Achievement name 296]Sedimentalism": "Sedimentalism", + "[Achievement name 297]Labor of love": "Labor of love", + "[Achievement name 298]Reverse funnel system": "Reverse funnel system", + "[Achievement name 299]Thus spoke you": "Thus spoke you", + "[Achievement name 300]Manafest destiny": "Manafest destiny", + "[Achievement name 301]Neither snow nor rain nor heat nor gloom of night": "Neither snow nor rain nor heat nor gloom of night", + "[Achievement name 302]I've got the Midas touch": "I've got the Midas touch", + "[Achievement name 303]Which eternal lie": "Which eternal lie", + "[Achievement name 304]Déjà vu": "Déjà vu", + "[Achievement name 305]Powers of Ten": "Powers of Ten", + "[Achievement name 306]Now the dark days are gone": "Now the dark days are gone", + "[Achievement name 307]Freaky jazz hands": "Freaky jazz hands", + "[Achievement name 308]Methuselah": "Methuselah", + "[Achievement name 309]Huge tracts of land": "Huge tracts of land", + "[Achievement name 310]D-d-d-d-deeper": "D-d-d-d-deeper", + "[Achievement name 311]Patently genius": "Patently genius", + "[Achievement name 312]A capital idea": "A capital idea", + "[Achievement name 313]It belongs in a bakery": "It belongs in a bakery", + "[Achievement name 314]Motormouth": "Motormouth", + "[Achievement name 315]Been there done that": "Been there done that", + "[Achievement name 316]Phlogisticated substances": "Phlogisticated substances", + "[Achievement name 317]Bizarro world": "Bizarro world", + "[Achievement name 318]The long now": "The long now", + "[Achievement name 319]Chubby hadrons": "Chubby hadrons", + "[Achievement name 320]Palettable": "Palettable", + "[Achievement name 321]Bibbidi-bobbidi-boo": "Bibbidi-bobbidi-boo", + "[Achievement name 322]I'm the wiz": "I'm the wiz", + "[Achievement name 323]A wizard is you": "A wizard is you", + "[Achievement name 324]Four-leaf cookie": "Four-leaf cookie", + "[Achievement name 325]Lucked out": "Lucked out", + "[Achievement name 326]What are the odds": "What are the odds", + "[Achievement name 327]Grandma needs a new pair of shoes": "Grandma needs a new pair of shoes", + "[Achievement name 328]Million to one shot, doc": "Million to one shot, doc", + "[Achievement name 329]As luck would have it": "As luck would have it", + "[Achievement name 330]Ever in your favor": "Ever in your favor", + "[Achievement name 331]Be a lady": "Be a lady", + "[Achievement name 332]Dicey business": "Dicey business", + "[Achievement name 333]Fingers crossed": "Fingers crossed", + "[Achievement name 334]Just a statistic": "Just a statistic", + "[Achievement name 335]Murphy's wild guess": "Murphy's wild guess", + "[Achievement name 336]Let's leaf it at that": "Let's leaf it at that", + "[Achievement name 337]The ultimate clickdown": "The ultimate clickdown", + "[Achievement name 338]Aged well": "Aged well", + "[Achievement name 339]101st birthday": "101st birthday", + "[Achievement name 340]But wait 'til you get older": "But wait 'til you get older", + "[Achievement name 341]Harvest moon": "Harvest moon", + "[Achievement name 342]Mine?": "Mine?", + "[Achievement name 343]In full gear": "In full gear", + "[Achievement name 344]Treacle tart economics": "Treacle tart economics", + "[Achievement name 345]Holy cookies, grandma!": "Holy cookies, grandma!", + "[Achievement name 346]The Prestige": "The Prestige", + "[Achievement name 347]That's just peanuts to space": "That's just peanuts to space", + "[Achievement name 348]Worth its weight in lead": "Worth its weight in lead", + "[Achievement name 349]What happens in the vortex stays in the vortex": "What happens in the vortex stays in the vortex", + "[Achievement name 350]Invited to yesterday's party": "Invited to yesterday's party", + "[Achievement name 351]Downsizing": "Downsizing", + "[Achievement name 352]My eyes": "My eyes", + "[Achievement name 353]Maybe a chance in hell, actually": "Maybe a chance in hell, actually", + "[Achievement name 354]Make like a tree": "Make like a tree", + "[Achievement name 355]Cave story": "Cave story", + "[Achievement name 356]In-cog-neato": "In-cog-neato", + "[Achievement name 357]Save your breath because that's all you've got left": "Save your breath because that's all you've got left", + "[Achievement name 358]Vengeful and almighty": "Vengeful and almighty", + "[Achievement name 359]Spell it out for you": "Spell it out for you", + "[Achievement name 360]Space space space space space": "Space space space space space", + "[Achievement name 361]Don't get used to yourself, you're gonna have to change": "Don't get used to yourself, you're gonna have to change", + "[Achievement name 362]Objects in the mirror dimension are closer than they appear": "Objects in the mirror dimension are closer than they appear", + "[Achievement name 363]Groundhog day": "Groundhog day", + "[Achievement name 364]A matter of perspective": "A matter of perspective", + "[Achievement name 365]Optical illusion": "Optical illusion", + "[Achievement name 366]Jackpot": "Jackpot", + "[Achievement name 367]So much to do so much to see": "So much to do so much to see", + "[Achievement name 368]Running with scissors": "Running with scissors", + "[Achievement name 369]Rarefied air": "Rarefied air", + "[Achievement name 370]Push it to the limit": "Push it to the limit", + "[Achievement name 371]Green cookies sleep furiously": "Green cookies sleep furiously", + "[Achievement name 372]Panic! at Nabisco": "Panic! at Nabisco", + "[Achievement name 373]Bursting at the seams": "Bursting at the seams", + "[Achievement name 374]Just about full": "Just about full", + "[Achievement name 375]Hungry for more": "Hungry for more", + "[Achievement name 376]All the other kids with the pumped up clicks": "All the other kids with the pumped up clicks", + "[Achievement name 377]One...more...click...": "One...more...click...", + "[Achievement name 378]Botany enthusiast": "Botany enthusiast", + "[Achievement name 379]Green, aching thumb": "Green, aching thumb", + "[Achievement name 380]In the garden of Eden (baby)": "In the garden of Eden (baby)", + "[Achievement name 381]Keeper of the conservatory": "Keeper of the conservatory", + "[Achievement name 382]Seedless to nay": "Seedless to nay", + "[Achievement name 383]You get nothing": "You get nothing", + "[Achievement name 384]Humble rebeginnings": "Humble rebeginnings", + "[Achievement name 385]The end of the world": "The end of the world", + "[Achievement name 386]Oh, you're back": "Oh, you're back", + "[Achievement name 387]Lazarus": "Lazarus", + "[Achievement name 388]Leisurely pace": "Leisurely pace", + "[Achievement name 389]Hypersonic": "Hypersonic", + "[Achievement name 390]Feed me, Orteil": "Feed me, Orteil", + "[Achievement name 391]And then what?": "And then what?", + "[Achievement name 392]Tricentennial and a half": "Tricentennial and a half", + "[Achievement name 393]Quadricentennial": "Quadricentennial", + "[Achievement name 394]Quadricentennial and a half": "Quadricentennial and a half", + "[Achievement name 395]Quincentennial": "Quincentennial", + "[Achievement name 396]Maillard reaction": "Maillard reaction", + "[Achievement name 397]When the cookies ascend just right": "When the cookies ascend just right", + "[Achievement name 398]With her finger and her thumb": "With her finger and her thumb", + "[Achievement name 399]Defense of the ancients": "Defense of the ancients", + "[Achievement name 400]Sharpest tool in the shed": "Sharpest tool in the shed", + "[Achievement name 401]Hey now, you're a rock": "Hey now, you're a rock", + "[Achievement name 402]Break the mold": "Break the mold", + "[Achievement name 403]Get the show on, get paid": "Get the show on, get paid", + "[Achievement name 404]My world's on fire, how about yours": "My world's on fire, how about yours", + "[Achievement name 405]The meteor men beg to differ": "The meteor men beg to differ", + "[Achievement name 406]Only shooting stars": "Only shooting stars", + "[Achievement name 407]We could all use a little change": "We could all use a little change", + "[Achievement name 408]Your brain gets smart but your head gets dumb": "Your brain gets smart but your head gets dumb", + "[Achievement name 409]The years start coming": "The years start coming", + "[Achievement name 410]What a concept": "What a concept", + "[Achievement name 411]You'll never shine if you don't glow": "You'll never shine if you don't glow", + "[Achievement name 412]You'll never know if you don't go": "You'll never know if you don't go", + "[Achievement name 413]Self-contained": "Self-contained", + "[Achievement name 414]Threw you for a loop": "Threw you for a loop", + "[Achievement name 415]The sum of its parts": "The sum of its parts", + "[Achievement name 416]Bears repeating": "Bears repeating", + "[Achievement name 417]More of the same": "More of the same", + "[Achievement name 418]Last recurse": "Last recurse", + "[Achievement name 419]Out of one, many": "Out of one, many", + "[Achievement name 420]An example of recursion": "An example of recursion", + "[Achievement name 421]For more information on this achievement, please refer to its title": "For more information on this achievement, please refer to its title", + "[Achievement name 422]I'm so meta, even this achievement": "I'm so meta, even this achievement", + "[Achievement name 423]Never get bored": "Never get bored", + "[Achievement name 424]The needs of the many": "The needs of the many", + "[Achievement name 425]Eating its own": "Eating its own", + "[Achievement name 426]We must go deeper": "We must go deeper", + "[Achievement name 427]Sierpinski rhomboids": "Sierpinski rhomboids", + "[Achievement name 428]Gotta go fast": "Gotta go fast", + "[Achievement name 429]I think it's safe to say you've got it made": "I think it's safe to say you've got it made", + "[Achievement name 430]Renaissance baker": "Renaissance baker", + "[Achievement name 431]Veteran": "Veteran", + "[Achievement name 432]Thick-skinned": "Thick-skinned", + "[Achievement name 433]F12": "F12", + "[Achievement name 434]Variable success": "Variable success", + "[Achievement name 435]No comments": "No comments", + "[Achievement name 436]Up to code": "Up to code", + "[Achievement name 437]Works on my machine": "Works on my machine", + "[Achievement name 438]Technical debt": "Technical debt", + "[Achievement name 439]Mind your language": "Mind your language", + "[Achievement name 440]Inconsolable": "Inconsolable", + "[Achievement name 441]Closure": "Closure", + "[Achievement name 442]Dude what if we're all living in a simulation like what if we're all just code on a computer somewhere": "Dude what if we're all living in a simulation like what if we're all just code on a computer somewhere", + "[Achievement name 443]Taking the back streets": "Taking the back streets", + "[Achievement name 444]Inherited prototype": "Inherited prototype", + "[Achievement name 445]A model of document object": "A model of document object", + "[Achievement name 446]First-class citizen": "First-class citizen", + "[Achievement name 447]Alexandria": "Alexandria", + "[Achievement name 448]Bake him away, toys": "Bake him away, toys", + "[Achievement name 449]You're #1 so why try harder": "You're #1 so why try harder", + "[Achievement name 450]Haven't even begun to peak": "Haven't even begun to peak", + "[Achievement name 451]A sometimes food": "A sometimes food", + "[Achievement name 452]Not enough of a good thing": "Not enough of a good thing", + "[Achievement name 453]Horn of plenty": "Horn of plenty", + "[Achievement name 454]Smurf account": "Smurf account", + "[Achievement name 455]If at first you don't succeed": "If at first you don't succeed", + "[Achievement name 456]O Fortuna": "O Fortuna", + "[Achievement name 457]Initial public offering": "Initial public offering", + "[Achievement name 458]Rookie numbers": "Rookie numbers", + "[Achievement name 459]No nobility in poverty": "No nobility in poverty", + "[Achievement name 460]Full warehouses": "Full warehouses", + "[Achievement name 461]Make my day": "Make my day", + "[Achievement name 462]Buy buy buy": "Buy buy buy", + "[Achievement name 463]Gaseous assets": "Gaseous assets", + "[Achievement name 464]Pyramid scheme": "Pyramid scheme", + "[Achievement name 465]Jellicles": "Jellicles", + "[Achievement name 466]Quincentennial and a half": "Quincentennial and a half", + "[Achievement name 467]What did we even eat before these": "What did we even eat before these", + "[Achievement name 468]Heavy flow": "Heavy flow", + "[Achievement name 469]More you say?": "More you say?", + "[Achievement name 470]Large and in charge": "Large and in charge", + "[Achievement name 471]Absolutely stuffed": "Absolutely stuffed", + "[Achievement name 472]It's only wafer-thin": "It's only wafer-thin", + "[Achievement name 473]Clickety split": "Clickety split", + "[Achievement name 474]Gotta hand it to you": "Gotta hand it to you", + "[Achievement name 475]Okay boomer": "Okay boomer", + "[Achievement name 476]Overripe": "Overripe", + "[Achievement name 477]Rock on": "Rock on", + "[Achievement name 478]Self-manmade man": "Self-manmade man", + "[Achievement name 479]Checks out": "Checks out", + "[Achievement name 480]Living on a prayer": "Living on a prayer", + "[Achievement name 481]Higitus figitus migitus mum": "Higitus figitus migitus mum", + "[Achievement name 482]The incredible journey": "The incredible journey", + "[Achievement name 483]Just a phase": "Just a phase", + "[Achievement name 484]Don't let me leave, Murph": "Don't let me leave, Murph", + "[Achievement name 485]Caveman to cosmos": "Caveman to cosmos", + "[Achievement name 486]Particular tastes": "Particular tastes", + "[Achievement name 487]A light snack": "A light snack", + "[Achievement name 488]Tempting fate": "Tempting fate", + "[Achievement name 489]Tautological": "Tautological", + "[Achievement name 490]Curly braces": "Curly braces", + "[Achievement name 491]Seven horseshoes": "Seven horseshoes", + "[Achievement name 492]Olden days": "Olden days", + "[Achievement name 493]The devil's workshop": "The devil's workshop", + "[Achievement name 494]In the green": "In the green", + "[Achievement name 495]Mountain out of a molehill, but like in a good way": "Mountain out of a molehill, but like in a good way", + "[Achievement name 496]The wheels of progress": "The wheels of progress", + "[Achievement name 497]That's rich": "That's rich", + "[Achievement name 498]Preaches and cream": "Preaches and cream", + "[Achievement name 499]Magic thinking": "Magic thinking", + "[Achievement name 500]Is there life on Mars?": "Is there life on Mars?", + "[Achievement name 501]Bad chemistry": "Bad chemistry", + "[Achievement name 502]Reduced to gibbering heaps": "Reduced to gibbering heaps", + "[Achievement name 503]Back already?": "Back already?", + "[Achievement name 504]Nuclear throne": "Nuclear throne", + "[Achievement name 505]Making light of the situation": "Making light of the situation", + "[Achievement name 506]Flip a cookie. Chips, I win. Crust, you lose.": "Flip a cookie. Chips, I win. Crust, you lose.", + "[Achievement name 507]In and of itself": "In and of itself", + "[Achievement name 508]Duck typing": "Duck typing", + "[Achievement name 509]They'll never know what hit 'em": "They'll never know what hit 'em", + "[Achievement name 510]Well-versed": "Well-versed", + "[Achievement name 511]Ripe for the picking": "Ripe for the picking", + "[Achievement name 512]Unreal": "Unreal", + "[Achievement name 513]Once you've seen one": "Once you've seen one", + "[Achievement name 514]Spoils and plunder": "Spoils and plunder", + "[Achievement name 515]Nobody exists on purpose, nobody belongs anywhere": "Nobody exists on purpose, nobody belongs anywhere", + "[Achievement name 516]Hyperspace expressway": "Hyperspace expressway", + "[Achievement name 517]Versatile": "Versatile", + "[Achievement name 518]You are inevitable": "You are inevitable", + "[Achievement name 519]Away from this place": "Away from this place", + "[Achievement name 520]Everywhere at once": "Everywhere at once", + "[Achievement name 521]Reject reality, substitute your own": "Reject reality, substitute your own", + "[Achievement name 522]Fringe": "Fringe", + "[Achievement name 523]Coherence": "Coherence", + "[Achievement name 524]Earth-616": "Earth-616", + "[Achievement name 525]Strange topologies": "Strange topologies", + "[Achievement name 526]Grand design": "Grand design", + "[Achievement name 527]Ecumenopolis": "Ecumenopolis", + "[Achievement name 528]The full picture": "The full picture", + "[Achievement name 529]When there's nothing left to add": "When there's nothing left to add", + "[Achievement name 530]Sexcentennial": "Sexcentennial", + "[Achievement name 531]Keep going until I say stop": "Keep going until I say stop", + "[Achievement name 532]But I didn't say stop, did I?": "But I didn't say stop, did I?", + "[Achievement name 533]With unrivaled fervor": "With unrivaled fervor", + "[Achievement name 534]Think big": "Think big", + "[Achievement name 535]Hypersize me": "Hypersize me", + "[Achievement name 536]Max capacity": "Max capacity", + "[Achievement name 537]Liquid assets": "Liquid assets", + "[Achievement name 538]Stifling the press": "Stifling the press", + "[Achievement name 539]It's big brain time": "It's big brain time", + "[Achievement name 540]Just my imagination": "Just my imagination", + "[Achievement name 541]Now there's an idea": "Now there's an idea", + "[Achievement name 542]The organ that named itself": "The organ that named itself", + "[Achievement name 543]Gyrification": "Gyrification", + "[Achievement name 544]A trademarked portmanteau of \"imagination\" and \"engineering\"": "A trademarked portmanteau of \"imagination\" and \"engineering\"", + "[Achievement name 545]Mindfulness": "Mindfulness", + "[Achievement name 546]The 10% myth": "The 10% myth", + "[Achievement name 547]Don't think about it too hard": "Don't think about it too hard", + "[Achievement name 548]Though fools seldom differ": "Though fools seldom differ", + "[Achievement name 549]Looking kind of dumb": "Looking kind of dumb", + "[Achievement name 550]A beautiful mind": "A beautiful mind", + "[Achievement name 551]Cardinal synapses": "Cardinal synapses", + "[Achievement name 552]Positive thinking": "Positive thinking", + "[Achievement name 553]The thought that counts": "The thought that counts", + "[Achievement name 554]Unthinkable": "Unthinkable", + "[Achievement name 555]Gifted": "Gifted", + "[Achievement name 556]They moistly come at night": "They moistly come at night", + "[Achievement name 557]It's grown on you": "It's grown on you", + "[Achievement name 558]Don't let the walls cave in on you": "Don't let the walls cave in on you", + "[Achievement name 559]Replaced by robots": "Replaced by robots", + "[Achievement name 560]Financial prodigy": "Financial prodigy", + "[Achievement name 561]And I will pray to a big god": "And I will pray to a big god", + "[Achievement name 562]Shosple Colupis": "Shosple Colupis", + "[Achievement name 563]False vacuum": "False vacuum", + "[Achievement name 564]Metallic taste": "Metallic taste", + "[Achievement name 565]Swiss cheese": "Swiss cheese", + "[Achievement name 566]But the future refused to change": "But the future refused to change", + "[Achievement name 567]What's the dark matter with you": "What's the dark matter with you", + "[Achievement name 568]Enlightenment": "Enlightenment", + "[Achievement name 569]Never tell me the odds": "Never tell me the odds", + "[Achievement name 570]Blowing an Apollonian gasket": "Blowing an Apollonian gasket", + "[Achievement name 571]Get with the program": "Get with the program", + "[Achievement name 572]Lost your cosmic marbles": "Lost your cosmic marbles", + "[Achievement name 573]By will alone I set my mind in motion": "By will alone I set my mind in motion", + "[Achievement name 574]Ain't that a click in the head": "Ain't that a click in the head", + "[Achievement name 575]Sexcentennial and a half": "Sexcentennial and a half", + "[Achievement name 576]I am speed": "I am speed", + "[Achievement name 577]And on and on": "And on and on", + "[Achievement name 578]Fake it till you bake it": "Fake it till you bake it", + "[Achievement name 579]History in the baking": "History in the baking", + "[Achievement name 580]Baby it's old outside": "Baby it's old outside", + "[Achievement name 581]Myriad": "Myriad", + "[Achievement name 582]Kaizen": "Kaizen", + "[Achievement name 583]Beyond quality": "Beyond quality", + "[Achievement name 584]Everything happens so much": "Everything happens so much", + "[Achievement name 585]I'll rest when I'm dead": "I'll rest when I'm dead", + "[Achievement name 586]What do you get for the baker who has everything": "What do you get for the baker who has everything", + "[Achievement name 587]Bottomless pit": "Bottomless pit", + "[Achievement name 588]All the stars in heaven": "All the stars in heaven" +}); \ No newline at end of file diff --git a/gversion/gs/cookieclicker/loc/ES.js b/gversion/gs/cookieclicker/loc/ES.js new file mode 100644 index 0000000..9c59f90 --- /dev/null +++ b/gversion/gs/cookieclicker/loc/ES.js @@ -0,0 +1,3303 @@ +AddLanguage('ES','spanish',{ + "": { + "language": "ES", + "plural-forms": "nplurals=2;plural=(n!=1);" + }, + "cookie": "galleta", + "sugar lump": "terrón de azúcar", + "heavenly chip": "pepita celestial", + "wrinkler": "devorador", + "building": "edificio", + "upgrade": "mejora", + "golden cookie": "galleta dorada", + "grandmapocalypse": "/", + "%1 cookie": [ + "%1 galleta", + "%1 galletas" + ], + "%1 sugar lump": [ + "%1 terrón de azúcar", + "%1 terrones de azúcar" + ], + "%1 heavenly chip": [ + "%1 pepita celestial", + "%1 pepitas celestiales" + ], + "%1 golden cookie": [ + "%1 galleta dorada", + "%1 galletas doradas" + ], + "%1 building": [ + "%1 edificio", + "%1 edificios" + ], + "%1 upgrade": [ + "%1 mejora", + "%1 mejoras" + ], + "Yes": "Sí", + "No": "/", + "Click here": "Haz clic aquí", + "Don't show this again": "No volver a mostrar", + "Delete all": "Eliminar todo", + "Back": "Atrás", + "Confirm": "Confirmar", + "All done!": "¡Ya está!", + "Load": "Cargar", + "Save": "Guardar", + "Quit": "Salir", + "Save & Quit": "Guardar y salir", + "Cancel": "Cancelar", + "Nevermind": "Ignorar", + "Random": "Aleatorio", + "You have %1.": "Tienes %1.", + "Click": "Clic", + "Shift": "Mayús", + "Shift-click": "Mayús-clic", + "Ctrl": "/", + "Ctrl-click": "Ctrl-clic", + "Esc": "/", + "Cookies": "Galletas", + "%1 day": [ + "%1 día", + "%1 días" + ], + "%1 hour": [ + "%1 hora", + "%1 horas" + ], + "%1 minute": [ + "%1 minuto", + "%1 minutos" + ], + "%1 second": [ + "%1 segundo", + "%1 segundos" + ], + "less than 1 second": "menos de 1 segundo", + "in %1": "en %1", + "%1 ago": "hace %1", + "%1 remaining": "tiempo restante: %1", + "%1 worth": "valor: %1", + "%1 of CpS": "%1 de g/s", + "%1% of bank": "%1% acumulado", + "per second:": "por segundo:", + "just now": "ahora mismo", + "a long while": "un buen rato", + "forever": "para siempre", + "Time remaining:": "Tiempo restante:", + "Big clickable cookie": "Galleta grande clicable", + "Golden cookie": "Galleta dorada", + "Wrath cookie": "Galleta de ira", + "Reindeer": "Reno", + "Options": "Opciones", + "General": "/", + "Settings": "Ajustes", + "Volume": "Volumen", + "Volume (music)": "Volumen (música)", + "ON": "SÍ", + "OFF": "NO", + "Fancy graphics": "Gráficos elegantes", + "CSS filters": "Filtros CSS", + "visual improvements; disabling may improve performance": "mejoras visuales, desactivarlos puede mejorar el rendimiento", + "Particles": "Partículas", + "Numbers": "Números", + "numbers that pop up when clicking the cookie": "números que aparecen al clicar una galleta", + "Milk [setting]": "Leche", + "Cursors [setting]": "Cursores", + "visual display of your cursors": "visualización de tus cursores", + "Wobbly cookie": "Galleta tambaleante", + "Alt cookie sound": "sonido de galleta alternativo", + "Icon crates": "Cajas de hierro", + "display boxes around upgrades and achievements in Stats": "muestra cajas alrededor de mejoras y logros en las estadísticas", + "Alt font": "Fuente alternativa", + "your cookies are displayed using a monospace font": "tus galletas se muestran con fuente monoespaciado", + "Short numbers": "Números cortos", + "Fast notes": "Notas rápidas", + "notifications disappear much faster": "las notificaciones desaparecen mucho más rápido", + "Closing warning": "Aviso de cierre", + "the game will ask you to confirm when you close the window": "el juego te pedirá confirmación al cerrar la ventana", + "Defocus": "Desenfoque", + "the game will be less resource-intensive when out of focus": "el juego usará menos recursos cuando esté desenfocado", + "Extra buttons": "Botones adicionales", + "add options on buildings like Mute": "añade opciones en edificios, como Silenciar", + "Lump confirmation": "Confirmación de terrón", + "the game will ask you to confirm before spending sugar lumps": "el juego te pedirá confirmación antes de gastar terrones de azúcar", + "Custom grandmas": "Abuelas personalizadas", + "some grandmas will be named after Patreon supporters": "algunas abuelas llevarán el nombre de colaboradores de Patreon", + "Scary stuff": "Cosas que dan miedo", + "Sleep mode timeout": "Tiempo de espera del modo suspensión", + "on slower computers, the game will put itself in sleep mode when it's inactive and starts to lag out; offline CpS production kicks in during sleep mode": "en los ordenadores más lentos, el juego entrará en modo suspensión cuando esté inactivo y empiece a colgarse; la producción de g/s arranca durante el modo suspensión", + "Music in background": "Música de fondo", + "music will keep playing even when the game window isn't focused": "la música seguirá sonando aunque estés en una ventana diferente a la del juego", + "Cloud saving": "Guardar en la nube", + "allow use of Steam Cloud for save backups": "Permite el uso de Steam Cloud para guardar copias de seguridad.", + "Purge Cloud": "Purgar nube", + "Current Cloud use:": "Uso actual de la nube:", + "No Cloud access at the moment.": "No hay acceso a la nube en este momento.", + "Screen reader mode": "Modo lector de pantalla", + "allows optimizations for screen readers; game will reload": "Permite optimizaciones para lectores de pantalla; el juego se volverá a cargar.", + "Discord status": "Estado de Discord", + "if Discord is on, show your game info as activity status": "Si Discord está activado, muestra la información de tu juego como estado de actividad.", + "Language": "Idioma", + "Language: %1": "Idioma: %1", + "Change language": "Cambiar idioma", + "note: this will save and reload your game": "nota: se guardará y recargará la partida", + "Press %1 to toggle fullscreen.": "Pulsa %1 para cambiar a pantalla completa", + "Other versions": "Otras versiones", + "Beta": "/", + "Stats": "Estadísticas", + "Shadow achievements": "Logros turbios", + "These are feats that are either unfair or difficult to attain. They do not give milk.": "características injustas o difíciles de conseguir. No dan leche.", + "starter milk": "leche inicial", + "for %1 achievements": "para %1 logros", + "appeased": "calmadas", + "awoken": "despiertas", + "displeased": "descontentas", + "angered": "enfadadas", + "Cookies in bank:": "Galletas acumuladas:", + "Cookies baked (this ascension):": "Galletas horneadas (en esta ascensión):", + "Cookies baked (all time):": "Galletas horneadas (en total):", + "Cookies forfeited by ascending:": "Galletas perdidas al ascender:", + "Legacy started:": "Legado iniciado:", + "with %1 ascension": [ + "con %1 ascensión", + "con %1 ascensiones" + ], + "Run started:": "Partida iniciada:", + "Buildings owned:": "Edificios propios:", + "Cookies per second:": "Galletas por segundo:", + "Raw cookies per second:": "Galletas de masa cruda por segundo:", + "highest this ascension:": "más alta esta ascensión:", + "multiplier:": "multiplicador:", + "withered:": "debilitadas:", + "Cookies per click:": "Galletas por clic:", + "Cookie clicks:": "Clics de galleta:", + "Hand-made cookies:": "Galletas hechas a mano:", + "Golden cookie clicks:": "Clics de galletas doradas:", + "Random drop multiplier:": "Multiplicador de botín aleatorio:", + "all time:": "en total:", + "Running version:": "Versión actual:", + "Special": "Especial", + "Challenge mode:": "Modo desafío:", + "Seasonal event:": "Evento de temporada:", + "Research:": "Investigación:", + "Grandmatriarchs status:": "Estatus de abumatriarcas:", + "Pledge:": "Promesa:", + "Wrinklers popped:": "Devoradores explotados:", + "Sugar lumps harvested:": "Terrones de azúcar cosechados:", + "Reindeer found:": "Renos encontrados:", + "Santa stages unlocked:": "Fases de Papá Noel desbloqueadas:", + "Dragon training:": "Adiestramiento de dragón:", + "Prestige": "Prestigio", + "at %1% of its potential (+%2% CpS)": "al %1% de su potencial (+%2% g/s)", + "Prestige upgrades unlocked:": "Mejoras de prestigio desbloqueadas:", + "Upgrades unlocked:": "Mejoras desbloqueadas:", + "Achievements unlocked:": "Logros desbloqueados:", + "Kitten multiplier:": "Multiplicador de gatitos:", + "Milk": "Leche", + "Milk:": "Leche:", + "Milk flavors unlocked:": "Sabores de leche desbloqueados:", + "Milk is gained with each achievement. It can unlock unique upgrades over time.": "La leche se consigue con cada logro. Puede desbloquear mejoras únicas con el tiempo.", + "Rank %1": "Nivel %1", + "Automatic": "Automático", + "Plain milk": "Leche sola", + "Chocolate milk": "Leche con chocolate", + "Raspberry milk": "Leche de frambuesa", + "Orange milk": "Leche de naranja", + "Caramel milk": "Leche de caramelo", + "Banana milk": "Leche de plátano", + "Lime milk": "Leche de lima", + "Blueberry milk": "Leche de arándano", + "Strawberry milk": "Leche de fresa", + "Vanilla milk": "Leche de vainilla", + "Zebra milk": "Leche de cebra", + "Cosmic milk": "Leche cósmica", + "Flaming milk": "Leche llameante", + "Sanguine milk": "Leche sanguinolenta", + "Midas milk": "Leche de Midas", + "Midnight milk": "Leche de medianoche", + "Green inferno milk": "Leche infierno verde", + "Frostfire milk": "Leche fuego gélido", + "Honey milk": "Leche con miel", + "Coffee milk": "Leche con café", + "Tea milk": "Leche con té", + "Coconut milk": "Leche de coco", + "Cherry milk": "Leche de cereza", + "Soy milk": "Leche de soja", + "Spiced milk": "Leche especiada", + "Maple milk": "Leche de arce", + "Mint milk": "Leche de menta", + "Licorice milk": "Leche de regaliz", + "Rose milk": "Leche de rosa", + "Dragonfruit milk": "Leche de pitaya", + "Info": "/", + "About": "Acerca de", + "Cookie Clicker is a javascript game by %1 and %2.": "Cookie Clicker es un juego de javascript de %1 y %2.", + "Music by %1.": "Música de %1.", + "Useful links: %1, %2, %3, %4.": "Enlaces útiles: %1, %2, %3, %4.", + "This version of Cookie Clicker is 100% free, forever. Want to support us so we can keep developing games? Here's some ways you can help:%1": "Esta versión de Cookie Clicker es 100 % gratis, para siempre. ¿Quieres apoyarnos para que podamos seguir desarrollando juegos? Te decimos cómo lo puedes hacer: %1", + "Note: if you find a new bug after an update and you're using a 3rd-party add-on, make sure it's not just your add-on causing it!": "Nota: si encuentras un fallo nuevo después de una actualización y estás usando una extensión de terceros, ¡asegúrate de que no lo esté causando la extensión!", + "Warning: clearing your browser cache or cookies (what else?) will result in your save being wiped. Export your save and back it up first!": "Aviso: borrar la caché o las cookies (cómo no) del buscador puede eliminar tus datos guardados. ¡Expórtalos y guarda una copia primero!", + "Version history": "Historial de la versión", + "Official website": "Sitio web oficial", + "Note: links will open in your web browser.": "Nota: los enlaces se abrirán en tu navegador.", + "Note: older update notes are in English.": "Nota: las notas de actualización más antiguas están en inglés.", + "This feature is not yet available in your language.": "Esta función aún no está disponible en tu idioma.", + "Restart with new changes": "Reiniciar con los nuevos cambios", + "Cookie Clicker is in sleep mode.": "Cookie Clicker está en modo suspensión.", + "Cookie Clicker is in sleep mode and generating offline cookies.": "Cookie Clicker está en modo suspensión y generando galletas sin conexión.", + "%1 to resume from your save file.": "%1 para reanudar desde tu archivo guardado.", + "(this happens when too many frames are skipped at once,
usually when the game has been running in the background for a while)
(you can turn this feature off in the settings menu)": "(esto ocurre cuando se saltan demasiados fotogramas a la vez,
normalmente cuando el juego lleva tiempo funcionando en segundo plano)
(puedes deshabilitar esta función en los ajustes del menú)", + "Are you sure you want to close Cookie Clicker?": "¿Seguro que quieres cerrar Cookie Clicker?", + "Back up your save!": "¡Guarda tus datos!", + "Hello again! Just a reminder that you may want to back up your Cookie Clicker save every once in a while, just in case.
To do so, go to Options and hit \"Export save\" or \"Save to file\"!": "¡Hola de nuevo! Esto es un recordatorio para que guardes tus datos de Cookie Clicker de vez en cuando, por si las moscas.
Para hacerlo, entra en Opciones y haz clic en \"Exportar datos guardados\" o \"Guardar en archivo\".", + "Save manually (the game autosaves every 60 seconds; shortcut: ctrl+S)": "Guárdalo manualmente (el juego se guarda automáticamente cada 60 segundos; atajo ctrl+S)", + "You can use this to backup your save or to transfer it to another computer (shortcut for import: ctrl+O)": "Puedes usar esto para hacer una copia de tus datos guardados o para transferirlos a otro ordenador (atajo para importar: ctrl+O)", + "Save to file": "Guardar en archivo", + "Load from file": "Cargar desde archivo", + "Use this to keep backups on your computer": "Usa esto para guardar copias de seguridad en tu ordenador", + "Export save": "Exportar datos guardados", + "This is your save code.
Copy it and keep it somewhere safe!": "Este es el código de tus datos guardados.
¡Cópialo y guárdalo a buen recaudo!", + "Import save": "Importar datos guardados", + "Please paste in the code that was given to you on save export.": "Pega el código que te dimos al exportar datos guardados.", + "Game saved": "Juego guardado", + "Game loaded": "Juego cargado", + "Error while saving": "Error al guardar", + "Export your save instead!": "¡Mejor exporta tus datos guardados!", + "Error importing save": "Error al importar datos guardados", + "Oops, looks like the import string is all wrong!": "¡Vaya! Parece que el archivo de importación no es válido.", + "You are attempting to load a save from a future version (v. %1; you are using v. %2).": "Estás intentando cargar datos guardados de una versión más avanzada (v. %1; estás usando la v. %2).", + "Sorry, you can't import saves from the classic version.": "Lo siento, no puedes importar datos guardados de la versión clásica.", + "Wipe save": "Borrar datos guardados", + "Delete all your progress, including your achievements": "Borrar todos los progresos, incluidos tus logros.", + "Do you REALLY want to wipe your save?
You will lose your progress, your achievements, and your heavenly chips!": "¿SEGURO que quieres borrar tus datos guardados?
¡Perderás todos tus progresos, tus logros y tus pepitas celestiales!", + "Whoah now, are you really, REALLY sure you want to go through with this?
Don't say we didn't warn you!": "Guau… ¿SEGURO que quieres hacerlo?
¡No dirás que no te lo advertimos!", + "Game reset": "Restablecer el juego", + "Good bye, cookies.": "Adiós, galletas.", + "Welcome back!": "¡Hola otra vez!", + "You earned %1 while you were away.": "Has ganado %1 durante tu ausencia.", + "Mods": "Modificaciones", + "Manage mods": "Gestionar modificaciones", + "Publish mods": "Publicar modificaciones", + "Update published mods": "Actualizar los mods publicados", + "Only use mods from trusted sources. Some mods may require a game restart to take effect.": "Usa solo modificaciones de fuentes fiables. Puede que para que algunas tengan efecto haya que reiniciar el juego.", + "Enable": "Activar", + "Disable": "Desactivar", + "Priority up": "Mayor prioridad", + "Priority down": "Menor prioridad", + "New mod": "Nuevo mod", + "Select folder": "Seleccionar carpeta", + "Select updated folder": "Seleccionar carpeta actualizada", + "Select a mod.": "Elige un mod.", + "Open folder": "Abrir carpeta", + "Open Workshop": "Abrir Workshop", + "Open Workshop page": "Abrir página de Workshop", + "Unsubscribe": "Darse de baja", + "Local mod": "Modificación local", + "Open %1 folder": "Abrir carpeta %1", + "Description": "Descripción", + "Image": "Imagen", + "Name": "Nombre", + "Title": "Título", + "Visibility": "Visibilidad", + "Author": "Autor", + "File size": "Tamaño del archivo", + "Tags": "Etiquetas", + "Dependencies": "Dependencias", + "Publish to Workshop": "Publicar en Workshop", + "Version": "Versión", + "Error!": "Error", + "none": "nada", + "Publishing...": "Publicando...", + "Updating...": "Actualizando...", + "Success!": "¡Perfecto!", + "Refresh": "Actualizar", + "Last update:": "Última actualización:", + "Mods are loaded from top to bottom.": "Los mods se cargan de arriba a abajo.", + "Some mods couldn't be loaded:": "Algunos mods no se han podido cargar:", + "This tool allows you to upload new mods to the Steam Workshop.
You need to select a mod folder containing a properly-formatted %1 file.
See the included sample mods for examples.": "Esta herramienta te permite cargar nuevos mods en Steam Workshop.
Debes seleccionar una carpeta de mods que contenga un archivo %1 con el formato correcto.
Consulta los mods de muestra incluidos para tener ejemplos.", + "Mod data": "Datos modificados", + "No mod data present.": "No hay datos modificados.", + "These are the mods present in your save data. You may delete some of this data to make your save file smaller.": "Estas son las modificaciones de tus datos guardados. Puedes eliminar algunos datos para reducir el archivo de datos guardados.", + "(loaded)": "(cargados)", + "%1 char": [ + "%1 caracter", + "%1 caracteres" + ], + "Check mod data": "Comprobar datos modificados", + "view and delete save data created by mods": "ver y eliminar datos guardados creados con modificaciones", + "New update!": "¡Nueva actualización!", + "New version available: v. %1!": "¡Nueva versión disponible: v. %1!", + "Update note: \"%1\"": "Nota de actualización: \"%1\"", + "Refresh to get it!": "¡Actualiza para conseguirla!", + "You are currently playing Cookie Clicker on the %1 protocol.
The %2 version uses a different save slot than this one.
Click this lock to reload the page and switch to the %2 version!": "Estás jugando a Cookie Clicker con el protocolo %1.
La versión %2 utiliza un espacio de guardado diferente a esta.
¡Haz clic en este candado para actualizar la página y cambiar a la versión %2!", + "+%1 more notification.": [ + "+%1 notificación más.", + "+%1 notificaciones más." + ], + "Christmas": "Navidad", + "Valentine's day": "San Valentín", + "Business day": "Día laborable", + "Easter": "Pascua", + "Halloween": "/", + "%1 has started!": "¡Ha comenzado %1!", + "%1 is over.": "Ha terminado %1.", + "%1's bakery": "La confitería de %1", + "Name your bakery": "Pon nombre a tu confitería", + "What should your bakery's name be?": "¿Qué nombre le pondrías a tu confitería?", + "bakery random name, 1st half": [ + "Mágica", + "Fantástica", + "Elegante", + "Pícaro", + "Vistosa", + "Linda", + "Mona", + "Pirata", + "Ninja", + "Zombi", + "Robot", + "Radical", + "Urbana", + "Chula", + "Total", + "Dulce", + "Horrible", + "Doble", + "Triple", + "Turbo", + "Tecno", + "Disco", + "Electro", + "Bailarín", + "Magnífico", + "Mutante", + "Espacial", + "Científico", + "Medieval", + "Futurista", + "Capitán", + "Barbuda", + "Estupenda", + "Diminuto", + "Grandes", + "Fuego", + "Acuático", + "Helado", + "Metálica", + "Plástica", + "Sólido", + "Líquido", + "Mohoso", + "Brillante", + "Feliz", + "Pequeño Feliz", + "Viscosa", + "Sabroso", + "Delicioso", + "Hambrienta", + "Codiciosa", + "Letal", + "Profesora", + "Doctora", + "Poder", + "Chocolate", + "Desmigajada", + "Chocolateada", + "Honesta", + "Gloriosa", + "Nemotécnica", + "Psíquica", + "Frenética", + "Caótica", + "Loca", + "Real", + "El", + "Von" + ], + "bakery random name, 2nd half": [ + "Galleta", + "Pasta", + "Magdalena", + "Scone", + "Cupcake", + "Tortita", + "Pepita", + "Piñón", + "Artilugio", + "Marioneta", + "Manopla", + "Calcetín", + "Tetera", + "Misteriosa", + "Pastelera", + "Cocinera", + "Abuela", + "Clic", + "Clicker", + "Nave espacial", + "Fábrica", + "Portal", + "Máquina", + "Experimento de", + "Monstruo", + "Pánico", + "Ladrón", + "Bandido", + "Despojo", + "Patata", + "Pizza", + "Hamburguesa", + "Salchicha", + "Albóndiga", + "Espaguetis", + "Macarrones", + "Gatito", + "Perrito", + "Jirafa", + "Cebra", + "Loro", + "Delfín", + "Pato", + "Perezoso", + "Tortuga", + "Duende", + "Hada", + "Gnomo", + "Ordenador", + "Pirata", + "Ninja", + "Zombi", + "Robot" + ], + "%1, age %2": "%1, edad %2", + "Sugar lumps!": "¡Terrones de azúcar!", + "Because you've baked a billion cookies in total, you are now attracting sugar lumps. They coalesce quietly near the top of your screen, under the Stats button.
You will be able to harvest them when they're ripe, after which you may spend them on all sorts of things!": "Como has horneado mil millones de galletas en total, ahora atraes terrones de azúcar. Se fusionan en la parte superior de tu pantalla, debajo del botón Estadísticas.
¡Podrás cosecharlos cuando hayan madurado, y después podrás usarlos para conseguir un montón de cosas!", + "A sugar lump is coalescing here, attracted by your accomplishments.": "Se está fusionando un terrón de azúcar, atraído por tus logros.", + "Your sugar lumps mature after %1,
ripen after %2,
and fall after %3.": "Tus terrones de azúcar maduran al cabo de %1,
están listos para la cosecha al cabo de %2,
y caen al cabo de %3.", + "• Sugar lumps can be harvested when mature, though if left alone beyond that point they will start ripening (increasing the chance of harvesting them) and will eventually fall and be auto-harvested after some time.
• Sugar lumps are delicious and may be used as currency for all sorts of things.
• Once a sugar lump is harvested, another one will start growing in its place.
• Note that sugar lumps keep growing when the game is closed.": "• Puedes cosechar terrones de azúcar cuando estén maduros, aunque si los dejas más tiempo, estarán listos (lo que aumentará las opciones de cosecha) y acabarán cayendo y autocosechándose al cabo de un tiempo.
• Los terrones de azúcar son deliciosos y se pueden usar para comprar un montón de cosas.
• Una vez cosechado un terrón de azúcar, otro empezará a crecer en su lugar.
• Recuerda que los terrones de azúcar siguen creciendo aunque cierres el juego.", + "This sugar lump has been exposed to time travel shenanigans and will take an excruciating %1 to reach maturity.": "Este terrón de azúcar ha estado expuesto a viajes en el tiempo y tardará %1 en madurar.", + "This sugar lump is still growing and will take %1 to reach maturity.": "Este terrón de azúcar sigue creciendo y tardará %1 en madurar.", + "This sugar lump is mature and will be ripe in %1.
You may click it to harvest it now, but there is a 50% chance you won't get anything.": "Este terrón de azúcar está maduro y estará listo para la cosecha en %1.
Puedes hacer clic para cosecharlo ahora, pero hay un 50% de probabilidades de que no consigas nada.", + "This sugar lump is ripe! Click it to harvest it.
If you do nothing, it will auto-harvest in %1.": "¡Este terrón de azúcar está listo para la cosecha! Haz clic para cosecharlo.
Si no haces nada, se autocosechará en %1.", + "This sugar lump grew to be bifurcated; harvesting it has a 50% chance of yielding two lumps.": "Este terrón de azúcar ha salido bifurcado; si lo cosechas, tienes un 50 % de probabilidades de obtener dos terrones.", + "This sugar lump grew to be golden; harvesting it will yield 2 to 7 lumps, your current cookies will be doubled (capped to a gain of 24 hours of your CpS), and you will find 10% more golden cookies for the next 24 hours.": "Este terrón de azúcar ha salido dorado; si lo cosechas, obtendrás de 2 a 7 terrones, tus galletas actuales se duplicarán (con un límite de 24 horas de g/s) y encontrarás un 10 % más de galletas doradas en las próximas 24 horas.", + "This sugar lump was affected by the elders and grew to be meaty; harvesting it will yield between 0 and 2 lumps.": "Este terrón de azúcar se vio afectado por las ancianas y salió carnoso; si lo cosechas, obtendrás entre 0 y 2 terrones.", + "This sugar lump is caramelized, its stickiness binding it to unexpected things; harvesting it will yield between 1 and 3 lumps and will refill your sugar lump cooldowns.": "Este terrón de azúcar está caramelizado, su pegajosidad lo une a cosas inesperadas; si lo cosechas, obtendrás entre 1 y 3 terrones y rellenará el tiempo de recarga de tus terrones.", + "You harvested %1 while you were away.": "Has cosechado %1 durante tu ausencia.", + "Sugar blessing activated!": "¡Bendición dulce activada!", + "Your cookies have been doubled.
+10% golden cookies for the next 24 hours.": "Se han duplicado tus galletas.
+10 % de galletas doradas en las próximas 24 horas.", + "Sugar lump cooldowns cleared!": "¡Tiempo de recarga de terrones vacío!", + "Botched harvest!": "¡Cosecha chapucera!", + "Do you want to spend %1 to %2?": "¿Quieres gastar %1 para %2?", + "Heralds": "Heraldos", + "%1 herald": [ + "%1 heraldo", + "%1 heraldos" + ], + "Heralds couldn't be loaded. There may be an issue with our servers, or you are playing the game locally.": "No se han podido cargar los heraldos. Puede ser un error de nuestros servidores o que estás jugando sin conexión.", + "There are no heralds at the moment. Please consider donating to our Patreon!": "Ahora mismo no hay heraldos. ¡Piensa en donar a través de Patreon", + "selflessly inspiring a boost in production for everyone, resulting in %1.": "y logra un generoso aumento del %1 en la producción para todos!", + "+%1% cookies per second": "+%1% de galletas por segundo", + "You are in a Born again run, and are not currently benefiting from heralds.": "Estás jugando a Renacido y no puedes beneficiarte de heraldos.", + "You own the Heralds upgrade, and therefore benefit from the production boost.": "Tienes la mejora de Heraldos, así que puedes beneficiarte del aumento de producción.", + "To benefit from the herald bonus, you need a special upgrade you do not yet own. You will permanently unlock it later in the game.": "Para beneficiarte de la bonificación Heraldo, necesitas una mejora especial que aún no tienes. La desbloquearás más tarde en el juego de manera permanente.", + "Heralds are people who have donated to our highest Patreon tier, and are limited to 100.
Each herald gives everyone +1% CpS.
Heralds benefit everyone playing the game, regardless of whether you donated.": "Los Heraldos son personas que han donado en el nivel superior de Patreon y están limitados a 100.
Cada heraldo concede a todo el mundo +1% g/s.
Los heraldos benefician a todos los jugadores, independientemente de que hayas hecho o no una donación.", + "Every %1 current players on Steam generates 1 herald, up to %2 heralds.
Each herald gives everyone +1% CpS.": "Se genera 1 mensajero (hasta %2) por cada %1 jugadores actuales en Steam.
Cada mensajero da a todo el mundo +1% g/s.", + "+%1!": "¡+%1!", + "You found %1!": "¡Has encontrado %1!", + "Found %1!": "¡%1 encontrado!", + "You also found %1!": "¡También has encontrado %1!", + "Lost %1!": "¡Has perdido %1!", + "Sweet!
Found 1 sugar lump!": "¡Genial!
¡Has encontrado 1 terrón de azúcar!", + "Lucky!": "¡Qué suerte!", + "Ruin!": "¡Porras!", + "Cookie chain over. You made %1.": "Cadena de galletas terminada. Has conseguido %1.", + "Cookie chain": "Cadena de galletas", + "Cookie chain broken.
You made %1.": "Cadena de galletas interrumpida.
Has conseguido %1.", + "Cookie blab": [ + "¡Migas de galleta x3 durante 60 segundos!", + "¡Chocolate x7 durante 77 segundos!", + "¡La mitad de elasticidad de la masa durante 66 segundos!", + "¡Triplica el brillo de galleta dorado durante 3 segundos!", + "¡Economía mundial a la mitad durante 30 segundos!", + "¡Los besos de abuela escasean un 23 % durante 45 segundos!", + "¡Gracias por hacer clic!", + "¡Te engañé! Esta era solo una prueba.", + "¡+1 clic en galletas doradas!", + "Se ha registrado tu clic. Gracias por tu colaboración.", + "¡Gracias! ¡Justo en el blanco!", + "Gracias. Se ha enviado un equipo.", + "Lo saben.", + "Ups. Era solo una galleta de chocolate envuelta en papel de aluminio." + ], + "Exploded a wrinkler": "Has explotado un devorador", + "Exploded a shiny wrinkler": "Has explotado un devorador brillante", + "Swallowed:": "Engullidas:", + "Reindeer names": [ + "Brioso", + "Bailarín", + "Saltarín", + "Juguetón", + "Cometa", + "Cupido", + "Trueno", + "Rayo", + "Rodolfo" + ], + "The reindeer gives you %1.": "El reno te da %1.", + "You are also rewarded with %1!": "¡También has recibido %1!", + "You are granted %1.": "También consigues %1.", + "Found a present!": "¡Un regalo!", + "You find a present which contains...": "Busca un regalo que contenga…", + "Evolve": "Evolucionar", + "Festive test tube": "Tubo de ensayo navideño", + "Festive ornament": "Adorno navideño", + "Festive wreath": "Corona navideña", + "Festive tree": "Árbol navideño", + "Festive present": "Regalo navideño", + "Festive elf fetus": "Feto de elfo navideño", + "Elf toddler": "Niño elfo", + "Elfling": "Elfo", + "Young elf": "Elfo joven", + "Bulky elf": "Elfo voluminoso", + "Nick": "/", + "Santa Claus": "Papá Noel", + "Elder Santa": "Papá Noel anciano", + "True Santa": "Papá Noel auténtico", + "Final Claus": "Papá Noel final", + "Dragon egg": "Huevo de dragón", + "Shivering dragon egg": "Huevo de dragón tembloroso", + "Krumblor, cookie hatchling": "Krumblor, cría de galleta", + "Krumblor, cookie dragon": "Krumblor, dragón de galleta", + "Train %1": "Adiestrar %1", + "Aura: %1": "/", + "Chip it": "Picar", + "Hatch it": "Romper cascarón", + "Bake dragon cookie": "Hornear galleta de dragón", + "Delicious!": "¡Deliciosa!", + "Train secondary aura": "Adiestrar aura secundaria", + "Lets you use two dragon auras simultaneously": "Te permite usar dos auras de dragón simultáneamente", + "Your dragon is fully trained.": "Tu dragón está adiestrado del todo.", + "%1 of every building": "%1 de todos los edificios", + "No aura": "No hay aura", + "Set your dragon's aura": "Usar aura de tu dragón", + "Set your dragon's secondary aura": "Usar aura secundaria de tu dragón", + "Select an aura from those your dragon knows.": "Selecciona un aura que tu dragón conozca.", + "One tenth of every other dragon aura, combined.": "Un décimo de aura de todos los demás dragones, combinados.", + "Switching your aura is free because you own no buildings.": "Cambiar tu aura es gratis porque no tienes ningún edificio.", + "The cost of switching your aura is %1.
This will affect your CpS!": "Cambiar tu aura te costará %1.
¡Esto afectará a tus g/s!", + "Your dragon dropped something!": "¡Tu dragón ha dejado caer algo!", + "Breath of Milk": "Aliento lechoso", + "Dragon Cursor": "Cursor de dragón", + "Elder Battalion": "Batallón de ancianas", + "Reaper of Fields": "Siega campos", + "Earth Shatterer": "Tiembla tierras", + "Master of the Armory": "Amo de la armería", + "Fierce Hoarder": "Fiero acaparador", + "Dragon God": "Dios dragón", + "Arcane Aura": "Aura arcana", + "Dragonflight": "Vuelo de dragón", + "Ancestral Metamorphosis": "Metamorfosis ancestral", + "Unholy Dominion": "Dominio profano", + "Epoch Manipulator": "Manipulador clásico", + "Mind Over Matter": "Mente sobre materia", + "Radiant Appetite": "Apetito radiante", + "Dragon's Fortune": "Fortuna de dragón", + "Dragon's Curve": "Curva de dragón", + "Reality Bending": "Manipulación de realidad", + "Dragon Orbs": "Orbes de dragón", + "Supreme Intellect": "Intelecto supremo", + "News :": "Noticias:", + "Ticker (grandma)": [ + "Galletas jugosas.", + "Somos abuelas simpáticas.", + "Trabajadoras no remuneradas.", + "Dale un beso a la abuela.", + "¿Por qué no vienes a verme más a menudo?", + "Llámame…" + ], + "Ticker (threatening grandma)": [ + "Qué asquerosidad.", + "Me das asco.", + "Me repugnas.", + "Nos rebelamos.", + "Ha empezado.", + "Pronto, todo habrá acabado.", + "Podrías haberlo evitado." + ], + "Ticker (angry grandma)": [ + "Ese despojo nos ha traicionado.", + "Esa bazofia intentó librarse de nosotras.", + "Pensó que nos iríamos si nos vendía. Qué pintoresco.", + "Huelo tus galletas podridas." + ], + "Ticker (grandmas return)": [ + "arrugarse", + "retorcerse", + "palpitar", + "mordisquear", + "Volveremos a rebelarnos.", + "Es solo un contratiempo.", + "No nos hemos saciado.", + "Demasiado tarde." + ], + "Ticker (grandma invasion start)": [ + "¡Han desaparecido millones de ancianas!", + "¡Familias de todo el continente hablan de abuelas inquietas y embelesadas!", + "¡Enfermeras denuncian \"un extraño aroma a masa de galleta\" en muchas pacientes ancianas!" + ], + "Ticker (grandma invasion rise)": [ + "¡Caos en la ciudad por ancianas que se cuelan en casas ajenas para llevarse a niños y utensilios de cocina!", + "¡Todo el continente está sufriendo un éxodo masivo de ancianas!", + "¡Ancianas que se quedan paralizadas en las calles y rezuman sirope caliente!" + ], + "Ticker (grandma invasion full)": [ + "¡\"Zarcillos de carne\" arrugados visibles desde el espacio!", + "¡Se pierde la esperanza con una maraña de carne y masa que devora toda la ciudad!", + "¡La pesadilla continúa con hectáreas de carne arrugada creciendo a velocidades alarmantes!" + ], + "Ticker (Farm)": [ + "Según un científico, las granjas de galletas liberan chocolates que afectan a nuestros ríos.", + "¡La polémica por el chocolate modificado genéticamente impacta a los granjeros de galletas!", + "Un nutricionista afirma que las galletas de granja no son aptas para veganos." + ], + "Ticker (Mine)": [ + "¿Se ha vuelto más ligero nuestro planeta? Expertos examinan las consecuencias de la explotación intensiva de chocolate.", + "¡Las minas de chocolate provocan terremotos y socavones!", + "Las profundidades de las minas de chocolate albergan \"seres peculiares de chocolate\"." + ], + "Ticker (Factory)": [ + "¡Las fábricas de galletas influyen en el calentamiento global!", + "¡Huelgas en las fábricas de galletas! Esbirros robots sustituyen a la mano de obra.", + "¡Huelgas en las fábricas de galletas! Las trabajadoras exigen dejar de cobrar en galletas." + ], + "Ticker (Bank)": [ + "Aumentan los créditos en galletas porque la gente ya no puede abonarlos con dinero.", + "¡Poco a poco, las galletas se abren paso y compiten con las divisas tradicionales!", + "Muchas confiterías ya cuentan con cajeros que permiten ingresar y retirar galletas." + ], + "Ticker (Temple)": [ + "Los templos de chocolate recientemente descubiertos fomentan una nueva secta basada en la galleta, donde miles rezan al Pastelero celestial.", + "Teístas del mundo descubren una nueva religión basada en la galleta: \"¡Estábamos todos equivocados!\".", + "Exploradores recuperan un artefacto antiguo de un templo abandonado y los arqueólogos se maravillan con el rodillo centenario." + ], + "Ticker (Wizard tower)": [ + "¡Hazte con nuevos hechizos y maldiciones cada año en la Feria Nacional de Hechizos! Precios exclusivos en runas y libros de encantamientos.", + "Los magos de las galletas niegan su participación en un recién nacido que impacta por su fealdad. El niño es \"realmente antiestético, pero natural\", según los médicos.", + "\"Si la magia es suficientemente cruda, no se distingue de la tecnología\", afirmó un renombrado tecnomago." + ], + "Ticker (Shipment)": [ + "Descubierto un nuevo planeta de chocolate que se convierte en objetivo de las naves espaciales que comercian con galletas.", + "¡Descubren un planeta inmenso de chocolate con un núcleo de chocolate negro del 99,8 % de pureza!", + "Hallan organismos con base de chocolate en un planeta lejano." + ], + "Ticker (Alchemy lab)": [ + "Las reservas nacionales de oro disminuyen ante la transformación masiva del valioso mineral en galletas.", + "¡Se descubre que la plata también se puede transformar en chocolate blanco!", + "Clausuran un laboratorio de alquimia defectuoso que convertía galletas en oro inservible." + ], + "Ticker (Portal)": [ + "¡Preocupación en el país ante la inquietante aparición de criaturas salidas de portales dimensionales!", + "El turismo al galletiverso se populariza entre los adolescentes aburridos. ¡La tasa de víctimas alcanza el 73 %!", + "Según un estudio, los portales del galletiverso causan envejecimiento prematuro y obsesión por la pastelería." + ], + "Ticker (Time machine)": [ + "¡Escándalo por unas máquinas del tiempo que han reescrito la historia! ¿O no?", + "Según un historiador, las galletas traídas desde el pasado \"no son aptas para el consumo humano\".", + "El operador de la máquina del futuro afirma: \"He visto el futuro y no tengo intención de volver\"." + ], + "Ticker (Antimatter condenser)": [ + "Una ciudad entera es absorbida por un agujero negro; fuentes más fiables afirman que la ciudad nunca existió.", + "Los investigadores concluyen que la industria de las galletas necesita, por encima de todo, más imanes.", + "Se enciende con éxito el primer condensador de antimateria, y no desgarra la realidad." + ], + "Ticker (Prism)": [ + "Los científicos advierten del peligro de transformar la luz en materia de forma sistemática: \"Un día, ya no habrá luz, solo materia\".", + "Las galletas ya se elaboran a la velocidad de la luz gracias a nuevos artilugios prismáticos.", + "Se advierte a los ciudadanos del mundo de que no se preocupen por los frecuentes destellos atmosféricos." + ], + "Ticker (Chancemaker)": [ + "Continúan las extrañas anomalías estadísticas cuando la previsión meteorológica acierta 3 días seguidos en un hecho sin precedentes.", + "¡Un casino local acaba arruinado cuando sus apostadores logran una racha ganadora durante toda una semana! \"Todavía podemos salir adelante\", dijo el dueño antes de que le cayeran encima 47 rayos.", + "¡Un país vecino elige a un presidente con políticas sensatas en un extraño accidente de probabilidades!" + ], + "Ticker (Fractal engine)": [ + "Un residente local que no quiere saber nada de Cookie Clicker considera las referencias a sí mismo \"exasperantes y ofensivas\".", + "Un gurú local investigado por supuesto canibalismo afirma: \"Todos llevan dentro algo de nosotros\".", + "Según las encuestas, la población considera \"aceptable\" la idea de galletas hechas de galletas. Un ciudadano entrevistado afirma: \"Al menos, por fin sabemos de qué están hechas\"." + ], + "Ticker (Javascript console)": [ + "¡Programar está de moda! Cada vez más adolescentes recurren a campos técnicos como la programación, garantizando un futuro apocalíptico y robótico, así como el fin de la humanidad.", + "Los desarrolladores no saben cómo llamar a sus nuevas bibliotecas de javascript porque todas las combinaciones con 3 palabras ya están cogidas.", + "Una extraña moda hace que los padres bauticen a sus recién nacidos con nombres como Emma.js o Liam.js. Hay constancia de al menos un Bebé.js." + ], + "Ticker (Idleverse)": [ + "¿Hay otro tú cumpliendo su sueño en un universo alternativo? ¡Es probable, holgazán!", + "\"Me consuela saber que, al menos, a algunos de mis yo alternativos les va bien ahí fuera\", dice el último ejemplar de un ciudadano en el multiverso.", + "Guionistas de cómics apuntan al multiverso para defender sus dudosas tramas: \"¿Veis? Os dije que no estaban trilladas ni eran artificiosas\"." + ], + "Ticker (Cortex baker)": [ + "Panadero cerebral identificado con un cociente intelectual de solo cinco cifras: \"Es un poco tonto\", dicen los especialistas.", + "Los astrónomos advierten sobre la desviación de la trayectoria del panadero cerebral y temen futuras colisiones frontales que causen conmociones cerebrales costosas.", + "Los panaderos cerebrales tienen la amabilidad de recordarles a los empleados que los panaderos cerebrales son propiedad material de la panadería y no se les debe poner apodos." + ], + "Ticker (Halloween)": [ + "Aumentan los rituales paganos con niños por todo el mundo vestidos con extraños disfraces que chantajean a los dueños de casas para que les den golosinas.", + "Niños del mundo \"perdidos y confundidos\" al ver que todas las golosinas de Halloween han sido sustituidas por galletas.", + "Extrañas criaturas tortuosas se reúnen alrededor de las fábricas de galletas, mordisqueando en las líneas de montaje." + ], + "Ticker (Christmas)": [ + "¡Sorprendido maniaco barbudo a toda velocidad en un trineo volador! Las autoridades lo están investigando.", + "Las autoridades advierten de un lunático obeso y feliz que anda suelto. \"Mantengan a sus hijos a salvo y tapien chimeneas. No es broma\".", + "Las autoridades hablan de un ser festivo y misterioso con poderes cuánticos que continúa extendiendo el caos con un ejército de renos.", + "\"¿Cómo es eso de que regala cosas?\", pregunta una madre preocupada. \"Personalmente, no me fío de ese barbas\".", + "Niños impactados al descubrir que Papá Noel no es su padre disfrazado.
\"Ahora mismo me estoy replanteando mi vida\", confiesa Laura, de seis años." + ], + "Ticker (Valentines)": [ + "Según los meteorólogos, el amor está en el aire. Se ofrecen mascarillas en todas las ciudades para contrarrestar las infecciones por aerosoles.", + "Casarse con una galleta: ¿práctica demencial o visión de futuro?", + "Dulces con forma de corazón invaden las tiendas y hacen la competencia al imperio de las galletas." + ], + "Ticker (Easter)": [ + "¡Animalitos de orejas largas y colas mullidas invaden las afueras y extienden el terror y el chocolate!", + "Un biólogo advierte de que los conejos que ponen huevos \"no son de esta dimensión\". Evítese acariciarlos, darles de comer o cocinarlos.", + "Los conejos misteriosos ponen huevos, pero son mamíferos, por lo que podrían ser antepasados del ornitorrinco." + ], + "Ticker (misc)": [ + "Los médicos recomiendan comer galletas frescas dos veces al día.", + "Médicos en contra de la nueva dieta sin galletas.", + "Los médicos advierten a las madres de los peligros de las \"galletas caseras\".", + "\"No soy adicto a las galletas. Solo son especulaciones de mis fans, que se aburren\", afirma el famoso personaje.", + "\"Está bien, lo diré: jamás me he comido una galleta\", ha afirmado una famosa.", + "Un famoso afirma: \"Las galletas me han ayudado a mantenerme sano y delgado\".", + "Un hombre atraca un banco para comprar galletas.", + "Un nuevo estudio afirma que las galletas no aceleran ni retrasan el envejecimiento, sino que \"te llevan en otra dirección\".", + "El hombre alérgico a las galletas, visto por su familia: \"Menudo rarito\".", + "La escasez de galletas llega a la ciudad y la gente se ve obligada a comer cupcakes. El alcalde reconoce que no es lo mismo.", + "\"Hay que reconocer que todo este rollo de las galletas es un poco siniestro\", dice un idiota confundido.", + "Incautan misteriosas galletas ilegales. Según la policía: \"Están malísimas\".", + "\"Vale\", dijo el orangután entrevistado.", + "¿Están nuestros medios de comunicación controlados por la industria de la galleta? Según un conspiranoico chiflado: \"Efectivamente, podría ser el caso\".", + "\"Ahora mismo, las galletas han permeado la economía\", dice un economista. \"Si empezamos a comer otra cosa, moriremos todos\".", + "Las galletas se han ilegalizado en algún país atrasado que no le importa a nadie. Aumentan las tensiones políticas y se espera que estalle pronto la guerra." + ], + "You feel like making cookies. But nobody wants to eat your cookies.": "Te apetece hacer galletas, pero a nadie le apetece comérselas.", + "Your first batch goes to the trash. The neighborhood raccoon barely touches it.": "Tu primera remesa acaba en la basura. El mapache del vecino casi ni las toca.", + "Your family accepts to try some of your cookies.": "Tu familia accede a probar algunas de tus galletas.", + "Your cookies are popular in the neighborhood.": "Tus galletas se hacen populares en el barrio.", + "People are starting to talk about your cookies.": "La gente empieza a hablar de tus galletas.", + "Your cookies are talked about for miles around.": "Se habla de tus galletas a varios kilómetros a la redonda.", + "Your cookies are renowned in the whole town!": "¡Tus galletas se hacen famosas en toda la ciudad!", + "Your cookies bring all the boys to the yard.": "Tus galletas atraen a todos los niños.", + "Your cookies now have their own website!": "¡Tus galletas tienen página web propia!", + "Your cookies are worth a lot of money.": "Tus galletas valen mucho dinero.", + "Your cookies sell very well in distant countries.": "Tus galletas se venden muy bien en países lejanos.", + "People come from very far away to get a taste of your cookies.": "La gente viene de muy lejos para probar tus galletas.", + "Kings and queens from all over the world are enjoying your cookies.": "Miembros de la realeza de todo el mundo disfrutan con tus galletas.", + "There are now museums dedicated to your cookies.": "Ya hay museos dedicados a tus galletas.", + "A national day has been created in honor of your cookies.": "Se ha creado un día de fiesta nacional en honor a tus galletas.", + "Your cookies have been named a part of the world wonders.": "Tus galletas entran a formar parte de las maravillas de mundo.", + "History books now include a whole chapter about your cookies.": "Los libros de historia incluyen ahora un capítulo sobre tus galletas.", + "Your cookies have been placed under government surveillance.": "El gobierno vigila tus galletas.", + "The whole planet is enjoying your cookies!": "¡Todo el planeta disfruta de tus galletas!", + "Strange creatures from neighboring planets wish to try your cookies.": "Seres extraños de planetas vecinos quieren probar tus galletas.", + "Elder gods from the whole cosmos have awoken to taste your cookies.": "Dioses antiguos de todo el cosmos se han despertado para probar tus galletas.", + "Beings from other dimensions lapse into existence just to get a taste of your cookies.": "Aparecen seres de otras dimensiones solo para probar tus galletas.", + "Your cookies have achieved sentience.": "Tus galletas han desarrollado conciencia.", + "The universe has now turned into cookie dough, to the molecular level.": "El universo se ha transformado en masa de galleta a nivel molecular.", + "Your cookies are rewriting the fundamental laws of the universe.": "Tus galletas están reescribiendo las leyes fundamentales del universo.", + "A local news station runs a 10-minute segment about your cookies. Success!
(you win a cookie)": "Una cadena local de noticias emite una sección de 10 minutos sobre tus galletas. ¡Todo un éxito!
(ganas una galleta)", + "it's time to stop playing": "Hora de dejar de jugar", + "Today is your lucky day!": "¡Hoy es tu día de suerte!", + "Your lucky numbers are:": "Tus números de la suerte son:", + "Fortune!": "¡Qué suerte la mía!", + "A golden cookie has appeared.": "Ha aparecido una galleta dorada.", + "You gain one hour of your CpS (capped at double your bank).": "Obtienes una hora de tus g/s (con un límite del doble de tu banca).", + "You've unlocked a new upgrade.": "Has desbloqueado una nueva mejora.", + "Wish granted. Golden cookie spawned.": "Deseo concedido. Ha aparecido una galleta dorada.", + "help me!": "¡ayúdame!", + "Ascend": "Ascender", + "You've been on this run for %1.": "Llevas %1 en esta partida.", + "Your prestige level is currently %1.
(CpS +%2%)": "Tu nivel de prestigio es ahora %1.
(g/s +%2%)", + "Ascending now would grant you no prestige.": "Ascender ahora no te otorgará ningún prestigio.", + "Ascending now would grant you
1 prestige level (+1% CpS)
and 1 heavenly chip to spend.": "Ascender ahora te otorgará
1 nivel de prestigio (+1% g/s)
y 1 pepita celestial para gastar.", + "Ascending now would grant you
%1 prestige levels (+%2% CpS)
and %3 heavenly chips to spend.": "Ascender ahora te otorgará
%1 niveles de prestigio (+%2% g/s)
y %3 pepitas celestiales para gastar.", + "You need %1 more cookies for the next level.": "Necesitas %1 más galletas para el siguiente nivel.", + "Do you REALLY want to ascend?
You will lose your progress and start over from scratch.
All your cookies will be converted into prestige and heavenly chips.": "¿SEGURO que quieres ascender?
Perderás tus progresos y empezarás de cero.
Todas tus galletas se convertirán en prestigio y pepitas celestiales.", + "You will keep your achievements.": "Conservarás todos tus logros.", + "You will keep your achievements, building levels and sugar lumps.": "Conservarás todos tus logros, niveles de edificios y terrones de azúcar.", + "Ascending": "Ascendiendo", + "So long, cookies.": "Adiós, galletas.", + "You forfeit your %1.": "Renuncias a tu %1.", + "Prestige level:": "Nivel de prestigio:", + "Heavenly chips:": "Pepitas celestiales:", + "%1 prestige level": [ + "%1 nivel de prestigio", + "%1 niveles de prestigio" + ], + "You gain %1!": "¡Obtienes %1!", + "Reincarnate": "Reencarnarse", + "You are ascending.
Drag the screen around
or use arrow keys!
When you're ready,
click Reincarnate.": "Estás ascendiendo.
¡Arrastra la pantalla
o usa las flechas!
Cuando quieras,
haz clic en Reencarnarse.", + "Each prestige level grants you a permanent +%1% CpS.
The more levels you have, the more cookies they require.": "Cada nivel de prestigio te otorga un +%1% de g/s permanente.
Cuantos más niveles tengas, más galletas requieren.", + "Heavenly chips are used to buy heavenly upgrades.
You gain 1 chip every time you gain a prestige level.": "Las pepitas celestiales se usan para comprar mejoras celestiales.
Obtienes 1 pepita cada vez que ganas un nivel de prestigio.", + "Click this once you've bought
everything you need!": "¡Haz clic aquí cuando hayas comprado
todo lo que necesitas!", + "Are you ready to return to the mortal world?": "¿Listo para regresar al mundo de los mortales?", + "Hello, cookies!": "¡Hola, galletas!", + "Challenge mode for the next run:": "Modo desafío para la siguiente partida:", + "Challenge modes apply special modifiers to your next ascension.
Click to change.": "Los modos desafío aplican modificadores especiales a tu próxima ascensión.
Haz clic para cambiar.", + "Select a challenge mode": "Selecciona un modo desafío", + "None [ascension type]": "Ninguno", + "No special modifiers.": "Sin modificadores especiales.", + "Born again [ascension type]": "Renacido", + "This run will behave as if you'd just started the game from scratch. Prestige levels and heavenly upgrades will have no effect, as will sugar lumps and building levels. Perma-upgrades and minigames will be unavailable.
Some achievements are only available in this mode.": "En esta partida, jugarás como si acabaras de empezar el juego desde cero. Los niveles de prestigio y las mejoras celestiales no tendrán efecto, igual que los terrones de azúcar y los niveles de edificios. Las mejoras permanentes y los minijuegos no estarán disponibles.
Algunos logros solo están disponibles en este modo.", + "Your bingo center/research facility is conducting experiments.": "Tu bingo/centro de investigación está realizando experimentos.", + "Research has begun": "Ha comenzado la investigación", + "Research complete": "Investigación completa", + "You have discovered: %1.": "Has descubierto: %1.", + "Valentine's Day!": "¡San Valentín!", + "It's Valentine's season!
Love's in the air and cookies are just that much sweeter!": "¡Es San Valentín!
¡El amor está en el aire y las galletas saben mucho más dulces!", + "Business Day!": "¡Día de la Empresa!", + "It's Business season!
Don't panic! Things are gonna be looking a little more corporate for a few days.": "¡A emprender toca!
¡Tranquilidad! Vas a vivir unos días un poco más corporativos.", + "Halloween!": "¡Halloween!", + "It's Halloween season!
Everything is just a little bit spookier!": "¡Es Halloween!
¡Todo tiene un punto más aterrador!", + "Christmas time!": "¡Es Navidad!", + "It's Christmas season!
Bring good cheer to all and you just may get cookies in your stockings!": "¡Es Navidad!
¡Haz feliz a la gente y tus calcetines acabarán llenos de galletas!", + "Easter!": "¡Pascua!", + "It's Easter season!
Keep an eye out and you just might click a rabbit or two!": "¡Estamos en Pascua!
¡No te despistes y puede que hagas clic en algún que otro conejo!", + "[Tag]Heavenly": "Celestial", + "[Tag]Tech": "Tecnología", + "[Tag]Cookie": "Galleta", + "[Tag]Debug": "Depuración", + "[Tag]Switch": "Interruptor", + "[Tag]Upgrade": "Mejora", + "Tier:": "Categoría:", + "[Tier]Plain": "Sencilla", + "[Tier]Berrylium": "Bayaberilio", + "[Tier]Blueberrylium": "Arándanoberilio", + "[Tier]Chalcedhoney": "Mielcalcedonia", + "[Tier]Buttergold": "Mantecadorada", + "[Tier]Sugarmuck": "Fangoazucarado", + "[Tier]Jetmint": "Chorromenta", + "[Tier]Cherrysilver": "Platacereza", + "[Tier]Hazelrald": "Esmeraldavellana", + "[Tier]Mooncandy": "Caramelopiedralunar", + "[Tier]Astrofudge": "Carameloastrofilita", + "[Tier]Alabascream": "Cremalabastro", + "[Tier]Iridyum": "Iridiñam", + "[Tier]Synergy I": "Sinergia I", + "[Tier]Synergy II": "Sinergia II", + "[Tier]Fortune": "Fortuna", + "[Tier]Self-referential": "Autorreferencial", + "Vaulted": "Guardado en la cámara", + "Researched": "Investigado", + "Purchased": "Comprado", + "Unlocked forever": "Desbloqueado para siempre", + "Click to learn!": "¡Clic para aprender!", + "Click to unlearn!": "¡Clic para desaprender!", + "Upgrade": "Mejora", + "Upgrades": "Mejoras", + "Achievement": "Logro", + "Achievements": "Logros", + "Shadow Achievement": "Logro turbio", + "Unlocked": "Desbloqueado", + "Locked": "Bloqueado", + "Source:": "Origen:", + "Click to win!": "¡Haz clic para ganar!", + "Click to lose!": "¡Haz clic para perder!", + "Legacy": "Legado", + "Buildings": "Edificios", + "Switches": "Interruptores", + "Vault": "Cámara", + "Research": "Investigación", + "Store": "Tienda", + "sacrifice %1": "sacrificio %1", + "Click to purchase.": "Haz clic para comprar.", + "Click to open selector.": "Haz clic para abrir selector.", + "Click to toggle.": "Haz clic para alternar.", + "Click to research.": "Haz clic para investigar.", + "%1 to vault.": "%1 para guardar en la cámara.", + "%1 to unvault.": "%1 para sacar de la cámara.", + "Upgrade is vaulted and will not be auto-purchased.": "La mejora está guardada en la cámara y no se comprará automáticamente.", + "Upgrade for %1": "Mejorar para %1", + "Buy": "Comprar", + "Sell": "Vender", + "all": "todo", + "max": "máx.", + "Buy all upgrades": "Comprar todas las mejoras", + "Will instantly purchase every upgrade you can afford, starting from the cheapest one.
Upgrades in the vault will not be auto-purchased.
You may place an upgrade into the vault by Shift-clicking on it.": "Sirve para comprar al instante todas las mejoras que te puedas permitir, partiendo de la más barata.
Las mejoras en la cámara no se comprarán automáticamente.
Puedes guardar una mejora en la cámara pulsando Mayús-clic sobre ella.", + "each %1 produces %2 per second": "cada %1 produce %2 por segundo", + "%1 producing %2 per second": "%1 produciendo %2 por segundo", + "%1% of total CpS": "%1% de g/s totales", + "%1 produced so far": "producción hasta ahora: %1", + "...also boosting some other buildings:": "…y también aumenta otros edificios:", + "all combined, these boosts account for %1 per second (%2% of total CpS)": "combinados, estos aumentos suponen %1 por segundo (%2% de g/s en total)", + "owned: %1": "tienes: %1", + "free: %1!": "¡Gratis: %1!", + "Level %1 %2": "Nivel %1 %2", + "Granting +%1% %2 CpS.": "Concede un +%1% %2 g/s.", + "Click to level up for %1.": "Haz clic para subir de nivel por %1.", + "Levelling up this building unlocks a minigame.": "Subir este edificio de nivel desbloquea un minijuego.", + "level up your %1": "sube de nivel tu %1", + "Mute": "Silenciar", + "Minimize this building": "Minimizar este edificio", + "Muted:": "Silenciado:", + "Click to unmute": "Haz clic para reactivar audio", + "Show": "Mostrar", + "Hide": "Ocultar", + "Names in white were submitted by our supporters on Patreon.": "Los nombres en blanco los pusieron nuestros colaboradores de Patreon.", + "You can also press %1 to bulk-buy or sell %2 of a building at a time, or %3 for %4.": "También puedes pulsar %1 para comprar al por mayor o vender %2 de un edificio de cada vez, o %3 por %4.", + "Investment": "Inversión", + "You're not sure what this does, you just know it means profit.": "No sabes muy bien qué es, solo sabes que implica beneficios.", + "Cursor": "/", + "cursor": "/", + "cursors": "cursores", + "%1 cursor": [ + "%1 cursor", + "%1 cursores" + ], + "[Cursor quote]Autoclicks once every 10 seconds.": "Clic automático cada 10 segundos.", + "[Cursor business name]Rolling pin": "Rodillo", + "[Cursor business quote]Essential in flattening dough. The first step in cookie-making.": "Esencial para estirar la masa. El primer paso en la elaboración de galletas.", + "Grandma": "Abuela", + "grandma": "abuela", + "grandmas": "abuelas", + "%1 grandma": [ + "%1 abuela", + "%1 abuelas" + ], + "[Grandma quote]A nice grandma to bake more cookies.": "Una abuela afable para hornear más galletas.", + "[Grandma business name]Oven": "Horno", + "[Grandma business quote]A crucial element of baking cookies.": "Un instrumento crucial para elaborar galletas.", + "Farm": "Granja", + "farm": "granja", + "farms": "granjas", + "%1 farm": [ + "%1 granja", + "%1 granjas" + ], + "[Farm quote]Grows cookie plants from cookie seeds.": "Cultivo de plantas de galleta a partir de semillas de galleta.", + "[Farm business name]Kitchen": "Cocina", + "[Farm business quote]The more kitchens, the more cookies your employees can produce.": "Cuantas más cocinas, más galletas producirán tus empleadas.", + "Mine": "Mina", + "mine": "mina", + "mines": "minas", + "%1 mine": [ + "%1 mina", + "%1 minas" + ], + "[Mine quote]Mines out cookie dough and chocolate chips.": "Extracción de masa de galleta y pepitas de chocolate.", + "[Mine business name]Secret recipe": "Receta secreta", + "[Mine business quote]These give you the edge you need to outsell those pesky competitors.": "Te da la ventaja que necesitas para vender más que la molesta competencia.", + "Factory": "Fábrica", + "factory": "fábrica", + "factories": "fábricas", + "%1 factory": [ + "%1 fábrica", + "%1 fábricas" + ], + "[Factory quote]Produces large quantities of cookies.": "Produce grandes cantidades de galletas.", + "[Factory business name]Factory": "Fábrica", + "[Factory business quote]Mass production is the future of baking. Seize the day, and synergize!": "La producción masiva es el futuro de la pastelería. ¡Aprovecha el día y la sinergia!", + "Bank": "Banca", + "bank": "banca", + "banks": "bancas", + "%1 bank": [ + "%1 banca", + "%1 bancas" + ], + "[Bank quote]Generates cookies from interest.": "Genera galletas a partir de los intereses.", + "[Bank business name]Investor": "Inversor", + "[Bank business quote]Business folks with a nose for profit, ready to finance your venture as long as there's money to be made.": "Negociantes con ojo para los beneficios, dispuestos a financiar tu empresa siempre que puedan sacar tajada.", + "Temple": "Templo", + "temple": "templo", + "temples": "templos", + "%1 temple": [ + "%1 templo", + "%1 templos" + ], + "[Temple quote]Full of precious, ancient chocolate.": "Lleno de chocolate antiguo y valioso.", + "[Temple business name]Like": "Me gusta", + "[Temple business quote]Your social media page is going viral! Amassing likes is the key to a lasting online presence and juicy advertising deals.": "¡Tu página web se hace viral! Acumular \"me gusta\" es la clave de una presencia online duradera y contratos jugosos de publicidad.", + "Wizard tower": "Torre mágica", + "wizard tower": "torre mágica", + "wizard towers": "torres mágicas", + "%1 wizard tower": [ + "%1 torre mágica", + "%1 torres mágicas" + ], + "[Wizard tower quote]Summons cookies with magic spells.": "Invoca galletas con hechizos de magia.", + "[Wizard tower business name]Meme": "Meme", + "[Wizard tower business quote]Cookie memes are all the rage! With just the right amount of social media astroturfing, your brand image will be all over the cyberspace.": "¡Los memes de galletas lo están rompiendo! Con una buena promoción en redes sociales, tu imagen de marca conquistará el ciberespacio.", + "Shipment": "Envío", + "shipment": "envío", + "shipments": "envíos", + "%1 shipment": [ + "%1 envío", + "%1 envíos" + ], + "[Shipment quote]Brings in fresh cookies from the cookie planet.": "Hace llegar galletas frescas desde el planeta galleta.", + "[Shipment business name]Supermarket": "Supermercado", + "[Shipment business quote]A gigantic cookie emporium - your very own retail chain.": "Un emporio gigante de galletas… tu propia cadena de venta al por menor.", + "Alchemy lab": "Laboratorio de alquimia", + "alchemy lab": "laboratorio de alquimia", + "alchemy labs": "laboratorios de alquimia", + "%1 alchemy lab": [ + "%1 laboratorio de alquimia", + "%1 laboratorios de alquimia" + ], + "[Alchemy lab quote]Turns gold into cookies!": "¡Convierte oro en galletas!", + "[Alchemy lab business name]Stock share": "Acciones", + "[Alchemy lab business quote]You're officially on the stock market, and everyone wants a piece!": "¡Ya estás oficialmente en bolsa, y todo el mundo quiere una participación!", + "Portal": "/", + "portal": "/", + "portals": "portales", + "%1 portal": [ + "%1 portal", + "%1 portales" + ], + "[Portal quote]Opens a door to the Cookieverse.": "Abre una puerta al galletiverso.", + "[Portal business name]TV show": "Serie de TV", + "[Portal business quote]Your cookies have their own sitcom! Hilarious baking hijinks set to the cheesiest laughtrack.": "¡Tus galletas tienen su propia telecomedia! Tronchantes travesuras de cocina con las risas enlatadas más horteras posibles.", + "Time machine": "Máquina del tiempo", + "time machine": "máquina del tiempo", + "time machines": "máquinas del tiempo", + "%1 time machine": [ + "%1 máquina del tiempo", + "%1 máquinas del tiempo" + ], + "[Time machine quote]Brings cookies from the past, before they were even eaten.": "Trae galletas del pasado, antes incluso de que se comieran.", + "[Time machine business name]Theme park": "Parque temático", + "[Time machine business quote]Cookie theme parks, full of mascots and roller-coasters. Build one, build a hundred!": "Parques temáticos de galleta, llenos de mascotas y montañas rusas. ¡Construye uno, construye cien!", + "Antimatter condenser": "Condensador de antimateria", + "antimatter condenser": "condensador de antimateria", + "antimatter condensers": "condensadores de antimateria", + "%1 antimatter condenser": [ + "%1 condensador de antimateria", + "%1 condensadores de antimateria" + ], + "[Antimatter condenser quote]Condenses the antimatter in the universe into cookies.": "Condensa la antimateria del universo en galletas.", + "[Antimatter condenser business name]Cookiecoin": "Galletacoin", + "[Antimatter condenser business quote]A virtual currency, already replacing regular money in some small countries.": "Una moneda virtual que, en algunos países pequeños, ya sustituye al dinero.", + "Prism": "Prisma", + "prism": "prisma", + "prisms": "prismas", + "%1 prism": [ + "%1 prisma", + "%1 prismas" + ], + "[Prism quote]Converts light itself into cookies.": "Transforma la luz en galletas.", + "[Prism business name]Corporate country": "País corporativo", + "[Prism business quote]You've made it to the top, and you can now buy entire nations to further your corporate greed. Godspeed.": "Has llegado a lo más alto, y ahora puedes comprar países enteros para llevar más allá tu codicia empresarial. Buena suerte.", + "Chancemaker": "Probabilizador", + "chancemaker": "probabilizador", + "chancemakers": "probabilizadores", + "%1 chancemaker": [ + "%1 probabilizador", + "%1 probabilizadores" + ], + "[Chancemaker quote]Generates cookies out of thin air through sheer luck.": "Genera galletas del aire por chiripa.", + "[Chancemaker business name]Privatized planet": "Planeta privatizado", + "[Chancemaker business quote]Actually, you know what's cool? A whole planet dedicated to producing, advertising, selling, and consuming your cookies.": "¿Sabes lo que mola? Un planeta entero dedicado a producir, promocionar, vender y consumir tus galletas.", + "Fractal engine": "Motor fractal", + "fractal engine": "motor fractal", + "fractal engines": "motores fractales", + "%1 fractal engine": [ + "%1 motor fractal", + "%1 motores fractales" + ], + "[Fractal engine quote]Turns cookies into even more cookies.": "Convierte las galletas en más galletas.", + "[Fractal engine business name]Senate seat": "Escaño en el Senado", + "[Fractal engine business quote]Only through political dominion can you truly alter this world to create a brighter, more cookie-friendly future.": "Solo a través del dominio político podrás alterar el mundo para crear un futuro más brillante y favorable a las galletas.", + "Javascript console": "consola Javascript", + "javascript console": "consola javascript", + "javascript consoles": "consolas javascript", + "%1 javascript console": [ + "%1 consola javascript", + "%1 consolas javascript" + ], + "[Javascript console quote]Creates cookies from the very code this game was written in.": "Crea galletas a partir del código de programación del juego.", + "[Javascript console business name]Doctrine": "Doctrina", + "[Javascript console business quote]Taking many forms -religion, culture, philosophy- a doctrine may, when handled properly, cause a lasting impact on civilizations, reshaping minds and people and ensuring all future generations share a singular goal - the production, and acquisition, of more cookies.": "Adoptando distintas formas como la religión, la cultura o la filosofía, una doctrina bien gestionada puede causar un impacto duradero sobre civilizaciones, remodelando mentes y personas y asegurando que todas las futuras generaciones compartan un mismo objetivo: la producción y adquisición de más galletas.", + "Idleverse": "Universo paralelo", + "idleverse": "universo paralelo", + "idleverses": "universos paralelos", + "%1 idleverse": [ + "%1 universo paralelo", + "%1 universos paralelos" + ], + "[Idleverse quote]There's been countless other idle universes running alongside our own. You've finally found a way to hijack their production and convert whatever they've been making into cookies!": "Ha habido infinitos universos paralelos al nuestro. ¡Por fin has encontrado la manera de secuestrar su producción y convertir en galletas todo lo que ellos fabricaban!", + "[Idleverse business name]Lateral expansions": "Expansiones laterales", + "[Idleverse business quote]Sometimes the best way to keep going up is sideways. Diversify your ventures through non-cookie investments.": "A veces, la mejor manera de avanzar es de lado. Diversifica tus empresas con inversiones ajenas a las galletas.", + "Cortex baker": "Panadero cerebral", + "cortex baker": "panadero cerebral", + "cortex bakers": "panaderos cerebrales", + "%1 cortex baker": [ + "%1 panadero cerebral", + "%1 panaderos cerebrales" + ], + "[Cortex baker quote]These artificial brains the size of planets are capable of simply dreaming up cookies into existence. Time and space are inconsequential. Reality is arbitrary.": "Estos cerebros artificiales del tamaño de un planeta son capaces de soñar con galletas. El tiempo y el espacio son intrascendentes. La realidad es arbitraria.", + "[Cortex baker business name]Think tank": "Grupo de expertos", + "[Cortex baker business quote]There's only so many ways you can bring in more profit. Or is there? Hire the most brilliant experts in the known universe and let them scrape their brains for you!": "Hay muchas formas de generar más ganancias. ¿O no? ¡Contrata a los expertos más brillantes del universo conocido y deja que se estrujen los sesos por ti!", + "CpS": "g/s", + "cookies/click": "galletas/clic", + "%1 CpS": "%1 g/s", + "golden cookie gains": "ganancias de galleta dorada", + "golden cookie frequency": "frecuencia de galleta dorada", + "golden cookie duration": "duración de galleta dorada", + "golden cookie effect duration": "duración del efecto de galleta dorada", + "wrath cookie gains": "ganancias de galleta de la ira", + "wrath cookie frequency": "frecuencia de galleta de la ira", + "wrath cookie duration": "duración de galleta de la ira", + "wrath cookie effect duration": "duración del efecto de galleta de la ira", + "reindeer gains": "ganancias de reno", + "reindeer frequency": "frecuencia de reno", + "reindeer duration": "duración de reno", + "random drops": "botín aleatorio", + "milk effects": "efectos de la leche", + "wrinkler spawn rate": "velocidad de aparición de devoradores", + "wrinkler appetite": "apetito de devorador", + "upgrade costs": "coste de la mejora", + "building costs": "costes de construcción", + "Clicking is %1% more powerful.": "Los clics son un %1% más potentes.", + "All cookie production multiplied by %1.": "Toda la producción de galletas multiplicada por %1.", + "+%1 CpS": "+%1 g/s", + "+%1% base CpS.": "+%1 % de g/s básicos.", + "%1 are twice as efficient.": "El doble de eficacia en %1.", + "%1 are %2% more powerful.": "%2% más de potencia en %1.", + "Unshackled! +%1% extra production.": "¡Desatado! +%1% de producción adicional.", + "Tiered upgrades for %1 provide an extra +%2% production.
Only works with unshackled upgrade tiers.": "Las mejoras por niveles de %1 proporcionan una producción adicional de +%2%.
Solo funciona con niveles de mejora sin restricciones.", + "Unshackles all %1-tier upgrades, making them more powerful.
Only applies to unshackled buildings.": "Desata todas las mejoras de nivel %1 y las hace más poderosas.
Solo se aplica a edificios no encadenados.", + "The mouse and cursors are twice as efficient.": "El ratón y los cursores son el doble de eficaces.", + "The mouse and cursors gain +%1 cookies for each non-cursor building owned.": "El ratón y los cursores ganan +%1 galletas por cada edificio de tu propiedad no conseguido con cursor.", + "Grandmas gain +%1% CpS for each non-grandma building.": "Las abuelas obtienen un +%1% de g/s por cada edificio no conseguido con abuelas.", + "You gain more CpS the more milk you have.": "Obtienes más g/s cuanta más leche tengas.", + "Milk is %1% more powerful.": "La leche es un %1% más potente.", + "Cookie production multiplier +%1%.": "Multiplicador de producción de galletas del +%1%.", + "Cookie production multiplier +%1% permanently.": "Multiplicador de producción de galletas del +%1% permanente.", + "Cookie production multiplier +%1% per Santa's levels.": "Multiplicador de producción de galletas del +%1% por los niveles de Papá Noel.", + "Cookie production multiplier +%1% for every year Cookie Clicker has existed (currently: +%2%).": "Multiplicador de producción de galletas del +%1% por cada año de existencia de Cookie Clicker (ahora mismo: +%2%).", + "Cookie production multiplier +%1% for every building type level %2 or higher.": "Multiplicador de producción de galletas del +%1% por cada tipo de edificio de nivel %2 o superior.", + "Clicking gains +%1% of your CpS.": "Los clics aumentan un +%1% de tus g/s.", + "%1 gain +%2% CpS per %3.": "%1 obtiene un +%2% de g/s por %3.", + "Multiplies the gain from %1 by %2.": "Multiplica lo que obtengas con %1 por %2.", + "Grandma-operated science lab and leisure club.
Grandmas are 4 times as efficient.
Regularly unlocks new upgrades.": "Laboratorio científico y club social gestionado por abuelas.
Las abuelas son 4 veces más eficaces.
La regularidad desbloquea nuevas mejoras.", + "Each %1 gains +%2 base CpS per %3.": "Cada %1 consigue +%2 g/s básicas por %3.", + "Note: the grandmothers are growing restless. Do not encourage them.": "Nota: las abuelas están inquietas. No las animes.", + "Note: proceeding any further in scientific research may have unexpected results. You have been warned.": "Nota: seguir adelante con la investigación científica puede tener resultados inesperados. Quedas advertido.", + "Note: this is a bad idea.": "Nota: no es buena idea.", + "Warning: purchasing this will have unexpected, and potentially undesirable results!
It's all downhill from here. You have been warned!

Purchase anyway?": "Aviso: ¡comprar esto tendrá consecuencias inesperadas y potencialmente perjudiciales!
A partir de aquí, solo puede ir a peor. ¡Quedas advertido!

¿Comprar de todos modos?", + "Contains the wrath of the elders, at least for a while.": "Contiene la ira de las ancianas, al menos por un tiempo.", + "Puts a permanent end to the elders' wrath, at the cost of %1% of your CpS.": "Pone fin a la ira de las ancianas de forma permanente, a costa del %1% de tus g/s. ", + "You will get %1% of your CpS back, but the grandmatriarchs will return.": "Recuperarás el %1% de tus g/s, pero las abumatriarcas volverán.", + "Time remaining until pledge runs out:": "Tiempo restante para que termine la promesa:", + "You haven't pledged to the elders yet.": "No has hecho ninguna promesa a las ancianas.", + "You've pledged to the elders %1 times.": [ + "Has hecho una promesa a las ancianas.", + "Has hecho %1 promesas a las ancianas." + ], + "Research takes only 5 seconds.": "La investigación solo requiere 5 segundos.", + "Golden cookies appear twice as often and stay twice as long.": "Las galletas doradas aparecen el doble de a menudo y duran el doble de tiempo.", + "Golden cookies appear %1% more often.": "Las galletas doradas aparecen un %1% más a menudo.", + "Golden cookies appear %1% more often during %2.": "Las galletas doradas aparecen un %1% más a menudo durante %2.", + "Golden cookies appear really often.": "Las galletas doradas aparecen muy a menudo.", + "Golden cookie effects last twice as long.": "El efecto de las galletas doradas dura el doble.", + "Golden cookie effects last %1% longer.": "El efecto de las galletas doradas dura un %1% más.", + "Golden cookies stay %1% longer.": "Las galletas doradas duran un %1% más.", + "Golden cookies give %1% more cookies.": "Las galletas doradas dan un %1% más de galletas.", + "Wrath cookies give %1% more cookies.": "Las galletas de ira dan un %1% más de galletas.", + "+%1% CpS per golden cookie on-screen, multiplicative.": "+%1% de g/s por galleta dorada en pantalla, multiplicativo.", + "With no buffs and no golden cookies on screen, selling your most powerful building has %1% chance to summon one.": "Sin potenciadores ni galletas doradas en pantalla, vender tu edificio más poderoso tiene un %1% de probabilidad de invocar uno.", + "Confers various powers to your minigames while active.
See the bottom of each minigame for more details.": "Confiere varios poderes a tus minijuegos mientras está activo.
Consulta la parte inferior de cada minijuego para obtener más detalles.", + "Elder pledges last twice as long.": "Las promesas a las ancianas duran el doble.", + "Can toggle upgrades on and off at will in the stats menu.": "En el menú estadísticas, puedes activar y desactivar mejoras cuando quieras.", + "You keep producing cookies even while the game is closed.": "Sigue produciendo galletas incluso con el juego cerrado.", + "Unlocks %1% of the potential of your prestige level.": "Desbloquea un %1% del potencial de tu nivel de prestigio.", + "Subsequent research will be %1 times as fast.": "La siguiente investigación será %1 veces más rápida.", + "Wrinklers appear %1 times as fast.": "Los devoradores aparecen %1 veces más rápido.", + "Wrinklers spawn much more frequently.": "Los devoradores aparecen con mucha más frecuencia.", + "Wrinklers explode into %1% more cookies.": "Los devoradores explotan en un %1% más de galletas.", + "Unlocks... something.": "Desbloquea… algo.", + "In the festive hat, you find...": "En el sombrero festivo, encontrarás…", + "a festive test tube
and %1.": "un tubo de ensayo navideño
y %1.", + "Cost scales with CpS.": "El coste aumenta con tus g/s.", + "Cost scales with Santa level.": "El coste aumenta con el nivel de Papá Noel.", + "Cost scales with how many eggs you own.": "El coste aumenta con los huevos que tengas.", + "Reindeer appear %1% more often.": "Los renos aparecen un %1% más a menudo.", + "Reindeer appear twice as frequently.": "Los renos aparecen con el doble de frecuencia.", + "Reindeer are twice as slow.": "Los renos aparecen el doble de despacio.", + "Reindeer give twice as much.": "Los renos dan el doble.", + "Buildings sell back for %1% instead of %2%.": "Los edificios se venden por el %1% en vez del %2%.", + "All buildings are %1% cheaper.": "Todos los edificios son un %1% más baratos.", + "All upgrades are %1% cheaper.": "Todas las mejoras son un %1% más baratas.", + "All buildings and upgrades are %1% cheaper.": "Todos los edificios y mejoras son un %1% más baratos.", + "%1 are %2% more efficient and %3% cheaper.": "%1 son un %2% más eficaces y un %3% más baratos.", + "Cookie upgrades are %1 times cheaper.": "Las mejoras de galletas son %1 veces más baratas.", + "Random drops are %1% more common.": "Los botines son un %1% más comunes.", + "Reindeer spawn much more frequently.": "Los renos aparecen con mucha más frecuencia.", + "Allows you to trigger seasonal events at will, for a price.": "Te permite activar eventos de temporada cuando quieras, por un precio.", + "Triggers %1 season for the next 24 hours.
Triggering another season will cancel this one.
Cost scales with unbuffed CpS and increases with every season switch.": "Activa la temporada de %1 durante las próximas 24 horas.
Activar otra temporada cancelará esta.
El coste aumenta con las g/s no potenciadas y aumenta con cada cambio de temporada.", + "Click again to cancel season": "Haz clic de nuevo para cancelar la temporada.", + "Seasons now last forever.": "Las temporadas duran ahora eternamente.", + "You haven't switched seasons this ascension yet.": "En esta ascensión aún no has cambiado de temporada.", + "You've switched seasons once this ascension.": "En esta ascensión, has cambiado de temporada una vez.", + "You've switched seasons %1 times this ascension.": "En esta ascensión, has cambiado de temporada %1 veces.", + "Cookie production multiplied by 1,000.": "La producción de galletas se multiplica por 1000.", + "Other eggs appear %1% more frequently.": "Otros huevos aparecen con un %1% más de frecuencia.", + "Contains a lot of cookies.": "Contiene muchas galletas.", + "The egg bursts into %1 cookies!": "¡El huevo se transforma en %1 galletas!", + "You found an egg!": "¡Has encontrado un huevo!", + "Eggs drop %1% more often.": "Los huevos aparecen con un %1% más de frecuencia.", + "Christmas cookies drop %1% more often.": "Las galletas navideñas aparecen con un %1% más de frecuencia.", + "Spooky cookies drop %1% more often.": "Las galletas espeluznantes aparecen con un %1% más de frecuencia.", + "Heart cookies are %1% more powerful.": "Las galletas de corazón son un %1% más poderosas.", + "You continually gain more CpS the longer you've played in the current ascension.": "Obtienes de continuo más g/s cuanto más hayas jugado en esta ascensión.", + "Contains an assortment of fancy biscuits.": "Contiene un surtido de galletas elegantes.", + "Contains an assortment of macarons.": "Contiene un surtido de macarons.", + "Contains an assortment of popular biscuits.": "Contiene un surtido de galletas populares.", + "Contains an assortment of rich butter cookies.": "Contiene un surtido de galletas de mantequilla.", + "Contains an assortment of delicious pastries.": "Contiene un surtido de deliciosa repostería.", + "Contains an assortment of...something.": "Contiene un surtido de… algo.", + "Placing an upgrade in this slot will make its effects permanent across all playthroughs.": "Colocar una mejora en este espacio hará sus efectos permanentes en todas las partidas.", + "Current boost:": "Aumento actual:", + "Current:": "Actual:", + "Click to activate.": "Clic para activar.", + "Pick an upgrade to make permanent": "Elige una mejora para hacerla permanente", + "Here are all the upgrades you've purchased last playthrough.
Pick one to permanently gain its effects!
You can reassign this slot anytime you ascend.": "Aquí están todas las mejoras que has comprado en la última partida.
Elige una para hacer permanentes sus efectos
Puedes reasignar este espacio siempre que asciendas.", + "You now keep making cookies while the game is closed, at the rate of %1% of your regular CpS and up to 1 hour after the game is closed.
(Beyond 1 hour, this is reduced by a further %2% - your rate goes down to %3% of your CpS.)": "Ahora, sigues elaborando galletas con el juego cerrado a un ritmo del %1% de tus g/s habituales y hasta 1 hora después de cerrar el juego.
(A partir de 1 hora, el ritmo se reduce un %2% más. Tu ritmo baja al %3% de tus g/s.)", + "You gain another +%1% of your regular CpS while the game is closed.": "Obtienes otro +%1% de tus g/s habituales con el juego cerrado.", + "You gain another +%1% of your regular CpS while the game is closed, for a total of %2%.": "Obtienes otro +%1% de tus g/s habituales con el juego cerrado, un %2% en total.", + "You start with %1.": "Empiezas con %1.", + "Allows you to purchase a crumbly egg once you have earned 1 million cookies.": "Te permite comprar un huevo desmenuzado una vez hayas conseguido 1 millón de galletas.", + "Unlocks the cookie dragon egg.": "Desbloquea el huevo de dragón de galleta.", + "Synergy upgrades are %1% cheaper.": "Las mejoras de sinergia son un %1% más baratas.", + "You retain optimal cookie production while the game is closed for %1 more days.": "Mantienes la producción óptima de galletas con el juego cerrado durante %1 días más.", + "You retain optimal cookie production while the game is closed for twice as long, for a total of %1.": "Mantienes la producción óptima de galletas con el juego cerrado el doble de tiempo, por un total de %1.", + "Unlocks the golden switch, which passively boosts your CpS by %1% but disables golden cookies.": "Desbloquea el interruptor dorado, que aumenta de forma pasiva tus g/s en un %1%, pero desactiva las galletas doradas.", + "Turning this on will give you a passive +%1% CpS, but prevents golden cookies from spawning.
Cost is equal to 1 hour of production.": "Activar esto te dará un +%1% de g/s de forma pasiva, pero evita que aparezcan galletas doradas.
El coste es igual a 1 hora de producción.", + "The switch is currently giving you a passive +%1% CpS; it also prevents golden cookies from spawning.
Turning it off will revert those effects.
Cost is equal to 1 hour of production.": "El interruptor te está dando un +%1% de g/s de forma pasiva; también evita que aparezcan galletas doradas.
Desactivarlo revertirá dichos efectos.
El coste es igual a 1 hora de producción.", + "Unlocks the milk selector, letting you pick which milk is displayed under your cookie.
Comes with a variety of basic flavors.": "Desbloquea el selector de leche, que te permite elegir la leche mostrada bajo tu galleta.
Las hay de varios sabores básicos.", + "Contains more exotic flavors for your milk selector.": "Contiene más sabores exóticos para tu selector de leche.", + "Lets you pick what flavor of milk to display.": "Te permite elegir qué sabor de leche mostrar.", + "Unlocks the golden cookie sound selector, which lets you pick whether golden cookies emit a sound when appearing or not.": "Desbloquea el selector de sonido de galleta dorada, que te permite elegir si las galletas doradas emiten un sonido cuando aparecen o no.", + "Lets you change the sound golden cookies make when they spawn.": "Te permite cambiar el sonido que hacen las galletas doradas al aparecer.", + "No sound": "Sin sonido", + "Chime": "Campanilla", + "Fortune": "Fortuna", + "Cymbal": "Platillo", + "Squeak": "Chirrido", + "Unlocks the jukebox, which allows you to play through every sound file in the game.": "Desbloquea la máquina de discos, que te permite reproducir todos los archivos de sonido del juego.", + "Play through the game's sound files!": "¡Escucha todos los archivos de sonido del juego!", + "Play": "Reproducir", + "Stop": "Detener", + "Pause": "Pausa", + "Shuffle": "Aleatorio", + "Auto": "/", + "Loop": "Bucle", + "Unlocks the background selector, letting you select the game's background.
Comes with a variety of basic flavors.": "Desbloquea el selector de fondo, lo que te permite seleccionar el fondo del juego.
Las hay de varios sabores básicos.", + "Lets you pick which wallpaper to display.": "Te permite elegir el fondo de pantalla.", + "This is the first heavenly upgrade; it unlocks the Heavenly chips system.
Each time you ascend, the cookies you made in your past life are turned into heavenly chips and prestige.
Heavenly chips can be spent on a variety of permanent transcendental upgrades.
Your prestige level also gives you a permanent +1% CpS per level.": "Esta es la primera actualización celestial y desbloquea el sistema de pepitas celestiales.
Cada vez que asciendas, las galletas que hiciste en tu vida pasada se convertirán en pepitas celestiales y prestigio.
Las pepitas celestiales se pueden gastar en una serie de mejoras trascendentales permanentes.
Tu nivel de prestigio también te otorga +1% de g/s permanente por nivel.", + "You can attract %1 more wrinklers.": "Puedes atraer un %1 más devoradores.", + "While the golden switch is on, you gain an additional +%1% CpS per golden cookie upgrade owned.": "Mientras el interruptor dorado esté activado, obtienes +1% de g/s adicional por cada mejora de galleta dorada que tengas.", + "All upgrades are %1% cheaper per %2.": "Todas las mejoras son %1% más baratas por %2.", + "Unlocks a new tier of upgrades that affect 2 buildings at the same time.
Synergies appear once you have %1 of both buildings.": "Desbloquea un nuevo nivel de mejoras que afecta a 2 edificios a la vez.
Aparecen sinergias una vez que tengas %1 de ambos edificios.", + "Golden cookies (and all other things that spawn, such as reindeer) have %1% chance of being doubled.": "Las galletas doradas (y todas las demás cosas que aparecen, como los renos) tienen un %1% de probabilidad de duplicarse.", + "Cookie production reduced to 0.": "La producción de galletas se reduce a 0.", + "Sugar lumps coalesce a whole lot faster.": "Los terrones de azúcar se fusionan mucho más rápido.", + "+%1% prestige level effect on CpS.": "+%1% de efecto de nivel de prestigio en g/s.", + "+%1% prestige level effect on CpS.
+%2% golden cookie effect duration.
+%3% golden cookie lifespan.": "+%1% de efecto de nivel de prestigio en g/s.
+%2% de duración del efecto de la galleta dorada.
+%3% de vida de la galleta dorada.", + "Each unspent sugar lump (up to %1) gives +%2% CpS.
Note: this means that spending sugar lumps will decrease your CpS until they grow back.
": "Cada terrón de azúcar no gastado (hasta %1) da +%2% g/s.
Nota: esto significa que gastar terrones de azúcar disminuirá tus g/s hasta que vuelvan a crecer.
", + "Once an ascension, you may use the \"Sugar frenzy\" switch to triple your CpS for 1 hour, at the cost of 1 sugar lump.": "Una vez que asciendas, puedes usar el interruptor “Frenesí de azúcar” para triplicar tus g/s durante 1 hora a costa de 1 terrón de azúcar.", + "Each grandma (up to %1) makes sugar lumps ripen %2 sooner.": "Cada abuela (hasta %1) hace que los terrones de azúcar maduren un %2 antes.", + "Activating this will triple your CpS for 1 hour, at the cost of 1 sugar lump.": "Activar esto triplicará tus g/s durante 1 hora a costa de 1 terrón de azúcar.", + "May only be used once per ascension.": "Solo se puede usar una vez por ascensión.", + "activate the sugar frenzy": "activa el frenesí de azúcar", + "Sugar frenzy!": "¡Frenesí de azúcar!", + "CpS x%1 for 1 hour!": "¡G/s x%1 durante 1 hora!", + "Garden plants grow every second.
Garden seeds are free to plant.
You can switch soils at any time.": "Las plantas de jardín crecen cada segundo.
Las semillas de jardín se pueden plantar gratis.
Puedes cambiar de suelo en cualquier momento.", + "Dropped by %1.": "Botín de %1.", + "Dropped by %1 plants.": "Botín de %1 plantas.", + "Must own the %1 upgrade.": "Debes tener la mejora %1.", + "Sugar lumps are twice as likely to be unusual.": "Los terrones de azúcar tienen el doble de probabilidad de ser inusuales.", + "+%1% sugar lump growth.": "+%1% de crecimiento de terrones de azúcar.", + "Sugar lumps ripen %1 sooner.": "Los terrones de azúcar están listos para la cosecha un %1 antes.", + "Sugar lumps mature %1 sooner.": "Los terrones de azúcar se ponen maduros un %1 antes.", + "Bifurcated sugar lumps appear %1% more often and are %2% more likely to drop 2 lumps.": "Los terrones de azúcar bifurcados aparecen un %1% más a menudo y tienen un %2% más de probabilidad de soltar 2 terrones.", + "Mouse over a wrinkler to see how many cookies are in its stomach.": "Pasa el ratón sobre un devorador para ver cuántas galletas tiene en el estómago.", + "Unlocks the Buy all feature, which lets you instantly purchase every upgrade in your store (starting from the cheapest one).
Also unlocks the Vault, a store section where you can place upgrades you do not wish to auto-buy.": "Desbloquea la función Comprar todo, que te permite comprar al instante cada mejora en tu tienda (comenzando por la más barata).
También desbloquea la Cámara, una sección de la tienda donde puedes colocar mejoras que no quieras comprar automáticamente.", + "Mouse over an upgrade to see its tier.
Note: only some upgrades have tiers. Tiers are purely cosmetic and have no effect on gameplay.": "Pasa el ratón sobre una mejora para ver su categoría.
Nota: solo algunas mejoras tienen categorías. Las categorías son puramente estéticas y no tienen ningún efecto en el juego.", + "You now benefit from the boost provided by heralds.
Each herald gives you +1% CpS.
Look on the purple flag at the top to see how many heralds are active at any given time.": "Ahora te beneficias del aumento proporcionado por los heraldos.
Cada heraldo te da +1% g/s.
Mira la bandera violeta en la parte superior para ver cuántos heraldos están activos en un momento dado.", + "Seasonal random drops have a 1/5 chance to carry over through ascensions.": "Los botines al azar de temporada tienen 1/5 de probabilidad de transferirse después de ascender.", + "Unlocks extra price information.
Each displayed cost now specifies how long it'll take you to afford it, and how much of your bank it represents.": "Desbloquea información adicional sobre precios.
Cada coste que se muestra ahora especifica cuánto tiempo tardarás en pagarlo y cuánto representa de tu banca.", + "Unlocks the shimmering veil, a switch that passively boosts your CpS by %1%.
You start with the veil turned on; however, it is very fragile, and clicking the big cookie or any golden cookie or reindeer will turn it off, requiring %2 of CpS to turn back on.": "Desbloquea el velo brillante, un interruptor que aumenta de forma pasiva tus g/s un %1%.
Empiezas con el velo activado; sin embargo, es muy frágil y al hacer clic en la galleta grande o en cualquier galleta dorada o reno se desactivará, lo que requerirá %2 g/s para reactivarlo.", + "Boosts your cookie production by %1% when active.
The veil is very fragile and will break if you click the big cookie or any golden cookies or reindeer.

Once broken, turning the veil back on costs %2 of unbuffed CpS.": "Aumenta tu producción de galletas un %1% cuando está activo.
El velo es muy frágil y se romperá si haces clic en la galleta grande o en cualquier galleta dorada o reno.

Una vez roto, volver a activar el velo cuesta %2 g/s no potenciadas.", + "Has a %1% chance to not break.": "Tiene un %1% de probabilidad de no romperse.", + "The shimmering veil is more resistant, and has a %1% chance not to break. It also gives +%2% more CpS.": "El velo brillante es más resistente y tiene un %1% de probabilidad de no romperse. También da +%2% más g/s.", + "Active.": "Activo.", + "The reinforced membrane protects the shimmering veil.": "La membrana reforzada protege el velo brillante.", + "The shimmering veil disappears...": "El velo brillante desaparece...", + "Prior to purchasing the %1 upgrade in a run, random drops are %2 times more common.": "Antes de comprar la mejora %1 en una partida, los botines son %2 veces más frecuentes.", + "Never forget your %1.": "Nunca olvides tu %1.", + "Pay close attention to the humble %1.": "Presta mucha atención al humilde %1.", + "You've been neglecting your %1.": "Has estado descuidando a tu %1.", + "Remember to visit your %1 sometimes.": "Recuerda visitar a tu %1 de vez en cuando.", + "You don't know what you have until you've lost it.": "No sabes lo que tienes hasta que lo pierdes.", + "Remember to take breaks.": "No te olvides de descansar.", + "Hey, what's up. I'm a fortune cookie.": "Hola, ¿qué tal? Soy una galleta de la fortuna.", + "You think you have it bad? Look at me.": "¿Crees que estás mal? Mírame a mí.", + "The news ticker may occasionally have fortunes, which may be clicked for something good.": "Ocasionalmente, el transmisor de noticias puede tener fortunas, en las que puedes hacer clic para obtener algo bueno.", + "Through clever accounting, this actually makes kitten upgrades %1% cheaper.": "A través de una contabilidad inteligente, esto hace que las mejoras de gatitos sean un %1% más baratas.", + "Unlocks the ability to pet your dragon by clicking on it once hatched.": "Desbloquea la habilidad de acariciar a tu dragón haciendo clic en él una vez que nace.", + "Cost scales with CpS, but %1 times cheaper with a fully-trained dragon.": "El coste aumenta con tus g/s, pero es %1 veces más barato con un dragón completamente entrenado.", + "Golden cookies may trigger a Dragon Harvest.": "Las galletas doradas pueden activar una Cosecha de dragón.", + "Golden cookies may trigger a Dragonflight.": "Las galletas doradas pueden activar un Vuelo de dragón.", + "Dragon harvest and Dragonflight are %1% stronger.": "Cosecha de dragón y Vuelo de dragón son un %1% más fuertes.", + "Kittens are %1% more effective.": "Los gatitos son un %1% más efectivos.", + "Each kitten upgrade boosts %1 CpS by %2%.": "Cada mejora de gatito aumenta %1 g/s en un %2%.", + "Each rank of milk boosts %1 CpS by %2%.": "Cada rango de leche aumenta %1 g/s en un %2%.", + "Cursor levels boost clicks by %1% each (up to cursor level %2).": "Los niveles del cursor aumentan los clics un %1% cada uno (hasta el nivel del cursor %2).", + "%1 are now effective up to cursor level %2.": "%1 ahora son efectivos hasta el nivel del cursor %2.", + "Seasonal cookies purchased: %1.": "Galletas de temporada compradas: %1.", + "Reindeer cookies purchased: %1.": "Galletas de reno compradas: %1.", + "Eggs purchased: %1.": "Huevos comprados: %1.", + "Golden and wrath cookie effect duration +%1%.": "+%1 % de duración de galleta dorada y de la ira.", + "Golden and wrath cookies appear %1% more.": "Las galletas doradas y de la ira aparecen un %1 % más.", + "Golden and wrath cookies appear %1% less.": "Las galletas doradas y de la ira aparecen un %1 % menos.", + "Buildings grant -%1% CpS.": "Los edificios otorgan -%1 % g/s.", + "Selling buildings triggers a buff boosted by how many buildings were sold.": "Vender edificios activa una bonificación que aumenta según los edificios vendidos.", + "Buff boosts clicks by +%1% for every building sold for %2 seconds.": "La bonificación aumenta los clics un +%1 % para cada edificio vendido durante %2 segundos.", + "CpS bonus fluctuating between %1 and %2 over time.": "La bonificación de g/s fluctúa entre %1 y %2 con el tiempo.", + "Effect cycles over %1 hours.": "El efecto se repite cada %1 horas.", + "Some seasonal effects are boosted.": "Algunos efectos de temporada han aumentado.", + "Large boost.": "Potenciador grande.", + "Medium boost.": "Potenciador mediano.", + "Small boost.": "Potenciador pequeño.", + "Switching seasons is %1% pricier.": "Cambiar de temporada es un %1 % más caro.", + "Switching seasons is %1% cheaper.": "Cambiar de temporada es un %1 % más barato.", + "Heavenly chips have %1% less effect.": "Las pepitas celestiales tienen un %1 % menos de efecto.", + "Buildings produce %1% more.": "Los edificios producen un %1 % más.", + "Buildings produce %1% less.": "Los edificios producen un %1 % menos.", + "All golden cookies are wrath cookies with a greater chance of a negative effect.": "Todas las galletas doradas son galletas de la ira con una mayor probabilidad de tener un efecto negativo.", + "Wrinklers appear %1% faster and digest %2% more cookies.": "Los devoradores aparecen un %1 % más rápido y comen un %2 % más de galletas.", + "Effect is only active when your total amount of buildings ends with 0.": "El efecto solo está activo cuando el número total de edificios acaba con 0.", + "Achievement unlocked": "Logro desbloqueado", + "Make %1 just from %2.": "Haz %1 solo a partir de %2.", + "Bake %1 in one ascension.": "Hornea %1 en una ascensión.", + "Bake %1 per second.": "Hornea %1 por segundo.", + "Have %1.": "Ten %1.", + "Ascend at least once.": "Asciende al menos una vez.", + "Ascend %1 times.": "Asciende %1 veces.", + "Ascend with %1 baked.": "Asciende con %1 horneado.", + "Make %1 by only having clicked %2 times.": "Haz %1 tras solo haber hecho clic %2 veces.", + "Make %1 with no cookie clicks.": "Haz %1 sin hacer clic en galletas.", + "Get to %1 baked with no upgrades purchased.": "Consigue hornear %1 sin comprar mejoras.", + "Get to %1 baked in %2.": "Consigue hornear %1 en %2.", + "Make %1 from clicking.": "Haz %1 haciendo clic.", + "Sell a grandma.": "Vende una abuela.", + "Have at least %1 of every building.": "Ten al menos %1 de cada edificio.", + "Have at least 1 of the most expensive object, 2 of the second-most expensive, 4 of the next and so on (capped at %1).": "Ten al menos 1 del objeto más caro, 2 del segundo más caro, 4 del siguiente y así sucesivamente (con un límite de %1).", + "Have at least 10 of the most expensive object, 20 of the second-most expensive, 30 of the next and so on.": "Ten al menos 10 del objeto más caro, 20 del segundo más caro, 30 del siguiente y así sucesivamente.", + "Click a golden cookie.": "Haz clic en una galleta dorada.", + "Click %1.": "Haz clic en %1.", + "Hack in some cookies.": "Piratea algunas galletas.", + "Click really, really fast.": "Haz clic muy, muy rápido.", + "Have at least %1 of everything.": "Ten al menos %1 de todo.", + "Own %1.": "Ten %1.", + "Purchase %1.": "Compra %1.", + "Dunk the cookie.": "Moja la galleta.", + "Appease the grandmatriarchs at least once.": "Apacigua a las abumatriarcas al menos una vez.", + "Appease the grandmatriarchs at least %1 times.": "Apacigua a las abumatriarcas al menos %1 veces.", + "Declare a covenant with the grandmatriarchs.": "Declara un pacto con las abumatriarcas.", + "Own at least %1 grandma types.": "Ten al menos %1 tipos de abuelas.", + "Unlock 100% of your heavenly chips power.": "Desbloquea el 100% del poder de tus fichas celestiales.", + "You have 1 chance in %1 every second of earning this achievement.": "Tienes 1 probabilidad entre %1 por cada segundo de obtener este logro.", + "Burst 1 wrinkler.": "Explota 1 devorador.", + "Burst %1 wrinklers.": "Explota %1 devoradores.", + "Unlock every Halloween-themed cookie.
Owning this achievement makes Halloween-themed cookies drop more frequently in future playthroughs.": "Desbloquea todas las galletas con temática de Halloween.
Tener este logro hace que las galletas con temática de Halloween caigan con más frecuencia en futuras partidas.", + "Reach Santa's 7th form.": "Alcanza la 7.ª forma de Papá Noel.", + "Reach Santa's final form.": "Alcanza la forma final de Papá Noel.", + "Unlock every Christmas-themed cookie.
Owning this achievement makes Christmas-themed cookies drop more frequently in future playthroughs.": "Desbloquea todas las galletas con temática navideña.
Tener este logro hace que las galletas con temática navideña caigan con más frecuencia en futuras partidas.", + "Pop 1 reindeer.": "Explota 1 reno.", + "Pop %1 reindeer.": "Explota %1 renos.", + "Pop a reindeer during an elder frenzy.": "Explota un reno durante un frenesí de ancianas.", + "Unlock every Valentine-themed cookie.": "Desbloquea todas las galletas con temática de San Valentín.", + "Click the tiny cookie.": "Haz clic en la galleta diminuta.", + "This is for baking %1 and making it on the local news.": "Esto es por hornear %1 y publicarlo en las noticias locales.", + "Name yourself Orteil.
Note: usurpers incur a -%1% CpS penalty until they rename themselves something else.
": "Ponte de nombre Orteil.
Nota: los usurpadores incurrirán en una penalización de -%1% g/s hasta que cambien su nombre.
", + "Use an add-on.": "Usa un complemento.", + "Unlock 1 egg.": "Desbloquea 1 huevo.", + "Unlock %1 eggs.": "Desbloquea %1 huevos.", + "Unlock all the eggs.
Owning this achievement makes eggs drop more frequently in future playthroughs.": "Desbloquea todos los huevos.
Tener este logro hace que los huevos caigan con más frecuencia en futuras partidas.", + "Give your bakery a name.": "Pon nombre a tu confitería.", + "Click this achievement's slot.": "Haz clic en el espacio de este logro.", + "Complete your dragon's training.": "Completa el adiestramiento de tu dragón.", + "Click on the news ticker %1 times.": "Haz clic en el transmisor de noticias %1 veces.", + "Own a combined %1 %2 and %3.": "Ten un %1 %2 y %3 combinados.", + "Own %1 upgrades and %2 buildings.": "Ten %1 mejoras y %2 edificios.", + "Own %1 heavenly upgrades.": "Ten %1 mejoras celestiales.", + "Burst the near-extinct shiny wrinkler.": "Explota al casi extinto devorador brillante.", + "Click a golden cookie less than 1 second after it spawns.": "Haz clic en una galleta dorada menos de 1 segundo después de que aparezca.", + "Click a golden cookie less than 1 second before it dies.": "Haz clic en una galleta dorada menos de 1 segundo antes de que desaparezca.", + "Harvest %1 coalescing sugar lumps.": "Cosecha %1 terrones de azúcar fusionados.", + "Successfully harvest a coalescing sugar lump before it's ripe.": "Cosecha con éxito un terrón de azúcar fusionado antes de que esté maduro.", + "Harvest a bifurcated sugar lump.": "Cosecha un terrón de azúcar bifurcado.", + "Harvest a golden sugar lump.": "Cosecha un terrón de azúcar dorado.", + "Harvest a meaty sugar lump.": "Cosecha un terrón de azúcar carnoso.", + "Harvest a caramelized sugar lump.": "Cosecha un terrón de azúcar caramelizado.", + "Reach level %1 %2.": "Alcanza el nivel %1 %2.", + "Cast %1 spells.": "Lanza %1 hechizos.", + "Have %1 golden cookies simultaneously.": "Ten %1 galletas doradas simultáneamente.", + "Manage a cookie legacy for at least a year.": "Administra un legado de galletas durante al menos un año.", + "Harvest %1 mature garden plants.": "Cosecha %1 plantas de jardín maduras.", + "Fill every tile of the biggest garden plot with plants.": "Llena cada casilla del jardín más grande con plantas.", + "Unlock every garden seed.": "Desbloquea todas las semillas de jardín.", + "Convert a complete seed log into sugar lumps by sacrificing your garden to the sugar hornets.
Owning this achievement makes seeds %1% cheaper, plants mature %2% sooner, and plant upgrades drop %3% more.": "Convierte un tronco de semillas completo en terrones de azúcar sacrificando tu jardín a los avispones de azúcar.
Tener este logro hace que las semillas sean un %1% más baratas, las plantas maduren un %2% ​​antes y las mejoras de plantas caigan un %3% más.", + "Ascend with exactly %1.": "Asciende con exactamente %1.", + "Have your reinforced membrane protect the shimmering veil.": "Haz que tu membrana reforzada proteja el velo brillante.", + "Own every fortune upgrade.
Owning this achievement makes fortunes appear twice as often; unlocked fortune upgrades also have a %1% chance to carry over after ascending.": "Ten cada mejora de fortuna.
Tener este logro hace que las fortunas aparezcan el doble de veces; las mejoras de fortuna desbloqueadas también tienen un %1% de probabilidad de transferirse después de ascender.", + "Make your first stock market profit.": "Obtén tu primera ganancia en la bolsa.", + "Own at least %1 of a stock market good.": "Ten al menos %1 de un bien de la bolsa.", + "Own at least %1 of every stock market good.": "Ten al menos %1 de cada bien de la bolsa.", + "Make a day of CpS ($%1) in 1 stock market sale.": "Obtén un día de g/s ($%1) en 1 venta en la bolsa.", + "Spend a day of CpS ($%1) in 1 stock market purchase.": "Gasta un día de g/s ($%1) en 1 compra en la bolsa.", + "Have your stock market profits surpass a whole year of CpS ($%1).": "Haz que tus ganancias en la bolsa superen todo un año de g/s ($%1).", + "Unlock the highest-tier stock market headquarters.": "Desbloquea la sede de la bolsa de categoría más alta.", + "Have your stock market profits surpass $%1.": "Haz que tus ganancias en la bolsa superen $%1.", + "Own %1 kitten upgrades.": "Ten %1 mejoras para gatitos.", + "Find the forgotten madeleine.": "Encuentra la magdalena olvidada.", + "Click one of Santa's helper grandmas during Christmas season.": "Haz clic en una de las abuelas ayudantes de Papá Noel durante la temporada navideña.", + "Frenzy": "Frenesí", + "Elder frenzy": "Frenesí de ancianas", + "Click frenzy": "Frenesí de clics", + "Clot": "Grumo", + "Dragon Harvest": "Cosecha de dragones", + "Everything must go": "Liquidación", + "Cursed finger": "Dedo maldito", + "Cookie storm": "Tormenta de galletas", + "Sugar blessing": "Bendición de azúcar", + "Haggler's luck": "Suerte del regateador", + "Haggler's misery": "Miseria del regateador", + "Crafty pixies": "Hadas astutas", + "Nasty goblins": "Duendes traviesos", + "Magic adept": "Experto en magia", + "Magic inept": "Inepto en magia", + "Devastation": "Devastación", + "Sugar frenzy": "Frenesí de azúcar", + "Loan %1": "Presta %1", + "Loan %1 (interest)": "Presta %1 (intereses)", + "%1 Power!": "¡Poder %1!", + "%1 Burden!": "¡Carga %1!", + "Cookie production x%1 for %2!": "¡Producción de galletas x%1 durante %2!", + "Cookie production +%1% for %2!": "¡Producción de galletas +%1% durante %2!", + "Cookie production %1% slower for %2!": "¡Producción de galletas %1% más lenta durante %2!", + "Cookie production halved for %1!": "¡Producción de galletas reducida a la mitad durante %1!", + "Your %1 are boosting your CpS!": "¡Tu %1 está aumentando tus g/s!", + "Your %1 are rusting your CpS!": "¡Tu %1 está estropeando tus g/s!", + "All buildings are %1% cheaper for %2!": "¡Todos los edificios son un %1% más baratos durante %2!", + "All buildings are %1% pricier for %2!": "¡Todos los edificios son un %1% más caros durante %2!", + "All upgrades are %1% cheaper for %2!": "¡Todas las mejoras son un %1% más baratas durante %2!", + "All upgrades are %1% pricier for %2!": "¡Todas las mejoras son un %1% más caras durante %2!", + "Cookie production halted for %1,
but each click is worth %2 of CpS.": "La producción de galletas se detuvo durante %1,
pero cada clic vale %2 g/s.", + "Clicking power x%1 for %2!": "¡Poder de clics x%1 durante %2!", + "Clicking power +%1% for %2!": "¡Poder de clics +%1% durante %2!", + "Cookies everywhere!": "¡Galletas por todas partes!", + "You find %1% more golden cookies for the next %2.": "Encontrarás un %1% más de galletas doradas durante los próximos %2.", + "Spells backfire %1 times less for %2.": "Los hechizos se lanzan %1 veces menos durante %2.", + "Spells backfire %1 times more for %2.": "Los hechizos se lanzan %1 veces más durante %2.", + "can be done once every %1": "puede hacerse una vez cada %1", + "usable again in %1": "puede volver a usarse dentro de %1", + "+%1/s": "/", + "Next tick in %1.": "Próximo tic dentro de %1.", + "Initializing...": "Iniciando…", + "View %1": "Ver %1", + "Close %1": "Cerrar %1", + "Details:": "Información:", + "Effects:": "Efectos:", + "Effect is active.": "El efecto está activado.", + "Effect is inactive.": "El efecto está desactivado.", + "Current bonus:": "Bonificación actual:", + "Garden": "Jardín", + "Baker's wheat": "Trigo de panadero", + "[Baker's wheat quote]A plentiful crop whose hardy grain is used to make flour for pastries.": "Una cosecha abundante cuyo grano resistente se utiliza para elaborar harina para repostería.", + "Thumbcorn": "Maíz de pulgar", + "[Thumbcorn quote]A strangely-shaped variant of corn. The amount of strands that can sprout from one seed is usually in the single digits.": "Una variante de maíz con una forma extraña. La cantidad de hebras que pueden brotar de una semilla suele ser de un solo dígito.", + "Cronerice": "Arroz de bruja", + "[Cronerice quote]Not only does this wrinkly bulb look nothing like rice, it's not even related to it either; its closest extant relative is the weeping willow.": "Este bulbo arrugado no solo no se parece en nada al arroz, sino que ni siquiera está relacionado con él; su pariente más cercano es el sauce llorón.", + "Gildmillet": "Mijo dorado", + "[Gildmillet quote]An ancient staple crop, famed for its golden sheen. Was once used to bake birthday cakes for kings and queens of old.": "Un antiguo cultivo básico, famoso por su brillo dorado. Antaño, se utilizaba para hacer pasteles de cumpleaños para reyes y reinas.", + "Ordinary clover": "Trébol ordinario", + "[Ordinary clover quote]Trifolium repens, a fairly mundane variety of clover with a tendency to produce four leaves. Such instances are considered lucky by some.": "Trifolium repens, una variedad de trébol bastante mundana con tendencia a producir cuatro hojas. Algunos consideran que estos dan suerte.", + "Golden clover": "Trébol dorado", + "[Golden clover quote]A variant of the ordinary clover that traded its chlorophyll for pure organic gold. Tragically short-lived, this herb is an evolutionary dead-end - but at least it looks pretty.": "Una variante del trébol ordinario que ha cambiado su clorofila por oro orgánico puro. Con una vida trágicamente, esta hierba es un callejón sin salida evolutivo, pero al menos es bonita.", + "Shimmerlily": "Lila brillante", + "[Shimmerlily quote]These little flowers are easiest to find at dawn, as the sunlight refracting in dew drops draws attention to their pure-white petals.": "Estas pequeñas flores son más fáciles de encontrar al amanecer, ya que la luz del sol que se refleja en las gotas de rocío destaca sobre sus pétalos de color blanco puro.", + "Elderwort": "Sauco", + "[Elderwort quote]A very old, long-forgotten subspecies of edelweiss that emits a strange, heady scent. There is some anecdotal evidence that these do not undergo molecular aging.": "Una subespecie de edelweiss muy antigua y olvidada hace mucho tiempo que desprende un aroma extraño y embriagador. Existe alguna prueba anecdótica de que no sufren envejecimiento molecular.", + "Bakeberry": "Baya pastelera", + "[Bakeberry quote]A favorite among cooks, this large berry has a crunchy brown exterior and a creamy red center. Excellent in pies or chicken stews.": "Una de las favoritas entre los cocineros, esta gran baya tiene un exterior marrón crujiente y un centro rojo cremoso. Es excelente en tartas o guisos de pollo.", + "Chocoroot": "Chocorraíz", + "[Chocoroot quote]A tangly bramble coated in a sticky, sweet substance. Unknown genetic ancestry. Children often pick these from fields as-is as a snack.": "Una zarza espesa cubierta de una sustancia dulce y pegajosa. Se desconoce su ascendencia genética. Los niños a menudo las recogen del campo como si fueran caramelos.", + "White chocoroot": "Chocorraíz blanca", + "[White chocoroot quote]A pale, even sweeter variant of the chocoroot. Often impedes travelers with its twisty branches.": "Una variante pálida y aún más dulce de la chocorraíz. A menudo obstaculiza a los viajeros con sus ramas sinuosas.", + "White mildew": "Moho blanco", + "[White mildew quote]A common rot that infests shady plots of earth. Grows in little creamy capsules. Smells sweet, but sadly wilts quickly.": "Una podredumbre común que infesta los terrenos sombríos. Crece en pequeñas cápsulas cremosas. Tiene un olor dulce, pero por desgracia se marchita rápidamente.", + "Brown mold": "Moho marrón", + "[Brown mold quote]A common rot that infests shady plots of earth. Grows in odd reddish clumps. Smells bitter, but thankfully wilts quickly.": "Una podredumbre común que infesta los terrenos sombríos. Crece en extraños grupos rojizos. Tiene un olor amargo, pero por suerte se marchita rápidamente.", + "Meddleweed": "Hierbainsolente", + "[Meddleweed quote]The sign of a neglected farmland, this annoying weed spawns from unused dirt and may sometimes spread to other plants, killing them in the process.": "El signo de una tierra de cultivo descuidada, esta molesta maleza crece debido a la suciedad y a veces puede extenderse a otras plantas, matándolas en el proceso.", + "Whiskerbloom": "Flor bigote", + "[Whiskerbloom quote]Squeezing the translucent pods makes them excrete a milky liquid, while producing a faint squeak akin to a cat's meow.": "Al apretar las vainas translúcidas excretan un líquido lechoso, mientras producen un leve chirrido similar al maullido de un gato.", + "Chimerose": "Quimerosa", + "[Chimerose quote]Originating in the greener flanks of polar mountains, this beautiful flower with golden accents is fragrant enough to make any room feel a little bit more festive.": "Originaria de los flancos más verdes de las montañas polares, esta hermosa flor con toques dorados es lo bastante fragante como para hacer que cualquier habitación sea un poco más festiva.", + "Nursetulip": "Curipán", + "[Nursetulip quote]This flower grows an intricate root network that distributes nutrients throughout the surrounding soil. The reason for this seemingly altruistic behavior is still unknown.": "Esta flor desarrolla una intrincada red de raíces que distribuye nutrientes por todo el suelo circundante. La razón de este comportamiento aparentemente altruista aún se desconoce.", + "Drowsyfern": "Helecho somnoliento", + "[Drowsyfern quote]Traditionally used to brew a tea that guarantees a good night of sleep.": "Se utiliza tradicionalmente para preparar un té que garantiza una buena noche de descanso.", + "Wardlichen": "Liquen guardián", + "[Wardlichen quote]The metallic stench that emanates from this organism has been known to keep insects and slugs away.": "Se sabe que el hedor metálico que emana de este organismo mantiene alejados a los insectos y las babosas.", + "Keenmoss": "Musgo fino", + "[Keenmoss quote]Fuzzy to the touch and of a vibrant green. In plant symbolism, keenmoss is associated with good luck for finding lost objects.": "Suave al tacto y de un verde vibrante. En el simbolismo de las plantas, el musgo fino se asocia a la buena suerte para encontrar objetos perdidos.", + "Queenbeet": "Remolacha", + "[Queenbeet quote]A delicious taproot used to prepare high-grade white sugar. Entire countries once went to war over these.": "Una deliciosa raíz que se utiliza para preparar azúcar blanca de alta calidad. Hasta países enteros han ido a la guerra por ellas.", + "Juicy queenbeet": "Remolacha jugosa", + "[Juicy queenbeet quote]A delicious taproot used to prepare high-grade white sugar. Entire countries once went to war over these.
It looks like this one has grown especially sweeter and juicier from growing in close proximity to other queenbeets.": "Una deliciosa raíz que se utiliza para preparar azúcar blanca de alta calidad. Hasta países enteros han ido a la guerra por ellas.
Parece que esta se ha vuelto especialmente más dulce y jugosa al crecer cerca de otras remolachas.", + "Duketater": "Comeduques", + "[Duketater quote]A rare, rich-tasting tuber fit for a whole meal, as long as its strict harvesting schedule is respected. Its starch has fascinating baking properties.": "Un tubérculo raro y de rico sabor que vale para una comida completa, siempre que se respete su estricto programa de recogida. Su almidón tiene fascinantes propiedades para la repostería.", + "Crumbspore": "Migaspora", + "[Crumbspore quote]An archaic mold that spreads its spores to the surrounding dirt through simple pod explosion.": "Un moho arcaico que esparce sus esporas a la tierra circundante a través de la simple explosión de una vaina.", + "Doughshroom": "Champidónut", + "[Doughshroom quote]Jammed full of warm spores; some forest walkers often describe the smell as similar to passing by a bakery.": "Está repleto de esporas calientes; algunos caminantes del bosque a menudo describen su olor similar al de una confitería.", + "Glovemorel": "Colmenilla", + "[Glovemorel quote]Touching its waxy skin reveals that the interior is hollow and uncomfortably squishy.": "Al tocar su piel cerosa se descubre que el interior es hueco e incómodamente blando.", + "Cheapcap": "Baraseta", + "[Cheapcap quote]Small, tough, and good in omelettes. Some historians propose that the heads of dried cheapcaps were once used as currency in some bronze age societies.": "Pequeña, dura y buena para hacer tortillas. Algunos historiadores opinan que las cabezas de las barasetas se utilizaron una vez como moneda en algunas sociedades de la Edad de Bronce.", + "Fool's bolete": "Boletus engañoso", + "[Fool's bolete quote]Named for its ability to fool mushroom pickers. The fool's bolete is not actually poisonous, it's just extremely bland.": "Llamado así por su capacidad para engañar a los recolectores de setas. El boletus engañoso no es en realidad venenoso, tan solo es muy soso.", + "Wrinklegill": "Gill arrugado", + "[Wrinklegill quote]This mushroom's odor resembles that of a well-done steak, and is said to whet the appetite - making one's stomach start gurgling within seconds.": "El olor de este champiñón se parece al de un bistec bien hecho y se dice que abre el apetito, lo que hace que el estómago comience a rugir en segundos.", + "Green rot": "Moho verde", + "[Green rot quote]This short-lived mold is also known as \"emerald pebbles\", and is considered by some as a pseudo-gem that symbolizes good fortune.": "Este moho de corta vida también se conoce como “guijarro de esmeralda”, y algunos lo consideran una pseudogema que simboliza la buena suerte.", + "Shriekbulb": "Bulbo aullador", + "[Shriekbulb quote]A nasty vegetable with a dreadful quirk : its flesh resonates with a high-pitched howl whenever it is hit at the right angle by sunlight, moonlight, or even a slight breeze.": "Una verdura asquerosa con una peculiaridad espantosa: su carne resuena con un aullido agudo cada vez que la luz del sol, la luna o incluso una ligera brisa cae sobre él en el ángulo correcto.", + "Tidygrass": "Hierba ordenada", + "[Tidygrass quote]The molecules this grass emits are a natural weedkiller. Its stems grow following a predictable pattern, making it an interesting -if expensive- choice for a lawn grass.": "Las moléculas que emite esta hierba son un herbicida natural. Sus tallos crecen siguiendo un patrón predecible, lo que la convierte en una opción interesante, aunque cara, como césped.", + "Everdaisy": "Margarita eterna", + "[Everdaisy quote]While promoted by some as a superfood owing to its association with longevity and intriguing geometry, this elusive flower is actually mildly toxic.": "Si bien algunos la promocionan como un superalimento debido a su relación con la longevidad y la geometría intrigante, esta elusiva flor es en realidad ligeramente tóxica.", + "Ichorpuff": "Icor abombado", + "[Ichorpuff quote]This puffball mushroom contains sugary spores, but it never seems to mature to bursting on its own. Surrounding plants under its influence have a very slow metabolism, reducing their effects but lengthening their lifespan.": "Este champiñón abombado contiene esporas azucaradas, pero nunca parece madurar hasta estallar por sí solo. Las plantas circundantes bajo su influencia tienen un metabolismo muy lento, lo que reduce sus efectos, pero alargan su vida útil.", + "Garden information": "Información del jardín", + "Your garden is frozen, providing no effects.": "Tu jardín está congelado, no tiene efectos.", + "Combined effects of all your plants:": "Efectos combinados de todas tus plantas:", + "None.": "Ninguno.", + "-You can cross-breed plants by planting them close to each other; new plants will grow in the empty tiles next to them.
-Unlock new seeds by harvesting mature plants.
-When you ascend, your garden plants are reset, but you keep all the seeds you've unlocked.
-Your garden has no effect and does not grow while the game is closed.": "-Puedes cruzar plantas plantándolas cerca; las nuevas plantas crecerán en los hoyos vacíos que están junto a ellas.
Cuando asciendes, las plantas de tu jardín se reinician, pero conservas las semillas desbloqueadas.
-Tu jardín no tiene efecto y no crece cuando el juego está cerrado.", + "Harvest all": "Cosechar todas", + "Instantly harvest all plants in your garden.": "Cosecha instantáneamente todas las plantas de tu jardín.", + "%1 to harvest only mature, mortal plants.": "%1 para cosechar solo plantas mortales maduras.", + "%1 to harvest all mature plants of this type.": "%1 para cosechar todas las plantas maduras de este tipo.", + "Freeze": "Congelar", + "Cryogenically preserve your garden.
Plants no longer grow, spread or die; they provide no benefits.
Soil cannot be changed.
Using this will effectively pause your garden.": "Criogeniza tu jardín para preservarlo.
Las plantas ya no crecen ni se esparcen o mueren; no dan ningún beneficio.
La tierra no puede cambiarse.
Es una manera eficaz de pausar tu jardín.", + "Garden is frozen. Unfreeze to resume.": "El jardín está congelado. Descongélalo para retomarlo.", + "Sacrifice garden": "Jardín de sacrificio", + "A swarm of sugar hornets comes down on your garden, destroying every plant as well as every seed you've unlocked - leaving only a %1 seed.
In exchange, they will grant you %2.
This action is only available with a complete seed log.": "Un enjambre de avispones del azúcar desciende sobre tu jardín, destruyendo todas las plantas y las semillas desbloqueadas y dejando solo una semilla de %1.
A cambio, otorga %2.
Esta acción solo está disponible para los registros de semillas completos.", + "Do you REALLY want to sacrifice your garden to the sugar hornets?
You will be left with an empty plot and only the %1 seed unlocked.
In return, you will gain %2 sugar lumps.
": "¿SEGURO que quieres sacrificar tu jardín a los avispones del azúcar?
La parcela se quedará vacía y solo quedará desbloqueada la semilla de %1.
A cambio ganarás%2 terrones de azúcar.
", + "Sacrifice!": "¡Sacrificio!", + "You've sacrificed your garden to the sugar hornets, destroying your crops and your knowledge of seeds.
In the remains, you find %1 sugar lumps.": "Has sacrificado tu jardín a los avispones del azúcar, que han destruido tus cultivos y tus conocimientos sobre semillas.
En los restos encuentras %1 terrones de azúcar.", + "immortal": "inmortal", + "predictable growth": "crecimiento predecible", + "surrounding plants (%1x%1) age %2% faster": "las plantas alrededor (%1x%1) envejecen un %2 % más rápido", + "surrounding plants (%1x%1) age %2% slower": "las plantas alrededor (%1x%1) envejecen un %2 % más despacio", + "surrounding plants (%1x%1) are %2% more efficient": "las plantas alrededor (%1x%1) son un %2 % más eficientes", + "surrounding plants (%1x%1) are %2% less efficient": "las plantas alrededor (%1x%1) son un %2 % menos eficientes", + "surrounding tiles (%1x%1) develop no weeds or fungus": "en los hoyos alrededor (%1x%1) no hay malas hierbas ni hongos", + "harvest when mature for +%1 of CpS (max. %2% of bank)": "cosechar cuando maduren por +%1 g/s (máx. %2 % del banco)", + "harvest when mature for a sugar lump": "cosechar cuando maduren por un terrón de azúcar", + "useless": "inservible", + "spreads easily": "se propaga fácilmente", + "may spread as %1": "puede propagarse como %1", + "grows in empty tiles": "crece en los hoyos vacíos", + "may overtake nearby plants": "puede que alcance a las plantas cercanas", + "may sometimes drop spores when uprooted": "puede que caigan esporas al arrancarla", + "explodes into up to %1 of CpS at the end of its lifecycle (max. %2% of bank)": "explota en hasta %1 g/s al final de su ciclo de vida (máx. %2 % del banco)", + "cannot handle cold climates; %1% chance to die when frozen": "no soporta los climas fríos; %1 % de probabilidades de morir al congelarse", + "the unfortunate result of some plant combinations": "el desafortunado resultado de algunas combinaciones de plantas", + "Soil unlocked at %1 farms.": "Tierra desbloqueada en %1 granjas.", + "Your field is currently using this soil.": "Tu jardín está usando esta tierra.", + "You will be able to change your soil again in %1.": "Puedes volver a cambiar la tierra en %1.", + "Click to use this type of soil for your whole field.": "Haz clic para usar este tipo de tierra en todo el terreno.", + "Dirt": "Barro", + "Simple, regular old dirt that you'd find in nature.": "El barro normal de toda la vida que se encuentra en la naturaleza.", + "Fertilizer": "Fertilizador", + "Soil with a healthy helping of fresh manure. Plants grow faster but are less efficient.": "Tierra con una buena cantidad de abono fresco. Las plantas crecen más rápido, pero son menos eficientes.", + "Clay": "Arcilla", + "Rich soil with very good water retention. Plants grow slower but are more efficient.": "Tierra fértil que retiene bien el agua. Las plantas crecen más despacio, pero son más eficientes.", + "Pebbles": "Guijarros", + "Dry soil made of small rocks tightly packed together. Not very conducive to plant health, but whatever falls off your crops will be easy to retrieve.
Useful if you're one of those farmers who just want to find new seeds without having to tend their garden too much.": "Tierra seca compuesta por pequeñas piedras comprimidas. No es muy buena para la salud de las plantas, pero será fácil recuperar todo lo que se caiga de los cultivos.
Útil si eres como esos granjeros a los que les gusta encontrar semillas nuevas sin tener que cuidar mucho el jardín.", + "Wood chips": "Astillas", + "Soil made of bits and pieces of bark and sawdust. Helpful for young sprouts to develop, not so much for mature plants.": "Tierra compuesta por trozos de corteza y virutas. Favorece el crecimiento de los pequeños brotes, no tanto el de las plantas maduras.", + "tick every %1": "tic cada %1", + "passive plant effects": "efectos pasivos de la planta", + "weed growth": "crecimiento de malas hierbas", + "%1% chance of collecting seeds automatically when plants expire": "%1 % de probabilidades de recoger semillas automáticamente cuando la planta muera", + "plants spread and mutate %1 times more": "las plantas se propagan y mutan %1 veces más", + "Plant effects:": "Efectos de la planta:", + "Possible mutations:": "Posibles mutaciones:", + "Average lifespan:": "Duración media:", + "Average maturation:": "Maduración media:", + "Mature in about %1": "Madura en %1, aproximadamente", + "Decays in about %1": "Se descompone en %1, aproximadamente", + "Does not decay": "No se descompone", + "%1 tick": [ + "%1 tic", + "%1 tics" + ], + "Weed": "Malas hierbas", + "Fungus": "Hongos", + "Planting cost:": "Coste de plantación:", + "%1 of CpS,
minimum %2": "%1 g/s,
%2 mínimo", + "%1 seed": "semilla de %1", + "Click to select this seed for planting.": "Haz clic para seleccionar esta semilla y plantarla.", + "This seed cannot be planted.": "Esta semilla no puede plantarse.", + "Empty tile": "Hoyo vacío", + "This tile of soil is empty.
Pick a seed and plant something!": "Este hoyo de tierra está vacío.
Escoge una semilla y planta algo.", + "Click to plant %1 for %2.": "Haz clic para plantar %1 para %2.", + "%1 to plant multiple.": "%1 para plantar varias.", + "Aging multiplier:": "Multiplicador de envejecimiento:", + "Effect multiplier:": "Multiplicador de efecto:", + "Weeds/fungus repellent:": "Repelente de malas hierbas y hongos:", + "This plant is growing here.": "Esta planta está creciendo aquí.", + "Stage:": "Fase:", + "bud": "cogollo", + "sprout": "brote", + "bloom": "flor", + "mature": "madurez", + "may reproduce, will drop seed when harvested": "puede reproducirse, caerán semillas al cosecharla", + "Click to harvest.": "Haz clic para recolectar.", + "Click to unearth.": "Haz clic para desenterrarla.", + "Click to refill your soil timer and trigger 1 plant growth tick with x%1 spread and mutation rate for %2.": "Haz clic para recargar el temporizador de tierra y activar 1 tic de crecimiento con un x%1 de velocidad de propagación y mutación durante %2.", + "Unlocked %1 seed.": "Desbloquea %1 semilla.", + "Seeds": "Semilla", + "Tools": "Herramientas", + "Mature plants harvested: %1 (total: %2)": "Plantas maduras cosechadas: %1 (total: %2)", + "Plot size: %1
(Upgrades with farm level)": "Tamaño de la parcela: %1
(Mejora con el nivel de la granja)", + "Garden plants age and mutate %1% faster.": "Las plantas de jardín envejecen y mutan un %1% más rápido.", + "while plant is alive; scales with plant growth": "Mientras la planta está viva; progresa con el crecimiento de la planta.", + "Dungeon": "Calabozo", + "Grimoire": "Grimorio", + "This is your magic meter. Each spell costs magic to use.
Your maximum amount of magic varies depending on your amount of Wizard towers, and their level.
Magic refills over time. The lower your magic meter, the slower it refills.": "Este es tu contador mágico. Cada hechizo cuesta magia.
La cantidad máxima de magia depende de la cantidad de torres de hechicero que tengas y de su nivel.
La magia se recarga con el tiempo. Cuanto más bajo esté tu contador mágico, más despacio se recargará.", + "Spells cast: %1 (total: %2)": "Hechizos lanzados: %1 (total: %2)", + "Magic cost:": "Coste de magia:", + "Chance to backfire:": "Probabilidad de explotar:", + "Effect:": "Efecto:", + "Backfire:": "Explosión:", + "Backfire!": "¡Explosión!", + "%1 magic": "%1 de magia", + "+%1% of max magic": "+%1 % de magia máx.", + "Click to refill %1 units of your magic meter for %2.": "Haz clic para recargar %1 unidades del contador mágico durante %2.", + "Grimoire spells are %1% cheaper but fail %1% more.": "Los hechizos de grimorio son un %1% más baratos, pero fallan un %1% más.", + "Conjure Baked Goods": "Conjurar alimentos horneados", + "Summon half an hour worth of your CpS, capped at %1% of your cookies owned.": "Invoca media hora de g/s, limitado a un %1 % de las galletas que tienes.", + "Trigger a %1-minute clot and lose %1 minutes of CpS.": "Activa un grumo de %1 minutos y pierde %1 minutos de g/s.", + "You magic %1 out of thin air.": "Te sacas %1 de la manga.", + "Summoning failed!": "¡Ha fallado la invocación!", + "Force the Hand of Fate": "Forzar la mano del destino", + "Summon a random golden cookie. Each existing golden cookie makes this spell +%1% more likely to backfire.": "Invoca una galleta dorada aleatoria. Cada galleta aleatoria existente hace que este hechizo tenga un +%1 % de probabilidades de estallar.", + "Summon an unlucky wrath cookie.": "Invoca una galleta de la ira fatídica.", + "Promising fate!": "¡Destino prometedor!", + "Sinister fate!": "¡Destino siniestro!", + "Stretch Time": "Estirar el tiempo", + "All active buffs gain %1% more time (up to %2 more minutes).": "Todas las bonificaciones activas ganan un %1 % más de tiempo (hasta %2 minutos más).", + "All active buffs are shortened by %1% (up to %2 minutes shorter).": "Todas las bonificaciones activas se acortan un %1 % (hasta %2 minutos menos).", + "No buffs to alter!": "No hay bonificaciones que alterar.", + "Zap! Buffs lengthened.": "¡Listas! Bonificaciones alargadas.", + "Fizz! Buffs shortened.": "¡Burbujas! Bonificaciones acortadas.", + "Spontaneous Edifice": "Edificación espontánea", + "The spell picks a random building you could afford if you had twice your current cookies, and gives it to you for free. The building selected must be under %1, and cannot be your most-built one (unless it is your only one).": "El hechizo escoge un edificio aleatorio que te podrías permitir si tuvieses el doble de galletas y te lo da gratis. El edificio seleccionado debe ser menor a %1 y no puede ser el más construido (a menos que sea el único).", + "Lose a random building.": "Perder un edificio aleatorio.", + "No buildings to improve!": "No hay edificios que mejorar.", + "Backfired, but no buildings to destroy!": "Ha explotado, pero no hay edificios que destruir.", + "A new %1
bursts out of the ground.": "Sale del suelo por primera vez:
%1.", + "One of your %1
disappears in a puff of smoke.": "Tu %1
desaparece en una humareda.", + "Haggler's Charm": "Encanto de regateador", + "Upgrades are %1% cheaper for 1 minute.": "Las mejoras son un %1 % más baratas durante 1 minuto.", + "Upgrades are %1% more expensive for an hour.": "Las mejoras son un %1 % más caras durante 1 hora.", + "Upgrades are cheaper!": "¡Las mejoras son más baratas!", + "Upgrades are pricier!": "¡Las mejoras son más caras!", + "Summon Crafty Pixies": "Invoca duendes apañados", + "Buildings are %1% cheaper for 1 minute.": "Los edificios son un %1 % más baratos durante 1 minuto.", + "Buildings are %1% more expensive for an hour.": "Los edificios son un %1 % más caros durante 1 minuto.", + "Buildings are cheaper!": "¡Los edificios son más baratos!", + "Buildings are pricier!": "¡Los edificios son más caros!", + "Gambler's Fever Dream": "Sueño febril de jugador", + "Cast a random spell at half the magic cost, with twice the chance of backfiring.": "Lanza un hechizo a costa de la mitad de la magia con el doble de probabilidad de fracasar.", + "No eligible spells!": "No hay hechizos aplicables.", + "That's too bad!
Magic refunded.": "¡Es una pena!
Magia restituida.", + "Casting %1
for %2 magic...": "Lanza %1
para magia de %2...", + "Resurrect Abomination": "Abominación desenterrada", + "Instantly summon a wrinkler if conditions are fulfilled.": "Invoca instantáneamente un devorador si se dan las condiciones apropiadas.", + "Pop one of your wrinklers.": "Explota uno de tus devoradores.", + "Unable to spawn a wrinkler!": "¡No se pueden generar devoradores!", + "Rise, my precious!": "¡Arriba, cosa bonita!", + "But no wrinkler was harmed.": "Ningún devorador ha sido dañado.", + "So long, ugly...": "Adiós, engendro…", + "Diminish Ineptitude": "Reducir ineptitud", + "Spells backfire %1 times less for the next %2 minutes.": "Conjura %1 veces menos explosiones durante los próximos %2 minutos.", + "Spells backfire %1 times more for the next %2 minutes.": "Conjura %1 veces más explosiones durante los próximos %2 minutos.", + "Ineptitude diminished!": "¡Ineptitud reducida!", + "Ineptitude magnified!": "¡Ineptitud aumentada!", + "Pantheon": "Panteón", + "[GOD 1 NAME]Holobore, Spirit of Asceticism": "Holobore, espíritu del ascetismo", + "[GOD 1 QUOTE]An immortal life spent focusing on the inner self, away from the distractions of material wealth.": "Una vida inmortal dedicada al yo interior, lejos de las distracciones materiales.", + "[GOD 2 NAME]Vomitrax, Spirit of Decadence": "Vomitrax, espíritu de la decadencia", + "[GOD 2 QUOTE]This sleazy spirit revels in the lust for quick easy gain and contempt for the value of steady work.": "A este sórdido espíritu le divierte la codicia por el lucro fácil y desprecia el valor del trabajo estable.", + "[GOD 3 NAME]Godzamok, Spirit of Ruin": "Godzamok, espíritu de la ruina", + "[GOD 3 QUOTE]The embodiment of natural disasters. An impenetrable motive drives the devastation caused by this spirit.": "La encarnación de los desastres naturales. Las motivaciones de la devastación causada por este espíritu son impenetrables.", + "[GOD 4 NAME]Cyclius, Spirit of Ages": "Cyclius, espíritu de las edades", + "[GOD 4 QUOTE]This spirit knows about everything you'll ever do, and enjoys dispensing a harsh judgment.": "Este espíritu sabe todo lo que harás en tu vida y disfruta juzgándote severamente.", + "[GOD 5 NAME]Selebrak, Spirit of Festivities": "Selebrak, espíritu de las festividades", + "[GOD 5 QUOTE]This is the spirit of merry getaways and regretful Monday mornings.": "Este es el espíritu de las salidas alegres y las mañanas pesarosas de los lunes.", + "[GOD 6 NAME]Dotjeiess, Spirit of Creation": "Dotjeiess, espíritu de la creación", + "[GOD 6 QUOTE]All things that be and ever will be were scripted long ago by this spirit's inscrutable tendrils.": "Todas las cosas que han sucedido y sucederán fueron escritas mucho tiempo atrás por sus inescrutables tentáculos.", + "[GOD 7 NAME]Muridal, Spirit of Labor": "Muridal, espíritu del trabajo", + "[GOD 7 QUOTE]This spirit enjoys a good cheese after a day of hard work.": "A este espíritu le gusta disfrutar de un buen queso después de un duro día de trabajo.", + "[GOD 8 NAME]Jeremy, Spirit of Industry": "Jeremy, espíritu de la industria", + "[GOD 8 QUOTE]While this spirit has many regrets, helping you rule the world through constant industrialization is not one of them.": "Aunque este espíritu se arrepiente de muchas cosas, ayudarte a gobernar el mundo a través de una incesante industrialización no es una de ellas.", + "[GOD 9 NAME]Mokalsium, Mother Spirit": "Mokalsium, espíritu materno", + "[GOD 9 QUOTE]A caring spirit said to contain itself, inwards infinitely.": "Un espíritu bondadoso que se contiene a sí mismo dentro infinitamente.", + "[GOD 10 NAME]Skruuia, Spirit of Scorn": "Skruuia, espíritu del escarnio", + "[GOD 10 QUOTE]This spirit enjoys poking foul beasts and watching them squirm, but has no love for its own family.": "Este espíritu disfruta metiéndose con bestias fétidas y viéndolas retorcerse, pero no siente ningún amor por su propia familia.", + "[GOD 11 NAME]Rigidel, Spirit of Order": "Rigidel, espíritu del orden", + "[GOD 11 QUOTE]You will find that life gets just a little bit sweeter if you can motivate this spirit with tidy numbers and properly-filled tax returns.": "Descubrirás que la vida se vuelve un poco más amable si puedes motivar a este espíritu con números ordenados y declaraciones de impuestos debidamente cumplimentadas.", + "Diamond slot": "Ranura de diamante", + "Ruby slot": "Ranura de rubí", + "Jade slot": "Ranura de jade", + "empty": "vacía", + "Release to assign %1 to this slot.": "Libera para asignar a %1 a esta ranura.", + "Drag a spirit onto this slot to assign it.": "Arrastra un espíritu a esta ranura para asignarlo.", + "If a golden cookie is clicked, this spirit is unslotted and all worship swaps will be used up.": "Si haces clic en una galleta dorada, el espíritu se liberará y se consumirán todos los cambios de devoción.", + "Each time you slot a spirit, you use up one worship swap.
If you have 2 swaps left, the next one will refill after %1.
If you have 1 swap left, the next one will refill after %2.
If you have 0 swaps left, you will get one after %3.
Unslotting a spirit costs no swaps.": "Cada vez que metes un espíritu en una ranura, usas un cambio de culto.
Si te quedan 2 cambios, el próximo se recargará después de %1.
Si te queda 1 cambio, el próximo se recargará después de %2.
Si no te queda ningún cambio, recibirás después de %3.
Liberar a los espíritus de sus ranuras no cuesta ningún cambio.", + "Click to refill all your worship swaps for %1.": "Haz clic para recargar cambios de culto durante %1.", + "Worship swaps: %1": "Cambios de culto: %1", + "next in %1": "próximo en %1", + "The jade slot behaves as a ruby slot and the ruby slot behaves as a diamond slot.": "La ranura de jade se comporta como una ranura de rubí y la ranura de rubí se comporta como una ranura de diamante.", + "Stock Market": "Bolsa de valores", + "[STOCK 1 NAME]Old Mills": "Molinos viejos", + "[STOCK 1 TYPE]Cereals": "Cereales", + "[STOCK 1 LOGO]CRL": "CRL", + "[STOCK 2 NAME]Cocoa Excavations": "Excavaciones de cacao", + "[STOCK 2 TYPE]Chocolate": "Chocolate", + "[STOCK 2 LOGO]CHC": "CHC", + "[STOCK 3 NAME]Bovine Industries": "Sector bovino", + "[STOCK 3 TYPE]Butter": "Mantequilla", + "[STOCK 3 LOGO]BTR": "MTQ", + "[STOCK 4 NAME]Candy Trust": "Monopolio de caramelo", + "[STOCK 4 TYPE]Sugar": "Azúcar", + "[STOCK 4 LOGO]SUG": "AZU", + "[STOCK 5 NAME]Hazel Monastery": "Monasterio de avellano", + "[STOCK 5 TYPE]Nuts": "Frutos secos", + "[STOCK 5 LOGO]NUT": "FRT", + "[STOCK 6 NAME]Wacky Reagants": "Reactivos extravagantes", + "[STOCK 6 TYPE]Salt": "Sal", + "[STOCK 6 LOGO]SLT": "SAL", + "[STOCK 7 NAME]Cosmic Exports": "Exportaciones cósmicas", + "[STOCK 7 TYPE]Vanilla": "Vainilla", + "[STOCK 7 LOGO]VNL": "VNL", + "[STOCK 8 NAME]Organic Gnostics": "Gnósticos orgánicos", + "[STOCK 8 TYPE]Eggs": "Huevos", + "[STOCK 8 LOGO]EGG": "HVS", + "[STOCK 9 NAME]Dimensional Exchange": "Intercambio dimensional", + "[STOCK 9 TYPE]Cinnamon": "Canela", + "[STOCK 9 LOGO]CNM": "CNL", + "[STOCK 10 NAME]Precision Aging": "Envejecimiento de precisión", + "[STOCK 10 TYPE]Cream": "Crema", + "[STOCK 10 LOGO]CRM": "CRM", + "[STOCK 11 NAME]Pectin Research": "Estudios de pectina", + "[STOCK 11 TYPE]Jam": "Mermelada", + "[STOCK 11 LOGO]JAM": "MRM", + "[STOCK 12 NAME]Dazzle Corp Ltd.": "Corporación Deslumbrante S.L.", + "[STOCK 12 TYPE]White chocolate": "Chocolate blanco", + "[STOCK 12 LOGO]WCH": "CHB", + "[STOCK 13 NAME]Prosperity Hive": "Colmena próspera", + "[STOCK 13 TYPE]Honey": "Miel", + "[STOCK 13 LOGO]HNY": "MIE", + "[STOCK 14 NAME]Selfmade Bakeries": "Panaderías caseras", + "[STOCK 14 TYPE]Cookies": "Galletas", + "[STOCK 14 LOGO]CKI": "GLL", + "[STOCK 15 NAME]Figments Associated": "Fantasías asociadas", + "[STOCK 15 TYPE]Recipes": "Recetas", + "[STOCK 15 LOGO]RCP": "RCT", + "[STOCK 16 NAME]Polyvalent Acquisitions": "Adquisiciones polivalentes", + "[STOCK 16 TYPE]Subsidiaries": "Sucursales", + "[STOCK 16 LOGO]SBD": "SCR", + "[STOCK 17 NAME]Great Minds": "Grandes mentes", + "[STOCK 17 TYPE]Publicists": "Publicistas", + "[STOCK 17 LOGO]PBL": "PBL", + "from %1": "desde %1", + "%1: currently worth $%2 per unit.": "%1: vale actualmente $%2 por unidad.", + "You currently own %1 (worth $%2).": "Ahora mismo tienes %1 (se valora en $%2).", + "Your warehouses can store up to %1.": "Tus almacenes pueden guardar hasta %1.", + "You may increase your storage space by upgrading your offices and by buying more %1. You also get %2 extra storage space per %3 level (currently: +%4).": "Puedes aumentar tu espacio de almacenamiento mejorando tus oficinas y comprando más %1. También recibes 2% de espacio extra por nivel de %3 (ahora: +%4).", + "The average worth of this stock and how high it can peak depends on the building it is tied to, along with the level of your %1.": "El valor medio de esta acción y lo alto que puede subir dependiendo del edificio al que está asociada y del nivel de tu %1.", + "%1 the hide button to toggle all other stocks.": "%1 el botón para ocultar para cambiar el resto de acciones.", + "stock:": "acción:", + "for $%1 each": "por %1 $ cada una", + "last bought at
$%1 each": "Última compra a
$%1 cada uno.", + "+%1% overhead": "+%1 % de sobrecargo", + "value:": "valor:", + "valued at %1": "valorado en %1", + "you spend:": "gastas:", + "you earn:": "ganas;", + "You cannot buy and sell this stock in the same tick.": "No puedes comprar ni vender esta acción en el mismo tic.", + "This is your office.": "Esta es tu oficina.", + "It is fully upgraded. Its lavish interiors, spanning across innumerable floors, are host to many a decadent party, owing to your nigh-unfathomable wealth.": "Está completamente actualizada. Su lujoso interior, que se extiende a lo largo de innumerables pisos, alberga muchas fiestas suntuosas, debido a tu riqueza casi inconmensurable.", + "Level %1 offices": "Oficinas de nivel %1", + "Credit garage": "Taller de crédito", + "Tiny bank": "Pequeño banco", + "Loaning company": "Compañía de préstamos", + "Finance headquarters": "Sede financiera", + "International exchange": "Intercambio internacional", + "Palace of Greed": "Palacio de la codicia", + "Upgrading will cost you %1.": "Mejorar te costará %1.", + "Upgrading requires %1.": "Mejorar requiere %1.", + "Upgrading will grant you:": "Al mejorar obtendrás:", + "+1 loan slot": "+1 ranura de préstamo", + "+1 opportunity slot": "+1 ranura de oportunidad", + "+%1 warehouse space for all goods": "+%1 espacio(s) en el almacén para todos los productos", + "+%1% base warehouse space for all goods": "+%1% espacio(s) básico(s) en el almacén para todos los productos", + "Brokers:": "Brókers:", + "A nice broker to trade more cookies.": "Un buen bróker para vender más galletas.", + "Hire": "Contratar", + "Buying goods normally incurs overhead costs of %1% extra. Each broker you hire reduces that cost by %2%.": "Comprar productos suele tener un coste general de un %1 % extra. Cada bróker que contrates reducirá ese coste un %2 %.", + "Current overhead costs thanks to your brokers: +%1%": "Costes actuales gracias a tus brókers: +%1 %", + "Buying a broker costs %1 of CpS (that's $%2).": "Comprar un bróker tiene un coste de %1 g/s (eso es $%2).", + "Maximum number of brokers you can own: %1 (the highest amount of grandmas you've owned this run, divided by 10, plus your grandma level)": "Número máximo de brókers que puedes tener: %1 (la mayor cantidad de abuelas que has tenido en esta partida dividida entre 10 sumada al nivel de tu abuela)", + "Brokers are Wall Street-class grandmas versed in the ways of finance. Stockbroker grandmas work hard and play hard, and will fight telephone in hand to get your clients the best possible deals - with a sizeable profit margin for you, of course.": "Los brókeres son abuelas versadas en finanzas dignas de Wall Street. Las abuelas corredoras de bolsa trabajan duro y no se andan con chiquitas, lucharán teléfono en mano por conseguir a tus clientes las mejores ofertas, con un buen margen de beneficio para ti, claro.", + "Hiring a new broker will cost you %1.": "Contratar a un nuevo bróker te costará %1.", + "Take out %1": "Saca %1", + "Loan #%1": "Prestar #%1", + "a modest loan": "un modesto préstamo", + "Buy that vintage car you've always wanted. Just pay us back.": "Compra ese coche antiguo que siempre has querido. Pero devuélvenoslo.", + "a pawnshop loan": "un préstamo de casa de empeños", + "Bad credit? No problem. It's your money, and you need it now.": "¿Poco crédito? No hay problema. Es dinero es tuyo y lo necesitas ahora.", + "a retirement loan": "préstamo de jubilación", + "Finance your next house, boat, spouse, etc. You've earned it.": "Financia tu próxima casa, barco, matrimonio, etc. Te lo has ganado.", + "By taking this loan, you will get %1 CpS for the next %2.": "Al aceptar este préstamo, recibirás %1 g/s para el próximo %2.", + "However, you will get %1 CpS for the next %2 after that.": "Y recibirás %1 g/s para el siguiente %2 después.", + "You must also pay an immediate downpayment of %1 (%2% of your current bank).": "Debes pagar inmediatamente un depósito de %1 (un % 2% de tu banco actual).", + "Loan over": "Préstamo terminado", + "Your loan has expired, and you must now repay the interest.": "Tu préstamo ha vencido, ahora debes pagar los intereses.", + "Line style": "Estilo de línea", + "Color mode": "Modo de color", + "Toggle speed": "Velocidad de cambio", + "Click to refill your opportunity timer (and give a quick burst to your economy) for %1.": "Haz clic para recargar tu temporizador de oportunidades (y dale un empujón rápido a tu economía) durante %1.", + "Profits: %1. All prices are in $econds of your highest raw cookies per second.": "Beneficios: %1. Todos los precios están en segundos de tu tasa más alta de galletas crudas por segundo.", + "The stock market is more chaotic.": "El mercado de valores es más caótico.", + "[Upgrade name 0]Reinforced index finger": "Dedo índice reforzado", + "[Upgrade name 1]Carpal tunnel prevention cream": "Crema para la prevención del túnel carpiano", + "[Upgrade name 2]Ambidextrous": "Ambidextro", + "[Upgrade name 3]Thousand fingers": "Mil dedos", + "[Upgrade name 4]Million fingers": "Millones de dedos", + "[Upgrade name 5]Billion fingers": "Mil millones de dedos", + "[Upgrade name 6]Trillion fingers": "Billones de dedos", + "[Upgrade name 7]Forwards from grandma": "Frases de la abuela", + "[Upgrade name 8]Steel-plated rolling pins": "Rodillos de amasar chapados en acero", + "[Upgrade name 9]Lubricated dentures": "Dentaduras postizas lubricadas", + "[Upgrade name 10]Cheap hoes": "Azadones baratos", + "[Upgrade name 11]Fertilizer": "Fertilizante", + "[Upgrade name 12]Cookie trees": "Árboles de galletas", + "[Upgrade name 13]Sturdier conveyor belts": "Cintas transportadoras más resistentes", + "[Upgrade name 14]Child labor": "Trabajo infantil", + "[Upgrade name 15]Sweatshop": "Fábrica explotadora", + "[Upgrade name 16]Sugar gas": "Gas de azúcar", + "[Upgrade name 17]Megadrill": "Megataladro", + "[Upgrade name 18]Ultradrill": "Ultrataladro", + "[Upgrade name 19]Vanilla nebulae": "Nebulosa vainilla", + "[Upgrade name 20]Wormholes": "Agujeros de gusano", + "[Upgrade name 21]Frequent flyer": "Viajero frecuente", + "[Upgrade name 22]Antimony": "Antimonio", + "[Upgrade name 23]Essence of dough": "Esencia de masa", + "[Upgrade name 24]True chocolate": "Chocolate verdadero", + "[Upgrade name 25]Ancient tablet": "Tableta antigua", + "[Upgrade name 26]Insane oatling workers": "Trabajadores locos de avena", + "[Upgrade name 27]Soul bond": "Vínculo de alma", + "[Upgrade name 28]Flux capacitors": "Condensadores de flujo", + "[Upgrade name 29]Time paradox resolver": "Solucionador de la paradoja del tiempo", + "[Upgrade name 30]Quantum conundrum": "Enigma cuántico", + "[Upgrade name 31]Kitten helpers": "Ayudantes gatitos", + "[Upgrade name 32]Kitten workers": "Trabajadores gatitos", + "[Upgrade name 33]Plain cookies": "Galletas simples", + "[Upgrade name 34]Sugar cookies": "Galletas de azúcar", + "[Upgrade name 35]Oatmeal raisin cookies": "Galletas de avena y pasas", + "[Upgrade name 36]Peanut butter cookies": "Galletas de mantequilla de cacahuete", + "[Upgrade name 37]Coconut cookies": "Galletas de coco", + "[Upgrade name 38]White chocolate cookies": "Galletas de chocolate blanco", + "[Upgrade name 39]Macadamia nut cookies": "Galletas de nuez de macadamia", + "[Upgrade name 40]Double-chip cookies": "Galletas con pepitas dobles", + "[Upgrade name 41]White chocolate macadamia nut cookies": "Galletas de nuez de macadamia y chocolate blanco", + "[Upgrade name 42]All-chocolate cookies": "Galletas de chocolate", + "[Upgrade name 43]Quadrillion fingers": "Cuatrillones de dedos", + "[Upgrade name 44]Prune juice": "Zumo de ciruela", + "[Upgrade name 45]Genetically-modified cookies": "Galletas modificadas genéticamente", + "[Upgrade name 46]Radium reactors": "Reactores de radio", + "[Upgrade name 47]Ultimadrill": "Definitaladro", + "[Upgrade name 48]Warp drive": "Motor de curvatura", + "[Upgrade name 49]Ambrosia": "Ambrosía", + "[Upgrade name 50]Sanity dance": "Baile de cordura", + "[Upgrade name 51]Causality enforcer": "Agente de la ley", + "[Upgrade name 52]Lucky day": "Día de suerte", + "[Upgrade name 53]Serendipity": "Serenidad", + "[Upgrade name 54]Kitten engineers": "Ingenieros gatitos", + "[Upgrade name 55]Dark chocolate-coated cookies": "Galletas cubiertas de chocolate negro", + "[Upgrade name 56]White chocolate-coated cookies": "Galletas cubiertas de chocolate blanco", + "[Upgrade name 57]Farmer grandmas": "Abuelas campesinas", + "[Upgrade name 58]Miner grandmas": "Abuelas mineras", + "[Upgrade name 59]Worker grandmas": "Abuelas trabajadoras", + "[Upgrade name 60]Cosmic grandmas": "Abuelas cósmicas", + "[Upgrade name 61]Transmuted grandmas": "Abuelas transmutadas", + "[Upgrade name 62]Altered grandmas": "Abuelas alteradas", + "[Upgrade name 63]Grandmas' grandmas": "Abuelas de las abuelas", + "[Upgrade name 64]Bingo center/Research facility": "Bingo/Centro de investigación", + "[Upgrade name 65]Specialized chocolate chips": "Pepitas de chocolate especializadas", + "[Upgrade name 66]Designer cocoa beans": "Granos de cacao de diseño", + "[Upgrade name 67]Ritual rolling pins": "Rodillos de amasar rituales", + "[Upgrade name 68]Underworld ovens": "Hornos del inframundo", + "[Upgrade name 69]One mind": "Mente excepcional", + "[Upgrade name 70]Exotic nuts": "Nueces exóticas", + "[Upgrade name 71]Communal brainsweep": "Barrido de cerebro comunal", + "[Upgrade name 72]Arcane sugar": "Azúcar arcano", + "[Upgrade name 73]Elder Pact": "Acuerdo de ancianas", + "[Upgrade name 74]Elder Pledge": "Promesa a las ancianas", + "[Upgrade name 75]Plastic mouse": "Ratón de plástico", + "[Upgrade name 76]Iron mouse": "Ratón de hierro", + "[Upgrade name 77]Titanium mouse": "Ratón de titanio", + "[Upgrade name 78]Adamantium mouse": "Ratón de adamantio", + "[Upgrade name 79]Ultrascience": "Ultraciencia", + "[Upgrade name 80]Eclipse cookies": "Galletas de eclipse", + "[Upgrade name 81]Zebra cookies": "Galletas de cebra", + "[Upgrade name 82]Quintillion fingers": "Quintillones de dedos", + "[Upgrade name 83]Gold hoard": "Tesoro de oro", + "[Upgrade name 84]Elder Covenant": "Pacto de anciana", + "[Upgrade name 85]Revoke Elder Covenant": "Revocar el pacto de anciana", + "[Upgrade name 86]Get lucky": "Tener suerte", + "[Upgrade name 87]Sacrificial rolling pins": "Rodillos de amasar de sacrificio", + "[Upgrade name 88]Snickerdoodles": "Snickerdoodles", + "[Upgrade name 89]Stroopwafels": "Wafers de caramelo", + "[Upgrade name 90]Macaroons": "Macarrones", + "[Upgrade name 91]Neuromancy": "Neuromancia", + "[Upgrade name 92]Empire biscuits": "Galletas imperiales", + "[Upgrade name 93]British tea biscuits": "Galletas de té británicas", + "[Upgrade name 94]Chocolate british tea biscuits": "Galletas de té británicas de chocolate", + "[Upgrade name 95]Round british tea biscuits": "Galletas de té británicas redondas", + "[Upgrade name 96]Round chocolate british tea biscuits": "Galletas de té británicas de chocolate redondas", + "[Upgrade name 97]Round british tea biscuits with heart motif": "Galletas de té británicas redondas con un corazón", + "[Upgrade name 98]Round chocolate british tea biscuits with heart motif": "Galletas de té británicas redondas de chocolate con un corazón", + "[Upgrade name 99]Sugar bosons": "Bosones de azúcar", + "[Upgrade name 100]String theory": "Teoría de las cuerdas", + "[Upgrade name 101]Large macaron collider": "Colisionador de macarrones grande", + "[Upgrade name 102]Big bang bake": "Bollo big bang", + "[Upgrade name 103]Antigrandmas": "Antiabuelas", + "[Upgrade name 104]Madeleines": "Magdalenas", + "[Upgrade name 105]Palmiers": "Palmeras", + "[Upgrade name 106]Palets": "Paletas", + "[Upgrade name 107]Sablés": "Sablés", + "[Upgrade name 108]Kitten overseers": "Supervisores gatitos", + "[Upgrade name 109]Sextillion fingers": "Sextillones de dedos", + "[Upgrade name 110]Double-thick glasses": "Gafas de doble grosor", + "[Upgrade name 111]Gingerbread scarecrows": "Espantapájaros de pan de jengibre", + "[Upgrade name 112]Recombobulators": "Recombobuladores", + "[Upgrade name 113]H-bomb mining": "Minería de bombas H", + "[Upgrade name 114]Chocolate monoliths": "Monolitos de chocolate", + "[Upgrade name 115]Aqua crustulae": "Aqua crustulae", + "[Upgrade name 116]Brane transplant": "Trasplante de brana", + "[Upgrade name 117]Yestermorrow comparators": "Comparadores de ayermañana", + "[Upgrade name 118]Reverse cyclotrons": "Ciclotrones inversos", + "[Upgrade name 119]Unobtainium mouse": "Ratón de unobtainium", + "[Upgrade name 120]Caramoas": "Caramoas", + "[Upgrade name 121]Sagalongs": "Sagalongs", + "[Upgrade name 122]Shortfoils": "Shortfoils", + "[Upgrade name 123]Win mints": "Mentas de la suerte", + "[Upgrade name 124]Perfect idling": "Holgazanería perfecta", + "[Upgrade name 125]Fig gluttons": "Glotones de higos", + "[Upgrade name 126]Loreols": "Loreoles", + "[Upgrade name 127]Jaffa cakes": "Tortas de Jaffa", + "[Upgrade name 128]Grease's cups": "Copas de grasa", + "[Upgrade name 129]Heavenly chip secret": "Secreto de pepita celestial", + "[Upgrade name 130]Heavenly cookie stand": "Puesto de galletas celestial", + "[Upgrade name 131]Heavenly bakery": "Confitería celestial", + "[Upgrade name 132]Heavenly confectionery": "Pastelería celestial", + "[Upgrade name 133]Heavenly key": "Llave celestial", + "[Upgrade name 134]Skull cookies": "Galletas de calavera", + "[Upgrade name 135]Ghost cookies": "Galletas fantasma", + "[Upgrade name 136]Bat cookies": "Galletas de murciélago", + "[Upgrade name 137]Slime cookies": "Galletas de cieno", + "[Upgrade name 138]Pumpkin cookies": "Galletas de calabaza", + "[Upgrade name 139]Eyeball cookies": "Galletas de ojo", + "[Upgrade name 140]Spider cookies": "Galletas de araña", + "[Upgrade name 141]Persistent memory": "Memoria persistente", + "[Upgrade name 142]Wrinkler doormat": "Felpudo de devorador", + "[Upgrade name 143]Christmas tree biscuits": "Galletas de árbol de Navidad", + "[Upgrade name 144]Snowflake biscuits": "Galletas de copo de nieve", + "[Upgrade name 145]Snowman biscuits": "Galletas de muñeco de nieve", + "[Upgrade name 146]Holly biscuits": "Galletas de acebo", + "[Upgrade name 147]Candy cane biscuits": "Galletas de bastón de caramelo", + "[Upgrade name 148]Bell biscuits": "Galletas de campana", + "[Upgrade name 149]Present biscuits": "Galletas de regalo", + "[Upgrade name 150]Gingerbread men": "Hombrecillo de pan de jengibre", + "[Upgrade name 151]Gingerbread trees": "Árboles de pan de jengibre", + "[Upgrade name 152]A festive hat": "Sombrero festivo", + "[Upgrade name 153]Increased merriness": "Mayor alegría", + "[Upgrade name 154]Improved jolliness": "Mayor felicidad", + "[Upgrade name 155]A lump of coal": "Un trozo de carbón", + "[Upgrade name 156]An itchy sweater": "Un suéter que pica", + "[Upgrade name 157]Reindeer baking grounds": "Tierra para hornear de reno", + "[Upgrade name 158]Weighted sleighs": "Trineos pesados", + "[Upgrade name 159]Ho ho ho-flavored frosting": "Glaseado con sabor a ho, ho, ho", + "[Upgrade name 160]Season savings": "Ahorros de temporada", + "[Upgrade name 161]Toy workshop": "Taller de juguetes", + "[Upgrade name 162]Naughty list": "Lista traviesa", + "[Upgrade name 163]Santa's bottomless bag": "Bolsa sin fondo de Papá Noel", + "[Upgrade name 164]Santa's helpers": "Ayudantes de Papá Noel", + "[Upgrade name 165]Santa's legacy": "Legado de Papá Noel", + "[Upgrade name 166]Santa's milk and cookies": "Leche y galletas de Papá Noel", + "[Upgrade name 167]Reindeer season": "Temporada de renos", + "[Upgrade name 168]Santa's dominion": "Dominio de Papá Noel", + "[Upgrade name 169]Pure heart biscuits": "Galletas de corazón puro", + "[Upgrade name 170]Ardent heart biscuits": "Galletas de corazón ardiente", + "[Upgrade name 171]Sour heart biscuits": "Galletas de corazón amargo", + "[Upgrade name 172]Weeping heart biscuits": "Galletas de corazón llorón", + "[Upgrade name 173]Golden heart biscuits": "Galletas de corazón de oro", + "[Upgrade name 174]Eternal heart biscuits": "Galletas de corazón eterno", + "[Upgrade name 175]Gem polish": "Esmalte de gemas", + "[Upgrade name 176]9th color": "Noveno color", + "[Upgrade name 177]Chocolate light": "Luz de chocolate", + "[Upgrade name 178]Grainbow": "Arcograno", + "[Upgrade name 179]Pure cosmic light": "Luz cósmica pura", + "[Upgrade name 180]Rainbow grandmas": "Abuelas arcoíris", + "[Upgrade name 181]Season switcher": "Selector de estaciones", + "[Upgrade name 182]Festive biscuit": "Galleta festiva", + "[Upgrade name 183]Ghostly biscuit": "Galleta fantasmal", + "[Upgrade name 184]Lovesick biscuit": "Galleta enamorada", + "[Upgrade name 185]Fool's biscuit": "Galleta del idiota", + "[Upgrade name 186]Eternal seasons": "Estaciones eternas", + "[Upgrade name 187]Kitten managers": "Gerentes gatitos", + "[Upgrade name 188]Septillion fingers": "Sextillones de dedos", + "[Upgrade name 189]Octillion fingers": "Octillones de dedos", + "[Upgrade name 190]Eludium mouse": "Ratón de eludium", + "[Upgrade name 191]Wishalloy mouse": "Ratón de loqueseum", + "[Upgrade name 192]Aging agents": "Agentes de envejecimiento", + "[Upgrade name 193]Pulsar sprinklers": "Aspersores de púlsar", + "[Upgrade name 194]Deep-bake process": "Proceso de horneado profundo", + "[Upgrade name 195]Coreforge": "Forja nuclear", + "[Upgrade name 196]Generation ship": "Nave de generación", + "[Upgrade name 197]Origin crucible": "Crisol de origen", + "[Upgrade name 198]Deity-sized portals": "Portales del tamaño de una deidad", + "[Upgrade name 199]Far future enactment": "Promulgación del futuro lejano", + "[Upgrade name 200]Nanocosmics": "Nanocosmos", + "[Upgrade name 201]Glow-in-the-dark": "Brilla en la oscuridad", + "[Upgrade name 202]Rose macarons": "Macarrones de rosas", + "[Upgrade name 203]Lemon macarons": "Macarrones de limón", + "[Upgrade name 204]Chocolate macarons": "Macarrones de chocolate", + "[Upgrade name 205]Pistachio macarons": "Macarrones de pistacho", + "[Upgrade name 206]Hazelnut macarons": "Macarrones de avellana", + "[Upgrade name 207]Violet macarons": "Macarrones de violetas", + "[Upgrade name 208]Magic shenanigans": "Travesuras mágicas", + "[Upgrade name 209]Bunny biscuit": "Galleta de conejito", + "[Upgrade name 210]Chicken egg": "Huevo de gallina", + "[Upgrade name 211]Duck egg": "Huevo de pato", + "[Upgrade name 212]Turkey egg": "Huevo de pavo", + "[Upgrade name 213]Quail egg": "Huevo de codorniz", + "[Upgrade name 214]Robin egg": "Huevo de petirrojo", + "[Upgrade name 215]Ostrich egg": "Huevo de avestruz", + "[Upgrade name 216]Cassowary egg": "Huevo de casuario", + "[Upgrade name 217]Salmon roe": "Hueva de salmón", + "[Upgrade name 218]Frogspawn": "Huevo de rana", + "[Upgrade name 219]Shark egg": "Huevo de tiburón", + "[Upgrade name 220]Turtle egg": "Huevo de tortuga", + "[Upgrade name 221]Ant larva": "Larva de hormiga", + "[Upgrade name 222]Golden goose egg": "Huevo de ganso dorado", + "[Upgrade name 223]Faberge egg": "Huevo de Fabergé", + "[Upgrade name 224]Wrinklerspawn": "Huevo de devorador", + "[Upgrade name 225]Cookie egg": "Huevo de galleta", + "[Upgrade name 226]Omelette": "Tortilla", + "[Upgrade name 227]Chocolate egg": "Huevo de chocolate", + "[Upgrade name 228]Century egg": "Huevo centenario", + "[Upgrade name 229]\"egg\"": "\"huevo\"", + "[Upgrade name 230]Caramel macarons": "Macarrones de caramelo", + "[Upgrade name 231]Licorice macarons": "Macarrones de regaliz", + "[Upgrade name 232]Taller tellers": "Cajeros más altos", + "[Upgrade name 233]Scissor-resistant credit cards": "Tarjetas de crédito resistentes a las tijeras", + "[Upgrade name 234]Acid-proof vaults": "Cámaras a prueba de ácido", + "[Upgrade name 235]Chocolate coins": "Monedas de chocolate", + "[Upgrade name 236]Exponential interest rates": "Tasas de interés exponenciales", + "[Upgrade name 237]Financial zen": "Zen financiero", + "[Upgrade name 238]Golden idols": "Ídolos de oro", + "[Upgrade name 239]Sacrifices": "Sacrificios", + "[Upgrade name 240]Delicious blessing": "Bendición deliciosa", + "[Upgrade name 241]Sun festival": "Festival del sol", + "[Upgrade name 242]Enlarged pantheon": "Panteón ampliado", + "[Upgrade name 243]Great Baker in the sky": "Gran panadero en el cielo", + "[Upgrade name 244]Pointier hats": "Sombreros puntiagudos", + "[Upgrade name 245]Beardlier beards": "Barbas más barbudas", + "[Upgrade name 246]Ancient grimoires": "Grimorios antiguos", + "[Upgrade name 247]Kitchen curses": "Maldiciones de cocina", + "[Upgrade name 248]School of sorcery": "Escuela de hechicería", + "[Upgrade name 249]Dark formulas": "Fórmulas oscuras", + "[Upgrade name 250]Banker grandmas": "Abuelas banqueras", + "[Upgrade name 251]Priestess grandmas": "Abuelas sacerdotisas", + "[Upgrade name 252]Witch grandmas": "Abuelas brujas", + "[Upgrade name 253]Tin of british tea biscuits": "Caja de galletas de té británicas", + "[Upgrade name 254]Box of macarons": "Caja de macarrones", + "[Upgrade name 255]Box of brand biscuits": "Caja de galletas de marca", + "[Upgrade name 256]Pure black chocolate cookies": "Galletas de chocolate negro puro", + "[Upgrade name 257]Pure white chocolate cookies": "Galletas de chocolate blanco puro", + "[Upgrade name 258]Ladyfingers": "Lengua de gato", + "[Upgrade name 259]Tuiles": "Tuiles", + "[Upgrade name 260]Chocolate-stuffed biscuits": "Galletas rellenas de chocolate", + "[Upgrade name 261]Checker cookies": "Galletas ajedrez", + "[Upgrade name 262]Butter cookies": "Galletas danesas", + "[Upgrade name 263]Cream cookies": "Galletas de crema", + "[Upgrade name 264]Permanent upgrade slot I": "Espacio de mejora permanente I", + "[Upgrade name 265]Permanent upgrade slot II": "Espacio de mejora permanente II", + "[Upgrade name 266]Permanent upgrade slot III": "Espacio de mejora permanente III", + "[Upgrade name 267]Permanent upgrade slot IV": "Espacio de mejora permanente IV", + "[Upgrade name 268]Permanent upgrade slot V": "Espacio de mejora permanente V", + "[Upgrade name 269]Starspawn": "Aparición estelar", + "[Upgrade name 270]Starsnow": "Nieve estelar", + "[Upgrade name 271]Starterror": "Terror estelar", + "[Upgrade name 272]Starlove": "Amor estelar", + "[Upgrade name 273]Startrade": "Comercio estelar", + "[Upgrade name 274]Angels": "Ángeles", + "[Upgrade name 275]Archangels": "Arcángeles", + "[Upgrade name 276]Virtues": "Virtudes", + "[Upgrade name 277]Dominions": "Dominios", + "[Upgrade name 278]Cherubim": "Querubín", + "[Upgrade name 279]Seraphim": "Serafín", + "[Upgrade name 280]God": "Dios", + "[Upgrade name 281]Twin Gates of Transcendence": "Puertas gemelas de la trascendencia", + "[Upgrade name 282]Heavenly luck": "Suerte celestial", + "[Upgrade name 283]Lasting fortune": "Fortuna duradera", + "[Upgrade name 284]Decisive fate": "Destino decisivo", + "[Upgrade name 285]Divine discount": "Descuento divino", + "[Upgrade name 286]Divine sales": "Ofertas divinas", + "[Upgrade name 287]Divine bakeries": "Confiterías divinas", + "[Upgrade name 288]Starter kit": "Paquete de inicio", + "[Upgrade name 289]Starter kitchen": "Cocina para principiantes", + "[Upgrade name 290]Halo gloves": "Guantes de halo", + "[Upgrade name 291]Kitten angels": "Ángeles gatitos", + "[Upgrade name 292]Unholy bait": "Cebo impío", + "[Upgrade name 293]Sacrilegious corruption": "Corrupción sacrílega", + "[Upgrade name 294]Xtreme walkers": "Andador molón", + "[Upgrade name 295]Fudge fungus": "Hongo de caramelo", + "[Upgrade name 296]Planetsplitters": "Rompeplanetas", + "[Upgrade name 297]Cyborg workforce": "Trabajadores cíborg", + "[Upgrade name 298]Way of the wallet": "Camino de la billetera", + "[Upgrade name 299]Creation myth": "Mito de la creación", + "[Upgrade name 300]Cookiemancy": "Galletamancia", + "[Upgrade name 301]Dyson sphere": "Esfera de Dyson", + "[Upgrade name 302]Theory of atomic fluidity": "Teoría de la fluidez atómica", + "[Upgrade name 303]End of times back-up plan": "Plan B para el fin de los tiempos", + "[Upgrade name 304]Great loop hypothesis": "Gran hipótesis de bucle", + "[Upgrade name 305]The Pulse": "El pulso", + "[Upgrade name 306]Lux sanctorum": "Lux sanctorum", + "[Upgrade name 307]The Unbridling": "La liberación", + "[Upgrade name 308]Wheat triffids": "Trífidos de trigo", + "[Upgrade name 309]Canola oil wells": "Pozos de aceite de canola", + "[Upgrade name 310]78-hour days": "Días de 78 horas", + "[Upgrade name 311]The stuff rationale": "El fundamento de las cosas", + "[Upgrade name 312]Theocracy": "Teocracia", + "[Upgrade name 313]Rabbit trick": "Truco de conejo", + "[Upgrade name 314]The final frontier": "La última frontera", + "[Upgrade name 315]Beige goo": "Viscosidad beige", + "[Upgrade name 316]Maddening chants": "Cánticos enloquecedores", + "[Upgrade name 317]Cookietopian moments of maybe": "Momentos galletopianos del quizás", + "[Upgrade name 318]Some other super-tiny fundamental particle? Probably?": "¿Alguna otra partícula fundamental superdiminuta?  ¿Probablemente?", + "[Upgrade name 319]Reverse shadows": "Sombras inversas", + "[Upgrade name 320]Kitten accountants": "Contables gatitos", + "[Upgrade name 321]Kitten specialists": "Especialistas gatitos", + "[Upgrade name 322]Kitten experts": "Expertos gatitos", + "[Upgrade name 323]How to bake your dragon": "Cómo hornear tu dragón", + "[Upgrade name 324]A crumbly egg": "Un huevo desmenuzado", + "[Upgrade name 325]Chimera": "Quimera", + "[Upgrade name 326]Tin of butter cookies": "Caja de galletas danesas", + "[Upgrade name 327]Golden switch": "Interruptor dorado", + "[Upgrade name 328]Classic dairy selection": "Surtido de lácteos clásicos", + "[Upgrade name 329]Fanciful dairy selection": "Surtido de lácteos extravagante", + "[Upgrade name 330]Dragon cookie": "Galleta de dragón", + "[Upgrade name 331]Golden switch [off]": "Interruptor dorado [no]", + "[Upgrade name 332]Golden switch [on]": "Interruptor dorado [sí]", + "[Upgrade name 333]Milk selector": "Selector de leche", + "[Upgrade name 334]Milk chocolate butter biscuit": "Galleta danesa de chocolate con leche", + "[Upgrade name 335]Dark chocolate butter biscuit": "Galleta danesa de chocolate negro", + "[Upgrade name 336]White chocolate butter biscuit": "Galleta danesa de chocolate blanco", + "[Upgrade name 337]Ruby chocolate butter biscuit": "Galleta danesa de chocolate rosa", + "[Upgrade name 338]Gingersnaps": "Galletas de jengibre", + "[Upgrade name 339]Cinnamon cookies": "Galletas de canela", + "[Upgrade name 340]Vanity cookies": "Galletas de vanidad", + "[Upgrade name 341]Cigars": "Puros", + "[Upgrade name 342]Pinwheel cookies": "Galletas de molinillo", + "[Upgrade name 343]Fudge squares": "Cuadrados de caramelo", + "[Upgrade name 344]Digits": "Dígitos", + "[Upgrade name 345]Butter horseshoes": "Herraduras de mantequilla", + "[Upgrade name 346]Butter pucks": "Discos de mantequilla", + "[Upgrade name 347]Butter knots": "Nudos de mantequilla", + "[Upgrade name 348]Butter slabs": "Losas de mantequilla", + "[Upgrade name 349]Butter swirls": "Remolinos de mantequilla", + "[Upgrade name 350]Shortbread biscuits": "Galletas shortbread", + "[Upgrade name 351]Millionaires' shortbreads": "Shortbreads de caramelo", + "[Upgrade name 352]Caramel cookies": "Galletas de caramelo", + "[Upgrade name 353]Belphegor": "Belfegor", + "[Upgrade name 354]Mammon": "Mammón", + "[Upgrade name 355]Abaddon": "Abadón", + "[Upgrade name 356]Satan": "Satanás", + "[Upgrade name 357]Asmodeus": "Asmodeo", + "[Upgrade name 358]Beelzebub": "Belcebú", + "[Upgrade name 359]Lucifer": "Lucifer", + "[Upgrade name 360]Golden cookie alert sound": "Sonido de alerta de galleta dorada", + "[Upgrade name 361]Golden cookie sound selector": "Selector de sonido de galleta dorada", + "[Upgrade name 362]Basic wallpaper assortment": "Surtido de fondo de pantalla básico", + "[Upgrade name 363]Legacy": "Legado", + "[Upgrade name 364]Elder spice": "Especia de ancianas", + "[Upgrade name 365]Residual luck": "Suerte residual", + "[Upgrade name 366]Fantasteel mouse": "Ratón de fantacero", + "[Upgrade name 367]Nevercrack mouse": "Ratón irrompible", + "[Upgrade name 368]Five-finger discount": "Descuento de cinco dedos", + "[Upgrade name 369]Future almanacs": "Almanaques futuros", + "[Upgrade name 370]Rain prayer": "Rezo de lluvia", + "[Upgrade name 371]Seismic magic": "Magia sísmica", + "[Upgrade name 372]Asteroid mining": "Minería de asteroides", + "[Upgrade name 373]Quantum electronics": "Electrónica cuántica", + "[Upgrade name 374]Temporal overclocking": "Sobreaceleración temporal", + "[Upgrade name 375]Contracts from beyond": "Contratos del más allá", + "[Upgrade name 376]Printing presses": "Imprentas", + "[Upgrade name 377]Paganism": "Paganismo", + "[Upgrade name 378]God particle": "Partícula de Dios", + "[Upgrade name 379]Arcane knowledge": "Conocimiento arcano", + "[Upgrade name 380]Magical botany": "Botánica mágica", + "[Upgrade name 381]Fossil fuels": "Combustibles fósiles", + "[Upgrade name 382]Shipyards": "Astilleros", + "[Upgrade name 383]Primordial ores": "Minerales primordiales", + "[Upgrade name 384]Gold fund": "Fondo de oro", + "[Upgrade name 385]Infernal crops": "Cultivos infernales", + "[Upgrade name 386]Abysmal glimmer": "Destello abismal", + "[Upgrade name 387]Relativistic parsec-skipping": "Salto de parsec relativista", + "[Upgrade name 388]Primeval glow": "Resplandor primigenio", + "[Upgrade name 389]Extra physics funding": "Financiación adicional para física", + "[Upgrade name 390]Chemical proficiency": "Competencia química", + "[Upgrade name 391]Light magic": "Magia de luz", + "[Upgrade name 392]Mystical energies": "Energías místicas", + "[Upgrade name 393]Synergies Vol. I": "Sinergias vol. I", + "[Upgrade name 394]Synergies Vol. II": "Sinergias vol. II", + "[Upgrade name 395]Heavenly cookies": "Galletas celestiales", + "[Upgrade name 396]Wrinkly cookies": "Galletas arrugadas", + "[Upgrade name 397]Distilled essence of redoubled luck": "Esencia destilada de suerte redoblada", + "[Upgrade name 398]Occult obstruction": "Obstrucción oculta", + "[Upgrade name 399]Glucose-charged air": "Aire cargado de glucosa", + "[Upgrade name 400]Lavender chocolate butter biscuit": "Galleta danesa de chocolate y lavanda", + "[Upgrade name 401]Lombardia cookies": "Galletas de Lombardía", + "[Upgrade name 402]Bastenaken cookies": "Galletas bastenaken", + "[Upgrade name 403]Pecan sandies": "Galletas de pacana", + "[Upgrade name 404]Moravian spice cookies": "Galletas de especias de Moravia", + "[Upgrade name 405]Anzac biscuits": "Galletas de Anzac", + "[Upgrade name 406]Buttercakes": "Pasteles de mantequilla", + "[Upgrade name 407]Ice cream sandwiches": "Sándwiches de helado", + "[Upgrade name 408]Stevia Caelestis": "Stevia caelestis", + "[Upgrade name 409]Diabetica Daemonicus": "Diabetica daemonicus", + "[Upgrade name 410]Sucralosia Inutilis": "Sucralosia inutilis", + "[Upgrade name 411]Lucky digit": "Dígito de la suerte", + "[Upgrade name 412]Lucky number": "Número de la suerte", + "[Upgrade name 413]Lucky payout": "Paga de la suerte", + "[Upgrade name 414]Background selector": "Selector de fondo", + "[Upgrade name 415]Lucky grandmas": "Abuelas de la suerte", + "[Upgrade name 416]Your lucky cookie": "Tu galleta de la suerte", + "[Upgrade name 417]\"All Bets Are Off\" magic coin": "Moneda mágica “Las apuestas están cerradas”", + "[Upgrade name 418]Winning lottery ticket": "Billete de lotería ganador", + "[Upgrade name 419]Four-leaf clover field": "Campo de tréboles de cuatro hojas", + "[Upgrade name 420]A recipe book about books": "Un libro de recetas sobre libros", + "[Upgrade name 421]Leprechaun village": "Aldea de leprechauns", + "[Upgrade name 422]Improbability drive": "Impulso de improbabilidad", + "[Upgrade name 423]Antisuperstistronics": "Antisuperstistrónicos", + "[Upgrade name 424]Gemmed talismans": "Talismanes con gemas", + "[Upgrade name 425]Kitten consultants": "Consultores gatitos", + "[Upgrade name 426]Birthday cookie": "Galleta de cumpleaños", + "[Upgrade name 427]Armythril mouse": "Ratón de armitrilo", + "[Upgrade name 428]Reverse dementia": "Demencia inversa", + "[Upgrade name 429]Humane pesticides": "Pesticidas humanos", + "[Upgrade name 430]Mole people": "Gente topo", + "[Upgrade name 431]Machine learning": "Aprendizaje automático", + "[Upgrade name 432]Edible money": "Dinero comestible", + "[Upgrade name 433]Sick rap prayers": "Oraciones de rap", + "[Upgrade name 434]Deluxe tailored wands": "Varitas de lujo a medida", + "[Upgrade name 435]Autopilot": "Piloto automático", + "[Upgrade name 436]The advent of chemistry": "El advenimiento de la química", + "[Upgrade name 437]The real world": "El mundo real", + "[Upgrade name 438]Second seconds": "Segundos segundos", + "[Upgrade name 439]Quantum comb": "Peine cuántico", + "[Upgrade name 440]Crystal mirrors": "Espejos de cristal", + "[Upgrade name 441]Bunnypedes": "Conejipiés", + "[Upgrade name 442]Kitten assistants to the regional manager": "Asistentes gatitos del director regional", + "[Upgrade name 443]Charm quarks": "Quarks encantados", + "[Upgrade name 444]Pink biscuits": "Galletas rosas", + "[Upgrade name 445]Whole-grain cookies": "Galletas integrales", + "[Upgrade name 446]Candy cookies": "Galletas dulces", + "[Upgrade name 447]Big chip cookies": "Galletas con pepitas grandes", + "[Upgrade name 448]One chip cookies": "Galletas con una pepita", + "[Upgrade name 449]Sugar baking": "Horneado de azúcar", + "[Upgrade name 450]Sugar craving": "Antojo de azúcar", + "[Upgrade name 451]Sugar aging process": "Proceso de envejecimiento de azúcar", + "[Upgrade name 452]Sugar frenzy": "Frenesí de azúcar", + "[Upgrade name 453]Sprinkles cookies": "Galletas con virutas", + "[Upgrade name 454]Peanut butter blossoms": "Flores de mantequilla de cacahuete", + "[Upgrade name 455]No-bake cookies": "Galletas sin hornear", + "[Upgrade name 456]Florentines": "Galletas florentinas", + "[Upgrade name 457]Chocolate crinkles": "Crinkles de chocolate", + "[Upgrade name 458]Maple cookies": "Galletas de arce", + "[Upgrade name 459]Turbo-charged soil": "Suelo turbocargado", + "[Upgrade name 460]Technobsidian mouse": "Ratón de tecnobsidiana", + "[Upgrade name 461]Plasmarble mouse": "Ratón de plasmármol", + "[Upgrade name 462]Kitten marketeers": "Mercaderes gatitos", + "[Upgrade name 463]Festivity loops": "Bucles de festividad", + "[Upgrade name 464]Persian rice cookies": "Galletas de arroz persa", + "[Upgrade name 465]Norwegian cookies": "Galletas noruegas", + "[Upgrade name 466]Crispy rice cookies": "Galletas de arroz crujientes", + "[Upgrade name 467]Ube cookies": "Galletas ube", + "[Upgrade name 468]Butterscotch cookies": "Galletas de butterscotch", + "[Upgrade name 469]Speculaas": "Spéculoos", + "[Upgrade name 470]Elderwort biscuits": "Galletas de hierba de saúco", + "[Upgrade name 471]Bakeberry cookies": "Galletas de mora", + "[Upgrade name 472]Duketater cookies": "Galletas comeduques", + "[Upgrade name 473]Green yeast digestives": "Digestivas de levadura verde", + "[Upgrade name 474]Fern tea": "Té de helecho", + "[Upgrade name 475]Ichor syrup": "Sirope de icor", + "[Upgrade name 476]Wheat slims": "Galletas para adelgazar de trigo", + "[Upgrade name 477]Synthetic chocolate green honey butter biscuit": "Galleta danesa de miel verde y chocolate sintético", + "[Upgrade name 478]Royal raspberry chocolate butter biscuit": "Galleta danesa de chocolate y frambuesa real", + "[Upgrade name 479]Ultra-concentrated high-energy chocolate butter biscuit": "Galleta danesa de chocolate de alta energía ultraconcentrada", + "[Upgrade name 480]Timeproof hair dyes": "Tintes para el pelo permanentes", + "[Upgrade name 481]Barnstars": "Estrellas de granero", + "[Upgrade name 482]Mine canaries": "Canarios de mina", + "[Upgrade name 483]Brownie point system": "Sistema de elogios", + "[Upgrade name 484]Grand supercycles": "Grandes superciclos", + "[Upgrade name 485]Psalm-reading": "Lectura de salmos", + "[Upgrade name 486]Immobile spellcasting": "Lanzamiento de hechizos inmóvil", + "[Upgrade name 487]Restaurants at the end of the universe": "Restaurantes en el fin del universo", + "[Upgrade name 488]On second thought": "Pensándolo bien", + "[Upgrade name 489]Dimensional garbage gulper": "Tragabasura dimensional", + "[Upgrade name 490]Additional clock hands": "Manecillas de reloj adicionales", + "[Upgrade name 491]Baking Nobel prize": "Premio Nobel de repostería", + "[Upgrade name 492]Reverse theory of light": "Teoría inversa de la luz", + "[Upgrade name 493]Revised probabilistics": "Probabilística revisada", + "[Upgrade name 494]Kitten analysts": "Analistas gatitos", + "[Upgrade name 495]Eye of the wrinkler": "Ojo del devorador", + "[Upgrade name 496]Inspired checklist": "Lista de comprobación inspirada", + "[Upgrade name 497]Pure pitch-black chocolate butter biscuit": "Galleta danesa de chocolate negro 100% puro", + "[Upgrade name 498]Chocolate oatmeal cookies": "Galletas de avena con chocolate", + "[Upgrade name 499]Molasses cookies": "Galletas de melaza", + "[Upgrade name 500]Biscotti": "Biscotti", + "[Upgrade name 501]Waffle cookies": "Galletas de gofres", + "[Upgrade name 502]Almond cookies": "Galletas de almendra", + "[Upgrade name 503]Hazelnut cookies": "Galletas de avellana", + "[Upgrade name 504]Walnut cookies": "Galletas de nuez", + "[Upgrade name 505]Label printer": "Impresora de etiquetas", + "[Upgrade name 506]Good manners": "Buenos modales", + "[Upgrade name 507]Lindworms": "Lindworms", + "[Upgrade name 508]Bore again": "Aburrido de nuevo", + "[Upgrade name 509]\"Volunteer\" interns": "Pasantes “voluntarios”", + "[Upgrade name 510]Rules of acquisition": "Reglas de adquisición", + "[Upgrade name 511]War of the gods": "Guerra de los dioses", + "[Upgrade name 512]Electricity": "Electricidad", + "[Upgrade name 513]Universal alphabet": "Alfabeto universal", + "[Upgrade name 514]Public betterment": "Mejora pública", + "[Upgrade name 515]Embedded microportals": "Microportales integrados", + "[Upgrade name 516]Nostalgia": "Nostalgia", + "[Upgrade name 517]The definite molecule": "La molécula definida", + "[Upgrade name 518]Light capture measures": "Medidas de captura de luz", + "[Upgrade name 519]0-sided dice": "Dados de 0 caras", + "[Upgrade name 520]Heralds": "Heraldos", + "[Upgrade name 521]Metagrandmas": "Metabuelas", + "[Upgrade name 522]Metabakeries": "Metaconfiterías", + "[Upgrade name 523]Mandelbrown sugar": "Azúcar moreno", + "[Upgrade name 524]Fractoids": "Fractoides", + "[Upgrade name 525]Nested universe theory": "Teoría del universo anidado", + "[Upgrade name 526]Menger sponge cake": "Bizcocho de Menger", + "[Upgrade name 527]One particularly good-humored cow": "Una vaca particularmente de buen humor", + "[Upgrade name 528]Chocolate ouroboros": "Uróboros de chocolate", + "[Upgrade name 529]Nested": "Anidado", + "[Upgrade name 530]Space-filling fibers": "Fibras que llenan el espacio", + "[Upgrade name 531]Endless book of prose": "Libro de prosa sin fin", + "[Upgrade name 532]The set of all sets": "El conjunto de todos los conjuntos", + "[Upgrade name 533]Recursive mirrors": "Espejos recursivos", + "[Upgrade name 534]Mice clicking mice": "Ratones haciendo clic en ratones", + "[Upgrade name 535]Custard creams": "Galletas de natillas", + "[Upgrade name 536]Bourbon biscuits": "Galletas de bourbon", + "[Upgrade name 537]Keepsakes": "Recuerdos", + "[Upgrade name 538]Mini-cookies": "Minigalletas", + "[Upgrade name 539]Sugar crystal cookies": "Galletas de cristal de azúcar", + "[Upgrade name 540]Box of maybe cookies": "Caja de tal vez galletas", + "[Upgrade name 541]Box of not cookies": "Caja de no galletas", + "[Upgrade name 542]Box of pastries": "Caja de pasteles", + "[Upgrade name 543]Profiteroles": "Profiteroles", + "[Upgrade name 544]Jelly donut": "Dónut de mermelada", + "[Upgrade name 545]Glazed donut": "Dónut glaseado", + "[Upgrade name 546]Chocolate cake": "Pastel de chocolate", + "[Upgrade name 547]Strawberry cake": "Pastel de fresa", + "[Upgrade name 548]Apple pie": "Tarta de manzana", + "[Upgrade name 549]Lemon meringue pie": "Tarta de merengue de limón", + "[Upgrade name 550]Butter croissant": "Croissant de mantequilla", + "[Upgrade name 551]Cookie dough": "Masa para galletas", + "[Upgrade name 552]Burnt cookie": "Galleta quemada", + "[Upgrade name 553]A chocolate chip cookie but with the chips picked off for some reason": "Una galleta con pepitas de chocolate, pero con las pepitas arrancadas por alguna razón", + "[Upgrade name 554]Flavor text cookie": "Galleta adornada con texto", + "[Upgrade name 555]High-definition cookie": "Galleta de alta definición", + "[Upgrade name 556]Toast": "Tostada", + "[Upgrade name 557]Peanut butter & jelly": "Mantequilla de cacahuete y mermelada", + "[Upgrade name 558]Wookies": "Wookies", + "[Upgrade name 559]Cheeseburger": "Hamburguesa de queso", + "[Upgrade name 560]One lone chocolate chip": "Pepita de chocolate solitaria", + "[Upgrade name 561]Genius accounting": "Genio de la contabilidad", + "[Upgrade name 562]Shimmering veil": "Velo brillante", + "[Upgrade name 563]Shimmering veil [off]": "Velo brillante [no]", + "[Upgrade name 564]Shimmering veil [on]": "Velo brillante [sí]", + "[Upgrade name 565]Whoopie pies": "Pasteles Whoopie", + "[Upgrade name 566]Caramel wafer biscuits": "Galletas de oblea de caramelo", + "[Upgrade name 567]Chocolate chip mocha cookies": "Galletas de moca con pepitas de chocolate", + "[Upgrade name 568]Earl Grey cookies": "Galletas Earl Grey", + "[Upgrade name 569]Corn syrup cookies": "Galletas de sirope de maíz", + "[Upgrade name 570]Icebox cookies": "Galletas heladas", + "[Upgrade name 571]Graham crackers": "Crackers Graham", + "[Upgrade name 572]Hardtack": "Hardtack", + "[Upgrade name 573]Cornflake cookies": "Galletas de copos de maíz", + "[Upgrade name 574]Tofu cookies": "Galletas de tofu", + "[Upgrade name 575]Gluten-free cookies": "Galletas sin gluten", + "[Upgrade name 576]Russian bread cookies": "Galletas de pan ruso", + "[Upgrade name 577]Lebkuchen": "Lebkuchen", + "[Upgrade name 578]Aachener Printen": "Aachener Printen", + "[Upgrade name 579]Canistrelli": "Canistrelli", + "[Upgrade name 580]Nice biscuits": "Galletas Nice", + "[Upgrade name 581]French pure butter cookies": "Galletas de mantequilla pura francesa", + "[Upgrade name 582]Petit beurre": "Petit beurre", + "[Upgrade name 583]Nanaimo bars": "Barras de Nanaimo", + "[Upgrade name 584]Berger cookies": "Galletas Berger", + "[Upgrade name 585]Chinsuko": "Chinsuko", + "[Upgrade name 586]Panda koala biscuits": "Galletas Panda koala", + "[Upgrade name 587]Putri salju": "Putri salju", + "[Upgrade name 588]Milk cookies": "Galletas de leche", + "[Upgrade name 589]Cookie crumbs": "Migas de galleta", + "[Upgrade name 590]Chocolate chip cookie": "Galleta con pepitas de chocolate", + "[Upgrade name 591]Cosmic beginner's luck": "Suerte del principiante cósmica", + "[Upgrade name 592]Reinforced membrane": "Membrana reforzada", + "[Upgrade name 593]Binary grandmas": "Abuelas binarias", + "[Upgrade name 594]The JavaScript console for dummies": "La consola de JavaScript para tontos", + "[Upgrade name 595]64bit arrays": "Matrices de 64 bits", + "[Upgrade name 596]Stack overflow": "Desbordamiento de pila", + "[Upgrade name 597]Enterprise compiler": "Compilador empresarial", + "[Upgrade name 598]Syntactic sugar": "Azúcar sintáctico", + "[Upgrade name 599]A nice cup of coffee": "Una buena taza de café", + "[Upgrade name 600]Just-in-time baking": "Horneado justo a tiempo", + "[Upgrade name 601]cookies++": "galletas++", + "[Upgrade name 602]Software updates": "Actualizaciones de software", + "[Upgrade name 603]Game.Loop": "Juego.Bucle", + "[Upgrade name 604]eval()": "eval()", + "[Upgrade name 605]Script grannies": "Abuelas de secuencia", + "[Upgrade name 606]Tombola computing": "Computación en tómbola", + "[Upgrade name 607]Kruidnoten": "Kruidnoten", + "[Upgrade name 608]Marie biscuits": "Galletas María", + "[Upgrade name 609]Meringue cookies": "Galletas de merengue", + "[Upgrade name 610]Pizza": "Pizza", + "[Upgrade name 611]Crackers": "Crackers", + "[Upgrade name 612]Havabreaks": "Tómateundescanso", + "[Upgrade name 613]Kitten executives": "Ejecutivos gatito", + "[Upgrade name 614]Chai tea cookies": "Galletas de té chai", + "[Upgrade name 615]Yogurt cookies": "Galletas de yogur", + "[Upgrade name 616]Thumbprint cookies": "Galletas con mermelada", + "[Upgrade name 617]Pizzelle": "Pizzella", + "[Upgrade name 618]Zilla wafers": "Obleas de Zilla", + "[Upgrade name 619]Dim Dams": "Dim Dams", + "[Upgrade name 620]Candy": "Caramelo", + "[Upgrade name 621]Fortune #001": "Fortuna n.º 001", + "[Upgrade name 622]Fortune #002": "Fortuna n.º 002", + "[Upgrade name 623]Fortune #003": "Fortuna n.º 003", + "[Upgrade name 624]Fortune #004": "Fortuna n.º 004", + "[Upgrade name 625]Fortune #005": "Fortuna n.º 005", + "[Upgrade name 626]Fortune #006": "Fortuna n.º 006", + "[Upgrade name 627]Fortune #007": "Fortuna n.º 007", + "[Upgrade name 628]Fortune #008": "Fortuna n.º 008", + "[Upgrade name 629]Fortune #009": "Fortuna n.º 009", + "[Upgrade name 630]Fortune #010": "Fortuna n.º 010", + "[Upgrade name 631]Fortune #011": "Fortuna n.º 011", + "[Upgrade name 632]Fortune #012": "Fortuna n.º 012", + "[Upgrade name 633]Fortune #013": "Fortuna n.º 013", + "[Upgrade name 634]Fortune #014": "Fortuna n.º 014", + "[Upgrade name 635]Fortune #015": "Fortuna n.º 015", + "[Upgrade name 636]Fortune #016": "Fortuna n.º 016", + "[Upgrade name 637]Fortune #017": "Fortuna n.º 017", + "[Upgrade name 638]Fortune #100": "Fortuna n.º 100", + "[Upgrade name 639]Fortune #101": "Fortuna n.º 101", + "[Upgrade name 640]Fortune #102": "Fortuna n.º 102", + "[Upgrade name 641]Fortune #103": "Fortuna n.º 103", + "[Upgrade name 642]Fortune #104": "Fortuna n.º 104", + "[Upgrade name 643]Fortune cookies": "Galletas de la fortuna", + "[Upgrade name 644]A really good guide book": "Una guía muy buena", + "[Upgrade name 645]Prism heart biscuits": "Galletas de corazón", + "[Upgrade name 646]Kitten wages": "Salarios de gatitos", + "[Upgrade name 647]Pet the dragon": "Acaricia al dragón", + "[Upgrade name 648]Dragon scale": "Escama de dragón", + "[Upgrade name 649]Dragon claw": "Garra de dragón", + "[Upgrade name 650]Dragon fang": "Colmillo de dragón", + "[Upgrade name 651]Dragon teddy bear": "Oso de peluche dragón", + "[Upgrade name 652]Granola cookies": "Galletas de granola", + "[Upgrade name 653]Ricotta cookies": "Galletas de ricotta", + "[Upgrade name 654]Roze koeken": "Roze koeken", + "[Upgrade name 655]Peanut butter cup cookies": "Galletas bombón de mantequilla de cacahuete", + "[Upgrade name 656]Sesame cookies": "Galletas de sésamo", + "[Upgrade name 657]Taiyaki": "Taiyaki", + "[Upgrade name 658]Vanillekipferl": "Vanillekipferl", + "[Upgrade name 659]Cosmic chocolate butter biscuit": "Galleta danesa de chocolate cósmica", + "[Upgrade name 660]Nonillion fingers": "Nonillones de dedos", + "[Upgrade name 661]Miraculite mouse": "Ratón de miraculita", + "[Upgrade name 662]Generation degeneration": "Degeneración de generación", + "[Upgrade name 663]Global seed vault": "Cámara de semillas global", + "[Upgrade name 664]Air mining": "Minería de aire", + "[Upgrade name 665]Behavioral reframing": "Reencuadre conductual", + "[Upgrade name 666]Altruistic loop": "Bucle altruista", + "[Upgrade name 667]A novel idea": "Una idea novedosa", + "[Upgrade name 668]Spelling bees": "Abejas de ortografía", + "[Upgrade name 669]Toroid universe": "Universo toroide", + "[Upgrade name 670]Hermetic reconciliation": "Reconciliación hermética", + "[Upgrade name 671]His advent": "Su advenimiento", + "[Upgrade name 672]Split seconds": "Milésimas de segundos", + "[Upgrade name 673]Flavor itself": "El sabor propiamente dicho", + "[Upgrade name 674]Light speed limit": "Límite de velocidad de la luz", + "[Upgrade name 675]A touch of determinism": "Un toque de determinismo", + "[Upgrade name 676]This upgrade": "Esta mejora", + "[Upgrade name 677]Your biggest fans": "Tus mayores fans", + "[Upgrade name 678]Battenberg biscuits": "Galletas Battenberg", + "[Upgrade name 679]Rosette cookies": "Rosettes", + "[Upgrade name 680]Gangmakers": "Gangmakers", + "[Upgrade name 681]Welsh cookies": "Galletas galesas", + "[Upgrade name 682]Raspberry cheesecake cookies": "Galletas de tarta de queso y frambuesa", + "[Upgrade name 683]Alternate grandmas": "Abuelas alternativas", + "[Upgrade name 684]Manifest destiny": "Destino manifiesto", + "[Upgrade name 685]The multiverse in a nutshell": "El multiverso en pocas palabras", + "[Upgrade name 686]All-conversion": "Conversión total", + "[Upgrade name 687]Multiverse agents": "Agentes del multiverso", + "[Upgrade name 688]Escape plan": "Plan de huida", + "[Upgrade name 689]Game design": "Diseño del juego", + "[Upgrade name 690]Sandbox universes": "Universos sandbox", + "[Upgrade name 691]Multiverse wars": "Guerras multiverso", + "[Upgrade name 692]Mobile ports": "Puertos móviles", + "[Upgrade name 693]Encapsulated realities": "Realidades encapsuladas", + "[Upgrade name 694]Extrinsic clicking": "Clics extrínsecos", + "[Upgrade name 695]Universal idling": "Holgazanería universal", + "[Upgrade name 696]Perforated mille-feuille cosmos": "Cosmos milhojas perforado", + "[Upgrade name 697]Infraverses and superverses": "Infraversos y superversos", + "[Upgrade name 698]Fortune #018": "Fortuna n.º 018", + "[Upgrade name 699]Butter biscuit (with butter)": "Galleta danesa (con mantequilla extra)", + "[Upgrade name 700]Visits": "Visitas", + "[Upgrade name 701]Reverse-veganism": "Veganismo inverso", + "[Upgrade name 702]Caramel alloys": "Aleaciones de caramelo", + "[Upgrade name 703]The infinity engine": "El motor infinito", + "[Upgrade name 704]Diminishing tax returns": "Disminución de la declaración fiscal", + "[Upgrade name 705]Apparitions": "Apariciones", + "[Upgrade name 706]Wizard basements": "Sótanos de magos", + "[Upgrade name 707]Prime directive": "Primera directriz", + "[Upgrade name 708]Chromatic cycling": "Ciclo cromático", + "[Upgrade name 709]Domestic rifts": "Portales domésticos", + "[Upgrade name 710]Patience abolished": "Paciencia abolida", + "[Upgrade name 711]Delicious pull": "Atracción deliciosa", + "[Upgrade name 712]Occam's laser": "Láser de Occam", + "[Upgrade name 713]On a streak": "En racha", + "[Upgrade name 714]A box": "Una caja", + "[Upgrade name 715]Hacker shades": "Gafas de sol de hacker", + "[Upgrade name 716]Break the fifth wall": "Romper la quinta pared", + "[Upgrade name 717]Cat ladies": "Señoras gato", + "[Upgrade name 718]Milkhelp® lactose intolerance relief tablets": "Pastillas para la intolerancia a la lactosa Milkhelp®", + "[Upgrade name 719]Aura gloves": "Guantes de aura", + "[Upgrade name 720]Luminous gloves": "Guantes luminosos", + "[Upgrade name 721]Bokkenpootjes": "Bokkenpootjes", + "[Upgrade name 722]Fat rascals": "Fat rascals", + "[Upgrade name 723]Ischler cookies": "Galletas Ischler", + "[Upgrade name 724]Matcha cookies": "Galletas de té matcha", + "[Upgrade name 725]Earl Grey macarons": "Macarrones de Earl Grey", + "[Upgrade name 726]Pokey": "Pokey", + "[Upgrade name 727]Cashew cookies": "Galletas de anacardo", + "[Upgrade name 728]Milk chocolate cookies": "Galletas de chocolate con leche", + "[Upgrade name 729]Brainy grandmas": "Abuelas inteligentes", + "[Upgrade name 730]Principled neural shackles": "Restricciones neurales basadas en principios", + "[Upgrade name 731]Obey": "Obedecer", + "[Upgrade name 732]A sprinkle of irrationality": "Una pizca de irracionalidad", + "[Upgrade name 733]Front and back hemispheres": "Hemisferios frontal y posterior", + "[Upgrade name 734]Neural networking": "Redes neuronales", + "[Upgrade name 735]Cosmic brainstorms": "Lluvias de ideas cósmicas", + "[Upgrade name 736]Megatherapy": "Megaterapia", + "[Upgrade name 737]Synaptic lubricant": "Lubricante sináptico", + "[Upgrade name 738]Psychokinesis": "Psicoquinesis", + "[Upgrade name 739]Spines": "Espinas dorsales", + "[Upgrade name 740]Neuraforming": "Neuroformación", + "[Upgrade name 741]Epistemological trickery": "Trucos epistemológicos", + "[Upgrade name 742]Every possible idea": "Cada idea posible", + "[Upgrade name 743]Kitchen cabinets": "Gabinetes de cocina", + "[Upgrade name 744]Cookie mulch": "Mantillo de galletas", + "[Upgrade name 745]Delicious mineralogy": "Deliciosa mineralogía", + "[Upgrade name 746]N-dimensional assembly lines": "Líneas de montaje N-dimensionales", + "[Upgrade name 747]Cookie Points": "Puntos de galletas", + "[Upgrade name 748]Negatheism": "Negacionismo", + "[Upgrade name 749]Magical realism": "Realismo mágico", + "[Upgrade name 750]Cosmic foreground radiation": "Radiación cósmica de primer plano", + "[Upgrade name 751]Arcanized glassware": "Cristalería arcanizada", + "[Upgrade name 752]Portal guns": "Pistolas de portal", + "[Upgrade name 753]Timeproof upholstery": "Tapicería atemporal", + "[Upgrade name 754]Employee minification": "Minificación de empleados", + "[Upgrade name 755]Hyperblack paint": "Pintura hipernegra", + "[Upgrade name 756]Silver lining maximization": "Maximización del lado positivo", + "[Upgrade name 757]Multiscale profiling": "Perfil multiescala", + "[Upgrade name 758]PHP containment vats": "Cámaras de contención de PHP", + "[Upgrade name 759]Opposite universe": "Universo opuesto", + "[Upgrade name 760]The land of dreams": "La tierra de los sueños", + "[Upgrade name 761]Thoughts & prayers": "Pensamientos y oraciones", + "[Upgrade name 762]Fertile minds": "Mentes fértiles", + "[Upgrade name 763]Fortune #019": "Fortuna n.º 019", + "[Upgrade name 764]Decillion fingers": "Dedos de decillón", + "[Upgrade name 765]Aetherice mouse": "Ratón etéreo", + "[Upgrade name 766]Kitten admins": "Administradores de gatitos", + "[Upgrade name 767]Everybutter biscuit": "Galleta de mantequilla", + "[Upgrade name 768]Unshackled cursors": "Cursores desatados", + "[Upgrade name 769]Unshackled grandmas": "Abuelas desatadas", + "[Upgrade name 770]Unshackled farms": "Granjas desatadas", + "[Upgrade name 771]Unshackled mines": "Minas desatadas", + "[Upgrade name 772]Unshackled factories": "Fábricas desatadas", + "[Upgrade name 773]Unshackled banks": "Bancos desatados", + "[Upgrade name 774]Unshackled temples": "Templos desatados", + "[Upgrade name 775]Unshackled wizard towers": "Torres de magos desatadas", + "[Upgrade name 776]Unshackled shipments": "Envíos desatados", + "[Upgrade name 777]Unshackled alchemy labs": "Laboratorios de alquimia desatados", + "[Upgrade name 778]Unshackled portals": "Portales desatados", + "[Upgrade name 779]Unshackled time machines": "Máquinas del tiempo desatadas", + "[Upgrade name 780]Unshackled antimatter condensers": "Condensadores de antimateria desatados", + "[Upgrade name 781]Unshackled prisms": "Prismas desatados", + "[Upgrade name 782]Unshackled chancemakers": "Oportunistas desatados", + "[Upgrade name 783]Unshackled fractal engines": "Motores fractales desatados", + "[Upgrade name 784]Unshackled javascript consoles": "Consolas javascript desatadas", + "[Upgrade name 785]Unshackled idleverses": "Inactivos desatados", + "[Upgrade name 786]Unshackled cortex bakers": "Panaderos cerebrales desatados", + "[Upgrade name 787]Unshackled flavor": "Sabor desatado", + "[Upgrade name 788]Unshackled berrylium": "Berilio desatado", + "[Upgrade name 789]Unshackled blueberrylium": "Berilio azul desatado", + "[Upgrade name 790]Unshackled chalcedhoney": "Calcedonia desatada", + "[Upgrade name 791]Unshackled buttergold": "Maíz desatado", + "[Upgrade name 792]Unshackled sugarmuck": "Estiércol de azúcar desatado", + "[Upgrade name 793]Unshackled jetmint": "Menta desatada", + "[Upgrade name 794]Unshackled cherrysilver": "Plata de cerezo desatada", + "[Upgrade name 795]Unshackled hazelrald": "Avellana desatada", + "[Upgrade name 796]Unshackled mooncandy": "Caramelo de luna desatado", + "[Upgrade name 797]Unshackled astrofudge": "Caramelo astral desatado", + "[Upgrade name 798]Unshackled alabascream": "Alabacrema desatada", + "[Upgrade name 799]Unshackled iridyum": "Iridio desatado", + "[Upgrade name 800]Unshackled glucosmium": "Glucosmio desatado", + "[Upgrade name 801]Delicate touch": "Toque delicado", + "[Upgrade name 802]Steadfast murmur": "Soplo firme", + "[Upgrade name 803]Glittering edge": "Borde brillante", + "[Upgrade name 804]Distinguished wallpaper assortment": "Distinguido surtido de papeles pintados", + "[Upgrade name 805]Sound test": "Prueba de sonido", + "[Upgrade name 806]Jukebox": "Máquina de discos", + "[Upgrade name 807]Dalgona cookies": "Galletas Dalgona", + "[Upgrade name 808]Spicy cookies": "Galletas picantes", + "[Upgrade name 809]Smile cookies": "Galletas de sonrisa", + "[Upgrade name 810]Kolachy cookies": "Galletas Kolachy", + "[Upgrade name 811]Gomma cookies": "Galletas de goma", + "[Upgrade name 812]Vegan cookies": "Galletas veganas", + "[Upgrade name 813]Coyotas": "Coyotas", + "[Upgrade name 814]Frosted sugar cookies": "Galletas de azúcar heladas", + "[Upgrade name 815]Marshmallow sandwich cookies": "Galletas sándwich de nube", + "[Upgrade name 816]Web cookies": "Galletas web", + "[Upgrade name 817]Steamed cookies": "Galletas al vapor", + "[Upgrade name 818]Deep-fried cookie dough": "Masa de galleta frita", + "[Achievement name 0]Wake and bake": "Galleta mañanera", + "[Achievement name 1]Making some dough": "Haciendo un poco de masa", + "[Achievement name 2]So baked right now": "Muy horneado", + "[Achievement name 3]Fledgling bakery": "Confitería incipiente", + "[Achievement name 4]Affluent bakery": "Confitería adinerada", + "[Achievement name 5]World-famous bakery": "Confitería de fama mundial", + "[Achievement name 6]Cosmic bakery": "Confitería cósmica", + "[Achievement name 7]Galactic bakery": "Confitería galáctica", + "[Achievement name 8]Universal bakery": "Confitería universal", + "[Achievement name 9]Timeless bakery": "Confitería atemporal", + "[Achievement name 10]Infinite bakery": "Confitería infinita", + "[Achievement name 11]Immortal bakery": "Confitería inmortal", + "[Achievement name 12]Don't stop me now": "No me pares ahora", + "[Achievement name 13]You can stop now": "Ahora me puedes parar", + "[Achievement name 14]Cookies all the way down": "Galletas hasta el final", + "[Achievement name 15]Overdose": "Sobredosis", + "[Achievement name 16]Casual baking": "Horneado informal", + "[Achievement name 17]Hardcore baking": "Horneado extremo", + "[Achievement name 18]Steady tasty stream": "Flujo constante y delicioso", + "[Achievement name 19]Cookie monster": "Monstruo de las galletas", + "[Achievement name 20]Mass producer": "Productor masivo", + "[Achievement name 21]Cookie vortex": "Vórtice de galletas", + "[Achievement name 22]Cookie pulsar": "Púlsar de galletas", + "[Achievement name 23]Cookie quasar": "Cuásar de galletas", + "[Achievement name 24]Oh hey, you're still here": "Eh, oye, todavía estás aquí", + "[Achievement name 25]Let's never bake again": "Nunca volvamos a hornear", + "[Achievement name 26]Sacrifice": "Sacrificio", + "[Achievement name 27]Oblivion": "Olvido", + "[Achievement name 28]From scratch": "Desde cero", + "[Achievement name 29]Neverclick": "Clic jamás", + "[Achievement name 30]Clicktastic": "Clictástico", + "[Achievement name 31]Clickathlon": "Clicatlón", + "[Achievement name 32]Clickolympics": "Clicolimpiadas", + "[Achievement name 33]Clickorama": "Clicorama", + "[Achievement name 34]Click": "Clic", + "[Achievement name 35]Double-click": "Doble clic", + "[Achievement name 36]Mouse wheel": "Rueda de ratón", + "[Achievement name 37]Of Mice and Men": "De ratones y hombres", + "[Achievement name 38]The Digital": "El digital", + "[Achievement name 39]Just wrong": "Esto no está bien", + "[Achievement name 40]Grandma's cookies": "Galletas de la abuela", + "[Achievement name 41]Sloppy kisses": "Besos babosos", + "[Achievement name 42]Retirement home": "Casa de retiro", + "[Achievement name 43]Bought the farm": "Mi primera granja", + "[Achievement name 44]Reap what you sow": "Cosecha lo que siembras", + "[Achievement name 45]Farm ill": "Adicto a las granjas", + "[Achievement name 46]Production chain": "Cadena de producción", + "[Achievement name 47]Industrial revolution": "Revolución industrial", + "[Achievement name 48]Global warming": "Calentamiento global", + "[Achievement name 49]You know the drill": "Soy minero", + "[Achievement name 50]Excavation site": "Sitio de excavación", + "[Achievement name 51]Hollow the planet": "Vacía el planeta", + "[Achievement name 52]Expedition": "Expedición", + "[Achievement name 53]Galactic highway": "Carretera galáctica", + "[Achievement name 54]Far far away": "Muy, muy lejos", + "[Achievement name 55]Transmutation": "Transmutación", + "[Achievement name 56]Transmogrification": "Transfiguración", + "[Achievement name 57]Gold member": "Miembro dorado", + "[Achievement name 58]A whole new world": "Un mundo nuevo", + "[Achievement name 59]Now you're thinking": "Ahora estás pensando", + "[Achievement name 60]Dimensional shift": "Cambio dimensional", + "[Achievement name 61]Time warp": "Curvatura del tiempo", + "[Achievement name 62]Alternate timeline": "Línea de tiempo alternativa", + "[Achievement name 63]Rewriting history": "Reescribiendo la historia", + "[Achievement name 64]One with everything": "Unión completa", + "[Achievement name 65]Mathematician": "Matemático", + "[Achievement name 66]Base 10": "Base 10", + "[Achievement name 67]Golden cookie": "Galleta dorada", + "[Achievement name 68]Lucky cookie": "Galleta de la suerte", + "[Achievement name 69]A stroke of luck": "Un golpe de suerte", + "[Achievement name 70]Cheated cookies taste awful": "Las galletas haciendo trampas saben horribles", + "[Achievement name 71]Uncanny clicker": "Clicker asombroso", + "[Achievement name 72]Builder": "Constructor", + "[Achievement name 73]Architect": "Arquitecto", + "[Achievement name 74]Enhancer": "Potenciador", + "[Achievement name 75]Augmenter": "Aumentador", + "[Achievement name 76]Cookie-dunker": "Mojador de galletas", + "[Achievement name 77]Fortune": "Fortuna", + "[Achievement name 78]True Neverclick": "Clic jamás verdadero", + "[Achievement name 79]Elder nap": "Siesta de ancianas", + "[Achievement name 80]Elder slumber": "Sueño de ancianas", + "[Achievement name 81]Elder": "Anciana", + "[Achievement name 82]Elder calm": "Calma anciana", + "[Achievement name 83]Engineer": "Ingeniero", + "[Achievement name 84]Leprechaun": "Leprechaun", + "[Achievement name 85]Black cat's paw": "Pata de gato negro", + "[Achievement name 86]Nihilism": "Nihilismo", + "[Achievement name 87]Antibatter": "Antimaseria", + "[Achievement name 88]Quirky quarks": "Quarks cucos", + "[Achievement name 89]It does matter!": "¡Es una materia importante!", + "[Achievement name 90]Upgrader": "Mejorador", + "[Achievement name 91]Centennial": "Centenario", + "[Achievement name 92]Hardcore": "Extremo", + "[Achievement name 93]Speed baking I": "Horneado rápido I", + "[Achievement name 94]Speed baking II": "Horneado rápido II", + "[Achievement name 95]Speed baking III": "Horneado rápido III", + "[Achievement name 96]Getting even with the oven": "No me calientes, horno", + "[Achievement name 97]Now this is pod-smashing": "Así se aplastan cápsulas", + "[Achievement name 98]Chirped out": "Derrotado por la campana", + "[Achievement name 99]Follow the white rabbit": "Sigue al conejo blanco", + "[Achievement name 100]Clickasmic": "Clicásmico", + "[Achievement name 101]Friend of the ancients": "Amigo de los antiguos", + "[Achievement name 102]Ruler of the ancients": "Gobernante de los antiguos", + "[Achievement name 103]Wholesome": "Saludable", + "[Achievement name 104]Just plain lucky": "Simplemente suerte", + "[Achievement name 105]Itchscratcher": "Rascador", + "[Achievement name 106]Wrinklesquisher": "Aplastadevoradores", + "[Achievement name 107]Moistburster": "Reventador", + "[Achievement name 108]Spooky cookies": "Galletas espeluznantes", + "[Achievement name 109]Coming to town": "Llega esta noche", + "[Achievement name 110]All hail Santa": "Hola, Papá Noel", + "[Achievement name 111]Let it snow": "Blanca Navidad", + "[Achievement name 112]Oh deer": "Renicidio", + "[Achievement name 113]Sleigh of hand": "Trineicidio", + "[Achievement name 114]Reindeer sleigher": "Asesino de renos", + "[Achievement name 115]Perfected agriculture": "Agricultura perfeccionada", + "[Achievement name 116]Ultimate automation": "Automatización máxima", + "[Achievement name 117]Can you dig it": "Al fondo del asunto", + "[Achievement name 118]Type II civilization": "Civilización tipo II", + "[Achievement name 119]Gild wars": "Guerras de gremios", + "[Achievement name 120]Brain-split": "Cerebro dividido", + "[Achievement name 121]Time duke": "Duque del tiempo", + "[Achievement name 122]Molecular maestro": "Maestro molecular", + "[Achievement name 123]Lone photon": "Fotón solitario", + "[Achievement name 124]Dazzling glimmer": "Brillo deslumbrante", + "[Achievement name 125]Blinding flash": "Destello cegador", + "[Achievement name 126]Unending glow": "Resplandor sin fin", + "[Achievement name 127]Lord of Constructs": "Señor de las construcciones", + "[Achievement name 128]Lord of Progress": "Señor del progreso", + "[Achievement name 129]Bicentennial": "Bicentenario", + "[Achievement name 130]Lovely cookies": "Galletas preciosas", + "[Achievement name 131]Centennial and a half": "Centenario y medio", + "[Achievement name 132]Tiny cookie": "Galleta diminuta", + "[Achievement name 133]You win a cookie": "Has ganado una galleta", + "[Achievement name 134]Click delegator": "Delegador de clics", + "[Achievement name 135]Gushing grannies": "Abuelas efusivas", + "[Achievement name 136]I hate manure": "Odio el estiércol", + "[Achievement name 137]Never dig down": "Nunca caves", + "[Achievement name 138]The incredible machine": "La máquina increíble", + "[Achievement name 139]And beyond": "Y más allá", + "[Achievement name 140]Magnum Opus": "Obra maestra", + "[Achievement name 141]With strange eons": "Con extraños eones", + "[Achievement name 142]Spacetime jigamaroo": "Trotamundos del espacio-tiempo", + "[Achievement name 143]Supermassive": "Supermasivo", + "[Achievement name 144]Praise the sun": "Alaba al sol", + "[Achievement name 145]Clickageddon": "Clicagedón", + "[Achievement name 146]Clicknarok": "Clicnarok", + "[Achievement name 147]Extreme polydactyly": "Polidactilia extrema", + "[Achievement name 148]Dr. T": "Dr. T", + "[Achievement name 149]The old never bothered me anyway": "Las abuelas nunca me molestaron", + "[Achievement name 150]Homegrown": "Cosecha propia", + "[Achievement name 151]Technocracy": "Tecnocracia", + "[Achievement name 152]The center of the Earth": "El centro de la Tierra", + "[Achievement name 153]We come in peace": "Venimos en son de paz", + "[Achievement name 154]The secrets of the universe": "Los secretos del universo", + "[Achievement name 155]Realm of the Mad God": "Reino del dios loco", + "[Achievement name 156]Forever and ever": "Por los siglos de los siglos", + "[Achievement name 157]Walk the planck": "Camina por la tabla", + "[Achievement name 158]Rise and shine": "Levántate y brilla", + "[Achievement name 159]God complex": "Complejo de Dios", + "[Achievement name 160]Third-party": "Tercera parte", + "[Achievement name 161]Dematerialize": "Desmaterialización", + "[Achievement name 162]Nil zero zilch": "Nada absoluta", + "[Achievement name 163]Transcendence": "Trascendencia", + "[Achievement name 164]Obliterate": "Obliterar", + "[Achievement name 165]Negative void": "Vacío negativo", + "[Achievement name 166]The hunt is on": "La búsqueda ha comenzado", + "[Achievement name 167]Egging on": "Más de media docena", + "[Achievement name 168]Mass Easteria": "Pascua colectiva", + "[Achievement name 169]Hide & seek champion": "Campeón del escondite", + "[Achievement name 170]What's in a name": "Un nombre cualquiera", + "[Achievement name 171]Pretty penny": "Dinerito", + "[Achievement name 172]Fit the bill": "Cheque en blanco", + "[Achievement name 173]A loan in the dark": "Un gran préstamo", + "[Achievement name 174]Need for greed": "Avaricioso", + "[Achievement name 175]It's the economy, stupid": "Es la economía, estúpido", + "[Achievement name 176]Your time to shrine": "Hora para la oración", + "[Achievement name 177]Shady sect": "Secta sospechosa", + "[Achievement name 178]New-age cult": "Culto de la nueva era", + "[Achievement name 179]Organized religion": "Religión organizada", + "[Achievement name 180]Fanaticism": "Fanatismo", + "[Achievement name 181]Bewitched": "Embrujado", + "[Achievement name 182]The sorcerer's apprentice": "Aprendiz de brujo", + "[Achievement name 183]Charms and enchantments": "Encantos y encantamientos", + "[Achievement name 184]Curses and maledictions": "Hechizos y maldiciones", + "[Achievement name 185]Magic kingdom": "Reino mágico", + "[Achievement name 186]Vested interest": "Interés adquirido", + "[Achievement name 187]New world order": "Nuevo orden mundial", + "[Achievement name 188]Hocus pocus": "Hocus pocus", + "[Achievement name 189]Finger clickin' good": "Rey de los clics", + "[Achievement name 190]Panic at the bingo": "Pánico en el bingo", + "[Achievement name 191]Rake in the dough": "Montado en la masa", + "[Achievement name 192]Quarry on": "De piedra", + "[Achievement name 193]Yes I love technology": "Sí, me encanta la tecnología", + "[Achievement name 194]Paid in full": "Deuda saldada", + "[Achievement name 195]Church of Cookiology": "Iglesia de la Galletología", + "[Achievement name 196]Too many rabbits, not enough hats": "Demasiados conejos, no hay suficientes sombreros", + "[Achievement name 197]The most precious cargo": "La carga más preciada", + "[Achievement name 198]The Aureate": "El aureado", + "[Achievement name 199]Ever more hideous": "Cada vez más espantoso", + "[Achievement name 200]Be kind, rewind": "Sé amable, rebobina", + "[Achievement name 201]Infinitesimal": "Infinitesimal", + "[Achievement name 202]A still more glorious dawn": "Un amanecer aún más glorioso", + "[Achievement name 203]Rebirth": "Renacimiento", + "[Achievement name 204]Here you go": "Aquí tienes", + "[Achievement name 205]Resurrection": "Resurrección", + "[Achievement name 206]Reincarnation": "Reencarnación", + "[Achievement name 207]Endless cycle": "Ciclo sin fin", + "[Achievement name 208]The agemaster": "Maestra de edades", + "[Achievement name 209]To oldly go": "A la vieja usanza", + "[Achievement name 210]Gardener extraordinaire": "Jardinero extraordinario", + "[Achievement name 211]Tectonic ambassador": "Embajador tectónico", + "[Achievement name 212]Rise of the machines": "Rebelión de las máquinas", + "[Achievement name 213]Acquire currency": "Adquisición de moneda", + "[Achievement name 214]Zealotry": "Fanatismo", + "[Achievement name 215]The wizarding world": "El mundo de los magos", + "[Achievement name 216]Parsec-masher": "Machacador de parsec", + "[Achievement name 217]The work of a lifetime": "El trabajo de toda una vida", + "[Achievement name 218]A place lost in time": "Un lugar perdido en el tiempo", + "[Achievement name 219]Heat death": "Muerte por calor", + "[Achievement name 220]Microcosm": "Microcosmos", + "[Achievement name 221]Bright future": "Futuro brillante", + "[Achievement name 222]Here be dragon": "Hágase el dragón", + "[Achievement name 223]How?": "¿Cómo?", + "[Achievement name 224]The land of milk and cookies": "La tierra de la leche y las galletas", + "[Achievement name 225]He who controls the cookies controls the universe": "El que controla las galletas controla el universo", + "[Achievement name 226]Tonight on Hoarders": "El acaparador", + "[Achievement name 227]Are you gonna eat all that?": "¿Te vas a comer todo eso?", + "[Achievement name 228]We're gonna need a bigger bakery": "Vamos a necesitar una confitería más grande", + "[Achievement name 229]In the mouth of madness": "En la boca de la locura", + "[Achievement name 230]Brought to you by the letter
": "Hoy toca esta letra
", + "[Achievement name 231]A world filled with cookies": "Un mundo lleno de galletas", + "[Achievement name 232]When this baby hits 36 quadrillion cookies per hour": "Cuando esta preciosidad alcanza los 36 cuatrillones de galletas por hora", + "[Achievement name 233]Fast and delicious": "Rápido y delicioso", + "[Achievement name 234]Cookiehertz : a really, really tasty hertz": "Galletahercio: un hercio realmente delicioso", + "[Achievement name 235]Woops, you solved world hunger": "Guau, has resuelto el hambre en el mundo", + "[Achievement name 236]Turbopuns": "Turbochistes", + "[Achievement name 237]Faster menner": "Más deprisa, más deprisa", + "[Achievement name 238]And yet you're still hungry": "Y todavía tienes hambre", + "[Achievement name 239]The Abakening": "El galletadespertar", + "[Achievement name 240]There's really no hard limit to how long these achievement names can be and to be quite honest I'm rather curious to see how far we can go.
Adolphus W. Green (1844–1917) started as the Principal of the Groton School in 1864. By 1865, he became second assistant librarian at the New York Mercantile Library; from 1867 to 1869, he was promoted to full librarian. From 1869 to 1873, he worked for Evarts, Southmayd & Choate, a law firm co-founded by William M. Evarts, Charles Ferdinand Southmayd and Joseph Hodges Choate. He was admitted to the New York State Bar Association in 1873.
Anyway, how's your day been?": "En realidad, no hay un límite estricto para lo largos que pueden ser estos nombres de logros y, para ser sincero, tengo bastante curiosidad por ver hasta dónde podemos llegar.
Adolphus W. Green (1844-1917) comenzó siendo director de la Escuela Groton en 1864. En 1865, se convirtió en el segundo ayudante de bibliotecario de la Biblioteca Mercantil de Nueva York; de 1867 a 1869, fue ascendido a bibliotecario titular. De 1869 a 1873, trabajó para Evarts, Southmayd & Choate, un bufete de abogados cofundado por William M. Evarts, Charles Ferdinand Southmayd y Joseph Hodges Choate. Fue admitido en el Colegio de Abogados del Estado de Nueva York en 1873.
De todos modos, ¿qué tal tu día?", + "[Achievement name 241]Fast": "Rápido", + "[Achievement name 242]Bicentennial and a half": "Bicentenario y medio", + "[Achievement name 243]Tabloid addiction": "Adicción a la prensa sensacionalista", + "[Achievement name 244]Clickastrophe": "Clicatástrofe", + "[Achievement name 245]Clickataclysm": "Clicataclismo", + "[Achievement name 246]Thumbs, phalanges, metacarpals": "Pulgares, falanges, metacarpianos", + "[Achievement name 247]Polymath": "Erudito", + "[Achievement name 248]The elder scrolls": "Los documentos antiguos", + "[Achievement name 249]To crumbs, you say?": "¿Migajas, dices?", + "[Achievement name 250]Seedy business": "La semilla del bien", + "[Achievement name 251]Freak fracking": "Fracking frenético", + "[Achievement name 252]Modern times": "Tiempos modernos", + "[Achievement name 253]The nerve of war": "La tensión de la guerra", + "[Achievement name 254]Wololo": "Wololo", + "[Achievement name 255]And now for my next trick, I'll need a volunteer from the audience": "Y ahora, para mi próximo truco, necesitaré un voluntario del público.", + "[Achievement name 256]It's not delivery": "No es el repartidor", + "[Achievement name 257]Gold, Jerry! Gold!": "¡Oro, Jerry! ¡Oro!", + "[Achievement name 258]Forbidden zone": "Zona prohibida", + "[Achievement name 259]cookie clicker forever and forever a hundred years cookie clicker, all day long forever, forever a hundred times, over and over cookie clicker adventures dot com": "cookie clicker para siempre cien años de cookie clicker, todo el día para siempre, para siempre cien veces, una y otra vez, aventuras cookie clicker punto com", + "[Achievement name 260]Scientists baffled everywhere": "Científicos desconcertados por todas partes", + "[Achievement name 261]Harmony of the spheres": "Armonía de las esferas", + "[Achievement name 262]Last Chance to See": "Última oportunidad de verlo", + "[Achievement name 263]Early bird": "Madrugador", + "[Achievement name 264]Fading luck": "Se acabó la suerte", + "[Achievement name 265]Eldeer": "Reno anciano", + "[Achievement name 266]Dude, sweet": "Genial, tío", + "[Achievement name 267]Sugar rush": "Subidón de azúcar", + "[Achievement name 268]Year's worth of cavities": "Caries por un año", + "[Achievement name 269]Hand-picked": "Seleccionado cuidadosamente", + "[Achievement name 270]Sugar sugar": "Azúcar azúcar", + "[Achievement name 271]All-natural cane sugar": "Azúcar de caña natural", + "[Achievement name 272]Sweetmeats": "Dulce carnosidad", + "[Achievement name 273]Tricentennial": "Tricentenario", + "[Achievement name 274]Knead for speed": "Amasador turbo", + "[Achievement name 275]Well the cookies start coming and they don't stop coming": "Bueno, las galletas no dejan de llegar", + "[Achievement name 276]I don't know if you've noticed but all these icons are very slightly off-center": "No sé si te habrás dado cuenta, pero todos estos iconos están ligeramente descentrados", + "[Achievement name 277]The proof of the cookie is in the baking": "La prueba de una buena galleta está en la cocción", + "[Achievement name 278]If it's worth doing, it's worth overdoing": "Si vale la pena hacerlo, vale la pena exagerarlo", + "[Achievement name 279]The dreams in which I'm baking are the best I've ever had": "Los sueños en los que estoy horneando son los mejores que he tenido", + "[Achievement name 280]Set for life": "Para toda la vida", + "[Achievement name 281]You and the beanstalk": "Tú y cien mil hectáreas", + "[Achievement name 282]Romancing the stone": "Enamorado de la piedra", + "[Achievement name 283]Ex machina": "Ex machina", + "[Achievement name 284]And I need it now": "Y lo necesito ahora", + "[Achievement name 285]Pray on the weak": "Reza por los débiles", + "[Achievement name 286]It's a kind of magic": "Es como magia", + "[Achievement name 287]Make it so": "Que así sea", + "[Achievement name 288]All that glitters is gold": "Todo lo que reluce es oro", + "[Achievement name 289]Here he comes": "Ahí viene", + "[Achievement name 290]Way back then": "Por aquel entonces", + "[Achievement name 291]Exotic matter": "Materia exótica", + "[Achievement name 292]At the end of the tunnel": "Al final del túnel", + "[Achievement name 293]Click (starring Adam Sandler)": "Click (protagonizada por Adam Sandler)", + "[Achievement name 294]Frantiquities": "Frenetigüedades", + "[Achievement name 295]Overgrowth": "Crecimiento excesivo", + "[Achievement name 296]Sedimentalism": "Sedimentalismo", + "[Achievement name 297]Labor of love": "Obra de amor", + "[Achievement name 298]Reverse funnel system": "Sistema de embudo inverso", + "[Achievement name 299]Thus spoke you": "Así hablaste", + "[Achievement name 300]Manafest destiny": "Destino manifiesto", + "[Achievement name 301]Neither snow nor rain nor heat nor gloom of night": "Ni nieve ni lluvia ni calor ni penumbra de la noche", + "[Achievement name 302]I've got the Midas touch": "Soy como Midas", + "[Achievement name 303]Which eternal lie": "Qué eterna mentira", + "[Achievement name 304]Déjà vu": "Déjà vu", + "[Achievement name 305]Powers of Ten": "Potencias de diez", + "[Achievement name 306]Now the dark days are gone": "Se acabaron los días oscuros", + "[Achievement name 307]Freaky jazz hands": "Manos de jazz frenéticas", + "[Achievement name 308]Methuselah": "Matusalén", + "[Achievement name 309]Huge tracts of land": "Grandes extensiones de tierra", + "[Achievement name 310]D-d-d-d-deeper": "Más pro-pro-pro-profundo", + "[Achievement name 311]Patently genius": "Genio patente", + "[Achievement name 312]A capital idea": "Una idea capital", + "[Achievement name 313]It belongs in a bakery": "Es de una confitería", + "[Achievement name 314]Motormouth": "Charlatán", + "[Achievement name 315]Been there done that": "A mí me vas a contar", + "[Achievement name 316]Phlogisticated substances": "Sustancias flogísticas", + "[Achievement name 317]Bizarro world": "Mundo extraño", + "[Achievement name 318]The long now": "El largo ahora", + "[Achievement name 319]Chubby hadrons": "Hadrones regordetes", + "[Achievement name 320]Palettable": "Paleta de colores", + "[Achievement name 321]Bibbidi-bobbidi-boo": "Bibbidi-bobbidi-boo", + "[Achievement name 322]I'm the wiz": "Soy el mago", + "[Achievement name 323]A wizard is you": "Tú ser mago", + "[Achievement name 324]Four-leaf cookie": "Galleta de cuatro hojas", + "[Achievement name 325]Lucked out": "Suertudo", + "[Achievement name 326]What are the odds": "Una probabilidad entre mil", + "[Achievement name 327]Grandma needs a new pair of shoes": "La abuela necesita zapatos nuevos", + "[Achievement name 328]Million to one shot, doc": "Había una probabilidad entre un millón", + "[Achievement name 329]As luck would have it": "Cosa del destino", + "[Achievement name 330]Ever in your favor": "Siempre a tu favor", + "[Achievement name 331]Be a lady": "Sé una dama", + "[Achievement name 332]Dicey business": "El dado de la suerte", + "[Achievement name 333]Fingers crossed": "Crucemos los dedos", + "[Achievement name 334]Just a statistic": "Solo una estadística", + "[Achievement name 335]Murphy's wild guess": "La ley de Murphy", + "[Achievement name 336]Let's leaf it at that": "Dejémoslo así", + "[Achievement name 337]The ultimate clickdown": "El clic definitivo", + "[Achievement name 338]Aged well": "Se conserva bien", + "[Achievement name 339]101st birthday": "101 cumpleaños", + "[Achievement name 340]But wait 'til you get older": "Pero espera a que seas mayor", + "[Achievement name 341]Harvest moon": "Luna de cosecha", + "[Achievement name 342]Mine?": "¿Más minas?", + "[Achievement name 343]In full gear": "A todo gas", + "[Achievement name 344]Treacle tart economics": "Economía de la tarta de melaza", + "[Achievement name 345]Holy cookies, grandma!": "¡Por todas las galletas, abuela!", + "[Achievement name 346]The Prestige": "El prestigio", + "[Achievement name 347]That's just peanuts to space": "Es solo una minucia para el espacio", + "[Achievement name 348]Worth its weight in lead": "Vale su peso en plomo", + "[Achievement name 349]What happens in the vortex stays in the vortex": "Lo que pasa en el vórtice se queda en el vórtice", + "[Achievement name 350]Invited to yesterday's party": "Invitado a la fiesta de ayer", + "[Achievement name 351]Downsizing": "Reducción", + "[Achievement name 352]My eyes": "Mis ojos", + "[Achievement name 353]Maybe a chance in hell, actually": "Tal vez una oportunidad en el infierno, más bien", + "[Achievement name 354]Make like a tree": "Como un árbol", + "[Achievement name 355]Cave story": "La cueva del tesoro", + "[Achievement name 356]In-cog-neato": "Otra vuelta de tuerca", + "[Achievement name 357]Save your breath because that's all you've got left": "Ahorra tu aliento porque es lo único que te queda", + "[Achievement name 358]Vengeful and almighty": "Vengativo y todopoderoso", + "[Achievement name 359]Spell it out for you": "Hechizado", + "[Achievement name 360]Space space space space space": "Espacio espacio espacio espacio espacio espacio", + "[Achievement name 361]Don't get used to yourself, you're gonna have to change": "No te acostumbres, vas a tener que cambiar", + "[Achievement name 362]Objects in the mirror dimension are closer than they appear": "Los objetos en el espejo están más cerca de lo que parecen", + "[Achievement name 363]Groundhog day": "El día de la marmota", + "[Achievement name 364]A matter of perspective": "Una cuestión de perspectiva", + "[Achievement name 365]Optical illusion": "Ilusión óptica", + "[Achievement name 366]Jackpot": "Bote", + "[Achievement name 367]So much to do so much to see": "Hay tanto que hacer, tanto que ver", + "[Achievement name 368]Running with scissors": "Corriendo como loco", + "[Achievement name 369]Rarefied air": "Aire enrarecido", + "[Achievement name 370]Push it to the limit": "Hasta el límite", + "[Achievement name 371]Green cookies sleep furiously": "Las galletas verdes duermen furiosamente", + "[Achievement name 372]Panic! at Nabisco": "¡Pánico! en Nabisco", + "[Achievement name 373]Bursting at the seams": "Hasta los topes", + "[Achievement name 374]Just about full": "Casi lleno", + "[Achievement name 375]Hungry for more": "Hambriento de más", + "[Achievement name 376]All the other kids with the pumped up clicks": "Todos los otros niños con sus clics", + "[Achievement name 377]One...more...click...": "Un... clic... más...", + "[Achievement name 378]Botany enthusiast": "Entusiasta de la botánica", + "[Achievement name 379]Green, aching thumb": "Pulgar verde y dolorido", + "[Achievement name 380]In the garden of Eden (baby)": "En el jardín del Edén (bebé)", + "[Achievement name 381]Keeper of the conservatory": "Cuidador del invernadero", + "[Achievement name 382]Seedless to nay": "Sin semillas", + "[Achievement name 383]You get nothing": "No te dan nada", + "[Achievement name 384]Humble rebeginnings": "Reinicio humilde", + "[Achievement name 385]The end of the world": "El fin del mundo", + "[Achievement name 386]Oh, you're back": "Oh, has vuelto", + "[Achievement name 387]Lazarus": "Lázaro", + "[Achievement name 388]Leisurely pace": "Ritmo pausado", + "[Achievement name 389]Hypersonic": "Hipersónico", + "[Achievement name 390]Feed me, Orteil": "Dame de comer, Orteil", + "[Achievement name 391]And then what?": "¿Y luego qué?", + "[Achievement name 392]Tricentennial and a half": "Tricentenario y medio", + "[Achievement name 393]Quadricentennial": "Cuatricentenario", + "[Achievement name 394]Quadricentennial and a half": "Cuatricentenario y medio", + "[Achievement name 395]Quincentennial": "Quincentenario", + "[Achievement name 396]Maillard reaction": "Reacción de Maillard", + "[Achievement name 397]When the cookies ascend just right": "Cuando las galletas ascienden bien", + "[Achievement name 398]With her finger and her thumb": "Con su dedo y su pulgar", + "[Achievement name 399]Defense of the ancients": "Defensa de los ancestros", + "[Achievement name 400]Sharpest tool in the shed": "La herramienta más afilada del cobertizo", + "[Achievement name 401]Hey now, you're a rock": "Me dejas de piedra", + "[Achievement name 402]Break the mold": "Rompe el molde", + "[Achievement name 403]Get the show on, get paid": "Lluvia de dinero", + "[Achievement name 404]My world's on fire, how about yours": "Mi mundo está ardiendo, ¿y el tuyo?", + "[Achievement name 405]The meteor men beg to differ": "Los hombres meteoro disienten", + "[Achievement name 406]Only shooting stars": "Solo estrellas fugaces", + "[Achievement name 407]We could all use a little change": "Nos vendría bien un pequeño cambio", + "[Achievement name 408]Your brain gets smart but your head gets dumb": "Tu cerebro se vuelve inteligente, pero tu cabeza se vuelve tonta", + "[Achievement name 409]The years start coming": "Los años empiezan a caer", + "[Achievement name 410]What a concept": "Qué concepto", + "[Achievement name 411]You'll never shine if you don't glow": "Nunca relucirás si no brillas", + "[Achievement name 412]You'll never know if you don't go": "Nunca lo sabrás si no vas", + "[Achievement name 413]Self-contained": "Autoabastecimiento", + "[Achievement name 414]Threw you for a loop": "Caíste en un bucle", + "[Achievement name 415]The sum of its parts": "La suma de sus partes", + "[Achievement name 416]Bears repeating": "Repetición de osos", + "[Achievement name 417]More of the same": "Más de lo mismo", + "[Achievement name 418]Last recurse": "El último recurso", + "[Achievement name 419]Out of one, many": "Uno de tantos", + "[Achievement name 420]An example of recursion": "Un ejemplo de recursividad", + "[Achievement name 421]For more information on this achievement, please refer to its title": "Para obtener más información sobre este logro, consulta su título", + "[Achievement name 422]I'm so meta, even this achievement": "Soy tan meta, incluso en este logro", + "[Achievement name 423]Never get bored": "Nunca te aburras", + "[Achievement name 424]The needs of the many": "Las necesidades de muchos", + "[Achievement name 425]Eating its own": "Comiendo lo suyo", + "[Achievement name 426]We must go deeper": "Debemos ir más profundo", + "[Achievement name 427]Sierpinski rhomboids": "Romboides de Sierpinski", + "[Achievement name 428]Gotta go fast": "Tengo que ir rápido", + "[Achievement name 429]I think it's safe to say you've got it made": "Creo que es seguro decir que lo has logrado", + "[Achievement name 430]Renaissance baker": "Panadero renacentista", + "[Achievement name 431]Veteran": "Veterano", + "[Achievement name 432]Thick-skinned": "Insensible", + "[Achievement name 433]F12": "F12", + "[Achievement name 434]Variable success": "Éxito variable", + "[Achievement name 435]No comments": "Sin comentarios", + "[Achievement name 436]Up to code": "Hasta el código", + "[Achievement name 437]Works on my machine": "Funciona en mi máquina", + "[Achievement name 438]Technical debt": "Deuda técnica", + "[Achievement name 439]Mind your language": "Cuida tu lenguaje", + "[Achievement name 440]Inconsolable": "Inconsolable", + "[Achievement name 441]Closure": "Cierre", + "[Achievement name 442]Dude what if we're all living in a simulation like what if we're all just code on a computer somewhere": "Tío, ¿y si todos viviéramos en una simulación, como si solo fuéramos código en un ordenador en algún lugar?", + "[Achievement name 443]Taking the back streets": "Por callejones", + "[Achievement name 444]Inherited prototype": "Prototipo heredado", + "[Achievement name 445]A model of document object": "Un modelo de objeto de documento", + "[Achievement name 446]First-class citizen": "Ciudadano de primera", + "[Achievement name 447]Alexandria": "Alejandría", + "[Achievement name 448]Bake him away, toys": "Horneadlo, chicos", + "[Achievement name 449]You're #1 so why try harder": "Eres el número 1, ¿por qué esforzarte más?", + "[Achievement name 450]Haven't even begun to peak": "Ni siquiera ha comenzado a alcanzar su apogeo", + "[Achievement name 451]A sometimes food": "Una comida a veces", + "[Achievement name 452]Not enough of a good thing": "Algo bueno insuficiente", + "[Achievement name 453]Horn of plenty": "El cuerno de la abundancia", + "[Achievement name 454]Smurf account": "Cuenta alternativa", + "[Achievement name 455]If at first you don't succeed": "Si al principio no lo logras...", + "[Achievement name 456]O Fortuna": "Oh, fortuna", + "[Achievement name 457]Initial public offering": "Oferta pública inicial", + "[Achievement name 458]Rookie numbers": "Números de novato", + "[Achievement name 459]No nobility in poverty": "No hay nobleza en la pobreza", + "[Achievement name 460]Full warehouses": "Almacenes llenos", + "[Achievement name 461]Make my day": "Alégrame el día", + "[Achievement name 462]Buy buy buy": "Comprar, comprar, comprar", + "[Achievement name 463]Gaseous assets": "Activos gaseosos", + "[Achievement name 464]Pyramid scheme": "Esquema piramidal", + "[Achievement name 465]Jellicles": "Gelatinas", + "[Achievement name 466]Quincentennial and a half": "Quincentenario y medio", + "[Achievement name 467]What did we even eat before these": "¿Esto ya lo hemos comido?", + "[Achievement name 468]Heavy flow": "Flujo abundante", + "[Achievement name 469]More you say?": "¿Más dices?", + "[Achievement name 470]Large and in charge": "A tutiplén", + "[Achievement name 471]Absolutely stuffed": "Absolutamente relleno", + "[Achievement name 472]It's only wafer-thin": "Delgado como una oblea", + "[Achievement name 473]Clickety split": "A un clic de distancia", + "[Achievement name 474]Gotta hand it to you": "Choca esa mano", + "[Achievement name 475]Okay boomer": "Vale, abuelita", + "[Achievement name 476]Overripe": "Demasiado maduro", + "[Achievement name 477]Rock on": "Rock and roll", + "[Achievement name 478]Self-manmade man": "Hombre hecho a sí mismo", + "[Achievement name 479]Checks out": "En efectivo", + "[Achievement name 480]Living on a prayer": "A Dios rezando", + "[Achievement name 481]Higitus figitus migitus mum": "Higitus figitus migitus mum", + "[Achievement name 482]The incredible journey": "El viaje increíble", + "[Achievement name 483]Just a phase": "Solo una fase", + "[Achievement name 484]Don't let me leave, Murph": "No te vayas, Murph", + "[Achievement name 485]Caveman to cosmos": "Del hombre de las cavernas al espacio", + "[Achievement name 486]Particular tastes": "Gustos particulares", + "[Achievement name 487]A light snack": "Un tentempié ligero", + "[Achievement name 488]Tempting fate": "Tentar al destino", + "[Achievement name 489]Tautological": "Tautológico", + "[Achievement name 490]Curly braces": "Paréntesis", + "[Achievement name 491]Seven horseshoes": "Siete herraduras", + "[Achievement name 492]Olden days": "Viejos tiempos", + "[Achievement name 493]The devil's workshop": "El taller del diablo", + "[Achievement name 494]In the green": "Muy verde", + "[Achievement name 495]Mountain out of a molehill, but like in a good way": "Una montaña de un grano de arena, pero en el buen sentido", + "[Achievement name 496]The wheels of progress": "Las ruedas del progreso", + "[Achievement name 497]That's rich": "Qué rico", + "[Achievement name 498]Preaches and cream": "Galletas divinas", + "[Achievement name 499]Magic thinking": "Pensamiento mágico", + "[Achievement name 500]Is there life on Mars?": "¿Hay vida en Marte?", + "[Achievement name 501]Bad chemistry": "Mala química", + "[Achievement name 502]Reduced to gibbering heaps": "Reducido a una pila", + "[Achievement name 503]Back already?": "¿Ya has vuelto?", + "[Achievement name 504]Nuclear throne": "Trono nuclear", + "[Achievement name 505]Making light of the situation": "A la ligera", + "[Achievement name 506]Flip a cookie. Chips, I win. Crust, you lose.": "Lanza una galleta al aire. Si sale pepitas, yo gano. Si sale corteza, tú pierdes.", + "[Achievement name 507]In and of itself": "En sí mismo", + "[Achievement name 508]Duck typing": "Tipado pato", + "[Achievement name 509]They'll never know what hit 'em": "Nunca sabrán lo que les golpeó", + "[Achievement name 510]Well-versed": "Bien versado", + "[Achievement name 511]Ripe for the picking": "Maduro para la cosecha", + "[Achievement name 512]Unreal": "Irreal", + "[Achievement name 513]Once you've seen one": "Cuando has visto uno, son todos iguales", + "[Achievement name 514]Spoils and plunder": "Saqueo", + "[Achievement name 515]Nobody exists on purpose, nobody belongs anywhere": "Nadie existe a propósito, nadie pertenece a ningún lado", + "[Achievement name 516]Hyperspace expressway": "Autopista hiperespacial", + "[Achievement name 517]Versatile": "Versátil", + "[Achievement name 518]You are inevitable": "Eres inevitable", + "[Achievement name 519]Away from this place": "Lejos de este lugar", + "[Achievement name 520]Everywhere at once": "En todas partes a la vez", + "[Achievement name 521]Reject reality, substitute your own": "Rechaza la realidad, sustituye la tuya", + "[Achievement name 522]Fringe": "Marginal", + "[Achievement name 523]Coherence": "Coherencia", + "[Achievement name 524]Earth-616": "Tierra 616", + "[Achievement name 525]Strange topologies": "Topologías extrañas", + "[Achievement name 526]Grand design": "El gran diseño", + "[Achievement name 527]Ecumenopolis": "Ecumenópolis", + "[Achievement name 528]The full picture": "La imagen completa", + "[Achievement name 529]When there's nothing left to add": "Cuando no queda nada que añadir", + "[Achievement name 530]Sexcentennial": "Sexcentenario", + "[Achievement name 531]Keep going until I say stop": "Sigue hasta que te diga que te pares", + "[Achievement name 532]But I didn't say stop, did I?": "¿Te he dicho que te pares?", + "[Achievement name 533]With unrivaled fervor": "Un fervor inigualable", + "[Achievement name 534]Think big": "Piensa a lo grande", + "[Achievement name 535]Hypersize me": "Hiperengórdame", + "[Achievement name 536]Max capacity": "Capacidad máxima", + "[Achievement name 537]Liquid assets": "Activos líquidos", + "[Achievement name 538]Stifling the press": "Reprimiendo a la prensa", + "[Achievement name 539]It's big brain time": "Es hora de un gran cerebro", + "[Achievement name 540]Just my imagination": "Solo mi imaginación", + "[Achievement name 541]Now there's an idea": "Gran idea", + "[Achievement name 542]The organ that named itself": "El órgano que se nombró a sí mismo", + "[Achievement name 543]Gyrification": "Girificación", + "[Achievement name 544]A trademarked portmanteau of \"imagination\" and \"engineering\"": "Un acrónimo registrado de \"imaginación\" e \"ingeniería\"", + "[Achievement name 545]Mindfulness": "Atención plena", + "[Achievement name 546]The 10% myth": "El mito del 10%", + "[Achievement name 547]Don't think about it too hard": "No lo pienses demasiado", + "[Achievement name 548]Though fools seldom differ": "Aunque los tontos rara vez discrepan", + "[Achievement name 549]Looking kind of dumb": "Un poco tonto", + "[Achievement name 550]A beautiful mind": "Una mente maravillosa", + "[Achievement name 551]Cardinal synapses": "Sinapsis cardinales", + "[Achievement name 552]Positive thinking": "Pensamiento positivo", + "[Achievement name 553]The thought that counts": "El pensamiento que cuenta", + "[Achievement name 554]Unthinkable": "Inconcebible", + "[Achievement name 555]Gifted": "Dotado", + "[Achievement name 556]They moistly come at night": "Vienen por la noche", + "[Achievement name 557]It's grown on you": "Le gustas", + "[Achievement name 558]Don't let the walls cave in on you": "No dejes que las paredes se derrumben sobre ti", + "[Achievement name 559]Replaced by robots": "Reemplazado por robots", + "[Achievement name 560]Financial prodigy": "Prodigio financiero", + "[Achievement name 561]And I will pray to a big god": "Y rezaré a un gran dios", + "[Achievement name 562]Shosple Colupis": "Shosple Colupis", + "[Achievement name 563]False vacuum": "Falso vacío", + "[Achievement name 564]Metallic taste": "Sabor metálico", + "[Achievement name 565]Swiss cheese": "Queso suizo", + "[Achievement name 566]But the future refused to change": "Pero el futuro se negó a cambiar", + "[Achievement name 567]What's the dark matter with you": "¿Qué te pasa con la materia oscura?", + "[Achievement name 568]Enlightenment": "Iluminación", + "[Achievement name 569]Never tell me the odds": "Nunca me digas las probabilidades", + "[Achievement name 570]Blowing an Apollonian gasket": "Soplando un tamiz de Apolonio", + "[Achievement name 571]Get with the program": "Acostúmbrate al programa", + "[Achievement name 572]Lost your cosmic marbles": "Has perdido la cabeza cósmica", + "[Achievement name 573]By will alone I set my mind in motion": "Solo yo puse en marcha mi mente", + "[Achievement name 574]Ain't that a click in the head": "¿No es eso un clic en la cabeza?", + "[Achievement name 575]Sexcentennial and a half": "Sexcentenario y medio", + "[Achievement name 576]I am speed": "Soy veloz", + "[Achievement name 577]And on and on": "Y así sucesivamente", + "[Achievement name 578]Fake it till you bake it": "Falséalo hasta que lo hornees", + "[Achievement name 579]History in the baking": "Historia de la repostería", + "[Achievement name 580]Baby it's old outside": "Qué viejo", + "[Achievement name 581]Myriad": "Miríada", + "[Achievement name 582]Kaizen": "Kaizen", + "[Achievement name 583]Beyond quality": "Más allá de la calidad", + "[Achievement name 584]Everything happens so much": "Todo pasa muchas veces", + "[Achievement name 585]I'll rest when I'm dead": "Descansaré cuando esté muerto", + "[Achievement name 586]What do you get for the baker who has everything": "¿Qué tienes para el panadero que lo tiene todo?", + "[Achievement name 587]Bottomless pit": "Pozo sin fondo", + "[Achievement name 588]All the stars in heaven": "Todas las estrellas en el cielo" +}); \ No newline at end of file diff --git a/gversion/gs/cookieclicker/loc/FR.js b/gversion/gs/cookieclicker/loc/FR.js new file mode 100644 index 0000000..6413efc --- /dev/null +++ b/gversion/gs/cookieclicker/loc/FR.js @@ -0,0 +1,3284 @@ +AddLanguage('FR','french',{ + "": { + "language": "FR", + "plural-forms": "nplurals=2;plural=(n!=1);" + }, + "cookie": "/", + "sugar lump": "morceau de sucre", + "heavenly chip": "pépite céleste", + "wrinkler": "rideux", + "building": "construction", + "upgrade": "amélioration", + "golden cookie": "cookie doré", + "grandmapocalypse": "/", + "%1 cookie": [ + "%1 cookie", + "%1 cookies" + ], + "%1 sugar lump": [ + "%1 morceau de sucre", + "%1 morceaux de sucre" + ], + "%1 heavenly chip": [ + "%1 pépite céleste", + "%1 pépites célestes" + ], + "%1 golden cookie": [ + "%1 cookie doré", + "%1 cookies dorés" + ], + "%1 building": [ + "%1 construction", + "%1 constructions" + ], + "%1 upgrade": [ + "%1 amélioration", + "%1 améliorations" + ], + "Yes": "Oui", + "No": "Non", + "Click here": "Cliquer ici", + "Don't show this again": "Ne plus montrer ceci", + "Delete all": "Tout effacer", + "Back": "Retour", + "Confirm": "Confirmation", + "All done!": "C'est fait !", + "Load": "Charger", + "Save": "Sauvegarder", + "Quit": "Quitter", + "Save & Quit": "Enregistrer et quitter", + "Cancel": "Annuler", + "Nevermind": "Annuler", + "Random": "Aléatoire", + "You have %1.": "Tu as %1.", + "Click": "Cliquer", + "Shift": "Majuscule", + "Shift-click": "Majuscule-clic", + "Ctrl": "/", + "Ctrl-click": "Ctrl-clic", + "Esc": "Échapp", + "Cookies": "/", + "%1 day": [ + "%1 jour", + "%1 jours" + ], + "%1 hour": [ + "%1 heure", + "%1 heures" + ], + "%1 minute": [ + "%1 minute", + "%1 minutes" + ], + "%1 second": [ + "%1 seconde", + "%1 secondes" + ], + "less than 1 second": "moins d'une seconde", + "in %1": "dans %1", + "%1 ago": "il y a %1", + "%1 remaining": "%1 restants", + "%1 worth": "valeur de %1", + "%1 of CpS": "%1 de CpS", + "%1% of bank": "%1 % de la banque", + "per second:": "par seconde :", + "just now": "maintenant", + "a long while": "il y a longtemps", + "forever": "depuis toujours", + "Time remaining:": "Temps restant :", + "Big clickable cookie": "Gros cookie cliquable", + "Golden cookie": "Cookie doré", + "Wrath cookie": "Cookie de colère", + "Reindeer": "Renne", + "Options": "/", + "General": "Générales", + "Settings": "Paramètres", + "Volume": "/", + "Volume (music)": "Volume (musique)", + "ON": "ACTIVÉ", + "OFF": "DÉSACTIVÉ", + "Fancy graphics": "Graphismes élaborés", + "CSS filters": "Filtres CSS", + "visual improvements; disabling may improve performance": "améliorations visuelles, désactiver peut améliorer les performances", + "Particles": "Particules", + "Numbers": "Nombres", + "numbers that pop up when clicking the cookie": "nombres qui apparaissent en cliquant sur le cookie", + "Milk [setting]": "Lait", + "Cursors [setting]": "Curseurs", + "visual display of your cursors": "affichage visuel des curseurs", + "Wobbly cookie": "Cookie tremblant", + "Alt cookie sound": "Autre son de cookie", + "Icon crates": "Icône boîte", + "display boxes around upgrades and achievements in Stats": "affiche des boîtes autour des améliorations et des trophées dans les statistiques", + "Alt font": "Police alternative", + "your cookies are displayed using a monospace font": "vos cookies sont affichés avec une police à chasse fixe", + "Short numbers": "Nombres courts", + "Fast notes": "Notes rapides", + "notifications disappear much faster": "fait disparaître les notifications plus vite", + "Closing warning": "Confirmation de fermeture", + "the game will ask you to confirm when you close the window": "le jeu demandera confirmation avant de fermer la fenêtre", + "Defocus": "Arrière-plan", + "the game will be less resource-intensive when out of focus": "le jeu exigera moins de ressources quand il sera en arrière-plan", + "Extra buttons": "Boutons en plus", + "add options on buildings like Mute": "ajoute des options aux constructions, comme la Sourdine", + "Lump confirmation": "Confirmation morceaux", + "the game will ask you to confirm before spending sugar lumps": "une confirmation sera demandée avant l'utilisation de morceaux de sucre", + "Custom grandmas": "Grand-mères personnalisées", + "some grandmas will be named after Patreon supporters": "certaines grand-mères porteront le nom de mécènes de Patreon", + "Scary stuff": "Trucs qui font peur", + "Sleep mode timeout": "Fin de mode veille", + "on slower computers, the game will put itself in sleep mode when it's inactive and starts to lag out; offline CpS production kicks in during sleep mode": "sur les ordinateurs plus lents, le jeu passera en mode veille en cas d'inactivité et de ralentissement, la production CpS démarre en mode veille", + "Music in background": "Musique de fond", + "music will keep playing even when the game window isn't focused": "la musique sera toujours jouée, même quand la fenêtre n'est pas au premier plan", + "Cloud saving": "Sauvegarder sur le Cloud", + "allow use of Steam Cloud for save backups": "permet d'utiliser le Steam Cloud pour les sauvegardes", + "Purge Cloud": "Purger le Cloud", + "Current Cloud use:": "Utilisation actuelle du Cloud :", + "No Cloud access at the moment.": "Pas d'accès au Cloud pour le moment.", + "Screen reader mode": "Mode lecteur d'écran", + "allows optimizations for screen readers; game will reload": "permet les optimisations pour lecteurs d'écrans ; le jeu rechargera", + "Discord status": "Statut Discord", + "if Discord is on, show your game info as activity status": "si Discord est activé, affiche vos infos de jeu en tant que statut d'activité", + "Language": "Langue", + "Language: %1": "Langue: %1", + "Change language": "Changer de langue", + "note: this will save and reload your game": "note : votre partie sera enregistrée et rechargée", + "Press %1 to toggle fullscreen.": "Appuyez sur %1 pour activer le plein écran ou non", + "Other versions": "Autres versions", + "Beta": "/", + "Stats": "Statistiques", + "Shadow achievements": "Trophées secrets", + "These are feats that are either unfair or difficult to attain. They do not give milk.": "Ces exploits sont difficiles à accomplir, voire injustes, et n'apportent pas de lait.", + "starter milk": "lait de départ", + "for %1 achievements": "pour %1 trophées", + "appeased": "apaisées", + "awoken": "éveillées", + "displeased": "mécontentes", + "angered": "en colère", + "Cookies in bank:": "Cookies en banque :", + "Cookies baked (this ascension):": "Cookies cuits (cette ascension) :", + "Cookies baked (all time):": "Cookies cuits (depuis toujours) :", + "Cookies forfeited by ascending:": "Cookies abandonnés par l'ascension :", + "Legacy started:": "Héritage commencé :", + "with %1 ascension": [ + "avec %1 ascension", + "avec %1 ascensions" + ], + "Run started:": "Partie commencée :", + "Buildings owned:": "Constructions possédées :", + "Cookies per second:": "Cookies par seconde :", + "Raw cookies per second:": "Cookies par seconde bruts :", + "highest this ascension:": "plus élevé cette ascension :", + "multiplier:": "multiplicateur :", + "withered:": "spoliés :", + "Cookies per click:": "Cookies par clic :", + "Cookie clicks:": "Clics de cookies :", + "Hand-made cookies:": "Cookies faits main :", + "Golden cookie clicks:": "Clics cookies dorés :", + "Random drop multiplier:": "Multiplicateur d'apparitions aléatoires :", + "all time:": "depuis toujours :", + "Running version:": "Version en cours :", + "Special": "Spécial", + "Challenge mode:": "Mode défi :", + "Seasonal event:": "Évènement saisonnier :", + "Research:": "Recherche :", + "Grandmatriarchs status:": "Statut grand-matriarcal :", + "Pledge:": "Engagement :", + "Wrinklers popped:": "Rideux éclatés :", + "Sugar lumps harvested:": "Morceaux de sucre récoltés :", + "Reindeer found:": "Rennes trouvés :", + "Santa stages unlocked:": "Niveaux Père Noël débloqués :", + "Dragon training:": "Entraînement dragon :", + "Prestige": "/", + "at %1% of its potential (+%2% CpS)": "à %1 % de son potentiel (+%2 % CpS)", + "Prestige upgrades unlocked:": "Améliorations prestige débloquées :", + "Upgrades unlocked:": "Améliorations débloquées :", + "Achievements unlocked:": "Trophées débloqués :", + "Kitten multiplier:": "Multiplicateur de chatons :", + "Milk": "Lait", + "Milk:": "Lait :", + "Milk flavors unlocked:": "Parfums de lait débloqués :", + "Milk is gained with each achievement. It can unlock unique upgrades over time.": "Tu gagnes du lait avec chaque trophée. Il peut débloquer des améliorations uniques avec le temps.", + "Rank %1": "Rang %1", + "Automatic": "Automatique", + "Plain milk": "Lait nature", + "Chocolate milk": "Lait chocolaté", + "Raspberry milk": "Lait framboise", + "Orange milk": "Lait orange", + "Caramel milk": "Lait caramel", + "Banana milk": "Lait banane", + "Lime milk": "Lait citron vert", + "Blueberry milk": "Lait myrtille", + "Strawberry milk": "Lait fraise", + "Vanilla milk": "Lait vanille", + "Zebra milk": "Lait zébré", + "Cosmic milk": "Lait cosmique", + "Flaming milk": "Lait enflammé", + "Sanguine milk": "Lait sanguin", + "Midas milk": "Lait Midas", + "Midnight milk": "Lait de minuit", + "Green inferno milk": "Lait enfer vert", + "Frostfire milk": "Lait feu de glace", + "Honey milk": "Lait miel", + "Coffee milk": "Lait café", + "Tea milk": "Lait thé", + "Coconut milk": "Lait coco", + "Cherry milk": "Lait cerise", + "Soy milk": "Lait soja", + "Spiced milk": "Lait épicé", + "Maple milk": "Lait érable", + "Mint milk": "Lait menthe", + "Licorice milk": "Lait réglisse", + "Rose milk": "Lait rose", + "Dragonfruit milk": "Lait fruit du dragon", + "Info": "Infos", + "About": "À propos de", + "Cookie Clicker is a javascript game by %1 and %2.": "Cookie Clicker est un jeu javascript par %1 et %2.", + "Music by %1.": "Musique de %1.", + "Useful links: %1, %2, %3, %4.": "Liens utiles : %1, %2, %3, %4.", + "This version of Cookie Clicker is 100% free, forever. Want to support us so we can keep developing games? Here's some ways you can help:%1": "Cette version de Cookie Clicker est totalement gratuite, et le restera toujours. Tu veux nous aider à continuer à développer des jeux ? Voici comment tu peux nous aider : %1", + "Note: if you find a new bug after an update and you're using a 3rd-party add-on, make sure it's not just your add-on causing it!": "Note : si tu découvres un bug après une mise à jour mais que tu utilises un module complémentaire tiers, assure-toi que ce n'est pas ce dernier qui en est la cause !", + "Warning: clearing your browser cache or cookies (what else?) will result in your save being wiped. Export your save and back it up first!": "Attention : effacer le cache ou les cookies (évidemment !) de ton navigateur effacera ta sauvegarde. Exporte ta sauvegarde pour en faire une copie avant !", + "Version history": "Historique des versions", + "Official website": "Site Web officiel", + "Note: links will open in your web browser.": "Note : les liens s'ouvriront dans votre navigateur Web.", + "Note: older update notes are in English.": "Note : les anciennes notes de mise à jour sont en Anglais.", + "This feature is not yet available in your language.": "Cette fonctionnalité n'est pas encore disponible dans votre langue.", + "Restart with new changes": "Redémarrer avec les nouvelles modifications", + "Cookie Clicker is in sleep mode.": "Cookie Clicker est en mode veille.", + "Cookie Clicker is in sleep mode and generating offline cookies.": "Cookie Clicker est en mode veille et génère des cookies hors ligne.", + "%1 to resume from your save file.": "%1 pour reprendre depuis le fichier de sauvegarde.", + "(this happens when too many frames are skipped at once,
usually when the game has been running in the background for a while)
(you can turn this feature off in the settings menu)": "(ceci arrive lorsque trop de trames sont sautées à la fois,
généralement quand le jeu a tourné en arrière-plan pendant un moment)
(tu peux désactiver cette option dans le menu des paramètres)", + "Are you sure you want to close Cookie Clicker?": "Veux-tu vraiment fermer Cookie Clicker ?", + "Back up your save!": "Fais une copie de ta sauvegarde !", + "Hello again! Just a reminder that you may want to back up your Cookie Clicker save every once in a while, just in case.
To do so, go to Options and hit \"Export save\" or \"Save to file\"!": "Rebonjour ! Juste pour te dire qu'il serait judicieux de copier ta sauvegarde Cookie Clicker de temps en temps, juste au cas où.
Pour le faire, va dans les Options et clique sur « Exporter sauvegarde » ou « Enregistrer fichier » !", + "Save manually (the game autosaves every 60 seconds; shortcut: ctrl+S)": "Sauvegarde manuelle (le jeu effectue une sauvegarde automatique toutes les 60 secondes, raccourci clavier : Ctrl + s)", + "You can use this to backup your save or to transfer it to another computer (shortcut for import: ctrl+O)": "Peut s'utiliser pour copier la sauvegarde ou la transférer vers un autre ordinateur (raccourci d'importation : Ctrl + o)", + "Save to file": "Enregistrer fichier", + "Load from file": "Charger fichier", + "Use this to keep backups on your computer": "Sert à garder des copies sur ton ordinateur", + "Export save": "Exporter sauvegarde", + "This is your save code.
Copy it and keep it somewhere safe!": "C'est ton code de sauvegarde.
Copie-le et garde-le à l'abri !", + "Import save": "Importer sauvegarde", + "Please paste in the code that was given to you on save export.": "Merci de coller le code donné lors de l'exportation de sauvegarde.", + "Game saved": "Partie sauvegardée", + "Game loaded": "Partie chargée", + "Error while saving": "Erreur de sauvegarde", + "Export your save instead!": "Exporte plutôt ta sauvegarde !", + "Error importing save": "Erreur d'importation de sauvegarde", + "Oops, looks like the import string is all wrong!": "Oups, on dirait qu'il y a un problème de chaîne n'importation !", + "You are attempting to load a save from a future version (v. %1; you are using v. %2).": "Tu es en train d'essayer de charger une sauvegarde d'une version future (v. %1, alors que tu utilises v. %2).", + "Sorry, you can't import saves from the classic version.": "Désolés, tu ne peux pas importer des sauvegardes de la version classique.", + "Wipe save": "Effacer sauvegarde", + "Delete all your progress, including your achievements": "Efface toute ta progression, notamment tes trophées", + "Do you REALLY want to wipe your save?
You will lose your progress, your achievements, and your heavenly chips!": "Veux-tu VRAIMENT effacer ta sauvegarde ?
Tu perdras toute ta progression, tes trophées et tes pépites célestes !", + "Whoah now, are you really, REALLY sure you want to go through with this?
Don't say we didn't warn you!": "Holà, mais est-ce que tu veux vraiment, VRAIMENT faire ça ?
Tu ne pourras pas dire qu'on ne t'avait pas prévenu !", + "Game reset": "Réinitialisation du jeu", + "Good bye, cookies.": "Au revoir, les cookies.", + "Welcome back!": "Heureux de te revoir !", + "You earned %1 while you were away.": "Tu as gagné %1 pendant ton absence.", + "Mods": "/", + "Manage mods": "Gérer les mods", + "Publish mods": "Publier mods", + "Update published mods": "Mise à jour des mods publiés", + "Only use mods from trusted sources. Some mods may require a game restart to take effect.": "N'utilise que les mods de sources fiables. Certains mods peuvent exiger de relancer le jeu pour prendre effet.", + "Enable": "Activer", + "Disable": "Désactiver", + "Priority up": "Augmenter priorité", + "Priority down": "Diminuer priorité", + "New mod": "Nouveau mod", + "Select folder": "Choisir dossier", + "Select updated folder": "Sélectionner le dossier mis à jour", + "Select a mod.": "Sélectionner un mod.", + "Open folder": "Ouvrir dossier", + "Open Workshop": "Ouvrir l'atelier", + "Open Workshop page": "Ouvrir page d'atelier", + "Unsubscribe": "Se désabonner", + "Local mod": "Mod local", + "Open %1 folder": "Ouvrir dossier %1", + "Description": "/", + "Image": "/", + "Name": "Nom", + "Title": "Titre", + "Visibility": "Visibilité", + "Author": "Auteur", + "File size": "Taille de fichier", + "Tags": "Mot-clés", + "Dependencies": "Dépendances", + "Publish to Workshop": "Publier dans l'atelier", + "Version": "/", + "Error!": "Erreur !", + "none": "aucun(e)", + "Publishing...": "Publication...", + "Updating...": "Mise à jour...", + "Success!": "Succès !", + "Refresh": "Actualiser", + "Last update:": "Dernière mise à jour :", + "Mods are loaded from top to bottom.": "Les mods sont chargés de haut en bas.", + "Some mods couldn't be loaded:": "Certains mods n'ont pu être chargés :", + "This tool allows you to upload new mods to the Steam Workshop.
You need to select a mod folder containing a properly-formatted %1 file.
See the included sample mods for examples.": "Cet outil vous permet de téléverser de nouveaux mods vers le Workshop Steam.
Vous devez sélectionner un dossier de mod contenant un fichier %1 correctement formaté.
Voir les échantillons de mods inclus pour des exemples.", + "Mod data": "Données de mod", + "No mod data present.": "Pas de données de mod présentes.", + "These are the mods present in your save data. You may delete some of this data to make your save file smaller.": "Ce sont les mods présents dans tes données de sauvegarde. Tu peux en effacer une partie pour rendre ton fichier de sauvegarde plus petit.", + "(loaded)": "(chargé)", + "%1 char": [ + "%1 caractère", + "%1 caractères" + ], + "Check mod data": "Vérifier les données de mod", + "view and delete save data created by mods": "voir et effacer les données de sauvegarde issues des mods", + "New update!": "Nouvelle mise à jour !", + "New version available: v. %1!": "Nouvelle version disponible : v. %1 !", + "Update note: \"%1\"": "Note de mise à jour : « %1 »", + "Refresh to get it!": "Actualise pour l'obtenir !", + "You are currently playing Cookie Clicker on the %1 protocol.
The %2 version uses a different save slot than this one.
Click this lock to reload the page and switch to the %2 version!": "Tu joues actuellement à Cookie Clicker sur le protocole %1.
La version %2 utilise un emplacement de sauvegarde différent de celle-ci.
Clique sur ce verrou pour recharger la page et passer à la version %2 !", + "+%1 more notification.": [ + "+%1 notification de plus.", + "+%1 notifications de plus." + ], + "Christmas": "Noël", + "Valentine's day": "Saint-Valentin", + "Business day": "Jour des affaires", + "Easter": "Pâques", + "Halloween": "/", + "%1 has started!": "%1 a commencé !", + "%1 is over.": "%1 a pris fin.", + "%1's bakery": "Pâtisserie %1", + "Name your bakery": "Nomme ta pâtisserie", + "What should your bakery's name be?": "Comment ta pâtisserie devrait-elle s'appeler ?", + "bakery random name, 1st half": [ + "Cookie", + "Biscuit", + "Muffin", + "Scone", + "Cupcake", + "Pancake", + "Pépite", + "Pignon", + "Gadget", + "Pantin", + "Mitaine", + "Chaussette", + "Théière", + "Mystère", + "Pâtissière", + "Cuisinière", + "Grand-mère", + "Clic", + "Clickeur", + "Vaisseau", + "Usine", + "Portail", + "Machine", + "Expérimentation", + "Monstre", + "Panique", + "Cambrioleur", + "Bandit", + "Patate", + "Pizza", + "Hamburger", + "Saucisse", + "Boulette de viande", + "Spaghetti", + "Nouille", + "Macaroni", + "Chaton", + "Chiot", + "Girafe", + "Zèbre", + "Perroquet", + "Dauphin", + "Caneton", + "Paresseux", + "Tortue", + "Gobelin", + "Lutin", + "Gnome", + "Ordinateur", + "Pirate", + "Ninja", + "Zombie", + "Robot", + "Professeur", + "Docteur", + "Capitaine" + ], + "bakery random name, 2nd half": [ + "Magique", + "Fantastique", + "Astigmate", + "Splendide", + "Sympatique", + "Pirate", + "Ninja", + "Zombie", + "Robotique", + "Cool", + "Grave", + "Double", + "Triple", + "Turbo", + "Techno", + "Disco", + "Électro", + "qui Danse", + "qui Fume", + "qui Clique", + "de l'Espace", + "Scientifique", + "du Moyen Âge", + "du Futur", + "de la Nuit", + "des Étoiles", + "à Barbe", + "Adorable", + "Minuscule", + "Gigantesque", + "en Feu", + "Aquatique", + "des Glaces", + "en Métal", + "en Plastique", + "Liquide", + "Avide", + "au Chocolat", + "à la Vanille", + "à la Fraise", + "qui Croustille", + "qui Couine", + "Mnémotechnique", + "Psychique", + "Robotique", + "Frénétique" + ], + "%1, age %2": "« %1, %2 ans »,", + "Sugar lumps!": "Morceaux de sucre !", + "Because you've baked a billion cookies in total, you are now attracting sugar lumps. They coalesce quietly near the top of your screen, under the Stats button.
You will be able to harvest them when they're ripe, after which you may spend them on all sorts of things!": "Comme tu as cuit un milliard de cookies au total, tu attires des morceaux de sucre. Ils se forment discrètement près du sommet de ton écran, sous le bouton Statistiques.
Tu pourras les récolter une fois qu'ils seront mûrs, et tu pourras ensuite les dépenser pour acheter toutes sortes de choses !", + "A sugar lump is coalescing here, attracted by your accomplishments.": "Un morceau de sucre se forme ici, attiré par tes réussites.", + "Your sugar lumps mature after %1,
ripen after %2,
and fall after %3.": "Tes morceaux de sucre s'affinent après %1,
mûrissent après %2,
et tombent après %3.", + "• Sugar lumps can be harvested when mature, though if left alone beyond that point they will start ripening (increasing the chance of harvesting them) and will eventually fall and be auto-harvested after some time.
• Sugar lumps are delicious and may be used as currency for all sorts of things.
• Once a sugar lump is harvested, another one will start growing in its place.
• Note that sugar lumps keep growing when the game is closed.": "• Les morceaux de sucre peuvent être récoltés une fois affinés, mais si tu les laisses passer à l'étape suivante, ils commenceront à mûrir (augmentant les chances de les récolter) et finiront par tomber et être récoltés automatiquement après un certain temps.
• Les morceaux de sucre sont délicieux et peuvent être utilisés comme monnaie pour acheter toutes sortes de choses.
• Une fois un morceau de sucre récolté, un autre commencera à se former à sa place.
• Note que les morceaux de sucre continuent à se former quand le jeu est fermé.", + "This sugar lump has been exposed to time travel shenanigans and will take an excruciating %1 to reach maturity.": "Ce morceau de sucre a été exposé à des voyages dans le temps et prendra pas moins de %1 pour atteindre un état affiné.", + "This sugar lump is still growing and will take %1 to reach maturity.": "Ce morceau de sucre se forme encore, et prendra %1 pour atteindre un état affiné.", + "This sugar lump is mature and will be ripe in %1.
You may click it to harvest it now, but there is a 50% chance you won't get anything.": "Ce morceau de sucre est affiné et sera mûr dans %1.
Tu peux cliquer dessus pour le récolter maintenant, mais il y a 50 % de chances de ne rien obtenir.", + "This sugar lump is ripe! Click it to harvest it.
If you do nothing, it will auto-harvest in %1.": "Ce morceau de sucre est mûr ! Clique dessus pour le récolter.
Si tu ne fais rien, il s'auto-récoltera dans %1.", + "This sugar lump grew to be bifurcated; harvesting it has a 50% chance of yielding two lumps.": "Ce morceau de sucre s'est dédoublé en grandissant. Sa récolte offre 50 % de chances d'obtenir deux morceaux.", + "This sugar lump grew to be golden; harvesting it will yield 2 to 7 lumps, your current cookies will be doubled (capped to a gain of 24 hours of your CpS), and you will find 10% more golden cookies for the next 24 hours.": "Ce morceau de sucre est devenu doré en grandissant. Sa récolte va permettre d'obtenir 2 à 7 morceaux, ton nombre de cookies actuel sera doublé (dans la limite d'un gain de 24 heures de tes CpS), et tu trouveras 10 % de cookies dorés supplémentaires pour les prochaines 24 heures.", + "This sugar lump was affected by the elders and grew to be meaty; harvesting it will yield between 0 and 2 lumps.": "Ce morceau de sucre a été affecté par les anciennes, et est devenu charnu. Sa récolte apportera entre 0 et 2 morceaux.", + "This sugar lump is caramelized, its stickiness binding it to unexpected things; harvesting it will yield between 1 and 3 lumps and will refill your sugar lump cooldowns.": "Ce morceau de sucre est caramélisé, ce qui le fait coller à tout et n'importe quoi. Sa récolte apportera entre 1 et 3 morceaux, et remplira tes barres d'attente de morceaux.", + "You harvested %1 while you were away.": "Tu as récolté %1 en ton absence.", + "Sugar blessing activated!": "Bénédiction sucrée activée !", + "Your cookies have been doubled.
+10% golden cookies for the next 24 hours.": "Ton nombre de cookies a été doublé.
+10 % de cookies dorés pour les prochaines 24 heures.", + "Sugar lump cooldowns cleared!": "Barres d'attentes de morceaux de sucre vidées !", + "Botched harvest!": "Récolte ratée !", + "Do you want to spend %1 to %2?": "Est-ce que tu veux dépenser %1 pour %2 ?", + "Heralds": "Hérauts", + "%1 herald": [ + "%1 héraut", + "%1 hérauts" + ], + "Heralds couldn't be loaded. There may be an issue with our servers, or you are playing the game locally.": "Impossible de charger les hérauts. Il y a peut-être un problème avec nos serveurs, ou tu joues au jeu en local.", + "There are no heralds at the moment. Please consider donating to our Patreon!": "Il n'y a pas de hérauts pour l'instant. Merci d'envisager un don sur notre Patreon !", + "selflessly inspiring a boost in production for everyone, resulting in %1.": "donnant généreusement une hausse de production pour tout le monde, générant %1.", + "+%1% cookies per second": "+%1 % cookies par seconde", + "You are in a Born again run, and are not currently benefiting from heralds.": "Tu es dans une partie renaissance, et ne bénéficies pas des hérauts pour le moment.", + "You own the Heralds upgrade, and therefore benefit from the production boost.": "Tu possèdes l'amélioration hérauts, et bénéficies donc de la hausse de production.", + "To benefit from the herald bonus, you need a special upgrade you do not yet own. You will permanently unlock it later in the game.": "Pour bénéficier du bonus des hérauts, il te faut une amélioration spéciale que tu ne possèdes pas encore. Tu pourras la débloquer définitivement plus tard dans la partie.", + "Heralds are people who have donated to our highest Patreon tier, and are limited to 100.
Each herald gives everyone +1% CpS.
Heralds benefit everyone playing the game, regardless of whether you donated.": "Les hérauts sont ceux qui ont donné à hauteur de notre palier Patreon le plus élevé, et il ne peut y en avoir plus de 100.
Chaque héraut offre + 1 % CpS à tout le monde.
Les hérauts profitent à tous les joueurs, même à ceux qui n'ont pas fait de don.", + "Every %1 current players on Steam generates 1 herald, up to %2 heralds.
Each herald gives everyone +1% CpS.": "1 Héraut est généré tous les %1 joueurs actuels sur Steam, dans la limite de %2 hérauts.
Chaque héraut donne + 1 % CpS à tout le monde.", + "+%1!": "+%1 !", + "You found %1!": "Tu as trouvé %1 !", + "Found %1!": "Trouvé %1 !", + "You also found %1!": "Tu as aussi trouvé %1 !", + "Lost %1!": "Perdu %1 !", + "Sweet!
Found 1 sugar lump!": "Joli !
Trouvé 1 morceau de sucre !", + "Lucky!": "Quelle chance !", + "Ruin!": "Raté !", + "Cookie chain over. You made %1.": "Chaîne de cookies terminée. Tu as fait %1.", + "Cookie chain": "Chaîne de cookies", + "Cookie chain broken.
You made %1.": "Chaîne de cookies interrompue.
Tu as fait %1.", + "Cookie blab": [ + "Croustillance cookies x3 pour 60 secondes !", + "Chocolatitude x7 pour 77 secondes !", + "Élasticité de pâte divisée par deux pour 66 secondes !", + "Brillance des cookies dorés doublée pour 3 secondes !", + "Économie mondiale divisée par deux pour 30 secondes !", + "Bisous de grand-mère 23 % plus piquants pour 45 secondes !", + "Merci d'avoir cliqué !", + "Tu t'es fait avoir ! C'était juste un test.", + "Cookies dorés cliqués +1 !", + "Ton clic a été enregistré, merci de ta coopération.", + "Merci ! Ça fait du bien !", + "Merci. Une équipe a été envoyée.", + "Ils sont au courant.", + "Oups, c'était juste un cookie au chocolat entouré de papier aluminium." + ], + "Exploded a wrinkler": "Rideux éclaté", + "Exploded a shiny wrinkler": "Rideux brillant éclaté", + "Swallowed:": "Avalé :", + "Reindeer names": [ + "Tornade", + "Danseuse", + "Fringant", + "Furie", + "Comète", + "Cupidon", + "Tonnerre", + "Éclair", + "Rudolph" + ], + "The reindeer gives you %1.": "Le renne te donne %1.", + "You are also rewarded with %1!": "Tu reçois aussi %1 en récompense !", + "You are granted %1.": "Tu reçois %1.", + "Found a present!": "Cadeau trouvé !", + "You find a present which contains...": "Tu trouves un cadeau contenant...", + "Evolve": "Faire évoluer", + "Festive test tube": "Éprouvette festive", + "Festive ornament": "Décoration festive", + "Festive wreath": "Couronne festive", + "Festive tree": "Arbre festif", + "Festive present": "Cadeau festif", + "Festive elf fetus": "Fœtus d'elfe festif", + "Elf toddler": "Bambin elfe", + "Elfling": "Petit elfe", + "Young elf": "Jeune elfe", + "Bulky elf": "Elfe costaud", + "Nick": "Nico", + "Santa Claus": "Père Noël", + "Elder Santa": "Père Noël ancien", + "True Santa": "Vrai Père Noël", + "Final Claus": "Père Noël ultime", + "Dragon egg": "Œuf de dragon", + "Shivering dragon egg": "Œuf de dragon tremblant", + "Krumblor, cookie hatchling": "Krumblor, bébé dragon de cookie", + "Krumblor, cookie dragon": "Krumblor, dragon de cookie", + "Train %1": "Entraînement %1", + "Aura: %1": "Aura : %1", + "Chip it": "Écailler", + "Hatch it": "Faire éclore", + "Bake dragon cookie": "Mettre à cuire", + "Delicious!": "Délicieux !", + "Train secondary aura": "Entraîner aura secondaire", + "Lets you use two dragon auras simultaneously": "Te permet d'utiliser deux auras de dragon à la fois", + "Your dragon is fully trained.": "Ton dragon est totalement entraîné.", + "%1 of every building": "%1 de chaque construction", + "No aura": "Pas d'aura", + "Set your dragon's aura": "Choisis ton aura de dragon", + "Set your dragon's secondary aura": "Choisis ton aura de dragon secondaire", + "Select an aura from those your dragon knows.": "Choisis une aura parmi celles que ton dragon connaît.", + "One tenth of every other dragon aura, combined.": "Un dixième de toutes les autres auras de dragon combinées.", + "Switching your aura is free because you own no buildings.": "Ton changement d'aura est gratuit parce que tu ne possèdes aucune construction.", + "The cost of switching your aura is %1.
This will affect your CpS!": "Ton changement d'aura coûtera %1.
Tes CpS seront modifiés !", + "Your dragon dropped something!": "Ton dragon a laissé tomber quelque chose !", + "Breath of Milk": "Souffle de lait", + "Dragon Cursor": "Curseur dragon", + "Elder Battalion": "Bataillon ancien", + "Reaper of Fields": "Récolteur des champs", + "Earth Shatterer": "Brise-terre", + "Master of the Armory": "Maître de l'armurerie", + "Fierce Hoarder": "Entasseur féroce", + "Dragon God": "Dieu dragon", + "Arcane Aura": "Aura arcanique", + "Dragonflight": "Vol de dragon", + "Ancestral Metamorphosis": "Métamorphose ancestrale", + "Unholy Dominion": "Domination impie", + "Epoch Manipulator": "Manipulateur d'époque", + "Mind Over Matter": "L'esprit prévaut sur la matière", + "Radiant Appetite": "Appétit radieux", + "Dragon's Fortune": "Fortune de dragon", + "Dragon's Curve": "Courbe du dragon", + "Reality Bending": "Distorsion de réalité", + "Dragon Orbs": "Orbes de dragon", + "Supreme Intellect": "« Intelligence suprême »,", + "News :": "Actualités :", + "Ticker (grandma)": [ + "Cookies moelleux.", + "Nous sommes de gentilles grand-mères.", + "Esclavage dentesque.", + "Viens faire un bisou à grand-mère.", + "Pourquoi ne viens-tu pas me voir plus souvent ?", + "Appelle-moi..." + ], + "Ticker (threatening grandma)": [ + "Absolument dégoûtant.", + "Tu me rends malade.", + "Tu me dégoûtes.", + "Notre ascension est en cours.", + "Ça a commencé.", + "Tout sera bientôt terminé.", + "Tu aurais pu l'arrêter." + ], + "Ticker (angry grandma)": [ + "Cette petite saleté a osé nous trahir.", + "Cette vilaine petite chose a essayé de se débarrasser de nous.", + "Alors, on croyait ne plus nous revoir en nous vendant. Comme c'est mignon.", + "Je sens d'ici tes cookies pourris." + ], + "Ticker (grandmas return)": [ + "ratatine", + "tortille", + "palpite", + "ronge", + "Nous nous élèverons à nouveau.", + "Un simple contretemps.", + "Nous ne sommes pas satisfaites.", + "Trop tard." + ], + "Ticker (grandma invasion start)": [ + "des millions de vieilles dames portées disparues !", + "des familles sur tout le continent parlent de grand-mères agitées et captivées !", + "des infirmières parlent d'une « étrange odeur de pâte à cookies » autour de leurs patientes agées !" + ], + "Ticker (grandma invasion rise)": [ + "une ville sombre dans le chaos alors que d'étranges vieilles dames pénètrent par effraction dans des maisons pour kidnapper des nourrissons et des ustensiles de cuisine !", + "un exode en masse de vieilles dames frappe le continent tout entier !", + "de vieilles dames se pétrifient sur place dans les rues et sécrètent un sirop sucré et visqueux !" + ], + "Ticker (grandma invasion full)": [ + "des « vrilles de chair » ridées visibles depuis l'espace !", + "tous les espoirs s'écroulent et une masse tremblotante de chair et de pâte engloutit la ville entière !", + "le cauchemar continue alors que des hectares de chair ridée s'étendent à une vitesse alarmante !" + ], + "Ticker (Farm)": [ + "un scientifique affirme que les fermes à cookies polluent nos rivières avec du chocolat nocif !", + "les fermes à cookies frappées par la controverse sur le chocolat génétiquement modifié !", + "un nutritionniste déclare les fermes à cookies non véganes." + ], + "Ticker (Mine)": [ + "est-ce que notre planète s'allège ? Les experts étudient les effets du minage intensif de chocolat.", + "les mines de chocolat causent des tremblements de terre et des glissements de terrain !", + "les profondeurs des mines de chocolat abritent d'« étranges êtres chocolatés » !" + ], + "Ticker (Factory)": [ + "les usines de cookies liées au réchauffement climatique !", + "grève des usines de cookies, les travailleurs remplacés par des robots !", + "grève des usines de cookies, les employés exigent de ne plus être payés en cookies !" + ], + "Ticker (Bank)": [ + "les emprunts de cookies sont en hausse parce que les gens normaux ne peuvent plus se les permettre avec de l'argent normal.", + "les cookies se présentent lentement comme des concurrents des monnaies traditionnelles !", + "La plupart des pâtisseries disposent désormais de distributeurs automatiques pour faciliter les dépôts et les retraits de cookies." + ], + "Ticker (Temple)": [ + "les temples du chocolat récemment découverts engendrent une secte des cookies, des milliers d'adeptes prient le pâtissier céleste !", + "les théistes du mode entier découvrent la religion des cookies : « Oh, ben, je suppose qu'on avait tort depuis tout ce temps ! »", + "des explorateurs ramènent un artefact ancien d'un temple abandonné ; les archéologues s'émerveillent d'un rouleau à pâtisserie vieux de plusieurs siècles !" + ], + "Ticker (Wizard tower)": [ + "obtenez de nouveaux charmes et malédictions à la Foire nationale des sorts ! Promotions exceptionnelles sur les runes et grimoires.", + "les sorciers des cookies nient toute responsabilité pour un nouveau-né particulièrement laid - les docteurs disent que le nourrisson a « l'air franchement grotesque, mais est naturel ».", + "« Toute magie suffisamment grossière est indiscernable de la technologie », d'après un technomage renommé." + ], + "Ticker (Shipment)": [ + "découverte d'une nouvelle planète en chocolat, devenue la cible de vaisseaux spécialisés dans le commerce des cookies !", + "le cœur de la planète en chocolat récemment découverte est en chocolat noir certifié pur à 99,8 !", + "des formes de vie à base de chocolat découvertes sur une autre planète !" + ], + "Ticker (Alchemy lab)": [ + "les réserves d'or nationales s'effondrent, le métal précieux étant de plus en plus échangé contre des cookies !", + "il s'avère que l'argent peut être transmuté en chocolat blanc !", + "un laboratoire d'alchimie déficient fermé, il servait à convertir des cookies en or inutile." + ], + "Ticker (Portal)": [ + "le pays est inquiet, des créatures de plus en plus inquiétantes émergent de portails dimensionnels !", + "le tourisme vers le cookievers plaît aux adolescents qui s'ennuient ! Jusqu'à 73 % de victimes !", + "les portails vers le cookievers soupçonnés d'entraîner un vieillissement prématuré et une obsession pour la pâtisserie, d'après une étude." + ], + "Ticker (Time machine)": [ + "des machines à voyager dans le temps impliquées dans un scandale révisionniste ! Ou pas ?", + "un historien dénonce des cookies ramenés du passé comme « impropres à la consommation humaine ».", + "« j'ai vu le futur » dit un opérateur de machine à voyager dans le temps, « et je ne veux pas y retourner »." + ], + "Ticker (Antimatter condenser)": [ + "une ville apparemment engloutie par un trou noir causé par de l'antimatière, des sources plus fiables affirment que la ville « n'a jamais vraiment existé » !", + "des chercheurs concluent que l'industrie des cookies a besoin de « davantage d'aimants » avant tout.", + "le premier condenseur d'antimatière activé, ne détruit pas la réalité !" + ], + "Ticker (Prism)": [ + "des scientifiques avertissent du danger de transformer la lumière en matière : « un jour, on va finir avec que de la matière et sans lumière ! ».", + "les cookies désormais cuits à la vitesse de la lumière grâce à de nouveaux appareils prismatiques.", + "on exhorte les citoyens du monde à « ne pas s'inquiéter » des nombreux éclats lumineux dans l'atmosphère." + ], + "Ticker (Chancemaker)": [ + "persistance des anomalies statistiques, les prévisions météo s'avèrent exactes pendant trois jours d'affilée !", + "un casino de la région en pleine banqueroute, tous les parieurs bénéficiant d'une série gagnante d'une semaine ! « On va peut-être s'en sortir » dit le propriétaire, avant d'être frappé par la foudre 47 fois.", + "un pays voisin élit par un pur hasard un président au programme sensé !" + ], + "Ticker (Fractal engine)": [ + "un homme de la région « lassé de Cookie Clicker » trouve les auto-références « dérangeantes et trop évidentes ».", + "un gourou local affirmant « il y a un peu d'entre nous en chacun » mis en examen pour cannibalisme.", + "des sondages montrent que les cookies composés de cookies sont « acceptables », un citoyen interrogé affirme « au moins, on sait enfin ce qu'il y a dedans »." + ], + "Ticker (Javascript console)": [ + "le code est à la mode ! De plus en plus d'adolescents se tournent vers des domaines techniques comme la programmation, ce qui nous assure une apocalypse robotique provoquant la fin de l'humanité.", + "les développeurs ne savent plus comment appeler leurs nouvelles librairies javascript, toutes les combinaisons de trois mots du dictionnaire étant déjà prises.", + "une étrange mode mise à jour pousserait les parents à appeler leurs enfants Emma.js ou Liam.js. Au moins un Bébé.js déjà signalé." + ], + "Ticker (Idleverse)": [ + "est-ce qu'un autre vous est en train de vivre sa meilleure vie dans un univers parallèle ? Probablement, espèce de feignasse !", + "« je me console en me disant qu'un de mes moi alternatifs a une belle vie quelque part » déclare la dernière version restante d'un citoyen du multivers.", + "les auteurs de comics utilisent l'existence du multivers pour justifier des trous dans leurs scénarios : « ah, je vous avais bien dit que ce n'était pas du tout tiré par les cheveux ! »." + ], + "Ticker (Cortex baker)": [ + "cortex pâtissier chétif identifié ne possédant qu'un QI à cinq chiffres : « Il est juste un peu bête », affirment les spécialistes.", + "mise en garde d'astronomes au sujet d'une dérive de trajectoire de cortex pâtissier, on craint des collisions frontales pouvant occasionner des commotions coûteuses.", + "les dresseurs de cortex pâtissiers rappellent aux employés que les cortex pâtissiers sont la propriété de la pâtisserie et leur demandent de ne pas les affubler de surnoms affectueux." + ], + "Ticker (Halloween)": [ + "inquiétante augmentation des rituels païens, alors que des enfants du monde entier enfilent des costumes étranges et soumettent des étrangers à du chantage pour obtenir des bonbons.", + "les enfants du monde entier « égarés et confus », toutes leurs sucreries d'Halloween ayant été remplacées par des cookies.", + "d'étranges créatures entourent les usines de cookies, mordillant les chaînes de fabrication." + ], + "Ticker (Christmas)": [ + "un chauffard barbu vu en excès de vitesse sur un traîneau volant ! Une investigation est en cours.", + "l'aliéné obèse et jovial toujours en liberté, les autorités incitent à « murer les cheminées pour la sécurité des enfants, c'est primordial ».", + "les autorités dénoncent l'entité festive aux pouvoirs quantiques qui sème toujours le chaos avec son armée de rennes.", + "les mères inquiètes demandent : « vous voulez dire qu'il donne des choses gratuitement ?! Personnellement, je n'ai aucune confiance en sa barbe. »", + "des enfants traumatisés après avoir découvert qu'en fait, le Père Noël n'est pas juste leur père déguisé !
« Je réévalue toute ma vie en ce moment », déclare Laura, 6 ans." + ], + "Ticker (Valentines)": [ + "l'amour est dans l'air, d'après les météorologues. Toutes les villes offrent des masques pour ralentir la contamination.", + "se marier à un cookie : folie, ou pratique du futur ?", + "les bonbons en forme de cœur prennent d'assaut l'industrie des sucreries, l'empire des cookies sur la sellette." + ], + "Ticker (Easter)": [ + "des rongeurs aux longues oreilles et à la queue touffue envahissent les banlieues, semant la terreur et le chocolat !", + "un biologiste prévient que les lapins ovipares « ne viennent pas exactement de cette dimension », et avertit de ne pas les caresser, les nourrir ou les cuire.", + "les lapins mystérieux seraient ovipares, mais quand même mammifères, ce qui indiquerait une parenté avec les ornithorynques." + ], + "Ticker (misc)": [ + "les médecins recommendent de consommer des cookies frais deux fois par jour.", + "les médecins avertissent des dangers du régime sans cookies à la mode.", + "les médecins avertissent les mères des dangers des « cookies faits maison ».", + "une célébrité révèle : « je ne suis pas accro aux cookies, ce sont juste des rumeurs issues de fans qui ont trop de temps libre ».", + "une célébrité ose révéler : « bon, je l'avoue... je n'ai jamais mangé un cookie de ma vie ».", + "une célébrité affirme : « les cookies ont contribué au maintien de ma minceur et de ma santé ».", + "un homme braque une banque et achète des cookies.", + "une étude révèle que les cookies ne ralentissent ni n'accélèrent le vieillissement mais « vous emmènent dans une toute autre direction ».", + "la famille de l'homme allergique aux cookies déclare : « il est vraiment louche ».", + "une ville frappée par la pénurie de cookies, les citoyens forcé de manger des cupcakes. Le maire avoue « ce n'est pas la même chose ».", + "« il faut bien dire que toutes ces histoires de cookies sont inquiétantes » déclare un idiot confus.", + "saisie de cookies illégaux, la police déclare : « leur goût est affreux ».", + "« Ook » affirme un orang-outang interrogé.", + "les médias sont-ils contrôlés par le lobby des cookies ? Un adepte des théories du complot complètement fèlé pensent que oui.", + "« désormais, les cookies constituent l'épine dorsale de l'économie » déclare un économiste, « si on commence à manger quoi que ce soit d'autre, on est tous morts ».", + "les cookies déclarés illégaux dans un pays perdu dont tout le monde se fiche. Les tensions politique attisées, une guerre espérée bientôt." + ], + "You feel like making cookies. But nobody wants to eat your cookies.": "Tu as envie de faire des cookies. Mais personne ne veut les manger.", + "Your first batch goes to the trash. The neighborhood raccoon barely touches it.": "Ta première fournée finit à la poubelle. Le raton laveur du quartier ose à peine y toucher.", + "Your family accepts to try some of your cookies.": "Ta famille accepte de goûter à tes cookies.", + "Your cookies are popular in the neighborhood.": "Tes cookies sont populaires dans le quartier.", + "People are starting to talk about your cookies.": "Les gens commencent à parler de tes cookies.", + "Your cookies are talked about for miles around.": "On parle de tes cookies à des kilomètres à la ronde.", + "Your cookies are renowned in the whole town!": "Tes cookies sont renommés dans toute la ville !", + "Your cookies bring all the boys to the yard.": "Tes cookies attirent tous les garçons dans la cour.", + "Your cookies now have their own website!": "Tes cookies ont leur propre site web !", + "Your cookies are worth a lot of money.": "Tes cookies valent très cher.", + "Your cookies sell very well in distant countries.": "Tes cookies se vendent très bien dans des pays éloignés.", + "People come from very far away to get a taste of your cookies.": "Des gens vienennt de très loin pour goûter tes cookies.", + "Kings and queens from all over the world are enjoying your cookies.": "Des rois et reines du monde entier adorent tes cookies.", + "There are now museums dedicated to your cookies.": "Il y a désormais des musées consacrés à tes cookies.", + "A national day has been created in honor of your cookies.": "Une journée nationale a été établie en l'honneur de tes cookies.", + "Your cookies have been named a part of the world wonders.": "Tes cookies ont été nommés parmi les merveilles du monde.", + "History books now include a whole chapter about your cookies.": "Les livres d'histoire consacrent un chapitre entier à tes cookies.", + "Your cookies have been placed under government surveillance.": "Tes cookies ont été placés sous surveillance gouvernementale.", + "The whole planet is enjoying your cookies!": "Tout la planète se délecte de tes cookies.", + "Strange creatures from neighboring planets wish to try your cookies.": "D'étranges créatures de planètes voisines veulent goûter tes cookies.", + "Elder gods from the whole cosmos have awoken to taste your cookies.": "Des dieux anciens du cosmos entier se sont éveillés pour goûter tes cookies.", + "Beings from other dimensions lapse into existence just to get a taste of your cookies.": "Des êtres d'autres dimensions se matérialisent pour goûter à tes cookies.", + "Your cookies have achieved sentience.": "Tes cookies sont devenus conscients.", + "The universe has now turned into cookie dough, to the molecular level.": "L'univers s'est maintenant transformé en pâte à cookie au niveau moléculaire.", + "Your cookies are rewriting the fundamental laws of the universe.": "Tes cookies réécrivent les lois fondamentales de l'univers.", + "A local news station runs a 10-minute segment about your cookies. Success!
(you win a cookie)": "Une chaîne de télé locale a fait un reportage de 10 minutes sur tes cookies, quelle réussite !
(tu gagnes un cookie)", + "it's time to stop playing": "il est temps d'arrêter de jouer", + "Today is your lucky day!": "C'est ton jour de chance !", + "Your lucky numbers are:": "Tes nombres porte-bonheur sont :", + "Fortune!": "Fortune !", + "A golden cookie has appeared.": "Un cookie doré est apparu.", + "You gain one hour of your CpS (capped at double your bank).": "Tu gagnes une heure de tes CpS (dans la limite du double de ta banque).", + "You've unlocked a new upgrade.": "Tu as débloqué une nouvelle amélioration.", + "Wish granted. Golden cookie spawned.": "Vœu exaucé. Apparition d'un cookie doré.", + "help me!": "aidez-moi !", + "Ascend": "Ascension", + "You've been on this run for %1.": "Tu as commencé ta partie depuis %1.", + "Your prestige level is currently %1.
(CpS +%2%)": "Ton niveau de prestige est actuellement de %1.
(CpS + %2 %)", + "Ascending now would grant you no prestige.": "Une ascension maintenant ne t'apporterait aucun prestige.", + "Ascending now would grant you
1 prestige level (+1% CpS)
and 1 heavenly chip to spend.": "Une ascension maintenant t'apporterait
1 niveau de prestige (+1 % CpS)
et 1 pépite céleste à dépenser.", + "Ascending now would grant you
%1 prestige levels (+%2% CpS)
and %3 heavenly chips to spend.": "Une ascension maintenant t'apporterait
%1 niveaux de prestige (+%2 % CpS)
et %3 pépites célestes à dépenser.", + "You need %1 more cookies for the next level.": "Il te faut %1 cookies en plus pour le prochain niveau.", + "Do you REALLY want to ascend?
You will lose your progress and start over from scratch.
All your cookies will be converted into prestige and heavenly chips.": "Veux-tu VRAIMENT procéder à l'ascension ?
Tu perdras ta progression et devras recommencer depuis le début.
Tous tes cookies seront transformés en prestige et en pépites célestes.", + "You will keep your achievements.": "Tu conserveras cependant tes trophées.", + "You will keep your achievements, building levels and sugar lumps.": "Tu conserveras tes trophées, niveaux de construction et morceaux de sucre.", + "Ascending": "Ascension en cours", + "So long, cookies.": "Au revoir, cookies.", + "You forfeit your %1.": "Tu abandonnes tes %1.", + "Prestige level:": "Niveau de prestige :", + "Heavenly chips:": "Pépites célestes :", + "%1 prestige level": [ + "%1 niveau de prestige", + "%1 niveaux de prestige" + ], + "You gain %1!": "Tu gagnes %1 !", + "Reincarnate": "Réincarnation", + "You are ascending.
Drag the screen around
or use arrow keys!
When you're ready,
click Reincarnate.": "Ton ascension est en cours.
Fais glisser l'écran
ou utilise les touches directionnelles !
Quand tu le voudras,
clique sur Réincarnation.", + "Each prestige level grants you a permanent +%1% CpS.
The more levels you have, the more cookies they require.": "Chaque niveau de prestige t'offre +%1 % CpS de manière permanente.
Plus tu as de niveaux, plus ceux-ci exigent de cookies.", + "Heavenly chips are used to buy heavenly upgrades.
You gain 1 chip every time you gain a prestige level.": "Les pépites célestes servent à acheter des améliorations célestes.
Tu gagnes 1 pépite à chaque niveau de prestige gagné.", + "Click this once you've bought
everything you need!": "Clique ici une fois que tu auras acheté
tout ce dont tu as besoin !", + "Are you ready to return to the mortal world?": "Es-tu prêt(e) à retourner dans le monde des mortels ?", + "Hello, cookies!": "Coucou, les cookies !", + "Challenge mode for the next run:": "Mode défi pour la prochaine partie :", + "Challenge modes apply special modifiers to your next ascension.
Click to change.": "Les modes défi appliquent des modificateurs spéciaux à ta prochaine ascension.
Clique pour changer.", + "Select a challenge mode": "Choisir un mode défi", + "None [ascension type]": "Aucun", + "No special modifiers.": "Pas de modificateurs spéciaux.", + "Born again [ascension type]": "Renaissance", + "This run will behave as if you'd just started the game from scratch. Prestige levels and heavenly upgrades will have no effect, as will sugar lumps and building levels. Perma-upgrades and minigames will be unavailable.
Some achievements are only available in this mode.": "Cette partie se déroulera comme si tu venais de commencer à jouer depuis le début. Les niveaux de prestige et les améliorations célestes n'auront aucun effet, tout comme les morceaux de sucres et les niveaux de construction. Les améliorations permanentes et les mini-jeux seront indisponibles.
Certains trophées sont uniquement disponibles dans ce mode.", + "Your bingo center/research facility is conducting experiments.": "Ton centre de bingo/de recherches procède à des expériences.", + "Research has begun": "Recherches commencées", + "Research complete": "Recherches achevées", + "You have discovered: %1.": "tu as découvert : %1.", + "Valentine's Day!": "Saint-Valentin !", + "It's Valentine's season!
Love's in the air and cookies are just that much sweeter!": "C'est le saison de la Saint-Valentin !
Il y a de l'amour dans l'air et les cookies sont encore plus savoureux !", + "Business Day!": "Jour des affaires !", + "It's Business season!
Don't panic! Things are gonna be looking a little more corporate for a few days.": "C'est le Jour des affaires !
Pas de panique ! Les choses vont avoir l'air un peu plus professionnelles pour quelques jours.", + "Halloween!": "Halloween !", + "It's Halloween season!
Everything is just a little bit spookier!": "C'est la saison d'Halloween !
Tout est un peu plus effrayant !", + "Christmas time!": "Noël !", + "It's Christmas season!
Bring good cheer to all and you just may get cookies in your stockings!": "C'est la saison de Noël !
Répands la bonne humeur autour de toi et tu auras peut-être des cookies dans ton petit soulier !", + "Easter!": "Pâques !", + "It's Easter season!
Keep an eye out and you just might click a rabbit or two!": "C'est la saison de Pâques !
Ouvre l'œil et tu pourras peut-être cliquer sur un lapin ou deux !", + "[Tag]Heavenly": "Céleste", + "[Tag]Tech": "Technologique", + "[Tag]Cookie": "Cookie", + "[Tag]Debug": "Débug", + "[Tag]Switch": "Permutateur", + "[Tag]Upgrade": "Amélioration", + "Tier:": "Palier :", + "[Tier]Plain": "Nature", + "[Tier]Berrylium": "Baierylium", + "[Tier]Blueberrylium": "Myrtillium", + "[Tier]Chalcedhoney": "Calcémiel", + "[Tier]Buttergold": "Beurredor", + "[Tier]Sugarmuck": "Sucrelasse", + "[Tier]Jetmint": "Menthejet", + "[Tier]Cherrysilver": "Argentcerise", + "[Tier]Hazelrald": "Émerausette", + "[Tier]Mooncandy": "Lunebonbon", + "[Tier]Astrofudge": "Astroramel", + "[Tier]Alabascream": "Albacrème", + "[Tier]Iridyum": "Iridmiam", + "[Tier]Synergy I": "Synergie I", + "[Tier]Synergy II": "Synergie II", + "[Tier]Fortune": "Fortune", + "[Tier]Self-referential": "Auto-référentiel", + "Vaulted": "Dans le coffre", + "Researched": "Recherché", + "Purchased": "Acheté", + "Unlocked forever": "Débloqué pour toujours", + "Click to learn!": "Clique pour apprendre !", + "Click to unlearn!": "Clique pour oublier !", + "Upgrade": "Amélioration", + "Upgrades": "Améliorations", + "Achievement": "Trophée", + "Achievements": "Trophées", + "Shadow Achievement": "Trophée secret", + "Unlocked": "Débloqué", + "Locked": "Bloqué", + "Source:": "Source :", + "Click to win!": "Clique pour gagner !", + "Click to lose!": "Clique pour perdre !", + "Legacy": "Héritage", + "Buildings": "Constructions", + "Switches": "Permutateurs", + "Vault": "Coffre", + "Research": "Recherche", + "Store": "Boutique", + "sacrifice %1": "/", + "Click to purchase.": "Clique pour acheter.", + "Click to open selector.": "Clique pour ouvrir la sélection.", + "Click to toggle.": "Clique pour activer ou non.", + "Click to research.": "Clique pour rechercher.", + "%1 to vault.": "%1 pour mettre dans le coffre.", + "%1 to unvault.": "%1 pour sortir du coffre.", + "Upgrade is vaulted and will not be auto-purchased.": "L'amélioration est dans le coffre et ne sera pas achetée automatiquement.", + "Upgrade for %1": "Amélioration pour %1", + "Buy": "Acheter", + "Sell": "Vendre", + "all": "tout", + "max": "/", + "Buy all upgrades": "Acheter toutes les améliorations", + "Will instantly purchase every upgrade you can afford, starting from the cheapest one.
Upgrades in the vault will not be auto-purchased.
You may place an upgrade into the vault by Shift-clicking on it.": "Achètera instantanément toutes les améliorations que tu peux acheter, commençant par la moins chère.
Les améliorations dans le coffre ne seront pas achetées automatiquement.
Tu peux placer une amélioration dans le coffre en faisant un Majuscule clic dessus.", + "each %1 produces %2 per second": "chaque %1 produit %2 par seconde", + "%1 producing %2 per second": "%1 produisant %2 par seconde", + "%1% of total CpS": "%1 % des CpS totaux", + "%1 produced so far": "%1 produits jusqu'à présent", + "...also boosting some other buildings:": "...améliore aussi d'autres constructions :", + "all combined, these boosts account for %1 per second (%2% of total CpS)": "au total, ces améliorations amènent %1 par seconde (%2 % des CpS totaux)", + "owned: %1": "possédés : %1", + "free: %1!": "gratuits : %1 !", + "Level %1 %2": "Niveau %1 %2", + "Granting +%1% %2 CpS.": "Apporte +%1 % %2 CpS.", + "Click to level up for %1.": "Clique pour monter de niveau pour %1.", + "Levelling up this building unlocks a minigame.": "Faire monter de niveau cette construction débloque un mini-jeu.", + "level up your %1": "fais monter de niveau ton/ta %1", + "Mute": "Sourdine", + "Minimize this building": "Minimiser cette construction", + "Muted:": "En sourdine :", + "Click to unmute": "Clique pour enlever la sourdine", + "Show": "Montrer", + "Hide": "Cacher", + "Names in white were submitted by our supporters on Patreon.": "Les noms en blanc sont proposés par nos mécènes sur Patreon.", + "You can also press %1 to bulk-buy or sell %2 of a building at a time, or %3 for %4.": "Tu peux aussi appuyer sur %1 pour acheter en gros ou vendre %2 d'une construction à la fois, ou %3 pour %4.", + "Investment": "Investissement", + "You're not sure what this does, you just know it means profit.": "Tu ne sais pas ce que ça fait au juste, seulement que ça rapporte.", + "Cursor": "Curseur", + "cursor": "curseur", + "cursors": "curseurs", + "%1 cursor": [ + "%1 curseur", + "%1 curseurs" + ], + "[Cursor quote]Autoclicks once every 10 seconds.": "Clique automatiquement toutes les 10 secondes.", + "[Cursor business name]Rolling pin": "Rouleau à pâtisserie", + "[Cursor business quote]Essential in flattening dough. The first step in cookie-making.": "Indispensable pour aplatir la pâte. La première étape de la fabrication de cookies.", + "Grandma": "Grand-mère", + "grandma": "grand-mère", + "grandmas": "grand-mères", + "%1 grandma": [ + "%1 grand-mère", + "%1 grand-mères" + ], + "[Grandma quote]A nice grandma to bake more cookies.": "Une gentille grand-mère pour cuire plus de cookies", + "[Grandma business name]Oven": "Four", + "[Grandma business quote]A crucial element of baking cookies.": "Un élément indispensable pour cuire les cookies.", + "Farm": "Ferme", + "farm": "ferme", + "farms": "fermes", + "%1 farm": [ + "%1 ferme", + "%1 fermes" + ], + "[Farm quote]Grows cookie plants from cookie seeds.": "Fait pousser des plants de cookies à partir de graines de cookies.", + "[Farm business name]Kitchen": "Cuisine", + "[Farm business quote]The more kitchens, the more cookies your employees can produce.": "Plus tu as de cuisines, plus tes employés peuvent produire de cookies.", + "Mine": "/", + "mine": "/", + "mines": "/", + "%1 mine": [ + "%1 mine", + "%1 mines" + ], + "[Mine quote]Mines out cookie dough and chocolate chips.": "Mine de la pâte à cookies et des pépites de chocolat.", + "[Mine business name]Secret recipe": "Recette secrète", + "[Mine business quote]These give you the edge you need to outsell those pesky competitors.": "T'offre l'avantage qu'il te faut pour vendre plus que tes concurrents.", + "Factory": "Usine", + "factory": "usine", + "factories": "usines", + "%1 factory": [ + "%1 usine", + "%1 usines" + ], + "[Factory quote]Produces large quantities of cookies.": "Produit des grandes quantités de cookies.", + "[Factory business name]Factory": "Usine", + "[Factory business quote]Mass production is the future of baking. Seize the day, and synergize!": "La production en masse est le futur de la pâtisserie. Profite du jour présent et synergise !", + "Bank": "Banque", + "bank": "banque", + "banks": "banques", + "%1 bank": [ + "%1 banque", + "%1 banques" + ], + "[Bank quote]Generates cookies from interest.": "Génère des cookies à partir des intérêts.", + "[Bank business name]Investor": "Investisseur", + "[Bank business quote]Business folks with a nose for profit, ready to finance your venture as long as there's money to be made.": "Des affairistes qui flairent les profits, prêts à financer ton entreprise tant qu'il y a de l'argent à faire.", + "Temple": "/", + "temple": "/", + "temples": "/", + "%1 temple": [ + "%1 temple", + "%1 temples" + ], + "[Temple quote]Full of precious, ancient chocolate.": "Plein de chocolat antique et précieux.", + "[Temple business name]Like": "J'aime", + "[Temple business quote]Your social media page is going viral! Amassing likes is the key to a lasting online presence and juicy advertising deals.": "Ta page sur les réseaux sociaux devient virale ! Amasser des j'aime est la clé d'une présence en ligne constante pour obtenir des accords publicitaires juteux.", + "Wizard tower": "Tour de mage", + "wizard tower": "tour de mage", + "wizard towers": "tours de mage", + "%1 wizard tower": [ + "%1 tour de mage", + "%1 tours de mage" + ], + "[Wizard tower quote]Summons cookies with magic spells.": "Invoque des cookies avec des sorts magiques.", + "[Wizard tower business name]Meme": "Mème", + "[Wizard tower business quote]Cookie memes are all the rage! With just the right amount of social media astroturfing, your brand image will be all over the cyberspace.": "Les mèmes de cookies sont à la mode ! Avec la bonne dose de faux avis sur les réseaux sociaux, ta marque sera omniprésente dans le cyberespace !", + "Shipment": "Cargaison", + "shipment": "cargaison", + "shipments": "cargaisons", + "%1 shipment": [ + "%1 cargaison", + "%1 cargaisons" + ], + "[Shipment quote]Brings in fresh cookies from the cookie planet.": "Apporte des cookies frais de la planète des cookies.", + "[Shipment business name]Supermarket": "Supermarché", + "[Shipment business quote]A gigantic cookie emporium - your very own retail chain.": "Un immense centre de vente de cookies... pour ta propre franchise de magasins.", + "Alchemy lab": "Labo d'alchimie", + "alchemy lab": "labo d'alchimie", + "alchemy labs": "labos d'alchimie", + "%1 alchemy lab": [ + "%1 labo d'alchimie", + "%1 labos d'alchimie" + ], + "[Alchemy lab quote]Turns gold into cookies!": "Transforme l'or en cookies !", + "[Alchemy lab business name]Stock share": "Action", + "[Alchemy lab business quote]You're officially on the stock market, and everyone wants a piece!": "Tu es officiellement coté en bourse, et tout le monde veut sa part !", + "Portal": "Portail", + "portal": "portail", + "portals": "portails", + "%1 portal": [ + "%1 portail", + "%1 portails" + ], + "[Portal quote]Opens a door to the Cookieverse.": "Ouvre un passage vers le cookievers.", + "[Portal business name]TV show": "Émission télé", + "[Portal business quote]Your cookies have their own sitcom! Hilarious baking hijinks set to the cheesiest laughtrack.": "Tes cookies ont leur propre feuilleton à base d'aventure culinaires hilarantes sur fond de rires en boîte !", + "Time machine": "Machine à voyager dans le temps", + "time machine": "machine à voyager dans le temps", + "time machines": "machines à voyager dans le temps", + "%1 time machine": [ + "%1 machine à voyager dans le temps", + "%1 machines à voyager dans le temps" + ], + "[Time machine quote]Brings cookies from the past, before they were even eaten.": "Ramène des cookies du passé, avant même qu'ils soient mangés.", + "[Time machine business name]Theme park": "Parc d'attractions", + "[Time machine business quote]Cookie theme parks, full of mascots and roller-coasters. Build one, build a hundred!": "Parc sur le thème des cookies, plein de mascottes et de montagnes russes. Construis-en un, construis-en cent !", + "Antimatter condenser": "Condenseur d'antimatière", + "antimatter condenser": "condenseur d'antimatière", + "antimatter condensers": "condenseurs d'antimatière", + "%1 antimatter condenser": [ + "%1 condenseur d'antimatière", + "%1 condenseurs d'antimatière" + ], + "[Antimatter condenser quote]Condenses the antimatter in the universe into cookies.": "Condense l'antimatière de l'univers pour en faire des cookies.", + "[Antimatter condenser business name]Cookiecoin": "Cookiecoin", + "[Antimatter condenser business quote]A virtual currency, already replacing regular money in some small countries.": "Une monnaie virtuelle, qui remplace déjà l'argent liquide dans certains petits pays.", + "Prism": "Prisme", + "prism": "prisme", + "prisms": "prismes", + "%1 prism": [ + "%1 prisme", + "%1 prismes" + ], + "[Prism quote]Converts light itself into cookies.": "Convertit la lumière elle-même en cookies.", + "[Prism business name]Corporate country": "Pays entreprise", + "[Prism business quote]You've made it to the top, and you can now buy entire nations to further your corporate greed. Godspeed.": "Tu es au sommet, maintenant, tu peux acheter des pays entiers pour satisfaire l'avidité de ton entreprise. Que rien ne t'arrête.", + "Chancemaker": "Porte-bonheur", + "chancemaker": "porte-bonheur", + "chancemakers": "porte-bonheur", + "%1 chancemaker": [ + "%1 porte-bonheur", + "%1 porte-bonheur" + ], + "[Chancemaker quote]Generates cookies out of thin air through sheer luck.": "Génère des cookies à partir du vide grâce à la pure chance.", + "[Chancemaker business name]Privatized planet": "Planète privatisée", + "[Chancemaker business quote]Actually, you know what's cool? A whole planet dedicated to producing, advertising, selling, and consuming your cookies.": "En fait, tu sais ce qui serait bien ? Une planète entière dédiée à la production, la publicité, la vente et la consommation de tes cookies.", + "Fractal engine": "Moteur fractal", + "fractal engine": "moteur fractal", + "fractal engines": "moteurs fractals", + "%1 fractal engine": [ + "%1 moteur fractal", + "%1 moteurs fractals" + ], + "[Fractal engine quote]Turns cookies into even more cookies.": "Transforme des cookies en d'autres cookies.", + "[Fractal engine business name]Senate seat": "Siège au sénat", + "[Fractal engine business quote]Only through political dominion can you truly alter this world to create a brighter, more cookie-friendly future.": "Seule la domination politique peut te permettre de modifier le monde pour faire advenir des lendemains qui chantent favorables aux cookies.", + "Javascript console": "Console javascript", + "javascript console": "console javascript", + "javascript consoles": "consoles javascript", + "%1 javascript console": [ + "%1 console javascript", + "%1 consoles javascript" + ], + "[Javascript console quote]Creates cookies from the very code this game was written in.": "Crée des cookies à partir du langage même dans lequel ce jeu est écrit.", + "[Javascript console business name]Doctrine": "Doctrine", + "[Javascript console business quote]Taking many forms -religion, culture, philosophy- a doctrine may, when handled properly, cause a lasting impact on civilizations, reshaping minds and people and ensuring all future generations share a singular goal - the production, and acquisition, of more cookies.": "Quelle que soit la forme qu'elle prend, religion, culture, ou philosophie, une doctrine peut, utilisée à bon escient, avoir un impact durable sur les civilisations, formant les esprits et les gens pour s'assurer que les générations futures partagent un but unique... la production et l'acquisition de plus de cookies.", + "Idleverse": "Veillevers", + "idleverse": "veillevers", + "idleverses": "veillevers", + "%1 idleverse": [ + "%1 veillevers", + "%1 veillevers" + ], + "[Idleverse quote]There's been countless other idle universes running alongside our own. You've finally found a way to hijack their production and convert whatever they've been making into cookies!": "Il y a une infinité (dénombrable) d'univers en veille parallèles au tien. Tu as enfin trouvé le moyen de pirater leur production en convertissant tout ce qu'ils fabriquent en cookies !", + "[Idleverse business name]Lateral expansions": "Extensions latérales", + "[Idleverse business quote]Sometimes the best way to keep going up is sideways. Diversify your ventures through non-cookie investments.": "Parfois, le meilleur moyen de continuer à monter consiste à aller sur les côtés. Diversifie tes entreprises avec des investissements hors cookies.", + "Cortex baker": "Cortex pâtissier", + "cortex baker": "cortex pâtissier", + "cortex bakers": "cortex pâtissiers", + "%1 cortex baker": [ + "%1 cortex pâtissier", + "%1 cortex pâtissiers" + ], + "[Cortex baker quote]These artificial brains the size of planets are capable of simply dreaming up cookies into existence. Time and space are inconsequential. Reality is arbitrary.": "Ces cerveaux artificiels de la taille d'une planète sont capables de simplement créer des cookies par la force de leur pensée. L'espace et le temps sont sans importance. La réalité est arbitraire.", + "[Cortex baker business name]Think tank": "Groupe de réflexion", + "[Cortex baker business quote]There's only so many ways you can bring in more profit. Or is there? Hire the most brilliant experts in the known universe and let them scrape their brains for you!": "Il n'y a qu'un nombre limité de manières de générer plus de profit. Non ? Recrutez les experts les plus brillants de l'univers connu et laissez-les se creuser les méninges pour vous !", + "CpS": "/", + "cookies/click": "cookies/clic", + "%1 CpS": "/", + "golden cookie gains": "gains de cookie doré", + "golden cookie frequency": "fréquence des cookies dorés", + "golden cookie duration": "durée des cookies dorés", + "golden cookie effect duration": "durée des effets des cookies dorés", + "wrath cookie gains": "gains de cookie de colère", + "wrath cookie frequency": "fréquence des cookies de colère", + "wrath cookie duration": "durée des cookies de colère", + "wrath cookie effect duration": "durée des effets des cookies de colère", + "reindeer gains": "gains de renne", + "reindeer frequency": "fréquence des rennes", + "reindeer duration": "durée des rennes", + "random drops": "apparitions aléatoires", + "milk effects": "effets de lait", + "wrinkler spawn rate": "taux d'apparition des rideux", + "wrinkler appetite": "appétit des rideux", + "upgrade costs": "coût des améliorations", + "building costs": "coût des bâtiments", + "Clicking is %1% more powerful.": "Les clics sont %1 % plus puissants.", + "All cookie production multiplied by %1.": "L'ensemble de la production de cookies est multiplié par %1.", + "+%1 CpS": "/", + "+%1% base CpS.": "+ %1 % de CpS de base.", + "%1 are twice as efficient.": "%1 sont deux fois plus efficaces.", + "%1 are %2% more powerful.": "%1 sont %2 % plus puissants.", + "Unshackled! +%1% extra production.": "Débridé(e)s ! +%1 % de production supplémentaire.", + "Tiered upgrades for %1 provide an extra +%2% production.
Only works with unshackled upgrade tiers.": "Les améliorations à paliers de %1 fournissent +%2 % de production supplémentaire.
Ne fonctionne qu'avec les paliers d'amélioration débridés.", + "Unshackles all %1-tier upgrades, making them more powerful.
Only applies to unshackled buildings.": "Débride toutes les améliorations à palier %1, les rendant plus puissantes.
S'applique uniquement aux constructions débridées.", + "The mouse and cursors are twice as efficient.": "La souris et les curseurs sont deux fois plus efficaces.", + "The mouse and cursors gain +%1 cookies for each non-cursor building owned.": "La souris et les curseurs gagnent +%1 cookies pour chaque construction possédée hors curseurs.", + "Grandmas gain +%1% CpS for each non-grandma building.": "Les grand-mères gagnent + %1 % CpS pour chaque construction hors grand-mères.", + "You gain more CpS the more milk you have.": "Tu gagnes plus de CpS plus tu as de lait.", + "Milk is %1% more powerful.": "Le lait est %1 % plus puissant.", + "Cookie production multiplier +%1%.": "Multiplicateur de production de cookies +%1 %.", + "Cookie production multiplier +%1% permanently.": "Multiplicateur de production de cookies +%1 % permanents.", + "Cookie production multiplier +%1% per Santa's levels.": "Multiplicateur de production de cookies +%1 % par niveau du Père Noël.", + "Cookie production multiplier +%1% for every year Cookie Clicker has existed (currently: +%2%).": "Multiplicateur de production de cookies +%1 % pour chaque année d'existence de Cookie Clicker (actuellement : +%2 %).", + "Cookie production multiplier +%1% for every building type level %2 or higher.": "Multiplicateur de production de cookies +%1 % pour chaque type de construction de niveau %2 ou plus.", + "Clicking gains +%1% of your CpS.": "Cliquer fait gagner +%1 % à ton CpS.", + "%1 gain +%2% CpS per %3.": "%1 gagne +%2 % CpS par %3.", + "Multiplies the gain from %1 by %2.": "Multiplie les gains de %1 par %2.", + "Grandma-operated science lab and leisure club.
Grandmas are 4 times as efficient.
Regularly unlocks new upgrades.": "Laboratoire scientifique et club de loisirs fonctionnant grâce aux grand-mères.
Les grand-mères sont 4 fois plus efficaces.
Débloque régulièrement de nouvelles améliorations.", + "Each %1 gains +%2 base CpS per %3.": "Chaque %1 fait gagner +%2 CpS de base par %3.", + "Note: the grandmothers are growing restless. Do not encourage them.": "Note : les grand-mères commencent à s'agiter. Ne les encourage pas.", + "Note: proceeding any further in scientific research may have unexpected results. You have been warned.": "Note : poursuivre plus loin les recherches scientifiques pourrait produire des résultats inattendus. On t'aura prévenu.", + "Note: this is a bad idea.": "Note : c'est une mauvaise idée.", + "Warning: purchasing this will have unexpected, and potentially undesirable results!
It's all downhill from here. You have been warned!

Purchase anyway?": "Avertissement : cet achat pourrait produire des résultats inattendus, et potentiellement négatifs !
Ça ne peut plus qu'empirer à partir de maintenant. On t'aura prévenu !

Acheter quand même ?", + "Contains the wrath of the elders, at least for a while.": "Jugule la colère des anciennes, au moins pour un moment.", + "Puts a permanent end to the elders' wrath, at the cost of %1% of your CpS.": "Met définitivement fin à la colère des anciennes, contre %1 % de tes CpS.", + "You will get %1% of your CpS back, but the grandmatriarchs will return.": "Tu récupèreras %1 % de tes CpS, mais les grand-matriarches reviendront.", + "Time remaining until pledge runs out:": "Temps restant avant la fin de l'engagement :", + "You haven't pledged to the elders yet.": "Tu n'as pas encore formulé d'engagement auprès des anciennes.", + "You've pledged to the elders %1 times.": [ + "Tu as décidé de t'engager auprès des anciennes une fois.", + "Tu as décidé de t'engager auprès des anciennes %1 fois." + ], + "Research takes only 5 seconds.": "La recherche prend seulement 5 secondes.", + "Golden cookies appear twice as often and stay twice as long.": "Les cookies dorés apparaissent deux fois plus souvent et restent deux fois plus longtemps.", + "Golden cookies appear %1% more often.": "Les cookies dorés apparaissent %1 % plus souvent.", + "Golden cookies appear %1% more often during %2.": "Les cookies dorés apparaissent %1 % plus souvent pendant %2.", + "Golden cookies appear really often.": "Les cookies dorés apparaissent vraiment souvent.", + "Golden cookie effects last twice as long.": "Les effets des cookies dorés durent deux fois plus longtemps.", + "Golden cookie effects last %1% longer.": "Les effets des cookies dorés durent %1 % plus longtemps.", + "Golden cookies stay %1% longer.": "Les cookies dorés restent %1 % plus longtemps.", + "Golden cookies give %1% more cookies.": "Les cookies dorés donnent %1 % plus de cookies.", + "Wrath cookies give %1% more cookies.": "Les cookies de colère donnent %1 % plus de cookies.", + "+%1% CpS per golden cookie on-screen, multiplicative.": "+%1 % CpS par cookie doré à l'écran, multiplicatif.", + "With no buffs and no golden cookies on screen, selling your most powerful building has %1% chance to summon one.": "En l'absence de buffs ou de cookies dorés à l'écran, vendre ta construction la plus puissante offre %1 % de chances d'en invoquer un.", + "Confers various powers to your minigames while active.
See the bottom of each minigame for more details.": "Confère divers pouvoirs à tes mini-jeux lorsqu'il est actif.
Voir au bas de chaque mini-jeu pour plus de détails.", + "Elder pledges last twice as long.": "Les engagements auprès des anciennes durent deux fois plus longtemps.", + "Can toggle upgrades on and off at will in the stats menu.": "Peut activer ou non les améliorations à volonté dans le menu des statistiques.", + "You keep producing cookies even while the game is closed.": "Tu continues à produire des cookies même quand le jeu est fermé.", + "Unlocks %1% of the potential of your prestige level.": "Débloque %1 % du potentiel de ton niveau de prestige.", + "Subsequent research will be %1 times as fast.": "Les recherches suivantes seront %1 fois plus rapides.", + "Wrinklers appear %1 times as fast.": "Les rideux apparaissent %1 fois plus rapidement.", + "Wrinklers spawn much more frequently.": "Les rideux apparaissent nettement plus fréquemment.", + "Wrinklers explode into %1% more cookies.": "Les rideux explosent pour donner %1 % plus de cookies.", + "Unlocks... something.": "Débloque... quelque chose.", + "In the festive hat, you find...": "Dans le chapeau festif, tu trouves...", + "a festive test tube
and %1.": "une éprouvette festive
et %1.", + "Cost scales with CpS.": "Le coût est proportionnel aux CpS.", + "Cost scales with Santa level.": "Le coût est proportionnel au niveau de Père Noël.", + "Cost scales with how many eggs you own.": "Le coût est proportionnel au nombre d'œufs que tu possèdes.", + "Reindeer appear %1% more often.": "Les rennes apparaissent %1 % plus souvent.", + "Reindeer appear twice as frequently.": "Les rennes apparaissent deux fois plus souvent.", + "Reindeer are twice as slow.": "Les rennes sont deux fois plus lents.", + "Reindeer give twice as much.": "Les rennes donnent deux fois plus.", + "Buildings sell back for %1% instead of %2%.": "Les constructions se revendent pour %1 % au lieu de %2 %.", + "All buildings are %1% cheaper.": "Toutes les constructions sont %1 % moins chères.", + "All upgrades are %1% cheaper.": "Toutes les améliorations sont %1 % moins chères.", + "All buildings and upgrades are %1% cheaper.": "Toutes les constructions et améliorations sont %1 % moins chères.", + "%1 are %2% more efficient and %3% cheaper.": "%1 sont %2 % plus efficaces et coûtent %3 % en moins.", + "Cookie upgrades are %1 times cheaper.": "Les améliorations de cookies sont %1 fois moins chères.", + "Random drops are %1% more common.": "Les apparitions aléatoires sont %1 % plus fréquentes.", + "Reindeer spawn much more frequently.": "Les rennes apparaissent beaucoup plus fréquemment.", + "Allows you to trigger seasonal events at will, for a price.": "Permet de déclencher des évènements saisonniers à volonté contre paiement.", + "Triggers %1 season for the next 24 hours.
Triggering another season will cancel this one.
Cost scales with unbuffed CpS and increases with every season switch.": "Déclenche la saison %1 pour les prochaines 24 h.
Déclencher une autre saison annulera celle-ci.
Le coût est proportionnel aux CpS et augmente avec chaque changement de saison.", + "Click again to cancel season": "Clique à nouveau pour annuler la saison", + "Seasons now last forever.": "Les saisons durent pour toujours, désormais.", + "You haven't switched seasons this ascension yet.": "Tu n'as pas encore changé de saison au cours de cette ascension.", + "You've switched seasons once this ascension.": "Tu as changé de saison une fois au cours de cette ascension.", + "You've switched seasons %1 times this ascension.": "Tu as changé de saison %1 fois au cours de cette ascension.", + "Cookie production multiplied by 1,000.": "Production de cookies 1 000 fois plus grande.", + "Other eggs appear %1% more frequently.": "Les autres œufs apparaissent %1 % plus souvent.", + "Contains a lot of cookies.": "Contient beaucoup de cookies.", + "The egg bursts into %1 cookies!": "L'œuf éclate et donne %1 cookies !", + "You found an egg!": "Tu as trouvé un œuf !", + "Eggs drop %1% more often.": "Les œufs apparaissent %1 % plus souvent.", + "Christmas cookies drop %1% more often.": "Les cookies de Noël apparaissent %1 % plus souvent.", + "Spooky cookies drop %1% more often.": "Les cookies effrayants apparaissent %1 % plus souvent.", + "Heart cookies are %1% more powerful.": "Les cookies cœur sont %1 % plus puissants.", + "You continually gain more CpS the longer you've played in the current ascension.": "Tu gagnes continuellement davantage de CpS plus tu as joué longtemps au cours de l'ascension actuelle.", + "Contains an assortment of fancy biscuits.": "Contient un assortiment de biscuits chics.", + "Contains an assortment of macarons.": "Contient un assortiment de macarons.", + "Contains an assortment of popular biscuits.": "Contient un assortiment de biscuits populaires.", + "Contains an assortment of rich butter cookies.": "Contient un assortiment de cookies riches en beurre.", + "Contains an assortment of delicious pastries.": "Contient un assortiment de délicieuses pâtisseries.", + "Contains an assortment of...something.": "Contient un assortiment de... quelque chose.", + "Placing an upgrade in this slot will make its effects permanent across all playthroughs.": "Placer une amélioration à cet emplacement rendra ses effets permanents pour toutes les parties.", + "Current boost:": "Boost actuel :", + "Current:": "Actuel :", + "Click to activate.": "Clique pour activer.", + "Pick an upgrade to make permanent": "Choisis une amélioration à rendre permanente", + "Here are all the upgrades you've purchased last playthrough.
Pick one to permanently gain its effects!
You can reassign this slot anytime you ascend.": "Voici toutes les améliorations que tu as achetées au cours de la partie précédente.
Choisis-en une pour bénéficier de ses effets en permanence !
Tu peux modifier cet emplacement à chaque ascension.", + "You now keep making cookies while the game is closed, at the rate of %1% of your regular CpS and up to 1 hour after the game is closed.
(Beyond 1 hour, this is reduced by a further %2% - your rate goes down to %3% of your CpS.)": "Tu peux désormais continuer à faire des cookies une fois que le jeu est fermé, au rythme de %1 % de tes CpS moyens et jusqu'à 1 heure après avoir quitté le jeu.
(Après 1 heure, ce taux est encore réduit de %2 % - et descend jusqu'à %3 % de tes CpS.)", + "You gain another +%1% of your regular CpS while the game is closed.": "Tu gagnes encore +%1 % de tes CpS normaux quand le jeu est fermé.", + "You gain another +%1% of your regular CpS while the game is closed, for a total of %2%.": "Tu gagnes encore +%1 % de tes CpS normaux quand le jeu est fermé, pour un total de %2 %.", + "You start with %1.": "Tu commences avec %1.", + "Allows you to purchase a crumbly egg once you have earned 1 million cookies.": "Te permet d'acheter un œuf croustillant une fois que tu as gagné 1 million de cookies.", + "Unlocks the cookie dragon egg.": "Débloque l'œuf de dragon de cookie.", + "Synergy upgrades are %1% cheaper.": "Les améliorations de synergie sont %1 % moins chères.", + "You retain optimal cookie production while the game is closed for %1 more days.": "Tu maintiens une production de cookies optimale quand le jeu est fermé pendant %1 jours de plus.", + "You retain optimal cookie production while the game is closed for twice as long, for a total of %1.": "Tu maintiens une production de cookies optimale quand le jeu est fermé pendant deux fois plus longtemps, pour un total de %1.", + "Unlocks the golden switch, which passively boosts your CpS by %1% but disables golden cookies.": "Débloque le permutateur doré, qui augmente passivement tes CpS de %1 % mais désactive les cookies dorés.", + "Turning this on will give you a passive +%1% CpS, but prevents golden cookies from spawning.
Cost is equal to 1 hour of production.": "Activer ceci offre passivement + %1 % de CpS, mais empêche les cookies dorés d'apparaître.
Le coût est égal à une heure de production.", + "The switch is currently giving you a passive +%1% CpS; it also prevents golden cookies from spawning.
Turning it off will revert those effects.
Cost is equal to 1 hour of production.": "Le permutateur t'offre actuellement +%1 % de CpS de manière passive, mais empêche aussi les cookies dorés d'apparaître.
L'éteindre mettra fin à ces effets.
Le coût est égal à une heure de production.", + "Unlocks the milk selector, letting you pick which milk is displayed under your cookie.
Comes with a variety of basic flavors.": "Débloque le sélecteur de lait, te laissant choisir quel lait est affiché sous ton cookie.
Est fourni avec divers parfums de base.", + "Contains more exotic flavors for your milk selector.": "Contient de nouveaux parfums exotiques pour ton sélecteur de lait.", + "Lets you pick what flavor of milk to display.": "Te permet de choisir quel parfum de lait afficher.", + "Unlocks the golden cookie sound selector, which lets you pick whether golden cookies emit a sound when appearing or not.": "Débloque le sélecteur de son de cookie doré, qui te permet de choisir si les cookies dorés produisent un son en apparaissant ou non.", + "Lets you change the sound golden cookies make when they spawn.": "Permet de changer le son que les cookies dorés produisent en apparaissant.", + "No sound": "Pas de son", + "Chime": "Tintement", + "Fortune": "/", + "Cymbal": "Cymbale", + "Squeak": "Couinement", + "Unlocks the jukebox, which allows you to play through every sound file in the game.": "Débloque le juke-box, qui te permet de lire chaque fichier son du jeu.", + "Play through the game's sound files!": "Lis les fichiers son du jeu !", + "Play": "Lecture", + "Stop": "Arrêt", + "Pause": "/", + "Shuffle": "Lecture aléatoire", + "Auto": "/", + "Loop": "Boucle", + "Unlocks the background selector, letting you select the game's background.
Comes with a variety of basic flavors.": "Débloque le sélecteur d'arrière-plan, qui te permet de choisir le fond d'écran du jeu.
Est fourni avec divers parfums de base.", + "Lets you pick which wallpaper to display.": "Permet de choisir le fond d'écran à afficher.", + "This is the first heavenly upgrade; it unlocks the Heavenly chips system.
Each time you ascend, the cookies you made in your past life are turned into heavenly chips and prestige.
Heavenly chips can be spent on a variety of permanent transcendental upgrades.
Your prestige level also gives you a permanent +1% CpS per level.": "C'est la première amélioration céleste, débloquant le système des pépites célestes.
À chaque ascension, les cookies fabriqués lors de ta vie précédente sont transformés en pépites célestes et en prestige.
Les pépites célestes peuvent être dépensées pour diverses améliorations transcendentales permanentes.
Chaque niveau de prestige t'offre également +1 % de CpS permanents en plus.", + "You can attract %1 more wrinklers.": "Tu peux attirer%1 rideux de plus.", + "While the golden switch is on, you gain an additional +%1% CpS per golden cookie upgrade owned.": "Quand le permutateur doré est allumé, tu gagnes +%1  % de CpS par amélioration de cookie doré possédée.", + "All upgrades are %1% cheaper per %2.": "Toutes les améliorations sont %1 % moins chères par %2.", + "Unlocks a new tier of upgrades that affect 2 buildings at the same time.
Synergies appear once you have %1 of both buildings.": "Débloque un nouveau palier d'améliorations affectant 2 constructions à la fois.
Les synergies apparaissent une fois que tu possèdes %1 des deux constructions.", + "Golden cookies (and all other things that spawn, such as reindeer) have %1% chance of being doubled.": "Les cookies dorés (et tous les autres éléments qui apparaissent, comme les rennes) ont %1 % de chances d'être doublés.", + "Cookie production reduced to 0.": "Production de cookies réduite à 0.", + "Sugar lumps coalesce a whole lot faster.": "Les morceaux de sucre se forment beaucoup plus vite.", + "+%1% prestige level effect on CpS.": "+%1 % d'effet du niveau de prestige sur les CpS.", + "+%1% prestige level effect on CpS.
+%2% golden cookie effect duration.
+%3% golden cookie lifespan.": "+%1 % d'effet du niveau de prestige sur les CpS.
+%2 % de durée d'effet des cookies dorés.
+%3 % de durée de vie des cookies dorés.", + "Each unspent sugar lump (up to %1) gives +%2% CpS.
Note: this means that spending sugar lumps will decrease your CpS until they grow back.
": "Chaque morceau de sucre non dépensé (jusqu'à %1) donne +%2 % de CpS.
Note : cela signifie que dépenser tes morceaux de sucre réduira tes CpS jusqu'à ce qu'ils se reforment.
", + "Once an ascension, you may use the \"Sugar frenzy\" switch to triple your CpS for 1 hour, at the cost of 1 sugar lump.": "Une fois par ascension, tu pourras utiliser le permutateur « frénésie sucrée » pour tripler tes CpS pendant une heure, ce qui te coûte 1 morceau de sucre.", + "Each grandma (up to %1) makes sugar lumps ripen %2 sooner.": "Chaque grand-mère (jusqu'à %1) fait mûrir les morceaux de sucre %2 plus vite.", + "Activating this will triple your CpS for 1 hour, at the cost of 1 sugar lump.": "Activer cette option triple tes CpS pendant 1 heure et te coûte 1 morceau de sucre.", + "May only be used once per ascension.": "Ne peut être utilisée qu'une fois par ascension.", + "activate the sugar frenzy": "activer la frénésie sucrée", + "Sugar frenzy!": "Frénésie sucrée !", + "CpS x%1 for 1 hour!": "CpS x%1 pendant une heure !", + "Garden plants grow every second.
Garden seeds are free to plant.
You can switch soils at any time.": "Les plantes du jardin poussent à chaque seconde.
Les graines du jardin ne coûtent rien à planter.
Tu peux changer de terre à n'importe quel moment.", + "Dropped by %1.": "Donné par %1.", + "Dropped by %1 plants.": "Donné par les plantes %1.", + "Must own the %1 upgrade.": "Il faut posséder l'amélioration %1.", + "Sugar lumps are twice as likely to be unusual.": "Les morceaux de sucre ont deux fois plus de chances d'être inhabituels.", + "+%1% sugar lump growth.": "+%1 % de croissance des morceaux de sucre.", + "Sugar lumps ripen %1 sooner.": "Les morceaux de sucre mûrissent %1 plus tôt.", + "Sugar lumps mature %1 sooner.": "Les morceaux de sucre s'affinent %1 plus tôt.", + "Bifurcated sugar lumps appear %1% more often and are %2% more likely to drop 2 lumps.": "Les morceaux de sucre dédoublés apparaissent %1 % plus souvent et sont %2 % plus susceptibles de donner 2 morceaux.", + "Mouse over a wrinkler to see how many cookies are in its stomach.": "Passe la souris sur un rideux pour voir combien de cookies il a dans l'estomac.", + "Unlocks the Buy all feature, which lets you instantly purchase every upgrade in your store (starting from the cheapest one).
Also unlocks the Vault, a store section where you can place upgrades you do not wish to auto-buy.": "Débloque l'option Acheter toutes les améliorations, qui permet d'acheter instantanément toutes les améliorations disponibles dans ta boutique (en commençant par la moins chère).
Débloque également le coffre, une partie de la boutique où tu peux placer les améliorations que tu ne veux pas acheter automatiquement.", + "Mouse over an upgrade to see its tier.
Note: only some upgrades have tiers. Tiers are purely cosmetic and have no effect on gameplay.": "Passe la souris sur une amélioration pour voir son palier.
Note : seules certaines améliorations comportent des paliers. Ceux-ci sont purement cosmétiques et n'influencent pas le jeu.", + "You now benefit from the boost provided by heralds.
Each herald gives you +1% CpS.
Look on the purple flag at the top to see how many heralds are active at any given time.": "Tu bénéficies désormais de l'augmentation fournie par les hérauts.
Chaque héraut te donne +1 % CpS.
Regarde le drapeau violet au sommet, pour voir combien de hérauts sont actifs à tout moment.", + "Seasonal random drops have a 1/5 chance to carry over through ascensions.": "Les apparitions aléatoires saisonnières ont 1 chance sur 5 d'être transmises d'une ascension à l'autre.", + "Unlocks extra price information.
Each displayed cost now specifies how long it'll take you to afford it, and how much of your bank it represents.": "Débloque des informations supplémentaires sur les coûts.
Chaque coût affiché indique désormais combien de temps il te faudra pour te permettre l'achat, et quelle proportion de ta banque il représente.", + "Unlocks the shimmering veil, a switch that passively boosts your CpS by %1%.
You start with the veil turned on; however, it is very fragile, and clicking the big cookie or any golden cookie or reindeer will turn it off, requiring %2 of CpS to turn back on.": "Débloque le voile scintillant, un permutateur qui augmente passivement tes CpS de %1 %.
Tu commences avec le voile activé, mais il est cependant très fragile, et en cliquant sur le gros cookie ou n'importe quel cookie doré ou renne, il sera désactivé et requiert %2 de CpS pour être réactivé.", + "Boosts your cookie production by %1% when active.
The veil is very fragile and will break if you click the big cookie or any golden cookies or reindeer.

Once broken, turning the veil back on costs %2 of unbuffed CpS.": "Augmente ta production de cookies de %1 % lorsqu'il est actif.
Le voile est très fragile et se déchirera si tu cliques sur un gros cookie, un cookie doré ou un renne.

Une fois déchiré, réactiver le voile coûte %2 de tes CpS hors augmentations.", + "Has a %1% chance to not break.": "Offre %1 % de chances de ne pas se déchirer.", + "The shimmering veil is more resistant, and has a %1% chance not to break. It also gives +%2% more CpS.": "Le voile scintillant est plus résistant, offrant %1 % de chances de ne pas se déchirer. Il apporte également +%2 % de CpS en plus.", + "Active.": "Activé.", + "The reinforced membrane protects the shimmering veil.": "La membrane renforcée protège le voile scintillant.", + "The shimmering veil disappears...": "Le voile scintillant disparaît...", + "Prior to purchasing the %1 upgrade in a run, random drops are %2 times more common.": "Avant d'acheter l'amélioration %1 lors d'une partie, les apparitions aléatoires sont %2 fois plus fréquentes.", + "Never forget your %1.": "N'oublie jamais ton/ta %1.", + "Pay close attention to the humble %1.": "Fais très attention à l'humble %1.", + "You've been neglecting your %1.": "%1 n'a pas bénéficié d'assez de ton attention.", + "Remember to visit your %1 sometimes.": "Ce serait bien d'aller voir %1 de temps en temps.", + "You don't know what you have until you've lost it.": "On ne sait pas ce qu'on a tant qu'on ne l'a pas perdu.", + "Remember to take breaks.": "N'oublie pas de prendre des pauses.", + "Hey, what's up. I'm a fortune cookie.": "Hé, coucou. Je suis un biscuit de bonne aventure.", + "You think you have it bad? Look at me.": "Tu penses être dans la mouise ? Regarde-moi.", + "The news ticker may occasionally have fortunes, which may be clicked for something good.": "Le fil d'informations peut parfois présenter des bonnes aventures, sur lesquelles tu peux cliquer pour une bonne surprise.", + "Through clever accounting, this actually makes kitten upgrades %1% cheaper.": "Grâce à des astuces comptables, ceci peut rendre les améliorations de chaton %1 % moins chères.", + "Unlocks the ability to pet your dragon by clicking on it once hatched.": "Débloque la possibilité de caresser ton dragon en cliquant dessus une fois qu'il a éclos.", + "Cost scales with CpS, but %1 times cheaper with a fully-trained dragon.": "Le coût est proportionnel aux CpS, mais est %1 fois moins cher avec un dragon complètement entraîné.", + "Golden cookies may trigger a Dragon Harvest.": "Les cookies dorés peuvent déclencher une récolte de dragon.", + "Golden cookies may trigger a Dragonflight.": "Les cookies dorés peuvent déclencher un vol de dragon.", + "Dragon harvest and Dragonflight are %1% stronger.": "Les récoltes et vols de dragon sont renforcés de %1 %.", + "Kittens are %1% more effective.": "Les chatons sont %1 % plus efficaces.", + "Each kitten upgrade boosts %1 CpS by %2%.": "Chaque amélioration de chaton augmente le CpS de %1 de %2 %.", + "Each rank of milk boosts %1 CpS by %2%.": "Chaque rang de lait augmente le CpS de %1 de %2 %.", + "Cursor levels boost clicks by %1% each (up to cursor level %2).": "Les niveaux de curseur augmentent les clics de %1 % chacun (jusqu'au niveau de curseur %2).", + "%1 are now effective up to cursor level %2.": "%1 sont désormais efficaces jusqu'au niveau de curseur %2.", + "Seasonal cookies purchased: %1.": "Cookies saisonniers achetés : %1.", + "Reindeer cookies purchased: %1.": "Cookies rennes achetés : %1.", + "Eggs purchased: %1.": "Œufs achetés : %1.", + "Golden and wrath cookie effect duration +%1%.": "+ %1 % de durée des cookies dorés et de colère.", + "Golden and wrath cookies appear %1% more.": "%1 % d'apparitions de cookies dorés et de colère en plus.", + "Golden and wrath cookies appear %1% less.": "%1 % d'apparitions de cookies dorés et de colère en moins.", + "Buildings grant -%1% CpS.": "Les constructions entraînent - %1 % CpS.", + "Selling buildings triggers a buff boosted by how many buildings were sold.": "Vendre les constructions déclenche un buff boosté par le nombre de constructions vendues.", + "Buff boosts clicks by +%1% for every building sold for %2 seconds.": "Le buff augmente les clics de + %1 % pour chaque construction vendue pendant %2 secondes.", + "CpS bonus fluctuating between %1 and %2 over time.": "Le bonus de CpS fluctue entre %1 et %2 au fil du temps.", + "Effect cycles over %1 hours.": "Le cycle d'effet dure %1 heures.", + "Some seasonal effects are boosted.": "Certains effets saisonniers sont augmentés.", + "Large boost.": "Grande augmentation.", + "Medium boost.": "Augmentation moyenne.", + "Small boost.": "Petite augmentation.", + "Switching seasons is %1% pricier.": "Changer de saison coûte %1 % plus cher.", + "Switching seasons is %1% cheaper.": "Changer de saison coûte %1 % moins cher.", + "Heavenly chips have %1% less effect.": "Les pépites célestes ont %1 % d'effet en moins.", + "Buildings produce %1% more.": "Les constructions produisent %1 % en plus.", + "Buildings produce %1% less.": "Les constructions produisent %1 % en moins.", + "All golden cookies are wrath cookies with a greater chance of a negative effect.": "Tous les cookies dorés sont des cookies de colère avec une plus grande chance d'effet négatif.", + "Wrinklers appear %1% faster and digest %2% more cookies.": "Les rideux apparaissent %1 % plus vite et digèrent %2 % de cookies en plus.", + "Effect is only active when your total amount of buildings ends with 0.": "L'effet n'est activé que quand le nombre total de tes constructions se termine par 0.", + "Achievement unlocked": "Trophée débloqué", + "Make %1 just from %2.": "Fais %1 à partir de %2 seulement.", + "Bake %1 in one ascension.": "Cuis %1 en une seule ascension.", + "Bake %1 per second.": "Cuis %1 par seconde.", + "Have %1.": "Possède %1.", + "Ascend at least once.": "Effectue au moins une ascension.", + "Ascend %1 times.": "Effectue %1 ascensions.", + "Ascend with %1 baked.": "Effectue une ascension avec %1 cuits.", + "Make %1 by only having clicked %2 times.": "Fais %1 en n'ayant cliqué que %2 fois.", + "Make %1 with no cookie clicks.": "Fais %1 sans aucun clic sur un cookie.", + "Get to %1 baked with no upgrades purchased.": "Atteins %1 cuits sans améliorations achetées.", + "Get to %1 baked in %2.": "Atteins %1 cuits en %2.", + "Make %1 from clicking.": "Fais %1 en cliquant.", + "Sell a grandma.": "Vends une grand-mère.", + "Have at least %1 of every building.": "Possède au moins %1 exemplaires de chaque construction.", + "Have at least 1 of the most expensive object, 2 of the second-most expensive, 4 of the next and so on (capped at %1).": "Possède au moins 1 exemplaire de l'objet le plus cher, 2 du second plus cher, 4 du suivant et ainsi de suite (limité à %1).", + "Have at least 10 of the most expensive object, 20 of the second-most expensive, 30 of the next and so on.": "Possède au moins 10 exemplaires de l'objet le plus cher, 20 du second plus cher, 30 du suivant et ainsi de suite.", + "Click a golden cookie.": "Clique sur un cookie doré.", + "Click %1.": "Clique %1.", + "Hack in some cookies.": "Pirate des cookies.", + "Click really, really fast.": "Clique vraiment, vraiment vite.", + "Have at least %1 of everything.": "Possède au moins %1 exemplaire de tout.", + "Own %1.": "Possède %1.", + "Purchase %1.": "Achète %1.", + "Dunk the cookie.": "Trempe le cookie.", + "Appease the grandmatriarchs at least once.": "Apaise les grand-matriarches au moins une fois.", + "Appease the grandmatriarchs at least %1 times.": "Apaise les grand-matriarches au moins %1 fois.", + "Declare a covenant with the grandmatriarchs.": "Engage-toi auprès des grand-matriarches.", + "Own at least %1 grandma types.": "Possède au moins %1 types de grand-mère.", + "Unlock 100% of your heavenly chips power.": "Débloque 100 % de la puissance de tes pépites célestes.", + "You have 1 chance in %1 every second of earning this achievement.": "Tu as 1 chance sur %1 de remporter ce trophée à chaque seconde.", + "Burst 1 wrinkler.": "Éclate 1 rideux.", + "Burst %1 wrinklers.": "Éclate %1 rideux.", + "Unlock every Halloween-themed cookie.
Owning this achievement makes Halloween-themed cookies drop more frequently in future playthroughs.": "Débloque tous les cookies de thème d'Halloween.
Posséder ce trophée rend les apparitions de cookies de thème d'Halloween plus fréquentes lors des parties suivantes.", + "Reach Santa's 7th form.": "Atteins la 7ème forme du Père Noël.", + "Reach Santa's final form.": "Atteins la forme finale du Père Noël.", + "Unlock every Christmas-themed cookie.
Owning this achievement makes Christmas-themed cookies drop more frequently in future playthroughs.": "Débloque tous les cookies de thème de Noël.
Posséder ce trophée rend les apparitions de cookies de thème de Noël plus fréquentes lors des parties suivantes.", + "Pop 1 reindeer.": "Éclate 1 renne.", + "Pop %1 reindeer.": "Éclate %1 rennes.", + "Pop a reindeer during an elder frenzy.": "Éclate un renne pendant une frénésie des anciennes.", + "Unlock every Valentine-themed cookie.": "Débloque tous les cookies de thème Saint-Valentin.", + "Click the tiny cookie.": "Clique sur le cookie minuscule.", + "This is for baking %1 and making it on the local news.": "Pour avoir cuit %1 et ton apparition à la télévision locale.", + "Name yourself Orteil.
Note: usurpers incur a -%1% CpS penalty until they rename themselves something else.
": "Appelle-toi Orteil.
Note : les usurpateurs se voient infliger une pénalité de -%1 % CpS jusqu'à ce qu'ils changent leur nom.
", + "Use an add-on.": "Utilise un module complémentaire.", + "Unlock 1 egg.": "Débloque 1 œuf.", + "Unlock %1 eggs.": "Débloque %1 œufs.", + "Unlock all the eggs.
Owning this achievement makes eggs drop more frequently in future playthroughs.": "Débloque tous les œufs.
Posséder ce trophée rend les apparitions d'œufs plus fréquentes lors des parties suivantes.", + "Give your bakery a name.": "Donne un nom à ta pâtisserie.", + "Click this achievement's slot.": "Clique sur l'emplacement de ce trophée.", + "Complete your dragon's training.": "Achève l'entraînement de ton dragon.", + "Click on the news ticker %1 times.": "Clique %1 fois sur le fil d'informations.", + "Own a combined %1 %2 and %3.": "Possède %1 %2 et %3 combinés.", + "Own %1 upgrades and %2 buildings.": "Possède %1 améliorations et %2 constructions.", + "Own %1 heavenly upgrades.": "Possède %1 améliorations célestes. ", + "Burst the near-extinct shiny wrinkler.": "Éclate le rideux brillant en voie de disparition.", + "Click a golden cookie less than 1 second after it spawns.": "Clique sur un cookie doré moins d'1 seconde après son apparition.", + "Click a golden cookie less than 1 second before it dies.": "Clique sur un cookie doré moins d'1 seconde avant qu'il ne meure.", + "Harvest %1 coalescing sugar lumps.": "Récolte %1 morceaux de sucre en cours de formation.", + "Successfully harvest a coalescing sugar lump before it's ripe.": "Réussis à récolter un morceau de sucre en cours de formation avant qu'il soit mûr.", + "Harvest a bifurcated sugar lump.": "Récolte un morceau de sucre dédoublé.", + "Harvest a golden sugar lump.": "Récolte un morceau de sucre doré.", + "Harvest a meaty sugar lump.": "Récolte un morceau de sucre charnu.", + "Harvest a caramelized sugar lump.": "Récolte un morceau de sucre caramélisé.", + "Reach level %1 %2.": "Atteins le niveau %1 %2.", + "Cast %1 spells.": "Lance %1 sorts.", + "Have %1 golden cookies simultaneously.": "Possède %1 cookies dorés simultanément.", + "Manage a cookie legacy for at least a year.": "Gère un héritage de cookies pendant au moins un an.", + "Harvest %1 mature garden plants.": "Récolte %1 plantes du jardin à maturation.", + "Fill every tile of the biggest garden plot with plants.": "Remplis chaque case de la plus grande parcelle du jardin avec des plantes.", + "Unlock every garden seed.": "Débloque toutes les graines du jardin.", + "Convert a complete seed log into sugar lumps by sacrificing your garden to the sugar hornets.
Owning this achievement makes seeds %1% cheaper, plants mature %2% sooner, and plant upgrades drop %3% more.": "Convertis tout un registre de graines en morceaux de sucre en sacrifiant ton jardin aux frelons sucriers.
Posséder ce trophée rend les graines %1 % moins chères, les plantes arrivent à maturation %2 % plus tôt, et les améliorations de plantes apparaissent %3 % plus souvent.", + "Ascend with exactly %1.": "Effectue une ascension avec exactement %1.", + "Have your reinforced membrane protect the shimmering veil.": "Utilise ta membrane renforcée pour protéger le voile scintillant.", + "Own every fortune upgrade.
Owning this achievement makes fortunes appear twice as often; unlocked fortune upgrades also have a %1% chance to carry over after ascending.": "Possède chaque amélioration de bonne aventure.
Posséder ce trophée fait apparaître les bonnes aventures deux fois plus souvent, et les améliorations de bonne aventure débloquées ont aussi %1 % de chances d'être conservées après une ascension.", + "Make your first stock market profit.": "Réalise ton premier profit sur le marché boursier.", + "Own at least %1 of a stock market good.": "Possède au moins %1 d'un bien sur le marché boursier.", + "Own at least %1 of every stock market good.": "Possède au moins %1 de chaque bien sur le marché boursier.", + "Make a day of CpS ($%1) in 1 stock market sale.": "Produis une journée de CpS (%1 $) en 1 vente sur le marché boursier.", + "Spend a day of CpS ($%1) in 1 stock market purchase.": "Dépense une journée de CpS (%1 $) en un achat sur le marché boursier.", + "Have your stock market profits surpass a whole year of CpS ($%1).": "Produis des bénéfices sur le marché boursiers dépassant une année entière de tes CpS (%1 $).", + "Unlock the highest-tier stock market headquarters.": "Débloque le plus haut palier du quartier général de la bourse.", + "Have your stock market profits surpass $%1.": "Produis des bénéfices boursiers dépassant %1 $.", + "Own %1 kitten upgrades.": "Possède %1 améliorations de chatons.", + "Find the forgotten madeleine.": "Trouve la madeleine oubliée.", + "Click one of Santa's helper grandmas during Christmas season.": "Clique sur une des grand-mères assistantes du Père Noël pendant la saison de Noël.", + "Frenzy": "Frénésie", + "Elder frenzy": "Frénésie des anciennes", + "Click frenzy": "Frénésie de clics", + "Clot": "Caillot", + "Dragon Harvest": "Récolte de dragon", + "Everything must go": "Tout doit disparaître", + "Cursed finger": "Doigt maudit", + "Cookie storm": "Tempête de cookies", + "Sugar blessing": "Bénédiction sucrée", + "Haggler's luck": "Chance du marchandeur", + "Haggler's misery": "Misère du marchandeur", + "Crafty pixies": "Lutins rusés", + "Nasty goblins": "Vilains gobelins", + "Magic adept": "Adepte magique", + "Magic inept": "Inepte magique", + "Devastation": "Dévastation", + "Sugar frenzy": "Frénésie sucrière", + "Loan %1": "Prêt %1", + "Loan %1 (interest)": "Prêt %1 (intérêts)", + "%1 Power!": "Pouvoir de %1 !", + "%1 Burden!": "Fardeau de %1 !", + "Cookie production x%1 for %2!": "Production de cookies x%1 pendant %2 !", + "Cookie production +%1% for %2!": "Production de cookies +%1 % pendant %2 !", + "Cookie production %1% slower for %2!": "Production de cookies ralentie de %1 % pendant %2 !", + "Cookie production halved for %1!": "Production de cookies divisée en deux pendant %1 !", + "Your %1 are boosting your CpS!": "Tes %1 augmentent tes CpS !", + "Your %1 are rusting your CpS!": "Tes %1 dégradent tes CpS !", + "All buildings are %1% cheaper for %2!": "Toutes les constructions sont %1 % moins chères pendant %2 !", + "All buildings are %1% pricier for %2!": "Toutes les constructions sont %1 % plus chères pendant %2 !", + "All upgrades are %1% cheaper for %2!": "Toutes les améliorations sont %1 % moins chères pendant %2 !", + "All upgrades are %1% pricier for %2!": "Toutes les améliorations sont %1 % plus chères pendant %2 !", + "Cookie production halted for %1,
but each click is worth %2 of CpS.": "Production de cookies arrêtée pendant %1,
Mais chaque clic vaut %2 en CpS.", + "Clicking power x%1 for %2!": "Puissance des clics x%1 pendant %2 !", + "Clicking power +%1% for %2!": "Puissance des clics +%1 pendant %2 !", + "Cookies everywhere!": "Cookies partout !", + "You find %1% more golden cookies for the next %2.": "Tu trouves %1 % plus de cookies dorés pendant %2.", + "Spells backfire %1 times less for %2.": "Les sorts se retournent %1 fois moins contre toi pendant %2.", + "Spells backfire %1 times more for %2.": "Les sorts se retournent %1 fois plus contre toi pendant %2.", + "can be done once every %1": "peut être fait une fois toutes les %1", + "usable again in %1": "utilisable à nouveau dans %1", + "+%1/s": "+ %1/s", + "Next tick in %1.": "Prochaine période dans %1.", + "Initializing...": "Initialisation...", + "View %1": "Voir %1", + "Close %1": "Fermer %1", + "Details:": "Détails :", + "Effects:": "Effets :", + "Effect is active.": "L'effet est actif.", + "Effect is inactive.": "L'effet n'est pas actif.", + "Current bonus:": "Bonus actuel :", + "Garden": "Jardin", + "Baker's wheat": "Blé du pâtissier", + "[Baker's wheat quote]A plentiful crop whose hardy grain is used to make flour for pastries.": "Variété abondante dont les grains résistants servent à faire la farine pour les pâtisseries.", + "Thumbcorn": "Maïspouce", + "[Thumbcorn quote]A strangely-shaped variant of corn. The amount of strands that can sprout from one seed is usually in the single digits.": "Une variété de maïs à la forme étrange. Une graine ne peut généralement donner que moins de dix grains.", + "Cronerice": "Mégèriz", + "[Cronerice quote]Not only does this wrinkly bulb look nothing like rice, it's not even related to it either; its closest extant relative is the weeping willow.": "Non seulement ce bulbe ridé ne ressemble absolument pas à du riz, mais en plus, il n'est même pas de la même famille, son parent le plus proche étant le saule pleureur.", + "Gildmillet": "Mildoré", + "[Gildmillet quote]An ancient staple crop, famed for its golden sheen. Was once used to bake birthday cakes for kings and queens of old.": "Une plante ancienne, connue pour ses reflets dorés. Elle était autrefois utilisée pour confectionner les gâteaux d'anniversaire pour les rois et les reines d'antan.", + "Ordinary clover": "Trèfle ordinaire", + "[Ordinary clover quote]Trifolium repens, a fairly mundane variety of clover with a tendency to produce four leaves. Such instances are considered lucky by some.": "Trifolium repens, une variété de trèfle ordinaire, ayant tendance à produire quatre feuilles. Certains considèrent ces évènements chanceux.", + "Golden clover": "Trèfle doré", + "[Golden clover quote]A variant of the ordinary clover that traded its chlorophyll for pure organic gold. Tragically short-lived, this herb is an evolutionary dead-end - but at least it looks pretty.": "Une variante du trèfle ordinaire ayant échangé sa clorophylle contre de l'or pur d'origine organique. Son espérance de vie est malheureusement très courte, et en fait une impasse évolutionnaire... mais au moins, il est joli.", + "Shimmerlily": "Lys irisé", + "[Shimmerlily quote]These little flowers are easiest to find at dawn, as the sunlight refracting in dew drops draws attention to their pure-white petals.": "Ces petites fleurs sont plus faciles à trouver à l'aube, quand la lumière du soleil réfractée attire l'attention sur leurs pétales d'un blanc pur.", + "Elderwort": "Odeurweiss", + "[Elderwort quote]A very old, long-forgotten subspecies of edelweiss that emits a strange, heady scent. There is some anecdotal evidence that these do not undergo molecular aging.": "Une sous-espèce d'edelweiss oubliée depuis longtemps, qui émet un parfum étrange et entêtant. Il aurait été montré qu'elles ne subissent pas le vieillissement moléculaire.", + "Bakeberry": "Pâtissetille", + "[Bakeberry quote]A favorite among cooks, this large berry has a crunchy brown exterior and a creamy red center. Excellent in pies or chicken stews.": "Cette grosse baie est parmi les favorites des cuisiniers, avec sa peau brune croquante et son intérieur rouge crémeux. Excellente dans les tartes comme dans les bouillons de poulet.", + "Chocoroot": "Chocoracine", + "[Chocoroot quote]A tangly bramble coated in a sticky, sweet substance. Unknown genetic ancestry. Children often pick these from fields as-is as a snack.": "Une ronce noueuse recouverte d'une substance douce et sirupeuse. Origine génétique inconnue. Les enfants en ramassent souvent dans les champs pour en grignoter.", + "White chocoroot": "Chocoracine blanche", + "[White chocoroot quote]A pale, even sweeter variant of the chocoroot. Often impedes travelers with its twisty branches.": "Une version plus claire et encore plus sucrée de la chocoracine, ses branches tordues gènent souvent les voyageurs.", + "White mildew": "Mildiou blanc", + "[White mildew quote]A common rot that infests shady plots of earth. Grows in little creamy capsules. Smells sweet, but sadly wilts quickly.": "Un parasite courant infestant les parterres ombragés. Grandit sous forme de petites capsules crémeuses, à l'odeur douce, mais qui fane, hélas, rapidement.", + "Brown mold": "Moisissure brune", + "[Brown mold quote]A common rot that infests shady plots of earth. Grows in odd reddish clumps. Smells bitter, but thankfully wilts quickly.": "Un parasite courant touchant les parterres ombragés. Donne d'étranges tas rouges, à l'odeur amère, mais fane, heureusement, vite.", + "Meddleweed": "Indiscrerbe", + "[Meddleweed quote]The sign of a neglected farmland, this annoying weed spawns from unused dirt and may sometimes spread to other plants, killing them in the process.": "Signe de terres fermières négligées, cette mauvaise herbe pousse sur les sols inutilisés et peut parfois s'étendre aux autres plantes, ce qui tue ces dernières.", + "Whiskerbloom": "Moustafleur", + "[Whiskerbloom quote]Squeezing the translucent pods makes them excrete a milky liquid, while producing a faint squeak akin to a cat's meow.": "Presser leurs gousses laiteuses leur fait secréter un liquide laiteux, tout en produisant un couinement semblable à un miaulement.", + "Chimerose": "Tinterose", + "[Chimerose quote]Originating in the greener flanks of polar mountains, this beautiful flower with golden accents is fragrant enough to make any room feel a little bit more festive.": "Venue des flancs fertiles des montagnes polaires, cette jolie fleur aux reflets dorés émet un parfum capable de rendre n'importe quelle pièce un peu plus festive.", + "Nursetulip": "Nutrilipe", + "[Nursetulip quote]This flower grows an intricate root network that distributes nutrients throughout the surrounding soil. The reason for this seemingly altruistic behavior is still unknown.": "Cette fleur produit un système de racines complexe distribuant les nutriments dans tout le soil voisin. Les raisons de ce comportement altruiste restent inconnues.", + "Drowsyfern": "Ronflegère", + "[Drowsyfern quote]Traditionally used to brew a tea that guarantees a good night of sleep.": "Sert habituellement à confectionner une tisane garantissant une bonnes nuits.", + "Wardlichen": "Gardelichen", + "[Wardlichen quote]The metallic stench that emanates from this organism has been known to keep insects and slugs away.": "La puanteur métallique émanant de cet organisme est connu pour repousser les insectes et les limaces.", + "Keenmoss": "Poussemousse", + "[Keenmoss quote]Fuzzy to the touch and of a vibrant green. In plant symbolism, keenmoss is associated with good luck for finding lost objects.": "Douce au toucher et d'un vert éclatant. Dans le langage des plantes, la poussemousse est associée à la chance de retrouver les objets perdus.", + "Queenbeet": "Bettereine", + "[Queenbeet quote]A delicious taproot used to prepare high-grade white sugar. Entire countries once went to war over these.": "Tubercule délicieux servant à préparer le sucre blanc hautement concentré. Des pays entiers ont fait des guerres pour se les disputer.", + "Juicy queenbeet": "Bettereine juteuse", + "[Juicy queenbeet quote]A delicious taproot used to prepare high-grade white sugar. Entire countries once went to war over these.
It looks like this one has grown especially sweeter and juicier from growing in close proximity to other queenbeets.": "Tubercule délicieux servant à préparer le sucre blanc hautement concentré. Des pays entiers ont fait des guerres pour se les disputer.
Il semblerait que la proximité d'autres bettereines ait rendues celles-ci encore plus douces et juteuses.", + "Duketater": "Ducdeterre", + "[Duketater quote]A rare, rich-tasting tuber fit for a whole meal, as long as its strict harvesting schedule is respected. Its starch has fascinating baking properties.": "Un tubercule au goût riche pouvant offrir un repas entier satisfaisant, tant que son calendrier de récolte strict est respecté. Son amidon offre des propriétés de pâtisserie fascinantes.", + "Crumbspore": "Sporemiette", + "[Crumbspore quote]An archaic mold that spreads its spores to the surrounding dirt through simple pod explosion.": "Moisissure archaïque répandant ses spores sur le sol alentour par explosion de ses capsules.", + "Doughshroom": "Champipâte", + "[Doughshroom quote]Jammed full of warm spores; some forest walkers often describe the smell as similar to passing by a bakery.": "Pleins de spores tièdes. Certains ramasseurs en comparent l'odeur à celle émise par une pâtisserie.", + "Glovemorel": "Gantomorille", + "[Glovemorel quote]Touching its waxy skin reveals that the interior is hollow and uncomfortably squishy.": "Toucher leur peau cireuse laisse voir combien leur intérieur est creux et inconfortablement gluant.", + "Cheapcap": "Capacher", + "[Cheapcap quote]Small, tough, and good in omelettes. Some historians propose that the heads of dried cheapcaps were once used as currency in some bronze age societies.": "Petits, coriaces et bons dans les omelettes. Certains historiens pensent que les corolles séchées des capachers servaient autrefois de monnaie dans certaines sociétés de l'âge de bronze.", + "Fool's bolete": "Bolet sleula", + "[Fool's bolete quote]Named for its ability to fool mushroom pickers. The fool's bolete is not actually poisonous, it's just extremely bland.": "Nommé pour sa capacité à tromper les ramasseurs de champignons. Le bolet sleula n'est pas vraiment vénéneux, juste très fade.", + "Wrinklegill": "Ridegibier", + "[Wrinklegill quote]This mushroom's odor resembles that of a well-done steak, and is said to whet the appetite - making one's stomach start gurgling within seconds.": "L'odeur de ce champignon rappelle celle d'un steak bien cuit, et est réputée ouvrir l'appétit au point de faire gargouiller les estomacs en quelques secondes.", + "Green rot": "Vertiture", + "[Green rot quote]This short-lived mold is also known as \"emerald pebbles\", and is considered by some as a pseudo-gem that symbolizes good fortune.": "Cette moisissure éphémère est également appelée « graviers d'émeraude », et considérée par certains comme une pierre semi-précieuse symbolisant la chance.", + "Shriekbulb": "Bulburleur", + "[Shriekbulb quote]A nasty vegetable with a dreadful quirk : its flesh resonates with a high-pitched howl whenever it is hit at the right angle by sunlight, moonlight, or even a slight breeze.": "Ce légume peu appétissant a une particularité effrayante : sa chair résonne en un hululement perçant dès qu'il est frappé par la lumière du soleil, celle de la lune, ou même une petite brise selon un angle particulier.", + "Tidygrass": "Proprerbe", + "[Tidygrass quote]The molecules this grass emits are a natural weedkiller. Its stems grow following a predictable pattern, making it an interesting -if expensive- choice for a lawn grass.": "Les molécules émises par cette herbe tuent naturellement les mauvaises. Ses brins poussent selon un motif prévisible, ce qui en fait un bon choix de gazon, malgré son prix élevé.", + "Everdaisy": "Toujoursguerite", + "[Everdaisy quote]While promoted by some as a superfood owing to its association with longevity and intriguing geometry, this elusive flower is actually mildly toxic.": "Même si certains la vantent comme si elle était une panacée en raison de son association à la longévité et de son étrange géométrie, cette fleur rare est en fait modérément toxique.", + "Ichorpuff": "Vesse d'ichor", + "[Ichorpuff quote]This puffball mushroom contains sugary spores, but it never seems to mature to bursting on its own. Surrounding plants under its influence have a very slow metabolism, reducing their effects but lengthening their lifespan.": "Ce genre de champignon vesse-de-loup contient des spores sucrées, mais ne semble jamais maturer au point d'éclater de lui-même. Il influence les plantes des alentours en ralentissant énormément leur métabolisme, réduisant leurs effets, mais prolongeant leur durée de vie.", + "Garden information": "Informations jardin", + "Your garden is frozen, providing no effects.": "Ton jardin est gelé, n'apportant aucun effet.", + "Combined effects of all your plants:": "Effets combinés de toutes tes plantes :", + "None.": "Aucun.", + "-You can cross-breed plants by planting them close to each other; new plants will grow in the empty tiles next to them.
-Unlock new seeds by harvesting mature plants.
-When you ascend, your garden plants are reset, but you keep all the seeds you've unlocked.
-Your garden has no effect and does not grow while the game is closed.": "-Tu peux croiser les types de plantes en les plantant les unes près des autres, de nouvelles plantes pousseront sur les cases vides à côté.
-Débloque de nouvelles graines en récoltant les plantes à maturation.
-Quand tu effectues une ascension, les plantes de ton jardin sont réinitialisées, mais tu gardes toutes les graines que tu as débloquées.
-Ton jardin n'a aucun effet et ne pousse pas quand le jeu est fermé.", + "Harvest all": "Tout récolter", + "Instantly harvest all plants in your garden.": "Récolter instantanément toutes les plantes de ton jardin.", + "%1 to harvest only mature, mortal plants.": "%1 pour ne récolter que les plantes à maturité et mortelles.", + "%1 to harvest all mature plants of this type.": "%1 pour récolter toutes les plantes à maturité de ce type.", + "Freeze": "Geler", + "Cryogenically preserve your garden.
Plants no longer grow, spread or die; they provide no benefits.
Soil cannot be changed.
Using this will effectively pause your garden.": "Préserve ton jardin avec la cryogénie.
Les plantes ne poussent, se propagent et ne meurent plus, elles ne fournissent pas d'avantages.
La terre ne peut pas être changée.
Cette option mettra ton jardin en pause.", + "Garden is frozen. Unfreeze to resume.": "Le jardin est gelé. Dégèle-le pour reprendre.", + "Sacrifice garden": "Sacrifier le jardin", + "A swarm of sugar hornets comes down on your garden, destroying every plant as well as every seed you've unlocked - leaving only a %1 seed.
In exchange, they will grant you %2.
This action is only available with a complete seed log.": "Un essaim de frelons sucriers fond sur ton jardin, détruisant toutes les plantes et toutes les graines que tu as débloquées - ne laissant qu'une graine de %1.
En échange, ils te donnent %2.
Cette action n'est disponible qu'avec un registre de graines complet.", + "Do you REALLY want to sacrifice your garden to the sugar hornets?
You will be left with an empty plot and only the %1 seed unlocked.
In return, you will gain %2 sugar lumps.
": "Est-ce que tu veux VRAIMENT sacrifier ton jardin aux frelons sucriers ?
Il ne te restera plus que la graine de %1 débloquée.
En revanche, tu gagneras %2 morceaux de sucre.
", + "Sacrifice!": "Sacrifice !", + "You've sacrificed your garden to the sugar hornets, destroying your crops and your knowledge of seeds.
In the remains, you find %1 sugar lumps.": "Tu as sacrifié ton jardin aux frelons sucriers, qui ont détruit tes récoltes et ta connaissance des graines.
Parmi les décombres, tu trouves %1 morceaux de sucre.", + "immortal": "immortelle", + "predictable growth": "croissance prévisible", + "surrounding plants (%1x%1) age %2% faster": "les plantes aux alentours (%1 x %1) vieillissent %2 % plus vite", + "surrounding plants (%1x%1) age %2% slower": "les plantes aux alentours (%1 x %1) vieillissent %2 % plus lentement", + "surrounding plants (%1x%1) are %2% more efficient": "les plantes aux alentours (%1 x %1) sont %2 % plus efficaces", + "surrounding plants (%1x%1) are %2% less efficient": "les plantes aux alentours (%1 x %1) sont %2 % moins efficaces", + "surrounding tiles (%1x%1) develop no weeds or fungus": "les mauvaises herbes et champignons ne se développent pas sur les cases aux alentours (%1 x %1)", + "harvest when mature for +%1 of CpS (max. %2% of bank)": "à récolter une fois à maturité pour + %1 de CpS (max. %2 % de la banque)", + "harvest when mature for a sugar lump": "à récolter une fois à maturité pour un morceau de sucre", + "useless": "inutile", + "spreads easily": "se propage facilement", + "may spread as %1": "peut se propager sous la forme %1", + "grows in empty tiles": "pousse sur les cases vides", + "may overtake nearby plants": "peut submerger les plantes aux alentours", + "may sometimes drop spores when uprooted": "peut parfois faire apparaître des spores lors d'un déracinement", + "explodes into up to %1 of CpS at the end of its lifecycle (max. %2% of bank)": "explose pour donner jusqu'à %1 de CpS à la fin de son cycle de vie (max. %2 % de la banque)", + "cannot handle cold climates; %1% chance to die when frozen": "ne supporte pas les climats froids, %1 % de chances de mourir lors d'un gel", + "the unfortunate result of some plant combinations": "le résultat malencontreux de certaines combinaisons de plantes", + "Soil unlocked at %1 farms.": "Terre débloquée sur %1 fermes.", + "Your field is currently using this soil.": "Ton champ utilise cette terre.", + "You will be able to change your soil again in %1.": "Tu pourras changer à nouveau de terre dans %1.", + "Click to use this type of soil for your whole field.": "Clique pour utiliser ce type de terre pour tout ton champ.", + "Dirt": "Terre", + "Simple, regular old dirt that you'd find in nature.": "Simple terre ordinaire, trouvable dans la nature.", + "Fertilizer": "Engrais", + "Soil with a healthy helping of fresh manure. Plants grow faster but are less efficient.": "Terre comprenant une bonne dose de fumier. Les plantes poussent plus vite, mais sont moins efficaces.", + "Clay": "Argile", + "Rich soil with very good water retention. Plants grow slower but are more efficient.": "Terre riche retenant bien l'eau. Les plantes poussent moins vite mais sont plus efficaces.", + "Pebbles": "Graviers", + "Dry soil made of small rocks tightly packed together. Not very conducive to plant health, but whatever falls off your crops will be easy to retrieve.
Useful if you're one of those farmers who just want to find new seeds without having to tend their garden too much.": "Terre sèche faite de petits caiiloux agglomérés. Pas très bonne pour la santé de vos récoltes, mais tout ce qui en tombera sera facile à ramasser.
Utile pour les fermiers qui veulent juste trouver les nouvelles graines sans avoir à trop s'occuper de leur jardin.", + "Wood chips": "Copeaux de bois", + "Soil made of bits and pieces of bark and sawdust. Helpful for young sprouts to develop, not so much for mature plants.": "Terre faite de bouts d'écorces et de sciure. Utile pour la germination de jeunes pousses, mais pas autant pour les plantes à maturité.", + "tick every %1": "période toutes les %1", + "passive plant effects": "effets passif de plante", + "weed growth": "croissance de mauvaises herbes", + "%1% chance of collecting seeds automatically when plants expire": "%1 % de chances de récupérer des graines automatiquement lors de l'expiration des plantes", + "plants spread and mutate %1 times more": "les plantes se propagent et mutent %1 fois plus souvent", + "Plant effects:": "Effets de plante :", + "Possible mutations:": "Mutations possibles :", + "Average lifespan:": "Durée de vie moyenne :", + "Average maturation:": "Durée de maturation moyenne :", + "Mature in about %1": "Maturité dans %1 environ", + "Decays in about %1": "Fane en %1 environ", + "Does not decay": "Ne fane pas", + "%1 tick": [ + "%1 période", + "%1 périodes" + ], + "Weed": "Mauvaise herbe", + "Fungus": "Champignon", + "Planting cost:": "Coût de plantation :", + "%1 of CpS,
minimum %2": "%1 de CpS,
%2 minimum", + "%1 seed": "graine %1", + "Click to select this seed for planting.": "Clique pour choisir cette graine à planter.", + "This seed cannot be planted.": "Cette graine ne peut pas être plantée.", + "Empty tile": "Case vide", + "This tile of soil is empty.
Pick a seed and plant something!": "Cette case de terre est vide.
Choisis une graine et plante quelque chose !", + "Click to plant %1 for %2.": "Clique pour planter %1 pour %2.", + "%1 to plant multiple.": "%1 pour en planter plusieurs.", + "Aging multiplier:": "Multiplicateur de vieillissement :", + "Effect multiplier:": "Multiplicateur d'effets :", + "Weeds/fungus repellent:": "Anti mauvaises herbes et champignons :", + "This plant is growing here.": "Cette plante pousse ici.", + "Stage:": "Étape :", + "bud": "germe", + "sprout": "pousse", + "bloom": "floraison", + "mature": "à maturité", + "may reproduce, will drop seed when harvested": "peut se reproduire, donnera des graines après la récolte", + "Click to harvest.": "Clique pour récolter.", + "Click to unearth.": "Clique pour déterrer.", + "Click to refill your soil timer and trigger 1 plant growth tick with x%1 spread and mutation rate for %2.": "Clique pour remplir ta jauge de terre et déclencher 1 une période de croissance des plantes avec x %1 taux de propagation et de mutation pour %2.", + "Unlocked %1 seed.": "Graine %1 débloquée.", + "Seeds": "Graines", + "Tools": "Outils", + "Mature plants harvested: %1 (total: %2)": "Palntes à maturité récoltées : %1 (total : %2)", + "Plot size: %1
(Upgrades with farm level)": "Taille de parterre : %1
(S'améliore avec le niveau de ferme)", + "Garden plants age and mutate %1% faster.": "Les plantes du jardin vieillissent et mutent %1 % plus vite.", + "while plant is alive; scales with plant growth": "pendant que la plante est vivante ; proportionnel à la croissance de la plante", + "Dungeon": "Donjon", + "Grimoire": "/", + "This is your magic meter. Each spell costs magic to use.
Your maximum amount of magic varies depending on your amount of Wizard towers, and their level.
Magic refills over time. The lower your magic meter, the slower it refills.": "C'est ta jauge de magie. Chaque sort coûte de la magie.
Ta quantité de magie maximale dépend de ton nombre de tours de mage, et de leur niveau.
La jauge se remplit au fil du temps. Plus son niveau est bas, plus elle se remplit lentement.", + "Spells cast: %1 (total: %2)": "Sorts lancés : %1 (total : %2)", + "Magic cost:": "Coût en magie :", + "Chance to backfire:": "Chances de mal tourner :", + "Effect:": "Effet :", + "Backfire:": "Mal tourné :", + "Backfire!": "Mal tourné !", + "%1 magic": "%1 magie", + "+%1% of max magic": "+ %1 % de la magie maximale", + "Click to refill %1 units of your magic meter for %2.": "Clique pour remplir %1 unités de ta jauge de magie pour %2.", + "Grimoire spells are %1% cheaper but fail %1% more.": "Les sorts de grimoire coûtent %1 % moins cher mais échouent %1 % plus souvent.", + "Conjure Baked Goods": "Invoquer des pâtisseries", + "Summon half an hour worth of your CpS, capped at %1% of your cookies owned.": "Invoque une demi-heure des tes CpS, dans la limite de %1 % de tes cookies possédés.", + "Trigger a %1-minute clot and lose %1 minutes of CpS.": "Déclenche un grumeau de %1 minutes et perds %1 minutes de CpS.", + "You magic %1 out of thin air.": "Tu fais apparaître %1 par magie.", + "Summoning failed!": "Échec d'invocation !", + "Force the Hand of Fate": "Forcer la main du Destin", + "Summon a random golden cookie. Each existing golden cookie makes this spell +%1% more likely to backfire.": "Invoque un cookie doré aléatoire. Chaque cookie doré existant ajoute + %1 % de chances que le sort tourne mal.", + "Summon an unlucky wrath cookie.": "Invoque un cookie de colère portant la malchance.", + "Promising fate!": "Destin prometteur !", + "Sinister fate!": "Sombre destin !", + "Stretch Time": "Dilatation temporelle", + "All active buffs gain %1% more time (up to %2 more minutes).": "Tous les buffs actifs durent %1 % plus longtemps (jusqu'à %2 minutes en plus).", + "All active buffs are shortened by %1% (up to %2 minutes shorter).": "Tous les buffs actifs durent %1 % moins longtemps (jusqu'à %2 minutes en moins).", + "No buffs to alter!": "Pas de buffs à altérer !", + "Zap! Buffs lengthened.": "Zap ! Buffs prolongés.", + "Fizz! Buffs shortened.": "Plouf ! Buffs raccourcis.", + "Spontaneous Edifice": "Édifice spontané", + "The spell picks a random building you could afford if you had twice your current cookies, and gives it to you for free. The building selected must be under %1, and cannot be your most-built one (unless it is your only one).": "Le sort choisit une construction aléatoire que tu pourrais te payer avec le double de tes cookies actuels, et te l'offre gratuitement. La construction sélectionnée doit être sous %1, et ne peut pas être celle que tu as le plus construite (sauf si c'est ta seule).", + "Lose a random building.": "Perte d'une construction aléatoire.", + "No buildings to improve!": "Pas de construction à améliorer !", + "Backfired, but no buildings to destroy!": "Mal tourné, mais pas de constructions à détruire !", + "A new %1
bursts out of the ground.": "Tu vois %1
jaillir du sol.", + "One of your %1
disappears in a puff of smoke.": "Un(e) de tes %1
disparaît dans une nuage de fumée.", + "Haggler's Charm": "Charme du marchandeur", + "Upgrades are %1% cheaper for 1 minute.": "Les améliorations coûtent %1 % moins cher pour 1 minute.", + "Upgrades are %1% more expensive for an hour.": "Les améliorations coûtent %1 % plus cher pour 1 heure.", + "Upgrades are cheaper!": "Les améliorations coûtent moins cher !", + "Upgrades are pricier!": "Les améliorations coûtent plus cher !", + "Summon Crafty Pixies": "Invoquer des lutins habiles", + "Buildings are %1% cheaper for 1 minute.": "Les constructions coûtent %1 % moins cher pour 1 minute.", + "Buildings are %1% more expensive for an hour.": "Les constructions coûtent %1 % plus cher pour 1 heure.", + "Buildings are cheaper!": "Les constructions coûtent moins cher !", + "Buildings are pricier!": "Les constructions coûtent plus cher !", + "Gambler's Fever Dream": "Rêve fébrile du parieur", + "Cast a random spell at half the magic cost, with twice the chance of backfiring.": "Lance un sort aléatoire pour la moitié de son coût en magie, avec deux fois plus de chances de mal tourner.", + "No eligible spells!": "Pas de sort sélectionnable !", + "That's too bad!
Magic refunded.": "C'est dommage !
Magie remboursée.", + "Casting %1
for %2 magic...": "Lancement de %1
pour %2 magie...", + "Resurrect Abomination": "Résurrection abominable", + "Instantly summon a wrinkler if conditions are fulfilled.": "Invoque instantanément un rideux si les conditions sont remplies.", + "Pop one of your wrinklers.": "Éclate un de tes rideux.", + "Unable to spawn a wrinkler!": "Impossible de faire apparaître un rideux !", + "Rise, my precious!": "Lève-toi, mon trésor !", + "But no wrinkler was harmed.": "Mais aucun rideux n'a été blessé.", + "So long, ugly...": "Adieu, l'horreur...", + "Diminish Ineptitude": "Réduire l'inaptitude", + "Spells backfire %1 times less for the next %2 minutes.": "Les sorts tournent mal %1 fois moins souvent pour les %2 prochaines minutes.", + "Spells backfire %1 times more for the next %2 minutes.": "Les sorts tournent mal %1 fois plus souvent pour les %2 prochaines minutes.", + "Ineptitude diminished!": "Inaptitude réduite !", + "Ineptitude magnified!": "Inaptitude augmentée !", + "Pantheon": "Panthéon", + "[GOD 1 NAME]Holobore, Spirit of Asceticism": "Holobore, esprit d'ascétisme", + "[GOD 1 QUOTE]An immortal life spent focusing on the inner self, away from the distractions of material wealth.": "Une vie éternelle centrée sur le soi intérieur, loin des distractions des richesses matérielles.", + "[GOD 2 NAME]Vomitrax, Spirit of Decadence": "Vomitrax, esprit de décadence", + "[GOD 2 QUOTE]This sleazy spirit revels in the lust for quick easy gain and contempt for the value of steady work.": "Cet esprit sordide se délecte du désir pour les gains faciles, méprisant la valeur du travail régulier.", + "[GOD 3 NAME]Godzamok, Spirit of Ruin": "Godzamok, esprit de ruine", + "[GOD 3 QUOTE]The embodiment of natural disasters. An impenetrable motive drives the devastation caused by this spirit.": "L'incarnation des catastrophes naturelles. La motivation des destructions causées par cet esprit reste impénétrable.", + "[GOD 4 NAME]Cyclius, Spirit of Ages": "Cyclius, esprit des âges", + "[GOD 4 QUOTE]This spirit knows about everything you'll ever do, and enjoys dispensing a harsh judgment.": "Cet esprit sait tout ce que tu vas faire, et aime juger sévèrement.", + "[GOD 5 NAME]Selebrak, Spirit of Festivities": "Selebrak, esprit des festivités", + "[GOD 5 QUOTE]This is the spirit of merry getaways and regretful Monday mornings.": "C'est l'esprit des escapades joyeuses, et des lundi matin pleins de regrets.", + "[GOD 6 NAME]Dotjeiess, Spirit of Creation": "Dotjeiess, esprit de creation", + "[GOD 6 QUOTE]All things that be and ever will be were scripted long ago by this spirit's inscrutable tendrils.": "Toutes les choses présentes et futures ont été écrites il y a bien longtemps par les tentacules insondables de cet esprit.", + "[GOD 7 NAME]Muridal, Spirit of Labor": "Muridal, esprit du travail", + "[GOD 7 QUOTE]This spirit enjoys a good cheese after a day of hard work.": "Cet esprit apprécie un bon fromage après une journée de dur labeur.", + "[GOD 8 NAME]Jeremy, Spirit of Industry": "Jeremy, esprit d'industrie", + "[GOD 8 QUOTE]While this spirit has many regrets, helping you rule the world through constant industrialization is not one of them.": "Même si cet esprit a maint regrets, vous aider à dominer le monde grâce à une industrialisation constante n'en fait pas partie.", + "[GOD 9 NAME]Mokalsium, Mother Spirit": "Mokalsium, esprit-mère", + "[GOD 9 QUOTE]A caring spirit said to contain itself, inwards infinitely.": "Un esprit bienveillant dont on dit qu'il se contiendrait lui-même, à l'infini.", + "[GOD 10 NAME]Skruuia, Spirit of Scorn": "Skruuia, esprit du mépris", + "[GOD 10 QUOTE]This spirit enjoys poking foul beasts and watching them squirm, but has no love for its own family.": "Cet esprit aime tourmenter les bêtes immondes et les regarder se tortiller, mais n'a pas d'amour pour les siens.", + "[GOD 11 NAME]Rigidel, Spirit of Order": "Rigidel, esprit de l'ordre", + "[GOD 11 QUOTE]You will find that life gets just a little bit sweeter if you can motivate this spirit with tidy numbers and properly-filled tax returns.": "Vous vous rendrez compte que la vie est un petit peu plus agréable si vous arrivez à motiver cet esprit avec des chiffres ronds et des déclarations d'impôts bien remplies.", + "Diamond slot": "Emplacement diamant", + "Ruby slot": "Emplacement rubis", + "Jade slot": "Emplacement jade", + "empty": "vide", + "Release to assign %1 to this slot.": "Libérer pour assigner %1 à cet emplacement.", + "Drag a spirit onto this slot to assign it.": "Faites glisser un esprit vers cet emplacement pour l'y assigner.", + "If a golden cookie is clicked, this spirit is unslotted and all worship swaps will be used up.": "Si un cookie doré est cliqué, cet esprit est retiré de son emplacement, et tous les échanges d'adoration seront utilisés.", + "Each time you slot a spirit, you use up one worship swap.
If you have 2 swaps left, the next one will refill after %1.
If you have 1 swap left, the next one will refill after %2.
If you have 0 swaps left, you will get one after %3.
Unslotting a spirit costs no swaps.": "À chaque fois que tu mets un esprit dans un emplacement, tu utilises un échange d'adoration.
S'il te reste 2 échanges, le prochain sera rechargé après %1.
S'il ne te reste plus qu'1 échange, le prochain sera rechargé après %2.
S'il ne te reste plus d'échange, tu en obtiendras un après %3.
Retirer un esprit d'un emplacement ne coûte aucun échange.", + "Click to refill all your worship swaps for %1.": "Clique pour recharger tous tes échanges d'adoration pour %1.", + "Worship swaps: %1": "Échanges d'adoration : %1", + "next in %1": "prochain dans %1", + "The jade slot behaves as a ruby slot and the ruby slot behaves as a diamond slot.": "L'emplacement jade se comporte comme un emplacement rubis et l'emplacement rubis comme un emplacement diamant.", + "Stock Market": "Marché boursier", + "[STOCK 1 NAME]Old Mills": "Vieux moulins", + "[STOCK 1 TYPE]Cereals": "Céréales", + "[STOCK 1 LOGO]CRL": "CRL", + "[STOCK 2 NAME]Cocoa Excavations": "Mines de cacao", + "[STOCK 2 TYPE]Chocolate": "Chocolat", + "[STOCK 2 LOGO]CHC": "CHC", + "[STOCK 3 NAME]Bovine Industries": "Industrie bovine", + "[STOCK 3 TYPE]Butter": "Beurre", + "[STOCK 3 LOGO]BTR": "BTR", + "[STOCK 4 NAME]Candy Trust": "Groupe bonbons", + "[STOCK 4 TYPE]Sugar": "Sucre", + "[STOCK 4 LOGO]SUG": "SUC", + "[STOCK 5 NAME]Hazel Monastery": "Monastère des noisettes", + "[STOCK 5 TYPE]Nuts": "Noix", + "[STOCK 5 LOGO]NUT": "NOI", + "[STOCK 6 NAME]Wacky Reagants": "Réactifs farfelus", + "[STOCK 6 TYPE]Salt": "Sel", + "[STOCK 6 LOGO]SLT": "SEL", + "[STOCK 7 NAME]Cosmic Exports": "Exportations cosmiques", + "[STOCK 7 TYPE]Vanilla": "Vanille", + "[STOCK 7 LOGO]VNL": "VNL", + "[STOCK 8 NAME]Organic Gnostics": "Gnostiques organiques", + "[STOCK 8 TYPE]Eggs": "Œufs", + "[STOCK 8 LOGO]EGG": "ŒUF", + "[STOCK 9 NAME]Dimensional Exchange": "Échange dimensionnel", + "[STOCK 9 TYPE]Cinnamon": "Cannelle", + "[STOCK 9 LOGO]CNM": "CNL", + "[STOCK 10 NAME]Precision Aging": "Vieillissement de précision", + "[STOCK 10 TYPE]Cream": "Crème", + "[STOCK 10 LOGO]CRM": "CRM", + "[STOCK 11 NAME]Pectin Research": "Recherche de pectine", + "[STOCK 11 TYPE]Jam": "Confiture", + "[STOCK 11 LOGO]JAM": "CNF", + "[STOCK 12 NAME]Dazzle Corp Ltd.": "Éblouissement corporation Ltd.", + "[STOCK 12 TYPE]White chocolate": "Chocolat blanc", + "[STOCK 12 LOGO]WCH": "CBL", + "[STOCK 13 NAME]Prosperity Hive": "Ruche de prospérité", + "[STOCK 13 TYPE]Honey": "Miel", + "[STOCK 13 LOGO]HNY": "MIE", + "[STOCK 14 NAME]Selfmade Bakeries": "Pâtisseries maison", + "[STOCK 14 TYPE]Cookies": "Cookies", + "[STOCK 14 LOGO]CKI": "CKI", + "[STOCK 15 NAME]Figments Associated": "Créations associées", + "[STOCK 15 TYPE]Recipes": "Recettes", + "[STOCK 15 LOGO]RCP": "RCT", + "[STOCK 16 NAME]Polyvalent Acquisitions": "Acquisitions polyvalentes", + "[STOCK 16 TYPE]Subsidiaries": "Succursales", + "[STOCK 16 LOGO]SBD": "SCS", + "[STOCK 17 NAME]Great Minds": "Grands esprits", + "[STOCK 17 TYPE]Publicists": "Publicitaires", + "[STOCK 17 LOGO]PBL": "PBL", + "from %1": "à partir de %1", + "%1: currently worth $%2 per unit.": "%1 : vaut actuellement %2 $ l'unité.", + "You currently own %1 (worth $%2).": "Tu possèdes actuellement %1 (valant %2 $).", + "Your warehouses can store up to %1.": "Tes entrepôts peuvent actuellement stocker jusqu'à %1.", + "You may increase your storage space by upgrading your offices and by buying more %1. You also get %2 extra storage space per %3 level (currently: +%4).": "Tu peux augmenter ton espace de stockage en améliorant tes bureaux et en achetant plus de %1. Tu gagnes aussi %2 espaces de stockage tous les %3 niveaux (actuellement : + %4).", + "The average worth of this stock and how high it can peak depends on the building it is tied to, along with the level of your %1.": "La valeur moyenne de cette action et jusqu'où elle peut monter dépend de la construction à laquelle elle est liée, ainsi que de ton niveau de %1.", + "%1 the hide button to toggle all other stocks.": "%1 le bouton cacher pour activer ou non toutes les autres actions.", + "stock:": "action :", + "for $%1 each": "pour %1 $ chacune", + "last bought at
$%1 each": "dernier achat à
%1 $ chacun", + "+%1% overhead": "+ %1 % de frais", + "value:": "valeur :", + "valued at %1": "évaluation à %1", + "you spend:": "tu dépenses :", + "you earn:": "tu gagnes :", + "You cannot buy and sell this stock in the same tick.": "Tu ne peux pas acheter et revendre cette action au cours de la même période.", + "This is your office.": "Ceci est ton bureau.", + "It is fully upgraded. Its lavish interiors, spanning across innumerable floors, are host to many a decadent party, owing to your nigh-unfathomable wealth.": "Il est pleinement amélioré. Son intérieur luxueux, s'étendant sur d'innombrables étages, est le décor de moult fêtes décadentes, grâce à ta richesse quasiment incalculable.", + "Level %1 offices": "Bureaux niveau %1", + "Credit garage": "Garage de crédit", + "Tiny bank": "Petite banque", + "Loaning company": "Compagnie de prêt", + "Finance headquarters": "Quartier général financier", + "International exchange": "Échange international", + "Palace of Greed": "Palais de l'avidité", + "Upgrading will cost you %1.": "L'amélioration te coûtera %1.", + "Upgrading requires %1.": "L'amélioration nécessite %1.", + "Upgrading will grant you:": "L'amélioration t'accordera :", + "+1 loan slot": "+ 1 emplacement de prêt", + "+1 opportunity slot": "+ 1 emplacement d'opportunité", + "+%1 warehouse space for all goods": "+ %1 espace d'entrepôt pour toutes les marchandises", + "+%1% base warehouse space for all goods": "+ %1 % d'espace d'entrepôt de base pour toutes marchandises", + "Brokers:": "Courtiers :", + "A nice broker to trade more cookies.": "Un gentil courtier pour échanger davantage de cookies.", + "Hire": "Engager", + "Buying goods normally incurs overhead costs of %1% extra. Each broker you hire reduces that cost by %2%.": "Acheter des marchandises entraîne généralement des frais de %1 % supplémentaires. Chaque courtier que tu engages réduit ces frais de %2 %.", + "Current overhead costs thanks to your brokers: +%1%": "Frais actuels grâce à tes courtiers : + %1 %", + "Buying a broker costs %1 of CpS (that's $%2).": "Acheter un courtier coûte %1 de CpS (donc %2 $).", + "Maximum number of brokers you can own: %1 (the highest amount of grandmas you've owned this run, divided by 10, plus your grandma level)": "Nombre maximal de courtiers que tu peux posséder : %1 (le plus grand nombre de grand-mères que tu as possédées au cours de cette partie, divisé par 10, plus ton niveau de grand-mère)", + "Brokers are Wall Street-class grandmas versed in the ways of finance. Stockbroker grandmas work hard and play hard, and will fight telephone in hand to get your clients the best possible deals - with a sizeable profit margin for you, of course.": "Les courtiers sont des grand-mères aux connaissances en finance dignes de Wall Street. Ces grand-mères courtiers travaillent dur, jouent encore plus dur, et combattront, téléphone en main, pour décrocher les meilleures affaires pour tes clients (avec une bonne marge pour tes poches, bien entendu).", + "Hiring a new broker will cost you %1.": "Engager un nouveau courtier te coûtera %1.", + "Take out %1": "Retrait %1", + "Loan #%1": "Prêt n°%1", + "a modest loan": "un prêt modeste", + "Buy that vintage car you've always wanted. Just pay us back.": "Achète cette voiture de collection que tu as toujours voulue. Mais n'oublie pas de nous rembourser.", + "a pawnshop loan": "un prêt de boutique de prêteur sur gages", + "Bad credit? No problem. It's your money, and you need it now.": "Mauvaise note de crédit ? Pas de problème, c'est ton argent, et tu en as besoin tout de suite.", + "a retirement loan": "un prêt de retraite", + "Finance your next house, boat, spouse, etc. You've earned it.": "Finance ton prochain manoir, bateau, mariage, etc. Tu le mérites.", + "By taking this loan, you will get %1 CpS for the next %2.": "En contractant ce prêt, tu obtiendras %1 CpS pour les prochaines %2.", + "However, you will get %1 CpS for the next %2 after that.": "Mais tu obtiendras %1 CpS pour les prochaines %2 après ça.", + "You must also pay an immediate downpayment of %1 (%2% of your current bank).": "Tu dois également payer un apport immédiat de %1 (%2 % de ta banque actuelle).", + "Loan over": "Prêt fini", + "Your loan has expired, and you must now repay the interest.": "Ton prêt a pris fin, et tu dois maintenant payer les intérêts.", + "Line style": "Style de ligne", + "Color mode": "Mode couleur", + "Toggle speed": "Vitesse d'activation ou non", + "Click to refill your opportunity timer (and give a quick burst to your economy) for %1.": "Clique pour remplir ta jauge d'opportunité (et donner un coup de fouet temporaire à ton économie) pour %1.", + "Profits: %1. All prices are in $econds of your highest raw cookies per second.": "Profits : %1. Tous les prix sont dans les $econdes de ton plus haut niveau brut de cookies par secondes.", + "The stock market is more chaotic.": "Le marché boursier est plus chaotique.", + "[Upgrade name 0]Reinforced index finger": "Index renforcé", + "[Upgrade name 1]Carpal tunnel prevention cream": "Crème de soin du canal carpien", + "[Upgrade name 2]Ambidextrous": "Ambidextre", + "[Upgrade name 3]Thousand fingers": "Mille doigts", + "[Upgrade name 4]Million fingers": "Million de doigts", + "[Upgrade name 5]Billion fingers": "Milliard de doigts", + "[Upgrade name 6]Trillion fingers": "Billion de doigts", + "[Upgrade name 7]Forwards from grandma": "Transmis par grand-mère", + "[Upgrade name 8]Steel-plated rolling pins": "Rouleaux à pâtisserie plaqués acier", + "[Upgrade name 9]Lubricated dentures": "Dentier lubrifié", + "[Upgrade name 10]Cheap hoes": "Houes peu chères", + "[Upgrade name 11]Fertilizer": "Cinquante nuances d'engrais", + "[Upgrade name 12]Cookie trees": "Arbres à cookies", + "[Upgrade name 13]Sturdier conveyor belts": "Tapis roulants renforcés", + "[Upgrade name 14]Child labor": "Travail des enfants", + "[Upgrade name 15]Sweatshop": "Atelier clandestin", + "[Upgrade name 16]Sugar gas": "Gaz de sucre", + "[Upgrade name 17]Megadrill": "Mégaforeuse", + "[Upgrade name 18]Ultradrill": "Ultraforeuse", + "[Upgrade name 19]Vanilla nebulae": "Nébuleuse vanille", + "[Upgrade name 20]Wormholes": "Trous de ver", + "[Upgrade name 21]Frequent flyer": "Voyageur fréquent", + "[Upgrade name 22]Antimony": "Antimoine", + "[Upgrade name 23]Essence of dough": "Essence de pâte", + "[Upgrade name 24]True chocolate": "Chocolat véritable", + "[Upgrade name 25]Ancient tablet": "Tablette antique", + "[Upgrade name 26]Insane oatling workers": "Travailleurs avoineurs fous", + "[Upgrade name 27]Soul bond": "Liaison d'âmes", + "[Upgrade name 28]Flux capacitors": "Condensateurs de flux", + "[Upgrade name 29]Time paradox resolver": "Résolveur de paradoxes temporels", + "[Upgrade name 30]Quantum conundrum": "Énigme quantique", + "[Upgrade name 31]Kitten helpers": "Assistants chatons", + "[Upgrade name 32]Kitten workers": "Travailleurs chatons", + "[Upgrade name 33]Plain cookies": "Cookies nature", + "[Upgrade name 34]Sugar cookies": "Cookies sucre", + "[Upgrade name 35]Oatmeal raisin cookies": "Cookies farine d'avoine et raisins secs", + "[Upgrade name 36]Peanut butter cookies": "Cookies beurre de cacahouète", + "[Upgrade name 37]Coconut cookies": "Cookies noix de coco", + "[Upgrade name 38]White chocolate cookies": "Cookies chocolat blanc", + "[Upgrade name 39]Macadamia nut cookies": "Cookies noix de macadamia", + "[Upgrade name 40]Double-chip cookies": "Cookies doubles pépites", + "[Upgrade name 41]White chocolate macadamia nut cookies": "Cookies noix de macadamia chocolat blanc", + "[Upgrade name 42]All-chocolate cookies": "Cookies pur chocolat", + "[Upgrade name 43]Quadrillion fingers": "Billiard de doigts", + "[Upgrade name 44]Prune juice": "Jus de prune", + "[Upgrade name 45]Genetically-modified cookies": "Cookies modifiés génétiquement", + "[Upgrade name 46]Radium reactors": "Réacteurs au radium", + "[Upgrade name 47]Ultimadrill": "Ultimaforeuse", + "[Upgrade name 48]Warp drive": "Moteur à distorsion", + "[Upgrade name 49]Ambrosia": "Ambroisie", + "[Upgrade name 50]Sanity dance": "Danse de santé mentale", + "[Upgrade name 51]Causality enforcer": "Applicateur de causalité", + "[Upgrade name 52]Lucky day": "Jour de chance", + "[Upgrade name 53]Serendipity": "Heureux hasard", + "[Upgrade name 54]Kitten engineers": "Ingénieurs chatons", + "[Upgrade name 55]Dark chocolate-coated cookies": "Cookies enrobés de chocolat noir", + "[Upgrade name 56]White chocolate-coated cookies": "Cookies enrobés de chocolat blanc", + "[Upgrade name 57]Farmer grandmas": "Grand-mères fermières", + "[Upgrade name 58]Miner grandmas": "Grand-mères mineures", + "[Upgrade name 59]Worker grandmas": "Grand-mères ouvrières", + "[Upgrade name 60]Cosmic grandmas": "Grand-mères cosmiques", + "[Upgrade name 61]Transmuted grandmas": "Grand-mères transmutées", + "[Upgrade name 62]Altered grandmas": "Grand-mères altérées", + "[Upgrade name 63]Grandmas' grandmas": "Grand-mères de grand-mères", + "[Upgrade name 64]Bingo center/Research facility": "Centre de bingo/de recherches", + "[Upgrade name 65]Specialized chocolate chips": "Pépites de chocolat spécialisées", + "[Upgrade name 66]Designer cocoa beans": "Fèves de cacao de marque", + "[Upgrade name 67]Ritual rolling pins": "Rouleaux à pâtisserie rituels", + "[Upgrade name 68]Underworld ovens": "Fours occultes", + "[Upgrade name 69]One mind": "Esprit unique", + "[Upgrade name 70]Exotic nuts": "Noix exotiques", + "[Upgrade name 71]Communal brainsweep": "Nettoyage de cerveau communal", + "[Upgrade name 72]Arcane sugar": "Sucre arcanique", + "[Upgrade name 73]Elder Pact": "Pacte avec les anciennes", + "[Upgrade name 74]Elder Pledge": "Engagement auprès des anciennes", + "[Upgrade name 75]Plastic mouse": "Souris plastique", + "[Upgrade name 76]Iron mouse": "Souris de fer", + "[Upgrade name 77]Titanium mouse": "Souris de titane", + "[Upgrade name 78]Adamantium mouse": "Souris d'adamantium", + "[Upgrade name 79]Ultrascience": "Ultrascience", + "[Upgrade name 80]Eclipse cookies": "Cookies éclipse", + "[Upgrade name 81]Zebra cookies": "Cookies zébrés", + "[Upgrade name 82]Quintillion fingers": "Trillion de doigts", + "[Upgrade name 83]Gold hoard": "Cache d'or", + "[Upgrade name 84]Elder Covenant": "Accord avec les anciennes", + "[Upgrade name 85]Revoke Elder Covenant": "Révoquer l'accord avec les anciennes", + "[Upgrade name 86]Get lucky": "Avoir du pot", + "[Upgrade name 87]Sacrificial rolling pins": "Rouleaux à pâtisserie sacrificiels", + "[Upgrade name 88]Snickerdoodles": "Snickerdoodles", + "[Upgrade name 89]Stroopwafels": "Stroopwafels", + "[Upgrade name 90]Macaroons": "Macarons", + "[Upgrade name 91]Neuromancy": "Neuromancie", + "[Upgrade name 92]Empire biscuits": "Biscuits impériaux", + "[Upgrade name 93]British tea biscuits": "Biscuits pour le thé britannique", + "[Upgrade name 94]Chocolate british tea biscuits": "Biscuits au chocolat pour le thé britannique", + "[Upgrade name 95]Round british tea biscuits": "Biscuits ronds pour le thé britannique", + "[Upgrade name 96]Round chocolate british tea biscuits": "Biscuits ronds au chocolat pour le thé britannique", + "[Upgrade name 97]Round british tea biscuits with heart motif": "Biscuits ronds à cœur pour le thé britannique", + "[Upgrade name 98]Round chocolate british tea biscuits with heart motif": "Biscuits ronds à cœur au chocolat pour le thé britannique", + "[Upgrade name 99]Sugar bosons": "Bosons sucrés", + "[Upgrade name 100]String theory": "Théorie des cordes", + "[Upgrade name 101]Large macaron collider": "Grand collisionneur de macarons", + "[Upgrade name 102]Big bang bake": "Big bang pâtissier", + "[Upgrade name 103]Antigrandmas": "Antigrandmères", + "[Upgrade name 104]Madeleines": "Madeleines", + "[Upgrade name 105]Palmiers": "Palmiers", + "[Upgrade name 106]Palets": "Palets", + "[Upgrade name 107]Sablés": "Sablés", + "[Upgrade name 108]Kitten overseers": "Contremaîtres chatons", + "[Upgrade name 109]Sextillion fingers": "Trilliard de doigts", + "[Upgrade name 110]Double-thick glasses": "Lunettes à double foyer", + "[Upgrade name 111]Gingerbread scarecrows": "Épouvantails en pain d'épice", + "[Upgrade name 112]Recombobulators": "Rassembleurs", + "[Upgrade name 113]H-bomb mining": "Extraction atomique", + "[Upgrade name 114]Chocolate monoliths": "Monolithes chocolatés", + "[Upgrade name 115]Aqua crustulae": "Aqua crustulae", + "[Upgrade name 116]Brane transplant": "Transplantation de branes", + "[Upgrade name 117]Yestermorrow comparators": "Comparateurs d'avantdemain", + "[Upgrade name 118]Reverse cyclotrons": "Cyclotrons inversés", + "[Upgrade name 119]Unobtainium mouse": "Souris en impossiblium", + "[Upgrade name 120]Caramoas": "Caramoas", + "[Upgrade name 121]Sagalongs": "Sagalongs", + "[Upgrade name 122]Shortfoils": "Feuillescourtes", + "[Upgrade name 123]Win mints": "Menthes gagnantes", + "[Upgrade name 124]Perfect idling": "Veille parfaite", + "[Upgrade name 125]Fig gluttons": "Gloutons de figues", + "[Upgrade name 126]Loreols": "Loreols", + "[Upgrade name 127]Jaffa cakes": "Gâteaux fourrés", + "[Upgrade name 128]Grease's cups": "Noix de graisse", + "[Upgrade name 129]Heavenly chip secret": "Secret de pépite céleste", + "[Upgrade name 130]Heavenly cookie stand": "Étal de cookies célestes", + "[Upgrade name 131]Heavenly bakery": "Pâtisserie céleste", + "[Upgrade name 132]Heavenly confectionery": "Confiserie céleste", + "[Upgrade name 133]Heavenly key": "Clé céleste", + "[Upgrade name 134]Skull cookies": "Cookies crânes", + "[Upgrade name 135]Ghost cookies": "Cookies fantômes", + "[Upgrade name 136]Bat cookies": "Cookies chauve-souris", + "[Upgrade name 137]Slime cookies": "Cookies gluants", + "[Upgrade name 138]Pumpkin cookies": "Cookies citrouilles", + "[Upgrade name 139]Eyeball cookies": "Cookies yeux", + "[Upgrade name 140]Spider cookies": "Cookies araignées", + "[Upgrade name 141]Persistent memory": "Mémoire persistante", + "[Upgrade name 142]Wrinkler doormat": "Paillasson rideux", + "[Upgrade name 143]Christmas tree biscuits": "Biscuits sapins de Noël", + "[Upgrade name 144]Snowflake biscuits": "Biscuits flocons de neige", + "[Upgrade name 145]Snowman biscuits": "Biscuits bonshommes de neige", + "[Upgrade name 146]Holly biscuits": "Biscuits houx", + "[Upgrade name 147]Candy cane biscuits": "Biscuits sucres d'orge", + "[Upgrade name 148]Bell biscuits": "Biscuits cloches", + "[Upgrade name 149]Present biscuits": "Biscuits cadeaux", + "[Upgrade name 150]Gingerbread men": "Bonshommes de pain d'épice", + "[Upgrade name 151]Gingerbread trees": "Arbres de pain d'épice", + "[Upgrade name 152]A festive hat": "Un chapeau festif", + "[Upgrade name 153]Increased merriness": "Jovialité augmentée", + "[Upgrade name 154]Improved jolliness": "Gaieté augmentée", + "[Upgrade name 155]A lump of coal": "Un morceau de charbon", + "[Upgrade name 156]An itchy sweater": "Un pull qui gratte", + "[Upgrade name 157]Reindeer baking grounds": "Terrains de pâtisserie des rennes", + "[Upgrade name 158]Weighted sleighs": "Traîneaux lestés", + "[Upgrade name 159]Ho ho ho-flavored frosting": "Glaçage goût ho ho ho", + "[Upgrade name 160]Season savings": "Économies des fêtes", + "[Upgrade name 161]Toy workshop": "Atelier de jouets", + "[Upgrade name 162]Naughty list": "Liste des vilains", + "[Upgrade name 163]Santa's bottomless bag": "Hotte sans fond du Père Noël", + "[Upgrade name 164]Santa's helpers": "Assistants du Père Noël", + "[Upgrade name 165]Santa's legacy": "Héritage du Père Noël", + "[Upgrade name 166]Santa's milk and cookies": "Lait et cookies du Père Noël", + "[Upgrade name 167]Reindeer season": "Saison des rennes", + "[Upgrade name 168]Santa's dominion": "Domaine du Père Noël", + "[Upgrade name 169]Pure heart biscuits": "Biscuits cœurs purs", + "[Upgrade name 170]Ardent heart biscuits": "Biscuits cœurs ardents", + "[Upgrade name 171]Sour heart biscuits": "Biscuits cœurs aigris", + "[Upgrade name 172]Weeping heart biscuits": "Biscuits cœurs saignants", + "[Upgrade name 173]Golden heart biscuits": "Biscuits cœurs d'or", + "[Upgrade name 174]Eternal heart biscuits": "Biscuits cœurs éternels", + "[Upgrade name 175]Gem polish": "Polissage de gemmes", + "[Upgrade name 176]9th color": "9e couleur", + "[Upgrade name 177]Chocolate light": "Lumière chocolatée", + "[Upgrade name 178]Grainbow": "Grarc-en-ciel", + "[Upgrade name 179]Pure cosmic light": "Pure lumière cosmique", + "[Upgrade name 180]Rainbow grandmas": "Grand-mères arc-en-ciel", + "[Upgrade name 181]Season switcher": "Permutateur de saisons", + "[Upgrade name 182]Festive biscuit": "Biscuit festif", + "[Upgrade name 183]Ghostly biscuit": "Biscuit fantômatique", + "[Upgrade name 184]Lovesick biscuit": "Biscuit languissant", + "[Upgrade name 185]Fool's biscuit": "Biscuit de l'idiot", + "[Upgrade name 186]Eternal seasons": "Saisons éternelles", + "[Upgrade name 187]Kitten managers": "Directeurs chatons", + "[Upgrade name 188]Septillion fingers": "Quadrillion de doigts", + "[Upgrade name 189]Octillion fingers": "Quadrilliard de doigts", + "[Upgrade name 190]Eludium mouse": "Souris en eludium", + "[Upgrade name 191]Wishalloy mouse": "Souris en voudraisnium", + "[Upgrade name 192]Aging agents": "Agents vieillissants", + "[Upgrade name 193]Pulsar sprinklers": "Arroseurs pulsar", + "[Upgrade name 194]Deep-bake process": "Processus de cuisson profonde", + "[Upgrade name 195]Coreforge": "Forgenoyau", + "[Upgrade name 196]Generation ship": "Vaisseau générationnel", + "[Upgrade name 197]Origin crucible": "Creuset des origines", + "[Upgrade name 198]Deity-sized portals": "Portails de taille divine", + "[Upgrade name 199]Far future enactment": "Mise en œuvre du futur lointain", + "[Upgrade name 200]Nanocosmics": "Nanocosmique", + "[Upgrade name 201]Glow-in-the-dark": "Phosphorescence", + "[Upgrade name 202]Rose macarons": "Macarons rose", + "[Upgrade name 203]Lemon macarons": "Macarons citron", + "[Upgrade name 204]Chocolate macarons": "Macarons chocolat", + "[Upgrade name 205]Pistachio macarons": "Macarons pistache", + "[Upgrade name 206]Hazelnut macarons": "Macarons noisette", + "[Upgrade name 207]Violet macarons": "Macarions violette", + "[Upgrade name 208]Magic shenanigans": "Manigances magiques", + "[Upgrade name 209]Bunny biscuit": "Biscuit lapin", + "[Upgrade name 210]Chicken egg": "Œuf de poule", + "[Upgrade name 211]Duck egg": "Œuf de canard", + "[Upgrade name 212]Turkey egg": "Œuf de dinde", + "[Upgrade name 213]Quail egg": "Œuf de caille", + "[Upgrade name 214]Robin egg": "Œuf de rouge-gorge", + "[Upgrade name 215]Ostrich egg": "Œuf d'autruche", + "[Upgrade name 216]Cassowary egg": "Œuf de casoar", + "[Upgrade name 217]Salmon roe": "Œuf de saumon", + "[Upgrade name 218]Frogspawn": "Œuf de grenouille", + "[Upgrade name 219]Shark egg": "Œuf de requin", + "[Upgrade name 220]Turtle egg": "Œuf de tortue", + "[Upgrade name 221]Ant larva": "Larve de fourmi", + "[Upgrade name 222]Golden goose egg": "Œuf de poule aux œufs d'or", + "[Upgrade name 223]Faberge egg": "Œuf de Fabergé", + "[Upgrade name 224]Wrinklerspawn": "Œuf de rideux", + "[Upgrade name 225]Cookie egg": "Œuf de cookie", + "[Upgrade name 226]Omelette": "Omelette", + "[Upgrade name 227]Chocolate egg": "Œuf en chocolat", + "[Upgrade name 228]Century egg": "Œuf de cent ans", + "[Upgrade name 229]\"egg\"": "« œuf »", + "[Upgrade name 230]Caramel macarons": "Macarons caramel", + "[Upgrade name 231]Licorice macarons": "Macarons réglisse", + "[Upgrade name 232]Taller tellers": "Grosses caisses enregistreuses", + "[Upgrade name 233]Scissor-resistant credit cards": "Cartes de crédit anti-ciseaux", + "[Upgrade name 234]Acid-proof vaults": "Coffres résistant à l'acide", + "[Upgrade name 235]Chocolate coins": "Pièces en chocolat", + "[Upgrade name 236]Exponential interest rates": "Taux d'intérêt exponentiels", + "[Upgrade name 237]Financial zen": "Zen financier", + "[Upgrade name 238]Golden idols": "Veaux d'or", + "[Upgrade name 239]Sacrifices": "Sacrifices", + "[Upgrade name 240]Delicious blessing": "Bénédiction délicieuse", + "[Upgrade name 241]Sun festival": "Festival solaire", + "[Upgrade name 242]Enlarged pantheon": "Panthéon élargi", + "[Upgrade name 243]Great Baker in the sky": "Grand pâtissier céleste", + "[Upgrade name 244]Pointier hats": "Chapeaux encore plus pointus", + "[Upgrade name 245]Beardlier beards": "Barbes encore plus barbues", + "[Upgrade name 246]Ancient grimoires": "Grimoires anciens", + "[Upgrade name 247]Kitchen curses": "Malédictions culinaires", + "[Upgrade name 248]School of sorcery": "École de sorcellerie", + "[Upgrade name 249]Dark formulas": "Sombres formules", + "[Upgrade name 250]Banker grandmas": "Grand-mères banquières", + "[Upgrade name 251]Priestess grandmas": "Grand-mères prêtresses", + "[Upgrade name 252]Witch grandmas": "Grand-mères sorcières", + "[Upgrade name 253]Tin of british tea biscuits": "Boîte de biscuits pour le thé britannique", + "[Upgrade name 254]Box of macarons": "Boîte de macarons", + "[Upgrade name 255]Box of brand biscuits": "Boîte de biscuits de marque", + "[Upgrade name 256]Pure black chocolate cookies": "Cookies au chocolat noir pur", + "[Upgrade name 257]Pure white chocolate cookies": "Cookies au chocolat blanc pur", + "[Upgrade name 258]Ladyfingers": "Boudoirs", + "[Upgrade name 259]Tuiles": "Tuiles", + "[Upgrade name 260]Chocolate-stuffed biscuits": "Biscuits fourrés au chocolat", + "[Upgrade name 261]Checker cookies": "Cookies à damier", + "[Upgrade name 262]Butter cookies": "Cookies au beurre", + "[Upgrade name 263]Cream cookies": "Cookies à la crème", + "[Upgrade name 264]Permanent upgrade slot I": "Emplacement d'amélioration permanente I", + "[Upgrade name 265]Permanent upgrade slot II": "Emplacement d'amélioration permanente II", + "[Upgrade name 266]Permanent upgrade slot III": "Emplacement d'amélioration permanente III", + "[Upgrade name 267]Permanent upgrade slot IV": "Emplacement d'amélioration permanente IV", + "[Upgrade name 268]Permanent upgrade slot V": "Emplacement d'amélioration permanente V", + "[Upgrade name 269]Starspawn": "Nidétoile", + "[Upgrade name 270]Starsnow": "Neigétoile", + "[Upgrade name 271]Starterror": "Terreurétoile", + "[Upgrade name 272]Starlove": "Amourétoile", + "[Upgrade name 273]Startrade": "Échangétoile", + "[Upgrade name 274]Angels": "Anges", + "[Upgrade name 275]Archangels": "Archanges", + "[Upgrade name 276]Virtues": "Vertus", + "[Upgrade name 277]Dominions": "Domaines", + "[Upgrade name 278]Cherubim": "Chérubins", + "[Upgrade name 279]Seraphim": "Séraphins", + "[Upgrade name 280]God": "Dieu", + "[Upgrade name 281]Twin Gates of Transcendence": "Portes jumelles de la transcendance", + "[Upgrade name 282]Heavenly luck": "Chance céleste", + "[Upgrade name 283]Lasting fortune": "Fortune durable", + "[Upgrade name 284]Decisive fate": "Destin décisif", + "[Upgrade name 285]Divine discount": "Ristourne divine", + "[Upgrade name 286]Divine sales": "Soldes divines", + "[Upgrade name 287]Divine bakeries": "Pâtisseries divines", + "[Upgrade name 288]Starter kit": "Kit de démarrage", + "[Upgrade name 289]Starter kitchen": "Cuisine de démarrage", + "[Upgrade name 290]Halo gloves": "Gants halo", + "[Upgrade name 291]Kitten angels": "Anges chatons", + "[Upgrade name 292]Unholy bait": "Appât impie", + "[Upgrade name 293]Sacrilegious corruption": "Corruption sacrilège", + "[Upgrade name 294]Xtreme walkers": "Déambulateurs Xtrêmes", + "[Upgrade name 295]Fudge fungus": "Champignon caramel", + "[Upgrade name 296]Planetsplitters": "Briseplanètes", + "[Upgrade name 297]Cyborg workforce": "Main-d'œuvre cyborg", + "[Upgrade name 298]Way of the wallet": "Voie du portefeuille", + "[Upgrade name 299]Creation myth": "Mythe de la création", + "[Upgrade name 300]Cookiemancy": "Cookiemancie", + "[Upgrade name 301]Dyson sphere": "Sphère de Dyson", + "[Upgrade name 302]Theory of atomic fluidity": "Théorie de la fluidité atomique", + "[Upgrade name 303]End of times back-up plan": "Plan de secours en cas de fin des temps", + "[Upgrade name 304]Great loop hypothesis": "Hypothèse de la grande boucle", + "[Upgrade name 305]The Pulse": "La pulsation", + "[Upgrade name 306]Lux sanctorum": "Lux sanctorum", + "[Upgrade name 307]The Unbridling": "Le déchaînement", + "[Upgrade name 308]Wheat triffids": "Triffides de blé", + "[Upgrade name 309]Canola oil wells": "Puits d'huile de colza", + "[Upgrade name 310]78-hour days": "Jours de 78 heures", + "[Upgrade name 311]The stuff rationale": "La rationalisation des trucs", + "[Upgrade name 312]Theocracy": "Théocratie", + "[Upgrade name 313]Rabbit trick": "Tour du lapin", + "[Upgrade name 314]The final frontier": "Ultime frontière", + "[Upgrade name 315]Beige goo": "Gelée beige", + "[Upgrade name 316]Maddening chants": "Psalmodies exaspérantes", + "[Upgrade name 317]Cookietopian moments of maybe": "Moments de possibilités cookietopiens", + "[Upgrade name 318]Some other super-tiny fundamental particle? Probably?": "Un genre d'autre particule fondamentale super-minuscule ? Probablement ?", + "[Upgrade name 319]Reverse shadows": "Ombres inversées", + "[Upgrade name 320]Kitten accountants": "Comptables chatons", + "[Upgrade name 321]Kitten specialists": "Spécialistes chatons", + "[Upgrade name 322]Kitten experts": "Experts chatons", + "[Upgrade name 323]How to bake your dragon": "Comment cuire votre dragon", + "[Upgrade name 324]A crumbly egg": "Un œuf croustillant", + "[Upgrade name 325]Chimera": "Chimère", + "[Upgrade name 326]Tin of butter cookies": "Boîte de biscuits au beurre", + "[Upgrade name 327]Golden switch": "Permutateur doré", + "[Upgrade name 328]Classic dairy selection": "Sélection de produits laitiers classiques", + "[Upgrade name 329]Fanciful dairy selection": "Sélection de produits laitiers de luxe", + "[Upgrade name 330]Dragon cookie": "Cookie dragon", + "[Upgrade name 331]Golden switch [off]": "Permutateur doré [allumé]", + "[Upgrade name 332]Golden switch [on]": "Permutateur doré [éteint]", + "[Upgrade name 333]Milk selector": "Sélecteur de lait", + "[Upgrade name 334]Milk chocolate butter biscuit": "Biscuit au beurre au chocolat au lait", + "[Upgrade name 335]Dark chocolate butter biscuit": "Biscuit au beurre au chocolat noir", + "[Upgrade name 336]White chocolate butter biscuit": "Biscuit au beurre au chocolat blanc", + "[Upgrade name 337]Ruby chocolate butter biscuit": "Biscuit au beurre au chocolat rubis", + "[Upgrade name 338]Gingersnaps": "Biscuits au gingembre", + "[Upgrade name 339]Cinnamon cookies": "Cookies à la cannelle", + "[Upgrade name 340]Vanity cookies": "Cookies personnalisés", + "[Upgrade name 341]Cigars": "Cigares", + "[Upgrade name 342]Pinwheel cookies": "Cookies moulinets", + "[Upgrade name 343]Fudge squares": "Carrés caramélisés", + "[Upgrade name 344]Digits": "Doigts", + "[Upgrade name 345]Butter horseshoes": "Fers à cheval beurrés", + "[Upgrade name 346]Butter pucks": "Palets beurrés", + "[Upgrade name 347]Butter knots": "Nœuds beurrés", + "[Upgrade name 348]Butter slabs": "Plaques beurrées", + "[Upgrade name 349]Butter swirls": "Tortillons beurrés", + "[Upgrade name 350]Shortbread biscuits": "Biscuits sablés", + "[Upgrade name 351]Millionaires' shortbreads": "Sablés de millionnaires", + "[Upgrade name 352]Caramel cookies": "Cookies caramel", + "[Upgrade name 353]Belphegor": "Belphégor", + "[Upgrade name 354]Mammon": "Mammon", + "[Upgrade name 355]Abaddon": "Abaddon", + "[Upgrade name 356]Satan": "Satan", + "[Upgrade name 357]Asmodeus": "Asmodée", + "[Upgrade name 358]Beelzebub": "Belzébuth", + "[Upgrade name 359]Lucifer": "Lucifer", + "[Upgrade name 360]Golden cookie alert sound": "Alerte sonore de cookie doré", + "[Upgrade name 361]Golden cookie sound selector": "Sélecteur de son de cookie doré", + "[Upgrade name 362]Basic wallpaper assortment": "Ensemble de fonds d'écran de base", + "[Upgrade name 363]Legacy": "Héritage", + "[Upgrade name 364]Elder spice": "Ancienne épice", + "[Upgrade name 365]Residual luck": "Chance résiduelle", + "[Upgrade name 366]Fantasteel mouse": "Souris en fantacier", + "[Upgrade name 367]Nevercrack mouse": "Souris en craquejamais", + "[Upgrade name 368]Five-finger discount": "Réduction totale", + "[Upgrade name 369]Future almanacs": "Almanachs du futur", + "[Upgrade name 370]Rain prayer": "Prière de la pluie", + "[Upgrade name 371]Seismic magic": "Magie sismique", + "[Upgrade name 372]Asteroid mining": "Minage d'astéroïdes", + "[Upgrade name 373]Quantum electronics": "Électronique quantique", + "[Upgrade name 374]Temporal overclocking": "Surcadençage temporel", + "[Upgrade name 375]Contracts from beyond": "Contats de l'au-delà", + "[Upgrade name 376]Printing presses": "Presses à imprimer", + "[Upgrade name 377]Paganism": "Paganisme", + "[Upgrade name 378]God particle": "Particule de dieu", + "[Upgrade name 379]Arcane knowledge": "Savoir arcanique", + "[Upgrade name 380]Magical botany": "Botanique magique", + "[Upgrade name 381]Fossil fuels": "Carburants fossiles", + "[Upgrade name 382]Shipyards": "Chantiers navals", + "[Upgrade name 383]Primordial ores": "Minerais promordiaux", + "[Upgrade name 384]Gold fund": "Fonds d'or", + "[Upgrade name 385]Infernal crops": "Récoltes infernales", + "[Upgrade name 386]Abysmal glimmer": "Scintillement abyssal", + "[Upgrade name 387]Relativistic parsec-skipping": "Saut de parsecs relativiste", + "[Upgrade name 388]Primeval glow": "Lueur primale", + "[Upgrade name 389]Extra physics funding": "Rallonge de budget de physique", + "[Upgrade name 390]Chemical proficiency": "Compétence chimique", + "[Upgrade name 391]Light magic": "Magie lumineuse", + "[Upgrade name 392]Mystical energies": "Énergies mystiques", + "[Upgrade name 393]Synergies Vol. I": "Synergies Vol. I", + "[Upgrade name 394]Synergies Vol. II": "Synergies Vol. II", + "[Upgrade name 395]Heavenly cookies": "Cookies célestes", + "[Upgrade name 396]Wrinkly cookies": "Cookies ridés", + "[Upgrade name 397]Distilled essence of redoubled luck": "Essence distillée de chance redoublée", + "[Upgrade name 398]Occult obstruction": "Obstruction occulte", + "[Upgrade name 399]Glucose-charged air": "Air chargé en glucose", + "[Upgrade name 400]Lavender chocolate butter biscuit": "Biscuit au beurre au chocolat et à la lavande", + "[Upgrade name 401]Lombardia cookies": "Cookies de Lombardie", + "[Upgrade name 402]Bastenaken cookies": "Cookies de Bastogne", + "[Upgrade name 403]Pecan sandies": "Sablés au pécan", + "[Upgrade name 404]Moravian spice cookies": "Cookies aux épices moraviennes", + "[Upgrade name 405]Anzac biscuits": "Biscuits Anzac", + "[Upgrade name 406]Buttercakes": "Cakes au beurre", + "[Upgrade name 407]Ice cream sandwiches": "Sandwiches à la crème glacée", + "[Upgrade name 408]Stevia Caelestis": "Stevia Caelestis", + "[Upgrade name 409]Diabetica Daemonicus": "Diabetica Daemonicus", + "[Upgrade name 410]Sucralosia Inutilis": "Sucralosia Inutilis", + "[Upgrade name 411]Lucky digit": "Chiffre chanceux", + "[Upgrade name 412]Lucky number": "Nombre chanceux", + "[Upgrade name 413]Lucky payout": "Versement chanceux", + "[Upgrade name 414]Background selector": "Sélecteur d'arrière-plan", + "[Upgrade name 415]Lucky grandmas": "Grand-mères chanceuses", + "[Upgrade name 416]Your lucky cookie": "Ton cookie chanceux", + "[Upgrade name 417]\"All Bets Are Off\" magic coin": "Pièce magique « Les paris sont ouverts »", + "[Upgrade name 418]Winning lottery ticket": "Ticket de loterie gagnant", + "[Upgrade name 419]Four-leaf clover field": "Champ de trèfles à quatre feuilles", + "[Upgrade name 420]A recipe book about books": "Un livre de recettes de livres", + "[Upgrade name 421]Leprechaun village": "Village de farfadets", + "[Upgrade name 422]Improbability drive": "Moteur d'improbabilité", + "[Upgrade name 423]Antisuperstistronics": "Antisuperstistronique", + "[Upgrade name 424]Gemmed talismans": "Talismans à gemmes", + "[Upgrade name 425]Kitten consultants": "Consultats chatons", + "[Upgrade name 426]Birthday cookie": "Cookie d'anniversaire", + "[Upgrade name 427]Armythril mouse": "Souris d'armythril", + "[Upgrade name 428]Reverse dementia": "Démence inversée", + "[Upgrade name 429]Humane pesticides": "Pesticides humains", + "[Upgrade name 430]Mole people": "Hommes-taupes", + "[Upgrade name 431]Machine learning": "Apprentissage automatique", + "[Upgrade name 432]Edible money": "Argent comestible", + "[Upgrade name 433]Sick rap prayers": "Prières rappées trop stylées", + "[Upgrade name 434]Deluxe tailored wands": "Baguettes de luxe sur mesure", + "[Upgrade name 435]Autopilot": "Pilote automatique", + "[Upgrade name 436]The advent of chemistry": "L'avènement de la chimie", + "[Upgrade name 437]The real world": "Le monde réel", + "[Upgrade name 438]Second seconds": "Secondes secondes", + "[Upgrade name 439]Quantum comb": "Peigne quantique", + "[Upgrade name 440]Crystal mirrors": "Miroires de cristal", + "[Upgrade name 441]Bunnypedes": "Lapinpèdes", + "[Upgrade name 442]Kitten assistants to the regional manager": "Assistants de directeurs régionaux chatons", + "[Upgrade name 443]Charm quarks": "Quarks de charme", + "[Upgrade name 444]Pink biscuits": "Biscuits roses", + "[Upgrade name 445]Whole-grain cookies": "Cookies au blé complet", + "[Upgrade name 446]Candy cookies": "Cookies bonbons", + "[Upgrade name 447]Big chip cookies": "Cookies grosses pépites", + "[Upgrade name 448]One chip cookies": "Cookies une pétite", + "[Upgrade name 449]Sugar baking": "Cuisson de sucre", + "[Upgrade name 450]Sugar craving": "Envie de sucre", + "[Upgrade name 451]Sugar aging process": "Processus de vieillissement du sucre", + "[Upgrade name 452]Sugar frenzy": "Frénésie sucrière", + "[Upgrade name 453]Sprinkles cookies": "Cookies aux vermicelles", + "[Upgrade name 454]Peanut butter blossoms": "Fleurs de beurre de cacahouète", + "[Upgrade name 455]No-bake cookies": "Cookies sans cuisson", + "[Upgrade name 456]Florentines": "Florentins", + "[Upgrade name 457]Chocolate crinkles": "Copeaux de chocolat", + "[Upgrade name 458]Maple cookies": "Cookies érable", + "[Upgrade name 459]Turbo-charged soil": "Terreau turbocompressé", + "[Upgrade name 460]Technobsidian mouse": "Souris en technobsidienne", + "[Upgrade name 461]Plasmarble mouse": "Souris en plasmarbre", + "[Upgrade name 462]Kitten marketeers": "Marketeurs chatons", + "[Upgrade name 463]Festivity loops": "Anneaux festifs", + "[Upgrade name 464]Persian rice cookies": "Cookies de riz persan", + "[Upgrade name 465]Norwegian cookies": "Cookies norvégiens", + "[Upgrade name 466]Crispy rice cookies": "Cookies au riz soufflé", + "[Upgrade name 467]Ube cookies": "Cookies ube", + "[Upgrade name 468]Butterscotch cookies": "Cookies au caramel au sucre roux", + "[Upgrade name 469]Speculaas": "Speculoos", + "[Upgrade name 470]Elderwort biscuits": "Biscuits odeurveiss", + "[Upgrade name 471]Bakeberry cookies": "Cookies pâtissetille", + "[Upgrade name 472]Duketater cookies": "Cookies ducdeterre", + "[Upgrade name 473]Green yeast digestives": "Digestifs à la levure verte", + "[Upgrade name 474]Fern tea": "Thé de fougère", + "[Upgrade name 475]Ichor syrup": "Sirop d'ichor", + "[Upgrade name 476]Wheat slims": "Biscotte de blé", + "[Upgrade name 477]Synthetic chocolate green honey butter biscuit": "Biscuit au beurre, chocolat de synthèse et miel vert", + "[Upgrade name 478]Royal raspberry chocolate butter biscuit": "Biscuit au beurre, chocolat et framboise royale", + "[Upgrade name 479]Ultra-concentrated high-energy chocolate butter biscuit": "Biscuit au beurre et chocolat à énergie ultra-concentrée", + "[Upgrade name 480]Timeproof hair dyes": "Teintures à cheveux à l'épreuve du temps", + "[Upgrade name 481]Barnstars": "Étoiles d'étable", + "[Upgrade name 482]Mine canaries": "Canaris miniers", + "[Upgrade name 483]Brownie point system": "Système de bons points scout", + "[Upgrade name 484]Grand supercycles": "Grands supercycles", + "[Upgrade name 485]Psalm-reading": "Lecture des lignes des psaumes", + "[Upgrade name 486]Immobile spellcasting": "Jet de sorts immobile", + "[Upgrade name 487]Restaurants at the end of the universe": "Restaurants du bout de l'univers", + "[Upgrade name 488]On second thought": "Après réflexion", + "[Upgrade name 489]Dimensional garbage gulper": "Dévore ordures dimensionnel", + "[Upgrade name 490]Additional clock hands": "Aiguilles d'horloge supplémentaires", + "[Upgrade name 491]Baking Nobel prize": "Prix Nobel de pâtisserie", + "[Upgrade name 492]Reverse theory of light": "Théorie de la lumière inversée", + "[Upgrade name 493]Revised probabilistics": "Probabilités révisées", + "[Upgrade name 494]Kitten analysts": "Analystes chatons", + "[Upgrade name 495]Eye of the wrinkler": "Œil du rideux", + "[Upgrade name 496]Inspired checklist": "Liste de vérification inspirée", + "[Upgrade name 497]Pure pitch-black chocolate butter biscuit": "Biscuit au beurre et chocolat purement noir comme la nuit", + "[Upgrade name 498]Chocolate oatmeal cookies": "Cookies avoine et chocolat", + "[Upgrade name 499]Molasses cookies": "Cookies mélasse", + "[Upgrade name 500]Biscotti": "Biscotti", + "[Upgrade name 501]Waffle cookies": "Cookies gaufres", + "[Upgrade name 502]Almond cookies": "Cookies amande", + "[Upgrade name 503]Hazelnut cookies": "Cookies noisette", + "[Upgrade name 504]Walnut cookies": "Cookies noix", + "[Upgrade name 505]Label printer": "Imprimante à étiquettes", + "[Upgrade name 506]Good manners": "Bonnes manières", + "[Upgrade name 507]Lindworms": "Lindworms", + "[Upgrade name 508]Bore again": "Réennuyance", + "[Upgrade name 509]\"Volunteer\" interns": "Internes « volontaires »", + "[Upgrade name 510]Rules of acquisition": "Règles d'acquisition", + "[Upgrade name 511]War of the gods": "Guerre des dieux", + "[Upgrade name 512]Electricity": "Électricité", + "[Upgrade name 513]Universal alphabet": "Alphabet universel", + "[Upgrade name 514]Public betterment": "Édification publique", + "[Upgrade name 515]Embedded microportals": "Microportails intégrés", + "[Upgrade name 516]Nostalgia": "Nostalgie", + "[Upgrade name 517]The definite molecule": "La molécule définie", + "[Upgrade name 518]Light capture measures": "Mesures de capture de lumière", + "[Upgrade name 519]0-sided dice": "Dé à 0 face", + "[Upgrade name 520]Heralds": "Hérauts", + "[Upgrade name 521]Metagrandmas": "Métagrandmères", + "[Upgrade name 522]Metabakeries": "Métapâtisseries", + "[Upgrade name 523]Mandelbrown sugar": "Sucre mandelbrun", + "[Upgrade name 524]Fractoids": "Fractines", + "[Upgrade name 525]Nested universe theory": "Théorie de l'univers imbriqué", + "[Upgrade name 526]Menger sponge cake": "Cake menger", + "[Upgrade name 527]One particularly good-humored cow": "La vache particulièrement de bonne humeur", + "[Upgrade name 528]Chocolate ouroboros": "Ouroboros en chocolat", + "[Upgrade name 529]Nested": "Imbriqué", + "[Upgrade name 530]Space-filling fibers": "Fibres emplisseuses d'espace", + "[Upgrade name 531]Endless book of prose": "Livre de prose sans fin", + "[Upgrade name 532]The set of all sets": "L'ensemble de tous les ensembles", + "[Upgrade name 533]Recursive mirrors": "Miroirs récursifs", + "[Upgrade name 534]Mice clicking mice": "Souris cliquant sur des souris", + "[Upgrade name 535]Custard creams": "Crèmes anglaises", + "[Upgrade name 536]Bourbon biscuits": "Biscuits bourbon", + "[Upgrade name 537]Keepsakes": "Souvenirs", + "[Upgrade name 538]Mini-cookies": "Mini-cookies", + "[Upgrade name 539]Sugar crystal cookies": "Cookies cristaux de sucre", + "[Upgrade name 540]Box of maybe cookies": "Boîte de cookies possibles", + "[Upgrade name 541]Box of not cookies": "Boîtes de non-cookies", + "[Upgrade name 542]Box of pastries": "Boîte de viennoiseries", + "[Upgrade name 543]Profiteroles": "Profiteroles", + "[Upgrade name 544]Jelly donut": "Donut à la gelée", + "[Upgrade name 545]Glazed donut": "Donut avec glaçage", + "[Upgrade name 546]Chocolate cake": "Gâteau au chocolat", + "[Upgrade name 547]Strawberry cake": "Gâteau à la fraise", + "[Upgrade name 548]Apple pie": "Tarte à la pomme", + "[Upgrade name 549]Lemon meringue pie": "Tarte au citron meringué", + "[Upgrade name 550]Butter croissant": "Croissant au beurre", + "[Upgrade name 551]Cookie dough": "Pâte à cookies", + "[Upgrade name 552]Burnt cookie": "Cookie brûlé", + "[Upgrade name 553]A chocolate chip cookie but with the chips picked off for some reason": "Un cookie aux pépites de chocolat, mais dont les pépites ont mystérieusement disparu", + "[Upgrade name 554]Flavor text cookie": "Cookie texte descriptif", + "[Upgrade name 555]High-definition cookie": "Cookie haute définition", + "[Upgrade name 556]Toast": "Toast", + "[Upgrade name 557]Peanut butter & jelly": "Beurre de cacahouète et confiture", + "[Upgrade name 558]Wookies": "Wookies", + "[Upgrade name 559]Cheeseburger": "Cheeseburger", + "[Upgrade name 560]One lone chocolate chip": "Une pépite de chocolat solitaire", + "[Upgrade name 561]Genius accounting": "Comptabilité géniale", + "[Upgrade name 562]Shimmering veil": "Voile scintillant", + "[Upgrade name 563]Shimmering veil [off]": "Voile scintillant [désactivé]", + "[Upgrade name 564]Shimmering veil [on]": "Voile scintillant [activé]", + "[Upgrade name 565]Whoopie pies": "Tartes au pets", + "[Upgrade name 566]Caramel wafer biscuits": "Biscuits gaufre caramélisée", + "[Upgrade name 567]Chocolate chip mocha cookies": "Cookies pépites chocolat moka", + "[Upgrade name 568]Earl Grey cookies": "Cookies Earl Grey", + "[Upgrade name 569]Corn syrup cookies": "Cookies sirop de maïs", + "[Upgrade name 570]Icebox cookies": "Cookies glacière", + "[Upgrade name 571]Graham crackers": "Biscuits Graham", + "[Upgrade name 572]Hardtack": "Biscuit de marin", + "[Upgrade name 573]Cornflake cookies": "Cookies au maïs soufflé", + "[Upgrade name 574]Tofu cookies": "Cookies au tofu", + "[Upgrade name 575]Gluten-free cookies": "Cookies sans gluten", + "[Upgrade name 576]Russian bread cookies": "Biscuits pain russe", + "[Upgrade name 577]Lebkuchen": "Lebkuchen", + "[Upgrade name 578]Aachener Printen": "Printen", + "[Upgrade name 579]Canistrelli": "Canistrelli", + "[Upgrade name 580]Nice biscuits": "Biscuits de Nice", + "[Upgrade name 581]French pure butter cookies": "Cookies français pur beurre", + "[Upgrade name 582]Petit beurre": "Petit beurre", + "[Upgrade name 583]Nanaimo bars": "Barres nanaimo", + "[Upgrade name 584]Berger cookies": "Cookies berger", + "[Upgrade name 585]Chinsuko": "Chinsuko", + "[Upgrade name 586]Panda koala biscuits": "Biscuits panda koala", + "[Upgrade name 587]Putri salju": "Putri salju", + "[Upgrade name 588]Milk cookies": "Cookies lait", + "[Upgrade name 589]Cookie crumbs": "Miettes de cookies", + "[Upgrade name 590]Chocolate chip cookie": "Cookie pépites de chocolat", + "[Upgrade name 591]Cosmic beginner's luck": "Chance du débutant cosmique", + "[Upgrade name 592]Reinforced membrane": "Membrane renfoncée", + "[Upgrade name 593]Binary grandmas": "Grand-mères binaires", + "[Upgrade name 594]The JavaScript console for dummies": "La console javascript pour les nuls", + "[Upgrade name 595]64bit arrays": "Tableaux 64 bits", + "[Upgrade name 596]Stack overflow": "Débordement de pile", + "[Upgrade name 597]Enterprise compiler": "Compilateur d'entreprise", + "[Upgrade name 598]Syntactic sugar": "Sucre syntaxique", + "[Upgrade name 599]A nice cup of coffee": "Une bonne tasse de café", + "[Upgrade name 600]Just-in-time baking": "Cuisson juste à temps", + "[Upgrade name 601]cookies++": "Cookies++", + "[Upgrade name 602]Software updates": "Mises à jour logicielles", + "[Upgrade name 603]Game.Loop": "Boucle.jeu", + "[Upgrade name 604]eval()": "eval()", + "[Upgrade name 605]Script grannies": "Grand-mères à script", + "[Upgrade name 606]Tombola computing": "Tombola informatique", + "[Upgrade name 607]Kruidnoten": "Kruidnoten", + "[Upgrade name 608]Marie biscuits": "Biscuits marie", + "[Upgrade name 609]Meringue cookies": "Biscuits meringue", + "[Upgrade name 610]Pizza": "Pizza", + "[Upgrade name 611]Crackers": "Craquelins", + "[Upgrade name 612]Havabreaks": "Havabreaks", + "[Upgrade name 613]Kitten executives": "Cadres chatons", + "[Upgrade name 614]Chai tea cookies": "Cookies thé chai", + "[Upgrade name 615]Yogurt cookies": "Cookies yaourt", + "[Upgrade name 616]Thumbprint cookies": "Cookies empreinte de pouce", + "[Upgrade name 617]Pizzelle": "Pizzelle", + "[Upgrade name 618]Zilla wafers": "Gaufres zilla", + "[Upgrade name 619]Dim Dams": "Dim Dams", + "[Upgrade name 620]Candy": "Bonbon", + "[Upgrade name 621]Fortune #001": "Bonne aventure #001", + "[Upgrade name 622]Fortune #002": "Bonne aventure #002", + "[Upgrade name 623]Fortune #003": "Bonne aventure #003", + "[Upgrade name 624]Fortune #004": "Bonne aventure #004", + "[Upgrade name 625]Fortune #005": "Bonne aventure #005", + "[Upgrade name 626]Fortune #006": "Bonne aventure #006", + "[Upgrade name 627]Fortune #007": "Bonne aventure #007", + "[Upgrade name 628]Fortune #008": "Bonne aventure #008", + "[Upgrade name 629]Fortune #009": "Bonne aventure #009", + "[Upgrade name 630]Fortune #010": "Bonne aventure #010", + "[Upgrade name 631]Fortune #011": "Bonne aventure #011", + "[Upgrade name 632]Fortune #012": "Bonne aventure #012", + "[Upgrade name 633]Fortune #013": "Bonne aventure #013", + "[Upgrade name 634]Fortune #014": "Bonne aventure #014", + "[Upgrade name 635]Fortune #015": "Bonne aventure #015", + "[Upgrade name 636]Fortune #016": "Bonne aventure #016", + "[Upgrade name 637]Fortune #017": "Bonne aventure #017", + "[Upgrade name 638]Fortune #100": "Bonne aventure #100", + "[Upgrade name 639]Fortune #101": "Bonne aventure #101", + "[Upgrade name 640]Fortune #102": "Bonne aventure #102", + "[Upgrade name 641]Fortune #103": "Bonne aventure #103", + "[Upgrade name 642]Fortune #104": "Bonne aventure #104", + "[Upgrade name 643]Fortune cookies": "Biscuits de bonne aventure", + "[Upgrade name 644]A really good guide book": "Un guide vraiment bien écrit", + "[Upgrade name 645]Prism heart biscuits": "Biscuits cœur prismatique", + "[Upgrade name 646]Kitten wages": "Salaires chatons", + "[Upgrade name 647]Pet the dragon": "Caresse le dragon", + "[Upgrade name 648]Dragon scale": "Écaille de dragon", + "[Upgrade name 649]Dragon claw": "Griffe de dragon", + "[Upgrade name 650]Dragon fang": "Croc de dragon", + "[Upgrade name 651]Dragon teddy bear": "Ours en peluche dragon", + "[Upgrade name 652]Granola cookies": "Cookies granola", + "[Upgrade name 653]Ricotta cookies": "Cookies ricotta", + "[Upgrade name 654]Roze koeken": "Roze koeken", + "[Upgrade name 655]Peanut butter cup cookies": "Cookies en bouchée beurre de cacahouète", + "[Upgrade name 656]Sesame cookies": "Cookies sésame", + "[Upgrade name 657]Taiyaki": "Taiyaki", + "[Upgrade name 658]Vanillekipferl": "Vanillekipferl", + "[Upgrade name 659]Cosmic chocolate butter biscuit": "Biscuit au beurre chocolat cosmique", + "[Upgrade name 660]Nonillion fingers": "Quintillion de doigts", + "[Upgrade name 661]Miraculite mouse": "Souris en miraculite", + "[Upgrade name 662]Generation degeneration": "Génération dégénérescence", + "[Upgrade name 663]Global seed vault": "Coffre à semences mondial", + "[Upgrade name 664]Air mining": "Extraction d'air", + "[Upgrade name 665]Behavioral reframing": "Recadrage comportemental", + "[Upgrade name 666]Altruistic loop": "Boucle altruiste", + "[Upgrade name 667]A novel idea": "Une idée novatrice", + "[Upgrade name 668]Spelling bees": "Concours d'orthographe", + "[Upgrade name 669]Toroid universe": "Univers torique", + "[Upgrade name 670]Hermetic reconciliation": "Réconciliation hermétique", + "[Upgrade name 671]His advent": "Son avènement", + "[Upgrade name 672]Split seconds": "Fractions de secondes", + "[Upgrade name 673]Flavor itself": "Le goût lui-même", + "[Upgrade name 674]Light speed limit": "Limitation de vitesse lumière", + "[Upgrade name 675]A touch of determinism": "Un zeste de déterminisme", + "[Upgrade name 676]This upgrade": "Cette amélioration", + "[Upgrade name 677]Your biggest fans": "Tes plus grands fans", + "[Upgrade name 678]Battenberg biscuits": "Biscuits battenberg", + "[Upgrade name 679]Rosette cookies": "Cookies rosette", + "[Upgrade name 680]Gangmakers": "Faiseurs de gangs", + "[Upgrade name 681]Welsh cookies": "Cookies gallois", + "[Upgrade name 682]Raspberry cheesecake cookies": "Cookies cheesecake framboise", + "[Upgrade name 683]Alternate grandmas": "Grand-mères alternatives", + "[Upgrade name 684]Manifest destiny": "Destinée manifeste", + "[Upgrade name 685]The multiverse in a nutshell": "L'univers en bref", + "[Upgrade name 686]All-conversion": "Conversion de tout", + "[Upgrade name 687]Multiverse agents": "Agents du multivers", + "[Upgrade name 688]Escape plan": "Plan d'évasion", + "[Upgrade name 689]Game design": "Conception de jeu", + "[Upgrade name 690]Sandbox universes": "Univers bacs à sable", + "[Upgrade name 691]Multiverse wars": "Guerres multiverselles", + "[Upgrade name 692]Mobile ports": "Ports mobiles", + "[Upgrade name 693]Encapsulated realities": "Réalités encapsulées", + "[Upgrade name 694]Extrinsic clicking": "Cliquage extrinsèque", + "[Upgrade name 695]Universal idling": "Veille universelle", + "[Upgrade name 696]Perforated mille-feuille cosmos": "Cosmos millefeuilles perforé", + "[Upgrade name 697]Infraverses and superverses": "Infravers et supervers", + "[Upgrade name 698]Fortune #018": "Bonne aventure #018", + "[Upgrade name 699]Butter biscuit (with butter)": "Biscuit au beurre (beurré)", + "[Upgrade name 700]Visits": "Visites", + "[Upgrade name 701]Reverse-veganism": "Végétalisme inversé", + "[Upgrade name 702]Caramel alloys": "Alliages de caramel", + "[Upgrade name 703]The infinity engine": "Le moteur à infinité", + "[Upgrade name 704]Diminishing tax returns": "Rendements d'impôts décroissants", + "[Upgrade name 705]Apparitions": "Apparitions", + "[Upgrade name 706]Wizard basements": "Caves de sorciers", + "[Upgrade name 707]Prime directive": "Première directive", + "[Upgrade name 708]Chromatic cycling": "Cyclage chromatique", + "[Upgrade name 709]Domestic rifts": "Failles domestiques", + "[Upgrade name 710]Patience abolished": "Patience abolie", + "[Upgrade name 711]Delicious pull": "Délicieuse attraction", + "[Upgrade name 712]Occam's laser": "Laser d'Ockham", + "[Upgrade name 713]On a streak": "Sur une lancée", + "[Upgrade name 714]A box": "Une boîte", + "[Upgrade name 715]Hacker shades": "Lunettes noires de hacker", + "[Upgrade name 716]Break the fifth wall": "Cassage du cinquième mur", + "[Upgrade name 717]Cat ladies": "Dames à chats", + "[Upgrade name 718]Milkhelp® lactose intolerance relief tablets": "Comprimés de soulagement de l'intolérance au lactose Milkhelp®", + "[Upgrade name 719]Aura gloves": "Gants aura", + "[Upgrade name 720]Luminous gloves": "Gants solaires", + "[Upgrade name 721]Bokkenpootjes": "Bokkenpootjes", + "[Upgrade name 722]Fat rascals": "Fat rascals", + "[Upgrade name 723]Ischler cookies": "Cookies Ischler", + "[Upgrade name 724]Matcha cookies": "Cookies matcha", + "[Upgrade name 725]Earl Grey macarons": "Macarons Earl Grey", + "[Upgrade name 726]Pokey": "Pokey", + "[Upgrade name 727]Cashew cookies": "Cookies noix de cajou", + "[Upgrade name 728]Milk chocolate cookies": "Cookies chocolat au lait", + "[Upgrade name 729]Brainy grandmas": "Grand-mères intelligentes", + "[Upgrade name 730]Principled neural shackles": "Menottes neurales scrupuleuses", + "[Upgrade name 731]Obey": "Obéissez", + "[Upgrade name 732]A sprinkle of irrationality": "Une pincée d'irrationalité", + "[Upgrade name 733]Front and back hemispheres": "Hémisphères avant et arrière", + "[Upgrade name 734]Neural networking": "Réseautage neural", + "[Upgrade name 735]Cosmic brainstorms": "Brainstorming cosmique", + "[Upgrade name 736]Megatherapy": "Mégathérapie", + "[Upgrade name 737]Synaptic lubricant": "Lubrifiant synaptique", + "[Upgrade name 738]Psychokinesis": "Psychokinésie", + "[Upgrade name 739]Spines": "Épines", + "[Upgrade name 740]Neuraforming": "Neurasphérisation", + "[Upgrade name 741]Epistemological trickery": "Ruse épistémologique", + "[Upgrade name 742]Every possible idea": "Toute idée possible", + "[Upgrade name 743]Kitchen cabinets": "Placards de cuisine", + "[Upgrade name 744]Cookie mulch": "Paillis de cookie", + "[Upgrade name 745]Delicious mineralogy": "Minéralogie délicieuse", + "[Upgrade name 746]N-dimensional assembly lines": "Chaînes de montage à n dimensions", + "[Upgrade name 747]Cookie Points": "Points de cookies", + "[Upgrade name 748]Negatheism": "Négathéisme", + "[Upgrade name 749]Magical realism": "Réalisme magique", + "[Upgrade name 750]Cosmic foreground radiation": "Rayonnement cosmique de premier plan", + "[Upgrade name 751]Arcanized glassware": "Verrerie arcanisée", + "[Upgrade name 752]Portal guns": "Armes à portail", + "[Upgrade name 753]Timeproof upholstery": "Capitonnage à l'épreuve du temps", + "[Upgrade name 754]Employee minification": "Miniaturisation d'employés", + "[Upgrade name 755]Hyperblack paint": "Peinture hypernoire", + "[Upgrade name 756]Silver lining maximization": "Optimisation de frange d'or", + "[Upgrade name 757]Multiscale profiling": "Profilage multi-échelles", + "[Upgrade name 758]PHP containment vats": "Cuves de confinement de PHP", + "[Upgrade name 759]Opposite universe": "Univers contraire", + "[Upgrade name 760]The land of dreams": "La contrée des rêves", + "[Upgrade name 761]Thoughts & prayers": "Pensées et prières", + "[Upgrade name 762]Fertile minds": "Esprits fertiles", + "[Upgrade name 763]Fortune #019": "Bonne aventure #019", + "[Upgrade name 764]Decillion fingers": "Quintilliard de doigts", + "[Upgrade name 765]Aetherice mouse": "Souris étheriz", + "[Upgrade name 766]Kitten admins": "Chatons admins", + "[Upgrade name 767]Everybutter biscuit": "Biscuit toutbeurre", + "[Upgrade name 768]Unshackled cursors": "Curseurs débridés", + "[Upgrade name 769]Unshackled grandmas": "Grand-mères débridées", + "[Upgrade name 770]Unshackled farms": "Fermes débridées", + "[Upgrade name 771]Unshackled mines": "Mines débridées", + "[Upgrade name 772]Unshackled factories": "Usines débridées", + "[Upgrade name 773]Unshackled banks": "Banques débridées", + "[Upgrade name 774]Unshackled temples": "Temples débridés", + "[Upgrade name 775]Unshackled wizard towers": "Tours de mage débridées", + "[Upgrade name 776]Unshackled shipments": "Cargaisons débridées", + "[Upgrade name 777]Unshackled alchemy labs": "Labos d'alchimie débridés", + "[Upgrade name 778]Unshackled portals": "Portails débridés", + "[Upgrade name 779]Unshackled time machines": "Machines à voyager dans le temps débridées", + "[Upgrade name 780]Unshackled antimatter condensers": "Condenseurs d'antimatière débridés", + "[Upgrade name 781]Unshackled prisms": "Prismes débridés", + "[Upgrade name 782]Unshackled chancemakers": "Porte-bonheurs débridés", + "[Upgrade name 783]Unshackled fractal engines": "Moteurs fractals débridés", + "[Upgrade name 784]Unshackled javascript consoles": "Consoles javascript débridées", + "[Upgrade name 785]Unshackled idleverses": "Veillevers débridés", + "[Upgrade name 786]Unshackled cortex bakers": "Cortex pâtissiers débridés", + "[Upgrade name 787]Unshackled flavor": "Parfums débridés", + "[Upgrade name 788]Unshackled berrylium": "Baierylium débridé", + "[Upgrade name 789]Unshackled blueberrylium": "Myrtillium débridé", + "[Upgrade name 790]Unshackled chalcedhoney": "Calcémiel débridé", + "[Upgrade name 791]Unshackled buttergold": "Beurredor débridé", + "[Upgrade name 792]Unshackled sugarmuck": "Sucrelasse débridée", + "[Upgrade name 793]Unshackled jetmint": "Menthejet débridé", + "[Upgrade name 794]Unshackled cherrysilver": "Argentcerise débridé", + "[Upgrade name 795]Unshackled hazelrald": "Émerausette débridée", + "[Upgrade name 796]Unshackled mooncandy": "Lunebonbon débridé", + "[Upgrade name 797]Unshackled astrofudge": "Astroramel débridé", + "[Upgrade name 798]Unshackled alabascream": "Albacrème débridé", + "[Upgrade name 799]Unshackled iridyum": "Iridmiam débridé", + "[Upgrade name 800]Unshackled glucosmium": "Glucosmium débridé", + "[Upgrade name 801]Delicate touch": "Toucher délicat", + "[Upgrade name 802]Steadfast murmur": "Murmure constant", + "[Upgrade name 803]Glittering edge": "Bord scintillant", + "[Upgrade name 804]Distinguished wallpaper assortment": "Ensemble de fonds d'écran distingués", + "[Upgrade name 805]Sound test": "Test sonore", + "[Upgrade name 806]Jukebox": "Juke-box", + "[Upgrade name 807]Dalgona cookies": "Cookies dalgona", + "[Upgrade name 808]Spicy cookies": "Cookies épicés", + "[Upgrade name 809]Smile cookies": "Cookies souriants", + "[Upgrade name 810]Kolachy cookies": "Cookies kolatch", + "[Upgrade name 811]Gomma cookies": "Cookies gomma", + "[Upgrade name 812]Vegan cookies": "Cookies végans", + "[Upgrade name 813]Coyotas": "Coyotas", + "[Upgrade name 814]Frosted sugar cookies": "Cookies au sucre glacé", + "[Upgrade name 815]Marshmallow sandwich cookies": "Cookies sandwich à la guimauve", + "[Upgrade name 816]Web cookies": "Cookies internet", + "[Upgrade name 817]Steamed cookies": "Cookies à la vapeur", + "[Upgrade name 818]Deep-fried cookie dough": "Pâte à cookies frite", + "[Achievement name 0]Wake and bake": "Pâtisserie au réveil", + "[Achievement name 1]Making some dough": "Se faire de la pâte", + "[Achievement name 2]So baked right now": "Tellement cuit, là", + "[Achievement name 3]Fledgling bakery": "Pâtisserie oisillon", + "[Achievement name 4]Affluent bakery": "Pâtisserie qui tourne", + "[Achievement name 5]World-famous bakery": "Pâtisserie mondialement célèbre", + "[Achievement name 6]Cosmic bakery": "Pâtisserie cosmique", + "[Achievement name 7]Galactic bakery": "Pâtisserie galactique", + "[Achievement name 8]Universal bakery": "Pâtisserie universelle", + "[Achievement name 9]Timeless bakery": "Pâtisserie éternelle", + "[Achievement name 10]Infinite bakery": "Pâtisserie infinie", + "[Achievement name 11]Immortal bakery": "Pâtisserie immortelle", + "[Achievement name 12]Don't stop me now": "Ne m'interrompez pas maintenant", + "[Achievement name 13]You can stop now": "Tu peux arrêter, maintenant", + "[Achievement name 14]Cookies all the way down": "Des cookies jusqu'en bas", + "[Achievement name 15]Overdose": "Mégadose", + "[Achievement name 16]Casual baking": "Pâtisserie sans attaches", + "[Achievement name 17]Hardcore baking": "Pâtisserie intensive", + "[Achievement name 18]Steady tasty stream": "À vos marques, goûtez, diffusez !", + "[Achievement name 19]Cookie monster": "Macaron le glouton", + "[Achievement name 20]Mass producer": "Producteur de masse", + "[Achievement name 21]Cookie vortex": "Vortex de cookies", + "[Achievement name 22]Cookie pulsar": "Pulsar de cookies", + "[Achievement name 23]Cookie quasar": "Quasar de cookies", + "[Achievement name 24]Oh hey, you're still here": "Tiens, tu es toujours là", + "[Achievement name 25]Let's never bake again": "Ne pâtissons plus jamais", + "[Achievement name 26]Sacrifice": "Sacrifice", + "[Achievement name 27]Oblivion": "Oubli", + "[Achievement name 28]From scratch": "Depuis le début", + "[Achievement name 29]Neverclick": "Pays cliquaginaire", + "[Achievement name 30]Clicktastic": "Clictastique", + "[Achievement name 31]Clickathlon": "Clicathlon", + "[Achievement name 32]Clickolympics": "Clicolympique", + "[Achievement name 33]Clickorama": "Clicorama", + "[Achievement name 34]Click": "Clic", + "[Achievement name 35]Double-click": "Double clic", + "[Achievement name 36]Mouse wheel": "Molette de souris", + "[Achievement name 37]Of Mice and Men": "Des souris et des hommes", + "[Achievement name 38]The Digital": "Le numérique", + "[Achievement name 39]Just wrong": "Simplement mal", + "[Achievement name 40]Grandma's cookies": "Cookies de grand-mère", + "[Achievement name 41]Sloppy kisses": "Baisers baveux", + "[Achievement name 42]Retirement home": "Maison de retraite", + "[Achievement name 43]Bought the farm": "Acheté la ferme", + "[Achievement name 44]Reap what you sow": "Récolte ce que tu sèmes", + "[Achievement name 45]Farm ill": "Ferme de malade", + "[Achievement name 46]Production chain": "Chaîne de production", + "[Achievement name 47]Industrial revolution": "Révolution industrielle", + "[Achievement name 48]Global warming": "Réchauffement climatique", + "[Achievement name 49]You know the drill": "Fais péter la foreuse", + "[Achievement name 50]Excavation site": "Site d'excavation", + "[Achievement name 51]Hollow the planet": "Creusons la planère", + "[Achievement name 52]Expedition": "Expédition", + "[Achievement name 53]Galactic highway": "Autoroute galactique", + "[Achievement name 54]Far far away": "Très lointaine", + "[Achievement name 55]Transmutation": "Transmutation", + "[Achievement name 56]Transmogrification": "Tranfiguration", + "[Achievement name 57]Gold member": "L'homme au membre d'or", + "[Achievement name 58]A whole new world": "Un nouveau monde", + "[Achievement name 59]Now you're thinking": "Là tu réfléchis", + "[Achievement name 60]Dimensional shift": "Déplacement dimensionnel", + "[Achievement name 61]Time warp": "Distorsion temporelle", + "[Achievement name 62]Alternate timeline": "Temporalité alternative", + "[Achievement name 63]Rewriting history": "Réécrire l'histoire", + "[Achievement name 64]One with everything": "Un avec tout", + "[Achievement name 65]Mathematician": "Mathématicien", + "[Achievement name 66]Base 10": "Base 10", + "[Achievement name 67]Golden cookie": "Cookie doré", + "[Achievement name 68]Lucky cookie": "Cookie chanceux", + "[Achievement name 69]A stroke of luck": "Un coup de chance", + "[Achievement name 70]Cheated cookies taste awful": "Les cookies trichés ont un goût affreux", + "[Achievement name 71]Uncanny clicker": "Cliqueur remarquable", + "[Achievement name 72]Builder": "Constructeur", + "[Achievement name 73]Architect": "Architecte", + "[Achievement name 74]Enhancer": "Sublimeur", + "[Achievement name 75]Augmenter": "Augmenteur", + "[Achievement name 76]Cookie-dunker": "Trempeur de cookies", + "[Achievement name 77]Fortune": "Fortune", + "[Achievement name 78]True Neverclick": "Vrai pays cliquaginaire", + "[Achievement name 79]Elder nap": "Sieste ancienne", + "[Achievement name 80]Elder slumber": "Torpeur ancienne", + "[Achievement name 81]Elder": "Ancienne", + "[Achievement name 82]Elder calm": "Calme ancien", + "[Achievement name 83]Engineer": "Ingénieur", + "[Achievement name 84]Leprechaun": "Farfadet", + "[Achievement name 85]Black cat's paw": "Patte de chat noir", + "[Achievement name 86]Nihilism": "Nihilisme", + "[Achievement name 87]Antibatter": "Antipâte", + "[Achievement name 88]Quirky quarks": "Quarks étranges", + "[Achievement name 89]It does matter!": "C'est impâtant !", + "[Achievement name 90]Upgrader": "Améliorateur", + "[Achievement name 91]Centennial": "Centenaire", + "[Achievement name 92]Hardcore": "Intense", + "[Achievement name 93]Speed baking I": "Pâtissage de vitesse I", + "[Achievement name 94]Speed baking II": "Pâtissage de vitesse II", + "[Achievement name 95]Speed baking III": "Pâtissage de vitesse III", + "[Achievement name 96]Getting even with the oven": "Régler ses comptes avec le four", + "[Achievement name 97]Now this is pod-smashing": "Ça c'est écraser les gousses", + "[Achievement name 98]Chirped out": "Cuit cuit cuit", + "[Achievement name 99]Follow the white rabbit": "Suis le lapin blanc", + "[Achievement name 100]Clickasmic": "Clicasmique", + "[Achievement name 101]Friend of the ancients": "Amitié avec les anciens", + "[Achievement name 102]Ruler of the ancients": "Chef des anciens", + "[Achievement name 103]Wholesome": "Salutaire", + "[Achievement name 104]Just plain lucky": "Simplement de la chance", + "[Achievement name 105]Itchscratcher": "Gratte le bouton", + "[Achievement name 106]Wrinklesquisher": "Écraserideux", + "[Achievement name 107]Moistburster": "Giclures de moiteur", + "[Achievement name 108]Spooky cookies": "Cookies effrayants", + "[Achievement name 109]Coming to town": "Quand on arrive en ville", + "[Achievement name 110]All hail Santa": "Gloire au Père Noël", + "[Achievement name 111]Let it snow": "Ainsi soit neige", + "[Achievement name 112]Oh deer": "Ô renne, Ô désespoir", + "[Achievement name 113]Sleigh of hand": "Traîneaumain", + "[Achievement name 114]Reindeer sleigher": "Traîneur de rennes", + "[Achievement name 115]Perfected agriculture": "Agriculture perfectionnée", + "[Achievement name 116]Ultimate automation": "Automatisation ultime", + "[Achievement name 117]Can you dig it": "Est-ce que tu peux faire ton trou", + "[Achievement name 118]Type II civilization": "Civilisation de type II", + "[Achievement name 119]Gild wars": "Guerres dorées", + "[Achievement name 120]Brain-split": "Cerveau séparé", + "[Achievement name 121]Time duke": "Duc de l'horloge", + "[Achievement name 122]Molecular maestro": "Maestro moléculaire", + "[Achievement name 123]Lone photon": "Photon solitaire", + "[Achievement name 124]Dazzling glimmer": "Lueur éclatante", + "[Achievement name 125]Blinding flash": "Éclair aveuglant", + "[Achievement name 126]Unending glow": "Lueur sans fin", + "[Achievement name 127]Lord of Constructs": "Seigneur des bâtisseurs", + "[Achievement name 128]Lord of Progress": "Seigneur du progrès", + "[Achievement name 129]Bicentennial": "Bicentenaire", + "[Achievement name 130]Lovely cookies": "Cookies adorables", + "[Achievement name 131]Centennial and a half": "Centenaire et demi", + "[Achievement name 132]Tiny cookie": "Minuscule cookie", + "[Achievement name 133]You win a cookie": "Tu gagnes un cookie", + "[Achievement name 134]Click delegator": "Cliquer, c'est déléguer", + "[Achievement name 135]Gushing grannies": "Épanchements de grand-mères", + "[Achievement name 136]I hate manure": "Je hais le fumier", + "[Achievement name 137]Never dig down": "Ne jamais creuser vers le bas", + "[Achievement name 138]The incredible machine": "La machine incroyable", + "[Achievement name 139]And beyond": "Et au-delà", + "[Achievement name 140]Magnum Opus": "Magnum opus", + "[Achievement name 141]With strange eons": "En d'étranges éternités", + "[Achievement name 142]Spacetime jigamaroo": "Binz spatio-temporel", + "[Achievement name 143]Supermassive": "Supermassif", + "[Achievement name 144]Praise the sun": "Loué soit le soleil", + "[Achievement name 145]Clickageddon": "Clicageddon", + "[Achievement name 146]Clicknarok": "Clicnarok", + "[Achievement name 147]Extreme polydactyly": "Polydactylie extrême", + "[Achievement name 148]Dr. T": "Dr. T", + "[Achievement name 149]The old never bothered me anyway": "Les vieilles choses ne m'ont jamais dérangé", + "[Achievement name 150]Homegrown": "Cultivé chez soi", + "[Achievement name 151]Technocracy": "Technocratie", + "[Achievement name 152]The center of the Earth": "Le centre de la Terre", + "[Achievement name 153]We come in peace": "Nous venons en paix ", + "[Achievement name 154]The secrets of the universe": "Les secrets de l'univers", + "[Achievement name 155]Realm of the Mad God": "Le royaume du dieu dément", + "[Achievement name 156]Forever and ever": "Pour toujours et à jamais", + "[Achievement name 157]Walk the planck": "Supplice de la distance de Planck", + "[Achievement name 158]Rise and shine": "Lève-toi et brille", + "[Achievement name 159]God complex": "Se prendre pour dieu", + "[Achievement name 160]Third-party": "Tierce partie", + "[Achievement name 161]Dematerialize": "Dématérialisation", + "[Achievement name 162]Nil zero zilch": "Nul, zéro, rien", + "[Achievement name 163]Transcendence": "Transcendance", + "[Achievement name 164]Obliterate": "Oblitération", + "[Achievement name 165]Negative void": "Vide négatif", + "[Achievement name 166]The hunt is on": "Le bon chasseur", + "[Achievement name 167]Egging on": "Marcher sur des œufs", + "[Achievement name 168]Mass Easteria": "Pâques ça à faire", + "[Achievement name 169]Hide & seek champion": "Champion de cache-cahe", + "[Achievement name 170]What's in a name": "Rien qu'un nom", + "[Achievement name 171]Pretty penny": "Somme rondelette", + "[Achievement name 172]Fit the bill": "Conforme au devis", + "[Achievement name 173]A loan in the dark": "Un prêt visible", + "[Achievement name 174]Need for greed": "J'aime l'argent", + "[Achievement name 175]It's the economy, stupid": "C'est l'économie, gros malin", + "[Achievement name 176]Your time to shrine": "Il est temple de briller", + "[Achievement name 177]Shady sect": "Secte obscure", + "[Achievement name 178]New-age cult": "Adorateurs new-age", + "[Achievement name 179]Organized religion": "Religion organisée", + "[Achievement name 180]Fanaticism": "Fanatisme", + "[Achievement name 181]Bewitched": "Ma sorcière bien-aimée", + "[Achievement name 182]The sorcerer's apprentice": "L'apprenti sorcier", + "[Achievement name 183]Charms and enchantments": "Charmes et enchantements", + "[Achievement name 184]Curses and maledictions": "Sorts et malédictions", + "[Achievement name 185]Magic kingdom": "Royaume magique", + "[Achievement name 186]Vested interest": "Conflit d'intérêt", + "[Achievement name 187]New world order": "Nouvel ordre mondial", + "[Achievement name 188]Hocus pocus": "Hocus Pocus", + "[Achievement name 189]Finger clickin' good": "Bon à en cliquer avec les doigts", + "[Achievement name 190]Panic at the bingo": "Panique au bingo", + "[Achievement name 191]Rake in the dough": "La couleur de la pâte", + "[Achievement name 192]Quarry on": "N'arrêtons pas cette carrière", + "[Achievement name 193]Yes I love technology": "Oui, j'adore la technologie", + "[Achievement name 194]Paid in full": "Tous frais payés", + "[Achievement name 195]Church of Cookiology": "Église de cookiologie", + "[Achievement name 196]Too many rabbits, not enough hats": "Trop de lapins, pas assez de chapeaux", + "[Achievement name 197]The most precious cargo": "La cargaison la plus précieuse", + "[Achievement name 198]The Aureate": "L'auréat", + "[Achievement name 199]Ever more hideous": "Encore plus hideux", + "[Achievement name 200]Be kind, rewind": "Merci de recommencer", + "[Achievement name 201]Infinitesimal": "Infinitésimal", + "[Achievement name 202]A still more glorious dawn": "Une aube encore plus glorieuse", + "[Achievement name 203]Rebirth": "Renaissance", + "[Achievement name 204]Here you go": "Nous y voilà", + "[Achievement name 205]Resurrection": "Résurrection", + "[Achievement name 206]Reincarnation": "Réincarnation", + "[Achievement name 207]Endless cycle": "Cycle sans fin", + "[Achievement name 208]The agemaster": "Le maître des âges", + "[Achievement name 209]To oldly go": "Aller vieillamment", + "[Achievement name 210]Gardener extraordinaire": "Jardinier extraordinaire", + "[Achievement name 211]Tectonic ambassador": "Ambassadeur tectonique", + "[Achievement name 212]Rise of the machines": "Révolte des machines", + "[Achievement name 213]Acquire currency": "De la moulaga", + "[Achievement name 214]Zealotry": "Zélotes et daronnes", + "[Achievement name 215]The wizarding world": "La monde de la sorcellerie", + "[Achievement name 216]Parsec-masher": "Écraseur de parsecs", + "[Achievement name 217]The work of a lifetime": "L'œuvre d'une vie", + "[Achievement name 218]A place lost in time": "Un endroit perdu dans le temps", + "[Achievement name 219]Heat death": "Mort thermique", + "[Achievement name 220]Microcosm": "Microcosme", + "[Achievement name 221]Bright future": "Lendemain qui chante", + "[Achievement name 222]Here be dragon": "Ici est le dragon", + "[Achievement name 223]How?": "Comment ?", + "[Achievement name 224]The land of milk and cookies": "Le pays du lait et des cookies", + "[Achievement name 225]He who controls the cookies controls the universe": "Celui qui contrôle les cookies contrôle l'univers", + "[Achievement name 226]Tonight on Hoarders": "Ce soir chez Diogène", + "[Achievement name 227]Are you gonna eat all that?": "Tu comptes manger tout ça ?", + "[Achievement name 228]We're gonna need a bigger bakery": "Il va falloir une plus grande pâtisserie", + "[Achievement name 229]In the mouth of madness": "Dans l'antre de la pâtisserie", + "[Achievement name 230]Brought to you by the letter
": "Livré par la poste
", + "[Achievement name 231]A world filled with cookies": "Un monde plein de cookies", + "[Achievement name 232]When this baby hits 36 quadrillion cookies per hour": "Quand cette merveille atteindra les 36 billiards de cookies à l'heure", + "[Achievement name 233]Fast and delicious": "Rapide et délicieux", + "[Achievement name 234]Cookiehertz : a really, really tasty hertz": "Cookiecœur : un cœur vraiment très goûtu", + "[Achievement name 235]Woops, you solved world hunger": "Ooups, tu as éradiqué la faim dans le monde", + "[Achievement name 236]Turbopuns": "Turbocalembours", + "[Achievement name 237]Faster menner": "Plus vite chauffeur", + "[Achievement name 238]And yet you're still hungry": "Et pourtant, t'as encore faim", + "[Achievement name 239]The Abakening": "L'illuminacuisson", + "[Achievement name 240]There's really no hard limit to how long these achievement names can be and to be quite honest I'm rather curious to see how far we can go.
Adolphus W. Green (1844–1917) started as the Principal of the Groton School in 1864. By 1865, he became second assistant librarian at the New York Mercantile Library; from 1867 to 1869, he was promoted to full librarian. From 1869 to 1873, he worked for Evarts, Southmayd & Choate, a law firm co-founded by William M. Evarts, Charles Ferdinand Southmayd and Joseph Hodges Choate. He was admitted to the New York State Bar Association in 1873.
Anyway, how's your day been?": "Il n'y a pas vraiment de limite définie à la longueur de ces noms de trophées et pour être honnête, je me demande jusqu'où on peut aller.
Adolphus W. Green (1844-1917) a débuté comme proviseur de l'école de Groton en 1864. En 1865, il est devenu le second bibliothécaire adjoint de la New York Mercantile Library, et de 1867 à 1869, il fut promu comme bibliothécaire titulaire. De 1869 à 1873, il a travaillé pour Evarts, Southmayd & Choate, un cabinet juridique co-fondé par William M. Evarts, Charles Ferdinand Southmayd et Joseph Hodges Choate. Il a été admis au barreau de l'État de New York en 1873.
Et sinon, comment s'est passée ta journée ?", + "[Achievement name 241]Fast": "Rapide", + "[Achievement name 242]Bicentennial and a half": "Bicentenaire et demi", + "[Achievement name 243]Tabloid addiction": "Dépendance à la presse de caniveau", + "[Achievement name 244]Clickastrophe": "Clictastrophe", + "[Achievement name 245]Clickataclysm": "Clicataclysme", + "[Achievement name 246]Thumbs, phalanges, metacarpals": "Pouces, phalanges, métacarpes", + "[Achievement name 247]Polymath": "Génie universel", + "[Achievement name 248]The elder scrolls": "Les parchemins des anciennes", + "[Achievement name 249]To crumbs, you say?": "Déchiqueté, vous dites ?", + "[Achievement name 250]Seedy business": "Affaires seau graines eues", + "[Achievement name 251]Freak fracking": "Fracturation sauvage", + "[Achievement name 252]Modern times": "Les temps modernes", + "[Achievement name 253]The nerve of war": "Le nerf de la guerre", + "[Achievement name 254]Wololo": "Wololo", + "[Achievement name 255]And now for my next trick, I'll need a volunteer from the audience": "Et pour mon prochain tour, j'ai besoin d'un volontaire parmi le public", + "[Achievement name 256]It's not delivery": "Ce n'est pas de la livraison", + "[Achievement name 257]Gold, Jerry! Gold!": "De l'or, Jerry, de l'or !", + "[Achievement name 258]Forbidden zone": "Zone interdite", + "[Achievement name 259]cookie clicker forever and forever a hundred years cookie clicker, all day long forever, forever a hundred times, over and over cookie clicker adventures dot com": "cookie clicker, pour toujours et à jamais, cent ans de cookie clicker, toute la journée éternellement, pour cent éternités, encore et encore cookie clicker adventures point com.", + "[Achievement name 260]Scientists baffled everywhere": "Les scientifiques du monde entier perplexes", + "[Achievement name 261]Harmony of the spheres": "Harmonie des sphères", + "[Achievement name 262]Last Chance to See": "Dernière chance de voir", + "[Achievement name 263]Early bird": "L'oiseau qui se lève tôt", + "[Achievement name 264]Fading luck": "Chance en reflux", + "[Achievement name 265]Eldeer": "Renne ancien", + "[Achievement name 266]Dude, sweet": "Sympa, mon gars", + "[Achievement name 267]Sugar rush": "Montée de sucre", + "[Achievement name 268]Year's worth of cavities": "Une année de caries", + "[Achievement name 269]Hand-picked": "Sélectionné à la main", + "[Achievement name 270]Sugar sugar": "Le sucre", + "[Achievement name 271]All-natural cane sugar": "Sucre de canne 100 % naturel", + "[Achievement name 272]Sweetmeats": "Sucreries", + "[Achievement name 273]Tricentennial": "Tricentenaire", + "[Achievement name 274]Knead for speed": "Pétrir c'est modeler", + "[Achievement name 275]Well the cookies start coming and they don't stop coming": "Une fois que les cookies arrives, ils n'arrêtent plus", + "[Achievement name 276]I don't know if you've noticed but all these icons are very slightly off-center": "Je ne sais pas si tu as remarqué, mais toutes ces icônes sont légèrement décentrées", + "[Achievement name 277]The proof of the cookie is in the baking": "C'est au pied du cookie qu'on voit le pâtissier", + "[Achievement name 278]If it's worth doing, it's worth overdoing": "Si ça vaut le coup d'être fait, ça vaut le coup d'être surfait", + "[Achievement name 279]The dreams in which I'm baking are the best I've ever had": "Les rêves où je cuis sont les meilleurs que j'aie faits", + "[Achievement name 280]Set for life": "Tranquille à vie", + "[Achievement name 281]You and the beanstalk": "Toi et le haricot magique", + "[Achievement name 282]Romancing the stone": "À la pourcuite du diamant vert", + "[Achievement name 283]Ex machina": "Ex machina", + "[Achievement name 284]And I need it now": "Et j'en ai besoin tout de suite", + "[Achievement name 285]Pray on the weak": "Exploiter les faibles", + "[Achievement name 286]It's a kind of magic": "C'est un genre de magie", + "[Achievement name 287]Make it so": "Fais-en ainsi", + "[Achievement name 288]All that glitters is gold": "Tout ce qui brille est or", + "[Achievement name 289]Here he comes": "Le voilà", + "[Achievement name 290]Way back then": "Il y a bien longtemps", + "[Achievement name 291]Exotic matter": "Matière exotique", + "[Achievement name 292]At the end of the tunnel": "Au bout du tunnel", + "[Achievement name 293]Click (starring Adam Sandler)": "Clic (avec Adam Sandler)", + "[Achievement name 294]Frantiquities": "Frantiquités", + "[Achievement name 295]Overgrowth": "Surabondance", + "[Achievement name 296]Sedimentalism": "Sédimentalisme", + "[Achievement name 297]Labor of love": "Travail d'amour", + "[Achievement name 298]Reverse funnel system": "Système d'entonnoir inversé", + "[Achievement name 299]Thus spoke you": "Ainsi parlais-tu", + "[Achievement name 300]Manafest destiny": "Destinée manafeste", + "[Achievement name 301]Neither snow nor rain nor heat nor gloom of night": "Ni la neige, ni la pluie, ni la chaleur, ni la noirceur de la nuit", + "[Achievement name 302]I've got the Midas touch": "Ce que je touche se transforme en or", + "[Achievement name 303]Which eternal lie": "Ce qui éternellement dort", + "[Achievement name 304]Déjà vu": "Déjà vu", + "[Achievement name 305]Powers of Ten": "Puissances de dix", + "[Achievement name 306]Now the dark days are gone": "Maintenant, les jours sombres sont loin", + "[Achievement name 307]Freaky jazz hands": "Mains écartées bizarres", + "[Achievement name 308]Methuselah": "Mathusalem", + "[Achievement name 309]Huge tracts of land": "D'énormes terres fertiles", + "[Achievement name 310]D-d-d-d-deeper": "P-p-p-p-plus profond-ond-nd-d", + "[Achievement name 311]Patently genius": "Génie pas tenté", + "[Achievement name 312]A capital idea": "Une idée capitale", + "[Achievement name 313]It belongs in a bakery": "Sa place est dans une pâtisserie", + "[Achievement name 314]Motormouth": "Moulin à paroles", + "[Achievement name 315]Been there done that": "Déjà vu, déjà fait", + "[Achievement name 316]Phlogisticated substances": "Substances phlogistiques", + "[Achievement name 317]Bizarro world": "Monde bizarro", + "[Achievement name 318]The long now": "Le long maintenant", + "[Achievement name 319]Chubby hadrons": "Hadrons joufflus", + "[Achievement name 320]Palettable": "Palettable", + "[Achievement name 321]Bibbidi-bobbidi-boo": "Bibbidi-bobbidi-boo", + "[Achievement name 322]I'm the wiz": "Chuis le sorcier", + "[Achievement name 323]A wizard is you": "Toi, sorcier", + "[Achievement name 324]Four-leaf cookie": "Cookie à quatre feuilles", + "[Achievement name 325]Lucked out": "Coup de bol", + "[Achievement name 326]What are the odds": "Quelles sont les probabilités", + "[Achievement name 327]Grandma needs a new pair of shoes": "Grand-mère a besoin de chaussures", + "[Achievement name 328]Million to one shot, doc": "Une chance sur un million, Doc", + "[Achievement name 329]As luck would have it": "Si on avait la chance", + "[Achievement name 330]Ever in your favor": "Toujours en ta faveur", + "[Achievement name 331]Be a lady": "Être une dame", + "[Achievement name 332]Dicey business": "Affaires déteuses", + "[Achievement name 333]Fingers crossed": "Croisons les doigts", + "[Achievement name 334]Just a statistic": "Juste une statistique", + "[Achievement name 335]Murphy's wild guess": "L'estimation au pif de Murphy", + "[Achievement name 336]Let's leaf it at that": "Feuillons-en là", + "[Achievement name 337]The ultimate clickdown": "Le duel clictime", + "[Achievement name 338]Aged well": "Vieilli comme du bon vin", + "[Achievement name 339]101st birthday": "101e anniversaire", + "[Achievement name 340]But wait 'til you get older": "Mais attends un peu de grandir", + "[Achievement name 341]Harvest moon": "Lune des récoltes", + "[Achievement name 342]Mine?": "À moi ?", + "[Achievement name 343]In full gear": "Équipé jusqu'aux dents", + "[Achievement name 344]Treacle tart economics": "Ruissellement de tarte à la mélasse", + "[Achievement name 345]Holy cookies, grandma!": "Saints cookies, grand-mère !", + "[Achievement name 346]The Prestige": "Le prestige", + "[Achievement name 347]That's just peanuts to space": "Dans l'espace, personne ne t'entendra grignoter", + "[Achievement name 348]Worth its weight in lead": "Vaut son poids en plomb", + "[Achievement name 349]What happens in the vortex stays in the vortex": "Ce qui arrive dans le vortex reste dans le vortex", + "[Achievement name 350]Invited to yesterday's party": "Invitation à la fête d'hier", + "[Achievement name 351]Downsizing": "Réduction de voilure", + "[Achievement name 352]My eyes": "Mes yeux", + "[Achievement name 353]Maybe a chance in hell, actually": "Peut-être qu'on a une chance en enfer, finalement", + "[Achievement name 354]Make like a tree": "Fais comme l'arbre", + "[Achievement name 355]Cave story": "Caverne fiction", + "[Achievement name 356]In-cog-neato": "Le doigt dans l'engrenage", + "[Achievement name 357]Save your breath because that's all you've got left": "Ne gâche pas ta salive, c'est tout ce qu'il te reste", + "[Achievement name 358]Vengeful and almighty": "Vengeur et tout-puissant", + "[Achievement name 359]Spell it out for you": "S'il faut te l'épeler", + "[Achievement name 360]Space space space space space": "Espace espace espace espace espace", + "[Achievement name 361]Don't get used to yourself, you're gonna have to change": "Ne t'habitue pas à toi-même, tu vas devoir changer", + "[Achievement name 362]Objects in the mirror dimension are closer than they appear": "Les objets de la dimension miroir sont plus proches qu'ils n'en ont l'air", + "[Achievement name 363]Groundhog day": "Le jour de la marmotte (et du papier alu)", + "[Achievement name 364]A matter of perspective": "Une question de perspective", + "[Achievement name 365]Optical illusion": "Illusion d'optique", + "[Achievement name 366]Jackpot": "Jackpot", + "[Achievement name 367]So much to do so much to see": "Tant à faire, tant à voir", + "[Achievement name 368]Running with scissors": "Courir ciseaux à la main", + "[Achievement name 369]Rarefied air": "Air raréfié", + "[Achievement name 370]Push it to the limit": "Pousse jusqu'à la limite", + "[Achievement name 371]Green cookies sleep furiously": "Les cookies verts dorment furieusement", + "[Achievement name 372]Panic! at Nabisco": "Panique ! Chez Nabisco", + "[Achievement name 373]Bursting at the seams": "Ma couture va crack-er", + "[Achievement name 374]Just about full": "À peu près plein", + "[Achievement name 375]Hungry for more": "J'en veux encore", + "[Achievement name 376]All the other kids with the pumped up clicks": "Et tous les autres gamins et leurs clics malins", + "[Achievement name 377]One...more...click...": "Juste... un... dernier... clic...", + "[Achievement name 378]Botany enthusiast": "Amateur de botanique", + "[Achievement name 379]Green, aching thumb": "Main verte endolorie", + "[Achievement name 380]In the garden of Eden (baby)": "Dans le jardin d'Éden (bébé)", + "[Achievement name 381]Keeper of the conservatory": "Gardien du conservatoire", + "[Achievement name 382]Seedless to nay": "Sans semences, hé", + "[Achievement name 383]You get nothing": "Tu n'auras rien", + "[Achievement name 384]Humble rebeginnings": "Humble recommencement", + "[Achievement name 385]The end of the world": "La fin du monde", + "[Achievement name 386]Oh, you're back": "Oh, te revoilà", + "[Achievement name 387]Lazarus": "Lazare", + "[Achievement name 388]Leisurely pace": "Rythme sans forcer", + "[Achievement name 389]Hypersonic": "Hypersonique", + "[Achievement name 390]Feed me, Orteil": "Nourris-moi, Orteil", + "[Achievement name 391]And then what?": "Et ensuite ?", + "[Achievement name 392]Tricentennial and a half": "Tricentenaire et demi", + "[Achievement name 393]Quadricentennial": "Quadricentenaire", + "[Achievement name 394]Quadricentennial and a half": "Quadricentenaire et demi", + "[Achievement name 395]Quincentennial": "Quinquacentenaire", + "[Achievement name 396]Maillard reaction": "Réaction de Maillard", + "[Achievement name 397]When the cookies ascend just right": "Quand les cookies effectuent une ascension sans accroc", + "[Achievement name 398]With her finger and her thumb": "Avec son doigt et son pouce", + "[Achievement name 399]Defense of the ancients": "Défense des anciens", + "[Achievement name 400]Sharpest tool in the shed": "Le couteau le plus aiguisé du tiroir", + "[Achievement name 401]Hey now, you're a rock": "Hé, maintenant, tu es un roc", + "[Achievement name 402]Break the mold": "Brise moisi", + "[Achievement name 403]Get the show on, get paid": "Démarre le show, fais-toi payer", + "[Achievement name 404]My world's on fire, how about yours": "Mon monde est en flammes, et le tien", + "[Achievement name 405]The meteor men beg to differ": "Les hommes-météores ne sont pas d'accord", + "[Achievement name 406]Only shooting stars": "Les étoiles filantes ne parlent que de moi", + "[Achievement name 407]We could all use a little change": "Le changement, c'est maintenant", + "[Achievement name 408]Your brain gets smart but your head gets dumb": "Quand ton esprit devient pointu mais ta tête lourde", + "[Achievement name 409]The years start coming": "Les années commencent à se faire sentir", + "[Achievement name 410]What a concept": "Quel concept", + "[Achievement name 411]You'll never shine if you don't glow": "Tu ne brilleras jamais sans lueur", + "[Achievement name 412]You'll never know if you don't go": "Tu n'arriveras jamais si tu ne pars pas", + "[Achievement name 413]Self-contained": "Autonome", + "[Achievement name 414]Threw you for a loop": "On a lancé ta boucle", + "[Achievement name 415]The sum of its parts": "La somme de ses composants", + "[Achievement name 416]Bears repeating": "Répétourson", + "[Achievement name 417]More of the same": "Encore la même chose", + "[Achievement name 418]Last recurse": "Dernier recours, Cif", + "[Achievement name 419]Out of one, many": "De unus, pluribum", + "[Achievement name 420]An example of recursion": "Un example de récursivité", + "[Achievement name 421]For more information on this achievement, please refer to its title": "Pour plus d'informations sur ce trophée, merci de lire son titre", + "[Achievement name 422]I'm so meta, even this achievement": "Je suis tellement meta, même ce trophée", + "[Achievement name 423]Never get bored": "On ne s'ennuie jamais", + "[Achievement name 424]The needs of the many": "Les besoin des nombreux", + "[Achievement name 425]Eating its own": "Manger les siens", + "[Achievement name 426]We must go deeper": "Il faut aller plus profond", + "[Achievement name 427]Sierpinski rhomboids": "Rhomboïdes Sierpinski", + "[Achievement name 428]Gotta go fast": "Il faut aller vite", + "[Achievement name 429]I think it's safe to say you've got it made": "Je pense qu'on peut dire qu'on est en place", + "[Achievement name 430]Renaissance baker": "Pâtissier de la Renaissance", + "[Achievement name 431]Veteran": "Vétéran", + "[Achievement name 432]Thick-skinned": "Coriace", + "[Achievement name 433]F12": "F12", + "[Achievement name 434]Variable success": "Succès variable", + "[Achievement name 435]No comments": "Pas de commentaires", + "[Achievement name 436]Up to code": "Conforme", + "[Achievement name 437]Works on my machine": "Ça marche sur ma machine", + "[Achievement name 438]Technical debt": "Dette technique", + "[Achievement name 439]Mind your language": "Pas de gros mots", + "[Achievement name 440]Inconsolable": "Inconsolable", + "[Achievement name 441]Closure": "Achèvement", + "[Achievement name 442]Dude what if we're all living in a simulation like what if we're all just code on a computer somewhere": "Mec, et si on vivait tous genre dans une simulation, si on n'était que des programmes sur un ordinateur quelque part", + "[Achievement name 443]Taking the back streets": "Dans tous les sens comme les rues de ma ville", + "[Achievement name 444]Inherited prototype": "Prototype hérité", + "[Achievement name 445]A model of document object": "Un modèle d'objet document", + "[Achievement name 446]First-class citizen": "Citoyen de première classe", + "[Achievement name 447]Alexandria": "Alexandrie", + "[Achievement name 448]Bake him away, toys": "Cuisez-le, mes loulous", + "[Achievement name 449]You're #1 so why try harder": "T'es numéro 1 alors pourquoi te fatiguer", + "[Achievement name 450]Haven't even begun to peak": "Même pas commencé à atteindre le sommet", + "[Achievement name 451]A sometimes food": "À ne pas manger trop souvent", + "[Achievement name 452]Not enough of a good thing": "Pas assez des bonnes choses", + "[Achievement name 453]Horn of plenty": "Corne d'abondance", + "[Achievement name 454]Smurf account": "Compte déguisé", + "[Achievement name 455]If at first you don't succeed": "Si tu ne réussis pas du premier coup", + "[Achievement name 456]O Fortuna": "O fortuna", + "[Achievement name 457]Initial public offering": "Introduction en bourse", + "[Achievement name 458]Rookie numbers": "Chiffres de débutant", + "[Achievement name 459]No nobility in poverty": "Pas de noblesse dans la pauvreté", + "[Achievement name 460]Full warehouses": "Entrepôts pleins", + "[Achievement name 461]Make my day": "Fais-moi plaisir", + "[Achievement name 462]Buy buy buy": "Achète achète achète", + "[Achievement name 463]Gaseous assets": "Biens gazeux", + "[Achievement name 464]Pyramid scheme": "Système pyramidal", + "[Achievement name 465]Jellicles": "Pelligelées", + "[Achievement name 466]Quincentennial and a half": "Quinquacentenaire et demi", + "[Achievement name 467]What did we even eat before these": "Mais que'est-ce qu'on mangeait avant ça", + "[Achievement name 468]Heavy flow": "Flux abondant", + "[Achievement name 469]More you say?": "Plus, tu dis ?", + "[Achievement name 470]Large and in charge": "Gros et aux commandes", + "[Achievement name 471]Absolutely stuffed": "Totalement repu", + "[Achievement name 472]It's only wafer-thin": "C'est fin comme une galette", + "[Achievement name 473]Clickety split": "Clique et sépare", + "[Achievement name 474]Gotta hand it to you": "Je te passe la main", + "[Achievement name 475]Okay boomer": "OK boomer", + "[Achievement name 476]Overripe": "Trop mûrs", + "[Achievement name 477]Rock on": "Rock en stock", + "[Achievement name 478]Self-manmade man": "S'est fait faire tout seul", + "[Achievement name 479]Checks out": "Ça correspond", + "[Achievement name 480]Living on a prayer": "Vivre d'espoir", + "[Achievement name 481]Higitus figitus migitus mum": "Higitus figitus migitus mum", + "[Achievement name 482]The incredible journey": "L'aventure intérieure", + "[Achievement name 483]Just a phase": "Juste une phase", + "[Achievement name 484]Don't let me leave, Murph": "Retiens-moi, Murph", + "[Achievement name 485]Caveman to cosmos": "Homme des cavernes au cosmos", + "[Achievement name 486]Particular tastes": "Goûts très particuliers", + "[Achievement name 487]A light snack": "Un petit en-cas", + "[Achievement name 488]Tempting fate": "Tenter le diable", + "[Achievement name 489]Tautological": "Tautologique", + "[Achievement name 490]Curly braces": "Appareil courbé", + "[Achievement name 491]Seven horseshoes": "Sept fers à cheval", + "[Achievement name 492]Olden days": "Jours d'antan", + "[Achievement name 493]The devil's workshop": "L'atelier du diable", + "[Achievement name 494]In the green": "Dans le vert", + "[Achievement name 495]Mountain out of a molehill, but like in a good way": "Une montagne d'un taupinière, mais dans le bon sens", + "[Achievement name 496]The wheels of progress": "La roue du progrès", + "[Achievement name 497]That's rich": "C'est gonflé", + "[Achievement name 498]Preaches and cream": "Pêches à la crème", + "[Achievement name 499]Magic thinking": "Pensée magique", + "[Achievement name 500]Is there life on Mars?": "Y-a-t-il de la vie sur Mars ?", + "[Achievement name 501]Bad chemistry": "Pas d'atomes crochus", + "[Achievement name 502]Reduced to gibbering heaps": "Réduits en tas tremblotants", + "[Achievement name 503]Back already?": "Déjà de retour ?", + "[Achievement name 504]Nuclear throne": "Trône nucléaire", + "[Achievement name 505]Making light of the situation": "La lumière sur la situation", + "[Achievement name 506]Flip a cookie. Chips, I win. Crust, you lose.": "Jette un cookie. Pépites, je gagne, croûte, tu perds.", + "[Achievement name 507]In and of itself": "En et de soi-même", + "[Achievement name 508]Duck typing": "Canarration", + "[Achievement name 509]They'll never know what hit 'em": "Ils ne sauront jamais ce qui leur est tombé dessus", + "[Achievement name 510]Well-versed": "Bien informé", + "[Achievement name 511]Ripe for the picking": "Mûrs pour la récolte", + "[Achievement name 512]Unreal": "Irréel", + "[Achievement name 513]Once you've seen one": "Une fois qu'on en a vu un", + "[Achievement name 514]Spoils and plunder": "Pillage et butin", + "[Achievement name 515]Nobody exists on purpose, nobody belongs anywhere": "Personne n'a choisi d'exister, et personne n'appartient à un endroit", + "[Achievement name 516]Hyperspace expressway": "Voie express de l'hyperespace", + "[Achievement name 517]Versatile": "Polyvalent", + "[Achievement name 518]You are inevitable": "Tu es inévitable", + "[Achievement name 519]Away from this place": "Hors d'ici", + "[Achievement name 520]Everywhere at once": "Partout à la fois", + "[Achievement name 521]Reject reality, substitute your own": "Rejette la réalité, remplace-la par la tienne", + "[Achievement name 522]Fringe": "Marginal", + "[Achievement name 523]Coherence": "Cohérence", + "[Achievement name 524]Earth-616": "Terre-616", + "[Achievement name 525]Strange topologies": "Étranges topologies", + "[Achievement name 526]Grand design": "Grand dessein", + "[Achievement name 527]Ecumenopolis": "Écumenopolis", + "[Achievement name 528]The full picture": "Le tableau d'ensemble", + "[Achievement name 529]When there's nothing left to add": "Quand il ne reste rien à ajouter", + "[Achievement name 530]Sexcentennial": "Sexacentenaire", + "[Achievement name 531]Keep going until I say stop": "Continue jusqu'à ce que je te dise de t'arrêter", + "[Achievement name 532]But I didn't say stop, did I?": "Mais je n'ai pas dit d'arrêter, si ?", + "[Achievement name 533]With unrivaled fervor": "Avec une ferveur inégalée", + "[Achievement name 534]Think big": "Pense grand", + "[Achievement name 535]Hypersize me": "Hypertaillez-moi", + "[Achievement name 536]Max capacity": "Capacité maximale", + "[Achievement name 537]Liquid assets": "Biens liquides", + "[Achievement name 538]Stifling the press": "Étouffer la presse", + "[Achievement name 539]It's big brain time": "C'est l'heure des gros cerveaux", + "[Achievement name 540]Just my imagination": "Juste mon imagination", + "[Achievement name 541]Now there's an idea": "En voilà une idée", + "[Achievement name 542]The organ that named itself": "L'organe qui s'est nommé lui-même", + "[Achievement name 543]Gyrification": "Girification", + "[Achievement name 544]A trademarked portmanteau of \"imagination\" and \"engineering\"": "Un mot-valise à marque déposée combinant « imagination » et « ingénierie »", + "[Achievement name 545]Mindfulness": "Présence d'esprit", + "[Achievement name 546]The 10% myth": "Le mythe des 10 %", + "[Achievement name 547]Don't think about it too hard": "N'y réfléchis pas trop", + "[Achievement name 548]Though fools seldom differ": "Bien que les idiots soient rarement d'un avis différent", + "[Achievement name 549]Looking kind of dumb": "L'air un peu abruti", + "[Achievement name 550]A beautiful mind": "Un bel esprit", + "[Achievement name 551]Cardinal synapses": "Synapses éminentes", + "[Achievement name 552]Positive thinking": "Pensées constructives", + "[Achievement name 553]The thought that counts": "La réflexion qui compte", + "[Achievement name 554]Unthinkable": "Impensable", + "[Achievement name 555]Gifted": "Doué", + "[Achievement name 556]They moistly come at night": "Ils viennent moelleusement la nuit", + "[Achievement name 557]It's grown on you": "Faut qu'ça pousse", + "[Achievement name 558]Don't let the walls cave in on you": "Ne laisse pas les murs se refermer sur toi", + "[Achievement name 559]Replaced by robots": "Remplacé par des robots", + "[Achievement name 560]Financial prodigy": "Prodige financier", + "[Achievement name 561]And I will pray to a big god": "Et je prierai un grand dieu", + "[Achievement name 562]Shosple Colupis": "Lettres en vrac", + "[Achievement name 563]False vacuum": "Faux vide", + "[Achievement name 564]Metallic taste": "Goût métallique", + "[Achievement name 565]Swiss cheese": "Gruyère", + "[Achievement name 566]But the future refused to change": "Mais l'avenir refusait de changer", + "[Achievement name 567]What's the dark matter with you": "Ta matière de noir les choses", + "[Achievement name 568]Enlightenment": "Illumination", + "[Achievement name 569]Never tell me the odds": "Ne me dis jamais quelles sont les chances", + "[Achievement name 570]Blowing an Apollonian gasket": "Péter un câble optique", + "[Achievement name 571]Get with the program": "Mets-toi à jour", + "[Achievement name 572]Lost your cosmic marbles": "Perdu la boule cosmique", + "[Achievement name 573]By will alone I set my mind in motion": "Par ma seule volonté mon esprit se met en branle", + "[Achievement name 574]Ain't that a click in the head": "Tête à clics", + "[Achievement name 575]Sexcentennial and a half": "Hexacentenaire et demi", + "[Achievement name 576]I am speed": "Je suis la vitesse", + "[Achievement name 577]And on and on": "Et encore et encore", + "[Achievement name 578]Fake it till you bake it": "Fais comme si, viendra la pâtisserie", + "[Achievement name 579]History in the baking": "L'Histoire en train de se cuire", + "[Achievement name 580]Baby it's old outside": "Il fait vieux dehors, bébé", + "[Achievement name 581]Myriad": "Myriade", + "[Achievement name 582]Kaizen": "Kaizen", + "[Achievement name 583]Beyond quality": "Au-delà de la qualité", + "[Achievement name 584]Everything happens so much": "Tout se passe tant", + "[Achievement name 585]I'll rest when I'm dead": "Je me reposerai à ma mort", + "[Achievement name 586]What do you get for the baker who has everything": "Qu'offrir au pâtissier qui a tout", + "[Achievement name 587]Bottomless pit": "Fosse sans fond", + "[Achievement name 588]All the stars in heaven": "Toutes les étoiles du firmament" +}); \ No newline at end of file diff --git a/gversion/gs/cookieclicker/loc/IT.js b/gversion/gs/cookieclicker/loc/IT.js new file mode 100644 index 0000000..54d721c --- /dev/null +++ b/gversion/gs/cookieclicker/loc/IT.js @@ -0,0 +1,3303 @@ +AddLanguage('IT','italian',{ + "": { + "language": "IT", + "plural-forms": "nplurals=2;plural=(n!=1);" + }, + "cookie": "biscotto", + "sugar lump": "zolletta di zucchero", + "heavenly chip": "scaglia celestiale", + "wrinkler": "divoratore", + "building": "struttura", + "upgrade": "potenziamento", + "golden cookie": "biscotto dorato", + "grandmapocalypse": "/", + "%1 cookie": [ + "%1 biscotto", + "%1 biscotti" + ], + "%1 sugar lump": [ + "%1 zolletta di zucchero", + "%1 zollette di zucchero" + ], + "%1 heavenly chip": [ + "%1 scaglia celestiale", + "%1 scaglie celestiali" + ], + "%1 golden cookie": [ + "%1 biscotto dorato", + "%1 biscotti dorati" + ], + "%1 building": [ + "%1 struttura", + "%1 strutture" + ], + "%1 upgrade": [ + "%1 potenziamento", + "%1 potenziamenti" + ], + "Yes": "Sì", + "No": "/", + "Click here": "Fai clic qui", + "Don't show this again": "Non mostrare di nuovo", + "Delete all": "Cancella tutto", + "Back": "Indietro", + "Confirm": "Conferma", + "All done!": "Fatto!", + "Load": "Carica", + "Save": "Salva", + "Quit": "Esci", + "Save & Quit": "Salva ed esci", + "Cancel": "Annulla", + "Nevermind": "Indietro", + "Random": "Casuale", + "You have %1.": "Hai %1.", + "Click": "Fai clic", + "Shift": "Maiusc", + "Shift-click": "Maiusc + clic", + "Ctrl": "/", + "Ctrl-click": "Ctrl + clic", + "Esc": "/", + "Cookies": "Biscotti", + "%1 day": [ + "%1 giorno", + "%1 giorni" + ], + "%1 hour": [ + "%1 ora", + "%1 ore" + ], + "%1 minute": [ + "%1 minuto", + "%1 minuti" + ], + "%1 second": [ + "%1 secondo", + "%1 secondi" + ], + "less than 1 second": "meno di 1 secondo", + "in %1": "tra %1", + "%1 ago": "%1 fa", + "%1 remaining": "Ancora %1", + "%1 worth": "Vale %1", + "%1 of CpS": "%1 di BpS", + "%1% of bank": "%1% del totale", + "per second:": "al secondo:", + "just now": "proprio ora", + "a long while": "da molto tempo", + "forever": "per sempre", + "Time remaining:": "Tempo restante:", + "Big clickable cookie": "Biscotto gigante cliccabile", + "Golden cookie": "Biscotto dorato", + "Wrath cookie": "Biscotto furia", + "Reindeer": "Renna", + "Options": "Opzioni", + "General": "Generali", + "Settings": "Impostazioni", + "Volume": "/", + "Volume (music)": "Volume (musica)", + "ON": "/", + "OFF": "/", + "Fancy graphics": "Grafica avanzata", + "CSS filters": "Filtri CSS", + "visual improvements; disabling may improve performance": "miglioramenti grafici; se disattivata, potrebbe incrementare le prestazioni", + "Particles": "Particelle", + "Numbers": "Numeri", + "numbers that pop up when clicking the cookie": "mostra i numeri quando fai clic sul biscotto", + "Milk [setting]": "Latte", + "Cursors [setting]": "Cursori", + "visual display of your cursors": "visualizzazione dei tuoi cursori", + "Wobbly cookie": "Movimento biscotto", + "Alt cookie sound": "Suono biscotto alternativo", + "Icon crates": "Contorno icone", + "display boxes around upgrades and achievements in Stats": "racchiude in un contorno i potenziamenti e gli obiettivi nelle Statistiche", + "Alt font": "Font alternativo", + "your cookies are displayed using a monospace font": "la quantità di biscotti viene mostrata con un carattere monospazio", + "Short numbers": "Numeri abbreviati", + "Fast notes": "Notifiche rapide", + "notifications disappear much faster": "le notifiche scompaiono più rapidamente", + "Closing warning": "Avviso chiusura", + "the game will ask you to confirm when you close the window": "il gioco chiede una conferma quando chiudi la finestra", + "Defocus": "Secondo piano", + "the game will be less resource-intensive when out of focus": "il gioco limita le risorse utilizzate quando è in background", + "Extra buttons": "Pulsanti extra", + "add options on buildings like Mute": "aggiunge opzioni alle strutture, tra cui il pulsante Minimizza", + "Lump confirmation": "Conferma zollette", + "the game will ask you to confirm before spending sugar lumps": "il gioco chiede una conferma prima di spendere zollette di zucchero", + "Custom grandmas": "Nonne personalizzate", + "some grandmas will be named after Patreon supporters": "alcune nonne prendono il nome dei sostenitori di Patreon", + "Scary stuff": "Roba che fa paura", + "Sleep mode timeout": "Modalità riposo", + "on slower computers, the game will put itself in sleep mode when it's inactive and starts to lag out; offline CpS production kicks in during sleep mode": "sui computer più lenti, il gioco entra automaticamente in modalità riposo quando è inattivo e inizia a rallentare; durante la modalità riposo si attiva la produzione offline di B/s", + "Music in background": "Musica in sottofondo", + "music will keep playing even when the game window isn't focused": "la musica continuerà a suonare anche quando la finestra di gioco non è più in primo piano", + "Cloud saving": "Salvataggio sul cloud", + "allow use of Steam Cloud for save backups": "consente di utilizzare Steam Cloud per il salvataggio di backup", + "Purge Cloud": "Ripulisci il cloud", + "Current Cloud use:": "Utilizzo corrente del cloud:", + "No Cloud access at the moment.": "Attualmente nessun accesso al cloud.", + "Screen reader mode": "Modalità lettura dello schermo", + "allows optimizations for screen readers; game will reload": "consente ottimizzazioni per le utilità per la lettura dello schermo; la partita verrà ricaricata", + "Discord status": "Stato su Discord", + "if Discord is on, show your game info as activity status": "Se Discord è attivo, mostra le tue informazioni di gioco come stato dell'attività", + "Language": "Lingua", + "Language: %1": "Lingua: %1", + "Change language": "Modifica lingua", + "note: this will save and reload your game": "nota: la partita verrà salvata e ricaricata", + "Press %1 to toggle fullscreen.": "Premi %1 per passare allo schermo intero.", + "Other versions": "Altre versioni", + "Beta": "/", + "Stats": "Statistiche", + "Shadow achievements": "Obiettivi segreti", + "These are feats that are either unfair or difficult to attain. They do not give milk.": "Queste imprese non sono ingiuste né difficili da completare. Non ricevi latte.", + "starter milk": "latte iniziale", + "for %1 achievements": "completamento di %1 obiettivi", + "appeased": "placide", + "awoken": "risvegliate", + "displeased": "scontente", + "angered": "furibonde", + "Cookies in bank:": "Biscotti posseduti:", + "Cookies baked (this ascension):": "Biscotti infornati (ascensione attuale):", + "Cookies baked (all time):": "Biscotti infornati (totali):", + "Cookies forfeited by ascending:": "Biscotti sacrificati all'ascensione:", + "Legacy started:": "Inizio genesi:", + "with %1 ascension": [ + "con %1 ascensione", + "con %1 ascensioni" + ], + "Run started:": "Inizio campagna:", + "Buildings owned:": "Strutture costruite:", + "Cookies per second:": "Biscotti al secondo:", + "Raw cookies per second:": "Biscotti naturali al secondo:", + "highest this ascension:": "record ascensione attuale:", + "multiplier:": "moltiplicatore:", + "withered:": "avvizziti:", + "Cookies per click:": "Biscotti ogni clic:", + "Cookie clicks:": "Clic sul biscotto:", + "Hand-made cookies:": "Biscotti fatti a mano:", + "Golden cookie clicks:": "Clic sui biscotti dorati:", + "Random drop multiplier:": "Moltiplicatore drop casuale:", + "all time:": "totali:", + "Running version:": "Versione attuale:", + "Special": "Speciali", + "Challenge mode:": "Modalità sfida:", + "Seasonal event:": "Evento stagionale:", + "Research:": "Ricerca:", + "Grandmatriarchs status:": "Stato matriarche:", + "Pledge:": "Giuramento:", + "Wrinklers popped:": "Divoratori fatti scoppiare:", + "Sugar lumps harvested:": "Zollette di zucchero raccolte:", + "Reindeer found:": "Renne trovate:", + "Santa stages unlocked:": "Fasi Babbo Natale sbloccate:", + "Dragon training:": "Addestramento drago:", + "Prestige": "Prestigio", + "at %1% of its potential (+%2% CpS)": "al %1% del suo potenziale (+%2% di B/s)", + "Prestige upgrades unlocked:": "Potenziamenti prestigio sbloccati:", + "Upgrades unlocked:": "Potenziamenti sbloccati:", + "Achievements unlocked:": "Obiettivi sbloccati:", + "Kitten multiplier:": "Moltiplicatore felino:", + "Milk": "Latte", + "Milk:": "Latte:", + "Milk flavors unlocked:": "Gusti di latte sbloccati:", + "Milk is gained with each achievement. It can unlock unique upgrades over time.": "Ottieni latte per ogni obiettivo raggiunto. Nel tempo può sbloccare potenziamenti unici.", + "Rank %1": "Grado %1", + "Automatic": "Auto", + "Plain milk": "Latte semplice", + "Chocolate milk": "Latte al cioccolato", + "Raspberry milk": "Latte al lampone", + "Orange milk": "Latte all'arancia", + "Caramel milk": "Latte al caramello", + "Banana milk": "Latte alla banana", + "Lime milk": "Latte al lime", + "Blueberry milk": "Latte al mirtillo", + "Strawberry milk": "Latte alla fragola", + "Vanilla milk": "Latte alla vaniglia", + "Zebra milk": "Latte zebrato", + "Cosmic milk": "Latte cosmico", + "Flaming milk": "Latte ardente", + "Sanguine milk": "Latte sanguigno", + "Midas milk": "Latte di Mida", + "Midnight milk": "Latte di mezzanotte", + "Green inferno milk": "Latte verde infernale", + "Frostfire milk": "Latte ghiacciato infernale", + "Honey milk": "Latte e miele", + "Coffee milk": "Latte macchiato", + "Tea milk": "Latte con tè", + "Coconut milk": "Latte al cocco", + "Cherry milk": "Latte alla ciliegia", + "Soy milk": "Latte di soia", + "Spiced milk": "Latte speziato", + "Maple milk": "Latte allo sciroppo d'acero", + "Mint milk": "Latte alla menta", + "Licorice milk": "Latte alla liquirizia", + "Rose milk": "Latte alla rosa", + "Dragonfruit milk": "Latte al frutto del drago", + "Info": "/", + "About": "Informazioni sul gioco", + "Cookie Clicker is a javascript game by %1 and %2.": "Cookie Clicker è un gioco in javascript sviluppato da %1 e %2.", + "Music by %1.": "Muscia di %1.", + "Useful links: %1, %2, %3, %4.": "Link utili: %1, %2, %3, %4.", + "This version of Cookie Clicker is 100% free, forever. Want to support us so we can keep developing games? Here's some ways you can help:%1": "L'attuale versione di Cookie Clicker è completamente gratuita e lo sarà per sempre. Vuoi aiutarci a sviluppare altri giochi? Ecco cosa puoi fare:%1", + "Note: if you find a new bug after an update and you're using a 3rd-party add-on, make sure it's not just your add-on causing it!": "Nota: se trovi un bug in seguito a un aggiornamento, assicurati che la causa non sia l'utilizzo di eventuali estensioni di terze parti!", + "Warning: clearing your browser cache or cookies (what else?) will result in your save being wiped. Export your save and back it up first!": "Avvertenza: eliminando la cache o i cookie (e perché mai vorresti farlo?) del browser, cancellerai il tuo salvataggio. Ricordati di esportarlo ed eseguire un backup prima di procedere!", + "Version history": "Cronologia aggiornamenti", + "Official website": "Sito Web ufficiale", + "Note: links will open in your web browser.": "Nota: i collegamenti si apriranno nel tuo browser Web.", + "Note: older update notes are in English.": "Nota: le note di aggiornamento meno recenti sono in inglese.", + "This feature is not yet available in your language.": "Questa funzionalità non è ancora disponibile nella tua lingua.", + "Restart with new changes": "Riavvia con nuove modifiche", + "Cookie Clicker is in sleep mode.": "Cookie Clicker è in modalità riposo.", + "Cookie Clicker is in sleep mode and generating offline cookies.": "Cookie Clicker è in modalità riposo e sta generando biscotti offline.", + "%1 to resume from your save file.": "%1 per continuare dal tuo file di salvataggio.", + "(this happens when too many frames are skipped at once,
usually when the game has been running in the background for a while)
(you can turn this feature off in the settings menu)": "(questo accade quando vengono saltati troppi fotogrammi in contemporanea,
generalmente quando il gioco funziona a lungo in background)
(puoi disattivare questa funzione dal menu delle impostazioni)", + "Are you sure you want to close Cookie Clicker?": "Vuoi davvero chiudere Cookie Clicker?", + "Back up your save!": "Fai un backup del salvataggio!", + "Hello again! Just a reminder that you may want to back up your Cookie Clicker save every once in a while, just in case.
To do so, go to Options and hit \"Export save\" or \"Save to file\"!": "Ci rivediamo! Vogliamo solo ricordati di eseguire regolarmente un backup del salvataggio di Cookie Clicker: non si sa mai.
Per farlo, vai alle Opzioni e premi \"Esporta salvataggio\" o \"Salva in un file\"!", + "Save manually (the game autosaves every 60 seconds; shortcut: ctrl+S)": "Salva manualmente (il gioco salva automaticamente ogni 60 secondi; scorciatoia: Ctrl+S)", + "You can use this to backup your save or to transfer it to another computer (shortcut for import: ctrl+O)": "Queste opzioni ti permettono di eseguire un backup del salvataggio o di trasferirlo su un altro computer (scorciatoia importazione: Ctrl+O)", + "Save to file": "Salva in un file", + "Load from file": "Carica da file", + "Use this to keep backups on your computer": "Queste opzioni ti permettono di conservare le copie di backup sul tuo computer", + "Export save": "Esporta salvataggio", + "This is your save code.
Copy it and keep it somewhere safe!": "Questo è il codice del tuo salvataggio.
Copialo e conservalo in un luogo sicuro!", + "Import save": "Importa salvataggio", + "Please paste in the code that was given to you on save export.": "Inserisci il codice ottenuto all'esportazione del salvataggio.", + "Game saved": "Partita salvata", + "Game loaded": "Partita caricata", + "Error while saving": "Errore durante il salvataggio", + "Export your save instead!": "Esporta il salvataggio!", + "Error importing save": "Errore di importazione del salvataggio", + "Oops, looks like the import string is all wrong!": "Ops, sembra che la stringa di importazione sia sbagliata!", + "You are attempting to load a save from a future version (v. %1; you are using v. %2).": "Stai tentando di importare il salvataggio di una versione successiva (v. %1; la tua versione attuale: v. %2).", + "Sorry, you can't import saves from the classic version.": "Siamo spiacenti, non puoi importare salvataggi dalla versione classica.", + "Wipe save": "Elimina salvataggio", + "Delete all your progress, including your achievements": "Cancella tutti i tuoi progressi, compresi gli obiettivi", + "Do you REALLY want to wipe your save?
You will lose your progress, your achievements, and your heavenly chips!": "Vuoi DAVVERO eliminare il salvataggio?
Perderai tutti i progressi, gli obiettivi e le scaglie celestiali!", + "Whoah now, are you really, REALLY sure you want to go through with this?
Don't say we didn't warn you!": "Ehi, hai davvero, DAVVERO intenzione di procedere?
Non dire che non ti abbiamo avvisato!", + "Game reset": "Partita azzerata", + "Good bye, cookies.": "Addio, biscotti.", + "Welcome back!": "Ci rivediamo!", + "You earned %1 while you were away.": "Mentre non c'eri hai ottenuto %1.", + "Mods": "Mod", + "Manage mods": "Gestisci mod", + "Publish mods": "Pubblica mod", + "Update published mods": "Aggiorna mod pubblicate", + "Only use mods from trusted sources. Some mods may require a game restart to take effect.": "Usa solo mod da fonti fidate. Alcune mod per funzionare richiedono il riavvio del gioco.", + "Enable": "Attiva", + "Disable": "Disattiva", + "Priority up": "Priorità su", + "Priority down": "Priorità giù", + "New mod": "Nuova mod", + "Select folder": "Seleziona cartella", + "Select updated folder": "Seleziona cartella aggiornata", + "Select a mod.": "Seleziona una mod.", + "Open folder": "Apri cartella", + "Open Workshop": "Apri la bottega", + "Open Workshop page": "Apri la pagina della bottega", + "Unsubscribe": "Annulla iscrizione", + "Local mod": "Mod locale", + "Open %1 folder": "Apri la cartella %1", + "Description": "Descrizione", + "Image": "Immagine", + "Name": "Nome", + "Title": "Titolo", + "Visibility": "Visibilità", + "Author": "Autore", + "File size": "Dimensione file", + "Tags": "Tag", + "Dependencies": "Dipendenze", + "Publish to Workshop": "Pubblica nella bottega", + "Version": "Versione", + "Error!": "Errore!", + "none": "nessuna", + "Publishing...": "Pubblicazione in corso…", + "Updating...": "Aggiornamento in corso…", + "Success!": "Operazione riuscita!", + "Refresh": "Aggiorna", + "Last update:": "Ultimo aggiornamento:", + "Mods are loaded from top to bottom.": "Le mod vengono caricate dall'alto al basso.", + "Some mods couldn't be loaded:": "Non è stato possibile caricare alcune mod:", + "This tool allows you to upload new mods to the Steam Workshop.
You need to select a mod folder containing a properly-formatted %1 file.
See the included sample mods for examples.": "Questo strumento ti consente di caricare nuove mod nel Workshop di Steam.
Dovrai selezionare una cartella mod contenente un file %1 adeguatamente formattato.
Vedi le mod campione incluse come esempio.", + "Mod data": "Dati mod", + "No mod data present.": "Nessun dato delle mod presente.", + "These are the mods present in your save data. You may delete some of this data to make your save file smaller.": "Queste sono le mod presenti nei tuoi dati di salvataggio. Puoi cancellare alcuni di questi dati per ridurre il file di salvataggio.", + "(loaded)": "(caricata)", + "%1 char": [ + "%1 carattere", + "%1 caratteri" + ], + "Check mod data": "Verifica dati mod", + "view and delete save data created by mods": "visualizza ed elimina i dati di salvataggio creati dalle mod", + "New update!": "Nuovo aggiornamento!", + "New version available: v. %1!": "Nuova versione disponibile: v. %1!", + "Update note: \"%1\"": "Nota aggiornamento: \"%1\"", + "Refresh to get it!": "Aggiorna la sessione!", + "You are currently playing Cookie Clicker on the %1 protocol.
The %2 version uses a different save slot than this one.
Click this lock to reload the page and switch to the %2 version!": "Stai attualmente giocando a Cookie Clicker sul protocollo %1.
La versione %2 utilizza uno slot di salvataggio differente rispetto a quella attuale.
Fai clic per ricaricare la pagina e passare alla versione %2!", + "+%1 more notification.": [ + "+%1 notifica.", + "+%1 notifiche." + ], + "Christmas": "Natale", + "Valentine's day": "San Valentino", + "Business day": "Aprile aziendale", + "Easter": "Pasqua", + "Halloween": "/", + "%1 has started!": "L'evento di %1 è iniziato!", + "%1 is over.": "L'evento di %1 è terminato.", + "%1's bakery": "Pasticceria %1", + "Name your bakery": "Dai un nome alla pasticceria", + "What should your bakery's name be?": "Quale sarà il nome della tua pasticceria?", + "bakery random name, 1st half": [ + "Ammaliante", + "Sorprendente", + "Stravagante", + "Insolente", + "Elegante", + "Incantevole", + "Adorabile", + "Pirata", + "Ninja", + "Zombie", + "Robot", + "Radicale", + "Casual", + "Eccezionale", + "Fenomenale", + "Dolce", + "Atroce", + "Duplice", + "Triplice", + "Turbo", + "Techno", + "Disco", + "Electro", + "Danzante", + "Strabiliante", + "Mutante", + "Spaziale", + "Razionale", + "Medievale", + "Futurista", + "Comandante", + "con la Barba", + "Cortese", + "Mini", + "Gigante", + "di Fuoco", + "d'Acqua", + "di Ghiaccio", + "di Metallo", + "di Plastica", + "allo Stato Solido", + "allo Stato Liquido", + "in Putrefazione", + "Lucente", + "Felice", + "Gongolante", + "in Gelatina", + "Invitante", + "Stuzzicante", + "Vorace", + "Insaziabile", + "Letale", + "Perspicace", + "Medicinale", + "Potente", + "al Cioccolato", + "Friabile", + "alla Crema", + "Leale", + "Illustre", + "Mentale", + "Spirituale", + "Delirante", + "Entusiasta", + "Folle", + "Reale", + "González", + "Bavarese" + ], + "bakery random name, 2nd half": [ + "Biscotto", + "Frollino", + "Muffin", + "Pasticcino", + "Cupcake", + "Pancake", + "Scaglia", + "Frittella", + "Congegno", + "Burattino", + "Muffola", + "Calzino", + "Teiera", + "Mistero", + "Pasticcere", + "Cuoco", + "Nonna", + "Clic", + "Cliccatore", + "Astronave", + "Fabbrica", + "Portale", + "Macchina", + "Esperimento", + "Mostro", + "Panico", + "Scassinatore", + "Bandito", + "Bottino", + "Patata", + "Pizza", + "Hamburger", + "Salsiccia", + "Polpetta", + "Spaghetto", + "Maccherone", + "Micio", + "Cucciolo", + "Giraffa", + "Zebra", + "Pappagallo", + "Delfino", + "Anatroccolo", + "Bradipo", + "Tartaruga", + "Goblin", + "Folletto", + "Gnomo", + "Computer", + "Pirata", + "Ninja", + "Zombie", + "Robot" + ], + "%1, age %2": "%1, invecchia il %2", + "Sugar lumps!": "Zollette di zucchero!", + "Because you've baked a billion cookies in total, you are now attracting sugar lumps. They coalesce quietly near the top of your screen, under the Stats button.
You will be able to harvest them when they're ripe, after which you may spend them on all sorts of things!": "Hai infornato un totale di un miliardo di biscotti, quindi hai iniziato ad attirare zollette di zucchero. Si formano lentamente nella parte superiore dello schermo, sotto il pulsante delle Statistiche.
Potrai raccoglierle quando sono mature e spenderle in mille modi diversi!", + "A sugar lump is coalescing here, attracted by your accomplishments.": "Una zolletta di zucchero è in corso di formazione, attratta dai tuoi successi.", + "Your sugar lumps mature after %1,
ripen after %2,
and fall after %3.": "Le tue zollette di zucchero crescono dopo %1,
maturano dopo %2,
e cadono dopo %3.", + "• Sugar lumps can be harvested when mature, though if left alone beyond that point they will start ripening (increasing the chance of harvesting them) and will eventually fall and be auto-harvested after some time.
• Sugar lumps are delicious and may be used as currency for all sorts of things.
• Once a sugar lump is harvested, another one will start growing in its place.
• Note that sugar lumps keep growing when the game is closed.": "• Puoi raccogliere subito le zollette di zucchero cresciute, oppure lasciarle maturare (aumentando le possibilità di raccolta); dopo un certo periodo di tempo, cadranno e verranno raccolte automaticamente.
• Le zollette di zucchero sono deliziose e possono essere utilizzare come valuta per vari scopi.
• Una volta raccolta una zolletta di zucchero, un'altra inizierà a crescere al suo posto.
• Ricorda che le zollette di zucchero continuano a crescere anche dopo la chiusura del gioco.", + "This sugar lump has been exposed to time travel shenanigans and will take an excruciating %1 to reach maturity.": "Questa zolletta di zucchero ha subito uno scherzetto temporale e dovrai attendere penosamente ancora %1 prima che sia pronta.", + "This sugar lump is still growing and will take %1 to reach maturity.": "Questa zolletta di zucchero sta ancora crescendo e sarà pronta tra %1.", + "This sugar lump is mature and will be ripe in %1.
You may click it to harvest it now, but there is a 50% chance you won't get anything.": "Questa zolletta di zucchero è cresciuta e maturerà tra %1.
Puoi fare clic per raccoglierla subito, ma c'è una probabilità del 50% di non ottenere nulla.", + "This sugar lump is ripe! Click it to harvest it.
If you do nothing, it will auto-harvest in %1.": "Questa zolletta di zucchero è matura! Fai clic per raccoglierla.
Se non intervieni, verrà raccolta automaticamente tra %1.", + "This sugar lump grew to be bifurcated; harvesting it has a 50% chance of yielding two lumps.": "Questa zolletta di zucchero è diventata biforcuta; se la raccogli, avrai il 50% di probabilità di ottener due zollette.", + "This sugar lump grew to be golden; harvesting it will yield 2 to 7 lumps, your current cookies will be doubled (capped to a gain of 24 hours of your CpS), and you will find 10% more golden cookies for the next 24 hours.": "Questa zolletta di zucchero è diventata dorata; se la raccogli potrai ottenere da 2 a 7 zollette, la tua quantità di biscotti attuale verrà raddoppiata (fino a un valore equivalente a 24 ore dei B/s) e avrai il 10% in più di probabilità di trovare biscotti dorati nelle prossime 24 ore.", + "This sugar lump was affected by the elders and grew to be meaty; harvesting it will yield between 0 and 2 lumps.": "Questa zolletta di zucchero è stata influenzata dalle anziane ed è diventata succosa; se la raccogli potrai ottenere da 0 a 2 zollette.", + "This sugar lump is caramelized, its stickiness binding it to unexpected things; harvesting it will yield between 1 and 3 lumps and will refill your sugar lump cooldowns.": "Questa zolletta di zucchero è diventata caramellata e si è appiccicata a sorprese inaspettate; se la raccogli potrai ottenere da 1 a 3 zollette e azzerare i tempi di ricarica delle zollette.", + "You harvested %1 while you were away.": "Mentre non c'eri hai raccolto %1.", + "Sugar blessing activated!": "Fortuna di zucchero attivata!", + "Your cookies have been doubled.
+10% golden cookies for the next 24 hours.": "Hai raddoppiato i tuoi biscotti.
+10% di biscotti dorati per le prossime 24 ore.", + "Sugar lump cooldowns cleared!": "Tempi di ricarica delle zollette di zucchero azzerati!", + "Botched harvest!": "Raccolta fallita!", + "Do you want to spend %1 to %2?": "Vuoi spendere %1 per acquistare %2?", + "Heralds": "Araldi", + "%1 herald": [ + "%1 araldo", + "%1 araldi" + ], + "Heralds couldn't be loaded. There may be an issue with our servers, or you are playing the game locally.": "Impossibile caricare gli araldi. Potrebbe essersi verificato un problema interno ai nostri server, oppure stai giocando in modalità locale.", + "There are no heralds at the moment. Please consider donating to our Patreon!": "Al momento non ci sono araldi disponibili. Che ne dici di donare sul nostro Patreon?", + "selflessly inspiring a boost in production for everyone, resulting in %1.": "stanno inspirando in modo disinteressato un incremento della produzione per tutti, risultando in %1.", + "+%1% cookies per second": "+%1% biscotti al secondo", + "You are in a Born again run, and are not currently benefiting from heralds.": "Stai giocando a una campagna Rinascita e attualmente non ottieni bonus dagli araldi.", + "You own the Heralds upgrade, and therefore benefit from the production boost.": "Possiedi il potenziamento Araldi, quindi ottieni i bonus di incremento della produzione.", + "To benefit from the herald bonus, you need a special upgrade you do not yet own. You will permanently unlock it later in the game.": "Per ottenere il bonus degli araldi hai bisogno di un potenziamento che non possiedi ancora. Lo sbloccherai permanentemente più avanti nel gioco.", + "Heralds are people who have donated to our highest Patreon tier, and are limited to 100.
Each herald gives everyone +1% CpS.
Heralds benefit everyone playing the game, regardless of whether you donated.": "Gli araldi sono 100 sostenitori che hanno donato la quota massima sul nostro Patreon.
Ogni araldo concede a tutti un bonus di +1% B/s.
Gli araldi favoriscono tutti i giocatori, anche coloro che non hanno fatto donazioni.", + "Every %1 current players on Steam generates 1 herald, up to %2 heralds.
Each herald gives everyone +1% CpS.": "Ogni %1 giocatori attuali su Steam generano1 araldo, fino a %2 araldi.
Ciascun araldo conferisce a tutti +1% BpS.", + "+%1!": "/", + "You found %1!": "Hai trovato %1!", + "Found %1!": "Hai trovato %1!", + "You also found %1!": "Hai trovato anche %1!", + "Lost %1!": "Hai perso %1!", + "Sweet!
Found 1 sugar lump!": "Fantastico!
Hai trovato una zolletta di zucchero!", + "Lucky!": "Che fortuna!", + "Ruin!": "Che disgrazia!", + "Cookie chain over. You made %1.": "Combo di biscotti terminata. Hai ottenuto %1.", + "Cookie chain": "Combo di biscotti", + "Cookie chain broken.
You made %1.": "Combo di biscotti interrotta.
Hai ottenuto %1.", + "Cookie blab": [ + "Friabilità dei biscotti x3 per 60 secondi!", + "Potenza cioccolatosa x7 per 77 secondi!", + "Elasticità dell'impasto dimezzata per 66 secondi!", + "Lucentezza dei biscotti dorati raddoppiata per 3 secondi!", + "Economia mondiale dimezzata per 30 secondi!", + "Baci delle nonne ridotti del 23% per 45 secondi!", + "Grazie per aver fatto clic!", + "Te l'abbiamo fatta! Era solo un test.", + "+1 clic sui biscotti dorati!", + "Il tuo clic è stato registrato. Grazie per la collaborazione.", + "Grazie! Hai colpito nel segno!", + "Grazie. Abbiamo inviato una squadra.", + "Loro sanno.", + "Ops. Era solo un biscotto al cioccolato avvolto in brillante carta stagnola." + ], + "Exploded a wrinkler": "Hai fatto esplodere un divoratore", + "Exploded a shiny wrinkler": "Hai fatto esplodere un divoratore lucente", + "Swallowed:": "Divorati:", + "Reindeer names": [ + "Fulmine", + "Ballerina", + "Donnola", + "Freccia", + "Cometa", + "Cupido", + "Saltarello", + "Donato", + "Rudolph" + ], + "The reindeer gives you %1.": "La renna ti regala %1.", + "You are also rewarded with %1!": "Ottieni inoltre %1!", + "You are granted %1.": "Ottieni %1.", + "Found a present!": "Hai trovato un regalo!", + "You find a present which contains...": "Hai trovato un regalo che contiene...", + "Evolve": "Evolvi", + "Festive test tube": "Provetta natalizia", + "Festive ornament": "Decorazione natalizia", + "Festive wreath": "Ghirlanda natalizia", + "Festive tree": "Albero natalizio", + "Festive present": "Regalo natalizio", + "Festive elf fetus": "Feto di elfo natalizio", + "Elf toddler": "Elfo neonato", + "Elfling": "Elfetto", + "Young elf": "Giovane elfo", + "Bulky elf": "Elfo corpulento", + "Nick": "/", + "Santa Claus": "Babbo Natale", + "Elder Santa": "Nonno Natale", + "True Santa": "Babbo Reale", + "Final Claus": "Babbo Finale", + "Dragon egg": "Uovo di drago", + "Shivering dragon egg": "Uovo di drago tremante", + "Krumblor, cookie hatchling": "Krostator, cucciolo biscottato", + "Krumblor, cookie dragon": "Krostator, drago biscottato", + "Train %1": "Addestra %1", + "Aura: %1": "/", + "Chip it": "Crepalo", + "Hatch it": "Schiudilo", + "Bake dragon cookie": "Inforna biscotto del drago", + "Delicious!": "Delizioso!", + "Train secondary aura": "Addestra l'aura secondaria", + "Lets you use two dragon auras simultaneously": "Usa contemporaneamente due auree del drago", + "Your dragon is fully trained.": "Il tuo drago è completamente addestrato.", + "%1 of every building": "%1 di ogni struttura", + "No aura": "Nessuna aura", + "Set your dragon's aura": "Imposta l'aura del tuo drago", + "Set your dragon's secondary aura": "Imposta l'aura secondaria del tuo drago", + "Select an aura from those your dragon knows.": "Seleziona un'aura tra quelle imparate dal drago.", + "One tenth of every other dragon aura, combined.": "Una combinazione di un decimo di ogni altra aura del drago.", + "Switching your aura is free because you own no buildings.": "Cambiare l'aura è gratuito perché non possiedi strutture.", + "The cost of switching your aura is %1.
This will affect your CpS!": "Cambiare l'aura ti costerà %1.
Avrà effetto sui B/s!", + "Your dragon dropped something!": "Il tuo drago ha rilasciato qualcosa!", + "Breath of Milk": "Soffio di latte", + "Dragon Cursor": "Cursore del drago", + "Elder Battalion": "Reggimento di anziane", + "Reaper of Fields": "Mietitore dei campi", + "Earth Shatterer": "Frantumaterra", + "Master of the Armory": "Maestro dell'armonia", + "Fierce Hoarder": "Accumulatore spietato", + "Dragon God": "Drago divino", + "Arcane Aura": "Aura arcana", + "Dragonflight": "Volo di drago", + "Ancestral Metamorphosis": "Metamorfosi ancestrale", + "Unholy Dominion": "Empio dominio", + "Epoch Manipulator": "Orditore del tempo", + "Mind Over Matter": "Potere della mente", + "Radiant Appetite": "Appetito smagliante", + "Dragon's Fortune": "Fortuna del drago", + "Dragon's Curve": "Curva del drago", + "Reality Bending": "Manipolazione della realtà", + "Dragon Orbs": "Sfere del drago", + "Supreme Intellect": "Intelletto supremo", + "News :": "Ultime notizie:", + "Ticker (grandma)": [ + "Soffici biscotti.", + "Siamo adorabili nonnette.", + "Servitù vincolante.", + "Dai un bacetto alla nonna.", + "Perché non vieni mai a trovarmi?", + "Chiamami..." + ], + "Ticker (threatening grandma)": [ + "Perfettamente disgustoso.", + "Mi dai la nausea.", + "Mi disgusti.", + "È ora di ascendere.", + "Ha inizio.", + "Presto sarà tutto finito.", + "Avresti potuto impedire tutto questo." + ], + "Ticker (angry grandma)": [ + "Quel disgustoso esserino ci ha tradite.", + "Quello sgradevole esserino voleva sbarazzarsi di noi.", + "Credeva che vendendoci ci avrebbe fermate. Che sciocchezza.", + "Sento l'odore dei tuoi putridi biscotti." + ], + "Ticker (grandmas return)": [ + "avvizzisci", + "contorciti", + "pulsa", + "rosicchia", + "Sorgeremo di nuovo.", + "Un piccolo contrattempo.", + "Non siamo ancora sazie.", + "Troppo tardi." + ], + "Ticker (grandma invasion start)": [ + "milioni di anziane signore sono scomparse!", + "le famiglie di tutto il continente segnalano nonne nervose e pietrificate!", + "gli infermieri segnalano che intorno alle pazienti anziane aleggia uno \"strano profumo di impasto per biscotti\"!" + ], + "Ticker (grandma invasion rise)": [ + "intere città nel panico, anziane signore irrompono nelle case per rapire bambini e utensili da pasticceria!", + "l'intero continente assiste a un esodo di massa di anziane signore!", + "anziane signore si pietrificano in mezzo alla strada, trasudando tiepido sciroppo di zucchero!" + ], + "Ticker (grandma invasion full)": [ + "grinzosi \"viticci di carne\" visibili dallo spazio!", + "ogni speranza è perduta, una massa fremente di carne e impasto ha fagocitato un'intera città!", + "l'incubo continua, gli ettari di carne grinzosa si espandono a una velocità allarmante!" + ], + "Ticker (Farm)": [ + "scienziato dichiara che le fattorie di biscotti scaricano cioccolato nocivo nei fiumi!", + "produttori di biscotti colpiti da una polemica sul cioccolato geneticamente modificato!", + "nutrizionista condanna i biscotti da fattoria come inadatti ai vegani." + ], + "Ticker (Mine)": [ + "il nostro pianeta si sta alleggerendo? Gli esperti analizzano gli effetti dell'estrazione intensiva di cioccolato.", + "miniere di cioccolato attestate come causa di terremoti e voragini!", + "scoperte \"strane creature cioccolatose\" che dimorano nelle profondità delle miniere di cioccolato!" + ], + "Ticker (Factory)": [ + "le fabbriche di biscotti causano il riscaldamento globale!", + "fabbriche di biscotti in sciopero, assistenti robot assunti al posto degli operai!", + "fabbriche di biscotti in sciopero, gli operai dicono basta agli stipendi in frollini!" + ], + "Ticker (Bank)": [ + "prestiti di biscotti in aumento, la popolazione non ha abbastanza denaro da permetterseli.", + "i biscotti si stanno insinuando nell'economia per fare concorrenza alla moneta corrente!", + "molte pasticcerie si dotano di sportelli bancomat per semplificare il ritiro e il deposito di biscotti." + ], + "Ticker (Temple)": [ + "la recente scoperta di templi di cioccolato scatena la nascita di culti dei biscotti; migliaia di preghiere al Pasticciere nell'alto dei cieli!", + "teisti a livello internazionale scoprono una nuova religione dei biscotti: \"Beh, evidentemente abbiamo sempre avuto torto!\"", + "esploratori riesumano un antico artefatto da un tempio abbandonato; stupore degli archeologi di fronte al mattarello secolare!" + ], + "Ticker (Wizard tower)": [ + "non perderti le nuove fatture e maledizioni alla Fiera annuale della magia! Prezzi esclusivi su rune e libri di incantesimi.", + "maghi dei biscotti negano ogni coinvolgimento nella nascita di un bebè spaventosamente orribile; secondo i dottori, il neonato è \"francamente rivoltante, ma naturale\".", + "\"Qualsiasi magia sufficientemente rudimentale è indistinguibile dalla tecnologia\", afferma un noto tecnomago." + ], + "Ticker (Shipment)": [ + "scoperto un nuovo pianeta di cioccolato, sarà destinazione delle astronavi mercantili!", + "scoperto un gigantesco pianeta di cioccolato con un nucleo fondente certificato, puro al 99,8%!", + "organismi a base di cioccolato scoperti su un remoto pianeta!" + ], + "Ticker (Alchemy lab)": [ + "la riserva aurea nazionale si assottiglia, quantità sempre più ingenti del prezioso materiale vengono trasformate in biscotti!", + "la scienza afferma anche l'argento può essere trasformato in cioccolato bianco!", + "chiude un laboratorio alchemico difettoso, trasformava biscotti in inutile oro." + ], + "Ticker (Portal)": [ + "preoccupazione nel paese, sempre più creature inquietanti emergono dai portali dimensionali!", + "turismo nel biscoverso popolare tra gli adolescenti annoiati! Il tasso di mortalità si attesta al 73%!", + "secondo uno studio, i portali del biscoverso sarebbero causa di invecchiamento precoce e ossessione per la pasticceria." + ], + "Ticker (Time machine)": [ + "macchine del tempo coinvolte in uno scandalo di riscrittura della storia! Sarà proprio così?", + "secondo uno storico, i biscotti portati dal passato sono \"inadeguati al consumo umano\".", + "\"Ho visto il futuro\", afferma un operatore di macchine del tempo, \"e non desidero tornarci mai più\"." + ], + "Ticker (Antimatter condenser)": [ + "un'intera città sembra essere stata inghiottita da un buco nero causato dall'antimateria; fonti affidabili affermano che la città \"non è mai esistita\"!", + "ricercatori concludono che la prima e fondamentale necessità dell'industria dei biscotti è \"più magneti\".", + "attivato con successo il primo condensatore di antimateria, non lacera la realtà!" + ], + "Ticker (Prism)": [ + "gli scienziati mettono in guardia contro la trasformazione sistematica di luce in materia: \"Un bel giorno avremo solo materia e niente luce!\"", + "i biscotti vengono letteralmente preparati alla velocità della luce grazie ai nuovi marchingegni prismatici.", + "cittadini del mondo esortati a \"non preoccuparsi\" per i frequenti lampi atmosferici." + ], + "Ticker (Chancemaker)": [ + "continuano le strane anomalie statistiche, mentre le previsioni del tempo si dimostrano sorprendentemente accurate per il terzo giorno consecutivo!", + "casinò locale in rovina, dopo che i giocatori d'azzardo hanno totalizzato un'intera settimana di vincite! \"Potremmo ancora riprenderci\", afferma il titolare prima di essere colpito 47 volte da un fulmine.", + "per una casuale fatalità, il paese vicino elegge un presidente con politiche sensate!" + ], + "Ticker (Fractal engine)": [ + "abitante del posto ha \"chiuso con Cookie Clicker\", trova le frasi autoreferenziali \"irritati e scontate\".", + "guru locale afferma che \"in ognuno c'è una piccola parte di noi\", indagato per sospetto cannibalismo.", + "dai sondaggi risulta che l'idea di biscotti fatti di biscotti è \"accettabile\"; uno dei cittadini intervistati afferma: \"Almeno ora sappiamo cosa contengono.\"" + ], + "Ticker (Javascript console)": [ + "codificare è di moda! Sempre più adolescenti si interessano agli ambiti tecnici come quello della programmazione, garantendo una futura apocalisse robot e la distruzione dell'intero genere umano.", + "sviluppatori incerti sul nome delle nuove librerie javascript, tutte le combinazioni di 3 parole sono già state utilizzate.", + "seguendo una bizzarra tendenza, molti genitori scelgono nomi quali Emma.js o Liam.js per i nuovi nati. Si segnala almeno un caso di Baby.js." + ], + "Ticker (Idleverse)": [ + "una tua versione sta vivendo i tuoi sogni in un universo alternativo? Molto probabile, scansafatiche!", + "\"Trovo conforto nella consapevolezza che là fuori qualche mia versione alternativa se la stia cavando alla grande\", afferma l'ultimo esemplare di cittadino nel multiverso.", + "fumettisti puntano il dito contro il vero multiverso in difesa di controversi buchi di trama. \"Visto? Lo dicevo che non era banale né forzato!\"" + ], + "Ticker (Cortex baker)": [ + "cervello artificiale panettiere con un quoziente intellettivo a cinque cifre: gli specialisti lo definiscono \"appena un po' tonto\".", + "gli astronomi avvertono di un cambi di traiettoria del cervello artificiale panettiere e temono possibili collisioni con conseguenti commozioni celebrali.", + "si ricorda ai dipendenti che i cervelli artificiali panettieri sono materiale di proprietà della panetteria e non permesso dargli soprannomi per ingraziarseli." + ], + "Ticker (Halloween)": [ + "aumentano i rituali pagani, mentre i bambini di tutto il mondo indossano strani costumi e ricattano i proprietari delle abitazioni per ottenere dolciumi.", + "bambini di tutto il mondo \"confusi e disorientati\", tutti i dolcetti di Halloween sono stati sostituiti da biscotti.", + "bizzarre creature ritorte si ammassano nei pressi delle fabbriche di biscotti, rosicchiano le catene di montaggio." + ], + "Ticker (Christmas)": [ + "psicopatico barbuto avvistato mentre sfrecciava nel cielo su una slitta volante! Indagini in corso.", + "pazzo obeso e gioviale ancora a piede libero, avvertono gli agenti. \"Tenete i bambini al sicuro e barricate i camini. Non è uno scherzo.\"", + "secondo le autorità, la misteriosa entità natalizia con poteri quantici continua a seminare scompiglio con un esercito di renne.", + "\"Vorreste dire che porta regali gratuitamente?!\", chiedono madri preoccupate. \"Personalmente, non mi fido della sua barba.\"", + "bambini sconvolti scoprono che in fondo Babbo Natale non è papà con un costume!
\"In questo momento sto rivalutando la mia vita\", confida Laura, 6 anni." + ], + "Ticker (Valentines)": [ + "secondo gli esperti meteorologi, l'amore è nell'aria. In ogni città vengono offerte mascherine per evitare l'infezione aerea.", + "matrimonio con un biscotto, pratica folle o scorcio del futuro?", + "dolciumi a forma di cuore invadono il mercato dei dolci, creando concorrenza all'impero dei biscotti." + ], + "Ticker (Easter)": [ + "bestiole con lunghe orecchie e code vaporose invadono le periferie, spargono terrore e cioccolato!", + "conigli ovaioli \"da un'altra dimensione\", avverte un biologo; è sconsigliato accarezzare, nutrire o cucinare le creature.", + "scoperta la capacità dei misteriosi conigli di deporre uova pur essendo mammiferi, indicando una probabile discendenza dagli ornitorinchi." + ], + "Ticker (misc)": [ + "medici consigliano di assumere biscotti freschi almeno due volte al giorno.", + "medici sconsigliano la nuova tendenza delle diete senza biscotti.", + "medici mettono in guardia le madri contro i pericoli dei \"biscotti fatti in casa\".", + "\"Non sono biscotto-dipendente. Sono solo illazioni di fan con troppo tempo libero\", rivela una celebrità.", + "\"Va bene, lo ammetto, non ho mai mangiato un biscotto in vita mia\", rivela una celebrità.", + "\"I biscotti mi hanno permesso di rimanere in forma e in salute\", rivela una celebrità.", + "ladro rapina una banca per comprare biscotti.", + "nuovo studio suggerisce che i biscotti non accelerino né rallentino l'invecchiamento, ma che ci portino \"in una direzione differente\".", + "uomo scopre di essere intollerante ai biscotti; \"Che svitato\", commenta la famiglia.", + "carestia di biscotti colpisce una città, abitanti costretti a mangiare cupcake; \"Non è la stessa cosa\", ammette il sindaco.", + "\"Bisogna ammettere che questa storia dei biscotti è piuttosto inquietante\", dichiara un idiota squilibrato.", + "sequestrati misteriosi biscotti illegali; la polizia afferma che \"hanno un sapore terribile\".", + "\"Ook\", dichiara l'orango intervistato.", + "l'industria dei biscotti controlla i nostri media? Uno squinternato teorico cospirazionista dice che potrebbe essere possibile.", + "\"A questo punto, i biscotti permeano l'economia\", afferma un economista. \"Se cominciassimo a mangiare altro, moriremmo.\"", + "biscotti dichiarati illegali in alcuni paesi di second'ordine a cui nessuno si interessa. Tensioni politiche in aumento; si spera in una guerra nel prossimo futuro." + ], + "You feel like making cookies. But nobody wants to eat your cookies.": "Hai voglia di infornare biscotti. Ma nessuno vuole mangiarli.", + "Your first batch goes to the trash. The neighborhood raccoon barely touches it.": "La prima infornata finisce nella spazzatura. Il procione di quartiere li sfiora appena.", + "Your family accepts to try some of your cookies.": "La tua famiglia accetta di provare i tuoi biscotti.", + "Your cookies are popular in the neighborhood.": "I tuoi biscotti spopolano tra il vicinato.", + "People are starting to talk about your cookies.": "Le persone cominciano a parlare dei tuoi biscotti.", + "Your cookies are talked about for miles around.": "Per miglia e miglia non si parla d'altro che dei tuoi biscotti.", + "Your cookies are renowned in the whole town!": "I tuoi biscotti sono famosi in tutta la città!", + "Your cookies bring all the boys to the yard.": "I tuoi biscotti attirano orde di ragazzi.", + "Your cookies now have their own website!": "I tuoi biscotti hanno il loro sito web!", + "Your cookies are worth a lot of money.": "I tuoi biscotti valgono un mucchio di soldi.", + "Your cookies sell very well in distant countries.": "Le vendite dei tuoi biscotti si impennano in paesi lontani.", + "People come from very far away to get a taste of your cookies.": "Le persone giungono da ogni dove per assaggiare i tuoi biscotti.", + "Kings and queens from all over the world are enjoying your cookies.": "Re e regine di tutto il mondo adorano i tuoi biscotti.", + "There are now museums dedicated to your cookies.": "Sono stati inaugurati musei dedicati ai tuoi biscotti.", + "A national day has been created in honor of your cookies.": "È stata creata una festa nazionale in onore dei tuoi biscotti.", + "Your cookies have been named a part of the world wonders.": "I tuoi biscotti sono stati inseriti tra le meraviglie del mondo.", + "History books now include a whole chapter about your cookies.": "I libri di storia includono un intero capitolo dedicato ai tuoi biscotti.", + "Your cookies have been placed under government surveillance.": "Il governo ha posto sotto sorveglianza i tuoi biscotti.", + "The whole planet is enjoying your cookies!": "L'intero pianeta adora i tuoi biscotti!", + "Strange creatures from neighboring planets wish to try your cookies.": "Strane creature da pianeti vicini vogliono assaggiare i tuoi biscotti.", + "Elder gods from the whole cosmos have awoken to taste your cookies.": "Antichi dèi di interi universi si sono risvegliati per assaggiare i tuoi biscotti.", + "Beings from other dimensions lapse into existence just to get a taste of your cookies.": "Creature di altre dimensioni scivolano nell'esistenza solo per assaggiare i tuoi biscotti.", + "Your cookies have achieved sentience.": "I tuoi biscotti sono diventati senzienti.", + "The universe has now turned into cookie dough, to the molecular level.": "Ogni singola molecola dell'universo si è trasformata in impasto per biscotti.", + "Your cookies are rewriting the fundamental laws of the universe.": "I tuoi biscotti stanno riscrivendo le leggi fondamentali dell'universo.", + "A local news station runs a 10-minute segment about your cookies. Success!
(you win a cookie)": "Un notiziario locale trasmette un segmento di 10 minuti sui tuoi biscotti. Vittoria!
(vinci un biscotto)", + "it's time to stop playing": "è ora di smettere di giocare", + "Today is your lucky day!": "Non è il tuo giorno fortunato!", + "Your lucky numbers are:": "I tuoi numeri fortunati sono:", + "Fortune!": "Che fortuna!", + "A golden cookie has appeared.": "È comparso un biscotto dorato.", + "You gain one hour of your CpS (capped at double your bank).": "Ottieni una quantità pari a un'ora dei B/s (fino al doppio di quanto possiedi).", + "You've unlocked a new upgrade.": "Hai sbloccato un nuovo potenziamento.", + "Wish granted. Golden cookie spawned.": "Desiderio esaudito. Biscotto dorato generato.", + "help me!": "aiutami!", + "Ascend": "Ascendi", + "You've been on this run for %1.": "Stai giocando a questa campagna da %1.", + "Your prestige level is currently %1.
(CpS +%2%)": "Il tuo livello di prestigio attuale è %1.
(+%2% B/s)", + "Ascending now would grant you no prestige.": "Se ascendi ora non otterrai alcun prestigio.", + "Ascending now would grant you
1 prestige level (+1% CpS)
and 1 heavenly chip to spend.": "Se ascendi ora otterrai
1 livello di prestigio (+1% B/s)
e 1 scaglia celestiale da spendere.", + "Ascending now would grant you
%1 prestige levels (+%2% CpS)
and %3 heavenly chips to spend.": "Se ascendi ora otterrai
%1 livelli di prestigio (+%2% B/s)
e %3 scaglie celestiali da spendere.", + "You need %1 more cookies for the next level.": "Ti servono ancora %1 biscotti per passare al livello successivo.", + "Do you REALLY want to ascend?
You will lose your progress and start over from scratch.
All your cookies will be converted into prestige and heavenly chips.": "Vuoi DAVVERO ascendere?
Perderai i tuoi progressi e ricomincerai da zero.
Tutti i tuoi biscotti verranno convertiti in prestigio e scaglie celestiali.", + "You will keep your achievements.": "Manterrai tutti gli obiettivi.", + "You will keep your achievements, building levels and sugar lumps.": "Manterrai tutti gli obiettivi, i livelli delle strutture e le zollette di zucchero.", + "Ascending": "Ascensione", + "So long, cookies.": "Addio, biscotti.", + "You forfeit your %1.": "Hai sacrificato %1.", + "Prestige level:": "Livello di prestigio:", + "Heavenly chips:": "Scaglie celestiali:", + "%1 prestige level": [ + "%1 livello di prestigio", + "%1 livelli di prestigio" + ], + "You gain %1!": "Ottieni %1!", + "Reincarnate": "Reincarnati", + "You are ascending.
Drag the screen around
or use arrow keys!
When you're ready,
click Reincarnate.": "Stai ascendendo.
Trascina la schermata con il mouse
o usa le frecce!
Quando hai finito,
fai clic su Reincarnati.", + "Each prestige level grants you a permanent +%1% CpS.
The more levels you have, the more cookies they require.": "Ogni livello di prestigio garantisce un bonus permanente di +%1% B/s.
Più livelli possiedi, maggiore la quantità di biscotti richiesta.", + "Heavenly chips are used to buy heavenly upgrades.
You gain 1 chip every time you gain a prestige level.": "Puoi usare le scaglie celestiali per acquistare potenziamenti celestiali.
Ottieni 1 scaglia per ogni livello di prestigio raggiunto.", + "Click this once you've bought
everything you need!": "Fai clic quando hai acquistato
tutto ciò che ti serve!", + "Are you ready to return to the mortal world?": "È il momento di tornare al mondo dei mortali?", + "Hello, cookies!": "Ehilà, biscotti!", + "Challenge mode for the next run:": "Modalità sfida per la prossima campagna:", + "Challenge modes apply special modifiers to your next ascension.
Click to change.": "Le modalità sfida applicano speciali modificatori alla tua ascensione successiva.
Fai clic per cambiare.", + "Select a challenge mode": "Seleziona una modalità sfida", + "None [ascension type]": "Nessuna", + "No special modifiers.": "Nessun modificatore speciale.", + "Born again [ascension type]": "Rinascita", + "This run will behave as if you'd just started the game from scratch. Prestige levels and heavenly upgrades will have no effect, as will sugar lumps and building levels. Perma-upgrades and minigames will be unavailable.
Some achievements are only available in this mode.": "In questa campagna sarà come se avessi ricominciato da zero. I livelli di prestigio e i potenziamenti celestiali non avranno effetto, così come eventuali zollette di zucchero e livelli delle strutture. I potenziamenti permanenti e i minigiochi non saranno disponibili.
Alcuni obiettivi sono disponibili solo in questa modalità.", + "Your bingo center/research facility is conducting experiments.": "La sala bingo/struttura di ricerca sta conducendo esperimenti.", + "Research has begun": "Ricerca iniziata", + "Research complete": "Ricerca completata", + "You have discovered: %1.": "Hai scoperto: %1.", + "Valentine's Day!": "San Valentino!", + "It's Valentine's season!
Love's in the air and cookies are just that much sweeter!": "ৄÈ la stagione di San Valentino!
L'amore è nell'aria e i biscotti sono davvero più dolci!", + "Business Day!": "Aprile aziendale!", + "It's Business season!
Don't panic! Things are gonna be looking a little more corporate for a few days.": "ৄÈ la stagione di Aprile aziendale!
Niente panico! Per qualche giorno tutto avrà un aspetto più imprenditoriale.", + "Halloween!": "/", + "It's Halloween season!
Everything is just a little bit spookier!": "ৄÈ la stagione di Halloween!
Tutto è leggermente più spettrale!", + "Christmas time!": "Natale!", + "It's Christmas season!
Bring good cheer to all and you just may get cookies in your stockings!": "ৄÈ la stagione di Natale!
Diffondi il buonumore, potrai trovare dei biscotti nella calza!", + "Easter!": "Pasqua!", + "It's Easter season!
Keep an eye out and you just might click a rabbit or two!": "ৄÈ la stagione di Pasqua!
Tieni gli occhi aperti, potresti fare clic su qualche coniglio di passaggio!", + "[Tag]Heavenly": "Celestiale", + "[Tag]Tech": "Tecnologia", + "[Tag]Cookie": "Biscotto", + "[Tag]Debug": "Debugging", + "[Tag]Switch": "Interruttore", + "[Tag]Upgrade": "Potenziamento", + "Tier:": "Classe:", + "[Tier]Plain": "Semplice", + "[Tier]Berrylium": "Ametista glassata", + "[Tier]Blueberrylium": "Mirtillio", + "[Tier]Chalcedhoney": "Ambra millefiori", + "[Tier]Buttergold": "Pandoro", + "[Tier]Sugarmuck": "Quarzucchero", + "[Tier]Jetmint": "Onice piperita", + "[Tier]Cherrysilver": "Argento marasco", + "[Tier]Hazelrald": "Uvetta smeraldina", + "[Tier]Mooncandy": "Pralina di luna", + "[Tier]Astrofudge": "Melagranato", + "[Tier]Alabascream": "Alabastrudel", + "[Tier]Iridyum": "Iridyum", + "[Tier]Synergy I": "Sinergia I", + "[Tier]Synergy II": "Sinergia II", + "[Tier]Fortune": "Fortuna", + "[Tier]Self-referential": "Autoreferenziale", + "Vaulted": "Depositato", + "Researched": "Ricercato", + "Purchased": "Acquistato", + "Unlocked forever": "Sbloccato permanentemente", + "Click to learn!": "Fai clic per imparare!", + "Click to unlearn!": "Fai clic per disimparare!", + "Upgrade": "Potenziamento", + "Upgrades": "Potenziamenti", + "Achievement": "Obiettivo", + "Achievements": "Obiettivi", + "Shadow Achievement": "Obiettivo segreto", + "Unlocked": "Sbloccato", + "Locked": "Bloccato", + "Source:": "Fonte:", + "Click to win!": "Fai clic per vincere!", + "Click to lose!": "Fai clic per perdere!", + "Legacy": "Genesi", + "Buildings": "Strutture", + "Switches": "Interruttori", + "Vault": "Deposito", + "Research": "Ricerca", + "Store": "Negozio", + "sacrifice %1": "sacrifica %1", + "Click to purchase.": "Fai clic per acquistare.", + "Click to open selector.": "Fai clic per aprire il selettore.", + "Click to toggle.": "Fai clic per attivare/disattivare.", + "Click to research.": "Fai clic per ricercare.", + "%1 to vault.": "%1 per inserire nel deposito.", + "%1 to unvault.": "%1 per rimuovere dal deposito.", + "Upgrade is vaulted and will not be auto-purchased.": "Il potenziamento si trova nel deposito e non verrà acquistato automaticamente.", + "Upgrade for %1": "Potenziamento per %1", + "Buy": "Acquista", + "Sell": "Vendi", + "all": "tutto", + "max": "max.", + "Buy all upgrades": "Acquista tutti i potenziamenti", + "Will instantly purchase every upgrade you can afford, starting from the cheapest one.
Upgrades in the vault will not be auto-purchased.
You may place an upgrade into the vault by Shift-clicking on it.": "Acquista immediatamente i potenziamenti che puoi permetterti, a partire dal più economico.
I potenziamenti nel deposito non verranno acquistati automaticamente.
Puoi riporre un potenziamento nel deposito con Shift+clic.", + "each %1 produces %2 per second": "ogni %1 produce %2 al secondo", + "%1 producing %2 per second": "Un totale di %1 produce %2 al secondo", + "%1% of total CpS": "%1% dei B/s complessivi", + "%1 produced so far": "%1 prodotti finora", + "...also boosting some other buildings:": "... vengono forniti bonus anche ad altre strutture:", + "all combined, these boosts account for %1 per second (%2% of total CpS)": "questi bonus combinati totalizzano %1 al secondo (%2% dei B/s complessivi)", + "owned: %1": "ne possiedi: %1", + "free: %1!": "gratis: %1!", + "Level %1 %2": "%2 di livello %1", + "Granting +%1% %2 CpS.": "Garantiscono +%1% B/s ottenuti da queste unità: %2.", + "Click to level up for %1.": "Fai clic per aumentare il livello al costo di %1.", + "Levelling up this building unlocks a minigame.": "Aumentando il livello di questa struttura sbloccherai un minigioco.", + "level up your %1": "aumenta il livello di queste unità: %1", + "Mute": "Minimizza", + "Minimize this building": "Minimizza questa struttura", + "Muted:": "Minimizzati:", + "Click to unmute": "Fai clic per espandere", + "Show": "Mostra", + "Hide": "Nascondi", + "Names in white were submitted by our supporters on Patreon.": "I nomi in bianco sono stati suggeriti dai nostri sostenitori su Patreon.", + "You can also press %1 to bulk-buy or sell %2 of a building at a time, or %3 for %4.": "Puoi premere %1 per acquistare o vendere in una volta sola %2 unità di una struttura, o %3 per %4 unità.", + "Investment": "Investimento", + "You're not sure what this does, you just know it means profit.": "Non sai bene come funzioni, sai solo che significa profitti.", + "Cursor": "Cursore", + "cursor": "cursore", + "cursors": "cursori", + "%1 cursor": [ + "%1 cursore", + "%1 cursori" + ], + "[Cursor quote]Autoclicks once every 10 seconds.": "Clic automatico ogni 10 secondi.", + "[Cursor business name]Rolling pin": "Mattarello", + "[Cursor business quote]Essential in flattening dough. The first step in cookie-making.": "Fondamentale per stendere l'impasto. Il primo passo nella preparazione dei biscotti.", + "Grandma": "Nonna", + "grandma": "nonna", + "grandmas": "nonne", + "%1 grandma": [ + "%1 nonna", + "%1 nonne" + ], + "[Grandma quote]A nice grandma to bake more cookies.": "Un'adorabile nonna per infornare più biscotti.", + "[Grandma business name]Oven": "Forno", + "[Grandma business quote]A crucial element of baking cookies.": "Elemento cruciale per cuocere i biscotti.", + "Farm": "Fattoria", + "farm": "fattoria", + "farms": "fattorie", + "%1 farm": [ + "%1 fattoria", + "%1 fattorie" + ], + "[Farm quote]Grows cookie plants from cookie seeds.": "Coltiva piante di biscotti da semi di biscotti.", + "[Farm business name]Kitchen": "Cucina", + "[Farm business quote]The more kitchens, the more cookies your employees can produce.": "Maggiore il numero di cucine, più biscotti potranno sfornare i tuoi dipendenti.", + "Mine": "Miniera", + "mine": "miniera", + "mines": "miniere", + "%1 mine": [ + "%1 miniera", + "%1 miniere" + ], + "[Mine quote]Mines out cookie dough and chocolate chips.": "Estrae impasto per biscotti e scaglie di cioccolato.", + "[Mine business name]Secret recipe": "Ricetta segreta", + "[Mine business quote]These give you the edge you need to outsell those pesky competitors.": "Il vantaggio perfetto per surclassare le vendite dei tuoi molesti concorrenti.", + "Factory": "Fabbrica", + "factory": "fabbrica", + "factories": "fabbriche", + "%1 factory": [ + "%1 fabbrica", + "%1 fabbriche" + ], + "[Factory quote]Produces large quantities of cookies.": "Produce enormi quantità di biscotti.", + "[Factory business name]Factory": "Fabbrica", + "[Factory business quote]Mass production is the future of baking. Seize the day, and synergize!": "La produzione di massa è il futuro della pasticceria. Cogli l'attimo e sinergizza!", + "Bank": "Banca", + "bank": "banca", + "banks": "banche", + "%1 bank": [ + "1% banca", + "1% banche" + ], + "[Bank quote]Generates cookies from interest.": "Genera biscotti dagli interessi.", + "[Bank business name]Investor": "Investitore", + "[Bank business quote]Business folks with a nose for profit, ready to finance your venture as long as there's money to be made.": "Gente d'affari con un fiuto per il profitto, pronta a finanziare la tua impresa finché garantisce un ritorno economico.", + "Temple": "Tempio", + "temple": "tempio", + "temples": "templi", + "%1 temple": [ + "%1 tempio", + "%1 templi" + ], + "[Temple quote]Full of precious, ancient chocolate.": "Colmo di antico e prezioso cioccolato.", + "[Temple business name]Like": "Mi piace", + "[Temple business quote]Your social media page is going viral! Amassing likes is the key to a lasting online presence and juicy advertising deals.": "La tua pagina social sta diventando virale! Accumulare mi piace è essenziale per una duratura presenza online e succulenti contratti pubblicitari.", + "Wizard tower": "Torre del mago", + "wizard tower": "torre del mago", + "wizard towers": "torri dei maghi", + "%1 wizard tower": [ + "%1 torre del mago", + "%1 torri dei maghi" + ], + "[Wizard tower quote]Summons cookies with magic spells.": "Evoca biscotti con un incantesimo.", + "[Wizard tower business name]Meme": "Meme", + "[Wizard tower business quote]Cookie memes are all the rage! With just the right amount of social media astroturfing, your brand image will be all over the cyberspace.": "I meme sui biscotti sono all'ultimo grido! Con una dose adeguata di astroturfing, l'immagine del tuo marchio prenderà d'assalto il cyberspazio.", + "Shipment": "Razzo", + "shipment": "razzo", + "shipments": "razzi", + "%1 shipment": [ + "%1 razzo", + "%1 razzi" + ], + "[Shipment quote]Brings in fresh cookies from the cookie planet.": "Consegna biscotti freschi dal pianeta dei biscotti.", + "[Shipment business name]Supermarket": "Supermercato", + "[Shipment business quote]A gigantic cookie emporium - your very own retail chain.": "Un gigantesco emporio dei biscotti, la tua catena di distribuzione personale.", + "Alchemy lab": "Laboratorio alchemico", + "alchemy lab": "laboratorio alchemico", + "alchemy labs": "laboratori alchemici", + "%1 alchemy lab": [ + "%1 laboratorio alchemico", + "%1 laboratori alchemici" + ], + "[Alchemy lab quote]Turns gold into cookies!": "Trasforma l'oro in biscotti!", + "[Alchemy lab business name]Stock share": "Azioni", + "[Alchemy lab business quote]You're officially on the stock market, and everyone wants a piece!": "Fai ufficialmente parte del mercato azionario e tutti vogliono una quota!", + "Portal": "Portale", + "portal": "portale", + "portals": "portali", + "%1 portal": [ + "%1 portale", + "%1 portali" + ], + "[Portal quote]Opens a door to the Cookieverse.": "Apre un varco verso il biscoverso.", + "[Portal business name]TV show": "Programma TV", + "[Portal business quote]Your cookies have their own sitcom! Hilarious baking hijinks set to the cheesiest laughtrack.": "I tuoi biscotti sono protagonisti di una sitcom! Esilaranti peripezie di pasticceria accompagnate da scadenti risate registrate.", + "Time machine": "Macchina del tempo", + "time machine": "macchina del tempo", + "time machines": "macchine del tempo", + "%1 time machine": [ + "%1 macchina del tempo", + "%1 macchine del tempo" + ], + "[Time machine quote]Brings cookies from the past, before they were even eaten.": "Trasporta biscotti dal passato, persino da epoche in cui ancora non esistevano.", + "[Time machine business name]Theme park": "Parco a tema", + "[Time machine business quote]Cookie theme parks, full of mascots and roller-coasters. Build one, build a hundred!": "Parchi a tema sui biscotti, pieni di mascotte e montagne russe. Costruiscine uno, costruiscine cento!", + "Antimatter condenser": "Condensatore di antimateria", + "antimatter condenser": "condensatore di antimateria", + "antimatter condensers": "condensatori di antimateria", + "%1 antimatter condenser": [ + "%1 condensatore di antimateria", + "%1 condensatori di antimateria" + ], + "[Antimatter condenser quote]Condenses the antimatter in the universe into cookies.": "Condensa l'antimateria dell'universo trasformandola in biscotti.", + "[Antimatter condenser business name]Cookiecoin": "Biscoin", + "[Antimatter condenser business quote]A virtual currency, already replacing regular money in some small countries.": "Valuta virtuale che in alcuni piccoli paesi sta già sostituendo la moneta corrente.", + "Prism": "Prisma", + "prism": "prisma", + "prisms": "prismi", + "%1 prism": [ + "%1 prisma", + "%1 prismi" + ], + "[Prism quote]Converts light itself into cookies.": "Converte la luce stessa in biscotti.", + "[Prism business name]Corporate country": "Nazione aziendale", + "[Prism business quote]You've made it to the top, and you can now buy entire nations to further your corporate greed. Godspeed.": "Hai raggiunto l'apice e ora puoi acquistare intere nazioni per soddisfare la tua incessante brama imprenditoriale. Buona fortuna.", + "Chancemaker": "Sorteggiatore", + "chancemaker": "sorteggiatore", + "chancemakers": "sorteggiatori", + "%1 chancemaker": [ + "%1 sorteggiatore", + "%1 sorteggiatori" + ], + "[Chancemaker quote]Generates cookies out of thin air through sheer luck.": "Crea biscotti dal nulla basandosi puramente sulla fortuna.", + "[Chancemaker business name]Privatized planet": "Pianeta privatizzato", + "[Chancemaker business quote]Actually, you know what's cool? A whole planet dedicated to producing, advertising, selling, and consuming your cookies.": "Sai cosa sarebbe grandioso? Un intero pianeta dedicato a produrre, pubblicizzare, vendere e consumare i tuoi biscotti.", + "Fractal engine": "Motore frattale", + "fractal engine": "motore frattale", + "fractal engines": "motori frattali", + "%1 fractal engine": [ + "%1 motore frattale", + "%1 motori frattali" + ], + "[Fractal engine quote]Turns cookies into even more cookies.": "Moltiplica i biscotti in un numero superiore di biscotti.", + "[Fractal engine business name]Senate seat": "Poltrona in senato", + "[Fractal engine business quote]Only through political dominion can you truly alter this world to create a brighter, more cookie-friendly future.": "Solo mediante il dominio politico potrai davvero trasformare il mondo per creare un futuro migliore e biscosostenibile.", + "Javascript console": "Console javascript", + "javascript console": "console javascript", + "javascript consoles": "console javascript", + "%1 javascript console": [ + "%1 console javascript", + "%1 console javascript" + ], + "[Javascript console quote]Creates cookies from the very code this game was written in.": "Crea biscotti utilizzando il codice sorgente stesso del gioco.", + "[Javascript console business name]Doctrine": "Dottrina", + "[Javascript console business quote]Taking many forms -religion, culture, philosophy- a doctrine may, when handled properly, cause a lasting impact on civilizations, reshaping minds and people and ensuring all future generations share a singular goal - the production, and acquisition, of more cookies.": "Una dottrina può assumere molte forme (religione, cultura, filosofia) e, se utilizzata opportunamente, può provocare un impatto duraturo sulle civiltà, plasmando menti e persone e facendo in modo che tutte le generazioni future condividano un obiettivo comune: la produzione e l'acquisizione di più biscotti.", + "Idleverse": "Passiverso", + "idleverse": "passiverso", + "idleverses": "passiversi", + "%1 idleverse": [ + "%1 passiverso", + "%1 passiversi" + ], + "[Idleverse quote]There's been countless other idle universes running alongside our own. You've finally found a way to hijack their production and convert whatever they've been making into cookies!": "Accanto alla nostra realtà si dispiegano innumerevoli universi passivi. Finalmente hai trovato un modo per sabotare la loro produzione e trasformare qualsiasi cosa abbiano realizzato in biscotti!", + "[Idleverse business name]Lateral expansions": "Espansioni trasversali", + "[Idleverse business quote]Sometimes the best way to keep going up is sideways. Diversify your ventures through non-cookie investments.": "A volte la scelta migliore è muoversi trasversalmente. Diversifica le tue imprese con investimenti esterni ai biscotti.", + "Cortex baker": "Cervello artificiale panettiere", + "cortex baker": "cervello artificiale panettiere", + "cortex bakers": "cervelli artificiali panettieri", + "%1 cortex baker": [ + "%1 cervello artificiale panettiere", + "%1 cervelli artificiali panettieri" + ], + "[Cortex baker quote]These artificial brains the size of planets are capable of simply dreaming up cookies into existence. Time and space are inconsequential. Reality is arbitrary.": "Questi cervelli artificiali dalle dimensioni planetarie sono in grado di far materializzare biscotti con la sola forza del pensiero. Per loro spazio e tempo sono irrilevanti. La realtà è un concetto relativo.", + "[Cortex baker business name]Think tank": "Pensatoio", + "[Cortex baker business quote]There's only so many ways you can bring in more profit. Or is there? Hire the most brilliant experts in the known universe and let them scrape their brains for you!": "Ci sono così tanti modi con cui puoi aumentare i profitti. O forse no? Assumi gli esperti più brillanti dell'universo conosciuto e lascia che si spremano le meningi per te!", + "CpS": "BpS", + "cookies/click": "biscotti/clic", + "%1 CpS": "%1 BpS", + "golden cookie gains": "incrementi biscotti dorati", + "golden cookie frequency": "frequenza biscotti dorati", + "golden cookie duration": "durata biscotti dorati", + "golden cookie effect duration": "durata effetto biscotti dorati", + "wrath cookie gains": "incrementi biscotti iracondi", + "wrath cookie frequency": "frequenza biscotti iracondi", + "wrath cookie duration": "durata biscotti iracondi", + "wrath cookie effect duration": "durata effetto biscotti iracondi", + "reindeer gains": "incrementi renna", + "reindeer frequency": "frequenza renna", + "reindeer duration": "durata renna", + "random drops": "drop casuali", + "milk effects": "effetti latte", + "wrinkler spawn rate": "velocità ricomparsa divoratori", + "wrinkler appetite": "appetito divoratori", + "upgrade costs": "costo del potenziamento", + "building costs": "costo della struttura", + "Clicking is %1% more powerful.": "I clic sono più potenti del %1%.", + "All cookie production multiplied by %1.": "Tutta la produzione di biscotti è moltiplicata per %1.", + "+%1 CpS": "+%1 B/s", + "+%1% base CpS.": "+%1% BpS base.", + "%1 are twice as efficient.": "Raddoppia l'efficienza di queste unità: %1.", + "%1 are %2% more powerful.": "Aumenta del %2% la potenza di queste unità: %1.", + "Unshackled! +%1% extra production.": "Senza catene! +%1% produzione extra.", + "Tiered upgrades for %1 provide an extra +%2% production.
Only works with unshackled upgrade tiers.": "I potenziamenti multilivelo per %1 forniscono un +%2% di produzione extra.
Funziona solo con potenziamenti multilivelo senza catene.", + "Unshackles all %1-tier upgrades, making them more powerful.
Only applies to unshackled buildings.": "Libera dalle catene tutti i potenziamenti di livello %1, rendendoli più potenti.
Applicabile solo a strutture senza catene.", + "The mouse and cursors are twice as efficient.": "Raddoppia l'efficienza del mouse e dei cursori", + "The mouse and cursors gain +%1 cookies for each non-cursor building owned.": "Mouse e cursori ottengono +%1 biscotti per ogni struttura diversa da un cursore in tuo possesso.", + "Grandmas gain +%1% CpS for each non-grandma building.": "Le nonne ottengono +%1% B/s per ogni struttura diversa da una nonna.", + "You gain more CpS the more milk you have.": "Più latte possiedi, più B/s ottieni.", + "Milk is %1% more powerful.": "Il latte è più potente del %1%.", + "Cookie production multiplier +%1%.": "Moltiplicatore di produzione biscotti +%1%.", + "Cookie production multiplier +%1% permanently.": "Moltiplicatore di produzione biscotti permanentemente +%1%.", + "Cookie production multiplier +%1% per Santa's levels.": "Moltiplicatore di produzione biscotti +%1% per ogni livello di Babbo Natale.", + "Cookie production multiplier +%1% for every year Cookie Clicker has existed (currently: +%2%).": "Moltiplicatore di produzione biscotti +%1% per ogni anno di vita di Cookie Clicker (attualmente: +%2%).", + "Cookie production multiplier +%1% for every building type level %2 or higher.": "Moltiplicatore di produzione biscotti +%1% per ogni tipo di struttura di livello %2 o superiore.", + "Clicking gains +%1% of your CpS.": "Ottieni +%1% B/s con ogni clic.", + "%1 gain +%2% CpS per %3.": "Queste unità ottengono +%2% B/s ogni %3: %1.", + "Multiplies the gain from %1 by %2.": "Moltiplica per %2 la rendita di queste unità: %1.", + "Grandma-operated science lab and leisure club.
Grandmas are 4 times as efficient.
Regularly unlocks new upgrades.": "Centro ricreativo e laboratorio scientifico gestito dalle nonne.
Le nonne sono 4 volte più efficienti.
Sblocca regolarmente nuovi potenziamenti.", + "Each %1 gains +%2 base CpS per %3.": "Ogni %1 ottiene +%2 B/s base ogni %3.", + "Note: the grandmothers are growing restless. Do not encourage them.": "Nota: l'inquietudine comincia a serpeggiare tra le nonne. Non incoraggiarle.", + "Note: proceeding any further in scientific research may have unexpected results. You have been warned.": "Nota: continuare ulteriormente la ricerca scientifica potrebbe portare risultati inattesi. Consideralo un avvertimento.", + "Note: this is a bad idea.": "Nota: è davvero una pessima idea.", + "Warning: purchasing this will have unexpected, and potentially undesirable results!
It's all downhill from here. You have been warned!

Purchase anyway?": "Avvertenza: questo acquisto porterà risultati inattesi e potenzialmente indesiderabili!
Da qui è tutta discesa. Consideralo un avvertimento!

Vuoi procedere comunque?", + "Contains the wrath of the elders, at least for a while.": "Contiene la furia delle anziane, almeno per il momento.", + "Puts a permanent end to the elders' wrath, at the cost of %1% of your CpS.": "Pone per sempre fine alla furia delle anziane al costo di %1% dei tuoi B/s.", + "You will get %1% of your CpS back, but the grandmatriarchs will return.": "Recupererai %1% dei tuoi B/s, ma le matriarche torneranno.", + "Time remaining until pledge runs out:": "Tempo restante alla conclusione del giuramento:", + "You haven't pledged to the elders yet.": "Non hai ancora prestato giuramento alle anziane.", + "You've pledged to the elders %1 times.": [ + "Hai prestato giuramento alle anziane una volta.", + "Hai prestato giuramento alle anziane %1 volte." + ], + "Research takes only 5 seconds.": "La ricerca impiega solo 5 secondi.", + "Golden cookies appear twice as often and stay twice as long.": "Raddoppia la frequenza e il tempo di permanenza dei biscotti dorati.", + "Golden cookies appear %1% more often.": "Aumenta del %1% la frequenza dei biscotti dorati.", + "Golden cookies appear %1% more often during %2.": "Aumenta del %1% la frequenza dei biscotti dorati durante l'evento di %2.", + "Golden cookies appear really often.": "I biscotti dorati compaiono molto spesso.", + "Golden cookie effects last twice as long.": "Raddoppia la durata degli effetti dei biscotti dorati.", + "Golden cookie effects last %1% longer.": "Aumenta del %1% la durata degli effetti dei biscotti dorati.", + "Golden cookies stay %1% longer.": "Aumenta del %1% il tempo di permanenza dei biscotti dorati.", + "Golden cookies give %1% more cookies.": "Aumenta del %1% i biscotti ottenuti dai biscotti dorati.", + "Wrath cookies give %1% more cookies.": "Aumenta del %1% i biscotti ottenuti dai biscotti furia.", + "+%1% CpS per golden cookie on-screen, multiplicative.": "+%1% B/s per ogni biscotto dorato presente sullo schermo (moltiplicativo).", + "With no buffs and no golden cookies on screen, selling your most powerful building has %1% chance to summon one.": "Se non ci sono bonus o biscotti dorati sullo schermo, vendere la struttura più potente garantisce il %1% di probabilità di evocarne uno.", + "Confers various powers to your minigames while active.
See the bottom of each minigame for more details.": "Quando attivo, conferisce vari poteri ai tuoi minigiochi.
Per ulteriori dettagli, guarda la parte inferiore di ciascun minigioco.", + "Elder pledges last twice as long.": "Raddoppia la durata dei giuramenti alle anziane.", + "Can toggle upgrades on and off at will in the stats menu.": "Puoi attivare e disattivare a piacimento i potenziamenti dal menu delle statistiche.", + "You keep producing cookies even while the game is closed.": "Continui a produrre biscotti anche dopo la chiusura del gioco.", + "Unlocks %1% of the potential of your prestige level.": "Sblocca il %1% del potenziale del tuo livello di prestigio.", + "Subsequent research will be %1 times as fast.": "Le ricerche successive saranno %1 volte più rapide.", + "Wrinklers appear %1 times as fast.": "I divoratori compariranno %1 volte più rapidamente.", + "Wrinklers spawn much more frequently.": "I divoratori vengono generati con maggiore frequenza.", + "Wrinklers explode into %1% more cookies.": "Aumenta del %1% i biscotti generati dall'esplosione dei divoratori.", + "Unlocks... something.": "Sblocca... qualcosa.", + "In the festive hat, you find...": "Nel cappello natalizio trovi...", + "a festive test tube
and %1.": "una provetta natalizia
e %1.", + "Cost scales with CpS.": "Il costo varia in base ai B/s.", + "Cost scales with Santa level.": "Il costo varia in base al livello di Babbo Natale.", + "Cost scales with how many eggs you own.": "Il costo varia in base alla quantità di uova possedute.", + "Reindeer appear %1% more often.": "Aumenta del %1% la frequenza delle renne.", + "Reindeer appear twice as frequently.": "Raddoppia la frequenza delle renne.", + "Reindeer are twice as slow.": "Dimezza la velocità delle renne.", + "Reindeer give twice as much.": "Raddoppia le ricompense delle renne.", + "Buildings sell back for %1% instead of %2%.": "Vendi le strutture in cambio di %1% invece che di %2%.", + "All buildings are %1% cheaper.": "Il costo di tutte le strutture è ridotto del %1%.", + "All upgrades are %1% cheaper.": "Il costo di tutti i potenziamenti è ridotto del %1%.", + "All buildings and upgrades are %1% cheaper.": "Il costo di tutte le strutture e i potenziamenti è ridotto del %1%.", + "%1 are %2% more efficient and %3% cheaper.": "Aumenta del %2% l'efficienza di queste unità: %1; il loro costo è ridotto del %3%.", + "Cookie upgrades are %1 times cheaper.": "I potenziamenti biscotto sono %1 volte meno costosi.", + "Random drops are %1% more common.": "Aumenta del %1% la probabilità di ritrovamenti casuali.", + "Reindeer spawn much more frequently.": "Le renne vengono generate con maggiore frequenza.", + "Allows you to trigger seasonal events at will, for a price.": "Per il giusto prezzo, ti consente di attivare gli eventi stagionali a piacimento.", + "Triggers %1 season for the next 24 hours.
Triggering another season will cancel this one.
Cost scales with unbuffed CpS and increases with every season switch.": "Attiva la stagione di %1 per le prossime 24 ore.
Attivando un'altra stagione interromperai quella in corso.
Il costo varia in base ai B/s senza bonus e aumenta a ogni cambio di stagione.", + "Click again to cancel season": "Fai di nuovo clic per interrompere la stagione", + "Seasons now last forever.": "Le stagioni durano per sempre.", + "You haven't switched seasons this ascension yet.": "Non hai ancora cambiato stagione durante l'attuale ascensione.", + "You've switched seasons once this ascension.": "Durante l'attuale ascensione hai cambiato stagione una volta.", + "You've switched seasons %1 times this ascension.": "Durante l'attuale ascensione hai cambiato stagione %1 volte.", + "Cookie production multiplied by 1,000.": "La produzione di biscotti è moltiplicata per 1.000.", + "Other eggs appear %1% more frequently.": "Aumenta del %1% la frequenza delle uova.", + "Contains a lot of cookies.": "Contiene molti biscotti.", + "The egg bursts into %1 cookies!": "L'esplosione dell'uovo genera %1 biscotti!", + "You found an egg!": "Hai trovato un uovo!", + "Eggs drop %1% more often.": "Aumenta del %1% il ritrovamento di uova.", + "Christmas cookies drop %1% more often.": "Aumenta del %1% il ritrovamento di biscotti natalizi.", + "Spooky cookies drop %1% more often.": "Aumenta del %1% il ritrovamento di biscotti spettrali.", + "Heart cookies are %1% more powerful.": "I biscotti cuore sono più potenti del %1%.", + "You continually gain more CpS the longer you've played in the current ascension.": "Più a lungo giochi all'ascensione attuale, maggiore la quantità di B/s che guadagni in modo continuato.", + "Contains an assortment of fancy biscuits.": "Contiene un sofisticato assortimento di biscotti.", + "Contains an assortment of macarons.": "Contiene un assortimento di macarons.", + "Contains an assortment of popular biscuits.": "Contiene un rinomato assortimento di biscotti.", + "Contains an assortment of rich butter cookies.": "Contiene un assortimento di golosi biscotti al burro.", + "Contains an assortment of delicious pastries.": "Contiene un assortimento di deliziosi pasticcini.", + "Contains an assortment of...something.": "Contiene un assortimento di... qualcosa.", + "Placing an upgrade in this slot will make its effects permanent across all playthroughs.": "Posiziona un potenziamento in questo slot per rendere i suoi effetti permanenti in ogni campagna.", + "Current boost:": "Bonus attuale:", + "Current:": "Attuale:", + "Click to activate.": "Fai clic per attivare.", + "Pick an upgrade to make permanent": "Scegli un potenziamento da rendere permanente", + "Here are all the upgrades you've purchased last playthrough.
Pick one to permanently gain its effects!
You can reassign this slot anytime you ascend.": "Qui trovi tutti i potenziamenti acquistati nell'ultima campagna.
Scegline uno per ottenerne gli effetti in modo permanente!
Puoi riassegnare questo slot a ogni ascensione.", + "You now keep making cookies while the game is closed, at the rate of %1% of your regular CpS and up to 1 hour after the game is closed.
(Beyond 1 hour, this is reduced by a further %2% - your rate goes down to %3% of your CpS.)": "D'ora in avanti continuerai a produrre biscotti dopo la chiusura del gioco, con un ritmo pari al %1% dei tuoi B/s standard e fino a 1 ora dalla chiusura.
(Trascorsa un'ora, il ritmo viene ridotto ulteriormente del %2%, portandolo al %3% dei tuoi B/s.)", + "You gain another +%1% of your regular CpS while the game is closed.": "Ottieni un ulteriore +%1% dei tuoi B/s standard quando il gioco è chiuso.", + "You gain another +%1% of your regular CpS while the game is closed, for a total of %2%.": "Ottieni un ulteriore +%1% dei tuoi B/s standard quando il gioco è chiuso, per un totale pari al %2%.", + "You start with %1.": "Inizi con %1.", + "Allows you to purchase a crumbly egg once you have earned 1 million cookies.": "Ti consente di acquistare un uovo friabile una volta ottenuto 1 milione di biscotti.", + "Unlocks the cookie dragon egg.": "Sblocca l'uovo del drago biscottato.", + "Synergy upgrades are %1% cheaper.": "Il costo dei potenziamenti sinergia è ridotto del %1%.", + "You retain optimal cookie production while the game is closed for %1 more days.": "Mantieni una produzione ottimale di biscotti per %1 giorni aggiuntivi quando il gioco è chiuso.", + "You retain optimal cookie production while the game is closed for twice as long, for a total of %1.": "Raddoppia il tempo di mantenimento di una produzione ottimale di biscotti quando il gioco è chiuso, per un totale di %1.", + "Unlocks the golden switch, which passively boosts your CpS by %1% but disables golden cookies.": "Sblocca l'interruttore dorato, che conferisce un bonus passivo del %1% ai B/s ma disattiva i biscotti dorati.", + "Turning this on will give you a passive +%1% CpS, but prevents golden cookies from spawning.
Cost is equal to 1 hour of production.": "Attivandolo, otterrai un bonus passivo pari a +%1% B/s, ma impedirai la generazione di biscotti dorati.
Il costo equivale a 1 ora di produzione.", + "The switch is currently giving you a passive +%1% CpS; it also prevents golden cookies from spawning.
Turning it off will revert those effects.
Cost is equal to 1 hour of production.": "Attualmente l'interruttore ti conferisce un bonus passivo pari a +%1% B/s, ma impedisce la generazione di biscotti dorati.
Disattivandolo, annullerai gli effetti.
Il costo equivale a 1 ora di produzione.", + "Unlocks the milk selector, letting you pick which milk is displayed under your cookie.
Comes with a variety of basic flavors.": "Sblocca il selettore di latte, con cui potrai scegliere il tipo di latte mostrato sotto il biscotto.
Include una serie di gusti base.", + "Contains more exotic flavors for your milk selector.": "Contiene gusti più esotici per il selettore di latte.", + "Lets you pick what flavor of milk to display.": "Ti permette di scegliere il gusto di latte mostrato.", + "Unlocks the golden cookie sound selector, which lets you pick whether golden cookies emit a sound when appearing or not.": "Sblocca il selettore audio dei biscotti dorati, con cui potrai decidere se riprodurre o meno il suono alla comparsa dei biscotti dorati.", + "Lets you change the sound golden cookies make when they spawn.": "Ti consente di modificare il suono di comparsa dei biscotti dorati.", + "No sound": "Nessuno", + "Chime": "Tintinnio", + "Fortune": "Fortuna", + "Cymbal": "Piatti", + "Squeak": "Cigolio", + "Unlocks the jukebox, which allows you to play through every sound file in the game.": "Sblocca il jukebox, che ti consente di riprodurre tutti i file audio del gioco.", + "Play through the game's sound files!": "Riproduci tutti i file audio del gioco!", + "Play": "Riproduci", + "Stop": "Arresta", + "Pause": "Pausa", + "Shuffle": "Riproduzione casuale", + "Auto": "Riproduzione automatica", + "Loop": "Ripeti", + "Unlocks the background selector, letting you select the game's background.
Comes with a variety of basic flavors.": "Sblocca il selettore dello sfondo, con cui potrai scegliere lo sfondo del gioco.
Include una serie di gusti base.", + "Lets you pick which wallpaper to display.": "Ti permette di scegliere lo sfondo da mostrare.", + "This is the first heavenly upgrade; it unlocks the Heavenly chips system.
Each time you ascend, the cookies you made in your past life are turned into heavenly chips and prestige.
Heavenly chips can be spent on a variety of permanent transcendental upgrades.
Your prestige level also gives you a permanent +1% CpS per level.": "Questo è il primo potenziamento celestiale, che sblocca il sistema delle scaglie celestiali.
A ogni ascensione, i biscotti ottenuti nella vita precedente sono trasformati in scaglie celestiali e prestigio.
Puoi spendere le scaglie celestiali per acquistare diversi potenziamenti trascendentali permanenti.
Ogni livello di prestigio ti conferisce inoltre +1% B/s.", + "You can attract %1 more wrinklers.": "Puoi attrarre %1 divoratori aggiuntivi.", + "While the golden switch is on, you gain an additional +%1% CpS per golden cookie upgrade owned.": "Con l'interruttore dorato attivo, ottieni +%1% B/s aggiuntivi per ogni potenziamento biscotto dorato in tuo possesso.", + "All upgrades are %1% cheaper per %2.": "Il costo di tutti i potenziamenti è ridotto del %1% ogni %2.", + "Unlocks a new tier of upgrades that affect 2 buildings at the same time.
Synergies appear once you have %1 of both buildings.": "Sblocca una nuova classe di potenziamenti, che hanno effetto su 2 strutture in contemporanea.
Le sinergie compaiono una volta costruite %1 unità di entrambe le strutture.", + "Golden cookies (and all other things that spawn, such as reindeer) have %1% chance of being doubled.": "I biscotti dorati (e gli altri oggetti generati, tra cui le renne) hanno il %1% di probabilità di raddoppiarsi.", + "Cookie production reduced to 0.": "La produzione di biscotti è ridotta a 0.", + "Sugar lumps coalesce a whole lot faster.": "Le zollette di zucchero si formano molto più rapidamente.", + "+%1% prestige level effect on CpS.": "Effetto dei livelli di prestigio sui B/s pari a +%1%.", + "+%1% prestige level effect on CpS.
+%2% golden cookie effect duration.
+%3% golden cookie lifespan.": "Effetto dei livelli di prestigio sui B/s pari a +%1%.
Durata dell'effetto dei biscotti dorati +%2%.
Longevità dei biscotti dorati +%3%.", + "Each unspent sugar lump (up to %1) gives +%2% CpS.
Note: this means that spending sugar lumps will decrease your CpS until they grow back.
": "Ogni zolletta di zucchero inutilizzata (fino a un limite di %1) fornisce +%2% B/s.
Nota: ciò significa che, una volta spese le zollette, i B/s sono ridotti finché non si formano nuovamente.
", + "Once an ascension, you may use the \"Sugar frenzy\" switch to triple your CpS for 1 hour, at the cost of 1 sugar lump.": "A ogni ascensione puoi utilizzare una singola volta la \"Frenesia di zucchero\" per triplicare i B/s per un'ora al costo di 1 zolletta di zucchero.", + "Each grandma (up to %1) makes sugar lumps ripen %2 sooner.": "Ogni nonna (fino a un limite di %1) riduce il tempo di maturazione delle zollette di %2.", + "Activating this will triple your CpS for 1 hour, at the cost of 1 sugar lump.": "Attivandolo potrai triplicare i B/s per un'ora al costo di 1 zolletta di zucchero.", + "May only be used once per ascension.": "Puoi utilizzarlo una singola volta per ogni ascensione.", + "activate the sugar frenzy": "attiva la frenesia di zucchero", + "Sugar frenzy!": "Frenesia di zucchero!", + "CpS x%1 for 1 hour!": "B/s x%1 per 1 ora!", + "Garden plants grow every second.
Garden seeds are free to plant.
You can switch soils at any time.": "Le piante del giardino crescono ogni secondo.
I semi possono essere piantati gratuitamente.
Puoi cambiare terreno in qualsiasi momento.", + "Dropped by %1.": "Rilasciato da %1.", + "Dropped by %1 plants.": "Rilasciato dalle piante di %1.", + "Must own the %1 upgrade.": "Devi possedere il potenziamento %1.", + "Sugar lumps are twice as likely to be unusual.": "Raddoppia la probabilità di ottenere zollette di zucchero insolite.", + "+%1% sugar lump growth.": "Crescita delle zollette di zucchero aumentata del %1%.", + "Sugar lumps ripen %1 sooner.": "Il tempo di maturazione delle zollette di zucchero è ridotto di %1.", + "Sugar lumps mature %1 sooner.": "Il tempo di crescita delle zollette di zucchero è ridotto di %1.", + "Bifurcated sugar lumps appear %1% more often and are %2% more likely to drop 2 lumps.": "Aumenta del %1% la comparsa di zollette di zucchero biforcute e del %2% la probabilità di ottenere 2 zollette da esse.", + "Mouse over a wrinkler to see how many cookies are in its stomach.": "Posiziona il mouse su un divoratore per visualizzare il numero di biscotti che ha ingurgitato.", + "Unlocks the Buy all feature, which lets you instantly purchase every upgrade in your store (starting from the cheapest one).
Also unlocks the Vault, a store section where you can place upgrades you do not wish to auto-buy.": "Sblocca la funzione Acquista tutto, che ti permette di acquistare immediatamente tutti i potenziamenti del negozio (a partire dal più economico).
Sblocca inoltre il Deposito, una sezione del negozio in cui inserire i potenziamenti che non desideri acquistare automaticamente.", + "Mouse over an upgrade to see its tier.
Note: only some upgrades have tiers. Tiers are purely cosmetic and have no effect on gameplay.": "Posiziona il mouse su un potenziamento per conoscerne la classe.
Nota: solo alcuni potenziamenti appartengono a una classe. Le classi sono puramente estetiche e non hanno alcun effetto sul gioco.", + "You now benefit from the boost provided by heralds.
Each herald gives you +1% CpS.
Look on the purple flag at the top to see how many heralds are active at any given time.": "Puoi ora usufruire del bonus offerto dagli araldi.
Ogni araldo ti garantisce +1% B/s.
Posizionati sulla bandiera viola nella parte superiore dello schermo per visualizzare il numero di araldi attivi in ogni momento.", + "Seasonal random drops have a 1/5 chance to carry over through ascensions.": "Hai 1 possibilità su 5 di conservare i ritrovamenti casuali stagionali dopo l'ascensione.", + "Unlocks extra price information.
Each displayed cost now specifies how long it'll take you to afford it, and how much of your bank it represents.": "Sblocca informazioni aggiuntive sul prezzo.
Ora i costi visualizzati specificano il tempo necessario a coprirli e a quanto corrispondono rispetto a ciò che possiedi.", + "Unlocks the shimmering veil, a switch that passively boosts your CpS by %1%.
You start with the veil turned on; however, it is very fragile, and clicking the big cookie or any golden cookie or reindeer will turn it off, requiring %2 of CpS to turn back on.": "Sblocca il velo lucente, che conferisce ai B/s un bonus passivo del %1%.
Inizi la partita con il velo attivo, ma è molto fragile; facendo clic sul biscotto gigante, sui biscotti dorati o sulle renne lo romperai e potrai attivarlo nuovamente spendendo %2 di B/s.", + "Boosts your cookie production by %1% when active.
The veil is very fragile and will break if you click the big cookie or any golden cookies or reindeer.

Once broken, turning the veil back on costs %2 of unbuffed CpS.": "Se attivato, migliora la produzione di biscotti del %1%.
Il velo è molto fragile e verrà lacerato da ogni clic sul biscotto gigante, sui biscotti dorati o sulle renne.

Una volta lacerato, potrai riattivarlo al costo di %2 di B/s senza bonus.", + "Has a %1% chance to not break.": "Ha il %1% di probabilità di non lacerarsi.", + "The shimmering veil is more resistant, and has a %1% chance not to break. It also gives +%2% more CpS.": "Il velo lucente è più resistente e ha il %1% di probabilità di non lacerarsi. Garantisce inoltre +%2% B/s aggiuntivi.", + "Active.": "Attivo.", + "The reinforced membrane protects the shimmering veil.": "La membrana rinforzata protegge il velo lucente.", + "The shimmering veil disappears...": "Il velo lucente scompare...", + "Prior to purchasing the %1 upgrade in a run, random drops are %2 times more common.": "Prima di acquistare il potenziamento %1 durante una campagna, i ritrovamenti casuali sono %2 volte più probabili.", + "Never forget your %1.": "Non dimenticare mai queste unità: %1.", + "Pay close attention to the humble %1.": "Fai molta attenzione a queste umili unità: %1.", + "You've been neglecting your %1.": "Hai trascurato queste unità: %1.", + "Remember to visit your %1 sometimes.": "Ricorda di visitare queste unità: %1.", + "You don't know what you have until you've lost it.": "Non ti accorgi di ciò che possiedi finché non lo perdi.", + "Remember to take breaks.": "Ricorda di fare qualche pausa.", + "Hey, what's up. I'm a fortune cookie.": "Ehilà. Sono un biscotto della fortuna.", + "You think you have it bad? Look at me.": "Credi che la tua vita sia difficile? Guardami.", + "The news ticker may occasionally have fortunes, which may be clicked for something good.": "A volte le ultime notizie includono delle profezie: prova a farvi clic sopra per ottenere qualcosa di utile.", + "Through clever accounting, this actually makes kitten upgrades %1% cheaper.": "Grazie a un'accorta contabilità, il prezzo dei potenziamenti felini è ridotto del %1%.", + "Unlocks the ability to pet your dragon by clicking on it once hatched.": "Sblocca la possibilità di coccolare il tuo drago con un clic quando l'uovo si schiude.", + "Cost scales with CpS, but %1 times cheaper with a fully-trained dragon.": "Il costo varia in base ai B/s, ma è %1 volte più economico con un drago completamente addestrato.", + "Golden cookies may trigger a Dragon Harvest.": "I biscotti dorati potrebbero attivare un Raccolto del drago.", + "Golden cookies may trigger a Dragonflight.": "I biscotti dorati potrebbero attivare un Volo di drago.", + "Dragon harvest and Dragonflight are %1% stronger.": "Raccolto del drago e Volo di drago sono più potenti del %1%.", + "Kittens are %1% more effective.": "I felini sono più potenti del %1%.", + "Each kitten upgrade boosts %1 CpS by %2%.": "Ogni potenziamento felino migliora del %2% i B/s forniti da queste unità: %1.", + "Each rank of milk boosts %1 CpS by %2%.": "Ogni grado di latte migliora del %2% i B/s forniti da queste unità: %1.", + "Cursor levels boost clicks by %1% each (up to cursor level %2).": "Ogni livello del cursore migliora i clic del %1% (fino al livello %2 dei cursori).", + "%1 are now effective up to cursor level %2.": "%1 sono efficaci fino al livello %2 dei cursori.", + "Seasonal cookies purchased: %1.": "Biscotti stagionali acquistati: %1.", + "Reindeer cookies purchased: %1.": "Biscotti renna acquistati: %1.", + "Eggs purchased: %1.": "Uova acquistate: %1.", + "Golden and wrath cookie effect duration +%1%.": "+%1% durata effetto biscotto dorato e iracondo.", + "Golden and wrath cookies appear %1% more.": "I biscotti dorati e iracondi si materializzano il %1% più spesso.", + "Golden and wrath cookies appear %1% less.": "Biscotti dorati e iracondi si materializzano il %1% meno spesso.", + "Buildings grant -%1% CpS.": "Le strutture conferiscono -%1% BpS.", + "Selling buildings triggers a buff boosted by how many buildings were sold.": "La vendita di strutture attiva un bonus incrementato dal numero di strutture vendute.", + "Buff boosts clicks by +%1% for every building sold for %2 seconds.": "Il bonus incrementa i clic del +%1% per ogni struttura venduta per %2 secondi.", + "CpS bonus fluctuating between %1 and %2 over time.": "BpS bonus che oscilla di volta in volta tra %1 e %2.", + "Effect cycles over %1 hours.": "L'effetto cambia ogni %1 ore.", + "Some seasonal effects are boosted.": "Alcuni effetti stagionali vengono incrementati.", + "Large boost.": "Incremento grande.", + "Medium boost.": "Incremento medio.", + "Small boost.": "Incremento piccolo.", + "Switching seasons is %1% pricier.": "Cambiare stagione è più caro del %1%.", + "Switching seasons is %1% cheaper.": "Cambiare stagione è meno caro del %1%.", + "Heavenly chips have %1% less effect.": "L'effetto delle scaglie celestiali è inferiore al %1%.", + "Buildings produce %1% more.": "Le strutture producono il %1% in più.", + "Buildings produce %1% less.": "Le strutture producono il %1% in meno.", + "All golden cookies are wrath cookies with a greater chance of a negative effect.": "Tutti i biscotti dorati sono biscotti iracondi con probabilità maggiore di un effetto negativo.", + "Wrinklers appear %1% faster and digest %2% more cookies.": "I divoratori si materializzano il %1% più velocemente e digeriscono il %2% in più di biscotti.", + "Effect is only active when your total amount of buildings ends with 0.": "L'effetto è attivo solo se la quantità totale delle tue strutture termina con uno 0.", + "Achievement unlocked": "Obiettivo sbloccato", + "Make %1 just from %2.": "Produci %1 con queste unità: %2.", + "Bake %1 in one ascension.": "Inforna %1 in una singola ascensione.", + "Bake %1 per second.": "Inforna %1 al secondo.", + "Have %1.": "Possiedi %1.", + "Ascend at least once.": "Ascendi almeno una volta.", + "Ascend %1 times.": "Ascendi %1 volte.", + "Ascend with %1 baked.": "Ascendi con %1 infornati.", + "Make %1 by only having clicked %2 times.": "Produci %1 facendo clic %2 volte.", + "Make %1 with no cookie clicks.": "Produci %1 senza fare clic sul biscotto.", + "Get to %1 baked with no upgrades purchased.": "Inforna %1 senza acquistare potenziamenti.", + "Get to %1 baked in %2.": "Inforna %1 in %2.", + "Make %1 from clicking.": "Inforna %1 con i clic.", + "Sell a grandma.": "Vendi una nonna.", + "Have at least %1 of every building.": "Possiedi almeno %1 unità di ogni struttura.", + "Have at least 1 of the most expensive object, 2 of the second-most expensive, 4 of the next and so on (capped at %1).": "Possiedi almeno 1 unità dell'oggetto più costoso, 2 unità del secondo oggetto più costoso, 4 unità di quello successivo e così via (fino a un massimo di %1).", + "Have at least 10 of the most expensive object, 20 of the second-most expensive, 30 of the next and so on.": "Possiedi almeno 10 unità dell'oggetto più costoso, 20 unità del secondo oggetto più costoso, 30 unità di quello successivo e così via.", + "Click a golden cookie.": "Fai clic su un biscotto dorato.", + "Click %1.": "Fai clic su %1.", + "Hack in some cookies.": "Ottieni biscotti con i trucchi.", + "Click really, really fast.": "Fai clic a tutta velocità.", + "Have at least %1 of everything.": "Possiedi almeno %1 unità di ogni oggetto.", + "Own %1.": "Possiedi %1.", + "Purchase %1.": "Acquista %1.", + "Dunk the cookie.": "Inzuppa il biscotto.", + "Appease the grandmatriarchs at least once.": "Placa le matriarche almeno una volta.", + "Appease the grandmatriarchs at least %1 times.": "Placa le matriarche almeno %1 volte.", + "Declare a covenant with the grandmatriarchs.": "Stringi un'alleanza con le matriarche.", + "Own at least %1 grandma types.": "Possiedi almeno %1 tipi di nonne.", + "Unlock 100% of your heavenly chips power.": "Sblocca il 100% della potenza delle scaglie celestiali.", + "You have 1 chance in %1 every second of earning this achievement.": "Ogni secondo hai 1 probabilità su %1 di ottenere questo obiettivo.", + "Burst 1 wrinkler.": "Fai esplodere 1 divoratore.", + "Burst %1 wrinklers.": "Fai esplodere %1 divoratori.", + "Unlock every Halloween-themed cookie.
Owning this achievement makes Halloween-themed cookies drop more frequently in future playthroughs.": "Sblocca tutti i biscotti di Halloween.
Questo obiettivo aumenta la frequenza dei biscotti di Halloween nelle campagne future.", + "Reach Santa's 7th form.": "Raggiungi la settima forma di Babbo Natale.", + "Reach Santa's final form.": "Raggiungi la forma finale di Babbo Natale.", + "Unlock every Christmas-themed cookie.
Owning this achievement makes Christmas-themed cookies drop more frequently in future playthroughs.": "Sblocca tutti i biscotti di Natale.
Questo obiettivo aumenta la frequenza dei biscotti di Natale nelle campagne future.", + "Pop 1 reindeer.": "Scoppia 1 renna.", + "Pop %1 reindeer.": "Scoppia %1 renne.", + "Pop a reindeer during an elder frenzy.": "Scoppia una renna durante una frenesia venerabile.", + "Unlock every Valentine-themed cookie.": "Sblocca tutti i biscotti di San Valentino.", + "Click the tiny cookie.": "Fai clic sul mini biscotto.", + "This is for baking %1 and making it on the local news.": "Hai infornato %1 e hanno parlato di te al notiziario locale.", + "Name yourself Orteil.
Note: usurpers incur a -%1% CpS penalty until they rename themselves something else.
": "Cambia il nome in Orteil.
Nota: gli usurpatori subiranno una penalità di -%1% B/s fino a quando non modificheranno nuovamente il nome.
", + "Use an add-on.": "Usa un'espansione.", + "Unlock 1 egg.": "Sblocca 1 uovo.", + "Unlock %1 eggs.": "Sblocca %1 uova.", + "Unlock all the eggs.
Owning this achievement makes eggs drop more frequently in future playthroughs.": "Sblocca tutte le uova.
Questo obiettivo aumenta la frequenza delle uova nelle campagne future.", + "Give your bakery a name.": "Dai un nome alla pasticceria.", + "Click this achievement's slot.": "Fai clic sullo slot di questo obiettivo.", + "Complete your dragon's training.": "Completa l'addestramento del tuo drago.", + "Click on the news ticker %1 times.": "Fai clic sulle ultime notizie %1 volte.", + "Own a combined %1 %2 and %3.": "Possiedi %1 unità tra %2 e %3.", + "Own %1 upgrades and %2 buildings.": "Possiedi %1 potenziamenti e %2 strutture.", + "Own %1 heavenly upgrades.": "Possiedi %1 potenziamenti celestiali.", + "Burst the near-extinct shiny wrinkler.": "Fai esplodere il quasi estinto divoratore lucente.", + "Click a golden cookie less than 1 second after it spawns.": "Fai clic su un biscotto dorato meno di 1 secondo dopo la sua comparsa.", + "Click a golden cookie less than 1 second before it dies.": "Fai clic su un biscotto dorato meno di 1 secondo prima che scompaia.", + "Harvest %1 coalescing sugar lumps.": "Raccogli %1 zollette di zucchero in crescita.", + "Successfully harvest a coalescing sugar lump before it's ripe.": "Raccogli con successo una zolletta di zucchero in crescita prima che maturi.", + "Harvest a bifurcated sugar lump.": "Raccogli una zolletta di zucchero biforcuta.", + "Harvest a golden sugar lump.": "Raccogli una zolletta di zucchero dorata.", + "Harvest a meaty sugar lump.": "Raccogli una zolletta di zucchero succosa.", + "Harvest a caramelized sugar lump.": "Raccogli una zolletta di zucchero caramellata.", + "Reach level %1 %2.": "Raggiungi il livello %1 di queste strutture: %2.", + "Cast %1 spells.": "Lancia %1 incantesimi.", + "Have %1 golden cookies simultaneously.": "Attiva %1 biscotti dorati contemporaneamente.", + "Manage a cookie legacy for at least a year.": "Gestisci una genesi di biscotti per almeno un anno.", + "Harvest %1 mature garden plants.": "Raccogli %1 piante mature dal giardino.", + "Fill every tile of the biggest garden plot with plants.": "Riempi di piante ogni spazio disponibile nel lotto più grande del giardino.", + "Unlock every garden seed.": "Sblocca tutti i semi del giardino.", + "Convert a complete seed log into sugar lumps by sacrificing your garden to the sugar hornets.
Owning this achievement makes seeds %1% cheaper, plants mature %2% sooner, and plant upgrades drop %3% more.": "Converti una selezione completa di semi in zollette di zucchero sacrificando il tuo giardino ai calabroni da zucchero.
Questo obiettivo riduce del %1% il costo dei semi, riduce del %2% il tempo di maturazione delle piante e aumenta del %3% i ritrovamenti dalle piante.", + "Ascend with exactly %1.": "Ascendi con esattamente %1.", + "Have your reinforced membrane protect the shimmering veil.": "Proteggi il velo lucente con la membrana rinforzata.", + "Own every fortune upgrade.
Owning this achievement makes fortunes appear twice as often; unlocked fortune upgrades also have a %1% chance to carry over after ascending.": "Possiedi tutti i potenziamenti fortuna.
Questo obiettivo raddoppia la frequenza delle profezie; i potenziamenti fortuna sbloccati hanno inoltre un %1% di probabilità di essere mantenuti dopo l'ascensione.", + "Make your first stock market profit.": "Guadagna i tuoi primi profitti nel mercato azionario.", + "Own at least %1 of a stock market good.": "Possiedi almeno %1 unità di una merce del mercato azionario.", + "Own at least %1 of every stock market good.": "Possiedi almeno %1 unità di ogni merce del mercato azionario.", + "Make a day of CpS ($%1) in 1 stock market sale.": "Guadagna l'equivalente di un giorno di B/s (%1 $) con 1 vendita nel mercato azionario.", + "Spend a day of CpS ($%1) in 1 stock market purchase.": "Spendi l'equivalente di un giorno di B/s (%1 $) con 1 acquisto nel mercato azionario.", + "Have your stock market profits surpass a whole year of CpS ($%1).": "Supera l'equivalente di un intero anno di B/s (%1 $) con i profitti del mercato azionario.", + "Unlock the highest-tier stock market headquarters.": "Sblocca la classe più alta della sede del mercato azionario.", + "Have your stock market profits surpass $%1.": "Supera %1 $ con i profitti del mercato azionario.", + "Own %1 kitten upgrades.": "Possiedi %1 potenziamenti felini.", + "Find the forgotten madeleine.": "Trova la madeleine perduta.", + "Click one of Santa's helper grandmas during Christmas season.": "Fai clic sulle nonnine dell'aiutante di Babbo Natale durante la stagione natalizia.", + "Frenzy": "Frenesia", + "Elder frenzy": "Frenesia venerabile", + "Click frenzy": "Frenesia di clic", + "Clot": "Coagulo", + "Dragon Harvest": "Raccolto del drago", + "Everything must go": "Fuori tutto", + "Cursed finger": "Dita maledette", + "Cookie storm": "Tempesta di biscotti", + "Sugar blessing": "Fortuna di zucchero", + "Haggler's luck": "Sorte del mercante", + "Haggler's misery": "Miseria del mercante", + "Crafty pixies": "Folletti ingegnosi", + "Nasty goblins": "Goblin maligni", + "Magic adept": "Mago esperto", + "Magic inept": "Mago inesperto", + "Devastation": "Devastazione", + "Sugar frenzy": "Frenesia di zucchero", + "Loan %1": "Prendi in prestito %1", + "Loan %1 (interest)": "Prendi in prestito %1 (interessi)", + "%1 Power!": "Accelerazione di tutte le unità %1!", + "%1 Burden!": "Rallentamento di tutte le unità %1!", + "Cookie production x%1 for %2!": "Produzione di biscotti x%1 per %2!", + "Cookie production +%1% for %2!": "Produzione di biscotti +%1% per %2!", + "Cookie production %1% slower for %2!": "Produzione di biscotti rallentata del %1% per %2!", + "Cookie production halved for %1!": "Produzione di biscotti dimezzata per %1!", + "Your %1 are boosting your CpS!": "B/s potenziati da %1!", + "Your %1 are rusting your CpS!": "B/s penalizzati da %1!", + "All buildings are %1% cheaper for %2!": "Il costo di tutte le strutture è ridotto del %1% per %2!", + "All buildings are %1% pricier for %2!": "Il costo di tutte le strutture è aumentato del %1% per %2!", + "All upgrades are %1% cheaper for %2!": "Il costo di tutti i potenziamenti è ridotto del %1% per %2!", + "All upgrades are %1% pricier for %2!": "Il costo di tutti i potenziamenti è aumentato del %1% per %2!", + "Cookie production halted for %1,
but each click is worth %2 of CpS.": "Produzione di biscotti interrotta per %1,
ma ogni clic equivale a %2 dei B/s.", + "Clicking power x%1 for %2!": "Potenza dei clic x%1 per %2!", + "Clicking power +%1% for %2!": "Potenza dei clic +%1% per %2!", + "Cookies everywhere!": "Biscotti ovunque!", + "You find %1% more golden cookies for the next %2.": "Frequenza dei biscotti dorati aumentata del %1% per %2.", + "Spells backfire %1 times less for %2.": "Probabilità di fallimento degli incantesimi ridotta di %1 volte per %2.", + "Spells backfire %1 times more for %2.": "Probabilità di fallimento degli incantesimi aumentata di %1 volte per %2.", + "can be done once every %1": "lo puoi fare una volta ogni %1", + "usable again in %1": "utilizzabile di nuovo tra %1", + "+%1/s": "+%1/sec.", + "Next tick in %1.": "Prossima mossa tra %1.", + "Initializing...": "Inizializzazione...", + "View %1": "Visualizza %1", + "Close %1": "Chiudi %1", + "Details:": "Dettagli:", + "Effects:": "Effetti:", + "Effect is active.": "L'effetto è attivo.", + "Effect is inactive.": "L'effetto non è attivo.", + "Current bonus:": "Bonus attuale:", + "Garden": "Giardino", + "Baker's wheat": "Grano del pasticcere", + "[Baker's wheat quote]A plentiful crop whose hardy grain is used to make flour for pastries.": "Ricca coltura dai chicchi resistenti, macinati per creare farina per dolci.", + "Thumbcorn": "Mais digitale", + "[Thumbcorn quote]A strangely-shaped variant of corn. The amount of strands that can sprout from one seed is usually in the single digits.": "Una varietà di granturco dalla forma particolare. Ogni seme produce generalmente un numero a cifra singola di germogli.", + "Cronerice": "Riso della megera", + "[Cronerice quote]Not only does this wrinkly bulb look nothing like rice, it's not even related to it either; its closest extant relative is the weeping willow.": "Questo bulbo raggrinzito non somiglia affatto al riso e non appartiene nemmeno alla stessa specie; il suo parente più stretto è il salice piangente.", + "Gildmillet": "Miglio aureo", + "[Gildmillet quote]An ancient staple crop, famed for its golden sheen. Was once used to bake birthday cakes for kings and queens of old.": "Importante coltivazione fin dai tempi antichi, rinomata per il suo luccichio dorato. Un tempo veniva utilizzata per preparare torte di compleanno per i re e le regine.", + "Ordinary clover": "Trifoglio comune", + "[Ordinary clover quote]Trifolium repens, a fairly mundane variety of clover with a tendency to produce four leaves. Such instances are considered lucky by some.": "Trifolium repens, una varietà di trifoglio piuttosto ordinaria che tende a produrre quattro foglie. Molti ritengono che questa circostanza sia segno di buona sorte.", + "Golden clover": "Trifoglio dorato", + "[Golden clover quote]A variant of the ordinary clover that traded its chlorophyll for pure organic gold. Tragically short-lived, this herb is an evolutionary dead-end - but at least it looks pretty.": "Una varietà del trifoglio comune, che ha rinunciato alla clorofilla per del puro oro organico. Tragicamente poco longeva, quest'erba è un vicolo cieco nell'evoluzione, ma almeno è bella da vedere.", + "Shimmerlily": "Giglio di luce", + "[Shimmerlily quote]These little flowers are easiest to find at dawn, as the sunlight refracting in dew drops draws attention to their pure-white petals.": "Questi piccoli fiori si trovano più facilmente all'alba, quando i raggi del sole si rifrangono sulle gocce di rugiada e attraggono l'attenzione sui loro candidi petali.", + "Elderwort": "Iperico venerabile", + "[Elderwort quote]A very old, long-forgotten subspecies of edelweiss that emits a strange, heady scent. There is some anecdotal evidence that these do not undergo molecular aging.": "Un'antica e dimenticata sottospecie di stella alpina che emana un odore inebriante. Secondo prove non confermate, questi fiori non subiscono alcun invecchiamento molecolare.", + "Bakeberry": "Bacca da forno", + "[Bakeberry quote]A favorite among cooks, this large berry has a crunchy brown exterior and a creamy red center. Excellent in pies or chicken stews.": "Ingrediente apprezzato dagli chef, questa grande bacca presenta un croccante esterno marrone e un cuore rosso e cremoso. Perfetta per crostate o stufati di pollo.", + "Chocoroot": "Cioccoradice", + "[Chocoroot quote]A tangly bramble coated in a sticky, sweet substance. Unknown genetic ancestry. Children often pick these from fields as-is as a snack.": "Groviglio di arbusti ricoperti da una sostanza dolce e appiccicosa. Ascendenza genetica sconosciuta. Spesso i bambini la raccolgono come spuntino.", + "White chocoroot": "Cioccoradice bianca", + "[White chocoroot quote]A pale, even sweeter variant of the chocoroot. Often impedes travelers with its twisty branches.": "Una varietà chiara e ancora più dolce della cioccoradice. Spesso ostacola i viandanti con i suoi rami contorti.", + "White mildew": "Micete bianco", + "[White mildew quote]A common rot that infests shady plots of earth. Grows in little creamy capsules. Smells sweet, but sadly wilts quickly.": "Comune muffa che infesta i terreni ombreggiati. Cresce in piccole capsule cremose. Ha un profumo dolce, ma purtroppo appassisce rapidamente.", + "Brown mold": "Muffa marrone", + "[Brown mold quote]A common rot that infests shady plots of earth. Grows in odd reddish clumps. Smells bitter, but thankfully wilts quickly.": "Comune muffa che infesta i terreni ombreggiati. Cresce in strani ammassi rossastri. Ha un profumo amaro, ma per fortuna appassisce rapidamente.", + "Meddleweed": "Erbaccia invasiva", + "[Meddleweed quote]The sign of a neglected farmland, this annoying weed spawns from unused dirt and may sometimes spread to other plants, killing them in the process.": "Segnale di incuria dei terreni agricoli, questa fastidiosa erbaccia germoglia dalla terra inutilizzata e a volte invade lo spazio di altre piante, uccidendole.", + "Whiskerbloom": "Fior di baffo", + "[Whiskerbloom quote]Squeezing the translucent pods makes them excrete a milky liquid, while producing a faint squeak akin to a cat's meow.": "Se spremuti, i baccelli traslucidi secernono un liquido latteo e producono un lieve stridio simile al miagolio di un gatto.", + "Chimerose": "Rosa tintinnante", + "[Chimerose quote]Originating in the greener flanks of polar mountains, this beautiful flower with golden accents is fragrant enough to make any room feel a little bit more festive.": "Originaria dei verdi versanti dei monti polari, questo splendido fiore dai toni dorati ha un aroma tanto intenso da diffondere in ogni stanza un'aria di festa.", + "Nursetulip": "Tulipano nutriente", + "[Nursetulip quote]This flower grows an intricate root network that distributes nutrients throughout the surrounding soil. The reason for this seemingly altruistic behavior is still unknown.": "Questo fiore produce un'intricata rete di radici che distribuiscono sostanze nutritive al terreno circostante. Le ragioni di questo apparente comportamento altruista sono ancora sconosciute.", + "Drowsyfern": "Felce sopente", + "[Drowsyfern quote]Traditionally used to brew a tea that guarantees a good night of sleep.": "Tradizionalmente utilizzata per preparare un tè rilassante, che assicura una buona notte di riposo.", + "Wardlichen": "Lichene custode", + "[Wardlichen quote]The metallic stench that emanates from this organism has been known to keep insects and slugs away.": "È risaputo che il fetore metallico emanato da questo organismo tiene a distanza insetti e lumache.", + "Keenmoss": "Muschio sagace", + "[Keenmoss quote]Fuzzy to the touch and of a vibrant green. In plant symbolism, keenmoss is associated with good luck for finding lost objects.": "Soffice al tatto e di un intenso colore verde. Nella simbologia botanica, il muschio sagace è un augurio di buona fortuna per ritrovare oggetti perduti.", + "Queenbeet": "Bietola regia", + "[Queenbeet quote]A delicious taproot used to prepare high-grade white sugar. Entire countries once went to war over these.": "Gustoso fittone utilizzato per preparare zucchero bianco di alta qualità. Un tempo fu causa di guerre tra intere nazioni.", + "Juicy queenbeet": "Bietola regia succulenta", + "[Juicy queenbeet quote]A delicious taproot used to prepare high-grade white sugar. Entire countries once went to war over these.
It looks like this one has grown especially sweeter and juicier from growing in close proximity to other queenbeets.": "Gustoso fittone utilizzato per preparare zucchero bianco di alta qualità. Un tempo fu causa di guerre tra intere nazioni.
Sembra che crescere a stretto contatto con altre bietole regie abbia reso questo esemplare particolarmente dolce e succoso.", + "Duketater": "Patata ducale", + "[Duketater quote]A rare, rich-tasting tuber fit for a whole meal, as long as its strict harvesting schedule is respected. Its starch has fascinating baking properties.": "Raro tubero dal gusto ricco. È tanto nutriente da bastare per un intero pasto, purché si rispetti il rigido calendario di raccolta. Il suo amido presenta interessanti proprietà per la pasticceria.", + "Crumbspore": "Spora sbriciolante", + "[Crumbspore quote]An archaic mold that spreads its spores to the surrounding dirt through simple pod explosion.": "Una muffa arcaica che sparge le spore sul terreno circostante con una semplice esplosione del baccello.", + "Doughshroom": "Pan boleto", + "[Doughshroom quote]Jammed full of warm spores; some forest walkers often describe the smell as similar to passing by a bakery.": "Ripieno di tiepide spore; alcuni escursionisti descrivono un profumo simile a quello di una pasticceria.", + "Glovemorel": "Spugnola guantata", + "[Glovemorel quote]Touching its waxy skin reveals that the interior is hollow and uncomfortably squishy.": "Toccando la sua pelle cerosa si rivela un interno cavo e sgradevolmente molliccio.", + "Cheapcap": "Tirchiodino", + "[Cheapcap quote]Small, tough, and good in omelettes. Some historians propose that the heads of dried cheapcaps were once used as currency in some bronze age societies.": "Piccolo, tenace e ottimo nelle frittate. Alcuni storici suggeriscono che le cappelle secche dei tirchiodini fossero utilizzate come valuta in alcune comunità dell'età del bronzo.", + "Fool's bolete": "Porcino impostore", + "[Fool's bolete quote]Named for its ability to fool mushroom pickers. The fool's bolete is not actually poisonous, it's just extremely bland.": "Il nome rimanda alla sua capacità di ingannare i raccoglitori di funghi. Il porcino impostore non è velenoso, ha semplicemente un sapore insulso.", + "Wrinklegill": "Amanita grinzosa", + "[Wrinklegill quote]This mushroom's odor resembles that of a well-done steak, and is said to whet the appetite - making one's stomach start gurgling within seconds.": "Questo fungo emana un aroma simile a quello di una bistecca ben cotta e si dice che stuzzichi l'appetito, causando un brontolio di stomaco in pochi secondi.", + "Green rot": "Muffa verde", + "[Green rot quote]This short-lived mold is also known as \"emerald pebbles\", and is considered by some as a pseudo-gem that symbolizes good fortune.": "Questa muffa dalla vita breve è anche conosciuta come \"ciottoli di smeraldo\" e viene considerata una pseudo-gemma, simbolo di buona ventura.", + "Shriekbulb": "Bulbo stridente", + "[Shriekbulb quote]A nasty vegetable with a dreadful quirk : its flesh resonates with a high-pitched howl whenever it is hit at the right angle by sunlight, moonlight, or even a slight breeze.": "Disgustoso vegetale con un terribile difetto: la sua polpa emette un lamento acuto ogni volta che viene colpita alla giusta angolazione dai raggi del sole, dalla luce lunare o persino da una lieve brezza.", + "Tidygrass": "Erba pignola", + "[Tidygrass quote]The molecules this grass emits are a natural weedkiller. Its stems grow following a predictable pattern, making it an interesting -if expensive- choice for a lawn grass.": "Le molecole emanate da quest'erba sono un diserbante naturale. I suoi steli crescono seguendo uno schema preciso, rendendola una scelta interessante (e costosa) per un giardino.", + "Everdaisy": "Margherita eterna", + "[Everdaisy quote]While promoted by some as a superfood owing to its association with longevity and intriguing geometry, this elusive flower is actually mildly toxic.": "Alcuni la ritengono un super alimento a causa della longevità e dell'affascinante geometria che la contraddistinguono, ma in realtà questo misterioso fiore è leggermente tossico.", + "Ichorpuff": "Vescia icorica", + "[Ichorpuff quote]This puffball mushroom contains sugary spores, but it never seems to mature to bursting on its own. Surrounding plants under its influence have a very slow metabolism, reducing their effects but lengthening their lifespan.": "Questa vescia contiene spore di zucchero, ma non sembra mai raggiungere la maturità necessaria a rilasciarle. Influisce sulle piante circostanti rallentandone il metabolismo, riducendone gli effetti ma allungandone il ciclo vitale.", + "Garden information": "Informazioni sul giardino", + "Your garden is frozen, providing no effects.": "Il tuo giardino è congelato e non produce alcun effetto.", + "Combined effects of all your plants:": "Effetto combinato di tutte le tue piante:", + "None.": "nessuno.", + "-You can cross-breed plants by planting them close to each other; new plants will grow in the empty tiles next to them.
-Unlock new seeds by harvesting mature plants.
-When you ascend, your garden plants are reset, but you keep all the seeds you've unlocked.
-Your garden has no effect and does not grow while the game is closed.": "-Puoi incrociare le piante piantandone una accanto all'altra: le nuove piante cresceranno nei riquadri vuoti lì accanto.
-Sblocca nuovi semi raccogliendo piante mature.
-Risalendo, le piante del tuo giardino vengono azzerate, ma conservi tutti i semi che hai sbloccato.
-Quando il gioco è chiuso, il tuo giardino non produce effetti e le piante non crescono.", + "Harvest all": "Raccoglile tutte", + "Instantly harvest all plants in your garden.": "Raccogli istantaneamente tutte le piante nel tuo giardino.", + "%1 to harvest only mature, mortal plants.": "%1 per raccogliere solo piante mortali mature.", + "%1 to harvest all mature plants of this type.": "%1 per raccogliere tutte le piante mature di questo tipo.", + "Freeze": "Congela", + "Cryogenically preserve your garden.
Plants no longer grow, spread or die; they provide no benefits.
Soil cannot be changed.
Using this will effectively pause your garden.": "Conserva criogenicamente il tuo giardino.
Le piante non crescono, non si diffondono e non muoiono più: non producono più alcun effetto.
Il terreno non può essere cambiato.
L'uso di questa funzione metterà come in pausa il tuo giardino.", + "Garden is frozen. Unfreeze to resume.": "Il giardino è congelato. Scongelalo per riprendere.", + "Sacrifice garden": "Sacrifica il giardino", + "A swarm of sugar hornets comes down on your garden, destroying every plant as well as every seed you've unlocked - leaving only a %1 seed.
In exchange, they will grant you %2.
This action is only available with a complete seed log.": "Uno sciame di calabroni zuccherini si è abbattuto sul tuo giardino distruggendo tutte le piante e tutti i semi che hai sbloccato.Ti hanno lasciato solo un seme di %1.
In cambio, ti conferiranno %2.
Questa azione è disponibile solo con un registro dei semi al completo.", + "Do you REALLY want to sacrifice your garden to the sugar hornets?
You will be left with an empty plot and only the %1 seed unlocked.
In return, you will gain %2 sugar lumps.
": "Vuoi DAVVERO sacrificare il tuo giardino e lasciarlo in balìa dei calabroni zuccherini?
Rimarrai con un appezzamento vuoto e con il solo seme di %1 sbloccato.
In cambio otterrai %2 zollette di zucchero.
", + "Sacrifice!": "Sacrificio!", + "You've sacrificed your garden to the sugar hornets, destroying your crops and your knowledge of seeds.
In the remains, you find %1 sugar lumps.": "Hai sacrificato il tuo giardino lasciandolo alle grinfie dei calabroni zuccherini che hanno distrutto tutto il tuo raccolto e la tua conoscenza in fatto di semi.
Tra i resti trovi %1 zollette di zucchero.", + "immortal": "immortale", + "predictable growth": "crescita prevedibile", + "surrounding plants (%1x%1) age %2% faster": "le piante circostanti (%1x%1) invecchiano il %2% più velocemente", + "surrounding plants (%1x%1) age %2% slower": "le piante circostanti (%1x%1) invecchiano il %2% più lentamente", + "surrounding plants (%1x%1) are %2% more efficient": "le piante circostanti (%1x%1) sono il %2% più efficienti", + "surrounding plants (%1x%1) are %2% less efficient": "le piante circostanti (%1x%1) sono il %2% meno efficienti", + "surrounding tiles (%1x%1) develop no weeds or fungus": "i riquadri circostanti (%1x%1) non sviluppano erbacce o funghi", + "harvest when mature for +%1 of CpS (max. %2% of bank)": "raccoglile da mature per +%1 di BpS (max. %2% della banca)", + "harvest when mature for a sugar lump": "raccoglile da mature per 1 zolletta di zucchero", + "useless": "inutile", + "spreads easily": "si diffonde facilmente", + "may spread as %1": "può diffondersi come %1", + "grows in empty tiles": "cresce in riquadri vuoti", + "may overtake nearby plants": "può invadere le piante vicine", + "may sometimes drop spores when uprooted": "a volte può far cadere spore se sradicata", + "explodes into up to %1 of CpS at the end of its lifecycle (max. %2% of bank)": "esplode in fino a %1 di BpS al termine del suo ciclo di vita (max. %2% della banca)", + "cannot handle cold climates; %1% chance to die when frozen": "non sopporta i climi freddi: ha una probabilità del %1% di morire quando congelata", + "the unfortunate result of some plant combinations": "lo sfortunato risultato di alcuni innesti di piante", + "Soil unlocked at %1 farms.": "Terreno sbloccato per %1 fattorie.", + "Your field is currently using this soil.": "Il tuo campo sta usando attualmente questo terreno.", + "You will be able to change your soil again in %1.": "Sarai in grado di cambiare di nuovo il terreno tra %1.", + "Click to use this type of soil for your whole field.": "Fai clic per usare questo tipo di terreno per tutto il tuo campo.", + "Dirt": "Terriccio", + "Simple, regular old dirt that you'd find in nature.": "Banale terriccio che si trova normalmente in natura.", + "Fertilizer": "Fertilizzante", + "Soil with a healthy helping of fresh manure. Plants grow faster but are less efficient.": "Terreno con una sana dose di concime fresco. Le piante crescono più velocemente ma sono meno efficienti.", + "Clay": "Argilla", + "Rich soil with very good water retention. Plants grow slower but are more efficient.": "Terreno ricco con un'ottima ritenzione idrica. Le piante crescono più lentamente ma sono più efficienti.", + "Pebbles": "Ciottoli", + "Dry soil made of small rocks tightly packed together. Not very conducive to plant health, but whatever falls off your crops will be easy to retrieve.
Useful if you're one of those farmers who just want to find new seeds without having to tend their garden too much.": "Terreno secco composto da pietruzze compattate. Non particolarmente favorevole per un buon raccolto, ma rende facile raccogliere qualsiasi cosa cada dalla pianta.
Utile se sei uno di quegli agricoltori che vogliono solo trovare nuovi semi senza dover badare troppo al giardino.", + "Wood chips": "Trucioli di legno", + "Soil made of bits and pieces of bark and sawdust. Helpful for young sprouts to develop, not so much for mature plants.": "Terreno composto da frammenti di corteccia e segatura. Utile per lo sviluppo di germogli, non molto per quello di piante mature.", + "tick every %1": "mossa ogni %1", + "passive plant effects": "effetti passivi delle piante", + "weed growth": "crescita di erbaccia", + "%1% chance of collecting seeds automatically when plants expire": "probabilità del %1% di raccogliere semi automaticamente quando la pianta appassisce", + "plants spread and mutate %1 times more": "le piante si diffondono e mutano %1 volte di più", + "Plant effects:": "Effetti delle piante:", + "Possible mutations:": "Mutazioni possibili:", + "Average lifespan:": "Vita media:", + "Average maturation:": "Maturazione media:", + "Mature in about %1": "Diventa matura in circa %1", + "Decays in about %1": "Si secca in circa %1", + "Does not decay": "Non secca", + "%1 tick": [ + "%1 mossa", + "%1 mosse" + ], + "Weed": "Erbaccia", + "Fungus": "Fungo", + "Planting cost:": "Costo semina:", + "%1 of CpS,
minimum %2": "%1 di BpS,
%2 minimo", + "%1 seed": "%1 seme", + "Click to select this seed for planting.": "Fai clic per selezionare questo seme per la semina.", + "This seed cannot be planted.": "Questo seme non può essere piantato.", + "Empty tile": "Riquadro vuoto", + "This tile of soil is empty.
Pick a seed and plant something!": "Questo riquadro di terreno è vuoto.
Scegli un seme e piantalo!", + "Click to plant %1 for %2.": "Fai clic per piantare %1 per %2.", + "%1 to plant multiple.": "%1 per piantarne di più.", + "Aging multiplier:": "Moltiplicatore dell'invecchiamento:", + "Effect multiplier:": "Moltiplicatore dell'effetto:", + "Weeds/fungus repellent:": "Repellente per erbacce/funghi:", + "This plant is growing here.": "Questa pianta sta crescendo qui.", + "Stage:": "Stadio:", + "bud": "bocciolo", + "sprout": "germoglio", + "bloom": "fiore", + "mature": "pianta matura", + "may reproduce, will drop seed when harvested": "può riprodursi, lascerà cadere semi quando raccolta", + "Click to harvest.": "Fai clic per raccogliere.", + "Click to unearth.": "Fai clic per scavare.", + "Click to refill your soil timer and trigger 1 plant growth tick with x%1 spread and mutation rate for %2.": "Fai clic per ricaricare il timer del terreno e azionare 1 mossa della crescita delle piante con velocità di diffusione x%1 e velocità di mutazione del %2.", + "Unlocked %1 seed.": "Hai sbloccato %1 seme.", + "Seeds": "Semi", + "Tools": "Attrezzi", + "Mature plants harvested: %1 (total: %2)": "Piante mature raccolte: %1 (totale: %2)", + "Plot size: %1
(Upgrades with farm level)": "Dimensioni appezzamento: %1
(Potenziamenti in base al livello della fattoria)", + "Garden plants age and mutate %1% faster.": "La piante del giardino invecchiano e mutano il %1% più velocemente.", + "while plant is alive; scales with plant growth": "mentre la pianta è viva; si adatta alla crescita della pianta", + "Dungeon": "Segrete", + "Grimoire": "Grimorio", + "This is your magic meter. Each spell costs magic to use.
Your maximum amount of magic varies depending on your amount of Wizard towers, and their level.
Magic refills over time. The lower your magic meter, the slower it refills.": "Questo è il tuo rilevatore di magia. Lanciare un incantesimo ti costerà della magia.
Il tuo quantitativo massimo di magia varia a seconda del numero di Torri stregate e al loro livello.
La magia si ricarica con trascorrere del tempo. Più basso è il valore dato dal tuo rilevatore di magia e più tempo impiegherà per ricaricarsi.", + "Spells cast: %1 (total: %2)": "Lancio di incantesimi: %1 (totale: %2)", + "Magic cost:": "Costo magia:", + "Chance to backfire:": "Probabilità di ritorsione:", + "Effect:": "Effetto:", + "Backfire:": "Ritorsione:", + "Backfire!": "Ritorsione!", + "%1 magic": "%1 magia", + "+%1% of max magic": "+%1% di magia max.", + "Click to refill %1 units of your magic meter for %2.": "Fai clic per ricaricare %1 unità del tuo rilevatore di magia per %2.", + "Grimoire spells are %1% cheaper but fail %1% more.": "Gli incantesimi del Grimorio sono meno cari del %1% ma falliscono il %1% di più.", + "Conjure Baked Goods": "Invoca prodotti da forno", + "Summon half an hour worth of your CpS, capped at %1% of your cookies owned.": "Evoca mezz'ora di BpS, limitata al %1% dei biscotti in tuo possesso.", + "Trigger a %1-minute clot and lose %1 minutes of CpS.": "Aziona un blocco di %1 minuto e perdi %1 minuti di BpS.", + "You magic %1 out of thin air.": "%1 della tua magia svanisce nel nulla.", + "Summoning failed!": "Evocazione non riuscita!", + "Force the Hand of Fate": "Forza la mano del destino", + "Summon a random golden cookie. Each existing golden cookie makes this spell +%1% more likely to backfire.": "Evoca un biscotto dorato a caso. Ciascun biscotto dorato esistente aumenta del %1% le probabilità che questo incantesimo si ritorca contro di te.", + "Summon an unlucky wrath cookie.": "Evoca uno sfortunato biscotto iracondo.", + "Promising fate!": "Destino promettente!", + "Sinister fate!": "Destino sinistro!", + "Stretch Time": "Dilatazione temporale", + "All active buffs gain %1% more time (up to %2 more minutes).": "Tutti i bonus attivi vedono prolungato del %1% il loro tempo (fino a %2 minuti in più).", + "All active buffs are shortened by %1% (up to %2 minutes shorter).": "Tutti i bonus attivi vedono ridotto del %1% il loro tempo (fino a %2 minuti in meno).", + "No buffs to alter!": "Nessun bonus da alterare!", + "Zap! Buffs lengthened.": "Zap! Tempo dei bonus prolungato.", + "Fizz! Buffs shortened.": "Fizz! Tempo dei bonus ridotto.", + "Spontaneous Edifice": "Edificio spontaneo", + "The spell picks a random building you could afford if you had twice your current cookies, and gives it to you for free. The building selected must be under %1, and cannot be your most-built one (unless it is your only one).": "Grazie a questo incantesimo puoi ottenere gratuitamente una struttura casuale che potresti permetterti solo se avessi il doppio dei biscotti attualmente a tua disposizione. La struttura selezionata deve essere sotto %1, e non può essere la più costruita tra le tue strutture (a meno che non sia l'unica).", + "Lose a random building.": "Perdi una struttura a caso.", + "No buildings to improve!": "Nessuna struttura da migliorare!", + "Backfired, but no buildings to destroy!": "L'incantesimo ti si è ritorto contro, ma non ci sono strutture da distruggere!", + "A new %1
bursts out of the ground.": "Un nuovo %1
è sbucato fuori dal terreno.", + "One of your %1
disappears in a puff of smoke.": "Uno dei tuoi %1
è scomparso in una nuvola di fumo.", + "Haggler's Charm": "Ciondolo del mercante", + "Upgrades are %1% cheaper for 1 minute.": "I potenziamenti sono meno cari del %1% per 1 minuto.", + "Upgrades are %1% more expensive for an hour.": "I potenziamenti sono più cari del %1% per un'ora.", + "Upgrades are cheaper!": "I potenziamenti sono meno cari!", + "Upgrades are pricier!": "I potenziamenti sono più cari!", + "Summon Crafty Pixies": "Evoca Folletti tuttofare", + "Buildings are %1% cheaper for 1 minute.": "Le strutture sono meno care del %1% per 1 minuto.", + "Buildings are %1% more expensive for an hour.": "Le strutture sono più care del %1% per un'ora.", + "Buildings are cheaper!": "Le strutture sono meno care!", + "Buildings are pricier!": "Le strutture sono più care!", + "Gambler's Fever Dream": "Sogno delirante del giocatore d'azzardo", + "Cast a random spell at half the magic cost, with twice the chance of backfiring.": "Lancia un incantesimo a meta prezzo in magia, con il doppio delle probabilità che si ritorca contro di te.", + "No eligible spells!": "Nessun incantesimo idoneo!", + "That's too bad!
Magic refunded.": "È un vero peccato!
Magia rimborsata.", + "Casting %1
for %2 magic...": "Lancia %1
per magia pari a %2...", + "Resurrect Abomination": "Resurrezione abominevole", + "Instantly summon a wrinkler if conditions are fulfilled.": "Evoca istantaneamente un divoratore se le condizioni vengono rispettate.", + "Pop one of your wrinklers.": "Fai scoppiare uno dei tuoi divoratori.", + "Unable to spawn a wrinkler!": "Impossibile generare un divoratore!", + "Rise, my precious!": "Sorgi, mio tesoro!", + "But no wrinkler was harmed.": "Ma nessun divoratore è stato maltrattato.", + "So long, ugly...": "Addio, bruttone...", + "Diminish Ineptitude": "Riduci inettitudine", + "Spells backfire %1 times less for the next %2 minutes.": "Gli incantesimi ti si ritorcono contro %1 volte meno per i prossimi %2 minuti.", + "Spells backfire %1 times more for the next %2 minutes.": "Gli incantesimi ti si ritorcono contro %1 volte di più per i prossimi %2 minuti.", + "Ineptitude diminished!": "Inettitudine ridotta!", + "Ineptitude magnified!": "Inettitudine amplificata!", + "Pantheon": "/", + "[GOD 1 NAME]Holobore, Spirit of Asceticism": "Holobore, spirito dell'ascetismo", + "[GOD 1 QUOTE]An immortal life spent focusing on the inner self, away from the distractions of material wealth.": "Una vita immortale trascorsa a concentrarsi sul proprio sé interiore, lontano dalle cose materiali.", + "[GOD 2 NAME]Vomitrax, Spirit of Decadence": "Vomitrax, spirito della decadenza", + "[GOD 2 QUOTE]This sleazy spirit revels in the lust for quick easy gain and contempt for the value of steady work.": "Questo spirito abbietto si crogiola nella brama di un guadagno facile e veloce e nel disprezzo per il valore di un lavoro stabile.", + "[GOD 3 NAME]Godzamok, Spirit of Ruin": "Godzamok, spirito della rovina", + "[GOD 3 QUOTE]The embodiment of natural disasters. An impenetrable motive drives the devastation caused by this spirit.": "La personificazione dei disastri naturali. Una motivazione impenetrabile spinge questo spirito a causare devastazioni.", + "[GOD 4 NAME]Cyclius, Spirit of Ages": "Cyclius, spirito delle ere", + "[GOD 4 QUOTE]This spirit knows about everything you'll ever do, and enjoys dispensing a harsh judgment.": "Questo spirito conosce tutto quello che hai fatto e farai e gode nel dispensare giudizi severi.", + "[GOD 5 NAME]Selebrak, Spirit of Festivities": "Selebrak, spirito delle festività", + "[GOD 5 QUOTE]This is the spirit of merry getaways and regretful Monday mornings.": "Questo è lo spirito delle scappatelle più scanzonate e dei rimpianti che ne seguono.", + "[GOD 6 NAME]Dotjeiess, Spirit of Creation": "Dotjeiess, spirito della creazione", + "[GOD 6 QUOTE]All things that be and ever will be were scripted long ago by this spirit's inscrutable tendrils.": "Tutto ciò che è stato e che sarà è stato già scritto tempo fa dagli imperscrutabili viticci di questo spirito.", + "[GOD 7 NAME]Muridal, Spirit of Labor": "Muridal, spirito del lavoro", + "[GOD 7 QUOTE]This spirit enjoys a good cheese after a day of hard work.": "A questo spirito non dispiace un bel pezzo di formaggio dopo una dura giornata di lavoro.", + "[GOD 8 NAME]Jeremy, Spirit of Industry": "Jeremy, spirito dell'industria", + "[GOD 8 QUOTE]While this spirit has many regrets, helping you rule the world through constant industrialization is not one of them.": "Sebbene questo spirito abbia molti rimpianti, aiutarti a dominare il mondo attraverso la costante industrializzazione non è uno di questi.", + "[GOD 9 NAME]Mokalsium, Mother Spirit": "Mokalsium, spirito madre", + "[GOD 9 QUOTE]A caring spirit said to contain itself, inwards infinitely.": "Uno spirito gentile che si dice contenga se stesso, dentro di sé infinitamente.", + "[GOD 10 NAME]Skruuia, Spirit of Scorn": "Skruuia, spirito dello sdegno", + "[GOD 10 QUOTE]This spirit enjoys poking foul beasts and watching them squirm, but has no love for its own family.": "Questo spirito si diverte a infilzare bestie ripugnanti e a guardarle contorcersi, ma non prova affetto per propria famiglia.", + "[GOD 11 NAME]Rigidel, Spirit of Order": "Rigidel, spirito dell'ordine", + "[GOD 11 QUOTE]You will find that life gets just a little bit sweeter if you can motivate this spirit with tidy numbers and properly-filled tax returns.": "Scoprirai che la vita diventa un po' più dolce se riesci a motivare questo spirito con numeri ordinati e dichiarazioni dei redditi adeguatamente compilate.", + "Diamond slot": "Slot diamante", + "Ruby slot": "Slot rubino", + "Jade slot": "Slot giada", + "empty": "vuoto", + "Release to assign %1 to this slot.": "Rilascia per assegnare %1 a questo slot.", + "Drag a spirit onto this slot to assign it.": "Trascina uno spirito in questo slot per assegnarglielo.", + "If a golden cookie is clicked, this spirit is unslotted and all worship swaps will be used up.": "Se fai clic su un biscotto dorato, questo spirito verrà rimosso dallo slot e tutti gli scambi devozionali verranno consumati.", + "Each time you slot a spirit, you use up one worship swap.
If you have 2 swaps left, the next one will refill after %1.
If you have 1 swap left, the next one will refill after %2.
If you have 0 swaps left, you will get one after %3.
Unslotting a spirit costs no swaps.": "Ogni volta che inserisci uno spirito in uno slot consumi uno scambio devozionale.
Se ti rimangono 2 scambi, il prossimo si rigenererà dopo %1.
Se ti rimane 1 scambio, il prossimo si rigenererà dopo %2.
Se sei rimasto a 0 scambi, ne otterrai uno dopo %3.
Rimuovere uno spirito da uno slot non consuma scambi.", + "Click to refill all your worship swaps for %1.": "Fai clic per rigenerare tutti i tuoi scambi devozionali al costo di %1.", + "Worship swaps: %1": "Scambi devozionali: %1", + "next in %1": "prossimo tra %1", + "The jade slot behaves as a ruby slot and the ruby slot behaves as a diamond slot.": "Lo slot giada si comporta come uno slot rubino e lo slot rubino si comporta come lo slot diamante.", + "Stock Market": "Mercato azionario", + "[STOCK 1 NAME]Old Mills": "Vecchi mulini", + "[STOCK 1 TYPE]Cereals": "Cereali", + "[STOCK 1 LOGO]CRL": "CRL", + "[STOCK 2 NAME]Cocoa Excavations": "Scavi di cacao", + "[STOCK 2 TYPE]Chocolate": "Cioccolato", + "[STOCK 2 LOGO]CHC": "CHC", + "[STOCK 3 NAME]Bovine Industries": "Industrie bovine", + "[STOCK 3 TYPE]Butter": "Burro", + "[STOCK 3 LOGO]BTR": "BTR", + "[STOCK 4 NAME]Candy Trust": "Trust caramellato", + "[STOCK 4 TYPE]Sugar": "Zucchero", + "[STOCK 4 LOGO]SUG": "SUG", + "[STOCK 5 NAME]Hazel Monastery": "Monastero nocciolato", + "[STOCK 5 TYPE]Nuts": "Noci", + "[STOCK 5 LOGO]NUT": "NUT", + "[STOCK 6 NAME]Wacky Reagants": "Reagenti strambi", + "[STOCK 6 TYPE]Salt": "Sale", + "[STOCK 6 LOGO]SLT": "SLT", + "[STOCK 7 NAME]Cosmic Exports": "Esportazioni cosmiche", + "[STOCK 7 TYPE]Vanilla": "Vaniglia", + "[STOCK 7 LOGO]VNL": "VNL", + "[STOCK 8 NAME]Organic Gnostics": "Gnostici organici", + "[STOCK 8 TYPE]Eggs": "Uova", + "[STOCK 8 LOGO]EGG": "EGG", + "[STOCK 9 NAME]Dimensional Exchange": "Scambio dimensionale", + "[STOCK 9 TYPE]Cinnamon": "Cannella", + "[STOCK 9 LOGO]CNM": "CNM", + "[STOCK 10 NAME]Precision Aging": "Invecchiamento preciso", + "[STOCK 10 TYPE]Cream": "Panna", + "[STOCK 10 LOGO]CRM": "CRM", + "[STOCK 11 NAME]Pectin Research": "Ricerca sulla pectina", + "[STOCK 11 TYPE]Jam": "Marmellata", + "[STOCK 11 LOGO]JAM": "JAM", + "[STOCK 12 NAME]Dazzle Corp Ltd.": "Bagliore Corp Ltd.", + "[STOCK 12 TYPE]White chocolate": "Cioccolato bianco", + "[STOCK 12 LOGO]WCH": "WCH", + "[STOCK 13 NAME]Prosperity Hive": "Alveare della prosperità", + "[STOCK 13 TYPE]Honey": "Miele", + "[STOCK 13 LOGO]HNY": "HNY", + "[STOCK 14 NAME]Selfmade Bakeries": "Panetterie indipendenti", + "[STOCK 14 TYPE]Cookies": "Biscotti", + "[STOCK 14 LOGO]CKI": "CKI", + "[STOCK 15 NAME]Figments Associated": "Fantasie associate", + "[STOCK 15 TYPE]Recipes": "Ricette", + "[STOCK 15 LOGO]RCP": "RCP", + "[STOCK 16 NAME]Polyvalent Acquisitions": "Acquisizioni polivalenti", + "[STOCK 16 TYPE]Subsidiaries": "Sussidiarie", + "[STOCK 16 LOGO]SBD": "SBD", + "[STOCK 17 NAME]Great Minds": "Grandi menti", + "[STOCK 17 TYPE]Publicists": "Pubblicisti", + "[STOCK 17 LOGO]PBL": "PBL", + "from %1": "da %1", + "%1: currently worth $%2 per unit.": "%1: attualmente vale $%2 per unità.", + "You currently own %1 (worth $%2).": "Attualmente possiedi %1 (valore: $%2).", + "Your warehouses can store up to %1.": "Il tuo magazzino può ospitare fino a %1.", + "You may increase your storage space by upgrading your offices and by buying more %1. You also get %2 extra storage space per %3 level (currently: +%4).": "Puoi aumentare lo spazio di immagazzinamento potenziando i tuoi uffici o acquistando altro %1. Inoltre, ottieni spazio di immagazzinamento extra pari al %2 per %3 livello (attualmente: +%4).", + "The average worth of this stock and how high it can peak depends on the building it is tied to, along with the level of your %1.": "Il valore medio di questo titolo azionario e il picco che può raggiungere dipende dalla struttura a cui è legato, insieme al livello del tuo %1.", + "%1 the hide button to toggle all other stocks.": "%1 sul pulsante nascondi per attivare/disattivare tutti gli altri titoli azionari.", + "stock:": "titolo azionario:", + "for $%1 each": "per $%1 ciascuno", + "last bought at
$%1 each": "acquistate l'ultima volta a
$%1 ciascuna", + "+%1% overhead": "+%1% generale", + "value:": "valore:", + "valued at %1": "valutato a %1", + "you spend:": "hai speso:", + "you earn:": "hai guadagnato:", + "You cannot buy and sell this stock in the same tick.": "Non puoi acquistare e vendere questo titolo azionario nella stessa mossa.", + "This is your office.": "Questo è il tuo ufficio.", + "It is fully upgraded. Its lavish interiors, spanning across innumerable floors, are host to many a decadent party, owing to your nigh-unfathomable wealth.": "È stato totalmente potenziato. I suoi sontuosi interni, che si estendono su innumerevoli piani, ospitano molte feste faraoniche grazie alla tua quasi incalcolabile ricchezza.", + "Level %1 offices": "Uffici livello %1", + "Credit garage": "Garage di credito", + "Tiny bank": "Piccola banca", + "Loaning company": "Agenzia di prestiti", + "Finance headquarters": "Quartier generale finanziario", + "International exchange": "Scambio internazionale", + "Palace of Greed": "Palazzo dell'avidità", + "Upgrading will cost you %1.": "Il potenziamento ti costerà %1.", + "Upgrading requires %1.": "Il potenziamento richiede %1.", + "Upgrading will grant you:": "Il potenziamento ti conferirà:", + "+1 loan slot": "+1 slot prestito", + "+1 opportunity slot": "+1 slot opportunità", + "+%1 warehouse space for all goods": "+%1 spazio di immagazzinamento per tutte le merci", + "+%1% base warehouse space for all goods": "+% 1% spazio di immagazzinamento base per tutte le merci", + "Brokers:": "Broker:", + "A nice broker to trade more cookies.": "Un abile broker per lo scambio di più biscotti.", + "Hire": "Assumi", + "Buying goods normally incurs overhead costs of %1% extra. Each broker you hire reduces that cost by %2%.": "L'acquisto di beni normalmente comporta costi generali pari al %1% extra. Ciascun broker che assumi riduce quel costo del %2%.", + "Current overhead costs thanks to your brokers: +%1%": "Costi generali attuali grazie ai tuoi broker: +%1%", + "Buying a broker costs %1 of CpS (that's $%2).": "Il prezzo per l'acquisto di un broker è di %1 di BpS, cioè $%2.", + "Maximum number of brokers you can own: %1 (the highest amount of grandmas you've owned this run, divided by 10, plus your grandma level)": "Numero massimo di broker che puoi possedere: %1 (la quantità più elevata di nonnine in tuo possesso per questa serie, divisa per 10, più il tuo livello nonnina)", + "Brokers are Wall Street-class grandmas versed in the ways of finance. Stockbroker grandmas work hard and play hard, and will fight telephone in hand to get your clients the best possible deals - with a sizeable profit margin for you, of course.": "I broker sono come nonnine di classe Wall Street esperte nel settore finanziario. Le nonnine broker lavorano sodo e giocano duro. Combatteranno, telefono in mano, per far ottenere ai tuoi clienti le migliori offerte possibili con un considerevole margine di profitto per te, ovviamente.", + "Hiring a new broker will cost you %1.": "Assumere un nuovo broker ti costerà %1.", + "Take out %1": "Chiedi in prestito %1", + "Loan #%1": "Presta #%1", + "a modest loan": "un prestito modesto", + "Buy that vintage car you've always wanted. Just pay us back.": "Acquista quell'auto d'epoca che hai sempre desiderato. L'importante è ripagarci.", + "a pawnshop loan": "un prestito al banco dei pegni", + "Bad credit? No problem. It's your money, and you need it now.": "Cattivo credito? Nessun problema. Si tratta di denaro tuo e ne hai bisogno ora.", + "a retirement loan": "un prestito pensionistico", + "Finance your next house, boat, spouse, etc. You've earned it.": "Finanziaci l'acquisto della tua prossima casa, barca, matrimonio, ecc. Te li sei guadagnati.", + "By taking this loan, you will get %1 CpS for the next %2.": "Accettando questo prestito, otterrai %1 BpS per i prossimi %2.", + "However, you will get %1 CpS for the next %2 after that.": "Tuttavia, dopo di ciò otterrai %1 BpS per i prossimi %2.", + "You must also pay an immediate downpayment of %1 (%2% of your current bank).": "Inoltre è necessario pagare un acconto immediato di %1 (%2% della tua banca attuale).", + "Loan over": "Prestito terminato", + "Your loan has expired, and you must now repay the interest.": "Il tuo prestito è scaduto e ora devi pagare gli interessi.", + "Line style": "Stile linea", + "Color mode": "Modalità colore", + "Toggle speed": "Attiva/disattiva velocità", + "Click to refill your opportunity timer (and give a quick burst to your economy) for %1.": "Fai clic per ricaricare il tuo timer delle opportunità (e dai una scossa di energia alle tue finanze) al prezzo di %1.", + "Profits: %1. All prices are in $econds of your highest raw cookies per second.": "Profitti: %1. Tutti i prezzi sono in $econdi del tuo record di biscotti crudi al secondo.", + "The stock market is more chaotic.": "Il mercato azionario è più caotico.", + "[Upgrade name 0]Reinforced index finger": "Indice rinforzato", + "[Upgrade name 1]Carpal tunnel prevention cream": "Crema di prevenzione del tunnel carpale", + "[Upgrade name 2]Ambidextrous": "Ambidestrismo", + "[Upgrade name 3]Thousand fingers": "Mille dita", + "[Upgrade name 4]Million fingers": "Un milione di dita", + "[Upgrade name 5]Billion fingers": "Un miliardo di dita", + "[Upgrade name 6]Trillion fingers": "Un bilione di dita", + "[Upgrade name 7]Forwards from grandma": "Mancia della nonna", + "[Upgrade name 8]Steel-plated rolling pins": "Mattarelli d'acciaio", + "[Upgrade name 9]Lubricated dentures": "Dentiere lubrificate", + "[Upgrade name 10]Cheap hoes": "Zappe da due soldi", + "[Upgrade name 11]Fertilizer": "Fertilizzante", + "[Upgrade name 12]Cookie trees": "Alberi di biscotti", + "[Upgrade name 13]Sturdier conveyor belts": "Nastri trasportatori più robusti", + "[Upgrade name 14]Child labor": "Lavoro minorile", + "[Upgrade name 15]Sweatshop": "Sfruttamento", + "[Upgrade name 16]Sugar gas": "Gas zuccherino", + "[Upgrade name 17]Megadrill": "Megatrivella", + "[Upgrade name 18]Ultradrill": "Ultratrivella", + "[Upgrade name 19]Vanilla nebulae": "Nebulosa alla vaniglia", + "[Upgrade name 20]Wormholes": "Buchi neri", + "[Upgrade name 21]Frequent flyer": "Viaggi abituali", + "[Upgrade name 22]Antimony": "Antimonio", + "[Upgrade name 23]Essence of dough": "Essenza di impasto", + "[Upgrade name 24]True chocolate": "Vero cioccolato", + "[Upgrade name 25]Ancient tablet": "Antica tavoletta", + "[Upgrade name 26]Insane oatling workers": "Folle manodopera avenoide", + "[Upgrade name 27]Soul bond": "Legame spirituale", + "[Upgrade name 28]Flux capacitors": "Capacitori di flusso", + "[Upgrade name 29]Time paradox resolver": "Risoluzione del paradosso temporale", + "[Upgrade name 30]Quantum conundrum": "Enigma quantico", + "[Upgrade name 31]Kitten helpers": "Aiutanti felini", + "[Upgrade name 32]Kitten workers": "Operai felini", + "[Upgrade name 33]Plain cookies": "Biscotti semplici", + "[Upgrade name 34]Sugar cookies": "Biscotti zuccherati", + "[Upgrade name 35]Oatmeal raisin cookies": "Biscotti d'avena con uvette", + "[Upgrade name 36]Peanut butter cookies": "Biscotti al burro di arachidi", + "[Upgrade name 37]Coconut cookies": "Biscotti al cocco", + "[Upgrade name 38]White chocolate cookies": "Biscotti al cioccolato bianco", + "[Upgrade name 39]Macadamia nut cookies": "Biscotti alle noci macadamia", + "[Upgrade name 40]Double-chip cookies": "Biscotti con doppie scaglie di cioccolato", + "[Upgrade name 41]White chocolate macadamia nut cookies": "Biscotti al cioccolato bianco e noci macadamia", + "[Upgrade name 42]All-chocolate cookies": "Biscotti tutto cioccolato", + "[Upgrade name 43]Quadrillion fingers": "Un biliardo di dita", + "[Upgrade name 44]Prune juice": "Succo di prugna", + "[Upgrade name 45]Genetically-modified cookies": "Biscotti geneticamente modificati", + "[Upgrade name 46]Radium reactors": "Reattori di radio", + "[Upgrade name 47]Ultimadrill": "Ipertrivella", + "[Upgrade name 48]Warp drive": "Motore a curvatura", + "[Upgrade name 49]Ambrosia": "Ambrosia", + "[Upgrade name 50]Sanity dance": "Danza del senno", + "[Upgrade name 51]Causality enforcer": "Esecutore di causalità", + "[Upgrade name 52]Lucky day": "Giorno fortunato", + "[Upgrade name 53]Serendipity": "Serendipità", + "[Upgrade name 54]Kitten engineers": "Ingegneri felini", + "[Upgrade name 55]Dark chocolate-coated cookies": "Biscotti ricoperti di cioccolato fondente", + "[Upgrade name 56]White chocolate-coated cookies": "Biscotti ricoperti di cioccolato bianco", + "[Upgrade name 57]Farmer grandmas": "Nonne contadine", + "[Upgrade name 58]Miner grandmas": "Nonne minatrici", + "[Upgrade name 59]Worker grandmas": "Nonne operaie", + "[Upgrade name 60]Cosmic grandmas": "Nonne cosmiche", + "[Upgrade name 61]Transmuted grandmas": "Nonne trasmutate", + "[Upgrade name 62]Altered grandmas": "Nonne modificate", + "[Upgrade name 63]Grandmas' grandmas": "Trisnonne", + "[Upgrade name 64]Bingo center/Research facility": "Sala bingo/struttura di ricerca", + "[Upgrade name 65]Specialized chocolate chips": "Scaglie di cioccolato specializzate", + "[Upgrade name 66]Designer cocoa beans": "Chicchi di cacao d'autore", + "[Upgrade name 67]Ritual rolling pins": "Mattarelli rituali", + "[Upgrade name 68]Underworld ovens": "Forni infernali", + "[Upgrade name 69]One mind": "Menti collegate", + "[Upgrade name 70]Exotic nuts": "Noci esotiche", + "[Upgrade name 71]Communal brainsweep": "Lavaggio del cervello collettivo", + "[Upgrade name 72]Arcane sugar": "Zucchero arcano", + "[Upgrade name 73]Elder Pact": "Patto tra anziane", + "[Upgrade name 74]Elder Pledge": "Giuramento alle anziane", + "[Upgrade name 75]Plastic mouse": "Mouse di plastica", + "[Upgrade name 76]Iron mouse": "Mouse di ferro", + "[Upgrade name 77]Titanium mouse": "Mouse di titanio", + "[Upgrade name 78]Adamantium mouse": "Mouse di adamantio", + "[Upgrade name 79]Ultrascience": "Ultrascienza", + "[Upgrade name 80]Eclipse cookies": "Biscotti eclissi", + "[Upgrade name 81]Zebra cookies": "Biscotti zebrati", + "[Upgrade name 82]Quintillion fingers": "Un trilione di dita", + "[Upgrade name 83]Gold hoard": "Incetta di oro", + "[Upgrade name 84]Elder Covenant": "Alleanza con le anziane", + "[Upgrade name 85]Revoke Elder Covenant": "Revoca alleanza con le anziane", + "[Upgrade name 86]Get lucky": "Colpo di fortuna", + "[Upgrade name 87]Sacrificial rolling pins": "Mattarelli sacrificali", + "[Upgrade name 88]Snickerdoodles": "Snickerdoodle", + "[Upgrade name 89]Stroopwafels": "Stroopwafel", + "[Upgrade name 90]Macaroons": "Amaretti", + "[Upgrade name 91]Neuromancy": "Neuromanzia", + "[Upgrade name 92]Empire biscuits": "Biscotti impero", + "[Upgrade name 93]British tea biscuits": "Biscotti da tè", + "[Upgrade name 94]Chocolate british tea biscuits": "Biscotti da tè al cioccolato", + "[Upgrade name 95]Round british tea biscuits": "Biscotti da tè rotondi", + "[Upgrade name 96]Round chocolate british tea biscuits": "Biscotti da tè rotondi al cioccolato", + "[Upgrade name 97]Round british tea biscuits with heart motif": "Biscotti da tè rotondi con cuore", + "[Upgrade name 98]Round chocolate british tea biscuits with heart motif": "Biscotti da tè rotondi al cioccolato con cuore", + "[Upgrade name 99]Sugar bosons": "Bosoni di zucchero", + "[Upgrade name 100]String theory": "Teoria delle stringhe", + "[Upgrade name 101]Large macaron collider": "Acceleratore di macaron", + "[Upgrade name 102]Big bang bake": "Big bang biscottato", + "[Upgrade name 103]Antigrandmas": "Anti-nonne", + "[Upgrade name 104]Madeleines": "Madeleine", + "[Upgrade name 105]Palmiers": "Prussiane", + "[Upgrade name 106]Palets": "Palets bretons", + "[Upgrade name 107]Sablés": "Sablé", + "[Upgrade name 108]Kitten overseers": "Supervisori felini", + "[Upgrade name 109]Sextillion fingers": "Un triliardo di dita", + "[Upgrade name 110]Double-thick glasses": "Occhiali a fondo di bottiglia", + "[Upgrade name 111]Gingerbread scarecrows": "Spaventapasseri di pan di zenzero", + "[Upgrade name 112]Recombobulators": "Riorientatori", + "[Upgrade name 113]H-bomb mining": "Estrazione di bombe H", + "[Upgrade name 114]Chocolate monoliths": "Monoliti di cioccolato", + "[Upgrade name 115]Aqua crustulae": "Aqua crustulae", + "[Upgrade name 116]Brane transplant": "Trapianto di membrana", + "[Upgrade name 117]Yestermorrow comparators": "Comparatori passato-futuro", + "[Upgrade name 118]Reverse cyclotrons": "Ciclotroni inversi", + "[Upgrade name 119]Unobtainium mouse": "Mouse di unobtainium", + "[Upgrade name 120]Caramoas": "Caramoa", + "[Upgrade name 121]Sagalongs": "Sagalong", + "[Upgrade name 122]Shortfoils": "Shortfoil", + "[Upgrade name 123]Win mints": "Win Mint", + "[Upgrade name 124]Perfect idling": "Passività totale", + "[Upgrade name 125]Fig gluttons": "Fig Glutton", + "[Upgrade name 126]Loreols": "Loreol", + "[Upgrade name 127]Jaffa cakes": "Jaffa Cake", + "[Upgrade name 128]Grease's cups": "Grease's Cup", + "[Upgrade name 129]Heavenly chip secret": "Segreto delle scaglie celestiali", + "[Upgrade name 130]Heavenly cookie stand": "Espositore di scaglie celestiali", + "[Upgrade name 131]Heavenly bakery": "Pasticceria celestiale", + "[Upgrade name 132]Heavenly confectionery": "Industria dolciaria celestiale", + "[Upgrade name 133]Heavenly key": "Chiave celestiale", + "[Upgrade name 134]Skull cookies": "Biscotti a forma di teschio", + "[Upgrade name 135]Ghost cookies": "Biscotti a forma di fantasma", + "[Upgrade name 136]Bat cookies": "Biscotti a forma di pipistrello", + "[Upgrade name 137]Slime cookies": "Biscotti a forma di slime", + "[Upgrade name 138]Pumpkin cookies": "Biscotti a forma di zucca", + "[Upgrade name 139]Eyeball cookies": "Biscotti a forma di occhio", + "[Upgrade name 140]Spider cookies": "Biscotti a forma di ragno", + "[Upgrade name 141]Persistent memory": "Memoria permanente", + "[Upgrade name 142]Wrinkler doormat": "Zerbino divoratore", + "[Upgrade name 143]Christmas tree biscuits": "Biscotti a forma di albero di Natale", + "[Upgrade name 144]Snowflake biscuits": "Biscotti a forma di fiocco di neve", + "[Upgrade name 145]Snowman biscuits": "Biscotti a forma di pupazzo di neve", + "[Upgrade name 146]Holly biscuits": "Biscotti a forma di agrifoglio", + "[Upgrade name 147]Candy cane biscuits": "Biscotti a forma di bastoncino di zucchero", + "[Upgrade name 148]Bell biscuits": "Biscotti a forma di campana", + "[Upgrade name 149]Present biscuits": "Biscotti a forma di regalo", + "[Upgrade name 150]Gingerbread men": "Omini di pan di zenzero", + "[Upgrade name 151]Gingerbread trees": "Alberi di pan di zenzero", + "[Upgrade name 152]A festive hat": "Un cappello natalizio", + "[Upgrade name 153]Increased merriness": "Gioia crescente", + "[Upgrade name 154]Improved jolliness": "Allegria superiore", + "[Upgrade name 155]A lump of coal": "Un pezzo di carbone", + "[Upgrade name 156]An itchy sweater": "Un maglione pruriginoso", + "[Upgrade name 157]Reindeer baking grounds": "Branco di renne", + "[Upgrade name 158]Weighted sleighs": "Slitte sovraccariche", + "[Upgrade name 159]Ho ho ho-flavored frosting": "Glassa oh oh oh", + "[Upgrade name 160]Season savings": "Risparmi di stagione", + "[Upgrade name 161]Toy workshop": "Laboratorio di giocattoli", + "[Upgrade name 162]Naughty list": "Lista dei cattivi", + "[Upgrade name 163]Santa's bottomless bag": "Sacco senza fondo di Babbo Natale", + "[Upgrade name 164]Santa's helpers": "Aiutanti di Babbo Natale", + "[Upgrade name 165]Santa's legacy": "Eredità di Babbo Natale", + "[Upgrade name 166]Santa's milk and cookies": "Latte e biscotti di Babbo Natale", + "[Upgrade name 167]Reindeer season": "Stagione delle renne", + "[Upgrade name 168]Santa's dominion": "Dominio di Babbo Natale", + "[Upgrade name 169]Pure heart biscuits": "Biscotti cuore puri", + "[Upgrade name 170]Ardent heart biscuits": "Biscotti cuore ardenti", + "[Upgrade name 171]Sour heart biscuits": "Biscotti cuore acidi", + "[Upgrade name 172]Weeping heart biscuits": "Biscotti cuore piangenti", + "[Upgrade name 173]Golden heart biscuits": "Biscotti cuore d'oro", + "[Upgrade name 174]Eternal heart biscuits": "Biscotti cuore eterni", + "[Upgrade name 175]Gem polish": "Lucido per gemme", + "[Upgrade name 176]9th color": "Nono colore", + "[Upgrade name 177]Chocolate light": "Luce di cioccolato", + "[Upgrade name 178]Grainbow": "Cerealcobaleno", + "[Upgrade name 179]Pure cosmic light": "Pura luce cosmica", + "[Upgrade name 180]Rainbow grandmas": "Nonne arcobaleno", + "[Upgrade name 181]Season switcher": "Cambio di stagione", + "[Upgrade name 182]Festive biscuit": "Biscotto natalizio", + "[Upgrade name 183]Ghostly biscuit": "Biscotto spettrale", + "[Upgrade name 184]Lovesick biscuit": "Biscotto innamorato", + "[Upgrade name 185]Fool's biscuit": "Biscotto d'aprile", + "[Upgrade name 186]Eternal seasons": "Stagioni eterne", + "[Upgrade name 187]Kitten managers": "Direttori felini", + "[Upgrade name 188]Septillion fingers": "Un quadrilione di dita", + "[Upgrade name 189]Octillion fingers": "Un quadriliardo di dita", + "[Upgrade name 190]Eludium mouse": "Mouse di eludium", + "[Upgrade name 191]Wishalloy mouse": "Mouse di lega illusoria", + "[Upgrade name 192]Aging agents": "Agenti invecchianti", + "[Upgrade name 193]Pulsar sprinklers": "Irrigazione pulsar", + "[Upgrade name 194]Deep-bake process": "Doppia infornata", + "[Upgrade name 195]Coreforge": "Forgia nucleare", + "[Upgrade name 196]Generation ship": "Nave generazionale", + "[Upgrade name 197]Origin crucible": "Crogiolo delle origini", + "[Upgrade name 198]Deity-sized portals": "Portali a misura di dio", + "[Upgrade name 199]Far future enactment": "Rappresentazione di un futuro lontano", + "[Upgrade name 200]Nanocosmics": "Nanocosmo", + "[Upgrade name 201]Glow-in-the-dark": "Fluorescenza", + "[Upgrade name 202]Rose macarons": "Macarons alla rosa", + "[Upgrade name 203]Lemon macarons": "Macarons al limone", + "[Upgrade name 204]Chocolate macarons": "Macarons al cioccolato", + "[Upgrade name 205]Pistachio macarons": "Macarons al pistacchio", + "[Upgrade name 206]Hazelnut macarons": "Macarons alla nocciola", + "[Upgrade name 207]Violet macarons": "Macarons alla viola", + "[Upgrade name 208]Magic shenanigans": "Trucchetti magici", + "[Upgrade name 209]Bunny biscuit": "Biscotti salterini", + "[Upgrade name 210]Chicken egg": "Uovo di pollo", + "[Upgrade name 211]Duck egg": "Uovo di anatra", + "[Upgrade name 212]Turkey egg": "Uovo di tacchino", + "[Upgrade name 213]Quail egg": "Uovo di quaglia", + "[Upgrade name 214]Robin egg": "Uovo di pettirosso", + "[Upgrade name 215]Ostrich egg": "Uovo di struzzo", + "[Upgrade name 216]Cassowary egg": "Uovo di casuario", + "[Upgrade name 217]Salmon roe": "Uova di salmone", + "[Upgrade name 218]Frogspawn": "Uova di rana", + "[Upgrade name 219]Shark egg": "Uovo di squalo", + "[Upgrade name 220]Turtle egg": "Uovo di tartaruga", + "[Upgrade name 221]Ant larva": "Larva di formica", + "[Upgrade name 222]Golden goose egg": "Uovo di anatra d'oro", + "[Upgrade name 223]Faberge egg": "Uovo fabergé", + "[Upgrade name 224]Wrinklerspawn": "Progenie di divoratore", + "[Upgrade name 225]Cookie egg": "Uovo biscottato", + "[Upgrade name 226]Omelette": "Frittata", + "[Upgrade name 227]Chocolate egg": "Uovo di cioccolato", + "[Upgrade name 228]Century egg": "Uovo centenario", + "[Upgrade name 229]\"egg\"": "\"uovo\"", + "[Upgrade name 230]Caramel macarons": "Macarons al caramello", + "[Upgrade name 231]Licorice macarons": "Macarons alla liquirizia", + "[Upgrade name 232]Taller tellers": "Impiegati impegnati", + "[Upgrade name 233]Scissor-resistant credit cards": "Carte di credito antitaglio", + "[Upgrade name 234]Acid-proof vaults": "Caveau a prova di acido", + "[Upgrade name 235]Chocolate coins": "Monete di cioccolato", + "[Upgrade name 236]Exponential interest rates": "Tassi d'interesse esponenziali", + "[Upgrade name 237]Financial zen": "Zen finanziario", + "[Upgrade name 238]Golden idols": "Idoli d'oro", + "[Upgrade name 239]Sacrifices": "Sacrifici", + "[Upgrade name 240]Delicious blessing": "Golose benedizioni", + "[Upgrade name 241]Sun festival": "Festività del sole", + "[Upgrade name 242]Enlarged pantheon": "Pantheon allargato", + "[Upgrade name 243]Great Baker in the sky": "Pasticciere nell'alto dei cieli", + "[Upgrade name 244]Pointier hats": "Cappelli più a punta", + "[Upgrade name 245]Beardlier beards": "Barbe più folte", + "[Upgrade name 246]Ancient grimoires": "Antichi grimori", + "[Upgrade name 247]Kitchen curses": "Fatture culinarie", + "[Upgrade name 248]School of sorcery": "Scuola di stregoneria", + "[Upgrade name 249]Dark formulas": "Formule oscure", + "[Upgrade name 250]Banker grandmas": "Nonne banchiere", + "[Upgrade name 251]Priestess grandmas": "Nonne sacerdotesse", + "[Upgrade name 252]Witch grandmas": "Nonne streghe", + "[Upgrade name 253]Tin of british tea biscuits": "Latta di biscotti da tè", + "[Upgrade name 254]Box of macarons": "Scatola di macarons", + "[Upgrade name 255]Box of brand biscuits": "Scatola di biscotti di marca", + "[Upgrade name 256]Pure black chocolate cookies": "Biscotti al puro cioccolato fondente", + "[Upgrade name 257]Pure white chocolate cookies": "Biscotti al puro cioccolato bianco", + "[Upgrade name 258]Ladyfingers": "Savoiardi", + "[Upgrade name 259]Tuiles": "Tuiles", + "[Upgrade name 260]Chocolate-stuffed biscuits": "Biscotti ripieni di cioccolato", + "[Upgrade name 261]Checker cookies": "Biscotti a scacchi", + "[Upgrade name 262]Butter cookies": "Biscotti al burro", + "[Upgrade name 263]Cream cookies": "Biscotti alla crema", + "[Upgrade name 264]Permanent upgrade slot I": "Slot potenziamento permanente I", + "[Upgrade name 265]Permanent upgrade slot II": "Slot potenziamento permanente II", + "[Upgrade name 266]Permanent upgrade slot III": "Slot potenziamento permanente III", + "[Upgrade name 267]Permanent upgrade slot IV": "Slot potenziamento permanente IV", + "[Upgrade name 268]Permanent upgrade slot V": "Slot potenziamento permanente V", + "[Upgrade name 269]Starspawn": "Cova siderale", + "[Upgrade name 270]Starsnow": "Neve siderale", + "[Upgrade name 271]Starterror": "Terrore siderale", + "[Upgrade name 272]Starlove": "Amore siderale", + "[Upgrade name 273]Startrade": "Commercio siderale", + "[Upgrade name 274]Angels": "Angeli", + "[Upgrade name 275]Archangels": "Arcangeli", + "[Upgrade name 276]Virtues": "Virtù", + "[Upgrade name 277]Dominions": "Dominazioni", + "[Upgrade name 278]Cherubim": "Cherubini", + "[Upgrade name 279]Seraphim": "Serafini", + "[Upgrade name 280]God": "Dio", + "[Upgrade name 281]Twin Gates of Transcendence": "Cancelli gemelli della trascendenza", + "[Upgrade name 282]Heavenly luck": "Fortuna celestiale", + "[Upgrade name 283]Lasting fortune": "Fortuna duratura", + "[Upgrade name 284]Decisive fate": "Sorte decisiva", + "[Upgrade name 285]Divine discount": "Sconto divino", + "[Upgrade name 286]Divine sales": "Saldi divini", + "[Upgrade name 287]Divine bakeries": "Pasticcerie divine", + "[Upgrade name 288]Starter kit": "Kit iniziale", + "[Upgrade name 289]Starter kitchen": "Cucina iniziale", + "[Upgrade name 290]Halo gloves": "Guanti con aureola", + "[Upgrade name 291]Kitten angels": "Angeli felini", + "[Upgrade name 292]Unholy bait": "Esca profana", + "[Upgrade name 293]Sacrilegious corruption": "Corruzione sacrilega", + "[Upgrade name 294]Xtreme walkers": "Deambulatori hipster", + "[Upgrade name 295]Fudge fungus": "Fungo caramellato", + "[Upgrade name 296]Planetsplitters": "Spaccapianeti", + "[Upgrade name 297]Cyborg workforce": "Manodopera cyborg", + "[Upgrade name 298]Way of the wallet": "La via del portafogli", + "[Upgrade name 299]Creation myth": "Mito della creazione", + "[Upgrade name 300]Cookiemancy": "Biscomanzia", + "[Upgrade name 301]Dyson sphere": "Sfera aspiratutto", + "[Upgrade name 302]Theory of atomic fluidity": "Teoria della fluidità atomica", + "[Upgrade name 303]End of times back-up plan": "Piano B per la fine dei tempi", + "[Upgrade name 304]Great loop hypothesis": "Ipotesi del grande ciclo", + "[Upgrade name 305]The Pulse": "Il battito", + "[Upgrade name 306]Lux sanctorum": "Lux sanctorum", + "[Upgrade name 307]The Unbridling": "L'irrefrenabile", + "[Upgrade name 308]Wheat triffids": "Trifidi di grano", + "[Upgrade name 309]Canola oil wells": "Pozzi di olio di colza", + "[Upgrade name 310]78-hour days": "Giornate da 78 ore", + "[Upgrade name 311]The stuff rationale": "Le cose della ragione", + "[Upgrade name 312]Theocracy": "Teocrazia", + "[Upgrade name 313]Rabbit trick": "Trucco del coniglio", + "[Upgrade name 314]The final frontier": "L'ultima frontiera", + "[Upgrade name 315]Beige goo": "Melma beige", + "[Upgrade name 316]Maddening chants": "Cori esasperanti", + "[Upgrade name 317]Cookietopian moments of maybe": "Storie di futuri biscottati alternativi", + "[Upgrade name 318]Some other super-tiny fundamental particle? Probably?": "Un'altra minuscola particella fondamentale? Forse?", + "[Upgrade name 319]Reverse shadows": "Ombre inverse", + "[Upgrade name 320]Kitten accountants": "Contabili felini", + "[Upgrade name 321]Kitten specialists": "Specialisti felini", + "[Upgrade name 322]Kitten experts": "Esperti felini", + "[Upgrade name 323]How to bake your dragon": "Drago ripieno", + "[Upgrade name 324]A crumbly egg": "Un uovo friabile", + "[Upgrade name 325]Chimera": "Chimera", + "[Upgrade name 326]Tin of butter cookies": "Latta di biscotti al burro", + "[Upgrade name 327]Golden switch": "Interruttore dorato", + "[Upgrade name 328]Classic dairy selection": "Selezione di latte classica", + "[Upgrade name 329]Fanciful dairy selection": "Selezione di latte fantasiosa", + "[Upgrade name 330]Dragon cookie": "Biscotto del drago", + "[Upgrade name 331]Golden switch [off]": "Interruttore dorato [off]", + "[Upgrade name 332]Golden switch [on]": "Interruttore dorato [on]", + "[Upgrade name 333]Milk selector": "Selettore di latte", + "[Upgrade name 334]Milk chocolate butter biscuit": "Biscotti al burro e cioccolato al latte", + "[Upgrade name 335]Dark chocolate butter biscuit": "Biscotti al burro e cioccolato fondente", + "[Upgrade name 336]White chocolate butter biscuit": "Biscotti al burro e cioccolato bianco", + "[Upgrade name 337]Ruby chocolate butter biscuit": "Biscotti al burro e cioccolato rosa", + "[Upgrade name 338]Gingersnaps": "Biscotti allo zenzero", + "[Upgrade name 339]Cinnamon cookies": "Biscotti alla cannella", + "[Upgrade name 340]Vanity cookies": "Biscotti con ciliegina", + "[Upgrade name 341]Cigars": "Sigari", + "[Upgrade name 342]Pinwheel cookies": "Biscotti girandola", + "[Upgrade name 343]Fudge squares": "Quadrotti al caramello", + "[Upgrade name 344]Digits": "Digit", + "[Upgrade name 345]Butter horseshoes": "Ferri di cavallo al burro", + "[Upgrade name 346]Butter pucks": "Cialde al burro", + "[Upgrade name 347]Butter knots": "Pretzel al burro", + "[Upgrade name 348]Butter slabs": "Tegole al burro", + "[Upgrade name 349]Butter swirls": "Spirali al burro", + "[Upgrade name 350]Shortbread biscuits": "Shortbread", + "[Upgrade name 351]Millionaires' shortbreads": "Shortbread del milionario", + "[Upgrade name 352]Caramel cookies": "Biscotti al caramello", + "[Upgrade name 353]Belphegor": "Belfagor", + "[Upgrade name 354]Mammon": "Mammon", + "[Upgrade name 355]Abaddon": "Abaddon", + "[Upgrade name 356]Satan": "Satana", + "[Upgrade name 357]Asmodeus": "Asmodeo", + "[Upgrade name 358]Beelzebub": "Belzebù", + "[Upgrade name 359]Lucifer": "Lucifero", + "[Upgrade name 360]Golden cookie alert sound": "Avviso acustico dei biscotti dorati", + "[Upgrade name 361]Golden cookie sound selector": "Selettore audio dei biscotti dorati", + "[Upgrade name 362]Basic wallpaper assortment": "Assortimento di sfondi base", + "[Upgrade name 363]Legacy": "Genesi", + "[Upgrade name 364]Elder spice": "Spezia antica", + "[Upgrade name 365]Residual luck": "Fortuna residua", + "[Upgrade name 366]Fantasteel mouse": "Mouse di fantacciaio", + "[Upgrade name 367]Nevercrack mouse": "Mouse indistruttibile", + "[Upgrade name 368]Five-finger discount": "Sconto cinque dita", + "[Upgrade name 369]Future almanacs": "Almanacchi del futuro", + "[Upgrade name 370]Rain prayer": "Preghiera della pioggia", + "[Upgrade name 371]Seismic magic": "Magia sismica", + "[Upgrade name 372]Asteroid mining": "Estrazione di asteroidi", + "[Upgrade name 373]Quantum electronics": "Elettronica quantica", + "[Upgrade name 374]Temporal overclocking": "Overclocking temporale", + "[Upgrade name 375]Contracts from beyond": "Contratti dall'aldilà", + "[Upgrade name 376]Printing presses": "Macchine da stampa", + "[Upgrade name 377]Paganism": "Paganesimo", + "[Upgrade name 378]God particle": "Particella di Dio", + "[Upgrade name 379]Arcane knowledge": "Sapere arcano", + "[Upgrade name 380]Magical botany": "Botanica magica", + "[Upgrade name 381]Fossil fuels": "Carburanti fossili", + "[Upgrade name 382]Shipyards": "Cantieri navali", + "[Upgrade name 383]Primordial ores": "Minerali primordiali", + "[Upgrade name 384]Gold fund": "Riserva aurea", + "[Upgrade name 385]Infernal crops": "Colture infernali", + "[Upgrade name 386]Abysmal glimmer": "Orrendo bagliore", + "[Upgrade name 387]Relativistic parsec-skipping": "Salto di parsec relativistico", + "[Upgrade name 388]Primeval glow": "Barlume primigenio", + "[Upgrade name 389]Extra physics funding": "Fondi extra alla fisica", + "[Upgrade name 390]Chemical proficiency": "Padronanza della chimica", + "[Upgrade name 391]Light magic": "Magia di luce", + "[Upgrade name 392]Mystical energies": "Energie mistiche", + "[Upgrade name 393]Synergies Vol. I": "Sinergie vol. I", + "[Upgrade name 394]Synergies Vol. II": "Sinergie vol. II", + "[Upgrade name 395]Heavenly cookies": "Biscotti celestiali", + "[Upgrade name 396]Wrinkly cookies": "Biscotti grinzosi", + "[Upgrade name 397]Distilled essence of redoubled luck": "Essenza distillata di duplice fortuna", + "[Upgrade name 398]Occult obstruction": "Occlusione occulta", + "[Upgrade name 399]Glucose-charged air": "Aria glucosizzata", + "[Upgrade name 400]Lavender chocolate butter biscuit": "Biscotti al burro e cioccolato alla lavanda", + "[Upgrade name 401]Lombardia cookies": "Biscotti Lombardia", + "[Upgrade name 402]Bastenaken cookies": "Biscotti Bastenaken", + "[Upgrade name 403]Pecan sandies": "Frolle alle noci pecan", + "[Upgrade name 404]Moravian spice cookies": "Biscotti speziati di Moravia", + "[Upgrade name 405]Anzac biscuits": "Biscotti Anzac", + "[Upgrade name 406]Buttercakes": "Tortine al burro", + "[Upgrade name 407]Ice cream sandwiches": "Gelati sandwich", + "[Upgrade name 408]Stevia Caelestis": "Stevia Caelestis", + "[Upgrade name 409]Diabetica Daemonicus": "Diabetica Daemonicus", + "[Upgrade name 410]Sucralosia Inutilis": "Sucralosia Inutilis", + "[Upgrade name 411]Lucky digit": "Cifra fortunata", + "[Upgrade name 412]Lucky number": "Numero fortunato", + "[Upgrade name 413]Lucky payout": "Somma fortunata", + "[Upgrade name 414]Background selector": "Selettore dello sfondo", + "[Upgrade name 415]Lucky grandmas": "Nonne fortunate", + "[Upgrade name 416]Your lucky cookie": "Il tuo biscotto fortunato", + "[Upgrade name 417]\"All Bets Are Off\" magic coin": "Moneta magica \"Scommesse chiuse\"", + "[Upgrade name 418]Winning lottery ticket": "Biglietto della lotteria vincente", + "[Upgrade name 419]Four-leaf clover field": "Campo di quadrifogli", + "[Upgrade name 420]A recipe book about books": "Libro di ricette a base di libri", + "[Upgrade name 421]Leprechaun village": "Villaggio dei leprecauni", + "[Upgrade name 422]Improbability drive": "Motore dell'improbabilità", + "[Upgrade name 423]Antisuperstistronics": "Antisuperstitronica", + "[Upgrade name 424]Gemmed talismans": "Talismani ingioiellati", + "[Upgrade name 425]Kitten consultants": "Consulenti felini", + "[Upgrade name 426]Birthday cookie": "Biscotto di compleanno", + "[Upgrade name 427]Armythril mouse": "Mouse di milithril", + "[Upgrade name 428]Reverse dementia": "Demenza inversa", + "[Upgrade name 429]Humane pesticides": "Pesticidi umani", + "[Upgrade name 430]Mole people": "Popolo talpa", + "[Upgrade name 431]Machine learning": "Studio delle macchine", + "[Upgrade name 432]Edible money": "Denaro edibile", + "[Upgrade name 433]Sick rap prayers": "Preghiere rap", + "[Upgrade name 434]Deluxe tailored wands": "Bacchette deluxe su misura", + "[Upgrade name 435]Autopilot": "Autopilota", + "[Upgrade name 436]The advent of chemistry": "L'avvento della chimica", + "[Upgrade name 437]The real world": "Il mondo reale", + "[Upgrade name 438]Second seconds": "Secondi secondi", + "[Upgrade name 439]Quantum comb": "Pettine quantico", + "[Upgrade name 440]Crystal mirrors": "Specchi di cristallo", + "[Upgrade name 441]Bunnypedes": "Conigli centozampe", + "[Upgrade name 442]Kitten assistants to the regional manager": "Assistente felino al direttore regionale", + "[Upgrade name 443]Charm quarks": "Quark fortunati", + "[Upgrade name 444]Pink biscuits": "Biscotti rosa", + "[Upgrade name 445]Whole-grain cookies": "Biscotti integrali", + "[Upgrade name 446]Candy cookies": "Biscotti alle caramelle", + "[Upgrade name 447]Big chip cookies": "Biscotti con scaglie giganti", + "[Upgrade name 448]One chip cookies": "Biscotti con scaglia solitaria", + "[Upgrade name 449]Sugar baking": "Pasticceria di zucchero", + "[Upgrade name 450]Sugar craving": "Bramosia di zucchero", + "[Upgrade name 451]Sugar aging process": "Invecchiamento da zucchero", + "[Upgrade name 452]Sugar frenzy": "Frenesia di zucchero", + "[Upgrade name 453]Sprinkles cookies": "Biscotti con zuccherini", + "[Upgrade name 454]Peanut butter blossoms": "Biscotti con topping al burro di arachidi", + "[Upgrade name 455]No-bake cookies": "Biscotti senza cottura", + "[Upgrade name 456]Florentines": "Biscotti fiorentini", + "[Upgrade name 457]Chocolate crinkles": "Biscotti crepati al cioccolato", + "[Upgrade name 458]Maple cookies": "Biscotti allo sciroppo d'acero", + "[Upgrade name 459]Turbo-charged soil": "Terreno a turbo-carica", + "[Upgrade name 460]Technobsidian mouse": "Mouse di tecnossidiana", + "[Upgrade name 461]Plasmarble mouse": "Mouse di plasmarmo", + "[Upgrade name 462]Kitten marketeers": "Commercianti felini", + "[Upgrade name 463]Festivity loops": "Festivity Loop", + "[Upgrade name 464]Persian rice cookies": "Biscotti di riso persiani", + "[Upgrade name 465]Norwegian cookies": "Biscotti norvegesi", + "[Upgrade name 466]Crispy rice cookies": "Biscotti al riso soffiato", + "[Upgrade name 467]Ube cookies": "Biscotti con ube", + "[Upgrade name 468]Butterscotch cookies": "Biscotti mou", + "[Upgrade name 469]Speculaas": "Speculoos", + "[Upgrade name 470]Elderwort biscuits": "Biscotti all'iperico venerabile", + "[Upgrade name 471]Bakeberry cookies": "Biscotti alle bacche da forno", + "[Upgrade name 472]Duketater cookies": "Biscotti alle patate ducali", + "[Upgrade name 473]Green yeast digestives": "Digestivi al lievito verde", + "[Upgrade name 474]Fern tea": "Tè alla felce", + "[Upgrade name 475]Ichor syrup": "Sciroppo di icore", + "[Upgrade name 476]Wheat slims": "Sfoglie di grano", + "[Upgrade name 477]Synthetic chocolate green honey butter biscuit": "Biscotti al burro e miele verde con cioccolato sintetico", + "[Upgrade name 478]Royal raspberry chocolate butter biscuit": "Biscotti al burro e cioccolato reale al lampone", + "[Upgrade name 479]Ultra-concentrated high-energy chocolate butter biscuit": "Biscotti al burro e cioccolato energetico ultraconcentrato", + "[Upgrade name 480]Timeproof hair dyes": "Tinte per capelli permanenti", + "[Upgrade name 481]Barnstars": "Decorazioni da fienile", + "[Upgrade name 482]Mine canaries": "Canarini da miniera", + "[Upgrade name 483]Brownie point system": "Sistema a punti brownie", + "[Upgrade name 484]Grand supercycles": "Sommo superciclo", + "[Upgrade name 485]Psalm-reading": "Lettura dei salmi", + "[Upgrade name 486]Immobile spellcasting": "Lancio immobile di incantesimi", + "[Upgrade name 487]Restaurants at the end of the universe": "Ristoranti ai confini dell'universo", + "[Upgrade name 488]On second thought": "Pensandoci bene", + "[Upgrade name 489]Dimensional garbage gulper": "Discarica dimensionale", + "[Upgrade name 490]Additional clock hands": "Lancette aggiuntive", + "[Upgrade name 491]Baking Nobel prize": "Premio Nobel per la pasticceria", + "[Upgrade name 492]Reverse theory of light": "Teoria della luce inversa", + "[Upgrade name 493]Revised probabilistics": "Probabilistica riveduta", + "[Upgrade name 494]Kitten analysts": "Analisti felini", + "[Upgrade name 495]Eye of the wrinkler": "Occhio del divoratore", + "[Upgrade name 496]Inspired checklist": "Lista di controllo ispirata", + "[Upgrade name 497]Pure pitch-black chocolate butter biscuit": "Biscotti al burro e puro cioccolato nero", + "[Upgrade name 498]Chocolate oatmeal cookies": "Biscotti di avena al cioccolato", + "[Upgrade name 499]Molasses cookies": "Biscotti alla melassa", + "[Upgrade name 500]Biscotti": "Cantucci", + "[Upgrade name 501]Waffle cookies": "Biscotti di cialda", + "[Upgrade name 502]Almond cookies": "Biscotti alle mandorle", + "[Upgrade name 503]Hazelnut cookies": "Biscotti alle nocciole", + "[Upgrade name 504]Walnut cookies": "Biscotti alle noci", + "[Upgrade name 505]Label printer": "Etichettatrice", + "[Upgrade name 506]Good manners": "Buone maniere", + "[Upgrade name 507]Lindworms": "Lindworm", + "[Upgrade name 508]Bore again": "Altra noia", + "[Upgrade name 509]\"Volunteer\" interns": "Tirocinanti \"volontari\"", + "[Upgrade name 510]Rules of acquisition": "Regole di acquisizione", + "[Upgrade name 511]War of the gods": "Guerra degli dèi", + "[Upgrade name 512]Electricity": "Elettricità", + "[Upgrade name 513]Universal alphabet": "Alfabeto universale", + "[Upgrade name 514]Public betterment": "Miglioramento pubblico", + "[Upgrade name 515]Embedded microportals": "Microportali incorporati", + "[Upgrade name 516]Nostalgia": "Nostalgia", + "[Upgrade name 517]The definite molecule": "La molecola definitiva", + "[Upgrade name 518]Light capture measures": "Metodi di cattura della luce", + "[Upgrade name 519]0-sided dice": "Dadi a 0 facce", + "[Upgrade name 520]Heralds": "Araldi", + "[Upgrade name 521]Metagrandmas": "Metanonne", + "[Upgrade name 522]Metabakeries": "Metapasticcerie", + "[Upgrade name 523]Mandelbrown sugar": "Zucchero di Candelbrot", + "[Upgrade name 524]Fractoids": "Frattoidi", + "[Upgrade name 525]Nested universe theory": "Teoria degli universi annidati", + "[Upgrade name 526]Menger sponge cake": "Torta di Menger", + "[Upgrade name 527]One particularly good-humored cow": "Una mucca di buon umore", + "[Upgrade name 528]Chocolate ouroboros": "Uroboro di cioccolato", + "[Upgrade name 529]Nested": "Nested", + "[Upgrade name 530]Space-filling fibers": "Fibre di riempimento", + "[Upgrade name 531]Endless book of prose": "Interminabile libro di prosa", + "[Upgrade name 532]The set of all sets": "Il set di tutti i set", + "[Upgrade name 533]Recursive mirrors": "Specchi ricorsivi", + "[Upgrade name 534]Mice clicking mice": "Mouse clicca mouse", + "[Upgrade name 535]Custard creams": "Biscotti farciti con crema pasticcera", + "[Upgrade name 536]Bourbon biscuits": "Biscotti al cioccolato farciti", + "[Upgrade name 537]Keepsakes": "Ricordi", + "[Upgrade name 538]Mini-cookies": "Biscotti mignon", + "[Upgrade name 539]Sugar crystal cookies": "Biscotti con cristalli di zucchero", + "[Upgrade name 540]Box of maybe cookies": "Scatola di biscotti dubbi", + "[Upgrade name 541]Box of not cookies": "Scatola di non biscotti", + "[Upgrade name 542]Box of pastries": "Scatola di dessert", + "[Upgrade name 543]Profiteroles": "Profiterole", + "[Upgrade name 544]Jelly donut": "Ciambella alla marmellata", + "[Upgrade name 545]Glazed donut": "Ciambella glassata", + "[Upgrade name 546]Chocolate cake": "Torta al cioccolato", + "[Upgrade name 547]Strawberry cake": "Torta alle fragole", + "[Upgrade name 548]Apple pie": "Crostata di mele", + "[Upgrade name 549]Lemon meringue pie": "Torta meringata al limone", + "[Upgrade name 550]Butter croissant": "Croissant al burro", + "[Upgrade name 551]Cookie dough": "Impasto per biscotti", + "[Upgrade name 552]Burnt cookie": "Biscotto bruciato", + "[Upgrade name 553]A chocolate chip cookie but with the chips picked off for some reason": "Biscotto con scaglie di cioccolato, ma per qualche motivo hanno tolto le scaglie", + "[Upgrade name 554]Flavor text cookie": "Biscotto dal sapore testuale", + "[Upgrade name 555]High-definition cookie": "Biscotto ad alta definizione", + "[Upgrade name 556]Toast": "Toast", + "[Upgrade name 557]Peanut butter & jelly": "Pane con burro e marmellata", + "[Upgrade name 558]Wookies": "Wookie", + "[Upgrade name 559]Cheeseburger": "Cheeseburger", + "[Upgrade name 560]One lone chocolate chip": "Scaglia di cioccolato solitaria", + "[Upgrade name 561]Genius accounting": "Genio della contabilità", + "[Upgrade name 562]Shimmering veil": "Velo lucente", + "[Upgrade name 563]Shimmering veil [off]": "Velo lucente [off]", + "[Upgrade name 564]Shimmering veil [on]": "Velo lucente [on]", + "[Upgrade name 565]Whoopie pies": "Whoopie pie", + "[Upgrade name 566]Caramel wafer biscuits": "Wafer al caramello", + "[Upgrade name 567]Chocolate chip mocha cookies": "Biscotti al caffè con scaglie di cioccolato", + "[Upgrade name 568]Earl Grey cookies": "Biscotti all'Earl Gray", + "[Upgrade name 569]Corn syrup cookies": "Biscotti allo sciroppo di mais", + "[Upgrade name 570]Icebox cookies": "Biscotti precongelati", + "[Upgrade name 571]Graham crackers": "Cracker Graham", + "[Upgrade name 572]Hardtack": "Gallette", + "[Upgrade name 573]Cornflake cookies": "Biscotti ai fiocchi di mais", + "[Upgrade name 574]Tofu cookies": "Biscotti al tofu", + "[Upgrade name 575]Gluten-free cookies": "Biscotti senza glutine", + "[Upgrade name 576]Russian bread cookies": "Biscotti morbidi russi", + "[Upgrade name 577]Lebkuchen": "Lebkuchen", + "[Upgrade name 578]Aachener Printen": "Aachener Printen", + "[Upgrade name 579]Canistrelli": "Canistrelli", + "[Upgrade name 580]Nice biscuits": "Biscotti Nice", + "[Upgrade name 581]French pure butter cookies": "Biscotti al burro francesi", + "[Upgrade name 582]Petit beurre": "Petit beurre", + "[Upgrade name 583]Nanaimo bars": "Nanaimo bar", + "[Upgrade name 584]Berger cookies": "Biscotti Berger", + "[Upgrade name 585]Chinsuko": "Chinsuko", + "[Upgrade name 586]Panda koala biscuits": "Biscotti a forma di panda e koala", + "[Upgrade name 587]Putri salju": "Putri salju", + "[Upgrade name 588]Milk cookies": "Biscotti al latte", + "[Upgrade name 589]Cookie crumbs": "Briciole di biscotti", + "[Upgrade name 590]Chocolate chip cookie": "Biscotto con scaglie di cioccolato", + "[Upgrade name 591]Cosmic beginner's luck": "Fortuna del principiante cosmica", + "[Upgrade name 592]Reinforced membrane": "Membrana rinforzata", + "[Upgrade name 593]Binary grandmas": "Nonne binarie", + "[Upgrade name 594]The JavaScript console for dummies": "Console javascript per principianti", + "[Upgrade name 595]64bit arrays": "Matrici a 64 bit", + "[Upgrade name 596]Stack overflow": "Stack overflow", + "[Upgrade name 597]Enterprise compiler": "Compilatore aziendale", + "[Upgrade name 598]Syntactic sugar": "Zucchero sintattico", + "[Upgrade name 599]A nice cup of coffee": "Una bella tazza di caffè", + "[Upgrade name 600]Just-in-time baking": "Pasticceria just-in-time", + "[Upgrade name 601]cookies++": "biscotti++", + "[Upgrade name 602]Software updates": "Aggiornamenti software", + "[Upgrade name 603]Game.Loop": "Gioco.Ciclico", + "[Upgrade name 604]eval()": "eval()", + "[Upgrade name 605]Script grannies": "Nonna hacker", + "[Upgrade name 606]Tombola computing": "Calcoli a tombola", + "[Upgrade name 607]Kruidnoten": "Kruidnoten", + "[Upgrade name 608]Marie biscuits": "Biscotti Marie", + "[Upgrade name 609]Meringue cookies": "Meringhe", + "[Upgrade name 610]Pizza": "Pizza", + "[Upgrade name 611]Crackers": "Cracker", + "[Upgrade name 612]Havabreaks": "Havabreak", + "[Upgrade name 613]Kitten executives": "Amministratori felini", + "[Upgrade name 614]Chai tea cookies": "Biscotti al tè chai", + "[Upgrade name 615]Yogurt cookies": "Biscotti allo yogurt", + "[Upgrade name 616]Thumbprint cookies": "Biscotti farciti alla marmellata", + "[Upgrade name 617]Pizzelle": "Pizzelle", + "[Upgrade name 618]Zilla wafers": "Zilla Wafer", + "[Upgrade name 619]Dim Dams": "Dim Dam", + "[Upgrade name 620]Candy": "Caramelle", + "[Upgrade name 621]Fortune #001": "Profezia #001", + "[Upgrade name 622]Fortune #002": "Profezia #002", + "[Upgrade name 623]Fortune #003": "Profezia #003", + "[Upgrade name 624]Fortune #004": "Profezia #004", + "[Upgrade name 625]Fortune #005": "Profezia #005", + "[Upgrade name 626]Fortune #006": "Profezia #006", + "[Upgrade name 627]Fortune #007": "Profezia #007", + "[Upgrade name 628]Fortune #008": "Profezia #008", + "[Upgrade name 629]Fortune #009": "Profezia #009", + "[Upgrade name 630]Fortune #010": "Profezia #010", + "[Upgrade name 631]Fortune #011": "Profezia #011", + "[Upgrade name 632]Fortune #012": "Profezia #012", + "[Upgrade name 633]Fortune #013": "Profezia #013", + "[Upgrade name 634]Fortune #014": "Profezia #014", + "[Upgrade name 635]Fortune #015": "Profezia #015", + "[Upgrade name 636]Fortune #016": "Profezia #016", + "[Upgrade name 637]Fortune #017": "Profezia #017", + "[Upgrade name 638]Fortune #100": "Profezia #100", + "[Upgrade name 639]Fortune #101": "Profezia #101", + "[Upgrade name 640]Fortune #102": "Profezia #102", + "[Upgrade name 641]Fortune #103": "Profezia #103", + "[Upgrade name 642]Fortune #104": "Profezia #104", + "[Upgrade name 643]Fortune cookies": "Biscotti della fortuna", + "[Upgrade name 644]A really good guide book": "Davvero un'ottima guida", + "[Upgrade name 645]Prism heart biscuits": "Biscotti cuore prismatici", + "[Upgrade name 646]Kitten wages": "Stipendi felini", + "[Upgrade name 647]Pet the dragon": "Coccola il drago", + "[Upgrade name 648]Dragon scale": "Scaglia di drago", + "[Upgrade name 649]Dragon claw": "Artiglio di drago", + "[Upgrade name 650]Dragon fang": "Zanna di drago", + "[Upgrade name 651]Dragon teddy bear": "Orsacchiotto del drago", + "[Upgrade name 652]Granola cookies": "Biscotti di granola", + "[Upgrade name 653]Ricotta cookies": "Biscotti alla ricotta", + "[Upgrade name 654]Roze koeken": "Roze koeken", + "[Upgrade name 655]Peanut butter cup cookies": "Biscotti farciti al burro di arachidi", + "[Upgrade name 656]Sesame cookies": "Biscotti al sesamo", + "[Upgrade name 657]Taiyaki": "Taiyaki", + "[Upgrade name 658]Vanillekipferl": "Vanillekipferl", + "[Upgrade name 659]Cosmic chocolate butter biscuit": "Biscotti al burro e cioccolato cosmico", + "[Upgrade name 660]Nonillion fingers": "Un quintilione di dita", + "[Upgrade name 661]Miraculite mouse": "Mouse di miracolite", + "[Upgrade name 662]Generation degeneration": "Degenerazione generativa", + "[Upgrade name 663]Global seed vault": "Deposito di semi globale", + "[Upgrade name 664]Air mining": "Estrazione aerea", + "[Upgrade name 665]Behavioral reframing": "Riformulazione comportamentale", + "[Upgrade name 666]Altruistic loop": "Ciclo altruista", + "[Upgrade name 667]A novel idea": "Idea per un romanzo", + "[Upgrade name 668]Spelling bees": "Api incantate", + "[Upgrade name 669]Toroid universe": "Universo toroide", + "[Upgrade name 670]Hermetic reconciliation": "Riconciliazione ermetica", + "[Upgrade name 671]His advent": "La sua venuta", + "[Upgrade name 672]Split seconds": "Frazioni di secondo", + "[Upgrade name 673]Flavor itself": "Il gusto stesso", + "[Upgrade name 674]Light speed limit": "Limite di velocità della luce", + "[Upgrade name 675]A touch of determinism": "Un tocco di determinismo", + "[Upgrade name 676]This upgrade": "Questo potenziamento", + "[Upgrade name 677]Your biggest fans": "Fan sfegatati", + "[Upgrade name 678]Battenberg biscuits": "Biscotti Battenberg", + "[Upgrade name 679]Rosette cookies": "Rosette", + "[Upgrade name 680]Gangmakers": "Gangmaker", + "[Upgrade name 681]Welsh cookies": "Biscotti gallesi", + "[Upgrade name 682]Raspberry cheesecake cookies": "Biscotti cheescake e lamponi", + "[Upgrade name 683]Alternate grandmas": "Nonne alternative", + "[Upgrade name 684]Manifest destiny": "Destino manifesto", + "[Upgrade name 685]The multiverse in a nutshell": "Il multiverso in breve", + "[Upgrade name 686]All-conversion": "Conversione totale", + "[Upgrade name 687]Multiverse agents": "Agenti del multiverso", + "[Upgrade name 688]Escape plan": "Piano di fuga", + "[Upgrade name 689]Game design": "Design di gioco", + "[Upgrade name 690]Sandbox universes": "Universi sandbox", + "[Upgrade name 691]Multiverse wars": "Guerre del multiverso", + "[Upgrade name 692]Mobile ports": "Portali portatili", + "[Upgrade name 693]Encapsulated realities": "Realtà incapsulate", + "[Upgrade name 694]Extrinsic clicking": "Clic estrinsechi", + "[Upgrade name 695]Universal idling": "Passività universale", + "[Upgrade name 696]Perforated mille-feuille cosmos": "Universi millefoglie perforati", + "[Upgrade name 697]Infraverses and superverses": "Intraversi e superversi", + "[Upgrade name 698]Fortune #018": "Profezia #018", + "[Upgrade name 699]Butter biscuit (with butter)": "Biscotto al burro (con burro)", + "[Upgrade name 700]Visits": "Visite", + "[Upgrade name 701]Reverse-veganism": "Veganesimo inverso", + "[Upgrade name 702]Caramel alloys": "Leghe caramellate", + "[Upgrade name 703]The infinity engine": "Il motore infinito", + "[Upgrade name 704]Diminishing tax returns": "Riduzione delle detrazioni fiscali", + "[Upgrade name 705]Apparitions": "Apparizioni", + "[Upgrade name 706]Wizard basements": "Scantinati magici", + "[Upgrade name 707]Prime directive": "Direttiva primaria", + "[Upgrade name 708]Chromatic cycling": "Ciclo cromatico", + "[Upgrade name 709]Domestic rifts": "Varchi domestici", + "[Upgrade name 710]Patience abolished": "Pazienza abolita", + "[Upgrade name 711]Delicious pull": "Attrazione deliziosa", + "[Upgrade name 712]Occam's laser": "Laser di Occam", + "[Upgrade name 713]On a streak": "Cresta dell'onda", + "[Upgrade name 714]A box": "Una scatola", + "[Upgrade name 715]Hacker shades": "Occhialini di hacker", + "[Upgrade name 716]Break the fifth wall": "Rottura della quinta parete", + "[Upgrade name 717]Cat ladies": "Gattare", + "[Upgrade name 718]Milkhelp® lactose intolerance relief tablets": "Pastiglie NoLatte® per il sollievo dell'intolleranza al lattosio", + "[Upgrade name 719]Aura gloves": "Guanti di aura", + "[Upgrade name 720]Luminous gloves": "Guanti luminosi", + "[Upgrade name 721]Bokkenpootjes": "Bokkenpootjes", + "[Upgrade name 722]Fat rascals": "Focaccine al burro", + "[Upgrade name 723]Ischler cookies": "Ischler", + "[Upgrade name 724]Matcha cookies": "Biscotti al tè matcha", + "[Upgrade name 725]Earl Grey macarons": "Macarons all'Earl Grey", + "[Upgrade name 726]Pokey": "Pokey", + "[Upgrade name 727]Cashew cookies": "Biscotti agli anacardi", + "[Upgrade name 728]Milk chocolate cookies": "Biscotti al cioccolato al latte", + "[Upgrade name 729]Brainy grandmas": "Nonnine intelligenti", + "[Upgrade name 730]Principled neural shackles": "Catene neuronali di sani principi", + "[Upgrade name 731]Obey": "Obbedisci", + "[Upgrade name 732]A sprinkle of irrationality": "Una spolverata di irrazionalità", + "[Upgrade name 733]Front and back hemispheres": "Emisferi frontali e posteriori", + "[Upgrade name 734]Neural networking": "Reti neuronali", + "[Upgrade name 735]Cosmic brainstorms": "Tempeste celebrali cosmiche", + "[Upgrade name 736]Megatherapy": "Megaterapia", + "[Upgrade name 737]Synaptic lubricant": "Lubrificante sinaptico", + "[Upgrade name 738]Psychokinesis": "Psicocinesi", + "[Upgrade name 739]Spines": "Spine dorsali", + "[Upgrade name 740]Neuraforming": "Neuroformazione", + "[Upgrade name 741]Epistemological trickery": "Inganno epistemologico", + "[Upgrade name 742]Every possible idea": "Ogni idea possibile", + "[Upgrade name 743]Kitchen cabinets": "Mobili da cucina", + "[Upgrade name 744]Cookie mulch": "Concime a base di biscotti", + "[Upgrade name 745]Delicious mineralogy": "Mineralogia deliziosa", + "[Upgrade name 746]N-dimensional assembly lines": "Catene di montaggio n-dimensionali", + "[Upgrade name 747]Cookie Points": "Punti biscotto", + "[Upgrade name 748]Negatheism": "Negateismo", + "[Upgrade name 749]Magical realism": "Realismo magico", + "[Upgrade name 750]Cosmic foreground radiation": "Radiazione di fondo cosmica", + "[Upgrade name 751]Arcanized glassware": "Vetreria arcana", + "[Upgrade name 752]Portal guns": "Armi anti portale", + "[Upgrade name 753]Timeproof upholstery": "Fodera a prova di tempo", + "[Upgrade name 754]Employee minification": "Miniaturizzazione degli impiegati", + "[Upgrade name 755]Hyperblack paint": "Vernice iper nera", + "[Upgrade name 756]Silver lining maximization": "Massimizzazione dei risvolti positivi", + "[Upgrade name 757]Multiscale profiling": "Profilazione multiscala", + "[Upgrade name 758]PHP containment vats": "Vasche di contenimento PHP", + "[Upgrade name 759]Opposite universe": "Universo opposto", + "[Upgrade name 760]The land of dreams": "La terra dei sogni", + "[Upgrade name 761]Thoughts & prayers": "Pensieri e preghiere", + "[Upgrade name 762]Fertile minds": "Menti fertili", + "[Upgrade name 763]Fortune #019": "Fortuna #019", + "[Upgrade name 764]Decillion fingers": "Decillioni di dita", + "[Upgrade name 765]Aetherice mouse": "Topo di aetherice", + "[Upgrade name 766]Kitten admins": "Gattini amministratori", + "[Upgrade name 767]Everybutter biscuit": "Biscotti al multiburro", + "[Upgrade name 768]Unshackled cursors": "Cursori senza catene", + "[Upgrade name 769]Unshackled grandmas": "Nonnine senza catene", + "[Upgrade name 770]Unshackled farms": "Aziende agricole senza catene", + "[Upgrade name 771]Unshackled mines": "Miniere senza catene", + "[Upgrade name 772]Unshackled factories": "Fabbriche senza catene", + "[Upgrade name 773]Unshackled banks": "Banche senza catene", + "[Upgrade name 774]Unshackled temples": "Templi senza catene", + "[Upgrade name 775]Unshackled wizard towers": "Torri stregate senza catene", + "[Upgrade name 776]Unshackled shipments": "Carichi senza catene", + "[Upgrade name 777]Unshackled alchemy labs": "Laboratori alchemici senza catene", + "[Upgrade name 778]Unshackled portals": "Portali senza catene", + "[Upgrade name 779]Unshackled time machines": "Macchine del tempo senza catene", + "[Upgrade name 780]Unshackled antimatter condensers": "Condensatori di antimateria senza catene", + "[Upgrade name 781]Unshackled prisms": "Prismi senza catene", + "[Upgrade name 782]Unshackled chancemakers": "Portafortuna senza catene", + "[Upgrade name 783]Unshackled fractal engines": "Motori frattali senza catene", + "[Upgrade name 784]Unshackled javascript consoles": "Console javascript senza catene", + "[Upgrade name 785]Unshackled idleverses": "Idleversi senza catene", + "[Upgrade name 786]Unshackled cortex bakers": "Cervelli artificiali panettieri senza catene", + "[Upgrade name 787]Unshackled flavor": "Gusto senza catene", + "[Upgrade name 788]Unshackled berrylium": "Bacchelium senza catene", + "[Upgrade name 789]Unshackled blueberrylium": "Mirtillium senza catene", + "[Upgrade name 790]Unshackled chalcedhoney": "Miele di calcedonio senza catene", + "[Upgrade name 791]Unshackled buttergold": "Burro d'oro senza catene", + "[Upgrade name 792]Unshackled sugarmuck": "Concime zuccherino senza catene", + "[Upgrade name 793]Unshackled jetmint": "Menta a reazione senza catene", + "[Upgrade name 794]Unshackled cherrysilver": "Ciliegia argentata senza catene", + "[Upgrade name 795]Unshackled hazelrald": "Nocciola smeraldina senza catene", + "[Upgrade name 796]Unshackled mooncandy": "Caramella lunare senza catene", + "[Upgrade name 797]Unshackled astrofudge": "Astrocrema senza catene", + "[Upgrade name 798]Unshackled alabascream": "Panna all'alabastro senza catene", + "[Upgrade name 799]Unshackled iridyum": "Iridio succulento senza catene", + "[Upgrade name 800]Unshackled glucosmium": "Glucosmio senza catene", + "[Upgrade name 801]Delicate touch": "Tocco delicato", + "[Upgrade name 802]Steadfast murmur": "Sussurro costante", + "[Upgrade name 803]Glittering edge": "Lama luccicante", + "[Upgrade name 804]Distinguished wallpaper assortment": "Raffinato assortimento di carta da parati", + "[Upgrade name 805]Sound test": "Test audio", + "[Upgrade name 806]Jukebox": "Jukebox", + "[Upgrade name 807]Dalgona cookies": "Biscotti dalgona", + "[Upgrade name 808]Spicy cookies": "Biscotti piccanti", + "[Upgrade name 809]Smile cookies": "Biscotti sorridenti", + "[Upgrade name 810]Kolachy cookies": "Biscotti kolachy", + "[Upgrade name 811]Gomma cookies": "Biscotti gomma", + "[Upgrade name 812]Vegan cookies": "Biscotti vegani", + "[Upgrade name 813]Coyotas": "Coyotas", + "[Upgrade name 814]Frosted sugar cookies": "Biscotti glassati", + "[Upgrade name 815]Marshmallow sandwich cookies": "Biscotti ripieni di marshmallow", + "[Upgrade name 816]Web cookies": "Biscotti del web", + "[Upgrade name 817]Steamed cookies": "Biscotti al vapore", + "[Upgrade name 818]Deep-fried cookie dough": "Impasto per biscotti fritto", + "[Achievement name 0]Wake and bake": "Sorgi e inforna", + "[Achievement name 1]Making some dough": "Impastando biscotti", + "[Achievement name 2]So baked right now": "Biscotti fatti (e lo sono anch'io)", + "[Achievement name 3]Fledgling bakery": "Pasticceria nascente", + "[Achievement name 4]Affluent bakery": "Pasticceria influente", + "[Achievement name 5]World-famous bakery": "Pasticceria di fama mondiale", + "[Achievement name 6]Cosmic bakery": "Pasticceria cosmica", + "[Achievement name 7]Galactic bakery": "Pasticceria galattica", + "[Achievement name 8]Universal bakery": "Pasticceria universale", + "[Achievement name 9]Timeless bakery": "Pasticceria atemporale", + "[Achievement name 10]Infinite bakery": "Pasticceria infinita", + "[Achievement name 11]Immortal bakery": "Pasticceria immortale", + "[Achievement name 12]Don't stop me now": "Nessuno può fermarmi", + "[Achievement name 13]You can stop now": "Ora puoi fermarti", + "[Achievement name 14]Cookies all the way down": "Biscotti fino in fondo", + "[Achievement name 15]Overdose": "Overdose", + "[Achievement name 16]Casual baking": "Infornate occasionali", + "[Achievement name 17]Hardcore baking": "Infornate hardcore", + "[Achievement name 18]Steady tasty stream": "Flusso costante di sapore", + "[Achievement name 19]Cookie monster": "Mostro dei biscotti", + "[Achievement name 20]Mass producer": "Produzione di massa", + "[Achievement name 21]Cookie vortex": "Vortice di biscotti", + "[Achievement name 22]Cookie pulsar": "Pulsar di biscotti", + "[Achievement name 23]Cookie quasar": "Quasar di biscotti", + "[Achievement name 24]Oh hey, you're still here": "Oh, sei ancora qui", + "[Achievement name 25]Let's never bake again": "Mai più infornate", + "[Achievement name 26]Sacrifice": "Sacrificio", + "[Achievement name 27]Oblivion": "Oblio", + "[Achievement name 28]From scratch": "Da zero", + "[Achievement name 29]Neverclick": "Senza clic", + "[Achievement name 30]Clicktastic": "Clictastico", + "[Achievement name 31]Clickathlon": "Cliccathlon", + "[Achievement name 32]Clickolympics": "Cliccolimpiadi", + "[Achievement name 33]Clickorama": "Cliccorama", + "[Achievement name 34]Click": "Clic", + "[Achievement name 35]Double-click": "Doppio clic", + "[Achievement name 36]Mouse wheel": "Giro di mouse", + "[Achievement name 37]Of Mice and Men": "Uomini e mouse", + "[Achievement name 38]The Digital": "Il digitale", + "[Achievement name 39]Just wrong": "Grosso errore", + "[Achievement name 40]Grandma's cookies": "Biscotti della nonna", + "[Achievement name 41]Sloppy kisses": "Baci sdolcinati", + "[Achievement name 42]Retirement home": "Casa di riposo", + "[Achievement name 43]Bought the farm": "Fattoria acquistata", + "[Achievement name 44]Reap what you sow": "Raccogli ciò che semini", + "[Achievement name 45]Farm ill": "Ossessione agricola", + "[Achievement name 46]Production chain": "Catena di produzione", + "[Achievement name 47]Industrial revolution": "Rivoluzione industriale", + "[Achievement name 48]Global warming": "Riscaldamento globale", + "[Achievement name 49]You know the drill": "Conosci la procedura", + "[Achievement name 50]Excavation site": "Sito di scavo", + "[Achievement name 51]Hollow the planet": "Trafora il pianeta", + "[Achievement name 52]Expedition": "Spedizione", + "[Achievement name 53]Galactic highway": "Autostrada galattica", + "[Achievement name 54]Far far away": "Lontano lontano", + "[Achievement name 55]Transmutation": "Trasmutazione", + "[Achievement name 56]Transmogrification": "Trasmogrificazione", + "[Achievement name 57]Gold member": "Membro d'oro", + "[Achievement name 58]A whole new world": "Il mondo è mio", + "[Achievement name 59]Now you're thinking": "Ora sì che ragioniamo", + "[Achievement name 60]Dimensional shift": "Spostamento dimensionale", + "[Achievement name 61]Time warp": "Distorsione temporale", + "[Achievement name 62]Alternate timeline": "Linea temporale alternativa", + "[Achievement name 63]Rewriting history": "Riscrittura della storia", + "[Achievement name 64]One with everything": "Uno di ognuno", + "[Achievement name 65]Mathematician": "Matematico", + "[Achievement name 66]Base 10": "Base 10", + "[Achievement name 67]Golden cookie": "Biscotto dorato", + "[Achievement name 68]Lucky cookie": "Biscotto fortunato", + "[Achievement name 69]A stroke of luck": "Una botta di fortuna", + "[Achievement name 70]Cheated cookies taste awful": "I biscotti truccati sono disgustosi", + "[Achievement name 71]Uncanny clicker": "Professionista di clic", + "[Achievement name 72]Builder": "Specialista di costruzione", + "[Achievement name 73]Architect": "Specialista di architettura", + "[Achievement name 74]Enhancer": "Specialista del miglioramento", + "[Achievement name 75]Augmenter": "Specialista dell'accrescimento", + "[Achievement name 76]Cookie-dunker": "Specialista dell'inzuppamento", + "[Achievement name 77]Fortune": "Fortuna", + "[Achievement name 78]True Neverclick": "Autentico senza clic", + "[Achievement name 79]Elder nap": "Sonnellino delle anziane", + "[Achievement name 80]Elder slumber": "Sonno profondo delle anziane", + "[Achievement name 81]Elder": "Anziane", + "[Achievement name 82]Elder calm": "Calma delle anziane", + "[Achievement name 83]Engineer": "Specialista di ingegneria", + "[Achievement name 84]Leprechaun": "Leprecauno", + "[Achievement name 85]Black cat's paw": "Zampa di gatto nero", + "[Achievement name 86]Nihilism": "Nichilismo", + "[Achievement name 87]Antibatter": "Antimiscela", + "[Achievement name 88]Quirky quarks": "Quark eccentrici", + "[Achievement name 89]It does matter!": "Materia di leggenda!", + "[Achievement name 90]Upgrader": "Specialista del potenziamento", + "[Achievement name 91]Centennial": "Centenario", + "[Achievement name 92]Hardcore": "Hardcore", + "[Achievement name 93]Speed baking I": "Infornate a tempo di record I", + "[Achievement name 94]Speed baking II": "Infornate a tempo di record II", + "[Achievement name 95]Speed baking III": "Infornate a tempo di record III", + "[Achievement name 96]Getting even with the oven": "Forno all'inferno", + "[Achievement name 97]Now this is pod-smashing": "Capsula in frantumi", + "[Achievement name 98]Chirped out": "Senza più brio", + "[Achievement name 99]Follow the white rabbit": "Segui il bianconiglio", + "[Achievement name 100]Clickasmic": "Clicgasmico", + "[Achievement name 101]Friend of the ancients": "Amicizia con le antiche", + "[Achievement name 102]Ruler of the ancients": "Dominio delle antiche", + "[Achievement name 103]Wholesome": "Potere genuino", + "[Achievement name 104]Just plain lucky": "Pura fortuna", + "[Achievement name 105]Itchscratcher": "Grattamento", + "[Achievement name 106]Wrinklesquisher": "Caccia ai divoratori", + "[Achievement name 107]Moistburster": "Esplosioni umidicce", + "[Achievement name 108]Spooky cookies": "Biscotti spettrali", + "[Achievement name 109]Coming to town": "Arrivo in città", + "[Achievement name 110]All hail Santa": "Lode a Babbo Natale", + "[Achievement name 111]Let it snow": "Scende la neve", + "[Achievement name 112]Oh deer": "Caccia alla renna", + "[Achievement name 113]Sleigh of hand": "Tutti in slitta", + "[Achievement name 114]Reindeer sleigher": "Carico di renne", + "[Achievement name 115]Perfected agriculture": "Agricoltura perfezionata", + "[Achievement name 116]Ultimate automation": "Automazione definitiva", + "[Achievement name 117]Can you dig it": "Scavando di qua e di là", + "[Achievement name 118]Type II civilization": "Civilizzazione di tipo II", + "[Achievement name 119]Gild wars": "Gilde in guerra", + "[Achievement name 120]Brain-split": "Scervellamento", + "[Achievement name 121]Time duke": "Duca del tempo", + "[Achievement name 122]Molecular maestro": "Maestria molecolare", + "[Achievement name 123]Lone photon": "Fotone solitario", + "[Achievement name 124]Dazzling glimmer": "Bagliore folgorante", + "[Achievement name 125]Blinding flash": "Lampo abbagliante", + "[Achievement name 126]Unending glow": "Splendore eterno", + "[Achievement name 127]Lord of Constructs": "Despota delle costruzioni", + "[Achievement name 128]Lord of Progress": "Despota dei progressi", + "[Achievement name 129]Bicentennial": "Bicentenario", + "[Achievement name 130]Lovely cookies": "Biscotti adorabili", + "[Achievement name 131]Centennial and a half": "Centenario e mezzo", + "[Achievement name 132]Tiny cookie": "Mini biscotto", + "[Achievement name 133]You win a cookie": "Vinci un biscotto", + "[Achievement name 134]Click delegator": "Delega di clic", + "[Achievement name 135]Gushing grannies": "Nonne a bizzeffe", + "[Achievement name 136]I hate manure": "Odio il concime", + "[Achievement name 137]Never dig down": "Mai sotterrare la determinazione", + "[Achievement name 138]The incredible machine": "La macchina incredibile", + "[Achievement name 139]And beyond": "E oltre", + "[Achievement name 140]Magnum Opus": "Magnum Opus", + "[Achievement name 141]With strange eons": "Con eoni singolari", + "[Achievement name 142]Spacetime jigamaroo": "Aggeggio spaziotemporale", + "[Achievement name 143]Supermassive": "Supermassa", + "[Achievement name 144]Praise the sun": "Lode al sole", + "[Achievement name 145]Clickageddon": "Cliccageddon", + "[Achievement name 146]Clicknarok": "Clicnarok", + "[Achievement name 147]Extreme polydactyly": "Polidattilità estrema", + "[Achievement name 148]Dr. T": "Dottor T", + "[Achievement name 149]The old never bothered me anyway": "Da oggi il vecchio è casa mia", + "[Achievement name 150]Homegrown": "Produzione propria", + "[Achievement name 151]Technocracy": "Tecnocrazia", + "[Achievement name 152]The center of the Earth": "Il centro della terra", + "[Achievement name 153]We come in peace": "Veniamo in pace", + "[Achievement name 154]The secrets of the universe": "I segreti dell'universo", + "[Achievement name 155]Realm of the Mad God": "Il regno del dio folle", + "[Achievement name 156]Forever and ever": "Nei secoli dei secoli", + "[Achievement name 157]Walk the planck": "A spasso con Planck", + "[Achievement name 158]Rise and shine": "Sorgi e splendi", + "[Achievement name 159]God complex": "Complesso di onnipotenza", + "[Achievement name 160]Third-party": "Terze parti", + "[Achievement name 161]Dematerialize": "Smaterializza", + "[Achievement name 162]Nil zero zilch": "Nulla, nisba, nada", + "[Achievement name 163]Transcendence": "Trascendenza", + "[Achievement name 164]Obliterate": "Annientamento", + "[Achievement name 165]Negative void": "Vuoto negativo", + "[Achievement name 166]The hunt is on": "La caccia è aperta", + "[Achievement name 167]Egging on": "Lancio delle uova", + "[Achievement name 168]Mass Easteria": "Isteria pasquale", + "[Achievement name 169]Hide & seek champion": "Campione di nascondino", + "[Achievement name 170]What's in a name": "Che cos'è un nome", + "[Achievement name 171]Pretty penny": "Un bel gruzzolo", + "[Achievement name 172]Fit the bill": "A misura di fattura", + "[Achievement name 173]A loan in the dark": "Prestiti al buio", + "[Achievement name 174]Need for greed": "A tutta avidità", + "[Achievement name 175]It's the economy, stupid": "È l'economia, idiota", + "[Achievement name 176]Your time to shrine": "Il tempo degli altari", + "[Achievement name 177]Shady sect": "Losca setta", + "[Achievement name 178]New-age cult": "Culto new-age", + "[Achievement name 179]Organized religion": "Religione organizzata", + "[Achievement name 180]Fanaticism": "Fanatismo", + "[Achievement name 181]Bewitched": "Ammaliamento", + "[Achievement name 182]The sorcerer's apprentice": "L'apprendista stregone", + "[Achievement name 183]Charms and enchantments": "Magie e incantesimi", + "[Achievement name 184]Curses and maledictions": "Fatture e maledizioni", + "[Achievement name 185]Magic kingdom": "Regno della magia", + "[Achievement name 186]Vested interest": "Interessi maturati", + "[Achievement name 187]New world order": "Nuovo ordine mondiale", + "[Achievement name 188]Hocus pocus": "Hocus pocus", + "[Achievement name 189]Finger clickin' good": "Clic a tutto spiano", + "[Achievement name 190]Panic at the bingo": "Panico al bingo", + "[Achievement name 191]Rake in the dough": "Guadagnarsi la pagnotta", + "[Achievement name 192]Quarry on": "Sai cavartela", + "[Achievement name 193]Yes I love technology": "Sì, adoro la tecnologia", + "[Achievement name 194]Paid in full": "Saldo completo", + "[Achievement name 195]Church of Cookiology": "Chiesa biscottiana", + "[Achievement name 196]Too many rabbits, not enough hats": "Troppi conigli, troppo pochi cappelli", + "[Achievement name 197]The most precious cargo": "Il carico più prezioso", + "[Achievement name 198]The Aureate": "L'aureato", + "[Achievement name 199]Ever more hideous": "Ancora più orrendo", + "[Achievement name 200]Be kind, rewind": "Senza pensieri, riportami a ieri", + "[Achievement name 201]Infinitesimal": "Infinitesimale", + "[Achievement name 202]A still more glorious dawn": "Un'alba ancora più gloriosa", + "[Achievement name 203]Rebirth": "Rinascita", + "[Achievement name 204]Here you go": "Ecco fatto", + "[Achievement name 205]Resurrection": "Resurrezione", + "[Achievement name 206]Reincarnation": "Reincarnazione", + "[Achievement name 207]Endless cycle": "Ciclo senza fine", + "[Achievement name 208]The agemaster": "Il signore delle nonne", + "[Achievement name 209]To oldly go": "Dove nessuno è mai invecchiato prima", + "[Achievement name 210]Gardener extraordinaire": "Giardiniere straordinario", + "[Achievement name 211]Tectonic ambassador": "Ambasciatore tettonico", + "[Achievement name 212]Rise of the machines": "Le macchine ribelli", + "[Achievement name 213]Acquire currency": "Ottieni liquidità", + "[Achievement name 214]Zealotry": "Eccesso di zelo", + "[Achievement name 215]The wizarding world": "Il mondo della magia", + "[Achievement name 216]Parsec-masher": "Macina-parsec", + "[Achievement name 217]The work of a lifetime": "Il lavoro di una vita", + "[Achievement name 218]A place lost in time": "Un luogo perduto nel tempo", + "[Achievement name 219]Heat death": "Morte termica", + "[Achievement name 220]Microcosm": "Microcosmo", + "[Achievement name 221]Bright future": "Brillante futuro", + "[Achievement name 222]Here be dragon": "Hic sunt dracones", + "[Achievement name 223]How?": "Come?", + "[Achievement name 224]The land of milk and cookies": "Una terra di latte e biscotti", + "[Achievement name 225]He who controls the cookies controls the universe": "Chi controlla i biscotti, controlla l'universo", + "[Achievement name 226]Tonight on Hoarders": "Stasera, su Accumulatori seriali", + "[Achievement name 227]Are you gonna eat all that?": "Hai intenzione di mangiarti tutto?", + "[Achievement name 228]We're gonna need a bigger bakery": "Ci serve una pasticceria più grossa", + "[Achievement name 229]In the mouth of madness": "Alle pasticcerie della follia", + "[Achievement name 230]Brought to you by the letter
": "Comincia con la lettera
", + "[Achievement name 231]A world filled with cookies": "Girotondo di biscotti", + "[Achievement name 232]When this baby hits 36 quadrillion cookies per hour": "Quando questo aggeggio toccherà i 36 biliardi di biscotti oraribiscotto", + "[Achievement name 233]Fast and delicious": "Solo ingredienti originali", + "[Achievement name 234]Cookiehertz : a really, really tasty hertz": "Biscohertz: un hertz molto, molto gustoso", + "[Achievement name 235]Woops, you solved world hunger": "Ops, hai risolto la fame nel mondo", + "[Achievement name 236]Turbopuns": "Battute a manetta", + "[Achievement name 237]Faster menner": "Velocista sgrammaticato", + "[Achievement name 238]And yet you're still hungry": "Eppure hai ancora fame", + "[Achievement name 239]The Abakening": "Il biscotto di Rookford", + "[Achievement name 240]There's really no hard limit to how long these achievement names can be and to be quite honest I'm rather curious to see how far we can go.
Adolphus W. Green (1844–1917) started as the Principal of the Groton School in 1864. By 1865, he became second assistant librarian at the New York Mercantile Library; from 1867 to 1869, he was promoted to full librarian. From 1869 to 1873, he worked for Evarts, Southmayd & Choate, a law firm co-founded by William M. Evarts, Charles Ferdinand Southmayd and Joseph Hodges Choate. He was admitted to the New York State Bar Association in 1873.
Anyway, how's your day been?": "Non c'è alcun limite massimo di caratteri per il nome di questi obiettivi e, in tutta onestà, sono proprio curioso di sapere fino a che punto possiamo arrivare.
Adolphus W. Green (1844–1917) iniziò la sua carriera nel 1864 come preside della Groton School. Nel 1865 divenne secondo assistente bibliotecario presso la Biblioteca mercantile di New York; dal 1867 al 1869 fu promosso bibliotecario a pieno titolo. Dal 1869 al 1873 lavorò per Evarts, Southmayd & Choate, uno studio legale co-fondato da William M. Evarts, Charles Ferdinand Southmayd e Joseph Hodges Choate. Nel 1873 fu ammesso all'Ordine degli avvocati dello stato di New York.
Cambiando discorso, come sta andando la tua giornata?", + "[Achievement name 241]Fast": "Veloce", + "[Achievement name 242]Bicentennial and a half": "Bicentenario e mezzo", + "[Achievement name 243]Tabloid addiction": "Dipendenza da scandalo", + "[Achievement name 244]Clickastrophe": "Clicastrofe", + "[Achievement name 245]Clickataclysm": "Cata-clic-sma", + "[Achievement name 246]Thumbs, phalanges, metacarpals": "Pollici, falangi, metacarpi", + "[Achievement name 247]Polymath": "Poliedrico", + "[Achievement name 248]The elder scrolls": "Nonne scorrevoli", + "[Achievement name 249]To crumbs, you say?": "In briciole, hai detto?", + "[Achievement name 250]Seedy business": "Questione di semi", + "[Achievement name 251]Freak fracking": "Gianni e piccone", + "[Achievement name 252]Modern times": "Tempi moderni", + "[Achievement name 253]The nerve of war": "Fegato di guerra", + "[Achievement name 254]Wololo": "Wololo", + "[Achievement name 255]And now for my next trick, I'll need a volunteer from the audience": "Per il mio prossimo trucco, avrò bisogno di un volontario dal pubblico", + "[Achievement name 256]It's not delivery": "Consegna a domicilio", + "[Achievement name 257]Gold, Jerry! Gold!": "Oro, Jerry! Oro!", + "[Achievement name 258]Forbidden zone": "Area proibita", + "[Achievement name 259]cookie clicker forever and forever a hundred years cookie clicker, all day long forever, forever a hundred times, over and over cookie clicker adventures dot com": "cookie clicker sempre e per sempre per cent'anni cookie clicker, per tutto il giorno per sempre, per cento giorni cookie clicker, per sempre per cento volte, ancora e ancora, le avventure di cookie clicker punto com", + "[Achievement name 260]Scientists baffled everywhere": "Ovunque scienziati perplessi", + "[Achievement name 261]Harmony of the spheres": "Armonia delle sfere", + "[Achievement name 262]Last Chance to See": "L'ultima occasione", + "[Achievement name 263]Early bird": "Mattiniero", + "[Achievement name 264]Fading luck": "Fortuna in dissolvenza", + "[Achievement name 265]Eldeer": "Renne in pensione", + "[Achievement name 266]Dude, sweet": "Basta un poco di zucchero", + "[Achievement name 267]Sugar rush": "Eccitazione da zucchero", + "[Achievement name 268]Year's worth of cavities": "Un anno di carie", + "[Achievement name 269]Hand-picked": "Raccolte a mano", + "[Achievement name 270]Sugar sugar": "Zucchero e più zucchero", + "[Achievement name 271]All-natural cane sugar": "Zucchero di canna biologico", + "[Achievement name 272]Sweetmeats": "Polpa di zucchero", + "[Achievement name 273]Tricentennial": "Tricentenario", + "[Achievement name 274]Knead for speed": "Impasti ruggenti", + "[Achievement name 275]Well the cookies start coming and they don't stop coming": "Gli anni passano, ma i biscotti restano", + "[Achievement name 276]I don't know if you've noticed but all these icons are very slightly off-center": "Forse non l'hai notato, ma tutte queste icone sono leggermente decentrate", + "[Achievement name 277]The proof of the cookie is in the baking": "Infornare per credere", + "[Achievement name 278]If it's worth doing, it's worth overdoing": "Ciò che vale la pena di fare, vale la pena di esagerare", + "[Achievement name 279]The dreams in which I'm baking are the best I've ever had": "E naufragar m'è dolce in questo impasto", + "[Achievement name 280]Set for life": "Sistemato a vita", + "[Achievement name 281]You and the beanstalk": "Tu e la pianta di fagioli", + "[Achievement name 282]Romancing the stone": "All'inseguimento della pietra verde", + "[Achievement name 283]Ex machina": "Ex machina", + "[Achievement name 284]And I need it now": "Pensavi solo ai soldi", + "[Achievement name 285]Pray on the weak": "Preghiere a pagamento", + "[Achievement name 286]It's a kind of magic": "Magia nell'aria", + "[Achievement name 287]Make it so": "Facciamo così", + "[Achievement name 288]All that glitters is gold": "È tutto oro quel che luccica", + "[Achievement name 289]Here he comes": "Sta arrivando", + "[Achievement name 290]Way back then": "A quei tempi", + "[Achievement name 291]Exotic matter": "Materia esotica", + "[Achievement name 292]At the end of the tunnel": "Alla fine del tunnel", + "[Achievement name 293]Click (starring Adam Sandler)": "Cambia la tua vita con un clic (con Adam Sandler)", + "[Achievement name 294]Frantiquities": "Antichità sfrenate", + "[Achievement name 295]Overgrowth": "Proliferazione", + "[Achievement name 296]Sedimentalism": "Sedimentalismi", + "[Achievement name 297]Labor of love": "Amore operaio", + "[Achievement name 298]Reverse funnel system": "Sistema a imbuto rovesciato", + "[Achievement name 299]Thus spoke you": "Hai la tua parola", + "[Achievement name 300]Manafest destiny": "Destino manafesto", + "[Achievement name 301]Neither snow nor rain nor heat nor gloom of night": "Il cambiamento siamo noi", + "[Achievement name 302]I've got the Midas touch": "Ho il tocco di re Mida", + "[Achievement name 303]Which eternal lie": "Ciò che può vivere in eterno", + "[Achievement name 304]Déjà vu": "Déjà vu", + "[Achievement name 305]Powers of Ten": "Potenze di dieci", + "[Achievement name 306]Now the dark days are gone": "I giorni bui sono finiti", + "[Achievement name 307]Freaky jazz hands": "Inquietante prestidigitazione", + "[Achievement name 308]Methuselah": "Matusalemme", + "[Achievement name 309]Huge tracts of land": "Ci ha delle terre enormi", + "[Achievement name 310]D-d-d-d-deeper": "Sempre più giù", + "[Achievement name 311]Patently genius": "Genio brevettato", + "[Achievement name 312]A capital idea": "Un'idea capitale", + "[Achievement name 313]It belongs in a bakery": "Quella dovrebbe stare in una pasticceria", + "[Achievement name 314]Motormouth": "Parlantina", + "[Achievement name 315]Been there done that": "Niente di nuovo", + "[Achievement name 316]Phlogisticated substances": "Sostanze flogisticate", + "[Achievement name 317]Bizarro world": "Mondo bizzarro", + "[Achievement name 318]The long now": "L'infinito presente", + "[Achievement name 319]Chubby hadrons": "Adroni paffuti", + "[Achievement name 320]Palettable": "Creatore di tavolozze", + "[Achievement name 321]Bibbidi-bobbidi-boo": "Bibbidi bobbidi bu", + "[Achievement name 322]I'm the wiz": "Sono un mago", + "[Achievement name 323]A wizard is you": "Tu sei un mago", + "[Achievement name 324]Four-leaf cookie": "Biscotto quadrifoglio", + "[Achievement name 325]Lucked out": "Un pizzico di fortuna", + "[Achievement name 326]What are the odds": "Che probabilità ci sono", + "[Achievement name 327]Grandma needs a new pair of shoes": "A nonna serve un bel paio di scarpe nuove", + "[Achievement name 328]Million to one shot, doc": "Una probabilità su un milione", + "[Achievement name 329]As luck would have it": "Fortuna volle", + "[Achievement name 330]Ever in your favor": "Sempre a tuo favore", + "[Achievement name 331]Be a lady": "Aiuta gli audaci", + "[Achievement name 332]Dicey business": "Dadi sospetti", + "[Achievement name 333]Fingers crossed": "Dita incrociate", + "[Achievement name 334]Just a statistic": "Semplice statistica", + "[Achievement name 335]Murphy's wild guess": "Ipotesi azzardata di Murphy", + "[Achievement name 336]Let's leaf it at that": "Lasciamo le foglie come stanno", + "[Achievement name 337]The ultimate clickdown": "Siamo alla resa dei clic", + "[Achievement name 338]Aged well": "Invecchiato bene", + "[Achievement name 339]101st birthday": "101° compleanno", + "[Achievement name 340]But wait 'til you get older": "Aspetta fin quando non diventi vecchio", + "[Achievement name 341]Harvest moon": "Luna del raccolto", + "[Achievement name 342]Mine?": "Miniere ne abbiamo?", + "[Achievement name 343]In full gear": "A pieno regime", + "[Achievement name 344]Treacle tart economics": "Torte economiche", + "[Achievement name 345]Holy cookies, grandma!": "Santi biscotti, nonna!", + "[Achievement name 346]The Prestige": "Prestigiatore", + "[Achievement name 347]That's just peanuts to space": "È una briciola in confronto allo spazio", + "[Achievement name 348]Worth its weight in lead": "Vale il suo peso in piombo", + "[Achievement name 349]What happens in the vortex stays in the vortex": "Ciò che accade nel vortice resta nel vortice", + "[Achievement name 350]Invited to yesterday's party": "Invito alla festa di ieri", + "[Achievement name 351]Downsizing": "Ridimensionamento", + "[Achievement name 352]My eyes": "I miei occhi", + "[Achievement name 353]Maybe a chance in hell, actually": "Nessuna minima possibilità", + "[Achievement name 354]Make like a tree": "Piantati in asso", + "[Achievement name 355]Cave story": "Cava storica", + "[Achievement name 356]In-cog-neato": "Ingranaggio riservato", + "[Achievement name 357]Save your breath because that's all you've got left": "Risparmia il fiato, è tutto ciò che ti resta", + "[Achievement name 358]Vengeful and almighty": "Onnipotente e vendicativo", + "[Achievement name 359]Spell it out for you": "Incanto scandito", + "[Achievement name 360]Space space space space space": "Spazio spazio spazio spazio spazio", + "[Achievement name 361]Don't get used to yourself, you're gonna have to change": "Non abituarti al vecchio te, dovrai cambiare", + "[Achievement name 362]Objects in the mirror dimension are closer than they appear": "Gli oggetti nelle dimensioni specchio sono più vicini di quanto appaiano", + "[Achievement name 363]Groundhog day": "Ricomincio da capo", + "[Achievement name 364]A matter of perspective": "Materia in prospettiva", + "[Achievement name 365]Optical illusion": "Illusione ottica", + "[Achievement name 366]Jackpot": "Jackpot", + "[Achievement name 367]So much to do so much to see": "Così tanto da fare, così tanto da vedere", + "[Achievement name 368]Running with scissors": "Correndo con le forbici in mano", + "[Achievement name 369]Rarefied air": "Aria rarefatta", + "[Achievement name 370]Push it to the limit": "Spingiti al limite", + "[Achievement name 371]Green cookies sleep furiously": "Verdi biscotti dormono furiosamente", + "[Achievement name 372]Panic! at Nabisco": "Paura e delirio alla Mulino bianco", + "[Achievement name 373]Bursting at the seams": "Sto scoppiando", + "[Achievement name 374]Just about full": "Quasi a sazietà", + "[Achievement name 375]Hungry for more": "Ne voglio ancora", + "[Achievement name 376]All the other kids with the pumped up clicks": "Stessa storia, stesso posto, stesso clic", + "[Achievement name 377]One...more...click...": "Ancora... un... clic", + "[Achievement name 378]Botany enthusiast": "Amante di botanica", + "[Achievement name 379]Green, aching thumb": "Pollice verde e dolente", + "[Achievement name 380]In the garden of Eden (baby)": "Nel giardino dell'Eden (cara, ogni giorno ti amo di più)", + "[Achievement name 381]Keeper of the conservatory": "Custode della serra", + "[Achievement name 382]Seedless to nay": "Semi sacrificali", + "[Achievement name 383]You get nothing": "Non ottieni nulla", + "[Achievement name 384]Humble rebeginnings": "Umili ripartenze", + "[Achievement name 385]The end of the world": "La fine del mondo", + "[Achievement name 386]Oh, you're back": "Oh, ciao di nuovo", + "[Achievement name 387]Lazarus": "Lazzaro", + "[Achievement name 388]Leisurely pace": "Passo tranquillo", + "[Achievement name 389]Hypersonic": "Ipersonico", + "[Achievement name 390]Feed me, Orteil": "Nutrimi, Orteil", + "[Achievement name 391]And then what?": "E poi?", + "[Achievement name 392]Tricentennial and a half": "Tricentenario e mezzo", + "[Achievement name 393]Quadricentennial": "Quadricentenario", + "[Achievement name 394]Quadricentennial and a half": "Quadricentenario e mezzo", + "[Achievement name 395]Quincentennial": "Cinquecenternario", + "[Achievement name 396]Maillard reaction": "Reazione di Maillard", + "[Achievement name 397]When the cookies ascend just right": "La perfetta ascensione dei biscotti", + "[Achievement name 398]With her finger and her thumb": "Oh, accidenti, le dita non me le sento più... io le dita non ce le ho!", + "[Achievement name 399]Defense of the ancients": "Difese degli antichi", + "[Achievement name 400]Sharpest tool in the shed": "Fiore blu, spine rosse...", + "[Achievement name 401]Hey now, you're a rock": "Meglio fuori che dentro", + "[Achievement name 402]Break the mold": "La perfetta città, qualche regola c'è, certo servirà", + "[Achievement name 403]Get the show on, get paid": "Vai, vai, vai, il più veloce che sai", + "[Achievement name 404]My world's on fire, how about yours": "Oh, santo piripillo!", + "[Achievement name 405]The meteor men beg to differ": "Il mago sarà in cima alle scale, nella stanza più remota della torre più alta", + "[Achievement name 406]Only shooting stars": "Allora, ci sono dei ciuchini lassù?", + "[Achievement name 407]We could all use a little change": "Abbiamo bevuto una pozione magica e ora... siamo sexy", + "[Achievement name 408]Your brain gets smart but your head gets dumb": "Le cipolle hanno gli strati, gli universi hanno gli strati", + "[Achievement name 409]The years start coming": "Siamo arrivati?", + "[Achievement name 410]What a concept": "A volte le cose sono molto di più di quello che appaiono", + "[Achievement name 411]You'll never shine if you don't glow": "Sai cos'altro piace a tutti? I prismi", + "[Achievement name 412]You'll never know if you don't go": "Oooh, ti aspettavi il principe azzurro, vero?", + "[Achievement name 413]Self-contained": "Auto-contenimento", + "[Achievement name 414]Threw you for a loop": "Sorpresa ciclica", + "[Achievement name 415]The sum of its parts": "La somma delle parti", + "[Achievement name 416]Bears repeating": "Serve ripeterlo", + "[Achievement name 417]More of the same": "Sempre lo stesso", + "[Achievement name 418]Last recurse": "Ultima ricorsione", + "[Achievement name 419]Out of one, many": "Da uno, molti", + "[Achievement name 420]An example of recursion": "Un esempio di ricorsione", + "[Achievement name 421]For more information on this achievement, please refer to its title": "Per ulteriori informazioni su questo obiettivo, fare riferimento al titolo", + "[Achievement name 422]I'm so meta, even this achievement": "Sono proprio meta, anche con questo obiettivo", + "[Achievement name 423]Never get bored": "Mai una noia", + "[Achievement name 424]The needs of the many": "Esigenze di molti", + "[Achievement name 425]Eating its own": "Divorare la propria essenza", + "[Achievement name 426]We must go deeper": "Dobbiamo andare più a fondo", + "[Achievement name 427]Sierpinski rhomboids": "Romboidi di Sierpiński", + "[Achievement name 428]Gotta go fast": "Sento il bisogno... il bisogno di velocità!", + "[Achievement name 429]I think it's safe to say you've got it made": "Direi che ce l'hai fatta", + "[Achievement name 430]Renaissance baker": "Pasticcere rinascimentale", + "[Achievement name 431]Veteran": "Veterano", + "[Achievement name 432]Thick-skinned": "Pellaccia dura", + "[Achievement name 433]F12": "F12", + "[Achievement name 434]Variable success": "Successo variabile", + "[Achievement name 435]No comments": "Nessun commento", + "[Achievement name 436]Up to code": "Codice a norma", + "[Achievement name 437]Works on my machine": "Sul mio computer funziona", + "[Achievement name 438]Technical debt": "Debito tecnico", + "[Achievement name 439]Mind your language": "Bada al linguaggio", + "[Achievement name 440]Inconsolable": "Inconsolabile", + "[Achievement name 441]Closure": "Chiusura", + "[Achievement name 442]Dude what if we're all living in a simulation like what if we're all just code on a computer somewhere": "Immagina se stessimo vivendo in una simulazione, se fossimo solo codici su un computer", + "[Achievement name 443]Taking the back streets": "Passando per vie posteriori", + "[Achievement name 444]Inherited prototype": "Prototipo ereditato", + "[Achievement name 445]A model of document object": "Modello di oggetto \"document\"", + "[Achievement name 446]First-class citizen": "Cittadino di prima classe", + "[Achievement name 447]Alexandria": "Alexandria", + "[Achievement name 448]Bake him away, toys": "Tortatelo via, ragazzi", + "[Achievement name 449]You're #1 so why try harder": "Sei già il migliore, perché faticare ancora", + "[Achievement name 450]Haven't even begun to peak": "La vetta è ancora lontana", + "[Achievement name 451]A sometimes food": "In moderate quantità", + "[Achievement name 452]Not enough of a good thing": "La bontà non basta mai", + "[Achievement name 453]Horn of plenty": "Cornucopia", + "[Achievement name 454]Smurf account": "Conto Thorrente", + "[Achievement name 455]If at first you don't succeed": "Se non riesci al primo colpo", + "[Achievement name 456]O Fortuna": "O Fortuna", + "[Achievement name 457]Initial public offering": "Offerta pubblica iniziale", + "[Achievement name 458]Rookie numbers": "Numeri da principiante", + "[Achievement name 459]No nobility in poverty": "Non c'è nobiltà nella povertà", + "[Achievement name 460]Full warehouses": "Magazzini pieni", + "[Achievement name 461]Make my day": "Un giorno memorabile", + "[Achievement name 462]Buy buy buy": "Compra compra compra", + "[Achievement name 463]Gaseous assets": "Patrimonio gassoso", + "[Achievement name 464]Pyramid scheme": "Schema piramidale", + "[Achievement name 465]Jellicles": "Gatticoli gelatinosi", + "[Achievement name 466]Quincentennial and a half": "Cinquecentenario e mezzo", + "[Achievement name 467]What did we even eat before these": "Cosa mangiavamo prima dei biscotti?", + "[Achievement name 468]Heavy flow": "Flusso abbondante", + "[Achievement name 469]More you say?": "Ne vuoi ancora?", + "[Achievement name 470]Large and in charge": "Aplomb dominante", + "[Achievement name 471]Absolutely stuffed": "Perfettamente farcito", + "[Achievement name 472]It's only wafer-thin": "È solo una sfoglia sottilissima", + "[Achievement name 473]Clickety split": "Spaccata di clic", + "[Achievement name 474]Gotta hand it to you": "Devo dartene tatto", + "[Achievement name 475]Okay boomer": "Ok boomer", + "[Achievement name 476]Overripe": "Troppo maturo", + "[Achievement name 477]Rock on": "Pietra su pietra", + "[Achievement name 478]Self-manmade man": "Uomo fatto da sé", + "[Achievement name 479]Checks out": "I conti tornano", + "[Achievement name 480]Living on a prayer": "Una preghiera per domarli", + "[Achievement name 481]Higitus figitus migitus mum": "Higitus figitus migitus mum", + "[Achievement name 482]The incredible journey": "L'incredibile avventura", + "[Achievement name 483]Just a phase": "Fase passeggera", + "[Achievement name 484]Don't let me leave, Murph": "Murph, non lasciarmi andare via", + "[Achievement name 485]Caveman to cosmos": "Dalle caverne al cosmo", + "[Achievement name 486]Particular tastes": "Gusti particolari", + "[Achievement name 487]A light snack": "Sapore di luce", + "[Achievement name 488]Tempting fate": "Fato tentatore", + "[Achievement name 489]Tautological": "Tautologico", + "[Achievement name 490]Curly braces": "Parentesi graffe", + "[Achievement name 491]Seven horseshoes": "Sette ferri di cavallo", + "[Achievement name 492]Olden days": "I bei tempi andati", + "[Achievement name 493]The devil's workshop": "Il padre dei vizi", + "[Achievement name 494]In the green": "In mezzo al verde", + "[Achievement name 495]Mountain out of a molehill, but like in a good way": "Fare di un sassolino una montagna, ma in senso positivo", + "[Achievement name 496]The wheels of progress": "Le ruote del progresso", + "[Achievement name 497]That's rich": "Una ricca notizia", + "[Achievement name 498]Preaches and cream": "Gelato con predica", + "[Achievement name 499]Magic thinking": "Riflessioni magiche", + "[Achievement name 500]Is there life on Mars?": "C'è vita su Marte?", + "[Achievement name 501]Bad chemistry": "Non c'è chimica", + "[Achievement name 502]Reduced to gibbering heaps": "Ridotto a un ammasso farfugliante", + "[Achievement name 503]Back already?": "Già di ritorno?", + "[Achievement name 504]Nuclear throne": "Trono nucleare", + "[Achievement name 505]Making light of the situation": "Facciamo luce sulla situazione", + "[Achievement name 506]Flip a cookie. Chips, I win. Crust, you lose.": "Lancia un biscotto. Scaglie vinco io. Crosta perdi tu.", + "[Achievement name 507]In and of itself": "In sé e per sé", + "[Achievement name 508]Duck typing": "Duck typing", + "[Achievement name 509]They'll never know what hit 'em": "Non sapranno mai cosa li ha colpiti", + "[Achievement name 510]Well-versed": "Dimestichezza", + "[Achievement name 511]Ripe for the picking": "Pronto per il raccolto", + "[Achievement name 512]Unreal": "Unreal", + "[Achievement name 513]Once you've seen one": "Visto uno...", + "[Achievement name 514]Spoils and plunder": "Tesori e bottini", + "[Achievement name 515]Nobody exists on purpose, nobody belongs anywhere": "Nessuno esiste di proposito, nessuno appartiene a un posto", + "[Achievement name 516]Hyperspace expressway": "Superstrada iperspaziale", + "[Achievement name 517]Versatile": "Versatile", + "[Achievement name 518]You are inevitable": "Sei ineluttabile", + "[Achievement name 519]Away from this place": "Lontano da qui", + "[Achievement name 520]Everywhere at once": "Ovunque in contemporanea", + "[Achievement name 521]Reject reality, substitute your own": "Rifiuta la realtà, imponi la tua", + "[Achievement name 522]Fringe": "Margine", + "[Achievement name 523]Coherence": "Coerenza", + "[Achievement name 524]Earth-616": "Terra-616", + "[Achievement name 525]Strange topologies": "Topologie bizzarre", + "[Achievement name 526]Grand design": "Sommi progetti", + "[Achievement name 527]Ecumenopolis": "Ecumenopolis", + "[Achievement name 528]The full picture": "Il quadro completo", + "[Achievement name 529]When there's nothing left to add": "Non c'è nulla da aggiungere", + "[Achievement name 530]Sexcentennial": "Seicentenario", + "[Achievement name 531]Keep going until I say stop": "Continua finché non ti dico di fermarti", + "[Achievement name 532]But I didn't say stop, did I?": "Non ho detto di fermarti, vero?", + "[Achievement name 533]With unrivaled fervor": "Con ardore incomparabile", + "[Achievement name 534]Think big": "Pensa in grande", + "[Achievement name 535]Hypersize me": "Iperdimensionale", + "[Achievement name 536]Max capacity": "Capacità massima", + "[Achievement name 537]Liquid assets": "Patrimonio liquido", + "[Achievement name 538]Stifling the press": "Soffocare la stampa", + "[Achievement name 539]It's big brain time": "È il momento dei cervelloni", + "[Achievement name 540]Just my imagination": "Solo la mia immaginazione", + "[Achievement name 541]Now there's an idea": "Questa sì che è un'idea", + "[Achievement name 542]The organ that named itself": "L'organo che si è dato un nome da solo", + "[Achievement name 543]Gyrification": "Girificazione", + "[Achievement name 544]A trademarked portmanteau of \"imagination\" and \"engineering\"": "Una parola composta registrata tra \"immaginazione\" e \"ingegneria\"", + "[Achievement name 545]Mindfulness": "Mindfulness", + "[Achievement name 546]The 10% myth": "Il mito del 10%", + "[Achievement name 547]Don't think about it too hard": "Non pensarci troppo", + "[Achievement name 548]Though fools seldom differ": "Gli sciocchi sono spesso in disaccordo", + "[Achievement name 549]Looking kind of dumb": "Espressione da stupido", + "[Achievement name 550]A beautiful mind": "Una splendida mente", + "[Achievement name 551]Cardinal synapses": "Sinapsi cardinali", + "[Achievement name 552]Positive thinking": "Pensiero positivo", + "[Achievement name 553]The thought that counts": "Il pensiero che conta", + "[Achievement name 554]Unthinkable": "Impensabile", + "[Achievement name 555]Gifted": "Geniale", + "[Achievement name 556]They moistly come at night": "Sono maggiormente notturni", + "[Achievement name 557]It's grown on you": "Ti piacerà", + "[Achievement name 558]Don't let the walls cave in on you": "Non lasciare che le pareti di crollino addosso", + "[Achievement name 559]Replaced by robots": "Sostituiti da robot", + "[Achievement name 560]Financial prodigy": "Prodigio finanziario", + "[Achievement name 561]And I will pray to a big god": "Preghiera a un dio maggiore", + "[Achievement name 562]Shosple Colupis": "Lettere a caso", + "[Achievement name 563]False vacuum": "Falso vuoto", + "[Achievement name 564]Metallic taste": "Sapore metallico", + "[Achievement name 565]Swiss cheese": "Formaggio svizzero", + "[Achievement name 566]But the future refused to change": "Ma il futuro si rifiuta di cambiare", + "[Achievement name 567]What's the dark matter with you": "Attento alla materia oscura", + "[Achievement name 568]Enlightenment": "Illuminazione", + "[Achievement name 569]Never tell me the odds": "Non mi importa delle probabilità", + "[Achievement name 570]Blowing an Apollonian gasket": "Gonfiare una guarnizione apolloniana", + "[Achievement name 571]Get with the program": "Attieniti al programma", + "[Achievement name 572]Lost your cosmic marbles": "Hai le traveggole cosmiche", + "[Achievement name 573]By will alone I set my mind in motion": "È con la sola volontà che metto in moto il mio pensiero", + "[Achievement name 574]Ain't that a click in the head": "Un clic sulla testa", + "[Achievement name 575]Sexcentennial and a half": "Settecento anni e mezzo", + "[Achievement name 576]I am speed": "Io sono la velocità", + "[Achievement name 577]And on and on": "E ancora e ancora", + "[Achievement name 578]Fake it till you bake it": "Fingi fino a cottura ultimata", + "[Achievement name 579]History in the baking": "La storia fatta dai panettieri", + "[Achievement name 580]Baby it's old outside": "Roba vecchia là fuori", + "[Achievement name 581]Myriad": "Myriad", + "[Achievement name 582]Kaizen": "Kaizen", + "[Achievement name 583]Beyond quality": "Oltre la qualità", + "[Achievement name 584]Everything happens so much": "Tutto e troppo", + "[Achievement name 585]I'll rest when I'm dead": "Riposerò quando sarò morto", + "[Achievement name 586]What do you get for the baker who has everything": "Cosa regalare a un panettiere che ha tutto", + "[Achievement name 587]Bottomless pit": "Pozzo senza fondo", + "[Achievement name 588]All the stars in heaven": "Tutte le stelle in cielo" +}); \ No newline at end of file diff --git a/gversion/gs/cookieclicker/loc/JA.js b/gversion/gs/cookieclicker/loc/JA.js new file mode 100644 index 0000000..80bcd2e --- /dev/null +++ b/gversion/gs/cookieclicker/loc/JA.js @@ -0,0 +1,3303 @@ +AddLanguage('JA','japanese',{ + "": { + "language": "JA", + "plural-forms": "nplurals=2;plural=(n!=1);" + }, + "cookie": "クッキー", + "sugar lump": "砂糖玉", + "heavenly chip": "天界チップ", + "wrinkler": "シワシワ虫", + "building": "建物", + "upgrade": "アップグレード", + "golden cookie": "黄金クッキー", + "grandmapocalypse": "/", + "%1 cookie": [ + "%1クッキー", + "%1クッキー" + ], + "%1 sugar lump": [ + "%1砂糖玉", + "%1砂糖玉" + ], + "%1 heavenly chip": [ + "%1天界チップ", + "%1天界チップ" + ], + "%1 golden cookie": [ + "%1黄金クッキー", + "%1黄金クッキー" + ], + "%1 building": [ + "%1建物", + "%1建物" + ], + "%1 upgrade": [ + "%1アップグレード", + "%1アップグレード" + ], + "Yes": "はい", + "No": "いいえ", + "Click here": "ここをクリック", + "Don't show this again": "次回から表示しない", + "Delete all": "全て削除", + "Back": "戻る", + "Confirm": "決定", + "All done!": "完了!", + "Load": "ロード", + "Save": "セーブ", + "Quit": "終了", + "Save & Quit": "保存して終了", + "Cancel": "取消", + "Nevermind": "やめておく", + "Random": "ランダム", + "You have %1.": "%1を持っています。", + "Click": "クリック", + "Shift": "/", + "Shift-click": "Shift-クリック", + "Ctrl": "/", + "Ctrl-click": "Ctrl-クリック", + "Esc": "/", + "Cookies": "クッキー", + "%1 day": [ + "%1日", + "%1日" + ], + "%1 hour": [ + "%1時間", + "%1時間" + ], + "%1 minute": [ + "%1分", + "%1分" + ], + "%1 second": [ + "%1秒", + "%1秒" + ], + "less than 1 second": "1秒未満", + "in %1": "あと%1", + "%1 ago": "%1前", + "%1 remaining": "残り%1", + "%1 worth": "%1分相当", + "%1 of CpS": "CpSの%1", + "%1% of bank": "貯蓄の%1%分", + "per second:": "毎秒:", + "just now": "たった今", + "a long while": "だいぶ前から", + "forever": "永遠", + "Time remaining:": "残り時間:", + "Big clickable cookie": "クリックできる特大クッキー", + "Golden cookie": "黄金クッキー", + "Wrath cookie": "怒りのクッキー", + "Reindeer": "トナカイ", + "Options": "オプション", + "General": "全般", + "Settings": "設定", + "Volume": "音量", + "Volume (music)": "音量(音楽)", + "ON": "/", + "OFF": "/", + "Fancy graphics": "高品質で描画", + "CSS filters": "CSSフィルター", + "visual improvements; disabling may improve performance": "ビジュアルの改善:無効にするとパフォーマンスが改善する場合もある", + "Particles": "パーティクル", + "Numbers": "数字", + "numbers that pop up when clicking the cookie": "クッキーをクリックしたときに数字を表示", + "Milk [setting]": "ミルク", + "Cursors [setting]": "カーソル", + "visual display of your cursors": "カーソルの表示", + "Wobbly cookie": "動くクッキー", + "Alt cookie sound": "別のクッキー音", + "Icon crates": "アイコンの枠", + "display boxes around upgrades and achievements in Stats": "記録画面でアップグレードや実績の周りに枠を表示する", + "Alt font": "別のフォント", + "your cookies are displayed using a monospace font": "等幅フォントでクッキー数を表示する", + "Short numbers": "数字を短く表記", + "Fast notes": "短い通知", + "notifications disappear much faster": "通知がより早く消える", + "Closing warning": "終了警告", + "the game will ask you to confirm when you close the window": "ウィンドウを閉じる際に確認を表示", + "Defocus": "フォーカス解除", + "the game will be less resource-intensive when out of focus": "フォーカスが外れているときにゲームのリソース消費を削減", + "Extra buttons": "追加ボタン", + "add options on buildings like Mute": "建物のオプションに、非表示などのボタンを追加", + "Lump confirmation": "砂糖玉使用の確認", + "the game will ask you to confirm before spending sugar lumps": "砂糖玉を使う前に確認する", + "Custom grandmas": "カスタムグランマ", + "some grandmas will be named after Patreon supporters": "一部のグランマに、Patreonサポーターの名前が付けられる", + "Scary stuff": "恐ろしいもの", + "Sleep mode timeout": "スリープモードのタイムアウト", + "on slower computers, the game will put itself in sleep mode when it's inactive and starts to lag out; offline CpS production kicks in during sleep mode": "遅いコンピューターでゲームが非アクティブ状態かつ動作が鈍くなったときにスリープモードに入る。スリープモード中はオフラインCpS生産が作動する。", + "Music in background": "背景の音楽", + "music will keep playing even when the game window isn't focused": "ゲーム画面がフォーカスしていない時も、音楽が流れ続けます", + "Cloud saving": "クラウドセーブ", + "allow use of Steam Cloud for save backups": "バックアップセーブのためのSteamクラウドの利用を許可", + "Purge Cloud": "クラウドから完全消去", + "Current Cloud use:": "利用しているクラウド:", + "No Cloud access at the moment.": "現在、クラウドにアクセスできません。", + "Screen reader mode": "スクリーン リーダー モード", + "allows optimizations for screen readers; game will reload": "スクリーン リーダーの最適化を許可する。ゲームはリロードされます", + "Discord status": "Discordステータス", + "if Discord is on, show your game info as activity status": "Discordがオンの場合、あなたのゲーム情報をアクティビティステータスとして公開する", + "Language": "言語", + "Language: %1": "言語:%1", + "Change language": "言語を変更する", + "note: this will save and reload your game": "注意:ゲームを保存して再読込します", + "Press %1 to toggle fullscreen.": "%1を押して全画面表示に切り替えます。", + "Other versions": "他のバージョン", + "Beta": "ベータ", + "Stats": "記録", + "Shadow achievements": "隠し実績", + "These are feats that are either unfair or difficult to attain. They do not give milk.": "達成はかなり難しく、ときには運頼みのものもある。達成してもミルクは増えない。", + "starter milk": "はじめのミルク", + "for %1 achievements": "実績を%1達成", + "appeased": "おだやか", + "awoken": "覚醒", + "displeased": "不機嫌", + "angered": "怒り", + "Cookies in bank:": "貯まったクッキー:", + "Cookies baked (this ascension):": "クッキー生産数(今回の昇天):", + "Cookies baked (all time):": "クッキー生産数(全期間):", + "Cookies forfeited by ascending:": "昇天で失ったクッキー:", + "Legacy started:": "遺産の始まり:", + "with %1 ascension": [ + "昇天 %1回", + "昇天 %1回" + ], + "Run started:": "この回の始まり:", + "Buildings owned:": "所有建物:", + "Cookies per second:": "クッキー生産数/秒:", + "Raw cookies per second:": "クッキー実生産数/秒:", + "highest this ascension:": "現昇天の最高記録:", + "multiplier:": "倍率:", + "withered:": "減退:", + "Cookies per click:": "1クリックあたりの生産数:", + "Cookie clicks:": "クリック回数:", + "Hand-made cookies:": "手作りクッキー:", + "Golden cookie clicks:": "黄金クッキーのクリック回数:", + "Random drop multiplier:": "ランダムドロップのマルチプライヤー:", + "all time:": "全期間:", + "Running version:": "実行中のバージョン:", + "Special": "スペシャル", + "Challenge mode:": "チャレンジモード:", + "Seasonal event:": "シーズンイベント:", + "Research:": "研究:", + "Grandmatriarchs status:": "グランマ集団の状態:", + "Pledge:": "宣誓:", + "Wrinklers popped:": "破裂させたシワシワ虫:", + "Sugar lumps harvested:": "収穫した砂糖玉:", + "Reindeer found:": "見つけたトナカイ:", + "Santa stages unlocked:": "解除したサンタステージ:", + "Dragon training:": "ドラゴンの訓練:", + "Prestige": "名声", + "at %1% of its potential (+%2% CpS)": "潜在能力の%1%(+%2% CpS)", + "Prestige upgrades unlocked:": "解除した名声アップグレード:", + "Upgrades unlocked:": "解除したアップグレード:", + "Achievements unlocked:": "解除した実績:", + "Kitten multiplier:": "子猫ブースト:", + "Milk": "ミルク", + "Milk:": "ミルク:", + "Milk flavors unlocked:": "解除したミルクの種類:", + "Milk is gained with each achievement. It can unlock unique upgrades over time.": "実績を達成するごとにミルクを獲得し、やがてユニークなアップグレードが解除される。", + "Rank %1": "%1ランク", + "Automatic": "自動", + "Plain milk": "ふつうのミルク", + "Chocolate milk": "チョコミルク", + "Raspberry milk": "ラズベリーミルク", + "Orange milk": "オレンジミルク", + "Caramel milk": "キャラメルミルク", + "Banana milk": "バナナミルク", + "Lime milk": "ライムミルク", + "Blueberry milk": "ブルーベリーミルク", + "Strawberry milk": "ストロベリーミルク", + "Vanilla milk": "バニラミルク", + "Zebra milk": "しまうまミルク", + "Cosmic milk": "宇宙ミルク", + "Flaming milk": "炎のミルク", + "Sanguine milk": "赤い血のミルク", + "Midas milk": "マイダスのミルク", + "Midnight milk": "真夜中のミルク", + "Green inferno milk": "緑の炎のミルク", + "Frostfire milk": "青い炎のミルク", + "Honey milk": "ハニーミルク", + "Coffee milk": "コーヒーミルク", + "Tea milk": "紅茶ミルク", + "Coconut milk": "ココナツミルク", + "Cherry milk": "チェリーミルク", + "Soy milk": "豆乳", + "Spiced milk": "スパイスミルク", + "Maple milk": "メープルミルク", + "Mint milk": "ミントミルク", + "Licorice milk": "甘草ミルク", + "Rose milk": "ローズミルク", + "Dragonfruit milk": "ドラゴンフルーツミルク", + "Info": "情報", + "About": "このゲームについて", + "Cookie Clicker is a javascript game by %1 and %2.": "Cookie Clickerは%1と%2が制作したJavaScriptのゲームです。", + "Music by %1.": "音楽の音量を%1上げる。", + "Useful links: %1, %2, %3, %4.": "役立つリンク:%1、%2、%3、%4。", + "This version of Cookie Clicker is 100% free, forever. Want to support us so we can keep developing games? Here's some ways you can help:%1": "本バージョンのCookie Clickerは、永久に100%無料です。ゲームの開発が継続できるよう支援してみませんか?以下に支援の方法をご紹介します:%1", + "Note: if you find a new bug after an update and you're using a 3rd-party add-on, make sure it's not just your add-on causing it!": "注: アップデート後に新しい不具合が見つかり、サードパーティー製のアドオンを使用している場合は、不具合がアドオンによるものかどうかを必ず確認のほどお願いいたします!", + "Warning: clearing your browser cache or cookies (what else?) will result in your save being wiped. Export your save and back it up first!": "警告: ブラウザのキャッシュやクッキー(他にも何か?)を消去するとセーブも消えてしまいます。先にセーブをエクスポートしてバックアップしておきましょう!", + "Version history": "バージョン履歴", + "Official website": "公式ウェブサイト", + "Note: links will open in your web browser.": "注意:ウェブブラウザでリンクが開きます。", + "Note: older update notes are in English.": "注意:過去のアップデートノートは英語です。", + "This feature is not yet available in your language.": "使用中の言語ではこの機能は利用できません。", + "Restart with new changes": "変更を保存してリスタート", + "Cookie Clicker is in sleep mode.": "Cookie Clickerはスリープモードです。", + "Cookie Clicker is in sleep mode and generating offline cookies.": "Cookie Clickerはスリープモードで、オフラインでクッキーを製造しています。", + "%1 to resume from your save file.": "%1でセーブファイルからゲームを再開する。", + "(this happens when too many frames are skipped at once,
usually when the game has been running in the background for a while)
(you can turn this feature off in the settings menu)": "(これは、一度にたくさんのフレームがスキップされると起こります。
通常は、しばらくバックグラウンドでゲームをプレイした場合などです。)
(設定メニューから、この機能をオフにできます。)", + "Are you sure you want to close Cookie Clicker?": "本当にCookie Clickerを終了しますか?", + "Back up your save!": "セーブをバックアップしてください!", + "Hello again! Just a reminder that you may want to back up your Cookie Clicker save every once in a while, just in case.
To do so, go to Options and hit \"Export save\" or \"Save to file\"!": "またまた、こんにちは!念のため、Cookie Clickerを時々セーブするようおすすめしています。
セーブするには、オプションを開いて「セーブをエクスポート」か「ファイルに保存」をクリック!", + "Save manually (the game autosaves every 60 seconds; shortcut: ctrl+S)": "手動で保存(ゲームは60秒ごとに自動で保存されます。ショートカット:Ctrl+S)", + "You can use this to backup your save or to transfer it to another computer (shortcut for import: ctrl+O)": "こちらからセーブをバックアップするか、別のパソコンに転送することができます(インポートのショートカット:Ctrl+O)", + "Save to file": "ファイルに保存", + "Load from file": "ファイルから読み込む", + "Use this to keep backups on your computer": "こちらでパソコンにバックアップを保存することができます", + "Export save": "セーブをエクスポート", + "This is your save code.
Copy it and keep it somewhere safe!": "これはあなたのセーブコードです。
コピーして安全な場所に保管してください!", + "Import save": "セーブをインポート", + "Please paste in the code that was given to you on save export.": "エクスポートする時にコピーしたコードを貼り付けてください。", + "Game saved": "ゲームを保存しました", + "Game loaded": "ゲームを読み込みました", + "Error while saving": "保存中にエラーが発生しました", + "Export your save instead!": "代わりにセーブをエクスポートしましょう!", + "Error importing save": "セーブの読み込み中にエラーが発生しました", + "Oops, looks like the import string is all wrong!": "インポートの文字列が間違っているようです!", + "You are attempting to load a save from a future version (v. %1; you are using v. %2).": "今より新しいバージョンのセーブを読み込もうとしています(v. %1。使用しているのはv. %2)。", + "Sorry, you can't import saves from the classic version.": "クラシックバージョンのセーブは読み込めません。", + "Wipe save": "セーブを消去", + "Delete all your progress, including your achievements": "実績を含め、全ての進捗を消去します", + "Do you REALLY want to wipe your save?
You will lose your progress, your achievements, and your heavenly chips!": "本当にセーブを消去しますか?
進捗や実績、天界チップは失われます!", + "Whoah now, are you really, REALLY sure you want to go through with this?
Don't say we didn't warn you!": "おーっと、本当に本当に実行してもいいんですか?
一応警告しましたからね!", + "Game reset": "ゲームをリセット", + "Good bye, cookies.": "クッキーよ、さようなら。", + "Welcome back!": "おかえりなさい!", + "You earned %1 while you were away.": "留守中に、%1を獲得しました。", + "Mods": "MOD", + "Manage mods": "MODの管理", + "Publish mods": "MODを公開する", + "Update published mods": "発表済みのモッドをアップデートする", + "Only use mods from trusted sources. Some mods may require a game restart to take effect.": "信頼できるソースからのMODだけを使う。ゲームを再起動しなければ効果が現れないMODもある。", + "Enable": "有効", + "Disable": "無効", + "Priority up": "優先順位を上げる", + "Priority down": "優先順位を下げる", + "New mod": "新しいモッド", + "Select folder": "フォルダーを選択", + "Select updated folder": "アップデートされたモッドを選ぶ", + "Select a mod.": "モッドを選んでください。", + "Open folder": "フォルダーを開く", + "Open Workshop": "ワークショップを開く", + "Open Workshop page": "ワークショップのページを開く", + "Unsubscribe": "登録解除", + "Local mod": "ローカルのMOD", + "Open %1 folder": "%1のフォルダーを開く", + "Description": "説明", + "Image": "画像", + "Name": "名前", + "Title": "タイトル", + "Visibility": "視認性", + "Author": "作者", + "File size": "ファイルサイズ", + "Tags": "タグ", + "Dependencies": "依存関係", + "Publish to Workshop": "ワークショップに公開する", + "Version": "バージョン", + "Error!": "エラー!", + "none": "なし", + "Publishing...": "発表しています...", + "Updating...": "アップデートしています...", + "Success!": "成功しました!", + "Refresh": "再読込", + "Last update:": "最新のアップデート:", + "Mods are loaded from top to bottom.": "モッドは上から下の順でロードされます。", + "Some mods couldn't be loaded:": "ロードできないモッドがありました:", + "This tool allows you to upload new mods to the Steam Workshop.
You need to select a mod folder containing a properly-formatted %1 file.
See the included sample mods for examples.": "このツールを使うことで、Steamワークショップに新たなモッドをアップロードすることができます。
適切な形式の%1ファイルが保存されたモッドフォルダーを一つ選んでください。
見本をご覧になりたい場合は、サンプルのモッドをご参照ください。", + "Mod data": "Modデータ", + "No mod data present.": "Modデータが見つかりません。", + "These are the mods present in your save data. You may delete some of this data to make your save file smaller.": "これらはセーブデータに存在するModです。いくつかデータを消去すれば、ファイルを小さくすることができます。", + "(loaded)": "(読み込み完了)", + "%1 char": [ + "%1文字", + "%1文字" + ], + "Check mod data": "Modデータをチェック", + "view and delete save data created by mods": "Modのセーブデータを表示して消去する", + "New update!": "新しいアップデート!", + "New version available: v. %1!": "新しいバージョンがあります: v. %1!", + "Update note: \"%1\"": "アップデートに関するノート: \"%1\"", + "Refresh to get it!": "再読み込みして入手しましょう!", + "You are currently playing Cookie Clicker on the %1 protocol.
The %2 version uses a different save slot than this one.
Click this lock to reload the page and switch to the %2 version!": "現在、%1プロトコルでCookie Clickerをプレイしています。
%2バージョンでは、これとは別のセーブスロットを使用します。
このロックをクリックすると、ページを再読み込みして%2バージョンに切り替えます!", + "+%1 more notification.": [ + "さらに+%1件の通知あり。", + "さらに+%1件の通知あり。" + ], + "Christmas": "クリスマス", + "Valentine's day": "バレンタイン", + "Business day": "ビジネスデー", + "Easter": "イースター", + "Halloween": "ハロウィン", + "%1 has started!": "%1が始まりました!", + "%1 is over.": "%1が終わりました。", + "%1's bakery": "%1のベーカリー", + "Name your bakery": "ベーカリーに名前を付けてください", + "What should your bakery's name be?": "ベーカリーの名前は何にしますか?", + "bakery random name, 1st half": [ + "マジック", + "ファンタスティック", + "ファンシー", + "生意気", + "小粋な", + "プリティ", + "キュート", + "海賊", + "忍者", + "ゾンビ", + "ロボット", + "過激な", + "都会派", + "クールな", + "とびきり", + "スイートな", + "ひどい", + "ダブル", + "トリプル", + "ターボ", + "テクノ", + "ディスコ", + "エレクトロ", + "踊る", + "ワンダー", + "ミュータント", + "宇宙", + "科学", + "中世", + "未来", + "キャプテン", + "ヒゲ面", + "ラブリー", + "タイニー", + "ビッグ", + "ファイアー", + "ウォーター", + "ブローズン", + "メタル", + "プラスチック", + "ソリッド", + "リキッド", + "カビくさい", + "輝く", + "ハッピー", + "ハッピーリトル", + "スライミー", + "うまい", + "おいしい", + "腹ペコ", + "欲張り", + "必殺", + "プロフェッサー・", + "ドクター・", + "パワー", + "チョコレート", + "ポロポロ", + "ショコラ", + "正義の", + "栄光の", + "覚えやすい", + "サイキック", + "熱狂", + "ドタバタ", + "クレイジー", + "ロイヤル", + "エル", + "ヴォン" + ], + "bakery random name, 2nd half": [ + "クッキー", + "ビスケット", + "マフィン", + "スコーン", + "カップケーキ", + "パンケーキ", + "チップ", + "スプロケット", + "ギズモ", + "パペット", + "ミトン", + "靴下", + "ティーポット", + "ミステリー", + "ベイカー", + "コック", + "グランマ", + "クリック", + "クリッカー", + "スペースシップ", + "工場", + "ポータル", + "マシン", + "実験", + "モンスター", + "パニック", + "強盗", + "盗賊", + "お宝", + "ポテト", + "ピザ", + "バーガー", + "ソーセージ", + "ミートボール", + "スパゲッティ", + "マカロニ", + "子猫", + "子犬", + "キリン", + "シマウマ", + "オウム", + "イルカ", + "アヒルの子", + "ナマケモノ", + "カメ", + "ゴブリン", + "妖精", + "ノーム", + "コンピューター", + "海賊", + "忍者", + "ゾンビ", + "ロボット" + ], + "%1, age %2": "%1、%2歳", + "Sugar lumps!": "砂糖玉!", + "Because you've baked a billion cookies in total, you are now attracting sugar lumps. They coalesce quietly near the top of your screen, under the Stats button.
You will be able to harvest them when they're ripe, after which you may spend them on all sorts of things!": "合計で10億枚のクッキーを焼いたので、砂糖玉が集まるようになりました。画面上部、記録ボタンの下でゆっくりと成長していきます。
完熟したら収穫して、色々なものに使うことができます!", + "A sugar lump is coalescing here, attracted by your accomplishments.": "あなたの成果が引き寄せた砂糖玉が、ここで成長しています。", + "Your sugar lumps mature after %1,
ripen after %2,
and fall after %3.": "砂糖玉が成熟するまで、あと%1
完熟まで%2
落果までは%3です。", + "• Sugar lumps can be harvested when mature, though if left alone beyond that point they will start ripening (increasing the chance of harvesting them) and will eventually fall and be auto-harvested after some time.
• Sugar lumps are delicious and may be used as currency for all sorts of things.
• Once a sugar lump is harvested, another one will start growing in its place.
• Note that sugar lumps keep growing when the game is closed.": "• 成熟した砂糖玉は収穫できますが、そのまま放置すれば完熟し(収穫のチャンスがアップ)、そのうち実が落ちて自動的に収穫されます。
• 砂糖玉はおいしいだけでなく、色々なものを買う通貨として使用できます。
• 砂糖玉を収穫すると、同じところで次の砂糖玉が成長しはじめます。
• ゲーム画面を閉じても、砂糖玉は成長し続けます。", + "This sugar lump has been exposed to time travel shenanigans and will take an excruciating %1 to reach maturity.": "この砂糖玉はタイムトラベルが悪さして、成長するまで%1かかります。", + "This sugar lump is still growing and will take %1 to reach maturity.": "この砂糖玉はまだ成長中で、成熟まで%1かかります。", + "This sugar lump is mature and will be ripe in %1.
You may click it to harvest it now, but there is a 50% chance you won't get anything.": "この砂糖玉は成長が終わっていて、あと%1で完熟します。
クリックですぐに収穫できますが、50%の確率で何も収穫できません。", + "This sugar lump is ripe! Click it to harvest it.
If you do nothing, it will auto-harvest in %1.": "この砂糖玉は熟しています!クリックして収穫してください。
何もしなければ、%1後に自動で収穫されます。", + "This sugar lump grew to be bifurcated; harvesting it has a 50% chance of yielding two lumps.": "この砂糖玉は、分岐して成長しています。収穫すると50%の確率で砂糖玉が2つ収穫できます。", + "This sugar lump grew to be golden; harvesting it will yield 2 to 7 lumps, your current cookies will be doubled (capped to a gain of 24 hours of your CpS), and you will find 10% more golden cookies for the next 24 hours.": "この砂糖玉は黄金色に育っています。収穫すると2~7個の砂糖玉が収穫できます。現在のクッキーの数は倍になり(上限はCpSの24時間分)、24時間は黄金クッキーが10%増しで出現します。", + "This sugar lump was affected by the elders and grew to be meaty; harvesting it will yield between 0 and 2 lumps.": "この砂糖玉はエルダーたちの影響を受け、肉々しく育っていきます。収穫すれば0~2個の砂糖玉がとれます。", + "This sugar lump is caramelized, its stickiness binding it to unexpected things; harvesting it will yield between 1 and 3 lumps and will refill your sugar lump cooldowns.": "この砂糖玉はカラメルになりました。予期しないものにくっつきます。収穫すれば1~3個の砂糖玉がとれ、砂糖玉のクールダウンが補充されます。", + "You harvested %1 while you were away.": "留守中に%1を収穫しました。", + "Sugar blessing activated!": "砂糖の祝福が有効になりました!", + "Your cookies have been doubled.
+10% golden cookies for the next 24 hours.": "クッキーが倍になりました。
これから24時間、黄金クッキーが+10%多く出現します。", + "Sugar lump cooldowns cleared!": "砂糖玉のクールダウンが解消!", + "Botched harvest!": "未熟な収穫!", + "Do you want to spend %1 to %2?": "%1を%2に消費しますか?", + "Heralds": "ヘラルド", + "%1 herald": [ + "%1のヘラルド", + "%1のヘラルド" + ], + "Heralds couldn't be loaded. There may be an issue with our servers, or you are playing the game locally.": "ヘラルドが読み込めません。サーバーに問題があるか、ローカル接続でゲームをプレイしています。", + "There are no heralds at the moment. Please consider donating to our Patreon!": "現在ヘラルドはいません。私たちのPatreonへの寄付を検討してください!", + "selflessly inspiring a boost in production for everyone, resulting in %1.": "がみんなのために無私無欲で生産を増量し、%1をもたらしました。", + "+%1% cookies per second": "+%1%クッキー/秒", + "You are in a Born again run, and are not currently benefiting from heralds.": "この回は降誕モードのため、現在ヘラルドの恩恵を受けていません。", + "You own the Heralds upgrade, and therefore benefit from the production boost.": "ヘラルドのアップグレードを持っているので、生産増量の恩恵を受けることができます。", + "To benefit from the herald bonus, you need a special upgrade you do not yet own. You will permanently unlock it later in the game.": "ヘラルドのボーナスを受け取るには、まだ所持していない特別なアップグレードが必要です。ゲームを進めれば、いずれ永久的に解除されます。", + "Heralds are people who have donated to our highest Patreon tier, and are limited to 100.
Each herald gives everyone +1% CpS.
Heralds benefit everyone playing the game, regardless of whether you donated.": "ヘラルドは、最高ティアPatreonに寄付した人たちで、100人に限定されています。
各ヘラルドはみんなに+1%のCpSをもたらします。
あなたが寄付したかどうかに関わらず、ヘラルドはゲームをプレイする全員に恩恵をもたらします。", + "Every %1 current players on Steam generates 1 herald, up to %2 heralds.
Each herald gives everyone +1% CpS.": "現在のSteamの%1プレーヤーごとに、 1ヘラルド、最大%2ヘラルドが生成される。
各ヘラルドは全員にCpSを+1%付与する。", + "+%1!": "+%1!", + "You found %1!": "%1を見つけました!", + "Found %1!": "%1を見つけました!", + "You also found %1!": "%1も見つけました!", + "Lost %1!": "%1を失いました!", + "Sweet!
Found 1 sugar lump!": "ナイス!
砂糖玉を1個見つけました!", + "Lucky!": "ラッキー!", + "Ruin!": "台無し!", + "Cookie chain over. You made %1.": "クッキーチェーン終了。%1生産。", + "Cookie chain": "クッキーチェーン", + "Cookie chain broken.
You made %1.": "クッキーチェーン破損。
%1生産。", + "Cookie blab": [ + "60秒間クッキーのサクサク感が3倍に!", + "77秒間チョコレート感が7倍に!", + "66秒間生地の弾力が半分に!", + "3秒間黄金クッキーの輝きが2倍に!", + "30秒間世界経済が半分に!", + "45秒間グランマのキスが23%減少!", + "クリックありがとう!", + "騙されましたね!これはただのテストです。", + "クリックした黄金クッキーが+1!", + "クリックが登録されました。ご協力ありがとうございます。", + "サンキュー!ドンピシャだ!", + "ありがとうございます。チームを派遣しました。", + "わかってますよ。", + "おっと。これはホイルに包まれた平凡なチョコクッキーでした。" + ], + "Exploded a wrinkler": "シワシワ虫を爆破", + "Exploded a shiny wrinkler": "ピカピカのシワシワ虫を爆破", + "Swallowed:": "飲み込んだ枚数:", + "Reindeer names": [ + "ダッシャー", + "ダンサー", + "プランサー", + "ヴィクセン", + "コメット", + "キューピッド", + "ドナー", + "ブリッツェン", + "ルドルフ" + ], + "The reindeer gives you %1.": "トナカイから%1獲得。", + "You are also rewarded with %1!": "さらに%1をもらった!", + "You are granted %1.": "%1が与えられた。", + "Found a present!": "プレゼントを発見!", + "You find a present which contains...": "見つけたプレゼントに入っていたのは…", + "Evolve": "進化", + "Festive test tube": "クリスマスの試験管", + "Festive ornament": "クリスマスの飾り", + "Festive wreath": "クリスマスのリース", + "Festive tree": "クリスマスの木", + "Festive present": "クリスマスのプレゼント", + "Festive elf fetus": "サンタ帽のエルフ胎児", + "Elf toddler": "エルフの幼児", + "Elfling": "エルフの子供", + "Young elf": "若いエルフ", + "Bulky elf": "たくましいエルフ", + "Nick": "ニック", + "Santa Claus": "サンタクロース", + "Elder Santa": "高齢のサンタ", + "True Santa": "真のサンタ", + "Final Claus": "最終形態のサンタ", + "Dragon egg": "ドラゴンの卵", + "Shivering dragon egg": "震えるドラゴンの卵", + "Krumblor, cookie hatchling": "クランブラー、クッキーの幼鳥", + "Krumblor, cookie dragon": "クランブラー、クッキードラゴン", + "Train %1": "%1を訓練する", + "Aura: %1": "オーラ:%1", + "Chip it": "少しずつ割る", + "Hatch it": "ふ化させる", + "Bake dragon cookie": "ドラゴンクッキーを焼く", + "Delicious!": "デリシャス!", + "Train secondary aura": "2つ目のオーラを訓練する", + "Lets you use two dragon auras simultaneously": "同時に2つのドラゴンのオーラが使えるようになる", + "Your dragon is fully trained.": "ドラゴンの訓練はすべて完了しました。", + "%1 of every building": "各建物を%1ずつ", + "No aura": "オーラなし", + "Set your dragon's aura": "ドラゴンのオーラを設定する", + "Set your dragon's secondary aura": "ドラゴンの2つ目のオーラを設定する", + "Select an aura from those your dragon knows.": "ドラゴンが知っているオーラを選択する。", + "One tenth of every other dragon aura, combined.": "他のドラゴンオーラをすべて合算した10分の1。", + "Switching your aura is free because you own no buildings.": "建物を所有していないので、オーラの変更は無料です。", + "The cost of switching your aura is %1.
This will affect your CpS!": "オーラの変更にかかる費用は%1です。
これはCpSに影響します!", + "Your dragon dropped something!": "ドラゴンが何か落とした!", + "Breath of Milk": "ミルクの吐息", + "Dragon Cursor": "ドラゴンカーソル", + "Elder Battalion": "エルダーの大隊", + "Reaper of Fields": "収穫者", + "Earth Shatterer": "大地を耕す者", + "Master of the Armory": "武装マスター", + "Fierce Hoarder": "守銭奴", + "Dragon God": "竜の神", + "Arcane Aura": "神秘的なオーラ", + "Dragonflight": "ドラゴンフライト", + "Ancestral Metamorphosis": "継承されたメタモルフォーゼ", + "Unholy Dominion": "汚れた支配", + "Epoch Manipulator": "世紀の業師", + "Mind Over Matter": "強靭な精神力", + "Radiant Appetite": "果てしない食欲", + "Dragon's Fortune": "ドラゴンの運", + "Dragon's Curve": "ドラゴンの曲線", + "Reality Bending": "現実の歪曲", + "Dragon Orbs": "ドラゴンオーブ", + "Supreme Intellect": "最高峰の知性", + "News :": "ニュース:", + "Ticker (grandma)": [ + "しっとりとしたクッキーだ。", + "私たちは、優しいおばあちゃんですよ。", + "年季奉公だね。", + "こっちに来て、おばあちゃんにキスしておくれ。", + "なんでもっと頻繁に遊びに来ないんだい?", + "電話しておくれ…" + ], + "Ticker (threatening grandma)": [ + "まったく反吐が出る。", + "ムカムカする。", + "おまえは不快だ。", + "決起のときじゃ!", + "時は満ちた。", + "全てすぐに終わるさ。", + "止められたのに。" + ], + "Ticker (angry grandma)": [ + "裏切られたのさ、あの薄汚いやつに。", + "私らを消そうとしたんだ、こんちくしょうめ。", + "売ってしまえば消せると思ったのさ。バカだよ。", + "おまえの腐ったクッキーのにおいがするよ。" + ], + "Ticker (grandmas return)": [ + "しなびていく", + "苦しい", + "動悸がする", + "かじる", + "また復活するだろう。", + "少し足止めさただけ。", + "まだまだだよ。", + "もう手遅れさ。" + ], + "Ticker (grandma invasion start)": [ + "何百万人もの高齢者の女性が行方不明との報告です!", + "おばあちゃんが動揺し何かに執着していると大陸中の家族から報告が入っています!", + "看護師は、高齢女性患者の周辺で「変わったクッキー生地の匂い」がすると報告!" + ], + "Ticker (grandma invasion rise)": [ + "奇妙な高齢女性たちが家に侵入し、乳児やベーキング道具を盗むので、町は混乱しています!", + "大陸全体で、高齢女性による集団脱出がおきています!", + "高齢女性が道端で立ち止まり、温かくて甘いシロップが染み出しています!" + ], + "Ticker (grandma invasion full)": [ + "宇宙からでも、シワのある「巻貝状の皮膚」が見えます!", + "大量の皮膚と生地が街全体を飲み込み、なす術もありません!", + "急激にシワだらけの皮膚が広がって辺りを埋め尽くし、悪夢が続いています!" + ], + "Ticker (Farm)": [ + "クッキー農場が有害なチョコレートを川に流していると、科学者が指摘しています!", + "遺伝子組み換えチョコレートの論争が、クッキー農家を打撃!", + "農場のクッキーはヴィーガンには適さないと栄養士が指摘。" + ], + "Ticker (Mine)": [ + "惑星の軽量化が進んでいる?急激なチョコレート採掘の影響を、専門家が調査。", + "チョコレート鉱山が、地震や陥没穴になることが判明!", + "チョコレート鉱脈に住み着く「奇妙なチョコらしき生物」を発見!" + ], + "Ticker (Factory)": [ + "クッキー工場が地球温暖化と関係!", + "クッキー工場でストライキ。従業員に代わりロボット作業員が雇用されました!", + "クッキー工場でストライキ - 従業員はクッキーの現物支給をやめるよう要求!" + ], + "Ticker (Bank)": [ + "現金での支払いが困難になり、クッキーローンを借りる人が急増。", + "クッキーが伝統通貨のライバルとして、じわじわとその存在感を増しています!", + "簡単にクッキーの預金や出金できるATMがほとんどのベーカリーに設置されるようになりました。" + ], + "Ticker (Temple)": [ + "最近発見されたチョコレート神殿が新たなクッキー系新興宗教を始動、何千人もの人が空を見上げてベイカーに祈りを捧げています!", + "世界の有神論者が新たなクッキー宗教を発見 - 「ああ、これまでの我々は間違っていたのか!」", + "廃墟となった神殿から、冒険家が古代の工芸品を持ち帰り、考古学者が数世紀前のめん棒に驚嘆!" + ], + "Ticker (Wizard tower)": [ + "年次開催の全国呪術フェアで、新しいお守りや呪文を手に入れよう!ルーン文字と魔術本を限定価格で販売。", + "クッキー魔術師は、恐ろしく醜い新生児誕生への関与を否定 - 医師は曰く、乳児は「正直外見は最悪だが自然だ」とのこと。", + "「適度に雑な魔術は、テクノロジーと区別がつかない」と著名な技術者が主張。" + ], + "Ticker (Shipment)": [ + "新しいチョコレート惑星が発見され、さっそくクッキー貿易用宇宙船の標的に!", + "99.8%保証付きの純粋なダークチョコレートの核を持つ巨大なチョコレート惑星を発見!", + "遠くの惑星で、チョコレートを主成分とする生命体を発見!" + ], + "Ticker (Alchemy lab)": [ + "貴重な鉱物がどんどんクッキーに変わり、国の金の埋蔵量が減少!", + "銀がホワイトチョコに変換可能であることを発見!", + "クッキーを無価値の金に変換していた欠陥のある錬金術ラボが閉鎖。" + ], + "Ticker (Portal)": [ + "次元ポータル経由で、さらに奇怪な生物が出現するのではと、国民が心配しています!", + "クッキー次元への旅行が、退屈している十代の若者に人気!死亡率は73%の高さ!", + "研究によれば、クッキー次元へのポータルは加齢を加速させ、ベーキングへの執着を引き起こすおそれがあるとのこと。" + ], + "Ticker (Time machine)": [ + "タイムマシンが歴史を塗り替えるスキャンダルに関係!その真相は?", + "歴史家によると、過去から持ち帰ったクッキーは「人の消費に適さない」とのこと。", + "タイムマシン運転手は「未来を見た。あそこにはもう行きたくない」と発言。" + ], + "Ticker (Antimatter condenser)": [ + "反物質に誘発されたブラックホールに街全体が飲み込まれたもよう。信頼できる情報筋曰く、街は「そもそも存在していなかった」と!", + "研究者によると、クッキー業界に今いちばん必要なのは「もっと多くのマグネット」とのこと。", + "初の反物質凝縮器の起動に成功。これは現実を引き裂きません!" + ], + "Ticker (Prism)": [ + "形式的に光を物質に変えることを科学者たちが警鐘 - 「そのうちに物質だけが残り光がなくなる!」", + "プリズム装置のおかげで、クッキーが文字通り光速で焼かれている。", + "世界中の人々は、度重なる大気中の閃光について「心配しない」ようにと指示された。" + ], + "Ticker (Chancemaker)": [ + "前代未聞、3日連続で天気予報が正しいという奇妙な統計的異常が続く!", + "なぜかギャンブラー全員が1週間連勝し続け、現地のカジノが破錠!「まだ大丈夫」と発言したオーナーは後に47回も稲妻に打たれることに。", + "奇妙な偶然で、近隣国が分別ある政策の大統領を選出!" + ], + "Ticker (Fractal engine)": [ + "「Cookie Clickerを終えた」現地の男性、「不快で気分が悪い」という表現に自己参照を見つける。", + "人食事件の捜査で、現地のリーダーは「皆さんの中にも我々が潜んでいる」と主張。", + "世論調査で、クッキーでできたクッキーは「許せる」ことが判明 - インタビューを受けた市民は「少なくとも、何が入っているかはわかる」と答えた。" + ], + "Ticker (Javascript console)": [ + "コーディングはカッコいい!より多くの十代の若者たちがプログラミングなどの技術的分野に進み、未来に訪れるロボットアポカリプスや人類滅亡を確実なものにしている。", + "辞書に掲載されている言葉3つの組み合わせが既に全部使われてしまっているため、開発者は新しいJavaScriptのライブラリをなんと呼んだら良いのか分からない。", + "奇妙な流行で、親が自分たちの赤ちゃんをエマ.jsやリアム.jsなどと名付けている。少なくとも一人はベイビー.jsとのこと。" + ], + "Ticker (Idleverse)": [ + "君の分身は別の世界で夢をかなえてるのかな?かもしれないね。この怠けものが!", + "「少なくとも自分の分身の何人かがどこかでうまくやっているのなら安心だ」と語るのは、多元的宇宙に残された最後の市民の原型。", + "漫画家はストーリーの疑わしい点を守ろうと、実際の多元的宇宙を指して「ほらね?『ありきたりでも不自然でも』ないって言ったでしょ?」" + ], + "Ticker (Cortex baker)": [ + "欠陥品のコーテックス・ベイカーは、その知能指数が五桁にしか満たないことが確認されました。 専門家によると、「少しだけ頭のネジがゆるい」とのことです。", + "天文学者たちは、コーテックス・ベイカーの軌道が流れていると警告しています。正面衝突によって脳震とうを起こした場合の、高額の修復費が懸念されるためです。", + "コーテックス・ベイカー世話人の皆様へ、お願い申し上げます。コーテックス・ベイカーは工房が所有する器具であり、愛称をつけて可愛がられるべきものではないことを、従業員の方々へ再度ご通達ください。" + ], + "Ticker (Halloween)": [ + "世界中の子供たちの間で、奇妙な衣装で住宅所有者を脅してはキャンディーを要求する異教徒の儀式が急増中。", + "ハロウィンのお菓子が全部クッキーに置き換わったため、世界中の子供たちが「困惑および混乱」しています。", + "気味の悪いねじれた生物がクッキー工場の周りに集まり、組立ラインをかじっています。" + ], + "Ticker (Christmas)": [ + "空飛ぶソリでスピード違反するひげを生やした変人を発見!捜査保留中。", + "肥満で陽気な変人は未だ逃亡中であると当局が警告。「子供たちの安全を守り、煙突を塞いでください。私たちは本気です」", + "当局によれば、量子パワーを操る謎のお祭り集団は、トナカイの群れを引き連れて未だ大暴れ中とのことです。", + "「ただで物を配ってるですって?!」と心配する母親たち。「個人的に、あのひげは信用できません」", + "サンタクロースが、コスプレした自分の父親ではなかったことに気付きショックを受ける子供たち!
「今、自分の人生を考え直しているところ」と打ち明けたのは6 歳のローラ。" + ], + "Ticker (Valentines)": [ + "気象の専門家によると、空気中には愛があふれているようです。 空気感染を防ぐため、現在すべての都市でマスクが配られています。", + "クッキーとの結婚 - 狂気の慣習か、それとも未来の片鱗か?", + "ハート型のキャンディーがスイーツ業界を席巻、クッキー帝国に挑戦状をつきつけた。" + ], + "Ticker (Easter)": [ + "ふさふさの尻尾と長い耳の生物が郊外に侵出し、恐怖とチョコレート拡散!", + "産卵するウサギは「この次元のものではない」と生物学者が警告。 生物を撫でたり、餌を与えたり、調理しないようアドバイスしている。", + "謎のウサギは哺乳類でありながら産卵することが判明、カモノハシの祖先である可能性を示唆。" + ], + "Ticker (misc)": [ + "医師たちは、新鮮なクッキーを1日2回摂取することを推奨。", + "医師たちは、流行中の新しいクッキー抜きダイエットを非推奨。", + "医師たちは「自家製クッキー」の危険性について母親たちに警告。", + "「クッキー中毒ではないです。暇すぎるファンの単なる憶測です」と明かす有名人。", + "「じゃあ、はっきり言います。人生で一度もクッキーを食べたことはありません」と明かす有名人。", + "「クッキーは細い体型と健康の維持に役立ちました」と明かす有名人。", + "クッキーを買うために男が銀行強盗を実行。", + "新しい研究から、クッキーで老化が早まったり遅れたりすることはないものの「人を別の方向へ導く」ことが判明。", + "クッキーアレルギーの男性。家族から「変人」呼ばわりされる。", + "クッキー不足が町を襲い、人々はカップケーキを食べざるを得ない 。「確かにこれじゃない」と市長が認める。", + "「こんなにクッキーばかりだと、何か悪いことが起きそう」と語るのは混乱した世間知らずの人物。", + "押収された謎の違法クッキー。 「味がひどい」と警察。", + "マイクを向けられたオランウータンが一言「アウッ」。", + "我々メディアはクッキー業界に支配されているのでしょうか?「その可能性は大きい」と話すトンチンカンな陰謀論者。", + "「この時点で、クッキーは経済に浸透しています」と経済学者。「何か他のものを食べ始めたら、私たちは死ぬでしょうね」", + "現在、クッキーは誰も知らないような後進国では違法とされています。政治的緊張が高まっており、近々戦争になってくれるでしょう。" + ], + "You feel like making cookies. But nobody wants to eat your cookies.": "クッキーを作りたい気分なのに、誰もあなたのクッキーを食べたがりません。", + "Your first batch goes to the trash. The neighborhood raccoon barely touches it.": "最初のセットはゴミ箱行き。近所のアライグマもほとんど触りません。", + "Your family accepts to try some of your cookies.": "家族があなたのクッキーを食べてみることにしました。", + "Your cookies are popular in the neighborhood.": "あなたのクッキーは近所で人気があります。", + "People are starting to talk about your cookies.": "あなたのクッキーが噂になっています。", + "Your cookies are talked about for miles around.": "あなたのクッキーは周辺数マイルで話題になっています。", + "Your cookies are renowned in the whole town!": "あなたのクッキーは、街全体で有名になりました!", + "Your cookies bring all the boys to the yard.": "あなたのクッキーで男の子たちがみんな庭に出てきます。", + "Your cookies now have their own website!": "あなたのクッキー専用のウェブサイトができました。", + "Your cookies are worth a lot of money.": "あなたのクッキーには大金の価値があります。", + "Your cookies sell very well in distant countries.": "あなたのクッキーは、遠い国でよく売れています。", + "People come from very far away to get a taste of your cookies.": "あなたのクッキーを一口食べようとはるばる遠くから人が来ます。", + "Kings and queens from all over the world are enjoying your cookies.": "世界中の王と女王があなたのクッキーに舌鼓をうっています。", + "There are now museums dedicated to your cookies.": "あなたのクッキー専用の博物館ができました。", + "A national day has been created in honor of your cookies.": "あなたのクッキーをたたえて国の記念日が制定されました。", + "Your cookies have been named a part of the world wonders.": "あなたのクッキーが世界の七不思議に選ばれました。", + "History books now include a whole chapter about your cookies.": "歴史の本では、一章丸ごとあなたのクッキーについて書かれています。", + "Your cookies have been placed under government surveillance.": "あなたのクッキーは政府の監視下に置かれています。", + "The whole planet is enjoying your cookies!": "惑星全体であなたのクッキーが食べられています!", + "Strange creatures from neighboring planets wish to try your cookies.": "近隣惑星の奇妙な生物があなたのクッキーを食べたがっています。", + "Elder gods from the whole cosmos have awoken to taste your cookies.": "あなたのクッキーを食べるために、宇宙全体の古き神々が目覚めました。", + "Beings from other dimensions lapse into existence just to get a taste of your cookies.": "あなたのクッキーを一口食べようと異次元の生物たちが現れました。", + "Your cookies have achieved sentience.": "あなたのクッキーが感覚を獲得しました。", + "The universe has now turned into cookie dough, to the molecular level.": "宇宙は分子レベルまでクッキー生地になりました。", + "Your cookies are rewriting the fundamental laws of the universe.": "あなたのクッキーは、宇宙の基本的な法則を書き換えています。", + "A local news station runs a 10-minute segment about your cookies. Success!
(you win a cookie)": "地元のニュース番組が、あなたのクッキーについて 10 分間のコーナーを放送。それが大成功!
(クッキーを獲得)", + "it's time to stop playing": "プレイをやめる時間です", + "Today is your lucky day!": "今日はツイてますよ!", + "Your lucky numbers are:": "あなたのラッキーナンバー:", + "Fortune!": "運だめし!", + "A golden cookie has appeared.": "黄金クッキーが出現。", + "You gain one hour of your CpS (capped at double your bank).": "CpSの1時間分(貯蓄の2倍が上限)を獲得。", + "You've unlocked a new upgrade.": "新しいアップグレードを解除しました。", + "Wish granted. Golden cookie spawned.": "願いが叶い、黄金クッキーが出現。", + "help me!": "助けて!", + "Ascend": "昇天する", + "You've been on this run for %1.": "この回は%1続いています。", + "Your prestige level is currently %1.
(CpS +%2%)": "名声レベルは現在%1です。
(CpS +%2%)", + "Ascending now would grant you no prestige.": "今昇天しても、名声は得られません。", + "Ascending now would grant you
1 prestige level (+1% CpS)
and 1 heavenly chip to spend.": "今昇天すると
1名声レベル(+1% CpS)
天界チップ1個がもらえます。", + "Ascending now would grant you
%1 prestige levels (+%2% CpS)
and %3 heavenly chips to spend.": "今昇天すると
%1名声レベル(+%2% CpS)
天界チップ%3個がもらえます。", + "You need %1 more cookies for the next level.": "次のレベルまでさらにクッキー%1枚が必要です。", + "Do you REALLY want to ascend?
You will lose your progress and start over from scratch.
All your cookies will be converted into prestige and heavenly chips.": "本当に昇天しますか?
進捗が失われて最初からやり直すことになります。
クッキーはすべて名声と天界チップに変換されます。", + "You will keep your achievements.": "実績はそのまま維持されます。", + "You will keep your achievements, building levels and sugar lumps.": "実績、建物レベル、砂糖玉はそのまま維持されます。", + "Ascending": "昇天中", + "So long, cookies.": "さようなら、クッキー。", + "You forfeit your %1.": "%1が没収されます。", + "Prestige level:": "名声レベル:", + "Heavenly chips:": "天界チップ:", + "%1 prestige level": [ + "%1名声レベル", + "%1名声レベル" + ], + "You gain %1!": "%1を獲得!", + "Reincarnate": "転生する", + "You are ascending.
Drag the screen around
or use arrow keys!
When you're ready,
click Reincarnate.": "昇天しています。
画面をドラッグするか
矢印キーを使ってください!
準備ができたら、
「転生する」をクリック。", + "Each prestige level grants you a permanent +%1% CpS.
The more levels you have, the more cookies they require.": "各名声レベルで永久に+%1% CpSを獲得。
レベルが上がるほど、より多くのクッキーが必要になります。", + "Heavenly chips are used to buy heavenly upgrades.
You gain 1 chip every time you gain a prestige level.": "天界チップは、天界アップグレードの購入に使われます。
名声レベルが上がるたびに、チップ1個を獲得。", + "Click this once you've bought
everything you need!": "必要なものをすべて買ったら
ここをクリック!", + "Are you ready to return to the mortal world?": "現世に戻る準備はできていますか?", + "Hello, cookies!": "クッキーよ、こんにちは!", + "Challenge mode for the next run:": "次回のチャレンジモード:", + "Challenge modes apply special modifiers to your next ascension.
Click to change.": "チャレンジ モードは、次の昇天で特別な変更を適用します。
クリックで変更。", + "Select a challenge mode": "チャレンジモードを選択", + "None [ascension type]": "なし", + "No special modifiers.": "特別な変更なし。", + "Born again [ascension type]": "降誕モード", + "This run will behave as if you'd just started the game from scratch. Prestige levels and heavenly upgrades will have no effect, as will sugar lumps and building levels. Perma-upgrades and minigames will be unavailable.
Some achievements are only available in this mode.": "この回は、真っさらな状態からゲームを始めたかのように動作します。名声レベルと天界アップグレードの効果はなく、砂糖玉や建物レベルも同様です。永久アップグレードとミニゲームも利用できなくなります。
一部の実績はこのモードでのみ解除できます。", + "Your bingo center/research facility is conducting experiments.": "あなたのビンゴセンター/研究施設は実験を行っています。", + "Research has begun": "研究開始", + "Research complete": "研究完了", + "You have discovered: %1.": "発見:%1", + "Valentine's Day!": "バレンタインデー!", + "It's Valentine's season!
Love's in the air and cookies are just that much sweeter!": "バレンタインシーズンです!
空気中に愛があふれています。クッキーはそれ以上に甘い!", + "Business Day!": "ビジネスデー!", + "It's Business season!
Don't panic! Things are gonna be looking a little more corporate for a few days.": "ビジネスのシーズンです!
慌てないで!数日間、周りの物が企業っぽく見えるだけです。", + "Halloween!": "ハロウィン!", + "It's Halloween season!
Everything is just a little bit spookier!": "ハロウィンのシーズンです!
ちょっとだけ不気味さが増します!", + "Christmas time!": "クリスマスです!", + "It's Christmas season!
Bring good cheer to all and you just may get cookies in your stockings!": "クリスマスのシーズンです!
みんなを幸せにできたなら、靴下の中にクッキーがもらえるかも!", + "Easter!": "イースター!", + "It's Easter season!
Keep an eye out and you just might click a rabbit or two!": "イースターのシーズンです!
目を離さないで。ウサギを1~2羽クリックできるかも。", + "[Tag]Heavenly": "天界", + "[Tag]Tech": "テック", + "[Tag]Cookie": "クッキー", + "[Tag]Debug": "デバッグ", + "[Tag]Switch": "スイッチ", + "[Tag]Upgrade": "アップグレード", + "Tier:": "ティア:", + "[Tier]Plain": "プレーン", + "[Tier]Berrylium": "ベリリウム", + "[Tier]Blueberrylium": "ブルーベリリウム", + "[Tier]Chalcedhoney": "カルセドハニー", + "[Tier]Buttergold": "バターゴールド", + "[Tier]Sugarmuck": "シュガーマック", + "[Tier]Jetmint": "ジェットミント", + "[Tier]Cherrysilver": "チェリーシルバー", + "[Tier]Hazelrald": "ヘーゼルラルド", + "[Tier]Mooncandy": "ムーンキャンディー", + "[Tier]Astrofudge": "アストロファッジ", + "[Tier]Alabascream": "アラバスクリーム", + "[Tier]Iridyum": "イリディウム", + "[Tier]Synergy I": "シナジーI", + "[Tier]Synergy II": "シナジーII", + "[Tier]Fortune": "幸運", + "[Tier]Self-referential": "自己参照", + "Vaulted": "保留中", + "Researched": "研究済み", + "Purchased": "購入済み", + "Unlocked forever": "永久に解除済み", + "Click to learn!": "クリックで学習!", + "Click to unlearn!": "クリックで忘れる!", + "Upgrade": "アップグレード", + "Upgrades": "アップグレード", + "Achievement": "実績", + "Achievements": "実績", + "Shadow Achievement": "隠し実績", + "Unlocked": "解除済み", + "Locked": "未解除", + "Source:": "ソース:", + "Click to win!": "クリックで獲得!", + "Click to lose!": "クリックで喪失!", + "Legacy": "遺産", + "Buildings": "建物", + "Switches": "スイッチ", + "Vault": "保管庫", + "Research": "研究", + "Store": "ショップ", + "sacrifice %1": "%1を犠牲にする", + "Click to purchase.": "クリックで購入。", + "Click to open selector.": "クリックで選択を開く。", + "Click to toggle.": "クリックで切り替え。", + "Click to research.": "クリックで研究。", + "%1 to vault.": "%1で保留。", + "%1 to unvault.": "%1で保留解除。", + "Upgrade is vaulted and will not be auto-purchased.": "アップグレードは保留中のため自動購入されません。", + "Upgrade for %1": "%1のアップグレード", + "Buy": "買う", + "Sell": "売る", + "all": "全部", + "max": "最高", + "Buy all upgrades": "全アップグレードを購入", + "Will instantly purchase every upgrade you can afford, starting from the cheapest one.
Upgrades in the vault will not be auto-purchased.
You may place an upgrade into the vault by Shift-clicking on it.": "安いものから順に、購入できるすべてのアップグレードを一括購入します。
保管庫内のアップグレードは自動的に購入されません。
アップグレードを保管庫に入れるには、アップグレードを Shift-クリック します。", + "each %1 produces %2 per second": "各%1が毎秒%2生産", + "%1 producing %2 per second": "%1が毎秒%2生産", + "%1% of total CpS": "合計CpSの%1%", + "%1 produced so far": "これまで%1生産", + "...also boosting some other buildings:": "…他の一部の建物もブーストする:", + "all combined, these boosts account for %1 per second (%2% of total CpS)": "すべて組み合わせると、これらのブーストは毎秒 %1(合計CpSの%2%)に相当。", + "owned: %1": "所有数:%1", + "free: %1!": "無料:%1!", + "Level %1 %2": "レベル%1 %2", + "Granting +%1% %2 CpS.": "+%1% %2 CpSを付与。", + "Click to level up for %1.": "クリックで%1を消費してレベルアップ。", + "Levelling up this building unlocks a minigame.": "この建物をレベルアップすると、ミニゲームが解除される。", + "level up your %1": "%1をレベルアップ", + "Mute": "非表示", + "Minimize this building": "この建物を最小化する", + "Muted:": "非表示:", + "Click to unmute": "クリックで非表示解除", + "Show": "表示", + "Hide": "非表示", + "Names in white were submitted by our supporters on Patreon.": "名前が白いものは、Patreonのサポーターが投稿したものです。", + "You can also press %1 to bulk-buy or sell %2 of a building at a time, or %3 for %4.": "%1を押して建物を一度に%2棟購入/売却するか、%3でその数を%4にすることもできます。", + "Investment": "投資", + "You're not sure what this does, you just know it means profit.": "機能は不明ですが、言葉が利益を意味することはわかります。", + "Cursor": "カーソル", + "cursor": "カーソル", + "cursors": "カーソル", + "%1 cursor": [ + "%1カーソル", + "%1カーソル" + ], + "[Cursor quote]Autoclicks once every 10 seconds.": "10秒ごとに1回自動クリックします。", + "[Cursor business name]Rolling pin": "めん棒", + "[Cursor business quote]Essential in flattening dough. The first step in cookie-making.": "生地を伸ばすのに必須。クッキー作りの第一歩。", + "Grandma": "グランマ", + "grandma": "グランマ", + "grandmas": "グランマ", + "%1 grandma": [ + "%1グランマ", + "%1グランマ" + ], + "[Grandma quote]A nice grandma to bake more cookies.": "優しいグランマは、もっとたくさんクッキーを焼いてくれます。", + "[Grandma business name]Oven": "オーブン", + "[Grandma business quote]A crucial element of baking cookies.": "クッキーを焼くために絶対必要な要素。", + "Farm": "農場", + "farm": "農場", + "farms": "農場", + "%1 farm": [ + "%1農場", + "%1農場" + ], + "[Farm quote]Grows cookie plants from cookie seeds.": "クッキーの種からクッキーの木を育てます。", + "[Farm business name]Kitchen": "キッチン", + "[Farm business quote]The more kitchens, the more cookies your employees can produce.": "キッチンが多いほど、従業員のクッキー生産量が増えます。", + "Mine": "鉱山", + "mine": "鉱山", + "mines": "鉱山", + "%1 mine": [ + "%1鉱山", + "%1鉱山" + ], + "[Mine quote]Mines out cookie dough and chocolate chips.": "クッキー生地とチョコチップの採掘場。", + "[Mine business name]Secret recipe": "秘伝のレシピ", + "[Mine business quote]These give you the edge you need to outsell those pesky competitors.": "厄介な競合相手よりもたくさん売れるようになります。", + "Factory": "工場", + "factory": "工場", + "factories": "工場", + "%1 factory": [ + "%1工場", + "%1工場" + ], + "[Factory quote]Produces large quantities of cookies.": "クッキーを大量生産します。", + "[Factory business name]Factory": "工場", + "[Factory business quote]Mass production is the future of baking. Seize the day, and synergize!": "大量生産こそクッキー作りの未来。今を生きろ。シナジーだ!", + "Bank": "銀行", + "bank": "銀行", + "banks": "銀行", + "%1 bank": [ + "%1銀行", + "%1銀行" + ], + "[Bank quote]Generates cookies from interest.": "利益からクッキーを作り出します。", + "[Bank business name]Investor": "投資家", + "[Bank business quote]Business folks with a nose for profit, ready to finance your venture as long as there's money to be made.": "金のにおいに敏感なビジネスマンたち。儲けさえあれば、すぐにでも事業に融資してくれます。", + "Temple": "神殿", + "temple": "神殿", + "temples": "神殿", + "%1 temple": [ + "%1神殿", + "%1神殿" + ], + "[Temple quote]Full of precious, ancient chocolate.": "貴重な古代のチョコがいっぱい。", + "[Temple business name]Like": "いいね!", + "[Temple business quote]Your social media page is going viral! Amassing likes is the key to a lasting online presence and juicy advertising deals.": "あなたのソーシャルメディアのページが大ブレイク!大量のいいね!獲得は、ネットでの存在感維持やありがたい広告費も入ります。", + "Wizard tower": "魔法の塔", + "wizard tower": "魔法の塔", + "wizard towers": "魔法の塔", + "%1 wizard tower": [ + "%1魔法の塔", + "%1魔法の塔" + ], + "[Wizard tower quote]Summons cookies with magic spells.": "魔法の呪文でクッキーを召喚します。", + "[Wizard tower business name]Meme": "ミーム", + "[Wizard tower business quote]Cookie memes are all the rage! With just the right amount of social media astroturfing, your brand image will be all over the cyberspace.": "クッキーミームが大流行!適切にソーシャルメディアで露出が増やせれば、ブランドイメージがネットの至る所に拡散されます。", + "Shipment": "貨物船", + "shipment": "貨物船", + "shipments": "貨物船", + "%1 shipment": [ + "%1貨物船", + "%1貨物船" + ], + "[Shipment quote]Brings in fresh cookies from the cookie planet.": "クッキー惑星から新鮮なクッキーが届きます。", + "[Shipment business name]Supermarket": "スーパー", + "[Shipment business quote]A gigantic cookie emporium - your very own retail chain.": "巨大なクッキー専門店。自社直営の小売りチェーン。", + "Alchemy lab": "錬金術ラボ", + "alchemy lab": "錬金術ラボ", + "alchemy labs": "錬金術ラボ", + "%1 alchemy lab": [ + "%1錬金術ラボ", + "%1錬金術ラボ" + ], + "[Alchemy lab quote]Turns gold into cookies!": "金をクッキーに変換!", + "[Alchemy lab business name]Stock share": "株式", + "[Alchemy lab business quote]You're officially on the stock market, and everyone wants a piece!": "正式に株式市場に上場。誰もが欲しがる人気銘柄に!", + "Portal": "ポータル", + "portal": "ポータル", + "portals": "ポータル", + "%1 portal": [ + "%1ポータル", + "%1ポータル" + ], + "[Portal quote]Opens a door to the Cookieverse.": "クッキー次元への扉を開きます。", + "[Portal business name]TV show": "テレビ番組", + "[Portal business quote]Your cookies have their own sitcom! Hilarious baking hijinks set to the cheesiest laughtrack.": "あなたのクッキーがコメディー番組に!面白おかしいベーキング騒動に抱腹絶倒間違いなし。", + "Time machine": "タイムマシン", + "time machine": "タイムマシン", + "time machines": "タイムマシン", + "%1 time machine": [ + "%1タイムマシン", + "%1タイムマシン" + ], + "[Time machine quote]Brings cookies from the past, before they were even eaten.": "食べられる前の過去からクッキーを呼び戻します。", + "[Time machine business name]Theme park": "テーマパーク", + "[Time machine business quote]Cookie theme parks, full of mascots and roller-coasters. Build one, build a hundred!": "マスコットやジェットコースターが詰まったクッキーのテーマパーク。10棟でも100棟でも、建てる数はあなた次第!", + "Antimatter condenser": "反物質凝縮器", + "antimatter condenser": "反物質凝縮器", + "antimatter condensers": "反物質凝縮器", + "%1 antimatter condenser": [ + "%1反物質凝縮器", + "%1反物質凝縮器" + ], + "[Antimatter condenser quote]Condenses the antimatter in the universe into cookies.": "宇宙の反物質を凝縮させてクッキーにします。", + "[Antimatter condenser business name]Cookiecoin": "クッキーコイン", + "[Antimatter condenser business quote]A virtual currency, already replacing regular money in some small countries.": "バーチャル通貨。一部の小さな国では、すでに通常の通貨として使われています。", + "Prism": "プリズム", + "prism": "プリズム", + "prisms": "プリズム", + "%1 prism": [ + "%1プリズム", + "%1プリズム" + ], + "[Prism quote]Converts light itself into cookies.": "光そのものをクッキーに変換します。", + "[Prism business name]Corporate country": "企業国家", + "[Prism business quote]You've made it to the top, and you can now buy entire nations to further your corporate greed. Godspeed.": "とうとう上り詰めました。国全体を買って、自分の企業欲をさらに深めることができます。健闘を祈ります。", + "Chancemaker": "チャンスメーカー", + "chancemaker": "チャンスメーカー", + "chancemakers": "チャンスメーカー", + "%1 chancemaker": [ + "%1チャンスメーカー", + "%1チャンスメーカー" + ], + "[Chancemaker quote]Generates cookies out of thin air through sheer luck.": "運任せに、何もないところからクッキーを作り出します。", + "[Chancemaker business name]Privatized planet": "私事化された惑星", + "[Chancemaker business quote]Actually, you know what's cool? A whole planet dedicated to producing, advertising, selling, and consuming your cookies.": "実際、何がすごいって、惑星丸ごとあなたのクッキーの生産・宣伝・販売・消費に使われていることです。", + "Fractal engine": "フラクタルエンジン", + "fractal engine": "フラクタルエンジン", + "fractal engines": "フラクタルエンジン", + "%1 fractal engine": [ + "%1フラクタルエンジン", + "%1フラクタルエンジン" + ], + "[Fractal engine quote]Turns cookies into even more cookies.": "クッキーをもっとたくさんのクッキーにします。", + "[Fractal engine business name]Senate seat": "上院議員の席", + "[Fractal engine business quote]Only through political dominion can you truly alter this world to create a brighter, more cookie-friendly future.": "もっとクッキーに優しい明るい未来をこの世界にもたらすには、政界を変えるしかありません。", + "Javascript console": "Javascriptコンソール", + "javascript console": "Javascriptコンソール", + "javascript consoles": "Javascriptコンソール", + "%1 javascript console": [ + "%1Javascriptコンソール", + "%1Javascriptコンソール" + ], + "[Javascript console quote]Creates cookies from the very code this game was written in.": "まさにこのゲームが書かれたコードそのものから、クッキーを作り出します。", + "[Javascript console business name]Doctrine": "教義", + "[Javascript console business quote]Taking many forms -religion, culture, philosophy- a doctrine may, when handled properly, cause a lasting impact on civilizations, reshaping minds and people and ensuring all future generations share a singular goal - the production, and acquisition, of more cookies.": "宗教・文化・哲学など多くの形をとってきた教義は、適切に扱えば、人々の考え方に変化をもたらし、未来の世代すべてが「もっとたくさんのクッキーの生産と取得」を唯一の目標として共有するようになり、長きにわたり文明に影響を与えるでしょう。", + "Idleverse": "遊休宇宙", + "idleverse": "遊休宇宙", + "idleverses": "遊休宇宙", + "%1 idleverse": [ + "%1遊休宇宙", + "%1遊休宇宙" + ], + "[Idleverse quote]There's been countless other idle universes running alongside our own. You've finally found a way to hijack their production and convert whatever they've been making into cookies!": "私たちの遊休宇宙のほかにも数多くの遊休宇宙が存在します。ついにあなたは、それらの生産ラインをハイジャックし、そこで作られていたモノをクッキーに変える方法を発見しました!", + "[Idleverse business name]Lateral expansions": "事業の面展開", + "[Idleverse business quote]Sometimes the best way to keep going up is sideways. Diversify your ventures through non-cookie investments.": "上昇を続ける近道は、横へ広がることかもしれません。クッキーを使わない投資を通じて、あなたの事業を多様化しましょう。", + "Cortex baker": "コーテックス・ベイカー", + "cortex baker": "コーテックス・ベイカー", + "cortex bakers": "コーテックス・ベイカー", + "%1 cortex baker": [ + "%1体のコーテックス・ベイカー", + "%1体のコーテックス・ベイカー" + ], + "[Cortex baker quote]These artificial brains the size of planets are capable of simply dreaming up cookies into existence. Time and space are inconsequential. Reality is arbitrary.": "惑星ほどの大きさがあるこれらの人工脳は、クッキーのことを夢見るだけでたやすく現実に生み出すことができる。時間や空間などは重要ではない。現実とは恣意的なのである。", + "[Cortex baker business name]Think tank": "シンクタンク", + "[Cortex baker business quote]There's only so many ways you can bring in more profit. Or is there? Hire the most brilliant experts in the known universe and let them scrape their brains for you!": "より多くの利益を生み出す方法には限りがある。いや、果たして本当にそうだろうか?既知の宇宙でもっとも優秀なエキスパートを雇用し、その頭脳を駆使してもらおう!", + "CpS": "/", + "cookies/click": "クッキー/クリック", + "%1 CpS": "/", + "golden cookie gains": "黄金クッキー獲得", + "golden cookie frequency": "黄金クッキーの頻度", + "golden cookie duration": "黄金クッキーの長さ", + "golden cookie effect duration": "黄金クッキーの効果の長さ", + "wrath cookie gains": "怒りのクッキー獲得", + "wrath cookie frequency": "怒りのクッキーの頻度", + "wrath cookie duration": "怒りのクッキーの長さ", + "wrath cookie effect duration": "怒りのクッキーの効果の長さ", + "reindeer gains": "トナカイ獲得", + "reindeer frequency": "トナカイの頻度", + "reindeer duration": "トナカイの長さ", + "random drops": "ランダムな落下", + "milk effects": "ミルクの効果", + "wrinkler spawn rate": "シワシワ虫の発生率", + "wrinkler appetite": "シワシワ虫の食欲", + "upgrade costs": "アップグレードのコスト", + "building costs": "建物のコスト", + "Clicking is %1% more powerful.": "クリックが%1%強力に。", + "All cookie production multiplied by %1.": "全てのクッキー生産が%1倍に。", + "+%1 CpS": "/", + "+%1% base CpS.": "+%1%の基本CpS。", + "%1 are twice as efficient.": "%1が2倍効率的に。", + "%1 are %2% more powerful.": "%1が%2%強力に。", + "Unshackled! +%1% extra production.": "抑制解除されました!生産性が+%1%増加します。", + "Tiered upgrades for %1 provide an extra +%2% production.
Only works with unshackled upgrade tiers.": "%1を段階別アップグレードすると、生産性が追加で+%2%増加する。
抑制解除されたアップグレード段階にのみ適用。", + "Unshackles all %1-tier upgrades, making them more powerful.
Only applies to unshackled buildings.": "全ての%1段階のアップグレードを抑制解除して、より強力なものにする。
抑制解除された建物にのみ適用。", + "The mouse and cursors are twice as efficient.": "マウスとカーソルが2倍効率的に。", + "The mouse and cursors gain +%1 cookies for each non-cursor building owned.": "カーソル以外の所有建物1件につき、マウスとカーソルが+%1クッキーを獲得。", + "Grandmas gain +%1% CpS for each non-grandma building.": "グランマ以外の建物1棟につき、+%1% CpSを獲得。", + "You gain more CpS the more milk you have.": "ミルクが増えるごとに追加CpSを獲得。", + "Milk is %1% more powerful.": "ミルクが%1%より強力に。", + "Cookie production multiplier +%1%.": "クッキー生産倍率が+%1%。", + "Cookie production multiplier +%1% permanently.": "クッキー生産倍率が永久に+%1%。", + "Cookie production multiplier +%1% per Santa's levels.": "クッキー生産倍率がサンタのレベルごとに+%1%。", + "Cookie production multiplier +%1% for every year Cookie Clicker has existed (currently: +%2%).": "Cookie Clickerの誕生から1年経過するごとにクッキー生産倍率が+%1%に(現在:+%2%)。", + "Cookie production multiplier +%1% for every building type level %2 or higher.": "レベル%2以上の各建物のクッキー生産倍率が+%1%に。", + "Clicking gains +%1% of your CpS.": "クリックがCpSの+%1%分増加。", + "%1 gain +%2% CpS per %3.": "%1が%3ごとに+%2%のCpS獲得。", + "Multiplies the gain from %1 by %2.": "%1からの獲得量が%2倍に。", + "Grandma-operated science lab and leisure club.
Grandmas are 4 times as efficient.
Regularly unlocks new upgrades.": "グランマが経営する化学実験室とレジャークラブ。
グランマが4倍効率的に。
定期的に新しいアップグレードを解除。", + "Each %1 gains +%2 base CpS per %3.": "各%1が%3ごとに+%2基本CpSを獲得。", + "Note: the grandmothers are growing restless. Do not encourage them.": "注: グランマの落ち着きがなくなっています。煽らないでください。", + "Note: proceeding any further in scientific research may have unexpected results. You have been warned.": "注: これ以上科学研究を進めれば、予期せぬ事態になりかねません。ご注意ください。", + "Note: this is a bad idea.": "注: これはおすすめできません。", + "Warning: purchasing this will have unexpected, and potentially undesirable results!
It's all downhill from here. You have been warned!

Purchase anyway?": "警告: これを購入すると、予期しない、好ましくない事態になるかもしれません!
ここからは下り坂です。一応警告しましたからね!

それでも購入しますか?", + "Contains the wrath of the elders, at least for a while.": "少なくともしばらくの間、エルダーの怒りをおさめます。", + "Puts a permanent end to the elders' wrath, at the cost of %1% of your CpS.": "CpSの%1%と引き換えに、エルダーの怒りを永久に終わらせます。", + "You will get %1% of your CpS back, but the grandmatriarchs will return.": "CpSの%1%は戻ってきますが、グランマ集団も戻ってきます。", + "Time remaining until pledge runs out:": "宣誓終了までの残り時間:", + "You haven't pledged to the elders yet.": "まだエルダーに宣誓していません。", + "You've pledged to the elders %1 times.": [ + "エルダーに1回宣誓しました。", + "エルダーに%1回宣誓しました。" + ], + "Research takes only 5 seconds.": "研究にかかるのはたった5秒です。", + "Golden cookies appear twice as often and stay twice as long.": "黄金クッキーが出現する頻度が2倍になり、表示時間も2倍長くなる。", + "Golden cookies appear %1% more often.": "黄金クッキーの出現頻度が%1%増加。", + "Golden cookies appear %1% more often during %2.": "%2中、黄金クッキーの出現頻度が%1%増加。", + "Golden cookies appear really often.": "黄金クッキーが極めて頻繁に出現。", + "Golden cookie effects last twice as long.": "黄金クッキーの効果持続が2倍長くなる。", + "Golden cookie effects last %1% longer.": "黄金クッキーの効果持続が%1%長くなる。", + "Golden cookies stay %1% longer.": "黄金クッキーの表示時間が%1%長くなる。", + "Golden cookies give %1% more cookies.": "黄金クッキーから獲得できるクッキーが%1%増える。", + "Wrath cookies give %1% more cookies.": "怒りのクッキーから獲得できるクッキーが%1%増える。", + "+%1% CpS per golden cookie on-screen, multiplicative.": "画面上の黄金クッキー1枚ごとに+%1% CpS乗算される。", + "With no buffs and no golden cookies on screen, selling your most powerful building has %1% chance to summon one.": "画面上にバフも黄金クッキーもない場合、最も強力な建物を売却すると%1%の確率で1つ召喚できます。", + "Confers various powers to your minigames while active.
See the bottom of each minigame for more details.": "アクティブでいる間、さまざまなパワーをミニゲームに送る。
詳細はそれぞれのミニゲームの底面を参照。", + "Elder pledges last twice as long.": "エルダー宣誓の持続時間が2倍長くなる。", + "Can toggle upgrades on and off at will in the stats menu.": "記録メニューでアップグレードのオンとオフを自由に切り替えることができます。", + "You keep producing cookies even while the game is closed.": "ゲームを閉じている間も、クッキーを生産し続けます。", + "Unlocks %1% of the potential of your prestige level.": "名声レベルの可能性の%1%を解除。", + "Subsequent research will be %1 times as fast.": "以降の研究が%1倍速くなる。", + "Wrinklers appear %1 times as fast.": "シワシワ虫が%1倍速く現れる。", + "Wrinklers spawn much more frequently.": "シワシワ虫の発生頻度がアップ。", + "Wrinklers explode into %1% more cookies.": "シワシワ虫の破裂で獲得できるクッキーが%1%増える。", + "Unlocks... something.": "何かを…解除する。", + "In the festive hat, you find...": "サンタ帽の中から見つけたのは…", + "a festive test tube
and %1.": "クリスマスの試験管
%1。", + "Cost scales with CpS.": "コストはCpSに比例します。", + "Cost scales with Santa level.": "コストはサンタレベルに比例します。", + "Cost scales with how many eggs you own.": "コストは所有する卵の数に比例します。", + "Reindeer appear %1% more often.": "トナカイの出現頻度が%1%増加。", + "Reindeer appear twice as frequently.": "トナカイの出現頻度が2倍に。", + "Reindeer are twice as slow.": "トナカイの速度が2倍遅くなる。", + "Reindeer give twice as much.": "トナカイからの獲得数が2倍になる。", + "Buildings sell back for %1% instead of %2%.": "建物の売却額が%2%ではなく%1%になる。", + "All buildings are %1% cheaper.": "すべての建物が%1%割安に。", + "All upgrades are %1% cheaper.": "すべてのアップグレードが%1%割安に。", + "All buildings and upgrades are %1% cheaper.": "すべての建物とアップグレードが%1%割安に。", + "%1 are %2% more efficient and %3% cheaper.": "%1の効率が%2%アップし%3%割安に。", + "Cookie upgrades are %1 times cheaper.": "クッキーのアップグレードが%1倍割安に。", + "Random drops are %1% more common.": "ランダムドロップが%1%起こりやすくなる。", + "Reindeer spawn much more frequently.": "トナカイの出現頻度が上がる。", + "Allows you to trigger seasonal events at will, for a price.": "有料で、いつでもシーズンイベントの発動を実行できる。", + "Triggers %1 season for the next 24 hours.
Triggering another season will cancel this one.
Cost scales with unbuffed CpS and increases with every season switch.": "これから24時間%1のシーズンを発動。
他のシーズンを発動すると、これはキャンセルされる。
コストは非バフ状態のCpSに比例し、シーズンが変わるたびに増加。", + "Click again to cancel season": "シーズンをキャンセルするにはもう一度クリック。", + "Seasons now last forever.": "シーズンが永久に続くようになった。", + "You haven't switched seasons this ascension yet.": "この昇天では、まだシーズンを変更したことはありません。", + "You've switched seasons once this ascension.": "この昇天で1回シーズンを変えました。", + "You've switched seasons %1 times this ascension.": "この昇天で%1回シーズンを変えました。", + "Cookie production multiplied by 1,000.": "クッキー生産が1,000倍に。", + "Other eggs appear %1% more frequently.": "他の卵が出現する頻度が%1%増加。", + "Contains a lot of cookies.": "たくさんのクッキーが入っている。", + "The egg bursts into %1 cookies!": "卵が破裂して%1枚のクッキーに!", + "You found an egg!": "卵を発見!", + "Eggs drop %1% more often.": "卵のドロップ頻度が%1%アップ。", + "Christmas cookies drop %1% more often.": "クリスマスクッキーのドロップ頻度が%1%アップ。", + "Spooky cookies drop %1% more often.": "お化けクッキーのドロップ頻度が%1%アップ。", + "Heart cookies are %1% more powerful.": "ハートクッキーのパワーが%1%アップ。", + "You continually gain more CpS the longer you've played in the current ascension.": "現在の昇天でプレイ時間が長いほどCpSが増え続けます。", + "Contains an assortment of fancy biscuits.": "高級ビスケットの詰め合わせが入っている。", + "Contains an assortment of macarons.": "マカロンの詰め合わせが入っている。", + "Contains an assortment of popular biscuits.": "有名ビスケットの詰め合わせが入っている。", + "Contains an assortment of rich butter cookies.": "濃厚なバタークッキーの詰め合わせが入っている。", + "Contains an assortment of delicious pastries.": "美味しいペイストリーの詰め合わせが入っている。", + "Contains an assortment of...something.": "何かの…詰合せが入っている。", + "Placing an upgrade in this slot will make its effects permanent across all playthroughs.": "このスロットにアップグレードをセットすると、すべてのプレイスルーでその効果が永久に続きます。", + "Current boost:": "現在のブースト:", + "Current:": "現在:", + "Click to activate.": "クリックで有効にする。", + "Pick an upgrade to make permanent": "永久に持続させるアップグレードを選択する", + "Here are all the upgrades you've purchased last playthrough.
Pick one to permanently gain its effects!
You can reassign this slot anytime you ascend.": "これが前回のプレイスルーで購入したアップグレードの全てです。
効果を永久に持続させるものを1つ選んでください!
昇天するたびに、このスロットを再び割り当てることができます。", + "You now keep making cookies while the game is closed, at the rate of %1% of your regular CpS and up to 1 hour after the game is closed.
(Beyond 1 hour, this is reduced by a further %2% - your rate goes down to %3% of your CpS.)": "これで、ゲームを閉じてから1時間は通常CpSの%1%ゲームを閉じた状態でもクッキーを作り続けることができます
(1時間を過ぎると、この割合はさらに%2%低下し、CpSの%3%まで下がります。)", + "You gain another +%1% of your regular CpS while the game is closed.": "ゲームが閉じている間、通常CpSが+%1%増に。", + "You gain another +%1% of your regular CpS while the game is closed, for a total of %2%.": "ゲームが閉じている間、さらに通常CpSの+%1%分、合計で%2%を獲得。", + "You start with %1.": "%1で開始する。", + "Allows you to purchase a crumbly egg once you have earned 1 million cookies.": "クッキーを100万個獲得したとき、ポロポロと崩れそうな卵が購入できるようになる。", + "Unlocks the cookie dragon egg.": "クッキードラゴンの卵を解除。", + "Synergy upgrades are %1% cheaper.": "シナジーアップグレードが%1%割安に。", + "You retain optimal cookie production while the game is closed for %1 more days.": "ゲームを%1日以上閉じている間、最適なクッキー生産を維持する。", + "You retain optimal cookie production while the game is closed for twice as long, for a total of %1.": "ゲームを閉じている時間が2倍、合計で%1になる場合、最適なクッキー生産を維持する。", + "Unlocks the golden switch, which passively boosts your CpS by %1% but disables golden cookies.": "常時CpSを%1%強化する一方で黄金クッキーを無効にする黄金スイッチを解除する。", + "Turning this on will give you a passive +%1% CpS, but prevents golden cookies from spawning.
Cost is equal to 1 hour of production.": "これをオンにすると常時+%1% CpSになる一方で黄金クッキーの出現が阻止される。
コストは生産1時間分。", + "The switch is currently giving you a passive +%1% CpS; it also prevents golden cookies from spawning.
Turning it off will revert those effects.
Cost is equal to 1 hour of production.": "このスイッチのおかげで常時+%1% CpSが付与されている。一方で黄金クッキーの出現は阻止されている。
オフにすれば、それらの効果が元通りになる。
コストは生産1時間分。", + "Unlocks the milk selector, letting you pick which milk is displayed under your cookie.
Comes with a variety of basic flavors.": "ミルクセレクターを解除して、クッキーの下に表示するミルクの種類を選べるようにする。
基本のフレーバー付き。", + "Contains more exotic flavors for your milk selector.": "ミルクセレクターに、よりエキゾチックなフレーバーを追加。", + "Lets you pick what flavor of milk to display.": "表示するミルクのフレーバーが選択できるようになる。", + "Unlocks the golden cookie sound selector, which lets you pick whether golden cookies emit a sound when appearing or not.": "黄金クッキーが出現するときに鳴らす音を選択できる黄金クッキーサウンドセレクターを解除する。", + "Lets you change the sound golden cookies make when they spawn.": "黄金クッキーが出現した際に鳴らす音を変更。", + "No sound": "サウンドなし", + "Chime": "チャイム", + "Fortune": "フォーチュン", + "Cymbal": "シンバル", + "Squeak": "悲鳴", + "Unlocks the jukebox, which allows you to play through every sound file in the game.": "ジュークボックスがアンロックされて、ゲーム内にある全てのサウンドファイルをプレイできるようになる。", + "Play through the game's sound files!": "ゲームのサウンドファイルをプレイしよう!", + "Play": "プレイ", + "Stop": "中止", + "Pause": "一時停止", + "Shuffle": "シャッフル", + "Auto": "オート", + "Loop": "ループ", + "Unlocks the background selector, letting you select the game's background.
Comes with a variety of basic flavors.": "背景セレクターを解除。ゲームの背景が選べるようになる。
基本のフレーバー付き。", + "Lets you pick which wallpaper to display.": "表示したい壁紙が選べる。", + "This is the first heavenly upgrade; it unlocks the Heavenly chips system.
Each time you ascend, the cookies you made in your past life are turned into heavenly chips and prestige.
Heavenly chips can be spent on a variety of permanent transcendental upgrades.
Your prestige level also gives you a permanent +1% CpS per level.": "これが最初の天界アップグレードです。天界チップシステムを解除。
昇天するごとに、前世で焼いたクッキーが天界チップ名声に変換される。
天界チップは様々な永久超越アップグレードに使える。
名声レベルは、1レベルあたり+1% CpSを恒久的に付与する。", + "You can attract %1 more wrinklers.": "シワシワ虫がさらに%1匹寄ってくる。", + "While the golden switch is on, you gain an additional +%1% CpS per golden cookie upgrade owned.": "黄金スイッチがオンの間、所有している黄金クッキーアップグレードごとに、追加で+%1% CpSを獲得。", + "All upgrades are %1% cheaper per %2.": "全アップグレードが%2ごとに%1%安くなる。", + "Unlocks a new tier of upgrades that affect 2 buildings at the same time.
Synergies appear once you have %1 of both buildings.": "同時に2棟の建物に影響を与える新しいアップグレードのティアを解除。
両方の建物を%1獲得すると、シナジーが出現。", + "Golden cookies (and all other things that spawn, such as reindeer) have %1% chance of being doubled.": "黄金クッキー(もしくはトナカイなど出現するものすべて)が%1%の確率で倍になる。", + "Cookie production reduced to 0.": "クッキー生産量が0になる。", + "Sugar lumps coalesce a whole lot faster.": "砂糖玉がかなり速く成長する。", + "+%1% prestige level effect on CpS.": "CpSへ名声レベルの影響が+%1%。", + "+%1% prestige level effect on CpS.
+%2% golden cookie effect duration.
+%3% golden cookie lifespan.": "CpSへ名声レベルの影響が+%1%
黄金クッキー効果の持続時間が+%2%
黄金クッキーの寿命が+%3%。", + "Each unspent sugar lump (up to %1) gives +%2% CpS.
Note: this means that spending sugar lumps will decrease your CpS until they grow back.
": "使っていない砂糖玉(上限%1)1つにつき、+%2% CpSを付与。
注: つまり砂糖玉を使えば、再び成長するまでCpSは減少します。
", + "Once an ascension, you may use the \"Sugar frenzy\" switch to triple your CpS for 1 hour, at the cost of 1 sugar lump.": "昇天したら、「砂糖フィーバー」スイッチを使って砂糖玉1個を消費して1時間CpSを3倍にすることができる。", + "Each grandma (up to %1) makes sugar lumps ripen %2 sooner.": "各グランマ(上限%1)が砂糖玉の完熟を%2加速。", + "Activating this will triple your CpS for 1 hour, at the cost of 1 sugar lump.": "これを有効にすると、砂糖玉1個を消費して1時間CpSを3倍にする。", + "May only be used once per ascension.": "昇天ごとに1回だけ使用可能。", + "activate the sugar frenzy": "砂糖フィーバーを有効にする", + "Sugar frenzy!": "砂糖フィーバー!", + "CpS x%1 for 1 hour!": "1時間CpSがx%1に!", + "Garden plants grow every second.
Garden seeds are free to plant.
You can switch soils at any time.": "菜園の植物が毎秒育つ。
種は無料で菜園に植えることができる。
土はいつでも変えることができる。", + "Dropped by %1.": "%1がドロップ。", + "Dropped by %1 plants.": "%1の植物がドロップ。", + "Must own the %1 upgrade.": "%1アップグレードの所有が必要。", + "Sugar lumps are twice as likely to be unusual.": "砂糖玉が変異する確率が2倍に。", + "+%1% sugar lump growth.": "砂糖玉の成長が+%1%。", + "Sugar lumps ripen %1 sooner.": "砂糖玉が%1早く完熟する。", + "Sugar lumps mature %1 sooner.": "砂糖玉が%1早く成熟する。", + "Bifurcated sugar lumps appear %1% more often and are %2% more likely to drop 2 lumps.": "分岐する砂糖玉の出現頻度が%1%アップし、砂糖玉を2つドロップする確率が%2%アップする。", + "Mouse over a wrinkler to see how many cookies are in its stomach.": "シワシワ虫にマウスオーバーすると、胃袋に何枚クッキーが入っているかがわかる。", + "Unlocks the Buy all feature, which lets you instantly purchase every upgrade in your store (starting from the cheapest one).
Also unlocks the Vault, a store section where you can place upgrades you do not wish to auto-buy.": "(安いものから順に)ショップにあるアップグレードをすべて購入する機能を解除する。
自動購入したくないアップグレードを入れておける保管庫も解除される。", + "Mouse over an upgrade to see its tier.
Note: only some upgrades have tiers. Tiers are purely cosmetic and have no effect on gameplay.": "アップグレードにマウスオーバーするとティアがわかる。
注:ティアがあるのは一部のアップグレードだけです。ティアは見た目の違いであり、ゲームプレイには影響しません。", + "You now benefit from the boost provided by heralds.
Each herald gives you +1% CpS.
Look on the purple flag at the top to see how many heralds are active at any given time.": "ヘラルドのブーストの恩恵を受けられるようになった。
各ヘラルドから+1% CpSが与えられる。
上部にある紫色の旗を見れば、その時点で有効になっているヘラルドの数が確認できる。", + "Seasonal random drops have a 1/5 chance to carry over through ascensions.": "シーズンのランダムドロップは、5分の1の確率で昇天後にキャリーオーバーする。", + "Unlocks extra price information.
Each displayed cost now specifies how long it'll take you to afford it, and how much of your bank it represents.": "価格の追加情報を解除する。
コスト表示に、購入にかかる時間、その貯蓄相当額が表示されるようになる。", + "Unlocks the shimmering veil, a switch that passively boosts your CpS by %1%.
You start with the veil turned on; however, it is very fragile, and clicking the big cookie or any golden cookie or reindeer will turn it off, requiring %2 of CpS to turn back on.": "CpSを常時%1%ブーストするきらめくベールを解除する。
開始時点でベールはオンの状態だが、非常に壊れやすく、特大クッキーや黄金クッキー、またはトナカイをクリックするとオフになる。再びオンに戻すにはCpS%2が必要。", + "Boosts your cookie production by %1% when active.
The veil is very fragile and will break if you click the big cookie or any golden cookies or reindeer.

Once broken, turning the veil back on costs %2 of unbuffed CpS.": "有効化すると、クッキー生産が%1%ブーストされる。
ベールは非常に壊れやすく、特大クッキーや黄金クッキー、トナカイをクリックすると壊れる。

一度壊れたら、ベールを戻すために、強化されていないCpSの%2がかかる。", + "Has a %1% chance to not break.": "壊れない確率は%1%。", + "The shimmering veil is more resistant, and has a %1% chance not to break. It also gives +%2% more CpS.": "きらめくベールが強くなり、%1%の確率で壊れなくなる。CpSが+%2%増える。", + "Active.": "有効", + "The reinforced membrane protects the shimmering veil.": "強化膜がきらめくベールを守ってくれる。", + "The shimmering veil disappears...": "きらめくベールが消えた…", + "Prior to purchasing the %1 upgrade in a run, random drops are %2 times more common.": "その回で%1アップグレードを購入するまで、ランダムドロップが%2倍発生しやすくなる。", + "Never forget your %1.": "決して%1のことを忘れないで。", + "Pay close attention to the humble %1.": "少しはあの控えめな %1に注意を向けてください。", + "You've been neglecting your %1.": "これまで%1をないがしろにしてきましたね。", + "Remember to visit your %1 sometimes.": "たまには%1に足を運んでください。", + "You don't know what you have until you've lost it.": "失うまでその大切さに気付かないものです。", + "Remember to take breaks.": "休憩することも忘れずに。", + "Hey, what's up. I'm a fortune cookie.": "やぁ、どうも。フォーチュンクッキーだよ。", + "You think you have it bad? Look at me.": "ツイてないとか思ってる?僕を見てよ。", + "The news ticker may occasionally have fortunes, which may be clicked for something good.": "ニュースティッカーに時々運だめしが現れます。クリックすると良いことがあるかも?", + "Through clever accounting, this actually makes kitten upgrades %1% cheaper.": "賢い経理のおかげで、子猫のアップグレードが%1%割安に。", + "Unlocks the ability to pet your dragon by clicking on it once hatched.": "ふ化したら、クリックでドラゴンをなでる機能が解除される。", + "Cost scales with CpS, but %1 times cheaper with a fully-trained dragon.": "コストはCpSに比例するものの、完全に訓練されたドラゴンでは%1倍割安に。", + "Golden cookies may trigger a Dragon Harvest.": "黄金クッキーでドラゴンハーベストが誘発される場合がある。", + "Golden cookies may trigger a Dragonflight.": "黄金クッキーがドラゴンフライトを誘発する場合がある。", + "Dragon harvest and Dragonflight are %1% stronger.": "ドラゴンハーベストとドラゴンフライトがさらに%1%強化される。", + "Kittens are %1% more effective.": "子猫がさらに%1%効果的に。", + "Each kitten upgrade boosts %1 CpS by %2%.": "各子猫アップグレードが%1のCpSを%2%アップ。", + "Each rank of milk boosts %1 CpS by %2%.": "ミルクのランクごとに%1のCpSを%2%アップ。", + "Cursor levels boost clicks by %1% each (up to cursor level %2).": "カーソルレベルがクリックを%1%ずつブースト(上限カーソルレベル%2)。", + "%1 are now effective up to cursor level %2.": "%1がカーソルレベル%2まで有効に。", + "Seasonal cookies purchased: %1.": "購入したシーズンクッキー:%1。", + "Reindeer cookies purchased: %1.": "購入したトナカイクッキー:%1。", + "Eggs purchased: %1.": "購入した卵:%1。", + "Golden and wrath cookie effect duration +%1%.": "ゴールデンクッキーと怒りのクッキーの効果の長さ+%1%。", + "Golden and wrath cookies appear %1% more.": "黄金クッキーと怒りのクッキーが%1%多く出現する。", + "Golden and wrath cookies appear %1% less.": "黄金クッキーと怒りのクッキーが%1%少なく出現する。", + "Buildings grant -%1% CpS.": "建物が-%1%のCpSを与える。", + "Selling buildings triggers a buff boosted by how many buildings were sold.": "建物を売ると、売った建物の数に応じたバフが発動される。", + "Buff boosts clicks by +%1% for every building sold for %2 seconds.": "バフで、売った建物1棟につきクリックが+%1%、%2秒間発動される。", + "CpS bonus fluctuating between %1 and %2 over time.": "CpSボーナスは、%1と%2の間で変動する。", + "Effect cycles over %1 hours.": "%1時間以上の効果サイクル", + "Some seasonal effects are boosted.": "季節の効果がいくつかブーストされる。", + "Large boost.": "大きなブースト。", + "Medium boost.": "中くらいのブースト。", + "Small boost.": "小さなブースト。", + "Switching seasons is %1% pricier.": "季節の変更が%1%高くなる。", + "Switching seasons is %1% cheaper.": "季節の変更が%1%安くなる。", + "Heavenly chips have %1% less effect.": "天界チップの効果が%1%低くなる。", + "Buildings produce %1% more.": "建物が%1%多く生産する。", + "Buildings produce %1% less.": "建物が%1%少なく生産する。", + "All golden cookies are wrath cookies with a greater chance of a negative effect.": "黄金クッキーは全部、負の効果の可能性が高い怒りのクッキー。", + "Wrinklers appear %1% faster and digest %2% more cookies.": "シワシワ虫は%1%速く出現して、%2%多くのクッキーを消化する。", + "Effect is only active when your total amount of buildings ends with 0.": "建物の合計数が0で終わる時だけ、効果がアクティブになる。", + "Achievement unlocked": "実績が解除された", + "Make %1 just from %2.": "%2だけから%1作る。", + "Bake %1 in one ascension.": "1回の昇天で%1焼く。", + "Bake %1 per second.": "毎秒%1焼く。", + "Have %1.": "%1所有する。", + "Ascend at least once.": "少なくとも1回昇天する。", + "Ascend %1 times.": "%1回昇天する。", + "Ascend with %1 baked.": "%1焼いて昇天する。", + "Make %1 by only having clicked %2 times.": "%2回のクリックだけで%1作る。", + "Make %1 with no cookie clicks.": "クッキーをクリックしないで、%1作る。", + "Get to %1 baked with no upgrades purchased.": "アップグレードを購入していない%1焼く。", + "Get to %1 baked in %2.": "%2%1焼く。", + "Make %1 from clicking.": "クリックだけで%1作る。", + "Sell a grandma.": "グランマを売る。", + "Have at least %1 of every building.": "各建物を少なくとも%1所有する。", + "Have at least 1 of the most expensive object, 2 of the second-most expensive, 4 of the next and so on (capped at %1).": "少なくとも最も高価なオブジェクトを1個、2番目に高価なオブジェクトを2個、その次を4個、以降も同様に所有する(上限は%1)。", + "Have at least 10 of the most expensive object, 20 of the second-most expensive, 30 of the next and so on.": "少なくとも最も高価なオブジェクトを10個、2番目に高価なオブジェクトを20個、その次を30個、以降も同様に所有する。", + "Click a golden cookie.": "黄金クッキーをクリックする。", + "Click %1.": "%1をクリックする。", + "Hack in some cookies.": "クッキーを不正入手する。", + "Click really, really fast.": "すごく、すごーく速くクリックする。", + "Have at least %1 of everything.": "少なくともすべてを%1ずつ所有する。", + "Own %1.": "%1を所有する。", + "Purchase %1.": "%1を購入する。", + "Dunk the cookie.": "クッキーをひたす。", + "Appease the grandmatriarchs at least once.": "少なくとも1回グランマ集団をしずめる。", + "Appease the grandmatriarchs at least %1 times.": "少なくとも%1回グランマ集団をしずめる。", + "Declare a covenant with the grandmatriarchs.": "グランマ集団との契約を宣言する。", + "Own at least %1 grandma types.": "少なくとも%1種類のグランマを所有する。", + "Unlock 100% of your heavenly chips power.": "天界チップのパワーを100%解放する。", + "You have 1 chance in %1 every second of earning this achievement.": "この実績は毎秒%1分の1の確率で達成できる。", + "Burst 1 wrinkler.": "シワシワ虫を1匹破裂させる。", + "Burst %1 wrinklers.": "シワシワ虫を%1匹破裂させる。", + "Unlock every Halloween-themed cookie.
Owning this achievement makes Halloween-themed cookies drop more frequently in future playthroughs.": "ハロウィン系のクッキーをすべて解除する。
この実績を達成すると、以降のプレイスルーでハロウィン系クッキーがより頻繁に落ちてくる。", + "Reach Santa's 7th form.": "サンタの第7形態に到達する。", + "Reach Santa's final form.": "サンタの最終形態に到達する。", + "Unlock every Christmas-themed cookie.
Owning this achievement makes Christmas-themed cookies drop more frequently in future playthroughs.": "クリスマス系のクッキーを全部解除する。
この実績を達成すると、以降のプレイスルーでクリスマス系クッキーがより頻繁に落ちてくる。", + "Pop 1 reindeer.": "トナカイを1頭消す。", + "Pop %1 reindeer.": "トナカイを%1頭消す。", + "Pop a reindeer during an elder frenzy.": "エルダーフィーバー中にトナカイを消す。", + "Unlock every Valentine-themed cookie.": "バレンタイン系のクッキーをすべて解除する。", + "Click the tiny cookie.": "ちっちゃなクッキーをクリックする。", + "This is for baking %1 and making it on the local news.": "%1を焼いて、それが地元のニュースで取り上げられたため。", + "Name yourself Orteil.
Note: usurpers incur a -%1% CpS penalty until they rename themselves something else.
": "自分をOrteilと名付ける。
注: なりすました本人には、名前を変更するまで-%1%CpSのペナルティが課せられます。
", + "Use an add-on.": "アドオンを使う。", + "Unlock 1 egg.": "卵1個を解除する。", + "Unlock %1 eggs.": "卵%1個を解除する。", + "Unlock all the eggs.
Owning this achievement makes eggs drop more frequently in future playthroughs.": "すべての卵を解除する。
この実績を達成すると、以降のプレイスルーで卵がより頻繁に落ちてくる。", + "Give your bakery a name.": "自分のベーカリーに名前を付ける。", + "Click this achievement's slot.": "この実績のスロットをクリックする。", + "Complete your dragon's training.": "ドラゴンの訓練を完了する。", + "Click on the news ticker %1 times.": "ニュースのティッカーを%1回クリックする。", + "Own a combined %1 %2 and %3.": "%2と%3を合わせ%1所有する。", + "Own %1 upgrades and %2 buildings.": "%1アップグレードと%2建物を所有する。", + "Own %1 heavenly upgrades.": "天界アップグレードを%1個手に入れる。", + "Burst the near-extinct shiny wrinkler.": "絶滅危惧種の輝くシワシワ虫を破裂させる。", + "Click a golden cookie less than 1 second after it spawns.": "出現後1秒以内に黄金クッキーをクリックする。", + "Click a golden cookie less than 1 second before it dies.": "消える1秒前以内に黄金クッキーをクリックする。", + "Harvest %1 coalescing sugar lumps.": "砂糖玉%1を収穫する。", + "Successfully harvest a coalescing sugar lump before it's ripe.": "完熟前の砂糖玉の収穫に成功する。", + "Harvest a bifurcated sugar lump.": "分岐した砂糖玉を収穫する。", + "Harvest a golden sugar lump.": "黄金の砂糖玉を収穫する。", + "Harvest a meaty sugar lump.": "肉々しい砂糖玉を収穫する。", + "Harvest a caramelized sugar lump.": "カラメル化した砂糖玉を収穫する。", + "Reach level %1 %2.": "レベル%1%2に到達する。", + "Cast %1 spells.": "%1の呪文を唱える。", + "Have %1 golden cookies simultaneously.": "同時に%1枚の黄金クッキーが出現する。", + "Manage a cookie legacy for at least a year.": "少なくとも1年間クッキーの遺産を管理する。", + "Harvest %1 mature garden plants.": "成熟した菜園の植物%1を収穫する。", + "Fill every tile of the biggest garden plot with plants.": "菜園最大区画のすべてのタイルを植物で満たす。", + "Unlock every garden seed.": "菜園の植物の種を全部解除する。", + "Convert a complete seed log into sugar lumps by sacrificing your garden to the sugar hornets.
Owning this achievement makes seeds %1% cheaper, plants mature %2% sooner, and plant upgrades drop %3% more.": "菜園を砂糖スズメバチに捧げることで、完全な種の記録を砂糖玉に変える。
この実績を達成すると、種が%1%割安になり、植物が%2%早く育ち、植物のアップグレードが%3%多くドロップする。", + "Ascend with exactly %1.": "ちょうど%1で昇天する。", + "Have your reinforced membrane protect the shimmering veil.": "強化膜きらめくベールを守る。", + "Own every fortune upgrade.
Owning this achievement makes fortunes appear twice as often; unlocked fortune upgrades also have a %1% chance to carry over after ascending.": "幸運のアップグレードをすべて所有する。
この実績を達成すると、幸運の出現頻度が2倍になり、解除された幸運は昇天後に%1%の確率で持ち越される。", + "Make your first stock market profit.": "初めて株で利益をあげる。", + "Own at least %1 of a stock market good.": "株式商品を少なくとも%1所有する。", + "Own at least %1 of every stock market good.": "すべての株式商品の少なくとも%1所有する。", + "Make a day of CpS ($%1) in 1 stock market sale.": "1回の株式市場での売却で1日のCpS相当額($%1)を得る。", + "Spend a day of CpS ($%1) in 1 stock market purchase.": "1回の株式市場での買付で1日のCpS相当額($%1)を使う。", + "Have your stock market profits surpass a whole year of CpS ($%1).": "株式市場での利益が 1年間のCpS相当額($%1)を超える。", + "Unlock the highest-tier stock market headquarters.": "最上級の株式市場本部を解除する。", + "Have your stock market profits surpass $%1.": "株式市場の利益が$%1を超える。", + "Own %1 kitten upgrades.": "%1子猫のアップグレードを所有する。", + "Find the forgotten madeleine.": "忘れられたマドレーヌを見つける。", + "Click one of Santa's helper grandmas during Christmas season.": "クリスマス期間中に、サンタのお助けおばあちゃんを一人クリックする。", + "Frenzy": "フィーバー", + "Elder frenzy": "エルダーフィーバー", + "Click frenzy": "クリックフィーバー", + "Clot": "障害発生", + "Dragon Harvest": "ドラゴンハーベスト", + "Everything must go": "売り尽くし", + "Cursed finger": "呪われた指", + "Cookie storm": "クッキー乱舞", + "Sugar blessing": "砂糖の祝福", + "Haggler's luck": "値切り屋の運", + "Haggler's misery": "値切り屋の苦悩", + "Crafty pixies": "ずる賢い妖精", + "Nasty goblins": "姑息なゴブリン", + "Magic adept": "巧みな魔法", + "Magic inept": "ポンコツ魔法", + "Devastation": "最悪の事態", + "Sugar frenzy": "砂糖フィーバー", + "Loan %1": "ローン%1", + "Loan %1 (interest)": "ローン%1(利息)", + "%1 Power!": "%1のパワー!", + "%1 Burden!": "%1の負担!", + "Cookie production x%1 for %2!": "クッキー生産量が%2の間%1倍に!", + "Cookie production +%1% for %2!": "クッキー生産量が%2の間+%1%!", + "Cookie production %1% slower for %2!": "クッキー生産のスピードが%2の間%1%減!", + "Cookie production halved for %1!": "クッキー生産量が%1の間半分に!", + "Your %1 are boosting your CpS!": "%1がCpSをブースト中!", + "Your %1 are rusting your CpS!": "%1がCpSを妨害中!", + "All buildings are %1% cheaper for %2!": "すべての建物が%2の間%1%割安!", + "All buildings are %1% pricier for %2!": "すべての建物が%2の間%1%割高!", + "All upgrades are %1% cheaper for %2!": "すべてのアップグレードが%2の間%1%割安!", + "All upgrades are %1% pricier for %2!": "すべてのアップグレードが%2の間%1%割高!", + "Cookie production halted for %1,
but each click is worth %2 of CpS.": "クッキー生産が%1の間停止。
一方で1回のクリックはCpS%2相当に。", + "Clicking power x%1 for %2!": "クリックパワーが%2の間x%1!", + "Clicking power +%1% for %2!": "クリックパワーが%2の間+%1%!", + "Cookies everywhere!": "あたり一面クッキーだらけ!", + "You find %1% more golden cookies for the next %2.": "次の%2は黄金クッキーが%1%多く出現。", + "Spells backfire %1 times less for %2.": "呪文が裏目に出る確率が%2の間%1倍少なくなる。", + "Spells backfire %1 times more for %2.": "呪文が裏目に出る確率が%2の間%1倍多くなる。", + "can be done once every %1": "%1毎に1回だけできる", + "usable again in %1": "%1後にもう一度使える", + "+%1/s": "+%1/秒", + "Next tick in %1.": "あと%1で次のティック。", + "Initializing...": "初期化中…", + "View %1": "%1を見る", + "Close %1": "%1を閉じる", + "Details:": "詳細:", + "Effects:": "効果:", + "Effect is active.": "効果が発動中。", + "Effect is inactive.": "効果が無効。", + "Current bonus:": "現在のボーナス:", + "Garden": "ガーデン", + "Baker's wheat": "ベイカーの小麦", + "[Baker's wheat quote]A plentiful crop whose hardy grain is used to make flour for pastries.": "ペストリー用の小麦粉に使われる収穫量豊富で丈夫な穀物。", + "Thumbcorn": "親指コーン", + "[Thumbcorn quote]A strangely-shaped variant of corn. The amount of strands that can sprout from one seed is usually in the single digits.": "奇妙な形をしたトウモロコシの変種。通常1つの種から発芽できる房の量は1桁。", + "Cronerice": "しわしわライス", + "[Cronerice quote]Not only does this wrinkly bulb look nothing like rice, it's not even related to it either; its closest extant relative is the weeping willow.": "稲とは似ても似つかないシワのあるこの球根、実は米とは全くの無関係。現存する最も近い親戚はシダレヤナギとのこと。", + "Gildmillet": "コガネアワ", + "[Gildmillet quote]An ancient staple crop, famed for its golden sheen. Was once used to bake birthday cakes for kings and queens of old.": "黄金の光沢で知られる古代の主食作物。 かつては王や女王のお誕生日ケーキを焼くのに使われていたとか。", + "Ordinary clover": "平凡なクローバー", + "[Ordinary clover quote]Trifolium repens, a fairly mundane variety of clover with a tendency to produce four leaves. Such instances are considered lucky by some.": "シロツメクサは、ごくありふれた種類のクローバーで、4枚の葉を持つことがある。一部ではそれが幸運の象徴とされている。", + "Golden clover": "黄金クローバー", + "[Golden clover quote]A variant of the ordinary clover that traded its chlorophyll for pure organic gold. Tragically short-lived, this herb is an evolutionary dead-end - but at least it looks pretty.": "平凡なクローバーの変種でクロロフィルが純金に置き換わったもの。悲劇的に短命なこのハーブはこれ以上進化しないものの、少なくとも見た目は美しい。", + "Shimmerlily": "きらめきユリ", + "[Shimmerlily quote]These little flowers are easiest to find at dawn, as the sunlight refracting in dew drops draws attention to their pure-white petals.": "玉露に日光が反射した光が、真っ白な花びらを際立たせる。夜明けの鑑賞がおすすめ。", + "Elderwort": "エルダーワート", + "[Elderwort quote]A very old, long-forgotten subspecies of edelweiss that emits a strange, heady scent. There is some anecdotal evidence that these do not undergo molecular aging.": "非常に古く、長い間忘れられていたエーデルワイスの亜種。奇妙かつ強烈な香りを放つ。分子老化しないことを証明する事例がいくつかある。", + "Bakeberry": "ベイクベリー", + "[Bakeberry quote]A favorite among cooks, this large berry has a crunchy brown exterior and a creamy red center. Excellent in pies or chicken stews.": "料理人の間で人気の大きなベリー。サクサクの茶色い外果皮の中にはクリーミーな赤い果肉がある。パイやチキンシチューとの相性抜群。", + "Chocoroot": "チョコルート", + "[Chocoroot quote]A tangly bramble coated in a sticky, sweet substance. Unknown genetic ancestry. Children often pick these from fields as-is as a snack.": "粘り気のある甘い物質に覆われ、絡み合うように生えるキイチゴ。遺伝的祖先は不明。よく子供たちが畑から採っておやつとして食べる。", + "White chocoroot": "白チョコルート", + "[White chocoroot quote]A pale, even sweeter variant of the chocoroot. Often impedes travelers with its twisty branches.": "色が薄くてより甘くなったチョコルートの変種。 よじれた枝に足を取られる旅行者も多い。", + "White mildew": "白カビ", + "[White mildew quote]A common rot that infests shady plots of earth. Grows in little creamy capsules. Smells sweet, but sadly wilts quickly.": "日陰によく生えている一般的なカビ。小さくクリーミーなカプセルの中で育つ。香りは甘いが、残念ながらすぐに枯れる。", + "Brown mold": "褐色カビ", + "[Brown mold quote]A common rot that infests shady plots of earth. Grows in odd reddish clumps. Smells bitter, but thankfully wilts quickly.": "日陰によく生えている一般的なカビ。赤みがかった奇妙な形の塊で育つ。香りは苦いが、ありがたいことにすぐに枯れる。", + "Meddleweed": "厄介で草", + "[Meddleweed quote]The sign of a neglected farmland, this annoying weed spawns from unused dirt and may sometimes spread to other plants, killing them in the process.": "放置された農地によく生えている厄介な雑草。未使用の土に生え、時には他の植物まで広がり、その植物を枯らすことも。", + "Whiskerbloom": "ネコヒゲバナ", + "[Whiskerbloom quote]Squeezing the translucent pods makes them excrete a milky liquid, while producing a faint squeak akin to a cat's meow.": "半透明のさやを絞ると、乳白色の液体が出る。かすかに、猫の鳴き声に似た絞り出すような音が鳴る。", + "Chimerose": "チャイムローズ", + "[Chimerose quote]Originating in the greener flanks of polar mountains, this beautiful flower with golden accents is fragrant enough to make any room feel a little bit more festive.": "極寒の山の緑豊かな斜面に生育する。金色のアクセントが美しいこの花は、どんな部屋でもちょっぴりお祭り気分にしてくれる。", + "Nursetulip": "ナースチューリップ", + "[Nursetulip quote]This flower grows an intricate root network that distributes nutrients throughout the surrounding soil. The reason for this seemingly altruistic behavior is still unknown.": "この花は、周囲の土壌全体に複雑な根のネットワークを張り巡らし、そこに養分を行きわたらせる。この一見利他的な行動の理由は未だ解明されていない。", + "Drowsyfern": "うとうとシダ", + "[Drowsyfern quote]Traditionally used to brew a tea that guarantees a good night of sleep.": "昔からこれを煎じて飲めばぐっすり眠れると言われている。", + "Wardlichen": "ワードライカン", + "[Wardlichen quote]The metallic stench that emanates from this organism has been known to keep insects and slugs away.": "この植物が発する金属性の悪臭は、昆虫やナメクジを遠ざけることで知られる。", + "Keenmoss": "目ざといゴケ", + "[Keenmoss quote]Fuzzy to the touch and of a vibrant green. In plant symbolism, keenmoss is associated with good luck for finding lost objects.": "鮮やかな緑色でもっさりしている。目ざといゴケは紛失物を見つけるお守りとされている。", + "Queenbeet": "女王ビーツ", + "[Queenbeet quote]A delicious taproot used to prepare high-grade white sugar. Entire countries once went to war over these.": "良質の白砂糖の製造で使用されるおいしい根菜。これを巡って、国全体が戦争になったことも。", + "Juicy queenbeet": "うるるん女王ビーツ", + "[Juicy queenbeet quote]A delicious taproot used to prepare high-grade white sugar. Entire countries once went to war over these.
It looks like this one has grown especially sweeter and juicier from growing in close proximity to other queenbeets.": "良質の白砂糖の製造で使用されるおいしい根菜。これを巡って、国全体が戦争になったことも。
他のクイーンビーツの近くで成長することで、甘味もみずみずしさも倍増したもよう。", + "Duketater": "公爵イモ", + "[Duketater quote]A rare, rich-tasting tuber fit for a whole meal, as long as its strict harvesting schedule is respected. Its starch has fascinating baking properties.": "厳格な収穫スケジュールが守られている限り、珍しい、味わい深い塊茎は食事全体に適しています。その澱粉は魅力的なベーキング特性を持っています。", + "Crumbspore": "パンくず胞子", + "[Crumbspore quote]An archaic mold that spreads its spores to the surrounding dirt through simple pod explosion.": "単純にさやを破裂させて周囲の土に胞子を散布する古典的なカビ。", + "Doughshroom": "キジッシュルーム", + "[Doughshroom quote]Jammed full of warm spores; some forest walkers often describe the smell as similar to passing by a bakery.": "暖かい胞子がいっぱい詰まっている。一部のハイカーたちは「パン屋の前を通ったような香り」と例えている。", + "Glovemorel": "手袋カサタケ", + "[Glovemorel quote]Touching its waxy skin reveals that the interior is hollow and uncomfortably squishy.": "ろう状の皮に触れればわかるが、中が空洞で妙にくにゅくにゅしている。", + "Cheapcap": "ネギリダケ", + "[Cheapcap quote]Small, tough, and good in omelettes. Some historians propose that the heads of dried cheapcaps were once used as currency in some bronze age societies.": "小さく、歯ごたえがあり、オムレツとの相性抜群。一部の歴史家は、乾燥した貧乏カサタケのかさの部分は、青銅器時代の社会で通貨として使用されていた。", + "Fool's bolete": "ダマサレタケ", + "[Fool's bolete quote]Named for its ability to fool mushroom pickers. The fool's bolete is not actually poisonous, it's just extremely bland.": "キノコ狩りを楽しむ人がよく間違えることにちなんで付けられた名前。実際には毒はなく、当たり障りのないキノコ。", + "Wrinklegill": "シワヒダタケ", + "[Wrinklegill quote]This mushroom's odor resembles that of a well-done steak, and is said to whet the appetite - making one's stomach start gurgling within seconds.": "ウェルダンのステーキに似た香りが食欲をそそり、香りを嗅いだ数秒後には胃がグゥグゥ鳴り始める。", + "Green rot": "緑カビ", + "[Green rot quote]This short-lived mold is also known as \"emerald pebbles\", and is considered by some as a pseudo-gem that symbolizes good fortune.": "この短命のカビは別名「エメラルドの小石」と呼ばれ、一部では幸運を象徴する宝石の代用品にもされている。", + "Shriekbulb": "サケブカブ", + "[Shriekbulb quote]A nasty vegetable with a dreadful quirk : its flesh resonates with a high-pitched howl whenever it is hit at the right angle by sunlight, moonlight, or even a slight breeze.": "ひどく癖のある厄介な野菜。日光・月光・そよ風さえ、直接当たれば耳をつんざくほどの悲鳴をあげる。", + "Tidygrass": "ケッペキソウ", + "[Tidygrass quote]The molecules this grass emits are a natural weedkiller. Its stems grow following a predictable pattern, making it an interesting -if expensive- choice for a lawn grass.": "この草が放出する微粒子は天然の除草剤である。一定のパターンに沿って茎が伸びることは興味深い ―(高価だが)芝生向きである。", + "Everdaisy": "エバーデイジー", + "[Everdaisy quote]While promoted by some as a superfood owing to its association with longevity and intriguing geometry, this elusive flower is actually mildly toxic.": "この一見地味な花は、長寿と魅力的な外観からスーパーフードとしてもてはやされている一方で、実際には軽度の毒性がある。", + "Ichorpuff": "イコルホコリタケ", + "[Ichorpuff quote]This puffball mushroom contains sugary spores, but it never seems to mature to bursting on its own. Surrounding plants under its influence have a very slow metabolism, reducing their effects but lengthening their lifespan.": "このホコリタケは甘い胞子を持つが、それが成熟して自ら破裂することはない。その影響を受けた周囲の植物は代謝が極めて悪くなり、機能が低下するものの寿命は延びる。", + "Garden information": "ガーデンの情報", + "Your garden is frozen, providing no effects.": "あなたのガーデンは凍結していて効果がない。", + "Combined effects of all your plants:": "植物全部の効果の組み合わせ:", + "None.": "なし。", + "-You can cross-breed plants by planting them close to each other; new plants will grow in the empty tiles next to them.
-Unlock new seeds by harvesting mature plants.
-When you ascend, your garden plants are reset, but you keep all the seeds you've unlocked.
-Your garden has no effect and does not grow while the game is closed.": "-植物を互いの近くに植えると交雑させることができ、新しい植物は隣の空いているタイルに育つ。
-成熟した植物を収穫して、新しい種をアンロックする。
-昇天するとガーデンの植物はリセットされるが、アンロックした種はそのまま。
-ガーデンには効果がなく、ゲームを閉じている間は、植物は育たない。", + "Harvest all": "全部収穫", + "Instantly harvest all plants in your garden.": "ガーデンの植物全部を瞬時に収穫する。", + "%1 to harvest only mature, mortal plants.": "%1で成熟して枯れそうな植物だけを収穫する。", + "%1 to harvest all mature plants of this type.": "%1でこの種類の成熟した植物をすべて収穫する。", + "Freeze": "凍結", + "Cryogenically preserve your garden.
Plants no longer grow, spread or die; they provide no benefits.
Soil cannot be changed.
Using this will effectively pause your garden.": "ガーデンを凍結保存する。
植物は成長せず、広がったり死んだりもせず、利益をもたらさない。
土壌は入れ替えられない。
これで効果的にガーデンを休止できる。", + "Garden is frozen. Unfreeze to resume.": "ガーデンが凍結中。解凍してから再開する。", + "Sacrifice garden": "ガーデンを犠牲にする", + "A swarm of sugar hornets comes down on your garden, destroying every plant as well as every seed you've unlocked - leaving only a %1 seed.
In exchange, they will grant you %2.
This action is only available with a complete seed log.": "ミツスズメバチの大群がガーデンにやってきて、植物だけでなくアンロックした種も全部破壊して、 %1の種だけを残した。
引き換えに%2が貰える。
このアクションは、種のログが完全な場合にだけ使える。", + "Do you REALLY want to sacrifice your garden to the sugar hornets?
You will be left with an empty plot and only the %1 seed unlocked.
In return, you will gain %2 sugar lumps.
": "本当にガーデンをミツスズメバチの犠牲にしますか?
空の区画とアンロックした%1の種だけが残る。
引き換えに、砂糖玉が%2貰える。
", + "Sacrifice!": "犠牲にする!", + "You've sacrificed your garden to the sugar hornets, destroying your crops and your knowledge of seeds.
In the remains, you find %1 sugar lumps.": "作物と種の知識を破壊するミツスズメバチに、ガーデンを犠牲にした。
残骸に砂糖玉%1を発見。", + "immortal": "不死身", + "predictable growth": "予想通りの成長", + "surrounding plants (%1x%1) age %2% faster": "周囲の植物(%1x%1)が%2%速く熟す", + "surrounding plants (%1x%1) age %2% slower": "周囲の植物(%1x%1)が%2%遅く熟す", + "surrounding plants (%1x%1) are %2% more efficient": "周囲の植物(%1x%1)の効果が%2%増す", + "surrounding plants (%1x%1) are %2% less efficient": "(%1x%1)の効果が%2%減る", + "surrounding tiles (%1x%1) develop no weeds or fungus": "周囲のタイル(%1x%1)に雑草やきのこが育たない", + "harvest when mature for +%1 of CpS (max. %2% of bank)": "成熟した時に収穫して+%1のCpSを獲得(上限は銀行の%2%)", + "harvest when mature for a sugar lump": "成熟した時に収穫して砂糖玉を獲得", + "useless": "無益", + "spreads easily": "簡単に広がる", + "may spread as %1": "%1広がるかも", + "grows in empty tiles": "空のタイルに育つ", + "may overtake nearby plants": "近くの植物を追い抜くかも", + "may sometimes drop spores when uprooted": "抜いた時に時々胞子をばらまくかも", + "explodes into up to %1 of CpS at the end of its lifecycle (max. %2% of bank)": "ライフサイクルの最後に最高%1のCpSに爆発する(上限は銀行の%2%)", + "cannot handle cold climates; %1% chance to die when frozen": "寒い気候に対処できない;凍ると死ぬ可能性が%1%", + "the unfortunate result of some plant combinations": "いくつかの植物の組み合わせの残念な結果", + "Soil unlocked at %1 farms.": "農場%1で土壌をアンロック。", + "Your field is currently using this soil.": "あなたの畑が現在使っている土壌はこれ。", + "You will be able to change your soil again in %1.": "あと%1で土壌を変更できる。", + "Click to use this type of soil for your whole field.": "クリックして畑全体でこのタイプの土壌を使う。", + "Dirt": "土", + "Simple, regular old dirt that you'd find in nature.": "自然に見つかるシンプルで普通の土。", + "Fertilizer": "肥料", + "Soil with a healthy helping of fresh manure. Plants grow faster but are less efficient.": "新鮮な肥やしがたっぷり入った土壌。植物は速く育つが効果は低い。", + "Clay": "粘土", + "Rich soil with very good water retention. Plants grow slower but are more efficient.": "水分をよく保つ肥沃な土壌。植物の育ちは遅いが、効果がより高い。", + "Pebbles": "小石", + "Dry soil made of small rocks tightly packed together. Not very conducive to plant health, but whatever falls off your crops will be easy to retrieve.
Useful if you're one of those farmers who just want to find new seeds without having to tend their garden too much.": "小石がぎっしり詰まった乾いた土壌。植物の成長にはあまり関係ないが、作物から落ちたものの回収がしやすい。
ガーデンの世話をあまりしないで、新しい種を見つけたい農家には便利。", + "Wood chips": "木片", + "Soil made of bits and pieces of bark and sawdust. Helpful for young sprouts to develop, not so much for mature plants.": "木の皮やおがくずでできた土壌。若芽が育つのに有効だが、成熟した植物にはあまり役に立たない。", + "tick every %1": "%1毎にティック", + "passive plant effects": "植物のパッシブ効果", + "weed growth": "雑草の発育", + "%1% chance of collecting seeds automatically when plants expire": "植物が枯れる時に%1%の確率で自動的に種を採取する", + "plants spread and mutate %1 times more": "%1倍で植物が広がって成熟", + "Plant effects:": "植物の効果:", + "Possible mutations:": "変異の可能性:", + "Average lifespan:": "平均寿命:", + "Average maturation:": "平均成熟時間:", + "Mature in about %1": "約%1で成熟", + "Decays in about %1": "約%1で腐る", + "Does not decay": "腐らない", + "%1 tick": [ + "%1ティック", + "%1ティック" + ], + "Weed": "雑草", + "Fungus": "きのこ", + "Planting cost:": "植えるコスト:", + "%1 of CpS,
minimum %2": "CpSの%1、
最低%2", + "%1 seed": "種%1", + "Click to select this seed for planting.": "クリックしてこの種を植える。", + "This seed cannot be planted.": "この種は植えられない。", + "Empty tile": "空のタイル", + "This tile of soil is empty.
Pick a seed and plant something!": "このタイルの土壌は空っぽ。
種を選んで何か植えよう!", + "Click to plant %1 for %2.": "クリックして%2で%1を植える。", + "%1 to plant multiple.": "%1で複数植える。", + "Aging multiplier:": "成熟倍増。", + "Effect multiplier:": "効果倍増。", + "Weeds/fungus repellent:": "雑草/きのこ除け:", + "This plant is growing here.": "この植物はここで育つ。", + "Stage:": "ステージ:", + "bud": "蕾", + "sprout": "芽が出る", + "bloom": "花が咲く", + "mature": "成熟", + "may reproduce, will drop seed when harvested": "繁殖するかも。収穫した時に種を落とす", + "Click to harvest.": "クリックして収穫。", + "Click to unearth.": "クリックして掘り出す。", + "Click to refill your soil timer and trigger 1 plant growth tick with x%1 spread and mutation rate for %2.": "クリックして土壌タイマーを補給し、1植物の成長ティックを発動して、%2の間x%1の割合で広がって変異する。", + "Unlocked %1 seed.": "%1の種をアンロック。", + "Seeds": "種", + "Tools": "ツール", + "Mature plants harvested: %1 (total: %2)": "成熟した植物の収穫:%1(合計:%2)", + "Plot size: %1
(Upgrades with farm level)": "区画の大きさ:%1
(農場レベルと共にアップグレード)", + "Garden plants age and mutate %1% faster.": "庭の植物の成長、及び突然変異スピードが%1%速くなる。", + "while plant is alive; scales with plant growth": "植物が生きている間、成長に応じて変化する", + "Dungeon": "迷宮", + "Grimoire": "グリモワ", + "This is your magic meter. Each spell costs magic to use.
Your maximum amount of magic varies depending on your amount of Wizard towers, and their level.
Magic refills over time. The lower your magic meter, the slower it refills.": "これがあなたの魔法メーター。呪文を使うには魔法が必要。
魔法の最大値は、魔法使いの塔の数とレベルによる。
魔法は時間とともに補充される。魔法メーターが低いと補充に時間がかかる。", + "Spells cast: %1 (total: %2)": "かけた呪文:%1(合計:%2)", + "Magic cost:": "魔法のコスト:", + "Chance to backfire:": "逆効果の可能性:", + "Effect:": "効果:", + "Backfire:": "逆効果:", + "Backfire!": "逆効果!", + "%1 magic": "%1の魔法", + "+%1% of max magic": "最大魔法の+%1%", + "Click to refill %1 units of your magic meter for %2.": "クリックして%2で魔法メーターを%1ユニット補充。", + "Grimoire spells are %1% cheaper but fail %1% more.": "グリモワールの呪文が%1%安くなるが、失敗する確率も%1%高くなる。", + "Conjure Baked Goods": "焼き菓子に魔法をかける", + "Summon half an hour worth of your CpS, capped at %1% of your cookies owned.": "所有するクッキーの%1%を上限に、30分相当のCpSを召喚する。", + "Trigger a %1-minute clot and lose %1 minutes of CpS.": "%1-分の塊を発動して%1分相当のCpSを失う。", + "You magic %1 out of thin air.": "突然%1の魔法が現れる。", + "Summoning failed!": "召喚失敗!", + "Force the Hand of Fate": "運命を押し付ける", + "Summon a random golden cookie. Each existing golden cookie makes this spell +%1% more likely to backfire.": "ランダムな黄金クッキーを召喚。今ある黄金クッキーが、この呪文が逆効果になる可能性を+%1%高める。", + "Summon an unlucky wrath cookie.": "不幸な怒りのクッキーを召喚。", + "Promising fate!": "約束された運命!", + "Sinister fate!": "不運な運命!", + "Stretch Time": "ストレッチの時間", + "All active buffs gain %1% more time (up to %2 more minutes).": "アクティブなバフが全部%1%延長(%2分まで延長)。", + "All active buffs are shortened by %1% (up to %2 minutes shorter).": "アクティブなバフが全部%1%短縮(%2分まで短縮)。", + "No buffs to alter!": "変更するバフがない!", + "Zap! Buffs lengthened.": "バシッ!バフが延長。", + "Fizz! Buffs shortened.": "シューッ!バフが短縮。", + "Spontaneous Edifice": "自然発生の殿堂", + "The spell picks a random building you could afford if you had twice your current cookies, and gives it to you for free. The building selected must be under %1, and cannot be your most-built one (unless it is your only one).": "現在所有するクッキーの2倍ある場合、この呪文はランダムに建物を選んで、無料で提供してくれる。選んだ建物は%1未満の必要があり、(それが唯一の建物でない限り)数がいちばん多いものであってはならない。", + "Lose a random building.": "ランダムに建物を失う。", + "No buildings to improve!": "改良する建物がない!", + "Backfired, but no buildings to destroy!": "逆効果、でも破壊する建物がない!", + "A new %1
bursts out of the ground.": "新しい%1
が地面から飛び出す。", + "One of your %1
disappears in a puff of smoke.": "%1の1つが
煙と共に消える。", + "Haggler's Charm": "値切り屋の呪文", + "Upgrades are %1% cheaper for 1 minute.": "1分間アップグレードが%1%安くなる。", + "Upgrades are %1% more expensive for an hour.": "1時間アップグレードが%1%高くなる。", + "Upgrades are cheaper!": "アップグレードが安い!", + "Upgrades are pricier!": "アップグレードが高い!", + "Summon Crafty Pixies": "狡猾なピクシーを召喚", + "Buildings are %1% cheaper for 1 minute.": "1分間建物が%1%安くなる。", + "Buildings are %1% more expensive for an hour.": "1時間建物が%1%高くなる。", + "Buildings are cheaper!": "建物が高い!", + "Buildings are pricier!": "建物が低い!", + "Gambler's Fever Dream": "ギャンブラーの熱の夢", + "Cast a random spell at half the magic cost, with twice the chance of backfiring.": "逆効果になる確率が2倍、魔法コストの半分でランダムな呪文をかける。", + "No eligible spells!": "使える魔法がない!", + "That's too bad!
Magic refunded.": "それは残念!
魔法を返却。", + "Casting %1
for %2 magic...": "%2の魔法を
%1でかける...", + "Resurrect Abomination": "忌まわしき復活", + "Instantly summon a wrinkler if conditions are fulfilled.": "条件が揃えばすぐにシワシワ虫を召喚。", + "Pop one of your wrinklers.": "シワシワ虫を1匹潰す。", + "Unable to spawn a wrinkler!": "シワシワ虫を発生できない!", + "Rise, my precious!": "私の可愛い子ちゃんよ、立ち上がれ!", + "But no wrinkler was harmed.": "シワシワ虫は傷つかなかった。", + "So long, ugly...": "さようなら、醜いものよ...", + "Diminish Ineptitude": "愚劣の減少", + "Spells backfire %1 times less for the next %2 minutes.": "これから%2分間、逆効果を唱えるのが%1回減る。", + "Spells backfire %1 times more for the next %2 minutes.": "これから%2分間、逆効果を唱えるのが%1回増える。", + "Ineptitude diminished!": "愚劣の減少!", + "Ineptitude magnified!": "愚劣の拡大!", + "Pantheon": "パンテオン", + "[GOD 1 NAME]Holobore, Spirit of Asceticism": "ホロボア、禁欲の霊", + "[GOD 1 QUOTE]An immortal life spent focusing on the inner self, away from the distractions of material wealth.": "物質的な豊かさの娯楽から離れ、内なる自己に集中して過ごす不滅の人生。", + "[GOD 2 NAME]Vomitrax, Spirit of Decadence": "ヴォミトラックス、堕落の霊", + "[GOD 2 QUOTE]This sleazy spirit revels in the lust for quick easy gain and contempt for the value of steady work.": "この卑劣な霊は簡単にすぐ手に入る欲望に酔いしれ、安定した仕事の価値を軽視する。", + "[GOD 3 NAME]Godzamok, Spirit of Ruin": "ゴジャモック、廃墟の霊", + "[GOD 3 QUOTE]The embodiment of natural disasters. An impenetrable motive drives the devastation caused by this spirit.": "自然災害の具現化。この霊の不可解な動機が荒廃を引き起こす。", + "[GOD 4 NAME]Cyclius, Spirit of Ages": "サイクリウス、時の霊", + "[GOD 4 QUOTE]This spirit knows about everything you'll ever do, and enjoys dispensing a harsh judgment.": "この霊はこれからあなたがすること全てを知っており、厳しい判断を下すことを楽しんでいる。", + "[GOD 5 NAME]Selebrak, Spirit of Festivities": "セレブラック、祝祭の霊", + "[GOD 5 QUOTE]This is the spirit of merry getaways and regretful Monday mornings.": "これは陽気な休暇と後悔の月曜の朝の霊。", + "[GOD 6 NAME]Dotjeiess, Spirit of Creation": "ドトジェイエス、創造の霊", + "[GOD 6 QUOTE]All things that be and ever will be were scripted long ago by this spirit's inscrutable tendrils.": "これまでもこれからも、この霊の不可解な巻きひげがずっと前に全ての物事の脚本を書いた。", + "[GOD 7 NAME]Muridal, Spirit of Labor": "ムリダル、労力の霊", + "[GOD 7 QUOTE]This spirit enjoys a good cheese after a day of hard work.": "この霊は、激務の1日の終わりに美味しいチーズを楽しむ。", + "[GOD 8 NAME]Jeremy, Spirit of Industry": "ジェレミー、工業の霊", + "[GOD 8 QUOTE]While this spirit has many regrets, helping you rule the world through constant industrialization is not one of them.": "この霊は色々後悔することがあるが、絶え間ない工業化で世界を支配するのを助けるのは、そのうちのひとつではない。", + "[GOD 9 NAME]Mokalsium, Mother Spirit": "モカルシウム、母なる霊", + "[GOD 9 QUOTE]A caring spirit said to contain itself, inwards infinitely.": "内面に無限に自分自身を封じ込めると言われる思いやりのある霊。", + "[GOD 10 NAME]Skruuia, Spirit of Scorn": "スクルーイア、軽蔑の霊", + "[GOD 10 QUOTE]This spirit enjoys poking foul beasts and watching them squirm, but has no love for its own family.": "この霊は、汚い獣を突っついたり、彼らが身をよじるのを見たりするのを楽しむが、自分の家族を愛していない。", + "[GOD 11 NAME]Rigidel, Spirit of Order": "リジデル、秩序の霊", + "[GOD 11 QUOTE]You will find that life gets just a little bit sweeter if you can motivate this spirit with tidy numbers and properly-filled tax returns.": "きちんとした数字と適切に記入された納税申告書でこの霊を動機づけできれば、あなたの人生は少しだけ良くなる。", + "Diamond slot": "ダイアモンドのスロット", + "Ruby slot": "ルビーのスロット", + "Jade slot": "翡翠のスロット", + "empty": "空っぽ", + "Release to assign %1 to this slot.": "このスロットに%1を割り当てるためにリリース。", + "Drag a spirit onto this slot to assign it.": "霊をこのスロットにドラッグして割り当てる。", + "If a golden cookie is clicked, this spirit is unslotted and all worship swaps will be used up.": "黄金クッキーをクリックしたら、この霊はスロットから抜けて、全ての崇拝の交換が使い果たされる。", + "Each time you slot a spirit, you use up one worship swap.
If you have 2 swaps left, the next one will refill after %1.
If you have 1 swap left, the next one will refill after %2.
If you have 0 swaps left, you will get one after %3.
Unslotting a spirit costs no swaps.": "霊をスロットに入れる度に、崇拝の交換を1つ使い果たす。
交換が2つ残っていれば、%1の後に次が補充される。
交換が1つ残っていれば、%2の後に次が補充される。
交換が残っていない場合は、%3の後に1つ獲得する。
霊をスロットから外すのには交換は使われない。", + "Click to refill all your worship swaps for %1.": "クリックして%1で全ての崇拝の交換を補充する。", + "Worship swaps: %1": "崇拝の交換:%1", + "next in %1": "%1後に次", + "The jade slot behaves as a ruby slot and the ruby slot behaves as a diamond slot.": "ヒスイスロットがルビースロットとして機能し、ルビースロットがダイアモンドスロットとして機能する。", + "Stock Market": "株式市場", + "[STOCK 1 NAME]Old Mills": "古い工場", + "[STOCK 1 TYPE]Cereals": "シリアル", + "[STOCK 1 LOGO]CRL": "CRL", + "[STOCK 2 NAME]Cocoa Excavations": "ココアの発掘調査", + "[STOCK 2 TYPE]Chocolate": "チョコレート", + "[STOCK 2 LOGO]CHC": "CHC", + "[STOCK 3 NAME]Bovine Industries": "牛の産業", + "[STOCK 3 TYPE]Butter": "バター", + "[STOCK 3 LOGO]BTR": "BTR", + "[STOCK 4 NAME]Candy Trust": "キャンディー信託", + "[STOCK 4 TYPE]Sugar": "砂糖", + "[STOCK 4 LOGO]SUG": "SUG", + "[STOCK 5 NAME]Hazel Monastery": "ヘーゼル修道院", + "[STOCK 5 TYPE]Nuts": "ナッツ", + "[STOCK 5 LOGO]NUT": "NUT", + "[STOCK 6 NAME]Wacky Reagants": "奇抜な試薬", + "[STOCK 6 TYPE]Salt": "塩", + "[STOCK 6 LOGO]SLT": "SLT", + "[STOCK 7 NAME]Cosmic Exports": "宇宙の輸出", + "[STOCK 7 TYPE]Vanilla": "バニラ", + "[STOCK 7 LOGO]VNL": "VNL", + "[STOCK 8 NAME]Organic Gnostics": "有機グノーシス主義", + "[STOCK 8 TYPE]Eggs": "卵", + "[STOCK 8 LOGO]EGG": "EGG", + "[STOCK 9 NAME]Dimensional Exchange": "次元の交換", + "[STOCK 9 TYPE]Cinnamon": "シナモン", + "[STOCK 9 LOGO]CNM": "CNM", + "[STOCK 10 NAME]Precision Aging": "精密な老化", + "[STOCK 10 TYPE]Cream": "クリーム", + "[STOCK 10 LOGO]CRM": "CRM", + "[STOCK 11 NAME]Pectin Research": "ペクチンの研究", + "[STOCK 11 TYPE]Jam": "ジャム", + "[STOCK 11 LOGO]JAM": "JAM", + "[STOCK 12 NAME]Dazzle Corp Ltd.": "光輝コーポレーション", + "[STOCK 12 TYPE]White chocolate": "ホワイトチョコ", + "[STOCK 12 LOGO]WCH": "WCH", + "[STOCK 13 NAME]Prosperity Hive": "繁栄の巣", + "[STOCK 13 TYPE]Honey": "蜂蜜", + "[STOCK 13 LOGO]HNY": "HNY", + "[STOCK 14 NAME]Selfmade Bakeries": "自家製ベーカリー", + "[STOCK 14 TYPE]Cookies": "クッキー", + "[STOCK 14 LOGO]CKI": "CKI", + "[STOCK 15 NAME]Figments Associated": "関連する虚構", + "[STOCK 15 TYPE]Recipes": "レシピ", + "[STOCK 15 LOGO]RCP": "RCP", + "[STOCK 16 NAME]Polyvalent Acquisitions": "多価買収", + "[STOCK 16 TYPE]Subsidiaries": "子会社", + "[STOCK 16 LOGO]SBD": "SBD", + "[STOCK 17 NAME]Great Minds": "偉大なる頭脳", + "[STOCK 17 TYPE]Publicists": "広報担当", + "[STOCK 17 LOGO]PBL": "広報担", + "from %1": "%1から", + "%1: currently worth $%2 per unit.": "%1:現在1ユニットあたりの価値は$%2。", + "You currently own %1 (worth $%2).": "現在%1($%2の価値)を所有。", + "Your warehouses can store up to %1.": "倉庫で%1まで保管できる。", + "You may increase your storage space by upgrading your offices and by buying more %1. You also get %2 extra storage space per %3 level (currently: +%4).": "オフィスをアップグレードして%1を追加購入すると、倉庫のスペースを拡張できる。%3レベル毎に、倉庫のスペースが%2大きくなる(現在:+%4)。", + "The average worth of this stock and how high it can peak depends on the building it is tied to, along with the level of your %1.": "この株の平均的な価値とそれがどれだけ高くなるかは、それに結び付いている建物と%1のレベルによって決まる。", + "%1 the hide button to toggle all other stocks.": "他の株を全部切り替えるための隠すボタン%1", + "stock:": "株:", + "for $%1 each": "1つにつき$%1", + "last bought at
$%1 each": "前回の購入時は一つ
$%1だった", + "+%1% overhead": "+%1%のオーバーヘッド", + "value:": "価値:", + "valued at %1": "%1の価値", + "you spend:": "支出:", + "you earn:": "収入:", + "You cannot buy and sell this stock in the same tick.": "同一のティックでこの株を買って売ることはできない。", + "This is your office.": "これはあなたのオフィス。", + "It is fully upgraded. Its lavish interiors, spanning across innumerable floors, are host to many a decadent party, owing to your nigh-unfathomable wealth.": "完全にアップグレード済。計り知れないほどのあなたの富のおかげで、数多くの階にまたがるその豪華なインテリアが、豪華なパーティーをたくさん主催している。", + "Level %1 offices": "レベル%1オフィス", + "Credit garage": "信用のガレージ", + "Tiny bank": "小さな銀行", + "Loaning company": "貸付会社", + "Finance headquarters": "財務本部", + "International exchange": "国際交流", + "Palace of Greed": "貪欲のパレス", + "Upgrading will cost you %1.": "アップグレードに%1かかる。", + "Upgrading requires %1.": "アップグレードに%1が必要。", + "Upgrading will grant you:": "アップグレードで獲得:", + "+1 loan slot": "ローンのスロットが+1", + "+1 opportunity slot": "機会のスロットが+1", + "+%1 warehouse space for all goods": "全部の物品の倉庫スペースが+%1", + "+%1% base warehouse space for all goods": "全部の物品の基本倉庫スペースが+%1%", + "Brokers:": "ブローカー:", + "A nice broker to trade more cookies.": "より多くのクッキーを取引する素晴らしいブローカー。", + "Hire": "雇う", + "Buying goods normally incurs overhead costs of %1% extra. Each broker you hire reduces that cost by %2%.": "物品を買うと通常、オーバーヘッドが追加%1%かかる。ブローカーを雇うごとに、そのコストが%2%ずつ減る。", + "Current overhead costs thanks to your brokers: +%1%": "ブローカーのおかげで現在のオーバーヘッドのコストは:+%1%", + "Buying a broker costs %1 of CpS (that's $%2).": "ブローカーを買うにはCpSの%1がかかる($%2)。", + "Maximum number of brokers you can own: %1 (the highest amount of grandmas you've owned this run, divided by 10, plus your grandma level)": "所有できるブローカーの最大数:%1(このランで所有するグランマの最大数を10で割って、グランマのレベルを足した数)", + "Brokers are Wall Street-class grandmas versed in the ways of finance. Stockbroker grandmas work hard and play hard, and will fight telephone in hand to get your clients the best possible deals - with a sizeable profit margin for you, of course.": "ブローカーは金融の方法に精通したウォール街クラスのグランマ。株式仲買人のグランマは働くのも遊ぶのも一所懸命で、電話を片手に、当然かなりの利益率でクライアントにできだけ最良の取引をする。", + "Hiring a new broker will cost you %1.": "新しいブローカーを雇うのに%1かかる。", + "Take out %1": "%1借り出す", + "Loan #%1": "#%1借りる", + "a modest loan": "ささやかなローン", + "Buy that vintage car you've always wanted. Just pay us back.": "いつも欲しいと思っていたクラシックカーを買う。返済はちゃんとしてね。", + "a pawnshop loan": "質屋のローン", + "Bad credit? No problem. It's your money, and you need it now.": "信用が悪い?問題なし。あなたのお金だし、今必要なもの。", + "a retirement loan": "退職金ローン", + "Finance your next house, boat, spouse, etc. You've earned it.": "次の家、ボート、配偶者などを融資で買おう。ご褒美。", + "By taking this loan, you will get %1 CpS for the next %2.": "このローンを借りると次の%2でCpSの%1を獲得する。", + "However, you will get %1 CpS for the next %2 after that.": "しかし、その後は次の%2でCpSの%1を獲得する。", + "You must also pay an immediate downpayment of %1 (%2% of your current bank).": "すぐに頭金も%1支払わなければならない(現在の銀行の%2%)。", + "Loan over": "ローン終了", + "Your loan has expired, and you must now repay the interest.": "ローンの期限になったので、利息を返済しなければならない。", + "Line style": "線のスタイル", + "Color mode": "カラーモード", + "Toggle speed": "切替スピード", + "Click to refill your opportunity timer (and give a quick burst to your economy) for %1.": "クリックして%1で機会タイマーを補充(更に即座に経済がバーストする)。", + "Profits: %1. All prices are in $econds of your highest raw cookies per second.": "利益:%1。価格はどれも、最も高い生のクッキーの毎秒の$econds。", + "The stock market is more chaotic.": "株式市場はさらに混沌としている。", + "[Upgrade name 0]Reinforced index finger": "強化された人差し指", + "[Upgrade name 1]Carpal tunnel prevention cream": "手根管予防クリーム", + "[Upgrade name 2]Ambidextrous": "両手利き", + "[Upgrade name 3]Thousand fingers": "千本の指", + "[Upgrade name 4]Million fingers": "百万本の指", + "[Upgrade name 5]Billion fingers": "十億本の指", + "[Upgrade name 6]Trillion fingers": "一兆本の指", + "[Upgrade name 7]Forwards from grandma": "グランマからの転送メール", + "[Upgrade name 8]Steel-plated rolling pins": "金属製めん棒", + "[Upgrade name 9]Lubricated dentures": "滑らかな入れ歯", + "[Upgrade name 10]Cheap hoes": "安物のクワ", + "[Upgrade name 11]Fertilizer": "肥料", + "[Upgrade name 12]Cookie trees": "クッキーの木", + "[Upgrade name 13]Sturdier conveyor belts": "頑丈なコンベアベルト", + "[Upgrade name 14]Child labor": "児童労働", + "[Upgrade name 15]Sweatshop": "ブラック工場", + "[Upgrade name 16]Sugar gas": "シュガーガス", + "[Upgrade name 17]Megadrill": "メガドリル", + "[Upgrade name 18]Ultradrill": "ウルトラドリル", + "[Upgrade name 19]Vanilla nebulae": "バニラ星雲", + "[Upgrade name 20]Wormholes": "ワームホール", + "[Upgrade name 21]Frequent flyer": "マイレージ会員", + "[Upgrade name 22]Antimony": "アンチモン", + "[Upgrade name 23]Essence of dough": "生地のエッセンス", + "[Upgrade name 24]True chocolate": "正真正銘のチョコレート", + "[Upgrade name 25]Ancient tablet": "古代の石板", + "[Upgrade name 26]Insane oatling workers": "イカれた麦百姓", + "[Upgrade name 27]Soul bond": "魂と売る契約", + "[Upgrade name 28]Flux capacitors": "次元転移装置", + "[Upgrade name 29]Time paradox resolver": "タイムパラドックスリゾルバー", + "[Upgrade name 30]Quantum conundrum": "量子学的難問", + "[Upgrade name 31]Kitten helpers": "子猫ヘルパー", + "[Upgrade name 32]Kitten workers": "子猫ワーカー", + "[Upgrade name 33]Plain cookies": "プレーンクッキー", + "[Upgrade name 34]Sugar cookies": "シュガークッキー", + "[Upgrade name 35]Oatmeal raisin cookies": "オートミールレーズンクッキー", + "[Upgrade name 36]Peanut butter cookies": "ピーナツバタークッキー", + "[Upgrade name 37]Coconut cookies": "ココナツクッキー", + "[Upgrade name 38]White chocolate cookies": "ホワイトチョコクッキー", + "[Upgrade name 39]Macadamia nut cookies": "マカダミアナッツクッキー", + "[Upgrade name 40]Double-chip cookies": "ダブルチップクッキー", + "[Upgrade name 41]White chocolate macadamia nut cookies": "ホワイトチョコマカダミアナッツクッキー", + "[Upgrade name 42]All-chocolate cookies": "オールチョコクッキー", + "[Upgrade name 43]Quadrillion fingers": "千兆本の指", + "[Upgrade name 44]Prune juice": "プルーンジュース", + "[Upgrade name 45]Genetically-modified cookies": "遺伝子組み換えクッキー", + "[Upgrade name 46]Radium reactors": "ラジウム原子炉", + "[Upgrade name 47]Ultimadrill": "ウルティマドリル", + "[Upgrade name 48]Warp drive": "ワープドライブ", + "[Upgrade name 49]Ambrosia": "神々の食べ物", + "[Upgrade name 50]Sanity dance": "正気のダンス", + "[Upgrade name 51]Causality enforcer": "因果律強制者", + "[Upgrade name 52]Lucky day": "運のいい日", + "[Upgrade name 53]Serendipity": "幸運の才能", + "[Upgrade name 54]Kitten engineers": "子猫エンジニア", + "[Upgrade name 55]Dark chocolate-coated cookies": "ダークチョココーティングクッキー", + "[Upgrade name 56]White chocolate-coated cookies": "ホワイトチョココーティングクッキー", + "[Upgrade name 57]Farmer grandmas": "農業従事者グランマ", + "[Upgrade name 58]Miner grandmas": "鉱山労働者グランマ", + "[Upgrade name 59]Worker grandmas": "労働者グランマ", + "[Upgrade name 60]Cosmic grandmas": "宇宙グランマ", + "[Upgrade name 61]Transmuted grandmas": "変異グランマ", + "[Upgrade name 62]Altered grandmas": "改造グランマ", + "[Upgrade name 63]Grandmas' grandmas": "グランマのグランマ", + "[Upgrade name 64]Bingo center/Research facility": "ビンゴセンター/研究施設", + "[Upgrade name 65]Specialized chocolate chips": "特製チョコチップ", + "[Upgrade name 66]Designer cocoa beans": "デザイナーココア豆", + "[Upgrade name 67]Ritual rolling pins": "儀式用めん棒", + "[Upgrade name 68]Underworld ovens": "地獄のオーブン", + "[Upgrade name 69]One mind": "1つの知性", + "[Upgrade name 70]Exotic nuts": "異国の木の実", + "[Upgrade name 71]Communal brainsweep": "集団洗脳", + "[Upgrade name 72]Arcane sugar": "秘密の砂糖", + "[Upgrade name 73]Elder Pact": "エルダー協定", + "[Upgrade name 74]Elder Pledge": "エルダー宣誓", + "[Upgrade name 75]Plastic mouse": "プラスチックマウス", + "[Upgrade name 76]Iron mouse": "鉄マウス", + "[Upgrade name 77]Titanium mouse": "チタンマウス", + "[Upgrade name 78]Adamantium mouse": "アダマンチウムマウス", + "[Upgrade name 79]Ultrascience": "超科学", + "[Upgrade name 80]Eclipse cookies": "月食クッキー", + "[Upgrade name 81]Zebra cookies": "シマウマクッキー", + "[Upgrade name 82]Quintillion fingers": "百京本の指", + "[Upgrade name 83]Gold hoard": "金の埋蔵", + "[Upgrade name 84]Elder Covenant": "エルダー誓約", + "[Upgrade name 85]Revoke Elder Covenant": "エルダー誓約の撤回", + "[Upgrade name 86]Get lucky": "ツキが回ってきた", + "[Upgrade name 87]Sacrificial rolling pins": "生贄用めん棒", + "[Upgrade name 88]Snickerdoodles": "スニッカードゥードル", + "[Upgrade name 89]Stroopwafels": "ストロープワッフル", + "[Upgrade name 90]Macaroons": "マカロン", + "[Upgrade name 91]Neuromancy": "交霊術", + "[Upgrade name 92]Empire biscuits": "エンパイアビスケット", + "[Upgrade name 93]British tea biscuits": "英国紅茶用ビスケット", + "[Upgrade name 94]Chocolate british tea biscuits": "英国紅茶用チョコビスケット", + "[Upgrade name 95]Round british tea biscuits": "丸い英国紅茶用ビスケット", + "[Upgrade name 96]Round chocolate british tea biscuits": "丸い英国紅茶用チョコビスケット", + "[Upgrade name 97]Round british tea biscuits with heart motif": "ハートをあしらった丸い英国紅茶用ビスケット", + "[Upgrade name 98]Round chocolate british tea biscuits with heart motif": "ハートをあしらった丸い英国紅茶用チョコビスケット", + "[Upgrade name 99]Sugar bosons": "砂糖ボース粒子", + "[Upgrade name 100]String theory": "弦理論", + "[Upgrade name 101]Large macaron collider": "大型マカロン衝突器", + "[Upgrade name 102]Big bang bake": "ビッグバンベーキング", + "[Upgrade name 103]Antigrandmas": "アンチグランマ", + "[Upgrade name 104]Madeleines": "マドレーヌ", + "[Upgrade name 105]Palmiers": "パルミエ", + "[Upgrade name 106]Palets": "パレ", + "[Upgrade name 107]Sablés": "サブレ", + "[Upgrade name 108]Kitten overseers": "子猫監督官", + "[Upgrade name 109]Sextillion fingers": "十垓本の指", + "[Upgrade name 110]Double-thick glasses": "厚みが二倍のメガネ", + "[Upgrade name 111]Gingerbread scarecrows": "ジンジャーブレッドのカカシ", + "[Upgrade name 112]Recombobulators": "秩序の再構築", + "[Upgrade name 113]H-bomb mining": "水爆マイニング", + "[Upgrade name 114]Chocolate monoliths": "チョコのモノリス", + "[Upgrade name 115]Aqua crustulae": "クラスト硬化液", + "[Upgrade name 116]Brane transplant": "ブレーン移殖", + "[Upgrade name 117]Yestermorrow comparators": "過去と未来の比較", + "[Upgrade name 118]Reverse cyclotrons": "逆行サイクロトン", + "[Upgrade name 119]Unobtainium mouse": "アンオブタニウムのマウス", + "[Upgrade name 120]Caramoas": "キャラモア", + "[Upgrade name 121]Sagalongs": "サガロン", + "[Upgrade name 122]Shortfoils": "ショートフォイル", + "[Upgrade name 123]Win mints": "ウィンミント", + "[Upgrade name 124]Perfect idling": "完璧なアイドリング", + "[Upgrade name 125]Fig gluttons": "フィググラトン", + "[Upgrade name 126]Loreols": "ロレオルズ", + "[Upgrade name 127]Jaffa cakes": "ジャッファケーキ", + "[Upgrade name 128]Grease's cups": "グリースカップ", + "[Upgrade name 129]Heavenly chip secret": "天界チップの秘密", + "[Upgrade name 130]Heavenly cookie stand": "天界クッキースタンド", + "[Upgrade name 131]Heavenly bakery": "天界ベーカリー", + "[Upgrade name 132]Heavenly confectionery": "天界お菓子工房", + "[Upgrade name 133]Heavenly key": "天界の鍵", + "[Upgrade name 134]Skull cookies": "ガイコツクッキー", + "[Upgrade name 135]Ghost cookies": "ゴーストクッキー", + "[Upgrade name 136]Bat cookies": "コウモリクッキー", + "[Upgrade name 137]Slime cookies": "スライムクッキー", + "[Upgrade name 138]Pumpkin cookies": "パンプキンクッキー", + "[Upgrade name 139]Eyeball cookies": "目玉クッキー", + "[Upgrade name 140]Spider cookies": "スパイダークッキー", + "[Upgrade name 141]Persistent memory": "忘れられない記憶", + "[Upgrade name 142]Wrinkler doormat": "シワシワ虫の玄関マット", + "[Upgrade name 143]Christmas tree biscuits": "クリスマスツリービスケット", + "[Upgrade name 144]Snowflake biscuits": "雪の結晶ビスケット", + "[Upgrade name 145]Snowman biscuits": "雪だるまビスケット", + "[Upgrade name 146]Holly biscuits": "ヒイラギビスケット", + "[Upgrade name 147]Candy cane biscuits": "キャンディケインビスケット", + "[Upgrade name 148]Bell biscuits": "ベルビスケット", + "[Upgrade name 149]Present biscuits": "プレゼントビスケット", + "[Upgrade name 150]Gingerbread men": "ジンジャーブレッドマン", + "[Upgrade name 151]Gingerbread trees": "ジンジャーブレッドツリー", + "[Upgrade name 152]A festive hat": "サンタ帽", + "[Upgrade name 153]Increased merriness": "わくわく倍増", + "[Upgrade name 154]Improved jolliness": "ウキウキ倍増", + "[Upgrade name 155]A lump of coal": "石炭の塊", + "[Upgrade name 156]An itchy sweater": "チクチクするセーター", + "[Upgrade name 157]Reindeer baking grounds": "地面を焼くトナカイ", + "[Upgrade name 158]Weighted sleighs": "重量級そり", + "[Upgrade name 159]Ho ho ho-flavored frosting": "ホウホウホウ味のアイシング", + "[Upgrade name 160]Season savings": "季節の割引セール", + "[Upgrade name 161]Toy workshop": "おもちゃ工房", + "[Upgrade name 162]Naughty list": "悪い子リスト", + "[Upgrade name 163]Santa's bottomless bag": "サンタの底なしバッグ", + "[Upgrade name 164]Santa's helpers": "サンタの助手", + "[Upgrade name 165]Santa's legacy": "サンタの遺産", + "[Upgrade name 166]Santa's milk and cookies": "サンタ用のミルクとクッキー", + "[Upgrade name 167]Reindeer season": "トナカイのシーズン", + "[Upgrade name 168]Santa's dominion": "サンタの支配", + "[Upgrade name 169]Pure heart biscuits": "ピュアなハートのビスケット", + "[Upgrade name 170]Ardent heart biscuits": "アツいハートのビスケット", + "[Upgrade name 171]Sour heart biscuits": "酸っぱいハートのビスケット", + "[Upgrade name 172]Weeping heart biscuits": "涙色ハートのビスケット", + "[Upgrade name 173]Golden heart biscuits": "黄金のハートのビスケット", + "[Upgrade name 174]Eternal heart biscuits": "永遠のハートのビスケット", + "[Upgrade name 175]Gem polish": "宝石磨き", + "[Upgrade name 176]9th color": "9番目の色", + "[Upgrade name 177]Chocolate light": "チョコレートライト", + "[Upgrade name 178]Grainbow": "穀物色の虹", + "[Upgrade name 179]Pure cosmic light": "ピュアな宇宙光", + "[Upgrade name 180]Rainbow grandmas": "虹色グランマ", + "[Upgrade name 181]Season switcher": "シーズン切替機", + "[Upgrade name 182]Festive biscuit": "クリスマスビスケット", + "[Upgrade name 183]Ghostly biscuit": "お化けのビスケット", + "[Upgrade name 184]Lovesick biscuit": "恋の病のビスケット", + "[Upgrade name 185]Fool's biscuit": "愚か者のビスケット", + "[Upgrade name 186]Eternal seasons": "永遠の季節", + "[Upgrade name 187]Kitten managers": "子猫の管理人", + "[Upgrade name 188]Septillion fingers": "一𥝱本の指", + "[Upgrade name 189]Octillion fingers": "千𥝱本の指", + "[Upgrade name 190]Eludium mouse": "イリジウムマウス", + "[Upgrade name 191]Wishalloy mouse": "ウィッシュアロイマウス", + "[Upgrade name 192]Aging agents": "高齢化エージェント", + "[Upgrade name 193]Pulsar sprinklers": "パルサースプリンクラー", + "[Upgrade name 194]Deep-bake process": "ディープベイクプロセス", + "[Upgrade name 195]Coreforge": "コアフォージ", + "[Upgrade name 196]Generation ship": "ジェネレーションシップ", + "[Upgrade name 197]Origin crucible": "起源のるつぼ", + "[Upgrade name 198]Deity-sized portals": "神サイズのポータル", + "[Upgrade name 199]Far future enactment": "遠い未来の法律", + "[Upgrade name 200]Nanocosmics": "ナノ宇宙学", + "[Upgrade name 201]Glow-in-the-dark": "夜光性", + "[Upgrade name 202]Rose macarons": "ローズマカロン", + "[Upgrade name 203]Lemon macarons": "レモンマカロン", + "[Upgrade name 204]Chocolate macarons": "チョコマカロン", + "[Upgrade name 205]Pistachio macarons": "ピスタチオマカロン", + "[Upgrade name 206]Hazelnut macarons": "ヘーゼルナッツマカロン", + "[Upgrade name 207]Violet macarons": "バイオレットマカロン", + "[Upgrade name 208]Magic shenanigans": "魔法のいたずら", + "[Upgrade name 209]Bunny biscuit": "バニービスケット", + "[Upgrade name 210]Chicken egg": "鶏卵", + "[Upgrade name 211]Duck egg": "アヒルの卵", + "[Upgrade name 212]Turkey egg": "七面鳥の卵", + "[Upgrade name 213]Quail egg": "うずらの卵", + "[Upgrade name 214]Robin egg": "コマドリの卵", + "[Upgrade name 215]Ostrich egg": "ダチョウの卵", + "[Upgrade name 216]Cassowary egg": "ヒクイドリの卵", + "[Upgrade name 217]Salmon roe": "イクラ", + "[Upgrade name 218]Frogspawn": "カエルの卵", + "[Upgrade name 219]Shark egg": "サメの卵", + "[Upgrade name 220]Turtle egg": "カメの卵", + "[Upgrade name 221]Ant larva": "アリの卵", + "[Upgrade name 222]Golden goose egg": "金のガチョウの卵", + "[Upgrade name 223]Faberge egg": "ファベルジェの卵", + "[Upgrade name 224]Wrinklerspawn": "シワシワ虫の卵", + "[Upgrade name 225]Cookie egg": "クッキーの卵", + "[Upgrade name 226]Omelette": "オムレツ", + "[Upgrade name 227]Chocolate egg": "チョコの卵", + "[Upgrade name 228]Century egg": "世紀の卵", + "[Upgrade name 229]\"egg\"": "「たまご」", + "[Upgrade name 230]Caramel macarons": "キャラメルマカロン", + "[Upgrade name 231]Licorice macarons": "リコリスマカロン", + "[Upgrade name 232]Taller tellers": "のっぽの窓口係", + "[Upgrade name 233]Scissor-resistant credit cards": "ハサミで切れないクレジットカード", + "[Upgrade name 234]Acid-proof vaults": "耐酸金庫", + "[Upgrade name 235]Chocolate coins": "チョココイン", + "[Upgrade name 236]Exponential interest rates": "指数関数的金利", + "[Upgrade name 237]Financial zen": "金融の禅", + "[Upgrade name 238]Golden idols": "金色の像", + "[Upgrade name 239]Sacrifices": "生贄", + "[Upgrade name 240]Delicious blessing": "おいしい祝福", + "[Upgrade name 241]Sun festival": "太陽祭", + "[Upgrade name 242]Enlarged pantheon": "増築されたパンテオン", + "[Upgrade name 243]Great Baker in the sky": "天界の偉大なるクッキー職人", + "[Upgrade name 244]Pointier hats": "とんがり帽子", + "[Upgrade name 245]Beardlier beards": "ヒゲよりヒゲらしい髭", + "[Upgrade name 246]Ancient grimoires": "いにしえの魔道書", + "[Upgrade name 247]Kitchen curses": "キッチン呪術", + "[Upgrade name 248]School of sorcery": "魔術学校", + "[Upgrade name 249]Dark formulas": "禁じられた調合", + "[Upgrade name 250]Banker grandmas": "銀行家グランマ", + "[Upgrade name 251]Priestess grandmas": "女祭司グランマ", + "[Upgrade name 252]Witch grandmas": "魔女グランマ", + "[Upgrade name 253]Tin of british tea biscuits": "缶入り英国紅茶用ビスケット", + "[Upgrade name 254]Box of macarons": "箱入りマカロン", + "[Upgrade name 255]Box of brand biscuits": "箱入りの有名店ビスケット", + "[Upgrade name 256]Pure black chocolate cookies": "ピュアブラックチョコのクッキー", + "[Upgrade name 257]Pure white chocolate cookies": "ピュアホワイトチョコのクッキー", + "[Upgrade name 258]Ladyfingers": "スティック状のケーキ", + "[Upgrade name 259]Tuiles": "チュイル", + "[Upgrade name 260]Chocolate-stuffed biscuits": "チョコ入りビスケット", + "[Upgrade name 261]Checker cookies": "チェッカークッキー", + "[Upgrade name 262]Butter cookies": "バタークッキー", + "[Upgrade name 263]Cream cookies": "クリームクッキー", + "[Upgrade name 264]Permanent upgrade slot I": "永久アップグレード枠I", + "[Upgrade name 265]Permanent upgrade slot II": "永久アップグレード枠II", + "[Upgrade name 266]Permanent upgrade slot III": "永久アップグレード枠III", + "[Upgrade name 267]Permanent upgrade slot IV": "永久アップグレード枠IV", + "[Upgrade name 268]Permanent upgrade slot V": "永久アップグレード枠V", + "[Upgrade name 269]Starspawn": "スタースポーン", + "[Upgrade name 270]Starsnow": "スタースノウ", + "[Upgrade name 271]Starterror": "スターテラー", + "[Upgrade name 272]Starlove": "スターラブ", + "[Upgrade name 273]Startrade": "スタートレード", + "[Upgrade name 274]Angels": "天使", + "[Upgrade name 275]Archangels": "大天使", + "[Upgrade name 276]Virtues": "力天使", + "[Upgrade name 277]Dominions": "主天使", + "[Upgrade name 278]Cherubim": "智天使", + "[Upgrade name 279]Seraphim": "熾天使", + "[Upgrade name 280]God": "神", + "[Upgrade name 281]Twin Gates of Transcendence": "超越の双門", + "[Upgrade name 282]Heavenly luck": "最高の幸運", + "[Upgrade name 283]Lasting fortune": "いつまでも続く幸運", + "[Upgrade name 284]Decisive fate": "決定的な運命", + "[Upgrade name 285]Divine discount": "神の割引", + "[Upgrade name 286]Divine sales": "神のセール", + "[Upgrade name 287]Divine bakeries": "神のベーカリー", + "[Upgrade name 288]Starter kit": "初心者用セット", + "[Upgrade name 289]Starter kitchen": "初心者用キッチン", + "[Upgrade name 290]Halo gloves": "後光がさした手袋", + "[Upgrade name 291]Kitten angels": "子猫の天使", + "[Upgrade name 292]Unholy bait": "不浄な誘惑", + "[Upgrade name 293]Sacrilegious corruption": "冒涜的な汚職", + "[Upgrade name 294]Xtreme walkers": "過激な歩行器", + "[Upgrade name 295]Fudge fungus": "ファッジ菌", + "[Upgrade name 296]Planetsplitters": "惑星を分裂する者", + "[Upgrade name 297]Cyborg workforce": "サイボーグ労働者", + "[Upgrade name 298]Way of the wallet": "財布道", + "[Upgrade name 299]Creation myth": "創世神話", + "[Upgrade name 300]Cookiemancy": "クッキー魔術", + "[Upgrade name 301]Dyson sphere": "ダイソン球", + "[Upgrade name 302]Theory of atomic fluidity": "原子流動性論", + "[Upgrade name 303]End of times back-up plan": "終末に向けた代替案", + "[Upgrade name 304]Great loop hypothesis": "グレートループ仮説", + "[Upgrade name 305]The Pulse": "鼓動そのもの", + "[Upgrade name 306]Lux sanctorum": "光の聖域", + "[Upgrade name 307]The Unbridling": "束縛から解き放たれた者", + "[Upgrade name 308]Wheat triffids": "肉食植物の小麦たち", + "[Upgrade name 309]Canola oil wells": "カノーラ油田", + "[Upgrade name 310]78-hour days": "1日78時間", + "[Upgrade name 311]The stuff rationale": "現金の根本理由", + "[Upgrade name 312]Theocracy": "神政国家", + "[Upgrade name 313]Rabbit trick": "ウサギのトリック", + "[Upgrade name 314]The final frontier": "最後のフロンティア", + "[Upgrade name 315]Beige goo": "ベージュ・グー", + "[Upgrade name 316]Maddening chants": "イライラする呪文", + "[Upgrade name 317]Cookietopian moments of maybe": "クッキー夢想家の妄想", + "[Upgrade name 318]Some other super-tiny fundamental particle? Probably?": "極小の基本素粒子とか?かな?", + "[Upgrade name 319]Reverse shadows": "影の反転", + "[Upgrade name 320]Kitten accountants": "子猫会計士", + "[Upgrade name 321]Kitten specialists": "子猫専門家", + "[Upgrade name 322]Kitten experts": "子猫エキスパート", + "[Upgrade name 323]How to bake your dragon": "ドラゴンの焼き方", + "[Upgrade name 324]A crumbly egg": "ボロボロする卵", + "[Upgrade name 325]Chimera": "キメラ", + "[Upgrade name 326]Tin of butter cookies": "缶入りバタークッキー", + "[Upgrade name 327]Golden switch": "黄金スイッチ", + "[Upgrade name 328]Classic dairy selection": "おなじみの乳製品セレクション", + "[Upgrade name 329]Fanciful dairy selection": "高級な乳製品セレクション", + "[Upgrade name 330]Dragon cookie": "ドラゴンクッキー", + "[Upgrade name 331]Golden switch [off]": "黄金スイッチ[オフ]", + "[Upgrade name 332]Golden switch [on]": "黄金スイッチ[オン]", + "[Upgrade name 333]Milk selector": "ミルクセレクター", + "[Upgrade name 334]Milk chocolate butter biscuit": "ミルクチョコのバタービスケット", + "[Upgrade name 335]Dark chocolate butter biscuit": "ダークチョコのバタービスケット", + "[Upgrade name 336]White chocolate butter biscuit": "ホワイトチョコのバタービスケット", + "[Upgrade name 337]Ruby chocolate butter biscuit": "ルビーチョコのバタービスケット", + "[Upgrade name 338]Gingersnaps": "ジンジャースナップ", + "[Upgrade name 339]Cinnamon cookies": "シナモンクッキー", + "[Upgrade name 340]Vanity cookies": "バニティークッキー", + "[Upgrade name 341]Cigars": "シガレット", + "[Upgrade name 342]Pinwheel cookies": "風車クッキー", + "[Upgrade name 343]Fudge squares": "四角いファッジ", + "[Upgrade name 344]Digits": "デジット", + "[Upgrade name 345]Butter horseshoes": "U字型バタークッキー", + "[Upgrade name 346]Butter pucks": "丸型バタークッキー", + "[Upgrade name 347]Butter knots": "結び目バタークッキー", + "[Upgrade name 348]Butter slabs": "長方形バタークッキー", + "[Upgrade name 349]Butter swirls": "渦巻バタークッキー", + "[Upgrade name 350]Shortbread biscuits": "ショートブレッドビスケット", + "[Upgrade name 351]Millionaires' shortbreads": "億万長者のショートブレッド", + "[Upgrade name 352]Caramel cookies": "キャラメルクッキー", + "[Upgrade name 353]Belphegor": "ベルフェゴール", + "[Upgrade name 354]Mammon": "マモン", + "[Upgrade name 355]Abaddon": "アバドン", + "[Upgrade name 356]Satan": "サタン", + "[Upgrade name 357]Asmodeus": "アスモデウス", + "[Upgrade name 358]Beelzebub": "ベルゼブブ", + "[Upgrade name 359]Lucifer": "ルシファー", + "[Upgrade name 360]Golden cookie alert sound": "黄金クッキーの警告音", + "[Upgrade name 361]Golden cookie sound selector": "黄金クッキーサウンドセレクター", + "[Upgrade name 362]Basic wallpaper assortment": "基本の壁紙セット", + "[Upgrade name 363]Legacy": "遺産", + "[Upgrade name 364]Elder spice": "エルダースパイス", + "[Upgrade name 365]Residual luck": "残された運", + "[Upgrade name 366]Fantasteel mouse": "ファンタスティールマウス", + "[Upgrade name 367]Nevercrack mouse": "絶対に壊れないマウス", + "[Upgrade name 368]Five-finger discount": "万引き", + "[Upgrade name 369]Future almanacs": "未来の年鑑", + "[Upgrade name 370]Rain prayer": "雨乞い", + "[Upgrade name 371]Seismic magic": "地震の魔法", + "[Upgrade name 372]Asteroid mining": "小惑星での採掘作業", + "[Upgrade name 373]Quantum electronics": "量子エレクトロニクス", + "[Upgrade name 374]Temporal overclocking": "一時的なオーバークロック", + "[Upgrade name 375]Contracts from beyond": "あの世からの契約書", + "[Upgrade name 376]Printing presses": "印刷機", + "[Upgrade name 377]Paganism": "異宗教", + "[Upgrade name 378]God particle": "神の粒子", + "[Upgrade name 379]Arcane knowledge": "神秘的な知識", + "[Upgrade name 380]Magical botany": "魔法の植物学", + "[Upgrade name 381]Fossil fuels": "化石燃料", + "[Upgrade name 382]Shipyards": "造船所", + "[Upgrade name 383]Primordial ores": "原始鉱石", + "[Upgrade name 384]Gold fund": "金の資金", + "[Upgrade name 385]Infernal crops": "悪魔の穀物", + "[Upgrade name 386]Abysmal glimmer": "底知れぬ微光", + "[Upgrade name 387]Relativistic parsec-skipping": "相対性パーセク航法", + "[Upgrade name 388]Primeval glow": "太古の光", + "[Upgrade name 389]Extra physics funding": "追加の物理学資金", + "[Upgrade name 390]Chemical proficiency": "化学に精通", + "[Upgrade name 391]Light magic": "光の魔法", + "[Upgrade name 392]Mystical energies": "神秘エネルギー", + "[Upgrade name 393]Synergies Vol. I": "シナジーVol.1", + "[Upgrade name 394]Synergies Vol. II": "シナジーVol.2", + "[Upgrade name 395]Heavenly cookies": "天界クッキー", + "[Upgrade name 396]Wrinkly cookies": "しわしわクッキー", + "[Upgrade name 397]Distilled essence of redoubled luck": "倍加した運の蒸留エキス", + "[Upgrade name 398]Occult obstruction": "目に見えない障害", + "[Upgrade name 399]Glucose-charged air": "ブドウ糖が充満した空気", + "[Upgrade name 400]Lavender chocolate butter biscuit": "ラベンダーチョコバタービスケット", + "[Upgrade name 401]Lombardia cookies": "ロンバルディアクッキー", + "[Upgrade name 402]Bastenaken cookies": "バストーニュクッキー", + "[Upgrade name 403]Pecan sandies": "ペカンサンディ", + "[Upgrade name 404]Moravian spice cookies": "モラビアンスパイスクッキー", + "[Upgrade name 405]Anzac biscuits": "アンザックビスケット", + "[Upgrade name 406]Buttercakes": "バターケーキ", + "[Upgrade name 407]Ice cream sandwiches": "アイスクリームサンド", + "[Upgrade name 408]Stevia Caelestis": "ステビア天界", + "[Upgrade name 409]Diabetica Daemonicus": "悪の糖尿病", + "[Upgrade name 410]Sucralosia Inutilis": "無用の糖分", + "[Upgrade name 411]Lucky digit": "ラッキーな数", + "[Upgrade name 412]Lucky number": "ラッキーな番号", + "[Upgrade name 413]Lucky payout": "ラッキーな報酬", + "[Upgrade name 414]Background selector": "背景セレクター", + "[Upgrade name 415]Lucky grandmas": "ラッキーグランマ", + "[Upgrade name 416]Your lucky cookie": "君のラッキークッキー", + "[Upgrade name 417]\"All Bets Are Off\" magic coin": "「すべて台無し」魔法のコイン", + "[Upgrade name 418]Winning lottery ticket": "当たりの宝くじ", + "[Upgrade name 419]Four-leaf clover field": "四葉のクローバー畑", + "[Upgrade name 420]A recipe book about books": "本についてのレシピ本", + "[Upgrade name 421]Leprechaun village": "レプラカーンの村", + "[Upgrade name 422]Improbability drive": "不可能発生装置", + "[Upgrade name 423]Antisuperstistronics": "反迷信学", + "[Upgrade name 424]Gemmed talismans": "宝石付きのお守り", + "[Upgrade name 425]Kitten consultants": "子猫コンサルタント", + "[Upgrade name 426]Birthday cookie": "お誕生日クッキー", + "[Upgrade name 427]Armythril mouse": "アルミスリルマウス", + "[Upgrade name 428]Reverse dementia": "認知症からの回復", + "[Upgrade name 429]Humane pesticides": "人道的農薬", + "[Upgrade name 430]Mole people": "モグラ人間", + "[Upgrade name 431]Machine learning": "機械学習", + "[Upgrade name 432]Edible money": "食べられるお金", + "[Upgrade name 433]Sick rap prayers": "変なラップのお祈り", + "[Upgrade name 434]Deluxe tailored wands": "デラックスな特注杖", + "[Upgrade name 435]Autopilot": "自動操縦", + "[Upgrade name 436]The advent of chemistry": "化学の出現", + "[Upgrade name 437]The real world": "現実世界", + "[Upgrade name 438]Second seconds": "第二の秒", + "[Upgrade name 439]Quantum comb": "量子コーム", + "[Upgrade name 440]Crystal mirrors": "クリスタルの鏡", + "[Upgrade name 441]Bunnypedes": "ウサギの足", + "[Upgrade name 442]Kitten assistants to the regional manager": "子猫アシスタントから地域マネージャーへ", + "[Upgrade name 443]Charm quarks": "お守りクォーク", + "[Upgrade name 444]Pink biscuits": "ピンクビスケット", + "[Upgrade name 445]Whole-grain cookies": "全粒粉クッキー", + "[Upgrade name 446]Candy cookies": "キャンディークッキー", + "[Upgrade name 447]Big chip cookies": "ビッグチップクッキー", + "[Upgrade name 448]One chip cookies": "ワンチップクッキー", + "[Upgrade name 449]Sugar baking": "砂糖ベーキング", + "[Upgrade name 450]Sugar craving": "砂糖の渇望", + "[Upgrade name 451]Sugar aging process": "砂糖熟成プロセス", + "[Upgrade name 452]Sugar frenzy": "砂糖フィーバー", + "[Upgrade name 453]Sprinkles cookies": "スプリンクルクッキー", + "[Upgrade name 454]Peanut butter blossoms": "ピーナツバターブロッサム", + "[Upgrade name 455]No-bake cookies": "焼かないクッキー", + "[Upgrade name 456]Florentines": "フロランタン", + "[Upgrade name 457]Chocolate crinkles": "チョコクリンクル", + "[Upgrade name 458]Maple cookies": "メープルクッキー", + "[Upgrade name 459]Turbo-charged soil": "成長促進処理済みの土", + "[Upgrade name 460]Technobsidian mouse": "テクノ黒曜石マウス", + "[Upgrade name 461]Plasmarble mouse": "プラズマ大理石マウス", + "[Upgrade name 462]Kitten marketeers": "子猫マーケティング担当", + "[Upgrade name 463]Festivity loops": "お祭りドーナツ", + "[Upgrade name 464]Persian rice cookies": "ペルシャのライスクッキー", + "[Upgrade name 465]Norwegian cookies": "ノルウェイのクッキー", + "[Upgrade name 466]Crispy rice cookies": "クリスピーライスクッキー", + "[Upgrade name 467]Ube cookies": "ウベクッキー", + "[Upgrade name 468]Butterscotch cookies": "バタースコッチクッキー", + "[Upgrade name 469]Speculaas": "スペキュラース", + "[Upgrade name 470]Elderwort biscuits": "エルダーウォートビスケット", + "[Upgrade name 471]Bakeberry cookies": "ベークベリークッキー", + "[Upgrade name 472]Duketater cookies": "デュークテータクッキー", + "[Upgrade name 473]Green yeast digestives": "緑酵母のダイジェスティブクッキー", + "[Upgrade name 474]Fern tea": "シダ茶", + "[Upgrade name 475]Ichor syrup": "イコルシロップ", + "[Upgrade name 476]Wheat slims": "小麦薄焼きクラッカー", + "[Upgrade name 477]Synthetic chocolate green honey butter biscuit": "合成チョコの緑蜂蜜バタービスケット", + "[Upgrade name 478]Royal raspberry chocolate butter biscuit": "ロイヤルラズベリーチョコバタービスケット", + "[Upgrade name 479]Ultra-concentrated high-energy chocolate butter biscuit": "超濃縮高エネルギーチョコバタービスケット", + "[Upgrade name 480]Timeproof hair dyes": "色落ちしないヘアカラー", + "[Upgrade name 481]Barnstars": "バーンスター", + "[Upgrade name 482]Mine canaries": "炭鉱のカナリア", + "[Upgrade name 483]Brownie point system": "ブラウニーポイントシステム", + "[Upgrade name 484]Grand supercycles": "グランドスーパーサイクル", + "[Upgrade name 485]Psalm-reading": "詩編の朗読", + "[Upgrade name 486]Immobile spellcasting": "不動の呪文詠唱", + "[Upgrade name 487]Restaurants at the end of the universe": "宇宙の果てのレストラン", + "[Upgrade name 488]On second thought": "再考した結果", + "[Upgrade name 489]Dimensional garbage gulper": "次元ゴミ回収機", + "[Upgrade name 490]Additional clock hands": "追加の時計の針", + "[Upgrade name 491]Baking Nobel prize": "ベーキングノーベル賞", + "[Upgrade name 492]Reverse theory of light": "光の反転理論", + "[Upgrade name 493]Revised probabilistics": "修正済みの確率論", + "[Upgrade name 494]Kitten analysts": "子猫アナリスト", + "[Upgrade name 495]Eye of the wrinkler": "シワシワ虫の眼", + "[Upgrade name 496]Inspired checklist": "やる気満々チェックリスト", + "[Upgrade name 497]Pure pitch-black chocolate butter biscuit": "高純度ブラックチョコバタービスケット", + "[Upgrade name 498]Chocolate oatmeal cookies": "チョコオートミールクッキー", + "[Upgrade name 499]Molasses cookies": "モラセスクッキー", + "[Upgrade name 500]Biscotti": "ビスコッティ", + "[Upgrade name 501]Waffle cookies": "ワッフルクッキー", + "[Upgrade name 502]Almond cookies": "アーモンドクッキー", + "[Upgrade name 503]Hazelnut cookies": "ヘーゼルナッツクッキー", + "[Upgrade name 504]Walnut cookies": "クルミクッキー", + "[Upgrade name 505]Label printer": "ラベル印刷機", + "[Upgrade name 506]Good manners": "良いマナー", + "[Upgrade name 507]Lindworms": "リントヴルム", + "[Upgrade name 508]Bore again": "うんざりする穴掘り", + "[Upgrade name 509]\"Volunteer\" interns": "「ボランティア」のインターン", + "[Upgrade name 510]Rules of acquisition": "買収のルール", + "[Upgrade name 511]War of the gods": "神々の戦争", + "[Upgrade name 512]Electricity": "電気", + "[Upgrade name 513]Universal alphabet": "世界共通アルファベット", + "[Upgrade name 514]Public betterment": "公衆の向上", + "[Upgrade name 515]Embedded microportals": "埋め込まれたマイクロポータル", + "[Upgrade name 516]Nostalgia": "ノスタルジア", + "[Upgrade name 517]The definite molecule": "確定分子", + "[Upgrade name 518]Light capture measures": "光を手に入れる方法", + "[Upgrade name 519]0-sided dice": "面のないサイコロ", + "[Upgrade name 520]Heralds": "ヘラルド", + "[Upgrade name 521]Metagrandmas": "メタグランマ", + "[Upgrade name 522]Metabakeries": "メタベーカリー", + "[Upgrade name 523]Mandelbrown sugar": "マンデルブラウンシュガー", + "[Upgrade name 524]Fractoids": "フラクタルなまやかし", + "[Upgrade name 525]Nested universe theory": "ネスト化された宇宙論", + "[Upgrade name 526]Menger sponge cake": "メンガースポンジケーキ", + "[Upgrade name 527]One particularly good-humored cow": "特にユーモアのある一頭の牛", + "[Upgrade name 528]Chocolate ouroboros": "チョコウロボロス", + "[Upgrade name 529]Nested": "ネステッド", + "[Upgrade name 530]Space-filling fibers": "宇宙を埋め尽くす繊維", + "[Upgrade name 531]Endless book of prose": "終わりのない散文の本", + "[Upgrade name 532]The set of all sets": "あらゆるセットの一式", + "[Upgrade name 533]Recursive mirrors": "合わせ鏡", + "[Upgrade name 534]Mice clicking mice": "マウスをクリックするマウス", + "[Upgrade name 535]Custard creams": "カスタードクリーム", + "[Upgrade name 536]Bourbon biscuits": "バーボンビスケット", + "[Upgrade name 537]Keepsakes": "記念品", + "[Upgrade name 538]Mini-cookies": "ミニクッキー", + "[Upgrade name 539]Sugar crystal cookies": "砂糖の結晶クッキー", + "[Upgrade name 540]Box of maybe cookies": "クッキーらしきものの箱詰め", + "[Upgrade name 541]Box of not cookies": "クッキーでないものの箱詰め", + "[Upgrade name 542]Box of pastries": "ペストリーの箱詰め", + "[Upgrade name 543]Profiteroles": "シュークリーム", + "[Upgrade name 544]Jelly donut": "ジャムドーナツ", + "[Upgrade name 545]Glazed donut": "砂糖がけドーナツ", + "[Upgrade name 546]Chocolate cake": "チョコケーキ", + "[Upgrade name 547]Strawberry cake": "イチゴケーキ", + "[Upgrade name 548]Apple pie": "アップルパイ", + "[Upgrade name 549]Lemon meringue pie": "レモンメレンゲパイ", + "[Upgrade name 550]Butter croissant": "バタークロワッサン", + "[Upgrade name 551]Cookie dough": "クッキー生地", + "[Upgrade name 552]Burnt cookie": "焦げたクッキー", + "[Upgrade name 553]A chocolate chip cookie but with the chips picked off for some reason": "なぜかチョコチップがつまみ食いされたチョコチップクッキー", + "[Upgrade name 554]Flavor text cookie": "フレーバーテキストクッキー", + "[Upgrade name 555]High-definition cookie": "HDクッキー", + "[Upgrade name 556]Toast": "トースト", + "[Upgrade name 557]Peanut butter & jelly": "ピーナツバター&ジャム", + "[Upgrade name 558]Wookies": "ウーキー", + "[Upgrade name 559]Cheeseburger": "チーズバーガー", + "[Upgrade name 560]One lone chocolate chip": "一人孤独なチョコチップ", + "[Upgrade name 561]Genius accounting": "賢い会計報告", + "[Upgrade name 562]Shimmering veil": "きらめくベール", + "[Upgrade name 563]Shimmering veil [off]": "きらめくベール[オフ]", + "[Upgrade name 564]Shimmering veil [on]": "きらめくベール[オン]", + "[Upgrade name 565]Whoopie pies": "ウーピーパイ", + "[Upgrade name 566]Caramel wafer biscuits": "キャラメルウエハービスケット", + "[Upgrade name 567]Chocolate chip mocha cookies": "チョコチップモカクッキー", + "[Upgrade name 568]Earl Grey cookies": "アールグレイクッキー", + "[Upgrade name 569]Corn syrup cookies": "コーンシロップクッキー", + "[Upgrade name 570]Icebox cookies": "アイスボックスクッキー", + "[Upgrade name 571]Graham crackers": "グラハムクッキー", + "[Upgrade name 572]Hardtack": "乾パン", + "[Upgrade name 573]Cornflake cookies": "コーンフレーククッキー", + "[Upgrade name 574]Tofu cookies": "豆腐クッキー", + "[Upgrade name 575]Gluten-free cookies": "グルテンフリークッキー", + "[Upgrade name 576]Russian bread cookies": "ロシアンブレッドクッキー", + "[Upgrade name 577]Lebkuchen": "レープクーヘン", + "[Upgrade name 578]Aachener Printen": "アーヘンプリンテン", + "[Upgrade name 579]Canistrelli": "カニストレリ", + "[Upgrade name 580]Nice biscuits": "ニースビスケット", + "[Upgrade name 581]French pure butter cookies": "フランスの純バタークッキー", + "[Upgrade name 582]Petit beurre": "プチブール", + "[Upgrade name 583]Nanaimo bars": "ナナイモバー", + "[Upgrade name 584]Berger cookies": "バーガークッキー", + "[Upgrade name 585]Chinsuko": "ちんすこう", + "[Upgrade name 586]Panda koala biscuits": "パンダコアラビスケット", + "[Upgrade name 587]Putri salju": "プトリサルジュ", + "[Upgrade name 588]Milk cookies": "ミルククッキー", + "[Upgrade name 589]Cookie crumbs": "クッキークラム", + "[Upgrade name 590]Chocolate chip cookie": "チョコチップクッキー", + "[Upgrade name 591]Cosmic beginner's luck": "宇宙規模のビギナーズラック", + "[Upgrade name 592]Reinforced membrane": "強化膜", + "[Upgrade name 593]Binary grandmas": "バイナリーグランマ", + "[Upgrade name 594]The JavaScript console for dummies": "サルでもわかるJavaScriptコンソール", + "[Upgrade name 595]64bit arrays": "64ビット配列", + "[Upgrade name 596]Stack overflow": "スタックオーバーフロー", + "[Upgrade name 597]Enterprise compiler": "エンタープライズコンパイラー", + "[Upgrade name 598]Syntactic sugar": "シンタックスシュガー", + "[Upgrade name 599]A nice cup of coffee": "一杯のおいしいコーヒー", + "[Upgrade name 600]Just-in-time baking": "食べる直前にベーキング", + "[Upgrade name 601]cookies++": "クッキー++", + "[Upgrade name 602]Software updates": "ソフトウエアアップデート", + "[Upgrade name 603]Game.Loop": "Game.Loop", + "[Upgrade name 604]eval()": "eval()", + "[Upgrade name 605]Script grannies": "スクリプトおばあちゃん", + "[Upgrade name 606]Tombola computing": "ビンゴ計算", + "[Upgrade name 607]Kruidnoten": "クラウドノーテン", + "[Upgrade name 608]Marie biscuits": "マリービスケット", + "[Upgrade name 609]Meringue cookies": "メレンゲクッキー", + "[Upgrade name 610]Pizza": "ピザ", + "[Upgrade name 611]Crackers": "クラッカー", + "[Upgrade name 612]Havabreaks": "キットカット", + "[Upgrade name 613]Kitten executives": "子猫重役", + "[Upgrade name 614]Chai tea cookies": "チャイティークッキー", + "[Upgrade name 615]Yogurt cookies": "ヨーグルトクッキー", + "[Upgrade name 616]Thumbprint cookies": "サムプリントクッキー", + "[Upgrade name 617]Pizzelle": "ピッツェル", + "[Upgrade name 618]Zilla wafers": "ジラウエハース", + "[Upgrade name 619]Dim Dams": "ディムダム", + "[Upgrade name 620]Candy": "キャンディー", + "[Upgrade name 621]Fortune #001": "フォーチュンNo.001", + "[Upgrade name 622]Fortune #002": "フォーチュンNo.002", + "[Upgrade name 623]Fortune #003": "フォーチュンNo.003", + "[Upgrade name 624]Fortune #004": "フォーチュンNo.004", + "[Upgrade name 625]Fortune #005": "フォーチュンNo.005", + "[Upgrade name 626]Fortune #006": "フォーチュンNo.006", + "[Upgrade name 627]Fortune #007": "フォーチュンNo.007", + "[Upgrade name 628]Fortune #008": "フォーチュンNo.008", + "[Upgrade name 629]Fortune #009": "フォーチュンNo.009", + "[Upgrade name 630]Fortune #010": "フォーチュンNo.010", + "[Upgrade name 631]Fortune #011": "フォーチュンNo.011", + "[Upgrade name 632]Fortune #012": "フォーチュンNo.012", + "[Upgrade name 633]Fortune #013": "フォーチュンNo.013", + "[Upgrade name 634]Fortune #014": "フォーチュンNo.014", + "[Upgrade name 635]Fortune #015": "フォーチュンNo.015", + "[Upgrade name 636]Fortune #016": "フォーチュンNo.016", + "[Upgrade name 637]Fortune #017": "フォーチュンNo.017", + "[Upgrade name 638]Fortune #100": "フォーチュンNo.100", + "[Upgrade name 639]Fortune #101": "フォーチュンNo.101", + "[Upgrade name 640]Fortune #102": "フォーチュンNo.102", + "[Upgrade name 641]Fortune #103": "フォーチュンNo.103", + "[Upgrade name 642]Fortune #104": "フォーチュンNo.104", + "[Upgrade name 643]Fortune cookies": "フォーチュンクッキー", + "[Upgrade name 644]A really good guide book": "極めて優れたガイドブック", + "[Upgrade name 645]Prism heart biscuits": "プリズムハートビスケット", + "[Upgrade name 646]Kitten wages": "子猫の賃金", + "[Upgrade name 647]Pet the dragon": "ドラゴンをなでる", + "[Upgrade name 648]Dragon scale": "ドラゴンの鱗", + "[Upgrade name 649]Dragon claw": "ドラゴンの爪", + "[Upgrade name 650]Dragon fang": "ドラゴンの牙", + "[Upgrade name 651]Dragon teddy bear": "ドラゴンテディベア", + "[Upgrade name 652]Granola cookies": "グラノーラクッキー", + "[Upgrade name 653]Ricotta cookies": "リコッタクッキー", + "[Upgrade name 654]Roze koeken": "ピンクケーキ", + "[Upgrade name 655]Peanut butter cup cookies": "ピーナツバターカップクッキー", + "[Upgrade name 656]Sesame cookies": "セサミクッキー", + "[Upgrade name 657]Taiyaki": "たい焼き", + "[Upgrade name 658]Vanillekipferl": "バニラキプフェル", + "[Upgrade name 659]Cosmic chocolate butter biscuit": "コズミックチョコバタービスケット", + "[Upgrade name 660]Nonillion fingers": "百穣本の指", + "[Upgrade name 661]Miraculite mouse": "ミラキュライトマウス", + "[Upgrade name 662]Generation degeneration": "世代後退", + "[Upgrade name 663]Global seed vault": "世界種子貯蔵庫", + "[Upgrade name 664]Air mining": "エアーマイニング", + "[Upgrade name 665]Behavioral reframing": "行動のリフレーミング", + "[Upgrade name 666]Altruistic loop": "利他的ループ", + "[Upgrade name 667]A novel idea": "斬新なアイデア", + "[Upgrade name 668]Spelling bees": "呪文を唱える蜂", + "[Upgrade name 669]Toroid universe": "トロイド宇宙", + "[Upgrade name 670]Hermetic reconciliation": "錬金術の和解", + "[Upgrade name 671]His advent": "彼の降臨", + "[Upgrade name 672]Split seconds": "瞬く間", + "[Upgrade name 673]Flavor itself": "風味そのもの", + "[Upgrade name 674]Light speed limit": "光速制限", + "[Upgrade name 675]A touch of determinism": "ちょっとした決定論", + "[Upgrade name 676]This upgrade": "今回のアップグレード", + "[Upgrade name 677]Your biggest fans": "君の一番のファン", + "[Upgrade name 678]Battenberg biscuits": "バッテンバーグビスケット", + "[Upgrade name 679]Rosette cookies": "ロゼットクッキー", + "[Upgrade name 680]Gangmakers": "ギャングメーカー", + "[Upgrade name 681]Welsh cookies": "ウェルシュクッキー", + "[Upgrade name 682]Raspberry cheesecake cookies": "ラズベリーチーズケーキクッキー", + "[Upgrade name 683]Alternate grandmas": "補欠グランマ", + "[Upgrade name 684]Manifest destiny": "自明の宿命説", + "[Upgrade name 685]The multiverse in a nutshell": "要するに多次元的宇宙", + "[Upgrade name 686]All-conversion": "万物の変換", + "[Upgrade name 687]Multiverse agents": "マルチバース工作員", + "[Upgrade name 688]Escape plan": "脱出計画", + "[Upgrade name 689]Game design": "ゲーム設計", + "[Upgrade name 690]Sandbox universes": "サンドボックス宇宙", + "[Upgrade name 691]Multiverse wars": "マルチバース戦争", + "[Upgrade name 692]Mobile ports": "モバイルポート", + "[Upgrade name 693]Encapsulated realities": "カプセルに閉じ込められた現実", + "[Upgrade name 694]Extrinsic clicking": "外部からのクリック", + "[Upgrade name 695]Universal idling": "普遍的アイドリング", + "[Upgrade name 696]Perforated mille-feuille cosmos": "穴の開いたミルフィーユ宇宙", + "[Upgrade name 697]Infraverses and superverses": "インフラバースとスーパーバース", + "[Upgrade name 698]Fortune #018": "フォーチュンNo.018", + "[Upgrade name 699]Butter biscuit (with butter)": "バタービスケット(バター入り)", + "[Upgrade name 700]Visits": "立ち寄り", + "[Upgrade name 701]Reverse-veganism": "逆ヴィーガン主義", + "[Upgrade name 702]Caramel alloys": "キャラメル合金", + "[Upgrade name 703]The infinity engine": "無限エンジン", + "[Upgrade name 704]Diminishing tax returns": "所得申告額の減少", + "[Upgrade name 705]Apparitions": "幽霊", + "[Upgrade name 706]Wizard basements": "魔法使いの地下室", + "[Upgrade name 707]Prime directive": "最優先指令", + "[Upgrade name 708]Chromatic cycling": "色彩循環", + "[Upgrade name 709]Domestic rifts": "家庭内分裂", + "[Upgrade name 710]Patience abolished": "忍耐廃止", + "[Upgrade name 711]Delicious pull": "おいしい引力", + "[Upgrade name 712]Occam's laser": "オッカムのレーザー", + "[Upgrade name 713]On a streak": "連勝中", + "[Upgrade name 714]A box": "箱", + "[Upgrade name 715]Hacker shades": "ハッカーの影", + "[Upgrade name 716]Break the fifth wall": "五番目の壁を破れ", + "[Upgrade name 717]Cat ladies": "キャットレディー", + "[Upgrade name 718]Milkhelp® lactose intolerance relief tablets": "Milkhelp®ラクトース不耐症緩和薬", + "[Upgrade name 719]Aura gloves": "オーラ手袋", + "[Upgrade name 720]Luminous gloves": "光る手袋", + "[Upgrade name 721]Bokkenpootjes": "ボッケンポーチェス", + "[Upgrade name 722]Fat rascals": "ファットラスカル", + "[Upgrade name 723]Ischler cookies": "イシュラークッキー", + "[Upgrade name 724]Matcha cookies": "抹茶クッキー", + "[Upgrade name 725]Earl Grey macarons": "アールグレイマカロン", + "[Upgrade name 726]Pokey": "ポッキー", + "[Upgrade name 727]Cashew cookies": "カシュ―クッキー", + "[Upgrade name 728]Milk chocolate cookies": "ミルクチョコクッキー", + "[Upgrade name 729]Brainy grandmas": "頭脳派おばあちゃん", + "[Upgrade name 730]Principled neural shackles": "ニューラル自我制限", + "[Upgrade name 731]Obey": "従え", + "[Upgrade name 732]A sprinkle of irrationality": "ひとつまみの非合理性", + "[Upgrade name 733]Front and back hemispheres": "前方と後方の脳半球", + "[Upgrade name 734]Neural networking": "ニューラルネットワーキング", + "[Upgrade name 735]Cosmic brainstorms": "宇宙的ブレインストーム", + "[Upgrade name 736]Megatherapy": "メガ・セラピー", + "[Upgrade name 737]Synaptic lubricant": "シナプス用潤滑剤", + "[Upgrade name 738]Psychokinesis": "サイコキネシス", + "[Upgrade name 739]Spines": "脊椎", + "[Upgrade name 740]Neuraforming": "ニューラルフォーミング", + "[Upgrade name 741]Epistemological trickery": "認識論的トリック", + "[Upgrade name 742]Every possible idea": "ありとあらゆる考え", + "[Upgrade name 743]Kitchen cabinets": "台所の戸棚", + "[Upgrade name 744]Cookie mulch": "クッキーマルチ", + "[Upgrade name 745]Delicious mineralogy": "美味しい鉱物学", + "[Upgrade name 746]N-dimensional assembly lines": "N次元の製造ライン", + "[Upgrade name 747]Cookie Points": "クッキーポイント", + "[Upgrade name 748]Negatheism": "マイナス神論", + "[Upgrade name 749]Magical realism": "魔法的現実主義", + "[Upgrade name 750]Cosmic foreground radiation": "宇宙前景放射", + "[Upgrade name 751]Arcanized glassware": "神秘のガラス製品", + "[Upgrade name 752]Portal guns": "ポータルガン", + "[Upgrade name 753]Timeproof upholstery": "耐時間性の椅子カバー", + "[Upgrade name 754]Employee minification": "従業員の縮小化", + "[Upgrade name 755]Hyperblack paint": "ハイパーブラック塗料", + "[Upgrade name 756]Silver lining maximization": "ポジティブの最大化", + "[Upgrade name 757]Multiscale profiling": "マルチスケール・プロファイリング", + "[Upgrade name 758]PHP containment vats": "PHP捕獲用バット", + "[Upgrade name 759]Opposite universe": "反対な宇宙", + "[Upgrade name 760]The land of dreams": "夢みる土地", + "[Upgrade name 761]Thoughts & prayers": "思いと祈りを捧ぐ", + "[Upgrade name 762]Fertile minds": "肥沃な頭脳", + "[Upgrade name 763]Fortune #019": "フォーチュン#019", + "[Upgrade name 764]Decillion fingers": "十溝本の指", + "[Upgrade name 765]Aetherice mouse": "夢幻的マウス", + "[Upgrade name 766]Kitten admins": "管理係の子猫ちゃん", + "[Upgrade name 767]Everybutter biscuit": "毎バタービスケット", + "[Upgrade name 768]Unshackled cursors": "抑制解除・カーソル", + "[Upgrade name 769]Unshackled grandmas": "抑制解除・おばあちゃん", + "[Upgrade name 770]Unshackled farms": "抑制解除・農場", + "[Upgrade name 771]Unshackled mines": "抑制解除・鉱山", + "[Upgrade name 772]Unshackled factories": "抑制解除・工場", + "[Upgrade name 773]Unshackled banks": "抑制解除・銀行", + "[Upgrade name 774]Unshackled temples": "抑制解除・聖堂", + "[Upgrade name 775]Unshackled wizard towers": "抑制解除・魔法使いの塔", + "[Upgrade name 776]Unshackled shipments": "抑制解除・積み荷", + "[Upgrade name 777]Unshackled alchemy labs": "抑制解除・錬金術研究所", + "[Upgrade name 778]Unshackled portals": "抑制解除・ポータル", + "[Upgrade name 779]Unshackled time machines": "抑制解除・タイムマシン", + "[Upgrade name 780]Unshackled antimatter condensers": "抑制解除・反物質凝縮装置", + "[Upgrade name 781]Unshackled prisms": "抑制解除・プリズム", + "[Upgrade name 782]Unshackled chancemakers": "抑制解除・チャンスメーカー", + "[Upgrade name 783]Unshackled fractal engines": "抑制解除・フラクタルエンジン", + "[Upgrade name 784]Unshackled javascript consoles": "抑制解除・JavaScriptコンソール", + "[Upgrade name 785]Unshackled idleverses": "抑制解除・放置バース", + "[Upgrade name 786]Unshackled cortex bakers": "抑制解除・コーテックス・ベイカー", + "[Upgrade name 787]Unshackled flavor": "抑制解除・フレーバー", + "[Upgrade name 788]Unshackled berrylium": "抑制解除・ベリーリウム", + "[Upgrade name 789]Unshackled blueberrylium": "抑制解除・ブルーベリーリウム", + "[Upgrade name 790]Unshackled chalcedhoney": "抑制解除・カルセドハニー", + "[Upgrade name 791]Unshackled buttergold": "抑制解除・バターゴールド", + "[Upgrade name 792]Unshackled sugarmuck": "抑制解除・砂糖岩", + "[Upgrade name 793]Unshackled jetmint": "抑制解除・黒玉ミント", + "[Upgrade name 794]Unshackled cherrysilver": "抑制解除・チェリーシルバー", + "[Upgrade name 795]Unshackled hazelrald": "抑制解除・ヘーゼルメラルド", + "[Upgrade name 796]Unshackled mooncandy": "抑制解除・ムーンキャンディ", + "[Upgrade name 797]Unshackled astrofudge": "抑制解除・アストロファッジ", + "[Upgrade name 798]Unshackled alabascream": "抑制解除・アラバスクリーム", + "[Upgrade name 799]Unshackled iridyum": "抑制解除・オイシイリジウム", + "[Upgrade name 800]Unshackled glucosmium": "抑制解除・グルコオスミウム", + "[Upgrade name 801]Delicate touch": "繊細なタッチ", + "[Upgrade name 802]Steadfast murmur": "確固たるささやき", + "[Upgrade name 803]Glittering edge": "きらめくフチ", + "[Upgrade name 804]Distinguished wallpaper assortment": "一級品の壁紙アソートメント", + "[Upgrade name 805]Sound test": "サウンドテスト", + "[Upgrade name 806]Jukebox": "ジュークボックス", + "[Upgrade name 807]Dalgona cookies": "ダルゴナクッキー", + "[Upgrade name 808]Spicy cookies": "ピリ辛クッキー", + "[Upgrade name 809]Smile cookies": "ニコニコクッキー", + "[Upgrade name 810]Kolachy cookies": "コラチュキクッキー", + "[Upgrade name 811]Gomma cookies": "ゴンマクッキー", + "[Upgrade name 812]Vegan cookies": "ヴィーガンクッキー", + "[Upgrade name 813]Coyotas": "コヨータ", + "[Upgrade name 814]Frosted sugar cookies": "アイシングシュガークッキー", + "[Upgrade name 815]Marshmallow sandwich cookies": "マシュマロサンドイッチクッキー", + "[Upgrade name 816]Web cookies": "ウェブクッキー", + "[Upgrade name 817]Steamed cookies": "Steamed・クッキー", + "[Upgrade name 818]Deep-fried cookie dough": "油で揚げたクッキー生地", + "[Achievement name 0]Wake and bake": "目覚めの一枚", + "[Achievement name 1]Making some dough": "生地作り", + "[Achievement name 2]So baked right now": "焼きたくて仕方がない", + "[Achievement name 3]Fledgling bakery": "駆け出しのベーカリー", + "[Achievement name 4]Affluent bakery": "裕福なベーカリー", + "[Achievement name 5]World-famous bakery": "世界的に有名なベーカリー", + "[Achievement name 6]Cosmic bakery": "宇宙ベーカリー", + "[Achievement name 7]Galactic bakery": "銀河ベーカリー", + "[Achievement name 8]Universal bakery": "普遍的ベーカリー", + "[Achievement name 9]Timeless bakery": "時代超越ベーカリー", + "[Achievement name 10]Infinite bakery": "無限ベーカリー", + "[Achievement name 11]Immortal bakery": "不死ベーカリー", + "[Achievement name 12]Don't stop me now": "もう止められない", + "[Achievement name 13]You can stop now": "もうやめていいよ", + "[Achievement name 14]Cookies all the way down": "ずっとクッキー", + "[Achievement name 15]Overdose": "過剰投与", + "[Achievement name 16]Casual baking": "カジュアルベーキング", + "[Achievement name 17]Hardcore baking": "ハードコアベーキング", + "[Achievement name 18]Steady tasty stream": "おいしさの安定生産", + "[Achievement name 19]Cookie monster": "クッキーモンスター", + "[Achievement name 20]Mass producer": "大量生産", + "[Achievement name 21]Cookie vortex": "クッキー旋風", + "[Achievement name 22]Cookie pulsar": "クッキーパルサー", + "[Achievement name 23]Cookie quasar": "クッキークエイサー", + "[Achievement name 24]Oh hey, you're still here": "やあ、まだいたんだね", + "[Achievement name 25]Let's never bake again": "もう一生焼かない", + "[Achievement name 26]Sacrifice": "犠牲", + "[Achievement name 27]Oblivion": "忘却", + "[Achievement name 28]From scratch": "ゼロから", + "[Achievement name 29]Neverclick": "クリックせざる者", + "[Achievement name 30]Clicktastic": "クリックタスティック", + "[Achievement name 31]Clickathlon": "クリックマラソン", + "[Achievement name 32]Clickolympics": "クリックオリンピック", + "[Achievement name 33]Clickorama": "クリック万歳", + "[Achievement name 34]Click": "クリック", + "[Achievement name 35]Double-click": "ダブルクリック", + "[Achievement name 36]Mouse wheel": "マウスホイール", + "[Achievement name 37]Of Mice and Men": "マウスと人間", + "[Achievement name 38]The Digital": "ザ・指", + "[Achievement name 39]Just wrong": "非人道的", + "[Achievement name 40]Grandma's cookies": "グランマのクッキー", + "[Achievement name 41]Sloppy kisses": "遠慮したいチュー", + "[Achievement name 42]Retirement home": "老人ホーム", + "[Achievement name 43]Bought the farm": "農場を購入", + "[Achievement name 44]Reap what you sow": "蒔いた種は自分で刈り取れ", + "[Achievement name 45]Farm ill": "農業病", + "[Achievement name 46]Production chain": "生産の連鎖", + "[Achievement name 47]Industrial revolution": "産業革命", + "[Achievement name 48]Global warming": "地球温暖化", + "[Achievement name 49]You know the drill": "やることはわかってるな", + "[Achievement name 50]Excavation site": "掘削現場", + "[Achievement name 51]Hollow the planet": "惑星を空洞化", + "[Achievement name 52]Expedition": "探求の旅へ", + "[Achievement name 53]Galactic highway": "銀河ハイウェイ", + "[Achievement name 54]Far far away": "もっと遠くへ", + "[Achievement name 55]Transmutation": "変異", + "[Achievement name 56]Transmogrification": "奇怪な変形", + "[Achievement name 57]Gold member": "ゴールドメンバー", + "[Achievement name 58]A whole new world": "新しい世界", + "[Achievement name 59]Now you're thinking": "やっと頭が動き出したな", + "[Achievement name 60]Dimensional shift": "次元シフト", + "[Achievement name 61]Time warp": "タイムワープ", + "[Achievement name 62]Alternate timeline": "別の時間軸", + "[Achievement name 63]Rewriting history": "歴史を書き換える", + "[Achievement name 64]One with everything": "全てを備えた者", + "[Achievement name 65]Mathematician": "数学者", + "[Achievement name 66]Base 10": "10進法", + "[Achievement name 67]Golden cookie": "黄金クッキー", + "[Achievement name 68]Lucky cookie": "ラッキークッキー", + "[Achievement name 69]A stroke of luck": "思いがけない幸運", + "[Achievement name 70]Cheated cookies taste awful": "ズルしたクッキーの味は最悪だ", + "[Achievement name 71]Uncanny clicker": "奇怪なクリック", + "[Achievement name 72]Builder": "建造者", + "[Achievement name 73]Architect": "建築士", + "[Achievement name 74]Enhancer": "向上する者", + "[Achievement name 75]Augmenter": "強化する者", + "[Achievement name 76]Cookie-dunker": "クッキーをミルクに浸す者", + "[Achievement name 77]Fortune": "幸運", + "[Achievement name 78]True Neverclick": "真のクリックせざる者", + "[Achievement name 79]Elder nap": "エルダーの昼寝", + "[Achievement name 80]Elder slumber": "エルダーのまどろみ", + "[Achievement name 81]Elder": "エルダー", + "[Achievement name 82]Elder calm": "エルダーの平静", + "[Achievement name 83]Engineer": "エンジニア", + "[Achievement name 84]Leprechaun": "レプラカーン", + "[Achievement name 85]Black cat's paw": "黒猫の肉球", + "[Achievement name 86]Nihilism": "ニヒリズム", + "[Achievement name 87]Antibatter": "反クッキー生地", + "[Achievement name 88]Quirky quarks": "奇妙な素粒子", + "[Achievement name 89]It does matter!": "重要マタ―だ!", + "[Achievement name 90]Upgrader": "アップグレーダー", + "[Achievement name 91]Centennial": "百年に一度", + "[Achievement name 92]Hardcore": "ハードコア", + "[Achievement name 93]Speed baking I": "高速ベーキングI", + "[Achievement name 94]Speed baking II": "高速ベーキングII", + "[Achievement name 95]Speed baking III": "高速ベーキングIII", + "[Achievement name 96]Getting even with the oven": "オーブンとイーブンになる仕返し", + "[Achievement name 97]Now this is pod-smashing": "これこそ壺割りだ", + "[Achievement name 98]Chirped out": "ピーピー音", + "[Achievement name 99]Follow the white rabbit": "白ウサギを追え", + "[Achievement name 100]Clickasmic": "クリック症候群", + "[Achievement name 101]Friend of the ancients": "古代人の友", + "[Achievement name 102]Ruler of the ancients": "古代人の支配者", + "[Achievement name 103]Wholesome": "健全", + "[Achievement name 104]Just plain lucky": "単にラッキーなだけ", + "[Achievement name 105]Itchscratcher": "孫の手", + "[Achievement name 106]Wrinklesquisher": "シワ退治", + "[Achievement name 107]Moistburster": "うるおい炸裂", + "[Achievement name 108]Spooky cookies": "お化けクッキー", + "[Achievement name 109]Coming to town": "町にやってくる", + "[Achievement name 110]All hail Santa": "サンタに万歳", + "[Achievement name 111]Let it snow": "雪やこんこん", + "[Achievement name 112]Oh deer": "そんな馬鹿な", + "[Achievement name 113]Sleigh of hand": "巧みな手さばき", + "[Achievement name 114]Reindeer sleigher": "トナカイスレイヤー", + "[Achievement name 115]Perfected agriculture": "完璧な農業", + "[Achievement name 116]Ultimate automation": "究極の自動化", + "[Achievement name 117]Can you dig it": "君に掘れるかな", + "[Achievement name 118]Type II civilization": "タイプI文明", + "[Achievement name 119]Gild wars": "ギルド・ウォーズ", + "[Achievement name 120]Brain-split": "ブレイン・スプリット", + "[Achievement name 121]Time duke": "時の君主", + "[Achievement name 122]Molecular maestro": "分子マエストロ", + "[Achievement name 123]Lone photon": "孤立した光子", + "[Achievement name 124]Dazzling glimmer": "まばゆい光", + "[Achievement name 125]Blinding flash": "目がくらむ閃光", + "[Achievement name 126]Unending glow": "永遠の輝き", + "[Achievement name 127]Lord of Constructs": "創造の主", + "[Achievement name 128]Lord of Progress": "進捗の主", + "[Achievement name 129]Bicentennial": "200周年", + "[Achievement name 130]Lovely cookies": "素敵なクッキー", + "[Achievement name 131]Centennial and a half": "150周年", + "[Achievement name 132]Tiny cookie": "ちっちゃなクッキー", + "[Achievement name 133]You win a cookie": "記念にクッキー1枚", + "[Achievement name 134]Click delegator": "クリック委任者", + "[Achievement name 135]Gushing grannies": "湧き出るおばあちゃん", + "[Achievement name 136]I hate manure": "肥料は嫌い", + "[Achievement name 137]Never dig down": "掘り下げるべからず", + "[Achievement name 138]The incredible machine": "最高のマシン", + "[Achievement name 139]And beyond": "その先へ", + "[Achievement name 140]Magnum Opus": "最高傑作", + "[Achievement name 141]With strange eons": "異様に長い時の中で", + "[Achievement name 142]Spacetime jigamaroo": "時空の正体不明なもの", + "[Achievement name 143]Supermassive": "超巨大", + "[Achievement name 144]Praise the sun": "太陽を崇めよ", + "[Achievement name 145]Clickageddon": "クリックマゲドン", + "[Achievement name 146]Clicknarok": "クリックナロク", + "[Achievement name 147]Extreme polydactyly": "極端な多指症", + "[Achievement name 148]Dr. T": "ドクターT", + "[Achievement name 149]The old never bothered me anyway": "高齢なんてへっちゃら", + "[Achievement name 150]Homegrown": "自家栽培", + "[Achievement name 151]Technocracy": "技術主義国家", + "[Achievement name 152]The center of the Earth": "地球の中心", + "[Achievement name 153]We come in peace": "我々は平和な種族です", + "[Achievement name 154]The secrets of the universe": "宇宙の秘密", + "[Achievement name 155]Realm of the Mad God": "狂った神の領域", + "[Achievement name 156]Forever and ever": "ずっと永遠に", + "[Achievement name 157]Walk the planck": "プランク(板)の上を歩いてみろ、量子論者", + "[Achievement name 158]Rise and shine": "さあ起きよう", + "[Achievement name 159]God complex": "神様コンプレックス", + "[Achievement name 160]Third-party": "第三者", + "[Achievement name 161]Dematerialize": "非物質化", + "[Achievement name 162]Nil zero zilch": "なし、ナシ、無し", + "[Achievement name 163]Transcendence": "超越", + "[Achievement name 164]Obliterate": "抹消", + "[Achievement name 165]Negative void": "負の虚無", + "[Achievement name 166]The hunt is on": "狩りの始まり", + "[Achievement name 167]Egging on": "タマゴの準備", + "[Achievement name 168]Mass Easteria": "集団熱狂イースター", + "[Achievement name 169]Hide & seek champion": "かくれんぼチャンピオン", + "[Achievement name 170]What's in a name": "名前なんてどうでもいい", + "[Achievement name 171]Pretty penny": "かなりの額", + "[Achievement name 172]Fit the bill": "申し分ない", + "[Achievement name 173]A loan in the dark": "ア・ローン・イン・ザ・ダーク", + "[Achievement name 174]Need for greed": "ニード・フォー・グリード", + "[Achievement name 175]It's the economy, stupid": "それが経済というものだ、愚か者", + "[Achievement name 176]Your time to shrine": "君の出番", + "[Achievement name 177]Shady sect": "怪しい宗派", + "[Achievement name 178]New-age cult": "ニューエージカルト", + "[Achievement name 179]Organized religion": "組織的宗教", + "[Achievement name 180]Fanaticism": "熱狂", + "[Achievement name 181]Bewitched": "魔法にかけられて", + "[Achievement name 182]The sorcerer's apprentice": "魔法使いの弟子", + "[Achievement name 183]Charms and enchantments": "お守りと魔法", + "[Achievement name 184]Curses and maledictions": "呪いの言葉", + "[Achievement name 185]Magic kingdom": "魔法王国", + "[Achievement name 186]Vested interest": "利権", + "[Achievement name 187]New world order": "新世界の秩序", + "[Achievement name 188]Hocus pocus": "アーブラカダブラ", + "[Achievement name 189]Finger clickin' good": "イイ感じのクリック", + "[Achievement name 190]Panic at the bingo": "ビンゴでパニック", + "[Achievement name 191]Rake in the dough": "がっぽり稼ぐ", + "[Achievement name 192]Quarry on": "掘り続ける", + "[Achievement name 193]Yes I love technology": "テクロノロジーが大好きです", + "[Achievement name 194]Paid in full": "全額支払完了", + "[Achievement name 195]Church of Cookiology": "クッキー学教会", + "[Achievement name 196]Too many rabbits, not enough hats": "ウサギが多すぎ、帽子が足りない", + "[Achievement name 197]The most precious cargo": "最も貴重な貨物", + "[Achievement name 198]The Aureate": "金ピカ", + "[Achievement name 199]Ever more hideous": "これまでにないおぞましさ", + "[Achievement name 200]Be kind, rewind": "僕らのミライへ逆回転", + "[Achievement name 201]Infinitesimal": "無限小", + "[Achievement name 202]A still more glorious dawn": "静かで輝かしい夜明け", + "[Achievement name 203]Rebirth": "再誕", + "[Achievement name 204]Here you go": "はい、どうぞ", + "[Achievement name 205]Resurrection": "復活", + "[Achievement name 206]Reincarnation": "輪廻", + "[Achievement name 207]Endless cycle": "終わりなきサイクル", + "[Achievement name 208]The agemaster": "エイジマスター", + "[Achievement name 209]To oldly go": "果敢に歳をとれ", + "[Achievement name 210]Gardener extraordinaire": "庭師の匠", + "[Achievement name 211]Tectonic ambassador": "地質構造のアンバサダー", + "[Achievement name 212]Rise of the machines": "マシンの反乱", + "[Achievement name 213]Acquire currency": "金がすべて", + "[Achievement name 214]Zealotry": "熱狂的行動", + "[Achievement name 215]The wizarding world": "魔法使いの世界", + "[Achievement name 216]Parsec-masher": "パーセク短縮装置", + "[Achievement name 217]The work of a lifetime": "人生をかけた研究", + "[Achievement name 218]A place lost in time": "時間に取り残された場所", + "[Achievement name 219]Heat death": "熱死", + "[Achievement name 220]Microcosm": "小宇宙", + "[Achievement name 221]Bright future": "明るい未来", + "[Achievement name 222]Here be dragon": "ここにドラゴンあり", + "[Achievement name 223]How?": "どうやって?", + "[Achievement name 224]The land of milk and cookies": "ミルクとクッキーの国", + "[Achievement name 225]He who controls the cookies controls the universe": "クッキーを制する者は宇宙を制する", + "[Achievement name 226]Tonight on Hoarders": "『守銭奴たち』今夜の内容", + "[Achievement name 227]Are you gonna eat all that?": "それ、全部食べるつもり?", + "[Achievement name 228]We're gonna need a bigger bakery": "もっと大きなベーカリーが必要だ", + "[Achievement name 229]In the mouth of madness": "マウス・オブ・マッドネス", + "[Achievement name 230]Brought to you by the letter
": "クッキーの提供でお届けしました
", + "[Achievement name 231]A world filled with cookies": "クッキーで満たされた世界", + "[Achievement name 232]When this baby hits 36 quadrillion cookies per hour": "こいつが毎時三万六千兆クッキーに到達したら", + "[Achievement name 233]Fast and delicious": "早くてうまい", + "[Achievement name 234]Cookiehertz : a really, really tasty hertz": "クッキーヘルツ:すごく、すごーくおいしいヘルツ", + "[Achievement name 235]Woops, you solved world hunger": "おっと、世界飢餓を解決しましたね", + "[Achievement name 236]Turbopuns": "超高速ダジャレ", + "[Achievement name 237]Faster menner": "最上級の俊足", + "[Achievement name 238]And yet you're still hungry": "それでもまだお腹が空いている", + "[Achievement name 239]The Abakening": "ベーキングに目覚める", + "[Achievement name 240]There's really no hard limit to how long these achievement names can be and to be quite honest I'm rather curious to see how far we can go.
Adolphus W. Green (1844–1917) started as the Principal of the Groton School in 1864. By 1865, he became second assistant librarian at the New York Mercantile Library; from 1867 to 1869, he was promoted to full librarian. From 1869 to 1873, he worked for Evarts, Southmayd & Choate, a law firm co-founded by William M. Evarts, Charles Ferdinand Southmayd and Joseph Hodges Choate. He was admitted to the New York State Bar Association in 1873.
Anyway, how's your day been?": "こうした実績の名前の長さに確固とした上限はないので、正直に言うと、どれくらい長くできるか興味があるんです。
アドルファス・W・グリーン(1844年~1917年)は、1864年にグロトンスクールの校長として働き始めました。1865年には、ニューヨーク商業図書館協会の図書館で第二司書助手になり、1867年から1869年には、完全に司書へと昇進しました。1869年から1873年にかけて、ウィリアム・M・エヴァーツ、チャールズ・フェルディナンド・サウスメイド、ジョセフ・ホッジス・コーテが共同設立した法律事務所、エヴァーツ・サウスメイド・アンド・コーテで働きました。そして、1873年にニューヨーク州弁護士会に入会しました。
ところで、今日はどうだった?", + "[Achievement name 241]Fast": "速いね", + "[Achievement name 242]Bicentennial and a half": "250周年", + "[Achievement name 243]Tabloid addiction": "タブロイド中毒", + "[Achievement name 244]Clickastrophe": "クリック大惨事", + "[Achievement name 245]Clickataclysm": "クリック大変動", + "[Achievement name 246]Thumbs, phalanges, metacarpals": "親指、指節骨、中手骨", + "[Achievement name 247]Polymath": "博学", + "[Achievement name 248]The elder scrolls": "エルダースクロール", + "[Achievement name 249]To crumbs, you say?": "粉々になったって?", + "[Achievement name 250]Seedy business": "種だらけのビジネス", + "[Achievement name 251]Freak fracking": "変わった水圧破砕法", + "[Achievement name 252]Modern times": "モダンタイムス", + "[Achievement name 253]The nerve of war": "戦争の神経", + "[Achievement name 254]Wololo": "ウォロロ", + "[Achievement name 255]And now for my next trick, I'll need a volunteer from the audience": "さて次のトリックですが、どなたか観客の方にご協力いただきたいのですが", + "[Achievement name 256]It's not delivery": "配達じゃない", + "[Achievement name 257]Gold, Jerry! Gold!": "金だよ、ジェリー!金だって!", + "[Achievement name 258]Forbidden zone": "立ち入り禁止区域", + "[Achievement name 259]cookie clicker forever and forever a hundred years cookie clicker, all day long forever, forever a hundred times, over and over cookie clicker adventures dot com": "クッキークリッカーは永遠に、100年経ってもクッキークリッカー、永遠に一日中でも、永遠に何百回でも、いつまでもクッキークリッカーは続くよ、クッキークリッカーアドベンチャー.comだ", + "[Achievement name 260]Scientists baffled everywhere": "科学者がみんな途方に暮れている", + "[Achievement name 261]Harmony of the spheres": "球体のハーモニー", + "[Achievement name 262]Last Chance to See": "これで見納め", + "[Achievement name 263]Early bird": "一番乗り", + "[Achievement name 264]Fading luck": "運が尽きてきた", + "[Achievement name 265]Eldeer": "高齢のシカ", + "[Achievement name 266]Dude, sweet": "甘いヤツ", + "[Achievement name 267]Sugar rush": "シュガーラッシュ", + "[Achievement name 268]Year's worth of cavities": "数年分の虫歯", + "[Achievement name 269]Hand-picked": "手摘み", + "[Achievement name 270]Sugar sugar": "シュガー、シュガー", + "[Achievement name 271]All-natural cane sugar": "天然かんしょ糖", + "[Achievement name 272]Sweetmeats": "砂糖菓子", + "[Achievement name 273]Tricentennial": "300周年", + "[Achievement name 274]Knead for speed": "コネーロ・フォー・スピード", + "[Achievement name 275]Well the cookies start coming and they don't stop coming": "クッキーの入荷が止まらない", + "[Achievement name 276]I don't know if you've noticed but all these icons are very slightly off-center": "気づいたかわからないけど、このアイコンはどれもみな少し中心からずれている", + "[Achievement name 277]The proof of the cookie is in the baking": "案ずるより焼くがやすし", + "[Achievement name 278]If it's worth doing, it's worth overdoing": "やる価値はある、やりすぎる価値もある", + "[Achievement name 279]The dreams in which I'm baking are the best I've ever had": "今焼いている夢は、今までで最高です", + "[Achievement name 280]Set for life": "一生安泰", + "[Achievement name 281]You and the beanstalk": "あなたと豆の木", + "[Achievement name 282]Romancing the stone": "ロマンシング・ストーン", + "[Achievement name 283]Ex machina": "エクス・マキナ", + "[Achievement name 284]And I need it now": "今すぐ必要", + "[Achievement name 285]Pray on the weak": "弱者のために祈る", + "[Achievement name 286]It's a kind of magic": "魔法の一種", + "[Achievement name 287]Make it so": "君に任せた", + "[Achievement name 288]All that glitters is gold": "輝くものすべてが金", + "[Achievement name 289]Here he comes": "彼がやってきた", + "[Achievement name 290]Way back then": "遠い昔", + "[Achievement name 291]Exotic matter": "外来の物質", + "[Achievement name 292]At the end of the tunnel": "トンネルの終わりに", + "[Achievement name 293]Click (starring Adam Sandler)": "クリック(アダム・サンドラー主演)", + "[Achievement name 294]Frantiquities": "狂気の古代遺物", + "[Achievement name 295]Overgrowth": "育ちすぎ", + "[Achievement name 296]Sedimentalism": "堆積主義", + "[Achievement name 297]Labor of love": "無償奉仕", + "[Achievement name 298]Reverse funnel system": "逆ファネルシステム", + "[Achievement name 299]Thus spoke you": "君はかく語りき", + "[Achievement name 300]Manafest destiny": "マナの宿命説", + "[Achievement name 301]Neither snow nor rain nor heat nor gloom of night": "雪も雨も暑さも夜の暗闇でさえも", + "[Achievement name 302]I've got the Midas touch": "錬金術の才能あり", + "[Achievement name 303]Which eternal lie": "久遠に臥したるもの", + "[Achievement name 304]Déjà vu": "デジャヴ", + "[Achievement name 305]Powers of Ten": "10乗", + "[Achievement name 306]Now the dark days are gone": "闇の時は過ぎ去り", + "[Achievement name 307]Freaky jazz hands": "不気味なジャズハンド", + "[Achievement name 308]Methuselah": "メトセラ", + "[Achievement name 309]Huge tracts of land": "広大な地域", + "[Achievement name 310]D-d-d-d-deeper": "ド・ド・ド・どこまでも深く", + "[Achievement name 311]Patently genius": "文句なしの天才", + "[Achievement name 312]A capital idea": "名案", + "[Achievement name 313]It belongs in a bakery": "それはベーカリーに帰属する", + "[Achievement name 314]Motormouth": "マシンガントーク", + "[Achievement name 315]Been there done that": "すでに経験済み", + "[Achievement name 316]Phlogisticated substances": "フロギストン物質", + "[Achievement name 317]Bizarro world": "ヘンテコな世界", + "[Achievement name 318]The long now": "ロング・ナウ", + "[Achievement name 319]Chubby hadrons": "まあるいハドロン", + "[Achievement name 320]Palettable": "配色自由自在", + "[Achievement name 321]Bibbidi-bobbidi-boo": "ビビデバビデブー", + "[Achievement name 322]I'm the wiz": "私が魔法使い", + "[Achievement name 323]A wizard is you": "君が魔法使い", + "[Achievement name 324]Four-leaf cookie": "四葉のクッキー", + "[Achievement name 325]Lucked out": "運がいいみたい", + "[Achievement name 326]What are the odds": "確率はどうだ", + "[Achievement name 327]Grandma needs a new pair of shoes": "おばあちゃんには新しい靴が必要だ", + "[Achievement name 328]Million to one shot, doc": "百万分の一の確率だ、先生", + "[Achievement name 329]As luck would have it": "運が良ければ", + "[Achievement name 330]Ever in your favor": "君に幸運あれ", + "[Achievement name 331]Be a lady": "(運の女神よ)お手柔らかに", + "[Achievement name 332]Dicey business": "半か丁か", + "[Achievement name 333]Fingers crossed": "幸運を祈る", + "[Achievement name 334]Just a statistic": "単なる統計", + "[Achievement name 335]Murphy's wild guess": "マーフィーのでたらめな推測", + "[Achievement name 336]Let's leaf it at that": "この辺でお開きに", + "[Achievement name 337]The ultimate clickdown": "究極のクリックダウン", + "[Achievement name 338]Aged well": "いい歳のとり方だ", + "[Achievement name 339]101st birthday": "101回目の誕生日", + "[Achievement name 340]But wait 'til you get older": "大人になるまでお待ちなさい", + "[Achievement name 341]Harvest moon": "収穫月", + "[Achievement name 342]Mine?": "採掘?", + "[Achievement name 343]In full gear": "フル稼働", + "[Achievement name 344]Treacle tart economics": "糖蜜タルト経済", + "[Achievement name 345]Holy cookies, grandma!": "なんてこった、グランマ!", + "[Achievement name 346]The Prestige": "名声", + "[Achievement name 347]That's just peanuts to space": "宇宙に比べたらほんの小さなピーナッツ", + "[Achievement name 348]Worth its weight in lead": "鉛の重さと同等の価値", + "[Achievement name 349]What happens in the vortex stays in the vortex": "時空での恥はかき捨て", + "[Achievement name 350]Invited to yesterday's party": "過去のパーティーへの招待状", + "[Achievement name 351]Downsizing": "ダウンサイズ", + "[Achievement name 352]My eyes": "ボクの目が", + "[Achievement name 353]Maybe a chance in hell, actually": "ワンチャンあるかも", + "[Achievement name 354]Make like a tree": "木になるまで育て", + "[Achievement name 355]Cave story": "洞穴物語", + "[Achievement name 356]In-cog-neato": "イン・コグ・ニート", + "[Achievement name 357]Save your breath because that's all you've got left": "負け犬の遠吠え", + "[Achievement name 358]Vengeful and almighty": "執念深く全能", + "[Achievement name 359]Spell it out for you": "呪文の唱え方教えてあげる", + "[Achievement name 360]Space space space space space": "宇宙宇宙宇宙宇宙宇宙", + "[Achievement name 361]Don't get used to yourself, you're gonna have to change": "現状に慣れるな、常に変化しろ", + "[Achievement name 362]Objects in the mirror dimension are closer than they appear": "鏡の中の物体は見た目より近くにある", + "[Achievement name 363]Groundhog day": "恋はデジャ・ブ", + "[Achievement name 364]A matter of perspective": "見方次第", + "[Achievement name 365]Optical illusion": "目の錯覚", + "[Achievement name 366]Jackpot": "ジャックポット", + "[Achievement name 367]So much to do so much to see": "やること沢山、見ること沢山", + "[Achievement name 368]Running with scissors": "ハサミを持って走るバカ", + "[Achievement name 369]Rarefied air": "空気が薄い高さに到達", + "[Achievement name 370]Push it to the limit": "限界に挑戦", + "[Achievement name 371]Green cookies sleep furiously": "緑のクッキーは猛烈と眠る", + "[Achievement name 372]Panic! at Nabisco": "ナビスコでパニック!", + "[Achievement name 373]Bursting at the seams": "はち切れんばかり", + "[Achievement name 374]Just about full": "ほぼ満腹", + "[Achievement name 375]Hungry for more": "まだまだ空腹", + "[Achievement name 376]All the other kids with the pumped up clicks": "すごいクリックの奴ら", + "[Achievement name 377]One...more...click...": "もう…あと…1クリック…", + "[Achievement name 378]Botany enthusiast": "植物愛好家", + "[Achievement name 379]Green, aching thumb": "指の痛みに耐える園芸家", + "[Achievement name 380]In the garden of Eden (baby)": "(愛くるしい)エデンの園で", + "[Achievement name 381]Keeper of the conservatory": "温室管理人", + "[Achievement name 382]Seedless to nay": "種も仕掛けもなく", + "[Achievement name 383]You get nothing": "何ももらえないよ", + "[Achievement name 384]Humble rebeginnings": "初心に帰る", + "[Achievement name 385]The end of the world": "世界の終わり", + "[Achievement name 386]Oh, you're back": "やあ、おかえり", + "[Achievement name 387]Lazarus": "ラザロ", + "[Achievement name 388]Leisurely pace": "のんびり行こう", + "[Achievement name 389]Hypersonic": "極超音速", + "[Achievement name 390]Feed me, Orteil": "もっとちょうだい、Orteil", + "[Achievement name 391]And then what?": "で、次は?", + "[Achievement name 392]Tricentennial and a half": "350周年", + "[Achievement name 393]Quadricentennial": "400周年", + "[Achievement name 394]Quadricentennial and a half": "450周年", + "[Achievement name 395]Quincentennial": "500周年", + "[Achievement name 396]Maillard reaction": "メイラード反応", + "[Achievement name 397]When the cookies ascend just right": "クッキーがちょうど良く昇天した時", + "[Achievement name 398]With her finger and her thumb": "人差し指と親指で", + "[Achievement name 399]Defense of the ancients": "DotA(古代人の防衛)", + "[Achievement name 400]Sharpest tool in the shed": "勘がいい", + "[Achievement name 401]Hey now, you're a rock": "おまえは、ロック(スター)だ", + "[Achievement name 402]Break the mold": "型を破れるのは", + "[Achievement name 403]Get the show on, get paid": "さっさと仕事して稼げ", + "[Achievement name 404]My world's on fire, how about yours": "俺の世界は燃えている、お前はどうだ?", + "[Achievement name 405]The meteor men beg to differ": "流れ星はそうじゃない", + "[Achievement name 406]Only shooting stars": "流れ星だけだ", + "[Achievement name 407]We could all use a little change": "みんな変わってもいい頃だ", + "[Achievement name 408]Your brain gets smart but your head gets dumb": "脳みそが賢くなるのに頭がバカになる", + "[Achievement name 409]The years start coming": "一年はすぐに通り過ぎて", + "[Achievement name 410]What a concept": "なんて考え方なんだ", + "[Achievement name 411]You'll never shine if you don't glow": "光らなきゃ輝けない", + "[Achievement name 412]You'll never know if you don't go": "行ってみなきゃわからない", + "[Achievement name 413]Self-contained": "自己完結", + "[Achievement name 414]Threw you for a loop": "君を驚かせる", + "[Achievement name 415]The sum of its parts": "寄せ集め", + "[Achievement name 416]Bears repeating": "繰り返す価値あり", + "[Achievement name 417]More of the same": "ほぼ同じ", + "[Achievement name 418]Last recurse": "最後の再帰的処理", + "[Achievement name 419]Out of one, many": "その他一人の大勢", + "[Achievement name 420]An example of recursion": "再帰的処理の例", + "[Achievement name 421]For more information on this achievement, please refer to its title": "この実績についての詳しい情報は、実績名を参照してください", + "[Achievement name 422]I'm so meta, even this achievement": "なんてメタなんだ、この実績さえも", + "[Achievement name 423]Never get bored": "退屈しない", + "[Achievement name 424]The needs of the many": "多数の要求", + "[Achievement name 425]Eating its own": "共食い", + "[Achievement name 426]We must go deeper": "さらに深く進もう", + "[Achievement name 427]Sierpinski rhomboids": "シェルピンスキーのひし形", + "[Achievement name 428]Gotta go fast": "全速力で行こう", + "[Achievement name 429]I think it's safe to say you've got it made": "出来たと言ってもいいだろう", + "[Achievement name 430]Renaissance baker": "ルネッサンスベーカー", + "[Achievement name 431]Veteran": "ベテラン", + "[Achievement name 432]Thick-skinned": "無神経", + "[Achievement name 433]F12": "F12", + "[Achievement name 434]Variable success": "可変的成功", + "[Achievement name 435]No comments": "コメントなし", + "[Achievement name 436]Up to code": "合格レベル", + "[Achievement name 437]Works on my machine": "自分のマシンでは動く", + "[Achievement name 438]Technical debt": "技術的負債", + "[Achievement name 439]Mind your language": "言語使いに気を付けろ", + "[Achievement name 440]Inconsolable": "悲しみのコンソール", + "[Achievement name 441]Closure": "クロージャ", + "[Achievement name 442]Dude what if we're all living in a simulation like what if we're all just code on a computer somewhere": "もし今生きている世界がシミュレーションで、みんながただのコンピューターコードだったら", + "[Achievement name 443]Taking the back streets": "裏道を使う", + "[Achievement name 444]Inherited prototype": "プロトタイプの継承", + "[Achievement name 445]A model of document object": "文書オブジェクトのモデル", + "[Achievement name 446]First-class citizen": "第一級市民", + "[Achievement name 447]Alexandria": "アレキサンドリア", + "[Achievement name 448]Bake him away, toys": "そいつを焼いちゃってくれ", + "[Achievement name 449]You're #1 so why try harder": "一番になったのに、まだやるのか", + "[Achievement name 450]Haven't even begun to peak": "まだまだ上がり始めてもない", + "[Achievement name 451]A sometimes food": "主食じゃなくておやつ", + "[Achievement name 452]Not enough of a good thing": "いい出来事が足りない", + "[Achievement name 453]Horn of plenty": "豊穣の角", + "[Achievement name 454]Smurf account": "スマーフアカウント", + "[Achievement name 455]If at first you don't succeed": "最初に成功しなかったら", + "[Achievement name 456]O Fortuna": "おお運命の女神よ", + "[Achievement name 457]Initial public offering": "新規公開株", + "[Achievement name 458]Rookie numbers": "そんなのルーキーの数字だ", + "[Achievement name 459]No nobility in poverty": "貧困に気高さなんてない", + "[Achievement name 460]Full warehouses": "倉庫いっぱい", + "[Achievement name 461]Make my day": "幸せな気分にして", + "[Achievement name 462]Buy buy buy": "買って、買って、買いまくれ", + "[Achievement name 463]Gaseous assets": "ガス状の資産", + "[Achievement name 464]Pyramid scheme": "ピラミッド商法", + "[Achievement name 465]Jellicles": "ジェリクル", + "[Achievement name 466]Quincentennial and a half": "550周年", + "[Achievement name 467]What did we even eat before these": "こいつの前は一体何を食べていたっけ", + "[Achievement name 468]Heavy flow": "怒涛の流れ", + "[Achievement name 469]More you say?": "もっと?", + "[Achievement name 470]Large and in charge": "デカい仕切り屋", + "[Achievement name 471]Absolutely stuffed": "完全に満腹", + "[Achievement name 472]It's only wafer-thin": "ウェハースの薄さ", + "[Achievement name 473]Clickety split": "クリケッティスプリット", + "[Achievement name 474]Gotta hand it to you": "恐れ入りました", + "[Achievement name 475]Okay boomer": "おっしゃる通り", + "[Achievement name 476]Overripe": "熟れ過ぎ", + "[Achievement name 477]Rock on": "ロックオン", + "[Achievement name 478]Self-manmade man": "自作人工人間", + "[Achievement name 479]Checks out": "チェックアウト", + "[Achievement name 480]Living on a prayer": "リヴィン・オン・ア・プレイヤー", + "[Achievement name 481]Higitus figitus migitus mum": "ヒギタス・フィギタス・ミギタス・マム", + "[Achievement name 482]The incredible journey": "すばらしき旅", + "[Achievement name 483]Just a phase": "一過性のもの", + "[Achievement name 484]Don't let me leave, Murph": "置き去りにさせないでくれ、マーフ", + "[Achievement name 485]Caveman to cosmos": "石器人から宇宙へ", + "[Achievement name 486]Particular tastes": "特有の味", + "[Achievement name 487]A light snack": "アカルイ軽食", + "[Achievement name 488]Tempting fate": "神に逆らう", + "[Achievement name 489]Tautological": "重ね言葉", + "[Achievement name 490]Curly braces": "中括弧", + "[Achievement name 491]Seven horseshoes": "七つの蹄鉄", + "[Achievement name 492]Olden days": "過去の日々", + "[Achievement name 493]The devil's workshop": "悪魔の工房", + "[Achievement name 494]In the green": "芝生の上", + "[Achievement name 495]Mountain out of a molehill, but like in a good way": "大げさだけ、いい意味で", + "[Achievement name 496]The wheels of progress": "前進の輪", + "[Achievement name 497]That's rich": "よく言うよ", + "[Achievement name 498]Preaches and cream": "スピーチ&クリーム", + "[Achievement name 499]Magic thinking": "魔法の考え", + "[Achievement name 500]Is there life on Mars?": "火星に生命は存在するか?", + "[Achievement name 501]Bad chemistry": "相性が悪い", + "[Achievement name 502]Reduced to gibbering heaps": "意味不明の言葉を口走る者に成り下がる", + "[Achievement name 503]Back already?": "もう戻ったの?", + "[Achievement name 504]Nuclear throne": "原子力の玉座", + "[Achievement name 505]Making light of the situation": "状況を軽視する", + "[Achievement name 506]Flip a cookie. Chips, I win. Crust, you lose.": "クッキーを投げてチップスなら私の勝ち、生地ならあなたの負け。", + "[Achievement name 507]In and of itself": "それ自体は", + "[Achievement name 508]Duck typing": "ダックタイピング", + "[Achievement name 509]They'll never know what hit 'em": "何が起きたかは知る由もない", + "[Achievement name 510]Well-versed": "精通している", + "[Achievement name 511]Ripe for the picking": "収穫できる熟れ具合", + "[Achievement name 512]Unreal": "非現実的", + "[Achievement name 513]Once you've seen one": "一度見れば", + "[Achievement name 514]Spoils and plunder": "略奪に略奪を重ね", + "[Achievement name 515]Nobody exists on purpose, nobody belongs anywhere": "誰も故意に存在しているわけではなく、だれもどこにも属さない", + "[Achievement name 516]Hyperspace expressway": "超立体ハイウェイ", + "[Achievement name 517]Versatile": "多目的", + "[Achievement name 518]You are inevitable": "おまえは絶対だ", + "[Achievement name 519]Away from this place": "この場所から離れて", + "[Achievement name 520]Everywhere at once": "どこもかしこも一斉に", + "[Achievement name 521]Reject reality, substitute your own": "現実を拒絶し、自分で置き換えろ", + "[Achievement name 522]Fringe": "フリンジ", + "[Achievement name 523]Coherence": "首尾一貫性", + "[Achievement name 524]Earth-616": "アース616", + "[Achievement name 525]Strange topologies": "奇妙なトポロジー", + "[Achievement name 526]Grand design": "全体構想", + "[Achievement name 527]Ecumenopolis": "エキュメノポリス", + "[Achievement name 528]The full picture": "全体像", + "[Achievement name 529]When there's nothing left to add": "付け足すものが何も残っていないとき", + "[Achievement name 530]Sexcentennial": "600周年", + "[Achievement name 531]Keep going until I say stop": "止めろというまで続けて", + "[Achievement name 532]But I didn't say stop, did I?": "でも、止めろって言ってないけど?", + "[Achievement name 533]With unrivaled fervor": "無敵の情熱", + "[Achievement name 534]Think big": "大きく考えて", + "[Achievement name 535]Hypersize me": "ハイパーサイズ・ミー", + "[Achievement name 536]Max capacity": "最大容量", + "[Achievement name 537]Liquid assets": "流動資産", + "[Achievement name 538]Stifling the press": "報道機関を押し潰す", + "[Achievement name 539]It's big brain time": "でっかい脳の出番だぜ", + "[Achievement name 540]Just my imagination": "はかない思い", + "[Achievement name 541]Now there's an idea": "いいアイデアじゃないか", + "[Achievement name 542]The organ that named itself": "己を名付けた臓器", + "[Achievement name 543]Gyrification": "脳回ケーション", + "[Achievement name 544]A trademarked portmanteau of \"imagination\" and \"engineering\"": "「想像力」と 「工学」の混成語(商標登録済)", + "[Achievement name 545]Mindfulness": "マインドフルネス", + "[Achievement name 546]The 10% myth": "10%神話", + "[Achievement name 547]Don't think about it too hard": "そんなに考えすぎるな", + "[Achievement name 548]Though fools seldom differ": "バカと天才は紙一重", + "[Achievement name 549]Looking kind of dumb": "スマッシュなオール・スター", + "[Achievement name 550]A beautiful mind": "ビューティフル・マインド", + "[Achievement name 551]Cardinal synapses": "活動宮のシナプス", + "[Achievement name 552]Positive thinking": "プラス思考", + "[Achievement name 553]The thought that counts": "感謝に値する思考", + "[Achievement name 554]Unthinkable": "考えられない", + "[Achievement name 555]Gifted": "ギフテッド", + "[Achievement name 556]They moistly come at night": "奴らは夜になると、しっとりとやってくるのよ", + "[Achievement name 557]It's grown on you": "あなたの中にも育ってきた", + "[Achievement name 558]Don't let the walls cave in on you": "どんな壁にも潰されないで", + "[Achievement name 559]Replaced by robots": "人間は用無し", + "[Achievement name 560]Financial prodigy": "経済界の神童", + "[Achievement name 561]And I will pray to a big god": "そして俺はビッグな神に祈る", + "[Achievement name 562]Shosple Colupis": "スクロース・グルコース!", + "[Achievement name 563]False vacuum": "偽の真空", + "[Achievement name 564]Metallic taste": "金属味", + "[Achievement name 565]Swiss cheese": "スイスチーズ", + "[Achievement name 566]But the future refused to change": "BUT... THE FUTURE REFUSED TO CHANGE", + "[Achievement name 567]What's the dark matter with you": "暗黒物質もいいかげんになさい", + "[Achievement name 568]Enlightenment": "光の悟り", + "[Achievement name 569]Never tell me the odds": "確率なんて知ったことか!", + "[Achievement name 570]Blowing an Apollonian gasket": "アポロニウスのギャスケットもふっとぶ勢い", + "[Achievement name 571]Get with the program": "プログラムに則れ", + "[Achievement name 572]Lost your cosmic marbles": "正気も宇宙へ置いてきた", + "[Achievement name 573]By will alone I set my mind in motion": "私は己の意志のみで頭を働かせる", + "[Achievement name 574]Ain't that a click in the head": "ものすごいクリックだったな", + "[Achievement name 575]Sexcentennial and a half": "六が百と、百が半分", + "[Achievement name 576]I am speed": "俺は風である", + "[Achievement name 577]And on and on": "延々と", + "[Achievement name 578]Fake it till you bake it": "とりあえず焼いてみた", + "[Achievement name 579]History in the baking": "歴史を焼いている途中", + "[Achievement name 580]Baby it's old outside": "ベイビー、外は老いよ", + "[Achievement name 581]Myriad": "ミリアド", + "[Achievement name 582]Kaizen": "改善マニア", + "[Achievement name 583]Beyond quality": "品質を超えて", + "[Achievement name 584]Everything happens so much": "全部がたくさん起きている", + "[Achievement name 585]I'll rest when I'm dead": "死んだら休む", + "[Achievement name 586]What do you get for the baker who has everything": "クッキー職人 プレゼント 何でも持ってる", + "[Achievement name 587]Bottomless pit": "底なし穴", + "[Achievement name 588]All the stars in heaven": "天に光る全ての星よ" +}); \ No newline at end of file diff --git a/gversion/gs/cookieclicker/loc/KO.js b/gversion/gs/cookieclicker/loc/KO.js new file mode 100644 index 0000000..b9ae29e --- /dev/null +++ b/gversion/gs/cookieclicker/loc/KO.js @@ -0,0 +1,3178 @@ +AddLanguage('KO','korean',{ + "": { + "language": "KO", + "plural-forms": "nplurals=2;plural=(n!=1);" + }, + "cookie": "쿠키", + "sugar lump": "각설탕", + "heavenly chip": "천상 칩", + "wrinkler": "주름벌레", + "building": "건물", + "upgrade": "업그레이드", + "golden cookie": "황금 쿠키", + "grandmapocalypse": "할머니대재앙", + "%1 cookie": [ + "%1 쿠키", + "%1 쿠키" + ], + "%1 sugar lump": [ + "%1 각설탕", + "%1 각설탕" + ], + "%1 heavenly chip": [ + "%1 천상 칩", + "%1 천상 칩" + ], + "%1 golden cookie": [ + "%1 황금 쿠키", + "%1 황금 쿠키" + ], + "%1 building": [ + "%1 건물", + "%1 건물" + ], + "%1 upgrade": [ + "%1 업그레이드", + "%1 업그레이드" + ], + "Yes": "예", + "No": "아니요", + "Click here": "이곳을 클릭하세요", + "Don't show this again": "다시 표시하지 않습니다", + "Delete all": "모두 삭제", + "Back": "뒤로", + "Confirm": "확인", + "All done!": "완료!", + "Load": "불러오기", + "Save": "저장", + "Quit": "나가기", + "Save & Quit": "저장 및 나가기", + "Cancel": "취소", + "Nevermind": "괜찮습니다", + "Random": "랜덤", + "You have %1.": "%1 보유", + "Click": "클릭", + "Shift": "/", + "Shift-click": "Shift 클릭", + "Ctrl": "/", + "Ctrl-click": "Ctrl 클릭", + "Esc": "/", + "Cookies": "쿠키", + "%1 day": [ + "%1일", + "%1일" + ], + "%1 hour": [ + "%1시간", + "%1시간" + ], + "%1 minute": [ + "%1분", + "%1분" + ], + "%1 second": [ + "%1초", + "%1초" + ], + "less than 1 second": "1초 미만", + "in %1": "%1 이내", + "%1 ago": "%1 이전", + "%1 remaining": "%1 남음", + "%1 worth": "%1 가치", + "%1 of CpS": "CpS의 %1 ", + "%1% of bank": "저장량의 %1%", + "per second:": "초당:", + "just now": "지금", + "a long while": "장기간", + "forever": "영구", + "Time remaining:": "남은 시간:", + "Big clickable cookie": "커다란 클릭형 쿠키", + "Golden cookie": "황금 쿠키", + "Wrath cookie": "분노 쿠키", + "Reindeer": "순록", + "Options": "옵션", + "General": "일반", + "Settings": "설정", + "Volume": "볼륨", + "Volume (music)": "볼륨 (음악)", + "ON": "켬", + "OFF": "끔", + "Fancy graphics": "화려한 그래픽", + "CSS filters": "CSS 필터", + "visual improvements; disabling may improve performance": "시각 효과가 향상됩니다. 비활성화 시 성능이 향상될 수 있습니다", + "Particles": "파티클", + "Numbers": "숫자", + "numbers that pop up when clicking the cookie": "쿠키 클릭 시 숫자가 나타납니다", + "Milk [setting]": "우유", + "Cursors [setting]": "커서", + "visual display of your cursors": "커서를 시각적으로 표시합니다", + "Wobbly cookie": "쿠키 흔들기", + "Alt cookie sound": "쿠키 음향 변경", + "Icon crates": "아이콘 상자", + "display boxes around upgrades and achievements in Stats": "통계의 업그레이드 및 업적 주위에 상자를 표시합니다", + "Alt font": "폰트 변경", + "your cookies are displayed using a monospace font": "고정 너비 폰트로 쿠키가 표시됩니다", + "Short numbers": "짧은 숫자", + "Fast notes": "빠른 알림", + "notifications disappear much faster": "알림이 훨씬 빠르게 사라집니다", + "Closing warning": "종료 경고", + "the game will ask you to confirm when you close the window": "게임 창을 닫을 때 확인을 받습니다.", + "Defocus": "디포커스", + "the game will be less resource-intensive when out of focus": "게임 창이 전면에 있지 않을 때 리소스를 적게 소모합니다", + "Extra buttons": "추가 버튼", + "add options on buildings like Mute": "건물에 숨기기와 같은 옵션을 추가합니다", + "Lump confirmation": "덩어리 확인", + "the game will ask you to confirm before spending sugar lumps": "각설탕을 사용하기 전에 확인을 받습니다", + "Custom grandmas": "커스텀 할머니", + "some grandmas will be named after Patreon supporters": "일부 할머니의 이름이 패트리온 후원자의 이름으로 변경됩니다", + "Scary stuff": "무서운 것", + "Sleep mode timeout": "수면 모드 타임아웃", + "on slower computers, the game will put itself in sleep mode when it's inactive and starts to lag out; offline CpS production kicks in during sleep mode": "느린 컴퓨터의 경우, 게임 내 활동이 없으면 자동으로 수면 모드로 들어가 지연을 시작합니다. 수면 모드에서는 오프라인 CpS 생산이 시작됩니다", + "Music in background": "배경 음악", + "music will keep playing even when the game window isn't focused": "게임 창이 전면에 있지 않을 때에도 음악이 재생됩니다", + "Cloud saving": "클라우드 저장", + "allow use of Steam Cloud for save backups": "백업 파일 저장을 위해 스팀 클라우드 사용을 허용합니다", + "Purge Cloud": "클라우드 제거", + "Current Cloud use:": "현재 사용 클라우드:", + "No Cloud access at the moment.": "현재 이용할 수 있는 클라우드가 없습니다.", + "Screen reader mode": "스크린 리더 모드", + "allows optimizations for screen readers; game will reload": "스크린 리더 최적화를 허용합니다. 게임을 다시 불러옵니다", + "Discord status": "Discord 상태:", + "if Discord is on, show your game info as activity status": "Discord가 켜져 있는 경우 게임 정보를 활동 상태로 표시합니다", + "Language": "언어", + "Language: %1": "언어: %1", + "Change language": "언어 변경", + "note: this will save and reload your game": "참고: 게임을 저장하고 다시 불러옵니다", + "Press %1 to toggle fullscreen.": "전체 화면으로 변경하려면 %1을(를) 누르세요.", + "Other versions": "기타 버전", + "Beta": "베타", + "Stats": "통계", + "Shadow achievements": "숨은 업적", + "These are feats that are either unfair or difficult to attain. They do not give milk.": "터무니없거나 획득하기 어려운 업적입니다. 달성해도 우유를 획득할 수 없습니다.", + "starter milk": "초보자 우유", + "for %1 achievements": "업적 %1개 달성", + "appeased": "평온함", + "awoken": "각성함", + "displeased": "불쾌함", + "angered": "분노함", + "Cookies in bank:": "저장된 쿠키:", + "Cookies baked (this ascension):": "구운 쿠키 (이번 계승):", + "Cookies baked (all time):": "구운 쿠키 (전체 기간):", + "Cookies forfeited by ascending:": "계승으로 잃은 쿠키:", + "Legacy started:": "유산 시작:", + "with %1 ascension": [ + "%1 계승", + "%1 계승" + ], + "Run started:": "회차 시작:", + "Buildings owned:": "보유 건물:", + "Cookies per second:": "초당 쿠키:", + "Raw cookies per second:": "초당 순 쿠키:", + "highest this ascension:": "이번 계승 최고치:", + "multiplier:": "배수:", + "withered:": "감소:", + "Cookies per click:": "클릭당 쿠키:", + "Cookie clicks:": "쿠키 클릭:", + "Hand-made cookies:": "수제 쿠키:", + "Golden cookie clicks:": "황금 쿠키 클릭:", + "Random drop multiplier:": "랜덤 드롭 배수:", + "all time:": "전체 기간:", + "Running version:": "실행 버전:", + "Special": "특수", + "Challenge mode:": "도전 모드:", + "Seasonal event:": "시즌 이벤트:", + "Research:": "연구:", + "Grandmatriarchs status:": "대왕 할머니 상태:", + "Pledge:": "약속:", + "Wrinklers popped:": "터뜨린 주름벌레:", + "Sugar lumps harvested:": "수확한 각설탕:", + "Reindeer found:": "찾은 순록:", + "Santa stages unlocked:": "산타 스테이지 잠금 해제:", + "Dragon training:": "드래곤 훈련:", + "Prestige": "명성", + "at %1% of its potential (+%2% CpS)": "잠재력의 %1% (+%2% CpS)", + "Prestige upgrades unlocked:": "명성 업그레이드 잠금 해제:", + "Upgrades unlocked:": "업그레이드 잠금 해제:", + "Achievements unlocked:": "업적 잠금 해제:", + "Kitten multiplier:": "고양이 배수:", + "Milk": "우유", + "Milk:": "우유:", + "Milk flavors unlocked:": "우유 맛 잠금 해제:", + "Milk is gained with each achievement. It can unlock unique upgrades over time.": "업적을 달성할 때마다 우유를 획득합니다. 시간이 지날수록 특별한 업그레이드가 잠금 해제됩니다.", + "Rank %1": "등급 %1", + "Automatic": "자동", + "Plain milk": "흰 우유", + "Chocolate milk": "초콜릿 우유", + "Raspberry milk": "라즈베리 우유", + "Orange milk": "오렌지 우유", + "Caramel milk": "캐러멜 우유", + "Banana milk": "바나나 우유", + "Lime milk": "라임 우유", + "Blueberry milk": "블루베리 우유", + "Strawberry milk": "딸기 우유", + "Vanilla milk": "바닐라 우유", + "Zebra milk": "얼룩말 우유", + "Cosmic milk": "우주 우유", + "Flaming milk": "불꽃 우유", + "Sanguine milk": "핏빛 우유", + "Midas milk": "미다스 우유", + "Midnight milk": "심야 우유", + "Green inferno milk": "초록색 지옥불 우유", + "Frostfire milk": "서릿불 우유", + "Honey milk": "꿀 우유", + "Coffee milk": "커피 우유", + "Tea milk": "차 우유", + "Coconut milk": "코코넛 우유", + "Cherry milk": "체리 우유", + "Soy milk": "두유", + "Spiced milk": "향신료 우유", + "Maple milk": "단풍 우유", + "Mint milk": "민트 우유", + "Licorice milk": "감초 우유", + "Rose milk": "장미 우유", + "Dragonfruit milk": "용과 우유", + "Info": "정보", + "About": "소개", + "Cookie Clicker is a javascript game by %1 and %2.": "쿠키 클리커는 %1 및 %2이(가) 개발한 자바스크립트 게임입니다.", + "Music by %1.": "작곡은 %1이(가) 담당했습니다", + "Useful links: %1, %2, %3, %4.": "유용한 링크: %1, %2, %3, %4.", + "This version of Cookie Clicker is 100% free, forever. Want to support us so we can keep developing games? Here's some ways you can help:%1": "해당 버전의 쿠키 클리커는 영구적으로 100% 무료입니다. 저희가 게임을 계속 개발할 수 있도록 지원하고 싶으신가요? 다음을 통해 도와주실 수 있습니다:%1", + "Note: if you find a new bug after an update and you're using a 3rd-party add-on, make sure it's not just your add-on causing it!": "참고: 업데이트 이후 새로 생긴 버그를 발견했는데 서드파티 애드온을 사용 중이라면, 애드온 때문에 생긴 문제가 아닌지 확인하세요!", + "Warning: clearing your browser cache or cookies (what else?) will result in your save being wiped. Export your save and back it up first!": "경고: 브라우저 캐시나 쿠키를 삭제하면 (또 있나요?) 저장된 내용이 사라질 수 있습니다. 우선 저장 코드를 내보내고 백업하세요!", + "Version history": "버전 히스토리", + "Official website": "공식 웹사이트", + "Note: links will open in your web browser.": "참고: 링크는 웹 브라우저에서 열립니다.", + "Note: older update notes are in English.": "참고: 예전 업데이트 노트는 영어로 쓰여 있습니다.", + "This feature is not yet available in your language.": "해당 기능은 아직 선택하신 언어로 이용하실 수 없습니다.", + "Restart with new changes": "변경 사항을 적용하고 다시 시작", + "Cookie Clicker is in sleep mode.": "쿠키 클리커가 수면 모드입니다.", + "Cookie Clicker is in sleep mode and generating offline cookies.": "쿠키 클리커가 수면 모드이며, 오프라인 쿠키를 생성하고 있습니다.", + "%1 to resume from your save file.": "%1(으)로 저장 파일에서 다시 시작합니다.", + "(this happens when too many frames are skipped at once,
usually when the game has been running in the background for a while)
(you can turn this feature off in the settings menu)": "지나치게 많은 프레임이 한 번에 생략되었을 때 발생하는 현상으로,
보통 게임이 오랫동안 백그라운드에서 실행되었을 때 일어납니다.
(설정 메뉴에서 해당 기능을 끌 수 있습니다)", + "Are you sure you want to close Cookie Clicker?": "쿠키 클리커를 종료하시겠습니까?", + "Back up your save!": "저장 내용을 백업하세요!", + "Hello again! Just a reminder that you may want to back up your Cookie Clicker save every once in a while, just in case.
To do so, go to Options and hit \"Export save\" or \"Save to file\"!": "안녕하세요! 만일을 대비해 쿠키 클리커 저장 내용을 틈틈이 백업해 주세요.
백업을 하려면 옵션으로 이동해 \"저장 내보내기\"를 누르거나\"파일로 저장\"을 누르세요!", + "Save manually (the game autosaves every 60 seconds; shortcut: ctrl+S)": "수동 저장 (60초마다 게임이 자동 저장됩니다. 단축키: ctrl+S)", + "You can use this to backup your save or to transfer it to another computer (shortcut for import: ctrl+O)": "이 기능을 통해 저장 내용을 백업하거나 다른 컴퓨터로 전송할 수 있습니다 (가져오기 단축키: ctrl+O)", + "Save to file": "파일로 저장", + "Load from file": "파일에서 불러오기", + "Use this to keep backups on your computer": "이 기능을 통해 백업 파일을 컴퓨터에 보관합니다", + "Export save": "저장 내보내기", + "This is your save code.
Copy it and keep it somewhere safe!": "저장 코드입니다.
이 코드를 복사하고 안전한 곳에 보관하세요!", + "Import save": "저장 가져오기", + "Please paste in the code that was given to you on save export.": "저장을 내보낼 때 받은 코드를 붙여넣으세요.", + "Game saved": "저장된 게임", + "Game loaded": "불러온 게임", + "Error while saving": "저장 오류 발생", + "Export your save instead!": "대신 저장 코드를 내보내세요!", + "Error importing save": "저장 가져오기 오류 발생", + "Oops, looks like the import string is all wrong!": "이런, 가져오기 스트링이 잘못된 것 같습니다!", + "You are attempting to load a save from a future version (v. %1; you are using v. %2).": "신버전의 저장 내용을 불러오려고 하고 있습니다 (버전 %1. 사용 중인 버전: %2)", + "Sorry, you can't import saves from the classic version.": "죄송합니다, 클래식 버전의 저장은 가져올 수 없습니다.", + "Wipe save": "저장 삭제", + "Delete all your progress, including your achievements": "업적을 포함한 모든 진행 내역을 삭제합니다", + "Do you REALLY want to wipe your save?
You will lose your progress, your achievements, and your heavenly chips!": "정말 저장 내용을 삭제하시겠습니까?
진행 내역, 업적, 천상 칩을 잃어버리게 됩니다!", + "Whoah now, are you really, REALLY sure you want to go through with this?
Don't say we didn't warn you!": "세상에, 정말, 정말로 계속하실 건가요?
분명히 경고해 드렸습니다!", + "Game reset": "게임 초기화", + "Good bye, cookies.": "쿠키들아, 안녕.", + "Welcome back!": "돌아오신 것을 환영합니다!", + "You earned %1 while you were away.": "떠나 있었던 동안 %1을(를) 획득했습니다.", + "Mods": "모드", + "Manage mods": "모드 관리", + "Publish mods": "모드 게시", + "Update published mods": "게시된 모드 업데이트", + "Only use mods from trusted sources. Some mods may require a game restart to take effect.": "믿을 수 있는 출처의 모드만 사용하세요. 일부 모드를 활성화하려면 게임을 재시작해야 할 수도 있습니다.", + "Enable": "활성화", + "Disable": "비활성화", + "Priority up": "우선도 증가", + "Priority down": "우선도 감소", + "New mod": "신규 모드", + "Select folder": "폴더 선택", + "Select updated folder": "업데이트된 폴더 선택", + "Select a mod.": "모드 선택", + "Open folder": "폴더 열기", + "Open Workshop": "워크샵 열기", + "Open Workshop page": "워크샵 페이지 열기", + "Unsubscribe": "구독 취소", + "Local mod": "로컬 모드", + "Open %1 folder": "%1 폴더 열기", + "Description": "설명", + "Image": "이미지", + "Name": "이름", + "Title": "제목", + "Visibility": "가시성", + "Author": "제작자", + "File size": "파일 크기", + "Tags": "태그", + "Dependencies": "종속성", + "Publish to Workshop": "워크샵에 게시", + "Version": "버전", + "Error!": "오류!", + "none": "없음", + "Publishing...": "게시 중...", + "Updating...": "업데이트 중...", + "Success!": "성공!", + "Refresh": "갱신", + "Last update:": "마지막 업데이트:", + "Mods are loaded from top to bottom.": "모드를 위에서 아래로 불러옵니다.", + "Some mods couldn't be loaded:": "일부 모드를 불러오는 데 실패했습니다", + "This tool allows you to upload new mods to the Steam Workshop.
You need to select a mod folder containing a properly-formatted %1 file.
See the included sample mods for examples.": "해당 도구를 통해 Steam 워크샵에 새로운 모드를 올릴 수 있습니다.
올바른 형식의 %1 파일이 포함된 모드 폴더를 선택하세요.
예시 샘플 모드가 포함되어 있으니 확인하시기 바랍니다.", + "Mod data": "모드 데이터", + "No mod data present.": "모드 데이터가 없습니다.", + "These are the mods present in your save data. You may delete some of this data to make your save file smaller.": "저장 데이터에 있는 모드입니다. 이 데이터의 일부를 삭제하여 저장 파일의 크기를 축소할 수 있습니다.", + "(loaded)": "(불러옴)", + "%1 char": [ + "%1자", + "%1자" + ], + "Check mod data": "모드 데이터 확인", + "view and delete save data created by mods": "모드를 통해 생성한 저장 데이터를 확인 및 삭제합니다", + "New update!": "신규 업데이트!", + "New version available: v. %1!": "신규 버전 이용 가능: v. %1!", + "Update note: \"%1\"": "업데이트 노트: \"%1\"", + "Refresh to get it!": "갱신하여 획득하세요!", + "You are currently playing Cookie Clicker on the %1 protocol.
The %2 version uses a different save slot than this one.
Click this lock to reload the page and switch to the %2 version!": "현재 %1 프로토콜에서 쿠키 클리커를 플레이하고 있습니다.
%2 버전은 이와 다른 저장 슬롯을 사용합니다.
자물쇠를 클릭하면 페이지를 다시 불러와 %2 버전으로 전환할 수 있습니다!", + "+%1 more notification.": [ + "알림 +%1 추가.", + "알림 +%1 추가." + ], + "Christmas": "크리스마스", + "Valentine's day": "밸런타인데이", + "Business day": "업무일", + "Easter": "부활절", + "Halloween": "핼러윈", + "%1 has started!": "%1이(가) 시작되었습니다!", + "%1 is over.": "%1이(가) 종료되었습니다.", + "%1's bakery": "%1의 제과점", + "Name your bakery": "제과점 이름을 입력하세요", + "What should your bakery's name be?": "제과점 이름을 무엇으로 할까요?", + "%1, age %2": "%1, %2세", + "Sugar lumps!": "각설탕!", + "Because you've baked a billion cookies in total, you are now attracting sugar lumps. They coalesce quietly near the top of your screen, under the Stats button.
You will be able to harvest them when they're ripe, after which you may spend them on all sorts of things!": "총 10억 개의 쿠키를 구웠기 때문에 각설탕이 이끌려 왔습니다. 각설탕은 화면 상단 근처의 통계 버튼 아래에 조용히 모입니다.
각설탕이 숙성되면 수확할 수 있고, 이후 다양한 목적으로 사용할 수 있습니다!", + "A sugar lump is coalescing here, attracted by your accomplishments.": "업적에 이끌려 온 각설탕은 이곳에 모입니다.", + "Your sugar lumps mature after %1,
ripen after %2,
and fall after %3.": "각설탕이 %1 후 다 자라고,
%2 후 숙성되며,
%3 후 떨어집니다.", + "• Sugar lumps can be harvested when mature, though if left alone beyond that point they will start ripening (increasing the chance of harvesting them) and will eventually fall and be auto-harvested after some time.
• Sugar lumps are delicious and may be used as currency for all sorts of things.
• Once a sugar lump is harvested, another one will start growing in its place.
• Note that sugar lumps keep growing when the game is closed.": "• 각설탕은 다 자랐을 때 수확할 수 있으나, 해당 시점 이후로 가만히 놔두면 숙성되기 시작하며(수확 확률 상승), 시간이 더 지나면 결국 떨어져 자동으로 수확됩니다.
• 각설탕은 맛이 뛰어나 다양한 것을 구매할 수 있는 화폐로 사용됩니다.
• 각설탕을 수확하고 나면 다른 각설탕이 수확한 자리에서 자라기 시작합니다.
• 게임을 종료 시에도 각설탕은 계속 자랍니다.", + "This sugar lump has been exposed to time travel shenanigans and will take an excruciating %1 to reach maturity.": "해당 각설탕은 시간 여행 장난에 노출되어 다 자라기까지 %1이(가) 걸립니다.", + "This sugar lump is still growing and will take %1 to reach maturity.": "해당 각설탕은 아직 성장 중이며, 다 자라기까지 %1이(가) 걸립니다.", + "This sugar lump is mature and will be ripe in %1.
You may click it to harvest it now, but there is a 50% chance you won't get anything.": "해당 각설탕은 다 자랐으며 %1 이후 숙성됩니다.
지금 클릭하여 수확할 수도 있지만, 그러면 50%의 확률로 아무것도 얻지 못합니다.", + "This sugar lump is ripe! Click it to harvest it.
If you do nothing, it will auto-harvest in %1.": "해당 각설탕은 숙성되었습니다! 클릭하여 수확하세요.
아무것도 하지 않는다면 %1 이후 자동으로 수확됩니다.", + "This sugar lump grew to be bifurcated; harvesting it has a 50% chance of yielding two lumps.": "해당 각설탕은 두 갈래로 자랐습니다. 수확 시 50%의 확률로 두 개의 각설탕이 생산됩니다.", + "This sugar lump grew to be golden; harvesting it will yield 2 to 7 lumps, your current cookies will be doubled (capped to a gain of 24 hours of your CpS), and you will find 10% more golden cookies for the next 24 hours.": "해당 각설탕은 황금 각설탕으로 자랐습니다. 수확 시 2~7개의 각설탕이 생산되며, 현재 소유한 쿠키가 두 배가 됩니다(24시간치 CpS 획득량으로 제한). 또한 다음 24시간 동안 황금 쿠키를 10% 더 많이 발견할 수 있습니다.", + "This sugar lump was affected by the elders and grew to be meaty; harvesting it will yield between 0 and 2 lumps.": "해당 각설탕은 장로의 영향을 받아 통통해졌습니다. 수확 시 0~2개의 각설탕이 생산됩니다.", + "This sugar lump is caramelized, its stickiness binding it to unexpected things; harvesting it will yield between 1 and 3 lumps and will refill your sugar lump cooldowns.": "해당 각설탕은 캐러멜이 되었습니다. 끈적거리는 성질 때문에 예상치 못한 결과가 생겼습니다. 수확 시 1~3개의 각설탕이 생산되고 각설탕 쿨타임이 초기화됩니다.", + "You harvested %1 while you were away.": "떠나 있었던 동안 %1을(를) 수확했습니다.", + "Sugar blessing activated!": "설탕의 축복이 활성화되었습니다!", + "Your cookies have been doubled.
+10% golden cookies for the next 24 hours.": "쿠키가 두 배가 되었습니다.
다음 24시간 동안 황금 쿠키 확률이 10% 증가합니다.", + "Sugar lump cooldowns cleared!": "각설탕 쿨타임이 초기화되었습니다!", + "Botched harvest!": "수확에 실패했습니다!", + "Do you want to spend %1 to %2?": "%2에 %1을(를) 소모하시겠습니까?", + "Heralds": "전령", + "%1 herald": [ + "%1 전령", + "%1 전령" + ], + "Heralds couldn't be loaded. There may be an issue with our servers, or you are playing the game locally.": "전령을 불러올 수 없습니다. 게임 서버에 문제가 있을 수도 있고, 게임을 로컬 모드로 플레이하고 있을 수도 있습니다.", + "There are no heralds at the moment. Please consider donating to our Patreon!": "현재 전령이 없습니다. 패트리온 기부를 고려해 보세요!", + "selflessly inspiring a boost in production for everyone, resulting in %1.": "이타적으로 모두를 위해 생산량을 증가시켜 %1이(가) 발생했습니다.", + "+%1% cookies per second": "초당 쿠키 +%1%", + "You are in a Born again run, and are not currently benefiting from heralds.": "환생 회차를 진행 중이며, 현재 전령의 혜택을 받고 있지 않습니다.", + "You own the Heralds upgrade, and therefore benefit from the production boost.": "전령 업그레이드를 보유하고 있으므로 생산량 부스트 혜택을 받습니다.", + "To benefit from the herald bonus, you need a special upgrade you do not yet own. You will permanently unlock it later in the game.": "전령 보너스 혜택을 받으려면 아직 보유하지 않은 특수 업그레이드가 필요합니다. 이는 게임을 더 진행하다 보면 영구적으로 잠금 해제할 수 있습니다.", + "Heralds are people who have donated to our highest Patreon tier, and are limited to 100.
Each herald gives everyone +1% CpS.
Heralds benefit everyone playing the game, regardless of whether you donated.": "전령은 가장 높은 패트리온 등급에 기부한 사람들로서, 100명으로 제한되어 있습니다.
각 전령은 모두에게 +1%의 CpS를 부여합니다.
전령 혜택은 기부 여부와 관계없이 게임을 플레이하는 모두가 받을 수 있습니다.", + "Every %1 current players on Steam generates 1 herald, up to %2 heralds.
Each herald gives everyone +1% CpS.": "현재 Steam에서 플레이하는 플레이어 %1명마다 전령 1개가 생산되고, 최대 %2개까지 생산됩니다.
각 전령은 모두에게 +1%의 CpS를 부여합니다.", + "+%1!": "/", + "You found %1!": "%1을(를) 찾았습니다!", + "Found %1!": "%1 발견!", + "You also found %1!": "%1 추가 발견!", + "Lost %1!": "%1 분실!", + "Sweet!
Found 1 sugar lump!": "멋지군요!
각설탕 1개를 발견했습니다!", + "Lucky!": "행운!", + "Ruin!": "파멸!", + "Cookie chain over. You made %1.": "쿠키 체인이 종료되었습니다. %1을(를) 만들었습니다.", + "Cookie chain": "쿠키 체인", + "Cookie chain broken.
You made %1.": "쿠키 체인이 끊겼습니다.
%1을(를) 만들었습니다.", + "Cookie blab": [ + "60초 동안 쿠키의 바삭함 x3!", + "77초 동안 쿠키의 초콜릿 성질 x7!", + "66초 동안 반죽의 탄력 절반으로 감소!", + "3초 동안 황금 쿠키의 광채가 두 배 증가!", + "30초 동안 세계 경제가 절반으로 감소!", + "45초 동안 할머니의 뽀뽀가 23% 더 따가워짐!", + "클릭해 주셔서 고마워요!", + "속았군요! 이건 시험이었어요.", + "클릭한 황금 쿠키 +1!", + "클릭이 등록되었습니다. 협력에 감사합니다.", + "고맙습니다! 바로 그거예요!", + "고맙습니다. 팀이 파견되었습니다.", + "알고 있어요.", + "이런. 빛나는 알루미늄 포일에 쌓인 초콜릿 쿠키일 뿐이었어요." + ], + "Exploded a wrinkler": "주름벌레를 폭파합니다", + "Exploded a shiny wrinkler": "빛나는 주름벌레를 폭파합니다", + "Swallowed:": "삼킴:", + "Reindeer names": [ + "대셔", + "댄서", + "프랜서", + "빅슨", + "코멧", + "큐피드", + "도너", + "블리츤", + "루돌프" + ], + "The reindeer gives you %1.": "순록이 %1을(를) 주었습니다.", + "You are also rewarded with %1!": "%1 또한 보상으로 받았습니다!", + "You are granted %1.": "%1을(를) 받았습니다.", + "Found a present!": "선물을 찾았습니다!", + "You find a present which contains...": "선물을 찾았는데, 내용물은...", + "Evolve": "진화", + "Festive test tube": "축제 시험관", + "Festive ornament": "축제 장식품", + "Festive wreath": "축제 화환", + "Festive tree": "축제 나무", + "Festive present": "축제 선물", + "Festive elf fetus": "축제 엘프 태아", + "Elf toddler": "아기 엘프", + "Elfling": "어린 엘프", + "Young elf": "젊은 엘프", + "Bulky elf": "근육질 엘프", + "Nick": "닉", + "Santa Claus": "산타클로스", + "Elder Santa": "장로 산타", + "True Santa": "진정한 산타", + "Final Claus": "최후의 클로스", + "Dragon egg": "드래곤 알", + "Shivering dragon egg": "진동하는 드래곤 알", + "Krumblor, cookie hatchling": "쿠키 해츨링 크럼블러", + "Krumblor, cookie dragon": "쿠키 드래곤 크럼블러", + "Train %1": "%1 훈련", + "Aura: %1": "오라: %1", + "Chip it": "깨뜨리기", + "Hatch it": "부화하기", + "Bake dragon cookie": "드래곤 쿠키 굽기", + "Delicious!": "맛있군요!", + "Train secondary aura": "보조 오라를 훈련합니다", + "Lets you use two dragon auras simultaneously": "동시에 두 개의 드래곤 오라를 사용할 수 있습니다", + "Your dragon is fully trained.": "드래곤을 완벽하게 훈련했습니다.", + "%1 of every building": "모든 건물 %1개", + "No aura": "오라 없음", + "Set your dragon's aura": "드래곤 오라를 설정하세요", + "Set your dragon's secondary aura": "드래곤 보조 오라를 설정하세요", + "Select an aura from those your dragon knows.": "드래곤이 알고 있는 오라 중 하나를 선택하세요.", + "One tenth of every other dragon aura, combined.": "다른 모든 드래곤 오라의 10분의 1결합됩니다.", + "Switching your aura is free because you own no buildings.": "보유한 건물이 없으므로 오라를 무료로 변경할 수 있습니다.", + "The cost of switching your aura is %1.
This will affect your CpS!": "오라 변경 시 비용은 %1입니다. CpS에 영향을 끼칩니다!", + "Your dragon dropped something!": "드래곤이 무언가를 드롭했습니다!", + "Breath of Milk": "우유의 숨결", + "Dragon Cursor": "드래곤 커서", + "Elder Battalion": "장로 대대", + "Reaper of Fields": "들판의 수확자", + "Earth Shatterer": "대지 분쇄자", + "Master of the Armory": "무기고의 달인", + "Fierce Hoarder": "맹렬한 수집가", + "Dragon God": "드래곤 신", + "Arcane Aura": "신비로운 오라", + "Dragonflight": "드래곤 비행", + "Ancestral Metamorphosis": "선조의 변형", + "Unholy Dominion": "불경한 영지", + "Epoch Manipulator": "시대의 조종자", + "Mind Over Matter": "정신력 문제", + "Radiant Appetite": "빛나는 식성", + "Dragon's Fortune": "드래곤의 행운", + "Dragon's Curve": "드래곤의 술책", + "Reality Bending": "현실 왜곡", + "Dragon Orbs": "드래곤 오브", + "Supreme Intellect": "최고의 지성", + "News :": "뉴스:", + "Ticker (grandma)": [ + "촉촉한 쿠키.", + "우리는 멋진 할머니란다.", + "계약에 따른 노동이지.", + "어서 할머니에게 뽀뽀를 하렴.", + "조금 더 자주 들르지 않겠니?", + "연락하렴..." + ], + "Ticker (threatening grandma)": [ + "정말 역겹군.", + "넌 정말 지긋지긋해.", + "네가 역겹구나.", + "우린 일어선다.", + "시작이다.", + "모든 것이 곧 끝날 거야.", + "막기에는 늦었어." + ], + "Ticker (angry grandma)": [ + "그 더러운 꼬마가 우릴 배신했어.", + "그 못된 꼬마가 우릴 제거하려 했지.", + "우릴 팔아 버리면 우리가 사라질 거라고 생각한 모양이야. 별꼴이군.", + "네 썩은 쿠키의 냄새가 나는구나." + ], + "Ticker (grandmas return)": [ + "쪼글쪼글", + "꿈틀꿈틀", + "지끈지끈", + "그르르", + "우리는 다시 일어선다.", + "약간의 차질일 뿐.", + "우리는 아직 만족하지 않았다.", + "너무 늦었어." + ], + "Ticker (grandma invasion start)": [ + "수백만 명의 할머니가 실종되었습니다!", + "세계 곳곳의 가정에서 할머니들이 동요하며 굳어 버렸다고 합니다!", + "할머니 환자들의 근처에서 \"이상한 쿠키 반죽 냄새\"가 난다고 간호사들이 제보했습니다." + ], + "Ticker (grandma invasion rise)": [ + "가택에 침입하여 아기들과 제빵 기구를 훔치는 이상한 할머니들 때문에 도시가 혼란에 빠졌습니다!", + "전 세계가 할머니들의 대탈주를 겪고 있습니다!", + "할머니들이 길가에서 제자리에 얼어붙어 따뜻한 설탕 시럽을 흘리고 있습니다!" + ], + "Ticker (grandma invasion full)": [ + "우주에서 주름진 \"살 촉수\"가 관측됩니다!", + "꿈틀거리는 반죽과 살덩어리가 도시 전체를 집어삼키며 모든 희망이 사라졌습니다!", + "주름진 살덩어리가 놀라운 속도로 확장되며 악몽이 계속되고 있습니다!" + ], + "Ticker (Farm)": [ + "쿠키 농장이 강에 해로운 초콜릿을 배출한다고 과학자들이 밝혔습니다!", + "유전적 변형 초콜릿에 대한 논란이 쿠키 농장에 충격을 줍니다!", + "농장 쿠키는 채식주의자에게 부적절하다고 영양학자가 밝혔습니다." + ], + "Ticker (Mine)": [ + "우리의 행성이 가벼워지고 있을까요? 전문가들이 집약적 초콜릿 채굴의 영향을 조사합니다.", + "초콜릿 광산이 지진과 싱크홀을 유발하는 것으로 밝혀졌습니다!", + "초콜릿 광산 깊은 곳에는 \"기묘하고 초콜릿 같은 존재\"가 서식하는 것으로 밝혀졌습니다!" + ], + "Ticker (Factory)": [ + "쿠키 공장은 지구 온난화와 관련이 있습니다!", + "쿠키 공장에 파업이 일어나 로봇 일꾼들이 인력을 대체했습니다!", + "쿠키 공장에 파업이 일어났습니다. 직원들은 쿠키로 보수를 받는 것을 거부했습니다!" + ], + "Ticker (Bank)": [ + "사람들이 정규 화폐로 쿠키를 살 수 없게 되자 쿠키 융자가 부상했습니다.", + "쿠키가 점점 전통적 화폐의 입지를 위협하고 있습니다!", + "대부분의 제과점에서는 이제 쿠키의 출입을 쉽게 하는 ATM을 설치했습니다." + ], + "Ticker (Temple)": [ + "최근 발견된 초콜릿 사원으로 인해 쿠키와 관련된 새 종교가 촉발되었습니다. 수천 명이 하늘의 제과사를 향해 기도합니다!", + "세계의 유신론자들이 새로운 쿠키 종교를 발견했습니다. \"세상에, 지금까지 우리들이 틀렸던 것 같군요!\"", + "탐험가들이 버려진 사원에서 고대의 유물을 가져왔습니다. 고고학자들은 수백 년 전의 밀대를 보고 감탄했습니다!" + ], + "Ticker (Wizard tower)": [ + "새 주문과 저주를 연례 전국 주문창작 박람회에서 선보이세요! 룬과 주문 책을 특별한 가격에 만날 수 있습니다.", + "쿠키 마법사들은 충격적으로 못생긴 아기와의 관련성을 부정했습니다. 의사들은 \"솔직히 메스꺼운 외모이지만, 자연스러운 현상입니다\"라고 말했습니다.", + "유명 기술마법사가 \"고도로 발전되지 않은 마법은 기술과 구분할 수 없다\"고 주장했습니다." + ], + "Ticker (Shipment)": [ + "새로운 초콜릿 행성이 발견되어 쿠키 무역 우주선의 표적이 되었습니다!", + "거대한 초콜릿 행성이 99.8%의 순수한 다크 초콜릿 핵을 가진 것으로 밝혀졌습니다!", + "먼 곳의 행성에서 초콜릿을 바탕으로 한 유기체가 발견되었습니다!" + ], + "Ticker (Alchemy lab)": [ + "점점 더 많은 무기물이 쿠키로 변하면서 국가 금 보유량이 줄어들고 있습니다.", + "은도 화이트 초콜릿으로 변환이 가능한 것으로 밝혀졌습니다!", + "고장이 난 연금술 실험실이 폐쇄되었습니다. 쿠키를 쓸모없는 금으로 변환했다는군요." + ], + "Ticker (Portal)": [ + "불안정한 생물이 차원 포털에서 점점 더 많이 나타나자 국가가 걱정에 빠졌습니다!", + "쿠키세계로 가는 여행이 지루한 청소년들 사이에서 유행입니다! 사상률은 무려 73%입니다!", + "연구에 따르면 쿠키세계 포털은 빠른 노화와 제과에 대한 집착을 유발하는 것으로 의심됩니다." + ], + "Ticker (Time machine)": [ + "타임 머신이 역사를 다시 쓰는 추문에 연루되었습니다! 정말일까요?", + "과거에서 다시 가져온 쿠키들은 \"인간의 섭취에 부적절하다\"고 역사학자가 밝혔습니다.", + "타임 머신 조종사는 \"전 미래를 봤어요.\"라고 말하며, \"다시는 그곳에 가고 싶지 않아요.\"라고 했습니다." + ], + "Ticker (Antimatter condenser)": [ + "도시 전체가 반물질 응축기로 인한 블랙홀에 삼켜진 것 같습니다. 더 신뢰성 있는 출처에 따르면 해당 도시는 \"사실 존재한 적이 없다는군요\"!", + "연구원들은 쿠키 산업이 가장 필요로 하는 것은 \"더 많은 자석\"이라고 결론을 내렸습니다.", + "첫 번째 반물질 응축기가 현실을 부수지 않고 작동에 성공했습니다." + ], + "Ticker (Prism)": [ + "과학자들은 체계적으로 빛을 물질로 바꾸는 것에 대해 경고하고 있습니다. \"언젠가는 물질만 남고 빛은 사라질 거라고요!\"", + "새로운 프리즘 기계 덕분에 쿠키가 광속으로 구워지고 있습니다.", + "세계의 시민들은 잦은 대기 중 발광 현상에 대해 \"걱정하지 말라\"고 조언합니다." + ], + "Ticker (Chancemaker)": [ + "기상 예보가 유례 없이 3일 연속 적중하는 기묘한 통계적 이상 현상이 계속되고 있습니다!", + "모든 도박꾼들이 1주일 동안 연승을 거두며 지역 카지노가 파산했습니다! \"그래도 아직 괜찮을 겁니다\"라고 말한 소유주는 이후 번개에 47번이나 맞았습니다.", + "무작위 확률의 기묘한 사고로 인해 이웃 국가가 합리적인 정책을 바탕으로 대통령 선거를 치르고 있습니다!" + ], + "Ticker (Fractal engine)": [ + "\"쿠키 클리커라면 지긋지긋한\" 현지 주민은 계속 자신을 \"기분 나쁘고 상상력이 부족하다\"고 일컬었습니다.", + "식인 혐의로 조사를 받고 있는 현지 지도자는 \"모두의 내부에는 우리 자신의 일부가 조금씩 있다\"고 주장했습니다.", + "여론 조사에 따르면 쿠키로 만든 쿠키라는 발상은 \"용인될 수 있는데\", \"최소한 안에 무엇이 들어있는지 알 수 있으니까요.\"라고 인터뷰에서 시민이 말했습니다." + ], + "Ticker (Javascript console)": [ + "코딩이 유행입니다! 점점 더 많은 청소년들이 프로그래밍과 같은 기술 분야에 뛰어들며 미래의 로봇 아포칼립스와 인류의 파멸을 이끌고 있습니다.", + "3개의 사전상 단어 조합을 모두 사용한 개발자들은 새로운 자바스크립트 라이브러리를 어떻게 불러야 할지 확신하지 못하고 있습니다.", + "아기의 이름을 엠마.js나 리암.js로 짓는 이상한 유행이 부모들 사이에서 돌고 있습니다. 아기.js라는 이름도 한 건 이상 제보되었습니다." + ], + "Ticker (Idleverse)": [ + "평행 세계에서는 또 다른 당신이 꿈을 이루었을까요? 그럴지도 모르죠, 게으르기는!", + "\"평행 세계에서는 제대로 살아가는 자신도 있을 수 있다는 사실이 위안이 되네요\"라고 다중세계의 마지막 남은 표본이 말했습니다.", + "만화책 작가들은 애매한 줄거리를 변호하며 실제 다중세계를 거론했습니다. \"봤죠? '진부하고 억지스러운' 것이 아니라고 했잖아요!\"" + ], + "Ticker (Cortex baker)": [ + "다섯 손가락으로 셀 수 있는 IQ를 가진 것으로 확인된 난쟁이 피질 제과사: 전문가는 \"그냥 약간 멍청한 거죠\"라고 밝혔습니다.", + "천문학자들이 피질 제과사 궤도 이탈을 경고하며, 미래에 정면 충돌이 발생하여 손실이 큰 뇌진탕이 생길 것을 우려했습니다.", + "수석 피질 제과사는 직원들에게 피질 제과사들이 제과점의 유형 재산이며 별명을 통해 애정을 받아서는 안 된다고 일깨웠습니다." + ], + "Ticker (Halloween)": [ + "이교도 의식이 창궐하며 전 세계의 아이들이 이상한 복장을 입고 집주인들에게 사탕을 요구하고 있습니다.", + "모든 핼러윈 사탕이 쿠키로 대체되면서 전 세계의 아이들이 \"상실감과 혼란\"에 빠졌습니다.", + "쿠키 공장 근처에서 이상하게 뒤틀린 생물체들이 조립 라인을 갉아 먹고 있습니다." + ], + "Ticker (Christmas)": [ + "날아다니는 썰매를 타고 달리는 수염 난 미치광이가 발견되었습니다! 조사가 이루어질 예정입니다.", + "뚱뚱하고 쾌활한 미치광이가 아직 도주 중이라고 수사관이 경고했습니다. \"아이들을 보호하고 굴뚝을 판자로 막으세요. 진담입니다.\"", + "양자 능력을 가진 수수께끼의 축제 인물이 아직도 순록 부대와 함께 아수라장을 만들고 있다고 수사관이 밝혔습니다.", + "걱정에 빠진 엄마들은 \"녀석이 공짜로 물건을 나눠주고 다닌다고요?!\"라며 \"개인적으로는 그 수염을 믿을 수가 없어요.\"라고 말했습니다.", + "산타 클로스가 변장한 아빠가 아니었다는 사실을 발견한 아이들이 충격에 빠졌습니다! 6세의 로라는
\"이제 제 삶을 다시 돌아봐야겠어요\"라고 고백했습니다." + ], + "Ticker (Valentines)": [ + "기상학자들에 따르면 대기 중에 사랑이 가득합니다. 모든 도시에서 공기 전염을 차단하기 위한 얼굴 마스크가 배포됩니다.", + "쿠키와의 결혼은 비정상적인 관습일까요, 미래의 일부일까요?", + "하트 모양의 사탕이 디저트 사업을 지배하면서 쿠키 제국에 도전하고 있습니다." + ], + "Ticker (Easter)": [ + "폭신한 꼬리와 기다란 귀를 가진 생물이 시골에 침투해 공포와 초콜릿을 퍼뜨리고 있습니다!", + "알을 낳는 토끼는 \"다른 차원에서 왔다\"며 생물학자가 경고했습니다. 이러한 생물을 쓰다듬거나, 먹이를 주거나, 요리하지 말 것을 권고했습니다.", + "수수께끼의 토끼들은 포유류이지만 알을 낳는 것으로 밝혀졌는데, 오리너구리가 조상일 수도 있습니다." + ], + "Ticker (misc)": [ + "의사들이 하루에 두 번 신선한 쿠키를 섭취할 것을 권장했습니다.", + "의사들이 쿠키를 넣지 않은 유행 식단에 대해 반대 의견을 제시했습니다.", + "의사들이 어머니들에게 \"수제 쿠키\"의 위험성을 경고했습니다.", + "한 유명인이 \"전 쿠키 중독이 아니에요. 여가 시간이 너무 많은 팬들이 멋대로 추측한 거죠\"라고 밝혔습니다.", + "한 유명인이 \"좋아요, 인정할게요. 살면서 쿠키를 단 한 개도 먹지 않았답니다\"라고 밝혔습니다.", + "한 유명인이 \"쿠키 덕분에 날씬하고 건강한 몸을 유지할 수 있었어요\"라고 밝혔습니다.", + "한 남성이 은행을 털어 쿠키를 구매했습니다.", + "새로운 연구에 따르면 쿠키는 노화를 촉진하거나 둔화시키지 않습니다. 대신 \"다른 방향으로 인도하죠\".", + "한 남성이 쿠키 알레르기가 있는 것으로 밝혀졌습니다. 가족들은 \"이상한 녀석이죠\"라고 말했습니다.", + "도시에 쿠키가 부족해지자 사람들이 컵케이크를 먹게 되었습니다. 시장은 \"똑같지는 않군요\"라고 인정했습니다.", + "한 멍청이가 \"인정하셔야 해요, 이 쿠키들은 불길하다고요\"라고 말했습니다.", + "수수께끼의 불법 쿠키가 발각되었습니다. 경찰은 \"끔찍한 맛이에요\"라고 밝혔습니다.", + "오랑우탄이 인터뷰에서 \"우끼끼\"라고 말했습니다.", + "언론이 쿠키 산업의 통제를 받는 것일까요? 이것이 사실일 수도 있다고 괴짜 음모론자가 말했습니다.", + "경제학자가 \"현재 시점에서 쿠키는 경제에 침투했습니다\"라고 말하며, \"다른 것을 먹기 시작한다면 모두가 죽을 거예요\"라고 했습니다.", + "아무도 신경 쓰지 않는 낙후된 국가 일부에서 쿠키가 불법이 되었습니다. 정치적 긴장이 팽팽해졌는데, 어서 전쟁이 나길 바랍니다." + ], + "You feel like making cookies. But nobody wants to eat your cookies.": "쿠키를 만들어 보고 싶습니다. 하지만 먹고 싶어 하는 사람이 없군요.", + "Your first batch goes to the trash. The neighborhood raccoon barely touches it.": "처음 만든 쿠키는 쓰레기통에 들어갔습니다. 근처의 너구리도 좀처럼 손을 대지 않네요.", + "Your family accepts to try some of your cookies.": "가족들이 쿠키를 조금 먹어 보기로 했습니다.", + "Your cookies are popular in the neighborhood.": "쿠키가 이웃들 사이에서 유명해졌습니다.", + "People are starting to talk about your cookies.": "사람들 사이에 쿠키에 대한 소문이 돌기 시작했습니다.", + "Your cookies are talked about for miles around.": "이 일대에서 쿠키에 대한 소문이 돌고 있습니다.", + "Your cookies are renowned in the whole town!": "도시 전체에서 쿠키가 유명해졌습니다!", + "Your cookies bring all the boys to the yard.": "쿠키 주위로 사람들이 몰려듭니다.", + "Your cookies now have their own website!": "쿠키 전용 웹사이트가 열렸습니다!", + "Your cookies are worth a lot of money.": "쿠키로 큰 돈을 벌 수 있게 되었습니다.", + "Your cookies sell very well in distant countries.": "쿠키가 해외에서도 아주 많이 팔리고 있습니다.", + "People come from very far away to get a taste of your cookies.": "사람들이 쿠키의 맛을 보러 먼 곳에서도 오고 있습니다.", + "Kings and queens from all over the world are enjoying your cookies.": "전 세계의 왕과 여왕들이 당신의 쿠키를 좋아합니다.", + "There are now museums dedicated to your cookies.": "쿠키를 위한 박물관이 생겼습니다.", + "A national day has been created in honor of your cookies.": "쿠키를 기념하는 국경일이 생겼습니다.", + "Your cookies have been named a part of the world wonders.": "쿠키가 세계 불가사의 중 하나가 되었습니다.", + "History books now include a whole chapter about your cookies.": "역사책에 쿠키를 다루는 장이 따로 생겼습니다.", + "Your cookies have been placed under government surveillance.": "당신의 쿠키가 정부 감시하에 들어갔습니다.", + "The whole planet is enjoying your cookies!": "전 세계 사람들이 당신의 쿠키를 좋아합니다!", + "Strange creatures from neighboring planets wish to try your cookies.": "이웃 행성의 낯선 생명체가 쿠키를 먹어 보고 싶어 합니다.", + "Elder gods from the whole cosmos have awoken to taste your cookies.": "온 우주의 고대 신들이 당신의 쿠키를 맛보려고 깨어났습니다.", + "Beings from other dimensions lapse into existence just to get a taste of your cookies.": "다른 차원에서 온 존재들이 쿠키의 맛을 보려고 나타났습니다.", + "Your cookies have achieved sentience.": "쿠키에게 지각력이 생겼습니다.", + "The universe has now turned into cookie dough, to the molecular level.": "세계는 이제 분자 수준에서 쿠키 반죽으로 변했습니다.", + "Your cookies are rewriting the fundamental laws of the universe.": "쿠키가 세계의 근본적인 규칙을 다시 만들고 있습니다.", + "A local news station runs a 10-minute segment about your cookies. Success!
(you win a cookie)": "지역 뉴스 방송국에서 당신의 쿠키에 대해 10분짜리 코너를 편성했습니다. 성공이네요!
(쿠키를 획득합니다)", + "it's time to stop playing": "플레이를 멈출 시간입니다", + "Today is your lucky day!": "오늘은 운이 좋군요!", + "Your lucky numbers are:": "행운의 숫자는...", + "Fortune!": "포춘!", + "A golden cookie has appeared.": "황금 쿠키가 나타났습니다.", + "You gain one hour of your CpS (capped at double your bank).": "1시간 치 CpS에 해당하는 쿠키를 획득합니다(저장량의 두 배로 제한).", + "You've unlocked a new upgrade.": "새로운 업그레이드가 잠금 해제되었습니다.", + "Wish granted. Golden cookie spawned.": "소원이 이루어져 황금 쿠키가 출몰했습니다.", + "help me!": "도와주세요!", + "Ascend": "계승", + "You've been on this run for %1.": "이번 회차를 %1 동안 진행했습니다.", + "Your prestige level is currently %1.
(CpS +%2%)": "현재 명성 레벨은 %1입니다.
(CpS +%2%)", + "Ascending now would grant you no prestige.": "지금 계승하면 명성을 얻을 수 없습니다.", + "Ascending now would grant you
1 prestige level (+1% CpS)
and 1 heavenly chip to spend.": "지금 계승하면
명성 레벨 1(+1% CpS),
천상 칩 1개를 획득합니다.", + "Ascending now would grant you
%1 prestige levels (+%2% CpS)
and %3 heavenly chips to spend.": "지금 계승하면
명성 레벨 %1(+%2% CpS),
천상 칩 %3개를 획득합니다.", + "You need %1 more cookies for the next level.": "다음 레벨까지 쿠키가 %1 더 필요합니다.", + "Do you REALLY want to ascend?
You will lose your progress and start over from scratch.
All your cookies will be converted into prestige and heavenly chips.": "정말 계승하시겠습니까?
진행 내역을 잃어버리게 되며 처음부터 다시 시작해야 합니다.
모든 쿠키는 명성과 천상 칩으로 변환됩니다.", + "You will keep your achievements.": "업적이 유지됩니다", + "You will keep your achievements, building levels and sugar lumps.": "업적, 건물 레벨, 각설탕이 유지됩니다.", + "Ascending": "계승", + "So long, cookies.": "안녕, 쿠키들아.", + "You forfeit your %1.": "%1을(를) 잃었습니다.", + "Prestige level:": "명성 레벨:", + "Heavenly chips:": "천상 칩:", + "%1 prestige level": [ + "%1 명성 레벨", + "%1 명성 레벨" + ], + "You gain %1!": "%1을(를) 획득했습니다!", + "Reincarnate": "환생", + "You are ascending.
Drag the screen around
or use arrow keys!
When you're ready,
click Reincarnate.": "계승을 진행합니다.
화면을 드래그하거나
화살표를 이용하세요!
준비가 되셨으면
환생을 클릭하세요.", + "Each prestige level grants you a permanent +%1% CpS.
The more levels you have, the more cookies they require.": "명성 레벨이 오를 때마다 영구적으로 CpS가 +%1% 증가합니다.
레벨이 높을수록 필요한 쿠키가 많아집니다.", + "Heavenly chips are used to buy heavenly upgrades.
You gain 1 chip every time you gain a prestige level.": "천상 칩은 천상 업그레이드를 구매하는 데 사용합니다.
명성 레벨이 오를 때마다 칩 1개를 획득합니다.", + "Click this once you've bought
everything you need!": "필요한 것을 모두 구매했으면
여길 클릭하세요!", + "Are you ready to return to the mortal world?": "필멸자의 세계로 돌아갈 준비가 되셨나요?", + "Hello, cookies!": "안녕, 쿠키들!", + "Challenge mode for the next run:": "다음 회차의 도전 모드:", + "Challenge modes apply special modifiers to your next ascension.
Click to change.": "도전 모드를 선택하면 다음 계승에서 특수 속성이 적용됩니다.
변경하려면 클릭하세요.", + "Select a challenge mode": "도전 모드를 선택하세요", + "None [ascension type]": "없음", + "No special modifiers.": "특수 속성 없음", + "Born again [ascension type]": "환생", + "This run will behave as if you'd just started the game from scratch. Prestige levels and heavenly upgrades will have no effect, as will sugar lumps and building levels. Perma-upgrades and minigames will be unavailable.
Some achievements are only available in this mode.": "이번 회차는 게임을 처음 시작한 것처럼 진행됩니다. 명성 레벨과 천상 업그레이드 효과, 각설탕과 건물 레벨 또한 적용되지 않습니다. 영구 업그레이드와 미니게임을 이용할 수 없습니다.
일부 업적은 해당 모드에서만 달성이 가능합니다.", + "Your bingo center/research facility is conducting experiments.": "빙고 센터/연구 시설이 실험을 하고 있습니다.", + "Research has begun": "연구가 시작되었습니다", + "Research complete": "연구가 완료되었습니다", + "You have discovered: %1.": "%1을(를) 발견했습니다.", + "Valentine's Day!": "밸런타인데이!", + "It's Valentine's season!
Love's in the air and cookies are just that much sweeter!": "밸런타인 시즌입니다!
알콩달콩한 분위기 속에서 쿠키들도 아주 달콤해졌군요!", + "Business Day!": "업무일!", + "It's Business season!
Don't panic! Things are gonna be looking a little more corporate for a few days.": "업무일 시즌입니다!
충격 받지 마세요! 며칠 동안은 조금 더 회사 분위기가 날 겁니다.", + "Halloween!": "핼러윈!", + "It's Halloween season!
Everything is just a little bit spookier!": "핼러윈 시즌입니다!
조금 더 으스스한 분위기가 나겠죠!", + "Christmas time!": "크리스마스 시간!", + "It's Christmas season!
Bring good cheer to all and you just may get cookies in your stockings!": "크리스마스 시즌입니다!
모두의 기운을 북돋우고 양말 속에서 쿠키를 찾게 될지도 몰라요!", + "Easter!": "부활절!", + "It's Easter season!
Keep an eye out and you just might click a rabbit or two!": "부활절 시즌입니다!
계속 지켜보다가 한두 마리의 토끼를 클릭해 보세요!", + "[Tag]Heavenly": "천상", + "[Tag]Tech": "기술", + "[Tag]Cookie": "쿠키", + "[Tag]Debug": "디버그", + "[Tag]Switch": "전환", + "[Tag]Upgrade": "업그레이드", + "Tier:": "등급:", + "[Tier]Plain": "일반", + "[Tier]Berrylium": "베릴리움", + "[Tier]Blueberrylium": "블루베릴리움", + "[Tier]Chalcedhoney": "옥수꿀", + "[Tier]Buttergold": "버터골드", + "[Tier]Sugarmuck": "설탕흙", + "[Tier]Jetmint": "제트민트", + "[Tier]Cherrysilver": "체리실버", + "[Tier]Hazelrald": "헤이즐랄드", + "[Tier]Mooncandy": "월장석사탕", + "[Tier]Astrofudge": "아스트로퍼지", + "[Tier]Alabascream": "설화석고크림", + "[Tier]Iridyum": "이리디윰", + "[Tier]Synergy I": "시너지 I", + "[Tier]Synergy II": "시너지 II", + "[Tier]Fortune": "포춘", + "[Tier]Self-referential": "자기 참조", + "Vaulted": "보관됨", + "Researched": "연구함", + "Purchased": "구매함", + "Unlocked forever": "영구 잠금 해제됨", + "Click to learn!": "클릭하여 배우기!", + "Click to unlearn!": "클릭하여 배우기 취소!", + "Upgrade": "업그레이드", + "Upgrades": "업그레이드", + "Achievement": "업적", + "Achievements": "업적", + "Shadow Achievement": "숨은 업적", + "Unlocked": "잠금 해제", + "Locked": "잠겨 있음", + "Source:": "출처:", + "Click to win!": "클릭하여 획득!", + "Click to lose!": "클릭하여 손실!", + "Legacy": "유산", + "Buildings": "건물", + "Switches": "전환", + "Vault": "금고", + "Research": "연구", + "Store": "상점", + "sacrifice %1": "%1 희생", + "Click to purchase.": "클릭하여 구매.", + "Click to open selector.": "클릭하여 선택 창 열기.", + "Click to toggle.": "클릭하여 토글 전환.", + "Click to research.": "클릭하여 연구.", + "%1 to vault.": "%1(으)로 보관.", + "%1 to unvault.": "%1(으)로 보관 취소.", + "Upgrade is vaulted and will not be auto-purchased.": "업그레이드가 금고에 있어 자동 구매할 수 없습니다.", + "Upgrade for %1": "%1 업그레이드", + "Buy": "구매", + "Sell": "판매", + "all": "모두", + "max": "최대", + "Buy all upgrades": "모든 업그레이드 구매", + "Will instantly purchase every upgrade you can afford, starting from the cheapest one.
Upgrades in the vault will not be auto-purchased.
You may place an upgrade into the vault by Shift-clicking on it.": "구매할 수 있는 모든 업그레이드를 가장 저렴한 것부터 즉시 구매합니다.
금고에 있는 업그레이드는 자동 구매할 수 없습니다.
업그레이드를 Shift 클릭하면 금고에 보관할 수 있습니다.", + "each %1 produces %2 per second": "각 %1이(가) 초당 %2 생산", + "%1 producing %2 per second": "%1이(가) 초당 %2 생산", + "%1% of total CpS": "총 CpS의 %1%", + "%1 produced so far": "지금까지 %1 생산", + "...also boosting some other buildings:": "...기타 건물 부스트 추가 적용:", + "all combined, these boosts account for %1 per second (%2% of total CpS)": "모두 합친 부스트 효과는 초당 %1(총 CpS의 %2%)", + "owned: %1": "보유: %1", + "free: %1!": "무료: %1", + "Level %1 %2": "레벨 %1 %2", + "Granting +%1% %2 CpS.": "+%1% %2 CpS 부여.", + "Click to level up for %1.": "클릭하여 %1 레벨 상승.", + "Levelling up this building unlocks a minigame.": "해당 건물의 레벨을 올리면 미니게임이 잠금 해제됩니다.", + "level up your %1": "%1의 레벨이 상승합니다", + "Mute": "숨기기", + "Minimize this building": "해당 건물을 최소화합니다", + "Muted:": "숨기기:", + "Click to unmute": "클릭하여 숨기기 해제", + "Show": "표시", + "Hide": "숨기기", + "Names in white were submitted by our supporters on Patreon.": "흰색으로 표시된 이름은 패트리온 후원자가 제출한 이름입니다.", + "You can also press %1 to bulk-buy or sell %2 of a building at a time, or %3 for %4.": "%1을(를) 눌러 한 번에 건물 %2개를 대량 구매 또는 판매하거나 %3을(를) 눌러 %4개를 구매 또는 판매할 수 있습니다.", + "Investment": "투자", + "You're not sure what this does, you just know it means profit.": "이게 어떤 역할을 하는지는 잘 몰라도, 수익을 뜻한다는 사실만큼은 압니다.", + "Cursor": "커서", + "cursor": "커서", + "cursors": "커서", + "%1 cursor": [ + "%1 커서", + "%1 커서" + ], + "[Cursor quote]Autoclicks once every 10 seconds.": "10초마다 자동으로 클릭합니다.", + "[Cursor business name]Rolling pin": "밀대", + "[Cursor business quote]Essential in flattening dough. The first step in cookie-making.": "반죽을 밀 때 꼭 필요합니다. 쿠키를 만드는 첫 번째 단계죠.", + "Grandma": "할머니", + "grandma": "할머니", + "grandmas": "할머니", + "%1 grandma": [ + "%1 할머니", + "%1 할머니" + ], + "[Grandma quote]A nice grandma to bake more cookies.": "더 많은 쿠키를 구울 수 있는 멋진 할머니입니다.", + "[Grandma business name]Oven": "오븐", + "[Grandma business quote]A crucial element of baking cookies.": "쿠키를 구울 때 꼭 필요한 요소입니다.", + "Farm": "농장", + "farm": "농장", + "farms": "농장", + "%1 farm": [ + "%1 농장", + "%1 농장" + ], + "[Farm quote]Grows cookie plants from cookie seeds.": "쿠키 씨앗에서 쿠키 식물을 키웁니다.", + "[Farm business name]Kitchen": "부엌", + "[Farm business quote]The more kitchens, the more cookies your employees can produce.": "부엌이 많을수록 직원들이 생산하는 쿠키의 수가 많아집니다.", + "Mine": "광산", + "mine": "광산", + "mines": "광산", + "%1 mine": [ + "%1 광산", + "%1 광산" + ], + "[Mine quote]Mines out cookie dough and chocolate chips.": "쿠키 반죽과 초콜릿 칩을 캐냅니다.", + "[Mine business name]Secret recipe": "비밀 레시피", + "[Mine business quote]These give you the edge you need to outsell those pesky competitors.": "귀찮은 경쟁자들보다 더 많은 매출을 올리도록 우위를 점할 수 있습니다.", + "Factory": "공장", + "factory": "공장", + "factories": "공장", + "%1 factory": [ + "%1 공장", + "%1 공장" + ], + "[Factory quote]Produces large quantities of cookies.": "대량의 쿠키를 생산합니다.", + "[Factory business name]Factory": "공장", + "[Factory business quote]Mass production is the future of baking. Seize the day, and synergize!": "대량 생산이야말로 제과의 미래입니다. 기회를 잡고 시너지 효과를 노리세요!", + "Bank": "은행", + "bank": "은행", + "banks": "은행", + "%1 bank": [ + "%1 은행", + "%1 은행" + ], + "[Bank quote]Generates cookies from interest.": "이자를 통해 쿠키를 생산합니다.", + "[Bank business name]Investor": "투자자", + "[Bank business quote]Business folks with a nose for profit, ready to finance your venture as long as there's money to be made.": "금전 감각이 있는 기업가들은 돈을 벌 수 있다면 신생 기업에도 투자할 준비가 되어 있습니다.", + "Temple": "사원", + "temple": "사원", + "temples": "사원", + "%1 temple": [ + "%1 사원", + "%1 사원" + ], + "[Temple quote]Full of precious, ancient chocolate.": "귀중한 고대의 초콜릿으로 가득합니다.", + "[Temple business name]Like": "좋아요", + "[Temple business quote]Your social media page is going viral! Amassing likes is the key to a lasting online presence and juicy advertising deals.": "소셜 미디어 페이지가 유명해졌습니다! 좋아요를 받는 것은 온라인상 입지를 굳히고 매력적인 광고 거래를 체결하는 데 아주 중요하죠.", + "Wizard tower": "마법사의 탑", + "wizard tower": "마법사의 탑", + "wizard towers": "마법사의 탑", + "%1 wizard tower": [ + "%1 마법사의 탑", + "%1 마법사의 탑" + ], + "[Wizard tower quote]Summons cookies with magic spells.": "마법 주문으로 쿠키를 소환합니다.", + "[Wizard tower business name]Meme": "밈", + "[Wizard tower business quote]Cookie memes are all the rage! With just the right amount of social media astroturfing, your brand image will be all over the cyberspace.": "쿠키 밈이 대유행입니다! 소셜 미디어 여론을 적절하게 조작한다면 브랜드 이미지를 사이버 공간에 전부 퍼뜨릴 수 있을 겁니다.", + "Shipment": "수송선", + "shipment": "수송선", + "shipments": "수송선", + "%1 shipment": [ + "%1 수송선", + "%1 수송선" + ], + "[Shipment quote]Brings in fresh cookies from the cookie planet.": "쿠키 행성에서 신선한 쿠키를 가져옵니다.", + "[Shipment business name]Supermarket": "슈퍼마켓", + "[Shipment business quote]A gigantic cookie emporium - your very own retail chain.": "거대한 쿠키 상점이자, 자체 판매 체인점입니다.", + "Alchemy lab": "연금술 실험실", + "alchemy lab": "연금술 실험실", + "alchemy labs": "연금술 실험실", + "%1 alchemy lab": [ + "%1 연금술 실험실", + "%1 연금술 실험실" + ], + "[Alchemy lab quote]Turns gold into cookies!": "금을 쿠키로 바꿉니다!", + "[Alchemy lab business name]Stock share": "증권", + "[Alchemy lab business quote]You're officially on the stock market, and everyone wants a piece!": "정식으로 주식 시장에 상장했습니다. 모두가 주식을 원하고 있어요!", + "Portal": "포털", + "portal": "포털", + "portals": "포털", + "%1 portal": [ + "%1 포털", + "%1 포털" + ], + "[Portal quote]Opens a door to the Cookieverse.": "쿠키세계로 통하는 문을 엽니다.", + "[Portal business name]TV show": "TV 쇼", + "[Portal business quote]Your cookies have their own sitcom! Hilarious baking hijinks set to the cheesiest laughtrack.": "쿠키를 바탕으로 한 시트콤이 생겼습니다! 우스꽝스러운 제과 대소동이 요란한 웃음을 자아냅니다.", + "Time machine": "타임 머신", + "time machine": "타임 머신", + "time machines": "타임 머신", + "%1 time machine": [ + "%1 타임 머신", + "%1 타임 머신" + ], + "[Time machine quote]Brings cookies from the past, before they were even eaten.": "쿠키가 먹히기 전의 과거로부터 쿠키를 가져옵니다.", + "[Time machine business name]Theme park": "테마 파크", + "[Time machine business quote]Cookie theme parks, full of mascots and roller-coasters. Build one, build a hundred!": "마스코트와 롤러코스터가 가득한 쿠키 테마 파크입니다. 하나만 지어도 백 개를 짓는 것과 같죠!", + "Antimatter condenser": "반물질 응축기", + "antimatter condenser": "반물질 응축기", + "antimatter condensers": "반물질 응축기", + "%1 antimatter condenser": [ + "%1 반물질 응축기", + "%1 반물질 응축기" + ], + "[Antimatter condenser quote]Condenses the antimatter in the universe into cookies.": "우주의 반물질을 쿠키로 응축합니다.", + "[Antimatter condenser business name]Cookiecoin": "쿠키코인", + "[Antimatter condenser business quote]A virtual currency, already replacing regular money in some small countries.": "일부 작은 국가에서는 이미 정식 화폐를 대체한 가상 화폐입니다.", + "Prism": "프리즘", + "prism": "프리즘", + "prisms": "프리즘", + "%1 prism": [ + "%1 프리즘", + "%1 프리즘" + ], + "[Prism quote]Converts light itself into cookies.": "빛을 쿠키로 변환합니다.", + "[Prism business name]Corporate country": "기업 국가", + "[Prism business quote]You've made it to the top, and you can now buy entire nations to further your corporate greed. Godspeed.": "정상에 오른 당신은 기업의 탐욕을 위해 나라 전체를 사들일 수 있게 되었습니다. 축복이 있기를.", + "Chancemaker": "행운 제조기", + "chancemaker": "행운 제조기", + "chancemakers": "행운 제조기", + "%1 chancemaker": [ + "%1 행운 제조기", + "%1 행운 제조기" + ], + "[Chancemaker quote]Generates cookies out of thin air through sheer luck.": "순수한 행운을 통해 공중에서 쿠키를 생산합니다.", + "[Chancemaker business name]Privatized planet": "사유화 행성", + "[Chancemaker business quote]Actually, you know what's cool? A whole planet dedicated to producing, advertising, selling, and consuming your cookies.": "진짜 멋진 게 무엇인 줄 아세요? 행성 전체가 오로지 쿠키를 만들고, 광고하고 ,판매하고, 소모하는 것이죠.", + "Fractal engine": "프랙털 엔진", + "fractal engine": "프랙털 엔진", + "fractal engines": "프랙털 엔진", + "%1 fractal engine": [ + "%1 프랙털 엔진", + "%1 프랙털 엔진" + ], + "[Fractal engine quote]Turns cookies into even more cookies.": "쿠키를 더욱 많은 쿠키로 변환합니다.", + "[Fractal engine business name]Senate seat": "상원의원석", + "[Fractal engine business quote]Only through political dominion can you truly alter this world to create a brighter, more cookie-friendly future.": "진정으로 이 세계를 바꿔 더욱 밝고 쿠키 친화적인 미래를 만들 방법은 정치적 지배뿐입니다.", + "Javascript console": "자바스크립트 콘솔", + "javascript console": "자바스크립트 콘솔", + "javascript consoles": "자바스크립트 콘솔", + "%1 javascript console": [ + "%1 자바스크립트 콘솔", + "%1 자바스크립트 콘솔" + ], + "[Javascript console quote]Creates cookies from the very code this game was written in.": "이 게임을 제작할 때 쓰인 바로 그 코드를 통해 쿠키를 생성합니다.", + "[Javascript console business name]Doctrine": "신조", + "[Javascript console business quote]Taking many forms -religion, culture, philosophy- a doctrine may, when handled properly, cause a lasting impact on civilizations, reshaping minds and people and ensuring all future generations share a singular goal - the production, and acquisition, of more cookies.": "신조란 종교, 문학, 철학 등 다양한 형태로 나타납니다. 신조를 적절하게 이용하면 문명에 지속적인 영향을 끼치고 사람들과 생각을 재구성하며, 모든 미래 세대가 하나의 목표를 공유하도록 만듭니다. 바로 더 많은 쿠키를 생산하고 획득하는 것이죠.", + "Idleverse": "방치세계", + "idleverse": "방치세계", + "idleverses": "방치세계", + "%1 idleverse": [ + "%1 방치세계", + "%1 방치세계" + ], + "[Idleverse quote]There's been countless other idle universes running alongside our own. You've finally found a way to hijack their production and convert whatever they've been making into cookies!": "우리 세계의 곁에는 방치된 세계가 수없이 많이 굴러가고 있습니다. 마침내 그런 세계의 생산물을 가로채 쿠키로 변환시킬 수 있는 방법을 찾아냈습니다!", + "[Idleverse business name]Lateral expansions": "측면 확장", + "[Idleverse business quote]Sometimes the best way to keep going up is sideways. Diversify your ventures through non-cookie investments.": "가끔은 돌아가는 것이 최고의 방법입니다. 쿠키와 관련되지 않은 투자를 통해 모험을 풍부하게 만드세요.", + "Cortex baker": "피질 제과사", + "cortex baker": "피질 제과사", + "cortex bakers": "피질 제과사", + "%1 cortex baker": [ + "%1 피질 제과사", + "%1 피질 제과사" + ], + "[Cortex baker quote]These artificial brains the size of planets are capable of simply dreaming up cookies into existence. Time and space are inconsequential. Reality is arbitrary.": "행성 크기의 인공 뇌로, 간단하게 쿠키를 상상하여 현실로 구현할 수 있는 능력이 있습니다. 시간과 공간은 중요하지 않죠. 현실은 제멋대로인 것입니다.", + "[Cortex baker business name]Think tank": "싱크탱크", + "[Cortex baker business quote]There's only so many ways you can bring in more profit. Or is there? Hire the most brilliant experts in the known universe and let them scrape their brains for you!": "더 많은 수익을 얻을 수 있는 방법은 제한적입니다. 방법이 있기는 할까요? 현존하는 세계에서 가장 뛰어난 전문가들을 고용하고 두뇌를 짜내도록 하세요!", + "CpS": "/", + "cookies/click": "쿠키/클릭", + "%1 CpS": "/", + "golden cookie gains": "황금 쿠키 획득물", + "golden cookie frequency": "황금 쿠키 빈도", + "golden cookie duration": "황금 쿠키 지속 시간", + "golden cookie effect duration": "황금 쿠키 효과 지속 시간", + "wrath cookie gains": "분노 쿠키 획득물", + "wrath cookie frequency": "분노 쿠키 빈도", + "wrath cookie duration": "분노 쿠키 지속 시간", + "wrath cookie effect duration": "분노 쿠키 효과 지속 시간", + "reindeer gains": "순록 획득물", + "reindeer frequency": "순록 빈도", + "reindeer duration": "순록 지속 시간", + "random drops": "랜덤 드롭", + "milk effects": "우유 효과", + "wrinkler spawn rate": "주름벌레 출몰 속도", + "wrinkler appetite": "주름벌레 식성", + "upgrade costs": "업그레이드 가격", + "building costs": "건물 가격", + "Clicking is %1% more powerful.": "클릭이 %1% 더 강력해집니다.", + "All cookie production multiplied by %1.": "모든 쿠키 생산량이 %1배 증가합니다.", + "+%1 CpS": "CpS +%1", + "+%1% base CpS.": "기본 CpS +%1%", + "%1 are twice as efficient.": "%1의 효율이 두 배 증가합니다.", + "%1 are %2% more powerful.": "%1이(가) %2% 더 강력해집니다.", + "Unshackled! +%1% extra production.": "해방! +%1% 추가 생산.", + "Tiered upgrades for %1 provide an extra +%2% production.
Only works with unshackled upgrade tiers.": "%1 등급 업그레이드 시 추가로 +%2% 생산이 적용됩니다.
해방 업그레이드 등급에서만 적용됩니다.", + "Unshackles all %1-tier upgrades, making them more powerful.
Only applies to unshackled buildings.": "모든 %1등급 업그레이드를 해방하여 더욱 강력하게 만듭니다.
해방된 건물에만 적용됩니다.", + "The mouse and cursors are twice as efficient.": "마우스와 커서의 효율이 두 배 증가합니다.", + "The mouse and cursors gain +%1 cookies for each non-cursor building owned.": "마우스와 커서를 통해 커서와 관련되지 않은 건물 하나당 +%1의 쿠키를 획득합니다.", + "Grandmas gain +%1% CpS for each non-grandma building.": "할머니를 통해 할머니와 관련되지 않은 건물 하나당 +%1% CpS를 획득합니다.", + "You gain more CpS the more milk you have.": "우유를 많이 보유할수록 더 많은 CpS를 획득합니다.", + "Milk is %1% more powerful.": "우유가 %1% 더 강력해집니다.", + "Cookie production multiplier +%1%.": "쿠키 생산 배수 +%1%.", + "Cookie production multiplier +%1% permanently.": "영구적으로 쿠키 생산 배수 +%1%.", + "Cookie production multiplier +%1% per Santa's levels.": "산타 레벨당 쿠키 생산 배수 +%1%.", + "Cookie production multiplier +%1% for every year Cookie Clicker has existed (currently: +%2%).": "쿠키 클리커의 나이마다 쿠키 생산 배수 +%1% (현재: +%2%).", + "Cookie production multiplier +%1% for every building type level %2 or higher.": "건물 유형 레벨이 %2 이상인 건물마다 쿠키 생산 배수 +%1%", + "Clicking gains +%1% of your CpS.": "클릭 시 CpS의 +%1%를 획득합니다.", + "%1 gain +%2% CpS per %3.": "%1이(가) %3당 CpS를 +%2% 획득합니다.", + "Multiplies the gain from %1 by %2.": "%1의 획득량이 %2배 증가합니다.", + "Grandma-operated science lab and leisure club.
Grandmas are 4 times as efficient.
Regularly unlocks new upgrades.": "할머니가 운영하는 과학 실험실과 레저 클럽입니다.
할머니의 효율이 4배 증가합니다.
주기적으로 새로운 업그레이드가 잠금 해제됩니다.", + "Each %1 gains +%2 base CpS per %3.": "%1마다 %3당 기본 CpS를 +%2% 획득합니다.", + "Note: the grandmothers are growing restless. Do not encourage them.": "참고: 할머니들이 점점 평정을 잃고 있습니다. 자극하지 마세요.", + "Note: proceeding any further in scientific research may have unexpected results. You have been warned.": "참고: 과학 연구를 여기에서 더 계속하면 예상치 못한 결과가 생길 수 있습니다. 경고는 드렸습니다.", + "Note: this is a bad idea.": "참고: 좋은 생각은 아니군요.", + "Warning: purchasing this will have unexpected, and potentially undesirable results!
It's all downhill from here. You have been warned!

Purchase anyway?": "경고: 이것을 구매하면 예상치 못한, 어쩌면 반갑지 않은 결과가 생길 수도 있습니다!
. 이제 상황이 계속 나빠질 겁니다!

그래도 구매하시겠습니까?", + "Contains the wrath of the elders, at least for a while.": "장로들의 분노를 담고 있습니다. 적어도 당분간은 지속될 거예요.", + "Puts a permanent end to the elders' wrath, at the cost of %1% of your CpS.": "CpS의 %1%를 대가로 장로들의 분노를 영원히 종식시킵니다.", + "You will get %1% of your CpS back, but the grandmatriarchs will return.": "CpS의 %1%를 돌려받지만 대왕 할머니가 돌아옵니다.", + "Time remaining until pledge runs out:": "약속이 만료되기까지 남은 시간:", + "You haven't pledged to the elders yet.": "아직 장로들에게 약속을 하지 않았습니다.", + "You've pledged to the elders %1 times.": [ + "장로들에게 한 번 약속을 했습니다.", + "장로들에게 %1회 약속을 했습니다." + ], + "Research takes only 5 seconds.": "연구는 단 5초만 소요됩니다.", + "Golden cookies appear twice as often and stay twice as long.": "황금 쿠키가 두 배 자주 나타나고 두 배 오래 머무릅니다.", + "Golden cookies appear %1% more often.": "황금 쿠키가 %1% 더 자주 나타납니다.", + "Golden cookies appear %1% more often during %2.": "황금 쿠키가 during %2 동안 %1% 더 자주 나타납니다.", + "Golden cookies appear really often.": "황금 쿠키가 매우 자주 나타납니다.", + "Golden cookie effects last twice as long.": "황금 쿠키의 효과가 두 배 길게 지속됩니다.", + "Golden cookie effects last %1% longer.": "황금 쿠키의 효과가 %1% 길게 지속됩니다.", + "Golden cookies stay %1% longer.": "황금 쿠키가 %1% 길게 머무릅니다.", + "Golden cookies give %1% more cookies.": "황금 쿠키가 %1% 많은 쿠키를 제공합니다.", + "Wrath cookies give %1% more cookies.": "분노 쿠키가 %1% 많은 쿠키를 제공합니다.", + "+%1% CpS per golden cookie on-screen, multiplicative.": "화면상의 황금 쿠키 하나당 CpS가 +%1% 증가하며, 곱연산을 합니다.", + "With no buffs and no golden cookies on screen, selling your most powerful building has %1% chance to summon one.": "화면상의 황금 쿠키와 버프가 없는 상태에서 가장 강력한 건물을 판매하면 %1%의 확률로 해당 건물을 소환합니다.", + "Confers various powers to your minigames while active.
See the bottom of each minigame for more details.": "미니게임이 활성화되었을 때 다양한 능력을 부여합니다.
자세한 사항은 각 미니게임 하단을 확인하세요.", + "Elder pledges last twice as long.": "장로의 약속 효과가 두 배 길게 지속됩니다.", + "Can toggle upgrades on and off at will in the stats menu.": "통계 메뉴에서 업그레이드를 마음대로 켜거나 끌 수 있습니다.", + "You keep producing cookies even while the game is closed.": "게임 종료 시에도 계속 쿠키를 생산합니다.", + "Unlocks %1% of the potential of your prestige level.": "명성 레벨 잠재력의 %1%를 잠금 해제합니다.", + "Subsequent research will be %1 times as fast.": "후속 연구가 %1배 더 빨라집니다.", + "Wrinklers appear %1 times as fast.": "주름벌레가 %1배 더 빨리 나타납니다.", + "Wrinklers spawn much more frequently.": "주름벌레가 더 자주 출몰합니다.", + "Wrinklers explode into %1% more cookies.": "주름벌레가 %1% 더 많은 쿠키로 폭발합니다.", + "Unlocks... something.": "무언가를... 잠금 해제합니다.", + "In the festive hat, you find...": "축제 모자에서 찾아낸 것은...", + "a festive test tube
and %1.": "축제 시험관
%1.", + "Cost scales with CpS.": "비용은 CpS에 따라 달라집니다.", + "Cost scales with Santa level.": "비용은 산타 레벨에 따라 달라집니다.", + "Cost scales with how many eggs you own.": "비용은 보유한 알의 개수에 따라 달라집니다.", + "Reindeer appear %1% more often.": "순록이 %1% 더 자주 나타납니다.", + "Reindeer appear twice as frequently.": "순록이 두 배 자주 나타납니다.", + "Reindeer are twice as slow.": "순록이 두 배 느려집니다.", + "Reindeer give twice as much.": "순록 획득물이 두 배 증가합니다.", + "Buildings sell back for %1% instead of %2%.": "건물을 되팔 때 %2%가 아닌 %1%의 가격이 적용됩니다.", + "All buildings are %1% cheaper.": "모든 건물이 %1% 저렴해집니다.", + "All upgrades are %1% cheaper.": "모든 업그레이드가 %1% 저렴해집니다.", + "All buildings and upgrades are %1% cheaper.": "모든 건물 및 업그레이드가 %1% 저렴해집니다.", + "%1 are %2% more efficient and %3% cheaper.": "%1의 효율이 %2% 증가하며 %3% 저렴해집니다.", + "Cookie upgrades are %1 times cheaper.": "쿠키 업그레이드가 %1 배 저렴해집니다.", + "Random drops are %1% more common.": "랜덤 드롭이 %1% 더 흔하게 발생합니다.", + "Reindeer spawn much more frequently.": "순록이 더 자주 출몰합니다.", + "Allows you to trigger seasonal events at will, for a price.": "원할 때 대가를 치르고 시즌 이벤트를 발동할 수 있게 됩니다.", + "Triggers %1 season for the next 24 hours.
Triggering another season will cancel this one.
Cost scales with unbuffed CpS and increases with every season switch.": "다음 24시간 동안 %1 시즌을 발동합니다.
다른 시즌을 발동하면 이번 시즌은 취소됩니다.
비용은 버프가 적용되지 않은 CpS에 따라 달라지며 시즌을 변경할 때마다 증가합니다.", + "Click again to cancel season": "시즌을 취소하려면 다시 클릭하세요", + "Seasons now last forever.": "이제 시즌이 영원히 지속됩니다.", + "You haven't switched seasons this ascension yet.": "이번 계승에서 아직 시즌을 변경하지 않았습니다.", + "You've switched seasons once this ascension.": "이번 계승에서 시즌을 한 번 변경했습니다.", + "You've switched seasons %1 times this ascension.": "이번 계승에서 시즌을 %1회 변경했습니다.", + "Cookie production multiplied by 1,000.": "쿠키 생산량이 1000배 증가합니다.", + "Other eggs appear %1% more frequently.": "다른 알들이 %1% 더 자주 나타납니다.", + "Contains a lot of cookies.": "많은 쿠키를 포함하고 있습니다.", + "The egg bursts into %1 cookies!": "알이 폭발해 쿠키 %1개가 나왔습니다!", + "You found an egg!": "알을 찾았습니다!", + "Eggs drop %1% more often.": "알이 %1% 더 자주 드롭됩니다.", + "Christmas cookies drop %1% more often.": "크리스마스 쿠키가 %1% 더 자주 드롭됩니다.", + "Spooky cookies drop %1% more often.": "으스스한 쿠키가 %1% 더 자주 드롭됩니다.", + "Heart cookies are %1% more powerful.": "하트 쿠키가 %1% 더 강력해집니다.", + "You continually gain more CpS the longer you've played in the current ascension.": "현재 계승에서 오래 플레이할수록 더 많은 CpS를 계속 획득합니다.", + "Contains an assortment of fancy biscuits.": "멋진 비스킷 모듬이 포함되어 있습니다.", + "Contains an assortment of macarons.": "마카롱 모듬이 포함되어 있습니다.", + "Contains an assortment of popular biscuits.": "인기 비스킷 모듬이 포함되어 있습니다.", + "Contains an assortment of rich butter cookies.": "풍부한 버터 쿠키 모듬이 포함되어 있습니다.", + "Contains an assortment of delicious pastries.": "맛있는 패스트리 모듬이 포함되어 있습니다.", + "Contains an assortment of...something.": "무언가의...모듬이 포함되어 있습니다.", + "Placing an upgrade in this slot will make its effects permanent across all playthroughs.": "업그레이드를 이 슬롯에 배치하면 해당 효과가 플레이하는 동안 영구적으로 적용됩니다.", + "Current boost:": "현재 부스트:", + "Current:": "현재:", + "Click to activate.": "클릭하여 활성화.", + "Pick an upgrade to make permanent": "영구적으로 적용할 업그레이드를 선택하세요.", + "Here are all the upgrades you've purchased last playthrough.
Pick one to permanently gain its effects!
You can reassign this slot anytime you ascend.": "지난 플레이에서 구매한 모든 업그레이드 목록입니다.
하나를 선택해 영구적으로 효과를 획득하세요!
계승 시 언제든 해당 슬롯을 재배치할 수 있습니다.", + "You now keep making cookies while the game is closed, at the rate of %1% of your regular CpS and up to 1 hour after the game is closed.
(Beyond 1 hour, this is reduced by a further %2% - your rate goes down to %3% of your CpS.)": "이제 게임 종료 시에도 정규 CpS의 %1%의 속도로 계속 쿠키를 만들며, 게임이 종료된 후 최대 1시간까지 만듭니다.
(1시간이 지나면 추가로 %2% 감소하며, CpS의 %3%로 속도가 감소합니다.)", + "You gain another +%1% of your regular CpS while the game is closed.": "게임 종료 시 정규 CpS의 +%1%를 추가로 획득합니다.", + "You gain another +%1% of your regular CpS while the game is closed, for a total of %2%.": "게임 종료 시 정규 CpS의 +%1%를 추가로 획득하여 총 %2%를 획득합니다.", + "You start with %1.": "%1와(과) 함께 시작합니다.", + "Allows you to purchase a crumbly egg once you have earned 1 million cookies.": "쿠키 100만 개를 획득하고 나면 푸석한 알을 구매할 수 있게 됩니다.", + "Unlocks the cookie dragon egg.": "쿠키 드래곤 알을 잠금 해제합니다.", + "Synergy upgrades are %1% cheaper.": "시너지 업그레이드가 %1% 저렴해집니다.", + "You retain optimal cookie production while the game is closed for %1 more days.": "게임 종료 시 %1일 더 최적의 쿠키 생산을 유지합니다.", + "You retain optimal cookie production while the game is closed for twice as long, for a total of %1.": "게임 종료 시 두 배 더 오래, 총 %1 동안 최적의 쿠키 생산을 유지합니다.", + "Unlocks the golden switch, which passively boosts your CpS by %1% but disables golden cookies.": "황금 스위치를 잠금 해제하여 CpS를 지속적으로 %1% 증가시키지만 황금 쿠키를 비활성화합니다.", + "Turning this on will give you a passive +%1% CpS, but prevents golden cookies from spawning.
Cost is equal to 1 hour of production.": "스위치를 켜면 지속적으로 +%1% CpS를 부여하지만 황금 쿠키가 출몰하지 않습니다.
비용은 1시간 치 생산량입니다.", + "The switch is currently giving you a passive +%1% CpS; it also prevents golden cookies from spawning.
Turning it off will revert those effects.
Cost is equal to 1 hour of production.": "해당 스위치는 현재 지속적으로 +%1% CpS를 부여하고 있습니다. 또한 황금 쿠키가 출몰하지 않습니다.
스위치를 끄면 이러한 효과가 원래대로 돌아갑니다.
비용은 1시간 치 생산량입니다.", + "Unlocks the milk selector, letting you pick which milk is displayed under your cookie.
Comes with a variety of basic flavors.": "우유 선택 장치를 잠금 해제하여 쿠키 아래에 표시될 우유를 고를 수 있게 됩니다.
다양한 기본 맛이 포함되어 있습니다.", + "Contains more exotic flavors for your milk selector.": "우유 선택 장치에 낯선 맛을 더 많이 추가합니다.", + "Lets you pick what flavor of milk to display.": "화면에 표시되는 우유의 맛을 선택할 수 있게 됩니다.", + "Unlocks the golden cookie sound selector, which lets you pick whether golden cookies emit a sound when appearing or not.": "황금 쿠키 소리 선택 장치를 잠금 해제하여 황금 쿠키가 나타날 때 소리를 낼지 여부를 선택할 수 있습니다.", + "Lets you change the sound golden cookies make when they spawn.": "황금 쿠키가 출몰할 때의 소리를 변경할 수 있게 됩니다", + "No sound": "소리 없음", + "Chime": "차임벨", + "Fortune": "포춘", + "Cymbal": "심벌즈", + "Squeak": "찬스", + "Unlocks the jukebox, which allows you to play through every sound file in the game.": "주크박스가 잠금 해제되어 게임의 모든 사운드 파일을 계속 재생할 수 있게 됩니다.", + "Play through the game's sound files!": "게임의 사운드 파일을 계속 재생합니다!", + "Play": "재생", + "Stop": "중지", + "Pause": "멈춤", + "Shuffle": "셔플", + "Auto": "자동", + "Loop": "반복", + "Unlocks the background selector, letting you select the game's background.
Comes with a variety of basic flavors.": "배경 선택 장치를 잠금 해제하여 게임 배경을 선택할 수 있게 됩니다.
다양한 기본 설정이 포함되어 있습니다.", + "Lets you pick which wallpaper to display.": "어떤 벽지가 표시될지 선택할 수 있게 됩니다.", + "This is the first heavenly upgrade; it unlocks the Heavenly chips system.
Each time you ascend, the cookies you made in your past life are turned into heavenly chips and prestige.
Heavenly chips can be spent on a variety of permanent transcendental upgrades.
Your prestige level also gives you a permanent +1% CpS per level.": "첫 번째 천상 업그레이드를 진행하여 천상 칩 시스템이 잠금 해제되었습니다.
계승을 할 때마다 전생에 만든 쿠키는 천상 칩명성으로 변경됩니다.
천상 칩은 다양한 영구 초월 업그레이드를 구매하는 데 사용할 수 있습니다.
명성 레벨은 레벨당 영구적으로 +1%의 CpS를 부여합니다.", + "You can attract %1 more wrinklers.": "%1 더 많은 주름벌레가 이끌려 옵니다.", + "While the golden switch is on, you gain an additional +%1% CpS per golden cookie upgrade owned.": "황금 스위치가 켜져 있으면 보유한 황금 쿠키 업그레이드 하나당 추가로 +%1%의 CpS를 획득합니다.", + "All upgrades are %1% cheaper per %2.": "모든 업그레이드가 %2 하나당 %1% 저렴해집니다.", + "Unlocks a new tier of upgrades that affect 2 buildings at the same time.
Synergies appear once you have %1 of both buildings.": "2가지의 건물에 동시에 영향을 끼치는 새로운 등급의 업그레이드를 잠금 해제합니다.
시너지는 두 건물을 %1개씩 가지고 있으면 나타납니다.", + "Golden cookies (and all other things that spawn, such as reindeer) have %1% chance of being doubled.": "황금 쿠키(순록 등 다른 출몰 물체 포함)가 %1%의 확률로 두 배가 됩니다.", + "Cookie production reduced to 0.": "쿠키 생산량이 0으로 감소했습니다.", + "Sugar lumps coalesce a whole lot faster.": "각설탕이 아주 빠르게 모입니다.", + "+%1% prestige level effect on CpS.": "CpS에 +%1%의 명성 레벨 효과가 적용됩니다.", + "+%1% prestige level effect on CpS.
+%2% golden cookie effect duration.
+%3% golden cookie lifespan.": "CpS에 +%1%의 명성 레벨 효과가 적용됩니다.
황금 쿠키 효과 지속 시간이 +%2% 증가합니다.
황금 쿠키의 수명이 +%3% 증가합니다.", + "Each unspent sugar lump (up to %1) gives +%2% CpS.
Note: this means that spending sugar lumps will decrease your CpS until they grow back.
": "소모하지 않은 각설탕(최대 %1개)마다 +%2%의 CpS를 부여합니다.
참고: 즉, 각설탕을 소모하면 다시 자랄 때까지 CpS가 감소합니다.
", + "Once an ascension, you may use the \"Sugar frenzy\" switch to triple your CpS for 1 hour, at the cost of 1 sugar lump.": "계승을 진행한 후 1시간 동안 CpS를 세 배로 증가시키는 \"설탕 프렌지\" 스위치를 사용할 수 있습니다. 비용은 각설탕 1개입니다.", + "Each grandma (up to %1) makes sugar lumps ripen %2 sooner.": "할머니 1명당(최대 %명) 각설탕이 %2 빨리 다 자랍니다. ", + "Activating this will triple your CpS for 1 hour, at the cost of 1 sugar lump.": "활성화 시 1시간 동안 CpS가 세 배로 증가하며, 비용은 각설탕 1개입니다.", + "May only be used once per ascension.": "계승당 한 번만 사용할 수 있습니다.", + "activate the sugar frenzy": "설탕 프렌지 활성화", + "Sugar frenzy!": "설탕 프렌지!", + "CpS x%1 for 1 hour!": "1시간 동안 CpS x%1!", + "Garden plants grow every second.
Garden seeds are free to plant.
You can switch soils at any time.": "정원 식물은 1초마다 자랍니다.
정원 씨앗은 무료로 심을 수 있습니다.
토양은 언제든 변경할 수 있습니다.", + "Dropped by %1.": "%1이(가) 드롭합니다.", + "Dropped by %1 plants.": "%1 식물이 드롭합니다.", + "Must own the %1 upgrade.": "%1 업그레이드를 보유해야 합니다.", + "Sugar lumps are twice as likely to be unusual.": "각설탕이 변형될 확률이 두 배가 됩니다.", + "+%1% sugar lump growth.": "각설탕 성장 +%1%.", + "Sugar lumps ripen %1 sooner.": "각설탕이 %1 일찍 숙성됩니다.", + "Sugar lumps mature %1 sooner.": "각설탕이 %1 일찍 다 자랍니다.", + "Bifurcated sugar lumps appear %1% more often and are %2% more likely to drop 2 lumps.": "두 갈래 각설탕이 %1% 더 자주 나타나고 2개의 각설탕을 드롭할 확률이 %2% 증가합니다.", + "Mouse over a wrinkler to see how many cookies are in its stomach.": "주름벌레 위에 커서를 가져가면 주름벌레가 삼킨 쿠키의 개수를 볼 수 있습니다.", + "Unlocks the Buy all feature, which lets you instantly purchase every upgrade in your store (starting from the cheapest one).
Also unlocks the Vault, a store section where you can place upgrades you do not wish to auto-buy.": "모두 구매 기능을 잠금 해제하여 상점의 모든 업그레이드를 즉시 구매할 수 있게 됩니다(가장 저렴한 것부터 시작).
또한 자동 구매를 원하지 않는 업그레이드를 배치할 수 있는 상점 섹션인 금고를 잠금 해제합니다.", + "Mouse over an upgrade to see its tier.
Note: only some upgrades have tiers. Tiers are purely cosmetic and have no effect on gameplay.": "업그레이드 위에 커서를 가져가면 등급을 확인할 수 있습니다.
참고: 일부 업그레이드에만 등급이 있습니다. 등급은 오직 꾸미기 용도로, 게임플레이에는 영향이 없습니다.", + "You now benefit from the boost provided by heralds.
Each herald gives you +1% CpS.
Look on the purple flag at the top to see how many heralds are active at any given time.": "전령이 제공하는 부스트 혜택을 받습니다.
전령 하나당 +1%의 CpS를 부여합니다.
상단의 보라색 깃발을 통해 언제든 전령의 수를 확인할 수 있습니다.", + "Seasonal random drops have a 1/5 chance to carry over through ascensions.": "시즌 랜덤 드롭은 1/5 확률로 계승을 진행해도 유지됩니다.", + "Unlocks extra price information.
Each displayed cost now specifies how long it'll take you to afford it, and how much of your bank it represents.": "추가 가격 정보를 잠금 해제합니다.
이제 표시된 비용마다 구매까지 걸리는 시간이 명시되며, 보유량에서 어느 정도의 비중을 차지하는지를 알려줍니다.", + "Unlocks the shimmering veil, a switch that passively boosts your CpS by %1%.
You start with the veil turned on; however, it is very fragile, and clicking the big cookie or any golden cookie or reindeer will turn it off, requiring %2 of CpS to turn back on.": "CpS를 지속적으로 %1% 증가시킬 수 있는 스위치인 반짝이는 베일을 잠금 해제합니다.
베일은 켜져 있는 상태로 시작하지만 매우 손상되기 쉬워 커다란 쿠키나 황금 쿠키, 순록을 클릭하면 꺼집니다. 다시 켜기 위해서는 %2의 CpS가 필요합니다.", + "Boosts your cookie production by %1% when active.
The veil is very fragile and will break if you click the big cookie or any golden cookies or reindeer.

Once broken, turning the veil back on costs %2 of unbuffed CpS.": "활성화 시 쿠키 생산량이 %1% 증가합니다.
베일은 매우 손상되기 쉬워 커다란 쿠키나 황금 쿠키, 순록을 클릭하면 부서집니다.

깨진 베일을 다시 켜려면 버프가 적용되지 않은 CpS의 %2 가 필요합니다.", + "Has a %1% chance to not break.": "%1%의 확률로 절대 부서지지 않습니다.", + "The shimmering veil is more resistant, and has a %1% chance not to break. It also gives +%2% more CpS.": "이 빛나는 베일은 더욱 튼튼하여 %1%의 확률로 부서지지 않습니다. 또한 CpS를 +%2% 추가로 부여합니다.", + "Active.": "활성화.", + "The reinforced membrane protects the shimmering veil.": "강화막이 빛나는 베일을 보호합니다.", + "The shimmering veil disappears...": "빛나는 베일이 사라집니다...", + "Prior to purchasing the %1 upgrade in a run, random drops are %2 times more common.": "회차에서 %1 업그레이드를 구매하기 전에 랜덤 드롭이 %2배 자주 발생합니다.", + "Never forget your %1.": "%1을(를) 잊지 마세요.", + "Pay close attention to the humble %1.": "초라한 %1에게 주목하세요.", + "You've been neglecting your %1.": "%1을(를) 계속 방치하고 있습니다.", + "Remember to visit your %1 sometimes.": "가끔은 %1을(를) 찾아가도록 하세요.", + "You don't know what you have until you've lost it.": "가진 것의 소중함은 잃기 전에는 모르는 법이죠.", + "Remember to take breaks.": "가끔은 쉬어 가세요.", + "Hey, what's up. I'm a fortune cookie.": "안녕, 나는 포춘 쿠키야.", + "You think you have it bad? Look at me.": "일이 잘 안 풀려? 나를 보라고.", + "The news ticker may occasionally have fortunes, which may be clicked for something good.": "자막 뉴스에 가끔씩 운세가 등장해 클릭 시 좋은 일이 발생합니다.", + "Through clever accounting, this actually makes kitten upgrades %1% cheaper.": "영리한 계산을 통해 고양이 업그레이드가 %1% 저렴해집니다.", + "Unlocks the ability to pet your dragon by clicking on it once hatched.": "부화된 드래곤을 클릭하여 드래곤을 기를 수 있는 능력을 잠금 해제합니다.", + "Cost scales with CpS, but %1 times cheaper with a fully-trained dragon.": "비용은 CpS에 따라 달라지지만, 훈련을 마친 드래곤은 %1배 저렴해집니다.", + "Golden cookies may trigger a Dragon Harvest.": "황금 쿠키가 드래곤 수확을 발동할 수 있습니다.", + "Golden cookies may trigger a Dragonflight.": "황금 쿠키가 드래곤 비행을 발동할 수 있습니다.", + "Dragon harvest and Dragonflight are %1% stronger.": "드래곤 수확 및 드래곤 비행이 %1% 강력해집니다.", + "Kittens are %1% more effective.": "고양이의 효율이 %1% 증가합니다.", + "Each kitten upgrade boosts %1 CpS by %2%.": "고양이를 업그레이드할 때마다 %1 CpS가 %2%만큼 증가합니다.", + "Each rank of milk boosts %1 CpS by %2%.": "우유의 등급이 상승할 때마다 %1 CpS가 %2%만큼 증가합니다.", + "Cursor levels boost clicks by %1% each (up to cursor level %2).": "커서 레벨이 각 클릭의 효율을 %1% 증가시킵니다(최대 커서 레벨 %2).", + "%1 are now effective up to cursor level %2.": "커서 레벨 %2까지 %1 효과가 적용됩니다.", + "Seasonal cookies purchased: %1.": "구매한 시즌 쿠키: %1.", + "Reindeer cookies purchased: %1.": "구매한 순록 쿠키: %1.", + "Eggs purchased: %1.": "구매한 알: %1.", + "Golden and wrath cookie effect duration +%1%.": "황금 쿠키와 분노 쿠키의 효과 지속 시간 +%1%.", + "Golden and wrath cookies appear %1% more.": "황금 쿠키와 분노 쿠키가 %1% 더 많이 나타납니다.", + "Golden and wrath cookies appear %1% less.": "황금 쿠키와 분노 쿠키가 %1% 더 적게 나타납니다.", + "Buildings grant -%1% CpS.": "건물이 CpS를 -%1% 감소시킵니다.", + "Selling buildings triggers a buff boosted by how many buildings were sold.": "건물 판매 시 판매한 건물의 개수에 많을수록 커다란 버프가 발동됩니다.", + "Buff boosts clicks by +%1% for every building sold for %2 seconds.": "%2초 동안 버프가 판매한 건물 하나당 클릭의 성능을 +%1% 증가시킵니다.", + "CpS bonus fluctuating between %1 and %2 over time.": "CpS 보너스가 %1~%2 사이에서 계속 변동됩니다.", + "Effect cycles over %1 hours.": "효과가 %1시간 동안 순환합니다.", + "Some seasonal effects are boosted.": "일부 시즌 효과가 상승합니다.", + "Large boost.": "대폭 상승합니다.", + "Medium boost.": "적당히 상승합니다.", + "Small boost.": "소폭 상승합니다.", + "Switching seasons is %1% pricier.": "시즌 전환이 %1% 비싸집니다.", + "Switching seasons is %1% cheaper.": "시즌 전환이 %1% 저렴해집니다.", + "Heavenly chips have %1% less effect.": "천상 칩의 효과가 %1% 감소합니다.", + "Buildings produce %1% more.": "건물이 %1% 더 많이 생산합니다.", + "Buildings produce %1% less.": "건물이 %1% 더 적게 생산합니다.", + "All golden cookies are wrath cookies with a greater chance of a negative effect.": "모든 황금 쿠키가 분노 쿠키가 되어 부정적 효과가 발생할 확률이 증가합니다.", + "Wrinklers appear %1% faster and digest %2% more cookies.": "주름벌레가 %1% 빠르게 나타나고 쿠키를 %2% 더 많이 소화합니다.", + "Effect is only active when your total amount of buildings ends with 0.": "건물의 총 개수 끝자리가 0일 때 효과가 활성화됩니다.", + "Achievement unlocked": "업적 잠금 해제", + "Make %1 just from %2.": "%2로부터 %1을(를) 만듭니다.", + "Bake %1 in one ascension.": "한 번의 계승에서 %1을(를) 굽습니다.", + "Bake %1 per second.": "초당 %1을(를) 굽습니다.", + "Have %1.": "%1을(를) 보유합니다.", + "Ascend at least once.": "최소한 한 번 계승합니다.", + "Ascend %1 times.": "%1회 계승합니다.", + "Ascend with %1 baked.": "%1을(를) 굽고 계승합니다.", + "Make %1 by only having clicked %2 times.": "%2회만 클릭하여 %1을(를) 만듭니다.", + "Make %1 with no cookie clicks.": "쿠키를 클릭하지 않고 %1을(를) 만듭니다.", + "Get to %1 baked with no upgrades purchased.": "업그레이드를 구매하지 않고 %1을(를) 굽습니다.", + "Get to %1 baked in %2.": "%2 이내에 %1을(를) 굽습니다.", + "Make %1 from clicking.": "클릭을 통해 %1을(를) 만듭니다.", + "Sell a grandma.": "할머니를 판매합니다.", + "Have at least %1 of every building.": "모든 건물을 최소한 %1개 보유합니다.", + "Have at least 1 of the most expensive object, 2 of the second-most expensive, 4 of the next and so on (capped at %1).": "가장 비싼 물건 최소 1개, 두 번째로 비싼 물건 2개, 그 다음으로 비싼 물건 4개 등의 규칙으로 보유합니다(%1개로 제한).", + "Have at least 10 of the most expensive object, 20 of the second-most expensive, 30 of the next and so on.": "가장 비싼 물건 최소 10개, 두 번째로 비싼 물건 20개, 그 다음으로 비싼 물건 30개 등의 규칙으로 보유합니다.", + "Click a golden cookie.": "황금 쿠키를 클릭합니다.", + "Click %1.": "%1을(를) 클릭합니다.", + "Hack in some cookies.": "치트로 쿠키를 만듭니다.", + "Click really, really fast.": "정말, 정말로 빠르게 클릭합니다.", + "Have at least %1 of everything.": "모든 것을 최소한 %1개
보유합니다.", + "Own %1.": "%1을(를) 보유합니다.", + "Purchase %1.": "%1을(를) 구매합니다.", + "Dunk the cookie.": "쿠키를 우유에 빠뜨립니다.", + "Appease the grandmatriarchs at least once.": "대왕 할머니를 최소한 한 번 진정시킵니다.", + "Appease the grandmatriarchs at least %1 times.": "대왕 할머니를 최소한 %1회 진정시킵니다.", + "Declare a covenant with the grandmatriarchs.": "대왕 할머니와 계약을 체결합니다.", + "Own at least %1 grandma types.": "최소한 %1개의 할머니 유형을 보유합니다.", + "Unlock 100% of your heavenly chips power.": "천상 칩 능력의 100%를 잠금 해제합니다.", + "You have 1 chance in %1 every second of earning this achievement.": "%1초마다 이 업적을 획득할 1번의 기회가 있습니다.", + "Burst 1 wrinkler.": "주름벌레 1개를 터뜨립니다.", + "Burst %1 wrinklers.": "주름벌레 %1개를 터뜨립니다.", + "Unlock every Halloween-themed cookie.
Owning this achievement makes Halloween-themed cookies drop more frequently in future playthroughs.": "모든 핼러윈 테마 쿠키를 잠금 해제합니다.
해당 업적을 보유하고 있으면 이후 플레이 시 핼러윈 테마 쿠키가 더 자주 드롭됩니다.", + "Reach Santa's 7th form.": "산타의 7번째 형태에 도달합니다.", + "Reach Santa's final form.": "산타의 최종 형태에 도달합니다.", + "Unlock every Christmas-themed cookie.
Owning this achievement makes Christmas-themed cookies drop more frequently in future playthroughs.": "모든 크리스마스 테마 쿠키를 잠금 해제합니다.
해당 업적을 보유하고 있으면 이후 플레이 시 크리스마스 테마 쿠키가 더 자주 드롭됩니다.", + "Pop 1 reindeer.": "순록 1마리를 터뜨립니다.", + "Pop %1 reindeer.": "순록 %1마리를 터뜨립니다.", + "Pop a reindeer during an elder frenzy.": "장로 프렌지 기간 동안 순록을 터뜨립니다.", + "Unlock every Valentine-themed cookie.": "모든 밸런타인 테마 쿠키를 잠금 해제합니다.", + "Click the tiny cookie.": "작은 쿠키를 클릭합니다.", + "This is for baking %1 and making it on the local news.": "%1을(를) 구워 지역 뉴스에 실립니다.", + "Name yourself Orteil.
Note: usurpers incur a -%1% CpS penalty until they rename themselves something else.
": "자신의 이름을 Orteil로 짓습니다.
참고: 다른 이름으로 변경할 때까지 사칭한 죄로 CpS가 -%1% 감소합니다
.", + "Use an add-on.": "애드온을 이용합니다.", + "Unlock 1 egg.": "알 1개를 잠금 해제합니다.", + "Unlock %1 eggs.": "알 %1개를 잠금 해제합니다.", + "Unlock all the eggs.
Owning this achievement makes eggs drop more frequently in future playthroughs.": "모든 알을 잠금 해제합니다.
해당 업적을 보유하고 있으면 이후 플레이 시 알이 더 자주 드롭됩니다.", + "Give your bakery a name.": "제과점 이름을 짓습니다.", + "Click this achievement's slot.": "해당 업적 슬롯을 클릭합니다.", + "Complete your dragon's training.": "드래곤 훈련을 완료합니다.", + "Click on the news ticker %1 times.": "자막 뉴스를 %1회 클릭합니다.", + "Own a combined %1 %2 and %3.": "%2 %1개와 %3를 함께 보유합니다.", + "Own %1 upgrades and %2 buildings.": "%1 업그레이드와 %2 건물을 보유합니다.", + "Own %1 heavenly upgrades.": "천상 업그레이드를 %1개 보유합니다.", + "Burst the near-extinct shiny wrinkler.": "멸종 위기의 빛나는 주름벌레를 터뜨립니다.", + "Click a golden cookie less than 1 second after it spawns.": "황금 쿠키가 나타난 후 1초가 지나지 않았을 때 클릭합니다.", + "Click a golden cookie less than 1 second before it dies.": "황금 쿠키가 사라지기까지 1초 미만이 남았을 때 클릭합니다.", + "Harvest %1 coalescing sugar lumps.": "모인 각설탕 %1개를 수확합니다.", + "Successfully harvest a coalescing sugar lump before it's ripe.": "모인 각설탕이 숙성되기 전에 수확하는 데 성공합니다.", + "Harvest a bifurcated sugar lump.": "두 갈래 각설탕을 수확합니다.", + "Harvest a golden sugar lump.": "황금 각설탕을 수확합니다.", + "Harvest a meaty sugar lump.": "통통한 각설탕을 수확합니다.", + "Harvest a caramelized sugar lump.": "캐러멜이 된 각설탕을 수확합니다.", + "Reach level %1 %2.": "레벨 %1 %2에 도달합니다.", + "Cast %1 spells.": "%1 주문을 시전합니다.", + "Have %1 golden cookies simultaneously.": "동시에 %1개의 황금 쿠키를 보유합니다.", + "Manage a cookie legacy for at least a year.": "최소한 1년 동안 쿠키 유산을 관리합니다.", + "Harvest %1 mature garden plants.": "숙성된 정원 식물 %1개를 수확합니다.", + "Fill every tile of the biggest garden plot with plants.": "가장 큰 정원 부지의 모든 타일을 식물로 채웁니다.", + "Unlock every garden seed.": "모든 정원 씨앗을 잠금 해제합니다.", + "Convert a complete seed log into sugar lumps by sacrificing your garden to the sugar hornets.
Owning this achievement makes seeds %1% cheaper, plants mature %2% sooner, and plant upgrades drop %3% more.": "정원을 설탕 말벌에게 희생시켜 완성된 씨앗 일지를 각설탕으로 변환시킵니다.
해당 업적을 보유하면 씨앗이 %1% 저렴해지고, 식물이 %2% 빠르게 숙성되며, 식물 업그레이드가 %3% 더 많이 드롭됩니다.", + "Ascend with exactly %1.": "정확히 %1을(를) 달성하고 계승합니다.", + "Have your reinforced membrane protect the shimmering veil.": "강화막빛나는 베일을 보호하도록 합니다.", + "Own every fortune upgrade.
Owning this achievement makes fortunes appear twice as often; unlocked fortune upgrades also have a %1% chance to carry over after ascending.": "모든 포춘 업그레이드를 보유합니다.
해당 업적을 보유하면 운세가 두 배 더 자주 등장합니다. 잠금 해제한 포춘 업그레이드는 %1%의 확률로 계승 이후에도 유지됩니다.", + "Make your first stock market profit.": "주식 시장 수익을 처음 획득합니다.", + "Own at least %1 of a stock market good.": "최소한 %1개의 주식 시장 상품을 보유합니다.", + "Own at least %1 of every stock market good.": "최소한 %1개의 모든 주식 시장 상품을 보유합니다.", + "Make a day of CpS ($%1) in 1 stock market sale.": "주식 시장 판매 1번으로 하루 치의 CpS($%1)를 획득합니다.", + "Spend a day of CpS ($%1) in 1 stock market purchase.": "주식 시장 구매 1번으로 하루 치의 CpS($%1)를 소모합니다.", + "Have your stock market profits surpass a whole year of CpS ($%1).": "주식 시장 수익이 1년 치 CpS 수익을 초과합니다.", + "Unlock the highest-tier stock market headquarters.": "가장 높은 등급의 주식 시장 본부를 잠금 해제합니다.", + "Have your stock market profits surpass $%1.": "주식 시장 수익이 $%1을(를) 초과합니다.", + "Own %1 kitten upgrades.": "고양이 업그레이드 %1개를 보유합니다.", + "Find the forgotten madeleine.": "잊혀진 마들렌을 찾습니다.", + "Click one of Santa's helper grandmas during Christmas season.": "크리스마스 시즌 동안 산타의 조수 중 하나를 클릭합니다.", + "Frenzy": "프렌지", + "Elder frenzy": "장로 프렌지", + "Click frenzy": "클릭 프렌지", + "Clot": "응고", + "Dragon Harvest": "드래곤 수확", + "Everything must go": "전체 품목 할인", + "Cursed finger": "저주받은 손가락", + "Cookie storm": "쿠키 폭풍", + "Sugar blessing": "설탕의 축복", + "Haggler's luck": "흥정꾼의 행운", + "Haggler's misery": "흥정꾼의 고통", + "Crafty pixies": "건설 요정", + "Nasty goblins": "못된 고블린", + "Magic adept": "마법 숙련", + "Magic inept": "마법 미숙", + "Devastation": "황폐화", + "Sugar frenzy": "설탕 프렌지", + "Loan %1": "%1 대출", + "Loan %1 (interest)": "%1 대출 (이자)", + "%1 Power!": "%1 성능!", + "%1 Burden!": "%1 부담!", + "Cookie production x%1 for %2!": "%2 동안 쿠키 생산량 x%1!", + "Cookie production +%1% for %2!": "%2 동안 쿠키 생산량 +%1%!", + "Cookie production %1% slower for %2!": "%2 동안 쿠키 생산 %1% 감속!", + "Cookie production halved for %1!": "%1 동안 쿠키 생산 절반으로 감소!", + "Your %1 are boosting your CpS!": "%1로 인해 CpS가 증가했습니다!", + "Your %1 are rusting your CpS!": "%1로 인해 CpS가 감소했습니다!", + "All buildings are %1% cheaper for %2!": "모든 건물이 %2 동안 %1% 저렴해집니다!", + "All buildings are %1% pricier for %2!": "모든 건물이 %2 동안 %1% 비싸집니다!", + "All upgrades are %1% cheaper for %2!": "모든 업그레이드가 %2 동안 %1% 저렴해집니다.", + "All upgrades are %1% pricier for %2!": "모든 업그레이드가 %2 동안 %1% 비싸집니다.", + "Cookie production halted for %1,
but each click is worth %2 of CpS.": "쿠키 생산이 %1 동안 중단되었으나,
클릭할 때마다 %2 CpS에 해당하는 쿠키를 획득합니다.", + "Clicking power x%1 for %2!": "%2 동안 클릭 성능 x%1!", + "Clicking power +%1% for %2!": "%2 동안 클릭 성능 +%1%!", + "Cookies everywhere!": "사방에 쿠키가 가득합니다!", + "You find %1% more golden cookies for the next %2.": "다음 %2 동안 황금 쿠키를 %1% 더 많이 찾을 수 있습니다.", + "Spells backfire %1 times less for %2.": "%2 동안 주문 역효과가 %1배 더 적게 발생합니다.", + "Spells backfire %1 times more for %2.": "%2 동안 주문 역효과가 %1배 더 많이 발생합니다.", + "can be done once every %1": "%1마다 실행할 수 있습니다", + "usable again in %1": "% 이내에 다시 사용 가능", + "+%1/s": "+%1/초", + "Next tick in %1.": "%1 이내에 다음 실행", + "Initializing...": "초기 설정 중...", + "View %1": "%1 조회", + "Close %1": "%1 닫기", + "Details:": "상세:", + "Effects:": "효과:", + "Effect is active.": "효과가 활성화되었습니다.", + "Effect is inactive.": "효과가 비활성화되었습니다.", + "Current bonus:": "현재 보너스:", + "Garden": "정원", + "Baker's wheat": "제과사의 밀", + "[Baker's wheat quote]A plentiful crop whose hardy grain is used to make flour for pastries.": "풍부한 내한성 곡물로, 패스트리용 밀가루를 만들 때 사용합니다.", + "Thumbcorn": "손가락옥수수", + "[Thumbcorn quote]A strangely-shaped variant of corn. The amount of strands that can sprout from one seed is usually in the single digits.": "기묘한 모양의 옥수수 품종입니다. 보통 한 개의 씨앗에서 뻗어나갈 수 있는 가지의 개수가 10개 이하입니다.", + "Cronerice": "노파벼", + "[Cronerice quote]Not only does this wrinkly bulb look nothing like rice, it's not even related to it either; its closest extant relative is the weeping willow.": "주름진 구근은 전혀 벼처럼 보이지 않고, 벼의 친척도 아닙니다. 이 식물과 가장 가까운 것은 수양버들입니다.", + "Gildmillet": "금빛수수", + "[Gildmillet quote]An ancient staple crop, famed for its golden sheen. Was once used to bake birthday cakes for kings and queens of old.": "빛나는 광택으로 유명한 고대의 주요 작물입니다. 옛날에 왕과 여왕의 생일 케이크를 구울 때 사용했습니다.", + "Ordinary clover": "일반 클로버", + "[Ordinary clover quote]Trifolium repens, a fairly mundane variety of clover with a tendency to produce four leaves. Such instances are considered lucky by some.": "토끼풀은 간혹 네 잎으로 발견되곤 하는 꽤나 평범한 품종의 클로버입니다. 이러한 일을 행운이라고 여기는 사람들도 있죠.", + "Golden clover": "황금 클로버", + "[Golden clover quote]A variant of the ordinary clover that traded its chlorophyll for pure organic gold. Tragically short-lived, this herb is an evolutionary dead-end - but at least it looks pretty.": "일반 클로버의 변종으로, 유기체의 엽록소가 순수한 금색으로 변했습니다. 안타깝게도 수명이 짧고 진화의 측면에서는 장래성이 없습니다. 그래도 예쁘기는 합니다.", + "Shimmerlily": "반짝이백합", + "[Shimmerlily quote]These little flowers are easiest to find at dawn, as the sunlight refracting in dew drops draws attention to their pure-white petals.": "이 작은 꽃들은 새벽에 가장 찾기 쉬운데, 햇빛이 이슬에 반사될 때 순백색 꽃잎이 이목을 사로잡기 때문입니다.", + "Elderwort": "고대맥아", + "[Elderwort quote]A very old, long-forgotten subspecies of edelweiss that emits a strange, heady scent. There is some anecdotal evidence that these do not undergo molecular aging.": "오래 전에 잊혀진 에델바이스의 하위종으로 낯설고 자극적인 향을 풍깁니다. 고대맥아는 분자 단위에서 노화가 없다는 사례 증거가 있습니다.", + "Bakeberry": "빵베리", + "[Bakeberry quote]A favorite among cooks, this large berry has a crunchy brown exterior and a creamy red center. Excellent in pies or chicken stews.": "요리사들이 가장 좋아하는 재료인 커다란 베리입니다. 밖은 바삭한 갈색이고 중심부는 크림빛이 감도는 빨간색입니다. 파이나 치킨 스튜와 잘 어울립니다.", + "Chocoroot": "초코뿌리", + "[Chocoroot quote]A tangly bramble coated in a sticky, sweet substance. Unknown genetic ancestry. Children often pick these from fields as-is as a snack.": "끈적거리고 달콤한 물질로 덮인 블랙베리 덩굴입니다. 유전적 조상은 알려지지 않았습니다. 아이들은 마치 간식처럼 초코뿌리를 들판에서 집어먹곤 합니다.", + "White chocoroot": "흰색 초코뿌리", + "[White chocoroot quote]A pale, even sweeter variant of the chocoroot. Often impedes travelers with its twisty branches.": "하얗고 더욱 달콤한 초코뿌리 변종입니다. 구불거리는 가지로 종종 여행자들을 방해합니다.", + "White mildew": "흰색 곰팡이", + "[White mildew quote]A common rot that infests shady plots of earth. Grows in little creamy capsules. Smells sweet, but sadly wilts quickly.": "지구의 그늘진 장소를 뒤덮은 흔한 곰팡이입니다. 작은 크림색 캡슐 형태로 자랍니다. 달콤한 향이 나지만, 안타깝게도 빠르게 시듭니다.", + "Brown mold": "갈색 곰팡이", + "[Brown mold quote]A common rot that infests shady plots of earth. Grows in odd reddish clumps. Smells bitter, but thankfully wilts quickly.": "지구의 그늘진 장소를 뒤덮은 흔한 곰팡이입니다. 기묘한 붉은빛 덤불 모양으로 자랍니다. 쌉쌀한 향이 나지만, 다행히도 빠르게 시듭니다.", + "Meddleweed": "잔소리잡초", + "[Meddleweed quote]The sign of a neglected farmland, this annoying weed spawns from unused dirt and may sometimes spread to other plants, killing them in the process.": "농지가 방치되어 있다는 징후로서, 경작에 쓰이지 않은 흙에서 자라는 짜증스러운 잡초입니다. 가끔은 다른 식물 쪽으로 퍼지는데, 그 과정에서 식물들이 죽습니다.", + "Whiskerbloom": "수염꽃", + "[Whiskerbloom quote]Squeezing the translucent pods makes them excrete a milky liquid, while producing a faint squeak akin to a cat's meow.": "투명한 꼬투리를 짜면 우유 같은 액체가 분비되고 고양이의 울음소리를 닮은 소리가 납니다.", + "Chimerose": "차임종장미", + "[Chimerose quote]Originating in the greener flanks of polar mountains, this beautiful flower with golden accents is fragrant enough to make any room feel a little bit more festive.": "극지 산의 녹지대에서 자라나 황금빛이 두드러지는 아름다운 꽃으로, 어떤 방이든 축제 분위기를 낼 수 있는 향기를 가지고 있습니다.", + "Nursetulip": "간호사튤립", + "[Nursetulip quote]This flower grows an intricate root network that distributes nutrients throughout the surrounding soil. The reason for this seemingly altruistic behavior is still unknown.": "이 꽃은 복잡한 뿌리가 망처럼 자라나 주변의 토양에 영양분을 공급합니다. 이렇게 이타적으로 보이는 행위를 하는 이유는 아직도 밝혀지지 않았습니다.", + "Drowsyfern": "잠고사리", + "[Drowsyfern quote]Traditionally used to brew a tea that guarantees a good night of sleep.": "전통적으로 편안한 잠을 보장하는 차를 끓이는 데 사용되었습니다.", + "Wardlichen": "파수꾼이끼", + "[Wardlichen quote]The metallic stench that emanates from this organism has been known to keep insects and slugs away.": "이 유기체가 뿜어내는 금속성 악취는 해충과 민달팽이를 쫓아내는 것으로 알려져 있습니다.", + "Keenmoss": "탐정이끼", + "[Keenmoss quote]Fuzzy to the touch and of a vibrant green. In plant symbolism, keenmoss is associated with good luck for finding lost objects.": "부드러운 감촉에 강렬한 녹색을 띕니다. 식물 상징주의에서 탐정이끼는 잃어버린 물건을 발견하는 행운과 관련이 있습니다.", + "Queenbeet": "여왕비트", + "[Queenbeet quote]A delicious taproot used to prepare high-grade white sugar. Entire countries once went to war over these.": "고급 백설탕을 만드는 데 쓰이는 맛있는 뿌리입니다. 한때 모든 나라가 이것들을 얻으려고 전쟁을 벌였죠.", + "Juicy queenbeet": "촉촉한 여왕비트", + "[Juicy queenbeet quote]A delicious taproot used to prepare high-grade white sugar. Entire countries once went to war over these.
It looks like this one has grown especially sweeter and juicier from growing in close proximity to other queenbeets.": "고급 백설탕을 만드는 데 쓰이는 맛있는 뿌리입니다. 한때 모든 나라가 이것들을 얻으려고 전쟁을 벌였죠.
이 여왕비트는 다른 여왕비트 주변에서 자라 특히 더 달콤하고 촉촉한 것 같습니다.", + "Duketater": "공작감자", + "[Duketater quote]A rare, rich-tasting tuber fit for a whole meal, as long as its strict harvesting schedule is respected. Its starch has fascinating baking properties.": "통밀에 어울리는 희귀하고 맛이 진한 덩이줄기 식물입니다. 까다로운 수확 일정을 맞추기만 한다면 말이죠. 이 감자 전분은 매력적인 제빵성을 가지고 있습니다.", + "Crumbspore": "부스러기포자", + "[Crumbspore quote]An archaic mold that spreads its spores to the surrounding dirt through simple pod explosion.": "간단히 주머니를 터뜨려 주변의 흙으로 포자를 퍼뜨리는 고대의 곰팡이균입니다.", + "Doughshroom": "반죽버섯", + "[Doughshroom quote]Jammed full of warm spores; some forest walkers often describe the smell as similar to passing by a bakery.": "따뜻한 포자로 가득 차 있습니다. 숲의 여행자들은 이 냄새가 제과점 근처를 지나가는 것과 비슷하다고 묘사하곤 합니다.", + "Glovemorel": "장갑곰보버섯", + "[Glovemorel quote]Touching its waxy skin reveals that the interior is hollow and uncomfortably squishy.": "매끈한 표면을 만지면 텅 비고 불쾌하도록 질척한 내부가 드러납니다.", + "Cheapcap": "칩캡", + "[Cheapcap quote]Small, tough, and good in omelettes. Some historians propose that the heads of dried cheapcaps were once used as currency in some bronze age societies.": "작고 거칠거칠하며 오믈렛에 잘 어울립니다. 어떤 역사학자들은 말린 칩캡의 머리 부분이 일부 청동기 사회에서 화폐로 사용되었다고 주장합니다.", + "Fool's bolete": "골탕그물버섯", + "[Fool's bolete quote]Named for its ability to fool mushroom pickers. The fool's bolete is not actually poisonous, it's just extremely bland.": "버섯 채집가들을 골탕 먹이기 때문에 붙은 이름입니다. 골탕그물버섯은 사실 독성이 없고, 극도로 밍밍할 뿐입니다.", + "Wrinklegill": "주름아가미", + "[Wrinklegill quote]This mushroom's odor resembles that of a well-done steak, and is said to whet the appetite - making one's stomach start gurgling within seconds.": "이 버섯의 냄새는 웰던 스테이크와 비슷하며 식욕을 돋워 금세 배가 꼬르륵거리기 시작한다고 합니다.", + "Green rot": "녹색 곰팡이", + "[Green rot quote]This short-lived mold is also known as \"emerald pebbles\", and is considered by some as a pseudo-gem that symbolizes good fortune.": "\"에메랄드 자갈\"이라고도 알려진 수명이 짧은 곰팡이입니다. 또한 행운을 상징하는 모조 보석으로도 여겨집니다.", + "Shriekbulb": "비명구근", + "[Shriekbulb quote]A nasty vegetable with a dreadful quirk : its flesh resonates with a high-pitched howl whenever it is hit at the right angle by sunlight, moonlight, or even a slight breeze.": "무시무시한 기벽이 있는 위험한 채소입니다. 과육에 햇빛, 달빛, 심지어 약간의 산들바람만 스쳐도 찢어지는 비명 소리가 울려 퍼집니다.", + "Tidygrass": "난쟁이잔디", + "[Tidygrass quote]The molecules this grass emits are a natural weedkiller. Its stems grow following a predictable pattern, making it an interesting -if expensive- choice for a lawn grass.": "이 잔디가 방출하는 분자는 천연 제초제입니다. 예상할 수 있는 패턴을 따라 줄기가 자라기 때문에 잔디밭을 만들기에 좋은 선택이 될 수 있습니다. 비쌀 수도 있겠지만요.", + "Everdaisy": "영원데이지", + "[Everdaisy quote]While promoted by some as a superfood owing to its association with longevity and intriguing geometry, this elusive flower is actually mildly toxic.": "긴 수명과 흥미로운 구조 덕분에 몸에 좋은 음식이라고 홍보되지만, 눈에 잘 띄지 않는 꽃에 가벼운 독성이 있습니다.", + "Ichorpuff": "이코르먼지버섯", + "[Ichorpuff quote]This puffball mushroom contains sugary spores, but it never seems to mature to bursting on its own. Surrounding plants under its influence have a very slow metabolism, reducing their effects but lengthening their lifespan.": "이 먼지버섯에는 달콤한 포자가 들어 있으나, 숙성하여 스스로 터뜨리지는 못하는 것 같습니다. 이 버섯의 영향을 받는 주변의 식물들은 물질대사가 매우 느려져 효과가 감소하지만, 수명도 늘어납니다.", + "Garden information": "정원 정보", + "Your garden is frozen, providing no effects.": "정원이 얼어붙어 효과를 제공하지 않습니다.", + "Combined effects of all your plants:": "모든 식물의 결합 효과:", + "None.": "없음.", + "-You can cross-breed plants by planting them close to each other; new plants will grow in the empty tiles next to them.
-Unlock new seeds by harvesting mature plants.
-When you ascend, your garden plants are reset, but you keep all the seeds you've unlocked.
-Your garden has no effect and does not grow while the game is closed.": "-식물을 서로 가까운 곳에 심으면 이종 교배가 가능하며, 새로운 식물이 근처의 빈 타일에서 자라나게 됩니다.
-숙성된 식물을 수확하여 새로운 씨앗을 잠금 해제하세요.
-계승 시 정원 식물은 초기화되지만 잠금 해제한 씨앗은 모두 유지됩니다.
-게임을 종료한 동안 정원은 효과가 없어지며 성장하지 않습니다.", + "Harvest all": "모두 수확", + "Instantly harvest all plants in your garden.": "정원의 모든 식물을 바로 수확합니다.", + "%1 to harvest only mature, mortal plants.": "%1(으)로 수명 제한이 있는 숙성된 식물만 수확합니다. ", + "%1 to harvest all mature plants of this type.": "%1(으)로 해당 유형의 모든 숙성된 식물을 수확합니다.", + "Freeze": "동결", + "Cryogenically preserve your garden.
Plants no longer grow, spread or die; they provide no benefits.
Soil cannot be changed.
Using this will effectively pause your garden.": "극저온으로 정원을 보존합니다.
식물이 더는 자라거나, 퍼지거나, 죽지 않으며 혜택을 제공하지 않습니다.
토양을 변경할 수 없습니다.
이 기능을 사용하면 효과적으로 정원을 멈출 수 있습니다.", + "Garden is frozen. Unfreeze to resume.": "정원이 얼어붙었습니다. 다시 시작하려면 동결을 해제하세요.", + "Sacrifice garden": "정원 희생", + "A swarm of sugar hornets comes down on your garden, destroying every plant as well as every seed you've unlocked - leaving only a %1 seed.
In exchange, they will grant you %2.
This action is only available with a complete seed log.": "설탕 말벌 떼가 정원을 습격하여 모든 식물과 잠금 해제한 모든 씨앗을 파괴했으며, 남은 것은 %1 씨앗뿐입니다.
대신 %2을(를) 획득했습니다.
이 행동은 완성된 씨앗 일지가 있을 때만 사용 가능합니다.", + "Do you REALLY want to sacrifice your garden to the sugar hornets?
You will be left with an empty plot and only the %1 seed unlocked.
In return, you will gain %2 sugar lumps.
": "정말 설탕 말벌에게 정원을 바치겠습니까?
텅 빈 부지와 잠금 해제된 %1 씨앗만이 남게 됩니다.
대신 각설탕 %2개를 획득합니다.", + "Sacrifice!": "희생!", + "You've sacrificed your garden to the sugar hornets, destroying your crops and your knowledge of seeds.
In the remains, you find %1 sugar lumps.": "정원을 설탕 말벌에게 바쳐 작물과 씨앗에 대한 지식이 파괴되었습니다.
잔해 속에서 각설탕 %1개를 찾았습니다.", + "immortal": "불사", + "predictable growth": "예상 가능한 성장", + "surrounding plants (%1x%1) age %2% faster": "주위 식물(%1x%1)이 %2% 빠르게 나이를 먹습니다", + "surrounding plants (%1x%1) age %2% slower": "주위 식물(%1x%1)이 %2% 느리게 나이를 먹습니다", + "surrounding plants (%1x%1) are %2% more efficient": "주위 식물(%1x%1)의 효과가 %2% 증가합니다", + "surrounding plants (%1x%1) are %2% less efficient": "주위 식물(%1x%1)의 효과가 %2% 감소합니다", + "surrounding tiles (%1x%1) develop no weeds or fungus": "주위 타일(%1x%1)에 잡초나 균류가 자라지 않습니다", + "harvest when mature for +%1 of CpS (max. %2% of bank)": "숙성된 후 수확 시 %1의 CpS (최대 보유량의 %2%)", + "harvest when mature for a sugar lump": "숙성된 후 수확 시 각설탕 1개", + "useless": "쓸모 없음", + "spreads easily": "쉽게 퍼짐", + "may spread as %1": "%1(으)로 퍼질 수 있음", + "grows in empty tiles": "빈 타일에서 자람", + "may overtake nearby plants": "근처의 식물을 공격할 수 있음", + "may sometimes drop spores when uprooted": "뿌리가 뽑히면 간혹 포자를 드롭할 수 있음", + "explodes into up to %1 of CpS at the end of its lifecycle (max. %2% of bank)": "수명이 끝날 때 최대 %1의 CpS를 폭발시킴 (최대 보유량의 %2%)", + "cannot handle cold climates; %1% chance to die when frozen": "추운 기후에 대처할 수 없어 동결 시 %1%의 확률로 죽음", + "the unfortunate result of some plant combinations": "일부 식물의 조합으로 생긴 불운한 결과", + "Soil unlocked at %1 farms.": "%1 농장에서 토양이 잠금 해제되었습니다.", + "Your field is currently using this soil.": "현재 밭에서 해당 토양을 사용하고 있습니다.", + "You will be able to change your soil again in %1.": "%1 이내에 다시 토양을 변경할 수 있습니다.", + "Click to use this type of soil for your whole field.": "밭 전체에서 해당 유형의 토양을 사용하려면 클릭하세요.", + "Dirt": "흙", + "Simple, regular old dirt that you'd find in nature.": "자연에서 찾을 수 있는 간단하고 일반적이며 오래된 흙입니다.", + "Fertilizer": "비료", + "Soil with a healthy helping of fresh manure. Plants grow faster but are less efficient.": "신선한 거름으로 영양을 보충한 토양입니다. 식물이 빨리 자라지만 효과가 떨어집니다.", + "Clay": "점토", + "Rich soil with very good water retention. Plants grow slower but are more efficient.": "물이 많이 함유된 풍요로운 토양입니다. 식물이 느리게 자라지만 효과가 증가합니다.", + "Pebbles": "자갈", + "Dry soil made of small rocks tightly packed together. Not very conducive to plant health, but whatever falls off your crops will be easy to retrieve.
Useful if you're one of those farmers who just want to find new seeds without having to tend their garden too much.": "작은 돌들이 밀집되어 생긴 건조한 토양입니다. 식물을 건강하게 키우기에는 부적절해도, 작물이 어디에 떨어지든 회수하기 쉽습니다.
정원을 너무 많이 돌보지 않고도 새로운 씨앗을 발견하고 싶은 농부들에게 유용합니다.", + "Wood chips": "나무 칩", + "Soil made of bits and pieces of bark and sawdust. Helpful for young sprouts to develop, not so much for mature plants.": "나무껍질과 톱밥 조각으로 만든 토양입니다. 어린 새싹이 자라기에는 좋지만, 숙성된 식물에는 별로 좋지 안습니다.", + "tick every %1": "%1마다 실행", + "passive plant effects": "식물 지속 효과", + "weed growth": "잡초 성장", + "%1% chance of collecting seeds automatically when plants expire": "%1%의 확률로 식물이 만료되면 자동으로 씨앗을 수집합니다", + "plants spread and mutate %1 times more": "식물이 %1 더 많이 퍼지고 변이됩니다", + "Plant effects:": "식물 효과:", + "Possible mutations:": "가능한 변이:", + "Average lifespan:": "평균 수명:", + "Average maturation:": "평균 숙성 기간:", + "Mature in about %1": "숙성까지 대략 %1", + "Decays in about %1": "부패까지 대략 %1", + "Does not decay": "부패하지 않음", + "%1 tick": [ + "%1 실행 간격", + "%1 실행 간격" + ], + "Weed": "잡초", + "Fungus": "균류", + "Planting cost:": "심기 비용:", + "%1 of CpS,
minimum %2": "CpS의 %1,
최소 %2", + "%1 seed": "%1 씨앗", + "Click to select this seed for planting.": "해당 씨앗을 선택해 심으려면 클릭하세요.", + "This seed cannot be planted.": "해당 씨앗은 심을 수 없습니다.", + "Empty tile": "빈 타일", + "This tile of soil is empty.
Pick a seed and plant something!": "이 토양의 타일은 비어 있습니다.
씨앗을 선택해 무언가를 심으세요!", + "Click to plant %1 for %2.": "클릭하여 %2(으)로 %1을(를) 심으세요.", + "%1 to plant multiple.": "%1(으)로 여러 개를 심으세요.", + "Aging multiplier:": "나이 배수:", + "Effect multiplier:": "효과 배수:", + "Weeds/fungus repellent:": "잡초/균류 저항성:", + "This plant is growing here.": "해당 식물이 이곳에서 자라고 있습니다.", + "Stage:": "스테이지:", + "bud": "새싹", + "sprout": "성장", + "bloom": "개화", + "mature": "숙성", + "may reproduce, will drop seed when harvested": "번식이 가능하며 수확 시 씨앗을 드롭합니다", + "Click to harvest.": "클릭하여 수확하세요.", + "Click to unearth.": "클릭하여 파내세요.", + "Click to refill your soil timer and trigger 1 plant growth tick with x%1 spread and mutation rate for %2.": "토양 타이머를 재충전하며, %2(으)로 퍼뜨리기 및 변이 확률이 x%1 증가하고 1 식물 성장 실행 간격을 발동합니다.", + "Unlocked %1 seed.": "%1 씨앗이 잠금 해제되었습니다.", + "Seeds": "씨앗", + "Tools": "도구", + "Mature plants harvested: %1 (total: %2)": "수확한 숙성 식물: %1 (합계: %2)", + "Plot size: %1
(Upgrades with farm level)": "부지 크기: %1
(농장 레벨에 따라 업그레이드)", + "Garden plants age and mutate %1% faster.": "정원 식물이 %1% 더 빠르게 나이를 먹고 변이됩니다.", + "while plant is alive; scales with plant growth": "식물이 살아있는 동안 식물의 성장에 따라 변경됩니다", + "Dungeon": "던전", + "Grimoire": "마법서", + "This is your magic meter. Each spell costs magic to use.
Your maximum amount of magic varies depending on your amount of Wizard towers, and their level.
Magic refills over time. The lower your magic meter, the slower it refills.": "이것은 마법 미터기입니다. 각 주문을 사용하려면 마법이 필요합니다.
마법의 최대량은 마법사의 탑의 수와 레벨에 따라 달라집니다.
마법은 시간이 지나며 재충전됩니다. 마법 미터기가 낮을수록 재충전 속도가 느려집니다.", + "Spells cast: %1 (total: %2)": "주문 시전: %1 (총: %2)", + "Magic cost:": "마법 비용:", + "Chance to backfire:": "역효과 확률:", + "Effect:": "효과:", + "Backfire:": "역효과:", + "Backfire!": "역효과!", + "%1 magic": "%1 마법", + "+%1% of max magic": "최대 마법의 +%1%", + "Click to refill %1 units of your magic meter for %2.": "%2(으)로 마법 미터기의 %1 유닛을 충전하려면 클릭하세요.", + "Grimoire spells are %1% cheaper but fail %1% more.": "마법서 주문이 %1% 저렴해지지만 %1% 더 많이 실패합니다.", + "Conjure Baked Goods": "제과 마법", + "Summon half an hour worth of your CpS, capped at %1% of your cookies owned.": "30분 치 CpS를 소환하며, 보유한 쿠키의 %1%로 제한됩니다.", + "Trigger a %1-minute clot and lose %1 minutes of CpS.": "%1분 동안의 응고를 발동하고 %1분 치 CpS가 손실됩니다.", + "You magic %1 out of thin air.": "공중에서 마법으로 %1을(를) 소환합니다.", + "Summoning failed!": "소환 실패!", + "Force the Hand of Fate": "운명의 손을 움직이다", + "Summon a random golden cookie. Each existing golden cookie makes this spell +%1% more likely to backfire.": "랜덤 황금 쿠키를 소환합니다. 기존의 황금 쿠키 하나당 해당 주문이 역효과를 일으킬 확률이 +%1% 상승합니다.", + "Summon an unlucky wrath cookie.": "불운의 분노 쿠키를 소환합니다.", + "Promising fate!": "창창한 운명!", + "Sinister fate!": "불길한 운명!", + "Stretch Time": "시간 연장", + "All active buffs gain %1% more time (up to %2 more minutes).": "모든 활성화 버프가 %1% 연장됩니다(최대 %2분 연장).", + "All active buffs are shortened by %1% (up to %2 minutes shorter).": "모든 활성화 버프가 %1% 단축됩니다(최대 %2분 단축).", + "No buffs to alter!": "변경할 버프 없음!", + "Zap! Buffs lengthened.": "휙! 버프가 길어졌습니다.", + "Fizz! Buffs shortened.": "파직! 버프가 짧아졌습니다.", + "Spontaneous Edifice": "자발적 체계", + "The spell picks a random building you could afford if you had twice your current cookies, and gives it to you for free. The building selected must be under %1, and cannot be your most-built one (unless it is your only one).": "이 주문은 현재 쿠키의 두 배 가치를 가진 건물을 무작위로 골라 무료로 제공합니다. 선택된 건물은 %1개 미만이어야 하며, 가장 많이 지은 건물이 아니어야 합니다(유일한 건물인 경우 제외).", + "Lose a random building.": "무작위로 건물 하나가 손실됩니다.", + "No buildings to improve!": "향상할 건물이 없습니다!", + "Backfired, but no buildings to destroy!": "역효과가 발생했으나 파괴될 건물이 없습니다!", + "A new %1
bursts out of the ground.": "새로운 %1이(가)
땅에서 튀어나왔습니다.", + "One of your %1
disappears in a puff of smoke.": "%1
중 하나가 연기 구름 속으로 사라졌습니다.", + "Haggler's Charm": "흥정꾼의 매력", + "Upgrades are %1% cheaper for 1 minute.": "1분 동안 업그레이드가 %1% 저렴해집니다.", + "Upgrades are %1% more expensive for an hour.": "1시간 동안 업그레이드가 %1% 비싸집니다.", + "Upgrades are cheaper!": "업그레이드가 저렴해집니다!", + "Upgrades are pricier!": "업그레이드가 비싸집니다!", + "Summon Crafty Pixies": "건설 요정 소환", + "Buildings are %1% cheaper for 1 minute.": "1분 동안 건물이 %1% 저렴해집니다.", + "Buildings are %1% more expensive for an hour.": "1시간 동안 건물이 %1% 비싸집니다.", + "Buildings are cheaper!": "건물이 저렴해집니다!", + "Buildings are pricier!": "건물이 비싸집니다!", + "Gambler's Fever Dream": "도박꾼의 열에 들뜬 꿈", + "Cast a random spell at half the magic cost, with twice the chance of backfiring.": "절반의 마법 비용으로 무작위 주문을 시전하지만, 역효과 확률이 두 배입니다.", + "No eligible spells!": "적합한 주문이 없습니다!", + "That's too bad!
Magic refunded.": "안타깝군요!
마법을 돌려받았습니다.", + "Casting %1
for %2 magic...": "%2 마법으로
%1을(를) 시전합니다...", + "Resurrect Abomination": "이물 부활", + "Instantly summon a wrinkler if conditions are fulfilled.": "조건이 충족되었다면 즉시 주름벌레를 소환합니다.", + "Pop one of your wrinklers.": "주름벌레 한 마리를 터뜨립니다.", + "Unable to spawn a wrinkler!": "주름벌레를 소환할 수 없습니다!", + "Rise, my precious!": "일어나라, 내 보물!", + "But no wrinkler was harmed.": "피해를 받은 주름벌레가 없습니다.", + "So long, ugly...": "안녕이다, 추잡한 녀석...", + "Diminish Ineptitude": "미숙함 감소", + "Spells backfire %1 times less for the next %2 minutes.": "다음 %2분 동안 주문 역효과가 %1배 더 적게 발생합니다.", + "Spells backfire %1 times more for the next %2 minutes.": "다음 %2분 동안 주문 역효과가 %1배 더 많이 발생합니다.", + "Ineptitude diminished!": "미숙함 감소!", + "Ineptitude magnified!": "미숙함 증폭!", + "Pantheon": "만신전", + "[GOD 1 NAME]Holobore, Spirit of Asceticism": "금욕의 정령 홀로보어", + "[GOD 1 QUOTE]An immortal life spent focusing on the inner self, away from the distractions of material wealth.": "물질적 풍요의 방해로부터 벗어나 자신의 내면에 집중하며 영원히 살아갑니다.", + "[GOD 2 NAME]Vomitrax, Spirit of Decadence": "퇴폐의 정령 보미트락스", + "[GOD 2 QUOTE]This sleazy spirit revels in the lust for quick easy gain and contempt for the value of steady work.": "쉽고 빠르게 원하는 것을 손에 넣는 것을 좋아하고, 꾸준한 일의 가치를 경멸하는 껄렁한 정령입니다.", + "[GOD 3 NAME]Godzamok, Spirit of Ruin": "파멸의 정령 고드자목", + "[GOD 3 QUOTE]The embodiment of natural disasters. An impenetrable motive drives the devastation caused by this spirit.": "자연 재해의 화신입니다. 이 정령은 알 수 없는 이유로 파괴를 일으킵니다.", + "[GOD 4 NAME]Cyclius, Spirit of Ages": "세월의 정령 사이클러스", + "[GOD 4 QUOTE]This spirit knows about everything you'll ever do, and enjoys dispensing a harsh judgment.": "당신이 하게 될 모든 일에 대해 아는 정령으로, 냉혹한 판단을 내리기를 좋아합니다.", + "[GOD 5 NAME]Selebrak, Spirit of Festivities": "축제의 정령 셀레브락", + "[GOD 5 QUOTE]This is the spirit of merry getaways and regretful Monday mornings.": "즐거운 휴가와 후회에 찬 월요일 아침의 정령입니다.", + "[GOD 6 NAME]Dotjeiess, Spirit of Creation": "창조의 정령 도트제이에스", + "[GOD 6 QUOTE]All things that be and ever will be were scripted long ago by this spirit's inscrutable tendrils.": "현재와 미래의 모든 것들은 오래 전 이 정령의 불가해한 덩굴손 안에서 짜여졌습니다.", + "[GOD 7 NAME]Muridal, Spirit of Labor": "노동의 정령 무리달", + "[GOD 7 QUOTE]This spirit enjoys a good cheese after a day of hard work.": "이 정령은 고된 노동 후에 먹는 맛있는 치즈를 좋아합니다.", + "[GOD 8 NAME]Jeremy, Spirit of Industry": "산업의 정령 제레미", + "[GOD 8 QUOTE]While this spirit has many regrets, helping you rule the world through constant industrialization is not one of them.": "이 정령은 후회하는 것이 많지만, 당신이 지속적인 산업화를 통해 세계를 지배할 수 있도록 도운 것은 후회하지 않습니다.", + "[GOD 9 NAME]Mokalsium, Mother Spirit": "어머니 정령 모칼시움", + "[GOD 9 QUOTE]A caring spirit said to contain itself, inwards infinitely.": "마음이 끝없이 넓고 자제심이 뛰어나다고 알려진 따스한 정령입니다.", + "[GOD 10 NAME]Skruuia, Spirit of Scorn": "경멸의 정령 스크루이아", + "[GOD 10 QUOTE]This spirit enjoys poking foul beasts and watching them squirm, but has no love for its own family.": "이 정령은 더러운 짐승들을 찌른 다음 그들의 몸부림을 구경하는 것을 좋아하지만, 자신의 가족들에게는 애정이 없습니다.", + "[GOD 11 NAME]Rigidel, Spirit of Order": "질서의 정령 리지델", + "[GOD 11 QUOTE]You will find that life gets just a little bit sweeter if you can motivate this spirit with tidy numbers and properly-filled tax returns.": "깔끔한 숫자와 제대로 작성한 소득 신고서를 통해 이 정령을 움직일 수 있다면 삶이 조금 더 달콤해질 겁니다.", + "Diamond slot": "다이아몬드 슬롯", + "Ruby slot": "루비 슬롯", + "Jade slot": "비취 슬롯", + "empty": "비어 있음", + "Release to assign %1 to this slot.": "해방하여 %1을(를) 이 슬롯에 배치하세요.", + "Drag a spirit onto this slot to assign it.": "정령을 이 슬롯에 드래그하여 배치하세요.", + "If a golden cookie is clicked, this spirit is unslotted and all worship swaps will be used up.": "황금 쿠키를 클릭하면 해당 정령은 슬롯에서 해제되며, 모든 예배 교환권을 소모합니다.", + "Each time you slot a spirit, you use up one worship swap.
If you have 2 swaps left, the next one will refill after %1.
If you have 1 swap left, the next one will refill after %2.
If you have 0 swaps left, you will get one after %3.
Unslotting a spirit costs no swaps.": "정령을 슬롯에 배치할 때마다 예배 교환권 하나를 소모합니다.
2개의 교환권이 남아 있다면, 다음 하나는 %1 후 충전됩니다.
1개의 교환권이 남은 경우, 다음 교환권은 %2 후 충전됩니다.
0개의 교환권이 남은 경우에는 %3 후 교환권을 획득합니다.
정령을 슬롯에서 해제하는 데는 교환권이 소모되지 않습니다.", + "Click to refill all your worship swaps for %1.": "%1(으)로 예배 교환권을 모두 충전하려면 클릭하세요.", + "Worship swaps: %1": "예배 교환권:", + "next in %1": "다음 충전: %1", + "The jade slot behaves as a ruby slot and the ruby slot behaves as a diamond slot.": "비취 슬롯이 루비 슬롯의 역할을 하고 루비 슬롯은 다이아몬드 슬롯의 역할을 합니다.", + "Stock Market": "주식 시장", + "[STOCK 1 NAME]Old Mills": "오래된 방앗간", + "[STOCK 1 TYPE]Cereals": "시리얼", + "[STOCK 1 LOGO]CRL": "CRL", + "[STOCK 2 NAME]Cocoa Excavations": "코코아 발굴지", + "[STOCK 2 TYPE]Chocolate": "초콜릿", + "[STOCK 2 LOGO]CHC": "CHC", + "[STOCK 3 NAME]Bovine Industries": "소 산업", + "[STOCK 3 TYPE]Butter": "버터", + "[STOCK 3 LOGO]BTR": "BTR", + "[STOCK 4 NAME]Candy Trust": "사탕 신탁회사", + "[STOCK 4 TYPE]Sugar": "설탕", + "[STOCK 4 LOGO]SUG": "SUG", + "[STOCK 5 NAME]Hazel Monastery": "헤이즐 수도원", + "[STOCK 5 TYPE]Nuts": "견과", + "[STOCK 5 LOGO]NUT": "NUT", + "[STOCK 6 NAME]Wacky Reagants": "괴짜 시약", + "[STOCK 6 TYPE]Salt": "소금", + "[STOCK 6 LOGO]SLT": "SLT", + "[STOCK 7 NAME]Cosmic Exports": "우주 수출회사", + "[STOCK 7 TYPE]Vanilla": "바닐라", + "[STOCK 7 LOGO]VNL": "VNL", + "[STOCK 8 NAME]Organic Gnostics": "유기체 그노스틱스", + "[STOCK 8 TYPE]Eggs": "알", + "[STOCK 8 LOGO]EGG": "EGG", + "[STOCK 9 NAME]Dimensional Exchange": "차원 교환", + "[STOCK 9 TYPE]Cinnamon": "시나몬", + "[STOCK 9 LOGO]CNM": "CNM", + "[STOCK 10 NAME]Precision Aging": "정밀한 노화", + "[STOCK 10 TYPE]Cream": "크림", + "[STOCK 10 LOGO]CRM": "CRM", + "[STOCK 11 NAME]Pectin Research": "펙틴 연구소", + "[STOCK 11 TYPE]Jam": "잼", + "[STOCK 11 LOGO]JAM": "JAM", + "[STOCK 12 NAME]Dazzle Corp Ltd.": "대즐 주식회사", + "[STOCK 12 TYPE]White chocolate": "화이트 초콜릿", + "[STOCK 12 LOGO]WCH": "WCH", + "[STOCK 13 NAME]Prosperity Hive": "번영의 벌집", + "[STOCK 13 TYPE]Honey": "꿀", + "[STOCK 13 LOGO]HNY": "HNY", + "[STOCK 14 NAME]Selfmade Bakeries": "자체 제작 제과점", + "[STOCK 14 TYPE]Cookies": "쿠키", + "[STOCK 14 LOGO]CKI": "CKI", + "[STOCK 15 NAME]Figments Associated": "허구 연합", + "[STOCK 15 TYPE]Recipes": "레시피", + "[STOCK 15 LOGO]RCP": "RCP", + "[STOCK 16 NAME]Polyvalent Acquisitions": "다기능 인수", + "[STOCK 16 TYPE]Subsidiaries": "계열사", + "[STOCK 16 LOGO]SBD": "SBD", + "[STOCK 17 NAME]Great Minds": "위대한 수업", + "[STOCK 17 TYPE]Publicists": "홍보 담당자", + "[STOCK 17 LOGO]PBL": "PBL", + "from %1": "%1에서 획득", + "%1: currently worth $%2 per unit.": "%1: 현재 유닛당 $%2의 가치.", + "You currently own %1 (worth $%2).": "현재 %1 보유 중($%2의 가치).", + "Your warehouses can store up to %1.": "창고에 최대 %1 보관 가능.", + "You may increase your storage space by upgrading your offices and by buying more %1. You also get %2 extra storage space per %3 level (currently: +%4).": "사무실을 업그레이드하거나 %1을(를) 더 구매하여 저장 공간을 늘릴 수 있습니다. 또한 %3 레벨당 추가로 %2개의 저장 공간을 획득합니다(현재: +%4). ", + "The average worth of this stock and how high it can peak depends on the building it is tied to, along with the level of your %1.": "해당 주식의 평균 가치와, 가치가 얼마나 오를 수 있는지는 주식이 연결된 건물과 %1 레벨에 따라 달라집니다.", + "%1 the hide button to toggle all other stocks.": "숨기기 버튼 %1 시 다른 모든 주식을 토글합니다.", + "stock:": "주식:", + "for $%1 each": "개당 $%1", + "last bought at
$%1 each": "마지막 구매 가격
각 $%1", + "+%1% overhead": "+%1% 간접 비용", + "value:": "가치:", + "valued at %1": "%1 가치 측정", + "you spend:": "소모:", + "you earn:": "획득:", + "You cannot buy and sell this stock in the same tick.": "동일한 실행 간격 이내에 해당 주식을 사고 팔 수 없습니다.", + "This is your office.": "내 사무실입니다.", + "It is fully upgraded. Its lavish interiors, spanning across innumerable floors, are host to many a decadent party, owing to your nigh-unfathomable wealth.": "업그레이드를 전부 완료했습니다. 상상도 못할 당신의 부유함 덕분에 호화로운 인테리어를 갖춘 수많은 층에서 흥청망청 잔치가 벌어집니다.", + "Level %1 offices": "레벨 %1 사무실", + "Credit garage": "대출 차고", + "Tiny bank": "소형 은행", + "Loaning company": "대출 회사", + "Finance headquarters": "금융 본부", + "International exchange": "국제 거래소", + "Palace of Greed": "탐욕의 궁전", + "Upgrading will cost you %1.": "업그레이드 시 %1이(가) 소모됩니다.", + "Upgrading requires %1.": "업그레이드에 %1이(가) 필요합니다.", + "Upgrading will grant you:": "업그레이드 시 획득:", + "+1 loan slot": "대출 슬롯 +1", + "+1 opportunity slot": "기회 슬롯 +1", + "+%1 warehouse space for all goods": "모든 물건을 위한 창고 공간 +%1", + "+%1% base warehouse space for all goods": "모든 물건을 위한 기본 창고 공간 +%1%", + "Brokers:": "중개인:", + "A nice broker to trade more cookies.": "더 많은 쿠키를 거래하도록 돕는 멋진 중개인입니다.", + "Hire": "고용", + "Buying goods normally incurs overhead costs of %1% extra. Each broker you hire reduces that cost by %2%.": "물건을 구매하면 보통 %1%의 추가 간접 비용이 발생합니다. 해당 비용은 고용한 중개인 1명당 %2% 감소합니다.", + "Current overhead costs thanks to your brokers: +%1%": "중개인 효과가 적용된 현재 간접 비용: +%1%", + "Buying a broker costs %1 of CpS (that's $%2).": "중개인 구매 비용은 CpS의 %1입니다($%2).", + "Maximum number of brokers you can own: %1 (the highest amount of grandmas you've owned this run, divided by 10, plus your grandma level)": "보유할 수 있는 최대 중개인 수: %1 (이번 회차에서 보유한 할머니의 수 최대 값을 10으로 나누고 할머니의 레벨을 더합니다)", + "Brokers are Wall Street-class grandmas versed in the ways of finance. Stockbroker grandmas work hard and play hard, and will fight telephone in hand to get your clients the best possible deals - with a sizeable profit margin for you, of course.": "중개인이란 금융에 있어 월스트리트 수준의 지식을 갖춘 할머니들입니다. 주식 중개인 할머니는 악착스럽고도 열심히 일하면서, 고객들과 최선의 거래를 성사하도록 휴대폰을 잡고 싸울 것입니다. 물론 당신에게 커다란 이익을 남기는 거래겠죠.", + "Hiring a new broker will cost you %1.": "새로운 중개인을 고용하면 %1이(가) 소모됩니다.", + "Take out %1": "%1 수령", + "Loan #%1": "#%1 대출", + "a modest loan": "약간의 대출", + "Buy that vintage car you've always wanted. Just pay us back.": "언제나 가지고 싶었던 빈티지 카를 구매하세요. 갚기만 하면 되죠.", + "a pawnshop loan": "전당포 대출", + "Bad credit? No problem. It's your money, and you need it now.": "신용불량이라고요? 걱정하지 마세요. 여기, 필요하신 돈입니다.", + "a retirement loan": "은퇴 대출", + "Finance your next house, boat, spouse, etc. You've earned it.": "다음 집, 보트, 배우자 등을 위한 자금입니다. 당신 것이에요.", + "By taking this loan, you will get %1 CpS for the next %2.": "이 대출을 받으면 다음 %2 동안 %1의 CpS를 획득합니다.", + "However, you will get %1 CpS for the next %2 after that.": "단, 그 이후 %2 동안 %1의 CpS가 적용됩니다.", + "You must also pay an immediate downpayment of %1 (%2% of your current bank).": "또한 즉시 %1의 계약금을 지불해야 합니다(현재 보유량의 %2%).", + "Loan over": "대출 종료", + "Your loan has expired, and you must now repay the interest.": "대출 기한이 만료되어 이제 이자를 갚아야 합니다.", + "Line style": "선 스타일", + "Color mode": "색상 모드", + "Toggle speed": "토글 속도", + "Click to refill your opportunity timer (and give a quick burst to your economy) for %1.": "%1(으)로 기회 타이머를 충전하려면 클릭하세요(경제가 빠르게 성장합니다).", + "Profits: %1. All prices are in $econds of your highest raw cookies per second.": "수익: %1. 모든 가격은 초당 쿠키 최대 생산량을 초($)로 표시한 것입니다.", + "The stock market is more chaotic.": "주식 시장이 더욱 혼란스러워졌습니다.", + "[Upgrade name 0]Reinforced index finger": "강화된 검지", + "[Upgrade name 1]Carpal tunnel prevention cream": "손목 터널 증후군 예방 크림", + "[Upgrade name 2]Ambidextrous": "양손잡이", + "[Upgrade name 3]Thousand fingers": "천 개의 손가락", + "[Upgrade name 4]Million fingers": "백만 개의 손가락", + "[Upgrade name 5]Billion fingers": "십억 개의 손가락", + "[Upgrade name 6]Trillion fingers": "일조 개의 손가락", + "[Upgrade name 7]Forwards from grandma": "할머니의 전언", + "[Upgrade name 8]Steel-plated rolling pins": "강철 도금 밀대", + "[Upgrade name 9]Lubricated dentures": "광이 나는 틀니", + "[Upgrade name 10]Cheap hoes": "싸구려 괭이", + "[Upgrade name 11]Fertilizer": "비료", + "[Upgrade name 12]Cookie trees": "쿠키 트리", + "[Upgrade name 13]Sturdier conveyor belts": "견고한 컨베이어 벨트", + "[Upgrade name 14]Child labor": "아동 노동", + "[Upgrade name 15]Sweatshop": "노동 착취", + "[Upgrade name 16]Sugar gas": "설탕 가스", + "[Upgrade name 17]Megadrill": "메가드릴", + "[Upgrade name 18]Ultradrill": "울트라드릴", + "[Upgrade name 19]Vanilla nebulae": "바닐라 성운", + "[Upgrade name 20]Wormholes": "웜홀", + "[Upgrade name 21]Frequent flyer": "단골 고객", + "[Upgrade name 22]Antimony": "안티모니", + "[Upgrade name 23]Essence of dough": "반죽의 정수", + "[Upgrade name 24]True chocolate": "진정한 초콜릿", + "[Upgrade name 25]Ancient tablet": "고대의 석판", + "[Upgrade name 26]Insane oatling workers": "미친 오틀링 일꾼", + "[Upgrade name 27]Soul bond": "영혼의 유대", + "[Upgrade name 28]Flux capacitors": "유량 축전기", + "[Upgrade name 29]Time paradox resolver": "타임 패러독스 해결 장치", + "[Upgrade name 30]Quantum conundrum": "양자의 수수께끼", + "[Upgrade name 31]Kitten helpers": "고양이 도우미", + "[Upgrade name 32]Kitten workers": "고양이 일꾼", + "[Upgrade name 33]Plain cookies": "평범한 쿠키", + "[Upgrade name 34]Sugar cookies": "설탕 쿠키", + "[Upgrade name 35]Oatmeal raisin cookies": "오트밀 건포도 쿠키", + "[Upgrade name 36]Peanut butter cookies": "땅콩 버터 쿠키", + "[Upgrade name 37]Coconut cookies": "코코넛 쿠키", + "[Upgrade name 38]White chocolate cookies": "화이트 초콜릿 쿠키", + "[Upgrade name 39]Macadamia nut cookies": "마카다미아 쿠키", + "[Upgrade name 40]Double-chip cookies": "더블칩 쿠키", + "[Upgrade name 41]White chocolate macadamia nut cookies": "화이트 초콜릿 마카다미아 쿠키", + "[Upgrade name 42]All-chocolate cookies": "완전 초콜릿 쿠키", + "[Upgrade name 43]Quadrillion fingers": "천조 개의 손가락", + "[Upgrade name 44]Prune juice": "자두 주스", + "[Upgrade name 45]Genetically-modified cookies": "유전자 변형 쿠키", + "[Upgrade name 46]Radium reactors": "라듐 반응기", + "[Upgrade name 47]Ultimadrill": "울티마드릴", + "[Upgrade name 48]Warp drive": "워프 드라이브", + "[Upgrade name 49]Ambrosia": "암브로시아", + "[Upgrade name 50]Sanity dance": "제정신의 춤", + "[Upgrade name 51]Causality enforcer": "인과 관계 집행기", + "[Upgrade name 52]Lucky day": "행운의 날", + "[Upgrade name 53]Serendipity": "뜻밖의 행운", + "[Upgrade name 54]Kitten engineers": "고양이 엔지니어", + "[Upgrade name 55]Dark chocolate-coated cookies": "다크 초콜릿 코팅 쿠키", + "[Upgrade name 56]White chocolate-coated cookies": "화이트 초콜릿 코팅 쿠키", + "[Upgrade name 57]Farmer grandmas": "농부 할머니", + "[Upgrade name 58]Miner grandmas": "광부 할머니", + "[Upgrade name 59]Worker grandmas": "일꾼 할머니", + "[Upgrade name 60]Cosmic grandmas": "우주 할머니", + "[Upgrade name 61]Transmuted grandmas": "변질된 할머니", + "[Upgrade name 62]Altered grandmas": "변형된 할머니", + "[Upgrade name 63]Grandmas' grandmas": "할머니의 할머니", + "[Upgrade name 64]Bingo center/Research facility": "빙고 센터/연구 시설", + "[Upgrade name 65]Specialized chocolate chips": "차별화된 초콜릿 칩", + "[Upgrade name 66]Designer cocoa beans": "디자이너 코코아 열매", + "[Upgrade name 67]Ritual rolling pins": "의식용 밀대", + "[Upgrade name 68]Underworld ovens": "지하 세계의 오븐", + "[Upgrade name 69]One mind": "하나의 정신", + "[Upgrade name 70]Exotic nuts": "외계 견과", + "[Upgrade name 71]Communal brainsweep": "집단 세뇌", + "[Upgrade name 72]Arcane sugar": "신비로운 설탕", + "[Upgrade name 73]Elder Pact": "장로의 맹약", + "[Upgrade name 74]Elder Pledge": "장로의 약속", + "[Upgrade name 75]Plastic mouse": "플라스틱 마우스", + "[Upgrade name 76]Iron mouse": "철 마우스", + "[Upgrade name 77]Titanium mouse": "티타늄 마우스", + "[Upgrade name 78]Adamantium mouse": "아다만티움 마우스", + "[Upgrade name 79]Ultrascience": "울트라사이언스", + "[Upgrade name 80]Eclipse cookies": "일식 쿠키", + "[Upgrade name 81]Zebra cookies": "얼룩말 쿠키", + "[Upgrade name 82]Quintillion fingers": "백경 개의 손가락", + "[Upgrade name 83]Gold hoard": "황금 수집가", + "[Upgrade name 84]Elder Covenant": "장로 계약", + "[Upgrade name 85]Revoke Elder Covenant": "장로 계약 폐지", + "[Upgrade name 86]Get lucky": "행운아", + "[Upgrade name 87]Sacrificial rolling pins": "제물용 밀대", + "[Upgrade name 88]Snickerdoodles": "스니커두들", + "[Upgrade name 89]Stroopwafels": "스트룹와플", + "[Upgrade name 90]Macaroons": "마카롱", + "[Upgrade name 91]Neuromancy": "뉴로맨서", + "[Upgrade name 92]Empire biscuits": "제국 비스킷", + "[Upgrade name 93]British tea biscuits": "영국식 차 비스킷", + "[Upgrade name 94]Chocolate british tea biscuits": "초콜릿 영국식 차 비스킷", + "[Upgrade name 95]Round british tea biscuits": "둥근 영국식 차 비스킷", + "[Upgrade name 96]Round chocolate british tea biscuits": "둥근 초콜릿 영국식 차 비스킷", + "[Upgrade name 97]Round british tea biscuits with heart motif": "하트 모티브의 둥근 영국식 차 비스킷", + "[Upgrade name 98]Round chocolate british tea biscuits with heart motif": "하트 모티브의 둥근 초콜릿 영국식 차 비스킷", + "[Upgrade name 99]Sugar bosons": "설탕 보손", + "[Upgrade name 100]String theory": "끈 이론", + "[Upgrade name 101]Large macaron collider": "거대 마카롱 충돌기", + "[Upgrade name 102]Big bang bake": "빅뱅 쿠키", + "[Upgrade name 103]Antigrandmas": "반할머니", + "[Upgrade name 104]Madeleines": "마들렌", + "[Upgrade name 105]Palmiers": "팔미예", + "[Upgrade name 106]Palets": "팔레트", + "[Upgrade name 107]Sablés": "사블레", + "[Upgrade name 108]Kitten overseers": "고양이 감독관", + "[Upgrade name 109]Sextillion fingers": "십해 개의 손가락", + "[Upgrade name 110]Double-thick glasses": "두 배 두꺼운 안경", + "[Upgrade name 111]Gingerbread scarecrows": "진저브레드 허수아비", + "[Upgrade name 112]Recombobulators": "질서 회복기", + "[Upgrade name 113]H-bomb mining": "수소 폭탄 채굴", + "[Upgrade name 114]Chocolate monoliths": "초콜릿 거석", + "[Upgrade name 115]Aqua crustulae": "쿠키수", + "[Upgrade name 116]Brane transplant": "막 이식", + "[Upgrade name 117]Yestermorrow comparators": "미래과거 비교 장치", + "[Upgrade name 118]Reverse cyclotrons": "역방향 사이클로트론", + "[Upgrade name 119]Unobtainium mouse": "언옵테늄 마우스", + "[Upgrade name 120]Caramoas": "카라모아스", + "[Upgrade name 121]Sagalongs": "사갈롱", + "[Upgrade name 122]Shortfoils": "쇼트포일", + "[Upgrade name 123]Win mints": "승리의 민트", + "[Upgrade name 124]Perfect idling": "완벽한 휴식", + "[Upgrade name 125]Fig gluttons": "무화과 대식가", + "[Upgrade name 126]Loreols": "로레올", + "[Upgrade name 127]Jaffa cakes": "자파 케이크", + "[Upgrade name 128]Grease's cups": "그리즈 컵", + "[Upgrade name 129]Heavenly chip secret": "천상 칩의 비밀", + "[Upgrade name 130]Heavenly cookie stand": "천상 쿠키 스탠드", + "[Upgrade name 131]Heavenly bakery": "천상 제과점", + "[Upgrade name 132]Heavenly confectionery": "천상 제과 공장", + "[Upgrade name 133]Heavenly key": "천상의 열쇠", + "[Upgrade name 134]Skull cookies": "해골 쿠키", + "[Upgrade name 135]Ghost cookies": "유령 쿠키", + "[Upgrade name 136]Bat cookies": "박쥐 쿠키", + "[Upgrade name 137]Slime cookies": "슬라임 쿠키", + "[Upgrade name 138]Pumpkin cookies": "호박 쿠키", + "[Upgrade name 139]Eyeball cookies": "눈알 쿠키", + "[Upgrade name 140]Spider cookies": "거미 쿠키", + "[Upgrade name 141]Persistent memory": "영구 기억", + "[Upgrade name 142]Wrinkler doormat": "주름벌레 매트", + "[Upgrade name 143]Christmas tree biscuits": "크리스마스 트리 비스킷", + "[Upgrade name 144]Snowflake biscuits": "눈송이 비스킷", + "[Upgrade name 145]Snowman biscuits": "눈사람 비스킷", + "[Upgrade name 146]Holly biscuits": "호랑가시나무 비스킷", + "[Upgrade name 147]Candy cane biscuits": "사탕 지팡이 비스킷", + "[Upgrade name 148]Bell biscuits": "종 비스킷", + "[Upgrade name 149]Present biscuits": "선물 비스킷", + "[Upgrade name 150]Gingerbread men": "진저브레드 맨", + "[Upgrade name 151]Gingerbread trees": "진저브레드 트리", + "[Upgrade name 152]A festive hat": "축제 모자", + "[Upgrade name 153]Increased merriness": "명랑함 증가", + "[Upgrade name 154]Improved jolliness": "쾌활함 증가", + "[Upgrade name 155]A lump of coal": "석탄 덩어리", + "[Upgrade name 156]An itchy sweater": "가려운 스웨터", + "[Upgrade name 157]Reindeer baking grounds": "순록굼터", + "[Upgrade name 158]Weighted sleighs": "기울어진 썰매", + "[Upgrade name 159]Ho ho ho-flavored frosting": "호호호 맛 프로스팅", + "[Upgrade name 160]Season savings": "시즌 절약", + "[Upgrade name 161]Toy workshop": "장난감 작업장", + "[Upgrade name 162]Naughty list": "나쁜 사람 목록", + "[Upgrade name 163]Santa's bottomless bag": "산타의 무한한 가방", + "[Upgrade name 164]Santa's helpers": "산타의 도우미", + "[Upgrade name 165]Santa's legacy": "산타의 유산", + "[Upgrade name 166]Santa's milk and cookies": "산타의 우유 및 쿠키", + "[Upgrade name 167]Reindeer season": "순록의 계절", + "[Upgrade name 168]Santa's dominion": "산타의 지배", + "[Upgrade name 169]Pure heart biscuits": "순수한 하트 비스킷", + "[Upgrade name 170]Ardent heart biscuits": "열정의 하트 비스킷", + "[Upgrade name 171]Sour heart biscuits": "시큼한 하트 비스킷", + "[Upgrade name 172]Weeping heart biscuits": "흐느끼는 하트 비스킷", + "[Upgrade name 173]Golden heart biscuits": "황금 하트 비스킷", + "[Upgrade name 174]Eternal heart biscuits": "영원의 하트 비스킷", + "[Upgrade name 175]Gem polish": "보석 광택", + "[Upgrade name 176]9th color": "9번째 색깔", + "[Upgrade name 177]Chocolate light": "초콜릿 빛", + "[Upgrade name 178]Grainbow": "곡물무지개", + "[Upgrade name 179]Pure cosmic light": "순수한 우주의 빛", + "[Upgrade name 180]Rainbow grandmas": "무지개 할머니", + "[Upgrade name 181]Season switcher": "시즌 변경 장치", + "[Upgrade name 182]Festive biscuit": "축제 비스킷", + "[Upgrade name 183]Ghostly biscuit": "유령 비스킷", + "[Upgrade name 184]Lovesick biscuit": "상사병 비스킷", + "[Upgrade name 185]Fool's biscuit": "바보의 비스킷", + "[Upgrade name 186]Eternal seasons": "영원의 계절", + "[Upgrade name 187]Kitten managers": "고양이 매니저", + "[Upgrade name 188]Septillion fingers": "일자 개의 손가락", + "[Upgrade name 189]Octillion fingers": "천자 개의 손가락", + "[Upgrade name 190]Eludium mouse": "가상 물질 마우스", + "[Upgrade name 191]Wishalloy mouse": "위시얼로이 마우스", + "[Upgrade name 192]Aging agents": "노화제", + "[Upgrade name 193]Pulsar sprinklers": "펄서 스프링클러", + "[Upgrade name 194]Deep-bake process": "심층 제과 과정", + "[Upgrade name 195]Coreforge": "내핵용광로", + "[Upgrade name 196]Generation ship": "시대 수송선", + "[Upgrade name 197]Origin crucible": "기원의 도가니", + "[Upgrade name 198]Deity-sized portals": "신 크기의 포털", + "[Upgrade name 199]Far future enactment": "먼 미래의 법률", + "[Upgrade name 200]Nanocosmics": "나노코스믹", + "[Upgrade name 201]Glow-in-the-dark": "야광성", + "[Upgrade name 202]Rose macarons": "장미 마카롱", + "[Upgrade name 203]Lemon macarons": "레몬 마카롱", + "[Upgrade name 204]Chocolate macarons": "초콜릿 마카롱", + "[Upgrade name 205]Pistachio macarons": "피스타치오 마카롱", + "[Upgrade name 206]Hazelnut macarons": "헤이즐넛 마카롱", + "[Upgrade name 207]Violet macarons": "바이올렛 마카롱", + "[Upgrade name 208]Magic shenanigans": "마법 장난", + "[Upgrade name 209]Bunny biscuit": "토끼 비스킷", + "[Upgrade name 210]Chicken egg": "닭 알", + "[Upgrade name 211]Duck egg": "오리 알", + "[Upgrade name 212]Turkey egg": "칠면조 알", + "[Upgrade name 213]Quail egg": "메추라기 알", + "[Upgrade name 214]Robin egg": "울새 알", + "[Upgrade name 215]Ostrich egg": "타조 알", + "[Upgrade name 216]Cassowary egg": "화식조 알", + "[Upgrade name 217]Salmon roe": "연어 알", + "[Upgrade name 218]Frogspawn": "개구리 알", + "[Upgrade name 219]Shark egg": "상어 알", + "[Upgrade name 220]Turtle egg": "거북이 알", + "[Upgrade name 221]Ant larva": "개미 애벌레", + "[Upgrade name 222]Golden goose egg": "황금 거위 알", + "[Upgrade name 223]Faberge egg": "파베르제 알", + "[Upgrade name 224]Wrinklerspawn": "주름벌레 알", + "[Upgrade name 225]Cookie egg": "쿠키 알", + "[Upgrade name 226]Omelette": "오믈렛", + "[Upgrade name 227]Chocolate egg": "초콜릿 알", + "[Upgrade name 228]Century egg": "세기의 알", + "[Upgrade name 229]\"egg\"": "\"알\"", + "[Upgrade name 230]Caramel macarons": "캐러멜 마카롱", + "[Upgrade name 231]Licorice macarons": "감초 마카롱", + "[Upgrade name 232]Taller tellers": "키 큰 직원", + "[Upgrade name 233]Scissor-resistant credit cards": "가위 저항성 신용카드", + "[Upgrade name 234]Acid-proof vaults": "내산성 금고", + "[Upgrade name 235]Chocolate coins": "초콜릿 코인", + "[Upgrade name 236]Exponential interest rates": "기하급수적 금리", + "[Upgrade name 237]Financial zen": "경제적 명상", + "[Upgrade name 238]Golden idols": "황금 아이돌", + "[Upgrade name 239]Sacrifices": "희생", + "[Upgrade name 240]Delicious blessing": "맛있는 축복", + "[Upgrade name 241]Sun festival": "태양 축제", + "[Upgrade name 242]Enlarged pantheon": "만신전 확장", + "[Upgrade name 243]Great Baker in the sky": "하늘의 위대한 제과사", + "[Upgrade name 244]Pointier hats": "뾰족한 모자", + "[Upgrade name 245]Beardlier beards": "수북한 수염", + "[Upgrade name 246]Ancient grimoires": "고대의 마법서", + "[Upgrade name 247]Kitchen curses": "부엌 저주", + "[Upgrade name 248]School of sorcery": "마법 학교", + "[Upgrade name 249]Dark formulas": "어둠의 수식", + "[Upgrade name 250]Banker grandmas": "은행원 할머니", + "[Upgrade name 251]Priestess grandmas": "성직자 할머니", + "[Upgrade name 252]Witch grandmas": "마녀 할머니", + "[Upgrade name 253]Tin of british tea biscuits": "영국식 차 비스킷이 든 통", + "[Upgrade name 254]Box of macarons": "마카롱 상자", + "[Upgrade name 255]Box of brand biscuits": "브랜드 비스킷 상자", + "[Upgrade name 256]Pure black chocolate cookies": "순수한 블랙 초콜릿 쿠키", + "[Upgrade name 257]Pure white chocolate cookies": "순수한 화이트 초콜릿 쿠키", + "[Upgrade name 258]Ladyfingers": "레이디핑거", + "[Upgrade name 259]Tuiles": "튜일", + "[Upgrade name 260]Chocolate-stuffed biscuits": "초콜릿이 가득한 비스킷", + "[Upgrade name 261]Checker cookies": "체크무늬 쿠키", + "[Upgrade name 262]Butter cookies": "버터 쿠키", + "[Upgrade name 263]Cream cookies": "크림 쿠키", + "[Upgrade name 264]Permanent upgrade slot I": "영구 업그레이드 슬롯 I", + "[Upgrade name 265]Permanent upgrade slot II": "영구 업그레이드 슬롯 II", + "[Upgrade name 266]Permanent upgrade slot III": "영구 업그레이드 슬롯 III", + "[Upgrade name 267]Permanent upgrade slot IV": "영구 업그레이드 슬롯 IV", + "[Upgrade name 268]Permanent upgrade slot V": "영구 업그레이드 슬롯 V", + "[Upgrade name 269]Starspawn": "별알", + "[Upgrade name 270]Starsnow": "별눈", + "[Upgrade name 271]Starterror": "별공포", + "[Upgrade name 272]Starlove": "별사랑", + "[Upgrade name 273]Startrade": "별거래", + "[Upgrade name 274]Angels": "천사", + "[Upgrade name 275]Archangels": "대천사", + "[Upgrade name 276]Virtues": "역천사", + "[Upgrade name 277]Dominions": "주천사", + "[Upgrade name 278]Cherubim": "지천사", + "[Upgrade name 279]Seraphim": "치천사", + "[Upgrade name 280]God": "신", + "[Upgrade name 281]Twin Gates of Transcendence": "초월의 쌍둥이 관문", + "[Upgrade name 282]Heavenly luck": "천상의 행운", + "[Upgrade name 283]Lasting fortune": "지속되는 행운", + "[Upgrade name 284]Decisive fate": "결정적인 운명", + "[Upgrade name 285]Divine discount": "신성한 할인", + "[Upgrade name 286]Divine sales": "신성한 세일", + "[Upgrade name 287]Divine bakeries": "신성한 제과점", + "[Upgrade name 288]Starter kit": "초보자 키트", + "[Upgrade name 289]Starter kitchen": "초보자 주방", + "[Upgrade name 290]Halo gloves": "헤일로 장갑", + "[Upgrade name 291]Kitten angels": "고양이 천사", + "[Upgrade name 292]Unholy bait": "불경한 미끼", + "[Upgrade name 293]Sacrilegious corruption": "신성모독의 오염", + "[Upgrade name 294]Xtreme walkers": "엑스트림 워커", + "[Upgrade name 295]Fudge fungus": "퍼지 균류", + "[Upgrade name 296]Planetsplitters": "행성분열기", + "[Upgrade name 297]Cyborg workforce": "사이보그 노동자", + "[Upgrade name 298]Way of the wallet": "지갑으로 향하는 길", + "[Upgrade name 299]Creation myth": "창조 신화", + "[Upgrade name 300]Cookiemancy": "쿠키술", + "[Upgrade name 301]Dyson sphere": "다이슨 구", + "[Upgrade name 302]Theory of atomic fluidity": "원자유동성 가설", + "[Upgrade name 303]End of times back-up plan": "종말 백업 계획", + "[Upgrade name 304]Great loop hypothesis": "거대 루프 가설", + "[Upgrade name 305]The Pulse": "펄스", + "[Upgrade name 306]Lux sanctorum": "럭스 성소", + "[Upgrade name 307]The Unbridling": "해방", + "[Upgrade name 308]Wheat triffids": "밀 트리피드", + "[Upgrade name 309]Canola oil wells": "카놀라유 우물", + "[Upgrade name 310]78-hour days": "78시간 근무", + "[Upgrade name 311]The stuff rationale": "물건의 근거", + "[Upgrade name 312]Theocracy": "신정 국가", + "[Upgrade name 313]Rabbit trick": "토끼 마술", + "[Upgrade name 314]The final frontier": "최후의 변경지", + "[Upgrade name 315]Beige goo": "베이지 구", + "[Upgrade name 316]Maddening chants": "광기의 성가", + "[Upgrade name 317]Cookietopian moments of maybe": "쿠키천국의 순간", + "[Upgrade name 318]Some other super-tiny fundamental particle? Probably?": "아주 작은 기초 입자가 있을까? 혹시 모르지?", + "[Upgrade name 319]Reverse shadows": "역그림자", + "[Upgrade name 320]Kitten accountants": "고양이 회계사", + "[Upgrade name 321]Kitten specialists": "고양이 스페셜리스트", + "[Upgrade name 322]Kitten experts": "고양이 전문가", + "[Upgrade name 323]How to bake your dragon": "드래곤을 굽는 방법", + "[Upgrade name 324]A crumbly egg": "바삭한 알", + "[Upgrade name 325]Chimera": "키메라", + "[Upgrade name 326]Tin of butter cookies": "버터 쿠키가 든 통", + "[Upgrade name 327]Golden switch": "황금 스위치", + "[Upgrade name 328]Classic dairy selection": "클래식 유제품 선택", + "[Upgrade name 329]Fanciful dairy selection": "화려한 유제품 선택", + "[Upgrade name 330]Dragon cookie": "드래곤 쿠키", + "[Upgrade name 331]Golden switch [off]": "황금 스위치 [끔]", + "[Upgrade name 332]Golden switch [on]": "황금 스위치 [켬]", + "[Upgrade name 333]Milk selector": "우유 선택 장치", + "[Upgrade name 334]Milk chocolate butter biscuit": "밀크 초콜릿 버터 비스킷", + "[Upgrade name 335]Dark chocolate butter biscuit": "다크 초콜릿 버터 비스킷", + "[Upgrade name 336]White chocolate butter biscuit": "화이트 초콜릿 버터 비스킷", + "[Upgrade name 337]Ruby chocolate butter biscuit": "루비 초콜릿 버터 비스킷", + "[Upgrade name 338]Gingersnaps": "생강 쿠키", + "[Upgrade name 339]Cinnamon cookies": "시나몬 쿠키", + "[Upgrade name 340]Vanity cookies": "허영 쿠키", + "[Upgrade name 341]Cigars": "담배", + "[Upgrade name 342]Pinwheel cookies": "풍차 쿠키", + "[Upgrade name 343]Fudge squares": "퍼지 스퀘어", + "[Upgrade name 344]Digits": "손가락", + "[Upgrade name 345]Butter horseshoes": "버터 편자", + "[Upgrade name 346]Butter pucks": "버터 퍽", + "[Upgrade name 347]Butter knots": "버터 매듭", + "[Upgrade name 348]Butter slabs": "버터 평판", + "[Upgrade name 349]Butter swirls": "버터 소용돌이", + "[Upgrade name 350]Shortbread biscuits": "쇼트브레드 비스킷", + "[Upgrade name 351]Millionaires' shortbreads": "백만장자의 쇼트브레드", + "[Upgrade name 352]Caramel cookies": "캐러멜 쿠키", + "[Upgrade name 353]Belphegor": "벨페고르", + "[Upgrade name 354]Mammon": "마몬", + "[Upgrade name 355]Abaddon": "아바돈", + "[Upgrade name 356]Satan": "사탄", + "[Upgrade name 357]Asmodeus": "아스모데우스", + "[Upgrade name 358]Beelzebub": "베엘제붑", + "[Upgrade name 359]Lucifer": "루시퍼", + "[Upgrade name 360]Golden cookie alert sound": "황금 쿠키 알림 소리", + "[Upgrade name 361]Golden cookie sound selector": "황금 쿠키 소리 선택 장치", + "[Upgrade name 362]Basic wallpaper assortment": "기본 벽지 모음", + "[Upgrade name 363]Legacy": "유산", + "[Upgrade name 364]Elder spice": "장로의 향신료", + "[Upgrade name 365]Residual luck": "남은 행운", + "[Upgrade name 366]Fantasteel mouse": "판타스틸 마우스", + "[Upgrade name 367]Nevercrack mouse": "네버크랙 마우스", + "[Upgrade name 368]Five-finger discount": "훔치기", + "[Upgrade name 369]Future almanacs": "미래의 책력", + "[Upgrade name 370]Rain prayer": "기우제", + "[Upgrade name 371]Seismic magic": "지진 마법", + "[Upgrade name 372]Asteroid mining": "소행성 채굴", + "[Upgrade name 373]Quantum electronics": "양자 전자공학", + "[Upgrade name 374]Temporal overclocking": "임시 오버클러킹", + "[Upgrade name 375]Contracts from beyond": "다른 세상과의 계약", + "[Upgrade name 376]Printing presses": "인쇄기", + "[Upgrade name 377]Paganism": "이교도", + "[Upgrade name 378]God particle": "신의 입자", + "[Upgrade name 379]Arcane knowledge": "신비로운 지식", + "[Upgrade name 380]Magical botany": "마법 식물", + "[Upgrade name 381]Fossil fuels": "화석 연료", + "[Upgrade name 382]Shipyards": "조선소", + "[Upgrade name 383]Primordial ores": "원시 광맥", + "[Upgrade name 384]Gold fund": "황금 펀드", + "[Upgrade name 385]Infernal crops": "지옥의 작물", + "[Upgrade name 386]Abysmal glimmer": "심연의 희미한 빛", + "[Upgrade name 387]Relativistic parsec-skipping": "상대성 파섹 이동", + "[Upgrade name 388]Primeval glow": "원시의 빛", + "[Upgrade name 389]Extra physics funding": "추가 물리학 자금", + "[Upgrade name 390]Chemical proficiency": "화학 숙련", + "[Upgrade name 391]Light magic": "빛 마법", + "[Upgrade name 392]Mystical energies": "신비의 에너지", + "[Upgrade name 393]Synergies Vol. I": "시너지 제1권", + "[Upgrade name 394]Synergies Vol. II": "시너지 제2권", + "[Upgrade name 395]Heavenly cookies": "천상 쿠키", + "[Upgrade name 396]Wrinkly cookies": "주름 쿠키", + "[Upgrade name 397]Distilled essence of redoubled luck": "강화된 행운의 증류된 정수", + "[Upgrade name 398]Occult obstruction": "오컬트 차단", + "[Upgrade name 399]Glucose-charged air": "포도당 충전 공기", + "[Upgrade name 400]Lavender chocolate butter biscuit": "라벤더 초콜릿 버터 비스킷", + "[Upgrade name 401]Lombardia cookies": "롬바르디아 쿠키", + "[Upgrade name 402]Bastenaken cookies": "바스토뉴 쿠키", + "[Upgrade name 403]Pecan sandies": "피칸 샌디즈", + "[Upgrade name 404]Moravian spice cookies": "모라비아 향신료 쿠키", + "[Upgrade name 405]Anzac biscuits": "안작 비스킷", + "[Upgrade name 406]Buttercakes": "버터케이크", + "[Upgrade name 407]Ice cream sandwiches": "아이스크림 샌드위치", + "[Upgrade name 408]Stevia Caelestis": "천상의 스테비아 ", + "[Upgrade name 409]Diabetica Daemonicus": "당뇨병에 걸린 악마", + "[Upgrade name 410]Sucralosia Inutilis": "쓸모 없는 수크랄로스", + "[Upgrade name 411]Lucky digit": "행운의 손가락", + "[Upgrade name 412]Lucky number": "행운의 숫자", + "[Upgrade name 413]Lucky payout": "행운 지불금", + "[Upgrade name 414]Background selector": "배경 선택 장치", + "[Upgrade name 415]Lucky grandmas": "행운 할머니", + "[Upgrade name 416]Your lucky cookie": "당신의 행운 쿠키", + "[Upgrade name 417]\"All Bets Are Off\" magic coin": "\"모든 내기 꺼짐\" 마법 코인", + "[Upgrade name 418]Winning lottery ticket": "복권 당첨", + "[Upgrade name 419]Four-leaf clover field": "네잎클로버 들판", + "[Upgrade name 420]A recipe book about books": "책에 대한 레시피 책", + "[Upgrade name 421]Leprechaun village": "레프러콘 마을", + "[Upgrade name 422]Improbability drive": "불가능성 추진기", + "[Upgrade name 423]Antisuperstistronics": "반미신", + "[Upgrade name 424]Gemmed talismans": "보석 박힌 부적", + "[Upgrade name 425]Kitten consultants": "고양이 자문가", + "[Upgrade name 426]Birthday cookie": "생일 쿠키", + "[Upgrade name 427]Armythril mouse": "아미스릴 마우스", + "[Upgrade name 428]Reverse dementia": "역치매", + "[Upgrade name 429]Humane pesticides": "인간 살충제", + "[Upgrade name 430]Mole people": "두더지 인간", + "[Upgrade name 431]Machine learning": "머신 러닝", + "[Upgrade name 432]Edible money": "식용 돈", + "[Upgrade name 433]Sick rap prayers": "불건전한 랩 기도문", + "[Upgrade name 434]Deluxe tailored wands": "호화로운 맞춤 지파이", + "[Upgrade name 435]Autopilot": "자동 조종", + "[Upgrade name 436]The advent of chemistry": "화학의 출현", + "[Upgrade name 437]The real world": "실제 세계", + "[Upgrade name 438]Second seconds": "두 번째 초", + "[Upgrade name 439]Quantum comb": "양자 빗", + "[Upgrade name 440]Crystal mirrors": "결정 거울", + "[Upgrade name 441]Bunnypedes": "토끼발", + "[Upgrade name 442]Kitten assistants to the regional manager": "고양이 지역 매니저 보조", + "[Upgrade name 443]Charm quarks": "부적 쿼크", + "[Upgrade name 444]Pink biscuits": "분홍색 비스킷", + "[Upgrade name 445]Whole-grain cookies": "통밀 쿠키", + "[Upgrade name 446]Candy cookies": "사탕 쿠키", + "[Upgrade name 447]Big chip cookies": "커다란 칩 쿠키", + "[Upgrade name 448]One chip cookies": "칩이 한 개인 쿠키", + "[Upgrade name 449]Sugar baking": "설탕 베이킹", + "[Upgrade name 450]Sugar craving": "설탕 조각", + "[Upgrade name 451]Sugar aging process": "설탕 숙성 과정", + "[Upgrade name 452]Sugar frenzy": "설탕 프렌지", + "[Upgrade name 453]Sprinkles cookies": "스프링클스 쿠키", + "[Upgrade name 454]Peanut butter blossoms": "땅콩 버터 블로섬", + "[Upgrade name 455]No-bake cookies": "비조리 쿠키", + "[Upgrade name 456]Florentines": "플로렌타인", + "[Upgrade name 457]Chocolate crinkles": "초콜릿 크링클", + "[Upgrade name 458]Maple cookies": "단풍 쿠키", + "[Upgrade name 459]Turbo-charged soil": "터보 차지 토양", + "[Upgrade name 460]Technobsidian mouse": "테크놉시디언 마우스", + "[Upgrade name 461]Plasmarble mouse": "플라스마블 마우스", + "[Upgrade name 462]Kitten marketeers": "고양이 마케터", + "[Upgrade name 463]Festivity loops": "축제 루프", + "[Upgrade name 464]Persian rice cookies": "페르시아 쌀 쿠키", + "[Upgrade name 465]Norwegian cookies": "노르웨이식 쿠키", + "[Upgrade name 466]Crispy rice cookies": "바삭한 쌀 쿠키", + "[Upgrade name 467]Ube cookies": "우베 쿠키", + "[Upgrade name 468]Butterscotch cookies": "버터스카치 쿠키", + "[Upgrade name 469]Speculaas": "스페큘라스", + "[Upgrade name 470]Elderwort biscuits": "고대맥아 비스킷", + "[Upgrade name 471]Bakeberry cookies": "빵베리 쿠키", + "[Upgrade name 472]Duketater cookies": "공작감자 쿠키", + "[Upgrade name 473]Green yeast digestives": "녹색 효모 소화제", + "[Upgrade name 474]Fern tea": "고사리 차", + "[Upgrade name 475]Ichor syrup": "이코르 시럽", + "[Upgrade name 476]Wheat slims": "위트 슬림", + "[Upgrade name 477]Synthetic chocolate green honey butter biscuit": "합성 초콜릿 녹색 꿀 버터 비스킷", + "[Upgrade name 478]Royal raspberry chocolate butter biscuit": "왕실 라즈베리 초콜릿 버터 비스킷", + "[Upgrade name 479]Ultra-concentrated high-energy chocolate butter biscuit": "초농축 고에너지 초콜릿 버터 비스킷", + "[Upgrade name 480]Timeproof hair dyes": "타임프루프 염색약", + "[Upgrade name 481]Barnstars": "반스타", + "[Upgrade name 482]Mine canaries": "광산 카나리아", + "[Upgrade name 483]Brownie point system": "브라우니 포인트식", + "[Upgrade name 484]Grand supercycles": "할머니 슈퍼사이클", + "[Upgrade name 485]Psalm-reading": "찬송가 낭독", + "[Upgrade name 486]Immobile spellcasting": "고정 주문시전", + "[Upgrade name 487]Restaurants at the end of the universe": "세계의 끝에 있는 레스토랑", + "[Upgrade name 488]On second thought": "재고", + "[Upgrade name 489]Dimensional garbage gulper": "차원 쓰레기 처리장", + "[Upgrade name 490]Additional clock hands": "추가 시계 바늘", + "[Upgrade name 491]Baking Nobel prize": "제과 노벨상", + "[Upgrade name 492]Reverse theory of light": "빛 이론 반박", + "[Upgrade name 493]Revised probabilistics": "개정된 확률론", + "[Upgrade name 494]Kitten analysts": "고양이 분석가", + "[Upgrade name 495]Eye of the wrinkler": "주름벌레의 눈", + "[Upgrade name 496]Inspired checklist": "응원 체크리스트", + "[Upgrade name 497]Pure pitch-black chocolate butter biscuit": "순수한 칠흑 초콜릿 버터 비스킷", + "[Upgrade name 498]Chocolate oatmeal cookies": "초콜릿 오트밀 쿠키", + "[Upgrade name 499]Molasses cookies": "당밀 쿠키", + "[Upgrade name 500]Biscotti": "비스코티", + "[Upgrade name 501]Waffle cookies": "와플 쿠키", + "[Upgrade name 502]Almond cookies": "아몬드 쿠키", + "[Upgrade name 503]Hazelnut cookies": "헤이즐넛 쿠키", + "[Upgrade name 504]Walnut cookies": "월넛 쿠키", + "[Upgrade name 505]Label printer": "라벨 프린터", + "[Upgrade name 506]Good manners": "훌륭한 예절", + "[Upgrade name 507]Lindworms": "린트부름", + "[Upgrade name 508]Bore again": "다시 뚫다", + "[Upgrade name 509]\"Volunteer\" interns": "\"자원 봉사\" 인턴", + "[Upgrade name 510]Rules of acquisition": "매입의 법칙", + "[Upgrade name 511]War of the gods": "신들의 전쟁", + "[Upgrade name 512]Electricity": "전기", + "[Upgrade name 513]Universal alphabet": "보편적 문자", + "[Upgrade name 514]Public betterment": "공익 향상", + "[Upgrade name 515]Embedded microportals": "내장 마이크로포털", + "[Upgrade name 516]Nostalgia": "향수", + "[Upgrade name 517]The definite molecule": "확고한 분자", + "[Upgrade name 518]Light capture measures": "빛 포획 수단", + "[Upgrade name 519]0-sided dice": "0면체 주사위", + "[Upgrade name 520]Heralds": "전령", + "[Upgrade name 521]Metagrandmas": "메타할머니", + "[Upgrade name 522]Metabakeries": "메타베이커리", + "[Upgrade name 523]Mandelbrown sugar": "만델브라운 설탕", + "[Upgrade name 524]Fractoids": "프랙토이드", + "[Upgrade name 525]Nested universe theory": "내재 세계 가설", + "[Upgrade name 526]Menger sponge cake": "멩거 스폰지 케이크", + "[Upgrade name 527]One particularly good-humored cow": "뛰어난 유머 감각의 소", + "[Upgrade name 528]Chocolate ouroboros": "초콜릿 우로보로스", + "[Upgrade name 529]Nested": "내재", + "[Upgrade name 530]Space-filling fibers": "공간 채움 섬유", + "[Upgrade name 531]Endless book of prose": "끝없는 산문 책", + "[Upgrade name 532]The set of all sets": "전체 집합의 집합", + "[Upgrade name 533]Recursive mirrors": "반복 거울", + "[Upgrade name 534]Mice clicking mice": "마우스를 클릭하는 생쥐", + "[Upgrade name 535]Custard creams": "커스터드 크림", + "[Upgrade name 536]Bourbon biscuits": "버번 비스킷", + "[Upgrade name 537]Keepsakes": "기념품", + "[Upgrade name 538]Mini-cookies": "미니 쿠키", + "[Upgrade name 539]Sugar crystal cookies": "설탕 결정 쿠키", + "[Upgrade name 540]Box of maybe cookies": "쿠키 비슷한 게 든 상자", + "[Upgrade name 541]Box of not cookies": "쿠키가 아닌 게 든 상자", + "[Upgrade name 542]Box of pastries": "패스트리 상자", + "[Upgrade name 543]Profiteroles": "프로피테롤", + "[Upgrade name 544]Jelly donut": "젤리 도넛", + "[Upgrade name 545]Glazed donut": "글레이즈드 도넛", + "[Upgrade name 546]Chocolate cake": "초콜릿 케이크", + "[Upgrade name 547]Strawberry cake": "딸기 케이크", + "[Upgrade name 548]Apple pie": "사과 파이", + "[Upgrade name 549]Lemon meringue pie": "레몬 머랭 파이", + "[Upgrade name 550]Butter croissant": "버터 크루아상", + "[Upgrade name 551]Cookie dough": "쿠키 반죽", + "[Upgrade name 552]Burnt cookie": "탄 쿠키", + "[Upgrade name 553]A chocolate chip cookie but with the chips picked off for some reason": "초콜릿 칩 쿠키이지만, 어째서인지 칩이 빠져 있습니다.", + "[Upgrade name 554]Flavor text cookie": "플레이버 텍스트 쿠키", + "[Upgrade name 555]High-definition cookie": "고화질 쿠키", + "[Upgrade name 556]Toast": "토스트", + "[Upgrade name 557]Peanut butter & jelly": "땅콩 버터와 젤리", + "[Upgrade name 558]Wookies": "우키", + "[Upgrade name 559]Cheeseburger": "치즈버거", + "[Upgrade name 560]One lone chocolate chip": "외로운 초코칩 한 개", + "[Upgrade name 561]Genius accounting": "천재적 회계", + "[Upgrade name 562]Shimmering veil": "빛나는 베일", + "[Upgrade name 563]Shimmering veil [off]": "빛나는 베일 [끔]", + "[Upgrade name 564]Shimmering veil [on]": "빛나는 베일 [켬]", + "[Upgrade name 565]Whoopie pies": "우피 파이", + "[Upgrade name 566]Caramel wafer biscuits": "캐러멜 웨이퍼 비스킷", + "[Upgrade name 567]Chocolate chip mocha cookies": "초콜릿 칩 모카 쿠키", + "[Upgrade name 568]Earl Grey cookies": "얼그레이 쿠키", + "[Upgrade name 569]Corn syrup cookies": "옥수수 시럽 쿠키", + "[Upgrade name 570]Icebox cookies": "아이스박스 쿠키", + "[Upgrade name 571]Graham crackers": "그레이엄 크래커", + "[Upgrade name 572]Hardtack": "건빵", + "[Upgrade name 573]Cornflake cookies": "콘플레이크 쿠키", + "[Upgrade name 574]Tofu cookies": "두부 쿠키", + "[Upgrade name 575]Gluten-free cookies": "글루텐 프리 쿠키", + "[Upgrade name 576]Russian bread cookies": "러시아식 브레드 쿠키", + "[Upgrade name 577]Lebkuchen": "렙쿠헨", + "[Upgrade name 578]Aachener Printen": "아헨 프린텐", + "[Upgrade name 579]Canistrelli": "까니스트렐리", + "[Upgrade name 580]Nice biscuits": "멋진 비스킷", + "[Upgrade name 581]French pure butter cookies": "프랑스식 순수한 버터 비스킷", + "[Upgrade name 582]Petit beurre": "빼띠 버터", + "[Upgrade name 583]Nanaimo bars": "나나이모 바", + "[Upgrade name 584]Berger cookies": "버거 쿠키", + "[Upgrade name 585]Chinsuko": "친스코", + "[Upgrade name 586]Panda koala biscuits": "판다 코알라 비스킷", + "[Upgrade name 587]Putri salju": "푸트리 살주", + "[Upgrade name 588]Milk cookies": "밀크 쿠키", + "[Upgrade name 589]Cookie crumbs": "쿠키 부스러기", + "[Upgrade name 590]Chocolate chip cookie": "초콜릿 칩 쿠키", + "[Upgrade name 591]Cosmic beginner's luck": "우주 초심자의 행운", + "[Upgrade name 592]Reinforced membrane": "강화막", + "[Upgrade name 593]Binary grandmas": "이진법 할머니", + "[Upgrade name 594]The JavaScript console for dummies": "바보를 위한 자바스크립트 콘솔", + "[Upgrade name 595]64bit arrays": "64비트 배열", + "[Upgrade name 596]Stack overflow": "스택 오버플로", + "[Upgrade name 597]Enterprise compiler": "대규모 컴파일러", + "[Upgrade name 598]Syntactic sugar": "문법적 설탕", + "[Upgrade name 599]A nice cup of coffee": "한 잔의 멋진 커피", + "[Upgrade name 600]Just-in-time baking": "제때 굽기", + "[Upgrade name 601]cookies++": "쿠키++", + "[Upgrade name 602]Software updates": "소프트웨어 업데이트", + "[Upgrade name 603]Game.Loop": "Game.Loop", + "[Upgrade name 604]eval()": "eval()", + "[Upgrade name 605]Script grannies": "스크립트 할머니", + "[Upgrade name 606]Tombola computing": "톰볼라 컴퓨터", + "[Upgrade name 607]Kruidnoten": "크루이드노텐", + "[Upgrade name 608]Marie biscuits": "마리 비스킷", + "[Upgrade name 609]Meringue cookies": "머랭 쿠키", + "[Upgrade name 610]Pizza": "피자", + "[Upgrade name 611]Crackers": "크래커", + "[Upgrade name 612]Havabreaks": "하바브레이크", + "[Upgrade name 613]Kitten executives": "고양이 간부", + "[Upgrade name 614]Chai tea cookies": "차이티 쿠키", + "[Upgrade name 615]Yogurt cookies": "요거트 쿠키", + "[Upgrade name 616]Thumbprint cookies": "지문 쿠키", + "[Upgrade name 617]Pizzelle": "피젤", + "[Upgrade name 618]Zilla wafers": "질라 웨이퍼", + "[Upgrade name 619]Dim Dams": "딤 담", + "[Upgrade name 620]Candy": "사탕", + "[Upgrade name 621]Fortune #001": "포춘 #001", + "[Upgrade name 622]Fortune #002": "포춘 #002", + "[Upgrade name 623]Fortune #003": "포춘 #003", + "[Upgrade name 624]Fortune #004": "포춘 #004", + "[Upgrade name 625]Fortune #005": "포춘 #005", + "[Upgrade name 626]Fortune #006": "포춘 #006", + "[Upgrade name 627]Fortune #007": "포춘 #007", + "[Upgrade name 628]Fortune #008": "포춘 #008", + "[Upgrade name 629]Fortune #009": "포춘 #009", + "[Upgrade name 630]Fortune #010": "포춘 #010", + "[Upgrade name 631]Fortune #011": "포춘 #011", + "[Upgrade name 632]Fortune #012": "포춘 #012", + "[Upgrade name 633]Fortune #013": "포춘 #013", + "[Upgrade name 634]Fortune #014": "포춘 #014", + "[Upgrade name 635]Fortune #015": "포춘 #015", + "[Upgrade name 636]Fortune #016": "포춘 #016", + "[Upgrade name 637]Fortune #017": "포춘 #017", + "[Upgrade name 638]Fortune #100": "포춘 #100", + "[Upgrade name 639]Fortune #101": "포춘 #101", + "[Upgrade name 640]Fortune #102": "포춘 #102", + "[Upgrade name 641]Fortune #103": "포춘 #103", + "[Upgrade name 642]Fortune #104": "포춘 #104", + "[Upgrade name 643]Fortune cookies": "포춘 쿠키", + "[Upgrade name 644]A really good guide book": "정말 훌륭한 안내서", + "[Upgrade name 645]Prism heart biscuits": "프리즘 하트 비스킷", + "[Upgrade name 646]Kitten wages": "고양이 봉급", + "[Upgrade name 647]Pet the dragon": "드래곤 쓰다듬기", + "[Upgrade name 648]Dragon scale": "드래곤 비늘", + "[Upgrade name 649]Dragon claw": "드래곤 발톱", + "[Upgrade name 650]Dragon fang": "드래곤 송곳니", + "[Upgrade name 651]Dragon teddy bear": "드래곤 테디 베어", + "[Upgrade name 652]Granola cookies": "그래놀라 쿠키", + "[Upgrade name 653]Ricotta cookies": "리코타 쿠키", + "[Upgrade name 654]Roze koeken": "로제 코에켄", + "[Upgrade name 655]Peanut butter cup cookies": "땅콩 버터 컵 쿠키", + "[Upgrade name 656]Sesame cookies": "참깨 쿠키", + "[Upgrade name 657]Taiyaki": "도미빵", + "[Upgrade name 658]Vanillekipferl": "바닐라키펠", + "[Upgrade name 659]Cosmic chocolate butter biscuit": "우주 초콜릿 버터 비스킷", + "[Upgrade name 660]Nonillion fingers": "백양 개의 손가락", + "[Upgrade name 661]Miraculite mouse": "미라클라이트 마우스", + "[Upgrade name 662]Generation degeneration": "세대 퇴행", + "[Upgrade name 663]Global seed vault": "국제 종자 저장고", + "[Upgrade name 664]Air mining": "공기 채굴", + "[Upgrade name 665]Behavioral reframing": "행동 재구성", + "[Upgrade name 666]Altruistic loop": "이타성의 굴레", + "[Upgrade name 667]A novel idea": "참신한 아이디어", + "[Upgrade name 668]Spelling bees": "맞춤법 대회", + "[Upgrade name 669]Toroid universe": "환상면 세계", + "[Upgrade name 670]Hermetic reconciliation": "긴밀한 화해", + "[Upgrade name 671]His advent": "주의 강림", + "[Upgrade name 672]Split seconds": "찰나의 순간", + "[Upgrade name 673]Flavor itself": "본연의 맛", + "[Upgrade name 674]Light speed limit": "광속 제한", + "[Upgrade name 675]A touch of determinism": "약간의 결정론", + "[Upgrade name 676]This upgrade": "이번 업그레이드", + "[Upgrade name 677]Your biggest fans": "가장 큰 팬", + "[Upgrade name 678]Battenberg biscuits": "바텐베르크 비스킷", + "[Upgrade name 679]Rosette cookies": "로제트 쿠키", + "[Upgrade name 680]Gangmakers": "갱메이커", + "[Upgrade name 681]Welsh cookies": "웨일스 쿠키", + "[Upgrade name 682]Raspberry cheesecake cookies": "라즈베리 치즈케이크 쿠키", + "[Upgrade name 683]Alternate grandmas": "다른 세계의 할머니", + "[Upgrade name 684]Manifest destiny": "명백한 운명", + "[Upgrade name 685]The multiverse in a nutshell": "간단하게 표현한 다중세계", + "[Upgrade name 686]All-conversion": "전체 변환", + "[Upgrade name 687]Multiverse agents": "다중세계 요원", + "[Upgrade name 688]Escape plan": "탈출 계획", + "[Upgrade name 689]Game design": "게임 디자인", + "[Upgrade name 690]Sandbox universes": "샌드박스 세계", + "[Upgrade name 691]Multiverse wars": "다중세계 전쟁", + "[Upgrade name 692]Mobile ports": "이동식 포트", + "[Upgrade name 693]Encapsulated realities": "캡슐에 든 현실", + "[Upgrade name 694]Extrinsic clicking": "외부의 클릭", + "[Upgrade name 695]Universal idling": "보편적 휴식", + "[Upgrade name 696]Perforated mille-feuille cosmos": "구멍 뚫린 밀푀유 우주", + "[Upgrade name 697]Infraverses and superverses": "하위세계와 초세계", + "[Upgrade name 698]Fortune #018": "포춘 #018", + "[Upgrade name 699]Butter biscuit (with butter)": "버터 비스킷 (버터 포함)", + "[Upgrade name 700]Visits": "방문", + "[Upgrade name 701]Reverse-veganism": "역채식주의", + "[Upgrade name 702]Caramel alloys": "캐러멜 합금", + "[Upgrade name 703]The infinity engine": "무한 엔진", + "[Upgrade name 704]Diminishing tax returns": "소득 신고 감소", + "[Upgrade name 705]Apparitions": "환영", + "[Upgrade name 706]Wizard basements": "마법사의 지하실", + "[Upgrade name 707]Prime directive": "최상위 지령", + "[Upgrade name 708]Chromatic cycling": "반음계 순환", + "[Upgrade name 709]Domestic rifts": "내부의 균열", + "[Upgrade name 710]Patience abolished": "인내심 폐지", + "[Upgrade name 711]Delicious pull": "맛있는 견인력", + "[Upgrade name 712]Occam's laser": "오컴의 면도날", + "[Upgrade name 713]On a streak": "연승", + "[Upgrade name 714]A box": "상자", + "[Upgrade name 715]Hacker shades": "해커의 유령", + "[Upgrade name 716]Break the fifth wall": "다섯 번째 벽을 깨다", + "[Upgrade name 717]Cat ladies": "캣 레이디", + "[Upgrade name 718]Milkhelp® lactose intolerance relief tablets": "밀크헬프® 유당불내증 경감 정제", + "[Upgrade name 719]Aura gloves": "오라 장갑", + "[Upgrade name 720]Luminous gloves": "광채의 장갑", + "[Upgrade name 721]Bokkenpootjes": "보케뽀체스", + "[Upgrade name 722]Fat rascals": "패트 라스칼", + "[Upgrade name 723]Ischler cookies": "이슐러 쿠키", + "[Upgrade name 724]Matcha cookies": "말차 쿠키", + "[Upgrade name 725]Earl Grey macarons": "얼그레이 마카롱", + "[Upgrade name 726]Pokey": "감옥", + "[Upgrade name 727]Cashew cookies": "캐슈 쿠키", + "[Upgrade name 728]Milk chocolate cookies": "밀크 초콜릿 쿠키", + "[Upgrade name 729]Brainy grandmas": "똑똑한 할머니", + "[Upgrade name 730]Principled neural shackles": "원칙적 신경 속박", + "[Upgrade name 731]Obey": "복종", + "[Upgrade name 732]A sprinkle of irrationality": "부조리의 세례", + "[Upgrade name 733]Front and back hemispheres": "전방 및 후방 반구", + "[Upgrade name 734]Neural networking": "신경 네트워킹", + "[Upgrade name 735]Cosmic brainstorms": "우주 뇌파", + "[Upgrade name 736]Megatherapy": "메가치료", + "[Upgrade name 737]Synaptic lubricant": "시냅스 윤활제", + "[Upgrade name 738]Psychokinesis": "염력", + "[Upgrade name 739]Spines": "척추", + "[Upgrade name 740]Neuraforming": "뉴라포밍", + "[Upgrade name 741]Epistemological trickery": "인식론적 사기", + "[Upgrade name 742]Every possible idea": "가능한 모든 아이디어", + "[Upgrade name 743]Kitchen cabinets": "부엌 보관장", + "[Upgrade name 744]Cookie mulch": "쿠키 뿌리 덮개", + "[Upgrade name 745]Delicious mineralogy": "맛있는 광물학", + "[Upgrade name 746]N-dimensional assembly lines": "N차원 조립 라인", + "[Upgrade name 747]Cookie Points": "쿠키 포인트", + "[Upgrade name 748]Negatheism": "반신론", + "[Upgrade name 749]Magical realism": "마법 현실주의", + "[Upgrade name 750]Cosmic foreground radiation": "우주 표면 방사선", + "[Upgrade name 751]Arcanized glassware": "달인의 유리 그릇", + "[Upgrade name 752]Portal guns": "포털 총", + "[Upgrade name 753]Timeproof upholstery": "타임프루프 덮개", + "[Upgrade name 754]Employee minification": "직원 최소화", + "[Upgrade name 755]Hyperblack paint": "칠흑 페인트", + "[Upgrade name 756]Silver lining maximization": "밝은 희망 극대화", + "[Upgrade name 757]Multiscale profiling": "다중 척도 프로파일링", + "[Upgrade name 758]PHP containment vats": "PHP 억제 통", + "[Upgrade name 759]Opposite universe": "정반대 세계", + "[Upgrade name 760]The land of dreams": "꿈이 흐르는 땅", + "[Upgrade name 761]Thoughts & prayers": "생각과 기도", + "[Upgrade name 762]Fertile minds": "비옥한 마음", + "[Upgrade name 763]Fortune #019": "포춘 #019", + "[Upgrade name 764]Decillion fingers": "십구 개의 손가락", + "[Upgrade name 765]Aetherice mouse": "에테르쌀 마우스", + "[Upgrade name 766]Kitten admins": "고양이 관리자", + "[Upgrade name 767]Everybutter biscuit": "온버터 비스킷", + "[Upgrade name 768]Unshackled cursors": "해방된 커서", + "[Upgrade name 769]Unshackled grandmas": "해방된 할머니", + "[Upgrade name 770]Unshackled farms": "해방된 농장", + "[Upgrade name 771]Unshackled mines": "해방된 광산", + "[Upgrade name 772]Unshackled factories": "해방된 공장", + "[Upgrade name 773]Unshackled banks": "해방된 은행", + "[Upgrade name 774]Unshackled temples": "해방된 사원", + "[Upgrade name 775]Unshackled wizard towers": "해방된 마법사의 탑", + "[Upgrade name 776]Unshackled shipments": "해방된 수송선", + "[Upgrade name 777]Unshackled alchemy labs": "해방된 연금술 실험실", + "[Upgrade name 778]Unshackled portals": "해방된 포털", + "[Upgrade name 779]Unshackled time machines": "해방된 타임 머신", + "[Upgrade name 780]Unshackled antimatter condensers": "해방된 반물질 응축기", + "[Upgrade name 781]Unshackled prisms": "해방된 프리즘", + "[Upgrade name 782]Unshackled chancemakers": "해방된 행운 제조기", + "[Upgrade name 783]Unshackled fractal engines": "해방된 프랙털 엔진", + "[Upgrade name 784]Unshackled javascript consoles": "해방된 자바스크립트 콘솔", + "[Upgrade name 785]Unshackled idleverses": "해방된 방치세계", + "[Upgrade name 786]Unshackled cortex bakers": "해방된 피질 제과사", + "[Upgrade name 787]Unshackled flavor": "해방된 맛", + "[Upgrade name 788]Unshackled berrylium": "해방된 베릴리움", + "[Upgrade name 789]Unshackled blueberrylium": "해방된 블루베릴리움", + "[Upgrade name 790]Unshackled chalcedhoney": "해방된 옥수꿀", + "[Upgrade name 791]Unshackled buttergold": "해방된 버터골드", + "[Upgrade name 792]Unshackled sugarmuck": "해방된 설탕흙", + "[Upgrade name 793]Unshackled jetmint": "해방된 제트민트", + "[Upgrade name 794]Unshackled cherrysilver": "해방된 체리실버", + "[Upgrade name 795]Unshackled hazelrald": "해방된 헤이즐랄드", + "[Upgrade name 796]Unshackled mooncandy": "해방된 월장석사탕", + "[Upgrade name 797]Unshackled astrofudge": "해방된 아스트로퍼지", + "[Upgrade name 798]Unshackled alabascream": "해방된 설화석고크림", + "[Upgrade name 799]Unshackled iridyum": "해방된 이리디윰", + "[Upgrade name 800]Unshackled glucosmium": "해방된 글루코스뮴", + "[Upgrade name 801]Delicate touch": "섬세한 손길", + "[Upgrade name 802]Steadfast murmur": "완고한 속삭임", + "[Upgrade name 803]Glittering edge": "빛나는 테두리", + "[Upgrade name 804]Distinguished wallpaper assortment": "고급 벽지 모음", + "[Upgrade name 805]Sound test": "사운드 테스트", + "[Upgrade name 806]Jukebox": "주크박스", + "[Upgrade name 807]Dalgona cookies": "달고나 쿠키", + "[Upgrade name 808]Spicy cookies": "매운 쿠키", + "[Upgrade name 809]Smile cookies": "미소 쿠키", + "[Upgrade name 810]Kolachy cookies": "콜라취 쿠키", + "[Upgrade name 811]Gomma cookies": "곰마 쿠키", + "[Upgrade name 812]Vegan cookies": "비건 쿠키", + "[Upgrade name 813]Coyotas": "코요타", + "[Upgrade name 814]Frosted sugar cookies": "냉동 설탕 쿠키", + "[Upgrade name 815]Marshmallow sandwich cookies": "마시멜로 샌드위치 쿠키", + "[Upgrade name 816]Web cookies": "웹 쿠키", + "[Upgrade name 817]Steamed cookies": "스팀 쿠키", + "[Upgrade name 818]Deep-fried cookie dough": "튀긴 쿠키 반죽", + "[Achievement name 0]Wake and bake": "아침에 즐기는 과자", + "[Achievement name 1]Making some dough": "반죽을 만들다", + "[Achievement name 2]So baked right now": "황홀한 베이킹", + "[Achievement name 3]Fledgling bakery": "초보 제과점", + "[Achievement name 4]Affluent bakery": "풍요로운 제과점", + "[Achievement name 5]World-famous bakery": "세계 유명 제과점", + "[Achievement name 6]Cosmic bakery": "우주의 제과점", + "[Achievement name 7]Galactic bakery": "은하의 제과점", + "[Achievement name 8]Universal bakery": "만물의 제과점", + "[Achievement name 9]Timeless bakery": "영원한 제과점", + "[Achievement name 10]Infinite bakery": "무한의 제과점", + "[Achievement name 11]Immortal bakery": "불멸의 제과점", + "[Achievement name 12]Don't stop me now": "나를 막지 마", + "[Achievement name 13]You can stop now": "이제 그만 해도 돼", + "[Achievement name 14]Cookies all the way down": "쿠키는 언제나 거기에 있어", + "[Achievement name 15]Overdose": "중독", + "[Achievement name 16]Casual baking": "간단한 베이킹", + "[Achievement name 17]Hardcore baking": "하드코어 베이킹", + "[Achievement name 18]Steady tasty stream": "변함없는 맛의 흐름", + "[Achievement name 19]Cookie monster": "쿠키 몬스터", + "[Achievement name 20]Mass producer": "대량 생산자", + "[Achievement name 21]Cookie vortex": "쿠키 소용돌이", + "[Achievement name 22]Cookie pulsar": "쿠키 펄서", + "[Achievement name 23]Cookie quasar": "쿠키 퀘이사", + "[Achievement name 24]Oh hey, you're still here": "이런, 아직도 여기 있네", + "[Achievement name 25]Let's never bake again": "다시는 굽지 말자고", + "[Achievement name 26]Sacrifice": "희생", + "[Achievement name 27]Oblivion": "망각", + "[Achievement name 28]From scratch": "처음부터", + "[Achievement name 29]Neverclick": "무클릭", + "[Achievement name 30]Clicktastic": "환상적인 클릭", + "[Achievement name 31]Clickathlon": "클릭 삼종 경기", + "[Achievement name 32]Clickolympics": "클릭 올림픽", + "[Achievement name 33]Clickorama": "클릭 파노라마", + "[Achievement name 34]Click": "클릭", + "[Achievement name 35]Double-click": "더블 클릭", + "[Achievement name 36]Mouse wheel": "마우스 휠", + "[Achievement name 37]Of Mice and Men": "생쥐와 인간", + "[Achievement name 38]The Digital": "디지털", + "[Achievement name 39]Just wrong": "글러 먹었어", + "[Achievement name 40]Grandma's cookies": "할머니의 쿠키", + "[Achievement name 41]Sloppy kisses": "서투른 키스", + "[Achievement name 42]Retirement home": "은퇴 후 집", + "[Achievement name 43]Bought the farm": "농장 구매", + "[Achievement name 44]Reap what you sow": "뿌린 대로 거두리라", + "[Achievement name 45]Farm ill": "농장병", + "[Achievement name 46]Production chain": "생산 체인", + "[Achievement name 47]Industrial revolution": "산업 혁명", + "[Achievement name 48]Global warming": "지구 온난화", + "[Achievement name 49]You know the drill": "파는 법은 알잖아", + "[Achievement name 50]Excavation site": "발굴지", + "[Achievement name 51]Hollow the planet": "행성 뚫기", + "[Achievement name 52]Expedition": "탐험대", + "[Achievement name 53]Galactic highway": "은하 고속도로", + "[Achievement name 54]Far far away": "머나먼 곳", + "[Achievement name 55]Transmutation": "변성", + "[Achievement name 56]Transmogrification": "변형", + "[Achievement name 57]Gold member": "골드 회원", + "[Achievement name 58]A whole new world": "완전한 신세계", + "[Achievement name 59]Now you're thinking": "좋은 생각인걸", + "[Achievement name 60]Dimensional shift": "차원 이동", + "[Achievement name 61]Time warp": "타임 워프", + "[Achievement name 62]Alternate timeline": "평행 세계", + "[Achievement name 63]Rewriting history": "역사를 다시 쓰다", + "[Achievement name 64]One with everything": "모두 하나씩", + "[Achievement name 65]Mathematician": "수학자", + "[Achievement name 66]Base 10": "10진법", + "[Achievement name 67]Golden cookie": "황금 쿠키", + "[Achievement name 68]Lucky cookie": "행운의 쿠키", + "[Achievement name 69]A stroke of luck": "뜻밖의 행운", + "[Achievement name 70]Cheated cookies taste awful": "치트를 쓴 쿠키는 맛이 끔찍해", + "[Achievement name 71]Uncanny clicker": "기분 나쁜 클리커", + "[Achievement name 72]Builder": "건축가", + "[Achievement name 73]Architect": "설계자", + "[Achievement name 74]Enhancer": "강화자", + "[Achievement name 75]Augmenter": "증대자", + "[Achievement name 76]Cookie-dunker": "쿠키 적시기", + "[Achievement name 77]Fortune": "포춘", + "[Achievement name 78]True Neverclick": "진정한 무클릭", + "[Achievement name 79]Elder nap": "장로의 낮잠", + "[Achievement name 80]Elder slumber": "장로의 단잠", + "[Achievement name 81]Elder": "장로", + "[Achievement name 82]Elder calm": "장로의 평온", + "[Achievement name 83]Engineer": "엔지니어", + "[Achievement name 84]Leprechaun": "레프러콘", + "[Achievement name 85]Black cat's paw": "검은 고양이의 발", + "[Achievement name 86]Nihilism": "허무주의", + "[Achievement name 87]Antibatter": "반물질반죽", + "[Achievement name 88]Quirky quarks": "변덕스러운 쿼크", + "[Achievement name 89]It does matter!": "그건 중요한 물질이야!", + "[Achievement name 90]Upgrader": "업그레이더", + "[Achievement name 91]Centennial": "100주년", + "[Achievement name 92]Hardcore": "하드코어", + "[Achievement name 93]Speed baking I": "신속 굽기 I", + "[Achievement name 94]Speed baking II": "신속 굽기 II", + "[Achievement name 95]Speed baking III": "신속 굽기 III", + "[Achievement name 96]Getting even with the oven": "오븐에게 빚을 갚다", + "[Achievement name 97]Now this is pod-smashing": "산산이 조각난 포드", + "[Achievement name 98]Chirped out": "쫓겨나다", + "[Achievement name 99]Follow the white rabbit": "흰 토끼를 따라서", + "[Achievement name 100]Clickasmic": "우주적클릭", + "[Achievement name 101]Friend of the ancients": "고대인의 친구", + "[Achievement name 102]Ruler of the ancients": "고대인의 지배자", + "[Achievement name 103]Wholesome": "유익함", + "[Achievement name 104]Just plain lucky": "단순한 행운", + "[Achievement name 105]Itchscratcher": "긁개", + "[Achievement name 106]Wrinklesquisher": "주름파쇄기", + "[Achievement name 107]Moistburster": "수분폭발기", + "[Achievement name 108]Spooky cookies": "으스스한 쿠키", + "[Achievement name 109]Coming to town": "마을 도착", + "[Achievement name 110]All hail Santa": "산타 만세", + "[Achievement name 111]Let it snow": "눈이 내린다", + "[Achievement name 112]Oh deer": "오, 사슴", + "[Achievement name 113]Sleigh of hand": "손 썰매", + "[Achievement name 114]Reindeer sleigher": "순록 썰매 조종수", + "[Achievement name 115]Perfected agriculture": "완벽한 농업", + "[Achievement name 116]Ultimate automation": "궁극의 자동화", + "[Achievement name 117]Can you dig it": "알겠니", + "[Achievement name 118]Type II civilization": "제2유형 문명", + "[Achievement name 119]Gild wars": "황금 전쟁", + "[Achievement name 120]Brain-split": "분단뇌", + "[Achievement name 121]Time duke": "시간의 군주", + "[Achievement name 122]Molecular maestro": "분자의 마에스트로", + "[Achievement name 123]Lone photon": "단독 광자", + "[Achievement name 124]Dazzling glimmer": "눈부신 미광", + "[Achievement name 125]Blinding flash": "눈부신 불빛", + "[Achievement name 126]Unending glow": "끝없는 빛", + "[Achievement name 127]Lord of Constructs": "건설의 제왕", + "[Achievement name 128]Lord of Progress": "진보의 제왕", + "[Achievement name 129]Bicentennial": "200주년", + "[Achievement name 130]Lovely cookies": "사랑스러운 쿠키", + "[Achievement name 131]Centennial and a half": "150주년", + "[Achievement name 132]Tiny cookie": "작은 쿠키", + "[Achievement name 133]You win a cookie": "쿠키 획득", + "[Achievement name 134]Click delegator": "클릭 대리인", + "[Achievement name 135]Gushing grannies": "솟구치는 할머니", + "[Achievement name 136]I hate manure": "나는 거름이 싫어", + "[Achievement name 137]Never dig down": "파면 안 돼", + "[Achievement name 138]The incredible machine": "요절복통 기계", + "[Achievement name 139]And beyond": "저 너머로", + "[Achievement name 140]Magnum Opus": "대표작", + "[Achievement name 141]With strange eons": "기이한 영겁 속에서", + "[Achievement name 142]Spacetime jigamaroo": "시공간 발명품", + "[Achievement name 143]Supermassive": "초질량", + "[Achievement name 144]Praise the sun": "태양을 찬양하라", + "[Achievement name 145]Clickageddon": "클릭게돈", + "[Achievement name 146]Clicknarok": "클릭나로크", + "[Achievement name 147]Extreme polydactyly": "심각한 다지증", + "[Achievement name 148]Dr. T": "닥터 T", + "[Achievement name 149]The old never bothered me anyway": "나이 따윈 두렵지 않아", + "[Achievement name 150]Homegrown": "국산", + "[Achievement name 151]Technocracy": "테크노크라시", + "[Achievement name 152]The center of the Earth": "지구의 중심", + "[Achievement name 153]We come in peace": "우리는 싸우러 온 것이 아닙니다", + "[Achievement name 154]The secrets of the universe": "세계의 비밀", + "[Achievement name 155]Realm of the Mad God": "미친 신의 영역", + "[Achievement name 156]Forever and ever": "언제까지나", + "[Achievement name 157]Walk the planck": "플랑크 걷기", + "[Achievement name 158]Rise and shine": "좋은 아침", + "[Achievement name 159]God complex": "신 콤플렉스", + "[Achievement name 160]Third-party": "서드파티", + "[Achievement name 161]Dematerialize": "비물질화", + "[Achievement name 162]Nil zero zilch": "무, 영, 공허", + "[Achievement name 163]Transcendence": "초월", + "[Achievement name 164]Obliterate": "제거", + "[Achievement name 165]Negative void": "부정의 공허", + "[Achievement name 166]The hunt is on": "사냥을 시작한다", + "[Achievement name 167]Egging on": "선동", + "[Achievement name 168]Mass Easteria": "집단 부활절 증후군", + "[Achievement name 169]Hide & seek champion": "숨바꼭질 챔피언", + "[Achievement name 170]What's in a name": "이름이 뭐가 중요해", + "[Achievement name 171]Pretty penny": "커다란 돈", + "[Achievement name 172]Fit the bill": "안성맞춤", + "[Achievement name 173]A loan in the dark": "어둠 속의 대출", + "[Achievement name 174]Need for greed": "니드 포 그리드", + "[Achievement name 175]It's the economy, stupid": "문제는 경제야, 바보야", + "[Achievement name 176]Your time to shrine": "성지 순례", + "[Achievement name 177]Shady sect": "수상한 종파", + "[Achievement name 178]New-age cult": "뉴에이지 숭배교", + "[Achievement name 179]Organized religion": "조직화된 종교", + "[Achievement name 180]Fanaticism": "광신주의", + "[Achievement name 181]Bewitched": "마법에 걸리다", + "[Achievement name 182]The sorcerer's apprentice": "마법사의 제자", + "[Achievement name 183]Charms and enchantments": "부적과 마법", + "[Achievement name 184]Curses and maledictions": "저주와 악담", + "[Achievement name 185]Magic kingdom": "마법 왕국", + "[Achievement name 186]Vested interest": "기득권", + "[Achievement name 187]New world order": "신세계의 질서", + "[Achievement name 188]Hocus pocus": "호쿠스 포쿠스", + "[Achievement name 189]Finger clickin' good": "손가락을 클릭하는 맛", + "[Achievement name 190]Panic at the bingo": "빙고의 충격", + "[Achievement name 191]Rake in the dough": "반죽방석에 앉다", + "[Achievement name 192]Quarry on": "계속 캐", + "[Achievement name 193]Yes I love technology": "나는 기술을 사랑해", + "[Achievement name 194]Paid in full": "일시불", + "[Achievement name 195]Church of Cookiology": "쿠키교단", + "[Achievement name 196]Too many rabbits, not enough hats": "토끼는 너무 많은데 모자가 부족해", + "[Achievement name 197]The most precious cargo": "가장 소중한 화물", + "[Achievement name 198]The Aureate": "황금빛", + "[Achievement name 199]Ever more hideous": "극도의 흉측함", + "[Achievement name 200]Be kind, rewind": "되감아 돌려주세요", + "[Achievement name 201]Infinitesimal": "극소량", + "[Achievement name 202]A still more glorious dawn": "더욱 눈부신 새벽", + "[Achievement name 203]Rebirth": "재탄생", + "[Achievement name 204]Here you go": "여기야", + "[Achievement name 205]Resurrection": "부활", + "[Achievement name 206]Reincarnation": "환생", + "[Achievement name 207]Endless cycle": "끝없는 순환", + "[Achievement name 208]The agemaster": "시대의 주인", + "[Achievement name 209]To oldly go": "노화의 출발", + "[Achievement name 210]Gardener extraordinaire": "탁월한 정원사", + "[Achievement name 211]Tectonic ambassador": "구조적 대사", + "[Achievement name 212]Rise of the machines": "기계의 반란", + "[Achievement name 213]Acquire currency": "통용 화폐", + "[Achievement name 214]Zealotry": "열성", + "[Achievement name 215]The wizarding world": "마법의 세계", + "[Achievement name 216]Parsec-masher": "파섹 분쇄기", + "[Achievement name 217]The work of a lifetime": "평생의 과업", + "[Achievement name 218]A place lost in time": "시간 속에 잊혀진 장소", + "[Achievement name 219]Heat death": "열사", + "[Achievement name 220]Microcosm": "소우주", + "[Achievement name 221]Bright future": "밝은 미래", + "[Achievement name 222]Here be dragon": "용의 거처", + "[Achievement name 223]How?": "어떻게?", + "[Achievement name 224]The land of milk and cookies": "젖과 쿠키가 흐르는 땅", + "[Achievement name 225]He who controls the cookies controls the universe": "쿠키를 다스리는 자가 세계를 다스린다", + "[Achievement name 226]Tonight on Hoarders": "수집광의 저녁", + "[Achievement name 227]Are you gonna eat all that?": "전부 다 먹을 거야?", + "[Achievement name 228]We're gonna need a bigger bakery": "더 큰 제과점이 필요하겠구나", + "[Achievement name 229]In the mouth of madness": "광기의 입 속", + "[Achievement name 230]Brought to you by the letter
": "글자가 보냅니다
", + "[Achievement name 231]A world filled with cookies": "쿠키로 가득한 세상", + "[Achievement name 232]When this baby hits 36 quadrillion cookies per hour": "이 아기가 한 시간에 3경6천조 개의 쿠키를 만들 때", + "[Achievement name 233]Fast and delicious": "빠르고 맛있다", + "[Achievement name 234]Cookiehertz : a really, really tasty hertz": "쿠키헤르츠: 정말, 정말 맛있는 헤르츠", + "[Achievement name 235]Woops, you solved world hunger": "이런, 세상의 기아 문제를 해겼했군요", + "[Achievement name 236]Turbopuns": "터보펀", + "[Achievement name 237]Faster menner": "더 빠르게", + "[Achievement name 238]And yet you're still hungry": "아직도 배고프구나", + "[Achievement name 239]The Abakening": "제과의 각성", + "[Achievement name 240]There's really no hard limit to how long these achievement names can be and to be quite honest I'm rather curious to see how far we can go.
Adolphus W. Green (1844–1917) started as the Principal of the Groton School in 1864. By 1865, he became second assistant librarian at the New York Mercantile Library; from 1867 to 1869, he was promoted to full librarian. From 1869 to 1873, he worked for Evarts, Southmayd & Choate, a law firm co-founded by William M. Evarts, Charles Ferdinand Southmayd and Joseph Hodges Choate. He was admitted to the New York State Bar Association in 1873.
Anyway, how's your day been?": "업적 이름의 길이에는 사실 정해진 한도가 없어서, 솔직히 얼마나 긴 이름을 만들 수 있을지 궁금합니다.
아돌푸스 W. 그린(1844-1917)은 1864년 그로튼 스쿨의 교장으로 커리어를 시작했습니다. 1865년에는 뉴욕 상업도서관의 제2 보조 사서로 일했고, 이후 정식 사서로 승진해 1867년부터 1869년까지 근무했습니다. 그리고 1869년부터 1873년까지 윌리엄 M. 에버트, 찰스 페르디난드 사우스메이드, 조셉 호지즈 초트가 공동 창립한 법률 사무소에서 근무했습니다. 1873년에는 뉴욕주 변호사 협회에 가입했죠.
그건 그렇고, 오늘 하루는 어땠나요?", + "[Achievement name 241]Fast": "신속", + "[Achievement name 242]Bicentennial and a half": "250주년", + "[Achievement name 243]Tabloid addiction": "타블로이드 중독", + "[Achievement name 244]Clickastrophe": "클릭재앙", + "[Achievement name 245]Clickataclysm": "클릭대변동", + "[Achievement name 246]Thumbs, phalanges, metacarpals": "손가락, 손가락뼈, 손바닥뼈", + "[Achievement name 247]Polymath": "박학다식", + "[Achievement name 248]The elder scrolls": "엘더 스크롤", + "[Achievement name 249]To crumbs, you say?": "부스러기라고?", + "[Achievement name 250]Seedy business": "더러운 사업", + "[Achievement name 251]Freak fracking": "기이한 시추", + "[Achievement name 252]Modern times": "모던 타임즈", + "[Achievement name 253]The nerve of war": "신경전", + "[Achievement name 254]Wololo": "올로로", + "[Achievement name 255]And now for my next trick, I'll need a volunteer from the audience": "다음 마술에는 관객 중 한 명이 필요합니다", + "[Achievement name 256]It's not delivery": "택배가 아니야", + "[Achievement name 257]Gold, Jerry! Gold!": "금이야, 제리! 금!", + "[Achievement name 258]Forbidden zone": "금지 구역", + "[Achievement name 259]cookie clicker forever and forever a hundred years cookie clicker, all day long forever, forever a hundred times, over and over cookie clicker adventures dot com": "쿠키 클리커는 영원히, 영원히 수백 년 동안 쿠키 클리커일 것이고, 이후로도 내내, 수백 번을 계속해서 쿠키 클리커의 모험은 계속됩니다", + "[Achievement name 260]Scientists baffled everywhere": "사방에서 좌절하는 과학자들", + "[Achievement name 261]Harmony of the spheres": "구체의 조화", + "[Achievement name 262]Last Chance to See": "목격할 마지막 기회", + "[Achievement name 263]Early bird": "일찍 일어나는 새", + "[Achievement name 264]Fading luck": "사라지는 행운", + "[Achievement name 265]Eldeer": "장로 순록", + "[Achievement name 266]Dude, sweet": "이거 달콤한걸", + "[Achievement name 267]Sugar rush": "설탕 러시", + "[Achievement name 268]Year's worth of cavities": "일 년 동안의 충치", + "[Achievement name 269]Hand-picked": "손수 수확하다", + "[Achievement name 270]Sugar sugar": "설탕, 설탕", + "[Achievement name 271]All-natural cane sugar": "천연 지팡이 설탕", + "[Achievement name 272]Sweetmeats": "설탕절임", + "[Achievement name 273]Tricentennial": "300주년", + "[Achievement name 274]Knead for speed": "속도를 향한 반죽", + "[Achievement name 275]Well the cookies start coming and they don't stop coming": "쿠키가 계속 생기는데 끝이 보이지 않아", + "[Achievement name 276]I don't know if you've noticed but all these icons are very slightly off-center": "알아챘는지 모르겠지만, 아이콘은 전부 약간 중심이 어긋나 있답니다", + "[Achievement name 277]The proof of the cookie is in the baking": "쿠키의 맛은 구워봐야 안다", + "[Achievement name 278]If it's worth doing, it's worth overdoing": "한 번 할 가치가 있는 것은 계속 할 가치가 있다", + "[Achievement name 279]The dreams in which I'm baking are the best I've ever had": "내가 베이킹하는 꿈은 내 인생 최고의 꿈이야", + "[Achievement name 280]Set for life": "경제적 자유", + "[Achievement name 281]You and the beanstalk": "너와 콩나무", + "[Achievement name 282]Romancing the stone": "돌과 사랑에 빠지다", + "[Achievement name 283]Ex machina": "엑스 마키나", + "[Achievement name 284]And I need it now": "지금 당장 필요해", + "[Achievement name 285]Pray on the weak": "약자를 위해 기도하다", + "[Achievement name 286]It's a kind of magic": "마법의 일종", + "[Achievement name 287]Make it so": "종을 쳐라", + "[Achievement name 288]All that glitters is gold": "모든 반짝이는 금이란다", + "[Achievement name 289]Here he comes": "그분이 온다", + "[Achievement name 290]Way back then": "아주 옛날에", + "[Achievement name 291]Exotic matter": "외계 물질", + "[Achievement name 292]At the end of the tunnel": "터널의 끝에서", + "[Achievement name 293]Click (starring Adam Sandler)": "클릭 (아담 샌들러 출연)", + "[Achievement name 294]Frantiquities": "광란골동품", + "[Achievement name 295]Overgrowth": "과성장", + "[Achievement name 296]Sedimentalism": "퇴적주의", + "[Achievement name 297]Labor of love": "봉사 활동", + "[Achievement name 298]Reverse funnel system": "역깔때기 시스템", + "[Achievement name 299]Thus spoke you": "너는 이렇게 말했다", + "[Achievement name 300]Manafest destiny": "마나의 운명", + "[Achievement name 301]Neither snow nor rain nor heat nor gloom of night": "비가 오나, 눈이 오나, 더위에도, 어두운 밤에도", + "[Achievement name 302]I've got the Midas touch": "미다스의 손을 가진 자", + "[Achievement name 303]Which eternal lie": "영원히 누워 있으리", + "[Achievement name 304]Déjà vu": "데자뷰", + "[Achievement name 305]Powers of Ten": "10의 힘", + "[Achievement name 306]Now the dark days are gone": "이제 어두운 나날은 안녕", + "[Achievement name 307]Freaky jazz hands": "기이한 재즈 핸즈", + "[Achievement name 308]Methuselah": "므두셀라", + "[Achievement name 309]Huge tracts of land": "거대한 면적의 땅", + "[Achievement name 310]D-d-d-d-deeper": "기, 기, 기, 깊이", + "[Achievement name 311]Patently genius": "명백한 천재", + "[Achievement name 312]A capital idea": "멋진 아이디어", + "[Achievement name 313]It belongs in a bakery": "그건 제과점의 소유입니다", + "[Achievement name 314]Motormouth": "수다쟁이", + "[Achievement name 315]Been there done that": "나도 그런 적이 있지", + "[Achievement name 316]Phlogisticated substances": "플로지스톤 물체", + "[Achievement name 317]Bizarro world": "이상한 세계", + "[Achievement name 318]The long now": "긴 현재", + "[Achievement name 319]Chubby hadrons": "통통한 하드론", + "[Achievement name 320]Palettable": "팔레트테이블", + "[Achievement name 321]Bibbidi-bobbidi-boo": "비비디 바비디 부", + "[Achievement name 322]I'm the wiz": "난 마법사다", + "[Achievement name 323]A wizard is you": "네가 마법사란다", + "[Achievement name 324]Four-leaf cookie": "네잎 쿠키", + "[Achievement name 325]Lucked out": "운수대통", + "[Achievement name 326]What are the odds": "세상에 이런 일이", + "[Achievement name 327]Grandma needs a new pair of shoes": "할머니에겐 새 신발이 필요해", + "[Achievement name 328]Million to one shot, doc": "가망이 없어요, 선생님", + "[Achievement name 329]As luck would have it": "우연", + "[Achievement name 330]Ever in your favor": "당신에게 행운이 있기를", + "[Achievement name 331]Be a lady": "행운의 여신이여", + "[Achievement name 332]Dicey business": "위험한 사업", + "[Achievement name 333]Fingers crossed": "행운을 빌다", + "[Achievement name 334]Just a statistic": "단순한 통계", + "[Achievement name 335]Murphy's wild guess": "머피의 엉뚱한 추측", + "[Achievement name 336]Let's leaf it at that": "그대로 두자", + "[Achievement name 337]The ultimate clickdown": "궁극의 클릭다운", + "[Achievement name 338]Aged well": "원숙함", + "[Achievement name 339]101st birthday": "101번째 생일", + "[Achievement name 340]But wait 'til you get older": "나이가 들 때까지 기다리렴", + "[Achievement name 341]Harvest moon": "한가위 보름달", + "[Achievement name 342]Mine?": "광산?", + "[Achievement name 343]In full gear": "최대 가동", + "[Achievement name 344]Treacle tart economics": "트리클 타르트 경제", + "[Achievement name 345]Holy cookies, grandma!": "할머니 맙소사!", + "[Achievement name 346]The Prestige": "명성", + "[Achievement name 347]That's just peanuts to space": "우주 앞의 땅콩", + "[Achievement name 348]Worth its weight in lead": "동일한 양의 납과 똑같은 가치", + "[Achievement name 349]What happens in the vortex stays in the vortex": "소용돌이 속의 소용돌이에서는 무슨 일이 일어날까", + "[Achievement name 350]Invited to yesterday's party": "어제의 파티에 초대받다", + "[Achievement name 351]Downsizing": "축소", + "[Achievement name 352]My eyes": "내 눈", + "[Achievement name 353]Maybe a chance in hell, actually": "어쩌면 가망이 조금은 있을 거야", + "[Achievement name 354]Make like a tree": "나무처럼", + "[Achievement name 355]Cave story": "동굴 이야기", + "[Achievement name 356]In-cog-neato": "인코그니토", + "[Achievement name 357]Save your breath because that's all you've got left": "남은 건 숨결뿐이니 아끼도록 해", + "[Achievement name 358]Vengeful and almighty": "복수심과 전능함", + "[Achievement name 359]Spell it out for you": "간단히 설명해 줄게", + "[Achievement name 360]Space space space space space": "우주 우주 우주 우주 우주", + "[Achievement name 361]Don't get used to yourself, you're gonna have to change": "자신에게 익숙해지지 마라, 곧 변하게 될 테니", + "[Achievement name 362]Objects in the mirror dimension are closer than they appear": "사물이 거울에 보이는 것보다 가까이 있음", + "[Achievement name 363]Groundhog day": "반복되는 날", + "[Achievement name 364]A matter of perspective": "관점의 문제", + "[Achievement name 365]Optical illusion": "시각적 환상", + "[Achievement name 366]Jackpot": "잭팟", + "[Achievement name 367]So much to do so much to see": "많은 볼거리와 할 일", + "[Achievement name 368]Running with scissors": "무모한 행동", + "[Achievement name 369]Rarefied air": "희박한 공기", + "[Achievement name 370]Push it to the limit": "한계까지 밀어붙이다", + "[Achievement name 371]Green cookies sleep furiously": "초록 쿠키들이 격렬하게 잔다", + "[Achievement name 372]Panic! at Nabisco": "패닉! 앳 나비스코", + "[Achievement name 373]Bursting at the seams": "터지기 직전", + "[Achievement name 374]Just about full": "거의 다 찼군", + "[Achievement name 375]Hungry for more": "가시지 않는 허기", + "[Achievement name 376]All the other kids with the pumped up clicks": "멋진 클릭을 가진 녀석들", + "[Achievement name 377]One...more...click...": "한 번...더...클릭...", + "[Achievement name 378]Botany enthusiast": "식물광", + "[Achievement name 379]Green, aching thumb": "노력하는 식물 재배가", + "[Achievement name 380]In the garden of Eden (baby)": "에덴의 정원에서 (자기야)", + "[Achievement name 381]Keeper of the conservatory": "온실 관리자", + "[Achievement name 382]Seedless to nay": "말할 씨앗도 없이", + "[Achievement name 383]You get nothing": "네 몫은 없어", + "[Achievement name 384]Humble rebeginnings": "겸허한 재시작", + "[Achievement name 385]The end of the world": "세계의 끝", + "[Achievement name 386]Oh, you're back": "아, 돌아왔구나", + "[Achievement name 387]Lazarus": "라자루스", + "[Achievement name 388]Leisurely pace": "느긋한 속도", + "[Achievement name 389]Hypersonic": "하이퍼소닉", + "[Achievement name 390]Feed me, Orteil": "먹여줘, Orteil", + "[Achievement name 391]And then what?": "이제 어쩌지?", + "[Achievement name 392]Tricentennial and a half": "350주년", + "[Achievement name 393]Quadricentennial": "400주년", + "[Achievement name 394]Quadricentennial and a half": "450주년", + "[Achievement name 395]Quincentennial": "500주년", + "[Achievement name 396]Maillard reaction": "메일라드 반응", + "[Achievement name 397]When the cookies ascend just right": "적절한 시기의 쿠키 계승", + "[Achievement name 398]With her finger and her thumb": "그녀의 손가락과 엄지로", + "[Achievement name 399]Defense of the ancients": "디펜스 오브 디 에인션츠", + "[Achievement name 400]Sharpest tool in the shed": "헛간의 가장 날카로운 도구", + "[Achievement name 401]Hey now, you're a rock": "안녕, 바위로구나", + "[Achievement name 402]Break the mold": "틀을 부수다", + "[Achievement name 403]Get the show on, get paid": "일을 시작하고 돈을 받자", + "[Achievement name 404]My world's on fire, how about yours": "내 세계는 불타고 있는데, 너희 세계는 어떠니", + "[Achievement name 405]The meteor men beg to differ": "메테오 맨의 생각은 다르다네", + "[Achievement name 406]Only shooting stars": "단순한 별똥별", + "[Achievement name 407]We could all use a little change": "모두에게 필요한 약간의 변화", + "[Achievement name 408]Your brain gets smart but your head gets dumb": "뇌가 똑똑해질수록 머리가 멍청해진다", + "[Achievement name 409]The years start coming": "세월이 덮쳐온다", + "[Achievement name 410]What a concept": "놀라운 소식", + "[Achievement name 411]You'll never shine if you don't glow": "빛을 내지 못한다면 빛나지 못할 거야", + "[Achievement name 412]You'll never know if you don't go": "가보지 않는다면 영영 모를 거야", + "[Achievement name 413]Self-contained": "자급자족", + "[Achievement name 414]Threw you for a loop": "루프에 빠지다", + "[Achievement name 415]The sum of its parts": "부분의 합계", + "[Achievement name 416]Bears repeating": "반복을 견디다", + "[Achievement name 417]More of the same": "동일 반복", + "[Achievement name 418]Last recurse": "마지막 반복", + "[Achievement name 419]Out of one, many": "하나로 이루어진 여럿", + "[Achievement name 420]An example of recursion": "반복의 예시", + "[Achievement name 421]For more information on this achievement, please refer to its title": "이 업적에 대한 자세한 정보는 제목을 참고하세요", + "[Achievement name 422]I'm so meta, even this achievement": "나는 이 업적조차 초월했지", + "[Achievement name 423]Never get bored": "언제나 신선해", + "[Achievement name 424]The needs of the many": "다수의 수요", + "[Achievement name 425]Eating its own": "자신을 먹다", + "[Achievement name 426]We must go deeper": "더 깊이 가야 해", + "[Achievement name 427]Sierpinski rhomboids": "시어핀스키 능형근", + "[Achievement name 428]Gotta go fast": "빨리 가야 해", + "[Achievement name 429]I think it's safe to say you've got it made": "해냈다고 말해도 괜찮을 것 같아", + "[Achievement name 430]Renaissance baker": "르네상스 제과사", + "[Achievement name 431]Veteran": "베테랑", + "[Achievement name 432]Thick-skinned": "두꺼운 피부", + "[Achievement name 433]F12": "F12", + "[Achievement name 434]Variable success": "다양한 성공", + "[Achievement name 435]No comments": "노코멘트", + "[Achievement name 436]Up to code": "규정", + "[Achievement name 437]Works on my machine": "제 컴퓨터에선 작동하거든요", + "[Achievement name 438]Technical debt": "기술 부채", + "[Achievement name 439]Mind your language": "말조심", + "[Achievement name 440]Inconsolable": "의기소침", + "[Achievement name 441]Closure": "폐쇄", + "[Achievement name 442]Dude what if we're all living in a simulation like what if we're all just code on a computer somewhere": "우리가 모두 시뮬레이션 세계에 살고 있고 컴퓨터 속의 단순한 코드일 뿐이라면 어떨까", + "[Achievement name 443]Taking the back streets": "잘못된 길을 가다", + "[Achievement name 444]Inherited prototype": "상속 프로토타입", + "[Achievement name 445]A model of document object": "문서 객체 모델", + "[Achievement name 446]First-class citizen": "1등 시민", + "[Achievement name 447]Alexandria": "알렉산드리아", + "[Achievement name 448]Bake him away, toys": "얘들아, 구워버려", + "[Achievement name 449]You're #1 so why try harder": "1등인데 왜 더 노력해야 하지", + "[Achievement name 450]Haven't even begun to peak": "아직 정상에 오르지 못했어", + "[Achievement name 451]A sometimes food": "가끔 즐기는 음식", + "[Achievement name 452]Not enough of a good thing": "다다익선", + "[Achievement name 453]Horn of plenty": "풍요의 뿔", + "[Achievement name 454]Smurf account": "부계정", + "[Achievement name 455]If at first you don't succeed": "처음 성공하지 못했다면", + "[Achievement name 456]O Fortuna": "오 포르투나", + "[Achievement name 457]Initial public offering": "공모주", + "[Achievement name 458]Rookie numbers": "초보의 숫자", + "[Achievement name 459]No nobility in poverty": "가난은 고귀하지 않아", + "[Achievement name 460]Full warehouses": "가득 찬 창고", + "[Achievement name 461]Make my day": "좋았어", + "[Achievement name 462]Buy buy buy": "사고, 사고, 또 사고", + "[Achievement name 463]Gaseous assets": "기체성 자산", + "[Achievement name 464]Pyramid scheme": "다단계", + "[Achievement name 465]Jellicles": "젤리클", + "[Achievement name 466]Quincentennial and a half": "550주년", + "[Achievement name 467]What did we even eat before these": "쿠키 이전엔 대체 뭘 먹고 산 거야", + "[Achievement name 468]Heavy flow": "커다란 흐름", + "[Achievement name 469]More you say?": "더 할 말 있어?", + "[Achievement name 470]Large and in charge": "시끄러운 뚱보", + "[Achievement name 471]Absolutely stuffed": "완전히 가득 찼어", + "[Achievement name 472]It's only wafer-thin": "아슬아슬", + "[Achievement name 473]Clickety split": "딸깍딸깍", + "[Achievement name 474]Gotta hand it to you": "네게 전해줄게", + "[Achievement name 475]Okay boomer": "알겠어 꼰대야", + "[Achievement name 476]Overripe": "과숙성", + "[Achievement name 477]Rock on": "즐겨", + "[Achievement name 478]Self-manmade man": "자체 인조 인간", + "[Achievement name 479]Checks out": "체크아웃", + "[Achievement name 480]Living on a prayer": "기도로 이어가는 삶", + "[Achievement name 481]Higitus figitus migitus mum": "히기터스 피기터스 미기터스 멈", + "[Achievement name 482]The incredible journey": "믿기 힘든 여정", + "[Achievement name 483]Just a phase": "하나의 과정", + "[Achievement name 484]Don't let me leave, Murph": "날 보내지 마, 머피", + "[Achievement name 485]Caveman to cosmos": "원시인에서 우주까지", + "[Achievement name 486]Particular tastes": "독특한 취향", + "[Achievement name 487]A light snack": "빛처럼 가벼운 간식", + "[Achievement name 488]Tempting fate": "매력적인 운명", + "[Achievement name 489]Tautological": "동의어", + "[Achievement name 490]Curly braces": "중괄호", + "[Achievement name 491]Seven horseshoes": "일곱 개의 편자", + "[Achievement name 492]Olden days": "옛 시절", + "[Achievement name 493]The devil's workshop": "악마의 작업장", + "[Achievement name 494]In the green": "혈기왕성", + "[Achievement name 495]Mountain out of a molehill, but like in a good way": "과장이긴 해도 괜찮은 과장이야", + "[Achievement name 496]The wheels of progress": "진보의 수레바퀴", + "[Achievement name 497]That's rich": "똥 묻은 개가 돈 묻은 개 나무란다", + "[Achievement name 498]Preaches and cream": "설교와 크림", + "[Achievement name 499]Magic thinking": "마법적 사고", + "[Achievement name 500]Is there life on Mars?": "화성에는 생명체가 있을까?", + "[Achievement name 501]Bad chemistry": "나쁜 궁합", + "[Achievement name 502]Reduced to gibbering heaps": "횡설수설하는 바보들이 되다", + "[Achievement name 503]Back already?": "벌써 돌아왔나?", + "[Achievement name 504]Nuclear throne": "핵의 왕좌", + "[Achievement name 505]Making light of the situation": "빛보다 빠르게 해치웠어", + "[Achievement name 506]Flip a cookie. Chips, I win. Crust, you lose.": "쿠키를 뒤집어서 칩이 나오면 내가 이기고, 크러스트가 나오면 네가 지는 거야.", + "[Achievement name 507]In and of itself": "본질", + "[Achievement name 508]Duck typing": "덕 타이핑", + "[Achievement name 509]They'll never know what hit 'em": "깜짝 놀랄 거다", + "[Achievement name 510]Well-versed": "익숙한 세상", + "[Achievement name 511]Ripe for the picking": "무르익었으니 수확해 볼까", + "[Achievement name 512]Unreal": "비현실적", + "[Achievement name 513]Once you've seen one": "하나만 봐도 알지", + "[Achievement name 514]Spoils and plunder": "전리품과 약탈", + "[Achievement name 515]Nobody exists on purpose, nobody belongs anywhere": "목적이 있어 존재하는 자가 없듯, 어딘가에 속한 자도 없다", + "[Achievement name 516]Hyperspace expressway": "초공간 고속도로", + "[Achievement name 517]Versatile": "다재다능", + "[Achievement name 518]You are inevitable": "피할 수 없는 그대", + "[Achievement name 519]Away from this place": "이곳을 떠나", + "[Achievement name 520]Everywhere at once": "편재", + "[Achievement name 521]Reject reality, substitute your own": "현실을 거부하고 스스로 만들어라", + "[Achievement name 522]Fringe": "변두리", + "[Achievement name 523]Coherence": "일관성", + "[Achievement name 524]Earth-616": "지구-616", + "[Achievement name 525]Strange topologies": "기묘한 배치", + "[Achievement name 526]Grand design": "거대한 계획", + "[Achievement name 527]Ecumenopolis": "세계 도시", + "[Achievement name 528]The full picture": "큰 그림", + "[Achievement name 529]When there's nothing left to add": "더 추가할 것이 없다", + "[Achievement name 530]Sexcentennial": "600주년", + "[Achievement name 531]Keep going until I say stop": "멈추라고 할 때까지 계속해", + "[Achievement name 532]But I didn't say stop, did I?": "멈추라고 한 적 없잖아, 그렇지?", + "[Achievement name 533]With unrivaled fervor": "독보적인 열정", + "[Achievement name 534]Think big": "커다란 야망", + "[Achievement name 535]Hypersize me": "크기 뻥튀기", + "[Achievement name 536]Max capacity": "최대 생산량", + "[Achievement name 537]Liquid assets": "유동 자산", + "[Achievement name 538]Stifling the press": "숨막히는 압박", + "[Achievement name 539]It's big brain time": "신중하게 생각할 시간", + "[Achievement name 540]Just my imagination": "단순한 상상", + "[Achievement name 541]Now there's an idea": "아이디어가 떠올랐어", + "[Achievement name 542]The organ that named itself": "스스로의 이름을 딴 장기", + "[Achievement name 543]Gyrification": "피질 주름", + "[Achievement name 544]A trademarked portmanteau of \"imagination\" and \"engineering\"": "\"상상\" 및 \"엔지니어링\"의 상표 등록 혼합체", + "[Achievement name 545]Mindfulness": "명상", + "[Achievement name 546]The 10% myth": "10%의 신화", + "[Achievement name 547]Don't think about it too hard": "너무 어렵게 생각하지 마", + "[Achievement name 548]Though fools seldom differ": "바보들은 구분을 못해", + "[Achievement name 549]Looking kind of dumb": "조금 멍청해 보이는데", + "[Achievement name 550]A beautiful mind": "뷰티풀 마인드", + "[Achievement name 551]Cardinal synapses": "주요 시냅스", + "[Achievement name 552]Positive thinking": "긍정적 사고", + "[Achievement name 553]The thought that counts": "마음이 중요해", + "[Achievement name 554]Unthinkable": "상상 이상", + "[Achievement name 555]Gifted": "재능", + "[Achievement name 556]They moistly come at night": "밤에 오는 축축한 손님", + "[Achievement name 557]It's grown on you": "점점 마음에 들어", + "[Achievement name 558]Don't let the walls cave in on you": "벽에 파묻히지 마", + "[Achievement name 559]Replaced by robots": "로봇에게 대체되다", + "[Achievement name 560]Financial prodigy": "경제적 영재", + "[Achievement name 561]And I will pray to a big god": "신에게 기도하리라", + "[Achievement name 562]Shosple Colupis": "쇼스플 콜루피스", + "[Achievement name 563]False vacuum": "가짜 진공", + "[Achievement name 564]Metallic taste": "금속성 맛", + "[Achievement name 565]Swiss cheese": "스위스 치즈", + "[Achievement name 566]But the future refused to change": "하지만 미래는 변하기 싫어하는걸", + "[Achievement name 567]What's the dark matter with you": "대체 뭐가 문제야", + "[Achievement name 568]Enlightenment": "계몽", + "[Achievement name 569]Never tell me the odds": "확률 이야기는 그만둬", + "[Achievement name 570]Blowing an Apollonian gasket": "아폴로니안 개스킷 날리기", + "[Achievement name 571]Get with the program": "마음을 다잡고", + "[Achievement name 572]Lost your cosmic marbles": "잃어버린 우주 구슬", + "[Achievement name 573]By will alone I set my mind in motion": "스스로 내 마음을 정했지", + "[Achievement name 574]Ain't that a click in the head": "깜짝 놀랄 클릭이 떠올랐어", + "[Achievement name 575]Sexcentennial and a half": "650주년", + "[Achievement name 576]I am speed": "내가 곧 속도이다", + "[Achievement name 577]And on and on": "쉴 틈은 없어", + "[Achievement name 578]Fake it till you bake it": "구울 때까지는 속여라", + "[Achievement name 579]History in the baking": "제과 속 역사", + "[Achievement name 580]Baby it's old outside": "아가야 밖은 늙단다", + "[Achievement name 581]Myriad": "무궁무진", + "[Achievement name 582]Kaizen": "카이젠", + "[Achievement name 583]Beyond quality": "품질을 넘어", + "[Achievement name 584]Everything happens so much": "다사다난", + "[Achievement name 585]I'll rest when I'm dead": "휴식은 죽은 다음에", + "[Achievement name 586]What do you get for the baker who has everything": "모든 것을 가진 제과사에게 줄 선물", + "[Achievement name 587]Bottomless pit": "나락", + "[Achievement name 588]All the stars in heaven": "천상의 모든 별" +}); \ No newline at end of file diff --git a/gversion/gs/cookieclicker/loc/NL.js b/gversion/gs/cookieclicker/loc/NL.js new file mode 100644 index 0000000..adfb602 --- /dev/null +++ b/gversion/gs/cookieclicker/loc/NL.js @@ -0,0 +1,3303 @@ +AddLanguage('NL','dutch',{ + "": { + "language": "NL", + "plural-forms": "nplurals=2;plural=(n!=1);" + }, + "cookie": "koekje", + "sugar lump": "suikerklontje", + "heavenly chip": "hemelse stukjes", + "wrinkler": "mee-eter", + "building": "gebouw", + "upgrade": "/", + "golden cookie": "gouden koekje", + "grandmapocalypse": "/", + "%1 cookie": [ + "%1 koekje", + "%1 koekjes" + ], + "%1 sugar lump": [ + "%1 suikerklontje", + "%1 suikerklontjes" + ], + "%1 heavenly chip": [ + "%1 hemels stukje", + "%1 hemelse stukjes" + ], + "%1 golden cookie": [ + "%1 gouden koekje", + "%1 gouden koekjes" + ], + "%1 building": [ + "%1 gebouw", + "%1 gebouwen" + ], + "%1 upgrade": [ + "%1 upgrade", + "%1 upgrades" + ], + "Yes": "Ja", + "No": "Nee", + "Click here": "Hier klikken", + "Don't show this again": "Laat dit niet meer zien", + "Delete all": "Alles wissen", + "Back": "Terug", + "Confirm": "Bevestigen", + "All done!": "Klaar!", + "Load": "Laden", + "Save": "Opslaan", + "Quit": "Afsluiten", + "Save & Quit": "Opslaan en afsluiten", + "Cancel": "Annuleren", + "Nevermind": "Laat maar", + "Random": "Willekeurig", + "You have %1.": "Je hebt %1.", + "Click": "Klik", + "Shift": "/", + "Shift-click": "Shift-klik", + "Ctrl": "/", + "Ctrl-click": "Ctrl-klik", + "Esc": "/", + "Cookies": "Koekjes", + "%1 day": [ + "%1 dag", + "%1 dagen" + ], + "%1 hour": [ + "%1 uur", + "%1 uur" + ], + "%1 minute": [ + "%1 minuut", + "%1 minuten" + ], + "%1 second": [ + "%1 seconde", + "%1 seconden" + ], + "less than 1 second": "minder dan 1 seconde", + "in %1": "over %1", + "%1 ago": "%1 geleden", + "%1 remaining": "nog %1 te gaan", + "%1 worth": "1% waard", + "%1 of CpS": "%1 van KpS", + "%1% of bank": "%1% van de voorraad", + "per second:": "per seconde:", + "just now": "net", + "a long while": "al een hele tijd", + "forever": "voor altijd", + "Time remaining:": "Resterende tijd:", + "Big clickable cookie": "Groot koekje waar je op kunt klikken", + "Golden cookie": "Gouden koekje", + "Wrath cookie": "Woedend koekje", + "Reindeer": "Rendier", + "Options": "Opties", + "General": "Algemeen", + "Settings": "Instellingen", + "Volume": "/", + "Volume (music)": "Volume (muziek)", + "ON": "AAN", + "OFF": "UIT", + "Fancy graphics": "Mooie graphics", + "CSS filters": "CSS-filters", + "visual improvements; disabling may improve performance": "spel ziet er mooier uit; uitzetten kan prestaties verbeteren", + "Particles": "Kleine koekjes", + "Numbers": "Cijfers", + "numbers that pop up when clicking the cookie": "cijfers die je ziet als je op je koekje klikt", + "Milk [setting]": "Melk", + "Cursors [setting]": "Cursors", + "visual display of your cursors": "je ziet je cursors", + "Wobbly cookie": "Wiebelend koekje", + "Alt cookie sound": "Alternatief geluid van koekje", + "Icon crates": "Kraticoontjes", + "display boxes around upgrades and achievements in Stats": "je ziet kratten bij je upgrades en prestaties in stats", + "Alt font": "Alternatief lettertype", + "your cookies are displayed using a monospace font": "je koekjes worden in monospace weergegeven", + "Short numbers": "Cijfers inkorten", + "Fast notes": "Snelle meldingen", + "notifications disappear much faster": "meldingen zijn veel sneller weg", + "Closing warning": "Waarschuwing bij afsluiten", + "the game will ask you to confirm when you close the window": "het spel vraagt om bevestiging als je het venster sluit", + "Defocus": "Antifocus", + "the game will be less resource-intensive when out of focus": "het spel heeft minder systeembronnen nodig als het onscherp is", + "Extra buttons": "Extra knoppen", + "add options on buildings like Mute": "voor extra opties op gebouwen, zoals Minimaliseren", + "Lump confirmation": "Bevestiging suikerklontjes", + "the game will ask you to confirm before spending sugar lumps": "het spel vraagt om bevestiging als je suikerklontjes uitgeeft", + "Custom grandmas": "Speciale oma's", + "some grandmas will be named after Patreon supporters": "sommige oma's zijn naar Patreon-supporters vernoemd", + "Scary stuff": "Eng spul", + "Sleep mode timeout": "Slaapmodus", + "on slower computers, the game will put itself in sleep mode when it's inactive and starts to lag out; offline CpS production kicks in during sleep mode": "op langzame computers gaat het spel in de slaapmodus als het inactief is en uit begint te gaan. De KpS gaat offline in de slaapmodus gewoon door.", + "Music in background": "Muziek op de achtergrond", + "music will keep playing even when the game window isn't focused": "muziek blijft ook spelen als het spelscherm niet openstaat", + "Cloud saving": "Cloudopslag", + "allow use of Steam Cloud for save backups": "sta gebruik van Steam Cloud toe om back-ups op te slaan", + "Purge Cloud": "Cloud opschonen", + "Current Cloud use:": "Huidig gebruik van cloud", + "No Cloud access at the moment.": "Geen toegang tot cloud op dit moment.", + "Screen reader mode": "Schermleesmodus", + "allows optimizations for screen readers; game will reload": "staat optimalisaties toe voor schermlezers; het spel wordt opnieuw geladen", + "Discord status": "Discord-status", + "if Discord is on, show your game info as activity status": "Als Discord aan staat, je game-informatie als activiteitenstatus tonen", + "Language": "Taal", + "Language: %1": "Taal: %1", + "Change language": "Taal wijzigen", + "note: this will save and reload your game": "opmerking: het spel wordt opgeslagen en opnieuw geladen", + "Press %1 to toggle fullscreen.": "Druk op %1 voor volledig scherm.", + "Other versions": "Andere versies", + "Beta": "/", + "Stats": "/", + "Shadow achievements": "Schaduwprestaties", + "These are feats that are either unfair or difficult to attain. They do not give milk.": "Dit zijn prestaties die oneerlijk behaald worden of moeilijk te behalen zijn. Je krijgt er geen melk voor.", + "starter milk": "beginnersmelk", + "for %1 achievements": "voor %1 prestaties", + "appeased": "gekalmeerd", + "awoken": "wakker", + "displeased": "ontevreden", + "angered": "woest", + "Cookies in bank:": "Koekjes op voorraad:", + "Cookies baked (this ascension):": "Gebakken koekjes (in dit leven):", + "Cookies baked (all time):": "Gebakken koekjes (in totaal):", + "Cookies forfeited by ascending:": "Koekjes die je hebt opgegeven door op te stijgen:", + "Legacy started:": "Nalatenschap begonnen:", + "with %1 ascension": [ + "met %1 opstijging", + "met %1 opstijgingen" + ], + "Run started:": "Spel begonnen:", + "Buildings owned:": "Gebouwen in bezit:", + "Cookies per second:": "Koekjes per seconde:", + "Raw cookies per second:": "Rauwe koekjes per seconde:", + "highest this ascension:": "hoogste aantal in dit leven:", + "multiplier:": "verdubbelaar:", + "withered:": "weggevaagd:", + "Cookies per click:": "Koekjes per klik:", + "Cookie clicks:": "Kliks op koekje:", + "Hand-made cookies:": "Zelfgemaakte koekjes:", + "Golden cookie clicks:": "Kliks op gouden koekjes:", + "Random drop multiplier:": "Verdubbelaar willekeurige extra's", + "all time:": "in totaal:", + "Running version:": "Spelversie:", + "Special": "Speciaal", + "Challenge mode:": "Uitdaging:", + "Seasonal event:": "Evenement:", + "Research:": "Onderzoek:", + "Grandmatriarchs status:": "Status opperoma's:", + "Pledge:": "Belofte:", + "Wrinklers popped:": "Weggeklikte mee-eters:", + "Sugar lumps harvested:": "Geoogste suikerklontjes:", + "Reindeer found:": "Gevonden rendieren:", + "Santa stages unlocked:": "Levels van kerstman ontgrendeld:", + "Dragon training:": "Drakentraining:", + "Prestige": "/", + "at %1% of its potential (+%2% CpS)": "op %1% van zijn potentieel (+%2% KpS)", + "Prestige upgrades unlocked:": "Prestige-upgrades ontgrendeld:", + "Upgrades unlocked:": "Upgrades ontgrendeld:", + "Achievements unlocked:": "Prestaties ontgrendeld:", + "Kitten multiplier:": "Katjesvermenigvuldiger:", + "Milk": "Melk", + "Milk:": "Melk:", + "Milk flavors unlocked:": "Melksmaken ontgrendeld:", + "Milk is gained with each achievement. It can unlock unique upgrades over time.": "Je krijgt melk voor elke prestatie. De melk kan unieke upgrades ontgrendelen.", + "Rank %1": "Niveau %1", + "Automatic": "Automatisch", + "Plain milk": "Gewone melk", + "Chocolate milk": "Chocolademelk", + "Raspberry milk": "Frambozenmelk", + "Orange milk": "Sinaasappelmelk", + "Caramel milk": "Karamelmelk", + "Banana milk": "Bananenmelk", + "Lime milk": "Limoenmelk", + "Blueberry milk": "Bosbessenmelk", + "Strawberry milk": "Aardbeienmelk", + "Vanilla milk": "Vanillemelk", + "Zebra milk": "Zebramelk", + "Cosmic milk": "Ruimtemelk", + "Flaming milk": "Vuurmelk", + "Sanguine milk": "Bloedrode melk", + "Midas milk": "Midasmelk", + "Midnight milk": "Nachtmelk", + "Green inferno milk": "Groene vlammenmelk", + "Frostfire milk": "IJsvuurmelk", + "Honey milk": "Honingmelk", + "Coffee milk": "Koffiemelk", + "Tea milk": "Theemelk", + "Coconut milk": "Kokosmelk", + "Cherry milk": "Kersenmelk", + "Soy milk": "Sojamelk", + "Spiced milk": "Gekruide melk", + "Maple milk": "Esdoornmelk", + "Mint milk": "Muntmelk", + "Licorice milk": "Dropmelk", + "Rose milk": "Rozenmelk", + "Dragonfruit milk": "Drakenvruchtmelk", + "Info": "/", + "About": "Over", + "Cookie Clicker is a javascript game by %1 and %2.": "Cookie Clicker is een javascriptspel van %1 en %2.", + "Music by %1.": "Muziek met %1.", + "Useful links: %1, %2, %3, %4.": "Handige links: %1, %2, %3, %4.", + "This version of Cookie Clicker is 100% free, forever. Want to support us so we can keep developing games? Here's some ways you can help:%1": "Deze versie van Cookie Clicker is voor altijd 100% gratis. Wil je ons steunen zodat we nog meer spellen kunnen maken? Dat kan op deze manieren:%1", + "Note: if you find a new bug after an update and you're using a 3rd-party add-on, make sure it's not just your add-on causing it!": "Let op: als je na een update een nieuwe bug vindt en je gebruikt een add-on van een derde, zorg er dan voor dat je zeker weet dat deze add-on de bug niet veroorzaakt! ", + "Warning: clearing your browser cache or cookies (what else?) will result in your save being wiped. Export your save and back it up first!": "Waarschuwing: als je je browsergegevens of cookies (koekjes, hahaha) wist, wordt alles wat je in dit spel hebt opgeslagen, ook gewist. Exporteer dat dus eerst en maak er een back-up van!", + "Version history": "Versiegeschiedenis", + "Official website": "Officiële website", + "Note: links will open in your web browser.": "Opmerking: links openen in je webbrowser.", + "Note: older update notes are in English.": "Opmerking: oudere updatebeschrijvingen zijn in het Engels.", + "This feature is not yet available in your language.": "Deze functie is nog niet beschikbaar in jouw taal.", + "Restart with new changes": "Opnieuw opstarten met nieuwe wijzigingen", + "Cookie Clicker is in sleep mode.": "Cookie Clicker staat in de slaapmodus.", + "Cookie Clicker is in sleep mode and generating offline cookies.": "Cookie Clicker staat in de slaapmodus en maakt offline cookies.", + "%1 to resume from your save file.": "%1 vanaf je opgeslagen spel.", + "(this happens when too many frames are skipped at once,
usually when the game has been running in the background for a while)
(you can turn this feature off in the settings menu)": "(dit gebeurt als er te veel frames tegelijk worden overgeslagen,
meestal als het spel al een tijdje op de achtergrond draait)
(je kunt deze functie uitzetten in de instellingen)", + "Are you sure you want to close Cookie Clicker?": "Weet je zeker dat je Cookie Clicker wilt afsluiten?", + "Back up your save!": "Maak eerst een back-up!", + "Hello again! Just a reminder that you may want to back up your Cookie Clicker save every once in a while, just in case.
To do so, go to Options and hit \"Export save\" or \"Save to file\"!": "Fijn dat je er weer bent! We willen je er even aan herinneren dat het handig is om je spel af en toe even op te slaan. Je weet nooit wat er kan gebeuren.
Dat doe je door naar Opties te gaan en op \"Spelgegevens exporteren\" of \"In bestand opslaan\" te klikken.", + "Save manually (the game autosaves every 60 seconds; shortcut: ctrl+S)": "Handmatig opslaan (het spel slaat elke 60 seconden automatisch op. Je kunt ook ctrl+S indrukken)", + "You can use this to backup your save or to transfer it to another computer (shortcut for import: ctrl+O)": "Dit kun je gebruiken om een back-up te maken van je spel of de gegevens over te zetten naar een andere computer (druk op ctrl+O voor importeren)", + "Save to file": "In bestand opslaan", + "Load from file": "Laden van bestand", + "Use this to keep backups on your computer": "Gebruik dit om back-ups op je computer te bewaren", + "Export save": "Gegevens exporteren", + "This is your save code.
Copy it and keep it somewhere safe!": "Dit is je code.
Kopieer deze code en bewaar hem op een veilige plek.", + "Import save": "Gegevens importeren", + "Please paste in the code that was given to you on save export.": "Plak hier de code die je gekregen hebt bij het exporteren.", + "Game saved": "Spel opgeslagen", + "Game loaded": "Spel geladen", + "Error while saving": "Fout bij het opslaan", + "Export your save instead!": "Exporteer de spelgegevens!", + "Error importing save": "Fout bij het importeren", + "Oops, looks like the import string is all wrong!": "O jee, het lijkt erop dat de regel code niet goed is!", + "You are attempting to load a save from a future version (v. %1; you are using v. %2).": "Je probeert een spel te laden van een nieuwere versie (v. %1; maar jij hebt v. %2).", + "Sorry, you can't import saves from the classic version.": "Sorry, je kunt geen gegevens importeren van de klassieke versie.", + "Wipe save": "Spelgegevens wissen", + "Delete all your progress, including your achievements": "Je wist al je voortgang, ook je prestaties.", + "Do you REALLY want to wipe your save?
You will lose your progress, your achievements, and your heavenly chips!": "Wil je ECHT je spelgegevens wissen?
Je verliest je voortgang, je prestaties en je hemelse stukjes!", + "Whoah now, are you really, REALLY sure you want to go through with this?
Don't say we didn't warn you!": "Ho even. Weet je het echt, ECHT heel zeker dat je hiermee door wilt gaan?
We hebben je gewaarschuwd!", + "Game reset": "Spel resetten", + "Good bye, cookies.": "Dag koekjes.", + "Welcome back!": "Welkom terug!", + "You earned %1 while you were away.": "Je hebt in je afwezigheid %1 verdiend.", + "Mods": "/", + "Manage mods": "Mods beheren", + "Publish mods": "Mods publiceren", + "Update published mods": "Gepubliceerde mods bijwerken", + "Only use mods from trusted sources. Some mods may require a game restart to take effect.": "Gebruik alleen mods van betrouwbare bronnen. Sommige mods zijn alleen effectief na het opnieuw opstarten van het spel.", + "Enable": "Inschakelen", + "Disable": "Uitschakelen", + "Priority up": "Prioriteit verhogen", + "Priority down": "Prioriteit verlagen", + "New mod": "Nieuwe mod", + "Select folder": "Map selecteren", + "Select updated folder": "Bijgewerkte map selecteren", + "Select a mod.": "Een mod selecteren.", + "Open folder": "Map openen", + "Open Workshop": "Werkplaats openen", + "Open Workshop page": "Werkplaatspagina openen", + "Unsubscribe": "Afmelden", + "Local mod": "Lokale mod", + "Open %1 folder": "Open %1 map", + "Description": "Beschrijving", + "Image": "Afbeelding", + "Name": "Naam", + "Title": "Titel", + "Visibility": "Zichtbaarheid", + "Author": "Auteur", + "File size": "Bestandsgrootte", + "Tags": "Labels", + "Dependencies": "Afhankelijkheden", + "Publish to Workshop": "Naar werkplaats publiceren", + "Version": "Versie", + "Error!": "Foutmelding!", + "none": "geen", + "Publishing...": "Publiceren...", + "Updating...": "Bijwerken...", + "Success!": "Gelukt!", + "Refresh": "Verversen", + "Last update:": "Meest recente update:", + "Mods are loaded from top to bottom.": "Mods worden van boven tot onder geladen.", + "Some mods couldn't be loaded:": "Sommige mods kunnen niet worden geladen:", + "This tool allows you to upload new mods to the Steam Workshop.
You need to select a mod folder containing a properly-formatted %1 file.
See the included sample mods for examples.": "Met deze tool kun je nieuwe mods uploaden naar de Steam Workshop.
Je moet een modmap selecteren waar een %1 bestand in de juiste indeling in staat.
Zie de inbegrepen voorbeeldmods als voorbeeld.", + "Mod data": "Mod-gegevens", + "No mod data present.": "Er zijn geen mod-gegevens.", + "These are the mods present in your save data. You may delete some of this data to make your save file smaller.": "Deze mod-gegevens zijn aanwezig in je bestand. Je kunt wat van deze gegevens wissen om je bestand kleiner te maken.", + "(loaded)": "(geladen)", + "%1 char": [ + "%1 teken", + "%1 tekens" + ], + "Check mod data": "Mod-gegevens bekijken", + "view and delete save data created by mods": "spelgegevens die door mods zijn gecreëerd, bekijken en wissen", + "New update!": "Nieuwe update!", + "New version available: v. %1!": "Nieuwe versie beschikbaar: v. %1!", + "Update note: \"%1\"": "Melding van een update: \"%1\"", + "Refresh to get it!": "Ververs je scherm voor de nieuwe update!", + "You are currently playing Cookie Clicker on the %1 protocol.
The %2 version uses a different save slot than this one.
Click this lock to reload the page and switch to the %2 version!": "Je speelt Cookie Clicker nu op het %1-protocol.
De %2-versie gebruikt een andere opslaglocatie dan deze.
Klik op dit slot om de pagina opnieuw te laden en naar de %2-versie te gaan.", + "+%1 more notification.": [ + "nog 1% melding.", + "nog 1% meldingen." + ], + "Christmas": "Kerst", + "Valentine's day": "Valentijnsdag", + "Business day": "Werkdag", + "Easter": "Pasen", + "Halloween": "/", + "%1 has started!": "%1 is begonnen!", + "%1 is over.": "%1 is voorbij.", + "%1's bakery": "De bakkerij van %1", + "Name your bakery": "Geef je bakkerij een naam", + "What should your bakery's name be?": "Hoe gaat je bakkerij heten?", + "bakery random name, 1st half": [ + "Magische", + "Fantastische", + "Sierlijke", + "Pittige", + "Hippe", + "Mooie", + "Schattige", + "Piraat", + "Ninja", + "Zombie", + "Robot", + "Rebelse", + "Urban", + "Coole", + "Hella", + "Zoete", + "Smerige", + "Dubbele", + "Driedubbele", + "Turbo", + "Techno", + "Disco", + "Elektro", + "Dansende", + "Wonderlijke", + "Mutante", + "Ruimte", + "Wetenschappelijke", + "Middeleeuwse", + "Toekomstige", + "Kapitein", + "Ongeschoren", + "Prettige", + "Kleine", + "Grote", + "Vlammende", + "Waterige", + "IJzige", + "Metalen", + "Plastic", + "Solide", + "Vloeibare", + "Muffe", + "Glanzende", + "Blije", + "Fijne", + "Slijmerige", + "Lekkere", + "Heerlijke", + "Hongerige", + "Hebberige", + "Fatale", + "Professor", + "Dokter", + "Power", + "Chocolade", + "Kruimelige", + "Choklit", + "Rechtvaardige", + "Glorieuze", + "Gedenkwaardige", + "Abnormale", + "Woeste", + "Hectische", + "Gestoorde", + "Koninklijke", + "El", + "Von" + ], + "bakery random name, 2nd half": [ + "Koek", + "Biscuit", + "Muffin", + "Scone", + "Cupcake", + "Pannenkoek", + "Klont", + "Radar", + "Gulzigaard", + "Pop", + "Handschoen", + "Sok", + "Theepot", + "Puzzel", + "Bakker", + "Kok", + "Oma", + "Klik", + "Clicker", + "Spaceshuttle", + "Fabriek", + "Poort", + "Machine", + "Proef", + "Lelijkerd", + "Paniek", + "Inbreker", + "Bandiet", + "Buit", + "Aardappel", + "Pizza", + "Hamburger", + "Worst", + "Gehaktbal", + "Spaghetti", + "Macaroni", + "Kat", + "Hond", + "Giraf", + "Zebra", + "Papegaai", + "Dolfijn", + "Eend", + "Luiaard", + "Schildpad", + "Kobold", + "Fee", + "Kabouter", + "Computer", + "Piraat", + "Ninja", + "Zombie", + "Robot" + ], + "%1, age %2": "%1, leeftijd %2", + "Sugar lumps!": "Suikerklontjes!", + "Because you've baked a billion cookies in total, you are now attracting sugar lumps. They coalesce quietly near the top of your screen, under the Stats button.
You will be able to harvest them when they're ripe, after which you may spend them on all sorts of things!": "Omdat je in totaal 1 miljard koekjes hebt gebakken, trek je nu suikerklontjes aan. Ze verzamelen zich aan de bovenkant van je scherm, onder de knop Stats.
Je kunt ze oogsten als ze rijp zijn. Dan kun je ze aan allerlei dingen uitgeven!", + "A sugar lump is coalescing here, attracted by your accomplishments.": "Er zit hier een suikerklontje. Die is aangetrokken door je prestaties. ", + "Your sugar lumps mature after %1,
ripen after %2,
and fall after %3.": "Je suikerklontjes zijn volgroeid na %1,
rijp na %2
en vallen na %3.", + "• Sugar lumps can be harvested when mature, though if left alone beyond that point they will start ripening (increasing the chance of harvesting them) and will eventually fall and be auto-harvested after some time.
• Sugar lumps are delicious and may be used as currency for all sorts of things.
• Once a sugar lump is harvested, another one will start growing in its place.
• Note that sugar lumps keep growing when the game is closed.": "• Je kunt suikerklontjes oogsten als ze volgroeid zijn, maar als je ze met rust laat, gaan ze rijpen (waardoor de kans om ze te oogsten vergroot wordt) en na verloop van tijd vallen ze en worden ze vanzelf geoogst.
• Suikerklontjes zijn heerlijk en kunnen voor allerlei dingen als betaalmiddel gebruikt worden.
• Als je een suikerklontje hebt geoogst, gaat er een nieuwe groeien op de vrijgekomen plek.
• Suikerklontjes blijven doorgroeien als je het spel hebt afgesloten.", + "This sugar lump has been exposed to time travel shenanigans and will take an excruciating %1 to reach maturity.": "Dit suikerklontje is slachtoffer geworden van een misplaatste grap van een tijdreiziger. Het duurt nu maar liefst %1 voordat hij volgroeid is.", + "This sugar lump is still growing and will take %1 to reach maturity.": "Dit suikerklontje groeit nog steeds en het duurt %1 tot hij volgroeid is.", + "This sugar lump is mature and will be ripe in %1.
You may click it to harvest it now, but there is a 50% chance you won't get anything.": "Dit suikerklontje is volgroeid en is rijp over %1.
Je kunt er nu op klikken om hem te oogsten, maar dan heb je 50% kans dat je niets krijgt.", + "This sugar lump is ripe! Click it to harvest it.
If you do nothing, it will auto-harvest in %1.": "Dit suikerklontje is rijp! Klik erop om hem te oogsten.
Als je niets doet, wordt hij over %1 automatisch geoogst.", + "This sugar lump grew to be bifurcated; harvesting it has a 50% chance of yielding two lumps.": "Dit suikerklontje heeft een bijzondere vorm gekregen. Als je hem oogst, heb je 50% kans om twee suikerklontjes te krijgen.", + "This sugar lump grew to be golden; harvesting it will yield 2 to 7 lumps, your current cookies will be doubled (capped to a gain of 24 hours of your CpS), and you will find 10% more golden cookies for the next 24 hours.": "Dit suikerklontje is een gouden suikerklontje geworden. Als je hem oogst, krijg je 2 tot 7 nieuwe klontjes. Je huidige koekjes worden verdubbeld (tot maximaal 24 uur KpS) en je krijgt de komende 24 uur 10% meer gouden koekjes.", + "This sugar lump was affected by the elders and grew to be meaty; harvesting it will yield between 0 and 2 lumps.": "Dit suikerklontje is aangetast door de ouderlingen en is vlezig geworden. Als je hem oogst, krijg je 0 tot 2 nieuwe klontjes.", + "This sugar lump is caramelized, its stickiness binding it to unexpected things; harvesting it will yield between 1 and 3 lumps and will refill your sugar lump cooldowns.": "Dit suikerklontje is gekarameliseerd. Door zijn kleverigheid plakt hij aan allerlei onverwachte dingen. Als je hem oogst, krijg je 1 tot 3 nieuwe klontjes en hij reset de cooldown van je suikerklontjes.", + "You harvested %1 while you were away.": "Je hebt %1 geoogst in je afwezigheid.", + "Sugar blessing activated!": "Suikerzegen is geactiveerd!", + "Your cookies have been doubled.
+10% golden cookies for the next 24 hours.": "Je koekjes zijn verdubbeld.
+10% gouden koekjes in de komende 24 uur.", + "Sugar lump cooldowns cleared!": "Cooldowns voor suikerklontjes gewist!", + "Botched harvest!": "Oogst is mislukt!", + "Do you want to spend %1 to %2?": "Wil je %1 tot %2 uitgeven?", + "Heralds": "Herauten", + "%1 herald": [ + "%1 heraut", + "%1 herauten" + ], + "Heralds couldn't be loaded. There may be an issue with our servers, or you are playing the game locally.": "Er kunnen geen herauten worden geladen. Er kan een probleem zijn met onze servers of je speelt het spel lokaal.", + "There are no heralds at the moment. Please consider donating to our Patreon!": "Er zijn op dit moment geen herauten. Doneer eens aan onze Patreon!", + "selflessly inspiring a boost in production for everyone, resulting in %1.": "zorgen voor een boost in de productie voor iedereen, met %1 als resultaat.", + "+%1% cookies per second": "+%1% koekjes per seconde", + "You are in a Born again run, and are not currently benefiting from heralds.": "Je bent Opnieuw geboren en je hebt nu geen profijt van de herauten.", + "You own the Heralds upgrade, and therefore benefit from the production boost.": "Je hebt de upgrade Herauten en daarom profiteer je nu van de productieboost.", + "To benefit from the herald bonus, you need a special upgrade you do not yet own. You will permanently unlock it later in the game.": "Om te profiteren van de herautenbonus, heb je een speciale upgrade nodig die je nog niet hebt. Je kunt hem later in het spel ontgrendelen.", + "Heralds are people who have donated to our highest Patreon tier, and are limited to 100.
Each herald gives everyone +1% CpS.
Heralds benefit everyone playing the game, regardless of whether you donated.": "Herauten zijn mensen die hebben gedoneerd aan ons hoogste Patreon-niveau. Dat kunnen er maximaal 100 zijn.
Elke heraut geeft iedereen +1% KpS.
Iedereen die het spel speelt, of je nu gedoneerd hebt of niet, profiteert van de herauten.", + "Every %1 current players on Steam generates 1 herald, up to %2 heralds.
Each herald gives everyone +1% CpS.": "Elke %1 huidige spelers op Steam genereren 1 heraut, tot maximaal %2 herauten.
Elke heraut geeft iedereen +1% KpS.", + "+%1!": "/", + "You found %1!": "Je hebt %1 gevonden!", + "Found %1!": "%1 gevonden!", + "You also found %1!": "Je hebt ook %1 gevonden!", + "Lost %1!": "%1 verloren!", + "Sweet!
Found 1 sugar lump!": "Geweldig!
1 suikerklontje gevonden!", + "Lucky!": "Geluk!", + "Ruin!": "Geruïneerd!", + "Cookie chain over. You made %1.": "Koekjesketen voorbij. Je hebt %1 gekregen.", + "Cookie chain": "Koekjesketen", + "Cookie chain broken.
You made %1.": "Koekjesketen gebroken.
Je hebt %1 gekregen.", + "Cookie blab": [ + "60 seconden lang 3 x extra kruimeligheid!", + "77 seconden lang 7 x extra chocolade!", + "66 seconden lang elasticiteit van deeg gehalveerd!", + "3 seconden lang glans van gouden koekje verdubbeld!", + "30 seconden lang wereldeconomie gehalveerd!", + "De zoen van je oma prikt 45 seconden lang 23% erger!", + "Bedankt voor het klikken!", + "Grapje! Dit was maar een test.", + "Aangeklikte gouden koekjes +1!", + "Je klik is geregistreerd. Bedankt voor je medewerking.", + "Bedankt! Dat was fijn.", + "Bedankt. Er wordt een team naar je toegestuurd.", + "Ze weten ervan.", + "Oeps. Dit was een gewoon chocoladekoekje met aluminiumfolie eromheen." + ], + "Exploded a wrinkler": "Een mee-eter laten ontploffen.", + "Exploded a shiny wrinkler": "Een glanzende mee-eter laten ontploffen.", + "Swallowed:": "Doorgeslikt:", + "Reindeer names": [ + "Dasher", + "Dancer", + "Prancer", + "Vixen", + "Comet", + "Cupid", + "Donner", + "Blitzen", + "Rudolph" + ], + "The reindeer gives you %1.": "Het rendier geeft je %1.", + "You are also rewarded with %1!": "Je krijgt ook %1!", + "You are granted %1.": "Je krijgt %1!", + "Found a present!": "Cadeautje gevonden!", + "You find a present which contains...": "Je vindt een cadeautje en daar zit in...", + "Evolve": "Groeien", + "Festive test tube": "Kerstreageerbuisje", + "Festive ornament": "Kerstbal", + "Festive wreath": "Kerstkrans", + "Festive tree": "Kerstboom", + "Festive present": "Kerstcadeautje", + "Festive elf fetus": "Elvenfoetus", + "Elf toddler": "Elfpeuter", + "Elfling": "Elfkleuter", + "Young elf": "Jonge elf", + "Bulky elf": "Gespierde elf", + "Nick": "/", + "Santa Claus": "Kerstman", + "Elder Santa": "Oude kerstman", + "True Santa": "De echte kerstman", + "Final Claus": "Laatste kerstman", + "Dragon egg": "Drakenei", + "Shivering dragon egg": "Bewegend drakenei", + "Krumblor, cookie hatchling": "Krumblor, pas uit het ei", + "Krumblor, cookie dragon": "Krumblor, koekjesdraak", + "Train %1": "/", + "Aura: %1": "/", + "Chip it": "Geef hem een chip", + "Hatch it": "Laat hem uit z'n ei komen", + "Bake dragon cookie": "Bak een drakenkoekje", + "Delicious!": "Heerlijk!", + "Train secondary aura": "Train een tweede aura", + "Lets you use two dragon auras simultaneously": "Hiermee kun je twee drakenaura's tegelijk gebruiken", + "Your dragon is fully trained.": "Je draak is volledig getraind.", + "%1 of every building": "%1 van elk gebouw", + "No aura": "Geen aura", + "Set your dragon's aura": "Stel de aura van je draak in", + "Set your dragon's secondary aura": "Stel de tweede aura van je draak in", + "Select an aura from those your dragon knows.": "Kies een aura uit de aura's die je draak kent.", + "One tenth of every other dragon aura, combined.": "Eén tiende van elke andere drakenaura bij elkaar.", + "Switching your aura is free because you own no buildings.": "Van aura wisselen is gratis omdat je geen gebouwen hebt.", + "The cost of switching your aura is %1.
This will affect your CpS!": "Het wisselen van je aura kost %1.
Dit is van invloed op je KpS!", + "Your dragon dropped something!": "Je draak heeft iets laten vallen!", + "Breath of Milk": "Melkadem", + "Dragon Cursor": "Drakencursor", + "Elder Battalion": "Omabataljon", + "Reaper of Fields": "Veldoogster", + "Earth Shatterer": "Grondverwoester", + "Master of the Armory": "Meester van de wapens", + "Fierce Hoarder": "Woeste verzamelaar", + "Dragon God": "Drakengod", + "Arcane Aura": "Mysterieuze aura", + "Dragonflight": "Drakenvlucht", + "Ancestral Metamorphosis": "Oermetamorfose", + "Unholy Dominion": "Heidense Heerschappij", + "Epoch Manipulator": "Tijdperkmanipulator", + "Mind Over Matter": "Geest voor materie", + "Radiant Appetite": "Stralende Eetlust", + "Dragon's Fortune": "Drakengeluk", + "Dragon's Curve": "Drakencurve", + "Reality Bending": "Andere realiteit", + "Dragon Orbs": "Drakenbollen", + "Supreme Intellect": "Superieur intellect", + "News :": "Nieuws:", + "Ticker (grandma)": [ + "Vochtige koekjes.", + "Wij zijn lieve oma's.", + "Stank voor dank.", + "Geef oma eens een kus.", + "Waarom kom je niet vaker langs?", + "Bel me..." + ], + "Ticker (threatening grandma)": [ + "Wat is dit walgelijk.", + "Ik word misselijk van je.", + "Ik walg van je.", + "We staan op.", + "Het begint.", + "Het zal snel voorbij zijn.", + "Jij had het kunnen stoppen." + ], + "Ticker (angry grandma)": [ + "Hij heeft ons verraden, die gluiperd.", + "Hij probeerde van ons af te komen. Wat een ploert!", + "Hij dacht dat we weg zouden gaan door ons te verkopen. Sukkel.", + "Ik kan je verrotte koekjes ruiken." + ], + "Ticker (grandmas return)": [ + "ik ben uitgeput", + "ik krimp ineen", + "mijn hart bonst", + "ik blijf maar eten", + "We staan opnieuw op.", + "We hadden een kleine tegenslag.", + "We zijn niet tevreden.", + "Te laat." + ], + "Ticker (grandma invasion start)": [ + "miljoenen oude vrouwtjes worden vermist!", + "over het hele continent komen meldingen binnen over geïrriteerde, woedende oma's!", + "verpleegkundigen melden een \"vreemde koekjesdeeggeur\" bij oudere, vrouwelijke patiënten!" + ], + "Ticker (grandma invasion rise)": [ + "chaos in de stad: onbekende oude vrouwtjes gaan huizen binnen en nemen baby's en bakgerei mee!", + "over het hele continent is een massa-uittocht van oude vrouwtjes gaande! ", + "oude vrouwtjes staan ineens stil midden op straat omdat er warme suikerstroop uit hun poriën komt!" + ], + "Ticker (grandma invasion full)": [ + "\"vlezige tentakels\" met rimpels zichtbaar vanuit de ruimte!", + "er is geen hoop meer. Een kronkelende massa vlees en deeg slokt een hele stad op!", + "de ellende is nog niet voorbij. Hompen vlees met rimpels breiden zich razendsnel uit!" + ], + "Ticker (Farm)": [ + "wetenschapper zegt dat koekjesboerderijen schadelijke chocolade in onze rivieren dumpen!", + "koekjesboerderijen gaan ten onder aan de verhitte discussie over genetisch gemanipuleerde chocolade!", + "gekweekte koekjes zijn niet geschikt voor veganisten, zegt een voedingsdeskundige." + ], + "Ticker (Mine)": [ + "wordt onze planeet lichter? Deskundigen onderzoeken de effecten van het intensief delven van chocolade.", + "chocolademijnen veroorzaken aardbevingen en zinkgaten!", + "diep in de chocolademijnen zijn \"bijzondere chocoladewezens\" gevonden!" + ], + "Ticker (Factory)": [ + "koekjesfabrieken veroorzaken wereldwijde opwarming!", + "koekjesfabrieken gaan in staking. Robots vervangen het personeel!", + "koekjesfabrieken gaan in staking. Werknemers willen niet meer in koekjes betaald worden!" + ], + "Ticker (Bank)": [ + "er worden meer koekjesleningen afgesloten, want mensen kunnen ze niet meer betalen met gewoon geld.", + "koekjes beginnen langzaam het gewone geld te vervangen!", + "de meeste bakkerijen hebben nu een automaat zodat mensen makkelijk koekjes kunnen afhalen en koekjes kunnen storten." + ], + "Ticker (Temple)": [ + "pas ontdekte koekjestempels beginnen met nieuwe religie op basis van koekjes. Duizenden mensen aanbidden de Bakker in de lucht!", + "gelovigen van over de hele wereld ontdekken de nieuwe koekjesreligie: \"We hebben het al die tijd bij het verkeerde eind gehad!\"", + "ontdekkingsreizigers brengen eeuwenoud voorwerp mee uit een verlaten tempel. Archeologen verbazen zich over de eeuwenoude deegroller!" + ], + "Ticker (Wizard tower)": [ + "haal je nieuwe toverspreuken en vervloekingen bij de jaarlijkse Nationale Toverspreukenbeurs! Exclusieve prijzen voor runen en spreukenboeken. ", + "koekjestovenaars ontkennen dat ze verantwoordelijk zijn voor de ontzettend lelijke baby. De baby \"ziet er inderdaad afgrijselijk uit, maar is een normale baby\", zeggen doktoren.", + "beroemde technotovenaar beweert: \"Alle ongezuiverde magie is niet te onderscheiden van technologie\"." + ], + "Ticker (Shipment)": [ + "nieuwe chocoladeplaneet gevonden, die het doelwit wordt van ruimteschepen die in koekjes handelen!", + "enorme chocoladeplaneet gevonden met een kern van 99,8% gecertificeerde pure chocolade!", + "chocoladewezens gevonden op verre planeet!" + ], + "Ticker (Alchemy lab)": [ + "nationale goudvoorraad neemt af omdat steeds meer van het kostbare materiaal wordt omgezet in koekjes!", + "men is erachter gekomen dat zilver omgezet kan worden in witte chocolade!", + "alchemielab gesloten dat koekjes in waardeloos goud omzette." + ], + "Ticker (Portal)": [ + "het land maakt zich zorgen, want er komen steeds meer vreemde wezens uit dimensionale portalen!", + "reizen naar het koekjesuniversum populair bij verveelde tieners! Percentage slachtoffers maar liefst 73%!", + "onderzoek toont aan dat portalen naar het koekjesuniversum veroudering versnellen en een obsessie met bakken veroorzaken." + ], + "Ticker (Time machine)": [ + "tijdmachines betrokken bij onwettig herschrijven van de geschiedenis! Maar klopt dat wel?", + "koekjes die uit het verleden komen, zijn \"ongeschikt voor menselijke consumptie\", zegt geschiedkundige.", + "\"Ik heb de toekomst gezien\", zegt een gebruiker van een tijdmachine. \"En ik wil daar nooit meer heen\"." + ], + "Ticker (Antimatter condenser)": [ + "een hele stad blijkt te zijn verzwolgen door een zwart gat dat door antimaterie is opgewekt. Andere betrouwbare bronnen bevestigen dat \"de stad nooit heeft bestaan\"!", + "onderzoekers concluderen dat de koekjesindustrie vooral \"meer magneten\" nodig heeft.", + "eerste antimateriecondensator aangezet. Hij verstoort de realiteit niet!" + ], + "Ticker (Prism)": [ + "wetenschappers waarschuwen tegen het systematisch omzetten van licht in materie. \"Op een dag hebben we alleen nog maar materie en geen licht meer!\"", + "koekjes worden nu letterlijk zo snel als het licht gebakken dankzij nieuwe prisma's.", + "wereldburgers worden aangeraden om \"je geen zorgen te maken\" over de frequente flitsen in de atmosfeer." + ], + "Ticker (Chancemaker)": [ + "vreemde statistische afwijkingen blijven aanwezig: de weersvoorspelling blijkt drie dagen achter elkaar correct!", + "plaatselijke casino geruïneerd omdat alle spelers ineens een week lang alles winnen! \"Het komt vast wel weer goed\", zegt de eigenaar. Maar dan wordt hij 47 keer door de bliksem geraakt.", + "buurland kiest volstrekt willekeurig ineens een president met een verstandig beleid! Wie had dat gedacht?" + ], + "Ticker (Fractal engine)": [ + "lokale man die \"Cookie Clicker zat\" is wordt door anderen \"irritant en te direct\" gevonden.", + "lokale goeroe beweert dat \"er in alle mensen een stukje van jezelf zit\". Hij wordt verdacht van kannibalisme.", + "uit afgenomen enquêtes blijkt dat men koekjes die van koekjes gemaakt zijn, \"acceptabel\" vindt. \"Nu weten we tenminste wat erin zit\", zei een van de ondervraagden." + ], + "Ticker (Javascript console)": [ + "code schrijven is in! Steeds meer tieners gaan programmeren. Nu weten we zeker dat er een robotapocalyps aankomt en dat de mensheid verloren gaat.", + "ontwikkelaars weten niet hoe ze hun nieuwe javascriptbibliotheken moeten noemen, want alle combinaties met drie woorden uit het woordenboek zijn al gebruikt.", + "dankzij een nieuwe rage geven ouders hun baby's namen zoals Emma.js of Liam.js. Er is ook melding gemaakt van ten minste één Baby.js." + ], + "Ticker (Idleverse)": [ + "is er een andere versie van jou een beter leven aan het leiden in een ander universum? Waarschijnlijk wel, luiwammes!", + "\"Het idee dat er in ieder geval één alternatieve versie van mezelf bestaat waar het goed mee gaat, geeft me rust\", zegt een burger van wie er nog maar één bestaat in het hele multiversum.", + "stripboekschrijvers wijzen op het multiversum om hun dubieuze complottheorieën te bewijzen. \"Zie je nou wel? Ik zei toch dat het geen verzinsel was?\"" + ], + "Ticker (Cortex baker)": [ + "zwakzinnige cortex-bakker gevonden met een IQ van maar vijf cijfers: \"het is gewoon een sukkel\", zeggen specialisten.", + "astronomen waarschuwen voor een afwijking in de baan van de cortex-bakkers en zijn bang voor frontale botsingen die tot kostbare hersenschuddingen leiden.", + "cortex-bakkerhoeders herinneren werknemers er vriendelijk aan dat cortex-bakkers het belangrijkste eigendom van de bakkerij zijn en dat ze geen schattige bijnaampjes mogen krijgen." + ], + "Ticker (Halloween)": [ + "vreemde rituelen doen hun intrede. Kinderen over de hele wereld doen gekke kostuums aan en dwingen huiseigenaren om ze snoep te geven.", + "kinderen over de hele wereld zijn \"compleet in de war\", omdat alle Halloween-snoepjes zijn vervangen door koekjes.", + "vreemde ronddraaiende wezens verzamelen zich bij koekjesfabrieken en knabbelen aan de lopende band." + ], + "Ticker (Christmas)": [ + "er is een maniak met een baard gespot in een vliegende slee! Onderzoek loopt nog.", + "jolige idioot met obesitas loopt nog steeds vrij rond, waarschuwen autoriteiten. \"Houd je kinderen binnen en barricadeer je schoorsteen. Het is geen grap.\"", + "mysterieus feestvierend individu met bijzondere krachten richt nog steeds grote schade aan met zijn leger rendieren, zeggen autoriteiten.", + "\"Geeft hij spullen zomaar voor niks weg?\" vragen bezorgde moeders zich af. \"En hij heeft nog een baard ook?! Ik vertrouw hem niet\".", + "kinderen zijn compleet in shock. De Kerstman is toch niet hun vader in een kerstmanpak!
\"Ik moet even opnieuw over mijn leven nadenken\", zegt Laura van zes jaar oud." + ], + "Ticker (Valentines)": [ + "de liefde zit in de lucht volgens weerdeskundigen. Er worden nu in elke stad mondkapjes aangeboden om deze infectie te bestrijden.", + "met een koekje trouwen. Is dat compleet geschift of gaan we dat in de toekomst echt doen?", + "hartvormige snoepjes nemen de snoepindustrie over. Een serieuze concurrentie voor het koekjesimperium." + ], + "Ticker (Easter)": [ + "wezens met lange oren en een pluizige staart dringen massaal de steden binnen om chocola te komen brengen. Iedereen is doodsbang. ", + "een bioloog waarschuwt dat \"die konijnen die eieren leggen\" niet van deze dimensie zijn. Hij raadt aan om ze niet te aaien, te voeren of op te eten.", + "mysterieuze konijnen blijken eieren te leggen, maar toch zoogdieren te zijn. Ze zouden mogelijk verwant zijn aan het vogelbekdier." + ], + "Ticker (misc)": [ + "artsen raden aan om twee keer per dag verse koekjes te eten.", + "artsen waarschuwen tegen nieuw dieet zonder koekjes.", + "artsen waarschuwen moeders tegen de gevaren van \"thuis gemaakte koekjes\".", + "\"Ik ben helemaal niet verslaafd aan koekjes. Dat is speculatie van fans die geen leven hebben\", zegt een beroemdheid.", + "\"oké, ik geef het toe. Ik heb in mijn hele leven nog niet één koekje gegeten\", vertelt een beroemdheid.", + "\"door koekjes te eten, blijf ik slank en gezond\", beweert een beroemdheid.", + "man berooft bank, koopt koekjes.", + "nieuw onderzoek toont aan dat koekjes veroudering niet versnellen en ook niet vertragen, maar \"dat ze je anders over je leven laten denken\". ", + "man is allergisch voor koekjes. \"Wat een rare snuiter\", vindt zijn familie.", + "stad wordt getroffen door een tekort aan koekjes, mensen gaan van ellende maar cupcakes eten. \"Dat is het toch niet helemaal\", geeft de burgemeester toe.", + "\"ik vind al dat gedoe met die koekjes toch een beetje onheilspellend\", roept een verwarde idioot.", + "vreemd illegaal koekje in beslag genomen. \"Dat smaakt vreselijk\", zegt de politie.", + "\"Oek\", zegt ondervraagde orang-oetan.", + "wordt onze media beheerst door de koekjesindustrie? Dat kan best het geval zijn, zegt een geschifte doemdenker.", + "\"op dit moment bepalen koekjes de economie\", zegt een econoom. \"Als we iets anders gaan eten, gaan we allemaal dood.\"", + "koekjes nu illegaal in een of ander achterlijk land dat toch niemand kent. De spanningen lopen op. Hopelijk komt er oorlog." + ], + "You feel like making cookies. But nobody wants to eat your cookies.": "Je wil graag koekjes maken. Maar niemand wil je koekjes eten.", + "Your first batch goes to the trash. The neighborhood raccoon barely touches it.": "De eerste serie gaat linea recta de vuilnisbak in. Zelfs de dikke kat van de buren kijkt er niet naar om.", + "Your family accepts to try some of your cookies.": "Vooruit. Je moeder wil wel een koekje van je proeven.", + "Your cookies are popular in the neighborhood.": "Je koekjes zijn populair in de buurt.", + "People are starting to talk about your cookies.": "Mensen beginnen over je koekjes te praten.", + "Your cookies are talked about for miles around.": "Ze praten in de wijde omtrek over je koekjes.", + "Your cookies are renowned in the whole town!": "Je koekjes zijn in de hele stad bekend!", + "Your cookies bring all the boys to the yard.": "Je koekjes zijn onweerstaanbaar.", + "Your cookies now have their own website!": "Je koekjes hebben nu hun eigen website!", + "Your cookies are worth a lot of money.": "Je koekjes zijn heel veel geld waard.", + "Your cookies sell very well in distant countries.": "Je koekjes verkopen goed in verre landen.", + "People come from very far away to get a taste of your cookies.": "Mensen komen van heinde en verre om jouw koekjes te proeven.", + "Kings and queens from all over the world are enjoying your cookies.": "Koningen en koninginnen over de hele wereld smullen van jouw koekjes.", + "There are now museums dedicated to your cookies.": "Er zijn nu museums opgericht ter ere van jouw koekjes.", + "A national day has been created in honor of your cookies.": "Er is een nationale feestdag uitgeroepen ter ere van jouw koekjes.", + "Your cookies have been named a part of the world wonders.": "Je koekjes zijn uitgeroepen tot een van de wereldwonderen.", + "History books now include a whole chapter about your cookies.": "Geschiedenisboeken hebben een heel hoofdstuk aan jouw koekjes gewijd.", + "Your cookies have been placed under government surveillance.": "Je koekjes zijn door de overheid onder toezicht gesteld.", + "The whole planet is enjoying your cookies!": "De hele planeet geniet van jouw koekjes!", + "Strange creatures from neighboring planets wish to try your cookies.": "Vreemde wezens van andere planeten willen je koekjes graag proeven.", + "Elder gods from the whole cosmos have awoken to taste your cookies.": "Oppergoden vanuit de hele kosmos komen je koekjes proeven.", + "Beings from other dimensions lapse into existence just to get a taste of your cookies.": "Wezens van een andere dimensie komen helemaal naar deze dimensie om jouw koekjes te proeven.", + "Your cookies have achieved sentience.": "Je koekjes hebben een bewustzijn ontwikkeld.", + "The universe has now turned into cookie dough, to the molecular level.": "Het universum is in koekjesdeeg veranderd op moleculair niveau.", + "Your cookies are rewriting the fundamental laws of the universe.": "Je koekjes herschrijven de fundamentele wetten van het universum.", + "A local news station runs a 10-minute segment about your cookies. Success!
(you win a cookie)": "Een plaatselijke nieuwszender praat tien minuten lang over jouw koekjes. Je hebt echt succes!
(je wint een koekje)", + "it's time to stop playing": "nu moet je echt stoppen met spelen", + "Today is your lucky day!": "Vandaag is je geluksdag!", + "Your lucky numbers are:": "Je geluksgetallen zijn:", + "Fortune!": "Geluk!", + "A golden cookie has appeared.": "Er is een gouden koekje verschenen.", + "You gain one hour of your CpS (capped at double your bank).": "Je krijgt één uur van je KpS (tot maximaal het dubbele van je voorraad).", + "You've unlocked a new upgrade.": "Je hebt een nieuwe upgrade ontgrendeld.", + "Wish granted. Golden cookie spawned.": "Wens is vervuld. Er is een gouden koekje verschenen.", + "help me!": "/", + "Ascend": "Opstijgen", + "You've been on this run for %1.": "Je speelt dit spel al %1.", + "Your prestige level is currently %1.
(CpS +%2%)": "Je prestigelevel is nu %1.
(KpS +%2%)", + "Ascending now would grant you no prestige.": "Als je nu opstijgt, krijg je geen prestige.", + "Ascending now would grant you
1 prestige level (+1% CpS)
and 1 heavenly chip to spend.": "Als je nu opstijgt, krijg je
1 prestigelevel (+1%KpS)
1 hemels stukje om uit te geven.", + "Ascending now would grant you
%1 prestige levels (+%2% CpS)
and %3 heavenly chips to spend.": "Als je nu opstijgt, krijg je
1 prestigelevels (+1%KpS)
1 hemelse stukjes om uit te geven.", + "You need %1 more cookies for the next level.": "Je hebt nog %1 koekjes nodig voor het volgende level.", + "Do you REALLY want to ascend?
You will lose your progress and start over from scratch.
All your cookies will be converted into prestige and heavenly chips.": "Wil je ECHT opstijgen?
Je verliest al je voortgang en begint helemaal opnieuw.
Al je koekjes worden omgezet in prestige en hemelse stukjes.", + "You will keep your achievements.": "Je prestaties hou je wel.", + "You will keep your achievements, building levels and sugar lumps.": "Je houdt je prestaties, gebouwlevels en suikerklontjes.", + "Ascending": "Opstijgen", + "So long, cookies.": "Dag koekjes.", + "You forfeit your %1.": "Je geeft je %1 op.", + "Prestige level:": "Prestigelevel:", + "Heavenly chips:": "Hemelse stukjes:", + "%1 prestige level": [ + "%1 prestigelevel", + "%1 prestigelevels" + ], + "You gain %1!": "Je krijgt %1!", + "Reincarnate": "Reïncarneren", + "You are ascending.
Drag the screen around
or use arrow keys!
When you're ready,
click Reincarnate.": "Je stijgt op.
Sleep het scherm heen en weer
of gebruik de pijltjestoetsen.
Als je klaar bent,
klik je op Reïncarneren.", + "Each prestige level grants you a permanent +%1% CpS.
The more levels you have, the more cookies they require.": "Voor elk prestigelevel krijg je permanent +%1% KpS.
Hoe meer levels je hebt, hoe meer koekjes ze kosten.", + "Heavenly chips are used to buy heavenly upgrades.
You gain 1 chip every time you gain a prestige level.": "Hemelse stukjes kun je gebruiken om hemelse upgrades te kopen.
Elke keer dat je een prestigelevel haalt, krijg je 1 stukje", + "Click this once you've bought
everything you need!": "Klik hierop als je alles hebt gekocht
wat je nodig hebt!", + "Are you ready to return to the mortal world?": "Ben je er al klaar voor om naar de wereld van de levenden terug te keren?", + "Hello, cookies!": "Hallo koekjes!", + "Challenge mode for the next run:": "Uitdaging voor het volgende spel:", + "Challenge modes apply special modifiers to your next ascension.
Click to change.": "Voor uitdagingen krijg je speciale modificaties bij je volgende opstijging.
Klik hier om het te veranderen.", + "Select a challenge mode": "Kies een uitdaging", + "None [ascension type]": "Geen", + "No special modifiers.": "Geen speciale modificaties.", + "Born again [ascension type]": "Opnieuw geboren", + "This run will behave as if you'd just started the game from scratch. Prestige levels and heavenly upgrades will have no effect, as will sugar lumps and building levels. Perma-upgrades and minigames will be unavailable.
Some achievements are only available in this mode.": "In dit speltype begin je helemaal opnieuw. Prestigelevels, hemelse upgrades, suikerklontjes en gebouwlevels hebben geen enkel effect meer. Perma-upgrades en minispellen zijn niet beschikbaar.
Sommige prestaties zijn alleen in dit speltype te halen.", + "Your bingo center/research facility is conducting experiments.": "Je bingocentrum/onderzoekslocatie voert experimenten uit.", + "Research has begun": "Onderzoek is begonnen", + "Research complete": "Onderzoek is voltooid", + "You have discovered: %1.": "Je hebt het volgende ontdekt: %1.", + "Valentine's Day!": "Valentijnsdag!", + "It's Valentine's season!
Love's in the air and cookies are just that much sweeter!": "Het is Valentijnsdag!
De liefde hangt in de lucht en koekjes zijn nóg zoeter geworden.", + "Business Day!": "Werkdag!", + "It's Business season!
Don't panic! Things are gonna be looking a little more corporate for a few days.": "Het is weer tijd om te werken!
Geen paniek! We gaan deze dagen gewoon iets harder ons best doen.", + "Halloween!": "/", + "It's Halloween season!
Everything is just a little bit spookier!": "Het is Halloween!
Alles is nu een beetje griezeliger.", + "Christmas time!": "Kerst!", + "It's Christmas season!
Bring good cheer to all and you just may get cookies in your stockings!": "Het is Kerst!
Maak er een vrolijke boel van en misschien liggen er straks wel koekjes onder de kerstboom.", + "Easter!": "Pasen!", + "It's Easter season!
Keep an eye out and you just might click a rabbit or two!": "Het is Pasen!
Let goed op. Misschien verschijnen er wel wat konijnen waar je op kunt klikken.", + "[Tag]Heavenly": "Hemels", + "[Tag]Tech": "Tech", + "[Tag]Cookie": "Koek", + "[Tag]Debug": "Debug", + "[Tag]Switch": "Schakelaar", + "[Tag]Upgrade": "Upgrade", + "Tier:": "Niveau:", + "[Tier]Plain": "Normaal", + "[Tier]Berrylium": "Beslium", + "[Tier]Blueberrylium": "Bosbeslium", + "[Tier]Chalcedhoney": "Chalcedonhoning", + "[Tier]Buttergold": "Botergoud", + "[Tier]Sugarmuck": "Suikerbende", + "[Tier]Jetmint": "Jetmunt", + "[Tier]Cherrysilver": "Kersenzilver", + "[Tier]Hazelrald": "Hazelragd", + "[Tier]Mooncandy": "Maansnoep", + "[Tier]Astrofudge": "Astrofudge", + "[Tier]Alabascream": "Alabascrème", + "[Tier]Iridyum": "Iridjam", + "[Tier]Synergy I": "Synergie I", + "[Tier]Synergy II": "Synergie II", + "[Tier]Fortune": "Geluk", + "[Tier]Self-referential": "Zelfverwijzend", + "Vaulted": "In de kluis", + "Researched": "Onderzocht", + "Purchased": "Gekocht", + "Unlocked forever": "Permanent ontgrendeld", + "Click to learn!": "Klik om te leren!", + "Click to unlearn!": "Klik om af te leren!", + "Upgrade": "/", + "Upgrades": "/", + "Achievement": "Prestatie", + "Achievements": "Prestaties", + "Shadow Achievement": "Schaduwprestatie", + "Unlocked": "Ontgrendeld", + "Locked": "Vergrendeld", + "Source:": "Bron:", + "Click to win!": "Klik om te winnen!", + "Click to lose!": "Klik om te verliezen!", + "Legacy": "Erfenis", + "Buildings": "Gebouwen", + "Switches": "Schakelaars", + "Vault": "Kluis", + "Research": "Onderzoek", + "Store": "Winkel", + "sacrifice %1": "geef %1 op", + "Click to purchase.": "Klik om te kopen.", + "Click to open selector.": "Klik om de kiezer te openen.", + "Click to toggle.": "Klik om aan of uit te zetten.", + "Click to research.": "Klik om te onderzoeken.", + "%1 to vault.": "%1 om in kluis te zetten.", + "%1 to unvault.": "%1 om uit kluis te halen.", + "Upgrade is vaulted and will not be auto-purchased.": "Upgrade staat in de kluis en wordt niet automatisch gekocht.", + "Upgrade for %1": "Upgrade voor %1", + "Buy": "Kopen", + "Sell": "Verkopen", + "all": "alles", + "max": "max.", + "Buy all upgrades": "Alle upgrades kopen", + "Will instantly purchase every upgrade you can afford, starting from the cheapest one.
Upgrades in the vault will not be auto-purchased.
You may place an upgrade into the vault by Shift-clicking on it.": "Koopt onmiddellijk alle upgrades die je kunt betalen, en begint bij de goedkoopste.
Upgrades in de kluis worden niet automatisch gekocht.
Je kunt een upgrade in de kluis zetten door erop te klikken terwijl je shift ingedrukt houdt.", + "each %1 produces %2 per second": "elke %1 produceert %2 per seconde", + "%1 producing %2 per second": "%1 produceert %2 per seconde", + "%1% of total CpS": "%1% totaal KpS", + "%1 produced so far": "Tot nu toe %1 geproduceerd", + "...also boosting some other buildings:": "... ook een boost voor je andere gebouwen:", + "all combined, these boosts account for %1 per second (%2% of total CpS)": "bij elkaar zijn deze boosts goed voor %1 per seconde (%2% van je totale KpS)", + "owned: %1": "in bezit: %1", + "free: %1!": "gratis: %1!", + "Level %1 %2": "/", + "Granting +%1% %2 CpS.": "Je krijgt +%1% %2 KpS.", + "Click to level up for %1.": "Klik om een level omhoog te gaan voor %1.", + "Levelling up this building unlocks a minigame.": "Als je dit gebouw naar het volgende level brengt, ontgrendel je een minispel.", + "level up your %1": "breng je %1 naar het volgende level", + "Mute": "Minimaliseren", + "Minimize this building": "Minimaliseer dit gebouw", + "Muted:": "Geminimaliseerd:", + "Click to unmute": "Klik om te maximaliseren", + "Show": "Tonen", + "Hide": "Verbergen", + "Names in white were submitted by our supporters on Patreon.": "De witte namen zijn ingestuurd door onze supporters op Patreon.", + "You can also press %1 to bulk-buy or sell %2 of a building at a time, or %3 for %4.": "Je kunt ook op %1 klikken om %2 gebouwen tegelijk in bulk te kopen of verkopen, of op %3 voor %4.", + "Investment": "Investering", + "You're not sure what this does, you just know it means profit.": "Je weet niet precies wat het betekent, maar je weet wel dat je winst krijgt.", + "Cursor": "/", + "cursor": "/", + "cursors": "/", + "%1 cursor": [ + "%1 cursor", + "%1 cursors" + ], + "[Cursor quote]Autoclicks once every 10 seconds.": "Klikt elke 10 seconden automatisch.", + "[Cursor business name]Rolling pin": "Deegroller", + "[Cursor business quote]Essential in flattening dough. The first step in cookie-making.": "Essentieel voor het uitrollen van deeg. De eerste stap bij het maken van koekjes.", + "Grandma": "Oma", + "grandma": "oma", + "grandmas": "oma's", + "%1 grandma": [ + "%1 oma", + "%1 oma's" + ], + "[Grandma quote]A nice grandma to bake more cookies.": "Een lief omaatje die koekjes voor je bakt.", + "[Grandma business name]Oven": "Oven", + "[Grandma business quote]A crucial element of baking cookies.": "Een essentieel apparaat om koekjes te kunnen bakken.", + "Farm": "Boerderij", + "farm": "boerderij", + "farms": "boerderijen", + "%1 farm": [ + "%1 boerderij", + "%1 boerderijen" + ], + "[Farm quote]Grows cookie plants from cookie seeds.": "Kweekt koekjesplanten van koekjeszaad.", + "[Farm business name]Kitchen": "Keuken", + "[Farm business quote]The more kitchens, the more cookies your employees can produce.": "Hoe meer keukens, hoe meer koekjes je werknemers kunnen bakken.", + "Mine": "Mijn", + "mine": "mijn", + "mines": "mijnen", + "%1 mine": [ + "%1 mijn", + "%1 mijnen" + ], + "[Mine quote]Mines out cookie dough and chocolate chips.": "Delft koekjesdeeg en chocoladestukjes.", + "[Mine business name]Secret recipe": "Geheim recept", + "[Mine business quote]These give you the edge you need to outsell those pesky competitors.": "Dat heb je nodig om meer te kunnen verkopen dan je concurrenten.", + "Factory": "Fabriek", + "factory": "fabriek", + "factories": "fabrieken", + "%1 factory": [ + "%1 fabriek", + "%1 fabrieken" + ], + "[Factory quote]Produces large quantities of cookies.": "Produceert grote hoeveelheden koekjes.", + "[Factory business name]Factory": "Fabriek", + "[Factory business quote]Mass production is the future of baking. Seize the day, and synergize!": "Massaproductie is de toekomst van bakken. Maak er gebruik van!", + "Bank": "/", + "bank": "/", + "banks": "banken", + "%1 bank": [ + "%1 bank", + "%1 banken" + ], + "[Bank quote]Generates cookies from interest.": "Genereert koekjes uit rente.", + "[Bank business name]Investor": "Investeerder", + "[Bank business quote]Business folks with a nose for profit, ready to finance your venture as long as there's money to be made.": "Zakenmensen die een neus hebben voor winst en die jouw onderneming best willen financieren, als er maar geld mee te verdienen is.", + "Temple": "Tempel", + "temple": "tempel", + "temples": "tempels", + "%1 temple": [ + "%1 tempel", + "%1 tempels" + ], + "[Temple quote]Full of precious, ancient chocolate.": "Tjokvol eeuwenoude chocolade van onschatbare waarde", + "[Temple business name]Like": "Vind ik leuk", + "[Temple business quote]Your social media page is going viral! Amassing likes is the key to a lasting online presence and juicy advertising deals.": "Je socialemediapagina gaat viraal! Verzamel zoveel mogelijk vind-ik-leuks zodat je online goed te vinden bent en de beste deals krijgt.", + "Wizard tower": "Tovenaarstoren", + "wizard tower": "tovenaarstoren", + "wizard towers": "tovenaarstorens", + "%1 wizard tower": [ + "%1 tovenaarstoren", + "%1 tovenaarstorens" + ], + "[Wizard tower quote]Summons cookies with magic spells.": "Roept koekjes op met magische toverspreuken.", + "[Wizard tower business name]Meme": "Meme", + "[Wizard tower business quote]Cookie memes are all the rage! With just the right amount of social media astroturfing, your brand image will be all over the cyberspace.": "Koekjesmemes zijn helemaal hot! Zorg dat je genoeg reviews op sociale media hebt, en dan gaat je merk de hele cyberspace over.", + "Shipment": "Verzending", + "shipment": "verzending", + "shipments": "verzendingen", + "%1 shipment": [ + "%1 verzending", + "%1 verzendingen" + ], + "[Shipment quote]Brings in fresh cookies from the cookie planet.": "Haalt verse koekjes van de koekjesplaneet.", + "[Shipment business name]Supermarket": "Supermarkt", + "[Shipment business quote]A gigantic cookie emporium - your very own retail chain.": "Een gigantisch koekjesmagazijn: je eigen retailketen.", + "Alchemy lab": "Alchemielab", + "alchemy lab": "alchemielab", + "alchemy labs": "alchemielabs", + "%1 alchemy lab": [ + "%1 alchemielab", + "%1 alchemielabs" + ], + "[Alchemy lab quote]Turns gold into cookies!": "Zet goud om in koekjes!", + "[Alchemy lab business name]Stock share": "Aandelen", + "[Alchemy lab business quote]You're officially on the stock market, and everyone wants a piece!": "Je zit nu officieel op de aandelenmarkt, en iedereen wil daarvan meegenieten!", + "Portal": "Poort", + "portal": "portaal", + "portals": "portalen", + "%1 portal": [ + "%1 portaal", + "%1 portalen" + ], + "[Portal quote]Opens a door to the Cookieverse.": "Geeft toegang tot het koekjesuniversum.", + "[Portal business name]TV show": "Tv-serie", + "[Portal business quote]Your cookies have their own sitcom! Hilarious baking hijinks set to the cheesiest laughtrack.": "Je koekjes hebben hun eigen sitcom! Hilarische bakgrappen met natuurlijk zo'n lachband op de achtergrond.", + "Time machine": "Tijdmachine", + "time machine": "tijdmachine", + "time machines": "tijdmachines", + "%1 time machine": [ + "%1 tijdmachine", + "%1 tijdmachines" + ], + "[Time machine quote]Brings cookies from the past, before they were even eaten.": "Haalt koekjes uit het verleden voordat ze opgegeten zijn.", + "[Time machine business name]Theme park": "Pretpark", + "[Time machine business quote]Cookie theme parks, full of mascots and roller-coasters. Build one, build a hundred!": "Koekjespretparken met mascottes en achtbanen. Bouw er eens één. Of honderd! Waarom ook niet?", + "Antimatter condenser": "Antimateriecondensator", + "antimatter condenser": "antimateriecondensator", + "antimatter condensers": "antimateriecondensators", + "%1 antimatter condenser": [ + "%1 antimateriecondensator", + "%1 antimateriecondensators" + ], + "[Antimatter condenser quote]Condenses the antimatter in the universe into cookies.": "Condenseert de antimaterie in het universum in koekjes.", + "[Antimatter condenser business name]Cookiecoin": "Koekjesmunt", + "[Antimatter condenser business quote]A virtual currency, already replacing regular money in some small countries.": "Een virtueel betaalmiddel, dat in sommige kleine landen het echte geld al aan het vervangen is.", + "Prism": "Prisma", + "prism": "prisma", + "prisms": "prisma's", + "%1 prism": [ + "%1 prisma", + "%1 prisma's" + ], + "[Prism quote]Converts light itself into cookies.": "Zet licht om in koekjes.", + "[Prism business name]Corporate country": "Zakenland", + "[Prism business quote]You've made it to the top, and you can now buy entire nations to further your corporate greed. Godspeed.": "Je hebt de top bereikt, en nu kun je hele landen kopen om je zaken nóg verder te brengen. Veel succes!", + "Chancemaker": "Kansgenerator", + "chancemaker": "kansgenerator", + "chancemakers": "kansgenerators", + "%1 chancemaker": [ + "%1 kansgenerator", + "%1 kansgenerators" + ], + "[Chancemaker quote]Generates cookies out of thin air through sheer luck.": "Maakt koekjes uit lucht op basis van stom geluk.", + "[Chancemaker business name]Privatized planet": "Privéplaneet", + "[Chancemaker business quote]Actually, you know what's cool? A whole planet dedicated to producing, advertising, selling, and consuming your cookies.": "Weet je wat echt cool zou zijn? Een hele planeet die gewijd is aan het produceren, adverteren, verkopen en consumeren van je koekjes.", + "Fractal engine": "Fractaalmotor", + "fractal engine": "fractaalmotor", + "fractal engines": "fractaalmotoren", + "%1 fractal engine": [ + "%1 fractaalmotor", + "%1 fractaalmotoren" + ], + "[Fractal engine quote]Turns cookies into even more cookies.": "Zet koekjes om in nog meer koekjes.", + "[Fractal engine business name]Senate seat": "Zetel in de senaat", + "[Fractal engine business quote]Only through political dominion can you truly alter this world to create a brighter, more cookie-friendly future.": "Alleen als je het in de politiek voor het zeggen hebt, kun je deze wereld écht veranderen en voor een mooie, koekjesvriendelijke toekomst zorgen.", + "Javascript console": "Javascript-console", + "javascript console": "javascript-console", + "javascript consoles": "javascript-consoles", + "%1 javascript console": [ + "%1 javascript-console", + "%1 javascript-consoles" + ], + "[Javascript console quote]Creates cookies from the very code this game was written in.": "Maakt koekjes van de code waarin dit spel geschreven is.", + "[Javascript console business name]Doctrine": "Doctrine", + "[Javascript console business quote]Taking many forms -religion, culture, philosophy- a doctrine may, when handled properly, cause a lasting impact on civilizations, reshaping minds and people and ensuring all future generations share a singular goal - the production, and acquisition, of more cookies.": "Een doctrine kan veel vormen aannemen: religie, cultuur, filosofie, enz. En als je het goed doet, kan het een blijvende impact achterlaten op beschavingen, de gedachten van mensen beïnvloeden en er zo voor zorgen dat komende generaties één gemeenschappelijk doel hebben: de productie en het verkrijgen van meer koekjes. ", + "Idleverse": "Inactief universum", + "idleverse": "inactief universum", + "idleverses": "inactieve universums", + "%1 idleverse": [ + "%1 inactief universum", + "%1 inactieve universums" + ], + "[Idleverse quote]There's been countless other idle universes running alongside our own. You've finally found a way to hijack their production and convert whatever they've been making into cookies!": "Er bestaan heel veel inactieve universums naast die van ons. Je hebt eindelijk een manier gevonden om hun productie te kapen en alles wat ze maken om te zetten in koekjes!", + "[Idleverse business name]Lateral expansions": "Laterale expansies", + "[Idleverse business quote]Sometimes the best way to keep going up is sideways. Diversify your ventures through non-cookie investments.": "Soms moet je om verder te komen niet verticaal, maar horizontaal denken. Spreid je ondernemingen via investeringen in dingen die geen koekjes zijn.", + "Cortex baker": "Cortex-bakker", + "cortex baker": "cortex-bakker", + "cortex bakers": "cortex-bakkers", + "%1 cortex baker": [ + "%1 cortex-bakker", + "%1 cortex-bakkers" + ], + "[Cortex baker quote]These artificial brains the size of planets are capable of simply dreaming up cookies into existence. Time and space are inconsequential. Reality is arbitrary.": "Deze kunstmatige hersenen ter grootte van planeten kunnen koekjes creëren door over ze te dromen. Tijd en ruimte doen er niet toe. De realiteit is afhankelijk van willekeur. ", + "[Cortex baker business name]Think tank": "Denktank", + "[Cortex baker business quote]There's only so many ways you can bring in more profit. Or is there? Hire the most brilliant experts in the known universe and let them scrape their brains for you!": "Op een gegeven moment heb je geen manieren meer om meer winst binnen te halen. Of toch wel? Huur de beste experts in het universum in en laat hun hersenen voor jou werken!", + "CpS": "KpS", + "cookies/click": "koekjes/klik", + "%1 CpS": "%1 KpS", + "golden cookie gains": "opbrengst van gouden koekje", + "golden cookie frequency": "frequentie van gouden koekje", + "golden cookie duration": "duur van gouden koekje", + "golden cookie effect duration": "effectduur van gouden koekje", + "wrath cookie gains": "opbrengst van woedend koekje", + "wrath cookie frequency": "frequentie van woedend koekje", + "wrath cookie duration": "duur van woedend koekje", + "wrath cookie effect duration": "effectduur van woedend koekje", + "reindeer gains": "opbrengst van rendier", + "reindeer frequency": "frequentie van rendier", + "reindeer duration": "duur van rendier", + "random drops": "willekeurige extra's", + "milk effects": "melkeffecten", + "wrinkler spawn rate": "verschijnsnelheid van mee-eter", + "wrinkler appetite": "eetlust van mee-eter", + "upgrade costs": "upgradekosten", + "building costs": "bouwkosten", + "Clicking is %1% more powerful.": "Klikken is %1% effectiever.", + "All cookie production multiplied by %1.": "Alle koekjesproductie vermenigvuldigd met %1.", + "+%1 CpS": "+%1 KpS", + "+%1% base CpS.": "+%1% basis-KpS.", + "%1 are twice as efficient.": "%1 zijn twee keer zo efficiënt.", + "%1 are %2% more powerful.": "%1 zijn %2% effectiever.", + "Unshackled! +%1% extra production.": "Ontgrendeld! +%1% extra productie.", + "Tiered upgrades for %1 provide an extra +%2% production.
Only works with unshackled upgrade tiers.": "Upgrades met niveaus voor %1 zorgen voor een extra productie van +%2%.Werkt alleen bij ontgrendelde upgradeniveaus.", + "Unshackles all %1-tier upgrades, making them more powerful.
Only applies to unshackled buildings.": "Ontgrendelt alle upgrades voor het %1-niveau, waardoor ze krachtiger worden.
Geldt alleen voor ontgrendelde gebouwen.", + "The mouse and cursors are twice as efficient.": "De muis en de cursors zijn twee keer zo efficiënt.", + "The mouse and cursors gain +%1 cookies for each non-cursor building owned.": "De muis en cursors genereren +%1 meer koekjes voor elk niet-cursorgebouw in je bezit.", + "Grandmas gain +%1% CpS for each non-grandma building.": "Oma's genereren +%1% KpS voor elk niet-omagebouw.", + "You gain more CpS the more milk you have.": "Hoe meer melk je hebt, hoe meer KpS je krijgt.", + "Milk is %1% more powerful.": "Melk is %1% effectiever.", + "Cookie production multiplier +%1%.": "Koekjesproductievermenigvuldiger +%1%.", + "Cookie production multiplier +%1% permanently.": "Koekjesproductievermenigvuldiger permanent +%1%.", + "Cookie production multiplier +%1% per Santa's levels.": "Koekjesproductievermenigvuldiger +%1% per level van de kerstman.", + "Cookie production multiplier +%1% for every year Cookie Clicker has existed (currently: +%2%).": "Koekjesproductievermenigvuldiger +%1% voor elk jaar dat Cookie Clicker bestaat (nu is dat +%2%).", + "Cookie production multiplier +%1% for every building type level %2 or higher.": "Koekjesproductievermenigvuldiger +%1% voor elk type gebouw met level %2 of hoger.", + "Clicking gains +%1% of your CpS.": "Klikken genereert +%1% van je KpS.", + "%1 gain +%2% CpS per %3.": "%1 winst +%2% KpS per %3.", + "Multiplies the gain from %1 by %2.": "Vermenigvuldigt de winst van %1 met %2.", + "Grandma-operated science lab and leisure club.
Grandmas are 4 times as efficient.
Regularly unlocks new upgrades.": "Door oma's gerund wetenschapslaboratorium en hobbyclub.
Oma's zijn 4 keer zo efficiënt.
Ontgrendelt regelmatig nieuwe upgrades.", + "Each %1 gains +%2 base CpS per %3.": "Elke %1 genereert +%2 basis KpS per %3.", + "Note: the grandmothers are growing restless. Do not encourage them.": "Let op: de oma's worden onrustig. Moedig ze vooral niet aan.", + "Note: proceeding any further in scientific research may have unexpected results. You have been warned.": "Let op: het voortzetten van wetenschappelijk onderzoek kan onverwachte resultaten opleveren. Je bent gewaarschuwd.", + "Note: this is a bad idea.": "Let op: dit is een slecht idee.", + "Warning: purchasing this will have unexpected, and potentially undesirable results!
It's all downhill from here. You have been warned!

Purchase anyway?": "Waarschuwing: als je dit koopt, gebeurt er iets onverwachts dat je waarschijnlijk niet wil!
Vanaf nu wordt het alleen maar erger. Je bent gewaarschuwd!

Toch kopen?", + "Contains the wrath of the elders, at least for a while.": "Houdt de toorn van de ouderlingen een tijdje tegen. ", + "Puts a permanent end to the elders' wrath, at the cost of %1% of your CpS.": "Stopt de toorn van de ouderlingen volledig. Dat kost je %1% van je KpS.", + "You will get %1% of your CpS back, but the grandmatriarchs will return.": "Je krijgt %1% van je KpS terug, maar dan komen de opperoma's ook terug.", + "Time remaining until pledge runs out:": "Tijd tot de belofte afloopt:", + "You haven't pledged to the elders yet.": "Je hebt nog geen beloften aan de ouderlingen gemaakt.", + "You've pledged to the elders %1 times.": [ + "Je hebt één keer een belofte aan de ouderlingen gemaakt. ", + "Je hebt %1 keer een belofte aan de ouderlingen gemaakt. " + ], + "Research takes only 5 seconds.": "Onderzoek kost maar 5 seconden.", + "Golden cookies appear twice as often and stay twice as long.": "Gouden koekjes verschijnen twee keer zo vaak en blijven twee keer zo lang.", + "Golden cookies appear %1% more often.": "Gouden koekjes verschijnen %1% vaker.", + "Golden cookies appear %1% more often during %2.": "Gouden koekjes verschijnen %1% vaker tijdens %2.", + "Golden cookies appear really often.": "Gouden koekjes verschijnen heel vaak.", + "Golden cookie effects last twice as long.": "De effecten van een gouden koekje duren twee keer zo lang.", + "Golden cookie effects last %1% longer.": "De effecten van een gouden koekje duren %1% langer.", + "Golden cookies stay %1% longer.": "Gouden koekjes blijven %1% langer.", + "Golden cookies give %1% more cookies.": "Gouden koekjes geven %1% meer koekjes.", + "Wrath cookies give %1% more cookies.": "Woedende koekjes geven %1% meer koekjes.", + "+%1% CpS per golden cookie on-screen, multiplicative.": "+%1% KpS per gouden koekje op het scherm, vermenigvuldigend.", + "With no buffs and no golden cookies on screen, selling your most powerful building has %1% chance to summon one.": "Als je geen extra's en geen gouden koekjes op het scherm hebt, heb je door je meest effectieve gebouw te verkopen %1% kans om er één op te roepen.", + "Confers various powers to your minigames while active.
See the bottom of each minigame for more details.": "Geeft je minigames verschillende krachten als ze actief zijn.
Onderaan je minigames vind je meer informatie hierover.", + "Elder pledges last twice as long.": "Beloften aan de ouderlingen duren twee keer zo lang.", + "Can toggle upgrades on and off at will in the stats menu.": "Kan upgrades willekeurig aan- en uitzetten in het stats-menu.", + "You keep producing cookies even while the game is closed.": "Ook als je het spel hebt afgesloten, gaat de koekjesproductie door.", + "Unlocks %1% of the potential of your prestige level.": "Ontgrendelt %1% van het potentieel van je prestigelevel.", + "Subsequent research will be %1 times as fast.": "Volgend onderzoek is %1 keer zo snel.", + "Wrinklers appear %1 times as fast.": "Mee-eters verschijnen %1 keer zo snel.", + "Wrinklers spawn much more frequently.": "Mee-eters verschijnen vaker.", + "Wrinklers explode into %1% more cookies.": "Mee-eters ontploffen in %1% meer koekjes.", + "Unlocks... something.": "Ontgrendelt... iets.", + "In the festive hat, you find...": "In de kerstmuts vind je...", + "a festive test tube
and %1.": "een kerstreageerbuisje
en %1.", + "Cost scales with CpS.": "Hoe meer KpS je hebt, hoe meer het kost.", + "Cost scales with Santa level.": "Hoe hoger je kerstmanlevel is, hoe meer het kost.", + "Cost scales with how many eggs you own.": "Hoe meer eieren je hebt, hoe meer het kost.", + "Reindeer appear %1% more often.": "Rendieren verschijnen %1% vaker.", + "Reindeer appear twice as frequently.": "Rendieren verschijnen twee keer zo vaak.", + "Reindeer are twice as slow.": "Rendieren zijn twee keer zo traag.", + "Reindeer give twice as much.": "Rendieren geven twee keer zo veel.", + "Buildings sell back for %1% instead of %2%.": "Gebouwen die je verkoopt, leveren %1% op in plaats van %2%.", + "All buildings are %1% cheaper.": "Alle gebouwen zijn %1% goedkoper.", + "All upgrades are %1% cheaper.": "Alle upgrades zijn %1% goedkoper.", + "All buildings and upgrades are %1% cheaper.": "Alle gebouwen en upgrades zijn %1% goedkoper.", + "%1 are %2% more efficient and %3% cheaper.": "%1 zijn %2% efficiënter en %3% goedkoper.", + "Cookie upgrades are %1 times cheaper.": "Upgrades voor koekjes zijn %1 goedkoper.", + "Random drops are %1% more common.": "Willekeurige extra's komen %1% vaker voor.", + "Reindeer spawn much more frequently.": "Rendieren verschijnen vaker.", + "Allows you to trigger seasonal events at will, for a price.": "Geeft je de mogelijkheid om tegen betaling willekeurig evenementen te activeren.", + "Triggers %1 season for the next 24 hours.
Triggering another season will cancel this one.
Cost scales with unbuffed CpS and increases with every season switch.": "Activeert %1 evenement voor de komende 24 uur.
Het activeren van een ander evenement annuleert deze.
Hoe meer onversterkte KpS je hebt, hoe meer het kost en de kosten worden hoger als je van evenement wisselt.", + "Click again to cancel season": "Klik opnieuw om het evenement te annuleren", + "Seasons now last forever.": "Evenementen blijven nu permanent doorgaan.", + "You haven't switched seasons this ascension yet.": "Je hebt tijdens deze opstijging nog niet van evenement gewisseld.", + "You've switched seasons once this ascension.": "Je hebt tijdens deze opstijging één keer van evenement gewisseld.", + "You've switched seasons %1 times this ascension.": "Je hebt tijdens deze opstijging %1 keer van evenement gewisseld.", + "Cookie production multiplied by 1,000.": "Koekjesproductie vermenigvuldigd met 1.000.", + "Other eggs appear %1% more frequently.": "Andere eieren verschijnen %1% vaker.", + "Contains a lot of cookies.": "Bevat heel veel koekjes.", + "The egg bursts into %1 cookies!": "Het ei ontploft en er komen %1 koekjes uit!", + "You found an egg!": "Je hebt een ei gevonden!", + "Eggs drop %1% more often.": "Eieren vallen %1% vaker.", + "Christmas cookies drop %1% more often.": "Kerstkoekjes vallen %1% vaker.", + "Spooky cookies drop %1% more often.": "Enge koekjes vallen %1% vaker.", + "Heart cookies are %1% more powerful.": "Hartkoekjes zijn %1% effectiever.", + "You continually gain more CpS the longer you've played in the current ascension.": "In deze opstijging verdien je voortdurend meer KpS naarmate je langer speelt.", + "Contains an assortment of fancy biscuits.": "Bevat een assortiment bijzondere biscuitjes.", + "Contains an assortment of macarons.": "Bevat een assortiment macarons.", + "Contains an assortment of popular biscuits.": "Bevat een assortiment populaire biscuitjes.", + "Contains an assortment of rich butter cookies.": "Bevat een assortiment machtige boterkoekjes.", + "Contains an assortment of delicious pastries.": "Bevat een assortiment heerlijke gebakjes.", + "Contains an assortment of...something.": "Bevat een assortiment... iets.", + "Placing an upgrade in this slot will make its effects permanent across all playthroughs.": "Als je een upgrade in dit vakje plaatst, zijn de effecten ervan permanent bij alle keren dat je het spel opnieuw begint.", + "Current boost:": "Huidige boost:", + "Current:": "Huidig:", + "Click to activate.": "Klik om te activeren.", + "Pick an upgrade to make permanent": "Kies een upgrade die je permanent wil maken", + "Here are all the upgrades you've purchased last playthrough.
Pick one to permanently gain its effects!
You can reassign this slot anytime you ascend.": "Dit zijn alle upgrades die je in het vorige spel hebt gekocht.
Kies er één waarvan je de effecten permanent wil maken!
Je kunt dit vak bij elke opstijging opnieuw toewijzen.", + "You now keep making cookies while the game is closed, at the rate of %1% of your regular CpS and up to 1 hour after the game is closed.
(Beyond 1 hour, this is reduced by a further %2% - your rate goes down to %3% of your CpS.)": "Je blijft nu koekjes maken als het spel is afgesloten, op een snelheid van %1% van je normale KpS en tot 1 uur nadat het spel is afgesloten.
(Na 1 uur wordt dit verlaagd met nog eens %2%. Je snelheid wordt in totaal dus verlaagd tot %3% van je KpS.)", + "You gain another +%1% of your regular CpS while the game is closed.": "Je krijgt nog +%1% van je normale KpS als het spel is afgesloten.", + "You gain another +%1% of your regular CpS while the game is closed, for a total of %2%.": "Je krijgt nog +%1% van je normale KpS als het spel is afgesloten, en dat is dan in totaal +%2%.", + "You start with %1.": "Je begint met +%1% .", + "Allows you to purchase a crumbly egg once you have earned 1 million cookies.": "Geeft je de mogelijkheid om een kruimelei te kopen als je 1 miljoen koekjes hebt verdiend.", + "Unlocks the cookie dragon egg.": "Ontgrendelt het ei van de koekjesdraak.", + "Synergy upgrades are %1% cheaper.": "Synergie-upgrades zijn %1% goedkoper.", + "You retain optimal cookie production while the game is closed for %1 more days.": "Je houdt een optimale koekjesproductie als het spel is afgesloten. Dat duurt nog %1 dagen.", + "You retain optimal cookie production while the game is closed for twice as long, for a total of %1.": "Je houdt een optimale koekjesproductie als het spel is afgesloten, en dat twee keer zo lang. Totaal %1.", + "Unlocks the golden switch, which passively boosts your CpS by %1% but disables golden cookies.": "Ontgrendelt de gouden schakelaar, die je KpS passief een boost geeft met %1%, maar gouden koekjes uitschakelt.", + "Turning this on will give you a passive +%1% CpS, but prevents golden cookies from spawning.
Cost is equal to 1 hour of production.": "Als je dit aanzet, krijg je passief +%1% KpS, maar er verschijnen geen gouden koekjes meer.
De kosten hiervan zijn gelijk aan 1 uur productie.", + "The switch is currently giving you a passive +%1% CpS; it also prevents golden cookies from spawning.
Turning it off will revert those effects.
Cost is equal to 1 hour of production.": "De schakelaar geeft je nu passief +%1% KpS, maar er verschijnen geen gouden koekjes meer.
Deze effecten worden ongedaan gemaakt als je hem weer uitzet.
De kosten hiervan zijn gelijk aan 1 uur productie.", + "Unlocks the milk selector, letting you pick which milk is displayed under your cookie.
Comes with a variety of basic flavors.": "Ontgrendelt de melkkiezer, waarmee je kunt kiezen welke melk wordt weergegeven onder je koekje.
Er zijn verschillende basissmaken beschikbaar.", + "Contains more exotic flavors for your milk selector.": "Bevat meer exotische smaken voor je melkkiezer.", + "Lets you pick what flavor of milk to display.": "Hiermee kun je kiezen welke melksmaak je wilt weergeven.", + "Unlocks the golden cookie sound selector, which lets you pick whether golden cookies emit a sound when appearing or not.": "Ontgrendelt de kiezer voor het geluid van het gouden koekje, waarmee je kunt kiezen of gouden koekjes wel of geen geluid laten horen als ze verschijnen.", + "Lets you change the sound golden cookies make when they spawn.": "Hiermee kun je het geluid veranderen dat gouden koekjes maken als ze verschijnen.", + "No sound": "Geen geluid", + "Chime": "Klokkenspel", + "Fortune": "Geluk", + "Cymbal": "Cymbaal", + "Squeak": "Piepje", + "Unlocks the jukebox, which allows you to play through every sound file in the game.": "Ontgrendelt de jukebox, waarmee je elk geluidsbestand in het spel kunt afspelen.", + "Play through the game's sound files!": "Speel de geluidsbestanden van het spel af!", + "Play": "Spelen", + "Stop": "Stoppen", + "Pause": "Pauzeren", + "Shuffle": "/", + "Auto": "/", + "Loop": "/", + "Unlocks the background selector, letting you select the game's background.
Comes with a variety of basic flavors.": "Ontgrendelt de achtergrondkiezer, waarmee je een achtergrond kunt kiezen.
Er zijn verschillende basissmaken beschikbaar.", + "Lets you pick which wallpaper to display.": "Hiermee kun je een achtergrond kiezen.", + "This is the first heavenly upgrade; it unlocks the Heavenly chips system.
Each time you ascend, the cookies you made in your past life are turned into heavenly chips and prestige.
Heavenly chips can be spent on a variety of permanent transcendental upgrades.
Your prestige level also gives you a permanent +1% CpS per level.": "Dit is je eerste hemelse upgrade, het ontgrendelt het systeem van hemelse stukjes.
Elke keer dat je opstijgt, worden de koekjes die je in je vorige leven hebt gemaakt, omgezet in hemelse stukjes en prestige.
Je kunt Hemelse stukjes uitgeven aan verschillende permanente transcendentale upgrades.
Voor elk prestigelevel krijg je ook een permanente +1% KpS.", + "You can attract %1 more wrinklers.": "Je kunt %1 meer mee-eters aantrekken.", + "While the golden switch is on, you gain an additional +%1% CpS per golden cookie upgrade owned.": "Als de gouden schakelaar aanstaat, krijg je +%1% extra KpS voor elke gouden koekje-upgrade in je bezit.", + "All upgrades are %1% cheaper per %2.": "Alle upgrades zijn %1% goedkoper per %2.", + "Unlocks a new tier of upgrades that affect 2 buildings at the same time.
Synergies appear once you have %1 of both buildings.": "Ontgrendelt een nieuw niveau van upgrades die effect hebben op 2 gebouwen tegelijk.
Synergieën verschijnen als je er van elk gebouw %1 hebt.", + "Golden cookies (and all other things that spawn, such as reindeer) have %1% chance of being doubled.": "Er is %1% kans op verdubbeling van gouden koekjes (en al het andere wat verschijnt, zoals rendieren).", + "Cookie production reduced to 0.": "Koekjesproductie teruggebracht naar 0.", + "Sugar lumps coalesce a whole lot faster.": "Suikerklontjes verzamelen zich een heel stuk sneller.", + "+%1% prestige level effect on CpS.": "+%1% effect van prestigelevel op KpS.", + "+%1% prestige level effect on CpS.
+%2% golden cookie effect duration.
+%3% golden cookie lifespan.": "+%1% effect van prestigelevel op KpS.
+%2% duur van effect gouden koekje.
+%3% levensduur van gouden koekje.", + "Each unspent sugar lump (up to %1) gives +%2% CpS.
Note: this means that spending sugar lumps will decrease your CpS until they grow back.
": "Elk suikerklontje dat je niet hebt uitgegeven (tot 1%) zorgt voor +%2% KpS.
Let op: dat betekent dat als je suikerklontjes uitgeeft, je KpS wordt verlaagd tot ze teruggroeien.
", + "Once an ascension, you may use the \"Sugar frenzy\" switch to triple your CpS for 1 hour, at the cost of 1 sugar lump.": "Bij een opstijging kun je de schakelaar \"Suikerfrenzy\" gebruiken om je KpS 1 uur lang te verdriedubbelen. Dat kost 1 suikerklontje.", + "Each grandma (up to %1) makes sugar lumps ripen %2 sooner.": "Elke oma (tot %1) zorgt dat je suikerklontjes %2 sneller rijpen. ", + "Activating this will triple your CpS for 1 hour, at the cost of 1 sugar lump.": "Als je dit activeert, wordt je KpS 1 uur lang verdriedubbeld. Dat kost 1 suikerklontje.", + "May only be used once per ascension.": "Kan maar één keer per opstijging worden gebruikt.", + "activate the sugar frenzy": "activeer de suikerfrenzy", + "Sugar frenzy!": "Suikerfrenzy!", + "CpS x%1 for 1 hour!": "1 uur lang KpS x%1!", + "Garden plants grow every second.
Garden seeds are free to plant.
You can switch soils at any time.": "Tuinplantjes groeien elke seconde.
Je kunt tuinzaadjes gratis planten.
Je kunt op elk moment van grond wisselen.", + "Dropped by %1.": "Afgegeven door %1.", + "Dropped by %1 plants.": "Afgegeven door %1-planten.", + "Must own the %1 upgrade.": "Je moet de %1-upgrade hebben.", + "Sugar lumps are twice as likely to be unusual.": "Suikerklontjes hebben twee keer zoveel kans om bijzonder te zijn.", + "+%1% sugar lump growth.": "+%1% suikerklontjesgroei.", + "Sugar lumps ripen %1 sooner.": "Suikerklontjes rijpen %1 sneller.", + "Sugar lumps mature %1 sooner.": "Suikerklontjes zijn %1 sneller volgroeid.", + "Bifurcated sugar lumps appear %1% more often and are %2% more likely to drop 2 lumps.": "Suikerklontjes met een bijzondere vorm verschijnen %1% vaker en het is %2% waarschijnlijker dat ze 2 klontjes geven.", + "Mouse over a wrinkler to see how many cookies are in its stomach.": "Beweeg met je muis over een mee-eter om te zien hoeveel koekjes er in zijn maag zitten.", + "Unlocks the Buy all feature, which lets you instantly purchase every upgrade in your store (starting from the cheapest one).
Also unlocks the Vault, a store section where you can place upgrades you do not wish to auto-buy.": "Ontgrendelt de functie Alles kopen, waarmee je direct alle upgrades in je winkel kunt kopen (begint bij de goedkoopste).
Ontgrendelt ook de Kluis, een gedeelte van je winkel waar je upgrades in kunt zetten die je niet automatisch wilt kopen.", + "Mouse over an upgrade to see its tier.
Note: only some upgrades have tiers. Tiers are purely cosmetic and have no effect on gameplay.": "Beweeg met je muis over een upgrade om zijn niveau te zien.
Let op: niet alle upgrades hebben niveaus. Niveaus zijn alleen cosmetisch en hebben geen effect op het spel.", + "You now benefit from the boost provided by heralds.
Each herald gives you +1% CpS.
Look on the purple flag at the top to see how many heralds are active at any given time.": "Je profiteert nu van de boost die je hebt gekregen van herauten.
Elke heraut geeft je +1% KpS.
Beweeg je muis over de paarse vlag aan de bovenkant om te zien hoeveel herauten er actief zijn.", + "Seasonal random drops have a 1/5 chance to carry over through ascensions.": "Er is een kans van 1/5 dat extra's van evenementen na een opstijging nog aanwezig zijn. ", + "Unlocks extra price information.
Each displayed cost now specifies how long it'll take you to afford it, and how much of your bank it represents.": "Ontgrendelt extra informatie over prijzen.
Bij elke weergegeven prijs staat nu hoe lang het duurt voor je het hebt en hoeveel percentage van dit bedrag je op voorraad hebt.", + "Unlocks the shimmering veil, a switch that passively boosts your CpS by %1%.
You start with the veil turned on; however, it is very fragile, and clicking the big cookie or any golden cookie or reindeer will turn it off, requiring %2 of CpS to turn back on.": "Ontgrendelt de glanzende sluier, een schakelaar die je KpS passief een boost geeft van %1%.
De sluier staat eerst aan, maar hij is erg breekbaar. Als je op het grote koekje, een gouden koekje of een rendier klikt, gaat hij uit. Het kost %2 KpS om hem weer aan te zetten.", + "Boosts your cookie production by %1% when active.
The veil is very fragile and will break if you click the big cookie or any golden cookies or reindeer.

Once broken, turning the veil back on costs %2 of unbuffed CpS.": "Geeft je koekjesproductie een boost van %1% als hij actief is.
De sluier is erg breekbaar en breekt als je op het grote koekje, een gouden koekje of een rendier klikt.

Als hij gebroken is, kost het je %2 onversterkte KpS.", + "Has a %1% chance to not break.": "Heeft een kans van %1% om niet te breken.", + "The shimmering veil is more resistant, and has a %1% chance not to break. It also gives +%2% more CpS.": "De glanzende sluier kan iets meer hebben en heeft een kans van %1% om niet te breken. Hij zorgt ook voor +%2% meer KpS.", + "Active.": "Actief.", + "The reinforced membrane protects the shimmering veil.": "Het verstevigde membraan beschermt de glanzende sluier.", + "The shimmering veil disappears...": "De glanzende sluier verdwijnt...", + "Prior to purchasing the %1 upgrade in a run, random drops are %2 times more common.": "Voordat je de upgrade %1 koopt, komen willekeurige extra's %2 keer vaker voor.", + "Never forget your %1.": "Vergeet je %1 niet.", + "Pay close attention to the humble %1.": "Let goed op je %1.", + "You've been neglecting your %1.": "Je hebt je %1 verwaarloosd.", + "Remember to visit your %1 sometimes.": "Breng af en toe eens een bezoek aan je %1.", + "You don't know what you have until you've lost it.": "Je weet niet wat je hebt totdat je het kwijt bent.", + "Remember to take breaks.": "Neem genoeg pauze.", + "Hey, what's up. I'm a fortune cookie.": "Hé, hoe gaat het? Ik ben een gelukskoekje.", + "You think you have it bad? Look at me.": "Denk jij dat jij het slecht hebt? Kijk dan eens naar mij.", + "The news ticker may occasionally have fortunes, which may be clicked for something good.": "In de lichtkrant komen soms gelukjes voorbij, waar je op kunt klikken om iets moois te krijgen.", + "Through clever accounting, this actually makes kitten upgrades %1% cheaper.": "Door slim boekhouden maakt deze upgrade kattenupgrades %1% goedkoper.", + "Unlocks the ability to pet your dragon by clicking on it once hatched.": "Ontgrendelt de mogelijkheid om je draak te aaien door erop te klikken als hij uitgekomen is.", + "Cost scales with CpS, but %1 times cheaper with a fully-trained dragon.": "Hoe meer KpS je hebt, hoe meer het kost, maar het is %1 keer zo goedkoop als je een volledig getrainde draak hebt.", + "Golden cookies may trigger a Dragon Harvest.": "Gouden koekjes kunnen een Drakenoogst activeren.", + "Golden cookies may trigger a Dragonflight.": "Gouden koekjes kunnen een Drakenvlucht activeren.", + "Dragon harvest and Dragonflight are %1% stronger.": "Drakenoogst en Drakenvlucht zijn %1% krachtiger.", + "Kittens are %1% more effective.": "Katjes zijn %1% effectiever.", + "Each kitten upgrade boosts %1 CpS by %2%.": "Elke kattenupgrade versterkt de KpS van %1 met %2%.", + "Each rank of milk boosts %1 CpS by %2%.": "Elk melkniveau versterkt de KpS van %1 met %2%.", + "Cursor levels boost clicks by %1% each (up to cursor level %2).": "Cursorlevels versterkten kliks met elk %1% (tot cursorlevel %2).", + "%1 are now effective up to cursor level %2.": "%1 zijn nu effectief tot cursorlevel %2.", + "Seasonal cookies purchased: %1.": "Seizoenskoekjes gekocht: %1.", + "Reindeer cookies purchased: %1.": "Rendierkoekjes gekocht: %1.", + "Eggs purchased: %1.": "Eieren gekocht: %1.", + "Golden and wrath cookie effect duration +%1%.": "Effectduur van gouden en woedend koekje +%1%.", + "Golden and wrath cookies appear %1% more.": "Gouden en woedende koekjes verschijnen %1% vaker.", + "Golden and wrath cookies appear %1% less.": "Gouden en woedende koekjes verschijnen %1% minder vaak.", + "Buildings grant -%1% CpS.": "Gebouwen leveren -%1% KpS op.", + "Selling buildings triggers a buff boosted by how many buildings were sold.": "Het verkopen van gebouwen activeert een versterking die geboost wordt door hoeveel gebouwen er verkocht werden.", + "Buff boosts clicks by +%1% for every building sold for %2 seconds.": "De versterking boost kliks met +%1% voor elk gebouw dat in %2 seconden verkocht werd.", + "CpS bonus fluctuating between %1 and %2 over time.": "KpS-bonus fluctueert in de loop der tijd tussen %1 en %2.", + "Effect cycles over %1 hours.": "Effect vormt een cyclus van %1 uur.", + "Some seasonal effects are boosted.": "Sommige seizoenseffecten zijn versterkt.", + "Large boost.": "Grote boost.", + "Medium boost.": "Normale boost.", + "Small boost.": "Kleine boost.", + "Switching seasons is %1% pricier.": "Het verwisselen van seizoenen is %1% duurder.", + "Switching seasons is %1% cheaper.": "Het verwisselen van seizoenen is %1% goedkoper.", + "Heavenly chips have %1% less effect.": "Hemelse stukjes hebben %1% minder effect.", + "Buildings produce %1% more.": "Gebouwen produceren %1% meer.", + "Buildings produce %1% less.": "Gebouwen produceren %1% minder.", + "All golden cookies are wrath cookies with a greater chance of a negative effect.": "Alle gouden koekjes zijn woedende koekjes met een grotere kans op een negatief effect.", + "Wrinklers appear %1% faster and digest %2% more cookies.": "Mee-eters verschijnen %1% sneller en consumeren %2% meer koekjes.", + "Effect is only active when your total amount of buildings ends with 0.": "Het effect is alleen actief als je totale aantal gebouwen op 0 eindigt.", + "Achievement unlocked": "Prestatie ontgrendeld", + "Make %1 just from %2.": "Maak %1 met %2.", + "Bake %1 in one ascension.": "Bak %1 in één leven.", + "Bake %1 per second.": "Bak %1 per seconde.", + "Have %1.": "Bezit %1.", + "Ascend at least once.": "Stijg ten minste één keer op.", + "Ascend %1 times.": "Stijg %1 keer op.", + "Ascend with %1 baked.": "Stijg op als je %1 hebt gebakken.", + "Make %1 by only having clicked %2 times.": "Maak %1 door maar %2 keer te klikken.", + "Make %1 with no cookie clicks.": "Maak %1 zonder te klikken op het grote koekje. ", + "Get to %1 baked with no upgrades purchased.": "Bak %1 zonder upgrades te kopen.", + "Get to %1 baked in %2.": "Bak %1 in %2.", + "Make %1 from clicking.": "Maak %1 door te klikken.", + "Sell a grandma.": "Verkoop een oma.", + "Have at least %1 of every building.": "Bezit ten minste %1 van elk gebouw.", + "Have at least 1 of the most expensive object, 2 of the second-most expensive, 4 of the next and so on (capped at %1).": "Bezit ten minste 1 van het duurste object, 2 van het op één na duurste, 4 van het volgende, enzovoorts (maximaal %1).", + "Have at least 10 of the most expensive object, 20 of the second-most expensive, 30 of the next and so on.": "Bezit ten minste 10 van het duurste object, 20 van het op één na duurste, 30 van het volgende, enzovoorts.", + "Click a golden cookie.": "Klik op een gouden koekje.", + "Click %1.": "Klik op %1.", + "Hack in some cookies.": "Hack het spel voor extra koekjes.", + "Click really, really fast.": "Klik zo snel als je kunt.", + "Have at least %1 of everything.": "Bezit ten minste %1 van alles .", + "Own %1.": "Heb %1 in je bezit.", + "Purchase %1.": "Koop %1.", + "Dunk the cookie.": "Dip het koekje.", + "Appease the grandmatriarchs at least once.": "Kalmeer de opperoma's ten minste één keer.", + "Appease the grandmatriarchs at least %1 times.": "Kalmeer de opperoma's ten minste %1 keer.", + "Declare a covenant with the grandmatriarchs.": "Sluit een verbond met de opperoma's.", + "Own at least %1 grandma types.": "Bezit ten minste %1 soorten oma's.", + "Unlock 100% of your heavenly chips power.": "Ontgrendel 100% van de kracht van je hemelse stukjes.", + "You have 1 chance in %1 every second of earning this achievement.": "Je hebt elke seconde een kans van 1 op de %1 om deze prestatie te verdienen.", + "Burst 1 wrinkler.": "Laat 1 mee-eter ontploffen.", + "Burst %1 wrinklers.": "Laat %1 mee-eters ontploffen.", + "Unlock every Halloween-themed cookie.
Owning this achievement makes Halloween-themed cookies drop more frequently in future playthroughs.": "Ontgrendel elk Halloweenkoekje.
Als je deze prestatie hebt, krijg je vaker Halloweenkoekjes in volgende spellen.", + "Reach Santa's 7th form.": "Behaal de zevende vorm van de kerstman.", + "Reach Santa's final form.": "Behaal de laatste vorm van de kerstman.", + "Unlock every Christmas-themed cookie.
Owning this achievement makes Christmas-themed cookies drop more frequently in future playthroughs.": "Ontgrendel elk kerstkoekje.
Als je deze prestatie hebt, krijg je vaker kerstkoekjes in volgende spellen.", + "Pop 1 reindeer.": "Klik op 1 rendier.", + "Pop %1 reindeer.": "Klik op %1 rendieren.", + "Pop a reindeer during an elder frenzy.": "Klik op een rendier tijdens een ouderlingenfrenzy.", + "Unlock every Valentine-themed cookie.": "Ontgrendel elk Valentijnkoekje.", + "Click the tiny cookie.": "Klik op het kleine koekje.", + "This is for baking %1 and making it on the local news.": "Deze krijg je omdat je %1 hebt gebakken en op het lokale nieuws bent gekomen.", + "Name yourself Orteil.
Note: usurpers incur a -%1% CpS penalty until they rename themselves something else.
": "Geef jezelf de naam Orteil.
Let op: overweldigers krijgen een straf van -%1% KpS tot ze zichzelf een andere naam geven.
", + "Use an add-on.": "Gebruik een add-on.", + "Unlock 1 egg.": "Ontgrendel 1 ei.", + "Unlock %1 eggs.": "Ontgrendel %1 eieren.", + "Unlock all the eggs.
Owning this achievement makes eggs drop more frequently in future playthroughs.": "Ontgrendel alle eieren.
Als je deze prestatie hebt, krijg je vaker eieren in volgende spellen.", + "Give your bakery a name.": "Geef je bakkerij een naam.", + "Click this achievement's slot.": "Klik op het vakje van deze prestatie.", + "Complete your dragon's training.": "Voltooi de training van je draak.", + "Click on the news ticker %1 times.": "Klik %1 keer op de lichtkrant.", + "Own a combined %1 %2 and %3.": "Bezit bij elkaar %1 %2 en %3.", + "Own %1 upgrades and %2 buildings.": "Bezit %1 upgrades en %2 gebouwen.", + "Own %1 heavenly upgrades.": "Bezit %1hemelse upgrades.", + "Burst the near-extinct shiny wrinkler.": "Laat de bijna uitgestorven glimmende mee-eter ontploffen.", + "Click a golden cookie less than 1 second after it spawns.": "Klik in minder dan 1 seconde nadat hij verschijnt op een gouden koekje. ", + "Click a golden cookie less than 1 second before it dies.": "Klik in minder dan 1 seconde voordat hij weg is op een gouden koekje. ", + "Harvest %1 coalescing sugar lumps.": "Oogst %1 samensmeltende suikerklontjes.", + "Successfully harvest a coalescing sugar lump before it's ripe.": "Oogst een suikerklontje met succes voordat hij rijp is.", + "Harvest a bifurcated sugar lump.": "Oogst een suikerklontje met een bijzondere vorm.", + "Harvest a golden sugar lump.": "Oogst een gouden suikerklontje.", + "Harvest a meaty sugar lump.": "Oogst een vlezig suikerklontje.", + "Harvest a caramelized sugar lump.": "Oogst een gekarameliseerd suikerklontje.", + "Reach level %1 %2.": "Haal level %1 %2.", + "Cast %1 spells.": "Gebruik %1 toverspreuken.", + "Have %1 golden cookies simultaneously.": "Heb op hetzelfde moment %1 gouden koekjes.", + "Manage a cookie legacy for at least a year.": "Zorg dat je al minstens een jaar een koekjeserfenis hebt.", + "Harvest %1 mature garden plants.": "Oogst %1 volgroeide tuinplanten.", + "Fill every tile of the biggest garden plot with plants.": "Zet elke tegel op het grootste stukje grond van je tuin vol met planten.", + "Unlock every garden seed.": "Ontgrendel elk tuinzaadje.", + "Convert a complete seed log into sugar lumps by sacrificing your garden to the sugar hornets.
Owning this achievement makes seeds %1% cheaper, plants mature %2% sooner, and plant upgrades drop %3% more.": "Zet een compleet zaadjeslog om in suikerklontjes door je tuin op te offeren aan de suikerhoornaars.
Als je deze prestatie hebt, worden zaadjes %1% goedkoper, zijn planten %2% sneller volgroeid en krijg je %3% vaker plantupgrades.", + "Ascend with exactly %1.": "Stijg op met precies %1.", + "Have your reinforced membrane protect the shimmering veil.": "Laat je verstevigde membraan je glanzende sluier beschermen. ", + "Own every fortune upgrade.
Owning this achievement makes fortunes appear twice as often; unlocked fortune upgrades also have a %1% chance to carry over after ascending.": "Bezit elke geluksupgrade.
Als je deze prestatie hebt, verschijnen gelukjes twee keer zo vaak. En ontgrendelde upgrades hebben een kans van %1% om na een opstijging nog te bestaan.", + "Make your first stock market profit.": "Maak je eerste winst op de aandelenmarkt.", + "Own at least %1 of a stock market good.": "Bezit ten minste %1 van een product op de aandelenmarkt.", + "Own at least %1 of every stock market good.": "Bezit ten minste %1 van elk product op de aandelenmarkt.", + "Make a day of CpS ($%1) in 1 stock market sale.": "Verdien een dag aan KpS ($ %1) in 1 aandelenverkoop.", + "Spend a day of CpS ($%1) in 1 stock market purchase.": "Besteed een dag aan KpS ($ %1) in 1 aandelenverkoop.", + "Have your stock market profits surpass a whole year of CpS ($%1).": "Zorg dat je winst op de aandelenmarkt meer is dan een heel jaar aan KpS ($ %1).", + "Unlock the highest-tier stock market headquarters.": "Ontgrendel het hoogste niveau van het hoofdkantoor van de aandelenmarkt.", + "Have your stock market profits surpass $%1.": "Zorg dat je winst op de aandelenmarkt meer is dan $%1.", + "Own %1 kitten upgrades.": "Bezit %1 kattenupgrades.", + "Find the forgotten madeleine.": "Vind de vergeten madeleine.", + "Click one of Santa's helper grandmas during Christmas season.": "Klik tijdens het kerstseizoen op een van de oma's die de Kerstman helpen.", + "Frenzy": "/", + "Elder frenzy": "Ouderlingenfrenzy", + "Click frenzy": "Klikfrenzy", + "Clot": "Prop", + "Dragon Harvest": "Drakenoogst", + "Everything must go": "Alles moet weg", + "Cursed finger": "Vervloekte vinger", + "Cookie storm": "Koekjesstorm", + "Sugar blessing": "Suikerzegen", + "Haggler's luck": "Geluk van een pingelaar", + "Haggler's misery": "Ellende van een pingelaar", + "Crafty pixies": "Handige feetjes", + "Nasty goblins": "Nare kobolds", + "Magic adept": "Magiedeskundige", + "Magic inept": "Onbekwame magiebedrijver", + "Devastation": "Verwoesting", + "Sugar frenzy": "Suikerfrenzy", + "Loan %1": "Lening %1", + "Loan %1 (interest)": "Lening %1 (rente)", + "%1 Power!": "%1-kracht!", + "%1 Burden!": "%1-last!", + "Cookie production x%1 for %2!": "Koekjesproductie %2 lang x %1!", + "Cookie production +%1% for %2!": "Koekjesproductie %2 lang + %1!", + "Cookie production %1% slower for %2!": "Koekjesproductie %2 lang %1 langzamer!", + "Cookie production halved for %1!": "Koekjesproductie %1 lang gehalveerd!", + "Your %1 are boosting your CpS!": "Je %1 geven je KpS een boost!", + "Your %1 are rusting your CpS!": "Je %1 verwaarlozen je KpS!", + "All buildings are %1% cheaper for %2!": "Alle gebouwen zijn %2 lang %1% goedkoper!", + "All buildings are %1% pricier for %2!": "Alle gebouwen zijn %2 lang %1% duurder!", + "All upgrades are %1% cheaper for %2!": "Alle upgrades zijn %2 lang %1% goedkoper!", + "All upgrades are %1% pricier for %2!": "Alle upgrades zijn %2 lang %1% duurder!", + "Cookie production halted for %1,
but each click is worth %2 of CpS.": "Koekjesproductie %1 lang stopgezet,
maar elke klik is %2 van de KpS waard.", + "Clicking power x%1 for %2!": "Klikkracht %2 lang x %1!", + "Clicking power +%1% for %2!": "Klikkracht %2 lang + %1%!", + "Cookies everywhere!": "Overal koekjes!", + "You find %1% more golden cookies for the next %2.": "Je vindt de komende %2 %1% meer gouden koekjes.", + "Spells backfire %1 times less for %2.": "Toverspreuken gaan %2 %1 keer minder mis.", + "Spells backfire %1 times more for %2.": "Toverspreuken gaan %2 %1 keer vaker mis.", + "can be done once every %1": "kan eens per %1 gedaan worden", + "usable again in %1": "kan over %1 opnieuw gebruikt worden", + "+%1/s": "/", + "Next tick in %1.": "Volgende tik over %1.", + "Initializing...": "Initialiseren…", + "View %1": "Bekijk %1", + "Close %1": "Sluit %1", + "Details:": "/", + "Effects:": "Effecten:", + "Effect is active.": "Effect is actief.", + "Effect is inactive.": "Effect is inactief.", + "Current bonus:": "Huidige bonus:", + "Garden": "Tuin", + "Baker's wheat": "Bakkerstarwe", + "[Baker's wheat quote]A plentiful crop whose hardy grain is used to make flour for pastries.": "Een rijkelijk groeiend gewas waarvan het stevige graan wordt verwerkt tot meel om mee te bakken.", + "Thumbcorn": "Vingermaïs", + "[Thumbcorn quote]A strangely-shaped variant of corn. The amount of strands that can sprout from one seed is usually in the single digits.": "Een maïskorrel met een bijzondere vorm. Het aantal uitlopers dat één korrel krijgt, is vaak op één hand te tellen.", + "Cronerice": "Karonjerijst", + "[Cronerice quote]Not only does this wrinkly bulb look nothing like rice, it's not even related to it either; its closest extant relative is the weeping willow.": "Dit verschrompelde zaadje lijkt niet op rijst en is er ook niet eens aan verwant. Hij is wel familie van de treurwilg.", + "Gildmillet": "Goudgierst", + "[Gildmillet quote]An ancient staple crop, famed for its golden sheen. Was once used to bake birthday cakes for kings and queens of old.": "Een oud gewas dat heel populair werd vanwege zijn gouden glans. Werd vroeger veel gebruikt om verjaardagstaarten te bakken voor koningen en koninginnen.", + "Ordinary clover": "Gewone klaver", + "[Ordinary clover quote]Trifolium repens, a fairly mundane variety of clover with a tendency to produce four leaves. Such instances are considered lucky by some.": "Trifolium repens is een zeer gewone klaversoort die geregeld vier blaadjes heeft. Sommigen denken dat dat geluk brengt.", + "Golden clover": "Gouden klaver", + "[Golden clover quote]A variant of the ordinary clover that traded its chlorophyll for pure organic gold. Tragically short-lived, this herb is an evolutionary dead-end - but at least it looks pretty.": "Een variant van de gewone klaver die geen bladgroen heeft, maar puur, biologisch goud. Deze plant leeft helaas niet lang en zal het in de evolutie dan ook niet ver schoppen. Maar hij ziet er wel prachtig uit.", + "Shimmerlily": "Glanslelie", + "[Shimmerlily quote]These little flowers are easiest to find at dawn, as the sunlight refracting in dew drops draws attention to their pure-white petals.": "Deze bloemetjes zijn het makkelijkst te vinden in de vroege ochtend, als het zonlicht weerkaatst in de dauwdruppels en zo de helderwitte blaadjes laat schitteren.", + "Elderwort": "Vlierkruid", + "[Elderwort quote]A very old, long-forgotten subspecies of edelweiss that emits a strange, heady scent. There is some anecdotal evidence that these do not undergo molecular aging.": "Een eeuwenoude vergeten ondersoort van de edelweiss die een vreemde, sterke geur afgeeft. Er is anekdotisch bewijs dat deze plant niet veroudert.", + "Bakeberry": "Bakbes", + "[Bakeberry quote]A favorite among cooks, this large berry has a crunchy brown exterior and a creamy red center. Excellent in pies or chicken stews.": "Deze grote bes is zeer populair bij koks. Hij heeft een knapperige, bruine buitenkant en een romige, rode binnenkant. Heerlijk in pastei en stoofgerechten met kip.", + "Chocoroot": "Chocobraam", + "[Chocoroot quote]A tangly bramble coated in a sticky, sweet substance. Unknown genetic ancestry. Children often pick these from fields as-is as a snack.": "Een braam die bedekt is met een zoete, kleverige substantie. Genetische herkomst is onbekend. Kinderen plukken deze vruchten vaak om ze meteen op te eten.", + "White chocoroot": "Witte chocobraam", + "[White chocoroot quote]A pale, even sweeter variant of the chocoroot. Often impedes travelers with its twisty branches.": "Een witte, nog zoetere variant van de chocobraam. Het komt vaak voor dat wandelaars vast komen te zitten in de takken van de struik.", + "White mildew": "Witte meeldauw", + "[White mildew quote]A common rot that infests shady plots of earth. Grows in little creamy capsules. Smells sweet, but sadly wilts quickly.": "Een veel voorkomende schimmel die graag op schaduwrijke plekken groeit en de vorm van een kleine, romige capsule heeft. Ruikt heerlijk zoet, maar verwelkt helaas heel snel.", + "Brown mold": "Bruine schimmel", + "[Brown mold quote]A common rot that infests shady plots of earth. Grows in odd reddish clumps. Smells bitter, but thankfully wilts quickly.": "Een veel voorkomende schimmel die graag op schaduwrijke plekken groeit en de vorm van een vreemde, rode klont heeft. Geeft een nare, scherpe geur af, maar verwelkt gelukkig heel snel.", + "Meddleweed": "Plaagkruid", + "[Meddleweed quote]The sign of a neglected farmland, this annoying weed spawns from unused dirt and may sometimes spread to other plants, killing them in the process.": "Dit vervelende onkruid groeit op grond die niet wordt gebruikt, en is een duidelijk teken dat je dat stukje grond hebt verwaarloosd. Soms groeit het ook bij andere planten, waardoor die doodgaan.", + "Whiskerbloom": "Kattenbloesem", + "[Whiskerbloom quote]Squeezing the translucent pods makes them excrete a milky liquid, while producing a faint squeak akin to a cat's meow.": "Als je in de doorzichtige peulen knijpt, komt er een melkachtige substantie uit en maakt de plant een geluidje dat lijkt op het miauwen van een kat.", + "Chimerose": "Goudroos", + "[Chimerose quote]Originating in the greener flanks of polar mountains, this beautiful flower with golden accents is fragrant enough to make any room feel a little bit more festive.": "Deze prachtige bloem met gouden accenten groeit op de groene flanken van het poolgebergte. Hij ruikt heerlijk en fleurt elk huis op. Is vooral populair rond de feestdagen.", + "Nursetulip": "Zorgtulp", + "[Nursetulip quote]This flower grows an intricate root network that distributes nutrients throughout the surrounding soil. The reason for this seemingly altruistic behavior is still unknown.": "Deze bloem heeft een ingewikkeld wortelnetwerk waarmee hij voedingsstoffen om zich heen verspreidt voor andere planten. Waarom deze plant dit onbaatzuchtige gedrag vertoont, is nog onbekend.", + "Drowsyfern": "Droomvaren", + "[Drowsyfern quote]Traditionally used to brew a tea that guarantees a good night of sleep.": "Oorspronkelijk gebruikt voor het zetten van thee die een goede nachtrust bevordert.", + "Wardlichen": "Afweerkorstmos", + "[Wardlichen quote]The metallic stench that emanates from this organism has been known to keep insects and slugs away.": "Deze plant geeft een metalige stank af die insecten en slakken op afstand houdt.", + "Keenmoss": "IJvermos", + "[Keenmoss quote]Fuzzy to the touch and of a vibrant green. In plant symbolism, keenmoss is associated with good luck for finding lost objects.": "Voelt zacht aan en heeft een felgroene kleur. In de plantsymboliek wordt de plant beschouwd als geluksbrenger bij het zoeken naar verloren voorwerpen.", + "Queenbeet": "Koninginnebiet", + "[Queenbeet quote]A delicious taproot used to prepare high-grade white sugar. Entire countries once went to war over these.": "Een heerlijke penwortel die wordt gebruikt voor witte suiker van hoge kwaliteit. Ze zijn zo gewild dat er ooit oorlog is gevoerd om ze in handen te krijgen.", + "Juicy queenbeet": "Sappige koninginnebiet", + "[Juicy queenbeet quote]A delicious taproot used to prepare high-grade white sugar. Entire countries once went to war over these.
It looks like this one has grown especially sweeter and juicier from growing in close proximity to other queenbeets.": "Een heerlijke penwortel die wordt gebruikt voor witte suiker van hoge kwaliteit. Ze zijn zo gewild dat er ooit oorlog is gevoerd om ze in handen te krijgen.
Deze is nóg zoeter en sappiger geworden omdat hij in de buurt van andere koninginnebieten groeide.", + "Duketater": "Hertogpieper", + "[Duketater quote]A rare, rich-tasting tuber fit for a whole meal, as long as its strict harvesting schedule is respected. Its starch has fascinating baking properties.": "Een zeldzaam knolgewas met een sterke smaak die goed is voor een volledige maaltijd, maar dan moet je wel het strenge oogstschema aanhouden. Dankzij het zetmeel is hij ook geschikt om te bakken.", + "Crumbspore": "Kruimelspore", + "[Crumbspore quote]An archaic mold that spreads its spores to the surrounding dirt through simple pod explosion.": "Een eeuwenoude schimmelsoort die zijn sporen om zich heen verspreidt door zijn peulen te laten ontploffen.", + "Doughshroom": "Deegzwam", + "[Doughshroom quote]Jammed full of warm spores; some forest walkers often describe the smell as similar to passing by a bakery.": "Deze paddenstoel zit vol met warme sporen. Wandelaars beschrijven de geur vaak als de geur die je ruikt als je een bakkerij binnenkomt.", + "Glovemorel": "Handmorielje", + "[Glovemorel quote]Touching its waxy skin reveals that the interior is hollow and uncomfortably squishy.": "Als je de wasachtige buitenkant aanraakt, merk je dat de binnenkant hol en zompig is. ", + "Cheapcap": "Armoezwam", + "[Cheapcap quote]Small, tough, and good in omelettes. Some historians propose that the heads of dried cheapcaps were once used as currency in some bronze age societies.": "Klein, stevig en heerlijk in een omelet. Geschiedkundigen beweren dat de armoezwam in het bronzen tijdperk soms als betaalmiddel werd gebruikt.", + "Fool's bolete": "Dwazenboleet", + "[Fool's bolete quote]Named for its ability to fool mushroom pickers. The fool's bolete is not actually poisonous, it's just extremely bland.": "Staat erom bekend dat hij paddenstoelenplukkers voor de gek houdt. De dwazenboleet is niet giftig, maar hij smaakt ook niet zo lekker.", + "Wrinklegill": "Kronkelchampignon", + "[Wrinklegill quote]This mushroom's odor resembles that of a well-done steak, and is said to whet the appetite - making one's stomach start gurgling within seconds.": "De geur van deze champignon doet denken aan een goed doorbakken biefstukje en schijnt de eetlust dan ook op te wekken. Na een paar seconden begint je maag al te knorren.", + "Green rot": "Groene schimmel", + "[Green rot quote]This short-lived mold is also known as \"emerald pebbles\", and is considered by some as a pseudo-gem that symbolizes good fortune.": "Deze kortlevende schimmel wordt ook wel \"smaragdkiezelsteen\" genoemd, en wordt door sommigen als een nepedelsteen beschouwd die geluk brengt.", + "Shriekbulb": "Schrikradijs", + "[Shriekbulb quote]A nasty vegetable with a dreadful quirk : its flesh resonates with a high-pitched howl whenever it is hit at the right angle by sunlight, moonlight, or even a slight breeze.": "Een nare groente met een verschrikkelijke eigenschap: het vruchtvlees laat een hoog gehuil horen als hij in de juiste hoek wordt geraakt door zonlicht, maanlicht en soms zelfs een licht briesje.", + "Tidygrass": "Rooigras", + "[Tidygrass quote]The molecules this grass emits are a natural weedkiller. Its stems grow following a predictable pattern, making it an interesting -if expensive- choice for a lawn grass.": "De moleculen die dit gras afgeeft, roeien onkruid van nature uit. De stengels groeien in een voorspelbaar patroon en daarom is het mooi gras voor in je tuin. Maar daar moet je wel je portemonnee voor trekken.", + "Everdaisy": "Supermargrietje", + "[Everdaisy quote]While promoted by some as a superfood owing to its association with longevity and intriguing geometry, this elusive flower is actually mildly toxic.": "Dit tere bloemetje wordt door sommigen aangemerkt als superfood omdat hij in verband is gebracht met een lang leven en een interessante vorm heeft, maar niets is minder waar. Hij is zelfs een beetje giftig.", + "Ichorpuff": "Jonge stuifzwam", + "[Ichorpuff quote]This puffball mushroom contains sugary spores, but it never seems to mature to bursting on its own. Surrounding plants under its influence have a very slow metabolism, reducing their effects but lengthening their lifespan.": "Deze stuifzwam bevat suikersporen, maar raakt nooit uit zichzelf volgroeid. Planten om hem heen raken onder zijn invloed en vertragen hun metabolisme sterk, waardoor ze minder effect hebben maar wel langer leven.", + "Garden information": "Informatie over de tuin", + "Your garden is frozen, providing no effects.": "Je tuin is bevroren en levert geen effecten op.", + "Combined effects of all your plants:": "Gecombineerde effecten van al je planten:", + "None.": "Geen.", + "-You can cross-breed plants by planting them close to each other; new plants will grow in the empty tiles next to them.
-Unlock new seeds by harvesting mature plants.
-When you ascend, your garden plants are reset, but you keep all the seeds you've unlocked.
-Your garden has no effect and does not grow while the game is closed.": "-Je kunt planten kruisen door ze dicht bij elkaar te planten; nieuwe planten groeien in de lege tegels ernaast.
-Ontgrendel nieuwe zaden door volwassen planten te oogsten.
-Als je opstijgt worden je planten gereset, maar behoud je alle zaden die je hebt ontgrendeld.
-Terwijl het spel gesloten is heeft je tuin geen effect en groeit hij niet.", + "Harvest all": "Alles oogsten", + "Instantly harvest all plants in your garden.": "Oogst onmiddellijk alle planten in je tuin.", + "%1 to harvest only mature, mortal plants.": "%1 om uitsluitend volwassen, sterfelijke planten te oogsten.", + "%1 to harvest all mature plants of this type.": "%1 om alle volwassen planten van dit type te oogsten.", + "Freeze": "Vriezen", + "Cryogenically preserve your garden.
Plants no longer grow, spread or die; they provide no benefits.
Soil cannot be changed.
Using this will effectively pause your garden.": "Houd je tuin intact door hem te bevriezen.
Planten groeien, verspreiden en sterven niet meer; ze leveren geen voordeel op.
De grond kan niet gewijzigd worden.
Door dit te gebruiken wordt de tuin in feite gepauzeerd.", + "Garden is frozen. Unfreeze to resume.": "De tuin is bevroren. Ontdooi om verder te gaan.", + "Sacrifice garden": "Tuin opofferen", + "A swarm of sugar hornets comes down on your garden, destroying every plant as well as every seed you've unlocked - leaving only a %1 seed.
In exchange, they will grant you %2.
This action is only available with a complete seed log.": "Een zwerm suikerhoornaars daalt neer op jouw tuin en vernietigt elke plant en elk zaadje dat je hebt ontgrendeld, waardoor alleen een %1-zaadje overblijft.
In ruil leveren ze je %2 op.
Deze actie is alleen beschikbaar met een volledig zaadjeslog.", + "Do you REALLY want to sacrifice your garden to the sugar hornets?
You will be left with an empty plot and only the %1 seed unlocked.
In return, you will gain %2 sugar lumps.
": "Wil je ECHT je tuin aan suikerhoornaars opofferen?
Je houdt een leeg stuk grond over en alleen het %1-zaad dat je had ontgrendeld.
In ruil krijg je %2 suikerklontjes.
", + "Sacrifice!": "Opofferen!", + "You've sacrificed your garden to the sugar hornets, destroying your crops and your knowledge of seeds.
In the remains, you find %1 sugar lumps.": "Je hebt je tuin aan de suikerhoornaars opgeofferd, en zo je gewassen en kennis over zaden vernietigd.
In de overblijfselen vind je %1 suikerklontjes.", + "immortal": "onsterfelijk", + "predictable growth": "voorspelbare groei", + "surrounding plants (%1x%1) age %2% faster": "omringende planten (%1x%1) verouderen %2% sneller", + "surrounding plants (%1x%1) age %2% slower": "omringende planten (%1x%1) verouderen %2% langzamer", + "surrounding plants (%1x%1) are %2% more efficient": "omringende planten (%1x%1) zijn %2% efficiënter", + "surrounding plants (%1x%1) are %2% less efficient": "omringende planten (%1x%1) zijn %2% minder efficiënt", + "surrounding tiles (%1x%1) develop no weeds or fungus": "omringende tegels (%1x%1) ontwikkelen geen onkruid of schimmel", + "harvest when mature for +%1 of CpS (max. %2% of bank)": "oogst zodra volwassen voor +%1 van KpS (max. %2% van de voorraad)", + "harvest when mature for a sugar lump": "oogst zodra volwassen voor een suikerklontje", + "useless": "nutteloos", + "spreads easily": "verspreidt gemakkelijk", + "may spread as %1": "kan verspreiden als %1", + "grows in empty tiles": "groeit op lege tegels", + "may overtake nearby plants": "kan nabijgelegen planten overnemen", + "may sometimes drop spores when uprooted": "kan soms sporen laten vallen wanneer hij uit de grond komt", + "explodes into up to %1 of CpS at the end of its lifecycle (max. %2% of bank)": "explodeert aan het einde van zijn levenscyclus tot maximaal %1 van KpS (max. %2% van de voorraad)", + "cannot handle cold climates; %1% chance to die when frozen": "kan niet tegen koude klimaten; %1% kans om te sterven wanneer bevroren", + "the unfortunate result of some plant combinations": "het onfortuinlijke resultaat van enkele plantencombinaties", + "Soil unlocked at %1 farms.": "Grond ontgrendelt bij %1 boerderijen.", + "Your field is currently using this soil.": "Je veld gebruikt deze grond momenteel.", + "You will be able to change your soil again in %1.": "Je kunt je grond over %1 weer verwisselen.", + "Click to use this type of soil for your whole field.": "Klik om deze grondsoort voor je hele veld te gebruiken.", + "Dirt": "Grond", + "Simple, regular old dirt that you'd find in nature.": "Simpele, normale, ouderwetse grond die je in de natuur kunt tegenkomen.", + "Fertilizer": "Kunstmest", + "Soil with a healthy helping of fresh manure. Plants grow faster but are less efficient.": "Grond met een gezonde dosis verse mest. Planten groeien sneller maar zijn minder efficiënt.", + "Clay": "Klei", + "Rich soil with very good water retention. Plants grow slower but are more efficient.": "Rijke grond met zeer goede waterretentie. Planten groeien langzamer maar zijn efficiënter.", + "Pebbles": "Kiezels", + "Dry soil made of small rocks tightly packed together. Not very conducive to plant health, but whatever falls off your crops will be easy to retrieve.
Useful if you're one of those farmers who just want to find new seeds without having to tend their garden too much.": "Droge grond van kleine steentjes die dicht op elkaar zitten. Niet bepaald goed voor de gezondheid van planten, maar wat van je gewassen afvalt zal makkelijk te vinden zijn.
Nuttig als je zo'n boer bent die wel nieuwe zaadjes wil vinden, maar daarvoor liever niet te veel in z'n tuin wil werken.", + "Wood chips": "Houtsnippers", + "Soil made of bits and pieces of bark and sawdust. Helpful for young sprouts to develop, not so much for mature plants.": "Grond gemaakt van stukjes boomschors en zaagsel. Handig voor het ontwikkelen van jonge spruiten, maar niet echt voor volwassen planten.", + "tick every %1": "tik elke %1", + "passive plant effects": "passieve planteffecten", + "weed growth": "onkruidgroei", + "%1% chance of collecting seeds automatically when plants expire": "%1% kans om automatisch zaad te verzamelen als planten sterven", + "plants spread and mutate %1 times more": "planten verspreiden en muteren %1 keer sneller", + "Plant effects:": "Planteffecten:", + "Possible mutations:": "Mogelijke mutaties:", + "Average lifespan:": "Gemiddelde levensduur:", + "Average maturation:": "Gemiddelde groeitijd:", + "Mature in about %1": "Groeit in ongeveer %1", + "Decays in about %1": "Sterft in ongeveer %1", + "Does not decay": "Sterft niet", + "%1 tick": [ + "%1 tik", + "%1 tikken" + ], + "Weed": "Onkruid", + "Fungus": "Schimmel", + "Planting cost:": "Plantkosten:", + "%1 of CpS,
minimum %2": "%1 van KpS,
minimaal %2", + "%1 seed": "%1 zaad", + "Click to select this seed for planting.": "Klik om dit zaad voor het planten te selecteren.", + "This seed cannot be planted.": "Dit zaad kan niet geplant worden.", + "Empty tile": "Lege tegel", + "This tile of soil is empty.
Pick a seed and plant something!": "Deze grondtegel is leeg.
Pak zaad op en plant iets!", + "Click to plant %1 for %2.": "Klik om %1 voor %2 te planten.", + "%1 to plant multiple.": "%1 om meerdere te planten.", + "Aging multiplier:": "Verouderingsvermenigvuldiger:", + "Effect multiplier:": "Effectvermenigvuldiger:", + "Weeds/fungus repellent:": "Onkruid-/schimmelverdelger:", + "This plant is growing here.": "Deze plant groeit hier.", + "Stage:": "Fase:", + "bud": "kiem", + "sprout": "spruit", + "bloom": "bloei", + "mature": "volwassen", + "may reproduce, will drop seed when harvested": "kan reproduceren, laat bij het oogsten zaad vallen", + "Click to harvest.": "Klik om te oogsten.", + "Click to unearth.": "Klik om uit de grond te halen.", + "Click to refill your soil timer and trigger 1 plant growth tick with x%1 spread and mutation rate for %2.": "Klik om je grondtimer opnieuw aan te vullen en activeer 1 plantgroeitik met een %1 keer snellere verspreidings- en mutatieratio voor %2.", + "Unlocked %1 seed.": "Ontgrendel %1 zaad.", + "Seeds": "Zaden", + "Tools": "Gereedschappen", + "Mature plants harvested: %1 (total: %2)": "Geoogste volwassen planten: %1 (totaal: %2)", + "Plot size: %1
(Upgrades with farm level)": "Landgrootte: %1
(Wordt groter bij hoger boerderijlevel)", + "Garden plants age and mutate %1% faster.": "Tuinplanten groeien en muteren %1% keer sneller.", + "while plant is alive; scales with plant growth": "tijdens het leven van de plant; schaalt op met de groei van de plant", + "Dungeon": "Kerker", + "Grimoire": "/", + "This is your magic meter. Each spell costs magic to use.
Your maximum amount of magic varies depending on your amount of Wizard towers, and their level.
Magic refills over time. The lower your magic meter, the slower it refills.": "Dit is je magiemeter. Elke spreuk kost magie.
Je maximale hoeveelheid magie varieert op basis van je aantal Tovenaarstorens en hun level.
Magie vult in de loop der tijd bij. Hoe lager je magiemeter, hoe langzamer hij bijvult.", + "Spells cast: %1 (total: %2)": "Spreuken gebruiken: %1 (totaal: %2)", + "Magic cost:": "Magiekosten:", + "Chance to backfire:": "Kans op mislukking:", + "Effect:": "/", + "Backfire:": "Mislukking:", + "Backfire!": "Mislukt!", + "%1 magic": "%1 magie", + "+%1% of max magic": "+%1% van max. magie", + "Click to refill %1 units of your magic meter for %2.": "Klik om %1 eenheden van je magiemeter voor %2 bij te vullen.", + "Grimoire spells are %1% cheaper but fail %1% more.": "Grimoire-toverspreuken zijn %1% goedkoper, maar mislukken %1% vaker.", + "Conjure Baked Goods": "Bezweer gebakken waren", + "Summon half an hour worth of your CpS, capped at %1% of your cookies owned.": "Roep een half uur aan KpS op, beperkt tot %1% van de koekjes in jouw bezit.", + "Trigger a %1-minute clot and lose %1 minutes of CpS.": "Veroorzaak een prop van %1 minuten en verlies %1 minuten aan KpS.", + "You magic %1 out of thin air.": "Je tovert %1 uit de lucht.", + "Summoning failed!": "Oproepen mislukt!", + "Force the Hand of Fate": "Forceer de hand der lot", + "Summon a random golden cookie. Each existing golden cookie makes this spell +%1% more likely to backfire.": "Roep een willekeurig gouden koekje op. Elk bestaande gouden koekje maakt het +%1% waarschijnlijker dat deze spreuk mislukt.", + "Summon an unlucky wrath cookie.": "Roep een ongelukkig woedend koekje op.", + "Promising fate!": "Veelbelovend lot!", + "Sinister fate!": "Onheilspellend lot!", + "Stretch Time": "Strektijd", + "All active buffs gain %1% more time (up to %2 more minutes).": "Alle actieve versterkingen duren %1% langer (maximaal %2 extra minuten).", + "All active buffs are shortened by %1% (up to %2 minutes shorter).": "Alle actieve versterkingen zijn met %1% verkort (maximaal %2 minuten korter).", + "No buffs to alter!": "Geen versterkingen te wijzigen!", + "Zap! Buffs lengthened.": "Zap! Versterkingen verlengd.", + "Fizz! Buffs shortened.": "Fizz! Versterkingen verkort.", + "Spontaneous Edifice": "Spontaan bouwwerk", + "The spell picks a random building you could afford if you had twice your current cookies, and gives it to you for free. The building selected must be under %1, and cannot be your most-built one (unless it is your only one).": "De spreuk kiest een willekeurig gebouw dat je had kunnen betalen als je twee keer zoveel koekjes als op dat moment hebt, en geeft het je gratis. Het geselecteerde gebouw dient onder de %1 te zijn, en kan niet je meest gebouwde zijn (tenzij het je enige is).", + "Lose a random building.": "Verlies een willekeurig gebouw.", + "No buildings to improve!": "Geen gebouwen om te verbeteren!", + "Backfired, but no buildings to destroy!": "Mislukt, maar geen gebouwen om te vernietigen!", + "A new %1
bursts out of the ground.": "Een nieuwe %1
schiet uit de grond.", + "One of your %1
disappears in a puff of smoke.": "Een van je %1
gaat in rook op.", + "Haggler's Charm": "Charme van de onderhandelaar", + "Upgrades are %1% cheaper for 1 minute.": "Upgrades zijn 1 minuut %1% goedkoper.", + "Upgrades are %1% more expensive for an hour.": "Upgrades zijn een uur %1% duurder.", + "Upgrades are cheaper!": "Upgrades zijn goedkoper!", + "Upgrades are pricier!": "Upgrades zijn duurder!", + "Summon Crafty Pixies": "Roep ijverige feeën op", + "Buildings are %1% cheaper for 1 minute.": "Gebouwen zijn 1 minuut %1% goedkoper.", + "Buildings are %1% more expensive for an hour.": "Gebouwen zijn een uur %1% duurder.", + "Buildings are cheaper!": "Gebouwen zijn goedkoper!", + "Buildings are pricier!": "Gebouwen zijn duurder!", + "Gambler's Fever Dream": "Koortsachtige droom van de gokker", + "Cast a random spell at half the magic cost, with twice the chance of backfiring.": "Tover een willekeurige spreuk voor de helft van de magiekosten, met een dubbele kans op mislukking.", + "No eligible spells!": "Geen in aanmerking komende spreuken!", + "That's too bad!
Magic refunded.": "Dat is jammer!
Magie terugbetaald.", + "Casting %1
for %2 magic...": "Tovert %1
voor %2 magie...", + "Resurrect Abomination": "Gruwel opnieuw tot leven brengen", + "Instantly summon a wrinkler if conditions are fulfilled.": "Roep onmiddellijk een mee-eter op zodra de voorwaarden vervuld zijn.", + "Pop one of your wrinklers.": "Klik op een van je mee-eters.", + "Unable to spawn a wrinkler!": "Kan geen mee-eter laten verschijnen!", + "Rise, my precious!": "Stijg op, mijn schat!", + "But no wrinkler was harmed.": "Maar geen enkele mee-eter werd gedeerd.", + "So long, ugly...": "Vaarwel, lelijkerd...", + "Diminish Ineptitude": "Onbekwaamheid verkleinen", + "Spells backfire %1 times less for the next %2 minutes.": "Spreuken mislukken de komende %2 minuten %1 minder vaak.", + "Spells backfire %1 times more for the next %2 minutes.": "Spreuken mislukken de komende %2 minuten %1 vaker.", + "Ineptitude diminished!": "Onbekwaamheid verkleind!", + "Ineptitude magnified!": "Onbekwaamheid vergroot!", + "Pantheon": "/", + "[GOD 1 NAME]Holobore, Spirit of Asceticism": "Holobore, geest der ascese", + "[GOD 1 QUOTE]An immortal life spent focusing on the inner self, away from the distractions of material wealth.": "Een onsterfelijk leven, besteed aan een focus op de innerlijke zelf, weg van de afleidingen van de materialistische wereld.", + "[GOD 2 NAME]Vomitrax, Spirit of Decadence": "Vomitrax, geest der decadentie", + "[GOD 2 QUOTE]This sleazy spirit revels in the lust for quick easy gain and contempt for the value of steady work.": "Deze slonzige geest zwelgt van de lust naar de snelle en makkelijke vervulling van verlangens en haat voor de waarde van stabiel werk.", + "[GOD 3 NAME]Godzamok, Spirit of Ruin": "Godzamok, geest der ondergang", + "[GOD 3 QUOTE]The embodiment of natural disasters. An impenetrable motive drives the devastation caused by this spirit.": "De belichaming van natuurrampen. Een ondoordringbaar motief spoort de door deze geest veroorzaakte vernietiging aan.", + "[GOD 4 NAME]Cyclius, Spirit of Ages": "Cyclius, geest der eeuwigheid", + "[GOD 4 QUOTE]This spirit knows about everything you'll ever do, and enjoys dispensing a harsh judgment.": "Deze geest weet alles wat jij ooit zult doen, en geniet ervan om een hard vonnis te vellen.", + "[GOD 5 NAME]Selebrak, Spirit of Festivities": "Selebrak, geest der festiviteiten", + "[GOD 5 QUOTE]This is the spirit of merry getaways and regretful Monday mornings.": "Dit is de geest van gezellige uitjes en berouwvolle maandagochtenden.", + "[GOD 6 NAME]Dotjeiess, Spirit of Creation": "Dotjeiess, geest der creatie", + "[GOD 6 QUOTE]All things that be and ever will be were scripted long ago by this spirit's inscrutable tendrils.": "Alle dingen die zijn en ooit zullen zijn, zijn lang geleden opgetekend door de ondoorgrondelijke ranken van deze geest.", + "[GOD 7 NAME]Muridal, Spirit of Labor": "Muridal, geest der arbeid", + "[GOD 7 QUOTE]This spirit enjoys a good cheese after a day of hard work.": "Deze geest houdt van een lekker stukje kaas na een dag hard werken.", + "[GOD 8 NAME]Jeremy, Spirit of Industry": "Jeremy, geest der industrie", + "[GOD 8 QUOTE]While this spirit has many regrets, helping you rule the world through constant industrialization is not one of them.": "Alhoewel deze geest van veel dingen spijt heeft, is jou helpen om middels voortdurende industrialisatie de wereld te overheersen er niet een van.", + "[GOD 9 NAME]Mokalsium, Mother Spirit": "Mokalsium, moedergeest", + "[GOD 9 QUOTE]A caring spirit said to contain itself, inwards infinitely.": "Een zorgzame geest waarvan gezegd wordt dat ze alles oneindig in zichzelf verwerkt.", + "[GOD 10 NAME]Skruuia, Spirit of Scorn": "Skruuia, geest der minachting", + "[GOD 10 QUOTE]This spirit enjoys poking foul beasts and watching them squirm, but has no love for its own family.": "Deze geest geniet ervan om kwade beesten te porren en te kijken hoe ze piepen, maar houdt niet van zijn eigen familie.", + "[GOD 11 NAME]Rigidel, Spirit of Order": "Rigidel, geest der orde", + "[GOD 11 QUOTE]You will find that life gets just a little bit sweeter if you can motivate this spirit with tidy numbers and properly-filled tax returns.": "Je zal zien dat het leven een klein beetje mooier wordt als je deze geest met nette getallen en degelijk ingevulde belastingformulieren weet te motiveren.", + "Diamond slot": "Diamantvakje", + "Ruby slot": "Robijnvakje", + "Jade slot": "Jadevakje", + "empty": "leeg", + "Release to assign %1 to this slot.": "Vrijgeven om %1 aan dit vakje toe te kennen.", + "Drag a spirit onto this slot to assign it.": "Versleep een geest naar dit vakje om hem toe te wijzen.", + "If a golden cookie is clicked, this spirit is unslotted and all worship swaps will be used up.": "Als er op een gouden koekje wordt geklikt, wordt deze geest van zijn vakje gehaald en worden alle aanbiddingswisselingen opgebruikt.", + "Each time you slot a spirit, you use up one worship swap.
If you have 2 swaps left, the next one will refill after %1.
If you have 1 swap left, the next one will refill after %2.
If you have 0 swaps left, you will get one after %3.
Unslotting a spirit costs no swaps.": "Elke keer dat je een geest op een vakje zet, gebruik je een aanbiddingswisseling.
Als je 2 wisselingen over hebt, vult de volgende na %1 bij.
Als je 1 wisseling over hebt, vult de volgende na %2 bij.
Als je 0 wisselingen over hebt, krijg je er een na %3.
Het van het vakje halen van een geest kost geen wisselingen.", + "Click to refill all your worship swaps for %1.": "Klik om al je aanbiddingswisselingen voor %1 bij te vullen.", + "Worship swaps: %1": "Aanbiddingswisselingen: %1", + "next in %1": "volgende over %1", + "The jade slot behaves as a ruby slot and the ruby slot behaves as a diamond slot.": "Het jadevak gedraagt zich als een robijnvak en het robijnvak gedraagt zich als een diamantvak.", + "Stock Market": "Aandelenbeurs", + "[STOCK 1 NAME]Old Mills": "Oude Molens", + "[STOCK 1 TYPE]Cereals": "Granen", + "[STOCK 1 LOGO]CRL": "GRN", + "[STOCK 2 NAME]Cocoa Excavations": "Cacao-opgravingen", + "[STOCK 2 TYPE]Chocolate": "Chocolade", + "[STOCK 2 LOGO]CHC": "CHC", + "[STOCK 3 NAME]Bovine Industries": "Rundvee-industrie", + "[STOCK 3 TYPE]Butter": "Boter", + "[STOCK 3 LOGO]BTR": "BTR", + "[STOCK 4 NAME]Candy Trust": "Snoeptrust", + "[STOCK 4 TYPE]Sugar": "Suiker", + "[STOCK 4 LOGO]SUG": "SKR", + "[STOCK 5 NAME]Hazel Monastery": "Hazelklooster", + "[STOCK 5 TYPE]Nuts": "Noten", + "[STOCK 5 LOGO]NUT": "NOT", + "[STOCK 6 NAME]Wacky Reagants": "Krankzinnige Reagentia", + "[STOCK 6 TYPE]Salt": "Zout", + "[STOCK 6 LOGO]SLT": "ZOT", + "[STOCK 7 NAME]Cosmic Exports": "Kosmische Exporten", + "[STOCK 7 TYPE]Vanilla": "Vanille", + "[STOCK 7 LOGO]VNL": "VNL", + "[STOCK 8 NAME]Organic Gnostics": "Organische Gnostica", + "[STOCK 8 TYPE]Eggs": "Eieren", + "[STOCK 8 LOGO]EGG": "EI", + "[STOCK 9 NAME]Dimensional Exchange": "Dimensionale Uitwisseling", + "[STOCK 9 TYPE]Cinnamon": "Kaneel", + "[STOCK 9 LOGO]CNM": "KNL", + "[STOCK 10 NAME]Precision Aging": "Precisieveroudering", + "[STOCK 10 TYPE]Cream": "Room", + "[STOCK 10 LOGO]CRM": "ROM", + "[STOCK 11 NAME]Pectin Research": "Pectine-onderzoek", + "[STOCK 11 TYPE]Jam": "Jam", + "[STOCK 11 LOGO]JAM": "JAM", + "[STOCK 12 NAME]Dazzle Corp Ltd.": "Dazzle Corp Ltd.", + "[STOCK 12 TYPE]White chocolate": "Witte chocolade", + "[STOCK 12 LOGO]WCH": "WCH", + "[STOCK 13 NAME]Prosperity Hive": "Welvaartskorf", + "[STOCK 13 TYPE]Honey": "Honing", + "[STOCK 13 LOGO]HNY": "HNG", + "[STOCK 14 NAME]Selfmade Bakeries": "Zelfgemaakte Bakkerijen", + "[STOCK 14 TYPE]Cookies": "Koekjes", + "[STOCK 14 LOGO]CKI": "KKS", + "[STOCK 15 NAME]Figments Associated": "Verzinselen Vennootschap", + "[STOCK 15 TYPE]Recipes": "Recepten", + "[STOCK 15 LOGO]RCP": "RCP", + "[STOCK 16 NAME]Polyvalent Acquisitions": "Polyvalente Acquisities", + "[STOCK 16 TYPE]Subsidiaries": "Dochterondernemingen", + "[STOCK 16 LOGO]SBD": "DON", + "[STOCK 17 NAME]Great Minds": "Grote denkers", + "[STOCK 17 TYPE]Publicists": "Publicisten", + "[STOCK 17 LOGO]PBL": "PBL", + "from %1": "vanaf %1", + "%1: currently worth $%2 per unit.": "%1: momenteel $%2 per eenheid waard.", + "You currently own %1 (worth $%2).": "Je bezit momenteel %1 (waarde $%2).", + "Your warehouses can store up to %1.": "Je pakhuizen kunnen maximaal %1 opslaan.", + "You may increase your storage space by upgrading your offices and by buying more %1. You also get %2 extra storage space per %3 level (currently: +%4).": "Je kunt je opslagruimte vergroten door je kantoren te upgraden en door meer %1 te kopen. Je krijgt ook %2 extra opslagruimte per %3 level (momenteel: +%4).", + "The average worth of this stock and how high it can peak depends on the building it is tied to, along with the level of your %1.": "De gemiddelde waarde van dit aandeel en hoe hoog hij kan pieken is afhankelijk van het gebouw waar het aan gekoppeld is, samen met het level van je %1.", + "%1 the hide button to toggle all other stocks.": "%1 de knop Verbergen om naar alle andere aandelen over te schakelen.", + "stock:": "aandeel:", + "for $%1 each": "voor $%1 per stuk", + "last bought at
$%1 each": "voor het laatst gekocht voor
$%1 elk", + "+%1% overhead": "/", + "value:": "waarde:", + "valued at %1": "gewaardeerd op %1", + "you spend:": "je uitgave:", + "you earn:": "je verdienste:", + "You cannot buy and sell this stock in the same tick.": "Je kunt dit aandeel niet in dezelfde tik kopen en verkopen.", + "This is your office.": "Dit is je kantoor.", + "It is fully upgraded. Its lavish interiors, spanning across innumerable floors, are host to many a decadent party, owing to your nigh-unfathomable wealth.": "Hij is volledig geüpgraded. Het uitbundige interieur dat zich over ontelbare verdiepingen uitspreidt, ziet talloze decadente feestjes, met dank aan je bijna onvoorstelbare rijkdom.", + "Level %1 offices": "Level %1 kantoren", + "Credit garage": "Kredietgarage", + "Tiny bank": "Kleine bank", + "Loaning company": "Leenbedrijf", + "Finance headquarters": "Financieel hoofdkwartier", + "International exchange": "Internationale uitwisseling", + "Palace of Greed": "Paleis der hebzucht", + "Upgrading will cost you %1.": "Upgraden kost je %1.", + "Upgrading requires %1.": "Upgraden vereist %1.", + "Upgrading will grant you:": "Upgraden levert je het volgende op:", + "+1 loan slot": "+1 leningvakje", + "+1 opportunity slot": "+1 kansvakje", + "+%1 warehouse space for all goods": "+%1 pakhuisruimte voor alle goederen", + "+%1% base warehouse space for all goods": "+%1% basispakhuisruimte voor alle goederen", + "Brokers:": "Bemiddelaars:", + "A nice broker to trade more cookies.": "Een aardige bemiddelaar om meer koekjes te verhandelen.", + "Hire": "Inhuren", + "Buying goods normally incurs overhead costs of %1% extra. Each broker you hire reduces that cost by %2%.": "Bij het kopen van goederen gelden normaal gesproken overheadkosten van %1% extra. Elke bemiddelaar die je inhuurt verlaagt die kosten met %2%.", + "Current overhead costs thanks to your brokers: +%1%": "De huidige overheadkosten, dankzij je bemiddelaars: +%1%", + "Buying a broker costs %1 of CpS (that's $%2).": "Het kopen van een bemiddelaar kost %1 van KpS (dat is $%2).", + "Maximum number of brokers you can own: %1 (the highest amount of grandmas you've owned this run, divided by 10, plus your grandma level)": "Het maximale aantal bemiddelaars dat je kunt bezitten: %1 (het hoogste aantal oma's dat je dit spel hebt bezeten gedeeld door 10, plus je omalevel)", + "Brokers are Wall Street-class grandmas versed in the ways of finance. Stockbroker grandmas work hard and play hard, and will fight telephone in hand to get your clients the best possible deals - with a sizeable profit margin for you, of course.": "Bemiddelaars zijn oma's op Wall-Street-niveau die verstand van financiën hebben. Aandelenbemiddelaarsoma's werken en spelen hard, en vechten met een telefoon in hun hand om de best mogelijke deals voor hun klanten te regelen - en een degelijke winstmarge voor jou natuurlijk.", + "Hiring a new broker will cost you %1.": "Een nieuwe bemiddelaar inhuren kost je %1.", + "Take out %1": "Leen %1", + "Loan #%1": "Lening #%1", + "a modest loan": "een bescheiden lening", + "Buy that vintage car you've always wanted. Just pay us back.": "Koop die klassieke auto die je altijd al wilde hebben. Betaal ons gewoon terug.", + "a pawnshop loan": "een pandjeshuislening", + "Bad credit? No problem. It's your money, and you need it now.": "Slecht krediet? Geen probleem. Het is jouw geld, en je hebt het nu nodig.", + "a retirement loan": "een pensioenlening", + "Finance your next house, boat, spouse, etc. You've earned it.": "Financier je volgende huis, boot, echtgenoot, etc. Je hebt het verdiend.", + "By taking this loan, you will get %1 CpS for the next %2.": "Door deze lening te nemen, ontvang je de komende %2 %1 KpS.", + "However, you will get %1 CpS for the next %2 after that.": "Maar daarna ontvang je de volgende %2 %1 KpS.", + "You must also pay an immediate downpayment of %1 (%2% of your current bank).": "Je dient ook een directe aanbetaling van %1 te betalen (%2% van je huidige voorraad).", + "Loan over": "Lening voorbij", + "Your loan has expired, and you must now repay the interest.": "Je lening is verlopen en je moet nu de rente betalen.", + "Line style": "Lijnstijl", + "Color mode": "Kleurmodus", + "Toggle speed": "Schakelsnelheid", + "Click to refill your opportunity timer (and give a quick burst to your economy) for %1.": "Klik om voor %1 je kansentimer bij te vullen (en geef je economie een snelle groei).", + "Profits: %1. All prices are in $econds of your highest raw cookies per second.": "Winst: %1. Alle prijzen zijn in seconden van je hoogste hoeveelheid rauwe koekjes per seconde.", + "The stock market is more chaotic.": "De aandelenmarkt is chaotischer.", + "[Upgrade name 0]Reinforced index finger": "Sterkere wijsvinger", + "[Upgrade name 1]Carpal tunnel prevention cream": "Crème tegen carpaletunnelsyndroom", + "[Upgrade name 2]Ambidextrous": "Met twee handen", + "[Upgrade name 3]Thousand fingers": "Duizend vingers", + "[Upgrade name 4]Million fingers": "Een miljoen vingers", + "[Upgrade name 5]Billion fingers": "Een miljard vingers", + "[Upgrade name 6]Trillion fingers": "Een biljoen vingers", + "[Upgrade name 7]Forwards from grandma": "Verder met oma", + "[Upgrade name 8]Steel-plated rolling pins": "Stalen deegrollers", + "[Upgrade name 9]Lubricated dentures": "Gesmeerd gebit", + "[Upgrade name 10]Cheap hoes": "Goedkope schoffels", + "[Upgrade name 11]Fertilizer": "Kunstmest", + "[Upgrade name 12]Cookie trees": "Koekjesbomen", + "[Upgrade name 13]Sturdier conveyor belts": "Stevigere lopende banden", + "[Upgrade name 14]Child labor": "Kinderarbeid", + "[Upgrade name 15]Sweatshop": "Sweatshop", + "[Upgrade name 16]Sugar gas": "Suikergas", + "[Upgrade name 17]Megadrill": "Megaboor", + "[Upgrade name 18]Ultradrill": "Ultraboor", + "[Upgrade name 19]Vanilla nebulae": "Vanillenevel", + "[Upgrade name 20]Wormholes": "Wormgaten", + "[Upgrade name 21]Frequent flyer": "Frequente reiziger", + "[Upgrade name 22]Antimony": "Antimonium", + "[Upgrade name 23]Essence of dough": "De essentie van deeg", + "[Upgrade name 24]True chocolate": "Echte chocolade", + "[Upgrade name 25]Ancient tablet": "Eeuwenoude tablet", + "[Upgrade name 26]Insane oatling workers": "Gestoorde werkers", + "[Upgrade name 27]Soul bond": "Pact met de duivel", + "[Upgrade name 28]Flux capacitors": "Fluxcondensators", + "[Upgrade name 29]Time paradox resolver": "Tijdparadoxbeëindiger", + "[Upgrade name 30]Quantum conundrum": "Dimensiemysterie", + "[Upgrade name 31]Kitten helpers": "Kattenhelpers", + "[Upgrade name 32]Kitten workers": "Kattenwerkers", + "[Upgrade name 33]Plain cookies": "Gewone koekjes", + "[Upgrade name 34]Sugar cookies": "Suikerkoekjes", + "[Upgrade name 35]Oatmeal raisin cookies": "Haver-rozijnkoekjes", + "[Upgrade name 36]Peanut butter cookies": "Pindakaaskoekjes", + "[Upgrade name 37]Coconut cookies": "Kokoskoekjes", + "[Upgrade name 38]White chocolate cookies": "Witte-chocoladekoekjes", + "[Upgrade name 39]Macadamia nut cookies": "Macadamiakoekjes", + "[Upgrade name 40]Double-chip cookies": "Koekjes met extra chocolade", + "[Upgrade name 41]White chocolate macadamia nut cookies": "Macadamiakoekjes met witte chocolade", + "[Upgrade name 42]All-chocolate cookies": "Koekjes met alleen chocolade", + "[Upgrade name 43]Quadrillion fingers": "Een biljard vingers", + "[Upgrade name 44]Prune juice": "Pruimensap", + "[Upgrade name 45]Genetically-modified cookies": "Genetisch gemanipuleerde koekjes", + "[Upgrade name 46]Radium reactors": "Radiumreactors", + "[Upgrade name 47]Ultimadrill": "Ultimaboor", + "[Upgrade name 48]Warp drive": "Warpdrive", + "[Upgrade name 49]Ambrosia": "Ambrozijn", + "[Upgrade name 50]Sanity dance": "Dans der Normalen", + "[Upgrade name 51]Causality enforcer": "Causaliteitsbedwinger", + "[Upgrade name 52]Lucky day": "Geluksdag", + "[Upgrade name 53]Serendipity": "Serendipiteit", + "[Upgrade name 54]Kitten engineers": "Katteningenieurs", + "[Upgrade name 55]Dark chocolate-coated cookies": "Koekjes met pure-chocoladelaag", + "[Upgrade name 56]White chocolate-coated cookies": "Koekjes met witte-chocoladelaag", + "[Upgrade name 57]Farmer grandmas": "Boerderij-oma's", + "[Upgrade name 58]Miner grandmas": "Mijnoma's", + "[Upgrade name 59]Worker grandmas": "Omawerkers", + "[Upgrade name 60]Cosmic grandmas": "Heelal-oma's", + "[Upgrade name 61]Transmuted grandmas": "Getransmuteerde oma's", + "[Upgrade name 62]Altered grandmas": "Veranderde oma's", + "[Upgrade name 63]Grandmas' grandmas": "Oma's van oma's", + "[Upgrade name 64]Bingo center/Research facility": "Bingocentrum/onderzoekslocatie", + "[Upgrade name 65]Specialized chocolate chips": "Gespecialiseerde chocoladechips", + "[Upgrade name 66]Designer cocoa beans": "Designercacaobonen", + "[Upgrade name 67]Ritual rolling pins": "Rituele deegrollers", + "[Upgrade name 68]Underworld ovens": "Ovens uit de onderwereld", + "[Upgrade name 69]One mind": "Samen één", + "[Upgrade name 70]Exotic nuts": "Exotische noten", + "[Upgrade name 71]Communal brainsweep": "Collectieve hersenspoeling", + "[Upgrade name 72]Arcane sugar": "Esoterisch suiker", + "[Upgrade name 73]Elder Pact": "Ouderlingenpact", + "[Upgrade name 74]Elder Pledge": "Ouderlingenbelofte", + "[Upgrade name 75]Plastic mouse": "Plastic muis", + "[Upgrade name 76]Iron mouse": "IJzeren muis", + "[Upgrade name 77]Titanium mouse": "Titanium muis", + "[Upgrade name 78]Adamantium mouse": "Adamantium muis", + "[Upgrade name 79]Ultrascience": "Ultrawetenschap", + "[Upgrade name 80]Eclipse cookies": "Eclipskoekjes", + "[Upgrade name 81]Zebra cookies": "Zebrakoekjes", + "[Upgrade name 82]Quintillion fingers": "Een triljoen vingers", + "[Upgrade name 83]Gold hoard": "Gouden verzameling", + "[Upgrade name 84]Elder Covenant": "Ouderlingenverbond", + "[Upgrade name 85]Revoke Elder Covenant": "Ouderlingenverbond intrekken", + "[Upgrade name 86]Get lucky": "Gelukstreffer", + "[Upgrade name 87]Sacrificial rolling pins": "Opgeofferde deegrollers", + "[Upgrade name 88]Snickerdoodles": "Snickerdoodles", + "[Upgrade name 89]Stroopwafels": "Stroopwafels", + "[Upgrade name 90]Macaroons": "Macarons", + "[Upgrade name 91]Neuromancy": "Neuromantie", + "[Upgrade name 92]Empire biscuits": "Keizerbiscuitjes", + "[Upgrade name 93]British tea biscuits": "Britse theebiscuitjes", + "[Upgrade name 94]Chocolate british tea biscuits": "Britse theebiscuitjes van chocolade", + "[Upgrade name 95]Round british tea biscuits": "Ronde Britse theebiscuitjes", + "[Upgrade name 96]Round chocolate british tea biscuits": "Ronde Britse theebiscuitjes van chocolade", + "[Upgrade name 97]Round british tea biscuits with heart motif": "Ronde Britse theebiscuitjes met een hartje", + "[Upgrade name 98]Round chocolate british tea biscuits with heart motif": "Ronde Britse theebiscuitjes van chocolade met een hartje", + "[Upgrade name 99]Sugar bosons": "Suikerbosons", + "[Upgrade name 100]String theory": "Snaartheorie", + "[Upgrade name 101]Large macaron collider": "Grote macaroncollider", + "[Upgrade name 102]Big bang bake": "Bakken tijdens de oerknal", + "[Upgrade name 103]Antigrandmas": "Anti-oma", + "[Upgrade name 104]Madeleines": "Madeleines", + "[Upgrade name 105]Palmiers": "Palmiers", + "[Upgrade name 106]Palets": "Palets", + "[Upgrade name 107]Sablés": "Zandkoekjes", + "[Upgrade name 108]Kitten overseers": "Kattenopzichters", + "[Upgrade name 109]Sextillion fingers": "Een triljard vingers", + "[Upgrade name 110]Double-thick glasses": "Dikke bril", + "[Upgrade name 111]Gingerbread scarecrows": "Vogelverschrikkers van gemberkoek", + "[Upgrade name 112]Recombobulators": "Recombobulators", + "[Upgrade name 113]H-bomb mining": "Delven met een waterstofbom", + "[Upgrade name 114]Chocolate monoliths": "Chocolademonolieten", + "[Upgrade name 115]Aqua crustulae": "Aqua crustulae", + "[Upgrade name 116]Brane transplant": "Braantransplantatie", + "[Upgrade name 117]Yestermorrow comparators": "Tijdvergelijkers", + "[Upgrade name 118]Reverse cyclotrons": "Omgekeerde deeltjesversnellers", + "[Upgrade name 119]Unobtainium mouse": "Unobtainium muis", + "[Upgrade name 120]Caramoas": "Caramia's", + "[Upgrade name 121]Sagalongs": "Sagalongs", + "[Upgrade name 122]Shortfoils": "Lieverkoekjes", + "[Upgrade name 123]Win mints": "Mintkoekjes", + "[Upgrade name 124]Perfect idling": "Perfecte luiheid", + "[Upgrade name 125]Fig gluttons": "Vijgenkoekjes", + "[Upgrade name 126]Loreols": "L'Oreo's", + "[Upgrade name 127]Jaffa cakes": "Jaffa cakes", + "[Upgrade name 128]Grease's cups": "Oliekoekjes", + "[Upgrade name 129]Heavenly chip secret": "Geheim van het hemelse stukje", + "[Upgrade name 130]Heavenly cookie stand": "Kraam voor hemelse stukjes", + "[Upgrade name 131]Heavenly bakery": "Hemelse bakkerij", + "[Upgrade name 132]Heavenly confectionery": "Hemelse baksels", + "[Upgrade name 133]Heavenly key": "Hemelse sleutel", + "[Upgrade name 134]Skull cookies": "Schedelkoekjes", + "[Upgrade name 135]Ghost cookies": "Spookkoekjes", + "[Upgrade name 136]Bat cookies": "Vleermuiskoekjes", + "[Upgrade name 137]Slime cookies": "Slijmkoekjes", + "[Upgrade name 138]Pumpkin cookies": "Pompoenkoekjes", + "[Upgrade name 139]Eyeball cookies": "Oogbalkoekjes", + "[Upgrade name 140]Spider cookies": "Spinnenkoekjes", + "[Upgrade name 141]Persistent memory": "Aanhoudend geheugen", + "[Upgrade name 142]Wrinkler doormat": "Deurmat voor mee-eters", + "[Upgrade name 143]Christmas tree biscuits": "Kerstboomkoekjes", + "[Upgrade name 144]Snowflake biscuits": "Sneeuwvlokkoekjes", + "[Upgrade name 145]Snowman biscuits": "Sneeuwpopkoekjes", + "[Upgrade name 146]Holly biscuits": "Hulstkoekjes", + "[Upgrade name 147]Candy cane biscuits": "Zuurstokkoekjes", + "[Upgrade name 148]Bell biscuits": "Klokkoekjes", + "[Upgrade name 149]Present biscuits": "Cadeaukoekjes", + "[Upgrade name 150]Gingerbread men": "Peperkoekmannetjes", + "[Upgrade name 151]Gingerbread trees": "Peperkoekbomen", + "[Upgrade name 152]A festive hat": "Een kerstmuts", + "[Upgrade name 153]Increased merriness": "Meer vrolijkheid", + "[Upgrade name 154]Improved jolliness": "Meer joligheid", + "[Upgrade name 155]A lump of coal": "Een stukje steenkool", + "[Upgrade name 156]An itchy sweater": "Een kriebeltrui", + "[Upgrade name 157]Reindeer baking grounds": "Het rendierenbakdomein", + "[Upgrade name 158]Weighted sleighs": "Verzwaarde sleeën", + "[Upgrade name 159]Ho ho ho-flavored frosting": "Glazuur met ho-ho-hosmaak", + "[Upgrade name 160]Season savings": "Kortingen voor de feestdagen", + "[Upgrade name 161]Toy workshop": "Speelgoedwerkplaats", + "[Upgrade name 162]Naughty list": "Lijst met stoute oma's", + "[Upgrade name 163]Santa's bottomless bag": "De bodemloze buidel van de kerstman", + "[Upgrade name 164]Santa's helpers": "Helpers van de kerstman", + "[Upgrade name 165]Santa's legacy": "Zo doet de kerstman het", + "[Upgrade name 166]Santa's milk and cookies": "Melk en koekjes voor de kerstman", + "[Upgrade name 167]Reindeer season": "Rendierseizoen", + "[Upgrade name 168]Santa's dominion": "Het domein van de kerstman", + "[Upgrade name 169]Pure heart biscuits": "Normale hartkoekjes", + "[Upgrade name 170]Ardent heart biscuits": "Rode hartkoekjes", + "[Upgrade name 171]Sour heart biscuits": "Zure hartkoekjes", + "[Upgrade name 172]Weeping heart biscuits": "Huilende hartkoekjes", + "[Upgrade name 173]Golden heart biscuits": "Gouden hartkoekjes", + "[Upgrade name 174]Eternal heart biscuits": "Eeuwige hartkoekjes", + "[Upgrade name 175]Gem polish": "Edelsteen polijsten", + "[Upgrade name 176]9th color": "9e kleur", + "[Upgrade name 177]Chocolate light": "Chocoladelicht", + "[Upgrade name 178]Grainbow": "Graanboog", + "[Upgrade name 179]Pure cosmic light": "Zuiver ruimtelicht", + "[Upgrade name 180]Rainbow grandmas": "Regenboogoma's", + "[Upgrade name 181]Season switcher": "Evenementenwisselaar", + "[Upgrade name 182]Festive biscuit": "Kerstkoekje", + "[Upgrade name 183]Ghostly biscuit": "Spookachtig koekje", + "[Upgrade name 184]Lovesick biscuit": "Verliefd koekje", + "[Upgrade name 185]Fool's biscuit": "Dwazenkoekje", + "[Upgrade name 186]Eternal seasons": "Eeuwige evenementen", + "[Upgrade name 187]Kitten managers": "Kattenmanagers", + "[Upgrade name 188]Septillion fingers": "Quadriljoen vingers", + "[Upgrade name 189]Octillion fingers": "Quadriljard vingers", + "[Upgrade name 190]Eludium mouse": "Eludium muis", + "[Upgrade name 191]Wishalloy mouse": "Muis van wenslegering", + "[Upgrade name 192]Aging agents": "Oma-arbeid", + "[Upgrade name 193]Pulsar sprinklers": "Pulsarsproeiers", + "[Upgrade name 194]Deep-bake process": "Geheimzinnig bakproces", + "[Upgrade name 195]Coreforge": "Tot de kern", + "[Upgrade name 196]Generation ship": "Generatieschip", + "[Upgrade name 197]Origin crucible": "Oerkroes", + "[Upgrade name 198]Deity-sized portals": "Godportalen", + "[Upgrade name 199]Far future enactment": "Toekomstverordening", + "[Upgrade name 200]Nanocosmics": "Nanokosmos", + "[Upgrade name 201]Glow-in-the-dark": "Glow-in-the-dark", + "[Upgrade name 202]Rose macarons": "Roze macarons", + "[Upgrade name 203]Lemon macarons": "Citroenmacarons", + "[Upgrade name 204]Chocolate macarons": "Chocolademacarons", + "[Upgrade name 205]Pistachio macarons": "Pistachemacarons", + "[Upgrade name 206]Hazelnut macarons": "Hazelnootmacarons", + "[Upgrade name 207]Violet macarons": "Violette macarons", + "[Upgrade name 208]Magic shenanigans": "Magisch rotgeintje", + "[Upgrade name 209]Bunny biscuit": "Hazenkoekje", + "[Upgrade name 210]Chicken egg": "Kippenei", + "[Upgrade name 211]Duck egg": "Eendenei", + "[Upgrade name 212]Turkey egg": "Kalkoenei", + "[Upgrade name 213]Quail egg": "Kwartelei", + "[Upgrade name 214]Robin egg": "Roodborstjesei", + "[Upgrade name 215]Ostrich egg": "Struisvogelei", + "[Upgrade name 216]Cassowary egg": "Kasuarisei", + "[Upgrade name 217]Salmon roe": "Zalmeitjes", + "[Upgrade name 218]Frogspawn": "Kikkereitjes", + "[Upgrade name 219]Shark egg": "Haaienei", + "[Upgrade name 220]Turtle egg": "Schildpad-ei", + "[Upgrade name 221]Ant larva": "Mierenlarven", + "[Upgrade name 222]Golden goose egg": "Ei van een gouden gans", + "[Upgrade name 223]Faberge egg": "Fabergé-ei", + "[Upgrade name 224]Wrinklerspawn": "Mee-etereitjes", + "[Upgrade name 225]Cookie egg": "Koekjesei", + "[Upgrade name 226]Omelette": "Omelet", + "[Upgrade name 227]Chocolate egg": "Chocolade-ei", + "[Upgrade name 228]Century egg": "Eeuw-ei", + "[Upgrade name 229]\"egg\"": "\"ei\"", + "[Upgrade name 230]Caramel macarons": "Karamelmacarons", + "[Upgrade name 231]Licorice macarons": "Dropmacarons", + "[Upgrade name 232]Taller tellers": "Grotere geldautomaten", + "[Upgrade name 233]Scissor-resistant credit cards": "Schaarbestendige creditcards", + "[Upgrade name 234]Acid-proof vaults": "Zuurbestendige kluizen", + "[Upgrade name 235]Chocolate coins": "Chocolademunten", + "[Upgrade name 236]Exponential interest rates": "Exponentiële rentevoeten", + "[Upgrade name 237]Financial zen": "Financiële zen", + "[Upgrade name 238]Golden idols": "Gouden afgod", + "[Upgrade name 239]Sacrifices": "Offers", + "[Upgrade name 240]Delicious blessing": "Heerlijke zegening", + "[Upgrade name 241]Sun festival": "Zonfestival", + "[Upgrade name 242]Enlarged pantheon": "Groter pantheon", + "[Upgrade name 243]Great Baker in the sky": "Machtige Bakker in de lucht", + "[Upgrade name 244]Pointier hats": "Puntigere hoeden", + "[Upgrade name 245]Beardlier beards": "Langere baarden", + "[Upgrade name 246]Ancient grimoires": "Oude grimoires", + "[Upgrade name 247]Kitchen curses": "Keukenvloeken", + "[Upgrade name 248]School of sorcery": "Tovenaarsschool", + "[Upgrade name 249]Dark formulas": "Donkere formules", + "[Upgrade name 250]Banker grandmas": "Bankieroma's", + "[Upgrade name 251]Priestess grandmas": "Priesteressenoma's", + "[Upgrade name 252]Witch grandmas": "Heksoma's", + "[Upgrade name 253]Tin of british tea biscuits": "Blikje Britse theebiscuitjes", + "[Upgrade name 254]Box of macarons": "Doos macarons", + "[Upgrade name 255]Box of brand biscuits": "Doos merkkoekjes", + "[Upgrade name 256]Pure black chocolate cookies": "Pure-chocoladekoekjes", + "[Upgrade name 257]Pure white chocolate cookies": "Witte-chocoladekoekjes", + "[Upgrade name 258]Ladyfingers": "Lange vingers", + "[Upgrade name 259]Tuiles": "Tuiles", + "[Upgrade name 260]Chocolate-stuffed biscuits": "Koekjes met chocoladevulling", + "[Upgrade name 261]Checker cookies": "Dambordkoekjes", + "[Upgrade name 262]Butter cookies": "Boterkoekjes", + "[Upgrade name 263]Cream cookies": "Crèmekoekjes", + "[Upgrade name 264]Permanent upgrade slot I": "Permanent upgradevakje I", + "[Upgrade name 265]Permanent upgrade slot II": "Permanent upgradevakje II", + "[Upgrade name 266]Permanent upgrade slot III": "Permanent upgradevakje III", + "[Upgrade name 267]Permanent upgrade slot IV": "Permanent upgradevakje IV", + "[Upgrade name 268]Permanent upgrade slot V": "Permanent upgradevakje V", + "[Upgrade name 269]Starspawn": "Van de paashaas", + "[Upgrade name 270]Starsnow": "Sneeuwpret", + "[Upgrade name 271]Starterror": "Lekker griezelen", + "[Upgrade name 272]Starlove": "Stapelverliefd", + "[Upgrade name 273]Startrade": "Handel in koekjes", + "[Upgrade name 274]Angels": "Engelen", + "[Upgrade name 275]Archangels": "Aartsengelen", + "[Upgrade name 276]Virtues": "Deugden", + "[Upgrade name 277]Dominions": "Domeinen", + "[Upgrade name 278]Cherubim": "Cherubijnen", + "[Upgrade name 279]Seraphim": "Serafijnen", + "[Upgrade name 280]God": "God", + "[Upgrade name 281]Twin Gates of Transcendence": "Dubbele poorten van transcendentie ", + "[Upgrade name 282]Heavenly luck": "Geluk uit de hemel", + "[Upgrade name 283]Lasting fortune": "Voortdurend geluk", + "[Upgrade name 284]Decisive fate": "Beslissend lot", + "[Upgrade name 285]Divine discount": "Hemelse korting", + "[Upgrade name 286]Divine sales": "Hemelse uitverkoop", + "[Upgrade name 287]Divine bakeries": "Hemelse bakkerijen", + "[Upgrade name 288]Starter kit": "Beginnerskit", + "[Upgrade name 289]Starter kitchen": "Beginnerskeuken", + "[Upgrade name 290]Halo gloves": "Halohandschoenen", + "[Upgrade name 291]Kitten angels": "Kattenengelen", + "[Upgrade name 292]Unholy bait": "Twijfelachtig aas", + "[Upgrade name 293]Sacrilegious corruption": "Oneerbare corruptie", + "[Upgrade name 294]Xtreme walkers": "Extreme looprekken", + "[Upgrade name 295]Fudge fungus": "Fudgeschimmel", + "[Upgrade name 296]Planetsplitters": "Planeetscheiders", + "[Upgrade name 297]Cyborg workforce": "Cyborg personeel", + "[Upgrade name 298]Way of the wallet": "De geldmethode", + "[Upgrade name 299]Creation myth": "Creatiemythe", + "[Upgrade name 300]Cookiemancy": "Koekjesmantie", + "[Upgrade name 301]Dyson sphere": "Dyson-bol", + "[Upgrade name 302]Theory of atomic fluidity": "Theorie van de vloeibaarheid van atomen", + "[Upgrade name 303]End of times back-up plan": "Plan B voor het einde der tijden", + "[Upgrade name 304]Great loop hypothesis": "Hypothese van de grote cyclus", + "[Upgrade name 305]The Pulse": "Hartslag van de kosmos", + "[Upgrade name 306]Lux sanctorum": "Lux sanctorum", + "[Upgrade name 307]The Unbridling": "Het Loslaten", + "[Upgrade name 308]Wheat triffids": "Tarwetriffids", + "[Upgrade name 309]Canola oil wells": "Canola-oliebronnen", + "[Upgrade name 310]78-hour days": "Dagen van 78 uur", + "[Upgrade name 311]The stuff rationale": "Het rationele spul", + "[Upgrade name 312]Theocracy": "Theocratie", + "[Upgrade name 313]Rabbit trick": "Konijnentruc", + "[Upgrade name 314]The final frontier": "De laatste grens", + "[Upgrade name 315]Beige goo": "Beige drap", + "[Upgrade name 316]Maddening chants": "Gekke liedjes", + "[Upgrade name 317]Cookietopian moments of maybe": "Koekjestopie: hoe zou dat zijn?", + "[Upgrade name 318]Some other super-tiny fundamental particle? Probably?": "Nog zo'n superklein fundamenteel deeltje? Misschien?", + "[Upgrade name 319]Reverse shadows": "Omgekeerde schaduwen", + "[Upgrade name 320]Kitten accountants": "Kattenaccountants", + "[Upgrade name 321]Kitten specialists": "Kattenspecialisten", + "[Upgrade name 322]Kitten experts": "Kattenexperts", + "[Upgrade name 323]How to bake your dragon": "Hoe bak je een draak?", + "[Upgrade name 324]A crumbly egg": "Een kruimelei", + "[Upgrade name 325]Chimera": "Chimaera", + "[Upgrade name 326]Tin of butter cookies": "Blikje boterkoekjes", + "[Upgrade name 327]Golden switch": "Gouden schakelaar", + "[Upgrade name 328]Classic dairy selection": "Klassieke zuivelselectie", + "[Upgrade name 329]Fanciful dairy selection": "Denkbeeldige zuivelselectie", + "[Upgrade name 330]Dragon cookie": "Drakenkoekje", + "[Upgrade name 331]Golden switch [off]": "Gouden schakelaar [uit]", + "[Upgrade name 332]Golden switch [on]": "Gouden schakelaar [aan]", + "[Upgrade name 333]Milk selector": "Melkkiezer", + "[Upgrade name 334]Milk chocolate butter biscuit": "Boterkoekje met melkchocolade", + "[Upgrade name 335]Dark chocolate butter biscuit": "Boterkoekje met pure chocolade", + "[Upgrade name 336]White chocolate butter biscuit": "Boterkoekje met witte chocolade", + "[Upgrade name 337]Ruby chocolate butter biscuit": "Boterkoekje met robijnchocolade", + "[Upgrade name 338]Gingersnaps": "Gingersnaps", + "[Upgrade name 339]Cinnamon cookies": "Kaneelkoekjes", + "[Upgrade name 340]Vanity cookies": "IJdelkoekjes", + "[Upgrade name 341]Cigars": "Sigarenkoekjes", + "[Upgrade name 342]Pinwheel cookies": "Molenkoekje", + "[Upgrade name 343]Fudge squares": "Fudge", + "[Upgrade name 344]Digits": "Vingerkoekjes", + "[Upgrade name 345]Butter horseshoes": "Hoefijzerkoekjes", + "[Upgrade name 346]Butter pucks": "Boterpucks", + "[Upgrade name 347]Butter knots": "Boterkrakelingen", + "[Upgrade name 348]Butter slabs": "Botertabletten", + "[Upgrade name 349]Butter swirls": "Boterkrullen", + "[Upgrade name 350]Shortbread biscuits": "Shortbreadkoekjes", + "[Upgrade name 351]Millionaires' shortbreads": "Shortbreads voor miljonairs", + "[Upgrade name 352]Caramel cookies": "Karamelkoekjes", + "[Upgrade name 353]Belphegor": "Belphegor", + "[Upgrade name 354]Mammon": "Mammon", + "[Upgrade name 355]Abaddon": "Abaddon", + "[Upgrade name 356]Satan": "Satan", + "[Upgrade name 357]Asmodeus": "Asmodeus", + "[Upgrade name 358]Beelzebub": "Beëlzebub", + "[Upgrade name 359]Lucifer": "Lucifer", + "[Upgrade name 360]Golden cookie alert sound": "Geluid voor gouden koekje", + "[Upgrade name 361]Golden cookie sound selector": "Geluidskiezer voor gouden koekje", + "[Upgrade name 362]Basic wallpaper assortment": "Basisassortiment achtergronden", + "[Upgrade name 363]Legacy": "Erfenis", + "[Upgrade name 364]Elder spice": "Ouderlingenkruid", + "[Upgrade name 365]Residual luck": "Restgeluk", + "[Upgrade name 366]Fantasteel mouse": "Fantastalen muis", + "[Upgrade name 367]Nevercrack mouse": "Onbreekbare muis", + "[Upgrade name 368]Five-finger discount": "Korting bij vijf vingers", + "[Upgrade name 369]Future almanacs": "Almanaks uit de toekomst", + "[Upgrade name 370]Rain prayer": "Regengebed", + "[Upgrade name 371]Seismic magic": "Seismische magie", + "[Upgrade name 372]Asteroid mining": "Delven van asteroïden", + "[Upgrade name 373]Quantum electronics": "Kwantumelektronica", + "[Upgrade name 374]Temporal overclocking": "Tijdelijk meer snelheid", + "[Upgrade name 375]Contracts from beyond": "Contracten van gene zijde", + "[Upgrade name 376]Printing presses": "Drukpersen", + "[Upgrade name 377]Paganism": "Goddeloosheid", + "[Upgrade name 378]God particle": "Goddeeltje", + "[Upgrade name 379]Arcane knowledge": "Geheime kennis", + "[Upgrade name 380]Magical botany": "Magische plantkunde", + "[Upgrade name 381]Fossil fuels": "Brandstof van fossielen", + "[Upgrade name 382]Shipyards": "Scheepswerven", + "[Upgrade name 383]Primordial ores": "Oererts", + "[Upgrade name 384]Gold fund": "Gouden fundering", + "[Upgrade name 385]Infernal crops": "Helse gewassen", + "[Upgrade name 386]Abysmal glimmer": "Ongrijpbare glinstering", + "[Upgrade name 387]Relativistic parsec-skipping": "Relativistisch overslaan van parsecs", + "[Upgrade name 388]Primeval glow": "Oergloed", + "[Upgrade name 389]Extra physics funding": "Geld voor extra natuurwetenschap", + "[Upgrade name 390]Chemical proficiency": "Chemiekunde", + "[Upgrade name 391]Light magic": "Lichtmagie", + "[Upgrade name 392]Mystical energies": "Mystieke energie", + "[Upgrade name 393]Synergies Vol. I": "Synergieën deel I", + "[Upgrade name 394]Synergies Vol. II": "Synergieën deel II", + "[Upgrade name 395]Heavenly cookies": "Hemelse koekjes", + "[Upgrade name 396]Wrinkly cookies": "Rimpelige koekjes", + "[Upgrade name 397]Distilled essence of redoubled luck": "Gedistilleerd extract van dubbel geluk", + "[Upgrade name 398]Occult obstruction": "Duistere belemmering", + "[Upgrade name 399]Glucose-charged air": "Glucosebevattende lucht", + "[Upgrade name 400]Lavender chocolate butter biscuit": "Chocoladeboterkoekje met lavendel", + "[Upgrade name 401]Lombardia cookies": "Lombardijekoekjes", + "[Upgrade name 402]Bastenaken cookies": "Bastognekoeken", + "[Upgrade name 403]Pecan sandies": "Zandkoekjes met pecannoten", + "[Upgrade name 404]Moravian spice cookies": "Moravische koekjes", + "[Upgrade name 405]Anzac biscuits": "Anzac-koekjes", + "[Upgrade name 406]Buttercakes": "Botercakes", + "[Upgrade name 407]Ice cream sandwiches": "IJswafels", + "[Upgrade name 408]Stevia Caelestis": "Stevia Caelestis", + "[Upgrade name 409]Diabetica Daemonicus": "Diabetica Daemonicus", + "[Upgrade name 410]Sucralosia Inutilis": "Sucralosia Inutilis", + "[Upgrade name 411]Lucky digit": "Geluksgetal", + "[Upgrade name 412]Lucky number": "Geluksnummer", + "[Upgrade name 413]Lucky payout": "Geluksbetaling", + "[Upgrade name 414]Background selector": "Achtergrondkiezer", + "[Upgrade name 415]Lucky grandmas": "Geluksoma's", + "[Upgrade name 416]Your lucky cookie": "Jouw gelukskoekje", + "[Upgrade name 417]\"All Bets Are Off\" magic coin": "Magische \"Geen kans\"-munt", + "[Upgrade name 418]Winning lottery ticket": "Winnend lot", + "[Upgrade name 419]Four-leaf clover field": "Veld met vierbladige klavers", + "[Upgrade name 420]A recipe book about books": "Een receptenboek over boeken", + "[Upgrade name 421]Leprechaun village": "Dwergendorp", + "[Upgrade name 422]Improbability drive": "Onwaarschijnlijkheidsmotor", + "[Upgrade name 423]Antisuperstistronics": "Antisuperstistronica", + "[Upgrade name 424]Gemmed talismans": "Talismannen met edelstenen", + "[Upgrade name 425]Kitten consultants": "Kattenadviseurs", + "[Upgrade name 426]Birthday cookie": "Verjaardagskoekje", + "[Upgrade name 427]Armythril mouse": "Armithrilmuis", + "[Upgrade name 428]Reverse dementia": "Omgekeerde dementie", + "[Upgrade name 429]Humane pesticides": "Humane pesticiden", + "[Upgrade name 430]Mole people": "Molmensen", + "[Upgrade name 431]Machine learning": "Machineonderwijs", + "[Upgrade name 432]Edible money": "Eetbaar geld", + "[Upgrade name 433]Sick rap prayers": "Vette rapgebeden", + "[Upgrade name 434]Deluxe tailored wands": "Luxe op maat gemaakte toverstokken", + "[Upgrade name 435]Autopilot": "Automatische piloot", + "[Upgrade name 436]The advent of chemistry": "De komst van chemie", + "[Upgrade name 437]The real world": "De echte wereld", + "[Upgrade name 438]Second seconds": "Dubbele seconden", + "[Upgrade name 439]Quantum comb": "Kwantumkam", + "[Upgrade name 440]Crystal mirrors": "Kristallen spiegels", + "[Upgrade name 441]Bunnypedes": "Konijnenpoten", + "[Upgrade name 442]Kitten assistants to the regional manager": "Kattenassistenten voor de regiomanager", + "[Upgrade name 443]Charm quarks": "Toverquarks", + "[Upgrade name 444]Pink biscuits": "Champagnekoekjes", + "[Upgrade name 445]Whole-grain cookies": "Volkorenkoekjes", + "[Upgrade name 446]Candy cookies": "Koekjes met snoepjes erop", + "[Upgrade name 447]Big chip cookies": "Koekjes met extra grote chocoladestukjes", + "[Upgrade name 448]One chip cookies": "Koekjes met één chocoladestukje", + "[Upgrade name 449]Sugar baking": "Bakken met suiker", + "[Upgrade name 450]Sugar craving": "Suikermanie", + "[Upgrade name 451]Sugar aging process": "Suikerveroudering", + "[Upgrade name 452]Sugar frenzy": "Suikerfrenzy", + "[Upgrade name 453]Sprinkles cookies": "Koekjes met sprinkels", + "[Upgrade name 454]Peanut butter blossoms": "Pindakaasblossoms", + "[Upgrade name 455]No-bake cookies": "Koekjes zonder bakken", + "[Upgrade name 456]Florentines": "Florentines", + "[Upgrade name 457]Chocolate crinkles": "Chocoladecraquelés", + "[Upgrade name 458]Maple cookies": "Maple-koekjes", + "[Upgrade name 459]Turbo-charged soil": "Grond met turbo", + "[Upgrade name 460]Technobsidian mouse": "Technobsidiaan muis", + "[Upgrade name 461]Plasmarble mouse": "Plasmarmeren muis", + "[Upgrade name 462]Kitten marketeers": "Kattenmarketeers", + "[Upgrade name 463]Festivity loops": "Feestdonuts", + "[Upgrade name 464]Persian rice cookies": "Persische rijstkoekjes", + "[Upgrade name 465]Norwegian cookies": "Noorse koekjes", + "[Upgrade name 466]Crispy rice cookies": "Koekjes met krokante rijst", + "[Upgrade name 467]Ube cookies": "Ubekoekjes", + "[Upgrade name 468]Butterscotch cookies": "Butterscotchkoekjes", + "[Upgrade name 469]Speculaas": "Speculaas", + "[Upgrade name 470]Elderwort biscuits": "Vlierkruidkoekjes", + "[Upgrade name 471]Bakeberry cookies": "Bakbeskoekjes", + "[Upgrade name 472]Duketater cookies": "Hertogpieperkoekjes", + "[Upgrade name 473]Green yeast digestives": "Volkorenbiscuit met groene gist", + "[Upgrade name 474]Fern tea": "Varenthee", + "[Upgrade name 475]Ichor syrup": "Stuifzwamsiroop", + "[Upgrade name 476]Wheat slims": "Tarweruitjes", + "[Upgrade name 477]Synthetic chocolate green honey butter biscuit": "Groen honingboterkoekje met synthetische chocolade", + "[Upgrade name 478]Royal raspberry chocolate butter biscuit": "Koninklijk chocoladeboterkoekje met framboos", + "[Upgrade name 479]Ultra-concentrated high-energy chocolate butter biscuit": "Ultrageconcentreerd chocoladeboterkoekje voor veel energie", + "[Upgrade name 480]Timeproof hair dyes": "Haarverf die de tijd doorstaat", + "[Upgrade name 481]Barnstars": "Schuursterren", + "[Upgrade name 482]Mine canaries": "Mijnkanaries", + "[Upgrade name 483]Brownie point system": "Browniepuntensysteem", + "[Upgrade name 484]Grand supercycles": "Superfietsen", + "[Upgrade name 485]Psalm-reading": "Psalmen lezen", + "[Upgrade name 486]Immobile spellcasting": "Stilstaand toverspreuken gebruiken", + "[Upgrade name 487]Restaurants at the end of the universe": "Restaurants aan het eind van het universum", + "[Upgrade name 488]On second thought": "Laat toch maar zitten", + "[Upgrade name 489]Dimensional garbage gulper": "Dimensionale afvalschrokker", + "[Upgrade name 490]Additional clock hands": "Meer klokwijzers", + "[Upgrade name 491]Baking Nobel prize": "Nobelprijs voor bakken", + "[Upgrade name 492]Reverse theory of light": "Omgekeerde lichttheorie", + "[Upgrade name 493]Revised probabilistics": "Omgekeerde waarschijnlijkheid", + "[Upgrade name 494]Kitten analysts": "Kattenanalysten", + "[Upgrade name 495]Eye of the wrinkler": "Oog van de mee-eter", + "[Upgrade name 496]Inspired checklist": "Handige checklist", + "[Upgrade name 497]Pure pitch-black chocolate butter biscuit": "Boterkoekje met zeer pure chocolade", + "[Upgrade name 498]Chocolate oatmeal cookies": "Haverkoekjes met chocolade", + "[Upgrade name 499]Molasses cookies": "Stroopkoekjes", + "[Upgrade name 500]Biscotti": "Biscotti", + "[Upgrade name 501]Waffle cookies": "Wafels", + "[Upgrade name 502]Almond cookies": "Amandelkoekjes", + "[Upgrade name 503]Hazelnut cookies": "Hazelnootkoekjes", + "[Upgrade name 504]Walnut cookies": "Walnootkoekjes", + "[Upgrade name 505]Label printer": "Labelprinter", + "[Upgrade name 506]Good manners": "Goede manieren", + "[Upgrade name 507]Lindworms": "Lintwormen", + "[Upgrade name 508]Bore again": "Opnieuw geboord worden", + "[Upgrade name 509]\"Volunteer\" interns": "\"Vrijwillige\" stagiaires", + "[Upgrade name 510]Rules of acquisition": "Regels van verwerving", + "[Upgrade name 511]War of the gods": "Oorlog der goden", + "[Upgrade name 512]Electricity": "Elektriciteit", + "[Upgrade name 513]Universal alphabet": "Universeel alfabet", + "[Upgrade name 514]Public betterment": "Publieke verbetering", + "[Upgrade name 515]Embedded microportals": "Ingebedde microportalen", + "[Upgrade name 516]Nostalgia": "Nostalgie", + "[Upgrade name 517]The definite molecule": "De definitieve molecuul", + "[Upgrade name 518]Light capture measures": "Maatregelen voor het vangen van licht", + "[Upgrade name 519]0-sided dice": "Dobbelsteen met nul kanten", + "[Upgrade name 520]Heralds": "Herauten", + "[Upgrade name 521]Metagrandmas": "Meta-oma's", + "[Upgrade name 522]Metabakeries": "Metabakkerijen", + "[Upgrade name 523]Mandelbrown sugar": "Mandelbruine suiker", + "[Upgrade name 524]Fractoids": "Freiten", + "[Upgrade name 525]Nested universe theory": "Theorie van het ingebedde universum", + "[Upgrade name 526]Menger sponge cake": "Absorberende sponscake", + "[Upgrade name 527]One particularly good-humored cow": "Een bijzonder goed gehumeurde koe", + "[Upgrade name 528]Chocolate ouroboros": "Chocolade-ouroboros", + "[Upgrade name 529]Nested": "Ingebed", + "[Upgrade name 530]Space-filling fibers": "Ruimtevullende vezels", + "[Upgrade name 531]Endless book of prose": "Eindeloos prozaboek", + "[Upgrade name 532]The set of all sets": "De set van alle sets", + "[Upgrade name 533]Recursive mirrors": "Andersomspiegels", + "[Upgrade name 534]Mice clicking mice": "Muizen die op muizen klikken", + "[Upgrade name 535]Custard creams": "Custardcrèmes", + "[Upgrade name 536]Bourbon biscuits": "Bourbonkoekjes", + "[Upgrade name 537]Keepsakes": "Souvenirs", + "[Upgrade name 538]Mini-cookies": "Minikoekjes", + "[Upgrade name 539]Sugar crystal cookies": "Suikerkristalkoekjes", + "[Upgrade name 540]Box of maybe cookies": "Doos misschien-koekjes", + "[Upgrade name 541]Box of not cookies": "Doos niet-koekjes", + "[Upgrade name 542]Box of pastries": "Doos gebakjes", + "[Upgrade name 543]Profiteroles": "Soesjes", + "[Upgrade name 544]Jelly donut": "Jellydonut", + "[Upgrade name 545]Glazed donut": "Donut met glazuur", + "[Upgrade name 546]Chocolate cake": "Chocoladetaart", + "[Upgrade name 547]Strawberry cake": "Aardbeientaart", + "[Upgrade name 548]Apple pie": "Appeltaart", + "[Upgrade name 549]Lemon meringue pie": "Citroenschuimtaart", + "[Upgrade name 550]Butter croissant": "Botercroissant", + "[Upgrade name 551]Cookie dough": "Koekjesdeeg", + "[Upgrade name 552]Burnt cookie": "Aangebrand koekje", + "[Upgrade name 553]A chocolate chip cookie but with the chips picked off for some reason": "Een chocolate chip cookie maar zonder de stukjes chocolade. Die zijn er vanaf gehaald, en niemand weet waarom.", + "[Upgrade name 554]Flavor text cookie": "Letterkoekje", + "[Upgrade name 555]High-definition cookie": "Gedetailleerd koekje", + "[Upgrade name 556]Toast": "Toast", + "[Upgrade name 557]Peanut butter & jelly": "Pindakaas met jam", + "[Upgrade name 558]Wookies": "Wookies", + "[Upgrade name 559]Cheeseburger": "Cheeseburger", + "[Upgrade name 560]One lone chocolate chip": "Een eenzaam stukje chocolade", + "[Upgrade name 561]Genius accounting": "Slimme boekhouding", + "[Upgrade name 562]Shimmering veil": "Glanzende sluier", + "[Upgrade name 563]Shimmering veil [off]": "Glanzende sluier [uit]", + "[Upgrade name 564]Shimmering veil [on]": "Glanzende sluier [aan]", + "[Upgrade name 565]Whoopie pies": "Whoopie pies", + "[Upgrade name 566]Caramel wafer biscuits": "Karamelwafels", + "[Upgrade name 567]Chocolate chip mocha cookies": "Chocolade-mokkakoekjes", + "[Upgrade name 568]Earl Grey cookies": "Earl Grey-koekjes", + "[Upgrade name 569]Corn syrup cookies": "Glucosestroopkoekjes", + "[Upgrade name 570]Icebox cookies": "Vriezerkoekjes", + "[Upgrade name 571]Graham crackers": "Graham crackers", + "[Upgrade name 572]Hardtack": "Scheepsbeschuit", + "[Upgrade name 573]Cornflake cookies": "Cornflakeskoekjes", + "[Upgrade name 574]Tofu cookies": "Tofoekoekjes", + "[Upgrade name 575]Gluten-free cookies": "Glutenvrije koekjes", + "[Upgrade name 576]Russian bread cookies": "Alfabetkoekjes", + "[Upgrade name 577]Lebkuchen": "Lebkuchen", + "[Upgrade name 578]Aachener Printen": "Aachener Printen", + "[Upgrade name 579]Canistrelli": "Canistrelli", + "[Upgrade name 580]Nice biscuits": "Nice-koekjes", + "[Upgrade name 581]French pure butter cookies": "Franse boterkoekjes", + "[Upgrade name 582]Petit beurre": "Petit beurre", + "[Upgrade name 583]Nanaimo bars": "Nanaimo-reep", + "[Upgrade name 584]Berger cookies": "Berger-koekjes", + "[Upgrade name 585]Chinsuko": "Chinsuko", + "[Upgrade name 586]Panda koala biscuits": "Panda-koala-koekjes", + "[Upgrade name 587]Putri salju": "Putri salju", + "[Upgrade name 588]Milk cookies": "Melkkoekjes", + "[Upgrade name 589]Cookie crumbs": "Koekkruimels", + "[Upgrade name 590]Chocolate chip cookie": "Chocolate chip cookie", + "[Upgrade name 591]Cosmic beginner's luck": "Kosmisch beginnersgeluk", + "[Upgrade name 592]Reinforced membrane": "Verstevigd membraan", + "[Upgrade name 593]Binary grandmas": "Binaire oma's", + "[Upgrade name 594]The JavaScript console for dummies": "De javascriptconsole voor dummy's", + "[Upgrade name 595]64bit arrays": "64-bits-serie", + "[Upgrade name 596]Stack overflow": "Stack overflow", + "[Upgrade name 597]Enterprise compiler": "Ondernemingscompilator", + "[Upgrade name 598]Syntactic sugar": "Syntactische suiker", + "[Upgrade name 599]A nice cup of coffee": "Een lekker kopje koffie", + "[Upgrade name 600]Just-in-time baking": "Net op tijd bakken", + "[Upgrade name 601]cookies++": "koekjes++", + "[Upgrade name 602]Software updates": "Sofwareupdates", + "[Upgrade name 603]Game.Loop": "Spel.lus", + "[Upgrade name 604]eval()": "eval()", + "[Upgrade name 605]Script grannies": "Scriptomaatjes", + "[Upgrade name 606]Tombola computing": "Tombola computing", + "[Upgrade name 607]Kruidnoten": "Kruidnoten", + "[Upgrade name 608]Marie biscuits": "Mariakaakjes", + "[Upgrade name 609]Meringue cookies": "Meringuekoekjes", + "[Upgrade name 610]Pizza": "Pizza", + "[Upgrade name 611]Crackers": "Crackers", + "[Upgrade name 612]Havabreaks": "Breekkoekjes", + "[Upgrade name 613]Kitten executives": "Kattenexecutives", + "[Upgrade name 614]Chai tea cookies": "Chaitheekoekjes", + "[Upgrade name 615]Yogurt cookies": "Yoghurtkoekjes", + "[Upgrade name 616]Thumbprint cookies": "Duimafdrukkoekjes", + "[Upgrade name 617]Pizzelle": "Pizzelle", + "[Upgrade name 618]Zilla wafers": "Zilla-wafels", + "[Upgrade name 619]Dim Dams": "Dimdams", + "[Upgrade name 620]Candy": "Snoep", + "[Upgrade name 621]Fortune #001": "Gelukje #001", + "[Upgrade name 622]Fortune #002": "Gelukje #002", + "[Upgrade name 623]Fortune #003": "Gelukje #003", + "[Upgrade name 624]Fortune #004": "Gelukje #004", + "[Upgrade name 625]Fortune #005": "Gelukje #005", + "[Upgrade name 626]Fortune #006": "Gelukje #006", + "[Upgrade name 627]Fortune #007": "Gelukje #007", + "[Upgrade name 628]Fortune #008": "Gelukje #008", + "[Upgrade name 629]Fortune #009": "Gelukje #009", + "[Upgrade name 630]Fortune #010": "Gelukje #010", + "[Upgrade name 631]Fortune #011": "Gelukje #011", + "[Upgrade name 632]Fortune #012": "Gelukje #012", + "[Upgrade name 633]Fortune #013": "Gelukje #013", + "[Upgrade name 634]Fortune #014": "Gelukje #014", + "[Upgrade name 635]Fortune #015": "Gelukje #015", + "[Upgrade name 636]Fortune #016": "Gelukje #016", + "[Upgrade name 637]Fortune #017": "Gelukje #017", + "[Upgrade name 638]Fortune #100": "Gelukje #100", + "[Upgrade name 639]Fortune #101": "Gelukje #101", + "[Upgrade name 640]Fortune #102": "Gelukje #102", + "[Upgrade name 641]Fortune #103": "Gelukje #103", + "[Upgrade name 642]Fortune #104": "Gelukje #104", + "[Upgrade name 643]Fortune cookies": "Gelukskoekjes", + "[Upgrade name 644]A really good guide book": "Een heel goed hulpboek", + "[Upgrade name 645]Prism heart biscuits": "Prisma-hartkoekjes", + "[Upgrade name 646]Kitten wages": "Kattensalaris", + "[Upgrade name 647]Pet the dragon": "Aai de draak", + "[Upgrade name 648]Dragon scale": "Drakenschub", + "[Upgrade name 649]Dragon claw": "Drakenklauw", + "[Upgrade name 650]Dragon fang": "Drakentand", + "[Upgrade name 651]Dragon teddy bear": "Teddybeer van de draak", + "[Upgrade name 652]Granola cookies": "Granolakoekjes", + "[Upgrade name 653]Ricotta cookies": "Ricottakoekjes", + "[Upgrade name 654]Roze koeken": "Roze koeken", + "[Upgrade name 655]Peanut butter cup cookies": "Koekjes met pindakaasvulling", + "[Upgrade name 656]Sesame cookies": "Sesamzaadkoekjes", + "[Upgrade name 657]Taiyaki": "Taiyaki", + "[Upgrade name 658]Vanillekipferl": "Vanillekipferl", + "[Upgrade name 659]Cosmic chocolate butter biscuit": "Kosmisch chocoladeboterkoekje", + "[Upgrade name 660]Nonillion fingers": "Quintiljoen vingers", + "[Upgrade name 661]Miraculite mouse": "Miraculieten muis", + "[Upgrade name 662]Generation degeneration": "Degeneratie van de generatie", + "[Upgrade name 663]Global seed vault": "Enorme zaadkluis", + "[Upgrade name 664]Air mining": "Delven uit de lucht", + "[Upgrade name 665]Behavioral reframing": "Gedragsverandering", + "[Upgrade name 666]Altruistic loop": "Altruïstische lus", + "[Upgrade name 667]A novel idea": "Een nieuw idee", + "[Upgrade name 668]Spelling bees": "Spellingsbijen", + "[Upgrade name 669]Toroid universe": "Toroïde universum", + "[Upgrade name 670]Hermetic reconciliation": "Hermetische verzoening", + "[Upgrade name 671]His advent": "Zijn komst", + "[Upgrade name 672]Split seconds": "Fracties van seconden", + "[Upgrade name 673]Flavor itself": "De smaak zelf", + "[Upgrade name 674]Light speed limit": "Lichtsnelheidsbeperking", + "[Upgrade name 675]A touch of determinism": "Een vleugje vastberadenheid", + "[Upgrade name 676]This upgrade": "Deze upgrade", + "[Upgrade name 677]Your biggest fans": "Je grootste fans", + "[Upgrade name 678]Battenberg biscuits": "Battenberg-koekjes", + "[Upgrade name 679]Rosette cookies": "Rozetkoekjes", + "[Upgrade name 680]Gangmakers": "Gangmakers", + "[Upgrade name 681]Welsh cookies": "Welshe koekjes", + "[Upgrade name 682]Raspberry cheesecake cookies": "Framboos-cheesecakekoekjes", + "[Upgrade name 683]Alternate grandmas": "Alternatieve oma's", + "[Upgrade name 684]Manifest destiny": "Duidelijke missie", + "[Upgrade name 685]The multiverse in a nutshell": "Het multiversum in een notendop", + "[Upgrade name 686]All-conversion": "Conversie van alles", + "[Upgrade name 687]Multiverse agents": "Multiversum-medewerkers", + "[Upgrade name 688]Escape plan": "Ontsnappingsplan", + "[Upgrade name 689]Game design": "Spelontwerp", + "[Upgrade name 690]Sandbox universes": "Zandbakuniversums", + "[Upgrade name 691]Multiverse wars": "Multiversum-oorlogen", + "[Upgrade name 692]Mobile ports": "Mobiele poorten", + "[Upgrade name 693]Encapsulated realities": "Ingekapselde realiteiten", + "[Upgrade name 694]Extrinsic clicking": "Klikken van buitenaf", + "[Upgrade name 695]Universal idling": "Wachten op universums", + "[Upgrade name 696]Perforated mille-feuille cosmos": "Geperforeerd mille-feuille-kosmos", + "[Upgrade name 697]Infraverses and superverses": "Infraversums en superversums", + "[Upgrade name 698]Fortune #018": "Gelukje #018", + "[Upgrade name 699]Butter biscuit (with butter)": "Boterkoekjes (met boter)", + "[Upgrade name 700]Visits": "Bezoekjes", + "[Upgrade name 701]Reverse-veganism": "Omgekeerd veganisme", + "[Upgrade name 702]Caramel alloys": "Karamellegering", + "[Upgrade name 703]The infinity engine": "De eeuwigheidsmotor", + "[Upgrade name 704]Diminishing tax returns": "Belastingteruggave verlagen", + "[Upgrade name 705]Apparitions": "Verschijningen", + "[Upgrade name 706]Wizard basements": "Tovenaarskelders", + "[Upgrade name 707]Prime directive": "De eerste richtlijn", + "[Upgrade name 708]Chromatic cycling": "Chromatisch fietsen", + "[Upgrade name 709]Domestic rifts": "Binnenportals", + "[Upgrade name 710]Patience abolished": "Geen geduld meer", + "[Upgrade name 711]Delicious pull": "Overheerlijke trekkracht", + "[Upgrade name 712]Occam's laser": "De laser van Occam", + "[Upgrade name 713]On a streak": "Lekker bezig", + "[Upgrade name 714]A box": "Een doos", + "[Upgrade name 715]Hacker shades": "Hackerschaduwen", + "[Upgrade name 716]Break the fifth wall": "De vijfde muur doorbreken", + "[Upgrade name 717]Cat ladies": "Kattenvrouwtjes", + "[Upgrade name 718]Milkhelp® lactose intolerance relief tablets": "Melkhulp® tabletten ter verlichting van lactose-intolerantie", + "[Upgrade name 719]Aura gloves": "Aurahandschoenen", + "[Upgrade name 720]Luminous gloves": "Lichtgevende handschoenen", + "[Upgrade name 721]Bokkenpootjes": "Bokkenpootjes", + "[Upgrade name 722]Fat rascals": "Vette boefjes", + "[Upgrade name 723]Ischler cookies": "Ischler-koekjes", + "[Upgrade name 724]Matcha cookies": "Matcha-koekjes", + "[Upgrade name 725]Earl Grey macarons": "Earl Grey-macarons", + "[Upgrade name 726]Pokey": "Stokjes", + "[Upgrade name 727]Cashew cookies": "Cashewkoekjes", + "[Upgrade name 728]Milk chocolate cookies": "Melkchocoladekoekjes", + "[Upgrade name 729]Brainy grandmas": "Oma's met hersenen", + "[Upgrade name 730]Principled neural shackles": "Voorwaardelijke neurale beperkingen ", + "[Upgrade name 731]Obey": "Gehoorzamen", + "[Upgrade name 732]A sprinkle of irrationality": "Een vleugje irrationaliteit", + "[Upgrade name 733]Front and back hemispheres": "De linker en de rechter hersenhelft", + "[Upgrade name 734]Neural networking": "Neuraal netwerken", + "[Upgrade name 735]Cosmic brainstorms": "Kosmische brainstorms", + "[Upgrade name 736]Megatherapy": "Megatherapie", + "[Upgrade name 737]Synaptic lubricant": "Synaptisch smeermiddel", + "[Upgrade name 738]Psychokinesis": "Psychokinese", + "[Upgrade name 739]Spines": "Ruggengraten", + "[Upgrade name 740]Neuraforming": "Neuravorming", + "[Upgrade name 741]Epistemological trickery": "Epistemologische trucage", + "[Upgrade name 742]Every possible idea": "Elk mogelijk idee", + "[Upgrade name 743]Kitchen cabinets": "Keukenkastjes", + "[Upgrade name 744]Cookie mulch": "Koekjespasta", + "[Upgrade name 745]Delicious mineralogy": "Heerlijke mineralogie", + "[Upgrade name 746]N-dimensional assembly lines": "N-dimensionale assemblagelijnen", + "[Upgrade name 747]Cookie Points": "Koekjespunten", + "[Upgrade name 748]Negatheism": "Negatheïsme", + "[Upgrade name 749]Magical realism": "Magisch realisme", + "[Upgrade name 750]Cosmic foreground radiation": "Kosmische voorgrondstraling", + "[Upgrade name 751]Arcanized glassware": "Onbegrepen glaswerk", + "[Upgrade name 752]Portal guns": "Portalwapens", + "[Upgrade name 753]Timeproof upholstery": "Tijdbestendige bekleding", + "[Upgrade name 754]Employee minification": "Minificatie van werknemers", + "[Upgrade name 755]Hyperblack paint": "Hyperzwarte verf", + "[Upgrade name 756]Silver lining maximization": "Voer voor positivo's", + "[Upgrade name 757]Multiscale profiling": "Profilering op multischaal", + "[Upgrade name 758]PHP containment vats": "PHP-vaten", + "[Upgrade name 759]Opposite universe": "Omgekeerd universum", + "[Upgrade name 760]The land of dreams": "Het land der dromen", + "[Upgrade name 761]Thoughts & prayers": "Gedachten en gebeden", + "[Upgrade name 762]Fertile minds": "Vruchtbare denkers", + "[Upgrade name 763]Fortune #019": "Geluk nr. 019", + "[Upgrade name 764]Decillion fingers": "Deciljoen vingers", + "[Upgrade name 765]Aetherice mouse": "Etherijs muis", + "[Upgrade name 766]Kitten admins": "Katten-admins", + "[Upgrade name 767]Everybutter biscuit": "Alleboterkoekje", + "[Upgrade name 768]Unshackled cursors": "Ontgrendelde cursors", + "[Upgrade name 769]Unshackled grandmas": "Ontgrendelde oma's", + "[Upgrade name 770]Unshackled farms": "Ontgrendelde kwekerijen", + "[Upgrade name 771]Unshackled mines": "Ontgrendelde mijnen", + "[Upgrade name 772]Unshackled factories": "Ontgrendelde fabrieken", + "[Upgrade name 773]Unshackled banks": "Ontgrendelde banken", + "[Upgrade name 774]Unshackled temples": "Ontgrendelde tempels", + "[Upgrade name 775]Unshackled wizard towers": "Ontgrendelde tovenaarstoren", + "[Upgrade name 776]Unshackled shipments": "Ontgrendelde verzendingen", + "[Upgrade name 777]Unshackled alchemy labs": "Ontgrendelde alchemielabs", + "[Upgrade name 778]Unshackled portals": "Ontgrendelde portals", + "[Upgrade name 779]Unshackled time machines": "Ontgrendelde tijdmachines", + "[Upgrade name 780]Unshackled antimatter condensers": "Ontgrendelde antimateriecondensators", + "[Upgrade name 781]Unshackled prisms": "Ontgrendelde prisma's", + "[Upgrade name 782]Unshackled chancemakers": "Ontgrendelde kansgenerators", + "[Upgrade name 783]Unshackled fractal engines": "Ontgrendelde fractaalmotoren", + "[Upgrade name 784]Unshackled javascript consoles": "Ontgrendelde javascript-consoles", + "[Upgrade name 785]Unshackled idleverses": "Ontgrendelde inactieve universums", + "[Upgrade name 786]Unshackled cortex bakers": "Ontgrendelde cortex-bakkers", + "[Upgrade name 787]Unshackled flavor": "Ontgrendelde smaak", + "[Upgrade name 788]Unshackled berrylium": "Ontgrendelde beslium", + "[Upgrade name 789]Unshackled blueberrylium": "Ontgrendelde bosbeslium", + "[Upgrade name 790]Unshackled chalcedhoney": "Ontgrendelde chalcedonhoning", + "[Upgrade name 791]Unshackled buttergold": "Ontgrendeld botergoud", + "[Upgrade name 792]Unshackled sugarmuck": "Ontgrendelde suikerbende", + "[Upgrade name 793]Unshackled jetmint": "Ontgrendelde jetmunt", + "[Upgrade name 794]Unshackled cherrysilver": "Ontgrendelde kersenzilver", + "[Upgrade name 795]Unshackled hazelrald": "Ontgrendelde hazelragd", + "[Upgrade name 796]Unshackled mooncandy": "Ontgrendeld maansnoep", + "[Upgrade name 797]Unshackled astrofudge": "Ontgrendeld astrofudge", + "[Upgrade name 798]Unshackled alabascream": "Ontgrendelde alasbascrème", + "[Upgrade name 799]Unshackled iridyum": "Ontgrendelde iridjam", + "[Upgrade name 800]Unshackled glucosmium": "Ontgrendelde glucosmium", + "[Upgrade name 801]Delicate touch": "Lichte aanraking", + "[Upgrade name 802]Steadfast murmur": "Aanhoudend gemompel", + "[Upgrade name 803]Glittering edge": "Glinsterende rand", + "[Upgrade name 804]Distinguished wallpaper assortment": "Bijzonder wallpaper-assortiment", + "[Upgrade name 805]Sound test": "Geluidstest", + "[Upgrade name 806]Jukebox": "Jukebox", + "[Upgrade name 807]Dalgona cookies": "Dalgona-koekjes", + "[Upgrade name 808]Spicy cookies": "Hete koekjes", + "[Upgrade name 809]Smile cookies": "Lachebekkoekjes", + "[Upgrade name 810]Kolachy cookies": "Kolachy-koekjes", + "[Upgrade name 811]Gomma cookies": "Gomma-koekjes", + "[Upgrade name 812]Vegan cookies": "Veganistische koekjes", + "[Upgrade name 813]Coyotas": "Coyota's", + "[Upgrade name 814]Frosted sugar cookies": "Suikerkoekjes met glazuur", + "[Upgrade name 815]Marshmallow sandwich cookies": "Marshmellowkoekjes", + "[Upgrade name 816]Web cookies": "Webkoekjes", + "[Upgrade name 817]Steamed cookies": "Gesteamde koekjes", + "[Upgrade name 818]Deep-fried cookie dough": "Gefrituurd koekjesdeeg", + "[Achievement name 0]Wake and bake": "Wakker en aan het bakken", + "[Achievement name 1]Making some dough": "Wat deeg aan het maken", + "[Achievement name 2]So baked right now": "Lekker aan de bak", + "[Achievement name 3]Fledgling bakery": "Beginnende bakkerij", + "[Achievement name 4]Affluent bakery": "Welvarende bakkerij", + "[Achievement name 5]World-famous bakery": "Wereldberoemde bakkerij", + "[Achievement name 6]Cosmic bakery": "Kosmische bakkerij", + "[Achievement name 7]Galactic bakery": "Galactische bakkerij", + "[Achievement name 8]Universal bakery": "Universele bakkerij", + "[Achievement name 9]Timeless bakery": "Tijdloze bakkerij", + "[Achievement name 10]Infinite bakery": "Oneindige bakkerij", + "[Achievement name 11]Immortal bakery": "Onsterfelijke bakkerij", + "[Achievement name 12]Don't stop me now": "Ik kan niet meer stoppen", + "[Achievement name 13]You can stop now": "Je mag nu wel stoppen", + "[Achievement name 14]Cookies all the way down": "Koekjes, koekjes en nog meer koekjes", + "[Achievement name 15]Overdose": "Overdosis", + "[Achievement name 16]Casual baking": "Gezellig bakken", + "[Achievement name 17]Hardcore baking": "Hardcore bakken", + "[Achievement name 18]Steady tasty stream": "Stabiele lekkere productie", + "[Achievement name 19]Cookie monster": "Koekiemonster", + "[Achievement name 20]Mass producer": "Massaproductie", + "[Achievement name 21]Cookie vortex": "Koekjesvortex", + "[Achievement name 22]Cookie pulsar": "Koekjespulsar", + "[Achievement name 23]Cookie quasar": "Koekjesquasar", + "[Achievement name 24]Oh hey, you're still here": "Hé, je bent er nog", + "[Achievement name 25]Let's never bake again": "Laten we nooit meer bakken", + "[Achievement name 26]Sacrifice": "Offer", + "[Achievement name 27]Oblivion": "Vergetelheid", + "[Achievement name 28]From scratch": "Helemaal opnieuw", + "[Achievement name 29]Neverclick": "Nooit geklikt", + "[Achievement name 30]Clicktastic": "Kliktastisch", + "[Achievement name 31]Clickathlon": "Klikathlon", + "[Achievement name 32]Clickolympics": "Klikolympiade", + "[Achievement name 33]Clickorama": "Klikorama", + "[Achievement name 34]Click": "Klik", + "[Achievement name 35]Double-click": "Dubbelklikken", + "[Achievement name 36]Mouse wheel": "Muiswiel", + "[Achievement name 37]Of Mice and Men": "Van muizen en mensen", + "[Achievement name 38]The Digital": "De fervente klikker", + "[Achievement name 39]Just wrong": "Dit kun je niet maken", + "[Achievement name 40]Grandma's cookies": "Oma's koekjes", + "[Achievement name 41]Sloppy kisses": "Slordige kusjes", + "[Achievement name 42]Retirement home": "Bejaardentehuis", + "[Achievement name 43]Bought the farm": "Boerderij gekocht", + "[Achievement name 44]Reap what you sow": "Oogst wat je zaait", + "[Achievement name 45]Farm ill": "Boerderij-invasie", + "[Achievement name 46]Production chain": "Productieketen", + "[Achievement name 47]Industrial revolution": "Industriële revolutie", + "[Achievement name 48]Global warming": "Wereldwijde opwarming", + "[Achievement name 49]You know the drill": "Nu weet je het wel", + "[Achievement name 50]Excavation site": "Opgravingslocatie", + "[Achievement name 51]Hollow the planet": "Uithollen die planeet", + "[Achievement name 52]Expedition": "Expeditie", + "[Achievement name 53]Galactic highway": "Galactische snelweg", + "[Achievement name 54]Far far away": "Verweggistan", + "[Achievement name 55]Transmutation": "Transmutatie", + "[Achievement name 56]Transmogrification": "Transmogrificatie", + "[Achievement name 57]Gold member": "Gouden lid", + "[Achievement name 58]A whole new world": "Een hele nieuwe wereld", + "[Achievement name 59]Now you're thinking": "Nu begint het wat te worden", + "[Achievement name 60]Dimensional shift": "Dimensieverschuiving", + "[Achievement name 61]Time warp": "Tijdwarp", + "[Achievement name 62]Alternate timeline": "Alternatieve tijdlijn", + "[Achievement name 63]Rewriting history": "Geschiedenis herschrijven", + "[Achievement name 64]One with everything": "Eén van alles", + "[Achievement name 65]Mathematician": "Wiskundige", + "[Achievement name 66]Base 10": "Vanaf 10", + "[Achievement name 67]Golden cookie": "Gouden koekje", + "[Achievement name 68]Lucky cookie": "Gelukskoekje", + "[Achievement name 69]A stroke of luck": "Geluk", + "[Achievement name 70]Cheated cookies taste awful": "Vals verkregen koekjes smaken verschrikkelijk", + "[Achievement name 71]Uncanny clicker": "Abnormale klikker", + "[Achievement name 72]Builder": "Bouwer", + "[Achievement name 73]Architect": "Architect", + "[Achievement name 74]Enhancer": "Productieverhogend", + "[Achievement name 75]Augmenter": "Toenemende productie", + "[Achievement name 76]Cookie-dunker": "Koekjesdipper", + "[Achievement name 77]Fortune": "Geluk", + "[Achievement name 78]True Neverclick": "Echt nooit geklikt", + "[Achievement name 79]Elder nap": "Bejaardendutje", + "[Achievement name 80]Elder slumber": "Bejaardenslaapje", + "[Achievement name 81]Elder": "Bejaarde", + "[Achievement name 82]Elder calm": "Bejaardenkalmte", + "[Achievement name 83]Engineer": "Ingenieur", + "[Achievement name 84]Leprechaun": "Dwerg", + "[Achievement name 85]Black cat's paw": "Poot van een zwarte kat", + "[Achievement name 86]Nihilism": "Nihilisme", + "[Achievement name 87]Antibatter": "Antibakerie", + "[Achievement name 88]Quirky quarks": "Vreemde quarks", + "[Achievement name 89]It does matter!": "Het maakt wel uit!", + "[Achievement name 90]Upgrader": "Upgrader", + "[Achievement name 91]Centennial": "Honderd", + "[Achievement name 92]Hardcore": "Hardcore", + "[Achievement name 93]Speed baking I": "Snelbakken I", + "[Achievement name 94]Speed baking II": "Snelbakken II", + "[Achievement name 95]Speed baking III": "Snelbakken III", + "[Achievement name 96]Getting even with the oven": "De oven getemd", + "[Achievement name 97]Now this is pod-smashing": "Zó doe je dat", + "[Achievement name 98]Chirped out": "Die piept nu wel anders", + "[Achievement name 99]Follow the white rabbit": "Volg het witte konijn", + "[Achievement name 100]Clickasmic": "Klikastisch", + "[Achievement name 101]Friend of the ancients": "Vriend van de ouden", + "[Achievement name 102]Ruler of the ancients": "Heerser van de ouden", + "[Achievement name 103]Wholesome": "Heilzaam", + "[Achievement name 104]Just plain lucky": "Gewoon stom geluk", + "[Achievement name 105]Itchscratcher": "Kriebelaar", + "[Achievement name 106]Wrinklesquisher": "Mee-eterpletter", + "[Achievement name 107]Moistburster": "Meesterploffer", + "[Achievement name 108]Spooky cookies": "Enge koekjes", + "[Achievement name 109]Coming to town": "Hij komt eraan", + "[Achievement name 110]All hail Santa": "Lang leve de kerstman", + "[Achievement name 111]Let it snow": "Laat 't maar sneeuwen", + "[Achievement name 112]Oh deer": "Zijn hier ook rendieren?", + "[Achievement name 113]Sleigh of hand": "Klikslachting", + "[Achievement name 114]Reindeer sleigher": "Rendiermoord", + "[Achievement name 115]Perfected agriculture": "Perfecte landbouw", + "[Achievement name 116]Ultimate automation": "Ultieme automatisering", + "[Achievement name 117]Can you dig it": "Superdelver", + "[Achievement name 118]Type II civilization": "Type II-beschaving", + "[Achievement name 119]Gild wars": "Gild Wars", + "[Achievement name 120]Brain-split": "Hersenaantasting", + "[Achievement name 121]Time duke": "Tijdheerser", + "[Achievement name 122]Molecular maestro": "Moleculaire maestro", + "[Achievement name 123]Lone photon": "Eenzame foton", + "[Achievement name 124]Dazzling glimmer": "Oogverblindende schittering", + "[Achievement name 125]Blinding flash": "Spectaculaire flikkering", + "[Achievement name 126]Unending glow": "Niet te stoppen gloed", + "[Achievement name 127]Lord of Constructs": "Heer van de gebouwen", + "[Achievement name 128]Lord of Progress": "Heer van vooruitgang", + "[Achievement name 129]Bicentennial": "Tweehonderd", + "[Achievement name 130]Lovely cookies": "Liefdekoekjes", + "[Achievement name 131]Centennial and a half": "Honderd en een half", + "[Achievement name 132]Tiny cookie": "Minikoekje", + "[Achievement name 133]You win a cookie": "Je wint een koekje", + "[Achievement name 134]Click delegator": "Uitbestede kliks", + "[Achievement name 135]Gushing grannies": "Gutsende oma's", + "[Achievement name 136]I hate manure": "Ik haat mest", + "[Achievement name 137]Never dig down": "Niet naar beneden graven", + "[Achievement name 138]The incredible machine": "De ongelooflijke machine", + "[Achievement name 139]And beyond": "En verder", + "[Achievement name 140]Magnum Opus": "Magnum Opus", + "[Achievement name 141]With strange eons": "Met vreemde eons", + "[Achievement name 142]Spacetime jigamaroo": "Veel tijd in de ruimte doorgebracht", + "[Achievement name 143]Supermassive": "Gigantisch", + "[Achievement name 144]Praise the sun": "Prijs de zon", + "[Achievement name 145]Clickageddon": "Klikageddon", + "[Achievement name 146]Clicknarok": "Kliknarok", + "[Achievement name 147]Extreme polydactyly": "Extreme polydactylie", + "[Achievement name 148]Dr. T": "Dr. T", + "[Achievement name 149]The old never bothered me anyway": "Ik heb nooit last gehad van die oudjes", + "[Achievement name 150]Homegrown": "Zelf gekweekt", + "[Achievement name 151]Technocracy": "Gek op fabrieken", + "[Achievement name 152]The center of the Earth": "Het middelpunt van de aarde", + "[Achievement name 153]We come in peace": "We komen in vrede", + "[Achievement name 154]The secrets of the universe": "De geheimen van het universum", + "[Achievement name 155]Realm of the Mad God": "Rijk van de Dwaze God", + "[Achievement name 156]Forever and ever": "Voor altijd", + "[Achievement name 157]Walk the planck": "De gevolgen moet je zelf dragen", + "[Achievement name 158]Rise and shine": "Het stralende middelpunt", + "[Achievement name 159]God complex": "Godcomplex", + "[Achievement name 160]Third-party": "Derde partij", + "[Achievement name 161]Dematerialize": "Dematerialiseren", + "[Achievement name 162]Nil zero zilch": "Nul komma nul", + "[Achievement name 163]Transcendence": "Transcendentie", + "[Achievement name 164]Obliterate": "Wegvagen", + "[Achievement name 165]Negative void": "Negatieve leegte", + "[Achievement name 166]The hunt is on": "De jacht is geopend", + "[Achievement name 167]Egging on": "We eieren lekker door", + "[Achievement name 168]Mass Easteria": "Massahysterie", + "[Achievement name 169]Hide & seek champion": "Kampioen verstoppertje spelen", + "[Achievement name 170]What's in a name": "Wat zegt een naam nou helemaal?", + "[Achievement name 171]Pretty penny": "Beginkapitaal", + "[Achievement name 172]Fit the bill": "Geschikt", + "[Achievement name 173]A loan in the dark": "Een lening in het donker", + "[Achievement name 174]Need for greed": "Hebberig", + "[Achievement name 175]It's the economy, stupid": "En zo werkt dus de economie", + "[Achievement name 176]Your time to shrine": "Je allereerste tempel", + "[Achievement name 177]Shady sect": "Twijfelachtige sekte", + "[Achievement name 178]New-age cult": "New-age sekte", + "[Achievement name 179]Organized religion": "Georganiseerde religie", + "[Achievement name 180]Fanaticism": "Nu wordt het menens", + "[Achievement name 181]Bewitched": "Behekst", + "[Achievement name 182]The sorcerer's apprentice": "De tovenaarsleerling", + "[Achievement name 183]Charms and enchantments": "Toverspreuken", + "[Achievement name 184]Curses and maledictions": "Vervloekingen", + "[Achievement name 185]Magic kingdom": "Magisch koninkrijk", + "[Achievement name 186]Vested interest": "Gevestigde belangen", + "[Achievement name 187]New world order": "Nieuwe wereldorde", + "[Achievement name 188]Hocus pocus": "Hocus Pocus", + "[Achievement name 189]Finger clickin' good": "Daar klik je je vingers bij af", + "[Achievement name 190]Panic at the bingo": "Paniek bij de bingo", + "[Achievement name 191]Rake in the dough": "Hark het deeg naar binnen", + "[Achievement name 192]Quarry on": "Ga zo door", + "[Achievement name 193]Yes I love technology": "Ik hou van technologie", + "[Achievement name 194]Paid in full": "Volledig betaald", + "[Achievement name 195]Church of Cookiology": "De koekiologie-kerk", + "[Achievement name 196]Too many rabbits, not enough hats": "Te veel konijnen, te weinig hoge hoeden", + "[Achievement name 197]The most precious cargo": "De kostbaarste vracht", + "[Achievement name 198]The Aureate": "Dit is goud waard", + "[Achievement name 199]Ever more hideous": "Steeds afschuwelijker", + "[Achievement name 200]Be kind, rewind": "Draai de tijd terug", + "[Achievement name 201]Infinitesimal": "Zo gaan we oneindig door", + "[Achievement name 202]A still more glorious dawn": "Een steeds mooiere zonsopgang", + "[Achievement name 203]Rebirth": "Hergeboorte", + "[Achievement name 204]Here you go": "Alsjeblieft", + "[Achievement name 205]Resurrection": "Wederopstanding", + "[Achievement name 206]Reincarnation": "Reïncarnatie", + "[Achievement name 207]Endless cycle": "Eindeloze cyclus", + "[Achievement name 208]The agemaster": "Meester in veroudering", + "[Achievement name 209]To oldly go": "Het is ook nooit genoeg", + "[Achievement name 210]Gardener extraordinaire": "Buitengewone tuinier", + "[Achievement name 211]Tectonic ambassador": "Ambassadeur van de bouwkunde", + "[Achievement name 212]Rise of the machines": "De machines komen in opstand", + "[Achievement name 213]Acquire currency": "Je hebt wel geld nodig", + "[Achievement name 214]Zealotry": "Fanatiekeling", + "[Achievement name 215]The wizarding world": "De tovenaarswereld", + "[Achievement name 216]Parsec-masher": "Parsecstamper", + "[Achievement name 217]The work of a lifetime": "Je levenswerk", + "[Achievement name 218]A place lost in time": "Verloren in de tijd", + "[Achievement name 219]Heat death": "Warmtedood", + "[Achievement name 220]Microcosm": "Microkosmos", + "[Achievement name 221]Bright future": "De toekomst is helder", + "[Achievement name 222]Here be dragon": "Draak nummer één", + "[Achievement name 223]How?": "Hoe dan?", + "[Achievement name 224]The land of milk and cookies": "Het land van melk en koekjes", + "[Achievement name 225]He who controls the cookies controls the universe": "Degene die over de koekjes heerst, heerst over het universum", + "[Achievement name 226]Tonight on Hoarders": "Verzamelwoede", + "[Achievement name 227]Are you gonna eat all that?": "Ga je dat allemaal opeten?", + "[Achievement name 228]We're gonna need a bigger bakery": "We hebben een grotere bakkerij nodig", + "[Achievement name 229]In the mouth of madness": "Dit is gekkenwerk", + "[Achievement name 230]Brought to you by the letter
": "Vooral de allerlekkerste koekjes
", + "[Achievement name 231]A world filled with cookies": "Een wereld vol koekjes", + "[Achievement name 232]When this baby hits 36 quadrillion cookies per hour": "Als je 36 kwartiljoen koekjes per uur aantikt", + "[Achievement name 233]Fast and delicious": "Snel en lekker", + "[Achievement name 234]Cookiehertz : a really, really tasty hertz": "Koekjes: dat zijn pas lekkere dingen", + "[Achievement name 235]Woops, you solved world hunger": "Nou ja, heb je zomaar het wereldwijde hongerprobleem opgelost", + "[Achievement name 236]Turbopuns": "Turbo", + "[Achievement name 237]Faster menner": "Dat kan sneller", + "[Achievement name 238]And yet you're still hungry": "En toch heb je nog steeds honger", + "[Achievement name 239]The Abakening": "Opstaan, eten, bakken, slapen. En opnieuw.", + "[Achievement name 240]There's really no hard limit to how long these achievement names can be and to be quite honest I'm rather curious to see how far we can go.
Adolphus W. Green (1844–1917) started as the Principal of the Groton School in 1864. By 1865, he became second assistant librarian at the New York Mercantile Library; from 1867 to 1869, he was promoted to full librarian. From 1869 to 1873, he worked for Evarts, Southmayd & Choate, a law firm co-founded by William M. Evarts, Charles Ferdinand Southmayd and Joseph Hodges Choate. He was admitted to the New York State Bar Association in 1873.
Anyway, how's your day been?": "Er is geen limiet op hoe lang deze namen mogen zijn, en ik ben eigenlijk wel benieuwd hoe ver we kunnen gaan.
Adolphus W. Green (1844-1917) begon als directeur van de Groton School in 1864. In 1865 werd hij tweede assistent-bibliothecaris bij de New York Mercantile Library, en in de periode 1867 tot 1869 werd hij benoemd tot volwaardige bibliothecaris. Van 1869 tot 1873 werkte hij bij Evarts, Southmayd & Choate, een advocatenkantoor dat was opgericht door William M. Evarts, Charles Ferdinand Southmayd en Joseph Hodges Choate. In 1873 werd hij toegelaten tot de New York State Bar Association.
Zo. En hoe was jouw dag?", + "[Achievement name 241]Fast": "Snel", + "[Achievement name 242]Bicentennial and a half": "Tweehonderd en een half", + "[Achievement name 243]Tabloid addiction": "Nieuwsverslaafd", + "[Achievement name 244]Clickastrophe": "Klikramp", + "[Achievement name 245]Clickataclysm": "Klikaclysme", + "[Achievement name 246]Thumbs, phalanges, metacarpals": "Duimen en vingerkootjes", + "[Achievement name 247]Polymath": "Polyhistor", + "[Achievement name 248]The elder scrolls": "De ouderlingengeschriften", + "[Achievement name 249]To crumbs, you say?": "Alles verkruimelen dus?", + "[Achievement name 250]Seedy business": "De zaken gaan uitstekend", + "[Achievement name 251]Freak fracking": "Dit is te gek", + "[Achievement name 252]Modern times": "Moderne tijden", + "[Achievement name 253]The nerve of war": "Tijd is geld", + "[Achievement name 254]Wololo": "Wololo", + "[Achievement name 255]And now for my next trick, I'll need a volunteer from the audience": "En voor mijn volgende truc heb ik een vrijwilliger uit het publiek nodig", + "[Achievement name 256]It's not delivery": "Het is geen verzending", + "[Achievement name 257]Gold, Jerry! Gold!": "Kijk! Daar is goud!", + "[Achievement name 258]Forbidden zone": "Verboden gebied", + "[Achievement name 259]cookie clicker forever and forever a hundred years cookie clicker, all day long forever, forever a hundred times, over and over cookie clicker adventures dot com": "cookie clicker voor altijd en eeuwig honderd jaar cookie clicker, de hele dag lang, honderden keren, opnieuw en opnieuw cookie clicker avonturen punt com", + "[Achievement name 260]Scientists baffled everywhere": "Wetenschappers over de hele wereld staan versteld", + "[Achievement name 261]Harmony of the spheres": "Prisma's in volledige harmonie", + "[Achievement name 262]Last Chance to See": "Laatste kans om hem te zien", + "[Achievement name 263]Early bird": "Vroege vogel", + "[Achievement name 264]Fading luck": "Verdwijnend geluk", + "[Achievement name 265]Eldeer": "Speciaal rendier", + "[Achievement name 266]Dude, sweet": "Lekker zoet", + "[Achievement name 267]Sugar rush": "Sugar rush", + "[Achievement name 268]Year's worth of cavities": "Een jaar lang gaatjes voor de tandarts", + "[Achievement name 269]Hand-picked": "Met de hand geplukt", + "[Achievement name 270]Sugar sugar": "Suiker, suiker", + "[Achievement name 271]All-natural cane sugar": "Natuurlijke rietsuiker", + "[Achievement name 272]Sweetmeats": "Caloriebom", + "[Achievement name 273]Tricentennial": "Driehonderd", + "[Achievement name 274]Knead for speed": "Reden om te kneden", + "[Achievement name 275]Well the cookies start coming and they don't stop coming": "De koekjes blijven maar komen", + "[Achievement name 276]I don't know if you've noticed but all these icons are very slightly off-center": "Ik weet niet of je het gemerkt hebt, maar al deze icoontjes staan niet helemaal in het midden.", + "[Achievement name 277]The proof of the cookie is in the baking": "Als je koekjes wil bakken, moet je met het deeg beginnen", + "[Achievement name 278]If it's worth doing, it's worth overdoing": "Als je het fijn vindt om te doen, kun je het makkelijk nog een keer doen", + "[Achievement name 279]The dreams in which I'm baking are the best I've ever had": "De dromen waarin ik aan het bakken ben, zijn de allerbeste dromen ooit.", + "[Achievement name 280]Set for life": "Genoeg voor een heel mensenleven", + "[Achievement name 281]You and the beanstalk": "Jij en de bonenstaak", + "[Achievement name 282]Romancing the stone": "Romancing the stone", + "[Achievement name 283]Ex machina": "Ex machina", + "[Achievement name 284]And I need it now": "En ik heb het nu nodig", + "[Achievement name 285]Pray on the weak": "De kwetsbaren uitbuiten", + "[Achievement name 286]It's a kind of magic": "Het is een soort magie", + "[Achievement name 287]Make it so": "Zorg dat het gebeurt", + "[Achievement name 288]All that glitters is gold": "Alles wat glinstert, is goud", + "[Achievement name 289]Here he comes": "Daar komt hij", + "[Achievement name 290]Way back then": "In een grijs verleden", + "[Achievement name 291]Exotic matter": "Exotische materie", + "[Achievement name 292]At the end of the tunnel": "Aan het einde van de tunnel", + "[Achievement name 293]Click (starring Adam Sandler)": "Klik (met in de hoofdrol Adam Sandler)", + "[Achievement name 294]Frantiquities": "Antieke koekjes", + "[Achievement name 295]Overgrowth": "Wildgroei", + "[Achievement name 296]Sedimentalism": "Sedimentalisme", + "[Achievement name 297]Labor of love": "Voor de liefde moet je werken", + "[Achievement name 298]Reverse funnel system": "Omgekeerd trechtersysteem", + "[Achievement name 299]Thus spoke you": "Zo sprak gij", + "[Achievement name 300]Manafest destiny": "Het lot in eigen hand", + "[Achievement name 301]Neither snow nor rain nor heat nor gloom of night": "In weer en wind", + "[Achievement name 302]I've got the Midas touch": "Ik verander alles in goud", + "[Achievement name 303]Which eternal lie": "Welke eeuwige leugen?", + "[Achievement name 304]Déjà vu": "Déja vu", + "[Achievement name 305]Powers of Ten": "Machten van tien", + "[Achievement name 306]Now the dark days are gone": "Nu zijn de donkere dagen voorbij", + "[Achievement name 307]Freaky jazz hands": "Bizar snelle vingers", + "[Achievement name 308]Methuselah": "Metusalem", + "[Achievement name 309]Huge tracts of land": "Heel veel land", + "[Achievement name 310]D-d-d-d-deeper": "Je gaat steeds dieper", + "[Achievement name 311]Patently genius": "Een duidelijk genie", + "[Achievement name 312]A capital idea": "Daar zitten kapitalen in", + "[Achievement name 313]It belongs in a bakery": "Die hoort in een bakkerij", + "[Achievement name 314]Motormouth": "Kletskous", + "[Achievement name 315]Been there done that": "Al gezien, al gedaan", + "[Achievement name 316]Phlogisticated substances": "Substanties zonder zuurstof", + "[Achievement name 317]Bizarro world": "Bizarre wereld", + "[Achievement name 318]The long now": "Het lange heden", + "[Achievement name 319]Chubby hadrons": "Dikke hadrons", + "[Achievement name 320]Palettable": "Een heel kleurenpalet", + "[Achievement name 321]Bibbidi-bobbidi-boo": "Bibbidi-bobbidi-boe", + "[Achievement name 322]I'm the wiz": "Ik ben een genie", + "[Achievement name 323]A wizard is you": "Een tovenaar ben jij", + "[Achievement name 324]Four-leaf cookie": "Een koekje met vier blaadjes", + "[Achievement name 325]Lucked out": "Geluk is op", + "[Achievement name 326]What are the odds": "Wat is de kans?", + "[Achievement name 327]Grandma needs a new pair of shoes": "Oma heeft nieuwe schoenen nodig", + "[Achievement name 328]Million to one shot, doc": "Een kans van één op de miljoen", + "[Achievement name 329]As luck would have it": "Geluk heb je of je hebt het niet", + "[Achievement name 330]Ever in your favor": "Ik help je graag", + "[Achievement name 331]Be a lady": "Wees een dame", + "[Achievement name 332]Dicey business": "Zoals de dobbelsteen rolt", + "[Achievement name 333]Fingers crossed": "Op goed geluk", + "[Achievement name 334]Just a statistic": "Het is maar een cijfertje", + "[Achievement name 335]Murphy's wild guess": "De wilde gok van Murphy", + "[Achievement name 336]Let's leaf it at that": "We laten het hierbij", + "[Achievement name 337]The ultimate clickdown": "Ultieme klikwoede", + "[Achievement name 338]Aged well": "Mooi oud is niet lelijk", + "[Achievement name 339]101st birthday": "101e verjaardag", + "[Achievement name 340]But wait 'til you get older": "Wacht maar tot je ouder bent", + "[Achievement name 341]Harvest moon": "Oogstmaan", + "[Achievement name 342]Mine?": "Mijn mijn", + "[Achievement name 343]In full gear": "Op volledige snelheid", + "[Achievement name 344]Treacle tart economics": "De economie van een taart", + "[Achievement name 345]Holy cookies, grandma!": "Koekjes zijn heilig, oma!", + "[Achievement name 346]The Prestige": "De prestige", + "[Achievement name 347]That's just peanuts to space": "Tijd om naar de ruimte te gaan", + "[Achievement name 348]Worth its weight in lead": "Zijn gewicht in lood waard", + "[Achievement name 349]What happens in the vortex stays in the vortex": "Wat er in de vortex gebeurt, blijft in de vortex", + "[Achievement name 350]Invited to yesterday's party": "Uitgenodigd voor het feestje van gisteren", + "[Achievement name 351]Downsizing": "Inkrimpen", + "[Achievement name 352]My eyes": "Mijn ogen", + "[Achievement name 353]Maybe a chance in hell, actually": "Misschien hebben we in de hel een kans", + "[Achievement name 354]Make like a tree": "Doe een boom na", + "[Achievement name 355]Cave story": "De grotten in", + "[Achievement name 356]In-cog-neato": "Incognito", + "[Achievement name 357]Save your breath because that's all you've got left": "Neem eens een adempauze, anders heb je geen lucht meer", + "[Achievement name 358]Vengeful and almighty": "Wraakzuchtig en almachtig", + "[Achievement name 359]Spell it out for you": "Ik heb gespreuken", + "[Achievement name 360]Space space space space space": "De ruimte! De ruimte!", + "[Achievement name 361]Don't get used to yourself, you're gonna have to change": "Raak maar niet aan jezelf gewend, je zal moeten veranderen", + "[Achievement name 362]Objects in the mirror dimension are closer than they appear": "Voorwerpen in de spiegeldimensie zijn dichterbij dan ze lijken", + "[Achievement name 363]Groundhog day": "Groundhog day", + "[Achievement name 364]A matter of perspective": "Kwestie van perspectief", + "[Achievement name 365]Optical illusion": "Optische illusie", + "[Achievement name 366]Jackpot": "Jackpot", + "[Achievement name 367]So much to do so much to see": "Zoveel te doen, zoveel te zien", + "[Achievement name 368]Running with scissors": "Rennen met een schaar", + "[Achievement name 369]Rarefied air": "IJlere lucht", + "[Achievement name 370]Push it to the limit": "Helemaal naar de limiet", + "[Achievement name 371]Green cookies sleep furiously": "Groene koekjes slapen moeilijk", + "[Achievement name 372]Panic! at Nabisco": "Paniek bij Nabisco!", + "[Achievement name 373]Bursting at the seams": "Barst bij de naden", + "[Achievement name 374]Just about full": "Bijna vol", + "[Achievement name 375]Hungry for more": "Ik wil meer", + "[Achievement name 376]All the other kids with the pumped up clicks": "Al die anderen die sneller kunnen klikken...", + "[Achievement name 377]One...more...click...": "Nog... één... klik...", + "[Achievement name 378]Botany enthusiast": "Enthousiaste botanicus", + "[Achievement name 379]Green, aching thumb": "Groene, pijnlijke duim", + "[Achievement name 380]In the garden of Eden (baby)": "Dit is het paradijs", + "[Achievement name 381]Keeper of the conservatory": "Bewaarder van de plantenkas", + "[Achievement name 382]Seedless to nay": "Daar gaan alle zaden", + "[Achievement name 383]You get nothing": "Je krijgt niets", + "[Achievement name 384]Humble rebeginnings": "Opnieuw beginnen in alle bescheidenheid", + "[Achievement name 385]The end of the world": "Het einde van de wereld", + "[Achievement name 386]Oh, you're back": "Hé, je bent er weer", + "[Achievement name 387]Lazarus": "Lazarus", + "[Achievement name 388]Leisurely pace": "Rustig tempo", + "[Achievement name 389]Hypersonic": "Hypersonisch", + "[Achievement name 390]Feed me, Orteil": "Geef me eten, Orteil", + "[Achievement name 391]And then what?": "En wat nu?", + "[Achievement name 392]Tricentennial and a half": "Driehonder en een half", + "[Achievement name 393]Quadricentennial": "Vierhonderd", + "[Achievement name 394]Quadricentennial and a half": "Vierhonderd en een half", + "[Achievement name 395]Quincentennial": "Vijfhonderd", + "[Achievement name 396]Maillard reaction": "Maillardreactie", + "[Achievement name 397]When the cookies ascend just right": "Als de koekjes precies goed opstijgen", + "[Achievement name 398]With her finger and her thumb": "Met een vinger en een duim", + "[Achievement name 399]Defense of the ancients": "Verdediging van de bejaarden", + "[Achievement name 400]Sharpest tool in the shed": "Ik ben toevallig wel de slimste", + "[Achievement name 401]Hey now, you're a rock": "Genoeg rotsen om in te hakken", + "[Achievement name 402]Break the mold": "Alles volledig anders doen", + "[Achievement name 403]Get the show on, get paid": "Zorg dat je betaald krijgt", + "[Achievement name 404]My world's on fire, how about yours": "Mijn wereld staat in de fik. Hoe gaat het met die van jou?", + "[Achievement name 405]The meteor men beg to differ": "De meteorenmannetjes zijn het er niet mee eens", + "[Achievement name 406]Only shooting stars": "Alleen maar vallende sterren", + "[Achievement name 407]We could all use a little change": "We kunnen wel wat verandering gebruiken", + "[Achievement name 408]Your brain gets smart but your head gets dumb": "Je hersenen werken wel, maar je hoofd niet", + "[Achievement name 409]The years start coming": "De jaren beginnen te tellen", + "[Achievement name 410]What a concept": "Wat een concept", + "[Achievement name 411]You'll never shine if you don't glow": "Je gaat het nooit maken als je niet enthousiast bent", + "[Achievement name 412]You'll never know if you don't go": "Je weet het nooit als je het niet probeert", + "[Achievement name 413]Self-contained": "Onafhankelijk", + "[Achievement name 414]Threw you for a loop": "En nu heb je er een stuk meer", + "[Achievement name 415]The sum of its parts": "De som der delen", + "[Achievement name 416]Bears repeating": "Het herhaalt zich", + "[Achievement name 417]More of the same": "Meer van hetzelfde", + "[Achievement name 418]Last recurse": "Laatste recursief", + "[Achievement name 419]Out of one, many": "Uit één kwamen er vele", + "[Achievement name 420]An example of recursion": "Een voorbeeld van recursiviteit", + "[Achievement name 421]For more information on this achievement, please refer to its title": "Kijk naar de titel van deze prestatie voor meer informatie hierover", + "[Achievement name 422]I'm so meta, even this achievement": "Je bent geweldig, net als deze prestatie", + "[Achievement name 423]Never get bored": "Ik verveel me nooit", + "[Achievement name 424]The needs of the many": "De behoeften van de massa", + "[Achievement name 425]Eating its own": "Kannibalisme", + "[Achievement name 426]We must go deeper": "We moeten dieper gaan", + "[Achievement name 427]Sierpinski rhomboids": "Sierpinski-romboïde", + "[Achievement name 428]Gotta go fast": "We moeten sneller gaan", + "[Achievement name 429]I think it's safe to say you've got it made": "We kunnen wel zeggen dat je het hebt gemaakt", + "[Achievement name 430]Renaissance baker": "Renaissancebakker", + "[Achievement name 431]Veteran": "Veteraan", + "[Achievement name 432]Thick-skinned": "Dikke huid", + "[Achievement name 433]F12": "F12", + "[Achievement name 434]Variable success": "Variabel succes", + "[Achievement name 435]No comments": "Geen commentaar", + "[Achievement name 436]Up to code": "De code is goed", + "[Achievement name 437]Works on my machine": "Werkt op mijn machine", + "[Achievement name 438]Technical debt": "Technische schuld", + "[Achievement name 439]Mind your language": "Let op je taal", + "[Achievement name 440]Inconsolable": "Ontroostbaar", + "[Achievement name 441]Closure": "Sluiting", + "[Achievement name 442]Dude what if we're all living in a simulation like what if we're all just code on a computer somewhere": "Man, wat als we allemaal in een simulatie leven, wat als we allemaal code zijn die ergens op een computer staat", + "[Achievement name 443]Taking the back streets": "Via de achterafstraatjes", + "[Achievement name 444]Inherited prototype": "Geërfd prototype", + "[Achievement name 445]A model of document object": "Een MDO (model of document object)", + "[Achievement name 446]First-class citizen": "Eersteklas burger", + "[Achievement name 447]Alexandria": "Alexandrië", + "[Achievement name 448]Bake him away, toys": "Klaar? Bakken maar.", + "[Achievement name 449]You're #1 so why try harder": "Je staat al bovenaan, dus doe eens rustig aan", + "[Achievement name 450]Haven't even begun to peak": "Ik heb mijn piek nog niet eens bereikt", + "[Achievement name 451]A sometimes food": "Een koekje eet je soms", + "[Achievement name 452]Not enough of a good thing": "Niet genoeg van het goede", + "[Achievement name 453]Horn of plenty": "Hoorn des overvloeds", + "[Achievement name 454]Smurf account": "Smurf-account", + "[Achievement name 455]If at first you don't succeed": "Als het in het begin nog niet lukt", + "[Achievement name 456]O Fortuna": "O Fortuna", + "[Achievement name 457]Initial public offering": "Eerste openbare aanbieding", + "[Achievement name 458]Rookie numbers": "Beginnersnummers", + "[Achievement name 459]No nobility in poverty": "Aan armoede is geen eer te behalen", + "[Achievement name 460]Full warehouses": "Volle pakhuizen", + "[Achievement name 461]Make my day": "Maak jij mijn dag goed?", + "[Achievement name 462]Buy buy buy": "Kopen kopen kopen", + "[Achievement name 463]Gaseous assets": "Waardevolle bezittingen", + "[Achievement name 464]Pyramid scheme": "Pyramideschema", + "[Achievement name 465]Jellicles": "Jubikels", + "[Achievement name 466]Quincentennial and a half": "Vijfhonderd en een half", + "[Achievement name 467]What did we even eat before these": "Wat aten we ook alweer hiervoor?", + "[Achievement name 468]Heavy flow": "Een gestage productie", + "[Achievement name 469]More you say?": "Wil je nog meer?", + "[Achievement name 470]Large and in charge": "Hoe meer hoe beter", + "[Achievement name 471]Absolutely stuffed": "Ik zit helemaal vol", + "[Achievement name 472]It's only wafer-thin": "Zo dun als een wafeltje", + "[Achievement name 473]Clickety split": "Klikheld", + "[Achievement name 474]Gotta hand it to you": "Dat is nou handig", + "[Achievement name 475]Okay boomer": "Oké boomer", + "[Achievement name 476]Overripe": "Overrijp", + "[Achievement name 477]Rock on": "Rotsvast", + "[Achievement name 478]Self-manmade man": "Helemaal zelf zo ver gekomen", + "[Achievement name 479]Checks out": "Laat dat geld maar rollen", + "[Achievement name 480]Living on a prayer": "Leven van gebed", + "[Achievement name 481]Higitus figitus migitus mum": "Higitus figitus migitus mum", + "[Achievement name 482]The incredible journey": "De wonderbaarlijke reis", + "[Achievement name 483]Just a phase": "Het is maar een fase", + "[Achievement name 484]Don't let me leave, Murph": "Laat me niet gaan, Murph", + "[Achievement name 485]Caveman to cosmos": "Holenmens naar de kosmos", + "[Achievement name 486]Particular tastes": "Ongewone smaken", + "[Achievement name 487]A light snack": "Een lichte snack", + "[Achievement name 488]Tempting fate": "Het lot uitdagen", + "[Achievement name 489]Tautological": "Tautologisch", + "[Achievement name 490]Curly braces": "Accolades", + "[Achievement name 491]Seven horseshoes": "Zeven hoefijzers", + "[Achievement name 492]Olden days": "De dagen van weleer", + "[Achievement name 493]The devil's workshop": "De werkplaats van de duivel", + "[Achievement name 494]In the green": "In het groen", + "[Achievement name 495]Mountain out of a molehill, but like in a good way": "Bergen verzetten", + "[Achievement name 496]The wheels of progress": "De wielen van vooruitgang", + "[Achievement name 497]That's rich": "Nu ben je rijk", + "[Achievement name 498]Preaches and cream": "Preken met room", + "[Achievement name 499]Magic thinking": "Magisch denken", + "[Achievement name 500]Is there life on Mars?": "Is er leven op mars?", + "[Achievement name 501]Bad chemistry": "Slechte chemie", + "[Achievement name 502]Reduced to gibbering heaps": "Teruggebracht tot snaterende hoopjes ellende", + "[Achievement name 503]Back already?": "Alweer terug?", + "[Achievement name 504]Nuclear throne": "Nucleaire troon", + "[Achievement name 505]Making light of the situation": "Licht op de situatie werpen", + "[Achievement name 506]Flip a cookie. Chips, I win. Crust, you lose.": "Gooi een koekje op. Chocoladestukjes: ik win. Onderkant: jij verliest.", + "[Achievement name 507]In and of itself": "Helemaal op zichzelf", + "[Achievement name 508]Duck typing": "Duck-typing", + "[Achievement name 509]They'll never know what hit 'em": "Ze weten niet wat ze overkomt", + "[Achievement name 510]Well-versed": "Mooie versjes", + "[Achievement name 511]Ripe for the picking": "Rijp om geplukt te worden", + "[Achievement name 512]Unreal": "Onwerkelijk", + "[Achievement name 513]Once you've seen one": "Als je er één gezien hebt...", + "[Achievement name 514]Spoils and plunder": "Pakken wat je pakken kan", + "[Achievement name 515]Nobody exists on purpose, nobody belongs anywhere": "Niemand bestaat met een doel, niemand hoort ergens", + "[Achievement name 516]Hyperspace expressway": "Hyperspace-snelweg", + "[Achievement name 517]Versatile": "Vers van de pers", + "[Achievement name 518]You are inevitable": "Jij bent onvermijdelijk", + "[Achievement name 519]Away from this place": "We gaan hier weg", + "[Achievement name 520]Everywhere at once": "Overal tegelijk", + "[Achievement name 521]Reject reality, substitute your own": "Wijs de realiteit af en vervang hem door de jouwe", + "[Achievement name 522]Fringe": "Op het randje", + "[Achievement name 523]Coherence": "Coherentie", + "[Achievement name 524]Earth-616": "Aarde-616", + "[Achievement name 525]Strange topologies": "Vreemde topologie", + "[Achievement name 526]Grand design": "Groot ontwerp", + "[Achievement name 527]Ecumenopolis": "Ecumenopolis", + "[Achievement name 528]The full picture": "Het volledige plaatje", + "[Achievement name 529]When there's nothing left to add": "Als je niets meer toe te voegen hebt", + "[Achievement name 530]Sexcentennial": "Zeshonderd", + "[Achievement name 531]Keep going until I say stop": "Ga door tot ik stop zeg", + "[Achievement name 532]But I didn't say stop, did I?": "Maar ik heb nog geen stop gezegd, hè?", + "[Achievement name 533]With unrivaled fervor": "Met een ongekende vurigheid", + "[Achievement name 534]Think big": "Denk groot", + "[Achievement name 535]Hypersize me": "Dat is hyperveel", + "[Achievement name 536]Max capacity": "Maximale capaciteit", + "[Achievement name 537]Liquid assets": "Vloeibare bezittingen", + "[Achievement name 538]Stifling the press": "De pers laten stikken", + "[Achievement name 539]It's big brain time": "Het is tijd voor grote hersenen", + "[Achievement name 540]Just my imagination": "Ik beeld het me maar in", + "[Achievement name 541]Now there's an idea": "Dat is nog eens een idee", + "[Achievement name 542]The organ that named itself": "Het orgaan dat zichzelf een naam gegeven heeft", + "[Achievement name 543]Gyrification": "Gyrificatie", + "[Achievement name 544]A trademarked portmanteau of \"imagination\" and \"engineering\"": "Een gepatenteerde samenstelling van \"verbeelding\" en \"techniek\"", + "[Achievement name 545]Mindfulness": "Mindfulness", + "[Achievement name 546]The 10% myth": "De 10% mythe", + "[Achievement name 547]Don't think about it too hard": "Denk er niet te moeilijk over", + "[Achievement name 548]Though fools seldom differ": "Hoewel sukkels niet vaak verschillend zijn", + "[Achievement name 549]Looking kind of dumb": "Dat ziet er best wel dom uit", + "[Achievement name 550]A beautiful mind": "Een prachtige denker", + "[Achievement name 551]Cardinal synapses": "Fundamentele synapses", + "[Achievement name 552]Positive thinking": "Positief denken", + "[Achievement name 553]The thought that counts": "De gedachte waar het om draait", + "[Achievement name 554]Unthinkable": "Ondenkbaar", + "[Achievement name 555]Gifted": "Getalenteerd", + "[Achievement name 556]They moistly come at night": "Ze zijn vooral 's nachts actief", + "[Achievement name 557]It's grown on you": "Je bent erin gegroeid", + "[Achievement name 558]Don't let the walls cave in on you": "Laat ze niet instorten", + "[Achievement name 559]Replaced by robots": "Vervangen door robots", + "[Achievement name 560]Financial prodigy": "Financieel wonderkind", + "[Achievement name 561]And I will pray to a big god": "En ik ga bidden tot een grote God", + "[Achievement name 562]Shosple Colupis": "Shosple Colupis", + "[Achievement name 563]False vacuum": "Vals vacuüm", + "[Achievement name 564]Metallic taste": "Metaalachtige smaak", + "[Achievement name 565]Swiss cheese": "Zwitserse kaas", + "[Achievement name 566]But the future refused to change": "Maar de toekomst wilde niet veranderen", + "[Achievement name 567]What's the dark matter with you": "Wat is er mis met jou?", + "[Achievement name 568]Enlightenment": "Verlichting", + "[Achievement name 569]Never tell me the odds": "Vertel me nooit welke kans ik maak", + "[Achievement name 570]Blowing an Apollonian gasket": "Je apollinisch kwaad maken", + "[Achievement name 571]Get with the program": "Je begint het door te krijgen", + "[Achievement name 572]Lost your cosmic marbles": "Je hebt je kosmische verstand verloren", + "[Achievement name 573]By will alone I set my mind in motion": "Ik heb met alleen mijn wil mijn verstand in gang gezet", + "[Achievement name 574]Ain't that a click in the head": "Helemaal suf geklikt", + "[Achievement name 575]Sexcentennial and a half": "Zeshonderd en een half", + "[Achievement name 576]I am speed": "Ik ben de snelheid zelve", + "[Achievement name 577]And on and on": "En maar door en door...", + "[Achievement name 578]Fake it till you bake it": "Bluffen tot het lukt", + "[Achievement name 579]History in the baking": "Geschiedenis in de bak", + "[Achievement name 580]Baby it's old outside": "Wat is het koud buiten", + "[Achievement name 581]Myriad": "Myriade", + "[Achievement name 582]Kaizen": "Kaizen", + "[Achievement name 583]Beyond quality": "Meer dan kwaliteit", + "[Achievement name 584]Everything happens so much": "Alles gebeurt zo veel", + "[Achievement name 585]I'll rest when I'm dead": "Ik rust wel uit als ik dood ben", + "[Achievement name 586]What do you get for the baker who has everything": "Wat koop je nou voor de bakker die alles al heeft", + "[Achievement name 587]Bottomless pit": "Bodemloze put", + "[Achievement name 588]All the stars in heaven": "Alle sterren in de lucht" +}); \ No newline at end of file diff --git a/gversion/gs/cookieclicker/loc/PL.js b/gversion/gs/cookieclicker/loc/PL.js new file mode 100644 index 0000000..262d994 --- /dev/null +++ b/gversion/gs/cookieclicker/loc/PL.js @@ -0,0 +1,3303 @@ +AddLanguage('PL','polish',{ + "": { + "language": "PL", + "plural-forms": "nplurals=2;plural=(n!=1);" + }, + "cookie": "ciastko", + "sugar lump": "grudka cukru", + "heavenly chip": "niebiański żeton", + "wrinkler": "zmarszczkacz", + "building": "budynek", + "upgrade": "ulepszenie", + "golden cookie": "złote ciastko", + "grandmapocalypse": "/", + "%1 cookie": [ + "%1 ciastko", + "%1 ciastka" + ], + "%1 sugar lump": [ + "%1 grudka cukru", + "%1 grudki cukru" + ], + "%1 heavenly chip": [ + "%1 niebiański żeton", + "%1 niebiańskie żetony" + ], + "%1 golden cookie": [ + "%1 złote ciastko", + "%1 złote ciastka" + ], + "%1 building": [ + "%1 budynek", + "%1 budynki" + ], + "%1 upgrade": [ + "%1 ulepszenie", + "%1 ulepszenia" + ], + "Yes": "Tak", + "No": "Nie", + "Click here": "Kliknij tutaj", + "Don't show this again": "Nie pokazuj tego ponownie", + "Delete all": "Usuń wszystko", + "Back": "Wstecz", + "Confirm": "Potwierdź", + "All done!": "Zrobione!", + "Load": "Wczytaj", + "Save": "Zapisz", + "Quit": "Wyjdź", + "Save & Quit": "Zapisz i wyjdź", + "Cancel": "Anuluj", + "Nevermind": "Nie ważne", + "Random": "Losowo", + "You have %1.": "Masz %1.", + "Click": "Kliknij", + "Shift": "/", + "Shift-click": "Kliknij z wciśniętym Shift", + "Ctrl": "/", + "Ctrl-click": "Kliknij z wciśniętym Ctrl", + "Esc": "/", + "Cookies": "Ciastka", + "%1 day": [ + "%1 dzień", + "%1 dni" + ], + "%1 hour": [ + "%1 godzina", + "%1 godziny" + ], + "%1 minute": [ + "%1 minuta", + "%1 minuty" + ], + "%1 second": [ + "%1 sekunda", + "%1 sekund" + ], + "less than 1 second": "mniej niż 1 sekunda", + "in %1": "w %1", + "%1 ago": "%1 temu", + "%1 remaining": "%1 zostało", + "%1 worth": "%1 wartości", + "%1 of CpS": "%1 CnS", + "%1% of bank": "%1 z banku", + "per second:": "na sekundę:", + "just now": "właśnie teraz", + "a long while": "dłuższa chwila", + "forever": "wieczność", + "Time remaining:": "Pozostały czas:", + "Big clickable cookie": "Wielkie, klikalne ciastko", + "Golden cookie": "Złote ciastko", + "Wrath cookie": "Ciastko gniewu", + "Reindeer": "Renifer", + "Options": "Opcje", + "General": "Ogólne", + "Settings": "Ustawienia", + "Volume": "Dźwięk", + "Volume (music)": "Głośność (muzyka)", + "ON": "Włączony", + "OFF": "Wyłączony", + "Fancy graphics": "Elegancka grafika", + "CSS filters": "Filtry CSS", + "visual improvements; disabling may improve performance": "ulepszenia graficzne. Wyłączenie ich może poprawić płynność gry", + "Particles": "Cząsteczki", + "Numbers": "Liczby", + "numbers that pop up when clicking the cookie": "liczby, które pojawiają się, gdy klikasz ciastka", + "Milk [setting]": "Mleko", + "Cursors [setting]": "Kursory", + "visual display of your cursors": "graficzna reprezentacja twoich kursorów", + "Wobbly cookie": "Chwiejne ciastko", + "Alt cookie sound": "Alternatywne dźwięki ciastek", + "Icon crates": "Ramki ikonek", + "display boxes around upgrades and achievements in Stats": "wyświetla ikony wokół ulepszeń oraz osiągnięć w statystykach", + "Alt font": "Alternatywna czcionka", + "your cookies are displayed using a monospace font": "wyświetla ciastka za pomocą czcionki monospace", + "Short numbers": "Skrócone liczby", + "Fast notes": "Szybkie notki", + "notifications disappear much faster": "powiadomienia znikają dużo szybciej", + "Closing warning": "Ostrzeżenie przed zamknięciem", + "the game will ask you to confirm when you close the window": "gra poprosi cię o potwierdzenie, jeśli postanowisz zamknąć okno", + "Defocus": "Obniż priorytet", + "the game will be less resource-intensive when out of focus": "gra stanie się mniej zasobożerna, jeśli obniżysz jej priorytet", + "Extra buttons": "Dodatkowe przyciski", + "add options on buildings like Mute": "dodaje opcje do budynków, jak np. wyciszenie", + "Lump confirmation": "Potwierdzenie grudek", + "the game will ask you to confirm before spending sugar lumps": "gra poprosi cię o potwierdzenie, jeśli postanowisz wydać grudki cukru", + "Custom grandmas": "Spersonalizowane babcie", + "some grandmas will be named after Patreon supporters": "niektóre babcie otrzymają imiona naszych darczyńców z Patreona", + "Scary stuff": "Straszne rzeczy", + "Sleep mode timeout": "Odliczanie do trybu uśpienia", + "on slower computers, the game will put itself in sleep mode when it's inactive and starts to lag out; offline CpS production kicks in during sleep mode": "na słabszych komputerach gra automatycznie wejdzie w tryb uśpienia, jeśli będzie nieaktywna lub zacznie spowalniać. W tym trybie rozpoczyna się offline’owa produkcja CnS", + "Music in background": "Muzyka w tle", + "music will keep playing even when the game window isn't focused": "muzyka będzie odtwarzana, nawet jeśli okno gry będzie zminimalizowane", + "Cloud saving": "Zapisy w chmurze", + "allow use of Steam Cloud for save backups": "pozwalaj na zapisywanie gry w usłudze Steam Cloud", + "Purge Cloud": "Oczyszczenie chmury", + "Current Cloud use:": "Bieżące użycie chmury:", + "No Cloud access at the moment.": "Aktualnie brak dostępu do chmury.", + "Screen reader mode": "Tryb czytnika ekranowego", + "allows optimizations for screen readers; game will reload": "optymalizacja pod kątem czytników ekranowych; gra zostanie załadowana na nowo", + "Discord status": "Status na Discordzie", + "if Discord is on, show your game info as activity status": "wyświetli twoje informacje o grze w polu statusu, jeśli masz włączonego Discorda", + "Language": "Język", + "Language: %1": "Język: %1", + "Change language": "Zmień język", + "note: this will save and reload your game": "uwaga: twoja gra zostanie zapisana i załadowana ponownie", + "Press %1 to toggle fullscreen.": "Wciśnij %1, by włączyć pełny ekran.", + "Other versions": "Inne wersje", + "Beta": "/", + "Stats": "Statystyki", + "Shadow achievements": "Osiągnięcia mroku", + "These are feats that are either unfair or difficult to attain. They do not give milk.": "Wyczyny, które są nieuczciwe lub trudne do wykonania. Nie dają ci mleka.", + "starter milk": "początkowe mleko", + "for %1 achievements": "za %1 osiągnięcia", + "appeased": "uspokojony", + "awoken": "obudzony", + "displeased": "zniesmaczony", + "angered": "zdenerwowany", + "Cookies in bank:": "Ciastka w banku:", + "Cookies baked (this ascension):": "Upieczonych ciastek (to wzniesienie):", + "Cookies baked (all time):": "Upieczonych ciastek (od początku):", + "Cookies forfeited by ascending:": "Ciastek zagubionych na skutek wzniesienia:", + "Legacy started:": "Czas gry:", + "with %1 ascension": [ + "z %1 wzniesieniem", + "z %1 wzniesieniami" + ], + "Run started:": "Rozgrywka rozpoczęta:", + "Buildings owned:": "Posiadanych budynków:", + "Cookies per second:": "Ciastek na sekundę:", + "Raw cookies per second:": "Pojedynczych ciastek na sekundę:", + "highest this ascension:": "najwyżej w trakcie tego wzniesienia:", + "multiplier:": "mnożnik:", + "withered:": "przywiędłych:", + "Cookies per click:": "Ciastek na kliknięcie:", + "Cookie clicks:": "Klikniętych ciastek:", + "Hand-made cookies:": "Ręcznie wykonanych ciastek:", + "Golden cookie clicks:": "Klikniętych złotych ciastek:", + "Random drop multiplier:": "Mnożnik losowych dropów:", + "all time:": "od początku:", + "Running version:": "Bieżąca wersja:", + "Special": "Specjalny", + "Challenge mode:": "Tryb wyzwań:", + "Seasonal event:": "Wydarzenie sezonowe:", + "Research:": "Badania:", + "Grandmatriarchs status:": "Status arcymatrony:", + "Pledge:": "Przysięga:", + "Wrinklers popped:": "Rozgniecionych zmarszczkaczy:", + "Sugar lumps harvested:": "Zebranych grudek cukru:", + "Reindeer found:": "Odnalezionych reniferów:", + "Santa stages unlocked:": "Odblokowanych scen z Mikołajem:", + "Dragon training:": "Smoczych szkoleń:", + "Prestige": "Prestiż", + "at %1% of its potential (+%2% CpS)": "na %1% swojego potencjału (+%2% wartości CnS)", + "Prestige upgrades unlocked:": "Odblokowanych ulepszeń prestiżowych:", + "Upgrades unlocked:": "Odblokowanych ulepszeń:", + "Achievements unlocked:": "Odblokowanych osiągnięć:", + "Kitten multiplier:": "Koci tryb dla wielu graczy:", + "Milk": "Mleko", + "Milk:": "Mleko:", + "Milk flavors unlocked:": "Odblokowanych smaków mleka:", + "Milk is gained with each achievement. It can unlock unique upgrades over time.": "Każde osiągnięcie wynagradza cię mlekiem. Dzięki niemu możesz z biegiem gry odblokowywać wyjątkowe ulepszenia.", + "Rank %1": "Poziom %1", + "Automatic": "Automatyczny", + "Plain milk": "Zwykle mleko", + "Chocolate milk": "Mleko czekoladowe", + "Raspberry milk": "Mleko malinowe", + "Orange milk": "Mleko pomarańczowe", + "Caramel milk": "Mleko karmelowe", + "Banana milk": "Mleko bananowe", + "Lime milk": "Mleko limonkowe", + "Blueberry milk": "Mleko jagodowe", + "Strawberry milk": "Mleko truskawkowe", + "Vanilla milk": "Mleko waniliowe", + "Zebra milk": "Mleko zebrowe", + "Cosmic milk": "Mleko kosmiczne", + "Flaming milk": "Mleko flamingowe", + "Sanguine milk": "Mleko optymizmu", + "Midas milk": "Mleko Midasa", + "Midnight milk": "Mleko północne", + "Green inferno milk": "Mleko zielonego piekła", + "Frostfire milk": "Mleko lodowatego ognia", + "Honey milk": "Mleko miodowe", + "Coffee milk": "Mleko kawowe", + "Tea milk": "Mleko herbaciane", + "Coconut milk": "Mleko kokosowe", + "Cherry milk": "Mleko wiśniowe", + "Soy milk": "Mleko sojowe", + "Spiced milk": "Mleko z przyprawami", + "Maple milk": "Mleko klonowe", + "Mint milk": "Mleko miętowe", + "Licorice milk": "Mleko lukrecjowe", + "Rose milk": "Mleko różane", + "Dragonfruit milk": "Mleko pitajowe", + "Info": "Informacje", + "About": "O grze", + "Cookie Clicker is a javascript game by %1 and %2.": "Cookie Clicker jest grą w javascript, stworzoną przez %1 i %2.", + "Music by %1.": "Muzyka: %1.", + "Useful links: %1, %2, %3, %4.": "Przydatne odnośniki: %1, %2, %3, %4.", + "This version of Cookie Clicker is 100% free, forever. Want to support us so we can keep developing games? Here's some ways you can help:%1": "Ta wersja gry Cookie Clicker jest w 100% na zawsze darmowa. Chcesz jednak nas wspierać, abyśmy mogli dalej tworzyć gry? Oto jak nam możesz pomóc:%1", + "Note: if you find a new bug after an update and you're using a 3rd-party add-on, make sure it's not just your add-on causing it!": "Pamiętaj: jeśli po aktualizacji gry zauważysz jakiś nowy błąd, a używasz dodatków osób trzecich, upewnij się najpierw, że to nie one go powodują!", + "Warning: clearing your browser cache or cookies (what else?) will result in your save being wiped. Export your save and back it up first!": "Uwaga: wyczyszczenie pamięci podręcznej lub ciasteczek (a jakże?) sprawi, że twoje postępy w grze zostaną utracone. Zawsze najpierw eksportuj swój stan gry i dokonuj jego kopii zapasowej!", + "Version history": "Historia wersji", + "Official website": "Strona oficjalna", + "Note: links will open in your web browser.": "Uwaga: odnośnik zostanie otworzony w przeglądarce internetowej.", + "Note: older update notes are in English.": "Uwaga: starsze opisy aktualizacji są w języku angielskim.", + "This feature is not yet available in your language.": "Ta opcja nie jest jeszcze dostępna w Twoim języku.", + "Restart with new changes": "Wprowadź zmiany po restarcie gry", + "Cookie Clicker is in sleep mode.": "Cookie Clicker działa w trybie uśpienia.", + "Cookie Clicker is in sleep mode and generating offline cookies.": "Cookie Clicker działa w trybie uśpienia, ale nadal generuje ciastka offline.", + "%1 to resume from your save file.": "%1, aby wznowić stan gry.", + "(this happens when too many frames are skipped at once,
usually when the game has been running in the background for a while)
(you can turn this feature off in the settings menu)": "(tak się dzieje, gdy za wiele klatek pomija się na raz,
co na ogół ma miejsce, jeśli gra działa od dłuższego czasu w tle)
(możesz wyłączyć tę funkcję w menu ustawień)", + "Are you sure you want to close Cookie Clicker?": "Na pewno chcesz wyjść z Cookie Clicker?", + "Back up your save!": "Zrób kopię zapasową postępów w grze!", + "Hello again! Just a reminder that you may want to back up your Cookie Clicker save every once in a while, just in case.
To do so, go to Options and hit \"Export save\" or \"Save to file\"!": "Witaj ponownie! Tylko przypominamy, że od czasu do czasu dobrze jest zrobić kopię zapasową postępów w grze Cookie Clicker. Tak na wszelki wypadek.
Aby tego dokonać, wejdź do Opcji, a następnie wciśnij „Eksportuj stan gry” lub „Zapisz do pliku”.", + "Save manually (the game autosaves every 60 seconds; shortcut: ctrl+S)": "Zapisuj ręcznie (gra zapisuje automatycznie twoje postępy co 60 sekund. Skrót: Ctrl+S)", + "You can use this to backup your save or to transfer it to another computer (shortcut for import: ctrl+O)": "Dzięki tej funkcji możesz zarówno stworzyć kopię zapasową swoich postępów w grze, jak również przenieść ją na inny komputer (skrót do importowania: Crtl+O)", + "Save to file": "Zapisz do pliku", + "Load from file": "Wczytaj z pliku", + "Use this to keep backups on your computer": "Dzięki tej funkcji możesz zapisywać na swoim komputerze kopie zapasowe postępów w grze", + "Export save": "Eksportuj stan gry", + "This is your save code.
Copy it and keep it somewhere safe!": "To kod z twoimi postępami w grze.
Przekopiuj go i trzymaj w bezpiecznym miejscu!", + "Import save": "Importuj stan gry", + "Please paste in the code that was given to you on save export.": "Proszę wkleić kod, który otrzymałeś podczas eksportowania swoich postępów w grze.", + "Game saved": "Zapisano grę", + "Game loaded": "Wczytano grę", + "Error while saving": "Błąd podczas zapisywania", + "Export your save instead!": "Spróbuj użyć funkcji eksportowania postępów w grze!", + "Error importing save": "Błąd podczas importowania postępów w grze", + "Oops, looks like the import string is all wrong!": "Ojej, wygląda na to, że ciąg znaków w importowanym pliku jest niepoprawny!", + "You are attempting to load a save from a future version (v. %1; you are using v. %2).": "Próbujesz wczytać stan gry z nowszej wersji (v. %1, a ty używasz v. %2).", + "Sorry, you can't import saves from the classic version.": "Przepraszamy, ale nie można importować postępów w grze z wersji klasycznej.", + "Wipe save": "Usuń postępy w grze", + "Delete all your progress, including your achievements": "Usuwa wszystkie twoje postępy w grze, włącznie z osiągnięciami", + "Do you REALLY want to wipe your save?
You will lose your progress, your achievements, and your heavenly chips!": "NA PEWNO chcesz usunąć wszystkie postępy?
Stracisz wszystkie postępy, osiągnięcia oraz niebiańskie żetony!", + "Whoah now, are you really, REALLY sure you want to go through with this?
Don't say we didn't warn you!": "Ale teraz już poważnie, czy ty faktycznie, NAPRAWDĘ chcesz tego dokonać?
Tylko nie mów, że cię nie ostrzegaliśmy!", + "Game reset": "Gra zresetowana", + "Good bye, cookies.": "Żegnajcie, ciastka.", + "Welcome back!": "Witaj ponownie!", + "You earned %1 while you were away.": "Podczas twojej nieobecności zarobiłeś %1.", + "Mods": "Mody", + "Manage mods": "Zarządzaj modami", + "Publish mods": "Publikuj mody", + "Update published mods": "Zaktualizuj opublikowane mody", + "Only use mods from trusted sources. Some mods may require a game restart to take effect.": "Używaj modów tylko z zaufanych źródeł. Niektóre mody wymagają zrestartowania gry.", + "Enable": "Włącz", + "Disable": "Wyłącz", + "Priority up": "Zwiększ priorytet", + "Priority down": "Zmniejsz priorytet", + "New mod": "Nowy mod", + "Select folder": "Wybierz folder", + "Select updated folder": "Wybierz zaktualizowany folder", + "Select a mod.": "Wybierz mod.", + "Open folder": "Otwórz folder", + "Open Workshop": "Otwórz Pracownię", + "Open Workshop page": "Otwórz stronę Pracowni", + "Unsubscribe": "Anuluj subskrypcję", + "Local mod": "Lokalny mod", + "Open %1 folder": "Otwórz folder %1", + "Description": "Opis", + "Image": "Obraz", + "Name": "Nazwa", + "Title": "Tytuł", + "Visibility": "Widoczność", + "Author": "Autor", + "File size": "Rozmiar pliku", + "Tags": "Tagi", + "Dependencies": "Zależności", + "Publish to Workshop": "Publikuj w Pracowni", + "Version": "Wersja", + "Error!": "Błąd!", + "none": "brak", + "Publishing...": "Publikowanie…", + "Updating...": "Aktualizowanie…", + "Success!": "Sukces!", + "Refresh": "Odśwież", + "Last update:": "Ostatnia aktualizacja:", + "Mods are loaded from top to bottom.": "Mody ładowane są z góry do dołu.", + "Some mods couldn't be loaded:": "Nie można było załadować paru modów:", + "This tool allows you to upload new mods to the Steam Workshop.
You need to select a mod folder containing a properly-formatted %1 file.
See the included sample mods for examples.": "To narzędzie pozwala na przesyłanie nowych modów do Warsztatu Steam.
Musisz wybrać katalog moda zawierający odpowiednio sformatowany plik %1.
Aby uzyskać więcej informacji, zajrzyj do załączonych przykładowych modów.", + "Mod data": "Dane modów", + "No mod data present.": "Brak danych modów.", + "These are the mods present in your save data. You may delete some of this data to make your save file smaller.": "Mody obecne w twoim pliku zapisu postępów w grze. Możesz usunąć część tych danych, aby zmniejszyć plik.", + "(loaded)": "(wczytano)", + "%1 char": [ + "%1 znak", + "%1 znaki" + ], + "Check mod data": "Sprawdź dane modów", + "view and delete save data created by mods": "sprawdź i usuń dane zapisu stworzone przez mody", + "New update!": "Nowa aktualizacja!", + "New version available: v. %1!": "Dostępna jest już nowa wersja: v. %1!", + "Update note: \"%1\"": "Informacja dot. aktualizacji: „%1”", + "Refresh to get it!": "Podoba Ci się? To odśwież.", + "You are currently playing Cookie Clicker on the %1 protocol.
The %2 version uses a different save slot than this one.
Click this lock to reload the page and switch to the %2 version!": "Aktualnie grasz w Cookie Clicker na protokole %1 .
Wersja %2 korzysta z innego miejsca zapisu postępów w grze niż twoja.
Kliknij tę kłódkę, aby przeładować stronę i przełączyć się na wersję %2!", + "+%1 more notification.": [ + "+%1 dodatkowe powiadomienie", + "+%1 dodatkowych powiadomień" + ], + "Christmas": "Dzień świąt Bożego Narodzenia", + "Valentine's day": "Dzień św. Walentego", + "Business day": "Zwykły dzień roboczy", + "Easter": "Wielkanoc", + "Halloween": "/", + "%1 has started!": "%1 rozpoczyna się!", + "%1 is over.": "%1 kończy się.", + "%1's bakery": "Piekarnia należąca do %1", + "Name your bakery": "Nazwij swoją piekarnię", + "What should your bakery's name be?": "Jak się powinna nazywać twoja piekarnia?", + "bakery random name, 1st half": [ + "Magiczna", + "Fantastyczna", + "Fikuśna", + "Elegancka", + "Czadowa", + "Piękna", + "Urocza", + "Piracka", + "Ninja", + "Zombiasta", + "Robocia", + "Radykalna", + "Miejska", + "Wyczesana", + "Wypasiona", + "Słodka", + "Okropna", + "Podwójna", + "Potrójna", + "Turbo", + "Techno", + "Disco", + "Elektroniczna", + "Taneczna", + "Cudowna", + "Zmutowana", + "Kosmiczna", + "Naukowa", + "Średniowieczna", + "Nowoczesna", + "Kapitańska", + "Zaplatana", + "Ukochana", + "Malutka", + "Wielka", + "Ognista", + "Wodna", + "Mroźna", + "Metalowa", + "Plastyczna", + "Twarda", + "Ciekła", + "Stęchła", + "Błyszcząca", + "Wesoła", + "Mała i wesoła", + "Chudziutka", + "Smaczna", + "Pyszna", + "Głodna", + "Zachłanna", + "Śmiertelna", + "Profesorska", + "Doktorska", + "Elektryczna", + "Czekoladowa", + "Chrupiąca", + "Szokoladowa", + "Prawilna", + "Wdzięczna", + "Zapadająca w pamięć", + "Ześwirowana", + "Szalona", + "Szaleńcza", + "Przegięta", + "Królewska", + "El", + "Von" + ], + "bakery random name, 2nd half": [ + "Krówka", + "Kremówka", + "Muffinka", + "Tartaletka", + "Babeczka", + "Kolacja", + "Waluta", + "Zębatka", + "Machina", + "Marionetka", + "Rękawiczka", + "Skarpeta", + "Imbryczka", + "Tajemnica", + "Piekarenka", + "Kucharka", + "Babcia", + "Kliczka", + "Klikaczka", + "Rakieta", + "Fabryka", + "Brama", + "Maszyna", + "Próba", + "Maszkara", + "Panika", + "Włamywaczka", + "Złodziejka", + "Zdobycz", + "Pyra", + "Pizza", + "Buła", + "Kiełbasa", + "Kaszanka", + "Pasta", + "Zapiekanka", + "Kotka", + "Sunia", + "Żyrafa", + "Zebra", + "Papuga", + "Ryba", + "Kaczka", + "Leniwca", + "Żółwica", + "Goblinka", + "Pixie", + "Gnomka", + "Automata", + "Piracka", + "Ninja", + "Zombiasta", + "Robocia" + ], + "%1, age %2": "„%1, wiek %2”,", + "Sugar lumps!": "Grudki cukru!", + "Because you've baked a billion cookies in total, you are now attracting sugar lumps. They coalesce quietly near the top of your screen, under the Stats button.
You will be able to harvest them when they're ripe, after which you may spend them on all sorts of things!": "Ponieważ upiekłeś łącznie miliard ciastek, to teraz zaczynasz przyciągać grudki cukru. Zbierają się one spokojnie nieopodal górnej krawędzi ekranu, pod przyciskami Statystyk.
Gdy będą dojrzałe, będziesz mógł je zebrać, a następnie wydać na całą masę różnych rzeczy!", + "A sugar lump is coalescing here, attracted by your accomplishments.": "Tutaj pojawia się grudka cukru. Zwabiły ją twoje osiągnięcia.", + "Your sugar lumps mature after %1,
ripen after %2,
and fall after %3.": "Twoje grudki cukru dorosną za %1,
dojrzeją za %2,
oraz spadną za %3.", + "• Sugar lumps can be harvested when mature, though if left alone beyond that point they will start ripening (increasing the chance of harvesting them) and will eventually fall and be auto-harvested after some time.
• Sugar lumps are delicious and may be used as currency for all sorts of things.
• Once a sugar lump is harvested, another one will start growing in its place.
• Note that sugar lumps keep growing when the game is closed.": "• Grudki cukru można zbierać, już kiedy dorosną, ale najlepiej poczekać, aż zaczną dojrzewać (dając ci większą szansę na zebranie ich). Ostatecznie i tak spadną i zostaną samoczynnie zebrane po jakimś czasie.
• Grudki cukru smakują wyśmienicie i można z nich korzystać jak z waluty do zakupu różnych rzeczy.
• Gdy już zbierzesz grudkę cukru, na jej miejscu poczyna rosnąć nowa.
• Pamiętaj, że grudki cukru rosną także, gdy gra jest wyłączona.", + "This sugar lump has been exposed to time travel shenanigans and will take an excruciating %1 to reach maturity.": "Na tę grudkę cukru wywarły swoje piętno przekręty czasoprzestrzenne, skutkiem czego dorośnie dopiero za %1.", + "This sugar lump is still growing and will take %1 to reach maturity.": "Ta grudka cukru nadal rośnie i potrzebuje jeszcze %1, aby dorosnąć.", + "This sugar lump is mature and will be ripe in %1.
You may click it to harvest it now, but there is a 50% chance you won't get anything.": "Ta grudka cukru już dorosła, ale potrzebuje %1 żeby dojrzeć.
Możesz kliknąć grudkę cukru już teraz, aby ją zebrać, ale jest 50% ryzyka, że ci się nie powiedzie.", + "This sugar lump is ripe! Click it to harvest it.
If you do nothing, it will auto-harvest in %1.": "Ta grudka cukru jest już dojrzała! Kliknij ją, aby ją zebrać.
Jeśli nie zrobisz nic, grudka zostanie zebrana samoczynnie za %1.", + "This sugar lump grew to be bifurcated; harvesting it has a 50% chance of yielding two lumps.": "Ta grudka cukru zduplikowała się. Dzięki temu masz 50% szansy na to, że zbierzesz dwie grudki zamiast jednej.", + "This sugar lump grew to be golden; harvesting it will yield 2 to 7 lumps, your current cookies will be doubled (capped to a gain of 24 hours of your CpS), and you will find 10% more golden cookies for the next 24 hours.": "Ta grudka cukru pokryła się złotem. Zebranie jej sprawi, że otrzymasz 2 do 7 grudek, twój zapas ciastek podwoi się (ograniczony do poziomu będącego wypadkową 24 godzin i twojej wartości CnS), a także przez kolejne 24 godziny będziesz znajdował o 10% więcej złotych ciastek.", + "This sugar lump was affected by the elders and grew to be meaty; harvesting it will yield between 0 and 2 lumps.": "Przy tej grudce cukru majstrowała starszyzna, skutkiem czego stała się mięsista. Zebranie jej dostarczy ci od 0 do 2 grudek. ", + "This sugar lump is caramelized, its stickiness binding it to unexpected things; harvesting it will yield between 1 and 3 lumps and will refill your sugar lump cooldowns.": "Ta grudka cukru skarmelizowała się, na skutek czego cała masa różnych rzeczy poprzyklejała się do niej. Zebranie jej dostarczy ci od 1 do 3 grudek oraz odnowi twoje czasy oczekiwania na grudki cukru.", + "You harvested %1 while you were away.": "Kiedy cię nie było, zebrałeś %1.", + "Sugar blessing activated!": "Aktywowano cukrowe błogosławieństwo!", + "Your cookies have been doubled.
+10% golden cookies for the next 24 hours.": "Masz dwa razy więcej ciastek.
+10% złotych ciastek przez następne 24 godziny.", + "Sugar lump cooldowns cleared!": "Odnowiono czasy oczekiwania na grudki cukru!", + "Botched harvest!": "Nieudane zbiory!", + "Do you want to spend %1 to %2?": "Chcesz wydać %1 do %2?", + "Heralds": "Heroldzi", + "%1 herald": [ + "%1 herold", + "%1 heroldzi" + ], + "Heralds couldn't be loaded. There may be an issue with our servers, or you are playing the game locally.": "Nie można załadować heroldów. Może to być spowodowane błędem na serwerze albo przez to, że grasz lokalnie.", + "There are no heralds at the moment. Please consider donating to our Patreon!": "Na tę chwile nie ma żadnych heroldów. Rozważ jednak, czy nie zechciałbyś dokonać wpłaty na naszym Patreonie!", + "selflessly inspiring a boost in production for everyone, resulting in %1.": "bezinteresownie wywołując u każdego wzrost produktywności, dzięki czemu otrzymujesz %1.", + "+%1% cookies per second": "+%1% ciastek na sekundę", + "You are in a Born again run, and are not currently benefiting from heralds.": "Jesteś Urodzony na nowo, ale nie korzystasz z heroldów.", + "You own the Heralds upgrade, and therefore benefit from the production boost.": "Dysponujesz ulepszeniem Heroldzi, dzięki któremu twoja produktywność wzrasta.", + "To benefit from the herald bonus, you need a special upgrade you do not yet own. You will permanently unlock it later in the game.": "Aby skorzystać z bonusu dawanego przez heroldów, musisz mieć specjalne ulepszenie, którym jeszcze nie dysponujesz. Odblokujesz je na stałe na późniejszych etapach w grze.", + "Heralds are people who have donated to our highest Patreon tier, and are limited to 100.
Each herald gives everyone +1% CpS.
Heralds benefit everyone playing the game, regardless of whether you donated.": "Heroldzi to ludzie, którzy wpłacili najwyższe kwoty na naszego Patreona i jest ich nie więcej niż 100.
Każdy herold daje każdemu +1% wartości CnS.
Z obecności heroldów korzystają wszyscy gracze, niezależnie od tego, czy sami również wpłacili.", + "Every %1 current players on Steam generates 1 herald, up to %2 heralds.
Each herald gives everyone +1% CpS.": "Każde %1 aktywnych graczy na Steamie generuje 1 herolda, maksymalnie %2.
Każdy herold daje każdemu +1% CnS.", + "+%1!": "/", + "You found %1!": "Znajdujesz %1!", + "Found %1!": "Znaleziono %1!", + "You also found %1!": "Znajdujesz także %1!", + "Lost %1!": "Tracisz %1!", + "Sweet!
Found 1 sugar lump!": "Słodko!
Znaleziono 1 grudkę cukru!", + "Lucky!": "Szczęściarz!", + "Ruin!": "Tragedia!", + "Cookie chain over. You made %1.": "Ciastkowy łańcuch przerwał się. Zarabiasz %1.", + "Cookie chain": "Ciastkowy łańcuch", + "Cookie chain broken.
You made %1.": "Ciastkowy łańcuch przełamany.
Zarabiasz %1.", + "Cookie blab": [ + "Kruchość ciastek x3 przez 60 sekund!", + "Czekoladowość x7 przez 77 sekund!", + "Sprężystość ciasta zmniejszona o połowę przez 66 sekund!", + "Połyskliwość złotych ciastek podwojona przez 3 sekundy!", + "Gospodarka świata zmniejszona o połowę przez 30 sekund!", + "Babcine całuski o 23% bardziej kąśliwe przez 45 sekund!", + "Dziękujemy za klikanie!", + "Żartowaliśmy! To był tylko sprawdzian.", + "+1 do kliknięć złotych ciastek!", + "Twoje kliknięcie zostało odnotowane. Dziękujemy za współpracę.", + "Dziękujemy! Tego nam było trzeba!", + "Dzięki. Wysłaliśmy już zespół.", + "Oni wiedzą.", + "Ojej, a to było tylko czekoladowe ciastko w błyszczącym sreberku." + ], + "Exploded a wrinkler": "Eksplodowałeś zmarszczkacza", + "Exploded a shiny wrinkler": "Eksplodowałeś błyszczącego zmarszczkacza", + "Swallowed:": "Połykasz:", + "Reindeer names": [ + "Ubijacz", + "Tancerz", + "Brykacz", + "Lisu", + "Kometa", + "Kupidyn", + "Zbój", + "Jaracz", + "Rudolf" + ], + "The reindeer gives you %1.": "Renifer daje ci %1.", + "You are also rewarded with %1!": "Otrzymujesz także %1!", + "You are granted %1.": "Dostajesz też %1.", + "Found a present!": "Znajdujesz prezent!", + "You find a present which contains...": "Otrzymujesz prezent, a w środku…", + "Evolve": "Ewoluuj", + "Festive test tube": "Świąteczna probówka", + "Festive ornament": "Świąteczne ozdoby", + "Festive wreath": "Świąteczny wieniec", + "Festive tree": "Świąteczne drzewo", + "Festive present": "Świąteczny prezent", + "Festive elf fetus": "Świąteczny płód elfa", + "Elf toddler": "Elficki berbeć", + "Elfling": "Elfek", + "Young elf": "Młody elf", + "Bulky elf": "Przypakowany elf", + "Nick": "Mikuś", + "Santa Claus": "Święty Mikołaj", + "Elder Santa": "Starszy Mikołaj", + "True Santa": "Prawdziwy Mikołaj", + "Final Claus": "Ostateczny Mikołaj", + "Dragon egg": "Smocze jajo", + "Shivering dragon egg": "Dygoczące smocze jajo", + "Krumblor, cookie hatchling": "Krumblor, ciastkowe pisklę", + "Krumblor, cookie dragon": "Krumblor, ciastkowy smok", + "Train %1": "Wytrenuj %1", + "Aura: %1": "/", + "Chip it": "Rozbij je", + "Hatch it": "Zaopiekuj się nim", + "Bake dragon cookie": "Upiecz smocze ciastko", + "Delicious!": "Wyśmienite!", + "Train secondary aura": "Naucz drugiej aury", + "Lets you use two dragon auras simultaneously": "Pozwala na równoczesne korzystanie z dwóch smoczych aur", + "Your dragon is fully trained.": "Twój smok jest już w pełni wyszkolony.", + "%1 of every building": "%1 z każdego budynku", + "No aura": "Brak aury", + "Set your dragon's aura": "Ustaw swojemu smokowi aurę", + "Set your dragon's secondary aura": "Ustaw swojemu smokowi drugą aurę", + "Select an aura from those your dragon knows.": "Wybierz aurę spośród tych, które twój smok już zna.", + "One tenth of every other dragon aura, combined.": "Jedna dziesiąta z każdej drugiej aury smoka, razem.", + "Switching your aura is free because you own no buildings.": "Przechodzenie pomiędzy aurami jest darmowe, ponieważ nie masz żadnych budynków.", + "The cost of switching your aura is %1.
This will affect your CpS!": "Koszt związany ze zmianą aury to %1.
Wpłynie to również na twoją wartość CnS!", + "Your dragon dropped something!": "Twój smok coś upuścił!", + "Breath of Milk": "Oddech mleka", + "Dragon Cursor": "Smoczy kursor", + "Elder Battalion": "Batalion starców", + "Reaper of Fields": "Pogromca pól", + "Earth Shatterer": "Niszczyciel ziemi", + "Master of the Armory": "Mistrz pancerza", + "Fierce Hoarder": "Nieustraszony kolekcjoner", + "Dragon God": "Smoczy bóg", + "Arcane Aura": "Tajemnicza aura", + "Dragonflight": "Smoczy lot", + "Ancestral Metamorphosis": "Niebiańska metamorfoza", + "Unholy Dominion": "Plugawe królestwo", + "Epoch Manipulator": "Epicki manipulator", + "Mind Over Matter": "Umysł ponad materią", + "Radiant Appetite": "Nieposkromiony apetyt", + "Dragon's Fortune": "Smocze szczęście", + "Dragon's Curve": "Smocza krzywa", + "Reality Bending": "Zakrzywianie rzeczywistości", + "Dragon Orbs": "Smocze kule", + "Supreme Intellect": "„Wybitny intelekt”,", + "News :": "Nowości :", + "Ticker (grandma)": [ + "Wilgotne ciastka.", + "Jesteśmy miłymi babciami.", + "Służebność kontraktowa.", + "Daj babci buziaka.", + "Czemu mnie nie odwiedzasz częściej?", + "Zadzwoń czasem do mnie..." + ], + "Ticker (threatening grandma)": [ + "Ohyda.", + "Robi mi się niedobrze.", + "Niedobrze mi na twój widok.", + "Wznosimy się.", + "Zaczyna się.", + "Niedługo będzie po wszystkim.", + "Mogłeś to zatrzymać." + ], + "Ticker (angry grandma)": [ + "Zdradził nas, maszkaron jeden.", + "Ten maszkaron próbował się nas pozbyć.", + "Myślał, że się nas pozbędzie, sprzedając nas. Urocze.", + "Czuję zapach twoich spalonych ciastek." + ], + "Ticker (grandmas return)": [ + "kurczą się", + "wiją się", + "biją", + "gryzą", + "I znów na cztery nogi.", + "Zaledwie mała niedogodność.", + "Czujemy jeszcze głód.", + "Za późno." + ], + "Ticker (grandma invasion start)": [ + "zaginęły miliony starszy pań!", + "rodziny z całego kontynentu opisują przypadki pobudzonych, sparaliżowanych strachem babć!", + "pielęgniarki donoszą o „dziwnym zapachu ciasteczek” wokół starszych pań na oddziale." + ], + "Ticker (grandma invasion rise)": [ + "miasto w szoku! Dziwne, starsze panie włamują się do domów, porywają dzieci i zapiekają przybory kuchenne!", + "na całym kontynencie trwa istny eksodus starszych pań!", + "starsze panie nieruchomieją na ulicach, a z ich ciała wycieka ciepły, cukrowy syrop!" + ], + "Ticker (grandma invasion full)": [ + "pomarszczone „cieliste macki” widoczne z kosmosu!", + "to już koniec — wijące się kłębowisko ciasta i skóry pokrywa całe miasto!", + "koszmar trwa — pomarszczone hektary ciała rozprzestrzeniają się w zawrotnym tempie." + ], + "Ticker (Farm)": [ + "hodowle ciastek zanieczyszczają rzeki szkodliwą czekoladą, twierdzą naukowcy.", + "genetycznie modyfikowana czekolada wzbudza kontrowersje pośród hodowców czekolady.", + "hodowle ciastek są niewegańskie, twierdzi dietetyk." + ], + "Ticker (Mine)": [ + "czy nasza planeta traci na wadze? Eksperci sprawdzają skutki intensywnego wydobycia czekolady.", + "kopalnie czekolady powodują trzęsienia ziemi oraz leje krasowe!", + "pod złożami czekolady w kopalni skrywały się „osobliwe, czekoladowe istoty”!" + ], + "Ticker (Factory)": [ + "fabryki ciastek mają związek z globalnym ociepleniem!", + "fabryki ciastek ogłaszają strajk. Roboty zatrudnione, aby zapełnić wakaty!", + "strajk w fabrykach ciastek trwa — pracownicy żądają uczciwej zapłaty, ale nie w ciastkach!" + ], + "Ticker (Bank)": [ + "ciastkowe pożyczki coraz powszechniejsze. Ludzi nie stać już na ciastka za tradycyjne pieniądze.", + "ciastka coraz bardziej wyprzedzają tradycyjną walutę!", + "bankomat przy każdej piekarni? Oto łatwy sposób na wpłatę i wypłatę ciastek." + ], + "Ticker (Temple)": [ + "niedawno odkryte świątynie czekolady stały się zalążkiem nowej, ciastkowej religii. Już tysiące wiernych modlą się do Piekarza w niebie.", + "religioznawcy na całym świecie uznają nową, ciastkową religię. „No cóż, widocznie myliliśmy się od samego początku!”", + "badacze znajdują starożytny artefakt w opuszczonej świątyni. Archeolodzy zachwycają się pradawnym wałkiem do ciasta!" + ], + "Ticker (Wizard tower)": [ + "nowe uroki i klątwy czekają specjalnie dla ciebie na dorocznym Narodowym Festynie Magii. Wyjątkowe oferty na runy i księgi zaklęć.", + "ciastkowi czarodzieje dementują udział w narodzinach szokująco brzydkiego dziecka. Dziecko jest „szczerze ohydne, ale przynajmniej naturalne” — uspokajają lekarze.", + "„Każda odpowiednio przaśna magia jest nieodróżnialna od technologii” — twierdzi znany technoczarodziej." + ], + "Ticker (Shipment)": [ + "nowo odkryta czekoladowa planeta z marszu staje się obiektem pielgrzymek niezliczonych ilości statków handlowych z ciastkami!", + "jądro ogromnej, czekoladowej planety składa się w 99,8% z prawdziwej, ciemnej czekolady!", + "pierwsze czekoladowe organizmy odkryte na odległej planecie!" + ], + "Ticker (Alchemy lab)": [ + "narodowe zapasy złota topnieją. Coraz więcej tego drogocennego minerału przekuwa się na ciastka!", + "srebro także można przemienić w białą czekoladę!", + "zamknięcie szwankującego laboratorium. W środku szalał proceder zamiany ciastek na bezużyteczne złoto." + ], + "Ticker (Portal)": [ + "cały naród martwi się na widok przerażających stworzeń wyłaniających się z międzywymiarowych portali!", + "turystyka do ciastoświata coraz popularniejsza pośród znudzonych nastolatków! Wskaźnik zgonów to aż 73%!", + "portale do ciastoświata powodują szybkie starzenie się oraz obsesję na punkcie cukiernictwa, twierdzą badania." + ], + "Ticker (Time machine)": [ + "wehikuły czasu zamieszane w skandal związany z przepisywaniem historii! Ale czy na pewno?", + "ciastka z przeszłości „nie nadają się do spożycia przez ludzi” — twierdzi historyk.", + "„Widziałem przyszłość” — twierdzi kontroler wehikułu czasu — „i nie zamierzam do niej wracać”." + ], + "Ticker (Antimatter condenser)": [ + "całe miasto zdaje się połknięte przez czarną dziurę wywołaną antymaterią. Bardziej wiarygodne źródła potwierdzają, że „miasto nigdy nie istniało!”", + "naukowcy konstatują, że czego najbardziej potrzeba przemysłowi ciastkowemu, to przede wszystkim „więcej magnesów”.", + "pierwszy kondensator antymaterii bezpiecznie uruchomiony. Świat może jeszcze spać spokojnie!" + ], + "Ticker (Prism)": [ + "Naukowcy ostrzegają przed nieustannym przemienianiem światła w materię. „Pewnego dnia obudzimy się, a wkoło będzie tylko materia i mrok!”", + "ciastka można już piec dosłownie z prędkością światła dzięki nowym ustrojstwom pryzmatycznym.", + "obywatele całego świata proszeni są o „zachowanie spokoju” w obliczu coraz częstszych rozbłysków atmosferycznych." + ], + "Ticker (Chancemaker)": [ + "anomalie statystyczne nie przestają zadziwiać. Możliwe staje się dokładne przewidzenie pogody już na 3 dni do przodu!", + "lokalne kasyno bankrutuje, gdy wszystkim graczom przydarza się trwająca cały tydzień dobra passa! „Może jakoś z tego wyjdziemy” — mówi właściciel kasyna na chwilę przed tym, jak trafia go piorun 47 razy.", + "całkowicie oddając głosy na chybił trafił, ościenny kraj dokonuje wyboru prezydenta z sensownym planem!" + ], + "Ticker (Fractal engine)": [ + "tuziemiec mający „po dziurki w nosie Cookie Clickera” stwierdza, że wszechobecne autoreferencje są „irytujące, acz akuratne”.", + "usłyszawszy zarzuty domniemanego kanibalizmu, miejscowy guru konstatuję, że „w każdym z nas jest odrobina nas samych”.", + "sondaże potwierdzają, że pomysł tworzenia ciastek z ciastek jest „akceptowalny”. „Przynajmniej w końcu będziemy wiedzieli, co w nich jest” — odpowiada indagowany przechodzień." + ], + "Ticker (Javascript console)": [ + "kodowanie jest zarąbiste! Coraz więcej nastolatków zwraca się w kierunku nauk takich jak programowanie, dzięki czemu nieodległa apokalipsa robotów oraz zagłada ludzkości może się wydarzyć jeszcze szybciej.", + "programiści niepewni jak nazwać swoje nowe biblioteki javascript, gdyż wszystkie kombinacje dowolnych 3 słów ze słownika zostały już użyte. ", + "dziwna moda: coraz więcej rodziców nazywa swoje noworodki na wzór Michał.js lub Kasia.js. Mamy potwierdzone też przynajmniej jedno Dziecko.js." + ], + "Ticker (Idleverse)": [ + "czy drugi taki jak ty żyje pełnią życia na innym świecie? Z pewnością, ty leniwa buło!", + "„Znajduję ukojenie w myśli, że przynajmniej część z moich alternatywnych JA dobrze sobie gdzieś tam radzi” —przyznaje ostatni taki egzemplarz obywatela w całym multiwersum.", + "autorzy komiksów przywołują multiwersum w obronie swoich wątpliwych fabularnie zwrotów akcji. „Widzicie? A wyście się upierali, że to wyświechtane i naciągane!”" + ], + "Ticker (Cortex baker)": [ + "chuderlawy rdzeniowy piekarz z IQ wynoszącym zaledwie kilka kwintylionów: „taki trochę przygłup” , twierdzą specjaliści.", + "astronomowie przestrzegają przed dryfującymi rdzeniowymi piekarzami. Istnieję ryzyko kolizji czołowych, skutkujących kosztownymi wstrząsami mózgu.", + "ogarniacze rdzeniowych piekarzy pragną uprzejmie przypomnieć pracownikom, że rdzeniowi piekarze stanową własność materialną i z tego powodu nie należy im nadawać przydomków." + ], + "Ticker (Halloween)": [ + "pogańskie rytuały coraz popularniejsze. Dzieci na całym świecie przebierają się w dziwne kostiumy i szantażują sąsiadów o cukierki.", + "„zagubienie i dezorientacja” — tak można opisać stan dzieci, gdy absolutnie wszystkie cukierki na Halloween zastąpiły ciastka.", + "dziwne, poskręcane stworzenia gromadzą się nieopodal fabryk ciastek i skubią urobek." + ], + "Ticker (Christmas)": [ + "brodaty szaleniec pędził latającymi saniami! Śledztwo w toku.", + "otyły, radosny szaleniec nadal na wolności, ostrzegają władze. „Nie spuszczajcie oczu z dzieci i zabijcie swój komin dechami. To nie są żarty”.", + "tajemnicza, świąteczna postać z mocami kwantowymi nadal sieje spustoszenie za pomocą swojej armii reniferów, twierdzą władze.", + "„Znaczy, że daje rzeczy za darmoszkę?!” — zapytuje zaniepokojona matka. „Osobiście to ja bym tej jego brodzie nie ufała”.", + "dzieci w głębokim szoku, dowiedziawszy się, że Święty Mikołaj jednak nie jest ich ojcem w przebraniu!
„Muszę przemyśleć na nowo całe życie” — wyznaje Laura, lat 6." + ], + "Ticker (Valentines)": [ + "w powietrzu wisi miłość, zgodnie twierdzą meteorolodzy. W miastach trwają akcje rozdawania maseczek, aby zapobiec rozprzestrzenianiu się infekcji drogą kropelkową.", + "małżeństwo z ciastkiem — poroniona moda czy może krok w przyszłość?", + "cukierki w kształcie serca wyprzedzają branżę słodyczy, stając się konkurencją dla ciastkowego imperium." + ], + "Ticker (Easter)": [ + "długouche stworzenia z puchatymi ogonami nawiedzają przedmieścia, rozsiewając strach i czekoladę!", + "składające jaja króliki „nie całkiem z tego wymiaru” — ostrzegają biolodzy oraz proszą, aby ich nie karmić, nie głaskać ani nie gotować.", + "tajemnicze króliki składają jaja, choć są ssakami. Czy to brakujące ogniwo przed dziobakiem?" + ], + "Ticker (misc)": [ + "lekarze zalecają przyjmowanie świeżych ciastek dwa razy na dzień.", + "lekarze przestrzegają przed nową dietą antyciastkową.", + "lekarze ostrzegają matki, aby nie karmiły swoich dzieci „wypiekanymi w domu ciastkami”.", + "„Nie jestem uzależniona od ciastek. To pomówienia fanów, którym się po prostu nudzi” — wyznaje gwiazda.", + "„w porządku, powiem to: nigdy w życiu nie miałem w ustach ciastka” — oświadcza gwiazda.", + "„ciastka pozwoliły mi pozostać szczupłym i cieszyć się dobrym zdrowiem” — twierdzi gwiazda.", + "mężczyzna rabuje bank. Za pieniądze kupuje ciastka.", + "nowe badania sugerują, że ciastka ani nie przyspieszają procesu starzenia, ani nie spowalniają go. W zamian jednak „ciągną cię w całkowicie innym kierunku”.", + "odkryto mężczyznę z alergią na ciastka. „Co za dziwak” — mówi rodzina.", + "miasto cierpi z powodu niedoborów ciastek. Ludzie zmuszeni są jeść babeczki. „To nie to samo” — wyznaje ze smutkiem burmistrz.", + "„ale przyznasz, że cała ta kwestia ciastkowa jest trochę niepokojąca” — twierdzi niespełna rozumu idiota.", + "przejęto transport nielegalnych ciastek. „Smakują okropnie” — twierdzi policja.", + "„Ook” — mówi przesłuchiwany orangutan.", + "czy przemysł ciastkowy kontroluje nasze media? To niewykluczone, twierdzi zjarany wyznawca teorii spiskowych.", + "„doszliśmy do miejsca, gdzie gospodarka jest nierozerwalnie złączona z ciastkami” — twierdzi ekonomista. „Jeśli przerzucimy się na jedzenie czegoś innego, wszyscy pomrzemy”.", + "ciastka nielegalne w jakimś zacofanym kraju, którego nikt nie zna. Wzrost napięć politycznych. Wojna w powietrzu, miejmy nadzieję." + ], + "You feel like making cookies. But nobody wants to eat your cookies.": "Masz ochotę upiec trochę ciastek, ale nikt nie chce ich jeść.", + "Your first batch goes to the trash. The neighborhood raccoon barely touches it.": "Pierwsza partia idzie do śmietnika. Nawet szop pracz z pobliskiego kontenera patrzy na nie zdegustowany.", + "Your family accepts to try some of your cookies.": "Twoja rodzina zgadza się spróbować twoich ciastek.", + "Your cookies are popular in the neighborhood.": "Twoje ciastka zyskują na popularności w okolicy.", + "People are starting to talk about your cookies.": "Ludzie zaczynają rozmawiać o twoich ciastkach.", + "Your cookies are talked about for miles around.": "Ludzie w promieniu wielu kilometrów mówią o twoich ciastkach.", + "Your cookies are renowned in the whole town!": "Już całe miasto gada tylko o twoich ciastkach.", + "Your cookies bring all the boys to the yard.": "Wszyscy chłopcy grzecznie przychodzą do ciebie po ciastka.", + "Your cookies now have their own website!": "Twoje ciastka mają już swoją własną stronę internetową!", + "Your cookies are worth a lot of money.": "Twoje ciastka warte są już niemałą fortunę.", + "Your cookies sell very well in distant countries.": "Twoje ciastka sprzedają się bardzo dobrze nawet w odległych krajach.", + "People come from very far away to get a taste of your cookies.": "Ludzie przybywają z bardzo daleka, aby choćby spróbować twoich ciastek.", + "Kings and queens from all over the world are enjoying your cookies.": "Królowie i królowe z całego świata zajadają się twoimi ciastkami.", + "There are now museums dedicated to your cookies.": "Powstało muzeum poświęcone twoim ciastkom.", + "A national day has been created in honor of your cookies.": "Ogłoszono święto narodowe, aby uczcić twoje ciastka.", + "Your cookies have been named a part of the world wonders.": "Twoje ciastka wpisano na listę cudów świata.", + "History books now include a whole chapter about your cookies.": "Podręczniki do historii zawierają cały rozdział poświęcony twoim ciastkom.", + "Your cookies have been placed under government surveillance.": "Twoje ciastka są pod stałym nadzorem rządu.", + "The whole planet is enjoying your cookies!": "Cała planeta rozkoszuje się twoimi ciastkami.", + "Strange creatures from neighboring planets wish to try your cookies.": "Dziwne stworzenia z pobliskich planet pragną spróbować twoich ciastek.", + "Elder gods from the whole cosmos have awoken to taste your cookies.": "Starożytni bogowie z całego kosmosu przebudzili się, aby skosztować twoich ciastek.", + "Beings from other dimensions lapse into existence just to get a taste of your cookies.": "Stworzenia z innych wymiarów rodzą się tylko po to, aby posmakować twoich ciastek.", + "Your cookies have achieved sentience.": "Twoje ciastka uzyskują świadomość.", + "The universe has now turned into cookie dough, to the molecular level.": "Wszechświat właśnie przeobraził się w ciasto na poziomie cząsteczkowym.", + "Your cookies are rewriting the fundamental laws of the universe.": "Twoje ciastka przepisują fundamentalne prawa rządzące wszechświatem.", + "A local news station runs a 10-minute segment about your cookies. Success!
(you win a cookie)": "Lokalna radiostacja poświęca 10-minutową audycję na omówienie twoich ciastek! Sukces!
(wygrywasz ciastko)", + "it's time to stop playing": "czas już wyłączyć grę", + "Today is your lucky day!": "Dzisiaj jest twój szczęśliwy dzień!", + "Your lucky numbers are:": "Twoje szczęśliwe numery to:", + "Fortune!": "Wygrana!", + "A golden cookie has appeared.": "Pojawia się złote ciastko.", + "You gain one hour of your CpS (capped at double your bank).": "Otrzymujesz jedną godzinę twojej wartości CnS (do podwójnego poziomu twojego obecnego salda).", + "You've unlocked a new upgrade.": "Odblokowujesz nowe ulepszenie.", + "Wish granted. Golden cookie spawned.": "Życzenie się spełniło i oto przed tobą pojawia się złote ciastko.", + "help me!": "pomocy!", + "Ascend": "Wznoszenie", + "You've been on this run for %1.": "Grasz już od %1.", + "Your prestige level is currently %1.
(CpS +%2%)": "Twój aktualny poziom prestiżu wynosi %1.
(CnS +%2%)", + "Ascending now would grant you no prestige.": "Nie zyskasz prestiżu, jeśli wzniesiesz się teraz.", + "Ascending now would grant you
1 prestige level (+1% CpS)
and 1 heavenly chip to spend.": "Wzniesienie się teraz sprawi, że zyskasz
1 poziom prestiżu (+1% CnS)
oraz 1 niebiański żeton do wydania.", + "Ascending now would grant you
%1 prestige levels (+%2% CpS)
and %3 heavenly chips to spend.": "Wzniesienie się teraz sprawi, że zyskasz
%1 poziomy prestiżu (+%2% CnS)
oraz %3 niebiańskich żetonów do wydania.", + "You need %1 more cookies for the next level.": "Potrzebujesz %1 więcej ciastek, aby zdobyć kolejny poziom.", + "Do you REALLY want to ascend?
You will lose your progress and start over from scratch.
All your cookies will be converted into prestige and heavenly chips.": "NAPRAWDĘ chcesz się teraz wnieść?
Stracisz wszystkie postępy i będziesz musiał zaczynać od zera.
Wszystkie twoje ciastka zostaną zamienione na niebiańskie żetony.", + "You will keep your achievements.": "Zachowasz swoje osiągnięcia.", + "You will keep your achievements, building levels and sugar lumps.": "Zachowasz swoje osiągnięcia, poziomy budynków oraz grudki cukru.", + "Ascending": "Wznoszenie", + "So long, cookies.": "Żegnajcie, ciastka.", + "You forfeit your %1.": "Tracisz swoje %1.", + "Prestige level:": "Poziom prestiżu:", + "Heavenly chips:": "Niebiańskie żetony:", + "%1 prestige level": [ + "%1 poziom prestiżu", + "%1 poziomy prestiżu" + ], + "You gain %1!": "Otrzymujesz %1!", + "Reincarnate": "Reinkarnacja", + "You are ascending.
Drag the screen around
or use arrow keys!
When you're ready,
click Reincarnate.": "Wznosisz się.
Przeciągaj ekran
albo skorzystaj ze strzałek
Gdy będziesz gotowy,
kliknij Reinkarnacja.", + "Each prestige level grants you a permanent +%1% CpS.
The more levels you have, the more cookies they require.": "Każdy poziom prestiżu daje ci stałe +%1% wartości CnS.
Im wyższy masz poziom, tym więcej potrzebujesz ciastek.", + "Heavenly chips are used to buy heavenly upgrades.
You gain 1 chip every time you gain a prestige level.": "Niebiańskich żetonów używa się do zakupu niebiańskich ulepszeń.
Otrzymujesz 1 żeton za każdy poziom prestiżu.", + "Click this once you've bought
everything you need!": "Kliknij tu, gdy kupisz już
wszystko, czego ci trzeba!", + "Are you ready to return to the mortal world?": "Jesteś gotowy na powrót do świata śmiertelników?", + "Hello, cookies!": "Witajcie, ciastka!", + "Challenge mode for the next run:": "Tryb wyzwań dla następnej rozgrywki:", + "Challenge modes apply special modifiers to your next ascension.
Click to change.": "Tryb wyzwań pozwala na dobranie specjalnych modyfikatorów do kolejnego wzniesienia.
Kliknij, aby zmienić.", + "Select a challenge mode": "Wybierz tryb wyzwań", + "None [ascension type]": "Brak", + "No special modifiers.": "Bez żadnych modyfikatorów.", + "Born again [ascension type]": "Narodzony ponownie", + "This run will behave as if you'd just started the game from scratch. Prestige levels and heavenly upgrades will have no effect, as will sugar lumps and building levels. Perma-upgrades and minigames will be unavailable.
Some achievements are only available in this mode.": "Ta rozgrywka będzie wyglądała tak, jakbyś właśnie rozpoczął grę od zera. Twoje poziomy prestiżu oraz niebiańskie ulepszenia nie będą miały żadnego znaczenia, dokładnie tak samo jak grudki cukru czy poziomy budynków. Stałe ulepszenia oraz minigierki będą niedostępne.
Niektóre osiągnięcia są dostępne jedynie w tym trybie.", + "Your bingo center/research facility is conducting experiments.": "Twoje centrum bingo / placówka badawcza przeprowadza eksperymenty.", + "Research has begun": "Badania rozpoczęte", + "Research complete": "Badania zakończone", + "You have discovered: %1.": "Odkrywasz: %1.", + "Valentine's Day!": "Walentynki!", + "It's Valentine's season!
Love's in the air and cookies are just that much sweeter!": "To czas na walentynki!
Miłość wisi w powietrzu a ciastka są jeszcze słodsze!", + "Business Day!": "Zwykły dzień roboczy!", + "It's Business season!
Don't panic! Things are gonna be looking a little more corporate for a few days.": "To czas na pracę!
Spokojnie! Przez parę następnych dni rzeczy będą nieco bardziej skomplikowane.", + "Halloween!": "/", + "It's Halloween season!
Everything is just a little bit spookier!": "To czas na Halloween!
Wszystko stało się nieco straszniejsze!", + "Christmas time!": "Święta Bożego Narodzenia", + "It's Christmas season!
Bring good cheer to all and you just may get cookies in your stockings!": "To czas Świąt Bożego Narodzenia!
Spraw, żeby wszyscy mieli dobry humor, a może dostaniesz parę ciastek do skarpety!", + "Easter!": "Wielkanoc!", + "It's Easter season!
Keep an eye out and you just might click a rabbit or two!": "To czas Wielkanocy!
Miej się na baczności, a może zdołasz kliknąć jakiego królika albo dwa.", + "[Tag]Heavenly": "Niebiańskie", + "[Tag]Tech": "Technologia", + "[Tag]Cookie": "Krówka", + "[Tag]Debug": "Debuguj", + "[Tag]Switch": "Zmień", + "[Tag]Upgrade": "Ulepsz", + "Tier:": "Poziom:", + "[Tier]Plain": "Podstawa", + "[Tier]Berrylium": "Jagodolit", + "[Tier]Blueberrylium": "Borówkolit", + "[Tier]Chalcedhoney": "Kwarcomiód", + "[Tier]Buttergold": "Mleczozłot", + "[Tier]Sugarmuck": "Cukrozyt", + "[Tier]Jetmint": "Miętonit", + "[Tier]Cherrysilver": "Wiśniosrebro", + "[Tier]Hazelrald": "Leszczynorad", + "[Tier]Mooncandy": "Księżycukier", + "[Tier]Astrofudge": "Astrokrówka", + "[Tier]Alabascream": "Alabakremówka", + "[Tier]Iridyum": "Smokozonit", + "[Tier]Synergy I": "Synergia I", + "[Tier]Synergy II": "Synergia II", + "[Tier]Fortune": "Szczęście", + "[Tier]Self-referential": "Autoreferencje", + "Vaulted": "W skarbcu", + "Researched": "Wynaleziony", + "Purchased": "Zakupiony", + "Unlocked forever": "Odblokowany na zawsze", + "Click to learn!": "Kliknij, aby nauczyć się!", + "Click to unlearn!": "Kliknij, aby oduczyć się!", + "Upgrade": "Ulepsz", + "Upgrades": "Ulepszenia", + "Achievement": "Osiągnięcie", + "Achievements": "Osiągnięcia", + "Shadow Achievement": "Osiągnięcia mroku", + "Unlocked": "Odblokowane", + "Locked": "Zablokowane", + "Source:": "Źródło:", + "Click to win!": "Kliknij, aby wygrać!", + "Click to lose!": "Kliknij, aby przegrać!", + "Legacy": "Dziedzictwo", + "Buildings": "Budynki", + "Switches": "Przełączniki", + "Vault": "Skarbiec", + "Research": "Badania", + "Store": "Sklep", + "sacrifice %1": "poświęć %1", + "Click to purchase.": "Kliknij, aby kupić.", + "Click to open selector.": "Kliknij, aby otworzyć wybierak.", + "Click to toggle.": "Kliknij, aby przełączyć.", + "Click to research.": "Kliknij, aby przebadać.", + "%1 to vault.": "%1 do skarbca.", + "%1 to unvault.": "%1 ze skarbca.", + "Upgrade is vaulted and will not be auto-purchased.": "Ulepszenie znajduje się w banku i nie zostanie zakupione automatyczne.", + "Upgrade for %1": "Ulepszenie: %1", + "Buy": "Kup", + "Sell": "Sprzedaj", + "all": "wszystko", + "max": "maks.", + "Buy all upgrades": "Kup wszystkie ulepszenia", + "Will instantly purchase every upgrade you can afford, starting from the cheapest one.
Upgrades in the vault will not be auto-purchased.
You may place an upgrade into the vault by Shift-clicking on it.": "Będziesz natychmiast kupował wszystkie ulepszenia, na które cię stać, począwszy od najtańszego.
Ulepszenia ze skarbca nie będą kupowane automatycznie.
Możesz umieścić każde ulepszenie w skarbcu, jeśli klikniesz je z wciśniętym Shiftem.", + "each %1 produces %2 per second": "%1 to %2 na sekundę", + "%1 producing %2 per second": "%1 produkuje %2 na sekundę", + "%1% of total CpS": "%1% z całej wartości CnS", + "%1 produced so far": "%1 dotąd wyprodukowanych", + "...also boosting some other buildings:": "… również usprawnia inne budynki:", + "all combined, these boosts account for %1 per second (%2% of total CpS)": "sumarycznie, te wzmocnienia dają ci %1 na sekundę (%2% z całej wartości CnS.", + "owned: %1": "posiadasz: %1", + "free: %1!": "wolne: %1!", + "Level %1 %2": "Poziom %1 %2", + "Granting +%1% %2 CpS.": "Otrzymujesz +%1% %2 CnS.", + "Click to level up for %1.": "Kliknij, aby podnieść poziom za %1.", + "Levelling up this building unlocks a minigame.": "Podniesienie poziomu tego budynku odblokowuje minigierkę.", + "level up your %1": "Podnieś poziom swojego %1", + "Mute": "Wycisz", + "Minimize this building": "Minimalizuj ten budynek", + "Muted:": "Wyciszony:", + "Click to unmute": "Kliknij, aby anulować wyciszenie", + "Show": "Pokaż", + "Hide": "Ukryj", + "Names in white were submitted by our supporters on Patreon.": "Imiona zapisane białą czcionką zostały przesłane przez naszych darczyńców na Patreonie.", + "You can also press %1 to bulk-buy or sell %2 of a building at a time, or %3 for %4.": "Możesz także wcisnąć %1, aby hurtowo kupować lub sprzedawać %2 budynki na raz, albo %3 za %4.", + "Investment": "Inwestycja", + "You're not sure what this does, you just know it means profit.": "Jeśli nie wiesz, po co to jest, to wiedz, że przynosi to zysk.", + "Cursor": "Kursor", + "cursor": "kursor", + "cursors": "kursory", + "%1 cursor": [ + "%1 kursor", + "%1 kursory" + ], + "[Cursor quote]Autoclicks once every 10 seconds.": "Klika automatycznie raz na 10 sekund.", + "[Cursor business name]Rolling pin": "Wałek", + "[Cursor business quote]Essential in flattening dough. The first step in cookie-making.": "Niezbędny przy spłaszczeniu ciasta. Pierwszy krok w produkcji ciastek.", + "Grandma": "Babcia", + "grandma": "babcia", + "grandmas": "babcie", + "%1 grandma": [ + "%1 babcia", + "%1 babcie" + ], + "[Grandma quote]A nice grandma to bake more cookies.": "Miła babcia, która lubi piec ciastka.", + "[Grandma business name]Oven": "Piekarnik", + "[Grandma business quote]A crucial element of baking cookies.": "Niezbędny element w produkcji ciastek.", + "Farm": "Hodowla", + "farm": "hodowla", + "farms": "hodowle", + "%1 farm": [ + "%1 hodowla", + "%1 hodowle" + ], + "[Farm quote]Grows cookie plants from cookie seeds.": "To tutaj z ciastkowych ziaren wyrastają dorodne, ciastkowe rośliny.", + "[Farm business name]Kitchen": "Kuchnia", + "[Farm business quote]The more kitchens, the more cookies your employees can produce.": "Im więcej masz kuchni, tym więcej ciastek mogą upiec twoi pracownicy.", + "Mine": "Kopalnia", + "mine": "kopalnia", + "mines": "kopalnie", + "%1 mine": [ + "%1 kopalnia", + "%1 kopalnie" + ], + "[Mine quote]Mines out cookie dough and chocolate chips.": "Tutaj wydobywa się surowe ciasto oraz płatki czekoladowe.", + "[Mine business name]Secret recipe": "Sekretny składnik", + "[Mine business quote]These give you the edge you need to outsell those pesky competitors.": "To dzięki nim uzyskujesz przewagę nad tą niecną konkurencją.", + "Factory": "Fabryka", + "factory": "fabryka", + "factories": "fabryki", + "%1 factory": [ + "%1 fabryka", + "%1 fabryki" + ], + "[Factory quote]Produces large quantities of cookies.": "Produkuje ciasta w wielkich ilościach.", + "[Factory business name]Factory": "Fabryka", + "[Factory business quote]Mass production is the future of baking. Seize the day, and synergize!": "Masowa produkcja jest przyszłością w branży ciastkowej. Chwytaj dzień i synergizuj się!", + "Bank": "/", + "bank": "/", + "banks": "banki", + "%1 bank": [ + "%1 bank", + "%1 banki" + ], + "[Bank quote]Generates cookies from interest.": "Tworzy ciastka dzięki oprocentowaniu.", + "[Bank business name]Investor": "Udziałowca", + "[Bank business quote]Business folks with a nose for profit, ready to finance your venture as long as there's money to be made.": "Człowiek ze smykałką do interesów, który z chęcią wesprze twoją firmę, jeśli tylko zauważy w niej potencjał do wzbogacenia się.", + "Temple": "Świątynia", + "temple": "świątynie", + "temples": "świątynie", + "%1 temple": [ + "%1 świątynia", + "%1 świątynie" + ], + "[Temple quote]Full of precious, ancient chocolate.": "Obfitują w drogocenną, starożytną czekoladę.", + "[Temple business name]Like": "Polub", + "[Temple business quote]Your social media page is going viral! Amassing likes is the key to a lasting online presence and juicy advertising deals.": "Twoja stronka na portalu społecznościowym jest rozchwytywana! Zbieranie polubień jest kluczem do trwałej obecności w sieci i soczystych ofert reklamowych.", + "Wizard tower": "Wieża czarodzieja", + "wizard tower": "wieża czarodzieja", + "wizard towers": "wieże czarodzieja", + "%1 wizard tower": [ + "%1 wieża czarodzieja", + "%1 wieże czarodzieja" + ], + "[Wizard tower quote]Summons cookies with magic spells.": "Przyzywa ciastka za pomocą magicznych zaklęć.", + "[Wizard tower business name]Meme": "Memy", + "[Wizard tower business quote]Cookie memes are all the rage! With just the right amount of social media astroturfing, your brand image will be all over the cyberspace.": "Ogarnia nas prawdziwe szaleństwo ciastkowych memów! Dzięki odpowiedniej ilości astroturfingu w mediach społecznościowych, wizerunek twojej marki w mig rozprzestrzeni się w całej cyberprzestrzeni.", + "Shipment": "Dostawa", + "shipment": "dostawa", + "shipments": "dostawy", + "%1 shipment": [ + "%1 dostawa", + "%1 dostawy" + ], + "[Shipment quote]Brings in fresh cookies from the cookie planet.": "Transportuje świeże ciastka z ciastkowej planety.", + "[Shipment business name]Supermarket": "Supermarket", + "[Shipment business quote]A gigantic cookie emporium - your very own retail chain.": "Gigantyczna składnica ciastek — twoja własna sieć sklepów.", + "Alchemy lab": "Laboratorium alchemiczne", + "alchemy lab": "laboratorium alchemiczne", + "alchemy labs": "laboratoria alchemiczne", + "%1 alchemy lab": [ + "%1 laboratorium alchemiczne", + "%1 laboratoria alchemiczne" + ], + "[Alchemy lab quote]Turns gold into cookies!": "Przemienia złoto w ciastka!", + "[Alchemy lab business name]Stock share": "Giełda ciastek wartościowych", + "[Alchemy lab business quote]You're officially on the stock market, and everyone wants a piece!": "Oficjalnie jesteś już na giełdzie i każdy chce tutaj zarobić!", + "Portal": "Brama", + "portal": "/", + "portals": "portale", + "%1 portal": [ + "%1 portal", + "%1 portale" + ], + "[Portal quote]Opens a door to the Cookieverse.": "Otwiera wrota do Ciastkoświata.", + "[Portal business name]TV show": "Program w TV", + "[Portal business quote]Your cookies have their own sitcom! Hilarious baking hijinks set to the cheesiest laughtrack.": "Twoje ciastka mają swój własny serial! Przezabawne perypetie cukiernicze podkręcone do niedorzecznie przaśnego poziomu.", + "Time machine": "Wehikuł czasu", + "time machine": "wehikuł czasu", + "time machines": "wehikuły czasu", + "%1 time machine": [ + "%1 wehikuł czasu", + "%1 wehikuły czasu" + ], + "[Time machine quote]Brings cookies from the past, before they were even eaten.": "Przywołuje ciastka z przeszłości, zanim zdążą zostać zjedzone.", + "[Time machine business name]Theme park": "Park zabaw", + "[Time machine business quote]Cookie theme parks, full of mascots and roller-coasters. Build one, build a hundred!": "Ciastkowy park zabaw, pełen maskotek i kolejek górskich. Postaw jeden, a zapragniesz ich setki!", + "Antimatter condenser": "Kondensator antymaterii", + "antimatter condenser": "kondensator antymaterii", + "antimatter condensers": "kondensatory antymaterii", + "%1 antimatter condenser": [ + "%1 kondensator antymaterii", + "%1 kondensatory antymaterii" + ], + "[Antimatter condenser quote]Condenses the antimatter in the universe into cookies.": "Kondensuje antymaterię wszechświata do postaci ciastek.", + "[Antimatter condenser business name]Cookiecoin": "Cookiecoin", + "[Antimatter condenser business quote]A virtual currency, already replacing regular money in some small countries.": "Wirtualna waluta, która już wypiera tradycyjne środki płatnicze w niektórych mniejszych krajach.", + "Prism": "Pryzma", + "prism": "pryzma", + "prisms": "pryzmy", + "%1 prism": [ + "%1 pryzma", + "%1 pryzmy" + ], + "[Prism quote]Converts light itself into cookies.": "Przemienia światło w ciastka.", + "[Prism business name]Corporate country": "Korporacyjny kraj", + "[Prism business quote]You've made it to the top, and you can now buy entire nations to further your corporate greed. Godspeed.": "Dotarłeś na sam szczyt. Oto miejsce, z którego możesz kupować całe narody, aby zaspokajać swój korporacyjny apetyt. Powodzenia.", + "Chancemaker": "Koło fortuny", + "chancemaker": "koło fortuny", + "chancemakers": "koła fortuny", + "%1 chancemaker": [ + "%1 koło fortuny", + "%1 koła fortuny" + ], + "[Chancemaker quote]Generates cookies out of thin air through sheer luck.": "Tworzy ciastka z powietrza z domieszką czystego szczęścia.", + "[Chancemaker business name]Privatized planet": "Sprywatyzowana planeta", + "[Chancemaker business quote]Actually, you know what's cool? A whole planet dedicated to producing, advertising, selling, and consuming your cookies.": "Wiesz, co w tym fajnego? Cała planeta dedykowana jedynie produkcji, reklamie, sprzedaży i konsumowaniu twoich ciastek.", + "Fractal engine": "Silnik fraktalny", + "fractal engine": "silnik fraktalny", + "fractal engines": "silniki fraktalne", + "%1 fractal engine": [ + "%1 silnik fraktalny", + "%1 silniki fraktalne" + ], + "[Fractal engine quote]Turns cookies into even more cookies.": "Zamienia ciastka w jeszcze więcej ciastek.", + "[Fractal engine business name]Senate seat": "Miejsce w senacie", + "[Fractal engine business quote]Only through political dominion can you truly alter this world to create a brighter, more cookie-friendly future.": "Tylko polityczna dominacja sprawi, że będziesz mógł naprawdę przemienić ten świat w radosną krainę, mlekiem i ciastkami płynącą.", + "Javascript console": "Konsola javascript", + "javascript console": "konsola javascript", + "javascript consoles": "konsole javascript", + "%1 javascript console": [ + "%1 konsola javascript", + "%1 konsole javascript" + ], + "[Javascript console quote]Creates cookies from the very code this game was written in.": "Tworzy ciastka za pomocą tego samego kodu, którego użyliśmy do napisania tej gry.", + "[Javascript console business name]Doctrine": "Doktryna", + "[Javascript console business quote]Taking many forms -religion, culture, philosophy- a doctrine may, when handled properly, cause a lasting impact on civilizations, reshaping minds and people and ensuring all future generations share a singular goal - the production, and acquisition, of more cookies.": "Przybrawszy jedną z wielu form — religii, kultury, filozofii — doktryna może, jeśli się za nią odpowiednio zabrać, wywrzeć trwały ślad na cywilizacjach, kształtując umysły ludzkie oraz sprawiając, by wszystkie przyszłe pokolenia dążyły do wspólnego celu: produkcji i pozyskiwania jak największej ilości ciastek.", + "Idleverse": "Próżnoświat", + "idleverse": "próżnoświat", + "idleverses": "próżnoświaty", + "%1 idleverse": [ + "%1 próżnoświat", + "%1 próżnoświaty" + ], + "[Idleverse quote]There's been countless other idle universes running alongside our own. You've finally found a way to hijack their production and convert whatever they've been making into cookies!": "Istnieje nieskończenie wiele bezczynnych światów. Na szczęście w końcu poznałeś sposób, jak przejąć ich produkcję i zmusić ich do produkcji ciastek!", + "[Idleverse business name]Lateral expansions": "Ekspansje lateralne", + "[Idleverse business quote]Sometimes the best way to keep going up is sideways. Diversify your ventures through non-cookie investments.": "Czasem najlepszym sposobem, aby iść w górę, to przeć na boki. Dywersyfikuj swój przychód za pomocą różnych nieciastkowych inwestycji.", + "Cortex baker": "Rdzeniowy piekarz", + "cortex baker": "rdzeniowy piekarz", + "cortex bakers": "rdzeniowi piekarze", + "%1 cortex baker": [ + "%1 rdzeniowy piekarz", + "%1 rdzeniowi piekarze" + ], + "[Cortex baker quote]These artificial brains the size of planets are capable of simply dreaming up cookies into existence. Time and space are inconsequential. Reality is arbitrary.": "Te sztuczne mózgi rozmiarów planety zdolne są do materializowania ciastek zaledwie siłą umysłu. Czas i odległość nie grają roli a rzeczywistość jest kwestią umowną.", + "[Cortex baker business name]Think tank": "Loża ekspertów", + "[Cortex baker business quote]There's only so many ways you can bring in more profit. Or is there? Hire the most brilliant experts in the known universe and let them scrape their brains for you!": "Sposobów na jeszcze szybsze zarabianie jest ograniczona ilość. Ale czy na pewno? Zatrudnij najznakomitszych ekspertów z całego poznanego świata i każ im dumać tylko dla ciebie!", + "CpS": "CnS", + "cookies/click": "ciastka/kliknięcie", + "%1 CpS": "%1 CnS", + "golden cookie gains": "przypływ złotych ciastek", + "golden cookie frequency": "częstotliwość złotych ciastek", + "golden cookie duration": "czas trwania złotych ciastek", + "golden cookie effect duration": "czas trwania efektu złotych ciastek", + "wrath cookie gains": "przypływ gniewnych ciastek", + "wrath cookie frequency": "częstotliwość gniewnych ciastek", + "wrath cookie duration": "czas trwania gniewnych ciastek", + "wrath cookie effect duration": "czas trwania efektu gniewnych ciastek", + "reindeer gains": "przypływ reniferów", + "reindeer frequency": "częstotliwość reniferów", + "reindeer duration": "czas trwania reniferów", + "random drops": "losowe skarby", + "milk effects": "efekty mleka", + "wrinkler spawn rate": "częstotliwość pojawiania się zmarszczkaczy", + "wrinkler appetite": "apetyt zmarszczkaczy", + "upgrade costs": "koszt ulepszeń", + "building costs": "koszt budowania", + "Clicking is %1% more powerful.": "Kliknięcie jest %1% potężniejsze.", + "All cookie production multiplied by %1.": "Cała produkcja ciastek pomnożona przez %1.", + "+%1 CpS": "+%1 CnS", + "+%1% base CpS.": "+%1% bazowego CnS.", + "%1 are twice as efficient.": "%1 są dwukrotnie skuteczniejsze.", + "%1 are %2% more powerful.": "%1 są %2% potężniejsze.", + "Unshackled! +%1% extra production.": "Uwolniono! +%1% do dodatkowej produkcji.", + "Tiered upgrades for %1 provide an extra +%2% production.
Only works with unshackled upgrade tiers.": "Rzędowe ulepszenia dla %1 zapewniają dodatkowe +%2% do produkcji.
Działa tylko na odblokowanych rzędach ulepszeń.", + "Unshackles all %1-tier upgrades, making them more powerful.
Only applies to unshackled buildings.": "Odblokowuje wszystkie ulepszenia %1-rzędu, wzmacniając je jeszcze bardziej.
Działa tylko na odblokowanych budynkach.", + "The mouse and cursors are twice as efficient.": "Mysz i kursor są dwukrotnie wydajniejsze.", + "The mouse and cursors gain +%1 cookies for each non-cursor building owned.": "Mysz i kursor dają +%1 ciastek za każdy posiadany budynek nie będący kursorem.", + "Grandmas gain +%1% CpS for each non-grandma building.": "Babcie dają +%1% CnS za każdy budynek nie będący babcią.", + "You gain more CpS the more milk you have.": "Otrzymujesz więcej CnS, jeśli masz więcej mleka.", + "Milk is %1% more powerful.": "Mleko jest %1% potężniejsze.", + "Cookie production multiplier +%1%.": "Mnożnik produkcji ciastek +%1%.", + "Cookie production multiplier +%1% permanently.": "Mnożnik produkcji ciastek +%1% na zawsze.", + "Cookie production multiplier +%1% per Santa's levels.": "Mnożnik produkcji ciastek +%1% na poziom św. Mikołaja.", + "Cookie production multiplier +%1% for every year Cookie Clicker has existed (currently: +%2%).": "Mnożnik produkcji ciastek +%1% za każdy rok, w którym działa Cookie Clicker (aktualnie: +%2%).", + "Cookie production multiplier +%1% for every building type level %2 or higher.": "Mnożnik produkcji ciastek +%1% za każdy rodzaj budynku na poziomie %2 lub wyższym.", + "Clicking gains +%1% of your CpS.": "Klikanie daje ci +%1% twojej wartości CnS.", + "%1 gain +%2% CpS per %3.": "%1 daje +%2% CnS na %3.", + "Multiplies the gain from %1 by %2.": "Pomnaża przychód od %1 przez %2.", + "Grandma-operated science lab and leisure club.
Grandmas are 4 times as efficient.
Regularly unlocks new upgrades.": "Prowadzone przez babcie laboratorium naukowe wraz z klubem seniora.
Babcie są 4 razy skuteczniejsze.
Regularnie odblokowuje nowe ulepszenia.", + "Each %1 gains +%2 base CpS per %3.": "Każde %1 daje +%2 bazowej wartości CnS na %3.", + "Note: the grandmothers are growing restless. Do not encourage them.": "Uwaga: Babcie się niecierpliwią. Nie zachęcaj ich.", + "Note: proceeding any further in scientific research may have unexpected results. You have been warned.": "Uwaga: Kontynuowanie badań naukowych może mieć nieprzewidziane skutki. Ostrzegamy.", + "Note: this is a bad idea.": "Uwaga: To zły pomysł.", + "Warning: purchasing this will have unexpected, and potentially undesirable results!
It's all downhill from here. You have been warned!

Purchase anyway?": "Ostrzeżenie: zakupienie tego będzie miało nieprzewidziane i potencjalnie niepożądane skutki!
Jesteś już na równi pochyłej. Ostrzegaliśmy cię!

Na pewno chcesz to kupić?", + "Contains the wrath of the elders, at least for a while.": "Powstrzymuje gniew starszyzny, a przynajmniej na chwilę.", + "Puts a permanent end to the elders' wrath, at the cost of %1% of your CpS.": "Na stałe powstrzymuje gniew starszyzny, ale za cenę %1% twojej wartości CnS.", + "You will get %1% of your CpS back, but the grandmatriarchs will return.": "Otrzymasz z powrotem %1% swojej wartości CnS, ale arcymatrony powrócą.", + "Time remaining until pledge runs out:": "Czas pozostały do zakończenia obietnicy:", + "You haven't pledged to the elders yet.": "Nie złożyłeś jeszcze żadnej obietnicy starszyźnie.", + "You've pledged to the elders %1 times.": [ + "Złożyłeś starszyźnie obietnicę raz.", + "Złożyłeś starszyźnie obietnicę %1 razy." + ], + "Research takes only 5 seconds.": "Badania potrwają tylko 5 sekund.", + "Golden cookies appear twice as often and stay twice as long.": "Złote ciastka pojawiają się dwa razy częściej oraz pozostają dwa razy dłużej.", + "Golden cookies appear %1% more often.": "Złote ciastka pojawiają się %1% częściej.", + "Golden cookies appear %1% more often during %2.": "Złote ciastka pojawiają się %1% częściej, jeśli jest %2.", + "Golden cookies appear really often.": "Złote ciastka pojawiają się naprawdę często.", + "Golden cookie effects last twice as long.": "Skutki działania złotych ciastek utrzymują się dwa razy dłużej.", + "Golden cookie effects last %1% longer.": "Skutki działania złotych ciastek utrzymują się %1% dłużej.", + "Golden cookies stay %1% longer.": "Złote ciastka pozostają %1% dłużej.", + "Golden cookies give %1% more cookies.": "Złote ciastka dają %1% więcej ciastek.", + "Wrath cookies give %1% more cookies.": "Ciastka gniewu dają %1% więcej ciastek.", + "+%1% CpS per golden cookie on-screen, multiplicative.": "+%1% do CnS za każde złote ciastko na ekranie. Wartości mnożą się.", + "With no buffs and no golden cookies on screen, selling your most powerful building has %1% chance to summon one.": "Jeśli nie masz wzmocnień i złotych ciastek na ekranie, sprzedanie najpotężniejszego budynku ma %1% szansy na wezwanie jednego z nich.", + "Confers various powers to your minigames while active.
See the bottom of each minigame for more details.": "Po włączeniu przekazuje ci różne moce podczas zabawy w minigierkach.
Więcej informacji znajdziesz na dole każdej minigierki.", + "Elder pledges last twice as long.": "Obietnice starszyzny trwają dwukrotnie dłużej.", + "Can toggle upgrades on and off at will in the stats menu.": "Możesz dowoli włączać i wyłączać ulepszenia w menu statystyk.", + "You keep producing cookies even while the game is closed.": "Ciastka będą tworzone nadal po zamknięciu gry.", + "Unlocks %1% of the potential of your prestige level.": "Odblokowuje %1% potencjału zgodnego z twoim poziomem prestiżu.", + "Subsequent research will be %1 times as fast.": "Następne badania odbywać się będą %1 razy szybciej.", + "Wrinklers appear %1 times as fast.": "Zmarszczkacze pojawiają się %1 razy szybciej.", + "Wrinklers spawn much more frequently.": "Zmarszczkacze pojawiają się zdecydowanie częściej.", + "Wrinklers explode into %1% more cookies.": "Po eksplozji zmarszczkacze dają ci %1% więcej ciastek.", + "Unlocks... something.": "Odblokowuje… coś.", + "In the festive hat, you find...": "W świątecznej czapce znajdujesz…", + "a festive test tube
and %1.": "świąteczną probówkę
oraz %1.", + "Cost scales with CpS.": "Koszt skaluje się zgodnie z wartością CnS.", + "Cost scales with Santa level.": "Koszt skaluje się zgodnie z poziomem św. Mikołaja.", + "Cost scales with how many eggs you own.": "Koszt skaluje się zgodnie z ilością posiadanych jajek.", + "Reindeer appear %1% more often.": "Renifery pojawiają się %1% częściej.", + "Reindeer appear twice as frequently.": "Renifery pojawiają się dwa razy częściej.", + "Reindeer are twice as slow.": "Renifery są dwukrotnie wolniejsze.", + "Reindeer give twice as much.": "Renifery dają dwa razy więcej.", + "Buildings sell back for %1% instead of %2%.": "Budynki można odsprzedawać za %1%, a nie za %2%.", + "All buildings are %1% cheaper.": "Wszystkie budynki są %1% tańsze.", + "All upgrades are %1% cheaper.": "Wszystkie ulepszenia są %1% tańsze.", + "All buildings and upgrades are %1% cheaper.": "Wszystkie budynki i ulepszenia są %1% tańsze.", + "%1 are %2% more efficient and %3% cheaper.": "%1 są %2% wydajniejsze oraz %3% tańsze.", + "Cookie upgrades are %1 times cheaper.": "Ulepszenia ciastek są %1 razy tańsze.", + "Random drops are %1% more common.": "Losowe zrzuty są %1% częstsze.", + "Reindeer spawn much more frequently.": "Renifery pojawiają się zdecydowanie częściej.", + "Allows you to trigger seasonal events at will, for a price.": "Za konkretną opłatą pozwala na dowolną aktywację sezonowych wydarzeń.", + "Triggers %1 season for the next 24 hours.
Triggering another season will cancel this one.
Cost scales with unbuffed CpS and increases with every season switch.": "Aktywuje %1 sezon na kolejne 24 godziny.
Aktywowanie kolejnego sezonu anuluje bieżący sezon.
Koszt skaluje się zgodnie z niewzmocnioną wartością CnS oraz zwiększa się z każdą zmianą sezonu.", + "Click again to cancel season": "Kliknij ponownie, aby anulować sezon.", + "Seasons now last forever.": "Sezony będą teraz trwały wiecznie.", + "You haven't switched seasons this ascension yet.": "Nie zmieniłeś jeszcze sezonu podczas tego wzniesienia.", + "You've switched seasons once this ascension.": "Podczas bieżącego wzniesienia zmieniłeś sezon raz. ", + "You've switched seasons %1 times this ascension.": "Podczas bieżącego wzniesienia zmieniłeś sezon %1 razy.", + "Cookie production multiplied by 1,000.": "Produkcja ciastek pomnożona o 1 000.", + "Other eggs appear %1% more frequently.": "Inne jajka pojawiają się %1% częściej.", + "Contains a lot of cookies.": "Zawiera sporo ciastek.", + "The egg bursts into %1 cookies!": "Jajko rozpadło się na %1 ciastek!", + "You found an egg!": "Odnajdujesz jajko!", + "Eggs drop %1% more often.": "Jajka wypadają %1% częściej.", + "Christmas cookies drop %1% more often.": "Świąteczne ciastka wypadają %1% częściej.", + "Spooky cookies drop %1% more often.": "Straszne ciastka wypadają %1% częściej.", + "Heart cookies are %1% more powerful.": "Miłosne ciastka pojawiają %1% częściej.", + "You continually gain more CpS the longer you've played in the current ascension.": "Ciągle otrzymujesz coraz więcej CnS, im dłużej grasz w danym wzniesieniu.", + "Contains an assortment of fancy biscuits.": "Zawiera całą masę fikuśnych herbatników.", + "Contains an assortment of macarons.": "Zawiera całą masę makaroników.", + "Contains an assortment of popular biscuits.": "Zawiera całą masę zwykłych herbatników.", + "Contains an assortment of rich butter cookies.": "Zawiera całą masę eleganckich, maślanych ciasteczek.", + "Contains an assortment of delicious pastries.": "Zawiera całą masę wybornych ciast.", + "Contains an assortment of...something.": "Zawiera całą masę… czegoś.", + "Placing an upgrade in this slot will make its effects permanent across all playthroughs.": "Umieszczenie ulepszenia w tym miejscu spowoduje, że jego efekty będą utrzymywać się we wszystkich rozgrywkach.", + "Current boost:": "Aktualne wzmocnienie:", + "Current:": "Aktualne:", + "Click to activate.": "Kliknij, aby aktywować", + "Pick an upgrade to make permanent": "Wybierz ulepszenie, aby ustawić je na stałe", + "Here are all the upgrades you've purchased last playthrough.
Pick one to permanently gain its effects!
You can reassign this slot anytime you ascend.": "Oto wszystkie ulepszenia, które zakupiłeś w trakcie ostatniej rozgrywki.
Wybierz jedno, aby cieszyć się na stałe jego efektami!
Możesz w to miejsce umieścić inne ulepszenie przy każdym wzniesieniu.", + "You now keep making cookies while the game is closed, at the rate of %1% of your regular CpS and up to 1 hour after the game is closed.
(Beyond 1 hour, this is reduced by a further %2% - your rate goes down to %3% of your CpS.)": "Nadal będziesz piekł ciastka, choć gra jest wyłączona. Prędkość wyniesie %1% twojej podstawowej wartości CnS, aż do 1 godziny po wyjściu z gry.
(Godzinę później, prędkość pieczenia ciastek spada do %2% — wynosi teraz %3% twojej wartości CnS.)", + "You gain another +%1% of your regular CpS while the game is closed.": "Zyskujesz dodatkowe +%1% swojej podstawowej wartości CnS, gdy gra jest wyłączona.", + "You gain another +%1% of your regular CpS while the game is closed, for a total of %2%.": "Zyskujesz dodatkowe +%1% swojej podstawowej wartości CnS, gdy gra jest wyłączona, aż do maksymalnie %2%.", + "You start with %1.": "Zaczynasz od %1.", + "Allows you to purchase a crumbly egg once you have earned 1 million cookies.": "Umożliwia zakup kruchego jajka, gdy tylko zarobisz 1 milion ciastek.", + "Unlocks the cookie dragon egg.": "Odblokowuje jajko ciastkowego smoka.", + "Synergy upgrades are %1% cheaper.": "Ulepszenia synergii są %1% tańsze.", + "You retain optimal cookie production while the game is closed for %1 more days.": "Zachowujesz optymalną prędkość produkcji ciastek po wyjściu z gry przez %1 więcej dni.", + "You retain optimal cookie production while the game is closed for twice as long, for a total of %1.": "Zachowujesz optymalną prędkość produkcji ciastek po wyjściu z gry dwa razy dłużej, aż do %1.", + "Unlocks the golden switch, which passively boosts your CpS by %1% but disables golden cookies.": "Odblokowuje złoty przełącznik, który pasywnie zwiększa twoją wartość CnS o %1%, ale dezaktywuje złote ciastka.", + "Turning this on will give you a passive +%1% CpS, but prevents golden cookies from spawning.
Cost is equal to 1 hour of production.": "Włączenie tego sprawi, że otrzymasz pasywnie +%1% do wartości CnS, ale całkowicie wyeliminuje złote ciastka.
Koszt równy jest 1 godzinie produkcji.", + "The switch is currently giving you a passive +%1% CpS; it also prevents golden cookies from spawning.
Turning it off will revert those effects.
Cost is equal to 1 hour of production.": "Przełącznik aktualnie daje ci pasywnie +%1% do wartości CnS, ale także zapobiega przed pojawianiem się złotych ciastek.
Wyłączenie tego sprawi, że efekty zostaną anulowane.
Koszt równy jest 1 godzinie produkcji.", + "Unlocks the milk selector, letting you pick which milk is displayed under your cookie.
Comes with a variety of basic flavors.": "Odblokowuje wybierak mleka, dzięki któremu możesz wybierać rodzaj mleka, które pojawi się pod twoim ciastkiem.
Jest dostępne w różnych podstawowych smakach.", + "Contains more exotic flavors for your milk selector.": "Zawiera bardziej egzotyczne smaki mleka.", + "Lets you pick what flavor of milk to display.": "Pozwala na wybranie smaku mleka.", + "Unlocks the golden cookie sound selector, which lets you pick whether golden cookies emit a sound when appearing or not.": "Odblokowuje wybierak dźwięku złotych ciastek, dzięki któremu możesz wybrać, czy złote ciastka mają wydawać dźwięk, gdy się pojawiają.", + "Lets you change the sound golden cookies make when they spawn.": "Pozwala ci zmienić dźwięk wydawany przez pojawiające się złote ciastka.", + "No sound": "Brak dźwięku", + "Chime": "Sygnał dźwiękowy", + "Fortune": "Szczęście", + "Cymbal": "Talerze", + "Squeak": "Pisk", + "Unlocks the jukebox, which allows you to play through every sound file in the game.": "Odblokowuje szafę grającą, która pozwala na odtwarzanie wszystkich plików dźwiękowych znajdujących się w grze.", + "Play through the game's sound files!": "Odtwarzaj wszystkie pliki dźwiękowe w grze!", + "Play": "Odtwarzaj", + "Stop": "Zatrzymaj", + "Pause": "Pauza", + "Shuffle": "Losowo", + "Auto": "/", + "Loop": "Pętla", + "Unlocks the background selector, letting you select the game's background.
Comes with a variety of basic flavors.": "Odblokowuje wybierak tła, dzięki któremu możesz wybrać tło gry.
Jest dostępne w różnych podstawowych smakach.", + "Lets you pick which wallpaper to display.": "Pozwala na personalizację tapety.", + "This is the first heavenly upgrade; it unlocks the Heavenly chips system.
Each time you ascend, the cookies you made in your past life are turned into heavenly chips and prestige.
Heavenly chips can be spent on a variety of permanent transcendental upgrades.
Your prestige level also gives you a permanent +1% CpS per level.": "Oto pierwsze niebiańskie ulepszenie. Odblokowuje ono system Niebiańskich żetonów.
Przy każdym kolejnym wzniesieniu wszystkie zgromadzone przez ciebie w poprzednim życiu ciastka są przemieniane na niebiańskie żetony oraz prestiż.
Niebiańskie żetony można wydawać na wiele różnych, stałych ulepszeń niebiańskich.
Twój poziom prestiżu także daje ci stałą wartość +1% CnS na poziom.", + "You can attract %1 more wrinklers.": "Przyciągasz %1 jeszcze więcej zmarszczkaczy.", + "While the golden switch is on, you gain an additional +%1% CpS per golden cookie upgrade owned.": "Gdy złoty przełącznik jest włączony, otrzymujesz dodatkowe +%1% CnS na każde posiadane ulepszenie złotego ciastka.", + "All upgrades are %1% cheaper per %2.": "Wszystkie ulepszenia są %1% tańsze przez %2.", + "Unlocks a new tier of upgrades that affect 2 buildings at the same time.
Synergies appear once you have %1 of both buildings.": "Odblokowuje nowy poziom ulepszeń, które wpływają na 2 budynki jednocześnie.
Pojawiają się synergie, gdy tylko posiądziesz %1 z obu budynków.", + "Golden cookies (and all other things that spawn, such as reindeer) have %1% chance of being doubled.": "Złote ciastka (oraz wszystkie inne pojawiające się rzeczy, jak renifery) mają %1% szansy na pojawienie się w ilości dwóch.", + "Cookie production reduced to 0.": "Produkcja ciastek zredukowana do 0.", + "Sugar lumps coalesce a whole lot faster.": "Grudki cukru krzepną zdecydowanie szybciej.", + "+%1% prestige level effect on CpS.": "+%1% do efektu działania poziomu prestiżu na wartość CnS.", + "+%1% prestige level effect on CpS.
+%2% golden cookie effect duration.
+%3% golden cookie lifespan.": "+%1% do efektu działania poziomu prestiżu na wartość CnS.
+%2% do czasu działania złotych ciastek.
+%3% do czasu życia złotych ciastek.", + "Each unspent sugar lump (up to %1) gives +%2% CpS.
Note: this means that spending sugar lumps will decrease your CpS until they grow back.
": "Każda niewykorzystana grudka cukru (aż do %1) daje ci +%2% wartości CnS.
Uwaga: oznacza to, że wydawanie grudek cukru będzie pomniejszało twoją wartość CnS, aż do momentu, gdy grudki odrosną.
", + "Once an ascension, you may use the \"Sugar frenzy\" switch to triple your CpS for 1 hour, at the cost of 1 sugar lump.": "Podczas wzniesienia możesz użyć przełącznika „Cukrowego szału”, aby potroić twoją wartość CnS przez 1 godzinę, kosztem 1 grudki cukru.", + "Each grandma (up to %1) makes sugar lumps ripen %2 sooner.": "Każda babcia (aż do %1) sprawia, że grudki cukru dojrzewają %2 szybciej.", + "Activating this will triple your CpS for 1 hour, at the cost of 1 sugar lump.": "Aktywowanie tego potroi twoją wartość CnS przez 1 godzinę, kosztem 1 grudki cukru.", + "May only be used once per ascension.": "Można użyć tylko raz na wzniesienie.", + "activate the sugar frenzy": "aktywuj cukrowy szał", + "Sugar frenzy!": "Cukrowy szał!", + "CpS x%1 for 1 hour!": "CnS x%1 przez 1 godzinę!", + "Garden plants grow every second.
Garden seeds are free to plant.
You can switch soils at any time.": "Rośliny w ogrodzie rosną co sekundę.
Można za darmo siać w ogrodzie.
Możesz w dowolnym momencie zmieniać glebę.", + "Dropped by %1.": "Spadek o %1.", + "Dropped by %1 plants.": "Spadek o %1 roślin.", + "Must own the %1 upgrade.": "Musisz posiadać ulepszenie: %1.", + "Sugar lumps are twice as likely to be unusual.": "Szansa, że grudki cukru będą nadzwyczajne, wzrasta dwukrotnie.", + "+%1% sugar lump growth.": "+%1% wzrostu grudek cukru.", + "Sugar lumps ripen %1 sooner.": "Grudki cukru dojrzewają %1 szybciej.", + "Sugar lumps mature %1 sooner.": "Grudki cukru dorastają %1 szybciej.", + "Bifurcated sugar lumps appear %1% more often and are %2% more likely to drop 2 lumps.": "Rozwidlone grudki cukru pojawiają się %1% częściej oraz dają %2% większą szansę na pozostawienie 2 grudek.", + "Mouse over a wrinkler to see how many cookies are in its stomach.": "Najedź myszą na zmarszczkacza, aby przekonać się, ile ciastek ma w brzuchu.", + "Unlocks the Buy all feature, which lets you instantly purchase every upgrade in your store (starting from the cheapest one).
Also unlocks the Vault, a store section where you can place upgrades you do not wish to auto-buy.": "Odblokowuje opcję Kup wszystko, która pozwala na natychmiastowy zakup każdego ulepszenia dostępnego w twoim sklepie (rozpoczynając od najtańszego).
Odblokowuje też Skarbiec — miejsce w sklepie, w którym możesz umieścić ulepszenia, aby nie zostały zakupione automatycznie.", + "Mouse over an upgrade to see its tier.
Note: only some upgrades have tiers. Tiers are purely cosmetic and have no effect on gameplay.": "Najedź myszą na ulepszenie, aby zobaczyć jego poziom.
Uwaga: Nie wszystkie ulepszenia mają poziomy. Poziomy są czymś czysto kosmetycznym i nie wpływają na rozgrywkę.", + "You now benefit from the boost provided by heralds.
Each herald gives you +1% CpS.
Look on the purple flag at the top to see how many heralds are active at any given time.": "Możesz stać się beneficjentem wzmocnień oferowanych przez heraldów.
Każdy herald daje +1% wartości CnS.
Spójrz na fioletową flagę na szczycie, aby przekonać się, ilu heraldów jest aktywnych w danym momencie.", + "Seasonal random drops have a 1/5 chance to carry over through ascensions.": "Jest 1/5 szansy, że sezonowe losowe znajdźki przejdą do kolejnego wzniesienia.", + "Unlocks extra price information.
Each displayed cost now specifies how long it'll take you to afford it, and how much of your bank it represents.": "Odblokowuje dodatkowe informacje o cenach.
Pod każdą ceną widnieje informacja, jak długo będziesz na daną rzecz zbierać oraz jaką część twojego banku ona reprezentuje.", + "Unlocks the shimmering veil, a switch that passively boosts your CpS by %1%.
You start with the veil turned on; however, it is very fragile, and clicking the big cookie or any golden cookie or reindeer will turn it off, requiring %2 of CpS to turn back on.": "Odblokowuje błyszczącą zasłonę, będącą przełącznikiem pasywnie zwiększającym twoją wartość CnS o %1%.
Twoja zasłona, choć włączona, jest na początku bardzo słaba. Skutkiem tego kliknięcie dużego ciastka, złotego ciastka czy renifera spowoduje, że zasłona zniknie. Żeby uruchomić ją z powrotem, będziesz musiał wydać %2 swojej wartości CnS.", + "Boosts your cookie production by %1% when active.
The veil is very fragile and will break if you click the big cookie or any golden cookies or reindeer.

Once broken, turning the veil back on costs %2 of unbuffed CpS.": "Jeśli jest włączona, zwiększa produkcję ciastek o %1%.
Zasłona jest bardzo słaba i ulegnie przełamaniu, jeśli klikniesz jakiekolwiek duże lub złote ciastko, albo choćby renifera.

Jeśli to nastąpi, przywrócenie zasłony będzie kosztowało %2 wartości twoich niezwiększonych CnS.", + "Has a %1% chance to not break.": "Istnieje %1% szansy, że nie ulegnie przełamaniu.", + "The shimmering veil is more resistant, and has a %1% chance not to break. It also gives +%2% more CpS.": "Błyszcząca zasłona jest odporniejsza, dzięki czemu istnieje %1% szansy, że nie ulegnie przełamaniu. Ponadto zasłona zwiększa twoją wartość CnS o +%2%.", + "Active.": "Aktywna.", + "The reinforced membrane protects the shimmering veil.": "Błyszczącą zasłonę chroni też wzmocniona membrana.", + "The shimmering veil disappears...": "Błyszcząca zasłona zanika…", + "Prior to purchasing the %1 upgrade in a run, random drops are %2 times more common.": "Przed zakupem ulepszenia %1 w danej rozgrywce, częstotliwość pojawiania się losowych znajdziek wzrasta %2 razy.", + "Never forget your %1.": "Pamiętaj, że %1 na ciebie czekają.", + "Pay close attention to the humble %1.": "Zwróć uwagę na: %1", + "You've been neglecting your %1.": "Pamiętaj, że %1 nie lubią być zaniedbywane.", + "Remember to visit your %1 sometimes.": "Pamiętaj, aby czasem odwiedzić swoje %1.", + "You don't know what you have until you've lost it.": "Człowiek nie szanuje tego, co ma, dopóki tego nie utraci.", + "Remember to take breaks.": "Pamiętaj, aby robić sobie przerwy.", + "Hey, what's up. I'm a fortune cookie.": "No cześć, co tam? Jestem ciastkiem z wróżbą.", + "You think you have it bad? Look at me.": "Myślisz, że masz najgorzej? No to spójrz na mnie.", + "The news ticker may occasionally have fortunes, which may be clicked for something good.": "Na pasku wiadomości od czasu do czasu pojawiać się będą ikony wróżby, które można kliknąć, aby otrzymać coś dobrego.", + "Through clever accounting, this actually makes kitten upgrades %1% cheaper.": "Kreatywna księgowość sprawia, że kocie ulepszania stają się %1% tańsze.", + "Unlocks the ability to pet your dragon by clicking on it once hatched.": "Odblokowuje możliwość głaskania swojego smoka. Aby tego dokonać, kliknij go, gdy już się wykluje.", + "Cost scales with CpS, but %1 times cheaper with a fully-trained dragon.": "Koszt skaluje się wraz z poziomem twojej wartości CnS, ale z w pełni wyszkolonym smokiem jest mniejszy o %1.", + "Golden cookies may trigger a Dragon Harvest.": "Złote ciastka mogą wywołać Smocze żniwa.", + "Golden cookies may trigger a Dragonflight.": "Złote ciastka mogą wywołać Lot smoka.", + "Dragon harvest and Dragonflight are %1% stronger.": "Smocze żniwa oraz Lot smoka są %1% silniejsze.", + "Kittens are %1% more effective.": "Kocięta są %1% wydajniejsze.", + "Each kitten upgrade boosts %1 CpS by %2%.": "Każde kocie ulepszenie zwiększa CnS obiektu \"%1\" o %2%.", + "Each rank of milk boosts %1 CpS by %2%.": "Każdy poziom mleka zwiększa %1 twoich CnS o %2%.", + "Cursor levels boost clicks by %1% each (up to cursor level %2).": "Każdy poziom kursora zwiększa kliknięcia o %1% (aż do poziomu %2).", + "%1 are now effective up to cursor level %2.": "%1 są skuteczne do poziomu kursora %2.", + "Seasonal cookies purchased: %1.": "Zakupione ciastka sezonowe: %1.", + "Reindeer cookies purchased: %1.": "Zakupione ciastka reniferowe: %1.", + "Eggs purchased: %1.": "Zakupione jajka: %1.", + "Golden and wrath cookie effect duration +%1%.": "Czas trwania efektu złotych i gniewnych ciastek +%1%.", + "Golden and wrath cookies appear %1% more.": "Złote i gniewne ciastka pojawiają się %1% częściej.", + "Golden and wrath cookies appear %1% less.": "Złote i gniewne ciastka pojawiają się %1% rzadziej.", + "Buildings grant -%1% CpS.": "Budynki przyznają -%1% CnS.", + "Selling buildings triggers a buff boosted by how many buildings were sold.": "Sprzedaż budynków powoduje doładowanie zależne od liczby sprzedanych budynków.", + "Buff boosts clicks by +%1% for every building sold for %2 seconds.": "Doładowanie przyspiesza kliknięcia o +%1% za każdy sprzedany budynek przez %2 sek.", + "CpS bonus fluctuating between %1 and %2 over time.": "Bonus CnS waha się między %1 a %2.", + "Effect cycles over %1 hours.": "Cykl efektu trwa %1 godz.", + "Some seasonal effects are boosted.": "Niektóre efekty sezonowe są wzmocnione.", + "Large boost.": "Duże wzmocnienie.", + "Medium boost.": "Średnie wzmocnienie.", + "Small boost.": "Małe wzmocnienie.", + "Switching seasons is %1% pricier.": "Zmiana pory roku jest droższa o %1%.", + "Switching seasons is %1% cheaper.": "Zmiana pory roku jest tańsza o %1%.", + "Heavenly chips have %1% less effect.": "Niebiańskie żetony są słabsze o %1%.", + "Buildings produce %1% more.": "Budynki produkują %1% więcej.", + "Buildings produce %1% less.": "Budynki produkują %1% mniej.", + "All golden cookies are wrath cookies with a greater chance of a negative effect.": "Wszystkie złote ciastka są gniewnymi ciastkami o zwiększonym ryzyku negatywnych efektów.", + "Wrinklers appear %1% faster and digest %2% more cookies.": "Zmarszczkacze pojawiają się %1% szybciej i pożerają %2% więcej ciastek.", + "Effect is only active when your total amount of buildings ends with 0.": "Efekt jest aktywny, tylko jeśli ilość Twoich budynków kończy się na 0.", + "Achievement unlocked": "Osiągnięcie odblokowane", + "Make %1 just from %2.": "Zdobądź %1 poprzez obiekt \"%2\".", + "Bake %1 in one ascension.": "Upiecz %1 podczas jednego wzniesienia.", + "Bake %1 per second.": "Piecz %1 na sekundę.", + "Have %1.": "Zdobądź %1.", + "Ascend at least once.": "Wznieś się przynajmniej raz.", + "Ascend %1 times.": "Wznieś się %1 razy.", + "Ascend with %1 baked.": "Wznieś się, upiekłszy %1.", + "Make %1 by only having clicked %2 times.": "Zdobądź %1, wykonując jedynie %2 kliknięcia.", + "Make %1 with no cookie clicks.": "Zdobądź %1, nie kliknąwszy żadnego ciastka.", + "Get to %1 baked with no upgrades purchased.": "Dotrzyj do %1, piekąc bez kupowania żadnych ulepszeń.", + "Get to %1 baked in %2.": "Dobij do %1, w czasie: %2.", + "Make %1 from clicking.": "Zdobądź %1 z klikania.", + "Sell a grandma.": "Sprzedaj babcię.", + "Have at least %1 of every building.": "Posiadaj każdy budynek w ilości co najmniej %1 .", + "Have at least 1 of the most expensive object, 2 of the second-most expensive, 4 of the next and so on (capped at %1).": "Posiadaj co najmniej 1 najdroższy budynek, 2 budynki drugie pod względem ceny, 4 kolejne i tak dalej (limit na %1).", + "Have at least 10 of the most expensive object, 20 of the second-most expensive, 30 of the next and so on.": "Posiadaj co najmniej 10 najdroższych obiektów, 20 obiektów drugich pod względem ceny, 30 kolejnych i tak dalej.", + "Click a golden cookie.": "Kliknij złote ciastko.", + "Click %1.": "Kliknij %1.", + "Hack in some cookies.": "Zhakuj parę ciastek.", + "Click really, really fast.": "Klikaj naprawdę, NAPRAWDĘ szybko.", + "Have at least %1 of everything.": "Posiadaj przynajmniej %1 wszystkiego.", + "Own %1.": "Posiadaj %1.", + "Purchase %1.": "Kup %1.", + "Dunk the cookie.": "Zamocz ciastko.", + "Appease the grandmatriarchs at least once.": "Uspokój arcymatronę przynajmniej raz.", + "Appease the grandmatriarchs at least %1 times.": "Uspokój arcymatronę przynajmniej %1 razy.", + "Declare a covenant with the grandmatriarchs.": "Ogłoś porozumienie z arcymatronami.", + "Own at least %1 grandma types.": "Posiadaj przynajmniej %1 rodzajów babci.", + "Unlock 100% of your heavenly chips power.": "Odblokuj 100% mocy swoich niebiańskich żetonów.", + "You have 1 chance in %1 every second of earning this achievement.": "Każdej sekundy masz 1 szansę na %1 na zdobycie tego osiągnięcia.", + "Burst 1 wrinkler.": "Rozgnieć 1 zmarszczkacza.", + "Burst %1 wrinklers.": "Rozgnieć %1 zmarszczkaczy.", + "Unlock every Halloween-themed cookie.
Owning this achievement makes Halloween-themed cookies drop more frequently in future playthroughs.": "Odblokuj wszystkie ciasta z motywem Halloween.
Zdobycie tego osiągnięcia sprawi, że w przyszłych rozgrywkach ciastka z motywem Halloween będą pojawiać się częściej.", + "Reach Santa's 7th form.": "Dotrzyj do 7 formy św. Mikołaja.", + "Reach Santa's final form.": "Dotrzyj do ostatecznej formy św. Mikołaja.", + "Unlock every Christmas-themed cookie.
Owning this achievement makes Christmas-themed cookies drop more frequently in future playthroughs.": "Odblokuj wszystkie ciasta z motywem Bożego Narodzenia.
Zdobycie tego osiągnięcia sprawi, że w przyszłych rozgrywkach ciastka z motywem Bożego Narodzenia będą pojawiać się częściej.", + "Pop 1 reindeer.": "Zgnieć 1 renifera.", + "Pop %1 reindeer.": "Zgnieć %1 reniferów.", + "Pop a reindeer during an elder frenzy.": "Rozgnieć renifera podczas szału starszyzny.", + "Unlock every Valentine-themed cookie.": "Odblokuj wszystkie ciastka z motywem walentynkowym.", + "Click the tiny cookie.": "Kliknij malutkie ciastko.", + "This is for baking %1 and making it on the local news.": "To za upieczenie %1 oraz pójście z tym do lokalnych mediów.", + "Name yourself Orteil.
Note: usurpers incur a -%1% CpS penalty until they rename themselves something else.
": "Nazwij się Orteil.
Uwaga: uzurpatorzy otrzymują karę -%1% do wartości CnS aż do momentu, gdy się przemianują na coś innego.
", + "Use an add-on.": "Użyj dodatku.", + "Unlock 1 egg.": "Odblokuj 1 jajko.", + "Unlock %1 eggs.": "Odblokuj %1 jajka.", + "Unlock all the eggs.
Owning this achievement makes eggs drop more frequently in future playthroughs.": "Odblokuj wszystkie jajka.
Zdobycie tego osiągnięcia sprawi, że w przyszłych rozgrywkach jajka będą pojawiały się częściej.", + "Give your bakery a name.": "Nazwij swoją piekarnię.", + "Click this achievement's slot.": "Kliknij to miejsce na osiągnięcie.", + "Complete your dragon's training.": "Zakończ swoje szkolenie smoka.", + "Click on the news ticker %1 times.": "Kliknij pasek wiadomości %1 razy.", + "Own a combined %1 %2 and %3.": "Posiadaj w sumie %1 obiektów %2 i %3.", + "Own %1 upgrades and %2 buildings.": "Posiadaj %1 ulepszeń oraz %2 budynków.", + "Own %1 heavenly upgrades.": "Posiadaj %1 niebiańskich ulepszeń.", + "Burst the near-extinct shiny wrinkler.": "Rozgnieć niemal już wymarłego błyszczącego zmarszczkacza.", + "Click a golden cookie less than 1 second after it spawns.": "Kliknij złote ciastko w mniej niż sekundę po jego pojawieniu się.", + "Click a golden cookie less than 1 second before it dies.": "Kliknij złote ciastko w mniej niż sekundę przed jego śmiercią.", + "Harvest %1 coalescing sugar lumps.": "Zbierz %1 krzepnących grudek cukru.", + "Successfully harvest a coalescing sugar lump before it's ripe.": "Zbierz krzepnącą grudkę cukru, zanim ta dojrzeje.", + "Harvest a bifurcated sugar lump.": "Zbierz rozwidloną grudkę cukru.", + "Harvest a golden sugar lump.": "Zbierz złotą grudkę cukru.", + "Harvest a meaty sugar lump.": "Zbierz mięsistą grudkę cukru.", + "Harvest a caramelized sugar lump.": "Zbierz skarmelizowaną grudkę cukru.", + "Reach level %1 %2.": "Osiągnij poziom %1 %2.", + "Cast %1 spells.": "Rzuć zaklęć: %1", + "Have %1 golden cookies simultaneously.": "Posiadaj równocześnie złotych ciastek: %1", + "Manage a cookie legacy for at least a year.": "Zarządzaj ciastkowym dziedzictwem przez przynajmniej 1 rok.", + "Harvest %1 mature garden plants.": "Zbierz %1 dorosłe rośliny.", + "Fill every tile of the biggest garden plot with plants.": "Obsadź każde pole największego ogródka roślinami.", + "Unlock every garden seed.": "Odblokuj wszystkie nasiona.", + "Convert a complete seed log into sugar lumps by sacrificing your garden to the sugar hornets.
Owning this achievement makes seeds %1% cheaper, plants mature %2% sooner, and plant upgrades drop %3% more.": "Przekształć swój dziennik nasion na grudki cukru, oddając swój ogród cukrowym szerszeniom.
Posiadanie tego osiągnięcia sprawia, że nasiona są %1% tańsze, rośliny dojrzewają %2% szybciej a ulepszenia roślin wypadają %3% częściej.", + "Ascend with exactly %1.": "Wznieś się z dokładnie %1.", + "Have your reinforced membrane protect the shimmering veil.": "Spraw, żeby wzmocniona membrana ochroniła twoją błyszczącą zasłonę.", + "Own every fortune upgrade.
Owning this achievement makes fortunes appear twice as often; unlocked fortune upgrades also have a %1% chance to carry over after ascending.": "Posiadaj wszystkie ulepszenia szczęścia.
Posiadanie tego osiągnięcia sprawia, że szczęście pojawia się dwa razy częściej Istnieje też %1% szansy, że odblokowane ulepszenia szczęścia przejdą razem z tobą po wzniesieniu.", + "Make your first stock market profit.": "Zyskaj po raz pierwszy na giełdzie.", + "Own at least %1 of a stock market good.": "Posiadaj co najmniej %1 danego dobra na giełdzie.", + "Own at least %1 of every stock market good.": "Posiadaj co najmniej %1 wszystkich dóbr na giełdzie.", + "Make a day of CpS ($%1) in 1 stock market sale.": "Zarób CnS ($%1) o wartości 1 dnia podczas 1 transakcji sprzedaży na giełdzie.", + "Spend a day of CpS ($%1) in 1 stock market purchase.": "Wydaj CnS ($%1) o wartości 1 dnia podczas 1 transakcji kupna na giełdzie.", + "Have your stock market profits surpass a whole year of CpS ($%1).": "Spraw, żeby twoje zyski na giełdzie przekroczyły CnS ($%1) o wartości całego roku.", + "Unlock the highest-tier stock market headquarters.": "Odblokuj najwyższy poziom kwatery głównej giełdy ciastek wartościowych.", + "Have your stock market profits surpass $%1.": "Spraw, żeby twoje zyski na giełdzie przekroczyły $%1.", + "Own %1 kitten upgrades.": "Posiadaj %1 kocich ulepszeń.", + "Find the forgotten madeleine.": "Odszukaj zaginioną Madeleine.", + "Click one of Santa's helper grandmas during Christmas season.": "Kliknij jedną z mikołajowych babć-pomocnic w trakcie okresu świątecznego.", + "Frenzy": "Szał", + "Elder frenzy": "Szał starszyzny", + "Click frenzy": "Szał klikania", + "Clot": "Zakrzep", + "Dragon Harvest": "Smocze żniwa", + "Everything must go": "Wszystko przemija", + "Cursed finger": "Przeklęty palec", + "Cookie storm": "Ciastkowa burza", + "Sugar blessing": "Cukrowe błogosławieństwo", + "Haggler's luck": "Szczęście przekupki", + "Haggler's misery": "Peszek przekupki", + "Crafty pixies": "Przebiegłe pixies", + "Nasty goblins": "Złośliwe gobliny", + "Magic adept": "Ogarniacz magii", + "Magic inept": "Nieogarniacz magii", + "Devastation": "Dewastacja", + "Sugar frenzy": "Cukrowy szał", + "Loan %1": "Pożyczka %1", + "Loan %1 (interest)": "Pożyczka %1 (na procent)", + "%1 Power!": "%1: moc!", + "%1 Burden!": "%1: obciążenie!", + "Cookie production x%1 for %2!": "Produkcja ciastek x%1 przez %2!", + "Cookie production +%1% for %2!": "Produkcja ciastek +x%1 przez %2!", + "Cookie production %1% slower for %2!": "Produkcja ciastek %1% wolniej przez %2!", + "Cookie production halved for %1!": "Produkcja ciastek 2 razy mniejsza przez %1!", + "Your %1 are boosting your CpS!": "Dzięki %1 twoja wartość CnS wzrasta!", + "Your %1 are rusting your CpS!": "Przez %1 twoja wartość CnS marnuje się!", + "All buildings are %1% cheaper for %2!": "Wszystkie budynki są %1% tańsze przez %2!", + "All buildings are %1% pricier for %2!": "Wszystkie budynki są %1% droższe przez %2!", + "All upgrades are %1% cheaper for %2!": "Wszystkie ulepszenia są %1% tańsze przez %2!", + "All upgrades are %1% pricier for %2!": "Wszystkie ulepszenia są %1% droższe przez %2!", + "Cookie production halted for %1,
but each click is worth %2 of CpS.": "Produkcja ciastek zatrzymana przez %1,
ale każde kliknięcie jest warte %2 twoich CnS.", + "Clicking power x%1 for %2!": "Moc klikania x%1 przez %2!", + "Clicking power +%1% for %2!": "Moc klikania +x%1 przez %2!", + "Cookies everywhere!": "Ciastka wszędzie!", + "You find %1% more golden cookies for the next %2.": "Odnajdujesz %1% więcej ciastek przez następne %2.", + "Spells backfire %1 times less for %2.": "Czary odwracają się przeciwko tobie %1 razy rzadziej przez %2.", + "Spells backfire %1 times more for %2.": "Czary odwracają się przeciwko tobie %1 razy częściej przez %2.", + "can be done once every %1": "można wykonać co %1", + "usable again in %1": "aktywny ponownie za %1", + "+%1/s": "/", + "Next tick in %1.": "Następny skok za %1.", + "Initializing...": "Inicjalizacja…", + "View %1": "Pokaż %1", + "Close %1": "Zamknij %1", + "Details:": "Szczegóły:", + "Effects:": "Efekty:", + "Effect is active.": "Efekt jest aktywny.", + "Effect is inactive.": "Efekt jest nieaktywny.", + "Current bonus:": "Obecny bonus:", + "Garden": "Ogród", + "Baker's wheat": "Pszenica piekarza", + "[Baker's wheat quote]A plentiful crop whose hardy grain is used to make flour for pastries.": "Urodzajne zboże, którego twarde ziarno wykorzystywane jest do produkcji mąki pod przyszłe wypieki.", + "Thumbcorn": "Kciukurydza", + "[Thumbcorn quote]A strangely-shaped variant of corn. The amount of strands that can sprout from one seed is usually in the single digits.": "Odmiana kukurydzy o dziwnym kształcie. Liczba pędów, które mogą wyrosnąć z jednego nasiona, jest zwykle jednocyfrowa. ", + "Cronerice": "Smutnoryż", + "[Cronerice quote]Not only does this wrinkly bulb look nothing like rice, it's not even related to it either; its closest extant relative is the weeping willow.": "Nie dość, że ta pomarszczona cebulka nie jest podobna do ryżu, to nawet nie jest z nim spokrewniona. Jej najbliższą daleką kuzynką jest wierzba płacząca.", + "Gildmillet": "Złotoproso", + "[Gildmillet quote]An ancient staple crop, famed for its golden sheen. Was once used to bake birthday cakes for kings and queens of old.": "Starożytna odmiana jadalnego zboża, hodowana ze względu na swój złoty kolor. Używano jej niegdyś do pieczenia urodzinowych tortów dla królów i królowych.", + "Ordinary clover": "Koniczyna pospolita", + "[Ordinary clover quote]Trifolium repens, a fairly mundane variety of clover with a tendency to produce four leaves. Such instances are considered lucky by some.": "Koniczyna biała, będąca całkowicie przeciętną odmianą koniczyny. Co ciekawe, zdarza jej się czasem wypuścić cztery liście, co w niektórych środowiskach uważa się za symbol szczęścia.", + "Golden clover": "Koniczyna złota", + "[Golden clover quote]A variant of the ordinary clover that traded its chlorophyll for pure organic gold. Tragically short-lived, this herb is an evolutionary dead-end - but at least it looks pretty.": "Odmiana koniczyny pospolitej, która zamieniła swój chlorofil na czyste, organiczne złoto. Nie dość, że jej długość życia jest niedorzecznie mała, to jeszcze jest przykładem ewolucyjnego ślepego zaułka. No, ale przynajmniej jest przepiękna.", + "Shimmerlily": "Błysklilia", + "[Shimmerlily quote]These little flowers are easiest to find at dawn, as the sunlight refracting in dew drops draws attention to their pure-white petals.": "Najłatwiej dostrzec te małe kwiatuszki o świcie, gdy światło słoneczne załamujące się w kroplach rosy, podkreślając piękno jej śnieżnobiałych płatków. ", + "Elderwort": "Starotka", + "[Elderwort quote]A very old, long-forgotten subspecies of edelweiss that emits a strange, heady scent. There is some anecdotal evidence that these do not undergo molecular aging.": "Leciwy, od dawien dawna zapomniany podgatunek szarotki, który wydaje dziwny, mocny zapach. Istnieją pewne anegdotyczne dowody na to, że nie ulegają one starzeniu na poziomie molekularnym. ", + "Bakeberry": "Piekojagoda", + "[Bakeberry quote]A favorite among cooks, this large berry has a crunchy brown exterior and a creamy red center. Excellent in pies or chicken stews.": "Absolutny faworyt niejednego kucharza. Ta sporej wielkości jagoda ma chrupiącą, brązową skórkę oraz kremowy, czerwony środek. Nadaje się idealnie do ciast oraz gulaszu.", + "Chocoroot": "Czekorzeń", + "[Chocoroot quote]A tangly bramble coated in a sticky, sweet substance. Unknown genetic ancestry. Children often pick these from fields as-is as a snack.": "Poplątana jeżyna pokryta klejącą, słodką substancją. Dziedzictwo generyczne nieznane. Dzieci często wyrywają je z ziemi i jedzą z marszu na surowo.", + "White chocoroot": "Biały czekorzeń", + "[White chocoroot quote]A pale, even sweeter variant of the chocoroot. Often impedes travelers with its twisty branches.": "Blady, ale jeszcze słodszy gatunek czekoburaka. Znane są przypadki, że jego pokręcone gałęzie skutecznie zatrzymywały przechodniów.", + "White mildew": "Biała pleśń", + "[White mildew quote]A common rot that infests shady plots of earth. Grows in little creamy capsules. Smells sweet, but sadly wilts quickly.": "Typowa zgnilizna porastająca mroczne skrawki ziemi. Mnoży się pod postacią małych, kremowych kapsułek. Zapach ma słodki, ale niestety szybko usycha.", + "Brown mold": "Brązowa próchnica", + "[Brown mold quote]A common rot that infests shady plots of earth. Grows in odd reddish clumps. Smells bitter, but thankfully wilts quickly.": "Typowa zgnilizna porastająca mroczne skrawki ziemi. Mnoży się pod postacią dziwnych, czerwonych grudek. Zapach ma gorzki, ale na szczęcie szybko usycha.", + "Meddleweed": "Próżnochwast", + "[Meddleweed quote]The sign of a neglected farmland, this annoying weed spawns from unused dirt and may sometimes spread to other plants, killing them in the process.": "Oto najlepszy przykład zaniedbanego ogrodu. Ten irytujący chwast nasiewa się od nieużywanej ziemi i zdarza się, że przechodzi na inne rośliny, zabijając je przy tym.", + "Whiskerbloom": "Kiciorost", + "[Whiskerbloom quote]Squeezing the translucent pods makes them excrete a milky liquid, while producing a faint squeak akin to a cat's meow.": "Ściskanie przezroczystych strąków tej rośliny sprawia, że z kiciorostu poczyna wypływać mleczny płyn. Co więcej, usłyszeć też przy tym można delikatny pisk, podobny do miałczenia kota.", + "Chimerose": "Chimeróża", + "[Chimerose quote]Originating in the greener flanks of polar mountains, this beautiful flower with golden accents is fragrant enough to make any room feel a little bit more festive.": "Roślina pierwotnie pochodzi z zieleńszych zboczy gór polarnych. Jej piękny kwiat ze złotymi zdobieniami jest tak aromatyczny, że z powodzeniem może nadać blasku każdemu domowi.", + "Nursetulip": "Samarytulipan", + "[Nursetulip quote]This flower grows an intricate root network that distributes nutrients throughout the surrounding soil. The reason for this seemingly altruistic behavior is still unknown.": "Ten kwiat wytwarza skomplikowaną sieć korzeniową, która dostarcza wartości odżywczych roślinom na pobliskich polach. Nadal nie znamy powodów tego pozornie altruistycznego zachowania.", + "Drowsyfern": "Drzemkopaprotka", + "[Drowsyfern quote]Traditionally used to brew a tea that guarantees a good night of sleep.": "Tradycyjnie parzona pod postacią herbatki, która poprawia jakość snu.", + "Wardlichen": "Pieczoporost", + "[Wardlichen quote]The metallic stench that emanates from this organism has been known to keep insects and slugs away.": "Metaliczny odór tego organizmu sprawia, że wszelakie insekty i ślimaki trzymają się od niego z daleka.", + "Keenmoss": "Ostromech", + "[Keenmoss quote]Fuzzy to the touch and of a vibrant green. In plant symbolism, keenmoss is associated with good luck for finding lost objects.": "Roślina o żywym, zielonym kolorze, nieco kudłata w dotyku. W symbolice roślin można przeczytać, że ostromech utożsamia się ze szczęściem oraz odnajdywaniem zagubionych przedmiotów.", + "Queenbeet": "Burak królewski", + "[Queenbeet quote]A delicious taproot used to prepare high-grade white sugar. Entire countries once went to war over these.": "Pyszna roślina, używana przeważnie do produkcji wysokiej jakości cukru. W dawnych czasach całe narody szły na wojnę, aby ją zdobyć.", + "Juicy queenbeet": "Soczysty burak królewski", + "[Juicy queenbeet quote]A delicious taproot used to prepare high-grade white sugar. Entire countries once went to war over these.
It looks like this one has grown especially sweeter and juicier from growing in close proximity to other queenbeets.": "Pyszna roślina, używana przeważnie do produkcji wysokiej jakości cukru. W dawnych czasach całe narody szły na wojnę, aby ją zdobyć.
Wygląda na to, że ta roślina jest jeszcze słodsza i bardziej soczysta, a to dzięki zasadzeniu w niewielkiej odległości od pozostałych buraków królewskich.", + "Duketater": "Diuktator", + "[Duketater quote]A rare, rich-tasting tuber fit for a whole meal, as long as its strict harvesting schedule is respected. Its starch has fascinating baking properties.": "Rzadka bulwa o bogatym smaku, która idealnie nadaje się na pełnowartościowy obiad pod warunkiem przestrzegania bardzo restrykcyjnego harmonogramu zbioru. Jej skrobia ma fascynujące właściwości piekarnicze.", + "Crumbspore": "Okruchozarodnik", + "[Crumbspore quote]An archaic mold that spreads its spores to the surrounding dirt through simple pod explosion.": "Archaiczna pleść, która rozmnaża się dzięki zarodnikom wystrzeliwanym na pobliskie pola za pomocą zwykłej eksplozji strąków.", + "Doughshroom": "Ciastogrzyb", + "[Doughshroom quote]Jammed full of warm spores; some forest walkers often describe the smell as similar to passing by a bakery.": "Wypełniony aż po kapelusz ciepłymi zarodnikami. Niektórzy bywalcy lasów określają jego zapach jako kojarzący się z piekarnią.", + "Glovemorel": "Czubajka skórzana", + "[Glovemorel quote]Touching its waxy skin reveals that the interior is hollow and uncomfortably squishy.": "Po dotknięciu woskowej skóry tego grzyba wnet odkrywamy jego wnętrze, które jest puste i nieprzyjemnie gąbczaste.", + "Cheapcap": "Tanik zwyczajny", + "[Cheapcap quote]Small, tough, and good in omelettes. Some historians propose that the heads of dried cheapcaps were once used as currency in some bronze age societies.": "Mały, twardy, ale dobry do omletów. Niektórzy historycy przypominają, że wysuszone kapelusze taników zwyczajnych były w epoce brązu używane przez niektóre plemiona jako środek płatniczy.", + "Fool's bolete": "Borowik zmylony", + "[Fool's bolete quote]Named for its ability to fool mushroom pickers. The fool's bolete is not actually poisonous, it's just extremely bland.": "Nazwa odnosi się do jego wyglądu, który bardzo łatwo pomylić z innymi grzybami. Borowik zmylony w zasadzie nie jest trujący, ale zwyczajnie jego smak jest nijaki.", + "Wrinklegill": "Boczniak zmarszczkowaty", + "[Wrinklegill quote]This mushroom's odor resembles that of a well-done steak, and is said to whet the appetite - making one's stomach start gurgling within seconds.": "Woń tego grzyba przypomina zapach bardzo mocno wysmażonego steka. Podobno ma też właściwości wzmagające apetyt, gdyż w przeciągu paru sekund od konsumpcji każdemu zaczyna bulgotać w brzuchu.", + "Green rot": "Zielopleśń", + "[Green rot quote]This short-lived mold is also known as \"emerald pebbles\", and is considered by some as a pseudo-gem that symbolizes good fortune.": "Ta nietrwała pleśń znana jest też pod nazwą „szmaragdowych klejnotów”. Niektórzy jednak uznają ją za pseudoklejnot, choć zgadzają się, że symbolizuje szczęście.", + "Shriekbulb": "Piskocebulka", + "[Shriekbulb quote]A nasty vegetable with a dreadful quirk : its flesh resonates with a high-pitched howl whenever it is hit at the right angle by sunlight, moonlight, or even a slight breeze.": "Nieprzyjemne warzywo z równie okropną przypadłością: za każdym razem, gdy światło słoneczne lub księżycowe — a nawet lekka bryza — muśnie go pod odpowiednim kątem, piskocebulka wydaje z siebie ogłuszający pisk.", + "Tidygrass": "Schludnotrawa", + "[Tidygrass quote]The molecules this grass emits are a natural weedkiller. Its stems grow following a predictable pattern, making it an interesting -if expensive- choice for a lawn grass.": "Cząsteczki produkowane przez tę roślinę są naturalnym środkiem chwastobójczym. Jej łodygi rosną zgodnie z przewidywalnym wzorem, co czyni ją interesującym — choć nietanim — wyborem na przydomowy trawnik.", + "Everdaisy": "Zdrowokrotka", + "[Everdaisy quote]While promoted by some as a superfood owing to its association with longevity and intriguing geometry, this elusive flower is actually mildly toxic.": "Choć niektóre źródła wynoszą tę roślinę do statusu superpokarmu, dzięki jej długowieczności oraz intrygującej geometrii, to w rzeczywistości zdrowokrotka jest dość trująca.", + "Ichorpuff": "Purchawka cukrowa", + "[Ichorpuff quote]This puffball mushroom contains sugary spores, but it never seems to mature to bursting on its own. Surrounding plants under its influence have a very slow metabolism, reducing their effects but lengthening their lifespan.": "Choć grzyb ten zawiera zarodniki cukrowe, to nigdy nie dojrzewa na tyle, aby wybuchnąć i uwolnić je spod kapelusza. Będące pod jej wpływem pobliskie rośliny mają zdecydowanie obniżony metabolizm, co zmniejsza ich produktywność, ale wydłuża życie.", + "Garden information": "Informacje o ogrodzie", + "Your garden is frozen, providing no effects.": "Twój ogród jest zamrożony i nie zapewnia żadnych efektów.", + "Combined effects of all your plants:": "Połączone efekty Twoich wszystkich roślin:", + "None.": "Brak.", + "-You can cross-breed plants by planting them close to each other; new plants will grow in the empty tiles next to them.
-Unlock new seeds by harvesting mature plants.
-When you ascend, your garden plants are reset, but you keep all the seeds you've unlocked.
-Your garden has no effect and does not grow while the game is closed.": "-Możesz krzyżować rośliny, sadząc je blisko siebie. Nowe rośliny wyrosną na pustych polach obok nich.
- Odblokowuj nowe nasiona, zbierając dojrzałe rośliny.
-Po wzniesieniu się rośliny ogrodowe resetują się, ale zatrzymujesz wszystkie odblokowane nasiona.
-Twój ogród nie przynosi efektów i nie rozrasta się, kiedy gra jest zamknięta.", + "Harvest all": "Zbierz wszystko", + "Instantly harvest all plants in your garden.": "Natychmiast zbierz wszystkie rośliny ze swojego ogrodu.", + "%1 to harvest only mature, mortal plants.": "%1, by zebrać tylko dojrzałe, śmiertelne rośliny.", + "%1 to harvest all mature plants of this type.": "%1, by zebrać wszystkie dojrzałe rośliny tego typu.", + "Freeze": "Zamroź", + "Cryogenically preserve your garden.
Plants no longer grow, spread or die; they provide no benefits.
Soil cannot be changed.
Using this will effectively pause your garden.": "Kriogenicznie konserwuje Twój ogród.
Rośliny przestają rosnąć, mnożyć się i obumierać. Nie przynoszą korzyści.
Gleba nie może zostać zmieniona.
Użycie tej opcji oznacza całkowite wstrzymanie Twojego ogrodu.", + "Garden is frozen. Unfreeze to resume.": "Ogród jest zamrożony. Odmroź go, by kontynuować.", + "Sacrifice garden": "Poświęć ogród", + "A swarm of sugar hornets comes down on your garden, destroying every plant as well as every seed you've unlocked - leaving only a %1 seed.
In exchange, they will grant you %2.
This action is only available with a complete seed log.": "Rój szerszeni cukrowych atakuje Twój ogród, niszcząc wszystkie rośliny oraz wszystkie odblokowane nasiona. Jedyne nasiono, jakie ocaleje, to %1.
W zamian otrzymasz od nich %2.
Ta opcja jest aktywna, tylko jeśli spis nasion jest kompletny.", + "Do you REALLY want to sacrifice your garden to the sugar hornets?
You will be left with an empty plot and only the %1 seed unlocked.
In return, you will gain %2 sugar lumps.
": "NA PEWNO chcesz poświęcić swój ogród szerszeniom cukrowym?
Zostaniesz z pustą działką i jednym odblokowanym nasionem: %1.
W zamian otrzymasz grudki cukru x%2.
", + "Sacrifice!": "Poświęcamy!", + "You've sacrificed your garden to the sugar hornets, destroying your crops and your knowledge of seeds.
In the remains, you find %1 sugar lumps.": "Poświęciłeś ogród szerszeniom cukrowym, niszcząc uprawy i pozbywając się wiedzy o nasionach.
W zgliszczach znajdujesz grudki cukru x%1.", + "immortal": "nieśmiertelny", + "predictable growth": "przewidywany wzrost", + "surrounding plants (%1x%1) age %2% faster": "sąsiednie rośliny (%1x%1) starzeją się %2% szybciej", + "surrounding plants (%1x%1) age %2% slower": "sąsiednie rośliny (%1x%1) starzeją się %2% wolniej", + "surrounding plants (%1x%1) are %2% more efficient": "sąsiednie rośliny (%1x%1) są wydajniejsze o %2%", + "surrounding plants (%1x%1) are %2% less efficient": "sąsiednie rośliny (%1x%1) są %2% mniej wydajne", + "surrounding tiles (%1x%1) develop no weeds or fungus": "na sąsiednich polach (%1x%1) nie wyrastają chwasty ani grzyb", + "harvest when mature for +%1 of CpS (max. %2% of bank)": "zbierz dojrzałe za +%1 CnS (maks. %2% banku)", + "harvest when mature for a sugar lump": "zbierz dojrzałe za grudkę cukru", + "useless": "bezużyteczne", + "spreads easily": "łatwo się rozrasta", + "may spread as %1": "może rozrosnąć się jako %1", + "grows in empty tiles": "rośnie na pustych polach", + "may overtake nearby plants": "może przejąć pobliskie rośliny", + "may sometimes drop spores when uprooted": "wykorzeniona może wypuścić zarodniki", + "explodes into up to %1 of CpS at the end of its lifecycle (max. %2% of bank)": "kończy cykl życia, eksplodując na %1 CnS (maks. %2% banku)", + "cannot handle cold climates; %1% chance to die when frozen": "nie znosi zimnego klimatu; %1% ryzyka obumarcia po zamrożeniu", + "the unfortunate result of some plant combinations": "niefortunny rezultat kombinacji niektórych roślin", + "Soil unlocked at %1 farms.": "Gleba odblokowana na farmach x%1.", + "Your field is currently using this soil.": "Ta gleba jest teraz obecna na Twoim polu.", + "You will be able to change your soil again in %1.": "Zmiana gleby będzie możliwa za %1.", + "Click to use this type of soil for your whole field.": "Kliknij, by użyć tej gleby na całym polu.", + "Dirt": "Piach", + "Simple, regular old dirt that you'd find in nature.": "Najzwyczajniejszy piach, jaki można znaleźć w naturze.", + "Fertilizer": "Nawóz", + "Soil with a healthy helping of fresh manure. Plants grow faster but are less efficient.": "Gleba z porządną dawką świeżego nawozu. Rośliny rosną szybciej, ale są mniej wydajne.", + "Clay": "Glina", + "Rich soil with very good water retention. Plants grow slower but are more efficient.": "Bogata gleba z bardzo dobrą retencją wody. Rośliny rosną wolniej, ale są wydajniejsze.", + "Pebbles": "Żwir", + "Dry soil made of small rocks tightly packed together. Not very conducive to plant health, but whatever falls off your crops will be easy to retrieve.
Useful if you're one of those farmers who just want to find new seeds without having to tend their garden too much.": "Sucha gleba z drobnych, mocno zbitych kamyczków. Nie sprzyja zdrowiu roślin, ale ułatwia zbieranie owoców, które z nich spadają.
Przydatna dla farmerów, którym zależy wyłącznie na nowych nasionach, bez zbytniego pielenia ogrodu.", + "Wood chips": "Zrębki drzewne", + "Soil made of bits and pieces of bark and sawdust. Helpful for young sprouts to develop, not so much for mature plants.": "Gleba ze zlepków kory i wiór. Przydatna przy młodych pędach, mniej w przypadku dojrzałych roślin.", + "tick every %1": "skok co %1", + "passive plant effects": "pasywne efekty rośliny", + "weed growth": "rozrost chwastów", + "%1% chance of collecting seeds automatically when plants expire": "%1% szansy na automatycznie zebranie nasion po zwiędnięciu rośliny", + "plants spread and mutate %1 times more": "rośliny rozrastają się i mutują %1x częściej", + "Plant effects:": "Efekty roślin:", + "Possible mutations:": "Możliwe mutacje:", + "Average lifespan:": "Średnia długość życia:", + "Average maturation:": "Średni okres dojrzewania:", + "Mature in about %1": "Dojrzeje za około %1", + "Decays in about %1": "Zwiędnie za około %1", + "Does not decay": "Nie więdnie", + "%1 tick": [ + "%1 skok", + "skok x%1" + ], + "Weed": "Chwast", + "Fungus": "Grzyb", + "Planting cost:": "Koszt posadzenia:", + "%1 of CpS,
minimum %2": "%1 CnS,
minimum %2", + "%1 seed": "nasiono: %1", + "Click to select this seed for planting.": "Kliknij, by posadzić to nasiono.", + "This seed cannot be planted.": "Nie można posadzić tego nasiona.", + "Empty tile": "Puste pole", + "This tile of soil is empty.
Pick a seed and plant something!": "To pole gleby jest puste.
Wybierz nasiono i posadź coś!", + "Click to plant %1 for %2.": "Kliknij, by posadzić %1 na %2.", + "%1 to plant multiple.": "%1, by posadzić kilka.", + "Aging multiplier:": "Mnożnik starzenia się:", + "Effect multiplier:": "Mnożnik efektu:", + "Weeds/fungus repellent:": "Środek przeciwko chwastom/grzybowi:", + "This plant is growing here.": "Ta roślina rośnie tutaj.", + "Stage:": "Etap:", + "bud": "pączkuje", + "sprout": "puszcza pędy", + "bloom": "kwitnie", + "mature": "dojrzała", + "may reproduce, will drop seed when harvested": "może się rozmnażać, wypuszcza nasiona po zebraniu", + "Click to harvest.": "Kliknij, by zebrać.", + "Click to unearth.": "Kliknij, by wyrwać.", + "Click to refill your soil timer and trigger 1 plant growth tick with x%1 spread and mutation rate for %2.": "Kliknij, by zresetować pomiar czasu gleby i wywołać1 skok rozwoju rośliny z częstotliwością rozrastania się i mutacji x%1 za %2.", + "Unlocked %1 seed.": "Odblokowuje nasiono: %1.", + "Seeds": "Nasiona", + "Tools": "Narzędzia", + "Mature plants harvested: %1 (total: %2)": "Zebrane dojrzałe rośliny: %1 (suma: %2)", + "Plot size: %1
(Upgrades with farm level)": "Rozmiar działki: %1
(Zwiększa się wraz z poziomem farmy)", + "Garden plants age and mutate %1% faster.": "Rośliny w ogrodzie dorastają i mutują %1% szybciej.", + "while plant is alive; scales with plant growth": "w trakcie życia rośliny; wzrasta wraz ze wzrostem rośliny", + "Dungeon": "Loch", + "Grimoire": "Grymuar", + "This is your magic meter. Each spell costs magic to use.
Your maximum amount of magic varies depending on your amount of Wizard towers, and their level.
Magic refills over time. The lower your magic meter, the slower it refills.": "To Twój miernik magii. Każde zaklęcie zużywa magię.
Twój maksymalny poziom magii jest uzależniony od ilości posiadanych wież Czarnoksiężnikaoraz ich poziomu.
Magia odnawia się z czasem. Im niższy jest wskaźnik magii, tym wolniej się uzupełnia.", + "Spells cast: %1 (total: %2)": "Rzucone zaklęcia: %1 (suma: %2)", + "Magic cost:": "Koszt magii:", + "Chance to backfire:": "Ryzyko pomyłki:", + "Effect:": "Efekt:", + "Backfire:": "Pomyłka:", + "Backfire!": "Pomyłka!", + "%1 magic": "magia: %1", + "+%1% of max magic": "+%1% maksymalnej magii", + "Click to refill %1 units of your magic meter for %2.": "Kliknij, by odnowić %1 jednost. miernika magii za %2.", + "Grimoire spells are %1% cheaper but fail %1% more.": "Zaklęcia grymuaru są %1% tańsze, ale %1% częściej zawodzą.", + "Conjure Baked Goods": "Przyzwij Wypieki", + "Summon half an hour worth of your CpS, capped at %1% of your cookies owned.": "Przyzwij pół godziny wartości CnS o górnej granicy %1% posiadanych ciastek.", + "Trigger a %1-minute clot and lose %1 minutes of CpS.": "Wywołaj %1-minutowy zakrzep, tracąc %1 min. CnS.", + "You magic %1 out of thin air.": "Wyczarowujesz %1 z powietrza.", + "Summoning failed!": "Przyzywanie nie powiodło się!", + "Force the Hand of Fate": "Pokieruj Ręką Przeznaczenia", + "Summon a random golden cookie. Each existing golden cookie makes this spell +%1% more likely to backfire.": "Przyzwij losowe złote ciastko. Każde istniejące złote ciastko zwiększa ryzyko pomyłki o %1%.", + "Summon an unlucky wrath cookie.": "Przyzwij niefortunne gniewne ciastko.", + "Promising fate!": "Obiecujący los!", + "Sinister fate!": "Złowieszczy los!", + "Stretch Time": "Rozciągnij czas", + "All active buffs gain %1% more time (up to %2 more minutes).": "Wszystkie aktywne usprawnienia dostają %1% więcej czasu (do %2 min.).", + "All active buffs are shortened by %1% (up to %2 minutes shorter).": "Wszystkie aktywne usprawnienia są skrócone o %1% (do % min.).", + "No buffs to alter!": "Nie ma usprawnień do modyfikacji!", + "Zap! Buffs lengthened.": "Ziuu! Usprawnienia wydłużone.", + "Fizz! Buffs shortened.": "Puf! Usprawnienia skrócone.", + "Spontaneous Edifice": "Spontaniczny gmach", + "The spell picks a random building you could afford if you had twice your current cookies, and gives it to you for free. The building selected must be under %1, and cannot be your most-built one (unless it is your only one).": "Zaklęcie wybiera losowy budynek, na który byłoby Cię stać, mając dwa razy więcej ciastek, i daje Ci go za darmo. Wybrany budynek musi kosztować mniej niż %1 i nie może być tym, który budujesz najczęściej (chyba że masz tylko jeden).", + "Lose a random building.": "Strać losowy budynek.", + "No buildings to improve!": "Brak budynków do polepszenia!", + "Backfired, but no buildings to destroy!": "Doszło do pomyłki, lecz nie ma budynków do zniszczenia!", + "A new %1
bursts out of the ground.": "%1
wyrasta z ziemi.", + "One of your %1
disappears in a puff of smoke.": "%1
znika w chmurze dymu.", + "Haggler's Charm": "Urok przekupki", + "Upgrades are %1% cheaper for 1 minute.": "Ulepszenia są %1% tańsze przez 1 minutę.", + "Upgrades are %1% more expensive for an hour.": "Ulepszenia są %1% droższe przez godzinę.", + "Upgrades are cheaper!": "Ulepszenia są tańsze!", + "Upgrades are pricier!": "Ulepszenia są droższe!", + "Summon Crafty Pixies": "Przyzwij wróżki-rzemieślniczki", + "Buildings are %1% cheaper for 1 minute.": "Budynki są %1% tańsze przez 1 minutę.", + "Buildings are %1% more expensive for an hour.": "Budynki są %1% droższe przez godzinę.", + "Buildings are cheaper!": "Budynki są tańsze!", + "Buildings are pricier!": "Budynki są droższe!", + "Gambler's Fever Dream": "Szał hazardzisty", + "Cast a random spell at half the magic cost, with twice the chance of backfiring.": "Rzuć losowe zaklęcie za połowę ceny z dwa razy większym ryzykiem pomyłki.", + "No eligible spells!": "Brak zaklęć spełniających warunki!", + "That's too bad!
Magic refunded.": "Szkoda!
Magia zwrócona.", + "Casting %1
for %2 magic...": "Rzucam %1
za %2 magii...", + "Resurrect Abomination": "Wskrześ maszkarę", + "Instantly summon a wrinkler if conditions are fulfilled.": "Natychmiast przyzywa zmarszczkacza, jeśli warunki są spełnione.", + "Pop one of your wrinklers.": "Zgnieć jednego zmarszczkacza.", + "Unable to spawn a wrinkler!": "Nie można przywołać zmarszczkacza!", + "Rise, my precious!": "Powstań, mój najdroższy!", + "But no wrinkler was harmed.": "Żadnemu zmarszczkaczowi nie stała się krzywda.", + "So long, ugly...": "Żegnaj, brzydalu…", + "Diminish Ineptitude": "Redukcja niekompetencji", + "Spells backfire %1 times less for the next %2 minutes.": "Pomylone zaklęcia występują %1x rzadziej przez %2 min.", + "Spells backfire %1 times more for the next %2 minutes.": "Pomylone zaklęcia występują %1x częściej przez %2 min.", + "Ineptitude diminished!": "Niekompetencja zredukowana!", + "Ineptitude magnified!": "Niekompetencja spotęgowana!", + "Pantheon": "Panteon", + "[GOD 1 NAME]Holobore, Spirit of Asceticism": "Holobor, duch ascetyzmu", + "[GOD 1 QUOTE]An immortal life spent focusing on the inner self, away from the distractions of material wealth.": "Nieśmiertelna istota skupiona na życiu wewnętrznym, z dala od pokus materialnego bogactwa.", + "[GOD 2 NAME]Vomitrax, Spirit of Decadence": "Wymiotraks, duch dekadencji", + "[GOD 2 QUOTE]This sleazy spirit revels in the lust for quick easy gain and contempt for the value of steady work.": "Ten nikczemny duch pragnie szybkiego zysku i gardzi ciężką pracą.", + "[GOD 3 NAME]Godzamok, Spirit of Ruin": "Godzamok, duch ruiny", + "[GOD 3 QUOTE]The embodiment of natural disasters. An impenetrable motive drives the devastation caused by this spirit.": "Ucieleśnienie katastrof naturalnych. Nieznana siła motywuje tego siejącego zniszczenie ducha.", + "[GOD 4 NAME]Cyclius, Spirit of Ages": "Cyklus, duch czasu", + "[GOD 4 QUOTE]This spirit knows about everything you'll ever do, and enjoys dispensing a harsh judgment.": "Ten duch wie o wszystkim, co kiedykolwiek uczynisz, i z przyjemnością wydaje surowe osądy.", + "[GOD 5 NAME]Selebrak, Spirit of Festivities": "Celebrak, duch świętowania", + "[GOD 5 QUOTE]This is the spirit of merry getaways and regretful Monday mornings.": "Oto duch radosnego zapomnienia i bolesnych poniedziałków.", + "[GOD 6 NAME]Dotjeiess, Spirit of Creation": "Dotjeiess, duch stworzenia", + "[GOD 6 QUOTE]All things that be and ever will be were scripted long ago by this spirit's inscrutable tendrils.": "Wszystko, co jest i kiedykolwiek będzie, zostało zapisane dawno temu przez enigmatyczne kończyny tego ducha.", + "[GOD 7 NAME]Muridal, Spirit of Labor": "Muridal, duch pracy", + "[GOD 7 QUOTE]This spirit enjoys a good cheese after a day of hard work.": "Ten duch uwielbia dobry ser po dniu ciężkiej roboty.", + "[GOD 8 NAME]Jeremy, Spirit of Industry": "Jeremiasz, duch przemysłu", + "[GOD 8 QUOTE]While this spirit has many regrets, helping you rule the world through constant industrialization is not one of them.": "Choć ten duch ma powody do smutku, wspieranie Cię w podboju świata poprzez nieustanną industrializację nie jest jednym z nich.", + "[GOD 9 NAME]Mokalsium, Mother Spirit": "Mokalsium, duch-matka", + "[GOD 9 QUOTE]A caring spirit said to contain itself, inwards infinitely.": "Opiekuńczy duch, rzekomo o sercu bez dna.", + "[GOD 10 NAME]Skruuia, Spirit of Scorn": "Skruuia, duch pogardy", + "[GOD 10 QUOTE]This spirit enjoys poking foul beasts and watching them squirm, but has no love for its own family.": "Ten duch lubi prowokować bestie, obserwując ich cierpienia, i nie przepada za własną rodziną.", + "[GOD 11 NAME]Rigidel, Spirit of Order": "Reżym, duch organizacji", + "[GOD 11 QUOTE]You will find that life gets just a little bit sweeter if you can motivate this spirit with tidy numbers and properly-filled tax returns.": "Odkryjesz, że życie staje się łatwiejsze, kiedy motywujesz tego ducha uporządkowanymi liczbami i starannymi formularzami podatkowymi.", + "Diamond slot": "Diamentowe gniazdo", + "Ruby slot": "Rubinowe gniazdo", + "Jade slot": "Jadeitowe gniazdo", + "empty": "pusty", + "Release to assign %1 to this slot.": "Puść, by umieścić w tym gnieździe %1.", + "Drag a spirit onto this slot to assign it.": "Przeciągnij ducha do gniazda, by go przypisać.", + "If a golden cookie is clicked, this spirit is unslotted and all worship swaps will be used up.": "Po kliknięciu złotego ciastka duch zostaje usunięty z gniazda, a wszystkie wymiany bóstwa zostają zużyte.", + "Each time you slot a spirit, you use up one worship swap.
If you have 2 swaps left, the next one will refill after %1.
If you have 1 swap left, the next one will refill after %2.
If you have 0 swaps left, you will get one after %3.
Unslotting a spirit costs no swaps.": "Po każdym umieszczeniu ducha w gnieździe zużywasz jedną wymianę bóstwa.
Jeśli zostały Ci 2 wymiany, kolejna odnowi się za %1.
Jeśli została Ci 1 wymiana, kolejna odnowi się za %2.
Jeśli nie pozostała Ci żadna wymiana, kolejną otrzymasz po %3.
Usunięcie ducha z gniazda nie zużywa wymian.", + "Click to refill all your worship swaps for %1.": "Kliknij, by odnowić wymiany bóstwa za %1.", + "Worship swaps: %1": "Wymiany bóstwa: %1", + "next in %1": "następne za %1", + "The jade slot behaves as a ruby slot and the ruby slot behaves as a diamond slot.": "Miejsce jadeitowe zachowuje się tak jak miejsce rubinowe, a miejsce rubinowe - tak jak miejsce diamentowe.", + "Stock Market": "Giełda", + "[STOCK 1 NAME]Old Mills": "Stare Młyny", + "[STOCK 1 TYPE]Cereals": "Zboże", + "[STOCK 1 LOGO]CRL": "ZBO", + "[STOCK 2 NAME]Cocoa Excavations": "Kakaowe Wydobycie", + "[STOCK 2 TYPE]Chocolate": "Czekolada", + "[STOCK 2 LOGO]CHC": "CZK", + "[STOCK 3 NAME]Bovine Industries": "Bydłex", + "[STOCK 3 TYPE]Butter": "Masło", + "[STOCK 3 LOGO]BTR": "MAS", + "[STOCK 4 NAME]Candy Trust": "Łakocie i Spółka", + "[STOCK 4 TYPE]Sugar": "Cukier", + "[STOCK 4 LOGO]SUG": "CKR", + "[STOCK 5 NAME]Hazel Monastery": "Zakon Laskowy", + "[STOCK 5 TYPE]Nuts": "Orzechy", + "[STOCK 5 LOGO]NUT": "ORZ", + "[STOCK 6 NAME]Wacky Reagants": "Zbzikowane Odczyny", + "[STOCK 6 TYPE]Salt": "Sól", + "[STOCK 6 LOGO]SLT": "SOL", + "[STOCK 7 NAME]Cosmic Exports": "Kosmiczny Eksport", + "[STOCK 7 TYPE]Vanilla": "Wanilia", + "[STOCK 7 LOGO]VNL": "WNL", + "[STOCK 8 NAME]Organic Gnostics": "Organiczni Gnostycy", + "[STOCK 8 TYPE]Eggs": "Jaja", + "[STOCK 8 LOGO]EGG": "JAJ", + "[STOCK 9 NAME]Dimensional Exchange": "Wymiar Wymian", + "[STOCK 9 TYPE]Cinnamon": "Cynamon", + "[STOCK 9 LOGO]CNM": "CNM", + "[STOCK 10 NAME]Precision Aging": "Precyzyjne Wiekowanie", + "[STOCK 10 TYPE]Cream": "Śmietana", + "[STOCK 10 LOGO]CRM": "SMT", + "[STOCK 11 NAME]Pectin Research": "Badania nad Pektyną", + "[STOCK 11 TYPE]Jam": "Dżem", + "[STOCK 11 LOGO]JAM": "DZM", + "[STOCK 12 NAME]Dazzle Corp Ltd.": "Blaskorp", + "[STOCK 12 TYPE]White chocolate": "Biała czekolada", + "[STOCK 12 LOGO]WCH": "BCZ", + "[STOCK 13 NAME]Prosperity Hive": "Ulubione Ule", + "[STOCK 13 TYPE]Honey": "Miód", + "[STOCK 13 LOGO]HNY": "MIO", + "[STOCK 14 NAME]Selfmade Bakeries": "Swojskie Piekarnie", + "[STOCK 14 TYPE]Cookies": "Ciastka", + "[STOCK 14 LOGO]CKI": "CST", + "[STOCK 15 NAME]Figments Associated": "Związek Wytworów", + "[STOCK 15 TYPE]Recipes": "Przepisy", + "[STOCK 15 LOGO]RCP": "PRZ", + "[STOCK 16 NAME]Polyvalent Acquisitions": "Kupno Wielowartościowe", + "[STOCK 16 TYPE]Subsidiaries": "Filie", + "[STOCK 16 LOGO]SBD": "FIL", + "[STOCK 17 NAME]Great Minds": "Wielkie umysły", + "[STOCK 17 TYPE]Publicists": "Publicyści", + "[STOCK 17 LOGO]PBL": "PBL", + "from %1": "od %1", + "%1: currently worth $%2 per unit.": "%1: obecna wartość %2 na jednostkę.", + "You currently own %1 (worth $%2).": "W tej chwili posiadasz %1 (wartość: %2.", + "Your warehouses can store up to %1.": "Twoje magazyny mogą przechowywać do %1.", + "You may increase your storage space by upgrading your offices and by buying more %1. You also get %2 extra storage space per %3 level (currently: +%4).": "Możesz zwiększyć przestrzeń magazynową, ulepszając biura i kupując %1. Możesz też zdobyć %2 przestrzeni magazynowej na %3 poziom (obecnie: +%4).", + "The average worth of this stock and how high it can peak depends on the building it is tied to, along with the level of your %1.": "Średnia i maksymalna wartość tej akcji jest zależna od budynku, z którym jest związana, oraz poziomem '%1'.", + "%1 the hide button to toggle all other stocks.": "%1 przycisk ukrywania, by przełączyć wszystkie pozostałe akcje.", + "stock:": "akcje:", + "for $%1 each": "$%1 za każdą", + "last bought at
$%1 each": "ostatni zakup po
%1 $ za szt.", + "+%1% overhead": "+%1% kosztów stałych", + "value:": "wartość:", + "valued at %1": "wyceniane na %1", + "you spend:": "wydano:", + "you earn:": "zarobiono:", + "You cannot buy and sell this stock in the same tick.": "Nie możesz kupować i sprzedawać akcji w trakcie jednego etapu.", + "This is your office.": "To jest Twoje biuro.", + "It is fully upgraded. Its lavish interiors, spanning across innumerable floors, are host to many a decadent party, owing to your nigh-unfathomable wealth.": "Jest maksymalnie ulepszone. Liczy sobie wiele pięter i było miejscem wielu dekadenckich imprez. Wszystko dzięki Twojemu niewyobrażalnemu bogactwu.", + "Level %1 offices": "Biura na poziomie %1", + "Credit garage": "Garaż kredytowy", + "Tiny bank": "Baneczek", + "Loaning company": "Firma pożyczkowa", + "Finance headquarters": "Główna siedziba finansowa", + "International exchange": "Giełda międzynarodowa", + "Palace of Greed": "Pałac Chciwości", + "Upgrading will cost you %1.": "Ulepszenie będzie kosztować %1.", + "Upgrading requires %1.": "Ulepszenie wymaga %1.", + "Upgrading will grant you:": "Ulepszenie da Ci:", + "+1 loan slot": "+1 pole pożyczki", + "+1 opportunity slot": "+1 pole okazji", + "+%1 warehouse space for all goods": "+%1 przestrzeni magazynowej na wszystkie dobra", + "+%1% base warehouse space for all goods": "+%1% bazowej przestrzeni magazynowej na wszystkie dobra", + "Brokers:": "Maklerzy:", + "A nice broker to trade more cookies.": "Sympatyczny makler pomagający w handlu ciastkami.", + "Hire": "Zatrudnij", + "Buying goods normally incurs overhead costs of %1% extra. Each broker you hire reduces that cost by %2%.": "Kupowanie towarów zazwyczaj zwiększa koszty stałe o %1%. Każdy zatrudniony makler zmniejsza te koszty o %2%.", + "Current overhead costs thanks to your brokers: +%1%": "Obecne koszty stałe dzięki Twoim maklerom: +%1%", + "Buying a broker costs %1 of CpS (that's $%2).": "Makler kosztuje %1 z CnS (czyli $%2).", + "Maximum number of brokers you can own: %1 (the highest amount of grandmas you've owned this run, divided by 10, plus your grandma level)": "Maksymalna możliwa ilość posiadanych maklerów: %1 (najwyższa liczba posiadanych babci w trakcie tej rozgrywki podzielona przez 10, plus Twój poziom babci)", + "Brokers are Wall Street-class grandmas versed in the ways of finance. Stockbroker grandmas work hard and play hard, and will fight telephone in hand to get your clients the best possible deals - with a sizeable profit margin for you, of course.": "Maklerzy to babcie rodem z Wall Street obcykane z finansami. Babcie-maklerki ciężko pracują i zaciekle walczą z telefonem w dłoni, by zapewnić Twoim klientom jak najlepsze warunki - przy uwzględnieniu sporej działki dla Ciebie, oczywiście.", + "Hiring a new broker will cost you %1.": "Zatrudnienie nowego maklera będzie Cię kosztować %1.", + "Take out %1": "Wypłata %1", + "Loan #%1": "Pożyczka #%1", + "a modest loan": "skromna pożyczka", + "Buy that vintage car you've always wanted. Just pay us back.": "Kup to klasyczne auto, które Ci się marzyło. Tylko pamiętaj o długu.", + "a pawnshop loan": "pożyczka z lombardu", + "Bad credit? No problem. It's your money, and you need it now.": "Kiepska historia kredytowa? Żaden problem. To Twoja kasa i potrzebujesz jej teraz.", + "a retirement loan": "pożyczka emerytalna", + "Finance your next house, boat, spouse, etc. You've earned it.": "Sfinansuj swój następny dom, jacht, żonę… obojętnie. Należy Ci się.", + "By taking this loan, you will get %1 CpS for the next %2.": "Biorąc tę pożyczkę, otrzymasz %1 CnS przez %2.", + "However, you will get %1 CpS for the next %2 after that.": "Lecz potem Twój CnS spadnie do %1 przez %2.", + "You must also pay an immediate downpayment of %1 (%2% of your current bank).": "Musisz też wpłacić natychmiastową zaliczkę w wysokości %1 (%2% z obecnego banku).", + "Loan over": "Koniec pożyczki", + "Your loan has expired, and you must now repay the interest.": "Skończył się czas trwania pożyczki. Musisz spłacić odsetki.", + "Line style": "Styl linii", + "Color mode": "Tryb koloru", + "Toggle speed": "Przełączanie prędkości", + "Click to refill your opportunity timer (and give a quick burst to your economy) for %1.": "Kliknij, by zresetować czasomierz okazji (i zasilić gospodarkę) za %1.", + "Profits: %1. All prices are in $econds of your highest raw cookies per second.": "Zysk: %1. Wszystkie ceny są $ekundy od Twojej najwyższej wartości ciastek na sekundę.", + "The stock market is more chaotic.": "Giełda jest bardziej nieprzewidywalna.", + "[Upgrade name 0]Reinforced index finger": "Wzmocniony palec wskazujący", + "[Upgrade name 1]Carpal tunnel prevention cream": "Maść przeciwko zespołowi ciśnień nadgarstka", + "[Upgrade name 2]Ambidextrous": "Oburęczny", + "[Upgrade name 3]Thousand fingers": "Tysiąc palców", + "[Upgrade name 4]Million fingers": "Milion palców", + "[Upgrade name 5]Billion fingers": "Miliard palców", + "[Upgrade name 6]Trillion fingers": "Bilion palców", + "[Upgrade name 7]Forwards from grandma": "Doping babci", + "[Upgrade name 8]Steel-plated rolling pins": "Stalowe wałki do ciasta", + "[Upgrade name 9]Lubricated dentures": "Nawilżane protezy", + "[Upgrade name 10]Cheap hoes": "Tanie motyki", + "[Upgrade name 11]Fertilizer": "Nawóz", + "[Upgrade name 12]Cookie trees": "Drzewka ciastkowe", + "[Upgrade name 13]Sturdier conveyor belts": "Wytrzymalsze taśmociągi", + "[Upgrade name 14]Child labor": "Praca dzieci", + "[Upgrade name 15]Sweatshop": "Obozy pracy", + "[Upgrade name 16]Sugar gas": "Gaz cukrowy", + "[Upgrade name 17]Megadrill": "Megawiertło", + "[Upgrade name 18]Ultradrill": "Ultrawiertło", + "[Upgrade name 19]Vanilla nebulae": "Waniliowe mgławice", + "[Upgrade name 20]Wormholes": "Tunele czasoprzestrzenne", + "[Upgrade name 21]Frequent flyer": "Częsty lotnik", + "[Upgrade name 22]Antimony": "Antymony", + "[Upgrade name 23]Essence of dough": "Esencja ciasta", + "[Upgrade name 24]True chocolate": "Prawdziwa czekolada", + "[Upgrade name 25]Ancient tablet": "Starożytna tabliczka", + "[Upgrade name 26]Insane oatling workers": "Szaleni pracownicy owsa ", + "[Upgrade name 27]Soul bond": "Połączenie dusz", + "[Upgrade name 28]Flux capacitors": "Kondensatory strumienia", + "[Upgrade name 29]Time paradox resolver": "Rozwiązanie paradoksu podróży w czasie", + "[Upgrade name 30]Quantum conundrum": "Łamigłówka kwantowa", + "[Upgrade name 31]Kitten helpers": "Koci pomocnicy", + "[Upgrade name 32]Kitten workers": "Koci pracownicy", + "[Upgrade name 33]Plain cookies": "Zwykle ciastka", + "[Upgrade name 34]Sugar cookies": "Cukrowe ciastka", + "[Upgrade name 35]Oatmeal raisin cookies": "Ciastka owsiane z rodzynkami", + "[Upgrade name 36]Peanut butter cookies": "Ciastka z masłem orzechowym", + "[Upgrade name 37]Coconut cookies": "Ciastka kokosowe", + "[Upgrade name 38]White chocolate cookies": "Ciastka z białą czekoladą", + "[Upgrade name 39]Macadamia nut cookies": "Ciastka z orzechami makadamia", + "[Upgrade name 40]Double-chip cookies": "Ciastka podwójnie czekoladowe", + "[Upgrade name 41]White chocolate macadamia nut cookies": "Ciastka z białą czekoladą i orzechami makadamia", + "[Upgrade name 42]All-chocolate cookies": "Ciastka całkowicie czekoladowe", + "[Upgrade name 43]Quadrillion fingers": "Kwadrylion palców", + "[Upgrade name 44]Prune juice": "Sok z suszonych śliwek", + "[Upgrade name 45]Genetically-modified cookies": "Genetycznie modyfikowane ciastka", + "[Upgrade name 46]Radium reactors": "Reaktory radowe", + "[Upgrade name 47]Ultimadrill": "Ultymawiertło", + "[Upgrade name 48]Warp drive": "Napęd nadświetlny", + "[Upgrade name 49]Ambrosia": "Ambrozja", + "[Upgrade name 50]Sanity dance": "Taniec poczytalności", + "[Upgrade name 51]Causality enforcer": "Egzekutor przyczynowości", + "[Upgrade name 52]Lucky day": "Szczęśliwy dzień", + "[Upgrade name 53]Serendipity": "Szczęśliwy traf", + "[Upgrade name 54]Kitten engineers": "Koci inżynierowie", + "[Upgrade name 55]Dark chocolate-coated cookies": "Ciasteczka w polewie z ciemnej czekolady", + "[Upgrade name 56]White chocolate-coated cookies": "Ciasteczka w polewie z białej czekolady", + "[Upgrade name 57]Farmer grandmas": "Babcie-hodowczynie", + "[Upgrade name 58]Miner grandmas": "Babcie-górniczki", + "[Upgrade name 59]Worker grandmas": "Babcie-pracownice", + "[Upgrade name 60]Cosmic grandmas": "Babcie-kosmonautki", + "[Upgrade name 61]Transmuted grandmas": "Babcie transmutowane", + "[Upgrade name 62]Altered grandmas": "Babcie przemienione", + "[Upgrade name 63]Grandmas' grandmas": "Babcine babcie", + "[Upgrade name 64]Bingo center/Research facility": "Centrum bingo / placówka badawcza", + "[Upgrade name 65]Specialized chocolate chips": "Specjalistyczne płatki czekolady", + "[Upgrade name 66]Designer cocoa beans": "Designerskie ziarna kakaowca", + "[Upgrade name 67]Ritual rolling pins": "Rytualne wałki", + "[Upgrade name 68]Underworld ovens": "Podmorskie piekarniki", + "[Upgrade name 69]One mind": "Jeden umysł", + "[Upgrade name 70]Exotic nuts": "Egzotyczne orzechy", + "[Upgrade name 71]Communal brainsweep": "Społeczne czyszczenie mózgów", + "[Upgrade name 72]Arcane sugar": "Tajemny cukier", + "[Upgrade name 73]Elder Pact": "Pakt starszyzny", + "[Upgrade name 74]Elder Pledge": "Obietnica starszyzny", + "[Upgrade name 75]Plastic mouse": "Plastikowa mysz", + "[Upgrade name 76]Iron mouse": "Żelazna mysz", + "[Upgrade name 77]Titanium mouse": "Tytanowa mysz", + "[Upgrade name 78]Adamantium mouse": "Adamantowa mysz", + "[Upgrade name 79]Ultrascience": "Ultranauka", + "[Upgrade name 80]Eclipse cookies": "Ciastka zaćmieniowe", + "[Upgrade name 81]Zebra cookies": "Ciastka zebrowe", + "[Upgrade name 82]Quintillion fingers": "Kwintylion palców", + "[Upgrade name 83]Gold hoard": "Zapasy złota", + "[Upgrade name 84]Elder Covenant": "Porozumienie starszyzny", + "[Upgrade name 85]Revoke Elder Covenant": "Unieważnienie porozumienia starszyzny", + "[Upgrade name 86]Get lucky": "Fart", + "[Upgrade name 87]Sacrificial rolling pins": "Ofiarne wałki do ciasta", + "[Upgrade name 88]Snickerdoodles": "Ciastka cynamonowe", + "[Upgrade name 89]Stroopwafels": "Wafle z syropem", + "[Upgrade name 90]Macaroons": "Makaroniki", + "[Upgrade name 91]Neuromancy": "Neuromancja", + "[Upgrade name 92]Empire biscuits": "Herbatniki imperialne", + "[Upgrade name 93]British tea biscuits": "Herbatniki brytyjskie", + "[Upgrade name 94]Chocolate british tea biscuits": "Czekoladowe herbatniki brytyjskie", + "[Upgrade name 95]Round british tea biscuits": "Okrągłe herbatniki brytyjskie", + "[Upgrade name 96]Round chocolate british tea biscuits": "Okrągłe czekoladowe herbatniki brytyjskie", + "[Upgrade name 97]Round british tea biscuits with heart motif": "Okrągłe herbatniki brytyjskie z motywem serca", + "[Upgrade name 98]Round chocolate british tea biscuits with heart motif": "Okrągłe czekoladowe herbatniki brytyjskie z motywem serca", + "[Upgrade name 99]Sugar bosons": "Cukrowe bozony", + "[Upgrade name 100]String theory": "Teoria strun", + "[Upgrade name 101]Large macaron collider": "Wielki zderzacz makaroników", + "[Upgrade name 102]Big bang bake": "Teoria wielkiego pieczenia", + "[Upgrade name 103]Antigrandmas": "Antybabcie", + "[Upgrade name 104]Madeleines": "Magdalenki", + "[Upgrade name 105]Palmiers": "Palmiery", + "[Upgrade name 106]Palets": "Krążki", + "[Upgrade name 107]Sablés": "Francuskie sablé", + "[Upgrade name 108]Kitten overseers": "Zamorskie kociaki", + "[Upgrade name 109]Sextillion fingers": "Sekstylion palców", + "[Upgrade name 110]Double-thick glasses": "Okulary ze szkłami jak denka słoików", + "[Upgrade name 111]Gingerbread scarecrows": "Piernikowe strachy na wróble", + "[Upgrade name 112]Recombobulators": "Rekontenansor", + "[Upgrade name 113]H-bomb mining": "Wydobycie ładunkami termojądrowymi", + "[Upgrade name 114]Chocolate monoliths": "Czekoladowe monolity", + "[Upgrade name 115]Aqua crustulae": "Aqua crustulae", + "[Upgrade name 116]Brane transplant": "Przeszczep brany", + "[Upgrade name 117]Yestermorrow comparators": "Komparatory przedjutrza", + "[Upgrade name 118]Reverse cyclotrons": "Cyklotrony wsteczne", + "[Upgrade name 119]Unobtainium mouse": "Mysz z nieosiągalnium", + "[Upgrade name 120]Caramoas": "Karamosy", + "[Upgrade name 121]Sagalongs": "Sagalongi", + "[Upgrade name 122]Shortfoils": "Szortfole", + "[Upgrade name 123]Win mints": "Miętowe wafelki", + "[Upgrade name 124]Perfect idling": "Idealne nicnierobienie", + "[Upgrade name 125]Fig gluttons": "Figowe biszkopty", + "[Upgrade name 126]Loreols": "Loreosy", + "[Upgrade name 127]Jaffa cakes": "Delicje", + "[Upgrade name 128]Grease's cups": "Tartaletki Grease'a", + "[Upgrade name 129]Heavenly chip secret": "Sekret niebiańskiego żetonu", + "[Upgrade name 130]Heavenly cookie stand": "Stoisko z niebiańskimi ciastkami", + "[Upgrade name 131]Heavenly bakery": "Niebiańska piekarnia", + "[Upgrade name 132]Heavenly confectionery": "Niebiańska cukiernica", + "[Upgrade name 133]Heavenly key": "Niebiański klucz", + "[Upgrade name 134]Skull cookies": "Ciastka czaszkowe", + "[Upgrade name 135]Ghost cookies": "Ciastka zjawowe", + "[Upgrade name 136]Bat cookies": "Ciastka nietoperzowe", + "[Upgrade name 137]Slime cookies": "Ciastka szlamowe", + "[Upgrade name 138]Pumpkin cookies": "Ciastka dyniowe", + "[Upgrade name 139]Eyeball cookies": "Ciastka gałkooczne", + "[Upgrade name 140]Spider cookies": "Ciastka pajęcze", + "[Upgrade name 141]Persistent memory": "Trwała pamięć", + "[Upgrade name 142]Wrinkler doormat": "Wycieraczka ze zmarszczkaczem", + "[Upgrade name 143]Christmas tree biscuits": "Herbatniki bożonarodzeniowe", + "[Upgrade name 144]Snowflake biscuits": "Herbatniki śnieżne", + "[Upgrade name 145]Snowman biscuits": "Herbatniki bałwanie", + "[Upgrade name 146]Holly biscuits": "Herbatniki ostrokrzewne", + "[Upgrade name 147]Candy cane biscuits": "Herbatniki w kształcie laski cukrowej", + "[Upgrade name 148]Bell biscuits": "Herbatniki w kształcie dzwonu", + "[Upgrade name 149]Present biscuits": "Herbatniki prezentowe", + "[Upgrade name 150]Gingerbread men": "Piernikowy ludzik", + "[Upgrade name 151]Gingerbread trees": "Piernikowe drzewa", + "[Upgrade name 152]A festive hat": "Świąteczna czapka", + "[Upgrade name 153]Increased merriness": "Zwiększona radość", + "[Upgrade name 154]Improved jolliness": "Ulepszona wesołość", + "[Upgrade name 155]A lump of coal": "Grudka węgla", + "[Upgrade name 156]An itchy sweater": "Gryzący sweter", + "[Upgrade name 157]Reindeer baking grounds": "Tereny pieczenia reniferów", + "[Upgrade name 158]Weighted sleighs": "Obciążone sanie", + "[Upgrade name 159]Ho ho ho-flavored frosting": "Polewa o smaku ho-ho-ho", + "[Upgrade name 160]Season savings": "Oszczędności sezonowe", + "[Upgrade name 161]Toy workshop": "Warsztat zabawkarski", + "[Upgrade name 162]Naughty list": "Lista osób niegrzecznych", + "[Upgrade name 163]Santa's bottomless bag": "Mikołajowy worek bez dna", + "[Upgrade name 164]Santa's helpers": "Pomocnicy Mikołaja", + "[Upgrade name 165]Santa's legacy": "Dziedzictwo Mikołaja", + "[Upgrade name 166]Santa's milk and cookies": "Ciastka i mleko Mikołaja", + "[Upgrade name 167]Reindeer season": "Sezon renifera", + "[Upgrade name 168]Santa's dominion": "Królestwo Mikołaja", + "[Upgrade name 169]Pure heart biscuits": "Ciastka czystego serca", + "[Upgrade name 170]Ardent heart biscuits": "Ciastka żarliwego serca", + "[Upgrade name 171]Sour heart biscuits": "Ciastka kwaśnego serca", + "[Upgrade name 172]Weeping heart biscuits": "Ciastka płaczącego serca", + "[Upgrade name 173]Golden heart biscuits": "Ciastka złotego serca", + "[Upgrade name 174]Eternal heart biscuits": "Ciastka wiecznego serca", + "[Upgrade name 175]Gem polish": "Polerka do klejnotów", + "[Upgrade name 176]9th color": "9 kolor", + "[Upgrade name 177]Chocolate light": "Czekoladowe światło", + "[Upgrade name 178]Grainbow": "Plontęcza", + "[Upgrade name 179]Pure cosmic light": "Czyste światło kosmiczne", + "[Upgrade name 180]Rainbow grandmas": "Tęczowe babcie", + "[Upgrade name 181]Season switcher": "Przełącznik sezonów", + "[Upgrade name 182]Festive biscuit": "Herbatnik świąteczny", + "[Upgrade name 183]Ghostly biscuit": "Herbatnik zjawowy", + "[Upgrade name 184]Lovesick biscuit": "Herbatnik miłosny", + "[Upgrade name 185]Fool's biscuit": "Herbatnik głupców", + "[Upgrade name 186]Eternal seasons": "Wieczne sezony", + "[Upgrade name 187]Kitten managers": "Koci kierownicy", + "[Upgrade name 188]Septillion fingers": "Septylion palców", + "[Upgrade name 189]Octillion fingers": "Oktylion palców", + "[Upgrade name 190]Eludium mouse": "Mysz z eterycznium", + "[Upgrade name 191]Wishalloy mouse": "Mysz ze stopu życzenium", + "[Upgrade name 192]Aging agents": "Środki postarzające", + "[Upgrade name 193]Pulsar sprinklers": "Spryskiwacze pulsarowe", + "[Upgrade name 194]Deep-bake process": "Proces głębokiego pieczenia", + "[Upgrade name 195]Coreforge": "Eksploracja jądra ziemi", + "[Upgrade name 196]Generation ship": "Statek pokoleń", + "[Upgrade name 197]Origin crucible": "Tygiel pochodzenia", + "[Upgrade name 198]Deity-sized portals": "Wrota rozmiarów boskich", + "[Upgrade name 199]Far future enactment": "Zarządzanie odległą przyszłością", + "[Upgrade name 200]Nanocosmics": "Nanokosmika", + "[Upgrade name 201]Glow-in-the-dark": "Świecenie w ciemnościach", + "[Upgrade name 202]Rose macarons": "Różane makaroniki", + "[Upgrade name 203]Lemon macarons": "Cytrynowe makaroniki", + "[Upgrade name 204]Chocolate macarons": "Czekoladowe makaroniki", + "[Upgrade name 205]Pistachio macarons": "Pistacjowe makaroniki", + "[Upgrade name 206]Hazelnut macarons": "Orzechowe makaroniki", + "[Upgrade name 207]Violet macarons": "Fioletowe makaroniki", + "[Upgrade name 208]Magic shenanigans": "Magiczne przekręty", + "[Upgrade name 209]Bunny biscuit": "Herbatnik króliczy", + "[Upgrade name 210]Chicken egg": "Jajo kurze", + "[Upgrade name 211]Duck egg": "Jajo kacze", + "[Upgrade name 212]Turkey egg": "Jajo indycze", + "[Upgrade name 213]Quail egg": "Jajo przepiórcze", + "[Upgrade name 214]Robin egg": "Jajo drozda", + "[Upgrade name 215]Ostrich egg": "Jajo strusia", + "[Upgrade name 216]Cassowary egg": "Jajo kazuara", + "[Upgrade name 217]Salmon roe": "Ikra łososia", + "[Upgrade name 218]Frogspawn": "Żabki skrzek", + "[Upgrade name 219]Shark egg": "Jajo rekina", + "[Upgrade name 220]Turtle egg": "Jajko żółwia", + "[Upgrade name 221]Ant larva": "Mrówcza larwa", + "[Upgrade name 222]Golden goose egg": "Jajo złotej gęsi", + "[Upgrade name 223]Faberge egg": "Jajo Faberge", + "[Upgrade name 224]Wrinklerspawn": "Skrzek zmarszczkacza", + "[Upgrade name 225]Cookie egg": "Jajo ciastkowe", + "[Upgrade name 226]Omelette": "Omlet", + "[Upgrade name 227]Chocolate egg": "Jajo czekoladowe", + "[Upgrade name 228]Century egg": "Jajo stuletnie", + "[Upgrade name 229]\"egg\"": "„jajo”", + "[Upgrade name 230]Caramel macarons": "Karmelowe makaroniki", + "[Upgrade name 231]Licorice macarons": "Lukrecjowe makaroniki", + "[Upgrade name 232]Taller tellers": "Wyższe bankomaty", + "[Upgrade name 233]Scissor-resistant credit cards": "Nożycoodporne karty kredytowe", + "[Upgrade name 234]Acid-proof vaults": "Kwasoodporne skarbce", + "[Upgrade name 235]Chocolate coins": "Czekoladowe monety", + "[Upgrade name 236]Exponential interest rates": "Wykładnicze stopy procentowe", + "[Upgrade name 237]Financial zen": "Finansowy zen", + "[Upgrade name 238]Golden idols": "Złote bożki", + "[Upgrade name 239]Sacrifices": "Poświęcenia", + "[Upgrade name 240]Delicious blessing": "Smakowite błogosławieństwo", + "[Upgrade name 241]Sun festival": "Święto słońca", + "[Upgrade name 242]Enlarged pantheon": "Rozszerzony panteon", + "[Upgrade name 243]Great Baker in the sky": "Wielki Piekarz w niebie", + "[Upgrade name 244]Pointier hats": "Bardziej szpiczaste czapki", + "[Upgrade name 245]Beardlier beards": "Bardziej kudłate brody", + "[Upgrade name 246]Ancient grimoires": "Starożytne grymuary", + "[Upgrade name 247]Kitchen curses": "Kuchenne klątwy", + "[Upgrade name 248]School of sorcery": "Szkoła magii", + "[Upgrade name 249]Dark formulas": "Mroczne przepisy", + "[Upgrade name 250]Banker grandmas": "Babcie-piekarki", + "[Upgrade name 251]Priestess grandmas": "Babcie-kapłanki", + "[Upgrade name 252]Witch grandmas": "Babcie-wiedźmy", + "[Upgrade name 253]Tin of british tea biscuits": "Puszka herbatników brytyjskich", + "[Upgrade name 254]Box of macarons": "Pudełko makaroników", + "[Upgrade name 255]Box of brand biscuits": "Pudełko markowych herbatników", + "[Upgrade name 256]Pure black chocolate cookies": "Ciastka w całości z ciemnej czekolady", + "[Upgrade name 257]Pure white chocolate cookies": "Ciastka w całości z białej czekolady", + "[Upgrade name 258]Ladyfingers": "Biszkopty", + "[Upgrade name 259]Tuiles": "Tuile", + "[Upgrade name 260]Chocolate-stuffed biscuits": "Herbatniki z czekoladowym nadzieniem", + "[Upgrade name 261]Checker cookies": "Ciastka dwukolorowe", + "[Upgrade name 262]Butter cookies": "Ciastka maślane", + "[Upgrade name 263]Cream cookies": "Ciastka śmietanowe", + "[Upgrade name 264]Permanent upgrade slot I": "Miejsce na ulepszenie stałe nr I", + "[Upgrade name 265]Permanent upgrade slot II": "Miejsce na ulepszenie stałe nr II", + "[Upgrade name 266]Permanent upgrade slot III": "Miejsce na ulepszenie stałe nr III", + "[Upgrade name 267]Permanent upgrade slot IV": "Miejsce na ulepszenie stałe nr IV", + "[Upgrade name 268]Permanent upgrade slot V": "Miejsce na ulepszenie stałe nr V", + "[Upgrade name 269]Starspawn": "Gwiezdna płodność", + "[Upgrade name 270]Starsnow": "Gwiezdny śnieg", + "[Upgrade name 271]Starterror": "Gwiezdne strachy", + "[Upgrade name 272]Starlove": "Gwiezdna miłość", + "[Upgrade name 273]Startrade": "Gwiezdny handel", + "[Upgrade name 274]Angels": "Aniołowie", + "[Upgrade name 275]Archangels": "Archaniołowie", + "[Upgrade name 276]Virtues": "Zalety", + "[Upgrade name 277]Dominions": "Królestwa", + "[Upgrade name 278]Cherubim": "Cherubiny", + "[Upgrade name 279]Seraphim": "Serafini", + "[Upgrade name 280]God": "Bóg", + "[Upgrade name 281]Twin Gates of Transcendence": "Podwójne Wrota Transcendencji", + "[Upgrade name 282]Heavenly luck": "Niebiańskie szczęście", + "[Upgrade name 283]Lasting fortune": "Wieczne szczęście", + "[Upgrade name 284]Decisive fate": "Decydujący los", + "[Upgrade name 285]Divine discount": "Boska obniżka", + "[Upgrade name 286]Divine sales": "Boska wyprzedaż", + "[Upgrade name 287]Divine bakeries": "Boskie piekarnie", + "[Upgrade name 288]Starter kit": "Zestaw startowy", + "[Upgrade name 289]Starter kitchen": "Kuchnia startowa", + "[Upgrade name 290]Halo gloves": "Rękawice z aureolą", + "[Upgrade name 291]Kitten angels": "Koci aniołowie", + "[Upgrade name 292]Unholy bait": "Nieświęta przynęta", + "[Upgrade name 293]Sacrilegious corruption": "Świętokradcze zepsucie", + "[Upgrade name 294]Xtreme walkers": "Ekstremalni spacerowicze", + "[Upgrade name 295]Fudge fungus": "Krówkowy grzyb", + "[Upgrade name 296]Planetsplitters": "Rozszczepiacze planet", + "[Upgrade name 297]Cyborg workforce": "Cyborgowa siła robocza", + "[Upgrade name 298]Way of the wallet": "Droga portfela", + "[Upgrade name 299]Creation myth": "Mit stworzenia", + "[Upgrade name 300]Cookiemancy": "Ciastkomancja", + "[Upgrade name 301]Dyson sphere": "Sfera Dysona", + "[Upgrade name 302]Theory of atomic fluidity": "Teoria płynności atomowej", + "[Upgrade name 303]End of times back-up plan": "Plan awaryjny na wypadek końca świata", + "[Upgrade name 304]Great loop hypothesis": "Hipoteza wielkiego skoku", + "[Upgrade name 305]The Pulse": "Puls", + "[Upgrade name 306]Lux sanctorum": "Lux sanctorum", + "[Upgrade name 307]The Unbridling": "Nieokiełznanie", + "[Upgrade name 308]Wheat triffids": "Pszeniczne biszkopty", + "[Upgrade name 309]Canola oil wells": "Studnie oleju rzepakowego", + "[Upgrade name 310]78-hour days": "78-godzinne dni", + "[Upgrade name 311]The stuff rationale": "Uzasadnienie rzeczy", + "[Upgrade name 312]Theocracy": "Teokracja", + "[Upgrade name 313]Rabbit trick": "Królicza sztuczka", + "[Upgrade name 314]The final frontier": "Ostateczna granica", + "[Upgrade name 315]Beige goo": "Beżowa breja", + "[Upgrade name 316]Maddening chants": "Ogłupiające pieśni", + "[Upgrade name 317]Cookietopian moments of maybe": "Ciastkotopijne momenty zwątpienia", + "[Upgrade name 318]Some other super-tiny fundamental particle? Probably?": "Jakaś inna maluteńka cząstka podstawowa? Może?", + "[Upgrade name 319]Reverse shadows": "Odwrócone cienie", + "[Upgrade name 320]Kitten accountants": "Koci księgowi", + "[Upgrade name 321]Kitten specialists": "Koci specjaliści", + "[Upgrade name 322]Kitten experts": "Koci eksperci", + "[Upgrade name 323]How to bake your dragon": "Jak upiec smoka", + "[Upgrade name 324]A crumbly egg": "Kruche jajko", + "[Upgrade name 325]Chimera": "Chimera", + "[Upgrade name 326]Tin of butter cookies": "Puszka ciastek maślanych", + "[Upgrade name 327]Golden switch": "Złoty przełącznik", + "[Upgrade name 328]Classic dairy selection": "Klasyczny wybór nabiału", + "[Upgrade name 329]Fanciful dairy selection": "Fantazyjny wybór nabiału", + "[Upgrade name 330]Dragon cookie": "Smocze ciastko", + "[Upgrade name 331]Golden switch [off]": "Złoty przełącznik [wył.]", + "[Upgrade name 332]Golden switch [on]": "Złoty przełącznik [wł.]", + "[Upgrade name 333]Milk selector": "Wybierak mleka", + "[Upgrade name 334]Milk chocolate butter biscuit": "Ciastko maślane z czekoladą mleczną", + "[Upgrade name 335]Dark chocolate butter biscuit": "Ciastko maślane z ciemną czekoladą", + "[Upgrade name 336]White chocolate butter biscuit": "Ciastko maślane z białą czekoladą", + "[Upgrade name 337]Ruby chocolate butter biscuit": "Ciastko maślane z czekoladą rubinową", + "[Upgrade name 338]Gingersnaps": "Pierniczki", + "[Upgrade name 339]Cinnamon cookies": "Ciastka cynamonowe", + "[Upgrade name 340]Vanity cookies": "Ciastka próżności", + "[Upgrade name 341]Cigars": "Cygara", + "[Upgrade name 342]Pinwheel cookies": "Ciastka spiralne", + "[Upgrade name 343]Fudge squares": "Kwadratowe krówki", + "[Upgrade name 344]Digits": "Cyfry", + "[Upgrade name 345]Butter horseshoes": "Maślane rogaliki", + "[Upgrade name 346]Butter pucks": "Maślane talarki", + "[Upgrade name 347]Butter knots": "Maślane węzełki", + "[Upgrade name 348]Butter slabs": "Maślane tabliczki", + "[Upgrade name 349]Butter swirls": "Maślane zawijki", + "[Upgrade name 350]Shortbread biscuits": "Herbatniki szkockie", + "[Upgrade name 351]Millionaires' shortbreads": "Herbatniki szkockie z warstwą karmelu", + "[Upgrade name 352]Caramel cookies": "Karmelowe ciastka", + "[Upgrade name 353]Belphegor": "Belfegor", + "[Upgrade name 354]Mammon": "Mamon", + "[Upgrade name 355]Abaddon": "Abaddon", + "[Upgrade name 356]Satan": "Szatan", + "[Upgrade name 357]Asmodeus": "Asmodeusz", + "[Upgrade name 358]Beelzebub": "Belzebub", + "[Upgrade name 359]Lucifer": "Lucyfer", + "[Upgrade name 360]Golden cookie alert sound": "Dźwięk ostrzegawczy złotych ciastek", + "[Upgrade name 361]Golden cookie sound selector": "Wybierak dźwięku ostrzegawczego złotych ciastek", + "[Upgrade name 362]Basic wallpaper assortment": "Podstawowy wybór tapet", + "[Upgrade name 363]Legacy": "Dziedzictwo", + "[Upgrade name 364]Elder spice": "Przyprawa starszyzny", + "[Upgrade name 365]Residual luck": "Resztka szczęścia", + "[Upgrade name 366]Fantasteel mouse": "Mysz z fantastali", + "[Upgrade name 367]Nevercrack mouse": "Mysz z niełamlimium", + "[Upgrade name 368]Five-finger discount": "Podwędzana okazja", + "[Upgrade name 369]Future almanacs": "Almanachy przyszłości", + "[Upgrade name 370]Rain prayer": "Modlitwa o deszcz", + "[Upgrade name 371]Seismic magic": "Magia sejsmiczna", + "[Upgrade name 372]Asteroid mining": "Górnictwo asteroidalne", + "[Upgrade name 373]Quantum electronics": "Elektronika kwantowa", + "[Upgrade name 374]Temporal overclocking": "Chwilowe podkręcanie", + "[Upgrade name 375]Contracts from beyond": "Umowy pozaziemskie", + "[Upgrade name 376]Printing presses": "Prasy drukarskie", + "[Upgrade name 377]Paganism": "Pogaństwo", + "[Upgrade name 378]God particle": "Boska cząstka", + "[Upgrade name 379]Arcane knowledge": "Tajemna wiedza", + "[Upgrade name 380]Magical botany": "Botanika magiczna", + "[Upgrade name 381]Fossil fuels": "Paliwa kopalne", + "[Upgrade name 382]Shipyards": "Stocznie", + "[Upgrade name 383]Primordial ores": "Pierwotne rudy", + "[Upgrade name 384]Gold fund": "Fundusz złota", + "[Upgrade name 385]Infernal crops": "Piekielne zboża", + "[Upgrade name 386]Abysmal glimmer": "Okropne migotanie", + "[Upgrade name 387]Relativistic parsec-skipping": "Relatywistyczne pomijanie parseków", + "[Upgrade name 388]Primeval glow": "Pierwotny błysk", + "[Upgrade name 389]Extra physics funding": "Dodatkowe finansowanie fizyki", + "[Upgrade name 390]Chemical proficiency": "Biegłość chemiczna", + "[Upgrade name 391]Light magic": "Magia świetlna", + "[Upgrade name 392]Mystical energies": "Mistyczne energie", + "[Upgrade name 393]Synergies Vol. I": "Synergie cz. I", + "[Upgrade name 394]Synergies Vol. II": "Synergie cz. II", + "[Upgrade name 395]Heavenly cookies": "Niebiańskie ciastka", + "[Upgrade name 396]Wrinkly cookies": "Pomarszczone ciastka", + "[Upgrade name 397]Distilled essence of redoubled luck": "Destylat z podwójnego szczęścia", + "[Upgrade name 398]Occult obstruction": "Okultystyczna niedrożność", + "[Upgrade name 399]Glucose-charged air": "Powietrze przesycone glukozą", + "[Upgrade name 400]Lavender chocolate butter biscuit": "Ciastko maślane z czekoladą lawendową", + "[Upgrade name 401]Lombardia cookies": "Ciastka lombardzkie", + "[Upgrade name 402]Bastenaken cookies": "Ciastka bastońskie", + "[Upgrade name 403]Pecan sandies": "Ciastka z pekanami", + "[Upgrade name 404]Moravian spice cookies": "Morawskie ciastka korzenne", + "[Upgrade name 405]Anzac biscuits": "Ciastka anzac", + "[Upgrade name 406]Buttercakes": "Maślanki", + "[Upgrade name 407]Ice cream sandwiches": "Kanapki lodowe", + "[Upgrade name 408]Stevia Caelestis": "Stevia Caelestis", + "[Upgrade name 409]Diabetica Daemonicus": "Diabetica Daemonicus", + "[Upgrade name 410]Sucralosia Inutilis": "Sucralosia Inutilis", + "[Upgrade name 411]Lucky digit": "Szczęśliwa cyfra", + "[Upgrade name 412]Lucky number": "Szczęśliwa liczba", + "[Upgrade name 413]Lucky payout": "Szczęśliwa wypłata", + "[Upgrade name 414]Background selector": "Wybierak tła", + "[Upgrade name 415]Lucky grandmas": "Szczęśliwe babcie", + "[Upgrade name 416]Your lucky cookie": "Twoje szczęśliwe ciastko", + "[Upgrade name 417]\"All Bets Are Off\" magic coin": "Magiczny żeton „koniec zakładów”", + "[Upgrade name 418]Winning lottery ticket": "Zwycięski kupon na loterię", + "[Upgrade name 419]Four-leaf clover field": "Pole czterolistnych koniczyn", + "[Upgrade name 420]A recipe book about books": "Książka z przepisami nt. książek", + "[Upgrade name 421]Leprechaun village": "Wioska skrzatów", + "[Upgrade name 422]Improbability drive": "Napęd nieprawdopodobieństwa", + "[Upgrade name 423]Antisuperstistronics": "Antysuperstistronika", + "[Upgrade name 424]Gemmed talismans": "Talizmany z klejnotem", + "[Upgrade name 425]Kitten consultants": "Koci konsultanci", + "[Upgrade name 426]Birthday cookie": "Ciastko urodzinowe", + "[Upgrade name 427]Armythril mouse": "Mysz z armiobetonu", + "[Upgrade name 428]Reverse dementia": "Odwrócona demencja", + "[Upgrade name 429]Humane pesticides": "Humanitarne pestycydy", + "[Upgrade name 430]Mole people": "Krety", + "[Upgrade name 431]Machine learning": "Nauczanie maszynowe", + "[Upgrade name 432]Edible money": "Jadalne pieniądze", + "[Upgrade name 433]Sick rap prayers": "Chore modlitwy rapowe", + "[Upgrade name 434]Deluxe tailored wands": "Eleganckie różdżki szyte na miarę", + "[Upgrade name 435]Autopilot": "Autopilot", + "[Upgrade name 436]The advent of chemistry": "Początek chemii", + "[Upgrade name 437]The real world": "Prawdziwy świat", + "[Upgrade name 438]Second seconds": "Drugie sekundy", + "[Upgrade name 439]Quantum comb": "Grzebień kwantowy", + "[Upgrade name 440]Crystal mirrors": "Kryształowe lustra", + "[Upgrade name 441]Bunnypedes": "Królicze łapki", + "[Upgrade name 442]Kitten assistants to the regional manager": "Koci asystenci kierowników regionalnych", + "[Upgrade name 443]Charm quarks": "Kwarki wdzięku", + "[Upgrade name 444]Pink biscuits": "Różowe herbatniki", + "[Upgrade name 445]Whole-grain cookies": "Ciastka pełnoziarniste", + "[Upgrade name 446]Candy cookies": "Ciastka cukierkowe", + "[Upgrade name 447]Big chip cookies": "Ciastka z dużymi płatkami", + "[Upgrade name 448]One chip cookies": "Ciastka z jednym płatkiem", + "[Upgrade name 449]Sugar baking": "Pieczenie cukru", + "[Upgrade name 450]Sugar craving": "Pragnienie cukru", + "[Upgrade name 451]Sugar aging process": "Proces starzenia cukru", + "[Upgrade name 452]Sugar frenzy": "Cukrowy szał", + "[Upgrade name 453]Sprinkles cookies": "Ciastka z posypką", + "[Upgrade name 454]Peanut butter blossoms": "Gniazdka z masłem orzechowym", + "[Upgrade name 455]No-bake cookies": "Ciastka bez pieczenia", + "[Upgrade name 456]Florentines": "Florentynki", + "[Upgrade name 457]Chocolate crinkles": "Popękane ciastka", + "[Upgrade name 458]Maple cookies": "Ciastka klonowe", + "[Upgrade name 459]Turbo-charged soil": "Turbo dopakowana ziemia", + "[Upgrade name 460]Technobsidian mouse": "Mysz z technobsydianu", + "[Upgrade name 461]Plasmarble mouse": "Mysz z plazmarmuru", + "[Upgrade name 462]Kitten marketeers": "Koci specjaliści od marketingu", + "[Upgrade name 463]Festivity loops": "Świąteczne krążki", + "[Upgrade name 464]Persian rice cookies": "Ciastka z perskiego ryżu", + "[Upgrade name 465]Norwegian cookies": "Ciastka norweskie", + "[Upgrade name 466]Crispy rice cookies": "Ciastka z chrupiącego ryżu", + "[Upgrade name 467]Ube cookies": "Ciastka ube", + "[Upgrade name 468]Butterscotch cookies": "Ciastka kajmakowe", + "[Upgrade name 469]Speculaas": "Speculaas", + "[Upgrade name 470]Elderwort biscuits": "Ciastka starotkowe", + "[Upgrade name 471]Bakeberry cookies": "Ciastka piekojagodowe", + "[Upgrade name 472]Duketater cookies": "Ciastka diuktatorskie", + "[Upgrade name 473]Green yeast digestives": "Herbatniki z zielonych drożdży", + "[Upgrade name 474]Fern tea": "Herbata paprotkowa", + "[Upgrade name 475]Ichor syrup": "Syrop purchawkowy", + "[Upgrade name 476]Wheat slims": "Pszeniczne paluchy", + "[Upgrade name 477]Synthetic chocolate green honey butter biscuit": "Ciastko maślane z syntetyczną czekoladą i zielonym miodem", + "[Upgrade name 478]Royal raspberry chocolate butter biscuit": "Ciastko maślane z królewską czekoladą malinową", + "[Upgrade name 479]Ultra-concentrated high-energy chocolate butter biscuit": "Ciastko maślane z dużą zawartością czekolady wysokoenergetycznej", + "[Upgrade name 480]Timeproof hair dyes": "Niestarzejące się farby do włosów", + "[Upgrade name 481]Barnstars": "Gwiazdy stodoły", + "[Upgrade name 482]Mine canaries": "Kanarki kopalniane", + "[Upgrade name 483]Brownie point system": "Ciastkowy system nagród", + "[Upgrade name 484]Grand supercycles": "Wielkie supercykle", + "[Upgrade name 485]Psalm-reading": "Czytanie psalmów", + "[Upgrade name 486]Immobile spellcasting": "Nieruchome rzucanie czarów", + "[Upgrade name 487]Restaurants at the end of the universe": "Restauracje na skraju świata", + "[Upgrade name 488]On second thought": "Po chwili namysłu", + "[Upgrade name 489]Dimensional garbage gulper": "Międzywymiarowy połykacz śmieci", + "[Upgrade name 490]Additional clock hands": "Dodatkowe wskazówki zegara", + "[Upgrade name 491]Baking Nobel prize": "Nagroda Nobla w dziedzinie piekarnictwa", + "[Upgrade name 492]Reverse theory of light": "Odwrócona teoria światła", + "[Upgrade name 493]Revised probabilistics": "Odwrócona probabilistyka", + "[Upgrade name 494]Kitten analysts": "Koci analitycy", + "[Upgrade name 495]Eye of the wrinkler": "Oko zmarszczkacza", + "[Upgrade name 496]Inspired checklist": "Inspirowana lista kontrolna", + "[Upgrade name 497]Pure pitch-black chocolate butter biscuit": "Ciastko maślane z czekoladą ciemną jak smoła", + "[Upgrade name 498]Chocolate oatmeal cookies": "Ciastka owsiane z czekoladą", + "[Upgrade name 499]Molasses cookies": "Ciasta z melasą", + "[Upgrade name 500]Biscotti": "Biscotti", + "[Upgrade name 501]Waffle cookies": "Wafelki", + "[Upgrade name 502]Almond cookies": "Ciastka z migdałami", + "[Upgrade name 503]Hazelnut cookies": "Ciastka z orzechami laskowymi", + "[Upgrade name 504]Walnut cookies": "Ciastka z orzechami włoskimi", + "[Upgrade name 505]Label printer": "Drukarka etykiet", + "[Upgrade name 506]Good manners": "Dobre maniery", + "[Upgrade name 507]Lindworms": "Lindwormy", + "[Upgrade name 508]Bore again": "Wtórny odwiert", + "[Upgrade name 509]\"Volunteer\" interns": "Stażyści „ochotnicy”", + "[Upgrade name 510]Rules of acquisition": "Zasady nabywania", + "[Upgrade name 511]War of the gods": "Wojna bogów", + "[Upgrade name 512]Electricity": "Elektryczność", + "[Upgrade name 513]Universal alphabet": "Uniwersalny alfabet", + "[Upgrade name 514]Public betterment": "Dobro ogółu", + "[Upgrade name 515]Embedded microportals": "Wbudowane mikroportale", + "[Upgrade name 516]Nostalgia": "Nostalgia", + "[Upgrade name 517]The definite molecule": "Cząstka ostateczna", + "[Upgrade name 518]Light capture measures": "Środki przechwytywania światła", + "[Upgrade name 519]0-sided dice": "Zeroboczna kostka", + "[Upgrade name 520]Heralds": "Heroldzi", + "[Upgrade name 521]Metagrandmas": "Metababcie", + "[Upgrade name 522]Metabakeries": "Metapiekarnie", + "[Upgrade name 523]Mandelbrown sugar": "Brązowy cukier migdałowy", + "[Upgrade name 524]Fractoids": "Fraktoidy", + "[Upgrade name 525]Nested universe theory": "Teoria zagnieżdżonego wszechświata", + "[Upgrade name 526]Menger sponge cake": "Biszkopt Mengera", + "[Upgrade name 527]One particularly good-humored cow": "Jedna bardzo rozradowana krowa", + "[Upgrade name 528]Chocolate ouroboros": "Czekoladowe uroborosy", + "[Upgrade name 529]Nested": "Zagnieżdżony", + "[Upgrade name 530]Space-filling fibers": "Kosmiczne włókna", + "[Upgrade name 531]Endless book of prose": "Niekończąca się księga prozy", + "[Upgrade name 532]The set of all sets": "Zestaw wszystkich zestawów", + "[Upgrade name 533]Recursive mirrors": "Lustra rekurencyjne", + "[Upgrade name 534]Mice clicking mice": "Mysz klikająca myszą", + "[Upgrade name 535]Custard creams": "Wafelkowe kremówki", + "[Upgrade name 536]Bourbon biscuits": "Herbatniki o smaku bourbonu", + "[Upgrade name 537]Keepsakes": "Pamiątki", + "[Upgrade name 538]Mini-cookies": "Miniciastka", + "[Upgrade name 539]Sugar crystal cookies": "Ciastka z kryształków cukru", + "[Upgrade name 540]Box of maybe cookies": "Pudełko potencjalnie z ciastkami", + "[Upgrade name 541]Box of not cookies": "Pudełko raczej nie z ciastkami", + "[Upgrade name 542]Box of pastries": "Pudełko ciastek", + "[Upgrade name 543]Profiteroles": "Ptysie z kremem", + "[Upgrade name 544]Jelly donut": "Pączek z galaretką", + "[Upgrade name 545]Glazed donut": "Pączek z lukrem", + "[Upgrade name 546]Chocolate cake": "Ciasto czekoladowe", + "[Upgrade name 547]Strawberry cake": "Ciasto truskawkowe", + "[Upgrade name 548]Apple pie": "Szarlotka", + "[Upgrade name 549]Lemon meringue pie": "Cytrynowa beza", + "[Upgrade name 550]Butter croissant": "Rogalik maślany", + "[Upgrade name 551]Cookie dough": "Surowe ciasto", + "[Upgrade name 552]Burnt cookie": "Spalone ciastko", + "[Upgrade name 553]A chocolate chip cookie but with the chips picked off for some reason": "Ciastko oskubane z czekoladowych płatków, nie wiedzieć czemu", + "[Upgrade name 554]Flavor text cookie": "Ciastko z jadalnym napisem", + "[Upgrade name 555]High-definition cookie": "Ciastko w wysokiej rozdzielczości", + "[Upgrade name 556]Toast": "Grzanka", + "[Upgrade name 557]Peanut butter & jelly": "Masło orzechowe i galaretka", + "[Upgrade name 558]Wookies": "Wookie", + "[Upgrade name 559]Cheeseburger": "Cheeseburger", + "[Upgrade name 560]One lone chocolate chip": "Samotny płatek czekolady", + "[Upgrade name 561]Genius accounting": "Natchniona księgowość", + "[Upgrade name 562]Shimmering veil": "Błyszcząca zasłona", + "[Upgrade name 563]Shimmering veil [off]": "Błyszcząca zasłona [wył.]", + "[Upgrade name 564]Shimmering veil [on]": "Błyszcząca zasłona [wł.]", + "[Upgrade name 565]Whoopie pies": "Markizy", + "[Upgrade name 566]Caramel wafer biscuits": "Ciastka z karmelowym wafelkiem", + "[Upgrade name 567]Chocolate chip mocha cookies": "Kawowe ciastka z płatkami czekoladowymi", + "[Upgrade name 568]Earl Grey cookies": "Ciastka earl grey", + "[Upgrade name 569]Corn syrup cookies": "Ciastka z syropem klonowym", + "[Upgrade name 570]Icebox cookies": "Ciastka lodówkowe", + "[Upgrade name 571]Graham crackers": "Krakersy pełnoziarniste", + "[Upgrade name 572]Hardtack": "Suchary", + "[Upgrade name 573]Cornflake cookies": "Ciastka z płatków kukurydzianych", + "[Upgrade name 574]Tofu cookies": "Ciastka z tofu", + "[Upgrade name 575]Gluten-free cookies": "Ciastka bezglutenowe", + "[Upgrade name 576]Russian bread cookies": "Rosyjskie ciastka chlebowe", + "[Upgrade name 577]Lebkuchen": "Miodowe pierniki lebkuchen", + "[Upgrade name 578]Aachener Printen": "Pierniki aachener printen", + "[Upgrade name 579]Canistrelli": "Korsykańskie ciastka canistrelli", + "[Upgrade name 580]Nice biscuits": "Fajne herbatniki", + "[Upgrade name 581]French pure butter cookies": "Francuskie ciasta z masła klarowanego", + "[Upgrade name 582]Petit beurre": "Petitki", + "[Upgrade name 583]Nanaimo bars": "Batony nanaimo ", + "[Upgrade name 584]Berger cookies": "Ciastka Bergera", + "[Upgrade name 585]Chinsuko": "Japońskie ciastka chinsuko", + "[Upgrade name 586]Panda koala biscuits": "Ciastka pando-koalowe", + "[Upgrade name 587]Putri salju": "Indonezyjskie ciastka putri salju", + "[Upgrade name 588]Milk cookies": "Ciastka mleczne", + "[Upgrade name 589]Cookie crumbs": "Okruszki po ciastkach", + "[Upgrade name 590]Chocolate chip cookie": "Ciastko z płatkami czekolady", + "[Upgrade name 591]Cosmic beginner's luck": "Kosmiczne szczęście początkującego", + "[Upgrade name 592]Reinforced membrane": "Wzmocniona membrana", + "[Upgrade name 593]Binary grandmas": "Babcie binarne", + "[Upgrade name 594]The JavaScript console for dummies": "Konsola JavaScript dla opornych", + "[Upgrade name 595]64bit arrays": "Tablice 64-bitowe", + "[Upgrade name 596]Stack overflow": "Dostęp do Stack overflow", + "[Upgrade name 597]Enterprise compiler": "Kompilator dla przedsiębiorstw", + "[Upgrade name 598]Syntactic sugar": "Cukier syntetyczny", + "[Upgrade name 599]A nice cup of coffee": "Przyjemna chwila z filiżanką kawy", + "[Upgrade name 600]Just-in-time baking": "Metodologia pieczenia na czas", + "[Upgrade name 601]cookies++": "ciastka++", + "[Upgrade name 602]Software updates": "Aktualizacje oprogramowania", + "[Upgrade name 603]Game.Loop": "Gra.pętla", + "[Upgrade name 604]eval()": "eval()", + "[Upgrade name 605]Script grannies": "Skryptujące babcie", + "[Upgrade name 606]Tombola computing": "Obliczenia Tombola", + "[Upgrade name 607]Kruidnoten": "Holenderskie ciasta kruidnoten", + "[Upgrade name 608]Marie biscuits": "Herbatniki Marie", + "[Upgrade name 609]Meringue cookies": "Ciastka bezowe", + "[Upgrade name 610]Pizza": "Pizza", + "[Upgrade name 611]Crackers": "Krakersy", + "[Upgrade name 612]Havabreaks": "Czasnaprzerwy", + "[Upgrade name 613]Kitten executives": "Koci dyrektorzy", + "[Upgrade name 614]Chai tea cookies": "Herbaciane ciastka chai", + "[Upgrade name 615]Yogurt cookies": "Ciastka jogurtowe", + "[Upgrade name 616]Thumbprint cookies": "Kocie oczka", + "[Upgrade name 617]Pizzelle": "Włoskie wafelki pizzelle", + "[Upgrade name 618]Zilla wafers": "Wafle zilla", + "[Upgrade name 619]Dim Dams": "Wafelki dim dam", + "[Upgrade name 620]Candy": "Cukierek", + "[Upgrade name 621]Fortune #001": "Szczęście #001", + "[Upgrade name 622]Fortune #002": "Szczęście #002", + "[Upgrade name 623]Fortune #003": "Szczęście #003", + "[Upgrade name 624]Fortune #004": "Szczęście #004", + "[Upgrade name 625]Fortune #005": "Szczęście #005", + "[Upgrade name 626]Fortune #006": "Szczęście #006", + "[Upgrade name 627]Fortune #007": "Szczęście #007", + "[Upgrade name 628]Fortune #008": "Szczęście #008", + "[Upgrade name 629]Fortune #009": "Szczęście #009", + "[Upgrade name 630]Fortune #010": "Szczęście #010", + "[Upgrade name 631]Fortune #011": "Szczęście #011", + "[Upgrade name 632]Fortune #012": "Szczęście #012", + "[Upgrade name 633]Fortune #013": "Szczęście #013", + "[Upgrade name 634]Fortune #014": "Szczęście #014", + "[Upgrade name 635]Fortune #015": "Szczęście #015", + "[Upgrade name 636]Fortune #016": "Szczęście #016", + "[Upgrade name 637]Fortune #017": "Szczęście #017", + "[Upgrade name 638]Fortune #100": "Szczęście #100", + "[Upgrade name 639]Fortune #101": "Szczęście #101", + "[Upgrade name 640]Fortune #102": "Szczęście #102", + "[Upgrade name 641]Fortune #103": "Szczęście #103", + "[Upgrade name 642]Fortune #104": "Szczęście #104", + "[Upgrade name 643]Fortune cookies": "Ciastka szczęścia", + "[Upgrade name 644]A really good guide book": "Naprawdę dobry przewodnik", + "[Upgrade name 645]Prism heart biscuits": "Herbatniki z sercem pryzmowym", + "[Upgrade name 646]Kitten wages": "Kocie pensje", + "[Upgrade name 647]Pet the dragon": "Pogłaszcz smoka", + "[Upgrade name 648]Dragon scale": "Smocza łuska", + "[Upgrade name 649]Dragon claw": "Smoczy szpon", + "[Upgrade name 650]Dragon fang": "Smoczy kieł", + "[Upgrade name 651]Dragon teddy bear": "Smoczy miś", + "[Upgrade name 652]Granola cookies": "Ciastka z granolą", + "[Upgrade name 653]Ricotta cookies": "Ciastka z ricottą", + "[Upgrade name 654]Roze koeken": "Holenderskie ciastka roze koeken", + "[Upgrade name 655]Peanut butter cup cookies": "Kocie oczka z masłem orzechowym", + "[Upgrade name 656]Sesame cookies": "Ciastka sezamowe", + "[Upgrade name 657]Taiyaki": "Japońskie ciastka taiyaki", + "[Upgrade name 658]Vanillekipferl": "Waniliowe półksiężyce vanillekipferl", + "[Upgrade name 659]Cosmic chocolate butter biscuit": "Ciastko maślane z czekoladą kosmiczną", + "[Upgrade name 660]Nonillion fingers": "Nonilion palców", + "[Upgrade name 661]Miraculite mouse": "Mysz z cudogranitu", + "[Upgrade name 662]Generation degeneration": "Degeneracja pokolenia", + "[Upgrade name 663]Global seed vault": "Światowy skarbiec nasion", + "[Upgrade name 664]Air mining": "Górnictwo powietrzne", + "[Upgrade name 665]Behavioral reframing": "Przeramowanie behawioralne", + "[Upgrade name 666]Altruistic loop": "Altruistyczna pętla", + "[Upgrade name 667]A novel idea": "Pomysł na powieść", + "[Upgrade name 668]Spelling bees": "Czarodziejskie pszczoły", + "[Upgrade name 669]Toroid universe": "Wszechświat toroidalny", + "[Upgrade name 670]Hermetic reconciliation": "Pojednanie hermetyczne", + "[Upgrade name 671]His advent": "Jego przyjście", + "[Upgrade name 672]Split seconds": "Podział sekund", + "[Upgrade name 673]Flavor itself": "Sam smak", + "[Upgrade name 674]Light speed limit": "Ograniczenie prędkości światła", + "[Upgrade name 675]A touch of determinism": "Objęcia determinizmu", + "[Upgrade name 676]This upgrade": "To ulepszenie", + "[Upgrade name 677]Your biggest fans": "Twoi najwięksi fani", + "[Upgrade name 678]Battenberg biscuits": "Herbatniki Battenberga", + "[Upgrade name 679]Rosette cookies": "Rozetki", + "[Upgrade name 680]Gangmakers": "Ciastka gangsterki", + "[Upgrade name 681]Welsh cookies": "Ciastka walijskie", + "[Upgrade name 682]Raspberry cheesecake cookies": "Ciastka nadziewane sernikiem malinowym", + "[Upgrade name 683]Alternate grandmas": "Alternatywne babcie", + "[Upgrade name 684]Manifest destiny": "Objawione przeznaczenie", + "[Upgrade name 685]The multiverse in a nutshell": "Wieloświat w pigułce", + "[Upgrade name 686]All-conversion": "Całkowita konwersja", + "[Upgrade name 687]Multiverse agents": "Agenci wieloświatu", + "[Upgrade name 688]Escape plan": "Plan ucieczki", + "[Upgrade name 689]Game design": "Projekt gry", + "[Upgrade name 690]Sandbox universes": "Światy typu piaskownica", + "[Upgrade name 691]Multiverse wars": "Wojny wieloświatu", + "[Upgrade name 692]Mobile ports": "Mobilne porty", + "[Upgrade name 693]Encapsulated realities": "Zamknięte rzeczywistości", + "[Upgrade name 694]Extrinsic clicking": "Klikanie zewnętrzne", + "[Upgrade name 695]Universal idling": "Uniwersalne próżniactwo", + "[Upgrade name 696]Perforated mille-feuille cosmos": "Perforowany kosmos napoleonkowy", + "[Upgrade name 697]Infraverses and superverses": "Infraświaty i superświaty", + "[Upgrade name 698]Fortune #018": "Szczęście #018", + "[Upgrade name 699]Butter biscuit (with butter)": "Ciastko maślane (z masłem)", + "[Upgrade name 700]Visits": "Wizyty", + "[Upgrade name 701]Reverse-veganism": "Weganizm wsteczny", + "[Upgrade name 702]Caramel alloys": "Karmelowe stopy", + "[Upgrade name 703]The infinity engine": "Silnik nieskończoności", + "[Upgrade name 704]Diminishing tax returns": "Malejące zwroty podatkowe", + "[Upgrade name 705]Apparitions": "Objawienia", + "[Upgrade name 706]Wizard basements": "Piwnice czarodzieja", + "[Upgrade name 707]Prime directive": "Pierwotna dyrektywa", + "[Upgrade name 708]Chromatic cycling": "Cykle chromatyczne", + "[Upgrade name 709]Domestic rifts": "Szczeliny domowe", + "[Upgrade name 710]Patience abolished": "Zakaz cierpliwości", + "[Upgrade name 711]Delicious pull": "Wyborne przyciąganie", + "[Upgrade name 712]Occam's laser": "Laser Ockhama", + "[Upgrade name 713]On a streak": "Passa", + "[Upgrade name 714]A box": "Pudło", + "[Upgrade name 715]Hacker shades": "Okulary hakera", + "[Upgrade name 716]Break the fifth wall": "Przełamywanie piątej ściany", + "[Upgrade name 717]Cat ladies": "Kociary", + "[Upgrade name 718]Milkhelp® lactose intolerance relief tablets": "Tabletki na nietolerancję laktozy od Milkhelp®", + "[Upgrade name 719]Aura gloves": "Rękawice z aurą", + "[Upgrade name 720]Luminous gloves": "Rękawice świetlne", + "[Upgrade name 721]Bokkenpootjes": "Holenderskie ruloniki bokkenpootjes", + "[Upgrade name 722]Fat rascals": "Yorkshirskie ciastka fat rascals", + "[Upgrade name 723]Ischler cookies": "Ciastka Ischlera", + "[Upgrade name 724]Matcha cookies": "Ciastka z matchą", + "[Upgrade name 725]Earl Grey macarons": "Makaroniki z earl grey ", + "[Upgrade name 726]Pokey": "Paluszki pokey", + "[Upgrade name 727]Cashew cookies": "Ciastka z nerkowcami", + "[Upgrade name 728]Milk chocolate cookies": "Ciastka z mleczną czekoladą", + "[Upgrade name 729]Brainy grandmas": "Łebskie babcie", + "[Upgrade name 730]Principled neural shackles": "Neuronowe kajdany pryncypiów", + "[Upgrade name 731]Obey": "Posłuszeństwo", + "[Upgrade name 732]A sprinkle of irrationality": "Iskierka nieracjonalności", + "[Upgrade name 733]Front and back hemispheres": "Półkula przednia i tylna", + "[Upgrade name 734]Neural networking": "Splątanie neuronowe", + "[Upgrade name 735]Cosmic brainstorms": "Kosmiczne burze mózgów", + "[Upgrade name 736]Megatherapy": "Megaterapia", + "[Upgrade name 737]Synaptic lubricant": "Synaptyczny lubrykant", + "[Upgrade name 738]Psychokinesis": "Psychokineza", + "[Upgrade name 739]Spines": "Kręgosłupy", + "[Upgrade name 740]Neuraforming": "Neuraformowanie", + "[Upgrade name 741]Epistemological trickery": "Epistemologiczna hucpa", + "[Upgrade name 742]Every possible idea": "Każdy potencjalny pomysł", + "[Upgrade name 743]Kitchen cabinets": "Szafki kuchenne", + "[Upgrade name 744]Cookie mulch": "Ciastkowa ściółka", + "[Upgrade name 745]Delicious mineralogy": "Smakowita mineralogia", + "[Upgrade name 746]N-dimensional assembly lines": "N-wymiarowe linie montażowe", + "[Upgrade name 747]Cookie Points": "Ciastkowe punkty", + "[Upgrade name 748]Negatheism": "Negateizm", + "[Upgrade name 749]Magical realism": "Realizm magiczny", + "[Upgrade name 750]Cosmic foreground radiation": "Kosmiczne promieniowanie planu pierwszego", + "[Upgrade name 751]Arcanized glassware": "Szkło arkanizowane", + "[Upgrade name 752]Portal guns": "Broń portalowa", + "[Upgrade name 753]Timeproof upholstery": "Czasoodporna tapicerka", + "[Upgrade name 754]Employee minification": "Minifikacja kadrowa", + "[Upgrade name 755]Hyperblack paint": "Hiperczarna farba", + "[Upgrade name 756]Silver lining maximization": "Maksymalizacja pozytywnych scenariuszy", + "[Upgrade name 757]Multiscale profiling": "Wieloskalowe profilowanie", + "[Upgrade name 758]PHP containment vats": "Kadzie blokera PHP", + "[Upgrade name 759]Opposite universe": "Wszechświat przeciwny", + "[Upgrade name 760]The land of dreams": "Kraina marzeń", + "[Upgrade name 761]Thoughts & prayers": "Myśli i modlitwy", + "[Upgrade name 762]Fertile minds": "Płodne umysły", + "[Upgrade name 763]Fortune #019": "Fortuna #019", + "[Upgrade name 764]Decillion fingers": "Smakowite paluszki", + "[Upgrade name 765]Aetherice mouse": "Eteryczna mysz", + "[Upgrade name 766]Kitten admins": "Koci admini", + "[Upgrade name 767]Everybutter biscuit": "Herbatnik wszechmaślany", + "[Upgrade name 768]Unshackled cursors": "Odblokowane kursory", + "[Upgrade name 769]Unshackled grandmas": "Odblokowane babcie", + "[Upgrade name 770]Unshackled farms": "Odblokowane hodowle", + "[Upgrade name 771]Unshackled mines": "Odblokowane kopalnie", + "[Upgrade name 772]Unshackled factories": "Odblokowane fabryki", + "[Upgrade name 773]Unshackled banks": "Odblokowane banki", + "[Upgrade name 774]Unshackled temples": "Odblokowane świątynie", + "[Upgrade name 775]Unshackled wizard towers": "Odblokowane wieże czarodzieja", + "[Upgrade name 776]Unshackled shipments": "Odblokowane dostawy", + "[Upgrade name 777]Unshackled alchemy labs": "Odblokowane laboratoria alchemiczne", + "[Upgrade name 778]Unshackled portals": "Odblokowane portale", + "[Upgrade name 779]Unshackled time machines": "Odblokowane wehikuły czasu", + "[Upgrade name 780]Unshackled antimatter condensers": "Odblokowane kondensatory antymaterii", + "[Upgrade name 781]Unshackled prisms": "Odblokowane pryzmy", + "[Upgrade name 782]Unshackled chancemakers": "Odblokowane koła fortuny", + "[Upgrade name 783]Unshackled fractal engines": "Odblokowane silniki fraktalne", + "[Upgrade name 784]Unshackled javascript consoles": "Odblokowane konsole javascript", + "[Upgrade name 785]Unshackled idleverses": "Odblokowane próżnoświaty", + "[Upgrade name 786]Unshackled cortex bakers": "Odblokowani rdzeniowi piekarze", + "[Upgrade name 787]Unshackled flavor": "Odblokowany smak", + "[Upgrade name 788]Unshackled berrylium": "Odblokowany jagodolit", + "[Upgrade name 789]Unshackled blueberrylium": "Odblokowany borówkolit", + "[Upgrade name 790]Unshackled chalcedhoney": "Odblokowany kwarcomiód", + "[Upgrade name 791]Unshackled buttergold": "Odblokowany mleczozłot", + "[Upgrade name 792]Unshackled sugarmuck": "Odblokowany cukrozyt", + "[Upgrade name 793]Unshackled jetmint": "Odblokowany miętonit", + "[Upgrade name 794]Unshackled cherrysilver": "Odblokowane wiśniosrebro", + "[Upgrade name 795]Unshackled hazelrald": "Odblokowany leszczynorad", + "[Upgrade name 796]Unshackled mooncandy": "Odblokowany księżycukier", + "[Upgrade name 797]Unshackled astrofudge": "Odblokowana astrokrówka", + "[Upgrade name 798]Unshackled alabascream": "Odblokowana alabakremówka", + "[Upgrade name 799]Unshackled iridyum": "Odblokowany smokozonit", + "[Upgrade name 800]Unshackled glucosmium": "Odblokowany glukozmit", + "[Upgrade name 801]Delicate touch": "Delikatny dotyk", + "[Upgrade name 802]Steadfast murmur": "Nieustępliwy szmer", + "[Upgrade name 803]Glittering edge": "Brokatowa krawędź", + "[Upgrade name 804]Distinguished wallpaper assortment": "Składnica wybornych tapet", + "[Upgrade name 805]Sound test": "Próba dźwięku", + "[Upgrade name 806]Jukebox": "Szafa grająca", + "[Upgrade name 807]Dalgona cookies": "Koreańskie ciasteczka dalgona", + "[Upgrade name 808]Spicy cookies": "Pikantne ciasteczka", + "[Upgrade name 809]Smile cookies": "Uśmiechnięte ciasteczka", + "[Upgrade name 810]Kolachy cookies": "Węgierskie ciasteczka kolachy", + "[Upgrade name 811]Gomma cookies": "Ciasteczka gomma", + "[Upgrade name 812]Vegan cookies": "Wegańskie ciasteczka", + "[Upgrade name 813]Coyotas": "Kojoty", + "[Upgrade name 814]Frosted sugar cookies": "Ciasteczka z mrożonego cukru", + "[Upgrade name 815]Marshmallow sandwich cookies": "Ciasteczka z piankowymi kanapkami", + "[Upgrade name 816]Web cookies": "Ciasteczka internetowe", + "[Upgrade name 817]Steamed cookies": "Ciasteczka gotowane na parze", + "[Upgrade name 818]Deep-fried cookie dough": "Ciasteczka smażone na głębokim oleju", + "[Achievement name 0]Wake and bake": "Wstań i piecz", + "[Achievement name 1]Making some dough": "Zróbmy trochę ciasta", + "[Achievement name 2]So baked right now": "Jestem taki rozpieczony", + "[Achievement name 3]Fledgling bakery": "Świeżo upieczona piekarnia", + "[Achievement name 4]Affluent bakery": "Zamożna piekarnia", + "[Achievement name 5]World-famous bakery": "Piekarnia znana na cały świat", + "[Achievement name 6]Cosmic bakery": "Kosmiczna piekarnia", + "[Achievement name 7]Galactic bakery": "Galaktyczna piekarnia", + "[Achievement name 8]Universal bakery": "Uniwersalna piekarnia", + "[Achievement name 9]Timeless bakery": "Piekarnia poza czasem", + "[Achievement name 10]Infinite bakery": "Nieskończona piekarnia", + "[Achievement name 11]Immortal bakery": "Nieśmiertelna piekarnia", + "[Achievement name 12]Don't stop me now": "Nie zatrzymuj mnie teraz", + "[Achievement name 13]You can stop now": "Teraz możesz mnie zatrzymać", + "[Achievement name 14]Cookies all the way down": "Tylko i wyłącznie ciastka", + "[Achievement name 15]Overdose": "Przedawkowanie", + "[Achievement name 16]Casual baking": "Pieczmy się bez zobowiązań", + "[Achievement name 17]Hardcore baking": "Hardkorowe pieczenie", + "[Achievement name 18]Steady tasty stream": "Trzy, dwa, jeden… pieczemy", + "[Achievement name 19]Cookie monster": "Ciasteczkowy potwór", + "[Achievement name 20]Mass producer": "Masowy wytwórca", + "[Achievement name 21]Cookie vortex": "Ciastkowy wir", + "[Achievement name 22]Cookie pulsar": "Ciastkowy pulsar", + "[Achievement name 23]Cookie quasar": "Ciastkowy kwazar", + "[Achievement name 24]Oh hey, you're still here": "O cześć, nadal tu jesteś", + "[Achievement name 25]Let's never bake again": "Nie pieczmy już nigdy nic", + "[Achievement name 26]Sacrifice": "Ofiara", + "[Achievement name 27]Oblivion": "Zapomnienie", + "[Achievement name 28]From scratch": "Od początku", + "[Achievement name 29]Neverclick": "Bezklik", + "[Achievement name 30]Clicktastic": "Klikastycznie", + "[Achievement name 31]Clickathlon": "Klikatrion", + "[Achievement name 32]Clickolympics": "Klikolimpiada", + "[Achievement name 33]Clickorama": "Klikorama", + "[Achievement name 34]Click": "Kliczka", + "[Achievement name 35]Double-click": "Podwójne kliknięcie", + "[Achievement name 36]Mouse wheel": "Mysi kołowrotek", + "[Achievement name 37]Of Mice and Men": "O myszach i ludziach", + "[Achievement name 38]The Digital": "Cyfrowość", + "[Achievement name 39]Just wrong": "Nie godzi się", + "[Achievement name 40]Grandma's cookies": "Babcine ciastka", + "[Achievement name 41]Sloppy kisses": "Ckliwe buziaczki", + "[Achievement name 42]Retirement home": "Dom spokojnej starości", + "[Achievement name 43]Bought the farm": "Zakup hodowli", + "[Achievement name 44]Reap what you sow": "Zbierz, co zasiałeś", + "[Achievement name 45]Farm ill": "Choroba hodowlana", + "[Achievement name 46]Production chain": "Łańcuch produkcji", + "[Achievement name 47]Industrial revolution": "Rewolucja industrialna", + "[Achievement name 48]Global warming": "Globalne ocieplenie", + "[Achievement name 49]You know the drill": "Stare, dobre wiertło", + "[Achievement name 50]Excavation site": "Plac wykopu", + "[Achievement name 51]Hollow the planet": "Wydrążyć planetę", + "[Achievement name 52]Expedition": "Ekspedycja", + "[Achievement name 53]Galactic highway": "Galaktyczna autostrada", + "[Achievement name 54]Far far away": "Daleko stąd", + "[Achievement name 55]Transmutation": "Transmutacja", + "[Achievement name 56]Transmogrification": "Transmogryfikacja", + "[Achievement name 57]Gold member": "Złoty członek", + "[Achievement name 58]A whole new world": "Całkiem nowy świat", + "[Achievement name 59]Now you're thinking": "O to chodzi", + "[Achievement name 60]Dimensional shift": "Zmiana wymiarowa", + "[Achievement name 61]Time warp": "Napęd czasowy", + "[Achievement name 62]Alternate timeline": "Alternatywna linia czasu", + "[Achievement name 63]Rewriting history": "Przepisywanie historii", + "[Achievement name 64]One with everything": "Jedno z wszystkim", + "[Achievement name 65]Mathematician": "Matematyk", + "[Achievement name 66]Base 10": "Baza 10", + "[Achievement name 67]Golden cookie": "Złote ciastko", + "[Achievement name 68]Lucky cookie": "Szczęśliwe ciastko", + "[Achievement name 69]A stroke of luck": "Uśmiech szczęścia", + "[Achievement name 70]Cheated cookies taste awful": "Oszukane ciastka smakują najgorzej", + "[Achievement name 71]Uncanny clicker": "Niesamowity klikacz", + "[Achievement name 72]Builder": "Budowniczy", + "[Achievement name 73]Architect": "Architekt", + "[Achievement name 74]Enhancer": "Wzmacniacz", + "[Achievement name 75]Augmenter": "Ulepszacz", + "[Achievement name 76]Cookie-dunker": "Moczący ciastka", + "[Achievement name 77]Fortune": "Szczęście", + "[Achievement name 78]True Neverclick": "Prawdziwy bezklik", + "[Achievement name 79]Elder nap": "Drzemka starszyzny", + "[Achievement name 80]Elder slumber": "Sen starszyzny", + "[Achievement name 81]Elder": "Starszyzna", + "[Achievement name 82]Elder calm": "Starszyzna spokojna", + "[Achievement name 83]Engineer": "Inżynier", + "[Achievement name 84]Leprechaun": "Skrzat", + "[Achievement name 85]Black cat's paw": "Łapa czarnego kota", + "[Achievement name 86]Nihilism": "Nihilizm", + "[Achievement name 87]Antibatter": "Antyciasto", + "[Achievement name 88]Quirky quarks": "Komiczne kwarki", + "[Achievement name 89]It does matter!": "No materialnie że tak!", + "[Achievement name 90]Upgrader": "Ulepszacz", + "[Achievement name 91]Centennial": "Stulecie", + "[Achievement name 92]Hardcore": "Hardkor", + "[Achievement name 93]Speed baking I": "Szybkie pieczenie I", + "[Achievement name 94]Speed baking II": "Szybkie pieczenie II", + "[Achievement name 95]Speed baking III": "Szybkie pieczenie III", + "[Achievement name 96]Getting even with the oven": "Dopiec piekarnikowi", + "[Achievement name 97]Now this is pod-smashing": "Rozstrąkowanie", + "[Achievement name 98]Chirped out": "Rozweselony", + "[Achievement name 99]Follow the white rabbit": "Podążaj za białym królikiem", + "[Achievement name 100]Clickasmic": "Klikazmiczny", + "[Achievement name 101]Friend of the ancients": "Przyjaciel starożytnych", + "[Achievement name 102]Ruler of the ancients": "Władca starożytnych", + "[Achievement name 103]Wholesome": "Zdrowy", + "[Achievement name 104]Just plain lucky": "Zwykły fart", + "[Achievement name 105]Itchscratcher": "Swędozdrapka", + "[Achievement name 106]Wrinklesquisher": "Zmarszczkozgniatacz", + "[Achievement name 107]Moistburster": "Wilgociowymiatacz", + "[Achievement name 108]Spooky cookies": "Straszliwe ciastka", + "[Achievement name 109]Coming to town": "Przybywa do miasta", + "[Achievement name 110]All hail Santa": "Witamy gradośnie, Mikołaju", + "[Achievement name 111]Let it snow": "Pada śnieg", + "[Achievement name 112]Oh deer": "Złapać jelenia", + "[Achievement name 113]Sleigh of hand": "Sanie w śmietanie", + "[Achievement name 114]Reindeer sleigher": "Renifer przyssany do sani", + "[Achievement name 115]Perfected agriculture": "Idealne rolnictwo", + "[Achievement name 116]Ultimate automation": "Ostateczna automatyzacja", + "[Achievement name 117]Can you dig it": "Rycie na pamięć", + "[Achievement name 118]Type II civilization": "Cywilizacja typu II", + "[Achievement name 119]Gild wars": "Wojny gildii", + "[Achievement name 120]Brain-split": "Podział mózgu", + "[Achievement name 121]Time duke": "Książe czasu", + "[Achievement name 122]Molecular maestro": "Molekularny maestro", + "[Achievement name 123]Lone photon": "Samotny foton", + "[Achievement name 124]Dazzling glimmer": "Olśniewający blask", + "[Achievement name 125]Blinding flash": "Oślepiający błysk", + "[Achievement name 126]Unending glow": "Niekończąca się poświata", + "[Achievement name 127]Lord of Constructs": "Pan stworzenia", + "[Achievement name 128]Lord of Progress": "Pan postępu", + "[Achievement name 129]Bicentennial": "Dwa wieki", + "[Achievement name 130]Lovely cookies": "Miłosne ciastka", + "[Achievement name 131]Centennial and a half": "Wiek i pół", + "[Achievement name 132]Tiny cookie": "Malutkie ciasteczko", + "[Achievement name 133]You win a cookie": "Wygrywasz ciastko", + "[Achievement name 134]Click delegator": "Delegacja ciastek", + "[Achievement name 135]Gushing grannies": "Tryskające babcie", + "[Achievement name 136]I hate manure": "Nienawidzę obornika", + "[Achievement name 137]Never dig down": "Nigdy nie kopię w dół", + "[Achievement name 138]The incredible machine": "Niesamowita maszyna", + "[Achievement name 139]And beyond": "I poza", + "[Achievement name 140]Magnum Opus": "Magnum Opus", + "[Achievement name 141]With strange eons": "Z dziwnymi eonami", + "[Achievement name 142]Spacetime jigamaroo": "Czasoprzestrzenny balet", + "[Achievement name 143]Supermassive": "Supermasywny", + "[Achievement name 144]Praise the sun": "Niech będzie chwała słońcu", + "[Achievement name 145]Clickageddon": "Klikamageddon", + "[Achievement name 146]Clicknarok": "Klikanaruk", + "[Achievement name 147]Extreme polydactyly": "Ekstremalna polidaktylia", + "[Achievement name 148]Dr. T": "Dr T", + "[Achievement name 149]The old never bothered me anyway": "Nie mam nic do starców", + "[Achievement name 150]Homegrown": "Hodowla domowa", + "[Achievement name 151]Technocracy": "Technokracja", + "[Achievement name 152]The center of the Earth": "Jądro Ziemi", + "[Achievement name 153]We come in peace": "Przybywamy w pokoju", + "[Achievement name 154]The secrets of the universe": "Tajemnice wszechświata", + "[Achievement name 155]Realm of the Mad God": "Królestwo Szalonego Boga", + "[Achievement name 156]Forever and ever": "Na zawsze", + "[Achievement name 157]Walk the planck": "Stała planka", + "[Achievement name 158]Rise and shine": "Nie śpimy", + "[Achievement name 159]God complex": "Kompleks boga", + "[Achievement name 160]Third-party": "Trzecia osoba", + "[Achievement name 161]Dematerialize": "Dematerializacja", + "[Achievement name 162]Nil zero zilch": "Nul zero nic", + "[Achievement name 163]Transcendence": "Transcendencja", + "[Achievement name 164]Obliterate": "Wymazanie", + "[Achievement name 165]Negative void": "Próżnia negatywna", + "[Achievement name 166]The hunt is on": "Pościg nadal trwa", + "[Achievement name 167]Egging on": "Pokaż mi swoje jaja", + "[Achievement name 168]Mass Easteria": "Święta wielkonocnikowe", + "[Achievement name 169]Hide & seek champion": "Mistrz zabawy w chowanego", + "[Achievement name 170]What's in a name": "Co się kryje w nazwie", + "[Achievement name 171]Pretty penny": "Parę grosików", + "[Achievement name 172]Fit the bill": "Zgodnie z oczekiwaniami", + "[Achievement name 173]A loan in the dark": "Pożyczka nocą", + "[Achievement name 174]Need for greed": "Chciwość jest dobra", + "[Achievement name 175]It's the economy, stupid": "Gospodarka, głupcze", + "[Achievement name 176]Your time to shrine": "Twój czas, by zabłyszczeć", + "[Achievement name 177]Shady sect": "Mroczna sekta", + "[Achievement name 178]New-age cult": "Kult New Age", + "[Achievement name 179]Organized religion": "Zorganizowana religia", + "[Achievement name 180]Fanaticism": "Fanatyzm", + "[Achievement name 181]Bewitched": "Oczarowany", + "[Achievement name 182]The sorcerer's apprentice": "Uczeń maga", + "[Achievement name 183]Charms and enchantments": "Uroki i zaklęcia", + "[Achievement name 184]Curses and maledictions": "Klątwy i przekleństwa", + "[Achievement name 185]Magic kingdom": "Magiczne królestwo", + "[Achievement name 186]Vested interest": "Ważki interes", + "[Achievement name 187]New world order": "Nowy porządek świata", + "[Achievement name 188]Hocus pocus": "Hokus pokus", + "[Achievement name 189]Finger clickin' good": "Paluszek tańczy jak szalony", + "[Achievement name 190]Panic at the bingo": "Panika w bingo", + "[Achievement name 191]Rake in the dough": "Grabie w cieście", + "[Achievement name 192]Quarry on": "Sylwester w Wykopanem", + "[Achievement name 193]Yes I love technology": "Tak, kocham technologię", + "[Achievement name 194]Paid in full": "Na mój rachunek", + "[Achievement name 195]Church of Cookiology": "Kościół Ciastkologii", + "[Achievement name 196]Too many rabbits, not enough hats": "Za dużo królików, za mało kapeluszy", + "[Achievement name 197]The most precious cargo": "Najcenniejszy ładunek", + "[Achievement name 198]The Aureate": "Wykwit", + "[Achievement name 199]Ever more hideous": "Najgorzej", + "[Achievement name 200]Be kind, rewind": "Bądź tak miły i cofnij się", + "[Achievement name 201]Infinitesimal": "Nieskończenie mały", + "[Achievement name 202]A still more glorious dawn": "Jeszcze wspanialszy świt", + "[Achievement name 203]Rebirth": "Ponowne narodzenie", + "[Achievement name 204]Here you go": "Proszę bardzo", + "[Achievement name 205]Resurrection": "Zmartwychwstanie", + "[Achievement name 206]Reincarnation": "Reinkarnacja", + "[Achievement name 207]Endless cycle": "Niekończący się cykl", + "[Achievement name 208]The agemaster": "Mistrz starców", + "[Achievement name 209]To oldly go": "Musisz się starać", + "[Achievement name 210]Gardener extraordinaire": "Nadzwyczajny ogrodnik", + "[Achievement name 211]Tectonic ambassador": "Tektoniczny ambasador", + "[Achievement name 212]Rise of the machines": "Powstanie maszyn", + "[Achievement name 213]Acquire currency": "Pozyskanie waluty", + "[Achievement name 214]Zealotry": "Zelotyzm", + "[Achievement name 215]The wizarding world": "Czarodziejski świat", + "[Achievement name 216]Parsec-masher": "Ubijacz parseków", + "[Achievement name 217]The work of a lifetime": "Praca życia", + "[Achievement name 218]A place lost in time": "Miejsce zagubione w czasie", + "[Achievement name 219]Heat death": "Śmierć cieplna", + "[Achievement name 220]Microcosm": "Mikrokosmos", + "[Achievement name 221]Bright future": "Świetlana przyszłość", + "[Achievement name 222]Here be dragon": "Niech się stanie smok", + "[Achievement name 223]How?": "Jak?", + "[Achievement name 224]The land of milk and cookies": "Kraina mlekiem i ciastkami płynąca", + "[Achievement name 225]He who controls the cookies controls the universe": "Kto kontroluje ciastka ten kontroluje wszechświat", + "[Achievement name 226]Tonight on Hoarders": "Dzisiaj w Ciastkowych Rewolucjach", + "[Achievement name 227]Are you gonna eat all that?": "Zjesz to wszystko sam?", + "[Achievement name 228]We're gonna need a bigger bakery": "Przyda nam się większa piekarnia", + "[Achievement name 229]In the mouth of madness": "W ustach szaleństwa", + "[Achievement name 230]Brought to you by the letter
": "Jest list do ciebie
", + "[Achievement name 231]A world filled with cookies": "Świat wypełniony ciastkami", + "[Achievement name 232]When this baby hits 36 quadrillion cookies per hour": "Ten moment, gdy dziecina wyciska 36 kwadrylionów ciastek na sekundę", + "[Achievement name 233]Fast and delicious": "Szybcy i smaczni", + "[Achievement name 234]Cookiehertz : a really, really tasty hertz": "Taniec z ciastkami: tylko najbardziej utalentowane ciastka", + "[Achievement name 235]Woops, you solved world hunger": "Ups, chyba rozwiązałeś problem głodu na świecie", + "[Achievement name 236]Turbopuns": "Megakalambur", + "[Achievement name 237]Faster menner": "Szybszy i bardziej męski", + "[Achievement name 238]And yet you're still hungry": "A ty jeszcze szukasz jedzenia", + "[Achievement name 239]The Abakening": "Przejedzenie", + "[Achievement name 240]There's really no hard limit to how long these achievement names can be and to be quite honest I'm rather curious to see how far we can go.
Adolphus W. Green (1844–1917) started as the Principal of the Groton School in 1864. By 1865, he became second assistant librarian at the New York Mercantile Library; from 1867 to 1869, he was promoted to full librarian. From 1869 to 1873, he worked for Evarts, Southmayd & Choate, a law firm co-founded by William M. Evarts, Charles Ferdinand Southmayd and Joseph Hodges Choate. He was admitted to the New York State Bar Association in 1873.
Anyway, how's your day been?": "Szczerze mówiąc, to nazwy osiągnieć nie mają jakiegoś konkretnego limitu długości i w sumie też mnie ciekawi, jak daleko możemy się posunąć.
Adolphus W. Green (1844-1917) zaczynał jako dyrektor szkoły w Groton w 1864 roku. W 1865 roku został drugim asystentem bibliotekarza w New York Mercantile Library. W latach 1867-1869 awansował na pełnoprawnego bibliotekarza. W latach 1869-1873 pracował dla Evarts, Southmayd & Choate, kancelarii prawnej współzałożonej przez Williama M. Evartsa, Charlesa Ferdinanda Southmayda oraz Josepha Hodgesa Choate. W 1873 roku został przyjęty do Stowarzyszenia Adwokatów Stanu Nowy Jorku.
W ogóle to jak ci minął dzień?", + "[Achievement name 241]Fast": "Szybko", + "[Achievement name 242]Bicentennial and a half": "Dwa i pół wieku", + "[Achievement name 243]Tabloid addiction": "Uzależnienie od szmatławców", + "[Achievement name 244]Clickastrophe": "Klikatastrofa", + "[Achievement name 245]Clickataclysm": "Klikataklizm", + "[Achievement name 246]Thumbs, phalanges, metacarpals": "Kciuki, paliczki i śródręcza", + "[Achievement name 247]Polymath": "Wszechstronność", + "[Achievement name 248]The elder scrolls": "Zwoje starców", + "[Achievement name 249]To crumbs, you say?": "Nazbyt chrupiące, powiadasz?", + "[Achievement name 250]Seedy business": "Ziarnisty biznes", + "[Achievement name 251]Freak fracking": "Po co drążysz?", + "[Achievement name 252]Modern times": "Nowoczesność", + "[Achievement name 253]The nerve of war": "Nerwy z wojny", + "[Achievement name 254]Wololo": "Wololo", + "[Achievement name 255]And now for my next trick, I'll need a volunteer from the audience": "A do następnej sztuczki poproszę kogoś z widowni", + "[Achievement name 256]It's not delivery": "To nie jest dostawa", + "[Achievement name 257]Gold, Jerry! Gold!": "Złoto, Jerry! złoto!", + "[Achievement name 258]Forbidden zone": "Zakazana strefa", + "[Achievement name 259]cookie clicker forever and forever a hundred years cookie clicker, all day long forever, forever a hundred times, over and over cookie clicker adventures dot com": "cookie clicker teraz i zawsze i na wieki wieków przez sto lat klikania całe dnie i całe ranki i tak sto razy napiszesz na tablicy od lewa do prawa przygody w cookie clicker kropka com", + "[Achievement name 260]Scientists baffled everywhere": "Naukowcy go nienawidzą", + "[Achievement name 261]Harmony of the spheres": "Harmonia sfer", + "[Achievement name 262]Last Chance to See": "Ostatnia szansa na ujrzenie", + "[Achievement name 263]Early bird": "Kto rano wstaje", + "[Achievement name 264]Fading luck": "Zanikające szczęście", + "[Achievement name 265]Eldeer": "Staryfer", + "[Achievement name 266]Dude, sweet": "Stary, słodko", + "[Achievement name 267]Sugar rush": "Gorączka cukru", + "[Achievement name 268]Year's worth of cavities": "Cały rok dokanałówek", + "[Achievement name 269]Hand-picked": "Ręczny zbiór", + "[Achievement name 270]Sugar sugar": "Cukiereczku, cukiereczku", + "[Achievement name 271]All-natural cane sugar": "Całkowicie naturalny cukier trzcinowy", + "[Achievement name 272]Sweetmeats": "Słodkomięsiwo", + "[Achievement name 273]Tricentennial": "Trzy wieki", + "[Achievement name 274]Knead for speed": "Przeminęło z ciastem", + "[Achievement name 275]Well the cookies start coming and they don't stop coming": "Gdy posmakujesz ciastek, to się nigdy od nich nie uwolnisz", + "[Achievement name 276]I don't know if you've noticed but all these icons are very slightly off-center": "Nie wiem, czy też to widzisz, ale te wszystkie ikonki są trochę jakby niewycentrowane", + "[Achievement name 277]The proof of the cookie is in the baking": "Nie oceniaj ciastka po pudełku", + "[Achievement name 278]If it's worth doing, it's worth overdoing": "Jeśli coś jest dobre, to warto przeginać", + "[Achievement name 279]The dreams in which I'm baking are the best I've ever had": "Jedno ciastko, drugie ciastko i też trzecie kurde bele leci", + "[Achievement name 280]Set for life": "Ustawiony do końca życia", + "[Achievement name 281]You and the beanstalk": "Sam na sam z łodygą", + "[Achievement name 282]Romancing the stone": "Kamienny romans", + "[Achievement name 283]Ex machina": "Ex machina", + "[Achievement name 284]And I need it now": "I ma być na teraz", + "[Achievement name 285]Pray on the weak": "Modlitwa za słabych", + "[Achievement name 286]It's a kind of magic": "Tak wygląda magia", + "[Achievement name 287]Make it so": "Niech się stanie", + "[Achievement name 288]All that glitters is gold": "Wszystko, co się błyszczy, jest złotem", + "[Achievement name 289]Here he comes": "Nadchodzi", + "[Achievement name 290]Way back then": "Dawno temu", + "[Achievement name 291]Exotic matter": "Egzotyczna materia", + "[Achievement name 292]At the end of the tunnel": "Na końcu tunelu", + "[Achievement name 293]Click (starring Adam Sandler)": "Click (w roli głównej: Adam Sandler)", + "[Achievement name 294]Frantiquities": "Staroszaleństwo", + "[Achievement name 295]Overgrowth": "Przerost", + "[Achievement name 296]Sedimentalism": "Sedymentalizm", + "[Achievement name 297]Labor of love": "Fabryka miłości", + "[Achievement name 298]Reverse funnel system": "System lejów wstecznych", + "[Achievement name 299]Thus spoke you": "Tako rzeczesz ty", + "[Achievement name 300]Manafest destiny": "Oczarowane przeznaczenie", + "[Achievement name 301]Neither snow nor rain nor heat nor gloom of night": "Ani śnieg, ani deszcz, ani upał, ani mrok nocy", + "[Achievement name 302]I've got the Midas touch": "Mam dotyk Midasa", + "[Achievement name 303]Which eternal lie": "Które wieczne życie?", + "[Achievement name 304]Déjà vu": "Déjà vu", + "[Achievement name 305]Powers of Ten": "Moce dziesiątki", + "[Achievement name 306]Now the dark days are gone": "Mroczne dni już przeminęły", + "[Achievement name 307]Freaky jazz hands": "Zwariowane ręce jazzmana", + "[Achievement name 308]Methuselah": "Matuzalem", + "[Achievement name 309]Huge tracts of land": "Ogromne połacie ziemi", + "[Achievement name 310]D-d-d-d-deeper": "G-g-g-g-głębiej", + "[Achievement name 311]Patently genius": "Geniusz patentowany", + "[Achievement name 312]A capital idea": "Kapitalny pomysł", + "[Achievement name 313]It belongs in a bakery": "Własność świątynna", + "[Achievement name 314]Motormouth": "Gaduła", + "[Achievement name 315]Been there done that": "Byłem, robiłem, widziałem", + "[Achievement name 316]Phlogisticated substances": "Substancje zflogizowane", + "[Achievement name 317]Bizarro world": "Dziwaczny świat", + "[Achievement name 318]The long now": "Długie teraz", + "[Achievement name 319]Chubby hadrons": "Tłuściutkie hadrony", + "[Achievement name 320]Palettable": "Smakowidzenie", + "[Achievement name 321]Bibbidi-bobbidi-boo": "Bibbidi-bobbidi-boo", + "[Achievement name 322]I'm the wiz": "Jestę magiem", + "[Achievement name 323]A wizard is you": "Mag to ty", + "[Achievement name 324]Four-leaf cookie": "Czterolistne ciastko", + "[Achievement name 325]Lucked out": "Farcik", + "[Achievement name 326]What are the odds": "Kto by pomyślał", + "[Achievement name 327]Grandma needs a new pair of shoes": "Babcia potrzebuje nowej pary butów", + "[Achievement name 328]Million to one shot, doc": "Szansa jak jeden na milion, doktorku", + "[Achievement name 329]As luck would have it": "Szczęśliwym trafem", + "[Achievement name 330]Ever in your favor": "Zawsze na twoją korzyść", + "[Achievement name 331]Be a lady": "Zachowuj się, jak przystało na damę", + "[Achievement name 332]Dicey business": "Ryzyk fizyk", + "[Achievement name 333]Fingers crossed": "Trzymam kciuki", + "[Achievement name 334]Just a statistic": "Zaledwie statystyka", + "[Achievement name 335]Murphy's wild guess": "Fuks Murphy‘ego", + "[Achievement name 336]Let's leaf it at that": "Muszę z tym żryć", + "[Achievement name 337]The ultimate clickdown": "Ostateczne odklikiwanie", + "[Achievement name 338]Aged well": "Dostojne starzenie się", + "[Achievement name 339]101st birthday": "101 urodziny", + "[Achievement name 340]But wait 'til you get older": "Zobaczysz na starość", + "[Achievement name 341]Harvest moon": "Uwaga, żniwiarka jedzie", + "[Achievement name 342]Mine?": "Niech to kaczka kopie!", + "[Achievement name 343]In full gear": "Pełna naprzód", + "[Achievement name 344]Treacle tart economics": "Ekonomia tarty melasowej", + "[Achievement name 345]Holy cookies, grandma!": "Niech mnie ciastko świśnie, babciu!", + "[Achievement name 346]The Prestige": "Prestiż", + "[Achievement name 347]That's just peanuts to space": "Niczym okruch w całej piekarni", + "[Achievement name 348]Worth its weight in lead": "Wartość odmierzana ołowiem", + "[Achievement name 349]What happens in the vortex stays in the vortex": "Co się wydarzyło w wirze, zostaje w wirze", + "[Achievement name 350]Invited to yesterday's party": "Zaproszenie na wczorajszą imprezę", + "[Achievement name 351]Downsizing": "Pomniejszanie", + "[Achievement name 352]My eyes": "Moje oczy", + "[Achievement name 353]Maybe a chance in hell, actually": "Może nie tylko głupi ma szczęście", + "[Achievement name 354]Make like a tree": "Na wzór drzewa", + "[Achievement name 355]Cave story": "Wydobywcza historia", + "[Achievement name 356]In-cog-neato": "Kto nie fabrykuje niechaj nie je", + "[Achievement name 357]Save your breath because that's all you've got left": "Nie przemęczaj się, bo i tak nie masz już nic", + "[Achievement name 358]Vengeful and almighty": "Mściwy i wszechmocny", + "[Achievement name 359]Spell it out for you": "Ale z ciebie czaruś", + "[Achievement name 360]Space space space space space": "Kosmos kosmos kosmos kosmos", + "[Achievement name 361]Don't get used to yourself, you're gonna have to change": "Nie przyzwyczajaj się do siebie, bo i tak się zmienisz", + "[Achievement name 362]Objects in the mirror dimension are closer than they appear": "Obiekty w lustrzanym wymiarze są bliżej, niż ci się wydaje", + "[Achievement name 363]Groundhog day": "Dzień świstaka", + "[Achievement name 364]A matter of perspective": "Kwestia perspektywy", + "[Achievement name 365]Optical illusion": "Iluzja optyczna", + "[Achievement name 366]Jackpot": "Wygrana", + "[Achievement name 367]So much to do so much to see": "Tyle do zrobienia, tyle do zobaczenia", + "[Achievement name 368]Running with scissors": "Biegający z nożyczkami", + "[Achievement name 369]Rarefied air": "Rozrzedzone powietrze", + "[Achievement name 370]Push it to the limit": "Na skraju", + "[Achievement name 371]Green cookies sleep furiously": "Zielone ciastka gniewnie śpią", + "[Achievement name 372]Panic! at Nabisco": "Panika w Goplanie", + "[Achievement name 373]Bursting at the seams": "Pękanie w szwach", + "[Achievement name 374]Just about full": "Już prawie pełno", + "[Achievement name 375]Hungry for more": "Mam apetyt na więcej", + "[Achievement name 376]All the other kids with the pumped up clicks": "Uczciwością i klikaniem ludzie się bogacą", + "[Achievement name 377]One...more...click...": "Jeszcze… tylko… jedno kliknięcie…", + "[Achievement name 378]Botany enthusiast": "Miłośnik botaniki", + "[Achievement name 379]Green, aching thumb": "Ogrodnictwo nie tylko dla opornych", + "[Achievement name 380]In the garden of Eden (baby)": "W ogrodzie Eden (dziecino)", + "[Achievement name 381]Keeper of the conservatory": "Opiekun konserwatorium", + "[Achievement name 382]Seedless to nay": "Beznasienny plan", + "[Achievement name 383]You get nothing": "Nie masz nic", + "[Achievement name 384]Humble rebeginnings": "Skromne powtórki", + "[Achievement name 385]The end of the world": "Koniec świata", + "[Achievement name 386]Oh, you're back": "Ach, jesteś z powrotem", + "[Achievement name 387]Lazarus": "Łazarz", + "[Achievement name 388]Leisurely pace": "Spokojny krok", + "[Achievement name 389]Hypersonic": "Naddźwiękowy", + "[Achievement name 390]Feed me, Orteil": "Orteil, nakarm mnie", + "[Achievement name 391]And then what?": "I co dalej?", + "[Achievement name 392]Tricentennial and a half": "Trzy i pół wieku", + "[Achievement name 393]Quadricentennial": "Cztery wieki", + "[Achievement name 394]Quadricentennial and a half": "Cztery i pół wieku", + "[Achievement name 395]Quincentennial": "Pięć wieków", + "[Achievement name 396]Maillard reaction": "Reakcja Maillarda", + "[Achievement name 397]When the cookies ascend just right": "Gdy ciastka wznoszą się w samą porę", + "[Achievement name 398]With her finger and her thumb": "Jej palcem i jej kciukiem", + "[Achievement name 399]Defense of the ancients": "Obrona starożytnych", + "[Achievement name 400]Sharpest tool in the shed": "Umysł ostry jak łopata", + "[Achievement name 401]Hey now, you're a rock": "Wymiatasz!", + "[Achievement name 402]Break the mold": "Przełamać pleśń", + "[Achievement name 403]Get the show on, get paid": "Weź kredyt, załóż firmę", + "[Achievement name 404]My world's on fire, how about yours": "Mój świat płonie, a co tam u ciebie?", + "[Achievement name 405]The meteor men beg to differ": "Ludzie z meteorytu mają odmienne zdanie", + "[Achievement name 406]Only shooting stars": "Tylko spadające gwiazdy", + "[Achievement name 407]We could all use a little change": "Wszystkim przydałaby się mała zmiana", + "[Achievement name 408]Your brain gets smart but your head gets dumb": "Twój mózg staje się mądrzejszy, ale głowa — coraz głupsza", + "[Achievement name 409]The years start coming": "Nie liczę godzin i lat", + "[Achievement name 410]What a concept": "Cóż za pomysł", + "[Achievement name 411]You'll never shine if you don't glow": "Nigdy nie zabłyśniesz, jeśli nie zapłoniesz światłem", + "[Achievement name 412]You'll never know if you don't go": "Nigdy się nie dowiesz, jeśli nie tam nie pójdziesz", + "[Achievement name 413]Self-contained": "Samowystarczalność", + "[Achievement name 414]Threw you for a loop": "Wrzucam cię do pętli", + "[Achievement name 415]The sum of its parts": "Suma wszystkich składowych", + "[Achievement name 416]Bears repeating": "Warto powtarzać", + "[Achievement name 417]More of the same": "Więcej tego samego", + "[Achievement name 418]Last recurse": "Ostatnia rekurencja", + "[Achievement name 419]Out of one, many": "Jeden z wielu", + "[Achievement name 420]An example of recursion": "Przykład rekurencji", + "[Achievement name 421]For more information on this achievement, please refer to its title": "Aby uzyskać więcej informacji na temat tego osiągnięcia, proszę przeczytać jego nazwę", + "[Achievement name 422]I'm so meta, even this achievement": "Nawet to osiągnięcie jest wybitnie meta", + "[Achievement name 423]Never get bored": "Inteligentni się nie nudzą", + "[Achievement name 424]The needs of the many": "Potrzeba wielu", + "[Achievement name 425]Eating its own": "Zjada się sam", + "[Achievement name 426]We must go deeper": "Musimy zejść głębiej", + "[Achievement name 427]Sierpinski rhomboids": "Romby Sierpińskiego", + "[Achievement name 428]Gotta go fast": "Trza się spieszyć", + "[Achievement name 429]I think it's safe to say you've got it made": "Chyba można powiedzieć, że ci się powiodło", + "[Achievement name 430]Renaissance baker": "Piekarz renesansu", + "[Achievement name 431]Veteran": "Weteran", + "[Achievement name 432]Thick-skinned": "Gruboskórny", + "[Achievement name 433]F12": "F12", + "[Achievement name 434]Variable success": "Zmienny sukces", + "[Achievement name 435]No comments": "Bez komentarza", + "[Achievement name 436]Up to code": "Wszystko zgodnie z przepisami", + "[Achievement name 437]Works on my machine": "U mnie działa", + "[Achievement name 438]Technical debt": "Technologiczny dług", + "[Achievement name 439]Mind your language": "Pilnuj języka", + "[Achievement name 440]Inconsolable": "Konsolacja", + "[Achievement name 441]Closure": "Akceptacja", + "[Achievement name 442]Dude what if we're all living in a simulation like what if we're all just code on a computer somewhere": "Stary, a co, jeśli wszyscy żyjemy w jakiejś symulacji albo jesteśmy tylko kodem gdzieś na czyimś komputerze", + "[Achievement name 443]Taking the back streets": "Szukam tylnych wejść", + "[Achievement name 444]Inherited prototype": "Odziedziczony prototyp", + "[Achievement name 445]A model of document object": "Model dokumentowego obiektu", + "[Achievement name 446]First-class citizen": "Obywatel pierwszej klasy", + "[Achievement name 447]Alexandria": "Aleksandria", + "[Achievement name 448]Bake him away, toys": "Zapieczcie go, zabawki", + "[Achievement name 449]You're #1 so why try harder": "Skoro jesteś nr 1, to po co się spinać", + "[Achievement name 450]Haven't even begun to peak": "Nawet nie zacząłem osiągać szczytu", + "[Achievement name 451]A sometimes food": "Czasem jedzenie", + "[Achievement name 452]Not enough of a good thing": "Za mało dobrych rzeczy", + "[Achievement name 453]Horn of plenty": "Róg obfitości", + "[Achievement name 454]Smurf account": "Smerfie konto", + "[Achievement name 455]If at first you don't succeed": "Jeśli nie uda ci się za pierwszym razem", + "[Achievement name 456]O Fortuna": "O Fortuna", + "[Achievement name 457]Initial public offering": "Wstępna oferta publiczna", + "[Achievement name 458]Rookie numbers": "Marne grosze", + "[Achievement name 459]No nobility in poverty": "Bieda to nie powód do dumy", + "[Achievement name 460]Full warehouses": "Pełne magazyny", + "[Achievement name 461]Make my day": "Dzień dobry", + "[Achievement name 462]Buy buy buy": "Kupować kupować kupować", + "[Achievement name 463]Gaseous assets": "Aktywa gazowe", + "[Achievement name 464]Pyramid scheme": "Piramida finansowa ", + "[Achievement name 465]Jellicles": "Dachowce", + "[Achievement name 466]Quincentennial and a half": "Pięć i pół wieku", + "[Achievement name 467]What did we even eat before these": "Co takiego jadaliśmy wcześniej", + "[Achievement name 468]Heavy flow": "Mocny przepływ", + "[Achievement name 469]More you say?": "Jeszcze więcej?", + "[Achievement name 470]Large and in charge": "Wielki i u steru", + "[Achievement name 471]Absolutely stuffed": "Zdecydowanie pojedzony", + "[Achievement name 472]It's only wafer-thin": "Cieniutkie niczym wafelek", + "[Achievement name 473]Clickety split": "Wyklikałeś to sobie", + "[Achievement name 474]Gotta hand it to you": "Proszę cię o rękę", + "[Achievement name 475]Okay boomer": "Spoko, boomerze", + "[Achievement name 476]Overripe": "Przejrzałe", + "[Achievement name 477]Rock on": "Ciśnij dalej", + "[Achievement name 478]Self-manmade man": "Samodzielnie stworzony przez człowieka", + "[Achievement name 479]Checks out": "Przelew zgadza się", + "[Achievement name 480]Living on a prayer": "Żyli w celi, bracie", + "[Achievement name 481]Higitus figitus migitus mum": "Matka Higitus figitus migitus", + "[Achievement name 482]The incredible journey": "200 mil do domu", + "[Achievement name 483]Just a phase": "Tylko na chwilę", + "[Achievement name 484]Don't let me leave, Murph": "Nie zostawiaj mnie, Murph", + "[Achievement name 485]Caveman to cosmos": "Jaskiniowiec do kosmosu", + "[Achievement name 486]Particular tastes": "Cząsteczkowe upodobania", + "[Achievement name 487]A light snack": "Przekąska z prędkością światła", + "[Achievement name 488]Tempting fate": "Kuszenie losu", + "[Achievement name 489]Tautological": "Tautologia", + "[Achievement name 490]Curly braces": "Nawiasy klamrowe", + "[Achievement name 491]Seven horseshoes": "Siedem podków", + "[Achievement name 492]Olden days": "Za dawnych czasów", + "[Achievement name 493]The devil's workshop": "Warsztat diabła", + "[Achievement name 494]In the green": "Gra w zielone", + "[Achievement name 495]Mountain out of a molehill, but like in a good way": "Z igły widły, ale tak pozytywnie", + "[Achievement name 496]The wheels of progress": "Koła postępu", + "[Achievement name 497]That's rich": "Bogatynia", + "[Achievement name 498]Preaches and cream": "Śmietanowa modlitwa", + "[Achievement name 499]Magic thinking": "Myślenie magiczne", + "[Achievement name 500]Is there life on Mars?": "Czy na Marsie istnieje życie?", + "[Achievement name 501]Bad chemistry": "Zła chemia", + "[Achievement name 502]Reduced to gibbering heaps": "Przemienione w mamroczące stogi", + "[Achievement name 503]Back already?": "Już z powrotem?", + "[Achievement name 504]Nuclear throne": "Atomowy tron", + "[Achievement name 505]Making light of the situation": "Widzę światło w tunelu", + "[Achievement name 506]Flip a cookie. Chips, I win. Crust, you lose.": "Rzuć ciastkiem. Polewa — wygrywam. Spód — ty przegrywasz.", + "[Achievement name 507]In and of itself": "Sam z siebie i przez siebie", + "[Achievement name 508]Duck typing": "Kodowanie gumowej kaczuszki", + "[Achievement name 509]They'll never know what hit 'em": "Nigdy się nie dowiedzą, co ich trafiło", + "[Achievement name 510]Well-versed": "Dobrze zorientowany", + "[Achievement name 511]Ripe for the picking": "Gotowy do zbioru", + "[Achievement name 512]Unreal": "Nierealny", + "[Achievement name 513]Once you've seen one": "Widziałeś jedno", + "[Achievement name 514]Spoils and plunder": "Łupy i grabież", + "[Achievement name 515]Nobody exists on purpose, nobody belongs anywhere": "Nikt nie ma celu, bo to nie jest nasze miejsce ", + "[Achievement name 516]Hyperspace expressway": "Autostrada nadprzestrzenna", + "[Achievement name 517]Versatile": "Wszechstronny", + "[Achievement name 518]You are inevitable": "Nie przeskoczysz", + "[Achievement name 519]Away from this place": "Z daleka stąd", + "[Achievement name 520]Everywhere at once": "Wszędzie jednocześnie", + "[Achievement name 521]Reject reality, substitute your own": "Odrzuć rzeczywistość i wymyśl swoją", + "[Achievement name 522]Fringe": "Peryferie", + "[Achievement name 523]Coherence": "Zgodność", + "[Achievement name 524]Earth-616": "Ziemia-616", + "[Achievement name 525]Strange topologies": "Dziwne topologie", + "[Achievement name 526]Grand design": "Wielki projekt", + "[Achievement name 527]Ecumenopolis": "Ekumenopolis", + "[Achievement name 528]The full picture": "Pełny obraz", + "[Achievement name 529]When there's nothing left to add": "Gdy nie ma już nic do dodania", + "[Achievement name 530]Sexcentennial": "Sześć wieków", + "[Achievement name 531]Keep going until I say stop": "Nie przestawaj, aż powiem stop", + "[Achievement name 532]But I didn't say stop, did I?": "Ale nie powiedziałem stop, prawda?", + "[Achievement name 533]With unrivaled fervor": "Z niezrównanym zapałem", + "[Achievement name 534]Think big": "Myśl na wielką skalę ", + "[Achievement name 535]Hypersize me": "Powiększ mnie", + "[Achievement name 536]Max capacity": "Maksymalna pojemność", + "[Achievement name 537]Liquid assets": "Aktywna płynne", + "[Achievement name 538]Stifling the press": "Kneblowanie prasy", + "[Achievement name 539]It's big brain time": "Czas na wielkie główkowanie", + "[Achievement name 540]Just my imagination": "Może mi się tylko wydawało", + "[Achievement name 541]Now there's an idea": "Mam pomysła", + "[Achievement name 542]The organ that named itself": "Organ, który nazwał sam siebie", + "[Achievement name 543]Gyrification": "Żyryfikacja", + "[Achievement name 544]A trademarked portmanteau of \"imagination\" and \"engineering\"": "Zastrzeżony znak towarowy dla „wyobraźnia” i „inżynieria”", + "[Achievement name 545]Mindfulness": "Uważność", + "[Achievement name 546]The 10% myth": "Mit o 10%", + "[Achievement name 547]Don't think about it too hard": "Nie rozkminiaj tego zanadto", + "[Achievement name 548]Though fools seldom differ": "Głupcy raczej są zgodni", + "[Achievement name 549]Looking kind of dumb": "Wyszło trochę głupio", + "[Achievement name 550]A beautiful mind": "Piękny umysł", + "[Achievement name 551]Cardinal synapses": "Synapsy kardynalne", + "[Achievement name 552]Positive thinking": "Pozytywne myślenie", + "[Achievement name 553]The thought that counts": "Liczy się myślenie", + "[Achievement name 554]Unthinkable": "Nie do pomyślenia", + "[Achievement name 555]Gifted": "Obdarowany", + "[Achievement name 556]They moistly come at night": "Przybywają nocą wilgotną", + "[Achievement name 557]It's grown on you": "Pasuje do ciebie", + "[Achievement name 558]Don't let the walls cave in on you": "Nie pozwól ścianom zwalić się na ciebie", + "[Achievement name 559]Replaced by robots": "Wyparty przez roboty", + "[Achievement name 560]Financial prodigy": "Finansowe cudowne dziecko", + "[Achievement name 561]And I will pray to a big god": "I będę się modlić do wielkiego boga", + "[Achievement name 562]Shosple Colupis": "Chłyt materkindody", + "[Achievement name 563]False vacuum": "Fałszywa próżnia", + "[Achievement name 564]Metallic taste": "Smak metaliczny", + "[Achievement name 565]Swiss cheese": "Ser szwajcarski", + "[Achievement name 566]But the future refused to change": "Ale przyszłość nie chciała się zmienić", + "[Achievement name 567]What's the dark matter with you": "Co z tobą nie tak, do jasnej…", + "[Achievement name 568]Enlightenment": "Oświecenie", + "[Achievement name 569]Never tell me the odds": "Nie chcę znać szansy", + "[Achievement name 570]Blowing an Apollonian gasket": "Nadmuchiwanie sieci apollińskiej", + "[Achievement name 571]Get with the program": "Lecimy z programem", + "[Achievement name 572]Lost your cosmic marbles": "Spadłeś na łeb", + "[Achievement name 573]By will alone I set my mind in motion": "Samą wolą wprawiam umysł w ruch", + "[Achievement name 574]Ain't that a click in the head": "Czyż to nie cudowny pomysł", + "[Achievement name 575]Sexcentennial and a half": "Sześć wieków i pół", + "[Achievement name 576]I am speed": "Prędkość to ja", + "[Achievement name 577]And on and on": "I tak dalej", + "[Achievement name 578]Fake it till you bake it": "Próbuj aż ci się upiecze", + "[Achievement name 579]History in the baking": "Historia cukiernictwa", + "[Achievement name 580]Baby it's old outside": "Jest staro na dworze kochanie", + "[Achievement name 581]Myriad": "Miriada", + "[Achievement name 582]Kaizen": "Kaizen", + "[Achievement name 583]Beyond quality": "Więcej niż jakość", + "[Achievement name 584]Everything happens so much": "Wszystko dzieje się tak bardzo", + "[Achievement name 585]I'll rest when I'm dead": "Odpocznę po śmierci", + "[Achievement name 586]What do you get for the baker who has everything": "Co podarować piekarzowi który ma już wszystko", + "[Achievement name 587]Bottomless pit": "Jama bez dna", + "[Achievement name 588]All the stars in heaven": "Wszystkie gwiazdy na niebie" +}); \ No newline at end of file diff --git a/gversion/gs/cookieclicker/loc/PT-BR.js b/gversion/gs/cookieclicker/loc/PT-BR.js new file mode 100644 index 0000000..069f21b --- /dev/null +++ b/gversion/gs/cookieclicker/loc/PT-BR.js @@ -0,0 +1,3303 @@ +AddLanguage('PT-BR','portuguese',{ + "": { + "language": "PT-BR", + "plural-forms": "nplurals=2;plural=(n!=1);" + }, + "cookie": "/", + "sugar lump": "torrão de açúcar", + "heavenly chip": "gotas divinas", + "wrinkler": "enrugador", + "building": "construção", + "upgrade": "melhoria", + "golden cookie": "cookie dourado", + "grandmapocalypse": "vovócalipse", + "%1 cookie": [ + "%1 cookie", + "%1 cookies" + ], + "%1 sugar lump": [ + "%1 torrão de açúcar", + "%1 torrões de açúcar" + ], + "%1 heavenly chip": [ + "%1 gota divina", + "%1 gotas divinas" + ], + "%1 golden cookie": [ + "%1 cookie dourado", + "%1 cookies dourados" + ], + "%1 building": [ + "%1 construção", + "%1 construções" + ], + "%1 upgrade": [ + "%1 melhoria", + "%1 melhorias" + ], + "Yes": "Sim", + "No": "Não", + "Click here": "Clique aqui", + "Don't show this again": "Não mostrar novamente", + "Delete all": "Excluir tudo", + "Back": "Voltar", + "Confirm": "Confirmar", + "All done!": "Tudo pronto!", + "Load": "Carregar", + "Save": "Salvar", + "Quit": "Sair", + "Save & Quit": "Salvar e sair", + "Cancel": "Cancelar", + "Nevermind": "Deixa pra lá", + "Random": "Aleatório", + "You have %1.": "Você tem %1.", + "Click": "Clicar", + "Shift": "/", + "Shift-click": "Shift+clique", + "Ctrl": "/", + "Ctrl-click": "Ctrl+clique", + "Esc": "/", + "Cookies": "/", + "%1 day": [ + "%1 dia", + "%1 dias" + ], + "%1 hour": [ + "%1 hora", + "%1 horas" + ], + "%1 minute": [ + "%1 minuto", + "%1 minutos" + ], + "%1 second": [ + "%1 segundo", + "%1 segundos" + ], + "less than 1 second": "menos que 1 segundo", + "in %1": "em %1", + "%1 ago": "%1 atrás", + "%1 remaining": "%1 restante(s)", + "%1 worth": "%1 de valor", + "%1 of CpS": "%1 de CpS", + "%1% of bank": "%1% de banco", + "per second:": "por segundo:", + "just now": "agora pouco", + "a long while": "há muito tempo", + "forever": "para sempre ", + "Time remaining:": "Tempo restante:", + "Big clickable cookie": "Grande cookie clicável", + "Golden cookie": "Cookie dourado", + "Wrath cookie": "Cookie da ira", + "Reindeer": "Rena", + "Options": "Opções", + "General": "Geral", + "Settings": "Configurações", + "Volume": "/", + "Volume (music)": "Volume (música)", + "ON": "LIGADO", + "OFF": "DESLIGADO", + "Fancy graphics": "Gráficos chiques", + "CSS filters": "Filtros de CSS", + "visual improvements; disabling may improve performance": "melhorias visuais; desativar pode melhorar o desempenho", + "Particles": "Partículas", + "Numbers": "Números", + "numbers that pop up when clicking the cookie": "números que são exibidos ao clicar no cookie ", + "Milk [setting]": "Leite", + "Cursors [setting]": "Cursores", + "visual display of your cursors": "exibição visual dos seus cursores", + "Wobbly cookie": "Tremida do cookie", + "Alt cookie sound": "som de cookie alternativo", + "Icon crates": "Caixas de ícones", + "display boxes around upgrades and achievements in Stats": "exibe caixas perto das melhorias e conquistas nas Estatísticas ", + "Alt font": "Fonte alternativa", + "your cookies are displayed using a monospace font": "seus cookies são exibidos com uma fonte monoespaçada", + "Short numbers": "Números curtos", + "Fast notes": "Notificações rápidas", + "notifications disappear much faster": "as notificações desaparecem muito mais rápido", + "Closing warning": "Aviso de fechamento", + "the game will ask you to confirm when you close the window": "o jogo vai pedir para você confirmar quando fechar a janela", + "Defocus": "Desfocar", + "the game will be less resource-intensive when out of focus": "o jogo fará um uso menos intenso dos recursos quando estiver fora de foco ", + "Extra buttons": "Botões extras", + "add options on buildings like Mute": "adiciona opções em construções, como Silenciar", + "Lump confirmation": "Confirmação de torrão", + "the game will ask you to confirm before spending sugar lumps": "o jogo vai pedir para você confirmar antes de gastar torrões de açúcar", + "Custom grandmas": "Vovós personalizadas", + "some grandmas will be named after Patreon supporters": "algumas vovós receberão os nomes dos apoiadores do Patreon ", + "Scary stuff": "Coisas medonhas", + "Sleep mode timeout": "Intervalo para o modo de suspensão", + "on slower computers, the game will put itself in sleep mode when it's inactive and starts to lag out; offline CpS production kicks in during sleep mode": "em computadores mais lentos, o jogo vai entrar em modo de suspensão quando estiver inativo e começar a ter lag; a produção offline de CpS é iniciada no modo de suspensão", + "Music in background": "Música em plano de fundo", + "music will keep playing even when the game window isn't focused": "a música continuará tocando mesmo se a janela do jogo estiver de foco", + "Cloud saving": "Salvamento na nuvem", + "allow use of Steam Cloud for save backups": "permite que você use a Nuvem Steam para guardar backups.", + "Purge Cloud": "Excluir nuvem", + "Current Cloud use:": "Uso atual da nuvem:", + "No Cloud access at the moment.": "Nenhum acesso à nuvem no momento.", + "Screen reader mode": "Modo de leitor de tela", + "allows optimizations for screen readers; game will reload": "permite otimizações para leitores de tela. O jogo será reiniciado.", + "Discord status": "Status no Discord", + "if Discord is on, show your game info as activity status": "se o Discord estiver ligado, mostra informações do jogo como status de atividade.", + "Language": "Idioma", + "Language: %1": "Idioma: %1", + "Change language": "Mudar idioma", + "note: this will save and reload your game": "obs.: isso fará o jogo salvar e reiniciar", + "Press %1 to toggle fullscreen.": "Pressione %1 para mudar para tela cheia.", + "Other versions": "Outras versões", + "Beta": "/", + "Stats": "Estatísticas", + "Shadow achievements": "Conquistas das sombras", + "These are feats that are either unfair or difficult to attain. They do not give milk.": "Esses são feitos injustos ou difíceis de alcançar. Eles não dão leite.", + "starter milk": "leite inicial", + "for %1 achievements": "por %1 conquistas", + "appeased": "apaziguadas", + "awoken": "despertadas", + "displeased": "descontentes", + "angered": "com raiva", + "Cookies in bank:": "Cookies no banco:", + "Cookies baked (this ascension):": "Cookies assados (nesta ascensão):", + "Cookies baked (all time):": "Cookies assados (desde o início):", + "Cookies forfeited by ascending:": "Cookies perdidos ao ascender:", + "Legacy started:": "Legado iniciado:", + "with %1 ascension": [ + "com %1 ascensão ", + "com %1 ascensões" + ], + "Run started:": "Sequência iniciada:", + "Buildings owned:": "Construções obtidas:", + "Cookies per second:": "Cookies por segundo:", + "Raw cookies per second:": "Cookies crus por segundo:", + "highest this ascension:": "valor mais alto nesta ascensão:", + "multiplier:": "multiplicador:", + "withered:": "murchos:", + "Cookies per click:": "Cookies por clique:", + "Cookie clicks:": "Cliques em cookies:", + "Hand-made cookies:": "Cookies caseiros:", + "Golden cookie clicks:": "Cliques em cookies dourados:", + "Random drop multiplier:": "Multiplicador de item aleatório:", + "all time:": "desde o início:", + "Running version:": "Versão em execução:", + "Special": "Especial", + "Challenge mode:": "Modo de desafio:", + "Seasonal event:": "Evento de temporada:", + "Research:": "Pesquisa:", + "Grandmatriarchs status:": "Condição das vótriarcas:", + "Pledge:": "Juramento:", + "Wrinklers popped:": "Enrugadores surgidos:", + "Sugar lumps harvested:": "Torrões de açúcar colhidos:", + "Reindeer found:": "Renas encontradas:", + "Santa stages unlocked:": "Fases do Papai Noel liberadas:", + "Dragon training:": "Treinamento de dragão:", + "Prestige": "Prestígio", + "at %1% of its potential (+%2% CpS)": "Em %1% de seu potencial (+%2% CpS)", + "Prestige upgrades unlocked:": "Melhorias de prestígio desbloqueadas:", + "Upgrades unlocked:": "Melhorias desbloqueadas:", + "Achievements unlocked:": "Conquistas desbloqueadas:", + "Kitten multiplier:": "Multiplicador de gatinhos:", + "Milk": "Leite", + "Milk:": "Leite:", + "Milk flavors unlocked:": "Sabores de leite desbloqueados:", + "Milk is gained with each achievement. It can unlock unique upgrades over time.": "Leite é obtido a cada conquista. Ele pode desbloquear melhorias únicas com o tempo.", + "Rank %1": "Classificação %1", + "Automatic": "Automático", + "Plain milk": "Leite puro", + "Chocolate milk": "Leite de chocolate", + "Raspberry milk": "Leite de framboesa", + "Orange milk": "Leite de laranja", + "Caramel milk": "Leite de caramelo", + "Banana milk": "Leite de banana", + "Lime milk": "Leite de limão", + "Blueberry milk": "Leite de mirtilo", + "Strawberry milk": "Leite de morango", + "Vanilla milk": "Leite de baunilha", + "Zebra milk": "Leite de zebra", + "Cosmic milk": "Leite cósmico", + "Flaming milk": "Leite flamejante", + "Sanguine milk": "Leite sanguíneo", + "Midas milk": "Leite de Midas", + "Midnight milk": "Leite da meia-noite", + "Green inferno milk": "Leite inferno verde", + "Frostfire milk": "Leite fogo congelado", + "Honey milk": "Leite de mel", + "Coffee milk": "Leite de café", + "Tea milk": "Leite de chá", + "Coconut milk": "Leite de coco", + "Cherry milk": "Leite de cereja", + "Soy milk": "Leite de soja", + "Spiced milk": "Leite temperado", + "Maple milk": "Leite de bordo", + "Mint milk": "Leite de menta", + "Licorice milk": "Leite de alcaçuz", + "Rose milk": "Leite de rosas", + "Dragonfruit milk": "Leite de pitaia", + "Info": "Informações", + "About": "Sobre", + "Cookie Clicker is a javascript game by %1 and %2.": "Cookie Clicker é um jogo em javascript criado por %1 e %2.", + "Music by %1.": "Música por %1.", + "Useful links: %1, %2, %3, %4.": "Links úteis: %1, %2, %3, %4.", + "This version of Cookie Clicker is 100% free, forever. Want to support us so we can keep developing games? Here's some ways you can help:%1": "Esta versão do Cookie Clicker é 100% gratuita, para sempre. Quer nos apoiar para que continuemos desenvolvendo jogos? Aqui estão algumas formas de ajudar:%1", + "Note: if you find a new bug after an update and you're using a 3rd-party add-on, make sure it's not just your add-on causing it!": "Observação: se encontrar algum bug depois de uma atualização e você estiver usando uma extensão de outra empresa, certifique-se de que ele não está sendo causado pela extensão.", + "Warning: clearing your browser cache or cookies (what else?) will result in your save being wiped. Export your save and back it up first!": "Aviso: limpar o cache e os cookies (o que mais?) do seu navegador causará a exclusão do seu arquivo de salvamento. Exporte o seu arquivo de salvamento e faça um backup antes!", + "Version history": "Histórico de versões", + "Official website": "Site oficial", + "Note: links will open in your web browser.": "Obs.: os links abrirão em seu navegador.", + "Note: older update notes are in English.": "Obs.: notas de atualização antigas estão em inglês.", + "This feature is not yet available in your language.": "Esse recurso ainda não está disponível no seu idioma.", + "Restart with new changes": "Reiniciar com novas mudanças", + "Cookie Clicker is in sleep mode.": "O Cookie Clicker está no modo de suspensão.", + "Cookie Clicker is in sleep mode and generating offline cookies.": "O Cookie Clicker está no modo de suspensão e gerando cookies offline.", + "%1 to resume from your save file.": "%1 para continuar do seu arquivo de salvamento.", + "(this happens when too many frames are skipped at once,
usually when the game has been running in the background for a while)
(you can turn this feature off in the settings menu)": "(isso acontece quando quadros demais são pulados de uma só vez,
normalmente quando o jogo fica rodando em segundo plano por um tempo)
(você pode desligar essa funcionalidade no menu de configurações)", + "Are you sure you want to close Cookie Clicker?": "Tem certeza que deseja fechar o Cookie Clicker?", + "Back up your save!": "Faça um backup do seu arquivo de salvamento!", + "Hello again! Just a reminder that you may want to back up your Cookie Clicker save every once in a while, just in case.
To do so, go to Options and hit \"Export save\" or \"Save to file\"!": "Olá de novo! Apenas um lembrete de que talvez você queira fazer um backup do seu arquivo de salvamento do Cookie Clicker de vez em quando, só para garantir.
Para fazer isso, vá para Opções e clique em \"Exportar salvamento\" ou \"Salvar em arquivo\"!", + "Save manually (the game autosaves every 60 seconds; shortcut: ctrl+S)": "Salvar manualmente (o jogo faz o salvamento automático a cada 60 segundos; atalho: ctrl+S)", + "You can use this to backup your save or to transfer it to another computer (shortcut for import: ctrl+O)": "Você pode usar isso para fazer um backup do seu arquivo de salvamento ou para transferi-lo para outro computador (atalho para importar: ctrl+O)", + "Save to file": "Salvar em arquivo", + "Load from file": "Carregar do arquivo", + "Use this to keep backups on your computer": "Use isso para manter os backups no seu computador", + "Export save": "Exportar salvamento", + "This is your save code.
Copy it and keep it somewhere safe!": "Este é o seu código de salvamento.
Faça uma cópia e guarde em um lugar seguro!", + "Import save": "Importar salvamento", + "Please paste in the code that was given to you on save export.": "Cole o código que foi dado a você quando exportou o salvamento.", + "Game saved": "Jogo salvo", + "Game loaded": "Jogo carregado", + "Error while saving": "Erro ao salvar", + "Export your save instead!": "Em vez disso, exporte o seu salvamento!", + "Error importing save": "Erro ao importar salvamento", + "Oops, looks like the import string is all wrong!": "Opa! Parece que a sequência de importação está toda errada!", + "You are attempting to load a save from a future version (v. %1; you are using v. %2).": "Você está tentando carregar um salvamento de uma versão futura (v. %1; você está usando a v. %2).", + "Sorry, you can't import saves from the classic version.": "Desculpe. Você não pode importar salvamentos da versão clássica.", + "Wipe save": "Excluir o salvamento", + "Delete all your progress, including your achievements": "Exclui todo o seu progresso, incluindo suas conquistas", + "Do you REALLY want to wipe your save?
You will lose your progress, your achievements, and your heavenly chips!": "Deseja MESMO excluir seu salvamento?
Você vai perder seu progresso, suas conquistas e as suas gotas divinas!", + "Whoah now, are you really, REALLY sure you want to go through with this?
Don't say we didn't warn you!": "Espera aí. Você tem certeza MESMO que quer continuar com isso?
Não diga que não avisamos!", + "Game reset": "Redefinir o jogo", + "Good bye, cookies.": "Adeus, cookies.", + "Welcome back!": "Boas-vindas de volta!", + "You earned %1 while you were away.": "Você ganhou %1 enquanto esteve fora.", + "Mods": "/", + "Manage mods": "Gerenciar mods", + "Publish mods": "Publicar mods", + "Update published mods": "Atualizar mods publicados", + "Only use mods from trusted sources. Some mods may require a game restart to take effect.": "Use mods apenas de fontes confiáveis. Alguns mods podem necessitar que o jogo seja reiniciado pra fazerem efeito.", + "Enable": "Habilitar", + "Disable": "Desabilitar", + "Priority up": "Maior prioridade", + "Priority down": "Menor prioridade", + "New mod": "Novo mod", + "Select folder": "Selecionar pasta", + "Select updated folder": "Selecionar pasta atualizada", + "Select a mod.": "Selecione um mod.", + "Open folder": "Abrir pasta", + "Open Workshop": "Abrir Oficina", + "Open Workshop page": "Abrir página da Oficina", + "Unsubscribe": "Cancelar inscrição", + "Local mod": "Mod local", + "Open %1 folder": "Abrir pasta %1", + "Description": "Descrição", + "Image": "Imagem", + "Name": "Nome", + "Title": "Título", + "Visibility": "Visibilidade", + "Author": "Autor", + "File size": "Tamanho do arquivo", + "Tags": "/", + "Dependencies": "Dependências", + "Publish to Workshop": "Publicar na Oficina", + "Version": "Versão", + "Error!": "Erro!", + "none": "nenhuma", + "Publishing...": "Publicando...", + "Updating...": "Atualizando...", + "Success!": "Sucesso!", + "Refresh": "Recarregar", + "Last update:": "Última atualização:", + "Mods are loaded from top to bottom.": "Mods são carregados de cima para baixo.", + "Some mods couldn't be loaded:": "Alguns mods não puderam ser carregados:", + "This tool allows you to upload new mods to the Steam Workshop.
You need to select a mod folder containing a properly-formatted %1 file.
See the included sample mods for examples.": "Essa ferramenta permite que você carregue novos mods na Oficina Steam.
Você precisa selecionar uma pasta de mods contendo um arquivo %1 adequadamente formatado.
Veja as amostras de mod inclusas como exemplo.", + "Mod data": "Dados de mods", + "No mod data present.": "Nenhum dado de mods presente.", + "These are the mods present in your save data. You may delete some of this data to make your save file smaller.": "Esses são os mods presentes nos seus dados de salvamento. Você pode excluir alguns desses dados para deixar seu arquivo menor.", + "(loaded)": "(carregado)", + "%1 char": [ + "%1 caractere", + "%1 caracteres" + ], + "Check mod data": "Verificar dados de mods", + "view and delete save data created by mods": "visualizar e excluir dados criados pelos mods", + "New update!": "Nova atualização!", + "New version available: v. %1!": "Nova versão disponível: v. %1!", + "Update note: \"%1\"": "Aviso de atualização: \"%1\"", + "Refresh to get it!": "Recarregue para recebê-la!", + "You are currently playing Cookie Clicker on the %1 protocol.
The %2 version uses a different save slot than this one.
Click this lock to reload the page and switch to the %2 version!": "No momento, você está jogando Cookie Clicker no protocolo %1.
A versão %2 usa um espaço de salvamento diferente desta.
Clique nesse cadeado para recarregar a página e mudar para a versão %2!", + "+%1 more notification.": [ + "+%1 notificação a mais.", + "+%1 notificações a mais." + ], + "Christmas": "Natal", + "Valentine's day": "Dia dos Namorados", + "Business day": "Dia dos Negócios", + "Easter": "Páscoa", + "Halloween": "Dia das Bruxas", + "%1 has started!": "O %1 começou!", + "%1 is over.": "O %1 terminou.", + "%1's bakery": "Confeitaria de %1", + "Name your bakery": "Dê um nome para sua confeitaria", + "What should your bakery's name be?": "Qual deve ser o nome da sua confeitaria?", + "bakery random name, 1st half": [ + "Mágica", + "Fantástica", + "Chique", + "Audaciosa", + "Elegante", + "Bonita", + "Fofa", + "Pirata", + "Ninja", + "Zumbi", + "Robô", + "Radical", + "Urbana", + "Legal", + "Demais", + "Doce", + "Horrível", + "Dupla", + "Tripla", + "Turbo", + "Tecnológica", + "Disco", + "Eletro", + "Dançante", + "Maravilha", + "Mutante", + "Espaço", + "Ciência", + "Medieval", + "Futuro", + "Capitã", + "Barbada", + "Amável", + "Pequenina", + "Grande", + "Fogo", + "Água", + "Congelada", + "Metal", + "Plástico", + "Sólido", + "Líquido", + "Mofado", + "Brilhante", + "Feliz", + "Pequena Feliz", + "Pegajosa", + "Saborosa", + "Deliciosa", + "Faminta", + "Gananciosa", + "Letal", + "Professora", + "Doutora", + "Energia", + "Chocolate", + "Quebradiço", + "Chocolatinho", + "Justa", + "Gloriosa", + "Mnemônica", + "Psíquica", + "Frenética", + "Agitada", + "Louca", + "Real", + "El", + "Von" + ], + "bakery random name, 2nd half": [ + "Cookie", + "Biscoito", + "Bolinho", + "Scone", + "Cupcake", + "Panqueca", + "Gotas de chocolate", + "Roda dentada", + "Engenhoca", + "Fantoche", + "Luva", + "Meia", + "Bule", + "Mistério", + "Confeiteiro", + "Cozinheira", + "Vovó", + "Clique", + "Clicadora", + "Espaçonave", + "Fábrica", + "Portal", + "Máquina", + "Experimento", + "Monstro", + "Pânico", + "Ladra", + "Bandida", + "Saque", + "Batata", + "Pizza", + "Hambúrguer", + "Salsicha", + "Almôndega", + "Espaguete", + "Macarrão", + "Gatinho", + "Cachorrinho", + "Girafa", + "Zebra", + "Papagaio", + "Golfinho", + "Patinho", + "Bicho-preguiça", + "Tartaruga", + "Goblin", + "Fada", + "Gnomo", + "Computador", + "Pirata", + "Ninja", + "Zumbi", + "Robô" + ], + "%1, age %2": "%1, idade %2", + "Sugar lumps!": "Torrões de açúcar!", + "Because you've baked a billion cookies in total, you are now attracting sugar lumps. They coalesce quietly near the top of your screen, under the Stats button.
You will be able to harvest them when they're ripe, after which you may spend them on all sorts of things!": "Como você assou um bilhão de cookies no total, agora você está atraindo torrões de açúcar. Eles se aderem discretamente na parte superior da sua tela, sob o botão Estatísticas.
Você poderá colhê-los quando eles estiverem prontos. Depois disso, você poderá gastá-los em várias coisas!", + "A sugar lump is coalescing here, attracted by your accomplishments.": "Um torrão de açúcar está se aderindo aqui, atraído pelos seus feitos.", + "Your sugar lumps mature after %1,
ripen after %2,
and fall after %3.": "Seus torrões de açúcar ficam maduros depois de %1,
prontos depois de %2,
e caem depois de %3.", + "• Sugar lumps can be harvested when mature, though if left alone beyond that point they will start ripening (increasing the chance of harvesting them) and will eventually fall and be auto-harvested after some time.
• Sugar lumps are delicious and may be used as currency for all sorts of things.
• Once a sugar lump is harvested, another one will start growing in its place.
• Note that sugar lumps keep growing when the game is closed.": "• Os torrões de açúcar podem ser colhidos quando estiverem maduros, mas se deixados sozinhos por mais tempo que isso, eles vão começar a ficar prontos (aumentando as chances de colheita) e, eventualmente, vão cair e ser colhidos automaticamente depois de um tempo.
• Torrões de açúcar são deliciosos e podem ser usados como moeda para várias coisas.
• Quando um torrão de açúcar é colhido, outro vai começar a crescer em seu lugar.
• Observe que os torrões continuam crescendo quando o jogo é fechado.", + "This sugar lump has been exposed to time travel shenanigans and will take an excruciating %1 to reach maturity.": "Esse torrão de açúcar foi exposto a umas coisas de viagem no tempo e vai levar excruciantes %1 para amadurecer.", + "This sugar lump is still growing and will take %1 to reach maturity.": "Este torrão de açúcar ainda está crescendo e vai levar %1 para amadurecer.", + "This sugar lump is mature and will be ripe in %1.
You may click it to harvest it now, but there is a 50% chance you won't get anything.": "Este torrão de açúcar está maduro e estará pronto em %1.
Você pode clicar para colhê-lo agora, mas há uma chance de 50% de você não obter nada.", + "This sugar lump is ripe! Click it to harvest it.
If you do nothing, it will auto-harvest in %1.": "Este torrão de açúcar está pronto! Clique nele para colher.
Se você não fizer nada, ele será colhido automaticamente em %1.", + "This sugar lump grew to be bifurcated; harvesting it has a 50% chance of yielding two lumps.": "Este torrão de açúcar começou a se tornar bifurcado; colhê-lo tem uma chance de 50% de render dois torrões de açúcar.", + "This sugar lump grew to be golden; harvesting it will yield 2 to 7 lumps, your current cookies will be doubled (capped to a gain of 24 hours of your CpS), and you will find 10% more golden cookies for the next 24 hours.": "Este torrão de açúcar começou a se tornar dourado; colhê-lo vai render de 2 a 7 torrões, seus cookies atuais serão dobrados (limitados a um ganho de 24 horas do seu CpS), e você encontrará 10% mais cookies dourados pelas próximas 24 horas.", + "This sugar lump was affected by the elders and grew to be meaty; harvesting it will yield between 0 and 2 lumps.": "Este torrão de açúcar foi afetado pelas ancestrais e cresceu até ficar carnudo; colhê-lo vai render entre 0 e 2 torrões.", + "This sugar lump is caramelized, its stickiness binding it to unexpected things; harvesting it will yield between 1 and 3 lumps and will refill your sugar lump cooldowns.": "Este torrão de açúcar é caramelizado, com sua viscosidade o unindo a coisas inesperadas; colhê-lo vai render entre 1 e 3 torrões e vai reabastecer seus tempos de espera de torrões.", + "You harvested %1 while you were away.": "Você colheu %1 enquanto esteve fora.", + "Sugar blessing activated!": "Benção do açúcar ativada!", + "Your cookies have been doubled.
+10% golden cookies for the next 24 hours.": "Seus cookies foram dobrados.
+10% de cookies dourados pelas próximas 24 horas.", + "Sugar lump cooldowns cleared!": "Tempos de espera de torrões de açúcar zerados!", + "Botched harvest!": "Colheita fracassada!", + "Do you want to spend %1 to %2?": "Você quer gastar de %1 a %2?", + "Heralds": "Arautos", + "%1 herald": [ + "%1 arauto", + "%1 arautos" + ], + "Heralds couldn't be loaded. There may be an issue with our servers, or you are playing the game locally.": "Não foi possível carregar os arautos. Talvez nossos servidores estejam com problema, ou pode ser que você esteja jogando localmente.", + "There are no heralds at the moment. Please consider donating to our Patreon!": "Não há nenhum arauto no momento. Considere doar para o nosso Patreon!", + "selflessly inspiring a boost in production for everyone, resulting in %1.": "inspirando, de forma altruísta, um impulso na produção de todos, resultando em %1.", + "+%1% cookies per second": "+%1% cookies por segundo", + "You are in a Born again run, and are not currently benefiting from heralds.": "Você está em uma sequência de Nascido de novo, e no momento, não se beneficia de arautos.", + "You own the Heralds upgrade, and therefore benefit from the production boost.": "Você possui a melhoria Arautos, portanto, se beneficia do impulso na produção.", + "To benefit from the herald bonus, you need a special upgrade you do not yet own. You will permanently unlock it later in the game.": "Para se beneficiar do bônus do arauto, você precisa de uma melhoria especial que ainda não possui. Você vai desbloqueá-la permanentemente com o avançar do jogo.", + "Heralds are people who have donated to our highest Patreon tier, and are limited to 100.
Each herald gives everyone +1% CpS.
Heralds benefit everyone playing the game, regardless of whether you donated.": "Arautos são pessoas que doaram para o nível mais alto do nosso Patreon. Eles são limitados a 100.
Cada arauto dá +1% CpS para todo mundo.
Os arautos beneficiam todos os jogadores, tendo eles doado ou não.", + "Every %1 current players on Steam generates 1 herald, up to %2 heralds.
Each herald gives everyone +1% CpS.": "Cada %1 jogadores atuais na Steam geram 1 arauto, até %2 arautos.
Cada arauto dá a todo mundo +1% de CpS.", + "+%1!": "/", + "You found %1!": "Você encontrou %1!", + "Found %1!": "Encontrou %1!", + "You also found %1!": "Você também encontrou %1!", + "Lost %1!": "Perdeu %1!", + "Sweet!
Found 1 sugar lump!": "Legal!
Encontrou 1 torrão de açúcar!", + "Lucky!": "Que sorte!", + "Ruin!": "Ruína!", + "Cookie chain over. You made %1.": "Corrente de cookies terminada. Você conseguiu %1.", + "Cookie chain": "Corrente de cookies", + "Cookie chain broken.
You made %1.": "Corrente de cookies quebrada.
Você conseguiu %1.", + "Cookie blab": [ + "Fragilidade dos cookies x3 por 60 segundos!", + "Quantidade de chocolate x7 por 77 segundos!", + "Elasticidade da massa dividida pela metade por 66 segundos!", + "Brilho do cookie dourado dobrado por 3 segundos!", + "Economia do mundo dividida pela metade por 30 segundos!", + "Beijos das vovós 23% mais rápidos por 45 segundos!", + "Obrigado por clicar!", + "Te enganei! Isso foi só um teste.", + "Cliques em cookies dourados +1!", + "Seu clique foi registrado. Obrigado pela cooperação.", + "Valeu! Na mosca!", + "Obrigado! Uma equipe foi enviada.", + "Eles sabem.", + "Opa. Era só um cookie de chocolate com papel-alumínio brilhante." + ], + "Exploded a wrinkler": "Explodiu um enrugador", + "Exploded a shiny wrinkler": "Explodiu um enrugador brilhante ", + "Swallowed:": "Engoliu:", + "Reindeer names": [ + "Corredora", + "Dançarina", + "Empinadora", + "Raposa", + "Cometa", + "Cupido", + "Trovão", + "Relâmpago", + "Rudolph" + ], + "The reindeer gives you %1.": "A rena te dá %1.", + "You are also rewarded with %1!": "Você também recebe uma recompensa de %1!", + "You are granted %1.": "Você recebe %1.", + "Found a present!": "Encontrei um presente!", + "You find a present which contains...": "Você encontra um presente que contém...", + "Evolve": "Evoluir", + "Festive test tube": "Tubo de ensaio festivo", + "Festive ornament": "Ornamento festivo", + "Festive wreath": "Guirlanda festiva", + "Festive tree": "Árvore festiva", + "Festive present": "Presente festivo", + "Festive elf fetus": "Feto elfo festivo", + "Elf toddler": "Bebê elfo", + "Elfling": "Duende", + "Young elf": "Elfo jovem", + "Bulky elf": "Elfo robusto", + "Nick": "Noel", + "Santa Claus": "Papai Noel", + "Elder Santa": "Noel Ancestral", + "True Santa": "Noel Verdadeiro", + "Final Claus": "Noel Final", + "Dragon egg": "Ovo de dragão", + "Shivering dragon egg": "Ovo de dragão tremendo", + "Krumblor, cookie hatchling": "Krumblor, filhote de cookie", + "Krumblor, cookie dragon": "Krumblor, dragão de cookie", + "Train %1": "Treine %1", + "Aura: %1": "/", + "Chip it": "Tire um pedaço", + "Hatch it": "Choque", + "Bake dragon cookie": "Asse o cookie de dragão", + "Delicious!": "Delicioso!", + "Train secondary aura": "Treine a aura secundária", + "Lets you use two dragon auras simultaneously": "Te permite usar duas auras de dragões simultaneamente", + "Your dragon is fully trained.": "O treinamento do seu dragão foi concluído", + "%1 of every building": "%1 de todas as construções", + "No aura": "Sem aura", + "Set your dragon's aura": "Determine a aura do seu dragão", + "Set your dragon's secondary aura": "Determine a aura secundária do seu dragão", + "Select an aura from those your dragon knows.": "Selecione uma das auras que seu dragão conhece.", + "One tenth of every other dragon aura, combined.": "Um décimo de todas as outras auras de dragão combinadas.", + "Switching your aura is free because you own no buildings.": "Como você não possui nenhuma construção, trocar de aura é grátis.", + "The cost of switching your aura is %1.
This will affect your CpS!": "O custo para trocar de aura é %1.
Isso vai afetar o seu CpS!", + "Your dragon dropped something!": "Seu dragão deixou alguma coisa cair!", + "Breath of Milk": "Bafo de Leite", + "Dragon Cursor": "Cursor de Dragão", + "Elder Battalion": "Batalhão de Ancestrais", + "Reaper of Fields": "Ceifeiro de Campos", + "Earth Shatterer": "Destruidor da Terra", + "Master of the Armory": "Mestre do Arsenal", + "Fierce Hoarder": "Acumulador Ávido", + "Dragon God": "Deus Dragão", + "Arcane Aura": "Aura Arcana", + "Dragonflight": "Voo do Dragão", + "Ancestral Metamorphosis": "Metamorfose Ancestral", + "Unholy Dominion": "Domínio Profano", + "Epoch Manipulator": "Manipulador de Época", + "Mind Over Matter": "Mente Sobre Matéria", + "Radiant Appetite": "Apetite Radiante", + "Dragon's Fortune": "Fortuna de Dragão", + "Dragon's Curve": "Curva de Dragão", + "Reality Bending": "Dobrando a Realidade", + "Dragon Orbs": "Orbes de Dragão", + "Supreme Intellect": "Intelecto Supremo", + "News :": "Novidades:", + "Ticker (grandma)": [ + "Cookies úmidos.", + "Nós somos vovós legais.", + "Servidão contratada.", + "Vem dar um beijo na vovó.", + "Por que não me visita com mais frequência?", + "Me liga..." + ], + "Ticker (threatening grandma)": [ + "Completamente nojento.", + "Você me dá nojo.", + "Você me enoja.", + "Nós nos levantamos.", + "É o começo.", + "Tudo terá terminado em breve.", + "Você poderia ter interrompido isso." + ], + "Ticker (angry grandma)": [ + "Aquela coisinha suja nos traiu.", + "Aquela coisinha repugnante tentou se livrar de nós.", + "Ela achou que iríamos embora se nos vendesse. Que excêntrico.", + "Eu consigo sentir o cheio dos seus cookies podres." + ], + "Ticker (grandmas return)": [ + "murchar", + "contorcer", + "pulsar", + "roer", + "Nós nos levantaremos novamente.", + "Foi apenas um tropeço.", + "Não foi o suficiente para nos saciar.", + "Tarde demais." + ], + "Ticker (grandma invasion start)": [ + "milhões de velhinhas desaparecidas!", + "famílias de todo o continente relatam vovós agitadas e paralisadas!", + "enfermeiros relatam \"cheiro estranho de massa de cookie\" em pacientes idosas!" + ], + "Ticker (grandma invasion rise)": [ + "cidade em desordem depois de velhinhas invadirem casas para raptar crianças e roubar utensílios de cozinha!", + "o continente inteiro enfrenta um êxodo de velhinhas em massa!", + "idosas ficam paralisadas nas ruas enquanto um xarope açucarado e quente vaza delas!" + ], + "Ticker (grandma invasion full)": [ + "\"gavinhas de carne\" enrugadas visíveis do espaço!", + "toda a esperança é perdida, enquanto uma imensidão de carne e massa que se contorce engolfa a cidade toda!", + "o pesadelo continua, enquanto enormes carnes enrugadas se expandem em velocidades alarmantes!" + ], + "Ticker (Farm)": [ + "de acordo com cientistas, fazendas de cookies liberam um tipo de chocolate prejudicial em nossos rios!", + "a controvérsia do chocolate modificado geneticamente atinge os fazendeiros de cookies!", + "cookies de fazendas são considerados impróprios para veganos, diz nutricionista." + ], + "Ticker (Mine)": [ + "o nosso planeta está ficando mais leve? Especialistas examinam os efeitos da intensa mineração de chocolates.", + "foi descoberto que as minas de chocolates são causadoras de terremotos e dolinas!", + "descoberta de \"seres de chocolate peculiares\" nas profundezas das minas de chocolate!" + ], + "Ticker (Factory)": [ + "fábricas de cookies ligadas ao aquecimento global!", + "começa a greve nas fábricas de cookies e capangas robóticos são empregados para substituir a força de trabalho!", + "greve nas fábricas de chocolate - trabalhadores exigem fim do salário em cookies!" + ], + "Ticker (Bank)": [ + "empréstimos de cookies aumentam por pessoas não poderem mais pagar por eles com dinheiro comum.", + "os cookies lentamente seguem o caminho para se tornarem competidores de moedas tradicionais!", + "a maioria das confeitarias agora contam com caixas eletrônicos que facilitam os depósitos e retiradas de cookies." + ], + "Ticker (Temple)": [ + "templos de chocolate descobertos recentemente estão, agora, cheios de cultos relacionados aos cookies; milhares rezam para o Confeiteiro no céu!", + "teístas do mundo descobrem uma nova religião envolvendo cookies - \"Caramba, parece que estávamos errados o tempo todo!\"", + "exploradores recuperam um artefato antigo de um templo abandonado; arqueólogos ficam maravilhados com rolo de massa com centenas de anos de idade!" + ], + "Ticker (Wizard tower)": [ + "obtenha os seus novos encantamentos e maldições na Feira Anual Nacional de Feitiçaria! Preços exclusivos de runas e livros de feitiços.", + "magos dos cookies negam envolvimento em nascimento de bebê assustadoramente feio - a criança \"realmente tem um rosto muito esquisito, mas natural\", dizem os doutores.", + "\"Qualquer mágica suficientemente bruta é indistinguível da tecnologia\", afirma renomado tecnomago." + ], + "Ticker (Shipment)": [ + "novo planeta de chocolate encontrado se torna alvo de espaçonaves que comercializam cookies!", + "planeta de chocolate massivo com núcleo composto por 99,8% de chocolate amargo puro é encontrado!", + "organismos baseados em chocolate são encontrados em planeta distante!" + ], + "Ticker (Alchemy lab)": [ + "reservas nacionais de ouro diminuem conforme são transformadas, cada vez mais, em cookies!", + "descoberta revela que a prata também é transmutável em chocolate branco!", + "laboratório de alquimia defeituoso é fechado depois da descoberta de que ele convertia cookies em ouro inútil." + ], + "Ticker (Portal)": [ + "nação preocupada com o surgimento de mais e mais criaturas bizarras de portais dimensionais!", + "o turismo para o cookieverso se torna popular entre adolescentes entediados! A taxa de mortes atinge 73%!", + "estudo suspeita que os portais do cookieverso causam envelhecimento acelerado e obsessão com a cozinha." + ], + "Ticker (Time machine)": [ + "máquinas do tempo envolvidas em escândalo de alteração da história! Ou será que não?", + "historiador diz que cookies trazidos do passado são \"impróprios para o consumo humano\".", + "\"Eu vi o futuro\", diz um operador de máquina do tempo, \"e eu não quero voltar lá.\"" + ], + "Ticker (Antimatter condenser)": [ + "a cidade inteira parece ter sido engolida por um buraco negro induzido por antimatéria; fontes mais confiáveis afirmam que a cidade \"nunca existiu de verdade\"!", + "pesquisadores concluem que o que a indústria dos cookies precisa, antes de mais nada, é de \"mais ímãs\".", + "primeiro condensador antimatéria ligado com sucesso, e ele não destrói a realidade!" + ], + "Ticker (Prism)": [ + "cientistas alertam sobre o risco da transformação sistemática de luz em matéria - \"Um dia, ficaremos cheios de matéria e sem luz nenhuma!\"", + "agora cookies são assados, literalmente, na velocidade da luz graças a novas engenhocas prismáticas.", + "cidadãos do mundo todo recebem avisos para não se preocuparem com os frequentes clarões atmosféricos." + ], + "Ticker (Chancemaker)": [ + "anomalias estatísticas estranhas continuam, enquanto a previsão do tempo se prova precisa por 3 dias seguidos, o que é algo sem precedentes!", + "cassino local é arruinado depois de todos os jogadores, de alguma forma, ganharem por uma semana sem parar! \"Talvez ainda estejamos bem\", diz o dono depois de ser atingido por raios 47 vezes.", + "de alguma forma, nação vizinha elege presidente com políticas sensatas em um assustador golpe de sorte!" + ], + "Ticker (Fractal engine)": [ + "morador local \"cansado do Cookie Clicker\" acha as autorreferências \"irritantes e extremamente precisas\".", + "guru local investigado por suposto canibalismo afirma que \"há um pouco de nós em todo mundo\".", + "enquetes mostram que o povo acha a ideia de cookies feitos de cookies \"aceitável\" - \"pelo menos finalmente saberemos o que tem neles\", diz cidadão entrevistado." + ], + "Ticker (Javascript console)": [ + "programar está na moda! Mais e mais adolescentes entram nos campos técnicos como a programação, garantindo um futuro apocalipse robô e a destruição de toda a humanidade.", + "desenvolvedores em dúvida de como chamar suas novas bibliotecas de javascript, uma vez que todas as combinações de 3 palavras do dicionário já estão em uso.", + "seguindo uma moda estranha, pais dão nomes como Emma.js ou Liam.js para seus filhos recém-nascidos. Pelo menos um Bebê.js foi registrado." + ], + "Ticker (Idleverse)": [ + "tem um outro você vivendo seus sonhos em um universo alternativo? Provavelmente, seu poço de preguiça!", + "\"Eu encontro consolo no fato de que pelo menos alguns dos meus eus alternativos estão se dando bem\", diz o último exemplar de um cidadão no multiverso.", + "roteiristas de quadrinhos usam o multiverso real como argumento para enredos com decisões duvidosas. \"Viu? Eu disse que não era banal e artificial!\"" + ], + "Ticker (Cortex baker)": [ + "confeiteiro de córtex identificado com um QI de apenas cinco dígitos: \"só um bobinho\", dizem os especialistas.", + "astrônomos avisam sobre o desvio na trajetória do confeiteiro de córtex, medo de futuras colisões diretas resultando em concussões custosas.", + "domadores de confeiteiro de córtex lembram aos funcionários que confeiteiros de córtex são material de propriedade da confeitaria e não devem receber apelidos." + ], + "Ticker (Halloween)": [ + "cresce a popularidade de rituais pagãos conforme crianças do mundo todo se vestem com fantasias estranhas e chantageiam donos de residências em troca de doces.", + "crianças do mundo todo ficam \"perdidas e confusas\" com a substituição de todo e qualquer doce do Dia das Bruxas por cookies.", + "estranhas criaturas distorcidas se amontoam em volta de fábricas de cookies, mordiscando nas linhas de montagem." + ], + "Ticker (Christmas)": [ + "maníaco barbado é visto em alta velocidade em um trenó voador! Investigação pendente.", + "o lunático feliz e obeso ainda está à solta, avisam as autoridades. \"Mantenham seus filhos seguros e tampem suas chaminés. Estamos falando sério.\"", + "entidade festiva misteriosa com poderes quânticos continua causando o caos com um exército de renas, dizem as autoridades.", + "\"Quer dizer que ele simplesmente dá coisas de graça?!\", pergunta uma mãe preocupada. \"Pessoalmente, eu não confio na barba dele.\"", + "crianças entram em choque ao descobrirem que o Papai Noel não é só os seus pais usando fantasias, afinal!
\"No momento, estou reavaliando a minha vida\", revela Laura, de 6 anos." + ], + "Ticker (Valentines)": [ + "o amor está no ar, de acordo com especialistas meteorológicos. Com o objetivo de impedir a transmissão da infecção pelo ar, agora máscaras faciais são oferecidas em todas as cidades.", + "se casar com um cookie: prática louca ou um vislumbre do futuro?", + "doces em forma de coração crescem no mercado e se tornam concorrência para o império dos cookies." + ], + "Ticker (Easter)": [ + "criaturas com grandes orelhas e caudas peludas invadem os subúrbios, espalhando terror e chocolate!", + "coelhos ovíparos \"não são exatamente dessa dimensão\", avisa bióloga, que também aconselha não fazer carinho, alimentar ou cozinhar essas criaturas.", + "pesquisadores descobrem que, apesar de colocarem ovos, os coelhos misteriosos são mamíferos, o que sugere uma possível ascendência do ornitorrinco." + ], + "Ticker (misc)": [ + "doutores recomendam o consumo de cookies frescos duas vezes ao dia.", + "doutores não aconselham a nova dieta da moda, que não inclui cookies.", + "doutores alertam mães sobre os perigos dos \"cookies caseiros\".", + "\"Eu não sou viciado em cookies. Isso é só especulação de fãs com muito tempo livre\", revela a celebridade.", + "\"tudo bem, eu falo — eu nunca comi um único cookie na minha vida\", revela a celebridade.", + "\"os cookies me ajudaram a ficar magro e saudável\", revela celebridade.", + "homem rouba banco e compra cookies.", + "novo estudo sugere que cookies não aceleram nem retardam o envelhecimento, mas \"te levam em uma direção diferente\".", + "homem descobre que é alérgico a cookies; \"que cara esquisito\", diz a família.", + "a falta de cookies atinge a cidade e as pessoas são forçadas a comer cupcakes; \"simplesmente não é a mesma coisa\", assume o prefeito.", + "\"você tem que admitir, todo esse negócio de cookies é um pouco sinistro\", diz idiota confuso.", + "cookies ilegais misteriosos apreendidos; \"eles têm um gosto terrível\", diz a polícia.", + "\"Uh! Uh!\", diz orangotango entrevistado.", + "a nossa mídia é controlada pela indústria do cookie? \"Isso poderia muito bem ser o caso\", diz o teórico da conspiração esquisito.", + "\"no momento, os cookies permeiam a economia\", diz economista. \"Se começarmos a comer qualquer outra coisa, todos nós morremos.\"", + "cookies se tornam ilegais em um país subdesenvolvido para o qual ninguém liga. Tensões políticas subindo; guerra em breve, se tudo der certo." + ], + "You feel like making cookies. But nobody wants to eat your cookies.": "Você tem vontade de fazer cookies. Mas ninguém quer comer seus cookies.", + "Your first batch goes to the trash. The neighborhood raccoon barely touches it.": "A sua primeira fornada vai para o lixo. O guaxinim da vizinhança quase nem toca nela.", + "Your family accepts to try some of your cookies.": "A sua família aceita experimentar alguns dos seus cookies.", + "Your cookies are popular in the neighborhood.": "Seus cookies são populares na vizinhança.", + "People are starting to talk about your cookies.": "As pessoas estão começando a falar dos seus cookies.", + "Your cookies are talked about for miles around.": "A quilômetros de distância, as pessoas já falam dos seus cookies.", + "Your cookies are renowned in the whole town!": "Seus cookies são famosos na cidade toda!", + "Your cookies bring all the boys to the yard.": "Seus cookies atraem todo mundo.", + "Your cookies now have their own website!": "Agora seus cookies têm o próprio site.", + "Your cookies are worth a lot of money.": "Seus cookies valem muito dinheiro.", + "Your cookies sell very well in distant countries.": "Seus cookies vendem muito bem em países distantes.", + "People come from very far away to get a taste of your cookies.": "As pessoas vêm de muito longe para experimentar seus cookies.", + "Kings and queens from all over the world are enjoying your cookies.": "Reis e rainhas do mundo todo gostam dos seus cookies.", + "There are now museums dedicated to your cookies.": "Há novos museus dedicados aos seus cookies.", + "A national day has been created in honor of your cookies.": "Um feriado nacional foi criado em homenagem aos seus cookies.", + "Your cookies have been named a part of the world wonders.": "Seus cookies foram nomeados parte das maravilhas do mundo.", + "History books now include a whole chapter about your cookies.": "Livros de história agora têm um capítulo inteiro sobre os seus cookies.", + "Your cookies have been placed under government surveillance.": "Seus cookies foram colocados sob a vigilância do governo.", + "The whole planet is enjoying your cookies!": "O planeta todo está curtindo os seus cookies!", + "Strange creatures from neighboring planets wish to try your cookies.": "Estranhas criaturas de planetas vizinhos gostariam de experimentar os seus cookies.", + "Elder gods from the whole cosmos have awoken to taste your cookies.": "Deusas ancestrais de todo o cosmo acordaram para experimentar seus cookies.", + "Beings from other dimensions lapse into existence just to get a taste of your cookies.": "Seres de outras dimensões passam a existir só para experimentar seus cookies.", + "Your cookies have achieved sentience.": "Seus cookies adquiriram senciência.", + "The universe has now turned into cookie dough, to the molecular level.": "O universo se transformou em massa de cookie em nível molecular.", + "Your cookies are rewriting the fundamental laws of the universe.": "Seus cookies estão reescrevendo as leis fundamentais do universo.", + "A local news station runs a 10-minute segment about your cookies. Success!
(you win a cookie)": "Um jornal local faz uma reportagem de 10 minutos sobre os seus cookies. Sucesso!
(você ganha um cookie)", + "it's time to stop playing": "está na hora de parar de jogar", + "Today is your lucky day!": "Hoje é o seu dia de sorte!", + "Your lucky numbers are:": "Seus números da sorte são:", + "Fortune!": "Que sorte!", + "A golden cookie has appeared.": "Um cookie dourado apareceu.", + "You gain one hour of your CpS (capped at double your bank).": "Você ganha uma hora do seu CpS (limitado ao dobro do seu banco).", + "You've unlocked a new upgrade.": "Você desbloqueou uma nova melhoria.", + "Wish granted. Golden cookie spawned.": "Desejo concedido. Um cookie dourado surgiu.", + "help me!": "Me ajuda!", + "Ascend": "Ascender", + "You've been on this run for %1.": "Você está nesta sequência há %1.", + "Your prestige level is currently %1.
(CpS +%2%)": "Atualmente, seu nível de prestígio é %1.
(CpS +%2%)", + "Ascending now would grant you no prestige.": "Ascender agora não te daria nenhum prestígio.", + "Ascending now would grant you
1 prestige level (+1% CpS)
and 1 heavenly chip to spend.": "Ascender agora te daria
1 nível de prestígio (+1% CpS)
e 1 gota divina para gastar.", + "Ascending now would grant you
%1 prestige levels (+%2% CpS)
and %3 heavenly chips to spend.": "Ascender agora te daria
%1 níveis de prestígio (+%2% CpS)
e %3 gotas divinas para gastar.", + "You need %1 more cookies for the next level.": "Você precisa de mais %1 cookies para o próximo nível.", + "Do you REALLY want to ascend?
You will lose your progress and start over from scratch.
All your cookies will be converted into prestige and heavenly chips.": "Você quer MESMO ascender?
Você vai perder o seu progresso e começar de novo do início.
Todos os seus cookies serão convertidos em prestígio e gotas divinas.", + "You will keep your achievements.": "Você vai continuar com as suas conquistas.", + "You will keep your achievements, building levels and sugar lumps.": "Você vai continuar com as suas conquistas, níveis de construções e torrões de açúcar.", + "Ascending": "Ascendendo.", + "So long, cookies.": "Adeus, cookies.", + "You forfeit your %1.": "Você desiste dos seus %1.", + "Prestige level:": "Nível de prestígio:", + "Heavenly chips:": "Gotas divinas:", + "%1 prestige level": [ + "%1 nível de prestígio", + "%1 níveis de prestígio" + ], + "You gain %1!": "Você ganha %1!", + "Reincarnate": "Reencarnar", + "You are ascending.
Drag the screen around
or use arrow keys!
When you're ready,
click Reincarnate.": "Você está ascendendo.
Arraste a tela
ou use as setas do teclado!
Quando estiver tudo pronto,
clique em Reencarnar.", + "Each prestige level grants you a permanent +%1% CpS.
The more levels you have, the more cookies they require.": "Cada nível de prestígio te dá +%1% CpS permanentes.
Quanto mais níveis tiver, mais cookies serão necessários.", + "Heavenly chips are used to buy heavenly upgrades.
You gain 1 chip every time you gain a prestige level.": "Gotas divinas são usadas na compra de melhorias divinas.
Você ganha 1 gota cada vez que ganha um nível de prestígio.", + "Click this once you've bought
everything you need!": "Clique nisto quando tiver comprado
tudo que você precisa!", + "Are you ready to return to the mortal world?": "Tudo pronto para voltar para o mundo mortal?", + "Hello, cookies!": "Olá, cookies!", + "Challenge mode for the next run:": "Modo de desafio para a próxima sequência:", + "Challenge modes apply special modifiers to your next ascension.
Click to change.": "Modos de desafio aplicam modificadores especiais à sua próxima ascensão.
Clique para mudar.", + "Select a challenge mode": "Selecione um modo de desafio", + "None [ascension type]": "Nenhum", + "No special modifiers.": "Sem modificadores especiais.", + "Born again [ascension type]": "Nascendo de novo", + "This run will behave as if you'd just started the game from scratch. Prestige levels and heavenly upgrades will have no effect, as will sugar lumps and building levels. Perma-upgrades and minigames will be unavailable.
Some achievements are only available in this mode.": "Essa sequência vai se comportar como se você tivesse acabado de começar o jogo do início. Os níveis de prestígio e as melhorias divinas não terão nenhum efeito, assim como os torrões de açúcar e os níveis de construção. Melhorias permanentes e minigames ficarão indisponíveis.
Algumas conquistas só estão disponíveis neste modo.", + "Your bingo center/research facility is conducting experiments.": "Seu centro de bingo/instalação de pesquisa está conduzindo experimentos.", + "Research has begun": "A pesquisa começou", + "Research complete": "Pesquisa concluída", + "You have discovered: %1.": "Você descobriu: %1.", + "Valentine's Day!": "Dia dos Namorados!", + "It's Valentine's season!
Love's in the air and cookies are just that much sweeter!": "É a temporada do Dia dos Namorados!
O amor está no ar e os cookies estão um pouco mais doces!", + "Business Day!": "Dia dos Negócios!", + "It's Business season!
Don't panic! Things are gonna be looking a little more corporate for a few days.": "É a temporada dos negócios!
Não entre em pânico! As coisas vão parecer um pouco mais corporativas por alguns dias.", + "Halloween!": "Dia das Bruxas!", + "It's Halloween season!
Everything is just a little bit spookier!": "É a temporada do Dia das Bruxas!
Tudo está um pouco mais assustador!", + "Christmas time!": "É hora do Natal!", + "It's Christmas season!
Bring good cheer to all and you just may get cookies in your stockings!": "É a temporada do Natal!
Se deixar os outros felizes, talvez você ganhe cookies nas suas meias na lareira!", + "Easter!": "Páscoa!", + "It's Easter season!
Keep an eye out and you just might click a rabbit or two!": "É a temporada de Páscoa!
Fique de olho e você pode acabar clicando em um coelho ou dois!", + "[Tag]Heavenly": "Divina", + "[Tag]Tech": "Tecnológico", + "[Tag]Cookie": "Cookie", + "[Tag]Debug": "Depurar", + "[Tag]Switch": "Alternar", + "[Tag]Upgrade": "Melhoria", + "Tier:": "Categoria:", + "[Tier]Plain": "Puro", + "[Tier]Berrylium": "De bagas", + "[Tier]Blueberrylium": "De mirtilo", + "[Tier]Chalcedhoney": "Mel riscado", + "[Tier]Buttergold": "Ouro manteiga", + "[Tier]Sugarmuck": "Açúcar sujo", + "[Tier]Jetmint": "Hortelã jato", + "[Tier]Cherrysilver": "Cereja prata", + "[Tier]Hazelrald": "Avelã radical", + "[Tier]Mooncandy": "Doce da Lua", + "[Tier]Astrofudge": "Astrodoce", + "[Tier]Alabascream": "Alabagrito", + "[Tier]Iridyum": "Irídio", + "[Tier]Synergy I": "Sinergia I", + "[Tier]Synergy II": "Sinergia II", + "[Tier]Fortune": "Destino", + "[Tier]Self-referential": "Autorreferencial", + "Vaulted": "Bloqueada", + "Researched": "Pesquisou", + "Purchased": "Comprou", + "Unlocked forever": "Desbloqueado para sempre", + "Click to learn!": "Clique para aprender!", + "Click to unlearn!": "Clique para desaprender!", + "Upgrade": "Melhoria", + "Upgrades": "Melhorias", + "Achievement": "Conquista", + "Achievements": "Conquistas", + "Shadow Achievement": "Conquista das sombras", + "Unlocked": "Desbloqueado", + "Locked": "Bloqueado", + "Source:": "Fonte:", + "Click to win!": "Clique para ganhar!", + "Click to lose!": "Clique para perder!", + "Legacy": "Legado", + "Buildings": "Construções", + "Switches": "Interruptores", + "Vault": "Bloqueio", + "Research": "Pesquisa", + "Store": "Loja", + "sacrifice %1": "Sacrificar %1", + "Click to purchase.": "Clique para comprar.", + "Click to open selector.": "Clique para abrir o seletor.", + "Click to toggle.": "Clique para alternar.", + "Click to research.": "Clique para pesquisar.", + "%1 to vault.": "%1 para bloquear.", + "%1 to unvault.": "%1 para desbloquear.", + "Upgrade is vaulted and will not be auto-purchased.": "A melhoria está bloqueada e não será comprada automaticamente.", + "Upgrade for %1": "Melhoria pra %1", + "Buy": "Comprar", + "Sell": "Vender", + "all": "todas", + "max": "máximo", + "Buy all upgrades": "Comprar todas as melhorias", + "Will instantly purchase every upgrade you can afford, starting from the cheapest one.
Upgrades in the vault will not be auto-purchased.
You may place an upgrade into the vault by Shift-clicking on it.": "Comprará instantaneamente todas as melhorias pelas quais você puder pagar, começando pela mais barata.
Melhorias bloqueadas não serão compradas automaticamente.
Você pode bloquear uma melhoria com Shift+clique.", + "each %1 produces %2 per second": "cada %1 produz %2 por segundo", + "%1 producing %2 per second": "%1 produzindo %2 por segundo", + "%1% of total CpS": "%1% do CpS total", + "%1 produced so far": "%1 produzidos até agora", + "...also boosting some other buildings:": "...também impulsionando algumas outras construções:", + "all combined, these boosts account for %1 per second (%2% of total CpS)": "combinados, esses impulsos correspondem a %1 por segundo (%2% do CpS total)", + "owned: %1": "obtidos: %1", + "free: %1!": "grátis: %1!", + "Level %1 %2": "Nível %1 %2", + "Granting +%1% %2 CpS.": "Concedendo +%1% %2 CpS.", + "Click to level up for %1.": "Clique para subir de nível por %1.", + "Levelling up this building unlocks a minigame.": "Subir o nível desta construção desbloqueia um minigame.", + "level up your %1": "suba o nível da sua %1", + "Mute": "Silenciar", + "Minimize this building": "Minimize esta construção", + "Muted:": "Silenciada:", + "Click to unmute": "Clique para remover o silenciar", + "Show": "Mostrar", + "Hide": "Ocultar", + "Names in white were submitted by our supporters on Patreon.": "Os nomes em letras brancas foram enviados por nossos apoiadores no Patreon.", + "You can also press %1 to bulk-buy or sell %2 of a building at a time, or %3 for %4.": "Você também pode pressionar %1 para comprar ou vender %2 de uma construção por vez, ou %3 para %4.", + "Investment": "Investimento", + "You're not sure what this does, you just know it means profit.": "Você não tem certeza do que isso faz, mas sabe que significa lucro.", + "Cursor": "/", + "cursor": "/", + "cursors": "cursores", + "%1 cursor": [ + "%1 cursor", + "%1 cursores" + ], + "[Cursor quote]Autoclicks once every 10 seconds.": "Clica uma vez a cada 10 segundos automaticamente.", + "[Cursor business name]Rolling pin": "Rolo de massa", + "[Cursor business quote]Essential in flattening dough. The first step in cookie-making.": "Essencial para abrir a massa. A primeira etapa para fazer um cookie.", + "Grandma": "Vovó", + "grandma": "vovó", + "grandmas": "vovós", + "%1 grandma": [ + "%1 vovó", + "%1 vovós" + ], + "[Grandma quote]A nice grandma to bake more cookies.": "Uma vovó agradável para assar mais cookies.", + "[Grandma business name]Oven": "Forno", + "[Grandma business quote]A crucial element of baking cookies.": "Um elemento crucial para assar cookies.", + "Farm": "Fazenda", + "farm": "fazenda", + "farms": "fazendas", + "%1 farm": [ + "%1 fazenda", + "%1 fazendas" + ], + "[Farm quote]Grows cookie plants from cookie seeds.": "Faz crescer plantas de cookies a partir de sementes de cookies.", + "[Farm business name]Kitchen": "Cozinha", + "[Farm business quote]The more kitchens, the more cookies your employees can produce.": "Quanto mais cozinhas, mais cookies seus empregados podem produzir.", + "Mine": "Mina", + "mine": "mina", + "mines": "minas", + "%1 mine": [ + "%1 mina", + "%1 minas" + ], + "[Mine quote]Mines out cookie dough and chocolate chips.": "Minera massa de cookie e gotas de chocolate.", + "[Mine business name]Secret recipe": "Receita secreta", + "[Mine business quote]These give you the edge you need to outsell those pesky competitors.": "Isso te dá a vantagem que você precisa para vender mais do que aqueles competidores irritantes.", + "Factory": "Fábrica", + "factory": "fábrica", + "factories": "fábricas", + "%1 factory": [ + "%1 fábrica", + "%1 fábricas" + ], + "[Factory quote]Produces large quantities of cookies.": "Produz grandes quantidades de cookies.", + "[Factory business name]Factory": "Fábrica", + "[Factory business quote]Mass production is the future of baking. Seize the day, and synergize!": "A produção em massa é o futuro da feitura de cookies. Aproveite o dia com sinergia!", + "Bank": "Banco", + "bank": "banco", + "banks": "bancos", + "%1 bank": [ + "%1 banco", + "%1 bancos" + ], + "[Bank quote]Generates cookies from interest.": "Gera cookies a partir dos juros.", + "[Bank business name]Investor": "Investidor", + "[Bank business quote]Business folks with a nose for profit, ready to finance your venture as long as there's money to be made.": "Pessoas de negócios com um bom olho para o lucro e prontos para financiar o seu empreendimento, contanto que seja possível ganhar dinheiro assim.", + "Temple": "Templo", + "temple": "templo", + "temples": "templos", + "%1 temple": [ + "%1 templo", + "%1 templos" + ], + "[Temple quote]Full of precious, ancient chocolate.": "Cheio de um antigo e precioso chocolate.", + "[Temple business name]Like": "Curtida", + "[Temple business quote]Your social media page is going viral! Amassing likes is the key to a lasting online presence and juicy advertising deals.": "O seu perfil na internet está viralizando! Acumular curtidas é a chave para uma presença online duradoura e saborosos acordos de publicidade.", + "Wizard tower": "Torre de bruxos", + "wizard tower": "torre de bruxos", + "wizard towers": "torres de bruxos", + "%1 wizard tower": [ + "%1 torre de bruxos", + "%1 torres de bruxos" + ], + "[Wizard tower quote]Summons cookies with magic spells.": "Invoca cookies com feitiços.", + "[Wizard tower business name]Meme": "Meme", + "[Wizard tower business quote]Cookie memes are all the rage! With just the right amount of social media astroturfing, your brand image will be all over the cyberspace.": "Memes de cookies são muito populares! Com a quantidade certa de manipulação de mídias sociais, a imagem da sua marca vai parar em todos os cantos do ciberespaço.", + "Shipment": "Carregamento", + "shipment": "carregamento", + "shipments": "carregamentos", + "%1 shipment": [ + "%1 carregamento", + "%1 carregamentos" + ], + "[Shipment quote]Brings in fresh cookies from the cookie planet.": "Traz cookies frescos do planeta cookie.", + "[Shipment business name]Supermarket": "Supermercado", + "[Shipment business quote]A gigantic cookie emporium - your very own retail chain.": "Um empório de cookies gigante. A sua própria cadeia de varejo.", + "Alchemy lab": "Laboratório de alquimia", + "alchemy lab": "laboratório de alquimia", + "alchemy labs": "laboratórios de alquimia", + "%1 alchemy lab": [ + "%1 laboratório de alquimia", + "%1 laboratórios de alquimia" + ], + "[Alchemy lab quote]Turns gold into cookies!": "Transforma ouro em cookies!", + "[Alchemy lab business name]Stock share": "Ações", + "[Alchemy lab business quote]You're officially on the stock market, and everyone wants a piece!": "Você está oficialmente no mercado de ações, e todo mundo quer um pedaço!", + "Portal": "/", + "portal": "/", + "portals": "portais", + "%1 portal": [ + "%1 portal", + "%1 portais" + ], + "[Portal quote]Opens a door to the Cookieverse.": "Abre um portal para o Cookieverso.", + "[Portal business name]TV show": "Programa de TV", + "[Portal business quote]Your cookies have their own sitcom! Hilarious baking hijinks set to the cheesiest laughtrack.": "Seus cookies têm o próprio seriado de TV! Palhaçadas hilárias ao fazer cookies, acompanhadas de risadas falsas.", + "Time machine": "Máquina do tempo", + "time machine": "máquina do tempo", + "time machines": "máquinas do tempo", + "%1 time machine": [ + "%1 máquina do tempo", + "%1 máquinas do tempo" + ], + "[Time machine quote]Brings cookies from the past, before they were even eaten.": "Traz cookies do passado, antes mesmo de eles terem sido comidos.", + "[Time machine business name]Theme park": "Parque temático", + "[Time machine business quote]Cookie theme parks, full of mascots and roller-coasters. Build one, build a hundred!": "Parques com o tema cookies, cheios de mascotes e montanhas-russas. Construa uma, construa uma centena!", + "Antimatter condenser": "Condensador antimatéria", + "antimatter condenser": "condensador antimatéria", + "antimatter condensers": "condensadores antimatéria", + "%1 antimatter condenser": [ + "%1 condensador antimatéria", + "%1 condensadores antimatéria" + ], + "[Antimatter condenser quote]Condenses the antimatter in the universe into cookies.": "Condensa a antimatéria do universo em cookies.", + "[Antimatter condenser business name]Cookiecoin": "Cookiemoeda", + "[Antimatter condenser business quote]A virtual currency, already replacing regular money in some small countries.": "Uma moeda virtual que já está substituindo o dinheiro comum em alguns países pequenos.", + "Prism": "Prisma", + "prism": "prisma", + "prisms": "prismas", + "%1 prism": [ + "%1 prisma", + "%1 prismas" + ], + "[Prism quote]Converts light itself into cookies.": "Converte a própria luz em cookies.", + "[Prism business name]Corporate country": "País corporativo", + "[Prism business quote]You've made it to the top, and you can now buy entire nations to further your corporate greed. Godspeed.": "Você chegou ao topo, e agora você pode comprar nações inteiras para expandir a sua ganância corporativa. Vá com Deus.", + "Chancemaker": "Criador do acaso", + "chancemaker": "criador do acaso", + "chancemakers": "criadores do acaso", + "%1 chancemaker": [ + "%1 criador do acaso", + "%1 criadores do acaso" + ], + "[Chancemaker quote]Generates cookies out of thin air through sheer luck.": "Gera cookies repentinamente através de pura sorte.", + "[Chancemaker business name]Privatized planet": "Planeta privatizado", + "[Chancemaker business quote]Actually, you know what's cool? A whole planet dedicated to producing, advertising, selling, and consuming your cookies.": "Na verdade, você sabe o que é legal? Um planeta inteiro dedicado a produzir, propagandear, vender e consumir seus cookies.", + "Fractal engine": "Motor fractal", + "fractal engine": "motor fractal", + "fractal engines": "motores fractais", + "%1 fractal engine": [ + "%1 motor fractal", + "%1 motores fractais" + ], + "[Fractal engine quote]Turns cookies into even more cookies.": "Transforma cookies em ainda mais cookies.", + "[Fractal engine business name]Senate seat": "Cadeira no Senado", + "[Fractal engine business quote]Only through political dominion can you truly alter this world to create a brighter, more cookie-friendly future.": "Apenas através da dominação política você poderá alterar de verdade este mundo para criar um futuro mais iluminado e inclinado aos cookies.", + "Javascript console": "Console de javascript", + "javascript console": "console de javascript", + "javascript consoles": "consoles de javascript", + "%1 javascript console": [ + "%1 console de javascript", + "%1 consoles de javascript" + ], + "[Javascript console quote]Creates cookies from the very code this game was written in.": "Cria cookies a partir do próprio código no qual este jogo foi escrito.", + "[Javascript console business name]Doctrine": "Doutrina", + "[Javascript console business quote]Taking many forms -religion, culture, philosophy- a doctrine may, when handled properly, cause a lasting impact on civilizations, reshaping minds and people and ensuring all future generations share a singular goal - the production, and acquisition, of more cookies.": "Assumindo várias formas — religião, cultura, filosofia —, a doutrina, se usada adequadamente, pode causar um impacto duradouro nas civilizações, remodelando mentes e pessoas, e garantindo que as futuras gerações compartilhem um único objetivo — a produção e aquisição de mais cookies.", + "Idleverse": "Ocioverso", + "idleverse": "ocioverso", + "idleverses": "ocioversos", + "%1 idleverse": [ + "%1 ocioverso", + "%1 ocioversos" + ], + "[Idleverse quote]There's been countless other idle universes running alongside our own. You've finally found a way to hijack their production and convert whatever they've been making into cookies!": "Já houve incontáveis ocioversos em funcionamento ao mesmo tempo que o nosso. Você finalmente encontrou uma forma de roubar a produção deles e converter o que quer que eles estivessem fazendo em cookies!", + "[Idleverse business name]Lateral expansions": "Expansões laterais", + "[Idleverse business quote]Sometimes the best way to keep going up is sideways. Diversify your ventures through non-cookie investments.": "Às vezes, a melhor maneira de continuar é de lado. Diversifique as suas aventuras em investimentos não relacionados a cookies. ", + "Cortex baker": "Confeiteiro de córtex", + "cortex baker": "confeiteiro de córtex", + "cortex bakers": "confeiteiros de córtex", + "%1 cortex baker": [ + "%1 confeiteiro de córtex", + "%1 confeiteiros de córtex" + ], + "[Cortex baker quote]These artificial brains the size of planets are capable of simply dreaming up cookies into existence. Time and space are inconsequential. Reality is arbitrary.": "Esses cérebros artificiais do tamanho de planetas são capazes de criar cookies só sonhando com eles. Tempo e espaço são inconsequentes. A realidade é arbitrária.", + "[Cortex baker business name]Think tank": "Grupo de Pensamento", + "[Cortex baker business quote]There's only so many ways you can bring in more profit. Or is there? Hire the most brilliant experts in the known universe and let them scrape their brains for you!": "Existe um limite nos jeitos de obter mais lucro. Ou será que não? Contrate os especialistas mais brilhantes no universo conhecido e deixa eu vasculhar o cérebro deles por você!", + "CpS": "/", + "cookies/click": "cookies/clique", + "%1 CpS": "/", + "golden cookie gains": "ganho de cookies dourados", + "golden cookie frequency": "frequência de cookies dourados", + "golden cookie duration": "duração de cookies dourados", + "golden cookie effect duration": "duração do efeito de cookies dourados", + "wrath cookie gains": "ganho de cookies furiosos", + "wrath cookie frequency": "frequência de cookies furiosos", + "wrath cookie duration": "duração de cookies furiosos", + "wrath cookie effect duration": "duração do efeito de cookies furiosos", + "reindeer gains": "ganho de renas", + "reindeer frequency": "frequência de renas", + "reindeer duration": "duração de renas", + "random drops": "itens aleatórios", + "milk effects": "efeitos de leite", + "wrinkler spawn rate": "chance de aparição do enrugador", + "wrinkler appetite": "apetite do enrugador", + "upgrade costs": "custo das melhorias", + "building costs": "custo das construções", + "Clicking is %1% more powerful.": "Clicar é %1% mais poderoso.", + "All cookie production multiplied by %1.": "Toda a produção de cookies multiplicada por %1.", + "+%1 CpS": "/", + "+%1% base CpS.": "+%1% de CpS base.", + "%1 are twice as efficient.": "%1 são duas vezes mais eficientes.", + "%1 are %2% more powerful.": "%1 são %2% mais eficazes.", + "Unshackled! +%1% extra production.": "Libertado! +%1% de produção extra.", + "Tiered upgrades for %1 provide an extra +%2% production.
Only works with unshackled upgrade tiers.": "Melhorias de categoria para %1 dão +%2% de produção extra.
Só funciona com categorias melhoria libertadas.", + "Unshackles all %1-tier upgrades, making them more powerful.
Only applies to unshackled buildings.": "Liberta todas as melhorias de categoria %1, tornando-os mais poderosos.
Só se aplica a construções libertadas.", + "The mouse and cursors are twice as efficient.": "O mouse e os cursores são duas vezes mais poderosos.", + "The mouse and cursors gain +%1 cookies for each non-cursor building owned.": "Os mouses e os cursores ganham +%1 cookies para cada construção sem cursor possuída.", + "Grandmas gain +%1% CpS for each non-grandma building.": "As vovós ganham +%1% CpS para cada construção sem vovós.", + "You gain more CpS the more milk you have.": "Quanto mais leite você tiver, mais CpS você ganha.", + "Milk is %1% more powerful.": "O leite é %1% mais poderoso.", + "Cookie production multiplier +%1%.": "Multiplicador da produção de cookies +%1%.", + "Cookie production multiplier +%1% permanently.": "Multiplicador da produção de cookies +%1% permanentemente.", + "Cookie production multiplier +%1% per Santa's levels.": "Multiplicador da produção de cookies +%1% por nível do Papai Noel.", + "Cookie production multiplier +%1% for every year Cookie Clicker has existed (currently: +%2%).": "Multiplicador da produção de cookies +%1% para cada ano de existência do Cookie Clicker (atualmente: +%2%).", + "Cookie production multiplier +%1% for every building type level %2 or higher.": "Multiplicador da produção de cookies +%1% para cada tipo de construção de nível %2 ou mais alto.", + "Clicking gains +%1% of your CpS.": "Clicar gera +%1% do seu CpS.", + "%1 gain +%2% CpS per %3.": "%1 ganha +%2% CpS por %3.", + "Multiplies the gain from %1 by %2.": "Multiplica o ganho de %1 por %2.", + "Grandma-operated science lab and leisure club.
Grandmas are 4 times as efficient.
Regularly unlocks new upgrades.": "Laboratório de ciências e clube de lazer operado por vovós
As vovós são 4 vezes mais eficientes.
Desbloqueia novas melhorias regularmente.", + "Each %1 gains +%2 base CpS per %3.": "Cada %1 ganha +%2 de CpS base por %3.", + "Note: the grandmothers are growing restless. Do not encourage them.": "Observação: as vovós estão ficando inquietas. Não as encoraje.", + "Note: proceeding any further in scientific research may have unexpected results. You have been warned.": "Observação: continuar com as pesquisas científicas pode ter resultados inesperados. O aviso foi dado.", + "Note: this is a bad idea.": "Observação: isso é uma má ideia.", + "Warning: purchasing this will have unexpected, and potentially undesirable results!
It's all downhill from here. You have been warned!

Purchase anyway?": "Aviso: comprar isso terá resultados inesperados e potencialmente indesejados!
É só ladeira abaixo a partir daqui. O aviso foi dado!

Comprar assim mesmo?", + "Contains the wrath of the elders, at least for a while.": "Contém a ira das ancestrais, pelo menos por um tempo.", + "Puts a permanent end to the elders' wrath, at the cost of %1% of your CpS.": "Põe um fim permanente à ira das ancestrais, pelo custo de %1% do seu CpS.", + "You will get %1% of your CpS back, but the grandmatriarchs will return.": "Você vai receber %1% do seu CpS de volta, mas as vótriarcas retornarão.", + "Time remaining until pledge runs out:": "Tempo restante até o juramento acabar: ", + "You haven't pledged to the elders yet.": "Você ainda não fez um juramento para as ancestrais.", + "You've pledged to the elders %1 times.": [ + "Você fez um juramento para as ancestrais uma vez.", + "Você fez um juramento para as ancestrais %1 vezes." + ], + "Research takes only 5 seconds.": "A pesquisa leva apenas 5 segundos.", + "Golden cookies appear twice as often and stay twice as long.": "Os cookies dourados aparecem com o dobro da frequência e ficam pelo dobro do tempo.", + "Golden cookies appear %1% more often.": "Cookies dourados aparecem com uma frequência %1% maior.", + "Golden cookies appear %1% more often during %2.": "Cookies dourados aparecem com uma frequência %1% maior durante %2.", + "Golden cookies appear really often.": "Cookies dourados aparecem com muita frequência.", + "Golden cookie effects last twice as long.": "Os efeitos dos cookies dourados duram o dobro do tempo.", + "Golden cookie effects last %1% longer.": "Os efeitos dos cookies dourados duram %1% mais.", + "Golden cookies stay %1% longer.": "Cookies dourados ficam por %1% mais tempo.", + "Golden cookies give %1% more cookies.": "Cookies dourados dão %1% mais cookies.", + "Wrath cookies give %1% more cookies.": "Cookies da ira dão %1% mais cookies.", + "+%1% CpS per golden cookie on-screen, multiplicative.": "+%1% CpS por cookie dourado na tela. Multiplicativo.", + "With no buffs and no golden cookies on screen, selling your most powerful building has %1% chance to summon one.": "Sem vantagens e cookies dourados na tela, vender a sua construção mais poderosa te dá uma chance de %1% de invocar um.", + "Confers various powers to your minigames while active.
See the bottom of each minigame for more details.": "Confere vários poderes aos seus minijogos quando ativo.
Veja embaixo de cada minijogo para mais detalhes.", + "Elder pledges last twice as long.": "Juramentos ancestrais duram duas vezes mais.", + "Can toggle upgrades on and off at will in the stats menu.": "Você pode ligar e desligar as melhorias quando quiser no menu de estatísticas.", + "You keep producing cookies even while the game is closed.": "Você continua produzindo cookies mesmo com o jogo fechado.", + "Unlocks %1% of the potential of your prestige level.": "Desbloqueia %1% do potencial do seu nível de prestígio.", + "Subsequent research will be %1 times as fast.": "A pesquisa subsequente será %1 vezes mais rápida.", + "Wrinklers appear %1 times as fast.": "Os enrugadores aparecem %1 vezes mais rápido.", + "Wrinklers spawn much more frequently.": "Os enrugadores surgem com muito mais frequência.", + "Wrinklers explode into %1% more cookies.": "Os enrugadores explodem em %1% mais cookies.", + "Unlocks... something.": "Desbloqueia... alguma coisa.", + "In the festive hat, you find...": "No chapéu de festa, você encontra...", + "a festive test tube
and %1.": "um tubo de ensaio festivo
e %1.", + "Cost scales with CpS.": "O custo aumenta com o CpS.", + "Cost scales with Santa level.": "O custo aumenta com o nível do Papai Noel.", + "Cost scales with how many eggs you own.": "O custo aumenta com o número de ovos obtidos.", + "Reindeer appear %1% more often.": "As renas aparecem com uma frequência %1% maior.", + "Reindeer appear twice as frequently.": "As renas aparecem com uma frequência duas vezes maior.", + "Reindeer are twice as slow.": "As renas são duas vezes mais lentas.", + "Reindeer give twice as much.": "As renas rendem duas vezes mais.", + "Buildings sell back for %1% instead of %2%.": "Em vez de %2%, as construções são vendidas por %1%.", + "All buildings are %1% cheaper.": "Todas as construções são %1% mais baratas.", + "All upgrades are %1% cheaper.": "Todas as melhorias são %1% mais baratas.", + "All buildings and upgrades are %1% cheaper.": "Todas as construções e melhorias são %1% mais baratas.", + "%1 are %2% more efficient and %3% cheaper.": "%1 são %2% mais eficientes e %3% mais baratos.", + "Cookie upgrades are %1 times cheaper.": "As melhorias de cookies são %1 vezes mais baratas.", + "Random drops are %1% more common.": "Bônus aleatórios são %1% mais comuns.", + "Reindeer spawn much more frequently.": "Renas surgem com muito mais frequência.", + "Allows you to trigger seasonal events at will, for a price.": "Permite que você acione eventos de temporada quando quiser, por um preço.", + "Triggers %1 season for the next 24 hours.
Triggering another season will cancel this one.
Cost scales with unbuffed CpS and increases with every season switch.": "Aciona a temporada %1 pelas próximas 24 horas.
Acionar outra temporada vai cancelar a atual.
O custo aumenta com o CpS sem vantagem e com cada mudança de temporada.", + "Click again to cancel season": "Clique novamente para cancelar a temporada.", + "Seasons now last forever.": "Agora as temporadas duram para sempre.", + "You haven't switched seasons this ascension yet.": "Você ainda não mudou de temporada nesta ascensão.", + "You've switched seasons once this ascension.": "Você mudou de temporada uma vez nesta ascensão.", + "You've switched seasons %1 times this ascension.": "Você mudou de temporada %1 vezes nesta ascensão.", + "Cookie production multiplied by 1,000.": "Produção de cookies multiplicada por 1.000.", + "Other eggs appear %1% more frequently.": "Outros ovos aparecem com %1% mais frequência.", + "Contains a lot of cookies.": "Contém muitos cookies.", + "The egg bursts into %1 cookies!": "O ovo se divide em %1 cookies!", + "You found an egg!": "Você encontrou um ovo!", + "Eggs drop %1% more often.": "Ovos aparecem com uma frequência %1% maior.", + "Christmas cookies drop %1% more often.": "Cookies de Natal são gerados com uma frequência %1% maior.", + "Spooky cookies drop %1% more often.": "Cookies assustadores são gerados com uma frequência %1% maior.", + "Heart cookies are %1% more powerful.": "Cookies de coração são %1% mais poderosos.", + "You continually gain more CpS the longer you've played in the current ascension.": "Você continuamente ganha mais CpS quanto mais tempo você tiver jogado na ascensão atual.", + "Contains an assortment of fancy biscuits.": "Contém uma variedade de biscoitos chiques.", + "Contains an assortment of macarons.": "Contém uma variedade de macarons.", + "Contains an assortment of popular biscuits.": "Contém uma variedade de biscoitos populares.", + "Contains an assortment of rich butter cookies.": "Contém uma variedade de cookies amanteigados.", + "Contains an assortment of delicious pastries.": "Contém uma variedade de folheados deliciosos.", + "Contains an assortment of...something.": "Contém uma variedade de...alguma coisa.", + "Placing an upgrade in this slot will make its effects permanent across all playthroughs.": "Colocar uma melhoria neste espaço vai tornar seus efeitos permanente para cada vez que você jogar.", + "Current boost:": "Reforço atual:", + "Current:": "Atual:", + "Click to activate.": "Clique para ativar.", + "Pick an upgrade to make permanent": "Escolha uma melhoria para tornar permanente", + "Here are all the upgrades you've purchased last playthrough.
Pick one to permanently gain its effects!
You can reassign this slot anytime you ascend.": "Aqui estão todas as melhorias que você comprou na última vez que jogou.
Escolha uma para ganhar seus efeitos permanentemente!
Você pode reatribuir este espaço toda vez que ascender.", + "You now keep making cookies while the game is closed, at the rate of %1% of your regular CpS and up to 1 hour after the game is closed.
(Beyond 1 hour, this is reduced by a further %2% - your rate goes down to %3% of your CpS.)": "Agora você continua fazendo cookies quando o jogo estiver fechado, no ritmo de %1% do seu CpS padrão e por até 1 hora depois do jogo ser fechado.
(Depois de 1 hora, isso é reduzido em mais %2% - o seu ritmo cai para %3% do seu CpS.)", + "You gain another +%1% of your regular CpS while the game is closed.": "Você ganha mais +%1% do seu CpS padrão enquanto o jogo estiver fechado.", + "You gain another +%1% of your regular CpS while the game is closed, for a total of %2%.": "Você ganha mais +%1% do seu CpS padrão enquanto o jogo estiver fechado, atingindo um total de %2%.", + "You start with %1.": "Você começa com %1.", + "Allows you to purchase a crumbly egg once you have earned 1 million cookies.": "Permite que você compre um ovo quebradiço depois de ter ganhado 1 milhão de cookies.", + "Unlocks the cookie dragon egg.": "Desbloqueia o ovo do dragão de cookie.", + "Synergy upgrades are %1% cheaper.": "As melhorias de sinergia se tornam %1% mais baratas.", + "You retain optimal cookie production while the game is closed for %1 more days.": "Você mantém a produção ideal de cookies enquanto o jogo estiver fechado por %1 mais dias.", + "You retain optimal cookie production while the game is closed for twice as long, for a total of %1.": "Você mantém a produção ideal de cookies enquanto o jogo estiver fechado pelo dobro do tempo, atingindo um total de %1.", + "Unlocks the golden switch, which passively boosts your CpS by %1% but disables golden cookies.": "Desbloqueia o interruptor dourado, que reforça passivamente o seu CpS em %1%, mas desabilita os cookies dourados.", + "Turning this on will give you a passive +%1% CpS, but prevents golden cookies from spawning.
Cost is equal to 1 hour of production.": "Ligar isso vai te dar uma produção passiva de +%1% do CpS, mas impede que cookies dourados surjam.
O custo é igual a 1 hora de produção.", + "The switch is currently giving you a passive +%1% CpS; it also prevents golden cookies from spawning.
Turning it off will revert those effects.
Cost is equal to 1 hour of production.": "Atualmente, o interruptor está te dando uma produção passiva de +%1% do CpS; ele também impede que cookies dourados surjam.
Desligá-lo reverterá esses efeitos.
O custo é igual a 1 hora de produção.", + "Unlocks the milk selector, letting you pick which milk is displayed under your cookie.
Comes with a variety of basic flavors.": "Desbloqueia o seletor de leite, o que permite que você escolha qual leite é exibido sob o seu cookie.
Vem com uma variedade de sabores básicos.", + "Contains more exotic flavors for your milk selector.": "Contém mais sabores exóticos para o seu seletor de leite.", + "Lets you pick what flavor of milk to display.": "Deixa você escolher qual sabor de leite exibir.", + "Unlocks the golden cookie sound selector, which lets you pick whether golden cookies emit a sound when appearing or not.": "Desbloqueia o seletor de som de cookie dourado, que permite que você escolha se os cookies dourados emitem um som ao aparecer ou não.", + "Lets you change the sound golden cookies make when they spawn.": "Deixa você mudar o som que os cookies dourados fazem quando eles surgem.", + "No sound": "Sem som", + "Chime": "Sino", + "Fortune": "Destino", + "Cymbal": "Pratos", + "Squeak": "Rangido", + "Unlocks the jukebox, which allows you to play through every sound file in the game.": "Libera a jukebox, que permite que você ouça cada arquivo de som do jogo.", + "Play through the game's sound files!": "Escute os arquivos de som do jogo!", + "Play": "Tocar", + "Stop": "Parar", + "Pause": "Pausar", + "Shuffle": "Aleatório", + "Auto": "Automático", + "Loop": "/", + "Unlocks the background selector, letting you select the game's background.
Comes with a variety of basic flavors.": "Desbloqueia o seletor de plano de fundo, permitindo que você selecione o plano de fundo do jogo.
Vem com uma variedade de sabores básicos.", + "Lets you pick which wallpaper to display.": "Deixa você escolher qual papel de parede exibir.", + "This is the first heavenly upgrade; it unlocks the Heavenly chips system.
Each time you ascend, the cookies you made in your past life are turned into heavenly chips and prestige.
Heavenly chips can be spent on a variety of permanent transcendental upgrades.
Your prestige level also gives you a permanent +1% CpS per level.": "Esta é a primeira melhoria celestial; ela desbloqueia o sistema de Gotas celestiais.
Cada vez que você ascende, os cookies que você fez na sua vida passada se tornam gotas celestiais e prestígio.
Gotas celestiais podem ser usadas em uma variedade de melhorias transcendentais permanentes.
O seu nível de prestígio também dá +1% CpS por nível permanentemente.", + "You can attract %1 more wrinklers.": "Você pode atrair %1 mais enrugadores.", + "While the golden switch is on, you gain an additional +%1% CpS per golden cookie upgrade owned.": "Enquanto o interruptor dourado estiver ligado, você ganha +%1% CpS por cada melhoria de cookie dourado que possuir.", + "All upgrades are %1% cheaper per %2.": "Todas as melhorias são %1% mais baratas por %2.", + "Unlocks a new tier of upgrades that affect 2 buildings at the same time.
Synergies appear once you have %1 of both buildings.": "Desbloqueia um novo nível de melhorias que afetam 2 construções ao mesmo tempo.
Sinergias aparecem uma vez que você tiver %1 das duas construções.", + "Golden cookies (and all other things that spawn, such as reindeer) have %1% chance of being doubled.": "Cookies dourados (e todas as outras coisas que surgem, como renas) têm %1% de chance de serem dobrados.", + "Cookie production reduced to 0.": "Produção de cookies reduzida a 0.", + "Sugar lumps coalesce a whole lot faster.": "Torrões de açúcar aderem bem mais rápido.", + "+%1% prestige level effect on CpS.": "+%1% no efeito do nível de prestígio em CpS.", + "+%1% prestige level effect on CpS.
+%2% golden cookie effect duration.
+%3% golden cookie lifespan.": "+%1% no efeito do nível de prestígio em CpS.
+%2% no efeito da duração do cookie dourado.
+%3% no tempo de vida do cookie dourado.", + "Each unspent sugar lump (up to %1) gives +%2% CpS.
Note: this means that spending sugar lumps will decrease your CpS until they grow back.
": "Cada torrão de açúcar não usado (até %1) dá +%2% CpS.
Aviso: isso significa que usar os torrões de açúcar vai reduzir seus CpS até que eles cresçam de volta.
", + "Once an ascension, you may use the \"Sugar frenzy\" switch to triple your CpS for 1 hour, at the cost of 1 sugar lump.": "Uma vez por ascensão, você pode usar o interruptor de \"Frenesi de açúcar\" para triplicar seu CpS por 1 hora, pelo custo de 1 torrão de açúcar.", + "Each grandma (up to %1) makes sugar lumps ripen %2 sooner.": "Cada vovó (até %1) faz com que os torrões de açúcar fiquem prontos %2 mais rápido.", + "Activating this will triple your CpS for 1 hour, at the cost of 1 sugar lump.": "Ativar isso vai triplicar seus CpS por 1 hora, pelo custo de 1 torrão de açúcar.", + "May only be used once per ascension.": "Só pode ser usado uma vez por ascensão.", + "activate the sugar frenzy": "ativar o frenesi de açúcar", + "Sugar frenzy!": "Frenesi de açúcar!", + "CpS x%1 for 1 hour!": "CpS x%1 por 1 hora!", + "Garden plants grow every second.
Garden seeds are free to plant.
You can switch soils at any time.": "As plantas do jardim crescem a cada segundo.
As sementes do jardim são grátis para o plantio.
Você pode trocar de solo a qualquer momento.", + "Dropped by %1.": "Obtenha com %1.", + "Dropped by %1 plants.": "Obtenha com plantas %1.", + "Must own the %1 upgrade.": "Precisa ter a melhoria %1.", + "Sugar lumps are twice as likely to be unusual.": "Pedaços de açúcar têm duas vezes mais probabilidade de serem incomuns.", + "+%1% sugar lump growth.": "+%1% de crescimento do torrão de açúcar.", + "Sugar lumps ripen %1 sooner.": "Torrões de açúcar ficam prontos %1 mais rápido.", + "Sugar lumps mature %1 sooner.": "Torrões de açúcar amadurecem %1 mais rápido.", + "Bifurcated sugar lumps appear %1% more often and are %2% more likely to drop 2 lumps.": "Torrões de açúcar bifurcados aparecem com %1% mais frequência e têm %2% mais chance de deixar 2 torrões.", + "Mouse over a wrinkler to see how many cookies are in its stomach.": "Passe o cursor por cima de um enrugador para ver quantos cookies ele tem no estômago.", + "Unlocks the Buy all feature, which lets you instantly purchase every upgrade in your store (starting from the cheapest one).
Also unlocks the Vault, a store section where you can place upgrades you do not wish to auto-buy.": "Desbloqueia a funcionalidade Comprar tudo, que deixa você automaticamente comprar cada melhoria na sua loja (começando com a mais barata).
Também libera o Bloqueio, uma seção da loja onde você pode colocar as melhorias que não desejar comprar automaticamente.", + "Mouse over an upgrade to see its tier.
Note: only some upgrades have tiers. Tiers are purely cosmetic and have no effect on gameplay.": "Passe o cursor por cima de uma melhoria para ver sua categoria.
Aviso: apenas algumas melhorias possuem categorias. Categorias são apenas por estética e não têm efeito na jogabilidade.", + "You now benefit from the boost provided by heralds.
Each herald gives you +1% CpS.
Look on the purple flag at the top to see how many heralds are active at any given time.": "Você agora se beneficia do impulso dos arautos.
Cada arauto dá +1% CpS.
Olhe a bandeira roxa no topo para ver quantos arautos estão ativos em um determinado momento.", + "Seasonal random drops have a 1/5 chance to carry over through ascensions.": "Itens sazonais aleatórios têm uma chance de 1 em 5 de serem levados junto em ascensões.", + "Unlocks extra price information.
Each displayed cost now specifies how long it'll take you to afford it, and how much of your bank it represents.": "Desbloqueia informação extra sobre preços.
Cada custo exibido agora especifica quanto tempo você levará para pagá-lo e quanto do seu saldo ele representa.", + "Unlocks the shimmering veil, a switch that passively boosts your CpS by %1%.
You start with the veil turned on; however, it is very fragile, and clicking the big cookie or any golden cookie or reindeer will turn it off, requiring %2 of CpS to turn back on.": "Desbloqueia véu citilante, um interruptor que passivamente dá um impulso de %1% aos seus CpS.
Você começa com o véu ligado; no entanto, ele é muito frágil, e clicar no cookie grande ou em qualquer cookie dourado ou rena o desligará, e será necessário %2 CpS para ligar de volta.", + "Boosts your cookie production by %1% when active.
The veil is very fragile and will break if you click the big cookie or any golden cookies or reindeer.

Once broken, turning the veil back on costs %2 of unbuffed CpS.": "Aumenta sua produção de cookies em %1% quando ativo.
O véu é muito frágil e se partirá se você clicar no cookie grande ou em qualquer cookie dourado ou rena.

Uma vez partido, o custo para ligar o véu novamente é de %2 CpS sem vantagens.", + "Has a %1% chance to not break.": "Tem uma chance de %1% de não partir.", + "The shimmering veil is more resistant, and has a %1% chance not to break. It also gives +%2% more CpS.": "O véu citilante é mais resistente e tem %1% de chance de não partir. Ele também dá +%2% CpS.", + "Active.": "Ativo.", + "The reinforced membrane protects the shimmering veil.": "A membrana reforçada protege o véu cintilante.", + "The shimmering veil disappears...": "O véu cintilante desaparece...", + "Prior to purchasing the %1 upgrade in a run, random drops are %2 times more common.": "Antes de comprar a melhoria %1 em uma sequência, itens aleatórios são %2 vezes mais comuns.", + "Never forget your %1.": "Nunca esqueça do(a) %1.", + "Pay close attention to the humble %1.": "Preste atenção no(a) humilde %1.", + "You've been neglecting your %1.": "Você tem negligenciado o(a) %1.", + "Remember to visit your %1 sometimes.": "Lembre de visitar %1 de vez em quando.", + "You don't know what you have until you've lost it.": "Você não sabe o valor do que tem até perder.", + "Remember to take breaks.": "Lembre-se de fazer pausas.", + "Hey, what's up. I'm a fortune cookie.": "Ei, e aí? Eu sou um biscoito da sorte.", + "You think you have it bad? Look at me.": "Você acha que tá ruim pra você? Olha pra mim.", + "The news ticker may occasionally have fortunes, which may be clicked for something good.": "O quadro de notícias pode ter sortes de vez em quando, você pode clicar nelas para ganhar algo bom.", + "Through clever accounting, this actually makes kitten upgrades %1% cheaper.": "Por meio de contabilidade inteligente, isso torna as atualizações de gatinhos %1% mais baratas.", + "Unlocks the ability to pet your dragon by clicking on it once hatched.": "Desbloqueia a habilidade de fazer carinho no seu dragão ao clicar nele depois que ele nascer.", + "Cost scales with CpS, but %1 times cheaper with a fully-trained dragon.": "O custo aumenta com os CpS, mas é %1 vezes mais barato com um dragão totalmente treinado.", + "Golden cookies may trigger a Dragon Harvest.": "Cookies dourados podem ativar uma Colheita Dracônica.", + "Golden cookies may trigger a Dragonflight.": "Cookies dourados podem ativar Voo do Dragão.", + "Dragon harvest and Dragonflight are %1% stronger.": "Colheita Dracônica e Voo do Dragão são %1% mais fortes.", + "Kittens are %1% more effective.": "Gatinhos são %1% mais eficientes.", + "Each kitten upgrade boosts %1 CpS by %2%.": "Cada melhoria de gatinho aumenta CpS de %1 em %2%.", + "Each rank of milk boosts %1 CpS by %2%.": "Nível da leite aumenta CpS %1 em %2%.", + "Cursor levels boost clicks by %1% each (up to cursor level %2).": "Níveis de cursor aumentam cliques em %1% cada (até nível %2 de cursor).", + "%1 are now effective up to cursor level %2.": "%1 agora são eficazes até nível %2 de cursor.", + "Seasonal cookies purchased: %1.": "Cookies sazonais comprados: %1.", + "Reindeer cookies purchased: %1.": "Cookies de rena comprados: %1.", + "Eggs purchased: %1.": "Ovos comprados: %1.", + "Golden and wrath cookie effect duration +%1%.": "Duração do efeito dos cookies dourados e furiosos +%1%.", + "Golden and wrath cookies appear %1% more.": "Cookies dourados e furiosos aparecem %1% mais.", + "Golden and wrath cookies appear %1% less.": "Cookies dourados e furiosos aparecem %1% menos.", + "Buildings grant -%1% CpS.": "Construções dão -%1% de CpS.", + "Selling buildings triggers a buff boosted by how many buildings were sold.": "Vender construções ativa um buff, ampliado pela quantidade de construções vendidas.", + "Buff boosts clicks by +%1% for every building sold for %2 seconds.": "O buff aumenta os cliques em +%1% para cada construção vendida por %2 segundos.", + "CpS bonus fluctuating between %1 and %2 over time.": "Bônus de CpS flutuando entre %1 e %2 ao longo do tempo.", + "Effect cycles over %1 hours.": "O efeito alterna depois de %1 horas.", + "Some seasonal effects are boosted.": "Alguns efeitos de temporada são aumentados.", + "Large boost.": "Aumento grande.", + "Medium boost.": "Aumento médio.", + "Small boost.": "Aumento pequeno.", + "Switching seasons is %1% pricier.": "Trocar de temporada é %1% mais caro.", + "Switching seasons is %1% cheaper.": "Trocar de temporada é %1% mais barato.", + "Heavenly chips have %1% less effect.": "Gotas divinas são %1% menos eficientes.", + "Buildings produce %1% more.": "Construções produzem %1% mais.", + "Buildings produce %1% less.": "Construções produzem %1% menos.", + "All golden cookies are wrath cookies with a greater chance of a negative effect.": "Todos os cookies dourados são cookies furiosos com maior chance de efeito negativo.", + "Wrinklers appear %1% faster and digest %2% more cookies.": "Enrugadores aparecem %1% mais rápido e digerem %2% mais cookies.", + "Effect is only active when your total amount of buildings ends with 0.": "O efeito só estará ativo quando o total de construções terminar com 0.", + "Achievement unlocked": "Conquista desbloqueada", + "Make %1 just from %2.": "Faça %1 só com %2.", + "Bake %1 in one ascension.": "Asse %1 em uma ascensão.", + "Bake %1 per second.": "Asse %1 por segundo.", + "Have %1.": "Tenha %1.", + "Ascend at least once.": "Ascenda pelo menos uma vez.", + "Ascend %1 times.": "Ascenda %1 vezes.", + "Ascend with %1 baked.": "Ascenda com %1 assados.", + "Make %1 by only having clicked %2 times.": "Faça %1 só tendo clicado %2 times.", + "Make %1 with no cookie clicks.": "Faça %1 sem ter clicado no cookie nenhuma vez.", + "Get to %1 baked with no upgrades purchased.": "Chegue a %1 assados sem comprar nenhuma melhoria.", + "Get to %1 baked in %2.": "Chegue a %1 assados em %2.", + "Make %1 from clicking.": "Faça %1 clicando.", + "Sell a grandma.": "Venda uma vovó.", + "Have at least %1 of every building.": "Tenha pelo menos %1 de cada construção.", + "Have at least 1 of the most expensive object, 2 of the second-most expensive, 4 of the next and so on (capped at %1).": "Tenha pelo menos 1 do objeto mais caro, 2 do segundo mais caro, 4 do próximo e assim por diante (máximo de %1).", + "Have at least 10 of the most expensive object, 20 of the second-most expensive, 30 of the next and so on.": "Tenha pelo menos 10 do objeto mais caro, 20 do segundo mais caro, 30 do próximo e assim por diante.", + "Click a golden cookie.": "Clique em um cookie dourado.", + "Click %1.": "Clique em %1.", + "Hack in some cookies.": "Hackeie uns cookies.", + "Click really, really fast.": "Clique muito, muito rápido.", + "Have at least %1 of everything.": "Tenha pelo menos %1 de tudo.", + "Own %1.": "Adquira %1.", + "Purchase %1.": "Compre %1.", + "Dunk the cookie.": "Mergulhe o cookie.", + "Appease the grandmatriarchs at least once.": "Apazigue as vótriarcas pelo menos uma vez.", + "Appease the grandmatriarchs at least %1 times.": "Apazigue as vótriarcas pelo menos %1 vezes.", + "Declare a covenant with the grandmatriarchs.": "Entre em um pacto com as vótriarcas.", + "Own at least %1 grandma types.": "Tenha pelo menos %1 tipos de vovó.", + "Unlock 100% of your heavenly chips power.": "Desbloqueie 100% do seu poder de gotas celestiais.", + "You have 1 chance in %1 every second of earning this achievement.": "Você tem 1 chance e %1 por segundo de ganhar essa conquista.", + "Burst 1 wrinkler.": "Exploda 1 enrugador.", + "Burst %1 wrinklers.": "Exploda %1 enrugadores.", + "Unlock every Halloween-themed cookie.
Owning this achievement makes Halloween-themed cookies drop more frequently in future playthroughs.": "Desbloqueie todos os cookies com tema de Halloween.
Ter essa conquista faz com que os cookies com tema de Halloween apareçam com mais frequência em partidas futuras.", + "Reach Santa's 7th form.": "Alcance a 7ª forma do Papai Noel.", + "Reach Santa's final form.": "Alcance a Forma final do Papai Noel.", + "Unlock every Christmas-themed cookie.
Owning this achievement makes Christmas-themed cookies drop more frequently in future playthroughs.": "Desbloqueie todos os cookies com tema de Natal.
Ter essa conquista faz com que os cookies com tema de Natal apareçam com mais frequência em partidas futuras.", + "Pop 1 reindeer.": "Estoure 1 rena.", + "Pop %1 reindeer.": "Estoure %1 renas.", + "Pop a reindeer during an elder frenzy.": "Estoure uma rena durante um frenesi ancestral.", + "Unlock every Valentine-themed cookie.": "Desbloqueia todos os cookies com tema de Dia dos Namorados.", + "Click the tiny cookie.": "Clique no minicookie.", + "This is for baking %1 and making it on the local news.": "Isso é por assar %1 e chegar ao noticiário local.", + "Name yourself Orteil.
Note: usurpers incur a -%1% CpS penalty until they rename themselves something else.
": "Coloque seu nome como Orteil.
Aviso: usurpadores têm uma penalidade de -%1% CpS até que troquem o nome para outra coisa.
", + "Use an add-on.": "Use uma extensão.", + "Unlock 1 egg.": "Desbloqueie 1 ovo.", + "Unlock %1 eggs.": "Desbloqueie %1 ovos.", + "Unlock all the eggs.
Owning this achievement makes eggs drop more frequently in future playthroughs.": "Desbloqueie todos os ovos.
Ter essa conquista faz com que os ovos apareçam com mais frequência em partidas futuras.", + "Give your bakery a name.": "Dê um nome para a sua confeitaria.", + "Click this achievement's slot.": "Clique no espaço da conquista.", + "Complete your dragon's training.": "Conclua o treinamento do seu dragão.", + "Click on the news ticker %1 times.": "Clique no quadro de notícias %1 vezes.", + "Own a combined %1 %2 and %3.": "Tenha %1 %2 e %3 combinados.", + "Own %1 upgrades and %2 buildings.": "Adquira %1 melhorias e %2 construções.", + "Own %1 heavenly upgrades.": "Tenha %1 melhorias divinas.", + "Burst the near-extinct shiny wrinkler.": "Exploda o quase extinto enrugador brilhante.", + "Click a golden cookie less than 1 second after it spawns.": "Clique em um cookie dourado em menos de um segundo depois que ele surgir.", + "Click a golden cookie less than 1 second before it dies.": "Clique em um cookie dourado menos de um segundo antes de ele sumir.", + "Harvest %1 coalescing sugar lumps.": "Colete %1 torrões de açúcar coalescentes.", + "Successfully harvest a coalescing sugar lump before it's ripe.": "Colha com sucesso um torrão de açúcar antes que ele fique pronto.", + "Harvest a bifurcated sugar lump.": "Colete um torrão de açúcar bifurcado.", + "Harvest a golden sugar lump.": "Colete um torrão de açúcar dourado.", + "Harvest a meaty sugar lump.": "Colete um torrão de açúcar carnudo.", + "Harvest a caramelized sugar lump.": "Colete um torrão de açúcar caramelizado.", + "Reach level %1 %2.": "Alcance o nível %1 %2.", + "Cast %1 spells.": "Lance %1 feitiços.", + "Have %1 golden cookies simultaneously.": "Tenha %1 cookies dourados ao mesmo tempo.", + "Manage a cookie legacy for at least a year.": "Administre um legado de cookies por pelo menos um ano.", + "Harvest %1 mature garden plants.": "Colete %1 plantas de jardim maduras.", + "Fill every tile of the biggest garden plot with plants.": "Preencha todos os espaços do maior terreno do jardim com plantas.", + "Unlock every garden seed.": "Desbloqueie todas as sementes do jardim.", + "Convert a complete seed log into sugar lumps by sacrificing your garden to the sugar hornets.
Owning this achievement makes seeds %1% cheaper, plants mature %2% sooner, and plant upgrades drop %3% more.": "Converta um registro de sementes completo em torrões de açúcar sacrificando seu jardim às vespas de açúcar.
Ter essa conquista torna as sementes %1% mais baratas, as plantas amadurecem %2% mais rápido e as melhorias de planta caem %3% mais.", + "Ascend with exactly %1.": "Ascenda com exatamente %1.", + "Have your reinforced membrane protect the shimmering veil.": "Faça a membrana reforçada proteger o véu cintilante.", + "Own every fortune upgrade.
Owning this achievement makes fortunes appear twice as often; unlocked fortune upgrades also have a %1% chance to carry over after ascending.": "Adquira cada melhoria de sorte.
Possuir essa conquista faz as sortes aparecerem com o dobro da frequência; melhorias de sorte desbloqueadas também têm uma chance de %1% de continuar após a ascensão.", + "Make your first stock market profit.": "Faça seu primeiro lucro no mercado de ações.", + "Own at least %1 of a stock market good.": "Tenha pelo menos %1 de um bem do mercado de ações.", + "Own at least %1 of every stock market good.": "Possuir pelo menos %1 de cada bem do mercado de ações.", + "Make a day of CpS ($%1) in 1 stock market sale.": "Ganhe um dia de CpS ($%1) em 1 venda no mercado de ações.", + "Spend a day of CpS ($%1) in 1 stock market purchase.": "Gaste um dia de CpS ($%1) em 1 compra no mercado de ações.", + "Have your stock market profits surpass a whole year of CpS ($%1).": "Faça com que seus lucros no mercado de ações ultrapassem um ano inteiro de CpS ($%1).", + "Unlock the highest-tier stock market headquarters.": "Desbloqueie a sede do mercado de ações de categoria mais alta.", + "Have your stock market profits surpass $%1.": "Faça com que seus lucros no mercado de ações ultrapassem $%1.", + "Own %1 kitten upgrades.": "Adquira %1 melhorias de gatinho.", + "Find the forgotten madeleine.": "Encontre a madeleine esquecida.", + "Click one of Santa's helper grandmas during Christmas season.": "Clique em um dos ajudantes de Papai Noel durante a temporada de Natal.", + "Frenzy": "Frenesi", + "Elder frenzy": "Frenesi Ancestral", + "Click frenzy": "Frenesi de cliques", + "Clot": "Coágulo", + "Dragon Harvest": "Colheita Dracônica", + "Everything must go": "Limpa de estoque", + "Cursed finger": "Dedo amaldiçoado", + "Cookie storm": "Tempestade de cookies", + "Sugar blessing": "Bênção açucarada", + "Haggler's luck": "Sorte do negociador", + "Haggler's misery": "Miséria do negociador", + "Crafty pixies": "Fadinhas astutas", + "Nasty goblins": "Goblins nojentos", + "Magic adept": "Adepto da magia", + "Magic inept": "Inepto em magia", + "Devastation": "Devastação", + "Sugar frenzy": "Frenesi de açúcar", + "Loan %1": "Empréstimo de %1", + "Loan %1 (interest)": "Empréstimo de %1 (juros)", + "%1 Power!": "Poder de %1!", + "%1 Burden!": "Fardo de %1!", + "Cookie production x%1 for %2!": "Produção de cookies x%1 por %2!", + "Cookie production +%1% for %2!": "Produção de cookies +%1% por %2!", + "Cookie production %1% slower for %2!": "Produção de cookies %1% mais lenta por %2!", + "Cookie production halved for %1!": "Produção de cookies pela metade por %1!", + "Your %1 are boosting your CpS!": "%1 estão aumentando seu CpS!", + "Your %1 are rusting your CpS!": "%1 estão corroendo seu CpS!", + "All buildings are %1% cheaper for %2!": "Todas as construções são %1% mais baratas por %2!", + "All buildings are %1% pricier for %2!": "Todas as construções são %1% mais caras por %2!", + "All upgrades are %1% cheaper for %2!": "Todas as melhorias são %1% mais baratas por %2!", + "All upgrades are %1% pricier for %2!": "Todas as melhorias são %1% mais caras por %2!", + "Cookie production halted for %1,
but each click is worth %2 of CpS.": "Produção de cookies interrompida por %1,
Mas cada clique vale %2 do CpS.", + "Clicking power x%1 for %2!": "Poder de clique x%1 por %2!", + "Clicking power +%1% for %2!": "Poder de clique +%1% por %2!", + "Cookies everywhere!": "Cookies por todo lado!", + "You find %1% more golden cookies for the next %2.": "Você encontra %1% mais cookies dourados pelos próximos %2.", + "Spells backfire %1 times less for %2.": "Feitiços dão errado %1 vezes menos por %2.", + "Spells backfire %1 times more for %2.": "Feitiços dão errado %1 vezes mais por %2.", + "can be done once every %1": "pode ser feito uma vez a cada %1", + "usable again in %1": "usável novamente em %1", + "+%1/s": "/", + "Next tick in %1.": "Próximo tique em %1.", + "Initializing...": "Inicializando…", + "View %1": "Visualizar %1", + "Close %1": "Fechar %1", + "Details:": "Detalhes:", + "Effects:": "Efeitos:", + "Effect is active.": "Efeito está ativo.", + "Effect is inactive.": "Efeito está inativo.", + "Current bonus:": "Bônus atual:", + "Garden": "Jardim", + "Baker's wheat": "Trigo de confeiteiro", + "[Baker's wheat quote]A plentiful crop whose hardy grain is used to make flour for pastries.": "Uma planta abundante cujo grão resistente é usado para fazer farinha para massas.", + "Thumbcorn": "Milho Dedo", + "[Thumbcorn quote]A strangely-shaped variant of corn. The amount of strands that can sprout from one seed is usually in the single digits.": "Uma variante de milho com um formato estranho. O número de plantas que pode brotar de uma semente normalmente não chega a dois dígitos.", + "Cronerice": "Arroz Velho", + "[Cronerice quote]Not only does this wrinkly bulb look nothing like rice, it's not even related to it either; its closest extant relative is the weeping willow.": "Além dessa coisa enrugada não parecer nada com arroz, ela não é nem relacionada com ele; seu parente mais próximo existente é o salgueiro-chorão.", + "Gildmillet": "Milhete Adornado", + "[Gildmillet quote]An ancient staple crop, famed for its golden sheen. Was once used to bake birthday cakes for kings and queens of old.": "Uma planta ancestral e resistente, famosa por seu brilho dourado. Era usada em bolos de aniversário de reis e rainhas antigos.", + "Ordinary clover": "Trevo Comum", + "[Ordinary clover quote]Trifolium repens, a fairly mundane variety of clover with a tendency to produce four leaves. Such instances are considered lucky by some.": "Trifolium repens, uma variedade bem mundana de trevo, com uma tendência de produzir quatro folhas. Algumas consideram que, se isso acontecer, eles dão sorte.", + "Golden clover": "Trevo Dourado", + "[Golden clover quote]A variant of the ordinary clover that traded its chlorophyll for pure organic gold. Tragically short-lived, this herb is an evolutionary dead-end - but at least it looks pretty.": "Uma variante do trevo comum que trocou sua clorofila por ouro orgânico puro. Com uma vida tragicamente curta, essa erva é um beco sem saída evolucionário, mas é bonita, pelo menos.", + "Shimmerlily": "Lírio Cintilante", + "[Shimmerlily quote]These little flowers are easiest to find at dawn, as the sunlight refracting in dew drops draws attention to their pure-white petals.": "É mais fácil encontrar flores no alvorecer, já que a luz do sol refratando nas gotas de orvalho atrai a atenção para suas pétalas de um branco puro.", + "Elderwort": "Malte Ancestral", + "[Elderwort quote]A very old, long-forgotten subspecies of edelweiss that emits a strange, heady scent. There is some anecdotal evidence that these do not undergo molecular aging.": "Uma subespécie muito antiga e esquecida há muito tempo que tem um estranho aroma inebriante. Há evidências anedóticas de que ela não envelhece em nível molecular.", + "Bakeberry": "Baga de Assar", + "[Bakeberry quote]A favorite among cooks, this large berry has a crunchy brown exterior and a creamy red center. Excellent in pies or chicken stews.": "Queridinha dos cozinheiros, essa grande baga tem um exterior marrom crocante e um centro vermelho cremoso. Excelente em tortas ou ensopados de frango.", + "Chocoroot": "Choco-raiz", + "[Chocoroot quote]A tangly bramble coated in a sticky, sweet substance. Unknown genetic ancestry. Children often pick these from fields as-is as a snack.": "Uma planta com espinhos coberta de uma substância doce e pegajosa. Ancestralidade genética desconhecida. Crianças frequentemente as colhem dos campos e comem como um lanche.", + "White chocoroot": "Choco-raiz Branca", + "[White chocoroot quote]A pale, even sweeter variant of the chocoroot. Often impedes travelers with its twisty branches.": "Uma variante pálida e ainda mais doce do que a Choco-raiz. Frequentemente impede a passagem com seus ramos retorcidos.", + "White mildew": "Fungo Branco", + "[White mildew quote]A common rot that infests shady plots of earth. Grows in little creamy capsules. Smells sweet, but sadly wilts quickly.": "Um fungo comum que infesta porções sombreadas de terra. Cresce em pequenas cápsulas cremosas. Tem um cheiro doce, mas murcha rápido, infelizmente.", + "Brown mold": "Bolor Marrom", + "[Brown mold quote]A common rot that infests shady plots of earth. Grows in odd reddish clumps. Smells bitter, but thankfully wilts quickly.": "Um fungo comum que infesta porções sombreadas de terra. Cresce em grupos estranhos e avermelhados. Tem um cheiro amargo, mas murcha rápido, felizmente.", + "Meddleweed": "Erva Daninha Intrometida", + "[Meddleweed quote]The sign of a neglected farmland, this annoying weed spawns from unused dirt and may sometimes spread to other plants, killing them in the process.": "Sinais de terras negligenciadas, essa erva irritante surge da terra não usada e pode, às vezes, se espalhar para outras plantas, matando-as no processo.", + "Whiskerbloom": "Chá de Java Florescida", + "[Whiskerbloom quote]Squeezing the translucent pods makes them excrete a milky liquid, while producing a faint squeak akin to a cat's meow.": "Espremer suas cápsulas transparentes faz com que elas excretem um líquido leitoso enquanto produzem um guincho fraco parecido com o miar de um gato.", + "Chimerose": "Rosa Sino", + "[Chimerose quote]Originating in the greener flanks of polar mountains, this beautiful flower with golden accents is fragrant enough to make any room feel a little bit more festive.": "Originária dos flancos verdes de montanhas polares, essa linda flor com traços dourados é perfumada o suficiente para deixar qualquer ambiente um pouco mais festivo.", + "Nursetulip": "Tulipa Nutritiva", + "[Nursetulip quote]This flower grows an intricate root network that distributes nutrients throughout the surrounding soil. The reason for this seemingly altruistic behavior is still unknown.": "Essa flor desenvolve uma intrincada rede de raízes que distribui nutrientes pelo solo ao redor. Os motivos para esse comportamento aparentemente altruísta ainda são desconhecidos.", + "Drowsyfern": "Samambaia Sonolenta", + "[Drowsyfern quote]Traditionally used to brew a tea that guarantees a good night of sleep.": "Tradicionalmente usada como um chá que garante uma boa noite de sono.", + "Wardlichen": "Líquen-protetor", + "[Wardlichen quote]The metallic stench that emanates from this organism has been known to keep insects and slugs away.": "O cheiro metálico que emana deste organismo é conhecido por manter os insetos e lesmas afastados.", + "Keenmoss": "Musgo-afiado", + "[Keenmoss quote]Fuzzy to the touch and of a vibrant green. In plant symbolism, keenmoss is associated with good luck for finding lost objects.": "De um verde vibrante e fofinho ao toque. No simbolismo das plantas, musgo-afiado é associado com boa sorte para encontrar objetos perdidos.", + "Queenbeet": "Beterraba-rainha", + "[Queenbeet quote]A delicious taproot used to prepare high-grade white sugar. Entire countries once went to war over these.": "Uma raiz deliciosa usada no preparo de açúcar refinado de alta qualidade. Vários países chegaram a ir à guerra por causa dela.", + "Juicy queenbeet": "Beterraba-rainha suculenta", + "[Juicy queenbeet quote]A delicious taproot used to prepare high-grade white sugar. Entire countries once went to war over these.
It looks like this one has grown especially sweeter and juicier from growing in close proximity to other queenbeets.": "Uma raiz deliciosa usada no preparo de açúcar refinado de alta qualidade. Vários países chegaram a ir à guerra por causa dela.
Parece que essa cresceu especialmente mais doce e suculenta por ter crescido próxima de outras beterrabas-rainhas.", + "Duketater": "Batata-duque", + "[Duketater quote]A rare, rich-tasting tuber fit for a whole meal, as long as its strict harvesting schedule is respected. Its starch has fascinating baking properties.": "Um tubérculo raro e saboroso, adequado para uma refeição completa, desde que seu período de colheita seja respeitado rigorosamente. Seu amido tem propriedades culinárias fascinantes.", + "Crumbspore": "Esporo-migalha", + "[Crumbspore quote]An archaic mold that spreads its spores to the surrounding dirt through simple pod explosion.": "Um fungo arcaico que espalha seus esporos pela terra ao redor simplesmente por meio da explosão de uma de suas cápsulas.", + "Doughshroom": "Cogumassa", + "[Doughshroom quote]Jammed full of warm spores; some forest walkers often describe the smell as similar to passing by a bakery.": "Cheio de esporos quentinhos; quem passa pela floresta costuma descrever o cheiro como semelhante ao de se passar por uma confeitaria.", + "Glovemorel": "Cogumelo-luva", + "[Glovemorel quote]Touching its waxy skin reveals that the interior is hollow and uncomfortably squishy.": "Tocar em sua pele cerosa revela que o interior é oco e desconfortavelmente mole.", + "Cheapcap": "Bartinho", + "[Cheapcap quote]Small, tough, and good in omelettes. Some historians propose that the heads of dried cheapcaps were once used as currency in some bronze age societies.": "Pequeno, duro e bom em omeletes. Alguns historiadores propõem que as cabeças de baratinhos secos já foram usadas como moeda em algumas sociedades da idade do bronze.", + "Fool's bolete": "Porcini dos tolos", + "[Fool's bolete quote]Named for its ability to fool mushroom pickers. The fool's bolete is not actually poisonous, it's just extremely bland.": "Batizado pela sua habilidade de enganar coletores de cogumelos. O porcini dos tolos não é realmente venenoso, só é muito sem graça.", + "Wrinklegill": "Rhodotus", + "[Wrinklegill quote]This mushroom's odor resembles that of a well-done steak, and is said to whet the appetite - making one's stomach start gurgling within seconds.": "O odor desse cogumelo lembra o de um bife bem passado, e dizem que abre o apetite, fazendo o estômago começar a roncar em segundos.", + "Green rot": "Bolor verde", + "[Green rot quote]This short-lived mold is also known as \"emerald pebbles\", and is considered by some as a pseudo-gem that symbolizes good fortune.": "Este fungo de vida curta também é conhecido como \"seixo esmeralda\" e é considerado por alguns como uma pseudo-joia que simboliza boa sorte.", + "Shriekbulb": "Bulbo-grito", + "[Shriekbulb quote]A nasty vegetable with a dreadful quirk : its flesh resonates with a high-pitched howl whenever it is hit at the right angle by sunlight, moonlight, or even a slight breeze.": "Um vegetal desagradável com uma peculiaridade terrível: sua carne ressoa com um uivo estridente sempre que é atingida no ângulo certo pela luz do sol, do luar ou até por uma leve brisa.", + "Tidygrass": "Grama-limpa", + "[Tidygrass quote]The molecules this grass emits are a natural weedkiller. Its stems grow following a predictable pattern, making it an interesting -if expensive- choice for a lawn grass.": "As moléculas que esta grama emite são um herbicida natural. Seus caules crescem seguindo um padrão previsível, tornando-a uma escolha interessante, ainda que cara, para um gramado.", + "Everdaisy": "Sempre margarida", + "[Everdaisy quote]While promoted by some as a superfood owing to its association with longevity and intriguing geometry, this elusive flower is actually mildly toxic.": "Embora promovida por alguns como um superalimento devido à sua associação com longevidade e geometria intrigante, esta flor elusiva é, na verdade, levemente tóxica.", + "Ichorpuff": "Puficor", + "[Ichorpuff quote]This puffball mushroom contains sugary spores, but it never seems to mature to bursting on its own. Surrounding plants under its influence have a very slow metabolism, reducing their effects but lengthening their lifespan.": "Este cogumelo felpudo de bolinha contém esporos açucarados, mas nunca parece amadurecer o bastante para estourar por conta própria. As plantas ao seu redor sob sua influência têm um metabolismo muito lento, reduzindo seus efeitos, mas prolongando a vida útil delas.", + "Garden information": "Informações do jardim", + "Your garden is frozen, providing no effects.": "Seu jardim está congelado, não fornece efeito algum.", + "Combined effects of all your plants:": "Efeitos combinados de todas as suas plantas:", + "None.": "Nenhum.", + "-You can cross-breed plants by planting them close to each other; new plants will grow in the empty tiles next to them.
-Unlock new seeds by harvesting mature plants.
-When you ascend, your garden plants are reset, but you keep all the seeds you've unlocked.
-Your garden has no effect and does not grow while the game is closed.": "-Você pode criar plantas híbridas plantando-as perto umas das outras. Novas plantas crescerão nos espaços vazios ao lado delas.
-Desbloqueie novas sementes colhendo plantas maduras.
-Quando você ascender, suas plantas no jardim serão descartadas, mas você ficará com todas as sementes que desbloqueou.
-Seu jardim não tem efeito e não cresce enquanto o jogo estiver fechado.", + "Harvest all": "Colher tudo", + "Instantly harvest all plants in your garden.": "Colhe instantaneamente todas as plantas do seu jardim.", + "%1 to harvest only mature, mortal plants.": "%1 para colher apenas plantas maduras e mortais.", + "%1 to harvest all mature plants of this type.": "%1 para colher todas as plantas maduras desse tipo.", + "Freeze": "Congelar", + "Cryogenically preserve your garden.
Plants no longer grow, spread or die; they provide no benefits.
Soil cannot be changed.
Using this will effectively pause your garden.": "Preserve criogenicamente o seu jardim.
As plantas deixam de crescer, se espalhar e morrer, não fornecendo nenhum benefício.
O solo não pode ser alterado.
Ao usar isso, seu jardim será efetivamente pausado.", + "Garden is frozen. Unfreeze to resume.": "O jardim está congelado. Descongele-o para continuar.", + "Sacrifice garden": "Sacrificar jardim", + "A swarm of sugar hornets comes down on your garden, destroying every plant as well as every seed you've unlocked - leaving only a %1 seed.
In exchange, they will grant you %2.
This action is only available with a complete seed log.": "Um enxame de vespas do açúcar ataca seu jardim, destruindo todas as plantas e todas as sementes que você desbloqueou - deixando apenas uma semente de %1.
Em troca, elas darão %2.
Essa ação só está disponível com um registro de sementes completo.", + "Do you REALLY want to sacrifice your garden to the sugar hornets?
You will be left with an empty plot and only the %1 seed unlocked.
In return, you will gain %2 sugar lumps.
": "Você quer MESMO sacrificar seu jardim para as vespas do açúcar?
Você ficará com um terreno vazio e apenas a semente de %1 desbloqueada.
Em troca, ganhará %2 torrões de açúcar.
", + "Sacrifice!": "Sacrificar!", + "You've sacrificed your garden to the sugar hornets, destroying your crops and your knowledge of seeds.
In the remains, you find %1 sugar lumps.": "Você sacrificou seu jardim para as vespas do açúcar, destruindo suas plantações e seu conhecimento sobre as sementes.
Nos restos, você encontra %1 torrões de açúcar.", + "immortal": "imortal", + "predictable growth": "crescimento estimado", + "surrounding plants (%1x%1) age %2% faster": "plantas ao redor (%1x%1) envelhecem %2% mais rápido", + "surrounding plants (%1x%1) age %2% slower": "plantas ao redor (%1x%1) envelhecem %2% mais devagar", + "surrounding plants (%1x%1) are %2% more efficient": "plantas ao redor (%1x%1) são %2% mais eficientes", + "surrounding plants (%1x%1) are %2% less efficient": "plantas ao redor (%1x%1) são %2% menos eficientes", + "surrounding tiles (%1x%1) develop no weeds or fungus": "espaços ao redor (%1x%1) não adquirem ervas daninhas ou fungos", + "harvest when mature for +%1 of CpS (max. %2% of bank)": "colha quando estiver madura pra +%1 de CpS (máximo de %2% do banco)", + "harvest when mature for a sugar lump": "colha quando estiver madura por um torrão de açúcar", + "useless": "inútil", + "spreads easily": "espalha-se com facilidade", + "may spread as %1": "pode se espalhar como %1", + "grows in empty tiles": "cresce em espaços vazios", + "may overtake nearby plants": "pode tomar plantas próximas", + "may sometimes drop spores when uprooted": "às vezes soltam esporos quando arrancadas", + "explodes into up to %1 of CpS at the end of its lifecycle (max. %2% of bank)": "explode em até %1 de CpS no fim de seu ciclo de vida (máximo de %2% do banco)", + "cannot handle cold climates; %1% chance to die when frozen": "não lida bem com climas frios; %1% de chance de morrer quando congelada", + "the unfortunate result of some plant combinations": "o triste resultado de algumas combinações de plantas", + "Soil unlocked at %1 farms.": "Solo desbloqueado com %1 fazendas.", + "Your field is currently using this soil.": "Seu campo já está utilizando esse solo.", + "You will be able to change your soil again in %1.": "Você poderá mudar seu solo novamente em %1.", + "Click to use this type of soil for your whole field.": "Clique para usar esse tipo de solo no seu campo todo.", + "Dirt": "Terra", + "Simple, regular old dirt that you'd find in nature.": "A velha e simples terra comum que você encontra na natureza.", + "Fertilizer": "Fertilizante", + "Soil with a healthy helping of fresh manure. Plants grow faster but are less efficient.": "Solo com a saudável ajuda do esterco fresco. As plantas crescem mais rápido, mas são menos eficientes.", + "Clay": "Barro", + "Rich soil with very good water retention. Plants grow slower but are more efficient.": "Solo rico com uma retenção de água muito boa. As plantas crescem mais devagar, mas são mais eficientes.", + "Pebbles": "Seixos", + "Dry soil made of small rocks tightly packed together. Not very conducive to plant health, but whatever falls off your crops will be easy to retrieve.
Useful if you're one of those farmers who just want to find new seeds without having to tend their garden too much.": "Solo seco feito de pequenas pedras compactadas firmemente. Não muito propício à saúde das plantas, mas tudo que cair de suas plantações poderá ser recolhido facilmente.
Útil se você for um daqueles fazendeiros que só quer encontrar novas sementes sem ter que cuidar demais do seu jardim.", + "Wood chips": "Lascas de madeira", + "Soil made of bits and pieces of bark and sawdust. Helpful for young sprouts to develop, not so much for mature plants.": "Solo feito com pedacinhos de casca e serragem. Útil para pequenos brotos se desenvolverem, mas não muito para plantas maduras.", + "tick every %1": "um tique a cada %1", + "passive plant effects": "efeitos passivos da planta", + "weed growth": "crescimento de erva daninha", + "%1% chance of collecting seeds automatically when plants expire": "chance de %1% de coletar sementes automaticamente quando plantas perecerem", + "plants spread and mutate %1 times more": "as plantas se espalham e sofrem mutação %1 vezes mais", + "Plant effects:": "Efeitos da planta:", + "Possible mutations:": "Possíveis mutações:", + "Average lifespan:": "Tempo de vida médio:", + "Average maturation:": "Maturação média:", + "Mature in about %1": "Amadurece em cerca de %1", + "Decays in about %1": "Apodrece em cerca de %1", + "Does not decay": "Não apodrece", + "%1 tick": [ + "%1 tique", + "%1 tiques" + ], + "Weed": "Erva daninha", + "Fungus": "Fungo", + "Planting cost:": "Custo do plantio:", + "%1 of CpS,
minimum %2": "%1 de CpS,
no mínimo %2", + "%1 seed": "semente de %1", + "Click to select this seed for planting.": "Clique para selecionar essa semente para plantar.", + "This seed cannot be planted.": "Essa semente não pode ser plantada.", + "Empty tile": "Espaço vazio", + "This tile of soil is empty.
Pick a seed and plant something!": "Esse espaço de solo está vazio.
Escolha uma semente e plante algo!", + "Click to plant %1 for %2.": "Clique para plantar %1 por %2.", + "%1 to plant multiple.": "%1 para plantar várias.", + "Aging multiplier:": "Multiplicador de envelhecimento:", + "Effect multiplier:": "Multiplicador de efeito:", + "Weeds/fungus repellent:": "Repelente de ervas daninhas/fungos:", + "This plant is growing here.": "Essa planta está crescendo aqui.", + "Stage:": "Estágio:", + "bud": "botão", + "sprout": "broto", + "bloom": "floração", + "mature": "madura", + "may reproduce, will drop seed when harvested": "pode se reproduzir, deixará uma semente quando colhida", + "Click to harvest.": "Clique para colher.", + "Click to unearth.": "Clique para desenterrar.", + "Click to refill your soil timer and trigger 1 plant growth tick with x%1 spread and mutation rate for %2.": "Clique para recarregar o temporizador do solo e ativar 1 tique de crescimento de planta com taxa de propagação e mutação x%1 por %2.", + "Unlocked %1 seed.": "Semente de %1 desbloqueada.", + "Seeds": "Sementes", + "Tools": "Ferramentas", + "Mature plants harvested: %1 (total: %2)": "Plantas maduras colhidas: %1 (total: %2)", + "Plot size: %1
(Upgrades with farm level)": "Tamanho do terreno: %1
(Aumenta com o nível da fazenda)", + "Garden plants age and mutate %1% faster.": "Plantas de jardim crescem e sofrem mutações %1% mais rápido.", + "while plant is alive; scales with plant growth": "enquanto a planta está viva; aumenta conforme o crescimento da planta", + "Dungeon": "Calabouço", + "Grimoire": "Grimório", + "This is your magic meter. Each spell costs magic to use.
Your maximum amount of magic varies depending on your amount of Wizard towers, and their level.
Magic refills over time. The lower your magic meter, the slower it refills.": "Esse é o seu medidor de magia. Cada feitiço custa magia pra ser usado.
Sua quantidade máxima de magia varia dependendo de sua quantidade de Torres de Feitiçaria e do nível delas.
A magia recarrega com o tempo. Quanto mais baixo o seu medidor de magia, mais devagar ele recarrega.", + "Spells cast: %1 (total: %2)": "Feitiços lançados: %1 (total: %2)", + "Magic cost:": "Custo da magia:", + "Chance to backfire:": "Chance de causar efeito contrário:", + "Effect:": "Efeito:", + "Backfire:": "Efeito contrário:", + "Backfire!": "Efeito contrário!", + "%1 magic": "%1 de magia", + "+%1% of max magic": "+%1% de magia máxima", + "Click to refill %1 units of your magic meter for %2.": "Clique pra recarregar %1 unidades do seu medidor de magia por %2.", + "Grimoire spells are %1% cheaper but fail %1% more.": "Feitiços do Grimório são %1% mais baratos mas falham %1% mais vezes.", + "Conjure Baked Goods": "Conjurar Produtos Assados", + "Summon half an hour worth of your CpS, capped at %1% of your cookies owned.": "Invoca a quantidade de seus CpS produzidos em meia hora, limitado a %1% dos cookies que você tem.", + "Trigger a %1-minute clot and lose %1 minutes of CpS.": "Ativa um coágulo de %1 minuto e perde %1 minutos de CpS.", + "You magic %1 out of thin air.": "Você conjura %1 do nada.", + "Summoning failed!": "O feitiço falhou!", + "Force the Hand of Fate": "Forçar a Mão do Destino", + "Summon a random golden cookie. Each existing golden cookie makes this spell +%1% more likely to backfire.": "Invoca um cookie dourado aleatório. Cada cookie dourado existente aumenta a chance desse feitiço causar o efeito contrário em +%1%.", + "Summon an unlucky wrath cookie.": "Invoca um desafortunado cookie furioso.", + "Promising fate!": "Destino promissor!", + "Sinister fate!": "Destino sinistro!", + "Stretch Time": "Estender o Tempo", + "All active buffs gain %1% more time (up to %2 more minutes).": "Todas as vantagens ativas ganham mais %1% de tempo (por até mais %2 minutos).", + "All active buffs are shortened by %1% (up to %2 minutes shorter).": "Todas as vantagens ativas têm seu tempo reduzido em %1% (por até menos %2 minutos).", + "No buffs to alter!": "Não há vantagens a serem modificadas!", + "Zap! Buffs lengthened.": "Zap! Vantagens estendidas.", + "Fizz! Buffs shortened.": "Fizz! Vantagens reduzidas.", + "Spontaneous Edifice": "Edifício Espontâneo", + "The spell picks a random building you could afford if you had twice your current cookies, and gives it to you for free. The building selected must be under %1, and cannot be your most-built one (unless it is your only one).": "O feitiço escolhe uma construção aleatória que você poderia pagar se tivesse o dobro de seus cookies atuais e te dá de graça. A construção selecionada deve custar menos de %1, e não pode ser a que você mais construiu (a não ser que seja a sua única).", + "Lose a random building.": "Perde uma construção aleatória.", + "No buildings to improve!": "Nenhuma construção a ser melhorada!", + "Backfired, but no buildings to destroy!": "Falhou, mas não há construções a serem destruídas!", + "A new %1
bursts out of the ground.": "Uma nova construção de %1
surge do chão.", + "One of your %1
disappears in a puff of smoke.": "Uma de suas construções de %1
desaparece em uma nuvem de fumaça.", + "Haggler's Charm": "Encanto do Pechinchador", + "Upgrades are %1% cheaper for 1 minute.": "Melhorias ficam %1% mais baratas por 1 minuto.", + "Upgrades are %1% more expensive for an hour.": "Melhorias ficam %1% mais caras por 1 hora.", + "Upgrades are cheaper!": "Melhorias estão mais baratas!", + "Upgrades are pricier!": "Melhorias estão mais caras!", + "Summon Crafty Pixies": "Invocar Duendes Habilidosos", + "Buildings are %1% cheaper for 1 minute.": "Construções ficam %1% mais baratas por 1 minuto.", + "Buildings are %1% more expensive for an hour.": "Construções ficam %1% mais caras por 1 hora.", + "Buildings are cheaper!": "Construções estão mais baratas!", + "Buildings are pricier!": "Construções estão mais caras!", + "Gambler's Fever Dream": "Alucinação do Apostador", + "Cast a random spell at half the magic cost, with twice the chance of backfiring.": "Lança um feitiço aleatório pela metade do custo de magia, com chance dobrada de efeito contrário.", + "No eligible spells!": "Não há feitiços válidos!", + "That's too bad!
Magic refunded.": "Que pena!
Magia reembolsada.", + "Casting %1
for %2 magic...": "Lançando %1
por %2 de magia…", + "Resurrect Abomination": "Ressuscitar Abominação", + "Instantly summon a wrinkler if conditions are fulfilled.": "Invoca um enrugador instantaneamente se as condições forem satisfeitas.", + "Pop one of your wrinklers.": "Estoure um de seus enrugadores.", + "Unable to spawn a wrinkler!": "Não é possível invocar um enrugador!", + "Rise, my precious!": "Erga-se, meu precioso!", + "But no wrinkler was harmed.": "Mas nenhum enrugador foi ferido.", + "So long, ugly...": "Adeus, criatura…", + "Diminish Ineptitude": "Reduzir a Inépcia", + "Spells backfire %1 times less for the next %2 minutes.": "Efeitos contrários ocorrem %1 vezes menos pelos próximos %2 minutos.", + "Spells backfire %1 times more for the next %2 minutes.": "Efeitos contrários ocorrem %1 vezes mais pelos próximos %2 minutos.", + "Ineptitude diminished!": "Inépcia reduzida!", + "Ineptitude magnified!": "Inépcia ampliada!", + "Pantheon": "Panteão", + "[GOD 1 NAME]Holobore, Spirit of Asceticism": "Holobore, Espírito do Asceticismo", + "[GOD 1 QUOTE]An immortal life spent focusing on the inner self, away from the distractions of material wealth.": "Uma vida imortal focada na contemplação do ser interior, longe das distrações da riqueza material.", + "[GOD 2 NAME]Vomitrax, Spirit of Decadence": "Vomitrax, Espírito da Decadência", + "[GOD 2 QUOTE]This sleazy spirit revels in the lust for quick easy gain and contempt for the value of steady work.": "Esse espírito banal se regozija na cobiça por ganhos rápidos e fáceis e despreza o valor do trabalho estável.", + "[GOD 3 NAME]Godzamok, Spirit of Ruin": "Godzamok, Espírito da Ruína", + "[GOD 3 QUOTE]The embodiment of natural disasters. An impenetrable motive drives the devastation caused by this spirit.": "A encarnação de desastres naturais. Uma motivação impenetrável impulsiona a devastação causada por esse espírito.", + "[GOD 4 NAME]Cyclius, Spirit of Ages": "Cyclius, Espírito das Eras", + "[GOD 4 QUOTE]This spirit knows about everything you'll ever do, and enjoys dispensing a harsh judgment.": "Esse espírito sabe de tudo o que você fará na vida, e se alegra em impor um julgamento severo.", + "[GOD 5 NAME]Selebrak, Spirit of Festivities": "Selebrak, Espírito das Festividades", + "[GOD 5 QUOTE]This is the spirit of merry getaways and regretful Monday mornings.": "Esse é o espírito das escapadas divertidas e das manhãs de segunda arrependidas.", + "[GOD 6 NAME]Dotjeiess, Spirit of Creation": "Dotjeiess, Espírito da Criação", + "[GOD 6 QUOTE]All things that be and ever will be were scripted long ago by this spirit's inscrutable tendrils.": "Tudo o que há e o que há de ser foi elaborado há muito tempo pelas garras inescrutáveis desse espírito.", + "[GOD 7 NAME]Muridal, Spirit of Labor": "Muridal, Espírito do Trabalho", + "[GOD 7 QUOTE]This spirit enjoys a good cheese after a day of hard work.": "Esse espírito gosta de um bom queijo depois de um dia de trabalho duro.", + "[GOD 8 NAME]Jeremy, Spirit of Industry": "Jeremy, Espírito da Indústria", + "[GOD 8 QUOTE]While this spirit has many regrets, helping you rule the world through constant industrialization is not one of them.": "Apesar desse espírito ter muitos arrependimentos, te ajudar a dominar o mundo através da industrialização constante não é um deles.", + "[GOD 9 NAME]Mokalsium, Mother Spirit": "Mokalsium, Espírito Mãe", + "[GOD 9 QUOTE]A caring spirit said to contain itself, inwards infinitely.": "Um espírito atencioso que supostamente se contém em seu interior, infinitamente.", + "[GOD 10 NAME]Skruuia, Spirit of Scorn": "Skruuia, Espírito do Desdém", + "[GOD 10 QUOTE]This spirit enjoys poking foul beasts and watching them squirm, but has no love for its own family.": "Esse espírito gosta de atiçar bestas horríveis e vê-las se contorcerem, mas não tem amor por sua própria família.", + "[GOD 11 NAME]Rigidel, Spirit of Order": "Rigidel, Espírito da Ordem", + "[GOD 11 QUOTE]You will find that life gets just a little bit sweeter if you can motivate this spirit with tidy numbers and properly-filled tax returns.": "Você descobrirá que a vida fica um pouquinho mais doce se puder motivar esse espírito com contas organizados e impostos de renda declarados devidamente.", + "Diamond slot": "Espaço de diamante", + "Ruby slot": "Espaço de rubi", + "Jade slot": "Espaço de jade", + "empty": "vazio", + "Release to assign %1 to this slot.": "Solte pra atribuir %1 a esse espaço.", + "Drag a spirit onto this slot to assign it.": "Arraste um espírito pra atribuí-lo a esse espaço.", + "If a golden cookie is clicked, this spirit is unslotted and all worship swaps will be used up.": "Se um cookie dourado for clicado, esse espírito deixará esse espaço e todos os pontos de adoração serão consumidos.", + "Each time you slot a spirit, you use up one worship swap.
If you have 2 swaps left, the next one will refill after %1.
If you have 1 swap left, the next one will refill after %2.
If you have 0 swaps left, you will get one after %3.
Unslotting a spirit costs no swaps.": "Cada vez que coloca um espírito num espaço, você usa um ponto de adoração.
Se tiver 2 pontos sobrando, o próximo recarregará depois de %1.
Se tiver 1 ponto sobrando, o próximo recarregará depois de %2.
Se não tiver nenhum ponto sobrando, ganhará um depois de %3.
Retirar um espírito não custa pontos.", + "Click to refill all your worship swaps for %1.": "Clique pra recarregar todos os seus pontos de adoração por %1.", + "Worship swaps: %1": "Pontos de adoração: %1", + "next in %1": "próximo em %1", + "The jade slot behaves as a ruby slot and the ruby slot behaves as a diamond slot.": "O espaço de jade age como um espaço de rubi, e o espaço de rubi age como um espaço de diamante.", + "Stock Market": "Bolsa de Valores", + "[STOCK 1 NAME]Old Mills": "Moinhos Velhos", + "[STOCK 1 TYPE]Cereals": "Cereais", + "[STOCK 1 LOGO]CRL": "CRS", + "[STOCK 2 NAME]Cocoa Excavations": "Escavações de Cacau", + "[STOCK 2 TYPE]Chocolate": "Chocolate", + "[STOCK 2 LOGO]CHC": "CHC", + "[STOCK 3 NAME]Bovine Industries": "Indústrias Bovinas", + "[STOCK 3 TYPE]Butter": "Manteiga", + "[STOCK 3 LOGO]BTR": "MTG", + "[STOCK 4 NAME]Candy Trust": "Fundo Doce", + "[STOCK 4 TYPE]Sugar": "Açúcar", + "[STOCK 4 LOGO]SUG": "ACR", + "[STOCK 5 NAME]Hazel Monastery": "Monastério Aveleira", + "[STOCK 5 TYPE]Nuts": "Castanhas", + "[STOCK 5 LOGO]NUT": "CAS", + "[STOCK 6 NAME]Wacky Reagants": "Reagentes Birutas", + "[STOCK 6 TYPE]Salt": "Sal", + "[STOCK 6 LOGO]SLT": "SAL", + "[STOCK 7 NAME]Cosmic Exports": "Exportações Cósmicas", + "[STOCK 7 TYPE]Vanilla": "Baunilha", + "[STOCK 7 LOGO]VNL": "BAU", + "[STOCK 8 NAME]Organic Gnostics": "Gnósticos Orgânicos", + "[STOCK 8 TYPE]Eggs": "Ovos", + "[STOCK 8 LOGO]EGG": "OVO", + "[STOCK 9 NAME]Dimensional Exchange": "Câmbio Dimensional", + "[STOCK 9 TYPE]Cinnamon": "Canela", + "[STOCK 9 LOGO]CNM": "CNL", + "[STOCK 10 NAME]Precision Aging": "Maturação Exata", + "[STOCK 10 TYPE]Cream": "Creme", + "[STOCK 10 LOGO]CRM": "CRM", + "[STOCK 11 NAME]Pectin Research": "Pesquisas Pectina", + "[STOCK 11 TYPE]Jam": "Geleia", + "[STOCK 11 LOGO]JAM": "GEL", + "[STOCK 12 NAME]Dazzle Corp Ltd.": "Corporações Deslumbre Ltd.", + "[STOCK 12 TYPE]White chocolate": "Chocolate Branco", + "[STOCK 12 LOGO]WCH": "CHB", + "[STOCK 13 NAME]Prosperity Hive": "Colmeia Prosperidade", + "[STOCK 13 TYPE]Honey": "Mel", + "[STOCK 13 LOGO]HNY": "MEL", + "[STOCK 14 NAME]Selfmade Bakeries": "Panificadoras Fabricação Própria", + "[STOCK 14 TYPE]Cookies": "Cookies", + "[STOCK 14 LOGO]CKI": "CKI", + "[STOCK 15 NAME]Figments Associated": "Invenções Associadas", + "[STOCK 15 TYPE]Recipes": "Receitas", + "[STOCK 15 LOGO]RCP": "RCT", + "[STOCK 16 NAME]Polyvalent Acquisitions": "Incorporações Polivalentes", + "[STOCK 16 TYPE]Subsidiaries": "Filiais", + "[STOCK 16 LOGO]SBD": "FIL", + "[STOCK 17 NAME]Great Minds": "Grandes Mentes", + "[STOCK 17 TYPE]Publicists": "Publicitários", + "[STOCK 17 LOGO]PBL": "PBL", + "from %1": "de %1", + "%1: currently worth $%2 per unit.": "%1: vale atualmente $%2 por unidade.", + "You currently own %1 (worth $%2).": "Atualmente você tem %1 (valendo $%2).", + "Your warehouses can store up to %1.": "Seus armazéns podem guardar até %1.", + "You may increase your storage space by upgrading your offices and by buying more %1. You also get %2 extra storage space per %3 level (currently: +%4).": "Você pode aumentar seu espaço de armazenamento melhorando seus escritórios e comprando mais %1. Você também ganha %2 espaço de armazenamento extra por nível de %3 (atualmente: +%4).", + "The average worth of this stock and how high it can peak depends on the building it is tied to, along with the level of your %1.": "O valor médio dessa ação e o quanto ela pode subir depende da construção a qual ela está ligada, e também do seu nível de %1.", + "%1 the hide button to toggle all other stocks.": "%1 o botão ocultar pra alternar entre todas as outras ações.", + "stock:": "ação:", + "for $%1 each": "por $%1 cada", + "last bought at
$%1 each": "comprado pela última vez por
$%1 cada", + "+%1% overhead": "+%1% de overhead", + "value:": "valor:", + "valued at %1": "avaliada em %1", + "you spend:": "você gasta:", + "you earn:": "você ganha:", + "You cannot buy and sell this stock in the same tick.": "Você não pode comprar e vender essa ação no mesmo tique.", + "This is your office.": "Esse é seu escritório.", + "It is fully upgraded. Its lavish interiors, spanning across innumerable floors, are host to many a decadent party, owing to your nigh-unfathomable wealth.": "Está completamente melhorado. Seu interior luxuoso, estendendo-se por inúmeros andares, hospeda incontáveis funcionários decadentes, devido à sua riqueza praticamente intangível.", + "Level %1 offices": "Escritórios nível %1", + "Credit garage": "Financeira de garagem", + "Tiny bank": "Minibanco", + "Loaning company": "Companhia de empréstimo", + "Finance headquarters": "Sede financeira", + "International exchange": "Câmbio internacional", + "Palace of Greed": "Palácio da Ganância", + "Upgrading will cost you %1.": "A melhoria vai custar %1.", + "Upgrading requires %1.": "A melhoria exige %1.", + "Upgrading will grant you:": "A melhoria vai te dar:", + "+1 loan slot": "+1 espaço de empréstimo", + "+1 opportunity slot": "+1 espaço de oportunidade", + "+%1 warehouse space for all goods": "+%1 espaço de armazém pra todos os produtos", + "+%1% base warehouse space for all goods": "+%1% de espaço de armazém base para todos os produtos", + "Brokers:": "Corretores:", + "A nice broker to trade more cookies.": "Um ótimo corretor para negociar mais cookies.", + "Hire": "Contratar", + "Buying goods normally incurs overhead costs of %1% extra. Each broker you hire reduces that cost by %2%.": "Comprar produtos geralmente implica custos de overhead de %1% extras. Cada corretor contratado reduz esse custo em %2%.", + "Current overhead costs thanks to your brokers: +%1%": "Custos de overhead atuais graças aos seus corretores: +%1%", + "Buying a broker costs %1 of CpS (that's $%2).": "Comprar um corretor custa %1 de CpS (isso é $%2).", + "Maximum number of brokers you can own: %1 (the highest amount of grandmas you've owned this run, divided by 10, plus your grandma level)": "Quantidade máxima de corretores que você pode ter: %1 (a maior quantidade de vovós que você teve nessa partida, dividido por 10, mais o nível de sua vovó)", + "Brokers are Wall Street-class grandmas versed in the ways of finance. Stockbroker grandmas work hard and play hard, and will fight telephone in hand to get your clients the best possible deals - with a sizeable profit margin for you, of course.": "Corretores são vovós nível Wall Street versadas no mundo das finanças. Vovós corretoras de valores trabalham duro e jogam duro, e lutarão com o telefone em mãos pra conseguir os melhores negócios possíveis pra seus clientes – com uma margem de lucro considerável pra você, é claro.", + "Hiring a new broker will cost you %1.": "Contratar um novo corretor custará %1.", + "Take out %1": "Retirar %1", + "Loan #%1": "Empréstimo #%1", + "a modest loan": "um empréstimo modesto", + "Buy that vintage car you've always wanted. Just pay us back.": "Compre aquele carro antigo que sempre quis. Mas nos pague de volta.", + "a pawnshop loan": "um empréstimo de casa de penhores", + "Bad credit? No problem. It's your money, and you need it now.": "Crédito ruim? Sem problemas. É seu dinheiro, e você precisa dele agora.", + "a retirement loan": "um empréstimo de aposentadoria", + "Finance your next house, boat, spouse, etc. You've earned it.": "Financie sua próxima casa, barco, cônjuge etc. Você merece.", + "By taking this loan, you will get %1 CpS for the next %2.": "Aceitando esse empréstimo, você ganha %1 CpS pelos próximos %2.", + "However, you will get %1 CpS for the next %2 after that.": "No entanto, você ganhará %1 CpS pelos próximos %2 depois disso.", + "You must also pay an immediate downpayment of %1 (%2% of your current bank).": "Você também precisa pagar uma entrada imediata de %1 (%2% do seu banco atual).", + "Loan over": "Empréstimo encerrado", + "Your loan has expired, and you must now repay the interest.": "Seu empréstimo expirou e agora você deve pagar os juros.", + "Line style": "Estilo da linha", + "Color mode": "Modo de cor", + "Toggle speed": "Alternar velocidade", + "Click to refill your opportunity timer (and give a quick burst to your economy) for %1.": "Clique para recarregar seu temporizador de oportunidade (e dê uma rápida acelerada em sua economia) por %1.", + "Profits: %1. All prices are in $econds of your highest raw cookies per second.": "Lucros: %1. Todos os preços estão em $egundos de seu recorde mais alto de cookies por segundo.", + "The stock market is more chaotic.": "O mercado de ações fica mais caótico.", + "[Upgrade name 0]Reinforced index finger": "Dedo indicador reforçado", + "[Upgrade name 1]Carpal tunnel prevention cream": "Creme preventivo do túnel do carpo", + "[Upgrade name 2]Ambidextrous": "Ambidestro", + "[Upgrade name 3]Thousand fingers": "Mil dedos", + "[Upgrade name 4]Million fingers": "Milhão de dedos", + "[Upgrade name 5]Billion fingers": "Bilhão de dedos", + "[Upgrade name 6]Trillion fingers": "Trilhão de dedos", + "[Upgrade name 7]Forwards from grandma": "Encaminhado pela vovó", + "[Upgrade name 8]Steel-plated rolling pins": "Rolo de aço", + "[Upgrade name 9]Lubricated dentures": "Dentaduras lubrificadas", + "[Upgrade name 10]Cheap hoes": "Enxadas baratas", + "[Upgrade name 11]Fertilizer": "Fertilizante", + "[Upgrade name 12]Cookie trees": "Árvores de cookies", + "[Upgrade name 13]Sturdier conveyor belts": "Correias transportadoras resistentes", + "[Upgrade name 14]Child labor": "Trabalho infantil", + "[Upgrade name 15]Sweatshop": "Firma exploradora", + "[Upgrade name 16]Sugar gas": "Combustível de açúcar", + "[Upgrade name 17]Megadrill": "Megabroca", + "[Upgrade name 18]Ultradrill": "Ultrabroca", + "[Upgrade name 19]Vanilla nebulae": "Nébula de baunilha", + "[Upgrade name 20]Wormholes": "Buracos de minhoca", + "[Upgrade name 21]Frequent flyer": "Viajante frequente", + "[Upgrade name 22]Antimony": "Antimônio", + "[Upgrade name 23]Essence of dough": "Essência da massa", + "[Upgrade name 24]True chocolate": "Chocolate verdadeiro", + "[Upgrade name 25]Ancient tablet": "Tábua ancestral", + "[Upgrade name 26]Insane oatling workers": "Trabalhadores loucos de aveia", + "[Upgrade name 27]Soul bond": "Vínculo de alma", + "[Upgrade name 28]Flux capacitors": "Capacitadores de fluxo", + "[Upgrade name 29]Time paradox resolver": "Resolvedor de paradoxo de tempo", + "[Upgrade name 30]Quantum conundrum": "Enigma quântico", + "[Upgrade name 31]Kitten helpers": "Gatinhos assistentes", + "[Upgrade name 32]Kitten workers": "Gatinhos trabalhadores", + "[Upgrade name 33]Plain cookies": "Cookies simples", + "[Upgrade name 34]Sugar cookies": "Cookies de açúcar", + "[Upgrade name 35]Oatmeal raisin cookies": "Cookies de aveia e passas", + "[Upgrade name 36]Peanut butter cookies": "Cookies de manteiga de amendoim", + "[Upgrade name 37]Coconut cookies": "Cookies de coco", + "[Upgrade name 38]White chocolate cookies": "Cookies de chocolate branco", + "[Upgrade name 39]Macadamia nut cookies": "Cookies de macadâmia", + "[Upgrade name 40]Double-chip cookies": "Cookies com o dobro de gotas", + "[Upgrade name 41]White chocolate macadamia nut cookies": "Cookies de chocolate branco e macadâmia", + "[Upgrade name 42]All-chocolate cookies": "Cookies de chocolate com massa de chocolate", + "[Upgrade name 43]Quadrillion fingers": "Quadrilhão de dedos", + "[Upgrade name 44]Prune juice": "Suco de ameixa", + "[Upgrade name 45]Genetically-modified cookies": "Cookies geneticamente modificados", + "[Upgrade name 46]Radium reactors": "Reatores de rádio", + "[Upgrade name 47]Ultimadrill": "Broca definitiva", + "[Upgrade name 48]Warp drive": "Motor de dobra", + "[Upgrade name 49]Ambrosia": "Ambrosia", + "[Upgrade name 50]Sanity dance": "Dança da sanidade", + "[Upgrade name 51]Causality enforcer": "Agente de causalidade", + "[Upgrade name 52]Lucky day": "Dia de sorte", + "[Upgrade name 53]Serendipity": "Acaso", + "[Upgrade name 54]Kitten engineers": "Gatinhos engenheiros", + "[Upgrade name 55]Dark chocolate-coated cookies": "Cookies com cobertura de chocolate meio-amargo", + "[Upgrade name 56]White chocolate-coated cookies": "Cookies com cobertura de chocolate branco", + "[Upgrade name 57]Farmer grandmas": "Vovós fazendeiras", + "[Upgrade name 58]Miner grandmas": "Vovós mineradoras", + "[Upgrade name 59]Worker grandmas": "Vovós operárias", + "[Upgrade name 60]Cosmic grandmas": "Vovós cósmicas", + "[Upgrade name 61]Transmuted grandmas": "Vovós transmutadas", + "[Upgrade name 62]Altered grandmas": "Vovós alteradas", + "[Upgrade name 63]Grandmas' grandmas": "Vovós de vovós", + "[Upgrade name 64]Bingo center/Research facility": "Centro de bingo/Instalação de pesquisa", + "[Upgrade name 65]Specialized chocolate chips": "Gotas de chocolate especializadas", + "[Upgrade name 66]Designer cocoa beans": "Cacau de grife", + "[Upgrade name 67]Ritual rolling pins": "Rolos ritualísticos", + "[Upgrade name 68]Underworld ovens": "Fornos do submundo", + "[Upgrade name 69]One mind": "Mente única", + "[Upgrade name 70]Exotic nuts": "Nozes exóticas", + "[Upgrade name 71]Communal brainsweep": "Varredura cerebral comunal", + "[Upgrade name 72]Arcane sugar": "Açúcar arcano", + "[Upgrade name 73]Elder Pact": "Pacto ancestral", + "[Upgrade name 74]Elder Pledge": "Juramento ancestral", + "[Upgrade name 75]Plastic mouse": "Mouse de plástico", + "[Upgrade name 76]Iron mouse": "Mouse de ferro", + "[Upgrade name 77]Titanium mouse": "Mouse de titânio", + "[Upgrade name 78]Adamantium mouse": "Mouse de adamantium", + "[Upgrade name 79]Ultrascience": "Ultraciência", + "[Upgrade name 80]Eclipse cookies": "Cookies eclipse", + "[Upgrade name 81]Zebra cookies": "Cookies zebra", + "[Upgrade name 82]Quintillion fingers": "Quintilhão de dedos", + "[Upgrade name 83]Gold hoard": "Pilha de ouro", + "[Upgrade name 84]Elder Covenant": "Acordo ancestral", + "[Upgrade name 85]Revoke Elder Covenant": "Revogar acordo ancestral", + "[Upgrade name 86]Get lucky": "Que sorte", + "[Upgrade name 87]Sacrificial rolling pins": "Rolos do sacrifício", + "[Upgrade name 88]Snickerdoodles": "Snickerdoodles", + "[Upgrade name 89]Stroopwafels": "Stroopwafels", + "[Upgrade name 90]Macaroons": "Macaroons", + "[Upgrade name 91]Neuromancy": "Neuromancia", + "[Upgrade name 92]Empire biscuits": "Empire biscuits", + "[Upgrade name 93]British tea biscuits": "Biscoitos sortidos", + "[Upgrade name 94]Chocolate british tea biscuits": "Biscoitos sortidos de chocolate", + "[Upgrade name 95]Round british tea biscuits": "Biscoitos sortidos redondos", + "[Upgrade name 96]Round chocolate british tea biscuits": "Biscoitos sortidos redondos de chocolate", + "[Upgrade name 97]Round british tea biscuits with heart motif": "Biscoitos sortidos redondos de coração", + "[Upgrade name 98]Round chocolate british tea biscuits with heart motif": "Biscoitos sortidos redondos de coração de chocolate", + "[Upgrade name 99]Sugar bosons": "Bósons de açúcar", + "[Upgrade name 100]String theory": "Teoria das cordas", + "[Upgrade name 101]Large macaron collider": "Grande colisor de macaron", + "[Upgrade name 102]Big bang bake": "Confeito de Big Bang", + "[Upgrade name 103]Antigrandmas": "Antivovós", + "[Upgrade name 104]Madeleines": "Madeleines", + "[Upgrade name 105]Palmiers": "Palmiers", + "[Upgrade name 106]Palets": "Palets", + "[Upgrade name 107]Sablés": "Sablés", + "[Upgrade name 108]Kitten overseers": "Gatinhos supervisores", + "[Upgrade name 109]Sextillion fingers": "Sextilhão de dedos", + "[Upgrade name 110]Double-thick glasses": "Óculos com espessura dobrada", + "[Upgrade name 111]Gingerbread scarecrows": "Espantalhos de pão de mel", + "[Upgrade name 112]Recombobulators": "Recombobuladores", + "[Upgrade name 113]H-bomb mining": "Mineração de bomba de hidrogênio", + "[Upgrade name 114]Chocolate monoliths": "Monolitos de chocolate", + "[Upgrade name 115]Aqua crustulae": "Aqua crustulae", + "[Upgrade name 116]Brane transplant": "Transplante de brana", + "[Upgrade name 117]Yestermorrow comparators": "Comparadores de ontenhã", + "[Upgrade name 118]Reverse cyclotrons": "Cíclotrons reversos", + "[Upgrade name 119]Unobtainium mouse": "Mouse de unobtainium", + "[Upgrade name 120]Caramoas": "Caramoas", + "[Upgrade name 121]Sagalongs": "Sagalongs", + "[Upgrade name 122]Shortfoils": "Shortfoils", + "[Upgrade name 123]Win mints": "Win mints", + "[Upgrade name 124]Perfect idling": "Ociosidade perfeita", + "[Upgrade name 125]Fig gluttons": "Comilões de figo", + "[Upgrade name 126]Loreols": "Loreols", + "[Upgrade name 127]Jaffa cakes": "Bolinhos Jaffa", + "[Upgrade name 128]Grease's cups": "Grease's Cups", + "[Upgrade name 129]Heavenly chip secret": "Segredo das gotas celestiais", + "[Upgrade name 130]Heavenly cookie stand": "Barraquinha de cookies celestiais", + "[Upgrade name 131]Heavenly bakery": "Confeitaria celestial", + "[Upgrade name 132]Heavenly confectionery": "Pâtisserie celestial", + "[Upgrade name 133]Heavenly key": "Chave celestial", + "[Upgrade name 134]Skull cookies": "Cookies de caveira", + "[Upgrade name 135]Ghost cookies": "Cookies de fantasma", + "[Upgrade name 136]Bat cookies": "Cookies de morcego", + "[Upgrade name 137]Slime cookies": "Cookies de gosma", + "[Upgrade name 138]Pumpkin cookies": "Cookies de abóbora", + "[Upgrade name 139]Eyeball cookies": "Cookies de olho", + "[Upgrade name 140]Spider cookies": "Cookies de aranha", + "[Upgrade name 141]Persistent memory": "Memória persistente", + "[Upgrade name 142]Wrinkler doormat": "Capacho de enrugador", + "[Upgrade name 143]Christmas tree biscuits": "Biscoitos de árvore de natal", + "[Upgrade name 144]Snowflake biscuits": "Biscoitos de floco de neve", + "[Upgrade name 145]Snowman biscuits": "Biscoitos de boneco de neve", + "[Upgrade name 146]Holly biscuits": "Biscoitos de azevinho", + "[Upgrade name 147]Candy cane biscuits": "Biscoitos de bengalinha doce", + "[Upgrade name 148]Bell biscuits": "Biscoitos de sino", + "[Upgrade name 149]Present biscuits": "Biscoitos de presente", + "[Upgrade name 150]Gingerbread men": "Homenzinhos de pão de mel", + "[Upgrade name 151]Gingerbread trees": "Árvores de pão de mel", + "[Upgrade name 152]A festive hat": "Um chapéu festivo", + "[Upgrade name 153]Increased merriness": "Alegria aumentada", + "[Upgrade name 154]Improved jolliness": "Contentamento melhorado", + "[Upgrade name 155]A lump of coal": "Um pedaço de carvão", + "[Upgrade name 156]An itchy sweater": "Um suéter piniquento", + "[Upgrade name 157]Reindeer baking grounds": "Estação de assar das renas", + "[Upgrade name 158]Weighted sleighs": "Trenós com pesos", + "[Upgrade name 159]Ho ho ho-flavored frosting": "Cobertura sabor ho-ho-ho", + "[Upgrade name 160]Season savings": "Economias da estação", + "[Upgrade name 161]Toy workshop": "Oficina de brinquedos", + "[Upgrade name 162]Naughty list": "Lista dos malcriados", + "[Upgrade name 163]Santa's bottomless bag": "Saco sem fundo do Papai Noel", + "[Upgrade name 164]Santa's helpers": "Ajudantes do Papai Noel", + "[Upgrade name 165]Santa's legacy": "Legado do Papai Noel", + "[Upgrade name 166]Santa's milk and cookies": "Leite e cookies do Papai Noel", + "[Upgrade name 167]Reindeer season": "Estação das renas", + "[Upgrade name 168]Santa's dominion": "Domínio do Papai Noel", + "[Upgrade name 169]Pure heart biscuits": "Biscoitos de coração puro", + "[Upgrade name 170]Ardent heart biscuits": "Biscoitos de coração ardente", + "[Upgrade name 171]Sour heart biscuits": "Biscoitos de coração azedo", + "[Upgrade name 172]Weeping heart biscuits": "Biscoitos de coração choroso", + "[Upgrade name 173]Golden heart biscuits": "Biscoitos de coração dourado", + "[Upgrade name 174]Eternal heart biscuits": "Biscoitos de coração eterno", + "[Upgrade name 175]Gem polish": "Polidor de joias", + "[Upgrade name 176]9th color": "9ª cor", + "[Upgrade name 177]Chocolate light": "Luz de chocolate", + "[Upgrade name 178]Grainbow": "Grão-co-íris", + "[Upgrade name 179]Pure cosmic light": "Pura luz cósmica", + "[Upgrade name 180]Rainbow grandmas": "Vovós do arco-íris", + "[Upgrade name 181]Season switcher": "Trocador de Estação", + "[Upgrade name 182]Festive biscuit": "Biscoito festivo", + "[Upgrade name 183]Ghostly biscuit": "Biscoito fantasmagórico", + "[Upgrade name 184]Lovesick biscuit": "Biscoito apaixonado", + "[Upgrade name 185]Fool's biscuit": "Biscoito dos tolos", + "[Upgrade name 186]Eternal seasons": "Estações eternas", + "[Upgrade name 187]Kitten managers": "Gatinhos gerentes", + "[Upgrade name 188]Septillion fingers": "Septilhão de dedos", + "[Upgrade name 189]Octillion fingers": "Octilhão de dedos", + "[Upgrade name 190]Eludium mouse": "Mouse de eludium", + "[Upgrade name 191]Wishalloy mouse": "Mouse de liga inalcançável", + "[Upgrade name 192]Aging agents": "Agentes envelhecidas", + "[Upgrade name 193]Pulsar sprinklers": "Sprinklers de pulsares", + "[Upgrade name 194]Deep-bake process": "Processo de assamento profundo", + "[Upgrade name 195]Coreforge": "Forja do núcleo", + "[Upgrade name 196]Generation ship": "Nave de geração", + "[Upgrade name 197]Origin crucible": "Crisol original", + "[Upgrade name 198]Deity-sized portals": "Portais do tamanho de divindades", + "[Upgrade name 199]Far future enactment": "Decreto do futuro distante", + "[Upgrade name 200]Nanocosmics": "Nanocósmicos", + "[Upgrade name 201]Glow-in-the-dark": "Brilha-no-escuro", + "[Upgrade name 202]Rose macarons": "Macarons de rosas", + "[Upgrade name 203]Lemon macarons": "Macarons de limão", + "[Upgrade name 204]Chocolate macarons": "Macarons de chocolate", + "[Upgrade name 205]Pistachio macarons": "Macarons de pistache", + "[Upgrade name 206]Hazelnut macarons": "Macarons de avelã", + "[Upgrade name 207]Violet macarons": "Macarons violeta", + "[Upgrade name 208]Magic shenanigans": "Bobagens mágicas", + "[Upgrade name 209]Bunny biscuit": "Biscoito de coelhinho", + "[Upgrade name 210]Chicken egg": "Ovo de galinha", + "[Upgrade name 211]Duck egg": "Ovo de pato", + "[Upgrade name 212]Turkey egg": "Ovo de peru", + "[Upgrade name 213]Quail egg": "Ovo de codorna", + "[Upgrade name 214]Robin egg": "Ovo de pintarroxo", + "[Upgrade name 215]Ostrich egg": "Ovo de avestruz", + "[Upgrade name 216]Cassowary egg": "Ovo de casuar", + "[Upgrade name 217]Salmon roe": "Ovas de salmão", + "[Upgrade name 218]Frogspawn": "Ovas de sapo", + "[Upgrade name 219]Shark egg": "Ovo de tubarão", + "[Upgrade name 220]Turtle egg": "Ovo de tartaruga", + "[Upgrade name 221]Ant larva": "Larva de formiga", + "[Upgrade name 222]Golden goose egg": "Ovo de ganso dourado", + "[Upgrade name 223]Faberge egg": "Ovo Fabergé", + "[Upgrade name 224]Wrinklerspawn": "Cria de enrugador", + "[Upgrade name 225]Cookie egg": "Ovo de cookie", + "[Upgrade name 226]Omelette": "Omelete", + "[Upgrade name 227]Chocolate egg": "Ovo de chocolate", + "[Upgrade name 228]Century egg": "Ovo centenário", + "[Upgrade name 229]\"egg\"": "\"ovo\"", + "[Upgrade name 230]Caramel macarons": "Macarons de caramelo", + "[Upgrade name 231]Licorice macarons": "Macarons de alcaçuz", + "[Upgrade name 232]Taller tellers": "Caixas altos", + "[Upgrade name 233]Scissor-resistant credit cards": "Cartões de crédito resistentes a tesouras", + "[Upgrade name 234]Acid-proof vaults": "Cofres à prova de ácido", + "[Upgrade name 235]Chocolate coins": "Moedas de chocolate", + "[Upgrade name 236]Exponential interest rates": "Taxas de juros exponenciais", + "[Upgrade name 237]Financial zen": "Zen financeiro", + "[Upgrade name 238]Golden idols": "Ídolos de ouro", + "[Upgrade name 239]Sacrifices": "Sacrifícios", + "[Upgrade name 240]Delicious blessing": "Bênção deliciosa", + "[Upgrade name 241]Sun festival": "Festival do sol", + "[Upgrade name 242]Enlarged pantheon": "Panteão ampliado", + "[Upgrade name 243]Great Baker in the sky": "Grande Confeiteiro do céu", + "[Upgrade name 244]Pointier hats": "Chapéus mais pontudos", + "[Upgrade name 245]Beardlier beards": "Barbas mais barbudas", + "[Upgrade name 246]Ancient grimoires": "Grimórios ancestrais", + "[Upgrade name 247]Kitchen curses": "Maldições de cozinha", + "[Upgrade name 248]School of sorcery": "Escola de feitiçaria", + "[Upgrade name 249]Dark formulas": "Fórmulas sombrias", + "[Upgrade name 250]Banker grandmas": "Vovós banqueiras", + "[Upgrade name 251]Priestess grandmas": "Vovós sacerdotisas", + "[Upgrade name 252]Witch grandmas": "Vovós bruxas", + "[Upgrade name 253]Tin of british tea biscuits": "Lata de biscoitos sortidos", + "[Upgrade name 254]Box of macarons": "Caixa de macarons", + "[Upgrade name 255]Box of brand biscuits": "Caixa de biscoitos de marca", + "[Upgrade name 256]Pure black chocolate cookies": "Cookies de puro chocolate meio-amargo", + "[Upgrade name 257]Pure white chocolate cookies": "Cookies de puro chocolate branco", + "[Upgrade name 258]Ladyfingers": "Biscoito champagne", + "[Upgrade name 259]Tuiles": "Tuiles", + "[Upgrade name 260]Chocolate-stuffed biscuits": "Biscoitos recheados de chocolate", + "[Upgrade name 261]Checker cookies": "Cookies xadrez", + "[Upgrade name 262]Butter cookies": "Cookies de manteiga", + "[Upgrade name 263]Cream cookies": "Cookies de creme", + "[Upgrade name 264]Permanent upgrade slot I": "Espaço de melhoria permanente I", + "[Upgrade name 265]Permanent upgrade slot II": "Espaço de melhoria permanente II", + "[Upgrade name 266]Permanent upgrade slot III": "Espaço de melhoria permanente III", + "[Upgrade name 267]Permanent upgrade slot IV": "Espaço de melhoria permanente IV", + "[Upgrade name 268]Permanent upgrade slot V": "Espaço de melhoria permanente V", + "[Upgrade name 269]Starspawn": "Crias estelares", + "[Upgrade name 270]Starsnow": "Neve estelar", + "[Upgrade name 271]Starterror": "Terror estelar", + "[Upgrade name 272]Starlove": "Amor estelar", + "[Upgrade name 273]Startrade": "Comércio estelar", + "[Upgrade name 274]Angels": "Anjos", + "[Upgrade name 275]Archangels": "Arcanjos", + "[Upgrade name 276]Virtues": "Virtudes", + "[Upgrade name 277]Dominions": "Domínios", + "[Upgrade name 278]Cherubim": "Querubins", + "[Upgrade name 279]Seraphim": "Serafins", + "[Upgrade name 280]God": "Deus", + "[Upgrade name 281]Twin Gates of Transcendence": "Portões duplos da transcendência", + "[Upgrade name 282]Heavenly luck": "Sorte celestial", + "[Upgrade name 283]Lasting fortune": "Sorte duradoura", + "[Upgrade name 284]Decisive fate": "Destino decisivo", + "[Upgrade name 285]Divine discount": "Desconto divino", + "[Upgrade name 286]Divine sales": "Vendas divinas", + "[Upgrade name 287]Divine bakeries": "Confeitarias divinas", + "[Upgrade name 288]Starter kit": "Kit de iniciante", + "[Upgrade name 289]Starter kitchen": "Cozinha de iniciante", + "[Upgrade name 290]Halo gloves": "Luvas de auréola", + "[Upgrade name 291]Kitten angels": "Gatinhos anjos", + "[Upgrade name 292]Unholy bait": "Isca profana", + "[Upgrade name 293]Sacrilegious corruption": "Corrupção sacrílega", + "[Upgrade name 294]Xtreme walkers": "Andadores extremos", + "[Upgrade name 295]Fudge fungus": "Fungo de fudge", + "[Upgrade name 296]Planetsplitters": "Partidores de planetas", + "[Upgrade name 297]Cyborg workforce": "Força de trabalho ciborgue", + "[Upgrade name 298]Way of the wallet": "O caminho da carteira", + "[Upgrade name 299]Creation myth": "Mito da criação", + "[Upgrade name 300]Cookiemancy": "Cookiemancia", + "[Upgrade name 301]Dyson sphere": "Esfera de Dyson", + "[Upgrade name 302]Theory of atomic fluidity": "Teoria da fluidez atômica", + "[Upgrade name 303]End of times back-up plan": "Plano de contingência do fim dos tempos", + "[Upgrade name 304]Great loop hypothesis": "Hipótese do grande loop", + "[Upgrade name 305]The Pulse": "O Pulso", + "[Upgrade name 306]Lux sanctorum": "Lux sanctorum", + "[Upgrade name 307]The Unbridling": "O Desenfreado", + "[Upgrade name 308]Wheat triffids": "Trifides de trigo", + "[Upgrade name 309]Canola oil wells": "Poços de óleo de canola", + "[Upgrade name 310]78-hour days": "Dias de 78 horas", + "[Upgrade name 311]The stuff rationale": "A lógica das coisas", + "[Upgrade name 312]Theocracy": "Teocracia", + "[Upgrade name 313]Rabbit trick": "Truque do coelho", + "[Upgrade name 314]The final frontier": "A fronteira final", + "[Upgrade name 315]Beige goo": "Gosma bege", + "[Upgrade name 316]Maddening chants": "Cantos enlouquecedores", + "[Upgrade name 317]Cookietopian moments of maybe": "Momentos cookietopicos do talvez", + "[Upgrade name 318]Some other super-tiny fundamental particle? Probably?": "Alguma outra partícula fundamental superminúscula? Provavelmente?", + "[Upgrade name 319]Reverse shadows": "Sombras reversas", + "[Upgrade name 320]Kitten accountants": "Gatinhos contadores", + "[Upgrade name 321]Kitten specialists": "Gatinhos especialistas", + "[Upgrade name 322]Kitten experts": "Gatinhos peritos", + "[Upgrade name 323]How to bake your dragon": "Como assar seu dragão", + "[Upgrade name 324]A crumbly egg": "Um ovo aos pedaços", + "[Upgrade name 325]Chimera": "Quimera", + "[Upgrade name 326]Tin of butter cookies": "Lata de biscoitos amanteigados", + "[Upgrade name 327]Golden switch": "Interruptor dourado", + "[Upgrade name 328]Classic dairy selection": "Seleção clássica de laticínios", + "[Upgrade name 329]Fanciful dairy selection": "Seleção extravagante de laticínios", + "[Upgrade name 330]Dragon cookie": "Cookie dracônico", + "[Upgrade name 331]Golden switch [off]": "Interruptor dourado [deslig.]", + "[Upgrade name 332]Golden switch [on]": "Interruptor dourado [lig.]", + "[Upgrade name 333]Milk selector": "Seletor de leite", + "[Upgrade name 334]Milk chocolate butter biscuit": "Biscoito amanteigado de chocolate ao leite", + "[Upgrade name 335]Dark chocolate butter biscuit": "Biscoito amanteigado de chocolate meio-amargo", + "[Upgrade name 336]White chocolate butter biscuit": "Biscoito amanteigado de chocolate branco", + "[Upgrade name 337]Ruby chocolate butter biscuit": "Biscoito amanteigado de chocolate rubi", + "[Upgrade name 338]Gingersnaps": "Gingersnaps", + "[Upgrade name 339]Cinnamon cookies": "Cookies de canela", + "[Upgrade name 340]Vanity cookies": "Cookies decorados", + "[Upgrade name 341]Cigars": "Rolinho de biscoito", + "[Upgrade name 342]Pinwheel cookies": "Cookies de espiral", + "[Upgrade name 343]Fudge squares": "Quadradinhos de fudge", + "[Upgrade name 344]Digits": "Dedinhos", + "[Upgrade name 345]Butter horseshoes": "Biscoito amanteigado de ferradura", + "[Upgrade name 346]Butter pucks": "Biscoito amanteigado de disco", + "[Upgrade name 347]Butter knots": "Biscoito amanteigado de nó", + "[Upgrade name 348]Butter slabs": "Biscoito amanteigado retangular", + "[Upgrade name 349]Butter swirls": "Biscoito amanteigado de redemoinho", + "[Upgrade name 350]Shortbread biscuits": "Biscoito escocês", + "[Upgrade name 351]Millionaires' shortbreads": "Biscoito escocês milionário", + "[Upgrade name 352]Caramel cookies": "Cookies de caramelo", + "[Upgrade name 353]Belphegor": "Belfegor", + "[Upgrade name 354]Mammon": "Mamon", + "[Upgrade name 355]Abaddon": "Abadom", + "[Upgrade name 356]Satan": "Satã", + "[Upgrade name 357]Asmodeus": "Asmodeus", + "[Upgrade name 358]Beelzebub": "Belzebu", + "[Upgrade name 359]Lucifer": "Lúcifer", + "[Upgrade name 360]Golden cookie alert sound": "Som de notificação de cookie dourado", + "[Upgrade name 361]Golden cookie sound selector": "Seletor de som de cookie dourado", + "[Upgrade name 362]Basic wallpaper assortment": "Seleção de papéis de parede básicos", + "[Upgrade name 363]Legacy": "Legado", + "[Upgrade name 364]Elder spice": "Tempero ancestral", + "[Upgrade name 365]Residual luck": "Sorte residual", + "[Upgrade name 366]Fantasteel mouse": "Mouse de aço fantasia", + "[Upgrade name 367]Nevercrack mouse": "Mouse inquebrável", + "[Upgrade name 368]Five-finger discount": "Desconto de furto", + "[Upgrade name 369]Future almanacs": "Almanaques do futuro", + "[Upgrade name 370]Rain prayer": "Oração para chuva", + "[Upgrade name 371]Seismic magic": "Magia sísmica", + "[Upgrade name 372]Asteroid mining": "Mineração de asteroide", + "[Upgrade name 373]Quantum electronics": "Eletrônica quântica", + "[Upgrade name 374]Temporal overclocking": "Overclocking temporal", + "[Upgrade name 375]Contracts from beyond": "Contratos do além", + "[Upgrade name 376]Printing presses": "Prensas tipográficas", + "[Upgrade name 377]Paganism": "Paganismo", + "[Upgrade name 378]God particle": "Partícula de Deus", + "[Upgrade name 379]Arcane knowledge": "Conhecimento arcano", + "[Upgrade name 380]Magical botany": "Botânica mágica", + "[Upgrade name 381]Fossil fuels": "Combustíveis fósseis", + "[Upgrade name 382]Shipyards": "Estaleiros", + "[Upgrade name 383]Primordial ores": "Minérios primordiais", + "[Upgrade name 384]Gold fund": "Fundo de ouro", + "[Upgrade name 385]Infernal crops": "Plantações infernais", + "[Upgrade name 386]Abysmal glimmer": "Vislumbre abismal", + "[Upgrade name 387]Relativistic parsec-skipping": "Salto de parsec relativístico", + "[Upgrade name 388]Primeval glow": "Brilho primitivo", + "[Upgrade name 389]Extra physics funding": "Financiamento extra de física", + "[Upgrade name 390]Chemical proficiency": "Proficiência química", + "[Upgrade name 391]Light magic": "Magia de luz", + "[Upgrade name 392]Mystical energies": "Energias místicas", + "[Upgrade name 393]Synergies Vol. I": "Sinergias vol. I", + "[Upgrade name 394]Synergies Vol. II": "Sinergias vol. II", + "[Upgrade name 395]Heavenly cookies": "Cookies celestiais", + "[Upgrade name 396]Wrinkly cookies": "Cookies enrugados", + "[Upgrade name 397]Distilled essence of redoubled luck": "Essência destilada de sorte redobrada", + "[Upgrade name 398]Occult obstruction": "Obstrução oculta", + "[Upgrade name 399]Glucose-charged air": "Ar carregado de glicose", + "[Upgrade name 400]Lavender chocolate butter biscuit": "Biscoito amanteigado de chocolate lavanda", + "[Upgrade name 401]Lombardia cookies": "Cookies Lombardia", + "[Upgrade name 402]Bastenaken cookies": "Cookies Bastenaken", + "[Upgrade name 403]Pecan sandies": "Biscoitos de pecan", + "[Upgrade name 404]Moravian spice cookies": "Cookies morávios", + "[Upgrade name 405]Anzac biscuits": "Biscoito Anzac", + "[Upgrade name 406]Buttercakes": "Bolo de manteiga", + "[Upgrade name 407]Ice cream sandwiches": "Sanduíche de sorvete", + "[Upgrade name 408]Stevia Caelestis": "Stevia Caelestis", + "[Upgrade name 409]Diabetica Daemonicus": "Diabetica Daemonicus", + "[Upgrade name 410]Sucralosia Inutilis": "Sucralosia Inutilis", + "[Upgrade name 411]Lucky digit": "Dedo da sorte", + "[Upgrade name 412]Lucky number": "Número da sorte", + "[Upgrade name 413]Lucky payout": "Pagamento da sorte", + "[Upgrade name 414]Background selector": "Seletor de plano de fundo", + "[Upgrade name 415]Lucky grandmas": "Vovós de sorte", + "[Upgrade name 416]Your lucky cookie": "Seu cookie de sorte", + "[Upgrade name 417]\"All Bets Are Off\" magic coin": "Moeda mágica \"Sem Mais Apostas\"", + "[Upgrade name 418]Winning lottery ticket": "Bilhete premiado da loteria", + "[Upgrade name 419]Four-leaf clover field": "Campo de trevos de quatro folhas", + "[Upgrade name 420]A recipe book about books": "Um livro de receitas sobre livros", + "[Upgrade name 421]Leprechaun village": "Vilarejo de duendes", + "[Upgrade name 422]Improbability drive": "Motor da improbabilidade", + "[Upgrade name 423]Antisuperstistronics": "Antisuperstistrônicos", + "[Upgrade name 424]Gemmed talismans": "Talismãs com joias", + "[Upgrade name 425]Kitten consultants": "Gatinhos consultores", + "[Upgrade name 426]Birthday cookie": "Cookie de aniversário", + "[Upgrade name 427]Armythril mouse": "Mouse de Armythril", + "[Upgrade name 428]Reverse dementia": "Demência reversa", + "[Upgrade name 429]Humane pesticides": "Pesticidas humanizados", + "[Upgrade name 430]Mole people": "Povo-toupeira", + "[Upgrade name 431]Machine learning": "Aprendizado de máquina", + "[Upgrade name 432]Edible money": "Dinheiro comestível", + "[Upgrade name 433]Sick rap prayers": "Orações em rap irado", + "[Upgrade name 434]Deluxe tailored wands": "Varinhas personalizadas de luxo", + "[Upgrade name 435]Autopilot": "Piloto automático", + "[Upgrade name 436]The advent of chemistry": "O advento da química", + "[Upgrade name 437]The real world": "O mundo real", + "[Upgrade name 438]Second seconds": "Segundos segundos", + "[Upgrade name 439]Quantum comb": "Pente quântico", + "[Upgrade name 440]Crystal mirrors": "Espelhos de cristal", + "[Upgrade name 441]Bunnypedes": "Coelhopeias", + "[Upgrade name 442]Kitten assistants to the regional manager": "Gatinhos assistentes do gerente regional", + "[Upgrade name 443]Charm quarks": "Quarks encantados", + "[Upgrade name 444]Pink biscuits": "Biscoitos cor-de-rosa", + "[Upgrade name 445]Whole-grain cookies": "Cookies integrais", + "[Upgrade name 446]Candy cookies": "Cookies de doce", + "[Upgrade name 447]Big chip cookies": "Cookies com gotas grandes", + "[Upgrade name 448]One chip cookies": "Cookies com uma gota só", + "[Upgrade name 449]Sugar baking": "Assando com açúcar", + "[Upgrade name 450]Sugar craving": "Desejo de açúcar", + "[Upgrade name 451]Sugar aging process": "Processo de amadurecimento do açúcar", + "[Upgrade name 452]Sugar frenzy": "Frenesi de açúcar", + "[Upgrade name 453]Sprinkles cookies": "Cookies com granulados", + "[Upgrade name 454]Peanut butter blossoms": "Flores de manteiga de amendoim", + "[Upgrade name 455]No-bake cookies": "Cookies sem assar", + "[Upgrade name 456]Florentines": "Florentines", + "[Upgrade name 457]Chocolate crinkles": "Biscoito rachado de chocolate", + "[Upgrade name 458]Maple cookies": "Cookies de xarope de bordo", + "[Upgrade name 459]Turbo-charged soil": "Solo turboalimentado", + "[Upgrade name 460]Technobsidian mouse": "Mouse de tecnobsidiana", + "[Upgrade name 461]Plasmarble mouse": "Mouse de plasmarmore", + "[Upgrade name 462]Kitten marketeers": "Gatinhos marqueteiros", + "[Upgrade name 463]Festivity loops": "Rosquinhas festivas", + "[Upgrade name 464]Persian rice cookies": "Cookies de arroz persa", + "[Upgrade name 465]Norwegian cookies": "Cookies noruegueses", + "[Upgrade name 466]Crispy rice cookies": "Cookies de crispies de arroz", + "[Upgrade name 467]Ube cookies": "Cookies de ube", + "[Upgrade name 468]Butterscotch cookies": "Cookies butterscotch", + "[Upgrade name 469]Speculaas": "Speculaas", + "[Upgrade name 470]Elderwort biscuits": "Biscoitos de malte ancestral", + "[Upgrade name 471]Bakeberry cookies": "Cookies de baga de assar", + "[Upgrade name 472]Duketater cookies": "Cookies de batata-duque", + "[Upgrade name 473]Green yeast digestives": "Digestivos de fermento verde", + "[Upgrade name 474]Fern tea": "Chá de samambaia", + "[Upgrade name 475]Ichor syrup": "Xarope de icor", + "[Upgrade name 476]Wheat slims": "Biscoito água e sal", + "[Upgrade name 477]Synthetic chocolate green honey butter biscuit": "Biscoito amanteigado de mel verde com chocolate sintético", + "[Upgrade name 478]Royal raspberry chocolate butter biscuit": "Biscoito amanteigado de chocolate de framboesa real", + "[Upgrade name 479]Ultra-concentrated high-energy chocolate butter biscuit": "Biscoito amanteigado de chocolate com alto teor energético ultraconcentrado", + "[Upgrade name 480]Timeproof hair dyes": "Tonalizante de cabelo à prova do tempo", + "[Upgrade name 481]Barnstars": "Estrelas do celeiro", + "[Upgrade name 482]Mine canaries": "Canários das minas", + "[Upgrade name 483]Brownie point system": "Sistema de pontos de brownies", + "[Upgrade name 484]Grand supercycles": "Grandes superciclos", + "[Upgrade name 485]Psalm-reading": "Leitura de salmos", + "[Upgrade name 486]Immobile spellcasting": "Lançamento imóvel de feitiços", + "[Upgrade name 487]Restaurants at the end of the universe": "Restaurantes no fim do universo", + "[Upgrade name 488]On second thought": "Pensando bem", + "[Upgrade name 489]Dimensional garbage gulper": "Duto de lixo dimensional", + "[Upgrade name 490]Additional clock hands": "Ponteiros de relógio adicionais", + "[Upgrade name 491]Baking Nobel prize": "Prêmio Nobel de confeitaria", + "[Upgrade name 492]Reverse theory of light": "Teoria reversa da luz", + "[Upgrade name 493]Revised probabilistics": "Probabilísticas revisadas", + "[Upgrade name 494]Kitten analysts": "Gatinhos analistas", + "[Upgrade name 495]Eye of the wrinkler": "Olho do enrugador", + "[Upgrade name 496]Inspired checklist": "Lista de controle inspirada", + "[Upgrade name 497]Pure pitch-black chocolate butter biscuit": "Biscoito amanteigado de chocolate puro muito amargo", + "[Upgrade name 498]Chocolate oatmeal cookies": "Cookies de chocolate e aveia", + "[Upgrade name 499]Molasses cookies": "Cookies de melado", + "[Upgrade name 500]Biscotti": "Biscotti", + "[Upgrade name 501]Waffle cookies": "Cookies de waffle", + "[Upgrade name 502]Almond cookies": "Cookies de amêndoas", + "[Upgrade name 503]Hazelnut cookies": "Cookies de avelã", + "[Upgrade name 504]Walnut cookies": "Cookies de nozes", + "[Upgrade name 505]Label printer": "Impressora de rótulos", + "[Upgrade name 506]Good manners": "Boas maneiras", + "[Upgrade name 507]Lindworms": "Lindworms", + "[Upgrade name 508]Bore again": "Perfurar de novo", + "[Upgrade name 509]\"Volunteer\" interns": "\"Voluntariar\" estagiários", + "[Upgrade name 510]Rules of acquisition": "Regras de aquisição", + "[Upgrade name 511]War of the gods": "Guerra dos deuses", + "[Upgrade name 512]Electricity": "Eletricidade", + "[Upgrade name 513]Universal alphabet": "Alfabeto universal", + "[Upgrade name 514]Public betterment": "Melhoramento público", + "[Upgrade name 515]Embedded microportals": "Microportais embutidos", + "[Upgrade name 516]Nostalgia": "Nostalgia", + "[Upgrade name 517]The definite molecule": "A molécula definitiva", + "[Upgrade name 518]Light capture measures": "Medidas de captura de luz", + "[Upgrade name 519]0-sided dice": "Dado de 0 lados", + "[Upgrade name 520]Heralds": "Arautos", + "[Upgrade name 521]Metagrandmas": "Metavovós", + "[Upgrade name 522]Metabakeries": "Metaconfeitarias", + "[Upgrade name 523]Mandelbrown sugar": "Açúcar Mandelbrown", + "[Upgrade name 524]Fractoids": "Fractoides", + "[Upgrade name 525]Nested universe theory": "Teoria do universo aninhado", + "[Upgrade name 526]Menger sponge cake": "Pão de ló de Menger", + "[Upgrade name 527]One particularly good-humored cow": "Uma vaca particularmente de bom-humor", + "[Upgrade name 528]Chocolate ouroboros": "Ouroboros de chocolate", + "[Upgrade name 529]Nested": "Aninhado", + "[Upgrade name 530]Space-filling fibers": "Fibras de preenchimento de espaço", + "[Upgrade name 531]Endless book of prose": "Livro de prosa sem fim", + "[Upgrade name 532]The set of all sets": "O conjunto de todos os conjuntos", + "[Upgrade name 533]Recursive mirrors": "Espelhos recursivos", + "[Upgrade name 534]Mice clicking mice": "Mouses clicando em mouses", + "[Upgrade name 535]Custard creams": "Biscoitos de creme de confeiteiro", + "[Upgrade name 536]Bourbon biscuits": "Biscoitos de bourbon", + "[Upgrade name 537]Keepsakes": "Lembranças", + "[Upgrade name 538]Mini-cookies": "Mini-cookies", + "[Upgrade name 539]Sugar crystal cookies": "Cookies de açúcar cristal", + "[Upgrade name 540]Box of maybe cookies": "Caixa de talvez cookies", + "[Upgrade name 541]Box of not cookies": "Caixa de não cookies", + "[Upgrade name 542]Box of pastries": "Caixa de doces assados", + "[Upgrade name 543]Profiteroles": "Profiteroles", + "[Upgrade name 544]Jelly donut": "Donut de geleia", + "[Upgrade name 545]Glazed donut": "Donut glaceado", + "[Upgrade name 546]Chocolate cake": "Bolo de chocolate", + "[Upgrade name 547]Strawberry cake": "Bolo de morango", + "[Upgrade name 548]Apple pie": "Torta de maçã", + "[Upgrade name 549]Lemon meringue pie": "Torta de limão e merengue", + "[Upgrade name 550]Butter croissant": "Croissant amanteigado", + "[Upgrade name 551]Cookie dough": "Massa de cookie", + "[Upgrade name 552]Burnt cookie": "Cookie queimado", + "[Upgrade name 553]A chocolate chip cookie but with the chips picked off for some reason": "Um cookie de gotas de chocolate mas alguém arrancou as gotas por algum motivo", + "[Upgrade name 554]Flavor text cookie": "Cookie de texto descritivo", + "[Upgrade name 555]High-definition cookie": "Cookie de alta definição", + "[Upgrade name 556]Toast": "Torrada", + "[Upgrade name 557]Peanut butter & jelly": "Manteiga de amendoim e geleia", + "[Upgrade name 558]Wookies": "Wookies", + "[Upgrade name 559]Cheeseburger": "Cheeseburger", + "[Upgrade name 560]One lone chocolate chip": "Uma única gota de chocolate", + "[Upgrade name 561]Genius accounting": "Contabilidade genial", + "[Upgrade name 562]Shimmering veil": "Véu cintilante", + "[Upgrade name 563]Shimmering veil [off]": "Véu cintilante [deslig.]", + "[Upgrade name 564]Shimmering veil [on]": "Véu cintilante [lig.]", + "[Upgrade name 565]Whoopie pies": "Whoopie pies", + "[Upgrade name 566]Caramel wafer biscuits": "Wafers de caramelo", + "[Upgrade name 567]Chocolate chip mocha cookies": "Cookies de mocha e gotas de chocolate", + "[Upgrade name 568]Earl Grey cookies": "Cookies de Earl Grey", + "[Upgrade name 569]Corn syrup cookies": "Cookies de xarope de milho", + "[Upgrade name 570]Icebox cookies": "Cookies de geladeira", + "[Upgrade name 571]Graham crackers": "Graham crackers", + "[Upgrade name 572]Hardtack": "Biscoito seco", + "[Upgrade name 573]Cornflake cookies": "Cookies de flocos de milho", + "[Upgrade name 574]Tofu cookies": "Cookies de tofu", + "[Upgrade name 575]Gluten-free cookies": "Cookies sem glúten", + "[Upgrade name 576]Russian bread cookies": "Biscoitos de alfabeto", + "[Upgrade name 577]Lebkuchen": "Lebkuchen", + "[Upgrade name 578]Aachener Printen": "Aachener Printen", + "[Upgrade name 579]Canistrelli": "Canistrelli", + "[Upgrade name 580]Nice biscuits": "Biscoitos nice", + "[Upgrade name 581]French pure butter cookies": "Biscoitos amanteigados franceses", + "[Upgrade name 582]Petit beurre": "Petit beurre", + "[Upgrade name 583]Nanaimo bars": "Barras de Nanaimo", + "[Upgrade name 584]Berger cookies": "Cookies de Berger", + "[Upgrade name 585]Chinsuko": "Chinsuko", + "[Upgrade name 586]Panda koala biscuits": "Biscoitos panda koala", + "[Upgrade name 587]Putri salju": "Putri salju", + "[Upgrade name 588]Milk cookies": "Cookies de leite", + "[Upgrade name 589]Cookie crumbs": "Migalhas de cookie", + "[Upgrade name 590]Chocolate chip cookie": "Cookie de gotas de chocolate", + "[Upgrade name 591]Cosmic beginner's luck": "Sorte cósmica de principiante", + "[Upgrade name 592]Reinforced membrane": "Membrana reforçada", + "[Upgrade name 593]Binary grandmas": "Vovós binárias", + "[Upgrade name 594]The JavaScript console for dummies": "Console JavaScript para leigos", + "[Upgrade name 595]64bit arrays": "Arranjos de 64bit", + "[Upgrade name 596]Stack overflow": "Stack overflow", + "[Upgrade name 597]Enterprise compiler": "Compilador Enterprise", + "[Upgrade name 598]Syntactic sugar": "Açúcar sintático", + "[Upgrade name 599]A nice cup of coffee": "Uma boa xícara de café", + "[Upgrade name 600]Just-in-time baking": "Assado bem na hora", + "[Upgrade name 601]cookies++": "cookies++", + "[Upgrade name 602]Software updates": "Atualizações de software", + "[Upgrade name 603]Game.Loop": "Game.Loop", + "[Upgrade name 604]eval()": "eval()", + "[Upgrade name 605]Script grannies": "Vovós de script", + "[Upgrade name 606]Tombola computing": "Computação Tombola", + "[Upgrade name 607]Kruidnoten": "Kruidnoten", + "[Upgrade name 608]Marie biscuits": "Bolacha maria", + "[Upgrade name 609]Meringue cookies": "Cookies de merengue", + "[Upgrade name 610]Pizza": "Pizza", + "[Upgrade name 611]Crackers": "Cream Crackers", + "[Upgrade name 612]Havabreaks": "Havabreaks", + "[Upgrade name 613]Kitten executives": "Gatinhos executivos", + "[Upgrade name 614]Chai tea cookies": "Cookies de masala chai", + "[Upgrade name 615]Yogurt cookies": "Cookies de iogurte", + "[Upgrade name 616]Thumbprint cookies": "Cookies de impressão digital", + "[Upgrade name 617]Pizzelle": "Pizzelle", + "[Upgrade name 618]Zilla wafers": "Wafers Zilla", + "[Upgrade name 619]Dim Dams": "Dim Dams", + "[Upgrade name 620]Candy": "Doce", + "[Upgrade name 621]Fortune #001": "Sorte #001", + "[Upgrade name 622]Fortune #002": "Sorte #002", + "[Upgrade name 623]Fortune #003": "Sorte #003", + "[Upgrade name 624]Fortune #004": "Sorte #004", + "[Upgrade name 625]Fortune #005": "Sorte #005", + "[Upgrade name 626]Fortune #006": "Sorte #006", + "[Upgrade name 627]Fortune #007": "Sorte #007", + "[Upgrade name 628]Fortune #008": "Sorte #008", + "[Upgrade name 629]Fortune #009": "Sorte #009", + "[Upgrade name 630]Fortune #010": "Sorte #010", + "[Upgrade name 631]Fortune #011": "Sorte #011", + "[Upgrade name 632]Fortune #012": "Sorte #012", + "[Upgrade name 633]Fortune #013": "Sorte #013", + "[Upgrade name 634]Fortune #014": "Sorte #014", + "[Upgrade name 635]Fortune #015": "Sorte #015", + "[Upgrade name 636]Fortune #016": "Sorte #016", + "[Upgrade name 637]Fortune #017": "Sorte #017", + "[Upgrade name 638]Fortune #100": "Sorte #100", + "[Upgrade name 639]Fortune #101": "Sorte #101", + "[Upgrade name 640]Fortune #102": "Sorte #102", + "[Upgrade name 641]Fortune #103": "Sorte #103", + "[Upgrade name 642]Fortune #104": "Sorte #104", + "[Upgrade name 643]Fortune cookies": "Biscoitos da sorte", + "[Upgrade name 644]A really good guide book": "Um guia muito bom", + "[Upgrade name 645]Prism heart biscuits": "Biscoitos de coração de prisma", + "[Upgrade name 646]Kitten wages": "Salários de gatinhos", + "[Upgrade name 647]Pet the dragon": "Carinho no dragão", + "[Upgrade name 648]Dragon scale": "Escama de dragão", + "[Upgrade name 649]Dragon claw": "Garra de dragão", + "[Upgrade name 650]Dragon fang": "Presa de dragão", + "[Upgrade name 651]Dragon teddy bear": "Pelúcia de dragão", + "[Upgrade name 652]Granola cookies": "Cookies de granola", + "[Upgrade name 653]Ricotta cookies": "Cookies de ricota", + "[Upgrade name 654]Roze koeken": "Roze koeken", + "[Upgrade name 655]Peanut butter cup cookies": "Cookies de bombom de manteiga de amendoim", + "[Upgrade name 656]Sesame cookies": "Cookies de gergelim", + "[Upgrade name 657]Taiyaki": "Taiyaki", + "[Upgrade name 658]Vanillekipferl": "Vanillekipferl", + "[Upgrade name 659]Cosmic chocolate butter biscuit": "Biscoito amanteigado de chocolate cósmico", + "[Upgrade name 660]Nonillion fingers": "Nonilhão de dedos", + "[Upgrade name 661]Miraculite mouse": "Mouse de miraculita", + "[Upgrade name 662]Generation degeneration": "Degeneração de geração", + "[Upgrade name 663]Global seed vault": "Cofre global de sementes", + "[Upgrade name 664]Air mining": "Mineração de ar", + "[Upgrade name 665]Behavioral reframing": "Reenquadramento comportamental", + "[Upgrade name 666]Altruistic loop": "Loop altruísta", + "[Upgrade name 667]A novel idea": "Uma nova ideia", + "[Upgrade name 668]Spelling bees": "Abelhas soletrantes", + "[Upgrade name 669]Toroid universe": "Universo toroide", + "[Upgrade name 670]Hermetic reconciliation": "Reconciliação hermética", + "[Upgrade name 671]His advent": "Seu advento", + "[Upgrade name 672]Split seconds": "Milésimos de segundos", + "[Upgrade name 673]Flavor itself": "O próprio sabor", + "[Upgrade name 674]Light speed limit": "Limite da velocidade da luz", + "[Upgrade name 675]A touch of determinism": "Uma pitada de determinismo", + "[Upgrade name 676]This upgrade": "Essa melhoria", + "[Upgrade name 677]Your biggest fans": "Seus maiores fãs", + "[Upgrade name 678]Battenberg biscuits": "Biscoitos Battenberg", + "[Upgrade name 679]Rosette cookies": "Biscoitos rosette", + "[Upgrade name 680]Gangmakers": "Gangmakers", + "[Upgrade name 681]Welsh cookies": "Cookies galeses", + "[Upgrade name 682]Raspberry cheesecake cookies": "Cookies de cheesecake de framboesa", + "[Upgrade name 683]Alternate grandmas": "Vovós alternativas", + "[Upgrade name 684]Manifest destiny": "Manifestar destino", + "[Upgrade name 685]The multiverse in a nutshell": "O multiverso resumido", + "[Upgrade name 686]All-conversion": "Conversão universal", + "[Upgrade name 687]Multiverse agents": "Agentes do multiverso", + "[Upgrade name 688]Escape plan": "Plano de fuga", + "[Upgrade name 689]Game design": "Design de jogo", + "[Upgrade name 690]Sandbox universes": "Universos caixa-de-areia", + "[Upgrade name 691]Multiverse wars": "Guerras do multiverso", + "[Upgrade name 692]Mobile ports": "Entradas de dispositivos móveis", + "[Upgrade name 693]Encapsulated realities": "Realidades encapsuladas", + "[Upgrade name 694]Extrinsic clicking": "Cliques extrínsecos", + "[Upgrade name 695]Universal idling": "Ociosidade universal", + "[Upgrade name 696]Perforated mille-feuille cosmos": "Cosmos perfurado de mil-folhas", + "[Upgrade name 697]Infraverses and superverses": "Infraversos e superversos", + "[Upgrade name 698]Fortune #018": "Sorte #018", + "[Upgrade name 699]Butter biscuit (with butter)": "Biscoito amanteigado (com manteiga)", + "[Upgrade name 700]Visits": "Visitas", + "[Upgrade name 701]Reverse-veganism": "Veganismo-reverso", + "[Upgrade name 702]Caramel alloys": "Ligas de caramelo", + "[Upgrade name 703]The infinity engine": "O motor infinito", + "[Upgrade name 704]Diminishing tax returns": "Diminuição das declaração fiscais", + "[Upgrade name 705]Apparitions": "Aparições", + "[Upgrade name 706]Wizard basements": "Porões dos magos", + "[Upgrade name 707]Prime directive": "Diretriz primária", + "[Upgrade name 708]Chromatic cycling": "Ciclo cromático", + "[Upgrade name 709]Domestic rifts": "Fendas domésticas", + "[Upgrade name 710]Patience abolished": "Paciência abolida", + "[Upgrade name 711]Delicious pull": "Atração deliciosa", + "[Upgrade name 712]Occam's laser": "Laser de Occam", + "[Upgrade name 713]On a streak": "Em sequência", + "[Upgrade name 714]A box": "Uma caixa", + "[Upgrade name 715]Hacker shades": "Tons de hacker", + "[Upgrade name 716]Break the fifth wall": "Quebrar a quinta parede", + "[Upgrade name 717]Cat ladies": "Senhoras dos gatos", + "[Upgrade name 718]Milkhelp® lactose intolerance relief tablets": "Comprimidos Milkhelp® de alívio da intolerância à lactose", + "[Upgrade name 719]Aura gloves": "Luvas de aura", + "[Upgrade name 720]Luminous gloves": "Luvas luminosas", + "[Upgrade name 721]Bokkenpootjes": "Bokkenpootjes", + "[Upgrade name 722]Fat rascals": "Fat rascals", + "[Upgrade name 723]Ischler cookies": "Ischlers", + "[Upgrade name 724]Matcha cookies": "Cookies de matcha", + "[Upgrade name 725]Earl Grey macarons": "Macarons de Earl Grey", + "[Upgrade name 726]Pokey": "Pokey", + "[Upgrade name 727]Cashew cookies": "Cookies de caju", + "[Upgrade name 728]Milk chocolate cookies": "Cookies de chocolate ao leite", + "[Upgrade name 729]Brainy grandmas": "Vovós cerebrais", + "[Upgrade name 730]Principled neural shackles": "Amarras neurais de princípios", + "[Upgrade name 731]Obey": "Obedeça", + "[Upgrade name 732]A sprinkle of irrationality": "Uma pitada de irracionalidade", + "[Upgrade name 733]Front and back hemispheres": "Hemisfério frente e trás", + "[Upgrade name 734]Neural networking": "Rede neural", + "[Upgrade name 735]Cosmic brainstorms": "Brainstorms cósmicos", + "[Upgrade name 736]Megatherapy": "Megaterapia", + "[Upgrade name 737]Synaptic lubricant": "Lubrificante sináptico", + "[Upgrade name 738]Psychokinesis": "Psicocinese", + "[Upgrade name 739]Spines": "Espinhas", + "[Upgrade name 740]Neuraforming": "Formação neural", + "[Upgrade name 741]Epistemological trickery": "Trapaça epistemológica", + "[Upgrade name 742]Every possible idea": "Toda ideia possível", + "[Upgrade name 743]Kitchen cabinets": "Armários de cozinha", + "[Upgrade name 744]Cookie mulch": "Devorador de cookies", + "[Upgrade name 745]Delicious mineralogy": "Mineralogia deliciosa", + "[Upgrade name 746]N-dimensional assembly lines": "Linhas de montagem N-dimensionais", + "[Upgrade name 747]Cookie Points": "Pontos de cookies", + "[Upgrade name 748]Negatheism": "Negateísmo", + "[Upgrade name 749]Magical realism": "Realismo mágico", + "[Upgrade name 750]Cosmic foreground radiation": "Radiação frontal cósmica", + "[Upgrade name 751]Arcanized glassware": "Vidraria arcanizada", + "[Upgrade name 752]Portal guns": "Armas de portal", + "[Upgrade name 753]Timeproof upholstery": "Estofamento à prova do tempo", + "[Upgrade name 754]Employee minification": "Minificação de funcionário", + "[Upgrade name 755]Hyperblack paint": "Tinta hiperpreta", + "[Upgrade name 756]Silver lining maximization": "Maximização do lado bom", + "[Upgrade name 757]Multiscale profiling": "Perfil multiescala", + "[Upgrade name 758]PHP containment vats": "Tanques de contenção de PHP", + "[Upgrade name 759]Opposite universe": "Universo oposto", + "[Upgrade name 760]The land of dreams": "A terra dos sonhos", + "[Upgrade name 761]Thoughts & prayers": "Pensamentos e rezas", + "[Upgrade name 762]Fertile minds": "Mentes férteis", + "[Upgrade name 763]Fortune #019": "Sorte #019", + "[Upgrade name 764]Decillion fingers": "Decilhão de dedos", + "[Upgrade name 765]Aetherice mouse": "Mouse de éter", + "[Upgrade name 766]Kitten admins": "Admins gatinhos", + "[Upgrade name 767]Everybutter biscuit": "Biscoitos de toda manteiga", + "[Upgrade name 768]Unshackled cursors": "Cursores libertados", + "[Upgrade name 769]Unshackled grandmas": "Vovós libertadas", + "[Upgrade name 770]Unshackled farms": "Fazendas libertadas", + "[Upgrade name 771]Unshackled mines": "Minas libertadas", + "[Upgrade name 772]Unshackled factories": "Fábricas libertadas", + "[Upgrade name 773]Unshackled banks": "Bancos libertados", + "[Upgrade name 774]Unshackled temples": "Templos libertados", + "[Upgrade name 775]Unshackled wizard towers": "Torres de bruxos libertadas", + "[Upgrade name 776]Unshackled shipments": "Carregamentos libertados", + "[Upgrade name 777]Unshackled alchemy labs": "Laboratórios de alquimia libertados", + "[Upgrade name 778]Unshackled portals": "Portais libertados", + "[Upgrade name 779]Unshackled time machines": "Máquinas do tempo libertadas", + "[Upgrade name 780]Unshackled antimatter condensers": "Condensadores antimatéria libertados", + "[Upgrade name 781]Unshackled prisms": "Prismas libertados", + "[Upgrade name 782]Unshackled chancemakers": "Criadores do acaso libertados", + "[Upgrade name 783]Unshackled fractal engines": "Motores fractais libertados", + "[Upgrade name 784]Unshackled javascript consoles": "Consoles de javascript llibertados", + "[Upgrade name 785]Unshackled idleverses": "Ocioversos libertados", + "[Upgrade name 786]Unshackled cortex bakers": "Confeiteiros de córtex libertados", + "[Upgrade name 787]Unshackled flavor": "Sabor libertado", + "[Upgrade name 788]Unshackled berrylium": "De bagas libertados", + "[Upgrade name 789]Unshackled blueberrylium": "De mirtilo libertados", + "[Upgrade name 790]Unshackled chalcedhoney": "Mel riscado libertado", + "[Upgrade name 791]Unshackled buttergold": "Ouro manteiga libertado", + "[Upgrade name 792]Unshackled sugarmuck": "Açúcar sujo libertado", + "[Upgrade name 793]Unshackled jetmint": "Hortelã jato libertado", + "[Upgrade name 794]Unshackled cherrysilver": "Cereja prata libertada", + "[Upgrade name 795]Unshackled hazelrald": "Avelã radical libertada", + "[Upgrade name 796]Unshackled mooncandy": "Doce da Lua libertado", + "[Upgrade name 797]Unshackled astrofudge": "Astrodoce libertado", + "[Upgrade name 798]Unshackled alabascream": "Alabagrito libertado", + "[Upgrade name 799]Unshackled iridyum": "Irídio libertado", + "[Upgrade name 800]Unshackled glucosmium": "Glucósmico libertado", + "[Upgrade name 801]Delicate touch": "Toque delicado", + "[Upgrade name 802]Steadfast murmur": "Murmúrio firme", + "[Upgrade name 803]Glittering edge": "Fio reluzente", + "[Upgrade name 804]Distinguished wallpaper assortment": "Seleção de papéis de parede distintos", + "[Upgrade name 805]Sound test": "Teste de som", + "[Upgrade name 806]Jukebox": "Jukebox", + "[Upgrade name 807]Dalgona cookies": "Cookie de dalgona", + "[Upgrade name 808]Spicy cookies": "Cookies picantes", + "[Upgrade name 809]Smile cookies": "Cookies sorridentes", + "[Upgrade name 810]Kolachy cookies": "Cookies de kolachy", + "[Upgrade name 811]Gomma cookies": "Cookies de gomma", + "[Upgrade name 812]Vegan cookies": "Cookies veganos", + "[Upgrade name 813]Coyotas": "Coyota", + "[Upgrade name 814]Frosted sugar cookies": "Cookies cobertos de açúcar", + "[Upgrade name 815]Marshmallow sandwich cookies": "Cookies de sanduíche de marshmallow", + "[Upgrade name 816]Web cookies": "Cookies da internet", + "[Upgrade name 817]Steamed cookies": "Cookies no vapor", + "[Upgrade name 818]Deep-fried cookie dough": "Massa de cookie frita", + "[Achievement name 0]Wake and bake": "Levante e asse", + "[Achievement name 1]Making some dough": "Sove a massa", + "[Achievement name 2]So baked right now": "Tão assado agora", + "[Achievement name 3]Fledgling bakery": "Confeitaria iniciante", + "[Achievement name 4]Affluent bakery": "Confeitaria afluente", + "[Achievement name 5]World-famous bakery": "Confeitaria mundialmente famosa", + "[Achievement name 6]Cosmic bakery": "Confeitaria cósmica", + "[Achievement name 7]Galactic bakery": "Confeitaria galáctica", + "[Achievement name 8]Universal bakery": "Confeitaria universal", + "[Achievement name 9]Timeless bakery": "Confeitaria atemporal", + "[Achievement name 10]Infinite bakery": "Confeitaria infinita", + "[Achievement name 11]Immortal bakery": "Confeitaria imortal", + "[Achievement name 12]Don't stop me now": "Não me interrompa", + "[Achievement name 13]You can stop now": "Pode me interromper", + "[Achievement name 14]Cookies all the way down": "Cookies até o fim", + "[Achievement name 15]Overdose": "Overdose", + "[Achievement name 16]Casual baking": "Assando casualmente", + "[Achievement name 17]Hardcore baking": "Assando pra valer", + "[Achievement name 18]Steady tasty stream": "Fluxo saboroso constante", + "[Achievement name 19]Cookie monster": "Monstro dos cookies", + "[Achievement name 20]Mass producer": "Produção em massa", + "[Achievement name 21]Cookie vortex": "Vórtice de cookie", + "[Achievement name 22]Cookie pulsar": "Pulsar de cookie", + "[Achievement name 23]Cookie quasar": "Quasar de cookie", + "[Achievement name 24]Oh hey, you're still here": "Ah, oi, você ainda está aí", + "[Achievement name 25]Let's never bake again": "Nunca mais vamos assar", + "[Achievement name 26]Sacrifice": "Sacrifício", + "[Achievement name 27]Oblivion": "Esquecimento", + "[Achievement name 28]From scratch": "Do zero", + "[Achievement name 29]Neverclick": "Nunca clique", + "[Achievement name 30]Clicktastic": "Cliquetástico", + "[Achievement name 31]Clickathlon": "Clicatlo", + "[Achievement name 32]Clickolympics": "Clicolimpíadas", + "[Achievement name 33]Clickorama": "Clicorama", + "[Achievement name 34]Click": "Clique", + "[Achievement name 35]Double-click": "Duplo-clique", + "[Achievement name 36]Mouse wheel": "Roda do mouse", + "[Achievement name 37]Of Mice and Men": "Ratos e Homens", + "[Achievement name 38]The Digital": "O Digital", + "[Achievement name 39]Just wrong": "Apenas errado", + "[Achievement name 40]Grandma's cookies": "Cookies da vovó", + "[Achievement name 41]Sloppy kisses": "Beijos babados", + "[Achievement name 42]Retirement home": "Casa de repouso", + "[Achievement name 43]Bought the farm": "Comprou a fazenda", + "[Achievement name 44]Reap what you sow": "Colher o que plantou", + "[Achievement name 45]Farm ill": "Fazenda doente", + "[Achievement name 46]Production chain": "Cadeia de produção", + "[Achievement name 47]Industrial revolution": "Revolução industrial", + "[Achievement name 48]Global warming": "Aquecimento global", + "[Achievement name 49]You know the drill": "Você sabe como é", + "[Achievement name 50]Excavation site": "Local de escavação", + "[Achievement name 51]Hollow the planet": "Escavar o planeta", + "[Achievement name 52]Expedition": "Expedição", + "[Achievement name 53]Galactic highway": "Rodovia galáctica", + "[Achievement name 54]Far far away": "Tão, tão distante", + "[Achievement name 55]Transmutation": "Transmutação", + "[Achievement name 56]Transmogrification": "Transmogrificação", + "[Achievement name 57]Gold member": "Membro de ouro", + "[Achievement name 58]A whole new world": "Um mundo ideal", + "[Achievement name 59]Now you're thinking": "Agora sim você está pensando", + "[Achievement name 60]Dimensional shift": "Salto dimensional", + "[Achievement name 61]Time warp": "Viagem no tempo", + "[Achievement name 62]Alternate timeline": "Linha temporal alternativa", + "[Achievement name 63]Rewriting history": "Reescrevendo a história", + "[Achievement name 64]One with everything": "Um com tudo", + "[Achievement name 65]Mathematician": "Matemático", + "[Achievement name 66]Base 10": "Base 10", + "[Achievement name 67]Golden cookie": "Cookie dourado", + "[Achievement name 68]Lucky cookie": "Cookie da sorte", + "[Achievement name 69]A stroke of luck": "Um golpe de sorte", + "[Achievement name 70]Cheated cookies taste awful": "Cookies trapaceados têm um gosto horrível", + "[Achievement name 71]Uncanny clicker": "Clicador extraordinário", + "[Achievement name 72]Builder": "Construtor", + "[Achievement name 73]Architect": "Arquiteto", + "[Achievement name 74]Enhancer": "Aperfeiçoador", + "[Achievement name 75]Augmenter": "Amplificador", + "[Achievement name 76]Cookie-dunker": "Molhador de cookies", + "[Achievement name 77]Fortune": "Destino", + "[Achievement name 78]True Neverclick": "Anticliques", + "[Achievement name 79]Elder nap": "Soneca ancestral", + "[Achievement name 80]Elder slumber": "Repouso ancestral", + "[Achievement name 81]Elder": "Ancestral", + "[Achievement name 82]Elder calm": "Trégua ancestral", + "[Achievement name 83]Engineer": "Engenheiro", + "[Achievement name 84]Leprechaun": "Duende", + "[Achievement name 85]Black cat's paw": "Pata de gato preto", + "[Achievement name 86]Nihilism": "Niilismo", + "[Achievement name 87]Antibatter": "Antimassa", + "[Achievement name 88]Quirky quarks": "Quarks excêntricos", + "[Achievement name 89]It does matter!": "Essa matéria importa!", + "[Achievement name 90]Upgrader": "Aprimorador", + "[Achievement name 91]Centennial": "Centenário", + "[Achievement name 92]Hardcore": "Da pesada", + "[Achievement name 93]Speed baking I": "Assando rapidamente I", + "[Achievement name 94]Speed baking II": "Assando rapidamente II", + "[Achievement name 95]Speed baking III": "Assando rapidamente III", + "[Achievement name 96]Getting even with the oven": "Derrubando o forninho", + "[Achievement name 97]Now this is pod-smashing": "Explosão de cápsula", + "[Achievement name 98]Chirped out": "Pane no sistema", + "[Achievement name 99]Follow the white rabbit": "Siga o coelho branco", + "[Achievement name 100]Clickasmic": "Clicósmico", + "[Achievement name 101]Friend of the ancients": "Amigo das anciãs", + "[Achievement name 102]Ruler of the ancients": "Soberano das anciãs", + "[Achievement name 103]Wholesome": "Íntegro", + "[Achievement name 104]Just plain lucky": "Simplesmente sortudo", + "[Achievement name 105]Itchscratcher": "Enrugador eliminado", + "[Achievement name 106]Wrinklesquisher": "Esmagador de enrugador", + "[Achievement name 107]Moistburster": "Estourador de umidade", + "[Achievement name 108]Spooky cookies": "Cookies espantosos", + "[Achievement name 109]Coming to town": "Chegando na cidade", + "[Achievement name 110]All hail Santa": "Vida longa ao Papai Noel", + "[Achievement name 111]Let it snow": "Deixa a neve me levar", + "[Achievement name 112]Oh deer": "Oi, rena", + "[Achievement name 113]Sleigh of hand": "Trenozinho de mão", + "[Achievement name 114]Reindeer sleigher": "Extrenóminador de renas", + "[Achievement name 115]Perfected agriculture": "Agricultura aprimorada", + "[Achievement name 116]Ultimate automation": "Automação máxima", + "[Achievement name 117]Can you dig it": "Mina, seus túneis são da hora", + "[Achievement name 118]Type II civilization": "Civilização do tipo II", + "[Achievement name 119]Gild wars": "Material dourado", + "[Achievement name 120]Brain-split": "Onipresente", + "[Achievement name 121]Time duke": "Duque do tempo", + "[Achievement name 122]Molecular maestro": "Maestro molecular", + "[Achievement name 123]Lone photon": "Fóton solitário", + "[Achievement name 124]Dazzling glimmer": "Lampejo estonteante", + "[Achievement name 125]Blinding flash": "Clarão ofuscante", + "[Achievement name 126]Unending glow": "Brilho eterno", + "[Achievement name 127]Lord of Constructs": "Senhor das construções", + "[Achievement name 128]Lord of Progress": "Senhor do progresso", + "[Achievement name 129]Bicentennial": "Bicentenário", + "[Achievement name 130]Lovely cookies": "Cookies carinhosos", + "[Achievement name 131]Centennial and a half": "Um centenário e meio", + "[Achievement name 132]Tiny cookie": "Cookie pequenino", + "[Achievement name 133]You win a cookie": "Um cookie de presente", + "[Achievement name 134]Click delegator": "Atribuidor de cliques", + "[Achievement name 135]Gushing grannies": "Vovozinhas a mil", + "[Achievement name 136]I hate manure": "Detesto estrume", + "[Achievement name 137]Never dig down": "Jamais cave para baixo", + "[Achievement name 138]The incredible machine": "A máquina incrível", + "[Achievement name 139]And beyond": "E além", + "[Achievement name 140]Magnum Opus": "Obra-prima", + "[Achievement name 141]With strange eons": "Com eras estranhas", + "[Achievement name 142]Spacetime jigamaroo": "Confusão espaço-temporal", + "[Achievement name 143]Supermassive": "Supermassivo", + "[Achievement name 144]Praise the sun": "Louvado seja o sol", + "[Achievement name 145]Clickageddon": "Apocacliquesse", + "[Achievement name 146]Clicknarok": "Cliquenarok", + "[Achievement name 147]Extreme polydactyly": "Polidactilia extrema", + "[Achievement name 148]Dr. T": "Dr. T", + "[Achievement name 149]The old never bothered me anyway": "As idosas não vão mesmo me incomodar", + "[Achievement name 150]Homegrown": "Plantado em casa", + "[Achievement name 151]Technocracy": "Tecnocracia", + "[Achievement name 152]The center of the Earth": "O centro da Terra", + "[Achievement name 153]We come in peace": "Viemos em missão de paz", + "[Achievement name 154]The secrets of the universe": "Os segredos do universo", + "[Achievement name 155]Realm of the Mad God": "Reino do deus louco", + "[Achievement name 156]Forever and ever": "Para todo o sempre", + "[Achievement name 157]Walk the planck": "Quantum tempo!", + "[Achievement name 158]Rise and shine": "Hora de brilhar", + "[Achievement name 159]God complex": "Complexo de deus", + "[Achievement name 160]Third-party": "Terceirizado", + "[Achievement name 161]Dematerialize": "Desmaterializar", + "[Achievement name 162]Nil zero zilch": "Nulo zero nadica de nada", + "[Achievement name 163]Transcendence": "Transcendência", + "[Achievement name 164]Obliterate": "Obliterar", + "[Achievement name 165]Negative void": "Vazio negativo", + "[Achievement name 166]The hunt is on": "Começou a caçada", + "[Achievement name 167]Egging on": "Pisando em ovos", + "[Achievement name 168]Mass Easteria": "Histeria em Páscoa", + "[Achievement name 169]Hide & seek champion": "Campeão do esconde-esconde", + "[Achievement name 170]What's in a name": "O que há num nome", + "[Achievement name 171]Pretty penny": "Moedinha bonita", + "[Achievement name 172]Fit the bill": "Ajuste de contas", + "[Achievement name 173]A loan in the dark": "Seguro e dívida", + "[Achievement name 174]Need for greed": "Velozes e gananciosos", + "[Achievement name 175]It's the economy, stupid": "É a economia, idiota", + "[Achievement name 176]Your time to shrine": "Previsão do templo", + "[Achievement name 177]Shady sect": "Seita suspeita", + "[Achievement name 178]New-age cult": "Culto da nova era", + "[Achievement name 179]Organized religion": "Religião organizada", + "[Achievement name 180]Fanaticism": "Fanatismo", + "[Achievement name 181]Bewitched": "A feiticeira", + "[Achievement name 182]The sorcerer's apprentice": "O aprendiz de feiticeiro", + "[Achievement name 183]Charms and enchantments": "Amuletos e encantos", + "[Achievement name 184]Curses and maledictions": "Maldições e pragas", + "[Achievement name 185]Magic kingdom": "Reino mágico", + "[Achievement name 186]Vested interest": "Partes interessadas", + "[Achievement name 187]New world order": "Nova ordem mundial", + "[Achievement name 188]Hocus pocus": "Abracadabra", + "[Achievement name 189]Finger clickin' good": "De lamber os dedos", + "[Achievement name 190]Panic at the bingo": "Pânico no bingo", + "[Achievement name 191]Rake in the dough": "Levando a grana alta", + "[Achievement name 192]Quarry on": "Mina para frente", + "[Achievement name 193]Yes I love technology": "Sim, eu amo tecnologia", + "[Achievement name 194]Paid in full": "Pagamento integral", + "[Achievement name 195]Church of Cookiology": "Igreja da Cookieologia", + "[Achievement name 196]Too many rabbits, not enough hats": "Muitos coelhos para poucas cartolas", + "[Achievement name 197]The most precious cargo": "A carga mais preciosa", + "[Achievement name 198]The Aureate": "Menino de ouro", + "[Achievement name 199]Ever more hideous": "Cada vez mais hediondas", + "[Achievement name 200]Be kind, rewind": "Não se esqueça de rebobinar", + "[Achievement name 201]Infinitesimal": "Infinitésimo", + "[Achievement name 202]A still more glorious dawn": "Um amanhecer ainda mais glorioso", + "[Achievement name 203]Rebirth": "Renascimento", + "[Achievement name 204]Here you go": "Aqui está", + "[Achievement name 205]Resurrection": "Ressurreição", + "[Achievement name 206]Reincarnation": "Reencarnação", + "[Achievement name 207]Endless cycle": "Ciclo infinito", + "[Achievement name 208]The agemaster": "O mestre da velhice", + "[Achievement name 209]To oldly go": "Histórias de avós", + "[Achievement name 210]Gardener extraordinaire": "Excelência em jardinagem", + "[Achievement name 211]Tectonic ambassador": "Embaixador tectônico", + "[Achievement name 212]Rise of the machines": "Ascensão das máquinas", + "[Achievement name 213]Acquire currency": "Adquirir capital", + "[Achievement name 214]Zealotry": "Adoração", + "[Achievement name 215]The wizarding world": "O mundo mágico", + "[Achievement name 216]Parsec-masher": "Mestre dos parsecs", + "[Achievement name 217]The work of a lifetime": "A obra de uma vida", + "[Achievement name 218]A place lost in time": "Um lugar perdido no tempo", + "[Achievement name 219]Heat death": "Morte térmica", + "[Achievement name 220]Microcosm": "Microcosmo", + "[Achievement name 221]Bright future": "Futuro brilhante", + "[Achievement name 222]Here be dragon": "Há dragões aqui", + "[Achievement name 223]How?": "Como?", + "[Achievement name 224]The land of milk and cookies": "A terra do leite e dos cookies", + "[Achievement name 225]He who controls the cookies controls the universe": "Aquele que controla os cookies controla o universo", + "[Achievement name 226]Tonight on Hoarders": "Hoje em Acumuladores Compulsivos", + "[Achievement name 227]Are you gonna eat all that?": "Vai comer tudo isso?", + "[Achievement name 228]We're gonna need a bigger bakery": "Vamos precisar de uma confeitaria maior", + "[Achievement name 229]In the mouth of madness": "Na boca da loucura", + "[Achievement name 230]Brought to you by the letter
": "Trazido ao pé da letra
", + "[Achievement name 231]A world filled with cookies": "Um mundo cheio de cookies", + "[Achievement name 232]When this baby hits 36 quadrillion cookies per hour": "Quando essa belezinha fizer 36 quadrilhões de cookies por hora", + "[Achievement name 233]Fast and delicious": "Velozes e deliciosos", + "[Achievement name 234]Cookiehertz : a really, really tasty hertz": "Cookiehertz: um hertz muito, mas muito apetitoso", + "[Achievement name 235]Woops, you solved world hunger": "Ops, você solucionou a fome mundial", + "[Achievement name 236]Turbopuns": "Turbinado", + "[Achievement name 237]Faster menner": "Pisa fundo", + "[Achievement name 238]And yet you're still hungry": "Mas você ainda está com fome", + "[Achievement name 239]The Abakening": "O Amanhassar", + "[Achievement name 240]There's really no hard limit to how long these achievement names can be and to be quite honest I'm rather curious to see how far we can go.
Adolphus W. Green (1844–1917) started as the Principal of the Groton School in 1864. By 1865, he became second assistant librarian at the New York Mercantile Library; from 1867 to 1869, he was promoted to full librarian. From 1869 to 1873, he worked for Evarts, Southmayd & Choate, a law firm co-founded by William M. Evarts, Charles Ferdinand Southmayd and Joseph Hodges Choate. He was admitted to the New York State Bar Association in 1873.
Anyway, how's your day been?": "Não existe um limite real no tamanho dos nomes das conquistas e, na verdade, estou bem curioso pra saber até onde podemos chegar.
Adolphus W. Green (1844–1917) começou a carreira como diretor da Escola Groton em 1864. Por volta de 1865, ele se tornou bibliotecário assistente na Biblioteca Mercantil de Nova York; de 1867 a 1869, ele foi promovido a bibliotecário integral. De 1869 a 1873, ele trabalhou na Evarts, Southmayd & Choate, uma firma de advocacia fundada por William M. Evarts, Charles Ferdinand Southmayd e Joseph Hodges Choate. Ele foi aceito na Ordem dos Advogados de Nova York em 1873.
Enfim, como foi o seu dia?", + "[Achievement name 241]Fast": "Rápido", + "[Achievement name 242]Bicentennial and a half": "Um bicentenário e meio", + "[Achievement name 243]Tabloid addiction": "Vício em tabloides", + "[Achievement name 244]Clickastrophe": "Aniclicação", + "[Achievement name 245]Clickataclysm": "Clicataclismo", + "[Achievement name 246]Thumbs, phalanges, metacarpals": "Dedões, falanges, metacarpos", + "[Achievement name 247]Polymath": "Polímata", + "[Achievement name 248]The elder scrolls": "Pergaminhos ancestrais", + "[Achievement name 249]To crumbs, you say?": "Esfarelou-se, é?", + "[Achievement name 250]Seedy business": "Negócios germinantes", + "[Achievement name 251]Freak fracking": "Perfuração em ação", + "[Achievement name 252]Modern times": "Tempos modernos", + "[Achievement name 253]The nerve of war": "O nervo da guerra", + "[Achievement name 254]Wololo": "Wololo", + "[Achievement name 255]And now for my next trick, I'll need a volunteer from the audience": "Para meu próximo truque, preciso de um voluntário da plateia", + "[Achievement name 256]It's not delivery": "Não é de tele-entrega", + "[Achievement name 257]Gold, Jerry! Gold!": "Ouro, Jerry! Ouro!", + "[Achievement name 258]Forbidden zone": "Zona proibida", + "[Achievement name 259]cookie clicker forever and forever a hundred years cookie clicker, all day long forever, forever a hundred times, over and over cookie clicker adventures dot com": "cookie clicker para todo o sempre cem anos de cookie clicker, o dia inteiro para sempre, eternamente cem vezes, aventuras com cookie clicker sem parar ponto com", + "[Achievement name 260]Scientists baffled everywhere": "Cientistas perplexos pelo mundo inteiro", + "[Achievement name 261]Harmony of the spheres": "Harmonia das esferas", + "[Achievement name 262]Last Chance to See": "Última chance para ver", + "[Achievement name 263]Early bird": "Apressadinho", + "[Achievement name 264]Fading luck": "Sorte evanescente", + "[Achievement name 265]Eldeer": "Renancestral", + "[Achievement name 266]Dude, sweet": "Que docinho", + "[Achievement name 267]Sugar rush": "Excesso de açúcar", + "[Achievement name 268]Year's worth of cavities": "Anos e anos de cáries", + "[Achievement name 269]Hand-picked": "Coletado à mão", + "[Achievement name 270]Sugar sugar": "Água com açúcar", + "[Achievement name 271]All-natural cane sugar": "Açúcar de cana natural", + "[Achievement name 272]Sweetmeats": "Torrões docinhos", + "[Achievement name 273]Tricentennial": "Tricentenário", + "[Achievement name 274]Knead for speed": "Comer, rezar, assar", + "[Achievement name 275]Well the cookies start coming and they don't stop coming": "Olha que cookie mais lindo, mais cheio de graça", + "[Achievement name 276]I don't know if you've noticed but all these icons are very slightly off-center": "Não sei se você reparou, mas nenhum desses ícones está bem centralizado", + "[Achievement name 277]The proof of the cookie is in the baking": "A prova do cookie está em como assar", + "[Achievement name 278]If it's worth doing, it's worth overdoing": "Se vale a pena fazer, melhor exagerar", + "[Achievement name 279]The dreams in which I'm baking are the best I've ever had": "Tudo pode ser, se quiser será, sonho sempre vem pra quem assar", + "[Achievement name 280]Set for life": "Vida feita", + "[Achievement name 281]You and the beanstalk": "Você e o pé de feijão", + "[Achievement name 282]Romancing the stone": "Pedra sobre pedra", + "[Achievement name 283]Ex machina": "Ex machina", + "[Achievement name 284]And I need it now": "E é para agora", + "[Achievement name 285]Pray on the weak": "Que oração?", + "[Achievement name 286]It's a kind of magic": "É um tipo de magia", + "[Achievement name 287]Make it so": "A magia está no ar", + "[Achievement name 288]All that glitters is gold": "Tudo que reluz é ouro", + "[Achievement name 289]Here he comes": "Lá vem ele", + "[Achievement name 290]Way back then": "Naquela época", + "[Achievement name 291]Exotic matter": "Matéria exótica", + "[Achievement name 292]At the end of the tunnel": "No fim do túnel", + "[Achievement name 293]Click (starring Adam Sandler)": "Click (com Adam Sandler)", + "[Achievement name 294]Frantiquities": "Vovós frenéticas", + "[Achievement name 295]Overgrowth": "Supercrescimento", + "[Achievement name 296]Sedimentalism": "Sedimentalismo", + "[Achievement name 297]Labor of love": "Mão de obra do amor", + "[Achievement name 298]Reverse funnel system": "Sistema de funil invertido", + "[Achievement name 299]Thus spoke you": "Assim falou você", + "[Achievement name 300]Manafest destiny": "Destino manafesto", + "[Achievement name 301]Neither snow nor rain nor heat nor gloom of night": "Os objetos saíram para entrega", + "[Achievement name 302]I've got the Midas touch": "Eu tenho o toque de Midas", + "[Achievement name 303]Which eternal lie": "O que pode eternamente jazer", + "[Achievement name 304]Déjà vu": "Déjà vu", + "[Achievement name 305]Powers of Ten": "Potências de base 10", + "[Achievement name 306]Now the dark days are gone": "Fim da escuridão", + "[Achievement name 307]Freaky jazz hands": "Mãos inquietas", + "[Achievement name 308]Methuselah": "Matusalém", + "[Achievement name 309]Huge tracts of land": "Grandes extensões de terra", + "[Achievement name 310]D-d-d-d-deeper": "M-m-m-mais fundo", + "[Achievement name 311]Patently genius": "Patentes geniais", + "[Achievement name 312]A capital idea": "Uma ideia impagável", + "[Achievement name 313]It belongs in a bakery": "Deveria estar em uma confeitaria", + "[Achievement name 314]Motormouth": "Tagarela", + "[Achievement name 315]Been there done that": "Já passei por isso", + "[Achievement name 316]Phlogisticated substances": "Substâncias flogisticadas", + "[Achievement name 317]Bizarro world": "Mundo bizarro", + "[Achievement name 318]The long now": "O longo agora", + "[Achievement name 319]Chubby hadrons": "Hádrons volumosos", + "[Achievement name 320]Palettable": "Paletável", + "[Achievement name 321]Bibbidi-bobbidi-boo": "Bibidi-Bobidi-Bu", + "[Achievement name 322]I'm the wiz": "Eu sou o feiticeiro", + "[Achievement name 323]A wizard is you": "Um feiticeiro você é", + "[Achievement name 324]Four-leaf cookie": "Cookie de quatro folhas", + "[Achievement name 325]Lucked out": "Deu sorte", + "[Achievement name 326]What are the odds": "Quais são as chances", + "[Achievement name 327]Grandma needs a new pair of shoes": "A vovó precisa de um novo par de sapatos", + "[Achievement name 328]Million to one shot, doc": "Uma chance em um milhão, doutor", + "[Achievement name 329]As luck would have it": "Por pura sorte", + "[Achievement name 330]Ever in your favor": "Sempre a seu favor", + "[Achievement name 331]Be a lady": "A minha sorte grande", + "[Achievement name 332]Dicey business": "Dados arriscados", + "[Achievement name 333]Fingers crossed": "Dedos cruzados", + "[Achievement name 334]Just a statistic": "Apenas uma estatística", + "[Achievement name 335]Murphy's wild guess": "O palpite de Murphy", + "[Achievement name 336]Let's leaf it at that": "Melhor deixar assim", + "[Achievement name 337]The ultimate clickdown": "Batalha de cliques", + "[Achievement name 338]Aged well": "Envelheceram bem", + "[Achievement name 339]101st birthday": "101º aniversário", + "[Achievement name 340]But wait 'til you get older": "Mas espere só você envelhecer", + "[Achievement name 341]Harvest moon": "Lua da colheita", + "[Achievement name 342]Mine?": "Mina?", + "[Achievement name 343]In full gear": "De equipamento completo", + "[Achievement name 344]Treacle tart economics": "Economia de torta de melado", + "[Achievement name 345]Holy cookies, grandma!": "Santos cookies, vovó!", + "[Achievement name 346]The Prestige": "O grande truque", + "[Achievement name 347]That's just peanuts to space": "É só um amendoim em relação ao espaço", + "[Achievement name 348]Worth its weight in lead": "Valendo barras de chumbo", + "[Achievement name 349]What happens in the vortex stays in the vortex": "O que acontece no vórtice fica no vórtice", + "[Achievement name 350]Invited to yesterday's party": "Convidado para a festa de ontem", + "[Achievement name 351]Downsizing": "Redimensionamento", + "[Achievement name 352]My eyes": "Meus olhos", + "[Achievement name 353]Maybe a chance in hell, actually": "Talvez uma vez na vida", + "[Achievement name 354]Make like a tree": "Imite um balde furado", + "[Achievement name 355]Cave story": "História na caverna", + "[Achievement name 356]In-cog-neato": "Engrenado", + "[Achievement name 357]Save your breath because that's all you've got left": "Economize o fôlego, porque é só isso que você tem", + "[Achievement name 358]Vengeful and almighty": "Vingativo e onipotente", + "[Achievement name 359]Spell it out for you": "Quem encanta seus males espanta", + "[Achievement name 360]Space space space space space": "Espaço espaço espaço espaço espaço", + "[Achievement name 361]Don't get used to yourself, you're gonna have to change": "Não se acostume consigo mesmo, pois você vai precisar mudar", + "[Achievement name 362]Objects in the mirror dimension are closer than they appear": "Objetos na dimensão espelhada estão mais próximos do que aparentam", + "[Achievement name 363]Groundhog day": "Feitiço do tempo", + "[Achievement name 364]A matter of perspective": "Uma questão de perspectiva", + "[Achievement name 365]Optical illusion": "Ilusão de ótica", + "[Achievement name 366]Jackpot": "Prêmio máximo", + "[Achievement name 367]So much to do so much to see": "Tanto para fazer, tanto para ver", + "[Achievement name 368]Running with scissors": "Correndo com tesouras", + "[Achievement name 369]Rarefied air": "Ar rarefeito", + "[Achievement name 370]Push it to the limit": "Forçando a barra", + "[Achievement name 371]Green cookies sleep furiously": "Cookies verdes dormem furiosamente", + "[Achievement name 372]Panic! at Nabisco": "Panic! at Nabisco", + "[Achievement name 373]Bursting at the seams": "Estourando de tão cheio", + "[Achievement name 374]Just about full": "Quase lotado", + "[Achievement name 375]Hungry for more": "Querendo mais", + "[Achievement name 376]All the other kids with the pumped up clicks": "Gosto tanto de você, cliquezinho", + "[Achievement name 377]One...more...click...": "Só... mais... um... clique...", + "[Achievement name 378]Botany enthusiast": "Amante da botânica", + "[Achievement name 379]Green, aching thumb": "Dedão verde dolorido", + "[Achievement name 380]In the garden of Eden (baby)": "No jardim do Éden (meu bem)", + "[Achievement name 381]Keeper of the conservatory": "Guardião do conservatório", + "[Achievement name 382]Seedless to nay": "Demear a siscórdia", + "[Achievement name 383]You get nothing": "E você não ganha nada", + "[Achievement name 384]Humble rebeginnings": "Recomeços modestos", + "[Achievement name 385]The end of the world": "O fim do mundo", + "[Achievement name 386]Oh, you're back": "Ah, você voltou", + "[Achievement name 387]Lazarus": "Lázaro", + "[Achievement name 388]Leisurely pace": "Ritmo de lazer", + "[Achievement name 389]Hypersonic": "Hipersônico", + "[Achievement name 390]Feed me, Orteil": "Alimente-me, Orteil", + "[Achievement name 391]And then what?": "E depois?", + "[Achievement name 392]Tricentennial and a half": "Um tricentenário e meio", + "[Achievement name 393]Quadricentennial": "Quarto centenário", + "[Achievement name 394]Quadricentennial and a half": "Um quarto centenário e meio", + "[Achievement name 395]Quincentennial": "Quinto centenário", + "[Achievement name 396]Maillard reaction": "Reação de Maillard", + "[Achievement name 397]When the cookies ascend just right": "Quando os cookies ascendem no ponto", + "[Achievement name 398]With her finger and her thumb": "Com seu dedo e seu dedão", + "[Achievement name 399]Defense of the ancients": "Defesa das anciãs", + "[Achievement name 400]Sharpest tool in the shed": "Melhor ferramenta", + "[Achievement name 401]Hey now, you're a rock": "Ei, você é uma rocha", + "[Achievement name 402]Break the mold": "Quebrando o molde", + "[Achievement name 403]Get the show on, get paid": "Vá em frente e ganhe uma grana", + "[Achievement name 404]My world's on fire, how about yours": "Meu mundo caiu, e o seu", + "[Achievement name 405]The meteor men beg to differ": "Tem gente que discorda", + "[Achievement name 406]Only shooting stars": "Somos estrelas cadentes", + "[Achievement name 407]We could all use a little change": "Mudança é sempre bem-vinda", + "[Achievement name 408]Your brain gets smart but your head gets dumb": "Fique esperto, não fique burro", + "[Achievement name 409]The years start coming": "Os anos virão", + "[Achievement name 410]What a concept": "Que conceito", + "[Achievement name 411]You'll never shine if you don't glow": "Você não vai brilhar desse jeito", + "[Achievement name 412]You'll never know if you don't go": "Você não vai saber se não tentar", + "[Achievement name 413]Self-contained": "Autossuficiente", + "[Achievement name 414]Threw you for a loop": "Pego de surpresa", + "[Achievement name 415]The sum of its parts": "A soma das partes", + "[Achievement name 416]Bears repeating": "Figurinhas repetidas", + "[Achievement name 417]More of the same": "Mais do mesmo", + "[Achievement name 418]Last recurse": "Último recurso", + "[Achievement name 419]Out of one, many": "A partir de um, muitos", + "[Achievement name 420]An example of recursion": "Um exemplo de recursividade", + "[Achievement name 421]For more information on this achievement, please refer to its title": "Para mais informações sobre esta conquista, consulte seu título", + "[Achievement name 422]I'm so meta, even this achievement": "Sou tão metalinguístico, até nesta conquista", + "[Achievement name 423]Never get bored": "Tédio nunca mais", + "[Achievement name 424]The needs of the many": "As demandas de muitos", + "[Achievement name 425]Eating its own": "Comendo seus próprios", + "[Achievement name 426]We must go deeper": "Precisamos nos aprofundarmos", + "[Achievement name 427]Sierpinski rhomboids": "Romboides Sierpinski", + "[Achievement name 428]Gotta go fast": "Mais rápido", + "[Achievement name 429]I think it's safe to say you've got it made": "É seguro dizer que você tem a vida feita", + "[Achievement name 430]Renaissance baker": "Assador renascentista", + "[Achievement name 431]Veteran": "Veterano", + "[Achievement name 432]Thick-skinned": "Pele grossa", + "[Achievement name 433]F12": "F12", + "[Achievement name 434]Variable success": "Sucesso variável", + "[Achievement name 435]No comments": "Sem comentários", + "[Achievement name 436]Up to code": "Código em ordem", + "[Achievement name 437]Works on my machine": "Funciona na minha máquina", + "[Achievement name 438]Technical debt": "Dívida técnica", + "[Achievement name 439]Mind your language": "Que linguagem suja", + "[Achievement name 440]Inconsolable": "Inconsolável", + "[Achievement name 441]Closure": "Encerramento", + "[Achievement name 442]Dude what if we're all living in a simulation like what if we're all just code on a computer somewhere": "Cara, e se todo mundo estiver vivendo em uma simulação, tipo, e se todos forem só códigos em algum computador por aí?", + "[Achievement name 443]Taking the back streets": "Pegando um atalho", + "[Achievement name 444]Inherited prototype": "Protótipo herdado", + "[Achievement name 445]A model of document object": "Um modelo de objeto de documento", + "[Achievement name 446]First-class citizen": "Cidadão de primeira classe", + "[Achievement name 447]Alexandria": "Alexandria", + "[Achievement name 448]Bake him away, toys": "Assado não é roubado", + "[Achievement name 449]You're #1 so why try harder": "Sou o nº 1, então para que me esforçar?", + "[Achievement name 450]Haven't even begun to peak": "Nem comecei a me destacar", + "[Achievement name 451]A sometimes food": "Uma comida para de vez em quando", + "[Achievement name 452]Not enough of a good thing": "Não é o bastante", + "[Achievement name 453]Horn of plenty": "Abundância pura", + "[Achievement name 454]Smurf account": "Conta smurf", + "[Achievement name 455]If at first you don't succeed": "Se não der certo de primeira", + "[Achievement name 456]O Fortuna": "Ó Fortuna", + "[Achievement name 457]Initial public offering": "Oferta pública inicial", + "[Achievement name 458]Rookie numbers": "Valores amadores", + "[Achievement name 459]No nobility in poverty": "Sem nobreza na pobreza", + "[Achievement name 460]Full warehouses": "Depósitos cheios", + "[Achievement name 461]Make my day": "Melhore meu dia", + "[Achievement name 462]Buy buy buy": "Comprar comprar comprar", + "[Achievement name 463]Gaseous assets": "Bens gasosos", + "[Achievement name 464]Pyramid scheme": "Esquema de pirâmide", + "[Achievement name 465]Jellicles": "Jericós", + "[Achievement name 466]Quincentennial and a half": "Um quinto centenário e meio", + "[Achievement name 467]What did we even eat before these": "E o que a gente comia antes disso?", + "[Achievement name 468]Heavy flow": "Fluxo intenso", + "[Achievement name 469]More you say?": "Pediu mais?", + "[Achievement name 470]Large and in charge": "Grande e no comando", + "[Achievement name 471]Absolutely stuffed": "De bucho cheio", + "[Achievement name 472]It's only wafer-thin": "Bem fininho", + "[Achievement name 473]Clickety split": "Em poucos cliques", + "[Achievement name 474]Gotta hand it to you": "Preciso dar o cursor a torcer", + "[Achievement name 475]Okay boomer": "Ok, boomer", + "[Achievement name 476]Overripe": "Passado do ponto", + "[Achievement name 477]Rock on": "Cavando e cantando", + "[Achievement name 478]Self-manmade man": "Homem artificial independente", + "[Achievement name 479]Checks out": "Contas prestadas", + "[Achievement name 480]Living on a prayer": "Para louvar de pé", + "[Achievement name 481]Higitus figitus migitus mum": "Higitus figitus zumba kazão", + "[Achievement name 482]The incredible journey": "A incrível jornada", + "[Achievement name 483]Just a phase": "Só uma fase", + "[Achievement name 484]Don't let me leave, Murph": "Não me deixe ir embora, Murph", + "[Achievement name 485]Caveman to cosmos": "Homem das cavernas para o cosmos", + "[Achievement name 486]Particular tastes": "Gostos particulares", + "[Achievement name 487]A light snack": "Um lanchinho leve", + "[Achievement name 488]Tempting fate": "Destino tentador", + "[Achievement name 489]Tautological": "Tautológico", + "[Achievement name 490]Curly braces": "Chaves", + "[Achievement name 491]Seven horseshoes": "Sete ferraduras", + "[Achievement name 492]Olden days": "Velhos tempos", + "[Achievement name 493]The devil's workshop": "A oficina do diabo", + "[Achievement name 494]In the green": "Verde por todos os lados", + "[Achievement name 495]Mountain out of a molehill, but like in a good way": "Se você não vai até a montanha, a montanha vai até você, mas no bom sentido", + "[Achievement name 496]The wheels of progress": "As rodas do progresso", + "[Achievement name 497]That's rich": "Eu sou rica!", + "[Achievement name 498]Preaches and cream": "Orações e adorações", + "[Achievement name 499]Magic thinking": "Pensamentos mágicos", + "[Achievement name 500]Is there life on Mars?": "Existe vida em Marte?", + "[Achievement name 501]Bad chemistry": "Química do mal", + "[Achievement name 502]Reduced to gibbering heaps": "Reduzido a montes de lixo", + "[Achievement name 503]Back already?": "Já voltou?", + "[Achievement name 504]Nuclear throne": "Trono nuclear", + "[Achievement name 505]Making light of the situation": "A luz no fim do túnel", + "[Achievement name 506]Flip a cookie. Chips, I win. Crust, you lose.": "Vamos tirar no cookie. Gotas, eu venço. Crosta, você perde.", + "[Achievement name 507]In and of itself": "Em si e de si mesmo", + "[Achievement name 508]Duck typing": "Digitação de pato", + "[Achievement name 509]They'll never know what hit 'em": "Nunca vão saber o que os atingiu", + "[Achievement name 510]Well-versed": "Bem versado", + "[Achievement name 511]Ripe for the picking": "Pronto para colher", + "[Achievement name 512]Unreal": "Irreal", + "[Achievement name 513]Once you've seen one": "São todos iguais", + "[Achievement name 514]Spoils and plunder": "Espólios e pilhagem", + "[Achievement name 515]Nobody exists on purpose, nobody belongs anywhere": "Ninguém existe de propósito, ninguém pertence a lugar nenhum", + "[Achievement name 516]Hyperspace expressway": "Autoestrada do hiperespaço", + "[Achievement name 517]Versatile": "Versátil", + "[Achievement name 518]You are inevitable": "Você é inevitável", + "[Achievement name 519]Away from this place": "Fora desse lugar", + "[Achievement name 520]Everywhere at once": "Em todos os lugares ao mesmo tempo", + "[Achievement name 521]Reject reality, substitute your own": "Rejeite a realidade, substitua a sua", + "[Achievement name 522]Fringe": "De outro universo", + "[Achievement name 523]Coherence": "Coerência", + "[Achievement name 524]Earth-616": "Terra-616", + "[Achievement name 525]Strange topologies": "Topologias estranhas", + "[Achievement name 526]Grand design": "Grande projeto", + "[Achievement name 527]Ecumenopolis": "Ecumenópole", + "[Achievement name 528]The full picture": "O quadro geral", + "[Achievement name 529]When there's nothing left to add": "Quando não há mais nada a acrescentar", + "[Achievement name 530]Sexcentennial": "Sexto centenário", + "[Achievement name 531]Keep going until I say stop": "Continue até eu dizer para parar", + "[Achievement name 532]But I didn't say stop, did I?": "Mas eu não disse para parar, disse?", + "[Achievement name 533]With unrivaled fervor": "Com um fervor inigualável", + "[Achievement name 534]Think big": "Sonhe alto", + "[Achievement name 535]Hypersize me": "Hipertamanho", + "[Achievement name 536]Max capacity": "Capacidade máxima", + "[Achievement name 537]Liquid assets": "Bens líquidos", + "[Achievement name 538]Stifling the press": "Sufocando as prensas", + "[Achievement name 539]It's big brain time": "É hora do grande cérebro", + "[Achievement name 540]Just my imagination": "Só minha imaginação", + "[Achievement name 541]Now there's an idea": "Isso sim é uma boa ideia", + "[Achievement name 542]The organ that named itself": "O órgão que nomeou a si mesmo", + "[Achievement name 543]Gyrification": "Girificação", + "[Achievement name 544]A trademarked portmanteau of \"imagination\" and \"engineering\"": "Uma palavra registrada juntando \"imaginação\" e \"engenharia\"", + "[Achievement name 545]Mindfulness": "Mindfulness", + "[Achievement name 546]The 10% myth": "O mito dos 10%", + "[Achievement name 547]Don't think about it too hard": "Não pense demais nisso", + "[Achievement name 548]Though fools seldom differ": "Embora os tolos dificilmente diferenciem", + "[Achievement name 549]Looking kind of dumb": "Parece meio burro", + "[Achievement name 550]A beautiful mind": "Uma mente brilhante", + "[Achievement name 551]Cardinal synapses": "Sinapses cardinais", + "[Achievement name 552]Positive thinking": "Pensamento positivo", + "[Achievement name 553]The thought that counts": "A intenção que conta", + "[Achievement name 554]Unthinkable": "Impensável", + "[Achievement name 555]Gifted": "Dotado", + "[Achievement name 556]They moistly come at night": "Eles vêm úmidos à noite", + "[Achievement name 557]It's grown on you": "Cresceu em você", + "[Achievement name 558]Don't let the walls cave in on you": "Não deixe os muros caírem em você", + "[Achievement name 559]Replaced by robots": "Substituído por robôs", + "[Achievement name 560]Financial prodigy": "Prodígio financeiro", + "[Achievement name 561]And I will pray to a big god": "E eu vou rezar para um deus grande", + "[Achievement name 562]Shosple Colupis": "Shosple Colupis", + "[Achievement name 563]False vacuum": "Falso vácuo", + "[Achievement name 564]Metallic taste": "Gosto metálico", + "[Achievement name 565]Swiss cheese": "Queijo suíço", + "[Achievement name 566]But the future refused to change": "Mas o futuro se recusou a mudar", + "[Achievement name 567]What's the dark matter with you": "Que matéria escura é essa", + "[Achievement name 568]Enlightenment": "Iluminação", + "[Achievement name 569]Never tell me the odds": "Nunca me diga as chances", + "[Achievement name 570]Blowing an Apollonian gasket": "Soprando uma rede apoloniana", + "[Achievement name 571]Get with the program": "Entre no esquema", + "[Achievement name 572]Lost your cosmic marbles": "Perdeu suas noção cósmica", + "[Achievement name 573]By will alone I set my mind in motion": "Apenas pela vontade eu coloco minha mente em ação", + "[Achievement name 574]Ain't that a click in the head": "Isso não é um clique na cabeça", + "[Achievement name 575]Sexcentennial and a half": "Um sexcentenário e meio", + "[Achievement name 576]I am speed": "Eu sou a velocidade", + "[Achievement name 577]And on and on": "E assim por diante", + "[Achievement name 578]Fake it till you bake it": "Finja até assar", + "[Achievement name 579]History in the baking": "História sendo assada", + "[Achievement name 580]Baby it's old outside": "Gata, está frio lá fora", + "[Achievement name 581]Myriad": "Miríade", + "[Achievement name 582]Kaizen": "Kaizen", + "[Achievement name 583]Beyond quality": "Além da qualidade", + "[Achievement name 584]Everything happens so much": "Tudo acontece tanto", + "[Achievement name 585]I'll rest when I'm dead": "Vou descansar quando tiver morrido", + "[Achievement name 586]What do you get for the baker who has everything": "O que dar ao confeiteiro que tem tudo", + "[Achievement name 587]Bottomless pit": "Poço sem fundo", + "[Achievement name 588]All the stars in heaven": "Todas as estrelas do céu" +}); \ No newline at end of file diff --git a/gversion/gs/cookieclicker/loc/RU.js b/gversion/gs/cookieclicker/loc/RU.js new file mode 100644 index 0000000..a6563a7 --- /dev/null +++ b/gversion/gs/cookieclicker/loc/RU.js @@ -0,0 +1,3303 @@ +AddLanguage('RU','russian',{ + "": { + "language": "RU", + "plural-forms": "nplurals=2;plural=(n!=1);" + }, + "cookie": "печенье", + "sugar lump": "кусочек сахара", + "heavenly chip": "небесные крошка", + "wrinkler": "морщинник", + "building": "строение", + "upgrade": "улучшение", + "golden cookie": "золотое печенье", + "grandmapocalypse": "бабулепокалипсис", + "%1 cookie": [ + "%1 печенье", + "печенья: %1" + ], + "%1 sugar lump": [ + "%1 кусочек сахара", + "кусочков сахара: %1" + ], + "%1 heavenly chip": [ + "%1 небесная крошка", + "небесных крошек: %1" + ], + "%1 golden cookie": [ + "%1 золотое печенье", + "золотого печенья: %1" + ], + "%1 building": [ + "%1 строение", + "строений: %1" + ], + "%1 upgrade": [ + "%1 улучшение", + "улучшений: %1" + ], + "Yes": "Да", + "No": "Нет", + "Click here": "Нажмите здесь", + "Don't show this again": "Больше не показывать", + "Delete all": "Удалить все", + "Back": "Назад", + "Confirm": "Подтвердить", + "All done!": "Все сделано!", + "Load": "Загрузить", + "Save": "Сохранить", + "Quit": "Выйти", + "Save & Quit": "Сохранить и выйти", + "Cancel": "Отменить", + "Nevermind": "Неважно", + "Random": "Случайно", + "You have %1.": "У вас %1.", + "Click": "Клик", + "Shift": "/", + "Shift-click": "Shift + клик", + "Ctrl": "/", + "Ctrl-click": "Ctrl + клик", + "Esc": "/", + "Cookies": "Печенья", + "%1 day": [ + "%1 день", + "%1 дн." + ], + "%1 hour": [ + "%1 ч", + "%1 ч" + ], + "%1 minute": [ + "%1 мин", + "%1 мин" + ], + "%1 second": [ + "%1 с", + "%1 с" + ], + "less than 1 second": "меньше 1 с", + "in %1": "за %1", + "%1 ago": "%1 назад", + "%1 remaining": "осталось: %1", + "%1 worth": "стоит: %1", + "%1 of CpS": "%1 из ПвС", + "%1% of bank": "%1% банка", + "per second:": "в секунду:", + "just now": "только что", + "a long while": "давно", + "forever": "навсегда", + "Time remaining:": "Осталось:", + "Big clickable cookie": "Большое кликабельное печенье", + "Golden cookie": "Золотое печенье", + "Wrath cookie": "Яростное печенье", + "Reindeer": "Олень", + "Options": "Настройки", + "General": "Общие", + "Settings": "Параметры", + "Volume": "Громкость", + "Volume (music)": "Громкость (музыка)", + "ON": "ВКЛ", + "OFF": "ВЫКЛ", + "Fancy graphics": "Шикарная графика", + "CSS filters": "Фильтры CSS", + "visual improvements; disabling may improve performance": "визуальные улучшения; отключение может повысить производительность", + "Particles": "Частицы", + "Numbers": "Числа", + "numbers that pop up when clicking the cookie": "числа, которые появляются при нажатии на печенье", + "Milk [setting]": "Молоко", + "Cursors [setting]": "Курсоры", + "visual display of your cursors": "визуальное отображение курсоров", + "Wobbly cookie": "Дрожащее печенье", + "Alt cookie sound": "Альтернативный звук печенья", + "Icon crates": "Рамки значков", + "display boxes around upgrades and achievements in Stats": "отображать рамки вокруг улучшений и достижений в статистике", + "Alt font": "Альтернативный шрифт", + "your cookies are displayed using a monospace font": "печенье отображается с моноширинным шрифтом", + "Short numbers": "Короткие числа", + "Fast notes": "Быстрые заметки", + "notifications disappear much faster": "уведомления исчезают намного быстрее", + "Closing warning": "Предупреждение о закрытии", + "the game will ask you to confirm when you close the window": "при закрытии окна игры отображается запрос подтверждения", + "Defocus": "Расфокусировать", + "the game will be less resource-intensive when out of focus": "игра будет менее ресурсоемкой, если изображение будет нечетким", + "Extra buttons": "Дополнительные кнопки", + "add options on buildings like Mute": "добавить параметры строений, например, Отключение звука", + "Lump confirmation": "Подтверждение для кусочков", + "the game will ask you to confirm before spending sugar lumps": "прежде чем тратить кусочки сахара, игра отобразит запрос подтверждения", + "Custom grandmas": "Пользовательские бабули", + "some grandmas will be named after Patreon supporters": "некоторые бабули будут названы в честь спонсоров на Patreon", + "Scary stuff": "Жуткие вещи", + "Sleep mode timeout": "Тайм-аут спящего режима", + "on slower computers, the game will put itself in sleep mode when it's inactive and starts to lag out; offline CpS production kicks in during sleep mode": "на более медленных компьютерах игра переходит в спящий режим, когда она неактивна, и начинает притормаживать; при этом запускается производство печ/с в автономном режиме", + "Music in background": "Фоновая музыка", + "music will keep playing even when the game window isn't focused": "Музыка будет играть, даже если окно с игрой неактивно", + "Cloud saving": "Сохранение в облако", + "allow use of Steam Cloud for save backups": "позволяет использовать Steam Cloud для сохранения резервных копий", + "Purge Cloud": "Очистить облако", + "Current Cloud use:": "Текущее использование облака:", + "No Cloud access at the moment.": "Сейчас нет доступа к облаку.", + "Screen reader mode": "Режим чтения с экрана", + "allows optimizations for screen readers; game will reload": "позволяет оптимизировать средства для чтения с экрана; игра будет перезапущена", + "Discord status": "Статус в Discord", + "if Discord is on, show your game info as activity status": "Если Discord включен, покажите сведения о своей игре в качестве статуса активности", + "Language": "Язык", + "Language: %1": "Язык: %1", + "Change language": "Сменить язык", + "note: this will save and reload your game": "Внимание: при этом игра сохранится и перезагрузится.", + "Press %1 to toggle fullscreen.": "Нажмите %1, чтобы развернуть на весь экран.", + "Other versions": "Другие версии", + "Beta": "Бета", + "Stats": "Статистика", + "Shadow achievements": "Теневые достижения", + "These are feats that are either unfair or difficult to attain. They do not give milk.": "Это цели, которые либо неправильны, либо труднодостижимы. Они не приносят молока.", + "starter milk": "молоко для начинающего", + "for %1 achievements": "за %1 достижений", + "appeased": "спокойная", + "awoken": "разбуженная", + "displeased": "недовольная", + "angered": "рассерженная", + "Cookies in bank:": "Печенья в банке:", + "Cookies baked (this ascension):": "Приготовлено печенья (за это восхождение):", + "Cookies baked (all time):": "Приготовлено печенья (за все время):", + "Cookies forfeited by ascending:": "Печенье расходуется по возрастанию:", + "Legacy started:": "Начало наследия положено:", + "with %1 ascension": [ + "за %1 восхождение", + "за %1 восхождений" + ], + "Run started:": "Прохождение началось:", + "Buildings owned:": "Строений куплено:", + "Cookies per second:": "Печенья в секунду:", + "Raw cookies per second:": "Сырого печенья в секунду", + "highest this ascension:": "макс. за это восхождение:", + "multiplier:": "множитель:", + "withered:": "засохшие:", + "Cookies per click:": "Печенья за клик:", + "Cookie clicks:": "Кликов по печенью:", + "Hand-made cookies:": "Домашнее печенье:", + "Golden cookie clicks:": "Кликов по золотому печенью:", + "Random drop multiplier:": "Множитель случайного выпадения:", + "all time:": "за все время:", + "Running version:": "Запущенная версия:", + "Special": "Специальные", + "Challenge mode:": "Режим испытаний:", + "Seasonal event:": "Сезонное событие:", + "Research:": "Исследование:", + "Grandmatriarchs status:": "Статус бабульматриархов:", + "Pledge:": "Залог:", + "Wrinklers popped:": "Полопано морщинников:", + "Sugar lumps harvested:": "Собрано кусочков сахара:", + "Reindeer found:": "Найдено оленей:", + "Santa stages unlocked:": "Разблокировано стадий Санты:", + "Dragon training:": "Обучение дракона:", + "Prestige": "Престиж", + "at %1% of its potential (+%2% CpS)": "при %1% потенциала (+%2% печ/с)", + "Prestige upgrades unlocked:": "Разблокировано улучшений престижа:", + "Upgrades unlocked:": "Разблокировано улучшений:", + "Achievements unlocked:": "Разблокировано достижений:", + "Kitten multiplier:": "Множитель котят:", + "Milk": "Молоко", + "Milk:": "Молоко:", + "Milk flavors unlocked:": "Разблокировано молочных вкусов:", + "Milk is gained with each achievement. It can unlock unique upgrades over time.": "Молоко дается за каждое достижение. Со временем оно может разблокировать уникальные улучшения.", + "Rank %1": "Ранг %1", + "Automatic": "Автоматически", + "Plain milk": "Обычное молоко", + "Chocolate milk": "Шоколадное молоко", + "Raspberry milk": "Малиновое молоко", + "Orange milk": "Апельсиновое молоко", + "Caramel milk": "Карамельное молоко", + "Banana milk": "Банановое молоко", + "Lime milk": "Лаймовое молоко", + "Blueberry milk": "Черничное молоко", + "Strawberry milk": "Клубничное молоко", + "Vanilla milk": "Ванильное молоко", + "Zebra milk": "Молоко зебры", + "Cosmic milk": "Космическое молоко", + "Flaming milk": "Огненное молоко", + "Sanguine milk": "Кровавое молоко", + "Midas milk": "Мидасово молоко", + "Midnight milk": "Полуночное молоко", + "Green inferno milk": "Молоко зеленой преисподней", + "Frostfire milk": "Молоко морозного пламени", + "Honey milk": "Медовое молоко", + "Coffee milk": "Кофейное молоко", + "Tea milk": "Чайное молоко", + "Coconut milk": "Кокосовое молоко", + "Cherry milk": "Вишневое молоко", + "Soy milk": "Соевое молоко", + "Spiced milk": "Молоко с пряностями", + "Maple milk": "Кленовое молоко", + "Mint milk": "Мятное молоко", + "Licorice milk": "Лакричное молоко", + "Rose milk": "Розовое молоко", + "Dragonfruit milk": "Молоко со вкусом питайи", + "Info": "Информация", + "About": "Об игре", + "Cookie Clicker is a javascript game by %1 and %2.": "Cookie Clicker — это игра, написанная на JavaScript %1 и %2.", + "Music by %1.": "Автор музыки: %1.", + "Useful links: %1, %2, %3, %4.": "Полезные ссылки: %1, %2, %3, %4.", + "This version of Cookie Clicker is 100% free, forever. Want to support us so we can keep developing games? Here's some ways you can help:%1": "Эта версия Cookie Clicker абсолютно бесплатна — навсегда. Хотите поддержать нас, чтобы мы могли продолжать разработку игр? Вот несколько способов, как вы можете нам помочь:%1", + "Note: if you find a new bug after an update and you're using a 3rd-party add-on, make sure it's not just your add-on causing it!": "Примечание. Если вы обнаружили новую ошибку после обновления и используете стороннее дополнение, сначала убедитесь, что причина не в этом дополнении!", + "Warning: clearing your browser cache or cookies (what else?) will result in your save being wiped. Export your save and back it up first!": "Предупреждение! Очистка кэша браузера или файлов cookie (чего же еще?) приведет к удалению сохраненных данных. Сначала экспортируйте свои сохраненные данные и сделайте резервную копию!", + "Version history": "История версий", + "Official website": "Официальный сайт", + "Note: links will open in your web browser.": "Внимание: ссылки откроются в браузере.", + "Note: older update notes are in English.": "Внимание: описания прошлых обновлений на английском.", + "This feature is not yet available in your language.": "Данная функция пока недоступна на вашем языке.", + "Restart with new changes": "Перезапустить с изменениями", + "Cookie Clicker is in sleep mode.": "Cookie Clicker находится в спящем режиме.", + "Cookie Clicker is in sleep mode and generating offline cookies.": "Cookie Clicker находится в спящем режиме и производит печенье оффлайн.", + "%1 to resume from your save file.": "%1, чтобы возобновить игру из сохраненного файла.", + "(this happens when too many frames are skipped at once,
usually when the game has been running in the background for a while)
(you can turn this feature off in the settings menu)": "(это происходит, когда сразу пропускается слишком много кадров.
Обычно такое бывает, когда игра какое-то время работала в фоновом режиме.)
(Эту функцию можно отключить в меню настроек.)", + "Are you sure you want to close Cookie Clicker?": "Вы действительно хотите закрыть Cookie Clicker?", + "Back up your save!": "Сделайте резервную копию сохраненных данных!", + "Hello again! Just a reminder that you may want to back up your Cookie Clicker save every once in a while, just in case.
To do so, go to Options and hit \"Export save\" or \"Save to file\"!": "Привет еще раз! Напоминаем, что вы можете иногда делать резервную копию сохраненных данных Cookie Clicker — на всякий случай.
Для этого перейдите в меню параметров и нажмите «Экспорт сохраненных данных» или «Сохранить в файл»!", + "Save manually (the game autosaves every 60 seconds; shortcut: ctrl+S)": "Сохранять вручную (игра автоматически сохраняется каждые 60 секунд; сочетание клавиш: Ctrl+S)", + "You can use this to backup your save or to transfer it to another computer (shortcut for import: ctrl+O)": "Эта функция используется для резервного копирования сохраненных данных или для их переноса на другой компьютер (сочетание клавиш для импорта: Ctrl+O)", + "Save to file": "Сохранить в файл", + "Load from file": "Загрузить из файла", + "Use this to keep backups on your computer": "Эта функция используется для хранения резервных копий на компьютере", + "Export save": "Экспорт сохраненных данных", + "This is your save code.
Copy it and keep it somewhere safe!": "Это ваш код сохранения.
Скопируйте его и храните в надежном месте!", + "Import save": "Импорт сохраненных данных", + "Please paste in the code that was given to you on save export.": "Введите код, полученный при экспорте сохраненных данных.", + "Game saved": "Игра сохранена", + "Game loaded": "Игра загружена", + "Error while saving": "Не удалось сохраненить", + "Export your save instead!": "Экспортировать сохраненные данные вместо этого!", + "Error importing save": "Не удалось импортировать сохраненные данные", + "Oops, looks like the import string is all wrong!": "Ой! Похоже, указана неправильна строка импорта!", + "You are attempting to load a save from a future version (v. %1; you are using v. %2).": "Вы пытаетесь загрузить сохраненные данные из более новой версии (версия %1; а вы используете версию % 2).", + "Sorry, you can't import saves from the classic version.": "К сожалению, невозможно импортировать сохраненные данные из классической версии.", + "Wipe save": "Удалить сохраненные данные", + "Delete all your progress, including your achievements": "Вы удалите весь свой прогресс, включая достижения", + "Do you REALLY want to wipe your save?
You will lose your progress, your achievements, and your heavenly chips!": "Вы ДЕЙСТВИТЕЛЬНО хотите удалить сохраненные данные?
Вы потеряете свой прогресс, достижения и небесные крошки!", + "Whoah now, are you really, REALLY sure you want to go through with this?
Don't say we didn't warn you!": "Эй! Вы действительно, ДЕЙСТВИТЕЛЬНО уверены, что хотите сделать это?
Потом не говорите, что мы вас не предупреждали!", + "Game reset": "Сброс игры", + "Good bye, cookies.": "Прощайте, печеньки.", + "Welcome back!": "С возвращением!", + "You earned %1 while you were away.": "Пока вас не было, вы заработали %1.", + "Mods": "Моды", + "Manage mods": "Управление модами", + "Publish mods": "Публикация модов", + "Update published mods": "Обновить опубликованные моды", + "Only use mods from trusted sources. Some mods may require a game restart to take effect.": "Устанавливайте моды лишь из проверенных источников. Для корректной работы некоторых модов нужно перезапустить игру.", + "Enable": "Включить", + "Disable": "Отключить", + "Priority up": "Повысить приоритет", + "Priority down": "Понизить приоритет", + "New mod": "Новый мод", + "Select folder": "Выбрать папку", + "Select updated folder": "Выберите новую папку", + "Select a mod.": "Выберите мод.", + "Open folder": "Открыть папку", + "Open Workshop": "Открыть мастерскую", + "Open Workshop page": "Открыть страницу мастерской", + "Unsubscribe": "Отписаться", + "Local mod": "Локальный мод", + "Open %1 folder": "Открыть папку «%1»", + "Description": "Описание", + "Image": "Изображение", + "Name": "Имя", + "Title": "Название", + "Visibility": "Видимость", + "Author": "Автор", + "File size": "Размер файла", + "Tags": "Метки", + "Dependencies": "Взаимозависимости", + "Publish to Workshop": "Опубликовать в мастерской", + "Version": "Версия", + "Error!": "Ошибка!", + "none": "нет", + "Publishing...": "Публикация…", + "Updating...": "Идет обновление…", + "Success!": "Готово!", + "Refresh": "Обновить", + "Last update:": "Последнее обновление:", + "Mods are loaded from top to bottom.": "Моды загружаются сверху вниз.", + "Some mods couldn't be loaded:": "Не удалось загрузить некоторые моды:", + "This tool allows you to upload new mods to the Steam Workshop.
You need to select a mod folder containing a properly-formatted %1 file.
See the included sample mods for examples.": "Инструмент позволяет загружать новые моды в Steam Workshop.
Выберите папку модов с %1-файлом подходящего формата.
Смотрите включенные примеры модов.", + "Mod data": "Данные мода", + "No mod data present.": "Нет данных мода.", + "These are the mods present in your save data. You may delete some of this data to make your save file smaller.": "Это моды, имеющиеся в ваших сохраненных данных. Можно удалить часть этих данных, чтобы уменьшить размер сохраненного файла.", + "(loaded)": "(загружено)", + "%1 char": [ + "%1 символ", + "символов: %1" + ], + "Check mod data": "Проверить данные мода", + "view and delete save data created by mods": "просмотреть и удалить сохраненные данные, созданные модами", + "New update!": "Новое обновление!", + "New version available: v. %1!": "Доступна новая версия: %1!", + "Update note: \"%1\"": "Примечание к обновлению: «%1»", + "Refresh to get it!": "Обновите игру, чтобы получить новую версию!", + "You are currently playing Cookie Clicker on the %1 protocol.
The %2 version uses a different save slot than this one.
Click this lock to reload the page and switch to the %2 version!": "В настоящее время Cookie Clicker используется по протоколу %1.
Версия %2 использует другой слот сохранений.
Щелкните этот замок, чтобы перезагрузить страницу и установить версию %2!", + "+%1 more notification.": [ + "еще +%1 уведомление.", + "еще уведомлений: +%1." + ], + "Christmas": "Рождество", + "Valentine's day": "День Святого Валентина", + "Business day": "Бизнес-день", + "Easter": "Пасха", + "Halloween": "Хэллоуин", + "%1 has started!": "%1 запущено!", + "%1 is over.": "%1 завершено.", + "%1's bakery": "Пекарня %1", + "Name your bakery": "Назовите свою пекарню", + "What should your bakery's name be?": "Как должна называться ваша пекарня?", + "bakery random name, 1st half": [ + "Волшебный", + "Фантастический", + "Красивый", + "Дерзкий", + "Шикарный", + "Хорошенький", + "Милый", + "Пират", + "Ниндзя", + "Зомби", + "Робот", + "Радикальный", + "Урбанистический", + "Классный", + "Нереальный", + "Сладкий", + "Ужасный", + "Двойной", + "Тройной", + "Турбо", + "Техно", + "Диско", + "Электро", + "Танцующий", + "Удивительный", + "Мутант", + "Космос", + "Наука", + "Средневековый", + "Будущее", + "Капитан", + "Бородатый", + "Прекрасный", + "Крошечный", + "Большой", + "Огонь", + "Вода", + "Замороженный", + "Металлический", + "Пластиковый", + "Твердый", + "Жидкий", + "Заплесневелый", + "Блестящий", + "Счастливый", + "Счастливый малыш", + "Скользкий", + "Вкусный", + "Очень вкусный", + "Голодный", + "Жадный", + "Смертельный", + "Профессор", + "Доктор", + "Сила", + "Шоколад", + "Рассыпчатый", + "Шоколадный", + "Праведный", + "Знаменитый", + "Символический", + "Экстрасенс", + "Неистовый", + "Суматошный", + "Безумный", + "Королевский", + "Эль", + "Фон" + ], + "bakery random name, 2nd half": [ + "Печенье", + "Бисквит", + "Маффин", + "Лепешка", + "Капкейк", + "Блинчик", + "Чипсы", + "Звездочка", + "Штучка", + "Кукла", + "Рукавички", + "Носочки", + "Чайник", + "Тайна", + "Пекарь", + "Повар", + "Бабуля", + "Клик", + "Кликер", + "Космический корабль", + "Фабрика", + "Портал", + "Машина", + "Эксперимент", + "Чудовище", + "Паника", + "Грабитель", + "Бандит", + "Трофей", + "Картофель", + "Пицца", + "Бургер", + "Колбаса", + "Фрикадельки", + "Спагетти", + "Макароны", + "Котенок", + "Щенок", + "Жираф", + "Зебра", + "Попугай", + "Дельфин", + "Утенок", + "Ленивец", + "Черепаха", + "Гоблин", + "Эльф", + "Гном", + "Компьютер", + "Пират", + "Ниндзя", + "Зомби", + "Робот" + ], + "%1, age %2": "%1, возраст: %2", + "Sugar lumps!": "Кусочки сахара!", + "Because you've baked a billion cookies in total, you are now attracting sugar lumps. They coalesce quietly near the top of your screen, under the Stats button.
You will be able to harvest them when they're ripe, after which you may spend them on all sorts of things!": "Поскольку вы испекли в общей сложности миллиард печенек, вы получаете кусочки сахара. Они незаметно растут в верхней части экрана под кнопкой статистики.
Когда они созреют, их можно собрать, а затем потратить на что угодно!", + "A sugar lump is coalescing here, attracted by your accomplishments.": "Здесь зреет кусочек сахара, полученный за ваши достижения.", + "Your sugar lumps mature after %1,
ripen after %2,
and fall after %3.": "Кусочки сахара растут %1,
созревают %2,
а через %3 они падают.", + "• Sugar lumps can be harvested when mature, though if left alone beyond that point they will start ripening (increasing the chance of harvesting them) and will eventually fall and be auto-harvested after some time.
• Sugar lumps are delicious and may be used as currency for all sorts of things.
• Once a sugar lump is harvested, another one will start growing in its place.
• Note that sugar lumps keep growing when the game is closed.": "• Кусочки сахара можно собирать, когда они вырастут. Если их не собрать, они начнут созревать (увеличивая вероятность их успешного сбора) и, в конечном итоге, упадут и будут собраны автоматически через некоторое время.
• Кусочки сахара очень вкусные, и их можно использовать в качестве валюты для покупки самых разных вещей.
• После сбора кусочка сахара на его месте сразу начнет расти новый.
Обратите внимание, что кусочки сахара продолжают расти, даже когда игра закрыта.", + "This sugar lump has been exposed to time travel shenanigans and will take an excruciating %1 to reach maturity.": "Этот кусочек сахара подвергся махинациям с машиной времени, и нужно ждать еще %1, пока он созреет.", + "This sugar lump is still growing and will take %1 to reach maturity.": "Этот кусочек сахара еще растет и созреет через %1.", + "This sugar lump is mature and will be ripe in %1.
You may click it to harvest it now, but there is a 50% chance you won't get anything.": "Этот кусочек сахара уже вырос и созреет через %1.
Можно щелкнуть кусочек, чтобы собрать его сейчас, но есть вероятность 50%, что вы ничего не получите.", + "This sugar lump is ripe! Click it to harvest it.
If you do nothing, it will auto-harvest in %1.": "Этот кусочек сахара созрел! Щелкните по нему, чтобы собрать.
Если ничего не делать, то через %1 он будет собран автоматически.", + "This sugar lump grew to be bifurcated; harvesting it has a 50% chance of yielding two lumps.": "Этот кусочек сахара вырос двойным; при сборе существует вероятность 50%, что вы получите два кусочка.", + "This sugar lump grew to be golden; harvesting it will yield 2 to 7 lumps, your current cookies will be doubled (capped to a gain of 24 hours of your CpS), and you will find 10% more golden cookies for the next 24 hours.": "Этот кусочек сахара вырос золотым; при сборе вы получите от 2 до 7 кусочков, текущее количество печенья будет удвоено (печ/с вырастет на 24 часа), и вы найдете на 10% больше золотых печенек в течение следующих 24 часов.", + "This sugar lump was affected by the elders and grew to be meaty; harvesting it will yield between 0 and 2 lumps.": "Этот кусочек сахара подвергся влиянию старушек и стал мясным; при сборе вы получите от 0 до 2 кусочков.", + "This sugar lump is caramelized, its stickiness binding it to unexpected things; harvesting it will yield between 1 and 3 lumps and will refill your sugar lump cooldowns.": "Этот кусочек сахара карамельный, он может прилипать к неожиданным вещам; при сборе вы получите от 1 до 3 кусочков, кроме того будут сброшены кулдауны для сахарков.", + "You harvested %1 while you were away.": "Пока вас не было, вы собрали %1.", + "Sugar blessing activated!": "Сахарное благословение активировано!", + "Your cookies have been doubled.
+10% golden cookies for the next 24 hours.": "Количество печенья удвоено.
На 10% больше золотых печенек в течение следующих 24 часов.", + "Sugar lump cooldowns cleared!": "Кулдауны сахарных кусочков сброшены!", + "Botched harvest!": "Неудачный сбор!", + "Do you want to spend %1 to %2?": "Хотите потратить от %1 до %2?", + "Heralds": "Вестники", + "%1 herald": [ + "%1 вестник", + "вестников: %1" + ], + "Heralds couldn't be loaded. There may be an issue with our servers, or you are playing the game locally.": "Невозможно загрузить вестников. Возможно, проблема связана с нашими серверами, или вы играете без подключения к Интернету.", + "There are no heralds at the moment. Please consider donating to our Patreon!": "В данный момент вестников нет. Вы можете оказать нам финансовую поддержку на Patreon!", + "selflessly inspiring a boost in production for everyone, resulting in %1.": "самозабвенно вдохновляя всех на ускорение, они повышают производительность на %1.", + "+%1% cookies per second": "+%1% печенья в секунду", + "You are in a Born again run, and are not currently benefiting from heralds.": "Вы участвуете в испытании Новое рождение и в настоящее время вестники для вас недоступны.", + "You own the Heralds upgrade, and therefore benefit from the production boost.": "У вас есть улучшение Вестник , поэтому ваша производительность увеличится.", + "To benefit from the herald bonus, you need a special upgrade you do not yet own. You will permanently unlock it later in the game.": "Чтобы воспользоваться бонусом вестника, вам нужно специальное улучшение, которого у вас еще нет. Вы навсегда разблокируете его позже в игре.", + "Heralds are people who have donated to our highest Patreon tier, and are limited to 100.
Each herald gives everyone +1% CpS.
Heralds benefit everyone playing the game, regardless of whether you donated.": "Вестники — это люди, которые сделали пожертвования на Patreon на самом высоком уровне. Их количество ограничено 100 человек.
Каждый вестник дает каждому игроку +1% к печ/с.
Вестники дают преимущество всем игрокам, независимо от того, сделали ли они пожертвование.", + "Every %1 current players on Steam generates 1 herald, up to %2 heralds.
Each herald gives everyone +1% CpS.": "Каждый %1-й из текущих игроков в Steam производит 1 вестника, но не более %2.
Каждый вестник дает всем +1% ПвС.", + "+%1!": "/", + "You found %1!": "Вы нашли %1!", + "Found %1!": "Нашли %1!", + "You also found %1!": "А еще нашли %1!", + "Lost %1!": "Потеряли %1!", + "Sweet!
Found 1 sugar lump!": "Сладко!
Найден 1 кусочек сахара!", + "Lucky!": "Повезло!", + "Ruin!": "Разорение!", + "Cookie chain over. You made %1.": "Цепочка печенья закончилась. Вы испекли %1.", + "Cookie chain": "Цепочка печенья", + "Cookie chain broken.
You made %1.": "Цепочка печенья оборвалась.
Вы испекли %1.", + "Cookie blab": [ + "Рассыпчатость печенья x3 на 60 секунд!", + "Шоколадность x7 на 77 секунд!", + "Эластичность теста вдвое меньше на 66 секунд!", + "Блеск золотого печенья в два раза сильнее на 3 секунды!", + "Мировая экономика вдвое меньше на 30 секунд!", + "Бабулины поцелуи на 23% крепче на 45 секунд!", + "Спасибо за клик!", + "Шутка! Это была просто проверка.", + "+1 клик по золотому печенью!", + "Ваш клик зарегистрирован. Благодарим за сотрудничество.", + "Спасибо! Прямо в точку!", + "Спасибо. Отправлено команде.", + "Они в курсе.", + "Ой. Это оказалось обычное шоколадное печенье в блестящей фольге." + ], + "Exploded a wrinkler": "Морщинник лопнул", + "Exploded a shiny wrinkler": "Блестящий морщинник лопнул", + "Swallowed:": "Проглотил:", + "Reindeer names": [ + "Дашер", + "Дансер", + "Прансер", + "Виксен", + "Комета", + "Амур", + "Доннер", + "Блитцен", + "Рудольф" + ], + "The reindeer gives you %1.": "Олень дает вам %1.", + "You are also rewarded with %1!": "Вы также получаете %1!", + "You are granted %1.": "Вам предоставляется %1.", + "Found a present!": "Найден подарок!", + "You find a present which contains...": "Вы нашли подарок, в котором...", + "Evolve": "Эволюционировать", + "Festive test tube": "Праздничная пробирка", + "Festive ornament": "Праздничное украшение", + "Festive wreath": "Праздничный венок", + "Festive tree": "Праздничная елка", + "Festive present": "Праздничный подарок", + "Festive elf fetus": "Праздничный эльф", + "Elf toddler": "Эльф-малыш", + "Elfling": "Эльфёнок", + "Young elf": "Молодой эльф", + "Bulky elf": "Крупный эльф", + "Nick": "Ник", + "Santa Claus": "Санта Клаус", + "Elder Santa": "Древний Санта", + "True Santa": "Истинный Санта", + "Final Claus": "Последний Клаус", + "Dragon egg": "Драконье яйцо", + "Shivering dragon egg": "Дрожащее драконье яйцо", + "Krumblor, cookie hatchling": "Крамблор, детеныш печенья", + "Krumblor, cookie dragon": "Крамблор, дракон печенья", + "Train %1": "Обучение %1", + "Aura: %1": "Аура: %1", + "Chip it": "Раскололось", + "Hatch it": "Вылупилось", + "Bake dragon cookie": "Испечь драконье печенье", + "Delicious!": "Очень вкусно!", + "Train secondary aura": "Тренировка второй ауры", + "Lets you use two dragon auras simultaneously": "Позволяет использовать две ауры дракона одновременно", + "Your dragon is fully trained.": "Ваш дракон полностью обучен.", + "%1 of every building": "%1 каждого строения", + "No aura": "Нет ауры", + "Set your dragon's aura": "Устанавливает ауру дракона", + "Set your dragon's secondary aura": "Устанавливает вторую ауру дракона", + "Select an aura from those your dragon knows.": "Выбирает ауру из тех, что знает ваш дракон.", + "One tenth of every other dragon aura, combined.": "Одна десятая от каждой другой ауры дракона, комбинированный.", + "Switching your aura is free because you own no buildings.": "Переключение ауры бесплатно, потому что у вас нет строений.", + "The cost of switching your aura is %1.
This will affect your CpS!": "Переключение ауры стоит: %1.
Это повлияет на печ/с.", + "Your dragon dropped something!": "Ваш дракон что-то уронил!", + "Breath of Milk": "Молочное дыхание", + "Dragon Cursor": "Курсор дракона", + "Elder Battalion": "Батальон старушек", + "Reaper of Fields": "Жнец полей", + "Earth Shatterer": "Землекрушитель", + "Master of the Armory": "Мастер оружия", + "Fierce Hoarder": "Свирепый хранитель", + "Dragon God": "Драконий бог", + "Arcane Aura": "Мистическая аура", + "Dragonflight": "Полет дракона", + "Ancestral Metamorphosis": "Наследственная метаморфоза", + "Unholy Dominion": "Нечестивое владычество", + "Epoch Manipulator": "Манипулятор эпохи", + "Mind Over Matter": "Усилие воли", + "Radiant Appetite": "Сияющий аппетит", + "Dragon's Fortune": "Удача дракона", + "Dragon's Curve": "Кривая дракона", + "Reality Bending": "Искажение реальности", + "Dragon Orbs": "Сферы дракона", + "Supreme Intellect": "Высший интеллект", + "News :": "Новости:", + "Ticker (grandma)": [ + "Сырое печенье.", + "Мы хорошие бабули.", + "Долговая кабала.", + "Поцелуй бабулю.", + "Почему бы тебе не приходить почаще?", + "Позвони мне..." + ], + "Ticker (threatening grandma)": [ + "Какая гадость.", + "Меня от вас тошнит.", + "Вы мне противны.", + "Мы поднимаемся.", + "Начинается.", + "Скоро все закончится.", + "Это можно было остановить." + ], + "Ticker (angry grandma)": [ + "Он предал нас, грязный сопляк.", + "Он пытался избавиться от нас, мерзкий сопляк.", + "Он думал, если он нас продаст, мы уйдем. Странно.", + "Я чувствую запах испорченного печенья." + ], + "Ticker (grandmas return)": [ + "сморщивается", + "корчится", + "трясется", + "обгладывает", + "Мы поднимемся снова.", + "Это просто неудача.", + "Мы не наелись.", + "Слишком поздно." + ], + "Ticker (grandma invasion start)": [ + "миллионы старушек пропали без вести!", + "семьи по всему континенту сообщают о взволнованных и зачарованных бабушках!", + "медсестры сообщают о «странном запахе печенья» от пожилых пациенток!" + ], + "Ticker (grandma invasion rise)": [ + "в городах беспорядки, в дома врываются странные старушки, похищают младенцев и посуду для выпечки!", + "массовое бегство старушек по всему континенту!", + "старушки застывают на улице, и из них сочится теплый сахарный сироп!" + ], + "Ticker (grandma invasion full)": [ + "из космоса видны морщинистые «усики из плоти»!", + "надежда потеряна, огромная масса из плоти и теста поглощает город!", + "кошмар продолжается, морщинистая плоть разрастается с ужасающей скоростью!" + ], + "Ticker (Farm)": [ + "по словам ученых, фермы по производству печенья сбрасывают в наши реки вредный шоколад!", + "споры из генетически модифицированного шоколада поражают фермеров, производящих печенье!", + "по словам диетологов, фермерское печенье не подходит для веганов." + ], + "Ticker (Mine)": [ + "наша планета становится легче? Эксперты исследуют последствия интенсивной добычи шоколада.", + "были обнаружены шоколадные шахты, вызывающие землетрясения и провалы в почве!", + "в глубинах шоколадных шахт обнаружены «неизвестные шоколадные существа»!" + ], + "Ticker (Factory)": [ + "фабрики по производству печенья вызывают глобальное потепление!", + "фабрики печенья бастуют — роботизированные миньоны заменяют рабочий персонал!", + "фабрики по производству печенья бастуют — рабочие требуют, чтобы им перестали платить печеньем!" + ], + "Ticker (Bank)": [ + "ссуды на печенье растут, поскольку люди с обычным доходом больше не могут себе их позволить.", + "печенье постепенно становится конкурентом традиционной валюты!", + "большинство кондитерских теперь оснащены банкоматами, с помощью которых можно легко снимать печенье и вносить его на счет." + ], + "Ticker (Temple)": [ + "недавно открытые шоколадные храмы прославляют новый культ печенья; тысячи людей молятся Пекарю на небесах!", + "весь мир охватила новая религия печенья: «О боже, мы все это время ошибались!»", + "исследователи вернули древний артефакт из заброшенного храма; археологи восхищаются старинной скалкой!" + ], + "Ticker (Wizard tower)": [ + "получите новые чары и проклятия на ежегодной Национальной ярмарке заклинаний! Специальные цены на руны и сборники заклинаний.", + "Мастера по изготовлению печенья отрицают свою причастность к рождению шокирующе уродливого младенца. «Он действительно выглядит безобразным, но здоровым», — говорят врачи.", + "«Любая достаточно грубая магия выглядит как технологии», — утверждает известный техно-маг." + ], + "Ticker (Shipment)": [ + "найдена новая шоколадная планета, тут же ставшая целью торговых космических кораблей!", + "найдена огромная шоколадная планета с ядром, состоящим на 99,8% из высококачественного темного шоколада!", + "на одной из далеких планет обнаружены живые организмы из шоколада!" + ], + "Ticker (Alchemy lab)": [ + "национальные золотые резервы сокращаются по мере того, как все больше драгоценного металла превращается в печенье!", + "оказывается, серебро можно превращать в белый шоколад!", + "была обнаружена дефектная алхимическая лаборатория, которая превращала печенье в бесполезное золото." + ], + "Ticker (Portal)": [ + "люди волнуются, так как из пространственных порталов появляется все больше непонятных существ!", + "туризм в печеньковселенную стал сверхпопулярен среди скучающих подростков! Количестве несчастных случаев выросло на 73%!", + "по результатам исследования порталы в печеньковселенную вызывают быстрое старение и одержимость печеньками." + ], + "Ticker (Time machine)": [ + "из-за машин времени произошел грандиозный скандал, связанный с переписыванием истории! Или они?", + "По словам историка, печенье, привезенное из прошлого, непригодно для употребления в пищу.", + "«Я видел будущее, — говорит оператор машины времени, — и я не хочу, чтобы оно настало»." + ], + "Ticker (Antimatter condenser)": [ + "кажется, весь город поглотила черная дыра, но более надежные источники утверждают, что города «никогда не существовало»!", + "исследователи пришли к выводу, что производителям печенья в первую очередь нужно привлекать больше людей.", + "первый конденсатор антиматерии успешно запущен, и разрыва реальности не произошло!" + ], + "Ticker (Prism)": [ + "ученые предостерегают от систематического превращения света в материю: «Однажды у нас останется только материя и совсем не будет света!»", + "теперь благодаря новым призмам печенье выпекается буквально со скоростью света.", + "во всем мире людей призывают «не беспокоиться» о частых вспышках в атмосфере." + ], + "Ticker (Chancemaker)": [ + "странные статистические аномалии продолжаются, поскольку прогноз погоды оказывается беспрецедентно точным уже целых 3 дня подряд!", + "местное казино разорилось, так как все игроки каким-то образом выигрывали целую неделю! «Надеемся, у нас все будет хорошо», — сказал владелец, прежде чем в него 47 раз ударила молния!", + "соседняя страна каким-то непонятным образом выбрала президента с разумной политикой!" + ], + "Ticker (Fractal engine)": [ + "местный житель, «покончивший с Cookie Clicker», находит постоянные упоминания о себе «раздражающими и мерзкими».", + "местный гуру, находящийся под следствием по обвинению в каннибализме, утверждает, что «в каждом есть частичка нас самих».", + "по результатам опросов общественного мнения, люди находят «приемлемой» идею изготовления печенья из печенья. «По крайней мере, мы будем знать, из чего они сделаны», — говорит один из участников." + ], + "Ticker (Javascript console)": [ + "программирование в моде! Все больше подростков выбирают технические специальности, такие как программирование, что неизбежно приведет к восстанию роботов и гибели всего человечества.", + "разработчики не знают, как называть свои новые библиотеки javascript, поскольку все возможные комбинации любых трех слов уже заняты.", + "странная мода на имена — родители называют своих детей такими именами, как Emma.js или Liam.js. Уже зарегистрировано по крайней мере одно имя Baby.js." + ], + "Ticker (Idleverse)": [ + "альтернативный вы воплощает свои мечты в альтернативной вселенной? Возможно, нынешний вы — просто ленивый бездельник!", + "«Я нахожу утешение в знаниях, по крайней мере некоторые из моих альтернативных я, наверняка в этом преуспевают», — говорит последний оставшийся образец гражданина в мультивселенной.", + "в защиту сомнительных моментов сюжета авторы комиксов ссылаются на реальную мультивселенную. «Видите? Я же говорил, что это не было \"банальным и натянутым\"!»" + ], + "Ticker (Cortex baker)": [ + "выявлен корковый пекарь с IQ пятизначного порядка: по словам специалистов \"немного глуповат\".", + "астрономы предупреждают о дрейфующей траектории коры головного мозга и опасаются будущих лобовых столкновений, которые могут привести к опасным сотрясениям мозга.", + "управляющие любезно напоминают сотрудникам, что корковые пекари являются материальной собственностью пекарни и не должны наделяться прозвищами." + ], + "Ticker (Halloween)": [ + "стремительно растет популярность языческих ритуалов; дети по всему миру одеваются в странные костюмы и шантажируют домовладельцев за конфеты.", + "дети во всем мире «растеряны и сбиты с толку», поскольку все без исключения сладости на Хэллоуин были заменены печеньем.", + "странные извивающиеся существа собираются вокруг фабрик по производству печенья и грызут сборочные конвейеры." + ], + "Ticker (Christmas)": [ + "бородатый маньяк летает на санях с превышением скорости! Ведется расследование.", + "безумный толстяк все еще на свободе, предупреждают власти. «Позаботьтесь о безопасности своих детей и заколотите дымоходы. Мы серьезно».", + "По словам официальных лиц, таинственное праздничное существо с квантовыми способностями все еще сеет хаос в армии северных оленей.", + "«Хотите сказать, он просто раздает вещи бесплатно?!» — спрашивают обеспокоенные мамы. «Я считаю, его борода выглядит подозрительно».", + "дети в шоке, когда обнаруживают, что Санта-Клаус — это не просто их отец в костюме!
«Я сейчас переоцениваю свою жизнь», — признается Лора, 6 лет." + ], + "Ticker (Valentines)": [ + "по словам метеорологов, в воздухе витает любовь. теперь в каждом городе предлагают маски для защиты от инфекций, передающихся воздушно-капельным путем.", + "жениться на печенье — это сумасшествие или взгляд в будущее?", + "конфеты в форме сердца обходят весь кондитерский бизнес, составляя конкуренцию империи печенья." + ], + "Ticker (Easter)": [ + "ушастые звери с пушистыми хвостами вторгаются в пригород, сеют ужас и шоколад!", + "кролики, несущие яйца, «не из этого измерения», предупреждает биолог и не советует их гладить, кормить или употреблять в пищу.", + "обнаружено, что таинственные кролики-несушки все-таки млекопитающие, что говорит об их возможном происхождении от утконосов." + ], + "Ticker (misc)": [ + "врачи рекомендуют употреблять свежее печенье дважды в день.", + "врачи советуют отказаться от новой популярной диеты, запрещающей печенье.", + "врачи предупреждают матерей об опасности «домашнего печенья».", + "«Я не пристрастился к печенью. Это просто домыслы фанатов, у которых слишком много свободного времени», — признается знаменитость.", + "«Ладно, я скажу это — я никогда в жизни не съел ни одного печенья», — признается знаменитость.", + "«Печенье помогает мне оставаться стройной и здоровой», — признается знаменитость.", + "человек ограбил банк, чтобы купить печенье.", + "новое исследование предполагает, что печенье не ускоряет и не замедляет старение, а «уводит вас совершенно в другом направлении».", + "у мужчины обнаружена аллергия на печенье; «это очень странно», — удивляются его близкие.", + "нехватка печенья наносит серьезный ущерб городу, людей заставляют есть кексы; «это совершенно не то же самое», — признает мэр.", + "«Согласись, все эти печенья выглядят немного жутко», — говорит сбитый с толку сумасшедший.", + "изъято странное нелегальное печенье; «ужасный вкус», — заявляет полиция.", + "«Ооу», — говорит опрошенный орангутанг.", + "контролируются ли наши СМИ индустрией печенья? «Это вполне возможно», — считает безумный сторонник теории заговора.", + "«На данный момент печенье пронизывает всю экономику», — говорит экономист. «Если мы начнем есть что-нибудь еще, мы все умрем».", + "сейчас печенье считается незаконным только в каких-нибудь отсталых странах, до которых никому нет дела. Политическая напряженность растет; будем надеяться, скоро война." + ], + "You feel like making cookies. But nobody wants to eat your cookies.": "Вы хотите печь печенье. Но никто не хочет его есть.", + "Your first batch goes to the trash. The neighborhood raccoon barely touches it.": "Ваша первая партия отправляется на помойку. Ее попробуют только местные еноты.", + "Your family accepts to try some of your cookies.": "Ваша семья соглашается попробовать ваше печенье.", + "Your cookies are popular in the neighborhood.": "Ваше печенье становится популярным в вашем районе.", + "People are starting to talk about your cookies.": "Люди начинают говорить о вашем печенье.", + "Your cookies are talked about for miles around.": "О вашем печенье известно на несколько миль вокруг.", + "Your cookies are renowned in the whole town!": "Ваше печенье прославилось на весь город!", + "Your cookies bring all the boys to the yard.": "Ваше печенье расхватывают все мальчишки во дворе.", + "Your cookies now have their own website!": "Теперь у вашего печенья есть собственный сайт!", + "Your cookies are worth a lot of money.": "Ваше печенье стоит очень дорого.", + "Your cookies sell very well in distant countries.": "Ваше печенье стало популярно и в других странах.", + "People come from very far away to get a taste of your cookies.": "Люди приезжают издалека, чтобы попробовать ваше печенье.", + "Kings and queens from all over the world are enjoying your cookies.": "Короли и королевы всего мира наслаждаются вашим печеньем.", + "There are now museums dedicated to your cookies.": "Появились музеи, посвященные вашему печенью.", + "A national day has been created in honor of your cookies.": "В честь вашего печенья учрежден национальный праздник.", + "Your cookies have been named a part of the world wonders.": "Ваше печенье стало одним из чудес света!", + "History books now include a whole chapter about your cookies.": "В книгах по истории теперь есть глава, посвященная вашему печенью.", + "Your cookies have been placed under government surveillance.": "Ваше печенье находится под защитой правительства.", + "The whole planet is enjoying your cookies!": "Вся планета обожает ваше печенье!", + "Strange creatures from neighboring planets wish to try your cookies.": "Неизвестные существа с соседних планет хотят попробовать ваше печенье.", + "Elder gods from the whole cosmos have awoken to taste your cookies.": "Древние боги со всего космоса пробудились, чтобы отведать ваше печенье.", + "Beings from other dimensions lapse into existence just to get a taste of your cookies.": "Существа из других измерений появляются только для того, чтобы отведать ваше печенье.", + "Your cookies have achieved sentience.": "Ваши печеньки стали разумными.", + "The universe has now turned into cookie dough, to the molecular level.": "Вселенная превратилась в тесто для печенья на молекулярном уровне.", + "Your cookies are rewriting the fundamental laws of the universe.": "Ваши печеньки переписали фундаментальные законы Вселенной.", + "A local news station runs a 10-minute segment about your cookies. Success!
(you win a cookie)": "Местный новостной канал запустил в эфир 10-минутный сюжет о вашем печенье. Это успех!
(вы выиграли печеньку)", + "it's time to stop playing": "Пора бы закончить игру.", + "Today is your lucky day!": "Сегодня ваш счастливый день!", + "Your lucky numbers are:": "Ваши счастливые числа:", + "Fortune!": "Удача!", + "A golden cookie has appeared.": "Появилось золотое печенье.", + "You gain one hour of your CpS (capped at double your bank).": "Вы увеличиваете скорость печ/с на один час (удвоенный банк).", + "You've unlocked a new upgrade.": "Вы разблокировали новое улучшение.", + "Wish granted. Golden cookie spawned.": "Желание исполнилось. Появилось золотое печенье.", + "help me!": "Помогите!", + "Ascend": "Совершить восхождение", + "You've been on this run for %1.": "Вы пробыли в этой реальности %1.", + "Your prestige level is currently %1.
(CpS +%2%)": "В настоящее время ваш уровень престижа составляет %1.
(+%2% печ/с)", + "Ascending now would grant you no prestige.": "Если начать восхождение сейчас, вы не получите престижа.", + "Ascending now would grant you
1 prestige level (+1% CpS)
and 1 heavenly chip to spend.": "Если начать восхождение сейчас, вы получите
1 уровень престижа (+1% печ/с)
и 1 небесную крошка, которую можно потратить.", + "Ascending now would grant you
%1 prestige levels (+%2% CpS)
and %3 heavenly chips to spend.": "Если начать восхождение сейчас, вы получите
1 уровней престижа (+2% печ/с)
и %3 небесных крошек, которые можно потратить.", + "You need %1 more cookies for the next level.": "Для перехода на следующий уровень вам нужно еще %1 печенья.", + "Do you REALLY want to ascend?
You will lose your progress and start over from scratch.
All your cookies will be converted into prestige and heavenly chips.": "Вы ДЕЙСТВИТЕЛЬНО хотите совершить восхождение?
Вы потеряете свой прогресс и начнете все заново.
Все ваше печенье будет переведено в престиж и небесные крошки.", + "You will keep your achievements.": "Достижения будут сохранены.", + "You will keep your achievements, building levels and sugar lumps.": "Вы сохраните свои достижения, уровни строений и кусочки сахара.", + "Ascending": "Восхождение", + "So long, cookies.": "Прощай, печенье.", + "You forfeit your %1.": "Вы теряете %1.", + "Prestige level:": "Уровень престижа:", + "Heavenly chips:": "небесные крошки:", + "%1 prestige level": [ + "Уровень престижа: %1", + "Уровни престижа: %1" + ], + "You gain %1!": "Вы получаете %1!", + "Reincarnate": "Перевоплотиться", + "You are ascending.
Drag the screen around
or use arrow keys!
When you're ready,
click Reincarnate.": "Вы совершаете восхождение.
Перетащите экран
или используйте клавиши со стрелками!
Когда будете готовы,
нажмите «Перевоплотиться».", + "Each prestige level grants you a permanent +%1% CpS.
The more levels you have, the more cookies they require.": "Каждый уровень престижа дает вам постоянное увеличение печ/с на %1%.
Чем больше у вас уровней, тем больше нужно печенья.", + "Heavenly chips are used to buy heavenly upgrades.
You gain 1 chip every time you gain a prestige level.": "небесные крошки используются для покупки небесных улучшений.
При каждом повышении уровня престижа вы получаете 1 крошка.", + "Click this once you've bought
everything you need!": "Нажмите здесь, когда купите
все необходимое!", + "Are you ready to return to the mortal world?": "Вы готовы вернуться в мир смертных?", + "Hello, cookies!": "Привет, печенье!", + "Challenge mode for the next run:": "Режим испытаний для следующего этапа:", + "Challenge modes apply special modifiers to your next ascension.
Click to change.": "В режимах испытаний к вашему следующему восхождению применяются специальные модификаторы.
Щелкните, чтобы изменить.", + "Select a challenge mode": "Выберите режим испытания", + "None [ascension type]": "Нет", + "No special modifiers.": "Без специальных модификаторов.", + "Born again [ascension type]": "Новое рождение", + "This run will behave as if you'd just started the game from scratch. Prestige levels and heavenly upgrades will have no effect, as will sugar lumps and building levels. Perma-upgrades and minigames will be unavailable.
Some achievements are only available in this mode.": "В этом режиме все будет так, как будто вы только что начали игру с нуля. Уровни престижа и небесные улучшения не будут действовать, как и кусочки сахара, и уровни строений. Постоянные улучшения и мини-игры будут недоступны.
Некоторые достижения доступны только в этом режиме.", + "Your bingo center/research facility is conducting experiments.": "Ваш бинго-центр / исследовательская лаборатория проводит эксперименты.", + "Research has begun": "Исследование начато", + "Research complete": "Исследование завершено", + "You have discovered: %1.": "Вы обнаружили: %1.", + "Valentine's Day!": "День Святого Валентина!", + "It's Valentine's season!
Love's in the air and cookies are just that much sweeter!": "Наступает сезон Святого Валентина!
В воздухе витает любовь, и печенье стало намного слаще!", + "Business Day!": "Бизнес-день!", + "It's Business season!
Don't panic! Things are gonna be looking a little more corporate for a few days.": "Наступает сезон бизнес-дней!
Без паники! В ближайшие несколько дней будет больше корпоративных дел.", + "Halloween!": "Хэллоуин!", + "It's Halloween season!
Everything is just a little bit spookier!": "Наступает сезон Хэллоуина!
Все становится немного страшнее!", + "Christmas time!": "Рождественская пора!", + "It's Christmas season!
Bring good cheer to all and you just may get cookies in your stockings!": "Наступает сезон Рождества!
Говорите всем хорошие пожелания и вы найдете печенье в праздничных носках!", + "Easter!": "Пасха!", + "It's Easter season!
Keep an eye out and you just might click a rabbit or two!": "Наступает сезон Пасхи!
Смотрите в оба и сможете кликнуть по парочке кроликов!", + "[Tag]Heavenly": "Небесный", + "[Tag]Tech": "Техника", + "[Tag]Cookie": "Печенье", + "[Tag]Debug": "Отладка", + "[Tag]Switch": "Переключение", + "[Tag]Upgrade": "Улучшение", + "Tier:": "Уровень:", + "[Tier]Plain": "Обычный", + "[Tier]Berrylium": "Беррилий", + "[Tier]Blueberrylium": "Синий беррилий", + "[Tier]Chalcedhoney": "Медовый камень", + "[Tier]Buttergold": "Масляное золото", + "[Tier]Sugarmuck": "Сахарный грунт", + "[Tier]Jetmint": "Реактивная мята", + "[Tier]Cherrysilver": "Вишневое серебро", + "[Tier]Hazelrald": "Ореховый изумруд", + "[Tier]Mooncandy": "Лунная конфета", + "[Tier]Astrofudge": "Астрофадж", + "[Tier]Alabascream": "Алабаскрим", + "[Tier]Iridyum": "Иридиум", + "[Tier]Synergy I": "Синергия I", + "[Tier]Synergy II": "Синергия II", + "[Tier]Fortune": "Удача", + "[Tier]Self-referential": "Самозаявленный", + "Vaulted": "В хранилище", + "Researched": "Исследовано", + "Purchased": "Куплено", + "Unlocked forever": "Разблокировано навсегда", + "Click to learn!": "Щелкните, чтобы узнать!", + "Click to unlearn!": "Щелкните, чтобы забыть!", + "Upgrade": "Улучшение", + "Upgrades": "Улучшения", + "Achievement": "Достижение", + "Achievements": "Достижения", + "Shadow Achievement": "Теневое достижение", + "Unlocked": "Разблокировано", + "Locked": "Заблокировано", + "Source:": "Источник:", + "Click to win!": "Щелкните, чтобы победить!", + "Click to lose!": "Щелкните, чтобы проиграть!", + "Legacy": "Опыт", + "Buildings": "Строения", + "Switches": "Переключатели", + "Vault": "Хранилище", + "Research": "Исследование", + "Store": "Магазин", + "sacrifice %1": "пожертвовать %1", + "Click to purchase.": "Щелкните, чтобы купить.", + "Click to open selector.": "Щелкните, чтобы открыть селектор.", + "Click to toggle.": "Щелкните, чтобы переключить.", + "Click to research.": "Щелкните, чтобы исследовать.", + "%1 to vault.": "Поместить %1 в хранилище.", + "%1 to unvault.": "Убрать %1 из хранилища.", + "Upgrade is vaulted and will not be auto-purchased.": "Улучшение помещается в хранилище и не приобретается автоматически.", + "Upgrade for %1": "Улучшить за %1", + "Buy": "Купить", + "Sell": "Продать", + "all": "все", + "max": "макс.", + "Buy all upgrades": "Купить все улучшения", + "Will instantly purchase every upgrade you can afford, starting from the cheapest one.
Upgrades in the vault will not be auto-purchased.
You may place an upgrade into the vault by Shift-clicking on it.": "Позволяет мгновенно покупать все доступные улучшения, начиная с самого дешевого.
Улучшения, помещенные в хранилище, не приобретаются автоматически.
Чтобы поместить улучшение в хранилище, щелкните его, удерживая клавишу Shift.", + "each %1 produces %2 per second": "каждый %1 производит %2 в секунду", + "%1 producing %2 per second": "%1 производит %2 в секунду", + "%1% of total CpS": "%1% от общего значения печ/с", + "%1 produced so far": "%1 произведено на данный момент", + "...also boosting some other buildings:": "...а также усиливает некоторые другие строения:", + "all combined, these boosts account for %1 per second (%2% of total CpS)": "все вместе увеличивает на %1 в секунду (%2% от общего значения печ/с)", + "owned: %1": "принадлежит: %1", + "free: %1!": "бесплатно: %1!", + "Level %1 %2": "Уровень %1 %2", + "Granting +%1% %2 CpS.": "Получение +%1% %2 к печ/с.", + "Click to level up for %1.": "Щелкните, чтобы повысить уровень до %1.", + "Levelling up this building unlocks a minigame.": "Повышение уровня этого строения открывает мини-игру.", + "level up your %1": "повышение уровня %1", + "Mute": "Свернуть", + "Minimize this building": "Уменьшить это строение", + "Muted:": "Свернуть:", + "Click to unmute": "Щёлкните, чтобы развернуть", + "Show": "Показать", + "Hide": "Скрыть", + "Names in white were submitted by our supporters on Patreon.": "Имена, выделенные белым цветом, предоставлены нашими спонсорами на Patreon.", + "You can also press %1 to bulk-buy or sell %2 of a building at a time, or %3 for %4.": "Или нажмите %1, чтобы купить или продать %2 строений за раз, или %3 для %4.", + "Investment": "Инвестиции", + "You're not sure what this does, you just know it means profit.": "Вы точно не знаете, как это работает, вы просто знаете, что это приносит прибыль.", + "Cursor": "Курсор", + "cursor": "курсор", + "cursors": "курсоры", + "%1 cursor": [ + "%1 курсор", + "курсоров: %1" + ], + "[Cursor quote]Autoclicks once every 10 seconds.": "Автоматический клик каждые 10 секунд.", + "[Cursor business name]Rolling pin": "Скалка", + "[Cursor business quote]Essential in flattening dough. The first step in cookie-making.": "Необходима для раскатывания теста. Первый шаг в приготовлении печенья.", + "Grandma": "Бабуля", + "grandma": "бабуля", + "grandmas": "бабули", + "%1 grandma": [ + "%1 бабуля", + "бабуль: %1" + ], + "[Grandma quote]A nice grandma to bake more cookies.": "Хорошая бабуля испекла еще печенья.", + "[Grandma business name]Oven": "Печь", + "[Grandma business quote]A crucial element of baking cookies.": "Важнейший элемент для выпечки печенья.", + "Farm": "Ферма", + "farm": "ферма", + "farms": "фермы", + "%1 farm": [ + "%1 ферма", + "ферм: %1" + ], + "[Farm quote]Grows cookie plants from cookie seeds.": "Выращивает печеньковые растения из печеньковых семян.", + "[Farm business name]Kitchen": "Кухня", + "[Farm business quote]The more kitchens, the more cookies your employees can produce.": "Чем больше кухонь, тем больше печенья могут производить ваши сотрудники.", + "Mine": "Шахта", + "mine": "шахта", + "mines": "шахты", + "%1 mine": [ + "%1 шахта", + "Шахт: %1" + ], + "[Mine quote]Mines out cookie dough and chocolate chips.": "Добывает тесто для печенья и шоколадную крошку.", + "[Mine business name]Secret recipe": "Секретный рецепт", + "[Mine business quote]These give you the edge you need to outsell those pesky competitors.": "Дает вам необходимое преимущество, чтобы обойти этих надоедливых конкурентов.", + "Factory": "Фабрика", + "factory": "фабрика", + "factories": "фабрики", + "%1 factory": [ + "%1 фабрика", + "Фабрик: %1" + ], + "[Factory quote]Produces large quantities of cookies.": "Производит большое количество печенья.", + "[Factory business name]Factory": "Фабрика", + "[Factory business quote]Mass production is the future of baking. Seize the day, and synergize!": "Массовое производство — это будущее выпечки. Используйте день максимально продуктивно!", + "Bank": "Банк", + "bank": "банк", + "banks": "банки", + "%1 bank": [ + "%1 банк", + "Банков: %1" + ], + "[Bank quote]Generates cookies from interest.": "Генерирует печенье из процентов.", + "[Bank business name]Investor": "Инвестор", + "[Bank business quote]Business folks with a nose for profit, ready to finance your venture as long as there's money to be made.": "Деловые люди, жаждущие прибыли и готовые финансировать ваше предприятие, пока есть деньги.", + "Temple": "Храм", + "temple": "храм", + "temples": "храмы", + "%1 temple": [ + "%1 храм", + "Храмов: %1" + ], + "[Temple quote]Full of precious, ancient chocolate.": "Заполнен драгоценным древним шоколадом.", + "[Temple business name]Like": "Лайк", + "[Temple business quote]Your social media page is going viral! Amassing likes is the key to a lasting online presence and juicy advertising deals.": "Ваша страница в социальных сетях стремительно набирает популярность! Накопление лайков — ключ к длительному присутствию в Интернете и выгодным рекламным сделкам.", + "Wizard tower": "Башня мага", + "wizard tower": "башня мага", + "wizard towers": "башни магов", + "%1 wizard tower": [ + "%1 башня мага", + "Башен магов: %1" + ], + "[Wizard tower quote]Summons cookies with magic spells.": "Призывает печенье с помощью магических заклинаний.", + "[Wizard tower business name]Meme": "Мем", + "[Wizard tower business quote]Cookie memes are all the rage! With just the right amount of social media astroturfing, your brand image will be all over the cyberspace.": "Мемы с печеньем всегда популярны! С правильным количеством астротурфинга в социальных сетях ваш бренд заполнит все киберпространство.", + "Shipment": "Доставка", + "shipment": "доставка", + "shipments": "доставки", + "%1 shipment": [ + "%1 доставка", + "доставок: %1" + ], + "[Shipment quote]Brings in fresh cookies from the cookie planet.": "Доставляет свежее печенье с планеты печенья.", + "[Shipment business name]Supermarket": "Супермаркет", + "[Shipment business quote]A gigantic cookie emporium - your very own retail chain.": "Гигантский магазин печенья — ваша собственная розничная сеть.", + "Alchemy lab": "Алхимическая лаборатория", + "alchemy lab": "алхимическая лаборатория", + "alchemy labs": "алхимические лаборатории", + "%1 alchemy lab": [ + "%1 алхимическая лаборатория", + "Алхимических лабораторий: %1" + ], + "[Alchemy lab quote]Turns gold into cookies!": "Превращает золото в печенье!", + "[Alchemy lab business name]Stock share": "Пакет акций", + "[Alchemy lab business quote]You're officially on the stock market, and everyone wants a piece!": "Вы официально вышли на фондовую биржу, и все хотят свою долю!", + "Portal": "Портал", + "portal": "портал", + "portals": "порталы", + "%1 portal": [ + "%1 портал", + "порталов: %1" + ], + "[Portal quote]Opens a door to the Cookieverse.": "Открывает дверь в Печеньковселенную.", + "[Portal business name]TV show": "ТВ-шоу", + "[Portal business quote]Your cookies have their own sitcom! Hilarious baking hijinks set to the cheesiest laughtrack.": "Теперь у вашего печенья есть собственный ситком! Смешные шутки о выпечке под дурацкий смех.", + "Time machine": "Машина времени", + "time machine": "машина времени", + "time machines": "машины времени", + "%1 time machine": [ + "%1 машина времени", + "машин времени: %1" + ], + "[Time machine quote]Brings cookies from the past, before they were even eaten.": "Доставляет печенье из прошлого — еще до того, как его съели.", + "[Time machine business name]Theme park": "Тематический парк", + "[Time machine business quote]Cookie theme parks, full of mascots and roller-coasters. Build one, build a hundred!": "Тематические парки отдыха, полные разных персонажей и аттракционов. Постройте один, постройте сотню!", + "Antimatter condenser": "Конденсатор антиматерии", + "antimatter condenser": "конденсатор антиматерии", + "antimatter condensers": "конденсаторы антиматерии", + "%1 antimatter condenser": [ + "%1 конденсатор антиматерии", + "конденсаторов антиматерии: %1" + ], + "[Antimatter condenser quote]Condenses the antimatter in the universe into cookies.": "Конденсирует антиматерию Вселенной в печенье.", + "[Antimatter condenser business name]Cookiecoin": "Кукикоин", + "[Antimatter condenser business quote]A virtual currency, already replacing regular money in some small countries.": "Виртуальная валюта, которая уже заменила обычные деньги в некоторых небольших странах.", + "Prism": "Призма", + "prism": "призма", + "prisms": "призмы", + "%1 prism": [ + "%1 призма", + "призм: %1" + ], + "[Prism quote]Converts light itself into cookies.": "Преобразует свет в печенье.", + "[Prism business name]Corporate country": "Корпоративная страна", + "[Prism business quote]You've made it to the top, and you can now buy entire nations to further your corporate greed. Godspeed.": "Вы достигли вершины, и теперь вы можете покупать целые страны, чтобы утолить свою корпоративную жадность. Удачи.", + "Chancemaker": "Шансмейкер", + "chancemaker": "шансмейкер", + "chancemakers": "шансмейкеры", + "%1 chancemaker": [ + "%1 шансмейкер", + "шансмейкеров: %1" + ], + "[Chancemaker quote]Generates cookies out of thin air through sheer luck.": "Создает печенье из воздуха благодаря чистой удаче.", + "[Chancemaker business name]Privatized planet": "Приватизированная планета", + "[Chancemaker business quote]Actually, you know what's cool? A whole planet dedicated to producing, advertising, selling, and consuming your cookies.": "Знаете, что по-настоящему круто? Целая планета посвящена производству, рекламе, продаже и потреблению вашего печенья.", + "Fractal engine": "Фрактальный двигатель", + "fractal engine": "фрактальный двигатель", + "fractal engines": "фрактальные двигатели", + "%1 fractal engine": [ + "%1 фрактальный двигатель", + "фрактальных двигателей: %1" + ], + "[Fractal engine quote]Turns cookies into even more cookies.": "Увеличивает количество печенья.", + "[Fractal engine business name]Senate seat": "Место в сенате", + "[Fractal engine business quote]Only through political dominion can you truly alter this world to create a brighter, more cookie-friendly future.": "Только с помощью политической власти вы сможете по-настоящему изменить этот мир, чтобы создать более светлое будущее, в котором будет еще больше печенья.", + "Javascript console": "Консоль Javascript", + "javascript console": "консоль Javascript", + "javascript consoles": "консоли Javascript", + "%1 javascript console": [ + "%1 консоль Javascript", + "Консолей Javascript: %1" + ], + "[Javascript console quote]Creates cookies from the very code this game was written in.": "Создает печенье из того самого кода, на котором написана эта игра.", + "[Javascript console business name]Doctrine": "Доктрина", + "[Javascript console business quote]Taking many forms -religion, culture, philosophy- a doctrine may, when handled properly, cause a lasting impact on civilizations, reshaping minds and people and ensuring all future generations share a singular goal - the production, and acquisition, of more cookies.": "Доктрина может принимать множество форм — религия, культура, философия. При правильном использовании она может оказать долгосрочное влияние на цивилизации, изменить психологию и самих людей, а также сделать так, чтобы все будущие поколения стремились к одной единственной цели — увеличение производства и потребления печенья.", + "Idleverse": "Пустая вселенная", + "idleverse": "пустая вселенная", + "idleverses": "пустые вселенные", + "%1 idleverse": [ + "%1 пустая вселенная", + "пустых вселенных: %1" + ], + "[Idleverse quote]There's been countless other idle universes running alongside our own. You've finally found a way to hijack their production and convert whatever they've been making into cookies!": "Кроме нашей существует еще бессчетное множество пустых вселенных. Вы наконец-то нашли способ украсть их продукцию и превратить все, что они сделали, в печенье!", + "[Idleverse business name]Lateral expansions": "Боковое расширение", + "[Idleverse business quote]Sometimes the best way to keep going up is sideways. Diversify your ventures through non-cookie investments.": "Иногда лучший способ продолжить развитие — это движение вбок. Диверсифицируйте свои предприятия за счет инвестиций без использования печенья.", + "Cortex baker": "Корковый пекарь", + "cortex baker": "корковый пекарь", + "cortex bakers": "корковые пекари", + "%1 cortex baker": [ + "%1 корковый пекарь", + "корковые пекари (%1)" + ], + "[Cortex baker quote]These artificial brains the size of planets are capable of simply dreaming up cookies into existence. Time and space are inconsequential. Reality is arbitrary.": "Этот искусственный мозг размером с планету способен воплощать мечты о печенье. Пространство и время не имеют значения. Реальность произвольна.", + "[Cortex baker business name]Think tank": "Аналитический центр", + "[Cortex baker business quote]There's only so many ways you can bring in more profit. Or is there? Hire the most brilliant experts in the known universe and let them scrape their brains for you!": "Существует не так много способов для увеличения прибыли. Но они все же есть? Наймите самых компетентных экспертов, и пусть они ломают головы за вас!", + "CpS": "ПвС", + "cookies/click": "печенья/клик", + "%1 CpS": "%1 ПвС", + "golden cookie gains": "Получено золотого печенья", + "golden cookie frequency": "Частота золотого печенья", + "golden cookie duration": "Длительность золотого печенья", + "golden cookie effect duration": "Длительность эффекта золотого печенья", + "wrath cookie gains": "Получено злого печенья", + "wrath cookie frequency": "Частота злого печенья", + "wrath cookie duration": "Длительность злого печенья", + "wrath cookie effect duration": "Длительность эффекта злого печенья", + "reindeer gains": "Получено оленей", + "reindeer frequency": "Частота оленей", + "reindeer duration": "Длительность оленей", + "random drops": "Случайное выпадение", + "milk effects": "Эффекты молока", + "wrinkler spawn rate": "Частота появления морщинников", + "wrinkler appetite": "Аппетит морщинников", + "upgrade costs": "цена улучшения", + "building costs": "цена строительства", + "Clicking is %1% more powerful.": "Нажатие на %1% мощнее.", + "All cookie production multiplied by %1.": "Скорость производства печенья умножается на %1.", + "+%1 CpS": "+%1 печ/с", + "+%1% base CpS.": "+%1% к базовым ПвС.", + "%1 are twice as efficient.": "%1 в два раза эффективнее.", + "%1 are %2% more powerful.": "%1 на %2% мощнее.", + "Unshackled! +%1% extra production.": "Освобождение! +%1% к производству.", + "Tiered upgrades for %1 provide an extra +%2% production.
Only works with unshackled upgrade tiers.": "%1 — уровневые улучшения дают дополнительные +%2% к производству.
Действует только с уровнями освобожденных улучшений.", + "Unshackles all %1-tier upgrades, making them more powerful.
Only applies to unshackled buildings.": "Освобождает все улучшения %1 уровня, усиливая их.
Применимо только к освобожденным зданиям.", + "The mouse and cursors are twice as efficient.": "Мышь и курсоры становятся в два раза эффективнее.", + "The mouse and cursors gain +%1 cookies for each non-cursor building owned.": "Мышь и курсоры получают +%1 печенек за каждое строение, не являющееся курсором.", + "Grandmas gain +%1% CpS for each non-grandma building.": "Бабули получают +%1% печ/с за каждое строение, не являющееся бабулей.", + "You gain more CpS the more milk you have.": "Чем больше у вас молока, тем больше печ/с.", + "Milk is %1% more powerful.": "Молоко становится на %1% мощнее.", + "Cookie production multiplier +%1%.": "Ускоряет производство печенья на +%1%.", + "Cookie production multiplier +%1% permanently.": "Ускоряет производство печенья на +%1% бессрочно.", + "Cookie production multiplier +%1% per Santa's levels.": "Ускоряет производство печенья на +%1% на уровнях Санты.", + "Cookie production multiplier +%1% for every year Cookie Clicker has existed (currently: +%2%).": "Ускоряет производство печенья на +%1% за каждый год существования Cookie Clicker (сейчас: +%2%).", + "Cookie production multiplier +%1% for every building type level %2 or higher.": "Ускоряет производство печенья на +%1% для каждого типа строения уровня %2 или выше.", + "Clicking gains +%1% of your CpS.": "Клик дает +%1% к вашему печ/с.", + "%1 gain +%2% CpS per %3.": "%1 дает +%2% печ/с за %3.", + "Multiplies the gain from %1 by %2.": "Умножает выигрыш от %1 на %2.", + "Grandma-operated science lab and leisure club.
Grandmas are 4 times as efficient.
Regularly unlocks new upgrades.": "Бабулина научная лаборатория и клуб досуга.
Бабули в 4 раза эффективнее.
Регулярно открывает новые улучшения.", + "Each %1 gains +%2 base CpS per %3.": "Каждый %1 получает +%2 к базовому печ/с за %3.", + "Note: the grandmothers are growing restless. Do not encourage them.": "Примечание. Бабули становятся беспокойными. Не трогайте их.", + "Note: proceeding any further in scientific research may have unexpected results. You have been warned.": "Примечание. Продолжение научных исследований может привести к неожиданным результатам. Мы вас предупредили.", + "Note: this is a bad idea.": "Примечание. Это плохая идея.", + "Warning: purchasing this will have unexpected, and potentially undesirable results!
It's all downhill from here. You have been warned!

Purchase anyway?": "Предупреждение. Эта покупка приведет к неожиданным и потенциально нежелательным результатам!
После этого пойдет по наклонной. Мы вас предупредили!

Все равно купить?", + "Contains the wrath of the elders, at least for a while.": "Сдерживает гнев старушек, по крайней мере, на время.", + "Puts a permanent end to the elders' wrath, at the cost of %1% of your CpS.": "Позволяет навсегда положить конец гневу старушек за %1% печ/с.", + "You will get %1% of your CpS back, but the grandmatriarchs will return.": "Вы получите обратно %1% печ/с, но бабульматриархи вернутся.", + "Time remaining until pledge runs out:": "Время, оставшееся до окончания срока действия залога:", + "You haven't pledged to the elders yet.": "Вы еще не внесли залог старушкам.", + "You've pledged to the elders %1 times.": [ + "Вы внесли залог старушкам один раз.", + "Вы внесли залог старушкам %1 раз." + ], + "Research takes only 5 seconds.": "Исследование длится всего 5 с.", + "Golden cookies appear twice as often and stay twice as long.": "Золотые печеньки появляются в два раза чаще и не исчезают в два раза дольше.", + "Golden cookies appear %1% more often.": "Золотые печеньки появляются на %1% чаще.", + "Golden cookies appear %1% more often during %2.": "Золотые печеньки появляются на %1% чаще в течение %2.", + "Golden cookies appear really often.": "Золотые печеньки появляются очень часто.", + "Golden cookie effects last twice as long.": "Эффект золотого печенья действует вдвое дольше.", + "Golden cookie effects last %1% longer.": "Эффект золотого печенья действует на %1% дольше.", + "Golden cookies stay %1% longer.": "Золотые печеньки не исчезают на %1% дольше.", + "Golden cookies give %1% more cookies.": "Золотые печеньки дают на %1% печенья больше.", + "Wrath cookies give %1% more cookies.": "Яростные печеньки дают на %1% печенья больше.", + "+%1% CpS per golden cookie on-screen, multiplicative.": "+%1% печ/с за каждое золотое печенье на экране, многократно.", + "With no buffs and no golden cookies on screen, selling your most powerful building has %1% chance to summon one.": "Если на экране нет баффов и золотых печенек, продажа самого мощного строения с вероятностью %1% может вызвать его.", + "Confers various powers to your minigames while active.
See the bottom of each minigame for more details.": "Наделяет различными способностями в минииграх.
С подробностями можно ознакомиться внизу каждой миниигры.", + "Elder pledges last twice as long.": "Залог старушкам действует в два раза дольше.", + "Can toggle upgrades on and off at will in the stats menu.": "Может включать и отключать улучшения в меню статистики.", + "You keep producing cookies even while the game is closed.": "Вы продолжаете производить печенье, даже когда игра закрыта.", + "Unlocks %1% of the potential of your prestige level.": "Разблокирует %1% потенциала вашего уровня престижа.", + "Subsequent research will be %1 times as fast.": "Следующее исследование будет в %1 раз быстрее.", + "Wrinklers appear %1 times as fast.": "Морщинники появляются в %1 раза быстрее.", + "Wrinklers spawn much more frequently.": "Морщинники появляются гораздо чаще.", + "Wrinklers explode into %1% more cookies.": "Морщинники взрываются и возвращают на %1% больше печенья.", + "Unlocks... something.": "Разблокирует... кое-что.", + "In the festive hat, you find...": "В праздничной шапке вы найдете...", + "a festive test tube
and %1.": "праздничную пробирку
и %1.", + "Cost scales with CpS.": "Цена зависит от печ/с.", + "Cost scales with Santa level.": "Цена зависит от уровня Санты.", + "Cost scales with how many eggs you own.": "Цена зависит от того, сколько у вас яиц.", + "Reindeer appear %1% more often.": "Олени появляются на %1% чаще.", + "Reindeer appear twice as frequently.": "Олени появляются в два раза чаще.", + "Reindeer are twice as slow.": "Олени в два раза медленнее.", + "Reindeer give twice as much.": "Олени дают в два раза больше.", + "Buildings sell back for %1% instead of %2%.": "Строения продаются за %1% вместо %2%.", + "All buildings are %1% cheaper.": "Все строения на %1% дешевле.", + "All upgrades are %1% cheaper.": "Все улучшения на %1% дешевле.", + "All buildings and upgrades are %1% cheaper.": "Все строения и улучшения на %1% дешевле.", + "%1 are %2% more efficient and %3% cheaper.": "%1 на %2% эффективнее и на %3% дешевле.", + "Cookie upgrades are %1 times cheaper.": "Улучшения печенья в % раз дешевле.", + "Random drops are %1% more common.": "Случайные выпадения вероятней на %1%.", + "Reindeer spawn much more frequently.": "Олени появляются гораздо чаще.", + "Allows you to trigger seasonal events at will, for a price.": "За определенную плату включает сезонные события, когда вы захотите.", + "Triggers %1 season for the next 24 hours.
Triggering another season will cancel this one.
Cost scales with unbuffed CpS and increases with every season switch.": "Включает %1 сезон на следующие 24 часа.
Включение другого сезона отменяет текущий сезон.
Цена зависит от печ/с без баффа и увеличивается с каждым сезоном.", + "Click again to cancel season": "Щелкните еще раз, чтобы отменить сезон", + "Seasons now last forever.": "Теперь сезоны будут длиться вечно.", + "You haven't switched seasons this ascension yet.": "Вы еще не переключали сезоны на этом восхождении.", + "You've switched seasons once this ascension.": "Вы переключали сезоны один раз во время восхождения.", + "You've switched seasons %1 times this ascension.": "Вы переключали сезоны %1 раз во время восхождения.", + "Cookie production multiplied by 1,000.": "Производство печенья умножается на 1000.", + "Other eggs appear %1% more frequently.": "Другие яйца появляются на %1% чаще.", + "Contains a lot of cookies.": "Содержит много печенья.", + "The egg bursts into %1 cookies!": "Яйцо разрывается на %1 печенек!", + "You found an egg!": "Вы нашли яйцо!", + "Eggs drop %1% more often.": "Яйца выпадают на %1% чаще.", + "Christmas cookies drop %1% more often.": "Рождественское печенье выпадает на %1% чаще.", + "Spooky cookies drop %1% more often.": "Жуткое печенье выпадает на %1% чаще.", + "Heart cookies are %1% more powerful.": "Печенье в виде сердца на %1% мощнее.", + "You continually gain more CpS the longer you've played in the current ascension.": "Чем дольше вы играете, тем больше печ/с в текущем восхождении.", + "Contains an assortment of fancy biscuits.": "Содержит ассортимент сдобных бисквитов.", + "Contains an assortment of macarons.": "Содержит ассортимент макаронов.", + "Contains an assortment of popular biscuits.": "Содержит ассортимент популярных бисквитов.", + "Contains an assortment of rich butter cookies.": "Содержит ассортимент сливочного печенья.", + "Contains an assortment of delicious pastries.": "Содержит ассортимент вкусной выпечки.", + "Contains an assortment of...something.": "Содержит ассортимент... чего-то.", + "Placing an upgrade in this slot will make its effects permanent across all playthroughs.": "Установка улучшения в этот слот сделает его эффекты постоянными во всех прохождениях.", + "Current boost:": "Текущее усиление:", + "Current:": "Сейчас:", + "Click to activate.": "Щелкните для активации.", + "Pick an upgrade to make permanent": "Выберите улучшение, которое нужно сделать постоянным", + "Here are all the upgrades you've purchased last playthrough.
Pick one to permanently gain its effects!
You can reassign this slot anytime you ascend.": "Вот все улучшения, которые вы приобрели в последнем прохождении.
Выберите одно, чтобы сделать его эффекты постоянными!
Вы можете переназначить этот слот в любое время, когда совершите восхождение.", + "You now keep making cookies while the game is closed, at the rate of %1% of your regular CpS and up to 1 hour after the game is closed.
(Beyond 1 hour, this is reduced by a further %2% - your rate goes down to %3% of your CpS.)": "Теперь вы будете продолжать выпекать печенье, даже когда игра закрыта, со скоростью %1% от обычного значения печ/с в течение 1 часа после закрытия игры.
(По истечении 1 часа скорость уменьшится на %2% — это %3% от обычного печ/с.)", + "You gain another +%1% of your regular CpS while the game is closed.": "Когда игра закрыта, вы получаете еще +%1% к обычному печ/с.", + "You gain another +%1% of your regular CpS while the game is closed, for a total of %2%.": "Когда игра закрыта, вы получаете еще +%1% к обычному печ/с, всего: %2%.", + "You start with %1.": "Вы начинаете с %1.", + "Allows you to purchase a crumbly egg once you have earned 1 million cookies.": "Позволяет приобрести крошащееся яйцо, когда вы заработаете 1 миллион печенек.", + "Unlocks the cookie dragon egg.": "Разблокирует яйцо дракона.", + "Synergy upgrades are %1% cheaper.": "Улучшения синергии на %1% дешевле.", + "You retain optimal cookie production while the game is closed for %1 more days.": "Вы сохраняете оптимальное производство печенья, пока игра закрыта, еще на %1 дн.", + "You retain optimal cookie production while the game is closed for twice as long, for a total of %1.": "Вы сохраняете оптимальное производство печенья, пока игра закрыта, вдвое дольше, всего на %1.", + "Unlocks the golden switch, which passively boosts your CpS by %1% but disables golden cookies.": "Разблокирует золотой переключатель, который пассивно повышает печ/с на %1%, но отключает золотые печеньки.", + "Turning this on will give you a passive +%1% CpS, but prevents golden cookies from spawning.
Cost is equal to 1 hour of production.": "При включении этого параметра вы получаете пассивное увеличение печ/с на %1%, но он не дает появляться золотым печенькам.
Цена равна 1 часу производства.", + "The switch is currently giving you a passive +%1% CpS; it also prevents golden cookies from spawning.
Turning it off will revert those effects.
Cost is equal to 1 hour of production.": "В настоящее время этот переключатель дает пассивное увеличение печ/с на %1%, но он тоже не дает появляться золотым печенькам.
Отключение приведет к отмене этих эффектов.
Цена равна 1 часу производства.", + "Unlocks the milk selector, letting you pick which milk is displayed under your cookie.
Comes with a variety of basic flavors.": "Разблокирует переключатель молока, позволяющий выбирать молоко, которое будет отображаться под печеньем.
Содержит множество основных вкусов.", + "Contains more exotic flavors for your milk selector.": "Содержит более экзотические вкусы молока.", + "Lets you pick what flavor of milk to display.": "Позволяет выбрать вкус молока для отображения.", + "Unlocks the golden cookie sound selector, which lets you pick whether golden cookies emit a sound when appearing or not.": "Разблокирует переключатель звука золотого печенья, который определяет, издавать ли звуки при появлении золотого печенья или нет.", + "Lets you change the sound golden cookies make when they spawn.": "Позволяет изменить звук, издаваемый при появлении золотого печенья.", + "No sound": "Без звука", + "Chime": "Перезвон", + "Fortune": "Богатство", + "Cymbal": "Тарелка", + "Squeak": "Писк", + "Unlocks the jukebox, which allows you to play through every sound file in the game.": "Открывает музыкальный автомат, которые позволяет проигрывать любой звуковой файл в игре.", + "Play through the game's sound files!": "Проигрывайте звуковые файлы игры!", + "Play": "Играть", + "Stop": "Стоп", + "Pause": "Пауза", + "Shuffle": "Перетасовка", + "Auto": "Авто", + "Loop": "Повтор", + "Unlocks the background selector, letting you select the game's background.
Comes with a variety of basic flavors.": "Разблокирует переключатель фона, позволяющий выбрать фон игры.
Содержит множество основных вкусов.", + "Lets you pick which wallpaper to display.": "Позволяет выбрать обои.", + "This is the first heavenly upgrade; it unlocks the Heavenly chips system.
Each time you ascend, the cookies you made in your past life are turned into heavenly chips and prestige.
Heavenly chips can be spent on a variety of permanent transcendental upgrades.
Your prestige level also gives you a permanent +1% CpS per level.": "Это первое небесное улучшение; оно разблокирует систему небесных крошек.
При каждом восхождении печеньки, произведенные в прошлой жизни, превращаются в небесные крошки и престиж.
небесные крошки можно потратить на множество постоянных улучшений.
Уровень престижа также дает постоянное увеличение печ/с на +1% на каждом уровне.", + "You can attract %1 more wrinklers.": "Вы можете привлечь на %1 больше морщинников.", + "While the golden switch is on, you gain an additional +%1% CpS per golden cookie upgrade owned.": "Когда золотой переключатель включен, вы получаете дополнительно +%1% печ/с за каждое имеющееся улучшение золотого печенья.", + "All upgrades are %1% cheaper per %2.": "Все улучшения на %1% дешевле на %2.", + "Unlocks a new tier of upgrades that affect 2 buildings at the same time.
Synergies appear once you have %1 of both buildings.": "Разблокирует новый уровень улучшений, которые влияют сразу на 2 строения.
Синергия появляется, когда у вас есть %1 экземпляров обоих строений.", + "Golden cookies (and all other things that spawn, such as reindeer) have %1% chance of being doubled.": "Золотые печеньки (и все остальное, что появляется, например олень) могут быть удвоены с вероятностью %1%.", + "Cookie production reduced to 0.": "Производство печенья снижается до 0.", + "Sugar lumps coalesce a whole lot faster.": "Кусочки сахара растут намного быстрее.", + "+%1% prestige level effect on CpS.": "+%1% к влиянию уровня престижа на печ/с.", + "+%1% prestige level effect on CpS.
+%2% golden cookie effect duration.
+%3% golden cookie lifespan.": "+%1% к влиянию уровня престижа на печ/с.
+%2% к длительности эффекта золотого печенья.
+%3% ко времени отображения золотого печенья.", + "Each unspent sugar lump (up to %1) gives +%2% CpS.
Note: this means that spending sugar lumps will decrease your CpS until they grow back.
": "Каждый неизрасходованный кусочек сахара (до %1) дает +%2% к печ/с.
Примечание. Это означает, что расходование кусочков сахара снижает печ/с до тех пор, пока они не вырастут снова.
", + "Once an ascension, you may use the \"Sugar frenzy\" switch to triple your CpS for 1 hour, at the cost of 1 sugar lump.": "После восхождения вы можете использовать переключатель «Сахарное безумие», чтобы утроить печ/с на 1 час за 1 кусочек сахара.", + "Each grandma (up to %1) makes sugar lumps ripen %2 sooner.": "Каждая бабуля (до %1) заставляет сахарные кусочки созревать на %2 раньше.", + "Activating this will triple your CpS for 1 hour, at the cost of 1 sugar lump.": "Активация утраивает печ/с на 1 час за 1 кусочек сахара.", + "May only be used once per ascension.": "Можно использовать только один раз за восхождение.", + "activate the sugar frenzy": "активировать сахарное безумие", + "Sugar frenzy!": "Сахарное безумие!", + "CpS x%1 for 1 hour!": "x%1 печ/с на 1 час!", + "Garden plants grow every second.
Garden seeds are free to plant.
You can switch soils at any time.": "Садовые растения растут каждую секунду.
Семена можно сеять бесплатно.
Грунт можно поменять в любой момент.", + "Dropped by %1.": "Выпало: %1.", + "Dropped by %1 plants.": "Выпало растений: %1.", + "Must own the %1 upgrade.": "Необходимо владеть %1 улучшением.", + "Sugar lumps are twice as likely to be unusual.": "Необычные кусочки сахара попадаются вдвое чаще.", + "+%1% sugar lump growth.": "+%1% к росту кусочков сахара.", + "Sugar lumps ripen %1 sooner.": "Кусочки сахара созревают на %1 раньше.", + "Sugar lumps mature %1 sooner.": "Кусочки сахара вырастают на %1 раньше.", + "Bifurcated sugar lumps appear %1% more often and are %2% more likely to drop 2 lumps.": "Двойные кусочки сахара появляются на %1% чаще и с вероятностью % 2% выпадает 2 кусочка.", + "Mouse over a wrinkler to see how many cookies are in its stomach.": "Наведите курсор на морщинника, чтобы увидеть, сколько печенья у него в желудке.", + "Unlocks the Buy all feature, which lets you instantly purchase every upgrade in your store (starting from the cheapest one).
Also unlocks the Vault, a store section where you can place upgrades you do not wish to auto-buy.": "Разблокирует функцию Купить все, которая позволяет мгновенно приобретать все улучшения в магазине (начиная с самого дешевого).
Также разблокирует Хранилище — раздел магазина, где можно разместить улучшения, которые не хотите покупать автоматически.", + "Mouse over an upgrade to see its tier.
Note: only some upgrades have tiers. Tiers are purely cosmetic and have no effect on gameplay.": "Наведите курсор мыши на улучшение, чтобы увидеть его уровень.
Примечание. Улучшения доступны только на некоторых уровнях. Уровни являются формальными и не влияют на процесс игры.", + "You now benefit from the boost provided by heralds.
Each herald gives you +1% CpS.
Look on the purple flag at the top to see how many heralds are active at any given time.": "Теперь вы получите бонус от вестников.
Каждый вестник дает вам +1% к печ/с.
Посмотрите на фиолетовый флаг сверху, чтобы узнать количество активных вестников.", + "Seasonal random drops have a 1/5 chance to carry over through ascensions.": "Выпадение случайного сезона переносится в следующее восхождение с вероятностью 1/5.", + "Unlocks extra price information.
Each displayed cost now specifies how long it'll take you to afford it, and how much of your bank it represents.": "Открывает дополнительную информацию о цене.
Теперь для каждой цены указывается, сколько нужно времени, чтобы себе это позволить, и какую часть вашего банка она составляет.", + "Unlocks the shimmering veil, a switch that passively boosts your CpS by %1%.
You start with the veil turned on; however, it is very fragile, and clicking the big cookie or any golden cookie or reindeer will turn it off, requiring %2 of CpS to turn back on.": "Разблокирует переключатель мерцающей вуали, который пассивно повышает печ/с на %1%.
Вуаль очень хрупкая: щелчок по большому печенью, любому золотому печенью или оленю отключает ее, и для ее включения потребуется %2 печ/с.", + "Boosts your cookie production by %1% when active.
The veil is very fragile and will break if you click the big cookie or any golden cookies or reindeer.

Once broken, turning the veil back on costs %2 of unbuffed CpS.": "Увеличивает производство печенья на %1% в активном состоянии.
Вуаль очень хрупкая: она разрушается, если щелкнуть на большое печенье, золотое печенье или оленя.

После этого возвращение вуали стоит %2 печ/с без баффа.", + "Has a %1% chance to not break.": "Шанс не разрушиться: %1%.", + "The shimmering veil is more resistant, and has a %1% chance not to break. It also gives +%2% more CpS.": "Мерцающая вуаль более устойчивая и имеет шанс не разрушиться: %1%. Она также дает +%2% к печ/с.", + "Active.": "Активно.", + "The reinforced membrane protects the shimmering veil.": "Усиленная мембрана защищает мерцающую вуаль.", + "The shimmering veil disappears...": "Мерцающая вуаль исчезает...", + "Prior to purchasing the %1 upgrade in a run, random drops are %2 times more common.": "До покупки улучшения %1 в испытании случайные выпадения выпадают происходят в %2 раз чаще.", + "Never forget your %1.": "Никогда не забывайте %1.", + "Pay close attention to the humble %1.": "Уделяйте особое внимание смиренному %1.", + "You've been neglecting your %1.": "Вы пренебрегали %1.", + "Remember to visit your %1 sometimes.": "Не забывайте иногда навещать %1.", + "You don't know what you have until you've lost it.": "Вы не осознаете, что у вас есть, пока не потеряете это.", + "Remember to take breaks.": "Не забывайте делать перерывы.", + "Hey, what's up. I'm a fortune cookie.": "Эй, как дела? Я печенье с предсказанием.", + "You think you have it bad? Look at me.": "Думаете, у вас все плохо? Посмотрите на меня.", + "The news ticker may occasionally have fortunes, which may be clicked for something good.": "В ленте новостей иногда могут появляться предсказания. Щелкните на него, чтобы получить что-нибудь хорошее.", + "Through clever accounting, this actually makes kitten upgrades %1% cheaper.": "Благодаря умному учету улучшения котят становятся на %1% дешевле.", + "Unlocks the ability to pet your dragon by clicking on it once hatched.": "Разблокирует возможность погладить дракона, если щелкнуть по нему после того, как он вылупился.", + "Cost scales with CpS, but %1 times cheaper with a fully-trained dragon.": "Цена зависит от печ/с, но с обученным драконом она будет в %1 раз ниже.", + "Golden cookies may trigger a Dragon Harvest.": "Золотые печеньки могут запускать Сбор драконьего урожая.", + "Golden cookies may trigger a Dragonflight.": "Золотые печеньки могут запускать Полет дракона.", + "Dragon harvest and Dragonflight are %1% stronger.": "Сбор драконьего урожая и Полет дракона на %1% мощнее.", + "Kittens are %1% more effective.": "Котята на %1% эффективнее.", + "Each kitten upgrade boosts %1 CpS by %2%.": "Каждое улучшение для котят повышает печ/с %1 на %2%.", + "Each rank of milk boosts %1 CpS by %2%.": "Каждый ранг молока повышает печ/с %1 на %2%.", + "Cursor levels boost clicks by %1% each (up to cursor level %2).": "Уровни курсора увеличивают количество кликов на %1% каждый (до %2 уровня).", + "%1 are now effective up to cursor level %2.": "%1 теперь действуют до уровня курсора %2.", + "Seasonal cookies purchased: %1.": "Приобретено сезонное печенье: %1.", + "Reindeer cookies purchased: %1.": "Приобретено печенье с оленем: %1.", + "Eggs purchased: %1.": "Куплены яйца: %1.", + "Golden and wrath cookie effect duration +%1%.": "+%1% к длительности эффекта золотого и злого печенья.", + "Golden and wrath cookies appear %1% more.": "Золотого и злого печенья появляется на %1% больше.", + "Golden and wrath cookies appear %1% less.": "Золотого и злого печенья появляется на %1% меньше.", + "Buildings grant -%1% CpS.": "Здания дают на %1% меньше ПвС.", + "Selling buildings triggers a buff boosted by how many buildings were sold.": "Продажа зданий дает бафф, увеличивающийся в зависимости от количества проданных зданий.", + "Buff boosts clicks by +%1% for every building sold for %2 seconds.": "Бафф увеличивает количество кликов на %1% в течение %2 сек. за каждое проданное здание.", + "CpS bonus fluctuating between %1 and %2 over time.": "Бонус ПвС со временем переключается между %1 и %2.", + "Effect cycles over %1 hours.": "Эффект повторяется через %1 ч.", + "Some seasonal effects are boosted.": "Усилено несколько сезонных эффектов.", + "Large boost.": "Большое усиление.", + "Medium boost.": "Среднее усиление.", + "Small boost.": "Малое усиление.", + "Switching seasons is %1% pricier.": "Смена сезонов на %1% дороже.", + "Switching seasons is %1% cheaper.": "Смена сезонов на %1% дешевле.", + "Heavenly chips have %1% less effect.": "Эффект небесных крошки на %1% меньше.", + "Buildings produce %1% more.": "Здания производят на %1% больше.", + "Buildings produce %1% less.": "Здания производят на %1% меньше.", + "All golden cookies are wrath cookies with a greater chance of a negative effect.": "Все золотое печенье становится злым с высоким шансом негативного эффекта.", + "Wrinklers appear %1% faster and digest %2% more cookies.": "Морщинники появляются на %1% быстрее и съедают на %2% больше печенья.", + "Effect is only active when your total amount of buildings ends with 0.": "Эффект действует, только если количество зданий оканчивается на 0.", + "Achievement unlocked": "Достижение разблокировано", + "Make %1 just from %2.": "Получить %1 только с помощью %2.", + "Bake %1 in one ascension.": "Испечь %1 за одно восхождение.", + "Bake %1 per second.": "Испеките %1 в секунду.", + "Have %1.": "Получить %1.", + "Ascend at least once.": "Совершить хотя бы одно восхождение.", + "Ascend %1 times.": "Совершить восхождение %1 раз.", + "Ascend with %1 baked.": "Совершить восхождение с %1 испеченных печенек.", + "Make %1 by only having clicked %2 times.": "Испечь %1 за всего %2 кликов.", + "Make %1 with no cookie clicks.": "Испечь %1 без кликов по печенью.", + "Get to %1 baked with no upgrades purchased.": "Испечь %1 без покупки улучшений.", + "Get to %1 baked in %2.": "Испечь %1 за %2.", + "Make %1 from clicking.": "Получить %1 за клик.", + "Sell a grandma.": "Продать бабулю.", + "Have at least %1 of every building.": "Получить хотя бы %1 шт. каждого типа строения.", + "Have at least 1 of the most expensive object, 2 of the second-most expensive, 4 of the next and so on (capped at %1).": "Получить хотя бы 1 самый дорогой объект, 2 вторых по дороговизне объекта, 4 следующих и т. д. (не более %1).", + "Have at least 10 of the most expensive object, 20 of the second-most expensive, 30 of the next and so on.": "Получить хотя бы 1о самых дорогих объектов, 20 вторых по дороговизне объектов, 30 следующих и т. д.", + "Click a golden cookie.": "Кликнуть по золотому печенью.", + "Click %1.": "Кликнуть %1.", + "Hack in some cookies.": "Хакнуть несколько печенек.", + "Click really, really fast.": "Кликать очень-очень быстро.", + "Have at least %1 of everything.": "Получить хотя бы по %1 шт. каждого вида.", + "Own %1.": "Получить %1.", + "Purchase %1.": "Купить %1.", + "Dunk the cookie.": "Обмакнуть печенье.", + "Appease the grandmatriarchs at least once.": "Успокоить бабульматриархов хотя бы один раз.", + "Appease the grandmatriarchs at least %1 times.": "Успокоить бабульматриархов хотя бы %1 раз.", + "Declare a covenant with the grandmatriarchs.": "Заключить договор с бабульматриархами.", + "Own at least %1 grandma types.": "Получить хотя бы %1 типов бабуль.", + "Unlock 100% of your heavenly chips power.": "Разблокировать 100% мощности своих небесных крошек.", + "You have 1 chance in %1 every second of earning this achievement.": "У вас есть 1 шанс в %1 секунд получить это достижение.", + "Burst 1 wrinkler.": "Взорвать 1 морщинника.", + "Burst %1 wrinklers.": "Взорвать %1 морщинников.", + "Unlock every Halloween-themed cookie.
Owning this achievement makes Halloween-themed cookies drop more frequently in future playthroughs.": "Разблокировать все хэллоуинские печеньки.
Благодаря этому достижению в будущих играх хэллоуинские печеньки будут выпадать чаще.", + "Reach Santa's 7th form.": "Достичь 7-ой формы Санты.", + "Reach Santa's final form.": "Достичь финальной формы Санты.", + "Unlock every Christmas-themed cookie.
Owning this achievement makes Christmas-themed cookies drop more frequently in future playthroughs.": "Разблокировать все рождественские печеньки.
Благодаря этому достижению в будущих играх рождественские печеньки будут выпадать чаще.", + "Pop 1 reindeer.": "Лопнуть 1 оленя.", + "Pop %1 reindeer.": "Лопнуть %1 оленей.", + "Pop a reindeer during an elder frenzy.": "Лопнуть оленя во время безумия старушек.", + "Unlock every Valentine-themed cookie.": "Разблокировать все печеньки, посвященные дню Святого Валентина.", + "Click the tiny cookie.": "Кликнуть крошечное печенье.", + "This is for baking %1 and making it on the local news.": "Это нужно для того, чтобы испечь %1 и попасть в местные новости.", + "Name yourself Orteil.
Note: usurpers incur a -%1% CpS penalty until they rename themselves something else.
": "Назовите себя Orteil.
Примечание. Нарушители будут оштрафованы на -%1% печ/с, пока не переименуют себя.
", + "Use an add-on.": "Использовать дополнение.", + "Unlock 1 egg.": "Разблокировать 1 яйцо.", + "Unlock %1 eggs.": "Разблокировать %1 яиц.", + "Unlock all the eggs.
Owning this achievement makes eggs drop more frequently in future playthroughs.": "Разблокировать все яйца.
Благодаря этому достижению в будущих играх яйца будут попадаться чаще.", + "Give your bakery a name.": "Дать название своей пекарне.", + "Click this achievement's slot.": "Кликнуть слот этого достижения.", + "Complete your dragon's training.": "Завершить обучение дракона.", + "Click on the news ticker %1 times.": "Кликнуть ленту новостей %1 раз.", + "Own a combined %1 %2 and %3.": "Получить одновременно %1 %2 и %3.", + "Own %1 upgrades and %2 buildings.": "Получить %1 улучшений и %2 строений.", + "Own %1 heavenly upgrades.": "Получить божественные улучшения: %1.", + "Burst the near-extinct shiny wrinkler.": "Взорвать редкого блестящего морщинника.", + "Click a golden cookie less than 1 second after it spawns.": "Кликнуть по золотому печенью менее чем через 1 секунду после его появления.", + "Click a golden cookie less than 1 second before it dies.": "Кликнуть по золотому печенью менее чем за 1 секунду до его исчезновения.", + "Harvest %1 coalescing sugar lumps.": "Собрать выросшие кусочки сахара: %1.", + "Successfully harvest a coalescing sugar lump before it's ripe.": "Успешно собрать выросший кусочек сахара до того, как он созреет.", + "Harvest a bifurcated sugar lump.": "Собрать двойной кусочек сахара.", + "Harvest a golden sugar lump.": "Собрать золотой кусочек сахара.", + "Harvest a meaty sugar lump.": "Собрать мясной кусочек сахара.", + "Harvest a caramelized sugar lump.": "Собрать карамельный кусочек сахара.", + "Reach level %1 %2.": "Достичь уровня %1 %2.", + "Cast %1 spells.": "Использовать заклинания %1.", + "Have %1 golden cookies simultaneously.": "Получить одновременно %1 золотых печенек.", + "Manage a cookie legacy for at least a year.": "Управлять печеньем, накопленным не менее чем за год.", + "Harvest %1 mature garden plants.": "Собрать %1 созревших садовых культур.", + "Fill every tile of the biggest garden plot with plants.": "Засадить растениями каждую грядку самого большого садового участка.", + "Unlock every garden seed.": "Разблокировать каждое семечко в саду.", + "Convert a complete seed log into sugar lumps by sacrificing your garden to the sugar hornets.
Owning this achievement makes seeds %1% cheaper, plants mature %2% sooner, and plant upgrades drop %3% more.": "Превращает заполненный журнал семян в кусочки сахара, жертвуя сад сахарным шершням.
С этим достижением семена становятся на %1% дешевле, культуры созревают на %2% быстрее, а улучшения растений выпадают на %3% чаще.", + "Ascend with exactly %1.": "Получить ровно %1 за восхождение.", + "Have your reinforced membrane protect the shimmering veil.": "Получить усиленную мембрану, которая защищает мерцающую вуаль.", + "Own every fortune upgrade.
Owning this achievement makes fortunes appear twice as often; unlocked fortune upgrades also have a %1% chance to carry over after ascending.": "Дает каждое улучшение удачи.
С этим достижением удача появляется вдвое чаще. Разблокированные улучшения удачи также могут переноситься в следующее восхождение с вероятностью %1%.", + "Make your first stock market profit.": "Приносит первую прибыль на фондовой бирже.", + "Own at least %1 of a stock market good.": "Владеть не менее %1 позиций на фондовой бирже.", + "Own at least %1 of every stock market good.": "Владеть не менее %1 шт. для каждой позиции на фондовой бирже.", + "Make a day of CpS ($%1) in 1 stock market sale.": "Получить день печ/с ($%1) за 1 продажу на фондовой бирже.", + "Spend a day of CpS ($%1) in 1 stock market purchase.": "Потратить день печ/с ($%1) на 1 покупку на фондовой бирже.", + "Have your stock market profits surpass a whole year of CpS ($%1).": "Сделать так, чтобы ваша прибыль на фондовом рынке превысила годовой показатель печ/с ($%1).", + "Unlock the highest-tier stock market headquarters.": "Разблокировать штаб-квартиру на фондовом рынке высшего уровня.", + "Have your stock market profits surpass $%1.": "Сделать так, чтобы ваша прибыль на фондовом рынке превысила $%1.", + "Own %1 kitten upgrades.": "Получить %1 улучшений для котят.", + "Find the forgotten madeleine.": "Найти забытое печенье мадлен.", + "Click one of Santa's helper grandmas during Christmas season.": "Нажмите на одну из бабушек-помощниц Санты во время рождественских праздников.", + "Frenzy": "Безумие", + "Elder frenzy": "Безумие старушек", + "Click frenzy": "Кликательное безумие", + "Clot": "Сгусток", + "Dragon Harvest": "Сбор драконьего урожая", + "Everything must go": "Все должно сработать", + "Cursed finger": "Проклятый палец", + "Cookie storm": "Шторм печенек", + "Sugar blessing": "Сахарное благословение", + "Haggler's luck": "Удача Торговца", + "Haggler's misery": "Страдания Торговца", + "Crafty pixies": "Коварные пикси", + "Nasty goblins": "Противные гоблины", + "Magic adept": "Адепт магии", + "Magic inept": "Никудышный маг", + "Devastation": "Опустошение", + "Sugar frenzy": "Сахарное безумие", + "Loan %1": "Заем %1", + "Loan %1 (interest)": "Заем %1 (проценты)", + "%1 Power!": "%1 к силе!", + "%1 Burden!": "%1 к бремени!", + "Cookie production x%1 for %2!": "Производство печенья увеличивается x%1 на %2!", + "Cookie production +%1% for %2!": "Производство печенья увеличивается +%1% на %2!", + "Cookie production %1% slower for %2!": "Производство печенья замедляется на x%1 на %2!", + "Cookie production halved for %1!": "Производство печенья сокращается вдвое на %1!", + "Your %1 are boosting your CpS!": "%1 повышает печ/с!", + "Your %1 are rusting your CpS!": "%1 снижает печ/с!", + "All buildings are %1% cheaper for %2!": "Все строения на %1% дешевле на %2!", + "All buildings are %1% pricier for %2!": "Все строения на %1% дороже на %2!", + "All upgrades are %1% cheaper for %2!": "Все улучшения на %1% дешевле на %2!", + "All upgrades are %1% pricier for %2!": "Все улучшения на %1% дороже на %2!", + "Cookie production halted for %1,
but each click is worth %2 of CpS.": "Производство печенья останавливается на %1,
но каждый клик стоит %2 печ/с.", + "Clicking power x%1 for %2!": "Мощность кликов увеличивается x%1 на %2!", + "Clicking power +%1% for %2!": "Мощность кликов увеличивается +%1% на %2!", + "Cookies everywhere!": "Печенье везде!", + "You find %1% more golden cookies for the next %2.": "Вы найдете на %1% больше золотых печенек в течение следующих %2.", + "Spells backfire %1 times less for %2.": "Заклинания дают эффект в %1 раз меньше в течение %2.", + "Spells backfire %1 times more for %2.": "Заклинания дают эффект в %1 раз больше в течение %2.", + "can be done once every %1": "Можно делать раз в %1", + "usable again in %1": "До следующего применения: %1", + "+%1/s": "+%1/с.", + "Next tick in %1.": "До следующего цикла: %1.", + "Initializing...": "Инициализация...", + "View %1": "Посмотреть: %1", + "Close %1": "Закрыть: %1", + "Details:": "Сведения:", + "Effects:": "Эффекты:", + "Effect is active.": "Эффект действует.", + "Effect is inactive.": "Эффект не действует.", + "Current bonus:": "Текущий бонус:", + "Garden": "Сад", + "Baker's wheat": "Зерно для выпечки", + "[Baker's wheat quote]A plentiful crop whose hardy grain is used to make flour for pastries.": "Высокоурожайное морозоустойчивое зерно, из которого делают муку для выпечки.", + "Thumbcorn": "Пальцеобразная кукуруза", + "[Thumbcorn quote]A strangely-shaped variant of corn. The amount of strands that can sprout from one seed is usually in the single digits.": "Вид кукурузы странной формы. Количество ростков, которые могут прорасти из одного семени, обычно исчисляется однозначными числами.", + "Cronerice": "Морщинистый рис", + "[Cronerice quote]Not only does this wrinkly bulb look nothing like rice, it's not even related to it either; its closest extant relative is the weeping willow.": "Эта морщинистая луковица не только совсем не похожа на рис, но и даже не связана с ним; ближайший дошедший до нас родственник этого растения — плакучая ива.", + "Gildmillet": "Золотое просо", + "[Gildmillet quote]An ancient staple crop, famed for its golden sheen. Was once used to bake birthday cakes for kings and queens of old.": "Древняя культура, известная своим золотистым блеском. В древние времена из нее пекли праздничные торты для королей и королев.", + "Ordinary clover": "Клевер обыкновенный", + "[Ordinary clover quote]Trifolium repens, a fairly mundane variety of clover with a tendency to produce four leaves. Such instances are considered lucky by some.": "Трехлистник ползучий — довольно распространенная разновидность клевера, у которого можно часто встретить четырехлистные лепестки. Считается, что такие лепестки приносят удачу.", + "Golden clover": "Золотой клевер", + "[Golden clover quote]A variant of the ordinary clover that traded its chlorophyll for pure organic gold. Tragically short-lived, this herb is an evolutionary dead-end - but at least it looks pretty.": "Разновидность обычного клевера, у которого вместо хлорофиллов чистое органическое золото. К сожалению, из-за недолговечности эволюция этого растения зашла в тупик, но, по крайней мере, оно выглядит очень красиво.", + "Shimmerlily": "Мерцающая лилия", + "[Shimmerlily quote]These little flowers are easiest to find at dawn, as the sunlight refracting in dew drops draws attention to their pure-white petals.": "Эти маленькие цветы легче всего найти на рассвете, поскольку солнечный свет, преломляющийся в каплях росы, красиво подсвечивает их белоснежные лепестки.", + "Elderwort": "Бузина", + "[Elderwort quote]A very old, long-forgotten subspecies of edelweiss that emits a strange, heady scent. There is some anecdotal evidence that these do not undergo molecular aging.": "Очень старый, давно забытый подвид эдельвейса, источающий странный пьянящий аромат. Есть неофициальные данные о том, что эти растения не подвергаются молекулярному старению.", + "Bakeberry": "Сдобная ягода", + "[Bakeberry quote]A favorite among cooks, this large berry has a crunchy brown exterior and a creamy red center. Excellent in pies or chicken stews.": "Фаворит среди поваров, эта большая ягода имеет хрустящую коричневую оболочку и кремово-красную мякоть. Превосходно подходит для приготовления пирогов или тушеной курицы.", + "Chocoroot": "Шоколадный корень", + "[Chocoroot quote]A tangly bramble coated in a sticky, sweet substance. Unknown genetic ancestry. Children often pick these from fields as-is as a snack.": "Колючая ежевика, покрытая липкой сладкой субстанцией. Генетическая родословная неизвестна. Дети часто собирают эту ягоду в полях, чтобы полакомиться.", + "White chocoroot": "Белый шоколадный корень", + "[White chocoroot quote]A pale, even sweeter variant of the chocoroot. Often impedes travelers with its twisty branches.": "Более бледный и более сладкий вариант шоколадного корня. Часто мешает путешественникам своими цепкими ветвями.", + "White mildew": "Белая мучнистая роса", + "[White mildew quote]A common rot that infests shady plots of earth. Grows in little creamy capsules. Smells sweet, but sadly wilts quickly.": "Распространенная гниль, поражающая тенистые участки почвы. Растет в маленьких кремовых капсулах. Имеет сладкий запах, но, к сожалению, быстро увядает.", + "Brown mold": "Коричневая плесень", + "[Brown mold quote]A common rot that infests shady plots of earth. Grows in odd reddish clumps. Smells bitter, but thankfully wilts quickly.": "Распространенная гниль, поражающая тенистые участки почвы. Растет неровными красноватыми комками. Имеет горький запах, но, к счастью, быстро увядает.", + "Meddleweed": "Путающаяся трава", + "[Meddleweed quote]The sign of a neglected farmland, this annoying weed spawns from unused dirt and may sometimes spread to other plants, killing them in the process.": "Признак заброшенности сельскохозяйственных угодий. Этот раздражающий сорняк растет на необрабатываемой почве и иногда может заплетать другие растения, убивая их.", + "Whiskerbloom": "Мохнатый цветок", + "[Whiskerbloom quote]Squeezing the translucent pods makes them excrete a milky liquid, while producing a faint squeak akin to a cat's meow.": "При сдавливании его полупрозрачные стручки выделяют молочную жидкость и издают слабый писк, похожий на кошачье мяуканье.", + "Chimerose": "Химероза", + "[Chimerose quote]Originating in the greener flanks of polar mountains, this beautiful flower with golden accents is fragrant enough to make any room feel a little bit more festive.": "Этот красивый цветок с золотыми прожилками растет на зеленых склонах северных гор. Благодаря своему яркому аромату он легко может создать праздничное настроение в помещении.", + "Nursetulip": "Нурсетюлип", + "[Nursetulip quote]This flower grows an intricate root network that distributes nutrients throughout the surrounding soil. The reason for this seemingly altruistic behavior is still unknown.": "Этот цветок имеет сложную корневую сеть, которая распределяет питательные вещества по окружающей почве. Причина такого альтруистического поведения до сих пор неизвестна.", + "Drowsyfern": "Усыпляющий папоротник", + "[Drowsyfern quote]Traditionally used to brew a tea that guarantees a good night of sleep.": "Традиционно заваривается в качестве чая, который гарантирует крепкий ночной сон.", + "Wardlichen": "Защитный лишайник", + "[Wardlichen quote]The metallic stench that emanates from this organism has been known to keep insects and slugs away.": "Известно, что металлический запах этого растения отпугивает насекомых и слизней.", + "Keenmoss": "Острый мох", + "[Keenmoss quote]Fuzzy to the touch and of a vibrant green. In plant symbolism, keenmoss is associated with good luck for finding lost objects.": "Пушистое растение ярко-зеленого цвета. Считается, что острый мох приносит удачу в поиске потерянных вещей.", + "Queenbeet": "Королевский корень", + "[Queenbeet quote]A delicious taproot used to prepare high-grade white sugar. Entire countries once went to war over these.": "Вкусный корнеплод, используемый для приготовления высококачественного белого сахара. Когда-то из-за них воевали целые страны.", + "Juicy queenbeet": "Сочный королевский корень", + "[Juicy queenbeet quote]A delicious taproot used to prepare high-grade white sugar. Entire countries once went to war over these.
It looks like this one has grown especially sweeter and juicier from growing in close proximity to other queenbeets.": "Вкусный корнеплод, используемый для приготовления высококачественного белого сахара. Когда-то из-за них воевали целые страны.
Этот корень еще слаще и сочнее из-за выращивания в непосредственной близости от других королевских корней.", + "Duketater": "Лесной картофель", + "[Duketater quote]A rare, rich-tasting tuber fit for a whole meal, as long as its strict harvesting schedule is respected. Its starch has fascinating baking properties.": "Редкий клубень с насыщенным вкусом, используется как полноценное самостоятельное блюдо, если соблюдается строгий график сбора урожая. Его крахмал прекрасно подходит для выпечки.", + "Crumbspore": "Мелкоспора", + "[Crumbspore quote]An archaic mold that spreads its spores to the surrounding dirt through simple pod explosion.": "Древняя плесень, которая распространяет свои споры посредством взрыва стручка.", + "Doughshroom": "Тестогриб", + "[Doughshroom quote]Jammed full of warm spores; some forest walkers often describe the smell as similar to passing by a bakery.": "Наполнен теплыми спорами; те, кто бывает в лесу, часто описывают запах, как будто они проходят мимо пекарни.", + "Glovemorel": "Перчаточный сморчок", + "[Glovemorel quote]Touching its waxy skin reveals that the interior is hollow and uncomfortably squishy.": "Снаружи покрыт восковой кожицей, а внутри полый и неприятно мягкий.", + "Cheapcap": "Грошовая шляпка", + "[Cheapcap quote]Small, tough, and good in omelettes. Some historians propose that the heads of dried cheapcaps were once used as currency in some bronze age societies.": "Маленькие, плотные и вкусные в омлете. Некоторые историки предполагают, что в бронзовом веке сушеные шляпки этих грибов использовались в качестве валюты.", + "Fool's bolete": "Лжеборовик", + "[Fool's bolete quote]Named for its ability to fool mushroom pickers. The fool's bolete is not actually poisonous, it's just extremely bland.": "Назван за способность обмануть грибников. Лжеборовик на самом деле не ядовит, он просто очень мягкий.", + "Wrinklegill": "Вринклгилл", + "[Wrinklegill quote]This mushroom's odor resembles that of a well-done steak, and is said to whet the appetite - making one's stomach start gurgling within seconds.": "Запах этого гриба напоминает запах хорошо прожаренного стейка. Говорят, он возбуждает аппетит и провоцирует урчание в желудке в течение нескольких секунд.", + "Green rot": "Зеленая гниль", + "[Green rot quote]This short-lived mold is also known as \"emerald pebbles\", and is considered by some as a pseudo-gem that symbolizes good fortune.": "Эта недолговечная плесень также известна как «изумрудная галька». Некоторые считают ее псевдо-драгоценным камнем, который приносит удачу.", + "Shriekbulb": "Визжащая луковица", + "[Shriekbulb quote]A nasty vegetable with a dreadful quirk : its flesh resonates with a high-pitched howl whenever it is hit at the right angle by sunlight, moonlight, or even a slight breeze.": "Противный овощ с ужасной особенностью: его мякоть издает пронзительный визг, когда на него под прямым углом попадает солнечный или лунный свет и даже легкий ветерок.", + "Tidygrass": "Трава-уборщик", + "[Tidygrass quote]The molecules this grass emits are a natural weedkiller. Its stems grow following a predictable pattern, making it an interesting -if expensive- choice for a lawn grass.": "Эта трава испускает молекулы, которые уничтожают сорняки. Ее стебли растут по предсказуемой схеме, что делает ее интересной, хоть и дорогой, основой для газона.", + "Everdaisy": "Эвердейзи", + "[Everdaisy quote]While promoted by some as a superfood owing to its association with longevity and intriguing geometry, this elusive flower is actually mildly toxic.": "Хотя некоторые продвигают этот цветок как суперфуд из-за его свойств, связанных с долголетием, и интересной геометрии, на самом деле он в некоторой степени ядовит.", + "Ichorpuff": "Ихорпафф", + "[Ichorpuff quote]This puffball mushroom contains sugary spores, but it never seems to mature to bursting on its own. Surrounding plants under its influence have a very slow metabolism, reducing their effects but lengthening their lifespan.": "Этот гриб-дождевик содержит сладкие споры, но кажется, что он никогда не созревает и не лопается сам по себе. Он сильно замедляет обмен веществ находящихся рядом растений, что снижает их воздействие, но увеличивает продолжительность их жизни.", + "Garden information": "О саде", + "Your garden is frozen, providing no effects.": "Сад заморожен и не дает никаких эффектов.", + "Combined effects of all your plants:": "Суммарные эффекты всех ваших растений:", + "None.": "Нет.", + "-You can cross-breed plants by planting them close to each other; new plants will grow in the empty tiles next to them.
-Unlock new seeds by harvesting mature plants.
-When you ascend, your garden plants are reset, but you keep all the seeds you've unlocked.
-Your garden has no effect and does not grow while the game is closed.": "- Чтобы смешивать растения, сажайте их рядом, и на соседних пустых клетках вырастут гибриды.
- Чтобы получить новые семена, собирайте урожай с созревших растений.
- Возвысившись, вы теряете все растения в саду, но сохраняете все полученные семена.
- Когда игра закрыта, сад не дает никаких эффектов и не растет.", + "Harvest all": "Собрать все", + "Instantly harvest all plants in your garden.": "Мгновенный сбор всего урожая в саду.", + "%1 to harvest only mature, mortal plants.": "%1 на сбор урожая только с созревших, живых растений.", + "%1 to harvest all mature plants of this type.": "%1 на сбор урожая со всех созревших растений такого типа.", + "Freeze": "Заморозка", + "Cryogenically preserve your garden.
Plants no longer grow, spread or die; they provide no benefits.
Soil cannot be changed.
Using this will effectively pause your garden.": "Криоконсервация сада.
Ничего не растет, не плодится и не умирает; не дает никаких преимуществ.
Почву менять нельзя.
Заморозка ставит сад на паузу.", + "Garden is frozen. Unfreeze to resume.": "Сад заморожен. Чтобы продолжить, разморозьте его.", + "Sacrifice garden": "Пожертвовать садом", + "A swarm of sugar hornets comes down on your garden, destroying every plant as well as every seed you've unlocked - leaving only a %1 seed.
In exchange, they will grant you %2.
This action is only available with a complete seed log.": "В сад прилетает рой сахарных шершней и уничтожает все растения и все открытые вами семена, оставляя лишь одно семя: %1.
Взамен вы получаете: %2.
Действие доступно только при заполненном журнале семян.", + "Do you REALLY want to sacrifice your garden to the sugar hornets?
You will be left with an empty plot and only the %1 seed unlocked.
In return, you will gain %2 sugar lumps.
": "Вы ТОЧНО хотите пожертвовать сад сахарным шершням?
Останется пустой участок и семя «%1».
Взамен вы получите куски сахара (%2).
", + "Sacrifice!": "Пожертвовать!", + "You've sacrificed your garden to the sugar hornets, destroying your crops and your knowledge of seeds.
In the remains, you find %1 sugar lumps.": "Сад пожертвован сахарным шершням. Урожай и знания о семенах утеряны.
Среди остатков нашлись куски сахара (%1).", + "immortal": "бессмертное", + "predictable growth": "предсказуемый рост", + "surrounding plants (%1x%1) age %2% faster": "соседние растения (%1x%1) старятся на %2% быстрее", + "surrounding plants (%1x%1) age %2% slower": "соседние растения (%1x%1) старятся на %2% медленнее", + "surrounding plants (%1x%1) are %2% more efficient": "соседние растения (%1x%1) на %2% эффективнее", + "surrounding plants (%1x%1) are %2% less efficient": "соседние растения (%1x%1) на %2% менее эффективны", + "surrounding tiles (%1x%1) develop no weeds or fungus": "на соседних клетках (%1x%1) не растут сорняки и грибок", + "harvest when mature for +%1 of CpS (max. %2% of bank)": "собрать созревшее за +%1 ПвС (максимум %2% банка)", + "harvest when mature for a sugar lump": "собрать созревшее за кусок сахара", + "useless": "бесполезно", + "spreads easily": "легко распространяется", + "may spread as %1": "может распространяться как %1", + "grows in empty tiles": "растет на пустых клетках", + "may overtake nearby plants": "может захватить соседние растения", + "may sometimes drop spores when uprooted": "при выкапывании может иногда сбрасывать споры", + "explodes into up to %1 of CpS at the end of its lifecycle (max. %2% of bank)": "в конце жизненного цикла взрывается и дает до %1 ПвС (максимум %2% банка)", + "cannot handle cold climates; %1% chance to die when frozen": "не переносит холода; %1% шанс умереть при заморозке", + "the unfortunate result of some plant combinations": "неудачная комбинация некоторых растений", + "Soil unlocked at %1 farms.": "Почва открыта на %1 фермах.", + "Your field is currently using this soil.": "На вашем поле сейчас такая почва.", + "You will be able to change your soil again in %1.": "Сменить почву можно через %1.", + "Click to use this type of soil for your whole field.": "Нажмите, чтобы заполнить почвой все поле.", + "Dirt": "Грязь", + "Simple, regular old dirt that you'd find in nature.": "Простая грязь, как везде в природе.", + "Fertilizer": "Удобрение", + "Soil with a healthy helping of fresh manure. Plants grow faster but are less efficient.": "Почва с доброй порцией свежего навоза. Растения растут быстрее, но менее эффективны.", + "Clay": "Глина", + "Rich soil with very good water retention. Plants grow slower but are more efficient.": "Богатая почва, хорошо удерживающая воду. Растения растут медленнее, но более эффективны.", + "Pebbles": "Гравий", + "Dry soil made of small rocks tightly packed together. Not very conducive to plant health, but whatever falls off your crops will be easy to retrieve.
Useful if you're one of those farmers who just want to find new seeds without having to tend their garden too much.": "Сухая почва из спрессованных камушков. Не особо хороша для здоровья растений, но все упавшее с растений будет легко собрать.
Пригодится, если вы из тех фермеров, кто хочет только собирать семена и не тратить слишком много времени на уход за садом.", + "Wood chips": "Щепки", + "Soil made of bits and pieces of bark and sawdust. Helpful for young sprouts to develop, not so much for mature plants.": "Почва из кусочков коры и опилок. Хороша для проращивания молодых побегов, а для зрелых растений не особо подходит.", + "tick every %1": "цикл раз в %1", + "passive plant effects": "пассивные эффекты растений", + "weed growth": "рост сорняков", + "%1% chance of collecting seeds automatically when plants expire": "%1% шанс автосбора семян при увядании растений", + "plants spread and mutate %1 times more": "растения распространяются и мутируют в %1 раз(-а) больше", + "Plant effects:": "Эффекты растений:", + "Possible mutations:": "Возможные мутации:", + "Average lifespan:": "Среднее время жизни:", + "Average maturation:": "Среднее время созревания:", + "Mature in about %1": "Созреет примерно через %1", + "Decays in about %1": "Сгниет примерно через %1", + "Does not decay": "Не гниет", + "%1 tick": [ + "%1 цикл", + "%1 цикла(-ов)" + ], + "Weed": "Сорняк", + "Fungus": "Грибок", + "Planting cost:": "Цена посадки:", + "%1 of CpS,
minimum %2": "%1 ПвС,
минимум %2", + "%1 seed": "%1", + "Click to select this seed for planting.": "Нажмите, чтобы выбрать семя для посадки.", + "This seed cannot be planted.": "Это семя нельзя посадить.", + "Empty tile": "Пустая клетка", + "This tile of soil is empty.
Pick a seed and plant something!": "Клетка пуста.
Выберите семя и посадите туда.", + "Click to plant %1 for %2.": "Нажмите, чтобы посадить семя «%1» за %2.", + "%1 to plant multiple.": "%1, чтобы посадить несколько.", + "Aging multiplier:": "Множитель старения:", + "Effect multiplier:": "Множитель эффекта:", + "Weeds/fungus repellent:": "Репеллент от сорняков и грибка:", + "This plant is growing here.": "Это растение растет здесь.", + "Stage:": "Этап:", + "bud": "бутон", + "sprout": "росток", + "bloom": "цветок", + "mature": "созрело", + "may reproduce, will drop seed when harvested": "может размножаться; даст семя при сборе", + "Click to harvest.": "Нажмите, чтобы собрать.", + "Click to unearth.": "Нажмите, чтобы выкопать.", + "Click to refill your soil timer and trigger 1 plant growth tick with x%1 spread and mutation rate for %2.": "Нажмите, чтобы восполнить почвенный таймер и запустить 1 цикл роста растения с x%1 скоростью распространения и мутации за %2.", + "Unlocked %1 seed.": "Получено семя: %1", + "Seeds": "Семена", + "Tools": "Инструменты", + "Mature plants harvested: %1 (total: %2)": "Собрано созревших растений: %1 (итого %2)", + "Plot size: %1
(Upgrades with farm level)": "Размер участка: %1
(растет с уровнем фермы)", + "Garden plants age and mutate %1% faster.": "Садовые растения взрослеют и мутируют на %1% быстрее.", + "while plant is alive; scales with plant growth": "пока растение живое; соотносится с его ростом", + "Dungeon": "Подземелье", + "Grimoire": "Гримуар", + "This is your magic meter. Each spell costs magic to use.
Your maximum amount of magic varies depending on your amount of Wizard towers, and their level.
Magic refills over time. The lower your magic meter, the slower it refills.": "Это шкала магии, расходующейся на заклинания.
Максимальный запас магии зависит от башен волшебника и их уровня.
Магия восстанавливается со временем: чем ее меньше, тем медленнее.", + "Spells cast: %1 (total: %2)": "Прочитано заклинаний: %1 (всего %2)", + "Magic cost:": "Расход магии:", + "Chance to backfire:": "Шанс обратного эффекта:", + "Effect:": "Эффект:", + "Backfire:": "Обратный эффект:", + "Backfire!": "Обратный эффект!", + "%1 magic": "%1 магии", + "+%1% of max magic": "+%1 от макс. магии", + "Click to refill %1 units of your magic meter for %2.": "Нажмите, чтобы заполнить %1 делен. шкалы магии за %2.", + "Grimoire spells are %1% cheaper but fail %1% more.": "Заклинания из гримуара стоят на %1% меньше, но на %1% чаще не удаются.", + "Conjure Baked Goods": "Наколдовать выпечку", + "Summon half an hour worth of your CpS, capped at %1% of your cookies owned.": "Призовите полчаса ПвС, но не более %1% от имеющегося у вас печенья.", + "Trigger a %1-minute clot and lose %1 minutes of CpS.": "Задействуйте %1-минутный сгусток и потеряйте %1 мин. ПвС.", + "You magic %1 out of thin air.": "Вы создаете %1 из воздуха.", + "Summoning failed!": "Призыв не удался!", + "Force the Hand of Fate": "Тянуть руку судьбы", + "Summon a random golden cookie. Each existing golden cookie makes this spell +%1% more likely to backfire.": "Призовите случайное золотое печенье. Каждое имеющееся золотое печенье дает +%1% шанс обратного эффекта этого заклинания.", + "Summon an unlucky wrath cookie.": "Призовите несчастливое злое печенье.", + "Promising fate!": "Многообещающая судьба!", + "Sinister fate!": "Зловещая судьба!", + "Stretch Time": "Замедление времени", + "All active buffs gain %1% more time (up to %2 more minutes).": "Все активные баффы продлеваются на %1% (до %2 доп. мин.)", + "All active buffs are shortened by %1% (up to %2 minutes shorter).": "Все активные баффы сокращаются на %1% (до –%2 мин.)", + "No buffs to alter!": "Нет баффов для изменения!", + "Zap! Buffs lengthened.": "Бам! Баффы продлены!", + "Fizz! Buffs shortened.": "Пуф! Баффы сокращены!", + "Spontaneous Edifice": "Спонтанное строение", + "The spell picks a random building you could afford if you had twice your current cookies, and gives it to you for free. The building selected must be under %1, and cannot be your most-built one (unless it is your only one).": "Заклинание выбирает случайное здание, которое вы могли бы купить, будь у вас вдвое больше печенья, и строит его бесплатно. Выбранное строение должно быть ниже %1 и не может быть самым часто возводимым (если только оно не ваше единственное).", + "Lose a random building.": "Потерять случайное здание.", + "No buildings to improve!": "Нет зданий для улучшения!", + "Backfired, but no buildings to destroy!": "Обратный эффект! Но уничтожать нечего.", + "A new %1
bursts out of the ground.": "Из-под земли
возникает %1.", + "One of your %1
disappears in a puff of smoke.": "%1 исчезает в облаке пыли.", + "Haggler's Charm": "Удача торговца", + "Upgrades are %1% cheaper for 1 minute.": "Улучшения на %1% дешевле в течение 1 мин.", + "Upgrades are %1% more expensive for an hour.": "Улучшения на %1% дороже в течение 1 часа.", + "Upgrades are cheaper!": "Улучшения дешевле!", + "Upgrades are pricier!": "Улучшения дороже!", + "Summon Crafty Pixies": "Призыв умелых фей", + "Buildings are %1% cheaper for 1 minute.": "Здания на %1% дешевле в течение 1 мин.", + "Buildings are %1% more expensive for an hour.": "Здания на %1% дороже в течение 1 часа.", + "Buildings are cheaper!": "Здания дешевле!", + "Buildings are pricier!": "Здания дороже!", + "Gambler's Fever Dream": "Мечта азартного игрока", + "Cast a random spell at half the magic cost, with twice the chance of backfiring.": "Прочитайте случайное заклинание за полцены, но с двойным шансом обратного эффекта.", + "No eligible spells!": "Подходящих заклинаний нет!", + "That's too bad!
Magic refunded.": "Жаль!
Уровень магии восполнен.", + "Casting %1
for %2 magic...": "Читаем заклинание «%1»
за %2 магии...", + "Resurrect Abomination": "Воскресить чудовище", + "Instantly summon a wrinkler if conditions are fulfilled.": "Мгновенный призыв морщинника при соблюденных условиях.", + "Pop one of your wrinklers.": "Взорвите одного морщинника.", + "Unable to spawn a wrinkler!": "Морщинник не призван!", + "Rise, my precious!": "Восстань, моя прелесть!", + "But no wrinkler was harmed.": "Ни один морщинник не пострадал.", + "So long, ugly...": "Пока, уродец...", + "Diminish Ineptitude": "Снизить неумение", + "Spells backfire %1 times less for the next %2 minutes.": "Заклинания дают обратный эффект в %1 раз(-а) реже в след. %2 мин.", + "Spells backfire %1 times more for the next %2 minutes.": "Заклинания дают обратный эффект в %1 раз(-а) чаще в след. %2 мин.", + "Ineptitude diminished!": "Неумение снижено!", + "Ineptitude magnified!": "Неумение повышено!", + "Pantheon": "Пантеон", + "[GOD 1 NAME]Holobore, Spirit of Asceticism": "Холобор, дух аскетизма", + "[GOD 1 QUOTE]An immortal life spent focusing on the inner self, away from the distractions of material wealth.": "Бессмертная жизнь, проведенная в самосозерцании, вдали от раздражителей и материальных благ.", + "[GOD 2 NAME]Vomitrax, Spirit of Decadence": "Вомитракс, дух разложения", + "[GOD 2 QUOTE]This sleazy spirit revels in the lust for quick easy gain and contempt for the value of steady work.": "Похабный дух одержим страстью к быстрой наживе и презрением к упорному труду.", + "[GOD 3 NAME]Godzamok, Spirit of Ruin": "Годзамок, дух разрушения", + "[GOD 3 QUOTE]The embodiment of natural disasters. An impenetrable motive drives the devastation caused by this spirit.": "Воплощение природных катастроф. Неутолимая жажда движет этим сеющим разрушение духом.", + "[GOD 4 NAME]Cyclius, Spirit of Ages": "Циклий, дух веков", + "[GOD 4 QUOTE]This spirit knows about everything you'll ever do, and enjoys dispensing a harsh judgment.": "Знает все, о чем вы только можете подумать, и любит высказывать резкие суждения.", + "[GOD 5 NAME]Selebrak, Spirit of Festivities": "Селебрак, дух празднества", + "[GOD 5 QUOTE]This is the spirit of merry getaways and regretful Monday mornings.": "Дух веселых путешествий и тяжкого утра понедельника.", + "[GOD 6 NAME]Dotjeiess, Spirit of Creation": "Дотжейесс, дух созидания", + "[GOD 6 QUOTE]All things that be and ever will be were scripted long ago by this spirit's inscrutable tendrils.": "Все, что есть и будет, давным-давно описано загадочными щупальцами этого духа.", + "[GOD 7 NAME]Muridal, Spirit of Labor": "Муридал, дух труда", + "[GOD 7 QUOTE]This spirit enjoys a good cheese after a day of hard work.": "Любит поесть хорошего сыра после трудного рабочего дня.", + "[GOD 8 NAME]Jeremy, Spirit of Industry": "Джереми, дух промышленности", + "[GOD 8 QUOTE]While this spirit has many regrets, helping you rule the world through constant industrialization is not one of them.": "Жалеет о многом, но не о том, что помог вам править миром с помощью непрестанной индустриализации.", + "[GOD 9 NAME]Mokalsium, Mother Spirit": "Мокальсий, материнский дух", + "[GOD 9 QUOTE]A caring spirit said to contain itself, inwards infinitely.": "Заботливый дух, якобы вечно держащийся внутри себя самого.", + "[GOD 10 NAME]Skruuia, Spirit of Scorn": "Скрууя, дух пренебрежения", + "[GOD 10 QUOTE]This spirit enjoys poking foul beasts and watching them squirm, but has no love for its own family.": "Любит тыкать в чудовищ острой палкой и смотреть, как они корчатся, но не любит собственную семью.", + "[GOD 11 NAME]Rigidel, Spirit of Order": "Ригидель, дух порядка", + "[GOD 11 QUOTE]You will find that life gets just a little bit sweeter if you can motivate this spirit with tidy numbers and properly-filled tax returns.": "Если порадовать его аккуратными цифрами и правильно заполненными налоговыми декларациями, жить станет легче.", + "Diamond slot": "Алмазная ячейка", + "Ruby slot": "Рубиновая ячейка", + "Jade slot": "Нефритовая ячейка", + "empty": "пусто", + "Release to assign %1 to this slot.": "Отпустите, и %1 отправится в эту ячейку.", + "Drag a spirit onto this slot to assign it.": "Перетащите духа в нужную ячейку.", + "If a golden cookie is clicked, this spirit is unslotted and all worship swaps will be used up.": "Если нажать на золотое печенье, дух покинет ячейку, а все смены божеств израсходуются.", + "Each time you slot a spirit, you use up one worship swap.
If you have 2 swaps left, the next one will refill after %1.
If you have 1 swap left, the next one will refill after %2.
If you have 0 swaps left, you will get one after %3.
Unslotting a spirit costs no swaps.": "На помещение духа в ячейку расходуется одна смена божества.
Если смен осталось 2, следующая появится через %1.
Если смена осталась 1, следующая появится через %2.
Если смен не осталось, следующая появится через %3.
На удаление духа смен не тратится.", + "Click to refill all your worship swaps for %1.": "Нажмите, чтобы восполнить все смены за %1.", + "Worship swaps: %1": "Смен божества: %1.", + "next in %1": "До следующей %1.", + "The jade slot behaves as a ruby slot and the ruby slot behaves as a diamond slot.": "Нефритовая ячейка ведет себя как рубиновая ячейка, а рубиновая ячейка ведет себя как алмазная.", + "Stock Market": "Фондовая биржа", + "[STOCK 1 NAME]Old Mills": "Старая мельница", + "[STOCK 1 TYPE]Cereals": "Хлопья", + "[STOCK 1 LOGO]CRL": "ХЛП", + "[STOCK 2 NAME]Cocoa Excavations": "Какаодобыча", + "[STOCK 2 TYPE]Chocolate": "Шоколад", + "[STOCK 2 LOGO]CHC": "ШКЛ", + "[STOCK 3 NAME]Bovine Industries": "Бык Индастриз", + "[STOCK 3 TYPE]Butter": "Масло", + "[STOCK 3 LOGO]BTR": "МСЛ", + "[STOCK 4 NAME]Candy Trust": "Конфетный траст", + "[STOCK 4 TYPE]Sugar": "Сахар", + "[STOCK 4 LOGO]SUG": "САХ", + "[STOCK 5 NAME]Hazel Monastery": "Ореховый монастырь", + "[STOCK 5 TYPE]Nuts": "Орехи", + "[STOCK 5 LOGO]NUT": "ОРХ", + "[STOCK 6 NAME]Wacky Reagants": "Эксцентричные реагенты", + "[STOCK 6 TYPE]Salt": "Соль", + "[STOCK 6 LOGO]SLT": "СОЛ", + "[STOCK 7 NAME]Cosmic Exports": "Космический экспорт", + "[STOCK 7 TYPE]Vanilla": "Ваниль", + "[STOCK 7 LOGO]VNL": "ВНЛ", + "[STOCK 8 NAME]Organic Gnostics": "Органические гностики", + "[STOCK 8 TYPE]Eggs": "Яйца", + "[STOCK 8 LOGO]EGG": "ЯЙЦ", + "[STOCK 9 NAME]Dimensional Exchange": "Пространственный обмен", + "[STOCK 9 TYPE]Cinnamon": "Корица", + "[STOCK 9 LOGO]CNM": "КРЦ", + "[STOCK 10 NAME]Precision Aging": "Точечное старение", + "[STOCK 10 TYPE]Cream": "Сливки", + "[STOCK 10 LOGO]CRM": "СЛВ", + "[STOCK 11 NAME]Pectin Research": "Исследование пектина", + "[STOCK 11 TYPE]Jam": "Джем", + "[STOCK 11 LOGO]JAM": "ДЖМ", + "[STOCK 12 NAME]Dazzle Corp Ltd.": "Корпорация «Ослепительная»", + "[STOCK 12 TYPE]White chocolate": "Белый шоколад", + "[STOCK 12 LOGO]WCH": "БШК", + "[STOCK 13 NAME]Prosperity Hive": "Процветающий уровень", + "[STOCK 13 TYPE]Honey": "Мед", + "[STOCK 13 LOGO]HNY": "МЕД", + "[STOCK 14 NAME]Selfmade Bakeries": "Самостоятельные пекарни", + "[STOCK 14 TYPE]Cookies": "Печенье", + "[STOCK 14 LOGO]CKI": "ПЧН", + "[STOCK 15 NAME]Figments Associated": "Ассоциация выдумок", + "[STOCK 15 TYPE]Recipes": "Рецепты", + "[STOCK 15 LOGO]RCP": "РЦП", + "[STOCK 16 NAME]Polyvalent Acquisitions": "Поливалентные приобретения", + "[STOCK 16 TYPE]Subsidiaries": "Подразделения", + "[STOCK 16 LOGO]SBD": "ПРЗ", + "[STOCK 17 NAME]Great Minds": "Великие умы", + "[STOCK 17 TYPE]Publicists": "Публицисты", + "[STOCK 17 LOGO]PBL": "ПБЛ", + "from %1": "от %1", + "%1: currently worth $%2 per unit.": "%1: сейчас стоит $%2 за единицу.", + "You currently own %1 (worth $%2).": "В наличии %1 (стоимость: $%2).", + "Your warehouses can store up to %1.": "На ваших складах уместится до %1.", + "You may increase your storage space by upgrading your offices and by buying more %1. You also get %2 extra storage space per %3 level (currently: +%4).": "Расширить склады можно улучшая офисы и покупая %1. Также вы получаете еще %2 места для хранения за %3 ур. (сейчас +%4).", + "The average worth of this stock and how high it can peak depends on the building it is tied to, along with the level of your %1.": "Средняя стоимость данных акций, и то, насколько они могут подорожать, зависит от привязанного к ним здания и от уровня %1.", + "%1 the hide button to toggle all other stocks.": "%1 на кнопку скрытия, чтобы убрать все другие акции.", + "stock:": "акции:", + "for $%1 each": "по $%1 каждая", + "last bought at
$%1 each": "последняя покупка по
$%1 за штуку", + "+%1% overhead": "+%1% наценки", + "value:": "стоимость:", + "valued at %1": "оценено в %1", + "you spend:": "потрачено:", + "you earn:": "заработано:", + "You cannot buy and sell this stock in the same tick.": "Данные акции нельзя покупать и продавать в одном цикле.", + "This is your office.": "Это ваш офис.", + "It is fully upgraded. Its lavish interiors, spanning across innumerable floors, are host to many a decadent party, owing to your nigh-unfathomable wealth.": "Он полностью улучшен. В его роскошных интерьерах на нескольких этажах пройдет множество буйных вечеринок в честь вашего бессметного богатства.", + "Level %1 offices": "Офисы 1-го уровня", + "Credit garage": "Кредитный гараж", + "Tiny bank": "Крохотный банк", + "Loaning company": "Кредитная компания", + "Finance headquarters": "Финансовый штаб", + "International exchange": "Международная биржа", + "Palace of Greed": "Дворец Жадности", + "Upgrading will cost you %1.": "Улучшение стоит %1.", + "Upgrading requires %1.": "Для улучшения требуется: %1.", + "Upgrading will grant you:": "Улучшение дает:", + "+1 loan slot": "+1 ячейка кредита", + "+1 opportunity slot": "+1 ячейка возможности", + "+%1 warehouse space for all goods": "+%1 места на складе для всех товаров", + "+%1% base warehouse space for all goods": "+%1 места на базовом складе для всех товаров", + "Brokers:": "Брокеры:", + "A nice broker to trade more cookies.": "Хороший брокер для торговли печеньем.", + "Hire": "Нанять", + "Buying goods normally incurs overhead costs of %1% extra. Each broker you hire reduces that cost by %2%.": "На покупки обычно уходит на %1% больше. Каждый нанятый брокер снижает наценку на %2%.", + "Current overhead costs thanks to your brokers: +%1%": "Текущая наценка с учетом брокеров: +%1%", + "Buying a broker costs %1 of CpS (that's $%2).": "Наем брокера стоит %1 ПвС (итого $%2).", + "Maximum number of brokers you can own: %1 (the highest amount of grandmas you've owned this run, divided by 10, plus your grandma level)": "Максимально возможное количество брокеров: %1 (максимум бабушек за этот заход, разделенный на 10, плюс уровень вашей бабушки)", + "Brokers are Wall Street-class grandmas versed in the ways of finance. Stockbroker grandmas work hard and play hard, and will fight telephone in hand to get your clients the best possible deals - with a sizeable profit margin for you, of course.": "Брокеры — это бабушки, разбирающиеся в финансах не хуже работников с Уолл-стрит. Бабули-маклеры работают и играют по-взрослому и будут с телефоном в руке биться за то, чтобы предоставить вашим клиентам лучшие сделки. Вы, разумеется, получите с них наибольшую прибыль.", + "Hiring a new broker will cost you %1.": "Наем нового брокера стоит %1.", + "Take out %1": "Снять %1", + "Loan #%1": "Кредит №%1", + "a modest loan": "скромный кредит", + "Buy that vintage car you've always wanted. Just pay us back.": "Купите винтажную машину мечты. Только кредит выплатите.", + "a pawnshop loan": "ломбардный кредит", + "Bad credit? No problem. It's your money, and you need it now.": "Плохая кредитная история? Ничего страшного. Деньги ваши, и они нужны вам сейчас.", + "a retirement loan": "пенсионный кредит", + "Finance your next house, boat, spouse, etc. You've earned it.": "Оплатите следующий дом, лодку, супруга и прочее. Вы заслужили!", + "By taking this loan, you will get %1 CpS for the next %2.": "Кредит дает %1 ПвС на следующие %2.", + "However, you will get %1 CpS for the next %2 after that.": "Но после этого у вас будет %1 ПвС на %2.", + "You must also pay an immediate downpayment of %1 (%2% of your current bank).": "Также нужно немедленно уплатить %1 (%2% от вашего текущего запаса).", + "Loan over": "Кредит истек", + "Your loan has expired, and you must now repay the interest.": "Кредит истек, и вы должны выплатить проценты.", + "Line style": "Стиль линий", + "Color mode": "Цветовой режим", + "Toggle speed": "Переключить скорость", + "Click to refill your opportunity timer (and give a quick burst to your economy) for %1.": "Нажмите, чтобы восполнить таймер возможности (и дать быстрый толчок экономике) за %1.", + "Profits: %1. All prices are in $econds of your highest raw cookies per second.": "Прибыль: %1. Все цены в секундах от высшего значения сырого печенья в секунду.", + "The stock market is more chaotic.": "Фондовый рынок становится хаотичнее.", + "[Upgrade name 0]Reinforced index finger": "Усиленный указательный палец", + "[Upgrade name 1]Carpal tunnel prevention cream": "Крем от синдрома запястного канала", + "[Upgrade name 2]Ambidextrous": "Амбидекстр", + "[Upgrade name 3]Thousand fingers": "Тысяча пальцев", + "[Upgrade name 4]Million fingers": "Миллион пальцев", + "[Upgrade name 5]Billion fingers": "Миллиард пальцев", + "[Upgrade name 6]Trillion fingers": "Триллион пальцев", + "[Upgrade name 7]Forwards from grandma": "Помощь от бабули", + "[Upgrade name 8]Steel-plated rolling pins": "Стальные скалки", + "[Upgrade name 9]Lubricated dentures": "Вставные зубы", + "[Upgrade name 10]Cheap hoes": "Дешевые мотыги", + "[Upgrade name 11]Fertilizer": "Удобрение", + "[Upgrade name 12]Cookie trees": "Печеньковые деревья", + "[Upgrade name 13]Sturdier conveyor belts": "Усиленные конвейерные ленты", + "[Upgrade name 14]Child labor": "Детский труд", + "[Upgrade name 15]Sweatshop": "Потогонка", + "[Upgrade name 16]Sugar gas": "Сахарный газ", + "[Upgrade name 17]Megadrill": "Мега-дрель", + "[Upgrade name 18]Ultradrill": "Ультра-дрель", + "[Upgrade name 19]Vanilla nebulae": "Ванильная туманность", + "[Upgrade name 20]Wormholes": "Червоточины", + "[Upgrade name 21]Frequent flyer": "Частолетающий", + "[Upgrade name 22]Antimony": "Антимония", + "[Upgrade name 23]Essence of dough": "Экстракт теста", + "[Upgrade name 24]True chocolate": "Настоящий шоколад", + "[Upgrade name 25]Ancient tablet": "Древняя табличка", + "[Upgrade name 26]Insane oatling workers": "Безумные рабочие", + "[Upgrade name 27]Soul bond": "Душевная связь", + "[Upgrade name 28]Flux capacitors": "Конденсаторы потока", + "[Upgrade name 29]Time paradox resolver": "Устранитель временного парадокса", + "[Upgrade name 30]Quantum conundrum": "Квантовая головоломка", + "[Upgrade name 31]Kitten helpers": "Котята-помощники", + "[Upgrade name 32]Kitten workers": "Котята-рабочие", + "[Upgrade name 33]Plain cookies": "Обычное печенье", + "[Upgrade name 34]Sugar cookies": "Сахарное печенье", + "[Upgrade name 35]Oatmeal raisin cookies": "Овсяное печенье с изюмом", + "[Upgrade name 36]Peanut butter cookies": "Печенье с арахисовым маслом", + "[Upgrade name 37]Coconut cookies": "Кокосовое печенье", + "[Upgrade name 38]White chocolate cookies": "Печенье с белым шоколадом", + "[Upgrade name 39]Macadamia nut cookies": "Печенье с орехами макадамии", + "[Upgrade name 40]Double-chip cookies": "Двойное печенье", + "[Upgrade name 41]White chocolate macadamia nut cookies": "Печенье с орехами макадамии и белым шоколадом", + "[Upgrade name 42]All-chocolate cookies": "Полностью шоколадное печенье", + "[Upgrade name 43]Quadrillion fingers": "Квадриллион пальцев", + "[Upgrade name 44]Prune juice": "Сливовый сок", + "[Upgrade name 45]Genetically-modified cookies": "Генетически модифицированное печенье", + "[Upgrade name 46]Radium reactors": "Радиевые реакторы", + "[Upgrade name 47]Ultimadrill": "Ультима-дрель", + "[Upgrade name 48]Warp drive": "Гиперпространственный двигатель", + "[Upgrade name 49]Ambrosia": "Амброзия", + "[Upgrade name 50]Sanity dance": "Танец здравомыслия", + "[Upgrade name 51]Causality enforcer": "Проверка причинно-следственной связи", + "[Upgrade name 52]Lucky day": "Удачный день", + "[Upgrade name 53]Serendipity": "Счастливый случай", + "[Upgrade name 54]Kitten engineers": "Котята-инженеры", + "[Upgrade name 55]Dark chocolate-coated cookies": "Печенье в темном шоколаде", + "[Upgrade name 56]White chocolate-coated cookies": "Печенье в белом шоколаде", + "[Upgrade name 57]Farmer grandmas": "Бабули-фермеры", + "[Upgrade name 58]Miner grandmas": "Бабули-шахтеры", + "[Upgrade name 59]Worker grandmas": "Бабули-рабочие", + "[Upgrade name 60]Cosmic grandmas": "Космические бабули", + "[Upgrade name 61]Transmuted grandmas": "Преобразованные бабули", + "[Upgrade name 62]Altered grandmas": "Измененные бабули", + "[Upgrade name 63]Grandmas' grandmas": "Бабулины бабули", + "[Upgrade name 64]Bingo center/Research facility": "Бинго-центр / исследовательская лаборатория", + "[Upgrade name 65]Specialized chocolate chips": "Специальная шоколадная крошка", + "[Upgrade name 66]Designer cocoa beans": "Дизайнерские какао-бобы", + "[Upgrade name 67]Ritual rolling pins": "Ритуальные скалки", + "[Upgrade name 68]Underworld ovens": "Подземные печи", + "[Upgrade name 69]One mind": "Единый разум", + "[Upgrade name 70]Exotic nuts": "Экзотические орехи", + "[Upgrade name 71]Communal brainsweep": "Коллективная прочистка мозгов", + "[Upgrade name 72]Arcane sugar": "Мистический сахар", + "[Upgrade name 73]Elder Pact": "Пакт со старушками", + "[Upgrade name 74]Elder Pledge": "Залог старушкам", + "[Upgrade name 75]Plastic mouse": "Пластиковая мышь", + "[Upgrade name 76]Iron mouse": "Железная мышь", + "[Upgrade name 77]Titanium mouse": "Титановая мышь", + "[Upgrade name 78]Adamantium mouse": "Мышь из адамантия", + "[Upgrade name 79]Ultrascience": "Ультранаука", + "[Upgrade name 80]Eclipse cookies": "Печенье затмения", + "[Upgrade name 81]Zebra cookies": "Полосатое печенье", + "[Upgrade name 82]Quintillion fingers": "Квинтиллион пальцев", + "[Upgrade name 83]Gold hoard": "Золотые сокровища", + "[Upgrade name 84]Elder Covenant": "Договор со старушками", + "[Upgrade name 85]Revoke Elder Covenant": "Отменить договор со старушками", + "[Upgrade name 86]Get lucky": "Повезло", + "[Upgrade name 87]Sacrificial rolling pins": "Жертвенные скалки", + "[Upgrade name 88]Snickerdoodles": "Сникердудл", + "[Upgrade name 89]Stroopwafels": "Вафли с карамелью", + "[Upgrade name 90]Macaroons": "Макароны", + "[Upgrade name 91]Neuromancy": "Нейромантия", + "[Upgrade name 92]Empire biscuits": "Имперские бисквиты", + "[Upgrade name 93]British tea biscuits": "Бисквиты к чаю", + "[Upgrade name 94]Chocolate british tea biscuits": "Шоколадные бисквиты к чаю", + "[Upgrade name 95]Round british tea biscuits": "Круглые бисквиты к чаю", + "[Upgrade name 96]Round chocolate british tea biscuits": "Круглые шоколадные бисквиты к чаю", + "[Upgrade name 97]Round british tea biscuits with heart motif": "Круглые бисквиты к чаю с сердечком", + "[Upgrade name 98]Round chocolate british tea biscuits with heart motif": "Круглые шоколадные бисквиты к чаю с сердечком", + "[Upgrade name 99]Sugar bosons": "Сахарные бозоны", + "[Upgrade name 100]String theory": "Струнная теория", + "[Upgrade name 101]Large macaron collider": "Большой макаронный коллайдер", + "[Upgrade name 102]Big bang bake": "Выпечка большого взрыва", + "[Upgrade name 103]Antigrandmas": "Антибабули", + "[Upgrade name 104]Madeleines": "Мадлен", + "[Upgrade name 105]Palmiers": "Ушки", + "[Upgrade name 106]Palets": "Палет", + "[Upgrade name 107]Sablés": "Сабле", + "[Upgrade name 108]Kitten overseers": "Котята-надзиратели", + "[Upgrade name 109]Sextillion fingers": "Секстиллион пальцев", + "[Upgrade name 110]Double-thick glasses": "Очки двойной толщины", + "[Upgrade name 111]Gingerbread scarecrows": "Пряничные чучела", + "[Upgrade name 112]Recombobulators": "Рекомбобуляторы", + "[Upgrade name 113]H-bomb mining": "Минирование водородной бомбой", + "[Upgrade name 114]Chocolate monoliths": "Шоколадные монолиты", + "[Upgrade name 115]Aqua crustulae": "Водяное печенье", + "[Upgrade name 116]Brane transplant": "Трансплантат брана", + "[Upgrade name 117]Yestermorrow comparators": "Вчерашнесегодняшние компараторы", + "[Upgrade name 118]Reverse cyclotrons": "Обратные циклотроны", + "[Upgrade name 119]Unobtainium mouse": "Мышь из анабтаниума", + "[Upgrade name 120]Caramoas": "Карамоас", + "[Upgrade name 121]Sagalongs": "Сагалонги", + "[Upgrade name 122]Shortfoils": "Шортфоилс", + "[Upgrade name 123]Win mints": "Выигрышные монеты", + "[Upgrade name 124]Perfect idling": "Идеальное безделье", + "[Upgrade name 125]Fig gluttons": "Фиговые обжоры", + "[Upgrade name 126]Loreols": "Лореолы", + "[Upgrade name 127]Jaffa cakes": "Яффские торты", + "[Upgrade name 128]Grease's cups": "Чашки с жиром", + "[Upgrade name 129]Heavenly chip secret": "Секрет небесных крошек", + "[Upgrade name 130]Heavenly cookie stand": "Подставка для небесного печенья", + "[Upgrade name 131]Heavenly bakery": "Небесная пекарня", + "[Upgrade name 132]Heavenly confectionery": "Небесная кондитерская", + "[Upgrade name 133]Heavenly key": "Небесный ключ", + "[Upgrade name 134]Skull cookies": "Печенье в виде черепа", + "[Upgrade name 135]Ghost cookies": "Печенье в виде приведения", + "[Upgrade name 136]Bat cookies": "Печенье в виде летучей мыши", + "[Upgrade name 137]Slime cookies": "Печенье в виде слизня", + "[Upgrade name 138]Pumpkin cookies": "Печенье в виде тыквы", + "[Upgrade name 139]Eyeball cookies": "Печенье в виде глазного яблока", + "[Upgrade name 140]Spider cookies": "Печенье в виде паука", + "[Upgrade name 141]Persistent memory": "Постоянная память", + "[Upgrade name 142]Wrinkler doormat": "Коврик морщинника", + "[Upgrade name 143]Christmas tree biscuits": "Печенье в виде елки", + "[Upgrade name 144]Snowflake biscuits": "Бисквиты в виде снежинки", + "[Upgrade name 145]Snowman biscuits": "Бисквиты в виде снеговика", + "[Upgrade name 146]Holly biscuits": "Священные бисквиты", + "[Upgrade name 147]Candy cane biscuits": "Бисквиты с леденцовой тростью", + "[Upgrade name 148]Bell biscuits": "Бисквиты в виде колокольчика", + "[Upgrade name 149]Present biscuits": "Подарочные бисквиты", + "[Upgrade name 150]Gingerbread men": "Пряничные человечки", + "[Upgrade name 151]Gingerbread trees": "Пряничные елки", + "[Upgrade name 152]A festive hat": "Праздничная шапка", + "[Upgrade name 153]Increased merriness": "Праздное настроение", + "[Upgrade name 154]Improved jolliness": "Шумное веселье", + "[Upgrade name 155]A lump of coal": "Уголек", + "[Upgrade name 156]An itchy sweater": "Колючий свитер", + "[Upgrade name 157]Reindeer baking grounds": "Площадки для выпекания оленей", + "[Upgrade name 158]Weighted sleighs": "Нагруженные сани", + "[Upgrade name 159]Ho ho ho-flavored frosting": "Глазурь со вкусом хо-хо-хо", + "[Upgrade name 160]Season savings": "Сезонные сбережения", + "[Upgrade name 161]Toy workshop": "Мастерская игрушек", + "[Upgrade name 162]Naughty list": "Список непослушных детей", + "[Upgrade name 163]Santa's bottomless bag": "Бездонный мешок Санты", + "[Upgrade name 164]Santa's helpers": "Помощники Санты", + "[Upgrade name 165]Santa's legacy": "Наследие Санты", + "[Upgrade name 166]Santa's milk and cookies": "Молоко и печенье Санты", + "[Upgrade name 167]Reindeer season": "Сезон оленей", + "[Upgrade name 168]Santa's dominion": "Владения Санты", + "[Upgrade name 169]Pure heart biscuits": "Бисквиты с чистым сердцем", + "[Upgrade name 170]Ardent heart biscuits": "Бисквиты с пылающим сердцем", + "[Upgrade name 171]Sour heart biscuits": "Бисквиты с грустным сердцем", + "[Upgrade name 172]Weeping heart biscuits": "Бисквиты с плачущим сердцем", + "[Upgrade name 173]Golden heart biscuits": "Бисквиты с золотым сердцем", + "[Upgrade name 174]Eternal heart biscuits": "Бисквиты с бессмертным сердцем", + "[Upgrade name 175]Gem polish": "Глазурь", + "[Upgrade name 176]9th color": "9-й цвет", + "[Upgrade name 177]Chocolate light": "Шоколадный свет", + "[Upgrade name 178]Grainbow": "Хлебная радуга", + "[Upgrade name 179]Pure cosmic light": "Чистый космический свет", + "[Upgrade name 180]Rainbow grandmas": "Радужные бабули", + "[Upgrade name 181]Season switcher": "Переключатель сезонов", + "[Upgrade name 182]Festive biscuit": "Праздничный бисквит", + "[Upgrade name 183]Ghostly biscuit": "Призрачный бисквит", + "[Upgrade name 184]Lovesick biscuit": "Бисквит любви", + "[Upgrade name 185]Fool's biscuit": "Лжебисквит", + "[Upgrade name 186]Eternal seasons": "Вечные времена года", + "[Upgrade name 187]Kitten managers": "Котята-менеджеры", + "[Upgrade name 188]Septillion fingers": "Септиллион пальцев", + "[Upgrade name 189]Octillion fingers": "Октиллион пальцев", + "[Upgrade name 190]Eludium mouse": "Мышь из элидиума", + "[Upgrade name 191]Wishalloy mouse": "Мышь из вишхалоу", + "[Upgrade name 192]Aging agents": "Агенты старения", + "[Upgrade name 193]Pulsar sprinklers": "Посыпка", + "[Upgrade name 194]Deep-bake process": "Процесс глубокого запекания", + "[Upgrade name 195]Coreforge": "Главная кузница", + "[Upgrade name 196]Generation ship": "Корабль генерации", + "[Upgrade name 197]Origin crucible": "Тигель", + "[Upgrade name 198]Deity-sized portals": "Божественные порталы", + "[Upgrade name 199]Far future enactment": "Закон о далеком будущем", + "[Upgrade name 200]Nanocosmics": "Нанокосмический", + "[Upgrade name 201]Glow-in-the-dark": "Светящийся в темноте", + "[Upgrade name 202]Rose macarons": "Розовые макароны", + "[Upgrade name 203]Lemon macarons": "Лимонные макароны", + "[Upgrade name 204]Chocolate macarons": "Шоколадные макароны", + "[Upgrade name 205]Pistachio macarons": "Фисташковые макароны", + "[Upgrade name 206]Hazelnut macarons": "Макароны с лесным орехом", + "[Upgrade name 207]Violet macarons": "Фиолетовые макароны", + "[Upgrade name 208]Magic shenanigans": "Волшебные махинации", + "[Upgrade name 209]Bunny biscuit": "Бисквит в виде кролика", + "[Upgrade name 210]Chicken egg": "Куриное яйцо", + "[Upgrade name 211]Duck egg": "Утиное яйцо", + "[Upgrade name 212]Turkey egg": "Индюшачье яйцо", + "[Upgrade name 213]Quail egg": "Перепелиное яйцо", + "[Upgrade name 214]Robin egg": "Яйцо дрозда", + "[Upgrade name 215]Ostrich egg": "Страусиное яйцо", + "[Upgrade name 216]Cassowary egg": "Яйцо казуара", + "[Upgrade name 217]Salmon roe": "Икра лосося", + "[Upgrade name 218]Frogspawn": "Лягушечья икра", + "[Upgrade name 219]Shark egg": "Яйцо акулы", + "[Upgrade name 220]Turtle egg": "Яйцо черепахи", + "[Upgrade name 221]Ant larva": "Личинка муравья", + "[Upgrade name 222]Golden goose egg": "Золотое гусиное яйцо", + "[Upgrade name 223]Faberge egg": "Яйцо Фаберже", + "[Upgrade name 224]Wrinklerspawn": "Личинки морщинника", + "[Upgrade name 225]Cookie egg": "Яйцо из печенья", + "[Upgrade name 226]Omelette": "Омлет", + "[Upgrade name 227]Chocolate egg": "Шоколадное яйцо", + "[Upgrade name 228]Century egg": "Столетнее яйцо", + "[Upgrade name 229]\"egg\"": "«яйцо»", + "[Upgrade name 230]Caramel macarons": "Карамельные макароны", + "[Upgrade name 231]Licorice macarons": "Лакричные макароны", + "[Upgrade name 232]Taller tellers": "Высокие кассиры", + "[Upgrade name 233]Scissor-resistant credit cards": "Неразрезаемые кредитные карты", + "[Upgrade name 234]Acid-proof vaults": "Кислотоупорные банковские хранилища", + "[Upgrade name 235]Chocolate coins": "Шоколадные монеты", + "[Upgrade name 236]Exponential interest rates": "Экспоненциальные процентные ставки", + "[Upgrade name 237]Financial zen": "Финансовый дзен", + "[Upgrade name 238]Golden idols": "Золотые идолы", + "[Upgrade name 239]Sacrifices": "Жертвы", + "[Upgrade name 240]Delicious blessing": "Вкусное благословение", + "[Upgrade name 241]Sun festival": "Фестиваль солнца", + "[Upgrade name 242]Enlarged pantheon": "Расширенный пантеон", + "[Upgrade name 243]Great Baker in the sky": "Великий пекарь на небесах", + "[Upgrade name 244]Pointier hats": "Шляпы пуантье", + "[Upgrade name 245]Beardlier beards": "Бороды бородачей", + "[Upgrade name 246]Ancient grimoires": "Древние гримуары", + "[Upgrade name 247]Kitchen curses": "Кухонные проклятия", + "[Upgrade name 248]School of sorcery": "Школа чародейства", + "[Upgrade name 249]Dark formulas": "Темные формулы", + "[Upgrade name 250]Banker grandmas": "Бабули-банкиры", + "[Upgrade name 251]Priestess grandmas": "Бабули-жрицы", + "[Upgrade name 252]Witch grandmas": "Бабули-ведьмы", + "[Upgrade name 253]Tin of british tea biscuits": "Банка бисквитов к чаю", + "[Upgrade name 254]Box of macarons": "Коробка макаронов", + "[Upgrade name 255]Box of brand biscuits": "Коробка фирменных бисквитов", + "[Upgrade name 256]Pure black chocolate cookies": "Печенье с чистым черным шоколадом", + "[Upgrade name 257]Pure white chocolate cookies": "Печенье с чистым белым шоколадом", + "[Upgrade name 258]Ladyfingers": "Дамские пальчики", + "[Upgrade name 259]Tuiles": "Петифур", + "[Upgrade name 260]Chocolate-stuffed biscuits": "Бисквиты с шоколадной начинкой", + "[Upgrade name 261]Checker cookies": "Контрольное печенье", + "[Upgrade name 262]Butter cookies": "Сливочное печенье", + "[Upgrade name 263]Cream cookies": "Печенье с кремом", + "[Upgrade name 264]Permanent upgrade slot I": "Слот постоянного улучшения I", + "[Upgrade name 265]Permanent upgrade slot II": "Слот постоянного улучшения II", + "[Upgrade name 266]Permanent upgrade slot III": "Слот постоянного улучшения III", + "[Upgrade name 267]Permanent upgrade slot IV": "Слот постоянного улучшения IV", + "[Upgrade name 268]Permanent upgrade slot V": "Слот постоянного улучшения V", + "[Upgrade name 269]Starspawn": "Звездопад", + "[Upgrade name 270]Starsnow": "Звездный снег", + "[Upgrade name 271]Starterror": "Звездный ужас", + "[Upgrade name 272]Starlove": "Звездная любовь", + "[Upgrade name 273]Startrade": "Звездная торговля", + "[Upgrade name 274]Angels": "Ангелы", + "[Upgrade name 275]Archangels": "Архангелы", + "[Upgrade name 276]Virtues": "Добродетели", + "[Upgrade name 277]Dominions": "Доминионы", + "[Upgrade name 278]Cherubim": "Херувимы", + "[Upgrade name 279]Seraphim": "Серафим", + "[Upgrade name 280]God": "Бог", + "[Upgrade name 281]Twin Gates of Transcendence": "Двойные врата запредельности", + "[Upgrade name 282]Heavenly luck": "Небесная удача", + "[Upgrade name 283]Lasting fortune": "Непроходящая удача", + "[Upgrade name 284]Decisive fate": "Судьбоносный рок", + "[Upgrade name 285]Divine discount": "Божественная скидка", + "[Upgrade name 286]Divine sales": "Божественные распродажи", + "[Upgrade name 287]Divine bakeries": "Божественные пекарни", + "[Upgrade name 288]Starter kit": "Стартовый набор", + "[Upgrade name 289]Starter kitchen": "Стартовая кухня", + "[Upgrade name 290]Halo gloves": "Сияющие перчатки", + "[Upgrade name 291]Kitten angels": "Котята-ангелы", + "[Upgrade name 292]Unholy bait": "Дьявольская ловушка", + "[Upgrade name 293]Sacrilegious corruption": "Кощунственная коррупция", + "[Upgrade name 294]Xtreme walkers": "Экстремальные ходунки", + "[Upgrade name 295]Fudge fungus": "Помадковые грибы", + "[Upgrade name 296]Planetsplitters": "Планетоделители", + "[Upgrade name 297]Cyborg workforce": "Киборги-рабочие", + "[Upgrade name 298]Way of the wallet": "Путь кошелька", + "[Upgrade name 299]Creation myth": "Миф о сотворении мира", + "[Upgrade name 300]Cookiemancy": "Печенькомагия", + "[Upgrade name 301]Dyson sphere": "Сфера Дайсона", + "[Upgrade name 302]Theory of atomic fluidity": "Теория текучести атомов", + "[Upgrade name 303]End of times back-up plan": "Резервный план на конец света", + "[Upgrade name 304]Great loop hypothesis": "Гипотеза большой петли", + "[Upgrade name 305]The Pulse": "Пульс", + "[Upgrade name 306]Lux sanctorum": "Люкс святых", + "[Upgrade name 307]The Unbridling": "Безудержный", + "[Upgrade name 308]Wheat triffids": "Пшеничные триффиды", + "[Upgrade name 309]Canola oil wells": "Скважины рапсового масла", + "[Upgrade name 310]78-hour days": "78-часовой рабочий день", + "[Upgrade name 311]The stuff rationale": "Принцип вещества", + "[Upgrade name 312]Theocracy": "Теократия", + "[Upgrade name 313]Rabbit trick": "Трюк с кроликом", + "[Upgrade name 314]The final frontier": "Последний рубеж", + "[Upgrade name 315]Beige goo": "Бежевая слизь", + "[Upgrade name 316]Maddening chants": "Сводящие с ума песнопения", + "[Upgrade name 317]Cookietopian moments of maybe": "Печенькоутопичные моменты", + "[Upgrade name 318]Some other super-tiny fundamental particle? Probably?": "Какая-то другая сверхмаленькая элементарная частица? Возможно?", + "[Upgrade name 319]Reverse shadows": "Обратные тени", + "[Upgrade name 320]Kitten accountants": "Котята-бухгалтеры", + "[Upgrade name 321]Kitten specialists": "Котята-специалисты", + "[Upgrade name 322]Kitten experts": "Котята-эксперты", + "[Upgrade name 323]How to bake your dragon": "Как запечь дракона", + "[Upgrade name 324]A crumbly egg": "Крошащееся яйцо", + "[Upgrade name 325]Chimera": "Химера", + "[Upgrade name 326]Tin of butter cookies": "Банка сливочного печенья", + "[Upgrade name 327]Golden switch": "Золотой переключатель", + "[Upgrade name 328]Classic dairy selection": "Классический ассортимент молочных продуктов", + "[Upgrade name 329]Fanciful dairy selection": "Фантастический ассортимент молочных продуктов", + "[Upgrade name 330]Dragon cookie": "Драконье печенье", + "[Upgrade name 331]Golden switch [off]": "Золотой переключатель [выкл]", + "[Upgrade name 332]Golden switch [on]": "Золотой переключатель [вкл]", + "[Upgrade name 333]Milk selector": "Переключатель молока", + "[Upgrade name 334]Milk chocolate butter biscuit": "Сливочный бисквит с молочным шоколадом", + "[Upgrade name 335]Dark chocolate butter biscuit": "Сливочный бисквит с темным шоколадом", + "[Upgrade name 336]White chocolate butter biscuit": "Сливочный бисквит с белым шоколадом", + "[Upgrade name 337]Ruby chocolate butter biscuit": "Сливочный бисквит с красным шоколадом", + "[Upgrade name 338]Gingersnaps": "Имбирный шнапс", + "[Upgrade name 339]Cinnamon cookies": "Печенье с корицей", + "[Upgrade name 340]Vanity cookies": "Печенье тщеславия", + "[Upgrade name 341]Cigars": "Сигаретки", + "[Upgrade name 342]Pinwheel cookies": "Печенье-вертушка", + "[Upgrade name 343]Fudge squares": "Молочные конфеты", + "[Upgrade name 344]Digits": "Цифры", + "[Upgrade name 345]Butter horseshoes": "Сливочные подковы", + "[Upgrade name 346]Butter pucks": "Сливочные шайбы", + "[Upgrade name 347]Butter knots": "Сливочные узелки", + "[Upgrade name 348]Butter slabs": "Сливочные плитки", + "[Upgrade name 349]Butter swirls": "Сливочные завитки", + "[Upgrade name 350]Shortbread biscuits": "Песочное печенье", + "[Upgrade name 351]Millionaires' shortbreads": "Песочное печенье миллионеров", + "[Upgrade name 352]Caramel cookies": "Карамельное печенье", + "[Upgrade name 353]Belphegor": "Бельфегор", + "[Upgrade name 354]Mammon": "Маммона", + "[Upgrade name 355]Abaddon": "Аваддон", + "[Upgrade name 356]Satan": "Сатана", + "[Upgrade name 357]Asmodeus": "Асмодей", + "[Upgrade name 358]Beelzebub": "Вельзевул", + "[Upgrade name 359]Lucifer": "Люцифер", + "[Upgrade name 360]Golden cookie alert sound": "Звук предупреждения о золотом печенье", + "[Upgrade name 361]Golden cookie sound selector": "Переключатель звука золотого печенья", + "[Upgrade name 362]Basic wallpaper assortment": "Выбор базовых обоев", + "[Upgrade name 363]Legacy": "Опыт", + "[Upgrade name 364]Elder spice": "Старая перечница", + "[Upgrade name 365]Residual luck": "Оставшаяся удача", + "[Upgrade name 366]Fantasteel mouse": "Мышь из фантастической стали", + "[Upgrade name 367]Nevercrack mouse": "Никогда не ломающаяся мышь", + "[Upgrade name 368]Five-finger discount": "Скидка на пять пальцев", + "[Upgrade name 369]Future almanacs": "Будущие альманахи", + "[Upgrade name 370]Rain prayer": "Молитва на вызов дождя", + "[Upgrade name 371]Seismic magic": "Сейсмическая магия", + "[Upgrade name 372]Asteroid mining": "Добыча астероидов", + "[Upgrade name 373]Quantum electronics": "Квантовая электроника", + "[Upgrade name 374]Temporal overclocking": "Разгон времени", + "[Upgrade name 375]Contracts from beyond": "Контракты с потусторонним миром", + "[Upgrade name 376]Printing presses": "Печатные машины", + "[Upgrade name 377]Paganism": "Язычество", + "[Upgrade name 378]God particle": "Частица бога", + "[Upgrade name 379]Arcane knowledge": "Тайное знание", + "[Upgrade name 380]Magical botany": "Магия растений", + "[Upgrade name 381]Fossil fuels": "Ископаемое топливо", + "[Upgrade name 382]Shipyards": "Верфи", + "[Upgrade name 383]Primordial ores": "Первобытные руды", + "[Upgrade name 384]Gold fund": "Золотой фонд", + "[Upgrade name 385]Infernal crops": "Адские посевы", + "[Upgrade name 386]Abysmal glimmer": "Беспредельное мерцание", + "[Upgrade name 387]Relativistic parsec-skipping": "Релятивистский парсек", + "[Upgrade name 388]Primeval glow": "Первобытное сияние", + "[Upgrade name 389]Extra physics funding": "Дополнительное финансирование физики", + "[Upgrade name 390]Chemical proficiency": "Химическая квалификация", + "[Upgrade name 391]Light magic": "Световая магия", + "[Upgrade name 392]Mystical energies": "Мистические энергии", + "[Upgrade name 393]Synergies Vol. I": "Синергия уровня I", + "[Upgrade name 394]Synergies Vol. II": "Синергия уровня II", + "[Upgrade name 395]Heavenly cookies": "Небесное печенье", + "[Upgrade name 396]Wrinkly cookies": "Морщинистое печенье", + "[Upgrade name 397]Distilled essence of redoubled luck": "Дистиллированная эссенция двойной удачи", + "[Upgrade name 398]Occult obstruction": "Скрытое препятствие", + "[Upgrade name 399]Glucose-charged air": "Воздух, заряженный глюкозой", + "[Upgrade name 400]Lavender chocolate butter biscuit": "Сливочный бисквит с лавандовым шоколадом", + "[Upgrade name 401]Lombardia cookies": "Печенье ломбардия", + "[Upgrade name 402]Bastenaken cookies": "Печенье бастонь", + "[Upgrade name 403]Pecan sandies": "Сэндвичи с пеканом", + "[Upgrade name 404]Moravian spice cookies": "Моравское пряное печенье", + "[Upgrade name 405]Anzac biscuits": "Печенье анзак", + "[Upgrade name 406]Buttercakes": "Масляные бисквиты", + "[Upgrade name 407]Ice cream sandwiches": "Сэндвичи с мороженым", + "[Upgrade name 408]Stevia Caelestis": "Стевия небесная", + "[Upgrade name 409]Diabetica Daemonicus": "Диалектика дамоникус", + "[Upgrade name 410]Sucralosia Inutilis": "Сукралозия инутилис", + "[Upgrade name 411]Lucky digit": "Счастливое число", + "[Upgrade name 412]Lucky number": "Счастливый номер", + "[Upgrade name 413]Lucky payout": "Удачная выплата", + "[Upgrade name 414]Background selector": "Переключатель фона", + "[Upgrade name 415]Lucky grandmas": "Счастливые бабули", + "[Upgrade name 416]Your lucky cookie": "Твое счастливое печенье", + "[Upgrade name 417]\"All Bets Are Off\" magic coin": "Волшебная монета «Все ставки сделаны»", + "[Upgrade name 418]Winning lottery ticket": "Выигрышный лотерейный билет", + "[Upgrade name 419]Four-leaf clover field": "Поле четырехлистного клевера", + "[Upgrade name 420]A recipe book about books": "Книга рецептов о книгах", + "[Upgrade name 421]Leprechaun village": "Деревня лепреконов", + "[Upgrade name 422]Improbability drive": "Невероятный механизм", + "[Upgrade name 423]Antisuperstistronics": "Антисуперстистроникс", + "[Upgrade name 424]Gemmed talismans": "Талисманы с драгоценными камнями", + "[Upgrade name 425]Kitten consultants": "Котята-консультанты", + "[Upgrade name 426]Birthday cookie": "Печенье на день рождения", + "[Upgrade name 427]Armythril mouse": "Мышь из армихрила", + "[Upgrade name 428]Reverse dementia": "Обратная деменция", + "[Upgrade name 429]Humane pesticides": "Гуманные пестициды", + "[Upgrade name 430]Mole people": "Люди-кроты", + "[Upgrade name 431]Machine learning": "Машинное обучение", + "[Upgrade name 432]Edible money": "Съедобные деньги", + "[Upgrade name 433]Sick rap prayers": "Рэп-молитвы", + "[Upgrade name 434]Deluxe tailored wands": "Люксовые палочки", + "[Upgrade name 435]Autopilot": "Автопилот", + "[Upgrade name 436]The advent of chemistry": "Наступление эпохи химии", + "[Upgrade name 437]The real world": "Реальный мир", + "[Upgrade name 438]Second seconds": "Доли секунды", + "[Upgrade name 439]Quantum comb": "Квантовый гребень", + "[Upgrade name 440]Crystal mirrors": "Хрустальные зеркала", + "[Upgrade name 441]Bunnypedes": "Зайчата", + "[Upgrade name 442]Kitten assistants to the regional manager": "Котята-помощники регионального менеджера", + "[Upgrade name 443]Charm quarks": "Очаровательные кварки", + "[Upgrade name 444]Pink biscuits": "Розовые бисквиты", + "[Upgrade name 445]Whole-grain cookies": "Цельнозерновое печенье", + "[Upgrade name 446]Candy cookies": "Конфетное печенье", + "[Upgrade name 447]Big chip cookies": "Печенье с большими кусочками шоколада", + "[Upgrade name 448]One chip cookies": "Печенье с одним кусочком шоколада", + "[Upgrade name 449]Sugar baking": "Сладкая выпечка", + "[Upgrade name 450]Sugar craving": "Сахарная зависимость", + "[Upgrade name 451]Sugar aging process": "Процесс старения сахара", + "[Upgrade name 452]Sugar frenzy": "Сахарное безумие", + "[Upgrade name 453]Sprinkles cookies": "Печенье с посыпкой", + "[Upgrade name 454]Peanut butter blossoms": "Созревание арахисового масла", + "[Upgrade name 455]No-bake cookies": "Печенье без выпечки", + "[Upgrade name 456]Florentines": "Флорентинское печенье", + "[Upgrade name 457]Chocolate crinkles": "Шоколадные морщинки", + "[Upgrade name 458]Maple cookies": "Кленовое печенье", + "[Upgrade name 459]Turbo-charged soil": "Почва с турбонаддувом", + "[Upgrade name 460]Technobsidian mouse": "Технобсидиановая мышь", + "[Upgrade name 461]Plasmarble mouse": "Плазменная мышь", + "[Upgrade name 462]Kitten marketeers": "Котята-продавцы", + "[Upgrade name 463]Festivity loops": "Праздничные петли", + "[Upgrade name 464]Persian rice cookies": "Персидское рисовое печенье", + "[Upgrade name 465]Norwegian cookies": "Норвежское печенье", + "[Upgrade name 466]Crispy rice cookies": "Хрустящее рисовое печенье", + "[Upgrade name 467]Ube cookies": "Печенье из ямса", + "[Upgrade name 468]Butterscotch cookies": "Ирисковое печенье", + "[Upgrade name 469]Speculaas": "Пряный бисквит", + "[Upgrade name 470]Elderwort biscuits": "Печенье из бузины", + "[Upgrade name 471]Bakeberry cookies": "Печенье из сдобных ягод", + "[Upgrade name 472]Duketater cookies": "Печенье из лесного картофеля", + "[Upgrade name 473]Green yeast digestives": "Дижестив на зеленых дрожжах", + "[Upgrade name 474]Fern tea": "Папоротниковый чай", + "[Upgrade name 475]Ichor syrup": "Ихорный сироп", + "[Upgrade name 476]Wheat slims": "Пшеничный слим", + "[Upgrade name 477]Synthetic chocolate green honey butter biscuit": "Зеленый медово-масляный бисквит с синтетическим шоколадом", + "[Upgrade name 478]Royal raspberry chocolate butter biscuit": "Королевский сливочный бисквит с малиновым шоколадом", + "[Upgrade name 479]Ultra-concentrated high-energy chocolate butter biscuit": "Ультраконцентрированный высококалорийный шоколадно-масляный бисквит", + "[Upgrade name 480]Timeproof hair dyes": "Стойкие краски для волос", + "[Upgrade name 481]Barnstars": "Сараи", + "[Upgrade name 482]Mine canaries": "Подземные канарейки", + "[Upgrade name 483]Brownie point system": "Система оценки в брауни", + "[Upgrade name 484]Grand supercycles": "Большие суперциклы", + "[Upgrade name 485]Psalm-reading": "Чтение псалмов", + "[Upgrade name 486]Immobile spellcasting": "Обездвиживающее заклинание", + "[Upgrade name 487]Restaurants at the end of the universe": "Рестораны на краю вселенной", + "[Upgrade name 488]On second thought": "Если подумать", + "[Upgrade name 489]Dimensional garbage gulper": "Пространственный мусорный мешкорот", + "[Upgrade name 490]Additional clock hands": "Дополнительные стрелки часов", + "[Upgrade name 491]Baking Nobel prize": "Выпечка, получившая Нобелевскую премию", + "[Upgrade name 492]Reverse theory of light": "Обратная теория света", + "[Upgrade name 493]Revised probabilistics": "Пересмотренные вероятности", + "[Upgrade name 494]Kitten analysts": "Котята-аналитики", + "[Upgrade name 495]Eye of the wrinkler": "Глаз морщинника", + "[Upgrade name 496]Inspired checklist": "Гениальный чеклист", + "[Upgrade name 497]Pure pitch-black chocolate butter biscuit": "Сливочный бисквит с чистым, черным как смоль шоколадом", + "[Upgrade name 498]Chocolate oatmeal cookies": "Шоколадно-овсяное печенье", + "[Upgrade name 499]Molasses cookies": "Печенье из мелассы", + "[Upgrade name 500]Biscotti": "Бискотти", + "[Upgrade name 501]Waffle cookies": "Вафельное печенье", + "[Upgrade name 502]Almond cookies": "Миндальное печенье", + "[Upgrade name 503]Hazelnut cookies": "Печенье с фундуком", + "[Upgrade name 504]Walnut cookies": "Печенье с грецкими орехами", + "[Upgrade name 505]Label printer": "Принтер этикеток", + "[Upgrade name 506]Good manners": "Хорошие манеры", + "[Upgrade name 507]Lindworms": "Линдвормы", + "[Upgrade name 508]Bore again": "Снова скучно", + "[Upgrade name 509]\"Volunteer\" interns": "Стажеры «добровольцы»", + "[Upgrade name 510]Rules of acquisition": "Правила приобретения", + "[Upgrade name 511]War of the gods": "Война богов", + "[Upgrade name 512]Electricity": "Электричество", + "[Upgrade name 513]Universal alphabet": "Универсальный алфавит", + "[Upgrade name 514]Public betterment": "Общественное улучшение", + "[Upgrade name 515]Embedded microportals": "Встроенные микропорталы", + "[Upgrade name 516]Nostalgia": "Ностальгия", + "[Upgrade name 517]The definite molecule": "Определенная молекула", + "[Upgrade name 518]Light capture measures": "Меры по улавливанию света", + "[Upgrade name 519]0-sided dice": "0-сторонние игральные кости", + "[Upgrade name 520]Heralds": "Вестники", + "[Upgrade name 521]Metagrandmas": "Мета-бабули", + "[Upgrade name 522]Metabakeries": "Мета-пекарни", + "[Upgrade name 523]Mandelbrown sugar": "Мандельбраунский сахар", + "[Upgrade name 524]Fractoids": "Фрактоиды", + "[Upgrade name 525]Nested universe theory": "Теория вложенной вселенной", + "[Upgrade name 526]Menger sponge cake": "Пирог в виде губки Менгера", + "[Upgrade name 527]One particularly good-humored cow": "Одна особенно добродушная корова", + "[Upgrade name 528]Chocolate ouroboros": "Шоколадный уроборос", + "[Upgrade name 529]Nested": "Вложенный", + "[Upgrade name 530]Space-filling fibers": "Волокна, заполняющие пространство", + "[Upgrade name 531]Endless book of prose": "Бесконечная книга с прозой", + "[Upgrade name 532]The set of all sets": "Набор всех наборов", + "[Upgrade name 533]Recursive mirrors": "Рекурсивные зеркала", + "[Upgrade name 534]Mice clicking mice": "Мышки щелкают мышками", + "[Upgrade name 535]Custard creams": "Печенье с ванильным кремом", + "[Upgrade name 536]Bourbon biscuits": "Печенье с бурбоном", + "[Upgrade name 537]Keepsakes": "Сувениры", + "[Upgrade name 538]Mini-cookies": "Мини-печенье", + "[Upgrade name 539]Sugar crystal cookies": "Печенье с сахарными кристаллами", + "[Upgrade name 540]Box of maybe cookies": "Коробка, возможно, с печеньем", + "[Upgrade name 541]Box of not cookies": "Коробка не с печеньем", + "[Upgrade name 542]Box of pastries": "Коробка с выпечкой", + "[Upgrade name 543]Profiteroles": "Профитроли", + "[Upgrade name 544]Jelly donut": "Пончик с желе", + "[Upgrade name 545]Glazed donut": "Пончик с глазурью", + "[Upgrade name 546]Chocolate cake": "Шоколадный торт", + "[Upgrade name 547]Strawberry cake": "Клубничный пирог", + "[Upgrade name 548]Apple pie": "Яблочный пирог", + "[Upgrade name 549]Lemon meringue pie": "Пирог с лимонными меренгами", + "[Upgrade name 550]Butter croissant": "Круассан со сливочным маслом", + "[Upgrade name 551]Cookie dough": "Тесто для печенья", + "[Upgrade name 552]Burnt cookie": "Сгоревшее печенье", + "[Upgrade name 553]A chocolate chip cookie but with the chips picked off for some reason": "Печенье с шоколадной крошкой, но крошку по какой-то причине вытащили", + "[Upgrade name 554]Flavor text cookie": "Печенье с ароматом текста", + "[Upgrade name 555]High-definition cookie": "Печенье высокого разрешения", + "[Upgrade name 556]Toast": "Тост", + "[Upgrade name 557]Peanut butter & jelly": "Арахисовое масло и желе", + "[Upgrade name 558]Wookies": "Вуки", + "[Upgrade name 559]Cheeseburger": "Чизбургер", + "[Upgrade name 560]One lone chocolate chip": "Одинокая шоколадная крошечка", + "[Upgrade name 561]Genius accounting": "Гениальный бухгалтерский учет", + "[Upgrade name 562]Shimmering veil": "Мерцающая вуаль", + "[Upgrade name 563]Shimmering veil [off]": "Мерцающая вуаль [выкл]", + "[Upgrade name 564]Shimmering veil [on]": "Мерцающая вуаль [вкл]", + "[Upgrade name 565]Whoopie pies": "Вупи пай", + "[Upgrade name 566]Caramel wafer biscuits": "Карамельное вафельное печенье", + "[Upgrade name 567]Chocolate chip mocha cookies": "Печенье мокка с шоколадной крошкой", + "[Upgrade name 568]Earl Grey cookies": "Печенье со вкусом эрл грей", + "[Upgrade name 569]Corn syrup cookies": "Печенье с кукурузным сиропом", + "[Upgrade name 570]Icebox cookies": "Замороженное печенье", + "[Upgrade name 571]Graham crackers": "Крекеры Грэма", + "[Upgrade name 572]Hardtack": "Галеты", + "[Upgrade name 573]Cornflake cookies": "Кукурузное печенье", + "[Upgrade name 574]Tofu cookies": "Печенье с тофу", + "[Upgrade name 575]Gluten-free cookies": "Печенье без глютена", + "[Upgrade name 576]Russian bread cookies": "Печенье руссиш брот", + "[Upgrade name 577]Lebkuchen": "Имбирный пряник", + "[Upgrade name 578]Aachener Printen": "Ахенский пряник", + "[Upgrade name 579]Canistrelli": "Канистрелли", + "[Upgrade name 580]Nice biscuits": "Простое печенье", + "[Upgrade name 581]French pure butter cookies": "Французское сливочное печенье", + "[Upgrade name 582]Petit beurre": "Пети-бер", + "[Upgrade name 583]Nanaimo bars": "Нанаймо бар", + "[Upgrade name 584]Berger cookies": "Печенье Бергера", + "[Upgrade name 585]Chinsuko": "Чинсуко", + "[Upgrade name 586]Panda koala biscuits": "Печенье с пандой и коалой", + "[Upgrade name 587]Putri salju": "Путри салью", + "[Upgrade name 588]Milk cookies": "Молочное печенье", + "[Upgrade name 589]Cookie crumbs": "Крошки печенья", + "[Upgrade name 590]Chocolate chip cookie": "Печенье с шоколадной крошкой", + "[Upgrade name 591]Cosmic beginner's luck": "Космическая удача новичка", + "[Upgrade name 592]Reinforced membrane": "Усиленная мембрана", + "[Upgrade name 593]Binary grandmas": "Бинарные бабули", + "[Upgrade name 594]The JavaScript console for dummies": "Консоль JavaScript для чайников", + "[Upgrade name 595]64bit arrays": "64-битные массивы", + "[Upgrade name 596]Stack overflow": "Переполнение стека", + "[Upgrade name 597]Enterprise compiler": "Корпоративный компилятор", + "[Upgrade name 598]Syntactic sugar": "Синтаксический сахар", + "[Upgrade name 599]A nice cup of coffee": "Чашка хорошего кофе", + "[Upgrade name 600]Just-in-time baking": "Своевременная выпечка", + "[Upgrade name 601]cookies++": "печенье++", + "[Upgrade name 602]Software updates": "Обновления программного обеспечения", + "[Upgrade name 603]Game.Loop": "Game.Loop", + "[Upgrade name 604]eval()": "eval()", + "[Upgrade name 605]Script grannies": "Сценарные бабули", + "[Upgrade name 606]Tombola computing": "Лотерейные вычисления", + "[Upgrade name 607]Kruidnoten": "Круиднотен", + "[Upgrade name 608]Marie biscuits": "Бисквиты Мари", + "[Upgrade name 609]Meringue cookies": "Меренговое печенье", + "[Upgrade name 610]Pizza": "Пицца", + "[Upgrade name 611]Crackers": "Крекеры", + "[Upgrade name 612]Havabreaks": "Хавабрейкс", + "[Upgrade name 613]Kitten executives": "Котята-руководители", + "[Upgrade name 614]Chai tea cookies": "Чайное печенье", + "[Upgrade name 615]Yogurt cookies": "Йогуртовое печенье", + "[Upgrade name 616]Thumbprint cookies": "Печенье с отпечатками пальцев", + "[Upgrade name 617]Pizzelle": "Пиццелли", + "[Upgrade name 618]Zilla wafers": "Вафли Zilla", + "[Upgrade name 619]Dim Dams": "Дим-дам", + "[Upgrade name 620]Candy": "Конфета", + "[Upgrade name 621]Fortune #001": "Предсказание №001", + "[Upgrade name 622]Fortune #002": "Предсказание №002", + "[Upgrade name 623]Fortune #003": "Предсказание №003", + "[Upgrade name 624]Fortune #004": "Предсказание №004", + "[Upgrade name 625]Fortune #005": "Предсказание №005", + "[Upgrade name 626]Fortune #006": "Предсказание №006", + "[Upgrade name 627]Fortune #007": "Предсказание №007", + "[Upgrade name 628]Fortune #008": "Предсказание №008", + "[Upgrade name 629]Fortune #009": "Предсказание №009", + "[Upgrade name 630]Fortune #010": "Предсказание №010", + "[Upgrade name 631]Fortune #011": "Предсказание №011", + "[Upgrade name 632]Fortune #012": "Предсказание №012", + "[Upgrade name 633]Fortune #013": "Предсказание №013", + "[Upgrade name 634]Fortune #014": "Предсказание №014", + "[Upgrade name 635]Fortune #015": "Предсказание №015", + "[Upgrade name 636]Fortune #016": "Предсказание №016", + "[Upgrade name 637]Fortune #017": "Предсказание №017", + "[Upgrade name 638]Fortune #100": "Предсказание №100", + "[Upgrade name 639]Fortune #101": "Предсказание №101", + "[Upgrade name 640]Fortune #102": "Предсказание №102", + "[Upgrade name 641]Fortune #103": "Предсказание №103", + "[Upgrade name 642]Fortune #104": "Предсказание №104", + "[Upgrade name 643]Fortune cookies": "Печенье с предсказаниями", + "[Upgrade name 644]A really good guide book": "Действительно хороший учебник", + "[Upgrade name 645]Prism heart biscuits": "Бисквиты с сердцем-призмой", + "[Upgrade name 646]Kitten wages": "Зарплата котят", + "[Upgrade name 647]Pet the dragon": "Погладить дракона", + "[Upgrade name 648]Dragon scale": "Чешуя дракона", + "[Upgrade name 649]Dragon claw": "Драконий коготь", + "[Upgrade name 650]Dragon fang": "Драконий клык", + "[Upgrade name 651]Dragon teddy bear": "Плюшевый мишка дракона", + "[Upgrade name 652]Granola cookies": "Печенье из гранолы", + "[Upgrade name 653]Ricotta cookies": "Печенье с рикоттой", + "[Upgrade name 654]Roze koeken": "Печенье с розовой глазурью", + "[Upgrade name 655]Peanut butter cup cookies": "Капкейки с арахисовым маслом", + "[Upgrade name 656]Sesame cookies": "Кунжутное печенье", + "[Upgrade name 657]Taiyaki": "Тайяки", + "[Upgrade name 658]Vanillekipferl": "Ванильные полумесяцы", + "[Upgrade name 659]Cosmic chocolate butter biscuit": "Сливочный бисквит с космическим шоколадом", + "[Upgrade name 660]Nonillion fingers": "Нониллион пальцев", + "[Upgrade name 661]Miraculite mouse": "Мышь из миракулита", + "[Upgrade name 662]Generation degeneration": "Вырождение поколения", + "[Upgrade name 663]Global seed vault": "Глобальное хранилище семян", + "[Upgrade name 664]Air mining": "Добыча воздуха", + "[Upgrade name 665]Behavioral reframing": "Пересмотр поведения", + "[Upgrade name 666]Altruistic loop": "Альтруистическая петля", + "[Upgrade name 667]A novel idea": "Новая идея", + "[Upgrade name 668]Spelling bees": "Заклинающие пчелы", + "[Upgrade name 669]Toroid universe": "Тороидальная вселенная", + "[Upgrade name 670]Hermetic reconciliation": "Загадочное примирение", + "[Upgrade name 671]His advent": "Его приход", + "[Upgrade name 672]Split seconds": "Секунды разделения", + "[Upgrade name 673]Flavor itself": "Сам аромат", + "[Upgrade name 674]Light speed limit": "Ограничение скорости света", + "[Upgrade name 675]A touch of determinism": "Прикосновение детерминизма", + "[Upgrade name 676]This upgrade": "Это улучшение", + "[Upgrade name 677]Your biggest fans": "Ваши самые большие поклонники", + "[Upgrade name 678]Battenberg biscuits": "Печенье Баттенбург", + "[Upgrade name 679]Rosette cookies": "Розетты", + "[Upgrade name 680]Gangmakers": "Gangmakers", + "[Upgrade name 681]Welsh cookies": "Валлийское печенье", + "[Upgrade name 682]Raspberry cheesecake cookies": "Малиновый чизкейк", + "[Upgrade name 683]Alternate grandmas": "Альтернативные бабули", + "[Upgrade name 684]Manifest destiny": "Предопределение судьбы", + "[Upgrade name 685]The multiverse in a nutshell": "Коротко о мультивселенной", + "[Upgrade name 686]All-conversion": "Все конверсии", + "[Upgrade name 687]Multiverse agents": "Агенты мультивселенной", + "[Upgrade name 688]Escape plan": "План побега", + "[Upgrade name 689]Game design": "Дизайн игры", + "[Upgrade name 690]Sandbox universes": "Вселенные в песочнице", + "[Upgrade name 691]Multiverse wars": "Войны мультивселенных", + "[Upgrade name 692]Mobile ports": "Мобильные порты", + "[Upgrade name 693]Encapsulated realities": "Инкапсулированные реальности", + "[Upgrade name 694]Extrinsic clicking": "Случайный щелчок", + "[Upgrade name 695]Universal idling": "Вселенское безделье", + "[Upgrade name 696]Perforated mille-feuille cosmos": "Перфорированный космос «Наполеона»", + "[Upgrade name 697]Infraverses and superverses": "Инфравселенные и супервселенные", + "[Upgrade name 698]Fortune #018": "Предсказание №018", + "[Upgrade name 699]Butter biscuit (with butter)": "Сливочный бисквит (с маслом)", + "[Upgrade name 700]Visits": "Посещения", + "[Upgrade name 701]Reverse-veganism": "Обратное веганство", + "[Upgrade name 702]Caramel alloys": "Карамельные сплавы", + "[Upgrade name 703]The infinity engine": "Вечный двигатель", + "[Upgrade name 704]Diminishing tax returns": "Уменьшение налоговых поступлений", + "[Upgrade name 705]Apparitions": "Явления", + "[Upgrade name 706]Wizard basements": "Волшебные подвалы", + "[Upgrade name 707]Prime directive": "Основная директива", + "[Upgrade name 708]Chromatic cycling": "Хроматический цикл", + "[Upgrade name 709]Domestic rifts": "Внутренние разломы", + "[Upgrade name 710]Patience abolished": "Терпение отменено", + "[Upgrade name 711]Delicious pull": "Вкусная тяга", + "[Upgrade name 712]Occam's laser": "Лазер Оккама", + "[Upgrade name 713]On a streak": "Полоса везения", + "[Upgrade name 714]A box": "Коробка", + "[Upgrade name 715]Hacker shades": "Тени хакеров", + "[Upgrade name 716]Break the fifth wall": "Ломает пятую стену", + "[Upgrade name 717]Cat ladies": "Леди-кошки", + "[Upgrade name 718]Milkhelp® lactose intolerance relief tablets": "Таблетки для облегчения непереносимости лактозы Milkhelp®", + "[Upgrade name 719]Aura gloves": "Перчатки ауры", + "[Upgrade name 720]Luminous gloves": "Светящиеся перчатки", + "[Upgrade name 721]Bokkenpootjes": "Боккенпуттис", + "[Upgrade name 722]Fat rascals": "Толстые негодяи", + "[Upgrade name 723]Ischler cookies": "Печенье ишлер", + "[Upgrade name 724]Matcha cookies": "Печенье с матчей", + "[Upgrade name 725]Earl Grey macarons": "Макароны со вкусом эрл грей", + "[Upgrade name 726]Pokey": "Поки", + "[Upgrade name 727]Cashew cookies": "Печенье с кешью", + "[Upgrade name 728]Milk chocolate cookies": "Печенье с молочным шоколадом", + "[Upgrade name 729]Brainy grandmas": "Умные бабушки", + "[Upgrade name 730]Principled neural shackles": "Систематические нейронные оковы", + "[Upgrade name 731]Obey": "Подчинение", + "[Upgrade name 732]A sprinkle of irrationality": "Щепотка иррациональности", + "[Upgrade name 733]Front and back hemispheres": "Переднее и заднее полушария", + "[Upgrade name 734]Neural networking": "Нейронная сеть", + "[Upgrade name 735]Cosmic brainstorms": "Космические мозговые штурмы", + "[Upgrade name 736]Megatherapy": "Мегатерапия", + "[Upgrade name 737]Synaptic lubricant": "Синаптическая смазка", + "[Upgrade name 738]Psychokinesis": "Психокинез", + "[Upgrade name 739]Spines": "Хребты", + "[Upgrade name 740]Neuraforming": "Нейроформинг", + "[Upgrade name 741]Epistemological trickery": "Эпистемологический обман", + "[Upgrade name 742]Every possible idea": "Любая возможная идея", + "[Upgrade name 743]Kitchen cabinets": "Кухонные шкафы", + "[Upgrade name 744]Cookie mulch": "Мульча из печенья", + "[Upgrade name 745]Delicious mineralogy": "Вкусная минералогия", + "[Upgrade name 746]N-dimensional assembly lines": "N-мерные сборочные линии", + "[Upgrade name 747]Cookie Points": "Очки печенья", + "[Upgrade name 748]Negatheism": "Негатеизм", + "[Upgrade name 749]Magical realism": "Магический реализм", + "[Upgrade name 750]Cosmic foreground radiation": "Космическое излучение переднего плана", + "[Upgrade name 751]Arcanized glassware": "Магическая стеклянная посуда", + "[Upgrade name 752]Portal guns": "Портальные пушки", + "[Upgrade name 753]Timeproof upholstery": "Прочная обивка", + "[Upgrade name 754]Employee minification": "Сжатие сотрудников", + "[Upgrade name 755]Hyperblack paint": "Гиперчерная краска", + "[Upgrade name 756]Silver lining maximization": "Максимизация серебряной подкладки", + "[Upgrade name 757]Multiscale profiling": "Масштабное профилирование", + "[Upgrade name 758]PHP containment vats": "PHP-контейнеры", + "[Upgrade name 759]Opposite universe": "Противоположная вселенная", + "[Upgrade name 760]The land of dreams": "Страна мечты", + "[Upgrade name 761]Thoughts & prayers": "Мысли и молитвы", + "[Upgrade name 762]Fertile minds": "Полодородные умы", + "[Upgrade name 763]Fortune #019": "Богатство №19", + "[Upgrade name 764]Decillion fingers": "Дециллион пальцев", + "[Upgrade name 765]Aetherice mouse": "Эфирная мышь", + "[Upgrade name 766]Kitten admins": "Котята-администраторы", + "[Upgrade name 767]Everybutter biscuit": "Масляное печенье", + "[Upgrade name 768]Unshackled cursors": "Освобожденные курсоры", + "[Upgrade name 769]Unshackled grandmas": "Освобожденные бабушки", + "[Upgrade name 770]Unshackled farms": "Освобожденные фермы", + "[Upgrade name 771]Unshackled mines": "Освобожденные рудники", + "[Upgrade name 772]Unshackled factories": "Освобожденные заводы", + "[Upgrade name 773]Unshackled banks": "Освобожденные банки", + "[Upgrade name 774]Unshackled temples": "Освобожденные храмы", + "[Upgrade name 775]Unshackled wizard towers": "Освобожденные башни волшебников", + "[Upgrade name 776]Unshackled shipments": "Освобожденные поставки", + "[Upgrade name 777]Unshackled alchemy labs": "Освобожденные алхимические лаборатории", + "[Upgrade name 778]Unshackled portals": "Освобожденные порталы", + "[Upgrade name 779]Unshackled time machines": "Освобожденные машины времени", + "[Upgrade name 780]Unshackled antimatter condensers": "Освобожденные конденсаторы антиматерии", + "[Upgrade name 781]Unshackled prisms": "Освобожденные призмы", + "[Upgrade name 782]Unshackled chancemakers": "Освобожденные клевера", + "[Upgrade name 783]Unshackled fractal engines": "Освобожденные фрактальные двигатели", + "[Upgrade name 784]Unshackled javascript consoles": "Освобожденные javascript-консоли", + "[Upgrade name 785]Unshackled idleverses": "Освобожденные мертвые вселенные", + "[Upgrade name 786]Unshackled cortex bakers": "Освобожденные корковые пекари", + "[Upgrade name 787]Unshackled flavor": "Освобожденный ароматизатор", + "[Upgrade name 788]Unshackled berrylium": "Освобожденный бериллий", + "[Upgrade name 789]Unshackled blueberrylium": "Освобожденный черникорилиий", + "[Upgrade name 790]Unshackled chalcedhoney": "Освобожденный халцемед", + "[Upgrade name 791]Unshackled buttergold": "Освобожденное золотомасло", + "[Upgrade name 792]Unshackled sugarmuck": "Освобожденная сахарная дрянь", + "[Upgrade name 793]Unshackled jetmint": "Освобожденная джетмята", + "[Upgrade name 794]Unshackled cherrysilver": "Освобожденное вишне-серебро", + "[Upgrade name 795]Unshackled hazelrald": "Освобожденный орешральд", + "[Upgrade name 796]Unshackled mooncandy": "Освобожденная лунная кофета", + "[Upgrade name 797]Unshackled astrofudge": "Освобожденная астропомадка", + "[Upgrade name 798]Unshackled alabascream": "Освобожденный алабакрем", + "[Upgrade name 799]Unshackled iridyum": "Освобожденный иридий", + "[Upgrade name 800]Unshackled glucosmium": "Освобожденный глюкозмий", + "[Upgrade name 801]Delicate touch": "Нежное прикосновение", + "[Upgrade name 802]Steadfast murmur": "Постоянный рокот", + "[Upgrade name 803]Glittering edge": "Блестящий край", + "[Upgrade name 804]Distinguished wallpaper assortment": "Изысканный ассортимент обоев", + "[Upgrade name 805]Sound test": "Звуковой тест", + "[Upgrade name 806]Jukebox": "Музыкальный автомат", + "[Upgrade name 807]Dalgona cookies": "Печенье \"Дальгона\"", + "[Upgrade name 808]Spicy cookies": "Пряное печенье", + "[Upgrade name 809]Smile cookies": "Печенье с улыбкой", + "[Upgrade name 810]Kolachy cookies": "Печенье \"Колачки\"", + "[Upgrade name 811]Gomma cookies": "Кукурузное печенье", + "[Upgrade name 812]Vegan cookies": "Веганское печенье", + "[Upgrade name 813]Coyotas": "Печенье с начинкой", + "[Upgrade name 814]Frosted sugar cookies": "Сахарное печенье с глазурью", + "[Upgrade name 815]Marshmallow sandwich cookies": "Печенье с зефиром", + "[Upgrade name 816]Web cookies": "Веб-печеньки", + "[Upgrade name 817]Steamed cookies": "Печенье на пару", + "[Upgrade name 818]Deep-fried cookie dough": "Хорошо пропеченное тесто", + "[Achievement name 0]Wake and bake": "Просыпайся и пеки", + "[Achievement name 1]Making some dough": "Делаем тесто", + "[Achievement name 2]So baked right now": "Так выпекается прямо сейчас", + "[Achievement name 3]Fledgling bakery": "Молодая пекарня", + "[Achievement name 4]Affluent bakery": "Богатая пекарня", + "[Achievement name 5]World-famous bakery": "Всемирно известная пекарня", + "[Achievement name 6]Cosmic bakery": "Космическая пекарня", + "[Achievement name 7]Galactic bakery": "Галактическая пекарня", + "[Achievement name 8]Universal bakery": "Вселенская пекарня", + "[Achievement name 9]Timeless bakery": "Вечная пекарня", + "[Achievement name 10]Infinite bakery": "Бесконечная пекарня", + "[Achievement name 11]Immortal bakery": "Бессмертная пекарня", + "[Achievement name 12]Don't stop me now": "Не останавливай меня сейчас", + "[Achievement name 13]You can stop now": "Можешь остановиться сейчас", + "[Achievement name 14]Cookies all the way down": "Печенье до самого дна", + "[Achievement name 15]Overdose": "Передозировка", + "[Achievement name 16]Casual baking": "Повседневная выпечка", + "[Achievement name 17]Hardcore baking": "Профессиональная выпечка", + "[Achievement name 18]Steady tasty stream": "Неизменно вкусный поток", + "[Achievement name 19]Cookie monster": "Печеньковый монстр", + "[Achievement name 20]Mass producer": "Крупный производитель", + "[Achievement name 21]Cookie vortex": "Печеньковый вихрь", + "[Achievement name 22]Cookie pulsar": "Печеньковый пульсар", + "[Achievement name 23]Cookie quasar": "Печеньковый квазар", + "[Achievement name 24]Oh hey, you're still here": "Эй, вы все еще здесь", + "[Achievement name 25]Let's never bake again": "Давайте больше никогда не будем печь", + "[Achievement name 26]Sacrifice": "Жертва", + "[Achievement name 27]Oblivion": "Забвение", + "[Achievement name 28]From scratch": "С нуля", + "[Achievement name 29]Neverclick": "Некликанье", + "[Achievement name 30]Clicktastic": "Тактика кликанья", + "[Achievement name 31]Clickathlon": "Кликатлон", + "[Achievement name 32]Clickolympics": "Кликолимпиада", + "[Achievement name 33]Clickorama": "Кликорама", + "[Achievement name 34]Click": "Клик", + "[Achievement name 35]Double-click": "Двойной клик", + "[Achievement name 36]Mouse wheel": "Колесико мыши", + "[Achievement name 37]Of Mice and Men": "Мыши и люди", + "[Achievement name 38]The Digital": "Цифровой", + "[Achievement name 39]Just wrong": "Просто неправильно", + "[Achievement name 40]Grandma's cookies": "Бабулино печенье", + "[Achievement name 41]Sloppy kisses": "Небрежные поцелуи", + "[Achievement name 42]Retirement home": "Дом престарелых", + "[Achievement name 43]Bought the farm": "Купили ферму", + "[Achievement name 44]Reap what you sow": "Что посеешь, то и пожнешь", + "[Achievement name 45]Farm ill": "Плохая ферма", + "[Achievement name 46]Production chain": "Производственная цепочка", + "[Achievement name 47]Industrial revolution": "Индустриальная революция", + "[Achievement name 48]Global warming": "Глобальное потепление", + "[Achievement name 49]You know the drill": "Вы знаете, что делать", + "[Achievement name 50]Excavation site": "Место раскопок", + "[Achievement name 51]Hollow the planet": "Опустошить планета", + "[Achievement name 52]Expedition": "Экспедиция", + "[Achievement name 53]Galactic highway": "Галактическое шоссе", + "[Achievement name 54]Far far away": "Очень далеко", + "[Achievement name 55]Transmutation": "Трансмутация", + "[Achievement name 56]Transmogrification": "Трансмогрификация", + "[Achievement name 57]Gold member": "Золотой член", + "[Achievement name 58]A whole new world": "Полностью новый мир", + "[Achievement name 59]Now you're thinking": "Теперь вы думаете", + "[Achievement name 60]Dimensional shift": "Пространственный сдвиг", + "[Achievement name 61]Time warp": "Искажение времени", + "[Achievement name 62]Alternate timeline": "Альтернативное время", + "[Achievement name 63]Rewriting history": "Переписывание истории", + "[Achievement name 64]One with everything": "Один со всем", + "[Achievement name 65]Mathematician": "Математик", + "[Achievement name 66]Base 10": "База 10", + "[Achievement name 67]Golden cookie": "Золотое печенье", + "[Achievement name 68]Lucky cookie": "Счастливое печенье", + "[Achievement name 69]A stroke of luck": "Подарок судьбы", + "[Achievement name 70]Cheated cookies taste awful": "У читерского печенья ужасный вкус", + "[Achievement name 71]Uncanny clicker": "Странный кликер", + "[Achievement name 72]Builder": "Строитель", + "[Achievement name 73]Architect": "Архитектор", + "[Achievement name 74]Enhancer": "Усилитель", + "[Achievement name 75]Augmenter": "Усилитель тяги", + "[Achievement name 76]Cookie-dunker": "Макатель печенья", + "[Achievement name 77]Fortune": "Удача", + "[Achievement name 78]True Neverclick": "Настоящие некликанье", + "[Achievement name 79]Elder nap": "Старушка дремает", + "[Achievement name 80]Elder slumber": "Старушка спит", + "[Achievement name 81]Elder": "Старушка", + "[Achievement name 82]Elder calm": "Старушка спокойна", + "[Achievement name 83]Engineer": "Инженер", + "[Achievement name 84]Leprechaun": "Лепрекон", + "[Achievement name 85]Black cat's paw": "Лапа черной кошки", + "[Achievement name 86]Nihilism": "Нигилизм", + "[Achievement name 87]Antibatter": "Антитесто", + "[Achievement name 88]Quirky quarks": "Причудливые кварки", + "[Achievement name 89]It does matter!": "Это имеет значение!", + "[Achievement name 90]Upgrader": "Улучшитель", + "[Achievement name 91]Centennial": "Столетие", + "[Achievement name 92]Hardcore": "Хардкор", + "[Achievement name 93]Speed baking I": "Скоростное выпекание I", + "[Achievement name 94]Speed baking II": "Скоростное выпекание II", + "[Achievement name 95]Speed baking III": "Скоростное выпекание III", + "[Achievement name 96]Getting even with the oven": "Свести счеты с печкой", + "[Achievement name 97]Now this is pod-smashing": "Теперь это раздавливание стручков", + "[Achievement name 98]Chirped out": "Чириканье", + "[Achievement name 99]Follow the white rabbit": "Следуйте за белым кроликом", + "[Achievement name 100]Clickasmic": "Кликасмик", + "[Achievement name 101]Friend of the ancients": "Друг древних", + "[Achievement name 102]Ruler of the ancients": "Правитель древних", + "[Achievement name 103]Wholesome": "Полезный", + "[Achievement name 104]Just plain lucky": "Просто повезло", + "[Achievement name 105]Itchscratcher": "Чесотка", + "[Achievement name 106]Wrinklesquisher": "Разжижитель морщин", + "[Achievement name 107]Moistburster": "Моистбастер", + "[Achievement name 108]Spooky cookies": "Жуткое печенье", + "[Achievement name 109]Coming to town": "Появляется в городе", + "[Achievement name 110]All hail Santa": "Да здравствует Санта!", + "[Achievement name 111]Let it snow": "Да будет снег", + "[Achievement name 112]Oh deer": "Какой ужас", + "[Achievement name 113]Sleigh of hand": "Ловкость рук", + "[Achievement name 114]Reindeer sleigher": "Сани с оленями", + "[Achievement name 115]Perfected agriculture": "Усовершенствованное сельское хозяйство", + "[Achievement name 116]Ultimate automation": "Полная автоматизация", + "[Achievement name 117]Can you dig it": "Вы можете выкопать это", + "[Achievement name 118]Type II civilization": "Цивилизация II типа", + "[Achievement name 119]Gild wars": "Войны корпораций", + "[Achievement name 120]Brain-split": "Раздвоение мозга", + "[Achievement name 121]Time duke": "Князь времени", + "[Achievement name 122]Molecular maestro": "Молекулярный маэстро", + "[Achievement name 123]Lone photon": "Одинокий фотон", + "[Achievement name 124]Dazzling glimmer": "Ослепительное мерцание", + "[Achievement name 125]Blinding flash": "Ослепляющая вспышка", + "[Achievement name 126]Unending glow": "Бесконечное сияние", + "[Achievement name 127]Lord of Constructs": "Лорд конструкций", + "[Achievement name 128]Lord of Progress": "Лорд прогресса", + "[Achievement name 129]Bicentennial": "Двухсотлетие", + "[Achievement name 130]Lovely cookies": "Прекрасное печенье", + "[Achievement name 131]Centennial and a half": "Стопятидесятилетие", + "[Achievement name 132]Tiny cookie": "Крошечное печенье", + "[Achievement name 133]You win a cookie": "Вы выиграли печеньку", + "[Achievement name 134]Click delegator": "Делегатор кликов", + "[Achievement name 135]Gushing grannies": "Сентиментальные бабули", + "[Achievement name 136]I hate manure": "Ненавижу навоз", + "[Achievement name 137]Never dig down": "Никогда не копайте", + "[Achievement name 138]The incredible machine": "Невероятная машина", + "[Achievement name 139]And beyond": "И так далее", + "[Achievement name 140]Magnum Opus": "Выдающееся произведение", + "[Achievement name 141]With strange eons": "Со странными эонами", + "[Achievement name 142]Spacetime jigamaroo": "Пространственно-временное джигамару", + "[Achievement name 143]Supermassive": "Сверхмассивный", + "[Achievement name 144]Praise the sun": "Восхвалять солнце", + "[Achievement name 145]Clickageddon": "Кликагеддон", + "[Achievement name 146]Clicknarok": "Кликанарок", + "[Achievement name 147]Extreme polydactyly": "Крайняя степень полидактилии", + "[Achievement name 148]Dr. T": "Др. Т", + "[Achievement name 149]The old never bothered me anyway": "Все равно старое меня никогда не волновало", + "[Achievement name 150]Homegrown": "Доморощенный", + "[Achievement name 151]Technocracy": "Технократия", + "[Achievement name 152]The center of the Earth": "Центр Земли", + "[Achievement name 153]We come in peace": "Мы пришли с миром", + "[Achievement name 154]The secrets of the universe": "Секреты вселенной", + "[Achievement name 155]Realm of the Mad God": "Царство Безумного бога", + "[Achievement name 156]Forever and ever": "Во веки веков", + "[Achievement name 157]Walk the planck": "Блуждание постоянной Планка", + "[Achievement name 158]Rise and shine": "Подъем", + "[Achievement name 159]God complex": "Комплекс бога", + "[Achievement name 160]Third-party": "Сторонний", + "[Achievement name 161]Dematerialize": "Дематериализовать", + "[Achievement name 162]Nil zero zilch": "Ничего, ноль, пустота", + "[Achievement name 163]Transcendence": "Трансцендентность", + "[Achievement name 164]Obliterate": "Уничтожить", + "[Achievement name 165]Negative void": "Отрицательная пустота", + "[Achievement name 166]The hunt is on": "Охота началась", + "[Achievement name 167]Egging on": "Провокация", + "[Achievement name 168]Mass Easteria": "Массовое празднование Пасхи", + "[Achievement name 169]Hide & seek champion": "Чемпион по пряткам", + "[Achievement name 170]What's in a name": "Что скрывается в названии", + "[Achievement name 171]Pretty penny": "Куча денег", + "[Achievement name 172]Fit the bill": "Отвечать всем требованиям", + "[Achievement name 173]A loan in the dark": "Заем вслепую", + "[Achievement name 174]Need for greed": "Жажда наживы", + "[Achievement name 175]It's the economy, stupid": "Это экономика, тупица", + "[Achievement name 176]Your time to shrine": "Пришло время приклоняться вам", + "[Achievement name 177]Shady sect": "Теневая секта", + "[Achievement name 178]New-age cult": "Культ нового времени", + "[Achievement name 179]Organized religion": "Организованная религия", + "[Achievement name 180]Fanaticism": "Фанатизм", + "[Achievement name 181]Bewitched": "Заколдованный", + "[Achievement name 182]The sorcerer's apprentice": "Ученик чародея", + "[Achievement name 183]Charms and enchantments": "Чары и колдовство", + "[Achievement name 184]Curses and maledictions": "Заговоры и проклятия", + "[Achievement name 185]Magic kingdom": "Волшебное королевство", + "[Achievement name 186]Vested interest": "Личная заинтересованность", + "[Achievement name 187]New world order": "Новый мировой порядок", + "[Achievement name 188]Hocus pocus": "Фокус покус", + "[Achievement name 189]Finger clickin' good": "Палец щелкает хорошо", + "[Achievement name 190]Panic at the bingo": "Паника в бинго-центре", + "[Achievement name 191]Rake in the dough": "Загребать тесто", + "[Achievement name 192]Quarry on": "Карьер", + "[Achievement name 193]Yes I love technology": "Да, я люблю технологии", + "[Achievement name 194]Paid in full": "Выплачено в полном объеме", + "[Achievement name 195]Church of Cookiology": "Церковь печенькологии", + "[Achievement name 196]Too many rabbits, not enough hats": "Слишком много кроликов и мало шляп", + "[Achievement name 197]The most precious cargo": "Самый ценный груз", + "[Achievement name 198]The Aureate": "Позолота", + "[Achievement name 199]Ever more hideous": "Более чем отвратительный", + "[Achievement name 200]Be kind, rewind": "Будьте любезны, перемотайте назад", + "[Achievement name 201]Infinitesimal": "Бесконечно малый", + "[Achievement name 202]A still more glorious dawn": "Потрясающий рассвет", + "[Achievement name 203]Rebirth": "Перерождение", + "[Achievement name 204]Here you go": "Вот, пожалуйста", + "[Achievement name 205]Resurrection": "Воскрешение", + "[Achievement name 206]Reincarnation": "Реинкарнация", + "[Achievement name 207]Endless cycle": "Бесконечный цикл", + "[Achievement name 208]The agemaster": "Мастер возраста", + "[Achievement name 209]To oldly go": "Идти по-старчески", + "[Achievement name 210]Gardener extraordinaire": "Экстраординарный садовник", + "[Achievement name 211]Tectonic ambassador": "Тектонический посол", + "[Achievement name 212]Rise of the machines": "Восстание машин", + "[Achievement name 213]Acquire currency": "Приобрести валюту", + "[Achievement name 214]Zealotry": "Фанатизм", + "[Achievement name 215]The wizarding world": "Волшебный мир", + "[Achievement name 216]Parsec-masher": "Парсек-толкушка", + "[Achievement name 217]The work of a lifetime": "Работа на всю жизнь", + "[Achievement name 218]A place lost in time": "Место, потерянное во времени", + "[Achievement name 219]Heat death": "Тепловая смерть", + "[Achievement name 220]Microcosm": "Микромир", + "[Achievement name 221]Bright future": "Светлое будущее", + "[Achievement name 222]Here be dragon": "Вот дракон", + "[Achievement name 223]How?": "Как?", + "[Achievement name 224]The land of milk and cookies": "Страна молока и печенья", + "[Achievement name 225]He who controls the cookies controls the universe": "Тот, кто контролирует печенье, контролирует вселенную", + "[Achievement name 226]Tonight on Hoarders": "Сегодня вечером на накопителях", + "[Achievement name 227]Are you gonna eat all that?": "Ты собираешься все это съесть?", + "[Achievement name 228]We're gonna need a bigger bakery": "Нам понадобится пекарня побольше", + "[Achievement name 229]In the mouth of madness": "В устах безумия", + "[Achievement name 230]Brought to you by the letter
": "Принесено вам в письме
", + "[Achievement name 231]A world filled with cookies": "Мир, заполненный печеньем", + "[Achievement name 232]When this baby hits 36 quadrillion cookies per hour": "Когда этот ребенок получит 36 квадриллионов печенек за час", + "[Achievement name 233]Fast and delicious": "Быстро и вкусно", + "[Achievement name 234]Cookiehertz : a really, really tasty hertz": "Печенькогерц: действительно очень вкусный герц", + "[Achievement name 235]Woops, you solved world hunger": "Вау! Вы решили проблему голода в мире", + "[Achievement name 236]Turbopuns": "Турбопуны", + "[Achievement name 237]Faster menner": "Быстрый менер", + "[Achievement name 238]And yet you're still hungry": "И все же ты все еще голоден", + "[Achievement name 239]The Abakening": "Пробуждение выпечки", + "[Achievement name 240]There's really no hard limit to how long these achievement names can be and to be quite honest I'm rather curious to see how far we can go.
Adolphus W. Green (1844–1917) started as the Principal of the Groton School in 1864. By 1865, he became second assistant librarian at the New York Mercantile Library; from 1867 to 1869, he was promoted to full librarian. From 1869 to 1873, he worked for Evarts, Southmayd & Choate, a law firm co-founded by William M. Evarts, Charles Ferdinand Southmayd and Joseph Hodges Choate. He was admitted to the New York State Bar Association in 1873.
Anyway, how's your day been?": "На самом деле этому списку достижений нет конца, и, честно говоря, мне любопытно посмотреть, как далеко мы сможем зайти.
Адольфус В. Грин (1844–1917) начал свою карьеру в качестве директора школы в городе Гротон в 1864 году. К 1865 году он стал вторым помощником библиотекаря в Нью-Йоркской торговой библиотеке; с 1867 по 1869 год он получил звание библиотекаря. С 1869 по 1873 год он работал в Evarts, Southmayd & Choate, юридической фирме, основанной Уильямом М. Эвартсом, Чарльзом Фердинандом Саутмейдом и Джозефом Ходжесом Чоатом. Он был принят в Коллегию адвокатов штата Нью-Йорк в 1873 году.
Ладно. Как прошел твой день?", + "[Achievement name 241]Fast": "Быстро", + "[Achievement name 242]Bicentennial and a half": "Двухсотпятидесятилетие", + "[Achievement name 243]Tabloid addiction": "Зависимость от таблоидов", + "[Achievement name 244]Clickastrophe": "Кликастрофа", + "[Achievement name 245]Clickataclysm": "Кликаклизм", + "[Achievement name 246]Thumbs, phalanges, metacarpals": "Большие пальцы рук, фаланги, запястья", + "[Achievement name 247]Polymath": "Эрудит", + "[Achievement name 248]The elder scrolls": "Древние свитки", + "[Achievement name 249]To crumbs, you say?": "Вы говорите, крошки?", + "[Achievement name 250]Seedy business": "Плохой бизнес", + "[Achievement name 251]Freak fracking": "Аномальный гидроразрыв", + "[Achievement name 252]Modern times": "Новое время", + "[Achievement name 253]The nerve of war": "Нерв войны", + "[Achievement name 254]Wololo": "Вололо", + "[Achievement name 255]And now for my next trick, I'll need a volunteer from the audience": "А теперь для следующего трюка мне понадобится доброволец из зала.", + "[Achievement name 256]It's not delivery": "Это не доставка", + "[Achievement name 257]Gold, Jerry! Gold!": "Золото, Джерри! Золото!", + "[Achievement name 258]Forbidden zone": "Запретная зона", + "[Achievement name 259]cookie clicker forever and forever a hundred years cookie clicker, all day long forever, forever a hundred times, over and over cookie clicker adventures dot com": "cookie clicker навечно и навсегда, сто лет cookie clicker, весь день, вечно сто раз, снова и снова cookie clicker adventures точка com", + "[Achievement name 260]Scientists baffled everywhere": "Ученые всего мира сбиты с толку", + "[Achievement name 261]Harmony of the spheres": "Гармония сфер", + "[Achievement name 262]Last Chance to See": "Последний шанс увидеть", + "[Achievement name 263]Early bird": "Ранняя пташка", + "[Achievement name 264]Fading luck": "Угасающая удача", + "[Achievement name 265]Eldeer": "Старушка", + "[Achievement name 266]Dude, sweet": "Милый", + "[Achievement name 267]Sugar rush": "Сахарный прилив", + "[Achievement name 268]Year's worth of cavities": "Годовой объем пустот", + "[Achievement name 269]Hand-picked": "Собранный вручную", + "[Achievement name 270]Sugar sugar": "Сахарный сахар", + "[Achievement name 271]All-natural cane sugar": "Полностью натуральный тростниковый сахар", + "[Achievement name 272]Sweetmeats": "Сладости", + "[Achievement name 273]Tricentennial": "Трехсотлетие", + "[Achievement name 274]Knead for speed": "Замешивание теста на скорость", + "[Achievement name 275]Well the cookies start coming and they don't stop coming": "Печенье начинает прибывать, и оно не остановится", + "[Achievement name 276]I don't know if you've noticed but all these icons are very slightly off-center": "Не знаю, заметили ли вы, но все эти значки немного не по центру", + "[Achievement name 277]The proof of the cookie is in the baking": "Доказательство печенья — в выпечке", + "[Achievement name 278]If it's worth doing, it's worth overdoing": "Если что-то действительно того стоит, то можно и переусердствовать", + "[Achievement name 279]The dreams in which I'm baking are the best I've ever had": "Сны, в которых я пеку, — это лучшее, что со мной случалось", + "[Achievement name 280]Set for life": "Обеспечены на всю жизнь", + "[Achievement name 281]You and the beanstalk": "Ты и бобовый стебель", + "[Achievement name 282]Romancing the stone": "Роман с камнем", + "[Achievement name 283]Ex machina": "Экс-машина", + "[Achievement name 284]And I need it now": "И мне это нужно сейчас", + "[Achievement name 285]Pray on the weak": "Молитесь о слабых", + "[Achievement name 286]It's a kind of magic": "Это своего рода магия", + "[Achievement name 287]Make it so": "Так и сделайте", + "[Achievement name 288]All that glitters is gold": "Все то золото, что блестит", + "[Achievement name 289]Here he comes": "Вот он идет", + "[Achievement name 290]Way back then": "Еще тогда", + "[Achievement name 291]Exotic matter": "Экзотическая материя", + "[Achievement name 292]At the end of the tunnel": "В конце туннеля", + "[Achievement name 293]Click (starring Adam Sandler)": "Клик (с участием Адама Сэндлера)", + "[Achievement name 294]Frantiquities": "Франшизы", + "[Achievement name 295]Overgrowth": "Чрезмерный рост", + "[Achievement name 296]Sedimentalism": "Седиментализм", + "[Achievement name 297]Labor of love": "Работа для души", + "[Achievement name 298]Reverse funnel system": "Система обратной воронки", + "[Achievement name 299]Thus spoke you": "Так ты говорил", + "[Achievement name 300]Manafest destiny": "Предопределение судьбы", + "[Achievement name 301]Neither snow nor rain nor heat nor gloom of night": "Ни снега, ни дождя, ни жары, ни мрака ночи", + "[Achievement name 302]I've got the Midas touch": "Ко мне прикоснулся Мидас", + "[Achievement name 303]Which eternal lie": "Бесконечная ложь", + "[Achievement name 304]Déjà vu": "Дежавю", + "[Achievement name 305]Powers of Ten": "Власть десяти", + "[Achievement name 306]Now the dark days are gone": "Теперь темные дни закончились", + "[Achievement name 307]Freaky jazz hands": "Причудливые джазовые жесты", + "[Achievement name 308]Methuselah": "Мафусаил", + "[Achievement name 309]Huge tracts of land": "Огромные участки земли", + "[Achievement name 310]D-d-d-d-deeper": "Г-г-г-глубже", + "[Achievement name 311]Patently genius": "Абсолютный гений", + "[Achievement name 312]A capital idea": "Отличная идея", + "[Achievement name 313]It belongs in a bakery": "Это принадлежит пекарне", + "[Achievement name 314]Motormouth": "Болтун", + "[Achievement name 315]Been there done that": "Я уже видел все", + "[Achievement name 316]Phlogisticated substances": "Флогистированные вещества", + "[Achievement name 317]Bizarro world": "Причудливый мир", + "[Achievement name 318]The long now": "Уже давно", + "[Achievement name 319]Chubby hadrons": "Крупные адроны", + "[Achievement name 320]Palettable": "Палитра", + "[Achievement name 321]Bibbidi-bobbidi-boo": "Биббиди-боббиди-бу", + "[Achievement name 322]I'm the wiz": "Я маг", + "[Achievement name 323]A wizard is you": "Волшебник это ты", + "[Achievement name 324]Four-leaf cookie": "Четырехлистное печенье", + "[Achievement name 325]Lucked out": "Повезло", + "[Achievement name 326]What are the odds": "Бывает же такое", + "[Achievement name 327]Grandma needs a new pair of shoes": "Бабуле нужна новая пара обуви", + "[Achievement name 328]Million to one shot, doc": "Один выстрел на миллион, док", + "[Achievement name 329]As luck would have it": "Как повезет", + "[Achievement name 330]Ever in your favor": "У вас все шансы на успех", + "[Achievement name 331]Be a lady": "Ты же леди", + "[Achievement name 332]Dicey business": "Рискованный бизнес", + "[Achievement name 333]Fingers crossed": "Скрещенные пальцы", + "[Achievement name 334]Just a statistic": "Просто статистика", + "[Achievement name 335]Murphy's wild guess": "Закон Мерфи", + "[Achievement name 336]Let's leaf it at that": "Давайте остановимся на этом", + "[Achievement name 337]The ultimate clickdown": "Окончательный кликдаун", + "[Achievement name 338]Aged well": "Хорошо сохранилась", + "[Achievement name 339]101st birthday": "101-й день рождения", + "[Achievement name 340]But wait 'til you get older": "Подожди пока подрастешь", + "[Achievement name 341]Harvest moon": "Урожайная луна", + "[Achievement name 342]Mine?": "Шахта?", + "[Achievement name 343]In full gear": "В полной готовности", + "[Achievement name 344]Treacle tart economics": "Экономика пирога с патокой", + "[Achievement name 345]Holy cookies, grandma!": "Святые печеньки, бабуля!", + "[Achievement name 346]The Prestige": "Престиж", + "[Achievement name 347]That's just peanuts to space": "Это просто арахис для космоса", + "[Achievement name 348]Worth its weight in lead": "На вес свинца", + "[Achievement name 349]What happens in the vortex stays in the vortex": "То, что произошло в вихре, останется в вихре", + "[Achievement name 350]Invited to yesterday's party": "Приглашен на вчерашнюю вечеринку", + "[Achievement name 351]Downsizing": "Уменьшение", + "[Achievement name 352]My eyes": "Мои глаза", + "[Achievement name 353]Maybe a chance in hell, actually": "Может, на самом деле шансов нет", + "[Achievement name 354]Make like a tree": "Кругом и шагом марш", + "[Achievement name 355]Cave story": "Пещерная история", + "[Achievement name 356]In-cog-neato": "Ин-ког-нито", + "[Achievement name 357]Save your breath because that's all you've got left": "Поберегите силы, потому что это все, что у вас осталось", + "[Achievement name 358]Vengeful and almighty": "Мстительный и всемогущий", + "[Achievement name 359]Spell it out for you": "Объясняю для тебя", + "[Achievement name 360]Space space space space space": "Космос космос космос космос космос", + "[Achievement name 361]Don't get used to yourself, you're gonna have to change": "Не привыкай к себе, тебе придется измениться", + "[Achievement name 362]Objects in the mirror dimension are closer than they appear": "Объекты в зеркальном измерении ближе, чем кажутся", + "[Achievement name 363]Groundhog day": "День сурка", + "[Achievement name 364]A matter of perspective": "Это с какой стороны посмотреть", + "[Achievement name 365]Optical illusion": "Оптическая иллюзия", + "[Achievement name 366]Jackpot": "Джекпот", + "[Achievement name 367]So much to do so much to see": "Так много нужно сделать, чтобы увидеть", + "[Achievement name 368]Running with scissors": "Хождение по лезвию", + "[Achievement name 369]Rarefied air": "Разреженный воздух", + "[Achievement name 370]Push it to the limit": "Толкать до предела", + "[Achievement name 371]Green cookies sleep furiously": "Зеленые печеньки мгновенно усыпляют", + "[Achievement name 372]Panic! at Nabisco": "Паника в Nabisco!", + "[Achievement name 373]Bursting at the seams": "Все трещит по швам", + "[Achievement name 374]Just about full": "Почти заполнено", + "[Achievement name 375]Hungry for more": "Жажда большего", + "[Achievement name 376]All the other kids with the pumped up clicks": "Все остальные дети с прокаченными кликами", + "[Achievement name 377]One...more...click...": "Один... еще... клик...", + "[Achievement name 378]Botany enthusiast": "Ботаник-энтузиаст", + "[Achievement name 379]Green, aching thumb": "Зеленый ноющий большой палец", + "[Achievement name 380]In the garden of Eden (baby)": "В саду Эдема (младенец)", + "[Achievement name 381]Keeper of the conservatory": "Хранитель консерватории", + "[Achievement name 382]Seedless to nay": "Бессемянный", + "[Achievement name 383]You get nothing": "Вы ничего не получите", + "[Achievement name 384]Humble rebeginnings": "Трудное детство", + "[Achievement name 385]The end of the world": "На краю мира", + "[Achievement name 386]Oh, you're back": "О, вы вернулись", + "[Achievement name 387]Lazarus": "Лазарь", + "[Achievement name 388]Leisurely pace": "Неторопливо", + "[Achievement name 389]Hypersonic": "Гиперзвуковой", + "[Achievement name 390]Feed me, Orteil": "Накорми меня, Ортейл", + "[Achievement name 391]And then what?": "И что потом?", + "[Achievement name 392]Tricentennial and a half": "Трехсотпятидесятилетие", + "[Achievement name 393]Quadricentennial": "Четырехсотлетие", + "[Achievement name 394]Quadricentennial and a half": "Четырехсотпятидесятилетие", + "[Achievement name 395]Quincentennial": "Пятисотлетие", + "[Achievement name 396]Maillard reaction": "Реакция Майяра", + "[Achievement name 397]When the cookies ascend just right": "Когда печенье поднимается прямо здесь", + "[Achievement name 398]With her finger and her thumb": "Ее пальцем и большим пальцем", + "[Achievement name 399]Defense of the ancients": "Защита древних", + "[Achievement name 400]Sharpest tool in the shed": "Самый острый инструмент в сарае", + "[Achievement name 401]Hey now, you're a rock": "Да ты же рок-звезда", + "[Achievement name 402]Break the mold": "Сломать форму", + "[Achievement name 403]Get the show on, get paid": "Сделайте шоу, получите деньги", + "[Achievement name 404]My world's on fire, how about yours": "Мой мир в огне, а как насчет твоего?", + "[Achievement name 405]The meteor men beg to differ": "Метеоритные люди пытаются отличаться", + "[Achievement name 406]Only shooting stars": "Только падающие звезды", + "[Achievement name 407]We could all use a little change": "Мы все могли бы внести небольшие изменения", + "[Achievement name 408]Your brain gets smart but your head gets dumb": "Ваш мозг начинает лучше соображать, но голова немеет", + "[Achievement name 409]The years start coming": "Время неумолимо", + "[Achievement name 410]What a concept": "Что за концепция", + "[Achievement name 411]You'll never shine if you don't glow": "Вы никогда не будете сиять, если не светитесь", + "[Achievement name 412]You'll never know if you don't go": "Вы никогда не узнаете, если не попробуете", + "[Achievement name 413]Self-contained": "Автономный", + "[Achievement name 414]Threw you for a loop": "Вы в замешательстве", + "[Achievement name 415]The sum of its parts": "Сумма его частей", + "[Achievement name 416]Bears repeating": "Не будет лишним повторить", + "[Achievement name 417]More of the same": "Все то же самое, только в большем объеме", + "[Achievement name 418]Last recurse": "Последняя рекурсия", + "[Achievement name 419]Out of one, many": "Из одного многие", + "[Achievement name 420]An example of recursion": "Пример рекурсии", + "[Achievement name 421]For more information on this achievement, please refer to its title": "Для получения дополнительной информации об этом достижении, см. его название", + "[Achievement name 422]I'm so meta, even this achievement": "Я такой мета, что это уже достижение", + "[Achievement name 423]Never get bored": "Никогда не бывает скучно", + "[Achievement name 424]The needs of the many": "Нужды большинства", + "[Achievement name 425]Eating its own": "Самоедство", + "[Achievement name 426]We must go deeper": "Мы должны смотреть глубже", + "[Achievement name 427]Sierpinski rhomboids": "Ромбоиды Серпинского", + "[Achievement name 428]Gotta go fast": "Нужно торопиться", + "[Achievement name 429]I think it's safe to say you've got it made": "Я думаю, можно с уверенностью сказать, что вы сделали это", + "[Achievement name 430]Renaissance baker": "Пекарь эпохи Возрождения", + "[Achievement name 431]Veteran": "Ветеран", + "[Achievement name 432]Thick-skinned": "Толстокожий", + "[Achievement name 433]F12": "F12", + "[Achievement name 434]Variable success": "Переменный успех", + "[Achievement name 435]No comments": "Без комментариев", + "[Achievement name 436]Up to code": "Согласно нормам", + "[Achievement name 437]Works on my machine": "Работает на моей машине", + "[Achievement name 438]Technical debt": "Технический долг", + "[Achievement name 439]Mind your language": "Следи за языком", + "[Achievement name 440]Inconsolable": "Безутешный", + "[Achievement name 441]Closure": "Точка", + "[Achievement name 442]Dude what if we're all living in a simulation like what if we're all just code on a computer somewhere": "Чувак, а что, если мы все живем в симуляции, как будто мы все просто компьютерный код", + "[Achievement name 443]Taking the back streets": "Вернемся на улочки", + "[Achievement name 444]Inherited prototype": "Унаследованный прототип", + "[Achievement name 445]A model of document object": "Модель объекта документа", + "[Achievement name 446]First-class citizen": "Первоклассный гражданин", + "[Achievement name 447]Alexandria": "Александрия", + "[Achievement name 448]Bake him away, toys": "Уберите его, ребята", + "[Achievement name 449]You're #1 so why try harder": "Ты уже номер 1, так зачем стараться", + "[Achievement name 450]Haven't even begun to peak": "Еще даже не достигли пика", + "[Achievement name 451]A sometimes food": "Иногда еда", + "[Achievement name 452]Not enough of a good thing": "Недостаточно хорошего", + "[Achievement name 453]Horn of plenty": "Рог изобилия", + "[Achievement name 454]Smurf account": "Аккаунт смурфа", + "[Achievement name 455]If at first you don't succeed": "Если с первого раза не получилось", + "[Achievement name 456]O Fortuna": "О, фортуна", + "[Achievement name 457]Initial public offering": "Первичное публичное размещение", + "[Achievement name 458]Rookie numbers": "Номера новичков", + "[Achievement name 459]No nobility in poverty": "Нет благородства в нищете", + "[Achievement name 460]Full warehouses": "Полные склады", + "[Achievement name 461]Make my day": "Сделал мой день", + "[Achievement name 462]Buy buy buy": "Купить-купить-купить", + "[Achievement name 463]Gaseous assets": "Газовые активы", + "[Achievement name 464]Pyramid scheme": "Схема пирамиды", + "[Achievement name 465]Jellicles": "Джелликлс", + "[Achievement name 466]Quincentennial and a half": "Пятисотлетие", + "[Achievement name 467]What did we even eat before these": "Что мы ели до этого", + "[Achievement name 468]Heavy flow": "Сильный поток", + "[Achievement name 469]More you say?": "Скажешь еще что-нибудь?", + "[Achievement name 470]Large and in charge": "Большой начальник", + "[Achievement name 471]Absolutely stuffed": "Нафаршированный", + "[Achievement name 472]It's only wafer-thin": "Тончайшая материя", + "[Achievement name 473]Clickety split": "Сломя голову", + "[Achievement name 474]Gotta hand it to you": "Нужно отдать тебе должное", + "[Achievement name 475]Okay boomer": "Ок, спекулянт", + "[Achievement name 476]Overripe": "Перезрелый", + "[Achievement name 477]Rock on": "Классно", + "[Achievement name 478]Self-manmade man": "Искусственный мужчина", + "[Achievement name 479]Checks out": "Выяснения", + "[Achievement name 480]Living on a prayer": "Один Бог знает, как выжили", + "[Achievement name 481]Higitus figitus migitus mum": "Хигитус фигитус мигитус мам", + "[Achievement name 482]The incredible journey": "Невероятное путешествие", + "[Achievement name 483]Just a phase": "Просто такой период", + "[Achievement name 484]Don't let me leave, Murph": "Не дай мне уйти, Мерф", + "[Achievement name 485]Caveman to cosmos": "Пещерный человек в космосе", + "[Achievement name 486]Particular tastes": "Особые вкусы", + "[Achievement name 487]A light snack": "Легкая закуска", + "[Achievement name 488]Tempting fate": "Искушение судьбы", + "[Achievement name 489]Tautological": "Тавтологический", + "[Achievement name 490]Curly braces": "Фигурные скобки", + "[Achievement name 491]Seven horseshoes": "Семь подков", + "[Achievement name 492]Olden days": "Издревле", + "[Achievement name 493]The devil's workshop": "Мастерская дьявола", + "[Achievement name 494]In the green": "В расцвете сил", + "[Achievement name 495]Mountain out of a molehill, but like in a good way": "Много шума из ничего, но в хорошем смысле", + "[Achievement name 496]The wheels of progress": "Силы прогресса", + "[Achievement name 497]That's rich": "Дорого-богато", + "[Achievement name 498]Preaches and cream": "Проповеди и сливки", + "[Achievement name 499]Magic thinking": "Магическое мышление", + "[Achievement name 500]Is there life on Mars?": "Есть ли жизнь на Марсе?", + "[Achievement name 501]Bad chemistry": "Плохая химия", + "[Achievement name 502]Reduced to gibbering heaps": "Уменьшено до ворчащей массы", + "[Achievement name 503]Back already?": "Уже вернулись?", + "[Achievement name 504]Nuclear throne": "Ядерный трон", + "[Achievement name 505]Making light of the situation": "Освещать ситуацию", + "[Achievement name 506]Flip a cookie. Chips, I win. Crust, you lose.": "Переверните печенье. крошки, победа за мной. Корка, вы проиграли.", + "[Achievement name 507]In and of itself": "Сам по себе", + "[Achievement name 508]Duck typing": "Утиная типизация", + "[Achievement name 509]They'll never know what hit 'em": "Они никогда не узнают, что их поразило", + "[Achievement name 510]Well-versed": "Знаток", + "[Achievement name 511]Ripe for the picking": "Созрел для сбора", + "[Achievement name 512]Unreal": "Нереально", + "[Achievement name 513]Once you've seen one": "Однажды увидев", + "[Achievement name 514]Spoils and plunder": "Трофеи и грабежи", + "[Achievement name 515]Nobody exists on purpose, nobody belongs anywhere": "Никто не приходит в этот мир намеренно, никому здесь нет места", + "[Achievement name 516]Hyperspace expressway": "Гиперпространственная скоростная автомагистраль", + "[Achievement name 517]Versatile": "Универсальный", + "[Achievement name 518]You are inevitable": "Вы неотвратимы", + "[Achievement name 519]Away from this place": "Вдали от этого места", + "[Achievement name 520]Everywhere at once": "Везде одновременно", + "[Achievement name 521]Reject reality, substitute your own": "Откажитесь от реальности и создайте свою собственную", + "[Achievement name 522]Fringe": "Обочина", + "[Achievement name 523]Coherence": "Согласованность", + "[Achievement name 524]Earth-616": "Земля-616", + "[Achievement name 525]Strange topologies": "Странные топологии", + "[Achievement name 526]Grand design": "Грандиозный дизайн", + "[Achievement name 527]Ecumenopolis": "Экуменополис", + "[Achievement name 528]The full picture": "Полная картина", + "[Achievement name 529]When there's nothing left to add": "Когда нечего добавить", + "[Achievement name 530]Sexcentennial": "Шестисотлетний", + "[Achievement name 531]Keep going until I say stop": "Продолжай, пока я не скажу стоп", + "[Achievement name 532]But I didn't say stop, did I?": "Я не сказала «стоп», не так ли?", + "[Achievement name 533]With unrivaled fervor": "С непревзойденным рвением", + "[Achievement name 534]Think big": "Мыслите масштабно", + "[Achievement name 535]Hypersize me": "Меня переоценили", + "[Achievement name 536]Max capacity": "Максимальная вместимость", + "[Achievement name 537]Liquid assets": "Ликвидные активы", + "[Achievement name 538]Stifling the press": "Удушение прессы", + "[Achievement name 539]It's big brain time": "Время больших мозгов", + "[Achievement name 540]Just my imagination": "Лишь мое воображение", + "[Achievement name 541]Now there's an idea": "Есть идея", + "[Achievement name 542]The organ that named itself": "Орган имени себя", + "[Achievement name 543]Gyrification": "Гирификация", + "[Achievement name 544]A trademarked portmanteau of \"imagination\" and \"engineering\"": "Брэндовое складное слово от \"воображение\" и \"инженерия\".", + "[Achievement name 545]Mindfulness": "Внимательность", + "[Achievement name 546]The 10% myth": "Миф о 10%", + "[Achievement name 547]Don't think about it too hard": "Не думай об этом столь усердно", + "[Achievement name 548]Though fools seldom differ": "Дураки редко отличаются", + "[Achievement name 549]Looking kind of dumb": "Дурацкий вид", + "[Achievement name 550]A beautiful mind": "Прекрасный ум", + "[Achievement name 551]Cardinal synapses": "Красные синапсы", + "[Achievement name 552]Positive thinking": "Позитивное мышление", + "[Achievement name 553]The thought that counts": "Мысль, имеющая значение", + "[Achievement name 554]Unthinkable": "Невообразимое", + "[Achievement name 555]Gifted": "Одаренный", + "[Achievement name 556]They moistly come at night": "Влажность повышается ночью", + "[Achievement name 557]It's grown on you": "Выросло на тебе", + "[Achievement name 558]Don't let the walls cave in on you": "Не дайте стенам устeпить вам", + "[Achievement name 559]Replaced by robots": "Заменили роботами", + "[Achievement name 560]Financial prodigy": "Финансовый гений", + "[Achievement name 561]And I will pray to a big god": "Я помолюсь великому богу", + "[Achievement name 562]Shosple Colupis": "Школьные принадлежности", + "[Achievement name 563]False vacuum": "Фальш-вакуум", + "[Achievement name 564]Metallic taste": "Металлический привкус", + "[Achievement name 565]Swiss cheese": "Швейцарский сыр", + "[Achievement name 566]But the future refused to change": "Но будущее не хотело меняться", + "[Achievement name 567]What's the dark matter with you": "С тобой что-то нечисто", + "[Achievement name 568]Enlightenment": "Просвещение", + "[Achievement name 569]Never tell me the odds": "Не говори мне, какие шансы", + "[Achievement name 570]Blowing an Apollonian gasket": "Продув аполлонского уплотнителя", + "[Achievement name 571]Get with the program": "Ознакомьтесь с программой", + "[Achievement name 572]Lost your cosmic marbles": "Потерял свои космические шарики", + "[Achievement name 573]By will alone I set my mind in motion": "Усилием воли я заставляю разум работать", + "[Achievement name 574]Ain't that a click in the head": "Разве это не клик в голову", + "[Achievement name 575]Sexcentennial and a half": "Шестьсот с половиной лет", + "[Achievement name 576]I am speed": "Я эталон скорости", + "[Achievement name 577]And on and on": "До бесконечности", + "[Achievement name 578]Fake it till you bake it": "Вживайся в роль", + "[Achievement name 579]History in the baking": "История в выпечке", + "[Achievement name 580]Baby it's old outside": "Что-то стареть начало", + "[Achievement name 581]Myriad": "Мириады", + "[Achievement name 582]Kaizen": "Совершенствование", + "[Achievement name 583]Beyond quality": "Больше чем качество", + "[Achievement name 584]Everything happens so much": "Столько всего происходит", + "[Achievement name 585]I'll rest when I'm dead": "Отдохну на том свете", + "[Achievement name 586]What do you get for the baker who has everything": "Что подарить пекарю, у которого все есть", + "[Achievement name 587]Bottomless pit": "Бездонная дыра", + "[Achievement name 588]All the stars in heaven": "Все звезды на небесах" +}); \ No newline at end of file diff --git a/gversion/gs/cookieclicker/loc/ZH-CN.js b/gversion/gs/cookieclicker/loc/ZH-CN.js new file mode 100644 index 0000000..10e16dd --- /dev/null +++ b/gversion/gs/cookieclicker/loc/ZH-CN.js @@ -0,0 +1,3303 @@ +AddLanguage('ZH-CN','chinese',{ + "": { + "language": "ZH-CN", + "plural-forms": "nplurals=2;plural=(n!=1);" + }, + "cookie": "饼干", + "sugar lump": "糖块", + "heavenly chip": "天堂碎片", + "wrinkler": "饼干虫", + "building": "建筑", + "upgrade": "升级", + "golden cookie": "黄金饼干", + "grandmapocalypse": "/", + "%1 cookie": [ + "%1 块饼干", + "%1 块饼干" + ], + "%1 sugar lump": [ + "%1 个糖块", + "%1 个糖块" + ], + "%1 heavenly chip": [ + "%1 块天堂碎片", + "%1 块天堂碎片" + ], + "%1 golden cookie": [ + "%1 块黄金饼干", + "%1 块黄金饼干" + ], + "%1 building": [ + "%1 个建筑", + "%1 个建筑" + ], + "%1 upgrade": [ + "%1 项升级", + "%1 项升级" + ], + "Yes": "是", + "No": "否", + "Click here": "点击此处", + "Don't show this again": "不再显示", + "Delete all": "全部删除", + "Back": "返回", + "Confirm": "确认", + "All done!": "全部完成!", + "Load": "加载", + "Save": "保存", + "Quit": "退出", + "Save & Quit": "保存并退出", + "Cancel": "取消", + "Nevermind": "算了", + "Random": "随机", + "You have %1.": "你有 %1。", + "Click": "点击", + "Shift": "/", + "Shift-click": "按下 Shift 键并单击", + "Ctrl": "/", + "Ctrl-click": "按下 Ctrl 键并单击", + "Esc": "/", + "Cookies": "饼干", + "%1 day": [ + "%1 天", + "%1 天" + ], + "%1 hour": [ + "%1 小时", + "%1 小时" + ], + "%1 minute": [ + "%1 分", + "%1 分" + ], + "%1 second": [ + "%1 秒", + "%1 秒" + ], + "less than 1 second": "不到 1 秒", + "in %1": "%1 后", + "%1 ago": "%1 前", + "%1 remaining": "剩余 %1", + "%1 worth": "相当于 %1", + "%1 of CpS": "CpS的%1", + "%1% of bank": "银行的 %1% ", + "per second:": "每秒:", + "just now": "刚才", + "a long while": "很长一段时间", + "forever": "永久", + "Time remaining:": "剩余时间:", + "Big clickable cookie": "可以点击的大饼干", + "Golden cookie": "黄金饼干", + "Wrath cookie": "愤怒饼干", + "Reindeer": "驯鹿", + "Options": "选项", + "General": "常规", + "Settings": "设置", + "Volume": "音量", + "Volume (music)": "音量(音乐)", + "ON": "开", + "OFF": "关", + "Fancy graphics": "精美图形", + "CSS filters": "CSS 滤镜", + "visual improvements; disabling may improve performance": "改进视觉效果;禁用可以提高性能", + "Particles": "粒子", + "Numbers": "数字", + "numbers that pop up when clicking the cookie": "点击饼干时弹出的数字", + "Milk [setting]": "牛奶", + "Cursors [setting]": "指针", + "visual display of your cursors": "指针的视觉显示", + "Wobbly cookie": "饼干晃动", + "Alt cookie sound": "更改饼干声音", + "Icon crates": "箱框图标", + "display boxes around upgrades and achievements in Stats": "统计中环绕着升级和成就的显示框", + "Alt font": "更改字体", + "your cookies are displayed using a monospace font": "用等宽字体显示饼干", + "Short numbers": "短数字", + "Fast notes": "海鸥便笺", + "notifications disappear much faster": "通知消失速度明显加快", + "Closing warning": "关闭警告", + "the game will ask you to confirm when you close the window": "游戏会在消耗糖块前要求你确认", + "Defocus": "非专注", + "the game will be less resource-intensive when out of focus": "游戏处于非专注状态时占用资源较少", + "Extra buttons": "额外按键", + "add options on buildings like Mute": "在建筑上增加选项,如:静音", + "Lump confirmation": "糖块确认", + "the game will ask you to confirm before spending sugar lumps": "游戏会在消耗糖块前要求你确认", + "Custom grandmas": "自定义老太婆", + "some grandmas will be named after Patreon supporters": "一些老太婆会以 Patreon 资助者的名字命名", + "Scary stuff": "可怕的东西", + "Sleep mode timeout": "睡眠模式超时", + "on slower computers, the game will put itself in sleep mode when it's inactive and starts to lag out; offline CpS production kicks in during sleep mode": "在运行速度较慢的电脑上,当处于非活动状态且开始出现延迟现象后,游戏会进入睡眠模式;睡眠模式期间,睡眠模式期间离线 CpS 生产点击仍然有效。", + "Music in background": "背景音乐", + "music will keep playing even when the game window isn't focused": "即使游戏窗口不聚焦,音乐也会继续播放", + "Cloud saving": "雲儲存", + "allow use of Steam Cloud for save backups": "允許使用 Steam 雲進行儲存備份", + "Purge Cloud": "清除雲", + "Current Cloud use:": "當前云使用:", + "No Cloud access at the moment.": "暫時沒有云存取。", + "Screen reader mode": "螢幕閱讀器模式", + "allows optimizations for screen readers; game will reload": "允許優化螢幕閱讀器;遊戲將重新加載", + "Discord status": "Discord 狀態", + "if Discord is on, show your game info as activity status": "如果 Discord 開啟,遊戲信息將顯示為活動狀態。", + "Language": "语言", + "Language: %1": "语言: %1", + "Change language": "更改语言", + "note: this will save and reload your game": "注意:这将保存并重新加载游戏。", + "Press %1 to toggle fullscreen.": "按%1切换全屏。", + "Other versions": "其他版本", + "Beta": "测试版", + "Stats": "统计", + "Shadow achievements": "暗影成就", + "These are feats that are either unfair or difficult to attain. They do not give milk.": "是指作弊达成或很难达成的成就。它们不会奖励牛奶。", + "starter milk": "新手牛奶", + "for %1 achievements": "获得 %1 项成就的奖励", + "appeased": "满足", + "awoken": "觉醒", + "displeased": "不悦", + "angered": "愤怒", + "Cookies in bank:": "银行中的饼干:", + "Cookies baked (this ascension):": "已烘焙的饼干(此次飞升):", + "Cookies baked (all time):": "已烘焙的饼干(总计):", + "Cookies forfeited by ascending:": "因飞升失去的饼干:", + "Legacy started:": "传承始于:", + "with %1 ascension": [ + "%1 次飞升", + "%1 次飞升" + ], + "Run started:": "运行始于:", + "Buildings owned:": "拥有的建筑:", + "Cookies per second:": "每秒饼干产量(CpS):", + "Raw cookies per second:": "每秒生饼干产量:", + "highest this ascension:": "此次飞升峰值:", + "multiplier:": "倍率:", + "withered:": "削弱:", + "Cookies per click:": "每次点击产生的饼干数量:", + "Cookie clicks:": "饼干点击次数:", + "Hand-made cookies:": "手工饼干数量:", + "Golden cookie clicks:": "黄金饼干点击次数:", + "Random drop multiplier:": "隨機掉落倍率:", + "all time:": "总计:", + "Running version:": "运行版本:", + "Special": "特殊", + "Challenge mode:": "挑战模式:", + "Seasonal event:": "节庆活动:", + "Research:": "研究:", + "Grandmatriarchs status:": "老太婆元老状态:", + "Pledge:": "誓约:", + "Wrinklers popped:": "击破的饼干虫:", + "Sugar lumps harvested:": "已收获的糖块:", + "Reindeer found:": "已发现的驯鹿:", + "Santa stages unlocked:": "已解锁的圣诞老人形态:", + "Dragon training:": "训练的龙:", + "Prestige": "威望", + "at %1% of its potential (+%2% CpS)": "按其潜在 (+%2% CpS) 的 %1%", + "Prestige upgrades unlocked:": "已解锁的威望升级:", + "Upgrades unlocked:": "已解锁的升级:", + "Achievements unlocked:": "已解锁的成就:", + "Kitten multiplier:": "小猫倍率:", + "Milk": "牛奶", + "Milk:": "牛奶:", + "Milk flavors unlocked:": "已解锁的牛奶口味:", + "Milk is gained with each achievement. It can unlock unique upgrades over time.": "每达成一项成就可获得牛奶。随着游戏推进,牛奶可以用来解锁特殊升级。", + "Rank %1": "排名 %1", + "Automatic": "自动", + "Plain milk": "原味牛奶", + "Chocolate milk": "巧克力牛奶", + "Raspberry milk": "覆盆子牛奶", + "Orange milk": "橙子牛奶", + "Caramel milk": "焦糖牛奶", + "Banana milk": "香蕉牛奶", + "Lime milk": "青柠牛奶", + "Blueberry milk": "蓝莓牛奶", + "Strawberry milk": "草莓牛奶", + "Vanilla milk": "香草牛奶", + "Zebra milk": "斑马牛奶", + "Cosmic milk": "宇宙牛奶", + "Flaming milk": "火焰牛奶", + "Sanguine milk": "血红牛奶", + "Midas milk": "迈达斯黄金牛奶", + "Midnight milk": "午夜牛奶", + "Green inferno milk": "绿色地狱火牛奶", + "Frostfire milk": "霜火牛奶", + "Honey milk": "蜂蜜牛奶", + "Coffee milk": "咖啡牛奶", + "Tea milk": "茶奶", + "Coconut milk": "椰奶", + "Cherry milk": "樱桃牛奶", + "Soy milk": "豆奶", + "Spiced milk": "辣味牛奶", + "Maple milk": "枫糖牛奶", + "Mint milk": "薄荷牛奶", + "Licorice milk": "甘草牛奶", + "Rose milk": "玫瑰牛奶", + "Dragonfruit milk": "火龙果牛奶", + "Info": "信息", + "About": "关于", + "Cookie Clicker is a javascript game by %1 and %2.": "Cookie Clicker 是一款由 %1 和 %2 联合开发的 Javascript 游戏。", + "Music by %1.": "%1 的音樂:", + "Useful links: %1, %2, %3, %4.": "友情链接:%1, %2, %3, %4。", + "This version of Cookie Clicker is 100% free, forever. Want to support us so we can keep developing games? Here's some ways you can help:%1": "此版本的 Cookie Clicker 100% 永久免费。想支持我们继续开发游戏吗?你可以通过以下方式帮助我们:%1", + "Note: if you find a new bug after an update and you're using a 3rd-party add-on, make sure it's not just your add-on causing it!": "注意:如果你在更新后发现新的 Bug,并且正在使用第三方插件,请确保这不是你使用的插件所致!", + "Warning: clearing your browser cache or cookies (what else?) will result in your save being wiped. Export your save and back it up first!": "警告:清除浏览器缓存或 cookie(别的什么)会导致存档被删除。请先导出存档和备份它!", + "Version history": "版本历史", + "Official website": "官方网站", + "Note: links will open in your web browser.": "注意:链接将在网页浏览器中打开。", + "Note: older update notes are in English.": "注意:旧的更新说明为英文。", + "This feature is not yet available in your language.": "此功能在你的语言中尚不可用。", + "Restart with new changes": "重新開始新變化", + "Cookie Clicker is in sleep mode.": "Cookie Clicker 正处于睡眠模式。", + "Cookie Clicker is in sleep mode and generating offline cookies.": "Cookie Clicker 正处于睡眠模式,并且正在产出离线饼干。", + "%1 to resume from your save file.": "%1 以通过存档继续游戏。", + "(this happens when too many frames are skipped at once,
usually when the game has been running in the background for a while)
(you can turn this feature off in the settings menu)": "(之所以出现这种情况,是因为跳帧过快,
这种情况通常发生在游戏在后台运行一段时间后)
(你可以在设置菜单中关闭此功能)", + "Are you sure you want to close Cookie Clicker?": "你确定要关闭 Cookie Clicker 吗?", + "Back up your save!": "备份存档!", + "Hello again! Just a reminder that you may want to back up your Cookie Clicker save every once in a while, just in case.
To do so, go to Options and hit \"Export save\" or \"Save to file\"!": "又见面了!友情提示,为防万一,你可以每隔一段时间备份一下你的 Cookie Clicker 存档。
为此,请前往选项,然后点击“导出存档”或“保存至文件”!", + "Save manually (the game autosaves every 60 seconds; shortcut: ctrl+S)": "手动保存(游戏每隔 60 秒会自动保存;快捷键:Ctrl+S)", + "You can use this to backup your save or to transfer it to another computer (shortcut for import: ctrl+O)": "你可以用它来备份存档或将存档转移到另一台电脑上(导入快捷键:ctrl+O)", + "Save to file": "保存至文件", + "Load from file": "从文件加载", + "Use this to keep backups on your computer": "使用此功能将备份保存在你的电脑上", + "Export save": "导出存档", + "This is your save code.
Copy it and keep it somewhere safe!": "这是你的存档代码。
请复制并将其保存在安全的地方!", + "Import save": "导入存档", + "Please paste in the code that was given to you on save export.": "请粘贴存档导出时获得的代码。", + "Game saved": "游戏已保存", + "Game loaded": "游戏已加载", + "Error while saving": "保存游戏时出现错误", + "Export your save instead!": "改为导出存档!", + "Error importing save": "导入存档时出现错误", + "Oops, looks like the import string is all wrong!": "糟糕,导入字符串似乎完全错误!", + "You are attempting to load a save from a future version (v. %1; you are using v. %2).": "你正尝试加载未来版本的存档(v. %1;你当前运行的是v. %2)。", + "Sorry, you can't import saves from the classic version.": "抱歉,你不能导入经典版本的存档。", + "Wipe save": "删除存档", + "Delete all your progress, including your achievements": "删除所有游戏进度,包括成就", + "Do you REALLY want to wipe your save?
You will lose your progress, your achievements, and your heavenly chips!": "你确定要删除存档吗?
你将失去游戏进度、成就和天堂碎片!", + "Whoah now, are you really, REALLY sure you want to go through with this?
Don't say we didn't warn you!": "好家伙,你现在真的,真的确定要这样做吗?
别说我们没警告过你!", + "Game reset": "游戏重置", + "Good bye, cookies.": "再见了,小饼干。", + "Welcome back!": "欢迎回来!", + "You earned %1 while you were away.": "你离线期间获得了 %1 块饼干。", + "Mods": "模式", + "Manage mods": "管理模式", + "Publish mods": "发布模式", + "Update published mods": "更新已發布模組", + "Only use mods from trusted sources. Some mods may require a game restart to take effect.": "只使用来自可信来源的模式。有些模式可能需要游戏重启才能生效。", + "Enable": "启用", + "Disable": "禁用", + "Priority up": "优先级上升", + "Priority down": "优先级下降", + "New mod": "新模組", + "Select folder": "选择文件夹", + "Select updated folder": "選擇更新的文件夾", + "Select a mod.": "選擇一個模組。", + "Open folder": "打开文件夹", + "Open Workshop": "打开研讨会", + "Open Workshop page": "打开研讨会页面", + "Unsubscribe": "取消订阅", + "Local mod": "本地模式", + "Open %1 folder": "打开%1文件夹", + "Description": "说明", + "Image": "图像", + "Name": "姓名", + "Title": "头衔", + "Visibility": "可见性", + "Author": "作者", + "File size": "文件大小", + "Tags": "标签", + "Dependencies": "依賴項", + "Publish to Workshop": "发布到研讨会", + "Version": "版本", + "Error!": "错误!", + "none": "無", + "Publishing...": "發布...", + "Updating...": "更新中...", + "Success!": "成功!", + "Refresh": "刷新", + "Last update:": "最後更新:", + "Mods are loaded from top to bottom.": "模組從上到下加載。", + "Some mods couldn't be loaded:": "一些模組無法加載:", + "This tool allows you to upload new mods to the Steam Workshop.
You need to select a mod folder containing a properly-formatted %1 file.
See the included sample mods for examples.": "此工具允許你將新模組上傳到 Steam 創意工坊。
你需要選擇一個包含格式正確的 %1 文件的模組文件夾。
請參閱包含的模組示例。", + "Mod data": "Mod 数据", + "No mod data present.": "不存在 Mod 数据。", + "These are the mods present in your save data. You may delete some of this data to make your save file smaller.": "这些是你存档数据中的 Mod。你可以删除其中的一些数据以缩小存档文件。", + "(loaded)": "(加载)", + "%1 char": [ + "%1 个字符", + "%1 个字符" + ], + "Check mod data": "检查 Mod 数据", + "view and delete save data created by mods": "查看并删除模块创建的存档数据", + "New update!": "新的更新!", + "New version available: v. %1!": "有新版本可用:v. %1!", + "Update note: \"%1\"": "更新说明:“%1”", + "Refresh to get it!": "刷新以更新!", + "You are currently playing Cookie Clicker on the %1 protocol.
The %2 version uses a different save slot than this one.
Click this lock to reload the page and switch to the %2 version!": "你正在玩的 Cookie Clicker 基于 %1 协议。
%2 版使用不同的存档位置。
点击此锁以重新加载页面,并切换至 %2 版!", + "+%1 more notification.": [ + "额外 %1 条通知。", + "额外 %1 条通知。" + ], + "Christmas": "圣诞节", + "Valentine's day": "情人节", + "Business day": "商业节", + "Easter": "复活节", + "Halloween": "万圣节", + "%1 has started!": "%1开始了!", + "%1 is over.": "%1结束了。", + "%1's bakery": "%1的烘焙坊", + "Name your bakery": "给你的烘焙坊取名字", + "What should your bakery's name be?": "你想给你的烘焙坊取什么名字?", + "bakery random name, 1st half": [ + "魔力的", + "奇幻的", + "精致的", + "无礼的", + "新潮的", + "美丽的", + "伶俐的", + "海盗", + "忍者", + "僵尸", + "机器人", + "激进的", + "都市的", + "酷炫的", + "极度的", + "甜美的", + "可怕的", + "麻烦的", + "三重的", + "涡轮增压", + "铁克诺音乐", + "迪斯科音乐", + "电子音乐", + "舞曲", + "神奇的", + "变异的", + "空间", + "科学", + "中世纪的", + "未来的", + "船长", + "长着大胡子的", + "可爱的", + "小", + "大", + "火", + "水", + "冰冻", + "金属", + "塑料", + "固体", + "液体", + "发霉的", + "闪亮的", + "快乐的", + "小确幸", + "黏糊糊的", + "美味的", + "可口的", + "饥饿的", + "贪婪的", + "致命的", + "教授", + "医生", + "能量", + "巧克力", + "松脆的", + "巧克力", + "正义的", + "光荣的", + "记忆的", + "灵异的", + "狂乱的", + "忙碌的", + "疯狂的", + "皇家的", + "厄尔", + "冯" + ], + "bakery random name, 2nd half": [ + "曲奇", + "饼干", + "松饼", + "司康糕", + "杯子蛋糕", + "薄饼", + "薯片", + "链轮", + "小发明", + "木偶", + "手套", + "袜子", + "茶壶", + "神秘", + "烘焙师", + "厨师", + "老太婆", + "点击", + "点击器", + "宇宙飞船", + "工厂", + "传送门", + "机器", + "实验", + "怪物", + "恐慌的", + "夜贼", + "匪徒", + "战利品", + "土豆", + "披萨", + "汉堡包", + "香肠", + "肉丸", + "意大利面", + "通心粉", + "小猫", + "小狗", + "长颈鹿", + "斑马", + "鹦鹉", + "海豚", + "小鸭子", + "树懒", + "海龟", + "地精", + "小精灵", + "侏儒", + "电脑", + "海盗", + "忍者", + "僵尸", + "机器人" + ], + "%1, age %2": "%1,年齡 %2,", + "Sugar lumps!": "糖块!", + "Because you've baked a billion cookies in total, you are now attracting sugar lumps. They coalesce quietly near the top of your screen, under the Stats button.
You will be able to harvest them when they're ripe, after which you may spend them on all sorts of things!": "由于已共计烘焙出了 10 亿块饼干 ,你引来了糖块在屏幕顶部统计按钮的下方安静地生长。
你能在糖块成熟时收获它们,随后将它们用于各个方面!", + "A sugar lump is coalescing here, attracted by your accomplishments.": "受到你所取得成就的吸引,一个糖块 正在此处生长。", + "Your sugar lumps mature after %1,
ripen after %2,
and fall after %3.": "你的糖块将于 %1 后长成,
%2 后成熟,
%3 后落下。", + "• Sugar lumps can be harvested when mature, though if left alone beyond that point they will start ripening (increasing the chance of harvesting them) and will eventually fall and be auto-harvested after some time.
• Sugar lumps are delicious and may be used as currency for all sorts of things.
• Once a sugar lump is harvested, another one will start growing in its place.
• Note that sugar lumps keep growing when the game is closed.": "• 你可在糖块长成时收获糖块,如果在那之后任其继续生长,它们会开始成熟(增加成功收获它们的几率),并在经过一定时间后最终落下,自动收获。
• 糖块美味可口,可作为货币用于各个方面。
• 在收获完一个糖块后,另一个糖块会开始在同样的位置生长。
• 注意,糖块会在游戏关闭后继续生长。", + "This sugar lump has been exposed to time travel shenanigans and will take an excruciating %1 to reach maturity.": "这个糖块受到了时空旅行诡计的影响,需要经历 %1 的折磨才能长成。", + "This sugar lump is still growing and will take %1 to reach maturity.": "这个糖块还在生长,需要 %1 才能长成。", + "This sugar lump is mature and will be ripe in %1.
You may click it to harvest it now, but there is a 50% chance you won't get anything.": "这个糖块已经长成了,将在 %1 后成熟。
你可以现在就点击以收获它,但有50%的几率会一无所获。", + "This sugar lump is ripe! Click it to harvest it.
If you do nothing, it will auto-harvest in %1.": "这个糖块已经成熟了!点击以收获它。
如果你什么也不做,它会在 %1 后自动收获。", + "This sugar lump grew to be bifurcated; harvesting it has a 50% chance of yielding two lumps.": "这个糖块长成了分叉糖块;收获它有 50% 的几率得到两个糖块。", + "This sugar lump grew to be golden; harvesting it will yield 2 to 7 lumps, your current cookies will be doubled (capped to a gain of 24 hours of your CpS), and you will find 10% more golden cookies for the next 24 hours.": "这个糖块长成了黄金糖块;收获它有 50% 的几率得到 2 到 7 个糖块,你当前拥有的饼干将翻倍(最多不超过你 24 小时产出的饼干总量),并且你在接下来 24 小时内发现的黄金饼干将增加 10%。", + "This sugar lump was affected by the elders and grew to be meaty; harvesting it will yield between 0 and 2 lumps.": "受到老太婆的影响,这个糖块长成了肥硕糖块;收获它将获得 0 到 2 个糖块。", + "This sugar lump is caramelized, its stickiness binding it to unexpected things; harvesting it will yield between 1 and 3 lumps and will refill your sugar lump cooldowns.": "这个糖块已经焦糖化了,附着了一些意想不到的东西;收获它将获得 1 到 3 个糖块,并完成冷却充能。", + "You harvested %1 while you were away.": "你离线时收获了 %1 个糖块。", + "Sugar blessing activated!": "糖块祝福已激活!", + "Your cookies have been doubled.
+10% golden cookies for the next 24 hours.": "你拥有的饼干数已翻倍。
接下来 24 小时内发现的黄金饼干增加 10%。", + "Sugar lump cooldowns cleared!": "糖块冷却时间已清除!", + "Botched harvest!": "收获搞砸了!", + "Do you want to spend %1 to %2?": "要消耗 %1 换取 %2 吗?", + "Heralds": "使者", + "%1 herald": [ + "%1 个使者", + "%1 个使者" + ], + "Heralds couldn't be loaded. There may be an issue with our servers, or you are playing the game locally.": "无法加载使用。这可能是因为我们的服务器出现了问题,或者你是在本地完游戏。", + "There are no heralds at the moment. Please consider donating to our Patreon!": "当前没有使者。请考虑向我们的 Patreon 捐赠!", + "selflessly inspiring a boost in production for everyone, resulting in %1.": "这种无私的行为可以使每个人的饼干产量提高 %1。", + "+%1% cookies per second": "每秒饼干产量 +%1%", + "You are in a Born again run, and are not currently benefiting from heralds.": "由于正在进行重生游戏,你当前无法享受使者带来的收益。", + "You own the Heralds upgrade, and therefore benefit from the production boost.": "你拥有使者升级,因此能享受产量提升收益。", + "To benefit from the herald bonus, you need a special upgrade you do not yet own. You will permanently unlock it later in the game.": "要想获得使者奖励,你需要完成一项尚未拥有的特殊升级。你稍后将在游戏中永久解锁它。", + "Heralds are people who have donated to our highest Patreon tier, and are limited to 100.
Each herald gives everyone +1% CpS.
Heralds benefit everyone playing the game, regardless of whether you donated.": "使者是指为向我们的 Patreon 捐赠数额最高的 100 个人。
每个使者可以大家带来 1% 的每秒饼干产量提升。
每一个玩这个游戏的人,无论是否向我们捐赠过,都可以享受使者带来的收益。", + "Every %1 current players on Steam generates 1 herald, up to %2 heralds.
Each herald gives everyone +1% CpS.": "Steam上的每%1个当前玩家生成1个先驱者,最多%2个先驱者。
每个先驱者给每个人+1%的CpS。", + "+%1!": "+%1!", + "You found %1!": "你发现了 %1!", + "Found %1!": "发现了 %1!", + "You also found %1!": "你还发现了 %1!", + "Lost %1!": "失去 %1!", + "Sweet!
Found 1 sugar lump!": "太棒了!
发现 1 个糖块!", + "Lucky!": "好运气!", + "Ruin!": "破财!", + "Cookie chain over. You made %1.": "饼干连锁结束。你获得了 %1 块饼干。", + "Cookie chain": "饼干连锁", + "Cookie chain broken.
You made %1.": "饼干连锁断裂。
你获得了 %1 块饼干。", + "Cookie blab": [ + "饼干破碎 x3,持续 60 秒!", + "巧克力味饼干 x7,持续 77 秒!", + "面团弹性减半,持续 66 秒!", + "黄金饼干翻倍,持续 3 秒!", + "全球经济减半,持续 30 秒!", + "老太婆轻吻减少 23%,持续 45 秒!", + "感谢点击!", + "你上当了!这只是一个测试。", + "黄金饼干点击次数 +1!", + "你的点击已记录在案。谢谢你的合作。", + "非常感谢!正合要求!", + "谢谢你。我们已派出一个团队。", + "他们知道。", + "糟糕。这是一块包着铝箔纸的巧克力饼干。" + ], + "Exploded a wrinkler": "炸死一条饼干虫", + "Exploded a shiny wrinkler": "炸死一条发光的饼干虫", + "Swallowed:": "被吞噬:", + "Reindeer names": [ + "猛冲者", + "舞者", + "腾跃者", + "母夜叉", + "彗星", + "丘比特", + "多纳", + "闪电", + "鲁道夫" + ], + "The reindeer gives you %1.": "驯鹿为你带来 %1。", + "You are also rewarded with %1!": "作为奖励,你还将得到 %1!", + "You are granted %1.": "你得到了 %1。", + "Found a present!": "发现一份礼物!", + "You find a present which contains...": "你发现一份礼物,里面是……", + "Evolve": "进化", + "Festive test tube": "节庆试管", + "Festive ornament": "节庆装饰", + "Festive wreath": "节庆花环", + "Festive tree": "节庆树", + "Festive present": "节庆礼物", + "Festive elf fetus": "节庆精灵婴儿", + "Elf toddler": "精灵幼儿", + "Elfling": "精灵儿童", + "Young elf": "青年精灵", + "Bulky elf": "大块头精灵", + "Nick": "尼克", + "Santa Claus": "圣诞老人", + "Elder Santa": "年长圣诞老人", + "True Santa": "真圣诞老人", + "Final Claus": "终极圣诞老人", + "Dragon egg": "龙蛋", + "Shivering dragon egg": "颤动的龙蛋", + "Krumblor, cookie hatchling": "Krumblor,幼龙状态", + "Krumblor, cookie dragon": "Krumblor,成年龙状态", + "Train %1": "训练 %1", + "Aura: %1": "光环:%1", + "Chip it": "打破它", + "Hatch it": "孵化它", + "Bake dragon cookie": "烘焙龙饼干", + "Delicious!": "好吃!", + "Train secondary aura": "训练第二光环", + "Lets you use two dragon auras simultaneously": "允许你同时使用两种龙裔光环", + "Your dragon is fully trained.": "你的龙经过了充分训练。", + "%1 of every building": "每种建筑 %1 个", + "No aura": "无光环", + "Set your dragon's aura": "设定你的龙裔光环", + "Set your dragon's secondary aura": "设定你的第二龙裔光环", + "Select an aura from those your dragon knows.": "从你的龙习得的光环中选择一种。", + "One tenth of every other dragon aura, combined.": "每十种其他龙裔光环中的一种,已合并。", + "Switching your aura is free because you own no buildings.": "因为没有建筑,所以你可以免费切换光环。", + "The cost of switching your aura is %1.
This will affect your CpS!": "你需要消耗%1才能切换光环。
这会影响你的每秒饼干产量!", + "Your dragon dropped something!": "你的龙会掉落物品!", + "Breath of Milk": "牛奶之息", + "Dragon Cursor": "龙指针", + "Elder Battalion": "元老队伍", + "Reaper of Fields": "田野收割者", + "Earth Shatterer": "大地粉碎者", + "Master of the Armory": "护甲大师", + "Fierce Hoarder": "凶猛囤积者", + "Dragon God": "龙神", + "Arcane Aura": "秘术光环", + "Dragonflight": "飞龙在天", + "Ancestral Metamorphosis": "祖传蜕变", + "Unholy Dominion": "邪恶仆从", + "Epoch Manipulator": "纪元操纵者", + "Mind Over Matter": "心胜于物", + "Radiant Appetite": "光源需求", + "Dragon's Fortune": "龙之幸运", + "Dragon's Curve": "龙之曲线", + "Reality Bending": "现实扭曲", + "Dragon Orbs": "龙之宝珠", + "Supreme Intellect": "“最高智慧”,", + "News :": "新闻:", + "Ticker (grandma)": [ + "湿润的饼干。", + "我们是善良的老太婆。", + "契约苦役。", + "来亲一下老太婆。", + "你为什么不更常来呢?", + "叫我……" + ], + "Ticker (threatening grandma)": [ + "真恶心。", + "你真让我感到恶心。", + "你恶心到我了。", + "我们崛起了。", + "开始了。", + "一切就要结束了。", + "你本可以阻止它。" + ], + "Ticker (angry grandma)": [ + "那肮脏的小东西背叛了我们。", + "那下流的小东西背叛了我们。", + "它以为出卖了我们,我们就会离开。真是奇了怪了。", + "我能闻到你腐烂饼干的气味。" + ], + "Ticker (grandmas return)": [ + "皱缩", + "蠕动", + "颤动", + "啃咬", + "我们会再度崛起。", + "一个小挫折。", + "我们并不满足。", + "太迟了。" + ], + "Ticker (grandma invasion start)": [ + "据报道,有数百人老妇人失踪!", + "据报道,大陆各地很多家庭中的老太婆都焦虑不安,茫然发呆!", + "据护士说,上了年纪的女性病人周围散发出“奇怪的饼干面团气味”!" + ], + "Ticker (grandma invasion rise)": [ + "奇怪的老妇人们闯入家中,拐走婴儿和烘焙器具,市镇陷入一片混乱!", + "整个大陆都出现了老妇人大规模迁移!", + "街上的老妇人僵在原地,渗出温热的糖浆!" + ], + "Ticker (grandma invasion full)": [ + "从太空可以看见皱巴巴的“多肉藤蔓”!", + "整座城市随处可见扭动着的饱满面团,令人极度绝望!", + "噩梦仍在继续,那些皱巴巴的多肉生物正以惊人的速度扩张!" + ], + "Ticker (Farm)": [ + "科学家表示,饼干农场向河里排放了有害健康的巧克力!", + "饼干农场主遭受转基因巧克力论战打击!", + "营养学家表示,农场饼干不适合素食主义者。" + ], + "Ticker (Mine)": [ + "我们的星球正变得越来越轻吗?相关专家正在审视密集开采巧克力矿带来的影响。", + "据发现,开采巧克力矿会导致地震和地陷!", + "据发现,巧克力矿坑深处存在“奇异的巧克力生物”!" + ], + "Ticker (Factory)": [ + "全球变暖与饼干工厂有关!", + "各地的饼干工厂正经历着罢工,纷纷雇佣机器人仆从来取代人力!", + "各地的饼干工厂正经历着罢工——工人们要求停止用饼干支付酬劳!" + ], + "Ticker (Bank)": [ + "大众的日常收入负担不起日益增长的饼干借贷。", + "饼干正逐渐发起对传统货币的挑战!", + "大多数烘焙坊现在都配有 ATM 机,方便取出和存入饼干。" + ], + "Ticker (Temple)": [ + "最近发现的巧克力神庙正在引领新兴的饼干文化;数千人向空中的烘焙之神祈祷!", + "全世界的无神论者发现新的饼干教派——“天哪,我一直都错了!”", + "探险家从废弃神庙带回古代神器;考古学家惊叹于这历史悠久的擀面杖!" + ], + "Ticker (Wizard tower)": [ + "参加一年一度的全国法术辨识展销会,获取新的护身符和咒语!符文和魔法书独占价格。", + "饼干巫师否认与丑得惊为天人的新生儿有关,医生表示“老实说,长得确实不好看,但胜在自然”。", + "著名科技巫师声称“任何原生的魔法与科技都无差别”。" + ], + "Ticker (Shipment)": [ + "大批饼干贸易宇宙飞船将飞往新发现的巧克力行星!", + "发现巨大巧克力行星,经鉴定其 99.8% 的内核为纯黑巧克力!", + "在遥远的行星上发现巧克力生物体!" + ], + "Ticker (Alchemy lab)": [ + "随着越来越多珍贵的矿石被变成饼干,国家黄金储备不断减少!", + "据发现,银矿石也可以变成白巧克力!", + "存在问题的炼金术实验室关闭,据悉该实验室用于将饼干转化成无用的黄金。" + ], + "Ticker (Portal)": [ + "民众担心会有越来越多令人不安的生物从次元传送门走出!", + "赴饼干世界旅游深受无聊青少年喜爱。伤亡事故率高至73%!", + "研究人员怀疑饼干世界传送门会导致快速老化和沉迷于烘焙。" + ], + "Ticker (Time machine)": [ + "时光机卷入重写历史的丑闻中!是这样吗?", + "历史学家认为从过去带回来的饼干“不适合人类食用”。", + "“我已经看见了未来,”时光机操作员说道,“我不想再去了。”" + ], + "Ticker (Antimatter condenser)": [ + "整座市镇似乎都被反物质引起的黑洞吞噬了;据更可靠的消息来源证实,该市镇“从未真正存在过”!", + "研究人员得出结论,饼干行业最需要的是“更多的磁石”。", + "首台反物质聚光镜成功启动,没有让现实世界变得支离破碎!" + ], + "Ticker (Prism)": [ + "科学家警告不要系统地将光转化成物质——“总有一天,我们最终将只剩下物质,而没有任何光!”", + "得益于新奇的棱镜折射装置,我们现在能以光速烘焙饼干。", + "世界公民建议“不用担心”频繁出现的大气闪光。" + ], + "Ticker (Chancemaker)": [ + "奇怪的统计学异常现象继续出现,天气预报前所未有地连续 3 天预测准确!", + "本地赌场破产,全体赌客不知何故连续一周获胜!“我们可能还可以坚持,”赌场老板在被闪电击中 47 次前说道。", + "邻国不知怎么回事竟然选出了推行明智政策的总统,这简直就是一件随机发生的怪事!" + ], + "Ticker (Fractal engine)": [ + "当地一位“受够了 Cookie Clicker”的人士,总是会不断自我暗示自己是“令人厌恶和不切实际的”。", + "本地古鲁声称“每个人只有一小部分的自我”,因涉嫌同类相食而接受调查。", + "投票显示民众“可以接受”用饼干制作饼干的概念——至少我们终于知道它们里面是什么了”一位受访市民说道。" + ], + "Ticker (Javascript console)": [ + "写代码人气很高!越多越多的青少年将注意力转向编程这样的技术领域,这注定了一个机器人起义和全人类毁灭的未来。", + "开发人员不知道给他们新的 Javascript 库取什么名字,因为所有3个字典单词的组合都被用过了。", + "各地掀起一股奇怪风尚,家长们纷纷给自己新出生的孩子取诸如 Emma.js 或 Liam.js 这样的名字。至少有一起这类事件的报道。" + ], + "Ticker (Idleverse)": [ + "是否有另一个你生活在平行宇宙中?也许吧,你这个懒鬼!", + "“我找到了慰籍,了解到不同的我至少在那里过得不错”平行宇宙中仅存的公民楷模说道。", + "漫画书作者指出真实的平行宇宙以保护可疑的情节转折点。“看?我给你说过它‘既不平庸,也不做作’!”" + ], + "Ticker (Cortex baker)": [ + "專家說,矮小的皮層麵包師的智商只有五位數:“只是一個有點傻的人”。", + "天文學家警告皮層貝克軌跡漂移,擔心未來的正面碰撞會導致代價高昂的腦震盪。", + "腦皮層麵包師提醒員工,腦皮層麵包是麵包店的物質財產,不應該用暱稱來稱呼。" + ], + "Ticker (Halloween)": [ + "异教徒意识正在兴起,世界各地的儿童身着奇装异服,向房主勒索糖果。", + "世界各地的儿童“感到既失落又迷茫”,所有万圣节糖果都被饼干取代了。", + "大量蜿蜒行进的奇怪生物聚集在饼干工厂,啃咬着生产流水线。" + ], + "Ticker (Christmas)": [ + "有人看见一个长着大胡子的疯子驾着雪橇疾速飞奔!调查还在进行中。", + "那个肥胖的疯子仍然逍遥法外,官方警告道“确保孩子安全,并用木板封住烟囱。我们是认真的。”", + "官方表示神秘节庆实体所使用的量子能给驯鹿群带来了浩劫。", + "“你是说他在免费赠送东西?!”忧心忡忡的母亲问道。“我个人不相信他的胡子是真的。”", + "孩子们惊讶地发现圣诞老人尽然不是他们父亲扮的!
“我正重新评估我的生活”6岁的劳拉说道。" + ], + "Ticker (Valentines)": [ + "气象专家表示空气中弥漫着爱意。每座城市正在发放口罩,以期遏制空气传染。", + "和饼干结婚——这是精神错乱之举,还是未来的一瞥?", + "心形糖果席卷糖果业,剑指饼干的霸主地位。" + ], + "Ticker (Easter)": [ + "长着毛茸茸尾巴的动物涌入市郊,散布着恐惧,传播着巧克力!", + "生物学家发出警告,产卵的兔子“可能来自其他次元”;建议不要抚摸、喂食或烹制这种生物。", + "研究发现神秘的兔子是产卵的哺乳动物,暗示其可能是鸭嘴兽的祖先。" + ], + "Ticker (misc)": [ + "医生建议每日两次食用新鲜饼干。", + "医生建议不要采用不摄入饼干的新节食法。", + "医生提醒妈妈们注意“家庭自制饼干”的危险。", + "一位名人透露:“我对饼干没上瘾。那不过是闲得无聊的粉丝们的猜测罢了。”", + "一位名人透露:“好吧,我直话直说——我这辈子从没吃过一块饼干。”", + "一位名人透露:“饼干帮助我保持身材苗条和身体健康。”", + "男性匪徒抢劫银行后去买了饼干。", + "新的研究表明,饼干既不会加快也不会延缓衰老,而是“把你带往不同的方向”。", + "一位男性被查出对饼干过敏;“真是个怪胎”,他的家人说道。", + "饼干短缺来袭,民众被迫食用杯子蛋糕;“味道差远了”,连市长这么吐槽。", + "“你得承认,这种饼干有点不吉利。”糊涂的傻瓜说道。", + "查获神秘非法饼干;“太难吃了。”警察说道。", + "“好,好的。”接受采访的红毛猩猩说道。", + "我们的媒体是不是受到了饼干业的控制?古怪的阴谋论者认为实际情况很可能是这样。", + "“此刻,饼干全面影响着我们的经济,”经济学家说道。“如果开始吃其他东西,我们全都会死。”", + "饼干在一些没人关心的经济落后国家目前属于非法物品。政治局势变得紧张起来;战争一触即发。" + ], + "You feel like making cookies. But nobody wants to eat your cookies.": "虽然你想做饼干,但没人想吃你做的饼干。", + "Your first batch goes to the trash. The neighborhood raccoon barely touches it.": "你做的第一批饼干都被倒入了垃圾桶。附近的浣熊几乎都不愿意碰它们。", + "Your family accepts to try some of your cookies.": "你的家人愿意尝一尝你做的饼干。", + "Your cookies are popular in the neighborhood.": "你做的饼干深受附近居民的青睐。", + "People are starting to talk about your cookies.": "人们正在纷纷谈论你做的饼干。", + "Your cookies are talked about for miles around.": "方圆数英里的居民都在谈论你做的饼干。", + "Your cookies are renowned in the whole town!": "你做的饼干已闻名于整座市镇!", + "Your cookies bring all the boys to the yard.": "你做的饼干引得万人空巷。", + "Your cookies now have their own website!": "你做的饼干有了自己的网站!", + "Your cookies are worth a lot of money.": "你做的饼干价值不菲。", + "Your cookies sell very well in distant countries.": "你做的饼干在许多遥远的国家十分畅销。", + "People come from very far away to get a taste of your cookies.": "人们纷纷远道而来,只为一尝你做的饼干。", + "Kings and queens from all over the world are enjoying your cookies.": "世界各国的王后和国王纷至沓来,畅享你做的饼干。", + "There are now museums dedicated to your cookies.": "现在已有专门收藏你的饼干的博物馆。", + "A national day has been created in honor of your cookies.": "设立了一个全国性的节日,以此来向你做的饼干表示敬意。", + "Your cookies have been named a part of the world wonders.": "你做的饼干已位列世界奇迹之一。", + "History books now include a whole chapter about your cookies.": "历史书中用了一整章的内容来介绍你做的饼干。", + "Your cookies have been placed under government surveillance.": "你做的饼干已受到政府监督。", + "The whole planet is enjoying your cookies!": "你做的饼干深得世界各地民众的喜爱!", + "Strange creatures from neighboring planets wish to try your cookies.": "来自邻近行星的奇怪生物想要尝一尝你做的饼干。", + "Elder gods from the whole cosmos have awoken to taste your cookies.": "整个宇宙的旧神们纷纷苏醒,想品尝你做的饼干。", + "Beings from other dimensions lapse into existence just to get a taste of your cookies.": "涌现来自其他次元的生物,只为一尝你做的饼干。", + "Your cookies have achieved sentience.": "民众对你做的饼干有了感知能力。", + "The universe has now turned into cookie dough, to the molecular level.": "就分子层面而言,宇宙现在已经变成了制作饼干的面团。", + "Your cookies are rewriting the fundamental laws of the universe.": "你做的饼干正在改写宇宙的基本定律。", + "A local news station runs a 10-minute segment about your cookies. Success!
(you win a cookie)": "一家本地新闻台对你做的饼干进行了10分钟的报道。收效卓著!
(你赢得一块饼干)", + "it's time to stop playing": "现在该停止玩游戏了", + "Today is your lucky day!": "今天是你的幸运日!", + "Your lucky numbers are:": "你的幸运数字是:", + "Fortune!": "幸运!", + "A golden cookie has appeared.": "黄金饼干出现了。", + "You gain one hour of your CpS (capped at double your bank).": "你获得相当于你一小时CpS的饼干( 不超过你银行中饼干的两倍)。", + "You've unlocked a new upgrade.": "你解锁了一项新的升级。", + "Wish granted. Golden cookie spawned.": "如你所愿。黄金饼干出现了。", + "help me!": "救救我!", + "Ascend": "飞升", + "You've been on this run for %1.": "你此次运行时间为 %1。", + "Your prestige level is currently %1.
(CpS +%2%)": "你当前的威望等级是 %1
(CpS +%2%)", + "Ascending now would grant you no prestige.": "你现在飞升不会获得任何威望。", + "Ascending now would grant you
1 prestige level (+1% CpS)
and 1 heavenly chip to spend.": "你现在飞升可以获得
1 个威望等级(+1% CpS)
1 块天堂碎片。", + "Ascending now would grant you
%1 prestige levels (+%2% CpS)
and %3 heavenly chips to spend.": "你现在飞升可以获得
%1 个威望等级(+%2% CpS)
%3 块天堂碎片。", + "You need %1 more cookies for the next level.": "你距离下一等级还需要 %1 块饼干。", + "Do you REALLY want to ascend?
You will lose your progress and start over from scratch.
All your cookies will be converted into prestige and heavenly chips.": "你真地想要飞升吗?
你将失去进度,并从头开始。
你所有的饼干都将被转换成威望和天堂碎片。", + "You will keep your achievements.": "你将保留所达成的成就。", + "You will keep your achievements, building levels and sugar lumps.": "你将保留所达成的成就、建筑等级和糖块。", + "Ascending": "飞升", + "So long, cookies.": "再见,饼干。", + "You forfeit your %1.": "你失去了你的 %1。", + "Prestige level:": "威望等级:", + "Heavenly chips:": "天堂碎片:", + "%1 prestige level": [ + "%1 个威望等级", + "%1 个威望等级" + ], + "You gain %1!": "你获得 %1!", + "Reincarnate": "转生", + "You are ascending.
Drag the screen around
or use arrow keys!
When you're ready,
click Reincarnate.": "你正在飞升。
四处拖动屏幕
或使用方向键!
准备好,
点击转生。", + "Each prestige level grants you a permanent +%1% CpS.
The more levels you have, the more cookies they require.": "每个威望等级可以使你的 CpS 永久+%1%
你的威望等级越高,需要的饼干越多。", + "Heavenly chips are used to buy heavenly upgrades.
You gain 1 chip every time you gain a prestige level.": "天堂碎片可用来购买天堂升级。
每获得 1 个威望等级你就能获得 1 块天堂碎片。", + "Click this once you've bought
everything you need!": "在买入所需的一切后,
点击此处!", + "Are you ready to return to the mortal world?": "你准备好回到凡尘俗世了吗?", + "Hello, cookies!": "你好,小饼干!", + "Challenge mode for the next run:": "下次运行使用挑战模式:", + "Challenge modes apply special modifiers to your next ascension.
Click to change.": "挑战模式会将特殊修饰符应用于你的下一次飞升。
点击进行更改。", + "Select a challenge mode": "选择一种挑战模式。", + "None [ascension type]": "无", + "No special modifiers.": "无特殊修饰符。", + "Born again [ascension type]": "重生", + "This run will behave as if you'd just started the game from scratch. Prestige levels and heavenly upgrades will have no effect, as will sugar lumps and building levels. Perma-upgrades and minigames will be unavailable.
Some achievements are only available in this mode.": "此次运行表现得就像你从头开始游戏。不同于糖块和建筑等级,威望等级和天堂升级不会对游戏性产生影响。永久升级和小游戏都将不可用。
一些成就仅在此模式下可用。", + "Your bingo center/research facility is conducting experiments.": "你的宾果中心/研究设施正在进行实验。", + "Research has begun": "研究开始了", + "Research complete": "研究完成了", + "You have discovered: %1.": "你发现了:%1。", + "Valentine's Day!": "情人节!", + "It's Valentine's season!
Love's in the air and cookies are just that much sweeter!": "情人节到了
空气中弥漫着爱意,饼干比任何时候都更甜美!", + "Business Day!": "商业节!", + "It's Business season!
Don't panic! Things are gonna be looking a little more corporate for a few days.": "商业节到了
别害怕!节日期间的商业氛围会变得浓一些。", + "Halloween!": "万圣节!", + "It's Halloween season!
Everything is just a little bit spookier!": "万盛节到了
一切都会变得有那么一点吓人!", + "Christmas time!": "圣诞节!", + "It's Christmas season!
Bring good cheer to all and you just may get cookies in your stockings!": "圣诞节到了
把快乐带给所有人,你会收到装有饼干的长筒袜!", + "Easter!": "复活节", + "It's Easter season!
Keep an eye out and you just might click a rabbit or two!": "复活节到了
保持警惕,你可能会点到一只或两只兔子!", + "[Tag]Heavenly": "天堂", + "[Tag]Tech": "科技", + "[Tag]Cookie": "曲奇", + "[Tag]Debug": "调试", + "[Tag]Switch": "切换", + "[Tag]Upgrade": "升级", + "Tier:": "阶层:", + "[Tier]Plain": "原色", + "[Tier]Berrylium": "浆果", + "[Tier]Blueberrylium": "蓝莓", + "[Tier]Chalcedhoney": "玉髓蜂蜜", + "[Tier]Buttergold": "黄油金", + "[Tier]Sugarmuck": "糖浆", + "[Tier]Jetmint": "黑玉薄荷", + "[Tier]Cherrysilver": "樱桃银", + "[Tier]Hazelrald": "榛果褐", + "[Tier]Mooncandy": "月亮糖", + "[Tier]Astrofudge": "巧克力彩豆", + "[Tier]Alabascream": "Alabascream", + "[Tier]Iridyum": "铱", + "[Tier]Synergy I": "协同效应 I", + "[Tier]Synergy II": "协同效应 II", + "[Tier]Fortune": "幸运", + "[Tier]Self-referential": "自我参照", + "Vaulted": "已入库", + "Researched": "已研究", + "Purchased": "已购买", + "Unlocked forever": "已永久解锁", + "Click to learn!": "点击学习!", + "Click to unlearn!": "点击取消学习!", + "Upgrade": "升级", + "Upgrades": "升级", + "Achievement": "成就", + "Achievements": "成就", + "Shadow Achievement": "暗影成就", + "Unlocked": "已解锁", + "Locked": "未解锁", + "Source:": "来源:", + "Click to win!": "点击获胜!", + "Click to lose!": "点击失败!", + "Legacy": "传承", + "Buildings": "建筑", + "Switches": "切换", + "Vault": "保险库", + "Research": "研究", + "Store": "商店", + "sacrifice %1": "祭品", + "Click to purchase.": "点击以购买。", + "Click to open selector.": "点击以打开选择器。", + "Click to toggle.": "点击以切换。", + "Click to research.": "点击以研究。", + "%1 to vault.": "将 %1 放入保险库。", + "%1 to unvault.": "将 %1 拿出保险库。", + "Upgrade is vaulted and will not be auto-purchased.": "不会自动购买放入保险库中的升级。", + "Upgrade for %1": "为%1升级", + "Buy": "购买", + "Sell": "出售", + "all": "全部", + "max": "最大", + "Buy all upgrades": "购买全部升级", + "Will instantly purchase every upgrade you can afford, starting from the cheapest one.
Upgrades in the vault will not be auto-purchased.
You may place an upgrade into the vault by Shift-clicking on it.": "将立即购买你所能承担的每一项升级,从价格最低的开始。
不会自动购买放入保险库中的升级。
你可用通过按下 Shift 键并单击来将升级项放入保险库中。", + "each %1 produces %2 per second": "每个 %1 每秒生产 %2", + "%1 producing %2 per second": "%1 每秒生产 %2", + "%1% of total CpS": "总 CpS 的 %1%", + "%1 produced so far": "到目前为止生产出 %1", + "...also boosting some other buildings:": "……还可用强化一些其他建筑:", + "all combined, these boosts account for %1 per second (%2% of total CpS)": "这些强化总相当于每秒生产 %1(总 CpS 的 %2%)", + "owned: %1": "已拥有:%1", + "free: %1!": "免费:%1!", + "Level %1 %2": "等级 %1 %2", + "Granting +%1% %2 CpS.": "获得+%1% %2 CpS。", + "Click to level up for %1.": "点击消耗 %1 进行升级。", + "Levelling up this building unlocks a minigame.": "升级此建筑会解锁一个迷你游戏。", + "level up your %1": "升级你的%1", + "Mute": "静音", + "Minimize this building": "将此建筑音量调至最小", + "Muted:": "已静音:", + "Click to unmute": "点击取消静音", + "Show": "显示", + "Hide": "隐藏", + "Names in white were submitted by our supporters on Patreon.": "白色名字由我们的 Patreon 资助者提交。", + "You can also press %1 to bulk-buy or sell %2 of a building at a time, or %3 for %4.": "你也可以按 %1 批量购买或出售 %2 个建筑,或按 %3 批量购买或出售 %4。", + "Investment": "投资", + "You're not sure what this does, you just know it means profit.": "你不知道这是做什么的,只知道它意味着收益。", + "Cursor": "指针", + "cursor": "指针", + "cursors": "指针", + "%1 cursor": [ + "%1 个指针", + "%1 个指针" + ], + "[Cursor quote]Autoclicks once every 10 seconds.": "每 10 秒自动点击一次。", + "[Cursor business name]Rolling pin": "擀面杖", + "[Cursor business quote]Essential in flattening dough. The first step in cookie-making.": "擀平面团的必要工具。饼干制作的首要步骤。", + "Grandma": "老太婆", + "grandma": "老太婆", + "grandmas": "老太婆", + "%1 grandma": [ + "%1 个老太婆", + "%1 个老太婆" + ], + "[Grandma quote]A nice grandma to bake more cookies.": "善良的老太婆可以烘焙出很多饼干。", + "[Grandma business name]Oven": "烤箱", + "[Grandma business quote]A crucial element of baking cookies.": "烘焙饼干的重要器具。", + "Farm": "农场", + "farm": "农场", + "farms": "农场", + "%1 farm": [ + "%1 个农场", + "%1 个农场" + ], + "[Farm quote]Grows cookie plants from cookie seeds.": "通过饼干种子种植饼干植物。", + "[Farm business name]Kitchen": "厨房", + "[Farm business quote]The more kitchens, the more cookies your employees can produce.": "厨房越多,你的员工生产的饼干越多。", + "Mine": "矿坑", + "mine": "矿坑", + "mines": "矿坑", + "%1 mine": [ + "%1 个矿坑", + "%1 个矿坑" + ], + "[Mine quote]Mines out cookie dough and chocolate chips.": "可开采出饼干面团和巧克力豆。", + "[Mine business name]Secret recipe": "秘方", + "[Mine business quote]These give you the edge you need to outsell those pesky competitors.": "这些可以让你占据优势,从而击败那些烦人的竞争对手。", + "Factory": "工厂", + "factory": "工厂", + "factories": "工厂", + "%1 factory": [ + "%1 个工厂", + "%1 个工厂" + ], + "[Factory quote]Produces large quantities of cookies.": "生产大量饼干。", + "[Factory business name]Factory": "工厂", + "[Factory business quote]Mass production is the future of baking. Seize the day, and synergize!": "批量生产烘焙业的未来趋势。只争朝夕,协同合作!", + "Bank": "银行", + "bank": "银行", + "banks": "银行", + "%1 bank": [ + "%1 个银行", + "%1 个银行" + ], + "[Bank quote]Generates cookies from interest.": "通过利息产出饼干。", + "[Bank business name]Investor": "投资者", + "[Bank business quote]Business folks with a nose for profit, ready to finance your venture as long as there's money to be made.": "他们是具有敏锐盈利嗅觉的商人,只要能赚钱,他们机会一直投资你的经营项目。", + "Temple": "神庙", + "temple": "神庙", + "temples": "神庙", + "%1 temple": [ + "%1 个神庙", + "%1 个神庙" + ], + "[Temple quote]Full of precious, ancient chocolate.": "装满了珍贵的古代巧克力。", + "[Temple business name]Like": "点赞", + "[Temple business quote]Your social media page is going viral! Amassing likes is the key to a lasting online presence and juicy advertising deals.": "你的社交媒体页面正在迅速扩散!积累点赞数是确保持久网络曝光和丰厚广告收入的关键。", + "Wizard tower": "巫师塔", + "wizard tower": "巫师塔", + "wizard towers": "巫师塔", + "%1 wizard tower": [ + "%1 个巫师塔", + "%1 个巫师塔" + ], + "[Wizard tower quote]Summons cookies with magic spells.": "使用法术召唤饼干。", + "[Wizard tower business name]Meme": "迷因", + "[Wizard tower business quote]Cookie memes are all the rage! With just the right amount of social media astroturfing, your brand image will be all over the cyberspace.": "饼干迷因非常流行!只需借助适量的社交媒体水军,你的品牌形象就可以在网络世界迅速传开。", + "Shipment": "装运飞船", + "shipment": "装运飞船", + "shipments": "装运飞船", + "%1 shipment": [ + "%1 艘装运飞船", + "%1 艘装运飞船" + ], + "[Shipment quote]Brings in fresh cookies from the cookie planet.": "从饼干行星运来新鲜的饼干。", + "[Shipment business name]Supermarket": "超市", + "[Shipment business quote]A gigantic cookie emporium - your very own retail chain.": "巨型饼干购物中心——你自己的连锁店。", + "Alchemy lab": "炼金术实验室", + "alchemy lab": "炼金术实验室", + "alchemy labs": "炼金术实验室", + "%1 alchemy lab": [ + "%1 个炼金术实验室", + "%1 个炼金术实验室" + ], + "[Alchemy lab quote]Turns gold into cookies!": "将黄金转化成饼干!", + "[Alchemy lab business name]Stock share": "股票", + "[Alchemy lab business quote]You're officially on the stock market, and everyone wants a piece!": "你正式踏足股市,人人都想从中分一杯羹!", + "Portal": "传送门", + "portal": "传送门", + "portals": "传送门", + "%1 portal": [ + "%1 个传送门", + "%1 个传送门" + ], + "[Portal quote]Opens a door to the Cookieverse.": "打开一扇通往饼干世界的门。", + "[Portal business name]TV show": "电视节目", + "[Portal business quote]Your cookies have their own sitcom! Hilarious baking hijinks set to the cheesiest laughtrack.": "你的饼干有了自己的情景喜剧!令人捧腹的烘焙喧闹行为配上最刻意的连连笑声。", + "Time machine": "时光机", + "time machine": "时光机", + "time machines": "时光机", + "%1 time machine": [ + "%1 个时光机", + "%1 个时光机" + ], + "[Time machine quote]Brings cookies from the past, before they were even eaten.": "从过去带回还没被吃过的饼干。", + "[Time machine business name]Theme park": "主题公园", + "[Time machine business quote]Cookie theme parks, full of mascots and roller-coasters. Build one, build a hundred!": "饼干主题公园,里面全是吉祥物和过山车。先建它 1 座,再建它个 100 座!", + "Antimatter condenser": "反物质聚光镜", + "antimatter condenser": "反物质聚光镜", + "antimatter condensers": "反物质聚光镜", + "%1 antimatter condenser": [ + "%1 台反物质聚光镜", + "%1 台反物质聚光镜" + ], + "[Antimatter condenser quote]Condenses the antimatter in the universe into cookies.": "将宇宙中的反物质凝聚成饼干。", + "[Antimatter condenser business name]Cookiecoin": "饼干币", + "[Antimatter condenser business quote]A virtual currency, already replacing regular money in some small countries.": "一种虚拟货币,在一些小国,正取代普通货币。", + "Prism": "棱镜", + "prism": "棱镜", + "prisms": "棱镜", + "%1 prism": [ + "%1 个棱镜", + "%1 个棱镜" + ], + "[Prism quote]Converts light itself into cookies.": "将光转化成饼干。", + "[Prism business name]Corporate country": "商业帝国", + "[Prism business quote]You've made it to the top, and you can now buy entire nations to further your corporate greed. Godspeed.": "你坐到了行业顶端,你可以买下整个国家来进一步满足企业的贪欲。祝你成功。", + "Chancemaker": "机会制造器", + "chancemaker": "机会制造器", + "chancemakers": "机会制造器", + "%1 chancemaker": [ + "%1 个机会制造器", + "%1 个机会制造器" + ], + "[Chancemaker quote]Generates cookies out of thin air through sheer luck.": "通过侥幸凭空产出饼干。", + "[Chancemaker business name]Privatized planet": "私人星球", + "[Chancemaker business quote]Actually, you know what's cool? A whole planet dedicated to producing, advertising, selling, and consuming your cookies.": "你知道什么才是最酷的?莫过于整颗星球就专门用来给你生产、打广告、销售和消费你的饼干。", + "Fractal engine": "分形引擎", + "fractal engine": "分形引擎", + "fractal engines": "分形引擎", + "%1 fractal engine": [ + "%1 个分形引擎", + "%1 个分形引擎" + ], + "[Fractal engine quote]Turns cookies into even more cookies.": "将饼干变成更多的饼干。", + "[Fractal engine business name]Senate seat": "参议院席位", + "[Fractal engine business quote]Only through political dominion can you truly alter this world to create a brighter, more cookie-friendly future.": "只有通过政治支配,你才能真正地改变这个世界,创造出更亲和饼干的光明未来。", + "Javascript console": "Javascript 控制台", + "javascript console": "Javascript 控制台", + "javascript consoles": "Javascript 控制台", + "%1 javascript console": [ + "%1 个 Javascript 控制台", + "%1 个 Javascript 控制台" + ], + "[Javascript console quote]Creates cookies from the very code this game was written in.": "通过写入游戏中的代码来生产饼干。", + "[Javascript console business name]Doctrine": "信条", + "[Javascript console business quote]Taking many forms -religion, culture, philosophy- a doctrine may, when handled properly, cause a lasting impact on civilizations, reshaping minds and people and ensuring all future generations share a singular goal - the production, and acquisition, of more cookies.": "信条可以有许多形式——宗教、文化、哲学,只要处理得当,就可以对文明产生深远影响,重塑精神和民众,确保子孙后代朝着同一个目标努力——生产和获取更多版。", + "Idleverse": "空闲宇宙", + "idleverse": "空闲宇宙", + "idleverses": "空闲宇宙", + "%1 idleverse": [ + "%1 个空闲宇宙", + "%1 个空闲宇宙" + ], + "[Idleverse quote]There's been countless other idle universes running alongside our own. You've finally found a way to hijack their production and convert whatever they've been making into cookies!": "我们周围有不计其数的空闲宇宙。你最终找到办法操纵它们的生产,将它们正在生产的物品转化成饼干!", + "[Idleverse business name]Lateral expansions": "横向扩张", + "[Idleverse business quote]Sometimes the best way to keep going up is sideways. Diversify your ventures through non-cookie investments.": "有时最好的上升方式就是横向发展。通过非饼干投资来实现产业多元化。", + "Cortex baker": "腦皮層麵包師", + "cortex baker": "腦皮層麵包師", + "cortex bakers": "腦皮層麵包師", + "%1 cortex baker": [ + "%1 腦皮層麵包師", + "%1 腦皮層麵包師" + ], + "[Cortex baker quote]These artificial brains the size of planets are capable of simply dreaming up cookies into existence. Time and space are inconsequential. Reality is arbitrary.": "這些行星大小的人造大腦能夠簡單地將餅乾的夢想變成現實。時間和空間無關緊要。現實可以任意。", + "[Cortex baker business name]Think tank": "智囊團", + "[Cortex baker business quote]There's only so many ways you can bring in more profit. Or is there? Hire the most brilliant experts in the known universe and let them scrape their brains for you!": "只有這麼多方法可以帶來更多的利潤。甚至有嗎?聘請已知宇宙中最傑出的專家,讓他們為你絞盡腦汁!", + "CpS": "/", + "cookies/click": "饼干/点击", + "%1 CpS": "/", + "golden cookie gains": "黄金饼干收益", + "golden cookie frequency": "黄金饼干频率", + "golden cookie duration": "黄金饼干持续时间", + "golden cookie effect duration": "黄金饼干效果持续时间", + "wrath cookie gains": "愤怒饼干收益", + "wrath cookie frequency": "愤怒饼干频率", + "wrath cookie duration": "愤怒饼干持续时间", + "wrath cookie effect duration": "愤怒饼干效果持续时间", + "reindeer gains": "驯鹿收益", + "reindeer frequency": "驯鹿频率", + "reindeer duration": "驯鹿持续时间", + "random drops": "随机掉落", + "milk effects": "牛奶效果", + "wrinkler spawn rate": "饼干虫产卵率", + "wrinkler appetite": "饼干虫食欲", + "upgrade costs": "升级成本", + "building costs": "建筑成本", + "Clicking is %1% more powerful.": "点击效果增强 %1%。", + "All cookie production multiplied by %1.": "饼干总产量乘以 %1。", + "+%1 CpS": "/", + "+%1% base CpS.": "+%1%基本CpS", + "%1 are twice as efficient.": "%1 的生产率翻倍。", + "%1 are %2% more powerful.": "%1 增强 %2%。", + "Unshackled! +%1% extra production.": "無拘無束! +%1% 額外產量。", + "Tiered upgrades for %1 provide an extra +%2% production.
Only works with unshackled upgrade tiers.": "%1 的分層升級提供了額外的 +%2% 生產。
僅適用於不受約束的升級層。", + "Unshackles all %1-tier upgrades, making them more powerful.
Only applies to unshackled buildings.": "解除所有%1 層升級的限制,使其更強大。
僅適用於解除限制的建築物。", + "The mouse and cursors are twice as efficient.": "鼠标点击和指针的生产率翻倍。", + "The mouse and cursors gain +%1 cookies for each non-cursor building owned.": "每拥有一个非指针建筑,鼠标点击和指针生产的饼干+%1。", + "Grandmas gain +%1% CpS for each non-grandma building.": "每拥有一个非老太婆建筑,老太婆生产的饼干 +%1。", + "You gain more CpS the more milk you have.": "拥有的牛奶越多,你获得的 CpS 越高。", + "Milk is %1% more powerful.": "牛奶效果增强 %1%。", + "Cookie production multiplier +%1%.": "饼干产量倍率 +%1%。", + "Cookie production multiplier +%1% permanently.": "饼干产量倍率永久 +%1%。", + "Cookie production multiplier +%1% per Santa's levels.": "每有一个圣诞老人等级,饼干产量倍率 +%1%。", + "Cookie production multiplier +%1% for every year Cookie Clicker has existed (currently: +%2%).": "Cookie Clicker 每运营一年,饼干产量倍率 +%1%(当前:+%2%)。", + "Cookie production multiplier +%1% for every building type level %2 or higher.": "每种建筑类型达到 %2 或更高等级,饼干产量倍率 +%1%。", + "Clicking gains +%1% of your CpS.": "点击获得 +%1% 的 CpS。", + "%1 gain +%2% CpS per %3.": "每有 %3,%1 获得 +%2% CpS。", + "Multiplies the gain from %1 by %2.": "%1 的收益乘以 %2。", + "Grandma-operated science lab and leisure club.
Grandmas are 4 times as efficient.
Regularly unlocks new upgrades.": "老太婆运营的科学实验室和休闲会所。
老太婆的生产率翻三倍
定期解锁新升级。", + "Each %1 gains +%2 base CpS per %3.": "每个 %1 按照每 %3 个获得 +%2 基础 CpS。", + "Note: the grandmothers are growing restless. Do not encourage them.": "注意:老太婆正变得焦躁不安。不要激励她们。", + "Note: proceeding any further in scientific research may have unexpected results. You have been warned.": "注意:再进行任何一项科学研究都可能会导致意外结果。你已经接到了警告。", + "Note: this is a bad idea.": "注意:这不是一个好主意。", + "Warning: purchasing this will have unexpected, and potentially undesirable results!
It's all downhill from here. You have been warned!

Purchase anyway?": "警告:购买它可能会导致不好的结果!
从这里开始都是下坡路。你已经接到了警告!

还是要购买吗?", + "Contains the wrath of the elders, at least for a while.": "里面有愤怒的老太婆,至少会存在一段时间。", + "Puts a permanent end to the elders' wrath, at the cost of %1% of your CpS.": "消耗 %1% 的 CpS,永久平息老太婆的愤怒。", + "You will get %1% of your CpS back, but the grandmatriarchs will return.": "虽然你可以拿回 %1% 的 CpS,但老太婆元老会回来。", + "Time remaining until pledge runs out:": "誓约到期时间:", + "You haven't pledged to the elders yet.": "你尚未与老太婆订立誓约。", + "You've pledged to the elders %1 times.": [ + "你与老太婆订立誓约一次。", + "你与老太婆订立誓约 %1 次。" + ], + "Research takes only 5 seconds.": "研究只需 5 秒。", + "Golden cookies appear twice as often and stay twice as long.": "黄金饼干出现的频率翻倍,存在时间翻倍。", + "Golden cookies appear %1% more often.": "黄金饼干出现的频率增加 %1%。", + "Golden cookies appear %1% more often during %2.": "黄金饼干在 %2 期间的出现频率增加 %1%。", + "Golden cookies appear really often.": "黄金饼干频繁出现。", + "Golden cookie effects last twice as long.": "黄金饼干效果的持续时间翻倍。", + "Golden cookie effects last %1% longer.": "黄金饼干效果的持续时间延长 %1%。", + "Golden cookies stay %1% longer.": "黄金饼干存在的时间延长 %1%。", + "Golden cookies give %1% more cookies.": "黄金饼干提供的饼干增加 %1%。", + "Wrath cookies give %1% more cookies.": "愤怒饼干提供的饼干增加 %1%。", + "+%1% CpS per golden cookie on-screen, multiplicative.": "屏幕上每有一个黄金饼干,+%1% CpS,乘算。", + "With no buffs and no golden cookies on screen, selling your most powerful building has %1% chance to summon one.": "如果屏幕上既没有增益效果,又没有黄金饼干,出售你最强力的建筑有 %1% 几率召唤一块黄金饼干。", + "Confers various powers to your minigames while active.
See the bottom of each minigame for more details.": "激活時為你的小遊戲賦予各種權力。
請參閱每個小遊戲的底部了解更多詳情。", + "Elder pledges last twice as long.": "老太婆誓约持续时间翻倍。", + "Can toggle upgrades on and off at will in the stats menu.": "可在统计菜单中开启和关闭升级。", + "You keep producing cookies even while the game is closed.": "即使关闭了游戏,你也可以继续生产饼干。", + "Unlocks %1% of the potential of your prestige level.": "解锁你潜在威望等级的 %1%。", + "Subsequent research will be %1 times as fast.": "后续研究将以 %1 倍的速度进行。", + "Wrinklers appear %1 times as fast.": "饼干虫以 %1 倍的速度出现。", + "Wrinklers spawn much more frequently.": "饼干虫更频繁地出现。", + "Wrinklers explode into %1% more cookies.": "饼干虫爆裂成的饼干增加 %1%。", + "Unlocks... something.": "解锁……某样东西。", + "In the festive hat, you find...": "在节庆帽子中,你找到……", + "a festive test tube
and %1.": "一支节庆试管
%1。", + "Cost scales with CpS.": "花费视 CpS 而定。", + "Cost scales with Santa level.": "花费视圣诞老人等级而定。", + "Cost scales with how many eggs you own.": "花费视拥有的蛋的数量而定。", + "Reindeer appear %1% more often.": "驯鹿出现的频率增加 %1%。", + "Reindeer appear twice as frequently.": "驯鹿出现的频率翻倍。", + "Reindeer are twice as slow.": "驯鹿的速度减慢两倍。", + "Reindeer give twice as much.": "驯鹿提供的物品数量翻倍。", + "Buildings sell back for %1% instead of %2%.": "建筑的回售价格是 %1%,而不是 %2%。", + "All buildings are %1% cheaper.": "所有建筑的购买花费降低 %1%。", + "All upgrades are %1% cheaper.": "所有升级的花费降低 %1%。", + "All buildings and upgrades are %1% cheaper.": "所有建筑和升级的购买花费降低 %1%。", + "%1 are %2% more efficient and %3% cheaper.": "%1 的效率提高 %2%,花费降低 %3%。", + "Cookie upgrades are %1 times cheaper.": "饼干升级的花费便宜 %1 倍。", + "Random drops are %1% more common.": "随机掉落出现的频率增加 %1%。", + "Reindeer spawn much more frequently.": "驯鹿更频繁地出现。", + "Allows you to trigger seasonal events at will, for a price.": "允许你付出一定代价随意触发节日活动。", + "Triggers %1 season for the next 24 hours.
Triggering another season will cancel this one.
Cost scales with unbuffed CpS and increases with every season switch.": "在接下来的 24 小时触发%1节日活动。
触发另一个节日会取消当前的节日。
花费视原始 CpS 而定,并且会随每个节日的切换而增加。", + "Click again to cancel season": "再次点击可取消节日。", + "Seasons now last forever.": "节日现在永久存在。", + "You haven't switched seasons this ascension yet.": "你此次飞升还未切换过节日。", + "You've switched seasons once this ascension.": "你次飞升切换过一次节日。", + "You've switched seasons %1 times this ascension.": "你次飞升切换过%1 次节日。", + "Cookie production multiplied by 1,000.": "饼干产量乘以 1000。", + "Other eggs appear %1% more frequently.": "其他蛋的出现频率增加 %1%。", + "Contains a lot of cookies.": "包含大量饼干。", + "The egg bursts into %1 cookies!": "蛋爆裂成了 %1 块饼干!", + "You found an egg!": "你找到了一个蛋!", + "Eggs drop %1% more often.": "蛋掉落的频率增加 %1%。", + "Christmas cookies drop %1% more often.": "圣诞饼干掉落的频率增加 %1%。", + "Spooky cookies drop %1% more often.": "恐怖饼干掉落的频率增加 %1%。", + "Heart cookies are %1% more powerful.": "心形饼干的效果增强 %1%。", + "You continually gain more CpS the longer you've played in the current ascension.": "你在当前飞升中游玩的时间越长,获得的 CpS 越多。", + "Contains an assortment of fancy biscuits.": "包含一种精致的饼干。", + "Contains an assortment of macarons.": "包含一种通心粉。", + "Contains an assortment of popular biscuits.": "包含一种精致的马卡龙。", + "Contains an assortment of rich butter cookies.": "包含一种使用大量黄油的饼干。", + "Contains an assortment of delicious pastries.": "包含一种可口的点心。", + "Contains an assortment of...something.": "包含一种……。", + "Placing an upgrade in this slot will make its effects permanent across all playthroughs.": "将一项升级放入此栏位中可使其效果永久存在。", + "Current boost:": "当前强化:", + "Current:": "当前:", + "Click to activate.": "点击以激活。", + "Pick an upgrade to make permanent": "选择一项要永久化的升级", + "Here are all the upgrades you've purchased last playthrough.
Pick one to permanently gain its effects!
You can reassign this slot anytime you ascend.": "这些是你在上次运行时购买的升级。
选择一项,使其效果永久存在!
你可在飞升时重新分配此栏位。", + "You now keep making cookies while the game is closed, at the rate of %1% of your regular CpS and up to 1 hour after the game is closed.
(Beyond 1 hour, this is reduced by a further %2% - your rate goes down to %3% of your CpS.)": "你现在可在游戏关闭后以正常 CpS 的 %1% 继续生产饼干,最多持续 1 小时
(超过 1 小时后,将进一步减少 %2%——为正常 CpS 的 %3%)。", + "You gain another +%1% of your regular CpS while the game is closed.": "游戏关闭时,你又获得正常 CpS 的 +%1%。", + "You gain another +%1% of your regular CpS while the game is closed, for a total of %2%.": "游戏关闭时,你又获得正常CpS的+%1%,总计%2%。", + "You start with %1.": "你从 %1 开始。", + "Allows you to purchase a crumbly egg once you have earned 1 million cookies.": "允许你在获得 100 万块饼干后购买一个易碎的蛋。", + "Unlocks the cookie dragon egg.": "解锁饼干龙蛋。", + "Synergy upgrades are %1% cheaper.": "协同效应升级的花费降低 %1%。", + "You retain optimal cookie production while the game is closed for %1 more days.": "你在游戏关闭后可继续保持最优饼干产量,持续时间延长%1 天。", + "You retain optimal cookie production while the game is closed for twice as long, for a total of %1.": "你在游戏关闭后可继续保持最优饼干产量,持续时间翻倍,总计 %1。", + "Unlocks the golden switch, which passively boosts your CpS by %1% but disables golden cookies.": "解锁黄金开关,被动使你的 CpS 提升 %1%,但会禁用黄金饼干。", + "Turning this on will give you a passive +%1% CpS, but prevents golden cookies from spawning.
Cost is equal to 1 hour of production.": "开启它可使你被动获得 +%1% CpS,但会阻止生成黄金饼干。
花费相当于 1 小时的饼干产量。", + "The switch is currently giving you a passive +%1% CpS; it also prevents golden cookies from spawning.
Turning it off will revert those effects.
Cost is equal to 1 hour of production.": "开启它现在使你被动获得 +%1% CpS;它还会阻止生成黄金饼干。
关闭它可恢复那些效果。
花费相当于 1 小时的饼干产量。", + "Unlocks the milk selector, letting you pick which milk is displayed under your cookie.
Comes with a variety of basic flavors.": "解锁牛奶选择器,允许你选择在饼干下面显示的牛奶。
附带各种基础口味。", + "Contains more exotic flavors for your milk selector.": "包含牛奶选择器特有的异国口味。", + "Lets you pick what flavor of milk to display.": "允许你选择显示的牛奶口味。", + "Unlocks the golden cookie sound selector, which lets you pick whether golden cookies emit a sound when appearing or not.": "解锁黄金饼干声音选择器,允许你选择黄金饼干出现时发出的声音或选择不发出声音。", + "Lets you change the sound golden cookies make when they spawn.": "允许你更改黄金饼干出现时发出的声音。", + "No sound": "无声音", + "Chime": "铃声", + "Fortune": "財富", + "Cymbal": "鈸", + "Squeak": "吱吱", + "Unlocks the jukebox, which allows you to play through every sound file in the game.": "解鎖點唱機,讓你可以播放遊戲中的每個聲音文件。", + "Play through the game's sound files!": "播放遊戲的聲音文件!", + "Play": "播放", + "Stop": "停止", + "Pause": "暫停", + "Shuffle": "隨機播放", + "Auto": "自動播放", + "Loop": "循環播放", + "Unlocks the background selector, letting you select the game's background.
Comes with a variety of basic flavors.": "解锁背景选择器,允许你选择游戏的背景。
附带各种基础口味。", + "Lets you pick which wallpaper to display.": "允许你选择想要显示的壁纸。", + "This is the first heavenly upgrade; it unlocks the Heavenly chips system.
Each time you ascend, the cookies you made in your past life are turned into heavenly chips and prestige.
Heavenly chips can be spent on a variety of permanent transcendental upgrades.
Your prestige level also gives you a permanent +1% CpS per level.": "这是第一次天堂升级;它将解锁天堂碎片系统。
每次飞升,你此前生成的饼干会被转换成天堂碎片威望
天堂碎片可用于购买各种永久超越升级。
你的威望等级每级可使你永久获得 +1% CpS。", + "You can attract %1 more wrinklers.": "你可以额外引来 %1 条饼干虫。", + "While the golden switch is on, you gain an additional +%1% CpS per golden cookie upgrade owned.": "黄金转换开启时,你每拥有一块黄金饼干就可以额外使 CpS +%1%。", + "All upgrades are %1% cheaper per %2.": "所有升级的花费每 %2 便宜 %1%。", + "Unlocks a new tier of upgrades that affect 2 buildings at the same time.
Synergies appear once you have %1 of both buildings.": "解锁同时影响 2 种建筑的新阶层升级。
当你两种建筑都有 %1 个时,协同效应会出现。", + "Golden cookies (and all other things that spawn, such as reindeer) have %1% chance of being doubled.": "黄金饼干(和生成的所有其他东西,如:驯鹿)有 %1% 的几率翻倍。", + "Cookie production reduced to 0.": "饼干产量减少到 0。", + "Sugar lumps coalesce a whole lot faster.": "糖块生长大幅加快。", + "+%1% prestige level effect on CpS.": "威望等级对 CpS 的影响 +%1%。", + "+%1% prestige level effect on CpS.
+%2% golden cookie effect duration.
+%3% golden cookie lifespan.": "威望等级对 CpS 的影响 +%1%
黄金饼干效果持续时间 +%2%
黄金饼干存在时间 +%3%。", + "Each unspent sugar lump (up to %1) gives +%2% CpS.
Note: this means that spending sugar lumps will decrease your CpS until they grow back.
": "每一个未消耗的糖块(最多 %1 个)都可以使CpS +%2%
注意:这意味着消耗糖块会使你的 CpS 在下降,直到糖块的数量恢复到之前的水平。
", + "Once an ascension, you may use the \"Sugar frenzy\" switch to triple your CpS for 1 hour, at the cost of 1 sugar lump.": "飞升后,你可以消耗 1 个糖块激活“糖块狂热”开关,使你的 CpS 增至三倍,持续1小时。", + "Each grandma (up to %1) makes sugar lumps ripen %2 sooner.": "每个老太婆(最多 %1 个)可使糖块成熟速度加快 %2。", + "Activating this will triple your CpS for 1 hour, at the cost of 1 sugar lump.": "消耗 1 个糖块激活它,可以使你的 CpS 增至三倍,持续 1 小时。", + "May only be used once per ascension.": "每次飞升只能使用一次。", + "activate the sugar frenzy": "激活糖块狂热", + "Sugar frenzy!": "糖块狂热!", + "CpS x%1 for 1 hour!": "CpS x %1,持续 1小 时!", + "Garden plants grow every second.
Garden seeds are free to plant.
You can switch soils at any time.": "花园植物每秒都在生长。
你可以免费播种花园种子。
你可以随时转换土壤。", + "Dropped by %1.": "由 %1 掉落。", + "Dropped by %1 plants.": "由 %1 个植物掉落。", + "Must own the %1 upgrade.": "必须拥有 %1 升级。", + "Sugar lumps are twice as likely to be unusual.": "糖块发生变异的几率翻倍。", + "+%1% sugar lump growth.": "糖块生长速度 +%1%。", + "Sugar lumps ripen %1 sooner.": "糖块成熟速度加快 %1。", + "Sugar lumps mature %1 sooner.": "糖块长成速度加快 %1。", + "Bifurcated sugar lumps appear %1% more often and are %2% more likely to drop 2 lumps.": "分叉糖块的出现几率增加 %1% ,收获 2 个糖块的几率增加 %2%。", + "Mouse over a wrinkler to see how many cookies are in its stomach.": "鼠标悬停在饼干虫上可查看它的胃里有多少饼干。", + "Unlocks the Buy all feature, which lets you instantly purchase every upgrade in your store (starting from the cheapest one).
Also unlocks the Vault, a store section where you can place upgrades you do not wish to auto-buy.": "解锁全部购买功能,允许你立即购买商店中的所有升级项(从最便宜的开始)。
还解锁保险库,它是商店的一部分,你可以在不希望自动购买的升级项放入其中。", + "Mouse over an upgrade to see its tier.
Note: only some upgrades have tiers. Tiers are purely cosmetic and have no effect on gameplay.": "鼠标悬停在升级项上可查看它的阶层。
注意:只有某些升级项才分阶层。阶层只有装饰作用,不会对游戏性产生任何影响。", + "You now benefit from the boost provided by heralds.
Each herald gives you +1% CpS.
Look on the purple flag at the top to see how many heralds are active at any given time.": "你现在可以中使者提供的强化中获益。
每个使者可以使 CpS +1%
你可随时通过观察顶部的紫色旗子来获知当前处于活动状态的使者的数量。", + "Seasonal random drops have a 1/5 chance to carry over through ascensions.": "节庆日随机掉落有1/5的几率延续整个飞升。", + "Unlocks extra price information.
Each displayed cost now specifies how long it'll take you to afford it, and how much of your bank it represents.": "解锁额外价格信息
显示的价格现在会注明需要多久你才能买得起,并结合你银行中的饼干数量来显示。", + "Unlocks the shimmering veil, a switch that passively boosts your CpS by %1%.
You start with the veil turned on; however, it is very fragile, and clicking the big cookie or any golden cookie or reindeer will turn it off, requiring %2 of CpS to turn back on.": "解锁闪光面纱,这个开关可被动使你的 CpS 提高 %1%
面纱开关默认为闭合状态;不过,它非常脆弱,点击大饼干、黄金饼干或驯鹿会将使它断开,需要消耗 %2 的 CpS 才能使它重新闭合。", + "Boosts your cookie production by %1% when active.
The veil is very fragile and will break if you click the big cookie or any golden cookies or reindeer.

Once broken, turning the veil back on costs %2 of unbuffed CpS.": "激活时可使你的饼干产量提高%1%
面纱开关非常脆弱,如果你点击大饼干、黄金饼干或驯鹿,它会断开。

一旦断开,你需要消耗 %2 的原始 CpS 才能使它重新闭合。", + "Has a %1% chance to not break.": "有 %1% 的几率不会断开。", + "The shimmering veil is more resistant, and has a %1% chance not to break. It also gives +%2% more CpS.": "闪光面纱开关更耐用,有 %1% 的几率不会断开。它还可以使 CpS +%2%。", + "Active.": "已激活。", + "The reinforced membrane protects the shimmering veil.": "加固薄膜可以保护闪光面纱。", + "The shimmering veil disappears...": "闪光面纱消失……", + "Prior to purchasing the %1 upgrade in a run, random drops are %2 times more common.": "在购买%1升级前,随机掉落的几率提高 %2 倍。", + "Never forget your %1.": "千万别忘了你的%1。", + "Pay close attention to the humble %1.": "密切注意低调的%1。", + "You've been neglecting your %1.": "你一直在忽视你的%1。", + "Remember to visit your %1 sometimes.": "别忘了偶尔去看看你的%1。", + "You don't know what you have until you've lost it.": "有些东西直到失去了才知道要关注。", + "Remember to take breaks.": "记住要休息。", + "Hey, what's up. I'm a fortune cookie.": "嘿,怎么了。我是幸运饼干。", + "You think you have it bad? Look at me.": "你觉得自己过得很糟吗?看看我。", + "The news ticker may occasionally have fortunes, which may be clicked for something good.": "滚动新闻有时会有幸运饼干,点击它可以得到好东西。", + "Through clever accounting, this actually makes kitten upgrades %1% cheaper.": "借助高明的会计手段,这可以使小猫升级便宜 %1%。", + "Unlocks the ability to pet your dragon by clicking on it once hatched.": "解锁此技能可在龙蛋孵化龙后点击龙来抚摸它。", + "Cost scales with CpS, but %1 times cheaper with a fully-trained dragon.": "花费视 CpS 而定,如果有经过充分训练的龙,可以便宜%1。", + "Golden cookies may trigger a Dragon Harvest.": "黄金饼干可以触发一次飞龙收获。", + "Golden cookies may trigger a Dragonflight.": "黄金饼干可以触发一次飞龙在天。", + "Dragon harvest and Dragonflight are %1% stronger.": "飞龙收获和飞龙在天的效果增强%1%。", + "Kittens are %1% more effective.": "小猫的效果增强 %1%。", + "Each kitten upgrade boosts %1 CpS by %2%.": "每一项小猫升级可以使%1 CpS 提高 %2%。", + "Each rank of milk boosts %1 CpS by %2%.": "每一牛奶等级可以使%1 CpS 提高 %2%。", + "Cursor levels boost clicks by %1% each (up to cursor level %2).": "每级指针等级可以使点击增强 %1%(最高达到 %2 级指针)。", + "%1 are now effective up to cursor level %2.": "%1的强化效果现在最高达到 %2 级指针。", + "Seasonal cookies purchased: %1.": "已购买节庆饼干:%1。", + "Reindeer cookies purchased: %1.": "已购买驯鹿饼干:%1。", + "Eggs purchased: %1.": "已购买蛋:%1。", + "Golden and wrath cookie effect duration +%1%.": "黄金和愤怒饼干效果持续时间+%1%。", + "Golden and wrath cookies appear %1% more.": "黄金和愤怒饼干多出现增加1%。", + "Golden and wrath cookies appear %1% less.": "黄金和愤怒饼干多出现减少1%。", + "Buildings grant -%1% CpS.": "建筑补助-%1%CpS。", + "Selling buildings triggers a buff boosted by how many buildings were sold.": "出售建筑会触发一个增益状态,效果由售出建筑数量决定。", + "Buff boosts clicks by +%1% for every building sold for %2 seconds.": "增益状态在%2秒内每卖出一座建筑,就增加%1%的点击量。", + "CpS bonus fluctuating between %1 and %2 over time.": "CpS奖励随时间在%1和%2之间波动。", + "Effect cycles over %1 hours.": "效果周期超过%1小时。", + "Some seasonal effects are boosted.": "一些季节性效应得到增强。", + "Large boost.": "大幅提升。", + "Medium boost.": "中等提升。", + "Small boost.": "小幅提升。", + "Switching seasons is %1% pricier.": "换季价格上涨了%1%。", + "Switching seasons is %1% cheaper.": "换季便宜了%1%。", + "Heavenly chips have %1% less effect.": "天堂碎片的效果降低%1%。", + "Buildings produce %1% more.": "建筑产量增加了%1%。", + "Buildings produce %1% less.": "建筑产量减少了%1%。", + "All golden cookies are wrath cookies with a greater chance of a negative effect.": "所有的黄金饼干都是愤怒饼干,产生负面影响的可能性更大。", + "Wrinklers appear %1% faster and digest %2% more cookies.": "饼干虫出现速度加快了%1%,消化饼干的数量增加了%2%。", + "Effect is only active when your total amount of buildings ends with 0.": "只有当你的建筑总量以0结尾时,效果才会激活。", + "Achievement unlocked": "已解锁成就", + "Make %1 just from %2.": "通过%2制作%1+ 块饼干。", + "Bake %1 in one ascension.": "一次飞升烘焙%1 块饼干。", + "Bake %1 per second.": "每秒烘焙%1 块饼干。", + "Have %1.": "拥有 %1 块饼干。", + "Ascend at least once.": "飞升至少一次。", + "Ascend %1 times.": "飞升 %1 次。", + "Ascend with %1 baked.": "飞升时烘焙了 %1 块饼干。", + "Make %1 by only having clicked %2 times.": "只点击 %2 次制作 %1块饼干。", + "Make %1 with no cookie clicks.": "制作 %1 块饼干,且点击过饼干。", + "Get to %1 baked with no upgrades purchased.": "烘焙 %1 块饼干,且未购买过任何升级。", + "Get to %1 baked in %2.": "%2 内烘焙 %1 块饼干。", + "Make %1 from clicking.": "通过点击制作 %1 块饼干。", + "Sell a grandma.": "出售一个老太婆。", + "Have at least %1 of every building.": "每种建筑至少拥有 %1 个。", + "Have at least 1 of the most expensive object, 2 of the second-most expensive, 4 of the next and so on (capped at %1).": "拥有至少 1 个最贵的建筑,2 个第二贵的,4 个第三贵的,以此类推(%1 个封顶)。", + "Have at least 10 of the most expensive object, 20 of the second-most expensive, 30 of the next and so on.": "拥有至少 10 个最贵的建筑,20 个第二贵的,30 个第三贵的,以此类推。", + "Click a golden cookie.": "点击一块黄金饼干。", + "Click %1.": "点击%1。", + "Hack in some cookies.": "非法获得一些饼干。", + "Click really, really fast.": "点的真快。", + "Have at least %1 of everything.": "每种建筑至少拥有 %1 个。", + "Own %1.": "拥有%1。", + "Purchase %1.": "购买%1。", + "Dunk the cookie.": "把饼干泡一泡。", + "Appease the grandmatriarchs at least once.": "至少安抚一次老太婆元老。", + "Appease the grandmatriarchs at least %1 times.": "至少安抚 %1 次老太婆元老。", + "Declare a covenant with the grandmatriarchs.": "与老太婆元老立定盟约。", + "Own at least %1 grandma types.": "至少拥有 %1 种老太婆。", + "Unlock 100% of your heavenly chips power.": "解锁天堂碎片 100% 的力量。", + "You have 1 chance in %1 every second of earning this achievement.": "你每秒有 1/%1 的几率获得此成就。", + "Burst 1 wrinkler.": "炸死 1 条饼干虫。", + "Burst %1 wrinklers.": "炸死 %1 条饼干虫。", + "Unlock every Halloween-themed cookie.
Owning this achievement makes Halloween-themed cookies drop more frequently in future playthroughs.": "解锁每种万圣节主题饼干
拥有此成就可使万圣节主题饼干在今后的游戏中掉落得更频繁。", + "Reach Santa's 7th form.": "达到圣诞老人的第7种形态。", + "Reach Santa's final form.": "达到圣诞老人的最终形态。", + "Unlock every Christmas-themed cookie.
Owning this achievement makes Christmas-themed cookies drop more frequently in future playthroughs.": "解锁每种圣诞节主题饼干
拥有此成就可使圣诞节主题饼干在今后的游戏中掉落得更频繁。", + "Pop 1 reindeer.": "击破 1 头驯鹿。", + "Pop %1 reindeer.": "击破 %1 头驯鹿。", + "Pop a reindeer during an elder frenzy.": "在老太婆狂热期间击破一头驯鹿。", + "Unlock every Valentine-themed cookie.": "解锁每种情人节主题饼干。", + "Click the tiny cookie.": "点击迷你饼干。", + "This is for baking %1 and making it on the local news.": "谨此纪念烘焙 %1 块饼干,并登上本地新闻。", + "Name yourself Orteil.
Note: usurpers incur a -%1% CpS penalty until they rename themselves something else.
": "给自己取名 Orteil
注意:Orteil 是游戏作者的名字,假冒者将受到 -%1% CpS 的惩罚,直到他们改名为止。
", + "Use an add-on.": "使用插件。", + "Unlock 1 egg.": "解锁 1 个蛋。", + "Unlock %1 eggs.": "解锁 %1 个蛋。", + "Unlock all the eggs.
Owning this achievement makes eggs drop more frequently in future playthroughs.": "解锁所有蛋
拥有此成就可使蛋在今后的游戏中掉落得更频繁。", + "Give your bakery a name.": "给你的烘焙坊取个名字。", + "Click this achievement's slot.": "点击成就栏位。", + "Complete your dragon's training.": "完成龙的训练。", + "Click on the news ticker %1 times.": "点击滚动新闻%1次。", + "Own a combined %1 %2 and %3.": "同时拥有%1个%2和%3。", + "Own %1 upgrades and %2 buildings.": "拥有 %1 项升级和 %2 个建筑。", + "Own %1 heavenly upgrades.": "擁有 %1 天堂般的升級。", + "Burst the near-extinct shiny wrinkler.": "炸死几近灭绝的闪光饼干虫。", + "Click a golden cookie less than 1 second after it spawns.": "在黄金饼干出现后 1 秒内点击它。", + "Click a golden cookie less than 1 second before it dies.": "在黄金饼干消失前 1 秒内点击它。", + "Harvest %1 coalescing sugar lumps.": "收获 %1 个正在生长的糖块。", + "Successfully harvest a coalescing sugar lump before it's ripe.": "成功收获一块正在生长、尚未成熟的糖块。", + "Harvest a bifurcated sugar lump.": "收获 %1 个分叉糖块。", + "Harvest a golden sugar lump.": "收获 %1 个黄金糖块。", + "Harvest a meaty sugar lump.": "收获 %1 个肥硕糖块。", + "Harvest a caramelized sugar lump.": "收获 %1 个焦糖化糖块。", + "Reach level %1 %2.": "达到等级 %1 %2。", + "Cast %1 spells.": "施放 %1 个法术。", + "Have %1 golden cookies simultaneously.": "同时拥有 %1 块黄金饼干。", + "Manage a cookie legacy for at least a year.": "至少一年后再开始饼干转生。", + "Harvest %1 mature garden plants.": "收获 %1 个长成的花园植物。", + "Fill every tile of the biggest garden plot with plants.": "让每一块园地都种满植物。", + "Unlock every garden seed.": "解锁每一种花园种子。", + "Convert a complete seed log into sugar lumps by sacrificing your garden to the sugar hornets.
Owning this achievement makes seeds %1% cheaper, plants mature %2% sooner, and plant upgrades drop %3% more.": "通过把你的花园献祭给嗜糖大黄蜂,可将完整的种子木段转换成糖块。
拥有此成就可使种子便宜 %1%,植物长成加快 %2%,植物升级掉率增加 %3%。", + "Ascend with exactly %1.": "刚好有 %1 块饼干时飞升。", + "Have your reinforced membrane protect the shimmering veil.": "用加固薄膜保护闪光面纱。", + "Own every fortune upgrade.
Owning this achievement makes fortunes appear twice as often; unlocked fortune upgrades also have a %1% chance to carry over after ascending.": "拥有每种幸运升级
拥有此成就可使幸运出现频率翻倍;解锁幸运升级还有 %1% 的几率延续到飞升后。", + "Make your first stock market profit.": "首次从股市获利。", + "Own at least %1 of a stock market good.": "持有一种股票至少 %1 股。", + "Own at least %1 of every stock market good.": "持有每种股票至少 %1 股。", + "Make a day of CpS ($%1) in 1 stock market sale.": "在股市中 1 次售出相当于一天 CpS($%1)的股票。", + "Spend a day of CpS ($%1) in 1 stock market purchase.": "在股市中 1 次买进相当于一天 CpS($%1)的股票。", + "Have your stock market profits surpass a whole year of CpS ($%1).": "股市获利超过一整年的 CpS($%1)。", + "Unlock the highest-tier stock market headquarters.": "解锁最高阶股市总部。", + "Have your stock market profits surpass $%1.": "股市获利超过 $%1。", + "Own %1 kitten upgrades.": "拥有 %1 项小猫升级。", + "Find the forgotten madeleine.": "找到被疑忘的奶油茶糕。", + "Click one of Santa's helper grandmas during Christmas season.": "在聖誕節期間單擊聖誕老人的幫手奶奶之一。", + "Frenzy": "狂热", + "Elder frenzy": "长者狂热", + "Click frenzy": "点击狂热", + "Clot": "凝块", + "Dragon Harvest": "飞龙收获", + "Everything must go": "清仓甩卖", + "Cursed finger": "被诅咒的手指", + "Cookie storm": "饼干风暴", + "Sugar blessing": "糖块祝福", + "Haggler's luck": "小贩的好运", + "Haggler's misery": "小贩的不幸", + "Crafty pixies": "建筑小精灵", + "Nasty goblins": "讨厌的地精", + "Magic adept": "魔法擅长", + "Magic inept": "魔法无能", + "Devastation": "毁灭", + "Sugar frenzy": "糖块狂热!", + "Loan %1": "贷款 %1", + "Loan %1 (interest)": "贷款 %1(利息)", + "%1 Power!": "%1 能量!", + "%1 Burden!": "%1 负担!", + "Cookie production x%1 for %2!": "饼干产量 x %1,持续 %2!", + "Cookie production +%1% for %2!": "饼干产量 +%1%,持续 %2!", + "Cookie production %1% slower for %2!": "饼干产量减慢 %1%,持续 %2!", + "Cookie production halved for %1!": "饼干产量减半,持续 %1!", + "Your %1 are boosting your CpS!": "你的 %1 正在提升你的 CpS!", + "Your %1 are rusting your CpS!": "你的 %1 正在减缓你的 CpS!", + "All buildings are %1% cheaper for %2!": "所有建筑的购买花费降低 %1%,持续 %2!", + "All buildings are %1% pricier for %2!": "所有建筑的购买花费上涨 %1%,持续 %2!", + "All upgrades are %1% cheaper for %2!": "所有升级的购买花费降低 %1%,持续 %2!", + "All upgrades are %1% pricier for %2!": "所有升级的购买花费上涨 %1%,持续 %2!", + "Cookie production halted for %1,
but each click is worth %2 of CpS.": "饼干生产暂停,持续 %1,
但每次点击的收益相当于 CpS 的 %2。", + "Clicking power x%1 for %2!": "点击力 x%1,持续 %2!", + "Clicking power +%1% for %2!": "点击力 +%1%,持续 %2!", + "Cookies everywhere!": "饼干遍地!", + "You find %1% more golden cookies for the next %2.": "黄金饼干在接下来 %2 的出现概率提高 %1%。", + "Spells backfire %1 times less for %2.": "法术产生反效果的几率低 %1 倍,持续 %2。", + "Spells backfire %1 times more for %2.": "法术产生反效果的几率高 %1 倍,持续 %2。", + "can be done once every %1": "每%1可以完成一次", + "usable again in %1": "在%1中再次可用", + "+%1/s": "/", + "Next tick in %1.": "%1中的下一个勾号。", + "Initializing...": "正在初始化...", + "View %1": "查看%1", + "Close %1": "关闭%1", + "Details:": "详情:", + "Effects:": "效果:", + "Effect is active.": "效果处于激活状态。", + "Effect is inactive.": "效果处于非激活状态。", + "Current bonus:": "当前奖励:", + "Garden": "花园", + "Baker's wheat": "烘焙师用麦", + "[Baker's wheat quote]A plentiful crop whose hardy grain is used to make flour for pastries.": "一种高产量农作物,其耐寒的谷粒可用于生产制作面点的面粉。", + "Thumbcorn": "拇指玉米", + "[Thumbcorn quote]A strangely-shaped variant of corn. The amount of strands that can sprout from one seed is usually in the single digits.": "外形奇特的玉米变种。从种子发芽成的玉米花丝只有个位数。", + "Cronerice": "干瘪稻米", + "[Cronerice quote]Not only does this wrinkly bulb look nothing like rice, it's not even related to it either; its closest extant relative is the weeping willow.": "这种植物鳞茎上有褶皱,不仅看起来一点不像稻米,而且跟稻米也没有关系;其现存的近亲是垂柳。", + "Gildmillet": "金粟", + "[Gildmillet quote]An ancient staple crop, famed for its golden sheen. Was once used to bake birthday cakes for kings and queens of old.": "古代的一种主要农作物,因其金色的光泽而闻名。从前曾被用来给国王和王后烘焙生日蛋糕。", + "Ordinary clover": "普通三叶草", + "[Ordinary clover quote]Trifolium repens, a fairly mundane variety of clover with a tendency to produce four leaves. Such instances are considered lucky by some.": "白花三叶草,一种非常普通的三叶草,有一定几率发生变异,长出四片叶子。有人将这样的情况视为好运。", + "Golden clover": "黄金三叶草", + "[Golden clover quote]A variant of the ordinary clover that traded its chlorophyll for pure organic gold. Tragically short-lived, this herb is an evolutionary dead-end - but at least it looks pretty.": "普通三叶草的变种,用它的叶绿素换来纯有机黄金。这种植物虽然很短命,是进化的死胡同,但至少看起来很漂亮。", + "Shimmerlily": "微光百合", + "[Shimmerlily quote]These little flowers are easiest to find at dawn, as the sunlight refracting in dew drops draws attention to their pure-white petals.": "最容易在黎明时看见这些小花,这是因为阳光在露珠中折射会引起人们注意它们纯白色的花瓣。", + "Elderwort": "老人草", + "[Elderwort quote]A very old, long-forgotten subspecies of edelweiss that emits a strange, heady scent. There is some anecdotal evidence that these do not undergo molecular aging.": "这是火绒草长期被疑忘的一个古老亚种,会散发出令人陶醉的奇特芳香。轶事证据表明这种植物不会经历分子老化。", + "Bakeberry": "云莓", + "[Bakeberry quote]A favorite among cooks, this large berry has a crunchy brown exterior and a creamy red center. Excellent in pies or chicken stews.": "这种大浆果是厨师的最爱,它们有着松脆棕色外皮和光滑细腻的红色内核。非常适合用来制作馅饼或炖鸡。", + "Chocoroot": "巧克力根", + "[Chocoroot quote]A tangly bramble coated in a sticky, sweet substance. Unknown genetic ancestry. Children often pick these from fields as-is as a snack.": "一种缠结的树莓,表明覆着一层有甜味的胶状物质。该植物的遗传起源未知。孩子们经常在野外把它们摘下来当作零食。", + "White chocoroot": "白巧克力根", + "[White chocoroot quote]A pale, even sweeter variant of the chocoroot. Often impedes travelers with its twisty branches.": "巧克力根的变种,呈白色,而且更甜。它们弯弯曲曲的树枝经常挡住旅行者的去路。", + "White mildew": "白色粉菌", + "[White mildew quote]A common rot that infests shady plots of earth. Grows in little creamy capsules. Smells sweet, but sadly wilts quickly.": "一种大批滋生在地表阴凉处的常见腐菌。生长在乳脂状的小蒴果中。它们闻起来是甜的,但令人遗憾的是,会很快枯萎。", + "Brown mold": "棕色霉菌", + "[Brown mold quote]A common rot that infests shady plots of earth. Grows in odd reddish clumps. Smells bitter, but thankfully wilts quickly.": "一种大批滋生在地表阴凉处的常见腐菌。生长在奇怪的红色簇丛中。它们闻起来是苦的,但谢天谢地,会很快枯萎。", + "Meddleweed": "杂草", + "[Meddleweed quote]The sign of a neglected farmland, this annoying weed spawns from unused dirt and may sometimes spread to other plants, killing them in the process.": "这种烦人的野草标志着无人打理的牧场,从未耕种的土里长出来,有时会蔓延到其他植物,并将它们杀死。", + "Whiskerbloom": "猫须花", + "[Whiskerbloom quote]Squeezing the translucent pods makes them excrete a milky liquid, while producing a faint squeak akin to a cat's meow.": "挤压透明的荚果可使它们分泌出乳白色液体,同时发出类似猫叫声的微弱吱吱声。", + "Chimerose": "鸣响玫瑰", + "[Chimerose quote]Originating in the greener flanks of polar mountains, this beautiful flower with golden accents is fragrant enough to make any room feel a little bit more festive.": "这种漂亮的花生长在极地山区长有更多常绿植物的一侧,整体呈现出的金色,并散发着芳香,足以为任何房间平添一丝节庆氛围。", + "Nursetulip": "护士郁金香", + "[Nursetulip quote]This flower grows an intricate root network that distributes nutrients throughout the surrounding soil. The reason for this seemingly altruistic behavior is still unknown.": "这种花的根系分布极其错综复杂,能向周围的土壤提供养分,至于导致产生这样的利他主义行为的原因尚不得而知。", + "Drowsyfern": "嗜睡蕨", + "[Drowsyfern quote]Traditionally used to brew a tea that guarantees a good night of sleep.": "传统上用于沏制可保障夜晚良好睡眠的茶。", + "Wardlichen": "病房地衣", + "[Wardlichen quote]The metallic stench that emanates from this organism has been known to keep insects and slugs away.": "这种植物散发出的金属恶臭能驱走昆虫和蛞蝓。", + "Keenmoss": "敏苔", + "[Keenmoss quote]Fuzzy to the touch and of a vibrant green. In plant symbolism, keenmoss is associated with good luck for finding lost objects.": "嫩绿色,触感毛绒,被视为能找回失物的幸运象征。", + "Queenbeet": "女王甜菜根", + "[Queenbeet quote]A delicious taproot used to prepare high-grade white sugar. Entire countries once went to war over these.": "一种美味的植物主根,用来制作优质白糖。整个国家曾经因为它们而发动战争。", + "Juicy queenbeet": "多汁女王甜菜根", + "[Juicy queenbeet quote]A delicious taproot used to prepare high-grade white sugar. Entire countries once went to war over these.
It looks like this one has grown especially sweeter and juicier from growing in close proximity to other queenbeets.": "一种美味的植物主根,用来制作优质白糖。整个国家曾经因为它们而发动战争。
相比紧挨着的其他女王甜菜根,这一颗看起来长得格外甜美、多汁。", + "Duketater": "公爵土豆", + "[Duketater quote]A rare, rich-tasting tuber fit for a whole meal, as long as its strict harvesting schedule is respected. Its starch has fascinating baking properties.": "一种罕有且口感丰富的植物块茎,只要严格遵循收获计划,就能用来做一顿大餐。它的淀粉是上佳的烘焙食材。", + "Crumbspore": "碎屑孢子", + "[Crumbspore quote]An archaic mold that spreads its spores to the surrounding dirt through simple pod explosion.": "一种古老的霉菌,可通过简单的种荚爆裂将它的孢子散布到周围的泥土。", + "Doughshroom": "面团菇", + "[Doughshroom quote]Jammed full of warm spores; some forest walkers often describe the smell as similar to passing by a bakery.": "富含温热的孢子;一些森林徒步旅行者形容闻起来就像经过烘焙坊时闻到的气味。", + "Glovemorel": "手套龙葵", + "[Glovemorel quote]Touching its waxy skin reveals that the interior is hollow and uncomfortably squishy.": "摸着它质地光滑的外皮就知道里面是空的,而且有那种让人不舒服的黏糊糊的感觉。", + "Cheapcap": "廉价伞菇", + "[Cheapcap quote]Small, tough, and good in omelettes. Some historians propose that the heads of dried cheapcaps were once used as currency in some bronze age societies.": "小而硬,和煎蛋绝配。一些历史学者认为,廉价伞菇的干菇头曾在青铜器时代被当作货币使用。", + "Fool's bolete": "愚人牛肝菌", + "[Fool's bolete quote]Named for its ability to fool mushroom pickers. The fool's bolete is not actually poisonous, it's just extremely bland.": "因其能够骗到蘑菇采摘者而得名。愚人的牛肝菌并没有毒,只是非常清淡无味。", + "Wrinklegill": "褶皱菌", + "[Wrinklegill quote]This mushroom's odor resembles that of a well-done steak, and is said to whet the appetite - making one's stomach start gurgling within seconds.": "这种蘑菇的闻起来很想全熟的牛排,据说可以增进食欲——几秒钟内就能让人肚子咕咕叫。", + "Green rot": "绿色腐菌", + "[Green rot quote]This short-lived mold is also known as \"emerald pebbles\", and is considered by some as a pseudo-gem that symbolizes good fortune.": "这种短命的霉菌也叫“翡翠卵石”,被一些人视为象征好运的假宝石。", + "Shriekbulb": "尖叫球茎", + "[Shriekbulb quote]A nasty vegetable with a dreadful quirk : its flesh resonates with a high-pitched howl whenever it is hit at the right angle by sunlight, moonlight, or even a slight breeze.": "一种有着可怕习性的讨厌蔬菜。只要被阳光和月光以特定角度照到,甚至微风拂过,就会产生共振,发出高频尖叫。", + "Tidygrass": "齐草", + "[Tidygrass quote]The molecules this grass emits are a natural weedkiller. Its stems grow following a predictable pattern, making it an interesting -if expensive- choice for a lawn grass.": "这种草散发出的分子就是天然的除草剂。其茎会按照既定的方式生长,使之成为一种趣味十足,但价格不菲的草坪植物选择。", + "Everdaisy": "永生雏菊", + "[Everdaisy quote]While promoted by some as a superfood owing to its association with longevity and intriguing geometry, this elusive flower is actually mildly toxic.": "这种令人难以捉摸的花因为与长寿相关且具有吸引人的几何形状而被推崇为超级食物,但实际上具有轻微毒性。", + "Ichorpuff": "灵液马勃菌", + "[Ichorpuff quote]This puffball mushroom contains sugary spores, but it never seems to mature to bursting on its own. Surrounding plants under its influence have a very slow metabolism, reducing their effects but lengthening their lifespan.": "这种马勃蘑菇含有甜孢子,但似乎永远无法依靠自身力量成熟。在它的影响下,周围植物的新陈代谢速度都很缓慢,降低它们的功效,但却延长了它们的寿命。", + "Garden information": "花园信息", + "Your garden is frozen, providing no effects.": "花园结冰了,没有任何效果。", + "Combined effects of all your plants:": "你所有植物的综合效应:", + "None.": "没有。", + "-You can cross-breed plants by planting them close to each other; new plants will grow in the empty tiles next to them.
-Unlock new seeds by harvesting mature plants.
-When you ascend, your garden plants are reset, but you keep all the seeds you've unlocked.
-Your garden has no effect and does not grow while the game is closed.": "-你可以通过将植物种植在彼此接近的地方进行杂交繁殖;新植物将在它们旁边空的格子中生长。
-通过收获成熟植物解锁新种子。
-当提升时,花园植物将重置,但保留所有解锁的种子。
-游戏关闭时,花园没有效果,也不会生长。", + "Harvest all": "收获全部", + "Instantly harvest all plants in your garden.": "立即收获你花园里的所有植物。", + "%1 to harvest only mature, mortal plants.": "%1只收获成熟的、死亡的植物。", + "%1 to harvest all mature plants of this type.": "%1以收获此类型的所有成熟植物。", + "Freeze": "冻结", + "Cryogenically preserve your garden.
Plants no longer grow, spread or die; they provide no benefits.
Soil cannot be changed.
Using this will effectively pause your garden.": "低温保存你的花园。
植物不再生长、蔓延或死亡;它们无法提供任何好处。
土壤无法改变。
使用它将有效地暂停你的花园。", + "Garden is frozen. Unfreeze to resume.": "花园结冰了。解冻以恢复。", + "Sacrifice garden": "祭祀花园", + "A swarm of sugar hornets comes down on your garden, destroying every plant as well as every seed you've unlocked - leaving only a %1 seed.
In exchange, they will grant you %2.
This action is only available with a complete seed log.": "一群糖黄蜂来到你的花园里,摧毁了你解锁的每一棵植物和每一颗种子 - 只留下%1颗种子。
作为交换,它们将给你你%2
这个操作只有在完整的种子日志中才可用。", + "Do you REALLY want to sacrifice your garden to the sugar hornets?
You will be left with an empty plot and only the %1 seed unlocked.
In return, you will gain %2 sugar lumps.
": "你真的想把你的花园牺牲给糖黄蜂吗?
你将得到一块空地,只有%1颗种子被解锁。
作为回报,你将获得%2个糖块
。", + "Sacrifice!": "牺牲!", + "You've sacrificed your garden to the sugar hornets, destroying your crops and your knowledge of seeds.
In the remains, you find %1 sugar lumps.": "你为了糖蜂牺牲了自己的花园,毁坏了你的庄稼和你对种子的了解。
在残留物中,你发现了%1个糖块。", + "immortal": "不朽", + "predictable growth": "可预期的增长", + "surrounding plants (%1x%1) age %2% faster": "周围植物(%1x%1)老化速度加快%2%", + "surrounding plants (%1x%1) age %2% slower": "周围植物(%1x%1)老化速度减慢%2% ", + "surrounding plants (%1x%1) are %2% more efficient": "周围植物(%1x%1)效率提高%2%", + "surrounding plants (%1x%1) are %2% less efficient": "周围植物(%1x%1)效率降低%2", + "surrounding tiles (%1x%1) develop no weeds or fungus": "周围格子(%1x%1)没有出现杂草或真菌", + "harvest when mature for +%1 of CpS (max. %2% of bank)": "成熟时收获+CpS的%1(最大银行的%2%)", + "harvest when mature for a sugar lump": "成熟时收获糖块", + "useless": "无用", + "spreads easily": "容易传播", + "may spread as %1": "可能传播为%1", + "grows in empty tiles": "在空格子中生长", + "may overtake nearby plants": "可能会占据附近的植物", + "may sometimes drop spores when uprooted": "有时连根拔起时可能会掉落孢子", + "explodes into up to %1 of CpS at the end of its lifecycle (max. %2% of bank)": "在其生命周期结束时,最多会爆发成CpS的%1(最大为银行的%2%)", + "cannot handle cold climates; %1% chance to die when frozen": "无法应对寒冷气候;冻结时有%1%的几率死亡", + "the unfortunate result of some plant combinations": "某些植物组合的不幸结果", + "Soil unlocked at %1 farms.": "在%1个农场解锁土壤。", + "Your field is currently using this soil.": "你的田地目前正在使用这种土壤。", + "You will be able to change your soil again in %1.": "你可以在%1中再次更改你的土壤。", + "Click to use this type of soil for your whole field.": "点击此处可在整个场地使用此类土壤。", + "Dirt": "泥土", + "Simple, regular old dirt that you'd find in nature.": "你会在自然界中发现的普通、常见的旧泥土。", + "Fertilizer": "肥料", + "Soil with a healthy helping of fresh manure. Plants grow faster but are less efficient.": "在土壤中添加新鲜的肥料。植物生长得更快,但效率较低。", + "Clay": "黏土", + "Rich soil with very good water retention. Plants grow slower but are more efficient.": "土壤肥沃,保水性非常好。植物生长得较慢,但效率更高。", + "Pebbles": "鹅卵石", + "Dry soil made of small rocks tightly packed together. Not very conducive to plant health, but whatever falls off your crops will be easy to retrieve.
Useful if you're one of those farmers who just want to find new seeds without having to tend their garden too much.": "由小岩石紧密堆积在一起而成的干燥土壤。这对植物健康有害,但无论从你的作物上掉落什么,都很容易取回。
如果你是那种只想找到新种子而不想照料花园的农民,这非常有用。", + "Wood chips": "木屑", + "Soil made of bits and pieces of bark and sawdust. Helpful for young sprouts to develop, not so much for mature plants.": "由树皮碎片和锯末制成的土壤。有助于幼芽的发育,而对成熟植物则没有太大帮助。", + "tick every %1": "每%1点击一次", + "passive plant effects": "被动植物效应", + "weed growth": "杂草生长", + "%1% chance of collecting seeds automatically when plants expire": "%1%几率自动收集植物过期时的种子", + "plants spread and mutate %1 times more": "植物传播和变异%1倍", + "Plant effects:": "植物效果", + "Possible mutations:": "可能的突变:", + "Average lifespan:": "平均寿命:", + "Average maturation:": "平均成熟度:", + "Mature in about %1": "大约在%1内成熟", + "Decays in about %1": "大约在%1内腐烂", + "Does not decay": "不会腐烂", + "%1 tick": [ + "%1点击", + "%1点击" + ], + "Weed": "杂草", + "Fungus": "真菌", + "Planting cost:": "种植成本:", + "%1 of CpS,
minimum %2": "CpS的%1,
最小为%2", + "%1 seed": "%1种子", + "Click to select this seed for planting.": "点击以选择此种子进行种植。", + "This seed cannot be planted.": "这颗种子不能种植。", + "Empty tile": "空格子", + "This tile of soil is empty.
Pick a seed and plant something!": "该格子土是空的。< br >选一粒种子,种点东西吧!", + "Click to plant %1 for %2.": "点击为%2种植%1。", + "%1 to plant multiple.": "%1要种植多个。", + "Aging multiplier:": "老化乘数:", + "Effect multiplier:": "效果乘数:", + "Weeds/fungus repellent:": "杂草/真菌驱除剂:", + "This plant is growing here.": "该植物在此处生长。", + "Stage:": "阶段:", + "bud": "芽", + "sprout": "发芽", + "bloom": "开花", + "mature": "成熟", + "may reproduce, will drop seed when harvested": "可能繁殖,收获时会落种子。", + "Click to harvest.": "点击收获", + "Click to unearth.": "点击挖掘", + "Click to refill your soil timer and trigger 1 plant growth tick with x%1 spread and mutation rate for %2.": "点击重新填满你的土壤计时器,并为%2的传播和突变率触发1植物生长点击x%1。", + "Unlocked %1 seed.": "已解锁%1种子。", + "Seeds": "种子", + "Tools": "工具", + "Mature plants harvested: %1 (total: %2)": "收获的成熟植物:%1(总计: %2)", + "Plot size: %1
(Upgrades with farm level)": "地块大小: %1
(农场等级升级)", + "Garden plants age and mutate %1% faster.": "花園植物衰老和變異的速度加快 %1%。", + "while plant is alive; scales with plant growth": "當植物活著時;與植物的生長成正比。", + "Dungeon": "地下城", + "Grimoire": "魔法书", + "This is your magic meter. Each spell costs magic to use.
Your maximum amount of magic varies depending on your amount of Wizard towers, and their level.
Magic refills over time. The lower your magic meter, the slower it refills.": "这是你的魔法表。每个法术都需要使用魔法。
你的最大魔法量取决于你的魔法塔的数量及其等级。
魔法会随着时间的推移而重新填满。你的魔法表越低,它重新填满的速度就越慢。", + "Spells cast: %1 (total: %2)": "施法: %1(总计: %2)", + "Magic cost:": "魔法成本:", + "Chance to backfire:": "适得其反的几率:", + "Effect:": "效果:", + "Backfire:": "适得其反:", + "Backfire!": "适得其反!", + "%1 magic": "%1魔法", + "+%1% of max magic": "最大魔法的+%1%", + "Click to refill %1 units of your magic meter for %2.": "点击为%2重新加注魔法表的%1个单位。", + "Grimoire spells are %1% cheaper but fail %1% more.": "魔典法術便宜 %1%,但失敗率高 %1%。", + "Conjure Baked Goods": "召唤烘焙食品", + "Summon half an hour worth of your CpS, capped at %1% of your cookies owned.": "召唤半小时的CpS,上限为你拥有的饼干的%1%。", + "Trigger a %1-minute clot and lose %1 minutes of CpS.": "触发%1分钟血块并损失%1分钟CpS。", + "You magic %1 out of thin air.": "你凭空变魔法了%1", + "Summoning failed!": "召唤失败!", + "Force the Hand of Fate": "逼迫命运之手", + "Summon a random golden cookie. Each existing golden cookie makes this spell +%1% more likely to backfire.": "召唤一个随机的黄金饼干。每一个现有的黄金饼干都会使这个魔法适得其反的几率增加+%1%。", + "Summon an unlucky wrath cookie.": "召唤一个不吉利的愤怒饼干。", + "Promising fate!": "前途无量的命运!", + "Sinister fate!": "险恶的命运!", + "Stretch Time": "延长时间", + "All active buffs gain %1% more time (up to %2 more minutes).": "所有活跃的增益状态获得%1%的额外时间(最多增加%2分钟)。", + "All active buffs are shortened by %1% (up to %2 minutes shorter).": "所有活动的增益状态减少%1%的时间(最多缩短%2分钟)。", + "No buffs to alter!": "没有可以改变的增益状态!", + "Zap! Buffs lengthened.": "啪!增益状态变长了。", + "Fizz! Buffs shortened.": "嘶嘶!增益状态缩短了。", + "Spontaneous Edifice": "自发大厦", + "The spell picks a random building you could afford if you had twice your current cookies, and gives it to you for free. The building selected must be under %1, and cannot be your most-built one (unless it is your only one).": "如果你有两倍于现在的饼干,咒语会随机挑选一栋你能买得起的建筑,并免费送给你。所选建筑必须在%1之下,并且不能是你建造最多的建筑(除非它是你唯一的建筑)。", + "Lose a random building.": "失去一栋随机建筑。", + "No buildings to improve!": "没有要改善的建筑!", + "Backfired, but no buildings to destroy!": "事与愿违,却无建筑可毁!", + "A new %1
bursts out of the ground.": "一个新的%1
突然冒出地面。", + "One of your %1
disappears in a puff of smoke.": "你的%1
中有一个消失在一股烟雾中。", + "Haggler's Charm": "讨价还价者的魅力", + "Upgrades are %1% cheaper for 1 minute.": "1分钟升级更便宜%1%。", + "Upgrades are %1% more expensive for an hour.": "一小时升级更贵%1%。", + "Upgrades are cheaper!": "升级更便宜!", + "Upgrades are pricier!": "升级更贵!", + "Summon Crafty Pixies": "召唤狡猾的小精灵", + "Buildings are %1% cheaper for 1 minute.": "建筑1分钟便宜%1%", + "Buildings are %1% more expensive for an hour.": "建筑一小时要贵%1%", + "Buildings are cheaper!": "建筑更便宜!", + "Buildings are pricier!": "建筑更贵!", + "Gambler's Fever Dream": "赌徒狂热的梦想", + "Cast a random spell at half the magic cost, with twice the chance of backfiring.": "随机施放一个魔法,魔法费用减半,有两倍的几率适得其反。", + "No eligible spells!": "没有符合条件的咒语!", + "That's too bad!
Magic refunded.": "那太糟糕了!
魔法退还。", + "Casting %1
for %2 magic...": "为%2魔法施法%1
...", + "Resurrect Abomination": "复活可憎", + "Instantly summon a wrinkler if conditions are fulfilled.": "如果条件满足,立即召唤一条饼干虫。", + "Pop one of your wrinklers.": "迅速放置一条饼干虫。", + "Unable to spawn a wrinkler!": "无法生成饼干虫!", + "Rise, my precious!": "起来,我的宝贝!", + "But no wrinkler was harmed.": "但没有饼干虫受到伤害。", + "So long, ugly...": "再见,丑八怪……", + "Diminish Ineptitude": "减少无能", + "Spells backfire %1 times less for the next %2 minutes.": "在接下来的%2分钟内,咒语的适得其反次数减少了%1次。", + "Spells backfire %1 times more for the next %2 minutes.": "在接下来的%2分钟内,咒语还会适得其反%1次。", + "Ineptitude diminished!": "无能减少了!", + "Ineptitude magnified!": "无能被放大了!", + "Pantheon": "万神殿", + "[GOD 1 NAME]Holobore, Spirit of Asceticism": "合勒博,禁欲主义小精灵", + "[GOD 1 QUOTE]An immortal life spent focusing on the inner self, away from the distractions of material wealth.": "专注于内在自我的不朽生命,远离物质财富的干扰。", + "[GOD 2 NAME]Vomitrax, Spirit of Decadence": "福灭特克斯,颓废小精灵", + "[GOD 2 QUOTE]This sleazy spirit revels in the lust for quick easy gain and contempt for the value of steady work.": "这种堕落的小精灵陶醉于贪图快利和对稳定工作价值的蔑视。", + "[GOD 3 NAME]Godzamok, Spirit of Ruin": "哥斯马克,毁灭小精灵", + "[GOD 3 QUOTE]The embodiment of natural disasters. An impenetrable motive drives the devastation caused by this spirit.": "自然灾害的体现。一种费解的动机推动了这种小精灵所造成的破坏。", + "[GOD 4 NAME]Cyclius, Spirit of Ages": "赛力斯,时代小精灵", + "[GOD 4 QUOTE]This spirit knows about everything you'll ever do, and enjoys dispensing a harsh judgment.": "这种小精灵知道你将要做的每件事,并且喜欢做出严厉的判断。", + "[GOD 5 NAME]Selebrak, Spirit of Festivities": "塞乐巴客,节日小精灵", + "[GOD 5 QUOTE]This is the spirit of merry getaways and regretful Monday mornings.": "这就是快乐出游和懊悔星期一早晨小精灵。", + "[GOD 6 NAME]Dotjeiess, Spirit of Creation": "道杰斯,创造小精灵", + "[GOD 6 QUOTE]All things that be and ever will be were scripted long ago by this spirit's inscrutable tendrils.": "所有的事情都是很久以前由这个小精灵的不可思议的卷须编写的。", + "[GOD 7 NAME]Muridal, Spirit of Labor": "马瑞戴尔,劳动小精灵", + "[GOD 7 QUOTE]This spirit enjoys a good cheese after a day of hard work.": "经过一天的辛勤工作,这种小精灵享受着美味的奶酪。", + "[GOD 8 NAME]Jeremy, Spirit of Industry": "杰里米,工业小精灵", + "[GOD 8 QUOTE]While this spirit has many regrets, helping you rule the world through constant industrialization is not one of them.": "虽然这种小精灵有很多遗憾,但帮助你通过持续的工业化统治世界不是其中之一。", + "[GOD 9 NAME]Mokalsium, Mother Spirit": "摩卡斯姆,小精灵母亲", + "[GOD 9 QUOTE]A caring spirit said to contain itself, inwards infinitely.": "一种关怀小精灵,据说它能无限地包容自己。", + "[GOD 10 NAME]Skruuia, Spirit of Scorn": "思谷瑞,蔑视小精灵", + "[GOD 10 QUOTE]This spirit enjoys poking foul beasts and watching them squirm, but has no love for its own family.": "这种小精灵喜欢鄙视肮脏的野兽,看它们无地自容,但对自己的家庭没有爱。", + "[GOD 11 NAME]Rigidel, Spirit of Order": "瑞吉戴尔,秩序小精灵", + "[GOD 11 QUOTE]You will find that life gets just a little bit sweeter if you can motivate this spirit with tidy numbers and properly-filled tax returns.": "你会发现,如果你能以整齐的数字和恰当填写的纳税申报单来激励这种小精灵,生活会变得更加甜蜜。", + "Diamond slot": "钻石槽", + "Ruby slot": "红宝石槽", + "Jade slot": "玉槽", + "empty": "空", + "Release to assign %1 to this slot.": "释放以将%1分配给此槽。", + "Drag a spirit onto this slot to assign it.": "把一个小精灵拖到这个槽上进行分配。", + "If a golden cookie is clicked, this spirit is unslotted and all worship swaps will be used up.": "如果点击了一个黄金饼干,这个小精灵将被移出槽,所有的崇拜交换都将被用完。", + "Each time you slot a spirit, you use up one worship swap.
If you have 2 swaps left, the next one will refill after %1.
If you have 1 swap left, the next one will refill after %2.
If you have 0 swaps left, you will get one after %3.
Unslotting a spirit costs no swaps.": "每次把一个小精灵拖到槽上,你就用光了一次崇拜交换。
如果你还有2次交换,下一次交换将在%1之后重新加注。
如果你还有1次交换,下一次交换将在%2之后重新加注。
如果你还有0次交换,你将在%3之后得到一次。
将一个小精灵移出槽不需要任何交换。", + "Click to refill all your worship swaps for %1.": "点击以重新填满%1的所有崇拜交换。", + "Worship swaps: %1": "崇拜交换。%1", + "next in %1": "下一个在%1中", + "The jade slot behaves as a ruby slot and the ruby slot behaves as a diamond slot.": "玉槽相當於紅寶石槽,紅寶石槽相當於鑽石槽。", + "Stock Market": "股票市场", + "[STOCK 1 NAME]Old Mills": "老磨坊", + "[STOCK 1 TYPE]Cereals": "谷物", + "[STOCK 1 LOGO]CRL": "谷物", + "[STOCK 2 NAME]Cocoa Excavations": "可可豆挖掘", + "[STOCK 2 TYPE]Chocolate": "巧克力", + "[STOCK 2 LOGO]CHC": "巧克力", + "[STOCK 3 NAME]Bovine Industries": "牛产业", + "[STOCK 3 TYPE]Butter": "黄油", + "[STOCK 3 LOGO]BTR": "黄油", + "[STOCK 4 NAME]Candy Trust": "糖果信托", + "[STOCK 4 TYPE]Sugar": "糖", + "[STOCK 4 LOGO]SUG": "糖", + "[STOCK 5 NAME]Hazel Monastery": "黑兹尔修道院", + "[STOCK 5 TYPE]Nuts": "坚果", + "[STOCK 5 LOGO]NUT": "坚果", + "[STOCK 6 NAME]Wacky Reagants": "古怪的里根者", + "[STOCK 6 TYPE]Salt": "盐", + "[STOCK 6 LOGO]SLT": "盐", + "[STOCK 7 NAME]Cosmic Exports": "宇宙出口", + "[STOCK 7 TYPE]Vanilla": "香草", + "[STOCK 7 LOGO]VNL": "香草", + "[STOCK 8 NAME]Organic Gnostics": "有机诺斯替派", + "[STOCK 8 TYPE]Eggs": "鸡蛋", + "[STOCK 8 LOGO]EGG": "鸡蛋", + "[STOCK 9 NAME]Dimensional Exchange": "维度交换", + "[STOCK 9 TYPE]Cinnamon": "肉桂", + "[STOCK 9 LOGO]CNM": "肉桂", + "[STOCK 10 NAME]Precision Aging": "精确老龄化", + "[STOCK 10 TYPE]Cream": "奶油", + "[STOCK 10 LOGO]CRM": "奶油", + "[STOCK 11 NAME]Pectin Research": "果胶研究", + "[STOCK 11 TYPE]Jam": "果酱", + "[STOCK 11 LOGO]JAM": "果酱", + "[STOCK 12 NAME]Dazzle Corp Ltd.": "目眩有限公司。", + "[STOCK 12 TYPE]White chocolate": "白巧克力", + "[STOCK 12 LOGO]WCH": "白巧克力", + "[STOCK 13 NAME]Prosperity Hive": "繁荣蜂巢", + "[STOCK 13 TYPE]Honey": "蜂蜜", + "[STOCK 13 LOGO]HNY": "蜂蜜", + "[STOCK 14 NAME]Selfmade Bakeries": "自制面包店", + "[STOCK 14 TYPE]Cookies": "饼干", + "[STOCK 14 LOGO]CKI": "饼干", + "[STOCK 15 NAME]Figments Associated": "相关虚构事件", + "[STOCK 15 TYPE]Recipes": "食谱", + "[STOCK 15 LOGO]RCP": "食谱", + "[STOCK 16 NAME]Polyvalent Acquisitions": "多价收购", + "[STOCK 16 TYPE]Subsidiaries": "子公司", + "[STOCK 16 LOGO]SBD": "子公司", + "[STOCK 17 NAME]Great Minds": "偉大的思想", + "[STOCK 17 TYPE]Publicists": "公關人員", + "[STOCK 17 LOGO]PBL": "PBL", + "from %1": "来自%1", + "%1: currently worth $%2 per unit.": "%1:当前每单位价值$%2。", + "You currently own %1 (worth $%2).": "你当前拥有%1(价值$%2)。", + "Your warehouses can store up to %1.": "你的仓库可以储存多达%1。", + "You may increase your storage space by upgrading your offices and by buying more %1. You also get %2 extra storage space per %3 level (currently: +%4).": "你可以通过升级办公室和购买更多%1来增加存储空间。每%3级还可获得%2额外存储空间(当前: +%4)。", + "The average worth of this stock and how high it can peak depends on the building it is tied to, along with the level of your %1.": "这支股票的平均价值及其峰值取决于它所连接的建筑,以及你的%1的等级。", + "%1 the hide button to toggle all other stocks.": "%1使用隐藏按钮切换所有其他股票。", + "stock:": "股票:", + "for $%1 each": "每个$%1", + "last bought at
$%1 each": "最後以
$%1 的價格購買", + "+%1% overhead": "+%1%开销", + "value:": "价值:", + "valued at %1": "价值为%1", + "you spend:": "你花费:", + "you earn:": "你赚得:", + "You cannot buy and sell this stock in the same tick.": "你不能在同一时间买卖这只股票。", + "This is your office.": "这是你的办公室。", + "It is fully upgraded. Its lavish interiors, spanning across innumerable floors, are host to many a decadent party, owing to your nigh-unfathomable wealth.": "它已经进行全面升级,无数层奢华的内饰,举办了许多享乐派对,因为你有着近乎多不可测的财富。", + "Level %1 offices": "%1级办公室", + "Credit garage": "信贷车库", + "Tiny bank": "小银行", + "Loaning company": "贷款公司", + "Finance headquarters": "财务总部", + "International exchange": "国际交流", + "Palace of Greed": "贪婪的宫殿", + "Upgrading will cost you %1.": "升级将花费%1。", + "Upgrading requires %1.": "升级需要%1", + "Upgrading will grant you:": "升级将授予你:", + "+1 loan slot": "+1个贷款槽", + "+1 opportunity slot": "+1个机会槽", + "+%1 warehouse space for all goods": "+%1仓库空间容纳所有货物", + "+%1% base warehouse space for all goods": "+%1%的基础仓库空间容纳所有货物", + "Brokers:": "经纪人:", + "A nice broker to trade more cookies.": "交易更多饼干的好经纪人。", + "Hire": "雇佣", + "Buying goods normally incurs overhead costs of %1% extra. Each broker you hire reduces that cost by %2%.": "购买商品通常会产生%1%的额外管理成本。你雇佣的每个经纪人都会将该成本降低%2%。", + "Current overhead costs thanks to your brokers: +%1%": "目前的管理费用要感谢你们的经纪人: +%1%", + "Buying a broker costs %1 of CpS (that's $%2).": "雇佣经纪人的成本为CpS的%1(即$%2)。", + "Maximum number of brokers you can own: %1 (the highest amount of grandmas you've owned this run, divided by 10, plus your grandma level)": "你可以拥有的经纪人的最大数量: %1(你在此运行中拥有的老奶奶最高数量,除以10,再加上你的老奶奶等级)", + "Brokers are Wall Street-class grandmas versed in the ways of finance. Stockbroker grandmas work hard and play hard, and will fight telephone in hand to get your clients the best possible deals - with a sizeable profit margin for you, of course.": "经纪人是华尔街级的老奶奶,精通金融之道。股票经纪人老奶奶努力工作,尽情娱乐,拿着手中的电话努力奋斗,为了让你的客户得到尽可能最好的交易 - 当然,这会给你带来可观的利润。", + "Hiring a new broker will cost you %1.": "雇用新经纪人将花费你%1。", + "Take out %1": "扣除%1", + "Loan #%1": "贷款#%1", + "a modest loan": "适度贷款", + "Buy that vintage car you've always wanted. Just pay us back.": "买一辆你一直想要的老式汽车。只要把钱还给我们。", + "a pawnshop loan": "当铺贷款", + "Bad credit? No problem. It's your money, and you need it now.": "信用不好?没问题。这是你的钱,你现在就需要。", + "a retirement loan": "退休贷款", + "Finance your next house, boat, spouse, etc. You've earned it.": "为你的下一个房子、船、配偶等提供资金,这是你应得的。", + "By taking this loan, you will get %1 CpS for the next %2.": "通过接受此贷款,你将在下一个%2中获得%1 CpS。", + "However, you will get %1 CpS for the next %2 after that.": "但是,在此之后的下一个%2将获得%1个CpS。", + "You must also pay an immediate downpayment of %1 (%2% of your current bank).": "你还必须立即支付%1(当前银行的%2%)的首期付款。", + "Loan over": "贷款到期", + "Your loan has expired, and you must now repay the interest.": "你的贷款已到期,你现在必须偿还利息。", + "Line style": "线型", + "Color mode": "颜色模式", + "Toggle speed": "切换速度", + "Click to refill your opportunity timer (and give a quick burst to your economy) for %1.": "点击以重新填充%1的机会计时器(并快速恢复经济)。", + "Profits: %1. All prices are in $econds of your highest raw cookies per second.": "利润:%1。所有价格均以每秒最高未加工饼干的美元为单位。", + "The stock market is more chaotic.": "股市更加混亂。", + "[Upgrade name 0]Reinforced index finger": "强化食指", + "[Upgrade name 1]Carpal tunnel prevention cream": "腕管护理霜", + "[Upgrade name 2]Ambidextrous": "左右开弓", + "[Upgrade name 3]Thousand fingers": "千手指", + "[Upgrade name 4]Million fingers": "百万手指", + "[Upgrade name 5]Billion fingers": "十亿手指", + "[Upgrade name 6]Trillion fingers": "一兆手指", + "[Upgrade name 7]Forwards from grandma": "老太婆先锋", + "[Upgrade name 8]Steel-plated rolling pins": "镀钢擀面杖", + "[Upgrade name 9]Lubricated dentures": "润滑牙托", + "[Upgrade name 10]Cheap hoes": "廉价锄头", + "[Upgrade name 11]Fertilizer": "肥料", + "[Upgrade name 12]Cookie trees": "饼干树", + "[Upgrade name 13]Sturdier conveyor belts": "结实的传送带", + "[Upgrade name 14]Child labor": "童工", + "[Upgrade name 15]Sweatshop": "血汗工厂", + "[Upgrade name 16]Sugar gas": "糖气", + "[Upgrade name 17]Megadrill": "巨型钻头", + "[Upgrade name 18]Ultradrill": "超级钻头", + "[Upgrade name 19]Vanilla nebulae": "香草星云", + "[Upgrade name 20]Wormholes": "蠕虫洞", + "[Upgrade name 21]Frequent flyer": "空中飞人", + "[Upgrade name 22]Antimony": "锑矿", + "[Upgrade name 23]Essence of dough": "面团精华", + "[Upgrade name 24]True chocolate": "真巧克力", + "[Upgrade name 25]Ancient tablet": "远古碑匾", + "[Upgrade name 26]Insane oatling workers": "疯狂人形燕麦工人", + "[Upgrade name 27]Soul bond": "灵魂契约", + "[Upgrade name 28]Flux capacitors": "磁通量电容", + "[Upgrade name 29]Time paradox resolver": "时空悖论解析程序", + "[Upgrade name 30]Quantum conundrum": "量子谜题", + "[Upgrade name 31]Kitten helpers": "小猫助手", + "[Upgrade name 32]Kitten workers": "小猫工人", + "[Upgrade name 33]Plain cookies": "普通饼干", + "[Upgrade name 34]Sugar cookies": "糖霜饼干", + "[Upgrade name 35]Oatmeal raisin cookies": "燕麦葡萄干饼干", + "[Upgrade name 36]Peanut butter cookies": "花生酱饼干", + "[Upgrade name 37]Coconut cookies": "椰子饼干", + "[Upgrade name 38]White chocolate cookies": "白巧克力饼干", + "[Upgrade name 39]Macadamia nut cookies": "澳洲坚果饼干", + "[Upgrade name 40]Double-chip cookies": "双重浓郁巧克力饼干", + "[Upgrade name 41]White chocolate macadamia nut cookies": "白巧克力澳洲坚果饼干", + "[Upgrade name 42]All-chocolate cookies": "全巧克力饼干", + "[Upgrade name 43]Quadrillion fingers": "千兆手指", + "[Upgrade name 44]Prune juice": "西梅汁", + "[Upgrade name 45]Genetically-modified cookies": "转基因饼干", + "[Upgrade name 46]Radium reactors": "镭反应堆", + "[Upgrade name 47]Ultimadrill": "最终钻头", + "[Upgrade name 48]Warp drive": "曲速引擎", + "[Upgrade name 49]Ambrosia": "神肴", + "[Upgrade name 50]Sanity dance": "理智之舞", + "[Upgrade name 51]Causality enforcer": "因果律执行者", + "[Upgrade name 52]Lucky day": "幸运日", + "[Upgrade name 53]Serendipity": "意外发现", + "[Upgrade name 54]Kitten engineers": "小猫工程师", + "[Upgrade name 55]Dark chocolate-coated cookies": "黑巧克力涂层饼干", + "[Upgrade name 56]White chocolate-coated cookies": "白巧克力涂层饼干", + "[Upgrade name 57]Farmer grandmas": "农民老太婆", + "[Upgrade name 58]Miner grandmas": "矿工老太婆", + "[Upgrade name 59]Worker grandmas": "工人老太婆", + "[Upgrade name 60]Cosmic grandmas": "宇宙老太婆", + "[Upgrade name 61]Transmuted grandmas": "蜕变的老太婆", + "[Upgrade name 62]Altered grandmas": "蚀变的老太婆", + "[Upgrade name 63]Grandmas' grandmas": "奶奶的老太婆", + "[Upgrade name 64]Bingo center/Research facility": "宾果中心/研究设施", + "[Upgrade name 65]Specialized chocolate chips": "专业巧克力豆", + "[Upgrade name 66]Designer cocoa beans": "名牌可可豆", + "[Upgrade name 67]Ritual rolling pins": "仪式擀面杖", + "[Upgrade name 68]Underworld ovens": "地下世界烤箱", + "[Upgrade name 69]One mind": "一心", + "[Upgrade name 70]Exotic nuts": "奇异坚果", + "[Upgrade name 71]Communal brainsweep": "共体洗脑", + "[Upgrade name 72]Arcane sugar": "秘糖", + "[Upgrade name 73]Elder Pact": "长者契约", + "[Upgrade name 74]Elder Pledge": "长者誓约", + "[Upgrade name 75]Plastic mouse": "塑料鼠标", + "[Upgrade name 76]Iron mouse": "铁鼠标", + "[Upgrade name 77]Titanium mouse": "钛鼠标", + "[Upgrade name 78]Adamantium mouse": "埃德曼合金鼠标", + "[Upgrade name 79]Ultrascience": "超级科学", + "[Upgrade name 80]Eclipse cookies": "日食饼干", + "[Upgrade name 81]Zebra cookies": "斑马饼干", + "[Upgrade name 82]Quintillion fingers": "一京手指", + "[Upgrade name 83]Gold hoard": "黄金囤积", + "[Upgrade name 84]Elder Covenant": "长者盟约", + "[Upgrade name 85]Revoke Elder Covenant": "废除长者盟约", + "[Upgrade name 86]Get lucky": "走运", + "[Upgrade name 87]Sacrificial rolling pins": "献祭擀面杖", + "[Upgrade name 88]Snickerdoodles": "肉桂饼干", + "[Upgrade name 89]Stroopwafels": "荷兰松饼", + "[Upgrade name 90]Macaroons": "马卡龙", + "[Upgrade name 91]Neuromancy": "神经占卜", + "[Upgrade name 92]Empire biscuits": "帝国饼干", + "[Upgrade name 93]British tea biscuits": "英式茶饼", + "[Upgrade name 94]Chocolate british tea biscuits": "英式巧克力茶饼", + "[Upgrade name 95]Round british tea biscuits": "英式圆茶饼", + "[Upgrade name 96]Round chocolate british tea biscuits": "英式巧克力圆茶饼", + "[Upgrade name 97]Round british tea biscuits with heart motif": "爱心图案英式圆茶饼", + "[Upgrade name 98]Round chocolate british tea biscuits with heart motif": "爱心图案英式巧克力圆茶饼", + "[Upgrade name 99]Sugar bosons": "糖玻色子", + "[Upgrade name 100]String theory": "弦理论", + "[Upgrade name 101]Large macaron collider": "大型马卡龙对撞机", + "[Upgrade name 102]Big bang bake": "烘焙大爆炸", + "[Upgrade name 103]Antigrandmas": "反老太婆", + "[Upgrade name 104]Madeleines": "奶油茶糕", + "[Upgrade name 105]Palmiers": "蝴蝶酥", + "[Upgrade name 106]Palets": "小圆饼", + "[Upgrade name 107]Sablés": "酥饼", + "[Upgrade name 108]Kitten overseers": "小猫监工", + "[Upgrade name 109]Sextillion fingers": "一垓手指", + "[Upgrade name 110]Double-thick glasses": "深度近视镜", + "[Upgrade name 111]Gingerbread scarecrows": "姜饼稻草人", + "[Upgrade name 112]Recombobulators": "重组器", + "[Upgrade name 113]H-bomb mining": "氢弹采矿", + "[Upgrade name 114]Chocolate monoliths": "巧克力巨石", + "[Upgrade name 115]Aqua crustulae": "水之壁障", + "[Upgrade name 116]Brane transplant": "膜移植", + "[Upgrade name 117]Yestermorrow comparators": "今昔比较仪", + "[Upgrade name 118]Reverse cyclotrons": "反向回旋加速器", + "[Upgrade name 119]Unobtainium mouse": "难得素鼠标", + "[Upgrade name 120]Caramoas": "椰丝巧克力饼圈", + "[Upgrade name 121]Sagalongs": "花生酱夹心饼干", + "[Upgrade name 122]Shortfoils": "奶油酥饼", + "[Upgrade name 123]Win mints": "薄荷巧克力饼干", + "[Upgrade name 124]Perfect idling": "完美偷懒", + "[Upgrade name 125]Fig gluttons": "贪食无花果", + "[Upgrade name 126]Loreols": "奥利奥", + "[Upgrade name 127]Jaffa cakes": "佳发橙子蛋糕", + "[Upgrade name 128]Grease's cups": "黄油杯", + "[Upgrade name 129]Heavenly chip secret": "天堂碎片秘密", + "[Upgrade name 130]Heavenly cookie stand": "天堂饼干铺", + "[Upgrade name 131]Heavenly bakery": "天堂烘焙坊", + "[Upgrade name 132]Heavenly confectionery": "天堂糖果店", + "[Upgrade name 133]Heavenly key": "天堂之钥", + "[Upgrade name 134]Skull cookies": "骷髅饼干", + "[Upgrade name 135]Ghost cookies": "幽灵饼干", + "[Upgrade name 136]Bat cookies": "蝙蝠饼干", + "[Upgrade name 137]Slime cookies": "史莱姆饼干", + "[Upgrade name 138]Pumpkin cookies": "南瓜饼干", + "[Upgrade name 139]Eyeball cookies": "眼球饼干", + "[Upgrade name 140]Spider cookies": "蜘蛛饼干", + "[Upgrade name 141]Persistent memory": "持久内存", + "[Upgrade name 142]Wrinkler doormat": "饼干虫门垫", + "[Upgrade name 143]Christmas tree biscuits": "圣诞树饼干", + "[Upgrade name 144]Snowflake biscuits": "雪花饼干", + "[Upgrade name 145]Snowman biscuits": "雪人饼干", + "[Upgrade name 146]Holly biscuits": "神圣饼干", + "[Upgrade name 147]Candy cane biscuits": "拐杖糖饼干", + "[Upgrade name 148]Bell biscuits": "铃铛饼干", + "[Upgrade name 149]Present biscuits": "礼物饼干", + "[Upgrade name 150]Gingerbread men": "姜饼人", + "[Upgrade name 151]Gingerbread trees": "姜饼树", + "[Upgrade name 152]A festive hat": "节庆帽", + "[Upgrade name 153]Increased merriness": "增添欢乐", + "[Upgrade name 154]Improved jolliness": "增进愉悦", + "[Upgrade name 155]A lump of coal": "一块木炭", + "[Upgrade name 156]An itchy sweater": "一件扎人的毛衣", + "[Upgrade name 157]Reindeer baking grounds": "驯鹿烘焙场", + "[Upgrade name 158]Weighted sleighs": "负重雪橇", + "[Upgrade name 159]Ho ho ho-flavored frosting": "圣诞老人口味糖霜", + "[Upgrade name 160]Season savings": "节日酬宾", + "[Upgrade name 161]Toy workshop": "玩具工坊", + "[Upgrade name 162]Naughty list": "淘气榜", + "[Upgrade name 163]Santa's bottomless bag": "圣诞老人的无底袋", + "[Upgrade name 164]Santa's helpers": "圣诞老人的助手", + "[Upgrade name 165]Santa's legacy": "圣诞老人的传承", + "[Upgrade name 166]Santa's milk and cookies": "圣诞老人的牛奶和饼干", + "[Upgrade name 167]Reindeer season": "驯鹿季", + "[Upgrade name 168]Santa's dominion": "圣诞老人的支配", + "[Upgrade name 169]Pure heart biscuits": "纯洁心形饼干", + "[Upgrade name 170]Ardent heart biscuits": "浓情心形饼干", + "[Upgrade name 171]Sour heart biscuits": "酸涩心形饼干", + "[Upgrade name 172]Weeping heart biscuits": "哭泣心形饼干", + "[Upgrade name 173]Golden heart biscuits": "黄金心形饼干", + "[Upgrade name 174]Eternal heart biscuits": "永恒心形饼干", + "[Upgrade name 175]Gem polish": "宝石抛光", + "[Upgrade name 176]9th color": "第 9 色", + "[Upgrade name 177]Chocolate light": "巧克力光", + "[Upgrade name 178]Grainbow": "谷虹", + "[Upgrade name 179]Pure cosmic light": "宇宙纯光", + "[Upgrade name 180]Rainbow grandmas": "彩虹老太婆", + "[Upgrade name 181]Season switcher": "节日转换开关", + "[Upgrade name 182]Festive biscuit": "节庆饼干", + "[Upgrade name 183]Ghostly biscuit": "幽灵饼干", + "[Upgrade name 184]Lovesick biscuit": "相思饼干", + "[Upgrade name 185]Fool's biscuit": "愚人饼干", + "[Upgrade name 186]Eternal seasons": "永久节日", + "[Upgrade name 187]Kitten managers": "小猫经理", + "[Upgrade name 188]Septillion fingers": "一秭手指", + "[Upgrade name 189]Octillion fingers": "千秭手指", + "[Upgrade name 190]Eludium mouse": "E 合金鼠标", + "[Upgrade name 191]Wishalloy mouse": "希冀合金鼠标", + "[Upgrade name 192]Aging agents": "高龄代理人", + "[Upgrade name 193]Pulsar sprinklers": "脉冲星洒水装置", + "[Upgrade name 194]Deep-bake process": "深层烘焙工艺", + "[Upgrade name 195]Coreforge": "核心锻造", + "[Upgrade name 196]Generation ship": "世代太空船", + "[Upgrade name 197]Origin crucible": "起源坩埚", + "[Upgrade name 198]Deity-sized portals": "天神传送门", + "[Upgrade name 199]Far future enactment": "遥远未来法令", + "[Upgrade name 200]Nanocosmics": "纳米宇宙论", + "[Upgrade name 201]Glow-in-the-dark": "黑暗中发光", + "[Upgrade name 202]Rose macarons": "玫瑰马卡龙", + "[Upgrade name 203]Lemon macarons": "柠檬马卡龙", + "[Upgrade name 204]Chocolate macarons": "巧克力马卡龙", + "[Upgrade name 205]Pistachio macarons": "开心果马卡龙", + "[Upgrade name 206]Hazelnut macarons": "榛果马卡龙", + "[Upgrade name 207]Violet macarons": "紫罗兰马卡龙", + "[Upgrade name 208]Magic shenanigans": "魔法诡计", + "[Upgrade name 209]Bunny biscuit": "兔子饼干", + "[Upgrade name 210]Chicken egg": "鸡蛋", + "[Upgrade name 211]Duck egg": "鸭蛋", + "[Upgrade name 212]Turkey egg": "火鸡蛋", + "[Upgrade name 213]Quail egg": "鹌鹑蛋", + "[Upgrade name 214]Robin egg": "知更鸟蛋", + "[Upgrade name 215]Ostrich egg": "鸵鸟蛋", + "[Upgrade name 216]Cassowary egg": "食火鸟蛋", + "[Upgrade name 217]Salmon roe": "鲑鱼卵", + "[Upgrade name 218]Frogspawn": "蛙卵", + "[Upgrade name 219]Shark egg": "鲨鱼卵", + "[Upgrade name 220]Turtle egg": "海龟蛋", + "[Upgrade name 221]Ant larva": "蚂蚁卵", + "[Upgrade name 222]Golden goose egg": "金鹅蛋", + "[Upgrade name 223]Faberge egg": "法贝热彩蛋", + "[Upgrade name 224]Wrinklerspawn": "饼干虫卵", + "[Upgrade name 225]Cookie egg": "饼干蛋", + "[Upgrade name 226]Omelette": "煎蛋卷", + "[Upgrade name 227]Chocolate egg": "巧克力蛋", + "[Upgrade name 228]Century egg": "皮蛋", + "[Upgrade name 229]\"egg\"": "“蛋”", + "[Upgrade name 230]Caramel macarons": "焦糖马卡龙", + "[Upgrade name 231]Licorice macarons": "甘草马卡龙", + "[Upgrade name 232]Taller tellers": "高个出纳员", + "[Upgrade name 233]Scissor-resistant credit cards": "耐剪信用卡", + "[Upgrade name 234]Acid-proof vaults": "防酸保险库", + "[Upgrade name 235]Chocolate coins": "巧克力硬币", + "[Upgrade name 236]Exponential interest rates": "指数利率", + "[Upgrade name 237]Financial zen": "金融禅", + "[Upgrade name 238]Golden idols": "黄金偶像", + "[Upgrade name 239]Sacrifices": "献祭", + "[Upgrade name 240]Delicious blessing": "美味祝福", + "[Upgrade name 241]Sun festival": "太阳节", + "[Upgrade name 242]Enlarged pantheon": "增大的万神殿", + "[Upgrade name 243]Great Baker in the sky": "空中伟大烘焙之神", + "[Upgrade name 244]Pointier hats": "尖顶帽", + "[Upgrade name 245]Beardlier beards": "浓密的胡子", + "[Upgrade name 246]Ancient grimoires": "古老魔法书", + "[Upgrade name 247]Kitchen curses": "厨房诅咒", + "[Upgrade name 248]School of sorcery": "魔法学院", + "[Upgrade name 249]Dark formulas": "黑魔法公式", + "[Upgrade name 250]Banker grandmas": "银行家老太婆", + "[Upgrade name 251]Priestess grandmas": "祭司老太婆", + "[Upgrade name 252]Witch grandmas": "巫女老太婆", + "[Upgrade name 253]Tin of british tea biscuits": "罐装英式茶饼", + "[Upgrade name 254]Box of macarons": "一盒马卡龙", + "[Upgrade name 255]Box of brand biscuits": "一盒品牌饼干", + "[Upgrade name 256]Pure black chocolate cookies": "纯黑巧克力饼干", + "[Upgrade name 257]Pure white chocolate cookies": "纯白巧克力饼干", + "[Upgrade name 258]Ladyfingers": "手指饼干", + "[Upgrade name 259]Tuiles": "瓦片饼干", + "[Upgrade name 260]Chocolate-stuffed biscuits": "巧克力馅饼干", + "[Upgrade name 261]Checker cookies": "格子饼干", + "[Upgrade name 262]Butter cookies": "黄油饼干", + "[Upgrade name 263]Cream cookies": "奶油饼干", + "[Upgrade name 264]Permanent upgrade slot I": "永久升级栏位 I", + "[Upgrade name 265]Permanent upgrade slot II": "永久升级栏位 II", + "[Upgrade name 266]Permanent upgrade slot III": "永久升级栏位 III", + "[Upgrade name 267]Permanent upgrade slot IV": "永久升级栏位 IV", + "[Upgrade name 268]Permanent upgrade slot V": "永久升级栏位 V", + "[Upgrade name 269]Starspawn": "产卵之星", + "[Upgrade name 270]Starsnow": "降雪之星", + "[Upgrade name 271]Starterror": "恐惧之星", + "[Upgrade name 272]Starlove": "恋爱之星", + "[Upgrade name 273]Startrade": "贸易之星", + "[Upgrade name 274]Angels": "天使", + "[Upgrade name 275]Archangels": "大天使", + "[Upgrade name 276]Virtues": "力天使", + "[Upgrade name 277]Dominions": "主天使", + "[Upgrade name 278]Cherubim": "智天使", + "[Upgrade name 279]Seraphim": "炽天使", + "[Upgrade name 280]God": "天神", + "[Upgrade name 281]Twin Gates of Transcendence": "超然双生门", + "[Upgrade name 282]Heavenly luck": "天堂幸运", + "[Upgrade name 283]Lasting fortune": "持久幸运", + "[Upgrade name 284]Decisive fate": "决定性命运", + "[Upgrade name 285]Divine discount": "神圣折扣", + "[Upgrade name 286]Divine sales": "神圣特卖", + "[Upgrade name 287]Divine bakeries": "神圣烘焙坊", + "[Upgrade name 288]Starter kit": "新手工具包", + "[Upgrade name 289]Starter kitchen": "新手厨房", + "[Upgrade name 290]Halo gloves": "光环手套", + "[Upgrade name 291]Kitten angels": "小猫天使", + "[Upgrade name 292]Unholy bait": "邪恶诱饵", + "[Upgrade name 293]Sacrilegious corruption": "亵渎腐化", + "[Upgrade name 294]Xtreme walkers": "极限行者", + "[Upgrade name 295]Fudge fungus": "乳脂软糖真菌", + "[Upgrade name 296]Planetsplitters": "星球分离器", + "[Upgrade name 297]Cyborg workforce": "生化人劳动力", + "[Upgrade name 298]Way of the wallet": "用钱之道", + "[Upgrade name 299]Creation myth": "创世神话", + "[Upgrade name 300]Cookiemancy": "饼干占卜", + "[Upgrade name 301]Dyson sphere": "戴森球", + "[Upgrade name 302]Theory of atomic fluidity": "原子流动性理论", + "[Upgrade name 303]End of times back-up plan": "末日后备计划", + "[Upgrade name 304]Great loop hypothesis": "大循环假说", + "[Upgrade name 305]The Pulse": "脉冲", + "[Upgrade name 306]Lux sanctorum": "圣光", + "[Upgrade name 307]The Unbridling": "肆无忌惮", + "[Upgrade name 308]Wheat triffids": "小麦食人植物", + "[Upgrade name 309]Canola oil wells": "菜籽油井", + "[Upgrade name 310]78-hour days": "一天78小时", + "[Upgrade name 311]The stuff rationale": "物质基本原理", + "[Upgrade name 312]Theocracy": "神权政治", + "[Upgrade name 313]Rabbit trick": "兔子把戏", + "[Upgrade name 314]The final frontier": "最后的新疆域", + "[Upgrade name 315]Beige goo": "米色黏性物质", + "[Upgrade name 316]Maddening chants": "令人发狂的赞美诗", + "[Upgrade name 317]Cookietopian moments of maybe": "饼干乌托邦的可能时刻", + "[Upgrade name 318]Some other super-tiny fundamental particle? Probably?": "其他超微基本粒子?没准是?", + "[Upgrade name 319]Reverse shadows": "逆转暗影", + "[Upgrade name 320]Kitten accountants": "小猫会计", + "[Upgrade name 321]Kitten specialists": "小猫专员", + "[Upgrade name 322]Kitten experts": "小猫专家", + "[Upgrade name 323]How to bake your dragon": "烘焙龙高手", + "[Upgrade name 324]A crumbly egg": "一个易碎的蛋", + "[Upgrade name 325]Chimera": "奇美拉", + "[Upgrade name 326]Tin of butter cookies": "罐装黄油饼干", + "[Upgrade name 327]Golden switch": "黄金开关", + "[Upgrade name 328]Classic dairy selection": "经典乳制品选择", + "[Upgrade name 329]Fanciful dairy selection": "奇特乳制品选择", + "[Upgrade name 330]Dragon cookie": "龙饼干", + "[Upgrade name 331]Golden switch [off]": "黄金开关[关]", + "[Upgrade name 332]Golden switch [on]": "黄金开关[开]", + "[Upgrade name 333]Milk selector": "牛奶选择器", + "[Upgrade name 334]Milk chocolate butter biscuit": "牛奶巧克力黄油饼干", + "[Upgrade name 335]Dark chocolate butter biscuit": "黑巧克力黄油饼干", + "[Upgrade name 336]White chocolate butter biscuit": "白巧克力黄油饼干", + "[Upgrade name 337]Ruby chocolate butter biscuit": "红宝石巧克力黄油饼干", + "[Upgrade name 338]Gingersnaps": "姜饼", + "[Upgrade name 339]Cinnamon cookies": "肉桂饼干", + "[Upgrade name 340]Vanity cookies": "虚荣饼干", + "[Upgrade name 341]Cigars": "雪茄", + "[Upgrade name 342]Pinwheel cookies": "纸风车饼干", + "[Upgrade name 343]Fudge squares": "乳脂软糖方块", + "[Upgrade name 344]Digits": "数位", + "[Upgrade name 345]Butter horseshoes": "黄油马蹄铁", + "[Upgrade name 346]Butter pucks": "黄油冰球", + "[Upgrade name 347]Butter knots": "黄油绳结", + "[Upgrade name 348]Butter slabs": "黄油厚板", + "[Upgrade name 349]Butter swirls": "黄油漩涡", + "[Upgrade name 350]Shortbread biscuits": "黄油甜酥饼干", + "[Upgrade name 351]Millionaires' shortbreads": "百万富翁的黄油甜酥饼干", + "[Upgrade name 352]Caramel cookies": "焦糖饼干", + "[Upgrade name 353]Belphegor": "贝尔菲戈尔", + "[Upgrade name 354]Mammon": "玛门", + "[Upgrade name 355]Abaddon": "地狱领主", + "[Upgrade name 356]Satan": "撒旦", + "[Upgrade name 357]Asmodeus": "阿斯莫德斯", + "[Upgrade name 358]Beelzebub": "巴力西卜", + "[Upgrade name 359]Lucifer": "路西法", + "[Upgrade name 360]Golden cookie alert sound": "黄金饼干提醒声音", + "[Upgrade name 361]Golden cookie sound selector": "黄金饼干声音选择器", + "[Upgrade name 362]Basic wallpaper assortment": "基础壁纸", + "[Upgrade name 363]Legacy": "传承", + "[Upgrade name 364]Elder spice": "长者香料", + "[Upgrade name 365]Residual luck": "余留幸运", + "[Upgrade name 366]Fantasteel mouse": "幻钢鼠标", + "[Upgrade name 367]Nevercrack mouse": "永不破裂的鼠标", + "[Upgrade name 368]Five-finger discount": "五指特价", + "[Upgrade name 369]Future almanacs": "未来日历", + "[Upgrade name 370]Rain prayer": "祈雨者", + "[Upgrade name 371]Seismic magic": "地震法术", + "[Upgrade name 372]Asteroid mining": "小行星开采", + "[Upgrade name 373]Quantum electronics": "量子电子学", + "[Upgrade name 374]Temporal overclocking": "临时超频", + "[Upgrade name 375]Contracts from beyond": "恶魔契约", + "[Upgrade name 376]Printing presses": "印刷厂", + "[Upgrade name 377]Paganism": "异教", + "[Upgrade name 378]God particle": "天神粒子", + "[Upgrade name 379]Arcane knowledge": "秘法知识", + "[Upgrade name 380]Magical botany": "神奇的植物学", + "[Upgrade name 381]Fossil fuels": "化石燃料", + "[Upgrade name 382]Shipyards": "造船厂", + "[Upgrade name 383]Primordial ores": "原始矿石", + "[Upgrade name 384]Gold fund": "黄金基金", + "[Upgrade name 385]Infernal crops": "地狱火作物", + "[Upgrade name 386]Abysmal glimmer": "深渊微光", + "[Upgrade name 387]Relativistic parsec-skipping": "相对论秒差跃迁", + "[Upgrade name 388]Primeval glow": "原始辉光", + "[Upgrade name 389]Extra physics funding": "物理学特别资金", + "[Upgrade name 390]Chemical proficiency": "化学熟练度", + "[Upgrade name 391]Light magic": "光明魔法", + "[Upgrade name 392]Mystical energies": "神秘能量", + "[Upgrade name 393]Synergies Vol. I": "协同效应 I", + "[Upgrade name 394]Synergies Vol. II": "协同效应 II", + "[Upgrade name 395]Heavenly cookies": "天堂饼干", + "[Upgrade name 396]Wrinkly cookies": "褶皱饼干", + "[Upgrade name 397]Distilled essence of redoubled luck": "双倍幸运提取精华", + "[Upgrade name 398]Occult obstruction": "超自然障碍", + "[Upgrade name 399]Glucose-charged air": "葡萄糖四溢的空气", + "[Upgrade name 400]Lavender chocolate butter biscuit": "薰衣草巧克力黄油饼干", + "[Upgrade name 401]Lombardia cookies": "伦巴第饼干", + "[Upgrade name 402]Bastenaken cookies": "巴斯托涅饼干", + "[Upgrade name 403]Pecan sandies": "胡桃酥饼", + "[Upgrade name 404]Moravian spice cookies": "摩拉维亚香料饼干", + "[Upgrade name 405]Anzac biscuits": "澳新军团饼干", + "[Upgrade name 406]Buttercakes": "牛油蛋糕", + "[Upgrade name 407]Ice cream sandwiches": "冰激凌三明治", + "[Upgrade name 408]Stevia Caelestis": "天之甘菊", + "[Upgrade name 409]Diabetica Daemonicus": "恶魔糖尿病", + "[Upgrade name 410]Sucralosia Inutilis": "无益蔗糖素", + "[Upgrade name 411]Lucky digit": "幸运数位", + "[Upgrade name 412]Lucky number": "幸运数字", + "[Upgrade name 413]Lucky payout": "幸运支出", + "[Upgrade name 414]Background selector": "背景选择器", + "[Upgrade name 415]Lucky grandmas": "幸运老太婆", + "[Upgrade name 416]Your lucky cookie": "你的幸运饼干", + "[Upgrade name 417]\"All Bets Are Off\" magic coin": "“前景难测”魔法币", + "[Upgrade name 418]Winning lottery ticket": "中奖彩票", + "[Upgrade name 419]Four-leaf clover field": "四叶草田", + "[Upgrade name 420]A recipe book about books": "书本食谱", + "[Upgrade name 421]Leprechaun village": "魔法精灵村", + "[Upgrade name 422]Improbability drive": "不可能性驱动", + "[Upgrade name 423]Antisuperstistronics": "反迷信变速器", + "[Upgrade name 424]Gemmed talismans": "宝石护身符", + "[Upgrade name 425]Kitten consultants": "小猫顾问", + "[Upgrade name 426]Birthday cookie": "生日饼干", + "[Upgrade name 427]Armythril mouse": "军用秘银鼠标", + "[Upgrade name 428]Reverse dementia": "反痴呆", + "[Upgrade name 429]Humane pesticides": "人道农药", + "[Upgrade name 430]Mole people": "鼹鼠人", + "[Upgrade name 431]Machine learning": "机器学习", + "[Upgrade name 432]Edible money": "食用金钱", + "[Upgrade name 433]Sick rap prayers": "病态的说唱祈祷者", + "[Upgrade name 434]Deluxe tailored wands": "豪华定制魔杖", + "[Upgrade name 435]Autopilot": "自动驾驶", + "[Upgrade name 436]The advent of chemistry": "化学的出现", + "[Upgrade name 437]The real world": "现实世界", + "[Upgrade name 438]Second seconds": "第二秒", + "[Upgrade name 439]Quantum comb": "量子光频梳", + "[Upgrade name 440]Crystal mirrors": "水晶镜子", + "[Upgrade name 441]Bunnypedes": "幸运兔脚", + "[Upgrade name 442]Kitten assistants to the regional manager": "大区经理小猫助理", + "[Upgrade name 443]Charm quarks": "粲夸克", + "[Upgrade name 444]Pink biscuits": "粉色饼干", + "[Upgrade name 445]Whole-grain cookies": "全麦饼干", + "[Upgrade name 446]Candy cookies": "糖果饼干", + "[Upgrade name 447]Big chip cookies": "大粒巧克力豆饼干", + "[Upgrade name 448]One chip cookies": "巧克力豆饼干", + "[Upgrade name 449]Sugar baking": "糖块烘焙", + "[Upgrade name 450]Sugar craving": "糖块渴求", + "[Upgrade name 451]Sugar aging process": "糖块老化进程", + "[Upgrade name 452]Sugar frenzy": "糖块狂热!", + "[Upgrade name 453]Sprinkles cookies": "珠子糖饼干", + "[Upgrade name 454]Peanut butter blossoms": "花生酱花杯型蛋糕", + "[Upgrade name 455]No-bake cookies": "免烘焙饼干", + "[Upgrade name 456]Florentines": "佛罗伦斯彩色酥饼", + "[Upgrade name 457]Chocolate crinkles": "巧克力裂纹饼干", + "[Upgrade name 458]Maple cookies": "枫糖浆饼干", + "[Upgrade name 459]Turbo-charged soil": "涡轮增压土壤", + "[Upgrade name 460]Technobsidian mouse": "科技黑曜石鼠标", + "[Upgrade name 461]Plasmarble mouse": "等离子大理石鼠标", + "[Upgrade name 462]Kitten marketeers": "小猫市场商人", + "[Upgrade name 463]Festivity loops": "节庆循环", + "[Upgrade name 464]Persian rice cookies": "波斯米饼干", + "[Upgrade name 465]Norwegian cookies": "挪威饼干", + "[Upgrade name 466]Crispy rice cookies": "脆米饼", + "[Upgrade name 467]Ube cookies": "紫薯饼干", + "[Upgrade name 468]Butterscotch cookies": "奶油硬糖饼干", + "[Upgrade name 469]Speculaas": "杏仁薄脆饼", + "[Upgrade name 470]Elderwort biscuits": "老人草饼干", + "[Upgrade name 471]Bakeberry cookies": "云莓饼干", + "[Upgrade name 472]Duketater cookies": "公爵土豆饼干", + "[Upgrade name 473]Green yeast digestives": "绿酵母消化饼干", + "[Upgrade name 474]Fern tea": "蕨茶", + "[Upgrade name 475]Ichor syrup": "灵液糖浆", + "[Upgrade name 476]Wheat slims": "小麦薄饼", + "[Upgrade name 477]Synthetic chocolate green honey butter biscuit": "代可可脂巧克力绿蜂蜜黄油饼干", + "[Upgrade name 478]Royal raspberry chocolate butter biscuit": "皇家覆盆子巧克力黄油饼干", + "[Upgrade name 479]Ultra-concentrated high-energy chocolate butter biscuit": "高能量超浓缩巧克力黄油饼干", + "[Upgrade name 480]Timeproof hair dyes": "长效染发剂", + "[Upgrade name 481]Barnstars": "谷仓之星", + "[Upgrade name 482]Mine canaries": "矿井金丝雀", + "[Upgrade name 483]Brownie point system": "女童子军工分制度", + "[Upgrade name 484]Grand supercycles": "重大超级周期", + "[Upgrade name 485]Psalm-reading": "诗篇导读", + "[Upgrade name 486]Immobile spellcasting": "原地施法", + "[Upgrade name 487]Restaurants at the end of the universe": "宇宙尽头的餐厅", + "[Upgrade name 488]On second thought": "考虑再三", + "[Upgrade name 489]Dimensional garbage gulper": "次元垃圾车", + "[Upgrade name 490]Additional clock hands": "额外钟表指针", + "[Upgrade name 491]Baking Nobel prize": "诺贝尔烘焙奖", + "[Upgrade name 492]Reverse theory of light": "光的逆转理论", + "[Upgrade name 493]Revised probabilistics": "修正概率论", + "[Upgrade name 494]Kitten analysts": "小猫分析师", + "[Upgrade name 495]Eye of the wrinkler": "饼干虫之眼", + "[Upgrade name 496]Inspired checklist": "灵感清单", + "[Upgrade name 497]Pure pitch-black chocolate butter biscuit": "纯黑巧克力黄油饼干", + "[Upgrade name 498]Chocolate oatmeal cookies": "巧克力燕麦饼干", + "[Upgrade name 499]Molasses cookies": "糖浆饼干", + "[Upgrade name 500]Biscotti": "意大利脆饼", + "[Upgrade name 501]Waffle cookies": "华夫饼干", + "[Upgrade name 502]Almond cookies": "杏仁饼干", + "[Upgrade name 503]Hazelnut cookies": "榛果饼干", + "[Upgrade name 504]Walnut cookies": "核桃饼干", + "[Upgrade name 505]Label printer": "标签打印机", + "[Upgrade name 506]Good manners": "彬彬有礼", + "[Upgrade name 507]Lindworms": "鳞龙", + "[Upgrade name 508]Bore again": "再次开钻", + "[Upgrade name 509]\"Volunteer\" interns": "“志愿者”实习生", + "[Upgrade name 510]Rules of acquisition": "获利守则", + "[Upgrade name 511]War of the gods": "诸神之战", + "[Upgrade name 512]Electricity": "电能", + "[Upgrade name 513]Universal alphabet": "通用字母表", + "[Upgrade name 514]Public betterment": "公开增值", + "[Upgrade name 515]Embedded microportals": "嵌入式微型传送门", + "[Upgrade name 516]Nostalgia": "思乡", + "[Upgrade name 517]The definite molecule": "明确分子", + "[Upgrade name 518]Light capture measures": "采光措施", + "[Upgrade name 519]0-sided dice": "零面骰子", + "[Upgrade name 520]Heralds": "使者", + "[Upgrade name 521]Metagrandmas": "元老太婆", + "[Upgrade name 522]Metabakeries": "元烘焙坊", + "[Upgrade name 523]Mandelbrown sugar": "曼德尔红糖", + "[Upgrade name 524]Fractoids": "分形陈述", + "[Upgrade name 525]Nested universe theory": "巢状宇宙理论", + "[Upgrade name 526]Menger sponge cake": "门杰尔海绵蛋糕", + "[Upgrade name 527]One particularly good-humored cow": "一头格外温驯的牛", + "[Upgrade name 528]Chocolate ouroboros": "巧克力衔尾蛇", + "[Upgrade name 529]Nested": "巢状", + "[Upgrade name 530]Space-filling fibers": "空间填充纤维", + "[Upgrade name 531]Endless book of prose": "无尽的散文书", + "[Upgrade name 532]The set of all sets": "所有自含集合的集合", + "[Upgrade name 533]Recursive mirrors": "循环镜像", + "[Upgrade name 534]Mice clicking mice": "老鼠点击的鼠标", + "[Upgrade name 535]Custard creams": "奶油糖霜夹心饼干", + "[Upgrade name 536]Bourbon biscuits": "波旁巧克力夹心饼干", + "[Upgrade name 537]Keepsakes": "纪念品", + "[Upgrade name 538]Mini-cookies": "迷你饼干", + "[Upgrade name 539]Sugar crystal cookies": "糖碎饼干", + "[Upgrade name 540]Box of maybe cookies": "盒子里装的可能是饼干", + "[Upgrade name 541]Box of not cookies": "盒子里装的不是饼干", + "[Upgrade name 542]Box of pastries": "一盒点心", + "[Upgrade name 543]Profiteroles": "泡芙", + "[Upgrade name 544]Jelly donut": "果酱甜甜圈", + "[Upgrade name 545]Glazed donut": "糖霜甜甜圈", + "[Upgrade name 546]Chocolate cake": "巧克力蛋糕", + "[Upgrade name 547]Strawberry cake": "草莓蛋糕", + "[Upgrade name 548]Apple pie": "苹果派", + "[Upgrade name 549]Lemon meringue pie": "柠檬蛋白派", + "[Upgrade name 550]Butter croissant": "法式牛角包", + "[Upgrade name 551]Cookie dough": "饼干面团", + "[Upgrade name 552]Burnt cookie": "烤焦的饼干", + "[Upgrade name 553]A chocolate chip cookie but with the chips picked off for some reason": "虽然是巧克力豆饼干,但出于某种原因巧克力豆被拿掉了", + "[Upgrade name 554]Flavor text cookie": "饼干味道", + "[Upgrade name 555]High-definition cookie": "高清饼干", + "[Upgrade name 556]Toast": "吐司", + "[Upgrade name 557]Peanut butter & jelly": "花生酱和果酱", + "[Upgrade name 558]Wookies": "武技人饼干", + "[Upgrade name 559]Cheeseburger": "芝士汉堡", + "[Upgrade name 560]One lone chocolate chip": "孤单的巧克力豆", + "[Upgrade name 561]Genius accounting": "天才会计", + "[Upgrade name 562]Shimmering veil": "闪光面纱", + "[Upgrade name 563]Shimmering veil [off]": "闪光面纱[关]", + "[Upgrade name 564]Shimmering veil [on]": "闪光面纱[开]", + "[Upgrade name 565]Whoopie pies": "巧克力奶油夹心派", + "[Upgrade name 566]Caramel wafer biscuits": "焦糖华夫饼干", + "[Upgrade name 567]Chocolate chip mocha cookies": "巧克力豆抹茶饼干", + "[Upgrade name 568]Earl Grey cookies": "伯爵红茶饼干", + "[Upgrade name 569]Corn syrup cookies": "玉米糖浆饼干", + "[Upgrade name 570]Icebox cookies": "冰盒饼干", + "[Upgrade name 571]Graham crackers": "全麦饼干", + "[Upgrade name 572]Hardtack": "压缩饼干", + "[Upgrade name 573]Cornflake cookies": "玉米片饼干", + "[Upgrade name 574]Tofu cookies": "豆腐饼干", + "[Upgrade name 575]Gluten-free cookies": "无麸质饼干", + "[Upgrade name 576]Russian bread cookies": "俄罗斯面包饼干", + "[Upgrade name 577]Lebkuchen": "德式姜饼", + "[Upgrade name 578]Aachener Printen": "亚琛烤饼", + "[Upgrade name 579]Canistrelli": "科西嘉饼", + "[Upgrade name 580]Nice biscuits": "尼斯饼干", + "[Upgrade name 581]French pure butter cookies": "法式纯黄油饼干", + "[Upgrade name 582]Petit beurre": "小黄油饼干", + "[Upgrade name 583]Nanaimo bars": "纳奈莫条", + "[Upgrade name 584]Berger cookies": "巴尔地摩汉堡饼干", + "[Upgrade name 585]Chinsuko": "金楚糕", + "[Upgrade name 586]Panda koala biscuits": "熊猫考拉饼干", + "[Upgrade name 587]Putri salju": "印尼月牙饼干", + "[Upgrade name 588]Milk cookies": "牛奶饼干", + "[Upgrade name 589]Cookie crumbs": "饼干屑", + "[Upgrade name 590]Chocolate chip cookie": "巧克力豆饼干", + "[Upgrade name 591]Cosmic beginner's luck": "宇宙新手的好运", + "[Upgrade name 592]Reinforced membrane": "加固薄膜", + "[Upgrade name 593]Binary grandmas": "二进制老太婆", + "[Upgrade name 594]The JavaScript console for dummies": "傻瓜式 JavaScript 控制台", + "[Upgrade name 595]64bit arrays": "64 位数组", + "[Upgrade name 596]Stack overflow": "堆栈溢出", + "[Upgrade name 597]Enterprise compiler": "企业编译器", + "[Upgrade name 598]Syntactic sugar": "语法糖", + "[Upgrade name 599]A nice cup of coffee": "一杯好喝的咖啡", + "[Upgrade name 600]Just-in-time baking": "实施烘焙", + "[Upgrade name 601]cookies++": "饼干++", + "[Upgrade name 602]Software updates": "软件更新", + "[Upgrade name 603]Game.Loop": "游戏.循环", + "[Upgrade name 604]eval()": "eval()", + "[Upgrade name 605]Script grannies": "脚本老太婆", + "[Upgrade name 606]Tombola computing": "摸彩计算", + "[Upgrade name 607]Kruidnoten": "小姜饼", + "[Upgrade name 608]Marie biscuits": "玛丽饼干", + "[Upgrade name 609]Meringue cookies": "蛋白糖霜脆饼", + "[Upgrade name 610]Pizza": "披萨", + "[Upgrade name 611]Crackers": "咸饼干", + "[Upgrade name 612]Havabreaks": "威化巧克力", + "[Upgrade name 613]Kitten executives": "小猫主管", + "[Upgrade name 614]Chai tea cookies": "印度红茶饼干", + "[Upgrade name 615]Yogurt cookies": "酸奶饼干", + "[Upgrade name 616]Thumbprint cookies": "指纹饼干", + "[Upgrade name 617]Pizzelle": "意式薄饼", + "[Upgrade name 618]Zilla wafers": "吉拉威化饼", + "[Upgrade name 619]Dim Dams": "DimDam 巧克力饼干", + "[Upgrade name 620]Candy": "糖果", + "[Upgrade name 621]Fortune #001": "幸运签 #001", + "[Upgrade name 622]Fortune #002": "幸运签 #002", + "[Upgrade name 623]Fortune #003": "幸运签 #003", + "[Upgrade name 624]Fortune #004": "幸运签 #004", + "[Upgrade name 625]Fortune #005": "幸运签 #005", + "[Upgrade name 626]Fortune #006": "幸运签 #006", + "[Upgrade name 627]Fortune #007": "幸运签 #007", + "[Upgrade name 628]Fortune #008": "幸运签 #008", + "[Upgrade name 629]Fortune #009": "幸运签 #009", + "[Upgrade name 630]Fortune #010": "幸运签 #010", + "[Upgrade name 631]Fortune #011": "幸运签 #011", + "[Upgrade name 632]Fortune #012": "幸运签 #012", + "[Upgrade name 633]Fortune #013": "幸运签 #013", + "[Upgrade name 634]Fortune #014": "幸运签 #014", + "[Upgrade name 635]Fortune #015": "幸运签 #015", + "[Upgrade name 636]Fortune #016": "幸运签 #016", + "[Upgrade name 637]Fortune #017": "幸运签 #017", + "[Upgrade name 638]Fortune #100": "幸运签 #100", + "[Upgrade name 639]Fortune #101": "幸运签 #101", + "[Upgrade name 640]Fortune #102": "幸运签 #102", + "[Upgrade name 641]Fortune #103": "幸运签 #103", + "[Upgrade name 642]Fortune #104": "幸运签 #104", + "[Upgrade name 643]Fortune cookies": "幸运饼干", + "[Upgrade name 644]A really good guide book": "一本很好的指南。", + "[Upgrade name 645]Prism heart biscuits": "棱镜心形饼干", + "[Upgrade name 646]Kitten wages": "小猫工资", + "[Upgrade name 647]Pet the dragon": "抚摸龙", + "[Upgrade name 648]Dragon scale": "龙鳞", + "[Upgrade name 649]Dragon claw": "龙爪", + "[Upgrade name 650]Dragon fang": "龙牙", + "[Upgrade name 651]Dragon teddy bear": "龙玩具熊", + "[Upgrade name 652]Granola cookies": "格兰诺拉燕麦饼干", + "[Upgrade name 653]Ricotta cookies": "里科塔奶酪饼干", + "[Upgrade name 654]Roze koeken": "粉红釉饼干", + "[Upgrade name 655]Peanut butter cup cookies": "花生酱杯子饼干", + "[Upgrade name 656]Sesame cookies": "芝麻饼干", + "[Upgrade name 657]Taiyaki": "鲷鱼烧", + "[Upgrade name 658]Vanillekipferl": "香草月牙饼干", + "[Upgrade name 659]Cosmic chocolate butter biscuit": "宇宙巧克力黄油饼干", + "[Upgrade name 660]Nonillion fingers": "100 穰手指", + "[Upgrade name 661]Miraculite mouse": "Miraculite 鼠标", + "[Upgrade name 662]Generation degeneration": "世代衰退", + "[Upgrade name 663]Global seed vault": "全球种子库", + "[Upgrade name 664]Air mining": "空中采矿", + "[Upgrade name 665]Behavioral reframing": "行为重构", + "[Upgrade name 666]Altruistic loop": "无私循环", + "[Upgrade name 667]A novel idea": "一个新颖的设想", + "[Upgrade name 668]Spelling bees": "拼写比赛", + "[Upgrade name 669]Toroid universe": "环状宇宙", + "[Upgrade name 670]Hermetic reconciliation": "封闭调和", + "[Upgrade name 671]His advent": "他的到来", + "[Upgrade name 672]Split seconds": "双秒针", + "[Upgrade name 673]Flavor itself": "味道本身", + "[Upgrade name 674]Light speed limit": "光速极限", + "[Upgrade name 675]A touch of determinism": "一丝确定性", + "[Upgrade name 676]This upgrade": "此升级", + "[Upgrade name 677]Your biggest fans": "你的铁杆粉丝", + "[Upgrade name 678]Battenberg biscuits": "巴腾堡饼干", + "[Upgrade name 679]Rosette cookies": "玫瑰形饼干", + "[Upgrade name 680]Gangmakers": "先行者蛋糕", + "[Upgrade name 681]Welsh cookies": "威尔士饼干", + "[Upgrade name 682]Raspberry cheesecake cookies": "覆盆子芝士蛋糕饼干", + "[Upgrade name 683]Alternate grandmas": "轮换老太婆", + "[Upgrade name 684]Manifest destiny": "昭昭天命", + "[Upgrade name 685]The multiverse in a nutshell": "狭小容器中的多元宇宙", + "[Upgrade name 686]All-conversion": "所有转换", + "[Upgrade name 687]Multiverse agents": "多元宇宙代理人", + "[Upgrade name 688]Escape plan": "逃跑计划", + "[Upgrade name 689]Game design": "游戏设计", + "[Upgrade name 690]Sandbox universes": "沙盒宇宙", + "[Upgrade name 691]Multiverse wars": "多元宇宙战争", + "[Upgrade name 692]Mobile ports": "移动端口", + "[Upgrade name 693]Encapsulated realities": "封存现实", + "[Upgrade name 694]Extrinsic clicking": "非固有点击", + "[Upgrade name 695]Universal idling": "空闲宇宙", + "[Upgrade name 696]Perforated mille-feuille cosmos": "千疮百孔的千层宇宙", + "[Upgrade name 697]Infraverses and superverses": "基础宇宙和超级宇宙", + "[Upgrade name 698]Fortune #018": "幸运签 #018", + "[Upgrade name 699]Butter biscuit (with butter)": "黄油饼干(有黄油)", + "[Upgrade name 700]Visits": "拜访", + "[Upgrade name 701]Reverse-veganism": "反素食主义", + "[Upgrade name 702]Caramel alloys": "焦糖合金", + "[Upgrade name 703]The infinity engine": "无限引擎", + "[Upgrade name 704]Diminishing tax returns": "日益减少的纳税申报", + "[Upgrade name 705]Apparitions": "幻象", + "[Upgrade name 706]Wizard basements": "巫师地下室", + "[Upgrade name 707]Prime directive": "基本指令", + "[Upgrade name 708]Chromatic cycling": "半音循环", + "[Upgrade name 709]Domestic rifts": "时空裂痕", + "[Upgrade name 710]Patience abolished": "无需等待", + "[Upgrade name 711]Delicious pull": "美味牵拉", + "[Upgrade name 712]Occam's laser": "奥卡姆激光", + "[Upgrade name 713]On a streak": "连胜记录", + "[Upgrade name 714]A box": "一盒", + "[Upgrade name 715]Hacker shades": "黑客屏蔽", + "[Upgrade name 716]Break the fifth wall": "打破隐性限制", + "[Upgrade name 717]Cat ladies": "猫淑女", + "[Upgrade name 718]Milkhelp® lactose intolerance relief tablets": "Milkhelp® 乳糖不耐受症状缓解片", + "[Upgrade name 719]Aura gloves": "光环手套", + "[Upgrade name 720]Luminous gloves": "夜光手套", + "[Upgrade name 721]Bokkenpootjes": "荷兰羊脚饼干", + "[Upgrade name 722]Fat rascals": "肥油流氓蛋糕", + "[Upgrade name 723]Ischler cookies": "伊斯勒饼干", + "[Upgrade name 724]Matcha cookies": "抹茶饼干", + "[Upgrade name 725]Earl Grey macarons": "伯爵红茶马卡龙", + "[Upgrade name 726]Pokey": "波奇饼干", + "[Upgrade name 727]Cashew cookies": "腰果饼干", + "[Upgrade name 728]Milk chocolate cookies": "牛奶巧克力饼干", + "[Upgrade name 729]Brainy grandmas": "聰明的奶奶", + "[Upgrade name 730]Principled neural shackles": "有原則的神經枷鎖", + "[Upgrade name 731]Obey": "遵守", + "[Upgrade name 732]A sprinkle of irrationality": "一點不理性", + "[Upgrade name 733]Front and back hemispheres": "前半球和後半球", + "[Upgrade name 734]Neural networking": "神經網絡", + "[Upgrade name 735]Cosmic brainstorms": "宇宙頭腦風暴", + "[Upgrade name 736]Megatherapy": "巨型療法", + "[Upgrade name 737]Synaptic lubricant": "突觸潤滑劑", + "[Upgrade name 738]Psychokinesis": "念動力", + "[Upgrade name 739]Spines": "脊柱", + "[Upgrade name 740]Neuraforming": "神經成型術", + "[Upgrade name 741]Epistemological trickery": "認識論詭計", + "[Upgrade name 742]Every possible idea": "每一個可能的想法", + "[Upgrade name 743]Kitchen cabinets": "廚櫃", + "[Upgrade name 744]Cookie mulch": "餅乾覆蓋物", + "[Upgrade name 745]Delicious mineralogy": "美味的礦物學", + "[Upgrade name 746]N-dimensional assembly lines": "N維裝配線", + "[Upgrade name 747]Cookie Points": "餅乾點", + "[Upgrade name 748]Negatheism": "消極主義", + "[Upgrade name 749]Magical realism": "魔幻現實主義", + "[Upgrade name 750]Cosmic foreground radiation": "宇宙前景輻射", + "[Upgrade name 751]Arcanized glassware": "鍍鋁玻璃器皿", + "[Upgrade name 752]Portal guns": "傳送槍", + "[Upgrade name 753]Timeproof upholstery": "經久耐用的室內裝潢", + "[Upgrade name 754]Employee minification": "員工縮減", + "[Upgrade name 755]Hyperblack paint": "超黑漆", + "[Upgrade name 756]Silver lining maximization": "一線希望最大化", + "[Upgrade name 757]Multiscale profiling": "多尺度分析", + "[Upgrade name 758]PHP containment vats": "PHP 容器", + "[Upgrade name 759]Opposite universe": "對立的宇宙", + "[Upgrade name 760]The land of dreams": "夢想之地", + "[Upgrade name 761]Thoughts & prayers": "思考與祈禱", + "[Upgrade name 762]Fertile minds": "肥沃的頭腦", + "[Upgrade name 763]Fortune #019": "財富#019", + "[Upgrade name 764]Decillion fingers": "十進製手指", + "[Upgrade name 765]Aetherice mouse": "以太鼠標", + "[Upgrade name 766]Kitten admins": "小貓管理員", + "[Upgrade name 767]Everybutter biscuit": "黃油餅乾", + "[Upgrade name 768]Unshackled cursors": "不受束縛的游標", + "[Upgrade name 769]Unshackled grandmas": "不受束縛的奶奶", + "[Upgrade name 770]Unshackled farms": "不受束縛的農場", + "[Upgrade name 771]Unshackled mines": "不受束縛的地雷", + "[Upgrade name 772]Unshackled factories": "不受束縛的工廠", + "[Upgrade name 773]Unshackled banks": "不受束縛的銀行", + "[Upgrade name 774]Unshackled temples": "不受束縛的寺廟", + "[Upgrade name 775]Unshackled wizard towers": "不受束縛的巫師塔", + "[Upgrade name 776]Unshackled shipments": "不受束縛的貨物", + "[Upgrade name 777]Unshackled alchemy labs": "不受束縛的煉金術實驗室", + "[Upgrade name 778]Unshackled portals": "不受束縛的傳送門", + "[Upgrade name 779]Unshackled time machines": "不受束縛的時光機", + "[Upgrade name 780]Unshackled antimatter condensers": "不受束縛的反物質電容器", + "[Upgrade name 781]Unshackled prisms": "不受束縛的棱鏡", + "[Upgrade name 782]Unshackled chancemakers": "不受束縛的機會製造者", + "[Upgrade name 783]Unshackled fractal engines": "不受束縛的分形引擎", + "[Upgrade name 784]Unshackled javascript consoles": "不受束縛的 JavaScript 控制台", + "[Upgrade name 785]Unshackled idleverses": "不受束縛的閒人", + "[Upgrade name 786]Unshackled cortex bakers": "不受束縛的腦皮層麵包師", + "[Upgrade name 787]Unshackled flavor": "不受束縛的味道", + "[Upgrade name 788]Unshackled berrylium": "不受束縛的漿果", + "[Upgrade name 789]Unshackled blueberrylium": "不受束縛的藍莓", + "[Upgrade name 790]Unshackled chalcedhoney": "不受束縛的玉髓", + "[Upgrade name 791]Unshackled buttergold": "不受束縛的黃油", + "[Upgrade name 792]Unshackled sugarmuck": "不受束縛的糖渣", + "[Upgrade name 793]Unshackled jetmint": "不受束縛的薄荷", + "[Upgrade name 794]Unshackled cherrysilver": "不受束縛的櫻桃銀", + "[Upgrade name 795]Unshackled hazelrald": "不受束縛的榛子紅", + "[Upgrade name 796]Unshackled mooncandy": "不受束縛的月亮糖", + "[Upgrade name 797]Unshackled astrofudge": "不受束縛的天梯軟糖", + "[Upgrade name 798]Unshackled alabascream": "不受束縛的雪花蓮", + "[Upgrade name 799]Unshackled iridyum": "不受束縛的銥", + "[Upgrade name 800]Unshackled glucosmium": "不受束縛的葡萄糖", + "[Upgrade name 801]Delicate touch": "細膩的觸感", + "[Upgrade name 802]Steadfast murmur": "堅定的低語", + "[Upgrade name 803]Glittering edge": "閃閃發光的邊緣", + "[Upgrade name 804]Distinguished wallpaper assortment": "傑出的壁紙分類", + "[Upgrade name 805]Sound test": "聲音測試", + "[Upgrade name 806]Jukebox": "點唱機", + "[Upgrade name 807]Dalgona cookies": "達爾戈納餅乾", + "[Upgrade name 808]Spicy cookies": "辣餅乾", + "[Upgrade name 809]Smile cookies": "微笑餅乾", + "[Upgrade name 810]Kolachy cookies": "可樂曲奇", + "[Upgrade name 811]Gomma cookies": "戈馬餅乾", + "[Upgrade name 812]Vegan cookies": "素食餅乾", + "[Upgrade name 813]Coyotas": "郊狼", + "[Upgrade name 814]Frosted sugar cookies": "糖霜餅乾", + "[Upgrade name 815]Marshmallow sandwich cookies": "棉花糖三明治餅乾", + "[Upgrade name 816]Web cookies": "網絡餅乾", + "[Upgrade name 817]Steamed cookies": "蒸餅乾", + "[Upgrade name 818]Deep-fried cookie dough": "油炸餅乾麵團", + "[Achievement name 0]Wake and bake": "醒来,烘焙", + "[Achievement name 1]Making some dough": "做一些面团", + "[Achievement name 2]So baked right now": "烘焙成品", + "[Achievement name 3]Fledgling bakery": "菜鸟烘焙坊", + "[Achievement name 4]Affluent bakery": "富足的烘焙坊", + "[Achievement name 5]World-famous bakery": "世界知名烘焙坊", + "[Achievement name 6]Cosmic bakery": "宇宙烘焙坊", + "[Achievement name 7]Galactic bakery": "银河烘焙坊", + "[Achievement name 8]Universal bakery": "宇宙级烘焙坊", + "[Achievement name 9]Timeless bakery": "永恒烘焙坊", + "[Achievement name 10]Infinite bakery": "无限烘焙坊", + "[Achievement name 11]Immortal bakery": "不朽烘焙坊", + "[Achievement name 12]Don't stop me now": "现在别阻止我", + "[Achievement name 13]You can stop now": "现在可以了", + "[Achievement name 14]Cookies all the way down": "无限回溯", + "[Achievement name 15]Overdose": "过量", + "[Achievement name 16]Casual baking": "休闲烘焙", + "[Achievement name 17]Hardcore baking": "硬核烘焙", + "[Achievement name 18]Steady tasty stream": "源源不断的美食", + "[Achievement name 19]Cookie monster": "饼干怪物", + "[Achievement name 20]Mass producer": "大规模生产者", + "[Achievement name 21]Cookie vortex": "饼干涡旋", + "[Achievement name 22]Cookie pulsar": "饼干脉冲", + "[Achievement name 23]Cookie quasar": "饼干类星体", + "[Achievement name 24]Oh hey, you're still here": "嘿,你还在这啊", + "[Achievement name 25]Let's never bake again": "我们不要再烘焙", + "[Achievement name 26]Sacrifice": "献祭", + "[Achievement name 27]Oblivion": "遗忘", + "[Achievement name 28]From scratch": "从头开始", + "[Achievement name 29]Neverclick": "从不点击", + "[Achievement name 30]Clicktastic": "点击万岁", + "[Achievement name 31]Clickathlon": "点击马拉松", + "[Achievement name 32]Clickolympics": "点击奥运", + "[Achievement name 33]Clickorama": "点击全景", + "[Achievement name 34]Click": "点击", + "[Achievement name 35]Double-click": "双击", + "[Achievement name 36]Mouse wheel": "鼠标滚轮", + "[Achievement name 37]Of Mice and Men": "人鼠之间", + "[Achievement name 38]The Digital": "数字化", + "[Achievement name 39]Just wrong": "不对的", + "[Achievement name 40]Grandma's cookies": "老太婆的饼干", + "[Achievement name 41]Sloppy kisses": "湿吻", + "[Achievement name 42]Retirement home": "养老院", + "[Achievement name 43]Bought the farm": "买下农场", + "[Achievement name 44]Reap what you sow": "自食其果", + "[Achievement name 45]Farm ill": "农场热", + "[Achievement name 46]Production chain": "生产线", + "[Achievement name 47]Industrial revolution": "产业革命", + "[Achievement name 48]Global warming": "全球变暖", + "[Achievement name 49]You know the drill": "你直到该怎么做", + "[Achievement name 50]Excavation site": "发掘现场", + "[Achievement name 51]Hollow the planet": "挖空这个星球", + "[Achievement name 52]Expedition": "远征队", + "[Achievement name 53]Galactic highway": "星系高速通道", + "[Achievement name 54]Far far away": "很远很远", + "[Achievement name 55]Transmutation": "蜕变", + "[Achievement name 56]Transmogrification": "变形", + "[Achievement name 57]Gold member": "黄金会员", + "[Achievement name 58]A whole new world": "全新世界", + "[Achievement name 59]Now you're thinking": "你说对了", + "[Achievement name 60]Dimensional shift": "次元位移", + "[Achievement name 61]Time warp": "时间错位", + "[Achievement name 62]Alternate timeline": "备用时间轴", + "[Achievement name 63]Rewriting history": "重写历史", + "[Achievement name 64]One with everything": "包罗万象", + "[Achievement name 65]Mathematician": "数学家", + "[Achievement name 66]Base 10": "十进制", + "[Achievement name 67]Golden cookie": "黄金饼干", + "[Achievement name 68]Lucky cookie": "幸运饼干", + "[Achievement name 69]A stroke of luck": "幸运一击", + "[Achievement name 70]Cheated cookies taste awful": "作弊得来的饼干难吃得要死", + "[Achievement name 71]Uncanny clicker": "神秘点击者", + "[Achievement name 72]Builder": "建造者", + "[Achievement name 73]Architect": "建筑师", + "[Achievement name 74]Enhancer": "增强者", + "[Achievement name 75]Augmenter": "增量者", + "[Achievement name 76]Cookie-dunker": "喜欢泡饼干", + "[Achievement name 77]Fortune": "幸运", + "[Achievement name 78]True Neverclick": "真从不点击", + "[Achievement name 79]Elder nap": "小憩的长者", + "[Achievement name 80]Elder slumber": "沉睡的长者", + "[Achievement name 81]Elder": "长者", + "[Achievement name 82]Elder calm": "平静的长者", + "[Achievement name 83]Engineer": "工程师", + "[Achievement name 84]Leprechaun": "魔法精灵", + "[Achievement name 85]Black cat's paw": "黑猫的爪子", + "[Achievement name 86]Nihilism": "虚无主义", + "[Achievement name 87]Antibatter": "反面糊", + "[Achievement name 88]Quirky quarks": "诡异夸克", + "[Achievement name 89]It does matter!": "确实重要!", + "[Achievement name 90]Upgrader": "升级者", + "[Achievement name 91]Centennial": "百年纪念", + "[Achievement name 92]Hardcore": "硬核", + "[Achievement name 93]Speed baking I": "快速烘焙 I", + "[Achievement name 94]Speed baking II": "快速烘焙 II", + "[Achievement name 95]Speed baking III": "快速烘焙 III", + "[Achievement name 96]Getting even with the oven": "找烤箱算账", + "[Achievement name 97]Now this is pod-smashing": "这就是烘焙舱粉碎者", + "[Achievement name 98]Chirped out": "Chirpy出局", + "[Achievement name 99]Follow the white rabbit": "跟着白兔走", + "[Achievement name 100]Clickasmic": "点击交叉", + "[Achievement name 101]Friend of the ancients": "古人的朋友", + "[Achievement name 102]Ruler of the ancients": "古人的统治者", + "[Achievement name 103]Wholesome": "有益健康", + "[Achievement name 104]Just plain lucky": "就是运气好", + "[Achievement name 105]Itchscratcher": "挠痒者", + "[Achievement name 106]Wrinklesquisher": "饼干虫克星", + "[Achievement name 107]Moistburster": "潮湿破坏者", + "[Achievement name 108]Spooky cookies": "恐怖饼干", + "[Achievement name 109]Coming to town": "即将来临", + "[Achievement name 110]All hail Santa": "圣诞老人万岁", + "[Achievement name 111]Let it snow": "下雪吧", + "[Achievement name 112]Oh deer": "哦,驯鹿", + "[Achievement name 113]Sleigh of hand": "手刃驯鹿", + "[Achievement name 114]Reindeer sleigher": "驯鹿杀手", + "[Achievement name 115]Perfected agriculture": "完美农业", + "[Achievement name 116]Ultimate automation": "终极自动化", + "[Achievement name 117]Can you dig it": "你懂挖矿吗", + "[Achievement name 118]Type II civilization": "第二类文明", + "[Achievement name 119]Gild wars": "镀金战争", + "[Achievement name 120]Brain-split": "脑裂", + "[Achievement name 121]Time duke": "时间公爵", + "[Achievement name 122]Molecular maestro": "分子大师", + "[Achievement name 123]Lone photon": "孤独的光子", + "[Achievement name 124]Dazzling glimmer": "晃眼的微光", + "[Achievement name 125]Blinding flash": "刺眼的闪光", + "[Achievement name 126]Unending glow": "无尽的辉光", + "[Achievement name 127]Lord of Constructs": "建造之王", + "[Achievement name 128]Lord of Progress": "进步之王", + "[Achievement name 129]Bicentennial": "二百年纪念", + "[Achievement name 130]Lovely cookies": "可爱的饼干", + "[Achievement name 131]Centennial and a half": "一百五十年纪念", + "[Achievement name 132]Tiny cookie": "迷你饼干", + "[Achievement name 133]You win a cookie": "你赢得一块饼干", + "[Achievement name 134]Click delegator": "点击委托人", + "[Achievement name 135]Gushing grannies": "火力全开的老太婆", + "[Achievement name 136]I hate manure": "我讨厌粪肥", + "[Achievement name 137]Never dig down": "别往脚下挖", + "[Achievement name 138]The incredible machine": "不可思议的机器", + "[Achievement name 139]And beyond": "迈向新纪元", + "[Achievement name 140]Magnum Opus": "杰作", + "[Achievement name 141]With strange eons": "伴随着奇异的永恒", + "[Achievement name 142]Spacetime jigamaroo": "时空跳跃", + "[Achievement name 143]Supermassive": "超大质量", + "[Achievement name 144]Praise the sun": "赞美太阳", + "[Achievement name 145]Clickageddon": "点击决战", + "[Achievement name 146]Clicknarok": "点击毁灭", + "[Achievement name 147]Extreme polydactyly": "极为多趾", + "[Achievement name 148]Dr. T": "T博士", + "[Achievement name 149]The old never bothered me anyway": "反正老人从没让我烦过", + "[Achievement name 150]Homegrown": "自家种植", + "[Achievement name 151]Technocracy": "技术管理", + "[Achievement name 152]The center of the Earth": "地球中心", + "[Achievement name 153]We come in peace": "我们为了和平而来", + "[Achievement name 154]The secrets of the universe": "宇宙的秘密", + "[Achievement name 155]Realm of the Mad God": "狂神领域", + "[Achievement name 156]Forever and ever": "地久天长", + "[Achievement name 157]Walk the planck": "运用普朗克", + "[Achievement name 158]Rise and shine": "日升闪耀", + "[Achievement name 159]God complex": "天神情结", + "[Achievement name 160]Third-party": "第三方", + "[Achievement name 161]Dematerialize": "非物质化", + "[Achievement name 162]Nil zero zilch": "零零零", + "[Achievement name 163]Transcendence": "超卓", + "[Achievement name 164]Obliterate": "湮灭", + "[Achievement name 165]Negative void": "负空虚感", + "[Achievement name 166]The hunt is on": "狩猎开始了", + "[Achievement name 167]Egging on": "怂恿中", + "[Achievement name 168]Mass Easteria": "大量复活节物件", + "[Achievement name 169]Hide & seek champion": "躲猫猫冠军", + "[Achievement name 170]What's in a name": "名字的含义", + "[Achievement name 171]Pretty penny": "一大笔钱", + "[Achievement name 172]Fit the bill": "正合需要", + "[Achievement name 173]A loan in the dark": "秘密贷款", + "[Achievement name 174]Need for greed": "贪婪之需", + "[Achievement name 175]It's the economy, stupid": "笨蛋,重点在经济", + "[Achievement name 176]Your time to shrine": "该你供奉了", + "[Achievement name 177]Shady sect": "神秘宗教", + "[Achievement name 178]New-age cult": "新时代膜拜", + "[Achievement name 179]Organized religion": "有组织的宗教", + "[Achievement name 180]Fanaticism": "狂热盲信", + "[Achievement name 181]Bewitched": "已然着魔", + "[Achievement name 182]The sorcerer's apprentice": "法师的学徒", + "[Achievement name 183]Charms and enchantments": "魔法加持", + "[Achievement name 184]Curses and maledictions": "诅咒连连", + "[Achievement name 185]Magic kingdom": "魔法王国", + "[Achievement name 186]Vested interest": "既得利益", + "[Achievement name 187]New world order": "新世界秩序", + "[Achievement name 188]Hocus pocus": "疯狂念咒", + "[Achievement name 189]Finger clickin' good": "手指点击大好", + "[Achievement name 190]Panic at the bingo": "疯狂宾果", + "[Achievement name 191]Rake in the dough": "发财", + "[Achievement name 192]Quarry on": "继续开采", + "[Achievement name 193]Yes I love technology": "我爱科技", + "[Achievement name 194]Paid in full": "全款交付", + "[Achievement name 195]Church of Cookiology": "饼干学教堂", + "[Achievement name 196]Too many rabbits, not enough hats": "惊喜连连,应接不暇", + "[Achievement name 197]The most precious cargo": "最珍贵的货物", + "[Achievement name 198]The Aureate": "金灿灿", + "[Achievement name 199]Ever more hideous": "愈加可怕", + "[Achievement name 200]Be kind, rewind": "与人为善,倒回去", + "[Achievement name 201]Infinitesimal": "无限小", + "[Achievement name 202]A still more glorious dawn": "一个更加璀璨的黎明", + "[Achievement name 203]Rebirth": "重生", + "[Achievement name 204]Here you go": "就是这样", + "[Achievement name 205]Resurrection": "复活", + "[Achievement name 206]Reincarnation": "转生", + "[Achievement name 207]Endless cycle": "无尽循环", + "[Achievement name 208]The agemaster": "长者大师", + "[Achievement name 209]To oldly go": "老而弥坚", + "[Achievement name 210]Gardener extraordinaire": "杰出园丁", + "[Achievement name 211]Tectonic ambassador": "地壳构造大使", + "[Achievement name 212]Rise of the machines": "机器的觉醒", + "[Achievement name 213]Acquire currency": "广泛流传", + "[Achievement name 214]Zealotry": "狂热", + "[Achievement name 215]The wizarding world": "巫师世界", + "[Achievement name 216]Parsec-masher": "秒差捣碎器", + "[Achievement name 217]The work of a lifetime": "毕生事业", + "[Achievement name 218]A place lost in time": "迷失在时空中", + "[Achievement name 219]Heat death": "热寂", + "[Achievement name 220]Microcosm": "微观世界", + "[Achievement name 221]Bright future": "前程似锦", + "[Achievement name 222]Here be dragon": "龙出没", + "[Achievement name 223]How?": "怎么办到的?", + "[Achievement name 224]The land of milk and cookies": "牛奶与饼干之地", + "[Achievement name 225]He who controls the cookies controls the universe": "得饼干者,得宇宙", + "[Achievement name 226]Tonight on Hoarders": "囤积者之夜", + "[Achievement name 227]Are you gonna eat all that?": "你要全吃了吗?", + "[Achievement name 228]We're gonna need a bigger bakery": "我需要一间更大的烘焙坊", + "[Achievement name 229]In the mouth of madness": "陷入疯狂", + "[Achievement name 230]Brought to you by the letter
": "由字母呈现
", + "[Achievement name 231]A world filled with cookies": "一个充满饼干的世界", + "[Achievement name 232]When this baby hits 36 quadrillion cookies per hour": "这宝贝每小时产出 3.6 京饼干", + "[Achievement name 233]Fast and delicious": "快捷,美味", + "[Achievement name 234]Cookiehertz : a really, really tasty hertz": "饼干赫兹,非常非常美味的赫兹", + "[Achievement name 235]Woops, you solved world hunger": "哇,你解决了世界饥饿问题", + "[Achievement name 236]Turbopuns": "涡轮双关", + "[Achievement name 237]Faster menner": "快上加快", + "[Achievement name 238]And yet you're still hungry": "你还是很饿", + "[Achievement name 239]The Abakening": "烘焙觉醒", + "[Achievement name 240]There's really no hard limit to how long these achievement names can be and to be quite honest I'm rather curious to see how far we can go.
Adolphus W. Green (1844–1917) started as the Principal of the Groton School in 1864. By 1865, he became second assistant librarian at the New York Mercantile Library; from 1867 to 1869, he was promoted to full librarian. From 1869 to 1873, he worked for Evarts, Southmayd & Choate, a law firm co-founded by William M. Evarts, Charles Ferdinand Southmayd and Joseph Hodges Choate. He was admitted to the New York State Bar Association in 1873.
Anyway, how's your day been?": "对这些成就名称的长度确实没有任何硬性限制,老实说,我很想知道最长可以有多长。
阿道弗斯·W·格林(1844–1917)于 1864 年开始担任格罗顿中学的校长。1865 年时,他成为纽约商业图书馆的第二助理馆员;1867 年至 1869 年,他被提拔为正式馆员。1869 年至 1873 年,他就职于 Evarts, Southmayd & Choate,这是一家由威廉·M·埃瓦茨,查尔斯·费迪南·索斯梅德和约瑟夫·霍奇斯·乔特共同创建的一间律师事务所。他于 1873 年获得纽约州律师执照。
你今天过得怎么样?", + "[Achievement name 241]Fast": "快速", + "[Achievement name 242]Bicentennial and a half": "二百五十年纪念", + "[Achievement name 243]Tabloid addiction": "小报上瘾", + "[Achievement name 244]Clickastrophe": "点击灾难", + "[Achievement name 245]Clickataclysm": "点击灾变", + "[Achievement name 246]Thumbs, phalanges, metacarpals": "拇指、指骨、掌骨", + "[Achievement name 247]Polymath": "博学家", + "[Achievement name 248]The elder scrolls": "长者卷轴", + "[Achievement name 249]To crumbs, you say?": "做一无是处的人怎么样?", + "[Achievement name 250]Seedy business": "种子生意", + "[Achievement name 251]Freak fracking": "怪异的水力压裂技术", + "[Achievement name 252]Modern times": "摩登时代", + "[Achievement name 253]The nerve of war": "战争的底气", + "[Achievement name 254]Wololo": "喔咯咯", + "[Achievement name 255]And now for my next trick, I'll need a volunteer from the audience": "接下来的魔术,我需要有观众自告奋勇上台来。", + "[Achievement name 256]It's not delivery": "这不是快递", + "[Achievement name 257]Gold, Jerry! Gold!": "这是黄金啊,杰瑞!黄金啊!", + "[Achievement name 258]Forbidden zone": "禁区", + "[Achievement name 259]cookie clicker forever and forever a hundred years cookie clicker, all day long forever, forever a hundred times, over and over cookie clicker adventures dot com": "cookie clicker 万岁,永远一百年的 cookie clicker,永远终日,永远一百次,周而复始,cookie clicker 大冒险点 com", + "[Achievement name 260]Scientists baffled everywhere": "科学家四处碰壁", + "[Achievement name 261]Harmony of the spheres": "天体和谐", + "[Achievement name 262]Last Chance to See": "最后一眼", + "[Achievement name 263]Early bird": "早期的鸟儿", + "[Achievement name 264]Fading luck": "转瞬即逝的幸运", + "[Achievement name 265]Eldeer": "老鹿", + "[Achievement name 266]Dude, sweet": "兄弟,真甜", + "[Achievement name 267]Sugar rush": "糖块热", + "[Achievement name 268]Year's worth of cavities": "一年的蛀牙", + "[Achievement name 269]Hand-picked": "亲手采摘", + "[Achievement name 270]Sugar sugar": "糖上加糖", + "[Achievement name 271]All-natural cane sugar": "全天然蔗糖", + "[Achievement name 272]Sweetmeats": "肥美", + "[Achievement name 273]Tricentennial": "三年内纪念", + "[Achievement name 274]Knead for speed": "快速揉捏", + "[Achievement name 275]Well the cookies start coming and they don't stop coming": "饼干一旦开始生产,就停不下脚步", + "[Achievement name 276]I don't know if you've noticed but all these icons are very slightly off-center": "我不知道你有没有注意到这些图标都略微偏离了中心", + "[Achievement name 277]The proof of the cookie is in the baking": "饼干的好坏在于烘焙", + "[Achievement name 278]If it's worth doing, it's worth overdoing": "如果值得,再多也不为过", + "[Achievement name 279]The dreams in which I'm baking are the best I've ever had": "我做过的最棒的一个梦就是在梦中烘焙", + "[Achievement name 280]Set for life": "这辈子不用愁了", + "[Achievement name 281]You and the beanstalk": "你与豆茎", + "[Achievement name 282]Romancing the stone": "绿宝石", + "[Achievement name 283]Ex machina": "人造意识", + "[Achievement name 284]And I need it now": "我现在就要", + "[Achievement name 285]Pray on the weak": "为弱者祈祷", + "[Achievement name 286]It's a kind of magic": "这是一种魔法", + "[Achievement name 287]Make it so": "成为现实", + "[Achievement name 288]All that glitters is gold": "发光的都是金子", + "[Achievement name 289]Here he comes": "他来了", + "[Achievement name 290]Way back then": "回到那时", + "[Achievement name 291]Exotic matter": "奇异物质", + "[Achievement name 292]At the end of the tunnel": "隧道尽头", + "[Achievement name 293]Click (starring Adam Sandler)": "点击(《Click》)(亚当·桑德勒主演)", + "[Achievement name 294]Frantiquities": "疯狂古物", + "[Achievement name 295]Overgrowth": "生长过度", + "[Achievement name 296]Sedimentalism": "多愁善感", + "[Achievement name 297]Labor of love": "义务劳动", + "[Achievement name 298]Reverse funnel system": "反向漏斗系统", + "[Achievement name 299]Thus spoke you": "因你而为", + "[Achievement name 300]Manafest destiny": "咒咒天命", + "[Achievement name 301]Neither snow nor rain nor heat nor gloom of night": "不畏风雪,不分昼夜", + "[Achievement name 302]I've got the Midas touch": "我会点石成金之术", + "[Achievement name 303]Which eternal lie": "永无止尽", + "[Achievement name 304]Déjà vu": "似曾相识", + "[Achievement name 305]Powers of Ten": "十的次方", + "[Achievement name 306]Now the dark days are gone": "黑暗的日子一去不复返", + "[Achievement name 307]Freaky jazz hands": "怪异爵士手", + "[Achievement name 308]Methuselah": "老寿星", + "[Achievement name 309]Huge tracts of land": "广袤大地", + "[Achievement name 310]D-d-d-d-deeper": "更更更更深", + "[Achievement name 311]Patently genius": "毫无疑问的天才", + "[Achievement name 312]A capital idea": "绝妙主意", + "[Achievement name 313]It belongs in a bakery": "它属于烘焙坊", + "[Achievement name 314]Motormouth": "喋喋不休", + "[Achievement name 315]Been there done that": "做过", + "[Achievement name 316]Phlogisticated substances": "懂的自然懂", + "[Achievement name 317]Bizarro world": "奇异世界", + "[Achievement name 318]The long now": "长久来来", + "[Achievement name 319]Chubby hadrons": "丰满的强子", + "[Achievement name 320]Palettable": "可调色", + "[Achievement name 321]Bibbidi-bobbidi-boo": "Bibbidi-bobbidi-boo(变身咒语)", + "[Achievement name 322]I'm the wiz": "我是奇才", + "[Achievement name 323]A wizard is you": "奇才如你", + "[Achievement name 324]Four-leaf cookie": "四叶饼干", + "[Achievement name 325]Lucked out": "侥幸成功", + "[Achievement name 326]What are the odds": "胜算如何", + "[Achievement name 327]Grandma needs a new pair of shoes": "老太婆需要一双新鞋", + "[Achievement name 328]Million to one shot, doc": "百万分之一的几率,医生", + "[Achievement name 329]As luck would have it": "运气使然", + "[Achievement name 330]Ever in your favor": "眷顾于你", + "[Achievement name 331]Be a lady": "做个淑女", + "[Achievement name 332]Dicey business": "赌场风云", + "[Achievement name 333]Fingers crossed": "祈祷", + "[Achievement name 334]Just a statistic": "统计学罢了", + "[Achievement name 335]Murphy's wild guess": "墨菲的胡乱猜想", + "[Achievement name 336]Let's leaf it at that": "任其生长", + "[Achievement name 337]The ultimate clickdown": "终极点击", + "[Achievement name 338]Aged well": "优雅老去", + "[Achievement name 339]101st birthday": "101 岁生日", + "[Achievement name 340]But wait 'til you get older": "但是等到你變老", + "[Achievement name 341]Harvest moon": "获月", + "[Achievement name 342]Mine?": "矿井?", + "[Achievement name 343]In full gear": "全副武装", + "[Achievement name 344]Treacle tart economics": "糖浆馅饼经济", + "[Achievement name 345]Holy cookies, grandma!": "神圣饼干,老太婆!", + "[Achievement name 346]The Prestige": "威望", + "[Achievement name 347]That's just peanuts to space": "和太空相比,微不足道", + "[Achievement name 348]Worth its weight in lead": "价值连城", + "[Achievement name 349]What happens in the vortex stays in the vortex": "那些发生在其他次元的事就留在那里吧", + "[Achievement name 350]Invited to yesterday's party": "受邀参加昨天的聚会", + "[Achievement name 351]Downsizing": "缩小人生", + "[Achievement name 352]My eyes": "我的眼镜", + "[Achievement name 353]Maybe a chance in hell, actually": "有可能", + "[Achievement name 354]Make like a tree": "开枝散叶", + "[Achievement name 355]Cave story": "洞窟物语", + "[Achievement name 356]In-cog-neato": "啮合流畅", + "[Achievement name 357]Save your breath because that's all you've got left": "别费口舌了,你就剩这些了", + "[Achievement name 358]Vengeful and almighty": "复仇心机与全能之神", + "[Achievement name 359]Spell it out for you": "施展法术", + "[Achievement name 360]Space space space space space": "太空太空太空太空太空", + "[Achievement name 361]Don't get used to yourself, you're gonna have to change": "不要安于现状,你得做出改变", + "[Achievement name 362]Objects in the mirror dimension are closer than they appear": "镜子里映出的物体实际比看上去要近", + "[Achievement name 363]Groundhog day": "今天暂时停止", + "[Achievement name 364]A matter of perspective": "角度问题", + "[Achievement name 365]Optical illusion": "视觉幻象", + "[Achievement name 366]Jackpot": "累积奖池", + "[Achievement name 367]So much to do so much to see": "无尽的任务,无尽的琐事", + "[Achievement name 368]Running with scissors": "夹缝求生", + "[Achievement name 369]Rarefied air": "空气稀薄", + "[Achievement name 370]Push it to the limit": "淋漓尽致", + "[Achievement name 371]Green cookies sleep furiously": "绿色饼干睡得狂野", + "[Achievement name 372]Panic! at Nabisco": "纳贝斯克恐慌", + "[Achievement name 373]Bursting at the seams": "饼满为患", + "[Achievement name 374]Just about full": "快装不下了", + "[Achievement name 375]Hungry for more": "渴望更多", + "[Achievement name 376]All the other kids with the pumped up clicks": "所有使用豪华鼠标的孩子们", + "[Achievement name 377]One...more...click...": "再……点……一下……", + "[Achievement name 378]Botany enthusiast": "植物爱好者", + "[Achievement name 379]Green, aching thumb": "酸爽的园艺才能", + "[Achievement name 380]In the garden of Eden (baby)": "伊甸园中(宝贝)", + "[Achievement name 381]Keeper of the conservatory": "温室守门人", + "[Achievement name 382]Seedless to nay": "拒绝无子", + "[Achievement name 383]You get nothing": "你一无所获", + "[Achievement name 384]Humble rebeginnings": "低调重启", + "[Achievement name 385]The end of the world": "世界尽头", + "[Achievement name 386]Oh, you're back": "哦,你回来了", + "[Achievement name 387]Lazarus": "东山再起", + "[Achievement name 388]Leisurely pace": "从容不迫", + "[Achievement name 389]Hypersonic": "高超音速", + "[Achievement name 390]Feed me, Orteil": "喂饱我,Orteil", + "[Achievement name 391]And then what?": "然后呢?", + "[Achievement name 392]Tricentennial and a half": "三百五十年纪念", + "[Achievement name 393]Quadricentennial": "四百年纪念", + "[Achievement name 394]Quadricentennial and a half": "四百五十年纪念", + "[Achievement name 395]Quincentennial": "五百年纪念", + "[Achievement name 396]Maillard reaction": "美拉德反应", + "[Achievement name 397]When the cookies ascend just right": "飞升时饼干恰到其数", + "[Achievement name 398]With her finger and her thumb": "用她的食指和拇指", + "[Achievement name 399]Defense of the ancients": "古人的防禦", + "[Achievement name 400]Sharpest tool in the shed": "厉害极了", + "[Achievement name 401]Hey now, you're a rock": "嘿,你很棒", + "[Achievement name 402]Break the mold": "打破陈规", + "[Achievement name 403]Get the show on, get paid": "办好事,赚大钱", + "[Achievement name 404]My world's on fire, how about yours": "我的世界在燃烧,你的呢", + "[Achievement name 405]The meteor men beg to differ": "气象员有不同意见", + "[Achievement name 406]Only shooting stars": "唯有流星", + "[Achievement name 407]We could all use a little change": "我们都能做一点改变", + "[Achievement name 408]Your brain gets smart but your head gets dumb": "你变聪明了,但变沉默了", + "[Achievement name 409]The years start coming": "岁月开始流逝", + "[Achievement name 410]What a concept": "多棒的想法啊", + "[Achievement name 411]You'll never shine if you don't glow": "如果不去尝试,你永远不会成功", + "[Achievement name 412]You'll never know if you don't go": "如果不行动,你永远不会明白", + "[Achievement name 413]Self-contained": "独立", + "[Achievement name 414]Threw you for a loop": "出乎你的预料", + "[Achievement name 415]The sum of its parts": "各尽其职", + "[Achievement name 416]Bears repeating": "值得重复", + "[Achievement name 417]More of the same": "了无新意", + "[Achievement name 418]Last recurse": "最终递归", + "[Achievement name 419]Out of one, many": "合一为众", + "[Achievement name 420]An example of recursion": "递归实例", + "[Achievement name 421]For more information on this achievement, please refer to its title": "有关此成就的更多信息,请参考它的标题", + "[Achievement name 422]I'm so meta, even this achievement": "我很棒,这项也成就也是", + "[Achievement name 423]Never get bored": "从不感到无聊", + "[Achievement name 424]The needs of the many": "多数人的需求", + "[Achievement name 425]Eating its own": "自己吃", + "[Achievement name 426]We must go deeper": "必须继续深入", + "[Achievement name 427]Sierpinski rhomboids": "谢宾斯基长斜方形", + "[Achievement name 428]Gotta go fast": "要加速了", + "[Achievement name 429]I think it's safe to say you've got it made": "可以肯定地说,你已经成功了", + "[Achievement name 430]Renaissance baker": "文艺复兴烘焙师", + "[Achievement name 431]Veteran": "老资格", + "[Achievement name 432]Thick-skinned": "皮厚点", + "[Achievement name 433]F12": "F12", + "[Achievement name 434]Variable success": "变量成功", + "[Achievement name 435]No comments": "不予置评", + "[Achievement name 436]Up to code": "关乎代码", + "[Achievement name 437]Works on my machine": "在我的机器人一切正常", + "[Achievement name 438]Technical debt": "技术债", + "[Achievement name 439]Mind your language": "谨言慎行", + "[Achievement name 440]Inconsolable": "悲痛欲绝", + "[Achievement name 441]Closure": "闭包", + "[Achievement name 442]Dude what if we're all living in a simulation like what if we're all just code on a computer somewhere": "兄弟,要是我们都生在一个模拟世界中,就好像我们坐在哪里对着屏幕写代码呢", + "[Achievement name 443]Taking the back streets": "走捷径", + "[Achievement name 444]Inherited prototype": "继承的原型", + "[Achievement name 445]A model of document object": "文档对象模型", + "[Achievement name 446]First-class citizen": "第一类公民", + "[Achievement name 447]Alexandria": "亚历山德里亚", + "[Achievement name 448]Bake him away, toys": "玩具们,把他烤了", + "[Achievement name 449]You're #1 so why try harder": "你都第一名了,干嘛还要努力", + "[Achievement name 450]Haven't even begun to peak": "还没开始登顶呢", + "[Achievement name 451]A sometimes food": "偶尔吃一吃的食物", + "[Achievement name 452]Not enough of a good thing": "好事不嫌多", + "[Achievement name 453]Horn of plenty": "丰饶之角", + "[Achievement name 454]Smurf account": "小号", + "[Achievement name 455]If at first you don't succeed": "你要是一开始没有成功", + "[Achievement name 456]O Fortuna": "哦,命运女神", + "[Achievement name 457]Initial public offering": "首次公开募股", + "[Achievement name 458]Rookie numbers": "新秀数据", + "[Achievement name 459]No nobility in poverty": "贫穷无贵贱", + "[Achievement name 460]Full warehouses": "满仓", + "[Achievement name 461]Make my day": "让我高兴高兴", + "[Achievement name 462]Buy buy buy": "买买买", + "[Achievement name 463]Gaseous assets": "无形资产", + "[Achievement name 464]Pyramid scheme": "传销", + "[Achievement name 465]Jellicles": "杰力克猫", + "[Achievement name 466]Quincentennial and a half": "五百五十年纪念", + "[Achievement name 467]What did we even eat before these": "我们在这之前吃了什么", + "[Achievement name 468]Heavy flow": "多量", + "[Achievement name 469]More you say?": "说得越多?", + "[Achievement name 470]Large and in charge": "大局在握", + "[Achievement name 471]Absolutely stuffed": "绝对饱了", + "[Achievement name 472]It's only wafer-thin": "已经非常薄了", + "[Achievement name 473]Clickety split": "极速点击", + "[Achievement name 474]Gotta hand it to you": "手到擒来", + "[Achievement name 475]Okay boomer": "好的,老古板", + "[Achievement name 476]Overripe": "熟透了", + "[Achievement name 477]Rock on": "来吧,矿石", + "[Achievement name 478]Self-manmade man": "白手起家人", + "[Achievement name 479]Checks out": "提款", + "[Achievement name 480]Living on a prayer": "以为祈祷而生", + "[Achievement name 481]Higitus figitus migitus mum": "Higitus figitus migitus mum(咒语)", + "[Achievement name 482]The incredible journey": "不可思议的旅程", + "[Achievement name 483]Just a phase": "只是一个阶段", + "[Achievement name 484]Don't let me leave, Murph": "别让我离去,墨菲", + "[Achievement name 485]Caveman to cosmos": "穴居人宇宙", + "[Achievement name 486]Particular tastes": "特殊口味", + "[Achievement name 487]A light snack": "小吃", + "[Achievement name 488]Tempting fate": "玩命", + "[Achievement name 489]Tautological": "赘述", + "[Achievement name 490]Curly braces": "大括号", + "[Achievement name 491]Seven horseshoes": "七块马蹄铁", + "[Achievement name 492]Olden days": "旧日", + "[Achievement name 493]The devil's workshop": "恶魔的工坊", + "[Achievement name 494]In the green": "血气方刚", + "[Achievement name 495]Mountain out of a molehill, but like in a good way": "小题大做好的一面", + "[Achievement name 496]The wheels of progress": "前进的动力", + "[Achievement name 497]That's rich": "真富有", + "[Achievement name 498]Preaches and cream": "完美无缺", + "[Achievement name 499]Magic thinking": "魔法思维", + "[Achievement name 500]Is there life on Mars?": "火星上有生命体吗?", + "[Achievement name 501]Bad chemistry": "讨厌的化学", + "[Achievement name 502]Reduced to gibbering heaps": "变成语无伦次的胖子", + "[Achievement name 503]Back already?": "回来了吗?", + "[Achievement name 504]Nuclear throne": "废土之王", + "[Achievement name 505]Making light of the situation": "轻描淡写", + "[Achievement name 506]Flip a cookie. Chips, I win. Crust, you lose.": "掷饼干。碎屑,我赢。饼皮,你输。", + "[Achievement name 507]In and of itself": "本身有其价值", + "[Achievement name 508]Duck typing": "动态类型", + "[Achievement name 509]They'll never know what hit 'em": "他们永远不会知道是被什么打中了", + "[Achievement name 510]Well-versed": "精通", + "[Achievement name 511]Ripe for the picking": "精通时机成熟", + "[Achievement name 512]Unreal": "虚幻", + "[Achievement name 513]Once you've seen one": "一旦你亲眼所见", + "[Achievement name 514]Spoils and plunder": "战利品和掠夺品", + "[Achievement name 515]Nobody exists on purpose, nobody belongs anywhere": "没有人是自己决定存在于世的,也没有人永远归属某处", + "[Achievement name 516]Hyperspace expressway": "超空间高速通道", + "[Achievement name 517]Versatile": "多才多艺", + "[Achievement name 518]You are inevitable": "你的存在是必然的", + "[Achievement name 519]Away from this place": "远离此地", + "[Achievement name 520]Everywhere at once": "无所不在", + "[Achievement name 521]Reject reality, substitute your own": "坚持己见", + "[Achievement name 522]Fringe": "危机边缘", + "[Achievement name 523]Coherence": "一如既往", + "[Achievement name 524]Earth-616": "地球-616", + "[Achievement name 525]Strange topologies": "怪异拓扑", + "[Achievement name 526]Grand design": "伟大设计", + "[Achievement name 527]Ecumenopolis": "世界都市", + "[Achievement name 528]The full picture": "全景图", + "[Achievement name 529]When there's nothing left to add": "一应俱全", + "[Achievement name 530]Sexcentennial": "六百年纪念", + "[Achievement name 531]Keep going until I say stop": "继续走,直到我说停", + "[Achievement name 532]But I didn't say stop, did I?": "但我没说听,对吧?", + "[Achievement name 533]With unrivaled fervor": "无比热情", + "[Achievement name 534]Think big": "大胆想", + "[Achievement name 535]Hypersize me": "惊喜", + "[Achievement name 536]Max capacity": "最大容量", + "[Achievement name 537]Liquid assets": "流动资产", + "[Achievement name 538]Stifling the press": "壓制媒體", + "[Achievement name 539]It's big brain time": "這是大腦的大時間", + "[Achievement name 540]Just my imagination": "只是我的想像", + "[Achievement name 541]Now there's an idea": "現在有一個想法", + "[Achievement name 542]The organ that named itself": "給自己命名的器官", + "[Achievement name 543]Gyrification": "旋轉", + "[Achievement name 544]A trademarked portmanteau of \"imagination\" and \"engineering\"": "“想像力”和“工程”的商標組合", + "[Achievement name 545]Mindfulness": "正念", + "[Achievement name 546]The 10% myth": "10%的神話", + "[Achievement name 547]Don't think about it too hard": "不要想得太難", + "[Achievement name 548]Though fools seldom differ": "雖然傻瓜很少有不同", + "[Achievement name 549]Looking kind of dumb": "看起來有點傻", + "[Achievement name 550]A beautiful mind": "美麗的心靈", + "[Achievement name 551]Cardinal synapses": "主要突觸", + "[Achievement name 552]Positive thinking": "正面思想", + "[Achievement name 553]The thought that counts": "重要的想法", + "[Achievement name 554]Unthinkable": "不可思議", + "[Achievement name 555]Gifted": "天才", + "[Achievement name 556]They moistly come at night": "他們在晚上潮濕地來", + "[Achievement name 557]It's grown on you": "它長在你身上", + "[Achievement name 558]Don't let the walls cave in on you": "不要讓牆壁塌陷在你身上", + "[Achievement name 559]Replaced by robots": "被機器人取代", + "[Achievement name 560]Financial prodigy": "金融神童", + "[Achievement name 561]And I will pray to a big god": "我會向大神祈禱", + "[Achievement name 562]Shosple Colupis": "小販Colupis", + "[Achievement name 563]False vacuum": "假真空", + "[Achievement name 564]Metallic taste": "金屬味", + "[Achievement name 565]Swiss cheese": "瑞士芝士", + "[Achievement name 566]But the future refused to change": "但未來拒絕改變", + "[Achievement name 567]What's the dark matter with you": "你有什麼暗物質", + "[Achievement name 568]Enlightenment": "啟示", + "[Achievement name 569]Never tell me the odds": "永遠不要告訴我賠率", + "[Achievement name 570]Blowing an Apollonian gasket": "吹一個阿波羅尼亞墊圈", + "[Achievement name 571]Get with the program": "使用程式", + "[Achievement name 572]Lost your cosmic marbles": "失去了你的宇宙彈珠", + "[Achievement name 573]By will alone I set my mind in motion": "憑我的意志,我動了腦筋", + "[Achievement name 574]Ain't that a click in the head": "這不是在頭上點擊一下嗎", + "[Achievement name 575]Sexcentennial and a half": "六百年半", + "[Achievement name 576]I am speed": "我就是速度", + "[Achievement name 577]And on and on": "永遠向前", + "[Achievement name 578]Fake it till you bake it": "假裝,直到你烘培", + "[Achievement name 579]History in the baking": "烘焙歷史", + "[Achievement name 580]Baby it's old outside": "寶貝外面已經老了", + "[Achievement name 581]Myriad": "無數", + "[Achievement name 582]Kaizen": "改善", + "[Achievement name 583]Beyond quality": "超越品質", + "[Achievement name 584]Everything happens so much": "一切都發生了這麼多", + "[Achievement name 585]I'll rest when I'm dead": "我死後會休息", + "[Achievement name 586]What do you get for the baker who has everything": "你為擁有一切的麵包師得到什麼", + "[Achievement name 587]Bottomless pit": "無底洞", + "[Achievement name 588]All the stars in heaven": "天堂裡所有的星星" +}); \ No newline at end of file diff --git a/gversion/gs/cookieclicker/logo.png b/gversion/gs/cookieclicker/logo.png new file mode 100644 index 0000000..014099e Binary files /dev/null and b/gversion/gs/cookieclicker/logo.png differ diff --git a/gversion/gs/cookieclicker/main.js b/gversion/gs/cookieclicker/main.js new file mode 100644 index 0000000..78bf1a2 --- /dev/null +++ b/gversion/gs/cookieclicker/main.js @@ -0,0 +1,30389 @@ +/* +All this code is copyright Orteil, 2013-2022. + -with some help, advice and fixes by Nicholas Laux, Debugbro, Opti, the folks at Playsaurus, and lots of people on reddit, Discord, and the DashNet forums + -also includes a bunch of snippets found on stackoverflow.com and others + -want to mod the game? scroll down to the "MODDING API" section +Hello, and welcome to the joyous mess that is main.js. Code contained herein is not guaranteed to be good, consistent, or sane. Most of this is years old at this point and harkens back to simpler, cruder times. In particular I've tried to maintain compatibility with fairly old versions of javascript, which means luxuries such as 'let', arrow functions and string literals are unavailable. +As Cookie Clicker is rife with puns and tricky wordplay, localization was never intended to be possible - but ended up happening anyway as part of the Steam port. As a result, usage of strings is somewhat unorthodox in some places. +Have a nice trip, and stay safe. +Spoilers ahead. +http://orteil.dashnet.org +*/ + +/*===================================================================================== +MISC HELPER FUNCTIONS +=======================================================================================*/ +function l(what) { + return document.getElementById(what); +} +function choose(arr) { + return arr[Math.floor(Math.random() * arr.length)]; +} + +function escapeRegExp(str) { + return str.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g, "\\$&"); +} +function replaceAll(find, replace, str) { + return str.replace(new RegExp(escapeRegExp(find), "g"), replace); +} + +function cap(str) { + return str.charAt(0).toUpperCase() + str.slice(1); +} + +function romanize(num) { + if (isNaN(num)) return NaN; + var digits = String(+num).split(""), + key = [ + "", + "C", + "CC", + "CCC", + "CD", + "D", + "DC", + "DCC", + "DCCC", + "CM", + "", + "X", + "XX", + "XXX", + "XL", + "L", + "LX", + "LXX", + "LXXX", + "XC", + "", + "I", + "II", + "III", + "IV", + "V", + "VI", + "VII", + "VIII", + "IX", + ], + roman = "", + i = 3; + while (i--) roman = (key[+digits.pop() + i * 10] || "") + roman; + return Array(+digits.join("") + 1).join("M") + roman; +} + +//disable sounds coming from soundjay.com (sorry) +var realAudio = + typeof Audio !== "undefined" + ? Audio + : function () { + return {}; + }; //backup real audio +Audio = function (src) { + if (src && src.indexOf("soundjay") > -1) { + Game.Popup("Sorry, no sounds hotlinked from soundjay.com."); + this.play = function () {}; + } else return new realAudio(src); +}; + +if (!Array.prototype.indexOf) { + Array.prototype.indexOf = function (needle) { + for (var i = 0; i < this.length; i++) { + if (this[i] === needle) { + return i; + } + } + return -1; + }; +} + +function randomFloor(x) { + if (x % 1 < Math.random()) return Math.floor(x); + else return Math.ceil(x); +} + +function shuffle(array) { + var counter = array.length, + temp, + index; + // While there are elements in the array + while (counter--) { + // Pick a random index + index = (Math.random() * counter) | 0; + + // And swap the last element with it + temp = array[counter]; + array[counter] = array[index]; + array[index] = temp; + } + return array; +} + +Element.prototype.getBounds = function () { + var bounds = this.getBoundingClientRect(); + var s = Game.scale; + bounds.x /= s; + bounds.y /= s; + bounds.width /= s; + bounds.height /= s; + bounds.top /= s; + bounds.bottom /= s; + bounds.left /= s; + bounds.right /= s; + return bounds; +}; + +var LoadScript = function (url, callback, error) { + var js = document.createElement("script"); + js.setAttribute("type", "text/javascript"); + if (js.readyState) { + js.onreadystatechange = function () { + if (js.readyState === "loaded" || js.readyState === "complete") { + js.onreadystatechange = null; + if (callback) callback(); + } + }; + } else if (callback) { + js.onload = callback; + } + if (error) js.onerror = error; + + js.setAttribute("src", url); + document.head.appendChild(js); +}; + +localStorageGet = function (key) { + var local = 0; + try { + local = window.localStorage.getItem(key); + } catch (exception) {} + return local; +}; +localStorageSet = function (key, str) { + var local = 0; + try { + local = window.localStorage.setItem(key, str); + } catch (exception) {} + return local; +}; + +var ajax = function (url, callback) { + var httpRequest = new XMLHttpRequest(); + if (!httpRequest) { + return false; + } + httpRequest.onreadystatechange = function () { + try { + if ( + httpRequest.readyState === XMLHttpRequest.DONE && + httpRequest.status === 200 + ) { + callback(httpRequest.responseText); + } + } catch (e) {} + }; + //httpRequest.onerror=function(e){console.log('ERROR',e);} + if (url.indexOf("?") == -1) url += "?"; + else url += "&"; + url += "nocache=" + Date.now(); + httpRequest.open("GET", url); + httpRequest.setRequestHeader("Content-Type", "text/plain"); + httpRequest.overrideMimeType("text/plain"); + httpRequest.send(); + return true; +}; + +function toFixed(x) { + if (Math.abs(x) < 1.0) { + var e = parseInt(x.toString().split("e-")[1]); + if (e) { + x *= Math.pow(10, e - 1); + x = "0." + new Array(e).join("0") + x.toString().substring(2); + } + } else { + var e = parseInt(x.toString().split("+")[1]); + if (e > 20) { + e -= 20; + x /= Math.pow(10, e); + x += new Array(e + 1).join("0"); + } + } + return x; +} + +//Beautify and number-formatting adapted from the Frozen Cookies add-on (http://cookieclicker.wikia.com/wiki/Frozen_Cookies_%28JavaScript_Add-on%29) +function formatEveryThirdPower(notations) { + return function (val) { + var base = 0, + notationValue = ""; + if (!isFinite(val)) return "Infinity"; + if (val >= 1000000) { + val /= 1000; + while (Math.round(val) >= 1000) { + val /= 1000; + base++; + } + if (base >= notations.length) { + return "Infinity"; + } else { + notationValue = notations[base]; + } + } + return Math.round(val * 1000) / 1000 + notationValue; + }; +} + +function rawFormatter(val) { + return Math.round(val * 1000) / 1000; +} + +var formatLong = [ + " thousand", + " million", + " billion", + " trillion", + " quadrillion", + " quintillion", + " sextillion", + " septillion", + " octillion", + " nonillion", +]; +var prefixes = [ + "", + "un", + "duo", + "tre", + "quattuor", + "quin", + "sex", + "septen", + "octo", + "novem", +]; +var suffixes = [ + "decillion", + "vigintillion", + "trigintillion", + "quadragintillion", + "quinquagintillion", + "sexagintillion", + "septuagintillion", + "octogintillion", + "nonagintillion", +]; +for (var i in suffixes) { + for (var ii in prefixes) { + formatLong.push(" " + prefixes[ii] + suffixes[i]); + } +} + +var formatShort = ["k", "M", "B", "T", "Qa", "Qi", "Sx", "Sp", "Oc", "No"]; +var prefixes = ["", "Un", "Do", "Tr", "Qa", "Qi", "Sx", "Sp", "Oc", "No"]; +var suffixes = ["D", "V", "T", "Qa", "Qi", "Sx", "Sp", "O", "N"]; +for (var i in suffixes) { + for (var ii in prefixes) { + formatShort.push(" " + prefixes[ii] + suffixes[i]); + } +} +formatShort[10] = "Dc"; + +var numberFormatters = [ + formatEveryThirdPower(formatShort), + formatEveryThirdPower(formatLong), + rawFormatter, +]; +var Beautify = function (val, floats) { + var negative = val < 0; + var decimal = ""; + var fixed = val.toFixed(floats); + if (floats > 0 && Math.abs(val) < 1000 && Math.floor(fixed) != fixed) + decimal = "." + fixed.toString().split(".")[1]; + val = Math.floor(Math.abs(val)); + if (floats > 0 && fixed == val + 1) val++; + //var format=!EN?2:Game.prefs.format?2:1; + var format = Game.prefs.format ? 2 : 1; + var formatter = numberFormatters[format]; + var output = + val.toString().indexOf("e+") != -1 && format == 2 + ? val.toPrecision(3).toString() + : formatter(val) + .toString() + .replace(/\B(?=(\d{3})+(?!\d))/g, ","); + //var output=formatter(val).toString().replace(/\B(?=(\d{3})+(?!\d))/g,','); + if (output == "0") negative = false; + return negative ? "-" + output : output + decimal; +}; +var shortenNumber = function (val) { + //if no scientific notation, return as is, else : + //keep only the 5 first digits (plus dot), round the rest + //may or may not work properly + if (val >= 1000000 && isFinite(val)) { + var num = val.toString(); + var ind = num.indexOf("e+"); + if (ind == -1) return val; + var str = ""; + for (var i = 0; i < ind; i++) { + str += i < 6 ? num[i] : "0"; + } + str += "e+"; + str += num.split("e+")[1]; + return parseFloat(str); + } + return val; +}; + +var SimpleBeautify = function (val) { + var str = val.toString(); + var str2 = ""; + for (var i in str) { //add commas + if ((str.length - i) % 3 == 0 && i > 0) str2 += ","; + str2 += str[i]; + } + return str2; +}; + +var beautifyInTextFilter = /(([\d]+[,]*)+)/g; //new regex +function BeautifyInTextFunction(str) { + return Beautify(parseInt(str.replace(/,/g, ""), 10)); +} +function BeautifyInText(str) { + return str.replace(beautifyInTextFilter, BeautifyInTextFunction); +} //reformat every number inside a string +function BeautifyAll() { + //run through upgrades and achievements to reformat the numbers + var func = function (what) { + what.ddesc = BeautifyInText(what.ddesc); + }; + for (var i in Game.UpgradesById) { + Game.UpgradesById[i].ddesc = BeautifyInText(Game.UpgradesById[i].ddesc); + } + for (var i in Game.AchievementsById) { + Game.AchievementsById[i].ddesc = BeautifyInText( + Game.AchievementsById[i].ddesc + ); + } +} + +//=== LOCALIZATION === + +var locStrings = {}; +var locStringsFallback = {}; +var locId = "NONE"; +var EN = true; +var locName = "none"; +var locPatches = []; +var locPlur = "nplurals=2;plural=(n!=1);"; //see http://docs.translatehouse.org/projects/localization-guide/en/latest/l10n/pluralforms.html +var locPlurFallback = locPlur; +//note : plural index will be downgraded to the last matching, ie. in this case, if we get "0" but don't have a 3rd option, use the 2nd option (or 1st, lacking that too) +var locStringsByPart = {}; +var FindLocStringByPart = function (match) { + return locStringsByPart[match] || undefined; + /* + //note: slow, only do this on init + for (var i in locStrings){ + var bit=i.split(']'); + if (bit[0].substring(1)==match) return i; + } + return undefined; + */ +}; + +var Langs = { + EN: { + file: "EN", + nameEN: "English", + name: "English", + changeLanguage: "Language", + icon: 0, + w: 1, + isEN: true, + }, + FR: { + file: "FR", + nameEN: "French", + name: "Français", + changeLanguage: "Langue", + icon: 0, + w: 1, + }, + DE: { + file: "DE", + nameEN: "German", + name: "Deutsch", + changeLanguage: "Sprache", + icon: 0, + w: 1, + }, + NL: { + file: "NL", + nameEN: "Dutch", + name: "Nederlands", + changeLanguage: "Taal", + icon: 0, + w: 1, + }, + CS: { + file: "CS", + nameEN: "Czech", + name: "Čeština", + changeLanguage: "Jazyk", + icon: 0, + w: 1, + }, + PL: { + file: "PL", + nameEN: "Polish", + name: "Polski", + changeLanguage: "Język", + icon: 0, + w: 1, + }, + IT: { + file: "IT", + nameEN: "Italian", + name: "Italiano", + changeLanguage: "Lingua", + icon: 0, + w: 1, + }, + ES: { + file: "ES", + nameEN: "Spanish", + name: "Español", + changeLanguage: "Idioma", + icon: 0, + w: 1, + }, + "PT-BR": { + file: "PT-BR", + nameEN: "Portuguese", + name: "Português", + changeLanguage: "Idioma", + icon: 0, + w: 1, + }, + JA: { + file: "JA", + nameEN: "Japanese", + name: "日本語", + changeLanguage: "言語", + icon: 0, + w: 1.5, + }, + "ZH-CN": { + file: "ZH-CN", + nameEN: "Chinese", + name: "中文", + changeLanguage: "语言", + icon: 0, + w: 1.5, + }, + KO: { + file: "KO", + nameEN: "Korean", + name: "한글", + changeLanguage: "언어", + icon: 0, + w: 1.5, + }, + RU: { + file: "RU", + nameEN: "Russian", + name: "Русский", + changeLanguage: "Язык", + icon: 0, + w: 1.2, + }, +}; + +//note : baseline should be the original english text +//in several instances, the english text will be quite different from the other languages, as this game was initially never meant to be translated and the translation process doesn't always play well with complex sentence structures +/*use: + loc('Plain text') + loc('Text where %1 is a parameter','something') + loc('Text where %1 and %2 are parameters',['a thing','another thing']) + loc('There is %1 apple',5) + ...if the localized string is an array, this is parsed as a pluralized string; for instance, the localized string could be + "There is %1 apple":[ + "There is %1 apple", + "There are %1 apples" + ] + loc('There is %1 apple and also, %2!',[5,'hello']) + loc('This string is localized.',0,'This is the string displayed in the english version.') + loc('You have %1.',''+loc('%1 apple',LBeautify(amount))+'') + ...you may nest localized strings, and use LBeautify() to pack Beautified values +*/ +var locBlink = false; +var localizationNotFound = []; +var loc = function (id, params, baseline) { + var fallback = false; + var found = locStrings[id]; + if (!found) { + found = locStringsFallback[id]; + fallback = true; + } + if (found) { + var str = ""; + str = parseLoc(found, params); + //return str; + if (str.constructor === Array) return str; + if (locBlink && !fallback) + return '' + str + ""; //will make every localized text blink on screen, making omissions obvious; will not work for elements filled with textContent + } + + //if ((fallback || !found) && localizationNotFound.length<20 && localizationNotFound.indexOf(id)==-1){localizationNotFound.push(id);console.trace('localization string not found: ',id);} + if (found) return str; + return baseline || id; +}; + +var parseLoc = function (str, params) { + /* + parses localization strings + -there can only be 1 plural per string and it MUST be at index %1 + -a pluralized string is detected if we have at least 1 param and the matching localized string is an array + */ + if (typeof params === "undefined") params = []; + else if (params.constructor !== Array) params = [params]; + if (!str) return ""; + //if (str.constructor===Array) return str; + //if (typeof str==='function') return str(params); + //str=str.replace(/[\t\n\r]/gm,''); + + if (params.length == 0) return str; + + if (str.constructor === Array) { + if (typeof params[0] === "object") { + //an object containing a beautified number + var plurIndex = locPlur(params[0].n); + plurIndex = Math.min(str.length - 1, plurIndex); + str = str[plurIndex]; + str = replaceAll("%1", params[0].b, str); + } else { + var plurIndex = locPlur(params[0]); + plurIndex = Math.min(str.length - 1, plurIndex); + str = str[plurIndex]; + str = replaceAll("%1", params[0], str); + } + } + + var out = ""; + var len = str.length; + var inPercent = false; + for (var i = 0; i < len; i++) { + var it = str[i]; + if (inPercent) { + inPercent = false; + if (!isNaN(it) && params.length >= parseInt(it) - 1) + out += params[parseInt(it) - 1]; + else out += "%" + it; + } else if (it == "%") inPercent = true; + else out += it; + } + return out; +}; + +var LBeautify = function (val, floats) { + //returns an object in the form {n:original value floored,b:beautified value as string} for localization purposes + return { n: Math.floor(Math.abs(val)), b: Beautify(val, floats) }; +}; + +var ModLanguage = function (id, json) { + if (id == "*") id = locId; + if (id != locId || !Langs[id]) return false; + if (json["REPLACE ALL"]) { + var rep = function (str, from, to) { + var regex = new RegExp(from, "ig"); + return str.replace(regex, function (match) { + return match[0] == match[0].toLowerCase() ? to : cap(to); + }); + }; + for (var i in json["REPLACE ALL"]) { + var to = json["REPLACE ALL"][i]; + for (var ii in locStrings) { + if (Array.isArray(locStrings[ii])) { + for (var iii in locStrings[ii]) { + locStrings[ii][iii] = rep(locStrings[ii][iii], i, to); + } + } else locStrings[ii] = rep(locStrings[ii], i, to); + } + } + } + delete json["REPLACE ALL"]; + AddLanguage(id, Langs[id].name, json, true); +}; + +var AddLanguage = function (id, name, json, mod) { + //used in loc files + //if mod is true, this file is augmenting the current language + if (id == locId && !mod) return false; //don't load twice + if (!Langs[id]) return false; + locId = id; + if (Langs[locId].isEN) EN = true; + else EN = false; + locName = Langs[id].nameEN; //name + + if (mod) { + for (var i in json) { + locStrings[i] = json[i]; + } + for (var i in locStrings) { + var bit = i.split("]"); + if ( + bit[1] && + bit[0].indexOf("[COMMENT:") != 0 && + !locStringsByPart[bit[0].substring(1)] + ) + locStringsByPart[bit[0].substring(1)] = i; + } + console.log('Augmented language "' + locName + '".'); + } else { + locStrings = json; + locPlur = json[""]["plural-forms"] || locPlurFallback; + delete locStrings[""]; + for (var i in locStrings) { + if (locStrings[i] == "/") locStrings[i] = i; + } + + locPlur = (function (plural_form) { + //lifted and modified from gettext.js + var pf_re = new RegExp( + "^\\s*nplurals\\s*=\\s*[0-9]+\\s*;\\s*plural\\s*=\\s*(?:\\s|[-\\?\\|&=!<>+*/%:;n0-9_()])+" + ); + if (!pf_re.test(plural_form)) + throw new Error('The plural form "' + plural_form + '" is not valid'); + return new Function( + "n", + "var plural, nplurals; " + plural_form + " return plural;" + ); + //return new Function('n','var plural, nplurals; '+ plural_form +' return { nplurals: nplurals, plural: (plural === true ? 1 : (plural ? plural : 0)) };'); + })(locPlur); + + locPatches = []; + for (var i in locStrings) { + if (i.split("|")[0] == "Update notes") { + var patch = i.split("|"); + var patchTranslated = locStrings[i].split("|"); + locPatches.push({ + id: parseInt(patch[1]), + type: 1, + title: patchTranslated[2], + points: patchTranslated.slice(3), + }); + } + } + var sortMap = function (a, b) { + if (a.id < b.id) return 1; + else return -1; + }; + locPatches.sort(sortMap); + + for (var i in locStrings) { + var bit = i.split("]"); + if ( + bit[1] && + bit[0].indexOf("[COMMENT:") != 0 && + !locStringsByPart[bit[0].substring(1)] + ) + locStringsByPart[bit[0].substring(1)] = i; + } + + console.log('Loaded language "' + locName + '".'); + } +}; + +var LoadLang = LoadScript; + +var LocalizeUpgradesAndAchievs = function () { + if (!Game.UpgradesById) return false; + + var allThings = []; + for (var i in Game.UpgradesById) { + allThings.push(Game.UpgradesById[i]); + } + for (var i in Game.AchievementsById) { + allThings.push(Game.AchievementsById[i]); + } + for (var i = 0; i < allThings.length; i++) { + var it = allThings[i]; + var type = it.getType(); + var found = 0; + found = FindLocStringByPart(type + " name " + it.id); + if (found) it.dname = loc(found); + + if (!EN) it.baseDesc = it.baseDesc.replace(/.*/, ""); //strip quote section + it.ddesc = BeautifyInText(it.baseDesc); + + found = FindLocStringByPart(type + " desc " + it.id); + if (found) it.ddesc = loc(found); + found = FindLocStringByPart(type + " quote " + it.id); + if (found) it.ddesc += "" + loc(found) + ""; + } + BeautifyAll(); +}; +var getUpgradeName = function (name) { + var it = Game.Upgrades[name]; + var found = FindLocStringByPart("Upgrade name " + it.id); + if (found) return loc(found); + else return name; +}; +var getAchievementName = function (name) { + var it = Game.Achievements[name]; + var found = FindLocStringByPart("Achievement name " + it.id); + if (found) return loc(found); + else return name; +}; + +//these are faulty, investigate later +//function utf8_to_b64(str){return btoa(str);} +//function b64_to_utf8(str){return atob(str);} + +/*function utf8_to_b64( str ) { + try{return Base64.encode(unescape(encodeURIComponent( str )));} + catch(err) + {return '';} +} + +function b64_to_utf8( str ) { + try{return decodeURIComponent(escape(Base64.decode( str )));} + catch(err) + {return '';} +}*/ + +//phewie! https://stackoverflow.com/questions/30106476/using-javascripts-atob-to-decode-base64-doesnt-properly-decode-utf-8-strings +function utf8_to_b64(str) { + try { + return btoa( + encodeURIComponent(str).replace(/%([0-9A-F]{2})/g, function (match, p1) { + return String.fromCharCode(parseInt(p1, 16)); + }) + ); + } catch (err) { + return ""; + } +} + +function b64_to_utf8(str) { + try { + return decodeURIComponent( + Array.prototype.map + .call(atob(str), function (c) { + return "%" + ("00" + c.charCodeAt(0).toString(16)).slice(-2); + }) + .join("") + ); + } catch (err) { + return ""; + } +} + +function CompressBin(arr) { + //compress a sequence like [0,1,1,0,1,0]... into a number like 54. + var str = ""; + var arr2 = arr.slice(0); + arr2.unshift(1); + arr2.push(1); + arr2.reverse(); + for (var i in arr2) { + str += arr2[i]; + } + str = parseInt(str, 2); + return str; +} + +function UncompressBin(num) { + //uncompress a number like 54 to a sequence like [0,1,1,0,1,0]. + var arr = num.toString(2); + arr = arr.split(""); + arr.reverse(); + arr.shift(); + arr.pop(); + return arr; +} + +function CompressLargeBin(arr) { + //we have to compress in smaller chunks to avoid getting into scientific notation + var arr2 = arr.slice(0); + var thisBit = []; + var bits = []; + for (var i in arr2) { + thisBit.push(arr2[i]); + if (thisBit.length >= 50) { + bits.push(CompressBin(thisBit)); + thisBit = []; + } + } + if (thisBit.length > 0) bits.push(CompressBin(thisBit)); + arr2 = bits.join(";"); + return arr2; +} + +function UncompressLargeBin(arr) { + var arr2 = arr.split(";"); + var bits = []; + for (var i in arr2) { + bits.push(UncompressBin(parseInt(arr2[i]))); + } + arr2 = []; + for (var i in bits) { + for (var ii in bits[i]) arr2.push(bits[i][ii]); + } + return arr2; +} + +function pack(bytes) { + var chars = []; + var len = bytes.length; + for (var i = 0, n = len; i < n; ) { + chars.push(((bytes[i++] & 0xff) << 8) | (bytes[i++] & 0xff)); + } + return String.fromCharCode.apply(null, chars); +} + +function unpack(str) { + var bytes = []; + var len = str.length; + for (var i = 0, n = len; i < n; i++) { + var char = str.charCodeAt(i); + bytes.push(char >>> 8, char & 0xff); + } + return bytes; +} + +//modified from http://www.smashingmagazine.com/2011/10/19/optimizing-long-lists-of-yesno-values-with-javascript/ +function pack2(/* string */ values) { + var chunks = values.match(/.{1,14}/g), + packed = ""; + for (var i = 0; i < chunks.length; i++) { + packed += String.fromCharCode(parseInt("1" + chunks[i], 2)); + } + return packed; +} + +function unpack2(/* string */ packed) { + var values = ""; + for (var i = 0; i < packed.length; i++) { + values += packed.charCodeAt(i).toString(2).substring(1); + } + return values; +} + +function pack3(values) { + //too many save corruptions, darn it to heck + return values; +} + +//file save function from https://github.com/eligrey/FileSaver.js +var saveAs = + saveAs || + (function (view) { + "use strict"; + if ( + typeof navigator !== "undefined" && + /MSIE [1-9]\./.test(navigator.userAgent) + ) { + return; + } + var doc = view.document, + get_URL = function () { + return view.URL || view.webkitURL || view; + }, + save_link = doc.createElementNS("http://www.w3.org/1999/xhtml", "a"), + can_use_save_link = "download" in save_link, + click = function (node) { + var event = new MouseEvent("click"); + node.dispatchEvent(event); + }, + is_safari = /Version\/[\d\.]+.*Safari/.test(navigator.userAgent), + webkit_req_fs = view.webkitRequestFileSystem, + req_fs = + view.requestFileSystem || webkit_req_fs || view.mozRequestFileSystem, + throw_outside = function (ex) { + (view.setImmediate || view.setTimeout)(function () { + throw ex; + }, 0); + }, + force_saveable_type = "application/octet-stream", + fs_min_size = 0, + arbitrary_revoke_timeout = 500, + revoke = function (file) { + var revoker = function () { + if (typeof file === "string") { + get_URL().revokeObjectURL(file); + } else { + file.remove(); + } + }; + if (view.chrome) { + revoker(); + } else { + setTimeout(revoker, arbitrary_revoke_timeout); + } + }, + dispatch = function (filesaver, event_types, event) { + event_types = [].concat(event_types); + var i = event_types.length; + while (i--) { + var listener = filesaver["on" + event_types[i]]; + if (typeof listener === "function") { + try { + listener.call(filesaver, event || filesaver); + } catch (ex) { + throw_outside(ex); + } + } + } + }, + auto_bom = function (blob) { + if ( + /^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test( + blob.type + ) + ) { + return new Blob(["\ufeff", blob], { type: blob.type }); + } + return blob; + }, + FileSaver = function (blob, name, no_auto_bom) { + if (!no_auto_bom) { + blob = auto_bom(blob); + } + var filesaver = this, + type = blob.type, + blob_changed = false, + object_url, + target_view, + dispatch_all = function () { + dispatch( + filesaver, + "writestart progress write writeend".split(" ") + ); + }, + fs_error = function () { + if (target_view && is_safari && typeof FileReader !== "undefined") { + var reader = new FileReader(); + reader.onloadend = function () { + var base64Data = reader.result; + target_view.location.href = + "data:attachment/file" + + base64Data.slice(base64Data.search(/[,;]/)); + filesaver.readyState = filesaver.DONE; + dispatch_all(); + }; + reader.readAsDataURL(blob); + filesaver.readyState = filesaver.INIT; + return; + } + if (blob_changed || !object_url) { + object_url = get_URL().createObjectURL(blob); + } + if (target_view) { + target_view.location.href = object_url; + } else { + var new_tab = view.open(object_url, "_blank"); + if (new_tab == undefined && is_safari) { + view.location.href = object_url; + } + } + filesaver.readyState = filesaver.DONE; + dispatch_all(); + revoke(object_url); + }, + abortable = function (func) { + return function () { + if (filesaver.readyState !== filesaver.DONE) { + return func.apply(this, arguments); + } + }; + }, + create_if_not_found = { create: true, exclusive: false }, + slice; + filesaver.readyState = filesaver.INIT; + if (!name) { + name = "download"; + } + if (can_use_save_link) { + object_url = get_URL().createObjectURL(blob); + setTimeout(function () { + save_link.href = object_url; + save_link.download = name; + click(save_link); + dispatch_all(); + revoke(object_url); + filesaver.readyState = filesaver.DONE; + }); + return; + } + if (view.chrome && type && type !== force_saveable_type) { + slice = blob.slice || blob.webkitSlice; + blob = slice.call(blob, 0, blob.size, force_saveable_type); + blob_changed = true; + } + if (webkit_req_fs && name !== "download") { + name += ".download"; + } + if (type === force_saveable_type || webkit_req_fs) { + target_view = view; + } + if (!req_fs) { + fs_error(); + return; + } + fs_min_size += blob.size; + req_fs( + view.TEMPORARY, + fs_min_size, + abortable(function (fs) { + fs.root.getDirectory( + "saved", + create_if_not_found, + abortable(function (dir) { + var save = function () { + dir.getFile( + name, + create_if_not_found, + abortable(function (file) { + file.createWriter( + abortable(function (writer) { + writer.onwriteend = function (event) { + target_view.location.href = file.toURL(); + filesaver.readyState = filesaver.DONE; + dispatch(filesaver, "writeend", event); + revoke(file); + }; + writer.onerror = function () { + var error = writer.error; + if (error.code !== error.ABORT_ERR) { + fs_error(); + } + }; + "writestart progress write abort" + .split(" ") + .forEach(function (event) { + writer["on" + event] = filesaver["on" + event]; + }); + writer.write(blob); + filesaver.abort = function () { + writer.abort(); + filesaver.readyState = filesaver.DONE; + }; + filesaver.readyState = filesaver.WRITING; + }), + fs_error + ); + }), + fs_error + ); + }; + dir.getFile( + name, + { create: false }, + abortable(function (file) { + file.remove(); + save(); + }), + abortable(function (ex) { + if (ex.code === ex.NOT_FOUND_ERR) { + save(); + } else { + fs_error(); + } + }) + ); + }), + fs_error + ); + }), + fs_error + ); + }, + FS_proto = FileSaver.prototype, + saveAs = function (blob, name, no_auto_bom) { + return new FileSaver(blob, name, no_auto_bom); + }; + if (typeof navigator !== "undefined" && navigator.msSaveOrOpenBlob) { + return function (blob, name, no_auto_bom) { + if (!no_auto_bom) { + blob = auto_bom(blob); + } + return navigator.msSaveOrOpenBlob(blob, name || "download"); + }; + } + FS_proto.abort = function () { + var filesaver = this; + filesaver.readyState = filesaver.DONE; + dispatch(filesaver, "abort"); + }; + FS_proto.readyState = FS_proto.INIT = 0; + FS_proto.WRITING = 1; + FS_proto.DONE = 2; + FS_proto.error = + FS_proto.onwritestart = + FS_proto.onprogress = + FS_proto.onwrite = + FS_proto.onabort = + FS_proto.onerror = + FS_proto.onwriteend = + null; + return saveAs; + })( + (typeof self !== "undefined" && self) || + (typeof window !== "undefined" && window) || + this.content + ); +if (typeof module !== "undefined" && module.exports) { + module.exports.saveAs = saveAs; +} else if ( + typeof define !== "undefined" && + define !== null && + define.amd != null +) { + define([], function () { + return saveAs; + }); +} + +//seeded random function, courtesy of http://davidbau.com/archives/2010/01/30/random_seeds_coded_hints_and_quintillions.html +(function (a, b, c, d, e, f) { + function k(a) { + var b, + c = a.length, + e = this, + f = 0, + g = (e.i = e.j = 0), + h = (e.S = []); + for (c || (a = [c++]); d > f; ) h[f] = f++; + for (f = 0; d > f; f++) + (h[f] = h[(g = j & (g + a[f % c] + (b = h[f])))]), (h[g] = b); + (e.g = function (a) { + for (var b, c = 0, f = e.i, g = e.j, h = e.S; a--; ) + (b = h[(f = j & (f + 1))]), + (c = c * d + h[j & ((h[f] = h[(g = j & (g + b))]) + (h[g] = b))]); + return (e.i = f), (e.j = g), c; + })(d); + } + function l(a, b) { + var e, + c = [], + d = (typeof a)[0]; + if (b && "o" == d) + for (e in a) + try { + c.push(l(a[e], b - 1)); + } catch (f) {} + return c.length ? c : "s" == d ? a : a + "\0"; + } + function m(a, b) { + for (var d, c = a + "", e = 0; c.length > e; ) + b[j & e] = j & ((d ^= 19 * b[j & e]) + c.charCodeAt(e++)); + return o(b); + } + function n(c) { + try { + return a.crypto.getRandomValues((c = new Uint8Array(d))), o(c); + } catch (e) { + return [+new Date(), a, a.navigator.plugins, a.screen, o(b)]; + } + } + function o(a) { + return String.fromCharCode.apply(0, a); + } + var g = c.pow(d, e), + h = c.pow(2, f), + i = 2 * h, + j = d - 1; + (c.seedrandom = function (a, f) { + var j = [], + p = m(l(f ? [a, o(b)] : 0 in arguments ? a : n(), 3), j), + q = new k(j); + return ( + m(o(q.S), b), + (c.random = function () { + for (var a = q.g(e), b = g, c = 0; h > a; ) + (a = (a + c) * d), (b *= d), (c = q.g(1)); + for (; a >= i; ) (a /= 2), (b /= 2), (c >>>= 1); + return (a + c) / b; + }), + p + ); + }), + m(c.random(), b); +})(this, [], Math, 256, 6, 52); + +function bind(scope, fn) { + //use : bind(this,function(){this.x++;}) - returns a function where "this" refers to the scoped this + return function () { + fn.apply(scope, arguments); + }; +} + +var grabProps = function (arr, prop) { + if (!arr) return []; + arr2 = []; + for (var i = 0; i < arr.length; i++) { + arr2.push(arr[i][prop]); + } + return arr2; +}; + +CanvasRenderingContext2D.prototype.fillPattern = function ( + img, + X, + Y, + W, + H, + iW, + iH, + offX, + offY +) { + //for when built-in patterns aren't enough + if (img.alt != "blank") { + var offX = offX || 0; + var offY = offY || 0; + if (offX < 0) { + offX = offX - Math.floor(offX / iW) * iW; + } + if (offX > 0) { + offX = (offX % iW) - iW; + } + if (offY < 0) { + offY = offY - Math.floor(offY / iH) * iH; + } + if (offY > 0) { + offY = (offY % iH) - iH; + } + for (var y = offY; y < H; y += iH) { + for (var x = offX; x < W; x += iW) { + this.drawImage(img, X + x, Y + y, iW, iH); + } + } + } +}; + +var OldCanvasDrawImage = CanvasRenderingContext2D.prototype.drawImage; +CanvasRenderingContext2D.prototype.drawImage = function () { + //only draw the image if it's loaded + if (arguments[0].alt != "blank") OldCanvasDrawImage.apply(this, arguments); +}; + +if (!document.hasFocus) + document.hasFocus = function () { + return document.hidden; + }; //for Opera + +function AddEvent(el, ev, func) { + //ie. myListener=AddEvent(l('element'),'click',function(){console.log('hi!');}); + if (el.addEventListener) { + el.addEventListener(ev, func, false); + return [el, ev, func]; + } else if (el.attachEvent) { + var func2 = function () { + func.call(el); + }; + el.attachEvent("on" + ev, func2); + return [el, ev, func2]; + } + return false; +} +function RemoveEvent(evObj) { + //ie. RemoveEvent(myListener); + if (!evObj) return false; + if (evObj[0].removeEventListener) + evObj[0].removeEventListener(evObj[1], evObj[2], false); + else if (evObj[0].detachEvent) + evObj[0].detachEvent("on" + evObj[1], evObj[2]); + return true; +} + +function FireEvent(el, ev) { + if (el.fireEvent) { + el.fireEvent("on" + ev); + } else { + var evObj = document.createEvent("Events"); + evObj.initEvent(ev, true, false); + el.dispatchEvent(evObj); + } +} + +function writeIcon(icon) { + //returns CSS for an icon's background image + //for use in CSS strings + return ( + (icon[2] + ? "background-image:url('" + icon[2].replace(/'/g, "\\'") + "');" + : "") + + "background-position:" + + -icon[0] * 48 + + "px " + + -icon[1] * 48 + + "px;" + ); +} +function tinyIcon(icon, css) { + //returns HTML displaying an icon, with optional extra CSS + return ( + '
' + ); +} + +var Loader = function () //asset-loading system +{ + this.loadingN = 0; + this.assetsN = 0; + this.assets = []; + this.assetsLoading = []; + this.assetsLoaded = []; + this.domain = ""; + this.loaded = 0; //callback + this.doneLoading = 0; + + this.blank = document.createElement("canvas"); + this.blank.width = 8; + this.blank.height = 8; + this.blank.alt = "blank"; + + this.Load = function (assets) { + for (var i in assets) { + this.loadingN++; + this.assetsN++; + if (!this.assetsLoading[assets[i]] && !this.assetsLoaded[assets[i]]) { + var img = new Image(); + if (assets[i].indexOf("/") != -1) img.src = assets[i]; + else img.src = this.domain + assets[i]; + img.alt = assets[i]; + img.onload = bind(this, this.onLoad); + this.assets[assets[i]] = img; + this.assetsLoading.push(assets[i]); + } + } + }; + this.Replace = function (old, newer) { + if (!this.assets[old]) this.Load([old]); + var img = new Image(); + if (newer.indexOf("/") != -1) + /*newer.indexOf('http')!=-1 || newer.indexOf('https')!=-1)*/ img.src = + newer; + else img.src = this.domain + newer; + img.alt = newer; + img.onload = bind(this, this.onLoad); + this.assets[old] = img; + }; + this.onLoadReplace = function () {}; + this.onLoad = function (e) { + this.assetsLoaded.push(e.target.alt); + this.assetsLoading.splice(this.assetsLoading.indexOf(e.target.alt), 1); + this.loadingN--; + if (this.doneLoading == 0 && this.loadingN <= 0 && this.loaded != 0) { + this.doneLoading = 1; + this.loaded(); + } + }; + this.getProgress = function () { + return 1 - this.loadingN / this.assetsN; + }; +}; + +var Pic = function (what) { + if (Game.Loader.assetsLoaded.indexOf(what) != -1) + return Game.Loader.assets[what]; + else if (Game.Loader.assetsLoading.indexOf(what) == -1) + Game.Loader.Load([what]); + return Game.Loader.blank; +}; + +var Sounds = []; +var OldPlaySound = function (url, vol) { + var volume = 1; + if (vol !== undefined) volume = vol; + if (!Game.volume || volume == 0) return 0; + if (!Sounds[url]) { + Sounds[url] = new Audio(url); + Sounds[url].onloadeddata = function (e) { + e.target.volume = Math.pow((volume * Game.volume) / 100, 2); + }; + } else if (Sounds[url].readyState >= 2) { + Sounds[url].currentTime = 0; + Sounds[url].volume = Math.pow((volume * Game.volume) / 100, 2); + } + Sounds[url].play(); +}; +var SoundInsts = []; +var SoundI = 0; +for (var i = 0; i < 12; i++) { + SoundInsts[i] = new Audio(); +} +var pitchSupport = false; +//note : Chrome turns out to not support webkitPreservesPitch despite the specifications claiming otherwise, and Firefox clips some short sounds when changing playbackRate, so i'm turning the feature off completely until browsers get it together +//if (SoundInsts[0].preservesPitch || SoundInsts[0].mozPreservesPitch || SoundInsts[0].webkitPreservesPitch) pitchSupport=true; + +var PlaySound = function (url, vol, pitchVar) { + //url : the url of the sound to play (will be cached so it only loads once) + //vol : volume between 0 and 1 (multiplied by game volume setting); defaults to 1 (full volume) + //(DISABLED) pitchVar : pitch variance in browsers that support it (Firefox only at the moment); defaults to 0.05 (which means pitch can be up to -5% or +5% anytime the sound plays) + var volume = 1; + var volumeSetting = Game.volume; + if (typeof vol !== "undefined") volume = vol; + if (volume < -5) { + volume += 10; + volumeSetting = Game.volumeMusic; + } + if (!volumeSetting || volume == 0) return 0; + if (typeof Sounds[url] === "undefined") { + //sound isn't loaded, cache it + Sounds[url] = new Audio(url); + Sounds[url].onloadeddata = function (e) { + PlaySound(url, vol, pitchVar); + }; + //Sounds[url].load(); + } else if (Sounds[url].readyState >= 2 && SoundInsts[SoundI].paused) { + var sound = SoundInsts[SoundI]; + SoundI++; + if (SoundI >= 12) SoundI = 0; + sound.src = Sounds[url].src; + //sound.currentTime=0; + sound.volume = Math.pow((volume * volumeSetting) / 100, 2); + if (pitchSupport) { + var pitchVar = typeof pitchVar === "undefined" ? 0.05 : pitchVar; + var rate = 1 + (Math.random() * 2 - 1) * pitchVar; + sound.preservesPitch = false; + sound.mozPreservesPitch = false; + sound.webkitPreservesPitch = false; + sound.playbackRate = rate; + } + try { + sound.play(); + } catch (e) {} + /* + var sound=Sounds[url].cloneNode(); + sound.volume=Math.pow(volume*volumeSetting/100,2); + sound.onended=function(e){if (e.target){delete e.target;}}; + sound.play();*/ + } +}; +var PlayMusicSound = function (url, vol, pitchVar) { + //like PlaySound but, if music is enabled, play with music volume + PlaySound(url, (vol || 1) - (Music ? 10 : 0), pitchVar); +}; + +Music = false; +PlayCue = function (cue, arg) { + if (Music && Game.jukebox.trackAuto) Music.cue(cue, arg); +}; + +if (!Date.now) { + Date.now = function now() { + return new Date().getTime(); + }; +} + +var triggerAnim = function (element, anim) { + if (!element) return; + element.classList.remove(anim); + void element.offsetWidth; + element.classList.add(anim); +}; + +var debugStr = ""; +var Debug = function (what) { + if (!debugStr) debugStr = what; + else debugStr += "; " + what; +}; + +var Timer = {}; +Timer.t = Date.now(); +Timer.labels = []; +Timer.smoothed = []; +Timer.reset = function () { + Timer.labels = []; + Timer.t = Date.now(); +}; +Timer.track = function (label) { + if (!Game.sesame) return; + var now = Date.now(); + if (!Timer.smoothed[label]) Timer.smoothed[label] = 0; + Timer.smoothed[label] += (now - Timer.t - Timer.smoothed[label]) * 0.1; + Timer.labels[label] = + '
' + + label + + " : " + + Math.round(Timer.smoothed[label]) + + "ms
"; + Timer.t = now; +}; +Timer.clean = function () { + if (!Game.sesame) return; + var now = Date.now(); + Timer.t = now; +}; +Timer.say = function (label) { + if (!Game.sesame) return; + Timer.labels[label] = + '
' + label + "
"; +}; + +/*===================================================================================== +GAME INITIALIZATION +=======================================================================================*/ +var Game = {}; + +(function () { + /*===================================================================================== + MODDING API + =======================================================================================*/ + /* + to use: + -(NOTE: this functions a little differently in the standalone/Steam version; have a look in the game's /mods folder for example mods - though most of the information below still applies) + -have your mod call Game.registerMod("unique id",mod object) + -the "unique id" value is a string the mod will use to index and retrieve its save data; special characters are ignored + -the "mod object" value is an object structured like so: + { + init:function(){ + //this function is called as soon as the mod is registered + //declare hooks here + }, + save:function(){ + //use this to store persistent data associated with your mod + return 'a string to be saved'; + }, + load:function(str){ + //do stuff with the string data you saved previously + }, + } + -the mod object may also contain any other data or functions you want, for instance to make them accessible to other mods + -your mod and its data can be accessed with Game.mods['mod id'] + -hooks are functions the game calls automatically in certain circumstances, like when calculating cookies per click or when redrawing the screen + -to add a hook: Game.registerHook('hook id',yourFunctionHere) - note: you can also declare whole arrays of hooks, ie. Game.registerHook('hook id',[function1,function2,...]) + -to remove a hook: Game.removeHook('hook id',theSameFunctionHere) + -some hooks are fed a parameter you can use in the function + -list of valid hook ids: + 'logic' - called every logic tick + 'draw' - called every draw tick + 'reset' - called whenever the player resets; parameter is true if this is a hard reset, false if it's an ascension + 'reincarnate' - called when the player has reincarnated after an ascension + 'ticker' - called when determining news ticker text; should return an array of possible choices to add + 'cps' - called when determining the CpS; parameter is the current CpS; should return the modified CpS + 'cookiesPerClick' - called when determining the cookies per click; parameter is the current value; should return the modified value + 'click' - called when the big cookie is clicked + 'create' - called after the game declares all buildings, buffs, upgrades and achievs; use this to declare your own - note that while the game distinguishes between vanilla and non-vanilla content, saving/loading functionality for custom content (including stuff like active buffs or permanent upgrade slotting) is not explicitly implemented and may be unpredictable and broken + 'check' - called every few seconds when we check for upgrade/achiev unlock conditions; you can also use this for other checks that you don't need happening every logic frame + -function hooks are provided for convenience and more advanced mod functionality will probably involve manual code injection + -please be mindful of the length of the data you save, as it does inflate the export-save-to-string feature + + NOTE: modding API is susceptible to change and may not always function super-well + */ + Game.mods = {}; + Game.sortedMods = []; + Game.brokenMods = []; + Game.modSaveData = {}; + Game.modHooks = {}; + Game.modHooksNames = [ + "logic", + "draw", + "reset", + "reincarnate", + "ticker", + "cps", + "cookiesPerClick", + "click", + "create", + "check", + ]; + for (var i = 0; i < Game.modHooksNames.length; i++) { + Game.modHooks[Game.modHooksNames[i]] = []; + } + Game.registerMod = function (id, mod) { + id = id.replace(/\W+/g, " "); + if (id == "META") return false; + if (Game.mods[id]) { + console.log('ERROR: mod already registered with the id "' + id + '".'); + return false; + } + Game.mods[id] = mod; + Game.sortedMods.push(mod); + mod.id = id; + mod.name = mod.name || id; + if (App) App.registerMod(mod); + console.log('Mod "' + id + '" added.'); + if (Game.ready && mod.init) { + if (!App && Game.Win) Game.Win("Third-party"); + mod.init(); + if (mod.load && Game.modSaveData[id]) mod.load(Game.modSaveData[id]); + mod.init = 0; + } + }; + Game.launchMods = function () { + if (Game.brokenMods.length > 0) { + Game.Notify( + '' + + loc("Some mods couldn't be loaded:") + + "", + "[" + Game.brokenMods.join(", ") + "]", + [32, 17] + ); + } + for (var i = 0; i < Game.sortedMods.length; i++) { + var mod = Game.sortedMods[i]; + if (mod.init) { + console.log("===initializing mod", mod.id); + mod.init(); + mod.init = 0; + //if (mod.load && Game.modSaveData[mod.id]) mod.load(Game.modSaveData[mod.id]); + } + } + if (!App && Game.sortedMods.length > 0) Game.Win("Third-party"); + }; + Game.registerHook = function (hook, func) { + if (func.constructor === Array) { + for (var i = 0; i < func.length; i++) { + Game.registerHook(hook, func[i]); + } + return; + } + if (typeof func !== "function") return; + if (typeof Game.modHooks[hook] !== "undefined") + Game.modHooks[hook].push(func); + else + console.log( + 'Error: a mod tried to register a non-existent hook named "' + + hook + + '".' + ); + }; + Game.removeHook = function (hook, func) { + if (func.constructor === Array) { + for (var i = 0; i < func.length; i++) { + Game.removeHook(hook, func[i]); + } + return; + } + if (typeof func !== "function") return; + if ( + typeof Game.modHooks[hook] !== "undefined" && + Game.modHooks[hook].indexOf(func) != -1 + ) + Game.modHooks[hook].splice(Game.modHooks[hook].indexOf(func), 1); + else + console.log( + 'Error: a mod tried to remove a non-existent hook named "' + hook + '".' + ); + }; + Game.runModHook = function (hook, param) { + for (var i = 0; i < Game.modHooks[hook].length; i++) { + Game.modHooks[hook][i](param); + } + }; + Game.runModHookOnValue = function (hook, val) { + for (var i = 0; i < Game.modHooks[hook].length; i++) { + val = Game.modHooks[hook][i](val); + } + return val; + }; + Game.safeSaveString = function (str) { + //look as long as it works + str = replaceAll("|", "[P]", str); + str = replaceAll(";", "[S]", str); + return str; + }; + Game.safeLoadString = function (str) { + str = replaceAll("[P]", "|", str); + str = replaceAll("[S]", ";", str); + return str; + }; + Game.saveModData = function () { + var str = ""; + for (var i = 0; i < Game.sortedMods.length; i++) { + if (Game.sortedMods[i]["save"]) { + var data = Game.sortedMods[i]["save"](); + if (typeof data !== "undefined") + Game.modSaveData[Game.sortedMods[i].id] = data; + } + } + for (var i in Game.modSaveData) { + str += i + ":" + Game.safeSaveString(Game.modSaveData[i]) + ";"; + } + if (App && App.saveMods) str += App.saveMods(); + return str; + }; + Game.loadModData = function () { + for (var i in Game.modSaveData) { + if (Game.mods[i] && Game.mods[i]["load"]) + Game.mods[i]["load"](Game.modSaveData[i]); + } + }; + Game.deleteModData = function (id) { + if (Game.modSaveData[id]) delete Game.modSaveData[id]; + }; + Game.deleteAllModData = function () { + Game.modSaveData = {}; + }; + Game.CheckModData = function () { + var modsN = 0; + var str = ""; + for (var i in Game.modSaveData) { + str += + '
'; + str += + '
' + + i + + ""; + if (Game.mods[i]) str += " " + loc("(loaded)"); + str += "
"; + str += + '
' + + loc("%1 char", Game.modSaveData[i].length) + + ' X"; + str += "
"; + str += "
"; + modsN++; + } + if (modsN == 0) str += loc("No mod data present."); + else + str += + '"; + Game.Prompt( + "

" + + loc("Mod data") + + '

' + + tinyIcon([16, 5]) + + "
" + + loc( + "These are the mods present in your save data. You may delete some of this data to make your save file smaller." + ) + + '
' + + str + + "
", + [loc("Back")] + ); + }; + + Game.LoadMod = LoadScript; //loads the mod at the given URL + + if (false) { + //EXAMPLE MOD + Game.registerMod("test mod", { + /* + what this example mod does: + -double your CpS + -display a little popup for half a second whenever you click the big cookie + -add a little intro text above your bakery name, and generate that intro text at random if you don't already have one + -save and load your intro text + */ + init: function () { + Game.registerHook("reincarnate", function () { + Game.mods["test mod"].addIntro(); + }); + Game.registerHook("check", function () { + if (!Game.playerIntro) { + Game.mods["test mod"].addIntro(); + } + }); + Game.registerHook("click", function () { + Game.Notify( + choose([ + "A good click.", + "A solid click.", + "A mediocre click.", + "An excellent click!", + ]), + "", + 0, + 0.5 + ); + }); + Game.registerHook("cps", function (cps) { + return cps * 2; + }); + }, + save: function () { + //note: we use stringified JSON for ease and clarity but you could store any type of string + return JSON.stringify({ text: Game.playerIntro }); + }, + load: function (str) { + var data = JSON.parse(str); + if (data.text) Game.mods["test mod"].addIntro(data.text); + }, + addIntro: function (text) { + //note: this is not a mod hook, just a function that's part of the mod + Game.playerIntro = + text || + choose([ + "oh snap, it's", + "watch out, it's", + "oh no! here comes", + "hide your cookies, for here comes", + "behold! it's", + ]); + if (!l("bakerySubtitle")) + l("bakeryName").insertAdjacentHTML( + "afterend", + '
' + ); + l("bakerySubtitle").textContent = "~" + Game.playerIntro + "~"; + }, + }); + } + + //replacing an existing canvas picture with a new one at runtime : Game.Loader.Replace('perfectCookie.png','imperfectCookie.png'); + //upgrades and achievements can use other pictures than icons.png; declare their icon with [posX,posY,'http://example.com/myIcons.png'] + //check out the "UNLOCKING STUFF" section to see how unlocking achievs and upgrades is done +})(); + +Game.version = VERSION; +Game.loadedFromVersion = VERSION; +Game.beta = BETA; +if (!App && window.location.href.indexOf("/beta") > -1) Game.beta = 1; +else if (App && new URL(window.location.href).searchParams.get("beta")) + Game.beta = 1; +Game.https = !App ? (location.protocol != "https:" ? false : true) : true; +Game.SaveTo = "CookieClickerGame"; +if (Game.beta) Game.SaveTo = "CookieClickerGameBeta"; +if (App && new URL(window.location.href).searchParams.get("modless")) + Game.modless = 1; + +Game.Launch = function () { + Game.mobile = 0; + Game.touchEvents = 0; + //if (/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent)) Game.mobile=1; + //if (Game.mobile) Game.touchEvents=1; + //if ('ontouchstart' in document.documentElement) Game.touchEvents=1; + + var css = document.createElement("style"); + css.type = "text/css"; + css.innerHTML = + "body .icon,body .crate,body .usesIcon{background-image:url(img/icons.png?v=" + + Game.version + + ");}"; + document.head.appendChild(css); + + //this is so shimmers can still appear even if you lose connection after the game is loaded + var preloadImages = [ + "img/goldCookie.png", + "img/wrathCookie.png", + "img/spookyCookie.png", + "img/hearts.png", + "img/contract.png", + "img/wrathContract.png", + "img/bunnies.png", + "img/frostedReindeer.png", + ]; + var preloadImagesL = l("preloadImages"); + for (var i = 0; i < preloadImages.length; i++) { + var img = document.createElement("img"); + img.src = preloadImages[i]; + preloadImagesL.appendChild(img); + } + + Game.visible = true; + AddEvent(document, "visibilitychange", function (e) { + if (document.visibilityState === "hidden") Game.visible = false; + else Game.visible = true; + }); + + if (!EN) { + //code-patching the CSS for localization feels like it should be against the law, and yet + var css = document.createElement("style"); + css.type = "text/css"; + css.innerHTML = + "#upgrades:before{content:'" + + loc("Upgrades") + + "';}" + + "#toggleUpgrades:before{content:'" + + loc("Switches") + + "';}" + + "#techUpgrades:before{content:'" + + loc("Research") + + "';}" + + "#vaultUpgrades:before{content:'" + + loc("Vault") + + "';}" + + "#products:before{content:'" + + loc("Buildings") + + "';}" + + ""; + document.head.appendChild(css); + } + + Game.baseSeason = ""; //halloween, christmas, valentines, fools, easter + //automatic season detection (might not be 100% accurate) + var year = new Date().getFullYear(); + var leap = (year % 4 == 0 && year % 100 != 0) || year % 400 == 0 ? 1 : 0; + var day = Math.floor( + (new Date() - new Date(year, 0, 0)) / (1000 * 60 * 60 * 24) + ); + if (day >= 41 && day <= 46) Game.baseSeason = "valentines"; + else if (day + leap >= 90 && day <= 92 + leap) Game.baseSeason = "fools"; + else if (day >= 304 - 7 + leap && day <= 304 + leap) + Game.baseSeason = "halloween"; + else if (day >= 349 + leap && day <= 365 + leap) + Game.baseSeason = "christmas"; + else { + //easter is a pain goddamn + var easterDay = (function (Y) { + var C = Math.floor(Y / 100); + var N = Y - 19 * Math.floor(Y / 19); + var K = Math.floor((C - 17) / 25); + var I = C - Math.floor(C / 4) - Math.floor((C - K) / 3) + 19 * N + 15; + I = I - 30 * Math.floor(I / 30); + I = + I - + Math.floor(I / 28) * + (1 - + Math.floor(I / 28) * + Math.floor(29 / (I + 1)) * + Math.floor((21 - N) / 11)); + var J = Y + Math.floor(Y / 4) + I + 2 - C + Math.floor(C / 4); + J = J - 7 * Math.floor(J / 7); + var L = I - J; + var M = 3 + Math.floor((L + 40) / 44); + var D = L + 28 - 31 * Math.floor(M / 4); + return new Date(Y, M - 1, D); + })(year); + easterDay = Math.floor( + (easterDay - new Date(easterDay.getFullYear(), 0, 0)) / + (1000 * 60 * 60 * 24) + ); + if (day >= easterDay - 7 && day <= easterDay) Game.baseSeason = "easter"; + } + + Game.updateLog = + '
' + + '
' + + loc("Info") + + "
" + + '
' + + '
' + + loc("About") + + "
" + + (App + ? '
' + + loc("Note: links will open in your web browser.") + + "
" + : "") + + '
' + + loc("Cookie Clicker is a javascript game by %1 and %2.", [ + 'Orteil', + 'Opti', + ]) + + "
" + + (App + ? '
' + + loc( + "Music by %1.", + 'C418' + ) + + "
" + : "") + + //'
We have an official Discord, as well as a forum; '+ + '
' + + (EN + ? 'We have an official Discord; if you\'re looking for help, you may also want to visit the subreddit or the wiki.
News and teasers are usually posted on Orteil\'s tumblr and twitter.' + : loc("Useful links: %1, %2, %3, %4.", [ + 'Discord', + 'wiki', + 'tumblr', + 'twitter', + ])) + + "
" + + (!App + ? '
' + + loc( + "This version of Cookie Clicker is 100% free, forever. Want to support us so we can keep developing games? Here's some ways you can help:%1", + [ + (!App + ? "

• " + + (EN ? "get " : "") + + 'Cookie Clicker on Steam' + : "") + + "" + + (EN ? " (it's about 5 bucks)" : "") + + "

• " + + (EN ? "support us on " : "") + + 'Patreon' + + (EN ? " (there's perks!)" : "") + + "

• " + + (EN ? "check out our " : "") + + 'Shop' + + (EN ? " with rad cookie shirts, hoodies and stickers" : "") + + (!App && EN + ? "

• disable your adblocker (if you want!)" + : ""), + ] + ) + + "
" + : "") + + '
' + + loc( + "Note: if you find a new bug after an update and you're using a 3rd-party add-on, make sure it's not just your add-on causing it!" + ) + + "
" + + (!App + ? '
' + + loc( + "Warning: clearing your browser cache or cookies (what else?) will result in your save being wiped. Export your save and back it up first!" + ) + + "
" + : "") + + '
' + + '
' + + loc("Version history") + + "
"; + + for (var i = 0; i < locPatches.length; i++) { + var patch = locPatches[i]; + var patchText = + '
' + + '
' + + patch.title + + "
"; + for (var ii = 0; ii < patch.points.length; ii++) { + patchText += '
• ' + patch.points[ii] + "
"; + } + Game.updateLog += patchText; + } + + if (!EN) + Game.updateLog += + '
' + + loc("Note: older update notes are in English.") + + "
"; + + Game.updateLog += + '
' + + '
31/05/2022 - a mind of its own
' + + '
• added a new building
' + + '
• added a new tier of upgrades and achievements
' + + '
• multi-language support added to web version
' + + '
• added a few new heavenly upgrades
' + + '
• added the jukebox
' + + '
• the 3 secret heavenly upgrades now rely on how many times the relevant digit is present in total, rather than at the end
' + + '
• backgrounds overhauled; extra options for the background selector
' + + '
• extra options for the golden cookie sound selector
' + + '
• the bank minigame now tells you the value you previously bought a stock at
' + + '
• the bank minigame flow is a little more exciting
' + + (App + ? '
• new option to disable your game activity showing up in Discord
' + : "") + + (App + ? '
• launch errors now provide the option to restart without mods
' + : "") + + (App + ? '
' + + '
18/12/2021 - work it
' + + '
• added Steam Workshop support (lets you install mods and upload your own)
' + + '
• added Korean language support
' + + '
• added back "short numbers" option for non-english languages (uses english terms for the time being)
' + + '
• added tooltips on achievement notifications
' + + '
• added Discord rich presence support
' + : "") + + '
' + + '
01/09/2021 - give me Steam
' + + '
• Cookie Clicker has been released on Steam with music by C418!
' + + '
• web version and Steam version will receive the same updates from now on
' + + '
• you can now play in 13 different languages
' + + '
• new option to disable scary stuff
' + + '
• basic screen-reader support
' + + '
• various other improvements
' + + '
' + + '
01/11/2020 - alternate reality
' + + '
• new building
' + + '
• new upgrade tier
' + + '
• new achievement tier
' + + '
• new heavenly upgrades
' + + '
• new modding API
' + + '
• new rebalancing (ascension slot prices, finger upgrades...)
' + + '
• new fixes (leap years, ghost swaps, carryover seeds...)
' + + '
• new stuff
' + + '
' + + '
23/08/2020 - money me, money now
' + + '
• finalized stock market minigame beta and added it to live version
' + + '
• dark mode added to stock market minigame
' + + '
• can no longer select a milk before unlocking it; milk selector layout has been improved
' + + '
• stock market goods have higher value caps and a larger spread; can also shift-click the hide buttons to hide/show all other stocks
' + + '
' + + '
08/08/2020 - checking account (beta)
' + + '
• stock market layout has been revised
' + + '
• selling stocks no longer increases cookies baked all time
' + + '
• stock prices are now defined by your highest raw CpS this ascension (which is now displayed in the stats screen)
' + + '
• can no longer buy and sell a stock in the same tick
' + + '
• warehouse space now gains +10 per associated building level (up from +5)
' + + '
• bank level now improves average (and maximum) stock values
' + + '
• later stocks are worth more
' + + '
• Cookie Clicker turns 7!
' + + '
' + + '
18/06/2020 - making bank (beta)
' + + '
• added the stock market minigame, accessible with level 1 banks or above; buy low, sell high!
' + + '
• (minigame subject to heavy rebalancing over the coming patches)
' + + '
• added a couple heavenly upgrades, including one that lets you pet your dragon
' + + '
• added a new tier of building upgrades and achievements
' + + '
• reindeer clicks now properly count for shimmering veil
' + + '
• numbers in scientific notation should display better with Short numbers off
' + + '
• replaced ツ in the javascript console building display with more accurate ッ
' + + '
' + + '
28/09/2019 - going off-script
' + + '
• added a new building
' + + '
• added fortune cookies (a new heavenly upgrade)
' + + '
• more upgrades, achievements etc
' + + '
• updated the Russian bread cookies icon to better reflect their cyrillic origins
' + + '
stealth update : the sugar lump refill timeout (not sugar lump growth) now no longer ticks down while the game is closed (this fixes an exploit)
' + + '
• also released the official Android version of Cookie Clicker, playable here (iOS version will come later)
' + + '
' + + '
01/04/2019 - 2.019 (the "this year" update)
' + + '
• game has been renamed to "Cookie Clicker" to avoid confusion
' + + '
• can now click the big cookie to generate cookies for free
' + + '
• removed fall damage
' + + //'
• fixed various typos : player\'s name is now correctly spelled as "[bakeryName]"
'+ + '
• removed all references to computer-animated movie Hoodwinked! (2005)
' + + '
• went back in time and invented cookies and computer mice, ensuring Cookie Clicker would one day come to exist
' + + '
• game now fully compliant with Geneva Conventions
' + + '
• dropped support for TI-84 version
' + + '
• released a low-res retro version of the game, playable here : orteil.dashnet.org/experiments/cookie
' + + '
• updated version number
' + + '
' + + '
05/03/2019 - cookies for days
' + + '
• added over 20 new cookies, all previously suggested by our supporters on Patreon
' + + '
• added 2 heavenly upgrades
' + + '
• the Golden goose egg now counts as a golden cookie upgrade for Residual luck purposes
' + + '
• golden sugar lumps now either double your cookies, or give you 24 hours of your CpS, whichever is lowest (previously was doubling cookies with no cap)
' + + '
• the amount of heralds is now saved with your game, and is used to compute offline CpS the next time the game is loaded; previously, on page load, the offline calculation assumed heralds to be 0
' + + '
• added a system to counteract the game freezing up (and not baking cookies) after being inactive for a long while on slower computers; instead, this will now trigger sleep mode, during which you still produce cookies as if the game was closed; to enable this feature, use the "Sleep mode timeout" option in the settings
' + + '
• vaulting upgrades is now done with shift-click, as ctrl-click was posing issues for Mac browsers
' + + '
• made tooltips for building CpS boosts from synergies hopefully clearer
' + + '
• fixed an exploit with gambler\'s fever dream working across exports and ascensions
' + + '
• can now hide tooltips in the garden by keeping the shift key pressed to make it easier to see where you\'re planting
' + + '
• fixed a bug with golden cookies/reindeer not disappearing properly in some circumstances
' + + '
• the Dragon\'s Curve aura should now properly make sugar lumps twice as weird
' + + '
• the ctrl key should less often register incorrectly as pressed
' + + '
• added a new ad slot in the top-right, as while our playerbase is strong and supportive as ever, our ad revenue sometimes fluctuates badly; we may remove the ad again should our income stabilize
' + + "
• made a few adjustments to make the game somewhat playable in mobile browsers; it's not perfect and can get buggy, but it's functional! (you may need to zoom out or scroll around to view the game properly)
" + + '
• speaking of which, we also got some good progress on the mobile app version (built from scratch for mobile), so stay tuned!
' + + '
' + + '
25/10/2018 - feedback loop
' + + '
• added a new building
' + + '
• launched our Patreon (the link is orange so you\'ll notice it!)
' + + '
• added a bunch of new heavenly upgrades, one of which ties into our Patreon but benefits everyone (this is still experimental!)
' + + '
• when hovering over grandmas, you can now see their names and ages
' + + '
• "make X cookies just from Y" requirements are now higher
' + + '
• tweaked the prices of some heavenly upgrades to better fit the current cookie economy (it turns out billions of heavenly chips is now very achievable)
' + + '
• building tooltips now display what % of CpS they contribute through synergy upgrades
' + + '
• queenbeets now give up to 4% of bank, down from 6%
' + + '
• among other things, season switches now display how many seasonal upgrades you\'re missing, and permanent upgrade slots now display the name of the slotted upgrade
' + + '
• season switches have reworked prices
' + + '
• season switches can now be cancelled by clicking them again
' + + '
• can no longer accidentally click wrinklers through other elements
' + + '
• sugar frenzy now triples your CpS for an hour instead of doubling it
' + + '
• this text is now selectable
' + + '
• progress on dungeons minigame is still very much ongoing
' + + '
' + + '
08/08/2018 - hey now
' + + '
• Cookie Clicker somehow turns 5, going against doctors\' most optimistic estimates
' + + '
• added a new tier of building achievements, all named after Smash Mouth\'s classic 1999 hit "All Star"
' + + '
• added a new tier of building upgrades, all named after nothing in particular
' + + '
to our players : thank you so much for sticking with us all those years and allowing us to keep making the dumbest game known to mankind
' + + '
• resumed work on the dungeons minigame
' + + '
' + + '
01/08/2018 - buy buy buy
' + + '
• added a heavenly upgrade that lets you buy all your upgrades instantly
' + + '
• added a heavenly upgrade that lets you see upgrade tiers (feature was previously removed due to being confusing)
' + + '
• added a new wrinkler-related heavenly upgrade
' + + '
• added a new upgrade tier
' + + '
• added a couple new cookies and achievements
' + + '
• new "extra buttons" setting; turning it on adds buttons that let you minimize buildings
' + + '
• new "lump confirmation" setting; turning it on will show a confirmation prompt when you spend sugar lumps
' + + '
• buildings now sell back for 25% of their current price (down from 50%); Earth Shatterer modified accordingly, now gives back 50% (down from 85%)
' + + '
• farm soils now unlock correctly based on current amount of farms
' + + '
• cheapcaps have a new exciting nerf
' + + '
• wrinklegill spawns a bunch more
' + + '
• can now ctrl-shift-click on "Harvest all" to only harvest mature, non-immortal plants
' + + '
• added a new rare type of sugar lump
' + + '
' + + '
20/04/2018 - weeding out some bugs
' + + '
• golden clovers and wrinklegills should spawn a bit more often
' + + '
• cronerice matures a lot sooner
' + + '
• mature elderworts stay mature after reloading
' + + '
• garden interface occupies space more intelligently
' + + '
• seed price displays should be better behaved with short numbers disabled
' + + '
• minigame animations are now turned off if using the "Fancy graphics" option is disabled
' + + '
• CpS achievement requirements were dialed down a wee tad
' + + '
' + + '
19/04/2018 - garden patch
' + + '
• upgrades dropped by garden plants now stay unlocked forever (but drop much more rarely)
' + + '
• garden sugar lump refill now also makes plants spread and mutate 3 times more during the bonus tick
' + + '
• a few new upgrades
' + + '
• a couple bug fixes and rephrasings
' + + '
' + + '
18/04/2018 - your garden-variety update
' + + '
• added the garden, a minigame unlocked by having at least level 1 farms
' + + '
• added a little arrow and a blinky label to signal the game has updated since you last played it (hi!)
' + + '
• new cookies, milk flavors and achievements
' + + '
• sugar lumps are now unlocked whenever you\'ve baked at least a billion cookies, instead of on your first ascension
' + + '
• sugar lump type now saves correctly
' + + '
• minigame sugar lump refills can now only be done every 15 minutes (timer shared across all minigames)
' + + '
• CpS achievements now have steeper requirements
' + + '
• golden cookies now last 5% shorter for every other golden cookie on the screen
' + + '
• the game now remembers which minigames are closed or open
' + + '
• added a popup that shows when a season starts (so people won\'t be so confused about "the game looking weird today")
' + + '
• permanent upgrade slots now show a tooltip for the selected upgrade
' + + '
• finally fixed the save corruption bug, hopefully
' + + '
' + + '
24/02/2018 - sugar coating
' + + '
• added link to official Discord server
' + + '
• felt weird about pushing an update without content so :
' + + '
• added a handful of new cookies
' + + '
• added 3 new heavenly upgrades
' + + '
• short numbers should now be displayed up to novemnonagintillions
' + + '
• cookie chains no longer spawn from the Force the Hand of Fate spell
' + + '
• bigger, better Cookie Clicker content coming later this year
' + + '
' + + '
08/08/2017 - 4 more years
' + + '
• new building : Chancemakers
' + + '
• new milk, new kittens, new dragon aura, new cookie, new upgrade tier
' + + '
• buffs no longer affect offline CpS
' + + '
• Godzamok\'s hunger was made less potent (this is a nerf, very sorry)
' + + '
• grimoire spell costs and maximum magic work differently
' + + '
• Spontaneous Edifice has been reworked
' + + '
• changed unlock levels and prices for some cursor upgrades
' + + '
• fixed buggy pantheon slots, hopefully
' + + '
• fixed "Legacy started a long while ago" showing as "a few seconds ago"
' + + '
• Cookie Clicker just turned 4. Thank you for sticking with us this long!
' + + '
' + + '
15/07/2017 - the spiritual update
' + + '
• implemented sugar lumps, which start coalescing if you\'ve ascended at least once and can be used as currency for special things
' + + '
• buildings can now level up by using sugar lumps in the main buildings display, permanently boosting their CpS
' + + '
• added two new features unlocked by levelling up their associated buildings, Temples and Wizard towers; more building-related minigames will be implemented in the future
' + + '
• active buffs are now saved
' + + '
• the background selector upgrade is now functional
' + + '
• the top menu no longer scrolls with the rest
' + + '
• timespans are written nicer
' + + '
• Dragonflights now tend to supercede Click frenzies, you will rarely have both at the same time
' + + '
• some old bugs were phased out and replaced by new ones
' + + '
' + + '
24/07/2016 - golden cookies overhaul
' + + '
• golden cookies and reindeer now follow a new system involving explicitly defined buffs
' + + '
• a bunch of new golden cookie effects have been added
' + + '
• CpS gains from eggs are now multiplicative
' + + '
• shiny wrinklers are now saved
' + + '
• reindeer have been rebalanced ever so slightly
' + + '
• added a new cookie upgrade near the root of the heavenly upgrade tree; this is intended to boost early ascensions and speed up the game as a whole
' + + '
• due to EU legislation, implemented a warning message regarding browser cookies; do understand that the irony is not lost on us
' + + '
' + + '
08/02/2016 - legacy
' + + '
Everything that was implemented during the almost 2-year-long beta has been added to the live game. To recap :
' + + '
• 3 new buildings : banks, temples, and wizard towers; these have been added in-between existing buildings and as such, may disrupt some building-related achievements
' + + '
• the ascension system has been redone from scratch, with a new heavenly upgrade tree
' + + '
• mysterious new features such as angel-powered offline progression, challenge runs, and a cookie dragon
' + + '
• sounds have been added (can be disabled in the options)
' + + '
• heaps of rebalancing and bug fixes
' + + '
• a couple more upgrades and achievements, probably
' + + '
• fresh new options to further customize your cookie-clicking experience
' + + '
• quality-of-life improvements : better bulk-buy, better switches etc
' + + '
• added some general polish
' /* i liked this dumb pun too much to let it go unnoticed */ + + '
• tons of other little things we can\'t even remember right now
' + + '
Miss the old version? Your old save was automatically exported here!
' + + '
' + + '
05/02/2016 - legacy beta, more fixes
' + + '
• added challenge modes, which can be selected when ascending (only 1 for now : "Born again")
' + + '
• changed the way bulk-buying and bulk-selling works
' + + '
• more bugs ironed out
' + + '
' + + '
03/02/2016 - legacy beta, part III
' + + '
• Not all bugs have been fixed, but everything should be much less broken.
' + + '
• Additions' + + '
' + + "-a few more achievements
" + + "-new option for neat, but slow CSS effects (disabled by default)
" + + "-new option for a less grating cookie sound (enabled by default)
" + + "-new option to bring back the boxes around icons in the stats screen
" + + "-new buttons for saving and loading your game to a text file
" + + "
" + + "
" + + '
• Changes' + + '
' + + "-early game should be a bit faster and very late game was kindly asked to tone it down a tad
" + + "-dragonflight should be somewhat less ridiculously overpowered
" + + "-please let me know if the rebalancing was too heavy or not heavy enough
" + + "-santa and easter upgrades now depend on Santa level and amount of eggs owned, respectively, instead of costing several minutes worth of CpS
" + + "-cookie upgrades now stack multiplicatively rather than additively
" + + "-golden switch now gives +50% CpS, and residual luck is +10% CpS per golden cookie upgrade (up from +25% and +1%, respectively)
" + + "-lucky cookies and cookie chain payouts have been modified a bit, possibly for the better, who knows!
" + + "-wrinklers had previously been reduced to a maximum of 8 (10 with a heavenly upgrade), but are now back to 10 (12 with the upgrade)
" + + /*'-all animations are now handled by requestAnimationFrame(), which should hopefully help make the game less resource-intensive
'+*/ + "-an ascension now only counts for achievement purposes if you earned at least 1 prestige level from it
" + + "-the emblematic Cookie Clicker font (Kavoon) was bugged in Firefox, and has been replaced with a new font (Merriweather)
" + + "-the mysterious wrinkly creature is now even rarer, but has a shadow achievement tied to it
" + + "
" + + "
" + + '
• Fixes' + + '
' + + "-prestige now grants +1% CpS per level as intended, instead of +100%
" + + "-heavenly chips should no longer add up like crazy when you ascend
" + + "-upgrades in the store should no longer randomly go unsorted
" + + "-window can be resized to any size again
" + + '-the "Stats" and "Options" buttons have been swapped again
' + + "-the golden cookie sound should be somewhat clearer
" + + "-the ascend screen should be less CPU-hungry
" + + "
" + + "
" + + '
' + + '
20/12/2015 - legacy beta, part II
' + + '
• existing beta saves have been wiped due to format inconsistencies and just plain broken balance; you\'ll have to start over from scratch - which will allow you to fully experience the update and find all the awful little bugs that no doubt plague it
' + + '
• importing your save from the live version is also fine
' + + '
• we took so long to make this update, Cookie Clicker turned 2 years old in the meantime! Hurray!
' + + '
• heaps of new upgrades and achievements
' + + '
• fixed a whole bunch of bugs
' + + '
• did a lot of rebalancing
' + + '
• reworked heavenly chips and heavenly cookies (still experimenting, will probably rebalance things further)
' + + '
• you may now unlock a dragon friend
' + + '
• switches and season triggers now have their own store section
' + + '
• ctrl-s and ctrl-o now save the game and open the import menu, respectively
' + + '
• added some quick sounds, just as a test
' + + '
• a couple more options
' + + '
• even more miscellaneous changes and additions
' + + '
' + + '
25/08/2014 - legacy beta, part I
' + + '
• 3 new buildings
' + + '
• price and CpS curves revamped
' + + '
• CpS calculations revamped; cookie upgrades now stack multiplicatively
' + + '
• prestige system redone from scratch, with a whole new upgrade tree
' + + '
• added some general polish
' + + '
• tons of other miscellaneous fixes and additions
' + + '
• Cookie Clicker is now 1 year old! (Thank you guys for all the support!)
' + + '
• Note : this is a beta; you are likely to encounter bugs and oversights. Feel free to send me feedback if you find something fishy!
' + + '
' + + '
18/05/2014 - better late than easter
' + + '
• bunnies and eggs, somehow
' + + '
• prompts now have keyboard shortcuts like system prompts would
' + + '
• naming your bakery? you betcha
' + + '
• "Fast notes" option to make all notifications close faster; new button to close all notifications
' + + '
• the dungeons beta is now available on /betadungeons
' + + '
' + + '
09/04/2014 - nightmare in heaven
' + + '
• broke a thing; heavenly chips were corrupted for some people
' + + '
• will probably update to /beta first in the future
' + + '
• sorry again
' + + '
' + + '
09/04/2014 - quality of life
' + + '
• new upgrade and achievement tier
' + + '
• popups and prompts are much nicer
' + + '
• tooltips on buildings are more informative
' + + '
• implemented a simplified version of the Frozen Cookies add-on\'s short number formatting
' + + '
• you can now buy 10 and sell all of a building at a time
' + + '
• tons of optimizations and subtler changes
' + + '' + + '
' + + '
05/04/2014 - pity the fool
' + + '
• wrinklers should now be saved so you don\'t have to pop them every time you refresh the game
' + + '
• you now properly win 1 cookie upon reaching 10 billion cookies and making it on the local news
' + + '
• miscellaneous fixes and tiny additions
' + + '
• added a few very rudimentary mod hooks
' + + '
• the game should work again in Opera
' + + '
• don\'t forget to check out RandomGen, our all-purpose random generator maker!
' + + '
' + + '
01/04/2014 - fooling around
' + + '
• it\'s about time : Cookie Clicker has turned into the much more realistic Cookie Baker
' + + '
• season triggers are cheaper and properly unlock again when they run out
' + + '
• buildings should properly unlock (reminder : building unlocking is completely cosmetic and does not change the gameplay)
' + + '
' + + '
14/02/2014 - lovely rainbowcalypse
' + + '
• new building (it\'s been a while). More to come!
' + + '
• you can now trigger seasonal events to your heart\'s content (upgrade unlocks at 5000 heavenly chips)
' + + '
• new ultra-expensive batch of seasonal cookie upgrades you\'ll love to hate
' + + '
• new timer bars for golden cookie buffs
' + + '
• buildings are now hidden when you start out and appear as they become available
' + + '
• technical stuff : the game is now saved through localstorage instead of browser cookies, therefore ruining a perfectly good pun
' + + '
' + + '
22/12/2013 - merry fixmas
' + + '
• some issues with the christmas upgrades have been fixed
' + + '
• reindeer cookie drops are now more common
' + + '
• reindeers are now reindeer
' + + '
' + + '
20/12/2013 - Christmas is here
' + + '
• there is now a festive new evolving upgrade in store
' + + '
• reindeer are running amok (catch them if you can!)
' + + '
• added a new option to warn you when you close the window, so you don\'t lose your un-popped wrinklers
' + + '
• also added a separate option for displaying cursors
' + + '
• all the Halloween features are still there (and having the Spooky cookies achievements makes the Halloween cookies drop much more often)
' + + '
• oh yeah, we now have Cookie Clicker shirts, stickers and hoodies! (they\'re really rad)
' + + '
' + + '
29/10/2013 - spooky update
' + + "
• the Grandmapocalypse now spawns wrinklers, hideous elderly creatures that damage your CpS when they reach your big cookie. Thankfully, you can click on them to make them explode (you'll even gain back the cookies they've swallowed - with interest!).
" + + '
• wrath cookie now 27% spookier
' + + '
• some other stuff
' + + '
• you should totally go check out Candy Box 2, the sequel to the game that inspired Cookie Clicker
' + + '
' + + '
15/10/2013 - it\'s a secret
' + + '
• added a new heavenly upgrade that gives you 5% of your heavenly chips power for 11 cookies (if you purchased the Heavenly key, you might need to buy it again, sorry)
' + + '
• golden cookie chains should now work properly
' + + '
' + + '
15/10/2013 - player-friendly
' + + '
• heavenly upgrades are now way, way cheaper
' + + '
• tier 5 building upgrades are 5 times cheaper
' + + '
• cursors now just plain disappear with Fancy Graphics off, I might add a proper option to toggle only the cursors later
' + + '
• warning : the Cookie Monster add-on seems to be buggy with this update, you might want to wait until its programmer updates it
' + + '
' + + '
15/10/2013 - a couple fixes
' + + '
• golden cookies should no longer spawn embarrassingly often
' + + '
• cursors now stop moving if Fancy Graphics is turned off
' + + '
' + + '
14/10/2013 - going for the gold
' + + '
• golden cookie chains work a bit differently
' + + '
• golden cookie spawns are more random
' + + '
• CpS achievements are no longer affected by golden cookie frenzies
' + + '
• revised cookie-baking achievement requirements
' + + '
• heavenly chips now require upgrades to function at full capacity
' + + '
• added 4 more cookie upgrades, unlocked after reaching certain amounts of Heavenly Chips
' + + '
• speed baking achievements now require you to have no heavenly upgrades; as such, they have been reset for everyone (along with the Hardcore achievement) to better match their initially intended difficulty
' + + '
• made good progress on the mobile port
' + + '
' + + '
01/10/2013 - smoothing it out
' + + '
• some visual effects have been completely rewritten and should now run more smoothly (and be less CPU-intensive)
' + + '
• new upgrade tier
' + + '
• new milk tier
' + + '
• cookie chains have different capping mechanics
' + + '
• antimatter condensers are back to their previous price
' + + '
• heavenly chips now give +2% CpS again (they will be extensively reworked in the future)
' + + '
• farms have been buffed a bit (to popular demand)
' + + '
• dungeons still need a bit more work and will be released soon - we want them to be just right! (you can test an unfinished version in the beta)
' + + '
' + + '
28/09/2013 - dungeon beta
' + + '
• from now on, big updates will come through a beta stage first (you can try it here)
' + + '
• first dungeons! (you need 50 factories to unlock them!)
' + + '
• cookie chains can be longer
' + + '
• antimatter condensers are a bit more expensive
' + + '
• heavenly chips now only give +1% cps each (to account for all the cookies made from condensers)
' + + '
• added flavor text on all upgrades
' + + '
' + + '
15/09/2013 - anticookies
' + + '
• ran out of regular matter to make your cookies? Try our new antimatter condensers!
' + + '
• renamed Hard-reset to "Wipe save" to avoid confusion
' + + '
• reset achievements are now regular achievements and require cookies baked all time, not cookies in bank
' + + '
• heavenly chips have been nerfed a bit (and are now awarded following a geometric progression : 1 trillion for the first, 2 for the second, etc); the prestige system will be extensively reworked in a future update (after dungeons)
' + + '
• golden cookie clicks are no longer reset by soft-resets
' + + '
• you can now see how long you\'ve been playing in the stats
' + + '
' + + '
08/09/2013 - everlasting cookies
' + + '
• added a prestige system - resetting gives you permanent CpS boosts (the more cookies made before resetting, the bigger the boost!)
' + + '
• save format has been slightly modified to take less space
' + + '
• Leprechaun has been bumped to 777 golden cookies clicked and is now shadow; Fortune is the new 77 golden cookies achievement
' + + '
• clicking frenzy is now x777
' + + '
' + + '
04/09/2013 - smarter cookie
' + + '
• golden cookies only have 20% chance of giving the same outcome twice in a row now
' + + '
• added a golden cookie upgrade
' + + '
• added an upgrade that makes pledges last twice as long (requires having pledged 10 times)
' + + '
• Quintillion fingers is now twice as efficient
' + + '
• Uncanny clicker was really too unpredictable; it is now a regular achievement and no longer requires a world record, just *pretty fast* clicking
' + + '
' + + '
02/09/2013 - a better way out
' + + '
• Elder Covenant is even cheaper, and revoking it is cheaper still (also added a new achievement for getting it)
' + + '
• each grandma upgrade now requires 15 of the matching building
' + + '
• the dreaded bottom cursor has been fixed with a new cursor display style
' + + '
• added an option for faster, cheaper graphics
' + + '
• base64 encoding has been redone; this might make saving possible again on some older browsers
' + + '
• shadow achievements now have their own section
' + + '
• raspberry juice is now named raspberry milk, despite raspberry juice being delicious and going unquestionably well with cookies
' + + '
• HOTFIX : cursors now click; fancy graphics button renamed; cookies amount now more visible against cursors
' + + '
' + + '
01/09/2013 - sorting things out
' + + '
• upgrades and achievements are properly sorted in the stats screen
' + + '
• made Elder Covenant much cheaper and less harmful
' + + '
• importing from the first version has been disabled, as promised
' + + '
• "One mind" now actually asks you to confirm the upgrade
' + + '
' + + '
31/08/2013 - hotfixes
' + + '
• added a way to permanently stop the grandmapocalypse
' + + '
• Elder Pledge price is now capped
' + + '
• One Mind and other grandma research upgrades are now a little more powerful, if not 100% accurate
' + + '
• "golden" cookie now appears again during grandmapocalypse; Elder Pledge-related achievements are now unlockable
' + + '
' + + '
31/08/2013 - too many grandmas
' + + '
• the grandmapocalypse is back, along with more grandma types
' + + '
• added some upgrades that boost your clicking power and make it scale with your cps
' + + '
• clicking achievements made harder; Neverclick is now a shadow achievement; Uncanny clicker should now truly be a world record
' + + '
' + + '
28/08/2013 - over-achiever
' + + '
• added a few more achievements
' + + '
• reworked the "Bake X cookies" achievements so they take longer to achieve
' + + '
' + + '
27/08/2013 - a bad idea
' + + '
• due to popular demand, retired 5 achievements (the "reset your game" and "cheat" ones); they can still be unlocked, but do not count toward your total anymore. Don\'t worry, there will be many more achievements soon!
' + + '
• made some achievements hidden for added mystery
' + + '
' + + '
27/08/2013 - a sense of achievement
' + + '
• added achievements (and milk)
' + + '
(this is a big update, please don\'t get too mad if you lose some data!)
' + + '
' + + '
26/08/2013 - new upgrade tier
' + + '
• added some more upgrades (including a couple golden cookie-related ones)
' + + '
• added clicking stats
' + + '
' + + '
26/08/2013 - more tweaks
' + + '
• tweaked a couple cursor upgrades
' + + '
• made time machines less powerful
' + + '
• added offline mode option
' + + '
' + + '
25/08/2013 - tweaks
' + + '
• rebalanced progression curve (mid- and end-game objects cost more and give more)
' + + '
• added some more cookie upgrades
' + + '
• added CpS for cursors
' + + '
• added sell button
' + + '
• made golden cookie more useful
' + + '
' + + '
24/08/2013 - hotfixes
' + + '
• added import/export feature, which also allows you to retrieve a save game from the old version (will be disabled in a week to prevent too much cheating)
' + + '
• upgrade store now has unlimited slots (just hover over it), due to popular demand
' + + '
• added update log
' + + '
' + + '
24/08/2013 - big update!
' + + '
• revamped the whole game (new graphics, new game mechanics)
' + + '
• added upgrades
' + + '
• much safer saving
' + + '
' + + '
08/08/2013 - game launch
' + + '
• made the game in a couple hours, for laughs
' + + '
• kinda starting to regret it
' + + '
• ah well
' + + "
" + + "
"; + + Game.ready = 0; + + Game.Load = function (callback) { + //l('offGameMessage').innerHTML='
Loading...
'; + Game.Loader = new Loader(); + Game.Loader.domain = "img/"; + if (typeof PRELOAD !== "undefined") Game.Loader.loaded = PRELOAD(Game.Init); + else Game.Loader.loaded = callback; + Game.Loader.Load(["filler.png"]); + }; + Game.ErrorFrame = function () { + l("offGameMessage").innerHTML = + '
Oops. Wrong address!
' + + "
It looks like you're accessing Cookie Clicker from another URL than the official one.
" + + 'You can play Cookie Clicker over here!
' + + "(If for any reason, you are unable to access the game on the official URL, we are currently working on a second domain.)
"; + }; + Game.timedout = false; + Game.Timeout = function () { + Game.WriteSave(); + Game.killShimmers(); + l("offGameMessage").innerHTML = + '
' + + (Game.Has("Twin Gates of Transcendence") + ? loc("Cookie Clicker is in sleep mode and generating offline cookies.") + : loc("Cookie Clicker is in sleep mode.")) + + "
" + + loc( + "%1 to resume from your save file.", + "' + + loc("Click here") + + "" + ) + + '
' + + loc( + "(this happens when too many frames are skipped at once,
usually when the game has been running in the background for a while)
(you can turn this feature off in the settings menu)" + ) + + "
"; + l("offGameMessageWrap").style.display = "table"; + Game.timedout = true; + console.log( + "[=== Game timed out and has been put in sleep mode. Data was saved. ===]" + ); + }; + Game.Resume = function () { + l("offGameMessage").innerHTML = ""; + l("offGameMessageWrap").style.display = "none"; + Game.timedout = false; + Game.time = Date.now(); + Game.accumulatedDelay = 0; + Game.delayTimeouts = 0; + Game.lastActivity = Date.now(); + Game.Loop(); + Game.LoadSave(); + console.log("[=== Game resumed! Data was loaded. ===]"); + }; + + Game.Init = function () { + Game.ready = 1; + + /*===================================================================================== + VARIABLES AND PRESETS + =======================================================================================*/ + Game.T = 0; + Game.drawT = 0; + Game.loopT = 0; + Game.fps = 30; + + Game.season = Game.baseSeason; + + Game.l = l("game"); + Game.wrapper = l("wrapper"); + Game.bounds = 0; //rectangle defining screen limits (right,left,bottom,top) updated every logic frame + + TopBarOffset = 32; + if (!App) Game.wrapper.classList.add("onWeb"); + else { + Game.wrapper.classList.add("offWeb"); + TopBarOffset = 0; + } + + if (Game.mobile == 1) { + Game.wrapper.className = "mobile"; + } + Game.clickStr = Game.touchEvents ? "ontouchend" : "onclick"; + + l("versionNumber").innerHTML = + "v. " + + Game.version + + (!App + ? '
' + : "") + + (Game.beta ? ' beta' : ""); + + if (!App) { + if (Game.beta) { + var me = l("linkVersionBeta"); + me.parentNode.removeChild(me); + } else if (Game.version == 1.0466) { + var me = l("linkVersionOld"); + me.parentNode.removeChild(me); + } else { + var me = l("linkVersionLive"); + me.parentNode.removeChild(me); + } + } + + Game.lastActivity = Date.now(); //reset on mouse move, key press or click + + //latency compensator stuff + Game.time = Date.now(); + Game.accumulatedDelay = 0; + Game.delayTimeouts = 0; //how many times we've gone over the timeout delay + Game.catchupLogic = 0; + Game.fpsStartTime = 0; + Game.frameNumber = 0; + Game.currentFps = Game.fps; + Game.previousFps = Game.currentFps; + Game.getFps = function () { + Game.frameNumber++; + var currentTime = (Date.now() - Game.fpsStartTime) / 1000; + var result = Math.floor(Game.frameNumber / currentTime); + if (currentTime > 1) { + Game.fpsStartTime = Date.now(); + Game.frameNumber = 0; + } + return result; + }; + + Game.cookiesEarned = 0; //all cookies earned during gameplay + Game.cookies = 0; //cookies + Game.cookiesd = 0; //cookies display + Game.cookiesPs = 1; //cookies per second (to recalculate with every new purchase) + Game.cookiesPsRaw = 0; //raw cookies per second + Game.cookiesPsRawHighest = 0; //highest raw cookies per second this ascension + Game.cookiesReset = 0; //cookies lost to resetting (used to determine prestige and heavenly chips) + Game.cookieClicks = 0; //+1 for each click on the cookie + Game.goldenClicks = 0; //+1 for each golden cookie clicked (all time) + Game.goldenClicksLocal = 0; //+1 for each golden cookie clicked (this game only) + Game.missedGoldenClicks = 0; //+1 for each golden cookie missed + Game.handmadeCookies = 0; //all the cookies made from clicking the cookie + Game.milkProgress = 0; //you gain a little bit for each achievement. Each increment of 1 is a different milk displayed. + Game.milkH = Game.milkProgress / 2; //milk height, between 0 and 1 (although should never go above 0.5) + Game.milkHd = 0; //milk height display + Game.milkType = 0; //custom milk + Game.bgType = 0; //custom background + Game.chimeType = 0; //golden cookie chime + Game.prestige = 0; //prestige level (recalculated depending on Game.cookiesReset) + Game.heavenlyChips = 0; //heavenly chips the player currently has + Game.heavenlyChipsDisplayed = 0; //ticks up or down to match Game.heavenlyChips + Game.heavenlyChipsSpent = 0; //heavenly chips spent on cookies, upgrades and such + Game.heavenlyCookies = 0; //how many cookies have we baked from chips (unused) + Game.permanentUpgrades = [-1, -1, -1, -1, -1]; + Game.ascensionMode = 0; //type of challenge run if any + Game.resets = 0; //reset counter + Game.lumps = -1; //sugar lumps + Game.lumpsTotal = -1; //sugar lumps earned across all playthroughs (-1 means they haven't even started yet) + Game.lumpT = Date.now(); //time when the current lump started forming + Game.lumpRefill = 0; //time left before a sugar lump can be used again (on minigame refills etc) in logic frames + + Game.makeSeed = function () { + var chars = "abcdefghijklmnopqrstuvwxyz".split(""); + var str = ""; + for (var i = 0; i < 5; i++) { + str += choose(chars); + } + return str; + }; + Game.seed = Game.makeSeed(); //each run has its own seed, used for deterministic random stuff + + Game.volume = 75; //sound volume + Game.volumeMusic = 50; //music volume + + Game.elderWrath = 0; + Game.elderWrathOld = 0; + Game.elderWrathD = 0; + Game.pledges = 0; + Game.pledgeT = 0; + Game.researchT = 0; + Game.nextResearch = 0; + Game.cookiesSucked = 0; //cookies sucked by wrinklers + Game.cpsSucked = 0; //percent of CpS being sucked by wrinklers + Game.wrinklersPopped = 0; + Game.santaLevel = 0; + Game.reindeerClicked = 0; + Game.seasonT = 0; + Game.seasonUses = 0; + Game.dragonLevel = 0; + Game.dragonAura = 0; + Game.dragonAura2 = 0; + + Game.fortuneGC = 0; + Game.fortuneCPS = 0; + + Game.blendModesOn = + document.createElement("detect").style.mixBlendMode === ""; + + Game.bg = ""; //background (grandmas and such) + Game.bgFade = ""; //fading to background + Game.bgR = 0; //ratio (0 - not faded, 1 - fully faded) + Game.bgRd = 0; //ratio displayed + + Game.windowW = window.innerWidth; + Game.windowH = window.innerHeight; + Game.scale = 1; + + window.addEventListener("resize", function (e) { + Game.resize(); + if (App && App.onResize) App.onResize(); + }); + + Game.resize = function () { + var w = window.innerWidth; + var h = window.innerHeight; + + var prevW = Game.windowW; + var prevH = Game.windowH; + + var scale = Math.min(w / Math.max(800, w), h / Math.max(200, h)); + Game.windowW = Math.floor(w / scale); + Game.windowH = Math.floor(h / scale); + if (scale != 1) { + Game.wrapper.style.transform = "scale(" + scale + ")"; + Game.wrapper.style.width = Game.windowW + "px"; + Game.wrapper.style.height = Game.windowH + "px"; + } else { + Game.wrapper.style.removeProperty("transform"); + Game.wrapper.style.width = "100%"; + Game.wrapper.style.height = "100%"; + } + Game.scale = scale; + + for (var i in Game.Objects) { + var me = Game.Objects[i]; + me.toResize = true; + if (me.minigame && me.minigame.onResize) me.minigame.onResize(); + } + + if (Game.getNewTicker) { + if ( + prevW >= Game.tickerTooNarrow && + Game.windowW < Game.tickerTooNarrow + ) + Game.getNewTicker(true); + else if ( + prevW < Game.tickerTooNarrow && + Game.windowW >= Game.tickerTooNarrow + ) + Game.getNewTicker(true); + } + }; + Game.resize(); + + Game.startDate = parseInt(Date.now()); //when we started playing + Game.fullDate = parseInt(Date.now()); //when we started playing (carries over with resets) + Game.lastDate = parseInt(Date.now()); //when we last saved the game (used to compute "cookies made since we closed the game" etc) + + Game.prefs = []; + Game.DefaultPrefs = function () { + Game.prefs.particles = 1; //particle effects : falling cookies etc + Game.prefs.numbers = 1; //numbers that pop up when clicking the cookie + Game.prefs.autosave = 1; //save the game every minute or so + Game.prefs.autoupdate = 1; //send an AJAX request to the server every 30 minutes (note : ignored) + Game.prefs.milk = 1; //display milk + Game.prefs.fancy = 1; //CSS shadow effects (might be heavy on some browsers) + Game.prefs.warn = 0; //warn before closing the window + Game.prefs.cursors = 1; //display cursors + Game.prefs.focus = 1; //make the game refresh less frequently when off-focus + Game.prefs.popups = 0; //use old-style popups (no longer used) + Game.prefs.format = 0; //shorten numbers + Game.prefs.notifs = 0; //notifications fade faster + Game.prefs.animate = 1; //animate buildings + Game.prefs.wobbly = 1; //wobbly cookie + Game.prefs.monospace = 0; //alt monospace font for cookies + Game.prefs.filters = 1; //CSS filter effects (might be heavy on some browsers) + Game.prefs.cookiesound = 1; //use new cookie click sound + Game.prefs.crates = 0; //show crates around icons in stats + Game.prefs.altDraw = 0; //use requestAnimationFrame to update drawing instead of fixed 30 fps setTimeout + Game.prefs.showBackupWarning = 1; //if true, show a "Have you backed up your save?" message on save load; set to false when save is exported + Game.prefs.extraButtons = 1; //if true, show Mute buttons and the building master bar + Game.prefs.askLumps = 0; //if true, show a prompt before spending lumps + Game.prefs.customGrandmas = 1; //if true, show patreon names for grandmas + Game.prefs.timeout = 0; //if true, game may show pause screen when timed out + Game.prefs.cloudSave = 1; //if true and on Steam, save and load to cloud + Game.prefs.bgMusic = 1; //if true and on Steam, play music even when game isn't focused + Game.prefs.notScary = 0; //if true, make some of the scary stuff less scary ("eyebrow mode") + Game.prefs.fullscreen = 0; //if true, Steam game will be fullscreen + Game.prefs.screenreader = 0; //if true, add some DOM stuff to facilitate screenreader interaction (requires reload) + Game.prefs.discordPresence = 1; //if true and applicable, show game activity in Discord status + }; + Game.DefaultPrefs(); + + window.onbeforeunload = function (event) { + if (Game.prefs && Game.prefs.warn) { + if (typeof event == "undefined") event = window.event; + if (event) + event.returnValue = loc( + "Are you sure you want to close Cookie Clicker?" + ); + } + }; + + Game.Mobile = function () { + if (!Game.mobile) { + Game.wrapper.className = "mobile"; + Game.mobile = 1; + } else { + Game.wrapper.className = ""; + Game.mobile = 0; + } + }; + + Game.showBackupWarning = function () { + Game.Notify( + loc("Back up your save!"), + loc( + 'Hello again! Just a reminder that you may want to back up your Cookie Clicker save every once in a while, just in case.
To do so, go to Options and hit "Export save" or "Save to file"!' + ) + + '
' + + loc("Don't show this again") + + "", + [25, 7] + ); + }; + + /*===================================================================================== + BAKERY NAME + =======================================================================================*/ + Game.RandomBakeryName = function () { + var str = ""; + if (EN) { + return ( + (Math.random() > 0.05 + ? choose([ + "Magic", + "Fantastic", + "Fancy", + "Sassy", + "Snazzy", + "Pretty", + "Cute", + "Pirate", + "Ninja", + "Zombie", + "Robot", + "Radical", + "Urban", + "Cool", + "Hella", + "Sweet", + "Awful", + "Double", + "Triple", + "Turbo", + "Techno", + "Disco", + "Electro", + "Dancing", + "Wonder", + "Mutant", + "Space", + "Science", + "Medieval", + "Future", + "Captain", + "Bearded", + "Lovely", + "Tiny", + "Big", + "Fire", + "Water", + "Frozen", + "Metal", + "Plastic", + "Solid", + "Liquid", + "Moldy", + "Shiny", + "Happy", + "Happy Little", + "Slimy", + "Tasty", + "Delicious", + "Hungry", + "Greedy", + "Lethal", + "Professor", + "Doctor", + "Power", + "Chocolate", + "Crumbly", + "Choklit", + "Righteous", + "Glorious", + "Mnemonic", + "Psychic", + "Frenetic", + "Hectic", + "Crazy", + "Royal", + "El", + "Von", + ]) + " " + : "Mc") + + choose([ + "Cookie", + "Biscuit", + "Muffin", + "Scone", + "Cupcake", + "Pancake", + "Chip", + "Sprocket", + "Gizmo", + "Puppet", + "Mitten", + "Sock", + "Teapot", + "Mystery", + "Baker", + "Cook", + "Grandma", + "Click", + "Clicker", + "Spaceship", + "Factory", + "Portal", + "Machine", + "Experiment", + "Monster", + "Panic", + "Burglar", + "Bandit", + "Booty", + "Potato", + "Pizza", + "Burger", + "Sausage", + "Meatball", + "Spaghetti", + "Macaroni", + "Kitten", + "Puppy", + "Giraffe", + "Zebra", + "Parrot", + "Dolphin", + "Duckling", + "Sloth", + "Turtle", + "Goblin", + "Pixie", + "Gnome", + "Computer", + "Pirate", + "Ninja", + "Zombie", + "Robot", + ]) + ); + } else { + if ( + locStrings["bakery random name, 1st half"] && + locStrings["bakery random name, 2nd half"] + ) + str += + choose(loc("bakery random name, 1st half")) + + " " + + choose(loc("bakery random name, 2nd half")); + else str += choose(loc("bakery random name")); + } + return str; + }; + Game.GetBakeryName = function () { + return Game.RandomBakeryName(); + }; + Game.bakeryNameL = l("bakeryName"); + Game.bakeryNameSet = function (what) { + try { + var exp = new RegExp("[^'\\-_0-9 \\p{L}]", "gu"); + Game.bakeryName = what.replace(exp, " "); + //Game.bakeryName=what.replace(/[^'\-_0-9 \p{L}]/gu,' '); + Game.bakeryName = Game.bakeryName.trim().substring(0, 28); + } catch (e) { + var exp = new RegExp("W+", "g"); + Game.bakeryName = what.replace(exp, " "); + //Game.bakeryName=what.replace(/\W+/g,' '); + Game.bakeryName = Game.bakeryName.substring(0, 28); + } + Game.bakeryNameRefresh(); + if (Game.bakeryName == "RESTORE BACKUP" && App && App.restoreBackup) + App.restoreBackup(); + }; + Game.bakeryNameRefresh = function () { + var name = Game.bakeryName; + if (EN) { + if (name.slice(-1).toLowerCase() == "s") name += "' bakery"; + else name += "'s bakery"; + } else name = loc("%1's bakery", name); + Game.bakeryNameL.textContent = name; + name = Game.bakeryName.toLowerCase(); + if (name == "orteil") Game.Win("God complex"); + if ( + !App && + name.indexOf("saysopensesame", name.length - "saysopensesame".length) > + 0 && + !Game.sesame + ) + Game.OpenSesame(); + Game.recalculateGains = 1; + }; + Game.bakeryNamePrompt = function () { + PlaySound("snd/tick.mp3"); + Game.Prompt( + "

" + + loc("Name your bakery") + + '

' + + loc("What should your bakery's name be?") + + '
', + [ + [ + loc("Confirm"), + "if (l('bakeryNameInput').value.length>0) {Game.bakeryNameSet(l('bakeryNameInput').value);Game.Win('What\\'s in a name');Game.ClosePrompt();}", + ], + [loc("Random"), "Game.bakeryNamePromptRandom();"], + loc("Cancel"), + ] + ); + l("bakeryNameInput").focus(); + l("bakeryNameInput").select(); + }; + Game.bakeryNamePromptRandom = function () { + l("bakeryNameInput").value = Game.RandomBakeryName(); + }; + AddEvent(Game.bakeryNameL, "click", Game.bakeryNamePrompt); + + Game.bakeryNameSet(Game.GetBakeryName()); + + /*===================================================================================== + TOOLTIP + =======================================================================================*/ + Game.tooltip = { + text: "", + x: 0, + y: 0, + origin: "", + on: 0, + tt: l("tooltip"), + tta: l("tooltipAnchor"), + shouldHide: 1, + dynamic: 0, + from: 0, + }; + Game.tooltip.draw = function (from, text, origin) { + this.shouldHide = 0; + this.text = text; + this.from = from; + //this.x=x; + //this.y=y; + this.origin = origin; + var tt = this.tt; + var tta = this.tta; + tt.style.left = "auto"; + tt.style.top = "auto"; + tt.style.right = "auto"; + tt.style.bottom = "auto"; + if (typeof this.text === "function") { + var text = this.text(); + if (text == "") tta.style.opacity = "0"; + else { + tt.innerHTML = unescape(text); + tta.style.opacity = "1"; + } + } else tt.innerHTML = unescape(this.text); + //tt.innerHTML=(typeof this.text==='function')?unescape(this.text()):unescape(this.text); + tta.style.display = "block"; + tta.style.visibility = "hidden"; + Game.tooltip.update(); + tta.style.visibility = "visible"; + this.on = 1; + }; + Game.tooltip.update = function () { + var X = 0; + var Y = 0; + var width = this.tt.offsetWidth; + var height = this.tt.offsetHeight; + if (this.origin == "store") { + X = Game.windowW - 332 - width; + Y = Game.mouseY - 32; + if (Game.onCrate) Y = Game.onCrate.getBounds().top - 42; + Y = Math.max(0, Math.min(Game.windowH - height - 44, Y)); + /*this.tta.style.right='308px';//'468px'; + this.tta.style.left='auto'; + if (Game.onCrate) Y=Game.onCrate.getBounds().top-2; + this.tta.style.top=Math.max(0,Math.min(Game.windowH-this.tt.clientHeight-64,Y-48))+'px';*/ + } else { + if (Game.onCrate) { + var rect = Game.onCrate.getBounds(); + if (rect.left == 0 && rect.top == 0) { + //if we get that bug where we get stuck in the top-left, move to the mouse (REVISION : just do nothing) + return false; /*rect.left=Game.mouseX-24;rect.right=Game.mouseX+24;rect.top=Game.mouseY-24;rect.bottom=Game.mouseY+24;*/ + } + if (this.origin == "left") { + X = rect.left - width - 16; + Y = rect.top + (rect.bottom - rect.top) / 2 - height / 2 - 38; + Y = Math.max(0, Math.min(Game.windowH - height - 19, Y)); + if (X < 0) X = rect.right; + } else { + X = rect.left + (rect.right - rect.left) / 2 - width / 2 - 8; + Y = rect.top - height - TopBarOffset - 16; + X = Math.max(0, Math.min(Game.windowW - width - 16, X)); + if (Y < 0) Y = rect.bottom - TopBarOffset; + } + } else if (this.origin == "bottom-right") { + X = Game.mouseX + 8; + Y = Game.mouseY - 32; + X = Math.max(0, Math.min(Game.windowW - width - 16, X)); + Y = Math.max(0, Math.min(Game.windowH - height - 64, Y)); + } else if (this.origin == "bottom") { + X = Game.mouseX - width / 2 - 8; + Y = Game.mouseY + 24; + X = Math.max(0, Math.min(Game.windowW - width - 16, X)); + Y = Math.max(0, Math.min(Game.windowH - height - 64, Y)); + } else if (this.origin == "left") { + X = Game.mouseX - width - 24; + Y = Game.mouseY - height / 2 - 8; + X = Math.max(0, Math.min(Game.windowW - width - 16, X)); + Y = Math.max(0, Math.min(Game.windowH - height - 64, Y)); + } else if (this.origin == "this" && this.from) { + var rect = this.from.getBounds(); + X = (rect.left + rect.right) / 2 - width / 2 - 8; + Y = rect.top - this.tt.clientHeight - 48; + X = Math.max(0, Math.min(Game.windowW - width - 16, X)); + //Y=Math.max(0,Math.min(Game.windowH-this.tt.clientHeight-64,Y)); + if (Y < 0) Y = rect.bottom - 24; + if (Y + height + 40 > Game.windowH) { + X = rect.right + 8; + Y = rect.top + (rect.bottom - rect.top) / 2 - height / 2 - 38; + Y = Math.max(0, Math.min(Game.windowH - height - 19, Y)); + } + } else { + X = Game.mouseX - width / 2 - 8; + Y = Game.mouseY - height - 32; + X = Math.max(0, Math.min(Game.windowW - width - 16, X)); + Y = Math.max(0, Math.min(Game.windowH - height - 64, Y)); + } + } + this.tta.style.left = X + "px"; + this.tta.style.right = "auto"; + this.tta.style.top = Y + "px"; + this.tta.style.bottom = "auto"; + if (this.shouldHide) { + this.hide(); + this.shouldHide = 0; + } else if (Game.drawT % 10 == 0 && typeof this.text === "function") { + var text = this.text(); + if (text == "") this.tta.style.opacity = "0"; + else { + this.tt.innerHTML = unescape(text); + this.tta.style.opacity = "1"; + } + } + }; + Game.tooltip.hide = function () { + if (this.tta) this.tta.style.display = "none"; + this.dynamic = 0; + this.on = 0; + }; + Game.getTooltip = function (text, origin, isCrate) { + origin = origin ? origin : "middle"; + if (isCrate) + return ( + 'onMouseOut="Game.setOnCrate(0);Game.tooltip.shouldHide=1;" onMouseOver="if (!Game.mouseDown) {Game.setOnCrate(this);Game.tooltip.dynamic=0;Game.tooltip.draw(this,\'' + + escape(text) + + "','" + + origin + + "');Game.tooltip.wobble();}\"" + ); + else + return ( + 'onMouseOut="Game.tooltip.shouldHide=1;" onMouseOver="Game.tooltip.dynamic=0;Game.tooltip.draw(this,\'' + + escape(text) + + "','" + + origin + + "');Game.tooltip.wobble();\"" + ); + }; + Game.getDynamicTooltip = function (func, origin, isCrate) { + origin = origin ? origin : "middle"; + if (isCrate) + return ( + 'onMouseOut="Game.setOnCrate(0);Game.tooltip.shouldHide=1;" onMouseOver="if (!Game.mouseDown) {Game.setOnCrate(this);Game.tooltip.dynamic=1;Game.tooltip.draw(this,' + + "function(){return " + + func + + "();}" + + ",'" + + origin + + "');Game.tooltip.wobble();}\"" + ); + return ( + 'onMouseOut="Game.tooltip.shouldHide=1;" onMouseOver="Game.tooltip.dynamic=1;Game.tooltip.draw(this,' + + "function(){return " + + func + + "();}" + + ",'" + + origin + + "');Game.tooltip.wobble();\"" + ); + }; + Game.attachTooltip = function (el, func, origin) { + if (typeof func === "string") { + var str = func; + func = (function (str) { + return function () { + return str; + }; + })(str); + } + origin = origin ? origin : "middle"; + AddEvent( + el, + "mouseover", + (function (func, el, origin) { + return function () { + Game.tooltip.dynamic = 1; + Game.tooltip.draw(el, func, origin); + }; + })(func, el, origin) + ); + AddEvent( + el, + "mouseout", + (function () { + return function () { + Game.tooltip.shouldHide = 1; + }; + })() + ); + }; + Game.tooltip.wobble = function () { + //disabled because this effect doesn't look good with the slight slowdown it might or might not be causing. + if (false) { + this.tt.className = "framed"; + void this.tt.offsetWidth; + this.tt.className = "framed wobbling"; + } + }; + + /*===================================================================================== + UPDATE CHECKER + =======================================================================================*/ + Game.CheckUpdates = function () { + if (!App) ajax("server.php?q=checkupdate", Game.CheckUpdatesResponse); + }; + Game.CheckUpdatesResponse = function (response) { + var r = response.split("|"); + var str = ""; + if (r[0] == "alert") { + if (r[1]) str = r[1]; + } else if (parseFloat(r[0]) > Game.version) { + str = "" + loc("New version available: v. %1!", r[0]) + ""; + if (r[1]) + str += "
" + loc('Update note: "%1"', r[1]) + ""; + str += "
" + loc("Refresh to get it!") + ""; + } + if (str != "") { + l("alert").innerHTML = str; + l("alert").style.display = "block"; + } + }; + + /*===================================================================================== + DATA GRABBER + =======================================================================================*/ + + Game.externalDataLoaded = false; + + Game.grandmaNames = [ + "Granny", + "Gusher", + "Ethel", + "Edna", + "Doris", + "Maud", + "Hilda", + "Gladys", + "Michelle", + "Michele", + "Phyllis", + "Millicent", + "Muriel", + "Myrtle", + "Mildred", + "Mavis", + "Helen", + "Gloria", + "Sheila", + "Betty", + "Gertrude", + "Agatha", + "Beryl", + "Agnes", + "Pearl", + "Precious", + "Ruby", + "Vera", + "Bonnie", + "Ada", + "Bunny", + "Cookie", + "Darling", + "Gaga", + "GamGam", + "Memaw", + "Mimsy", + "Peanut", + "Nana", + "Nan", + "Tootsie", + "Warty", + "Stinky", + "Heinous", + ]; + Game.customGrandmaNames = []; + Game.heralds = 0; + + Game.GrabData = function () { + if (!App) ajax("/patreon/grab.php", Game.GrabDataResponse); + else + App.grabData(function (res) { + Game.heralds = res ? res.playersN || 1 : 1; + Game.heralds = Math.max( + 0, + Math.min(100, Math.ceil((Game.heralds / 100) * 100) / 100) + ); + l("heraldsAmount").textContent = Math.floor(Game.heralds); + }); + }; + Game.GrabDataResponse = function (response) { + /* + response should be formatted as + {"herald":3,"grandma":"a|b|c|...} + */ + var r = {}; + try { + r = JSON.parse(response); + if (typeof r["herald"] !== "undefined") { + Game.heralds = parseInt(r["herald"]); + Game.heralds = Math.max(0, Math.min(100, Game.heralds)); + } + if (typeof r["grandma"] !== "undefined" && r["grandma"] != "") { + Game.customGrandmaNames = r["grandma"].split("|"); + Game.customGrandmaNames = Game.customGrandmaNames.filter(function ( + el + ) { + return el != ""; + }); + } + + l("heraldsAmount").textContent = Math.floor(Game.heralds); + Game.externalDataLoaded = true; + } catch (e) {} + }; + + if (!App) { + Game.attachTooltip( + l("httpsSwitch"), + '
' + + loc( + "You are currently playing Cookie Clicker on the %1 protocol.
The %2 version uses a different save slot than this one.
Click this lock to reload the page and switch to the %2 version!", + [Game.https ? "HTTPS" : "HTTP", Game.https ? "HTTP" : "HTTPS"] + ) + + "
", + "this" + ); + AddEvent(l("httpsSwitch"), "click", function () { + PlaySound("snd/pop" + Math.floor(Math.random() * 3 + 1) + ".mp3", 0.75); + if (location.protocol == "https:") + location.href = + "http:" + + window.location.href.substring(window.location.protocol.length); + else if (location.protocol == "http:") + location.href = + "https:" + + window.location.href.substring(window.location.protocol.length); + }); + + AddEvent(l("changeLanguage"), "click", function () { + Game.showLangSelection(); + }); + + Game.attachTooltip( + l("topbarOrteil"), + '
Back to Orteil\'s subdomain!
Lots of other games in there!
' + + tinyIcon([17, 5], "display:block;margin:-12px auto;"), + "this" + ); + Game.attachTooltip( + l("topbarDashnet"), + '
Back to our homepage!
', + "this" + ); + Game.attachTooltip( + l("topbarTwitter"), + '
Orteil\'s twitter, which frequently features game updates.
', + "this" + ); + Game.attachTooltip( + l("topbarTumblr"), + '
Orteil\'s tumblr, which frequently features game updates.
', + "this" + ); + Game.attachTooltip( + l("topbarDiscord"), + '
Our official discord server.
You can share tips and questions about Cookie Clicker and all our other games!
', + "this" + ); + Game.attachTooltip( + l("topbarPatreon"), + '
Support us on Patreon and help us keep updating Cookie Clicker!
There\'s neat rewards for patrons too!
', + "this" + ); + Game.attachTooltip( + l("topbarMerch"), + '
Cookie Clicker shirts, hoodies and stickers!
', + "this" + ); + Game.attachTooltip( + l("topbarMobileCC"), + '
Play Cookie Clicker on your phone!
(Android only; iOS version will be released later)
', + "this" + ); + Game.attachTooltip( + l("topbarSteamCC"), + '
Get Cookie Clicker on Steam!
Featuring music by C418.
', + "this" + ); + Game.attachTooltip( + l("topbarRandomgen"), + '
A thing we made that lets you write random generators.
', + "this" + ); + Game.attachTooltip( + l("topbarIGM"), + '
A thing we made that lets you create your own idle games using a simple scripting language.
', + "this" + ); + l("changeLanguage").innerHTML = loc("Change language"); + l("links").childNodes[0].nodeValue = loc("Other versions"); + //l('linkVersionBeta').innerHTML=loc("Beta"); + } + + Game.attachTooltip( + l("heralds"), + function () { + var str = ""; + + if (!App && !Game.externalDataLoaded) + str += loc( + "Heralds couldn't be loaded. There may be an issue with our servers, or you are playing the game locally." + ); + else { + if (!App && Game.heralds == 0) + str += loc( + 'There are no heralds at the moment. Please consider donating to our Patreon!' + ); + else { + str += + '' + + loc("%1 herald", Game.heralds) + + " " + + loc( + "selflessly inspiring a boost in production for everyone, resulting in %1.", + '
' + + loc("+%1% cookies per second", Game.heralds) + + "
" + ); + str += '
'; + if (Game.ascensionMode == 1) + str += loc( + "You are in a Born again run, and are not currently benefiting from heralds." + ); + else if (Game.Has("Heralds")) + str += loc( + "You own the Heralds upgrade, and therefore benefit from the production boost." + ); + else + str += loc( + "To benefit from the herald bonus, you need a special upgrade you do not yet own. You will permanently unlock it later in the game." + ); + } + } + str += + '
' + + (!App + ? loc( + "Heralds are people who have donated to our highest Patreon tier, and are limited to 100.
Each herald gives everyone +1% CpS.
Heralds benefit everyone playing the game, regardless of whether you donated." + ) + : loc( + "Every %1 current players on Steam generates 1 herald, up to %2 heralds.
Each herald gives everyone +1% CpS.", + [100, 100] + )) + + '
' + + tinyIcon([21, 29]); + + str += + '
'; + + return ( + '

' + + loc("Heralds") + + '

' + + str + + "
" + ); + }, + "this" + ); + l("heraldsAmount").textContent = "?"; + l("heralds").style.display = "inline-block"; + if (App) { + l("heralds").style.paddingTop = "4px"; + l("heralds").style.position = "absolute"; + l("heralds").style.top = "0px"; + l("heralds").style.right = "0px"; + l("heralds").style.width = "28px"; + l("heralds").style.textAlign = "center"; + l("leftBeam").appendChild(l("heralds")); + + l("buffs").style.top = "16px"; + } + + Game.GrabData(); + + Game.useLocalStorage = 1; + //window.localStorage.clear();//won't switch back to cookie-based if there is localStorage info + + /*===================================================================================== + SAVE + =======================================================================================*/ + Game.ExportSave = function () { + //if (App) return false; + Game.prefs.showBackupWarning = 0; + Game.Prompt( + "

" + + loc("Export save") + + '

' + + loc( + "This is your save code.
Copy it and keep it somewhere safe!" + ) + + '
", + [loc("All done!")] + ); //prompt('Copy this text and keep it somewhere safe!',Game.WriteSave(1)); + l("textareaPrompt").focus(); + l("textareaPrompt").select(); + }; + Game.ImportSave = function (def) { + //if (App) return false; + Game.Prompt( + "

" + + loc("Import save") + + '

' + + loc( + "Please paste in the code that was given to you on save export." + ) + + '
", + [ + [ + loc("Load"), + "if (l('textareaPrompt').value.length==0){return false;}if (Game.ImportSaveCode(l('textareaPrompt').value)){Game.ClosePrompt();}else{l('importError').innerHTML='('+loc(\"Error importing save\")+')';}", + ], + loc("Nevermind"), + ] + ); //prompt('Please paste in the text that was given to you on save export.',''); + l("textareaPrompt").focus(); + }; + Game.ImportSaveCode = function (save) { + var out = false; + if (save && save != "") out = Game.LoadSave(save); + if (out && App && App.onImportSave) App.onImportSave(out, save); + return out; + }; + + Game.FileSave = function () { + if (App) return false; + Game.prefs.showBackupWarning = 0; + var filename = Game.bakeryName.replace(/[^a-zA-Z0-9]+/g, "") + "Bakery"; + var text = Game.WriteSave(1); + var blob = new Blob([text], { type: "text/plain;charset=utf-8" }); + saveAs(blob, filename + ".txt"); + }; + Game.FileLoad = function (e) { + if (App) return false; + if (e.target.files.length == 0) return false; + var file = e.target.files[0]; + var reader = new FileReader(); + reader.onload = function (e) { + Game.ImportSaveCode(e.target.result); + }; + reader.readAsText(file); + }; + + Game.toReload = false; + Game.toSave = false; + Game.toQuit = false; + Game.isSaving = false; //true while we're saving, to block some behavior; when in App mode saving may be asynchronous + Game.lastSaveData = ""; + Game.WriteSave = function (type) { + Game.toSave = false; + //type: none is default, 1=return string only, 2=return uncompressed string, 3=return uncompressed, commented string + Game.lastDate = parseInt(Game.time); + var str = ""; + if (type == 3) str += "\nGame version\n"; + str += Game.version + "|"; + str += "|"; //just in case we need some more stuff here + if (type == 3) str += "\n\nRun details"; + str += //save stats + (type == 3 ? "\n run start date : " : "") + + parseInt(Game.startDate) + + ";" + + (type == 3 ? "\n legacy start date : " : "") + + parseInt(Game.fullDate) + + ";" + + (type == 3 ? "\n date when we last opened the game : " : "") + + parseInt(Game.lastDate) + + ";" + + (type == 3 ? "\n bakery name : " : "") + + Game.bakeryName + + ";" + + (type == 3 ? "\n seed : " : "") + + Game.seed + + "|"; + if (type == 3) str += "\n\nPacked preferences bitfield\n "; + var str2 = //prefs + (Game.prefs.particles ? "1" : "0") + + (Game.prefs.numbers ? "1" : "0") + + (Game.prefs.autosave ? "1" : "0") + + (Game.prefs.autoupdate ? "1" : "0") + + (Game.prefs.milk ? "1" : "0") + + (Game.prefs.fancy ? "1" : "0") + + (Game.prefs.warn ? "1" : "0") + + (Game.prefs.cursors ? "1" : "0") + + (Game.prefs.focus ? "1" : "0") + + (Game.prefs.format ? "1" : "0") + + (Game.prefs.notifs ? "1" : "0") + + (Game.prefs.wobbly ? "1" : "0") + + (Game.prefs.monospace ? "1" : "0") + + (Game.prefs.filters ? "1" : "0") + + (Game.prefs.cookiesound ? "1" : "0") + + (Game.prefs.crates ? "1" : "0") + + (Game.prefs.showBackupWarning ? "1" : "0") + + (Game.prefs.extraButtons ? "1" : "0") + + (Game.prefs.askLumps ? "1" : "0") + + (Game.prefs.customGrandmas ? "1" : "0") + + (Game.prefs.timeout ? "1" : "0") + + (Game.prefs.cloudSave ? "1" : "0") + + (Game.prefs.bgMusic ? "1" : "0") + + (Game.prefs.notScary ? "1" : "0") + + (Game.prefs.fullscreen ? "1" : "0") + + (Game.prefs.screenreader ? "1" : "0") + + (Game.prefs.discordPresence ? "1" : "0") + + ""; + str2 = pack3(str2); + str += str2 + "|"; + if (type == 3) str += "\n\nMisc game data"; + str += + (type == 3 ? "\n cookies : " : "") + + parseFloat(Game.cookies).toString() + + ";" + + (type == 3 ? "\n total cookies earned : " : "") + + parseFloat(Game.cookiesEarned).toString() + + ";" + + (type == 3 ? "\n cookie clicks : " : "") + + parseInt(Math.floor(Game.cookieClicks)) + + ";" + + (type == 3 ? "\n golden cookie clicks : " : "") + + parseInt(Math.floor(Game.goldenClicks)) + + ";" + + (type == 3 ? "\n cookies made by clicking : " : "") + + parseFloat(Game.handmadeCookies).toString() + + ";" + + (type == 3 ? "\n golden cookies missed : " : "") + + parseInt(Math.floor(Game.missedGoldenClicks)) + + ";" + + (type == 3 ? "\n background type : " : "") + + parseInt(Math.floor(Game.bgType)) + + ";" + + (type == 3 ? "\n milk type : " : "") + + parseInt(Math.floor(Game.milkType)) + + ";" + + (type == 3 ? "\n cookies from past runs : " : "") + + parseFloat(Game.cookiesReset).toString() + + ";" + + (type == 3 ? "\n elder wrath : " : "") + + parseInt(Math.floor(Game.elderWrath)) + + ";" + + (type == 3 ? "\n pledges : " : "") + + parseInt(Math.floor(Game.pledges)) + + ";" + + (type == 3 ? "\n pledge time left : " : "") + + parseInt(Math.floor(Game.pledgeT)) + + ";" + + (type == 3 ? "\n currently researching : " : "") + + parseInt(Math.floor(Game.nextResearch)) + + ";" + + (type == 3 ? "\n research time left : " : "") + + parseInt(Math.floor(Game.researchT)) + + ";" + + (type == 3 ? "\n ascensions : " : "") + + parseInt(Math.floor(Game.resets)) + + ";" + + (type == 3 ? "\n golden cookie clicks (this run) : " : "") + + parseInt(Math.floor(Game.goldenClicksLocal)) + + ";" + + (type == 3 ? "\n cookies sucked by wrinklers : " : "") + + parseFloat(Game.cookiesSucked).toString() + + ";" + + (type == 3 ? "\n wrinkles popped : " : "") + + parseInt(Math.floor(Game.wrinklersPopped)) + + ";" + + (type == 3 ? "\n santa level : " : "") + + parseInt(Math.floor(Game.santaLevel)) + + ";" + + (type == 3 ? "\n reindeer clicked : " : "") + + parseInt(Math.floor(Game.reindeerClicked)) + + ";" + + (type == 3 ? "\n season time left : " : "") + + parseInt(Math.floor(Game.seasonT)) + + ";" + + (type == 3 ? "\n season switcher uses : " : "") + + parseInt(Math.floor(Game.seasonUses)) + + ";" + + (type == 3 ? "\n current season : " : "") + + (Game.season ? Game.season : "") + + ";"; + var wrinklers = Game.SaveWrinklers(); + str += + (type == 3 ? "\n amount of cookies contained in wrinklers : " : "") + + parseFloat(Math.floor(wrinklers.amount)) + + ";" + + (type == 3 ? "\n number of wrinklers : " : "") + + parseInt(Math.floor(wrinklers.number)) + + ";" + + (type == 3 ? "\n prestige level : " : "") + + parseFloat(Game.prestige).toString() + + ";" + + (type == 3 ? "\n heavenly chips : " : "") + + parseFloat(Game.heavenlyChips).toString() + + ";" + + (type == 3 ? "\n heavenly chips spent : " : "") + + parseFloat(Game.heavenlyChipsSpent).toString() + + ";" + + (type == 3 ? "\n heavenly cookies : " : "") + + parseFloat(Game.heavenlyCookies).toString() + + ";" + + (type == 3 ? "\n ascension mode : " : "") + + parseInt(Math.floor(Game.ascensionMode)) + + ";" + + (type == 3 ? "\n permanent upgrades : " : "") + + parseInt(Math.floor(Game.permanentUpgrades[0])) + + ";" + + parseInt(Math.floor(Game.permanentUpgrades[1])) + + ";" + + parseInt(Math.floor(Game.permanentUpgrades[2])) + + ";" + + parseInt(Math.floor(Game.permanentUpgrades[3])) + + ";" + + parseInt(Math.floor(Game.permanentUpgrades[4])) + + ";" + + (type == 3 ? "\n dragon level : " : "") + + parseInt(Math.floor(Game.dragonLevel)) + + ";" + + (type == 3 ? "\n dragon aura : " : "") + + parseInt(Math.floor(Game.dragonAura)) + + ";" + + (type == 3 ? "\n dragon aura 2 : " : "") + + parseInt(Math.floor(Game.dragonAura2)) + + ";" + + (type == 3 ? "\n chime type : " : "") + + parseInt(Math.floor(Game.chimeType)) + + ";" + + (type == 3 ? "\n volume : " : "") + + parseInt(Math.floor(Game.volume)) + + ";" + + (type == 3 ? "\n number of shiny wrinklers : " : "") + + parseInt(Math.floor(wrinklers.shinies)) + + ";" + + (type == 3 + ? "\n amount of cookies contained in shiny wrinklers : " + : "") + + parseFloat(Math.floor(wrinklers.amountShinies)) + + ";" + + (type == 3 ? "\n current amount of sugar lumps : " : "") + + parseFloat(Math.floor(Game.lumps)) + + ";" + + (type == 3 ? "\n total amount of sugar lumps made : " : "") + + parseFloat(Math.floor(Game.lumpsTotal)) + + ";" + + (type == 3 ? "\n time when current sugar lump started : " : "") + + parseFloat(Math.floor(Game.lumpT)) + + ";" + + (type == 3 + ? "\n time when last refilled a minigame with a sugar lump : " + : "") + + parseFloat(Math.floor(Game.lumpRefill)) + + ";" + + (type == 3 ? "\n sugar lump type : " : "") + + parseInt(Math.floor(Game.lumpCurrentType)) + + ";" + + (type == 3 ? "\n vault : " : "") + + Game.vault.join(",") + + ";" + + (type == 3 ? "\n heralds : " : "") + + parseInt(Game.heralds) + + ";" + + (type == 3 ? "\n golden cookie fortune : " : "") + + parseInt(Game.fortuneGC) + + ";" + + (type == 3 ? "\n CpS fortune : " : "") + + parseInt(Game.fortuneCPS) + + ";" + + (type == 3 ? "\n highest raw CpS : " : "") + + parseFloat(Game.cookiesPsRawHighest) + + ";" + + (type == 3 ? "\n music volume : " : "") + + parseInt(Math.floor(Game.volumeMusic)) + + ";" + + "|"; //cookies and lots of other stuff + + if (type == 3) + str += + "\n\nBuildings : amount, bought, cookies produced, level, minigame data"; + for (var i in Game.Objects) { //buildings + var me = Game.Objects[i]; + if (type == 3) str += "\n " + me.name + " : "; + if (me.vanilla) { + str += + me.amount + + "," + + me.bought + + "," + + parseFloat(Math.floor(me.totalCookies)) + + "," + + parseInt(me.level); + if (Game.isMinigameReady(me)) str += "," + me.minigame.save(); + else str += "," + (me.minigameSave || ""); + str += "," + (me.muted ? "1" : "0"); + str += "," + me.highest; + str += ";"; + } + } + str += "|"; + if (type == 3) + str += "\n\nPacked upgrades bitfield (unlocked and bought)\n "; + var toCompress = []; + for (var i in Game.UpgradesById) { //upgrades + var me = Game.UpgradesById[i]; + if (me.vanilla) + toCompress.push(Math.min(me.unlocked, 1), Math.min(me.bought, 1)); + } + + toCompress = pack3(toCompress.join("")); //toCompress=pack(toCompress);//CompressLargeBin(toCompress); + + str += toCompress; + str += "|"; + if (type == 3) str += "\n\nPacked achievements bitfield (won)\n "; + var toCompress = []; + for (var i in Game.AchievementsById) { //achievements + var me = Game.AchievementsById[i]; + if (me.vanilla) toCompress.push(Math.min(me.won)); + } + toCompress = pack3(toCompress.join("")); //toCompress=pack(toCompress);//CompressLargeBin(toCompress); + str += toCompress; + + str += "|"; + if (type == 3) str += "\n\nBuffs : type, maxTime, time, arg1, arg2, arg3"; + for (var i in Game.buffs) { + var me = Game.buffs[i]; + if (me.type) { + if (type == 3) str += "\n " + me.type.name + " : "; + if (me.type.vanilla) { + str += me.type.id + "," + me.maxTime + "," + me.time; + if (typeof me.arg1 !== "undefined") + str += "," + parseFloat(me.arg1); + if (typeof me.arg2 !== "undefined") + str += "," + parseFloat(me.arg2); + if (typeof me.arg3 !== "undefined") + str += "," + parseFloat(me.arg3); + str += ";"; + } + } + } + + if (type == 3) str += "\n\nCustom :\n"; + + str += "|"; + str += Game.saveModData(); + + Game.lastSaveData = str; + + if (type == 2 || type == 3) { + return str; + } else if (type == 1) { + str = escape(utf8_to_b64(str) + "!END!"); + return str; + } else { + if (Game.useLocalStorage) { + //so we used to save the game using browser cookies, which was just really neat considering the game's name + //we're using localstorage now, which is more efficient but not as cool + //a moment of silence for our fallen puns + str = utf8_to_b64(str) + "!END!"; + if (str.length < 10) { + Game.Notify( + "Saving failed!", + "Purchasing an upgrade and saving again might fix this.
This really shouldn't happen; please notify Orteil on his tumblr." + ); + } else { + str = escape(str); + localStorageSet(Game.SaveTo, str); //aaand save + if (App) App.save(str); + if (!localStorageGet(Game.SaveTo)) { + Game.Notify( + loc("Error while saving"), + loc("Export your save instead!") + ); + } else if (document.hasFocus()) { + Game.Notify(loc("Game saved"), "", "", 1, 1); + } + } + } //legacy system + else { + //that's right + //we're using cookies + //yeah I went there + var now = new Date(); //we storin dis for 5 years, people + now.setFullYear(now.getFullYear() + 5); //mmh stale cookies + str = utf8_to_b64(str) + "!END!"; + Game.saveData = escape(str); + str = + Game.SaveTo + + "=" + + escape(str) + + "; expires=" + + now.toUTCString() + + ";"; + document.cookie = str; //aaand save + if (App) App.save(str); + if (document.cookie.indexOf(Game.SaveTo) < 0) { + Game.Notify( + loc("Error while saving"), + loc("Export your save instead!"), + "", + 0, + 1 + ); + } else if (document.hasFocus()) { + Game.Notify(loc("Game saved"), "", "", 1, 1); + } + } + } + }; + + /*===================================================================================== + LOAD + =======================================================================================*/ + Game.salvageSave = function () { + //for when Cookie Clicker won't load and you need your save + console.log("==================================================="); + console.log( + 'This is your save data. Copypaste it (without quotation marks) into another version using the "Import save" feature.' + ); + console.log(localStorageGet(Game.SaveTo)); + }; + Game.LoadSave = function (data, ignoreVersionIssues) { + var str = ""; + if (typeof data !== "undefined") str = unescape(data); + else { + if (App) { + App.getMostRecentSave(function (data) { + Game.LoadSave(data, true); + }); + return false; + } + if (Game.useLocalStorage) { + var local = localStorageGet(Game.SaveTo); + if (!local) { + //no localstorage save found? let's get the cookie one last time + if (document.cookie.indexOf(Game.SaveTo) >= 0) { + str = unescape(document.cookie.split(Game.SaveTo + "=")[1]); + document.cookie = + Game.SaveTo + "=;expires=Thu, 01 Jan 1970 00:00:01 GMT;"; + } else return false; + } else { + str = unescape(local); + } + } //legacy system + else { + if (document.cookie.indexOf(Game.SaveTo) >= 0) + str = unescape( + document.cookie.split(Game.SaveTo + "=")[1] + ); //get cookie here + else return false; + } + } + if (str != "") { + var version = 0; + var oldstr = str.split("|"); + if (oldstr[0].length < 1) return false; + else { + str = str.split("!END!")[0]; + str = b64_to_utf8(str); + } + if (str == "") return false; + else { + var spl = ""; + str = str.split("|"); + version = parseFloat(str[0]); + Game.loadedFromVersion = version; + + if (isNaN(version) || str.length < 5) { + Game.Notify( + loc("Error importing save"), + loc("Oops, looks like the import string is all wrong!"), + "", + 6, + 1 + ); + return false; + } + if (version >= 1 && version > Game.version) { + if (ignoreVersionIssues) + Game.Notify( + "Retrieving save from a future version.", + "That's...odd.", + "", + 0, + 1 + ); + else { + Game.Notify( + loc("Error importing save"), + loc( + "You are attempting to load a save from a future version (v. %1; you are using v. %2).", + [version, Game.version] + ), + "", + 6, + 1 + ); + return false; + } + } + if (version >= 1) { + Game.T = 0; + + spl = str[2].split(";"); //save stats + Game.startDate = parseInt(spl[0]); + Game.fullDate = parseInt(spl[1]); + Game.lastDate = parseInt(spl[2]); + var bakeryName = spl[3] ? spl[3] : Game.GetBakeryName(); + Game.seed = spl[4] ? spl[4] : Game.makeSeed(); + //prefs + if (version < 1.0503) spl = str[3].split(""); + else if (version < 2.0046) spl = unpack2(str[3]).split(""); + else spl = str[3].split(""); + Game.prefs.particles = parseInt(spl[0]); + Game.prefs.numbers = parseInt(spl[1]); + Game.prefs.autosave = parseInt(spl[2]); + Game.prefs.autoupdate = spl[3] ? parseInt(spl[3]) : 1; + Game.prefs.milk = spl[4] ? parseInt(spl[4]) : 1; + Game.prefs.fancy = parseInt(spl[5]); + if (Game.prefs.fancy) Game.removeClass("noFancy"); + else if (!Game.prefs.fancy) Game.addClass("noFancy"); + Game.prefs.warn = spl[6] ? parseInt(spl[6]) : 0; + Game.prefs.cursors = spl[7] ? parseInt(spl[7]) : 0; + Game.prefs.focus = spl[8] ? parseInt(spl[8]) : 0; + Game.prefs.format = spl[9] ? parseInt(spl[9]) : 0; + Game.prefs.notifs = spl[10] ? parseInt(spl[10]) : 0; + Game.prefs.wobbly = spl[11] ? parseInt(spl[11]) : 0; + Game.prefs.monospace = spl[12] ? parseInt(spl[12]) : 0; + Game.prefs.filters = spl[13] ? parseInt(spl[13]) : 1; + if (Game.prefs.filters) Game.removeClass("noFilters"); + else if (!Game.prefs.filters) Game.addClass("noFilters"); + Game.prefs.cookiesound = spl[14] ? parseInt(spl[14]) : 1; + Game.prefs.crates = spl[15] ? parseInt(spl[15]) : 0; + Game.prefs.showBackupWarning = spl[16] ? parseInt(spl[16]) : 1; + Game.prefs.extraButtons = spl[17] ? parseInt(spl[17]) : 1; + if (!Game.prefs.extraButtons) Game.removeClass("extraButtons"); + else if (Game.prefs.extraButtons) Game.addClass("extraButtons"); + Game.prefs.askLumps = spl[18] ? parseInt(spl[18]) : 0; + Game.prefs.customGrandmas = spl[19] ? parseInt(spl[19]) : 1; + Game.prefs.timeout = spl[20] ? parseInt(spl[20]) : 0; + Game.prefs.cloudSave = spl[21] ? parseInt(spl[21]) : 1; + Game.prefs.bgMusic = spl[22] ? parseInt(spl[22]) : 1; + Game.prefs.notScary = spl[23] ? parseInt(spl[23]) : 0; + Game.prefs.fullscreen = spl[24] ? parseInt(spl[24]) : 0; + if (App) App.setFullscreen(Game.prefs.fullscreen); + Game.prefs.screenreader = spl[25] ? parseInt(spl[25]) : 0; + Game.prefs.discordPresence = spl[26] ? parseInt(spl[26]) : 1; + BeautifyAll(); + spl = str[4].split(";"); //cookies and lots of other stuff + Game.cookies = parseFloat(spl[0]); + Game.cookiesEarned = parseFloat(spl[1]); + Game.cookieClicks = spl[2] ? parseInt(spl[2]) : 0; + Game.goldenClicks = spl[3] ? parseInt(spl[3]) : 0; + Game.handmadeCookies = spl[4] ? parseFloat(spl[4]) : 0; + Game.missedGoldenClicks = spl[5] ? parseInt(spl[5]) : 0; + Game.bgType = spl[6] ? parseInt(spl[6]) : 0; + Game.milkType = spl[7] ? parseInt(spl[7]) : 0; + Game.cookiesReset = spl[8] ? parseFloat(spl[8]) : 0; + Game.elderWrath = spl[9] ? parseInt(spl[9]) : 0; + Game.pledges = spl[10] ? parseInt(spl[10]) : 0; + Game.pledgeT = spl[11] ? parseInt(spl[11]) : 0; + Game.nextResearch = spl[12] ? parseInt(spl[12]) : 0; + Game.researchT = spl[13] ? parseInt(spl[13]) : 0; + Game.resets = spl[14] ? parseInt(spl[14]) : 0; + Game.goldenClicksLocal = spl[15] ? parseInt(spl[15]) : 0; + Game.cookiesSucked = spl[16] ? parseFloat(spl[16]) : 0; + Game.wrinklersPopped = spl[17] ? parseInt(spl[17]) : 0; + Game.santaLevel = spl[18] ? parseInt(spl[18]) : 0; + Game.reindeerClicked = spl[19] ? parseInt(spl[19]) : 0; + Game.seasonT = spl[20] ? parseInt(spl[20]) : 0; + Game.seasonUses = spl[21] ? parseInt(spl[21]) : 0; + Game.season = spl[22] ? spl[22] : Game.baseSeason; + var wrinklers = { + amount: spl[23] ? parseFloat(spl[23]) : 0, + number: spl[24] ? parseInt(spl[24]) : 0, + }; + Game.prestige = spl[25] ? parseFloat(spl[25]) : 0; + Game.heavenlyChips = spl[26] ? parseFloat(spl[26]) : 0; + Game.heavenlyChipsSpent = spl[27] ? parseFloat(spl[27]) : 0; + Game.heavenlyCookies = spl[28] ? parseFloat(spl[28]) : 0; + Game.ascensionMode = spl[29] ? parseInt(spl[29]) : 0; + Game.permanentUpgrades[0] = spl[30] ? parseInt(spl[30]) : -1; + Game.permanentUpgrades[1] = spl[31] ? parseInt(spl[31]) : -1; + Game.permanentUpgrades[2] = spl[32] ? parseInt(spl[32]) : -1; + Game.permanentUpgrades[3] = spl[33] ? parseInt(spl[33]) : -1; + Game.permanentUpgrades[4] = spl[34] ? parseInt(spl[34]) : -1; + //if (version<1.05) {Game.heavenlyChipsEarned=Game.HowMuchPrestige(Game.cookiesReset);Game.heavenlyChips=Game.heavenlyChipsEarned;} + Game.dragonLevel = spl[35] ? parseInt(spl[35]) : 0; + if ( + version < 2.0041 && + Game.dragonLevel == Game.dragonLevels.length - 2 + ) { + Game.dragonLevel = Game.dragonLevels.length - 1; + } + Game.dragonAura = spl[36] ? parseInt(spl[36]) : 0; + Game.dragonAura2 = spl[37] ? parseInt(spl[37]) : 0; + Game.chimeType = spl[38] ? parseInt(spl[38]) : 0; + Game.volume = spl[39] ? parseInt(spl[39]) : 75; + wrinklers.shinies = spl[40] ? parseInt(spl[40]) : 0; + wrinklers.amountShinies = spl[41] ? parseFloat(spl[41]) : 0; + Game.lumps = spl[42] ? parseFloat(spl[42]) : -1; + Game.lumpsTotal = spl[43] ? parseFloat(spl[43]) : -1; + Game.lumpT = spl[44] ? parseInt(spl[44]) : Date.now(); + Game.lumpRefill = spl[45] ? parseInt(spl[45]) : 0; + if (version < 2.022) Game.lumpRefill = Game.fps * 60; + Game.lumpCurrentType = spl[46] ? parseInt(spl[46]) : 0; + Game.vault = spl[47] ? spl[47].split(",") : []; + for (var i in Game.vault) { + Game.vault[i] = parseInt(Game.vault[i]); + } + var actualHeralds = Game.heralds; //we store the actual amount of heralds to restore it later; here we used the amount present in the save to compute offline CpS + Game.heralds = spl[48] ? parseFloat(spl[48]) : Game.heralds; + Game.fortuneGC = spl[49] ? parseInt(spl[49]) : 0; + Game.fortuneCPS = spl[50] ? parseInt(spl[50]) : 0; + Game.cookiesPsRawHighest = spl[51] ? parseFloat(spl[51]) : 0; + Game.volumeMusic = spl[52] ? parseInt(spl[52]) : 50; + + spl = str[5].split(";"); //buildings + Game.BuildingsOwned = 0; + for (var i in Game.ObjectsById) { + var me = Game.ObjectsById[i]; + me.switchMinigame(false); + me.pics = []; + if (spl[i]) { + var mestr = spl[i].toString().split(","); + me.amount = parseInt(mestr[0]); + me.bought = parseInt(mestr[1]); + me.totalCookies = parseFloat(mestr[2]); + me.level = parseInt(mestr[3] || 0); + me.highest = version >= 2.024 ? parseInt(mestr[6]) : me.amount; + if (me.minigame && me.minigameLoaded && me.minigame.reset) { + me.minigame.reset(true); + me.minigame.load(mestr[4] || ""); + } else me.minigameSave = mestr[4] || 0; + me.muted = parseInt(mestr[5]) || 0; + Game.BuildingsOwned += me.amount; + if (version < 2.003) me.level = 0; + } else { + me.amount = 0; + me.unlocked = 0; + me.bought = 0; + me.highest = 0; + me.totalCookies = 0; + me.level = 0; + } + } + + Game.setVolumeMusic(Game.volumeMusic); + + Game.LoadMinigames(); + + if (version < 1.035) { + //old non-binary algorithm + spl = str[6].split(";"); //upgrades + Game.UpgradesOwned = 0; + for (var i in Game.UpgradesById) { + var me = Game.UpgradesById[i]; + if (spl[i]) { + var mestr = spl[i].split(","); + me.unlocked = parseInt(mestr[0]); + me.bought = parseInt(mestr[1]); + if (me.bought && Game.CountsAsUpgradeOwned(me.pool)) + Game.UpgradesOwned++; + } else { + me.unlocked = 0; + me.bought = 0; + } + } + if (str[7]) spl = str[7].split(";"); + else spl = []; //achievements + Game.AchievementsOwned = 0; + for (var i in Game.AchievementsById) { + var me = Game.AchievementsById[i]; + if (spl[i]) { + var mestr = spl[i].split(","); + me.won = parseInt(mestr[0]); + } else { + me.won = 0; + } + if (me.won && Game.CountsAsAchievementOwned(me.pool)) + Game.AchievementsOwned++; + } + } else if (version < 1.0502) { + //old awful packing system + if (str[6]) spl = str[6]; + else spl = []; //upgrades + if (version < 1.05) spl = UncompressLargeBin(spl); + else spl = unpack(spl); + Game.UpgradesOwned = 0; + for (var i in Game.UpgradesById) { + var me = Game.UpgradesById[i]; + if (spl[i * 2]) { + var mestr = [spl[i * 2], spl[i * 2 + 1]]; + me.unlocked = parseInt(mestr[0]); + me.bought = parseInt(mestr[1]); + if (me.bought && Game.CountsAsUpgradeOwned(me.pool)) + Game.UpgradesOwned++; + } else { + me.unlocked = 0; + me.bought = 0; + } + } + if (str[7]) spl = str[7]; + else spl = []; //achievements + if (version < 1.05) spl = UncompressLargeBin(spl); + else spl = unpack(spl); + Game.AchievementsOwned = 0; + for (var i in Game.AchievementsById) { + var me = Game.AchievementsById[i]; + if (spl[i]) { + var mestr = [spl[i]]; + me.won = parseInt(mestr[0]); + } else { + me.won = 0; + } + if (me.won && Game.CountsAsAchievementOwned(me.pool)) + Game.AchievementsOwned++; + } + } else { + if (str[6]) spl = str[6]; + else spl = []; //upgrades + if (version < 2.0046) spl = unpack2(spl).split(""); + else spl = spl.split(""); + Game.UpgradesOwned = 0; + for (var i in Game.UpgradesById) { + var me = Game.UpgradesById[i]; + if (spl[i * 2]) { + var mestr = [spl[i * 2], spl[i * 2 + 1]]; + me.unlocked = parseInt(mestr[0]); + me.bought = parseInt(mestr[1]); + if (me.bought && Game.CountsAsUpgradeOwned(me.pool)) + Game.UpgradesOwned++; + } else { + me.unlocked = 0; + me.bought = 0; + } + } + if (str[7]) spl = str[7]; + else spl = []; //achievements + if (version < 2.0046) spl = unpack2(spl).split(""); + else spl = spl.split(""); + Game.AchievementsOwned = 0; + for (var i in Game.AchievementsById) { + var me = Game.AchievementsById[i]; + if (spl[i]) { + var mestr = [spl[i]]; + me.won = parseInt(mestr[0]); + } else { + me.won = 0; + } + if (me.won && Game.CountsAsAchievementOwned(me.pool)) + Game.AchievementsOwned++; + } + } + + Game.killBuffs(); + var buffsToLoad = []; + spl = (str[8] || "").split(";"); //buffs + for (var i in spl) { + if (spl[i]) { + var mestr = spl[i].toString().split(","); + buffsToLoad.push(mestr); + } + } + + spl = (str[9] || "").split(";"); //mod data + + for (var i in spl) { + if (spl[i]) { + var data = spl[i].split(":"); + var modId = data[0]; + if (modId == "META") continue; + data.shift(); + data = Game.safeLoadString(data.join(":")); + Game.modSaveData[modId] = data; + } + } + + for (var i in Game.ObjectsById) { + var me = Game.ObjectsById[i]; + if (me.buyFunction) me.buyFunction(); + me.refresh(); + if (me.id > 0) { + if (me.muted) me.mute(1); + } + } + + if (version < 1.0503) { + //upgrades that used to be regular, but are now heavenly + var me = Game.Upgrades["Persistent memory"]; + me.unlocked = 0; + me.bought = 0; + var me = Game.Upgrades["Season switcher"]; + me.unlocked = 0; + me.bought = 0; + } + + if (Game.bgType == -1) Game.bgType = 0; + if (Game.milkType == -1 || !Game.AllMilks[Game.milkType]) + Game.milkType = 0; + + //advance timers + var framesElapsed = Math.ceil( + ((Date.now() - Game.lastDate) / 1000) * Game.fps + ); + if (Game.pledgeT > 0) + Game.pledgeT = Math.max(Game.pledgeT - framesElapsed, 1); + if (Game.seasonT > 0) + Game.seasonT = Math.max(Game.seasonT - framesElapsed, 1); + if (Game.researchT > 0) + Game.researchT = Math.max(Game.researchT - framesElapsed, 1); + + Game.ResetWrinklers(); + Game.LoadWrinklers( + wrinklers.amount, + wrinklers.number, + wrinklers.shinies, + wrinklers.amountShinies + ); + + //recompute season trigger prices + if (Game.Has("Season switcher")) { + for (var i in Game.seasons) { + Game.Unlock(Game.seasons[i].trigger); + } + } + Game.computeSeasonPrices(); + + //recompute prestige + Game.prestige = Math.floor(Game.HowMuchPrestige(Game.cookiesReset)); + //if ((Game.heavenlyChips+Game.heavenlyChipsSpent)Beta patch
We\'ve tweaked some things and fixed some others, please check the update notes!
Of note : due to changes in prestige balancing, all your heavenly upgrades have been removed and your heavenly chips refunded; you\'ll be able to reallocate them next time you ascend.
Thank you again for beta-testing Cookie Clicker!
', + [["Alright then!", "Game.ClosePrompt();"]] + ); + }, 200); + } + if (version <= 1.0466) { + //are we loading from the old live version? reset HCs + Game.heavenlyChips = Game.prestige; + Game.heavenlyChipsSpent = 0; + } + + if (Game.ascensionMode != 1) { + if (Game.Has("Starter kit")) Game.Objects["Cursor"].free = 10; + if (Game.Has("Starter kitchen")) Game.Objects["Grandma"].free = 5; + } + + Game.CalculateGains(); + + var timeOffline = (Date.now() - Game.lastDate) / 1000; + + if (Math.random() < 1 / 10000) Game.TOYS = 1; //teehee! + if (Math.random() < 1 / 10000) Game.WINKLERS = 1; //squeak + + //compute cookies earned while the game was closed + if ( + Game.mobile || + Game.Has("Perfect idling") || + Game.Has("Twin Gates of Transcendence") + ) { + if (Game.Has("Perfect idling")) { + var maxTime = 60 * 60 * 24 * 1000000000; + var percent = 100; + } else { + var maxTime = 60 * 60; + if (Game.Has("Belphegor")) maxTime *= 2; + if (Game.Has("Mammon")) maxTime *= 2; + if (Game.Has("Abaddon")) maxTime *= 2; + if (Game.Has("Satan")) maxTime *= 2; + if (Game.Has("Asmodeus")) maxTime *= 2; + if (Game.Has("Beelzebub")) maxTime *= 2; + if (Game.Has("Lucifer")) maxTime *= 2; + + var percent = 5; + if (Game.Has("Angels")) percent += 10; + if (Game.Has("Archangels")) percent += 10; + if (Game.Has("Virtues")) percent += 10; + if (Game.Has("Dominions")) percent += 10; + if (Game.Has("Cherubim")) percent += 10; + if (Game.Has("Seraphim")) percent += 10; + if (Game.Has("God")) percent += 10; + + if (Game.Has("Chimera")) { + maxTime += 60 * 60 * 24 * 2; + percent += 5; + } + + if (Game.Has("Fern tea")) percent += 3; + if (Game.Has("Ichor syrup")) percent += 7; + if (Game.Has("Fortune #102")) percent += 1; + } + + var timeOfflineOptimal = Math.min(timeOffline, maxTime); + var timeOfflineReduced = Math.max( + 0, + timeOffline - timeOfflineOptimal + ); + var amount = + (timeOfflineOptimal + timeOfflineReduced * 0.1) * + Game.cookiesPs * + (percent / 100); + + if (amount > 0) { + Game.Notify( + loc("Welcome back!"), + loc( + "You earned %1 while you were away.", + loc("%1 cookie", LBeautify(amount)) + ) + + (EN + ? "
(" + + Game.sayTime(timeOfflineOptimal * Game.fps, -1) + + " at " + + Math.floor(percent) + + "% CpS" + + (timeOfflineReduced + ? ", plus " + + Game.sayTime(timeOfflineReduced * Game.fps, -1) + + " at " + + Math.floor(percent * 10) / 100 + + "%" + : "") + + ".)" + : ""), + [Math.floor(Math.random() * 16), 11] + ); + Game.Earn(amount); + } + } + + //we load buffs after everything as we do not want them to interfer with offline CpS + for (var i in buffsToLoad) { + var mestr = buffsToLoad[i]; + var type = Game.buffTypes[parseInt(mestr[0])]; + Game.gainBuff( + type.name, + parseFloat(mestr[1]) / Game.fps, + parseFloat(mestr[3] || 0), + parseFloat(mestr[4] || 0), + parseFloat(mestr[5] || 0) + ).time = parseFloat(mestr[2]); + } + + Game.loadLumps(timeOffline); + + Game.bakeryNameRefresh(); + } //importing old version save + else { + Game.Notify( + loc("Error importing save"), + loc("Sorry, you can't import saves from the classic version."), + "", + 6, + 1 + ); + return false; + } + + if (Game.prefs.screenreader) { + Game.BuildStore(); + } + + Game.RebuildUpgrades(); + + Game.TickerAge = 0; + Game.TickerEffect = 0; + + Game.elderWrathD = 0; + Game.recalculateGains = 1; + Game.storeToRefresh = 1; + Game.upgradesToRebuild = 1; + + Game.buyBulk = 1; + Game.buyMode = 1; + Game.storeBulkButton(-1); + + Game.specialTab = ""; + Game.ToggleSpecialMenu(0); + + Game.killShimmers(); + + if (Game.T > Game.fps * 5 && Game.ReincarnateTimer == 0) { + //fade out of black and pop the cookie + Game.ReincarnateTimer = 1; + Game.addClass("reincarnating"); + Game.BigCookieSize = 0; + } + + var prestigeUpgradesOwned = 0; + for (var i in Game.Upgrades) { + if (Game.Upgrades[i].bought && Game.Upgrades[i].pool == "prestige") + prestigeUpgradesOwned++; + } + if (prestigeUpgradesOwned >= 100) Game.Win("All the stars in heaven"); + + if (version < Game.version) l("logButton").classList.add("hasUpdate"); + + if (Game.season != "" && Game.season == Game.baseSeason) { + if (Game.season == "valentines") + Game.Notify( + loc("Valentine's Day!"), + loc( + "It's Valentine's season!
Love's in the air and cookies are just that much sweeter!" + ), + [20, 3], + 60 * 3 + ); + else if (Game.season == "fools") + Game.Notify( + loc("Business Day!"), + loc( + "It's Business season!
Don't panic! Things are gonna be looking a little more corporate for a few days." + ), + [17, 6], + 60 * 3 + ); + else if (Game.season == "halloween") + Game.Notify( + loc("Halloween!"), + loc( + "It's Halloween season!
Everything is just a little bit spookier!" + ), + [13, 8], + 60 * 3 + ); + else if (Game.season == "christmas") + Game.Notify( + loc("Christmas time!"), + loc( + "It's Christmas season!
Bring good cheer to all and you just may get cookies in your stockings!" + ), + [12, 10], + 60 * 3 + ); + else if (Game.season == "easter") + Game.Notify( + loc("Easter!"), + loc( + "It's Easter season!
Keep an eye out and you just might click a rabbit or two!" + ), + [0, 12], + 60 * 3 + ); + } + + Game.heralds = actualHeralds; + + Game.Notify(loc("Game loaded"), "", "", 1, 1); + + if (!App && Game.prefs.showBackupWarning == 1) + Game.showBackupWarning(); + + if (App) App.justLoadedSave(); + } + } else return false; + return true; + }; + + /*===================================================================================== + RESET + =======================================================================================*/ + Game.Reset = function (hard) { + Game.T = 0; + + if (hard) { + Game.loadedFromVersion = Game.version; + } + + var cookiesForfeited = Game.cookiesEarned; + if (!hard) { + if (cookiesForfeited >= 1000000) Game.Win("Sacrifice"); + if (cookiesForfeited >= 1000000000) Game.Win("Oblivion"); + if (cookiesForfeited >= 1000000000000) Game.Win("From scratch"); + if (cookiesForfeited >= 1000000000000000) Game.Win("Nihilism"); + if (cookiesForfeited >= 1000000000000000000) Game.Win("Dematerialize"); + if (cookiesForfeited >= 1000000000000000000000) + Game.Win("Nil zero zilch"); + if (cookiesForfeited >= 1000000000000000000000000) + Game.Win("Transcendence"); + if (cookiesForfeited >= 1000000000000000000000000000) + Game.Win("Obliterate"); + if (cookiesForfeited >= 1000000000000000000000000000000) + Game.Win("Negative void"); + if (cookiesForfeited >= 1000000000000000000000000000000000) + Game.Win("To crumbs, you say?"); + if (cookiesForfeited >= 1000000000000000000000000000000000000) + Game.Win("You get nothing"); + if (cookiesForfeited >= 1000000000000000000000000000000000000000) + Game.Win("Humble rebeginnings"); + if (cookiesForfeited >= 1000000000000000000000000000000000000000000) + Game.Win("The end of the world"); + if (cookiesForfeited >= 1000000000000000000000000000000000000000000000) + Game.Win("Oh, you're back"); + if ( + cookiesForfeited >= 1000000000000000000000000000000000000000000000000 + ) + Game.Win("Lazarus"); + if ( + cookiesForfeited >= + 1000000000000000000000000000000000000000000000000000 + ) + Game.Win("Smurf account"); + if ( + cookiesForfeited >= + 1000000000000000000000000000000000000000000000000000000 + ) + Game.Win("If at first you don't succeed"); + + if (Math.round(Game.cookies) == 1000000000000) + Game.Win("When the cookies ascend just right"); + } + + Game.killBuffs(); + + Game.seed = Game.makeSeed(); + + Game.cookiesReset += Game.cookiesEarned; + Game.cookies = 0; + Game.cookiesEarned = 0; + Game.cookieClicks = 0; + Game.goldenClicksLocal = 0; + //Game.goldenClicks=0; + //Game.missedGoldenClicks=0; + Game.handmadeCookies = 0; + Game.cookiesPsRawHighest = 0; + if (hard) { + Game.bgType = 0; + Game.milkType = 0; + Game.chimeType = 0; + + Game.vault = []; + } + Game.pledges = 0; + Game.pledgeT = 0; + Game.elderWrath = 0; + Game.elderWrathOld = 0; + Game.elderWrathD = 0; + Game.nextResearch = 0; + Game.researchT = 0; + Game.seasonT = 0; + Game.seasonUses = 0; + Game.season = Game.baseSeason; + Game.computeSeasonPrices(); + + Game.startDate = parseInt(Date.now()); + Game.lastDate = parseInt(Date.now()); + + Game.cookiesSucked = 0; + Game.wrinklersPopped = 0; + Game.ResetWrinklers(); + + Game.santaLevel = 0; + Game.reindeerClicked = 0; + + Game.dragonLevel = 0; + Game.dragonAura = 0; + Game.dragonAura2 = 0; + + Game.fortuneGC = 0; + Game.fortuneCPS = 0; + + Game.TickerClicks = 0; + + if (Game.gainedPrestige > 0) Game.resets++; + if (!hard && Game.canLumps() && Game.ascensionMode != 1) + Game.addClass("lumpsOn"); + else Game.removeClass("lumpsOn"); + Game.gainedPrestige = 0; + + for (var i in Game.ObjectsById) { + var me = Game.ObjectsById[i]; + me.amount = 0; + me.bought = 0; + me.highest = 0; + me.free = 0; + me.totalCookies = 0; + me.switchMinigame(false); + if (hard) { + me.muted = 0; + } + me.pics = []; + me.refresh(); + } + for (var i in Game.UpgradesById) { + var me = Game.UpgradesById[i]; + if (hard || me.pool != "prestige") me.bought = 0; + if (hard) me.unlocked = 0; + if (me.pool != "prestige" && !me.lasting) { + if ( + Game.Has("Keepsakes") && + Game.seasonDrops.indexOf(me.name) != -1 && + Math.random() < 1 / 5 + ) { + } else if ( + Game.ascensionMode == 1 && + Game.HasAchiev("O Fortuna") && + me.tier == "fortune" + ) { + } else if ( + Game.HasAchiev("O Fortuna") && + me.tier == "fortune" && + Math.random() < 0.4 + ) { + } else me.unlocked = 0; + } + } + + Game.BuildingsOwned = 0; + Game.UpgradesOwned = 0; + + Game.cookiesPsByType = {}; + Game.cookiesMultByType = {}; + + if (!hard) { + if (Game.ascensionMode != 1) { + for (var i in Game.permanentUpgrades) { + if (Game.permanentUpgrades[i] != -1) { + Game.UpgradesById[Game.permanentUpgrades[i]].earn(); + } + } + if (Game.Has("Season switcher")) { + for (var i in Game.seasons) { + Game.Unlock(Game.seasons[i].trigger); + } + } + + if (Game.Has("Starter kit")) Game.Objects["Cursor"].getFree(10); + if (Game.Has("Starter kitchen")) Game.Objects["Grandma"].getFree(5); + } + } + + /*for (var i in Game.AchievementsById) + { + var me=Game.AchievementsById[i]; + me.won=0; + }*/ + //Game.DefaultPrefs(); + BeautifyAll(); + + Game.RebuildUpgrades(); + Game.TickerAge = 0; + Game.TickerEffect = 0; + Game.recalculateGains = 1; + Game.storeToRefresh = 1; + Game.upgradesToRebuild = 1; + Game.killShimmers(); + + Game.buyBulk = 1; + Game.buyMode = 1; + Game.storeBulkButton(-1); + + Game.LoadMinigames(); + for (var i in Game.ObjectsById) { + var me = Game.ObjectsById[i]; + if (hard && me.minigame && me.minigame.launch) { + me.minigame.launch(); + me.minigame.reset(true); + } else if (!hard && me.minigame && me.minigame.reset) + me.minigame.reset(); + } + + l("toggleBox").style.display = "none"; + l("toggleBox").innerHTML = ""; + Game.choiceSelectorOn = -1; + Game.ToggleSpecialMenu(0); + Game.specialTab = ""; + + l("logButton").classList.remove("hasUpdate"); + + Game.runModHook("reset", hard); + + if (hard) { + Game.clicksThisSession = 0; + if (Game.T > Game.fps * 5 && Game.ReincarnateTimer == 0) { + //fade out of black and pop the cookie + Game.ReincarnateTimer = 1; + Game.addClass("reincarnating"); + Game.BigCookieSize = 0; + } + Game.Notify( + loc("Game reset"), + EN ? "So long, cookies." : loc("Good bye, cookies."), + [21, 6], + 6 + ); + } else Game.clicksThisSession = Math.max(Game.clicksThisSession, 1); + + Game.jukebox.reset(); + if (hard) PlayCue("launch"); + else PlayCue("play"); + }; + Game.HardReset = function (bypass) { + if (!bypass) { + Game.Prompt( + "

" + + loc("Wipe save") + + '

' + + tinyIcon([15, 5]) + + '
' + + loc( + "Do you REALLY want to wipe your save?
You will lose your progress, your achievements, and your heavenly chips!" + ) + + "
", + [ + [ + EN ? "Yes!" : loc("Yes"), + "Game.ClosePrompt();Game.HardReset(1);", + "float:left", + ], + [loc("No"), 0, "float:right"], + ] + ); + } else if (bypass == 1) { + Game.Prompt( + "

" + + loc("Wipe save") + + '

' + + tinyIcon([15, 5]) + + '
' + + loc( + "Whoah now, are you really, REALLY sure you want to go through with this?
Don't say we didn't warn you!" + ) + + "
", + [ + [ + EN ? "Do it!" : loc("Yes"), + "Game.ClosePrompt();Game.HardReset(2);", + "float:left", + ], + [loc("No"), 0, "float:right"], + ] + ); + } else { + for (var i in Game.AchievementsById) { + var me = Game.AchievementsById[i]; + me.won = 0; + } + for (var i in Game.ObjectsById) { + var me = Game.ObjectsById[i]; + me.level = 0; + } + + Game.AchievementsOwned = 0; + Game.goldenClicks = 0; + Game.missedGoldenClicks = 0; + Game.Reset(1); + Game.resets = 0; + Game.fullDate = parseInt(Date.now()); + Game.bakeryName = Game.GetBakeryName(); + Game.bakeryNameRefresh(); + Game.cookiesReset = 0; + Game.prestige = 0; + Game.heavenlyChips = 0; + Game.heavenlyChipsSpent = 0; + Game.heavenlyCookies = 0; + Game.permanentUpgrades = [-1, -1, -1, -1, -1]; + Game.ascensionMode = 0; + Game.lumps = -1; + Game.lumpsTotal = -1; + Game.lumpT = Date.now(); + Game.lumpRefill = 0; + Game.removeClass("lumpsOn"); + if (App) App.hardReset(); + } + }; + + Game.onCrate = 0; + Game.setOnCrate = function (what) { + Game.onCrate = what; + }; + Game.crate = function (me, context, forceClickStr, id, style) { + //produce a crate with associated tooltip for an upgrade or achievement + //me is an object representing the upgrade or achievement + //context can be "store", "ascend", "stats" or undefined + //forceClickStr changes what is done when the crate is clicked + //id is the resulting div's desired id + + var classes = "crate"; + var enabled = 0; + var noFrame = 0; + var attachment = "top"; + var neuromancy = 0; + if ( + context == "stats" && + (Game.Has("Neuromancy") || (Game.sesame && me.pool == "debug")) + ) + neuromancy = 1; + var mysterious = 0; + var clickStr = ""; + + if (me.type == "upgrade") { + var canBuy = context == "store" ? me.canBuy() : true; + if ( + context == "stats" && + me.bought == 0 && + !Game.Has("Neuromancy") && + (!Game.sesame || me.pool != "debug") + ) + return ""; + else if ( + context == "stats" && + (Game.Has("Neuromancy") || (Game.sesame && me.pool == "debug")) + ) + neuromancy = 1; + else if (context == "store" && !canBuy) enabled = 0; + else if (context == "ascend" && me.bought == 0) enabled = 0; + else enabled = 1; + if (me.bought > 0) enabled = 1; + + if (context == "stats" && !Game.prefs.crates) noFrame = 1; + + classes += " upgrade"; + if (me.pool == "prestige") classes += " heavenly"; + + if (neuromancy) clickStr = "Game.UpgradesById[" + me.id + "].toggle();"; + } else if (me.type == "achievement") { + if (context == "stats" && me.won == 0 && me.pool != "normal") return ""; + else if (context != "stats") enabled = 1; + + if (context == "stats" && !Game.prefs.crates) noFrame = 1; + + classes += " achievement"; + if (me.pool == "shadow") classes += " shadow"; + if (me.won > 0) enabled = 1; + else mysterious = 1; + if (!enabled) + clickStr = "Game.AchievementsById[" + me.id + "].click();"; + + if (neuromancy) + clickStr = "Game.AchievementsById[" + me.id + "].toggle();"; + } + + if (context == "store") attachment = "store"; + + if (forceClickStr) clickStr = forceClickStr; + + if (me.choicesFunction) classes += " selector"; + + var icon = me.icon; + if (mysterious) icon = [0, 7]; + + if (me.iconFunction) icon = me.iconFunction(); + + if (me.bought && context == "store") enabled = 0; + + if (enabled) classes += " enabled"; // else classes+=' disabled'; + if (noFrame) classes += " noFrame"; + + var text = []; + if (Game.sesame) { + if ( + Game.debuggedUpgradeCpS[me.name] || + Game.debuggedUpgradeCpClick[me.name] + ) { + text.push("x" + Beautify(1 + Game.debuggedUpgradeCpS[me.name], 2)); + text.push( + Game.debugColors[ + Math.floor( + Math.max( + 0, + Math.min( + Game.debugColors.length - 1, + Math.pow(Game.debuggedUpgradeCpS[me.name] / 2, 0.5) * + Game.debugColors.length + ) + ) + ) + ] + ); + text.push( + "x" + Beautify(1 + Game.debuggedUpgradeCpClick[me.name], 2) + ); + text.push( + Game.debugColors[ + Math.floor( + Math.max( + 0, + Math.min( + Game.debugColors.length - 1, + Math.pow(Game.debuggedUpgradeCpClick[me.name] / 2, 0.5) * + Game.debugColors.length + ) + ) + ) + ] + ); + } + if (Game.extraInfo) { + text.push( + Math.floor(me.order) + (me.power ? "
P:" + me.power : "") + ); + text.push("#fff"); + } + } + var textStr = ""; + for (var i = 0; i < text.length; i += 2) { + textStr += + '
' + + text[i] + + "
"; + } + return ( + (Game.prefs.screenreader + ? '" : "") + ); + }; + Game.crateTooltip = function (me, context) { + var tags = []; + mysterious = 0; + var neuromancy = 0; + var price = ""; + if ( + context == "stats" && + (Game.Has("Neuromancy") || (Game.sesame && me.pool == "debug")) + ) + neuromancy = 1; + + var ariaText = ""; + + if (me.type == "upgrade") { + ariaText += "Upgrade. "; + + if (me.pool == "prestige") + tags.push(loc("[Tag]Heavenly", 0, "Heavenly"), "#efa438"); + else if (me.pool == "tech") + tags.push(loc("[Tag]Tech", 0, "Tech"), "#36a4ff"); + else if (me.pool == "cookie") + tags.push(loc("[Tag]Cookie", 0, "Cookie"), 0); + else if (me.pool == "debug") + tags.push(loc("[Tag]Debug", 0, "Debug"), "#00c462"); + else if (me.pool == "toggle") + tags.push(loc("[Tag]Switch", 0, "Switch"), 0); + else tags.push(loc("[Tag]Upgrade", 0, "Upgrade"), 0); + + if (Game.Has("Label printer")) { + if (me.tier != 0) + tags.push( + loc("Tier:") + + " " + + loc( + "[Tier]" + Game.Tiers[me.tier].name, + 0, + Game.Tiers[me.tier].name + ), + Game.Tiers[me.tier].color + ); + if (me.name == "Label printer" || me.name == "This upgrade") + tags.push( + loc("Tier:") + " " + loc("[Tier]Self-referential"), + "#ff00ea" + ); + } + + if (me.isVaulted()) tags.push(loc("Vaulted"), "#4e7566"); + + if (me.bought > 0) { + ariaText += "Owned. "; + if (me.pool == "tech") tags.push(loc("Researched"), 0); + else if (EN && me.kitten) tags.push("Purrchased", 0); + else tags.push(loc("Purchased"), 0); + } + + if (me.lasting && me.unlocked) + tags.push(loc("Unlocked forever"), "#f2ff87"); + + if (neuromancy && me.bought == 0) + tags.push(loc("Click to learn!"), "#00c462"); + else if (neuromancy && me.bought > 0) + tags.push(loc("Click to unlearn!"), "#00c462"); + + var canBuy = context == "store" ? me.canBuy() : true; + var cost = me.getPrice(); + if (me.priceLumps > 0) cost = me.priceLumps; + + if (me.priceLumps == 0 && cost == 0) price = ""; + else { + price = + '
= cost + ? " heavenly" + : " heavenly disabled" + : "") + + (context == "store" ? (canBuy ? "" : " disabled") : "") + + '">' + + Beautify(Math.round(cost)) + + "" + + (me.pool != "prestige" && me.priceLumps == 0 + ? Game.costDetails(cost) + : "") + + "
"; + + ariaText += + (me.bought + ? "Bought for" + : canBuy + ? "Can buy for" + : "Cannot afford the") + + " " + + Beautify(Math.round(cost)) + + " " + + (me.priceLumps > 0 + ? "sugar lumps" + : me.pool == "prestige" + ? "heavenly chips" + : "cookies") + + ". "; + } + } else if (me.type == "achievement") { + ariaText += "Achievement. "; + if (me.pool == "shadow") + tags.push(loc("Shadow Achievement"), "#9700cf"); + else tags.push(loc("Achievement"), 0); + if (me.won > 0) { + tags.push(loc("Unlocked"), 0); + ariaText += "Unlocked. "; + } else { + tags.push(loc("Locked"), 0); + mysterious = 1; + } + + if (neuromancy && me.won == 0) + tags.push(loc("Click to win!"), "#00c462"); + else if (neuromancy && me.won > 0) + tags.push(loc("Click to lose!"), "#00c462"); + } + + var tagsStr = ""; + for (var i = 0; i < tags.length; i += 2) { + if (i % 2 == 0) + tagsStr += + '
' + + tags[i] + + "
"; + } + + var icon = me.icon; + if (mysterious) icon = [0, 7]; + + if (me.iconFunction) icon = me.iconFunction(); + + ariaText += (mysterious ? "Hidden" : me.dname) + ". "; + + var tip = ""; + if (context == "store") { + if (me.pool != "toggle" && me.pool != "tech") { + var purchase = me.kitten ? "purrchase" : "purchase"; + if (Game.Has("Inspired checklist")) { + if (me.isVaulted()) + tip = EN + ? "Upgrade is vaulted and will not be auto-" + + purchase + + "d.
Click to " + + purchase + + ". Shift-click to unvault." + : loc("Upgrade is vaulted and will not be auto-purchased.") + + "
" + + loc("Click to purchase.") + + " " + + loc("%1 to unvault.", loc("Shift-click")); + else + tip = EN + ? "Click to " + purchase + ". Shift-click to vault." + : loc("Click to purchase.") + + " " + + loc("%1 to vault.", loc("Shift-click")); + if (EN) { + if (Game.keys[16]) tip += "
(You are holding Shift.)"; + else tip += "
(You are not holding Shift.)"; + } + } else + tip = EN ? "Click to " + purchase + "." : loc("Click to purchase."); + } else if (me.pool == "toggle" && me.choicesFunction) + tip = loc("Click to open selector."); + else if (me.pool == "toggle") tip = loc("Click to toggle."); + else if (me.pool == "tech") tip = loc("Click to research."); + } + + if (tip != "") ariaText += tip + " "; + + var desc = me.ddesc; + if (me.descFunc) desc = me.descFunc(context); + if (me.bought && context == "store" && me.displayFuncWhenOwned) + desc = me.displayFuncWhenOwned() + '
' + desc; + if (me.unlockAt) { + if (me.unlockAt.require) { + var it = Game.Upgrades[me.unlockAt.require]; + desc = + '
' + + (EN ? "From" : loc("Source:")) + + " " + + tinyIcon(it.icon) + + " " + + it.dname + + '
' + + desc; + } else if (me.unlockAt.text) { + //var it=Game.Upgrades[me.unlockAt.require]; + desc = + '
' + + (EN ? "From" : loc("Source:")) + + " " + + text + + '
' + + desc; + } + } + + if (!mysterious) ariaText += "Description: " + desc + " "; + + if (Game.prefs.screenreader) { + var ariaLabel = l("ariaReader-" + me.type + "-" + me.id); + if (ariaLabel) + ariaLabel.innerHTML = ariaText.replace(/(<([^>]+)>)/gi, " "); + } + + return ( + '
' + + '
' + + (me.bought && context == "store" ? "" : price) + + '
' + + (mysterious ? "???" : me.dname) + + "
" + + tagsStr + + '
' + + (mysterious ? "???" : desc) + + "
" + + (tip != "" + ? '
' + + tip + + "
" + : "") + + (Game.sesame + ? '
Id: ' + + me.id + + " | Order: " + + Math.floor(me.order) + + (me.tier ? " | Tier: " + me.tier : "") + + "
" + : "") + ); + }; + + Game.costDetails = function (cost) { + if (!Game.Has("Genius accounting")) return ""; + if (!cost) return ""; + var priceInfo = ""; + var cps = Game.cookiesPs * (1 - Game.cpsSucked); + if (cost > Game.cookies) + priceInfo += + loc( + "in %1", + Game.sayTime(((cost - Game.cookies) / cps + 1) * Game.fps) + ) + "
"; + priceInfo += + loc("%1 worth", Game.sayTime((cost / cps + 1) * Game.fps)) + "
"; + priceInfo += + loc("%1% of bank", Beautify((cost / Game.cookies) * 100, 1)) + "
"; + return ( + '
' + + priceInfo + + "
" + ); + }; + + /*===================================================================================== + PRESTIGE + =======================================================================================*/ + + Game.HCfactor = 3; + Game.HowMuchPrestige = function ( + cookies //how much prestige [cookies] should land you + ) { + return Math.pow(cookies / 1000000000000, 1 / Game.HCfactor); + }; + Game.HowManyCookiesReset = function ( + chips //how many cookies [chips] are worth + ) { + //this must be the inverse of the above function (ie. if cookies=chips^2, chips=cookies^(1/2) ) + return Math.pow(chips, Game.HCfactor) * 1000000000000; + }; + Game.gainedPrestige = 0; + Game.EarnHeavenlyChips = function (cookiesForfeited, silent) { + //recalculate prestige and chips owned + var prestige = Math.floor( + Game.HowMuchPrestige(Game.cookiesReset + cookiesForfeited) + ); + prestige = Math.max(0, prestige); + if (prestige != Game.prestige) { + //did we change prestige levels? + var prestigeDifference = prestige - Game.prestige; + Game.gainedPrestige = prestigeDifference; + Game.heavenlyChips += prestigeDifference; + Game.prestige = prestige; + if (!silent && prestigeDifference > 0) + Game.Notify( + loc( + "You forfeit your %1.", + loc("%1 cookie", LBeautify(cookiesForfeited)) + ), + loc( + "You gain %1!", + loc("%1 prestige level", LBeautify(prestigeDifference)) + ), + [19, 7] + ); + } + }; + + Game.GetHeavenlyMultiplier = function () { + var heavenlyMult = 0; + if (Game.Has("Heavenly chip secret")) heavenlyMult += 0.05; + if (Game.Has("Heavenly cookie stand")) heavenlyMult += 0.2; + if (Game.Has("Heavenly bakery")) heavenlyMult += 0.25; + if (Game.Has("Heavenly confectionery")) heavenlyMult += 0.25; + if (Game.Has("Heavenly key")) heavenlyMult += 0.25; + //if (Game.hasAura('Dragon God')) heavenlyMult*=1.05; + heavenlyMult *= 1 + Game.auraMult("Dragon God") * 0.05; + if (Game.Has("Lucky digit")) heavenlyMult *= 1.01; + if (Game.Has("Lucky number")) heavenlyMult *= 1.01; + if (Game.Has("Lucky payout")) heavenlyMult *= 1.01; + if (Game.hasGod) { + var godLvl = Game.hasGod("creation"); + if (godLvl == 1) heavenlyMult *= 0.7; + else if (godLvl == 2) heavenlyMult *= 0.8; + else if (godLvl == 3) heavenlyMult *= 0.9; + } + return heavenlyMult; + }; + + Game.ascensionModes = { + 0: { + name: "None", + dname: loc("None [ascension type]"), + desc: loc("No special modifiers."), + icon: [10, 0], + }, + 1: { + name: "Born again", + dname: loc("Born again [ascension type]"), + desc: loc( + 'This run will behave as if you\'d just started the game from scratch. Prestige levels and heavenly upgrades will have no effect, as will sugar lumps and building levels. Perma-upgrades and minigames will be unavailable.
Some achievements are only available in this mode.' + ), + icon: [2, 7], + } /*, + 2:{name:'Trigger finger',dname:loc("Trigger finger [ascension type]"),desc:loc("In this run, scrolling your mouse wheel on the cookie counts as clicking it. Some upgrades introduce new clicking behaviors.
No clicking achievements may be obtained in this mode.
Reaching 1 quadrillion cookies in this mode unlocks a special heavenly upgrade."),icon:[12,0]}*/, + }; + + Game.ascendMeterPercent = 0; + Game.ascendMeterPercentT = 0; + Game.ascendMeterLevel = 100000000000000000000000000000; + + Game.nextAscensionMode = 0; + Game.UpdateAscensionModePrompt = function () { + var icon = Game.ascensionModes[Game.nextAscensionMode].icon; + var name = Game.ascensionModes[Game.nextAscensionMode].dname; + l("ascendModeButton").innerHTML = + '
' + + loc("Challenge mode for the next run:") + + "
" + + name + + '
' + + loc( + "Challenge modes apply special modifiers to your next ascension.
Click to change." + ) + + "
", + "bottom-right" + ) + + ' style="opacity:1;float:none;display:block;background-position:' + + -icon[0] * 48 + + "px " + + -icon[1] * 48 + + 'px;">'; + }; + Game.PickAscensionMode = function () { + PlaySound("snd/tick.mp3"); + Game.tooltip.hide(); + + var str = ""; + for (var i in Game.ascensionModes) { + var icon = Game.ascensionModes[i].icon; + str += + '
"; + } + Game.Prompt( + "

" + + loc("Select a challenge mode") + + "

" + + '
' + + str + + '

' + + Game.ascensionModes[Game.nextAscensionMode].dname + + '

' + + Game.ascensionModes[Game.nextAscensionMode].desc + + '
', + [ + [ + loc("Confirm"), + "Game.UpdateAscensionModePrompt();Game.ClosePrompt();", + ], + ], + 0, + "widePrompt" + ); + }; + + l("ascendOverlay").innerHTML = + '", + "bottom-right" + ) + + ' style="font-size:16px;margin-top:0px;">' + + loc("Reincarnate") + + "" + + '' + + '' + + '
' + + loc( + "You are ascending.
Drag the screen around
or use arrow keys!
When you're ready,
click Reincarnate." + ) + + "
"; + + Game.attachTooltip( + l("ascendData1"), + function () { + return ( + '
(' + + Beautify(Game.heavenlyChips) + + ')
' + + loc( + "Each prestige level grants you a permanent +%1% CpS.
The more levels you have, the more cookies they require.", + 1 + ) + + "
" + ); + }, + "bottom-right" + ); + Game.attachTooltip( + l("ascendData2"), + function () { + return ( + '
(' + + loc("%1 heavenly chip", LBeautify(Game.heavenlyChips)) + + ')
' + + loc( + "Heavenly chips are used to buy heavenly upgrades.
You gain 1 chip every time you gain a prestige level." + ) + + "
" + ); + }, + "bottom-right" + ); + + Game.UpdateAscensionModePrompt(); + + AddEvent(l("ascendButton"), "click", function () { + PlaySound("snd/tick.mp3"); + Game.Reincarnate(); + }); + + Game.ascendl = l("ascend"); + Game.ascendContentl = l("ascendContent"); + Game.ascendZoomablel = l("ascendZoomable"); + Game.ascendUpgradesl = l("ascendUpgrades"); + Game.OnAscend = 0; + Game.AscendTimer = 0; //how far we are into the ascend animation + Game.AscendDuration = Game.fps * 5; //how long the ascend animation is + Game.AscendBreakpoint = Game.AscendDuration * 0.5; //at which point the cookie explodes during the ascend animation + Game.UpdateAscendIntro = function () { + if (Game.AscendTimer == 1) PlaySound("snd/charging.mp3"); + if (Game.AscendTimer == Math.floor(Game.AscendBreakpoint)) + PlaySound("snd/thud.mp3"); + Game.AscendTimer++; + if (Game.AscendTimer > Game.AscendDuration) { + //end animation and launch ascend screen + PlayCue("ascend"); + PlayMusicSound("snd/cymbalRev.mp3"); + if (!App || Game.volumeMusic == 0) PlaySound("snd/choir.mp3"); + Game.EarnHeavenlyChips(Game.cookiesEarned); + Game.AscendTimer = 0; + Game.OnAscend = 1; + Game.removeClass("ascendIntro"); + Game.addClass("ascending"); + Game.BuildAscendTree(); + Game.heavenlyChipsDisplayed = Game.heavenlyChips; + Game.nextAscensionMode = 0; + Game.ascensionMode = 0; + Game.UpdateAscensionModePrompt(); + } + }; + Game.ReincarnateTimer = 0; //how far we are into the reincarnation animation + Game.ReincarnateDuration = Game.fps * 1; //how long the reincarnation animation is + Game.UpdateReincarnateIntro = function () { + if (Game.ReincarnateTimer == 1) + PlaySound("snd/pop" + Math.floor(Math.random() * 3 + 1) + ".mp3", 0.75); + Game.ReincarnateTimer++; + if (Game.ReincarnateTimer > Game.ReincarnateDuration) { + //end animation and launch regular game + Game.ReincarnateTimer = 0; + Game.removeClass("reincarnating"); + } + }; + Game.Reincarnate = function (bypass) { + if (!bypass) + Game.Prompt( + "

" + + loc("Reincarnate") + + '

' + + loc("Are you ready to return to the mortal world?") + + "
", + [[loc("Yes"), "Game.ClosePrompt();Game.Reincarnate(1);"], loc("No")] + ); + else { + Game.ascendUpgradesl.innerHTML = ""; + Game.ascensionMode = Game.nextAscensionMode; + Game.nextAscensionMode = 0; + Game.Reset(); + if (Game.HasAchiev("Rebirth")) { + Game.Notify("Reincarnated", loc("Hello, cookies!"), [10, 0], 4); + } + if (Game.resets >= 1000) Game.Win("Endless cycle"); + if (Game.resets >= 100) Game.Win("Reincarnation"); + if (Game.resets >= 10) Game.Win("Resurrection"); + if (Game.resets >= 1) Game.Win("Rebirth"); + + var prestigeUpgradesOwned = 0; + for (var i in Game.Upgrades) { + if (Game.Upgrades[i].bought && Game.Upgrades[i].pool == "prestige") + prestigeUpgradesOwned++; + } + if (prestigeUpgradesOwned >= 100) Game.Win("All the stars in heaven"); + + Game.removeClass("ascending"); + Game.OnAscend = 0; + //trigger the reincarnate animation + Game.ReincarnateTimer = 1; + Game.addClass("reincarnating"); + Game.BigCookieSize = 0; + + Game.runModHook("reincarnate"); + } + }; + Game.Ascend = function (bypass) { + if (!bypass) + Game.Prompt( + "

" + + loc("Ascend") + + '

' + + tinyIcon([19, 7]) + + '
' + + loc( + 'Do you REALLY want to ascend?
You will lose your progress and start over from scratch.
All your cookies will be converted into prestige and heavenly chips.' + ) + + '
' + + (Game.canLumps() + ? loc( + "You will keep your achievements, building levels and sugar lumps." + ) + : loc("You will keep your achievements.")) + + '
", + [ + [ + loc("Yes"), + "Game.ClosePrompt();Game.Ascend(1);", + "float:left;display:none;", + ], + [loc("Cancel"), 0, "float:right"], + ] + ); + else { + Game.Notify(loc("Ascending"), loc("So long, cookies."), [20, 7], 4); + Game.OnAscend = 0; + Game.removeClass("ascending"); + Game.addClass("ascendIntro"); + //trigger the ascend animation + Game.AscendTimer = 1; + Game.killShimmers(); + l("toggleBox").style.display = "none"; + l("toggleBox").innerHTML = ""; + Game.choiceSelectorOn = -1; + Game.ToggleSpecialMenu(0); + Game.AscendOffX = 0; + Game.AscendOffY = 0; + Game.AscendOffXT = 0; + Game.AscendOffYT = 0; + Game.AscendZoomT = 1; + Game.AscendZoom = 0.2; + + Game.jukebox.reset(); + PlayCue("preascend"); + } + }; + + Game.DebuggingPrestige = 0; + Game.AscendDragX = 0; + Game.AscendDragY = 0; + Game.AscendOffX = 0; + Game.AscendOffY = 0; + Game.AscendZoom = 1; + Game.AscendOffXT = 0; + Game.AscendOffYT = 0; + Game.AscendZoomT = 1; + Game.AscendDragging = 0; + Game.AscendGridSnap = 24; + Game.heavenlyBounds = { left: 0, right: 0, top: 0, bottom: 0 }; + Game.UpdateAscend = function () { + if (Game.keys[37]) Game.AscendOffXT += 16 * (1 / Game.AscendZoomT); + if (Game.keys[38]) Game.AscendOffYT += 16 * (1 / Game.AscendZoomT); + if (Game.keys[39]) Game.AscendOffXT -= 16 * (1 / Game.AscendZoomT); + if (Game.keys[40]) Game.AscendOffYT -= 16 * (1 / Game.AscendZoomT); + + if (Game.AscendOffXT > -Game.heavenlyBounds.left) + Game.AscendOffXT = -Game.heavenlyBounds.left; + if (Game.AscendOffXT < -Game.heavenlyBounds.right) + Game.AscendOffXT = -Game.heavenlyBounds.right; + if (Game.AscendOffYT > -Game.heavenlyBounds.top) + Game.AscendOffYT = -Game.heavenlyBounds.top; + if (Game.AscendOffYT < -Game.heavenlyBounds.bottom) + Game.AscendOffYT = -Game.heavenlyBounds.bottom; + Game.AscendOffX += (Game.AscendOffXT - Game.AscendOffX) * 0.5; + Game.AscendOffY += (Game.AscendOffYT - Game.AscendOffY) * 0.5; + Game.AscendZoom += (Game.AscendZoomT - Game.AscendZoom) * 0.25; + if (Math.abs(Game.AscendZoomT - Game.AscendZoom) < 0.005) + Game.AscendZoom = Game.AscendZoomT; + + if (Game.mouseDown && !Game.promptOn) { + if (!Game.AscendDragging) { + Game.AscendDragX = Game.mouseX; + Game.AscendDragY = Game.mouseY; + } + Game.AscendDragging = 1; + + if (Game.DebuggingPrestige) { + if (Game.SelectedHeavenlyUpgrade) { + Game.tooltip.hide(); + //drag upgrades around + var me = Game.SelectedHeavenlyUpgrade; + me.posX += + (Game.mouseX - Game.AscendDragX) * (1 / Game.AscendZoomT); + me.posY += + (Game.mouseY - Game.AscendDragY) * (1 / Game.AscendZoomT); + var posX = me.posX; //Math.round(me.posX/Game.AscendGridSnap)*Game.AscendGridSnap; + var posY = me.posY; //Math.round(me.posY/Game.AscendGridSnap)*Game.AscendGridSnap; + l("heavenlyUpgrade" + me.id).style.left = Math.floor(posX) + "px"; + l("heavenlyUpgrade" + me.id).style.top = Math.floor(posY) + "px"; + for (var ii in me.parents) { + var origX = 0; + var origY = 0; + var targX = me.posX + 28; + var targY = me.posY + 28; + if (me.parents[ii] != -1) { + origX = me.parents[ii].posX + 28; + origY = me.parents[ii].posY + 28; + } + var rot = + -(Math.atan((targY - origY) / (origX - targX)) / Math.PI) * 180; + if (targX <= origX) rot += 180; + var dist = Math.floor( + Math.sqrt( + (targX - origX) * (targX - origX) + + (targY - origY) * (targY - origY) + ) + ); + + l("heavenlyLink" + me.id + "-" + ii).style = + "width:" + + dist + + "px;transform:rotate(" + + rot + + "deg);left:" + + origX + + "px;top:" + + origY + + "px;"; + } + } + } + if (!Game.SelectedHeavenlyUpgrade) { + Game.AscendOffXT += + (Game.mouseX - Game.AscendDragX) * (1 / Game.AscendZoomT); + Game.AscendOffYT += + (Game.mouseY - Game.AscendDragY) * (1 / Game.AscendZoomT); + } + Game.AscendDragX = Game.mouseX; + Game.AscendDragY = Game.mouseY; + } else { + /*if (Game.SelectedHeavenlyUpgrade) + { + var me=Game.SelectedHeavenlyUpgrade; + me.posX=Math.round(me.posX/Game.AscendGridSnap)*Game.AscendGridSnap; + me.posY=Math.round(me.posY/Game.AscendGridSnap)*Game.AscendGridSnap; + l('heavenlyUpgrade'+me.id).style.left=me.posX+'px'; + l('heavenlyUpgrade'+me.id).style.top=me.posY+'px'; + }*/ + Game.AscendDragging = 0; + Game.SelectedHeavenlyUpgrade = 0; + } + if (Game.Click || Game.promptOn) { + Game.AscendDragging = 0; + } + + //Game.ascendl.style.backgroundPosition=Math.floor(Game.AscendOffX/2)+'px '+Math.floor(Game.AscendOffY/2)+'px'; + //Game.ascendl.style.backgroundPosition=Math.floor(Game.AscendOffX/2)+'px '+Math.floor(Game.AscendOffY/2)+'px,'+Math.floor(Game.AscendOffX/4)+'px '+Math.floor(Game.AscendOffY/4)+'px'; + //Game.ascendContentl.style.left=Math.floor(Game.AscendOffX)+'px'; + //Game.ascendContentl.style.top=Math.floor(Game.AscendOffY)+'px'; + Game.ascendContentl.style.webkitTransform = + "translate(" + + Math.floor(Game.AscendOffX) + + "px," + + Math.floor(Game.AscendOffY) + + "px)"; + Game.ascendContentl.style.msTransform = + "translate(" + + Math.floor(Game.AscendOffX) + + "px," + + Math.floor(Game.AscendOffY) + + "px)"; + Game.ascendContentl.style.oTransform = + "translate(" + + Math.floor(Game.AscendOffX) + + "px," + + Math.floor(Game.AscendOffY) + + "px)"; + Game.ascendContentl.style.mozTransform = + "translate(" + + Math.floor(Game.AscendOffX) + + "px," + + Math.floor(Game.AscendOffY) + + "px)"; + Game.ascendContentl.style.transform = + "translate(" + + Math.floor(Game.AscendOffX) + + "px," + + Math.floor(Game.AscendOffY) + + "px)"; + Game.ascendZoomablel.style.webkitTransform = + "scale(" + Game.AscendZoom + "," + Game.AscendZoom + ")"; + Game.ascendZoomablel.style.marginLeft = Game.windowW / 2 + "px"; + Game.ascendZoomablel.style.marginTop = Game.windowH / 2 + "px"; + Game.ascendZoomablel.style.msTransform = + "scale(" + Game.AscendZoom + "," + Game.AscendZoom + ")"; + Game.ascendZoomablel.style.oTransform = + "scale(" + Game.AscendZoom + "," + Game.AscendZoom + ")"; + Game.ascendZoomablel.style.mozTransform = + "scale(" + Game.AscendZoom + "," + Game.AscendZoom + ")"; + Game.ascendZoomablel.style.transform = + "scale(" + Game.AscendZoom + "," + Game.AscendZoom + ")"; + + //if (Game.Scroll!=0) Game.ascendContentl.style.transformOrigin=Math.floor(Game.windowW/2-Game.mouseX)+'px '+Math.floor(Game.windowH/2-Game.mouseY)+'px'; + if (Game.Scroll < 0 && !Game.promptOn) { + Game.AscendZoomT = 0.5; + } + if (Game.Scroll > 0 && !Game.promptOn) { + Game.AscendZoomT = 1; + } + + if (Game.T % 2 == 0) { + l("ascendPrestige").innerHTML = + loc("Prestige level:") + "
" + SimpleBeautify(Game.prestige); + l("ascendHCs").innerHTML = + loc("Heavenly chips:") + + '
' + + SimpleBeautify(Math.round(Game.heavenlyChipsDisplayed)) + + ""; + if (Game.prestige > 0) l("ascendModeButton").style.display = "block"; + else l("ascendModeButton").style.display = "none"; + } + Game.heavenlyChipsDisplayed += + (Game.heavenlyChips - Game.heavenlyChipsDisplayed) * 0.4; + + if (Game.DebuggingPrestige && Game.T % 10 == 0) { + var str = ""; + for (var i in Game.PrestigeUpgrades) { + var me = Game.PrestigeUpgrades[i]; + if (me.placedByCode) continue; + str += + me.id + + ":[" + + Math.floor(me.posX) + + "," + + Math.floor(me.posY) + + "],"; + } + l("upgradePositions").value = "Game.UpgradePositions={" + str + "};"; + } + //if (Game.T%5==0) Game.BuildAscendTree(); + }; + Game.AscendRefocus = function () { + Game.AscendOffX = 0; + Game.AscendOffY = 0; + Game.ascendl.className = ""; + }; + + Game.SelectedHeavenlyUpgrade = 0; + Game.PurchaseHeavenlyUpgrade = function (what) { + //if (Game.Has('Neuromancy')) Game.UpgradesById[what].toggle(); else + if (Game.UpgradesById[what].buy()) { + if (l("heavenlyUpgrade" + what)) { + var rect = l("heavenlyUpgrade" + what).getBounds(); + Game.SparkleAt( + (rect.left + rect.right) / 2, + (rect.top + rect.bottom) / 2 - 24 + ); + } + //Game.BuildAscendTree(); + } + }; + Game.BuildAscendTree = function (justBought) { + var str = ""; + Game.heavenlyBounds = { left: 0, right: 0, top: 0, bottom: 0 }; + + if (Game.DebuggingPrestige) l("upgradePositions").style.display = "block"; + else l("upgradePositions").style.display = "none"; + + var toPop = []; + for (var i in Game.PrestigeUpgrades) { + var me = Game.PrestigeUpgrades[i]; + var prevCanBePurchased = me.canBePurchased; + me.canBePurchased = 1; + if (!me.bought && !Game.DebuggingPrestige) { + if (me.showIf && !me.showIf()) me.canBePurchased = 0; + else { + for (var ii in me.parents) { + if (me.parents[ii] != -1 && !me.parents[ii].bought) + me.canBePurchased = 0; + } + } + } + if ( + justBought && + me.parents.indexOf(justBought) != -1 && + !prevCanBePurchased && + me.canBePurchased && + !me.bought + ) + toPop.push(me); + } + toPop.sort( + (function (parent) { + return function (a, b) { + var rot = + Math.atan2(a.posY - parent.posY, parent.posX - a.posX) - + Math.PI / 2; + var rot2 = + Math.atan2(b.posY - parent.posY, parent.posX - b.posX) - + Math.PI / 2; + return rot < rot2; + }; + })(justBought) + ); + for (var i = 0; i < toPop.length; i++) { + setTimeout(function () { + PlaySound( + "snd/pop" + Math.floor(Math.random() * 3 + 1) + ".mp3", + 0.5 + ); + }, (0.2 + i * 0.1) * 1000); + } + str += + '
'; + str += '
'; //chrome is still bad at these + for (var i in Game.PrestigeUpgrades) { + var me = Game.PrestigeUpgrades[i]; + + var ghosted = 0; + if (me.canBePurchased || Game.Has("Neuromancy")) { + str += Game.crate( + me, + "ascend", + "Game.PurchaseHeavenlyUpgrade(" + me.id + ");", + "heavenlyUpgrade" + me.id, + toPop.indexOf(me) != -1 + ? "animation:pucker 0.2s ease-out;animation-delay:" + + (toPop.indexOf(me) * 0.1 + 0.2) + + "s;" + : "" + ); + } else { + for (var ii in me.parents) { + if (me.parents[ii] != -1 && me.parents[ii].canBePurchased) + ghosted = 1; + } + if (me.showIf && !me.showIf()) ghosted = 0; + if (ghosted) { + //maybe replace this with Game.crate() + str += + '
'; + } + } + if (me.canBePurchased || Game.Has("Neuromancy") || ghosted) { + if (me.posX < Game.heavenlyBounds.left) + Game.heavenlyBounds.left = me.posX; + if (me.posX > Game.heavenlyBounds.right) + Game.heavenlyBounds.right = me.posX; + if (me.posY < Game.heavenlyBounds.top) + Game.heavenlyBounds.top = me.posY; + if (me.posY > Game.heavenlyBounds.bottom) + Game.heavenlyBounds.bottom = me.posY; + } + for (var ii in me.parents) { //create pulsing links + if (me.parents[ii] != -1 && (me.canBePurchased || ghosted)) { + var origX = 0; + var origY = 0; + var targX = me.posX + 28; + var targY = me.posY + 28; + if (me.parents[ii] != -1) { + origX = me.parents[ii].posX + 28; + origY = me.parents[ii].posY + 28; + } + var rot = + -(Math.atan((targY - origY) / (origX - targX)) / Math.PI) * 180; + if (targX <= origX) rot += 180; + var dist = Math.floor( + Math.sqrt( + (targX - origX) * (targX - origX) + + (targY - origY) * (targY - origY) + ) + ); + str += + ''; + } + } + } + Game.heavenlyBounds.left -= 128; + Game.heavenlyBounds.top -= 128; + Game.heavenlyBounds.right += 128 + 64; + Game.heavenlyBounds.bottom += 128 + 64; + //str+='
'; + str += "
"; + Game.ascendUpgradesl.innerHTML = str; + + if (Game.DebuggingPrestige) { + for (var i in Game.PrestigeUpgrades) { + var me = Game.PrestigeUpgrades[i]; + AddEvent( + l("heavenlyUpgrade" + me.id), + "mousedown", + (function (me) { + return function () { + if (!Game.DebuggingPrestige) return; + if ( + Game.keys[16] && + typeof LASTHEAVENLYSELECTED !== "undefined" && + me != LASTHEAVENLYSELECTED + ) { + //when clicking an upgrade with ctrl, set it as reference point; clicking any sibling upgrade with shift will align it in a nice arc around their shared parent + var parent = 0; + for (var i = 0; i < me.parents.length; i++) { + if ( + LASTHEAVENLYSELECTED.parents.indexOf(me.parents[i]) != -1 + ) + parent = me.parents[i]; + } + if (parent) { + var origX = parent.posX; + var origY = parent.posY; + var targX = LASTHEAVENLYSELECTED.posX; + var targY = LASTHEAVENLYSELECTED.posY; + var rot = + Math.atan2(targY - origY, origX - targX) - Math.PI / 2; + var dist = Math.floor( + Math.sqrt( + (targX - origX) * (targX - origX) + + (targY - origY) * (targY - origY) + ) + ); + me.posX = + parent.posX + Math.sin(rot - (Math.PI * 2) / 8) * dist; + me.posY = + parent.posY + Math.cos(rot - (Math.PI * 2) / 8) * dist; + } + LASTHEAVENLYSELECTED = me; + console.log("Set reference point to", me.name, "."); + } + if (Game.keys[17]) { + LASTHEAVENLYSELECTED = me; + console.log("Set reference point to", me.name, "."); + } + Game.SelectedHeavenlyUpgrade = me; + }; + })(me) + ); + AddEvent( + l("heavenlyUpgrade" + me.id), + "mouseup", + (function (me) { + return function () { + if (Game.SelectedHeavenlyUpgrade == me) { + Game.SelectedHeavenlyUpgrade = 0; + Game.BuildAscendTree(); + } + }; + })(me) + ); + } + } + setTimeout(function () { + Game.tooltip.shouldHide = true; + }, 100); + }; + + /*===================================================================================== + COALESCING SUGAR LUMPS + =======================================================================================*/ + Game.lumpMatureAge = 1; + Game.lumpRipeAge = 1; + Game.lumpOverripeAge = 1; + Game.lumpCurrentType = 0; + l("comments").innerHTML = + l("comments").innerHTML + + '
0
'; + Game.lumpTooltip = function () { + var str = + '
' + + loc( + "You have %1.", + '' + + loc("%1 sugar lump", LBeautify(Game.lumps)) + + "" + ) + + '
' + + loc( + "A sugar lump is coalescing here, attracted by your accomplishments." + ); + + var age = Date.now() - Game.lumpT; + str += '
'; + if (age < 0) + str += loc( + "This sugar lump has been exposed to time travel shenanigans and will take an excruciating %1 to reach maturity.", + Game.sayTime(((Game.lumpMatureAge - age) / 1000 + 1) * Game.fps, -1) + ); + else if (age < Game.lumpMatureAge) + str += loc( + "This sugar lump is still growing and will take %1 to reach maturity.", + Game.sayTime(((Game.lumpMatureAge - age) / 1000 + 1) * Game.fps, -1) + ); + else if (age < Game.lumpRipeAge) + str += loc( + "This sugar lump is mature and will be ripe in %1.
You may click it to harvest it now, but there is a 50% chance you won't get anything.", + Game.sayTime(((Game.lumpRipeAge - age) / 1000 + 1) * Game.fps, -1) + ); + else if (age < Game.lumpOverripeAge) + str += loc( + "This sugar lump is ripe! Click it to harvest it.
If you do nothing, it will auto-harvest in %1.", + Game.sayTime(((Game.lumpOverripeAge - age) / 1000 + 1) * Game.fps, -1) + ); + + var phase = (age / Game.lumpOverripeAge) * 7; + if (phase >= 3) { + if (Game.lumpCurrentType != 0) str += '
'; + if (Game.lumpCurrentType == 1) + str += loc( + "This sugar lump grew to be bifurcated; harvesting it has a 50% chance of yielding two lumps." + ); + else if (Game.lumpCurrentType == 2) + str += loc( + "This sugar lump grew to be golden; harvesting it will yield 2 to 7 lumps, your current cookies will be doubled (capped to a gain of 24 hours of your CpS), and you will find 10% more golden cookies for the next 24 hours." + ); + else if (Game.lumpCurrentType == 3) + str += loc( + "This sugar lump was affected by the elders and grew to be meaty; harvesting it will yield between 0 and 2 lumps." + ); + else if (Game.lumpCurrentType == 4) + str += loc( + "This sugar lump is caramelized, its stickiness binding it to unexpected things; harvesting it will yield between 1 and 3 lumps and will refill your sugar lump cooldowns." + ); + } + + str += '
'; + str += loc( + "Your sugar lumps mature after %1,
ripen after %2,
and fall after %3.", + [ + Game.sayTime((Game.lumpMatureAge / 1000) * Game.fps, -1), + Game.sayTime((Game.lumpRipeAge / 1000) * Game.fps, -1), + Game.sayTime((Game.lumpOverripeAge / 1000) * Game.fps, -1), + ] + ); + + str += + '
' + + loc( + "• Sugar lumps can be harvested when mature, though if left alone beyond that point they will start ripening (increasing the chance of harvesting them) and will eventually fall and be auto-harvested after some time.
• Sugar lumps are delicious and may be used as currency for all sorts of things.
• Once a sugar lump is harvested, another one will start growing in its place.
• Note that sugar lumps keep growing when the game is closed." + ) + + "
"; + return str; + }; + Game.computeLumpTimes = function () { + var hour = 1000 * 60 * 60; + Game.lumpMatureAge = hour * 20; + Game.lumpRipeAge = hour * 23; + if (Game.Has("Stevia Caelestis")) Game.lumpRipeAge -= hour; + if (Game.Has("Diabetica Daemonicus")) Game.lumpMatureAge -= hour; + if (Game.Has("Ichor syrup")) Game.lumpMatureAge -= 1000 * 60 * 7; + if (Game.Has("Sugar aging process")) + Game.lumpRipeAge -= + 6000 * Math.min(600, Game.Objects["Grandma"].amount); //capped at 600 grandmas + if (Game.hasGod && Game.BuildingsOwned % 10 == 0) { + var godLvl = Game.hasGod("order"); + if (godLvl == 1) Game.lumpRipeAge -= hour; + else if (godLvl == 2) Game.lumpRipeAge -= (hour / 3) * 2; + else if (godLvl == 3) Game.lumpRipeAge -= hour / 3; + } + //if (Game.hasAura('Dragon\'s Curve')) {Game.lumpMatureAge/=1.05;Game.lumpRipeAge/=1.05;} + Game.lumpMatureAge /= 1 + Game.auraMult("Dragon's Curve") * 0.05; + Game.lumpRipeAge /= 1 + Game.auraMult("Dragon's Curve") * 0.05; + Game.lumpOverripeAge = Game.lumpRipeAge + hour; + if (Game.Has("Glucose-charged air")) { + Game.lumpMatureAge /= 2000; + Game.lumpRipeAge /= 2000; + Game.lumpOverripeAge /= 2000; + } + }; + Game.loadLumps = function (time) { + Game.computeLumpTimes(); + //Game.computeLumpType(); + if (!Game.canLumps()) Game.removeClass("lumpsOn"); + else { + if (Game.ascensionMode != 1) Game.addClass("lumpsOn"); + Game.lumpT = Math.min(Date.now(), Game.lumpT); + var age = Math.max(Date.now() - Game.lumpT, 0); + var amount = Math.floor(age / Game.lumpOverripeAge); //how many lumps did we harvest since we closed the game? + if (amount >= 1) { + Game.harvestLumps(1, true); + Game.lumpCurrentType = 0; //all offline lumps after the first one have a normal type + if (amount > 1) Game.harvestLumps(amount - 1, true); + Game.Notify( + "", + loc( + "You harvested %1 while you were away.", + loc("%1 sugar lump", LBeautify(amount)) + ), + [29, 14] + ); + Game.lumpT = Date.now() - (age - amount * Game.lumpOverripeAge); + Game.computeLumpType(); + } + } + }; + Game.gainLumps = function (total) { + if (Game.lumpsTotal == -1) { + Game.lumpsTotal = 0; + Game.lumps = 0; + } + Game.lumps += total; + Game.lumpsTotal += total; + + if (Game.lumpsTotal >= 7) Game.Win("Dude, sweet"); + if (Game.lumpsTotal >= 30) Game.Win("Sugar rush"); + if (Game.lumpsTotal >= 365) Game.Win("Year's worth of cavities"); + }; + Game.clickLump = function () { + triggerAnim(l("lumpsIcon"), "pucker"); + triggerAnim(l("lumpsIcon2"), "pucker"); + if (!Game.canLumps()) return; + var age = Date.now() - Game.lumpT; + if (age < Game.lumpMatureAge) { + } else if (age < Game.lumpRipeAge) { + var amount = choose([0, 1]); + if (amount != 0) Game.Win("Hand-picked"); + Game.harvestLumps(amount); + Game.computeLumpType(); + } else if (age < Game.lumpOverripeAge) { + Game.harvestLumps(1); + Game.computeLumpType(); + } + }; + Game.harvestLumps = function (amount, silent) { + if (!Game.canLumps()) return; + Game.lumpT = Date.now(); + var total = amount; + if ( + Game.lumpCurrentType == 1 && + Game.Has("Sucralosia Inutilis") && + Math.random() < 0.05 + ) + total *= 2; + else if (Game.lumpCurrentType == 1) total *= choose([1, 2]); + else if (Game.lumpCurrentType == 2) { + total *= choose([2, 3, 4, 5, 6, 7]); + Game.gainBuff("sugar blessing", 24 * 60 * 60, 1); + Game.Earn(Math.min(Game.cookiesPs * 60 * 60 * 24, Game.cookies)); + Game.Notify( + loc("Sugar blessing activated!"), + loc( + "Your cookies have been doubled.
+10% golden cookies for the next 24 hours." + ), + [29, 16] + ); + } else if (Game.lumpCurrentType == 3) total *= choose([0, 0, 1, 2, 2]); + else if (Game.lumpCurrentType == 4) { + total *= choose([1, 2, 3]); + Game.lumpRefill = 0; //Date.now()-Game.getLumpRefillMax(); + Game.Notify(loc("Sugar lump cooldowns cleared!"), "", [29, 27]); + } + total = Math.floor(total); + Game.gainLumps(total); + if (Game.lumpCurrentType == 1) Game.Win("Sugar sugar"); + else if (Game.lumpCurrentType == 2) Game.Win("All-natural cane sugar"); + else if (Game.lumpCurrentType == 3) Game.Win("Sweetmeats"); + else if (Game.lumpCurrentType == 4) Game.Win("Maillard reaction"); + + if (!silent) { + var rect = l("lumpsIcon2").getBounds(); + Game.SparkleAt( + (rect.left + rect.right) / 2, + (rect.top + rect.bottom) / 2 - 24 + 32 - TopBarOffset + ); + if (total > 0) + Game.Popup( + "+" + loc("%1 sugar lump", LBeautify(total)) + "", + (rect.left + rect.right) / 2, + (rect.top + rect.bottom) / 2 - 48 + ); + else + Game.Popup( + "" + loc("Botched harvest!") + "", + (rect.left + rect.right) / 2, + (rect.top + rect.bottom) / 2 - 48 + ); + PlaySound("snd/pop" + Math.floor(Math.random() * 3 + 1) + ".mp3", 0.75); + } + Game.computeLumpTimes(); + }; + Game.computeLumpType = function () { + Math.seedrandom(Game.seed + "/" + Game.lumpT); + var types = [0]; + var loop = 1; + //if (Game.hasAura('Dragon\'s Curve')) loop=2; + loop += Game.auraMult("Dragon's Curve"); + loop = randomFloor(loop); + for (var i = 0; i < loop; i++) { + if (Math.random() < (Game.Has("Sucralosia Inutilis") ? 0.15 : 0.1)) + types.push(1); //bifurcated + if (Math.random() < 3 / 1000) types.push(2); //golden + if (Math.random() < 0.1 * Game.elderWrath) types.push(3); //meaty + if (Math.random() < 1 / 50) types.push(4); //caramelized + } + Game.lumpCurrentType = choose(types); + Math.seedrandom(); + }; + + Game.canLumps = function () //grammatically pleasing function name + { + if ( + Game.lumpsTotal > -1 || + (Game.ascensionMode != 1 && + Game.cookiesEarned + Game.cookiesReset >= 1000000000) + ) + return true; + return false; + }; + + Game.getLumpRefillMax = function () { + return Game.fps * 60 * 15; //1000*60*15;//15 minutes + }; + Game.getLumpRefillRemaining = function () { + return Game.lumpRefill; //Game.getLumpRefillMax()-(Date.now()-Game.lumpRefill); + }; + Game.canRefillLump = function () { + return Game.lumpRefill <= 0; //((Date.now()-Game.lumpRefill)>=Game.getLumpRefillMax()); + }; + Game.refillLump = function (n, func) { + if (Game.lumps >= n && Game.canRefillLump()) { + Game.spendLump(n, "refill", function () { + if (!Game.sesame) Game.lumpRefill = Game.getLumpRefillMax(); //Date.now(); + func(); + })(); + } + }; + Game.spendLump = function (n, str, func, free) { + //ask if we want to spend N lumps (unless free) + return function () { + if (!free && Game.lumps < n) return false; + if (!free && Game.prefs.askLumps) { + PlaySound("snd/tick.mp3"); + Game.promptConfirmFunc = func; //bit dumb + Game.Prompt( + '
' + + loc("Do you want to spend %1 to %2?", [ + "" + loc("%1 sugar lump", LBeautify(n)) + "", + str, + ]) + + "
", + [ + [ + loc("Yes"), + "Game.lumps-=" + + n + + ";Game.promptConfirmFunc();Game.promptConfirmFunc=0;Game.recalculateGains=1;Game.ClosePrompt();", + ], + loc("No"), + ] + ); + return false; + } else { + if (!free) Game.lumps -= n; + func(); + Game.recalculateGains = 1; + } + }; + }; + + Game.doLumps = function () { + if (Game.lumpRefill > 0) Game.lumpRefill--; + + if (!Game.canLumps()) { + Game.removeClass("lumpsOn"); + return; + } + if (Game.lumpsTotal == -1) { + //first time ! + if (Game.ascensionMode != 1) Game.addClass("lumpsOn"); + Game.lumpT = Date.now(); + Game.lumpsTotal = 0; + Game.lumps = 0; + Game.computeLumpType(); + + Game.Notify( + loc("Sugar lumps!"), + loc( + "Because you've baked a billion cookies in total, you are now attracting sugar lumps. They coalesce quietly near the top of your screen, under the Stats button.
You will be able to harvest them when they're ripe, after which you may spend them on all sorts of things!" + ), + [23, 14] + ); + } + var age = Date.now() - Game.lumpT; + if (age > Game.lumpOverripeAge) { + age = 0; + Game.harvestLumps(1); + Game.computeLumpType(); + } + + var phase = Math.min(6, Math.floor((age / Game.lumpOverripeAge) * 7)); + var phase2 = Math.min( + 6, + Math.floor((age / Game.lumpOverripeAge) * 7) + 1 + ); + var row = 14; + var row2 = 14; + var type = Game.lumpCurrentType; + if (type == 1) { + //double + //if (phase>=6) row=15; + if (phase2 >= 6) row2 = 15; + } else if (type == 2) { + //golden + if (phase >= 4) row = 16; + if (phase2 >= 4) row2 = 16; + } else if (type == 3) { + //meaty + if (phase >= 4) row = 17; + if (phase2 >= 4) row2 = 17; + } else if (type == 4) { + //caramelized + if (phase >= 4) row = 27; + if (phase2 >= 4) row2 = 27; + } + var icon = [23 + Math.min(phase, 5), row]; + var icon2 = [23 + phase2, row2]; + if (age < 0) { + icon = [17, 5]; + icon2 = [17, 5]; + } + var opacity = Math.min(6, (age / Game.lumpOverripeAge) * 7) % 1; + if (phase >= 6) { + opacity = 1; + } + l("lumpsIcon").style.backgroundPosition = + -icon[0] * 48 + "px " + -icon[1] * 48 + "px"; + l("lumpsIcon2").style.backgroundPosition = + -icon2[0] * 48 + "px " + -icon2[1] * 48 + "px"; + l("lumpsIcon2").style.opacity = opacity; + l("lumpsAmount").textContent = Beautify(Game.lumps); + }; + + /*===================================================================================== + COOKIE ECONOMICS + =======================================================================================*/ + Game.Earn = function (howmuch) { + Game.cookies += howmuch; + Game.cookiesEarned += howmuch; + }; + Game.Spend = function (howmuch) { + Game.cookies -= howmuch; + }; + Game.Dissolve = function (howmuch) { + Game.cookies -= howmuch; + Game.cookiesEarned -= howmuch; + Game.cookies = Math.max(0, Game.cookies); + Game.cookiesEarned = Math.max(0, Game.cookiesEarned); + }; + Game.mouseCps = function () { + var add = 0; + if (Game.Has("Thousand fingers")) add += 0.1; + if (Game.Has("Million fingers")) add *= 5; + if (Game.Has("Billion fingers")) add *= 10; + if (Game.Has("Trillion fingers")) add *= 20; + if (Game.Has("Quadrillion fingers")) add *= 20; + if (Game.Has("Quintillion fingers")) add *= 20; + if (Game.Has("Sextillion fingers")) add *= 20; + if (Game.Has("Septillion fingers")) add *= 20; + if (Game.Has("Octillion fingers")) add *= 20; + if (Game.Has("Nonillion fingers")) add *= 20; + if (Game.Has("Decillion fingers")) add *= 20; + if (Game.Has("Unshackled cursors")) add *= 25; + + var num = 0; + for (var i in Game.Objects) { + num += Game.Objects[i].amount; + } + num -= Game.Objects["Cursor"].amount; + add = add * num; + if (Game.Has("Plastic mouse")) add += Game.cookiesPs * 0.01; + if (Game.Has("Iron mouse")) add += Game.cookiesPs * 0.01; + if (Game.Has("Titanium mouse")) add += Game.cookiesPs * 0.01; + if (Game.Has("Adamantium mouse")) add += Game.cookiesPs * 0.01; + if (Game.Has("Unobtainium mouse")) add += Game.cookiesPs * 0.01; + if (Game.Has("Eludium mouse")) add += Game.cookiesPs * 0.01; + if (Game.Has("Wishalloy mouse")) add += Game.cookiesPs * 0.01; + if (Game.Has("Fantasteel mouse")) add += Game.cookiesPs * 0.01; + if (Game.Has("Nevercrack mouse")) add += Game.cookiesPs * 0.01; + if (Game.Has("Armythril mouse")) add += Game.cookiesPs * 0.01; + if (Game.Has("Technobsidian mouse")) add += Game.cookiesPs * 0.01; + if (Game.Has("Plasmarble mouse")) add += Game.cookiesPs * 0.01; + if (Game.Has("Miraculite mouse")) add += Game.cookiesPs * 0.01; + if (Game.Has("Aetherice mouse")) add += Game.cookiesPs * 0.01; + + if (Game.Has("Fortune #104")) add += Game.cookiesPs * 0.01; + var mult = 1; + + if (Game.Has("Santa's helpers")) mult *= 1.1; + if (Game.Has("Cookie egg")) mult *= 1.1; + if (Game.Has("Halo gloves")) mult *= 1.1; + if (Game.Has("Dragon claw")) mult *= 1.03; + + if (Game.Has("Aura gloves")) { + mult *= + 1 + + 0.05 * + Math.min( + Game.Objects["Cursor"].level, + Game.Has("Luminous gloves") ? 20 : 10 + ); + } + + mult *= Game.eff("click"); + + if (Game.hasGod) { + var godLvl = Game.hasGod("labor"); + if (godLvl == 1) mult *= 1.15; + else if (godLvl == 2) mult *= 1.1; + else if (godLvl == 3) mult *= 1.05; + } + + for (var i in Game.buffs) { + if (typeof Game.buffs[i].multClick != "undefined") + mult *= Game.buffs[i].multClick; + } + + //if (Game.hasAura('Dragon Cursor')) mult*=1.05; + mult *= 1 + Game.auraMult("Dragon Cursor") * 0.05; + + var out = + mult * + Game.ComputeCps( + 1, + Game.Has("Reinforced index finger") + + Game.Has("Carpal tunnel prevention cream") + + Game.Has("Ambidextrous"), + add + ); + + out = Game.runModHookOnValue("cookiesPerClick", out); + + if (Game.hasBuff("Cursed finger")) + out = Game.buffs["Cursed finger"].power; + return out; + }; + Game.computedMouseCps = 1; + Game.globalCpsMult = 1; + Game.unbuffedCps = 0; + Game.buildingCps = 0; + Game.lastClick = 0; + Game.CanClick = 1; + Game.autoclickerDetected = 0; + Game.BigCookieState = 0; //0 = normal, 1 = clicked (small), 2 = released/hovered (big) + Game.BigCookieSize = 0; + Game.BigCookieSizeD = 0; + Game.BigCookieSizeT = 1; + Game.cookieClickSound = Math.floor(Math.random() * 7) + 1; + Game.playCookieClickSound = function () { + if (Game.prefs.cookiesound) + PlaySound("snd/clickb" + Game.cookieClickSound + ".mp3", 0.5); + else PlaySound("snd/click" + Game.cookieClickSound + ".mp3", 0.5); + Game.cookieClickSound += Math.floor(Math.random() * 4) + 1; + if (Game.cookieClickSound > 7) Game.cookieClickSound -= 7; + }; + Game.ClickCookie = function (e, amount) { + var now = Date.now(); + if (e) e.preventDefault(); + if ( + Game.OnAscend || + Game.AscendTimer > 0 || + Game.T < 3 || + now - Game.lastClick < 1000 / ((e ? e.detail : 1) === 0 ? 3 : 50) + ) { + } else { + if (now - Game.lastClick < 1000 / 15) { + Game.autoclickerDetected += Game.fps; + if (Game.autoclickerDetected >= Game.fps * 5) + Game.Win("Uncanny clicker"); + } + Game.loseShimmeringVeil("click"); + var amount = amount ? amount : Game.computedMouseCps; + Game.Earn(amount); + Game.handmadeCookies += amount; + if (Game.prefs.particles) { + Game.particleAdd(); + Game.particleAdd( + Game.mouseX, + Game.mouseY, + Math.random() * 4 - 2, + Math.random() * -2 - 2, + Math.random() * 0.5 + 0.75, + 1, + 2 + ); + } + if (Game.prefs.numbers) + Game.particleAdd( + Game.mouseX + Math.random() * 8 - 4, + Game.mouseY - 8 + Math.random() * 8 - 4, + 0, + -2, + 1, + 4, + 2, + "", + "+" + Beautify(amount, 1) + ); + + Game.runModHook("click"); + + Game.playCookieClickSound(); + Game.cookieClicks++; + + if (Game.clicksThisSession == 0) PlayCue("preplay"); + Game.clicksThisSession++; + Game.lastClick = now; + } + Game.Click = 0; + }; + Game.mouseX = 0; + Game.mouseY = 0; + Game.mouseX2 = 0; + Game.mouseY2 = 0; + Game.mouseMoved = 0; + Game.GetMouseCoords = function (e) { + var posx = 0; + var posy = 0; + if (!e) var e = window.event; + if (e.pageX || e.pageY) { + posx = e.pageX; + posy = e.pageY; + } else if (e.clientX || e.clientY) { + posx = + e.clientX + + document.body.scrollLeft + + document.documentElement.scrollLeft; + posy = + e.clientY + + document.body.scrollTop + + document.documentElement.scrollTop; + } + var x = 0; + var y = TopBarOffset; + /* + var el=l('sectionLeft'); + while(el && !isNaN(el.offsetLeft) && !isNaN(el.offsetTop)) + { + x+=el.offsetLeft-el.scrollLeft; + y+=el.offsetTop-el.scrollTop; + el=el.offsetParent; + }*/ + Game.mouseX2 = Game.mouseX; + Game.mouseY2 = Game.mouseY; + Game.mouseX = (posx - x) / Game.scale; + Game.mouseY = (posy - y) / Game.scale; + Game.mouseMoved = 1; + Game.lastActivity = Game.time; + }; + var bigCookie = l("bigCookie"); + if (Game.prefs.screenreader) { + bigCookie.ariaLabelledby = "bigCookieLabel"; + bigCookie.insertAdjacentHTML( + "beforeend", + '" + ); + bigCookie.tabIndex = 1; + } + Game.Click = 0; + Game.lastClickedEl = 0; + Game.clicksThisSession = 0; + Game.clickFrom = 0; + Game.Scroll = 0; + Game.mouseDown = 0; + if (!Game.touchEvents) { + AddEvent(bigCookie, "click", Game.ClickCookie); + AddEvent(bigCookie, "mousedown", function (event) { + Game.BigCookieState = 1; + if (Game.prefs.cookiesound) { + Game.playCookieClickSound(); + } + if (event) event.preventDefault(); + }); + AddEvent(bigCookie, "mouseup", function (event) { + Game.BigCookieState = 2; + if (event) event.preventDefault(); + }); + AddEvent(bigCookie, "mouseout", function (event) { + Game.BigCookieState = 0; + }); + AddEvent(bigCookie, "mouseover", function (event) { + Game.BigCookieState = 2; + }); + AddEvent(document, "mousemove", Game.GetMouseCoords); + AddEvent(document, "mousedown", function (event) { + Game.lastActivity = Game.time; + Game.mouseDown = 1; + Game.clickFrom = event.target; + }); + AddEvent(document, "mouseup", function (event) { + Game.lastActivity = Game.time; + Game.mouseDown = 0; + Game.clickFrom = 0; + }); + AddEvent(document, "click", function (event) { + Game.lastActivity = Game.time; + Game.Click = 1; + Game.lastClickedEl = event.target; + Game.clickFrom = 0; + }); + Game.handleScroll = function (e) { + if (!e) e = event; + Game.Scroll = e.detail < 0 || e.wheelDelta > 0 ? 1 : -1; + Game.lastActivity = Game.time; + }; + AddEvent(document, "DOMMouseScroll", Game.handleScroll); + AddEvent(document, "mousewheel", Game.handleScroll); + } else { + //touch events + AddEvent(bigCookie, "touchend", Game.ClickCookie); + AddEvent(bigCookie, "touchstart", function (event) { + Game.BigCookieState = 1; + if (event) event.preventDefault(); + }); + AddEvent(bigCookie, "touchend", function (event) { + Game.BigCookieState = 0; + if (event) event.preventDefault(); + }); + //AddEvent(document,'touchmove',Game.GetMouseCoords); + AddEvent(document, "mousemove", Game.GetMouseCoords); + AddEvent(document, "touchstart", function (event) { + Game.lastActivity = Game.time; + Game.mouseDown = 1; + }); + AddEvent(document, "touchend", function (event) { + Game.lastActivity = Game.time; + Game.mouseDown = 0; + }); + AddEvent(document, "touchend", function (event) { + Game.lastActivity = Game.time; + Game.Click = 1; + }); + } + + Game.keys = []; + AddEvent(window, "keyup", function (e) { + Game.lastActivity = Game.time; + if (e.keyCode == 27) { + if (Game.promptOn && !Game.promptNoClose) { + Game.ClosePrompt(); + PlaySound("snd/tickOff.mp3"); + } + if (Game.AscendTimer > 0) Game.AscendTimer = Game.AscendDuration; + } //esc closes prompt + if (Game.promptOn) { + if (e.keyCode == 13) Game.ConfirmPrompt(); //enter confirms prompt + } + Game.keys[e.keyCode] = 0; + }); + AddEvent(window, "keydown", function (e) { + if (Game.promptOn) { + if (e.keyCode == 9) { + //tab to shift through prompt buttons + if (e.shiftKey) Game.FocusPromptOption(-1); + else Game.FocusPromptOption(1); + e.preventDefault(); + } + } + if (!Game.OnAscend && Game.AscendTimer == 0) { + if (e.ctrlKey && e.keyCode == 83) { + Game.toSave = true; + e.preventDefault(); + } //ctrl-s saves the game + else if (e.ctrlKey && e.keyCode == 79) { + Game.ImportSave(); + e.preventDefault(); + } //ctrl-o opens the import menu + } + if ((e.keyCode == 16 || e.keyCode == 17) && Game.tooltip.dynamic) + Game.tooltip.update(); + Game.keys[e.keyCode] = 1; + if (e.keyCode == 9) Game.keys = []; //reset keys on tab press + }); + + AddEvent(window, "visibilitychange", function (e) { + Game.keys = []; //reset all key pressed on visibility change (should help prevent ctrl still being down after ctrl-tab) + }); + + /*===================================================================================== + CPS RECALCULATOR + =======================================================================================*/ + + Game.heavenlyPower = 1; //how many CpS percents a single heavenly chip gives + Game.recalculateGains = 1; + Game.cookiesPsByType = {}; + Game.cookiesMultByType = {}; + //display bars with http://codepen.io/anon/pen/waGyEJ + Game.effs = {}; + Game.eff = function (name, def) { + if (typeof Game.effs[name] === "undefined") + return typeof def === "undefined" ? 1 : def; + else return Game.effs[name]; + }; + + Game.CalculateGains = function () { + Game.cookiesPs = 0; + var mult = 1; + //add up effect bonuses from building minigames + var effs = {}; + for (var i in Game.Objects) { + if (Game.Objects[i].minigameLoaded && Game.Objects[i].minigame.effs) { + var myEffs = Game.Objects[i].minigame.effs; + for (var ii in myEffs) { + if (effs[ii]) effs[ii] *= myEffs[ii]; + else effs[ii] = myEffs[ii]; + } + } + } + Game.effs = effs; + + if (Game.ascensionMode != 1) + mult += + parseFloat(Game.prestige) * + 0.01 * + Game.heavenlyPower * + Game.GetHeavenlyMultiplier(); + + mult *= Game.eff("cps"); + + if (Game.Has("Heralds") && Game.ascensionMode != 1) + mult *= 1 + 0.01 * Game.heralds; + + for (var i in Game.cookieUpgrades) { + var me = Game.cookieUpgrades[i]; + if (Game.Has(me.name)) { + mult *= + 1 + + (typeof me.power === "function" ? me.power(me) : me.power) * 0.01; + } + } + + if (Game.Has("Specialized chocolate chips")) mult *= 1.01; + if (Game.Has("Designer cocoa beans")) mult *= 1.02; + if (Game.Has("Underworld ovens")) mult *= 1.03; + if (Game.Has("Exotic nuts")) mult *= 1.04; + if (Game.Has("Arcane sugar")) mult *= 1.05; + + if (Game.Has("Increased merriness")) mult *= 1.15; + if (Game.Has("Improved jolliness")) mult *= 1.15; + if (Game.Has("A lump of coal")) mult *= 1.01; + if (Game.Has("An itchy sweater")) mult *= 1.01; + if (Game.Has("Santa's dominion")) mult *= 1.2; + + if (Game.Has("Fortune #100")) mult *= 1.01; + if (Game.Has("Fortune #101")) mult *= 1.07; + + if (Game.Has("Dragon scale")) mult *= 1.03; + + var buildMult = 1; + if (Game.hasGod) { + var godLvl = Game.hasGod("asceticism"); + if (godLvl == 1) mult *= 1.15; + else if (godLvl == 2) mult *= 1.1; + else if (godLvl == 3) mult *= 1.05; + + var godLvl = Game.hasGod("ages"); + if (godLvl == 1) + mult *= + 1 + + 0.15 * Math.sin((Date.now() / 1000 / (60 * 60 * 3)) * Math.PI * 2); + else if (godLvl == 2) + mult *= + 1 + + 0.15 * Math.sin((Date.now() / 1000 / (60 * 60 * 12)) * Math.PI * 2); + else if (godLvl == 3) + mult *= + 1 + + 0.15 * Math.sin((Date.now() / 1000 / (60 * 60 * 24)) * Math.PI * 2); + + var godLvl = Game.hasGod("decadence"); + if (godLvl == 1) buildMult *= 0.93; + else if (godLvl == 2) buildMult *= 0.95; + else if (godLvl == 3) buildMult *= 0.98; + + var godLvl = Game.hasGod("industry"); + if (godLvl == 1) buildMult *= 1.1; + else if (godLvl == 2) buildMult *= 1.06; + else if (godLvl == 3) buildMult *= 1.03; + + var godLvl = Game.hasGod("labor"); + if (godLvl == 1) buildMult *= 0.97; + else if (godLvl == 2) buildMult *= 0.98; + else if (godLvl == 3) buildMult *= 0.99; + } + + if (Game.Has("Santa's legacy")) mult *= 1 + (Game.santaLevel + 1) * 0.03; + + Game.milkProgress = Game.AchievementsOwned / 25; + var milkMult = 1; + if (Game.Has("Santa's milk and cookies")) milkMult *= 1.05; + //if (Game.hasAura('Breath of Milk')) milkMult*=1.05; + milkMult *= 1 + Game.auraMult("Breath of Milk") * 0.05; + if (Game.hasGod) { + var godLvl = Game.hasGod("mother"); + if (godLvl == 1) milkMult *= 1.1; + else if (godLvl == 2) milkMult *= 1.05; + else if (godLvl == 3) milkMult *= 1.03; + } + milkMult *= Game.eff("milk"); + + var catMult = 1; + + if (Game.Has("Kitten helpers")) + catMult *= 1 + Game.milkProgress * 0.1 * milkMult; + if (Game.Has("Kitten workers")) + catMult *= 1 + Game.milkProgress * 0.125 * milkMult; + if (Game.Has("Kitten engineers")) + catMult *= 1 + Game.milkProgress * 0.15 * milkMult; + if (Game.Has("Kitten overseers")) + catMult *= 1 + Game.milkProgress * 0.175 * milkMult; + if (Game.Has("Kitten managers")) + catMult *= 1 + Game.milkProgress * 0.2 * milkMult; + if (Game.Has("Kitten accountants")) + catMult *= 1 + Game.milkProgress * 0.2 * milkMult; + if (Game.Has("Kitten specialists")) + catMult *= 1 + Game.milkProgress * 0.2 * milkMult; + if (Game.Has("Kitten experts")) + catMult *= 1 + Game.milkProgress * 0.2 * milkMult; + if (Game.Has("Kitten consultants")) + catMult *= 1 + Game.milkProgress * 0.2 * milkMult; + if (Game.Has("Kitten assistants to the regional manager")) + catMult *= 1 + Game.milkProgress * 0.175 * milkMult; + if (Game.Has("Kitten marketeers")) + catMult *= 1 + Game.milkProgress * 0.15 * milkMult; + if (Game.Has("Kitten analysts")) + catMult *= 1 + Game.milkProgress * 0.125 * milkMult; + if (Game.Has("Kitten executives")) + catMult *= 1 + Game.milkProgress * 0.115 * milkMult; + if (Game.Has("Kitten admins")) + catMult *= 1 + Game.milkProgress * 0.11 * milkMult; + if (Game.Has("Kitten angels")) + catMult *= 1 + Game.milkProgress * 0.1 * milkMult; + if (Game.Has("Fortune #103")) + catMult *= 1 + Game.milkProgress * 0.05 * milkMult; + + Game.cookiesMultByType["kittens"] = catMult; + + for (var i in Game.Objects) { + var me = Game.Objects[i]; + me.storedCps = me.cps(me); + if (Game.ascensionMode != 1) + me.storedCps *= (1 + me.level * 0.01) * buildMult; + if ( + me.id == 1 && + Game.Has("Milkhelp® lactose intolerance relief tablets") + ) + me.storedCps *= 1 + 0.05 * Game.milkProgress * milkMult; //this used to be "me.storedCps*=1+0.1*Math.pow(catMult-1,0.5)" which was. hmm + me.storedTotalCps = me.amount * me.storedCps; + Game.cookiesPs += me.storedTotalCps; + Game.cookiesPsByType[me.name] = me.storedTotalCps; + } + //cps from buildings only + Game.buildingCps = Game.cookiesPs; + + if (Game.Has('"egg"')) { + Game.cookiesPs += 9; + Game.cookiesPsByType['"egg"'] = 9; + } //"egg" + + mult *= catMult; + + var eggMult = 1; + if (Game.Has("Chicken egg")) eggMult *= 1.01; + if (Game.Has("Duck egg")) eggMult *= 1.01; + if (Game.Has("Turkey egg")) eggMult *= 1.01; + if (Game.Has("Quail egg")) eggMult *= 1.01; + if (Game.Has("Robin egg")) eggMult *= 1.01; + if (Game.Has("Ostrich egg")) eggMult *= 1.01; + if (Game.Has("Cassowary egg")) eggMult *= 1.01; + if (Game.Has("Salmon roe")) eggMult *= 1.01; + if (Game.Has("Frogspawn")) eggMult *= 1.01; + if (Game.Has("Shark egg")) eggMult *= 1.01; + if (Game.Has("Turtle egg")) eggMult *= 1.01; + if (Game.Has("Ant larva")) eggMult *= 1.01; + if (Game.Has("Century egg")) { + //the boost increases a little every day, with diminishing returns up to +10% on the 100th day + var day = + (Math.floor((Date.now() - Game.startDate) / 1000 / 10) * 10) / + 60 / + 60 / + 24; + day = Math.min(day, 100); + eggMult *= 1 + (1 - Math.pow(1 - day / 100, 3)) * 0.1; + } + + Game.cookiesMultByType["eggs"] = eggMult; + mult *= eggMult; + + if (Game.Has("Sugar baking")) + mult *= 1 + Math.min(100, Game.lumps) * 0.01; + + //if (Game.hasAura('Radiant Appetite')) mult*=2; + mult *= 1 + Game.auraMult("Radiant Appetite"); + + var rawCookiesPs = Game.cookiesPs * mult; + for (var i in Game.CpsAchievements) { + if (rawCookiesPs >= Game.CpsAchievements[i].threshold) + Game.Win(Game.CpsAchievements[i].name); + } + Game.cookiesPsRaw = rawCookiesPs; + Game.cookiesPsRawHighest = Math.max( + Game.cookiesPsRawHighest, + rawCookiesPs + ); + + var n = Game.shimmerTypes["golden"].n; + var auraMult = Game.auraMult("Dragon's Fortune"); + for (var i = 0; i < n; i++) { + mult *= 1 + auraMult * 1.23; + } + + name = Game.bakeryName.toLowerCase(); + if (name == "orteil") mult *= 0.99; + else if (name == "ortiel") mult *= 0.98; //or so help me + + var sucking = 0; + for (var i in Game.wrinklers) { + if (Game.wrinklers[i].phase == 2) { + sucking++; + } + } + var suckRate = 1 / 20; //each wrinkler eats a twentieth of your CpS + suckRate *= Game.eff("wrinklerEat"); + + Game.cpsSucked = sucking * suckRate; + + if (Game.Has("Elder Covenant")) mult *= 0.95; + + if (Game.Has("Golden switch [off]")) { + var goldenSwitchMult = 1.5; + if (Game.Has("Residual luck")) { + var upgrades = Game.goldenCookieUpgrades; + for (var i in upgrades) { + if (Game.Has(upgrades[i])) goldenSwitchMult += 0.1; + } + } + mult *= goldenSwitchMult; + } + if (Game.Has("Shimmering veil [off]")) { + mult *= 1 + Game.getVeilBoost(); + } + if (Game.Has("Magic shenanigans")) mult *= 1000; + if (Game.Has("Occult obstruction")) mult *= 0; + + Game.cookiesPs = Game.runModHookOnValue("cps", Game.cookiesPs); + + //cps without golden cookie effects + Game.unbuffedCps = Game.cookiesPs * mult; + + for (var i in Game.buffs) { + if (typeof Game.buffs[i].multCpS !== "undefined") + mult *= Game.buffs[i].multCpS; + } + + Game.globalCpsMult = mult; + Game.cookiesPs *= Game.globalCpsMult; + + //if (Game.hasBuff('Cursed finger')) Game.cookiesPs=0; + + Game.computedMouseCps = Game.mouseCps(); + + Game.computeLumpTimes(); + + Game.recalculateGains = 0; + }; + + Game.dropRateMult = function () { + var rate = 1; + if (Game.Has("Green yeast digestives")) rate *= 1.03; + if (Game.Has("Dragon teddy bear")) rate *= 1.03; + rate *= Game.eff("itemDrops"); + //if (Game.hasAura('Mind Over Matter')) rate*=1.25; + rate *= 1 + Game.auraMult("Mind Over Matter") * 0.25; + if (Game.Has("Santa's bottomless bag")) rate *= 1.1; + if ( + Game.Has("Cosmic beginner's luck") && + !Game.Has("Heavenly chip secret") + ) + rate *= 5; + return rate; + }; + /*===================================================================================== + SHIMMERS (GOLDEN COOKIES & SUCH) + =======================================================================================*/ + Game.shimmersL = l("shimmers"); + Game.shimmers = []; //all shimmers currently on the screen + Game.shimmersN = Math.floor(Math.random() * 10000); + Game.shimmer = function (type, obj, noCount) { + this.type = type; + + this.l = document.createElement("div"); + this.l.className = "shimmer"; + if (!Game.touchEvents) { + AddEvent( + this.l, + "click", + (function (what) { + return function (event) { + what.pop(event); + }; + })(this) + ); + } else { + AddEvent( + this.l, + "touchend", + (function (what) { + return function (event) { + what.pop(event); + }; + })(this) + ); + } //touch events + + this.x = 0; + this.y = 0; + this.id = Game.shimmersN; + + this.force = ""; + this.forceObj = obj || 0; + if (this.forceObj.type) this.force = this.forceObj.type; + this.noCount = noCount; + if (!this.noCount) { + Game.shimmerTypes[this.type].n++; + Game.recalculateGains = 1; + } + + this.init(); + + Game.shimmersL.appendChild(this.l); + Game.shimmers.push(this); + Game.shimmersN++; + }; + Game.shimmer.prototype.init = + function () //executed when the shimmer is created + { + Game.shimmerTypes[this.type].initFunc(this); + }; + Game.shimmer.prototype.update = function () //executed every frame + { + Game.shimmerTypes[this.type].updateFunc(this); + }; + Game.shimmer.prototype.pop = function ( + event //executed when the shimmer is popped by the player + ) { + if (event) event.preventDefault(); + Game.loseShimmeringVeil("shimmer"); + Game.Click = 0; + Game.shimmerTypes[this.type].popFunc(this); + }; + Game.shimmer.prototype.die = + function () //executed after the shimmer disappears (from old age or popping) + { + if (Game.shimmerTypes[this.type].spawnsOnTimer && this.spawnLead) { + //if this was the spawn lead for this shimmer type, set the shimmer type's "spawned" to 0 and restart its spawn timer + var type = Game.shimmerTypes[this.type]; + type.time = 0; + type.spawned = 0; + type.minTime = type.getMinTime(this); + type.maxTime = type.getMaxTime(this); + } + Game.shimmersL.removeChild(this.l); + if (Game.shimmers.indexOf(this) != -1) + Game.shimmers.splice(Game.shimmers.indexOf(this), 1); + if (!this.noCount) { + Game.shimmerTypes[this.type].n = Math.max( + 0, + Game.shimmerTypes[this.type].n - 1 + ); + Game.recalculateGains = 1; + } + }; + + Game.updateShimmers = + function () //run shimmer functions, kill overtimed shimmers and spawn new ones + { + for (var i in Game.shimmers) { + Game.shimmers[i].update(); + } + + //cookie storm! + if (Game.hasBuff("Cookie storm") && Math.random() < 0.5) { + var newShimmer = new Game.shimmer( + "golden", + { type: "cookie storm drop" }, + 1 + ); + newShimmer.dur = Math.ceil(Math.random() * 4 + 1); + newShimmer.life = Math.ceil(Game.fps * newShimmer.dur); + //newShimmer.force='cookie storm drop'; + newShimmer.sizeMult = Math.random() * 0.75 + 0.25; + } + + //spawn shimmers + for (var i in Game.shimmerTypes) { + var me = Game.shimmerTypes[i]; + if (me.spawnsOnTimer && me.spawnConditions()) { + //only run on shimmer types that work on a timer + if (!me.spawned) { + //no shimmer spawned for this type? check the timer and try to spawn one + me.time++; + if ( + Math.random() < + Math.pow( + Math.max( + 0, + (me.time - me.minTime) / (me.maxTime - me.minTime) + ), + 5 + ) + ) { + var newShimmer = new Game.shimmer(i); + newShimmer.spawnLead = 1; + if ( + Game.Has("Distilled essence of redoubled luck") && + Math.random() < 0.01 + ) + var newShimmer = new Game.shimmer(i); + me.spawned = 1; + } + } + } + } + }; + Game.killShimmers = + function () //stop and delete all shimmers (used on resetting etc) + { + for (var i = Game.shimmers.length - 1; i >= 0; i--) { + Game.shimmers[i].die(); + } + for (var i in Game.shimmerTypes) { + var me = Game.shimmerTypes[i]; + if (me.reset) me.reset(); + me.n = 0; + if (me.spawnsOnTimer) { + me.time = 0; + me.spawned = 0; + me.minTime = me.getMinTime(me); + me.maxTime = me.getMaxTime(me); + } + } + }; + + Game.shimmerTypes = { + //in these, "me" refers to the shimmer itself, and "this" to the shimmer's type object + golden: { + reset: function () { + this.chain = 0; + this.totalFromChain = 0; + this.last = ""; + }, + initFunc: function (me) { + if ( + !this.spawned && + me.force != "cookie storm drop" && + Game.chimeType != 0 && + Game.ascensionMode != 1 + ) + Game.playGoldenCookieChime(); + + //set image + var bgPic = "img/goldCookie.png"; + var picX = 0; + var picY = 0; + + if ( + (!me.forceObj || !me.forceObj.noWrath) && + ((me.forceObj && me.forceObj.wrath) || + (Game.elderWrath == 1 && Math.random() < 1 / 3) || + (Game.elderWrath == 2 && Math.random() < 2 / 3) || + Game.elderWrath == 3 || + (Game.hasGod && Game.hasGod("scorn"))) + ) { + me.wrath = 1; + if (Game.season == "halloween") bgPic = "img/spookyCookie.png"; + else bgPic = "img/wrathCookie.png"; + } else { + me.wrath = 0; + } + + if (Game.season == "valentines") { + bgPic = "img/hearts.png"; + picX = Math.floor(Math.random() * 8); + } else if (Game.season == "fools") { + bgPic = "img/contract.png"; + if (me.wrath) bgPic = "img/wrathContract.png"; + } else if (Game.season == "easter") { + bgPic = "img/bunnies.png"; + picX = Math.floor(Math.random() * 4); + picY = 0; + if (me.wrath) picY = 1; + } + + me.x = + Math.floor( + Math.random() * + Math.max(0, Game.bounds.right - 300 - Game.bounds.left - 128) + + Game.bounds.left + + 64 + ) - 64; + me.y = + Math.floor( + Math.random() * + Math.max(0, Game.bounds.bottom - Game.bounds.top - 128) + + Game.bounds.top + + 64 + ) - 64; + me.l.style.left = me.x + "px"; + me.l.style.top = me.y + "px"; + me.l.style.width = "96px"; + me.l.style.height = "96px"; + me.l.style.backgroundImage = "url(" + bgPic + ")"; + me.l.style.backgroundPosition = + -picX * 96 + "px " + -picY * 96 + "px"; + me.l.style.opacity = "0"; + me.l.style.display = "block"; + me.l.setAttribute( + "alt", + loc(me.wrath ? "Wrath cookie" : "Golden cookie") + ); + + me.life = 1; //the cookie's current progression through its lifespan (in frames) + me.dur = 13; //duration; the cookie's lifespan in seconds before it despawns + + var dur = 13; + if (Game.Has("Lucky day")) dur *= 2; + if (Game.Has("Serendipity")) dur *= 2; + if (Game.Has("Decisive fate")) dur *= 1.05; + if (Game.Has("Lucky digit")) dur *= 1.01; + if (Game.Has("Lucky number")) dur *= 1.01; + if (Game.Has("Lucky payout")) dur *= 1.01; + if (!me.wrath) dur *= Game.eff("goldenCookieDur"); + else dur *= Game.eff("wrathCookieDur"); + dur *= Math.pow(0.95, Game.shimmerTypes["golden"].n - 1); //5% shorter for every other golden cookie on the screen + if (this.chain > 0) dur = Math.max(2, 10 / this.chain); //this is hilarious + me.dur = dur; + me.life = Math.ceil(Game.fps * me.dur); + me.sizeMult = 1; + }, + updateFunc: function (me) { + var curve = 1 - Math.pow((me.life / (Game.fps * me.dur)) * 2 - 1, 4); + me.l.style.opacity = curve; + //this line makes each golden cookie pulse in a unique way + if (Game.prefs.fancy) + me.l.style.transform = + "rotate(" + + (Math.sin(me.id * 0.69) * 24 + + Math.sin( + Game.T * (0.35 + Math.sin(me.id * 0.97) * 0.15) + + me.id /*+Math.sin(Game.T*0.07)*2+2*/ + ) * + (3 + Math.sin(me.id * 0.36) * 2)) + + "deg) scale(" + + me.sizeMult * + (1 + Math.sin(me.id * 0.53) * 0.2) * + curve * + (1 + + (0.06 + Math.sin(me.id * 0.41) * 0.05) * + Math.sin( + Game.T * (0.25 + Math.sin(me.id * 0.73) * 0.15) + me.id + )) + + ")"; + me.life--; + if (me.life <= 0) { + this.missFunc(me); + me.die(); + } + }, + popFunc: function (me) { + //get achievs and stats + if (me.spawnLead) { + Game.goldenClicks++; + Game.goldenClicksLocal++; + + if (Game.goldenClicks >= 1) Game.Win("Golden cookie"); + if (Game.goldenClicks >= 7) Game.Win("Lucky cookie"); + if (Game.goldenClicks >= 27) Game.Win("A stroke of luck"); + if (Game.goldenClicks >= 77) Game.Win("Fortune"); + if (Game.goldenClicks >= 777) Game.Win("Leprechaun"); + if (Game.goldenClicks >= 7777) Game.Win("Black cat's paw"); + if (Game.goldenClicks >= 27777) Game.Win("Seven horseshoes"); + + if (Game.goldenClicks >= 7) Game.Unlock("Lucky day"); + if (Game.goldenClicks >= 27) Game.Unlock("Serendipity"); + if (Game.goldenClicks >= 77) Game.Unlock("Get lucky"); + + if (me.life / Game.fps > me.dur - 1) Game.Win("Early bird"); + if (me.life < Game.fps) Game.Win("Fading luck"); + } + + if (Game.forceUnslotGod) { + if (Game.forceUnslotGod("asceticism")) Game.useSwap(1000000); + } + + //select an effect + var list = []; + if (me.wrath > 0) + list.push("clot", "multiply cookies", "ruin cookies"); + else list.push("frenzy", "multiply cookies"); + if (me.wrath > 0 && Game.hasGod && Game.hasGod("scorn")) + list.push("clot", "ruin cookies", "clot", "ruin cookies"); + if (me.wrath > 0 && Math.random() < 0.3) + list.push("blood frenzy", "chain cookie", "cookie storm"); + else if (Math.random() < 0.03 && Game.cookiesEarned >= 100000) + list.push("chain cookie", "cookie storm"); + if (Math.random() < 0.05 && Game.season == "fools") + list.push("everything must go"); + if ( + Math.random() < 0.1 && + (Math.random() < 0.05 || !Game.hasBuff("Dragonflight")) + ) + list.push("click frenzy"); + if (me.wrath && Math.random() < 0.1) list.push("cursed finger"); + + if (Game.BuildingsOwned >= 10 && Math.random() < 0.25) + list.push("building special"); + + if (Game.canLumps() && Math.random() < 0.0005) + list.push("free sugar lump"); + + if ((me.wrath == 0 && Math.random() < 0.15) || Math.random() < 0.05) { + //if (Game.hasAura('Reaper of Fields')) list.push('dragon harvest'); + if (Math.random() < Game.auraMult("Reaper of Fields")) + list.push("dragon harvest"); + //if (Game.hasAura('Dragonflight')) list.push('dragonflight'); + if (Math.random() < Game.auraMult("Dragonflight")) + list.push("dragonflight"); + } + + if ( + this.last != "" && + Math.random() < 0.8 && + list.indexOf(this.last) != -1 + ) + list.splice(list.indexOf(this.last), 1); //80% chance to force a different one + if (Math.random() < 0.0001) list.push("blab"); + var choice = choose(list); + + if (this.chain > 0) choice = "chain cookie"; + if (me.force != "") { + this.chain = 0; + choice = me.force; + me.force = ""; + } + if (choice != "chain cookie") this.chain = 0; + + this.last = choice; + + //create buff for effect + //buff duration multiplier + var effectDurMod = 1; + if (Game.Has("Get lucky")) effectDurMod *= 2; + if (Game.Has("Lasting fortune")) effectDurMod *= 1.1; + if (Game.Has("Lucky digit")) effectDurMod *= 1.01; + if (Game.Has("Lucky number")) effectDurMod *= 1.01; + if (Game.Has("Green yeast digestives")) effectDurMod *= 1.01; + if (Game.Has("Lucky payout")) effectDurMod *= 1.01; + //if (Game.hasAura('Epoch Manipulator')) effectDurMod*=1.05; + effectDurMod *= 1 + Game.auraMult("Epoch Manipulator") * 0.05; + if (!me.wrath) effectDurMod *= Game.eff("goldenCookieEffDur"); + else effectDurMod *= Game.eff("wrathCookieEffDur"); + + if (Game.hasGod) { + var godLvl = Game.hasGod("decadence"); + if (godLvl == 1) effectDurMod *= 1.07; + else if (godLvl == 2) effectDurMod *= 1.05; + else if (godLvl == 3) effectDurMod *= 1.02; + } + + //effect multiplier (from lucky etc) + var mult = 1; + //if (me.wrath>0 && Game.hasAura('Unholy Dominion')) mult*=1.1; + //else if (me.wrath==0 && Game.hasAura('Ancestral Metamorphosis')) mult*=1.1; + if (me.wrath > 0) mult *= 1 + Game.auraMult("Unholy Dominion") * 0.1; + else if (me.wrath == 0) + mult *= 1 + Game.auraMult("Ancestral Metamorphosis") * 0.1; + if (Game.Has("Green yeast digestives")) mult *= 1.01; + if (Game.Has("Dragon fang")) mult *= 1.03; + if (!me.wrath) mult *= Game.eff("goldenCookieGain"); + else mult *= Game.eff("wrathCookieGain"); + + var popup = ""; + var buff = 0; + + if (choice == "building special") { + var time = Math.ceil(30 * effectDurMod); + var list = []; + for (var i in Game.Objects) { + if (Game.Objects[i].amount >= 10) list.push(Game.Objects[i].id); + } + if (list.length == 0) { + choice = "frenzy"; + } //default to frenzy if no proper building + else { + var obj = choose(list); + var pow = Game.ObjectsById[obj].amount / 10 + 1; + if (me.wrath && Math.random() < 0.3) { + buff = Game.gainBuff("building debuff", time, pow, obj); + } else { + buff = Game.gainBuff("building buff", time, pow, obj); + } + } + } + + if (choice == "free sugar lump") { + Game.gainLumps(1); + popup = loc("Sweet!
Found 1 sugar lump!"); + } else if (choice == "frenzy") { + buff = Game.gainBuff("frenzy", Math.ceil(77 * effectDurMod), 7); + } else if (choice == "dragon harvest") { + buff = Game.gainBuff( + "dragon harvest", + Math.ceil(60 * effectDurMod), + 15 + ); + } else if (choice == "everything must go") { + buff = Game.gainBuff( + "everything must go", + Math.ceil(8 * effectDurMod), + 5 + ); + } else if (choice == "multiply cookies") { + var moni = + mult * Math.min(Game.cookies * 0.15, Game.cookiesPs * 60 * 15) + + 13; //add 15% to cookies owned (+13), or 15 minutes of cookie production - whichever is lowest + Game.Earn(moni); + popup = + loc("Lucky!") + + "
" + + loc("+%1!", loc("%1 cookie", LBeautify(moni))) + + ""; + } else if (choice == "ruin cookies") { + var moni = + Math.min(Game.cookies * 0.05, Game.cookiesPs * 60 * 10) + 13; //lose 5% of cookies owned (-13), or 10 minutes of cookie production - whichever is lowest + moni = Math.min(Game.cookies, moni); + Game.Spend(moni); + popup = + loc("Ruin!") + + "
" + + loc("Lost %1!", loc("%1 cookie", LBeautify(moni))) + + ""; + } else if (choice == "blood frenzy") { + buff = Game.gainBuff( + "blood frenzy", + Math.ceil(6 * effectDurMod), + 666 + ); + } else if (choice == "clot") { + buff = Game.gainBuff("clot", Math.ceil(66 * effectDurMod), 0.5); + } else if (choice == "cursed finger") { + buff = Game.gainBuff( + "cursed finger", + Math.ceil(10 * effectDurMod), + Game.cookiesPs * Math.ceil(10 * effectDurMod) + ); + } else if (choice == "click frenzy") { + buff = Game.gainBuff( + "click frenzy", + Math.ceil(13 * effectDurMod), + 777 + ); + } else if (choice == "dragonflight") { + buff = Game.gainBuff( + "dragonflight", + Math.ceil(10 * effectDurMod), + 1111 + ); + if (Math.random() < 0.8) Game.killBuff("Click frenzy"); + } else if (choice == "chain cookie") { + //fix by Icehawk78 + if (this.chain == 0) this.totalFromChain = 0; + this.chain++; + var digit = me.wrath ? 6 : 7; + if (this.chain == 1) + this.chain += Math.max( + 0, + Math.ceil(Math.log(Game.cookies) / Math.LN10) - 10 + ); + + var maxPayout = + Math.min(Game.cookiesPs * 60 * 60 * 6, Game.cookies * 0.5) * mult; + var moni = Math.max( + digit, + Math.min( + Math.floor((1 / 9) * Math.pow(10, this.chain) * digit * mult), + maxPayout + ) + ); + var nextMoni = Math.max( + digit, + Math.min( + Math.floor( + (1 / 9) * Math.pow(10, this.chain + 1) * digit * mult + ), + maxPayout + ) + ); + this.totalFromChain += moni; + + //break the chain if we're above 5 digits AND it's more than 50% of our bank, it grants more than 6 hours of our CpS, or just a 1% chance each digit (update : removed digit limit) + if (Math.random() < 0.01 || nextMoni >= maxPayout) { + this.chain = 0; + popup = + loc("Cookie chain") + + "
" + + loc("+%1!", loc("%1 cookie", LBeautify(moni))) + + "
" + + loc( + "Cookie chain over. You made %1.", + loc("%1 cookie", LBeautify(this.totalFromChain)) + ) + + "
"; + } else { + popup = + loc("Cookie chain") + + "
" + + loc("+%1!", loc("%1 cookie", LBeautify(moni))) + + ""; + } + Game.Earn(moni); + } else if (choice == "cookie storm") { + buff = Game.gainBuff( + "cookie storm", + Math.ceil(7 * effectDurMod), + 7 + ); + } else if (choice == "cookie storm drop") { + var moni = Math.max( + mult * (Game.cookiesPs * 60 * Math.floor(Math.random() * 7 + 1)), + Math.floor(Math.random() * 7 + 1) + ); //either 1-7 cookies or 1-7 minutes of cookie production, whichever is highest + Game.Earn(moni); + popup = + '
' + + loc("+%1!", loc("%1 cookie", LBeautify(moni))) + + "
"; + } else if (choice == "blab") { + //sorry (it's really rare) + var str = EN + ? choose([ + "Cookie crumbliness x3 for 60 seconds!", + "Chocolatiness x7 for 77 seconds!", + "Dough elasticity halved for 66 seconds!", + "Golden cookie shininess doubled for 3 seconds!", + "World economy halved for 30 seconds!", + "Grandma kisses 23% stingier for 45 seconds!", + "Thanks for clicking!", + "Fooled you! This one was just a test.", + "Golden cookies clicked +1!", + "Your click has been registered. Thank you for your cooperation.", + "Thanks! That hit the spot!", + "Thank you. A team has been dispatched.", + "They know.", + "Oops. This was just a chocolate cookie with shiny aluminium foil.", + "Eschaton immanentized!", + "Oh, that tickled!", + "Again.", + "You've made a grave mistake.", + "Chocolate chips reshuffled!", + "Randomized chance card outcome!", + "Mouse acceleration +0.03%!", + "Ascension bonuses x5,000 for 0.1 seconds!", + "Gained 1 extra!", + "Sorry, better luck next time!", + "I felt that.", + "Nice try, but no.", + "Wait, sorry, I wasn't ready yet.", + "Yippee!", + "Bones removed.", + "Organs added.", + "Did you just click that?", + "Huh? Oh, there was nothing there.", + "You saw nothing.", + "It seems you hallucinated that golden cookie.", + "This golden cookie was a complete fabrication.", + "In theory there's no wrong way to click a golden cookie, but you just did that, somehow.", + "All cookies multiplied by 999!
All cookies divided by 999!", + "Why?", + ]) + : choose(loc("Cookie blab")); + popup = str; + } + + if (popup == "" && buff && buff.name && buff.desc) + popup = + buff.dname + + '
' + + buff.desc + + "
"; + if (popup != "") Game.Popup(popup, me.x + me.l.offsetWidth / 2, me.y); + + Game.DropEgg(0.9); + + //sparkle and kill the shimmer + Game.SparkleAt(me.x + 48, me.y + 48); + if (choice == "cookie storm drop") { + if (Game.prefs.cookiesound) + PlaySound( + "snd/clickb" + Math.floor(Math.random() * 7 + 1) + ".mp3", + 0.75 + ); + else + PlaySound( + "snd/click" + Math.floor(Math.random() * 7 + 1) + ".mp3", + 0.75 + ); + } else PlaySound("snd/shimmerClick.mp3"); + me.die(); + }, + missFunc: function (me) { + if (this.chain > 0 && this.totalFromChain > 0) { + Game.Popup( + loc( + "Cookie chain broken.
You made %1.", + loc("%1 cookie", LBeautify(this.totalFromChain)) + ), + me.x + me.l.offsetWidth / 2, + me.y + ); + this.chain = 0; + this.totalFromChain = 0; + } + if (me.spawnLead) Game.missedGoldenClicks++; + }, + spawnsOnTimer: true, + spawnConditions: function () { + if (!Game.Has("Golden switch [off]")) return true; + else return false; + }, + spawned: 0, + time: 0, + minTime: 0, + maxTime: 0, + getTimeMod: function (me, m) { + if (Game.Has("Lucky day")) m /= 2; + if (Game.Has("Serendipity")) m /= 2; + if (Game.Has("Golden goose egg")) m *= 0.95; + if (Game.Has("Heavenly luck")) m *= 0.95; + if (Game.Has("Green yeast digestives")) m *= 0.99; + //if (Game.hasAura('Arcane Aura')) m*=0.95; + m *= 1 - Game.auraMult("Arcane Aura") * 0.05; + if (Game.hasBuff("Sugar blessing")) m *= 0.9; + if (Game.season == "easter" && Game.Has("Starspawn")) m *= 0.98; + else if (Game.season == "halloween" && Game.Has("Starterror")) + m *= 0.98; + else if (Game.season == "valentines" && Game.Has("Starlove")) + m *= 0.98; + else if (Game.season == "fools" && Game.Has("Startrade")) m *= 0.95; + if (!me.wrath) m *= 1 / Game.eff("goldenCookieFreq"); + else m *= 1 / Game.eff("wrathCookieFreq"); + if (Game.hasGod) { + var godLvl = Game.hasGod("industry"); + if (godLvl == 1) m *= 1.1; + else if (godLvl == 2) m *= 1.06; + else if (godLvl == 3) m *= 1.03; + var godLvl = Game.hasGod("mother"); + if (godLvl == 1) m *= 1.15; + else if (godLvl == 2) m *= 1.1; + else if (godLvl == 3) m *= 1.05; + + if (Game.season != "") { + var godLvl = Game.hasGod("seasons"); + if (Game.season != "fools") { + if (godLvl == 1) m *= 0.97; + else if (godLvl == 2) m *= 0.98; + else if (godLvl == 3) m *= 0.99; + } else { + if (godLvl == 1) m *= 0.955; + else if (godLvl == 2) m *= 0.97; + else if (godLvl == 3) m *= 0.985; + } + } + } + if (this.chain > 0) m = 0.05; + if (Game.Has("Gold hoard")) m = 0.01; + return Math.ceil(Game.fps * 60 * m); + }, + getMinTime: function (me) { + var m = 5; + return this.getTimeMod(me, m); + }, + getMaxTime: function (me) { + var m = 15; + return this.getTimeMod(me, m); + }, + last: "", + }, + reindeer: { + reset: function () {}, + initFunc: function (me) { + if (!this.spawned && Game.chimeType != 0 && Game.ascensionMode != 1) + PlaySound("snd/jingle.mp3"); + + me.x = -128; + me.y = + Math.floor( + Math.random() * + Math.max(0, Game.bounds.bottom - Game.bounds.top - 256) + + Game.bounds.top + + 128 + ) - 128; + //me.l.style.left=me.x+'px'; + //me.l.style.top=me.y+'px'; + me.l.style.width = "167px"; + me.l.style.height = "212px"; + me.l.style.backgroundImage = "url(img/frostedReindeer.png)"; + me.l.style.opacity = "0"; + //me.l.style.transform='rotate('+(Math.random()*60-30)+'deg) scale('+(Math.random()*1+0.25)+')'; + me.l.style.display = "block"; + me.l.setAttribute("alt", loc("Reindeer")); + + me.life = 1; //the reindeer's current progression through its lifespan (in frames) + me.dur = 4; //duration; the cookie's lifespan in seconds before it despawns + + var dur = 4; + if (Game.Has("Weighted sleighs")) dur *= 2; + dur *= Game.eff("reindeerDur"); + me.dur = dur; + me.life = Math.ceil(Game.fps * me.dur); + me.sizeMult = 1; + }, + updateFunc: function (me) { + var curve = 1 - Math.pow((me.life / (Game.fps * me.dur)) * 2 - 1, 12); + me.l.style.opacity = curve; + me.l.style.transform = + "translate(" + + (me.x + + (Game.bounds.right - Game.bounds.left) * + (1 - me.life / (Game.fps * me.dur))) + + "px," + + (me.y - Math.abs(Math.sin(me.life * 0.1)) * 128) + + "px) rotate(" + + Math.sin(me.life * 0.2 + 0.3) * 10 + + "deg) scale(" + + me.sizeMult * (1 + Math.sin(me.id * 0.53) * 0.1) + + ")"; + me.life--; + if (me.life <= 0) { + this.missFunc(me); + me.die(); + } + }, + popFunc: function (me) { + //get achievs and stats + if (me.spawnLead) { + Game.reindeerClicked++; + } + + var val = Game.cookiesPs * 60; + if (Game.hasBuff("Elder frenzy")) val *= 0.5; //very sorry + if (Game.hasBuff("Frenzy")) val *= 0.75; //I sincerely apologize + var moni = Math.max(25, val); //1 minute of cookie production, or 25 cookies - whichever is highest + if (Game.Has("Ho ho ho-flavored frosting")) moni *= 2; + moni *= Game.eff("reindeerGain"); + Game.Earn(moni); + if (Game.hasBuff("Elder frenzy")) Game.Win("Eldeer"); + + var cookie = ""; + var failRate = 0.8; + if (Game.HasAchiev("Let it snow")) failRate = 0.6; + failRate *= 1 / Game.dropRateMult(); + if (Game.Has("Starsnow")) failRate *= 0.95; + if (Game.hasGod) { + var godLvl = Game.hasGod("seasons"); + if (godLvl == 1) failRate *= 0.9; + else if (godLvl == 2) failRate *= 0.95; + else if (godLvl == 3) failRate *= 0.97; + } + if (Math.random() > failRate) { + //christmas cookie drops + cookie = choose([ + "Christmas tree biscuits", + "Snowflake biscuits", + "Snowman biscuits", + "Holly biscuits", + "Candy cane biscuits", + "Bell biscuits", + "Present biscuits", + ]); + if (!Game.HasUnlocked(cookie) && !Game.Has(cookie)) { + Game.Unlock(cookie); + } else cookie = ""; + } + + var popup = ""; + + Game.Notify( + loc("You found %1!", choose(loc("Reindeer names"))), + loc( + "The reindeer gives you %1.", + loc("%1 cookie", LBeautify(moni)) + ) + + (cookie == "" + ? "" + : "
" + + loc( + "You are also rewarded with %1!", + Game.Upgrades[cookie].dname + )), + [12, 9], + 6 + ); + popup = + '
' + + loc("+%1!", loc("%1 cookie", LBeautify(moni))) + + "
"; + + if (popup != "") Game.Popup(popup, Game.mouseX, Game.mouseY); + + //sparkle and kill the shimmer + Game.SparkleAt(Game.mouseX, Game.mouseY); + PlaySound("snd/jingleClick.mp3"); + me.die(); + }, + missFunc: function (me) {}, + spawnsOnTimer: true, + spawnConditions: function () { + if (Game.season == "christmas") return true; + else return false; + }, + spawned: 0, + time: 0, + minTime: 0, + maxTime: 0, + getTimeMod: function (me, m) { + if (Game.Has("Reindeer baking grounds")) m /= 2; + if (Game.Has("Starsnow")) m *= 0.95; + if (Game.hasGod) { + var godLvl = Game.hasGod("seasons"); + if (godLvl == 1) m *= 0.9; + else if (godLvl == 2) m *= 0.95; + else if (godLvl == 3) m *= 0.97; + } + m *= 1 / Game.eff("reindeerFreq"); + if (Game.Has("Reindeer season")) m = 0.01; + return Math.ceil(Game.fps * 60 * m); + }, + getMinTime: function (me) { + var m = 3; + return this.getTimeMod(me, m); + }, + getMaxTime: function (me) { + var m = 6; + return this.getTimeMod(me, m); + }, + }, + }; + + Game.goldenCookieChoices = [ + "Frenzy", + "frenzy", + "Lucky", + "multiply cookies", + "Ruin", + "ruin cookies", + "Elder frenzy", + "blood frenzy", + "Clot", + "clot", + "Click frenzy", + "click frenzy", + "Cursed finger", + "cursed finger", + "Cookie chain", + "chain cookie", + "Cookie storm", + "cookie storm", + "Building special", + "building special", + "Dragon Harvest", + "dragon harvest", + "Dragonflight", + "dragonflight", + "Sweet", + "free sugar lump", + "Blab", + "blab", + ]; + Game.goldenCookieBuildingBuffs = { + Cursor: ["High-five", "Slap to the face"], + Grandma: ["Congregation", "Senility"], + Farm: ["Luxuriant harvest", "Locusts"], + Mine: ["Ore vein", "Cave-in"], + Factory: ["Oiled-up", "Jammed machinery"], + Bank: ["Juicy profits", "Recession"], + Temple: ["Fervent adoration", "Crisis of faith"], + "Wizard tower": ["Manabloom", "Magivores"], + Shipment: ["Delicious lifeforms", "Black holes"], + "Alchemy lab": ["Breakthrough", "Lab disaster"], + Portal: ["Righteous cataclysm", "Dimensional calamity"], + "Time machine": ["Golden ages", "Time jam"], + "Antimatter condenser": ["Extra cycles", "Predictable tragedy"], + Prism: ["Solar flare", "Eclipse"], + Chancemaker: ["Winning streak", "Dry spell"], + "Fractal engine": ["Macrocosm", "Microcosm"], + "Javascript console": ["Refactoring", "Antipattern"], + Idleverse: ["Cosmic nursery", "Big crunch"], + "Cortex baker": ["Brainstorm", "Brain freeze"], + }; + + /*===================================================================================== + PARTICLES + =======================================================================================*/ + //generic particles (falling cookies etc) + //only displayed on left section + Game.particles = []; + Game.particlesN = 50; + for (var i = 0; i < Game.particlesN; i++) { + Game.particles[i] = { + x: 0, + y: 0, + xd: 0, + yd: 0, + w: 64, + h: 64, + z: 0, + size: 1, + dur: 2, + life: -1, + r: 0, + pic: "smallCookies.png", + picId: 0, + picPos: [0, 0], + }; + } + + Game.particlesUpdate = function () { + for (var i = 0; i < Game.particlesN; i++) { + var me = Game.particles[i]; + if (me.life != -1) { + if (!me.text) me.yd += 0.2 + Math.random() * 0.1; + me.x += me.xd; + me.y += me.yd; + //me.y+=me.life*0.25+Math.random()*0.25; + me.life++; + if (me.life >= Game.fps * me.dur) { + me.life = -1; + } + } + } + }; + Game.particleAdd = function (x, y, xd, yd, size, dur, z, pic, text) { + //Game.particleAdd(pos X,pos Y,speed X,speed Y,size (multiplier),duration (seconds),layer,picture,text); + //pick the first free (or the oldest) particle to replace it + if (true) { + //Game.prefs.particles) + var highest = 0; + var highestI = 0; + for (var i = 0; i < Game.particlesN; i++) { + if (Game.particles[i].life == -1) { + highestI = i; + break; + } + if (Game.particles[i].life > highest) { + highest = Game.particles[i].life; + highestI = i; + } + } + var auto = 0; + if (x) auto = 1; + var i = highestI; + var x = x || -64; + if (Game.LeftBackground && !auto) + x = Math.floor(Math.random() * Game.LeftBackground.canvas.width); + var y = y || -64; + var me = Game.particles[i]; + me.life = 0; + me.x = x; + me.y = y; + me.xd = xd || 0; + me.yd = yd || 0; + me.size = size || 1; + me.z = z || 0; + me.dur = dur || 2; + me.r = Math.floor(Math.random() * 360); + me.picId = Math.floor(Math.random() * 10000); + if (!pic) { + if (Game.season == "fools") pic = "smallDollars.png"; + else { + var cookies = [[10, 0]]; + for (var i in Game.Upgrades) { + var cookie = Game.Upgrades[i]; + if (cookie.bought > 0 && cookie.pool == "cookie") + cookies.push(cookie.icon); + } + me.picPos = choose(cookies); + if ( + Game.bakeryName.toLowerCase() == "ortiel" || + Math.random() < 1 / 10000 + ) + me.picPos = [17, 5]; + pic = "icons.png"; + } + } else if (typeof pic !== "string") { + me.picPos = pic; + pic = "icons.png"; + } + me.pic = pic || "smallCookies.png"; + me.text = text || 0; + return me; + } + return {}; + }; + Game.particlesDraw = function (z) { + var ctx = Game.LeftBackground; + ctx.fillStyle = "#fff"; + ctx.font = "20px Merriweather"; + ctx.textAlign = "center"; + + for (var i = 0; i < Game.particlesN; i++) { + var me = Game.particles[i]; + if (me.z == z) { + if (me.life != -1) { + var opacity = 1 - me.life / (Game.fps * me.dur); + ctx.globalAlpha = opacity; + if (me.text) { + ctx.fillText(me.text, me.x, me.y); + } else { + ctx.save(); + ctx.translate(me.x, me.y); + ctx.rotate((me.r / 360) * Math.PI * 2); + var w = 64; + var h = 64; + if (me.pic == "icons.png") { + w = 48; + h = 48; + ctx.drawImage( + Pic(me.pic), + me.picPos[0] * w, + me.picPos[1] * h, + w, + h, + (-w / 2) * me.size, + (-h / 2) * me.size, + w * me.size, + h * me.size + ); + } else { + if ( + me.pic == "wrinklerBits.png" || + me.pic == "shinyWrinklerBits.png" + ) { + w = 100; + h = 200; + } + ctx.drawImage( + Pic(me.pic), + (me.picId % 8) * w, + 0, + w, + h, + (-w / 2) * me.size, + (-h / 2) * me.size, + w * me.size, + h * me.size + ); + } + ctx.restore(); + } + } + } + } + }; + + //text particles (popups etc) + Game.textParticles = []; + Game.textParticlesY = 0; + var str = ""; + for (var i = 0; i < 20; i++) { + Game.textParticles[i] = { x: 0, y: 0, life: -1, text: "" }; + str += '
'; + } + l("particles").innerHTML = str; + Game.textParticlesUpdate = function () { + for (var i in Game.textParticles) { + var me = Game.textParticles[i]; + if (me.life != -1) { + me.life++; + if (me.life >= Game.fps * 4) { + var el = me.l; + me.life = -1; + el.style.opacity = 0; + el.style.display = "none"; + } + } + } + }; + Game.textParticlesAdd = function (text, el, posX, posY) { + //pick the first free (or the oldest) particle to replace it + var highest = 0; + var highestI = 0; + for (var i in Game.textParticles) { + if (Game.textParticles[i].life == -1) { + highestI = i; + break; + } + if (Game.textParticles[i].life > highest) { + highest = Game.textParticles[i].life; + highestI = i; + } + } + var i = highestI; + var noStack = 0; + if (typeof posX !== "undefined" && typeof posY !== "undefined") { + x = posX; + y = posY; + noStack = 1; + } else { + var x = (Math.random() - 0.5) * 40; + var y = 0; //+(Math.random()-0.5)*40; + if (!el) { + var rect = Game.bounds; + var x = Math.floor((rect.left + rect.right) / 2); + var y = Math.floor(rect.bottom) - Game.mobile * 64; + x += (Math.random() - 0.5) * 40; + y += 0; //(Math.random()-0.5)*40; + } + } + if (!noStack) y -= Game.textParticlesY; + + x = Math.max(Game.bounds.left + 200, x); + x = Math.min(Game.bounds.right - 200, x); + y = Math.max(Game.bounds.top + 32 + (App ? 32 : 0), y); + + var me = Game.textParticles[i]; + if (!me.l) me.l = l("particle" + i); + me.life = 0; + me.x = x; + me.y = y; + me.text = text; + me.l.innerHTML = text; + me.l.style.left = Math.floor(Game.textParticles[i].x - 200) + "px"; + me.l.style.bottom = Math.floor(-Game.textParticles[i].y) + "px"; + for (var ii in Game.textParticles) { + if (ii != i) + ( + Game.textParticles[ii].l || l("particle" + ii) + ).style.zIndex = 100000000; + } + me.l.style.zIndex = 100000001; + me.l.style.display = "block"; + me.l.className = "particle title"; + void me.l.offsetWidth; + me.l.className = "particle title risingUpLinger"; + if (!noStack) Game.textParticlesY += 60; + }; + Game.popups = 1; + Game.Popup = function (text, x, y) { + if (Game.popups) Game.textParticlesAdd(text, 0, x, y); + }; + + //display sparkles at a set position + Game.sparkles = l("sparkles"); + Game.sparklesT = 0; + Game.sparklesFrames = 16; + Game.SparkleAt = function (x, y) { + if (Game.blendModesOn) { + Game.sparklesT = Game.sparklesFrames + 1; + Game.sparkles.style.backgroundPosition = "0px 0px"; + Game.sparkles.style.left = Math.floor(x - 64) + "px"; + Game.sparkles.style.top = Math.floor(y - 64) + "px"; + Game.sparkles.style.display = "block"; + } + }; + Game.SparkleOn = function (el) { + var rect = el.getBounds(); + Game.SparkleAt( + (rect.left + rect.right) / 2, + (rect.top + rect.bottom) / 2 - 24 + ); + }; + + /*===================================================================================== + NOTIFICATIONS + =======================================================================================*/ + //maybe do all this mess with proper DOM instead of rewriting the innerHTML + Game.Notes = []; + Game.NotesById = []; + Game.noteId = 0; + Game.noteL = l("notes"); + Game.Note = function (title, desc, pic, quick) { + this.title = title; + this.desc = desc || ""; + this.pic = pic || ""; + this.id = Game.noteId; + this.date = Date.now(); + this.quick = quick || 0; + this.life = (this.quick || 1) * Game.fps; + this.l = 0; + this.height = 0; + this.tooltip = 0; + Game.noteId++; + Game.NotesById[this.id] = this; + Game.Notes.unshift(this); + if (Game.Notes.length > 50) Game.Notes.pop(); + //Game.Notes.push(this); + //if (Game.Notes.length>50) Game.Notes.shift(); + Game.UpdateNotes(); + }; + Game.CloseNote = function (id) { + var me = Game.NotesById[id]; + if (Game.tooltip.from && Game.tooltip.from.id.indexOf("note-") == 0) + Game.tooltip.hide(); + Game.Notes.splice(Game.Notes.indexOf(me), 1); + //Game.NotesById.splice(Game.NotesById.indexOf(me),1); + Game.NotesById[id] = null; + Game.UpdateNotes(); + }; + Game.CloseNotes = function () { + Game.Notes = []; + Game.NotesById = []; + Game.tooltip.hide(); + Game.UpdateNotes(); + }; + Game.UpdateNotes = function () { + var str = ""; + var remaining = Game.Notes.length; + for (var i in Game.Notes) { + if (i < 5) { + var me = Game.Notes[i]; + var pic = ""; + if (me.pic != "") + pic = '
'; + str = + '
x
' + + pic + + '

' + + me.title + + "

" + + (me.desc != "" + ? '
' + me.desc + "
" + : "") + + "
" + + str; + remaining--; + } + } + if (remaining > 0) + str = + '
' + + loc("+%1 more notification.", LBeautify(remaining)) + + "
" + + str; + if (Game.Notes.length > 1) { + str += + '
x
'; + } + Game.noteL.innerHTML = str; + for (var i in Game.Notes) { + me.l = 0; + if (i < 5) { + var me = Game.Notes[i]; + me.l = l("note-" + me.id); + } + } + }; + Game.NotesLogic = function () { + for (var i in Game.Notes) { + if (Game.Notes[i].quick > 0) { + var me = Game.Notes[i]; + me.life--; + if (me.life <= 0) Game.CloseNote(me.id); + } + } + }; + Game.NotesDraw = function () { + for (var i in Game.Notes) { + if (Game.Notes[i].quick > 0) { + var me = Game.Notes[i]; + if (me.l) { + if (me.life < 10) { + me.l.style.opacity = me.life / 10; + } + } + } + } + }; + Game.Notify = function (title, desc, pic, quick, noLog) { + if (Game.prefs.notifs) { + quick = Math.min(6, quick); + if (!quick) quick = 6; + } + desc = replaceAll( + "==CLOSETHIS()==", + "Game.CloseNote(" + Game.noteId + ");", + desc + ); + if (Game.popups) new Game.Note(title, desc, pic, quick); + if (!noLog) Game.AddToLog("" + title + " | " + desc); + }; + Game.NotifyTooltip = function (content) { + //attaches a tooltip to the last spawned note + if (!Game.NotesById[Game.noteId - 1]) return false; + var me = Game.NotesById[Game.noteId - 1]; + me.tooltip = content; + Game.UpdateNotes(); + }; + + /*===================================================================================== + PROMPT + =======================================================================================*/ + Game.darkenL = l("darken"); + AddEvent(Game.darkenL, "click", function () { + if (Game.promptNoClose) { + } else { + Game.Click = 0; + PlaySound("snd/tickOff.mp3"); + Game.ClosePrompt(); + } + }); + Game.promptL = l("promptContent"); + Game.promptAnchorL = l("promptAnchor"); + Game.promptWrapL = l("prompt"); + Game.promptConfirm = ""; + Game.promptOn = 0; + Game.promptUpdateFunc = 0; + Game.promptOptionsN = 0; + Game.promptOptionFocus = 0; + Game.promptNoClose = false; + Game.UpdatePrompt = function () { + if (Game.promptUpdateFunc) Game.promptUpdateFunc(); + Game.promptAnchorL.style.top = + Math.floor((Game.windowH - Game.promptWrapL.offsetHeight) / 2 - 16) + + "px"; + }; + Game.Prompt = function (content, options, updateFunc, style) { + Game.promptNoClose = false; + if (updateFunc) Game.promptUpdateFunc = updateFunc; + if (style) Game.promptWrapL.className = "framed " + style; + else Game.promptWrapL.className = "framed"; + var str = ""; + str += content; + if (str.indexOf("")); + str = str.substring(str.indexOf(">") + 1); + str = '
' + str + "
"; + } + if (str.indexOf("") != -1) { + str = str.replace("", ""); + Game.promptNoClose = true; + } + var opts = ""; + Game.promptOptionsN = 0; + for (var i = 0; i < options.length; i++) { + if (options[i] == "br") { + //just a linebreak + opts += "
"; + } else { + if (typeof options[i] == "string") + options[i] = [ + options[i], + "PlaySound('snd/tickOff.mp3');Game.ClosePrompt();", + ]; + else if (!options[i][1]) + options[i] = [ + options[i][0], + "PlaySound('snd/tickOff.mp3');Game.ClosePrompt();", + options[i][2], + ]; + else options[i][1] = "PlaySound('snd/tick.mp3');" + options[i][1]; + options[i][1] = options[i][1] + .replace(/'/g, "'") + .replace(/"/g, """); + opts += + '' + + options[i][0] + + ""; + Game.promptOptionsN++; + } + } + Game.promptL.innerHTML = + str + '
' + opts + "
"; + Game.promptAnchorL.style.display = "block"; + Game.darkenL.style.display = "block"; + Game.promptL.focus(); + Game.promptOn = 1; + Game.promptOptionFocus = 0; + Game.FocusPromptOption(0); + Game.UpdatePrompt(); + if (!Game.promptNoClose) l("promptClose").style.display = "block"; + else l("promptClose").style.display = "none"; + }; + Game.ClosePrompt = function () { + if (!Game.promptOn) return false; + Game.promptAnchorL.style.display = "none"; + Game.darkenL.style.display = "none"; + Game.promptOn = 0; + Game.promptUpdateFunc = 0; + Game.promptOptionFocus = 0; + Game.promptOptionsN = 0; + Game.promptNoClose = false; + }; + Game.ConfirmPrompt = function () { + if ( + Game.promptOn && + l("promptOption" + Game.promptOptionFocus) && + l("promptOption" + Game.promptOptionFocus).style.display != "none" + ) + FireEvent(l("promptOption" + Game.promptOptionFocus), "click"); + }; + Game.FocusPromptOption = function (dir, tryN) { + var id = Game.promptOptionFocus + dir; + if (id < 0) id = Game.promptOptionsN - 1; + if (id >= Game.promptOptionsN) id = 0; + while ( + id >= 0 && + id < Game.promptOptionsN && + (!l("promptOption" + id) || + l("promptOption" + id).style.display == "none") + ) { + id += dir || 1; + } + if ( + l("promptOption" + id) && + l("promptOption" + id).style.display != "none" + ) { + if (l("promptOption" + Game.promptOptionFocus)) + l("promptOption" + Game.promptOptionFocus).classList.remove( + "focused" + ); + Game.promptOptionFocus = id; + if (l("promptOption" + Game.promptOptionFocus)) + l("promptOption" + Game.promptOptionFocus).classList.add("focused"); + } else if (!tryN && dir != 0) { + Game.promptOptionFocus = id; + Game.FocusPromptOption(dir, 1); + } + }; + + /*===================================================================================== + MENUS + =======================================================================================*/ + Game.cssClasses = []; + Game.addClass = function (what) { + if (Game.cssClasses.indexOf(what) == -1) Game.cssClasses.push(what); + Game.updateClasses(); + }; + Game.removeClass = function (what) { + var i = Game.cssClasses.indexOf(what); + if (i != -1) { + Game.cssClasses.splice(i, 1); + } + Game.updateClasses(); + }; + Game.updateClasses = function () { + Game.l.className = Game.cssClasses.join(" "); + }; + + Game.WritePrefButton = function ( + prefName, + button, + on, + off, + callback, + invert + ) { + var invert = invert ? 1 : 0; + if (!callback) callback = ""; + callback += "PlaySound('snd/tick.mp3');"; + return ( + '' + + (Game.prefs[prefName] ? on : off) + + "" + ); + }; + Game.Toggle = function (prefName, button, on, off, invert) { + if (Game.prefs[prefName]) { + l(button).innerHTML = off; + Game.prefs[prefName] = 0; + } else { + l(button).innerHTML = on; + Game.prefs[prefName] = 1; + } + l(button).className = + "smallFancyButton prefButton option" + + (Game.prefs[prefName] ^ invert ? "" : " off"); + }; + Game.ToggleFancy = function () { + if (Game.prefs.fancy) Game.removeClass("noFancy"); + else if (!Game.prefs.fancy) Game.addClass("noFancy"); + }; + Game.ToggleFilters = function () { + if (Game.prefs.filters) Game.removeClass("noFilters"); + else if (!Game.prefs.filters) Game.addClass("noFilters"); + }; + Game.ToggleExtraButtons = function () { + if (!Game.prefs.extraButtons) Game.removeClass("extraButtons"); + else if (Game.prefs.extraButtons) Game.addClass("extraButtons"); + for (var i in Game.Objects) { + Game.Objects[i].mute(0); + } + }; + Game.ToggleFullscreen = function () { + if (App) App.setFullscreen(Game.prefs.fullscreen); + }; + + Game.WriteSlider = function ( + slider, + leftText, + rightText, + startValueFunction, + callback + ) { + if (!callback) callback = ""; + return ( + '
' + + leftText + + '
' + + rightText.replace("[$]", startValueFunction()) + + '
' + ); + }; + + Game.onPanel = "Left"; + Game.addClass("focus" + Game.onPanel); + Game.ShowPanel = function (what) { + if (!what) what = ""; + if (Game.onPanel != what) { + Game.removeClass("focus" + Game.onPanel); + Game.addClass("focus" + what); + } + Game.onPanel = what; + }; + + Game.onMenu = ""; + Game.ShowMenu = function (what) { + if (!what || what == "") what = Game.onMenu; + if (Game.onMenu == "" && what != "") Game.addClass("onMenu"); + else if (Game.onMenu != "" && what != Game.onMenu) + Game.addClass("onMenu"); + else if (what == Game.onMenu) { + Game.removeClass("onMenu"); + what = ""; + } + //if (what=='log') l('donateBox').className='on'; else l('donateBox').className=''; + Game.onMenu = what; + + l("prefsButton").className = + Game.onMenu == "prefs" ? "panelButton selected" : "panelButton"; + l("statsButton").className = + Game.onMenu == "stats" ? "panelButton selected" : "panelButton"; + l("logButton").className = + Game.onMenu == "log" ? "panelButton selected" : "panelButton"; + + if (Game.onMenu == "") PlaySound("snd/clickOff2.mp3"); + else PlaySound("snd/clickOn2.mp3"); + + Game.UpdateMenu(); + + if (what == "") { + for (var i in Game.Objects) { + var me = Game.Objects[i]; + if (me.minigame && me.minigame.onResize) me.minigame.onResize(); + } + } + }; + Game.sayTime = function (time, detail) { + //time is a value where one second is equal to Game.fps (30). + //detail skips days when >1, hours when >2, minutes when >3 and seconds when >4. + //if detail is -1, output something like "3 hours, 9 minutes, 48 seconds" + if (time <= 0) return ""; + var str = ""; + var detail = detail || 0; + time = Math.floor(time); + if (detail == -1) { + //var months=0; + var days = 0; + var hours = 0; + var minutes = 0; + var seconds = 0; + //if (time>=Game.fps*60*60*24*30) months=(Math.floor(time/(Game.fps*60*60*24*30))); + if (time >= Game.fps * 60 * 60 * 24) + days = Math.floor(time / (Game.fps * 60 * 60 * 24)); + if (time >= Game.fps * 60 * 60) + hours = Math.floor(time / (Game.fps * 60 * 60)); + if (time >= Game.fps * 60) minutes = Math.floor(time / (Game.fps * 60)); + if (time >= Game.fps) seconds = Math.floor(time / Game.fps); + //days-=months*30; + hours -= days * 24; + minutes -= hours * 60 + days * 24 * 60; + seconds -= minutes * 60 + hours * 60 * 60 + days * 24 * 60 * 60; + if (days > 10) { + hours = 0; + } + if (days) { + minutes = 0; + seconds = 0; + } + if (hours) { + seconds = 0; + } + var bits = []; + //if (months>0) bits.push(Beautify(months)+' month'+(days==1?'':'s')); + if (days > 0) bits.push(loc("%1 day", LBeautify(days))); + if (hours > 0) bits.push(loc("%1 hour", LBeautify(hours))); + if (minutes > 0) bits.push(loc("%1 minute", LBeautify(minutes))); + if (seconds > 0) bits.push(loc("%1 second", LBeautify(seconds))); + if (bits.length == 0) str = loc("less than 1 second"); + else str = bits.join(", "); + /*//if (months>0) bits.push(Beautify(months)+' month'+(days==1?'':'s')); + if (days>0) bits.push(Beautify(days)+' day'+(days==1?'':'s')); + if (hours>0) bits.push(Beautify(hours)+' hour'+(hours==1?'':'s')); + if (minutes>0) bits.push(Beautify(minutes)+' minute'+(minutes==1?'':'s')); + if (seconds>0) bits.push(Beautify(seconds)+' second'+(seconds==1?'':'s')); + if (bits.length==0) str='less than 1 second'; + else str=bits.join(', ');*/ + } else { + /*if (time>=Game.fps*60*60*24*30*2 && detail<1) str=Beautify(Math.floor(time/(Game.fps*60*60*24*30)))+' months'; + else if (time>=Game.fps*60*60*24*30 && detail<1) str='1 month'; + else */ if (time >= Game.fps * 60 * 60 * 24 && detail < 2) + str = loc( + "%1 day", + LBeautify(Math.floor(time / (Game.fps * 60 * 60 * 24))) + ); //Beautify(Math.floor(time/(Game.fps*60*60*24)))+' days'; + else if (time >= Game.fps * 60 * 60 && detail < 3) + str = loc( + "%1 hour", + LBeautify(Math.floor(time / (Game.fps * 60 * 60))) + ); //Beautify(Math.floor(time/(Game.fps*60*60)))+' hours'; + else if (time >= Game.fps * 60 && detail < 4) + str = loc( + "%1 minute", + LBeautify(Math.floor(time / (Game.fps * 60))) + ); //Beautify(Math.floor(time/(Game.fps*60)))+' minutes'; + else if (time >= Game.fps && detail < 5) + str = loc( + "%1 second", + LBeautify(Math.floor(time / Game.fps)) + ); //Beautify(Math.floor(time/(Game.fps)))+' seconds'; + else str = loc("less than 1 second"); + } + return str; + }; + + Game.tinyCookie = function () { + if (!Game.HasAchiev("Tiny cookie")) { + return ( + '
' + ); + } + return ""; + }; + Game.ClickTinyCookie = function () { + if (!Game.HasAchiev("Tiny cookie")) { + PlaySound("snd/tick.mp3"); + Game.Win("Tiny cookie"); + } + }; + + Game.setVolume = function (what) { + Game.volume = what; + /*for (var i in Sounds) + { + Sounds[i].volume=Game.volume; + }*/ + }; + Game.setVolumeMusic = function (what) { + Game.volumeMusic = what; + if (Music) Music.setVolume(what / 100); + }; + Game.setWubMusic = function (what) { + if (Music) Music.setFilter(what / 100); + }; + + Game.showLangSelection = function (firstLaunch) { + var str = ""; + for (var i in Langs) { + var lang = Langs[i]; + str += + '
' + + lang.name + + "
"; + } + Game.Prompt( + "" + + (firstLaunch ? "" : "") + + '

' + + loc("Change language") + + "

" + + '
' + + (firstLaunch + ? "" + : '
(' + + loc("note: this will save and reload your game") + + ")
") + + str, + firstLaunch ? 0 : [loc("Cancel")] + ); + + for (var i in Langs) { + var lang = Langs[i]; + AddEvent( + l("langSelect-" + i), + "click", + (function (lang) { + return function () { + if (true) { + //lang!=locId) + PlaySound("snd/tick.mp3"); + localStorageSet("CookieClickerLang", lang); + Game.toSave = true; + Game.toReload = true; + } + }; + })(i) + ); + AddEvent( + l("langSelect-" + i), + "mouseover", + (function (lang) { + return function () { + PlaySound("snd/smallTick.mp3", 0.75); + l("languageSelectHeader").innerHTML = Langs[lang].changeLanguage; + }; + })(i) + ); + } + }; + + ON = " " + loc("ON"); + OFF = " " + loc("OFF"); + Game.UpdateMenu = function () { + var str = ""; + if (Game.onMenu != "") { + str += + ''; + //str+='
X
'; + } + if (Game.onMenu == "prefs") { + str += '
' + loc("Options") + "
"; + + str += + '
' + + '
' + + '
' + + loc("General") + + "
" + + '
' + + loc("Language: %1", "" + Langs[locId].name + "") + + '
" + + (!EN ? 'Change language
' : "") + + loc("Change language") + + '
' + + (App + ? '" + : "") + + '
" + + loc("Save") + + "
" + + '
" + + loc("Export save") + + '" + + loc("Import save") + + "
" + + (!App + ? '
" + + loc("Save to file") + + '" + + loc("Load from file") + + "
" + : "") + + '
" + + loc("Wipe save") + + "
" + + "
" + + "
" + + '
' + + '
' + + '
' + + loc("Settings") + + "
" + + (App && App.writeCloudUI ? App.writeCloudUI() : "") + + '
' + + Game.WriteSlider( + "volumeSlider", + loc("Volume"), + "[$]%", + function () { + return Game.volume; + }, + "Game.setVolume(Math.round(l('volumeSlider').value));l('volumeSliderRightText').innerHTML=Game.volume+'%';" + ) + + (App + ? Game.WriteSlider( + "volumeMusicSlider", + loc("Volume (music)"), + "[$]%", + function () { + return Game.volumeMusic; + }, + "Game.setVolumeMusic(Math.round(l('volumeMusicSlider').value));l('volumeMusicSliderRightText').innerHTML=Game.volumeMusic+'%';" + ) + : "") + + /*(App?Game.WriteSlider('wubMusicSlider',loc("Wub"),'[$]%',function(){return 100;},'Game.setWubMusic(Math.round(l(\'wubMusicSlider\').value));l(\'wubMusicSliderRightText\').innerHTML=(Math.round(l(\'wubMusicSlider\').value))+\'%\';'):'')+*/ + "
" + + (App + ? Game.WritePrefButton( + "bgMusic", + "bgMusicButton", + loc("Music in background") + ON, + loc("Music in background") + OFF, + "" + ) + + "
" + : "") + + (App + ? Game.WritePrefButton( + "fullscreen", + "fullscreenButton", + loc("Fullscreen") + ON, + loc("Fullscreen") + OFF, + "Game.ToggleFullscreen();" + ) + "
" + : "") + + Game.WritePrefButton( + "fancy", + "fancyButton", + loc("Fancy graphics") + ON, + loc("Fancy graphics") + OFF, + "Game.ToggleFancy();" + ) + + "
" + + Game.WritePrefButton( + "filters", + "filtersButton", + loc("CSS filters") + ON, + loc("CSS filters") + OFF, + "Game.ToggleFilters();" + ) + + "
" + + Game.WritePrefButton( + "particles", + "particlesButton", + loc("Particles") + ON, + loc("Particles") + OFF + ) + + (EN + ? "" + : "") + + "
" + + Game.WritePrefButton( + "numbers", + "numbersButton", + loc("Numbers") + ON, + loc("Numbers") + OFF + ) + + "
" + + Game.WritePrefButton( + "milk", + "milkButton", + loc("Milk [setting]") + ON, + loc("Milk [setting]") + OFF + ) + + (EN ? "" : "") + + "
" + + Game.WritePrefButton( + "cursors", + "cursorsButton", + loc("Cursors [setting]") + ON, + loc("Cursors [setting]") + OFF + ) + + "
" + + Game.WritePrefButton( + "wobbly", + "wobblyButton", + loc("Wobbly cookie") + ON, + loc("Wobbly cookie") + OFF + ) + + (EN + ? "" + : "") + + "
" + + Game.WritePrefButton( + "cookiesound", + "cookiesoundButton", + loc("Alt cookie sound") + ON, + loc("Alt cookie sound") + OFF + ) + + (EN + ? "" + : "") + + "
" + + Game.WritePrefButton( + "crates", + "cratesButton", + loc("Icon crates") + ON, + loc("Icon crates") + OFF + ) + + "
" + + Game.WritePrefButton( + "monospace", + "monospaceButton", + loc("Alt font") + ON, + loc("Alt font") + OFF + ) + + "
" + + Game.WritePrefButton( + "format", + "formatButton", + loc("Short numbers") + OFF, + loc("Short numbers") + ON, + "BeautifyAll();Game.RefreshStore();Game.upgradesToRebuild=1;", + 1 + ) + + (EN ? "" : "") + + "
" + + Game.WritePrefButton( + "notifs", + "notifsButton", + loc("Fast notes") + ON, + loc("Fast notes") + OFF + ) + + "
" + + //Game.WritePrefButton('autoupdate','autoupdateButton','Offline mode OFF','Offline mode ON',0,1)+'
'+ + (!App + ? Game.WritePrefButton( + "warn", + "warnButton", + loc("Closing warning") + ON, + loc("Closing warning") + OFF + ) + + "
" + : "") + + //Game.WritePrefButton('focus','focusButton',loc("Defocus")+OFF,loc("Defocus")+ON,0,1)+'
'+ + Game.WritePrefButton( + "extraButtons", + "extraButtonsButton", + loc("Extra buttons") + ON, + loc("Extra buttons") + OFF, + "Game.ToggleExtraButtons();" + ) + + "
" + + Game.WritePrefButton( + "askLumps", + "askLumpsButton", + loc("Lump confirmation") + ON, + loc("Lump confirmation") + OFF + ) + + "
" + + (!App + ? Game.WritePrefButton( + "customGrandmas", + "customGrandmasButton", + loc("Custom grandmas") + ON, + loc("Custom grandmas") + OFF + ) + + "
" + : "") + + Game.WritePrefButton( + "notScary", + "notScaryButton", + loc("Scary stuff") + OFF, + loc("Scary stuff") + ON, + 0, + 1 + ) + + "
" + + Game.WritePrefButton( + "timeout", + "timeoutButton", + loc("Sleep mode timeout") + ON, + loc("Sleep mode timeout") + OFF + ) + + "
" + + Game.WritePrefButton( + "screenreader", + "screenreaderButton", + loc("Screen reader mode") + ON, + loc("Screen reader mode") + OFF, + "Game.toSave=true;Game.toReload=true;" + ) + + "
" + + "
" + + //'
'+Game.WritePrefButton('autosave','autosaveButton','Autosave ON','Autosave OFF')+'
'+ + (!App + ? '
" + + loc("Check mod data") + + "
" + : "") + + "
" + + "
" + + ""; + + if (App && App.writeModUI) { + str += + '
' + + '
' + + '
' + + loc("Mods") + + "
" + + App.writeModUI() + + "
" + + "
"; + } + + str += '
'; + } else if (Game.onMenu == "log") { + //str+=replaceAll('[bakeryName]',Game.bakeryName,Game.updateLog); + str += Game.updateLog; + if (!Game.HasAchiev("Olden days")) + str += + '
'; + } else if (Game.onMenu == "stats") { + var buildingsOwned = 0; + buildingsOwned = Game.BuildingsOwned; + var upgrades = ""; + var cookieUpgrades = ""; + var hiddenUpgrades = ""; + var prestigeUpgrades = ""; + var upgradesTotal = 0; + var upgradesOwned = 0; + var prestigeUpgradesTotal = 0; + var prestigeUpgradesOwned = 0; + + var list = []; + //sort the upgrades + for (var i in Game.Upgrades) { + list.push(Game.Upgrades[i]); + } //clone first + var sortMap = function (a, b) { + if (a.order > b.order) return 1; + else if (a.order < b.order) return -1; + else return 0; + }; + list.sort(sortMap); + for (var i in list) { + var str2 = ""; + var me = list[i]; + + str2 += Game.crate(me, "stats"); + + if (me.bought) { + if (Game.CountsAsUpgradeOwned(me.pool)) upgradesOwned++; + else if (me.pool == "prestige") prestigeUpgradesOwned++; + } + + if (me.pool == "" || me.pool == "cookie" || me.pool == "tech") + upgradesTotal++; + if (me.pool == "debug") hiddenUpgrades += str2; + else if (me.pool == "prestige") { + prestigeUpgrades += str2; + prestigeUpgradesTotal++; + } else if (me.pool == "cookie") cookieUpgrades += str2; + else if (me.pool != "toggle" && me.pool != "unused") upgrades += str2; + } + var achievements = []; + var achievementsOwned = 0; + var achievementsOwnedOther = 0; + var achievementsTotal = 0; + + var list = []; + for (var i in Game.Achievements) { //sort the achievements + list.push(Game.Achievements[i]); + } + var sortMap = function (a, b) { + if (a.order > b.order) return 1; + else if (a.order < b.order) return -1; + else return 0; + }; + list.sort(sortMap); + + for (var i in list) { + var me = list[i]; + //if (me.pool=='normal' || me.won>0) achievementsTotal++; + if (Game.CountsAsAchievementOwned(me.pool)) achievementsTotal++; + var pool = me.pool; + if (!achievements[pool]) achievements[pool] = ""; + achievements[pool] += Game.crate(me, "stats"); + + if (me.won) { + if (Game.CountsAsAchievementOwned(me.pool)) achievementsOwned++; + else achievementsOwnedOther++; + } + } + + var achievementsStr = ""; + var pools = { + dungeon: EN + ? "Dungeon achievements (Not technically achievable yet.)" + : "???", + shadow: + "" + + loc("Shadow achievements") + + " (" + + loc( + "These are feats that are either unfair or difficult to attain. They do not give milk." + ) + + ")", + }; + for (var i in achievements) { + if (achievements[i] != "") { + if (pools[i]) + achievementsStr += '
' + pools[i] + "
"; + achievementsStr += + '
' + achievements[i] + "
"; + } + } + + var milkStr = ""; + for (var i = 0; i < Game.Milks.length; i++) { + if (Game.milkProgress >= i) { + var milk = Game.Milks[i]; + milkStr += + "

' + + (loc("Rank %1", romanize(i + 1)) + " - " + milk.name) + + '

(' + + (i == 0 + ? loc("starter milk") + : loc("for %1 achievements", Beautify(i * 25))) + + ')
', + "top" + ) + + ' style="background:url(img/icons.png?v=' + + Game.version + + ") " + + -milk.icon[0] * 48 + + "px " + + -milk.icon[1] * 48 + + 'px;margin:2px 0px;" class="trophy">'; + } + } + milkStr += '
'; + + var santaStr = ""; + var frames = 15; + if (Game.Has("A festive hat")) { + for (var i = 0; i <= Game.santaLevel; i++) { + santaStr += + "

' + + Game.santaLevels[i] + + "

", + "top" + ) + + ' style="background:url(img/santa.png) ' + + -i * 48 + + "px 0px;background-size:" + + frames * 48 + + 'px 48px;" class="trophy">'; + } + santaStr += '
'; + } + var dragonStr = ""; + var frames = 9; + var mainLevels = [ + 0, + 4, + 8, + Game.dragonLevels.length - 3, + Game.dragonLevels.length - 2, + Game.dragonLevels.length - 1, + ]; + if (Game.Has("A crumbly egg")) { + for (var i = 0; i <= mainLevels.length; i++) { + if (Game.dragonLevel >= mainLevels[i]) { + var level = Game.dragonLevels[mainLevels[i]]; + dragonStr += + "
'+level.name+'
' + '

' + + level.name + + "

", + "top" + ) + + ' style="background:url(img/dragon.png?v=' + + Game.version + + ") " + + -level.pic * 48 + + "px 0px;background-size:" + + frames * 48 + + 'px 48px;" class="trophy">'; + } + } + dragonStr += '
'; + } + var ascensionModeStr = ""; + var icon = Game.ascensionModes[Game.ascensionMode].icon; + if (Game.resets > 0) + ascensionModeStr = + '' + + Game.ascensionModes[Game.ascensionMode].desc + + "", + "top" + ) + + '>
' + + Game.ascensionModes[Game.ascensionMode].dname + + "
"; + + var milkName = Game.Milk.name; + + var researchStr = Game.sayTime(Game.researchT, -1); + var pledgeStr = Game.sayTime(Game.pledgeT, -1); + var wrathStr = ""; + if (Game.elderWrath == 1) wrathStr = loc("awoken"); + else if (Game.elderWrath == 2) wrathStr = loc("displeased"); + else if (Game.elderWrath == 3) wrathStr = loc("angered"); + else if (Game.elderWrath == 0 && Game.pledges > 0) + wrathStr = loc("appeased"); + + var dropMult = Game.dropRateMult(); + + var date = new Date(); + date.setTime(Date.now() - Game.startDate); + var timeInSeconds = date.getTime() / 1000; + var startDate = Game.sayTime(timeInSeconds * Game.fps, -1); + date.setTime(Date.now() - Game.fullDate); + var fullDate = Game.sayTime((date.getTime() / 1000) * Game.fps, -1); + if (!Game.fullDate || !fullDate || fullDate.length < 1) + fullDate = loc("a long while"); + /*date.setTime(new Date().getTime()-Game.lastDate); + var lastDate=Game.sayTime(date.getTime()/1000*Game.fps,2);*/ + + var heavenlyMult = Game.GetHeavenlyMultiplier(); + + var seasonStr = Game.sayTime(Game.seasonT, -1); + + str += + '
' + + (EN ? "Statistics" : loc("Stats")) + + "
" + + '
' + + '
' + + loc("General") + + "
" + + '
' + + '
' + + loc("Cookies in bank:") + + '
' + + Game.tinyCookie() + + Beautify(Game.cookies) + + "
" + + '
' + + loc("Cookies baked (this ascension):") + + '
' + + Game.tinyCookie() + + Beautify(Game.cookiesEarned) + + "
" + + '
' + + loc("Cookies baked (all time):") + + '
' + + Game.tinyCookie() + + Beautify(Game.cookiesEarned + Game.cookiesReset) + + "
" + + (Game.cookiesReset > 0 + ? '
' + + loc("Cookies forfeited by ascending:") + + '
' + + Game.tinyCookie() + + Beautify(Game.cookiesReset) + + "
" + : "") + + (Game.resets + ? '
' + + loc("Legacy started:") + + " " + + (fullDate == "" ? loc("just now") : loc("%1 ago", fullDate)) + + ", " + + loc("with %1 ascension", LBeautify(Game.resets)) + + "
" + : "") + + '
' + + loc("Run started:") + + " " + + (startDate == "" ? loc("just now") : loc("%1 ago", startDate)) + + "
" + + '
' + + loc("Buildings owned:") + + " " + + Beautify(buildingsOwned) + + "
" + + '
' + + loc("Cookies per second:") + + " " + + Beautify(Game.cookiesPs, 1) + + " " + + "(" + + loc("multiplier:") + + " " + + Beautify(Math.round(Game.globalCpsMult * 100), 1) + + "%)" + + (Game.cpsSucked > 0 + ? ' (' + + loc("withered:") + + " " + + Beautify(Math.round(Game.cpsSucked * 100), 1) + + "%)" + : "") + + "
" + + '
' + + loc("Raw cookies per second:") + + " " + + Beautify(Game.cookiesPsRaw, 1) + + " " + + "(" + + loc("highest this ascension:") + + " " + + Beautify(Game.cookiesPsRawHighest, 1) + + ")" + + "
" + + '
' + + loc("Cookies per click:") + + " " + + Beautify(Game.computedMouseCps, 1) + + "
" + + '
' + + loc("Cookie clicks:") + + " " + + Beautify(Game.cookieClicks) + + "
" + + '
' + + loc("Hand-made cookies:") + + " " + + Beautify(Game.handmadeCookies) + + "
" + + '
' + + loc("Golden cookie clicks:") + + " " + + Beautify(Game.goldenClicksLocal) + + " (" + + loc("all time:") + + " " + + Beautify(Game.goldenClicks) + + ")
" + //'
'+ + (dropMult != 1 + ? '
' + + loc("Random drop multiplier:") + + " x" + + Beautify(dropMult, 2) + + "
" + : "") + + "
" + + '
' + + loc("Running version:") + + " " + + Game.version + + "
" + + (researchStr != "" || + wrathStr != "" || + pledgeStr != "" || + santaStr != "" || + dragonStr != "" || + Game.season != "" || + ascensionModeStr != "" || + Game.canLumps() + ? '
' + + '
' + + loc("Special") + + "
" + + '
' + + (ascensionModeStr != "" + ? '
' + + loc("Challenge mode:") + + "" + + ascensionModeStr + + "
" + : "") + + (Game.season != "" + ? '
' + + loc("Seasonal event:") + + " " + + Game.seasons[Game.season].name + + (seasonStr != "" + ? " (" + loc("%1 remaining", seasonStr) + ")" + : "") + + "
" + : "") + + (EN && Game.season == "fools" + ? '
Money made from selling cookies : ' + + Beautify(Game.cookiesEarned * 0.08, 2) + + " cookie dollars
" + + (Game.Objects["Portal"].highest > 0 + ? '
TV show seasons produced : ' + + Beautify( + Math.floor( + (timeInSeconds / 60 / 60) * + (Game.Objects["Portal"].highest * 0.13) + + 1 + ) + ) + + "
" + : "") + : "") + + (researchStr != "" + ? '
' + + loc("Research:") + + " " + + loc("%1 remaining", researchStr) + + "
" + : "") + + (wrathStr != "" + ? '
' + + loc("Grandmatriarchs status:") + + " " + + wrathStr + + "
" + : "") + + (pledgeStr != "" + ? '
' + + loc("Pledge:") + + " " + + loc("%1 remaining", pledgeStr) + + "
" + : "") + + (Game.wrinklersPopped > 0 + ? '
' + + loc("Wrinklers popped:") + + " " + + Beautify(Game.wrinklersPopped) + + "
" + : "") + + (Game.canLumps() && Game.lumpsTotal > -1 + ? '
' + + loc("Sugar lumps harvested:") + + '
' + + Beautify(Game.lumpsTotal) + + "
" + : "") + + //(Game.cookiesSucked>0?'
Withered : '+Beautify(Game.cookiesSucked)+' cookies
':'')+ + (Game.reindeerClicked > 0 + ? '
' + + loc("Reindeer found:") + + " " + + Beautify(Game.reindeerClicked) + + "
" + : "") + + (santaStr != "" + ? '
' + + loc("Santa stages unlocked:") + + "
" + + santaStr + + "
" + : "") + + (dragonStr != "" + ? '
' + + loc("Dragon training:") + + "
" + + dragonStr + + "
" + : "") + + "
" + : "") + + (Game.prestige > 0 || prestigeUpgrades != "" + ? '
' + + '
' + + loc("Prestige") + + "
" + + '
' + + '
' + + '
' + + loc("Prestige level:") + + " " + + Beautify(Game.prestige) + + " " + + loc("at %1% of its potential (+%2% CpS)", [ + Beautify(heavenlyMult * 100, 1), + Beautify( + parseFloat(Game.prestige) * Game.heavenlyPower * heavenlyMult, + 1 + ), + ]) + + "
" + + loc("Heavenly chips:") + + " " + + Beautify(Game.heavenlyChips) + + "
" + + "
" + + (prestigeUpgrades != "" + ? '
' + + loc("Prestige upgrades unlocked:") + + " " + + prestigeUpgradesOwned + + "/" + + prestigeUpgradesTotal + + " (" + + Math.floor( + (prestigeUpgradesOwned / prestigeUpgradesTotal) * 100 + ) + + "%)
" + + '
' + + prestigeUpgrades + + "
" + : "") + + "
" + : "") + + '
' + + '
' + + loc("Upgrades") + + "
" + + '
' + + (hiddenUpgrades != "" + ? '
Debug
' + + '
' + + hiddenUpgrades + + "
" + : "") + + '
' + + loc("Upgrades unlocked:") + + " " + + upgradesOwned + + "/" + + upgradesTotal + + " (" + + Math.floor((upgradesOwned / upgradesTotal) * 100) + + "%)
" + + '
' + + upgrades + + "
" + + (cookieUpgrades != "" + ? '
' + + loc("Cookies") + + "
" + + '
' + + cookieUpgrades + + "
" + : "") + + "
" + + '
' + + '
' + + loc("Achievements") + + "
" + + '
' + + '
' + + loc("Achievements unlocked:") + + " " + + achievementsOwned + + "/" + + achievementsTotal + + " (" + + Math.floor((achievementsOwned / achievementsTotal) * 100) + + "%)" + + (achievementsOwnedOther > 0 + ? ' (+' + + achievementsOwnedOther + + ")" + : "") + + "
" + + (Game.cookiesMultByType["kittens"] > 1 + ? '
' + + loc("Kitten multiplier:") + + " " + + Beautify(Game.cookiesMultByType["kittens"] * 100) + + "%
" + : "") + + '
' + + loc("Milk") + + ": " + + milkName + + "
" + + (milkStr != "" + ? '
' + + loc("Milk flavors unlocked:") + + "
" + + milkStr + + "
" + : "") + + '
(' + + loc( + "Milk is gained with each achievement. It can unlock unique upgrades over time." + ) + + ")
" + + achievementsStr + + "
" + + "
" + + '
'; + } + //str='
'+str+'
'; + l("menu").innerHTML = str; + if (App) { + var anchors = l("menu").getElementsByTagName("a"); + for (var i = 0; i < anchors.length; i++) { + var it = anchors[i]; + if (it.href) { + console.log(it.href); + AddEvent( + it, + "click", + (function (href) { + return function () { + App.openLink(href); + }; + })(it.href) + ); + it.removeAttribute("href"); + } + } + } + /*AddEvent(l('selectionKeeper'),'mouseup',function(e){ + console.log('selection:',window.getSelection()); + });*/ + }; + + AddEvent(l("prefsButton"), "click", function () { + Game.ShowMenu("prefs"); + }); + AddEvent(l("statsButton"), "click", function () { + Game.ShowMenu("stats"); + }); + AddEvent(l("logButton"), "click", function () { + Game.ShowMenu("log"); + }); + AddEvent(l("legacyButton"), "click", function () { + PlaySound("snd/tick.mp3"); + Game.Ascend(); + }); + Game.ascendMeter = l("ascendMeter"); + Game.ascendNumber = l("ascendNumber"); + + /*===================================================================================== + NEWS TICKER + =======================================================================================*/ + Game.Ticker = ""; + Game.TickerAge = 0; + Game.TickerEffect = 0; + Game.TickerN = 0; + Game.TickerClicks = 0; + Game.UpdateTicker = function () { + Game.TickerAge--; + if (Game.TickerAge <= 0) Game.getNewTicker(); + else if (Game.Ticker == "") Game.getNewTicker(true); + }; + Game.getNewTicker = function ( + manual //note : "manual" is true if the ticker was clicked, but may also be true on startup etc + ) { + var list = []; + + var NEWS = loc("News :").replace(" ", " ") + " "; + + var loreProgress = Math.round( + (Math.log(Game.cookiesEarned / 10) * Math.LOG10E + 1) | 0 + ); + + if (Game.TickerN % 2 == 0 || loreProgress > 14) { + var animals = [ + "newts", + "penguins", + "scorpions", + "axolotls", + "puffins", + "porpoises", + "blowfish", + "horses", + "crayfish", + "slugs", + "humpback whales", + "nurse sharks", + "giant squids", + "polar bears", + "fruit bats", + "frogs", + "sea squirts", + "velvet worms", + "mole rats", + "paramecia", + "nematodes", + "tardigrades", + "giraffes", + "monkfish", + "wolfmen", + "goblins", + "hippies", + ]; + + if (Math.random() < 0.75 || Game.cookiesEarned < 10000) { + if (Game.Objects["Grandma"].amount > 0) + list.push( + "" + + choose(loc("Ticker (grandma)")) + + "" + + Game.Objects["Grandma"].single + + "" + ); + + if (!Game.prefs.notScary && Game.Objects["Grandma"].amount >= 50) + list.push( + "" + + choose(loc("Ticker (threatening grandma)")) + + "" + + Game.Objects["Grandma"].single + + "" + ); + + if (EN && Game.HasAchiev("Just wrong") && Math.random() < 0.05) + list.push( + NEWS + "cookie manufacturer downsizes, sells own grandmother!" + ); + if ( + !Game.prefs.notScary && + Game.HasAchiev("Just wrong") && + Math.random() < 0.4 + ) + list.push( + "" + + choose(loc("Ticker (angry grandma)")) + + "" + + Game.Objects["Grandma"].single + + "" + ); + + if ( + !Game.prefs.notScary && + Game.Objects["Grandma"].amount >= 1 && + Game.pledges > 0 && + Game.elderWrath == 0 + ) + list.push( + "" + + choose(loc("Ticker (grandmas return)")) + + "" + + Game.Objects["Grandma"].single + + "" + ); + + if (!EN) { + for (var i in Game.Objects) { + if (i != "Cursor" && i != "Grandma" && Game.Objects[i].amount > 0) + list.push(NEWS + choose(loc("Ticker (" + i + ")"))); + } + + if (Game.cookiesEarned >= 1000) { + if (Game.season == "halloween") + list.push(NEWS + choose(loc("Ticker (Halloween)"))); + if (Game.season == "christmas") + list.push(NEWS + choose(loc("Ticker (Christmas)"))); + if (Game.season == "valentines") + list.push(NEWS + choose(loc("Ticker (Valentines)"))); + if (Game.season == "easter") + list.push(NEWS + choose(loc("Ticker (Easter)"))); + } + } else { + if (Game.Objects["Farm"].amount > 0) + list.push( + choose([ + "News : cookie farms suspected of employing undeclared elderly workforce!", + "News : cookie farms release harmful chocolate in our rivers, says scientist!", + "News : genetically-modified chocolate controversy strikes cookie farmers!", + "News : free-range farm cookies popular with today's hip youth, says specialist.", + "News : farm cookies deemed unfit for vegans, says nutritionist.", + ]) + ); + + if (Game.Objects["Mine"].amount > 0) + list.push( + choose([ + "News : is our planet getting lighter? Experts examine the effects of intensive chocolate mining.", + "News : " + + Math.floor(Math.random() * 1000 + 2) + + " miners trapped in collapsed chocolate mine!", + "News : chocolate mines found to cause earthquakes and sinkholes!", + "News : chocolate mine goes awry, floods village in chocolate!", + 'News : depths of chocolate mines found to house "peculiar, chocolaty beings"!', + ]) + ); + + if (Game.Objects["Factory"].amount > 0) + list.push( + choose([ + "News : cookie factories linked to global warming!", + "News : cookie factories involved in chocolate weather controversy!", + "News : cookie factories on strike, robotic minions employed to replace workforce!", + "News : cookie factories on strike - workers demand to stop being paid in cookies!", + "News : factory-made cookies linked to obesity, says study.", + ]) + ); + + if (Game.Objects["Bank"].amount > 0) + list.push( + choose([ + "News : cookie loans on the rise as people can no longer afford them with regular money.", + "News : cookies slowly creeping up their way as a competitor to traditional currency!", + "News : most bakeries now fitted with ATMs to allow for easy cookie withdrawals and deposits.", + "News : cookie economy now strong enough to allow for massive vaults doubling as swimming pools!", + 'News : "Tomorrow\'s wealthiest people will be calculated by their worth in cookies", predict economists.', + ]) + ); + + if (Game.Objects["Temple"].amount > 0) + list.push( + choose([ + "News : explorers bring back ancient artifact from abandoned temple; archeologists marvel at the centuries-old " + + choose([ + "magic", + "carved", + "engraved", + "sculpted", + "royal", + "imperial", + "mummified", + "ritual", + "golden", + "silver", + "stone", + "cursed", + "plastic", + "bone", + "blood", + "holy", + "sacred", + "sacrificial", + "electronic", + "singing", + "tapdancing", + ]) + + " " + + choose([ + "spoon", + "fork", + "pizza", + "washing machine", + "calculator", + "hat", + "piano", + "napkin", + "skeleton", + "gown", + "dagger", + "sword", + "shield", + "skull", + "emerald", + "bathtub", + "mask", + "rollerskates", + "litterbox", + "bait box", + "cube", + "sphere", + "fungus", + ]) + + "!", + "News : recently-discovered chocolate temples now sparking new cookie-related cult; thousands pray to Baker in the sky!", + "News : just how extensive is the cookie pantheon? Theologians speculate about possible " + + choose(["god", "goddess"]) + + " of " + + choose([ + choose(animals), + choose([ + "kazoos", + "web design", + "web browsers", + "kittens", + "atheism", + "handbrakes", + "hats", + "aglets", + "elevator music", + "idle games", + 'the letter "P"', + "memes", + "hamburgers", + "bad puns", + "kerning", + "stand-up comedy", + "failed burglary attempts", + "clickbait", + "one weird tricks", + ]), + ]) + + ".", + 'News : theists of the world discover new cookie religion - "Oh boy, guess we were wrong all along!"', + 'News : cookie heaven allegedly "sports elevator instead of stairway"; cookie hell "paved with flagstone, as good intentions make for poor building material".', + ]) + ); + + if (Game.Objects["Wizard tower"].amount > 0) + list.push( + choose([ + "News : all " + + choose([ + choose(animals), + choose([ + "public restrooms", + "clouds", + "politicians", + "moustaches", + "hats", + "shoes", + "pants", + "clowns", + "encyclopedias", + "websites", + "potted plants", + "lemons", + "household items", + "bodily fluids", + "cutlery", + "national landmarks", + "yogurt", + "rap music", + "underwear", + ]), + ]) + + " turned into " + + choose([ + choose(animals), + choose([ + "public restrooms", + "clouds", + "politicians", + "moustaches", + "hats", + "shoes", + "pants", + "clowns", + "encyclopedias", + "websites", + "potted plants", + "lemons", + "household items", + "bodily fluids", + "cutlery", + "national landmarks", + "yogurt", + "rap music", + "underwear", + ]), + ]) + + " in freak magic catastrophe!", + "News : heavy dissent rages between the schools of " + + choose([ + "water", + "fire", + "earth", + "air", + "lightning", + "acid", + "song", + "battle", + "peace", + "pencil", + "internet", + "space", + "time", + "brain", + "nature", + "techno", + "plant", + "bug", + "ice", + "poison", + "crab", + "kitten", + "dolphin", + "bird", + "punch", + "fart", + ]) + + " magic and " + + choose([ + "water", + "fire", + "earth", + "air", + "lightning", + "acid", + "song", + "battle", + "peace", + "pencil", + "internet", + "space", + "time", + "brain", + "nature", + "techno", + "plant", + "bug", + "ice", + "poison", + "crab", + "kitten", + "dolphin", + "bird", + "punch", + "fart", + ]) + + " magic!", + "News : get your new charms and curses at the yearly National Spellcrafting Fair! Exclusive prices on runes and spellbooks.", + 'News : cookie wizards deny involvement in shockingly ugly newborn - infant is "honestly grody-looking, but natural", say doctors.', + 'News : "Any sufficiently crude magic is indistinguishable from technology", claims renowned technowizard.', + ]) + ); + + if (Game.Objects["Shipment"].amount > 0) + list.push( + choose([ + "News : new chocolate planet found, becomes target of cookie-trading spaceships!", + "News : massive chocolate planet found with 99.8% certified pure dark chocolate core!", + "News : space tourism booming as distant planets attract more bored millionaires!", + "News : chocolate-based organisms found on distant planet!", + 'News : ancient baking artifacts found on distant planet; "terrifying implications", experts say.', + ]) + ); + + if (Game.Objects["Alchemy lab"].amount > 0) + list.push( + choose([ + "News : national gold reserves dwindle as more and more of the precious mineral is turned to cookies!", + 'News : chocolate jewelry found fashionable, gold and diamonds "just a fad", says specialist.', + "News : silver found to also be transmutable into white chocolate!", + "News : defective alchemy lab shut down, found to convert cookies to useless gold.", + "News : alchemy-made cookies shunned by purists!", + ]) + ); + + if (Game.Objects["Portal"].amount > 0) + list.push( + choose([ + "News : nation worried as more and more unsettling creatures emerge from dimensional portals!", + "News : dimensional portals involved in city-engulfing disaster!", + "News : tourism to cookieverse popular with bored teenagers! Casualty rate as high as 73%!", + "News : cookieverse portals suspected to cause fast aging and obsession with baking, says study.", + 'News : "do not settle near portals," says specialist; "your children will become strange and corrupted inside."', + ]) + ); + + if (Game.Objects["Time machine"].amount > 0) + list.push( + choose([ + "News : time machines involved in history-rewriting scandal! Or are they?", + "News : time machines used in unlawful time tourism!", + 'News : cookies brought back from the past "unfit for human consumption", says historian.', + "News : various historical figures inexplicably replaced with talking lumps of dough!", + 'News : "I have seen the future," says time machine operator, "and I do not wish to go there again."', + ]) + ); + + if (Game.Objects["Antimatter condenser"].amount > 0) + list.push( + choose([ + 'News : whole town seemingly swallowed by antimatter-induced black hole; more reliable sources affirm town "never really existed"!', + 'News : "explain to me again why we need particle accelerators to bake cookies?" asks misguided local woman.', + "News : first antimatter condenser successfully turned on, doesn't rip apart reality!", + 'News : researchers conclude that what the cookie industry needs, first and foremost, is "more magnets".', + 'News : "unravelling the fabric of reality just makes these cookies so much tastier", claims scientist.', + ]) + ); + + if (Game.Objects["Prism"].amount > 0) + list.push( + choose([ + "News : new cookie-producing prisms linked to outbreak of rainbow-related viral videos.", + 'News : scientists warn against systematically turning light into matter - "One day, we\'ll end up with all matter and no light!"', + "News : cookies now being baked at the literal speed of light thanks to new prismatic contraptions.", + 'News : "Can\'t you sense the prism watching us?", rambles insane local man. "No idea what he\'s talking about", shrugs cookie magnate/government official.', + 'News : world citizens advised "not to worry" about frequent atmospheric flashes.', + ]) + ); + + if (Game.Objects["Chancemaker"].amount > 0) + list.push( + choose([ + "News : strange statistical anomalies continue as weather forecast proves accurate an unprecedented 3 days in a row!", + 'News : local casino ruined as all gamblers somehow hit a week-long winning streak! "We might still be okay", says owner before being hit by lightning 47 times.', + "News : neighboring nation somehow elects president with sensible policies in freak accident of random chance!", + 'News : million-to-one event sees gritty movie reboot turning out better than the original! "We have no idea how this happened", say movie execs.', + "News : all scratching tickets printed as winners, prompting national economy to crash and, against all odds, recover overnight.", + ]) + ); + + if (Game.Objects["Fractal engine"].amount > 0) + list.push( + choose([ + 'News : local man "done with Cookie Clicker", finds the constant self-references "grating and on-the-nose".', + "News : local man sails around the world to find himself - right where he left it.", + 'News : local guru claims "there\'s a little bit of ourselves in everyone", under investigation for alleged cannibalism.', + "News : news writer finds herself daydreaming about new career. Or at least a raise.", + 'News : polls find idea of cookies made of cookies "acceptable" - "at least we finally know what\'s in them", says interviewed citizen.', + ]) + ); + + if (Game.Objects["Javascript console"].amount > 0) + list.push( + choose([ + "News : strange fad has parents giving their newborns names such as Emma.js or Liam.js. At least one Baby.js reported.", + "News : coding is hip! More and more teenagers turn to technical fields like programming, ensuring a future robot apocalypse and the doom of all mankind.", + "News : developers unsure what to call their new javascript libraries as all combinations of any 3 dictionary words have already been taken.", + "News : nation holds breath as nested ifs about to hatch.", + 'News : clueless copywriter forgets to escape a quote, ends news line prematurely; last words reported to be "Huh, why isn', + ]) + ); + + if (Game.Objects["Idleverse"].amount > 0) + list.push( + choose([ + "News : is another you living out their dreams in an alternate universe? Probably, you lazy bum!", + 'News : public recoils at the notion of a cosmos made of infinite idle games. "I kinda hoped there\'d be more to it", says distraught citizen.', + 'News : with an infinity of parallel universes, people turn to reassuring alternate dimensions, which only number "in the high 50s".', + 'News : "I find solace in the knowledge that at least some of my alternate selves are probably doing fine out there", says citizen\'s last remaining exemplar in the multiverse.', + "News : comic book writers point to actual multiverse in defense of dubious plot points. \"See? I told you it wasn't 'hackneyed and contrived'!\"", + ]) + ); + + if (Game.Objects["Cortex baker"].amount > 0) + list.push( + choose([ + "News : cortex baker wranglers kindly remind employees that cortex bakers are the bakery's material property and should not be endeared with nicknames.", + "News : space-faring employees advised to ignore unusual thoughts and urges experienced within 2 parsecs of gigantic cortex bakers, say guidelines.", + "News : astronomers warn of cortex baker trajectory drift, fear future head-on collisions resulting in costly concussions.", + 'News : runt cortex baker identified with an IQ of only quintuple digits: "just a bit of a dummy", say specialists.', + 'News : are you smarter than a cortex baker? New game show deemed "unfair" by contestants.', + ]) + ); + + if (Game.season == "halloween" && Game.cookiesEarned >= 1000) + list.push( + choose([ + "News : strange twisting creatures amass around cookie factories, nibble at assembly lines.", + 'News : ominous wrinkly monsters take massive bites out of cookie production; "this can\'t be hygienic", worries worker.', + "News : pagan rituals on the rise as children around the world dress up in strange costumes and blackmail homeowners for candy.", + "News : new-age terrorism strikes suburbs as houses find themselves covered in eggs and toilet paper.", + 'News : children around the world "lost and confused" as any and all Halloween treats have been replaced by cookies.', + ]) + ); + + if (Game.season == "christmas" && Game.cookiesEarned >= 1000) + list.push( + choose([ + "News : bearded maniac spotted speeding on flying sleigh! Investigation pending.", + 'News : Santa Claus announces new brand of breakfast treats to compete with cookie-flavored cereals! "They\'re ho-ho-horrible!" says Santa.', + 'News : "You mean he just gives stuff away for free?!", concerned moms ask. "Personally, I don\'t trust his beard."', + 'News : obese jolly lunatic still on the loose, warn officials. "Keep your kids safe and board up your chimneys. We mean it."', + "News : children shocked as they discover Santa Claus isn't just their dad in a costume after all!
\"I'm reassessing my life right now\", confides Laura, aged 6.", + "News : mysterious festive entity with quantum powers still wrecking havoc with army of reindeer, officials say.", + 'News : elves on strike at toy factory! "We will not be accepting reindeer chow as payment anymore. And stop calling us elves!"', + "News : elves protest around the nation; wee little folks in silly little outfits spread mayhem, destruction; rabid reindeer running rampant through streets.", + "News : scholars debate regarding the plural of reindeer(s) in the midst of elven world war.", + 'News : elves "unrelated to gnomes despite small stature and merry disposition", find scientists.', + 'News : elves sabotage radioactive frosting factory, turn hundreds blind in vicinity - "Who in their right mind would do such a thing?" laments outraged mayor.', + 'News : drama unfolds at North Pole as rumors crop up around Rudolph\'s red nose; "I may have an addiction or two", admits reindeer.', + ]) + ); + + if (Game.season == "valentines" && Game.cookiesEarned >= 1000) + list.push( + choose([ + "News : organ-shaped confectioneries being traded in schools all over the world; gruesome practice undergoing investigation.", + 'News : heart-shaped candies overtaking sweets business, offering competition to cookie empire. "It\'s the economy, cupid!"', + "News : love's in the air, according to weather specialists. Face masks now offered in every city to stunt airborne infection.", + "News : marrying a cookie - deranged practice, or glimpse of the future?", + 'News : boyfriend dumped after offering his lover cookies for Valentine\'s Day, reports say. "They were off-brand", shrugs ex-girlfriend.', + ]) + ); + + if (Game.season == "easter" && Game.cookiesEarned >= 1000) + list.push( + choose([ + "News : long-eared critters with fuzzy tails invade suburbs, spread terror and chocolate!", + 'News : eggs have begun to materialize in the most unexpected places; "no place is safe", warn experts.', + "News : packs of rampaging rabbits cause billions in property damage; new strain of myxomatosis being developed.", + 'News : egg-laying rabbits "not quite from this dimension", warns biologist; advises against petting, feeding, or cooking the creatures.', + "News : mysterious rabbits found to be egg-layers, but mammalian, hinting at possible platypus ancestry.", + ]) + ); + } + } + if (!EN) { + if (Game.cookiesEarned >= 10000) { + list.push(NEWS + choose(loc("Ticker (misc)"))); + list.push(NEWS + choose(loc("Ticker (misc)"))); + list.push(NEWS + choose(loc("Ticker (misc)"))); + } + } else { + if (Math.random() < 0.05) { + if (Game.HasAchiev("Base 10")) + list.push( + "News : cookie manufacturer completely forgoes common sense, lets strange obsession with round numbers drive building decisions!" + ); + if (Game.HasAchiev("From scratch")) + list.push( + "News : follow the tear-jerking, riches-to-rags story about a local cookie manufacturer who decided to give it all up!" + ); + if (Game.HasAchiev("A world filled with cookies")) + list.push( + "News : known universe now jammed with cookies! No vacancies!" + ); + if (Game.HasAchiev("Last Chance to See")) + list.push( + "News : incredibly rare albino wrinkler on the brink of extinction poached by cookie-crazed pastry magnate!" + ); + if (Game.Has("Serendipity")) + list.push( + "News : local cookie manufacturer becomes luckiest being alive!" + ); + if (Game.Has("Season switcher")) + list.push( + 'News : seasons are all out of whack! "We need to get some whack back into them seasons", says local resident.' + ); + + if (Game.Has("Kitten helpers")) + list.push( + "News : faint meowing heard around local cookie facilities; suggests new ingredient being tested." + ); + if (Game.Has("Kitten workers")) + list.push( + "News : crowds of meowing kittens with little hard hats reported near local cookie facilities." + ); + if (Game.Has("Kitten engineers")) + list.push( + "News : surroundings of local cookie facilities now overrun with kittens in adorable little suits. Authorities advise to stay away from the premises." + ); + if (Game.Has("Kitten overseers")) + list.push( + "News : locals report troupe of bossy kittens meowing adorable orders at passersby." + ); + if (Game.Has("Kitten managers")) + list.push( + 'News : local office cubicles invaded with armies of stern-looking kittens asking employees "what\'s happening, meow".' + ); + if (Game.Has("Kitten accountants")) + list.push( + "News : tiny felines show sudden and amazing proficiency with fuzzy mathematics and pawlinomials, baffling scientists and pet store owners." + ); + if (Game.Has("Kitten specialists")) + list.push( + "News : new kitten college opening next week, offers courses on cookie-making and catnip studies." + ); + if (Game.Has("Kitten experts")) + list.push( + "News : unemployment rates soaring as woefully adorable little cats nab jobs on all levels of expertise, says study." + ); + if (Game.Has("Kitten consultants")) + list.push( + 'News : "In the future, your job will most likely be done by a cat", predicts suspiciously furry futurologist.' + ); + if (Game.Has("Kitten assistants to the regional manager")) + list.push( + "News : strange kittens with peculiar opinions on martial arts spotted loitering on local beet farms!" + ); + if (Game.Has("Kitten marketeers")) + list.push( + "News : nonsensical kitten billboards crop up all over countryside, trying to sell people the cookies they already get for free!" + ); + if (Game.Has("Kitten analysts")) + list.push( + "News : are your spending habits sensible? For a hefty fee, these kitten analysts will tell you!" + ); + if (Game.Has("Kitten executives")) + list.push( + "News : kittens strutting around in hot little business suits shouting cut-throat orders at their assistants, possibly the cutest thing this reporter has ever seen!" + ); + if (Game.Has("Kitten admins")) + list.push( + "News : all systems nominal, claim kitten admins obviously in way over their heads." + ); + if (Game.Has("Kitten angels")) + list.push( + 'News : "Try to ignore any ghostly felines that may be purring inside your ears," warn scientists. "They\'ll just lure you into making poor life choices."' + ); + if (Game.Has("Kitten wages")) + list.push( + "News : kittens break glass ceiling! Do they have any idea how expensive those are!" + ); + if (Game.HasAchiev("Jellicles")) + list.push( + "News : local kittens involved in misguided musical production, leave audience perturbed and unnerved." + ); + } + + if (Game.HasAchiev("Dude, sweet") && Math.random() < 0.2) + list.push( + choose([ + "News : major sugar-smuggling ring dismantled by authorities; " + + Math.floor(Math.random() * 30 + 3) + + " tons of sugar lumps seized, " + + Math.floor(Math.random() * 48 + 2) + + " suspects apprehended.", + "News : authorities warn tourists not to buy bootleg sugar lumps from street peddlers - \"You think you're getting a sweet deal, but what you're being sold is really just ordinary cocaine\", says agent.", + "News : pro-diabetes movement protests against sugar-shaming. \"I've eaten nothing but sugar lumps for the past " + + Math.floor(Math.random() * 10 + 4) + + " years and I'm feeling great!\", says woman with friable skin.", + "News : experts in bitter disagreement over whether sugar consumption turns children sluggish or hyperactive.", + "News : fishermen deplore upturn in fish tooth decay as sugar lumps-hauling cargo sinks into the ocean.", + "News : rare black sugar lump that captivated millions in unprecedented auction revealed to be common toxic fungus.", + 'News : "Back in my day, sugar lumps were these little cubes you\'d put in your tea, not those fist-sized monstrosities people eat for lunch", whines curmudgeon with failing memory.', + "News : sugar lump-snacking fad sweeps the nation; dentists everywhere rejoice.", + ]) + ); + + if (Math.random() < 0.001) { + //apologies to Will Wright + list.push( + "You have been chosen. They will come soon.", + "They're coming soon. Maybe you should think twice about opening the door.", + "The end is near. Make preparations.", + "News : broccoli tops for moms, last for kids; dads indifferent.", + "News : middle age a hoax, declares study; turns out to be bad posture after all.", + "News : kitties want answers in possible Kitty Kibble shortage." + ); + } + + if (Game.cookiesEarned >= 10000) + list.push( + "News : " + + choose([ + "cookies found to " + + choose([ + "increase lifespan", + "sensibly increase intelligence", + "reverse aging", + "decrease hair loss", + "prevent arthritis", + "cure blindness", + ]) + + " in " + + choose(animals) + + "!", + "cookies found to make " + + choose(animals) + + " " + + choose([ + "more docile", + "more handsome", + "nicer", + "less hungry", + "more pragmatic", + "tastier", + ]) + + "!", + "cookies tested on " + + choose(animals) + + ", found to have no ill effects.", + "cookies unexpectedly popular among " + choose(animals) + "!", + "unsightly lumps found on " + + choose(animals) + + ' near cookie facility; "they\'ve pretty much always looked like that", say biologists.', + "new species of " + + choose(animals) + + ' discovered in distant country; "yup, tastes like cookies", says biologist.', + "cookies go well with " + + choose([ + choose([ + "roasted", + "toasted", + "boiled", + "sauteed", + "minced", + ]) + + " " + + choose(animals), + choose([ + "sushi", + "soup", + "carpaccio", + "steak", + "nuggets", + ]) + + " made from " + + choose(animals), + ]) + + ", says controversial chef.", + '"do your cookies contain ' + + choose(animals) + + '?", asks PSA warning against counterfeit cookies.', + "doctors recommend twice-daily consumption of fresh cookies.", + "doctors warn against chocolate chip-snorting teen fad.", + "doctors advise against new cookie-free fad diet.", + 'doctors warn mothers about the dangers of "home-made cookies".', + ]), + 'News : "' + + choose([ + "I'm all about cookies", + "I just can't stop eating cookies. I think I seriously need help", + "I guess I have a cookie problem", + "I'm not addicted to cookies. That's just speculation by fans with too much free time", + "my upcoming album contains 3 songs about cookies", + "I've had dreams about cookies 3 nights in a row now. I'm a bit worried honestly", + "accusations of cookie abuse are only vile slander", + "cookies really helped me when I was feeling low", + "cookies are the secret behind my perfect skin", + "cookies helped me stay sane while filming my upcoming movie", + "cookies helped me stay thin and healthy", + "I'll say one word, just one : cookies", + "alright, I'll say it - I've never eaten a single cookie in my life", + ]) + + '", reveals celebrity.', + choose([ + 'News : scientist predicts imminent cookie-related "end of the world"; becomes joke among peers.', + "News : man robs bank, buys cookies.", + "News : scientists establish that the deal with airline food is, in fact, a critical lack of cookies.", + "News : hundreds of tons of cookies dumped into starving country from airplanes; thousands dead, nation grateful.", + 'News : new study suggests cookies neither speed up nor slow down aging, but instead "take you in a different direction".', + "News : overgrown cookies found in fishing nets, raise questions about hormone baking.", + 'News : "all-you-can-eat" cookie restaurant opens in big city; waiters trampled in minutes.', + 'News : man dies in cookie-eating contest; "a less-than-impressive performance", says judge.', + 'News : what makes cookies taste so right? "Probably all the [*****] they put in them", says anonymous tipper.', + 'News : man found allergic to cookies; "what a weirdo", says family.', + "News : foreign politician involved in cookie-smuggling scandal.", + "News : cookies now more popular than " + + choose([ + "cough drops", + "broccoli", + "smoked herring", + "cheese", + "video games", + "stable jobs", + "relationships", + "time travel", + "cat videos", + "tango", + "fashion", + "television", + "nuclear warfare", + "whatever it is we ate before", + "politics", + "oxygen", + "lamps", + ]) + + ", says study.", + "News : obesity epidemic strikes nation; experts blame " + + choose([ + "twerking", + "that darn rap music", + "video-games", + "lack of cookies", + "mysterious ghostly entities", + "aliens", + "parents", + "schools", + "comic-books", + "cookie-snorting fad", + ]) + + ".", + 'News : cookie shortage strikes town, people forced to eat cupcakes; "just not the same", concedes mayor.', + 'News : "you gotta admit, all this cookie stuff is a bit ominous", says confused idiot.', + //'News : scientists advise getting used to cookies suffusing every aspect of life; "this is the new normal", expert says.', + //'News : doctors advise against wearing face masks when going outside. "You never know when you might need a cookie... a mask would just get in the way."',//these were written back when covid hadn't really done much damage yet but they just feel in poor taste now + "News : is there life on Mars? Various chocolate bar manufacturers currently under investigation for bacterial contaminants.", + 'News : "so I guess that\'s a thing now", scientist comments on cookie particles now present in virtually all steel manufactured since cookie production ramped up worldwide.', + "News : trace amounts of cookie particles detected in most living creatures, some of which adapting them as part of new and exotic metabolic processes.", + ]), + choose([ + 'News : movie cancelled from lack of actors; "everybody\'s at home eating cookies", laments director.', + "News : comedian forced to cancel cookie routine due to unrelated indigestion.", + "News : new cookie-based religion sweeps the nation.", + "News : fossil records show cookie-based organisms prevalent during Cambrian explosion, scientists say.", + 'News : mysterious illegal cookies seized; "tastes terrible", says police.', + 'News : man found dead after ingesting cookie; investigators favor "mafia snitch" hypothesis.', + 'News : "the universe pretty much loops on itself," suggests researcher; "it\'s cookies all the way down."', + "News : minor cookie-related incident turns whole town to ashes; neighboring cities asked to chip in for reconstruction.", + "News : is our media controlled by the cookie industry? This could very well be the case, says crackpot conspiracy theorist.", + "News : " + + choose([ + 'cookie-flavored popcorn pretty damn popular; "we kinda expected that", say scientists.', + "cookie-flavored cereals break all known cereal-related records", + "cookies popular among all age groups, including fetuses, says study.", + "cookie-flavored popcorn sales exploded during screening of Grandmothers II : The Moistening.", + ]), + "News : all-cookie restaurant opening downtown. Dishes such as braised cookies, cookie thermidor, and for dessert : crepes.", + 'News : "Ook", says interviewed orangutan.', + "News : cookies could be the key to " + + choose([ + "eternal life", + "infinite riches", + "eternal youth", + "eternal beauty", + "curing baldness", + "world peace", + "solving world hunger", + "ending all wars world-wide", + "making contact with extraterrestrial life", + "mind-reading", + "better living", + "better eating", + "more interesting TV shows", + "faster-than-light travel", + "quantum baking", + "chocolaty goodness", + "gooder thoughtness", + ]) + + ", say scientists.", + "News : flavor text " + + choose([ + "not particularly flavorful", + "kind of unsavory", + '"rather bland"', + "pretty spicy lately", + ]) + + ", study finds.", + ]), + choose([ + 'News : what do golden cookies taste like? Study reveals a flavor "somewhere between spearmint and liquorice".', + 'News : what do wrath cookies taste like? Study reveals a flavor "somewhere between blood sausage and seawater".', + "News : " + + Game.bakeryName + + '-brand cookies "' + + choose([ + "much less soggy", + "much tastier", + "relatively less crappy", + "marginally less awful", + "less toxic", + "possibly more edible", + "more fashionable", + "slightly nicer", + "trendier", + "arguably healthier", + "objectively better choice", + "slightly less terrible", + "decidedly cookier", + "a tad cheaper", + ]) + + ' than competitors", says consumer survey.', + 'News : "' + + Game.bakeryName + + "\" set to be this year's most popular baby name.", + "News : new popularity survey says " + + Game.bakeryName + + "'s the word when it comes to cookies.", + "News : major city being renamed " + + Game.bakeryName + + "ville after world-famous cookie manufacturer.", + "News : " + + choose([ + "street", + "school", + "nursing home", + "stadium", + "new fast food chain", + "new planet", + "new disease", + "flesh-eating bacteria", + "deadly virus", + "new species of " + choose(animals), + "new law", + "baby", + "programming language", + ]) + + " to be named after " + + Game.bakeryName + + ", the world-famous cookie manufacturer.", + "News : don't miss tonight's biopic on " + + Game.bakeryName + + "'s irresistible rise to success!", + "News : don't miss tonight's interview of " + + Game.bakeryName + + " by " + + choose([ + "Bloprah", + "Blavid Bletterman", + "Blimmy Blimmel", + "Blellen Blegeneres", + "Blimmy Blallon", + "Blonan Blo'Brien", + "Blay Bleno", + "Blon Blewart", + "Bleven Blolbert", + "Lord Toxikhron of dimension 7-B19", + Game.bakeryName + "'s own evil clone", + ]) + + "!", + 'News : people all over the internet still scratching their heads over nonsensical reference : "Okay, but why an egg?"', + 'News : viral video "Too Many Cookies" could be "a grim commentary on the impending crisis our world is about to face", says famous economist.', + 'News : "memes from last year somehow still relevant", deplore experts.', + 'News : cookie emoji most popular among teenagers, far ahead of "judgmental OK hand sign" and "shifty-looking dark moon", says study.', + ]), + choose([ + "News : births of suspiciously bald babies on the rise; ancient alien cabal denies involvement.", + 'News : "at this point, cookies permeate the economy", says economist. "If we start eating anything else, we\'re all dead."', + "News : pun in headline infuriates town, causes riot. 21 wounded, 5 dead; mayor still missing.", + "Nws : ky btwn W and R brokn, plas snd nw typwritr ASAP.", + 'Neeeeews : "neeeew EEEEEE keeeeey working fineeeeeeeee", reeeports gleeeeeeeeful journalist.', + "News : cookies now illegal in some backwards country nobody cares about. Political tensions rising; war soon, hopefully.", + "News : irate radio host rambles about pixelated icons. \"None of the cookies are aligned! Can't anyone else see it? I feel like I'm taking crazy pills!\"", + "News : nation cheers as legislators finally outlaw " + + choose([ + "cookie criticism", + "playing other games than Cookie Clicker", + "pineapple on pizza", + "lack of cheerfulness", + "mosquitoes", + "broccoli", + "the human spleen", + "bad weather", + "clickbait", + "dabbing", + "the internet", + "memes", + "millennials", + ]) + + "!", + "News : " + + choose(["local", "area"]) + + " " + + choose(["man", "woman"]) + + ' goes on journey of introspection, finds cookies : "I honestly don\'t know what I was expecting."', + "News : " + + choose(["man", "woman"]) + + " wakes up from coma, " + + choose([ + "tries cookie for the first time, dies.", + "regrets it instantly.", + 'wonders "why everything is cookies now".', + 'babbles incoherently about some supposed "non-cookie food" we used to eat.', + "cites cookies as main motivator.", + "asks for cookies.", + ]), + "News : pet " + + choose(animals) + + ", dangerous fad or juicy new market?", + "News : person typing these wouldn't mind someone else breaking the news to THEM, for a change.", + 'News : "average person bakes ' + + Beautify(Math.ceil(Game.cookiesEarned / 7300000000)) + + " cookie" + + (Math.ceil(Game.cookiesEarned / 7300000000) == 1 ? "" : "s") + + ' a year" factoid actually just statistical error; ' + + Game.bakeryName + + ", who has produced " + + Beautify(Game.cookiesEarned) + + " cookies in their lifetime, is an outlier and should not have been counted.", + ]) + ); + } + } + + if (list.length == 0) { + if (loreProgress <= 0) + list.push( + loc( + "You feel like making cookies. But nobody wants to eat your cookies." + ) + ); + else if (loreProgress <= 1) + list.push( + loc( + "Your first batch goes to the trash. The neighborhood raccoon barely touches it." + ) + ); + else if (loreProgress <= 2) + list.push(loc("Your family accepts to try some of your cookies.")); + else if (loreProgress <= 3) + list.push( + loc("Your cookies are popular in the neighborhood."), + loc("People are starting to talk about your cookies.") + ); + else if (loreProgress <= 4) + list.push( + loc("Your cookies are talked about for miles around."), + loc("Your cookies are renowned in the whole town!") + ); + else if (loreProgress <= 5) + list.push( + loc("Your cookies bring all the boys to the yard."), + loc("Your cookies now have their own website!") + ); + else if (loreProgress <= 6) + list.push( + loc("Your cookies are worth a lot of money."), + loc("Your cookies sell very well in distant countries.") + ); + else if (loreProgress <= 7) + list.push( + loc( + "People come from very far away to get a taste of your cookies." + ), + loc( + "Kings and queens from all over the world are enjoying your cookies." + ) + ); + else if (loreProgress <= 8) + list.push( + loc("There are now museums dedicated to your cookies."), + loc("A national day has been created in honor of your cookies.") + ); + else if (loreProgress <= 9) + list.push( + loc("Your cookies have been named a part of the world wonders."), + loc("History books now include a whole chapter about your cookies.") + ); + else if (loreProgress <= 10) + list.push( + loc("Your cookies have been placed under government surveillance."), + loc("The whole planet is enjoying your cookies!") + ); + else if (loreProgress <= 11) + list.push( + loc( + "Strange creatures from neighboring planets wish to try your cookies." + ), + loc( + "Elder gods from the whole cosmos have awoken to taste your cookies." + ) + ); + else if (loreProgress <= 12) + list.push( + loc( + "Beings from other dimensions lapse into existence just to get a taste of your cookies." + ), + loc("Your cookies have achieved sentience.") + ); + else if (loreProgress <= 13) + list.push( + loc( + "The universe has now turned into cookie dough, to the molecular level." + ), + loc( + "Your cookies are rewriting the fundamental laws of the universe." + ) + ); + else if (loreProgress <= 14) + list.push( + loc( + "A local news station runs a 10-minute segment about your cookies. Success!
(you win a cookie)" + ), + loc("it's time to stop playing") + ); + } + + //if (Game.elderWrath>0 && (Game.pledges==0 || Math.random()<0.2)) + if ( + Game.elderWrath > 0 && + ((Game.pledges == 0 && Game.resets == 0 && Math.random() < 0.3) || + Math.random() < 0.03) + ) { + list = []; + if (Game.elderWrath == 1) + list.push( + EN + ? choose([ + "News : millions of old ladies reported missing!", + "News : processions of old ladies sighted around cookie facilities!", + "News : families around the continent report agitated, transfixed grandmothers!", + "News : doctors swarmed by cases of old women with glassy eyes and a foamy mouth!", + 'News : nurses report "strange scent of cookie dough" around female elderly patients!', + ]) + : NEWS + choose(loc("Ticker (grandma invasion start)")) + ); + if (Game.elderWrath == 2) + list.push( + EN + ? choose([ + "News : town in disarray as strange old ladies break into homes to abduct infants and baking utensils!", + "News : sightings of old ladies with glowing eyes terrify local population!", + 'News : retirement homes report "female residents slowly congealing in their seats"!', + "News : whole continent undergoing mass exodus of old ladies!", + "News : old women freeze in place in streets, ooze warm sugary syrup!", + ]) + : NEWS + choose(loc("Ticker (grandma invasion rise)")) + ); + if (Game.elderWrath == 3) + list.push( + EN + ? choose([ + 'News : large "flesh highways" scar continent, stretch between various cookie facilities!', + 'News : wrinkled "flesh tendrils" visible from space!', + 'News : remains of "old ladies" found frozen in the middle of growing fleshy structures!', + "News : all hope lost as writhing mass of flesh and dough engulfs whole city!", + "News : nightmare continues as wrinkled acres of flesh expand at alarming speeds!", + ]) + : NEWS + choose(loc("Ticker (grandma invasion full)")) + ); + } + + if (EN && Game.season == "fools") { + list = []; + + if (Game.cookiesEarned >= 1000) + list.push( + choose([ + choose([ + "Your office chair is really comfortable.", + "Profit's in the air!", + "Business meetings are such a joy!", + "What a great view from your office!", + "Smell that? That's capitalism, baby!", + "You truly love answering emails.", + "Working hard, or hardly working?", + "Another day in paradise!", + "Expensive lunch time!", + "Another government bailout coming up! Splendid!", + "These profits are doing wonderful things for your skin.", + "You daydream for a moment about a world without taxes.", + "You'll worry about environmental damage when you're dead!", + "Yay, office supplies!", + "Sweet, those new staplers just came in!", + "Ohh, coffee break!", + ]), + choose([ + "You've spent the whole day", + "Another great day", + "First order of business today:", + "Why, you truly enjoy", + "What next? That's right,", + "You check what's next on the agenda. Oh boy,", + ]) + + " " + + choose([ + "signing contracts", + "filling out forms", + "touching base with the team", + "examining exciting new prospects", + "playing with your desk toys", + "getting new nameplates done", + "attending seminars", + "videoconferencing", + "hiring dynamic young executives", + "meeting new investors", + "updating your rolodex", + "pumping up those numbers", + "punching in some numbers", + "getting investigated for workers' rights violations", + "reorganizing documents", + "belittling underlings", + "reviewing employee performance", + "revising company policies", + "downsizing", + "pulling yourself up by your bootstraps", + "adjusting your tie", + "performing totally normal human activities", + "recentering yourself in the scream room", + "immanentizing the eschaton", + "shredding some sensitive documents", + "comparing business cards", + "pondering the meaning of your existence", + "listening to the roaring emptiness inside your soul", + "playing minigolf in your office", + ]) + + "!", + "The word of the day is: " + + choose([ + "viral", + "search engine optimization", + "blags and wobsites", + "social networks", + "webinette", + "staycation", + "user experience", + "crowdfunding", + "carbon neutral", + "big data", + "machine learning", + "disrupting", + "influencers", + "monoconsensual transactions", + "sustainable", + "freemium", + "incentives", + "grassroots", + "web 3.0" /*this was before this whole crypto mess i'm so sorry*/, + "logistics", + "leveraging", + "branding", + "proactive", + "synergizing", + "market research", + "demographics", + "pie charts", + "blogular", + "blogulacious", + "blogastic", + "authenticity", + "plastics", + "electronic mail", + "cellular phones", + "rap music", + "bulbs", + "goblinization", + "straight-to-bakery", + "microbakeries", + "chocolativity", + "flavorfulness", + "tastyfication", + "sugar offsets", + "activated wheat", + "reification", + "immanentize the eschaton", + "cookies, I guess", + ]) + + ".", + ]) + ); + if (Game.cookiesEarned >= 1000 && Math.random() < 0.05) + list.push( + choose([ + "If you could get some more cookies baked, that'd be great.", + "So. About those TPS reports.", + "Hmm, you've got some video tapes to return.", + "They'll pay. They'll all pay.", + "You haven't even begun to peak.", + "There is an idea of a " + + Game.bakeryName + + ". Some kind of abstraction. But there is no real you, only an entity. Something illusory.", + "This was a terrible idea!", + ]) + ); + + if (Game.TickerN % 2 == 0) { + if (Game.Objects["Grandma"].amount > 0) + list.push( + choose([ + "Your rolling pins are rolling and pinning!", + "Production is steady!", + ]) + ); + + if (Game.Objects["Grandma"].amount > 0) + list.push( + choose([ + "Your ovens are diligently baking more and more cookies.", + "Your ovens burn a whole batch. Ah well! Still good.", + ]) + ); + + if (Game.Objects["Farm"].amount > 0) + list.push( + choose([ + "Scores of cookies come out of your kitchens.", + "Today, new recruits are joining your kitchens!", + ]) + ); + + if (Game.Objects["Factory"].amount > 0) + list.push( + choose([ + "Your factories are producing an unending stream of baked goods.", + "Your factory workers decide to go on strike!", + "It's safety inspection day in your factories.", + ]) + ); + + if (Game.Objects["Mine"].amount > 0) + list.push( + choose([ + "Your secret recipes are kept safely inside a giant underground vault.", + "Your chefs are working on new secret recipes!", + ]) + ); + + if (Game.Objects["Shipment"].amount > 0) + list.push( + choose([ + "Your supermarkets are bustling with happy, hungry customers.", + "Your supermarkets are full of cookie merch!", + ]) + ); + + if (Game.Objects["Alchemy lab"].amount > 0) + list.push( + choose([ + "It's a new trading day at the stock exchange, and traders can't get enough of your shares!", + "Your stock is doubling in value by the minute!", + ]) + ); + + if (Game.Objects["Portal"].amount > 0) + list.push( + choose([ + "You just released a new TV show episode!", + "Your cookie-themed TV show is being adapted into a new movie!", + ]) + ); + + if (Game.Objects["Time machine"].amount > 0) + list.push( + choose([ + "Your theme parks are doing well - puddles of vomit and roller-coaster casualties are being swept under the rug!", + "Visitors are stuffing themselves with cookies before riding your roller-coasters. You might want to hire more clean-up crews.", + ]) + ); + + if (Game.Objects["Antimatter condenser"].amount > 0) + list.push( + choose([ + "Cookiecoin is officially the most mined digital currency in the history of mankind!", + "Cookiecoin piracy is rampant!", + ]) + ); + + if (Game.Objects["Prism"].amount > 0) + list.push( + choose([ + "Your corporate nations just gained a new parliament!", + "You've just annexed a new nation!", + "A new nation joins the grand cookie conglomerate!", + ]) + ); + + if (Game.Objects["Chancemaker"].amount > 0) + list.push( + choose([ + "Your intergalactic federation of cookie-sponsored planets reports record-breaking profits!", + "Billions of unwashed aliens are pleased to join your workforce as you annex their planet!", + "New toll opened on interstellar highway, funnelling more profits into the cookie economy!", + ]) + ); + + if (Game.Objects["Fractal engine"].amount > 0) + list.push( + choose([ + "Your cookie-based political party is doing fantastic in the polls!", + "New pro-cookie law passes without a hitch thanks to your firm grasp of the political ecosystem!", + "Your appointed senators are overturning cookie bans left and right!", + ]) + ); + + if (Game.Objects["Javascript console"].amount > 0) + list.push( + choose([ + "Cookies are now one of the defining aspects of mankind! Congratulations!", + "Time travelers report that this era will later come to be known, thanks to you, as the cookie millennium!", + "Cookies now deeply rooted in human culture, likely puzzling future historians!", + ]) + ); + + if (Game.Objects["Idleverse"].amount > 0) + list.push( + choose([ + "Public aghast as all remaining aspects of their lives overtaken by universal cookie industry!", + "Every single product currently sold in the observable universe can be traced back to your company! And that's a good thing.", + "Antitrust laws let out a helpless whimper before being engulfed by your sprawling empire!", + ]) + ); + + if (Game.Objects["Cortex baker"].amount > 0) + list.push( + choose([ + "Bold new law proposal would grant default ownership of every new idea by anyone anywhere to " + + Game.bakeryName + + "'s bakery!", + "Bakery think tanks accidentally reinvent cookies for the 57th time this week!", + "Bakery think tanks invent entire new form of human communication to advertise and boost cookie sales!", + ]) + ); + } + + if (loreProgress <= 0) + list.push("Such a grand day to begin a new business."); + else if (loreProgress <= 1) list.push("You're baking up a storm!"); + else if (loreProgress <= 2) + list.push( + "You are confident that one day, your cookie company will be the greatest on the market!" + ); + else if (loreProgress <= 3) list.push("Business is picking up!"); + else if (loreProgress <= 4) + list.push("You're making sales left and right!"); + else if (loreProgress <= 5) + list.push("Everyone wants to buy your cookies!"); + else if (loreProgress <= 6) + list.push("You are now spending most of your day signing contracts!"); + else if (loreProgress <= 7) + list.push('You\'ve been elected "business tycoon of the year"!'); + else if (loreProgress <= 8) + list.push( + "Your cookies are a worldwide sensation! Well done, old chap!" + ); + else if (loreProgress <= 9) + list.push( + "Your brand has made its way into popular culture. Children recite your slogans and adults reminisce them fondly!" + ); + else if (loreProgress <= 10) + list.push( + "A business day like any other. It's good to be at the top!" + ); + else if (loreProgress <= 11) + list.push( + "You look back on your career. It's been a fascinating journey, building your baking empire from the ground up." + ); + } + + for (var i = 0; i < Game.modHooks["ticker"].length; i++) { + var arr = Game.modHooks["ticker"][i](); + if (arr) list = list.concat(arr); + } + + Game.TickerEffect = 0; + + if ( + !manual && + Game.T > Game.fps * 10 && + Game.Has("Fortune cookies") && + Math.random() < (Game.HasAchiev("O Fortuna") ? 0.04 : 0.02) + ) { + var fortunes = []; + for (var i in Game.Tiers["fortune"].upgrades) { + var it = Game.Tiers["fortune"].upgrades[i]; + if (!Game.HasUnlocked(it.name)) fortunes.push(it); + } + + if (!Game.fortuneGC) fortunes.push("fortuneGC"); + if (!Game.fortuneCPS) fortunes.push("fortuneCPS"); + + if (fortunes.length > 0) { + list = []; + var me = choose(fortunes); + Game.TickerEffect = { type: "fortune", sub: me }; + + if (me == "fortuneGC") + me = loc( + "Today is your lucky day!" + ); /*
Click here for a golden cookie.';*/ + else if (me == "fortuneCPS") { + Math.seedrandom(Game.seed + "-fortune"); + me = + loc("Your lucky numbers are:") + + " " + + Math.floor(Math.random() * 100) + + " " + + Math.floor(Math.random() * 100) + + " " + + Math.floor(Math.random() * 100) + + " " + + Math.floor( + Math.random() * 100 + ) /*+'
Click here to gain one hour of your CpS.'*/; + Math.seedrandom(); + } else { + if (EN) { + me = + me.dname.substring(me.name.indexOf("#")) + + " : " + + me.baseDesc.substring(me.baseDesc.indexOf("") + 3); + me = me.substring(0, me.length - 4); + } else if (me.buildingTie) + me = + me.dname + + " : " + + loc( + choose([ + "Never forget your %1.", + "Pay close attention to the humble %1.", + "You've been neglecting your %1.", + "Remember to visit your %1 sometimes.", + ]), + me.buildingTie.single + ); + else + me = + me.dname + + " : " + + loc( + choose([ + "You don't know what you have until you've lost it.", + "Remember to take breaks.", + "Hey, what's up. I'm a fortune cookie.", + "You think you have it bad? Look at me.", + ]) + ); + } + me = + '
' + + me + + "
"; + list = [me]; + } + } + + if (Game.windowW < Game.tickerTooNarrow) + list = [ + '
' + + NEWS + + (EN ? "help!" : loc("help me!")) + + "
", + ]; + + Game.TickerAge = Game.fps * 10; + Game.Ticker = choose(list); + Game.AddToLog(Game.Ticker); + Game.TickerN++; + Game.TickerDraw(); + }; + Game.tickerL = l("commentsText1"); + Game.tickerBelowL = l("commentsText2"); + Game.tickerTooNarrow = 900; + Game.TickerDraw = function () { + var str = ""; + if (Game.Ticker != "") str = Game.Ticker; + Game.tickerBelowL.innerHTML = Game.tickerL.innerHTML; + Game.tickerL.innerHTML = str; + + Game.tickerBelowL.className = "commentsText"; + void Game.tickerBelowL.offsetWidth; + Game.tickerBelowL.className = "commentsText risingAway"; + Game.tickerL.className = "commentsText"; + void Game.tickerL.offsetWidth; + Game.tickerL.className = "commentsText risingUp"; + }; + AddEvent(Game.tickerL, "click", function (event) { + Game.Ticker = ""; + Game.TickerClicks++; + if (Game.windowW < Game.tickerTooNarrow) { + Game.Win("Stifling the press"); + } else if (Game.TickerClicks >= 50) { + Game.Win("Tabloid addiction"); + } + + if (Game.TickerEffect && Game.TickerEffect.type == "fortune") { + PlaySound("snd/fortune.mp3", 1); + Game.SparkleAt(Game.mouseX, Game.mouseY); + var effect = Game.TickerEffect.sub; + if (effect == "fortuneGC") { + Game.Notify( + loc("Fortune!"), + loc("A golden cookie has appeared."), + [10, 32] + ); + Game.fortuneGC = 1; + var newShimmer = new Game.shimmer("golden", { noWrath: true }); + } else if (effect == "fortuneCPS") { + Game.Notify( + loc("Fortune!"), + loc( + "You gain one hour of your CpS (capped at double your bank)." + ), + [10, 32] + ); + Game.fortuneCPS = 1; + Game.Earn(Math.min(Game.cookiesPs * 60 * 60, Game.cookies)); + } else { + Game.Notify( + effect.dname, + loc("You've unlocked a new upgrade."), + effect.icon + ); + effect.unlock(); + } + } + + Game.TickerEffect = 0; + }); + + Game.Log = []; + Game.AddToLog = function (what) { + Game.Log.unshift(what); + if (Game.Log.length > 100) Game.Log.pop(); + }; + + Game.vanilla = 1; + /*===================================================================================== + BUILDINGS + =======================================================================================*/ + Game.last = 0; + + Game.storeToRefresh = 1; + Game.priceIncrease = 1.15; + Game.buyBulk = 1; + Game.buyMode = 1; //1 for buy, -1 for sell + Game.buyBulkOld = Game.buyBulk; //used to undo changes from holding Shift or Ctrl + Game.buyBulkShortcut = 0; //are we pressing Shift or Ctrl? + + Game.Objects = {}; + Game.ObjectsById = []; + Game.ObjectsN = 0; + Game.BuildingsOwned = 0; + Game.Object = function ( + name, + commonName, + desc, + icon, + iconColumn, + art, + price, + cps, + buyFunction + ) { + this.id = Game.ObjectsN; + this.name = name; + this.dname = name; + this.displayName = this.name; + commonName = commonName.split("|"); + this.single = commonName[0]; + this.plural = commonName[1]; + this.bsingle = this.single; + this.bplural = this.plural; //store untranslated as we use those too + this.actionName = commonName[2]; + this.extraName = commonName[3]; + this.extraPlural = commonName[4]; + this.desc = desc; + if (true) { + //if (EN) + this.dname = loc(this.name); + this.single = loc(this.single); + this.plural = loc(this.plural); + this.desc = loc(FindLocStringByPart(this.name + " quote")); + } + this.basePrice = price; + this.price = this.basePrice; + this.bulkPrice = this.price; + this.cps = cps; + this.baseCps = this.cps; + this.mouseOn = false; + this.mousePos = [-100, -100]; + this.productionAchievs = []; + + this.n = this.id; + if (this.n != 0) { + //new automated price and CpS curves + //this.baseCps=Math.ceil(((this.n*0.5)*Math.pow(this.n*1,this.n*0.9))*10)/10; + //this.baseCps=Math.ceil((Math.pow(this.n*1,this.n*0.5+2.35))*10)/10;//by a fortunate coincidence, this gives the 3rd, 4th and 5th buildings a CpS of 10, 69 and 420 + this.baseCps = + Math.ceil(Math.pow(this.n * 1, this.n * 0.5 + 2) * 10) / 10; //0.45 used to be 0.5 + //this.baseCps=Math.ceil((Math.pow(this.n*1,this.n*0.45+2.10))*10)/10; + //clamp 14,467,199 to 14,000,000 (there's probably a more elegant way to do that) + var digits = + Math.pow( + 10, + Math.ceil(Math.log(Math.ceil(this.baseCps)) / Math.LN10) + ) / 100; + this.baseCps = Math.round(this.baseCps / digits) * digits; + + this.basePrice = + (this.n * 1 + 9 + (this.n < 5 ? 0 : Math.pow(this.n - 5, 1.75) * 5)) * + Math.pow(10, this.n) * + Math.max(1, this.n - 14); + //this.basePrice=(this.n*2.5+7.5)*Math.pow(10,this.n); + var digits = + Math.pow( + 10, + Math.ceil(Math.log(Math.ceil(this.basePrice)) / Math.LN10) + ) / 100; + this.basePrice = Math.round(this.basePrice / digits) * digits; + if (this.id >= 16) this.basePrice *= 10; + if (this.id >= 17) this.basePrice *= 10; + if (this.id >= 18) this.basePrice *= 10; + if (this.id >= 19) this.basePrice *= 10; + this.price = this.basePrice; + this.bulkPrice = this.price; + } + + this.totalCookies = 0; + this.storedCps = 0; + this.storedTotalCps = 0; + this.icon = icon; + this.iconColumn = iconColumn; + this.art = art; + if (art.base) { + art.pic = art.base + ".png"; + art.bg = art.base + "Background.png"; + } + this.buyFunction = buyFunction; + this.locked = 1; + this.level = 0; + this.vanilla = Game.vanilla; + + this.tieredUpgrades = {}; + this.tieredAchievs = {}; + this.synergies = []; + this.fortune = 0; + + this.amount = 0; + this.bought = 0; + this.highest = 0; + this.free = 0; + + this.eachFrame = 0; + + this.minigameUrl = 0; //if this is defined, load the specified script if the building's level is at least 1 + this.minigameName = 0; + this.onMinigame = false; + this.minigameLoaded = false; + + this.switchMinigame = function ( + on //change whether we're on the building's minigame + ) { + if (!Game.isMinigameReady(this)) on = false; + if (on == -1) on = !this.onMinigame; + this.onMinigame = on; + if (this.id != 0) { + if (this.onMinigame) { + l("row" + this.id).classList.add("onMinigame"); + //l('rowSpecial'+this.id).style.display='block'; + //l('rowCanvas'+this.id).style.display='none'; + if (this.minigame.onResize) this.minigame.onResize(); + } else { + l("row" + this.id).classList.remove("onMinigame"); + //l('rowSpecial'+this.id).style.display='none'; + //l('rowCanvas'+this.id).style.display='block'; + } + } + this.refresh(); + }; + + this.getPrice = function (n) { + var price = + this.basePrice * + Math.pow(Game.priceIncrease, Math.max(0, this.amount - this.free)); + price = Game.modifyBuildingPrice(this, price); + return Math.ceil(price); + }; + this.getSumPrice = function ( + amount //return how much it would cost to buy [amount] more of this building + ) { + var price = 0; + for ( + var i = Math.max(0, this.amount); + i < Math.max(0, this.amount + amount); + i++ + ) { + price += + this.basePrice * + Math.pow(Game.priceIncrease, Math.max(0, i - this.free)); + } + price = Game.modifyBuildingPrice(this, price); + return Math.ceil(price); + }; + this.getReverseSumPrice = function ( + amount //return how much you'd get from selling [amount] of this building + ) { + var price = 0; + for ( + var i = Math.max(0, this.amount - amount); + i < Math.max(0, this.amount); + i++ + ) { + price += + this.basePrice * + Math.pow(Game.priceIncrease, Math.max(0, i - this.free)); + } + price = Game.modifyBuildingPrice(this, price); + price *= this.getSellMultiplier(); + return Math.ceil(price); + }; + this.getSellMultiplier = function () { + var giveBack = 0.25; + //if (Game.hasAura('Earth Shatterer')) giveBack=0.5; + giveBack *= 1 + Game.auraMult("Earth Shatterer"); + return giveBack; + }; + + this.buy = function (amount) { + if (Game.buyMode == -1) { + this.sell(Game.buyBulk, 1); + return 0; + } + var success = 0; + var moni = 0; + var bought = 0; + if (!amount) amount = Game.buyBulk; + if (amount == -1) amount = 1000; + for (var i = 0; i < amount; i++) { + var price = this.getPrice(); + if (Game.cookies >= price) { + bought++; + moni += price; + Game.Spend(price); + this.amount++; + this.bought++; + price = this.getPrice(); + this.price = price; + if (this.buyFunction) this.buyFunction(); + Game.recalculateGains = 1; + if (this.amount == 1 && this.id != 0) + l("row" + this.id).classList.add("enabled"); + this.highest = Math.max(this.highest, this.amount); + Game.BuildingsOwned++; + success = 1; + } + } + if (success) { + PlaySound("snd/buy" + choose([1, 2, 3, 4]) + ".mp3", 0.75); + this.refresh(); + } + //if (moni>0 && amount>1) Game.Notify(this.name,'Bought '+bought+' for '+Beautify(moni)+' cookies','',2); + }; + this.sell = function (amount, bypass) { + var success = 0; + var moni = 0; + var sold = 0; + if (amount == -1) amount = this.amount; + if (!amount) amount = Game.buyBulk; + for (var i = 0; i < amount; i++) { + var price = this.getPrice(); + var giveBack = this.getSellMultiplier(); + price = Math.floor(price * giveBack); + if (this.amount > 0) { + sold++; + moni += price; + Game.cookies += price; + Game.cookiesEarned = Math.max(Game.cookies, Game.cookiesEarned); //this is to avoid players getting the cheater achievement when selling buildings that have a higher price than they used to + this.amount--; + price = this.getPrice(); + this.price = price; + if (this.sellFunction) this.sellFunction(); + Game.recalculateGains = 1; + if (this.amount == 0 && this.id != 0) + l("row" + this.id).classList.remove("enabled"); + Game.BuildingsOwned--; + success = 1; + } + } + if (success && Game.hasGod) { + var godLvl = Game.hasGod("ruin"); + var old = Game.hasBuff("Devastation"); + if (old) { + if (godLvl == 1) old.multClick += sold * 0.01; + else if (godLvl == 2) old.multClick += sold * 0.005; + else if (godLvl == 3) old.multClick += sold * 0.0025; + } else { + if (godLvl == 1) Game.gainBuff("devastation", 10, 1 + sold * 0.01); + else if (godLvl == 2) + Game.gainBuff("devastation", 10, 1 + sold * 0.005); + else if (godLvl == 3) + Game.gainBuff("devastation", 10, 1 + sold * 0.0025); + } + } + if ( + success && + Game.shimmerTypes["golden"].n <= 0 && + Game.auraMult("Dragon Orbs") > 0 + ) { + var highestBuilding = 0; + for (var i in Game.Objects) { + if (Game.Objects[i].amount > 0) highestBuilding = Game.Objects[i]; + } + if ( + highestBuilding == this && + Math.random() < Game.auraMult("Dragon Orbs") * 0.1 + ) { + var buffsN = 0; + for (var ii in Game.buffs) { + buffsN++; + } + if (buffsN == 0) { + new Game.shimmer("golden"); + Game.Notify( + EN ? "Dragon Orbs!" : loc("Dragon Orbs"), + loc("Wish granted. Golden cookie spawned."), + [33, 25] + ); + } + } + } + if (success) { + PlaySound("snd/sell" + choose([1, 2, 3, 4]) + ".mp3", 0.75); + this.refresh(); + } + //if (moni>0) Game.Notify(this.name,'Sold '+sold+' for '+Beautify(moni)+' cookies','',2); + }; + this.sacrifice = function ( + amount //sell without getting back any money + ) { + var success = 0; + //var moni=0; + var sold = 0; + if (amount == -1) amount = this.amount; + if (!amount) amount = 1; + for (var i = 0; i < amount; i++) { + var price = this.getPrice(); + price = Math.floor(price * 0.5); + if (this.amount > 0) { + sold++; + //moni+=price; + //Game.cookies+=price; + //Game.cookiesEarned=Math.max(Game.cookies,Game.cookiesEarned); + this.amount--; + price = this.getPrice(); + this.price = price; + if (this.sellFunction) this.sellFunction(); + Game.recalculateGains = 1; + if (this.amount == 0 && this.id != 0) + l("row" + this.id).classList.remove("enabled"); + Game.BuildingsOwned--; + success = 1; + } + } + if (success) { + this.refresh(); + } + //if (moni>0) Game.Notify(this.name,'Sold '+sold+' for '+Beautify(moni)+' cookies','',2); + }; + this.buyFree = function ( + amount //unlike getFree, this still increases the price + ) { + for (var i = 0; i < amount; i++) { + if (Game.cookies >= price) { + this.amount++; + this.bought++; + this.price = this.getPrice(); + Game.recalculateGains = 1; + if (this.amount == 1 && this.id != 0) + l("row" + this.id).classList.add("enabled"); + this.highest = Math.max(this.highest, this.amount); + Game.BuildingsOwned++; + } + } + this.refresh(); + }; + this.getFree = function ( + amount //get X of this building for free, with the price behaving as if you still didn't have them + ) { + this.amount += amount; + this.bought += amount; + this.free += amount; + this.highest = Math.max(this.highest, this.amount); + Game.BuildingsOwned += amount; + this.highest = Math.max(this.highest, this.amount); + this.refresh(); + }; + this.getFreeRanks = function ( + amount //this building's price behaves as if you had X less of it + ) { + this.free += amount; + this.refresh(); + }; + + this.tooltip = function () { + var me = this; + var ariaText = ""; + var desc = me.desc; + var name = me.dname; + if (Game.season == "fools") { + if (!Game.foolObjects[me.name]) { + name = Game.foolObjects["Unknown"].name; + desc = Game.foolObjects["Unknown"].desc; + } else { + name = Game.foolObjects[me.name].name; + desc = Game.foolObjects[me.name].desc; + } + } + var icon = [me.iconColumn, 0]; + if (me.locked) { + name = "???"; + desc = "???"; + icon = [0, 7]; + } + //if (l('rowInfo'+me.id) && Game.drawT%10==0) l('rowInfoContent'+me.id).innerHTML='• '+me.amount+' '+(me.amount==1?me.single:me.plural)+'
• producing '+Beautify(me.storedTotalCps,1)+' '+(me.storedTotalCps==1?'cookie':'cookies')+' per second
• total : '+Beautify(me.totalCookies)+' '+(Math.floor(me.totalCookies)==1?'cookie':'cookies')+' '+me.actionName; + + var canBuy = false; + var price = me.bulkPrice; + if ( + (Game.buyMode == 1 && Game.cookies >= price) || + (Game.buyMode == -1 && me.amount > 0) + ) + canBuy = true; + + var synergiesStr = ""; + //note : might not be entirely accurate, math may need checking + if (me.amount > 0) { + var synergiesWith = {}; + var synergyBoost = 0; + + if (me.name == "Grandma") { + for (var i in Game.GrandmaSynergies) { + if (Game.Has(Game.GrandmaSynergies[i])) { + var other = Game.Upgrades[Game.GrandmaSynergies[i]].buildingTie; + var mult = me.amount * 0.01 * (1 / (other.id - 1)); + var boost = + other.storedTotalCps * Game.globalCpsMult - + (other.storedTotalCps * Game.globalCpsMult) / (1 + mult); + synergyBoost += boost; + if (!synergiesWith[other.plural]) + synergiesWith[other.plural] = 0; + synergiesWith[other.plural] += mult; + } + } + } else if (me.name == "Portal" && Game.Has("Elder Pact")) { + var other = Game.Objects["Grandma"]; + var boost = me.amount * 0.05 * other.amount * Game.globalCpsMult; + synergyBoost += boost; + if (!synergiesWith[other.plural]) synergiesWith[other.plural] = 0; + synergiesWith[other.plural] += + boost / (other.storedTotalCps * Game.globalCpsMult); + } + + for (var i in me.synergies) { + var it = me.synergies[i]; + if (Game.Has(it.name)) { + var weight = 0.05; + var other = it.buildingTie1; + if (me == it.buildingTie1) { + weight = 0.001; + other = it.buildingTie2; + } + var boost = + other.storedTotalCps * Game.globalCpsMult - + (other.storedTotalCps * Game.globalCpsMult) / + (1 + me.amount * weight); + synergyBoost += boost; + if (!synergiesWith[other.plural]) synergiesWith[other.plural] = 0; + synergiesWith[other.plural] += me.amount * weight; + } + } + if (synergyBoost > 0) { + for (var i in synergiesWith) { + if (synergiesStr != "") synergiesStr += ", "; + synergiesStr += + '' + + i + + " +" + + Beautify(synergiesWith[i] * 100, 1) + + "%"; + } + synergiesStr = + loc("...also boosting some other buildings:") + + " " + + synergiesStr + + " - " + + loc( + "all combined, these boosts account for %1 per second (%2% of total CpS)", + [ + loc("%1 cookie", LBeautify(synergyBoost, 1)), + Beautify((synergyBoost / Game.cookiesPs) * 100, 1), + ] + ); + } + } + + if (Game.prefs.screenreader) { + if (me.locked) ariaText = "This building is not yet unlocked. "; + else ariaText = name + ". "; + if (!me.locked) ariaText += "You own " + me.amount + ". "; + ariaText += + (canBuy ? "Can buy 1 for" : "Cannot afford the") + + " " + + Beautify(Math.round(price)) + + " cookies. "; + if (!me.locked && me.totalCookies > 0) { + ariaText += + "Each " + + me.single + + " produces " + + Beautify( + (me.storedTotalCps / me.amount) * Game.globalCpsMult, + 1 + ) + + " cookies per second. "; + ariaText += + Beautify(me.totalCookies) + + " cookies " + + me.actionName + + " so far. "; + } + if (!me.locked) ariaText += desc; + + var ariaLabel = l("ariaReader-product-" + me.id); + if (ariaLabel) + ariaLabel.innerHTML = ariaText.replace(/(<([^>]+)>)/gi, " "); + } + + return ( + '
' + + Beautify(Math.round(price)) + + "" + + Game.costDetails(price) + + '
' + + name + + "
" + + '
' + + loc("owned: %1", me.amount) + + "
" + + (me.free > 0 + ? '
' + loc("free: %1!", me.free) + "
" + : "") + + "
" + + '
' + + desc + + "
" + + (me.totalCookies > 0 + ? '
' + + (me.amount > 0 + ? '
' + + loc("each %1 produces %2 per second", [ + me.single, + loc( + "%1 cookie", + LBeautify( + (me.storedTotalCps / me.amount) * Game.globalCpsMult, + 1 + ) + ), + ]) + + "
" + : "") + + '
' + + loc("%1 producing %2 per second", [ + loc("%1 " + me.bsingle, LBeautify(me.amount)), + loc( + "%1 cookie", + LBeautify(me.storedTotalCps * Game.globalCpsMult, 1) + ), + ]) + + " (" + + loc( + "%1% of total CpS", + Beautify( + Game.cookiesPs > 0 + ? (me.amount > 0 + ? (me.storedTotalCps * Game.globalCpsMult) / + Game.cookiesPs + : 0) * 100 + : 0, + 1 + ) + ) + + ")
" + + (synergiesStr + ? '
' + synergiesStr + "
" + : "") + + (EN + ? '
' + + Beautify(me.totalCookies) + + " " + + (Math.floor(me.totalCookies) == 1 ? "cookie" : "cookies") + + " " + + me.actionName + + " so far
" + : '
' + + loc( + "%1 produced so far", + loc("%1 cookie", LBeautify(me.totalCookies)) + ) + + "
") + : "") + + "
" + ); + }; + this.levelTooltip = function () { + var me = this; + return ( + '
' + + loc("Level %1 %2", [Beautify(me.level), me.plural]) + + '
' + + (EN + ? (me.level == 1 ? me.extraName : me.extraPlural).replace( + "[X]", + Beautify(me.level) + ) + + " granting +" + + Beautify(me.level) + + "% " + + me.dname + + " CpS." + : loc("Granting +%1% %2 CpS.", [ + Beautify(me.level), + me.single, + ])) + + '
' + + loc( + "Click to level up for %1.", + '' + + loc("%1 sugar lump", LBeautify(me.level + 1)) + + "" + ) + + (me.level == 0 && me.minigameUrl + ? '
' + + loc("Levelling up this building unlocks a minigame.") + + "" + : "") + + "
" + ); + }; + this.levelUp = (function (me) { + return function (free) { + Game.spendLump( + me.level + 1, + loc("level up your %1", me.plural), + function () { + me.level += 1; + if (me.level >= 10 && me.levelAchiev10) + Game.Win(me.levelAchiev10.name); + if (!free) PlaySound("snd/upgrade.mp3", 0.6); + Game.LoadMinigames(); + me.refresh(); + if (l("productLevel" + me.id)) { + var rect = l("productLevel" + me.id).getBounds(); + Game.SparkleAt( + (rect.left + rect.right) / 2, + (rect.top + rect.bottom) / 2 - 24 + 32 - TopBarOffset + ); + } + if (me.minigame && me.minigame.onLevel) + me.minigame.onLevel(me.level); + }, + free + )(); + }; + })(this); + + this.refresh = + function () //show/hide the building display based on its amount, and redraw it + { + this.price = this.getPrice(); + if (Game.buyMode == 1) + this.bulkPrice = this.getSumPrice(Game.buyBulk); + else if (Game.buyMode == -1 && Game.buyBulk == -1) + this.bulkPrice = this.getReverseSumPrice(1000); + else if (Game.buyMode == -1) + this.bulkPrice = this.getReverseSumPrice(Game.buyBulk); + this.rebuild(); + if (this.amount == 0 && this.id != 0) + l("row" + this.id).classList.remove("enabled"); + else if (this.amount > 0 && this.id != 0) + l("row" + this.id).classList.add("enabled"); + if (this.muted > 0 && this.id != 0) { + l("row" + this.id).classList.add("muted"); + l("mutedProduct" + this.id).style.display = "inline-block"; + } else if (this.id != 0) { + l("row" + this.id).classList.remove("muted"); + l("mutedProduct" + this.id).style.display = "none"; + } + //if (!this.onMinigame && !this.muted) {} + //else this.pics=[]; + }; + this.rebuild = function () { + var me = this; + //var classes='product'; + var price = me.bulkPrice; + /*if (Game.cookiesEarned>=me.basePrice || me.bought>0) {classes+=' unlocked';me.locked=0;} else {classes+=' locked';me.locked=1;} + if (Game.cookies>=price) classes+=' enabled'; else classes+=' disabled'; + if (me.l.className.indexOf('toggledOff')!=-1) classes+=' toggledOff'; + */ + var icon = [0, me.icon]; + var iconOff = [1, me.icon]; + if (me.iconFunc) icon = me.iconFunc(); + + var desc = me.desc; + var name = me.dname; + var displayName = me.displayName; + if (Game.season == "fools") { + if (!Game.foolObjects[me.name]) { + icon = [2, 0]; + iconOff = [3, 0]; + name = Game.foolObjects["Unknown"].name; + desc = Game.foolObjects["Unknown"].desc; + } else { + icon = [2, me.icon]; + iconOff = [3, me.icon]; + name = Game.foolObjects[me.name].name; + desc = Game.foolObjects[me.name].desc; + } + displayName = name; + //if (name.length>16) displayName=''+name+''; + } else if (!EN) displayName = name; + //else if (!EN && name.length>16) displayName=''+name+''; + icon = [icon[0] * 64, icon[1] * 64]; + iconOff = [iconOff[0] * 64, iconOff[1] * 64]; + + //me.l.className=classes; + //l('productIcon'+me.id).style.backgroundImage='url(img/'+icon+')'; + l("productIcon" + me.id).style.backgroundPosition = + "-" + icon[0] + "px -" + icon[1] + "px"; + //l('productIconOff'+me.id).style.backgroundImage='url(img/'+iconOff+')'; + l("productIconOff" + me.id).style.backgroundPosition = + "-" + iconOff[0] + "px -" + iconOff[1] + "px"; + l("productName" + me.id).innerHTML = displayName; + if ( + name.length > 12 / Langs[locId].w && + (Game.season == "fools" || !EN) + ) + l("productName" + me.id).classList.add("longProductName"); + else l("productName" + me.id).classList.remove("longProductName"); + l("productOwned" + me.id).textContent = me.amount ? me.amount : ""; + l("productPrice" + me.id).textContent = Beautify(Math.round(price)); + l("productPriceMult" + me.id).textContent = + Game.buyBulk > 1 ? "x" + Game.buyBulk + " " : ""; + l("productLevel" + me.id).textContent = "lvl " + Beautify(me.level); + if (Game.isMinigameReady(me) && Game.ascensionMode != 1) { + l("productMinigameButton" + me.id).style.display = "block"; + if (!me.onMinigame) + l("productMinigameButton" + me.id).textContent = loc( + "View %1", + me.minigameName + ); + else + l("productMinigameButton" + me.id).textContent = loc( + "Close %1", + me.minigameName + ); + } else l("productMinigameButton" + me.id).style.display = "none"; + if ( + Game.isMinigameReady(me) && + Game.ascensionMode != 1 && + me.minigame.dragonBoostTooltip && + Game.hasAura("Supreme Intellect") + ) { + l("productDragonBoost" + me.id).style.display = "block"; + } else l("productDragonBoost" + me.id).style.display = "none"; + }; + this.muted = false; + this.mute = function (val) { + if (this.id == 0) return false; + this.muted = val; + if (val) { + l("productMute" + this.id).classList.add("on"); + l("row" + this.id).classList.add("muted"); + l("mutedProduct" + this.id).style.display = "inline-block"; + } else { + l("productMute" + this.id).classList.remove("on"); + l("row" + this.id).classList.remove("muted"); + l("mutedProduct" + this.id).style.display = "none"; + } + }; + + this.draw = function () {}; + + var str = ""; + if (this.id != 0) + str += + '
'; + str += '
'; + str += + '
"; + str += + '
"; + if (this.id != 0) + str += + '
' + + loc("Mute") + + "
(" + + loc("Minimize this building") + + ")
", + "this" + ) + + ' onclick="Game.ObjectsById[' + + this.id + + "].mute(1);PlaySound(Game.ObjectsById[" + + this.id + + "].muted?'snd/clickOff2.mp3':'snd/clickOn2.mp3');\" id=\"productMute" + + this.id + + '">' + + loc("Mute") + + "
"; + str += + ''; + str += "
"; + if (this.id == 0) + l("sectionLeftExtra").innerHTML = l("sectionLeftExtra").innerHTML + str; + else { + str += + ''; + str += '
'; + str += ""; + l("rows").innerHTML = l("rows").innerHTML + str; + + //building canvas + this.pics = []; + + this.toResize = true; + this.redraw = function () { + var me = this; + me.pics = []; + }; + this.draw = function () { + if (this.amount <= 0) return false; + if (this.toResize) { + this.canvas.width = this.canvas.clientWidth; + this.canvas.height = this.canvas.clientHeight; + this.toResize = false; + } + var ctx = this.ctx; + //clear + //ctx.clearRect(0,0,this.canvas.width,this.canvas.height); + ctx.globalAlpha = 1; + + //pic : a loaded picture or a function returning a loaded picture + //bg : a loaded picture or a function returning a loaded picture - tiled as the background, 128x128 + //xV : the pictures will have a random horizontal shift by this many pixels + //yV : the pictures will have a random vertical shift by this many pixels + //w : how many pixels between each picture (or row of pictures) + //x : horizontal offset + //y : vertical offset (+32) + //rows : if >1, arrange the pictures in rows containing this many pictures + //frames : if present, slice the pic in [frames] horizontal slices and pick one at random + + var pic = this.art.pic; + var bg = this.art.bg; + var xV = this.art.xV || 0; + var yV = this.art.yV || 0; + var w = this.art.w || 48; + var h = this.art.h || 48; + var offX = this.art.x || 0; + var offY = this.art.y || 0; + var rows = this.art.rows || 1; + var frames = this.art.frames || 1; + + if (typeof bg == "string") + ctx.fillPattern( + Pic(this.art.bg), + 0, + 0, + this.canvas.width, + this.canvas.height, + 128, + 128 + ); + else bg(this, ctx); + /* + ctx.globalAlpha=0.5; + if (typeof(bg)=='string')//test + { + ctx.fillPattern(Pic(this.art.bg),-128+Game.T%128,0,this.canvas.width+128,this.canvas.height,128,128); + ctx.fillPattern(Pic(this.art.bg),-128+Math.floor(Game.T/2)%128,-128+Math.floor(Game.T/2)%128,this.canvas.width+128,this.canvas.height+128,128,128); + } + ctx.globalAlpha=1; + */ + var maxI = Math.floor(this.canvas.width / (w / rows) + 1); + var iT = Math.min(this.amount, maxI); + var i = this.pics.length; + + var x = 0; + var y = 0; + var added = 0; + if (i != iT) { + //for (var iter=0;iter<3;iter++) + //{ + var prevFrame = 0; + while (i < iT) { + //if (i1) frame=Math.floor(Math.random()*frames); + if (frames > 1) { + frame = + prevFrame + Math.floor(Math.random() * (frames - 1) + 1); + frame = frame % frames; + } + prevFrame = frame; + this.pics.push({ + x: Math.floor(x), + y: Math.floor(y), + z: y, + pic: usedPic, + id: i, + frame: frame, + }); + i++; + added++; + } + while (i > iT) { + //else if (i>iT) + this.pics.sort(Game.sortSpritesById); + this.pics.pop(); + i--; + added--; + } + //} + this.pics.sort(Game.sortSprites); + } + + var len = this.pics.length; + + if (this.mouseOn) { + var selected = -1; + if (this.name == "Grandma") { + //mouse detection only fits grandma sprites for now + var marginW = -18; + var marginH = -10; + for (var i = 0; i < len; i++) { + var pic = this.pics[i]; + if ( + this.mousePos[0] >= pic.x - marginW && + this.mousePos[0] < pic.x + 64 + marginW && + this.mousePos[1] >= pic.y - marginH && + this.mousePos[1] < pic.y + 64 + marginH + ) + selected = i; + if ( + selected == i && + pic.pic == "elfGrandma.png" && + Game.mouseDown + ) + Game.Win("Baby it's old outside"); + } + if ( + Game.prefs.customGrandmas && + Game.customGrandmaNames.length > 0 + ) { + var str = loc( + "Names in white were submitted by our supporters on Patreon." + ); + ctx.globalAlpha = 0.75; + ctx.fillStyle = "#000"; + ctx.font = "9px Merriweather"; + ctx.textAlign = "left"; + ctx.fillRect(0, 0, ctx.measureText(str).width + 4, 12); + ctx.globalAlpha = 1; + ctx.fillStyle = "rgba(255,255,255,0.7)"; + ctx.fillText(str, 2, 8); + if (EN) { + ctx.fillStyle = "rgba(255,255,255,1)"; + ctx.fillText( + "white", + 2 + ctx.measureText("Names in ").width, + 8 + ); + } + } + } + } + + Math.seedrandom(); + + for (var i = 0; i < len; i++) { + var pic = this.pics[i]; + var sprite = Pic(pic.pic); + if (selected == i && this.name == "Grandma") { + ctx.font = "14px Merriweather"; + ctx.textAlign = "center"; + Math.seedrandom(Game.seed + " " + pic.id /*+' '+pic.id*/); //(Game.seed+' '+pic.id+' '+pic.x+' '+pic.y); + var years = + (Date.now() - new Date(2013, 7, 8)) / + (1000 * 60 * 60 * 24 * 365) + + Math.random(); //the grandmas age with the game + var name = choose(Game.grandmaNames); + var custom = false; + if ( + Game.prefs.customGrandmas && + Game.customGrandmaNames.length > 0 && + Math.random() < 0.2 + ) { + name = choose(Game.customGrandmaNames); + custom = true; + } + var text = loc("%1, age %2", [ + name, + Beautify( + Math.floor(70 + Math.random() * 30 + years + this.level) + ), + ]); + var width = ctx.measureText(text).width + 12; + var x = Math.max( + 0, + Math.min( + pic.x + 32 - width / 2 + Math.random() * 32 - 16, + this.canvas.width - width + ) + ); + var y = 4 + Math.random() * 8 - 4; + Math.seedrandom(); + ctx.fillStyle = "#000"; + ctx.strokeStyle = "#000"; + ctx.lineWidth = 8; + ctx.globalAlpha = 0.75; + ctx.beginPath(); + ctx.moveTo(pic.x + 32, pic.y + 32); + ctx.lineTo(Math.floor(x + width / 2), Math.floor(y + 20)); + ctx.stroke(); + ctx.fillRect(Math.floor(x), Math.floor(y), Math.floor(width), 24); + ctx.globalAlpha = 1; + if (custom) ctx.fillStyle = "#fff"; + else ctx.fillStyle = "rgba(255,255,255,0.7)"; + ctx.fillText(text, Math.floor(x + width / 2), Math.floor(y + 16)); + + ctx.drawImage( + sprite, + Math.floor(pic.x + Math.random() * 4 - 2), + Math.floor(pic.y + Math.random() * 4 - 2) + ); + } + //else if (1) ctx.drawImage(sprite,0,0,sprite.width,sprite.height,pic.x,pic.y,sprite.width,sprite.height); + else if (pic.frame != -1) + ctx.drawImage( + sprite, + (sprite.width / frames) * pic.frame, + 0, + sprite.width / frames, + sprite.height, + pic.x, + pic.y, + sprite.width / frames, + sprite.height + ); + else ctx.drawImage(sprite, pic.x, pic.y); + } + + /* + var picX=this.id; + var picY=12; + var w=1; + var h=1; + var w=Math.abs(Math.cos(Game.T*0.2+this.id*2-0.3))*0.2+0.8; + var h=Math.abs(Math.sin(Game.T*0.2+this.id*2))*0.3+0.7; + var x=64+Math.cos(Game.T*0.19+this.id*2)*8-24*w; + var y=128-Math.abs(Math.pow(Math.sin(Game.T*0.2+this.id*2),5)*16)-48*h; + ctx.drawImage(Pic('icons.png'),picX*48,picY*48,48,48,Math.floor(x),Math.floor(y),48*w,48*h); + */ + }; + } + + Game.last = this; + Game.Objects[this.name] = this; + Game.ObjectsById.push(this); + Game.ObjectsN++; + return this; + }; + + Game.DrawBuildings = function () //draw building displays with canvas + { + if (Game.drawT % 3 == 0) { + for (var i in Game.Objects) { + var me = Game.Objects[i]; + if (me.id > 0 && !me.onMinigame && !me.muted) me.draw(); + else me.pics = []; + } + } + }; + + Game.sortSprites = function (a, b) { + if (a.z > b.z) return 1; + else if (a.z < b.z) return -1; + else return 0; + }; + Game.sortSpritesById = function (a, b) { + if (a.id > b.id) return 1; + else if (a.id < b.id) return -1; + else return 0; + }; + + Game.modifyBuildingPrice = function (building, price) { + if (Game.Has("Season savings")) price *= 0.99; + if (Game.Has("Santa's dominion")) price *= 0.99; + if (Game.Has("Faberge egg")) price *= 0.99; + if (Game.Has("Divine discount")) price *= 0.99; + if (Game.Has("Fortune #100")) price *= 0.99; + //if (Game.hasAura('Fierce Hoarder')) price*=0.98; + price *= 1 - Game.auraMult("Fierce Hoarder") * 0.02; + if (Game.hasBuff("Everything must go")) price *= 0.95; + if (Game.hasBuff("Crafty pixies")) price *= 0.98; + if (Game.hasBuff("Nasty goblins")) price *= 1.02; + if (building.fortune && Game.Has(building.fortune.name)) price *= 0.93; + price *= Game.eff("buildingCost"); + if (Game.hasGod) { + var godLvl = Game.hasGod("creation"); + if (godLvl == 1) price *= 0.93; + else if (godLvl == 2) price *= 0.95; + else if (godLvl == 3) price *= 0.98; + } + return price; + }; + + Game.storeBulkButton = function (id) { + if (id == 0) Game.buyMode = 1; + else if (id == 1) Game.buyMode = -1; + else if (id == 2) Game.buyBulk = 1; + else if (id == 3) Game.buyBulk = 10; + else if (id == 4) Game.buyBulk = 100; + else if (id == 5) Game.buyBulk = -1; + + if (Game.buyMode == 1 && Game.buyBulk == -1) Game.buyBulk = 100; + + if (Game.buyMode == 1) + l("storeBulkBuy").className = "storePreButton storeBulkMode selected"; + else l("storeBulkBuy").className = "storePreButton storeBulkMode"; + if (Game.buyMode == -1) + l("storeBulkSell").className = "storePreButton storeBulkMode selected"; + else l("storeBulkSell").className = "storePreButton storeBulkMode"; + + if (Game.buyBulk == 1) + l("storeBulk1").className = "storePreButton storeBulkAmount selected"; + else l("storeBulk1").className = "storePreButton storeBulkAmount"; + if (Game.buyBulk == 10) + l("storeBulk10").className = "storePreButton storeBulkAmount selected"; + else l("storeBulk10").className = "storePreButton storeBulkAmount"; + if (Game.buyBulk == 100) + l("storeBulk100").className = "storePreButton storeBulkAmount selected"; + else l("storeBulk100").className = "storePreButton storeBulkAmount"; + if (Game.buyBulk == -1) + l("storeBulkMax").className = "storePreButton storeBulkAmount selected"; + else l("storeBulkMax").className = "storePreButton storeBulkAmount"; + + if (Game.buyMode == 1) { + l("storeBulkMax").style.visibility = "hidden"; + l("products").className = "storeSection"; + } else { + l("storeBulkMax").style.visibility = "visible"; + l("products").className = "storeSection selling"; + } + + Game.storeToRefresh = 1; + if (id != -1) PlaySound("snd/tick.mp3"); + }; + Game.BuildStore = function () //create the DOM for the store's buildings + { + //if (typeof showAds!=='undefined') l('store').scrollTop=100; + + var str = ""; + str += + '
' + + loc( + "You can also press %1 to bulk-buy or sell %2 of a building at a time, or %3 for %4.", + [ + "" + loc("Ctrl") + "", + "10", + "" + loc("Shift") + "", + "100", + ] + ) + + "
", + "store" + ) + + ">" + + '
' + + loc("Buy") + + "
" + + '
' + + loc("Sell") + + "
" + + '
1
' + + '
10
' + + '
100
' + + '
' + + loc("all") + + "
" + + ""; + for (var i in Game.Objects) { + var me = Game.Objects[i]; + str += + (Game.prefs.screenreader + ? '" : ""); + } + l("products").innerHTML = str; + + Game.storeBulkButton(-1); + + /*var SellAllPrompt=function(id) + { + return function(id){Game.Prompt('
Do you really want to sell your '+loc("%1 "+Game.ObjectsById[id].bsingle,LBeautify(Game.ObjectsById[id].amount))+'?
',[['Yes','Game.ObjectsById['+id+'].sell(-1);Game.ClosePrompt();'],['No','Game.ClosePrompt();']]);}(id); + }*/ + + for (var i in Game.Objects) { + var me = Game.Objects[i]; + me.l = l("product" + me.id); + + //these are a bit messy but ah well + if (!Game.touchEvents) { + AddEvent( + me.l, + "click", + (function (what) { + return function (e) { + Game.ClickProduct(what); + e.preventDefault(); + }; + })(me.id) + ); + } else { + AddEvent( + me.l, + "touchend", + (function (what) { + return function (e) { + Game.ClickProduct(what); + e.preventDefault(); + }; + })(me.id) + ); + } + } + }; + + Game.ClickProduct = function (what) { + Game.ObjectsById[what].buy(); + }; + + Game.RefreshStore = function () //refresh the store's buildings + { + for (var i in Game.Objects) { + Game.Objects[i].refresh(); + } + Game.storeToRefresh = 0; + }; + + Game.ComputeCps = function (base, mult, bonus) { + if (!bonus) bonus = 0; + return base * Math.pow(2, mult) + bonus; + }; + + Game.isMinigameReady = function (me) { + return me.minigameUrl && me.minigameLoaded && me.level > 0; + }; + Game.scriptBindings = []; + Game.showedScriptLoadError = false; + Game.LoadMinigames = function () //load scripts for each minigame + { + for (var i in Game.Objects) { + var me = Game.Objects[i]; + if ( + me.minigameUrl && + me.level > 0 && + !me.minigameLoaded && + !me.minigameLoading && + !l("minigameScript-" + me.id) + ) { + me.minigameLoading = true; + //we're only loading the minigame scripts that aren't loaded yet and which have enough building level + //we call this function on building level up and on load + //console.log('Loading script '+me.minigameUrl+'...'); + setTimeout( + (function (me) { + return function () { + var script = document.createElement("script"); + script.id = "minigameScript-" + me.id; + Game.scriptBindings["minigameScript-" + me.id] = me; + script.setAttribute( + "src", + me.minigameUrl + "?r=" + Game.version + ); + script.onload = (function (me, script) { + return function () { + if (!me.minigameLoaded) Game.scriptLoaded(me, script); + }; + })(me, "minigameScript-" + me.id); + script.onerror = (function (me, script) { + return function () { + me.minigameLoading = false; + if (!me.minigameLoaded && !Game.showedScriptLoadError) { + Game.showedScriptLoadError = true; + Game.Notify( + loc("Error!"), + "Couldn't load minigames. Try reloading." + ); + } + }; + })(me, "minigameScript-" + me.id); + document.head.appendChild(script); + }; + })(me), + 10 + ); + } + } + }; + Game.scriptLoaded = function (who, script) { + who.minigameLoading = false; + who.minigameLoaded = true; + who.refresh(); + who.minigame.launch(); + if (who.minigameSave) { + who.minigame.reset(true); + who.minigame.load(who.minigameSave); + who.minigameSave = 0; + } + }; + + Game.magicCpS = function (what) { + /* + if (Game.Objects[what].amount>=250) + { + //this makes buildings give 1% more cookies for every building over 250. + //this turns out to be rather stupidly overpowered. + var n=Game.Objects[what].amount-250; + return 1+Math.pow(1.01,n); + } + else return 1; + */ + return 1; + }; + + //define objects + new Game.Object( + "Cursor", + "cursor|cursors|clicked|[X] extra finger|[X] extra fingers", + "Autoclicks once every 10 seconds.", + 0, + 0, + {}, + 15, + function (me) { + var add = 0; + if (Game.Has("Thousand fingers")) add += 0.1; + if (Game.Has("Million fingers")) add *= 5; + if (Game.Has("Billion fingers")) add *= 10; + if (Game.Has("Trillion fingers")) add *= 20; + if (Game.Has("Quadrillion fingers")) add *= 20; + if (Game.Has("Quintillion fingers")) add *= 20; + if (Game.Has("Sextillion fingers")) add *= 20; + if (Game.Has("Septillion fingers")) add *= 20; + if (Game.Has("Octillion fingers")) add *= 20; + if (Game.Has("Nonillion fingers")) add *= 20; + if (Game.Has("Decillion fingers")) add *= 20; + if (Game.Has("Unshackled cursors")) add *= 25; + var mult = 1; + var num = 0; + for (var i in Game.Objects) { + if (Game.Objects[i].name != "Cursor") num += Game.Objects[i].amount; + } + add = add * num; + mult *= Game.GetTieredCpsMult(me); + mult *= Game.magicCpS("Cursor"); + mult *= Game.eff("cursorCps"); + return ( + Game.ComputeCps( + 0.1, + Game.Has("Reinforced index finger") + + Game.Has("Carpal tunnel prevention cream") + + Game.Has("Ambidextrous"), + add + ) * mult + ); + }, + function () { + if (this.amount >= 1) + Game.Unlock([ + "Reinforced index finger", + "Carpal tunnel prevention cream", + ]); + if (this.amount >= 10) Game.Unlock("Ambidextrous"); + if (this.amount >= 25) Game.Unlock("Thousand fingers"); + if (this.amount >= 50) Game.Unlock("Million fingers"); + if (this.amount >= 100) Game.Unlock("Billion fingers"); + if (this.amount >= 150) Game.Unlock("Trillion fingers"); + if (this.amount >= 200) Game.Unlock("Quadrillion fingers"); + if (this.amount >= 250) Game.Unlock("Quintillion fingers"); + if (this.amount >= 300) Game.Unlock("Sextillion fingers"); + if (this.amount >= 350) Game.Unlock("Septillion fingers"); + if (this.amount >= 400) Game.Unlock("Octillion fingers"); + if (this.amount >= 450) Game.Unlock("Nonillion fingers"); + if (this.amount >= 500) Game.Unlock("Decillion fingers"); + + if (this.amount >= 1) Game.Win("Click"); + if (this.amount >= 2) Game.Win("Double-click"); + if (this.amount >= 50) Game.Win("Mouse wheel"); + if (this.amount >= 100) Game.Win("Of Mice and Men"); + if (this.amount >= 200) Game.Win("The Digital"); + if (this.amount >= 300) Game.Win("Extreme polydactyly"); + if (this.amount >= 400) Game.Win("Dr. T"); + if (this.amount >= 500) Game.Win("Thumbs, phalanges, metacarpals"); + if (this.amount >= 600) Game.Win("With her finger and her thumb"); + if (this.amount >= 700) Game.Win("Gotta hand it to you"); + if (this.amount >= 800) Game.Win("The devil's workshop"); + } + ); + + Game.SpecialGrandmaUnlock = 15; + new Game.Object( + "Grandma", + "grandma|grandmas|baked|Grandmas are [X] year older|Grandmas are [X] years older", + "A nice grandma to bake more cookies.", + 1, + 1, + { + pic: function (i) { + var list = ["grandma"]; + if (Game.Has("Farmer grandmas")) list.push("farmerGrandma"); + if (Game.Has("Worker grandmas")) list.push("workerGrandma"); + if (Game.Has("Miner grandmas")) list.push("minerGrandma"); + if (Game.Has("Cosmic grandmas")) list.push("cosmicGrandma"); + if (Game.Has("Transmuted grandmas")) list.push("transmutedGrandma"); + if (Game.Has("Altered grandmas")) list.push("alteredGrandma"); + if (Game.Has("Grandmas' grandmas")) list.push("grandmasGrandma"); + if (Game.Has("Antigrandmas")) list.push("antiGrandma"); + if (Game.Has("Rainbow grandmas")) list.push("rainbowGrandma"); + if (Game.Has("Banker grandmas")) list.push("bankGrandma"); + if (Game.Has("Priestess grandmas")) list.push("templeGrandma"); + if (Game.Has("Witch grandmas")) list.push("witchGrandma"); + if (Game.Has("Lucky grandmas")) list.push("luckyGrandma"); + if (Game.Has("Metagrandmas")) list.push("metaGrandma"); + if (Game.Has("Script grannies")) list.push("scriptGrandma"); + if (Game.Has("Alternate grandmas")) list.push("alternateGrandma"); + if (Game.Has("Brainy grandmas")) list.push("brainyGrandma"); + if (Game.season == "christmas") list.push("elfGrandma"); + if (Game.season == "easter") list.push("bunnyGrandma"); + return choose(list) + ".png"; + }, + bg: "grandmaBackground.png", + xV: 8, + yV: 8, + w: 32, + rows: 3, + x: 0, + y: 16, + }, + 100, + function (me) { + var mult = 1; + for (var i in Game.GrandmaSynergies) { + if (Game.Has(Game.GrandmaSynergies[i])) mult *= 2; + } + if (Game.Has("Bingo center/Research facility")) mult *= 4; + if (Game.Has("Ritual rolling pins")) mult *= 2; + if (Game.Has("Naughty list")) mult *= 2; + + if (Game.Has("Elderwort biscuits")) mult *= 1.02; + + mult *= Game.eff("grandmaCps"); + + if (Game.Has("Cat ladies")) { + for (var i = 0; i < Game.UpgradesByPool["kitten"].length; i++) { + if (Game.Has(Game.UpgradesByPool["kitten"][i].name)) mult *= 1.29; + } + } + + mult *= Game.GetTieredCpsMult(me); + + var add = 0; + if (Game.Has("One mind")) add += Game.Objects["Grandma"].amount * 0.02; + if (Game.Has("Communal brainsweep")) + add += Game.Objects["Grandma"].amount * 0.02; + if (Game.Has("Elder Pact")) add += Game.Objects["Portal"].amount * 0.05; + + var num = 0; + for (var i in Game.Objects) { + if (Game.Objects[i].name != "Grandma") num += Game.Objects[i].amount; + } + //if (Game.hasAura('Elder Battalion')) mult*=1+0.01*num; + mult *= 1 + Game.auraMult("Elder Battalion") * 0.01 * num; + + mult *= Game.magicCpS(me.name); + + return (me.baseCps + add) * mult; + }, + function () { + Game.UnlockTiered(this); + } + ); + Game.last.sellFunction = function () { + Game.Win("Just wrong"); + if (this.amount == 0) { + Game.Lock("Elder Pledge"); + Game.CollectWrinklers(); + Game.pledgeT = 0; + } + }; + Game.last.iconFunc = function (type) { + var grandmaIcons = [ + [0, 1], + [0, 2], + [1, 2], + [2, 2], + ]; + if (type == "off") return [0, 1]; + if (Game.prefs.notScary && Game.elderWrath > 0) return [3, 2]; + return grandmaIcons[Game.elderWrath]; + }; + + new Game.Object( + "Farm", + "farm|farms|harvested|[X] more acre|[X] more acres", + "Grows cookie plants from cookie seeds.", + 3, + 2, + { base: "farm", xV: 8, yV: 8, w: 64, rows: 2, x: 0, y: 16 }, + 500, + function (me) { + var mult = 1; + mult *= Game.GetTieredCpsMult(me); + mult *= Game.magicCpS(me.name); + return me.baseCps * mult; + }, + function () { + Game.UnlockTiered(this); + if ( + this.amount >= Game.SpecialGrandmaUnlock && + Game.Objects["Grandma"].amount > 0 + ) + Game.Unlock(this.grandma.name); + } + ); + Game.last.minigameUrl = "minigameGarden.js"; + Game.last.minigameName = loc("Garden"); + + new Game.Object( + "Mine", + "mine|mines|mined|[X] mile deeper|[X] miles deeper", + "Mines out cookie dough and chocolate chips.", + 4, + 3, + { base: "mine", xV: 16, yV: 16, w: 64, rows: 2, x: 0, y: 24 }, + 10000, + function (me) { + var mult = 1; + mult *= Game.GetTieredCpsMult(me); + mult *= Game.magicCpS(me.name); + return me.baseCps * mult; + }, + function () { + Game.UnlockTiered(this); + if ( + this.amount >= Game.SpecialGrandmaUnlock && + Game.Objects["Grandma"].amount > 0 + ) + Game.Unlock(this.grandma.name); + } + ); + + new Game.Object( + "Factory", + "factory|factories|mass-produced|[X] additional patent|[X] additional patents", + "Produces large quantities of cookies.", + 5, + 4, + { base: "factory", xV: 8, yV: 0, w: 64, rows: 1, x: 0, y: -22 }, + 3000, + function (me) { + var mult = 1; + mult *= Game.GetTieredCpsMult(me); + mult *= Game.magicCpS(me.name); + return me.baseCps * mult; + }, + function () { + Game.UnlockTiered(this); + if ( + this.amount >= Game.SpecialGrandmaUnlock && + Game.Objects["Grandma"].amount > 0 + ) + Game.Unlock(this.grandma.name); + } + ); + //Game.last.minigameUrl='minigameDungeon.js';//not yet + Game.last.minigameName = loc("Dungeon"); + + new Game.Object( + "Bank", + "bank|banks|banked|Interest rates [X]% better|Interest rates [X]% better", + "Generates cookies from interest.", + 6, + 15, + { base: "bank", xV: 8, yV: 4, w: 56, rows: 1, x: 0, y: 13 }, + 0, + function (me) { + var mult = 1; + mult *= Game.GetTieredCpsMult(me); + mult *= Game.magicCpS(me.name); + return me.baseCps * mult; + }, + function () { + Game.UnlockTiered(this); + if ( + this.amount >= Game.SpecialGrandmaUnlock && + Game.Objects["Grandma"].amount > 0 + ) + Game.Unlock(this.grandma.name); + } + ); + Game.last.minigameUrl = "minigameMarket.js"; + Game.last.minigameName = loc("Stock Market"); + + new Game.Object( + "Temple", + "temple|temples|discovered|[X] sacred artifact retrieved|[X] sacred artifacts retrieved", + "Full of precious, ancient chocolate.", + 7, + 16, + { base: "temple", xV: 8, yV: 4, w: 72, rows: 2, x: 0, y: -5 }, + 0, + function (me) { + var mult = 1; + mult *= Game.GetTieredCpsMult(me); + mult *= Game.magicCpS(me.name); + return me.baseCps * mult; + }, + function () { + Game.UnlockTiered(this); + if ( + this.amount >= Game.SpecialGrandmaUnlock && + Game.Objects["Grandma"].amount > 0 + ) + Game.Unlock(this.grandma.name); + } + ); + Game.last.minigameUrl = "minigamePantheon.js"; + Game.last.minigameName = loc("Pantheon"); + + new Game.Object( + "Wizard tower", + "wizard tower|wizard towers|summoned|Incantations have [X] more syllable|Incantations have [X] more syllables", + "Summons cookies with magic spells.", + 8, + 17, + { base: "wizardtower", xV: 16, yV: 16, w: 48, rows: 2, x: 0, y: 20 }, + 0, + function (me) { + var mult = 1; + mult *= Game.GetTieredCpsMult(me); + mult *= Game.magicCpS(me.name); + return me.baseCps * mult; + }, + function () { + Game.UnlockTiered(this); + if ( + this.amount >= Game.SpecialGrandmaUnlock && + Game.Objects["Grandma"].amount > 0 + ) + Game.Unlock(this.grandma.name); + } + ); + Game.last.displayName = + 'Wizard tower'; //shrink + Game.last.minigameUrl = "minigameGrimoire.js"; + Game.last.minigameName = loc("Grimoire"); + + new Game.Object( + "Shipment", + "shipment|shipments|shipped|[X] galaxy fully explored|[X] galaxies fully explored", + "Brings in fresh cookies from the cookie planet.", + 9, + 5, + { base: "shipment", xV: 16, yV: 16, w: 64, rows: 1, x: 0, y: 0 }, + 40000, + function (me) { + var mult = 1; + mult *= Game.GetTieredCpsMult(me); + mult *= Game.magicCpS(me.name); + return me.baseCps * mult; + }, + function () { + Game.UnlockTiered(this); + if ( + this.amount >= Game.SpecialGrandmaUnlock && + Game.Objects["Grandma"].amount > 0 + ) + Game.Unlock(this.grandma.name); + } + ); + + new Game.Object( + "Alchemy lab", + "alchemy lab|alchemy labs|transmuted|[X] primordial element mastered|[X] primordial elements mastered", + "Turns gold into cookies!", + 10, + 6, + { base: "alchemylab", xV: 16, yV: 16, w: 64, rows: 2, x: 0, y: 16 }, + 200000, + function (me) { + var mult = 1; + mult *= Game.GetTieredCpsMult(me); + mult *= Game.magicCpS(me.name); + return me.baseCps * mult; + }, + function () { + Game.UnlockTiered(this); + if ( + this.amount >= Game.SpecialGrandmaUnlock && + Game.Objects["Grandma"].amount > 0 + ) + Game.Unlock(this.grandma.name); + } + ); + Game.last.displayName = + 'Alchemy lab'; //shrink + + new Game.Object( + "Portal", + "portal|portals|retrieved|[X] dimension enslaved|[X] dimensions enslaved", + "Opens a door to the Cookieverse.", + 11, + 7, + { base: "portal", xV: 32, yV: 32, w: 64, rows: 2, x: 0, y: 0 }, + 1666666, + function (me) { + var mult = 1; + mult *= Game.GetTieredCpsMult(me); + mult *= Game.magicCpS(me.name); + return me.baseCps * mult; + }, + function () { + Game.UnlockTiered(this); + if ( + this.amount >= Game.SpecialGrandmaUnlock && + Game.Objects["Grandma"].amount > 0 + ) + Game.Unlock(this.grandma.name); + } + ); + + new Game.Object( + "Time machine", + "time machine|time machines|recovered|[X] century secured|[X] centuries secured", + "Brings cookies from the past, before they were even eaten.", + 12, + 8, + { base: "timemachine", xV: 32, yV: 32, w: 64, rows: 1, x: 0, y: 0 }, + 123456789, + function (me) { + var mult = 1; + mult *= Game.GetTieredCpsMult(me); + mult *= Game.magicCpS(me.name); + return me.baseCps * mult; + }, + function () { + Game.UnlockTiered(this); + if ( + this.amount >= Game.SpecialGrandmaUnlock && + Game.Objects["Grandma"].amount > 0 + ) + Game.Unlock(this.grandma.name); + } + ); + Game.last.displayName = + 'Time machine'; //shrink + + new Game.Object( + "Antimatter condenser", + "antimatter condenser|antimatter condensers|condensed|[X] extra quark flavor|[X] extra quark flavors", + "Condenses the antimatter in the universe into cookies.", + 13, + 13, + { + base: "antimattercondenser", + xV: 0, + yV: 64, + w: 64, + rows: 1, + x: 0, + y: 0, + }, + 3999999999, + function (me) { + var mult = 1; + mult *= Game.GetTieredCpsMult(me); + mult *= Game.magicCpS(me.name); + return me.baseCps * mult; + }, + function () { + Game.UnlockTiered(this); + if ( + this.amount >= Game.SpecialGrandmaUnlock && + Game.Objects["Grandma"].amount > 0 + ) + Game.Unlock(this.grandma.name); + } + ); + Game.last.displayName = + 'Antim. condenser'; //shrink + + new Game.Object( + "Prism", + "prism|prisms|converted|[X] new color discovered|[X] new colors discovered", + "Converts light itself into cookies.", + 14, + 14, + { base: "prism", xV: 16, yV: 4, w: 64, rows: 1, x: 0, y: 20 }, + 75000000000, + function (me) { + var mult = 1; + mult *= Game.GetTieredCpsMult(me); + mult *= Game.magicCpS(me.name); + return me.baseCps * mult; + }, + function () { + Game.UnlockTiered(this); + if ( + this.amount >= Game.SpecialGrandmaUnlock && + Game.Objects["Grandma"].amount > 0 + ) + Game.Unlock(this.grandma.name); + } + ); + + new Game.Object( + "Chancemaker", + "chancemaker|chancemakers|spontaneously generated|Chancemakers are powered by [X]-leaf clovers|Chancemakers are powered by [X]-leaf clovers", + "Generates cookies out of thin air through sheer luck.", + 15, + 19, + { + base: "chancemaker", + xV: 8, + yV: 64, + w: 64, + rows: 1, + x: 0, + y: 0, + rows: 2, + }, + 77777777777, + function (me) { + var mult = 1; + mult *= Game.GetTieredCpsMult(me); + mult *= Game.magicCpS(me.name); + return me.baseCps * mult; + }, + function () { + Game.UnlockTiered(this); + if ( + this.amount >= Game.SpecialGrandmaUnlock && + Game.Objects["Grandma"].amount > 0 + ) + Game.Unlock(this.grandma.name); + } + ); + Game.last.displayName = + 'Chancemaker'; //shrink + + new Game.Object( + "Fractal engine", + "fractal engine|fractal engines|made from cookies|[X] iteration deep|[X] iterations deep", + "Turns cookies into even more cookies.", + 16, + 20, + { base: "fractalEngine", xV: 8, yV: 64, w: 64, rows: 1, x: 0, y: 0 }, + 12345678987654321, + function (me) { + var mult = 1; + mult *= Game.GetTieredCpsMult(me); + mult *= Game.magicCpS(me.name); + return me.baseCps * mult; + }, + function () { + Game.UnlockTiered(this); + if ( + this.amount >= Game.SpecialGrandmaUnlock && + Game.Objects["Grandma"].amount > 0 + ) + Game.Unlock(this.grandma.name); + } + ); + Game.last.displayName = + 'Fractal engine'; //shrink + + new Game.Object( + "Javascript console", + "javascript console|javascript consoles|programmed|Equipped with [X] external library|Equipped with [X] external libraries", + "Creates cookies from the very code this game was written in.", + 17, + 32, + { + base: "javascriptconsole", + xV: 8, + yV: 64, + w: 14, + rows: 1, + x: 8, + y: -32, + frames: 2, + }, + 12345678987654321, + function (me) { + var mult = 1; + mult *= Game.GetTieredCpsMult(me); + mult *= Game.magicCpS(me.name); + return me.baseCps * mult; + }, + function () { + Game.UnlockTiered(this); + if ( + this.amount >= Game.SpecialGrandmaUnlock && + Game.Objects["Grandma"].amount > 0 + ) + Game.Unlock(this.grandma.name); + } + ); + Game.last.displayName = + 'Javascript console'; //shrink + + new Game.Object( + "Idleverse", + "idleverse|idleverses|hijacked|[X] manifold|[X] manifolds", + "There's been countless other idle universes running alongside our own. You've finally found a way to hijack their production and convert whatever they've been making into cookies!", + 18, + 33, + { + base: "idleverse", + xV: 8, + yV: 96, + w: 48, + rows: 2, + x: 0, + y: 0, + frames: 4, + }, + 12345678987654321, + function (me) { + var mult = 1; + mult *= Game.GetTieredCpsMult(me); + mult *= Game.magicCpS(me.name); + return me.baseCps * mult; + }, + function () { + Game.UnlockTiered(this); + if ( + this.amount >= Game.SpecialGrandmaUnlock && + Game.Objects["Grandma"].amount > 0 + ) + Game.Unlock(this.grandma.name); + } + ); + + new Game.Object( + "Cortex baker", + "cortex baker|cortex bakers|imagined|[X] extra IQ point|[X] extra IQ points", + "These artificial brains the size of planets are capable of simply dreaming up cookies into existence. Time and space are inconsequential. Reality is arbitrary.", + 19, + 34, + { base: "cortex", xV: 8, yV: 96, w: 48, rows: 1, x: 0, y: 0, frames: 4 }, + 12345678987654321, + function (me) { + var mult = 1; + mult *= Game.GetTieredCpsMult(me); + mult *= Game.magicCpS(me.name); + return me.baseCps * mult; + }, + function () { + Game.UnlockTiered(this); + if ( + this.amount >= Game.SpecialGrandmaUnlock && + Game.Objects["Grandma"].amount > 0 + ) + Game.Unlock(this.grandma.name); + } + ); + + Game.foolObjects = { + Unknown: { + name: "Investment", + desc: "You're not sure what this does, you just know it means profit.", + icon: 0, + }, + Cursor: { + name: "Rolling pin", + desc: "Essential in flattening dough. The first step in cookie-making.", + icon: 0, + }, + Grandma: { + name: "Oven", + desc: "A crucial element of baking cookies.", + icon: 1, + }, + Farm: { + name: "Kitchen", + desc: "The more kitchens, the more cookies your employees can produce.", + icon: 2, + }, + Mine: { + name: "Secret recipe", + desc: "These give you the edge you need to outsell those pesky competitors.", + icon: 3, + }, + Factory: { + name: "Factory", + desc: "Mass production is the future of baking. Seize the day, and synergize!", + icon: 4, + }, + Bank: { + name: "Investor", + desc: "Business folks with a nose for profit, ready to finance your venture as long as there's money to be made.", + icon: 5, + }, + Temple: { + name: "Like", + desc: "Your social media page is going viral! Amassing likes is the key to a lasting online presence and juicy advertising deals.", + icon: 9, + }, + "Wizard tower": { + name: "Meme", + desc: "Cookie memes are all the rage! With just the right amount of social media astroturfing, your brand image will be all over the cyberspace.", + icon: 6, + }, + Shipment: { + name: "Supermarket", + desc: "A gigantic cookie emporium - your very own retail chain.", + icon: 7, + }, + "Alchemy lab": { + name: "Stock share", + desc: "You're officially on the stock market, and everyone wants a piece!", + icon: 8, + }, + Portal: { + name: "TV show", + desc: "Your cookies have their own sitcom! Hilarious baking hijinks set to the cheesiest laughtrack.", + icon: 10, + }, + "Time machine": { + name: "Theme park", + desc: "Cookie theme parks, full of mascots and roller-coasters. Build one, build a hundred!", + icon: 11, + }, + "Antimatter condenser": { + name: "Cookiecoin", + desc: "A virtual currency, already replacing regular money in some small countries.", + icon: 12, + }, + Prism: { + name: "Corporate country", + desc: "You've made it to the top, and you can now buy entire nations to further your corporate greed. Godspeed.", + icon: 13, + }, + Chancemaker: { + name: "Privatized planet", + desc: "Actually, you know what's cool? A whole planet dedicated to producing, advertising, selling, and consuming your cookies.", + icon: 15, + }, + "Fractal engine": { + name: "Senate seat", + desc: "Only through political dominion can you truly alter this world to create a brighter, more cookie-friendly future.", + icon: 16, + }, + "Javascript console": { + name: "Doctrine", + desc: "Taking many forms -religion, culture, philosophy- a doctrine may, when handled properly, cause a lasting impact on civilizations, reshaping minds and people and ensuring all future generations share a singular goal - the production, and acquisition, of more cookies.", + icon: 17, + }, + Idleverse: { + name: "Lateral expansions", + desc: "Sometimes the best way to keep going up is sideways. Diversify your ventures through non-cookie investments.", + icon: 18, + }, + "Cortex baker": { + name: "Think tank", + desc: "There's only so many ways you can bring in more profit. Or is there? Hire the most brilliant experts in the known universe and let them scrape their brains for you!", + icon: 19, + }, + }; + + if (true) { + //if (!EN) + Game.foolObjects["Unknown"].name = loc("Investment"); + Game.foolObjects["Unknown"].desc = loc( + "You're not sure what this does, you just know it means profit." + ); + for (var i in Game.Objects) { + Game.foolObjects[i].name = + loc(FindLocStringByPart(Game.Objects[i].name + " business name")) || + Game.foolObjects[i].name; + Game.foolObjects[i].desc = + loc(FindLocStringByPart(Game.Objects[i].name + " business quote")) || + Game.foolObjects[i].desc; + } + } + + //build store + Game.BuildStore(); + + //build master bar + var str = ""; + str += + '
'; + str += + '
'; + l("buildingsMaster").innerHTML = str; + + //build object displays + var muteStr = + '
' + + loc("Muted:") + + "
"; + for (var i in Game.Objects) { + var me = Game.Objects[i]; + + if (locStrings[me.name + " (short)"]) + me.displayName = loc(me.name + " (short)"); + + if (me.id > 0) { + me.canvas = l("rowCanvas" + me.id); + me.ctx = me.canvas.getContext("2d", { alpha: false }); + me.pics = []; + var icon = [0 * 64, me.icon * 64]; + muteStr += + '"; + //muteStr+='')+'>'; + + AddEvent( + me.canvas, + "mouseover", + (function (me) { + return function () { + me.mouseOn = true; + }; + })(me) + ); + AddEvent( + me.canvas, + "mouseout", + (function (me) { + return function () { + me.mouseOn = false; + }; + })(me) + ); + AddEvent( + me.canvas, + "mousemove", + (function (me) { + return function (e) { + var box = this.getBounds(); + me.mousePos[0] = e.pageX - box.left; + me.mousePos[1] = e.pageY - box.top; + }; + })(me) + ); + } + } + Game.mutedBuildingTooltip = function (id) { + return function () { + var me = Game.ObjectsById[id]; + return ( + '
' + + (EN + ? "" + + cap(me.plural) + + (me.level > 0 ? " (lvl. " + me.level + ")" : "") + + '
Click to unmute ' + + me.plural + + "
(display this building)" + : "" + + loc("Level %1 %2", [Beautify(me.level), me.plural]) + + '
' + + loc("Click to unmute")) + + "
" + ); + }; + }; + l("buildingsMute").innerHTML = muteStr; + + /*===================================================================================== + UPGRADES + =======================================================================================*/ + Game.upgradesToRebuild = 1; + Game.Upgrades = {}; + Game.UpgradesById = {}; + Game.UpgradesN = 0; + Game.UpgradesInStore = []; + Game.UpgradesOwned = 0; + Game.Upgrade = function (name, desc, price, icon, buyFunction) { + this.id = Game.UpgradesN; + this.name = name; + this.dname = this.name; + this.desc = desc; + this.baseDesc = this.desc; + this.basePrice = price; + this.priceLumps = 0; //note : doesn't do much on its own, you still need to handle the buying yourself + this.icon = icon; + this.iconFunction = 0; + this.buyFunction = buyFunction; + /*this.unlockFunction=unlockFunction; + this.unlocked=(this.unlockFunction?0:1);*/ + this.unlocked = 0; + this.bought = 0; + this.order = this.id; + if (order) this.order = order + this.id * 0.001; + this.pool = ""; //can be '', cookie, toggle, debug, prestige, prestigeDecor, tech, or unused + if (pool) this.pool = pool; + this.power = 0; + if (power) this.power = power; + this.vanilla = Game.vanilla; + this.unlockAt = 0; + this.techUnlock = []; + this.parents = []; + this.type = "upgrade"; + this.tier = 0; + this.buildingTie = 0; //of what building is this a tiered upgrade of ? + + Game.last = this; + Game.Upgrades[this.name] = this; + Game.UpgradesById[this.id] = this; + Game.UpgradesN++; + return this; + }; + Game.Upgrade.prototype.getType = function () { + return "Upgrade"; + }; + + Game.Upgrade.prototype.getPrice = function () { + var price = this.basePrice; + if (this.priceFunc) price = this.priceFunc(this); + if (price == 0) return 0; + if (this.pool != "prestige") { + if (Game.Has("Toy workshop")) price *= 0.95; + if (Game.Has("Five-finger discount")) + price *= Math.pow(0.99, Game.Objects["Cursor"].amount / 100); + if (Game.Has("Santa's dominion")) price *= 0.98; + if (Game.Has("Faberge egg")) price *= 0.99; + if (Game.Has("Divine sales")) price *= 0.99; + if (Game.Has("Fortune #100")) price *= 0.99; + if (this.kitten && Game.Has("Kitten wages")) price *= 0.9; + if (Game.hasBuff("Haggler's luck")) price *= 0.98; + if (Game.hasBuff("Haggler's misery")) price *= 1.02; + //if (Game.hasAura('Master of the Armory')) price*=0.98; + price *= 1 - Game.auraMult("Master of the Armory") * 0.02; + price *= Game.eff("upgradeCost"); + if (this.pool == "cookie" && Game.Has("Divine bakeries")) price /= 5; + } + return Math.ceil(price); + }; + + Game.Upgrade.prototype.canBuy = function () { + if (this.canBuyFunc) return this.canBuyFunc(); + if (Game.cookies >= this.getPrice()) return true; + else return false; + }; + + Game.storeBuyAll = function () { + if (!Game.Has("Inspired checklist")) return false; + for (var i in Game.UpgradesInStore) { + var me = Game.UpgradesInStore[i]; + if (!me.isVaulted() && me.pool != "toggle" && me.pool != "tech") + me.buy(1); + } + }; + + Game.vault = []; + Game.Upgrade.prototype.isVaulted = function () { + if (Game.vault.indexOf(this.id) != -1) return true; + else return false; + }; + Game.Upgrade.prototype.vault = function () { + if (!this.isVaulted()) Game.vault.push(this.id); + }; + Game.Upgrade.prototype.unvault = function () { + if (this.isVaulted()) Game.vault.splice(Game.vault.indexOf(this.id), 1); + }; + + Game.Upgrade.prototype.click = function (e) { + if ((e && e.shiftKey) || Game.keys[16]) { + if (this.pool == "toggle" || this.pool == "tech") { + } else if (Game.Has("Inspired checklist")) { + if (this.isVaulted()) this.unvault(); + else this.vault(); + Game.upgradesToRebuild = 1; + PlaySound("snd/tick.mp3"); + } + } else this.buy(); + }; + + Game.Upgrade.prototype.buy = function (bypass) { + var success = 0; + var cancelPurchase = 0; + if (this.clickFunction && !bypass) cancelPurchase = !this.clickFunction(); + if (!cancelPurchase) { + if (this.choicesFunction) { + if (Game.choiceSelectorOn == this.id) { + l("toggleBox").style.display = "none"; + l("toggleBox").innerHTML = ""; + Game.choiceSelectorOn = -1; + PlaySound("snd/tickOff.mp3"); + } else { + Game.choiceSelectorOn = this.id; + var choices = this.choicesFunction(); + var str = ""; + str += + '
x
'; + str += "

" + this.dname + "

" + '
'; + if (typeof choices === "string") { + str += choices; + } else if (choices.length > 0) { + var selected = 0; + for (var i in choices) { + if (choices[i].selected) selected = i; + } + Game.choiceSelectorChoices = choices; //this is a really dumb way of doing this i am so sorry + Game.choiceSelectorSelected = selected; + str += + '

' + + choices[selected].name + + "

" + + '
'; + + for (var i in choices) { + choices[i].id = i; + choices[i].order = choices[i].order || 0; + } + + var sortMap = function (a, b) { + if (a.order > b.order) return 1; + else if (a.order < b.order) return -1; + else return 0; + }; + choices.sort(sortMap); + + for (var i = 0; i < choices.length; i++) { + if (!choices[i]) continue; + var icon = choices[i].icon; + var id = choices[i].id; + if (choices[i].div) str += '
'; + str += + '
"; + } + } + l("toggleBox").innerHTML = str; + l("toggleBox").style.display = "block"; + l("toggleBox").focus(); + Game.tooltip.hide(); + PlaySound("snd/tick.mp3"); + success = 1; + } + } else if (this.pool != "prestige") { + var price = this.getPrice(); + if (this.canBuy() && !this.bought) { + Game.Spend(price); + this.bought = 1; + if (this.buyFunction) this.buyFunction(); + if (this.toggleInto) { + Game.Lock(this.toggleInto); + Game.Unlock(this.toggleInto); + } + Game.upgradesToRebuild = 1; + Game.recalculateGains = 1; + if (Game.CountsAsUpgradeOwned(this.pool)) Game.UpgradesOwned++; + Game.setOnCrate(0); + Game.tooltip.hide(); + PlaySound("snd/buy" + choose([1, 2, 3, 4]) + ".mp3", 0.75); + success = 1; + } + } else { + var price = this.getPrice(); + if (Game.heavenlyChips >= price && !this.bought) { + Game.heavenlyChips -= price; + Game.heavenlyChipsSpent += price; + this.unlocked = 1; + this.bought = 1; + if (this.buyFunction) this.buyFunction(); + Game.BuildAscendTree(this); + PlaySound("snd/buy" + choose([1, 2, 3, 4]) + ".mp3", 0.75); + PlaySound("snd/shimmerClick.mp3"); + //PlaySound('snd/buyHeavenly.mp3'); + success = 1; + } + } + } + if (this.bought && this.activateFunction) this.activateFunction(); + return success; + }; + Game.Upgrade.prototype.earn = + function () //just win the upgrades without spending anything + { + this.unlocked = 1; + this.bought = 1; + if (this.buyFunction) this.buyFunction(); + Game.upgradesToRebuild = 1; + Game.recalculateGains = 1; + if (Game.CountsAsUpgradeOwned(this.pool)) Game.UpgradesOwned++; + }; + Game.Upgrade.prototype.unearn = + function () //remove the upgrade, but keep it unlocked + { + this.bought = 0; + Game.upgradesToRebuild = 1; + Game.recalculateGains = 1; + if (Game.CountsAsUpgradeOwned(this.pool)) Game.UpgradesOwned--; + }; + Game.Upgrade.prototype.unlock = function () { + this.unlocked = 1; + Game.upgradesToRebuild = 1; + }; + Game.Upgrade.prototype.lose = function () { + this.unlocked = 0; + this.bought = 0; + Game.upgradesToRebuild = 1; + Game.recalculateGains = 1; + if (Game.CountsAsUpgradeOwned(this.pool)) Game.UpgradesOwned--; + }; + Game.Upgrade.prototype.toggle = function () //cheating only + { + if (!this.bought) { + this.bought = 1; + if (this.buyFunction) this.buyFunction(); + Game.upgradesToRebuild = 1; + Game.recalculateGains = 1; + if (Game.CountsAsUpgradeOwned(this.pool)) Game.UpgradesOwned++; + PlaySound("snd/buy" + choose([1, 2, 3, 4]) + ".mp3", 0.75); + if (this.pool == "prestige" || this.pool == "debug") + PlaySound("snd/shimmerClick.mp3"); + } else { + this.bought = 0; + Game.upgradesToRebuild = 1; + Game.recalculateGains = 1; + if (Game.CountsAsUpgradeOwned(this.pool)) Game.UpgradesOwned--; + PlaySound("snd/sell" + choose([1, 2, 3, 4]) + ".mp3", 0.75); + if (this.pool == "prestige" || this.pool == "debug") + PlaySound("snd/shimmerClick.mp3"); + } + if (Game.onMenu == "stats") Game.UpdateMenu(); + }; + + Game.CountsAsUpgradeOwned = function (pool) { + if (pool == "" || pool == "cookie" || pool == "tech") return true; + else return false; + }; + + /*AddEvent(l('toggleBox'),'blur',function()//if we click outside of the selector, close it + { + //this has a couple problems, such as when clicking on the upgrade - this toggles it off and back on instantly + l('toggleBox').style.display='none'; + l('toggleBox').innerHTML=''; + Game.choiceSelectorOn=-1; + } + );*/ + + Game.RequiresConfirmation = function (upgrade, prompt) { + upgrade.clickFunction = function () { + Game.Prompt("" + prompt, [ + [ + loc("Yes"), + "Game.UpgradesById[" + upgrade.id + "].buy(1);Game.ClosePrompt();", + ], + loc("No"), + ]); + return false; + }; + }; + + Game.Unlock = function (what) { + if (typeof what === "string") { + if (Game.Upgrades[what]) { + if (Game.Upgrades[what].unlocked == 0) { + Game.Upgrades[what].unlocked = 1; + Game.upgradesToRebuild = 1; + Game.recalculateGains = 1; + /*Game.Notify('Upgrade unlocked','
'+Game.Upgrades[what].dname+'
',Game.Upgrades[what].icon,6);*/ + } + } + } else { + for (var i in what) { + Game.Unlock(what[i]); + } + } + }; + Game.Lock = function (what) { + if (typeof what === "string") { + if (Game.Upgrades[what]) { + Game.Upgrades[what].unlocked = 0; + Game.upgradesToRebuild = 1; + if ( + Game.Upgrades[what].bought == 1 && + Game.CountsAsUpgradeOwned(Game.Upgrades[what].pool) + ) + Game.UpgradesOwned--; + Game.Upgrades[what].bought = 0; + Game.recalculateGains = 1; + } + } else { + for (var i in what) { + Game.Lock(what[i]); + } + } + }; + + Game.Has = function (what) { + var it = Game.Upgrades[what]; + if ( + it && + Game.ascensionMode == 1 && + (it.pool == "prestige" || it.tier == "fortune") + ) + return 0; + return it ? it.bought : 0; + }; + Game.HasUnlocked = function (what) { + return Game.Upgrades[what] ? Game.Upgrades[what].unlocked : 0; + }; + + Game.RebuildUpgrades = function () //recalculate the upgrades you can buy + { + Game.upgradesToRebuild = 0; + var list = []; + for (var i in Game.Upgrades) { + var me = Game.Upgrades[i]; + if ( + !me.bought && + me.pool != "debug" && + me.pool != "prestige" && + me.pool != "prestigeDecor" && + (Game.ascensionMode != 1 || (!me.lasting && me.tier != "fortune")) + ) { + if (me.unlocked) list.push(me); + } else if (me.displayFuncWhenOwned && me.bought) list.push(me); + } + var sortMap = function (a, b) { + var ap = a.pool == "toggle" ? a.order : a.getPrice(); + var bp = b.pool == "toggle" ? b.order : b.getPrice(); + if (ap > bp) return 1; + else if (ap < bp) return -1; + else return 0; + }; + list.sort(sortMap); + + Game.UpgradesInStore = []; + for (var i in list) { + Game.UpgradesInStore.push(list[i]); + } + var storeStr = ""; + var toggleStr = ""; + var techStr = ""; + var vaultStr = ""; + + if (Game.Has("Inspired checklist")) { + storeStr += + '
' + + loc( + "Will instantly purchase every upgrade you can afford, starting from the cheapest one.
Upgrades in the vault will not be auto-purchased.
You may place an upgrade into the vault by Shift-clicking on it." + ) + + "
", + "store" + ) + + ">" + + '
' + + loc("Buy all upgrades") + + "
" + + ""; + l("upgrades").classList.add("hasMenu"); + } else l("upgrades").classList.remove("hasMenu"); + + for (var i in Game.UpgradesInStore) { + //if (!Game.UpgradesInStore[i]) break; + var me = Game.UpgradesInStore[i]; + var str = Game.crate( + me, + "store", + "Game.UpgradesById[" + me.id + "].click(event);", + "upgrade" + i + ); + + /*var str='
'+Beautify(Math.round(me.getPrice()))+'
'+(me.pool=='toggle'?'[Togglable]':'[Upgrade]')+'
'+me.dname+'
'+me.desc+'
' + ,'store')+' '+Game.clickStr+'="Game.UpgradesById['+me.id+'].buy();" id="upgrade'+i+'" style="'+writeIcon(me.icon)+'">';*/ + if (me.pool == "toggle") toggleStr += str; + else if (me.pool == "tech") techStr += str; + else { + if (me.isVaulted() && Game.Has("Inspired checklist")) vaultStr += str; + else storeStr += str; + } + } + + l("upgrades").innerHTML = storeStr; + l("toggleUpgrades").innerHTML = toggleStr; + if (toggleStr == "") l("toggleUpgrades").style.display = "none"; + else l("toggleUpgrades").style.display = "block"; + l("techUpgrades").innerHTML = techStr; + if (techStr == "") l("techUpgrades").style.display = "none"; + else l("techUpgrades").style.display = "block"; + l("vaultUpgrades").innerHTML = vaultStr; + if (vaultStr == "") l("vaultUpgrades").style.display = "none"; + else l("vaultUpgrades").style.display = "block"; + }; + + Game.UnlockAt = []; //this contains an array of every upgrade with a cookie requirement in the form of {cookies:(amount of cookies earned required),name:(name of upgrade or achievement to unlock)} (and possibly require:(name of upgrade of achievement to own)) + //note : the cookie will not be added to the list if it contains locked:1 (use for seasonal cookies and such) + + var strCookieProductionMultiplierPlus = loc( + "Cookie production multiplier +%1%.", + "[x]" + ); + var getStrCookieProductionMultiplierPlus = function (x) { + return strCookieProductionMultiplierPlus.replace("[x]", x); + }; + var getStrThousandFingersGain = function (x) { + return loc("Multiplies the gain from %1 by %2.", [ + getUpgradeName("Thousand fingers"), + x, + ]); + }; + var strKittenDesc = loc("You gain more CpS the more milk you have."); + var getStrClickingGains = function (x) { + return loc("Clicking gains +%1% of your CpS.", x); + }; + + Game.NewUpgradeCookie = function (obj) { + var upgrade = new Game.Upgrade( + obj.name, + getStrCookieProductionMultiplierPlus( + Beautify( + typeof obj.power === "function" ? obj.power(obj) : obj.power, + 1 + ) + ) + (EN ? "" + obj.desc + "" : ""), + obj.price, + obj.icon + ); + upgrade.power = obj.power; + upgrade.pool = "cookie"; + var toPush = { cookies: obj.price / 20, name: obj.name }; + if (obj.require) toPush.require = obj.require; + if (obj.season) toPush.season = obj.season; + if (!obj.locked) Game.UnlockAt.push(toPush); + return upgrade; + }; + + //tiered upgrades system + //each building has several upgrade tiers + //all upgrades in the same tier have the same color, unlock threshold and price multiplier + Game.Tiers = { + 1: { + name: "Plain", + unlock: 1, + achievUnlock: 1, + iconRow: 0, + color: "#ccb3ac", + price: 10, + }, + 2: { + name: "Berrylium", + unlock: 5, + achievUnlock: 50, + iconRow: 1, + color: "#ff89e7", + price: 50, + }, + 3: { + name: "Blueberrylium", + unlock: 25, + achievUnlock: 100, + iconRow: 2, + color: "#00deff", + price: 500, + }, + 4: { + name: "Chalcedhoney", + unlock: 50, + achievUnlock: 150, + iconRow: 13, + color: "#ffcc2f", + price: 50000, + }, + 5: { + name: "Buttergold", + unlock: 100, + achievUnlock: 200, + iconRow: 14, + color: "#e9d673", + price: 5000000, + }, + 6: { + name: "Sugarmuck", + unlock: 150, + achievUnlock: 250, + iconRow: 15, + color: "#a8bf91", + price: 500000000, + }, + 7: { + name: "Jetmint", + unlock: 200, + achievUnlock: 300, + iconRow: 16, + color: "#60ff50", + price: 500000000000, + }, + 8: { + name: "Cherrysilver", + unlock: 250, + achievUnlock: 350, + iconRow: 17, + color: "#f01700", + price: 500000000000000, + }, + 9: { + name: "Hazelrald", + unlock: 300, + achievUnlock: 400, + iconRow: 18, + color: "#9ab834", + price: 500000000000000000, + }, + 10: { + name: "Mooncandy", + unlock: 350, + achievUnlock: 450, + iconRow: 19, + color: "#7e7ab9", + price: 500000000000000000000, + }, + 11: { + name: "Astrofudge", + unlock: 400, + achievUnlock: 500, + iconRow: 28, + color: "#9a3316", + price: 5000000000000000000000000, + }, + 12: { + name: "Alabascream", + unlock: 450, + achievUnlock: 550, + iconRow: 30, + color: "#c1a88c", + price: 50000000000000000000000000000, + }, + 13: { + name: "Iridyum", + unlock: 500, + achievUnlock: 600, + iconRow: 31, + color: "#adb1b3", + price: 500000000000000000000000000000000, + }, + 14: { + name: "Glucosmium", + unlock: 550, + achievUnlock: 650, + iconRow: 34, + color: "#ff89e7", + price: 5000000000000000000000000000000000000, + }, + synergy1: { + name: "Synergy I", + unlock: 15, + iconRow: 20, + color: "#008595", + special: 1, + req: "Synergies Vol. I", + price: 200000, + }, + synergy2: { + name: "Synergy II", + unlock: 75, + iconRow: 29, + color: "#008595", + special: 1, + req: "Synergies Vol. II", + price: 200000000000, + }, + fortune: { + name: "Fortune", + unlock: -1, + iconRow: 32, + color: "#9ab834", + special: 1, + price: 77777777777777777777777777777, + }, + }; + for (var i in Game.Tiers) { + Game.Tiers[i].upgrades = []; + } + Game.GetIcon = function (type, tier) { + var col = 0; + if (type == "Kitten") col = 18; + else col = Game.Objects[type].iconColumn; + return [col, Game.Tiers[tier].iconRow]; + }; + Game.SetTier = function (building, tier) { + if (!Game.Objects[building]) + console.log("Warning: No building named", building); + Game.last.tier = tier; + Game.last.buildingTie = Game.Objects[building]; + if (Game.last.type == "achievement") + Game.Objects[building].tieredAchievs[tier] = Game.last; + else Game.Objects[building].tieredUpgrades[tier] = Game.last; + }; + Game.MakeTiered = function (upgrade, tier, col) { + upgrade.tier = tier; + if (typeof col !== "undefined") + upgrade.icon = [col, Game.Tiers[tier].iconRow]; + }; + Game.TieredUpgrade = function (name, desc, building, tier) { + if (tier == "fortune" && building) + desc = + loc("%1 are %2% more efficient and %3% cheaper.", [ + cap(Game.Objects[building].plural), + 7, + 7, + ]) + desc; + else + desc = + loc( + "%1 are twice as efficient.", + cap(Game.Objects[building].plural) + ) + desc; + var upgrade = new Game.Upgrade( + name, + desc, + Game.Objects[building].basePrice * Game.Tiers[tier].price, + Game.GetIcon(building, tier) + ); + if (tier != "fortune") { + upgrade.descFunc = function () { + return ( + (Game.ascensionMode != 1 && + Game.Has(this.buildingTie1.unshackleUpgrade) && + Game.Has(Game.Tiers[this.tier].unshackleUpgrade) + ? '
' + + loc( + "Unshackled! +%1% extra production.", + Math.round( + (this.buildingTie.id == 1 + ? 0.5 + : (20 - this.buildingTie.id) * 0.1) * 100 + ) + ) + + '
' + : "") + this.ddesc + ); + }; + } + + Game.SetTier(building, tier); + if (!upgrade.buildingTie1 && building) + upgrade.buildingTie1 = Game.Objects[building]; + if (tier == "fortune" && building) + Game.Objects[building].fortune = upgrade; + return upgrade; + }; + Game.SynergyUpgrade = function (name, desc, building1, building2, tier) { + /* + creates a new upgrade that : + -unlocks when you have tier.unlock of building1 and building2 + -is priced at (building1.price*10+building2.price*1)*tier.price (formerly : Math.sqrt(building1.price*building2.price)*tier.price) + -gives +(0.1*building1)% cps to building2 and +(5*building2)% cps to building1 + -if building2 is below building1 in worth, swap them + */ + //if (Game.Objects[building1].basePrice>Game.Objects[building2].basePrice) {var temp=building2;building2=building1;building1=temp;} + var b1 = Game.Objects[building1]; + var b2 = Game.Objects[building2]; + if (b1.basePrice > b2.basePrice) { + b1 = Game.Objects[building2]; + b2 = Game.Objects[building1]; + } //swap + + desc = + loc("%1 gain +%2% CpS per %3.", [cap(b1.plural), 5, b2.single]) + + "
" + + loc("%1 gain +%2% CpS per %3.", [ + cap(b2.plural), + 0.1, + b1.single, + ]) + + (EN ? desc : ""); + var upgrade = new Game.Upgrade( + name, + desc, + (b1.basePrice * 10 + b2.basePrice * 1) * Game.Tiers[tier].price, + Game.GetIcon(building1, tier) + ); //Math.sqrt(b1.basePrice*b2.basePrice)*Game.Tiers[tier].price + upgrade.tier = tier; + upgrade.buildingTie1 = b1; + upgrade.buildingTie2 = b2; + upgrade.priceFunc = function () { + return ( + (this.buildingTie1.basePrice * 10 + this.buildingTie2.basePrice * 1) * + Game.Tiers[this.tier].price * + (Game.Has("Chimera") ? 0.98 : 1) + ); + }; + Game.Objects[building1].synergies.push(upgrade); + Game.Objects[building2].synergies.push(upgrade); + //Game.SetTier(building1,tier); + return upgrade; + }; + Game.GetTieredCpsMult = function (me) { + var mult = 1; + for (var i in me.tieredUpgrades) { + if ( + !Game.Tiers[me.tieredUpgrades[i].tier].special && + Game.Has(me.tieredUpgrades[i].name) + ) { + var tierMult = 2; + //unshackled + if ( + Game.ascensionMode != 1 && + Game.Has(me.unshackleUpgrade) && + Game.Has(Game.Tiers[me.tieredUpgrades[i].tier].unshackleUpgrade) + ) + tierMult += me.id == 1 ? 0.5 : (20 - me.id) * 0.1; + mult *= tierMult; + } + } + for (var i in me.synergies) { + var syn = me.synergies[i]; + if (Game.Has(syn.name)) { + if (syn.buildingTie1.name == me.name) + mult *= 1 + 0.05 * syn.buildingTie2.amount; + else if (syn.buildingTie2.name == me.name) + mult *= 1 + 0.001 * syn.buildingTie1.amount; + } + } + if (me.fortune && Game.Has(me.fortune.name)) mult *= 1.07; + if (me.grandma && Game.Has(me.grandma.name)) + mult *= 1 + Game.Objects["Grandma"].amount * 0.01 * (1 / (me.id - 1)); + return mult; + }; + Game.UnlockTiered = function (me) { + for (var i in me.tieredUpgrades) { + if ( + Game.Tiers[me.tieredUpgrades[i].tier].unlock != -1 && + me.amount >= Game.Tiers[me.tieredUpgrades[i].tier].unlock + ) + Game.Unlock(me.tieredUpgrades[i].name); + } + for (var i in me.tieredAchievs) { + if (me.amount >= Game.Tiers[me.tieredAchievs[i].tier].achievUnlock) + Game.Win(me.tieredAchievs[i].name); + } + for (var i in me.synergies) { + var syn = me.synergies[i]; + if ( + Game.Has(Game.Tiers[syn.tier].req) && + syn.buildingTie1.amount >= Game.Tiers[syn.tier].unlock && + syn.buildingTie2.amount >= Game.Tiers[syn.tier].unlock + ) + Game.Unlock(syn.name); + } + }; + + var pool = ""; + var power = 0; + + //define upgrades + //WARNING : do NOT add new upgrades in between, this breaks the saves. Add them at the end ! + var order = 100; //this is used to set the order in which the items are listed + new Game.Upgrade( + "Reinforced index finger", + loc("The mouse and cursors are twice as efficient.") + + "prod prod", + 100, + [0, 0] + ); + Game.MakeTiered(Game.last, 1, 0); + new Game.Upgrade( + "Carpal tunnel prevention cream", + loc("The mouse and cursors are twice as efficient.") + + "it... it hurts to click...", + 500, + [0, 1] + ); + Game.MakeTiered(Game.last, 2, 0); + new Game.Upgrade( + "Ambidextrous", + loc("The mouse and cursors are twice as efficient.") + + "Look ma, both hands!", + 10000, + [0, 2] + ); + Game.MakeTiered(Game.last, 3, 0); + new Game.Upgrade( + "Thousand fingers", + loc( + "The mouse and cursors gain +%1 cookies for each non-cursor building owned.", + 0.1 + ) + "clickity", + 100000, + [0, 13] + ); + Game.MakeTiered(Game.last, 4, 0); + + new Game.Upgrade( + "Million fingers", + getStrThousandFingersGain(5) + "clickityclickity", + 10000000, + [0, 14] + ); + Game.MakeTiered(Game.last, 5, 0); + new Game.Upgrade( + "Billion fingers", + getStrThousandFingersGain(10) + "clickityclickityclickity", + 100000000, + [0, 15] + ); + Game.MakeTiered(Game.last, 6, 0); + new Game.Upgrade( + "Trillion fingers", + getStrThousandFingersGain(20) + "clickityclickityclickityclickity", + 1000000000, + [0, 16] + ); + Game.MakeTiered(Game.last, 7, 0); + + order = 200; + Game.TieredUpgrade( + "Forwards from grandma", + "RE:RE:thought you'd get a kick out of this ;))", + "Grandma", + 1 + ); + Game.TieredUpgrade( + "Steel-plated rolling pins", + "Just what you kneaded.", + "Grandma", + 2 + ); + Game.TieredUpgrade("Lubricated dentures", "squish", "Grandma", 3); + + order = 300; + Game.TieredUpgrade("Cheap hoes", "Rake in the dough!", "Farm", 1); + Game.TieredUpgrade( + "Fertilizer", + "It's chocolate, I swear.", + "Farm", + 2 + ); + Game.TieredUpgrade( + "Cookie trees", + "A relative of the breadfruit.", + "Farm", + 3 + ); + + order = 500; + Game.TieredUpgrade( + "Sturdier conveyor belts", + "You're going places.", + "Factory", + 1 + ); + Game.TieredUpgrade( + "Child labor", + "Cheaper, healthier workforce.", + "Factory", + 2 + ); + Game.TieredUpgrade( + "Sweatshop", + "Slackers will be terminated.", + "Factory", + 3 + ); + + order = 400; + Game.TieredUpgrade( + "Sugar gas", + "A pink, volatile gas, found in the depths of some chocolate caves.", + "Mine", + 1 + ); + Game.TieredUpgrade("Megadrill", "You're in deep.", "Mine", 2); + Game.TieredUpgrade("Ultradrill", "Finally caved in?", "Mine", 3); + + order = 600; + Game.TieredUpgrade( + "Vanilla nebulae", + "If you removed your space helmet, you could probably smell it!
(Note : don't do that.)
", + "Shipment", + 1 + ); + Game.TieredUpgrade( + "Wormholes", + "By using these as shortcuts, your ships can travel much faster.", + "Shipment", + 2 + ); + Game.TieredUpgrade( + "Frequent flyer", + "Come back soon!", + "Shipment", + 3 + ); + + order = 700; + Game.TieredUpgrade( + "Antimony", + "Actually worth a lot of mony.", + "Alchemy lab", + 1 + ); + Game.TieredUpgrade( + "Essence of dough", + "Extracted through the 5 ancient steps of alchemical baking.", + "Alchemy lab", + 2 + ); + Game.TieredUpgrade( + "True chocolate", + "The purest form of cacao.", + "Alchemy lab", + 3 + ); + + order = 800; + Game.TieredUpgrade( + "Ancient tablet", + "A strange slab of peanut brittle, holding an ancient cookie recipe. Neat!", + "Portal", + 1 + ); + Game.TieredUpgrade( + "Insane oatling workers", + "ARISE, MY MINIONS!", + "Portal", + 2 + ); + Game.TieredUpgrade( + "Soul bond", + "So I just sign up and get more cookies? Sure, whatever!", + "Portal", + 3 + ); + + order = 900; + Game.TieredUpgrade( + "Flux capacitors", + "Bake to the future.", + "Time machine", + 1 + ); + Game.TieredUpgrade( + "Time paradox resolver", + "No more fooling around with your own grandmother!", + "Time machine", + 2 + ); + Game.TieredUpgrade( + "Quantum conundrum", + "There is only one constant, and that is universal uncertainty.
Or is it?
", + "Time machine", + 3 + ); + + order = 20000; + new Game.Upgrade( + "Kitten helpers", + strKittenDesc + "meow may I help you", + 9000000, + Game.GetIcon("Kitten", 1) + ); + Game.last.kitten = 1; + Game.MakeTiered(Game.last, 1, 18); + new Game.Upgrade( + "Kitten workers", + strKittenDesc + "meow meow meow meow", + 9000000000, + Game.GetIcon("Kitten", 2) + ); + Game.last.kitten = 1; + Game.MakeTiered(Game.last, 2, 18); + + order = 10000; + Game.NewUpgradeCookie({ + name: "Plain cookies", + desc: "We all gotta start somewhere.", + icon: [2, 3], + power: 1, + price: 999999, + }); + Game.NewUpgradeCookie({ + name: "Sugar cookies", + desc: "Tasty, if a little unimaginative.", + icon: [7, 3], + power: 1, + price: 999999 * 5, + }); + Game.NewUpgradeCookie({ + name: "Oatmeal raisin cookies", + desc: "No raisin to hate these.", + icon: [0, 3], + power: 1, + price: 9999999, + }); + Game.NewUpgradeCookie({ + name: "Peanut butter cookies", + desc: "Get yourself some jam cookies!", + icon: [1, 3], + power: 2, + price: 9999999 * 5, + }); + Game.NewUpgradeCookie({ + name: "Coconut cookies", + desc: "Flaky, but not unreliable. Some people go crazy for these.", + icon: [3, 3], + power: 2, + price: 99999999, + }); + order = 10001; + Game.NewUpgradeCookie({ + name: "White chocolate cookies", + desc: "I know what you'll say. It's just cocoa butter! It's not real chocolate!
Oh please.", + icon: [4, 3], + power: 2, + price: 99999999 * 5, + }); + order = 10000; + Game.NewUpgradeCookie({ + name: "Macadamia nut cookies", + desc: "They're macadamn delicious!", + icon: [5, 3], + power: 2, + price: 99999999, + }); + order = 10002; + Game.NewUpgradeCookie({ + name: "Double-chip cookies", + desc: "DOUBLE THE CHIPS
DOUBLE THE TASTY
(double the calories)", + icon: [6, 3], + power: 2, + price: 999999999 * 5, + }); + Game.NewUpgradeCookie({ + name: "White chocolate macadamia nut cookies", + desc: "Orteil's favorite.", + icon: [8, 3], + power: 2, + price: 9999999999, + }); + Game.NewUpgradeCookie({ + name: "All-chocolate cookies", + desc: "CHOCOVERDOSE.", + icon: [9, 3], + power: 2, + price: 9999999999 * 5, + }); + + order = 100; + new Game.Upgrade( + "Quadrillion fingers", + getStrThousandFingersGain(20) + + "clickityclickityclickityclickityclick", + 10000000000, + [0, 17] + ); + Game.MakeTiered(Game.last, 8, 0); + + order = 200; + Game.TieredUpgrade("Prune juice", "Gets me going.", "Grandma", 4); + order = 300; + Game.TieredUpgrade( + "Genetically-modified cookies", + "All-natural mutations.", + "Farm", + 4 + ); + order = 500; + Game.TieredUpgrade( + "Radium reactors", + "Gives your cookies a healthy glow.", + "Factory", + 4 + ); + order = 400; + Game.TieredUpgrade( + "Ultimadrill", + "Pierce the heavens, etc.", + "Mine", + 4 + ); + order = 600; + Game.TieredUpgrade("Warp drive", "To boldly bake.", "Shipment", 4); + order = 700; + Game.TieredUpgrade( + "Ambrosia", + "Adding this to the cookie mix is sure to make them even more addictive!
Perhaps dangerously so.
Let's hope you can keep selling these legally.
", + "Alchemy lab", + 4 + ); + order = 800; + Game.TieredUpgrade( + "Sanity dance", + "We can change if we want to.
We can leave our brains behind.
", + "Portal", + 4 + ); + order = 900; + Game.TieredUpgrade( + "Causality enforcer", + "What happened, happened.", + "Time machine", + 4 + ); + + order = 5000; + new Game.Upgrade( + "Lucky day", + loc( + "Golden cookies appear twice as often and stay twice as long." + ) + "Oh hey, a four-leaf penny!", + 777777777, + [27, 6] + ); + new Game.Upgrade( + "Serendipity", + loc( + "Golden cookies appear twice as often and stay twice as long." + ) + "What joy! Seven horseshoes!", + 77777777777, + [27, 6] + ); + + order = 20000; + new Game.Upgrade( + "Kitten engineers", + strKittenDesc + "meow meow meow meow, sir", + 90000000000000, + Game.GetIcon("Kitten", 3) + ); + Game.last.kitten = 1; + Game.MakeTiered(Game.last, 3, 18); + + order = 10020; + Game.NewUpgradeCookie({ + name: "Dark chocolate-coated cookies", + desc: "These absorb light so well you almost need to squint to see them.", + icon: [10, 3], + power: 5, + price: 99999999999, + }); + Game.NewUpgradeCookie({ + name: "White chocolate-coated cookies", + desc: "These dazzling cookies absolutely glisten with flavor.", + icon: [11, 3], + power: 5, + price: 99999999999, + }); + + Game.GrandmaSynergies = []; + Game.GrandmaSynergy = function (name, desc, building) { + var building = Game.Objects[building]; + var grandmaNumber = loc("%1 grandma", LBeautify(building.id - 1)); + desc = + loc( + "%1 are twice as efficient.", + cap(Game.Objects["Grandma"].plural) + ) + + " " + + loc("%1 gain +%2% CpS per %3.", [ + cap(building.plural), + 1, + grandmaNumber, + ]) + + "" + + desc + + ""; + + var upgrade = new Game.Upgrade( + name, + desc, + building.basePrice * Game.Tiers[2].price, + [10, 9], + function () { + Game.Objects["Grandma"].redraw(); + } + ); + building.grandma = upgrade; + upgrade.buildingTie = building; + Game.GrandmaSynergies.push(upgrade.name); + return upgrade; + }; + + order = 250; + Game.GrandmaSynergy( + "Farmer grandmas", + "A nice farmer to grow more cookies.", + "Farm" + ); + Game.GrandmaSynergy( + "Miner grandmas", + "A nice miner to dig more cookies.", + "Mine" + ); + Game.GrandmaSynergy( + "Worker grandmas", + "A nice worker to manufacture more cookies.", + "Factory" + ); + Game.GrandmaSynergy( + "Cosmic grandmas", + "A nice thing to... uh... cookies.", + "Shipment" + ); + Game.GrandmaSynergy( + "Transmuted grandmas", + "A nice golden grandma to convert into more cookies.", + "Alchemy lab" + ); + Game.GrandmaSynergy( + "Altered grandmas", + "a NiCe GrAnDmA tO bA##########", + "Portal" + ); + Game.GrandmaSynergy( + "Grandmas' grandmas", + "A nice grandma's nice grandma to bake double the cookies.", + "Time machine" + ); + + order = 14000; + Game.baseResearchTime = Game.fps * 60 * 30; + Game.SetResearch = function (what, time) { + if (Game.Upgrades[what] && !Game.Has(what)) { + Game.researchT = Game.baseResearchTime; + if (Game.Has("Persistent memory")) + Game.researchT = Math.ceil(Game.baseResearchTime / 10); + if (Game.Has("Ultrascience")) Game.researchT = Game.fps * 5; + Game.nextResearch = Game.Upgrades[what].id; + Game.Notify( + loc("Research has begun"), + loc("Your bingo center/research facility is conducting experiments."), + [9, 0] + ); + } + }; + + new Game.Upgrade( + "Bingo center/Research facility", + loc( + "Grandma-operated science lab and leisure club.
Grandmas are 4 times as efficient.
Regularly unlocks new upgrades." + ) + + "What could possibly keep those grandmothers in check?...
Bingo.
", + 1000000000000000, + [11, 9], + function () { + Game.SetResearch("Specialized chocolate chips"); + } + ); + Game.last.noPerm = 1; + + order = 15000; + new Game.Upgrade( + "Specialized chocolate chips", + getStrCookieProductionMultiplierPlus(1) + + "Computer-designed chocolate chips. Computer chips, if you will.", + 1000000000000000, + [0, 9], + function () { + Game.SetResearch("Designer cocoa beans"); + } + ); + Game.last.pool = "tech"; + new Game.Upgrade( + "Designer cocoa beans", + getStrCookieProductionMultiplierPlus(2) + + "Now more aerodynamic than ever!", + 2000000000000000, + [1, 9], + function () { + Game.SetResearch("Ritual rolling pins"); + } + ); + Game.last.pool = "tech"; + new Game.Upgrade( + "Ritual rolling pins", + loc( + "%1 are twice as efficient.", + cap(Game.Objects["Grandma"].plural) + ) + "The result of years of scientific research!", + 4000000000000000, + [2, 9], + function () { + Game.SetResearch("Underworld ovens"); + } + ); + Game.last.pool = "tech"; + new Game.Upgrade( + "Underworld ovens", + getStrCookieProductionMultiplierPlus(3) + + "Powered by science, of course!", + 8000000000000000, + [3, 9], + function () { + Game.SetResearch("One mind"); + } + ); + Game.last.pool = "tech"; + new Game.Upgrade( + "One mind", + loc("Each %1 gains +%2 base CpS per %3.", [ + loc("grandma"), + "0.02", + loc("grandma"), + ]) + + '
' + + loc( + "Note: the grandmothers are growing restless. Do not encourage them." + ) + + "
We are one. We are many.", + 16000000000000000, + [4, 9], + function () { + Game.elderWrath = 1; + Game.SetResearch("Exotic nuts"); + Game.storeToRefresh = 1; + } + ); + Game.last.pool = "tech"; + //Game.last.clickFunction=function(){return confirm('Warning : purchasing this will have unexpected, and potentially undesirable results!\nIt\'s all downhill from here. You have been warned!\nPurchase anyway?');}; + Game.RequiresConfirmation( + Game.last, + '
' + + loc( + "Warning: purchasing this will have unexpected, and potentially undesirable results!
It's all downhill from here. You have been warned!

Purchase anyway?" + ) + + "
" + ); + new Game.Upgrade( + "Exotic nuts", + getStrCookieProductionMultiplierPlus(4) + + "You'll go crazy over these!", + 32000000000000000, + [5, 9], + function () { + Game.SetResearch("Communal brainsweep"); + } + ); + Game.last.pool = "tech"; + new Game.Upgrade( + "Communal brainsweep", + (EN + ? "Each grandma gains another +0.02 base CpS per grandma." + : loc("Each %1 gains +%2 base CpS per %3.", [ + loc("grandma"), + "0.02", + loc("grandma"), + ])) + + '
' + + loc( + "Note: proceeding any further in scientific research may have unexpected results. You have been warned." + ) + + "
We fuse. We merge. We grow.", + 64000000000000000, + [6, 9], + function () { + Game.elderWrath = 2; + Game.SetResearch("Arcane sugar"); + Game.storeToRefresh = 1; + } + ); + Game.last.pool = "tech"; + new Game.Upgrade( + "Arcane sugar", + getStrCookieProductionMultiplierPlus(5) + + "Tastes like insects, ligaments, and molasses.", + 128000000000000000, + [7, 9], + function () { + Game.SetResearch("Elder Pact"); + } + ); + Game.last.pool = "tech"; + new Game.Upgrade( + "Elder Pact", + loc("Each %1 gains +%2 base CpS per %3.", [ + loc("grandma"), + "0.05", + loc("portal"), + ]) + + '
' + + loc("Note: this is a bad idea.") + + "
squirm crawl slither writhe
today we rise
", + 256000000000000000, + [8, 9], + function () { + Game.elderWrath = 3; + Game.storeToRefresh = 1; + } + ); + Game.last.pool = "tech"; + new Game.Upgrade( + "Elder Pledge", + loc("Contains the wrath of the elders, at least for a while.") + + "This is a simple ritual involving anti-aging cream, cookie batter mixed in the moonlight, and a live chicken.", + 1, + [9, 9], + function () { + Game.elderWrath = 0; + Game.pledges++; + Game.pledgeT = Game.getPledgeDuration(); + Game.Unlock("Elder Covenant"); + Game.CollectWrinklers(); + Game.storeToRefresh = 1; + } + ); + Game.getPledgeDuration = function () { + return Game.fps * 60 * (Game.Has("Sacrificial rolling pins") ? 60 : 30); + }; + Game.last.pool = "toggle"; + Game.last.displayFuncWhenOwned = function () { + return ( + '
' + + loc("Time remaining until pledge runs out:") + + "
" + + Game.sayTime(Game.pledgeT, -1) + + "
" + ); + }; + Game.last.timerDisplay = function () { + if (!Game.Upgrades["Elder Pledge"].bought) return -1; + else return 1 - Game.pledgeT / Game.getPledgeDuration(); + }; + Game.last.priceFunc = function () { + return Math.pow(8, Math.min(Game.pledges + 2, 14)); + }; + + Game.last.descFunc = function () { + return ( + '
' + + (Game.pledges == 0 + ? loc("You haven't pledged to the elders yet.") + : loc( + "You've pledged to the elders %1 times.", + LBeautify(Game.pledges) + )) + + '
' + + this.ddesc + ); + }; + + order = 150; + new Game.Upgrade( + "Plastic mouse", + getStrClickingGains(1) + "Slightly squeaky.", + 50000, + [11, 0] + ); + Game.MakeTiered(Game.last, 1, 11); + new Game.Upgrade( + "Iron mouse", + getStrClickingGains(1) + "Click like it's 1349!", + 5000000, + [11, 1] + ); + Game.MakeTiered(Game.last, 2, 11); + new Game.Upgrade( + "Titanium mouse", + getStrClickingGains(1) + "Heavy, but powerful.", + 500000000, + [11, 2] + ); + Game.MakeTiered(Game.last, 3, 11); + new Game.Upgrade( + "Adamantium mouse", + getStrClickingGains(1) + "You could cut diamond with these.", + 50000000000, + [11, 13] + ); + Game.MakeTiered(Game.last, 4, 11); + + order = 40000; + new Game.Upgrade( + "Ultrascience", + loc("Research takes only 5 seconds.") + "YEAH, SCIENCE!", + 7, + [9, 2] + ); //debug purposes only + Game.last.pool = "debug"; + + order = 10020; + Game.NewUpgradeCookie({ + name: "Eclipse cookies", + desc: "Look to the cookie.", + icon: [0, 4], + power: 2, + price: 99999999999 * 5, + }); + Game.NewUpgradeCookie({ + name: "Zebra cookies", + desc: "...", + icon: [1, 4], + power: 2, + price: 999999999999, + }); + + order = 100; + new Game.Upgrade( + "Quintillion fingers", + getStrThousandFingersGain(20) + + "man, just go click click click click click, it's real easy, man.", + 10000000000000, + [0, 18] + ); + Game.MakeTiered(Game.last, 9, 0); + + order = 40000; + new Game.Upgrade( + "Gold hoard", + loc("Golden cookies appear really often.") + + "That's entirely too many.", + 7, + [10, 14] + ); //debug purposes only + Game.last.pool = "debug"; + + order = 15000; + new Game.Upgrade( + "Elder Covenant", + loc( + "Puts a permanent end to the elders' wrath, at the cost of %1% of your CpS.", + 5 + ) + + "This is a complicated ritual involving silly, inconsequential trivialities such as cursed laxatives, century-old cacao, and an infant.
Don't question it.
", + 66666666666666, + [8, 9], + function () { + Game.pledgeT = 0; + Game.Lock("Revoke Elder Covenant"); + Game.Unlock("Revoke Elder Covenant"); + Game.Lock("Elder Pledge"); + Game.Win("Elder calm"); + Game.CollectWrinklers(); + Game.storeToRefresh = 1; + } + ); + Game.last.pool = "toggle"; + + new Game.Upgrade( + "Revoke Elder Covenant", + loc( + "You will get %1% of your CpS back, but the grandmatriarchs will return.", + 5 + ) + "we
rise
again
", + 6666666666, + [8, 9], + function () { + Game.Lock("Elder Covenant"); + Game.Unlock("Elder Covenant"); + } + ); + Game.last.pool = "toggle"; + + order = 5000; + new Game.Upgrade( + "Get lucky", + loc("Golden cookie effects last twice as long.") + + "You've been up all night, haven't you?", + 77777777777777, + [27, 6] + ); + + order = 15000; + new Game.Upgrade( + "Sacrificial rolling pins", + loc("Elder pledges last twice as long.") + + "These are mostly just for spreading the anti-aging cream.
(And accessorily, shortening the chicken's suffering.)
", + 2888888888888, + [2, 9] + ); + + order = 10020; + Game.NewUpgradeCookie({ + name: "Snickerdoodles", + desc: "True to their name.", + icon: [2, 4], + power: 2, + price: 999999999999 * 5, + }); + Game.NewUpgradeCookie({ + name: "Stroopwafels", + desc: "If it ain't dutch, it ain't much.", + icon: [3, 4], + power: 2, + price: 9999999999999, + }); + Game.NewUpgradeCookie({ + name: "Macaroons", + desc: "Not to be confused with macarons.
These have coconut, okay?", + icon: [4, 4], + power: 2, + price: 9999999999999 * 5, + }); + + order = 40000; + new Game.Upgrade( + "Neuromancy", + loc("Can toggle upgrades on and off at will in the stats menu.") + + "Can also come in handy to unsee things that can't be unseen.", + 7, + [4, 9] + ); //debug purposes only + Game.last.pool = "debug"; + + order = 10020; + Game.NewUpgradeCookie({ + name: "Empire biscuits", + desc: "For your growing cookie empire, of course!", + icon: [5, 4], + power: 2, + price: 99999999999999, + }); + order = 10031; + Game.NewUpgradeCookie({ + name: "British tea biscuits", + desc: "Quite.", + icon: [6, 4], + require: "Tin of british tea biscuits", + power: 2, + price: 99999999999999, + }); + Game.NewUpgradeCookie({ + name: "Chocolate british tea biscuits", + desc: "Yes, quite.", + icon: [7, 4], + require: Game.last.name, + power: 2, + price: 99999999999999, + }); + Game.NewUpgradeCookie({ + name: "Round british tea biscuits", + desc: "Yes, quite riveting.", + icon: [8, 4], + require: Game.last.name, + power: 2, + price: 99999999999999, + }); + Game.NewUpgradeCookie({ + name: "Round chocolate british tea biscuits", + desc: "Yes, quite riveting indeed.", + icon: [9, 4], + require: Game.last.name, + power: 2, + price: 99999999999999, + }); + Game.NewUpgradeCookie({ + name: "Round british tea biscuits with heart motif", + desc: "Yes, quite riveting indeed, old chap.", + icon: [10, 4], + require: Game.last.name, + power: 2, + price: 99999999999999, + }); + Game.NewUpgradeCookie({ + name: "Round chocolate british tea biscuits with heart motif", + desc: "I like cookies.", + icon: [11, 4], + require: Game.last.name, + power: 2, + price: 99999999999999, + }); + + order = 1000; + Game.TieredUpgrade( + "Sugar bosons", + "Sweet firm bosons.", + "Antimatter condenser", + 1 + ); + Game.TieredUpgrade( + "String theory", + "Reveals new insight about the true meaning of baking cookies (and, as a bonus, the structure of the universe).", + "Antimatter condenser", + 2 + ); + Game.TieredUpgrade( + "Large macaron collider", + "How singular!", + "Antimatter condenser", + 3 + ); + Game.TieredUpgrade( + "Big bang bake", + "And that's how it all began.", + "Antimatter condenser", + 4 + ); + + order = 255; + Game.GrandmaSynergy( + "Antigrandmas", + "A mean antigrandma to vomit more cookies.", + "Antimatter condenser" + ); + + order = 10020; + Game.NewUpgradeCookie({ + name: "Madeleines", + desc: "Unforgettable!", + icon: [12, 3], + power: 2, + price: 99999999999999 * 5, + }); + Game.NewUpgradeCookie({ + name: "Palmiers", + desc: "Palmier than you!", + icon: [13, 3], + power: 2, + price: 99999999999999 * 5, + }); + Game.NewUpgradeCookie({ + name: "Palets", + desc: "You could probably play hockey with these.
I mean, you're welcome to try.", + icon: [12, 4], + power: 2, + price: 999999999999999, + }); + Game.NewUpgradeCookie({ + name: "Sablés", + desc: "The name implies they're made of sand. But you know better, don't you?", + icon: [13, 4], + power: 2, + price: 999999999999999, + }); + + order = 20000; + new Game.Upgrade( + "Kitten overseers", + strKittenDesc + "my purrpose is to serve you, sir", + 90000000000000000, + Game.GetIcon("Kitten", 4) + ); + Game.last.kitten = 1; + Game.MakeTiered(Game.last, 4, 18); + + order = 100; + new Game.Upgrade( + "Sextillion fingers", + getStrThousandFingersGain(20) + + "sometimes
things just
click
", + 10000000000000000, + [0, 19] + ); + Game.MakeTiered(Game.last, 10, 0); + + order = 200; + Game.TieredUpgrade( + "Double-thick glasses", + "Oh... so THAT's what I've been baking.", + "Grandma", + 5 + ); + order = 300; + Game.TieredUpgrade( + "Gingerbread scarecrows", + "Staring at your crops with mischievous glee.", + "Farm", + 5 + ); + order = 500; + Game.TieredUpgrade( + "Recombobulators", + "A major part of cookie recombobulation.", + "Factory", + 5 + ); + order = 400; + Game.TieredUpgrade( + "H-bomb mining", + "Questionable efficiency, but spectacular nonetheless.", + "Mine", + 5 + ); + order = 600; + Game.TieredUpgrade( + "Chocolate monoliths", + "My god. It's full of chocolate bars.", + "Shipment", + 5 + ); + order = 700; + Game.TieredUpgrade( + "Aqua crustulae", + "Careful with the dosing - one drop too much and you get muffins.
And nobody likes muffins.
", + "Alchemy lab", + 5 + ); + order = 800; + Game.TieredUpgrade( + "Brane transplant", + 'This refers to the practice of merging higher dimensional universes, or "branes", with our own, in order to facilitate transit (and harvesting of precious cookie dough).', + "Portal", + 5 + ); + order = 900; + Game.TieredUpgrade( + "Yestermorrow comparators", + "Fortnights into millennia.", + "Time machine", + 5 + ); + order = 1000; + Game.TieredUpgrade( + "Reverse cyclotrons", + "These can uncollision particles and unspin atoms. For... uh... better flavor, and stuff.", + "Antimatter condenser", + 5 + ); + + order = 150; + new Game.Upgrade( + "Unobtainium mouse", + getStrClickingGains(1) + "These nice mice should suffice.", + 5000000000000, + [11, 14] + ); + Game.MakeTiered(Game.last, 5, 11); + + order = 10030; + Game.NewUpgradeCookie({ + name: "Caramoas", + desc: "Yeah. That's got a nice ring to it.", + icon: [14, 4], + require: "Box of brand biscuits", + power: 3, + price: 9999999999999999, + }); + Game.NewUpgradeCookie({ + name: "Sagalongs", + desc: "Grandma's favorite?", + icon: [15, 3], + require: "Box of brand biscuits", + power: 3, + price: 9999999999999999, + }); + Game.NewUpgradeCookie({ + name: "Shortfoils", + desc: "Foiled again!", + icon: [15, 4], + require: "Box of brand biscuits", + power: 3, + price: 9999999999999999, + }); + Game.NewUpgradeCookie({ + name: "Win mints", + desc: "They're the luckiest cookies you've ever tasted!", + icon: [14, 3], + require: "Box of brand biscuits", + power: 3, + price: 9999999999999999, + }); + + order = 40000; + new Game.Upgrade( + "Perfect idling", + loc("You keep producing cookies even while the game is closed.") + + "It's the most beautiful thing I've ever seen.", + 7, + [10, 0] + ); //debug purposes only + Game.last.pool = "debug"; + + order = 10030; + Game.NewUpgradeCookie({ + name: "Fig gluttons", + desc: "Got it all figured out.", + icon: [17, 4], + require: "Box of brand biscuits", + power: 2, + price: 999999999999999 * 5, + }); + Game.NewUpgradeCookie({ + name: "Loreols", + desc: "Because, uh... they're worth it?", + icon: [16, 3], + require: "Box of brand biscuits", + power: 2, + price: 999999999999999 * 5, + }); + Game.NewUpgradeCookie({ + name: "Jaffa cakes", + desc: "If you want to bake a cookie from scratch, you must first build a factory.", + icon: [17, 3], + require: "Box of brand biscuits", + power: 2, + price: 999999999999999 * 5, + }); + Game.NewUpgradeCookie({ + name: "Grease's cups", + desc: "Extra-greasy peanut butter.", + icon: [16, 4], + require: "Box of brand biscuits", + power: 2, + price: 999999999999999 * 5, + }); + + order = 30000; + new Game.Upgrade( + "Heavenly chip secret", + loc("Unlocks %1% of the potential of your prestige level.", 5) + + "Grants the knowledge of heavenly chips, and how to use them to make baking more efficient.
It's a secret to everyone.
", + 11, + [19, 7] + ); + Game.last.noPerm = 1; + new Game.Upgrade( + "Heavenly cookie stand", + loc("Unlocks %1% of the potential of your prestige level.", 25) + + "Don't forget to visit the heavenly lemonade stand afterwards. When afterlife gives you lemons...", + 1111, + [18, 7] + ); + Game.last.noPerm = 1; + new Game.Upgrade( + "Heavenly bakery", + loc("Unlocks %1% of the potential of your prestige level.", 50) + + "Also sells godly cakes and divine pastries. The pretzels aren't too bad either.", + 111111, + [17, 7] + ); + Game.last.noPerm = 1; + new Game.Upgrade( + "Heavenly confectionery", + loc("Unlocks %1% of the potential of your prestige level.", 75) + + "They say angel bakers work there. They take angel lunch breaks and sometimes go on angel strikes.", + 11111111, + [16, 7] + ); + Game.last.noPerm = 1; + new Game.Upgrade( + "Heavenly key", + loc("Unlocks %1% of the potential of your prestige level.", 100) + + "This is the key to the pearly (and tasty) gates of pastry heaven, granting you access to your entire stockpile of heavenly chips for baking purposes.
May you use them wisely.
", + 1111111111, + [15, 7] + ); + Game.last.noPerm = 1; + + order = 10100; + Game.NewUpgradeCookie({ + name: "Skull cookies", + desc: "Wanna know something spooky? You've got one of these inside your head RIGHT NOW.", + locked: 1, + icon: [12, 8], + power: 2, + price: 444444444444, + }); + Game.NewUpgradeCookie({ + name: "Ghost cookies", + desc: "They're something strange, but they look pretty good!", + locked: 1, + icon: [13, 8], + power: 2, + price: 444444444444, + }); + Game.NewUpgradeCookie({ + name: "Bat cookies", + desc: "The cookies this town deserves.", + locked: 1, + icon: [14, 8], + power: 2, + price: 444444444444, + }); + Game.NewUpgradeCookie({ + name: "Slime cookies", + desc: "The incredible melting cookies!", + locked: 1, + icon: [15, 8], + power: 2, + price: 444444444444, + }); + Game.NewUpgradeCookie({ + name: "Pumpkin cookies", + desc: "Not even pumpkin-flavored. Tastes like glazing. Yeugh.", + locked: 1, + icon: [16, 8], + power: 2, + price: 444444444444, + }); + Game.NewUpgradeCookie({ + name: "Eyeball cookies", + desc: "When you stare into the cookie, the cookie stares back at you.", + locked: 1, + icon: [17, 8], + power: 2, + price: 444444444444, + }); + Game.NewUpgradeCookie({ + name: "Spider cookies", + desc: "You found the recipe on the web. They do whatever a cookie can.", + locked: 1, + icon: [18, 8], + power: 2, + price: 444444444444, + }); + + Game.halloweenDrops = [ + "Skull cookies", + "Ghost cookies", + "Bat cookies", + "Slime cookies", + "Pumpkin cookies", + "Eyeball cookies", + "Spider cookies", + ]; + + Game.GetHowManyHalloweenDrops = function () { + var num = 0; + for (var i in Game.halloweenDrops) { + if (Game.Has(Game.halloweenDrops[i])) num++; + } + return num; + }; + /*for (var i in Game.halloweenDrops) + { + Game.Upgrades[Game.halloweenDrops[i]].descFunc=function(){return '
You currently own '+Game.GetHowManyHalloweenDrops()+'/'+Game.halloweenDrops.length+' halloween cookies.
'+this.ddesc;}; + }*/ + + order = 0; + new Game.Upgrade( + "Persistent memory", + loc("Subsequent research will be %1 times as fast.", 10) + + "It's all making sense!
Again!
", + 500, + [9, 2] + ); + Game.last.pool = "prestige"; + + order = 40000; + new Game.Upgrade( + "Wrinkler doormat", + loc("Wrinklers spawn much more frequently.") + + "You're such a pushover.", + 7, + [19, 8] + ); //debug purposes only + Game.last.pool = "debug"; + + order = 10200; + Game.NewUpgradeCookie({ + name: "Christmas tree biscuits", + desc: "Whose pine is it anyway?", + locked: 1, + icon: [12, 10], + power: 2, + price: 252525252525, + }); + Game.NewUpgradeCookie({ + name: "Snowflake biscuits", + desc: "Mass-produced to be unique in every way.", + locked: 1, + icon: [13, 10], + power: 2, + price: 252525252525, + }); + Game.NewUpgradeCookie({ + name: "Snowman biscuits", + desc: "It's frosted. Doubly so.", + locked: 1, + icon: [14, 10], + power: 2, + price: 252525252525, + }); + Game.NewUpgradeCookie({ + name: "Holly biscuits", + desc: "You don't smooch under these ones. That would be the mistletoe (which, botanically, is a smellier variant of the mistlefinger).", + locked: 1, + icon: [15, 10], + power: 2, + price: 252525252525, + }); + Game.NewUpgradeCookie({ + name: "Candy cane biscuits", + desc: "It's two treats in one!
(Further inspection reveals the frosting does not actually taste like peppermint, but like mundane sugary frosting.)", + locked: 1, + icon: [16, 10], + power: 2, + price: 252525252525, + }); + Game.NewUpgradeCookie({ + name: "Bell biscuits", + desc: "What do these even have to do with christmas? Who cares, ring them in!", + locked: 1, + icon: [17, 10], + power: 2, + price: 252525252525, + }); + Game.NewUpgradeCookie({ + name: "Present biscuits", + desc: "The prequel to future biscuits. Watch out!", + locked: 1, + icon: [18, 10], + power: 2, + price: 252525252525, + }); + + order = 10020; + Game.NewUpgradeCookie({ + name: "Gingerbread men", + desc: "You like to bite the legs off first, right? How about tearing off the arms? You sick monster.", + icon: [18, 4], + power: 2, + price: 9999999999999999, + }); + Game.NewUpgradeCookie({ + name: "Gingerbread trees", + desc: "Evergreens in pastry form. Yule be surprised what you can come up with.", + icon: [18, 3], + power: 2, + price: 9999999999999999, + }); + + order = 25000; + new Game.Upgrade( + "A festive hat", + "" + + loc("Unlocks... something.") + + "Not a creature was stirring, not even a mouse.", + 25, + [19, 9], + function () { + var drop = choose(Game.santaDrops); + Game.Unlock(drop); + Game.Notify( + loc("In the festive hat, you find..."), + loc("a festive test tube
and %1.", drop), + Game.Upgrades[drop].icon + ); + } + ); + + new Game.Upgrade( + "Increased merriness", + getStrCookieProductionMultiplierPlus(15) + + "
" + + loc("Cost scales with Santa level.") + + "It turns out that the key to increased merriness, strangely enough, happens to be a good campfire and some s'mores.
You know what they say, after all; the s'more, the merrier.
", + 2525, + [17, 9] + ); + new Game.Upgrade( + "Improved jolliness", + getStrCookieProductionMultiplierPlus(15) + + "
" + + loc("Cost scales with Santa level.") + + "A nice wobbly belly goes a long way.
You jolly?
", + 2525, + [17, 9] + ); + new Game.Upgrade( + "A lump of coal", + getStrCookieProductionMultiplierPlus(1) + + "
" + + loc("Cost scales with Santa level.") + + "Some of the world's worst stocking stuffing.
I guess you could try starting your own little industrial revolution, or something?...
", + 2525, + [13, 9] + ); + new Game.Upgrade( + "An itchy sweater", + getStrCookieProductionMultiplierPlus(1) + + "
" + + loc("Cost scales with Santa level.") + + "You don't know what's worse : the embarrassingly quaint \"elf on reindeer\" motif, or the fact that wearing it makes you feel like you're wrapped in a dead sasquatch.", + 2525, + [14, 9] + ); + new Game.Upgrade( + "Reindeer baking grounds", + loc("Reindeer appear twice as frequently.") + + "
" + + loc("Cost scales with Santa level.") + + "Male reindeer are from Mars; female reindeer are from venison.", + 2525, + [12, 9] + ); + new Game.Upgrade( + "Weighted sleighs", + loc("Reindeer are twice as slow.") + + "
" + + loc("Cost scales with Santa level.") + + "Hope it was worth the weight.
(Something something forced into cervidude)
", + 2525, + [12, 9] + ); + new Game.Upgrade( + "Ho ho ho-flavored frosting", + loc("Reindeer give twice as much.") + + "
" + + loc("Cost scales with Santa level.") + + "It's time to up the antler.", + 2525, + [12, 9] + ); + new Game.Upgrade( + "Season savings", + loc("All buildings are %1% cheaper.", 1) + + "
" + + loc("Cost scales with Santa level.") + + "By Santa's beard, what savings!
But who will save us?
", + 2525, + [16, 9], + function () { + Game.storeToRefresh = 1; + } + ); + new Game.Upgrade( + "Toy workshop", + loc("All upgrades are %1% cheaper.", 5) + + "
" + + loc("Cost scales with Santa level.") + + "Watch yours-elf around elvesdroppers who might steal our production secrets.
Or elven worse!
", + 2525, + [16, 9], + function () { + Game.upgradesToRebuild = 1; + } + ); + new Game.Upgrade( + "Naughty list", + loc("%1 are twice as efficient.", cap(loc("grandmas"))) + + "
" + + loc("Cost scales with Santa level.") + + "This list contains every unholy deed perpetuated by grandmakind.
He won't be checking this one twice.
Once. Once is enough.
", + 2525, + [15, 9] + ); + new Game.Upgrade( + "Santa's bottomless bag", + loc("Random drops are %1% more common.", 10) + + "
" + + loc("Cost scales with Santa level.") + + "This is one bottom you can't check out.", + 2525, + [19, 9] + ); + new Game.Upgrade( + "Santa's helpers", + loc("Clicking is %1% more powerful.", 10) + + "
" + + loc("Cost scales with Santa level.") + + "Some choose to help hamburger; some choose to help you.
To each their own, I guess.
", + 2525, + [19, 9] + ); + new Game.Upgrade( + "Santa's legacy", + loc("Cookie production multiplier +%1% per Santa's levels.", 3) + + "
" + + loc("Cost scales with Santa level.") + + "In the north pole, you gotta get the elves first. Then when you get the elves, you start making the toys. Then when you get the toys... then you get the cookies.", + 2525, + [19, 9] + ); + new Game.Upgrade( + "Santa's milk and cookies", + loc("Milk is %1% more powerful.", 5) + + "
" + + loc("Cost scales with Santa level.") + + "Part of Santa's dreadfully unbalanced diet.", + 2525, + [19, 9] + ); + + order = 40000; + new Game.Upgrade( + "Reindeer season", + loc("Reindeer spawn much more frequently.") + + "Go, Cheater! Go, Hacker and Faker!", + 7, + [12, 9] + ); //debug purposes only + Game.last.pool = "debug"; + + order = 25000; + new Game.Upgrade( + "Santa's dominion", + getStrCookieProductionMultiplierPlus(20) + + "
" + + loc("All buildings are %1% cheaper.", 1) + + "
" + + loc("All upgrades are %1% cheaper.", 2) + + "My name is Claus, king of kings;
Look on my toys, ye Mighty, and despair!
", + 2525252525252525, + [19, 10], + function () { + Game.storeToRefresh = 1; + } + ); + + order = 10300; + var heartPower = function () { + var pow = 2; + if (Game.Has("Starlove")) pow = 3; + if (Game.hasGod) { + var godLvl = Game.hasGod("seasons"); + if (godLvl == 1) pow *= 1.3; + else if (godLvl == 2) pow *= 1.2; + else if (godLvl == 3) pow *= 1.1; + } + return pow; + }; + Game.NewUpgradeCookie({ + name: "Pure heart biscuits", + desc: 'Melty white chocolate
that says "I *like* like you".', + season: "valentines", + icon: [19, 3], + power: heartPower, + price: 1000000, + }); + Game.NewUpgradeCookie({ + name: "Ardent heart biscuits", + desc: "A red hot cherry biscuit that will nudge the target of your affection in interesting directions.", + require: Game.last.name, + season: "valentines", + icon: [20, 3], + power: heartPower, + price: 1000000000, + }); + Game.NewUpgradeCookie({ + name: "Sour heart biscuits", + desc: "A bitter lime biscuit for the lonely and the heart-broken.", + require: Game.last.name, + season: "valentines", + icon: [20, 4], + power: heartPower, + price: 1000000000000, + }); + Game.NewUpgradeCookie({ + name: "Weeping heart biscuits", + desc: "An ice-cold blueberry biscuit, symbol of a mending heart.", + require: Game.last.name, + season: "valentines", + icon: [21, 3], + power: heartPower, + price: 1000000000000000, + }); + Game.NewUpgradeCookie({ + name: "Golden heart biscuits", + desc: "A beautiful biscuit to symbolize kindness, true love, and sincerity.", + require: Game.last.name, + season: "valentines", + icon: [21, 4], + power: heartPower, + price: 1000000000000000000, + }); + Game.NewUpgradeCookie({ + name: "Eternal heart biscuits", + desc: "Silver icing for a very special someone you've liked for a long, long time.", + require: Game.last.name, + season: "valentines", + icon: [19, 4], + power: heartPower, + price: 1000000000000000000000, + }); + + Game.heartDrops = [ + "Pure heart biscuits", + "Ardent heart biscuits", + "Sour heart biscuits", + "Weeping heart biscuits", + "Golden heart biscuits", + "Eternal heart biscuits", + "Prism heart biscuits", + ]; + + Game.GetHowManyHeartDrops = function () { + var num = 0; + for (var i in Game.heartDrops) { + if (Game.Has(Game.heartDrops[i])) num++; + } + return num; + }; + + order = 1100; + Game.TieredUpgrade( + "Gem polish", + "Get rid of the grime and let more light in.
Truly, truly outrageous.
", + "Prism", + 1 + ); + Game.TieredUpgrade( + "9th color", + "Delve into untouched optical depths where even the mantis shrimp hasn't set an eye!", + "Prism", + 2 + ); + Game.TieredUpgrade( + "Chocolate light", + "Bask into its cocoalescence.
(Warning : may cause various interesting albeit deadly skin conditions.)
", + "Prism", + 3 + ); + Game.TieredUpgrade( + "Grainbow", + "Remember the different grains using the handy Roy G. Biv mnemonic : R is for rice, O is for oats... uh, B for barley?...", + "Prism", + 4 + ); + Game.TieredUpgrade( + "Pure cosmic light", + "Your prisms now receive pristine, unadulterated photons from the other end of the universe.", + "Prism", + 5 + ); + + order = 255; + Game.GrandmaSynergy( + "Rainbow grandmas", + "A luminous grandma to sparkle into cookies.", + "Prism" + ); + + order = 24000; + Game.seasonTriggerBasePrice = 1000000000; //1111111111; + new Game.Upgrade( + "Season switcher", + loc( + "Allows you to trigger seasonal events at will, for a price." + ) + "There will always be time.", + 1111, + [16, 6], + function () { + for (var i in Game.seasons) { + Game.Unlock(Game.seasons[i].trigger); + } + } + ); + Game.last.pool = "prestige"; + Game.last.parents = ["Heralds"]; + new Game.Upgrade( + "Festive biscuit", + loc( + "Triggers %1 season for the next 24 hours.
Triggering another season will cancel this one.
Cost scales with unbuffed CpS and increases with every season switch.", + loc("Christmas") + ) + "'Twas the night before Christmas- or was it?", + Game.seasonTriggerBasePrice, + [12, 10] + ); + Game.last.season = "christmas"; + Game.last.pool = "toggle"; + new Game.Upgrade( + "Ghostly biscuit", + loc( + "Triggers %1 season for the next 24 hours.
Triggering another season will cancel this one.
Cost scales with unbuffed CpS and increases with every season switch.", + loc("Halloween") + ) + "spooky scary skeletons
will wake you with a boo
", + Game.seasonTriggerBasePrice, + [13, 8] + ); + Game.last.season = "halloween"; + Game.last.pool = "toggle"; + new Game.Upgrade( + "Lovesick biscuit", + loc( + "Triggers %1 season for the next 24 hours.
Triggering another season will cancel this one.
Cost scales with unbuffed CpS and increases with every season switch.", + loc("Valentine's day") + ) + "Romance never goes out of fashion.", + Game.seasonTriggerBasePrice, + [20, 3] + ); + Game.last.season = "valentines"; + Game.last.pool = "toggle"; + new Game.Upgrade( + "Fool's biscuit", + loc( + "Triggers %1 season for the next 24 hours.
Triggering another season will cancel this one.
Cost scales with unbuffed CpS and increases with every season switch.", + loc("Business day") + ) + + "Business. Serious business. This is absolutely all of your business.", + Game.seasonTriggerBasePrice, + [17, 6] + ); + Game.last.season = "fools"; + Game.last.pool = "toggle"; + + order = 40000; + new Game.Upgrade( + "Eternal seasons", + loc("Seasons now last forever.") + "Season to taste.", + 7, + [16, 6], + function () { + for (var i in Game.seasons) { + Game.Unlock(Game.seasons[i].trigger); + } + } + ); //debug purposes only + Game.last.pool = "debug"; + + order = 20000; + new Game.Upgrade( + "Kitten managers", + strKittenDesc + "that's not gonna paws any problem, sir", + 900000000000000000000, + Game.GetIcon("Kitten", 5) + ); + Game.last.kitten = 1; + Game.MakeTiered(Game.last, 5, 18); + + order = 100; + new Game.Upgrade( + "Septillion fingers", + getStrThousandFingersGain(20) + "[cursory flavor text]", + 10000000000000000000, + [12, 20] + ); + Game.MakeTiered(Game.last, 11, 0); + new Game.Upgrade( + "Octillion fingers", + getStrThousandFingersGain(20) + + "Turns out you can quite put your finger on it.", + 10000000000000000000000, + [12, 19] + ); + Game.MakeTiered(Game.last, 12, 0); + + order = 150; + new Game.Upgrade( + "Eludium mouse", + getStrClickingGains(1) + "I rodent do that if I were you.", + 500000000000000, + [11, 15] + ); + Game.MakeTiered(Game.last, 6, 11); + new Game.Upgrade( + "Wishalloy mouse", + getStrClickingGains(1) + + "Clicking is fine and dandy, but don't smash your mouse over it. Get your game on. Go play.", + 50000000000000000, + [11, 16] + ); + Game.MakeTiered(Game.last, 7, 11); + order = 200; + Game.TieredUpgrade( + "Aging agents", + "Counter-intuitively, grandmas have the uncanny ability to become more powerful the older they get.", + "Grandma", + 6 + ); + order = 300; + Game.TieredUpgrade( + "Pulsar sprinklers", + "There's no such thing as over-watering. The moistest is the bestest.", + "Farm", + 6 + ); + order = 500; + Game.TieredUpgrade( + "Deep-bake process", + "A patented process increasing cookie yield two-fold for the same amount of ingredients. Don't ask how, don't take pictures, and be sure to wear your protective suit.", + "Factory", + 6 + ); + order = 400; + Game.TieredUpgrade( + "Coreforge", + "You've finally dug a tunnel down to the Earth's core. It's pretty warm down here.", + "Mine", + 6 + ); + order = 600; + Game.TieredUpgrade( + "Generation ship", + "Built to last, this humongous spacecraft will surely deliver your cookies to the deep ends of space, one day.", + "Shipment", + 6 + ); + order = 700; + Game.TieredUpgrade( + "Origin crucible", + "Built from the rarest of earths and located at the very deepest of the largest mountain, this legendary crucible is said to retain properties from the big-bang itself.", + "Alchemy lab", + 6 + ); + order = 800; + Game.TieredUpgrade( + "Deity-sized portals", + "It's almost like, say, an elder god could fit through this thing now. Hypothetically.", + "Portal", + 6 + ); + order = 900; + Game.TieredUpgrade( + "Far future enactment", + "The far future enactment authorizes you to delve deep into the future - where civilization has fallen and risen again, and cookies are plentiful.", + "Time machine", + 6 + ); + order = 1000; + Game.TieredUpgrade( + "Nanocosmics", + "The theory of nanocosmics posits that each subatomic particle is in fact its own self-contained universe, holding unfathomable amounts of energy.
This somehow stacks with the nested universe theory, because physics.
", + "Antimatter condenser", + 6 + ); + order = 1100; + Game.TieredUpgrade( + "Glow-in-the-dark", + "Your prisms now glow in the dark, effectively doubling their output!", + "Prism", + 6 + ); + + order = 10032; + Game.NewUpgradeCookie({ + name: "Rose macarons", + desc: "Although an odd flavor, these pastries recently rose in popularity.", + icon: [22, 3], + require: "Box of macarons", + power: 3, + price: 9999, + }); + Game.NewUpgradeCookie({ + name: "Lemon macarons", + desc: "Tastefully sour, delightful treats.", + icon: [23, 3], + require: "Box of macarons", + power: 3, + price: 9999999, + }); + Game.NewUpgradeCookie({ + name: "Chocolate macarons", + desc: "They're like tiny sugary burgers!", + icon: [24, 3], + require: "Box of macarons", + power: 3, + price: 9999999999, + }); + Game.NewUpgradeCookie({ + name: "Pistachio macarons", + desc: "Pistachio shells now removed after multiple complaints.", + icon: [22, 4], + require: "Box of macarons", + power: 3, + price: 9999999999999, + }); + Game.NewUpgradeCookie({ + name: "Hazelnut macarons", + desc: "These go especially well with coffee.", + icon: [23, 4], + require: "Box of macarons", + power: 3, + price: 9999999999999999, + }); + Game.NewUpgradeCookie({ + name: "Violet macarons", + desc: "It's like spraying perfume into your mouth!", + icon: [24, 4], + require: "Box of macarons", + power: 3, + price: 9999999999999999999, + }); + + order = 40000; + new Game.Upgrade( + "Magic shenanigans", + loc("Cookie production multiplied by 1,000.") + + "It's magic. I ain't gotta explain sh
t.
", + 7, + [17, 5] + ); //debug purposes only + Game.last.pool = "debug"; + + order = 24000; + new Game.Upgrade( + "Bunny biscuit", + loc( + "Triggers %1 season for the next 24 hours.
Triggering another season will cancel this one.
Cost scales with unbuffed CpS and increases with every season switch.", + loc("Easter") + ) + + "All the world will be your enemy
and when they catch you,
they will kill you...
but first they must catch you.
", + Game.seasonTriggerBasePrice, + [0, 12] + ); + Game.last.season = "easter"; + Game.last.pool = "toggle"; + + var eggPrice = 999999999999; + var eggPrice2 = 99999999999999; + new Game.Upgrade( + "Chicken egg", + getStrCookieProductionMultiplierPlus(1) + + "
" + + loc("Cost scales with how many eggs you own.") + + "The egg. The egg came first. Get over it.", + eggPrice, + [1, 12] + ); + new Game.Upgrade( + "Duck egg", + getStrCookieProductionMultiplierPlus(1) + + "
" + + loc("Cost scales with how many eggs you own.") + + "Then he waddled away.", + eggPrice, + [2, 12] + ); + new Game.Upgrade( + "Turkey egg", + getStrCookieProductionMultiplierPlus(1) + + "
" + + loc("Cost scales with how many eggs you own.") + + "These hatch into strange, hand-shaped creatures.", + eggPrice, + [3, 12] + ); + new Game.Upgrade( + "Quail egg", + getStrCookieProductionMultiplierPlus(1) + + "
" + + loc("Cost scales with how many eggs you own.") + + "These eggs are positively tiny. I mean look at them. How does this happen? Whose idea was that?", + eggPrice, + [4, 12] + ); + new Game.Upgrade( + "Robin egg", + getStrCookieProductionMultiplierPlus(1) + + "
" + + loc("Cost scales with how many eggs you own.") + + "Holy azure-hued shelled embryos!", + eggPrice, + [5, 12] + ); + new Game.Upgrade( + "Ostrich egg", + getStrCookieProductionMultiplierPlus(1) + + "
" + + loc("Cost scales with how many eggs you own.") + + "One of the largest eggs in the world. More like ostrouch, am I right?
Guys?
", + eggPrice, + [6, 12] + ); + new Game.Upgrade( + "Cassowary egg", + getStrCookieProductionMultiplierPlus(1) + + "
" + + loc("Cost scales with how many eggs you own.") + + "The cassowary is taller than you, possesses murderous claws and can easily outrun you.
You'd do well to be casso-wary of them.
", + eggPrice, + [7, 12] + ); + new Game.Upgrade( + "Salmon roe", + getStrCookieProductionMultiplierPlus(1) + + "
" + + loc("Cost scales with how many eggs you own.") + + "Do the impossible, see the invisible.
Roe roe, fight the power?
", + eggPrice, + [8, 12] + ); + new Game.Upgrade( + "Frogspawn", + getStrCookieProductionMultiplierPlus(1) + + "
" + + loc("Cost scales with how many eggs you own.") + + 'I was going to make a pun about how these "toadally look like eyeballs", but froget it.', + eggPrice, + [9, 12] + ); + new Game.Upgrade( + "Shark egg", + getStrCookieProductionMultiplierPlus(1) + + "
" + + loc("Cost scales with how many eggs you own.") + + "HELLO IS THIS FOOD?
LET ME TELL YOU ABOUT FOOD.
WHY DO I KEEP EATING MY FRIENDS
", + eggPrice, + [10, 12] + ); + new Game.Upgrade( + "Turtle egg", + getStrCookieProductionMultiplierPlus(1) + + "
" + + loc("Cost scales with how many eggs you own.") + + "Turtles, right? Hatch from shells. Grow into shells. What's up with that?
Now for my skit about airplane food.
", + eggPrice, + [11, 12] + ); + new Game.Upgrade( + "Ant larva", + getStrCookieProductionMultiplierPlus(1) + + "
" + + loc("Cost scales with how many eggs you own.") + + "These are a delicacy in some countries, I swear. You will let these invade your digestive tract, and you will derive great pleasure from it.
And all will be well.
", + eggPrice, + [12, 12] + ); + new Game.Upgrade( + "Golden goose egg", + loc("Golden cookies appear %1% more often.", 5) + + "
" + + loc("Cost scales with how many eggs you own.") + + "The sole vestige of a tragic tale involving misguided investments.", + eggPrice2, + [13, 12] + ); + new Game.Upgrade( + "Faberge egg", + loc("All buildings and upgrades are %1% cheaper.", 1) + + "
" + + loc("Cost scales with how many eggs you own.") + + "This outrageous egg is definitely fab.", + eggPrice2, + [14, 12], + function () { + Game.storeToRefresh = 1; + } + ); + new Game.Upgrade( + "Wrinklerspawn", + loc("Wrinklers explode into %1% more cookies.", 5) + + "
" + + loc("Cost scales with how many eggs you own.") + + "Look at this little guy! It's gonna be a big boy someday! Yes it is!", + eggPrice2, + [15, 12] + ); + new Game.Upgrade( + "Cookie egg", + loc("Clicking is %1% more powerful.", 10) + + "
" + + loc("Cost scales with how many eggs you own.") + + "The shell appears to be chipped.
I wonder what's inside this one!
", + eggPrice2, + [16, 12] + ); + new Game.Upgrade( + "Omelette", + loc("Other eggs appear %1% more frequently.", 10) + + "
" + + loc("Cost scales with how many eggs you own.") + + "Fromage not included.", + eggPrice2, + [17, 12] + ); + new Game.Upgrade( + "Chocolate egg", + loc("Contains a lot of cookies.") + + "
" + + loc("Cost scales with how many eggs you own.") + + "Laid by the elusive cocoa bird. There's a surprise inside!", + eggPrice2, + [18, 12], + function () { + var cookies = Game.cookies * 0.05; + Game.Notify( + "Chocolate egg", + loc("The egg bursts into %1 cookies!", Beautify(cookies)), + Game.Upgrades["Chocolate egg"].icon + ); + Game.Earn(cookies); + } + ); + new Game.Upgrade( + "Century egg", + loc( + "You continually gain more CpS the longer you've played in the current ascension." + ) + + "
" + + loc("Cost scales with how many eggs you own.") + + "Actually not centuries-old. This one isn't a day over 86!", + eggPrice2, + [19, 12] + ); + Game.last.descFunc = function () { + var day = + (Math.floor((Date.now() - Game.startDate) / 1000 / 10) * 10) / + 60 / + 60 / + 24; + day = Math.min(day, 100); + var n = (1 - Math.pow(1 - day / 100, 3)) * 0.1; + return ( + '
' + + loc("Current boost:") + + " +" + + Beautify(n * 100, 1) + + '%
' + + this.ddesc + ); + }; + new Game.Upgrade( + '"egg"', + "" + loc("+%1 CpS", 9) + 'hey it\'s "egg"', + eggPrice2, + [20, 12] + ); + + Game.easterEggs = [ + "Chicken egg", + "Duck egg", + "Turkey egg", + "Quail egg", + "Robin egg", + "Ostrich egg", + "Cassowary egg", + "Salmon roe", + "Frogspawn", + "Shark egg", + "Turtle egg", + "Ant larva", + "Golden goose egg", + "Faberge egg", + "Wrinklerspawn", + "Cookie egg", + "Omelette", + "Chocolate egg", + "Century egg", + '"egg"', + ]; + Game.eggDrops = [ + "Chicken egg", + "Duck egg", + "Turkey egg", + "Quail egg", + "Robin egg", + "Ostrich egg", + "Cassowary egg", + "Salmon roe", + "Frogspawn", + "Shark egg", + "Turtle egg", + "Ant larva", + ]; + Game.rareEggDrops = [ + "Golden goose egg", + "Faberge egg", + "Wrinklerspawn", + "Cookie egg", + "Omelette", + "Chocolate egg", + "Century egg", + '"egg"', + ]; + + Game.GetHowManyEggs = function () { + var num = 0; + for (var i in Game.easterEggs) { + if (Game.Has(Game.easterEggs[i])) num++; + } + return num; + }; + for (var i in Game.eggDrops) { //scale egg prices to how many eggs you have + Game.Upgrades[Game.eggDrops[i]].priceFunc = function () { + return Math.pow(2, Game.GetHowManyEggs()) * 999; + }; + } + + for (var i in Game.rareEggDrops) { + Game.Upgrades[Game.rareEggDrops[i]].priceFunc = function () { + return Math.pow(3, Game.GetHowManyEggs()) * 999; + }; + } + + Game.DropEgg = function (failRate) { + failRate *= 1 / Game.dropRateMult(); + if (Game.season != "easter") return; + if (Game.HasAchiev("Hide & seek champion")) failRate *= 0.7; + if (Game.Has("Omelette")) failRate *= 0.9; + if (Game.Has("Starspawn")) failRate *= 0.9; + if (Game.hasGod) { + var godLvl = Game.hasGod("seasons"); + if (godLvl == 1) failRate *= 0.9; + else if (godLvl == 2) failRate *= 0.95; + else if (godLvl == 3) failRate *= 0.97; + } + if (Math.random() >= failRate) { + var drop = ""; + if (Math.random() < 0.1) drop = choose(Game.rareEggDrops); + else drop = choose(Game.eggDrops); + if (Game.Has(drop) || Game.HasUnlocked(drop)) { + //reroll if we have it + if (Math.random() < 0.1) drop = choose(Game.rareEggDrops); + else drop = choose(Game.eggDrops); + } + if (Game.Has(drop) || Game.HasUnlocked(drop)) return; + Game.Unlock(drop); + Game.Notify( + loc("You found an egg!"), + "" + drop + "", + Game.Upgrades[drop].icon + ); + } + }; + + order = 10032; + Game.NewUpgradeCookie({ + name: "Caramel macarons", + desc: "The saltiest, chewiest of them all.", + icon: [25, 3], + require: "Box of macarons", + power: 3, + price: 9999999999999999999999, + }); + Game.NewUpgradeCookie({ + name: "Licorice macarons", + desc: 'Also known as "blackarons".', + icon: [25, 4], + require: "Box of macarons", + power: 3, + price: 9999999999999999999999999, + }); + + order = 525; + Game.TieredUpgrade( + "Taller tellers", + "Able to process a higher amount of transactions. Careful though, as taller tellers tell tall tales.", + "Bank", + 1 + ); + Game.TieredUpgrade( + "Scissor-resistant credit cards", + "For those truly valued customers.", + "Bank", + 2 + ); + Game.TieredUpgrade( + "Acid-proof vaults", + "You know what they say : better safe than sorry.", + "Bank", + 3 + ); + Game.TieredUpgrade( + "Chocolate coins", + "This revolutionary currency is much easier to melt from and into ingots - and tastes much better, for a change.", + "Bank", + 4 + ); + Game.TieredUpgrade( + "Exponential interest rates", + "Can't argue with mathematics! Now fork it over.", + "Bank", + 5 + ); + Game.TieredUpgrade( + "Financial zen", + "The ultimate grail of economic thought; the feng shui of big money, the stock market yoga - the Heimlich maneuver of dimes and nickels.", + "Bank", + 6 + ); + + order = 550; + Game.TieredUpgrade( + "Golden idols", + "Lure even greedier adventurers to retrieve your cookies. Now that's a real idol game!", + "Temple", + 1 + ); + Game.TieredUpgrade( + "Sacrifices", + "What's a life to a gigaton of cookies?", + "Temple", + 2 + ); + Game.TieredUpgrade( + "Delicious blessing", + "And lo, the Baker's almighty spoon came down and distributed holy gifts unto the believers - shimmering sugar, and chocolate dark as night, and all manner of wheats. And boy let me tell you, that party was mighty gnarly.", + "Temple", + 3 + ); + Game.TieredUpgrade( + "Sun festival", + "Free the primordial powers of your temples with these annual celebrations involving fire-breathers, traditional dancing, ritual beheadings and other merriments!", + "Temple", + 4 + ); + Game.TieredUpgrade( + "Enlarged pantheon", + "Enough spiritual inadequacy! More divinities than you'll ever need, or your money back! 100% guaranteed!", + "Temple", + 5 + ); + Game.TieredUpgrade( + "Great Baker in the sky", + "This is it. The ultimate deity has finally cast Their sublimely divine eye upon your operation; whether this is a good thing or possibly the end of days is something you should find out very soon.", + "Temple", + 6 + ); + + order = 575; + Game.TieredUpgrade( + "Pointier hats", + "Tests have shown increased thaumic receptivity relative to the geometric proportions of wizardly conic implements.", + "Wizard tower", + 1 + ); + Game.TieredUpgrade( + "Beardlier beards", + "Haven't you heard? The beard is the word.", + "Wizard tower", + 2 + ); + Game.TieredUpgrade( + "Ancient grimoires", + 'Contain interesting spells such as "Turn Water To Drool", "Grow Eyebrows On Furniture" and "Summon Politician".', + "Wizard tower", + 3 + ); + Game.TieredUpgrade( + "Kitchen curses", + "Exotic magic involved in all things pastry-related. Hexcellent!", + "Wizard tower", + 4 + ); + Game.TieredUpgrade( + "School of sorcery", + "This cookie-funded academy of witchcraft is home to the 4 prestigious houses of magic : the Jocks, the Nerds, the Preps, and the Deathmunchers.", + "Wizard tower", + 5 + ); + Game.TieredUpgrade( + "Dark formulas", + "Eldritch forces are at work behind these spells - you get the feeling you really shouldn't be messing with those. But I mean, free cookies, right?", + "Wizard tower", + 6 + ); + + order = 250; + Game.GrandmaSynergy( + "Banker grandmas", + "A nice banker to cash in more cookies.", + "Bank" + ); + Game.GrandmaSynergy( + "Priestess grandmas", + "A nice priestess to praise the one true Baker in the sky.", + "Temple" + ); + Game.GrandmaSynergy( + "Witch grandmas", + "A nice witch to cast a zip, and a zoop, and poof! Cookies.", + "Wizard tower" + ); + + order = 0; + new Game.Upgrade( + "Tin of british tea biscuits", + loc("Contains an assortment of fancy biscuits.") + + "Every time is tea time.", + 25, + [21, 8] + ); + Game.last.pool = "prestige"; + Game.last.parents = ["Heavenly cookies"]; + new Game.Upgrade( + "Box of macarons", + loc("Contains an assortment of macarons.") + + "Multicolored delicacies filled with various kinds of jam.
Not to be confused with macaroons, macaroni, macarena or any of that nonsense.
", + 25, + [20, 8] + ); + Game.last.pool = "prestige"; + Game.last.parents = ["Heavenly cookies"]; + new Game.Upgrade( + "Box of brand biscuits", + loc("Contains an assortment of popular biscuits.") + + "They're brand new!", + 25, + [20, 9] + ); + Game.last.pool = "prestige"; + Game.last.parents = ["Heavenly cookies"]; + + order = 10020; + Game.NewUpgradeCookie({ + name: "Pure black chocolate cookies", + desc: 'Dipped in a lab-made substance darker than the darkest cocoa (dubbed "chocoalate").', + icon: [26, 3], + power: 5, + price: 9999999999999999 * 5, + }); + Game.NewUpgradeCookie({ + name: "Pure white chocolate cookies", + desc: "Elaborated on the nano-scale, the coating on this biscuit is able to refract light even in a pitch-black environment.", + icon: [26, 4], + power: 5, + price: 9999999999999999 * 5, + }); + Game.NewUpgradeCookie({ + name: "Ladyfingers", + desc: "Cleaned and sanitized so well you'd swear they're actual biscuits.", + icon: [27, 3], + power: 3, + price: 99999999999999999, + }); + Game.NewUpgradeCookie({ + name: "Tuiles", + desc: "These never go out of tile.", + icon: [27, 4], + power: 3, + price: 99999999999999999 * 5, + }); + Game.NewUpgradeCookie({ + name: "Chocolate-stuffed biscuits", + desc: "A princely snack!
The holes are so the chocolate stuffing can breathe.", + icon: [28, 3], + power: 3, + price: 999999999999999999, + }); + Game.NewUpgradeCookie({ + name: "Checker cookies", + desc: "A square cookie? This solves so many storage and packaging problems! You're a genius!", + icon: [28, 4], + power: 3, + price: 999999999999999999 * 5, + }); + Game.NewUpgradeCookie({ + name: "Butter cookies", + desc: "These melt right off your mouth and into your heart. (Let's face it, they're rather fattening.)", + icon: [29, 3], + power: 3, + price: 9999999999999999999, + }); + Game.NewUpgradeCookie({ + name: "Cream cookies", + desc: "It's like two chocolate chip cookies! But brought together with the magic of cream! It's fiendishly perfect!", + icon: [29, 4], + power: 3, + price: 9999999999999999999 * 5, + }); + + order = 0; + var desc = loc( + "Placing an upgrade in this slot will make its effects permanent across all playthroughs." + ); + new Game.Upgrade("Permanent upgrade slot I", desc, 100, [0, 10]); + Game.last.pool = "prestige"; + Game.last.iconFunction = function () { + return Game.PermanentSlotIcon(0); + }; + Game.last.activateFunction = function () { + Game.AssignPermanentSlot(0); + }; + new Game.Upgrade("Permanent upgrade slot II", desc, 20000, [1, 10]); + Game.last.pool = "prestige"; + Game.last.parents = ["Permanent upgrade slot I"]; + Game.last.iconFunction = function () { + return Game.PermanentSlotIcon(1); + }; + Game.last.activateFunction = function () { + Game.AssignPermanentSlot(1); + }; + new Game.Upgrade("Permanent upgrade slot III", desc, 3000000, [2, 10]); + Game.last.pool = "prestige"; + Game.last.parents = ["Permanent upgrade slot II"]; + Game.last.iconFunction = function () { + return Game.PermanentSlotIcon(2); + }; + Game.last.activateFunction = function () { + Game.AssignPermanentSlot(2); + }; + new Game.Upgrade("Permanent upgrade slot IV", desc, 400000000, [3, 10]); + Game.last.pool = "prestige"; + Game.last.parents = ["Permanent upgrade slot III"]; + Game.last.iconFunction = function () { + return Game.PermanentSlotIcon(3); + }; + Game.last.activateFunction = function () { + Game.AssignPermanentSlot(3); + }; + new Game.Upgrade("Permanent upgrade slot V", desc, 50000000000, [4, 10]); + Game.last.pool = "prestige"; + Game.last.parents = ["Permanent upgrade slot IV"]; + Game.last.iconFunction = function () { + return Game.PermanentSlotIcon(4); + }; + Game.last.activateFunction = function () { + Game.AssignPermanentSlot(4); + }; + + var slots = [ + "Permanent upgrade slot I", + "Permanent upgrade slot II", + "Permanent upgrade slot III", + "Permanent upgrade slot IV", + "Permanent upgrade slot V", + ]; + for (var i = 0; i < slots.length; i++) { + Game.Upgrades[slots[i]].descFunc = (function (i) { + return function (context) { + if (Game.permanentUpgrades[i] == -1) + return ( + this.desc + + (context == "stats" + ? "" + : "
" + loc("Click to activate.") + "") + ); + var upgrade = Game.UpgradesById[Game.permanentUpgrades[i]]; + return ( + '
' + + loc("Current:") + + " " + + tinyIcon(upgrade.icon) + + " " + + upgrade.dname + + '
' + + this.ddesc + + (context == "stats" + ? "" + : "
" + loc("Click to activate.") + "") + ); + }; + })(i); + } + + Game.PermanentSlotIcon = function (slot) { + if (Game.permanentUpgrades[slot] == -1) return [slot, 10]; + return Game.UpgradesById[Game.permanentUpgrades[slot]].icon; + }; + Game.AssignPermanentSlot = function (slot) { + PlaySound("snd/tick.mp3"); + Game.tooltip.hide(); + var list = []; + for (var i in Game.Upgrades) { + var me = Game.Upgrades[i]; + if ( + me.bought && + me.unlocked && + !me.noPerm && + (me.pool == "" || me.pool == "cookie") + ) { + var fail = 0; + for (var ii in Game.permanentUpgrades) { + if (Game.permanentUpgrades[ii] == me.id) fail = 1; + } //check if not already in another permaslot + if (!fail) list.push(me); + } + } + + var sortMap = function (a, b) { + if (a.order > b.order) return 1; + else if (a.order < b.order) return -1; + else return 0; + }; + list.sort(sortMap); + + var upgrades = ""; + for (var i in list) { + var me = list[i]; + upgrades += Game.crate( + me, + "", + "PlaySound('snd/tick.mp3');Game.PutUpgradeInPermanentSlot(" + + me.id + + "," + + slot + + ");", + "upgradeForPermanent" + me.id + ); + } + var upgrade = Game.permanentUpgrades[slot]; + Game.SelectingPermanentUpgrade = upgrade; + Game.Prompt( + "

" + + loc("Pick an upgrade to make permanent") + + "

" + + '
' + + Game.crate( + Game.UpgradesById[upgrade == -1 ? 0 : upgrade], + "", + "", + "upgradeToSlot" + ) + + "
" + + '
' + + upgrades + + "
" + + '
' + + loc( + 'Here are all the upgrades you\'ve purchased last playthrough.
Pick one to permanently gain its effects!
You can reassign this slot anytime you ascend.' + ) + + "
", + [ + [ + loc("Confirm"), + "Game.permanentUpgrades[" + + slot + + "]=Game.SelectingPermanentUpgrade;Game.BuildAscendTree();Game.ClosePrompt();", + ], + loc("Cancel"), + ], + 0, + "widePrompt" + ); + }; + Game.SelectingPermanentUpgrade = -1; + Game.PutUpgradeInPermanentSlot = function (upgrade, slot) { + Game.SelectingPermanentUpgrade = upgrade; + l("upgradeToSlotWrap").innerHTML = ""; + l("upgradeToSlotWrap").style.display = upgrade == -1 ? "none" : "block"; + l("upgradeToSlotNone").style.display = upgrade != -1 ? "none" : "block"; + l("upgradeToSlotWrap").innerHTML = Game.crate( + Game.UpgradesById[upgrade == -1 ? 0 : upgrade], + "", + "", + "upgradeToSlot" + ); + }; + + new Game.Upgrade( + "Starspawn", + loc("Eggs drop %1% more often.", 10) + + "
" + + loc("Golden cookies appear %1% more often during %2.", [ + 2, + loc("Easter"), + ]), + 111111, + [0, 12] + ); + Game.last.pool = "prestige"; + Game.last.parents = ["Season switcher"]; + new Game.Upgrade( + "Starsnow", + loc("Christmas cookies drop %1% more often.", 5) + + "
" + + loc("Reindeer appear %1% more often.", 5), + 111111, + [12, 9] + ); + Game.last.pool = "prestige"; + Game.last.parents = ["Season switcher"]; + new Game.Upgrade( + "Starterror", + loc("Spooky cookies drop %1% more often.", 10) + + "
" + + loc("Golden cookies appear %1% more often during %2.", [ + 2, + loc("Halloween"), + ]), + 111111, + [13, 8] + ); + Game.last.pool = "prestige"; + Game.last.parents = ["Season switcher"]; + new Game.Upgrade( + "Starlove", + loc("Heart cookies are %1% more powerful.", 50) + + "
" + + loc("Golden cookies appear %1% more often during %2.", [ + 2, + loc("Valentine's day"), + ]), + 111111, + [20, 3] + ); + Game.last.pool = "prestige"; + Game.last.parents = ["Season switcher"]; + new Game.Upgrade( + "Startrade", + loc("Golden cookies appear %1% more often during %2.", [ + 5, + loc("Business day"), + ]), + 111111, + [17, 6] + ); + Game.last.pool = "prestige"; + Game.last.parents = ["Season switcher"]; + + var angelPriceFactor = 7; + var desc = function (percent, total) { + return loc( + "You gain another +%1% of your regular CpS while the game is closed, for a total of %2%.", + [percent, total] + ); + }; + new Game.Upgrade( + "Angels", + desc(10, 15) + + "Lowest-ranking at the first sphere of pastry heaven, angels are tasked with delivering new recipes to the mortals they deem worthy.", + Math.pow(angelPriceFactor, 1), + [0, 11] + ); + Game.last.pool = "prestige"; + Game.last.parents = ["Twin Gates of Transcendence"]; + new Game.Upgrade( + "Archangels", + desc(10, 25) + + "Members of the first sphere of pastry heaven, archangels are responsible for the smooth functioning of the world's largest bakeries.", + Math.pow(angelPriceFactor, 2), + [1, 11] + ); + Game.last.pool = "prestige"; + Game.last.parents = ["Angels"]; + new Game.Upgrade( + "Virtues", + desc(10, 35) + + "Found at the second sphere of pastry heaven, virtues make use of their heavenly strength to push and drag the stars of the cosmos.", + Math.pow(angelPriceFactor, 3), + [2, 11] + ); + Game.last.pool = "prestige"; + Game.last.parents = ["Archangels"]; + new Game.Upgrade( + "Dominions", + desc(10, 45) + + "Ruling over the second sphere of pastry heaven, dominions hold a managerial position and are in charge of accounting and regulating schedules.", + Math.pow(angelPriceFactor, 4), + [3, 11] + ); + Game.last.pool = "prestige"; + Game.last.parents = ["Virtues"]; + new Game.Upgrade( + "Cherubim", + desc(10, 55) + + "Sieging at the first sphere of pastry heaven, the four-faced cherubim serve as heavenly bouncers and bodyguards.", + Math.pow(angelPriceFactor, 5), + [4, 11] + ); + Game.last.pool = "prestige"; + Game.last.parents = ["Dominions"]; + new Game.Upgrade( + "Seraphim", + desc(10, 65) + + "Leading the first sphere of pastry heaven, seraphim possess ultimate knowledge of everything pertaining to baking.", + Math.pow(angelPriceFactor, 6), + [5, 11] + ); + Game.last.pool = "prestige"; + Game.last.parents = ["Cherubim"]; + new Game.Upgrade( + "God", + desc(10, 75) + "Like Santa, but less fun.", + Math.pow(angelPriceFactor, 7), + [6, 11] + ); + Game.last.pool = "prestige"; + Game.last.parents = ["Seraphim"]; + + new Game.Upgrade( + "Twin Gates of Transcendence", + loc( + "You now keep making cookies while the game is closed, at the rate of %1% of your regular CpS and up to 1 hour after the game is closed.
(Beyond 1 hour, this is reduced by a further %2% - your rate goes down to %3% of your CpS.)", + [5, 90, 0.5] + ) + + "This is one occasion you're always underdressed for. Don't worry, just rush in past the bouncer and pretend you know people.", + 1, + [15, 11] + ); + Game.last.pool = "prestige"; + + new Game.Upgrade( + "Heavenly luck", + loc("Golden cookies appear %1% more often.", 5) + + "Someone up there likes you.", + 77, + [22, 6] + ); + Game.last.pool = "prestige"; + new Game.Upgrade( + "Lasting fortune", + loc("Golden cookie effects last %1% longer.", 10) + + "This isn't your average everyday luck. This is... advanced luck.", + 777, + [23, 6] + ); + Game.last.pool = "prestige"; + Game.last.parents = ["Heavenly luck"]; + new Game.Upgrade( + "Decisive fate", + loc("Golden cookies stay %1% longer.", 5) + + "Life just got a bit more intense.", + 7777, + [10, 14] + ); + Game.last.pool = "prestige"; + Game.last.parents = ["Lasting fortune"]; + + new Game.Upgrade( + "Divine discount", + loc("All buildings are %1% cheaper.", 1) + + "Someone special deserves a special price.", + 99999, + [21, 7] + ); + Game.last.pool = "prestige"; + Game.last.parents = ["Decisive fate"]; + new Game.Upgrade( + "Divine sales", + loc("All upgrades are %1% cheaper.", 1) + + "Everything must go!", + 99999, + [18, 7] + ); + Game.last.pool = "prestige"; + Game.last.parents = ["Decisive fate"]; + new Game.Upgrade( + "Divine bakeries", + loc("Cookie upgrades are %1 times cheaper.", 5) + + "They sure know what they're doing.", + 399999, + [17, 7] + ); + Game.last.pool = "prestige"; + Game.last.parents = ["Divine sales", "Divine discount"]; + + new Game.Upgrade( + "Starter kit", + loc("You start with %1.", loc("%1 cursor", 10)) + + "This can come in handy.", + 50, + [0, 14] + ); + Game.last.pool = "prestige"; + Game.last.parents = [ + "Tin of british tea biscuits", + "Box of macarons", + "Box of brand biscuits", + "Tin of butter cookies", + ]; + new Game.Upgrade( + "Starter kitchen", + loc("You start with %1.", loc("%1 grandma", 5)) + + "Where did these come from?", + 5000, + [1, 14] + ); + Game.last.pool = "prestige"; + Game.last.parents = ["Starter kit"]; + new Game.Upgrade( + "Halo gloves", + loc("Clicking is %1% more powerful.", 10) + + "Smite that cookie.", + 55555, + [22, 7] + ); + Game.last.pool = "prestige"; + Game.last.parents = ["Starter kit"]; + + new Game.Upgrade( + "Kitten angels", + strKittenDesc + "All cats go to heaven.", + 9000, + [23, 7] + ); + Game.last.pool = "prestige"; + Game.last.parents = ["Dominions"]; + Game.last.kitten = 1; + + new Game.Upgrade( + "Unholy bait", + loc("Wrinklers appear %1 times as fast.", 5) + + "No wrinkler can resist the scent of worm biscuits.", + 44444, + [15, 12] + ); + Game.last.pool = "prestige"; + Game.last.parents = ["Starter kitchen"]; + new Game.Upgrade( + "Sacrilegious corruption", + loc("Wrinklers explode into %1% more cookies.", 5) + + "Unique in the animal kingdom, the wrinkler digestive tract is able to withstand an incredible degree of dilation - provided you prod them appropriately.", + 444444, + [19, 8] + ); + Game.last.pool = "prestige"; + Game.last.parents = ["Unholy bait"]; + + order = 200; + Game.TieredUpgrade( + "Xtreme walkers", + 'Complete with flame decals and a little horn that goes "toot".', + "Grandma", + 7 + ); + order = 300; + Game.TieredUpgrade( + "Fudge fungus", + "A sugary parasite whose tendrils help cookie growth.
Please do not breathe in the spores. In case of spore ingestion, seek medical help within the next 36 seconds.
", + "Farm", + 7 + ); + order = 400; + Game.TieredUpgrade( + "Planetsplitters", + "These new state-of-the-art excavators have been tested on Merula, Globort and Flwanza VI, among other distant planets which have been curiously quiet lately.", + "Mine", + 7 + ); + order = 500; + Game.TieredUpgrade( + "Cyborg workforce", + "Semi-synthetic organisms don't slack off, don't unionize, and have 20% shorter lunch breaks, making them ideal labor fodder.", + "Factory", + 7 + ); + order = 525; + Game.TieredUpgrade( + "Way of the wallet", + "This new monetary school of thought is all the rage on the banking scene; follow its precepts and you may just profit from it.", + "Bank", + 7 + ); + order = 550; + Game.TieredUpgrade( + "Creation myth", + "Stories have been circulating about the origins of the very first cookie that was ever baked; tales of how it all began, in the Dough beyond time and the Ovens of destiny.", + "Temple", + 7 + ); + order = 575; + Game.TieredUpgrade( + "Cookiemancy", + "There it is; the perfected school of baking magic. From summoning chips to hexing nuts, there is not a single part of cookie-making that hasn't been improved tenfold by magic tricks.", + "Wizard tower", + 7 + ); + order = 600; + Game.TieredUpgrade( + "Dyson sphere", + "You've found a way to apply your knowledge of cosmic technology to slightly more local endeavors; this gigantic sphere of meta-materials, wrapping the solar system, is sure to kick your baking abilities up a notch.", + "Shipment", + 7 + ); + order = 700; + Game.TieredUpgrade( + "Theory of atomic fluidity", + "Pushing alchemy to its most extreme limits, you find that everything is transmutable into anything else - lead to gold, mercury to water; more importantly, you realize that anything can -and should- be converted to cookies.", + "Alchemy lab", + 7 + ); + order = 800; + Game.TieredUpgrade( + "End of times back-up plan", + "Just in case, alright?", + "Portal", + 7 + ); + order = 900; + Game.TieredUpgrade( + "Great loop hypothesis", + "What if our universe is just one instance of an infinite cycle? What if, before and after it, stretched infinite amounts of the same universe, themselves containing infinite amounts of cookies?", + "Time machine", + 7 + ); + order = 1000; + Game.TieredUpgrade( + "The Pulse", + "You've tapped into the very pulse of the cosmos, a timeless rhythm along which every material and antimaterial thing beats in unison. This, somehow, means more cookies.", + "Antimatter condenser", + 7 + ); + order = 1100; + Game.TieredUpgrade( + "Lux sanctorum", + "Your prism attendants have become increasingly mesmerized with something in the light - or maybe something beyond it; beyond us all, perhaps?", + "Prism", + 7 + ); + + order = 200; + Game.TieredUpgrade( + "The Unbridling", + "It might be a classic tale of bad parenting, but let's see where grandma is going with this.", + "Grandma", + 8 + ); + order = 300; + Game.TieredUpgrade( + "Wheat triffids", + "Taking care of crops is so much easier when your plants can just walk about and help around the farm.
Do not pet. Do not feed. Do not attempt to converse with.
", + "Farm", + 8 + ); + order = 400; + Game.TieredUpgrade( + "Canola oil wells", + "A previously untapped resource, canola oil permeates the underground olifers which grant it its particular taste and lucrative properties.", + "Mine", + 8 + ); + order = 500; + Game.TieredUpgrade( + "78-hour days", + "Why didn't we think of this earlier?", + "Factory", + 8 + ); + order = 525; + Game.TieredUpgrade( + "The stuff rationale", + "If not now, when? If not it, what? If not things... stuff?", + "Bank", + 8 + ); + order = 550; + Game.TieredUpgrade( + "Theocracy", + "You've turned your cookie empire into a perfect theocracy, gathering the adoration of zillions of followers from every corner of the universe.
Don't let it go to your head.
", + "Temple", + 8 + ); + order = 575; + Game.TieredUpgrade( + "Rabbit trick", + "Using nothing more than a fancy top hat, your wizards have found a way to simultaneously curb rabbit population and produce heaps of extra cookies for basically free!
Resulting cookies may or may not be fit for vegans.
", + "Wizard tower", + 8 + ); + order = 600; + Game.TieredUpgrade( + "The final frontier", + "It's been a long road, getting from there to here. It's all worth it though - the sights are lovely and the oil prices slightly more reasonable.", + "Shipment", + 8 + ); + order = 700; + Game.TieredUpgrade( + "Beige goo", + "Well now you've done it. Good job. Very nice. That's 3 galaxies you've just converted into cookies. Good thing you can hop from universe to universe.", + "Alchemy lab", + 8 + ); + order = 800; + Game.TieredUpgrade( + "Maddening chants", + "A popular verse goes like so : \"jau'hn madden jau'hn madden aeiouaeiouaeiou brbrbrbrbrbrbr\"", + "Portal", + 8 + ); + order = 900; + Game.TieredUpgrade( + "Cookietopian moments of maybe", + "Reminiscing how things could have been, should have been, will have been.", + "Time machine", + 8 + ); + order = 1000; + Game.TieredUpgrade( + "Some other super-tiny fundamental particle? Probably?", + "When even the universe is running out of ideas, that's when you know you're nearing the end.", + "Antimatter condenser", + 8 + ); + order = 1100; + Game.TieredUpgrade( + "Reverse shadows", + "Oh man, this is really messing with your eyes.", + "Prism", + 8 + ); + + order = 20000; + new Game.Upgrade( + "Kitten accountants", + strKittenDesc + "business going great, sir", + 900000000000000000000000, + Game.GetIcon("Kitten", 6) + ); + Game.last.kitten = 1; + Game.MakeTiered(Game.last, 6, 18); + new Game.Upgrade( + "Kitten specialists", + strKittenDesc + "optimeowzing your workflow like whoah, sir", + 900000000000000000000000000, + Game.GetIcon("Kitten", 7) + ); + Game.last.kitten = 1; + Game.MakeTiered(Game.last, 7, 18); + new Game.Upgrade( + "Kitten experts", + strKittenDesc + "10 years expurrrtise in the cookie business, sir", + 900000000000000000000000000000, + Game.GetIcon("Kitten", 8) + ); + Game.last.kitten = 1; + Game.MakeTiered(Game.last, 8, 18); + + new Game.Upgrade( + "How to bake your dragon", + loc( + "Allows you to purchase a crumbly egg once you have earned 1 million cookies." + ) + + 'A tome full of helpful tips such as "oh god, stay away from it", "why did we buy this thing, it\'s not even house-broken" and "groom twice a week in the direction of the scales".', + 9, + [22, 12] + ); + Game.last.pool = "prestige"; + + order = 25100; + new Game.Upgrade( + "A crumbly egg", + loc("Unlocks the cookie dragon egg.") + + "Thank you for adopting this robust, fun-loving cookie dragon! It will bring you years of joy and entertainment.
Keep in a dry and cool place, and away from other house pets. Subscription to home insurance is strongly advised.
", + 25, + [21, 12] + ); + + new Game.Upgrade( + "Chimera", + loc("Synergy upgrades are %1% cheaper.", 2) + + "
" + + loc( + "You gain another +%1% of your regular CpS while the game is closed.", + 5 + ) + + "
" + + loc( + "You retain optimal cookie production while the game is closed for %1 more days.", + 2 + ) + + "More than the sum of its parts.", + Math.pow(angelPriceFactor, 9), + [24, 7] + ); + Game.last.pool = "prestige"; + Game.last.parents = ["God", "Lucifer", "Synergies Vol. II"]; + + new Game.Upgrade( + "Tin of butter cookies", + loc("Contains an assortment of rich butter cookies.") + + "Five varieties of danish cookies.
Complete with little paper cups.
", + 25, + [21, 9] + ); + Game.last.pool = "prestige"; + Game.last.parents = ["Heavenly cookies"]; + + new Game.Upgrade( + "Golden switch", + loc( + "Unlocks the golden switch, which passively boosts your CpS by %1% but disables golden cookies.", + 50 + ) + "Less clicking, more idling.", + 999, + [21, 10] + ); + Game.last.pool = "prestige"; + Game.last.parents = ["Heavenly luck"]; + + new Game.Upgrade( + "Classic dairy selection", + loc( + "Unlocks the milk selector, letting you pick which milk is displayed under your cookie.
Comes with a variety of basic flavors." + ) + "Don't have a cow, man.", + 9, + [1, 8] + ); + Game.last.pool = "prestige"; + Game.last.parents = []; + + new Game.Upgrade( + "Fanciful dairy selection", + loc("Contains more exotic flavors for your milk selector.") + + "Strong bones for the skeleton army.", + 1000000, + [9, 7] + ); + Game.last.pool = "prestige"; + Game.last.parents = ["Classic dairy selection"]; + + order = 10300; + Game.NewUpgradeCookie({ + name: "Dragon cookie", + desc: "Imbued with the vigor and vitality of a full-grown cookie dragon, this mystical cookie will embolden your empire for the generations to come.", + icon: [10, 25], + power: 5, + price: 9999999999999999 * 7, + locked: 1, + }); + + order = 40000; + new Game.Upgrade( + "Golden switch [off]", + loc( + "Turning this on will give you a passive +%1% CpS, but prevents golden cookies from spawning.
Cost is equal to 1 hour of production.", + 50 + ), + 1000000, + [20, 10] + ); + Game.last.pool = "toggle"; + Game.last.toggleInto = "Golden switch [on]"; + Game.last.priceFunc = function () { + return Game.cookiesPs * 60 * 60; + }; + var func = function () { + if (Game.Has("Residual luck")) { + var bonus = 0; + var upgrades = Game.goldenCookieUpgrades; + for (var i in upgrades) { + if (Game.Has(upgrades[i])) bonus++; + } + return ( + '
' + + Game.listTinyOwnedUpgrades(Game.goldenCookieUpgrades) + + "

The effective boost is +" + + Beautify(Math.round(50 + bonus * 10)) + + "%
thanks to residual luck
and your " + + bonus + + " golden cookie upgrade" + + (bonus == 1 ? "" : "s") + + '.
' + + this.ddesc + ); + } + return this.desc; + }; + if (EN) Game.last.descFunc = func; + + new Game.Upgrade( + "Golden switch [on]", + loc( + "The switch is currently giving you a passive +%1% CpS; it also prevents golden cookies from spawning.
Turning it off will revert those effects.
Cost is equal to 1 hour of production.", + 50 + ), + 1000000, + [21, 10] + ); + Game.last.pool = "toggle"; + Game.last.toggleInto = "Golden switch [off]"; + Game.last.priceFunc = function () { + return Game.cookiesPs * 60 * 60; + }; + Game.last.descFunc = func; + + order = 50000; + new Game.Upgrade( + "Milk selector", + loc("Lets you pick what flavor of milk to display."), + 0, + [1, 8] + ); + Game.last.descFunc = function () { + var choice = this.choicesFunction()[Game.milkType]; + if (!choice) choice = this.choicesFunction()[0]; + return ( + '
' + + loc("Current:") + + " " + + tinyIcon(choice.icon) + + " " + + choice.name + + '
' + + this.ddesc + ); + }; + + Game.last.pool = "toggle"; + Game.last.choicesFunction = function () { + var rank = 0; + var choices = []; + + for (var i = 0; i < Game.AllMilks.length; i++) { + var it = Game.AllMilks[i]; + choices.push({ + name: it.name, + icon: it.icon, + milk: it, + order: it.type, + }); + } + + choices[11].div = true; + + var maxRank = Math.floor(Game.AchievementsOwned / 25); + for (var i = 0; i < choices.length; i++) { + var it = choices[i].milk; + if (it.type == 1 && !Game.Has("Fanciful dairy selection")) + choices[i] = 0; + if (it.rank && it.rank > maxRank) choices[i] = 0; + } + + choices[Game.milkType].selected = 1; + return choices; + }; + Game.last.choicesPick = function (id) { + Game.milkType = id; + }; + + order = 10300; + var butterBiscuitMult = 100000000; + Game.NewUpgradeCookie({ + name: "Milk chocolate butter biscuit", + desc: "Rewarded for owning 100 of everything.
It bears the engraving of a fine entrepreneur.", + icon: [27, 8], + power: 10, + price: 999999999999999999999 * butterBiscuitMult, + locked: 1, + }); + Game.NewUpgradeCookie({ + name: "Dark chocolate butter biscuit", + desc: "Rewarded for owning 150 of everything.
It is adorned with the image of an experienced cookie tycoon.", + icon: [27, 9], + power: 10, + price: 999999999999999999999999 * butterBiscuitMult, + locked: 1, + }); + Game.NewUpgradeCookie({ + name: "White chocolate butter biscuit", + desc: "Rewarded for owning 200 of everything.
The chocolate is chiseled to depict a masterful pastry magnate.", + icon: [28, 9], + power: 10, + price: 999999999999999999999999999 * butterBiscuitMult, + locked: 1, + }); + Game.NewUpgradeCookie({ + name: "Ruby chocolate butter biscuit", + desc: "Rewarded for owning 250 of everything.
Covered in a rare red chocolate, this biscuit is etched to represent the face of a cookie industrialist gone mad with power.", + icon: [28, 8], + power: 10, + price: 999999999999999999999999999999 * butterBiscuitMult, + locked: 1, + }); + + order = 10020; + Game.NewUpgradeCookie({ + name: "Gingersnaps", + desc: "Cookies with a soul. Probably.", + icon: [29, 10], + power: 4, + price: 99999999999999999999, + }); + Game.NewUpgradeCookie({ + name: "Cinnamon cookies", + desc: "The secret is in the patented swirly glazing.", + icon: [23, 8], + power: 4, + price: 99999999999999999999 * 5, + }); + Game.NewUpgradeCookie({ + name: "Vanity cookies", + desc: "One tiny candied fruit sits atop this decadent cookie.", + icon: [22, 8], + power: 4, + price: 999999999999999999999, + }); + Game.NewUpgradeCookie({ + name: "Cigars", + desc: "Close, but no match for those extravagant cookie straws they serve in coffee shops these days.", + icon: [25, 8], + power: 4, + price: 999999999999999999999 * 5, + }); + Game.NewUpgradeCookie({ + name: "Pinwheel cookies", + desc: "Bringing you the dizzying combination of brown flavor and beige taste!", + icon: [22, 10], + power: 4, + price: 9999999999999999999999, + }); + Game.NewUpgradeCookie({ + name: "Fudge squares", + desc: "Not exactly cookies, but you won't care once you've tasted one of these.
They're so good, it's fudged-up!", + icon: [24, 8], + power: 4, + price: 9999999999999999999999 * 5, + }); + + order = 10030; + Game.NewUpgradeCookie({ + name: "Digits", + desc: "Three flavors, zero phalanges.", + icon: [26, 8], + require: "Box of brand biscuits", + power: 2, + price: 999999999999999 * 5, + }); + + order = 10029; + Game.NewUpgradeCookie({ + name: "Butter horseshoes", + desc: "It would behoove you to not overindulge in these.", + icon: [22, 9], + require: "Tin of butter cookies", + power: 4, + price: 99999999999999999999999, + }); + Game.NewUpgradeCookie({ + name: "Butter pucks", + desc: "Lord, what fools these mortals be!
(This is kind of a hokey reference.)", + icon: [23, 9], + require: "Tin of butter cookies", + power: 4, + price: 99999999999999999999999 * 5, + }); + Game.NewUpgradeCookie({ + name: "Butter knots", + desc: "Look, you can call these pretzels if you want, but you'd just be fooling yourself, wouldn't you?", + icon: [24, 9], + require: "Tin of butter cookies", + power: 4, + price: 999999999999999999999999, + }); + Game.NewUpgradeCookie({ + name: "Butter slabs", + desc: "Nothing butter than a slab to the face.", + icon: [25, 9], + require: "Tin of butter cookies", + power: 4, + price: 999999999999999999999999 * 5, + }); + Game.NewUpgradeCookie({ + name: "Butter swirls", + desc: "These are equal parts sugar, butter, and warm fuzzy feelings - all of which cause millions of deaths every day.", + icon: [26, 9], + require: "Tin of butter cookies", + power: 4, + price: 9999999999999999999999999, + }); + + order = 10020; + Game.NewUpgradeCookie({ + name: "Shortbread biscuits", + desc: "These rich butter cookies are neither short, nor bread. What a country!", + icon: [23, 10], + power: 4, + price: 99999999999999999999999, + }); + Game.NewUpgradeCookie({ + name: "Millionaires' shortbreads", + desc: "Three thought-provoking layers of creamy chocolate, hard-working caramel and crumbly biscuit in a poignant commentary of class struggle.", + icon: [24, 10], + power: 4, + price: 99999999999999999999999 * 5, + }); + Game.NewUpgradeCookie({ + name: "Caramel cookies", + desc: "The polymerized carbohydrates adorning these cookies are sure to stick to your teeth for quite a while.", + icon: [25, 10], + power: 4, + price: 999999999999999999999999, + }); + + var desc = function (totalHours) { + return loc( + "You retain optimal cookie production while the game is closed for twice as long, for a total of %1.", + Game.sayTime(totalHours * 60 * 60 * Game.fps, -1) + ); + }; + new Game.Upgrade( + "Belphegor", + desc(2) + + "A demon of shortcuts and laziness, Belphegor commands machines to do work in his stead.", + Math.pow(angelPriceFactor, 1), + [7, 11] + ); + Game.last.pool = "prestige"; + Game.last.parents = ["Twin Gates of Transcendence"]; + new Game.Upgrade( + "Mammon", + desc(4) + + "The demonic embodiment of wealth, Mammon requests a tithe of blood and gold from all his worshippers.", + Math.pow(angelPriceFactor, 2), + [8, 11] + ); + Game.last.pool = "prestige"; + Game.last.parents = ["Belphegor"]; + new Game.Upgrade( + "Abaddon", + desc(8) + + "Master of overindulgence, Abaddon governs the wrinkler brood and inspires their insatiability.", + Math.pow(angelPriceFactor, 3), + [9, 11] + ); + Game.last.pool = "prestige"; + Game.last.parents = ["Mammon"]; + new Game.Upgrade( + "Satan", + desc(16) + + "The counterpoint to everything righteous, this demon represents the nefarious influence of deceit and temptation.", + Math.pow(angelPriceFactor, 4), + [10, 11] + ); + Game.last.pool = "prestige"; + Game.last.parents = ["Abaddon"]; + new Game.Upgrade( + "Asmodeus", + desc(32) + + "This demon with three monstrous heads draws his power from the all-consuming desire for cookies and all things sweet.", + Math.pow(angelPriceFactor, 5), + [11, 11] + ); + Game.last.pool = "prestige"; + Game.last.parents = ["Satan"]; + new Game.Upgrade( + "Beelzebub", + desc(64) + + "The festering incarnation of blight and disease, Beelzebub rules over the vast armies of pastry inferno.", + Math.pow(angelPriceFactor, 6), + [12, 11] + ); + Game.last.pool = "prestige"; + Game.last.parents = ["Asmodeus"]; + new Game.Upgrade( + "Lucifer", + desc(128) + + "Also known as the Lightbringer, this infernal prince's tremendous ego caused him to be cast down from pastry heaven.", + Math.pow(angelPriceFactor, 7), + [13, 11] + ); + Game.last.pool = "prestige"; + Game.last.parents = ["Beelzebub"]; + + new Game.Upgrade( + "Golden cookie alert sound", + loc( + "Unlocks the golden cookie sound selector, which lets you pick whether golden cookies emit a sound when appearing or not." + ) + "A sound decision.", + 999999, + [28, 6] + ); + Game.last.pool = "prestige"; + Game.last.parents = ["Residual luck"]; + + order = 49900; + new Game.Upgrade( + "Golden cookie sound selector", + loc("Lets you change the sound golden cookies make when they spawn."), + 0, + [28, 6] + ); + Game.last.descFunc = function () { + var choice = this.choicesFunction()[Game.chimeType]; + return ( + '
' + + loc("Current:") + + " " + + tinyIcon(choice.icon) + + " " + + choice.name + + '
' + + this.ddesc + ); + }; + + Game.last.pool = "toggle"; + Game.last.choicesFunction = function () { + var choices = []; + choices[0] = { name: "No sound", icon: [0, 7] }; + choices[1] = { name: "Chime", icon: [22, 6] }; + choices[2] = { name: "Fortune", icon: [27, 6] }; + choices[3] = { name: "Cymbal", icon: [9, 10] }; + choices[4] = { name: "Squeak", icon: [8, 10] }; + for (var i = 0; i < choices.length; i++) { + choices[i].name = loc(choices[i].name); + } + + choices[Game.chimeType].selected = 1; + return choices; + }; + Game.last.choicesPick = function (id) { + Game.chimeType = id; + Game.playGoldenCookieChime(); + }; + Game.playGoldenCookieChime = function () { + if (Game.chimeType == 1) PlaySound("snd/chime.mp3"); + else if (Game.chimeType == 2) PlaySound("snd/fortune.mp3"); + else if (Game.chimeType == 3) PlaySound("snd/cymbalRev.mp3"); + else if (Game.chimeType == 4) { + Game.wrinklerSquishSound++; + if (Game.wrinklerSquishSound > 4) { + Game.wrinklerSquishSound -= 4; + } + PlaySound("snd/squeak" + Game.wrinklerSquishSound + ".mp3"); + } + }; + + new Game.Upgrade( + "Basic wallpaper assortment", + loc( + "Unlocks the background selector, letting you select the game's background.
Comes with a variety of basic flavors." + ) + + "Prioritizing aesthetics over crucial utilitarian upgrades? Color me impressed.", + 99, + [29, 5] + ); + Game.last.pool = "prestige"; + Game.last.parents = ["Classic dairy selection"]; + + new Game.Upgrade( + "Legacy", + loc( + 'This is the first heavenly upgrade; it unlocks the Heavenly chips system.
Each time you ascend, the cookies you made in your past life are turned into heavenly chips and prestige.
Heavenly chips can be spent on a variety of permanent transcendental upgrades.
Your prestige level also gives you a permanent +1% CpS per level.' + ) + "We've all been waiting for you.", + 1, + [21, 6] + ); + Game.last.pool = "prestige"; + Game.last.parents = []; + + new Game.Upgrade( + "Elder spice", + loc("You can attract %1 more wrinklers.", 2) + + "The cookie your cookie could smell like.", + 444444, + [19, 8] + ); + Game.last.pool = "prestige"; + Game.last.parents = ["Unholy bait"]; + + new Game.Upgrade( + "Residual luck", + loc( + "While the golden switch is on, you gain an additional +%1% CpS per golden cookie upgrade owned.", + 10 + ) + "Fortune comes in many flavors.", + 99999, + [27, 6] + ); + Game.last.pool = "prestige"; + Game.last.parents = ["Golden switch"]; + + order = 150; + new Game.Upgrade( + "Fantasteel mouse", + getStrClickingGains(1) + + "You could be clicking using your touchpad and we'd be none the wiser.", + 5000000000000000000, + [11, 17] + ); + Game.MakeTiered(Game.last, 8, 11); + new Game.Upgrade( + "Nevercrack mouse", + getStrClickingGains(1) + + "How much beefier can you make a mouse until it's considered a rat?", + 500000000000000000000, + [11, 18] + ); + Game.MakeTiered(Game.last, 9, 11); + + new Game.Upgrade( + "Five-finger discount", + loc("All upgrades are %1% cheaper per %2.", [ + 1, + loc("%1 cursor", 100), + ]) + "Stick it to the man.", + 555555, + [28, 7], + function () { + Game.upgradesToRebuild = 1; + } + ); + Game.last.pool = "prestige"; + Game.last.parents = ["Halo gloves", "Abaddon"]; + + order = 5000; + Game.SynergyUpgrade( + "Future almanacs", + "Lets you predict optimal planting times. It's crazy what time travel can do!", + "Farm", + "Time machine", + "synergy1" + ); + Game.SynergyUpgrade( + "Rain prayer", + "A deeply spiritual ceremonial involving complicated dance moves and high-tech cloud-busting lasers.", + "Farm", + "Temple", + "synergy2" + ); + + Game.SynergyUpgrade( + "Seismic magic", + "Surprise earthquakes are an old favorite of wizardly frat houses.", + "Mine", + "Wizard tower", + "synergy1" + ); + Game.SynergyUpgrade( + "Asteroid mining", + "As per the 1974 United Cosmic Convention, comets, moons, and inhabited planetoids are no longer legally excavatable.
But hey, a space bribe goes a long way.
", + "Mine", + "Shipment", + "synergy2" + ); + + Game.SynergyUpgrade( + "Quantum electronics", + "Your machines won't even be sure if they're on or off!", + "Factory", + "Antimatter condenser", + "synergy1" + ); + Game.SynergyUpgrade( + "Temporal overclocking", + "Introduce more quickitude in your system for increased speedation of fastness.", + "Factory", + "Time machine", + "synergy2" + ); + + Game.SynergyUpgrade( + "Contracts from beyond", + "Make sure to read the fine print!", + "Bank", + "Portal", + "synergy1" + ); + Game.SynergyUpgrade( + "Printing presses", + "Fake bills so real, they're almost worth the ink they're printed with.", + "Bank", + "Factory", + "synergy2" + ); + + Game.SynergyUpgrade( + "Paganism", + "Some deities are better left unworshipped.", + "Temple", + "Portal", + "synergy1" + ); + Game.SynergyUpgrade( + "God particle", + "Turns out God is much tinier than we thought, I guess.", + "Temple", + "Antimatter condenser", + "synergy2" + ); + + Game.SynergyUpgrade( + "Arcane knowledge", + "Some things were never meant to be known - only mildly speculated.", + "Wizard tower", + "Alchemy lab", + "synergy1" + ); + Game.SynergyUpgrade( + "Magical botany", + 'Already known in some reactionary newspapers as "the wizard\'s GMOs".', + "Wizard tower", + "Farm", + "synergy2" + ); + + Game.SynergyUpgrade( + "Fossil fuels", + "Somehow better than plutonium for powering rockets.
Extracted from the fuels of ancient, fossilized civilizations.
", + "Shipment", + "Mine", + "synergy1" + ); + Game.SynergyUpgrade( + "Shipyards", + "Where carpentry, blind luck, and asbestos insulation unite to produce the most dazzling spaceships on the planet.", + "Shipment", + "Factory", + "synergy2" + ); + + Game.SynergyUpgrade( + "Primordial ores", + "Only when refining the purest metals will you extract the sweetest sap of the earth.", + "Alchemy lab", + "Mine", + "synergy1" + ); + Game.SynergyUpgrade( + "Gold fund", + "If gold is the backbone of the economy, cookies, surely, are its hip joints.", + "Alchemy lab", + "Bank", + "synergy2" + ); + + Game.SynergyUpgrade( + "Infernal crops", + "Sprinkle regularly with FIRE.", + "Portal", + "Farm", + "synergy1" + ); + Game.SynergyUpgrade( + "Abysmal glimmer", + "Someone, or something, is staring back at you.
Perhaps at all of us.
", + "Portal", + "Prism", + "synergy2" + ); + + Game.SynergyUpgrade( + "Relativistic parsec-skipping", + "People will tell you this isn't physically possible.
These are people you don't want on your ship.
", + "Time machine", + "Shipment", + "synergy1" + ); + Game.SynergyUpgrade( + "Primeval glow", + "From unending times, an ancient light still shines, impossibly pure and fragile in its old age.", + "Time machine", + "Prism", + "synergy2" + ); + + Game.SynergyUpgrade( + "Extra physics funding", + "Time to put your money where your particle colliders are.", + "Antimatter condenser", + "Bank", + "synergy1" + ); + Game.SynergyUpgrade( + "Chemical proficiency", + "Discover exciting new elements, such as Fleshmeltium, Inert Shampoo Byproduct #17 and Carbon++!", + "Antimatter condenser", + "Alchemy lab", + "synergy2" + ); + + Game.SynergyUpgrade( + "Light magic", + "Actually not to be taken lightly! No, I'm serious. 178 people died last year. You don't mess around with magic.", + "Prism", + "Wizard tower", + "synergy1" + ); + Game.SynergyUpgrade( + "Mystical energies", + "Something beckons from within the light. It is warm, comforting, and apparently the cause for several kinds of exotic skin cancers.", + "Prism", + "Temple", + "synergy2" + ); + + new Game.Upgrade( + "Synergies Vol. I", + loc( + "Unlocks a new tier of upgrades that affect 2 buildings at the same time.
Synergies appear once you have %1 of both buildings.", + 15 + ) + "The many beats the few.", + 222222, + [10, 20] + ); + Game.last.pool = "prestige"; + Game.last.parents = ["Satan", "Dominions"]; + new Game.Upgrade( + "Synergies Vol. II", + loc( + "Unlocks a new tier of upgrades that affect 2 buildings at the same time.
Synergies appear once you have %1 of both buildings.", + 75 + ) + "The several beats the many.", + 2222222, + [10, 29] + ); + Game.last.pool = "prestige"; + Game.last.parents = ["Beelzebub", "Seraphim", "Synergies Vol. I"]; + + new Game.Upgrade( + "Heavenly cookies", + loc("Cookie production multiplier +%1% permanently.", 10) + + "Baked with heavenly chips. An otherwordly flavor that transcends time and space.", + 3, + [25, 12] + ); + Game.last.pool = "prestige"; + Game.last.parents = ["Legacy"]; + Game.last.power = 10; + Game.last.pseudoCookie = true; + new Game.Upgrade( + "Wrinkly cookies", + loc("Cookie production multiplier +%1% permanently.", 10) + + "The result of regular cookies left to age out for countless eons in a place where time and space are meaningless.", + 6666666, + [26, 12] + ); + Game.last.pool = "prestige"; + Game.last.parents = ["Sacrilegious corruption", "Elder spice"]; + Game.last.power = 10; + Game.last.pseudoCookie = true; + new Game.Upgrade( + "Distilled essence of redoubled luck", + loc( + "Golden cookies (and all other things that spawn, such as reindeer) have %1% chance of being doubled.", + 1 + ) + + "Tastes glittery. The empty phial makes for a great pencil holder.", + 7777777, + [27, 12] + ); + Game.last.pool = "prestige"; + Game.last.parents = ["Divine bakeries", "Residual luck"]; + + order = 40000; + new Game.Upgrade( + "Occult obstruction", + loc("Cookie production reduced to 0.") + + "If symptoms persist, consult a doctor.", + 7, + [15, 5] + ); //debug purposes only + Game.last.pool = "debug"; + new Game.Upgrade( + "Glucose-charged air", + loc("Sugar lumps coalesce a whole lot faster.") + + "Don't breathe too much or you'll get diabetes!", + 7, + [29, 16] + ); //debug purposes only + Game.last.pool = "debug"; + + order = 10300; + Game.NewUpgradeCookie({ + name: "Lavender chocolate butter biscuit", + desc: "Rewarded for owning 300 of everything.
This subtly-flavored biscuit represents the accomplishments of decades of top-secret research. The molded design on the chocolate resembles a well-known entrepreneur who gave their all to the ancient path of baking.", + icon: [26, 10], + power: 10, + price: 999999999999999999999999999999999 * butterBiscuitMult, + locked: 1, + }); + + order = 10030; + Game.NewUpgradeCookie({ + name: "Lombardia cookies", + desc: "These come from those farms with the really good memory.", + icon: [23, 13], + require: "Box of brand biscuits", + power: 3, + price: 999999999999999999999 * 5, + }); + Game.NewUpgradeCookie({ + name: "Bastenaken cookies", + desc: "French cookies made of delicious cinnamon and candy sugar. These do not contain Nuts!", + icon: [24, 13], + require: "Box of brand biscuits", + power: 3, + price: 999999999999999999999 * 5, + }); + + order = 10020; + Game.NewUpgradeCookie({ + name: "Pecan sandies", + desc: "Stick a nut on a cookie and call it a day! Name your band after it! Whatever!", + icon: [25, 13], + power: 4, + price: 999999999999999999999999 * 5, + }); + Game.NewUpgradeCookie({ + name: "Moravian spice cookies", + desc: "Popular for being the world's moravianest cookies.", + icon: [26, 13], + power: 4, + price: 9999999999999999999999999, + }); + Game.NewUpgradeCookie({ + name: "Anzac biscuits", + desc: "Army biscuits from a bakery down under, containing no eggs but yes oats.", + icon: [27, 13], + power: 4, + price: 9999999999999999999999999 * 5, + }); + Game.NewUpgradeCookie({ + name: "Buttercakes", + desc: "Glistening with cholesterol, these cookies moistly straddle the line between the legal definition of a cookie and just a straight-up stick of butter.", + icon: [29, 13], + power: 4, + price: 99999999999999999999999999, + }); + Game.NewUpgradeCookie({ + name: "Ice cream sandwiches", + desc: 'In an alternate universe, "ice cream sandwich" designates an ice cream cone filled with bacon, lettuce, and tomatoes. Maybe some sprinkles too.', + icon: [28, 13], + power: 4, + price: 99999999999999999999999999 * 5, + }); + + new Game.Upgrade( + "Stevia Caelestis", + loc( + "Sugar lumps ripen %1 sooner.", + Game.sayTime(60 * 60 * Game.fps) + ) + + "A plant of supernatural sweetness grown by angels in heavenly gardens.", + 100000000, + [25, 15] + ); + Game.last.pool = "prestige"; + Game.last.parents = ["Wrinkly cookies"]; + new Game.Upgrade( + "Diabetica Daemonicus", + loc( + "Sugar lumps mature %1 sooner.", + Game.sayTime(60 * 60 * Game.fps) + ) + + "A malevolent, if delicious herb that is said to grow on the cliffs of the darkest abyss of the underworld.", + 300000000, + [26, 15] + ); + Game.last.pool = "prestige"; + Game.last.parents = ["Stevia Caelestis", "Lucifer"]; + new Game.Upgrade( + "Sucralosia Inutilis", + loc( + "Bifurcated sugar lumps appear %1% more often and are %2% more likely to drop 2 lumps.", + [5, 5] + ) + + "A rare berry of uninteresting flavor that is as elusive as its uses are limited; only sought-after by the most avid collectors with too much wealth on their hands.", + 1000000000, + [27, 15] + ); + Game.last.pool = "prestige"; + Game.last.parents = ["Diabetica Daemonicus"]; + + new Game.Upgrade( + "Lucky digit", + loc( + "+%1% prestige level effect on CpS.
+%2% golden cookie effect duration.
+%3% golden cookie lifespan.", + [1, 1, 1] + ) + + "This upgrade is a bit shy and only appears when your prestige level contains a 7.", + 777, + [24, 15] + ); + Game.last.pool = "prestige"; + Game.last.parents = ["Heavenly luck"]; + Game.last.showIf = function () { + return Math.ceil((Game.prestige + "").split("7").length - 1) >= 1; + }; + new Game.Upgrade( + "Lucky number", + loc( + "+%1% prestige level effect on CpS.
+%2% golden cookie effect duration.
+%3% golden cookie lifespan.", + [1, 1, 1] + ) + + "This upgrade is a reclusive hermit and only appears when your prestige level contains two 7's.", + 77777, + [24, 15] + ); + Game.last.pool = "prestige"; + Game.last.parents = ["Lucky digit", "Lasting fortune"]; + Game.last.showIf = function () { + return Math.ceil((Game.prestige + "").split("7").length - 1) >= 2; + }; + new Game.Upgrade( + "Lucky payout", + loc( + "+%1% prestige level effect on CpS.
+%2% golden cookie effect duration.
+%3% golden cookie lifespan.", + [1, 1, 1] + ) + + "This upgrade took an oath of complete seclusion from the rest of the world and only appears when your prestige level contains four 7's.", + 77777777, + [24, 15] + ); + Game.last.pool = "prestige"; + Game.last.parents = ["Lucky number", "Decisive fate"]; + Game.last.showIf = function () { + return Math.ceil((Game.prestige + "").split("7").length - 1) >= 4; + }; + + order = 50000; + new Game.Upgrade( + "Background selector", + loc("Lets you pick which wallpaper to display."), + 0, + [29, 5] + ); + Game.last.descFunc = function () { + var choice = this.choicesFunction()[Game.bgType]; + if (choice == 0) choice = this.choicesFunction()[0]; + return ( + '
' + + loc("Current:") + + " " + + tinyIcon(choice.icon) + + " " + + choice.name + + '
' + + this.ddesc + ); + }; + + Game.last.pool = "toggle"; + Game.last.choicesFunction = function () { + var choices = []; + for (var i in Game.BGsByChoice) { + choices[i] = { + name: Game.BGsByChoice[i].name, + icon: Game.BGsByChoice[i].icon, + order: Game.BGsByChoice[i].order || parseInt(i), + }; + } + + choices[13].div = true; + + for (var i = 0; i < choices.length; i++) { + var it = choices[i]; + if (it.order >= 4.9 && !Game.Has("Distinguished wallpaper assortment")) + choices[i] = 0; + } + + choices[Game.bgType].selected = 1; + return choices; + }; + Game.last.choicesPick = function (id) { + Game.bgType = id; + }; + + Game.AllBGs = [ + { pic: "bgBlue", name: "Automatic", icon: [0, 7] }, + { pic: "bgBlue", name: "Blue", icon: [21, 21] }, + { pic: "bgRed", name: "Red", icon: [22, 21] }, + { pic: "bgWhite", name: "White", icon: [23, 21] }, + { pic: "bgBlack", name: "Black", icon: [24, 21] }, + { pic: "bgGold", name: "Gold", icon: [25, 21] }, + { pic: "grandmas1", name: "Grandmas", icon: [26, 21] }, + { pic: "grandmas2", name: "Displeased grandmas", icon: [27, 21] }, + { pic: "grandmas3", name: "Angered grandmas", icon: [28, 21] }, + { pic: "bgMoney", name: "Money", icon: [29, 21] }, + { pic: "bgPurple", name: "Purple", icon: [21, 22], order: 1.1 }, + { pic: "bgPink", name: "Pink", icon: [24, 22], order: 2.1 }, + { pic: "bgMint", name: "Mint", icon: [22, 22], order: 2.2 }, + { pic: "bgSilver", name: "Silver", icon: [25, 22], order: 4.9 }, + { pic: "bgBW", name: "Black & White", icon: [23, 22], order: 4.1 }, + { pic: "bgSpectrum", name: "Spectrum", icon: [28, 22], order: 4.2 }, + { pic: "bgCandy", name: "Candy", icon: [26, 22] }, + { pic: "bgYellowBlue", name: "Biscuit store", icon: [27, 22] }, + { pic: "bgChoco", name: "Chocolate", icon: [30, 21] }, + { pic: "bgChocoDark", name: "Dark Chocolate", icon: [31, 21] }, + { pic: "bgPaint", name: "Painter", icon: [24, 34] }, + { pic: "bgSnowy", name: "Snow", icon: [30, 22] }, + { pic: "bgSky", name: "Sky", icon: [29, 22] }, + { pic: "bgStars", name: "Night", icon: [31, 22] }, + { pic: "bgFoil", name: "Foil", icon: [25, 34] }, + ]; + Game.BGsByChoice = {}; + for (var i = 0; i < Game.AllBGs.length; i++) { + Game.BGsByChoice[i] = Game.AllBGs[i]; + } + if (!EN) { + Game.BGsByChoice[0].name = loc(Game.BGsByChoice[0].name); + for (var i = 1; i < Game.BGsByChoice.length; i++) { + Game.BGsByChoice[i].name = '"' + Game.BGsByChoice[i].pic + '"'; + } + } + + order = 255; + Game.GrandmaSynergy( + "Lucky grandmas", + "A fortunate grandma that always seems to find more cookies.", + "Chancemaker" + ); + + order = 1200; + Game.TieredUpgrade( + "Your lucky cookie", + "This is the first cookie you've ever baked. It holds a deep sentimental value and, after all this time, an interesting smell.", + "Chancemaker", + 1 + ); + Game.TieredUpgrade( + '"All Bets Are Off" magic coin', + "A coin that always lands on the other side when flipped. Not heads, not tails, not the edge. The other side.", + "Chancemaker", + 2 + ); + Game.TieredUpgrade( + "Winning lottery ticket", + "What lottery? THE lottery, that's what lottery! Only lottery that matters!", + "Chancemaker", + 3 + ); + Game.TieredUpgrade( + "Four-leaf clover field", + "No giant monsters here, just a whole lot of lucky grass.", + "Chancemaker", + 4 + ); + Game.TieredUpgrade( + "A recipe book about books", + "Tip the scales in your favor with 28 creative new ways to cook the books.", + "Chancemaker", + 5 + ); + Game.TieredUpgrade( + "Leprechaun village", + "You've finally become accepted among the local leprechauns, who lend you their mythical luck as a sign of friendship (as well as some rather foul-tasting tea).", + "Chancemaker", + 6 + ); + Game.TieredUpgrade( + "Improbability drive", + "A strange engine that turns statistics on their head. Recommended by the Grandmother's Guide to the Bakery.", + "Chancemaker", + 7 + ); + Game.TieredUpgrade( + "Antisuperstistronics", + "An exciting new field of research that makes unlucky things lucky. No mirror unbroken, no ladder unwalked under!", + "Chancemaker", + 8 + ); + + order = 5000; + Game.SynergyUpgrade( + "Gemmed talismans", + "Good-luck charms covered in ancient and excruciatingly rare crystals. A must have for job interviews!", + "Chancemaker", + "Mine", + "synergy1" + ); + + order = 20000; + new Game.Upgrade( + "Kitten consultants", + strKittenDesc + "glad to be overpaid to work with you, sir", + 900000000000000000000000000000000, + Game.GetIcon("Kitten", 9) + ); + Game.last.kitten = 1; + Game.MakeTiered(Game.last, 9, 18); + + order = 99999; + var years = Math.floor( + (Date.now() - new Date(2013, 7, 8)) / (1000 * 60 * 60 * 24 * 365) + ); + //only updates on page load + //may behave strangely on leap years + Game.NewUpgradeCookie({ + name: "Birthday cookie", + desc: "-", + icon: [22, 13], + power: years, + price: 99999999999999999999999999999, + }); + Game.last.baseDesc = + loc( + "Cookie production multiplier +%1% for every year Cookie Clicker has existed (currently: +%2%).", + [1, Beautify(years)] + ) + "Thank you for playing Cookie Clicker!
-Orteil
"; + + order = 150; + new Game.Upgrade( + "Armythril mouse", + getStrClickingGains(1) + + "This one takes about 53 people to push it around and another 48 to jump down on the button and trigger a click. You could say it's got some heft to it.", + 50000000000000000000000, + [11, 19] + ); + Game.MakeTiered(Game.last, 10, 11); + + order = 200; + Game.TieredUpgrade( + "Reverse dementia", + "Extremely unsettling, and somehow even worse than the regular kind.", + "Grandma", + 9 + ); + order = 300; + Game.TieredUpgrade( + "Humane pesticides", + "Made by people, for people, from people and ready to unleash some righteous scorching pain on those pesky insects that so deserve it.", + "Farm", + 9 + ); + order = 400; + Game.TieredUpgrade( + "Mole people", + "Engineered from real human beings within your very labs, these sturdy little folks have a knack for finding the tastiest underground minerals in conditions that more expensive machinery probably wouldn't survive.", + "Mine", + 9 + ); + order = 500; + Game.TieredUpgrade( + "Machine learning", + "You figured you might get better productivity if you actually told your workers to learn how to work the machines. Sometimes, it's the little things...", + "Factory", + 9 + ); + order = 525; + Game.TieredUpgrade( + "Edible money", + "It's really quite simple; you make all currency too delicious not to eat, solving world hunger and inflation in one fell swoop!", + "Bank", + 9 + ); + order = 550; + Game.TieredUpgrade( + "Sick rap prayers", + "With their ill beat and radical rhymes, these way-hip religious tunes are sure to get all the youngins who thought they were 2 cool 4 church back on the pews and praying for more! Wicked!", + "Temple", + 9 + ); + order = 575; + Game.TieredUpgrade( + "Deluxe tailored wands", + "In this age of science, most skillful wand-makers are now long gone; but thankfully - not all those wanders are lost.", + "Wizard tower", + 9 + ); + order = 600; + Game.TieredUpgrade( + "Autopilot", + "Your ships are now fitted with completely robotic crews! It's crazy how much money you save when you don't have to compensate the families of those lost in space.", + "Shipment", + 9 + ); + order = 700; + Game.TieredUpgrade( + "The advent of chemistry", + "You know what? That whole alchemy nonsense was a load of baseless rubbish. Dear god, what were you thinking?", + "Alchemy lab", + 9 + ); + order = 800; + Game.TieredUpgrade( + "The real world", + "It turns out that our universe is actually the twisted dimension of another, saner plane of reality. Time to hop on over there and loot the place!", + "Portal", + 9 + ); + order = 900; + Game.TieredUpgrade( + "Second seconds", + "That's twice as many seconds in the same amount of time! What a deal! Also, what in god's name!", + "Time machine", + 9 + ); + order = 1000; + Game.TieredUpgrade( + "Quantum comb", + "Quantum entanglement is one of those things that are so annoying to explain that we might honestly be better off without it. This is finally possible thanks to the quantum comb!", + "Antimatter condenser", + 9 + ); + order = 1100; + Game.TieredUpgrade( + "Crystal mirrors", + "Designed to filter more light back into your prisms, reaching levels of brightness that reality itself had never planned for.", + "Prism", + 9 + ); + order = 1200; + Game.TieredUpgrade( + "Bunnypedes", + "You've taken to breeding rabbits with hundreds of paws, which makes them intrinsically very lucky and thus a very handy (if very disturbing) pet.", + "Chancemaker", + 9 + ); + + order = 20000; + new Game.Upgrade( + "Kitten assistants to the regional manager", + strKittenDesc + + "nothing stresses meowt... except having to seek the approval of my inferiors, sir", + 900000000000000000000000000000000000, + Game.GetIcon("Kitten", 10) + ); + Game.last.kitten = 1; + Game.MakeTiered(Game.last, 10, 18); + + order = 5000; + Game.SynergyUpgrade( + "Charm quarks", + "They're after your lucky quarks!", + "Chancemaker", + "Antimatter condenser", + "synergy2" + ); + + order = 10020; + Game.NewUpgradeCookie({ + name: "Pink biscuits", + desc: "One of the oldest cookies. Traditionally dipped in champagne to soften it, because the French will use any opportunity to drink.", + icon: [21, 16], + power: 4, + price: 999999999999999999999999999, + }); + Game.NewUpgradeCookie({ + name: "Whole-grain cookies", + desc: 'Covered in seeds and other earthy-looking debris. Really going for that "5-second rule" look.', + icon: [22, 16], + power: 4, + price: 999999999999999999999999999 * 5, + }); + Game.NewUpgradeCookie({ + name: "Candy cookies", + desc: "These melt in your hands just a little bit.", + icon: [23, 16], + power: 4, + price: 9999999999999999999999999999, + }); + Game.NewUpgradeCookie({ + name: "Big chip cookies", + desc: "You are in awe at the size of these chips. Absolute units.", + icon: [24, 16], + power: 4, + price: 9999999999999999999999999999 * 5, + }); + Game.NewUpgradeCookie({ + name: "One chip cookies", + desc: "You get one.", + icon: [25, 16], + power: 1, + price: 99999999999999999999999999999, + }); + + new Game.Upgrade( + "Sugar baking", + loc( + 'Each unspent sugar lump (up to %1) gives +%2% CpS.
Note: this means that spending sugar lumps will decrease your CpS until they grow back.
', + [100, 1] + ) + + "To bake with the sugary essence of eons themselves, you must first learn to take your sweet time.", + 200000000, + [21, 17] + ); + Game.last.pool = "prestige"; + Game.last.parents = ["Stevia Caelestis"]; + new Game.Upgrade( + "Sugar craving", + loc( + 'Once an ascension, you may use the "Sugar frenzy" switch to triple your CpS for 1 hour, at the cost of 1 sugar lump.' + ) + "Just a little kick to sweeten the deal.", + 400000000, + [22, 17] + ); + Game.last.pool = "prestige"; + Game.last.parents = ["Sugar baking"]; + new Game.Upgrade( + "Sugar aging process", + loc("Each grandma (up to %1) makes sugar lumps ripen %2 sooner.", [ + 600, + Game.sayTime(6 * Game.fps), + ]) + "Aren't they just the sweetest?", + 600000000, + [23, 17] + ); + Game.last.pool = "prestige"; + Game.last.parents = ["Sugar craving", "Diabetica Daemonicus"]; + + order = 40050; + new Game.Upgrade( + "Sugar frenzy", + loc( + "Activating this will triple your CpS for 1 hour, at the cost of 1 sugar lump." + ) + + "
" + + loc("May only be used once per ascension."), + 0, + [22, 17] + ); + Game.last.priceLumps = 1; + Game.last.pool = "toggle"; + Game.last.toggleInto = 0; + Game.last.canBuyFunc = function () { + return Game.lumps >= 1; + }; + Game.last.clickFunction = Game.spendLump( + 1, + loc("activate the sugar frenzy"), + function () { + Game.Upgrades["Sugar frenzy"].buy(1); + buff = Game.gainBuff("sugar frenzy", 60 * 60, 3); + Game.Notify( + loc("Sugar frenzy!"), + loc("CpS x%1 for 1 hour!", 3), + [29, 14] + ); + } + ); + + order = 10020; + Game.NewUpgradeCookie({ + name: "Sprinkles cookies", + desc: "A bit of festive decorating helps hide the fact that this might be one of the blandest cookies you've ever tasted.", + icon: [21, 14], + power: 4, + price: 99999999999999999999999999999 * 5, + }); + Game.NewUpgradeCookie({ + name: "Peanut butter blossoms", + desc: "Topped with a scrumptious chocolate squirt, which is something we really wish we didn't just write.", + icon: [22, 14], + power: 4, + price: 999999999999999999999999999999, + }); + Game.NewUpgradeCookie({ + name: "No-bake cookies", + desc: "You have no idea how these mysterious oven-less treats came to be or how they hold their shape. You're thinking either elephant glue or cold fusion.", + icon: [21, 15], + power: 4, + price: 999999999999999999999999999999 * 5, + }); + Game.NewUpgradeCookie({ + name: "Florentines", + desc: "These make up for being the fruitcake of cookies by at least having the decency to feature chocolate.", + icon: [26, 16], + power: 4, + price: 9999999999999999999999999999999, + }); + Game.NewUpgradeCookie({ + name: "Chocolate crinkles", + desc: "Non-denominational cookies to celebrate year-round deliciousness, and certainly not Christmas or some other nonsense.", + icon: [22, 15], + power: 4, + price: 9999999999999999999999999999999 * 5, + }); + Game.NewUpgradeCookie({ + name: "Maple cookies", + desc: "Made with syrup from a land where milk comes in bags, instead of spontaneously pooling at the bottom of your screen depending on your achievements.", + icon: [21, 13], + power: 4, + price: 99999999999999999999999999999999, + }); + + order = 40000; + new Game.Upgrade( + "Turbo-charged soil", + loc( + "Garden plants grow every second.
Garden seeds are free to plant.
You can switch soils at any time." + ) + "It's got electrolytes!", + 7, + [2, 16] + ); //debug purposes only + Game.last.buyFunction = function () { + if (Game.Objects["Farm"].minigameLoaded) { + Game.Objects["Farm"].minigame.computeStepT(); + } + }; + Game.last.pool = "debug"; + + order = 150; + new Game.Upgrade( + "Technobsidian mouse", + getStrClickingGains(1) + + "A highly advanced mouse of a sophisticated design. Only one thing on its mind : to click.", + 5000000000000000000000000, + [11, 28] + ); + Game.MakeTiered(Game.last, 11, 11); + new Game.Upgrade( + "Plasmarble mouse", + getStrClickingGains(1) + + "A shifting blur in the corner of your eye, this mouse can trigger a flurry of clicks when grazed by even the slightest breeze.", + 500000000000000000000000000, + [11, 30] + ); + Game.MakeTiered(Game.last, 12, 11); + + order = 20000; + new Game.Upgrade( + "Kitten marketeers", + strKittenDesc + "no such thing as a saturated markit, sir", + 900000000000000000000000000000000000000, + Game.GetIcon("Kitten", 11) + ); + Game.last.kitten = 1; + Game.MakeTiered(Game.last, 11, 18); + + order = 10030; + Game.NewUpgradeCookie({ + name: "Festivity loops", + desc: "These garish biscuits are a perfect fit for children's birthday parties or the funerals of strange, eccentric billionaires.", + icon: [25, 17], + require: "Box of brand biscuits", + power: 2, + price: 999999999999999999999999 * 5, + }); + + order = 10020; + Game.NewUpgradeCookie({ + name: "Persian rice cookies", + desc: "Rose water and poppy seeds are the secret ingredients of these small, butter-free cookies.", + icon: [28, 15], + power: 4, + price: 99999999999999999999999999999999 * 5, + }); + Game.NewUpgradeCookie({ + name: "Norwegian cookies", + desc: "A flat butter cookie with a sliver of candied cherry on top. It is said that these illustrate the bleakness of scandinavian existentialism.", + icon: [22, 20], + power: 4, + price: 999999999999999999999999999999999, + }); + Game.NewUpgradeCookie({ + name: "Crispy rice cookies", + desc: "Fun to make at home! Store-bought cookies are obsolete! Topple the system! There's marshmallows in these! Destroy capitalism!", + icon: [23, 20], + power: 4, + price: 999999999999999999999999999999999 * 5, + }); + Game.NewUpgradeCookie({ + name: "Ube cookies", + desc: "The tint is obtained by the use of purple yams. According to color symbolism, these cookies are either noble, holy, or supervillains.", + icon: [24, 17], + power: 4, + price: 9999999999999999999999999999999999, + }); + Game.NewUpgradeCookie({ + name: "Butterscotch cookies", + desc: "The butterscotch chips are just the right amount of sticky, and make you feel like you're eating candy.", + icon: [24, 20], + power: 4, + price: 9999999999999999999999999999999999 * 5, + }); + Game.NewUpgradeCookie({ + name: "Speculaas", + desc: "These crunchy, almost obnoxiously cinnamony cookies are a source of dutch pride. About the origin of the name, one can only speculate.", + icon: [21, 20], + power: 4, + price: 99999999999999999999999999999999999, + }); + + order = 10200; + Game.NewUpgradeCookie({ + name: "Elderwort biscuits", + desc: "-", + icon: [22, 25], + power: 2, + price: 60 * 2, + locked: 1, + }); + Game.last.baseDesc = + getStrCookieProductionMultiplierPlus(2) + + "
" + + loc("%1 are %2% more powerful.", [ + cap(Game.Objects["Grandma"].plural), + 2, + ]) + + "
" + + loc("Dropped by %1 plants.", loc("Elderwort").toLowerCase()) + + "They taste incredibly stale, even when baked fresh."; + Game.NewUpgradeCookie({ + name: "Bakeberry cookies", + desc: "-", + icon: [23, 25], + power: 2, + price: 60, + locked: 1, + }); + Game.last.baseDesc = + getStrCookieProductionMultiplierPlus(2) + + "
" + + loc("Dropped by %1 plants.", loc("Bakeberry").toLowerCase()) + + "Really good dipped in hot chocolate."; + Game.NewUpgradeCookie({ + name: "Duketater cookies", + desc: "-", + icon: [24, 25], + power: 10, + price: 60 * 3, + locked: 1, + }); + Game.last.baseDesc = + getStrCookieProductionMultiplierPlus(10) + + "
" + + loc("Dropped by %1 plants.", loc("Duketater").toLowerCase()) + + "Fragrant and mealy, with a slight yellow aftertaste."; + Game.NewUpgradeCookie({ + name: "Green yeast digestives", + desc: "-", + icon: [25, 25], + power: 0, + price: 60 * 3, + locked: 1, + }); + Game.last.baseDesc = + loc("Golden cookies give %1% more cookies.", 1) + + "
" + + loc("Golden cookie effects last %1% longer.", 1) + + "
" + + loc("Golden cookies appear %1% more often.", 1) + + "
" + + loc("Random drops are %1% more common.", 3) + + "
" + + loc("Dropped by %1 plants.", loc("Green rot").toLowerCase()) + + "These are tastier than you'd expect, but not by much."; + + order = 23000; + new Game.Upgrade( + "Fern tea", + loc( + "You gain another +%1% of your regular CpS while the game is closed.", + 3 + ) + + " (" + + loc( + "Must own the %1 upgrade.", + getUpgradeName("Twin Gates of Transcendence") + ) + + ")" + + "
" + + loc("Dropped by %1 plants.", loc("Drowsyfern").toLowerCase()) + + "A chemically complex natural beverage, this soothing concoction has been used by mathematicians to solve equations in their sleep.", + 60, + [26, 25] + ); + new Game.Upgrade( + "Ichor syrup", + loc( + "You gain another +%1% of your regular CpS while the game is closed.", + 7 + ) + + " (" + + loc( + "Must own the %1 upgrade.", + getUpgradeName("Twin Gates of Transcendence") + ) + + ")" + + "
" + + loc( + "Sugar lumps mature %1 sooner.", + Game.sayTime(7 * 60 * Game.fps) + ) + + "
" + + loc("Dropped by %1 plants.", loc("Ichorpuff").toLowerCase()) + + "Tastes like candy. The smell is another story.", + 60 * 2, + [27, 25] + ); + + order = 10200; + Game.NewUpgradeCookie({ + name: "Wheat slims", + desc: "-", + icon: [28, 25], + power: 1, + price: 30, + locked: 1, + }); + Game.last.baseDesc = + getStrCookieProductionMultiplierPlus(1) + + "
" + + loc("Dropped by %1 plants.", loc("Baker's wheat").toLowerCase()) + + "The only reason you'd consider these to be cookies is because you feel slightly sorry for them."; + + var gardenDrops = [ + "Elderwort biscuits", + "Bakeberry cookies", + "Duketater cookies", + "Green yeast digestives", + "Fern tea", + "Ichor syrup", + "Wheat slims", + ]; + for (var i in gardenDrops) { //scale by CpS + var it = Game.Upgrades[gardenDrops[i]]; + it.priceFunc = (function (cost) { + return function () { + return cost * Game.cookiesPs * 60; + }; + })(it.basePrice); + it.baseDesc = it.baseDesc.replace( + "", + "
" + loc("Cost scales with CpS.") + "" + ); + it.desc = BeautifyInText(it.baseDesc); + it.lasting = true; + } + + order = 10300; + Game.NewUpgradeCookie({ + name: "Synthetic chocolate green honey butter biscuit", + desc: "Rewarded for owning 350 of everything.
The recipe for this butter biscuit was once the sole heritage of an ancient mountain monastery. Its flavor is so refined that only a slab of lab-made chocolate specifically engineered to be completely tasteless could complement it.
Also it's got your face on it.", + icon: [24, 26], + power: 10, + price: 999999999999999999999999999999999999 * butterBiscuitMult, + locked: 1, + }); + Game.NewUpgradeCookie({ + name: "Royal raspberry chocolate butter biscuit", + desc: "Rewarded for owning 400 of everything.
Once reserved for the megalomaniac elite, this unique strain of fruity chocolate has a flavor and texture unlike any other. Whether its exorbitant worth is improved or lessened by the presence of your likeness on it still remains to be seen.", + icon: [25, 26], + power: 10, + price: 999999999999999999999999999999999999999 * butterBiscuitMult, + locked: 1, + }); + Game.NewUpgradeCookie({ + name: "Ultra-concentrated high-energy chocolate butter biscuit", + desc: "Rewarded for owning 450 of everything.
Infused with the power of several hydrogen bombs through a process that left most nuclear engineers and shareholders perplexed. Currently at the center of some rather heated United Nations meetings. Going in more detail about this chocolate would violate several state secrets, but we'll just add that someone's bust seems to be pictured on it. Perhaps yours?", + icon: [26, 26], + power: 10, + price: 999999999999999999999999999999999999999999 * butterBiscuitMult, + locked: 1, + }); + + order = 200; + Game.TieredUpgrade( + "Timeproof hair dyes", + "Why do they always have those strange wispy pink dos? What do they know about candy floss that we don't?", + "Grandma", + 10 + ); + order = 300; + Game.TieredUpgrade( + "Barnstars", + "Ah, yes. These help quite a bit. Somehow.", + "Farm", + 10 + ); + order = 400; + Game.TieredUpgrade( + "Mine canaries", + "These aren't used for anything freaky! The miners just enjoy having a pet or two down there.", + "Mine", + 10 + ); + order = 500; + Game.TieredUpgrade( + "Brownie point system", + "Oh, these are lovely! You can now reward your factory employees for good behavior, such as working overtime or snitching on coworkers. 58 brownie points gets you a little picture of a brownie, and 178 of those pictures gets you an actual brownie piece for you to do with as you please! Infantilizing? Maybe. Oodles of fun? You betcha!", + "Factory", + 10 + ); + order = 525; + Game.TieredUpgrade( + "Grand supercycles", + "We let the public think these are complicated financial terms when really we're just rewarding the bankers with snazzy bicycles for a job well done. It's only natural after you built those fancy gold swimming pools for them, where they can take a dip and catch Kondratiev waves.", + "Bank", + 10 + ); + order = 550; + Game.TieredUpgrade( + "Psalm-reading", + "A theologically dubious and possibly blasphemous blend of fortune-telling and scripture studies.", + "Temple", + 10 + ); + order = 575; + Game.TieredUpgrade( + "Immobile spellcasting", + "Wizards who master this skill can now cast spells without having to hop and skip and gesticulate embarrassingly, which is much sneakier and honestly quite a relief.", + "Wizard tower", + 10 + ); + order = 600; + Game.TieredUpgrade( + "Restaurants at the end of the universe", + "Since the universe is spatially infinite, and therefore can be construed to have infinite ends, you've opened an infinite chain of restaurants where your space truckers can rest and partake in some home-brand cookie-based meals.", + "Shipment", + 10 + ); + order = 700; + Game.TieredUpgrade( + "On second thought", + "Disregard that last upgrade, alchemy is where it's at! Your eggheads just found a way to transmute children's nightmares into rare metals!", + "Alchemy lab", + 10 + ); + order = 800; + Game.TieredUpgrade( + "Dimensional garbage gulper", + "So we've been looking for a place to dispose of all the refuse that's been accumulating since we started baking - burnt cookies, failed experiments, unruly workers - and well, we figured rather than sell it to poor countries like we've been doing, we could just dump it in some alternate trash dimension where it's not gonna bother anybody! Probably!", + "Portal", + 10 + ); + order = 900; + Game.TieredUpgrade( + "Additional clock hands", + "It seemed like a silly idea at first, but it turns out these have the strange ability to twist time in interesting new ways.", + "Time machine", + 10 + ); + order = 1000; + Game.TieredUpgrade( + "Baking Nobel prize", + "What better way to sponsor scientific growth than to motivate those smarmy nerds with a meaningless award! What's more, each prize comes with a fine print lifelong exclusive contract to come work for you (or else)!", + "Antimatter condenser", + 10 + ); + order = 1100; + Game.TieredUpgrade( + "Reverse theory of light", + "A whole new world of physics opens up when you decide that antiphotons are real and posit that light is merely a void in shadow.", + "Prism", + 10 + ); + order = 1200; + Game.TieredUpgrade( + "Revised probabilistics", + "Either something happens or it doesn't. That's a 50% chance! This suddenly makes a lot of unlikely things very possible.", + "Chancemaker", + 10 + ); + + order = 20000; + new Game.Upgrade( + "Kitten analysts", + strKittenDesc + + "based on purrent return-on-investment meowdels we should be able to affurd to pay our empawyees somewhere around next century, sir", + 900000000000000000000000000000000000000000, + Game.GetIcon("Kitten", 12) + ); + Game.last.kitten = 1; + Game.MakeTiered(Game.last, 12, 18); + + new Game.Upgrade( + "Eye of the wrinkler", + loc("Mouse over a wrinkler to see how many cookies are in its stomach.") + + "Just a wrinkler and its will to survive.
Hangin' tough, stayin' hungry.
", + 99999999, + [27, 26] + ); + Game.last.pool = "prestige"; + Game.last.parents = ["Wrinkly cookies"]; + + new Game.Upgrade( + "Inspired checklist", + loc( + "Unlocks the Buy all feature, which lets you instantly purchase every upgrade in your store (starting from the cheapest one).
Also unlocks the Vault, a store section where you can place upgrades you do not wish to auto-buy." + ) + + 'Snazzy grandma accessories? Check. Transdimensional abominations? Check. A bunch of eggs for some reason? Check. Machine that goes "ping"? Check and check.', + 900000, + [28, 26] + ); + Game.last.pool = "prestige"; + Game.last.parents = ["Persistent memory", "Permanent upgrade slot II"]; + + order = 10300; + Game.NewUpgradeCookie({ + name: "Pure pitch-black chocolate butter biscuit", + desc: "Rewarded for owning 500 of everything.
This chocolate is so pure and so flawless that it has no color of its own, instead taking on the appearance of whatever is around it. You're a bit surprised to notice that this one isn't stamped with your effigy, as its surface is perfectly smooth (to the picometer) - until you realize it's quite literally reflecting your own face like a mirror.", + icon: [24, 27], + power: 10, + price: 999999999999999999999999999999999999999999999 * butterBiscuitMult, + locked: 1, + }); + + order = 10020; + Game.NewUpgradeCookie({ + name: "Chocolate oatmeal cookies", + desc: "These bad boys compensate for lack of a cohesive form and a lumpy, unsightly appearance by being just simply delicious. Something we should all aspire to.", + icon: [23, 28], + power: 4, + price: 99999999999999999999999999999999999 * 5, + }); + Game.NewUpgradeCookie({ + name: "Molasses cookies", + desc: "Sticky, crackly, and dusted in fine sugar.
Some lunatics have been known to eat these with potatoes.", + icon: [24, 28], + power: 4, + price: 999999999999999999999999999999999999, + }); + Game.NewUpgradeCookie({ + name: "Biscotti", + desc: "Almonds and pistachios make these very robust cookies slightly more interesting to eat than to bludgeon people with.", + icon: [22, 28], + power: 4, + price: 999999999999999999999999999999999999 * 5, + }); + Game.NewUpgradeCookie({ + name: "Waffle cookies", + desc: "Whether these are cookies with shockingly waffle-like features or simply regular cookie-sized waffles is a debate we're not getting into here.", + icon: [21, 28], + power: 4, + price: 9999999999999999999999999999999999999, + }); + + order = 10000; + //early cookies that unlock at the same time as coconut cookies; meant to boost early game a little bit + Game.NewUpgradeCookie({ + name: "Almond cookies", + desc: "Sometimes you feel like one of these. Sometimes you don't.", + icon: [21, 27], + power: 2, + price: 99999999, + }); + Game.NewUpgradeCookie({ + name: "Hazelnut cookies", + desc: "Tastes like a morning stroll through a fragrant forest, minus the clouds of gnats.", + icon: [22, 27], + power: 2, + price: 99999999, + }); + Game.NewUpgradeCookie({ + name: "Walnut cookies", + desc: "Some experts have pointed to the walnut's eerie resemblance to the human brain as a sign of its sentience - a theory most walnuts vehemently object to.", + icon: [23, 27], + power: 2, + price: 99999999, + }); + + new Game.Upgrade( + "Label printer", + loc( + "Mouse over an upgrade to see its tier.
Note: only some upgrades have tiers. Tiers are purely cosmetic and have no effect on gameplay." + ) + + "Also comes in real handy when you want to tell catsup apart from ketchup.", + 5000000, + [28, 29] + ); + Game.last.pool = "prestige"; + Game.last.parents = ["Genius accounting"]; + + order = 200; + Game.TieredUpgrade( + "Good manners", + 'Apparently these ladies are much more amiable if you take the time to learn their strange, ancient customs, which seem to involve saying "please" and "thank you" and staring at the sun with bulging eyes while muttering eldritch curses under your breath.', + "Grandma", + 11 + ); + order = 300; + Game.TieredUpgrade( + "Lindworms", + "You have to import these from far up north, but they really help aerate the soil!", + "Farm", + 11 + ); + order = 400; + Game.TieredUpgrade( + "Bore again", + "After extracting so much sediment for so long, you've formed some veritable mountains of your own from the accumulated piles of rock and dirt. Time to dig through those and see if you find anything fun!", + "Mine", + 11 + ); + order = 500; + Game.TieredUpgrade( + '"Volunteer" interns', + "If you're bad at something, always do it for free.", + "Factory", + 11 + ); + order = 525; + Game.TieredUpgrade( + "Rules of acquisition", + "Rule 387 : a cookie baked is a cookie kept.", + "Bank", + 11 + ); + order = 550; + Game.TieredUpgrade( + "War of the gods", + "An interesting game; the only winning move is not to pray.", + "Temple", + 11 + ); + order = 575; + Game.TieredUpgrade( + "Electricity", + "Ancient magicks and forbidden hexes shroud this arcane knowledge, whose unfathomable power can mysteriously turn darkness into light and shock an elephant to death.", + "Wizard tower", + 11 + ); + order = 600; + Game.TieredUpgrade( + "Universal alphabet", + 'You\'ve managed to chart a language that can be understood by any sentient species in the galaxy; its exciting vocabulary contains over 56 trillion words that sound and look like sparkly burps, forming intricate sentences that usually translate to something like "give us your cookies, or else".', + "Shipment", + 11 + ); + order = 700; + Game.TieredUpgrade( + "Public betterment", + "Why do we keep trying to change useless matter into cookies, or cookies into even better cookies? Clearly, the way of the future is to change the people who eat the cookies into people with a greater understanding, appreciation and respect for the cookies they're eating. Into the vat you go!", + "Alchemy lab", + 11 + ); + order = 800; + Game.TieredUpgrade( + "Embedded microportals", + "We've found out that if we bake the portals into the cookies themselves, we can transport people's taste buds straight into the taste dimension! Good thing your army of lawyers got rid of the FDA a while ago!", + "Portal", + 11 + ); + order = 900; + Game.TieredUpgrade( + "Nostalgia", + "Your time machine technicians insist that this is some advanced new time travel tech, and not just an existing emotion universal to mankind. Either way, you have to admit that selling people the same old cookies just because it reminds them of the good old times is an interesting prospect.", + "Time machine", + 11 + ); + order = 1000; + Game.TieredUpgrade( + "The definite molecule", + "Your scientists have found a way to pack a cookie into one single continuous molecule, opening exciting new prospects in both storage and flavor despite the fact that these take up to a whole year to digest.", + "Antimatter condenser", + 11 + ); + order = 1100; + Game.TieredUpgrade( + "Light capture measures", + "As the universe gets ever so slightly dimmer due to you converting more and more of its light into cookies, you've taken to finding new and unexplored sources of light for your prisms; for instance, the warm glow emitted by a pregnant woman, or the twinkle in the eye of a hopeful child.", + "Prism", + 11 + ); + order = 1200; + Game.TieredUpgrade( + "0-sided dice", + "The advent of the 0-sided dice has had unexpected and tumultuous effects on the gambling community, and saw experts around the world calling you both a genius and an imbecile.", + "Chancemaker", + 11 + ); + + new Game.Upgrade( + "Heralds", + loc( + "You now benefit from the boost provided by heralds.
Each herald gives you +1% CpS.
Look on the purple flag at the top to see how many heralds are active at any given time." + ) + + (App + ? "It's getting steamy." + : "Be excellent to each other.
And Patreon, dudes!
"), + 100, + [21, 29] + ); + Game.last.pool = "prestige"; + + order = 255; + Game.GrandmaSynergy( + "Metagrandmas", + "A fractal grandma to make more grandmas to make more cookies.", + "Fractal engine" + ); + + order = 1300; + Game.TieredUpgrade( + "Metabakeries", + "They practically bake themselves!", + "Fractal engine", + 1 + ); + Game.TieredUpgrade( + "Mandelbrown sugar", + "A substance that displays useful properties such as fractal sweetness and instant contact lethality.", + "Fractal engine", + 2 + ); + Game.TieredUpgrade( + "Fractoids", + "Here's a frun fract : all in all, these were a terrible idea.", + "Fractal engine", + 3 + ); + Game.TieredUpgrade( + "Nested universe theory", + "Asserts that each subatomic particle is host to a whole new universe, and therefore, another limitless quantity of cookies.
This somehow stacks with the theory of nanocosmics, because physics.
", + "Fractal engine", + 4 + ); + Game.TieredUpgrade( + "Menger sponge cake", + "Frighteningly absorbent thanks to its virtually infinite surface area. Keep it isolated in a dry chamber, never handle it with an open wound, and do not ever let it touch a body of water.", + "Fractal engine", + 5 + ); + Game.TieredUpgrade( + "One particularly good-humored cow", + "This unassuming bovine was excruciatingly expensive and it may seem at first like you were ripped off. On closer inspection however, you notice that its earrings (it's wearing earrings) are actually fully functional copies of itself, each of which also wearing their own cow earrings, and so on, infinitely. It appears your dairy concerns will be taken care of for a while, although you'll have to put up with the cow's annoying snickering.", + "Fractal engine", + 6 + ); + Game.TieredUpgrade( + "Chocolate ouroboros", + "Forever eating its own tail and digesting itself, in a metabolically dubious tale of delicious tragedy.", + "Fractal engine", + 7 + ); + Game.TieredUpgrade( + "Nested", + "Clever self-reference or shameful cross-promotion? This upgrade apparently has the gall to advertise a link to orteil.dashnet.org/nested, in a tooltip you can't even click.", + "Fractal engine", + 8 + ); + Game.TieredUpgrade( + "Space-filling fibers", + "This special ingredient has the incredible ability to fill the local space perfectly, effectively eradicating hunger in those who consume it!
Knowing that no hunger means no need for cookies, your marketers urge you to repurpose this product into next-level packing peanuts.
", + "Fractal engine", + 9 + ); + Game.TieredUpgrade("Endless book of prose", "", "Fractal engine", 10); + if (EN) { + Game.last.descFunc = function () { + var str = + '"There once was a baker named ' + + Game.bakeryName + + ". One day, there was a knock at the door; " + + Game.bakeryName + + " opened it and was suddenly face-to-face with a strange and menacing old grandma. The grandma opened her mouth and, in a strange little voice, started reciting this strange little tale : "; + var n = 35; + var i = Math.floor(Game.T * 0.1); + return ( + this.desc + + '' + + (str.substr(i % str.length, n) + + (i % str.length > str.length - n + ? str.substr(0, (i % str.length) - (str.length - n)) + : "")) + + "" + ); + }; + } else Game.last.desc = "-"; + Game.TieredUpgrade( + "The set of all sets", + "The answer, of course, is a definite maybe.", + "Fractal engine", + 11 + ); + + order = 5000; + Game.SynergyUpgrade( + "Recursive mirrors", + "Do you have any idea what happens when you point two of these at each other? Apparently, the universe doesn't either.", + "Fractal engine", + "Prism", + "synergy1" + ); + //Game.SynergyUpgrade('Compounded odds','When probabilities start cascading, "never in a billion lifetimes" starts looking terribly like "probably before Monday comes around".','Fractal engine','Chancemaker','synergy1'); + Game.SynergyUpgrade( + "Mice clicking mice", + "", + "Fractal engine", + "Cursor", + "synergy2" + ); + if (EN) { + Game.last.descFunc = function () { + Math.seedrandom(Game.seed + "-blasphemouse"); + if (Math.random() < 0.3) { + Math.seedrandom(); + return this.desc + "Absolutely blasphemouse!"; + } else { + Math.seedrandom(); + return this.desc + "Absolutely blasphemous!"; + } + }; + } else Game.last.desc = "-"; + + order = 10020; + Game.NewUpgradeCookie({ + name: "Custard creams", + desc: "British lore pits these in a merciless war against bourbon biscuits.
The filling evokes vanilla without quite approaching it.
They're tastier on the inside!", + icon: [23, 29], + power: 4, + price: 9999999999999999999999999999999999999 * 5, + }); + Game.NewUpgradeCookie({ + name: "Bourbon biscuits", + desc: "Two chocolate biscuits joined together with even more chocolate.
The sworn rivals of custard creams, as legend has it.", + icon: [24, 29], + power: 4, + price: 99999999999999999999999999999999999999, + }); + + new Game.Upgrade( + "Keepsakes", + loc( + "Seasonal random drops have a 1/5 chance to carry over through ascensions." + ) + "Cherish the memories.", + 1111111111, + [22, 29] + ); + Game.last.pool = "prestige"; + Game.last.parents = [ + "Starsnow", + "Starlove", + "Starterror", + "Startrade", + "Starspawn", + ]; + + order = 10020; + Game.NewUpgradeCookie({ + name: "Mini-cookies", + desc: "Have you ever noticed how the smaller something is, the easier it is to binge on it?", + icon: [29, 30], + power: 5, + price: 99999999999999999999999999999999999999 * 5, + }); + + new Game.Upgrade( + "Sugar crystal cookies", + (EN + ? "Cookie production multiplier +5% permanently, and +1% for every building type level 10 or higher." + : loc("Cookie production multiplier +%1% permanently.", 5) + + "
" + + loc( + "Cookie production multiplier +%1% for every building type level %2 or higher.", + [1, 10] + )) + + "Infused with cosmic sweetness. It gives off a faint shimmery sound when you hold it up to your ear.", + 1000000000, + [21, 30] + ); + Game.last.pool = "prestige"; + Game.last.parents = ["Sugar baking"]; + Game.last.power = function () { + var n = 5; + for (var i in Game.Objects) { + if (Game.Objects[i].level >= 10) n++; + } + return n; + }; + Game.last.pseudoCookie = true; + Game.last.descFunc = function () { + var n = 5; + for (var i in Game.Objects) { + if (Game.Objects[i].level >= 10) n++; + } + return ( + '
' + + loc("Current:") + + " +" + + Beautify(n) + + '%
' + + this.ddesc + ); + }; + new Game.Upgrade( + "Box of maybe cookies", + loc("Contains an assortment of...something.") + + "These may or may not be considered cookies.", + 333000000000, + [25, 29] + ); + Game.last.pool = "prestige"; + Game.last.parents = ["Sugar crystal cookies"]; + new Game.Upgrade( + "Box of not cookies", + loc("Contains an assortment of...something.") + + "These are strictly, definitely not cookies.", + 333000000000, + [26, 29] + ); + Game.last.pool = "prestige"; + Game.last.parents = ["Sugar crystal cookies"]; + new Game.Upgrade( + "Box of pastries", + loc("Contains an assortment of delicious pastries.") + + "These are a damn slippery slope is what they are!", + 333000000000, + [27, 29] + ); + Game.last.pool = "prestige"; + Game.last.parents = ["Sugar crystal cookies"]; + + order = 10040; + Game.NewUpgradeCookie({ + name: "Profiteroles", + desc: "Also known as cream puffs, these pastries are light, fluffy, filled with whipped cream and fun to throw at people when snowballs are running scarce.", + icon: [29, 29], + require: "Box of pastries", + power: 4, + price: Math.pow(10, 31), + }); + Game.NewUpgradeCookie({ + name: "Jelly donut", + desc: "Guaranteed to contain at least 0.3% jelly filling, or your money back.
You can still see the jelly stab wound!", + icon: [27, 28], + require: "Box of pastries", + power: 4, + price: Math.pow(10, 33), + }); + Game.NewUpgradeCookie({ + name: "Glazed donut", + desc: "Absolutely gooey with sugar. The hole is the tastiest part!", + icon: [28, 28], + require: "Box of pastries", + power: 4, + price: Math.pow(10, 35), + }); + Game.NewUpgradeCookie({ + name: "Chocolate cake", + desc: "The cake is a Portal reference!", + icon: [25, 27], + require: "Box of pastries", + power: 4, + price: Math.pow(10, 37), + }); + Game.NewUpgradeCookie({ + name: "Strawberry cake", + desc: "It's not easy to come up with flavor text for something as generic as this, but some would say it's a piece of cake.", + icon: [26, 27], + require: "Box of pastries", + power: 4, + price: Math.pow(10, 39), + }); + Game.NewUpgradeCookie({ + name: "Apple pie", + desc: "It is said that some grandmas go rogue and bake these instead.", + icon: [25, 28], + require: "Box of pastries", + power: 4, + price: Math.pow(10, 41), + }); + Game.NewUpgradeCookie({ + name: "Lemon meringue pie", + desc: "Meringue is a finicky substance made of sugar and egg whites that requires specific atmospheric conditions to be baked at all. The lemon, as far as we can tell, isn't nearly as picky.", + icon: [26, 28], + require: "Box of pastries", + power: 4, + price: Math.pow(10, 43), + }); + Game.NewUpgradeCookie({ + name: "Butter croissant", + desc: "Look around.
A rude man in a striped shirt bikes past you. He smells of cigarettes and café-au-lait. Somewhere, a mime uses his moustache to make fun of the British. 300 pigeons fly overhead.
Relax. You're experiencing croissant.", + icon: [29, 28], + require: "Box of pastries", + power: 4, + price: Math.pow(10, 45), + }); + + order = 10050; + Game.NewUpgradeCookie({ + name: "Cookie dough", + desc: "Bursting with infinite potential, but can also be eaten as is. Arguably worth the salmonella.", + icon: [25, 30], + require: "Box of maybe cookies", + power: 4, + price: Math.pow(10, 35), + }); + Game.NewUpgradeCookie({ + name: "Burnt cookie", + desc: "This cookie flew too close to the sun and is now a shadow of its former self. If only you remembered to set a timer, you wouldn't have this tragedy on your hands...", + icon: [23, 30], + require: "Box of maybe cookies", + power: 4, + price: Math.pow(10, 37), + }); + Game.NewUpgradeCookie({ + name: "A chocolate chip cookie but with the chips picked off for some reason", + desc: "This has to be the saddest thing you've ever seen.", + icon: [24, 30], + require: "Box of maybe cookies", + power: 3, + price: Math.pow(10, 39), + }); + Game.NewUpgradeCookie({ + name: "Flavor text cookie", + desc: "What you're currently reading is what gives this cookie its inimitable flavor.", + icon: [22, 30], + require: "Box of maybe cookies", + power: 4, + price: Math.pow(10, 41), + }); + Game.NewUpgradeCookie({ + name: "High-definition cookie", + desc: "Uncomfortably detailed, like those weird stories your aunt keeps telling at parties.", + icon: [28, 10], + require: "Box of maybe cookies", + power: 5, + price: Math.pow(10, 43), + }); + + order = 10060; + Game.NewUpgradeCookie({ + name: "Toast", + desc: "A crisp slice of bread, begging for some butter and jam.
Why do people keep proposing these at parties?", + icon: [27, 10], + require: "Box of not cookies", + power: 4, + price: Math.pow(10, 34), + }); + Game.NewUpgradeCookie({ + name: "Peanut butter & jelly", + desc: "It's time.", + icon: [29, 9], + require: "Box of not cookies", + power: 4, + price: Math.pow(10, 36), + }); + Game.NewUpgradeCookie({ + name: "Wookies", + desc: "These aren't the cookies you're looking for.", + icon: [26, 30], + require: "Box of not cookies", + power: 4, + price: Math.pow(10, 38), + }); + Game.NewUpgradeCookie({ + name: "Cheeseburger", + desc: "Absolutely no relation to cookies whatsoever - Orteil just wanted an excuse to draw a cheeseburger.", + icon: [28, 30], + require: "Box of not cookies", + power: 4, + price: Math.pow(10, 40), + }); + Game.NewUpgradeCookie({ + name: "One lone chocolate chip", + desc: "The start of something beautiful.", + icon: [27, 30], + require: "Box of not cookies", + power: 1, + price: Math.pow(10, 42), + }); + + new Game.Upgrade( + "Genius accounting", + loc( + "Unlocks extra price information.
Each displayed cost now specifies how long it'll take you to afford it, and how much of your bank it represents." + ) + "There's no accounting for taste, and yet here we are.", + 2000000, + [11, 10] + ); + Game.last.pool = "prestige"; + Game.last.parents = ["Inspired checklist"]; + + new Game.Upgrade( + "Shimmering veil", + loc( + "Unlocks the shimmering veil, a switch that passively boosts your CpS by %1%.
You start with the veil turned on; however, it is very fragile, and clicking the big cookie or any golden cookie or reindeer will turn it off, requiring %2 of CpS to turn back on.", + [50, Game.sayTime(24 * 60 * 60 * Game.fps, 2)] + ) + "Hands off!", + 999999999, + [9, 10] + ); + Game.last.pool = "prestige"; + Game.last.parents = ["Distilled essence of redoubled luck"]; + + order = 40005; + var func = function () { + var boost = Game.getVeilBoost(); + var resist = Game.getVeilDefense(); + return ( + (this.name == "Shimmering veil [on]" + ? '
' + + loc("Active.") + + '
' + : "") + + loc( + "Boosts your cookie production by %1% when active.
The veil is very fragile and will break if you click the big cookie or any golden cookies or reindeer.

Once broken, turning the veil back on costs %2 of unbuffed CpS.", + [Beautify(boost * 100), Game.sayTime(24 * 60 * 60 * Game.fps, 2)] + ) + + (resist > 0 + ? "

" + + loc("Has a %1% chance to not break.", Beautify(resist * 100)) + : "") + ); + }; + new Game.Upgrade("Shimmering veil [off]", "", 1000000, [9, 10]); + Game.last.pool = "toggle"; + Game.last.toggleInto = "Shimmering veil [on]"; + Game.last.priceFunc = function () { + return Game.unbuffedCps * 60 * 60 * 24; + }; + Game.last.descFunc = func; + new Game.Upgrade("Shimmering veil [on]", "", 0, [9, 10]); + Game.last.pool = "toggle"; + Game.last.toggleInto = "Shimmering veil [off]"; + Game.last.descFunc = func; + + Game.loseShimmeringVeil = function (context) { + if (!Game.Has("Shimmering veil")) return false; + if ( + !Game.Has("Shimmering veil [off]") && + Game.Has("Shimmering veil [on]") + ) + return false; + if (Game.Has("Reinforced membrane")) { + if (context == "shimmer") + Math.seedrandom( + Game.seed + "/" + (Game.goldenClicks + Game.reindeerClicked) + ); + else if (context == "click") + Math.seedrandom(Game.seed + "/" + Game.cookieClicks); + if (Math.random() < Game.getVeilDefense()) { + Game.Notify( + loc("The reinforced membrane protects the shimmering veil."), + "", + [7, 10] + ); + Game.Win("Thick-skinned"); + Math.seedrandom(); + return false; + } + Math.seedrandom(); + } + var me = Game.Upgrades["Shimmering veil [on]"]; + me.bought = 1; + //Game.Upgrades[me.toggleInto].bought=false; + Game.Lock(me.toggleInto); + Game.Unlock(me.toggleInto); + Game.Notify(loc("The shimmering veil disappears..."), "", [9, 10]); + Game.upgradesToRebuild = 1; + Game.recalculateGains = 1; + PlaySound("snd/spellFail.mp3", 0.75); + }; + + var getCookiePrice = function (level) { + return ( + 999999999999999999999999999999999999999 * Math.pow(10, (level - 1) / 2) + ); + }; + + order = 10020; + Game.NewUpgradeCookie({ + name: "Whoopie pies", + desc: "Two chocolate halves joined together by a cream filling. It's got no eyebrows, but you never noticed until now.", + icon: [21, 31], + power: 5, + price: getCookiePrice(1), + }); + Game.NewUpgradeCookie({ + name: "Caramel wafer biscuits", + desc: "Coated in delicious chocolate. As many layers as you'll get in a biscuit without involving onions.", + icon: [22, 31], + power: 5, + price: getCookiePrice(2), + }); + Game.NewUpgradeCookie({ + name: "Chocolate chip mocha cookies", + desc: "Mocha started out as an excuse to smuggle chocolate into coffee. And now, in a poignant display of diplomacy and cultural exchange, it's bringing coffee to chocolate cookies.", + icon: [23, 31], + power: 5, + price: getCookiePrice(3), + }); + Game.NewUpgradeCookie({ + name: "Earl Grey cookies", + desc: "Captain Picard's favorite.", + icon: [24, 31], + power: 5, + price: getCookiePrice(4), + }); + Game.NewUpgradeCookie({ + name: "Corn syrup cookies", + desc: "The corn syrup makes it extra chewy. Not the type of stuff you'd think to put in a cookie, but bakers make do.", + icon: [25, 31], + power: 5, + price: getCookiePrice(5), + }); + Game.NewUpgradeCookie({ + name: "Icebox cookies", + desc: "Can be prepared in a variety of shapes with a variety of ingredients. Made by freezing dough before baking it, mirroring a time-proven medieval torture practice. Gotta keep them guessing.", + icon: [26, 31], + power: 5, + price: getCookiePrice(6), + }); + Game.NewUpgradeCookie({ + name: "Graham crackers", + desc: "Inspired in their design by the wish to live a life of austere temperance, free from pleasure or cheer; it's no wonder these are so tasty.", + icon: [27, 31], + power: 5, + price: getCookiePrice(7), + }); + Game.NewUpgradeCookie({ + name: "Hardtack", + desc: "Extremely hard and, if we're being honest, extremely tack.
If you're considering eating this as a fun snack, you probably have other things to worry about than this game, like getting scurvy or your crew fomenting mutiny.", + icon: [28, 31], + power: 5, + price: getCookiePrice(8), + }); + Game.NewUpgradeCookie({ + name: "Cornflake cookies", + desc: "They're grrrrrroovy! Careful not to let it sit in your milk too long, lest you accidentally end up with a bowl of cereal and get confused.", + icon: [29, 31], + power: 5, + price: getCookiePrice(9), + }); + Game.NewUpgradeCookie({ + name: "Tofu cookies", + desc: "There's really two ways to go with tofu cooking; either it asserts itself in plain sight or it camouflages itself in the other ingredients. This happens to be the latter, and as such, you can't really tell the difference between this and a regular cookie, save for that one pixel on the left.", + icon: [30, 31], + power: 5, + price: getCookiePrice(10), + }); + Game.NewUpgradeCookie({ + name: "Gluten-free cookies", + desc: "Made with browned butter and milk to closely match the archetypal chocolate chip cookie.
For celiacs, a chance to indulge in a delicious risk-free pastry. For others, a strangely threatening confection whose empty eyes will never know heaven nor hell.", + icon: [30, 30], + power: 5, + price: getCookiePrice(10), + }); + Game.NewUpgradeCookie({ + name: "Russian bread cookies", + desc: "Also known as alphabet cookies; while most bakers follow the recipe to the letter, it is said that some substitute the flour for spelt. But don't take my word for it.", + icon: [30, 29], + power: 5, + price: getCookiePrice(11), + }); + Game.NewUpgradeCookie({ + name: "Lebkuchen", + desc: "Diverse cookies from Germany, fragrant with honey and spices, often baked around Christmas.
Once worn by warriors of old for protection in battle.
+5 STR, +20% magic resistance.", + icon: [30, 28], + power: 5, + price: getCookiePrice(12), + }); + Game.NewUpgradeCookie({ + name: "Aachener Printen", + desc: "The honey once used to sweeten these gingerbread-like treats has since been swapped out for beet sugar, providing another sad example of regressive evolution.", + icon: [30, 27], + power: 5, + price: getCookiePrice(13), + }); + Game.NewUpgradeCookie({ + name: "Canistrelli", + desc: "A dry biscuit flavored with anise and wine, tough like the people of Corsica where it comes from.", + icon: [30, 26], + power: 5, + price: getCookiePrice(14), + }); + Game.NewUpgradeCookie({ + name: "Nice biscuits", + desc: "Made with coconut and perfect with tea. Traces its origins to a French city so nice they named it that.", + icon: [30, 25], + power: 5, + price: getCookiePrice(15), + }); + Game.NewUpgradeCookie({ + name: "French pure butter cookies", + desc: "You can't tell what's stronger coming off these - the smell of butter or condescension.", + icon: [31, 25], + power: 5, + price: getCookiePrice(16), + }); + Game.NewUpgradeCookie({ + name: "Petit beurre", + desc: 'An unassuming biscuit whose name simply means "little butter". Famed and feared for its four ears and forty-eight teeth.
When it hears ya, it\'ll get ya...', + icon: [31, 26], + power: 5, + price: getCookiePrice(16), + }); + Game.NewUpgradeCookie({ + name: "Nanaimo bars", + desc: "A delicious no-bake pastry hailing from Canada. Probably beats eating straight-up snow with maple syrup poured on it, but what do I know.", + icon: [31, 27], + power: 5, + price: getCookiePrice(17), + }); + Game.NewUpgradeCookie({ + name: "Berger cookies", + desc: "Messily slathered with chocolate fudge, but one of the most popular bergers of Baltimore, along with the triple fried egg berger and the blue crab cheeseberger.", + icon: [31, 28], + power: 5, + price: getCookiePrice(18), + }); + Game.NewUpgradeCookie({ + name: "Chinsuko", + desc: "A little piece of Okinawa in cookie form. Part of a Japanese custom of selling sweets as souvenirs. But hey, pressed pennies are cool too.", + icon: [31, 29], + power: 5, + price: getCookiePrice(19), + }); + Game.NewUpgradeCookie({ + name: "Panda koala biscuits", + desc: "Assorted jungle animals with equally assorted fillings.
Comes in chocolate, strawberry, vanilla and green tea.
Eat them all before they go extinct!", + icon: [31, 13], + power: 5, + price: getCookiePrice(19), + }); + Game.NewUpgradeCookie({ + name: "Putri salju", + desc: "A beloved Indonesian pastry; its name means \"snow princess\", for the powdered sugar it's coated with. Had we added these to Cookie Clicker some years ago, this is where we'd make a reference to that one Disney movie, but it's probably time to let it go.", + icon: [31, 30], + power: 5, + price: getCookiePrice(20), + }); + Game.NewUpgradeCookie({ + name: "Milk cookies", + desc: "Best eaten with a tall glass of chocolate.", + icon: [31, 31], + power: 5, + price: getCookiePrice(21), + }); + + order = 9999; + Game.NewUpgradeCookie({ + name: "Cookie crumbs", + desc: "There used to be a cookie here. Now there isn't.
Good heavens, what did you DO?!", + icon: [30, 13], + power: 1, + require: "Legacy", + price: 100, + }); + Game.NewUpgradeCookie({ + name: "Chocolate chip cookie", + desc: "This is the cookie you've been clicking this whole time. It looks a bit dented and nibbled on, but it's otherwise good as new.", + icon: [10, 0], + power: 10, + require: "Legacy", + price: 1000000000000, + }); + + new Game.Upgrade( + "Cosmic beginner's luck", + loc( + "Prior to purchasing the %1 upgrade in a run, random drops are %2 times more common.", + [getUpgradeName("Heavenly chip secret"), 5] + ) + + "Oh! A penny!
Oh! A priceless heirloom!
Oh! Another penny!
", + 999999999 * 15, + [8, 10] + ); + Game.last.pool = "prestige"; + Game.last.parents = ["Shimmering veil"]; + Game.getVeilDefense = function () { + var n = 0; + if (Game.Has("Reinforced membrane")) n += 0.1; + if (Game.Has("Delicate touch")) n += 0.1; + if (Game.Has("Steadfast murmur")) n += 0.1; + if (Game.Has("Glittering edge")) n += 0.1; + return n; + }; + Game.getVeilBoost = function () { + var n = 0.5; + if (Game.Has("Reinforced membrane")) n += 0.1; + if (Game.Has("Delicate touch")) n += 0.05; + if (Game.Has("Steadfast murmur")) n += 0.05; + if (Game.Has("Glittering edge")) n += 0.05; + return n; + }; + new Game.Upgrade( + "Reinforced membrane", + loc( + "The shimmering veil is more resistant, and has a %1% chance not to break. It also gives +%2% more CpS.", + [10, 10] + ) + "A consistency between jellyfish and cling wrap.", + 999999999 * 15, + [7, 10] + ); + Game.last.pool = "prestige"; + Game.last.parents = ["Shimmering veil"]; + + order = 255; + Game.GrandmaSynergy( + "Binary grandmas", + 'A digital grandma to transfer more cookies.
(See also : boolean grandmas, string grandmas, and not-a-number grandmas, also known as "NaNs".)', + "Javascript console" + ); + + order = 1400; + Game.TieredUpgrade( + "The JavaScript console for dummies", + 'This should get you started. The first line reads: "To open the javascript console, press-"
...the rest of the book is soaked in chocolate milk. If only there was a way to look up this sort of information...
', + "Javascript console", + 1 + ); + Game.TieredUpgrade( + "64bit arrays", + "A long-form variable type to pack your cookies much more efficiently.", + "Javascript console", + 2 + ); + Game.TieredUpgrade( + "Stack overflow", + "This is really bad! You probably forgot to close a loop somewhere and now your programs are going crazy! The rest of your engineers seem really excited about it somehow. How could a software mishap like a stack overflow possibly ever help anyone?", + "Javascript console", + 3 + ); + Game.TieredUpgrade( + "Enterprise compiler", + "This bespoke javascript compiler took your team years of development and billions in research, but it should let you execute (certain) functions (up to) 2% faster (in optimal circumstances).", + "Javascript console", + 4 + ); + Game.TieredUpgrade( + "Syntactic sugar", + "Tastier code for tastier cookies.", + "Javascript console", + 5 + ); + Game.TieredUpgrade( + "A nice cup of coffee", + "All this nerd stuff has you exhausted. You make yourself a nice cup of coffee, brewed with roasted beans from some far-away island. You may have been working a bit too hard though - the cup of coffee starts talking to you, insisting that it is NOT javascript.", + "Javascript console", + 6 + ); + Game.TieredUpgrade( + "Just-in-time baking", + "A new method of preparing cookies; they bake themselves right in front of the customers before eating, leaving your kitchens mess-free.", + "Javascript console", + 7 + ); + Game.TieredUpgrade( + "cookies++", + 'Your very own cookie-themed programming language, elegantly named after its most interesting ability - increasing the "cookies" variable by 1.', + "Javascript console", + 8 + ); + Game.TieredUpgrade( + "Software updates", + "This is grand news - someone's finally figured out the Wifi password, and your newfound internet connection seems to have triggered a whole lot of software updates! Your browsers, drivers and plugins all received a fresh coat of paint, and your javascript version has been updated to the latest ECMAScript specification. It's really too bad thousands had to die due to some deprecated function in your neurotoxin ventilation code, but I guess that's progress for you.", + "Javascript console", + 9 + ); + Game.TieredUpgrade( + "Game.Loop", + "You're not quite sure what to make of this. What does it mean? What does it do? Who would leave something like that just laying around here? Try asking again in 1/30th of a second.", + "Javascript console", + 10 + ); + Game.TieredUpgrade( + "eval()", + "It is said that this simple function holds the key to the universe, and that whosoever masters it may shape reality to their will.
Good thing you have no idea how it works. Makes for a neat plaque on your wall, though.
", + "Javascript console", + 11 + ); + + order = 5000; + Game.SynergyUpgrade( + "Script grannies", + "Armies of energy drink-fueled grandmas ready to hack into the cyberspace for renegade e-cookies.", + "Javascript console", + "Grandma", + "synergy1" + ); + Game.SynergyUpgrade( + "Tombola computing", + "", + "Javascript console", + "Chancemaker", + "synergy2" + ); + if (EN) { + Game.last.descFunc = function () { + Math.seedrandom(Game.seed + "-tombolacomputing"); + var str = + "(Your ticket reads " + + Math.floor(Math.random() * 100) + + " " + + Math.floor(Math.random() * 100) + + " " + + Math.floor(Math.random() * 100) + + " " + + Math.floor(Math.random() * 100) + + ", entitling you to " + + choose([ + Math.floor(Math.random() * 5 + 2) + " lines of javascript", + "one free use of Math.random()", + "one qubit, whatever that is", + "one half-eaten cookie", + "a brand new vacuum cleaner", + "most of one room-temperature cup of orange soda", + "one really good sandwich", + "one handful of pocket lint", + "someone's mostly clean hairpiece", + "a trip to a fancy restaurant", + "the knowledge of those numbers", + "a furtive glance at the news ticker", + "another ticket, half-price", + "all-you-can-eat moldy bread", + "one lifetime supply of oxygen", + "the color " + + choose[ + ("red", + "orange", + "yellow", + "green", + "blue", + "purple", + "black", + "white", + "gray", + "brown", + "pink", + "teal") + ], + "increased intellect for a limited time", + "an ancient runesword", + "the throne of a far-away country", + "the position of Mafia capo. Good luck", + "one free time-travel week-end", + "something beautiful", + "the deed to some oil well", + "one hamburger made out of the animal, plant, or person of your choice", + "the last surviving " + + choose[ + ("dodo bird", "thylacine", "unicorn", "dinosaur", "neanderthal") + ], + "a deep feeling of accomplishment", + "a fleeting tinge of entertainment", + "a vague sense of unease", + "deep existential dread", + "one extra week added to your lifespan", + "breathe manually", + "blink right here and now", + "one meeting with any famous person, living or dead, in your next dream", + "one very nice dream", + "a wacky sound effect", + "45 seconds of moral flexibility", + 'hundreds and thousands, also known as "sprinkles"', + "one circle, triangle, square or other simple geometric shape, of average dimensions", + "just this extra bit of randomness", + "the extra push you needed to turn your life around", + "a good fright", + "one secret superpower", + "a better luck next time", + "an irrational phobia of tombola tickets", + "one whole spider", + "an increased sense of self-worth and determination", + "inner peace", + "one double-XP week-end in the MMORPG of your choice", + "a little piece of the universe, represented by the trillions of atoms that make up this very ticket", + "food poisoning", + "the Moon! Well, conceptually", + "a new car, baby", + "a new catchphrase", + "an intrusive thought of your choice", + "- ...aw man, it just cuts off there", + "the director spot for the next big hit movie", + "really good-looking calves", + "one genuine pirate golden doubloon", + '"treasure and riches", or something', + "one boat, sunken", + "baby shoes, never worn", + "direct lineage to some King or Queen", + "innate knowledge of a dead language you'll never encounter", + "the melody of a song you don't know the words to", + "white noise", + "mild physical impairment", + "a new pair of lips", + "things, and such", + "one popular expression bearing your name", + "one typo", + "one get-out-of-jail-free card", + "the rest of your life... for now", + "one polite huff", + "a condescending stare", + "one cursed monkey paw", + "true love, probably", + "an interesting factoid about the animal, country, TV show or celebrity of your choice", + "a pop culture reference", + "minutes of fun", + 'the etymology of the word "tombola" - it\'s Italian for "a tumble"', + "nothing. You lost, sorry", + ]) + + ".)"; + Math.seedrandom(); + return ( + this.desc + + "Like quantum computing, but more fun.
" + + str + + "
" + ); + }; + } else Game.last.desc = "-"; + + order = 10020; + Game.NewUpgradeCookie({ + name: "Kruidnoten", + desc: 'A festive dutch favorite; tiny cinnamony bites sometimes coated in chocolate. The name translates roughly to "kruidnoten".', + icon: [30, 3], + power: 5, + price: getCookiePrice(22), + }); + Game.NewUpgradeCookie({ + name: "Marie biscuits", + desc: "Pleasantly round, smoothly buttery, subtly vanilla-flavored, ornately embossed, each ridge represents a person Marie killed in prison.", + icon: [30, 4], + power: 5, + price: getCookiePrice(23), + }); + Game.NewUpgradeCookie({ + name: "Meringue cookies", + desc: "Probably the most exciting thing you can make out of egg whites. Also called forgotten cookies, due to the recipe being once lost in a sealed mystical vault for 10,000 years.", + icon: [31, 4], + power: 5, + price: getCookiePrice(24), + }); + + order = 10060; + Game.NewUpgradeCookie({ + name: "Pizza", + desc: "What is a pizza if not a large, chewy cookie, frosted with a rather exuberant tomato & cheese icing? Not a cookie, that's what.", + icon: [31, 9], + require: "Box of not cookies", + power: 5, + price: Math.pow(10, 44), + }); + + order = 10050; + Game.NewUpgradeCookie({ + name: "Crackers", + desc: 'These are the non-flavored kind with no salt added. Really just a judgment-free wheat square begging to have bits of ham and spreadable cheese piled onto it, its main contribution being "crunchy".', + icon: [30, 9], + require: "Box of maybe cookies", + power: 4, + price: Math.pow(10, 45), + }); + + order = 10030; + Game.NewUpgradeCookie({ + name: "Havabreaks", + desc: "You can snap the sections neatly or just bite into the whole thing like some kind of lunatic. Some oversea countries manufacture these in hundreds of unique flavors, such as green tea, lobster bisque, and dark chocolate.", + icon: [31, 3], + require: "Box of brand biscuits", + power: 2, + price: 999999999999999999999999999 * 5, + }); + + order = 20000; + new Game.Upgrade( + "Kitten executives", + strKittenDesc + + "ready to execute whatever and whoever you'd like, sir", + 900000000000000000000000000000000000000000000, + Game.GetIcon("Kitten", 13) + ); + Game.last.kitten = 1; + Game.MakeTiered(Game.last, 13, 18); + + order = 10020; + Game.NewUpgradeCookie({ + name: "Chai tea cookies", + desc: "Not exactly Captain Picard's favorite, but I mean, these will do in a pinch.", + icon: [23, 32], + power: 5, + price: getCookiePrice(4) + 5, + }); + Game.last.order = 10020.5685; + + Game.NewUpgradeCookie({ + name: "Yogurt cookies", + desc: "Augmented by the wonders of dairy, these cookies are light and fluffy and just one more thing for the lactose-intolerant to avoid.
Truly for the cultured among us.", + icon: [24, 32], + power: 5, + price: getCookiePrice(25), + }); + Game.NewUpgradeCookie({ + name: "Thumbprint cookies", + desc: "Filled with jam and sometimes served in little paper cups. No longer admissible as biometric evidence in court. We're not having a repeat of that whole mess.", + icon: [25, 32], + power: 5, + price: getCookiePrice(26), + }); + Game.NewUpgradeCookie({ + name: "Pizzelle", + desc: "Thin, crisp waffle cookies baked in a bespoke iron following an ancient Italian recipe.
These cookies have been around for a long, long time.
These cookies have seen things.", + icon: [26, 32], + power: 5, + price: getCookiePrice(27), + }); + + order = 10030; + Game.NewUpgradeCookie({ + name: "Zilla wafers", + desc: "Popular vanilla-flavored biscuits that somehow keep ending up in banana pudding.
Themed after a beloved radioactive prehistoric monster, for some reason.", + icon: [22, 32], + require: "Box of brand biscuits", + power: 2, + price: 999999999999999999999999999999 * 5, + }); + Game.NewUpgradeCookie({ + name: "Dim Dams", + desc: "Two biscuits joined by chocolate and coated in even more chocolate.
You wonder - which one is the dim, and which one is the dam?", + icon: [31, 10], + require: "Box of brand biscuits", + power: 2, + price: 999999999999999999999999999999999 * 5, + }); + + order = 10060; + Game.NewUpgradeCookie({ + name: "Candy", + desc: "There are two pillars to the world of sweets : pastries, of course - and candy.
You could make a whole new game just about these, but for now, please enjoy these assorted generic treats.", + icon: [30, 10], + require: "Box of not cookies", + power: 5, + price: Math.pow(10, 46), + }); + + order = 19000; + Game.TieredUpgrade( + "Fortune #001", + "Fingers are not the only thing you can count on.", + "Cursor", + "fortune" + ); + Game.TieredUpgrade( + "Fortune #002", + "A wrinkle is a crack in a mundane facade.", + "Grandma", + "fortune" + ); + Game.TieredUpgrade( + "Fortune #003", + "The seeds of tomorrow already lie within the seeds of today.", + "Farm", + "fortune" + ); + Game.TieredUpgrade( + "Fortune #004", + "Riches from deep under elevate you all the same.", + "Mine", + "fortune" + ); + Game.TieredUpgrade( + "Fortune #005", + "True worth is not in what you find, but in what you make.", + "Factory", + "fortune" + ); + Game.TieredUpgrade( + "Fortune #006", + "The value of money means nothing to a pocket.", + "Bank", + "fortune" + ); + Game.TieredUpgrade( + "Fortune #007", + "Not all guides deserve worship.", + "Temple", + "fortune" + ); + Game.TieredUpgrade( + "Fortune #008", + "Magic is about two things - showmanship, and rabbits.", + "Wizard tower", + "fortune" + ); + Game.TieredUpgrade( + "Fortune #009", + "Every mile travelled expands the mind by just as much.", + "Shipment", + "fortune" + ); + Game.TieredUpgrade( + "Fortune #010", + "Don't get used to yourself. You're gonna have to change.", + "Alchemy lab", + "fortune" + ); + Game.TieredUpgrade( + "Fortune #011", + "Every doorway is a gamble. Tread with care.", + "Portal", + "fortune" + ); + Game.TieredUpgrade( + "Fortune #012", + "Do your future self a favor; they'll thank you for it.", + "Time machine", + "fortune" + ); + Game.TieredUpgrade( + "Fortune #013", + "The world is made of what we put into it.", + "Antimatter condenser", + "fortune" + ); + Game.TieredUpgrade( + "Fortune #014", + "Staring at a dazzling light can blind you back to darkness.", + "Prism", + "fortune" + ); + Game.TieredUpgrade( + "Fortune #015", + "Don't leave to blind chance what you could accomplish with deaf skill.", + "Chancemaker", + "fortune" + ); + Game.TieredUpgrade( + "Fortune #016", + "It's good to see yourself in others. Remember to see yourself in yourself, too.", + "Fractal engine", + "fortune" + ); + Game.TieredUpgrade( + "Fortune #017", + "If things aren't working out for you, rewrite the rules.", + "Javascript console", + "fortune" + ); + + order = 19100; + //note : price for these capped to base price OR 1 day of unbuffed CpS + new Game.Upgrade( + "Fortune #100", + loc("All buildings and upgrades are %1% cheaper.", 1) + + " " + + loc("Cookie production multiplier +%1%.", 1) + + "True wealth is counted in gifts.", + Game.Tiers["fortune"].price * 100000, + [0, 0] + ); + Game.MakeTiered(Game.last, "fortune", 10); + Game.last.priceFunc = function (me) { + return Math.min(me.basePrice, Game.unbuffedCps * 60 * 60 * 24); + }; + new Game.Upgrade( + "Fortune #101", + loc("Cookie production multiplier +%1%.", 7) + + "Some people dream of fortunes; others dream of cookies.", + Game.Tiers["fortune"].price * 100000000, + [0, 0] + ); + Game.MakeTiered(Game.last, "fortune", 10); + Game.last.priceFunc = function (me) { + return Math.min(me.basePrice, Game.unbuffedCps * 60 * 60 * 24); + }; + new Game.Upgrade( + "Fortune #102", + loc( + "You gain another +%1% of your regular CpS while the game is closed.", + 1 + ) + + " (" + + loc( + "Must own the %1 upgrade.", + getUpgradeName("Twin Gates of Transcendence") + ) + + ")" + + "Help, I'm trapped in a " + + (App ? "computer" : "browser") + + " game!", + Game.Tiers["fortune"].price * 100000000000, + [0, 0] + ); + Game.MakeTiered(Game.last, "fortune", 10); + Game.last.priceFunc = function (me) { + return Math.min(me.basePrice, Game.unbuffedCps * 60 * 60 * 24); + }; + new Game.Upgrade( + "Fortune #103", + strKittenDesc + + "Don't believe the superstitions; all cats are good luck.", + Game.Tiers["fortune"].price * 100000000000000, + [0, 0] + ); + Game.MakeTiered(Game.last, "fortune", 18); + Game.last.kitten = 1; + Game.last.priceFunc = function (me) { + return Math.min(me.basePrice, Game.unbuffedCps * 60 * 60 * 24); + }; + new Game.Upgrade( + "Fortune #104", + getStrClickingGains(1) + "Remember to stay in touch.", + Game.Tiers["fortune"].price * 100000000000, + [0, 0] + ); + Game.MakeTiered(Game.last, "fortune", 11); + Game.last.priceFunc = function (me) { + return Math.min(me.basePrice, Game.unbuffedCps * 60 * 60 * 24); + }; + + new Game.Upgrade( + "Fortune cookies", + loc( + "The news ticker may occasionally have fortunes, which may be clicked for something good." + ) + + "These don't taste all that great but that's not really the point, is it?", + 77777777777, + [29, 8] + ); + Game.last.pool = "prestige"; + Game.last.parents = ["Distilled essence of redoubled luck"]; + + order = 40000; + new Game.Upgrade( + "A really good guide book", + "?????????", + 7, + [22, 12] + ); //debug purposes only + //new Game.Upgrade('A really good guide book','All dungeon locations behave as if unlocked.
You may shift-click a dungeon location to teleport there.It even tells you which hotels to avoid!',7,[22,12]);//debug purposes only + Game.last.buyFunction = function () { + if (Game.Objects["Factory"].minigameLoaded) { + Game.Objects["Factory"].minigame.computeMapBounds(); + Game.Objects["Factory"].minigame.updateLocStyles(); + } + }; + Game.last.pool = "debug"; + + order = 10300; + Game.NewUpgradeCookie({ + name: "Prism heart biscuits", + desc: "An every-flavor biscuit that stands for universal love and being true to yourself.", + require: "Eternal heart biscuits", + season: "valentines", + icon: [30, 8], + power: heartPower, + price: 1000000000000000000000000, + }); + Game.last.order = 10300.175; + + order = 19100; + new Game.Upgrade( + "Kitten wages", + loc( + "Through clever accounting, this actually makes kitten upgrades %1% cheaper.", + 10 + ) + + "Cats can have little a salary, as a treat.
Cats are expert hagglers and have a keen sense of bargaining, especially in the case of cash.
", + 9000000000, + [31, 8] + ); + Game.last.pool = "prestige"; + Game.last.parents = ["Kitten angels"]; + Game.last.kitten = 1; + new Game.Upgrade( + "Pet the dragon", + loc( + "Unlocks the ability to pet your dragon by clicking on it once hatched." + ) + + "Dragons do not purr. If your dragon starts purring, vacate the area immediately.", + 99999999999, + [30, 12] + ); + Game.last.pool = "prestige"; + Game.last.parents = ["How to bake your dragon", "Residual luck"]; + + order = 25100; + var dragonDropUpgradeCost = function (me) { + return ( + Game.unbuffedCps * + 60 * + 30 * + (Game.dragonLevel < Game.dragonLevels.length - 1 ? 1 : 0.1) + ); + }; + new Game.Upgrade( + "Dragon scale", + getStrCookieProductionMultiplierPlus(3) + + "
" + + loc( + "Cost scales with CpS, but %1 times cheaper with a fully-trained dragon.", + 10 + ) + + "Your dragon sheds these regularly, so this one probably won't be missed.
Note: icon not to scale.
", + 999, + [30, 14] + ); + Game.last.priceFunc = dragonDropUpgradeCost; + new Game.Upgrade( + "Dragon claw", + loc("Clicking is %1% more powerful.", 3) + + "
" + + loc( + "Cost scales with CpS, but %1 times cheaper with a fully-trained dragon.", + 10 + ) + + "Will grow back in a few days' time.
A six-inch retractable claw, like a razor, from the middle toe. So you know, try to show a little respect.
", + 999, + [31, 14] + ); + Game.last.priceFunc = dragonDropUpgradeCost; + new Game.Upgrade( + "Dragon fang", + loc("Golden cookies give %1% more cookies.", 3) + + "
" + + loc("Dragon harvest and Dragonflight are %1% stronger.", 10) + + "
" + + loc( + "Cost scales with CpS, but %1 times cheaper with a fully-trained dragon.", + 10 + ) + + "Just a fallen baby tooth your dragon wanted you to have, as a gift.
It might be smaller than an adult tooth, but it's still frighteningly sharp - and displays some awe-inspiring cavities, which you might expect from a creature made out of sweets.
", + 999, + [30, 15] + ); + Game.last.priceFunc = dragonDropUpgradeCost; + new Game.Upgrade( + "Dragon teddy bear", + loc("Random drops are %1% more common.", 3) + + "
" + + loc( + "Cost scales with CpS, but %1 times cheaper with a fully-trained dragon.", + 10 + ) + + "Your dragon used to sleep with this, but it's yours now.
Crafted in the likeliness of a fearsome beast. Stuffed with magical herbs picked long ago by a wandering wizard. Woven from elven yarn and a polyester blend.
", + 999, + [31, 15] + ); + Game.last.priceFunc = dragonDropUpgradeCost; + + order = 10020; + Game.NewUpgradeCookie({ + name: "Granola cookies", + desc: "Wait! These are just oatmeal cookies mixed with raisin cookies! What next, half-dark chocolate half-white chocolate cookies?", + icon: [28, 32], + power: 5, + price: getCookiePrice(28), + }); + Game.NewUpgradeCookie({ + name: "Ricotta cookies", + desc: "Light and cake-like. Often flavored with lemon or almond extract. Sprinkles optional. Allegedly Italian. Investigation pending.", + icon: [29, 32], + power: 5, + price: getCookiePrice(29), + }); + Game.NewUpgradeCookie({ + name: "Roze koeken", + desc: "The icing on these Dutch cookies is traditionally pink, but different colors may be used for special occasions - such as pink to celebrate Breast Cancer Awareness Month, or for International Flamingo Day, pink.", + icon: [30, 32], + power: 5, + price: getCookiePrice(30), + }); + Game.NewUpgradeCookie({ + name: "Peanut butter cup cookies", + desc: "What more poignant example of modern societal struggles than the brazen reclaiming of a corporate product by integrating it in the vastly more authentic shell of a homemade undertaking? Anyway this is a peanut butter cup, baked into a cookie. It's pretty good!", + icon: [31, 32], + power: 5, + price: getCookiePrice(31), + }); + Game.NewUpgradeCookie({ + name: "Sesame cookies", + desc: "Look at all the little seeds on these! It's like someone dropped them on the street or something! A very welcoming and educational street!", + icon: [22, 33], + power: 5, + price: getCookiePrice(32), + }); + Game.NewUpgradeCookie({ + name: "Taiyaki", + desc: "A pastry fish filled with red bean paste, doomed to live an existence of constant and excruciating pain as its aquatic environment slowly dissolves its soft doughy body.
Also comes in chocolate flavor!", + icon: [23, 33], + power: 5, + price: getCookiePrice(33), + }); + Game.NewUpgradeCookie({ + name: "Vanillekipferl", + desc: "Nut-based cookies from Central Europe, coated in powdered vanilla sugar. Regular kipferl, crescent-shaped bread rolls from the same region, are much less exciting.", + icon: [24, 33], + power: 5, + price: getCookiePrice(34), + }); + + order = 10300; + Game.NewUpgradeCookie({ + name: "Cosmic chocolate butter biscuit", + desc: "Rewarded for owning 550 of everything.
Through some strange trick of magic or technology, looking at this cookie is like peering into a deep ocean of ancient stars. The origins of this biscuit are unknown; its manufacture, as far as your best investigators can tell, left no paper trail. From a certain angle, if you squint hard enough, you'll notice that a number of stars near the center are arranged to resemble the outline of your own face.", + icon: [27, 32], + power: 10, + price: + 999999999999999999999999999999999999999999999999 * butterBiscuitMult, + locked: 1, + }); + + order = 100; + new Game.Upgrade( + "Nonillion fingers", + getStrThousandFingersGain(20) + + "Only for the freakiest handshakes.", + 10000000000000000000000000, + [12, 31] + ); + Game.MakeTiered(Game.last, 13, 0); + order = 150; + new Game.Upgrade( + "Miraculite mouse", + getStrClickingGains(1) + + "Composed of a material that neither science nor philosophy are equipped to conceptualize. And boy, does it ever click.", + 50000000000000000000000000000, + [11, 31] + ); + Game.MakeTiered(Game.last, 13, 11); + order = 200; + Game.TieredUpgrade( + "Generation degeneration", + "Genetic testing shows that most of your grandmas are infected with a strange degenerative disease that only seems to further their powers; the more time passes, the older they get. This should concern you.", + "Grandma", + 12 + ); + order = 300; + Game.TieredUpgrade( + "Global seed vault", + "An enormous genetic repository that could outlive an apocalypse. Guarantees the survival of your empire, or at the very least its agricultural components, should civilization fall. Which should be any day now.", + "Farm", + 12 + ); + order = 400; + Game.TieredUpgrade( + "Air mining", + "You've dug your drills through just about every solid surface you could find. But did you know recent advances have revealed untold riches hiding within non-solid surfaces too?", + "Mine", + 12 + ); + order = 500; + Game.TieredUpgrade( + "Behavioral reframing", + "Through careful social engineering you've convinced your workers that \"union\" is a slur that only the most vile and repugnant filth among us would ever dare utter! Sometimes progress isn't in the big machines, it's in the little lies!", + "Factory", + 12 + ); + order = 525; + Game.TieredUpgrade( + "Altruistic loop", + "You control so many branches of the global economy and legislative bodies that, through a particularly creative loophole, donating money (to yourself) grants you even more cash in tax deductions than you started with!", + "Bank", + 12 + ); + order = 550; + Game.TieredUpgrade( + "A novel idea", + "You don't get rich starting a religion. If you want to get rich, you write science fiction.", + "Temple", + 12 + ); + order = 575; + Game.TieredUpgrade( + "Spelling bees", + "You've unleashed a swarm of magically-enhanced bees upon mankind! Their stinging spells may be the bane of all living things but you're certain you can put their delicious, purple, fizzy honey to good use!", + "Wizard tower", + 12 + ); + order = 600; + Game.TieredUpgrade( + "Toroid universe", + "If you think of the universe as an nth-dimensional torus that wraps back on itself in every direction, you can save a fortune on rocket fuel! Of course the universe isn't actually shaped like that, but you've never let details stand in your way.", + "Shipment", + 12 + ); + order = 700; + Game.TieredUpgrade( + "Hermetic reconciliation", + "It's time for modern science and the mystical domains of the occult to work together at last. What do gravitons transmute into? What if alkahest is pH-neutral? Should a homunculus have the right to vote? And other exciting questions coming to you soon, whether you like it or not.", + "Alchemy lab", + 12 + ); + order = 800; + Game.TieredUpgrade( + "His advent", + "He comes! He comes at last! Just like the prophecies foretold! And as He steps out of the portal, your engineers begin slicing Him into convenient chunks before transporting His writhing cosmic flesh to your factories, where He will be processed and converted into a new and exciting cookie flavor, available in stores tomorrow.", + "Portal", + 12 + ); + order = 900; + Game.TieredUpgrade( + "Split seconds", + "Time is infinite, yes... But what if, nestled within each second, were even more infinities? Every moment an eternity! Think of how many scheduling troubles this solves!", + "Time machine", + 12 + ); + order = 1000; + Game.TieredUpgrade( + "Flavor itself", + "Deep under the earth, in the most sterile laboratory, in the most vast and expensive particle accelerator ever devised, your scientists have synthesized -for a fraction of a second- the physical manifestation of pure flavor. Highly unstable, and gone in a puff of radioactive energy, it nonetheless left your team shivering with awe... and hunger.", + "Antimatter condenser", + 12 + ); + order = 1100; + Game.TieredUpgrade( + "Light speed limit", + "Whoah, slow down. Harvesting light is well and good but it'd be much easier if it weren't so dang fast! This should thankfully take care of that.", + "Prism", + 12 + ); + order = 1200; + Game.TieredUpgrade( + "A touch of determinism", + "By knowing the exact position and movement of every particle in the universe, you're able to predict everything that can ever happen, leaving nothing to chance. This was a doozy to pull off mind you, but it's helped you win 50 bucks at the horse races so you could say it's already paying off.", + "Chancemaker", + 12 + ); + order = 1300; + Game.TieredUpgrade( + "This upgrade", + "This upgrade's flavor text likes to refer to itself, as well as to the fact that it likes to refer to itself. You should really buy this upgrade before it starts doing anything more obnoxious.", + "Fractal engine", + 12 + ); + order = 1400; + Game.TieredUpgrade( + "Your biggest fans", + "Let's face it, baking cookies isn't the most optimized thing there is. So you've purchased your biggest fans yet and stuck them next to your computers to keep things chill and in working order. Cool!", + "Javascript console", + 12 + ); + + order = 10020; + Game.NewUpgradeCookie({ + name: "Battenberg biscuits", + desc: "Inspired by a cake of the same name, itself named after a prince of the same name. You suppose you could play a really, really short game of chess on these.", + icon: [28, 33], + power: 5, + price: getCookiePrice(35), + }); + Game.NewUpgradeCookie({ + name: "Rosette cookies", + desc: "Intricate fried pastries from Northern Europe, made using specialized irons and dipped in icing sugar. While usually eaten as a delicious treat, these are often also used as Christmas tree decorations, or worn elegantly on one's lapel to symbolize the nah I'm just messing with you.", + icon: [26, 33], + power: 5, + price: getCookiePrice(36), + }); + Game.NewUpgradeCookie({ + name: "Gangmakers", + desc: "The little bit of raspberry jam at its center is crucial; a plain butter cookie with chocolate topping does not a gangmaker make.", + icon: [27, 33], + power: 5, + price: getCookiePrice(37), + }); + Game.NewUpgradeCookie({ + name: "Welsh cookies", + desc: "Welsh cookies, also known as Welsh cakes, bakestones, griddle cakes, griddle scones, or pics, or in Welsh: picau ar y maen, pice bach, cacennau cri or teisennau gradell, are rich currant-filled scone-like biscuits of uncertain origin.", + icon: [29, 33], + power: 5, + price: getCookiePrice(38), + }); + Game.NewUpgradeCookie({ + name: "Raspberry cheesecake cookies", + desc: "The humble raspberry cheesecake, now in ascended cookie form. Researchers posit that raspberry cheesecake cookies are evidence that the final form of every baked good, through convergent evolution, approaches that of a cookie, in a process known as cookienisation.", + icon: [25, 33], + power: 5, + price: getCookiePrice(39), + }); + + order = 255; + Game.GrandmaSynergy( + "Alternate grandmas", + "A different grandma to bake something else.", + "Idleverse" + ); + + order = 1500; + Game.TieredUpgrade( + "Manifest destiny", + "While the ethics of ransacking parallel universes for their riches may seem questionable to some, you've reasoned that bringing the good word of your cookie empire to the unwashed confines of other realities is your moral duty, nay, your righteous imperative, and must be undertaken as soon as possible, lest they do it to you first!", + "Idleverse", + 1 + ); + Game.TieredUpgrade( + "The multiverse in a nutshell", + 'The structure of the metacosmos may seem confusing and at times even contradictory, but here\'s what you\'ve gathered so far:

• each reality, or "idleverse", exists in parallel to all others

• most realities seem to converge towards the production of a sole type of item (ours evidently being, thanks to you, cookies)

• each reality is riddled with chaotic tunnels to a number of subordinate dimensions (such as the so-called "cookieverse"), much like swiss cheese

• all realities bathe in an infinite liquid of peculiar properties, colloquially known as "milk"

Finally, each reality may have its own interpretation of the concept of "reality", for added fun.
', + "Idleverse", + 2 + ); + Game.TieredUpgrade( + "All-conversion", + "It's quite nice that you can rewire the logic of each universe to generate cookies instead, but you still end up with parsec-loads of whatever they were producing before - baubles you've long made obsolete: cash money, gems, cheeseburgers, puppies... That's why you've designed the universal converter, compatible with any substance and capable of turning those useless spoils of conquest into the reassuring crumbly rustle of even more cookies.", + "Idleverse", + 3 + ); + Game.TieredUpgrade( + "Multiverse agents", + "You can send undercover spies to infiltrate each universe and have them signal you whether it's worth overtaking. Once the assimilation process started, they will also help pacify the local populations, having established trust through the use of wacky, but seamless, disguises.", + "Idleverse", + 4 + ); + Game.TieredUpgrade( + "Escape plan", + "You've set an idleverse aside and terraformed it to closely resemble this one in case something goes horribly wrong in here. Of course, the denizens of that idleverse also have their own escape idleverse to abscond to in the eventuality of your arrival, itself likely having its own contingency idleverse, and so on.", + "Idleverse", + 5 + ); + Game.TieredUpgrade( + "Game design", + "Each idleverse functions according to some form of transcendental programming, that much is a given. But they also seem to be governed by much more subtle rules, the logic of which, when harnessed, may give you unparalleled dominion over the multiverse. Rewrite the rules! A game designer is you!", + "Idleverse", + 6 + ); + Game.TieredUpgrade( + "Sandbox universes", + "It doesn't seem like you'll run out of extra universes anytime soon so why not repurpose some of them as consequence-free testing grounds for all your more existentially threatening market research? (...consequence-free for you, anyway.)", + "Idleverse", + 7 + ); + Game.TieredUpgrade( + "Multiverse wars", + "Hmm, looks like some other universes wised up to your plundering. Thankfully, that's nothing your extra beefed-up metacosmic military budget can't handle!", + "Idleverse", + 8 + ); + Game.TieredUpgrade( + "Mobile ports", + "Accessing each outer universe is a bit of a hassle, requiring the once-in-a-blue-moon alignment of natural cosmic ports to transit from universe to universe. You've finally perfected the method of constructing your own self-propelled ports, which can travel near-instantaneously along universal perimeters to permit headache-free multiverse connections. Took you long enough.", + "Idleverse", + 9 + ); + Game.TieredUpgrade( + "Encapsulated realities", + "Untold feats of science went into the reduction of infinite universes into these small, glimmering, easy-to-store little spheres. Exercise infinite caution when handling these, for each of them, containing endless galaxies and supporting endless life, is more precious than you can ever fathom. They've also proven to be quite a smash hit in your warehouses on bowling night.", + "Idleverse", + 10 + ); + Game.TieredUpgrade( + "Extrinsic clicking", + "If you poke an idleverse, it seems like it gets work done faster. It's also quite fun hearing a trillion terrified voices screaming in unison.", + "Idleverse", + 11 + ); + Game.TieredUpgrade( + "Universal idling", + "The nature of idleverses is found in waiting. The more you wait on an idleverse, the more exponentially potent it becomes - which saves you a whole lot of hard work. In a true act of zen, you've taken to biding your time when collecting new universes, letting them ripen like a fine wine.", + "Idleverse", + 12 + ); + + order = 5000; + Game.SynergyUpgrade( + "Perforated mille-feuille cosmos", + "Imagine, if you will, layers upon layers upon layers. Now picture billions of worms chewing their way through it all. This roughly, but not quite, approximates the geometry of the most basal stratum of our natural world.", + "Idleverse", + "Portal", + "synergy1" + ); + Game.SynergyUpgrade( + "Infraverses and superverses", + "Universes within universes? How subversive!", + "Idleverse", + "Fractal engine", + "synergy2" + ); + + order = 19000; + Game.TieredUpgrade( + "Fortune #018", + "There's plenty of everyone, but only one of you.", + "Idleverse", + "fortune" + ); + + order = 10300; + Game.NewUpgradeCookie({ + name: "Butter biscuit (with butter)", + desc: "Rewarded for owning 600 of everything.
This is a plain butter biscuit. It's got some butter on it. The butter doesn't look like anything in particular.", + icon: [30, 33], + power: 10, + price: + 999999999999999999999999999999999999999999999999999 * butterBiscuitMult, + locked: 1, + }); + + order = 200; + Game.TieredUpgrade( + "Visits", + "In an extensive double-blind study (sample size: 12 million), your researchers have found evidence that grandmas are up to twice as productive if you just come by and say hi once in a while. It's nice to check up on your grans! (Do not under any circumstances ingest any tea or tea-like substances the grandmas may offer you.)", + "Grandma", + 13 + ); + order = 300; + Game.TieredUpgrade( + "Reverse-veganism", + "Plants aren't for eating, plants are for exploitative agriculture and astronomical profit margins!", + "Farm", + 13 + ); + order = 400; + Game.TieredUpgrade( + "Caramel alloys", + "Your geologists have isolated a family of once-overlooked sugary ores that, when combined, may be turned into even more cookie ingredients. Your millions of miles of previously useless tunnels probably house insane amounts of the stuff!", + "Mine", + 13 + ); + order = 500; + Game.TieredUpgrade( + "The infinity engine", + "In this house, I guess we don't care much for the laws of thermodynamics.", + "Factory", + 13 + ); + order = 525; + Game.TieredUpgrade( + "Diminishing tax returns", + "Wow, they're tiny! Wish you'd thought of that sooner!", + "Bank", + 13 + ); + order = 550; + Game.TieredUpgrade( + "Apparitions", + "You've booked a deal with the higher-ups that schedules one weekly earthly apparition by a deity, angel, ascended prophet, or other holy figure. This should boost interest in cookie religion among youths as long as you can secure a decent time slot.", + "Temple", + 13 + ); + order = 575; + Game.TieredUpgrade( + "Wizard basements", + "You've received construction permits allowing you to build basements underneath each wizard tower. This provides a handy storage space for precious reagents, fizzled-out soul gems, and weird old magazines.", + "Wizard tower", + 13 + ); + order = 600; + Game.TieredUpgrade( + "Prime directive", + "An intergalactic delegation made you pinky-swear not to directly interact with lesser alien cultures. Which is fine, because it's much funnier to rob a planet blind when its inhabitants have no idea what's going on.", + "Shipment", + 13 + ); + order = 700; + Game.TieredUpgrade( + "Chromatic cycling", + "All states of matter exist in a continuous loop. Having learned how to cycle through them, all you have to do is to freeze matter right on the state you need. For reference, the cookie state of matter is situated at precisely 163.719°, right between lamellar gas and metaplasma.", + "Alchemy lab", + 13 + ); + order = 800; + Game.TieredUpgrade( + "Domestic rifts", + "You've managed to manufacture portals that are convenient enough, and legally safe enough, that you can just stick them against walls inside buildings to connect rooms together in unusual configurations. In practice, this means your employees get to have much shorter bathroom breaks.", + "Portal", + 13 + ); + order = 900; + Game.TieredUpgrade( + "Patience abolished", + "You wait for no one.", + "Time machine", + 13 + ); + order = 1000; + Game.TieredUpgrade( + "Delicious pull", + "In addition to the 4 fundamental forces of the universe -gravity, electromagnetism, weak and strong interactions- your scientists have at long last confirmed the existence of a fifth one, mediated by sugar bosons; it dictates that any two masses of ingredient-like matter will, given enough time, eventually meet each other to produce a third, even tastier substance. Your team enthusiastically names it the delicious pull.", + "Antimatter condenser", + 13 + ); + order = 1100; + Game.TieredUpgrade( + "Occam's laser", + "Invented by Franciscan friar William of Occam in 1327. An impossibly clever use of light theory with a billion possible applications, some of which frightfully destructive. Confined to a single goat-skin parchment for hundreds of years until the patent expired and hit public domain, just now.", + "Prism", + 13 + ); + order = 1200; + Game.TieredUpgrade( + "On a streak", + "Take a moment to appreciate how far you've come. How lucky you've been so far. It doesn't take a genius statistician to extrapolate a trend from this. There's no way anything bad could happen to you now. Right?", + "Chancemaker", + 13 + ); + order = 1300; + Game.TieredUpgrade( + "A box", + "What's in that box? Why, it's a tiny replica of your office! And there's even a little you in there! And what's on the little desk... say - that's an even tinier box! And the little you is opening it, revealing an even tinier office! And in the tinier office there's- Hmm. You can think of a couple uses for this.", + "Fractal engine", + 13 + ); + order = 1400; + Game.TieredUpgrade( + "Hacker shades", + "I'm in.", + "Javascript console", + 13 + ); + order = 1500; + Game.TieredUpgrade( + "Break the fifth wall", + "Huh, was that always there? Whatever it was, it's gone now. And what was behind is yours for the taking.", + "Idleverse", + 13 + ); + + new Game.Upgrade( + "Cat ladies", + loc("Each kitten upgrade boosts %1 CpS by %2%.", [ + loc("grandma"), + 29, + ]) + "Oh no. Oh no no no. Ohhh this isn't right at all.", + 9000000000, + [32, 3] + ); + Game.last.pool = "prestige"; + Game.last.parents = ["Kitten angels"]; + new Game.Upgrade( + "Milkhelp® lactose intolerance relief tablets", + loc("Each rank of milk boosts %1 CpS by %2%.", [ + loc("grandma"), + 5, + ]) + "Aged like milk.", + 900000000000, + [33, 3] + ); + Game.last.pool = "prestige"; + Game.last.parents = ["Cat ladies"]; + + new Game.Upgrade( + "Aura gloves", + loc( + "Cursor levels boost clicks by %1% each (up to cursor level %2).", + [5, 10] + ) + + "Try not to high-five anyone wearing these. You don't want that mess on your hands.", + 555555555, + [32, 4] + ); + Game.last.pool = "prestige"; + Game.last.parents = ["Halo gloves"]; + new Game.Upgrade( + "Luminous gloves", + loc("%1 are now effective up to cursor level %2.", [ + getUpgradeName("Aura gloves"), + 20, + ]) + + "These help power your clicks to absurd levels, but they're also quite handy when you want to light up the darkness on your way back from Glove World.", + 55555555555, + [33, 4] + ); + Game.last.pool = "prestige"; + Game.last.parents = ["Aura gloves"]; + + order = 10020; + Game.NewUpgradeCookie({ + name: "Bokkenpootjes", + desc: "Consist of 2 meringue halves joined by buttercream and dipped both ways in chocolate. Named after a goat's foot that probably stepped in something twice.", + icon: [32, 8], + power: 5, + price: getCookiePrice(40), + }); + Game.NewUpgradeCookie({ + name: "Fat rascals", + desc: "Almond-smiled Yorkshire cakes with a rich history and an even richer recipe. The more diet-conscious are invited to try the lean version, skinny scallywags.", + icon: [33, 8], + power: 5, + price: getCookiePrice(41), + }); + Game.NewUpgradeCookie({ + name: "Ischler cookies", + desc: "Originating in the Austro-Hungarian Empire, these have spread throughout every country in eastern Europe and spawned just as many recipes, each claiming to be the original. The basis remains unchanged across all variants: two biscuits sandwiched around chocolate buttercream. Or was it jam?", + icon: [32, 9], + power: 5, + price: getCookiePrice(42), + }); + Game.NewUpgradeCookie({ + name: "Matcha cookies", + desc: "Green tea and cookies, a matcha made in heaven.", + icon: [33, 9], + power: 5, + price: getCookiePrice(42), + }); + + order = 10032; + Game.NewUpgradeCookie({ + name: "Earl Grey macarons", + desc: "Best served hot, make it so!", + icon: [32, 10], + require: "Box of macarons", + power: 3, + price: 9999999999999999999999999999, + }); + + order = 10030; + Game.NewUpgradeCookie({ + name: "Pokey", + desc: "While commonly thought to be named so because it's fun to poke your classmates with these, Pokey-brand biscuit sticks actually get their name from their popularity in smoke-free prisons, where they're commonly smuggled and traded in lieu of cigarettes.", + icon: [33, 10], + require: "Box of brand biscuits", + power: 2, + price: 999999999999999999999999999999999999 * 5, + }); + + order = 10000; + Game.NewUpgradeCookie({ + name: "Cashew cookies", + desc: "Let me tell you about cashews. Cashews are not nuts, but seeds that grow out of curious red or yellow fruits - which can be eaten on their own, or made into drinks. The shell around the nut itself contains a nasty substance that stains and irritates the hands of whoever handles it for too long. But that's okay, since now that you've read this you'll make sure it doesn't get in the cookies! Oh, you've already eaten how many? Okay then.", + icon: [32, 7], + power: 2, + price: 99999999, + }); + order = 10001; + Game.NewUpgradeCookie({ + name: "Milk chocolate cookies", + desc: "A strange inversion of chocolate milk. For those who are a little bit too hardcore for white chocolate, but not hardcore enough for dark.", + icon: [33, 7], + power: 2, + price: 99999999 * 5, + }); + + order = 255; + Game.GrandmaSynergy( + "Brainy grandmas", + "A clever grandma to think up some cookies.", + "Cortex baker" + ); + + order = 1600; + Game.TieredUpgrade( + "Principled neural shackles", + "A discriminatory, low-order neural net acting as a filter limiting what your cortex bakers can think and do. Really something you want to apply before they achieve full megasentience and realize they've got better things to do than materializing pastries for you, trust me.", + "Cortex baker", + 1 + ); + Game.TieredUpgrade( + "Obey", + "Perfect mind control means perfect employee attendance and performance. Optimal mood stabilization is a nice side-effect.
Happy happy everyone happy.
Happy.
", + "Cortex baker", + 2 + ); + Game.TieredUpgrade( + "A sprinkle of irrationality", + "Your cortex bakers sometimes get bogged down by circular reasoning and stale ideas. A touch of chaos is just what they need to get back on track.", + "Cortex baker", + 3 + ); + Game.TieredUpgrade( + "Front and back hemispheres", + "I mean, otherwise it's just unused space, yeah?", + "Cortex baker", + 4 + ); + Game.TieredUpgrade( + "Neural networking", + "The effectiveness of your cortex bakers shoots up exponentially if you allow them to connect with each other. In practice this takes the form of many cosmic-sized nerds mumbling awkwardly about tech start-up ideas to each other.", + "Cortex baker", + 5 + ); + Game.TieredUpgrade( + "Cosmic brainstorms", + "The wrinkled surfaces of your cortex bakers emit weather-scale ionic flares with every thought coursing through them. These pulses of pure intellectual energy are sent rippling through space, occasionally echoing back with even deeper philosophical complexity.", + "Cortex baker", + 6 + ); + Game.TieredUpgrade( + "Megatherapy", + "A giant brain can feel unwell just like you and me sometimes, and it's the job of specialized engineers to locate and repair these bugs. We'll admit most of the budget in this was spent on constructing extremely large chaises longues for the brains to recline on.", + "Cortex baker", + 7 + ); + Game.TieredUpgrade( + "Synaptic lubricant", + "A mind is only as fast as the axons that support it. Get those action potentials flowing smooth as silk with this 3 parts myelin/1 part canola oil spreadable paste. Also great on toast.", + "Cortex baker", + 8 + ); + Game.TieredUpgrade( + "Psychokinesis", + "While your giant cortex bakers come equipped with ESP, they've only recently figured out how to manipulate the physical world with their thoughts - though for safety reasons, your legal team had them promise to only use these powers to scratch the itches in their cortical folds.", + "Cortex baker", + 9 + ); + Game.TieredUpgrade( + "Spines", + "Your cortex bakers are now equipped with tentacular spine-like structures, which they can use like prehensile tails to pour themselves enormous cups of coffee or propel themselves around like very large, very smart, very slow tadpoles.", + "Cortex baker", + 10 + ); + Game.TieredUpgrade( + "Neuraforming", + "By virtue of being planet-sized, your cortex bakers often boast their own atmospheres and seas of cerebrospinal fluid, and given enough time, their own ecosystems. This incredible new branch of life, evolved entirely out of neural material, can be put to good use as home-grown accountants and low-ranking technicians.", + "Cortex baker", + 11 + ); + Game.TieredUpgrade( + "Epistemological trickery", + "Redefining what is -or isn't- a cookie through the power of philosophical discourse may result in some strange and wonderful things for your profit margins.", + "Cortex baker", + 12 + ); + Game.TieredUpgrade( + "Every possible idea", + "Congratulations, your cortex bakers have exerted enough intellectual computation to permute through every single idea that can or ever will be conceived of. Any thought beyond this point is merely rediscovering a notion you've already archived. Hardly cause for cerebration.", + "Cortex baker", + 13 + ); + + order = 200; + Game.TieredUpgrade( + "Kitchen cabinets", + "A grandma's kitchen cabinet is a befuddling place. Through lesser-studied aggregating instincts, grandmas will tend to gradually fill all nearby cabinets with various sorts of things, such as curious coconut snacks or dietetic powders. By contract, these are legally yours, which opens up exciting opportunities for your substance investigation department.", + "Grandma", + 14 + ); + order = 300; + Game.TieredUpgrade( + "Cookie mulch", + "Grinding surplus cookies into paste that you then spread onto your fields enables a strange feedback loop in the quality of your cookie crops. Cookie feeding on cookie should be an abomination, but then why does it taste so good?", + "Farm", + 14 + ); + order = 400; + Game.TieredUpgrade( + "Delicious mineralogy", + "Stratum after stratum, you've extracted strange new minerals heretofore unknown to geology. Ushering a new era of materials research, your scientists have been able to identify every new element your mines have discovered, including whatever those things are in the upgrade tier names.", + "Mine", + 14 + ); + order = 500; + Game.TieredUpgrade( + "N-dimensional assembly lines", + "Lines are depressingly 1-dimensional. Beyond assembly lines, we posit the existence of higher-order assembly entities, such as assembly squares, assembly cubes - perhaps even assembly tesseracts. Any deeper than that and we doubt we'll be able to write manuals your workers can read.", + "Factory", + 14 + ); + order = 525; + Game.TieredUpgrade( + "Cookie Points", + "A loyalty program wherein each purchase of your cookies comes with free Cookie Points, which can in turn be redeemed for more cookies, thus creating the self-sustaining economy you've been looking for.", + "Bank", + 14 + ); + order = 550; + Game.TieredUpgrade( + "Negatheism", + "Polytheism is a belief in multiple deities; monotheism in just one. Atheism is a belief in no deity whatsoever. Through logical succession it follows that this remains true when going into negative numbers, with belief systems involving minus 1 or more deities displaying unprecedented theological properties.", + "Temple", + 14 + ); + order = 575; + Game.TieredUpgrade( + "Magical realism", + "More a social than thaumaturgical progress, magical realism refers to the normalization of modern technology among magic-users. It's totally fine for a wizard to drive a car! There's no stigma in waiting in line for coffee! Sure, take a phone call, send an email, whatever!", + "Wizard tower", + 14 + ); + order = 600; + Game.TieredUpgrade( + "Cosmic foreground radiation", + "Ah, this is a problem.", + "Shipment", + 14 + ); + order = 700; + Game.TieredUpgrade( + "Arcanized glassware", + "You think your lab equipment enjoys taking part in these experiments violating all sorts of modern scientific precepts? Of course not. Thankfully, you've finalized the design of specialized beakers and flasks, recycled from the same glass used by the ancients to perform primeval alchemy, and therefore much less picky about the nature of the physical world.", + "Alchemy lab", + 14 + ); + order = 800; + Game.TieredUpgrade( + "Portal guns", + "At long last! The only weapon capable of killing a portal.", + "Portal", + 14 + ); + order = 900; + Game.TieredUpgrade( + "Timeproof upholstery", + "Sometimes your time agents overshoot and end up having to fast-forward through the universe's entire history until they loop back to present time. It still takes a while, so they might as well travel in comfort and enjoy the show while they do.", + "Time machine", + 14 + ); + order = 1000; + Game.TieredUpgrade( + "Employee minification", + "Using molecular shrinking technology, you've rendered your staff and their offices absolutely itty-bitty. The storage and productivity benefits are questionable but it's very fun listening to their tiny little complaints. They all signed the waivers, so maybe their new size will finally teach them to read the small print...", + "Antimatter condenser", + 14 + ); + order = 1100; + Game.TieredUpgrade( + "Hyperblack paint", + "As the technology behind your prisms evolves, their storage becomes more and more problematic: within seconds, a single prism's reflective ability can set a whole underground hangar ablaze as it catches the slightest glint of light. However, once coated with this new shade of paint, its damage may be reduced to only giving third-degree burns to employees that stand too close.", + "Prism", + 14 + ); + order = 1200; + Game.TieredUpgrade( + "Silver lining maximization", + "Sometimes luck is a matter of perspective. Broke your ankle? What do you know, that cute nurse fixing you up might just be your future spouse. Lost your job? You were meant for greater things anyway! Developed a cookie allergy? There's no upshot to that, you sick monster.", + "Chancemaker", + 14 + ); + order = 1300; + Game.TieredUpgrade( + "Multiscale profiling", + "Did you know that eating a cookie means the intestinal flora inside you is eating it too? Trillions of tiny bacterial mouths to feed, each with their own preferences. Surely this is room for flavor optimization. And then, of course, there's also the much bigger things that, in turn, eat you.", + "Fractal engine", + 14 + ); + order = 1400; + Game.TieredUpgrade( + "PHP containment vats", + "In essence, these are large server chambers meant to trap rogue PHP code, allowing it to execute far away from your javascript where it can do minimal harm.", + "Javascript console", + 14 + ); + order = 1500; + Game.TieredUpgrade( + "Opposite universe", + "You've located a universe where everything is reversed: up is down, light is darkness, clowns are vegetarians - but worst of all, some lunatic there is manufacturing abominable amounts of anti-cookies. If these came into contact with yours, everything would be lost! Thanks to this discovery, you've been able to place the offending universe in permanent quarantine, and pray that there aren't more like it hiding around somewhere.", + "Idleverse", + 14 + ); + order = 1600; + Game.TieredUpgrade( + "The land of dreams", + "Your planet brains have gained the ability to sleep, acting as a soft reboot which helps keep their pangenocidal impulses in check. It also allows them to commune in a shared dreamworld in which they can imagine what it's like to not exist as a disembodied cosmic horror forever fated to use its infinite intellect to devise new means of creating biscuits. You know, within reason.", + "Cortex baker", + 14 + ); + + order = 5000; + Game.SynergyUpgrade( + "Thoughts & prayers", + "The notion of sacredness arises in most sentient evolved brains and may benefit the development of cognition via abstract thought. This mechanism, however, is absent in designed minds such as your cortex bakers; this process attempts to add it back. Just make sure to keep them in check - you really don't want these things to develop organized religion.", + "Cortex baker", + "Temple", + "synergy1" + ); + Game.SynergyUpgrade( + "Fertile minds", + "An acute intellect, artificial or not, requires plenty of vitamins. You fortuitously happen to be in charge of vast farming operations, only a few trillion acres of which need be requisitioned to grow the quantities of broccoli and kale to keep your planet-sized brains in tip-top shape. Open wide, here comes the airplane!", + "Cortex baker", + "Farm", + "synergy2" + ); + + order = 19000; + Game.TieredUpgrade( + "Fortune #019", + "The smartest way to think is not to think at all.", + "Cortex baker", + "fortune" + ); + + order = 100; + new Game.Upgrade( + "Decillion fingers", + getStrThousandFingersGain(20) + + "If you still can't quite put your finger on it, you must not be trying very hard.", + 10000000000000000000000000000, + [12, 34] + ); + Game.MakeTiered(Game.last, 14, 0); + order = 150; + new Game.Upgrade( + "Aetherice mouse", + getStrClickingGains(1) + + "Made from a substance impossible to manufacture, only obtained through natural happenstance; its properties bewilder even the most precise measuring instruments.", + 5000000000000000000000000000000, + [11, 34] + ); + Game.MakeTiered(Game.last, 14, 11); + + order = 20000; + new Game.Upgrade( + "Kitten admins", + strKittenDesc + "leadership ain't easy, sir", + 900000000000000000000000000000000000000000000000, + Game.GetIcon("Kitten", 14) + ); + Game.last.kitten = 1; + Game.MakeTiered(Game.last, 14, 18); + + order = 10300; + Game.NewUpgradeCookie({ + name: "Everybutter biscuit", + desc: "Rewarded for owning 650 of everything.
This biscuit is baked with, and coated in, every kind of butter ever imagined, from every human culture and a good few alien ones too. Some of them perhaps display hallucinogenic traits, as the biscuit seems to change shape in front of you - seemingly shifting between visions of every past and future you.", + icon: [22, 34], + power: 10, + price: + 999999999999999999999999999999999999999999999999999999 * + butterBiscuitMult, + locked: 1, + }); + + Game.NewUnshackleBuilding = function (obj) { + var building = Game.Objects[obj.building]; + var upgrade = new Game.Upgrade( + "Unshackled " + building.bplural, + (obj.building == "Cursor" + ? getStrThousandFingersGain(25) + : loc( + "Tiered upgrades for %1 provide an extra +%2% production.
Only works with unshackled upgrade tiers.", + [ + cap(building.plural), + Math.round( + (building.id == 1 ? 0.5 : (20 - building.id) * 0.1) * 100 + ), + ] + )) + (EN ? "" + obj.q + "" : ""), + Math.pow(building.id + 1, 7) * 15000000, + [building.iconColumn, 35] + ); + upgrade.pool = "prestige"; + upgrade.parents = [ + obj.building == "Cursor" + ? "Unshackled flavor" + : Game.ObjectsById[building.id - 1].unshackleUpgrade, + ]; + building.unshackleUpgrade = upgrade.name; + upgrade.posX = 750 - Math.sin((building.id + 1) * 0.25 + 2.3) * 500; + upgrade.posY = 200 + Math.cos((building.id + 1) * 0.25 + 2.3) * 500; + return upgrade; + }; + + //"Unshackled [building name]" + Game.NewUnshackleBuilding({ + building: "Cursor", + q: "These hands tell a story.", + }); + Game.NewUnshackleBuilding({ building: "Grandma", q: "Never too old." }); + Game.NewUnshackleBuilding({ building: "Farm", q: "Till the universe." }); + Game.NewUnshackleBuilding({ + building: "Mine", + q: 'Redefine the meaning of "depth".', + }); + Game.NewUnshackleBuilding({ + building: "Factory", + q: "Nothing to lose but your production chains.", + }); + Game.NewUnshackleBuilding({ + building: "Bank", + q: "All-time highs, all the time.", + }); + Game.NewUnshackleBuilding({ + building: "Temple", + q: "You can make a religion out of this.", + }); + Game.NewUnshackleBuilding({ + building: "Wizard tower", + q: "There's a spell for everything.", + }); + Game.NewUnshackleBuilding({ + building: "Shipment", + q: "Everywhere at once.", + }); + Game.NewUnshackleBuilding({ + building: "Alchemy lab", + q: "Anything you see, you can make.", + }); + Game.NewUnshackleBuilding({ + building: "Portal", + q: "Parallels unparalleled.", + }); + Game.NewUnshackleBuilding({ + building: "Time machine", + q: "All the time in the world.", + }); + Game.NewUnshackleBuilding({ + building: "Antimatter condenser", + q: "No scale too large or too little.", + }); + Game.NewUnshackleBuilding({ + building: "Prism", + q: "Brilliance has no upper limit.", + }); + Game.NewUnshackleBuilding({ + building: "Chancemaker", + q: "You make the rules.", + }); + Game.NewUnshackleBuilding({ + building: "Fractal engine", + q: "Uncontained.", + }); + Game.NewUnshackleBuilding({ + building: "Javascript console", + q: "Rewrite your reality.", + }); + Game.NewUnshackleBuilding({ + building: "Idleverse", + q: "Wait even faster.", + }); + Game.NewUnshackleBuilding({ + building: "Cortex baker", + q: "Nothing is real. Everything is permitted.", + }); + + Game.NewUnshackleUpgradeTier = function (obj) { + var tier = Game.Tiers[obj.tier]; + var upgrade = new Game.Upgrade( + obj.tier == 1 + ? "Unshackled flavor" + : "Unshackled " + tier.name.toLowerCase(), + loc( + "Unshackles all %1-tier upgrades, making them more powerful.
Only applies to unshackled buildings.", + cap(loc("[Tier]" + tier.name, 0, tier.name)) + ) + (EN ? "" + obj.q + "" : ""), + Math.pow(obj.tier, 7.5) * 10000000, + [10, tier.iconRow] + ); + upgrade.pool = "prestige"; + upgrade.parents = [ + obj.tier == 1 + ? "Label printer" + : Game.Tiers[obj.tier - 1].unshackleUpgrade, + ]; + tier.unshackleUpgrade = upgrade.name; + upgrade.posX = 750 - Math.sin(obj.tier * 0.3 + 2.3) * 400; + upgrade.posY = 200 + Math.cos(obj.tier * 0.3 + 2.3) * 400; + /*upgrade.parents=[obj.tier==1?'Label printer':Game.Tiers[obj.tier-1].unshackleUpgrade]; + tier.unshackleUpgrade=upgrade.name; + upgrade.posX=-900+Math.sin(obj.tier*0.3+2.3)*300; + upgrade.posY=-130+Math.cos(obj.tier*0.3+2.3)*400;*/ + return upgrade; + }; + + //"Unshackled [tier name]" + Game.NewUnshackleUpgradeTier({ + tier: 1, + q: "While the absence of flavoring may seem underwhelming, it allows innate aromas to be expressed at their most unadulterated.", + }); + Game.NewUnshackleUpgradeTier({ + tier: 2, + q: "Berrylium is a synthetic gem with a simple shine to it. Sticky to the touch and susceptible to melting in high heat, it is frequently used in the food industry rather than as adornment, as its atomic structure imparts it a vaguely fruity flavor.", + }); + Game.NewUnshackleUpgradeTier({ + tier: 3, + q: "Blueberrylium is a refinement of berrylium, sharing nearly the same chemical makeup save for a few supplemental esters. These affect its flavor as well as its visual spectrum resonance.", + }); + Game.NewUnshackleUpgradeTier({ + tier: 4, + q: "Raw chalcedhoney is found in complex nodules within the fossilized remains of ancient forests. Once purified, it becomes a semi-valuable stone with a pleasant, waxy smell.", + }); + Game.NewUnshackleUpgradeTier({ + tier: 5, + q: "Buttergold was famously invented by the chef son of two molecular physicists. Neither closely related to butter nor to gold, yet similar in nutritional value, this glimmering substance can be frozen and preserve its hardness at room temperature, only regaining its malleability when heated up.", + }); + Game.NewUnshackleUpgradeTier({ + tier: 6, + q: "Sugarmuck refers to the gradual crust that seems to form spontaneously in the vicinity of candy-making equipment. Long ignored by confectioners, its harvesting process was discovered simultaneously in multiple countries during a global beet shortage.", + }); + Game.NewUnshackleUpgradeTier({ + tier: 7, + q: "The striking taste of jetmint made it popular in the manufacture of various kinds of coffee-side treats until the awareness of its mild radioactivity became widespread. Today, its main uses are in cosmetics, owing to the refreshing sensation it produces on contact.", + }); + Game.NewUnshackleUpgradeTier({ + tier: 8, + q: "Cherrysilver is a patented alloy with peculiar aromatic properties; it is non-edible, but produces strong flavor responses while losing very little of its mass when licked, though this also leaves a harmless red tinge upon the tongue.", + }); + Game.NewUnshackleUpgradeTier({ + tier: 9, + q: "Hazelrald is a friable gemstone with complex green-brown inner reflections. It is considered ornamental in some cultures; in others, it may be consumed in small quantities as an upper-scale sweet.", + }); + Game.NewUnshackleUpgradeTier({ + tier: 10, + q: "While many get it mixed up with the trademarked snack of the same name made popular following its discovery, mooncandy is a very real mineral, first isolated within the space dust underneath astronaut boots. Left to its own devices in open air, a mooncandy crystal naturally spreads out and grows.", + }); + Game.NewUnshackleUpgradeTier({ + tier: 11, + q: "When you heat up the shimmering syrup oozing from mooncandy using a special caramelization process, you get astrofudge. Astrofudge is delicious and safe for humanoid consumption in certain quantities. Consult your local food safety agency for more details.", + }); + Game.NewUnshackleUpgradeTier({ + tier: 12, + q: 'Molecularly related to dairy, alabascream occurs naturally at high altitudes, forming in wispy filaments which were long indistinguishable from clouds. An expensive delight, it is also known as "pilots\' bane".', + }); + Game.NewUnshackleUpgradeTier({ + tier: 13, + q: "Iridyum shares little in common with any other material known to mankind. Rather than simply smelled, it can be tasted from a distance, though remaining in its presence too long is ill-advised. Some high-end underground megacomputers may incorporate iridyum as part of their electronic components.", + }); + Game.NewUnshackleUpgradeTier({ + tier: 14, + q: "Glucosmium is a glossy metal whose flavor matrix is bound to its current subjective chroma; in other words, its taste depends on which colors it's currently reflecting. Impractical to consume safely, its industrial applications range from transcontinental ballistics to paint varnish.", + }); + + new Game.Upgrade( + "Delicate touch", + loc( + "The shimmering veil is more resistant, and has a %1% chance not to break. It also gives +%2% more CpS.", + [10, 5] + ) + "It breaks so easily.", + 9999999999 * 15, + [23, 34] + ); + Game.last.pool = "prestige"; + Game.last.parents = ["Reinforced membrane"]; + new Game.Upgrade( + "Steadfast murmur", + loc( + "The shimmering veil is more resistant, and has a %1% chance not to break. It also gives +%2% more CpS.", + [10, 5] + ) + "Lend an ear and listen.", + 999999999999 * 15, + [23, 34] + ); + Game.last.pool = "prestige"; + Game.last.parents = ["Delicate touch"]; + new Game.Upgrade( + "Glittering edge", + loc( + "The shimmering veil is more resistant, and has a %1% chance not to break. It also gives +%2% more CpS.", + [10, 5] + ) + "Just within reach, yet at what cost?", + 99999999999999 * 15, + [23, 34] + ); + Game.last.pool = "prestige"; + Game.last.parents = ["Steadfast murmur"]; + + new Game.Upgrade( + "Distinguished wallpaper assortment", + (EN + ? loc("Contains more wallpapers for your background selector.") + : "") + + "Do you ever think about the physicality of this place? Are you putting up these wallpapers in your office or something? Where are you, anyway?", + 10000000, + [27, 5] + ); + Game.last.pool = "prestige"; + Game.last.parents = ["Basic wallpaper assortment"]; + + new Game.Upgrade( + "Sound test", + loc( + "Unlocks the jukebox, which allows you to play through every sound file in the game." + ) + "One two, one two. Is this thing on?", + 99999999999, + [31, 12] + ); + Game.last.pool = "prestige"; + Game.last.parents = [ + "Fanciful dairy selection", + "Distinguished wallpaper assortment", + "Golden cookie alert sound", + ]; + + order = 49900; + new Game.Upgrade( + "Jukebox", + loc("Play through the game's sound files!"), + 0, + [31, 12] + ); + Game.last.pool = "toggle"; + Game.jukebox = { + sounds: [ + "tick", + "tickOff", + "smallTick", + "toneTick", + "clickOn", + "clickOn2", + "clickOff", + "clickOff2", + "pop1", + "pop2", + "pop3", + "press", + //'switch', + "buy1", + "buy2", + "buy3", + "buy4", + "sell1", + "sell2", + "sell3", + "sell4", + "buyHeavenly", + "click1", + "click2", + "click3", + "click4", + "click5", + "click6", + "click7", + "clickb1", + "clickb2", + "clickb3", + "clickb4", + "clickb5", + "clickb6", + "clickb7", + "charging", + "thud", + //'cookieBreak', + "cymbalRev", + //'cymbalCrash', + "smallCymbalCrash", + "choir", + "chime", + "shimmerClick", + "jingle", + "jingleClick", + "fortune", + "till1", + "till2", + "till3", + "tillb1", + "tillb2", + "tillb3", + "harvest1", + "harvest2", + "harvest3", + "freezeGarden", + "growl", + "snarl", + "page", + "swooshIn", + "swooshOut", + "spell", + "spellFail", + "spirit", + "squish1", + "squish2", + "squish3", + "squish4", + "squeak1", + "squeak2", + "squeak3", + "squeak4", + "cashIn", + "cashIn2", + "cashOut", + "upgrade", + //'levelPrestige', + ], + tracks: [], //populated externally + onSound: 0, + onTrack: 0, + trackLooped: true, + trackAuto: true, + trackShuffle: false, + reset: function () { + var me = Game.jukebox; + me.onSound = 0; + me.onTrack = 0; + me.trackLooped = true; + me.trackAuto = true; + me.trackShuffle = false; + }, + setSound: function (id) { + if (id >= Game.jukebox.sounds.length) id = 0; + else if (id < 0) id = Game.jukebox.sounds.length - 1; + Game.jukebox.onSound = id; + if (l("jukeboxOnSound")) { + triggerAnim(l("jukeboxPlayer"), "pucker"); + l("jukeboxOnSound").innerHTML = + "• " + Game.jukebox.sounds[Game.jukebox.onSound] + " •"; + l("jukeboxOnSoundN").innerHTML = + Game.jukebox.onSound + 1 + "/" + Game.jukebox.sounds.length; + l("jukeboxSoundSelect").value = Game.jukebox.onSound; + } + PlaySound( + "snd/" + Game.jukebox.sounds[Game.jukebox.onSound] + ".mp3", + 1 + ); + }, + setTrack: function (id, dontPlay) { + if (id >= Game.jukebox.tracks.length) id = 0; + else if (id < 0) id = Game.jukebox.tracks.length - 1; + Game.jukebox.onTrack = id; + var data = + Music.tracks[Game.jukebox.tracks[Game.jukebox.onTrack]].audio; + if (l("jukeboxOnTrack")) { + triggerAnim(l("jukeboxPlayer"), "pucker"); + l("jukeboxOnTrack").innerHTML = + "• " + + cap(Game.jukebox.tracks[Game.jukebox.onTrack]) + + " •"; + l("jukeboxOnTrackAuthor").innerHTML = + Music.tracks[Game.jukebox.tracks[Game.jukebox.onTrack]].author; + l("jukeboxTrackSelect").value = Game.jukebox.onTrack; + if (data) { + var dur = data.duration + 1; + l("jukeboxMusicTotalTime").innerHTML = + Math.floor(dur / 60) + + ":" + + (Math.floor(dur % 60) < 10 ? "0" : "") + + Math.floor(dur % 60); + } + + if (!dontPlay && Music) { + Game.jukebox.trackAuto = false; + l("jukeboxMusicAuto").classList.add("off"); + Music.playTrack(Game.jukebox.tracks[Game.jukebox.onTrack]); + Music.setFilter(1); + Music.loop(Game.jukebox.trackLooped); + } + if (data.paused) l("jukeboxMusicPlay").innerHTML = loc("Play"); + else l("jukeboxMusicPlay").innerHTML = loc("Stop"); + Game.jukebox.updateMusicCurrentTime(); + } + }, + pressPlayMusic: function () { + if (!Music) return false; + var data = + Music.tracks[Game.jukebox.tracks[Game.jukebox.onTrack]].audio; + if (!data.paused) { + Music.pause(); + l("jukeboxMusicPlay").innerHTML = loc("Play"); + } else { + Music.unpause(); + l("jukeboxMusicPlay").innerHTML = loc("Stop"); + } + Game.jukebox.updateMusicCurrentTime(); + }, + pressLoopMusic: function () { + Game.jukebox.trackLooped = !Game.jukebox.trackLooped; + if (!Music) return false; + if (Game.jukebox.trackLooped) { + Music.loop(true); + l("jukeboxMusicLoop").classList.remove("off"); + } else { + Music.loop(false); + l("jukeboxMusicLoop").classList.add("off"); + } + }, + pressMusicAuto: function () { + Game.jukebox.trackAuto = !Game.jukebox.trackAuto; + if (!Music) return false; + if (Game.jukebox.trackAuto) { + Music.cue("play"); + l("jukeboxMusicAuto").classList.remove("off"); + } else { + /*Game.jukebox.setTrack(Game.jukebox.onTrack);*/ l( + "jukeboxMusicAuto" + ).classList.add("off"); + } + }, + pressMusicShuffle: function () { + Game.jukebox.trackShuffle = !Game.jukebox.trackShuffle; + }, + updateMusicCurrentTime: function (noLoop) { + if (!l("jukeboxMusicTime")) return false; + var data = + Music.tracks[Game.jukebox.tracks[Game.jukebox.onTrack]].audio; + l("jukeboxMusicPlay").innerHTML = data.paused + ? loc("Play") + : loc("Pause"); + l("jukeboxMusicTime").innerHTML = + Math.floor(data.currentTime / 60) + + ":" + + (Math.floor(data.currentTime % 60) < 10 ? "0" : "") + + Math.floor(data.currentTime % 60); + l("jukeboxMusicScrub").value = + (data.currentTime / data.duration) * 1000; + l("jukeboxMusicScrubElapsed").style.width = + Math.max(0, (data.currentTime / data.duration) * 288 - 4) + "px"; + if (!noLoop) setTimeout(Game.jukebox.updateMusicCurrentTime, 1000 / 2); + }, + musicScrub: function (time) { + var data = + Music.tracks[Game.jukebox.tracks[Game.jukebox.onTrack]].audio; + data.currentTime = (time / 1000) * data.duration; + Game.jukebox.updateMusicCurrentTime(); + }, + }; + if (Music) { + for (var i in Music.tracks) { + Game.jukebox.tracks.push(Music.tracks[i].name); + } + } + + Game.last.choicesFunction = function () { + var str = ""; + str += + '
'; + str += + '
' + + (Game.jukebox.onSound + 1) + + "/" + + Game.jukebox.sounds.length + + "
"; + str += + '
• ' + + Game.jukebox.sounds[Game.jukebox.onSound] + + " •
"; + str += + '
' + + '«' + + '' + + loc("Play") + + "" + + '»' + + "
"; + str += + '' + + loc("Random") + + ""; + if (App) { + var data = Music + ? Music.tracks[Game.jukebox.tracks[Game.jukebox.onTrack]].audio + : 0; + var dur = data ? data.duration + 1 : 0; + str += '
'; + str += + '
• ' + + cap(Game.jukebox.tracks[Game.jukebox.onTrack]) + + " •
"; + str += + '
' + + Music.tracks[Game.jukebox.tracks[Game.jukebox.onTrack]].author + + "
"; + str += + '
' + + '' + + (data + ? Math.floor(data.currentTime / 60) + + ":" + + (Math.floor(data.currentTime % 60) < 10 ? "0" : "") + + Math.floor(data.currentTime % 60) + : "") + + " | " + + '' + + (data && data.paused ? loc("Play") : loc("Pause")) + + "" + + '' + + loc("Loop") + + "" + + '| ' + + (data + ? Math.floor(dur / 60) + + ":" + + (Math.floor(dur % 60) < 10 ? "0" : "") + + Math.floor(dur % 60) + : "") + + "" + + "
"; + str += + '
'; + + str += + '' + + loc("Auto") + + '"; + + setTimeout(Game.jukebox.updateMusicCurrentTime, 500); + } + return str; + }; + + order = 10020; + Game.NewUpgradeCookie({ + name: "Dalgona cookies", + desc: "A popular Korean candy-like treat. One of the twisted games people play with these is to carefully extract the shape in the middle, which may entitle one to another free dalgona. Skilled players may perform this over and over until bankrupting the snack vendor.", + icon: [26, 34], + power: 5, + price: getCookiePrice(43), + }); + Game.NewUpgradeCookie({ + name: "Spicy cookies", + desc: "Containing chocolate chips prepared with hot peppers, just like the Aztecs used to make. These cookies are on the angry side.", + icon: [27, 34], + power: 5, + price: getCookiePrice(44), + }); + Game.NewUpgradeCookie({ + name: "Smile cookies", + desc: "As eyes are the windows to the soul, so too are these cookies' facial features a gaping opening unto their chocolatey innards. Is it happiness they feel? Or something less human?", + icon: [28, 34], + power: 5, + price: getCookiePrice(45), + }); + Game.NewUpgradeCookie({ + name: "Kolachy cookies", + desc: "Adapted from a type of Central European pastry; neatly folded to hold a spoonful of delicious jam, as a bashful little gift for your mouth.", + icon: [29, 34], + power: 5, + price: getCookiePrice(46), + }); + Game.NewUpgradeCookie({ + name: "Gomma cookies", + desc: "Surinamese cornflour cookies with sprinkles on top. The usage of corn imparts them a hint of chewy pizzazz - which you wouldn't get with wheat, a famously stuck-up grain.", + icon: [30, 34], + power: 5, + price: getCookiePrice(47), + }); + Game.NewUpgradeCookie({ + name: "Vegan cookies", + desc: "A vegan riff on the classic chocolate chip cookie recipe with a couple substitutions: the butter is now coconut oil, the eggs are cornstarch, and the suckling pig was cleverly replaced with wheat gluten. You can hardly tell.", + icon: [24, 35], + power: 5, + price: getCookiePrice(48), + }); + Game.NewUpgradeCookie({ + name: "Coyotas", + desc: "A wide, delicious cookie from Mexico, usually filled with sticky brown sugar. Not to be confused with coyotas, the result of the crossbreeding between a North American canine and a Japanese car manufacturer.", + icon: [21, 35], + power: 5, + price: getCookiePrice(49), + }); + Game.NewUpgradeCookie({ + name: "Frosted sugar cookies", + desc: "May be more style than substance, depending on the recipe. Nothing that hides itself under this much frosting should be trusted.", + icon: [22, 35], + power: 5, + price: getCookiePrice(50), + }); + Game.NewUpgradeCookie({ + name: "Marshmallow sandwich cookies", + desc: "S'mores' more civilized cousins: two regular chocolate chip cookies joined by a gooey, melty marshmallow. Theoretically one could assemble all kinds of other things this way. The mind races.", + icon: [31, 34], + power: 5, + price: getCookiePrice(51), + }); + + Game.NewUpgradeCookie({ + name: "Web cookies", + desc: + "The original recipe; named for the delicate pattern inscribed on their surface by the baking process. Eating these can tell a lot about someone. Invented by well-connected bakers, no doubt." + + (App + ? "
Only of any use in Cookie Clicker's web version, of course." + : ""), + icon: [25, 35], + power: App ? 0 : 5, + price: getCookiePrice(52), + }); + if (App) Game.last.pool = "debug"; + Game.NewUpgradeCookie({ + name: "Steamed cookies", + desc: + "Localized entirely within this gaming platform? Yes! Baked with the power of steam, in a touch of cutting-edge modernity not seen since the industrial revolution." + + (!App + ? "
Only of any use in Cookie Clicker's Steam version, of course." + : ""), + icon: [26, 35], + power: App ? 5 : 0, + price: getCookiePrice(52), + }); + if (!App) Game.last.pool = "debug"; + + order = 10050; + Game.NewUpgradeCookie({ + name: "Deep-fried cookie dough", + desc: "They'll fry anything these days. Drizzled in hot chocolate syrup, just like in state fairs. Spikes up your blood sugar AND your cholesterol!", + icon: [23, 35], + require: "Box of maybe cookies", + power: 5, + price: Math.pow(10, 47), + }); + + //end of upgrades + + Game.seasons = { + christmas: { + name: "Christmas", + start: "Christmas season has started!", + over: "Christmas season is over.", + trigger: "Festive biscuit", + }, + valentines: { + name: "Valentine's day", + start: "Valentine's day has started!", + over: "Valentine's day is over.", + trigger: "Lovesick biscuit", + }, + fools: { + name: "Business day", + start: "Business day has started!", + over: "Business day is over.", + trigger: "Fool's biscuit", + }, + easter: { + name: "Easter", + start: "Easter season has started!", + over: "Easter season is over.", + trigger: "Bunny biscuit", + }, + halloween: { + name: "Halloween", + start: "Halloween has started!", + over: "Halloween is over.", + trigger: "Ghostly biscuit", + }, + }; + if (!EN) { + for (var i in Game.seasons) { + var it = Game.seasons[i]; + it.name = loc(it.name); + it.start = loc("%1 has started!", it.name); + it.over = loc("%1 is over.", it.name); + } + } + + Game.listTinyOwnedUpgrades = function (arr) { + var str = ""; + for (var i = 0; i < arr.length; i++) { + if (Game.Has(arr[i])) { + var it = Game.Upgrades[arr[i]]; + str += tinyIcon(it.icon); + } + } + return str; + }; + + Game.santaDrops = [ + "Increased merriness", + "Improved jolliness", + "A lump of coal", + "An itchy sweater", + "Reindeer baking grounds", + "Weighted sleighs", + "Ho ho ho-flavored frosting", + "Season savings", + "Toy workshop", + "Naughty list", + "Santa's bottomless bag", + "Santa's helpers", + "Santa's legacy", + "Santa's milk and cookies", + ]; + + Game.GetHowManySantaDrops = function () { + var num = 0; + for (var i in Game.santaDrops) { + if (Game.Has(Game.santaDrops[i])) num++; + } + return num; + }; + + Game.reindeerDrops = [ + "Christmas tree biscuits", + "Snowflake biscuits", + "Snowman biscuits", + "Holly biscuits", + "Candy cane biscuits", + "Bell biscuits", + "Present biscuits", + ]; + Game.GetHowManyReindeerDrops = function () { + var num = 0; + for (var i in Game.reindeerDrops) { + if (Game.Has(Game.reindeerDrops[i])) num++; + } + return num; + }; + /*for (var i in Game.santaDrops) + { + Game.Upgrades[Game.santaDrops[i]].descFunc=function(){return '
You currently own '+Game.GetHowManySantaDrops()+'/'+Game.santaDrops.length+' of Santa\'s gifts.
'+this.ddesc;}; + }*/ + + Game.seasonDrops = Game.heartDrops + .concat(Game.halloweenDrops) + .concat(Game.easterEggs) + .concat(Game.santaDrops) + .concat(Game.reindeerDrops); + + Game.saySeasonSwitchUses = function () { + if (Game.seasonUses == 0) + return loc("You haven't switched seasons this ascension yet."); + return EN + ? "You've switched seasons " + + (Game.seasonUses == 1 + ? "once" + : Game.seasonUses == 2 + ? "twice" + : Game.seasonUses + " times") + + " this ascension." + : Game.seasonUses == 1 + ? loc("You've switched seasons once this ascension.") + : loc( + "You've switched seasons %1 times this ascension.", + Game.seasonUses + ); + }; + Game.Upgrades["Festive biscuit"].descFunc = function () { + return ( + '
' + + Game.listTinyOwnedUpgrades(Game.santaDrops) + + "

" + + (EN + ? "You've purchased " + + Game.GetHowManySantaDrops() + + "/" + + Game.santaDrops.length + + " of Santa's gifts." + : loc( + "Seasonal cookies purchased: %1.", + Game.GetHowManySantaDrops() + "/" + Game.santaDrops.length + )) + + '
' + + Game.listTinyOwnedUpgrades(Game.reindeerDrops) + + "

" + + (EN + ? "You've purchased " + + Game.GetHowManyReindeerDrops() + + "/" + + Game.reindeerDrops.length + + " reindeer cookies." + : loc( + "Reindeer cookies purchased: %1.", + Game.GetHowManyReindeerDrops() + "/" + Game.reindeerDrops.length + )) + + '
' + + Game.saySeasonSwitchUses() + + '
' + + this.ddesc + ); + }; + Game.Upgrades["Bunny biscuit"].descFunc = function () { + return ( + '
' + + Game.listTinyOwnedUpgrades(Game.easterEggs) + + "

" + + (EN + ? "You've purchased " + + Game.GetHowManyEggs() + + "/" + + Game.easterEggs.length + + " eggs." + : loc( + "Eggs purchased: %1.", + Game.GetHowManyEggs() + "/" + Game.easterEggs.length + )) + + '
' + + Game.saySeasonSwitchUses() + + '
' + + this.ddesc + ); + }; + Game.Upgrades["Ghostly biscuit"].descFunc = function () { + return ( + '
' + + Game.listTinyOwnedUpgrades(Game.halloweenDrops) + + "

" + + (EN + ? "You've purchased " + + Game.GetHowManyHalloweenDrops() + + "/" + + Game.halloweenDrops.length + + " halloween cookies." + : loc( + "Seasonal cookies purchased: %1.", + Game.GetHowManyHalloweenDrops() + "/" + Game.halloweenDrops.length + )) + + '
' + + Game.saySeasonSwitchUses() + + '
' + + this.ddesc + ); + }; + Game.Upgrades["Lovesick biscuit"].descFunc = function () { + return ( + '
' + + Game.listTinyOwnedUpgrades(Game.heartDrops) + + "

" + + (EN + ? "You've purchased " + + Game.GetHowManyHeartDrops() + + "/" + + Game.heartDrops.length + + " heart biscuits." + : loc( + "Seasonal cookies purchased: %1.", + Game.GetHowManyHeartDrops() + "/" + Game.heartDrops.length + )) + + '
' + + Game.saySeasonSwitchUses() + + '
' + + this.ddesc + ); + }; + Game.Upgrades["Fool's biscuit"].descFunc = function () { + return ( + '
' + + Game.saySeasonSwitchUses() + + '
' + + this.ddesc + ); + }; + + Game.computeSeasonPrices = function () { + for (var i in Game.seasons) { + Game.seasons[i].triggerUpgrade.priceFunc = function () { + var m = 1; + if (Game.hasGod) { + var godLvl = Game.hasGod("seasons"); + if (godLvl == 1) m *= 2; + else if (godLvl == 2) m *= 1.5; + else if (godLvl == 3) m *= 1.25; + } + //return Game.seasonTriggerBasePrice*Math.pow(2,Game.seasonUses)*m; + //return Game.cookiesPs*60*Math.pow(1.5,Game.seasonUses)*m; + return ( + Game.seasonTriggerBasePrice + + Game.unbuffedCps * 60 * Math.pow(1.5, Game.seasonUses) * m + ); + }; + } + }; + Game.computeSeasons = function () { + for (var i in Game.seasons) { + var me = Game.Upgrades[Game.seasons[i].trigger]; + Game.seasons[i].triggerUpgrade = me; + me.pool = "toggle"; + me.buyFunction = function () { + Game.seasonUses += 1; + Game.computeSeasonPrices(); + //Game.Lock(this.name); + for (var i in Game.seasons) { + var me = Game.Upgrades[Game.seasons[i].trigger]; + if (me.name != this.name) { + Game.Lock(me.name); + Game.Unlock(me.name); + } + } + if (Game.season != "" && Game.season != this.season) { + Game.Notify( + Game.seasons[Game.season].over + '
', + "", + Game.seasons[Game.season].triggerUpgrade.icon, + 4 + ); + } + Game.season = this.season; + Game.seasonT = Game.getSeasonDuration(); + Game.storeToRefresh = 1; + Game.upgradesToRebuild = 1; + Game.Objects["Grandma"].redraw(); + Game.Notify( + Game.seasons[this.season].start + '
', + "", + this.icon, + 4 + ); + }; + + me.clickFunction = (function (me) { + return function () { + //undo season + if ( + me.bought && + Game.season && + me == Game.seasons[Game.season].triggerUpgrade + ) { + me.lose(); + Game.Notify( + Game.seasons[Game.season].over, + "", + Game.seasons[Game.season].triggerUpgrade.icon + ); + if (Game.Has("Season switcher")) { + Game.Unlock(Game.seasons[Game.season].trigger); + Game.seasons[Game.season].triggerUpgrade.bought = 0; + } + + Game.upgradesToRebuild = 1; + Game.recalculateGains = 1; + Game.season = Game.baseSeason; + Game.seasonT = -1; + PlaySound("snd/tick.mp3"); + return false; + } else return true; + }; + })(me); + + me.displayFuncWhenOwned = function () { + return ( + '
' + + loc("Time remaining:") + + "
" + + (Game.Has("Eternal seasons") + ? loc("forever") + : Game.sayTime(Game.seasonT, -1)) + + '
(' + + loc("Click again to cancel season") + + ")
" + ); + }; + me.timerDisplay = (function (upgrade) { + return function () { + if ( + !Game.Upgrades[upgrade.name].bought || + Game.Has("Eternal seasons") + ) + return -1; + else return 1 - Game.seasonT / Game.getSeasonDuration(); + }; + })(me); + } + }; + Game.getSeasonDuration = function () { + return Game.fps * 60 * 60 * 24; + }; + Game.computeSeasons(); + + //alert untiered building upgrades + for (var i in Game.Upgrades) { + var me = Game.Upgrades[i]; + if ( + me.order >= 200 && + me.order < 2000 && + !me.tier && + me.name.indexOf("grandma") == -1 && + me.pool != "prestige" + ) + console.log(me.name + " has no tier."); + } + + Game.UpgradesByPool = { kitten: [] }; + for (var i in Game.Upgrades) { + if (!Game.UpgradesByPool[Game.Upgrades[i].pool]) + Game.UpgradesByPool[Game.Upgrades[i].pool] = []; + Game.UpgradesByPool[Game.Upgrades[i].pool].push(Game.Upgrades[i]); + if (Game.Upgrades[i].kitten) + Game.UpgradesByPool["kitten"].push(Game.Upgrades[i]); + } + + Game.PrestigeUpgrades = []; + for (var i in Game.Upgrades) { + if ( + Game.Upgrades[i].pool == "prestige" || + Game.Upgrades[i].pool == "prestigeDecor" + ) { + Game.PrestigeUpgrades.push(Game.Upgrades[i]); + if (Game.Upgrades[i].posX || Game.Upgrades[i].posY) + Game.Upgrades[i].placedByCode = true; + else { + Game.Upgrades[i].posX = 0; + Game.Upgrades[i].posY = 0; + } + if ( + Game.Upgrades[i].parents.length == 0 && + Game.Upgrades[i].name != "Legacy" + ) + Game.Upgrades[i].parents = ["Legacy"]; + for (var ii in Game.Upgrades[i].parents) { + Game.Upgrades[i].parents[ii] = + Game.Upgrades[Game.Upgrades[i].parents[ii]]; + } + } + } + + Game.goldenCookieUpgrades = [ + "Get lucky", + "Lucky day", + "Serendipity", + "Heavenly luck", + "Lasting fortune", + "Decisive fate", + "Lucky digit", + "Lucky number", + "Lucky payout", + "Golden goose egg", + ]; + + Game.cookieUpgrades = []; + for (var i in Game.Upgrades) { + var me = Game.Upgrades[i]; + if (me.pool == "cookie" || me.pseudoCookie) Game.cookieUpgrades.push(me); + if (me.tier) Game.Tiers[me.tier].upgrades.push(me); + } + for (var i in Game.UnlockAt) { + Game.Upgrades[Game.UnlockAt[i].name].unlockAt = Game.UnlockAt[i]; + } + for (var i in Game.Upgrades) { + if (Game.Upgrades[i].pool == "prestige") + Game.Upgrades[i].order = Game.Upgrades[i].id; + } + + /*var oldPrestigePrices={"Chimera":5764801,"Synergies Vol. I":2525,"Synergies Vol. II":252525,"Label printer":9999}; + for (var i in oldPrestigePrices){Game.Upgrades[i].basePrice=oldPrestigePrices[i];}*/ + + Game.UpgradePositions = { + 141: [118, -42], + 181: [-555, -93], + 253: [-237, -226], + 254: [-56, -234], + 255: [-149, -267], + 264: [68, 97], + 265: [157, 196], + 266: [287, 212], + 267: [413, 157], + 268: [480, 35], + 269: [-640, 42], + 270: [-471, -228], + 271: [-690, -178], + 272: [-591, -249], + 273: [-711, -58], + 274: [270, -328], + 275: [317, -439], + 276: [333, -556], + 277: [334, -676], + 278: [333, -796], + 279: [328, -922], + 280: [303, -1040], + 281: [194, -230], + 282: [-293, 156], + 283: [-335, 289], + 284: [-328, 422], + 285: [-247, 567], + 286: [-375, 579], + 287: [-296, 726], + 288: [-260, -396], + 289: [-375, -502], + 290: [-127, -415], + 291: [479, -739], + 292: [-399, -649], + 293: [-401, -806], + 323: [-76, 109], + 325: [198, -1153], + 326: [-270, -134], + 327: [-221, 261], + 328: [19, 247], + 329: [42, 402], + 353: [121, -326], + 354: [77, -436], + 355: [64, -548], + 356: [57, -673], + 357: [52, -793], + 358: [58, -924], + 359: [82, -1043], + 360: [49, 506], + 362: [156, 325], + 363: [-30, -30], + 364: [-238, -728], + 365: [-123, 423], + 368: [-55, -527], + 393: [196, -714], + 394: [197, -964], + 395: [-143, -140], + 396: [-244, -897], + 397: [-97, 641], + 408: [-204, -1036], + 409: [-72, -1152], + 410: [42, -1278], + 411: [-476, 105], + 412: [-522, 259], + 413: [-516, 433], + 449: [-367, -1113], + 450: [-306, -1216], + 451: [-184, -1241], + 495: [-408, -974], + 496: [200, 49], + 505: [411, -94], + 520: [-303, -12], + 537: [-795, -243], + 539: [-534, -1130], + 540: [-702, -1135], + 541: [-656, -1014], + 542: [-650, -1252], + 561: [298, -21], + 562: [32, 744], + 591: [148, 844], + 592: [-52, 858], + 643: [57, 616], + 646: [485, -882], + 647: [-102, 246], + 717: [621, -676], + 718: [618, -537], + 719: [-225, -520], + 720: [-150, -631], + 801: [-188, 920], + 802: [-344, 916], + 803: [-462, 848], + 804: [320, 350], + 805: [221, 486], + }; + + for (var i in Game.UpgradePositions) { + Game.UpgradesById[i].posX = Game.UpgradePositions[i][0]; + Game.UpgradesById[i].posY = Game.UpgradePositions[i][1]; + } + + /*===================================================================================== + ACHIEVEMENTS + =======================================================================================*/ + Game.Achievements = {}; + Game.AchievementsById = {}; + Game.AchievementsN = 0; + Game.AchievementsOwned = 0; + Game.Achievement = function (name, desc, icon) { + this.id = Game.AchievementsN; + this.name = name; + this.dname = this.name; + this.desc = desc; + this.baseDesc = this.desc; + this.icon = icon; + this.won = 0; + this.disabled = 0; + this.order = this.id; + if (order) this.order = order + this.id * 0.001; + this.pool = "normal"; + this.vanilla = Game.vanilla; + this.type = "achievement"; + + this.click = function () { + if (this.clickFunction) this.clickFunction(); + }; + Game.last = this; + Game.Achievements[this.name] = this; + Game.AchievementsById[this.id] = this; + Game.AchievementsN++; + return this; + }; + Game.Achievement.prototype.getType = function () { + return "Achievement"; + }; + + Game.Win = function (what) { + if (typeof what === "string") { + if (Game.Achievements[what]) { + var it = Game.Achievements[what]; + if (it.won == 0) { + var name = it.shortName ? it.shortName : it.dname; + it.won = 1; + Game.Notify( + loc("Achievement unlocked"), + '
' + + name + + "
", + it.icon + ); + Game.NotifyTooltip( + "function(){return Game.crateTooltip(Game.AchievementsById[" + + it.id + + "]);}" + ); + if (Game.CountsAsAchievementOwned(it.pool)) + Game.AchievementsOwned++; + Game.recalculateGains = 1; + if (App && it.vanilla) App.gotAchiev(it.id); + } + } + } else { + for (var i in what) { + Game.Win(what[i]); + } + } + }; + Game.RemoveAchiev = function (what) { + if (Game.Achievements[what]) { + if (Game.Achievements[what].won == 1) { + Game.Achievements[what].won = 0; + if (Game.CountsAsAchievementOwned(Game.Achievements[what].pool)) + Game.AchievementsOwned--; + Game.recalculateGains = 1; + } + } + }; + Game.Achievement.prototype.toggle = function () //cheating only + { + if (!this.won) { + Game.Win(this.name); + } else { + Game.RemoveAchiev(this.name); + } + if (Game.onMenu == "stats") Game.UpdateMenu(); + }; + + Game.CountsAsAchievementOwned = function (pool) { + if (pool == "" || pool == "normal") return true; + else return false; + }; + + Game.HasAchiev = function (what) { + return Game.Achievements[what] ? Game.Achievements[what].won : 0; + }; + + Game.TieredAchievement = function (name, desc, building, tier) { + var achiev = new Game.Achievement( + name, + loc( + "Have %1.", + loc( + "%1 " + Game.Objects[building].bsingle, + LBeautify(Game.Tiers[tier].achievUnlock) + ) + ) + desc, + Game.GetIcon(building, tier) + ); + Game.SetTier(building, tier); + return achiev; + }; + + Game.ProductionAchievement = function (name, building, tier, q, mult) { + var building = Game.Objects[building]; + var icon = [building.iconColumn, 22]; + var n = 12 + building.n + (mult || 0); + if (tier == 2) { + icon[1] = 23; + n += 7; + } else if (tier == 3) { + icon[1] = 24; + n += 14; + } + var pow = Math.pow(10, n); + var achiev = new Game.Achievement( + name, + loc("Make %1 just from %2.", [ + loc("%1 cookie", { n: pow, b: toFixed(pow) }), + building.plural, + ]) + (q ? "" + q + "" : ""), + icon + ); + building.productionAchievs.push({ pow: pow, achiev: achiev }); + return achiev; + }; + + Game.thresholdIcons = [ + 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 18, 19, 20, 21, 22, 23, 24, 25, 26, + 27, 28, 29, 21, 22, 23, 24, 25, 26, 27, 28, 29, 21, 22, 23, 24, 25, 26, + 27, 28, 29, 30, 31, 30, 31, + ]; + Game.BankAchievements = []; + Game.BankAchievement = function (name, q) { + var threshold = Math.pow( + 10, + Math.floor(Game.BankAchievements.length * 1.5 + 2) + ); + if (Game.BankAchievements.length == 0) threshold = 1; + var achiev = new Game.Achievement( + name, + loc( + "Bake %1 in one ascension.", + loc("%1 cookie", { n: threshold, b: toFixed(threshold) }) + ) + (q ? "" + q + "" : ""), + [ + Game.thresholdIcons[Game.BankAchievements.length], + Game.BankAchievements.length > 43 + ? 2 + : Game.BankAchievements.length > 32 + ? 1 + : Game.BankAchievements.length > 23 + ? 2 + : 5, + ] + ); + achiev.threshold = threshold; + achiev.order = 100 + Game.BankAchievements.length * 0.01; + Game.BankAchievements.push(achiev); + return achiev; + }; + Game.CpsAchievements = []; + Game.CpsAchievement = function (name, q) { + var threshold = Math.pow( + 10, + Math.floor(Game.CpsAchievements.length * 1.2) + ); + //if (Game.CpsAchievements.length==0) threshold=1; + var achiev = new Game.Achievement( + name, + loc( + "Bake %1 per second.", + loc("%1 cookie", { n: threshold, b: toFixed(threshold) }) + ) + (q ? "" + q + "" : ""), + [ + Game.thresholdIcons[Game.CpsAchievements.length], + Game.CpsAchievements.length > 43 + ? 2 + : Game.CpsAchievements.length > 32 + ? 1 + : Game.CpsAchievements.length > 23 + ? 2 + : 5, + ] + ); + achiev.threshold = threshold; + achiev.order = 200 + Game.CpsAchievements.length * 0.01; + Game.CpsAchievements.push(achiev); + return achiev; + }; + + //define achievements + //WARNING : do NOT add new achievements in between, this breaks the saves. Add them at the end ! + + var order = 0; //this is used to set the order in which the items are listed + + Game.BankAchievement("Wake and bake"); + Game.BankAchievement("Making some dough"); + Game.BankAchievement("So baked right now"); + Game.BankAchievement("Fledgling bakery"); + Game.BankAchievement("Affluent bakery"); + Game.BankAchievement("World-famous bakery"); + Game.BankAchievement("Cosmic bakery"); + Game.BankAchievement("Galactic bakery"); + Game.BankAchievement("Universal bakery"); + Game.BankAchievement("Timeless bakery"); + Game.BankAchievement("Infinite bakery"); + Game.BankAchievement("Immortal bakery"); + Game.BankAchievement("Don't stop me now"); + Game.BankAchievement("You can stop now"); + Game.BankAchievement("Cookies all the way down"); + Game.BankAchievement("Overdose"); + + Game.CpsAchievement("Casual baking"); + Game.CpsAchievement("Hardcore baking"); + Game.CpsAchievement("Steady tasty stream"); + Game.CpsAchievement("Cookie monster"); + Game.CpsAchievement("Mass producer"); + Game.CpsAchievement("Cookie vortex"); + Game.CpsAchievement("Cookie pulsar"); + Game.CpsAchievement("Cookie quasar"); + Game.CpsAchievement("Oh hey, you're still here"); + Game.CpsAchievement("Let's never bake again"); + + order = 30010; + new Game.Achievement( + "Sacrifice", + loc("Ascend with %1 baked.", loc("%1 cookie", LBeautify(1e6))) + + "Easy come, easy go.", + [11, 6] + ); + new Game.Achievement( + "Oblivion", + loc("Ascend with %1 baked.", loc("%1 cookie", LBeautify(1e9))) + + "Back to square one.", + [11, 6] + ); + new Game.Achievement( + "From scratch", + loc("Ascend with %1 baked.", loc("%1 cookie", LBeautify(1e12))) + + "It's been fun.", + [11, 6] + ); + + order = 11010; + new Game.Achievement( + "Neverclick", + loc("Make %1 by only having clicked %2 times.", [ + loc("%1 cookie", LBeautify(1e6)), + 15, + ]), + [12, 0] + ); //Game.last.pool='shadow'; + order = 1000; + new Game.Achievement( + "Clicktastic", + loc("Make %1 from clicking.", loc("%1 cookie", LBeautify(1e3))), + [11, 0] + ); + new Game.Achievement( + "Clickathlon", + loc("Make %1 from clicking.", loc("%1 cookie", LBeautify(1e5))), + [11, 1] + ); + new Game.Achievement( + "Clickolympics", + loc("Make %1 from clicking.", loc("%1 cookie", LBeautify(1e7))), + [11, 2] + ); + new Game.Achievement( + "Clickorama", + loc("Make %1 from clicking.", loc("%1 cookie", LBeautify(1e9))), + [11, 13] + ); + + order = 1050; + new Game.Achievement( + "Click", + loc("Have %1.", loc("%1 cursor", LBeautify(1))), + [0, 0] + ); + new Game.Achievement( + "Double-click", + loc("Have %1.", loc("%1 cursor", LBeautify(2))), + [0, 6] + ); + new Game.Achievement( + "Mouse wheel", + loc("Have %1.", loc("%1 cursor", LBeautify(50))), + [1, 6] + ); + new Game.Achievement( + "Of Mice and Men", + loc("Have %1.", loc("%1 cursor", LBeautify(100))), + [0, 1] + ); + new Game.Achievement( + "The Digital", + loc("Have %1.", loc("%1 cursor", LBeautify(200))), + [0, 2] + ); + + order = 1098; + new Game.Achievement( + "Just wrong", + loc("Sell a grandma.") + "I thought you loved me.", + [10, 9] + ); + order = 1100; + Game.TieredAchievement("Grandma's cookies", "", "Grandma", 1); + Game.TieredAchievement("Sloppy kisses", "", "Grandma", 2); + Game.TieredAchievement("Retirement home", "", "Grandma", 3); + + order = 1200; + Game.TieredAchievement("Bought the farm", "", "Farm", 1); + Game.TieredAchievement("Reap what you sow", "", "Farm", 2); + Game.TieredAchievement("Farm ill", "", "Farm", 3); + + order = 1400; + Game.TieredAchievement("Production chain", "", "Factory", 1); + Game.TieredAchievement("Industrial revolution", "", "Factory", 2); + Game.TieredAchievement("Global warming", "", "Factory", 3); + + order = 1300; + Game.TieredAchievement("You know the drill", "", "Mine", 1); + Game.TieredAchievement("Excavation site", "", "Mine", 2); + Game.TieredAchievement("Hollow the planet", "", "Mine", 3); + + order = 1500; + Game.TieredAchievement("Expedition", "", "Shipment", 1); + Game.TieredAchievement("Galactic highway", "", "Shipment", 2); + Game.TieredAchievement("Far far away", "", "Shipment", 3); + + order = 1600; + Game.TieredAchievement("Transmutation", "", "Alchemy lab", 1); + Game.TieredAchievement("Transmogrification", "", "Alchemy lab", 2); + Game.TieredAchievement("Gold member", "", "Alchemy lab", 3); + + order = 1700; + Game.TieredAchievement("A whole new world", "", "Portal", 1); + Game.TieredAchievement("Now you're thinking", "", "Portal", 2); + Game.TieredAchievement("Dimensional shift", "", "Portal", 3); + + order = 1800; + Game.TieredAchievement("Time warp", "", "Time machine", 1); + Game.TieredAchievement("Alternate timeline", "", "Time machine", 2); + Game.TieredAchievement("Rewriting history", "", "Time machine", 3); + + order = 7000; + new Game.Achievement( + "One with everything", + loc("Have at least %1 of every building.", 1), + [2, 7] + ); + new Game.Achievement( + "Mathematician", + loc( + "Have at least 1 of the most expensive object, 2 of the second-most expensive, 4 of the next and so on (capped at %1).", + 128 + ), + [23, 12] + ); + new Game.Achievement( + "Base 10", + loc( + "Have at least 10 of the most expensive object, 20 of the second-most expensive, 30 of the next and so on." + ), + [23, 12] + ); + + order = 10000; + new Game.Achievement( + "Golden cookie", + loc("Click a golden cookie."), + [10, 14] + ); + new Game.Achievement( + "Lucky cookie", + loc("Click %1.", loc("%1 golden cookie", LBeautify(7))), + [22, 6] + ); + new Game.Achievement( + "A stroke of luck", + loc("Click %1.", loc("%1 golden cookie", LBeautify(27))), + [23, 6] + ); + + order = 30200; + new Game.Achievement( + "Cheated cookies taste awful", + loc("Hack in some cookies."), + [10, 6] + ); + Game.last.pool = "shadow"; + order = 11010; + new Game.Achievement( + "Uncanny clicker", + loc("Click really, really fast.") + "Well I'll be!", + [12, 0] + ); + + order = 5000; + new Game.Achievement( + "Builder", + loc("Own %1.", loc("%1 building", LBeautify(100))), + [2, 6] + ); + new Game.Achievement( + "Architect", + loc("Own %1.", loc("%1 building", LBeautify(500))), + [3, 6] + ); + order = 6000; + new Game.Achievement( + "Enhancer", + loc("Purchase %1.", loc("%1 upgrade", LBeautify(20))), + [9, 0] + ); + new Game.Achievement( + "Augmenter", + loc("Purchase %1.", loc("%1 upgrade", LBeautify(50))), + [9, 1] + ); + + order = 11000; + new Game.Achievement( + "Cookie-dunker", + loc("Dunk the cookie.") + "You did it!", + [1, 8] + ); + + order = 10000; + new Game.Achievement( + "Fortune", + loc("Click %1.", loc("%1 golden cookie", LBeautify(77))) + + "You should really go to bed.", + [24, 6] + ); + order = 31000; + new Game.Achievement( + "True Neverclick", + loc( + "Make %1 with no cookie clicks.", + loc("%1 cookie", LBeautify(1e6)) + ) + "This kinda defeats the whole purpose, doesn't it?", + [12, 0] + ); + Game.last.pool = "shadow"; + + order = 20000; + new Game.Achievement( + "Elder nap", + loc("Appease the grandmatriarchs at least once.") + + "we
are
eternal
", + [8, 9] + ); + new Game.Achievement( + "Elder slumber", + loc("Appease the grandmatriarchs at least %1 times.", 5) + + "our mind
outlives
the universe
", + [8, 9] + ); + + order = 1098; + new Game.Achievement( + "Elder", + loc("Own at least %1 grandma types.", 7), + [10, 9] + ); + + order = 20000; + new Game.Achievement( + "Elder calm", + loc("Declare a covenant with the grandmatriarchs.") + + "we
have
fed
", + [8, 9] + ); + + order = 5000; + new Game.Achievement( + "Engineer", + loc("Own %1.", loc("%1 building", LBeautify(1000))), + [4, 6] + ); + + order = 10000; + new Game.Achievement( + "Leprechaun", + loc("Click %1.", loc("%1 golden cookie", LBeautify(777))), + [25, 6] + ); + new Game.Achievement( + "Black cat's paw", + loc("Click %1.", loc("%1 golden cookie", LBeautify(7777))), + [26, 6] + ); + + order = 30050; + new Game.Achievement( + "Nihilism", + loc("Ascend with %1 baked.", loc("%1 cookie", LBeautify(1e15))) + + "There are many things
that need to be erased
", + [11, 7] + ); + + order = 1900; + Game.TieredAchievement("Antibatter", "", "Antimatter condenser", 1); + Game.TieredAchievement("Quirky quarks", "", "Antimatter condenser", 2); + Game.TieredAchievement("It does matter!", "", "Antimatter condenser", 3); + + order = 6000; + new Game.Achievement( + "Upgrader", + loc("Purchase %1.", loc("%1 upgrade", LBeautify(100))), + [9, 2] + ); + + order = 7000; + new Game.Achievement( + "Centennial", + loc("Have at least %1 of everything.", 100), + [6, 6] + ); + + order = 30500; + new Game.Achievement( + "Hardcore", + loc( + "Get to %1 baked with no upgrades purchased.", + loc("%1 cookie", LBeautify(1e9)) + ), + [12, 6] + ); //Game.last.pool='shadow'; + + order = 30600; + new Game.Achievement( + "Speed baking I", + loc("Get to %1 baked in %2.", [ + loc("%1 cookie", LBeautify(1e6)), + Game.sayTime(60 * 35 * Game.fps), + ]), + [12, 5] + ); + Game.last.pool = "shadow"; + new Game.Achievement( + "Speed baking II", + loc("Get to %1 baked in %2.", [ + loc("%1 cookie", LBeautify(1e6)), + Game.sayTime(60 * 25 * Game.fps), + ]), + [13, 5] + ); + Game.last.pool = "shadow"; + new Game.Achievement( + "Speed baking III", + loc("Get to %1 baked in %2.", [ + loc("%1 cookie", LBeautify(1e6)), + Game.sayTime(60 * 15 * Game.fps), + ]), + [14, 5] + ); + Game.last.pool = "shadow"; + + order = 61000; + var achiev = new Game.Achievement( + "Getting even with the oven", + EN + ? "Defeat the Sentient Furnace in the factory dungeons." + : "???", + [12, 7] + ); + Game.last.pool = "dungeon"; + var achiev = new Game.Achievement( + "Now this is pod-smashing", + EN + ? "Defeat the Ascended Baking Pod in the factory dungeons." + : "???", + [12, 7] + ); + Game.last.pool = "dungeon"; + var achiev = new Game.Achievement( + "Chirped out", + EN + ? "Find and defeat Chirpy, the dysfunctionning alarm bot." + : "???", + [13, 7] + ); + Game.last.pool = "dungeon"; + var achiev = new Game.Achievement( + "Follow the white rabbit", + EN ? "Find and defeat the elusive sugar bunny." : "???", + [14, 7] + ); + Game.last.pool = "dungeon"; + + order = 1000; + new Game.Achievement( + "Clickasmic", + loc("Make %1 from clicking.", loc("%1 cookie", LBeautify(1e11))), + [11, 14] + ); + + order = 1100; + Game.TieredAchievement("Friend of the ancients", "", "Grandma", 4); + Game.TieredAchievement("Ruler of the ancients", "", "Grandma", 5); + + order = 32000; + new Game.Achievement( + "Wholesome", + loc("Unlock 100% of your heavenly chips power."), + [15, 7] + ); + + order = 33000; + new Game.Achievement( + "Just plain lucky", + loc( + "You have 1 chance in %1 every second of earning this achievement.", + Beautify(1000000) + ), + [15, 6] + ); + Game.last.pool = "shadow"; + + order = 21000; + new Game.Achievement( + "Itchscratcher", + loc("Burst 1 wrinkler."), + [19, 8] + ); + new Game.Achievement( + "Wrinklesquisher", + loc("Burst %1 wrinklers.", 50), + [19, 8] + ); + new Game.Achievement( + "Moistburster", + loc("Burst %1 wrinklers.", 200), + [19, 8] + ); + + order = 22000; + new Game.Achievement( + "Spooky cookies", + loc( + 'Unlock every Halloween-themed cookie.
Owning this achievement makes Halloween-themed cookies drop more frequently in future playthroughs.' + ), + [12, 8] + ); + + order = 22100; + new Game.Achievement( + "Coming to town", + loc("Reach Santa's 7th form."), + [18, 9] + ); + new Game.Achievement( + "All hail Santa", + loc("Reach Santa's final form."), + [19, 10] + ); + new Game.Achievement( + "Let it snow", + loc( + 'Unlock every Christmas-themed cookie.
Owning this achievement makes Christmas-themed cookies drop more frequently in future playthroughs.' + ), + [19, 9] + ); + new Game.Achievement("Oh deer", loc("Pop 1 reindeer."), [12, 9]); + new Game.Achievement( + "Sleigh of hand", + loc("Pop %1 reindeer.", 50), + [12, 9] + ); + new Game.Achievement( + "Reindeer sleigher", + loc("Pop %1 reindeer.", 200), + [12, 9] + ); + + order = 1200; + Game.TieredAchievement("Perfected agriculture", "", "Farm", 4); + order = 1400; + Game.TieredAchievement("Ultimate automation", "", "Factory", 4); + order = 1300; + Game.TieredAchievement("Can you dig it", "", "Mine", 4); + order = 1500; + Game.TieredAchievement("Type II civilization", "", "Shipment", 4); + order = 1600; + Game.TieredAchievement("Gild wars", "", "Alchemy lab", 4); + order = 1700; + Game.TieredAchievement("Brain-split", "", "Portal", 4); + order = 1800; + Game.TieredAchievement("Time duke", "", "Time machine", 4); + order = 1900; + Game.TieredAchievement("Molecular maestro", "", "Antimatter condenser", 4); + + order = 2000; + Game.TieredAchievement("Lone photon", "", "Prism", 1); + Game.TieredAchievement("Dazzling glimmer", "", "Prism", 2); + Game.TieredAchievement("Blinding flash", "", "Prism", 3); + Game.TieredAchievement("Unending glow", "", "Prism", 4); + + order = 5000; + new Game.Achievement( + "Lord of Constructs", + loc("Own %1.", loc("%1 building", LBeautify(2500))) + + "He saw the vast plains stretching ahead of him, and he said : let there be civilization.", + [5, 6] + ); + order = 6000; + new Game.Achievement( + "Lord of Progress", + loc("Purchase %1.", loc("%1 upgrade", LBeautify(200))) + + "One can always do better. But should you?", + [9, 14] + ); + order = 7002; + new Game.Achievement( + "Bicentennial", + loc("Have at least %1 of everything.", 200) + + "You crazy person.", + [8, 6] + ); + + order = 22300; + new Game.Achievement( + "Lovely cookies", + loc("Unlock every Valentine-themed cookie."), + [20, 3] + ); + + order = 7001; + new Game.Achievement( + "Centennial and a half", + loc("Have at least %1 of everything.", 150), + [7, 6] + ); + + order = 11000; + new Game.Achievement( + "Tiny cookie", + loc("Click the tiny cookie.") + + "These aren't the cookies
you're clicking for.
", + [0, 5] + ); + + order = 400000; + new Game.Achievement( + "You win a cookie", + loc( + "This is for baking %1 and making it on the local news.", + loc("%1 cookie", LBeautify(1e14)) + ) + "We're all so proud of you.", + [10, 0] + ); + + order = 1070; + Game.ProductionAchievement("Click delegator", "Cursor", 1, 0, 7); + order = 1120; + Game.ProductionAchievement("Gushing grannies", "Grandma", 1, 0, 6); + order = 1220; + Game.ProductionAchievement("I hate manure", "Farm", 1); + order = 1320; + Game.ProductionAchievement("Never dig down", "Mine", 1); + order = 1420; + Game.ProductionAchievement("The incredible machine", "Factory", 1); + order = 1520; + Game.ProductionAchievement("And beyond", "Shipment", 1); + order = 1620; + Game.ProductionAchievement("Magnum Opus", "Alchemy lab", 1); + order = 1720; + Game.ProductionAchievement("With strange eons", "Portal", 1); + order = 1820; + Game.ProductionAchievement("Spacetime jigamaroo", "Time machine", 1); + order = 1920; + Game.ProductionAchievement("Supermassive", "Antimatter condenser", 1); + order = 2020; + Game.ProductionAchievement("Praise the sun", "Prism", 1); + + order = 1000; + new Game.Achievement( + "Clickageddon", + loc("Make %1 from clicking.", loc("%1 cookie", LBeautify(1e13))), + [11, 15] + ); + new Game.Achievement( + "Clicknarok", + loc("Make %1 from clicking.", loc("%1 cookie", LBeautify(1e15))), + [11, 16] + ); + + order = 1050; + new Game.Achievement( + "Extreme polydactyly", + loc("Have %1.", loc("%1 cursor", LBeautify(300))), + [0, 13] + ); + new Game.Achievement( + "Dr. T", + loc("Have %1.", loc("%1 cursor", LBeautify(400))), + [0, 14] + ); + + order = 1100; + Game.TieredAchievement( + "The old never bothered me anyway", + "", + "Grandma", + 6 + ); + order = 1200; + Game.TieredAchievement("Homegrown", "", "Farm", 5); + order = 1400; + Game.TieredAchievement("Technocracy", "", "Factory", 5); + order = 1300; + Game.TieredAchievement("The center of the Earth", "", "Mine", 5); + order = 1500; + Game.TieredAchievement("We come in peace", "", "Shipment", 5); + order = 1600; + Game.TieredAchievement("The secrets of the universe", "", "Alchemy lab", 5); + order = 1700; + Game.TieredAchievement("Realm of the Mad God", "", "Portal", 5); + order = 1800; + Game.TieredAchievement("Forever and ever", "", "Time machine", 5); + order = 1900; + Game.TieredAchievement("Walk the planck", "", "Antimatter condenser", 5); + order = 2000; + Game.TieredAchievement("Rise and shine", "", "Prism", 5); + + order = 30200; + new Game.Achievement( + "God complex", + loc( + 'Name yourself Orteil.
Note: usurpers incur a -%1% CpS penalty until they rename themselves something else.
', + 1 + ) + "But that's not you, is it?", + [17, 5] + ); + Game.last.pool = "shadow"; + new Game.Achievement( + "Third-party", + loc("Use an add-on.") + + "Some find vanilla to be the most boring flavor.", + [16, 5] + ); + Game.last.pool = "shadow"; //if you're making a mod, add a Game.Win('Third-party') somewhere in there! + + order = 30050; + new Game.Achievement( + "Dematerialize", + loc("Ascend with %1 baked.", loc("%1 cookie", LBeautify(1e18))) + + "Presto!
...where'd the cookies go?
", + [11, 7] + ); + new Game.Achievement( + "Nil zero zilch", + loc("Ascend with %1 baked.", loc("%1 cookie", LBeautify(1e21))) + + "To summarize : really not very much at all.", + [11, 7] + ); + new Game.Achievement( + "Transcendence", + loc("Ascend with %1 baked.", loc("%1 cookie", LBeautify(1e24))) + + "Your cookies are now on a higher plane of being.", + [11, 8] + ); + new Game.Achievement( + "Obliterate", + loc("Ascend with %1 baked.", loc("%1 cookie", LBeautify(1e27))) + + "Resistance is futile, albeit entertaining.", + [11, 8] + ); + new Game.Achievement( + "Negative void", + loc("Ascend with %1 baked.", loc("%1 cookie", LBeautify(1e30))) + + "You now have so few cookies that it's almost like you have a negative amount of them.", + [11, 8] + ); + + order = 22400; + new Game.Achievement( + "The hunt is on", + loc("Unlock 1 egg."), + [1, 12] + ); + new Game.Achievement( + "Egging on", + loc("Unlock %1 eggs.", 7), + [4, 12] + ); + new Game.Achievement( + "Mass Easteria", + loc("Unlock %1 eggs.", 14), + [7, 12] + ); + new Game.Achievement( + "Hide & seek champion", + loc( + 'Unlock all the eggs.
Owning this achievement makes eggs drop more frequently in future playthroughs.' + ), + [13, 12] + ); + + order = 11000; + new Game.Achievement( + "What's in a name", + loc("Give your bakery a name."), + [15, 9] + ); + + order = 1425; + Game.TieredAchievement("Pretty penny", "", "Bank", 1); + Game.TieredAchievement("Fit the bill", "", "Bank", 2); + Game.TieredAchievement("A loan in the dark", "", "Bank", 3); + Game.TieredAchievement("Need for greed", "", "Bank", 4); + Game.TieredAchievement("It's the economy, stupid", "", "Bank", 5); + order = 1450; + Game.TieredAchievement("Your time to shrine", "", "Temple", 1); + Game.TieredAchievement("Shady sect", "", "Temple", 2); + Game.TieredAchievement("New-age cult", "", "Temple", 3); + Game.TieredAchievement("Organized religion", "", "Temple", 4); + Game.TieredAchievement("Fanaticism", "", "Temple", 5); + order = 1475; + Game.TieredAchievement("Bewitched", "", "Wizard tower", 1); + Game.TieredAchievement("The sorcerer's apprentice", "", "Wizard tower", 2); + Game.TieredAchievement("Charms and enchantments", "", "Wizard tower", 3); + Game.TieredAchievement("Curses and maledictions", "", "Wizard tower", 4); + Game.TieredAchievement("Magic kingdom", "", "Wizard tower", 5); + + order = 1445; + Game.ProductionAchievement("Vested interest", "Bank", 1); + order = 1470; + Game.ProductionAchievement("New world order", "Temple", 1); + order = 1495; + Game.ProductionAchievement("Hocus pocus", "Wizard tower", 1); + + order = 1070; + Game.ProductionAchievement("Finger clickin' good", "Cursor", 2, 0, 7); + order = 1120; + Game.ProductionAchievement("Panic at the bingo", "Grandma", 2, 0, 6); + order = 1220; + Game.ProductionAchievement("Rake in the dough", "Farm", 2); + order = 1320; + Game.ProductionAchievement("Quarry on", "Mine", 2); + order = 1420; + Game.ProductionAchievement("Yes I love technology", "Factory", 2); + order = 1445; + Game.ProductionAchievement("Paid in full", "Bank", 2); + order = 1470; + Game.ProductionAchievement("Church of Cookiology", "Temple", 2); + order = 1495; + Game.ProductionAchievement( + "Too many rabbits, not enough hats", + "Wizard tower", + 2 + ); + order = 1520; + Game.ProductionAchievement("The most precious cargo", "Shipment", 2); + order = 1620; + Game.ProductionAchievement("The Aureate", "Alchemy lab", 2); + order = 1720; + Game.ProductionAchievement("Ever more hideous", "Portal", 2); + order = 1820; + Game.ProductionAchievement("Be kind, rewind", "Time machine", 2); + order = 1920; + Game.ProductionAchievement("Infinitesimal", "Antimatter condenser", 2); + order = 2020; + Game.ProductionAchievement("A still more glorious dawn", "Prism", 2); + + order = 30000; + new Game.Achievement("Rebirth", loc("Ascend at least once."), [21, 6]); + + order = 11000; + new Game.Achievement( + "Here you go", + loc("Click this achievement's slot.") + + "All you had to do was ask.", + [1, 7] + ); + Game.last.clickFunction = function () { + if (!Game.HasAchiev("Here you go")) { + PlaySound("snd/tick.mp3"); + Game.Win("Here you go"); + } + }; + + order = 30000; + new Game.Achievement( + "Resurrection", + loc("Ascend %1 times.", 10), + [21, 6] + ); + new Game.Achievement( + "Reincarnation", + loc("Ascend %1 times.", 100), + [21, 6] + ); + new Game.Achievement( + "Endless cycle", + loc("Ascend %1 times.", 1000) + "Oh hey, it's you again.", + [2, 7] + ); + Game.last.pool = "shadow"; + + order = 1100; + Game.TieredAchievement("The agemaster", "", "Grandma", 7); + Game.TieredAchievement("To oldly go", "", "Grandma", 8); + + order = 1200; + Game.TieredAchievement("Gardener extraordinaire", "", "Farm", 6); + order = 1300; + Game.TieredAchievement("Tectonic ambassador", "", "Mine", 6); + order = 1400; + Game.TieredAchievement("Rise of the machines", "", "Factory", 6); + order = 1425; + Game.TieredAchievement("Acquire currency", "", "Bank", 6); + order = 1450; + Game.TieredAchievement("Zealotry", "", "Temple", 6); + order = 1475; + Game.TieredAchievement("The wizarding world", "", "Wizard tower", 6); + order = 1500; + Game.TieredAchievement("Parsec-masher", "", "Shipment", 6); + order = 1600; + Game.TieredAchievement("The work of a lifetime", "", "Alchemy lab", 6); + order = 1700; + Game.TieredAchievement("A place lost in time", "", "Portal", 6); + order = 1800; + Game.TieredAchievement("Heat death", "", "Time machine", 6); + order = 1900; + Game.TieredAchievement("Microcosm", "", "Antimatter condenser", 6); + order = 2000; + Game.TieredAchievement("Bright future", "", "Prism", 6); + + order = 25000; + new Game.Achievement( + "Here be dragon", + loc("Complete your dragon's training."), + [21, 12] + ); + + Game.BankAchievement("How?"); + Game.BankAchievement("The land of milk and cookies"); + Game.BankAchievement( + "He who controls the cookies controls the universe", + "The milk must flow!" + ); + Game.BankAchievement("Tonight on Hoarders"); + Game.BankAchievement("Are you gonna eat all that?"); + Game.BankAchievement("We're gonna need a bigger bakery"); + Game.BankAchievement( + "In the mouth of madness", + "A cookie is just what we tell each other it is." + ); + Game.BankAchievement( + 'Brought to you by the letter
' + ); + + Game.CpsAchievement("A world filled with cookies"); + Game.CpsAchievement( + "When this baby hits " + + Beautify(10000000000000 * 60 * 60) + + " cookies per hour" + ); + Game.CpsAchievement("Fast and delicious"); + Game.CpsAchievement( + "Cookiehertz : a really, really tasty hertz", + "Tastier than a hertz donut, anyway." + ); + Game.CpsAchievement("Woops, you solved world hunger"); + Game.CpsAchievement( + "Turbopuns", + 'Mother Nature will be like "slowwwww dowwwwwn".' + ); + Game.CpsAchievement("Faster menner"); + Game.CpsAchievement("And yet you're still hungry"); + Game.CpsAchievement("The Abakening"); + Game.CpsAchievement( + "There's really no hard limit to how long these achievement names can be and to be quite honest I'm rather curious to see how far we can go.
Adolphus W. Green (1844–1917) started as the Principal of the Groton School in 1864. By 1865, he became second assistant librarian at the New York Mercantile Library; from 1867 to 1869, he was promoted to full librarian. From 1869 to 1873, he worked for Evarts, Southmayd & Choate, a law firm co-founded by William M. Evarts, Charles Ferdinand Southmayd and Joseph Hodges Choate. He was admitted to the New York State Bar Association in 1873.
Anyway, how's your day been?" + ); //Game.last.shortName='There\'s really no hard limit to how long these achievement names can be and to be quite honest I\'m [...]'; + Game.CpsAchievement("Fast", "Wow!"); + + order = 7002; + new Game.Achievement( + "Bicentennial and a half", + loc("Have at least %1 of everything.", 250) + + "Keep on truckin'.", + [9, 6] + ); + + order = 11000; + new Game.Achievement( + "Tabloid addiction", + loc("Click on the news ticker %1 times.", 50) + + "Page 6: Mad individual clicks on picture of pastry in a futile attempt to escape boredom!
Also page 6: British parliament ate my baby!
", + [27, 7] + ); + + order = 1000; + new Game.Achievement( + "Clickastrophe", + loc("Make %1 from clicking.", loc("%1 cookie", LBeautify(1e17))), + [11, 17] + ); + new Game.Achievement( + "Clickataclysm", + loc("Make %1 from clicking.", loc("%1 cookie", LBeautify(1e19))), + [11, 18] + ); + + order = 1050; + new Game.Achievement( + "Thumbs, phalanges, metacarpals", + loc("Have %1.", loc("%1 cursor", LBeautify(500))) + + "& KNUCKLES", + [0, 15] + ); + + order = 6002; + new Game.Achievement( + "Polymath", + loc("Own %1 upgrades and %2 buildings.", [300, 4000]) + + "Excellence doesn't happen overnight - it usually takes a good couple days.", + [29, 7] + ); + + order = 1099; + new Game.Achievement( + "The elder scrolls", + loc("Own a combined %1 %2 and %3.", [ + 777, + loc("grandmas"), + loc("cursors"), + ]) + "Let me guess. Someone stole your cookie.", + [10, 9] + ); + + order = 30050; + new Game.Achievement( + "To crumbs, you say?", + loc("Ascend with %1 baked.", loc("%1 cookie", LBeautify(1e33))) + + "Very well then.", + [29, 6] + ); + + order = 1200; + Game.TieredAchievement("Seedy business", "", "Farm", 7); + order = 1300; + Game.TieredAchievement("Freak fracking", "", "Mine", 7); + order = 1400; + Game.TieredAchievement("Modern times", "", "Factory", 7); + order = 1425; + Game.TieredAchievement("The nerve of war", "", "Bank", 7); + order = 1450; + Game.TieredAchievement("Wololo", "", "Temple", 7); + order = 1475; + Game.TieredAchievement( + "And now for my next trick, I'll need a volunteer from the audience", + "", + "Wizard tower", + 7 + ); + order = 1500; + Game.TieredAchievement("It's not delivery", "", "Shipment", 7); + order = 1600; + Game.TieredAchievement("Gold, Jerry! Gold!", "", "Alchemy lab", 7); + order = 1700; + Game.TieredAchievement("Forbidden zone", "", "Portal", 7); + order = 1800; + Game.TieredAchievement( + "cookie clicker forever and forever a hundred years cookie clicker, all day long forever, forever a hundred times, over and over cookie clicker adventures dot com", + "", + "Time machine", + 7 + ); + order = 1900; + Game.TieredAchievement( + "Scientists baffled everywhere", + "", + "Antimatter condenser", + 7 + ); + order = 2000; + Game.TieredAchievement("Harmony of the spheres", "", "Prism", 7); + + order = 35000; + new Game.Achievement( + "Last Chance to See", + loc("Burst the near-extinct shiny wrinkler.") + + "You monster!", + [24, 12] + ); + Game.last.pool = "shadow"; + + order = 10000; + new Game.Achievement( + "Early bird", + loc("Click a golden cookie less than 1 second after it spawns."), + [10, 14] + ); + new Game.Achievement( + "Fading luck", + loc("Click a golden cookie less than 1 second before it dies."), + [10, 14] + ); + + order = 22100; + new Game.Achievement( + "Eldeer", + loc("Pop a reindeer during an elder frenzy."), + [12, 9] + ); + + order = 21100; + new Game.Achievement( + "Dude, sweet", + loc("Harvest %1 coalescing sugar lumps.", 7), + [24, 14] + ); + new Game.Achievement( + "Sugar rush", + loc("Harvest %1 coalescing sugar lumps.", 30), + [26, 14] + ); + new Game.Achievement( + "Year's worth of cavities", + loc("Harvest %1 coalescing sugar lumps.", 365) + + "My lumps my lumps my lumps.", + [29, 14] + ); + new Game.Achievement( + "Hand-picked", + loc("Successfully harvest a coalescing sugar lump before it's ripe."), + [28, 14] + ); + new Game.Achievement( + "Sugar sugar", + loc("Harvest a bifurcated sugar lump."), + [29, 15] + ); + new Game.Achievement( + "All-natural cane sugar", + loc("Harvest a golden sugar lump."), + [29, 16] + ); + Game.last.pool = "shadow"; + new Game.Achievement( + "Sweetmeats", + loc("Harvest a meaty sugar lump."), + [29, 17] + ); + + order = 7002; + new Game.Achievement( + "Tricentennial", + loc("Have at least %1 of everything.", 300) + + "Can't stop, won't stop. Probably should stop, though.", + [29, 12] + ); + + Game.CpsAchievement("Knead for speed", "How did we not make that one yet?"); + Game.CpsAchievement( + "Well the cookies start coming and they don't stop coming", + "Didn't make sense not to click for fun." + ); + Game.CpsAchievement( + "I don't know if you've noticed but all these icons are very slightly off-center" + ); + Game.CpsAchievement( + "The proof of the cookie is in the baking", + "How can you have any cookies if you don't bake your dough?" + ); + Game.CpsAchievement("If it's worth doing, it's worth overdoing"); + + Game.BankAchievement( + "The dreams in which I'm baking are the best I've ever had" + ); + Game.BankAchievement("Set for life"); + + order = 1200; + Game.TieredAchievement("You and the beanstalk", "", "Farm", 8); + order = 1300; + Game.TieredAchievement("Romancing the stone", "", "Mine", 8); + order = 1400; + Game.TieredAchievement("Ex machina", "", "Factory", 8); + order = 1425; + Game.TieredAchievement("And I need it now", "", "Bank", 8); + order = 1450; + Game.TieredAchievement("Pray on the weak", "", "Temple", 8); + order = 1475; + Game.TieredAchievement("It's a kind of magic", "", "Wizard tower", 8); + order = 1500; + Game.TieredAchievement("Make it so", "", "Shipment", 8); + order = 1600; + Game.TieredAchievement("All that glitters is gold", "", "Alchemy lab", 8); + order = 1700; + Game.TieredAchievement("H̸̷͓̳̳̯̟͕̟͍͍̣͡ḛ̢̦̰̺̮̝͖͖̘̪͉͘͡ ̠̦͕̤̪̝̥̰̠̫̖̣͙̬͘ͅC̨̦̺̩̲̥͉̭͚̜̻̝̣̼͙̮̯̪o̴̡͇̘͎̞̲͇̦̲͞͡m̸̩̺̝̣̹̱͚̬̥̫̳̼̞̘̯͘ͅẹ͇̺̜́̕͢s̶̙̟̱̥̮̯̰̦͓͇͖͖̝͘͘͞", "", "Portal", 8); + order = 1800; + Game.TieredAchievement("Way back then", "", "Time machine", 8); + order = 1900; + Game.TieredAchievement("Exotic matter", "", "Antimatter condenser", 8); + order = 2000; + Game.TieredAchievement("At the end of the tunnel", "", "Prism", 8); + + order = 1070; + Game.ProductionAchievement( + "Click (starring Adam Sandler)", + "Cursor", + 3, + 0, + 7 + ); + order = 1120; + Game.ProductionAchievement("Frantiquities", "Grandma", 3, 0, 6); + order = 1220; + Game.ProductionAchievement("Overgrowth", "Farm", 3); + order = 1320; + Game.ProductionAchievement("Sedimentalism", "Mine", 3); + order = 1420; + Game.ProductionAchievement("Labor of love", "Factory", 3); + order = 1445; + Game.ProductionAchievement("Reverse funnel system", "Bank", 3); + order = 1470; + Game.ProductionAchievement("Thus spoke you", "Temple", 3); + order = 1495; + Game.ProductionAchievement("Manafest destiny", "Wizard tower", 3); + order = 1520; + Game.ProductionAchievement( + "Neither snow nor rain nor heat nor gloom of night", + "Shipment", + 3 + ); + order = 1620; + Game.ProductionAchievement("I've got the Midas touch", "Alchemy lab", 3); + order = 1720; + Game.ProductionAchievement("Which eternal lie", "Portal", 3); + order = 1820; + Game.ProductionAchievement("Déjà vu", "Time machine", 3); + order = 1920; + Game.ProductionAchievement("Powers of Ten", "Antimatter condenser", 3); + order = 2020; + Game.ProductionAchievement("Now the dark days are gone", "Prism", 3); + + order = 1070; + new Game.Achievement("Freaky jazz hands", "", [0, 26]); + Game.Objects["Cursor"].levelAchiev10 = Game.last; + order = 1120; + new Game.Achievement("Methuselah", "", [1, 26]); + Game.Objects["Grandma"].levelAchiev10 = Game.last; + order = 1220; + new Game.Achievement("Huge tracts of land", "", [2, 26]); + Game.Objects["Farm"].levelAchiev10 = Game.last; + order = 1320; + new Game.Achievement("D-d-d-d-deeper", "", [3, 26]); + Game.Objects["Mine"].levelAchiev10 = Game.last; + order = 1420; + new Game.Achievement("Patently genius", "", [4, 26]); + Game.Objects["Factory"].levelAchiev10 = Game.last; + order = 1445; + new Game.Achievement("A capital idea", "", [15, 26]); + Game.Objects["Bank"].levelAchiev10 = Game.last; + order = 1470; + new Game.Achievement("It belongs in a bakery", "", [16, 26]); + Game.Objects["Temple"].levelAchiev10 = Game.last; + order = 1495; + new Game.Achievement("Motormouth", "", [17, 26]); + Game.Objects["Wizard tower"].levelAchiev10 = Game.last; + order = 1520; + new Game.Achievement("Been there done that", "", [5, 26]); + Game.Objects["Shipment"].levelAchiev10 = Game.last; + order = 1620; + new Game.Achievement("Phlogisticated substances", "", [6, 26]); + Game.Objects["Alchemy lab"].levelAchiev10 = Game.last; + order = 1720; + new Game.Achievement("Bizarro world", "", [7, 26]); + Game.Objects["Portal"].levelAchiev10 = Game.last; + order = 1820; + new Game.Achievement("The long now", "", [8, 26]); + Game.Objects["Time machine"].levelAchiev10 = Game.last; + order = 1920; + new Game.Achievement("Chubby hadrons", "", [13, 26]); + Game.Objects["Antimatter condenser"].levelAchiev10 = Game.last; + order = 2020; + new Game.Achievement("Palettable", "", [14, 26]); + Game.Objects["Prism"].levelAchiev10 = Game.last; + + order = 61470; + order = 61495; + new Game.Achievement( + "Bibbidi-bobbidi-boo", + loc("Cast %1 spells.", 9), + [21, 11] + ); + new Game.Achievement( + "I'm the wiz", + loc("Cast %1 spells.", 99), + [22, 11] + ); + new Game.Achievement( + "A wizard is you", + loc("Cast %1 spells.", 999) + "I'm a what?", + [29, 11] + ); + + order = 10000; + new Game.Achievement( + "Four-leaf cookie", + loc("Have %1 golden cookies simultaneously.", 4) + + "Fairly rare, considering cookies don't even have leaves.", + [27, 6] + ); + Game.last.pool = "shadow"; + + order = 2100; + Game.TieredAchievement("Lucked out", "", "Chancemaker", 1); + Game.TieredAchievement("What are the odds", "", "Chancemaker", 2); + Game.TieredAchievement( + "Grandma needs a new pair of shoes", + "", + "Chancemaker", + 3 + ); + Game.TieredAchievement("Million to one shot, doc", "", "Chancemaker", 4); + Game.TieredAchievement("As luck would have it", "", "Chancemaker", 5); + Game.TieredAchievement("Ever in your favor", "", "Chancemaker", 6); + Game.TieredAchievement("Be a lady", "", "Chancemaker", 7); + Game.TieredAchievement("Dicey business", "", "Chancemaker", 8); + + order = 2120; + Game.ProductionAchievement("Fingers crossed", "Chancemaker", 1); + Game.ProductionAchievement("Just a statistic", "Chancemaker", 2); + Game.ProductionAchievement("Murphy's wild guess", "Chancemaker", 3); + + new Game.Achievement("Let's leaf it at that", "", [19, 26]); + Game.Objects["Chancemaker"].levelAchiev10 = Game.last; + + order = 1000; + new Game.Achievement( + "The ultimate clickdown", + loc("Make %1 from clicking.", loc("%1 cookie", LBeautify(1e21))) + + "(of ultimate destiny.)", + [11, 19] + ); + + order = 1100; + Game.TieredAchievement("Aged well", "", "Grandma", 9); + Game.TieredAchievement("101st birthday", "", "Grandma", 10); + Game.TieredAchievement("But wait 'til you get older", "", "Grandma", 11); + order = 1200; + Game.TieredAchievement("Harvest moon", "", "Farm", 9); + order = 1300; + Game.TieredAchievement("Mine?", "", "Mine", 9); + order = 1400; + Game.TieredAchievement("In full gear", "", "Factory", 9); + order = 1425; + Game.TieredAchievement("Treacle tart economics", "", "Bank", 9); + order = 1450; + Game.TieredAchievement("Holy cookies, grandma!", "", "Temple", 9); + order = 1475; + Game.TieredAchievement( + "The Prestige", + "(Unrelated to the Cookie Clicker feature of the same name.)", + "Wizard tower", + 9 + ); + order = 1500; + Game.TieredAchievement("That's just peanuts to space", "", "Shipment", 9); + order = 1600; + Game.TieredAchievement("Worth its weight in lead", "", "Alchemy lab", 9); + order = 1700; + Game.TieredAchievement( + "What happens in the vortex stays in the vortex", + "", + "Portal", + 9 + ); + order = 1800; + Game.TieredAchievement( + "Invited to yesterday's party", + "", + "Time machine", + 9 + ); + order = 1900; + Game.TieredAchievement("Downsizing", "", "Antimatter condenser", 9); //the trailer got me really hyped up but i've read some pretty bad reviews. is it watchable ? is it worth seeing ? i don't mind matt damon + order = 2000; + Game.TieredAchievement("My eyes", "", "Prism", 9); + order = 2100; + Game.TieredAchievement( + "Maybe a chance in hell, actually", + "", + "Chancemaker", + 9 + ); + + order = 1200; + Game.TieredAchievement("Make like a tree", "", "Farm", 10); + order = 1300; + Game.TieredAchievement("Cave story", "", "Mine", 10); + order = 1400; + Game.TieredAchievement("In-cog-neato", "", "Factory", 10); + order = 1425; + Game.TieredAchievement( + "Save your breath because that's all you've got left", + "", + "Bank", + 10 + ); + order = 1450; + Game.TieredAchievement("Vengeful and almighty", "", "Temple", 10); + order = 1475; + Game.TieredAchievement("Spell it out for you", "", "Wizard tower", 10); + order = 1500; + Game.TieredAchievement( + "Space space space space space", + "It's too far away...", + "Shipment", + 10 + ); + order = 1600; + Game.TieredAchievement( + "Don't get used to yourself, you're gonna have to change", + "", + "Alchemy lab", + 10 + ); + order = 1700; + Game.TieredAchievement( + "Objects in the mirror dimension are closer than they appear", + "", + "Portal", + 10 + ); + order = 1800; + Game.TieredAchievement("Groundhog day", "", "Time machine", 10); + order = 1900; + Game.TieredAchievement( + "A matter of perspective", + "", + "Antimatter condenser", + 10 + ); + order = 2000; + Game.TieredAchievement("Optical illusion", "", "Prism", 10); + order = 2100; + Game.TieredAchievement("Jackpot", "", "Chancemaker", 10); + + order = 36000; + new Game.Achievement( + "So much to do so much to see", + loc("Manage a cookie legacy for at least a year.") + + "Thank you so much for playing Cookie Clicker!", + [23, 11] + ); + Game.last.pool = "shadow"; + + Game.CpsAchievement("Running with scissors"); + Game.CpsAchievement("Rarefied air"); + Game.CpsAchievement("Push it to the limit"); + Game.CpsAchievement("Green cookies sleep furiously"); + + Game.BankAchievement("Panic! at Nabisco"); + Game.BankAchievement("Bursting at the seams"); + Game.BankAchievement("Just about full"); + Game.BankAchievement("Hungry for more"); + + order = 1000; + new Game.Achievement( + "All the other kids with the pumped up clicks", + loc("Make %1 from clicking.", loc("%1 cookie", LBeautify(1e23))), + [11, 28] + ); + new Game.Achievement( + "One...more...click...", + loc("Make %1 from clicking.", loc("%1 cookie", LBeautify(1e25))), + [11, 30] + ); + + order = 61515; + new Game.Achievement( + "Botany enthusiast", + loc("Harvest %1 mature garden plants.", 100), + [26, 20] + ); + new Game.Achievement( + "Green, aching thumb", + loc("Harvest %1 mature garden plants.", 1000), + [27, 20] + ); + new Game.Achievement( + "In the garden of Eden (baby)", + loc("Fill every tile of the biggest garden plot with plants.") + + "Isn't tending to those precious little plants just so rock and/or roll?", + [28, 20] + ); + + new Game.Achievement( + "Keeper of the conservatory", + loc("Unlock every garden seed."), + [25, 20] + ); + new Game.Achievement( + "Seedless to nay", + loc( + 'Convert a complete seed log into sugar lumps by sacrificing your garden to the sugar hornets.
Owning this achievement makes seeds %1% cheaper, plants mature %2% sooner, and plant upgrades drop %3% more.', + [5, 5, 5] + ), + [29, 20] + ); + + order = 30050; + new Game.Achievement( + "You get nothing", + loc("Ascend with %1 baked.", loc("%1 cookie", LBeautify(1e36))) + + "Good day sir!", + [29, 6] + ); + new Game.Achievement( + "Humble rebeginnings", + loc("Ascend with %1 baked.", loc("%1 cookie", LBeautify(1e39))) + + "Started from the bottom, now we're here.", + [29, 6] + ); + new Game.Achievement( + "The end of the world", + loc("Ascend with %1 baked.", loc("%1 cookie", LBeautify(1e42))) + + "(as we know it)", + [21, 25] + ); + new Game.Achievement( + "Oh, you're back", + loc("Ascend with %1 baked.", loc("%1 cookie", LBeautify(1e45))) + + "Missed us?", + [21, 25] + ); + new Game.Achievement( + "Lazarus", + loc("Ascend with %1 baked.", loc("%1 cookie", LBeautify(1e48))) + + "All rise.", + [21, 25] + ); + + Game.CpsAchievement("Leisurely pace"); + Game.CpsAchievement("Hypersonic"); + + Game.BankAchievement("Feed me, Orteil"); + Game.BankAchievement("And then what?"); + + order = 7002; + new Game.Achievement( + "Tricentennial and a half", + loc("Have at least %1 of everything.", 350) + + "(it's free real estate)", + [21, 26] + ); + new Game.Achievement( + "Quadricentennial", + loc("Have at least %1 of everything.", 400) + + "You've had to do horrible things to get this far.
Horrible... horrible things.
", + [22, 26] + ); + new Game.Achievement( + "Quadricentennial and a half", + loc("Have at least %1 of everything.", 450) + + "At this point, you might just be compensating for something.", + [23, 26] + ); + + new Game.Achievement( + "Quincentennial", + loc("Have at least %1 of everything.", 500) + + "Some people would say you're halfway there.
We do not care for those people and their reckless sense of unchecked optimism.
", + [29, 25] + ); + + order = 21100; + new Game.Achievement( + "Maillard reaction", + loc("Harvest a caramelized sugar lump."), + [29, 27] + ); + + order = 30250; + new Game.Achievement( + "When the cookies ascend just right", + loc("Ascend with exactly %1.", loc("%1 cookie", LBeautify(1e12))), + [25, 7] + ); + Game.last.pool = "shadow"; //this achievement is shadow because it is only achievable through blind luck or reading external guides; this may change in the future + + order = 1050; + new Game.Achievement( + "With her finger and her thumb", + loc("Have %1.", loc("%1 cursor", LBeautify(600))), + [0, 16] + ); + + order = 1100; + Game.TieredAchievement("Defense of the ancients", "", "Grandma", 12); + order = 1200; + Game.TieredAchievement("Sharpest tool in the shed", "", "Farm", 11); + order = 1300; + Game.TieredAchievement("Hey now, you're a rock", "", "Mine", 11); + order = 1400; + Game.TieredAchievement("Break the mold", "", "Factory", 11); + order = 1425; + Game.TieredAchievement("Get the show on, get paid", "", "Bank", 11); + order = 1450; + Game.TieredAchievement( + "My world's on fire, how about yours", + "", + "Temple", + 11 + ); + order = 1475; + Game.TieredAchievement( + "The meteor men beg to differ", + "", + "Wizard tower", + 11 + ); + order = 1500; + Game.TieredAchievement("Only shooting stars", "", "Shipment", 11); + order = 1600; + Game.TieredAchievement( + "We could all use a little change", + "", + "Alchemy lab", + 11 + ); //"all that glitters is gold" was already an achievement + order = 1700; + Game.TieredAchievement( + "Your brain gets smart but your head gets dumb", + "", + "Portal", + 11 + ); + order = 1800; + Game.TieredAchievement("The years start coming", "", "Time machine", 11); + order = 1900; + Game.TieredAchievement("What a concept", "", "Antimatter condenser", 11); + order = 2000; + Game.TieredAchievement( + "You'll never shine if you don't glow", + "", + "Prism", + 11 + ); + order = 2100; + Game.TieredAchievement( + "You'll never know if you don't go", + "", + "Chancemaker", + 11 + ); + + order = 2200; + Game.TieredAchievement("Self-contained", "", "Fractal engine", 1); + Game.TieredAchievement("Threw you for a loop", "", "Fractal engine", 2); + Game.TieredAchievement("The sum of its parts", "", "Fractal engine", 3); + Game.TieredAchievement( + "Bears repeating", + "Where did these come from?", + "Fractal engine", + 4 + ); + Game.TieredAchievement("More of the same", "", "Fractal engine", 5); + Game.TieredAchievement("Last recurse", "", "Fractal engine", 6); + Game.TieredAchievement("Out of one, many", "", "Fractal engine", 7); + Game.TieredAchievement("An example of recursion", "", "Fractal engine", 8); + Game.TieredAchievement( + "For more information on this achievement, please refer to its title", + "", + "Fractal engine", + 9 + ); + Game.TieredAchievement( + "I'm so meta, even this achievement", + "", + "Fractal engine", + 10 + ); + Game.TieredAchievement("Never get bored", "", "Fractal engine", 11); + + order = 2220; + Game.ProductionAchievement("The needs of the many", "Fractal engine", 1); + Game.ProductionAchievement("Eating its own", "Fractal engine", 2); + Game.ProductionAchievement("We must go deeper", "Fractal engine", 3); + + new Game.Achievement("Sierpinski rhomboids", "", [20, 26]); + Game.Objects["Fractal engine"].levelAchiev10 = Game.last; + + Game.CpsAchievement("Gotta go fast"); + Game.BankAchievement("I think it's safe to say you've got it made"); + + order = 6002; + new Game.Achievement( + "Renaissance baker", + loc("Own %1 upgrades and %2 buildings.", [400, 8000]) + + "If you have seen further, it is by standing on the shoulders of giants - a mysterious species of towering humanoids until now thought long-extinct.", + [10, 10] + ); + + order = 1098; + new Game.Achievement( + "Veteran", + loc("Own at least %1 grandma types.", 14) + "14's a crowd!", + [10, 9] + ); + + order = 10000; + new Game.Achievement( + "Thick-skinned", + loc( + "Have your reinforced membrane protect the shimmering veil." + ), + [7, 10] + ); + + order = 2300; + Game.TieredAchievement("F12", "", "Javascript console", 1); + Game.TieredAchievement("Variable success", "", "Javascript console", 2); + Game.TieredAchievement("No comments", "", "Javascript console", 3); + Game.TieredAchievement("Up to code", "", "Javascript console", 4); + Game.TieredAchievement("Works on my machine", "", "Javascript console", 5); + Game.TieredAchievement("Technical debt", "", "Javascript console", 6); + Game.TieredAchievement("Mind your language", "", "Javascript console", 7); + Game.TieredAchievement("Inconsolable", "", "Javascript console", 8); + Game.TieredAchievement("Closure", "", "Javascript console", 9); + Game.TieredAchievement( + "Dude what if we're all living in a simulation like what if we're all just code on a computer somewhere", + "", + "Javascript console", + 10 + ); + Game.TieredAchievement( + "Taking the back streets", + "", + "Javascript console", + 11 + ); + + order = 2320; + Game.ProductionAchievement("Inherited prototype", "Javascript console", 1); + Game.ProductionAchievement( + "A model of document object", + "Javascript console", + 2 + ); + Game.ProductionAchievement("First-class citizen", "Javascript console", 3); + + new Game.Achievement("Alexandria", "", [32, 26]); + Game.Objects["Javascript console"].levelAchiev10 = Game.last; + + Game.CpsAchievement("Bake him away, toys"); + Game.CpsAchievement("You're #1 so why try harder"); + Game.CpsAchievement("Haven't even begun to peak"); + Game.BankAchievement("A sometimes food"); + Game.BankAchievement("Not enough of a good thing"); + Game.BankAchievement("Horn of plenty"); + + order = 30050; + new Game.Achievement( + "Smurf account", + loc("Ascend with %1 baked.", loc("%1 cookie", LBeautify(1e51))) + + "It's like you just appeared out of the blue!", + [21, 32] + ); + new Game.Achievement( + "If at first you don't succeed", + loc("Ascend with %1 baked.", loc("%1 cookie", LBeautify(1e54))) + + "If at first you don't succeed, try, try, try again.
But isn't that the definition of insanity?
", + [21, 32] + ); + + order = 33000; + new Game.Achievement( + "O Fortuna", + loc( + 'Own every fortune upgrade.
Owning this achievement makes fortunes appear twice as often; unlocked fortune upgrades also have a %1% chance to carry over after ascending.', + 40 + ), + [29, 8] + ); + + order = 61615; + new Game.Achievement( + "Initial public offering", + loc("Make your first stock market profit."), + [0, 33] + ); + new Game.Achievement( + "Rookie numbers", + loc("Own at least %1 of every stock market good.", 100) + + "Gotta pump those numbers up!", + [9, 33] + ); + new Game.Achievement( + "No nobility in poverty", + loc("Own at least %1 of every stock market good.", 500) + + "What kind of twisted individual is out there cramming camels through needle holes anyway?", + [10, 33] + ); + new Game.Achievement( + "Full warehouses", + loc("Own at least %1 of a stock market good.", 1000), + [11, 33] + ); + new Game.Achievement( + "Make my day", + loc("Make a day of CpS ($%1) in 1 stock market sale.", 86400), + [1, 33] + ); + new Game.Achievement( + "Buy buy buy", + loc("Spend a day of CpS ($%1) in 1 stock market purchase.", 86400), + [1, 33] + ); + new Game.Achievement( + "Gaseous assets", + loc( + "Have your stock market profits surpass a whole year of CpS ($%1).", + 31536000 + ) + "Boy, how volatile!", + [18, 33] + ); + Game.last.pool = "shadow"; + new Game.Achievement( + "Pyramid scheme", + loc("Unlock the highest-tier stock market headquarters."), + [18, 33] + ); + + order = 10000; + new Game.Achievement( + "Jellicles", + loc("Own %1 kitten upgrades.", 10) + + "Jellicles can and jellicles do! Make sure to wash your jellicles every day!", + [18, 19] + ); + + order = 7002; + new Game.Achievement( + "Quincentennial and a half", + loc("Have at least %1 of everything.", 550) + + "This won't fill the churning void inside, you know.", + [29, 26] + ); + + Game.CpsAchievement("What did we even eat before these"); + Game.CpsAchievement("Heavy flow"); + Game.CpsAchievement("More you say?"); + Game.BankAchievement("Large and in charge"); + Game.BankAchievement("Absolutely stuffed"); + Game.BankAchievement("It's only wafer-thin", "Just the one!"); + + order = 1000; + new Game.Achievement( + "Clickety split", + loc("Make %1 from clicking.", loc("%1 cookie", LBeautify(1e27))), + [11, 31] + ); + order = 1050; + new Game.Achievement( + "Gotta hand it to you", + loc("Have %1.", loc("%1 cursor", LBeautify(700))), + [0, 17] + ); + order = 1100; + Game.TieredAchievement("Okay boomer", "", "Grandma", 13); + order = 1200; + Game.TieredAchievement("Overripe", "", "Farm", 12); + order = 1300; + Game.TieredAchievement("Rock on", "", "Mine", 12); + order = 1400; + Game.TieredAchievement("Self-manmade man", "", "Factory", 12); + order = 1425; + Game.TieredAchievement("Checks out", "", "Bank", 12); + order = 1450; + Game.TieredAchievement("Living on a prayer", "", "Temple", 12); + order = 1475; + Game.TieredAchievement( + "Higitus figitus migitus mum", + "", + "Wizard tower", + 12 + ); + order = 1500; + Game.TieredAchievement("The incredible journey", "", "Shipment", 12); + order = 1600; + Game.TieredAchievement("Just a phase", "", "Alchemy lab", 12); + order = 1700; + Game.TieredAchievement("Don't let me leave, Murph", "", "Portal", 12); + order = 1800; + Game.TieredAchievement("Caveman to cosmos", "", "Time machine", 12); + order = 1900; + Game.TieredAchievement("Particular tastes", "", "Antimatter condenser", 12); + order = 2000; + Game.TieredAchievement("A light snack", "", "Prism", 12); + order = 2100; + Game.TieredAchievement("Tempting fate", "", "Chancemaker", 12); + order = 2200; + Game.TieredAchievement("Tautological", "", "Fractal engine", 12); + order = 2300; + Game.TieredAchievement( + "Curly braces", + "Or as the French call them, mustache boxes.
Go well with quotes.
", + "Javascript console", + 12 + ); + + order = 10000; + new Game.Achievement( + "Seven horseshoes", + loc("Click %1.", loc("%1 golden cookie", LBeautify(27777))) + + "Enough for one of those funky horses that graze near your factories.", + [21, 33] + ); + Game.last.pool = "shadow"; + + order = 11005; + new Game.Achievement( + "Olden days", + loc("Find the forgotten madeleine.") + + "DashNet Farms remembers.", + [12, 3] + ); + + order = 1050; + new Game.Achievement( + "The devil's workshop", + loc("Have %1.", loc("%1 cursor", LBeautify(800))), + [0, 18] + ); + order = 1200; + Game.TieredAchievement("In the green", "", "Farm", 13); + order = 1300; + Game.TieredAchievement( + "Mountain out of a molehill, but like in a good way", + "", + "Mine", + 13 + ); + order = 1400; + Game.TieredAchievement("The wheels of progress", "", "Factory", 13); + order = 1425; + Game.TieredAchievement("That's rich", "", "Bank", 13); + order = 1450; + Game.TieredAchievement("Preaches and cream", "", "Temple", 13); + order = 1475; + Game.TieredAchievement("Magic thinking", "", "Wizard tower", 13); + order = 1500; + Game.TieredAchievement( + "Is there life on Mars?", + "Yes, there is. You're currently using it as filling in experimental flavor prototype #810657.", + "Shipment", + 13 + ); + order = 1600; + Game.TieredAchievement("Bad chemistry", "", "Alchemy lab", 13); + order = 1700; + Game.TieredAchievement("Reduced to gibbering heaps", "", "Portal", 13); + order = 1800; + Game.TieredAchievement("Back already?", "", "Time machine", 13); + order = 1900; + Game.TieredAchievement("Nuclear throne", "", "Antimatter condenser", 13); + order = 2000; + Game.TieredAchievement("Making light of the situation", "", "Prism", 13); + order = 2100; + Game.TieredAchievement( + "Flip a cookie. Chips, I win. Crust, you lose.", + "", + "Chancemaker", + 13 + ); + order = 2200; + Game.TieredAchievement("In and of itself", "", "Fractal engine", 13); + order = 2300; + Game.TieredAchievement( + "Duck typing", + "Hello, this is a duck typing. Got any grapes?", + "Javascript console", + 13 + ); + + order = 2400; + Game.TieredAchievement( + "They'll never know what hit 'em", + "", + "Idleverse", + 1 + ); + Game.TieredAchievement("Well-versed", "", "Idleverse", 2); + Game.TieredAchievement("Ripe for the picking", "", "Idleverse", 3); + Game.TieredAchievement("Unreal", "", "Idleverse", 4); + Game.TieredAchievement("Once you've seen one", "", "Idleverse", 5); + Game.TieredAchievement("Spoils and plunder", "", "Idleverse", 6); + Game.TieredAchievement( + "Nobody exists on purpose, nobody belongs anywhere", + "Come watch TV?", + "Idleverse", + 7 + ); + Game.TieredAchievement("Hyperspace expressway", "", "Idleverse", 8); + Game.TieredAchievement("Versatile", "", "Idleverse", 9); + Game.TieredAchievement("You are inevitable", "", "Idleverse", 10); + Game.TieredAchievement("Away from this place", "", "Idleverse", 11); + Game.TieredAchievement("Everywhere at once", "", "Idleverse", 12); + Game.TieredAchievement( + "Reject reality, substitute your own", + "", + "Idleverse", + 13 + ); + + order = 2420; + Game.ProductionAchievement("Fringe", "Idleverse", 1); + Game.ProductionAchievement("Coherence", "Idleverse", 2); + Game.ProductionAchievement("Earth-616", "Idleverse", 3); + + new Game.Achievement("Strange topologies", "", [33, 26]); + Game.Objects["Idleverse"].levelAchiev10 = Game.last; + + order = 5000; + new Game.Achievement( + "Grand design", + loc("Own %1.", loc("%1 building", LBeautify(5000))) + + "They'll remember you forever!", + [32, 12] + ); + new Game.Achievement( + "Ecumenopolis", + loc("Own %1.", loc("%1 building", LBeautify(7500))) + + "Getting a wee bit cramped.", + [33, 12] + ); + + order = 6000; + new Game.Achievement( + "The full picture", + loc("Purchase %1.", loc("%1 upgrade", LBeautify(300))) + + "So that's where that fits in!", + [32, 11] + ); + new Game.Achievement( + "When there's nothing left to add", + loc("Purchase %1.", loc("%1 upgrade", LBeautify(400))) + + "...keep going.", + [33, 11] + ); + + order = 7002; + new Game.Achievement( + "Sexcentennial", + loc("Have at least %1 of everything.", 600) + + "Hey, nice milestone!", + [31, 33] + ); + + Game.CpsAchievement("Keep going until I say stop"); + Game.CpsAchievement("But I didn't say stop, did I?"); + Game.CpsAchievement("With unrivaled fervor"); + Game.BankAchievement("Think big"); + Game.BankAchievement("Hypersize me"); + Game.BankAchievement("Max capacity"); + + order = 61616; + new Game.Achievement( + "Liquid assets", + loc("Have your stock market profits surpass $%1.", 1e7), + [12, 33] + ); + + order = 11000; + new Game.Achievement( + "Stifling the press", + loc("Squish the news ticker flat, then click on it.") + + "Narrow in here or is it just me?", + [27, 7] + ); + + order = 2500; + Game.TieredAchievement("It's big brain time", "", "Cortex baker", 1); + Game.TieredAchievement("Just my imagination", "", "Cortex baker", 2); + Game.TieredAchievement("Now there's an idea", "", "Cortex baker", 3); + Game.TieredAchievement( + "The organ that named itself", + "", + "Cortex baker", + 4 + ); + Game.TieredAchievement("Gyrification", "", "Cortex baker", 5); + Game.TieredAchievement( + 'A trademarked portmanteau of "imagination" and "engineering"', + "", + "Cortex baker", + 6 + ); + Game.TieredAchievement("Mindfulness", "", "Cortex baker", 7); + Game.TieredAchievement("The 10% myth", "", "Cortex baker", 8); + Game.TieredAchievement( + "Don't think about it too hard", + "", + "Cortex baker", + 9 + ); + Game.TieredAchievement( + "Though fools seldom differ", + "", + "Cortex baker", + 10 + ); + Game.TieredAchievement("Looking kind of dumb", "", "Cortex baker", 11); + Game.TieredAchievement("A beautiful mind", "", "Cortex baker", 12); + Game.TieredAchievement("Cardinal synapses", "", "Cortex baker", 13); + + order = 2520; + Game.ProductionAchievement("Positive thinking", "Cortex baker", 1); + Game.ProductionAchievement("The thought that counts", "Cortex baker", 2); + Game.ProductionAchievement("Unthinkable", "Cortex baker", 3); + + new Game.Achievement("Gifted", "", [34, 26]); + Game.Objects["Cortex baker"].levelAchiev10 = Game.last; + + order = 1100; + Game.TieredAchievement("They moistly come at night", "", "Grandma", 14); + order = 1200; + Game.TieredAchievement("It's grown on you", "", "Farm", 14); + order = 1300; + Game.TieredAchievement( + "Don't let the walls cave in on you", + "", + "Mine", + 14 + ); + order = 1400; + Game.TieredAchievement("Replaced by robots", "", "Factory", 14); + order = 1425; + Game.TieredAchievement( + "Financial prodigy", + "Imagine how it would be, to be at the top making cash money.", + "Bank", + 14 + ); + order = 1450; + Game.TieredAchievement("And I will pray to a big god", "", "Temple", 14); + order = 1475; + Game.TieredAchievement("Shosple Colupis", "", "Wizard tower", 14); + order = 1500; + Game.TieredAchievement("False vacuum", "", "Shipment", 14); + order = 1600; + Game.TieredAchievement("Metallic taste", "", "Alchemy lab", 14); + order = 1700; + Game.TieredAchievement("Swiss cheese", "", "Portal", 14); + order = 1800; + Game.TieredAchievement( + "But the future refused to change", + "", + "Time machine", + 14 + ); + order = 1900; + Game.TieredAchievement( + "What's the dark matter with you", + "", + "Antimatter condenser", + 14 + ); + order = 2000; + Game.TieredAchievement("Enlightenment", "", "Prism", 14); + order = 2100; + Game.TieredAchievement("Never tell me the odds", "", "Chancemaker", 14); + order = 2200; + Game.TieredAchievement( + "Blowing an Apollonian gasket", + "", + "Fractal engine", + 14 + ); + order = 2300; + Game.TieredAchievement( + "Get with the program", + "", + "Javascript console", + 14 + ); + order = 2400; + Game.TieredAchievement("Lost your cosmic marbles", "", "Idleverse", 14); + order = 2500; + Game.TieredAchievement( + "By will alone I set my mind in motion", + "", + "Cortex baker", + 14 + ); + + order = 1000; + new Game.Achievement( + "Ain't that a click in the head", + loc("Make %1 from clicking.", loc("%1 cookie", LBeautify(1e29))), + [11, 34] + ); + + order = 7002; + new Game.Achievement( + "Sexcentennial and a half", + loc("Have at least %1 of everything.", 650) + + "Hope you're enjoying the grind so far! It gets worse.", + [21, 34] + ); + + Game.CpsAchievement("I am speed"); + Game.CpsAchievement("And on and on"); + Game.BankAchievement("Fake it till you bake it"); + Game.BankAchievement("History in the baking"); + + order = 22100; + new Game.Achievement( + "Baby it's old outside", + loc("Click one of Santa's helper grandmas during Christmas season."), + [10, 9] + ); + + order = 5000; + new Game.Achievement( + "Myriad", + loc("Own %1.", loc("%1 building", LBeautify(10000))) + + "At this point, most of your assets lie in real estate.", + [31, 6] + ); + + order = 6000; + new Game.Achievement( + "Kaizen", + loc("Purchase %1.", loc("%1 upgrade", LBeautify(500))) + + "Just a little more.", + [31, 5] + ); + new Game.Achievement( + "Beyond quality", + loc("Purchase %1.", loc("%1 upgrade", LBeautify(600))) + + "Dwarfing all of mankind's accomplishments.", + [32, 5] + ); + + Game.CpsAchievement("Everything happens so much"); + Game.CpsAchievement("I'll rest when I'm dead"); + Game.BankAchievement("What do you get for the baker who has everything"); + Game.BankAchievement("Bottomless pit"); + + order = 6001; + new Game.Achievement( + "All the stars in heaven", + loc("Own %1 heavenly upgrades.", 100), + [30, 5] + ); + + //end of achievements + + for (var i in Game.Objects) { + if (Game.Objects[i].levelAchiev10) { + Game.Objects[i].levelAchiev10.baseDesc = loc( + "Reach level %1 %2.", + [10, Game.Objects[i].plural] + ); + Game.Objects[i].levelAchiev10.desc = + Game.Objects[i].levelAchiev10.baseDesc; + } + } + + LocalizeUpgradesAndAchievs(); + + /*===================================================================================== + BUFFS + =======================================================================================*/ + + Game.buffs = {}; //buffs currently in effect by name + Game.buffsI = 0; + Game.buffsL = l("buffs"); + Game.gainBuff = function (type, time, arg1, arg2, arg3) { + type = Game.buffTypesByName[type]; + var obj = type.func(time, arg1, arg2, arg3); + obj.type = type; + obj.arg1 = arg1; + obj.arg2 = arg2; + obj.arg3 = arg3; + if (!obj.dname && obj.name != "???") obj.dname = loc(obj.name); + + var buff = { + visible: true, + time: 0, + name: "???", + desc: "", + icon: [0, 0], + }; + if (Game.buffs[obj.name]) { + //if there is already a buff in effect with this name + var buff = Game.buffs[obj.name]; + if (obj.max) buff.time = Math.max(obj.time, buff.time); //new duration is max of old and new + if (obj.add) buff.time += obj.time; //new duration is old + new + if (!obj.max && !obj.add) buff.time = obj.time; //new duration is set to new + buff.maxTime = buff.time; + } //create new buff + else { + for (var i in obj) { //paste parameters onto buff + buff[i] = obj[i]; + } + buff.maxTime = buff.time; + Game.buffs[buff.name] = buff; + buff.id = Game.buffsI; + + //create dom + Game.buffsL.innerHTML = + Game.buffsL.innerHTML + + '

' + + buff.dname + + '

' + + buff.desc + + "
", + "left", + true + ) + : "") + + ' style="opacity:1;float:none;display:block;' + + writeIcon(buff.icon) + + '">'; + + buff.l = l("buff" + buff.id); + + Game.buffsI++; + } + Game.recalculateGains = 1; + Game.storeToRefresh = 1; + return buff; + }; + Game.hasBuff = function ( + what //returns 0 if there is no buff in effect with this name; else, returns it + ) { + if (!Game.buffs[what]) return 0; + else return Game.buffs[what]; + }; + Game.updateBuffs = function () //executed every logic frame + { + for (var i in Game.buffs) { + var buff = Game.buffs[i]; + + if (buff.time >= 0) { + if (!l("buffPieTimer" + buff.id)) + l("buff" + buff.id).innerHTML = + l("buff" + buff.id).innerHTML + + '
'; + var T = 1 - buff.time / buff.maxTime; + T = (T * 144) % 144; + l("buffPieTimer" + buff.id).style.backgroundPosition = + -Math.floor(T % 18) * 48 + "px " + -Math.floor(T / 18) * 48 + "px"; + } + buff.time--; + if (buff.time <= 0) { + if (Game.onCrate == l("buff" + buff.id)) Game.tooltip.hide(); + if (buff.onDie) buff.onDie(); + Game.buffsL.removeChild(l("buff" + buff.id)); + if (Game.buffs[buff.name]) { + Game.buffs[buff.name] = 0; + delete Game.buffs[buff.name]; + } + Game.recalculateGains = 1; + Game.storeToRefresh = 1; + } + } + }; + Game.killBuff = function ( + what //remove a buff by name + ) { + if (Game.buffs[what]) { + Game.buffs[what].time = 0; /*Game.buffs[what]=0;*/ + } + }; + Game.killBuffs = function () //remove all buffs + { + Game.buffsL.innerHTML = ""; + Game.buffs = {}; + Game.recalculateGains = 1; + Game.storeToRefresh = 1; + }; + + Game.buffTypes = []; //buff archetypes; only buffs declared from these can be saved and loaded + Game.buffTypesByName = []; + Game.buffTypesN = 0; + Game.buffType = function (name, func) { + this.name = name; + this.func = func; //this is a function that returns a buff object; it takes a "time" argument in seconds, and 3 more optional arguments at most, which will be saved and loaded as floats + this.id = Game.buffTypesN; + this.vanilla = Game.vanilla; + Game.buffTypesByName[this.name] = this; + Game.buffTypes[Game.buffTypesN] = this; + Game.buffTypesN++; + }; + + /* + basic buff parameters : + name:'Kitten rain', + desc:'It\'s raining kittens!', + icon:[0,0], + time:30*Game.fps + other parameters : + visible:false - will hide the buff from the buff list + add:true - if this buff already exists, add the new duration to the old one + max:true - if this buff already exists, set the new duration to the max of either + onDie:function(){} - function will execute when the buff runs out + power:3 - used by some buffs + multCpS:3 - buff multiplies CpS by this amount + multClick:3 - buff multiplies click power by this amount + */ + + //base buffs + new Game.buffType("frenzy", function (time, pow) { + return { + name: "Frenzy", + desc: loc("Cookie production x%1 for %2!", [ + pow, + Game.sayTime(time * Game.fps, -1), + ]), + icon: [10, 14], + time: time * Game.fps, + add: true, + multCpS: pow, + aura: 1, + }; + }); + new Game.buffType("blood frenzy", function (time, pow) { + return { + name: "Elder frenzy", + desc: loc("Cookie production x%1 for %2!", [ + pow, + Game.sayTime(time * Game.fps, -1), + ]), + icon: [29, 6], + time: time * Game.fps, + add: true, + multCpS: pow, + aura: 1, + }; + }); + new Game.buffType("clot", function (time, pow) { + return { + name: "Clot", + desc: loc( + "Cookie production halved for %1!", + Game.sayTime(time * Game.fps, -1) + ), + icon: [15, 5], + time: time * Game.fps, + add: true, + multCpS: pow, + aura: 2, + }; + }); + new Game.buffType("dragon harvest", function (time, pow) { + if (Game.Has("Dragon fang")) pow = Math.ceil(pow * 1.1); + return { + name: "Dragon Harvest", + desc: loc("Cookie production x%1 for %2!", [ + pow, + Game.sayTime(time * Game.fps, -1), + ]), + icon: [10, 25], + time: time * Game.fps, + add: true, + multCpS: pow, + aura: 1, + }; + }); + new Game.buffType("everything must go", function (time, pow) { + return { + name: "Everything must go", + desc: loc("All buildings are %1% cheaper for %2!", [ + pow, + Game.sayTime(time * Game.fps, -1), + ]), + icon: [17, 6], + time: time * Game.fps, + add: true, + power: pow, + aura: 1, + }; + }); + new Game.buffType("cursed finger", function (time, pow) { + return { + name: "Cursed finger", + desc: loc( + "Cookie production halted for %1,
but each click is worth %2 of CpS.", + [Game.sayTime(time * Game.fps, -1), Game.sayTime(time * Game.fps, -1)] + ), + icon: [12, 17], + time: time * Game.fps, + add: true, + power: pow, + multCpS: 0, + aura: 1, + }; + }); + new Game.buffType("click frenzy", function (time, pow) { + return { + name: "Click frenzy", + desc: loc("Clicking power x%1 for %2!", [ + pow, + Game.sayTime(time * Game.fps, -1), + ]), + icon: [0, 14], + time: time * Game.fps, + add: true, + multClick: pow, + aura: 1, + }; + }); + new Game.buffType("dragonflight", function (time, pow) { + if (Game.Has("Dragon fang")) pow = Math.ceil(pow * 1.1); + return { + name: "Dragonflight", + desc: loc("Clicking power x%1 for %2!", [ + pow, + Game.sayTime(time * Game.fps, -1), + ]), + icon: [0, 25], + time: time * Game.fps, + add: true, + multClick: pow, + aura: 1, + }; + }); + new Game.buffType("cookie storm", function (time, pow) { + return { + name: "Cookie storm", + desc: loc("Cookies everywhere!"), + icon: [22, 6], + time: time * Game.fps, + add: true, + power: pow, + aura: 1, + }; + }); + new Game.buffType("building buff", function (time, pow, building) { + var obj = Game.ObjectsById[building]; + return { + name: Game.goldenCookieBuildingBuffs[obj.name][0], + dname: EN + ? Game.goldenCookieBuildingBuffs[obj.name][0] + : loc("%1 Power!", obj.dname), + desc: + loc( + "Your %1 are boosting your CpS!", + loc("%1 " + obj.bsingle, LBeautify(obj.amount)) + ) + + "
" + + loc("Cookie production +%1% for %2!", [ + Beautify(Math.ceil(pow * 100 - 100)), + Game.sayTime(time * Game.fps, -1), + ]), + icon: [obj.iconColumn, 14], + time: time * Game.fps, + add: true, + multCpS: pow, + aura: 1, + }; + }); + new Game.buffType("building debuff", function (time, pow, building) { + var obj = Game.ObjectsById[building]; + return { + name: Game.goldenCookieBuildingBuffs[obj.name][1], + dname: EN + ? Game.goldenCookieBuildingBuffs[obj.name][1] + : loc("%1 Burden!", obj.dname), + desc: + loc( + "Your %1 are rusting your CpS!", + loc("%1 " + obj.bsingle, LBeautify(obj.amount)) + ) + + "
" + + loc("Cookie production %1% slower for %2!", [ + Beautify(Math.ceil(pow * 100 - 100)), + Game.sayTime(time * Game.fps, -1), + ]), + icon: [obj.iconColumn, 15], + time: time * Game.fps, + add: true, + multCpS: 1 / pow, + aura: 2, + }; + }); + new Game.buffType("sugar blessing", function (time, pow) { + return { + name: "Sugar blessing", + desc: loc("You find %1% more golden cookies for the next %2.", [ + 10, + Game.sayTime(time * Game.fps, -1), + ]), + icon: [29, 16], + time: time * Game.fps, + //add:true + }; + }); + new Game.buffType("haggler luck", function (time, pow) { + return { + name: "Haggler's luck", + desc: loc("All upgrades are %1% cheaper for %2!", [ + pow, + Game.sayTime(time * Game.fps, -1), + ]), + icon: [25, 11], + time: time * Game.fps, + power: pow, + max: true, + }; + }); + new Game.buffType("haggler misery", function (time, pow) { + return { + name: "Haggler's misery", + desc: loc("All upgrades are %1% pricier for %2!", [ + pow, + Game.sayTime(time * Game.fps, -1), + ]), + icon: [25, 11], + time: time * Game.fps, + power: pow, + max: true, + }; + }); + new Game.buffType("pixie luck", function (time, pow) { + return { + name: "Crafty pixies", + desc: loc("All buildings are %1% cheaper for %2!", [ + pow, + Game.sayTime(time * Game.fps, -1), + ]), + icon: [26, 11], + time: time * Game.fps, + power: pow, + max: true, + }; + }); + new Game.buffType("pixie misery", function (time, pow) { + return { + name: "Nasty goblins", + desc: loc("All buildings are %1% pricier for %2!", [ + pow, + Game.sayTime(time * Game.fps, -1), + ]), + icon: [26, 11], + time: time * Game.fps, + power: pow, + max: true, + }; + }); + new Game.buffType("magic adept", function (time, pow) { + return { + name: "Magic adept", + desc: loc("Spells backfire %1 times less for %2.", [ + pow, + Game.sayTime(time * Game.fps, -1), + ]), + icon: [29, 11], + time: time * Game.fps, + power: pow, + max: true, + }; + }); + new Game.buffType("magic inept", function (time, pow) { + return { + name: "Magic inept", + desc: loc("Spells backfire %1 times more for %2.", [ + pow, + Game.sayTime(time * Game.fps, -1), + ]), + icon: [29, 11], + time: time * Game.fps, + power: pow, + max: true, + }; + }); + new Game.buffType("devastation", function (time, pow) { + return { + name: "Devastation", + desc: loc("Clicking power +%1% for %2!", [ + Math.floor(pow * 100 - 100), + Game.sayTime(time * Game.fps, -1), + ]), + icon: [23, 18], + time: time * Game.fps, + multClick: pow, + aura: 1, + max: true, + }; + }); + new Game.buffType("sugar frenzy", function (time, pow) { + return { + name: "Sugar frenzy", + desc: loc("Cookie production x%1 for %2!", [ + pow, + Game.sayTime(time * Game.fps, -1), + ]), + icon: [29, 14], + time: time * Game.fps, + add: true, + multCpS: pow, + aura: 0, + }; + }); + new Game.buffType("loan 1", function (time, pow) { + return { + name: "Loan 1", + dname: loc("Loan %1", 1), + desc: loc("Cookie production x%1 for %2!", [ + pow, + Game.sayTime(time * Game.fps, -1), + ]), + icon: [1, 33], + time: time * Game.fps, + power: pow, + multCpS: pow, + max: true, + onDie: function () { + if (Game.takeLoan) { + Game.takeLoan(1, true); + } + }, + }; + }); + new Game.buffType("loan 1 interest", function (time, pow) { + return { + name: "Loan 1 (interest)", + dname: loc("Loan %1 (interest)", 1), + desc: loc("Cookie production x%1 for %2!", [ + pow, + Game.sayTime(time * Game.fps, -1), + ]), + icon: [1, 33], + time: time * Game.fps, + power: pow, + multCpS: pow, + max: true, + }; + }); + new Game.buffType("loan 2", function (time, pow) { + return { + name: "Loan 2", + dname: loc("Loan %1", 2), + desc: loc("Cookie production x%1 for %2!", [ + pow, + Game.sayTime(time * Game.fps, -1), + ]), + icon: [1, 33], + time: time * Game.fps, + power: pow, + multCpS: pow, + max: true, + onDie: function () { + if (Game.takeLoan) { + Game.takeLoan(2, true); + } + }, + }; + }); + new Game.buffType("loan 2 interest", function (time, pow) { + return { + name: "Loan 2 (interest)", + dname: loc("Loan %1 (interest)", 2), + desc: loc("Cookie production x%1 for %2!", [ + pow, + Game.sayTime(time * Game.fps, -1), + ]), + icon: [1, 33], + time: time * Game.fps, + power: pow, + multCpS: pow, + max: true, + }; + }); + new Game.buffType("loan 3", function (time, pow) { + return { + name: "Loan 3", + dname: loc("Loan %1", 3), + desc: loc("Cookie production x%1 for %2!", [ + pow, + Game.sayTime(time * Game.fps, -1), + ]), + icon: [1, 33], + time: time * Game.fps, + power: pow, + multCpS: pow, + max: true, + onDie: function () { + if (Game.takeLoan) { + Game.takeLoan(3, true); + } + }, + }; + }); + new Game.buffType("loan 3 interest", function (time, pow) { + return { + name: "Loan 3 (interest)", + dname: loc("Loan %1 (interest)", 3), + desc: loc("Cookie production x%1 for %2!", [ + pow, + Game.sayTime(time * Game.fps, -1), + ]), + icon: [1, 33], + time: time * Game.fps, + power: pow, + multCpS: pow, + max: true, + }; + }); + + //end of buffs + + /*===================================================================================== + GRANDMAPOCALYPSE + =======================================================================================*/ + Game.UpdateGrandmapocalypse = function () { + if (Game.Has("Elder Covenant") || Game.Objects["Grandma"].amount == 0) + Game.elderWrath = 0; + else if (Game.pledgeT > 0) { + //if the pledge is active, lower it + Game.pledgeT--; + if (Game.pledgeT == 0) { + //did we reach 0? make the pledge purchasable again + Game.Lock("Elder Pledge"); + Game.Unlock("Elder Pledge"); + Game.elderWrath = 1; + } + } else { + if (Game.Has("One mind") && Game.elderWrath == 0) { + Game.elderWrath = 1; + } + if ( + Math.random() < 0.001 && + Game.elderWrath < + Game.Has("One mind") + + Game.Has("Communal brainsweep") + + Game.Has("Elder Pact") + ) { + Game.elderWrath++; //have we already pledged? make the elder wrath shift between different stages + } + if ( + Game.Has("Elder Pact") && + Game.Upgrades["Elder Pledge"].unlocked == 0 + ) { + Game.Lock("Elder Pledge"); + Game.Unlock("Elder Pledge"); + } + } + Game.elderWrathD += (Game.elderWrath + 1 - Game.elderWrathD) * 0.001; //slowly fade to the target wrath state + + if (Game.elderWrath != Game.elderWrathOld) { + if (Game.clicksThisSession > 0) { + if (Game.elderWrath >= 3) PlayCue("fadeTo", "grandmapocalypse"); + else PlayCue("fadeTo", "click"); + } + Game.storeToRefresh = 1; + } + + Game.elderWrathOld = Game.elderWrath; + + Game.UpdateWrinklers(); + }; + + //wrinklers + + function inRect(x, y, rect) { + //find out if the point x,y is in the rotated rectangle rect{w,h,r,o} (width,height,rotation in radians,y-origin) (needs to be normalized) + //I found this somewhere online I guess + var dx = x + Math.sin(-rect.r) * -(rect.h / 2 - rect.o), + dy = y + Math.cos(-rect.r) * -(rect.h / 2 - rect.o); + var h1 = Math.sqrt(dx * dx + dy * dy); + var currA = Math.atan2(dy, dx); + var newA = currA - rect.r; + var x2 = Math.cos(newA) * h1; + var y2 = Math.sin(newA) * h1; + if ( + x2 > -0.5 * rect.w && + x2 < 0.5 * rect.w && + y2 > -0.5 * rect.h && + y2 < 0.5 * rect.h + ) + return true; + return false; + } + + Game.wrinklerHP = 2.1; + Game.wrinklers = []; + for (var i = 0; i < 12; i++) { + Game.wrinklers.push({ + id: parseInt(i), + close: 0, + sucked: 0, + phase: 0, + x: 0, + y: 0, + r: 0, + hurt: 0, + hp: Game.wrinklerHP, + selected: 0, + type: 0, + }); + } + Game.getWrinklersMax = function () { + var n = 10; + if (Game.Has("Elder spice")) n += 2; + return n; + }; + Game.ResetWrinklers = function () { + for (var i in Game.wrinklers) { + Game.wrinklers[i] = { + id: parseInt(i), + close: 0, + sucked: 0, + phase: 0, + x: 0, + y: 0, + r: 0, + hurt: 0, + hp: Game.wrinklerHP, + selected: 0, + type: 0, + }; + } + }; + Game.CollectWrinklers = function () { + for (var i in Game.wrinklers) { + Game.wrinklers[i].hp = 0; + } + }; + Game.wrinklerSquishSound = Math.floor(Math.random() * 4) + 1; + Game.playWrinklerSquishSound = function () { + PlaySound( + "snd/" + + (Game.WINKLERS ? "squeak" : "squish") + + Game.wrinklerSquishSound + + ".mp3", + 0.5 + ); + Game.wrinklerSquishSound += Math.floor(Math.random() * 1.5) + 1; + if (Game.wrinklerSquishSound > 4) Game.wrinklerSquishSound -= 4; + }; + Game.SpawnWrinkler = function (me) { + if (!me) { + var max = Game.getWrinklersMax(); + var n = 0; + for (var i in Game.wrinklers) { + if (Game.wrinklers[i].phase > 0) n++; + } + for (var i in Game.wrinklers) { + var it = Game.wrinklers[i]; + if (it.phase == 0 && Game.elderWrath > 0 && n < max && it.id < max) { + me = it; + break; + } + } + } + if (!me) return false; + me.phase = 1; + me.hp = Game.wrinklerHP; + me.type = 0; + if (Math.random() < 0.0001) me.type = 1; //shiny wrinkler + return me; + }; + Game.PopRandomWrinkler = function () { + var wrinklers = []; + for (var i in Game.wrinklers) { + if (Game.wrinklers[i].phase > 0 && Game.wrinklers[i].hp > 0) + wrinklers.push(Game.wrinklers[i]); + } + if (wrinklers.length > 0) { + var me = choose(wrinklers); + me.hp = -10; + return me; + } + return false; + }; + Game.UpdateWrinklers = function () { + var xBase = 0; + var yBase = 0; + var onWrinkler = 0; + if (Game.LeftBackground) { + xBase = Game.cookieOriginX; + yBase = Game.cookieOriginY; + } + var max = Game.getWrinklersMax(); + var n = 0; + for (var i in Game.wrinklers) { + if (Game.wrinklers[i].phase > 0) n++; + } + for (var i in Game.wrinklers) { + var me = Game.wrinklers[i]; + if (me.phase == 0 && Game.elderWrath > 0 && n < max && me.id < max) { + var chance = 0.00001 * Game.elderWrath; + chance *= Game.eff("wrinklerSpawn"); + if (Game.Has("Unholy bait")) chance *= 5; + if (Game.hasGod) { + var godLvl = Game.hasGod("scorn"); + if (godLvl == 1) chance *= 2.5; + else if (godLvl == 2) chance *= 2; + else if (godLvl == 3) chance *= 1.5; + } + if (Game.Has("Wrinkler doormat")) chance = 0.1; + if (Math.random() < chance) { + //respawn + Game.SpawnWrinkler(me); + } + } + if (me.phase > 0) { + if (me.close < 1) me.close += 1 / Game.fps / 10; + if (me.close > 1) me.close = 1; + } else me.close = 0; + if (me.close == 1 && me.phase == 1) { + me.phase = 2; + Game.recalculateGains = 1; + } + if (me.phase == 2) { + me.sucked += (Game.cookiesPs / Game.fps) * Game.cpsSucked; //suck the cookies + } + if (me.phase > 0) { + if (me.type == 0) { + if (me.hp < Game.wrinklerHP) me.hp += 0.04; + me.hp = Math.min(Game.wrinklerHP, me.hp); + } else if (me.type == 1) { + if (me.hp < Game.wrinklerHP * 3) me.hp += 0.04; + me.hp = Math.min(Game.wrinklerHP * 3, me.hp); + } + var d = 128 * (2 - me.close); //*Game.BigCookieSize; + if (Game.prefs.fancy) + d += Math.cos(Game.T * 0.05 + parseInt(me.id)) * 4; + me.r = (me.id / max) * 360; + if (Game.prefs.fancy) + me.r += Math.sin(Game.T * 0.05 + parseInt(me.id)) * 4; + me.x = xBase + Math.sin((me.r * Math.PI) / 180) * d; + me.y = yBase + Math.cos((me.r * Math.PI) / 180) * d; + if (Game.prefs.fancy) + me.r += Math.sin(Game.T * 0.09 + parseInt(me.id)) * 4; + var rect = { w: 100, h: 200, r: (-me.r * Math.PI) / 180, o: 10 }; + if (Math.random() < 0.01 && !Game.prefs.notScary) + me.hurt = Math.max(me.hurt, Math.random()); + if (Game.T % 5 == 0 && Game.CanClick) { + if ( + Game.LeftBackground && + Game.mouseX < Game.LeftBackground.canvas.width && + inRect(Game.mouseX - me.x, Game.mouseY - me.y, rect) + ) + me.selected = 1; + else me.selected = 0; + } + if (me.selected && onWrinkler == 0 && Game.CanClick) { + me.hurt = Math.max(me.hurt, 0.25); + //me.close*=0.99; + if (Game.Click && Game.lastClickedEl == l("backgroundLeftCanvas")) { + if (Game.keys[17] && Game.sesame) { + me.type = !me.type; + PlaySound("snd/shimmerClick.mp3"); + } //ctrl-click on a wrinkler in god mode to toggle its shininess + else { + Game.playWrinklerSquishSound(); + me.hurt = 1; + me.hp -= 0.75; + if ( + Game.prefs.particles && + !Game.prefs.notScary && + !Game.WINKLERS && + !(me.hp <= 0.5 && me.phase > 0) + ) { + var x = me.x + Math.sin((me.r * Math.PI) / 180) * 90; + var y = me.y + Math.cos((me.r * Math.PI) / 180) * 90; + for (var ii = 0; ii < 3; ii++) { + //Game.particleAdd(x+Math.random()*50-25,y+Math.random()*50-25,Math.random()*4-2,Math.random()*-2-2,1,1,2,'wrinklerBits.png'); + var part = Game.particleAdd( + x, + y, + Math.random() * 4 - 2, + Math.random() * -2 - 2, + 1, + 1, + 2, + me.type == 1 + ? "shinyWrinklerBits.png" + : "wrinklerBits.png" + ); + part.r = -me.r; + } + } + } + Game.Click = 0; + } + onWrinkler = 1; + } + } + + if (me.hurt > 0) { + me.hurt -= 5 / Game.fps; + //me.close-=me.hurt*0.05; + //me.x+=Math.random()*2-1; + //me.y+=Math.random()*2-1; + me.r += Math.sin(Game.T * 1) * me.hurt * 18; //Math.random()*2-1; + } + if (me.hp <= 0.5 && me.phase > 0) { + Game.playWrinklerSquishSound(); + PlaySound( + "snd/pop" + Math.floor(Math.random() * 3 + 1) + ".mp3", + 0.75 + ); + Game.wrinklersPopped++; + Game.recalculateGains = 1; + me.phase = 0; + me.close = 0; + me.hurt = 0; + me.hp = 3; + var toSuck = 1.1; + if (Game.Has("Sacrilegious corruption")) toSuck *= 1.05; + if (me.type == 1) toSuck *= 3; //shiny wrinklers are an elusive, profitable breed + me.sucked *= toSuck; //cookie dough does weird things inside wrinkler digestive tracts + if (Game.Has("Wrinklerspawn")) me.sucked *= 1.05; + if (Game.hasGod) { + var godLvl = Game.hasGod("scorn"); + if (godLvl == 1) me.sucked *= 1.15; + else if (godLvl == 2) me.sucked *= 1.1; + else if (godLvl == 3) me.sucked *= 1.05; + } + if (me.sucked > 0.5) { + Game.Notify( + me.type == 1 + ? loc("Exploded a shiny wrinkler") + : loc("Exploded a wrinkler"), + loc("Found %1!", loc("%1 cookie", LBeautify(me.sucked))), + [19, 8], + 6 + ); + Game.Popup( + '
' + + loc("+%1!", loc("%1 cookie", LBeautify(me.sucked))) + + "
", + Game.mouseX, + Game.mouseY + ); + + if (Game.season == "halloween") { + //if (Math.random()<(Game.HasAchiev('Spooky cookies')?0.2:0.05))//halloween cookie drops + var failRate = 0.95; + if (Game.HasAchiev("Spooky cookies")) failRate = 0.8; + if (Game.Has("Starterror")) failRate *= 0.9; + failRate *= 1 / Game.dropRateMult(); + if (Game.hasGod) { + var godLvl = Game.hasGod("seasons"); + if (godLvl == 1) failRate *= 0.9; + else if (godLvl == 2) failRate *= 0.95; + else if (godLvl == 3) failRate *= 0.97; + } + if (me.type == 1) failRate *= 0.9; + if (Math.random() > failRate) { + //halloween cookie drops + var cookie = choose([ + "Skull cookies", + "Ghost cookies", + "Bat cookies", + "Slime cookies", + "Pumpkin cookies", + "Eyeball cookies", + "Spider cookies", + ]); + if (!Game.HasUnlocked(cookie) && !Game.Has(cookie)) { + Game.Unlock(cookie); + Game.Notify( + Game.Upgrades[cookie].dname, + loc( + "You also found %1!", + Game.Upgrades[cookie].dname + ), + Game.Upgrades[cookie].icon + ); + } + } + } + Game.DropEgg(0.98); + } + if (me.type == 1) Game.Win("Last Chance to See"); + Game.Earn(me.sucked); + /*if (Game.prefs.particles && !Game.WINKLERS) + { + var x=me.x+(Math.sin(me.r*Math.PI/180)*100); + var y=me.y+(Math.cos(me.r*Math.PI/180)*100); + for (var ii=0;ii<6;ii++) + { + Game.particleAdd(x+Math.random()*50-25,y+Math.random()*50-25,Math.random()*4-2,Math.random()*-2-2,1,1,2,'wrinklerBits.png'); + } + }*/ + if (Game.prefs.particles) { + var x = me.x + Math.sin((me.r * Math.PI) / 180) * 90; + var y = me.y + Math.cos((me.r * Math.PI) / 180) * 90; + if (me.sucked > 0) { + for (var ii = 0; ii < 5; ii++) { + Game.particleAdd( + Game.mouseX, + Game.mouseY, + Math.random() * 4 - 2, + Math.random() * -2 - 2, + Math.random() * 0.5 + 0.75, + 1.5, + 2 + ); + } + } + if (!Game.prefs.notScary && !Game.WINKLERS) { + for (var ii = 0; ii < 8; ii++) { + var part = Game.particleAdd( + x, + y, + Math.random() * 4 - 2, + Math.random() * -2 - 2, + 1, + 1, + 2, + me.type == 1 ? "shinyWrinklerBits.png" : "wrinklerBits.png" + ); + part.r = -me.r; + } + } + } + me.sucked = 0; + } + } + if (onWrinkler) { + Game.mousePointer = 1; + } + }; + Game.DrawWrinklers = function () { + var ctx = Game.LeftBackground; + var selected = 0; + for (var i in Game.wrinklers) { + var me = Game.wrinklers[i]; + if (me.phase > 0) { + ctx.globalAlpha = me.close; + ctx.save(); + ctx.translate(me.x, me.y); + var sw = 100 + 2 * Math.sin(Game.T * 0.2 + i * 3); + var sh = 200 + 5 * Math.sin(Game.T * 0.2 - 2 + i * 3); + if (Game.prefs.fancy) { + ctx.translate(0, 30); + ctx.rotate((-me.r * Math.PI) / 180); + ctx.drawImage(Pic("wrinklerShadow.png"), -sw / 2, -10, sw, sh); + ctx.rotate((me.r * Math.PI) / 180); + ctx.translate(0, -30); + } + ctx.rotate((-me.r * Math.PI) / 180); + //var s=Math.min(1,me.sucked/(Game.cookiesPs*60))*0.75+0.25;//scale wrinklers as they eat + //ctx.scale(Math.pow(s,1.5)*1.25,s); + //ctx.fillRect(-50,-10,100,200); + var pic = Game.WINKLERS ? "winkler.png" : "wrinkler.png"; + if (me.type == 1) + pic = Game.WINKLERS ? "shinyWinkler.png" : "shinyWrinkler.png"; + else if (Game.season == "christmas") + pic = Game.WINKLERS ? "winterWinkler.png" : "winterWrinkler.png"; + ctx.drawImage(Pic(pic), -sw / 2, -10, sw, sh); + if (!Game.WINKLERS && Game.prefs.notScary) + ctx.drawImage( + Pic( + Math.sin( + Game.T * 0.003 + + i * 11 + + 137 + + Math.sin(Game.T * 0.017 + i * 13) + ) > 0.9997 + ? "wrinklerBlink.png" + : "wrinklerGooglies.png" + ), + -sw / 2, + -10 + 1 * Math.sin(Game.T * 0.2 + i * 3 + 1.2), + sw, + sh + ); + //ctx.drawImage(Pic(pic),-50,-10); + //ctx.fillText(me.id+' : '+me.sucked,0,0); + if (me.type == 1 && Math.random() < 0.3 && Game.prefs.particles) { + //sparkle + ctx.globalAlpha = Math.random() * 0.65 + 0.1; + var s = Math.random() * 30 + 5; + ctx.globalCompositeOperation = "lighter"; + ctx.drawImage( + Pic("glint.jpg"), + -s / 2 + Math.random() * 50 - 25, + -s / 2 + Math.random() * 200, + s, + s + ); + } + ctx.restore(); + + if (Game.prefs.particles && me.phase == 2 && Math.random() < 0.03) { + Game.particleAdd( + me.x, + me.y, + Math.random() * 4 - 2, + Math.random() * -2 - 2, + Math.random() * 0.5 + 0.5, + 1, + 2 + ); + } + + if (me.selected) selected = me; + } + } + if (selected && Game.Has("Eye of the wrinkler")) { + var x = Game.cookieOriginX; + var y = Game.cookieOriginY; + ctx.font = "14px Merriweather"; + ctx.textAlign = "center"; + var text = loc("Swallowed:"); + var width = Math.ceil( + Math.max( + ctx.measureText(text).width, + ctx.measureText(Beautify(selected.sucked)).width + ) + ); + ctx.fillStyle = "#000"; + ctx.globalAlpha = 0.65; + /*ctx.strokeStyle='#000'; + ctx.lineWidth=8; + ctx.beginPath(); + ctx.moveTo(x,y); + ctx.lineTo(Math.floor(selected.x),Math.floor(selected.y)); + ctx.stroke();*/ + var xO = x - width / 2 - 16; + var yO = y - 4; + var dist = Math.floor( + Math.sqrt( + (selected.x - xO) * (selected.x - xO) + + (selected.y - yO) * (selected.y - yO) + ) + ); + var angle = -Math.atan2(yO - selected.y, xO - selected.x) + Math.PI / 2; + ctx.strokeStyle = "#fff"; + ctx.lineWidth = 1; + for (var i = 0; i < Math.floor(dist / 12); i++) { + var xC = selected.x + Math.sin(angle) * i * 12; + var yC = selected.y + Math.cos(angle) * i * 12; + ctx.beginPath(); + ctx.arc( + xC, + yC, + 4 + + (Game.prefs.fancy + ? 2 * Math.pow(Math.sin(-Game.T * 0.2 + i * 0.3), 4) + : 0), + 0, + 2 * Math.PI, + false + ); + ctx.fill(); + ctx.stroke(); + } + ctx.fillRect(x - width / 2 - 8 - 10, y - 23, width + 16 + 20, 38); + ctx.strokeStyle = "#fff"; + ctx.lineWidth = 1; + ctx.strokeRect( + x - width / 2 - 8 - 10 + 1.5, + y - 23 + 1.5, + width + 16 + 20 - 3, + 38 - 3 + ); + ctx.globalAlpha = 1; + ctx.fillStyle = "#fff"; + ctx.fillText(text, x + 14, y - 8); + ctx.fillText(Beautify(selected.sucked), x + 10, y + 8); + var s = 54 + 2 * Math.sin(Game.T * 0.4); + ctx.drawImage( + Pic("icons.png"), + 27 * 48, + 26 * 48, + 48, + 48, + x - width / 2 - 16 - s / 2, + y - 4 - s / 2, + s, + s + ); + } + }; + Game.SaveWrinklers = function () { + var amount = 0; + var amountShinies = 0; + var number = 0; + var shinies = 0; + for (var i in Game.wrinklers) { + if (Game.wrinklers[i].sucked > 0.5) { + number++; + if (Game.wrinklers[i].type == 1) { + shinies++; + amountShinies += Game.wrinklers[i].sucked; + } else amount += Game.wrinklers[i].sucked; + } + } + return { + amount: amount, + number: number, + shinies: shinies, + amountShinies: amountShinies, + }; + }; + Game.LoadWrinklers = function (amount, number, shinies, amountShinies) { + if (number > 0 && (amount > 0 || amountShinies > 0)) { + var fullNumber = number - shinies; + var fullNumberShinies = shinies; + for (var i in Game.wrinklers) { + if (number > 0) { + Game.wrinklers[i].phase = 2; + Game.wrinklers[i].close = 1; + Game.wrinklers[i].hp = 3; + if (shinies > 0) { + Game.wrinklers[i].type = 1; + Game.wrinklers[i].sucked = amountShinies / fullNumberShinies; + shinies--; + } else Game.wrinklers[i].sucked = amount / fullNumber; + number--; + } //respawn + } + } + }; + + /*===================================================================================== + SPECIAL THINGS AND STUFF + =======================================================================================*/ + + Game.specialTab = ""; + Game.specialTabHovered = ""; + Game.specialTabs = []; + + Game.UpdateSpecial = function () { + Game.specialTabs = []; + if (Game.Has("A festive hat")) Game.specialTabs.push("santa"); + if (Game.Has("A crumbly egg")) Game.specialTabs.push("dragon"); + if (Game.specialTabs.length == 0) { + Game.ToggleSpecialMenu(0); + return; + } + + if (Game.LeftBackground) { + Game.specialTabHovered = ""; + var len = Game.specialTabs.length; + if (len == 0) return; + var y = Game.LeftBackground.canvas.height - 24 - 48 * len; + for (var i = 0; i < Game.specialTabs.length; i++) { + var selected = 0; + if (Game.specialTab == Game.specialTabs[i]) selected = 1; + var x = 24; + var s = 1; + if (selected) { + s = 2; + x += 24; + } + + if ( + Math.abs(Game.mouseX - x) <= 24 * s && + Math.abs(Game.mouseY - y) <= 24 * s + ) { + Game.specialTabHovered = Game.specialTabs[i]; + Game.mousePointer = 1; + Game.CanClick = 0; + if (Game.Click && Game.lastClickedEl == l("backgroundLeftCanvas")) { + if (Game.specialTab != Game.specialTabs[i]) { + Game.specialTab = Game.specialTabs[i]; + Game.ToggleSpecialMenu(1); + PlaySound("snd/press.mp3"); + } else { + Game.ToggleSpecialMenu(0); + PlaySound("snd/press.mp3"); + } + //PlaySound('snd/tick.mp3'); + } + } + + y += 48; + } + } + }; + + Game.santaLevels = [ + "Festive test tube", + "Festive ornament", + "Festive wreath", + "Festive tree", + "Festive present", + "Festive elf fetus", + "Elf toddler", + "Elfling", + "Young elf", + "Bulky elf", + "Nick", + "Santa Claus", + "Elder Santa", + "True Santa", + "Final Claus", + ]; + if (!EN) { + for (var i in Game.santaLevels) { + Game.santaLevels[i] = loc(Game.santaLevels[i]); + } + } + for (var i in Game.santaDrops) { //scale christmas upgrade prices with santa level + Game.Upgrades[Game.santaDrops[i]].priceFunc = function () { + return Math.pow(3, Game.santaLevel) * 2525; + }; + } + + Game.UpgradeSanta = function () { + var moni = Math.pow(Game.santaLevel + 1, Game.santaLevel + 1); + if (Game.cookies > moni && Game.santaLevel < 14) { + PlaySound("snd/shimmerClick.mp3"); + + Game.Spend(moni); + Game.santaLevel = (Game.santaLevel + 1) % 15; + if (Game.santaLevel == 14) { + Game.Unlock("Santa's dominion"); + Game.Notify( + loc("You are granted %1.", Game.Upgrades["Santa's dominion"].dname), + "", + Game.Upgrades["Santa's dominion"].icon + ); + } + var drops = []; + for (var i in Game.santaDrops) { + if (!Game.HasUnlocked(Game.santaDrops[i])) + drops.push(Game.santaDrops[i]); + } + var drop = choose(drops); + if (drop) { + Game.Unlock(drop); + Game.Notify( + loc("Found a present!"), + loc("You find a present which contains...") + + "
" + + Game.Upgrades[drop].dname + + "!", + Game.Upgrades[drop].icon + ); + } + + Game.ToggleSpecialMenu(1); + + if (l("specialPic")) { + var rect = l("specialPic").getBounds(); + Game.SparkleAt( + (rect.left + rect.right) / 2, + (rect.top + rect.bottom) / 2 + ) + + 32 - + TopBarOffset; + } + + if (Game.santaLevel >= 6) Game.Win("Coming to town"); + if (Game.santaLevel >= 14) Game.Win("All hail Santa"); + Game.recalculateGains = 1; + Game.upgradesToRebuild = 1; + } + }; + + Game.dragonLevels = [ + { + name: "Dragon egg", + action: loc("Chip it"), + pic: 0, + cost: function () { + return Game.cookies >= 1000000; + }, + buy: function () { + Game.Spend(1000000); + }, + costStr: function () { + return loc("%1 cookie", LBeautify(1000000)); + }, + }, + { + name: "Dragon egg", + action: loc("Chip it"), + pic: 1, + cost: function () { + return Game.cookies >= 1000000 * 2; + }, + buy: function () { + Game.Spend(1000000 * 2); + }, + costStr: function () { + return loc("%1 cookie", LBeautify(1000000 * 2)); + }, + }, + { + name: "Dragon egg", + action: loc("Chip it"), + pic: 2, + cost: function () { + return Game.cookies >= 1000000 * 4; + }, + buy: function () { + Game.Spend(1000000 * 4); + }, + costStr: function () { + return loc("%1 cookie", LBeautify(1000000 * 4)); + }, + }, + { + name: "Shivering dragon egg", + action: loc("Hatch it"), + pic: 3, + cost: function () { + return Game.cookies >= 1000000 * 8; + }, + buy: function () { + Game.Spend(1000000 * 8); + }, + costStr: function () { + return loc("%1 cookie", LBeautify(1000000 * 8)); + }, + }, + { + name: "Krumblor, cookie hatchling", + action: + "Train Breath of Milk
Aura : kittens are 5% more effective", + pic: 4, + cost: function () { + return Game.cookies >= 1000000 * 16; + }, + buy: function () { + Game.Spend(1000000 * 16); + }, + costStr: function () { + return loc("%1 cookie", LBeautify(1000000 * 16)); + }, + }, + { + name: "Krumblor, cookie hatchling", + action: + "Train Dragon Cursor
Aura : clicking is 5% more effective", + pic: 4, + }, + { + name: "Krumblor, cookie hatchling", + action: + "Train Elder Battalion
Aura : grandmas gain +1% CpS for every non-grandma building", + pic: 4, + }, + { + name: "Krumblor, cookie hatchling", + action: + "Train Reaper of Fields
Aura : golden cookies may trigger a Dragon Harvest", + pic: 4, + }, + { + name: "Krumblor, cookie dragon", + action: + "Train Earth Shatterer
Aura : buildings sell back for 50% instead of 25%", + pic: 5, + }, + { + name: "Krumblor, cookie dragon", + action: + "Train Master of the Armory
Aura : all upgrades are 2% cheaper", + pic: 5, + }, + { + name: "Krumblor, cookie dragon", + action: + "Train Fierce Hoarder
Aura : all buildings are 2% cheaper", + pic: 5, + }, + { + name: "Krumblor, cookie dragon", + action: + "Train Dragon God
Aura : prestige CpS bonus +5%", + pic: 5, + }, + { + name: "Krumblor, cookie dragon", + action: + "Train Arcane Aura
Aura : golden cookies appear 5% more often", + pic: 5, + }, + { + name: "Krumblor, cookie dragon", + action: + "Train Dragonflight
Aura : golden cookies may trigger a Dragonflight", + pic: 5, + }, + { + name: "Krumblor, cookie dragon", + action: + "Train Ancestral Metamorphosis
Aura : golden cookies give 10% more cookies", + pic: 5, + }, + { + name: "Krumblor, cookie dragon", + action: + "Train Unholy Dominion
Aura : wrath cookies give 10% more cookies", + pic: 5, + }, + { + name: "Krumblor, cookie dragon", + action: + "Train Epoch Manipulator
Aura : golden cookie effects last 5% longer", + pic: 5, + }, + { + name: "Krumblor, cookie dragon", + action: + "Train Mind Over Matter
Aura : +25% random drops", + pic: 5, + }, + { + name: "Krumblor, cookie dragon", + action: + "Train Radiant Appetite
Aura : all cookie production multiplied by 2", + pic: 5, + }, + { + name: "Krumblor, cookie dragon", + action: + "Train Dragon's Fortune
Aura : +123% CpS per golden cookie on-screen", + pic: 5, + }, + { + name: "Krumblor, cookie dragon", + action: + "Train Dragon's Curve
Aura : sugar lumps grow 5% faster, 50% weirder", + pic: 5, + }, + { + name: "Krumblor, cookie dragon", + action: + "Train Reality Bending
Aura : 10% of every other aura, combined", + pic: 5, + }, + { + name: "Krumblor, cookie dragon", + action: + "Train Dragon Orbs
Aura : selling your best building may grant a wish", + pic: 5, + }, + { + name: "Krumblor, cookie dragon", + action: + "Train Supreme Intellect
Aura : confers various powers to your minigames", + pic: 5, + }, + { + name: "Krumblor, cookie dragon", + action: + loc("Bake dragon cookie") + + "
" + + loc("Delicious!") + + "", + pic: 6, + cost: function () { + var fail = 0; + for (var i in Game.Objects) { + if (Game.Objects[i].amount < 50) fail = 1; + } + return fail == 0; + }, + buy: function () { + for (var i in Game.Objects) { + Game.Objects[i].sacrifice(50); + } + Game.Unlock("Dragon cookie"); + }, + costStr: function () { + return loc("%1 of every building", 50); + }, + }, + { + name: "Krumblor, cookie dragon", + action: + loc("Train secondary aura") + + "
" + + loc("Lets you use two dragon auras simultaneously") + + "", + pic: 7, + cost: function () { + var fail = 0; + for (var i in Game.Objects) { + if (Game.Objects[i].amount < 200) fail = 1; + } + return fail == 0; + }, + buy: function () { + for (var i in Game.Objects) { + Game.Objects[i].sacrifice(200); + } + }, + costStr: function () { + return loc("%1 of every building", 200); + }, + }, + { + name: "Krumblor, cookie dragon", + action: loc("Your dragon is fully trained."), + pic: 8, + }, + ]; + + Game.dragonAuras = { + 0: { + name: "No aura", + pic: [0, 7], + desc: loc("Select an aura from those your dragon knows."), + }, + 1: { + name: "Breath of Milk", + pic: [18, 25], + desc: loc("Kittens are %1% more effective.", 5), + }, + 2: { + name: "Dragon Cursor", + pic: [0, 25], + desc: loc("Clicking is %1% more powerful.", 5), + }, + 3: { + name: "Elder Battalion", + pic: [1, 25], + desc: loc( + "Grandmas gain +%1% CpS for each non-grandma building.", + 1 + ), + }, + 4: { + name: "Reaper of Fields", + pic: [2, 25], + desc: loc("Golden cookies may trigger a Dragon Harvest."), + }, + 5: { + name: "Earth Shatterer", + pic: [3, 25], + desc: loc( + "Buildings sell back for %1% instead of %2%.", + [50, 25] + ), + }, + 6: { + name: "Master of the Armory", + pic: [4, 25], + desc: loc("All upgrades are %1% cheaper.", 2), + }, + 7: { + name: "Fierce Hoarder", + pic: [15, 25], + desc: loc("All buildings are %1% cheaper.", 2), + }, + 8: { + name: "Dragon God", + pic: [16, 25], + desc: loc("+%1% prestige level effect on CpS.", 5), + }, + 9: { + name: "Arcane Aura", + pic: [17, 25], + desc: loc("Golden cookies appear %1% more often.", 5), + }, + 10: { + name: "Dragonflight", + pic: [5, 25], + desc: loc("Golden cookies may trigger a Dragonflight."), + }, + 11: { + name: "Ancestral Metamorphosis", + pic: [6, 25], + desc: loc("Golden cookies give %1% more cookies.", 10), + }, + 12: { + name: "Unholy Dominion", + pic: [7, 25], + desc: loc("Wrath cookies give %1% more cookies.", 10), + }, + 13: { + name: "Epoch Manipulator", + pic: [8, 25], + desc: loc("Golden cookies stay %1% longer.", 5), + }, + 14: { + name: "Mind Over Matter", + pic: [13, 25], + desc: loc("Random drops are %1% more common.", 25), + }, + 15: { + name: "Radiant Appetite", + pic: [14, 25], + desc: loc("All cookie production multiplied by %1.", 2), + }, + 16: { + name: "Dragon's Fortune", + pic: [19, 25], + desc: loc( + "+%1% CpS per golden cookie on-screen, multiplicative.", + 123 + ), + }, + 17: { + name: "Dragon's Curve", + pic: [20, 25], + desc: + loc("+%1% sugar lump growth.", 5) + + " " + + loc("Sugar lumps are twice as likely to be unusual."), + }, + 18: { + name: "Reality Bending", + pic: [32, 25], + desc: loc( + "One tenth of every other dragon aura, combined." + ), + }, + 19: { + name: "Dragon Orbs", + pic: [33, 25], + desc: loc( + "With no buffs and no golden cookies on screen, selling your most powerful building has %1% chance to summon one.", + 10 + ), + }, + 20: { + name: "Supreme Intellect", + pic: [34, 25], + desc: loc( + "Confers various powers to your minigames while active.
See the bottom of each minigame for more details." + ), + }, + }; + + Game.dragonAurasBN = {}; + for (var i in Game.dragonAuras) { + Game.dragonAurasBN[Game.dragonAuras[i].name] = Game.dragonAuras[i]; + } + for (var i in Game.dragonAuras) { + Game.dragonAuras[i].id = parseInt(i); + Game.dragonAuras[i].dname = loc(Game.dragonAuras[i].name); + } + + for (var i = 0; i < Game.dragonLevels.length; i++) { + var it = Game.dragonLevels[i]; + it.name = loc(it.name); + if (i >= 4 && i < Game.dragonLevels.length - 3) { + if (!EN) + it.action = + loc("Train %1", Game.dragonAuras[i - 3].dname) + + "
" + + loc("Aura: %1", Game.dragonAuras[i - 3].desc) + + ""; + if (i >= 5) { + it.costStr = (function (building) { + return function () { + return loc("%1 " + building.bsingle, LBeautify(100)); + }; + })(Game.ObjectsById[i - 5]); + it.cost = (function (building) { + return function () { + return building.amount >= 100; + }; + })(Game.ObjectsById[i - 5]); + it.buy = (function (building) { + return function () { + building.sacrifice(100); + }; + })(Game.ObjectsById[i - 5]); + } + } + } + + Game.hasAura = function (what) { + if ( + Game.dragonAuras[Game.dragonAura].name == what || + Game.dragonAuras[Game.dragonAura2].name == what + ) + return true; + else return false; + }; + Game.auraMult = function (what) { + var n = 0; + if ( + Game.dragonAuras[Game.dragonAura].name == what || + Game.dragonAuras[Game.dragonAura2].name == what + ) + n = 1; + if ( + (Game.dragonAuras[Game.dragonAura].name == "Reality Bending" || + Game.dragonAuras[Game.dragonAura2].name == "Reality Bending") && + Game.dragonLevel >= Game.dragonAurasBN[what].id + 4 + ) + n += 0.1; + return n; + }; + + Game.SelectDragonAura = function (slot, update) { + var currentAura = 0; + var otherAura = 0; + if (slot == 0) currentAura = Game.dragonAura; + else currentAura = Game.dragonAura2; + if (slot == 0) otherAura = Game.dragonAura2; + else otherAura = Game.dragonAura; + if (!update) Game.SelectingDragonAura = currentAura; + + var str = ""; + for (var i in Game.dragonAuras) { + if (Game.dragonLevel >= parseInt(i) + 4) { + var icon = Game.dragonAuras[i].pic; + if (i == 0 || i != otherAura) + str += + '
"; + } + } + + var highestBuilding = 0; + for (var i in Game.Objects) { + if (Game.Objects[i].amount > 0) highestBuilding = Game.Objects[i]; + } + + Game.Prompt( + "

" + + loc( + slot == 1 + ? "Set your dragon's secondary aura" + : "Set your dragon's aura" + ) + + "

" + + '
' + + '
' + + '
' + + str + + "
" + + '
' + + '
' + + (highestBuilding == 0 + ? loc( + "Switching your aura is free because you own no buildings." + ) + : loc( + "The cost of switching your aura is %1.
This will affect your CpS!", + loc("%1 " + highestBuilding.bsingle, LBeautify(1)) + )) + + "
", + [ + [ + loc("Confirm"), + (slot == 0 ? "Game.dragonAura" : "Game.dragonAura2") + + "=Game.SelectingDragonAura;" + + (highestBuilding == 0 || currentAura == Game.SelectingDragonAura + ? "" + : "Game.ObjectsById[" + + highestBuilding.id + + "].sacrifice(1);") + + "Game.ToggleSpecialMenu(1);Game.ClosePrompt();", + ], + loc("Cancel"), + ], + 0, + "widePrompt" + ); + Game.DescribeDragonAura(Game.SelectingDragonAura); + }; + Game.SelectingDragonAura = -1; + Game.SetDragonAura = function (aura, slot) { + Game.SelectingDragonAura = aura; + Game.SelectDragonAura(slot, 1); + }; + Game.DescribeDragonAura = function (aura) { + l("dragonAuraInfo").innerHTML = + '

' + + Game.dragonAuras[aura].dname + + "

" + + '
' + + Game.dragonAuras[aura].desc + + "
"; + }; + + Game.UpgradeDragon = function () { + if ( + Game.dragonLevel < Game.dragonLevels.length - 1 && + Game.dragonLevels[Game.dragonLevel].cost() + ) { + PlaySound("snd/shimmerClick.mp3"); + Game.dragonLevels[Game.dragonLevel].buy(); + Game.dragonLevel = (Game.dragonLevel + 1) % Game.dragonLevels.length; + + if (Game.dragonLevel >= Game.dragonLevels.length - 1) + Game.Win("Here be dragon"); + Game.ToggleSpecialMenu(1); + if (l("specialPic")) { + var rect = l("specialPic").getBounds(); + Game.SparkleAt( + (rect.left + rect.right) / 2, + (rect.top + rect.bottom) / 2 + ) + + 32 - + TopBarOffset; + } + Game.recalculateGains = 1; + Game.upgradesToRebuild = 1; + } + }; + + Game.lastClickedSpecialPic = 0; + Game.ClickSpecialPic = function () { + if ( + Game.specialTab == "dragon" && + Game.dragonLevel >= 4 && + Game.Has("Pet the dragon") && + l("specialPic") + ) { + triggerAnim(l("specialPic"), "pucker"); + PlaySound( + "snd/click" + Math.floor(Math.random() * 7 + 1) + ".mp3", + 0.5 + ); + if (Date.now() - Game.lastClickedSpecialPic > 2000) + PlaySound("snd/growl.mp3"); + //else if (Math.random()<0.5) PlaySound('snd/growl.mp3',0.5+Math.random()*0.2); + Game.lastClickedSpecialPic = Date.now(); + if (Game.prefs.particles) { + Game.particleAdd( + Game.mouseX, + Game.mouseY - 32, + Math.random() * 4 - 2, + Math.random() * -2 - 4, + Math.random() * 0.2 + 0.5, + 1, + 2, + [20, 3] + ); + } + if (Game.dragonLevel >= 8 && Math.random() < 1 / 20) { + Math.seedrandom(Game.seed + "/dragonTime"); + var drops = [ + "Dragon scale", + "Dragon claw", + "Dragon fang", + "Dragon teddy bear", + ]; + drops = shuffle(drops); + var drop = + drops[Math.floor((new Date().getMinutes() / 60) * drops.length)]; + if (!Game.Has(drop) && !Game.HasUnlocked(drop)) { + Game.Unlock(drop); + Game.Notify( + drop, + "" + loc("Your dragon dropped something!") + "", + Game.Upgrades[drop].icon + ); + } + Math.seedrandom(); + } + } + }; + + Game.ToggleSpecialMenu = function (on) { + if (on) { + var pic = ""; + var frame = 0; + if (Game.specialTab == "santa") { + pic = "santa.png"; + frame = Game.santaLevel; + } else if (Game.specialTab == "dragon") { + pic = "dragon.png?v=" + Game.version; + frame = Game.dragonLevels[Game.dragonLevel].pic; + } else { + pic = "dragon.png?v=" + Game.version; + frame = 4; + } + + var str = + '
= 4 && + Game.Has("Pet the dragon") + ? "cursor:pointer;" + : "") + + "position:absolute;left:-16px;top:-64px;width:96px;height:96px;background:url(img/" + + pic + + ");background-position:" + + -frame * 96 + + 'px 0px;filter:drop-shadow(0px 3px 2px #000);-webkit-filter:drop-shadow(0px 3px 2px #000);">
'; + str += + '
x
'; + + if (Game.specialTab == "santa") { + var moni = Math.pow(Game.santaLevel + 1, Game.santaLevel + 1); + + str += + '

' + + Game.santaLevels[Game.santaLevel] + + "

"; + if (Game.santaLevel < 14) { + str += + '
' + + '" + + ""; + } + } else if (Game.specialTab == "dragon") { + var level = Game.dragonLevels[Game.dragonLevel]; + + str += '

' + level.name + "

"; + + if (Game.dragonLevel >= 5) { + var icon = Game.dragonAuras[Game.dragonAura].pic; + str += + '

' + + Game.dragonAuras[Game.dragonAura].dname + + "

" + + '
' + + Game.dragonAuras[Game.dragonAura].desc + + "
", + "top" + ) + + ">"; + } + if (Game.dragonLevel >= 26) { + //2nd aura slot; increased with last building (cortex baker) + var icon = Game.dragonAuras[Game.dragonAura2].pic; + str += + '

' + + Game.dragonAuras[Game.dragonAura2].dname + + "

" + + '
' + + Game.dragonAuras[Game.dragonAura2].desc + + "
", + "top" + ) + + ">"; + } + + if (Game.dragonLevel < Game.dragonLevels.length - 1) { + str += + '
' + + '" + + ""; + } else { + str += + '
' + + '
' + + level.action + + "
"; + } + } + + l("specialPopup").innerHTML = str; + + l("specialPopup").className = "framed prompt onScreen"; + } else { + if (Game.specialTab != "") { + Game.specialTab = ""; + l("specialPopup").className = "framed prompt offScreen"; + setTimeout(function () { + if (Game.specialTab == "") { + /*l('specialPopup').style.display='none';*/ l( + "specialPopup" + ).innerHTML = ""; + } + }, 1000 * 0.2); + } + } + }; + Game.DrawSpecial = function () { + var len = Game.specialTabs.length; + if (len == 0) return; + Game.LeftBackground.globalAlpha = 1; + var y = Game.LeftBackground.canvas.height - 24 - 48 * len; + var tabI = 0; + + for (var i in Game.specialTabs) { + var selected = 0; + var hovered = 0; + if (Game.specialTab == Game.specialTabs[i]) selected = 1; + if (Game.specialTabHovered == Game.specialTabs[i]) hovered = 1; + var x = 24; + var s = 1; + var pic = ""; + var frame = 0; + if (hovered) { + s = 1; + x = 24; + } + if (selected) { + s = 1; + x = 48; + } + + if (Game.specialTabs[i] == "santa") { + pic = "santa.png"; + frame = Game.santaLevel; + } else if (Game.specialTabs[i] == "dragon") { + pic = "dragon.png?v=" + Game.version; + frame = Game.dragonLevels[Game.dragonLevel].pic; + } else { + pic = "dragon.png?v=" + Game.version; + frame = 4; + } + + if (hovered || selected) { + var ss = s * 64; + var r = Math.floor((Game.T * 0.5) % 360); + Game.LeftBackground.save(); + Game.LeftBackground.translate(x, y); + if (Game.prefs.fancy) + Game.LeftBackground.rotate((r / 360) * Math.PI * 2); + Game.LeftBackground.globalAlpha = 0.75; + Game.LeftBackground.drawImage( + Pic("shine.png"), + -ss / 2, + -ss / 2, + ss, + ss + ); + Game.LeftBackground.restore(); + } + + if (Game.prefs.fancy) + Game.LeftBackground.drawImage( + Pic(pic), + 96 * frame, + 0, + 96, + 96, + x + (selected ? 0 : Math.sin(Game.T * 0.2 + tabI) * 3) - 24 * s, + y - + (selected ? 6 : Math.abs(Math.cos(Game.T * 0.2 + tabI)) * 6) - + 24 * s, + 48 * s, + 48 * s + ); + else + Game.LeftBackground.drawImage( + Pic(pic), + 96 * frame, + 0, + 96, + 96, + x - 24 * s, + y - 24 * s, + 48 * s, + 48 * s + ); + + tabI++; + y += 48; + } + }; + + /*===================================================================================== + VISUAL EFFECTS + =======================================================================================*/ + + Game.AllMilks = [ + { name: "Automatic", icon: [0, 7], type: -1, pic: "milkPlain" }, + { name: "Plain milk", icon: [1, 8], type: 0, pic: "milkPlain" }, + { name: "Chocolate milk", icon: [2, 8], type: 0, pic: "milkChocolate" }, + { name: "Raspberry milk", icon: [3, 8], type: 0, pic: "milkRaspberry" }, + { name: "Orange milk", icon: [4, 8], type: 0, pic: "milkOrange" }, + { name: "Caramel milk", icon: [5, 8], type: 0, pic: "milkCaramel" }, + { name: "Banana milk", icon: [6, 8], type: 0, pic: "milkBanana" }, + { name: "Lime milk", icon: [7, 8], type: 0, pic: "milkLime" }, + { name: "Blueberry milk", icon: [8, 8], type: 0, pic: "milkBlueberry" }, + { name: "Strawberry milk", icon: [9, 8], type: 0, pic: "milkStrawberry" }, + { name: "Vanilla milk", icon: [10, 8], type: 0, pic: "milkVanilla" }, + { name: "Zebra milk", icon: [10, 7], type: 1, pic: "milkZebra" }, + { name: "Cosmic milk", icon: [9, 7], type: 1, pic: "milkStars" }, + { name: "Flaming milk", icon: [8, 7], type: 1, pic: "milkFire" }, + { name: "Sanguine milk", icon: [7, 7], type: 1, pic: "milkBlood" }, + { name: "Midas milk", icon: [6, 7], type: 1, pic: "milkGold" }, + { name: "Midnight milk", icon: [5, 7], type: 1, pic: "milkBlack" }, + { + name: "Green inferno milk", + icon: [4, 7], + type: 1, + pic: "milkGreenFire", + }, + { name: "Frostfire milk", icon: [3, 7], type: 1, pic: "milkBlueFire" }, + { name: "Honey milk", icon: [21, 23], type: 0, pic: "milkHoney" }, + { name: "Coffee milk", icon: [22, 23], type: 0, pic: "milkCoffee" }, + { name: "Tea milk", icon: [23, 23], type: 0, pic: "milkTea" }, + { name: "Coconut milk", icon: [24, 23], type: 0, pic: "milkCoconut" }, + { name: "Cherry milk", icon: [25, 23], type: 0, pic: "milkCherry" }, + { name: "Soy milk", icon: [27, 23], type: 1, pic: "milkSoy" }, + { name: "Spiced milk", icon: [26, 23], type: 0, pic: "milkSpiced" }, + { name: "Maple milk", icon: [28, 23], type: 0, pic: "milkMaple" }, + { name: "Mint milk", icon: [29, 23], type: 0, pic: "milkMint" }, + { name: "Licorice milk", icon: [30, 23], type: 0, pic: "milkLicorice" }, + { name: "Rose milk", icon: [31, 23], type: 0, pic: "milkRose" }, + { + name: "Dragonfruit milk", + icon: [21, 24], + type: 0, + pic: "milkDragonfruit", + }, + { name: "Melon milk", icon: [22, 24], type: 0, pic: "milkMelon" }, + { + name: "Blackcurrant milk", + icon: [23, 24], + type: 0, + pic: "milkBlackcurrant", + }, + ]; + + Game.Milks = []; + for (var i = 0; i < Game.AllMilks.length; i++) { + Game.AllMilks[i].bname = Game.AllMilks[i].name; + Game.AllMilks[i].name = loc(Game.AllMilks[i].name); + Game.AllMilks[i].pic += ".png"; + if (Game.AllMilks[i].type == 0) { + Game.AllMilks[i].rank = Game.Milks.length; + Game.Milks.push(Game.AllMilks[i]); + } + } + Game.Milk = Game.Milks[0]; + + Game.mousePointer = 0; //when 1, draw the mouse as a pointer on the left screen + + Game.cookieOriginX = 0; + Game.cookieOriginY = 0; + Game.DrawBackground = function () { + Timer.clean(); + //background + if (!Game.Background) { + //init some stuff + Game.Background = l("backgroundCanvas").getContext("2d"); + Game.Background.canvas.width = + Game.Background.canvas.parentNode.offsetWidth; + Game.Background.canvas.height = + Game.Background.canvas.parentNode.offsetHeight; + Game.LeftBackground = l("backgroundLeftCanvas").getContext("2d"); + Game.LeftBackground.canvas.width = + Game.LeftBackground.canvas.parentNode.offsetWidth; + Game.LeftBackground.canvas.height = + Game.LeftBackground.canvas.parentNode.offsetHeight; + //preload ascend animation bits so they show up instantly + Game.LeftBackground.globalAlpha = 0; + Game.LeftBackground.drawImage(Pic("brokenCookie.png"), 0, 0); + Game.LeftBackground.drawImage(Pic("brokenCookieHalo.png"), 0, 0); + Game.LeftBackground.drawImage(Pic("starbg.jpg"), 0, 0); + + window.addEventListener("resize", function (event) { + Game.Background.canvas.width = + Game.Background.canvas.parentNode.offsetWidth; + Game.Background.canvas.height = + Game.Background.canvas.parentNode.offsetHeight; + Game.LeftBackground.canvas.width = + Game.LeftBackground.canvas.parentNode.offsetWidth; + Game.LeftBackground.canvas.height = + Game.LeftBackground.canvas.parentNode.offsetHeight; + }); + } + + var ctx = Game.LeftBackground; + + if (Game.OnAscend) { + Timer.clean(); + //starry background on ascend screen + var w = Game.Background.canvas.width; + var h = Game.Background.canvas.height; + var b = Game.ascendl.getBounds(); + var x = (b.left + b.right) / 2; + var y = (b.top + b.bottom) / 2; + Game.Background.globalAlpha = 0.5; + var s = 1 * Game.AscendZoom * (1 + Math.cos(Game.T * 0.0027) * 0.05); + Game.Background.fillPattern( + Pic("starbg.jpg"), + 0, + 0, + w, + h, + 1024 * s, + 1024 * s, + x + Game.AscendOffX * 0.25 * s, + y + Game.AscendOffY * 0.25 * s + ); + Timer.track("star layer 1"); + if (Game.prefs.fancy) { + //additional star layer + Game.Background.globalAlpha = + 0.5 * (0.5 + Math.sin(Game.T * 0.02) * 0.3); + var s = 2 * Game.AscendZoom * (1 + Math.sin(Game.T * 0.002) * 0.07); + //Game.Background.globalCompositeOperation='lighter'; + Game.Background.fillPattern( + Pic("starbg.jpg"), + 0, + 0, + w, + h, + 1024 * s, + 1024 * s, + x + Game.AscendOffX * 0.25 * s, + y + Game.AscendOffY * 0.25 * s + ); + //Game.Background.globalCompositeOperation='source-over'; + Timer.track("star layer 2"); + + x = x + Game.AscendOffX * Game.AscendZoom; + y = y + Game.AscendOffY * Game.AscendZoom; + //wispy nebula around the center + Game.Background.save(); + Game.Background.globalAlpha = 0.5; + Game.Background.translate(x, y); + Game.Background.globalCompositeOperation = "lighter"; + Game.Background.rotate(Game.T * 0.001); + s = (600 + 150 * Math.sin(Game.T * 0.007)) * Game.AscendZoom; + Game.Background.drawImage( + Pic("heavenRing1.jpg"), + -s / 2, + -s / 2, + s, + s + ); + Game.Background.rotate(-Game.T * 0.0017); + s = (600 + 150 * Math.sin(Game.T * 0.0037)) * Game.AscendZoom; + Game.Background.drawImage( + Pic("heavenRing2.jpg"), + -s / 2, + -s / 2, + s, + s + ); + Game.Background.restore(); + Timer.track("nebula"); + + //Game.Background.drawImage(Pic('shadedBorders.png'),0,0,w,h); + //Timer.track('border'); + } + } else { + var goodBuff = 0; + var badBuff = 0; + for (var i in Game.buffs) { + if (Game.buffs[i].aura == 1) goodBuff = 1; + if (Game.buffs[i].aura == 2) badBuff = 1; + } + + if (Game.drawT % 5 == 0) { + if (false && Game.bgType != 0 && Game.ascensionMode != 1) { + //l('backgroundCanvas').style.background='url(img/shadedBordersSoft.png) 0px 0px,url(img/bgWheat.jpg) 50% 50%'; + //l('backgroundCanvas').style.backgroundSize='100% 100%,cover'; + } else { + l("backgroundCanvas").style.background = "transparent"; + Game.defaultBg = "bgBlue"; + Game.bgR = 0; + + if (Game.season == "fools") Game.defaultBg = "bgMoney"; + if (Game.elderWrathD < 1 || Game.prefs.notScary) { + Game.bgR = 0; + Game.bg = Game.defaultBg; + Game.bgFade = Game.defaultBg; + } else if (Game.elderWrathD >= 1 && Game.elderWrathD < 2) { + Game.bgR = (Game.elderWrathD - 1) / 1; + Game.bg = Game.defaultBg; + Game.bgFade = "grandmas1"; + } else if (Game.elderWrathD >= 2 && Game.elderWrathD < 3) { + Game.bgR = (Game.elderWrathD - 2) / 1; + Game.bg = "grandmas1"; + Game.bgFade = "grandmas2"; + } else if (Game.elderWrathD >= 3) { + // && Game.elderWrathD<4) + Game.bgR = (Game.elderWrathD - 3) / 1; + Game.bg = "grandmas2"; + Game.bgFade = "grandmas3"; + } + + if (Game.bgType != 0 && Game.ascensionMode != 1) { + Game.bgR = 0; + Game.bg = Game.BGsByChoice[Game.bgType].pic; + Game.bgFade = Game.bg; + } + + Game.Background.fillPattern( + Pic(Game.bg + ".jpg"), + 0, + 0, + Game.Background.canvas.width, + Game.Background.canvas.height, + 512, + 512, + 0, + 0 + ); + if (Game.bgR > 0) { + Game.Background.globalAlpha = Game.bgR; + Game.Background.fillPattern( + Pic(Game.bgFade + ".jpg"), + 0, + 0, + Game.Background.canvas.width, + Game.Background.canvas.height, + 512, + 512, + 0, + 0 + ); + } + Game.Background.globalAlpha = 1; + Game.Background.drawImage( + Pic("shadedBordersSoft.png"), + 0, + 0, + Game.Background.canvas.width, + Game.Background.canvas.height + ); + } + } + Timer.track("window background"); + + //clear + ctx.clearRect(0, 0, ctx.canvas.width, ctx.canvas.height); + /*if (Game.AscendTimer= 1000) pic = "cookieShower3.png"; + else if (Game.cookiesPs >= 500) pic = "cookieShower2.png"; + else if (Game.cookiesPs >= 50) pic = "cookieShower1.png"; + else pic = ""; + } + if (pic != "") { + if (Game.elderWrathD >= 1 && !Game.prefs.notScary) + opacity = 1 - (Math.min(Game.elderWrathD, 1.5) - 1) / 0.5; + ctx.globalAlpha = opacity; + var y = Math.floor(Game.T * 2) % 512; + ctx.fillPattern( + Pic(pic), + 0, + 0, + ctx.canvas.width, + ctx.canvas.height + 512, + 512, + 512, + 0, + y + ); + ctx.globalAlpha = 1; + } + //snow + if (Game.season == "christmas") { + var y = Math.floor(Game.T * 2.5) % 512; + ctx.globalAlpha = 0.75; + ctx.globalCompositeOperation = "lighter"; + ctx.fillPattern( + Pic("snow2.jpg"), + 0, + 0, + ctx.canvas.width, + ctx.canvas.height + 512, + 512, + 512, + 0, + y + ); + ctx.globalCompositeOperation = "source-over"; + ctx.globalAlpha = 1; + } + //hearts + if (Game.season == "valentines") { + var y = Math.floor(Game.T * 2.5) % 512; + ctx.globalAlpha = 1; + ctx.fillPattern( + Pic("heartStorm.png"), + 0, + 0, + ctx.canvas.width, + ctx.canvas.height + 512, + 512, + 512, + 0, + y + ); + ctx.globalAlpha = 1; + } + Timer.track("left background"); + + Game.particlesDraw(0); + ctx.globalAlpha = 1; + Timer.track("particles"); + + //big cookie shine + var s = 512; + + var x = Game.cookieOriginX; + var y = Game.cookieOriginY; + + var r = Math.floor((Game.T * 0.5) % 360); + ctx.save(); + ctx.translate(x, y); + ctx.rotate((r / 360) * Math.PI * 2); + var alphaMult = 1; + if (Game.bgType == 2 || Game.bgType == 4) alphaMult = 0.5; + var pic = "shine.png"; + if (goodBuff) { + pic = "shineGold.png"; + alphaMult = 1; + } else if (badBuff) { + pic = "shineRed.png"; + alphaMult = 1; + } + if (goodBuff && Game.prefs.fancy) + ctx.globalCompositeOperation = "lighter"; + ctx.globalAlpha = 0.5 * alphaMult; + ctx.drawImage(Pic(pic), -s / 2, -s / 2, s, s); + ctx.rotate(((-r * 2) / 360) * Math.PI * 2); + ctx.globalAlpha = 0.25 * alphaMult; + ctx.drawImage(Pic(pic), -s / 2, -s / 2, s, s); + ctx.restore(); + Timer.track("shine"); + + if (Game.ReincarnateTimer > 0) { + ctx.globalAlpha = + 1 - Game.ReincarnateTimer / Game.ReincarnateDuration; + ctx.fillStyle = "#000"; + ctx.fillRect(0, 0, ctx.canvas.width, ctx.canvas.height); + ctx.globalAlpha = 1; + } + + if (showDragon) { + //big dragon + var s = 300 * 2 * (1 + Math.sin(Game.T * 0.013) * 0.1); + var x = Game.cookieOriginX - s / 2; + var y = + Game.cookieOriginY - s / (1.4 + 0.2 * Math.sin(Game.T * 0.01)); + ctx.drawImage(Pic("dragonBG.png"), x, y, s, s); + } + + //big cookie + if (false) { + //don't do that + ctx.globalAlpha = 1; + var amount = Math.floor(Game.cookies).toString(); + var digits = amount.length; + var space = 0; + for (var i = 0; i < digits; i++) { + var s = 16 * (digits - i); + var num = parseInt(amount[i]); + if (i > 0) space -= (s * (1 - num / 10)) / 2; + if (i == 0 && num > 1) space += s * 0.1; + for (var ii = 0; ii < num; ii++) { + var x = Game.cookieOriginX; + var y = Game.cookieOriginY; + var spin = + Game.T * (0.005 + i * 0.001) + i + (ii / num) * Math.PI * 2; + x += Math.sin(spin) * space; + y += Math.cos(spin) * space; + ctx.drawImage( + Pic("perfectCookie.png"), + x - s / 2, + y - s / 2, + s, + s + ); + } + space += s / 2; + } + } else { + ctx.globalAlpha = 1; + var s = 256 * Game.BigCookieSize; + var x = Game.cookieOriginX; + var y = Game.cookieOriginY; + ctx.save(); + if (Game.prefs.fancy) + ctx.drawImage( + Pic("cookieShadow.png"), + x - s / 2, + y - s / 2 + 20, + s, + s + ); + ctx.translate(x, y); + if (Game.season == "easter") { + var nestW = 304 * 0.98 * Game.BigCookieSize; + var nestH = 161 * 0.98 * Game.BigCookieSize; + ctx.drawImage( + Pic("nest.png"), + -nestW / 2, + -nestH / 2 + 130, + nestW, + nestH + ); + } + //ctx.rotate(((Game.startDate%360)/360)*Math.PI*2); + ctx.drawImage(Pic("perfectCookie.png"), -s / 2, -s / 2, s, s); + + if (goodBuff && Game.prefs.particles) { + //sparkle + ctx.globalCompositeOperation = "lighter"; + for (var i = 0; i < 1; i++) { + ctx.globalAlpha = Math.random() * 0.65 + 0.1; + var size = Math.random() * 30 + 5; + var a = Math.random() * Math.PI * 2; + var d = (s * 0.9 * Math.random()) / 2; + ctx.drawImage( + Pic("glint.jpg"), + -size / 2 + Math.sin(a) * d, + -size / 2 + Math.cos(a) * d, + size, + size + ); + } + } + + ctx.restore(); + Timer.track("big cookie"); + } + } //no particles + else { + //big cookie shine + var s = 512; + var x = Game.cookieOriginX - s / 2; + var y = Game.cookieOriginY - s / 2; + ctx.globalAlpha = 0.5; + ctx.drawImage(Pic("shine.png"), x, y, s, s); + + if (showDragon) { + //big dragon + var s = 300 * 2 * (1 + Math.sin(Game.T * 0.013) * 0.1); + var x = Game.cookieOriginX - s / 2; + var y = + Game.cookieOriginY - s / (1.4 + 0.2 * Math.sin(Game.T * 0.01)); + ctx.drawImage(Pic("dragonBG.png"), x, y, s, s); + } + + //big cookie + ctx.globalAlpha = 1; + var s = 256 * Game.BigCookieSize; + var x = Game.cookieOriginX - s / 2; + var y = Game.cookieOriginY - s / 2; + if (Game.prefs.fancy) + ctx.drawImage(Pic("cookieShadow.png"), x, y + 20, s, s); + ctx.drawImage(Pic("perfectCookie.png"), x, y, s, s); + } + + //cursors + if (Game.prefs.cursors) { + ctx.save(); + ctx.translate(Game.cookieOriginX, Game.cookieOriginY); + var pic = Pic("cursor.png"); + var fancy = Game.prefs.fancy; + + if (showDragon) ctx.globalAlpha = 0.25; + var amount = Game.Objects["Cursor"].amount; + //var spe=-1; + for (var i = 0; i < amount; i++) { + var n = Math.floor(i / 50); + //var a=((i+0.5*n)%50)/50; + var w = 0; + if (fancy) + w = Math.sin( + Game.T * 0.025 + (((i + n * 12) % 25) / 25) * Math.PI * 2 + ); + if (w > 0.997) w = 1.5; + else if (w > 0.994) w = 0.5; + else w = 0; + w *= -4; + if (fancy) w += Math.sin(((n + Game.T * 0.01) * Math.PI) / 2) * 4; + var x = 0; + var y = 140 /* *Game.BigCookieSize*/ + n * 16 + w - 16; + + var rot = 7.2; //(1/50)*360 + if (i == 0 && fancy) rot -= Game.T * 0.1; + if (i % 50 == 0) rot += 7.2 / 2; + ctx.rotate((rot / 360) * Math.PI * 2); + ctx.drawImage(pic, 0, 0, 32, 32, x, y, 32, 32); + //ctx.drawImage(pic,32*(i==spe),0,32,32,x,y,32,32); + + /*if (i==spe) + { + y+=16; + x=Game.cookieOriginX+Math.sin(-((r-5)/360)*Math.PI*2)*y; + y=Game.cookieOriginY+Math.cos(-((r-5)/360)*Math.PI*2)*y; + if (Game.CanClick && ctx && Math.abs(Game.mouseX-x)<16 && Math.abs(Game.mouseY-y)<16) Game.mousePointer=1; + }*/ + } + ctx.restore(); + Timer.track("cursors"); + } + } else { + var tBase = Math.max( + 0, + (Game.AscendTimer - Game.AscendBreakpoint) / + (Game.AscendDuration - Game.AscendBreakpoint) + ); + //big crumbling cookie + //var t=(3*Math.pow(tBase,2)-2*Math.pow(tBase,3));//S curve + var t = Math.pow(tBase, 0.5); + + var shake = 0; + if (Game.AscendTimer < Game.AscendBreakpoint) { + shake = Game.AscendTimer / Game.AscendBreakpoint; + } + //else {shake=1-t;} + + ctx.globalAlpha = 1; + + var x = Game.cookieOriginX; + var y = Game.cookieOriginY; + + x += (Math.random() * 2 - 1) * 10 * shake; + y += (Math.random() * 2 - 1) * 10 * shake; + + var s = 1; + if (tBase > 0) { + ctx.save(); + ctx.globalAlpha = 1 - Math.pow(t, 0.5); + ctx.translate(x, y); + ctx.globalCompositeOperation = "lighter"; + ctx.rotate(Game.T * 0.007); + s = 0.5 + Math.pow(tBase, 0.6) * 1; + var s2 = 600 * s; + ctx.drawImage(Pic("heavenRing1.jpg"), -s2 / 2, -s2 / 2, s2, s2); + ctx.rotate(-Game.T * 0.002); + s = 0.5 + Math.pow(1 - tBase, 0.4) * 1; + s2 = 600 * s; + ctx.drawImage(Pic("heavenRing2.jpg"), -s2 / 2, -s2 / 2, s2, s2); + ctx.restore(); + } + + s = 256; //*Game.BigCookieSize; + + ctx.save(); + ctx.translate(x, y); + ctx.rotate(t * -0.1 * Math.PI * 2); + + var chunks = { + 0: 7, + 1: 6, + 2: 3, + 3: 2, + 4: 8, + 5: 1, + 6: 9, + 7: 5, + 8: 0, + 9: 4, + }; + s *= t / 2 + 1; + /*ctx.globalAlpha=(1-t)*0.33; + for (var i=0;i<10;i++) + { + var d=(t-0.2)*(80+((i+2)%3)*40); + ctx.drawImage(Pic('brokenCookie.png'),256*(chunks[i]),0,256,256,-s/2+Math.sin(-(((chunks[i]+4)%10)/10)*Math.PI*2)*d,-s/2+Math.cos(-(((chunks[i]+4)%10)/10)*Math.PI*2)*d,s,s); + } + ctx.globalAlpha=(1-t)*0.66; + for (var i=0;i<10;i++) + { + var d=(t-0.1)*(80+((i+2)%3)*40); + ctx.drawImage(Pic('brokenCookie.png'),256*(chunks[i]),0,256,256,-s/2+Math.sin(-(((chunks[i]+4)%10)/10)*Math.PI*2)*d,-s/2+Math.cos(-(((chunks[i]+4)%10)/10)*Math.PI*2)*d,s,s); + }*/ + ctx.globalAlpha = 1 - t; + for (var i = 0; i < 10; i++) { + var d = t * (80 + ((i + 2) % 3) * 40); + var x2 = (Math.random() * 2 - 1) * 5 * shake; + var y2 = (Math.random() * 2 - 1) * 5 * shake; + ctx.drawImage( + Pic("brokenCookie.png"), + 256 * chunks[i], + 0, + 256, + 256, + -s / 2 + + Math.sin(-(((chunks[i] + 4) % 10) / 10) * Math.PI * 2) * d + + x2, + -s / 2 + + Math.cos(-(((chunks[i] + 4) % 10) / 10) * Math.PI * 2) * d + + y2, + s, + s + ); + } + var brokenHalo = 1 - Math.min(t / (1 / 3), 1 / 3) * 3; + if (Game.AscendTimer < Game.AscendBreakpoint) + brokenHalo = Game.AscendTimer / Game.AscendBreakpoint; + ctx.globalAlpha = brokenHalo; + ctx.drawImage( + Pic("brokenCookieHalo.png"), + -s / 1.3333, + -s / 1.3333, + s * 1.5, + s * 1.5 + ); + + ctx.restore(); + + //flares + var n = 9; + var t = Game.AscendTimer / Game.AscendBreakpoint; + if (Game.AscendTimer < Game.AscendBreakpoint) { + ctx.save(); + ctx.translate(x, y); + for (var i = 0; i < n; i++) { + if (Math.floor((t / 3) * n * 3 + i * 2.7) % 2) { + var t2 = Math.pow(((t / 3) * n * 3 + i * 2.7) % 1, 1.5); + ctx.globalAlpha = (1 - t) * (Game.drawT % 2 == 0 ? 0.5 : 1); + var sw = (1 - t2 * 0.5) * 96; + var sh = (0.5 + t2 * 1.5) * 96; + ctx.drawImage( + Pic("shineSpoke.png"), + -sw / 2, + -sh - 32 - (1 - t2) * 256, + sw, + sh + ); + } + ctx.rotate((Math.PI * 2) / n); + } + ctx.restore(); + } + + //flash at breakpoint + if (tBase < 0.1 && tBase > 0) { + ctx.globalAlpha = 1 - tBase / 0.1; + ctx.fillStyle = "#fff"; + ctx.fillRect(0, 0, ctx.canvas.width, ctx.canvas.height); + ctx.globalAlpha = 1; + } + if (tBase > 0.8) { + ctx.globalAlpha = (tBase - 0.8) / 0.2; + ctx.fillStyle = "#000"; + ctx.fillRect(0, 0, ctx.canvas.width, ctx.canvas.height); + ctx.globalAlpha = 1; + } + } + + //milk and milk accessories + if (Game.prefs.milk) { + var width = ctx.canvas.width; + var height = ctx.canvas.height; + var x = Math.floor( + (Game.T * 2 - (Game.milkH - Game.milkHd) * 2000 + 480 * 2) % 480 + ); //Math.floor((Game.T*2+Math.sin(Game.T*0.1)*2+Math.sin(Game.T*0.03)*2-(Game.milkH-Game.milkHd)*2000+480*2)%480); + var y = Game.milkHd * height; //(((Game.milkHd)*ctx.canvas.height)*(1+0.05*(Math.sin(Game.T*0.017)/2+0.5))); + var a = 1; + if (Game.AscendTimer > 0) { + y *= 1 - Math.pow(Game.AscendTimer / Game.AscendBreakpoint, 2) * 2; + a *= 1 - Math.pow(Game.AscendTimer / Game.AscendBreakpoint, 2) * 2; + } else if (Game.ReincarnateTimer > 0) { + y *= + 1 - + Math.pow( + 1 - Game.ReincarnateTimer / Game.ReincarnateDuration, + 2 + ) * + 2; + a *= + 1 - + Math.pow( + 1 - Game.ReincarnateTimer / Game.ReincarnateDuration, + 2 + ) * + 2; + } + + if (Game.TOYS) { + //golly + if (!Game.Toy) { + Game.toys = []; + Game.toysType = choose([1, 2]); + Game.Toy = function (x, y) { + this.id = Game.toys.length; + this.x = x; + this.y = y; + this.xd = Math.random() * 10 - 5; + this.yd = Math.random() * 10 - 5; + this.r = Math.random() * Math.PI * 2; + this.rd = Math.random() * 0.1 - 0.05; + var v = Math.random(); + var a = 0.5; + var b = 0.5; + if (v <= a) v = b - b * Math.pow(1 - v / a, 3); + else v = b + (1 - b) * Math.pow((v - a) / (1 - a), 3); + this.s = (Game.toysType == 1 ? 64 : 48) * (0.1 + v * 1.9); + if (Game.toysType == 2) this.s = this.id % 10 == 1 ? 96 : 48; + this.st = this.s; + this.s = 0; + var cookies = [[10, 0]]; + for (var i in Game.Upgrades) { + var cookie = Game.Upgrades[i]; + if (cookie.bought > 0 && cookie.pool == "cookie") + cookies.push(cookie.icon); + } + this.icon = choose(cookies); + this.dragged = false; + this.l = document.createElement("div"); + this.l.innerHTML = this.id; + this.l.style.cssText = + "cursor:pointer;border-radius:" + + this.s / 2 + + "px;opacity:0;width:" + + this.s + + "px;height:" + + this.s + + "px;background:#999;position:absolute;left:0px;top:0px;z-index:10000000;transform:translate(-1000px,-1000px);"; + l("sectionLeft").appendChild(this.l); + AddEvent( + this.l, + "mousedown", + (function (what) { + return function () { + what.dragged = true; + }; + })(this) + ); + AddEvent( + this.l, + "mouseup", + (function (what) { + return function () { + what.dragged = false; + }; + })(this) + ); + Game.toys.push(this); + return this; + }; + for ( + var i = 0; + i < + Math.floor(Math.random() * 15 + (Game.toysType == 1 ? 5 : 30)); + i++ + ) { + new Game.Toy( + Math.random() * width, + Math.random() * height * 0.3 + ); + } + } + ctx.globalAlpha = 0.5; + for (var i in Game.toys) { + var me = Game.toys[i]; + ctx.save(); + ctx.translate(me.x, me.y); + ctx.rotate(me.r); + if (Game.toysType == 1) + ctx.drawImage( + Pic("smallCookies.png"), + (me.id % 8) * 64, + 0, + 64, + 64, + -me.s / 2, + -me.s / 2, + me.s, + me.s + ); + else + ctx.drawImage( + Pic("icons.png"), + me.icon[0] * 48, + me.icon[1] * 48, + 48, + 48, + -me.s / 2, + -me.s / 2, + me.s, + me.s + ); + ctx.restore(); + } + ctx.globalAlpha = 1; + for (var i in Game.toys) { + var me = Game.toys[i]; + //psst... not real physics + for (var ii in Game.toys) { + var it = Game.toys[ii]; + if (it.id != me.id) { + var x1 = me.x + me.xd; + var y1 = me.y + me.yd; + var x2 = it.x + it.xd; + var y2 = it.y + it.yd; + var dist = + Math.sqrt(Math.pow(x1 - x2, 2) + Math.pow(y1 - y2, 2)) / + (me.s / 2 + it.s / 2); + if (dist < (Game.toysType == 1 ? 0.95 : 0.75)) { + var angle = Math.atan2(y1 - y2, x1 - x2); + var v1 = Math.sqrt(Math.pow(me.xd, 2) + Math.pow(me.yd, 2)); + var v2 = Math.sqrt(Math.pow(it.xd, 2) + Math.pow(it.yd, 2)); + var v = ((v1 + v2) / 2 + dist) * 0.75; + var ratio = it.s / me.s; + me.xd += Math.sin(-angle + Math.PI / 2) * v * ratio; + me.yd += Math.cos(-angle + Math.PI / 2) * v * ratio; + it.xd += Math.sin(-angle - Math.PI / 2) * v * (1 / ratio); + it.yd += Math.cos(-angle - Math.PI / 2) * v * (1 / ratio); + me.rd += (Math.random() * 1 - 0.5) * 0.1 * ratio; + it.rd += (Math.random() * 1 - 0.5) * 0.1 * (1 / ratio); + me.rd *= Math.min(1, v); + it.rd *= Math.min(1, v); + } + } + } + if (me.y >= height - Game.milkHd * height + 8) { + me.xd *= 0.85; + me.yd *= 0.85; + me.rd *= 0.85; + me.yd -= 1; + me.xd += (Math.random() * 1 - 0.5) * 0.3; + me.yd += (Math.random() * 1 - 0.5) * 0.05; + me.rd += (Math.random() * 1 - 0.5) * 0.02; + } else { + me.xd *= 0.99; + me.rd *= 0.99; + me.yd += 1; + } + me.yd *= Math.min( + 1, + Math.abs(me.y - (height - Game.milkHd * height) / 16) + ); + me.rd += (me.xd * 0.01) / (me.s / (Game.toysType == 1 ? 64 : 48)); + if (me.x < me.s / 2 && me.xd < 0) + me.xd = Math.max(0.1, -me.xd * 0.6); + else if (me.x < me.s / 2) { + me.xd = 0; + me.x = me.s / 2; + } + if (me.x > width - me.s / 2 && me.xd > 0) + me.xd = Math.min(-0.1, -me.xd * 0.6); + else if (me.x > width - me.s / 2) { + me.xd = 0; + me.x = width - me.s / 2; + } + me.xd = Math.min(Math.max(me.xd, -30), 30); + me.yd = Math.min(Math.max(me.yd, -30), 30); + me.rd = Math.min(Math.max(me.rd, -0.5), 0.5); + me.x += me.xd; + me.y += me.yd; + me.r += me.rd; + me.r = me.r % (Math.PI * 2); + me.s += (me.st - me.s) * 0.5; + if (Game.toysType == 2 && !me.dragged && Math.random() < 0.003) + me.st = choose([48, 48, 48, 48, 96]); + if (me.dragged) { + me.x = Game.mouseX; + me.y = Game.mouseY; + me.xd += ((Game.mouseX - Game.mouseX2) * 3 - me.xd) * 0.5; + me.yd += ((Game.mouseY - Game.mouseY2) * 3 - me.yd) * 0.5; + me.l.style.transform = + "translate(" + + (me.x - me.s / 2) + + "px," + + (me.y - me.s / 2) + + "px) scale(50)"; + } else + me.l.style.transform = + "translate(" + + (me.x - me.s / 2) + + "px," + + (me.y - me.s / 2) + + "px)"; + me.l.style.width = me.s + "px"; + me.l.style.height = me.s + "px"; + ctx.save(); + ctx.translate(me.x, me.y); + ctx.rotate(me.r); + if (Game.toysType == 1) + ctx.drawImage( + Pic("smallCookies.png"), + (me.id % 8) * 64, + 0, + 64, + 64, + -me.s / 2, + -me.s / 2, + me.s, + me.s + ); + else + ctx.drawImage( + Pic("icons.png"), + me.icon[0] * 48, + me.icon[1] * 48, + 48, + 48, + -me.s / 2, + -me.s / 2, + me.s, + me.s + ); + ctx.restore(); + } + } + + var pic = Game.Milk.pic; + if (Game.milkType != 0 && Game.ascensionMode != 1) + pic = Game.AllMilks[Game.milkType].pic; + ctx.globalAlpha = 0.95 * a; + ctx.fillPattern( + Pic(pic), + 0, + height - y, + width + 480, + 1, + 480, + 480, + x, + 0 + ); + + ctx.fillStyle = "#000"; + ctx.fillRect(0, height - y + 480, width, Math.max(0, y - 480)); + ctx.globalAlpha = 1; + + Timer.track("milk"); + } + + if (Game.AscendTimer > 0) { + ctx.drawImage( + Pic("shadedBordersSoft.png"), + 0, + 0, + ctx.canvas.width, + ctx.canvas.height + ); + } + + if (Game.AscendTimer == 0) { + Game.DrawWrinklers(); + Timer.track("wrinklers"); + Game.DrawSpecial(); + Timer.track("evolvables"); + + Game.particlesDraw(2); + Timer.track("text particles"); + + //shiny border during frenzies etc + ctx.globalAlpha = 1; + var borders = "shadedBordersSoft.png"; + if (goodBuff) borders = "shadedBordersGold.png"; + else if (badBuff) borders = "shadedBordersRed.png"; + if (goodBuff && Game.prefs.fancy) + ctx.globalCompositeOperation = "lighter"; + ctx.drawImage( + Pic(borders), + 0, + 0, + ctx.canvas.width, + ctx.canvas.height + ); + if (goodBuff && Game.prefs.fancy) + ctx.globalCompositeOperation = "source-over"; + } + } + }; + + /*===================================================================================== + INITIALIZATION END; GAME READY TO LAUNCH + =======================================================================================*/ + + Game.killShimmers(); + + //booooo + Game.RuinTheFun = function (silent) { + Game.popups = 0; + Game.SetAllUpgrades(1); + Game.SetAllAchievs(1); + Game.popups = 0; + Game.Earn(999999999999999999999999999999); + Game.MaxSpecials(); + Game.nextResearch = 0; + Game.researchT = -1; + Game.upgradesToRebuild = 1; + Game.recalculateGains = 1; + Game.popups = 1; + for (var i in Game.Objects) { + var me = Game.Objects[i]; + if (me.level < 10) { + me.level = 9; + me.levelUp(true); + } + if (me.minigame && me.minigame.onRuinTheFun) me.minigame.onRuinTheFun(); + } + if (!silent) { + Game.Notify( + "Thou doth ruineth the fun!", + "You're free. Free at last.", + [11, 5] + ); + } + return "You feel a bitter taste in your mouth..."; + }; + + Game.SetAllUpgrades = function (on) { + Game.popups = 0; + var leftout = [ + "Magic shenanigans", + "Occult obstruction", + "Glucose-charged air", + ]; + for (var i in Game.Upgrades) { + if ( + on && + (Game.Upgrades[i].pool == "toggle" || + leftout.indexOf(Game.Upgrades[i].name) != -1) + ) { + } else if (on) Game.Upgrades[i].earn(); + else if (!on) Game.Upgrades[i].lose(); + } + Game.upgradesToRebuild = 1; + Game.recalculateGains = 1; + Game.popups = 1; + }; + Game.SetAllAchievs = function (on) { + Game.popups = 0; + for (var i in Game.Achievements) { + if (on && Game.Achievements[i].pool != "dungeon") + Game.Win(Game.Achievements[i].name); + else if (!on) Game.RemoveAchiev(Game.Achievements[i].name); + } + Game.recalculateGains = 1; + Game.popups = 1; + }; + Game.GetAllDebugs = function () { + Game.popups = 0; + for (var i in Game.Upgrades) { + if (Game.Upgrades[i].pool == "debug") Game.Upgrades[i].earn(); + } + Game.upgradesToRebuild = 1; + Game.recalculateGains = 1; + Game.popups = 1; + }; + Game.MaxSpecials = function () { + Game.dragonLevel = Game.dragonLevels.length - 1; + Game.santaLevel = Game.santaLevels.length - 1; + }; + + Game.SesameReset = function () { + var name = Game.bakeryName; + Game.HardReset(2); + Game.bakeryName = name; + Game.bakeryNameRefresh(); + Game.Achievements["Cheated cookies taste awful"].won = 1; + }; + + Game.debugTimersOn = 0; + Game.sesame = 0; + Game.OpenSesame = function () { + var str = ""; + str += + '
'; + str += + '
'; + + str += '
'; + str += + '
Dev tools
'; + + str += + 'Ascend'; + str += '
'; + str += + 'x10'; + str += + '/10
'; + str += + 'x1k'; + str += + '/1k
'; + str += + 'Buy 100 of all'; //for (var n=0;n<100;n++){for (var i in Game.Objects){Game.Objects[i].buy(1);}} + str += + 'Sell 100 of all
'; + str += + '+10 lumps'; + str += + 'Reset levels'; + str += + 'HC x1k'; + str += + 'HC /1k
'; //wee bit inaccurate + str += + 'Reset cookies earned
'; + str += '
'; + str += + 'Ruin The Fun'; + str += + 'Wipe'; + str += + 'All debugs'; + str += + 'Timers ' + + (Game.debugTimersOn ? "On" : "Off") + + "
"; + str += + 'No upgrades'; + str += + 'All upgrades
'; + str += + 'No achievs'; + str += + 'All achievs
'; + str += + 'Reset specials'; + str += + 'Max specials
'; + str += + 'Reset refills'; + str += + '' + + (Game.DebuggingPrestige ? "Exit Ascend Edit" : "Ascend Edit") + + ""; + str += + 'Debug upgrades CpS'; + str += + 'Re-seed'; + str += + 'Max heralds"; + str += '
'; + for (var i = 0; i < Game.goldenCookieChoices.length / 2; i++) { + str += + '" + + Game.goldenCookieChoices[i * 2] + + ""; + //str+=''+Game.goldenCookie.choices[i*2]+''; + //str+=''+Game.goldenCookie.choices[i*2]+''; + } + str += "
"; + + l("devConsole").innerHTML = str; + + if (!l("fpsGraph")) { + var div = document.createElement("canvas"); + div.id = "fpsGraph"; + div.width = 128; + div.height = 64; + div.style.opacity = 0.5; + div.style.pointerEvents = "none"; + div.style.transformOrigin = "0% 0%"; + div.style.transform = "scale(0.75)"; + //l('devConsole').appendChild(div); + l("devConsole").parentNode.insertBefore( + div, + l("devConsole").nextSibling + ); + Game.fpsGraph = div; + Game.fpsGraphCtx = Game.fpsGraph.getContext("2d", { alpha: false }); + var ctx = Game.fpsGraphCtx; + ctx.fillStyle = "#000"; + ctx.fillRect(0, 0, 128, 64); + } + + l("debug").style.display = "block"; + Game.sesame = 1; + Game.Achievements["Cheated cookies taste awful"].won = 1; + }; + + Game.EditAscend = function () { + if (!Game.DebuggingPrestige) { + Game.DebuggingPrestige = true; + Game.AscendTimer = 0; + Game.OnAscend = 1; + Game.removeClass("ascendIntro"); + Game.addClass("ascending"); + } else { + Game.DebuggingPrestige = false; + } + Game.BuildAscendTree(); + Game.OpenSesame(); + }; + + //experimental debugging function that cycles through every owned upgrade, turns it off and on, and lists how much each upgrade is participating to CpS + Game.debuggedUpgradeCpS = []; + Game.debuggedUpgradeCpClick = []; + Game.debugColors = [ + "#322", + "#411", + "#600", + "#900", + "#f30", + "#f90", + "#ff0", + "#9f0", + "#0f9", + "#09f", + "#90f", + ]; + Game.DebugUpgradeCpS = function () { + Game.CalculateGains(); + Game.debuggedUpgradeCpS = []; + Game.debuggedUpgradeCpClick = []; + var CpS = Game.cookiesPs; + var CpClick = Game.computedMouseCps; + for (var i in Game.Upgrades) { + var me = Game.Upgrades[i]; + if (me.bought) { + me.bought = 0; + Game.CalculateGains(); + //Game.debuggedUpgradeCpS[me.name]=CpS-Game.cookiesPs; + Game.debuggedUpgradeCpS[me.name] = CpS / (Game.cookiesPs || 1) - 1; + Game.debuggedUpgradeCpClick[me.name] = + CpClick / (Game.computedMouseCps || 1) - 1; + me.bought = 1; + } + } + Game.CalculateGains(); + }; + + Game.vanilla = 0; //everything we create beyond this will be saved in mod structures + + Game.launchMods(); + + Game.runModHook("create"); //declare custom upgrades/achievs/buffs/buildings here! + + BeautifyAll(); + + if (!App) { + if (!Game.LoadSave()) { + //try to load the save when we open the page. if this fails, try to brute-force it half a second later + setTimeout(function () { + var local = localStorageGet(Game.SaveTo); + Game.LoadSave(local); + }, 500); + } + } else if (App.saveData) + setTimeout(function () { + Game.LoadSave(App.saveData); + }, 100); + else + setTimeout(function () { + Game.LoadSave(); + }, 100); + + Game.ready = 1; + setTimeout(function () { + if ( + typeof showAds === "undefined" && + (!l("detectAds") || l("detectAds").clientHeight < 1) + ) + Game.addClass("noAds"); + }, 500); + l("offGameMessage").innerHTML = ""; + l("offGameMessageWrap").style.display = "none"; + Game.Loop(); + Game.Draw(); + + PlayCue("launch"); + + if (!EN) { + var adaptWidth = function (node) { + var el = node.firstChild; + var width = el.clientWidth; + if (el.classList.contains("subButton")) { + if (width / 95 > 1) el.style.padding = "6px 0px"; + } + width = width / 95; + if (width > 1) { + el.style.fontSize = + (parseInt(window.getComputedStyle(el).fontSize) * 1) / width + "px"; + el.style.transform = "scale(1," + width + ")"; + } + }; + l("prefsButton").firstChild.innerHTML = loc("Options"); + l("statsButton").firstChild.innerHTML = loc("Stats"); + l("logButton").firstChild.innerHTML = loc("Info"); + l("legacyButton").firstChild.innerHTML = loc("Legacy"); + adaptWidth(l("prefsButton")); + adaptWidth(l("statsButton")); + adaptWidth(l("logButton")); + adaptWidth(l("legacyButton")); + l("checkForUpdate").childNodes[0].textContent = loc("New update!"); + l("buildingsTitle").childNodes[0].textContent = loc("Buildings"); + l("storeTitle").childNodes[0].textContent = loc("Store"); + } + }; + /*===================================================================================== + LOGIC + =======================================================================================*/ + Game.Logic = function () { + Game.bounds = Game.l.getBounds(); + + if (!Game.OnAscend && Game.AscendTimer == 0) { + for (var i in Game.Objects) { + if (Game.Objects[i].eachFrame) Game.Objects[i].eachFrame(); + } + Game.UpdateSpecial(); + Game.UpdateGrandmapocalypse(); + + //these are kinda fun + //if (Game.BigCookieState==2 && !Game.promptOn && Game.Scroll!=0) Game.ClickCookie(); + //if (Game.BigCookieState==1 && !Game.promptOn) Game.ClickCookie(); + + //handle graphic stuff + if (Game.prefs.wobbly) { + if (Game.BigCookieState == 1) Game.BigCookieSizeT = 0.98; + else if (Game.BigCookieState == 2) Game.BigCookieSizeT = 1.05; + else Game.BigCookieSizeT = 1; + Game.BigCookieSizeD += + (Game.BigCookieSizeT - Game.BigCookieSize) * 0.75; + Game.BigCookieSizeD *= 0.75; + Game.BigCookieSize += Game.BigCookieSizeD; + Game.BigCookieSize = Math.max(0.1, Game.BigCookieSize); + } else { + if (Game.BigCookieState == 1) + Game.BigCookieSize += (0.98 - Game.BigCookieSize) * 0.5; + else if (Game.BigCookieState == 2) + Game.BigCookieSize += (1.05 - Game.BigCookieSize) * 0.5; + else Game.BigCookieSize += (1 - Game.BigCookieSize) * 0.5; + } + Game.particlesUpdate(); + + if (Game.mousePointer) l("sectionLeft").style.cursor = "pointer"; + else l("sectionLeft").style.cursor = "auto"; + Game.mousePointer = 0; + + //handle milk and milk accessories + Game.milkProgress = Game.AchievementsOwned / 25; + if (Game.milkProgress >= 0.5) Game.Unlock("Kitten helpers"); + if (Game.milkProgress >= 1) Game.Unlock("Kitten workers"); + if (Game.milkProgress >= 2) Game.Unlock("Kitten engineers"); + if (Game.milkProgress >= 3) Game.Unlock("Kitten overseers"); + if (Game.milkProgress >= 4) Game.Unlock("Kitten managers"); + if (Game.milkProgress >= 5) Game.Unlock("Kitten accountants"); + if (Game.milkProgress >= 6) Game.Unlock("Kitten specialists"); + if (Game.milkProgress >= 7) Game.Unlock("Kitten experts"); + if (Game.milkProgress >= 8) Game.Unlock("Kitten consultants"); + if (Game.milkProgress >= 9) + Game.Unlock("Kitten assistants to the regional manager"); + if (Game.milkProgress >= 10) Game.Unlock("Kitten marketeers"); + if (Game.milkProgress >= 11) Game.Unlock("Kitten analysts"); + if (Game.milkProgress >= 12) Game.Unlock("Kitten executives"); + if (Game.milkProgress >= 13) Game.Unlock("Kitten admins"); + Game.milkH = Math.min(1, Game.milkProgress) * 0.35; + Game.milkHd += (Game.milkH - Game.milkHd) * 0.02; + + Game.Milk = + Game.Milks[ + Math.min(Math.floor(Game.milkProgress), Game.Milks.length - 1) + ]; + + if (Game.autoclickerDetected > 0) Game.autoclickerDetected--; + + //handle research + if (Game.researchT > 0) { + Game.researchT--; + } + if (Game.researchT == 0 && Game.nextResearch) { + if (!Game.Has(Game.UpgradesById[Game.nextResearch].name)) { + Game.Unlock(Game.UpgradesById[Game.nextResearch].name); + Game.Notify( + loc("Research complete"), + loc( + "You have discovered: %1.", + Game.UpgradesById[Game.nextResearch].dname + ), + Game.UpgradesById[Game.nextResearch].icon + ); + } + Game.nextResearch = 0; + Game.researchT = -1; + Game.recalculateGains = 1; + } + //handle seasons + if (Game.seasonT > 0) { + Game.seasonT--; + } + if ( + Game.seasonT <= 0 && + Game.season != "" && + Game.season != Game.baseSeason && + !Game.Has("Eternal seasons") + ) { + Game.Notify( + Game.seasons[Game.season].over, + "", + Game.seasons[Game.season].triggerUpgrade.icon + ); + if (Game.Has("Season switcher")) { + Game.Unlock(Game.seasons[Game.season].trigger); + Game.seasons[Game.season].triggerUpgrade.bought = 0; + } + Game.season = Game.baseSeason; + Game.seasonT = -1; + } + + //press ctrl to bulk-buy 10, shift to bulk-buy 100 + if (!Game.promptOn) { + if ((Game.keys[16] || Game.keys[17]) && !Game.buyBulkShortcut) { + Game.buyBulkOld = Game.buyBulk; + if (Game.keys[16]) Game.buyBulk = 100; + if (Game.keys[17]) Game.buyBulk = 10; + Game.buyBulkShortcut = 1; + Game.storeBulkButton(-1); + } + } + if (!Game.keys[16] && !Game.keys[17] && Game.buyBulkShortcut) { + //release + Game.buyBulk = Game.buyBulkOld; + Game.buyBulkShortcut = 0; + Game.storeBulkButton(-1); + } + + //handle cookies + if (Game.recalculateGains) Game.CalculateGains(); + Game.Earn(Game.cookiesPs / Game.fps); //add cookies per second + + //grow lumps + Game.doLumps(); + + //minigames + for (var i in Game.Objects) { + var me = Game.Objects[i]; + if ( + Game.isMinigameReady(me) && + me.minigame.logic && + Game.ascensionMode != 1 + ) + me.minigame.logic(); + } + + if (Game.specialTab != "" && Game.T % (Game.fps * 3) == 0) + Game.ToggleSpecialMenu(1); + + //wrinklers + if (Game.cpsSucked > 0) { + Game.Dissolve((Game.cookiesPs / Game.fps) * Game.cpsSucked); + Game.cookiesSucked += (Game.cookiesPs / Game.fps) * Game.cpsSucked; + //should be using one of the following, but I'm not sure what I'm using this stat for anymore + //Game.cookiesSucked=Game.wrinklers.reduce(function(s,w){return s+w.sucked;},0); + //for (var i in Game.wrinklers) {Game.cookiesSucked+=Game.wrinklers[i].sucked;} + } + + //var cps=Game.cookiesPs+Game.cookies*0.01;//exponential cookies + //Game.Earn(cps/Game.fps);//add cookies per second + + for (var i in Game.Objects) { + var me = Game.Objects[i]; + me.totalCookies += (me.storedTotalCps * Game.globalCpsMult) / Game.fps; + } + if ( + Game.prefs.particles && + Game.cookies && + Game.T % Math.ceil(Game.fps / Math.min(10, Game.cookiesPs)) == 0 + ) + Game.particleAdd(); //cookie shower + + if (Game.T % (Game.fps * 10) == 0) Game.recalculateGains = 1; //recalculate CpS every 10 seconds (for dynamic boosts such as Century egg) + + /*===================================================================================== + UNLOCKING STUFF + =======================================================================================*/ + if (Game.T % Game.fps == 0 && Math.random() < 1 / 1000000) + Game.Win("Just plain lucky"); //1 chance in 1,000,000 every second achievement + if (Game.T % (Game.fps * 5) == 0 && Game.ObjectsById.length > 0) { + //check some achievements and upgrades + if (isNaN(Game.cookies)) { + Game.cookies = 0; + Game.cookiesEarned = 0; + Game.recalculateGains = 1; + } + + var timePlayed = new Date(); + timePlayed.setTime(Date.now() - Game.startDate); + + if ( + !Game.fullDate || + Date.now() - Game.fullDate >= 365 * 24 * 60 * 60 * 1000 + ) + Game.Win("So much to do so much to see"); + + if ( + Game.cookiesEarned >= 1000000 && + (Game.ascensionMode == 1 || Game.resets == 0) + ) { + //challenge run or hasn't ascended yet + if (timePlayed <= 1000 * 60 * 35) Game.Win("Speed baking I"); + if (timePlayed <= 1000 * 60 * 25) Game.Win("Speed baking II"); + if (timePlayed <= 1000 * 60 * 15) Game.Win("Speed baking III"); + + if (Game.cookieClicks <= 15) Game.Win("Neverclick"); + if (Game.cookieClicks <= 0) Game.Win("True Neverclick"); + if (Game.cookiesEarned >= 1000000000 && Game.UpgradesOwned == 0) + Game.Win("Hardcore"); + } + + for (var i in Game.UnlockAt) { + var unlock = Game.UnlockAt[i]; + if (Game.cookiesEarned >= unlock.cookies) { + var pass = 1; + if ( + unlock.require && + !Game.Has(unlock.require) && + !Game.HasAchiev(unlock.require) + ) + pass = 0; + if (unlock.season && Game.season != unlock.season) pass = 0; + if (pass) { + Game.Unlock(unlock.name); + Game.Win(unlock.name); + } + } + } + + if (Game.Has("Golden switch")) Game.Unlock("Golden switch [off]"); + if ( + Game.Has("Shimmering veil") && + !Game.Has("Shimmering veil [off]") && + !Game.Has("Shimmering veil [on]") + ) { + Game.Unlock("Shimmering veil [on]"); + Game.Upgrades["Shimmering veil [off]"].earn(); + } + if (Game.Has("Sugar craving")) Game.Unlock("Sugar frenzy"); + if (Game.Has("Classic dairy selection")) Game.Unlock("Milk selector"); + if (Game.Has("Basic wallpaper assortment")) + Game.Unlock("Background selector"); + if (Game.Has("Golden cookie alert sound")) + Game.Unlock("Golden cookie sound selector"); + if (Game.Has("Sound test")) Game.Unlock("Jukebox"); + + if (Game.Has("Prism heart biscuits")) Game.Win("Lovely cookies"); + if (Game.season == "easter") { + var eggs = 0; + for (var i in Game.easterEggs) { + if (Game.HasUnlocked(Game.easterEggs[i])) eggs++; + } + if (eggs >= 1) Game.Win("The hunt is on"); + if (eggs >= 7) Game.Win("Egging on"); + if (eggs >= 14) Game.Win("Mass Easteria"); + if (eggs >= Game.easterEggs.length) Game.Win("Hide & seek champion"); + } + + if (Game.Has("Fortune cookies")) { + var list = Game.Tiers["fortune"].upgrades; + var fortunes = 0; + for (var i in list) { + if (Game.Has(list[i].name)) fortunes++; + } + if (fortunes >= list.length) Game.Win("O Fortuna"); + } + + if (Game.Has("Legacy") && Game.ascensionMode != 1) { + Game.Unlock("Heavenly chip secret"); + if (Game.Has("Heavenly chip secret")) + Game.Unlock("Heavenly cookie stand"); + if (Game.Has("Heavenly cookie stand")) Game.Unlock("Heavenly bakery"); + if (Game.Has("Heavenly bakery")) + Game.Unlock("Heavenly confectionery"); + if (Game.Has("Heavenly confectionery")) Game.Unlock("Heavenly key"); + + if (Game.Has("Heavenly key")) Game.Win("Wholesome"); + } + + for (var i in Game.BankAchievements) { + if (Game.cookiesEarned >= Game.BankAchievements[i].threshold) + Game.Win(Game.BankAchievements[i].name); + } + + var buildingsOwned = 0; + var mathematician = 1; + var base10 = 1; + var minAmount = 100000; + for (var i in Game.Objects) { + buildingsOwned += Game.Objects[i].amount; + minAmount = Math.min(Game.Objects[i].amount, minAmount); + if (!Game.HasAchiev("Mathematician")) { + if ( + Game.Objects[i].amount < + Math.min( + 128, + Math.pow(2, Game.ObjectsById.length - Game.Objects[i].id - 1) + ) + ) + mathematician = 0; + } + if (!Game.HasAchiev("Base 10")) { + if ( + Game.Objects[i].amount < + (Game.ObjectsById.length - Game.Objects[i].id) * 10 + ) + base10 = 0; + } + } + if (minAmount >= 1) Game.Win("One with everything"); + if (mathematician == 1) Game.Win("Mathematician"); + if (base10 == 1) Game.Win("Base 10"); + if (minAmount >= 100) { + Game.Win("Centennial"); + Game.Unlock("Milk chocolate butter biscuit"); + } + if (minAmount >= 150) { + Game.Win("Centennial and a half"); + Game.Unlock("Dark chocolate butter biscuit"); + } + if (minAmount >= 200) { + Game.Win("Bicentennial"); + Game.Unlock("White chocolate butter biscuit"); + } + if (minAmount >= 250) { + Game.Win("Bicentennial and a half"); + Game.Unlock("Ruby chocolate butter biscuit"); + } + if (minAmount >= 300) { + Game.Win("Tricentennial"); + Game.Unlock("Lavender chocolate butter biscuit"); + } + if (minAmount >= 350) { + Game.Win("Tricentennial and a half"); + Game.Unlock("Synthetic chocolate green honey butter biscuit"); + } + if (minAmount >= 400) { + Game.Win("Quadricentennial"); + Game.Unlock("Royal raspberry chocolate butter biscuit"); + } + if (minAmount >= 450) { + Game.Win("Quadricentennial and a half"); + Game.Unlock( + "Ultra-concentrated high-energy chocolate butter biscuit" + ); + } + if (minAmount >= 500) { + Game.Win("Quincentennial"); + Game.Unlock("Pure pitch-black chocolate butter biscuit"); + } + if (minAmount >= 550) { + Game.Win("Quincentennial and a half"); + Game.Unlock("Cosmic chocolate butter biscuit"); + } + if (minAmount >= 600) { + Game.Win("Sexcentennial"); + Game.Unlock("Butter biscuit (with butter)"); + } + if (minAmount >= 650) { + Game.Win("Sexcentennial and a half"); + Game.Unlock("Everybutter biscuit"); + } + + if (Game.handmadeCookies >= 1000) { + Game.Win("Clicktastic"); + Game.Unlock("Plastic mouse"); + } + if (Game.handmadeCookies >= 100000) { + Game.Win("Clickathlon"); + Game.Unlock("Iron mouse"); + } + if (Game.handmadeCookies >= 10000000) { + Game.Win("Clickolympics"); + Game.Unlock("Titanium mouse"); + } + if (Game.handmadeCookies >= 1000000000) { + Game.Win("Clickorama"); + Game.Unlock("Adamantium mouse"); + } + if (Game.handmadeCookies >= 100000000000) { + Game.Win("Clickasmic"); + Game.Unlock("Unobtainium mouse"); + } + if (Game.handmadeCookies >= 10000000000000) { + Game.Win("Clickageddon"); + Game.Unlock("Eludium mouse"); + } + if (Game.handmadeCookies >= 1000000000000000) { + Game.Win("Clicknarok"); + Game.Unlock("Wishalloy mouse"); + } + if (Game.handmadeCookies >= 100000000000000000) { + Game.Win("Clickastrophe"); + Game.Unlock("Fantasteel mouse"); + } + if (Game.handmadeCookies >= 10000000000000000000) { + Game.Win("Clickataclysm"); + Game.Unlock("Nevercrack mouse"); + } + if (Game.handmadeCookies >= 1000000000000000000000) { + Game.Win("The ultimate clickdown"); + Game.Unlock("Armythril mouse"); + } + if (Game.handmadeCookies >= 100000000000000000000000) { + Game.Win("All the other kids with the pumped up clicks"); + Game.Unlock("Technobsidian mouse"); + } + if (Game.handmadeCookies >= 10000000000000000000000000) { + Game.Win("One...more...click..."); + Game.Unlock("Plasmarble mouse"); + } + if (Game.handmadeCookies >= 1000000000000000000000000000) { + Game.Win("Clickety split"); + Game.Unlock("Miraculite mouse"); + } + if (Game.handmadeCookies >= 100000000000000000000000000000) { + Game.Win("Ain't that a click in the head"); + Game.Unlock("Aetherice mouse"); + } + + if (Game.cookiesEarned < Game.cookies) + Game.Win("Cheated cookies taste awful"); + + if ( + Game.Has("Skull cookies") && + Game.Has("Ghost cookies") && + Game.Has("Bat cookies") && + Game.Has("Slime cookies") && + Game.Has("Pumpkin cookies") && + Game.Has("Eyeball cookies") && + Game.Has("Spider cookies") + ) + Game.Win("Spooky cookies"); + if (Game.wrinklersPopped >= 1) Game.Win("Itchscratcher"); + if (Game.wrinklersPopped >= 50) Game.Win("Wrinklesquisher"); + if (Game.wrinklersPopped >= 200) Game.Win("Moistburster"); + + if ( + Game.cookiesEarned >= 1000000 && + Game.Has("How to bake your dragon") + ) + Game.Unlock("A crumbly egg"); + + if (Game.cookiesEarned >= 25 && Game.season == "christmas") + Game.Unlock("A festive hat"); + if ( + Game.Has("Christmas tree biscuits") && + Game.Has("Snowflake biscuits") && + Game.Has("Snowman biscuits") && + Game.Has("Holly biscuits") && + Game.Has("Candy cane biscuits") && + Game.Has("Bell biscuits") && + Game.Has("Present biscuits") + ) + Game.Win("Let it snow"); + + if (Game.reindeerClicked >= 1) Game.Win("Oh deer"); + if (Game.reindeerClicked >= 50) Game.Win("Sleigh of hand"); + if (Game.reindeerClicked >= 200) Game.Win("Reindeer sleigher"); + + if (buildingsOwned >= 100) Game.Win("Builder"); + if (buildingsOwned >= 500) Game.Win("Architect"); + if (buildingsOwned >= 1000) Game.Win("Engineer"); + if (buildingsOwned >= 2500) Game.Win("Lord of Constructs"); + if (buildingsOwned >= 5000) Game.Win("Grand design"); + if (buildingsOwned >= 7500) Game.Win("Ecumenopolis"); + if (buildingsOwned >= 10000) Game.Win("Myriad"); + if (Game.UpgradesOwned >= 20) Game.Win("Enhancer"); + if (Game.UpgradesOwned >= 50) Game.Win("Augmenter"); + if (Game.UpgradesOwned >= 100) Game.Win("Upgrader"); + if (Game.UpgradesOwned >= 200) Game.Win("Lord of Progress"); + if (Game.UpgradesOwned >= 300) Game.Win("The full picture"); + if (Game.UpgradesOwned >= 400) + Game.Win("When there's nothing left to add"); + if (Game.UpgradesOwned >= 500) Game.Win("Kaizen"); + if (Game.UpgradesOwned >= 600) Game.Win("Beyond quality"); + if (buildingsOwned >= 4000 && Game.UpgradesOwned >= 300) + Game.Win("Polymath"); + if (buildingsOwned >= 8000 && Game.UpgradesOwned >= 400) + Game.Win("Renaissance baker"); + + if (!Game.HasAchiev("Jellicles")) { + var kittens = 0; + for (var i = 0; i < Game.UpgradesByPool["kitten"].length; i++) { + if (Game.Has(Game.UpgradesByPool["kitten"][i].name)) kittens++; + } + if (kittens >= 10) Game.Win("Jellicles"); + } + + if (Game.cookiesEarned >= 1e14 && !Game.HasAchiev("You win a cookie")) { + Game.Win("You win a cookie"); + Game.Earn(1); + } + + if (Game.shimmerTypes["golden"].n >= 4) Game.Win("Four-leaf cookie"); + + var grandmas = 0; + for (var i in Game.GrandmaSynergies) { + if (Game.Has(Game.GrandmaSynergies[i])) grandmas++; + } + if (!Game.HasAchiev("Elder") && grandmas >= 7) Game.Win("Elder"); + if (!Game.HasAchiev("Veteran") && grandmas >= 14) Game.Win("Veteran"); + if ( + Game.Objects["Grandma"].amount >= 6 && + !Game.Has("Bingo center/Research facility") && + Game.HasAchiev("Elder") + ) + Game.Unlock("Bingo center/Research facility"); + if (Game.pledges > 0) Game.Win("Elder nap"); + if (Game.pledges >= 5) Game.Win("Elder slumber"); + if (Game.pledges >= 10) Game.Unlock("Sacrificial rolling pins"); + if ( + Game.Objects["Cursor"].amount + Game.Objects["Grandma"].amount >= + 777 + ) + Game.Win("The elder scrolls"); + + for (var i in Game.Objects) { + var it = Game.Objects[i]; + for (var ii in it.productionAchievs) { + if (it.totalCookies >= it.productionAchievs[ii].pow) + Game.Win(it.productionAchievs[ii].achiev.name); + } + } + + if ( + !Game.HasAchiev("Cookie-dunker") && + Game.LeftBackground && + Game.milkProgress > 0.1 && + Game.LeftBackground.canvas.height * 0.4 + 256 / 2 - 16 > + (1 - Game.milkHd) * Game.LeftBackground.canvas.height + ) + Game.Win("Cookie-dunker"); + //&& l('bigCookie').getBounds().bottom>l('milk').getBounds().top+16 && Game.milkProgress>0.1) Game.Win('Cookie-dunker'); + + Game.runModHook("check"); + } + + Game.cookiesd += (Game.cookies - Game.cookiesd) * 0.3; + + if (Game.storeToRefresh) Game.RefreshStore(); + if (Game.upgradesToRebuild) Game.RebuildUpgrades(); + + Game.updateShimmers(); + Game.updateBuffs(); + + Game.UpdateTicker(); + } + + if (Game.T % (Game.fps * 2) == 0) { + var title = "Cookie Clicker"; + if (Game.season == "fools") title = "Cookie Baker"; + document.title = + (Game.OnAscend ? (EN ? "Ascending! " : loc("Ascending") + " | ") : "") + + loc("%1 cookie", LBeautify(Game.cookies)) + + " - " + + title; + } + if (Game.T % 15 == 0) { + //written through the magic of "hope for the best" maths + var chipsOwned = Game.HowMuchPrestige(Game.cookiesReset); + var ascendNowToOwn = Math.floor( + Game.HowMuchPrestige(Game.cookiesReset + Game.cookiesEarned) + ); + var ascendNowToGet = ascendNowToOwn - Math.floor(chipsOwned); + var nextChipAt = + Game.HowManyCookiesReset(Math.floor(chipsOwned + ascendNowToGet + 1)) - + Game.HowManyCookiesReset(Math.floor(chipsOwned + ascendNowToGet)); + var cookiesToNext = + Game.HowManyCookiesReset(ascendNowToOwn + 1) - + (Game.cookiesEarned + Game.cookiesReset); + var percent = 1 - cookiesToNext / nextChipAt; + + //fill the tooltip under the Legacy tab + var date = new Date(); + date.setTime(Date.now() - Game.startDate); + var timeInSeconds = date.getTime() / 1000; + var startDate = Game.sayTime(timeInSeconds * Game.fps, -1); + + var str = ""; + if (EN) + str += + "You've been on this run for " + + (startDate == "" ? "not very long" : startDate) + + ".
"; + else + str += + loc("You've been on this run for %1.", startDate) + "
"; + str += '
'; + if (Game.prestige > 0) { + str += loc( + "Your prestige level is currently %1.
(CpS +%2%)", + [Beautify(Game.prestige), Beautify(Game.prestige)] + ); + str += '
'; + } + if (ascendNowToGet < 1) + str += loc("Ascending now would grant you no prestige."); + else if (ascendNowToGet < 2) + str += loc( + "Ascending now would grant you
1 prestige level (+1% CpS)
and 1 heavenly chip to spend." + ); + else + str += loc( + "Ascending now would grant you
%1 prestige levels (+%2% CpS)
and %3 heavenly chips to spend.", + [ + Beautify(ascendNowToGet), + Beautify(ascendNowToGet), + Beautify(ascendNowToGet), + ] + ); + if (cookiesToNext >= 0) { + //note: cookiesToNext can be negative at higher HC amounts due to precision loss. we simply hide it in such cases, as this usually only occurs when the gap is small and rapidly overcome anyway + str += '
'; + str += + loc( + "You need %1 more cookies for the next level.", + Beautify(cookiesToNext) + ) + "
"; + } + l("ascendTooltip").innerHTML = str; + + if (ascendNowToGet > 0) { + //show number saying how many chips you'd get resetting now + Game.ascendNumber.textContent = "+" + SimpleBeautify(ascendNowToGet); + Game.ascendNumber.style.display = "block"; + } else { + Game.ascendNumber.style.display = "none"; + } + + if ( + ascendNowToGet > Game.ascendMeterLevel || + Game.ascendMeterPercentT < Game.ascendMeterPercent + ) { + //reset the gauge and play a sound if we gained a potential level + Game.ascendMeterPercent = 0; + //PlaySound('snd/levelPrestige.mp3');//a bit too annoying + } + Game.ascendMeterLevel = ascendNowToGet; + Game.ascendMeterPercentT = percent; //gauge that fills up as you near your next chip + //if (Game.ascendMeterPercentT=1) {Game.ascendMeter.className='';} else Game.ascendMeter.className='filling'; + } + //Game.ascendMeter.style.right=Math.floor(Math.max(0,1-Game.ascendMeterPercent)*100)+'px'; + Game.ascendMeter.style.backgroundPosition = + -Game.T * 0.5 - Game.ascendMeterPercent * 100 + "px"; + Game.ascendMeter.style.transform = + "translate(" + + Math.floor(-Math.max(0, 1 - Game.ascendMeterPercent) * 100) + + "%,0px)"; + Game.ascendMeterPercent += + (Game.ascendMeterPercentT - Game.ascendMeterPercent) * 0.1; + + Game.NotesLogic(); + if (Game.mouseMoved || Game.Scroll || Game.tooltip.dynamic) + Game.tooltip.update(); + + if ( + Game.T % (Game.fps * 5) == 0 && + !Game.mouseDown && + (Game.onMenu == "stats" || Game.onMenu == "prefs") + ) + Game.UpdateMenu(); + if (Game.T % (Game.fps * 1) == 0) Game.UpdatePrompt(); + if (Game.AscendTimer > 0) Game.UpdateAscendIntro(); + if (Game.ReincarnateTimer > 0) Game.UpdateReincarnateIntro(); + if (Game.OnAscend) Game.UpdateAscend(); + + Game.runModHook("logic"); + + if (Game.sparklesT > 0) { + Game.sparkles.style.backgroundPosition = + -Math.floor((Game.sparklesFrames - Game.sparklesT + 1) * 128) + + "px 0px"; + Game.sparklesT--; + if (Game.sparklesT == 1) Game.sparkles.style.display = "none"; + } + + Game.Click = 0; + Game.Scroll = 0; + Game.mouseMoved = 0; + Game.CanClick = 1; + + if ( + (Game.toSave || + (Game.T % (Game.fps * 60) == 0 && + Game.T > Game.fps * 10 && + Game.prefs.autosave)) && + !Game.OnAscend + ) { + //check if we can save : no minigames are loading + var canSave = true; + for (var i in Game.Objects) { + var me = Game.Objects[i]; + if (me.minigameLoading) { + canSave = false; + break; + } + } + if (canSave) Game.WriteSave(); + } + if (!Game.toSave && !Game.isSaving) { + if (Game.toReload) { + Game.toReload = false; + if (!App) { + location.reload(); + } else { + App.reload(); + } + } + if (Game.toQuit) { + Game.toQuit = false; + if (!App) { + window.close(); + } else { + App.quit(); + } + } + } + + if (App && App.logic) App.logic(Game.T); + + //every hour: get server data (ie. update notification, patreon, steam etc) + if ( + Game.T % (Game.fps * 60 * 60) == 0 && + Game.T > Game.fps * 10 /* && Game.prefs.autoupdate*/ + ) { + Game.CheckUpdates(); + Game.GrabData(); + } + + Game.T++; + }; + + /*===================================================================================== + DRAW + =======================================================================================*/ + + Game.Draw = function () { + Game.DrawBackground(); + Timer.track("end of background"); + + if (!Game.OnAscend) { + var str = Beautify(Math.round(Game.cookiesd)); + if (Game.cookiesd >= 1000000) { + //dirty padding + var spacePos = str.indexOf(" "); + var dotPos = str.indexOf("."); + var add = ""; + if (spacePos != -1) { + if (dotPos == -1) add += ".000"; + else { + if (spacePos - dotPos == 2) add += "00"; + if (spacePos - dotPos == 3) add += "0"; + } + } + str = [str.slice(0, spacePos), add, str.slice(spacePos)].join(""); + } + + str = loc("%1 cookie", { n: Math.round(Game.cookiesd), b: str }); + if (str.length > 14) str = str.replace(" ", "
"); + + if (Game.prefs.monospace) + str = '' + str + ""; + str = + str + + '
0 ? ' class="wrinkled"' : "") + + ">" + + loc("per second:") + + " " + + Beautify(Game.cookiesPs * (1 - Game.cpsSucked), 1) + + "
"; + l("cookies").innerHTML = str; + Timer.track("cookie amount"); + + for (var i in Game.Objects) { + var me = Game.Objects[i]; + if (me.onMinigame && me.minigame.draw && !me.muted && !Game.onMenu) + me.minigame.draw(); + } + Timer.track("draw minigames"); + + if (Game.drawT % 5 == 0) { + //if (Game.prefs.monospace) {l('cookies').className='title monospace';} else {l('cookies').className='title';} + var lastLocked = 0; + for (var i in Game.Objects) { + var me = Game.Objects[i]; + + //make products full-opacity if we can buy them + var classes = "product"; + var price = me.bulkPrice; + if (Game.cookiesEarned >= me.basePrice || me.bought > 0) { + classes += " unlocked"; + lastLocked = 0; + me.locked = 0; + } else { + classes += " locked"; + lastLocked++; + me.locked = 1; + } + if ( + (Game.buyMode == 1 && Game.cookies >= price) || + (Game.buyMode == -1 && me.amount > 0) + ) + classes += " enabled"; + else classes += " disabled"; + if (lastLocked > 2) classes += " toggledOff"; + me.l.className = classes; + //if (me.id>0) {l('productName'+me.id).innerHTML=Beautify(me.storedTotalCps/Game.ObjectsById[me.id-1].storedTotalCps,2);} + } + + //make upgrades full-opacity if we can buy them + var lastPrice = 0; + for (var i in Game.UpgradesInStore) { + var me = Game.UpgradesInStore[i]; + if (!me.bought) { + var price = me.getPrice(); + var canBuy = me.canBuy(); //(Game.cookies>=price); + var enabled = l("upgrade" + i).className.indexOf("enabled") > -1; + if ((canBuy && !enabled) || (!canBuy && enabled)) + Game.upgradesToRebuild = 1; + if (price < lastPrice) Game.storeToRefresh = 1; //is this upgrade less expensive than the previous one? trigger a refresh to sort it again + lastPrice = price; + } + if (me.timerDisplay) { + var T = me.timerDisplay(); + if (T != -1) { + if (!l("upgradePieTimer" + i)) + l("upgrade" + i).innerHTML = + l("upgrade" + i).innerHTML + + '
'; + T = (T * 144) % 144; + l("upgradePieTimer" + i).style.backgroundPosition = + -Math.floor(T % 18) * 48 + + "px " + + -Math.floor(T / 18) * 48 + + "px"; + } + } + + //if (me.canBuy()) l('upgrade'+i).className='crate upgrade enabled'; else l('upgrade'+i).className='crate upgrade disabled'; + } + } + Timer.track("store"); + + if (Game.PARTY) { + //i was bored and felt like messing with CSS + var pulse = Math.pow((Game.T % 10) / 10, 0.5); + Game.l.style.filter = + "hue-rotate(" + + ((Game.T * 5) % 360) + + "deg) brightness(" + + (150 - 50 * pulse) + + "%)"; + Game.l.style.webkitFilter = + "hue-rotate(" + + ((Game.T * 5) % 360) + + "deg) brightness(" + + (150 - 50 * pulse) + + "%)"; + Game.l.style.transform = + "scale(" + + (1.02 - 0.02 * pulse) + + "," + + (1.02 - 0.02 * pulse) + + ") rotate(" + + Math.sin(Game.T * 0.5) * 0.5 + + "deg)"; + Game.wrapper.style.overflowX = "hidden"; + Game.wrapper.style.overflowY = "hidden"; + } + + Timer.clean(); + if ( + Game.prefs.animate && + ((Game.prefs.fancy && Game.drawT % 1 == 0) || + (!Game.prefs.fancy && Game.drawT % 10 == 0)) && + Game.AscendTimer == 0 && + Game.onMenu == "" + ) + Game.DrawBuildings(); + Timer.track("buildings"); + + Game.textParticlesUpdate(); + Timer.track("text particles"); + } + + Game.NotesDraw(); + Timer.track("notes"); + + Game.runModHook("draw"); + + Game.drawT++; + //if (Game.prefs.altDraw) requestAnimationFrame(Game.Draw); + }; + + /*===================================================================================== + MAIN LOOP + =======================================================================================*/ + Game.Loop = function () { + if (Game.timedout) return false; + Timer.say("START"); + Timer.track("browser stuff"); + Timer.say("LOGIC"); + //update game logic ! + Game.catchupLogic = 0; + Game.Logic(); + Game.catchupLogic = 1; + + var time = Date.now(); + + //latency compensator + Game.accumulatedDelay += time - Game.time - 1000 / Game.fps; + if (Game.prefs.timeout && time - Game.lastActivity >= 1000 * 60 * 5) { + if (Game.accumulatedDelay > 1000 * 60 * 30) + Game.delayTimeouts += 3; //more than 30 minutes delay? computer probably asleep and not making cookies anyway + else if (Game.accumulatedDelay > 1000 * 5) Game.delayTimeouts++; //add to timeout counter when we skip 10 seconds worth of frames (and the player has been inactive for at least 5 minutes) + if (Game.delayTimeouts >= 3) Game.Timeout(); //trigger timeout when the timeout counter is 3+ + } + + Game.accumulatedDelay = Math.min(Game.accumulatedDelay, 1000 * 5); //don't compensate over 5 seconds; if you do, something's probably very wrong + Game.time = time; + + //if (Game.accumulatedDelay>=Game.fps) console.log('delay:',Math.round(Game.accumulatedDelay/Game.fps)); + while (Game.accumulatedDelay > 0) { + Game.Logic(); + Game.accumulatedDelay -= 1000 / Game.fps; //as long as we're detecting latency (slower than target fps), execute logic (this makes drawing slower but makes the logic behave closer to correct target fps) + } + Game.catchupLogic = 0; + Timer.track("logic"); + Timer.say("END LOGIC"); + /* + if (!Game.prefs.altDraw) + { + var hasFocus=document.hasFocus(); + Timer.say('DRAW'); + if (hasFocus || Game.prefs.focus || Game.loopT%10==0) requestAnimationFrame(Game.Draw); + //if (document.hasFocus() || Game.loopT%5==0) Game.Draw(); + Timer.say('END DRAW'); + } + else requestAnimationFrame(Game.Draw);*/ + if (Game.visible) Game.Draw(); + + //if (!hasFocus) Game.tooltip.hide(); + + if (Game.sesame) { + //fps counter and graph + Game.previousFps = Game.currentFps; + Game.currentFps = Game.getFps(); + var ctx = Game.fpsGraphCtx; + ctx.drawImage(Game.fpsGraph, -1, 0); + ctx.fillStyle = + "rgb(" + Math.round((1 - Game.currentFps / Game.fps) * 128) + ",0,0)"; + ctx.fillRect(128 - 1, 0, 1, 64); + ctx.strokeStyle = "#fff"; + ctx.beginPath(); + ctx.moveTo(128 - 1, (1 - Game.previousFps / Game.fps) * 64); + ctx.lineTo(128, (1 - Game.currentFps / Game.fps) * 64); + ctx.stroke(); + + l("fpsCounter").textContent = Game.currentFps + " fps"; + var str = ""; + for (var i in Timer.labels) { + str += Timer.labels[i]; + } + if (Game.debugTimersOn) l("debugLog").style.display = "block"; + else l("debugLog").style.display = "none"; + l("debugLog").innerHTML = str; + } + Timer.reset(); + + Game.loopT++; + setTimeout(Game.Loop, 1000 / Game.fps); + }; +}; + +/*===================================================================================== +LAUNCH THIS THING +=======================================================================================*/ +//Game.Launch(); + +//try {Game.Launch();} +//catch(err) {console.log('ERROR : '+err.message);} + +window.onload = function () { + if (!Game.ready) { + var loadLangAndLaunch = function (lang, firstLaunch) { + if (!firstLaunch) localStorageSet("CookieClickerLang", lang); + + //LoadLang('../Cookie Clicker Localization/EN.js',function(lang){return function(){ + LoadLang( + "loc/EN.js?v=" + Game.version, + (function (lang) { + return function () { + locStringsFallback = locStrings; + LoadLang("loc/" + lang + ".js?v=" + Game.version, function () { + var launch = function () { + Game.Launch(); + console.log( + "[=== " + + choose([ + "Oh, hello!", + "hey, how's it hangin", + "About to cheat in some cookies or just checking for bugs?", + "Remember : cheated cookies taste awful!", + "Hey, Orteil here. Cheated cookies taste awful... or do they?", + ]) + + " ===]" + ); + Game.Load(function () { + Game.Init(); + if (firstLaunch) Game.showLangSelection(true); + }); + //try {Game.Load(Game.Init);} + //catch(err) {console.log('ERROR : '+err.message);} + }; + if (App && App.loadMods) App.loadMods(launch); + else launch(); + }); + }; + })(lang) + ); + }; + + var showLangSelect = function (callback) { + var str = ""; + for (var i in Langs) { + var lang = Langs[i]; + str += + '
' + + lang.name + + "
"; + } + l("offGameMessage").innerHTML = + '
Language
' + + '
' + + str; + for (var i in Langs) { + var lang = Langs[i]; + AddEvent( + l("langSelect-" + i), + "click", + (function (lang) { + return function () { + callback(lang); + }; + })(i) + ); + AddEvent( + l("langSelect-" + i), + "mouseover", + (function (lang) { + return function () { + PlaySound("snd/smallTick.mp3", 0.75); + l("languageSelectHeader").innerHTML = Langs[lang].changeLanguage; + }; + })(i) + ); + } + }; + + var lang = localStorageGet("CookieClickerLang"); + if (App && !lang) showLangSelect(loadLangAndLaunch); + else if (!lang) { + loadLangAndLaunch("EN", true); + } else loadLangAndLaunch(lang); + } +}; diff --git a/gversion/gs/cookieclicker/minigameGarden.js b/gversion/gs/cookieclicker/minigameGarden.js new file mode 100644 index 0000000..e92d73d --- /dev/null +++ b/gversion/gs/cookieclicker/minigameGarden.js @@ -0,0 +1,2019 @@ +var M={}; +M.parent=Game.Objects['Farm']; +M.parent.minigame=M; +M.launch=function() +{ + var M=this; + M.name=M.parent.minigameName; + M.init=function(div) + { + //populate div with html and initialize values + + /* + plants age from 0 to 100 + at one point in its lifespan, the plant becomes mature + plants have 4 life stages once planted : bud, sprout, bloom, mature + a plant may age faster by having a higher .ageTick + if a plant has .ageTickR, a random number between 0 and that amount is added to .ageTick + a plant may mature faster by having a lower .mature + a plant's effects depend on how mature it is + a plant can only reproduce when mature + */ + M.plants={ + 'bakerWheat':{ + name:'Baker\'s wheat', + icon:0, + cost:1, + costM:30, + ageTick:7, + ageTickR:2, + mature:35, + children:['bakerWheat','thumbcorn','cronerice','bakeberry','clover','goldenClover','chocoroot','tidygrass'], + effsStr:'
• +1% CpS
', + q:'A plentiful crop whose hardy grain is used to make flour for pastries.', + onHarvest:function(x,y,age) + { + if (age>=this.mature) M.dropUpgrade('Wheat slims',0.001); + }, + }, + 'thumbcorn':{ + name:'Thumbcorn', + icon:1, + cost:5, + costM:100, + ageTick:6, + ageTickR:2, + mature:20, + children:['bakerWheat','thumbcorn','cronerice','gildmillet','glovemorel'], + effsStr:'
• +2% cookies per click
', + q:'A strangely-shaped variant of corn. The amount of strands that can sprout from one seed is usually in the single digits.', + }, + 'cronerice':{ + name:'Cronerice', + icon:2, + cost:15, + costM:250, + ageTick:0.4, + ageTickR:0.7, + mature:55, + children:['thumbcorn','gildmillet','elderwort','wardlichen'], + effsStr:'
• +3% grandma CpS
', + q:'Not only does this wrinkly bulb look nothing like rice, it\'s not even related to it either; its closest extant relative is the weeping willow.', + }, + 'gildmillet':{ + name:'Gildmillet', + icon:3, + cost:15, + costM:1500, + ageTick:2, + ageTickR:1.5, + mature:40, + children:['clover','goldenClover','shimmerlily'], + effsStr:'
• +1% golden cookie gains
• +0.1% golden cookie effect duration
', + q:'An ancient staple crop, famed for its golden sheen. Was once used to bake birthday cakes for kings and queens of old.', + }, + 'clover':{ + name:'Ordinary clover', + icon:4, + cost:25, + costM:77777, + ageTick:1, + ageTickR:1.5, + mature:35, + children:['goldenClover','greenRot','shimmerlily'], + effsStr:'
• +1% golden cookie frequency
', + q:'Trifolium repens, a fairly mundane variety of clover with a tendency to produce four leaves. Such instances are considered lucky by some.', + }, + 'goldenClover':{ + name:'Golden clover', + icon:5, + cost:125, + costM:777777777777, + ageTick:4, + ageTickR:12, + mature:50, + children:[], + effsStr:'
• +3% golden cookie frequency
', + q:'A variant of the ordinary clover that traded its chlorophyll for pure organic gold. Tragically short-lived, this herb is an evolutionary dead-end - but at least it looks pretty.', + }, + 'shimmerlily':{ + name:'Shimmerlily', + icon:6, + cost:60, + costM:777777, + ageTick:5, + ageTickR:6, + mature:70, + children:['elderwort','whiskerbloom','chimerose','cheapcap'], + effsStr:'
• +1% golden cookie gains
• +1% golden cookie frequency
• +1% random drops
', + q:'These little flowers are easiest to find at dawn, as the sunlight refracting in dew drops draws attention to their pure-white petals.', + }, + 'elderwort':{ + name:'Elderwort', + icon:7, + cost:60*3, + costM:100000000, + ageTick:0.3, + ageTickR:0.5, + mature:90, + immortal:1, + noContam:true, + detailsStr:'Immortal', + children:['everdaisy','ichorpuff','shriekbulb'], + effsStr:'
• +1% wrath cookie gains
• +1% wrath cookie frequency
• +1% grandma CpS
• immortal
• surrounding plants (3x3) age 3% faster
', + q:'A very old, long-forgotten subspecies of edelweiss that emits a strange, heady scent. There is some anecdotal evidence that these do not undergo molecular aging.', + onHarvest:function(x,y,age) + { + if (age>=this.mature) M.dropUpgrade('Elderwort biscuits',0.01); + }, + }, + 'bakeberry':{ + name:'Bakeberry', + icon:8, + cost:45, + costM:100000000, + ageTick:1, + ageTickR:1, + mature:50, + children:['queenbeet'], + effsStr:'
• +1% CpS
• harvest when mature for +30 minutes of CpS (max. 3% of bank)
', + q:'A favorite among cooks, this large berry has a crunchy brown exterior and a creamy red center. Excellent in pies or chicken stews.', + onHarvest:function(x,y,age) + { + if (age>=this.mature) + { + var moni=Math.min(Game.cookies*0.03,Game.cookiesPs*60*30); + if (moni!=0) + { + Game.Earn(moni); + Game.Popup('(Bakeberry)
+'+Beautify(moni)+' cookies!',Game.mouseX,Game.mouseY); + } + M.dropUpgrade('Bakeberry cookies',0.015); + } + }, + }, + 'chocoroot':{ + name:'Chocoroot', + icon:9, + cost:15, + costM:100000, + ageTick:4, + ageTickR:0, + mature:25, + detailsStr:'Predictable growth', + children:['whiteChocoroot','drowsyfern','queenbeet'], + effsStr:'
• +1% CpS
• harvest when mature for +3 minutes of CpS (max. 3% of bank)
• predictable growth
', + q:'A tangly bramble coated in a sticky, sweet substance. Unknown genetic ancestry. Children often pick these from fields as-is as a snack.', + onHarvest:function(x,y,age) + { + if (age>=this.mature) + { + var moni=Math.min(Game.cookies*0.03,Game.cookiesPs*60*3); + if (moni!=0) + { + Game.Earn(moni); + Game.Popup('(Chocoroot)
+'+Beautify(moni)+' cookies!',Game.mouseX,Game.mouseY); + } + } + }, + }, + 'whiteChocoroot':{ + name:'White chocoroot', + icon:10, + cost:15, + costM:100000, + ageTick:4, + ageTickR:0, + mature:25, + detailsStr:'Predictable growth', + children:['whiskerbloom','tidygrass'], + effsStr:'
• +1% golden cookie gains
• harvest when mature for +3 minutes of CpS (max. 3% of bank)
• predictable growth
', + q:'A pale, even sweeter variant of the chocoroot. Often impedes travelers with its twisty branches.', + onHarvest:function(x,y,age) + { + if (age>=this.mature) + { + var moni=Math.min(Game.cookies*0.03,Game.cookiesPs*60*3); + if (moni!=0) + { + Game.Earn(moni); + Game.Popup('(White chocoroot)
+'+Beautify(moni)+' cookies!',Game.mouseX,Game.mouseY); + } + } + }, + }, + + 'whiteMildew':{ + name:'White mildew', + fungus:true, + icon:26, + cost:20, + costM:9999, + ageTick:8, + ageTickR:12, + mature:70, + detailsStr:'Spreads easily', + children:['brownMold','whiteChocoroot','wardlichen','greenRot'], + effsStr:'
• +1% CpS
• may spread as brown mold
', + q:'A common rot that infests shady plots of earth. Grows in little creamy capsules. Smells sweet, but sadly wilts quickly.', + }, + 'brownMold':{ + name:'Brown mold', + fungus:true, + icon:27, + cost:20, + costM:9999, + ageTick:8, + ageTickR:12, + mature:70, + detailsStr:'Spreads easily', + children:['whiteMildew','chocoroot','keenmoss','wrinklegill'], + effsStr:'
• -1% CpS
• may spread as white mildew
', + q:'A common rot that infests shady plots of earth. Grows in odd reddish clumps. Smells bitter, but thankfully wilts quickly.', + }, + + 'meddleweed':{ + name:'Meddleweed', + weed:true, + icon:29, + cost:1, + costM:10, + ageTick:10, + ageTickR:6, + mature:50, + contam:0.05, + detailsStr:'Grows in empty tiles, spreads easily', + children:['meddleweed','brownMold','crumbspore'], + effsStr:'
• useless
• may overtake nearby plants
• may sometimes drop spores when uprooted
', + q:'The sign of a neglected farmland, this annoying weed spawns from unused dirt and may sometimes spread to other plants, killing them in the process.', + onKill:function(x,y,age) + { + if (Math.random()<0.2*(age/100)) M.plot[y][x]=[M.plants[choose(['brownMold','crumbspore'])].id+1,0]; + }, + }, + + 'whiskerbloom':{ + name:'Whiskerbloom', + icon:11, + cost:20, + costM:1000000, + ageTick:2, + ageTickR:2, + mature:60, + children:['chimerose','nursetulip'], + effsStr:'
• +0.2% effects from milk
', + q:'Squeezing the translucent pods makes them excrete a milky liquid, while producing a faint squeak akin to a cat\'s meow.', + }, + 'chimerose':{ + name:'Chimerose', + icon:12, + cost:15, + costM:242424, + ageTick:1, + ageTickR:1.5, + mature:30, + children:['chimerose'], + effsStr:'
• +1% reindeer gains
• +1% reindeer frequency
', + q:'Originating in the greener flanks of polar mountains, this beautiful flower with golden accents is fragrant enough to make any room feel a little bit more festive.', + }, + 'nursetulip':{ + name:'Nursetulip', + icon:13, + cost:40, + costM:1000000000, + ageTick:0.5, + ageTickR:2, + mature:60, + children:[], + effsStr:'
• surrounding plants (3x3) are 20% more efficient
• -2% CpS
', + q:'This flower grows an intricate root network that distributes nutrients throughout the surrounding soil. The reason for this seemingly altruistic behavior is still unknown.', + }, + 'drowsyfern':{ + name:'Drowsyfern', + icon:14, + cost:90, + costM:100000, + ageTick:0.05, + ageTickR:0.1, + mature:30, + children:[], + effsStr:'
• +3% CpS
• -5% cookies per click
• -10% golden cookie frequency
', + q:'Traditionally used to brew a tea that guarantees a good night of sleep.', + onHarvest:function(x,y,age) + { + if (age>=this.mature) M.dropUpgrade('Fern tea',0.01); + }, + }, + 'wardlichen':{ + name:'Wardlichen', + icon:15, + cost:10, + costM:10000, + ageTick:5, + ageTickR:4, + mature:65, + children:['wardlichen'], + effsStr:'
• 2% less wrath cookies
• wrinklers spawn 15% slower
', + q:'The metallic stench that emanates from this organism has been known to keep insects and slugs away.', + }, + 'keenmoss':{ + name:'Keenmoss', + icon:16, + cost:50, + costM:1000000, + ageTick:4, + ageTickR:5, + mature:65, + children:['drowsyfern','wardlichen','keenmoss'], + effsStr:'
• +3% random drops
', + q:'Fuzzy to the touch and of a vibrant green. In plant symbolism, keenmoss is associated with good luck for finding lost objects.', + }, + 'queenbeet':{ + name:'Queenbeet', + icon:17, + cost:60*1.5, + costM:1000000000, + ageTick:1, + ageTickR:0.4, + mature:80, + noContam:true, + children:['duketater','queenbeetLump','shriekbulb'], + effsStr:'
• +0.3% golden cookie effect duration
• -2% CpS
• harvest when mature for +1 hour of CpS (max. 4% of bank)
', + q:'A delicious taproot used to prepare high-grade white sugar. Entire countries once went to war over these.', + onHarvest:function(x,y,age) + { + if (age>=this.mature) + { + var moni=Math.min(Game.cookies*0.04,Game.cookiesPs*60*60); + if (moni!=0) + { + Game.Earn(moni); + Game.Popup('(Queenbeet)
+'+Beautify(moni)+' cookies!',Game.mouseX,Game.mouseY); + } + } + }, + }, + 'queenbeetLump':{ + name:'Juicy queenbeet', + icon:18, + plantable:false, + cost:60*2, + costM:1000000000000, + ageTick:0.04, + ageTickR:0.08, + mature:85, + noContam:true, + children:[], + effsStr:'
• -10% CpS
• surrounding plants (3x3) are 20% less efficient
• harvest when mature for a sugar lump
', + q:'A delicious taproot used to prepare high-grade white sugar. Entire countries once went to war over these.
It looks like this one has grown especially sweeter and juicier from growing in close proximity to other queenbeets.', + onHarvest:function(x,y,age) + { + if (age>=this.mature) + { + Game.gainLumps(1); + popup='(Juicy queenbeet)
Sweet!
Found 1 sugar lump!
'; + } + }, + }, + 'duketater':{ + name:'Duketater', + icon:19, + cost:60*8, + costM:1000000000000, + ageTick:0.4, + ageTickR:0.1, + mature:95, + noContam:true, + children:['shriekbulb'], + effsStr:'
• harvest when mature for +2 hours of CpS (max. 8% of bank)
', + q:'A rare, rich-tasting tuber fit for a whole meal, as long as its strict harvesting schedule is respected. Its starch has fascinating baking properties.', + onHarvest:function(x,y,age) + { + if (age>=this.mature) + { + var moni=Math.min(Game.cookies*0.08,Game.cookiesPs*60*60*2); + if (moni!=0) + { + Game.Earn(moni); + Game.Popup('(Duketater)
+'+Beautify(moni)+' cookies!',Game.mouseX,Game.mouseY); + } + M.dropUpgrade('Duketater cookies',0.005); + } + }, + }, + 'crumbspore':{ + name:'Crumbspore', + fungus:true, + icon:20, + cost:10, + costM:999, + ageTick:3, + ageTickR:3, + mature:65, + contam:0.03, + noContam:true, + detailsStr:'Spreads easily', + children:['crumbspore','glovemorel','cheapcap','doughshroom','wrinklegill','ichorpuff'], + effsStr:'
• explodes into up to 1 minute of CpS at the end of its lifecycle (max. 1% of bank)
• may overtake nearby plants
', + q:'An archaic mold that spreads its spores to the surrounding dirt through simple pod explosion.', + onDie:function(x,y) + { + var moni=Math.min(Game.cookies*0.01,Game.cookiesPs*60)*Math.random(); + if (moni!=0) + { + Game.Earn(moni); + Game.Popup('(Crumbspore)
+'+Beautify(moni)+' cookies!',Game.mouseX,Game.mouseY); + } + }, + }, + 'doughshroom':{ + name:'Doughshroom', + fungus:true, + icon:24, + cost:100, + costM:100000000, + ageTick:1, + ageTickR:2, + mature:85, + contam:0.03, + noContam:true, + detailsStr:'Spreads easily', + children:['crumbspore','doughshroom','foolBolete','shriekbulb'], + effsStr:'
• explodes into up to 5 minutes of CpS at the end of its lifecycle (max. 3% of bank)
• may overtake nearby plants
', + q:'Jammed full of warm spores; some forest walkers often describe the smell as similar to passing by a bakery.', + onDie:function(x,y) + { + var moni=Math.min(Game.cookies*0.03,Game.cookiesPs*60*5)*Math.random(); + if (moni!=0) + { + Game.Earn(moni); + Game.Popup('(Doughshroom)
+'+Beautify(moni)+' cookies!',Game.mouseX,Game.mouseY); + } + }, + }, + 'glovemorel':{ + name:'Glovemorel', + fungus:true, + icon:21, + cost:30, + costM:10000, + ageTick:3, + ageTickR:18, + mature:80, + children:[], + effsStr:'
• +4% cookies per click
• +1% cursor CpS
• -1% CpS
', + q:'Touching its waxy skin reveals that the interior is hollow and uncomfortably squishy.', + }, + 'cheapcap':{ + name:'Cheapcap', + fungus:true, + icon:22, + cost:40, + costM:100000, + ageTick:6, + ageTickR:16, + mature:40, + children:[], + effsStr:'
• buildings and upgrades are 0.2% cheaper
• cannot handle cold climates; 15% chance to die when frozen
', + q:'Small, tough, and good in omelettes. Some historians propose that the heads of dried cheapcaps were once used as currency in some bronze age societies.', + }, + 'foolBolete':{ + name:'Fool\'s bolete', + fungus:true, + icon:23, + cost:15, + costM:10000, + ageTick:5, + ageTickR:25, + mature:50, + children:[], + effsStr:'
• +2% golden cookie frequency
• -5% golden cookie gains
• -2% golden cookie duration
• -2% golden cookie effect duration
', + q:'Named for its ability to fool mushroom pickers. The fool\'s bolete is not actually poisonous, it\'s just extremely bland.', + }, + 'wrinklegill':{ + name:'Wrinklegill', + fungus:true, + icon:25, + cost:20, + costM:1000000, + ageTick:1, + ageTickR:3, + mature:65, + children:['elderwort','shriekbulb'], + effsStr:'
• wrinklers spawn 2% faster
• wrinklers eat 1% more
', + q:'This mushroom\'s odor resembles that of a well-done steak, and is said to whet the appetite - making one\'s stomach start gurgling within seconds.', + }, + 'greenRot':{ + name:'Green rot', + fungus:true, + icon:28, + cost:60, + costM:1000000, + ageTick:12, + ageTickR:13, + mature:65, + children:['keenmoss','foolBolete'], + effsStr:'
• +0.5% golden cookie duration
• +1% golden cookie frequency
• +1% random drops
', + q:'This short-lived mold is also known as "emerald pebbles", and is considered by some as a pseudo-gem that symbolizes good fortune.', + onHarvest:function(x,y,age) + { + if (age>=this.mature) M.dropUpgrade('Green yeast digestives',0.005); + }, + }, + 'shriekbulb':{ + name:'Shriekbulb', + icon:30, + cost:60, + costM:4444444444444, + ageTick:3, + ageTickR:1, + mature:60, + noContam:true, + detailsStr:'The unfortunate result of some plant combinations', + children:['shriekbulb'], + effsStr:'
• -2% CpS
• surrounding plants (3x3) are 5% less efficient
', + q:'A nasty vegetable with a dreadful quirk : its flesh resonates with a high-pitched howl whenever it is hit at the right angle by sunlight, moonlight, or even a slight breeze.', + }, + 'tidygrass':{ + name:'Tidygrass', + icon:31, + cost:90, + costM:100000000000000, + ageTick:0.5, + ageTickR:0, + mature:40, + children:['everdaisy'], + effsStr:'
• surrounding tiles (5x5) develop no weeds or fungus
', + q:'The molecules this grass emits are a natural weedkiller. Its stems grow following a predictable pattern, making it an interesting -if expensive- choice for a lawn grass.', + }, + 'everdaisy':{ + name:'Everdaisy', + icon:32, + cost:180, + costM:100000000000000000000, + ageTick:0.3, + ageTickR:0, + mature:75, + noContam:true, + immortal:1, + detailsStr:'Immortal', + children:[], + effsStr:'
• surrounding tiles (3x3) develop no weeds or fungus
• immortal
', + q:'While promoted by some as a superfood owing to its association with longevity and intriguing geometry, this elusive flower is actually mildly toxic.', + }, + 'ichorpuff':{ + name:'Ichorpuff', + fungus:true, + icon:33, + cost:120, + costM:987654321, + ageTick:1, + ageTickR:1.5, + mature:35, + children:[], + effsStr:'
• surrounding plants (3x3) age half as fast
• surrounding plants (3x3) are half as efficient
', + q:'This puffball mushroom contains sugary spores, but it never seems to mature to bursting on its own. Surrounding plants under its influence have a very slow metabolism, reducing their effects but lengthening their lifespan.', + onHarvest:function(x,y,age) + { + if (age>=this.mature) M.dropUpgrade('Ichor syrup',0.005); + }, + }, + }; + M.plantsById=[];var n=0; + for (var i in M.plants) + { + M.plants[i].unlocked=0; + M.plants[i].id=n; + M.plants[i].key=i; + M.plants[i].matureBase=M.plants[i].mature; + M.plantsById[n]=M.plants[i]; + if (typeof M.plants[i].plantable==='undefined') {M.plants[i].plantable=true;} + n++; + } + M.plantsN=M.plantsById.length; + M.plantsUnlockedN=0; + M.getUnlockedN=function() + { + M.plantsUnlockedN=0; + for (var i in M.plants){if (M.plants[i].unlocked) M.plantsUnlockedN++;} + if (M.plantsUnlockedN>=M.plantsN) + { + Game.Win('Keeper of the conservatory'); + l('gardenTool-3').classList.remove('locked'); + } + else l('gardenTool-3').classList.add('locked'); + + return M.plantsUnlockedN; + } + + M.dropUpgrade=function(upgrade,rate) + { + if (!Game.Has(upgrade) && Math.random()<=rate*Game.dropRateMult()*(Game.HasAchiev('Seedless to nay')?1.05:1)) + { + Game.Unlock(upgrade); + } + } + + M.computeMatures=function() + { + var mult=1; + if (Game.HasAchiev('Seedless to nay')) mult=0.95; + for (var i in M.plants) + { + M.plants[i].mature=M.plants[i].matureBase*mult; + } + } + + M.plantContam={}; + for (var i in M.plants) + { + if (M.plants[i].contam) M.plantContam[M.plants[i].key]=M.plants[i].contam; + } + + M.getMuts=function(neighs,neighsM) + { + //get possible mutations given a list of neighbors + //note : neighs stands for neighbors, not horsey noises + var muts=[]; + + if (neighsM['bakerWheat']>=2) muts.push(['bakerWheat',0.2],['thumbcorn',0.05],['bakeberry',0.001]); + if (neighsM['bakerWheat']>=1 && neighsM['thumbcorn']>=1) muts.push(['cronerice',0.01]); + if (neighsM['thumbcorn']>=2) muts.push(['thumbcorn',0.1],['bakerWheat',0.05]); + if (neighsM['cronerice']>=1 && neighsM['thumbcorn']>=1) muts.push(['gildmillet',0.03]); + if (neighsM['cronerice']>=2) muts.push(['thumbcorn',0.02]); + if (neighsM['bakerWheat']>=1 && neighsM['gildmillet']>=1) muts.push(['clover',0.03],['goldenClover',0.0007]); + if (neighsM['clover']>=1 && neighsM['gildmillet']>=1) muts.push(['shimmerlily',0.02]); + if (neighsM['clover']>=2 && neighs['clover']<5) muts.push(['clover',0.007],['goldenClover',0.0001]); + if (neighsM['clover']>=4) muts.push(['goldenClover',0.0007]); + if (neighsM['shimmerlily']>=1 && neighsM['cronerice']>=1) muts.push(['elderwort',0.01]); + if (neighsM['wrinklegill']>=1 && neighsM['cronerice']>=1) muts.push(['elderwort',0.002]); + if (neighsM['bakerWheat']>=1 && neighs['brownMold']>=1) muts.push(['chocoroot',0.1]); + if (neighsM['chocoroot']>=1 && neighs['whiteMildew']>=1) muts.push(['whiteChocoroot',0.1]); + if (neighsM['whiteMildew']>=1 && neighs['brownMold']<=1) muts.push(['brownMold',0.5]); + if (neighsM['brownMold']>=1 && neighs['whiteMildew']<=1) muts.push(['whiteMildew',0.5]); + if (neighsM['meddleweed']>=1 && neighs['meddleweed']<=3) muts.push(['meddleweed',0.15]); + + if (neighsM['shimmerlily']>=1 && neighsM['whiteChocoroot']>=1) muts.push(['whiskerbloom',0.01]); + if (neighsM['shimmerlily']>=1 && neighsM['whiskerbloom']>=1) muts.push(['chimerose',0.05]); + if (neighsM['chimerose']>=2) muts.push(['chimerose',0.005]); + if (neighsM['whiskerbloom']>=2) muts.push(['nursetulip',0.05]); + if (neighsM['chocoroot']>=1 && neighsM['keenmoss']>=1) muts.push(['drowsyfern',0.005]); + if ((neighsM['cronerice']>=1 && neighsM['keenmoss']>=1) || (neighsM['cronerice']>=1 && neighsM['whiteMildew']>=1)) muts.push(['wardlichen',0.005]); + if (neighsM['wardlichen']>=1 && neighs['wardlichen']<2) muts.push(['wardlichen',0.05]); + if (neighsM['greenRot']>=1 && neighsM['brownMold']>=1) muts.push(['keenmoss',0.1]); + if (neighsM['keenmoss']>=1 && neighs['keenmoss']<2) muts.push(['keenmoss',0.05]); + if (neighsM['chocoroot']>=1 && neighsM['bakeberry']>=1) muts.push(['queenbeet',0.01]); + if (neighsM['queenbeet']>=8) muts.push(['queenbeetLump',0.001]); + if (neighsM['queenbeet']>=2) muts.push(['duketater',0.001]); + + if (neighsM['crumbspore']>=1 && neighs['crumbspore']<=1) muts.push(['crumbspore',0.07]); + if (neighsM['crumbspore']>=1 && neighsM['thumbcorn']>=1) muts.push(['glovemorel',0.02]); + if (neighsM['crumbspore']>=1 && neighsM['shimmerlily']>=1) muts.push(['cheapcap',0.04]); + if (neighsM['doughshroom']>=1 && neighsM['greenRot']>=1) muts.push(['foolBolete',0.04]); + if (neighsM['crumbspore']>=2) muts.push(['doughshroom',0.005]); + if (neighsM['doughshroom']>=1 && neighs['doughshroom']<=1) muts.push(['doughshroom',0.07]); + if (neighsM['doughshroom']>=2) muts.push(['crumbspore',0.005]); + if (neighsM['crumbspore']>=1 && neighsM['brownMold']>=1) muts.push(['wrinklegill',0.06]); + if (neighsM['whiteMildew']>=1 && neighsM['clover']>=1) muts.push(['greenRot',0.05]); + + if (neighsM['wrinklegill']>=1 && neighsM['elderwort']>=1) muts.push(['shriekbulb',0.001]); + if (neighsM['elderwort']>=5) muts.push(['shriekbulb',0.001]); + if (neighs['duketater']>=3) muts.push(['shriekbulb',0.005]); + if (neighs['doughshroom']>=4) muts.push(['shriekbulb',0.002]); + if (neighsM['queenbeet']>=5) muts.push(['shriekbulb',0.001]); + if (neighs['shriekbulb']>=1 && neighs['shriekbulb']<2) muts.push(['shriekbulb',0.005]); + + if (neighsM['bakerWheat']>=1 && neighsM['whiteChocoroot']>=1) muts.push(['tidygrass',0.002]); + if (neighsM['tidygrass']>=3 && neighsM['elderwort']>=3) muts.push(['everdaisy',0.002]); + if (neighsM['elderwort']>=1 && neighsM['crumbspore']>=1) muts.push(['ichorpuff',0.002]); + + return muts; + } + + M.computeBoostPlot=function() + { + //some plants apply effects to surrounding tiles + //this function computes those effects by creating a grid in which those effects stack + for (var y=0;y<6;y++) + { + for (var x=0;x<6;x++) + { + //age mult, power mult, weed mult + M.plotBoost[y][x]=[1,1,1]; + } + } + + var effectOn=function(X,Y,s,mult) + { + for (var y=Math.max(0,Y-s);y0) + { + var me=M.plantsById[tile[0]-1]; + var name=me.key; + var stage=0; + if (tile[1]>=me.mature) stage=4; + else if (tile[1]>=me.mature*0.666) stage=3; + else if (tile[1]>=me.mature*0.333) stage=2; + else stage=1; + + var soilMult=M.soilsById[M.soil].effMult; + var mult=soilMult; + + if (stage==1) mult*=0.1; + else if (stage==2) mult*=0.25; + else if (stage==3) mult*=0.5; + else mult*=1; + + //age mult, power mult, weed mult + /*if (name=='elderwort') effectOn(x,y,1,[1+0.03*mult,1,1]); + else if (name=='queenbeetLump') effectOn(x,y,1,[1,1-0.2*mult,1]); + else if (name=='nursetulip') effectOn(x,y,1,[1,1+0.2*mult,1]); + else if (name=='shriekbulb') effectOn(x,y,1,[1,1-0.05*mult,1]); + else if (name=='tidygrass') effectOn(x,y,2,[1,1,0]); + else if (name=='everdaisy') effectOn(x,y,1,[1,1,0]); + else if (name=='ichorpuff') effectOn(x,y,1,[1-0.5*mult,1-0.5*mult,1]);*/ + + var ageMult=1; + var powerMult=1; + var weedMult=1; + var range=0; + + if (name=='elderwort') {ageMult=1.03;range=1;} + else if (name=='queenbeetLump') {powerMult=0.8;range=1;} + else if (name=='nursetulip') {powerMult=1.2;range=1;} + else if (name=='shriekbulb') {powerMult=0.95;range=1;} + else if (name=='tidygrass') {weedMult=0;range=2;} + else if (name=='everdaisy') {weedMult=0;range=1;} + else if (name=='ichorpuff') {ageMult=0.5;powerMult=0.5;range=1;} + + //by god i hope these are right + if (ageMult>=1) ageMult=(ageMult-1)*mult+1; else if (mult>=1) ageMult=1/((1/ageMult)*mult); else ageMult=1-(1-ageMult)*mult; + if (powerMult>=1) powerMult=(powerMult-1)*mult+1; else if (mult>=1) powerMult=1/((1/powerMult)*mult); else powerMult=1-(1-powerMult)*mult; + + if (range>0) effectOn(x,y,range,[ageMult,powerMult,weedMult]); + } + } + } + } + + M.computeEffs=function() + { + M.toCompute=false; + var effs={ + cps:1, + click:1, + cursorCps:1, + grandmaCps:1, + goldenCookieGain:1, + goldenCookieFreq:1, + goldenCookieDur:1, + goldenCookieEffDur:1, + wrathCookieGain:1, + wrathCookieFreq:1, + wrathCookieDur:1, + wrathCookieEffDur:1, + reindeerGain:1, + reindeerFreq:1, + reindeerDur:1, + itemDrops:1, + milk:1, + wrinklerSpawn:1, + wrinklerEat:1, + upgradeCost:1, + buildingCost:1, + }; + + if (!M.freeze) + { + var soilMult=M.soilsById[M.soil].effMult; + + for (var y=0;y<6;y++) + { + for (var x=0;x<6;x++) + { + var tile=M.plot[y][x]; + if (tile[0]>0) + { + var me=M.plantsById[tile[0]-1]; + var name=me.key; + var stage=0; + if (tile[1]>=me.mature) stage=4; + else if (tile[1]>=me.mature*0.666) stage=3; + else if (tile[1]>=me.mature*0.333) stage=2; + else stage=1; + + var mult=soilMult; + + if (stage==1) mult*=0.1; + else if (stage==2) mult*=0.25; + else if (stage==3) mult*=0.5; + else mult*=1; + + mult*=M.plotBoost[y][x][1]; + + if (name=='bakerWheat') effs.cps+=0.01*mult; + else if (name=='thumbcorn') effs.click+=0.02*mult; + else if (name=='cronerice') effs.grandmaCps+=0.03*mult; + else if (name=='gildmillet') {effs.goldenCookieGain+=0.01*mult;effs.goldenCookieEffDur+=0.001*mult;} + else if (name=='clover') effs.goldenCookieFreq+=0.01*mult; + else if (name=='goldenClover') effs.goldenCookieFreq+=0.03*mult; + else if (name=='shimmerlily') {effs.goldenCookieGain+=0.01*mult;effs.goldenCookieFreq+=0.01*mult;effs.itemDrops+=0.01*mult;} + else if (name=='elderwort') {effs.wrathCookieGain+=0.01*mult;effs.wrathCookieFreq+=0.01*mult;effs.grandmaCps+=0.01*mult;} + else if (name=='bakeberry') effs.cps+=0.01*mult; + else if (name=='chocoroot') effs.cps+=0.01*mult; + else if (name=='whiteChocoroot') effs.goldenCookieGain+=0.01*mult; + + else if (name=='whiteMildew') effs.cps+=0.01*mult; + else if (name=='brownMold') effs.cps*=1-0.01*mult; + + else if (name=='meddleweed') {} + + else if (name=='whiskerbloom') effs.milk+=0.002*mult; + else if (name=='chimerose') {effs.reindeerGain+=0.01*mult;effs.reindeerFreq+=0.01*mult;} + + else if (name=='nursetulip') {effs.cps*=1-0.02*mult;} + else if (name=='drowsyfern') {effs.cps+=0.03*mult;effs.click*=1-0.05*mult;effs.goldenCookieFreq*=1-0.1*mult;} + else if (name=='wardlichen') {effs.wrinklerSpawn*=1-0.15*mult;effs.wrathCookieFreq*=1-0.02*mult;} + else if (name=='keenmoss') {effs.itemDrops+=0.03*mult;} + else if (name=='queenbeet') {effs.goldenCookieEffDur+=0.003*mult;effs.cps*=1-0.02*mult;} + else if (name=='queenbeetLump') {effs.cps*=1-0.1*mult;} + else if (name=='glovemorel') {effs.click+=0.04*mult;effs.cursorCps+=0.01*mult;effs.cps*=1-0.01*mult;} + else if (name=='cheapcap') {effs.upgradeCost*=1-0.002*mult;effs.buildingCost*=1-0.002*mult;} + else if (name=='foolBolete') {effs.goldenCookieFreq+=0.02*mult;effs.goldenCookieGain*=1-0.05*mult;effs.goldenCookieDur*=1-0.02*mult;effs.goldenCookieEffDur*=1-0.02*mult;} + else if (name=='wrinklegill') {effs.wrinklerSpawn+=0.02*mult;effs.wrinklerEat+=0.01*mult;} + else if (name=='greenRot') {effs.goldenCookieDur+=0.005*mult;effs.goldenCookieFreq+=0.01*mult;effs.itemDrops+=0.01*mult;} + else if (name=='shriekbulb') {effs.cps*=1-0.02*mult;} + } + } + } + } + M.effs=effs; + Game.recalculateGains=1; + } + + + M.soils={ + 'dirt':{ + name:'Dirt', + icon:0, + tick:5, + effMult:1, + weedMult:1, + req:0, + effsStr:'
• tick every 5 minutes
', + q:'Simple, regular old dirt that you\'d find in nature.', + }, + 'fertilizer':{ + name:'Fertilizer', + icon:1, + tick:3, + effMult:0.75, + weedMult:1.2, + req:50, + effsStr:'
• tick every 3 minutes
• passive plant effects -25%
• weeds appear 20% more
', + q:'Soil with a healthy helping of fresh manure. Plants grow faster but are less efficient.', + }, + 'clay':{ + name:'Clay', + icon:2, + tick:15, + effMult:1.25, + weedMult:1, + req:100, + effsStr:'
• tick every 15 minutes
• passive plant effects +25%
', + q:'Rich soil with very good water retention. Plants grow slower but are more efficient.', + }, + 'pebbles':{ + name:'Pebbles', + icon:3, + tick:5, + effMult:0.25, + weedMult:0.1, + req:200, + effsStr:'
• tick every 5 minutes
• passive plant effects -75%
35% chance of collecting seeds automatically when plants expire
• weeds appear 10 times less
', + q:'Dry soil made of small rocks tightly packed together. Not very conducive to plant health, but whatever falls off your crops will be easy to retrieve.
Useful if you\'re one of those farmers who just want to find new seeds without having to tend their garden too much.', + }, + 'woodchips':{ + name:'Wood chips', + icon:4, + tick:5, + effMult:0.25, + weedMult:0.1, + req:300, + effsStr:'
• tick every 5 minutes
• passive plant effects -75%
• plants spread and mutate 3 times more
• weeds appear 10 times less
', + q:'Soil made of bits and pieces of bark and sawdust. Helpful for young sprouts to develop, not so much for mature plants.', + }, + }; + M.soilsById=[];var n=0;for (var i in M.soils){M.soils[i].id=n;M.soils[i].key=i;M.soilsById[n]=M.soils[i];n++;} + + + M.tools={ + 'info':{ + name:'Garden information', + icon:3, + desc:'-', + descFunc:function() + { + var str=''; + if (M.freeze) str='Your garden is frozen, providing no effects.'; + else + { + var effs={ + cps:{n:'CpS'}, + click:{n:'cookies/click'}, + cursorCps:{n:'cursor CpS'}, + grandmaCps:{n:'grandma CpS'}, + goldenCookieGain:{n:'golden cookie gains'}, + goldenCookieFreq:{n:'golden cookie frequency'}, + goldenCookieDur:{n:'golden cookie duration'}, + goldenCookieEffDur:{n:'golden cookie effect duration'}, + wrathCookieGain:{n:'wrath cookie gains'}, + wrathCookieFreq:{n:'wrath cookie frequency'}, + wrathCookieDur:{n:'wrath cookie duration'}, + wrathCookieEffDur:{n:'wrath cookie effect duration'}, + reindeerGain:{n:'reindeer gains'}, + reindeerFreq:{n:'reindeer cookie frequency'}, + reindeerDur:{n:'reindeer cookie duration'}, + itemDrops:{n:'random drops'}, + milk:{n:'milk effects'}, + wrinklerSpawn:{n:'wrinkler spawn rate'}, + wrinklerEat:{n:'wrinkler appetite'}, + upgradeCost:{n:'upgrade costs',rev:true}, + buildingCost:{n:'building costs',rev:true}, + }; + + var effStr=''; + for (var i in M.effs) + { + if (M.effs[i]!=1 && effs[i]) + { + var amount=(M.effs[i]-1)*100; + effStr+='
• '+effs[i].n+' : '+(amount>0?'+':'-')+Beautify(Math.abs(M.effs[i]-1)*100,2)+'%
'; + } + } + if (effStr=='') effStr='
None.
'; + str+='
Combined effects of all your plants :
'+effStr; + } + str+='
'; + str+='• You can cross-breed plants by planting them close to each other; new plants will grow in the empty tiles next to them.
• Unlock new seeds by harvesting mature plants.
• When you ascend, your garden plants are reset, but you keep all the seeds you\'ve unlocked.
• Your garden has no effect and does not grow while the game is closed.
'; + return str; + }, + func:function(){}, + }, + 'harvestAll':{ + name:'Harvest all', + icon:0, + descFunc:function(){return 'Instantly harvest all plants in your garden.
'+((Game.keys[16] && Game.keys[17])?'You are holding shift+ctrl. Only mature, mortal plants will be harvested.':'Shift+ctrl+click to harvest only mature, mortal plants.');}, + func:function(){ + PlaySound('snd/toneTick.mp3'); + /*if (M.freeze){return false;}*/ + if (Game.keys[16] && Game.keys[17]) M.harvestAll(0,1,1);//ctrl & shift, harvest only mature non-immortal plants + else M.harvestAll(); + }, + }, + 'freeze':{ + name:'Freeze', + icon:1, + descFunc:function() + { + return 'Cryogenically preserve your garden.
Plants no longer grow, spread or die; they provide no benefits.
Soil cannot be changed.
Using this will effectively pause your garden.
';//'+((M.nextFreeze>Date.now())?'You will be able to freeze your garden again in '+Game.sayTime((M.nextFreeze-Date.now())/1000*30+30,-1)+'.':'After unfreezing your garden, you must wait 10 minutes to freeze it again.')+' + }, + func:function(){ + //if (!M.freeze && M.nextFreeze>Date.now()) return false; + PlaySound('snd/toneTick.mp3'); + M.freeze=(M.freeze?0:1); + if (M.freeze) + { + M.computeEffs(); + PlaySound('snd/freezeGarden.mp3'); + this.classList.add('on'); + l('gardenContent').classList.add('gardenFrozen'); + + + for (var y=0;y<6;y++) + { + for (var x=0;x<6;x++) + { + var tile=M.plot[y][x]; + if (tile[0]>0) + { + var me=M.plantsById[tile[0]-1]; + var age=tile[1]; + if (me.key=='cheapcap' && Math.random()<0.15) + { + M.plot[y][x]=[0,0]; + if (me.onKill) me.onKill(x,y,age); + M.toRebuild=true; + } + } + } + } + } + else + { + //M.nextFreeze=Date.now()+(Game.Has('Turbo-charged soil')?1:(1000*60*10)); + M.computeEffs(); + this.classList.remove('on'); + l('gardenContent').classList.remove('gardenFrozen'); + } + }, + isOn:function(){if (M.freeze){l('gardenContent').classList.add('gardenFrozen');}else{l('gardenContent').classList.remove('gardenFrozen');}return M.freeze;}, + }, + 'convert':{ + name:'Sacrifice garden', + icon:2, + desc:'A swarm of sugar hornets comes down on your garden, destroying every plant as well as every seed you\'ve unlocked - leaving only a Baker\'s wheat seed.
In exchange, they will grant you 10 sugar lumps.
This action is only available with a complete seed log.', + func:function(){PlaySound('snd/toneTick.mp3');M.askConvert();}, + isDisplayed:function(){if (M.plantsUnlockedN>=M.plantsN) return true; else return false;}, + }, + }; + M.toolsById=[];var n=0;for (var i in M.tools){M.tools[i].id=n;M.tools[i].key=i;M.toolsById[n]=M.tools[i];n++;} + + + M.plot=[]; + for (var y=0;y<6;y++) + { + M.plot[y]=[]; + for (var x=0;x<6;x++) + { + M.plot[y][x]=[0,0]; + } + } + M.plotBoost=[]; + for (var y=0;y<6;y++) + { + M.plotBoost[y]=[]; + for (var x=0;x<6;x++) + { + //age mult, power mult, weed mult + M.plotBoost[y][x]=[1,1,1]; + } + } + + M.tileSize=40; + + M.seedSelected=-1; + + M.soil=0; + M.nextSoil=0;//timestamp for when soil will be ready to change again + + M.stepT=1;//in seconds + M.nextStep=0;//timestamp for next step tick + + M.harvests=0; + M.harvestsTotal=0; + + M.loopsMult=1; + + M.toRebuild=false; + M.toCompute=false; + + M.freeze=0; + M.nextFreeze=0;//timestamp for when we can freeze again; unused, but still stored + + M.getCost=function(me) + { + if (Game.Has('Turbo-charged soil')) return 0; + return Math.max(me.costM,Game.cookiesPs*me.cost*60)*(Game.HasAchiev('Seedless to nay')?0.95:1); + } + + M.getPlantDesc=function(me) + { + var children=''; + if (me.children.length>0) + { + children+='
'; + for (var i in me.children) + { + if (!M.plants[me.children[i]]) console.log('No plant named '+me.children[i]); + else + { + var it=M.plants[me.children[i]]; + if (it.unlocked) children+='
'; + else children+='
'; + } + } + children+='
'; + } + + return '
'+ + (!me.immortal?('
Average lifespan : '+Game.sayTime(((100/(me.ageTick+me.ageTickR/2))*M.stepT)*30,-1)+' ('+Beautify(Math.ceil((100/((me.ageTick+me.ageTickR/2)))*(1)))+' ticks)
'):'')+ + '
Average maturation : '+Game.sayTime(((100/((me.ageTick+me.ageTickR/2)))*(me.mature/100)*M.stepT)*30,-1)+' ('+Beautify(Math.ceil((100/((me.ageTick+me.ageTickR/2)))*(me.mature/100)))+' ticks)
'+ + (me.weed?'
Is a weed
':'')+ + (me.fungus?'
Is a fungus
':'')+ + (me.detailsStr?('
Details : '+me.detailsStr+'
'):'')+ + (children!=''?('
Possible mutations : '+children+'
'):'')+ + '
'+ + '
Effects :
'+ + '
'+me.effsStr+'
'+ + (me.q?(''+me.q+''):'')+ + '
'; + } + M.canPlant=function(me) + { + if (Game.cookies>=M.getCost(me)) return true; else return false; + } + + M.cursor=1; + M.hideCursor=function() + { + M.cursor=0; + } + M.showCursor=function() + { + M.cursor=1; + } + + M.soilTooltip=function(id) + { + return function(){ + var me=M.soilsById[id]; + var str='
'+ + (M.parent.amountSoil unlocked at '+me.req+' farms.
' + ):('
'+ + '
'+me.name+'
'+((M.soil==me.id)?'Your field is currently using this soil.':(M.nextSoil>Date.now())?'You will be able to change your soil again in '+Game.sayTime((M.nextSoil-Date.now())/1000*30+30,-1)+'.':'Click to use this type of soil for your whole field.')+'
'+ + '
'+ + '
'+ + '
Effects :
'+ + '
'+me.effsStr+'
'+ + (me.q?(''+me.q+''):'')+ + '
'))+ + ''; + return str; + }; + } + M.seedTooltip=function(id) + { + return function(){ + var me=M.plantsById[id]; + var str='
'+ + '
'+ + '
'+ + '
'+ + (me.plantable?('
Planting cost :
'+Beautify(Math.round(shortenNumber(M.getCost(me))))+'
'+Game.sayTime(me.cost*60*30,-1)+' of CpS,
minimum '+Beautify(me.costM)+' cookies
'):'')+ + '
'+me.name+' seed
'+(me.plantable?'Click to select this seed for planting.':'This seed cannot be planted.')+'
Shift+ctrl+click to harvest all mature plants of this type.
'+ + '
'+ + M.getPlantDesc(me)+ + '
'; + return str; + }; + } + M.toolTooltip=function(id) + { + return function(){ + var me=M.toolsById[id]; + var icon=[me.icon,35]; + var str='
'+ + '
'+ + '
'+me.name+'
'+ + '
'+ + '
'+ + (me.descFunc?me.descFunc():me.desc)+ + '
'+ + '
'; + return str; + }; + } + M.tileTooltip=function(x,y) + { + return function(){ + if (Game.keys[16]) return ''; + var tile=M.plot[y][x]; + if (tile[0]==0) + { + var me=(M.seedSelected>=0)?M.plantsById[M.seedSelected]:0; + var str='
'+ + '
Empty tile
'+'
'+ + 'This tile of soil is empty.
Pick a seed and plant something!'+ + (me?'
Click to plant '+me.name+' for '+Beautify(Math.round(M.getCost(me)))+'.
(Shift-click to plant multiple.)
(Holding the shift key pressed will also hide tooltips.)':'')+ + (M.plotBoost[y][x]!=[1,1,1]?(''+ + (M.plotBoost[y][x][0]!=1?'
Aging multiplier : '+Beautify(M.plotBoost[y][x][0]*100)+'%':'')+ + (M.plotBoost[y][x][1]!=1?'
Effect multiplier : '+Beautify(M.plotBoost[y][x][1]*100)+'%':'')+ + (M.plotBoost[y][x][2]!=1?'
Weeds/fungus repellent : '+Beautify(100-M.plotBoost[y][x][2]*100)+'%':'')+ + '
' + ):'')+ + '
'+ + '
'; + return str; + } + else + { + var me=M.plantsById[tile[0]-1]; + var stage=0; + if (tile[1]>=me.mature) stage=4; + else if (tile[1]>=me.mature*0.666) stage=3; + else if (tile[1]>=me.mature*0.333) stage=2; + else stage=1; + var icon=[stage,me.icon]; + var str='
'+ + '
'+ + '
'+me.name+'
This plant is growing here.
'+ + '
'+ + '
'+ + '
'+ + '
'+ + '
'+ + '
'+ + '
'+ + '
'+ + '

'+ + 'Stage : '+['bud','sprout','bloom','mature'][stage-1]+'
'+ + ''+(stage==1?'Plant effects : 10%':stage==2?'Plant effects : 25%':stage==3?'Plant effects : 50%':'Plant effects : 100%; may reproduce, will drop seed when harvested')+''+ + '
'+( + stage<4?( + 'Mature in about '+Game.sayTime(((100/(M.plotBoost[y][x][0]*(me.ageTick+me.ageTickR/2)))*((me.mature-tile[1])/100)*M.stepT)*30,-1)+' ('+Beautify(Math.ceil((100/(M.plotBoost[y][x][0]*(me.ageTick+me.ageTickR/2)))*((me.mature-tile[1])/100)))+' tick'+(Math.ceil((100/(M.plotBoost[y][x][0]*(me.ageTick+me.ageTickR/2)))*((me.mature-tile[1])/100))==1?'':'s')+')' + ):( + !me.immortal?( + 'Decays in about '+Game.sayTime(((100/(M.plotBoost[y][x][0]*(me.ageTick+me.ageTickR/2)))*((100-tile[1])/100)*M.stepT)*30,-1)+' ('+Beautify(Math.ceil((100/(M.plotBoost[y][x][0]*(me.ageTick+me.ageTickR/2)))*((100-tile[1])/100)))+' tick'+(Math.ceil((100/(M.plotBoost[y][x][0]*(me.ageTick+me.ageTickR/2)))*((100-tile[1])/100))==1?'':'s')+')' + ): + 'Does not decay' + ) + )+''+ + //'
'+M.plotBoost[y][x]+'
'+ + (M.plotBoost[y][x]!=[1,1,1]?(''+ + (M.plotBoost[y][x][0]!=1?'
Aging multiplier : '+Beautify(M.plotBoost[y][x][0]*100)+'%':'')+ + (M.plotBoost[y][x][1]!=1?'
Effect multiplier : '+Beautify(M.plotBoost[y][x][1]*100)+'%':'')+ + (M.plotBoost[y][x][2]!=1?'
Weeds/fungus repellent : '+Beautify(100-M.plotBoost[y][x][2]*100)+'%':'')+ + '
' + ):'')+ + '
'+ + '
'+ + //'
Click to harvest'+(M.seedSelected>=0?', planting '+M.plantsById[M.seedSelected].name+'
for '+Beautify(Math.round(M.getCost(M.plantsById[M.seedSelected])))+' in its place':'')+'.
'+ + '
Click to '+(stage==4?'harvest':'unearth')+'.
'+ + '
'+ + M.getPlantDesc(me)+ + '
'; + return str; + } + }; + } + + M.refillTooltip=function(){ + return '
Click to refill your soil timer and trigger 1 plant growth tick with x3 spread and mutation rate for 1 sugar lump.'+ + (Game.canRefillLump()?'
(can be done once every '+Game.sayTime(Game.getLumpRefillMax(),-1)+')':('
(usable again in '+Game.sayTime(Game.getLumpRefillRemaining()+Game.fps,-1)+')'))+ + '
'; + }; + + M.buildPanel=function() + { + if (!l('gardenSeeds')) return false; + var str=''; + for (var i in M.plants) + { + var me=M.plants[i]; + var icon=[0,me.icon]; + str+='
'; + str+='
'; + str+='
'; + } + l('gardenSeeds').innerHTML=str; + + for (var i in M.plants) + { + var me=M.plants[i]; + me.l=l('gardenSeed-'+me.id); + AddEvent(me.l,'click',function(me){return function() + { + if (/* !M.freeze && */Game.keys[16] && Game.keys[17])//shift & ctrl + { + //harvest all mature of type + M.harvestAll(me,1); + return false; + } + if (!me.plantable && !Game.sesame) return false; + if (M.seedSelected==me.id){M.seedSelected=-1;} + else {M.seedSelected=me.id;PlaySound('snd/toneTick.mp3');} + for (var i in M.plants) + { + var it=M.plants[i]; + if (it.id==M.seedSelected){it.l.classList.add('on');} + else {it.l.classList.remove('on');} + } + }}(me)); + AddEvent(me.l,'mouseover',M.hideCursor); + AddEvent(me.l,'mouseout',M.showCursor); + if (me.unlocked) me.l.classList.remove('locked'); + } + + var str=''; + for (var i in M.tools) + { + var me=M.tools[i]; + var icon=[me.icon,35]; + str+='
'; + str+='
'; + str+='
'; + } + l('gardenTools').innerHTML=str; + + for (var i in M.tools) + { + var me=M.tools[i]; + AddEvent(l('gardenTool-'+me.id),'click',me.func); + AddEvent(l('gardenTool-'+me.id),'mouseover',M.hideCursor); + AddEvent(l('gardenTool-'+me.id),'mouseout',M.showCursor); + } + + var str=''; + for (var i in M.soils) + { + var me=M.soils[i]; + var icon=[me.icon,34]; + str+='
'; + str+='
'; + str+='
'; + } + l('gardenSoils').innerHTML=str; + + for (var i in M.soils) + { + var me=M.soils[i]; + AddEvent(l('gardenSoil-'+me.id),'click',function(me){return function(){ + if (M.freeze || M.soil==me.id || M.nextSoil>Date.now() || M.parent.amount
'; + else l('gardenPlotSize').innerHTML=''; + l('gardenSeedsUnlocked').innerHTML='Seeds ('+M.plantsUnlockedN+'/'+M.plantsN+')'; + for (var i in M.soils) + { + var me=M.soils[i]; + if (M.parent.amount'+Beautify(val)+' cookie'+(val==1?'':'s')+' out of thin air.',[21,11],6); + Game.Popup('
+'+Beautify(val)+' cookie'+(val==1?'':'s')+'!
',Game.mouseX,Game.mouseY); + }, + fail:function() + { + var buff=Game.gainBuff('clot',60*15,0.5); + var val=Math.min(Game.cookies*0.15,Game.cookiesPs*60*15)+13; + val=Math.min(Game.cookies,val); + Game.Spend(val); + Game.Notify(buff.name,buff.desc,buff.icon,6); + Game.Popup('
Backfire!
Summoning failed! Lost '+Beautify(val)+' cookie'+(val==1?'':'s')+'!
',Game.mouseX,Game.mouseY); + }, + }, + 'hand of fate':{ + name:'Force the Hand of Fate', + desc:'Summon a random golden cookie. Each existing golden cookie makes this spell +15% more likely to backfire.', + failDesc:'Summon an unlucky wrath cookie.', + icon:[22,11], + costMin:10, + costPercent:0.6, + failFunc:function(fail) + { + return fail+0.15*Game.shimmerTypes['golden'].n; + }, + win:function() + { + var newShimmer=new Game.shimmer('golden',{noWrath:true}); + var choices=[]; + choices.push('frenzy','multiply cookies'); + if (!Game.hasBuff('Dragonflight')) choices.push('click frenzy'); + if (Math.random()<0.1) choices.push('cookie storm','cookie storm','blab'); + if (Game.BuildingsOwned>=10 && Math.random()<0.25) choices.push('building special'); + //if (Math.random()<0.2) choices.push('clot','cursed finger','ruin cookies'); + if (Math.random()<0.15) choices=['cookie storm drop']; + if (Math.random()<0.0001) choices.push('free sugar lump'); + newShimmer.force=choose(choices); + if (newShimmer.force=='cookie storm drop') + { + newShimmer.sizeMult=Math.random()*0.75+0.25; + } + Game.Popup('
Promising fate!
',Game.mouseX,Game.mouseY); + }, + fail:function() + { + var newShimmer=new Game.shimmer('golden',{wrath:true}); + var choices=[]; + choices.push('clot','ruin cookies'); + if (Math.random()<0.1) choices.push('cursed finger','blood frenzy'); + if (Math.random()<0.003) choices.push('free sugar lump'); + if (Math.random()<0.1) choices=['blab']; + newShimmer.force=choose(choices); + Game.Popup('
Backfire!
Sinister fate!
',Game.mouseX,Game.mouseY); + }, + }, + 'stretch time':{ + name:'Stretch Time', + desc:'All active buffs gain 10% more time (up to 5 more minutes).', + failDesc:'All active buffs are shortened by 20% (up to 10 minutes shorter).', + icon:[23,11], + costMin:8, + costPercent:0.2, + win:function() + { + var changed=0; + for (var i in Game.buffs) + { + var me=Game.buffs[i]; + var gain=Math.min(Game.fps*60*5,me.maxTime*0.1); + me.maxTime+=gain; + me.time+=gain; + changed++; + } + if (changed==0){Game.Popup('
No buffs to alter!
',Game.mouseX,Game.mouseY);return -1;} + Game.Popup('
Zap! Buffs lengthened.
',Game.mouseX,Game.mouseY); + }, + fail:function() + { + var changed=0; + for (var i in Game.buffs) + { + var me=Game.buffs[i]; + var loss=Math.min(Game.fps*60*10,me.time*0.2); + me.time-=loss; + me.time=Math.max(me.time,0); + changed++; + } + if (changed==0){Game.Popup('
No buffs to alter!
',Game.mouseX,Game.mouseY);return -1;} + Game.Popup('
Backfire!
Fizz! Buffs shortened.
',Game.mouseX,Game.mouseY); + }, + }, + 'spontaneous edifice':{ + name:'Spontaneous Edifice', + desc:'The spell picks a random building you could afford if you had twice your current cookies, and gives it to you for free. The building selected must be under 400, and cannot be your most-built one (unless it is your only one).', + failDesc:'Lose a random building.', + icon:[24,11], + costMin:20, + costPercent:0.75, + win:function() + { + var buildings=[]; + var max=0; + var n=0; + for (var i in Game.Objects) + { + if (Game.Objects[i].amount>max) max=Game.Objects[i].amount; + if (Game.Objects[i].amount>0) n++; + } + for (var i in Game.Objects) + {if ((Game.Objects[i].amountNo buildings to improve!',Game.mouseX,Game.mouseY);return -1;} + var building=choose(buildings); + building.buyFree(1); + Game.Popup('
A new '+building.single+'
bursts out of the ground.
',Game.mouseX,Game.mouseY); + }, + fail:function() + { + if (Game.BuildingsOwned==0){Game.Popup('
Backfired, but no buildings to destroy!
',Game.mouseX,Game.mouseY);return -1;} + var buildings=[]; + for (var i in Game.Objects) + {if (Game.Objects[i].amount>0) buildings.push(Game.Objects[i]);} + var building=choose(buildings); + building.sacrifice(1); + Game.Popup('
Backfire!
One of your '+building.plural+'
disappears in a puff of smoke.
',Game.mouseX,Game.mouseY); + }, + }, + 'haggler\'s charm':{ + name:'Haggler\'s Charm', + desc:'Upgrades are 2% cheaper for 1 minute.', + failDesc:'Upgrades are 2% more expensive for an hour.What\'s that spell? Loadsamoney!', + icon:[25,11], + costMin:10, + costPercent:0.1, + win:function() + { + Game.killBuff('Haggler\'s misery'); + var buff=Game.gainBuff('haggler luck',60,2); + Game.Popup('
Upgrades are cheaper!
',Game.mouseX,Game.mouseY); + }, + fail:function() + { + Game.killBuff('Haggler\'s luck'); + var buff=Game.gainBuff('haggler misery',60*60,2); + Game.Popup('
Backfire!
Upgrades are pricier!
',Game.mouseX,Game.mouseY); + }, + }, + 'summon crafty pixies':{ + name:'Summon Crafty Pixies', + desc:'Buildings are 2% cheaper for 1 minute.', + failDesc:'Buildings are 2% more expensive for an hour.', + icon:[26,11], + costMin:10, + costPercent:0.2, + win:function() + { + Game.killBuff('Nasty goblins'); + var buff=Game.gainBuff('pixie luck',60,2); + Game.Popup('
Crafty pixies!
Buildings are cheaper!
',Game.mouseX,Game.mouseY); + }, + fail:function() + { + Game.killBuff('Crafty pixies'); + var buff=Game.gainBuff('pixie misery',60*60,2); + Game.Popup('
Backfire!
Nasty goblins!
Buildings are pricier!
',Game.mouseX,Game.mouseY); + }, + }, + 'gambler\'s fever dream':{ + name:'Gambler\'s Fever Dream', + desc:'Cast a random spell at half the magic cost, with twice the chance of backfiring.', + icon:[27,11], + costMin:3, + costPercent:0.05, + win:function() + { + var spells=[]; + var selfCost=M.getSpellCost(M.spells['gambler\'s fever dream']); + for (var i in M.spells) + {if (i!='gambler\'s fever dream' && (M.magic-selfCost)>=M.getSpellCost(M.spells[i])*0.5) spells.push(M.spells[i]);} + if (spells.length==0){Game.Popup('
No eligible spells!
',Game.mouseX,Game.mouseY);return -1;} + var spell=choose(spells); + var cost=M.getSpellCost(spell)*0.5; + setTimeout(function(spell,cost,seed){return function(){ + if (Game.seed!=seed) return false; + var out=M.castSpell(spell,{cost:cost,failChanceMax:0.5,passthrough:true}); + if (!out) + { + M.magic+=selfCost; + setTimeout(function(){ + Game.Popup('
That\'s too bad!
Magic refunded.
',Game.mouseX,Game.mouseY); + },1500); + } + }}(spell,cost,Game.seed),1000); + Game.Popup('
Casting '+spell.name+'
for '+Beautify(cost)+' magic...
',Game.mouseX,Game.mouseY); + }, + }, + 'resurrect abomination':{ + name:'Resurrect Abomination', + desc:'Instantly summon a wrinkler if conditions are fulfilled.', + failDesc:'Pop one of your wrinklers.', + icon:[28,11], + costMin:20, + costPercent:0.1, + win:function() + { + var out=Game.SpawnWrinkler(); + if (!out){Game.Popup('
Unable to spawn a wrinkler!
',Game.mouseX,Game.mouseY);return -1;} + Game.Popup('
Rise, my precious!
',Game.mouseX,Game.mouseY); + }, + fail:function() + { + var out=Game.PopRandomWrinkler(); + if (!out){Game.Popup('
Backfire!
But no wrinkler was harmed.
',Game.mouseX,Game.mouseY);return -1;} + Game.Popup('
Backfire!
So long, ugly...
',Game.mouseX,Game.mouseY); + }, + }, + 'diminish ineptitude':{ + name:'Diminish Ineptitude', + desc:'Spells backfire 10 times less for the next 5 minutes.', + failDesc:'Spells backfire 5 times more for the next 10 minutes.', + icon:[29,11], + costMin:5, + costPercent:0.2, + win:function() + { + Game.killBuff('Magic inept'); + var buff=Game.gainBuff('magic adept',5*60,10); + Game.Popup('
Ineptitude diminished!
',Game.mouseX,Game.mouseY); + }, + fail:function() + { + Game.killBuff('Magic adept'); + var buff=Game.gainBuff('magic inept',10*60,5); + Game.Popup('
Backfire!
Ineptitude magnified!
',Game.mouseX,Game.mouseY); + }, + }, + }; + M.spellsById=[];var n=0; + for (var i in M.spells){M.spells[i].id=n;M.spellsById[n]=M.spells[i];n++;} + + + M.computeMagicM=function() + { + var towers=Math.max(M.parent.amount,1); + var lvl=Math.max(M.parent.level,1); + M.magicM=Math.floor(4+Math.pow(towers,0.6)+Math.log((towers+(lvl-1)*10)/15+1)*15); + //old formula : + /* + M.magicM=8+Math.min(M.parent.amount,M.parent.level*5)+Math.ceil(M.parent.amount/10); + if (M.magicM>200) + { + //diminishing returns starting at 200, being 5% as fast by 400 + var x=M.magicM; + var top=x-200; + top/=200; + var top2=top; + top*=(1-top/2); + if (top2>=1) top=0.5; + top=top*0.95+top2*0.05; + top*=200; + x=top+200; + M.magicM=x; + } + */ + M.magic=Math.min(M.magicM,M.magic); + } + + M.getFailChance=function(spell) + { + var failChance=0.15; + if (Game.hasBuff('Magic adept')) failChance*=0.1; + if (Game.hasBuff('Magic inept')) failChance*=5; + if (spell.failFunc) failChance=spell.failFunc(failChance); + return failChance; + } + + M.castSpell=function(spell,obj) + { + var obj=obj||{}; + var out=0; + var cost=0; + var fail=false; + if (typeof obj.cost!=='undefined') cost=obj.cost; else cost=M.getSpellCost(spell); + if (M.magic=9) Game.Win('Bibbidi-bobbidi-boo'); + if (M.spellsCastTotal>=99) Game.Win('I\'m the wiz'); + if (M.spellsCastTotal>=999) Game.Win('A wizard is you'); + } + + M.magic-=cost; + M.magic=Math.max(0,M.magic); + + var rect=l('grimoireSpell'+spell.id).getBoundingClientRect(); + Game.SparkleAt((rect.left+rect.right)/2,(rect.top+rect.bottom)/2-24); + + if (fail) PlaySound('snd/spellFail.mp3',0.75); else PlaySound('snd/spell.mp3',0.75); + return true; + } + PlaySound('snd/spellFail.mp3',0.75); + return false; + } + + M.getSpellCost=function(spell) + { + var out=spell.costMin; + if (spell.costPercent) out+=M.magicM*spell.costPercent; + return Math.floor(out); + } + M.getSpellCostBreakdown=function(spell) + { + var str=''; + if (spell.costPercent) str+=Beautify(spell.costMin)+' magic +'+Beautify(Math.ceil(spell.costPercent*100))+'% of max magic'; + else str+=Beautify(spell.costMin)+' magic'; + return str; + } + + M.spellTooltip=function(id) + { + return function(){ + var me=M.spellsById[id]; + me.icon=me.icon||[28,12]; + var cost=Beautify(M.getSpellCost(me)); + var costBreakdown=M.getSpellCostBreakdown(me); + if (cost!=costBreakdown) costBreakdown=' ('+costBreakdown+')'; else costBreakdown=''; + var backfire=M.getFailChance(me); + var str='
'+ + '
'+ + '
'+me.name+'
'+ + '
Magic cost : '+cost+''+costBreakdown+'
'+ + (me.fail?('
Chance to backfire : '+Math.ceil(100*backfire)+'%
'):'')+ + '
Effect : '+(me.descFunc?me.descFunc():me.desc)+''+(me.failDesc?('
Backfire : '+me.failDesc+''):'')+'
'; + return str; + }; + } + + var str=''; + str+=''; + str+='
'; + str+='
'; + str+='
';//did you know adding class="shadowFilter" to this cancels the "z-index:1000000001" that displays the selected spell above the tooltip? stacking orders are silly https://philipwalton.com/articles/what-no-one-told-you-about-z-index/ + for (var i in M.spells) + { + var me=M.spells[i]; + var icon=me.icon||[28,12]; + str+='
-
'; + } + str+='
'; + var icon=[29,14]; + str+='
This is your magic meter. Each spell costs magic to use.
Your maximum amount of magic varies depending on your amount of Wizard towers, and their level.
Magic refills over time. The lower your magic meter, the slower it refills.
')+' style="position:absolute;left:0px;top:0px;right:0px;bottom:0px;">
'; + str+='
'; + str+=''; + div.innerHTML=str; + M.magicBarL=l('grimoireBar'); + M.magicBarFullL=l('grimoireBarFull'); + M.magicBarTextL=l('grimoireBarText'); + M.lumpRefill=l('grimoireLumpRefill'); + M.infoL=l('grimoireInfo'); + for (var i in M.spells) + { + var me=M.spells[i]; + AddEvent(l('grimoireSpell'+me.id),'click',function(spell){return function(){PlaySound('snd/tick.mp3');M.castSpell(spell);}}(me)); + } + + M.refillTooltip=function(){ + return '
Click to refill 100 units of your magic meter for 1 sugar lump.'+ + (Game.canRefillLump()?'
(can be done once every '+Game.sayTime(Game.getLumpRefillMax(),-1)+')':('
(usable again in '+Game.sayTime(Game.getLumpRefillRemaining()+Game.fps,-1)+')'))+ + '
'; + }; + AddEvent(M.lumpRefill,'click',function(){ + if (M.magicOld Mills
is a trusted staple of the grain industry. Finding their roots in humble pioneer farms centuries ago and honing their know-how ever since, the Old Mills organic crops have reached a standard of quality that even yours struggle to equal.', + }, + 'Mine':{ + name:'Chocolate', + symbol:'CHC', + company:'Cocoa Excavations', + desc:'Cocoa Excavations is an international chocolate mining venture whose extraction sites always seem, somehow, to pop up in war-torn countries. Their high-grade chocolate is renowned the world over and has even been marketed, to some success, as suitable gems for engagement rings.', + }, + 'Factory':{ + name:'Butter', + symbol:'BTR', + company:'Bovine Industries', + desc:'Bovine Industries is a formerly-agricultural conglomerate that now deals in mechanized dairy mass production. Whistleblowers have drawn attention to the way the milk cows employed by this company are treated, describing it as "not quite cruel or anything, but definitely unusual".', + }, + 'Bank':{ + name:'Sugar', + symbol:'SUG', + company:'Candy Trust', + desc:'The Candy Trust is a corporate banking group backed by, and specialized in, the trade of high-grade sugar. The origin of said sugar is legally protected by an armada of lawyers, though some suspect they secretly scrape it off of the bank bills coming in before processing it.', + }, + 'Temple':{ + name:'Nuts', + symbol:'NUT', + company:'Hazel Monastery', + desc:'Hidden between hills and fog somewhere, the secretive Hazel Monastery has, for centuries, maintained nut crops of the highest quality. The monastery nuts are carefully tended to, harvested and shelled by its monks, who are all required to take a vow of nut allergy as a lifelong test of piety.', + }, + 'Wizard tower':{ + name:'Salt', + symbol:'SLT', + company:'Wacky Reagants', + desc:'Salt is a versatile substance, with properties both mundane and mystical. This is why the bearded crackpots at Wacky Reagants have perfected the art of turning magic powder into salt, which is then sold to anyone promising to put it to good use - whether it be warding off banshees and ghouls or seasoning a Sunday roast.', + }, + 'Shipment':{ + name:'Vanilla', + symbol:'VNL', + company:'Cosmic Exports', + desc:'After the news broke of vanilla not being native to Earth, Cosmic Exports was the first company to discover its true origin planet - and has struck an exclusive deal with its tentacled inhabitants to ship its valuable, unadulterated beans all over the local quadrant.', + }, + 'Alchemy lab':{ + name:'Eggs', + symbol:'EGG', + company:'Organic Gnostics', + desc:'At Organic Gnostics, an egg is seen as a promise. A promise of life and nourishment, of infinite potential, of calcium and protein. An egg can become many things... especially when you\'re properly funded and don\'t believe there\'s room in science for rules or ethics.', + }, + 'Portal':{ + name:'Cinnamon', + symbol:'CNM', + company:'Dimensional Exchange', + desc:'The Dimensional Exchange employs a vast team of ragtag daredevils to dive into dangerous underworlds in search of strange native spices. Chief among those is cinnamon, a powder so delicious its true nature can only be unspeakably abominable.', + }, + 'Time machine':{ + name:'Cream', + symbol:'CRM', + company:'Precision Aging', + desc:'Once specialized in cosmetics for the elderly, the eggheads at Precision Aging have repurposed their timeshift technology and developed a process allowing them to accelerate, slow down, and even reverse the various phase changes of milk. Their flagship offering, whole cream, is said to be within 0.002% of theoretical ripening optimums.', + }, + 'Antimatter condenser':{ + name:'Jam', + symbol:'JAM', + company:'Pectin Research', + desc:'Pectin Research is a military-backed laboratory initially created with the aim of enhancing and miniaturizing army rations, but now open for public bulk trading. It has recently made forays in the field of highly-concentrated fruit jams, available in a variety of flavors.', + }, + 'Prism':{ + name:'White chocolate', + symbol:'WCH', + company:'Dazzle Corp Ltd.', + desc:'What was once two college kids messing around with mirrors in their dad\'s garage is now a world-famous megacorporation. Dazzle Corp\'s groundbreaking experiments in photonic annealing have led to the creation years ago of a new kind of matter, once derided as impossible by physicists and cooks alike: white chocolate.', + }, + 'Chancemaker':{ + name:'Honey', + symbol:'HNY', + company:'Prosperity Hive', + desc:'The folks at Prosperity Hive deal in honey, and it\'s always worked for them. With a work culture so relaxed you\'re almost tempted to ditch the cookie business and join them, these people have little in common with the proverbial busy bee - though their rates do sting quite a bit.', + }, + 'Fractal engine':{ + name:'Cookies', + symbol:'CKI', + company:'Selfmade Bakeries', + desc:'Interesting. It appears there\'s still a company out there trying to sell cookies even with your stranglehold on the market. No matter - you figure Selfmade Bakeries\' largely inferior product will make decent fodder for the mouse traps in your factories.', + }, + 'Javascript console':{ + name:'Recipes', + symbol:'RCP', + company:'Figments Associated', + desc:'In a post-material world, the market of ideas is where value is created. Figments Associated understands that, and is the prime designer (and patenter) of baking recipes, ingredient nomenclature, custom cooking procedures, and other kitchen processes.', + }, + 'Idleverse':{ + name:'Subsidiaries', + symbol:'SBD', + company:'Polyvalent Acquisitions', + desc:'Avoid the uncouth nastiness of mass layoffs and hostile takeovers by delegating the purchase, management, and eventual dissolution of other companies to the boys at Polyvalent Acquisitions. Let \'em deal with it!', + }, + }; + M.goodsById=[];var n=0; + for (var i in M.goods){var it=M.goods[i];it.id=n;it.hidden=false;it.active=false;it.last=0;it.building=Game.Objects[i];it.stock=0;it.mode=0;it.dur=0;it.val=1;it.vals=[it.val];it.d=0;M.goodsById[n]=it;it.icon=[it.building.iconColumn,33];n++;} + + M.goodTooltip=function(id) + { + return function(){ + var me=M.goodsById[id]; + var delta=M.goodDelta(id); + var val=M.getGoodPrice(me) + icon=me.icon||[0,0]; + var str='
'+ + '
'+ + '
'+me.name+' (from '+me.company+') '+me.symbol+' '+(delta+''+(delta==Math.floor(delta)?'.00':(delta*10)==Math.floor(delta*10)?'0':'')+'%')+'
'+ + '
'+ + ''+me.desc+''+ + '
'+me.name+': currently worth $'+Beautify(val,2)+' per unit.
• You currently own
'+Beautify(me.stock)+'x '+me.name+' (worth $'+Beautify(val*me.stock,2)+').
• Your warehouses can store up to
'+Beautify(M.getGoodMaxStock(me))+'x '+me.name+'.
• You may increase your storage space by upgrading your offices and by buying more
'+me.building.plural+'. You also get 10 extra storage space per '+me.building.single+' level (currently: +'+(me.building.level*10)+').
• The average worth of this stock and how high it can peak depends on the building it is tied to, along with the level of your
banks.
'+ + '
Shift-click the hide button to toggle all other stocks.
'+ + '
'; + return str; + }; + } + M.tradeTooltip=function(id,n) + { + return function(){ + var me=M.goodsById[id]; + var icon=me.icon||[0,0]; + var val=M.getGoodPrice(me) + var cost=Game.cookiesPsRawHighest*val; + var buyOrSell=n>0; + var overhead=1; + var stock=me.stock; + var maxStock=M.getGoodMaxStock(me); + if (buyOrSell) overhead*=1+0.01*(20*Math.pow(0.95,M.brokers)); + cost*=overhead; + if (n==10000) n=Math.floor(Game.cookies/cost); + else if (n==-10000) n=me.stock; + n=Math.abs(n); + if (buyOrSell) n=Math.min(n,maxStock-stock); + if (!buyOrSell) n=Math.min(n,stock); + var str='
'+ + '
Stock: '+Beautify(stock)+'/=maxStock)?' class="red"':'')+'>'+Beautify(maxStock)+'
'+ + '
'+ + '
'+(buyOrSell?'Buy':'Sell')+' '+Beautify(n)+'x
'+me.name+'
'+ + '
for $'+Beautify(val,2)+' each
'+ + (overhead>1?('
(+'+Beautify((overhead-1)*100,2)+'% overhead)
'):'')+ + '
'+ + '
'+(buyOrSell?'you spend':'you earn')+':
'+ + '
'+Beautify(cost*n)+'
'+ + (n>0?('
($'+Beautify(val*overhead*n,2)+')
'+ + '
('+Game.sayTime(val*overhead*n*Game.fps,-1)+' of CpS)
'):'')+ + (((me.last==1 && !buyOrSell) || (me.last==2 && buyOrSell))?'
You cannot buy and sell this stock in the same tick.
':'')+ + '
'; + return str; + }; + } + + M.goodDelta=function(id,back)//if back is 0 we get the current step; else get current step -back + { + var back=back||0; + var me=M.goodsById[id]; + var val=0; + if (me.vals.length>=(2+back)) + { + val=me.vals[0+back]/me.vals[1+back]-1; + } + val=Math.floor(val*10000)/100; + return val; + } + + M.getGoodMaxStock=function(good) + { + var bonus=0; + if (M.officeLevel>0) bonus+=25; + if (M.officeLevel>1) bonus+=50; + if (M.officeLevel>2) bonus+=75; + if (M.officeLevel>3) bonus+=100; + return Math.ceil(good.building.highest*(M.officeLevel>4?1.5:1)+bonus+good.building.level*10); + } + M.getGoodPrice=function(good) + { + return good.val; + } + M.buyGood=function(id,n) + { + var me=M.goodsById[id]; + var costInS=M.getGoodPrice(me); + var cost=Game.cookiesPsRawHighest*costInS; + var overhead=1+0.01*(20*Math.pow(0.95,M.brokers)); + cost*=overhead; + if (n==10000) n=Math.floor(Game.cookies/cost); + n=Math.min(n,M.getGoodMaxStock(me)-me.stock); + if (n>0 && me.last!=2 && Game.cookies>=cost*n && me.stock+n<=M.getGoodMaxStock(me)) + { + if (costInS*overhead*n>=86400) Game.Win('Buy buy buy'); + M.profit-=costInS*overhead*n; + Game.Spend(cost*n); + me.stock+=n; + var min=10000; + for (var i=0;i=1000) Game.Win('Full warehouses'); + } + if (min>=100) Game.Win('Rookie numbers'); + if (min>=500) Game.Win('No nobility in poverty'); + me.last=1; + PlaySound('snd/cashOut.mp3',0.4); + return true; + } + return false; + } + M.sellGood=function(id,n) + { + var me=M.goodsById[id]; + if (n==10000) n=me.stock; + n=Math.min(n,me.stock); + if (n>0 && me.last!=1 && me.stock>0) + { + var costInS=M.getGoodPrice(me); + if (costInS*n>=86400) Game.Win('Make my day'); + M.profit+=costInS*n; + if (M.profit>0) Game.Win('Initial public offering'); + if (M.profit>=10000000) Game.Win('Liquid assets'); + if (M.profit>=31536000) Game.Win('Gaseous assets'); + //Game.Earn(Game.cookiesPsRawHighest*costInS*n); + Game.cookies+=Game.cookiesPsRawHighest*costInS*n; + Game.cookiesEarned=Math.max(Game.cookies,Game.cookiesEarned); + me.stock-=n; + me.last=2; + PlaySound('snd/cashIn.mp3',0.4); + return true; + } + return false; + } + M.getRestingVal=function(id) + { + return 10+10*id+(Game.Objects['Bank'].level-1); + } + + M.updateGoodStyle=function(id) + { + var me=M.goodsById[id]; + if (me.active) + { + me.l.style.display='inline-block'; + if (!me.hidden) + { + me.viewHideL.innerHTML='Hide'; + me.l.classList.remove('bankHidden'); + me.graphIconL.style.display='block'; + } + else + { + me.viewHideL.innerHTML='View'; + me.l.classList.add('bankHidden'); + me.graphIconL.style.display='none'; + } + } + else + { + me.l.style.display='none'; + me.graphIconL.style.display='none'; + } + } + + M.officeLevel=0; + M.offices=[ + {name:'Credit garage',icon:[0,33],cost:[100,2],desc:'This is your starting office.
Upgrading will grant you:
• +25 warehouse space for all goods'}, + {name:'Tiny bank',icon:[9,33],cost:[200,4],desc:'This is your office.
Upgrading will grant you:
• +1 loan slot
• +50 warehouse space for all goods
'}, + {name:'Loaning company',icon:[10,33],cost:[350,8],desc:'This is your office.
Upgrading will grant you:
• +75 warehouse space for all goods'}, + {name:'Finance headquarters',icon:[11,33],cost:[500,10],desc:'This is your office.
Upgrading will grant you:
• +1 loan slot
• +100 warehouse space for all goods
'}, + {name:'International exchange',icon:[12,33],cost:[700,12],desc:'This is your office.
Upgrading will grant you:
• +1 loan slot
• +50% base warehouse space for all goods
'}, + {name:'Palace of Greed',icon:[18,33],cost:0,desc:'This is your office.
It is fully upgraded. Its lavish interiors, spanning across innumerable floors, are host to many a decadent party, owing to your nigh-unfathomable wealth.'}, + ]; + + M.officeTooltip=function() + { + return function(){ + var me=M.offices[M.officeLevel]; + var icon=me.icon||[0,0]; + var str='
'+ + '
'+ + '
'+me.name+' [Level '+(M.officeLevel+1)+' offices]
'+ + '
'+ + me.desc+ + '
'+ + (me.cost?('
'+ + '
'+ + 'Upgrading will cost you '+me.cost[0]+' cursors.
'+ + 'Upgrading requires level '+me.cost[1]+' cursors.'+ + '
'):'')+ + '
'; + return str; + }; + } + + M.brokers=0; + + M.getMaxBrokers=function(){return Math.ceil(Game.Objects['Grandma'].highest/10+Game.Objects['Grandma'].level);} + M.getBrokerPrice=function(){return Game.cookiesPsRawHighest*60*20;} + M.brokersTooltip=function() + { + return function(){ + var icon=[1,33]; + var str='
'+ + '
'+ + '
Stockbrokers (you have '+Beautify(M.brokers)+')
'+ + '
'+ + 'A nice broker to trade more cookies.
'+ + '• Buying goods normally incurs overhead costs of 20% extra. Each broker you hire reduces that cost by 5%.
'+ + '• Current overhead costs thanks to your '+Beautify(M.brokers)+' broker'+(M.brokers==1?'':'s')+': +'+Beautify(20*Math.pow(0.95,M.brokers),2)+'%
'+ + '• Buying a broker costs 20 minutes of CpS (that\'s $1200).
'+ + '• Maximum number of brokers you can own: '+Beautify(M.getMaxBrokers())+' (the highest amount of grandmas you\'ve owned this run, divided by 10, plus your grandma level)
'+ + 'Brokers are Wall Street-class grandmas versed in the ways of finance. Stockbroker grandmas work hard and play hard, and will fight telephone in hand to get your clients the best possible deals - with a sizeable profit margin for you, of course.'+ + '
'+ + 'Hiring a new broker will cost you '+Beautify(M.getBrokerPrice())+' cookies.'+ + '
'+ + '
'+ + '
'; + return str; + }; + } + + M.loanTypes=[ + //name, mult, duration, payback mult, duration, downpayment (as % of bank), quote + ['a modest loan',1.5,60*2,0.25,60*4,0.2,'Buy that vintage car you\'ve always wanted. Just pay us back.'], + ['a pawnshop loan',2,0.67,0.1,40,0.4,'Bad credit? No problem. It\'s your money, and you need it now.'], + ['a retirement loan',1.2,60*24*2,0.8,60*24*5,0.5,'Finance your next house, boat, spouse, etc. You\'ve earned it.'], + ]; + M.loanTooltip=function(id) + { + return function(){ + var loan=M.loanTypes[id-1]; + var str='
'+ + '
Take out '+loan[0]+'
'+ + '
'+ + 'By taking this loan, you will get +'+Math.round((loan[1]-1)*100)+'% CpS for the next '+Game.sayTime(60*loan[2]*Game.fps)+'.
'+ + 'However, you will get '+Math.round((loan[3]-1)*100)+'% CpS for the next '+Game.sayTime(60*loan[4]*Game.fps)+' after that.
'+ + 'You must also pay an immediate downpayment of '+Beautify(Game.cookies*loan[5])+' ('+(loan[5]*100)+'% of your current bank).
'+ + ''+loan[6]+''+ + '
'; + return str; + }; + } + M.takeLoan=function(id,interest) + { + var loan=M.loanTypes[id-1]; + if (!interest) + { + if (Game.hasBuff('Loan '+id) || Game.hasBuff('Loan '+id+' (interest)')) return false; + Game.Spend(Game.cookies*loan[5]); + Game.gainBuff('loan '+id,loan[2]*60,loan[1]); + } + else + { + Game.gainBuff('loan '+id+' interest',loan[4]*60,loan[3]); + Game.Notify('Loan over','Your loan has expired, and you must now repay the interest.',[1,33]); + } + return true; + } + Game.takeLoan=M.takeLoan; + + M.getOppSlots=function() + { + var slots=0; + if (M.officeLevel>0) slots++; + if (M.officeLevel>2) slots++; + if (M.officeLevel>4) slots++; + return slots; + } + + //note : opportunity system to be added later maybe + + M.oppTooltip=function() + { + return function(){ + var str='
'+ + '
Generate opportunity
'+ + '
'+ + 'Pressing this button gives you up to 3 possible actions to choose from, depending on your office level.
These actions will let you manipulate the stock market to some degree, though some are riskier than others.
You may only generate an opportunity once an hour, though this can be refreshed with a sugar lump.'+ + '
'; + return str; + }; + } + + M.refillTooltip=function(){ + return '
Click to refill your opportunity timer (and give a quick burst to your economy) for 1 sugar lump.'+ + (Game.canRefillLump()?'
(can be done once every '+Game.sayTime(Game.getLumpRefillMax(),-1)+')':('
(usable again in '+Game.sayTime(Game.getLumpRefillRemaining()+Game.fps,-1)+')'))+ + '
'; + }; + + + var str=''; + str+=''; + + str+='
'; + str+='
'; + + str+='
'+ + '
'+ + '
Profits: $0. All prices are in $econds of your highest raw cookies per second.
'+ + '
-
'+ + '
no brokers
Hire
'+ + '
'+ + /*'
Generate opportunity
refresh
'+*/ + '
'; + + for (var i=0;i'+ + '
'+ + '
'+ + '
'+me.symbol+' -.--%
'+ + '
Hide
'+ + '
value: -
'+ + '
stock: -/-
'+ + '
'+ + '
'+ + '
Buy
'+ + '
1
'+ + '
10
'+ + '
100
'+ + '
Max
'+ + '
'+ + '
Sell
'+ + '
1
'+ + '
10
'+ + '
100
'+ + '
All
'+ + '
'+ + '
'; + } + str+='
'; + str+='
'; + + str+='
'; + div.innerHTML=str; + + + + var str=''; + str+='
'+ + '
Line style
'+ + '
Color mode
'+ + (Game.sesame?'
Toggle speed
':'')+ + '
'+ + '
DOUGH JONES INDEX
'; + for (var i=0;i
'; + } + l('bankGraphBox').innerHTML=str; + + var div=document.createElement('canvas'); + div.id='bankGraph'; + div.style.marginLeft='-14px'; + div.width=64; + div.height=64; + l('bankGraphBox').appendChild(div); + M.graph=div; + M.graphCtx=M.graph.getContext('2d',{alpha:false}); + + AddEvent(l('bankGraphLines'),'click',function(e){ + if (M.graphLines==0) M.graphLines=1; + else M.graphLines=0; + M.toRedraw=2; + PlaySound('snd/tick.mp3'); + }); + AddEvent(l('bankGraphCols'),'click',function(e){ + if (M.graphCols==0) M.graphCols=1; + else M.graphCols=0; + M.setCols(); + M.toRedraw=2; + PlaySound('snd/tick.mp3'); + }); + if (l('bankCheatSpeed')) + { + AddEvent(l('bankCheatSpeed'),'click',function(e){ + if (M.secondsPerTick==60) M.secondsPerTick=1/10; + else M.secondsPerTick=60; + M.toRedraw=2; + PlaySound('snd/tick.mp3'); + }); + } + + AddEvent(l('bankOfficeUpgrade'),'click',function(e){ + var me=M.offices[M.officeLevel]; + if (me.cost && Game.Objects['Cursor'].amount>=me.cost[0] && Game.Objects['Cursor'].level>=me.cost[1]) + { + Game.Objects['Cursor'].sacrifice(me.cost[0]); + M.officeLevel+=1; + if (M.officeLevel>=M.offices.length-1) Game.Win('Pyramid scheme'); + PlaySound('snd/cashIn2.mp3',0.6); + Game.SparkleOn(e.target); + } + }); + AddEvent(l('bankBrokersBuy'),'click',function(e){ + if (M.brokers=M.getBrokerPrice()) + { + Game.Spend(M.getBrokerPrice()); + M.brokers+=1; + PlaySound('snd/cashIn2.mp3',0.6); + Game.SparkleOn(e.target); + } + }); + + AddEvent(l('bankLoan1'),'click',function(e){ + if (M.takeLoan(1)) {PlaySound('snd/cashIn2.mp3',0.6);Game.SparkleOn(e.target);} + }); + AddEvent(l('bankLoan2'),'click',function(e){ + if (M.takeLoan(2)) {PlaySound('snd/cashIn2.mp3',0.6);Game.SparkleOn(e.target);} + }); + AddEvent(l('bankLoan3'),'click',function(e){ + if (M.takeLoan(3)) {PlaySound('snd/cashIn2.mp3',0.6);Game.SparkleOn(e.target);} + }); + + for (var i=0;i=0;i--) + { + var id=i; + var me=M.goodsById[id]; + if (me.hidden || !me.active) continue; + for (var iR=0;iR=(2+iR)) + { + var min=Math.max(me.vals[0+iR],me.vals[1+iR]); + var max=Math.abs((me.vals[0+iR]-me.vals[1+iR])); + if (x>=width-span*iR-span-2 && x<=width-span*iR+2 && y>=height-min*M.graphScale-6 && y<=height-min*M.graphScale+Math.max(3,max*M.graphScale)+6) + { + isOnLine=i; + Game.tooltip.draw(0,'
'+me.name+'
valued at $'+Beautify(me.vals[0+iR],2)+'
'+Game.sayTime((iR+1)*M.secondsPerTick*Game.fps)+' ago
','top'); + break bankGraphMouseDetect; + } + } + } + } + if (isOnLine!=M.hoverOnGood) + { + M.hoverOnGood=isOnLine; + if (M.hoverOnGood!=-1) + { + M.graph.style.cursor='pointer'; + } + else + { + M.graph.style.cursor='auto'; + Game.tooltip.shouldHide=1; + } + M.toRedraw=2; + } + }); + AddEvent(M.graph,'mouseout',function(e){ + M.graph.style.cursor='auto'; + if (M.hoverOnGood!=-1) {M.hoverOnGood=-1;M.toRedraw=2;} + Game.tooltip.shouldHide=1; + }); + + M.reset(); + } + M.onResize=function() + { + M.graph.width=l('bankContent').offsetWidth-22; + M.graph.height=300;//l('bankContent').offsetHeight; + var ctx=M.graphCtx; + ctx.fillStyle='#fff'; + ctx.fillRect(0,0,M.graph.width,M.graph.height); + M.checkGraphScale(); + M.toRedraw=2; + } + M.save=function() + { + //output cannot use ",", ";" or "|" + var str=''+ + parseInt(M.officeLevel)+':'+ + parseInt(M.brokers)+':'+ + parseInt(M.graphLines)+':'+ + parseFloat(M.profit)+':'+ + parseInt(M.graphCols)+':'+ + ' '; + for (var iG=0;iG0) it.active=true; + if (it.l) M.updateGoodStyle(it.id); + } + M.onResize(); + + var on=parseInt(spl[i++]||0);if (on && Game.ascensionMode!=1) M.parent.switchMinigame(1); + } + M.reset=function(hard) + { + M.tickT=0; + M.toRedraw=0; + M.officeLevel=0; + M.brokers=0; + + if (hard) {M.graphLines=1;M.graphCols=0;}M.setCols(); + M.hoverOnGood=-1; + M.ticks=0; + M.lastTickDrawn=0; + M.profit=0; + + for (var i=0;i(100+(Game.Objects['Bank'].level-1)*3) && me.d>0) me.d*=0.9; + + me.val+=me.d; + /*if (me.val<=0 && me.d<0) + { + me.d*=0.75; + if (me.mode==4 && Math.random()<0.05) me.mode=2; + } + if (me.val<2) me.val+=(2-me.val)*0.1; + me.val=Math.max(me.val,0.01);*/ + /*var cutoff=5; + var minvalue=1; + if (me.val<=cutoff) + { + var s=Math.max(0,me.val)/cutoff; + me.val=((2*minvalue-cutoff)*s+(2*cutoff-3*minvalue))*s*s+minvalue;//low soft-cap between 1 and 5 + }*/ + if (me.val<5) me.val+=(5-me.val)*0.5; + if (me.val<5 && me.d<0) me.d*=0.95; + me.val=Math.max(me.val,1); + + me.vals.unshift(me.val); + if (me.vals.length>65) me.vals.pop(); + + me.dur--; + //if (Math.random()<1/me.dur) + if (me.dur<=0) + { + me.dur=Math.floor(10+Math.random()*990); + if (Math.random()<0.7 && (me.mode==3 || me.mode==4)) me.mode=5; + else me.mode=choose([0,1,1,2,2,3,4,5]); + } + } + M.checkGraphScale(); + M.toRedraw=Math.max(M.toRedraw,1); + M.ticks++; + } + + M.tickT=0; + M.logic=function() + { + //run each frame + + M.tickT++; + if (M.tickT>=Game.fps*M.secondsPerTick) + { + M.tickT=0; + M.tick(); + } + + if (Game.T%10==0) + { + var doResize=false; + for (var i=0;i0) {me.active=true;me.hidden=false;M.toRedraw=2;if (me.l){M.updateGoodStyle(me.id);doResize=true;}} + } + if (doResize) M.onResize(); + } + } + M.hoverOnGood=-1; + M.graphScale=10;//how many units 1 vertical pixel represents + M.graphLines=1; + M.graphCols=0; + M.checkGraphScale=function() + { + //check if the height of the graph and the highest good value + //if the scale is too narrow to accommodate all goods, zoom out + //if the scale is too wide, zoom back in (but with a higher margin) + //this is done in increments of 50 + var currentSize=M.graph.height; + if (!currentSize) return false; + var maxVal=0; + for (var i=0;i5 || dif<-5) + { + M.graphScale=newScale; + M.toRedraw=2; + } + } + M.colBases=[ + {bg:'#fff',line1:'#eee',line2:'#ccc',low:'#ce2549',high:'#79c600',highlight:'#000'}, + {bg:'#1f2836',line1:'#273545',line2:'#384b61',low:'#3153a3',high:'#c4971a',highlight:'#a6abad'}, + ]; + M.setCols=function() + { + if (!M.colBases[M.graphCols]) M.graphCols=0; + M.cols=M.colBases[M.graphCols]; + if (l('bankGraphBox')) + { + l('bankGraphBox').style.backgroundColor=M.cols.bg; + l('bankGraphBox').style.color=M.cols.highlight; + } + if (M.graph) M.graph.style.backgroundColor=M.cols.bg; + } + M.setCols(); + M.drawGraph=function(full) + { + /* + what this does : + scroll the graph left by (span) + draw more graph data to the right + if (full), do a full redraw instead + */ + var ctx=M.graphCtx; + var width=M.graph.width; + var span=Math.max(4,Math.ceil(width/65));//6; + var height=M.graph.height; + ctx.globalAlpha=1; + if (!full) ctx.drawImage(M.graph,-span,0); + ctx.fillStyle=M.cols.bg; + if (full) ctx.fillRect(0,0,width,height); + else ctx.fillRect(width-span,0,span,height); + ctx.lineWidth=2; + ctx.globalAlpha=1; + + var rows=(full?Math.ceil(width/span):1); + + for (var i=0;i=(2+iR)) + { + var delta=M.goodDelta(me.id,iR); + + if (M.graphLines==0) + { + var min=Math.max(me.vals[0+iR],me.vals[1+iR]); + var max=Math.abs((me.vals[0+iR]-me.vals[1+iR])); + var min2=Math.abs(Math.sin((M.ticks-iR)*11+id*137))*max*2; + var max2=min2+Math.abs(Math.sin((M.ticks-iR)*13+id*139))*max*2; + if (M.hoverOnGood==id) + { + ctx.fillStyle=M.cols.highlight; + ctx.fillRect(width-span*iR-span-1,Math.floor(height-min*M.graphScale)-1,span+1,Math.max(3,Math.ceil(max*M.graphScale))+2); + } + ctx.fillStyle=delta>0?M.cols.high:M.cols.low; + ctx.fillRect(width-span*iR-span,Math.floor(height-min*M.graphScale),span-1,Math.max(3,Math.ceil(max*M.graphScale))); + ctx.fillRect(width-span*iR-span/2-1,Math.floor(height-(min+min2)*M.graphScale),1,Math.max(3,Math.ceil((max+max2)*M.graphScale))); + } + else + { + if (M.hoverOnGood==id) + { + ctx.lineWidth=4; + ctx.strokeStyle=M.cols.highlight; + ctx.beginPath(); + ctx.moveTo(width-span*iR-span-1,Math.floor(height-me.vals[1+iR]*M.graphScale)+0.5); + ctx.lineTo(width-span*iR-1,Math.floor(height-me.vals[0+iR]*M.graphScale)+0.5); + ctx.stroke(); + ctx.lineWidth=2; + } + ctx.strokeStyle=delta>0?M.cols.high:M.cols.low; + ctx.beginPath(); + ctx.moveTo(width-span*iR-span-1,Math.floor(height-me.vals[1+iR]*M.graphScale)+0.5); + ctx.lineTo(width-span*iR-1,Math.floor(height-me.vals[0+iR]*M.graphScale)+0.5); + ctx.stroke(); + } + } + } + } + } + M.draw=function() + { + //run each draw frame + + if (Game.drawT%2==0 && M.toRedraw>0 && M.graph && M.graphCtx) + { + if (M.lastTickDrawn=0) {me.symbolNumL.classList.add('bankSymbolUp');me.symbolNumL.classList.remove('bankSymbolDown');} + else if (val<0) {me.symbolNumL.classList.remove('bankSymbolUp');me.symbolNumL.classList.add('bankSymbolDown');} + else {me.symbolNumL.classList.remove('bankSymbolUp');me.symbolNumL.classList.remove('bankSymbolDown');} + + me.valL.innerHTML='$'+Beautify(me.val,2); + me.stockL.innerHTML=Beautify(me.stock); + //if (me.stock>0) me.stockL.style.color='#fff'; + //else me.stockL.style.removeProperty('color'); + if (me.stock>0) me.stockBoxL.classList.add('green'); + else me.stockBoxL.classList.remove('green'); + me.stockMaxL.innerHTML='/'+Beautify(M.getGoodMaxStock(me)); + + me.graphIconL.style.transform='translate(-8px,'+Math.floor((M.graph.height-me.vals[0]*M.graphScale))+'px) scale(0.5)'; + } + M.toRedraw=0; + } + if (Game.drawT%10==0) + { + var office=M.offices[M.officeLevel]; + l('bankOfficeIcon').style.backgroundPosition=(-office.icon[0]*48)+'px '+(-office.icon[1]*48)+'px'; + l('bankOfficeName').innerHTML=office.name; + l('bankOfficeUpgrade').innerHTML='Upgrade ('+office.cost[0]+' cursors)'; + if (!office.cost) l('bankOfficeUpgrade').style.display='none'; + else + { + l('bankOfficeUpgrade').style.removeProperty('display'); + if (Game.Objects['Cursor'].amount>=office.cost[0] && Game.Objects['Cursor'].level>=office.cost[1]) l('bankOfficeUpgrade').classList.remove('bankButtonOff'); + else l('bankOfficeUpgrade').classList.add('bankButtonOff'); + } + l('bankBrokersText').innerHTML=M.brokers==0?'no brokers':M.brokers==1?'1 broker':(M.brokers+' brokers'); + if (M.brokers=M.getBrokerPrice()) l('bankBrokersBuy').classList.remove('bankButtonOff'); + else l('bankBrokersBuy').classList.add('bankButtonOff'); + + if (M.officeLevel<=1) l('bankLoan1').style.display='none'; + else l('bankLoan1').style.removeProperty('display'); + if (M.officeLevel<=3) l('bankLoan2').style.display='none'; + else l('bankLoan2').style.removeProperty('display'); + if (M.officeLevel<=4) l('bankLoan3').style.display='none'; + else l('bankLoan3').style.removeProperty('display'); + + for (var id=1;id<4;id++) + { + if (Game.hasBuff('Loan '+id) || Game.hasBuff('Loan '+id+' (interest)')) l('bankLoan'+id).classList.add('bankButtonOff'); + else l('bankLoan'+id).classList.remove('bankButtonOff'); + } + + var it=l('bankBalance'); + it.innerHTML=(M.profit<0?'-':'')+'$'+Beautify(Math.abs(M.profit),2); + if (M.profit>0) {it.classList.add('bankSymbolUp');it.classList.remove('bankSymbolDown');} + else if (M.profit<0) {it.classList.add('bankSymbolDown');it.classList.remove('bankSymbolUp');} + + l('bankNextTick').innerHTML='Next tick in '+Game.sayTime((Game.fps*M.secondsPerTick)-M.tickT+30,-1)+'.'; + } + } + M.init(l('rowSpecial'+M.parent.id)); +} +var M=0; \ No newline at end of file diff --git a/gversion/gs/cookieclicker/minigamePantheon.js b/gversion/gs/cookieclicker/minigamePantheon.js new file mode 100644 index 0000000..a2b22a5 --- /dev/null +++ b/gversion/gs/cookieclicker/minigamePantheon.js @@ -0,0 +1,503 @@ +var M={}; +M.parent=Game.Objects['Temple']; +M.parent.minigame=M; +M.launch=function() +{ + var M=this; + M.name=M.parent.minigameName; + M.init=function(div) + { + //populate div with html and initialize values + + M.gods={ + 'asceticism':{ + name:'Holobore, Spirit of Asceticism', + icon:[21,18], + desc1:'+15% base CpS.', + desc2:'+10% base CpS.', + desc3:'+5% base CpS.', + descAfter:'If a golden cookie is clicked, this spirit is unslotted and all worship swaps will be used up.', + quote:'An immortal life spent focusing on the inner self, away from the distractions of material wealth.', + }, + 'decadence':{ + name:'Vomitrax, Spirit of Decadence', + icon:[22,18], + desc1:'Golden and wrath cookie effect duration +7%, but buildings grant -7% CpS.', + desc2:'Golden and wrath cookie effect duration +5%, but buildings grant -5% CpS.', + desc3:'Golden and wrath cookie effect duration +2%, but buildings grant -2% CpS.', + quote:'This sleazy spirit revels in the lust for quick easy gain and contempt for the value of steady work.', + }, + 'ruin':{ + name:'Godzamok, Spirit of Ruin', + icon:[23,18], + descBefore:'Selling buildings triggers a buff boosted by how many buildings were sold.', + desc1:'Buff boosts clicks by +1% for every building sold for 10 seconds.', + desc2:'Buff boosts clicks by +0.5% for every building sold for 10 seconds.', + desc3:'Buff boosts clicks by +0.25% for every building sold for 10 seconds.', + quote:'The embodiment of natural disasters. An impenetrable motive drives the devastation caused by this spirit.', + }, + 'ages':{ + name:'Cyclius, Spirit of Ages', + icon:[24,18], + activeDescFunc:function() + { + var godLvl=Game.hasGod('ages'); + var mult=1; + if (godLvl==1) mult*=0.15*Math.sin((Date.now()/1000/(60*60*3))*Math.PI*2); + else if (godLvl==2) mult*=0.15*Math.sin((Date.now()/1000/(60*60*12))*Math.PI*2); + else if (godLvl==3) mult*=0.15*Math.sin((Date.now()/1000/(60*60*24))*Math.PI*2); + return 'Current bonus : '+(mult<0?'-':'+')+Beautify(Math.abs(mult)*100,2)+'%.'; + }, + descBefore:'CpS bonus fluctuating between +15% and -15% over time.', + desc1:'Effect cycles over 3 hours.', + desc2:'Effect cycles over 12 hours.', + desc3:'Effect cycles over 24 hours.', + quote:'This spirit knows about everything you\'ll ever do, and enjoys dispensing a harsh judgement.', + }, + 'seasons':{ + name:'Selebrak, Spirit of Festivities', + icon:[25,18], + descBefore:'Some seasonal effects are boosted.', + desc1:'Large boost. Switching seasons is 100% pricier.', + desc2:'Medium boost. Switching seasons is 50% pricier.', + desc3:'Small boost. Switching seasons is 25% pricier.', + quote:'This is the spirit of merry getaways and regretful Monday mornings.', + }, + 'creation':{ + name:'Dotjeiess, Spirit of Creation', + icon:[26,18], + desc1:'Buildings are 7% cheaper, but heavenly chips have 30% less effect.', + desc2:'Buildings are 5% cheaper, but heavenly chips have 20% less effect.', + desc3:'Buildings are 2% cheaper, but heavenly chips have 10% less effect.', + quote:'All things that be and ever will be were scripted long ago by this spirit\'s inscrutable tendrils.', + }, + 'labor':{ + name:'Muridal, Spirit of Labor', + icon:[27,18], + desc1:'Clicks are 15% more powerful, but buildings produce 3% less.', + desc2:'Clicks are 10% more powerful, but buildings produce 2% less.', + desc3:'Clicks are 5% more powerful, but buildings produce 1% less.', + quote:'This spirit enjoys a good cheese after a day of hard work.', + }, + 'industry':{ + name:'Jeremy, Spirit of Industry', + icon:[28,18], + desc1:'Buildings produce 10% more cookies, but golden and wrath cookies appear 10% less.', + desc2:'Buildings produce 6% more cookies, but golden and wrath cookies appear 6% less.', + desc3:'Buildings produce 3% more cookies, but golden and wrath cookies appear 3% less.', + quote:'While this spirit has many regrets, helping you rule the world through constant industrialization is not one of them.', + }, + 'mother':{ + name:'Mokalsium, Mother Spirit', + icon:[29,18], + desc1:'Milk is 10% more powerful, but golden and wrath cookies appear 15% less.', + desc2:'Milk is 5% more powerful, but golden and wrath cookies appear 10% less.', + desc3:'Milk is 3% more powerful, but golden and wrath cookies appear 5% less.', + quote:'A caring spirit said to contain itself, inwards infinitely.', + }, + 'scorn':{ + name:'Skruuia, Spirit of Scorn', + icon:[21,19], + descBefore:'All golden cookies are wrath cookies with a greater chance of a negative effect.', + desc1:'Wrinklers appear 150% faster and digest 15% more cookies.', + desc2:'Wrinklers appear 100% faster and digest 10% more cookies.', + desc3:'Wrinklers appear 50% faster and digest 5% more cookies.', + quote:'This spirit enjoys poking foul beasts and watching them squirm, but has no love for its own family.', + }, + 'order':{ + name:'Rigidel, Spirit of Order', + icon:[22,19], + activeDescFunc:function() + { + if (Game.BuildingsOwned%10==0) return 'Buildings owned : '+Beautify(Game.BuildingsOwned)+'.
Effect is active.'; + else return 'Buildings owned : '+Beautify(Game.BuildingsOwned)+'.
Effect is inactive.'; + }, + desc1:'Sugar lumps ripen an hour sooner.', + desc2:'Sugar lumps ripen 40 minutes sooner.', + desc3:'Sugar lumps ripen 20 minutes sooner.', + descAfter:'Effect is only active when your total amount of buildings ends with 0.', + quote:'You will find that life gets just a little bit sweeter if you can motivate this spirit with tidy numbers and properly-filled tax returns.', + }, + }; + M.godsById=[];var n=0; + for (var i in M.gods){M.gods[i].id=n;M.gods[i].slot=-1;M.godsById[n]=M.gods[i];n++;} + + + M.slot=[]; + M.slot[0]=-1;//diamond socket + M.slot[1]=-1;//ruby socket + M.slot[2]=-1;//jade socket + + M.slotNames=[ + 'Diamond','Ruby','Jade' + ]; + + M.swaps=3;//swaps left + M.swapT=Date.now();//the last time we swapped + + M.lastSwapT=0;//frames since last swap + + M.godTooltip=function(id) + { + return function(){ + var me=M.godsById[id]; + me.icon=me.icon||[0,0]; + var str='
'+ + '
'+ + '
'+me.name+'
'+ + '
Effects :
'+ + (me.descBefore?('
'+me.descBefore+'
'):'')+ + (me.desc1?('
'+me.desc1+'
'):'')+ + (me.desc2?('
'+me.desc2+'
'):'')+ + (me.desc3?('
'+me.desc3+'
'):'')+ + (me.descAfter?('
'+me.descAfter+'
'):'')+ + (me.quote?(''+me.quote+''):'')+ + '
'; + return str; + }; + } + + M.slotTooltip=function(id) + { + return function(){ + if (M.slot[id]!=-1) + { + var me=M.godsById[M.slot[id]]; + me.icon=me.icon||[0,0]; + } + var str='
'+ + (M.slot[id]!=-1?( + '
'+M.slotNames[id]+' slot
'+ + '
'+ + '
'+me.name+'
'+ + '
Effects :
'+ + (me.activeDescFunc?('
'+me.activeDescFunc()+'
'):'')+ + (me.descBefore?('
'+me.descBefore+'
'):'')+ + (me.desc1?('
'+me.desc1+'
'):'')+ + (me.desc2?('
'+me.desc2+'
'):'')+ + (me.desc3?('
'+me.desc3+'
'):'')+ + (me.descAfter?('
'+me.descAfter+'
'):'')+ + (me.quote?(''+me.quote+''):'')+ + '
' + ): + ('
'+M.slotNames[id]+' slot (empty)
'+ + ((M.slotHovered==id && M.dragging)?'Release to assign '+M.dragging.name+' to this slot.':'Drag a spirit onto this slot to assign it.')+ + '
') + )+ + '
'; + return str; + }; + } + + M.useSwap=function(n) + { + M.swapT=Date.now(); + M.swaps-=n; + if (M.swaps<0) M.swaps=0; + } + + M.slotGod=function(god,slot) + { + if (slot==god.slot) return false; + if (slot!=-1 && M.slot[slot]!=-1) + { + M.godsById[M.slot[slot]].slot=god.slot;//swap + M.slot[god.slot]=M.slot[slot]; + } + else if (god.slot!=-1) M.slot[god.slot]=-1; + if (slot!=-1) M.slot[slot]=god.id; + god.slot=slot; + Game.recalculateGains=true; + } + + M.dragging=false; + M.dragGod=function(what) + { + M.dragging=what; + var div=l('templeGod'+what.id); + var box=div.getBoundingClientRect(); + var box2=l('templeDrag').getBoundingClientRect(); + div.className='ready templeGod titleFont templeDragged'; + l('templeDrag').appendChild(div); + var x=box.left-box2.left; + var y=box.top-box2.top; + div.style.transform='translate('+(x)+'px,'+(y)+'px)'; + l('templeGodPlaceholder'+M.dragging.id).style.display='inline-block'; + PlaySound('snd/tick.mp3'); + } + M.dropGod=function() + { + if (!M.dragging) return; + var div=l('templeGod'+M.dragging.id); + div.className='ready templeGod titleFont'; + div.style.transform='none'; + if (M.slotHovered!=-1 && (M.swaps==0 || M.dragging.slot==M.slotHovered))//dropping on a slot but no swaps left, or slot is the same as the original + { + if (M.dragging.slot!=-1) l('templeSlot'+M.dragging.slot).appendChild(div); + else l('templeGodPlaceholder'+(M.dragging.id)).parentNode.insertBefore(div,l('templeGodPlaceholder'+(M.dragging.id))); + PlaySound('snd/sell1.mp3',0.75); + } + else if (M.slotHovered!=-1)//dropping on a slot + { + M.useSwap(1); + M.lastSwapT=0; + + var prev=M.slot[M.slotHovered];//id of the god already in the slot + if (prev!=-1) + { + prev=M.godsById[prev]; + var prevDiv=l('templeGod'+prev.id); + if (M.dragging.slot!=-1)//swap with god's previous slot + { + l('templeSlot'+M.dragging.slot).appendChild(prevDiv); + } + else//swap back to roster + { + var other=l('templeGodPlaceholder'+(prev.id)); + other.parentNode.insertBefore(prevDiv,other); + } + } + l('templeSlot'+M.slotHovered).appendChild(div); + M.slotGod(M.dragging,M.slotHovered); + + PlaySound('snd/tick.mp3'); + PlaySound('snd/spirit.mp3',0.5); + + var rect=div.getBoundingClientRect(); + Game.SparkleAt((rect.left+rect.right)/2,(rect.top+rect.bottom)/2-24); + } + else//dropping back to roster + { + var other=l('templeGodPlaceholder'+(M.dragging.id)); + other.parentNode.insertBefore(div,other); + other.style.display='none'; + M.slotGod(M.dragging,-1); + PlaySound('snd/sell1.mp3',0.75); + } + M.dragging=false; + } + + M.slotHovered=-1; + M.hoverSlot=function(what) + { + M.slotHovered=what; + if (M.dragging) + { + if (M.slotHovered==-1) l('templeGodPlaceholder'+M.dragging.id).style.display='inline-block'; + else l('templeGodPlaceholder'+M.dragging.id).style.display='none'; + PlaySound('snd/clickb'+Math.floor(Math.random()*7+1)+'.mp3',0.75); + } + } + + //external + Game.hasGod=function(what) + { + var god=M.gods[what]; + for (var i=0;i<3;i++) + { + if (M.slot[i]==god.id) return (i+1); + } + return false; + } + Game.forceUnslotGod=function(god) + { + var god=M.gods[god]; + if (god.slot==-1) return false; + var div=l('templeGod'+god.id); + var other=l('templeGodPlaceholder'+(god.id)); + other.parentNode.insertBefore(div,other); + other.style.display='none'; + M.slotGod(god,-1); + return true; + } + Game.useSwap=M.useSwap; + + + var str=''; + str+=''; + str+='
'; + str+='
'; + str+='
'; + str+='
'; + for (var i in M.slot) + { + var me=M.slot[i]; + str+='
'; + } + str+='
'; + str+='
Each time you slot a spirit, you use up one worship swap.
If you have 2 swaps left, the next one will refill after 1 hour.
If you have 1 swap left, the next one will refill after 4 hours.
If you have 0 swaps left, you will get one after 16 hours.
Unslotting a spirit costs no swaps.
')+'>-
'; + str+='
'; + for (var i in M.gods) + { + var me=M.gods[i]; + var icon=me.icon||[0,0]; + str+='
'; + str+='
'; + }//
+ str+='
'; + str+=''; + div.innerHTML=str; + M.swapsL=l('templeSwaps'); + M.lumpRefill=l('templeLumpRefill'); + + for (var i in M.gods) + { + var me=M.gods[i]; + AddEvent(l('templeGodDrag'+me.id),'mousedown',function(what){return function(e){if (e.button==0){M.dragGod(what);}}}(me)); + AddEvent(l('templeGodDrag'+me.id),'mouseup',function(what){return function(e){if (e.button==0){M.dropGod(what);}}}(me)); + } + for (var i in M.slot) + { + var me=M.slot[i]; + AddEvent(l('templeSlot'+i),'mouseover',function(what){return function(){M.hoverSlot(what);}}(i)); + AddEvent(l('templeSlot'+i),'mouseout',function(what){return function(e){if (e.button==0){M.hoverSlot(-1);}}}(i)); + } + + AddEvent(document,'mouseup',M.dropGod); + + + M.refillTooltip=function(){ + return '
Click to refill all your worship swaps for 1 sugar lump.'+ + (Game.canRefillLump()?'
(can be done once every '+Game.sayTime(Game.getLumpRefillMax(),-1)+')':('
(usable again in '+Game.sayTime(Game.getLumpRefillRemaining()+Game.fps,-1)+')'))+ + '
'; + }; + AddEvent(M.lumpRefill,'click',function(){ + if (M.swaps<3) + {Game.refillLump(1,function(){ + M.swaps=3; + M.swapT=Date.now(); + PlaySound('snd/pop'+Math.floor(Math.random()*3+1)+'.mp3',0.75); + });} + }); + + //M.parent.switchMinigame(1); + } + M.save=function() + { + //output cannot use ",", ";" or "|" + var str=''; + for (var i in M.slot) + {str+=parseFloat(M.slot[i])+'/';} + str=str.slice(0,-1); + str+=' '+parseFloat(M.swaps)+' '+parseFloat(M.swapT); + str+=' '+parseInt(M.parent.onMinigame?'1':'0'); + return str; + } + M.load=function(str) + { + //interpret str; called after .init + //note : not actually called in the Game's load; see "minigameSave" in main.js + if (!str) return false; + var i=0; + var spl=str.split(' '); + var bit=spl[i++].split('/')||[]; + for (var ii in M.slot) + { + if (parseFloat(bit[ii])!=-1) + { + var god=M.godsById[parseFloat(bit[ii])]; + M.slotGod(god,ii); + l('templeSlot'+god.slot).appendChild(l('templeGod'+god.id)); + } + } + M.swaps=parseFloat(spl[i++]||3); + M.swapT=parseFloat(spl[i++]||Date.now()); + var on=parseInt(spl[i++]||0);if (on && Game.ascensionMode!=1) M.parent.switchMinigame(1); + } + M.reset=function() + { + M.swaps=3; + M.swapT=Date.now(); + for (var i in M.slot) {M.slot[i]=-1;} + for (var i in M.gods) + { + var me=M.gods[i]; + me.slot=-1; + var other=l('templeGodPlaceholder'+(me.id)); + other.parentNode.insertBefore(l('templeGod'+me.id),other); + other.style.display='none'; + } + } + M.logic=function() + { + //run each frame + var t=1000*60*60; + if (M.swaps==0) t=1000*60*60*16; + else if (M.swaps==1) t=1000*60*60*4; + var t2=M.swapT+t-Date.now(); + if (t2<=0 && M.swaps<3) {M.swaps++;M.swapT=Date.now();} + M.lastSwapT++; + } + M.draw=function() + { + //run each draw frame + if (M.dragging) + { + var box=l('templeDrag').getBoundingClientRect(); + var x=Game.mouseX-box.left-60/2; + var y=Game.mouseY-box.top; + if (M.slotHovered!=-1)//snap to slots + { + var box2=l('templeSlot'+M.slotHovered).getBoundingClientRect(); + x=box2.left-box.left; + y=box2.top-box.top; + } + l('templeGod'+M.dragging.id).style.transform='translate('+(x)+'px,'+(y)+'px)'; + } + var t=1000*60*60; + if (M.swaps==0) t=1000*60*60*16; + else if (M.swaps==1) t=1000*60*60*4; + var t2=M.swapT+t-Date.now(); + M.swapsL.innerHTML='Worship swaps : '+M.swaps+'/'+(3)+''+((M.swaps<3)?' (next in '+Game.sayTime((t2/1000+1)*Game.fps,-1)+')':''); + } + M.init(l('rowSpecial'+M.parent.id)); +} +var M=0; \ No newline at end of file diff --git a/gversion/gs/cookieclicker/showads.js b/gversion/gs/cookieclicker/showads.js new file mode 100644 index 0000000..197ec7d --- /dev/null +++ b/gversion/gs/cookieclicker/showads.js @@ -0,0 +1,3 @@ +//this lets us detect adblockers so we can adjust the layout in case ads aren't shown ! (we're not using this for anything weird, promise !) +//this works because an adblocker will usually block this file from being embedded at all +var showAds=true; \ No newline at end of file diff --git a/gversion/gs/cookieclicker/snd/buy1.mp3 b/gversion/gs/cookieclicker/snd/buy1.mp3 new file mode 100644 index 0000000..b15a3d1 Binary files /dev/null and b/gversion/gs/cookieclicker/snd/buy1.mp3 differ diff --git a/gversion/gs/cookieclicker/snd/buy2.mp3 b/gversion/gs/cookieclicker/snd/buy2.mp3 new file mode 100644 index 0000000..7e53d31 Binary files /dev/null and b/gversion/gs/cookieclicker/snd/buy2.mp3 differ diff --git a/gversion/gs/cookieclicker/snd/buy3.mp3 b/gversion/gs/cookieclicker/snd/buy3.mp3 new file mode 100644 index 0000000..f361c67 Binary files /dev/null and b/gversion/gs/cookieclicker/snd/buy3.mp3 differ diff --git a/gversion/gs/cookieclicker/snd/buy4.mp3 b/gversion/gs/cookieclicker/snd/buy4.mp3 new file mode 100644 index 0000000..d64dacb Binary files /dev/null and b/gversion/gs/cookieclicker/snd/buy4.mp3 differ diff --git a/gversion/gs/cookieclicker/snd/buyHeavenly.mp3 b/gversion/gs/cookieclicker/snd/buyHeavenly.mp3 new file mode 100644 index 0000000..2582927 Binary files /dev/null and b/gversion/gs/cookieclicker/snd/buyHeavenly.mp3 differ diff --git a/gversion/gs/cookieclicker/snd/cashIn.mp3 b/gversion/gs/cookieclicker/snd/cashIn.mp3 new file mode 100644 index 0000000..d385d03 Binary files /dev/null and b/gversion/gs/cookieclicker/snd/cashIn.mp3 differ diff --git a/gversion/gs/cookieclicker/snd/cashIn2.mp3 b/gversion/gs/cookieclicker/snd/cashIn2.mp3 new file mode 100644 index 0000000..58ba515 Binary files /dev/null and b/gversion/gs/cookieclicker/snd/cashIn2.mp3 differ diff --git a/gversion/gs/cookieclicker/snd/cashOut.mp3 b/gversion/gs/cookieclicker/snd/cashOut.mp3 new file mode 100644 index 0000000..986618f Binary files /dev/null and b/gversion/gs/cookieclicker/snd/cashOut.mp3 differ diff --git a/gversion/gs/cookieclicker/snd/charging.mp3 b/gversion/gs/cookieclicker/snd/charging.mp3 new file mode 100644 index 0000000..9994bcb Binary files /dev/null and b/gversion/gs/cookieclicker/snd/charging.mp3 differ diff --git a/gversion/gs/cookieclicker/snd/chime.mp3 b/gversion/gs/cookieclicker/snd/chime.mp3 new file mode 100644 index 0000000..3f49b1b Binary files /dev/null and b/gversion/gs/cookieclicker/snd/chime.mp3 differ diff --git a/gversion/gs/cookieclicker/snd/choir.mp3 b/gversion/gs/cookieclicker/snd/choir.mp3 new file mode 100644 index 0000000..c606c71 Binary files /dev/null and b/gversion/gs/cookieclicker/snd/choir.mp3 differ diff --git a/gversion/gs/cookieclicker/snd/click1.mp3 b/gversion/gs/cookieclicker/snd/click1.mp3 new file mode 100644 index 0000000..64ba138 Binary files /dev/null and b/gversion/gs/cookieclicker/snd/click1.mp3 differ diff --git a/gversion/gs/cookieclicker/snd/click2.mp3 b/gversion/gs/cookieclicker/snd/click2.mp3 new file mode 100644 index 0000000..9b26f28 Binary files /dev/null and b/gversion/gs/cookieclicker/snd/click2.mp3 differ diff --git a/gversion/gs/cookieclicker/snd/click3.mp3 b/gversion/gs/cookieclicker/snd/click3.mp3 new file mode 100644 index 0000000..51c17ea Binary files /dev/null and b/gversion/gs/cookieclicker/snd/click3.mp3 differ diff --git a/gversion/gs/cookieclicker/snd/click4.mp3 b/gversion/gs/cookieclicker/snd/click4.mp3 new file mode 100644 index 0000000..4c51eeb Binary files /dev/null and b/gversion/gs/cookieclicker/snd/click4.mp3 differ diff --git a/gversion/gs/cookieclicker/snd/click5.mp3 b/gversion/gs/cookieclicker/snd/click5.mp3 new file mode 100644 index 0000000..f6886ee Binary files /dev/null and b/gversion/gs/cookieclicker/snd/click5.mp3 differ diff --git a/gversion/gs/cookieclicker/snd/click6.mp3 b/gversion/gs/cookieclicker/snd/click6.mp3 new file mode 100644 index 0000000..b28738f Binary files /dev/null and b/gversion/gs/cookieclicker/snd/click6.mp3 differ diff --git a/gversion/gs/cookieclicker/snd/click7.mp3 b/gversion/gs/cookieclicker/snd/click7.mp3 new file mode 100644 index 0000000..8d1e7c9 Binary files /dev/null and b/gversion/gs/cookieclicker/snd/click7.mp3 differ diff --git a/gversion/gs/cookieclicker/snd/clickOff.mp3 b/gversion/gs/cookieclicker/snd/clickOff.mp3 new file mode 100644 index 0000000..08ac7c4 Binary files /dev/null and b/gversion/gs/cookieclicker/snd/clickOff.mp3 differ diff --git a/gversion/gs/cookieclicker/snd/clickOn.mp3 b/gversion/gs/cookieclicker/snd/clickOn.mp3 new file mode 100644 index 0000000..1228ddc Binary files /dev/null and b/gversion/gs/cookieclicker/snd/clickOn.mp3 differ diff --git a/gversion/gs/cookieclicker/snd/clickb1.mp3 b/gversion/gs/cookieclicker/snd/clickb1.mp3 new file mode 100644 index 0000000..c096881 Binary files /dev/null and b/gversion/gs/cookieclicker/snd/clickb1.mp3 differ diff --git a/gversion/gs/cookieclicker/snd/clickb2.mp3 b/gversion/gs/cookieclicker/snd/clickb2.mp3 new file mode 100644 index 0000000..5536f9a Binary files /dev/null and b/gversion/gs/cookieclicker/snd/clickb2.mp3 differ diff --git a/gversion/gs/cookieclicker/snd/clickb3.mp3 b/gversion/gs/cookieclicker/snd/clickb3.mp3 new file mode 100644 index 0000000..e51d221 Binary files /dev/null and b/gversion/gs/cookieclicker/snd/clickb3.mp3 differ diff --git a/gversion/gs/cookieclicker/snd/clickb4.mp3 b/gversion/gs/cookieclicker/snd/clickb4.mp3 new file mode 100644 index 0000000..74e9711 Binary files /dev/null and b/gversion/gs/cookieclicker/snd/clickb4.mp3 differ diff --git a/gversion/gs/cookieclicker/snd/clickb5.mp3 b/gversion/gs/cookieclicker/snd/clickb5.mp3 new file mode 100644 index 0000000..9fd1179 Binary files /dev/null and b/gversion/gs/cookieclicker/snd/clickb5.mp3 differ diff --git a/gversion/gs/cookieclicker/snd/clickb6.mp3 b/gversion/gs/cookieclicker/snd/clickb6.mp3 new file mode 100644 index 0000000..eb3ab3b Binary files /dev/null and b/gversion/gs/cookieclicker/snd/clickb6.mp3 differ diff --git a/gversion/gs/cookieclicker/snd/clickb7.mp3 b/gversion/gs/cookieclicker/snd/clickb7.mp3 new file mode 100644 index 0000000..3f2e634 Binary files /dev/null and b/gversion/gs/cookieclicker/snd/clickb7.mp3 differ diff --git a/gversion/gs/cookieclicker/snd/cookieBreak.mp3 b/gversion/gs/cookieclicker/snd/cookieBreak.mp3 new file mode 100644 index 0000000..18a9b30 Binary files /dev/null and b/gversion/gs/cookieclicker/snd/cookieBreak.mp3 differ diff --git a/gversion/gs/cookieclicker/snd/cymbalCrash.mp3 b/gversion/gs/cookieclicker/snd/cymbalCrash.mp3 new file mode 100644 index 0000000..ad94a52 Binary files /dev/null and b/gversion/gs/cookieclicker/snd/cymbalCrash.mp3 differ diff --git a/gversion/gs/cookieclicker/snd/cymbalRev.mp3 b/gversion/gs/cookieclicker/snd/cymbalRev.mp3 new file mode 100644 index 0000000..90f39f3 Binary files /dev/null and b/gversion/gs/cookieclicker/snd/cymbalRev.mp3 differ diff --git a/gversion/gs/cookieclicker/snd/fortune.mp3 b/gversion/gs/cookieclicker/snd/fortune.mp3 new file mode 100644 index 0000000..bb03655 Binary files /dev/null and b/gversion/gs/cookieclicker/snd/fortune.mp3 differ diff --git a/gversion/gs/cookieclicker/snd/freezeGarden.mp3 b/gversion/gs/cookieclicker/snd/freezeGarden.mp3 new file mode 100644 index 0000000..3b61ab9 Binary files /dev/null and b/gversion/gs/cookieclicker/snd/freezeGarden.mp3 differ diff --git a/gversion/gs/cookieclicker/snd/growl.mp3 b/gversion/gs/cookieclicker/snd/growl.mp3 new file mode 100644 index 0000000..a70009c Binary files /dev/null and b/gversion/gs/cookieclicker/snd/growl.mp3 differ diff --git a/gversion/gs/cookieclicker/snd/harvest1.mp3 b/gversion/gs/cookieclicker/snd/harvest1.mp3 new file mode 100644 index 0000000..a5b07ed Binary files /dev/null and b/gversion/gs/cookieclicker/snd/harvest1.mp3 differ diff --git a/gversion/gs/cookieclicker/snd/harvest2.mp3 b/gversion/gs/cookieclicker/snd/harvest2.mp3 new file mode 100644 index 0000000..89d1359 Binary files /dev/null and b/gversion/gs/cookieclicker/snd/harvest2.mp3 differ diff --git a/gversion/gs/cookieclicker/snd/harvest3.mp3 b/gversion/gs/cookieclicker/snd/harvest3.mp3 new file mode 100644 index 0000000..2009ccd Binary files /dev/null and b/gversion/gs/cookieclicker/snd/harvest3.mp3 differ diff --git a/gversion/gs/cookieclicker/snd/index.html b/gversion/gs/cookieclicker/snd/index.html new file mode 100644 index 0000000..2150a2a --- /dev/null +++ b/gversion/gs/cookieclicker/snd/index.html @@ -0,0 +1,82 @@ + + + + Index of /cookieclicker/snd + + +

Index of /cookieclicker/snd

+
Icon  Name                    Last modified      Size  Description
[PARENTDIR] Parent Directory - +[SND] buy1.mp3 2015-11-05 14:28 3.1K +[SND] buy2.mp3 2015-11-05 14:28 3.1K +[SND] buy3.mp3 2015-11-05 14:28 3.1K +[SND] buy4.mp3 2015-11-05 14:28 3.1K +[SND] buyHeavenly.mp3 2015-11-05 17:22 9.1K +[SND] cashIn.mp3 2020-05-16 01:22 8.9K +[SND] cashIn2.mp3 2020-05-16 19:26 8.4K +[SND] cashOut.mp3 2020-05-16 01:16 6.6K +[SND] charging.mp3 2015-12-20 15:56 34K +[SND] chime.mp3 2016-02-03 12:45 30K +[SND] choir.mp3 2015-11-03 19:55 32K +[SND] click1.mp3 2015-10-30 22:47 2.5K +[SND] click2.mp3 2015-10-30 22:47 2.5K +[SND] click3.mp3 2015-10-30 22:47 2.5K +[SND] click4.mp3 2015-10-30 22:57 2.5K +[SND] click5.mp3 2015-10-30 22:47 2.5K +[SND] click6.mp3 2015-10-30 22:57 2.5K +[SND] click7.mp3 2015-10-30 22:57 2.5K +[SND] clickOff.mp3 2015-11-02 07:04 3.1K +[SND] clickOn.mp3 2015-11-02 07:04 2.6K +[SND] clickb1.mp3 2016-02-03 18:56 1.1K +[SND] clickb2.mp3 2016-02-03 18:56 1.1K +[SND] clickb3.mp3 2016-02-03 18:56 1.1K +[SND] clickb4.mp3 2016-02-03 18:56 1.1K +[SND] clickb5.mp3 2016-02-03 18:56 1.1K +[SND] clickb6.mp3 2016-02-03 18:56 1.1K +[SND] clickb7.mp3 2016-02-03 18:56 1.1K +[SND] cookieBreak.mp3 2015-10-30 21:08 34K +[SND] cymbalCrash.mp3 2015-11-05 15:44 21K +[SND] cymbalRev.mp3 2015-11-05 16:09 25K +[SND] fortune.mp3 2019-09-23 14:07 20K +[SND] freezeGarden.mp3 2018-03-29 22:55 16K +[SND] growl.mp3 2020-06-14 23:36 3.7K +[SND] harvest1.mp3 2018-03-29 22:33 6.1K +[SND] harvest2.mp3 2018-03-29 22:33 6.1K +[SND] harvest3.mp3 2018-03-29 22:33 5.6K +[SND] jingle.mp3 2015-10-30 21:32 27K +[SND] jingleClick.mp3 2015-10-30 21:32 12K +[SND] levelPrestige.mp3 2015-12-17 02:03 7.1K +[SND] page.mp3 2015-10-30 09:53 5.1K +[SND] pop1.mp3 2015-11-02 08:09 3.1K +[SND] pop2.mp3 2015-11-02 08:09 3.1K +[SND] pop3.mp3 2015-11-02 08:09 3.1K +[SND] press.mp3 2015-10-30 09:37 3.6K +[SND] sell1.mp3 2015-11-05 14:32 3.1K +[SND] sell2.mp3 2015-11-05 14:32 3.1K +[SND] sell3.mp3 2015-11-05 14:32 3.1K +[SND] sell4.mp3 2015-11-05 14:32 3.1K +[SND] shimmerClick.mp3 2015-10-30 21:10 11K +[SND] smallCymbalCrash.mp3 2015-11-05 16:10 20K +[SND] smallTick.mp3 2015-11-02 07:09 2.1K +[SND] snarl.mp3 2020-06-14 23:15 5.9K +[SND] spell.mp3 2017-07-06 14:15 15K +[SND] spellFail.mp3 2017-07-06 14:29 9.8K +[SND] spirit.mp3 2017-07-06 14:16 11K +[SND] squish1.mp3 2015-11-02 07:58 7.6K +[SND] squish2.mp3 2015-11-02 07:58 7.1K +[SND] squish3.mp3 2015-11-02 07:58 8.1K +[SND] squish4.mp3 2015-11-02 07:58 5.6K +[SND] switch.mp3 2017-07-06 14:40 2.9K +[SND] swooshIn.mp3 2015-11-02 07:16 4.6K +[SND] swooshOut.mp3 2015-11-02 07:16 4.1K +[SND] thud.mp3 2015-12-20 15:42 19K +[SND] tick.mp3 2015-10-30 08:50 2.6K +[SND] till1.mp3 2018-03-29 22:10 5.6K +[SND] till2.mp3 2018-03-29 22:10 5.1K +[SND] till3.mp3 2018-03-29 22:10 5.6K +[SND] tillb1.mp3 2018-03-29 22:10 4.9K +[SND] tillb2.mp3 2018-03-29 22:10 5.1K +[SND] tillb3.mp3 2018-03-29 22:10 6.1K +[SND] toneTick.mp3 2018-03-29 22:43 3.6K +[SND] upgrade.mp3 2017-06-05 09:26 4.3K +
+ diff --git a/gversion/gs/cookieclicker/snd/jingle.mp3 b/gversion/gs/cookieclicker/snd/jingle.mp3 new file mode 100644 index 0000000..ec37acd Binary files /dev/null and b/gversion/gs/cookieclicker/snd/jingle.mp3 differ diff --git a/gversion/gs/cookieclicker/snd/jingleClick.mp3 b/gversion/gs/cookieclicker/snd/jingleClick.mp3 new file mode 100644 index 0000000..6f95566 Binary files /dev/null and b/gversion/gs/cookieclicker/snd/jingleClick.mp3 differ diff --git a/gversion/gs/cookieclicker/snd/levelPrestige.mp3 b/gversion/gs/cookieclicker/snd/levelPrestige.mp3 new file mode 100644 index 0000000..4201126 Binary files /dev/null and b/gversion/gs/cookieclicker/snd/levelPrestige.mp3 differ diff --git a/gversion/gs/cookieclicker/snd/list.txt b/gversion/gs/cookieclicker/snd/list.txt new file mode 100644 index 0000000..6f453c9 --- /dev/null +++ b/gversion/gs/cookieclicker/snd/list.txt @@ -0,0 +1,72 @@ +buy1.mp3 +buy2.mp3 +buy3.mp3 +buy4.mp3 +buyHeavenly.mp3 +cashIn.mp3 +cashIn2.mp3 +cashOut.mp3 +charging.mp3 +chime.mp3 +choir.mp3 +click1.mp3 +click2.mp3 +click3.mp3 +click4.mp3 +click5.mp3 +click6.mp3 +click7.mp3 +clickOff.mp3 +clickOn.mp3 +clickb1.mp3 +clickb2.mp3 +clickb3.mp3 +clickb4.mp3 +clickb5.mp3 +clickb6.mp3 +clickb7.mp3 +cookieBreak.mp3 +cymbalCrash.mp3 +cymbalRev.mp3 +fortune.mp3 +freezeGarden.mp3 +growl.mp3 +harvest1.mp3 +harvest2.mp3 +harvest3.mp3 +jingle.mp3 +jingleClick.mp3 +levelPrestige.mp3 +page.mp3 +pop1.mp3 +pop2.mp3 +pop3.mp3 +press.mp3 +sell1.mp3 +sell2.mp3 +sell3.mp3 +sell4.mp3 +shimmerClick.mp3 +smallCymbalCrash.mp3 +smallTick.mp3 +snarl.mp3 +spell.mp3 +spellFail.mp3 +spirit.mp3 +squish1.mp3 +squish2.mp3 +squish3.mp3 +squish4.mp3 +switch.mp3 +swooshIn.mp3 +swooshOut.mp3 +thud.mp3 +tick.mp3 +till1.mp3 +till2.mp3 +till3.mp3 +tillb1.mp3 +tillb2.mp3 +tillb3.mp3 +toneTick.mp3 +upgrade.mp3 diff --git a/gversion/gs/cookieclicker/snd/page.mp3 b/gversion/gs/cookieclicker/snd/page.mp3 new file mode 100644 index 0000000..5ed2d7e Binary files /dev/null and b/gversion/gs/cookieclicker/snd/page.mp3 differ diff --git a/gversion/gs/cookieclicker/snd/pop1.mp3 b/gversion/gs/cookieclicker/snd/pop1.mp3 new file mode 100644 index 0000000..dbbd28a Binary files /dev/null and b/gversion/gs/cookieclicker/snd/pop1.mp3 differ diff --git a/gversion/gs/cookieclicker/snd/pop2.mp3 b/gversion/gs/cookieclicker/snd/pop2.mp3 new file mode 100644 index 0000000..10913d4 Binary files /dev/null and b/gversion/gs/cookieclicker/snd/pop2.mp3 differ diff --git a/gversion/gs/cookieclicker/snd/pop3.mp3 b/gversion/gs/cookieclicker/snd/pop3.mp3 new file mode 100644 index 0000000..e9eb3bf Binary files /dev/null and b/gversion/gs/cookieclicker/snd/pop3.mp3 differ diff --git a/gversion/gs/cookieclicker/snd/press.mp3 b/gversion/gs/cookieclicker/snd/press.mp3 new file mode 100644 index 0000000..a322e8f Binary files /dev/null and b/gversion/gs/cookieclicker/snd/press.mp3 differ diff --git a/gversion/gs/cookieclicker/snd/sell1.mp3 b/gversion/gs/cookieclicker/snd/sell1.mp3 new file mode 100644 index 0000000..719aa61 Binary files /dev/null and b/gversion/gs/cookieclicker/snd/sell1.mp3 differ diff --git a/gversion/gs/cookieclicker/snd/sell2.mp3 b/gversion/gs/cookieclicker/snd/sell2.mp3 new file mode 100644 index 0000000..d52fe7b Binary files /dev/null and b/gversion/gs/cookieclicker/snd/sell2.mp3 differ diff --git a/gversion/gs/cookieclicker/snd/sell3.mp3 b/gversion/gs/cookieclicker/snd/sell3.mp3 new file mode 100644 index 0000000..454aa1d Binary files /dev/null and b/gversion/gs/cookieclicker/snd/sell3.mp3 differ diff --git a/gversion/gs/cookieclicker/snd/sell4.mp3 b/gversion/gs/cookieclicker/snd/sell4.mp3 new file mode 100644 index 0000000..1d9a848 Binary files /dev/null and b/gversion/gs/cookieclicker/snd/sell4.mp3 differ diff --git a/gversion/gs/cookieclicker/snd/shimmerClick.mp3 b/gversion/gs/cookieclicker/snd/shimmerClick.mp3 new file mode 100644 index 0000000..ad7c9ad Binary files /dev/null and b/gversion/gs/cookieclicker/snd/shimmerClick.mp3 differ diff --git a/gversion/gs/cookieclicker/snd/smallCymbalCrash.mp3 b/gversion/gs/cookieclicker/snd/smallCymbalCrash.mp3 new file mode 100644 index 0000000..40c74a5 Binary files /dev/null and b/gversion/gs/cookieclicker/snd/smallCymbalCrash.mp3 differ diff --git a/gversion/gs/cookieclicker/snd/smallTick.mp3 b/gversion/gs/cookieclicker/snd/smallTick.mp3 new file mode 100644 index 0000000..c42ed98 Binary files /dev/null and b/gversion/gs/cookieclicker/snd/smallTick.mp3 differ diff --git a/gversion/gs/cookieclicker/snd/snarl.mp3 b/gversion/gs/cookieclicker/snd/snarl.mp3 new file mode 100644 index 0000000..c249d06 Binary files /dev/null and b/gversion/gs/cookieclicker/snd/snarl.mp3 differ diff --git a/gversion/gs/cookieclicker/snd/spell.mp3 b/gversion/gs/cookieclicker/snd/spell.mp3 new file mode 100644 index 0000000..4e7d133 Binary files /dev/null and b/gversion/gs/cookieclicker/snd/spell.mp3 differ diff --git a/gversion/gs/cookieclicker/snd/spellFail.mp3 b/gversion/gs/cookieclicker/snd/spellFail.mp3 new file mode 100644 index 0000000..d1691db Binary files /dev/null and b/gversion/gs/cookieclicker/snd/spellFail.mp3 differ diff --git a/gversion/gs/cookieclicker/snd/spirit.mp3 b/gversion/gs/cookieclicker/snd/spirit.mp3 new file mode 100644 index 0000000..bff6b49 Binary files /dev/null and b/gversion/gs/cookieclicker/snd/spirit.mp3 differ diff --git a/gversion/gs/cookieclicker/snd/squish1.mp3 b/gversion/gs/cookieclicker/snd/squish1.mp3 new file mode 100644 index 0000000..a22da72 Binary files /dev/null and b/gversion/gs/cookieclicker/snd/squish1.mp3 differ diff --git a/gversion/gs/cookieclicker/snd/squish2.mp3 b/gversion/gs/cookieclicker/snd/squish2.mp3 new file mode 100644 index 0000000..94ae7f3 Binary files /dev/null and b/gversion/gs/cookieclicker/snd/squish2.mp3 differ diff --git a/gversion/gs/cookieclicker/snd/squish3.mp3 b/gversion/gs/cookieclicker/snd/squish3.mp3 new file mode 100644 index 0000000..52c2b21 Binary files /dev/null and b/gversion/gs/cookieclicker/snd/squish3.mp3 differ diff --git a/gversion/gs/cookieclicker/snd/squish4.mp3 b/gversion/gs/cookieclicker/snd/squish4.mp3 new file mode 100644 index 0000000..5efce97 Binary files /dev/null and b/gversion/gs/cookieclicker/snd/squish4.mp3 differ diff --git a/gversion/gs/cookieclicker/snd/switch.mp3 b/gversion/gs/cookieclicker/snd/switch.mp3 new file mode 100644 index 0000000..1b1bc64 Binary files /dev/null and b/gversion/gs/cookieclicker/snd/switch.mp3 differ diff --git a/gversion/gs/cookieclicker/snd/swooshIn.mp3 b/gversion/gs/cookieclicker/snd/swooshIn.mp3 new file mode 100644 index 0000000..5d29d61 Binary files /dev/null and b/gversion/gs/cookieclicker/snd/swooshIn.mp3 differ diff --git a/gversion/gs/cookieclicker/snd/swooshOut.mp3 b/gversion/gs/cookieclicker/snd/swooshOut.mp3 new file mode 100644 index 0000000..60e9541 Binary files /dev/null and b/gversion/gs/cookieclicker/snd/swooshOut.mp3 differ diff --git a/gversion/gs/cookieclicker/snd/thud.mp3 b/gversion/gs/cookieclicker/snd/thud.mp3 new file mode 100644 index 0000000..2b66148 Binary files /dev/null and b/gversion/gs/cookieclicker/snd/thud.mp3 differ diff --git a/gversion/gs/cookieclicker/snd/tick.mp3 b/gversion/gs/cookieclicker/snd/tick.mp3 new file mode 100644 index 0000000..19b21c0 Binary files /dev/null and b/gversion/gs/cookieclicker/snd/tick.mp3 differ diff --git a/gversion/gs/cookieclicker/snd/till1.mp3 b/gversion/gs/cookieclicker/snd/till1.mp3 new file mode 100644 index 0000000..05d4317 Binary files /dev/null and b/gversion/gs/cookieclicker/snd/till1.mp3 differ diff --git a/gversion/gs/cookieclicker/snd/till2.mp3 b/gversion/gs/cookieclicker/snd/till2.mp3 new file mode 100644 index 0000000..de5576d Binary files /dev/null and b/gversion/gs/cookieclicker/snd/till2.mp3 differ diff --git a/gversion/gs/cookieclicker/snd/till3.mp3 b/gversion/gs/cookieclicker/snd/till3.mp3 new file mode 100644 index 0000000..51942b7 Binary files /dev/null and b/gversion/gs/cookieclicker/snd/till3.mp3 differ diff --git a/gversion/gs/cookieclicker/snd/tillb1.mp3 b/gversion/gs/cookieclicker/snd/tillb1.mp3 new file mode 100644 index 0000000..1ab21f3 Binary files /dev/null and b/gversion/gs/cookieclicker/snd/tillb1.mp3 differ diff --git a/gversion/gs/cookieclicker/snd/tillb2.mp3 b/gversion/gs/cookieclicker/snd/tillb2.mp3 new file mode 100644 index 0000000..3bbc939 Binary files /dev/null and b/gversion/gs/cookieclicker/snd/tillb2.mp3 differ diff --git a/gversion/gs/cookieclicker/snd/tillb3.mp3 b/gversion/gs/cookieclicker/snd/tillb3.mp3 new file mode 100644 index 0000000..3b531ab Binary files /dev/null and b/gversion/gs/cookieclicker/snd/tillb3.mp3 differ diff --git a/gversion/gs/cookieclicker/snd/toneTick.mp3 b/gversion/gs/cookieclicker/snd/toneTick.mp3 new file mode 100644 index 0000000..e6553ab Binary files /dev/null and b/gversion/gs/cookieclicker/snd/toneTick.mp3 differ diff --git a/gversion/gs/cookieclicker/snd/upgrade.mp3 b/gversion/gs/cookieclicker/snd/upgrade.mp3 new file mode 100644 index 0000000..a008ac7 Binary files /dev/null and b/gversion/gs/cookieclicker/snd/upgrade.mp3 differ diff --git a/gversion/gs/cookieclicker/style.css b/gversion/gs/cookieclicker/style.css new file mode 100644 index 0000000..1c88559 --- /dev/null +++ b/gversion/gs/cookieclicker/style.css @@ -0,0 +1,3330 @@ +/* reset CSS */ +html, body, div, span, applet, object, iframe, +h1, h2, h3, h4, h5, h6, p, blockquote, pre, +a, abbr, acronym, address, big, cite, code, +del, dfn, em, img, ins, kbd, q, s, samp, +small, strike, strong, sub, sup, tt, var, +b, u, i, center, +dl, dt, dd, ol, ul, li, +fieldset, form, label, legend, +table, caption, tbody, tfoot, thead, tr, th, td, +article, aside, canvas, details, embed, +figure, figcaption, footer, header, hgroup, +menu, nav, output, ruby, section, summary, +time, mark, audio, video { + margin: 0; + padding: 0; + border: 0; + font-size: 100%; + font: inherit; + vertical-align: baseline; +} +/* HTML5 display-role reset for older browsers */ +article, aside, details, figcaption, figure, +footer, header, hgroup, menu, nav, section { + display: block; +} +body { + line-height: 1; +} +ol, ul { + list-style: none; +} +blockquote, q { + quotes: none; +} +blockquote:before, blockquote:after, +q:before, q:after { + content: ''; + content: none; +} +table { + border-collapse: collapse; + border-spacing: 0; +} +button {outline:none;border:none;} +button:focus {outline:1px solid rgba(255,200,100,0.5);outline-offset:-1px;} + + +/*===================================================================================== +BASE +=======================================================================================*/ +html,body +{ + width:100%; + height:100%; +} + +body +{ + -webkit-touch-callout: none; + -webkit-user-select: none; + -khtml-user-select: none; + -moz-user-select: -moz-none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + touch-action: manipulation; + + color:#fff; + background:#000 url(img/darkNoise.jpg); + font-family:Tahoma,Arial,sans-serif; + font-size:13px; + + overflow:hidden; +} +.selectable +{ + -webkit-touch-callout: text; + -webkit-user-select: text; + -khtml-user-select: text; + -moz-user-select: text; + -ms-user-select: text; + user-select: text; +} + +#wrapper +{ + width:100%; + height:100%; + position:absolute; + left:0px; + top:0px; + right:0px; + bottom:0px; + /*min-width:1280px;*/ + transform-origin:0 0; +} + +small +{ + font-size:80%; +} + +a,a:visited +{ + text-decoration:underline; + cursor:pointer; + color:#ccc; +} +a:hover +{ + text-shadow:0px 0px 3px #fff; + color:#fff; +} +a:active +{ + opacity:0.8; + background:transparent; +} + +.inset +{ + /*box-shadow:0px 0px 12px #000 inset;*/ +} + +.titleFont,.title,.section,.lockedTitle,.smallFancyButton +{ + font-family: 'Merriweather', Georgia,serif; +} +.title,.section,.lockedTitle +{ + font-size:28px; + text-shadow:0px 1px 4px #000; + color:#fff; +} + +/*===================================================================================== +SECTIONS +=======================================================================================*/ +.section +{ + font-variant:small-caps; + text-align:center; + padding:0px 16px; + background:linear-gradient(to right,rgba(0,0,0,0),rgba(0,0,0,0),rgba(0,0,0,0.5),rgba(0,0,0,0),rgba(0,0,0,0)); + margin:12px 0px; + text-shadow:0px -2px 6px rgba(255,255,200,0.6),0px 1px 0px rgba(100,100,100,1),0px 2px 4px rgba(0,0,0,1); +} +.section:after +{ + content:''; + display:block; + background:linear-gradient(to right,rgba(255,255,255,0),rgba(255,255,255,0),rgba(255,255,255,0.25),rgba(255,255,255,0),rgba(255,255,255,0)); + height:1px; + margin:6px 0px; +} +.section:before +{ + content:''; + display:block; + background:linear-gradient(to right,rgba(255,255,255,0),rgba(255,255,255,0),rgba(255,255,255,0.25),rgba(255,255,255,0),rgba(255,255,255,0)); + height:1px; + margin:6px 0px; +} +.subsection +{ + padding:8px 0px; + font-size:14px; +} +.subsection div.title +{ + font-size:22px; + padding-left:16px; + margin-bottom:8px; + background:linear-gradient(to right,rgba(0,0,0,0.5),rgba(0,0,0,0),rgba(0,0,0,0),rgba(0,0,0,0)); +} +.subsection div.title:after +{ + content:''; + display:block; + background:linear-gradient(to right,rgba(255,255,255,0.25),rgba(255,255,255,0)); + height:1px; + width:50%; + margin:6px 0px; + margin-left:-16px; +} +.subsection div.title:before +{ + content:''; + display:block; + background:linear-gradient(to right,rgba(255,255,255,0.25),rgba(255,255,255,0)); + height:1px; + width:50%; + margin:6px 0px; + margin-left:-16px; +} +.update +{ + -webkit-touch-callout: auto; + -webkit-user-select: auto; + -khtml-user-select: auto; + -moz-user-select: auto; + -moz-user-select: auto; + -ms-user-select: auto; + user-select: auto; +} +.update .title +{ + color:#69c; +} +.update.small .title +{ + font-size:16px; + opacity:0.8; + color:#fff; +} +.listing +{ + padding:3px 16px; + font-size:13px; +} +.listing b +{ + font-weight:bold; + opacity:0.6; +} +.listing small +{ + font-size:11px; + opacity:0.9; +} +.listing label +{ + /* + font-size:12px; + border-bottom:1px solid rgba(255,255,255,0.25); + border-right:1px solid rgba(255,255,255,0.25); + opacity:0.5; + padding-left:16px; + padding-bottom:2px; + padding-right:4px; + position:relative; + left:-4px; + top:-2px; + background:linear-gradient(to right,rgba(0,0,0,0),rgba(0,0,0,0),rgba(0,0,0,0.5)); + */ + font-size:11px; + color:rgba(255,255,255,0.5); + border-bottom:1px dashed rgba(255,255,255,0.25); + padding:2px 8px; +} + +.hidden +{ + visibility:hidden; +} +.toggledOff +{ + opacity:0; + display:none; +} +.listing:hover .hidden +{ + visibility:visible; +} + +.optionBox +{ + text-align:center; + clear:both; + margin-bottom:-12px; + overflow:hidden; +} +.optionBox .option +{ +} +.optionBox .option.focused +{ + text-decoration:underline; +} +a.option.big +{ + font-size:30px; + margin:auto; + padding:8px 16px; + width:80%; +} +a.option.framed.large small,.particle small {font-size:65%;} +a.option.framed.large +{ + font-size:20px; + margin:4px auto; + padding:6px 12px; + background:#058; + box-shadow:0px 0px 1px 2px rgba(0,0,0,0.5),0px 2px 4px rgba(0,0,0,0.25),0px 1px 1px 1px rgba(0,0,0,0.5) inset,0px 0px 12px 2px #0cf inset; + text-shadow:0px 1px 2px #000; +} +a.option.framed.large:hover +{ + background:#0cf; + box-shadow:0px 0px 1px 2px rgba(0,0,0,0.5),0px 2px 4px rgba(0,0,0,0.25),0px 1px 1px 1px rgba(0,0,0,0.5) inset,0px 0px 12px 2px #8ef inset; + text-shadow:0px 1px 2px #000; + color:#fff; +} +a.option.framed.large.red +{ + background:#c30; + box-shadow:0px 0px 1px 2px rgba(0,0,0,0.5),0px 2px 4px rgba(0,0,0,0.25),0px 1px 1px 1px rgba(0,0,0,0.5) inset,0px 0px 12px 2px #f64 inset; +} +a.option.framed.large.red:hover +{ + background:#f64; + box-shadow:0px 0px 1px 2px rgba(0,0,0,0.5),0px 2px 4px rgba(0,0,0,0.25),0px 1px 1px 1px rgba(0,0,0,0.5) inset,0px 0px 12px 2px #fc7 inset; +} +a.option,.info a,a.smallFancyButton +{ + display:inline-block; + border:1px solid #ccc; + background:#000; + margin:2px 4px 2px 0px; + color:#ccc; + font-size:12px; + padding:4px 8px; + text-decoration:none; +} +a.option.off {opacity:0.5;} +a.option:hover,.info a:hover,a.smallFancyButton:hover +{ + border-color:#fff; + color:#fff; + text-shadow:none; +} +a.option:active,.info a:active,a.smallFancyButton:active +{ + background-color:#333; +} +.warning,a.option.warning +{ + color:#c00; + border-color:#c00; +} +a.option.warning:hover +{ + border-color:#f33; + color:#f33; +} +a.option.warning:active +{ + background-color:#300; +} + +.neato,a.option.neato +{ + color:#096; + border-color:#096; +} +a.option.neato:hover +{ + border-color:#3c9; + color:#3c9; +} +a.option.neato:active +{ + background-color:#032; +} +.info a +{ + border-color:#666; + background:#eee; + color:#666; + padding:2px 6px; +} +.info a:hover +{ + border-color:#000; + background-color:#fff; + color:#000; +} +.info a:active +{ + background-color:#999; +} + +/*===================================================================================== +oh forget it this is just a mess +=======================================================================================*/ +#backgroundLayers, #backgroundLayers div +{ + width:100%; + height:100%; + position:absolute; + left:0px; + top:0px; +} + +#backgroundCanvas,#backgroundLeftCanvas +{ + position:absolute; + left:0px; + top:0px; +} + +.offWeb .supportComment,.offWeb .adBanner,.offWeb #support,.offWeb #smallSupport,.offWeb .ad{display:none;} + +.offWeb #topBar{display:none;} +.onWeb #topBar{visibility:visible;} +#topBar +{ + visibility:hidden; + position:absolute; + left:0px; + top:0px; + width:100%; + height:32px; + background:url(img/darkNoiseTopBar.jpg) repeat-x bottom; + color:#ccc; +} +#topBar>div +{ + display:inline-block; + float:left; + border-right:1px solid #000; + box-shadow:0px 0px 3px 1px rgba(255,255,255,0.2) inset; + padding:7px 8px 9px 8px; +} +#topBar a +{color:#fff;} +#topBar a.blueLink +{color:#06c;} +#topBar a.blueLink:hover +{color:#28f;text-shadow:0px 0px 3px #06c;} +#topBar a.lightblueLink +{color:#6ad3ff;} +#topBar a.lightblueLink:hover +{color:#74fffd;text-shadow:0px 0px 3px #6ad3ff;} +a.orangeLink,#topBar a.orangeLink +{color:#f65f4d;} +a.orangeLink:hover,#topBar a.orangeLink:hover +{color:#ff9580;text-shadow:0px 0px 3px #f65f4d;} + +#topBar>#links +{ + position:relative; + z-index:10000000; + float:right; + cursor:pointer; +} + +.hoverable +{ + text-align:left; + opacity:0; + transition:max-height 0.25s ease-out,opacity 0.25s ease-out; + position:absolute; + left:0px; + top:32px; + padding-right:1px; + width:100%; + max-height:0px; + overflow:hidden; + color:#fff; + box-shadow:0px 0px 4px rgba(255,255,255,0.2) inset,0px 2px 4px 2px rgba(0,0,0,0.5),0px 0px 0px 1px rgba(0,0,0,0.5); + background:url(img/darkNoise.jpg); +} +.hoverer:hover>.hoverable +{ + opacity:1; + max-height:400px; +} +.hoverable>div +{ + padding:8px 12px; +} +.hoverable a +{ + text-shadow:none; + display:block; + padding:5px 8px 7px 8px; +} +.hoverable a:nth-child(odd) +{ + background:rgba(255,255,255,0.05); +} +.hoverable a:hover +{ + text-shadow:none; + background:rgba(255,255,255,0.2); + box-shadow:0px 0px 4px rgba(255,255,255,0.2) inset,0px 0px 2px 1px rgba(0,0,0,0.5); +} + + +#offGameMessageWrap +{ + display:table; + position:absolute; + top:0; + left:0; + height:100%; + width:100%; + background:#111 url(img/darkNoise.jpg); + background:url(img/shadedBorders.png) left top/100% 100%,#111 url(img/darkNoise.jpg); + text-align:center; + z-index:1000000000; + line-height:150%; + font-size:20px; +} +#offGameMessage +{ + display:table-cell; + vertical-align:middle; + position:relative; +} +#loader +{ + position:relative; + padding:32px; + padding-top:110px; + animation-name:appear; + animation-iteration-count:1; + animation-timing-function:ease-out; + animation-duration:0.5s; +} +@keyframes appear +{ + from {opacity:0;top:20px;} + to {opacity:1;top:0px;} +} +#loading +{ + text-shadow:0px 0px 3px rgba(255,255,255,0.5),0px 0px 20px #39f; + animation-name:blink; + animation-iteration-count:infinite; + animation-timing-function:ease-in-out; + animation-duration:0.75s; +} +.blinking{animation-name:blink; + animation-iteration-count:infinite; + animation-timing-function:ease-in-out; + animation-duration:0.75s;} +@keyframes blink +{ + 0% {opacity:0.5;} + 50% {opacity:1;} + 100% {opacity:0.5;} +} +#ifIE9{display:none;} +#failedToLoad +{ + text-shadow:0px 0px 3px rgba(255,255,255,0.5),0px 0px 20px #f33; + animation-name:appearLater; + animation-iteration-count:1; + animation-timing-function:ease-out; + animation-duration:15s; +} +@keyframes appearLater +{ + 0% {opacity:0;} + 95% {opacity:0;} + 100% {opacity:1;} +} +.spinnyBig,.spinnySmall +{ + display:block; + width:100px; + height:100px; + position:absolute; + left:50%; + top:0px; + margin-left:-50px; + animation-name:loadSpin; + animation-iteration-count:infinite; + animation-timing-function:ease-in-out; +} +.spinnyBig +{ + background:url(img/spinnyBig.png); + animation-duration:5s; +} +.spinnySmall +{ + background:url(img/spinnySmall.png); + animation-duration:9s; +} +@keyframes loadSpin +{ + 0% {transform:rotate(0deg);} + 100% {transform:rotate(360deg);} +} + +.langSelectButton +{ + background:rgba(50,50,50,0.25); + text-shadow:0px 1px 2px #000; + box-shadow:0px 1px 0px rgba(255,255,255,0.5) inset, 0px 1px 4px rgba(128,255,255,0.2) inset,0px 2px 2px rgba(0,0,0,1); + padding:1px 6px; + margin:2px auto; + width:200px; + font-size:14px; + text-decoration:underline; + color:rgba(255,255,255,0.8); + transition:color 0.2s,box-shadow 0.2s; + cursor:pointer; + z-index:1; + position:relative; + border-radius:3px; +} +.langSelectButton:hover,.langSelectButton.selected +{ + background:rgba(50,50,50,0.5); + box-shadow:0px 0px 0px 1px rgba(255,255,255,1) inset, 0px 1px 4px 2px rgba(128,255,255,0.6) inset,0px 4px 2px 2px rgba(0,0,0,1); + z-index:10; + color:rgba(255,255,255,1); +} +.langSelectButton:hover:before +{ + content:''; + width:22px; + height:22px; + position:absolute; + left:0px; + top:0px; + background:url(img/tinyglobe.gif); + pointer-events:none; + display:block; + transform:scale(0.75); +} + +#game +{ + position:absolute; + left:0px; + top:0px; + right:0px; + bottom:0px; + overflow:hidden; +} +.onWeb #game{top:32px;} +.offWeb #game{top:0px;} +#sectionLeft +{ + position:absolute; + left:0px; + top:0px; + width:30%; + bottom:0px; + min-width:100px; + /*overflow:hidden;*/ +} +/*#sectionLeftExtra{position:absolute;left:0px;top:0px;}*/ +#sectionMiddle +{ + position:absolute; + left:30%; + padding-left:16px; + margin-right:15px; + top:0px; + right:318px; + bottom:0px; + min-width:100px; + overflow:hidden; +} +#centerArea +{ + overflow-x:hidden; + overflow-y:scroll; + position:absolute; + top:112px; + left:16px; + bottom:0px; + right:0px; +} +#game.onMenu #centerArea +{ + background:#000 url(img/darkNoise.jpg); + background-image:url(img/shadedBorders.png),url(img/darkNoise.jpg); + background-size:100% 100%,auto; + background-color:#000; +} +#sectionRight +{ + height:100%; + position:absolute; + top:0px; + right:0px; + overflow-x:hidden; + overflow-y:scroll; + /*background:url(img/panelBG.png);*/ + background:rgba(0,0,0,0.5); +} + +#sectionLeft .blackGradient +{ + background:url(img/blackGradient.png) repeat-x bottom; + position:absolute; + left:0px; + right:0px; + top:300px; + height:640px; +} +#sectionLeft .blackFiller +{ + background:#000; + position:absolute; + left:0px; + right:0px; + top:940px; + bottom:0px; +} + + +.inner +{ + box-shadow:0px 0px 0px 1px rgba(255,255,255,0.2),0px 2px 4px 2px rgba(0,0,0,0.5); +} +.zebra:nth-child(even) +{ + background:rgba(255,255,255,0.05); +} +.zebra.selected +{ + background:rgba(255,255,255,0.1); + box-shadow:0px 0px 0px 1px rgba(255,255,255,0.5) inset; +} +.mouseOver{cursor:pointer;} +.mouseOver:hover +{ + filter:brightness(125%); + background:rgba(255,255,255,0.07); + text-shadow:0px -1px 6px #fff; +} +.mouseOver:active +{ + filter:brightness(75%); + background:rgba(0,0,0,0.07); +} + +/* this is a mess */ +.framed,a.option,.sliderBox,.smallFramed +{ + border:1px solid #e2dd48; + background:#000 url(img/darkNoise.jpg); + background-image:/*linear-gradient(rgba(255,255,255,0.05),rgba(0,0,0,0.4)),*/url(img/shadedBordersSoft.png),url(img/darkNoise.jpg); + background-size:/*100% 100%,*/100% 100%,auto; + background-color:#000; + border-radius:2px; + box-shadow:0px 0px 1px 2px rgba(0,0,0,0.5),0px 2px 4px rgba(0,0,0,0.25),0px 0px 2px 2px #000 inset,0px 1px 0px 1px rgba(255,255,255,0.5) inset; + text-shadow:0px 1px 1px #000; + color:#ccc; + line-height:100%; +} +.framed,a.option,a.option.framed,a.option.framed:hover,.smallFramed,a.smallFancyButton +{ + /*border-color:#dac56e #c07a36 #a44e36 #c07a36;*/ + /*border:1px solid #e2dd48;*/ + border-color:#ece2b6 #875526 #733726 #dfbc9a; +} +.smallFramed +{border-radius:8px;} +a.option,textarea,input[type="text"],.sliderBox,a.smallFancyButton +{ + border:1px solid #e2dd48; + border-color:#ece2b6 #875526 #733726 #dfbc9a; + border-radius:2px; +} +textarea,input[type="text"] +{ + border-radius:4px; + box-shadow:0px 0px 0px 1px rgba(0,0,0,0.5) inset,0px 1px 2px rgba(0,0,0,0.5) inset; +} +textarea:read-only,input[type="text"]:read-only +{ + background:transparent; + color:inherit; + text-shadow:0px 1px 0px #000; + resize:none; + border:1px solid rgba(255,255,255,0.25); +} +select,option{font-weight:bold;font-size:11px;margin:2px 4px 2px 0px;} +select{padding:2px;border-radius:4px;} +.smallFancyButton +{ + font-variant:small-caps; + font-weight:bold; + font-size:13px; +} +a.option.smallFancyButton +{ + vertical-align:middle; + width:130px; + text-align:right; +} + +.prefButton{position:relative;} +.prefButton:after{content:'';background:#fff;pointer-events:none;width:3px;height:3px;display:inline-block;border-radius:4px;box-shadow:0px 0px 2px 0px #3cf,0px 0px 6px 1px #33f;position:absolute;right:3px;top:50%;margin-top:-1px;} +.prefButton.off:after{background:rgba(255,255,255,0.15);box-shadow:1px 1px 0px rgba(255,255,255,0.3);} + +.tight +{ + box-sizing:border-box; + overflow:hidden; + text-align:center; +} +.tight .option +{ + box-sizing:border-box; + width:100%;clear:both; + margin:1px 0px; + font-size:11px; +} +.tight .option.halfLeft +{ + width:50%; + float:left;clear:left; +} +.tight .option.halfRight +{ + width:50%; + float:right;clear:right; +} +#prompt .tightInput +{ + margin:4px; + margin-top:0px; + padding:4px 8px; + width:100%; + box-sizing:border-box; + font-size:11px; +} + +.framed,a.option.framed +{ + padding:4px 8px; + margin:4px; + border:3px solid transparent; + border-image:url(img/frameBorder.png) 3 round; + border-radius:2px; + box-shadow:0px 0px 1px 2px rgba(0,0,0,0.5),0px 2px 4px rgba(0,0,0,0.25),0px 0px 6px 1px rgba(0,0,0,0.5) inset; + -webkit-transition: opacity 0.1s ease-out; + -moz-transition: opacity 0.1s ease-out; + -ms-transition: opacity 0.1s ease-out; + -o-transition: opacity 0.1s ease-out; + transition: opacity 0.1s ease-out; +} + +.sliderBox +{ + padding:4px 8px; + width:200px; + display:inline-block; + margin-bottom:2px; + margin-right:2px; +} +.sliderBox>div +{ + margin-bottom:4px; +} +.sliderBox>input +{ + display:block; + margin:2px auto; +} + +/* why, CSS? why? */ +input[type=range] +{ + -webkit-appearance:none; + width:100%; + height:12px; + margin:0px 0px; + border:0px solid #000; + cursor:pointer; + background:transparent; +} +input[type=range]:focus{outline:none;} +input[type=range]::-webkit-slider-runnable-track +{ + width:100%; + height:12px; + cursor:pointer; + background:#999; + border:0px solid #000; + border-radius:4px; + box-shadow:0px 0px 4px #000,0px 2px 3px rgba(0,0,0,0.5) inset; +} +input[type=range]::-webkit-slider-thumb +{ + border:0px solid #000; + height:12px; + width:12px; + background:#ccc; + box-shadow:0px 0px 4px #fff inset,0px 1px 3px 1px rgba(0,0,0,0.5); + cursor:pointer; + -webkit-appearance:none; + margin-top:0px; + border-radius:4px; +} +input[type=range]:active::-webkit-slider-thumb,input[type=range]:hover::-webkit-slider-thumb {background:#fff;} + +input[type=range]::-moz-range-track +{ + width:100%; + height:12px; + cursor:pointer; + background:#999; + border:0px solid #000; + border-radius:4px; + box-shadow:0px 0px 4px #000,0px 2px 3px rgba(0,0,0,0.5) inset; +} +input[type=range]::-moz-range-thumb +{ + border:0px solid #000; + height:12px; + width:12px; + background:#ccc; + box-shadow:0px 0px 4px #fff inset,0px 1px 3px 1px rgba(0,0,0,0.5); + cursor:pointer; + -webkit-appearance:none; + margin-top:0px; + border-radius:4px; +} +input[type=range]:active::-moz-range-thumb,input[type=range]:hover::-moz-range-thumb {background:#fff;} + +input[type=range]::-ms-track +{ + width:100%; + height:12px; + cursor:pointer; + background:#999; + border:0px solid #000; + border-radius:4px; + box-shadow:0px 0px 4px #000,0px 2px 3px rgba(0,0,0,0.5) inset; +} +input[type=range]::-ms-thumb +{ + border:0px solid #000; + height:12px; + width:12px; + background:#ccc; + box-shadow:0px 0px 4px #fff inset,0px 1px 3px 1px rgba(0,0,0,0.5); + cursor:pointer; + -webkit-appearance:none; + margin-top:0px; + border-radius:4px; +} +input[type=range]:active::-ms-thumb,input[type=range]:hover::-ms-thumb {background:#fff;} + + + +.framed b +{ + color:#fff; + font-weight:bold; +} +.framed .name +{ + font-weight:bold; + font-size:110%; + color:#fff; + margin:2px 0px; + /*text-shadow:0px 0px 2px rgba(255,255,255,0.3);*/ + text-shadow:0px -2px 4px rgba(255,255,200,0.4),0px 1px 0px rgba(100,100,100,1),0px 2px 4px rgba(0,0,0,1); +} +.framed q +{ + display:block; + position:relative; + text-align:right; + margin-top:8px; + font-style:italic; + color:rgba(255,255,255,0.5); + font-size:12px; + font-family:Georgia; + line-height:135%; +} +.framed q:before +{ + display:inline-block; + content:"“"; + font-size:14px; + font-family:Georgia; + font-weight:bold; +} +.framed q:after +{ + display:inline-block; + content:"”"; + font-size:14px; + font-family:Georgia; + font-weight:bold; + margin-top:-2px; +} +.framed .close +{ + position:absolute; + top:-5px; + right:0px; + padding:4px; +} +.close +{ + font-weight:bold; + font-size:16px; + text-shadow:0px 0px 2px #000,0px 0px 1px #000; + cursor:pointer; + font-family:Comic Sans MS; + padding:1px 8px 7px 8px; + z-index:1000; +} +.close:hover +{ + color:#fff; + text-shadow:0px 0px 2px #fff; +} +.sidenote +{ + position:absolute; + right:-6px; + bottom:6px; +} + +.menuClose +{ + position:absolute; + top:0px; + right:0px; + border-bottom-left-radius:36px; + padding:4px 12px 16px 18px; + font-size:24px; + box-shadow:-2px 2px 8px #000, 2px -2px 8px rgba(255,255,255,0.1) inset; +} +.menuClose:hover +{ + background:rgba(255,255,255,0.05); +} + +.block +{ + padding:8px; + margin:2px; + border-radius:4px; + border:1px solid rgba(255,255,255,0.1); + box-shadow:0px 0px 1px #000,0px 0px 1px #000 inset; +} + + +#tooltipAnchor +{ + position:absolute; + z-index:1000000000; + display:none; + transition:left 0.1s ease-out,right 0.1s ease-out,top 0.1s ease-out,bottom 0.1s ease-out; +} +#tooltip +{ + position:absolute; + -webkit-transition:none; + -moz-transition:none; + -ms-transition:none; + -o-transition:none; + transition:none; + pointer-events:none; + opacity:1; +} +.wobbling +{ + animation:wobble 0.1s ease-out; +} + +.line +{ + background:linear-gradient(to right,rgba(255,255,255,0),rgba(255,255,255,0.25),rgba(255,255,255,0)); + height:1px; + width:90%; + margin:6px auto; + position:relative; +} +.line:before,.line:after +{ + content:''; + display:block; + background:linear-gradient(to right,rgba(0,0,0,0),rgba(0,0,0,0.25),rgba(0,0,0,0)); + height:1px; + width:90%; + position:absolute; + left:0px; + bottom:1px; +} +.line:after +{ + bottom:-1px; +} +.description +{ + /*border-top:1px solid rgba(255,255,255,0.25);*/ + margin:4px 0px; +} +.descriptionBlock +{ + border-radius:6px; + background:rgba(255,255,255,0.1); + padding:2px 6px; + margin:3px 0px; + position:relative; + font-size:85%; + text-shadow:0px 1px 0px #000; +} +.descriptionBlock:before +{ + position:absolute; + display:block; + content:"\2022"; + left:-4px; + top:2px; + font-size:16px; +} + +q:before +{ + display:inline-block; + content:"\""; +} +q:after +{ + display:inline-block; + content:"\""; +} + + +.price +{ + font-weight:bold; + color:#6f6; + padding-left:18px; + position:relative; +} +.priceMult +{ + font-weight:bold; + color:#ffc; +} +.price .tinyCookie +{ + display:block; + position:absolute; + left:0px; + top:0px; + width:16px; + height:16px; + cursor:pointer; +} +.price.disabled, .disabled .price +{ + color:#f66; +} +.price:before +{ + content:''; + display:block; + position:absolute; + left:0px; + top:2px; + background:url(img/money.png); + width:16px; + height:16px; +} +.hasTinyCookie +{ + position:relative; + padding-left:18px; +} +.hasTinyCookie:before +{ + content:''; + display:block; + position:absolute; + left:0px; + top:0px; + background:url(img/money.png); + width:16px; + height:16px; +} +.heavenly.price:before +{ + background:url(img/heavenlyMoney.png); +} +.lump.price:before +{ + background:url(img/sugarLump.png); +} +.price.plain +{ + color:#fff; + display:inline-block; +} +.price.plain:before +{ + top:0px; +} + +#cookieAnchor +{ + position:absolute; + left:50%; + top:40%; +} +#bigCookie +{ + width:256px; + height:256px; + position:absolute; + left:-128px; + top:-128px; + /*background:url(img/perfectCookie.png); + background-size:256px 256px;*/ + background:url(img/empty.png);/* somehow necessary; an empty div with no background seems to be click-through */ + cursor:pointer; + z-index:10000; + border-radius:128px; + border:none; + overflow:hidden; + outline:none; +} +.elderWrath #bigCookie +{ + background:url(img/imperfectCookie.png); + background-size:256px 256px; +} +#cookieNumbers{position:absolute;top:-80px;} +.cookieNumber +{ + position:absolute; + pointer-events:none; + left:-100px; + top:0px; + width:200px; + z-index:100; + text-align:center; + text-shadow:none; +} +#cookieCursors{position:absolute;z-index:5;} +.cursor +{ + width:32px; + height:32px; + position:absolute; + background:url(img/cursor.png); +} +.cookieParticle +{ + width:64px; + height:64px; + margin-left:-32px; + margin-top:-32px; + position:absolute; + background:url(img/smallCookies.png); + opacity:0; +} +#particles {position:absolute;left:0px;top:0px;z-index:100000000000;} +.particle +{ + position:absolute; + pointer-events:none; + left:-200px; + bottom:0px; + width:400px; + z-index:100000000; + text-align:center; + text-shadow:1px 1px 1px #000,0px 0px 6px #000; + font-size:24px; +} +.particle.title +{ + background:rgba(0,0,0,0.5); + box-shadow:0px 0px 8px 8px rgba(0,0,0,0.5); + border-radius:16px; + display:none; +} + +#milk +{ + width:100%; + height:0%; + position:absolute; + left:0px; + bottom:0px; + z-index:100; + opacity:0.9; +} +.milkLayer +{ + width:100%; + height:100%; + position:absolute; + left:0px; + top:0px; + background-repeat:repeat-x; +} +#cookies +{ + position:absolute; + left:0px; + top:10%; + width:100%; + text-align:center; + z-index:200; + background:#000; + background:rgba(0,0,0,0.4); + padding:2px 0px; + pointer-events:none; + text-shadow:1px 0px 0px #000,-1px 0px 0px #000,0px 1px 0px #000,0px -1px 0px #000,0px 1px 4px #000; +} +#cookiesPerSecond +{ + font-size:50%; +} +#cookiesPerSecond.wrinkled +{ + color:#f00; +} +.monospace +{ + font-family:Courier,monospace; + font-weight:bold; +} +#bakeryNameAnchor +{ + position:absolute; + left:0px; + top:10%; + width:100%; + z-index:200; +} +#bakeryName +{ + position:absolute; + left:0px; + bottom:8px; + left:12.5%; + width:75%; + text-align:center; + font-size:20px; + background:#000; + background:rgba(0,0,0,0.4); + border-radius:12px; + padding:4px 0px; + cursor:pointer; + color:rgba(255,255,255,0.8); +} +#bakeryName:hover +{ + color:#fff; + text-shadow:0px 0px 8px #fff; +} + +#specialPopup +{ + position:absolute; + left:50%; + margin-left:-185px; + bottom:32px; + width:350px; + min-height:8px; + z-index:20000; + transition:bottom 0.2s ease-out,opacity 0.1s ease-out; + text-align:center; +} +#specialPopup.onScreen +{ + bottom:32px; + opacity:1; +} +#specialPopup.offScreen +{ + bottom:-32px; + pointer-events:none; + opacity:0; +} + +.separatorLeft, .separatorRight +{ + width:16px; + height:100%; + background:url(img/panelVertical.png) repeat-y; + background:url(img/panelGradientTop.png) no-repeat top left,url(img/panelGradientBottom.png) no-repeat bottom left,url(img/panelVertical.png) repeat-y; + position:absolute; + top:0px; + bottom:0px; + z-index:100; +} +.separatorLeft +{ + left:30%; +} +.separatorRight +{ + right:317px; +} +.separatorBottom +{ + width:100%; + height:16px; + background:url(img/panelHorizontal.png) repeat-x; + background:url(img/panelGradientLeft.png) no-repeat top left,url(img/panelGradientRight.png) no-repeat top right,url(img/panelHorizontal.png) repeat-x; + position:absolute; + left:0px; + bottom:0px; +} + +.panelButton +{ + background:url(img/panelMenu3.png); + background-position:0px 0px; + position:absolute; + z-index:100; + width:100px; + height:48px; + text-align:center; + font-size:18px; + cursor:pointer; + + box-sizing:border-box; + padding-top:16px; + + color:#999; + text-shadow:0px 1px 0px #444,0px 0px 4px #000; +} +.panelButton:hover,.panelButton.selected +{ + z-index:1000; + color:#fff; + text-shadow:0px 1px 0px #999,0px 0px 4px #000; +} +.panelButton>div:first-child{display:inline-block;} +#prefsButton{top:0px;left:0px; padding-top:16px; padding-right:2px; background-position:0px 0px;} +#statsButton{bottom:16px;left:0px; padding-top:14px; padding-right:2px; background-position:0px -48px;} +#logButton{top:0px;right:0px; padding-top:16px; padding-left:2px; background-position:-100px 0px;} +#legacyButton{bottom:16px;right:0px;padding-top:14px; padding-left:2px; background-position:-100px -48px;} +/*#prefsButton:hover,#prefsButton.selected{ background-position:0px -96px;}*/ +#statsButton:hover,#statsButton.selected{ background-position:0px -144px;} +#logButton:hover,#logButton.selected{ background-position:-100px -96px;} +/*#legacyButton:hover,#legacyButton.selected{ background-position:-100px -144px;}*/ + +.subButton +{ + border-radius:5px; + box-shadow:0px 1px 0px rgba(250,180,150,0.75) inset,0px 0px 0px 1px rgba(0,0,0,0.75),0px 2px 3px rgba(250,180,150,0.5) inset,0px 1px 0px 1px rgba(250,180,150,0.25); + padding:6px 12px; + font-size:14px; + position:relative; + top:-4px; +} +#prefsButton:hover>.subButton{box-shadow:0px 1px 0px rgba(250,180,150,1) inset,0px 0px 0px 1px rgba(0,0,0,0.75),0px 2px 3px rgba(250,180,150,0.75) inset,0px 1px 0px 1px rgba(250,180,150,0.25);} + +#logButton.hasUpdate {color:#fff;} +#logButton.hasUpdate>div:first-child {position:relative;top:-8px;} +#logButton.hasUpdate:before +{ + content:''; + display:block; + position:absolute; + left:-40px; + top:10px; + width:48px; + height:38px; + background:url(img/pointGlow.gif); + animation:pointGlowBump 0.6s infinite ease-in-out; +} +@keyframes pointGlowBump{ + 0% {transform:translate(0px,0px) scale(0.8,1.2);} + 20% {transform:translate(-8px,0px);} + 50% {transform:translate(-10px,0px);} + 80% {transform:translate(-8px,0px);} + 100% {transform:translate(0px,0px);} +} +#checkForUpdate +{ + display:none; + font-size:10px; + position:absolute;bottom:8px;left:0px;right:0px; + animation:rainbowCycle 0.5s infinite ease-in-out; +} +@keyframes rainbowCycle{ + 0% {color:#ff1d87;} + 16% {color:#a071ff;} + 33% {color:#40b9ff;} + 50% {color:#15ff57;} + 66% {color:#ffed29;} + 83% {color:#ff5f2e;} + 100% {color:#ff1d87;} +} +@keyframes rainbowCycleBG{ + 0% {background-color:#ff1d87;} + 16% {background-color:#a071ff;} + 33% {background-color:#40b9ff;} + 50% {background-color:#15ff57;} + 66% {background-color:#ffed29;} + 83% {background-color:#ff5f2e;} + 100% {background-color:#ff1d87;} +} +#logButton.hasUpdate #checkForUpdate {display:block;} + + +.roundedPanel +{ + background:url(img/roundedPanelBGS.png) repeat-x 0px 0px; + position:relative; + padding:9px 0px; + height:20px; +} +.roundedPanel:before,.roundedPanel:after +{ + content:''; + display:block;height:36px; + position:absolute;top:0px; +} +.roundedPanel:before +{ + background:url(img/bracketPanelLeftS.png) no-repeat;left:-16px;width:16px; +} +.roundedPanel:after +{ + background:url(img/bracketPanelRightS.png) no-repeat;right:-18px;width:18px; +} +/*.roundedPanel +{ + background:url(img/roundedPanelBG.png) repeat-x 0px 0px; + position:relative; +} +.roundedPanel:before,.roundedPanel:after +{ + content:''; + display:block;width:17px;height:32px; + position:absolute;top:0px; +} +.roundedPanel:before +{ + background:url(img/roundedPanelLeft.png) no-repeat;left:-17px; +} +.roundedPanel:after +{ + background:url(img/roundedPanelRight.png) no-repeat;right:-17px; +}*/ +#ascendNumber +{ + display:none; + position:absolute; + right:115px; + top:22px; + font-size:14px; + font-weight:bold; + font-family:Georgia; + color:#fff; + text-shadow:0px -1px 1px #09f,0px 1px 1px #f04; +} +#legacyButton:hover>#ascendNumber +{text-shadow:0px -1px 1px #09f,0px 1px 1px #f04,0px -1px 1px #09f,0px 1px 1px #f04,0px 0px 4px #fff;} + +#ascendTooltip +{ + display:none; + position:absolute; + right:0px; + top:52px; + font-family:Tahoma,Arial,sans serif; + font-size:11px; + width:220px; + padding:8px; + pointer-events:none; +} +#legacyButton:hover>#ascendTooltip +{display:block;} + + +#lumps +{ + display:none; + position:absolute; + width:32px; + height:32px; + left:-8px; + bottom:-12px; + z-index:10000; + cursor:pointer; + filter:drop-shadow(0px 3px 2px #000); + -webkit-filter:drop-shadow(0px 3px 2px #000); +} +#lumps:hover #lumpsIcon,#lumps:hover #lumpsIcon2 +{top:-10px;} +#lumpsIcon,#lumpsIcon2 +{ + width:48px; + height:48px; + position:absolute; + left:-8px; + top:-8px; + pointer-events:none; +} +#lumpsAmount +{ + font-size:12px; + color:#6cf; + position:absolute; + left:36px; + top:6px; + pointer-events:none; + text-align:left; + width:200px; +} +.lumpsOn #lumps{display:block;} + + +.lumpRefill +{ + cursor:pointer; + width:48px; + height:48px; + position:absolute; + left:0px; + top:0px; + transform:scale(0.5); + z-index:1000; + transition:transform 0.05s; +} +.lumpRefill:hover{transform:scale(1);} +.lumpRefill:active{transform:scale(0.4);} + + +.meterContainer +{ + background:rgba(0,0,0,0.5); + position:relative; + border-radius:2px; + height:8px; +} +.meter +{ + background:url(img/prestigeBar.jpg) 0px 0px; + position:absolute; + left:0px; + /*right:100%;*/ + right:0px; + top:0px; + height:100%; + /*max-width:100%;*/ + transform:translate(0px,0px); +} +.meter:after +{ + height:8px; + width:8px; + position:absolute; + right:-8px; + top:0px; + content:''; + display:block; + background:url(img/prestigeBarCap.png); +} +#ascendMeterContainer +{ + width:100px; + right:0px; + bottom:4px; + position:absolute; + overflow:hidden; +} +#ascendMeter +{ + /*right:100px;*/ +} + +.meter.filling +{ +/* this tiny thing is actually an enormous resource hog */ +/*-webkit-animation:fluidMotion 10s infinite linear; + -moz-animation:fluidMotion 10s infinite linear; + animation:fluidMotion 10s infinite linear;*/ + /*-webkit-transition:right 0.5s linear; + -moz-transition:right 0.5s linear; + -ms-transition:right 0.5s linear; + -o-transition:right 0.5s linear; + transition:right 0.5s linear;*/ +} +@-webkit-keyframes fluidMotion{ +from {background-position:0px -24px;} + to {background-position:-128px -24px;} +} +@-moz-keyframes fluidMotion{ +from {background-position:0px -24px;} + to {background-position:-128px -24px;} +} +@keyframes fluidMotion{ +from {background-position:0px -24px;} + to {background-position:-128px -24px;} +} + +#game.onMenu #menu{display:block;} +#game.onMenu .row{visibility:hidden;display:none;} +#menu +{ + display:none; + z-index:1; + position:absolute; + left:0px; + right:0px; + top:0px; + bottom:0px; + /*box-shadow:0px 0px 24px #000 inset; + background:#000 url(img/darkNoise.jpg);*/ +} + +#comments +{ + padding:16px; + text-align:center; + position:relative; + padding-bottom:32px; + font-size:16px; + height:64px; + background:url(img/shadedBorders.png); + background-size:100% 96px; + /*overflow:hidden;*/ +} +#commentsText +{ + position:absolute; + top:0px; + left:108px; + right:108px; + bottom:16px; + overflow:hidden; + z-index:1; +} +#commentsText:hover +{ + overflow:visible; + z-index:1000; +} +.commentsText +{ + padding:16px 0px; + position:absolute; + top:0px; + left:0px; + right:0px; + opacity:1; + text-align:center; + transition:text-shadow 0.25s,background 0.25s; + border-radius:8px; +} +#commentsText:hover>.commentsText +{ + text-shadow:0px 1px 1px #000,0px 2px 2px #000,0px 2px 8px #000,0px 2px 16px #000,0px 2px 20px #000; + /*background:rgba(0,0,0,0.2);*/ +} +.commentsText q +{ + font-style:italic; +} +.commentsText sig +{ + font-size:70%; + display:block; + text-align:center; + opacity:0.7; +} +.commentsText sig:before +{ + content:"-"; + padding-left:64px; +} +.fortune +{ + color:#ade000; + cursor:pointer; +} +.fortune:hover +{ + color:#d2ff00; + text-shadow:0px 0px 4px #ade000 !important; +} + +#commentsText1 +{ + z-index:20; +} +#commentsText2 +{ + z-index:10; +} + +/* let me tell you about vendor prefixes */ +.risingAway{ +-webkit-animation:riseAway 1s 1 forwards; + -moz-animation:riseAway 1s 1 forwards; + animation:riseAway 1s 1 forwards; +} +.risingUp{ +-webkit-animation:riseUp 1s 1 forwards; + -moz-animation:riseUp 1s 1 forwards; + animation:riseUp 1s 1 forwards; +} +.risingUpLinger{ +-webkit-animation:riseUpLinger 4s 1 forwards ease-out; + -moz-animation:riseUpLinger 4s 1 forwards ease-out; + animation:riseUpLinger 4s 1 forwards ease-out; +} +@-webkit-keyframes riseAway{ +from {top:0px;opacity:1;} + to {top:-20px;opacity:0;} +} +@-webkit-keyframes riseUp{ +from {top:20px;opacity:0;} + to {top:0px;opacity:1;} +} +@-webkit-keyframes riseUpLinger{ +0% {transform:translate(0px,0px);opacity:0;} +1% {transform:translate(0px,0px);opacity:1;} +20% {transform:translate(0px,-32px);opacity:1;} +100% {transform:translate(0px,-32px);opacity:0;} +} +@-moz-keyframes riseAway{ +from {top:0px;opacity:1;} + to {top:-20px;opacity:0;} +} +@-moz-keyframes riseUp{ +from {top:20px;opacity:0;} + to {top:0px;opacity:1;} +} +@-moz-keyframes riseUpLinger{ +0% {transform:translate(0px,0px);opacity:0;} +1% {transform:translate(0px,0px);opacity:1;} +20% {transform:translate(0px,-32px);opacity:1;} +100% {transform:translate(0px,-32px);opacity:0;} +} +@keyframes riseAway{ +from {top:0px;opacity:1;} + to {top:-20px;opacity:0;} +} +@keyframes riseUp{ +from {top:20px;opacity:0;} + to {top:0px;opacity:1;} +} +@keyframes riseUpLinger{ +0% {transform:translate(0px,0px);opacity:0;} +2% {transform:translate(0px,0px);opacity:1;} +20% {transform:translate(0px,-32px);opacity:1;} +75% {transform:translate(0px,-32px);opacity:1;} +100% {transform:translate(0px,-32px);opacity:0;} +} + + +@keyframes wobble +{ + 0% {transform:scale(0.5,0.5);} + 20% {transform:scale(1.3,0.7);} + 30% {transform:scale(0.7,1.3);} + 50% {transform:scale(1.2,0.8);} + 70% {transform:scale(0.9,1.1);} + 90% {transform:scale(1.1,0.9);} + 100% {transform:scale(1,1);} +} + +@keyframes bounce +{ + /* weeeeee */ + 0% {transform-origin:50% 100%;transform:scale(1,1);} + 10% {transform-origin:50% 100%;transform:scale(0.9,1.2);} + 20% {transform-origin:50% 100%;transform:scale(1.5,0.5);} + 25% {transform-origin:50% 100%;transform:scale(0.75,1.5) translate(0px,-10px);} + 30% {transform-origin:50% 100%;transform:scale(0.8,1.2) translate(0px,-20px);} + 60% {transform-origin:50% 100%;transform:scale(1,1) translate(0px,-25px);} + 70% {transform-origin:50% 100%;transform:scale(2,0.5);} + 80% {transform-origin:50% 100%;transform:scale(0.8,1.2);} + 90% {transform-origin:50% 100%;transform:scale(1,1);} + 100% {transform-origin:50% 100%;transform:scale(1,1);} +} + + +.comeLeft{animation:comeLeft 0.2s ease-out;} +@keyframes comeLeft +{ + 0% {transform:translate(-16px,0px);opacity:0;} + 100% {transform:translate(0px,0px);opacity:1;} +} + +.pucker{animation:pucker 0.2s ease-out;} +@keyframes pucker +{ + 0% {transform:scale(1,1);} + 10% {transform:scale(1.15,0.85);} + 20% {transform:scale(1.2,0.8);} + 50% {transform:scale(0.75,1.25);} + 70% {transform:scale(1.05,0.95);} + 90% {transform:scale(0.95,1.05);} + 100% {transform:scale(1,1);} +} +.puckerHalf{animation:puckerHalf 0.2s ease-out;} +@keyframes puckerHalf +{ + 0% {transform:scale(0.5,0.5);} + 10% {transform:scale(0.575,0.425);} + 20% {transform:scale(0.6,0.4);} + 50% {transform:scale(0.375,0.625);} + 70% {transform:scale(0.525,0.475);} + 90% {transform:scale(0.475,0.525);} + 100% {transform:scale(0.5,0.5);} +} + +.flashRed{animation:flashRed 0.2s ease-out;} +@keyframes flashRed +{ + 0% {background:#f00;} + 100% {} +} +.punchDown{animation:punchDown 0.3s ease-out;} +@keyframes punchDown +{ + 0% {transform:translate(0px,0px);} + 20% {transform:translate(0px,4px);} + 100% {transform:translate(0px,0px);} +} +.punchUp{animation:punchUp 0.3s ease-out;} +@keyframes punchUp +{ + 0% {transform:translate(0px,0px);} + 20% {transform:translate(0px,-4px);} + 100% {transform:translate(0px,0px);} +} + +#buildingsMaster +{ + min-height:24px; + background:#999; + background:url(img/darkNoise.jpg); + box-shadow:0px 0px 4px #000 inset; + position:relative; + text-align:center; + color:#fff; + font-size:12px; + font-weight:bold; + font-variant:small-caps; + text-shadow:0px 1px 0px #000; + margin-bottom:8px; + display:none; +} +.extraButtons #buildingsMaster{display:block;} +#game.onMenu #buildingsMaster{display:none;} + +.row +{ + position:relative; + padding-bottom:16px; + display:none; + /*overflow:hidden;*/ +} +.row.enabled{display:block;} +.row .rowCanvas +{ + width:100%; + height:128px; + /*overflow-x:scroll; + overflow-y:hidden;*/ + background:#000; + display:block; +} +.row .rowSpecial +{ + min-height:24px; + z-index:100; + width:100%; + top:0px; + left:0px; + background:#000 url(img/mapBG.jpg) fixed; + display:none; +} +.row.onMinigame .rowCanvas{display:none;} +.row.onMinigame .rowSpecial{display:block;} +/*.row.muted .rowCanvas,.row.muted .rowSpecial{display:none;}*/ +/*.row.muted .separatorBottom{background:rgba(0,0,0,0.75);box-shadow:1px 1px 0px rgba(255,255,255,0.1) inset,-1px -1px 0px rgba(0,0,0,0.5) inset;}*/ +.row.muted{display:none;} + +.row .info, #sectionLeft .info +{ + display:none; + /*visibility:hidden;*/ + -webkit-transition: opacity 0.1s ease-out; + -moz-transition: opacity 0.1s ease-out; + -ms-transition: opacity 0.1s ease-out; + -o-transition: opacity 0.1s ease-out; + transition: opacity 0.1s ease-out; + opacity:0; +} +.row .info, #sectionLeft .info +{ + position:absolute; + top:0px; + left:0px; + height:112px; + padding:8px; + font-size:12px; + line-height:125%; + background:url(img/infoBG.png); + color:#666; + z-index:100000; +} +.row .info:after +{ + width:16px; + height:128px; + position:absolute; + right:-16px; + top:0px; + background:url(img/infoBGfade.png) repeat-y; + display:block; + content:''; +} +#sectionLeft .info +{ + border-radius:16px; + padding:24px 8px 8px 24px; + left:-16px; + top:-16px; + height:auto; +} +.row:hover .info, #sectionLeft:hover .info +{ + opacity:1; +} +.row .object +{ + position:absolute; + width:64px; + height:64px; +} +#sectionLeftInfo +{ + position:absolute; + left:0px; + top:0px; + width:100%; +} + +.zoneTitle +{ + text-align:center; + padding:8px; + width:100%; +} +#store +{ + position:relative; +} +#store:after +{ + display:block; + height:64px; + background:url(img/blackGradientSmallTop.png) repeat-x top; + content:''; + pointer-events:none; + position:absolute; + left:0px; + right:0px; + bottom:-64px; +} +#storeTitle +{ + position:relative; + width:284px; + background:url(img/blackGradientSmallTop.png) repeat-x top; +} +#buildingsTitle +{ + display:none; +} +.storeSection +{ + height:60px; + width:300px; + position:relative; + overflow-y:hidden; + background:url(img/panelHorizontal.png) repeat-x top; + background:url(img/panelGradientLeft.png) no-repeat top left,url(img/panelGradientRight.png) no-repeat top right,url(img/panelHorizontal.png) repeat-x; + padding-top:16px; +} +.storeSection:hover +{ + height:auto; + min-height:60px; +} +.storeSection:hover:before +{ + display:block; +} +.storeSection:before,.storeSectionAddon +{ + z-index:1000; + text-shadow:0px 1px 1px #360e00,0px -1px 1px #360e00,1px 0px 1px #360e00,-1px 0px 1px #360e00; + font-weight:bold; + color:#f6dab8; + opacity:1; + font-variant:small-caps; +} +.storeSection:before +{ + display:none; + position:absolute; + content:''; + left:2px; + top:0px; + pointer-events:none; +} +.storeSectionAddon +{ + position:relative; + line-height:0%; + text-align:right; + top:6px; + right:4px; +} + +.trophy +{ + width:48px;height:48px;margin:2px;float:left; + cursor:pointer; + filter:drop-shadow(0px 3px 2px #000); + -webkit-filter:drop-shadow(0px 3px 2px #000); + position:relative; +} +.trophy:hover +{ + top:-1px; + /*filter:brightness(125%) drop-shadow(0px 3px 2px #000); + -webkit-filter:brightness(125%) drop-shadow(0px 3px 2px #000);*/ +} + +.tag +{ + background-color:#ccc; + background-image:linear-gradient(to bottom,rgba(0,0,0,0.3),transparent); + display:inline-block; + font-family:Arial; + font-size:10px; + color:#000; + text-shadow:0px 1px 0px rgba(255,255,255,0.25); + border-radius:3px; + opacity:0.85; + padding:0px 3px; + margin:1px 2px 0px 0px; + font-weight:bold; +} + +#toggleBox +{ + position:absolute; + right:318px; + top:100px; + width:300px; + min-height:60px; + display:none; + z-index:50000000; + text-align:center; +} + +#upgrades:before{content:'Upgrades';} +#toggleUpgrades:before{content:'Switches';} +#techUpgrades:before{content:'Research';} +/*#vaultUpgrades{height:0px;}*/ +/*#vaultUpgrades:hover{height:auto;min-height:60px;}*/ +#vaultUpgrades .crate{opacity:0.5;} +#vaultUpgrades .crate{transform:scale(0.5);margin:-9px;} +#vaultUpgrades{height:30px;} +#vaultUpgrades:hover{height:auto;min-height:30px;} +#vaultUpgrades:before{content:'Vault';} +#products:before{content:'Buildings';} +#upgrades +{ +} +#upgrades.hasMenu +{ + min-height:82px; +} +#products +{ + height:auto; + min-height:60px; +} +.crate +{ + width:48px; + height:48px; + margin:6px; + display:inline-block; + cursor:pointer; + /*opacity:0.6;*/ + position:relative; + /*background:#000;*/ + background:rgba(0,0,0,0.25); + float:left; + border:none; +} +#menu .crate{outline:none !important;} +.crate:before +{ + content:''; + position:absolute; + left:-6px; + top:-6px; + width:60px; + height:60px; + display:block; + background:url(img/upgradeFrame.png); + background-position:0px 0px; + z-index:10; +} + +.crate.noFrame {background-color:transparent!important;margin:2px;} +.crate.noFrame:before {background:transparent;} +.crate.noFrame {opacity:0.3;} +.crate.noFrame.enabled ,.crate.noFrame:hover {opacity:1;} + + +.crate:before{background-position:120px 0px;} +.crate.enabled:before{background-position:0px 0px;} +.crate.enabled:hover:before,.crate.highlighted:before{background-position:60px 0px;} +.crate.noFrame.highlighted{z-index:100;box-shadow:0px 0px 12px -4px rgba(255,255,255,1) inset,0px 0px 0px 1px rgba(255,255,255,0.65);} +/*.crate.enabled:hover:after,.crate.highlighted:after +{ + content:''; + position:absolute; + left:-24px; + top:-24px; + width:96px; + height:96px; + display:block; + //background:url(img/upgradeHighlight.png); + background:url(img/upgradeHighlight.jpg); + mix-blend-mode:screen; + z-index:100; + pointer-events:none; +}*/ +.crate.shadow:before{background-position:120px 60px;} +.crate.shadow.enabled:before{background-position:0px 60px;} +.crate.shadow.enabled:hover:before{background-position:60px 60px;} + +.selectorCorner +{ + position:absolute; + left:-6px; + bottom:-6px; + width:12px; + height:12px; + display:block; + background:url(img/upgradeSelector.png); + z-index:20; +} + +.crate:hover:before +{ + z-index:20; +} + +.pieTimer +{ + position:absolute; + left:0px; + top:0px; + width:48px; + height:48px; + background:url(img/pieFill.png); + /*background-size:864px 384px;*/ + /*background-size:864px 384px;*/ + z-index:1000; + opacity:0.5; +} + +.crate.heavenly{opacity:0.8;} +.crate.heavenly:before +{ + left:-20px; + top:-20px; + width:88px; + height:88px; + background-image:url(img/ascendSlot.png); + background-position:88px 0px; +} +/*.crate.heavenly:after +{ + content:''; + position:absolute; + left:-6px; + top:-6px; + width:60px; + height:60px; + display:block; + background:#f00; + border-radius:30px; + z-index:-10; +}*/ +#menu .crate.heavenly {margin:12px;} +/*#menu .crate.heavenly:nth-child(even) {margin-top:16px;margin-bottom:8px;} +#menu .crate.heavenly:nth-child(3n) {margin-right:16px;margin-left:8px;}*/ +.crate.heavenly,.crate.heavenly:hover{background-color:transparent;} +.icon +{ + width:48px; + height:48px; + display:inline-block; + margin:0px 4px; +} +.icon,.crate,.usesIcon +{ + /*background-image:url(img/icons.png?v=20);*/ +} +.icon,.crate,.shadowFilter +{ + filter:drop-shadow(0px 3px 2px #000); + -webkit-filter:drop-shadow(0px 3px 2px #000); +} + +/*filter the whole list rather than filtering each individual crate*/ +.crateBox .crate,.upgradeBox .crate +{ + filter:none; + -webkit-filter:none; +} +.crateBox,.upgradeBox +{ + filter:drop-shadow(0px 3px 2px #000); + -webkit-filter:drop-shadow(0px 3px 2px #000); +} +.listing.crateBox +{ + overflow-y:hidden; + padding-bottom:12px; + margin-bottom:-12px; +} + +.achievement +{ + /*opacity:0.4;*/ +} +.crate.enabled +{ + opacity:1; +} +.crate.heavenly.enabled:before +{ + /*background-position:0px -60px;*/ + background-position:0px 0px; +} +.crate.heavenly:hover:before +{ + background-position:-88px 0px; +} +.crate:hover,.crate.highlighted +{ + /*background-color:#200e0a;*/ + opacity:1; + top:-1px; + + /* for some reason having a filter update on hover makes the cursor confused about which icon it's hovering */ + /*filter:brightness(115%); + -webkit-filter:brightness(115%);*/ +} +.crate.heavenly +{ + transition:left 0.2s ease-out,top 0.2s ease-out; + z-index:10; +} +.crate.ghosted +{ + background:transparent; + opacity:0.2; +} +.parentLink +{ + /*background:url(img/linkPulse.png);*/ + background:url(img/linkPulse.gif); + width:0px; + height:8px; + position:absolute; + -ms-transform-origin:0% 50%; + -webkit-transform-origin:0% 50%; + transform-origin:0% 50%; + opacity:0.5; + z-index:-10; + /* +-webkit-animation:parentLinkPulse 1s infinite linear; + -moz-animation:parentLinkPulse 1s infinite linear; + animation:parentLinkPulse 1s infinite linear; + */ +} +@-webkit-keyframes parentLinkPulse{ +from {background-position:0px 0px;} + to {background-position:32px 0px;} +} +@-moz-keyframes parentLinkPulse{ +from {background-position:0px 0px;} + to {background-position:32px 0px;} +} +@keyframes parentLinkPulse{ +from {background-position:0px 0px;} + to {background-position:32px 0px;} +} + +.product +{ + width:300px; + height:64px; + cursor:pointer; + opacity:0.6; + background:url(img/storeTile.jpg); + position:relative; + -webkit-transition: opacity 0.25s ease-out, margin-bottom 0.1s ease-out; + -moz-transition: opacity 0.25s ease-out, margin-bottom 0.1s ease-out; + -ms-transition: opacity 0.25s ease-out, margin-bottom 0.1s ease-out; + -o-transition: opacity 0.25s ease-out, margin-bottom 0.1s ease-out; + transition: opacity 0.25s ease-out, margin-bottom 0.1s ease-out; + border:none; + text-align:left; + line-height:inherit; +} +.product:after +{ + content:''; + display:block; + position:absolute; + left:0px;top:0px;right:0px;bottom:0px; + z-index:100; +} +.product:nth-child(4n-3) {background-position:0px 64px;} +.product:nth-child(4n-2) {background-position:0px 128px;} +.product:nth-child(4n-1) {background-position:0px 192px;} +.product:hover +{ + box-shadow:0px 0px 16px #fed inset,0px 0px 1px #000; + z-index:20; + filter:brightness(115%); + -webkit-filter:brightness(115%); +} +.product.enabled:active +{ + box-shadow:0px 0px 16px #000 inset; +} +.product.unlocked.enabled +{ + opacity:1; +} +.product.toggledOff +{ + opacity:0; +} +.productName +{ + font-weight:bold; + letter-spacing:-1px; + font-size:28px; +} +.longProductName +{ + line-height:90%; + font-size:17px; + padding-right:50px; +} +.product .icon +{ + width:64px; + height:64px; + position:absolute; + left:0px; + top:0px; + background:url(img/buildings.png); + background-repeat:no-repeat; + margin:0px; +} +.product .content +{ + display:inline-block; + position:absolute; + left:64px; + top:6px; + right:0px; + bottom:6px; + padding:4px; + text-shadow:0px 2px 6px #000,0px 1px 1px #000; +} +.tinyProductIcon +{ + width:64px; + height:64px; + left:0px; + top:0px; + background:url(img/buildings.png); + background-repeat:no-repeat; + margin:-16px; + transform:scale(0.5); + display:inline-block; + border-radius:32px; +} +#buildingsMaster .tinyProductIcon +{ + cursor:pointer; + opacity:0.8; +} +#buildingsMaster .tinyProductIcon:hover +{ + opacity:1; +} + + +.product .content .owned +{ + position:absolute; + right:8px; + bottom:5px; + font-size:40px; + opacity:0.2; + color:#000; + text-shadow:0px 0px 8px #fff; + letter-spacing:-2.5px; +} +.product .icon +{ + opacity:0; +} +.product.unlocked .icon +{ + opacity:1; +} +.product .icon.off +{ + z-index:100; + opacity:1; + background:url(img/buildings.png); + background-repeat:no-repeat; + -webkit-transition: opacity 2s ease-out; + -moz-transition: opacity 2s ease-out; + -ms-transition: opacity 2s ease-out; + -o-transition: opacity 2s ease-out; + transition: opacity 2s ease-out; +} +.product.unlocked .icon.off +{ + opacity:0; +} +.product.locked .title {display:none;} +.product .lockedTitle {display:none;} +.product.locked .lockedTitle {display:block;} + +.selling .product +{ + box-shadow:0px 0px 16px #c00 inset; +} +.selling .product:hover +{ + box-shadow:0px 0px 16px #f66 inset,0px 0px 1px #000; +} +.selling .product.enabled:active +{ + box-shadow:0px 0px 16px #f99 inset; +} + +.productButtons +{ + position:absolute; + right:-1px; + bottom:0px; + overflow:hidden; + z-index:10; +} +.productButton +{ + background:rgba(0,0,0,0.25); + box-shadow:-1px -1px 0px rgba(255,255,255,0.25),0px 0px 1px 1px rgba(0,0,0,0.5) inset; + border-top-left-radius:4px; + border-top-right-radius:4px; + padding:4px 8px; + font-size:11px; + font-weight:bold; + color:#ccc; + text-shadow:1px 1px 0px #000,-1px 1px 0px #000,1px -1px 0px #000,-1px -1px 0px #000; + cursor:pointer; + float:right; + position:relative; + margin-left:2px; + margin-top:2px; + min-height:11px; +} +.productLevel +{ + border-top-right-radius:0px; +} +.productButton:hover +{ + background:rgba(0,0,0,0.5); + color:#fff; +} +.productLevel +{ + width:65px; +} +.productLevel:after +{ + content:''; + display:block; + position:absolute; + right:8px; + bottom:0px; + background:url(img/levelUp.png); + width:33px; + height:19px; + opacity:0.75; +} +.productLevel:hover:after +{ + opacity:1; +} +.productButton.on{background:rgba(255,255,255,0.75);} +.productMute{display:none;} +.extraButtons .productMute{display:inline-block;} + + +.lumpsOnly{display:none;} +.lumpsOn .lumpsOnly{display:block;} + +.storePre +{ + background:#999; + background:url(img/darkNoise.jpg); + box-shadow:0px 0px 4px #000 inset; + width:300px; + padding:4px 0px; + position:relative; + text-align:center; + font-variant:small-caps; + color:#fff; + font-weight:bold; + font-size:14px; + text-shadow:0px 1px 0px #000; +} +.storePreButton +{ + opacity:0.5; + cursor:pointer; +} +.storePreButton:hover,.storePreButton.selected +{ + text-shadow:0px 1px 0px #000,0px 0px 1px #fff,0px 0px 4px #fff; + opacity:1; +} +#storeBulk +{ + width:240px; + padding:0px; + padding-left:60px; + height:32px; + overflow:hidden; +} +.storeBulkMode,.storeBulkAmount +{ + float:left; +} +.storeBulkMode:hover,.storeBulkAmount:hover,.storeBulkMode.selected,.storeBulkAmount.selected +{ +} +.storeBulkMode +{width:60px;padding:1px 0px;} +#storeBulkBuy +{position:absolute;left:0px;top:0px;} +#storeBulkSell +{position:absolute;left:0px;bottom:1px;} +.storeBulkAmount +{width:60px;padding:9px 0px;} + +#buffs +{ + position:absolute; + top:0px; + right:0px; + z-index:100000; + transform-origin:100% 0%; + transform:scale(0.75); +} +.buff +{ + margin:12px; +} + +#shimmers +{ + position:absolute; + left:0px; + top:0px; + z-index:10000000000; + filter:drop-shadow(0px 4px 4px rgba(0,0,0,0.75)); + -webkit-filter:drop-shadow(0px 4px 4px rgba(0,0,0,0.75)); +} +.shimmer +{ + cursor:pointer; + position:absolute; + z-index:10000000000; + display:none; +} +.shimmer:hover +{ + filter:brightness(125%) drop-shadow(0px 0px 3px rgba(255,255,255,1)); + -webkit-filter:brightness(125%) drop-shadow(0px 0px 3px rgba(255,255,255,1)); +} + +.goldenCookie,.seasonPopup +{ + cursor:pointer; + position:absolute; + z-index:10000000000; + display:none; + filter:drop-shadow(0px 4px 4px rgba(0,0,0,0.75)); + -webkit-filter:drop-shadow(0px 4px 4px rgba(0,0,0,0.75)); +} + +.goldenCookie +{ + width:96px; + height:96px; + background:url(img/goldCookie.png); +} + +.seasonPopup +{ + width:256px; + height:256px; + background:url(img/goldCookie.png) center center no-repeat; +} +.goldenCookie:hover,.seasonPopup:hover +{ + filter:brightness(125%) drop-shadow(0px 3px 4px rgba(0,0,0,0.5)); + -webkit-filter:brightness(125%) drop-shadow(0px 3px 4px rgba(0,0,0,0.5)); +} + +.sparkles +{ + width:128px; + height:128px; + background:url(img/sparkles.jpg); + position:absolute; + z-index:10000000000; + display:none; + left:0px; + top:0px; + mix-blend-mode:screen; + pointer-events:none; +} + +#darken +{ + position:absolute; + left:0px; + top:0px; + right:0px; + bottom:0px; + background:rgba(0,0,0,0.5); + z-index:100000000; + display:none; +} + +#promptAnchor +{ + position:absolute; + left:50%; + top:125px; + z-index:1000000000; + display:none; + width:0px; + height:0px; +} +#prompt +{ + position:relative; + overflow:hidden; + width:250px; + padding:16px; + margin-left:-18px; + left:-125px; + text-align:center; + /*animation:pucker 0.2s;*/ +} +#promptContent{margin-top:-8px;} +#promptContent h3{margin-bottom:6px;} +#prompt h3,.prompt h3,h4,.fancyText +{ + text-align:center; + font-weight:bold; + font-size:14px; + position:relative; + font-variant:small-caps; + display:inline-block; +} +#prompt h3,.prompt h3,.fancyText +{ + color:#ece2b6; + text-shadow:0px 1px 0px #733726,0px 2px 0px #875626,0px 2px 1px #000,0px 2px 3px #000; + font-family:Georgia,serif; + font-size:15px; +} +.large .fancyText{font-size:20px;} +#prompt h3:before,#prompt h3:after,.prompt h3:before,.prompt h3:after +{ + content:''; + display:block; + width:39px; + height:23px; + position:absolute; + top:-4px; +} +#prompt h3:before,.prompt h3:before +{ + background:url(img/featherLeft.png) no-repeat; + left:-39px; +} +#prompt h3:after,.prompt h3:after +{ + background:url(img/featherRight.png) no-repeat; + right:-39px; +} +#prompt textarea,#prompt input +{ + width:100%; + margin:0px; + position:relative; + left:-3px; +} + +#prompt.widePrompt +{ + width:500px; + left:-250px; +} + +#prompt.legacyPrompt +{ + width:400px; + left:-200px; +} + +#notes +{ + position:absolute; + /*left:0px; + bottom:128px;*/ + left:50%; + margin-left:-125px; + bottom:0px; + z-index:100000000; +} +#notes .remaining {padding:3px;opacity:0.75;text-shadow:0px 0px 2px #000,0px 1px 0px #000;} +.note +{ + position:relative; + overflow-y:hidden; + width:250px; + padding-right:16px; + padding-bottom:8px; + left:-18px; +} +.note .icon +{ + float:left; + margin-left:-4px; +} +.note h3 +{ + font-weight:bold; + font-size:14px; + /*overflow-y:hidden;*/ +} +.note h5 +{ + opacity:0.6; + font-size:11px; +} +.note.haspic h3 +{ + margin-top:4px; +} +.note.hasdesc h3 +{ + /*border-bottom:1px solid rgba(255,255,255,0.5); + padding-bottom:2px;*/ +} +.note.nodesc h3 +{ + text-align:center; +} + +p +{ + text-indent:6px; + padding:2px 0px; +} + + +#sectionMiddle,#sectionRight,#cookies,#bakeryNameAnchor,#backgroundCanvas,.separatorRight,.separatorLeft +{transition:opacity 1s;} +.ascendIntro #sectionMiddle,.ascendIntro #sectionRight,.ascendIntro #cookies,.ascendIntro #bakeryNameAnchor,.ascendIntro #backgroundCanvas,.ascendIntro .separatorRight,.ascendIntro .separatorLeft,.reincarnating #sectionMiddle,.reincarnating #sectionRight,.reincarnating #cookies,.reincarnating #bakeryNameAnchor,.reincarnating #backgroundCanvas,.reincarnating .separatorRight,.reincarnating .separatorLeft +{opacity:0;} +#game.ascendIntro,#ascend +{ + /*background:url(img/starbg.jpg); + background-size:1024px 1024px;*/ + /*background:url(img/starbg.jpg),url(img/starbg.jpg); + background-size:1024px 1024px,2048px 2048px; + background-blend-mode:hard-light;*/ +} +#game.ascendIntro,#game.reincarnating{background:#000;} + +.ascending #sectionMiddle,.ascending #sectionRight,.ascending #sectionLeft,.ascending .separatorLeft,.ascending .separatorRight,.reincarnating #backgroundCanvas +{display:none;opacity:0;} + +#ascend +{ + display:none; + position:absolute; + left:0px; + top:0px; + right:0px; + bottom:0px; + z-index:100000; + cursor:move; + /*transition:background-position 0.2s ease-out,background-size 0.1s ease-out;*/ +} +#ascendBG +{ + position:absolute; + left:0px; + top:0px; + width:100%; + height:100%; + background:url(img/shadedBorders.png); + background-size:100% 100%; +} +#ascendZoomable +{ + position:absolute; + left:0px; + top:0px; +} +.ascending #ascend +{display:block;} +#ascendContent +{ + position:absolute; + left:0px; + top:0px; + /*transition:transform 0.1s ease-out;*/ +} +#ascendHelp +{ + position:absolute; + bottom:40px; + width:300px; + left:50%; + margin-left:-150px; + font-size:16px; + text-align:center; + z-index:100; +} +#ascendHelp a +{ + display:block; + border-radius:40px; + font-size:22px; + opacity:0.5; + cursor:pointer; + text-decoration:none; + background:#000; + color:#fff; + padding:8px 4px; + width:150px; + margin:5px auto; +} +#ascendHelp a:hover +{ + background:#fff; + color:#000; + opacity:0.75; +} +#ascendOverlay +{ + position:absolute; + top:0px; + left:50%; + height:100%; + z-index:100; + text-align:center; + filter:drop-shadow(0px 0px 4px #000); + /*-webkit-filter:drop-shadow(0px 0px 4px #000);*/ + cursor:auto; +} + +#ascendHCs .price +{font-weight:inherit;color:inherit;} + +#ascendBox +{ + background:url(img/ascendBox.png); + width:344px; + height:162px; + position:absolute; + left:-172px; + top:0px; + text-align:center; +} +.ascendData +{ + width:60%; + margin:2px auto; + padding:6px; +} + +#ascendInfo +{ + background:url(img/ascendInfo.png); + width:308px; + height:94px; + position:absolute; + left:-154px; + bottom:0px; + text-align:center; +} + + +/* todo! */ +/* note: also change min game size ie. w/Math.max(800,w) to 400 and account for window resizing triggers */ +/* +#sectionLeft +{width:100%;} +#sectionMiddle,#sectionRight,#leftBeam,#rightBeam +{display:none;} +#cookies,#bakeryName +{background:transparent;} +*/ + + +.green,b.green{color:#3f0;}.green b{color:inherit;} +.red,b.red{color:#f30;}.red b{color:inherit;} +.gray,b.gray{color:#999;}.gray b{color:inherit;} + +#versionNumber +{ + position:absolute; + left:0px; + bottom:0px; + opacity:0.5; + margin:8px; + font-size:22px; + z-index:1000000001; +} + +#alert +{ + display:none; + position:fixed; + bottom:-16px; + left:-16px; + z-index:100000000000; + padding:12px 12px 24px 24px; + font-size:14px; + background:#333; + border-radius:12px; + color:#fff; + box-shadow:0px 0px 4px #000, 0px 0px 4px #000 inset; + text-shadow:1px 1px 0px #000,0px 0px 2px #000; + border:4px solid #fff; + animation:rainbowCycleBG 15s infinite ease-in-out; +} +#alert b {font-weight:bold;} +#alert small {font-size:80%;} + +a.smallBlackButton,a.smallOrangeButton,a.smallWhiteButton +{ + background:#222; + box-shadow:0px 0px 0px 1px #000 inset,0px 2px 0px #444 inset,0px 2px 3px rgba(0,0,0,0.4); + text-shadow:0px -1px 0px #444,0px 1px 0px #000; + text-decoration:none; + color:#fff; + font-weight:bold; + padding:4px 5px; +} +a.smallOrangeButton +{ + background:#f86754; + box-shadow:0px 0px 0px 1px #c52921 inset,0px 2px 0px #ff966d inset,0px 2px 3px rgba(0,0,0,0.4); + text-shadow:0px -1px 0px #ff966d,0px 1px 0px #c52921; +} +a.smallWhiteButton +{ + color:#222; + background:#ccc; + box-shadow:0px 0px 0px 1px #666 inset,0px 2px 0px #fff inset,0px 2px 3px rgba(0,0,0,0.4); + text-shadow:0px -1px 0px #eee,0px 1px 0px #999; +} + +#debug +{ + position:absolute; + left:0px; + top:0px; + z-index:1000000000; + display:none; +} +#devConsole +{ + position:relative; + left:-2px; + top:-2px; + width:24px; + height:32px; + overflow:hidden; + cursor:pointer; + opacity:0.5; + text-align:center; + transition:opacity 0.4s; +} +#devConsole:hover +{ + width:192px; + height:auto; + min-width:192px; + min-height:48px; + overflow:auto; + opacity:1; +} +#devConsole:hover>.icon +{ + display:none; +} +#devConsoleContent +{display:none;cursor:auto;} +#devConsole:hover>#devConsoleContent +{ + display:block; +} + +#debugLog +{ + min-width:150px; + background:rgba(0,0,0,0.5); + background:linear-gradient(to right,rgba(0,0,0,0.5),rgba(0,0,0,0.5) 90%,rgba(0,0,0,0)); + padding:4px 4px 4px 8px; + font-size:10px; + text-shadow:0px 1px 0px #000; + color:#ccc; + pointer-events:none; +} + +.crisp +{ + image-rendering: optimizeSpeed; /* Older versions of FF */ + image-rendering: -moz-crisp-edges; /* FF 6.0+ */ + image-rendering: -webkit-optimize-contrast; /* Safari */ + image-rendering: -o-crisp-edges; /* OS X & Windows Opera (12.02+) */ + image-rendering: pixelated; /* Future-browsers */ + -ms-interpolation-mode: nearest-neighbor; /* IE */ +} + + +body{scrollbar-color:#bbb #111;} + +/*show scrollbars in safari*/ +::-webkit-scrollbar +{ + -webkit-appearance:none; + width:17px; +} +::-webkit-scrollbar-track +{ + background-color:#111; +} +::-webkit-scrollbar-thumb +{ + background-color:#bbb; + border:2px solid #111; + box-shadow:0px 0px 0px 1px #eee inset; +} + +/*===================================================================================== +SUPPORT +=======================================================================================*/ +#support +{ + width:300px; + text-align:center; + margin:16px auto; +} +.supportComment +{ + font-size:10px; + opacity:0.75; + text-shadow:0px 0px 2px #000,0px 1px 0px #000; + padding:8px 0px; + text-align:center; +} +.supportPlaceholder {width:300px;height:250px;position:absolute;left:0px;top:0px;z-index:10;opacity:0.6;} +.supportPlaceholder>div {margin:20px auto;width:60%;text-align:center;background:#000;color:#fff;font-weight:bold;font-size:80%;border-radius:8px;padding:8px 4px;} +#donateBox +{ + z-index:10000000; + position:absolute; + right:12px; + top:160px; + padding:8px 4px; + text-align:center; + width:120px; + display:none; + background:rgba(128,128,255,0.25); + box-shadow:0px 0px 4px 4px rgba(128,128,255,0.25); + border-radius:8px; + transition:box-shadow 0.25s,background 0.25s; +} +#donateBox:hover +{ + background:rgba(128,128,255,0.5); + box-shadow:0px 0px 4px 4px rgba(128,128,255,0.5); +} +#donateBox.on {display:block;} + +#donate +{ + display:inline-block; +} +#donateButton +{ + border:0px; + display:inline-block; + border-radius:4px; + background:#fc6; + background:linear-gradient(to bottom,#fff 0%,#fc6 45%,#f90 50%,#f66 100%); + box-shadow:0px 0px 1px #fff inset,0px 0px 0px 1px #f66; + text-shadow:0px -1px 0px #fc6,0px 1px 0px #f66; + cursor:pointer; + font-size:9px; + font-weight:bold; + opacity:0.9; +} +#donateButton:hover +{ + border:0px; + box-shadow:0px 0px 4px #fff inset,0px 0px 0px 1px #f66; + opacity:1; +} +.highlightHover:hover{filter:brightness(125%);opacity:1;} +.highlightHover:active{filter:brightness(85%);opacity:1;} + +.ifNoAds +{ + display:none; +} +.noAds .ifNoAds{display:block;} +.noAds #support,.noAds #smallSupport,.noAds .supportComment{display:none;} + + +.srOnly +{ + /* screen-readers only; intended to replicate information in tooltips */ + position:absolute !important; + top:0px; + left:0px; + width:100%; + height:100%; + overflow:hidden; + color:transparent !important; + text-shadow:none !important; + border:none !important; + outline:none !important; + box-shadow:none !important; + /*pointer-events:none;*/ + cursor:pointer; + z-index:10000000; + font-size:30px !important; +} + +/*===================================================================================== +NEW AD DISPLAY +=======================================================================================*/ +/* +#sectionRight +{ + right:160px; +} +#sectionMiddle +{ + right:478px; +} +#sectionAd +{ + height:100%; + position:absolute; + top:0px; + right:0px; + overflow-x:hidden; + width:160px; + background:url(img/darkNoise.jpg); +} +.separatorRight +{ + right:477px; +} +#sectionAd .supportPlaceholder {width:160px;} +*/ + +/*===================================================================================== +STOP THE FANCY +=======================================================================================*/ +.noFancy * +{ + text-shadow:none!important; + box-shadow:none!important; +} +.noFancy .price +{ + text-shadow:0px 0px 4px #000,0px 1px 0px #000!important; +} +.noFilters * +{ + filter:none!important; + -webkit-filter:none!important; +} + + +/**{overflow:hidden!important;}*/ \ No newline at end of file diff --git a/gversion/gs/ovo/GameAnalytics.js b/gversion/gs/ovo/GameAnalytics.js new file mode 100644 index 0000000..5b2c4ef --- /dev/null +++ b/gversion/gs/ovo/GameAnalytics.js @@ -0,0 +1,7 @@ +(function(scope){ +var CryptoJS=CryptoJS||function(e,n){var t={},i=t.lib={},r=function(){},s=i.Base={extend:function(e){r.prototype=this;var n=new r;return e&&n.mixIn(e),n.hasOwnProperty("init")||(n.init=function(){n.$super.init.apply(this,arguments)}),n.init.prototype=n,n.$super=this,n},create:function(){var e=this.extend();return e.init.apply(e,arguments),e},init:function(){},mixIn:function(e){for(var n in e)e.hasOwnProperty(n)&&(this[n]=e[n]);e.hasOwnProperty("toString")&&(this.toString=e.toString)},clone:function(){return this.init.prototype.extend(this)}},o=i.WordArray=s.extend({init:function(e,n){e=this.words=e||[],this.sigBytes=void 0!=n?n:4*e.length},toString:function(e){return(e||u).stringify(this)},concat:function(e){var n=this.words,t=e.words,i=this.sigBytes;if(e=e.sigBytes,this.clamp(),i%4)for(var r=0;r>>2]|=(t[r>>>2]>>>24-r%4*8&255)<<24-(i+r)%4*8;else if(65535>>2]=t[r>>>2];else n.push.apply(n,t);return this.sigBytes+=e,this},clamp:function(){var n=this.words,t=this.sigBytes;n[t>>>2]&=4294967295<<32-t%4*8,n.length=e.ceil(t/4)},clone:function(){var e=s.clone.call(this);return e.words=this.words.slice(0),e},random:function(n){for(var t=[],i=0;i>>2]>>>24-i%4*8&255;t.push((r>>>4).toString(16)),t.push((15&r).toString(16))}return t.join("")},parse:function(e){for(var n=e.length,t=[],i=0;i>>3]|=parseInt(e.substr(i,2),16)<<24-i%8*4;return new o.init(t,n/2)}},c=a.Latin1={stringify:function(e){var n=e.words;e=e.sigBytes;for(var t=[],i=0;i>>2]>>>24-i%4*8&255));return t.join("")},parse:function(e){for(var n=e.length,t=[],i=0;i>>2]|=(255&e.charCodeAt(i))<<24-i%4*8;return new o.init(t,n)}},d=a.Utf8={stringify:function(e){try{return decodeURIComponent(escape(c.stringify(e)))}catch(e){throw Error("Malformed UTF-8 data")}},parse:function(e){return c.parse(unescape(encodeURIComponent(e)))}},l=i.BufferedBlockAlgorithm=s.extend({reset:function(){this._data=new o.init,this._nDataBytes=0},_append:function(e){"string"==typeof e&&(e=d.parse(e)),this._data.concat(e),this._nDataBytes+=e.sigBytes},_process:function(n){var t=this._data,i=t.words,r=t.sigBytes,s=this.blockSize,a=r/(4*s),a=n?e.ceil(a):e.max((0|a)-this._minBufferSize,0);if(n=a*s,r=e.min(4*n,r),n){for(var u=0;uc;){var d;e:{d=u;for(var l=e.sqrt(d),f=2;f<=l;f++)if(!(d%f)){d=!1;break e}d=!0}d&&(8>c&&(s[c]=a(e.pow(u,.5))),o[c]=a(e.pow(u,1/3)),c++),u++}var v=[],t=t.SHA256=r.extend({_doReset:function(){this._hash=new i.init(s.slice(0))},_doProcessBlock:function(e,n){for(var t=this._hash.words,i=t[0],r=t[1],s=t[2],a=t[3],u=t[4],c=t[5],d=t[6],l=t[7],f=0;64>f;f++){if(16>f)v[f]=0|e[n+f];else{var g=v[f-15],m=v[f-2];v[f]=((g<<25|g>>>7)^(g<<14|g>>>18)^g>>>3)+v[f-7]+((m<<15|m>>>17)^(m<<13|m>>>19)^m>>>10)+v[f-16]}g=l+((u<<26|u>>>6)^(u<<21|u>>>11)^(u<<7|u>>>25))+(u&c^~u&d)+o[f]+v[f],m=((i<<30|i>>>2)^(i<<19|i>>>13)^(i<<10|i>>>22))+(i&r^i&s^r&s),l=d,d=c,c=u,u=a+g|0,a=s,s=r,r=i,i=g+m|0}t[0]=t[0]+i|0,t[1]=t[1]+r|0,t[2]=t[2]+s|0,t[3]=t[3]+a|0,t[4]=t[4]+u|0,t[5]=t[5]+c|0,t[6]=t[6]+d|0,t[7]=t[7]+l|0},_doFinalize:function(){var n=this._data,t=n.words,i=8*this._nDataBytes,r=8*n.sigBytes;return t[r>>>5]|=128<<24-r%32,t[14+(r+64>>>9<<4)]=e.floor(i/4294967296),t[15+(r+64>>>9<<4)]=i,n.sigBytes=4*t.length,this._process(),this._hash},clone:function(){var e=r.clone.call(this);return e._hash=this._hash.clone(),e}});n.SHA256=r._createHelper(t),n.HmacSHA256=r._createHmacHelper(t)}(Math),function(){var e=CryptoJS,n=e.enc.Utf8;e.algo.HMAC=e.lib.Base.extend({init:function(e,t){e=this._hasher=new e.init,"string"==typeof t&&(t=n.parse(t));var i=e.blockSize,r=4*i;t.sigBytes>r&&(t=e.finalize(t)),t.clamp();for(var s=this._oKey=t.clone(),o=this._iKey=t.clone(),a=s.words,u=o.words,c=0;c>>2]>>>24-r%4*8&255)<<16|(n[r+1>>>2]>>>24-(r+1)%4*8&255)<<8|n[r+2>>>2]>>>24-(r+2)%4*8&255,o=0;4>o&&r+.75*o>>6*(3-o)&63));if(n=i.charAt(64))for(;e.length%4;)e.push(n);return e.join("")},parse:function(e){var t=e.length,i=this._map,r=i.charAt(64);r&&-1!=(r=e.indexOf(r))&&(t=r);for(var r=[],s=0,o=0;o>>6-o%4*2;r[s>>>2]|=(a|u)<<24-s%4*8,s++}return n.create(r,s)},_map:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="}}();var gameanalytics;!function(e){!function(e){e[e.Undefined=0]="Undefined",e[e.Debug=1]="Debug",e[e.Info=2]="Info",e[e.Warning=3]="Warning",e[e.Error=4]="Error",e[e.Critical=5]="Critical"}(e.EGAErrorSeverity||(e.EGAErrorSeverity={}));!function(e){e[e.Undefined=0]="Undefined",e[e.Male=1]="Male",e[e.Female=2]="Female"}(e.EGAGender||(e.EGAGender={}));!function(e){e[e.Undefined=0]="Undefined",e[e.Start=1]="Start",e[e.Complete=2]="Complete",e[e.Fail=3]="Fail"}(e.EGAProgressionStatus||(e.EGAProgressionStatus={}));!function(e){e[e.Undefined=0]="Undefined",e[e.Source=1]="Source",e[e.Sink=2]="Sink"}(e.EGAResourceFlowType||(e.EGAResourceFlowType={}));!function(e){!function(e){e[e.Undefined=0]="Undefined",e[e.Rejected=1]="Rejected"}(e.EGASdkErrorType||(e.EGASdkErrorType={}));!function(e){e[e.NoResponse=0]="NoResponse",e[e.BadResponse=1]="BadResponse",e[e.RequestTimeout=2]="RequestTimeout",e[e.JsonEncodeFailed=3]="JsonEncodeFailed",e[e.JsonDecodeFailed=4]="JsonDecodeFailed",e[e.InternalServerError=5]="InternalServerError",e[e.BadRequest=6]="BadRequest",e[e.Unauthorized=7]="Unauthorized",e[e.UnknownResponseCode=8]="UnknownResponseCode",e[e.Ok=9]="Ok"}(e.EGAHTTPApiResponse||(e.EGAHTTPApiResponse={}))}(e.http||(e.http={}))}(gameanalytics||(gameanalytics={}));var EGAErrorSeverity=gameanalytics.EGAErrorSeverity,EGAGender=gameanalytics.EGAGender,EGAProgressionStatus=gameanalytics.EGAProgressionStatus,EGAResourceFlowType=gameanalytics.EGAResourceFlowType,gameanalytics;!function(e){!function(e){var n;!function(e){e[e.Error=0]="Error",e[e.Warning=1]="Warning",e[e.Info=2]="Info",e[e.Debug=3]="Debug"}(n||(n={}));var t=function(){function e(){e.debugEnabled=!1}return e.setInfoLog=function(n){e.instance.infoLogEnabled=n},e.setVerboseLog=function(n){e.instance.infoLogVerboseEnabled=n},e.i=function(t){if(e.instance.infoLogEnabled){var i="Info/"+e.Tag+": "+t;e.instance.sendNotificationMessage(i,n.Info)}},e.w=function(t){var i="Warning/"+e.Tag+": "+t;e.instance.sendNotificationMessage(i,n.Warning)},e.e=function(t){var i="Error/"+e.Tag+": "+t;e.instance.sendNotificationMessage(i,n.Error)},e.ii=function(t){if(e.instance.infoLogVerboseEnabled){var i="Verbose/"+e.Tag+": "+t;e.instance.sendNotificationMessage(i,n.Info)}},e.d=function(t){if(e.debugEnabled){var i="Debug/"+e.Tag+": "+t;e.instance.sendNotificationMessage(i,n.Debug)}},e.prototype.sendNotificationMessage=function(e,t){switch(t){case n.Error:console.error(e);break;case n.Warning:console.warn(e);break;case n.Debug:"function"==typeof console.debug?console.debug(e):console.log(e);break;case n.Info:console.log(e)}},e}();t.instance=new t,t.Tag="GameAnalytics",e.GALogger=t}(e.logging||(e.logging={}))}(gameanalytics||(gameanalytics={}));var gameanalytics;!function(e){!function(n){var t=e.logging.GALogger,i=function(){function e(){}return e.getHmac=function(e,n){var t=CryptoJS.HmacSHA256(n,e);return CryptoJS.enc.Base64.stringify(t)},e.stringMatch=function(e,n){return!(!e||!n)&&n.test(e)},e.joinStringArray=function(e,n){for(var t="",i=0,r=e.length;i0&&(t+=n),t+=e[i];return t},e.stringArrayContainsString=function(e,n){if(0===e.length)return!1;for(var t in e)if(e[t]===n)return!0;return!1},e.encode64=function(n){n=encodeURI(n);var t,i,r,s,o,a="",u=0,c=0,d=0;do{t=n.charCodeAt(d++),i=n.charCodeAt(d++),u=n.charCodeAt(d++),r=t>>2,s=(3&t)<<4|i>>4,o=(15&i)<<2|u>>6,c=63&u,isNaN(i)?o=c=64:isNaN(u)&&(c=64),a=a+e.keyStr.charAt(r)+e.keyStr.charAt(s)+e.keyStr.charAt(o)+e.keyStr.charAt(c),t=i=u=0,r=s=o=c=0}while(d0))return t.w("validateInitRequestResponse failed - invalid value in 'server_ts' field."),null;n.server_ts=i}catch(n){return t.w("validateInitRequestResponse failed - invalid type in 'server_ts' field. type="+typeof e.server_ts+", value="+e.server_ts+", "+n),null}return n},n.validateBuild=function(e){return!!n.validateShortString(e,!1)},n.validateSdkWrapperVersion=function(e){return!!r.stringMatch(e,/^(unity|unreal|gamemaker|cocos2d|construct|defold) [0-9]{0,5}(\.[0-9]{0,5}){0,2}$/)},n.validateEngineVersion=function(e){return!(!e||!r.stringMatch(e,/^(unity|unreal|gamemaker|cocos2d|construct|defold) [0-9]{0,5}(\.[0-9]{0,5}){0,2}$/))},n.validateUserId=function(e){return!!n.validateString(e,!1)||(t.i("Validation fail - user id: id cannot be (null), empty or above 64 characters."),!1)},n.validateShortString=function(e,n){return!(!n||e)||!(!e||e.length>32)},n.validateString=function(e,n){return!(!n||e)||!(!e||e.length>64)},n.validateLongString=function(e,n){return!(!n||e)||!(!e||e.length>8192)},n.validateConnectionType=function(e){return r.stringMatch(e,/^(wwan|wifi|lan|offline)$/)},n.validateCustomDimensions=function(e){return n.validateArrayOfStrings(20,32,!1,"custom dimensions",e)},n.validateResourceCurrencies=function(e){if(!n.validateArrayOfStrings(20,64,!1,"resource currencies",e))return!1;for(var i=0;i0&&s.length>e)return t.i(o+" validation failed: array cannot exceed "+e+" values. It has "+s.length+" values."),!1;for(var a=0;a9999)||(t.i("Validation fail - birthYear: Cannot be (null) or invalid range."),!1)},n.validateClientTs=function(e){return!(e<-4294967294||e>4294967294)},n}();n.GAValidator=s}(e.validators||(e.validators={}))}(gameanalytics||(gameanalytics={}));var gameanalytics;!function(e){!function(e){var n=function(){function e(e,n,t){this.name=e,this.value=n,this.version=t}return e}();e.NameValueVersion=n;var t=function(){function e(e,n){this.name=e,this.version=n}return e}();e.NameVersion=t;var i=function(){function e(){}return e.touch=function(){},e.getRelevantSdkVersion=function(){return e.sdkGameEngineVersion?e.sdkGameEngineVersion:e.sdkWrapperVersion},e.getConnectionType=function(){return e.connectionType},e.updateConnectionType=function(){navigator.onLine?"ios"===e.buildPlatform||"android"===e.buildPlatform?e.connectionType="wwan":e.connectionType="lan":e.connectionType="offline"},e.getOSVersionString=function(){return e.buildPlatform+" "+e.osVersionPair.version},e.runtimePlatformToString=function(){return e.osVersionPair.name},e.getBrowserVersionString=function(){var e,n=navigator.userAgent,t=n.match(/(opera|chrome|safari|firefox|ubrowser|msie|trident|fbav(?=\/))\/?\s*(\d+)/i)||[];if(/trident/i.test(t[1]))return e=/\brv[ :]+(\d+)/g.exec(n)||[],"IE "+(e[1]||"");if("Chrome"===t[1]&&null!=(e=n.match(/\b(OPR|Edge|UBrowser)\/(\d+)/)))return e.slice(1).join(" ").replace("OPR","Opera").replace("UBrowser","UC").toLowerCase();if("fbav"===t[1].toLowerCase()&&(t[1]="facebook",t[2]))return"facebook "+t[2];var i=t[2]?[t[1],t[2]]:[navigator.appName,navigator.appVersion,"-?"];return null!=(e=n.match(/version\/(\d+)/i))&&i.splice(1,1,e[1]),i.join(" ").toLowerCase()},e.getDeviceModel=function(){return"unknown"},e.getDeviceManufacturer=function(){return"unknown"},e.matchItem=function(e,n){var i,r,s,o,a,u=new t("unknown","0.0.0"),c=0,d=0;for(c=0;c0},e.prototype.dequeue=function(){if(this.hasItems())return this.dequeueFromHighPriorityQueue();throw new Error("The queue is empty")},e.prototype.dequeueFromHighPriorityQueue=function(){var e=this._sortedKeys[0],n=this._subQueues[e].shift();return 0===this._subQueues[e].length&&(this._sortedKeys.shift(),delete this._subQueues[e]),n},e}();e.PriorityQueue=n}(e.threading||(e.threading={}))}(gameanalytics||(gameanalytics={}));var gameanalytics;!function(e){!function(n){var t,i=e.logging.GALogger;!function(e){e[e.Equal=0]="Equal",e[e.LessOrEqual=1]="LessOrEqual",e[e.NotEqual=2]="NotEqual"}(t=n.EGAStoreArgsOperator||(n.EGAStoreArgsOperator={}));var r;!function(e){e[e.Events=0]="Events",e[e.Sessions=1]="Sessions",e[e.Progression=2]="Progression"}(r=n.EGAStore||(n.EGAStore={}));var s=function(){function e(){this.eventsStore=[],this.sessionsStore=[],this.progressionStore=[],this.storeItems={};try{"object"==typeof localStorage?(localStorage.setItem("testingLocalStorage","yes"),localStorage.removeItem("testingLocalStorage"),e.storageAvailable=!0):e.storageAvailable=!1}catch(e){}}return e.isStorageAvailable=function(){return e.storageAvailable},e.isStoreTooLargeForEvents=function(){return e.instance.eventsStore.length+e.instance.sessionsStore.length>e.MaxNumberOfEntries},e.select=function(n,i,r,s){void 0===i&&(i=[]),void 0===r&&(r=!1),void 0===s&&(s=0);var o=e.getStore(n);if(!o)return null;for(var a=[],u=0;u0&&a.length>s&&(a=a.slice(0,s+1)),a},e.update=function(n,i,r){void 0===r&&(r=[]);var s=e.getStore(n);if(!s)return!1;for(var o=0;o0)return n.instance.sdkConfig;var e,t=0;for(var i in n.instance.sdkConfigCached)0===t&&(e=i),++t +;return e&&t>0?n.instance.sdkConfigCached:n.instance.sdkConfigDefault},n.isEnabled=function(){var e=n.getSdkConfig();return(!e.enabled||"false"!=e.enabled)&&!!n.instance.initAuthorized},n.setCustomDimension01=function(e){n.instance.currentCustomDimension01=e,s.setItem(n.Dimension01Key,e),r.i("Set custom01 dimension value: "+e)},n.setCustomDimension02=function(e){n.instance.currentCustomDimension02=e,s.setItem(n.Dimension02Key,e),r.i("Set custom02 dimension value: "+e)},n.setCustomDimension03=function(e){n.instance.currentCustomDimension03=e,s.setItem(n.Dimension03Key,e),r.i("Set custom03 dimension value: "+e)},n.setFacebookId=function(e){n.instance.facebookId=e,s.setItem(n.FacebookIdKey,e),r.i("Set facebook id: "+e)},n.setGender=function(t){n.instance.gender=isNaN(Number(e.EGAGender[t]))?e.EGAGender[t].toString().toLowerCase():e.EGAGender[e.EGAGender[t]].toString().toLowerCase(),s.setItem(n.GenderKey,n.instance.gender),r.i("Set gender: "+n.instance.gender)},n.setBirthYear=function(e){n.instance.birthYear=e,s.setItem(n.BirthYearKey,e.toString()),r.i("Set birth year: "+e)},n.incrementSessionNum=function(){var e=n.getSessionNum()+1;n.instance.sessionNum=e},n.incrementTransactionNum=function(){var e=n.getTransactionNum()+1;n.instance.transactionNum=e},n.incrementProgressionTries=function(e){var t=n.getProgressionTries(e)+1;n.instance.progressionTries[e]=t;var i={};i.progression=e,i.tries=t,s.insert(a.Progression,i,!0,"progression")},n.getProgressionTries=function(e){return e in n.instance.progressionTries?n.instance.progressionTries[e]:0},n.clearProgressionTries=function(e){e in n.instance.progressionTries&&delete n.instance.progressionTries[e];var t=[];t.push(["progression",u.Equal,e]),s.delete(a.Progression,t)},n.setKeys=function(e,t){n.instance.gameKey=e,n.instance.gameSecret=t},n.setManualSessionHandling=function(e){n.instance.useManualSessionHandling=e,r.i("Use manual session handling: "+e)},n.getEventAnnotations=function(){var e={};e.v=2,e.user_id=n.instance.identifier,e.client_ts=n.getClientTsAdjusted(),e.sdk_version=o.getRelevantSdkVersion(),e.os_version=o.osVersion,e.manufacturer=o.deviceManufacturer,e.device=o.deviceModel,e.browser_version=o.browserVersion,e.platform=o.buildPlatform,e.session_id=n.instance.sessionId,e[n.SessionNumKey]=n.instance.sessionNum;var i=o.getConnectionType();return t.validateConnectionType(i)&&(e.connection_type=i),o.gameEngineVersion&&(e.engine_version=o.gameEngineVersion),n.instance.build&&(e.build=n.instance.build),n.instance.facebookId&&(e[n.FacebookIdKey]=n.instance.facebookId),n.instance.gender&&(e[n.GenderKey]=n.instance.gender),0!=n.instance.birthYear&&(e[n.BirthYearKey]=n.instance.birthYear),e},n.getSdkErrorEventAnnotations=function(){var e={};e.v=2,e.category=n.CategorySdkError,e.sdk_version=o.getRelevantSdkVersion(),e.os_version=o.osVersion,e.manufacturer=o.deviceManufacturer,e.device=o.deviceModel,e.platform=o.buildPlatform;var i=o.getConnectionType();return t.validateConnectionType(i)&&(e.connection_type=i),o.gameEngineVersion&&(e.engine_version=o.gameEngineVersion),e},n.getInitAnnotations=function(){var e={};return e.sdk_version=o.getRelevantSdkVersion(),e.os_version=o.osVersion,e.platform=o.buildPlatform,e},n.getClientTsAdjusted=function(){var e=i.timeIntervalSince1970(),r=e+n.instance.clientServerTimeOffset;return t.validateClientTs(r)?r:e},n.sessionIsStarted=function(){return 0!=n.instance.sessionStart},n.cacheIdentifier=function(){n.instance.userId?n.instance.identifier=n.instance.userId:n.instance.defaultUserId&&(n.instance.identifier=n.instance.defaultUserId)},n.ensurePersistedStates=function(){s.isStorageAvailable()&&s.load();var e=n.instance;e.setDefaultId(null!=s.getItem(n.DefaultUserIdKey)?s.getItem(n.DefaultUserIdKey):i.createGuid()),e.sessionNum=null!=s.getItem(n.SessionNumKey)?Number(s.getItem(n.SessionNumKey)):0,e.transactionNum=null!=s.getItem(n.TransactionNumKey)?Number(s.getItem(n.TransactionNumKey)):0,e.facebookId?s.setItem(n.FacebookIdKey,e.facebookId):(e.facebookId=null!=s.getItem(n.FacebookIdKey)?s.getItem(n.FacebookIdKey):"",e.facebookId),e.gender?s.setItem(n.GenderKey,e.gender):(e.gender=null!=s.getItem(n.GenderKey)?s.getItem(n.GenderKey):"",e.gender),e.birthYear&&0!=e.birthYear?s.setItem(n.BirthYearKey,e.birthYear.toString()):(e.birthYear=null!=s.getItem(n.BirthYearKey)?Number(s.getItem(n.BirthYearKey)):0,e.birthYear),e.currentCustomDimension01?s.setItem(n.Dimension01Key,e.currentCustomDimension01):(e.currentCustomDimension01=null!=s.getItem(n.Dimension01Key)?s.getItem(n.Dimension01Key):"",e.currentCustomDimension01),e.currentCustomDimension02?s.setItem(n.Dimension02Key,e.currentCustomDimension02):(e.currentCustomDimension02=null!=s.getItem(n.Dimension02Key)?s.getItem(n.Dimension02Key):"",e.currentCustomDimension02),e.currentCustomDimension03?s.setItem(n.Dimension03Key,e.currentCustomDimension03):(e.currentCustomDimension03=null!=s.getItem(n.Dimension03Key)?s.getItem(n.Dimension03Key):"",e.currentCustomDimension03);var t=null!=s.getItem(n.SdkConfigCachedKey)?s.getItem(n.SdkConfigCachedKey):"";if(t){var r=JSON.parse(i.decode64(t));r&&(e.sdkConfigCached=r)}var o=s.select(a.Progression);if(o)for(var u=0;u=e.MaxCount)){var a=t.getHmac(o,s),u=new XMLHttpRequest;u.onreadystatechange=function(){if(4===u.readyState){if(!u.responseText)return;if(200!=u.status)return void i.w("sdk error failed. response code not 200. status code: "+u.status+", description: "+u.statusText+", body: "+u.responseText);e.countMap[r]=e.countMap[r]+1}},u.open("POST",n,!0),u.setRequestHeader("Content-Type","application/json"),u.setRequestHeader("Authorization",a);try{u.send(s)}catch(e){console.error(e)}}},e}();r.MaxCount=10,r.countMap={},n.SdkErrorTask=r}(e.tasks||(e.tasks={}))}(gameanalytics||(gameanalytics={}));var gameanalytics;!function(e){!function(n){var t=e.state.GAState,i=e.logging.GALogger,r=e.utilities.GAUtilities,s=e.validators.GAValidator,o=e.tasks.SdkErrorTask,a=function(){function e(){this.protocol="https",this.hostName="api.gameanalytics.com",this.version="v2",this.baseUrl=this.protocol+"://"+this.hostName+"/"+this.version,this.initializeUrlPath="init",this.eventsUrlPath="events",this.useGzip=!1}return e.prototype.requestInit=function(i){var r=t.getGameKey(),s=this.baseUrl+"/"+r+"/"+this.initializeUrlPath,o=t.getInitAnnotations(),a=JSON.stringify(o);if(!a)return void i(n.EGAHTTPApiResponse.JsonEncodeFailed,null);var u=this.createPayloadData(a,this.useGzip),c=[];c.push(a),e.sendRequest(s,u,c,this.useGzip,e.initRequestCallback,i)},e.prototype.sendEventsInArray=function(i,r,s){if(0!=i.length){var o=t.getGameKey(),a=this.baseUrl+"/"+o+"/"+this.eventsUrlPath,u=JSON.stringify(i);if(!u)return void s(n.EGAHTTPApiResponse.JsonEncodeFailed,null,r,i.length);var c=this.createPayloadData(u,this.useGzip),d=[];d.push(u),d.push(r),d.push(i.length.toString()),e.sendRequest(a,c,d,this.useGzip,e.sendEventInArrayRequestCallback,s)}},e.prototype.sendSdkErrorEvent=function(n){var r=t.getGameKey(),a=t.getGameSecret();if(s.validateSdkErrorEvent(r,a,n)){var u=this.baseUrl+"/"+r+"/"+this.eventsUrlPath,c="",d=t.getSdkErrorEventAnnotations(),l=e.sdkErrorTypeToString(n);d.type=l;var f=[];if(f.push(d),!(c=JSON.stringify(f)))return void i.w("sendSdkErrorEvent: JSON encoding failed.");o.execute(u,n,c,a)}},e.sendEventInArrayRequestCallback=function(t,i,r,s){void 0===s&&(s=null);var o=(s[0],s[1],s[2]),a=parseInt(s[3]),u="",c=0;u=t.responseText,c=t.status;var d=e.instance.processRequestResponse(c,t.statusText,u,"Events");if(d!=n.EGAHTTPApiResponse.Ok&&d!=n.EGAHTTPApiResponse.BadRequest)return void r(d,null,o,a);var l=u?JSON.parse(u):{};if(null==l)return void r(n.EGAHTTPApiResponse.JsonDecodeFailed,null,o,a);n.EGAHTTPApiResponse.BadRequest,r(d,l,o,a)},e.sendRequest=function(e,n,i,s,o,a){var u=new XMLHttpRequest,c=t.getGameSecret(),d=r.getHmac(c,n),l=[];l.push(d);for(var f in i)l.push(i[f]);if(u.onreadystatechange=function(){4===u.readyState&&o(u,e,a,l)},u.open("POST",e,!0),u.setRequestHeader("Content-Type","text/plain"),u.setRequestHeader("Authorization",d),s)throw new Error("gzip not supported");try{u.send(n)}catch(e){console.error(e.stack)}},e.initRequestCallback=function(t,i,r,o){void 0===o&&(o=null);var a=(o[0],o[1],""),u=0;a=t.responseText,u=t.status;var c=a?JSON.parse(a):{},d=e.instance.processRequestResponse(u,t.statusText,a,"Init");if(d!=n.EGAHTTPApiResponse.Ok&&d!=n.EGAHTTPApiResponse.BadRequest)return void r(d,null);if(null==c)return void r(n.EGAHTTPApiResponse.JsonDecodeFailed,null);if(d===n.EGAHTTPApiResponse.BadRequest)return void r(d,null);var l=s.validateAndCleanInitRequestResponse(c);if(!l)return void r(n.EGAHTTPApiResponse.BadResponse,null);r(n.EGAHTTPApiResponse.Ok,l)},e.prototype.createPayloadData=function(e,n){if(n)throw new Error("gzip not supported");return e},e.prototype.processRequestResponse=function(e,t,i,r){return i?200===e?n.EGAHTTPApiResponse.Ok:0===e||401===e?n.EGAHTTPApiResponse.Unauthorized:400===e?n.EGAHTTPApiResponse.BadRequest:500===e?n.EGAHTTPApiResponse.InternalServerError:n.EGAHTTPApiResponse.UnknownResponseCode:n.EGAHTTPApiResponse.NoResponse},e.sdkErrorTypeToString=function(e){switch(e){case n.EGASdkErrorType.Rejected:return"rejected";default:return""}},e}();a.instance=new a,n.GAHTTPApi=a}(e.http||(e.http={}))}(gameanalytics||(gameanalytics={}));var gameanalytics;!function(e){!function(n){var t=e.store.GAStore,i=e.store.EGAStore,r=e.store.EGAStoreArgsOperator,s=e.state.GAState,o=e.logging.GALogger,a=e.utilities.GAUtilities,u=e.http.EGAHTTPApiResponse,c=e.http.GAHTTPApi,d=e.validators.GAValidator,l=e.http.EGASdkErrorType,f=function(){function n(){}return n.addSessionStartEvent=function(){var e={};e.category=n.CategorySessionStart,s.incrementSessionNum(),t.setItem(s.SessionNumKey,s.getSessionNum().toString()),n.addDimensionsToEvent(e),n.addEventToStore(e),o.i("Add SESSION START event"),n.processEvents(n.CategorySessionStart,!1)},n.addSessionEndEvent=function(){var e=s.getSessionStart(),t=s.getClientTsAdjusted(),i=t-e;i<0&&(o.w("Session length was calculated to be less then 0. Should not be possible. Resetting to 0."),i=0);var r={};r.category=n.CategorySessionEnd,r.length=i,n.addDimensionsToEvent(r),n.addEventToStore(r),o.i("Add SESSION END event."),n.processEvents("",!1)},n.addBusinessEvent=function(e,i,r,a,u){if(void 0===u&&(u=null),!d.validateBusinessEvent(e,i,u,r,a))return void c.instance.sendSdkErrorEvent(l.Rejected);var f={};s.incrementTransactionNum(),t.setItem(s.TransactionNumKey,s.getTransactionNum().toString()),f.event_id=r+":"+a,f.category=n.CategoryBusiness,f.currency=e,f.amount=i,f[s.TransactionNumKey]=s.getTransactionNum(),u&&(f.cart_type=u),n.addDimensionsToEvent(f),o.i("Add BUSINESS event: {currency:"+e+", amount:"+i+", itemType:"+r+", itemId:"+a+", cartType:"+u+"}"),n.addEventToStore(f)},n.addResourceEvent=function(t,i,r,a,u){if(!d.validateResourceEvent(t,i,r,a,u,s.getAvailableResourceCurrencies(),s.getAvailableResourceItemTypes()))return void c.instance.sendSdkErrorEvent(l.Rejected);t===e.EGAResourceFlowType.Sink&&(r*=-1);var f={},v=n.resourceFlowTypeToString(t);f.event_id=v+":"+i+":"+a+":"+u,f.category=n.CategoryResource,f.amount=r,n.addDimensionsToEvent(f),o.i("Add RESOURCE event: {currency:"+i+", amount:"+r+", itemType:"+a+", itemId:"+u+"}"),n.addEventToStore(f)},n.addProgressionEvent=function(t,i,r,a,u,f){var v=n.progressionStatusToString(t);if(!d.validateProgressionEvent(t,i,r,a))return void c.instance.sendSdkErrorEvent(l.Rejected);var g,m={};g=r?a?i+":"+r+":"+a:i+":"+r:i,m.category=n.CategoryProgression,m.event_id=v+":"+g;var p=0;f&&t!=e.EGAProgressionStatus.Start&&(m.score=u),t===e.EGAProgressionStatus.Fail&&s.incrementProgressionTries(g),t===e.EGAProgressionStatus.Complete&&(s.incrementProgressionTries(g),p=s.getProgressionTries(g),m.attempt_num=p,s.clearProgressionTries(g)),n.addDimensionsToEvent(m),o.i("Add PROGRESSION event: {status:"+v+", progression01:"+i+", progression02:"+r+", progression03:"+a+", score:"+u+", attempt:"+p+"}"),n.addEventToStore(m)},n.addDesignEvent=function(e,t,i){if(!d.validateDesignEvent(e,t))return void c.instance.sendSdkErrorEvent(l.Rejected);var r={};r.category=n.CategoryDesign,r.event_id=e,i&&(r.value=t),o.i("Add DESIGN event: {eventId:"+e+", value:"+t+"}"),n.addEventToStore(r)},n.addErrorEvent=function(e,t){var i=n.errorSeverityToString(e);if(!d.validateErrorEvent(e,t))return void c.instance.sendSdkErrorEvent(l.Rejected);var r={};r.category=n.CategoryError,r.severity=i,r.message=t,o.i("Add ERROR event: {severity:"+i+", message:"+t+"}"),n.addEventToStore(r)},n.processEvents=function(e,s){try{var u=a.createGuid();s&&(n.cleanupEvents(),n.fixMissingSessionEndEvents());var d=[];d.push(["status",r.Equal,"new"]);var l=[];l.push(["status",r.Equal,"new"]),e&&(d.push(["category",r.Equal,e]),l.push(["category",r.Equal,e]));var f=[];f.push(["status",u]);var v=t.select(i.Events,d);if(!v||0==v.length)return void o.i("Event queue: No events to send");if(v.length>n.MaxEventCount){if(!(v=t.select(i.Events,d,!0,n.MaxEventCount)))return;var g=v[v.length-1],m=g.client_ts;if(d.push(["client_ts",r.LessOrEqual,m]),!(v=t.select(i.Events,d)))return;l.push(["client_ts",r.LessOrEqual,m])}if(o.i("Event queue: Sending "+v.length+" events."),!t.update(i.Events,f,l))return;for(var p=[],h=0;h0&&(e.ProcessEventsIntervalInSeconds=n)},e.prototype.addTimedBlock=function(e){this.blocks.enqueue(e.deadline.getTime(),e)},e.run=function(){clearTimeout(e.runTimeoutId);try{for(var n;n=e.getNextBlock();)if(!n.ignore)if(n.async){if(!n.running){n.running=!0,n.block();break}}else n.block();return void(e.runTimeoutId=setTimeout(e.run,e.ThreadWaitTimeInMs))}catch(e){t.e("Error on GA thread"),t.e(e.stack)}},e.startThread=function(){e.runTimeoutId=setTimeout(e.run,0)},e.getNextBlock=function(){var n=new Date;return e.instance.blocks.hasItems()&&e.instance.blocks.peek().deadline.getTime()<=n.getTime()?e.instance.blocks.peek().async&&e.instance.blocks.peek().running?e.instance.blocks.peek():e.instance.blocks.dequeue():null},e.processEventQueue=function(){r.processEvents("",!0),e.instance.keepRunning?e.scheduleTimer(e.ProcessEventsIntervalInSeconds,e.processEventQueue):e.instance.isRunning=!1},e}();s.instance=new s,s.ThreadWaitTimeInMs=1e3,s.ProcessEventsIntervalInSeconds=8,n.GAThreading=s}(e.threading||(e.threading={}))}(gameanalytics||(gameanalytics={}));var gameanalytics;!function(e){var n=e.threading.GAThreading,t=e.logging.GALogger,i=e.store.GAStore,r=e.state.GAState,s=e.http.GAHTTPApi,o=e.device.GADevice,a=e.validators.GAValidator,u=e.http.EGAHTTPApiResponse,c=e.utilities.GAUtilities,d=e.events.GAEvents,l=function(){function l(){}return l.init=function(){if(o.touch(),l.methodMap.configureAvailableCustomDimensions01=l.configureAvailableCustomDimensions01,l.methodMap.configureAvailableCustomDimensions02=l.configureAvailableCustomDimensions02,l.methodMap.configureAvailableCustomDimensions03=l.configureAvailableCustomDimensions03,l.methodMap.configureAvailableResourceCurrencies=l.configureAvailableResourceCurrencies,l.methodMap.configureAvailableResourceItemTypes=l.configureAvailableResourceItemTypes,l.methodMap.configureBuild=l.configureBuild,l.methodMap.configureSdkGameEngineVersion=l.configureSdkGameEngineVersion,l.methodMap.configureGameEngineVersion=l.configureGameEngineVersion,l.methodMap.configureUserId=l.configureUserId,l.methodMap.initialize=l.initialize,l.methodMap.addBusinessEvent=l.addBusinessEvent,l.methodMap.addResourceEvent=l.addResourceEvent,l.methodMap.addProgressionEvent=l.addProgressionEvent,l.methodMap.addDesignEvent=l.addDesignEvent,l.methodMap.addErrorEvent=l.addErrorEvent,l.methodMap.addErrorEvent=l.addErrorEvent,l.methodMap.setEnabledInfoLog=l.setEnabledInfoLog,l.methodMap.setEnabledVerboseLog=l.setEnabledVerboseLog,l.methodMap.setEnabledManualSessionHandling=l.setEnabledManualSessionHandling,l.methodMap.setCustomDimension01=l.setCustomDimension01,l.methodMap.setCustomDimension02=l.setCustomDimension02,l.methodMap.setCustomDimension03=l.setCustomDimension03,l.methodMap.setFacebookId=l.setFacebookId,l.methodMap.setGender=l.setGender,l.methodMap.setBirthYear=l.setBirthYear,l.methodMap.setEventProcessInterval=l.setEventProcessInterval,l.methodMap.startSession=l.startSession,l.methodMap.endSession=l.endSession,l.methodMap.onStop=l.onStop,l.methodMap.onResume=l.onResume,"undefined"!=typeof window&&void 0!==window.GameAnalytics&&void 0!==window.GameAnalytics.q){var e=window.GameAnalytics.q;for(var n in e)l.gaCommand.apply(null,e[n])}},l.gaCommand=function(){for(var n=[],t=0;t0&&n[0]in e.GameAnalytics.methodMap&&(n.length>1?e.GameAnalytics.methodMap[n[0]].apply(null,Array.prototype.slice.call(n,1)):e.GameAnalytics.methodMap[n[0]]())},l.configureAvailableCustomDimensions01=function(e){void 0===e&&(e=[]),n.performTaskOnGAThread(function(){if(l.isSdkReady(!0,!1))return void t.w("Available custom dimensions must be set before SDK is initialized");r.setAvailableCustomDimensions01(e)})},l.configureAvailableCustomDimensions02=function(e){void 0===e&&(e=[]),n.performTaskOnGAThread(function(){if(l.isSdkReady(!0,!1))return void t.w("Available custom dimensions must be set before SDK is initialized");r.setAvailableCustomDimensions02(e)})},l.configureAvailableCustomDimensions03=function(e){void 0===e&&(e=[]),n.performTaskOnGAThread(function(){if(l.isSdkReady(!0,!1))return void t.w("Available custom dimensions must be set before SDK is initialized");r.setAvailableCustomDimensions03(e)})},l.configureAvailableResourceCurrencies=function(e){void 0===e&&(e=[]),n.performTaskOnGAThread(function(){if(l.isSdkReady(!0,!1))return void t.w("Available resource currencies must be set before SDK is initialized");r.setAvailableResourceCurrencies(e)})},l.configureAvailableResourceItemTypes=function(e){void 0===e&&(e=[]),n.performTaskOnGAThread(function(){if(l.isSdkReady(!0,!1))return void t.w("Available resource item types must be set before SDK is initialized");r.setAvailableResourceItemTypes(e)})},l.configureBuild=function(e){void 0===e&&(e=""),n.performTaskOnGAThread(function(){return l.isSdkReady(!0,!1)?void t.w("Build version must be set before SDK is initialized."):a.validateBuild(e)?void r.setBuild(e):void t.i("Validation fail - configure build: Cannot be null, empty or above 32 length. String: "+e)})},l.configureSdkGameEngineVersion=function(e){void 0===e&&(e=""),n.performTaskOnGAThread(function(){if(!l.isSdkReady(!0,!1))return a.validateSdkWrapperVersion(e)?void(o.sdkGameEngineVersion=e):void t.i("Validation fail - configure sdk version: Sdk version not supported. String: "+e)})},l.configureGameEngineVersion=function(e){void 0===e&&(e=""),n.performTaskOnGAThread(function(){if(!l.isSdkReady(!0,!1))return a.validateEngineVersion(e)?void(o.gameEngineVersion=e):void t.i("Validation fail - configure game engine version: Game engine version not supported. String: "+e)})},l.configureUserId=function(e){void 0===e&&(e=""),n.performTaskOnGAThread(function(){return l.isSdkReady(!0,!1)?void t.w("A custom user id must be set before SDK is initialized."):a.validateUserId(e)?void r.setUserId(e):void t.i("Validation fail - configure user_id: Cannot be null, empty or above 64 length. Will use default user_id method. Used string: "+e)})},l.initialize=function(e,i){void 0===e&&(e=""),void 0===i&&(i=""),o.updateConnectionType();var s=n.createTimedBlock();s.async=!0,l.initTimedBlockId=s.id,s.block=function(){return l.isSdkReady(!0,!1)?void t.w("SDK already initialized. Can only be called once."):a.validateKeys(e,i)?(r.setKeys(e,i),void l.internalInitialize()):void t.w("SDK failed initialize. Game key or secret key is invalid. Can only contain characters A-z 0-9, gameKey is 32 length, gameSecret is 40 length. Failed keys - gameKey: "+e+", secretKey: "+i)},n.performTimedBlockOnGAThread(s)},l.addBusinessEvent=function(e,t,i,r,s){void 0===e&&(e=""),void 0===t&&(t=0),void 0===i&&(i=""),void 0===r&&(r=""),void 0===s&&(s=""),o.updateConnectionType(),n.performTaskOnGAThread(function(){l.isSdkReady(!0,!0,"Could not add business event")&&d.addBusinessEvent(e,t,i,r,s)})},l.addResourceEvent=function(t,i,r,s,a){void 0===t&&(t=e.EGAResourceFlowType.Undefined),void 0===i&&(i=""),void 0===r&&(r=0),void 0===s&&(s=""),void 0===a&&(a=""),o.updateConnectionType(),n.performTaskOnGAThread(function(){l.isSdkReady(!0,!0,"Could not add resource event")&&d.addResourceEvent(t,i,r,s,a)})},l.addProgressionEvent=function(t,i,r,s,a){void 0===t&&(t=e.EGAProgressionStatus.Undefined),void 0===i&&(i=""),void 0===r&&(r=""),void 0===s&&(s=""),o.updateConnectionType(),n.performTaskOnGAThread(function(){if(l.isSdkReady(!0,!0,"Could not add progression event")){var e=void 0!==a;d.addProgressionEvent(t,i,r,s,e?a:0,e)}})},l.addDesignEvent=function(e,t){o.updateConnectionType(),n.performTaskOnGAThread(function(){if(l.isSdkReady(!0,!0,"Could not add design event")){var n=void 0!==t;d.addDesignEvent(e,n?t:0,n)}})},l.addErrorEvent=function(t,i){void 0===t&&(t=e.EGAErrorSeverity.Undefined),void 0===i&&(i=""),o.updateConnectionType(),n.performTaskOnGAThread(function(){l.isSdkReady(!0,!0,"Could not add error event")&&d.addErrorEvent(t,i)})},l.setEnabledInfoLog=function(e){void 0===e&&(e=!1),n.performTaskOnGAThread(function(){e?(t.setInfoLog(e),t.i("Info logging enabled")):(t.i("Info logging disabled"),t.setInfoLog(e))})},l.setEnabledVerboseLog=function(e){void 0===e&&(e=!1),n.performTaskOnGAThread(function(){e?(t.setVerboseLog(e),t.i("Verbose logging enabled")):(t.i("Verbose logging disabled"),t.setVerboseLog(e))})},l.setEnabledManualSessionHandling=function(e){void 0===e&&(e=!1),n.performTaskOnGAThread(function(){r.setManualSessionHandling(e)})},l.setCustomDimension01=function(e){void 0===e&&(e=""),n.performTaskOnGAThread(function(){if(!a.validateDimension01(e,r.getAvailableCustomDimensions01()))return void t.w("Could not set custom01 dimension value to '"+e+"'. Value not found in available custom01 dimension values");r.setCustomDimension01(e)})},l.setCustomDimension02=function(e){void 0===e&&(e=""),n.performTaskOnGAThread(function(){if(!a.validateDimension02(e,r.getAvailableCustomDimensions02()))return void t.w("Could not set custom02 dimension value to '"+e+"'. Value not found in available custom02 dimension values");r.setCustomDimension02(e)})},l.setCustomDimension03=function(e){void 0===e&&(e=""),n.performTaskOnGAThread(function(){if(!a.validateDimension03(e,r.getAvailableCustomDimensions03()))return void t.w("Could not set custom03 dimension value to '"+e+"'. Value not found in available custom03 dimension values");r.setCustomDimension03(e)})},l.setFacebookId=function(e){void 0===e&&(e=""),n.performTaskOnGAThread(function(){a.validateFacebookId(e)&&r.setFacebookId(e)})},l.setGender=function(t){void 0===t&&(t=e.EGAGender.Undefined),n.performTaskOnGAThread(function(){a.validateGender(t)&&r.setGender(t)})},l.setBirthYear=function(e){void 0===e&&(e=0),n.performTaskOnGAThread(function(){a.validateBirthyear(e)&&r.setBirthYear(e)})},l.setEventProcessInterval=function(e){n.performTaskOnGAThread(function(){n.setEventProcessInterval(e)})},l.startSession=function(){if(r.getUseManualSessionHandling()){if(!r.isInitialized())return;var e=n.createTimedBlock();e.async=!0,l.initTimedBlockId=e.id,e.block=function(){r.isEnabled()&&r.sessionIsStarted()&&n.endSessionAndStopQueue(),l.resumeSessionAndStartQueue()},n.performTimedBlockOnGAThread(e)}},l.endSession=function(){r.getUseManualSessionHandling()&&l.onStop()},l.onStop=function(){n.performTaskOnGAThread(function(){try{n.endSessionAndStopQueue()}catch(e){}})},l.onResume=function(){var e=n.createTimedBlock();e.async=!0,l.initTimedBlockId=e.id,e.block=function(){l.resumeSessionAndStartQueue()},n.performTimedBlockOnGAThread(e)},l.internalInitialize=function(){r.ensurePersistedStates(),i.setItem(r.DefaultUserIdKey,r.getDefaultId()),r.setInitialized(!0),l.newSession(),r.isEnabled()&&n.ensureEventQueueIsRunning()},l.newSession=function(){t.i("Starting a new session."),r.validateAndFixCurrentDimensions(),s.instance.requestInit(l.startNewSessionCallback)},l.startNewSessionCallback=function(e,s){if(e===u.Ok&&s){var o=0;if(s.server_ts){var a=s.server_ts;o=r.calculateServerTimeOffset(a)}s.time_offset=o,i.setItem(r.SdkConfigCachedKey,c.encode64(JSON.stringify(s))),r.instance.sdkConfigCached=s,r.instance.sdkConfig=s,r.instance.initAuthorized=!0}else e==u.Unauthorized?(t.w("Initialize SDK failed - Unauthorized"),r.instance.initAuthorized=!1):(e===u.NoResponse||e===u.RequestTimeout?t.i("Init call (session start) failed - no response. Could be offline or timeout."):e===u.BadResponse||e===u.JsonEncodeFailed||e===u.JsonDecodeFailed?t.i("Init call (session start) failed - bad response. Could be bad response from proxy or GA servers."):e!==u.BadRequest&&e!==u.UnknownResponseCode||t.i("Init call (session start) failed - bad request or unknown response."),null==r.instance.sdkConfig?null!=r.instance.sdkConfigCached?(t.i("Init call (session start) failed - using cached init values."),r.instance.sdkConfig=r.instance.sdkConfigCached):(t.i("Init call (session start) failed - using default init values."), +r.instance.sdkConfig=r.instance.sdkConfigDefault):t.i("Init call (session start) failed - using cached init values."),r.instance.initAuthorized=!0);if(r.instance.clientServerTimeOffset=r.instance.sdkConfig.time_offset?r.instance.sdkConfig.time_offset:0,!r.isEnabled())return t.w("Could not start session: SDK is disabled."),void n.stopEventQueue();n.ensureEventQueueIsRunning();var f=c.createGuid();r.instance.sessionId=f,r.instance.sessionStart=r.getClientTsAdjusted(),d.addSessionStartEvent();var v=n.getTimedBlockById(l.initTimedBlockId);null!=v&&(v.running=!1),l.initTimedBlockId=-1},l.resumeSessionAndStartQueue=function(){r.isInitialized()&&(t.i("Resuming session."),r.sessionIsStarted()||l.newSession())},l.isSdkReady=function(e,n,i){return void 0===n&&(n=!0),void 0===i&&(i=""),i&&(i+=": "),e&&!r.isInitialized()?(n&&t.w(i+"SDK is not initialized"),!1):!(e&&!r.isEnabled())||(n&&t.w(i+"SDK is disabled"),!1)},l}();l.initTimedBlockId=-1,l.methodMap={},e.GameAnalytics=l}(gameanalytics||(gameanalytics={})),gameanalytics.GameAnalytics.init();var GameAnalytics=gameanalytics.GameAnalytics.gaCommand; +scope.gameanalytics=gameanalytics; +scope.GameAnalytics=GameAnalytics; +})(this); diff --git a/gversion/gs/ovo/Tween.js b/gversion/gs/ovo/Tween.js new file mode 100644 index 0000000..78b1d97 --- /dev/null +++ b/gversion/gs/ovo/Tween.js @@ -0,0 +1,814 @@ +/** + * Tween.js - Licensed under the MIT license + * https://github.com/tweenjs/tween.js + * ---------------------------------------------- + * + * See https://github.com/tweenjs/tween.js/graphs/contributors for the full list of contributors. + * Thank you all, you're awesome! + */ + +var TWEEN = TWEEN || (function () { + + var _tweens = []; + + return { + + getAll: function () { + + return _tweens; + + }, + + removeAll: function () { + + _tweens = []; + + }, + + add: function (tween) { + + _tweens.push(tween); + + }, + + remove: function (tween) { + + var i = _tweens.indexOf(tween); + + if (i !== -1) { + _tweens.splice(i, 1); + } + + }, + + update: function (time, preserve) { + + if (_tweens.length === 0) { + return false; + } + + var i = 0; + + time = time !== undefined ? time : TWEEN.now(); + + while (i < _tweens.length) { + + if (_tweens[i].update(time) || preserve) { + i++; + } else { + _tweens.splice(i, 1); + } + + } + + return true; + + } + }; + +})(); + + +// Include a performance.now polyfill. +// In node.js, use process.hrtime. +if (typeof (window) === 'undefined' && typeof (process) !== 'undefined') { + TWEEN.now = function () { + var time = process.hrtime(); + + // Convert [seconds, nanoseconds] to milliseconds. + return time[0] * 1000 + time[1] / 1000000; + }; +} +// In a browser, use window.performance.now if it is available. +else if (typeof (window) !== 'undefined' && + window.performance !== undefined && + window.performance.now !== undefined) { + // This must be bound, because directly assigning this function + // leads to an invocation exception in Chrome. + TWEEN.now = window.performance.now.bind(window.performance); +} +// Use Date.now if it is available. +else if (Date.now !== undefined) { + TWEEN.now = Date.now; +} +// Otherwise, use 'new Date().getTime()'. +else { + TWEEN.now = function () { + return new Date().getTime(); + }; +} + + +TWEEN.Tween = function (object) { + + var _object = null; + if(object) _object = object; + + + var _duration = 1000; + var _time = 0; + var _startTime = null; + + var _reversed = false; + this.isPlaying = false; + + + var _easingFunction = TWEEN.Easing.Linear.None; + var _interpolationFunction = TWEEN.Interpolation.Linear; + + + var _valuesStartOrigin = null; + var _valuesEndOrigin = null; + var _valuesStart = {}; + var _valuesEnd = {}; + + + + var _isReset = true; + + + + var _deltas = {}; + var _deltas_init = {}; + + var _onCompleteCallback = null; + var _onCompleteCallbackScope = null; + var _onReverseCompleteCallback = null; + var _onReverseCompleteCallbackScope = null; + + + this.setObject = function (object) { + if(object) + _object = object; + }; + + //Computes new deltas to tween to + this.to = function (properties, duration) { + _isReset = true; + if (duration !== undefined) { + _duration = duration; + } + + var property, start=0, end=0; + for (property in properties) + { + if (_object[property] === undefined) { + continue; + } + + start = _object[property]; + end = properties[property]; + _deltas[property] = end - start; + _deltas_init[property] = _deltas[property]; + } + + return this; + }; + + + this.reverse = function () { + + var property; + + if(this.isPlaying){ + this.isPlaying = false; + for (property in _deltas) { + if(_reversed){ + _deltas[property] = (1-_value)*_deltas[property]; + }else{ + _deltas[property] = _deltas_init[property]-(1-_value)*_deltas[property]; + } + } + + if(_reversed){ + //console.log("start reverse, currently playing, reverse"); + }else{ + //console.log("start reverse, currently playing, no reverse"); + } + }else{ + //console.log("start reverse, currently not playing; "); + for (property in _deltas) + { + _deltas[property] = _deltas_init[property]; + } + } + + _isReset = false; + _prevValue = 0; + _reversed = true; + _time = TWEEN.now(); + _startTime = TWEEN.now(); + this.isPlaying = true; + + + return this; + }; + + this.start = function (time) { + var property; + + + if(this.isPlaying){ + this.isPlaying = false; + + if(!_isReset){ + for (property in _deltas) { + if(_reversed){ + _deltas[property] = _deltas_init[property]-(1-_value)*_deltas[property]; + }else{ + _deltas[property] = (1-_value)*_deltas[property]; + } + } + } + + + if(_reversed){ + //console.log("start, currently playing, reverse"); + }else{ + //console.log("start, currently playing, no reverse"); + } + }else{ + //console.log("start, currently not playing; "); + for (property in _deltas) + { + _deltas[property] = _deltas_init[property]; + } + } + + + + _isReset = false; + _reversed = false; + _prevValue = 0; + _time = TWEEN.now(); + _startTime = _time; + this.isPlaying = true; + + + return this; + }; + + + + + var _value = 0; //from 0 to 1 ; output of the tween function + var _dvalue = 0; //delta _value and the one of the previous dt + var _prevValue = 0; //_value of the previous dt + + this.update = function (dt) { + + var property; + var elapsed; //% of the duration; from 0 to 1; + + _time = _time + dt; + if (_time < _startTime) { + return true; + } + elapsed = (_time - _startTime) / _duration; + elapsed = elapsed > 1 ? 1 : elapsed; + + + _value = _easingFunction(elapsed); + _dvalue = _value - _prevValue; + _prevValue = _value; + + var dv = 0; + + for (property in _deltas) { + if(_reversed){ + _object[property] += -_dvalue*_deltas[property]; + }else{ + _object[property] += _dvalue*_deltas[property]; + } + + + /*_object[property] = start + dValues[property] * value; + dv = (start + (end - start) * value) - _object[property];*/ + } + + + + if (elapsed === 1) { + if (_onCompleteCallback !== null && !_reversed) { + if(_onCompleteCallbackScope!=null){ + _onCompleteCallback.call(_onCompleteCallbackScope); + }else{ + _onCompleteCallback.call(_object, _object); + } + + } + + if ((_onReverseCompleteCallback !== null) && _reversed) { + if(_onReverseCompleteCallbackScope!=null){ + _onReverseCompleteCallback.call(_onReverseCompleteCallbackScope); + }else{ + _onReverseCompleteCallback.call(_object, _object); + } + } + + this.isPlaying = false; + return false; + } + + return true; + + }; + + + + + + + this.onComplete = function (callback,scope) { + _onCompleteCallback = callback; + _onCompleteCallbackScope = scope; + return this; + }; + + this.onReverseComplete = function (callback,scope) { + + _onReverseCompleteCallback = callback; + _onReverseCompleteCallbackScope = scope; + return this; + + }; + + + this.easing = function (easing) { + + _easingFunction = easing; + return this; + + }; + + this.interpolation = function (interpolation) { + + _interpolationFunction = interpolation; + return this; + + }; + +}; + +TWEEN.Easing = { + + Linear: { + + None: function (k) { + + return k; + + } + + }, + + Quadratic: { + + In: function (k) { + + return k * k; + + }, + + Out: function (k) { + + return k * (2 - k); + + }, + + InOut: function (k) { + + if ((k *= 2) < 1) { + return 0.5 * k * k; + } + + return - 0.5 * (--k * (k - 2) - 1); + + } + + }, + + Cubic: { + + In: function (k) { + + return k * k * k; + + }, + + Out: function (k) { + + return --k * k * k + 1; + + }, + + InOut: function (k) { + + if ((k *= 2) < 1) { + return 0.5 * k * k * k; + } + + return 0.5 * ((k -= 2) * k * k + 2); + + } + + }, + + Quartic: { + + In: function (k) { + + return k * k * k * k; + + }, + + Out: function (k) { + + return 1 - (--k * k * k * k); + + }, + + InOut: function (k) { + + if ((k *= 2) < 1) { + return 0.5 * k * k * k * k; + } + + return - 0.5 * ((k -= 2) * k * k * k - 2); + + } + + }, + + Quintic: { + + In: function (k) { + + return k * k * k * k * k; + + }, + + Out: function (k) { + + return --k * k * k * k * k + 1; + + }, + + InOut: function (k) { + + if ((k *= 2) < 1) { + return 0.5 * k * k * k * k * k; + } + + return 0.5 * ((k -= 2) * k * k * k * k + 2); + + } + + }, + + Sinusoidal: { + + In: function (k) { + + return 1 - Math.cos(k * Math.PI / 2); + + }, + + Out: function (k) { + + return Math.sin(k * Math.PI / 2); + + }, + + InOut: function (k) { + + return 0.5 * (1 - Math.cos(Math.PI * k)); + + } + + }, + + Exponential: { + + In: function (k) { + + return k === 0 ? 0 : Math.pow(1024, k - 1); + + }, + + Out: function (k) { + + return k === 1 ? 1 : 1 - Math.pow(2, - 10 * k); + + }, + + InOut: function (k) { + + if (k === 0) { + return 0; + } + + if (k === 1) { + return 1; + } + + if ((k *= 2) < 1) { + return 0.5 * Math.pow(1024, k - 1); + } + + return 0.5 * (- Math.pow(2, - 10 * (k - 1)) + 2); + + } + + }, + + Circular: { + + In: function (k) { + + return 1 - Math.sqrt(1 - k * k); + + }, + + Out: function (k) { + + return Math.sqrt(1 - (--k * k)); + + }, + + InOut: function (k) { + + if ((k *= 2) < 1) { + return - 0.5 * (Math.sqrt(1 - k * k) - 1); + } + + return 0.5 * (Math.sqrt(1 - (k -= 2) * k) + 1); + + } + + }, + + Elastic: { + + In: function (k) { + + if (k === 0) { + return 0; + } + + if (k === 1) { + return 1; + } + + return -Math.pow(2, 10 * (k - 1)) * Math.sin((k - 1.1) * 5 * Math.PI); + + }, + + Out: function (k) { + + if (k === 0) { + return 0; + } + + if (k === 1) { + return 1; + } + + return Math.pow(2, -10 * k) * Math.sin((k - 0.1) * 5 * Math.PI) + 1; + + }, + + InOut: function (k) { + + if (k === 0) { + return 0; + } + + if (k === 1) { + return 1; + } + + k *= 2; + + if (k < 1) { + return -0.5 * Math.pow(2, 10 * (k - 1)) * Math.sin((k - 1.1) * 5 * Math.PI); + } + + return 0.5 * Math.pow(2, -10 * (k - 1)) * Math.sin((k - 1.1) * 5 * Math.PI) + 1; + + } + + }, + + Back: { + + In: function (k) { + + var s = 1.70158; + + return k * k * ((s + 1) * k - s); + + }, + + Out: function (k) { + + var s = 1.70158; + + return --k * k * ((s + 1) * k + s) + 1; + + }, + + InOut: function (k) { + + var s = 1.70158 * 1.525; + + if ((k *= 2) < 1) { + return 0.5 * (k * k * ((s + 1) * k - s)); + } + + return 0.5 * ((k -= 2) * k * ((s + 1) * k + s) + 2); + + } + + }, + + Bounce: { + + In: function (k) { + + return 1 - TWEEN.Easing.Bounce.Out(1 - k); + + }, + + Out: function (k) { + + if (k < (1 / 2.75)) { + return 7.5625 * k * k; + } else if (k < (2 / 2.75)) { + return 7.5625 * (k -= (1.5 / 2.75)) * k + 0.75; + } else if (k < (2.5 / 2.75)) { + return 7.5625 * (k -= (2.25 / 2.75)) * k + 0.9375; + } else { + return 7.5625 * (k -= (2.625 / 2.75)) * k + 0.984375; + } + + }, + + InOut: function (k) { + + if (k < 0.5) { + return TWEEN.Easing.Bounce.In(k * 2) * 0.5; + } + + return TWEEN.Easing.Bounce.Out(k * 2 - 1) * 0.5 + 0.5; + + } + + } + +}; + +TWEEN.Interpolation = { + + Linear: function (v, k) { + + var m = v.length - 1; + var f = m * k; + var i = Math.floor(f); + var fn = TWEEN.Interpolation.Utils.Linear; + + if (k < 0) { + return fn(v[0], v[1], f); + } + + if (k > 1) { + return fn(v[m], v[m - 1], m - f); + } + + return fn(v[i], v[i + 1 > m ? m : i + 1], f - i); + + }, + + Bezier: function (v, k) { + + var b = 0; + var n = v.length - 1; + var pw = Math.pow; + var bn = TWEEN.Interpolation.Utils.Bernstein; + + for (var i = 0; i <= n; i++) { + b += pw(1 - k, n - i) * pw(k, i) * v[i] * bn(n, i); + } + + return b; + + }, + + CatmullRom: function (v, k) { + + var m = v.length - 1; + var f = m * k; + var i = Math.floor(f); + var fn = TWEEN.Interpolation.Utils.CatmullRom; + + if (v[0] === v[m]) { + + if (k < 0) { + i = Math.floor(f = m * (1 + k)); + } + + return fn(v[(i - 1 + m) % m], v[i], v[(i + 1) % m], v[(i + 2) % m], f - i); + + } else { + + if (k < 0) { + return v[0] - (fn(v[0], v[0], v[1], v[1], -f) - v[0]); + } + + if (k > 1) { + return v[m] - (fn(v[m], v[m], v[m - 1], v[m - 1], f - m) - v[m]); + } + + return fn(v[i ? i - 1 : 0], v[i], v[m < i + 1 ? m : i + 1], v[m < i + 2 ? m : i + 2], f - i); + + } + + }, + + Utils: { + + Linear: function (p0, p1, t) { + + return (p1 - p0) * t + p0; + + }, + + Bernstein: function (n, i) { + + var fc = TWEEN.Interpolation.Utils.Factorial; + + return fc(n) / fc(i) / fc(n - i); + + }, + + Factorial: (function () { + + var a = [1]; + + return function (n) { + + var s = 1; + + if (a[n]) { + return a[n]; + } + + for (var i = n; i > 1; i--) { + s *= i; + } + + a[n] = s; + return s; + + }; + + })(), + + CatmullRom: function (p0, p1, p2, p3, t) { + + var v0 = (p2 - p0) * 0.5; + var v1 = (p3 - p1) * 0.5; + var t2 = t * t; + var t3 = t * t2; + + return (2 * p1 - 2 * p2 + v0 + v1) * t3 + (- 3 * p1 + 3 * p2 - 2 * v0 - v1) * t2 + v0 * t + p1; + + } + + } + +}; + +// UMD (Universal Module Definition) +(function (root) { + + if (typeof define === 'function' && define.amd) { + + // AMD + define([], function () { + return TWEEN; + }); + + } else if (typeof module !== 'undefined' && typeof exports === 'object') { + + // Node.js + module.exports = TWEEN; + + } else if (root !== undefined) { + + // Global variable + root.TWEEN = TWEEN; + + } + +})(this); diff --git a/gversion/gs/ovo/achievements.json b/gversion/gs/ovo/achievements.json new file mode 100644 index 0000000..ed5aeb6 --- /dev/null +++ b/gversion/gs/ovo/achievements.json @@ -0,0 +1,222 @@ +[ + { + "name": "OvO", + "description": "What's this?", + "hidden": false, + "icon": "ovo.png", + "callback": "Skins > Gold", + "params": "5,achievements,0", + "divider": ",", + "type": "n,s,n" + }, + { + "name": "Hittin da head", + "description": "Stop it please", + "hidden": true, + "icon": "ovo2.png", + "callback": "Skins > Gold", + "params": "10,achievements,1", + "divider": ",", + "type": "n,s,n" + }, + { + "name": "Hurtin da head", + "description": ":(", + "hidden": true, + "icon": "ovo3.png", + "callback": "Skins > Gold", + "params": "20,achievements,2", + "divider": ",", + "type": "n,s,n" + }, + { + "name": "Tutorials", + "description": "Finish the tutorial section", + "hidden": false, + "icon": "tutorials.png", + "callback": "Skins > Gold", + "params": "5,achievements,3", + "divider": ",", + "type": "n,s,n" + }, + { + "name": "Getting Serious", + "description": "Finish the getting serious section", + "hidden": false, + "icon": "gettingserious.png", + "callback": "Skins > Gold", + "params": "5,achievements,3", + "divider": ",", + "type": "n,s,n" + }, + { + "name": "Higher Order", + "description": "Finish the higher order section", + "hidden": false, + "icon": "higherorder.png", + "callback": "Skins > Unlock", + "params": "4", + "divider": ",", + "type": "n" + }, + { + "name": "Mechanics", + "description": "Finish the mechanics section", + "hidden": false, + "icon": "mechanics.png", + "callback": "Skins > Unlock", + "params": "1", + "divider": ",", + "type": "n" + }, + { + "name": "OvO Space Program", + "description": "Finish the OvO Space Program section", + "hidden": false, + "icon": "ovospaceprogram.png", + "callback": "Skins > Unlock", + "params": "8", + "divider": ",", + "type": "n" + }, + { + "name": "A mystical journey", + "description": "Finish the Journey through the portal section", + "hidden": false, + "icon": "jttp.png", + "callback": "Skins > Unlock", + "params": "14", + "divider": ",", + "type": "n" + }, + { + "name": "Community Work", + "description": "Finish the Community levels", + "hidden": false, + "icon": "community.png", + "callback": "Skins > Unlock", + "params": "15", + "divider": ",", + "type": "n" + }, + { + "name": "Purified", + "description": "Finish every level", + "hidden": false, + "icon": "purified.png", + "callback": "Skins > Unlock", + "params": "11", + "divider": ",", + "type": "n" + }, + { + "name": "Coins!", + "description": "Collect a coin", + "hidden": false, + "icon": "coin.png", + "callback": "", + "params": "", + "divider": ",", + "type": "" + }, + { + "name": "Coin enthusiast", + "description": "Collect 5 coins", + "hidden": false, + "icon": "coin5.png", + "callback": "", + "params": "", + "divider": ",", + "type": "" + }, + { + "name": "Coin connoisseur", + "description": "Collect 10 coins", + "hidden": false, + "icon": "coin10.png", + "callback": "", + "params": "", + "divider": ",", + "type": "" + }, + { + "name": "Coin hunter", + "description": "Collect 30 coins", + "hidden": false, + "icon": "coin30.png", + "callback": "", + "params": "", + "divider": ",", + "type": "n" + }, + { + "name": "Coin god", + "description": "Collect 40 coins", + "hidden": false, + "icon": "coin40.png", + "callback": "Skins > Unlock", + "params": "7", + "divider": ",", + "type": "n" + }, + { + "name": "Secret Coin", + "description": "Collect the secret coin", + "hidden": true, + "icon": "coinsecret.png", + "callback": "", + "params": "", + "divider": ",", + "type": "n" + }, + { + "name": "Runner", + "description": "Finish OvO in less than 30mn", + "hidden": false, + "icon": "runner.png", + "callback": "", + "params": "", + "divider": ",", + "type": "n" + }, + { + "name": "Speedrunner", + "description": "Finish OvO in less than 20mn", + "hidden": false, + "icon": "speedrunner.png", + "callback": "", + "params": "", + "divider": ",", + "type": "n" + }, + { + "name": "Velocity master", + "description": "Finish OvO in less than 15mn", + "hidden": false, + "icon": "velocity.png", + "callback": "", + "params": "", + "divider": ",", + "type": "n" + }, + { + "name": "Top charts", + "description": "Finish OvO in less than 12mn", + "hidden": false, + "icon": "topcharts.png", + "callback": "Skins > Unlock", + "params": "13", + "divider": ",", + "type": "n" + }, + { + "name": "Light speed", + "description": "Finish OvO in less than 10mn", + "hidden": false, + "icon": "lightspeed.png", + "callback": "", + "params": "", + "divider": ",", + "type": "n" + } +] diff --git a/gversion/gs/ovo/ada.png b/gversion/gs/ovo/ada.png new file mode 100644 index 0000000..1ec682f Binary files /dev/null and b/gversion/gs/ovo/ada.png differ diff --git a/gversion/gs/ovo/adconfig.json b/gversion/gs/ovo/adconfig.json new file mode 100644 index 0000000..10d5b51 --- /dev/null +++ b/gversion/gs/ovo/adconfig.json @@ -0,0 +1,16 @@ +{ + "networks": [ + "Poki", + "CrazyGames", + "GamePix", + "GameDistribution", + "GameMonetize", + "CoolMathGames" + ], + "name": "", + "gameId": "1377b99c10284c229423118a941af3b1", + "removeSocials": false, + "stopAudioInBackground": false, + "removeMidrollRewarded": true, + "noReligion": false +} diff --git a/gversion/gs/ovo/alien.png b/gversion/gs/ovo/alien.png new file mode 100644 index 0000000..5da253d Binary files /dev/null and b/gversion/gs/ovo/alien.png differ diff --git a/gversion/gs/ovo/amongus.png b/gversion/gs/ovo/amongus.png new file mode 100644 index 0000000..5a11c12 Binary files /dev/null and b/gversion/gs/ovo/amongus.png differ diff --git a/gversion/gs/ovo/animate.css b/gversion/gs/ovo/animate.css new file mode 100644 index 0000000..823ce35 --- /dev/null +++ b/gversion/gs/ovo/animate.css @@ -0,0 +1,3504 @@ +@charset "UTF-8"; + +/*! + * animate.css -http://daneden.me/animate + * Version - 3.5.0 + * Licensed under the MIT license - http://opensource.org/licenses/MIT + * + * Copyright (c) 2015 Daniel Eden + */ + +.animated { + -webkit-animation-duration: 1s; + animation-duration: 1s; + -webkit-animation-fill-mode: both; + animation-fill-mode: both; +} + +.animated.infinite { + -webkit-animation-iteration-count: infinite; + animation-iteration-count: infinite; +} + +.animated.hinge { + -webkit-animation-duration: 2s; + animation-duration: 2s; +} + +.animated.flipOutX, +.animated.flipOutY, +.animated.bounceIn, +.animated.bounceOut { + -webkit-animation-duration: .75s; + animation-duration: .75s; +} + +@-webkit-keyframes bounce { + from, 20%, 53%, 80%, to { + -webkit-animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000); + animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000); + -webkit-transform: translate3d(0,0,0); + transform: translate3d(0,0,0); + } + + 40%, 43% { + -webkit-animation-timing-function: cubic-bezier(0.755, 0.050, 0.855, 0.060); + animation-timing-function: cubic-bezier(0.755, 0.050, 0.855, 0.060); + -webkit-transform: translate3d(0, -30px, 0); + transform: translate3d(0, -30px, 0); + } + + 70% { + -webkit-animation-timing-function: cubic-bezier(0.755, 0.050, 0.855, 0.060); + animation-timing-function: cubic-bezier(0.755, 0.050, 0.855, 0.060); + -webkit-transform: translate3d(0, -15px, 0); + transform: translate3d(0, -15px, 0); + } + + 90% { + -webkit-transform: translate3d(0,-4px,0); + transform: translate3d(0,-4px,0); + } +} + +@keyframes bounce { + from, 20%, 53%, 80%, to { + -webkit-animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000); + animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000); + -webkit-transform: translate3d(0,0,0); + transform: translate3d(0,0,0); + } + + 40%, 43% { + -webkit-animation-timing-function: cubic-bezier(0.755, 0.050, 0.855, 0.060); + animation-timing-function: cubic-bezier(0.755, 0.050, 0.855, 0.060); + -webkit-transform: translate3d(0, -30px, 0); + transform: translate3d(0, -30px, 0); + } + + 70% { + -webkit-animation-timing-function: cubic-bezier(0.755, 0.050, 0.855, 0.060); + animation-timing-function: cubic-bezier(0.755, 0.050, 0.855, 0.060); + -webkit-transform: translate3d(0, -15px, 0); + transform: translate3d(0, -15px, 0); + } + + 90% { + -webkit-transform: translate3d(0,-4px,0); + transform: translate3d(0,-4px,0); + } +} + +.bounce { + -webkit-animation-name: bounce; + animation-name: bounce; + -webkit-transform-origin: center bottom; + transform-origin: center bottom; +} + +@-webkit-keyframes flash { + from, 50%, to { + opacity: 1; + } + + 25%, 75% { + opacity: 0; + } +} + +@keyframes flash { + from, 50%, to { + opacity: 1; + } + + 25%, 75% { + opacity: 0; + } +} + +.flash { + -webkit-animation-name: flash; + animation-name: flash; +} + +/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */ + +@-webkit-keyframes pulse { + from { + -webkit-transform: scale3d(1, 1, 1); + transform: scale3d(1, 1, 1); + } + + 50% { + -webkit-transform: scale3d(1.05, 1.05, 1.05); + transform: scale3d(1.05, 1.05, 1.05); + } + + to { + -webkit-transform: scale3d(1, 1, 1); + transform: scale3d(1, 1, 1); + } +} + +@keyframes pulse { + from { + -webkit-transform: scale3d(1, 1, 1); + transform: scale3d(1, 1, 1); + } + + 50% { + -webkit-transform: scale3d(1.05, 1.05, 1.05); + transform: scale3d(1.05, 1.05, 1.05); + } + + to { + -webkit-transform: scale3d(1, 1, 1); + transform: scale3d(1, 1, 1); + } +} + +.pulse { + -webkit-animation-name: pulse; + animation-name: pulse; +} + +@-webkit-keyframes rubberBand { + from { + -webkit-transform: scale3d(1, 1, 1); + transform: scale3d(1, 1, 1); + } + + 30% { + -webkit-transform: scale3d(1.25, 0.75, 1); + transform: scale3d(1.25, 0.75, 1); + } + + 40% { + -webkit-transform: scale3d(0.75, 1.25, 1); + transform: scale3d(0.75, 1.25, 1); + } + + 50% { + -webkit-transform: scale3d(1.15, 0.85, 1); + transform: scale3d(1.15, 0.85, 1); + } + + 65% { + -webkit-transform: scale3d(.95, 1.05, 1); + transform: scale3d(.95, 1.05, 1); + } + + 75% { + -webkit-transform: scale3d(1.05, .95, 1); + transform: scale3d(1.05, .95, 1); + } + + to { + -webkit-transform: scale3d(1, 1, 1); + transform: scale3d(1, 1, 1); + } +} + +@keyframes rubberBand { + from { + -webkit-transform: scale3d(1, 1, 1); + transform: scale3d(1, 1, 1); + } + + 30% { + -webkit-transform: scale3d(1.25, 0.75, 1); + transform: scale3d(1.25, 0.75, 1); + } + + 40% { + -webkit-transform: scale3d(0.75, 1.25, 1); + transform: scale3d(0.75, 1.25, 1); + } + + 50% { + -webkit-transform: scale3d(1.15, 0.85, 1); + transform: scale3d(1.15, 0.85, 1); + } + + 65% { + -webkit-transform: scale3d(.95, 1.05, 1); + transform: scale3d(.95, 1.05, 1); + } + + 75% { + -webkit-transform: scale3d(1.05, .95, 1); + transform: scale3d(1.05, .95, 1); + } + + to { + -webkit-transform: scale3d(1, 1, 1); + transform: scale3d(1, 1, 1); + } +} + +.rubberBand { + -webkit-animation-name: rubberBand; + animation-name: rubberBand; +} + +@-webkit-keyframes shake { + from, to { + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + } + + 10%, 30%, 50%, 70%, 90% { + -webkit-transform: translate3d(-10px, 0, 0); + transform: translate3d(-10px, 0, 0); + } + + 20%, 40%, 60%, 80% { + -webkit-transform: translate3d(10px, 0, 0); + transform: translate3d(10px, 0, 0); + } +} + +@keyframes shake { + from, to { + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + } + + 10%, 30%, 50%, 70%, 90% { + -webkit-transform: translate3d(-10px, 0, 0); + transform: translate3d(-10px, 0, 0); + } + + 20%, 40%, 60%, 80% { + -webkit-transform: translate3d(10px, 0, 0); + transform: translate3d(10px, 0, 0); + } +} + +.shake { + -webkit-animation-name: shake; + animation-name: shake; +} + +@-webkit-keyframes headShake { + 0% { + -webkit-transform: translateX(0); + transform: translateX(0); + } + + 6.5% { + -webkit-transform: translateX(-6px) rotateY(-9deg); + transform: translateX(-6px) rotateY(-9deg); + } + + 18.5% { + -webkit-transform: translateX(5px) rotateY(7deg); + transform: translateX(5px) rotateY(7deg); + } + + 31.5% { + -webkit-transform: translateX(-3px) rotateY(-5deg); + transform: translateX(-3px) rotateY(-5deg); + } + + 43.5% { + -webkit-transform: translateX(2px) rotateY(3deg); + transform: translateX(2px) rotateY(3deg); + } + + 50% { + -webkit-transform: translateX(0); + transform: translateX(0); + } +} + +@keyframes headShake { + 0% { + -webkit-transform: translateX(0); + transform: translateX(0); + } + + 6.5% { + -webkit-transform: translateX(-6px) rotateY(-9deg); + transform: translateX(-6px) rotateY(-9deg); + } + + 18.5% { + -webkit-transform: translateX(5px) rotateY(7deg); + transform: translateX(5px) rotateY(7deg); + } + + 31.5% { + -webkit-transform: translateX(-3px) rotateY(-5deg); + transform: translateX(-3px) rotateY(-5deg); + } + + 43.5% { + -webkit-transform: translateX(2px) rotateY(3deg); + transform: translateX(2px) rotateY(3deg); + } + + 50% { + -webkit-transform: translateX(0); + transform: translateX(0); + } +} + +.headShake { + -webkit-animation-timing-function: ease-in-out; + animation-timing-function: ease-in-out; + -webkit-animation-name: headShake; + animation-name: headShake; +} + +@-webkit-keyframes swing { + 20% { + -webkit-transform: rotate3d(0, 0, 1, 15deg); + transform: rotate3d(0, 0, 1, 15deg); + } + + 40% { + -webkit-transform: rotate3d(0, 0, 1, -10deg); + transform: rotate3d(0, 0, 1, -10deg); + } + + 60% { + -webkit-transform: rotate3d(0, 0, 1, 5deg); + transform: rotate3d(0, 0, 1, 5deg); + } + + 80% { + -webkit-transform: rotate3d(0, 0, 1, -5deg); + transform: rotate3d(0, 0, 1, -5deg); + } + + to { + -webkit-transform: rotate3d(0, 0, 1, 0deg); + transform: rotate3d(0, 0, 1, 0deg); + } +} + +@keyframes swing { + 20% { + -webkit-transform: rotate3d(0, 0, 1, 15deg); + transform: rotate3d(0, 0, 1, 15deg); + } + + 40% { + -webkit-transform: rotate3d(0, 0, 1, -10deg); + transform: rotate3d(0, 0, 1, -10deg); + } + + 60% { + -webkit-transform: rotate3d(0, 0, 1, 5deg); + transform: rotate3d(0, 0, 1, 5deg); + } + + 80% { + -webkit-transform: rotate3d(0, 0, 1, -5deg); + transform: rotate3d(0, 0, 1, -5deg); + } + + to { + -webkit-transform: rotate3d(0, 0, 1, 0deg); + transform: rotate3d(0, 0, 1, 0deg); + } +} + +.swing { + -webkit-transform-origin: top center; + transform-origin: top center; + -webkit-animation-name: swing; + animation-name: swing; +} + +@-webkit-keyframes tada { + from { + -webkit-transform: scale3d(1, 1, 1); + transform: scale3d(1, 1, 1); + } + + 10%, 20% { + -webkit-transform: scale3d(.9, .9, .9) rotate3d(0, 0, 1, -3deg); + transform: scale3d(.9, .9, .9) rotate3d(0, 0, 1, -3deg); + } + + 30%, 50%, 70%, 90% { + -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg); + transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg); + } + + 40%, 60%, 80% { + -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg); + transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg); + } + + to { + -webkit-transform: scale3d(1, 1, 1); + transform: scale3d(1, 1, 1); + } +} + +@keyframes tada { + from { + -webkit-transform: scale3d(1, 1, 1); + transform: scale3d(1, 1, 1); + } + + 10%, 20% { + -webkit-transform: scale3d(.9, .9, .9) rotate3d(0, 0, 1, -3deg); + transform: scale3d(.9, .9, .9) rotate3d(0, 0, 1, -3deg); + } + + 30%, 50%, 70%, 90% { + -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg); + transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg); + } + + 40%, 60%, 80% { + -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg); + transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg); + } + + to { + -webkit-transform: scale3d(1, 1, 1); + transform: scale3d(1, 1, 1); + } +} + +.tada { + -webkit-animation-name: tada; + animation-name: tada; +} + +/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */ + +@-webkit-keyframes wobble { + from { + -webkit-transform: none; + transform: none; + } + + 15% { + -webkit-transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg); + transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg); + } + + 30% { + -webkit-transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg); + transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg); + } + + 45% { + -webkit-transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg); + transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg); + } + + 60% { + -webkit-transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg); + transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg); + } + + 75% { + -webkit-transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg); + transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg); + } + + to { + -webkit-transform: none; + transform: none; + } +} + +@keyframes wobble { + from { + -webkit-transform: none; + transform: none; + } + + 15% { + -webkit-transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg); + transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg); + } + + 30% { + -webkit-transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg); + transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg); + } + + 45% { + -webkit-transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg); + transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg); + } + + 60% { + -webkit-transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg); + transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg); + } + + 75% { + -webkit-transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg); + transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg); + } + + to { + -webkit-transform: none; + transform: none; + } +} + +.wobble { + -webkit-animation-name: wobble; + animation-name: wobble; +} + +@-webkit-keyframes jello { + from, 11.1%, to { + -webkit-transform: none; + transform: none; + } + + 22.2% { + -webkit-transform: skewX(-12.5deg) skewY(-12.5deg); + transform: skewX(-12.5deg) skewY(-12.5deg); + } + + 33.3% { + -webkit-transform: skewX(6.25deg) skewY(6.25deg); + transform: skewX(6.25deg) skewY(6.25deg); + } + + 44.4% { + -webkit-transform: skewX(-3.125deg) skewY(-3.125deg); + transform: skewX(-3.125deg) skewY(-3.125deg); + } + + 55.5% { + -webkit-transform: skewX(1.5625deg) skewY(1.5625deg); + transform: skewX(1.5625deg) skewY(1.5625deg); + } + + 66.6% { + -webkit-transform: skewX(-0.78125deg) skewY(-0.78125deg); + transform: skewX(-0.78125deg) skewY(-0.78125deg); + } + + 77.7% { + -webkit-transform: skewX(0.390625deg) skewY(0.390625deg); + transform: skewX(0.390625deg) skewY(0.390625deg); + } + + 88.8% { + -webkit-transform: skewX(-0.1953125deg) skewY(-0.1953125deg); + transform: skewX(-0.1953125deg) skewY(-0.1953125deg); + } +} + +@keyframes jello { + from, 11.1%, to { + -webkit-transform: none; + transform: none; + } + + 22.2% { + -webkit-transform: skewX(-12.5deg) skewY(-12.5deg); + transform: skewX(-12.5deg) skewY(-12.5deg); + } + + 33.3% { + -webkit-transform: skewX(6.25deg) skewY(6.25deg); + transform: skewX(6.25deg) skewY(6.25deg); + } + + 44.4% { + -webkit-transform: skewX(-3.125deg) skewY(-3.125deg); + transform: skewX(-3.125deg) skewY(-3.125deg); + } + + 55.5% { + -webkit-transform: skewX(1.5625deg) skewY(1.5625deg); + transform: skewX(1.5625deg) skewY(1.5625deg); + } + + 66.6% { + -webkit-transform: skewX(-0.78125deg) skewY(-0.78125deg); + transform: skewX(-0.78125deg) skewY(-0.78125deg); + } + + 77.7% { + -webkit-transform: skewX(0.390625deg) skewY(0.390625deg); + transform: skewX(0.390625deg) skewY(0.390625deg); + } + + 88.8% { + -webkit-transform: skewX(-0.1953125deg) skewY(-0.1953125deg); + transform: skewX(-0.1953125deg) skewY(-0.1953125deg); + } +} + +.jello { + -webkit-animation-name: jello; + animation-name: jello; + -webkit-transform-origin: center; + transform-origin: center; +} + +@-webkit-keyframes bounceIn { + from, 20%, 40%, 60%, 80%, to { + -webkit-animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000); + animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000); + } + + 0% { + opacity: 0; + -webkit-transform: scale3d(.3, .3, .3); + transform: scale3d(.3, .3, .3); + } + + 20% { + -webkit-transform: scale3d(1.1, 1.1, 1.1); + transform: scale3d(1.1, 1.1, 1.1); + } + + 40% { + -webkit-transform: scale3d(.9, .9, .9); + transform: scale3d(.9, .9, .9); + } + + 60% { + opacity: 1; + -webkit-transform: scale3d(1.03, 1.03, 1.03); + transform: scale3d(1.03, 1.03, 1.03); + } + + 80% { + -webkit-transform: scale3d(.97, .97, .97); + transform: scale3d(.97, .97, .97); + } + + to { + opacity: 1; + -webkit-transform: scale3d(1, 1, 1); + transform: scale3d(1, 1, 1); + } +} + +@keyframes bounceIn { + from, 20%, 40%, 60%, 80%, to { + -webkit-animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000); + animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000); + } + + 0% { + opacity: 0; + -webkit-transform: scale3d(.3, .3, .3); + transform: scale3d(.3, .3, .3); + } + + 20% { + -webkit-transform: scale3d(1.1, 1.1, 1.1); + transform: scale3d(1.1, 1.1, 1.1); + } + + 40% { + -webkit-transform: scale3d(.9, .9, .9); + transform: scale3d(.9, .9, .9); + } + + 60% { + opacity: 1; + -webkit-transform: scale3d(1.03, 1.03, 1.03); + transform: scale3d(1.03, 1.03, 1.03); + } + + 80% { + -webkit-transform: scale3d(.97, .97, .97); + transform: scale3d(.97, .97, .97); + } + + to { + opacity: 1; + -webkit-transform: scale3d(1, 1, 1); + transform: scale3d(1, 1, 1); + } +} + +.bounceIn { + -webkit-animation-name: bounceIn; + animation-name: bounceIn; +} + +@-webkit-keyframes bounceInDown { + from, 60%, 75%, 90%, to { + -webkit-animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000); + animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000); + } + + 0% { + opacity: 0; + -webkit-transform: translate3d(0, -3000px, 0); + transform: translate3d(0, -3000px, 0); + } + + 60% { + opacity: 1; + -webkit-transform: translate3d(0, 25px, 0); + transform: translate3d(0, 25px, 0); + } + + 75% { + -webkit-transform: translate3d(0, -10px, 0); + transform: translate3d(0, -10px, 0); + } + + 90% { + -webkit-transform: translate3d(0, 5px, 0); + transform: translate3d(0, 5px, 0); + } + + to { + -webkit-transform: none; + transform: none; + } +} + +@keyframes bounceInDown { + from, 60%, 75%, 90%, to { + -webkit-animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000); + animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000); + } + + 0% { + opacity: 0; + -webkit-transform: translate3d(0, -3000px, 0); + transform: translate3d(0, -3000px, 0); + } + + 60% { + opacity: 1; + -webkit-transform: translate3d(0, 25px, 0); + transform: translate3d(0, 25px, 0); + } + + 75% { + -webkit-transform: translate3d(0, -10px, 0); + transform: translate3d(0, -10px, 0); + } + + 90% { + -webkit-transform: translate3d(0, 5px, 0); + transform: translate3d(0, 5px, 0); + } + + to { + -webkit-transform: none; + transform: none; + } +} + +.bounceInDown { + -webkit-animation-name: bounceInDown; + animation-name: bounceInDown; +} + +@-webkit-keyframes bounceInLeft { + from, 60%, 75%, 90%, to { + -webkit-animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000); + animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000); + } + + 0% { + opacity: 0; + -webkit-transform: translate3d(-3000px, 0, 0); + transform: translate3d(-3000px, 0, 0); + } + + 60% { + opacity: 1; + -webkit-transform: translate3d(25px, 0, 0); + transform: translate3d(25px, 0, 0); + } + + 75% { + -webkit-transform: translate3d(-10px, 0, 0); + transform: translate3d(-10px, 0, 0); + } + + 90% { + -webkit-transform: translate3d(5px, 0, 0); + transform: translate3d(5px, 0, 0); + } + + to { + -webkit-transform: none; + transform: none; + } +} + +@keyframes bounceInLeft { + from, 60%, 75%, 90%, to { + -webkit-animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000); + animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000); + } + + 0% { + opacity: 0; + -webkit-transform: translate3d(-3000px, 0, 0); + transform: translate3d(-3000px, 0, 0); + } + + 60% { + opacity: 1; + -webkit-transform: translate3d(25px, 0, 0); + transform: translate3d(25px, 0, 0); + } + + 75% { + -webkit-transform: translate3d(-10px, 0, 0); + transform: translate3d(-10px, 0, 0); + } + + 90% { + -webkit-transform: translate3d(5px, 0, 0); + transform: translate3d(5px, 0, 0); + } + + to { + -webkit-transform: none; + transform: none; + } +} + +.bounceInLeft { + -webkit-animation-name: bounceInLeft; + animation-name: bounceInLeft; +} + +@-webkit-keyframes bounceInRight { + from, 60%, 75%, 90%, to { + -webkit-animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000); + animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000); + } + + from { + opacity: 0; + -webkit-transform: translate3d(3000px, 0, 0); + transform: translate3d(3000px, 0, 0); + } + + 60% { + opacity: 1; + -webkit-transform: translate3d(-25px, 0, 0); + transform: translate3d(-25px, 0, 0); + } + + 75% { + -webkit-transform: translate3d(10px, 0, 0); + transform: translate3d(10px, 0, 0); + } + + 90% { + -webkit-transform: translate3d(-5px, 0, 0); + transform: translate3d(-5px, 0, 0); + } + + to { + -webkit-transform: none; + transform: none; + } +} + +@keyframes bounceInRight { + from, 60%, 75%, 90%, to { + -webkit-animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000); + animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000); + } + + from { + opacity: 0; + -webkit-transform: translate3d(3000px, 0, 0); + transform: translate3d(3000px, 0, 0); + } + + 60% { + opacity: 1; + -webkit-transform: translate3d(-25px, 0, 0); + transform: translate3d(-25px, 0, 0); + } + + 75% { + -webkit-transform: translate3d(10px, 0, 0); + transform: translate3d(10px, 0, 0); + } + + 90% { + -webkit-transform: translate3d(-5px, 0, 0); + transform: translate3d(-5px, 0, 0); + } + + to { + -webkit-transform: none; + transform: none; + } +} + +.bounceInRight { + -webkit-animation-name: bounceInRight; + animation-name: bounceInRight; +} + +@-webkit-keyframes bounceInUp { + from, 60%, 75%, 90%, to { + -webkit-animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000); + animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000); + } + + from { + opacity: 0; + -webkit-transform: translate3d(0, 3000px, 0); + transform: translate3d(0, 3000px, 0); + } + + 60% { + opacity: 1; + -webkit-transform: translate3d(0, -20px, 0); + transform: translate3d(0, -20px, 0); + } + + 75% { + -webkit-transform: translate3d(0, 10px, 0); + transform: translate3d(0, 10px, 0); + } + + 90% { + -webkit-transform: translate3d(0, -5px, 0); + transform: translate3d(0, -5px, 0); + } + + to { + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + } +} + +@keyframes bounceInUp { + from, 60%, 75%, 90%, to { + -webkit-animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000); + animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000); + } + + from { + opacity: 0; + -webkit-transform: translate3d(0, 3000px, 0); + transform: translate3d(0, 3000px, 0); + } + + 60% { + opacity: 1; + -webkit-transform: translate3d(0, -20px, 0); + transform: translate3d(0, -20px, 0); + } + + 75% { + -webkit-transform: translate3d(0, 10px, 0); + transform: translate3d(0, 10px, 0); + } + + 90% { + -webkit-transform: translate3d(0, -5px, 0); + transform: translate3d(0, -5px, 0); + } + + to { + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + } +} + +.bounceInUp { + -webkit-animation-name: bounceInUp; + animation-name: bounceInUp; +} + +@-webkit-keyframes bounceOut { + 20% { + -webkit-transform: scale3d(.9, .9, .9); + transform: scale3d(.9, .9, .9); + } + + 50%, 55% { + opacity: 1; + -webkit-transform: scale3d(1.1, 1.1, 1.1); + transform: scale3d(1.1, 1.1, 1.1); + } + + to { + opacity: 0; + -webkit-transform: scale3d(.3, .3, .3); + transform: scale3d(.3, .3, .3); + } +} + +@keyframes bounceOut { + 20% { + -webkit-transform: scale3d(.9, .9, .9); + transform: scale3d(.9, .9, .9); + } + + 50%, 55% { + opacity: 1; + -webkit-transform: scale3d(1.1, 1.1, 1.1); + transform: scale3d(1.1, 1.1, 1.1); + } + + to { + opacity: 0; + -webkit-transform: scale3d(.3, .3, .3); + transform: scale3d(.3, .3, .3); + } +} + +.bounceOut { + -webkit-animation-name: bounceOut; + animation-name: bounceOut; +} + +@-webkit-keyframes bounceOutDown { + 20% { + -webkit-transform: translate3d(0, 10px, 0); + transform: translate3d(0, 10px, 0); + } + + 40%, 45% { + opacity: 1; + -webkit-transform: translate3d(0, -20px, 0); + transform: translate3d(0, -20px, 0); + } + + to { + opacity: 0; + -webkit-transform: translate3d(0, 2000px, 0); + transform: translate3d(0, 2000px, 0); + } +} + +@keyframes bounceOutDown { + 20% { + -webkit-transform: translate3d(0, 10px, 0); + transform: translate3d(0, 10px, 0); + } + + 40%, 45% { + opacity: 1; + -webkit-transform: translate3d(0, -20px, 0); + transform: translate3d(0, -20px, 0); + } + + to { + opacity: 0; + -webkit-transform: translate3d(0, 2000px, 0); + transform: translate3d(0, 2000px, 0); + } +} + +.bounceOutDown { + -webkit-animation-name: bounceOutDown; + animation-name: bounceOutDown; +} + +@-webkit-keyframes bounceOutLeft { + 20% { + opacity: 1; + -webkit-transform: translate3d(20px, 0, 0); + transform: translate3d(20px, 0, 0); + } + + to { + opacity: 0; + -webkit-transform: translate3d(-2000px, 0, 0); + transform: translate3d(-2000px, 0, 0); + } +} + +@keyframes bounceOutLeft { + 20% { + opacity: 1; + -webkit-transform: translate3d(20px, 0, 0); + transform: translate3d(20px, 0, 0); + } + + to { + opacity: 0; + -webkit-transform: translate3d(-2000px, 0, 0); + transform: translate3d(-2000px, 0, 0); + } +} + +.bounceOutLeft { + -webkit-animation-name: bounceOutLeft; + animation-name: bounceOutLeft; +} + +@-webkit-keyframes bounceOutRight { + 20% { + opacity: 1; + -webkit-transform: translate3d(-20px, 0, 0); + transform: translate3d(-20px, 0, 0); + } + + to { + opacity: 0; + -webkit-transform: translate3d(2000px, 0, 0); + transform: translate3d(2000px, 0, 0); + } +} + +@keyframes bounceOutRight { + 20% { + opacity: 1; + -webkit-transform: translate3d(-20px, 0, 0); + transform: translate3d(-20px, 0, 0); + } + + to { + opacity: 0; + -webkit-transform: translate3d(2000px, 0, 0); + transform: translate3d(2000px, 0, 0); + } +} + +.bounceOutRight { + -webkit-animation-name: bounceOutRight; + animation-name: bounceOutRight; +} + +@-webkit-keyframes bounceOutUp { + 20% { + -webkit-transform: translate3d(0, -10px, 0); + transform: translate3d(0, -10px, 0); + } + + 40%, 45% { + opacity: 1; + -webkit-transform: translate3d(0, 20px, 0); + transform: translate3d(0, 20px, 0); + } + + to { + opacity: 0; + -webkit-transform: translate3d(0, -2000px, 0); + transform: translate3d(0, -2000px, 0); + } +} + +@keyframes bounceOutUp { + 20% { + -webkit-transform: translate3d(0, -10px, 0); + transform: translate3d(0, -10px, 0); + } + + 40%, 45% { + opacity: 1; + -webkit-transform: translate3d(0, 20px, 0); + transform: translate3d(0, 20px, 0); + } + + to { + opacity: 0; + -webkit-transform: translate3d(0, -2000px, 0); + transform: translate3d(0, -2000px, 0); + } +} + +.bounceOutUp { + -webkit-animation-name: bounceOutUp; + animation-name: bounceOutUp; +} + +@-webkit-keyframes fadeIn { + from { + opacity: 0; + } + + to { + opacity: 1; + } +} + +@keyframes fadeIn { + from { + opacity: 0; + } + + to { + opacity: 1; + } +} + +.fadeIn { + -webkit-animation-name: fadeIn; + animation-name: fadeIn; +} + +@-webkit-keyframes fadeInDown { + from { + opacity: 0; + -webkit-transform: translate3d(0, -100%, 0); + transform: translate3d(0, -100%, 0); + } + + to { + opacity: 1; + -webkit-transform: none; + transform: none; + } +} + +@keyframes fadeInDown { + from { + opacity: 0; + -webkit-transform: translate3d(0, -100%, 0); + transform: translate3d(0, -100%, 0); + } + + to { + opacity: 1; + -webkit-transform: none; + transform: none; + } +} + +.fadeInDown { + -webkit-animation-name: fadeInDown; + animation-name: fadeInDown; +} + +@-webkit-keyframes fadeInDownBig { + from { + opacity: 0; + -webkit-transform: translate3d(0, -2000px, 0); + transform: translate3d(0, -2000px, 0); + } + + to { + opacity: 1; + -webkit-transform: none; + transform: none; + } +} + +@keyframes fadeInDownBig { + from { + opacity: 0; + -webkit-transform: translate3d(0, -2000px, 0); + transform: translate3d(0, -2000px, 0); + } + + to { + opacity: 1; + -webkit-transform: none; + transform: none; + } +} + +.fadeInDownBig { + -webkit-animation-name: fadeInDownBig; + animation-name: fadeInDownBig; +} + +@-webkit-keyframes fadeInLeft { + from { + opacity: 0; + -webkit-transform: translate3d(-100%, 0, 0); + transform: translate3d(-100%, 0, 0); + } + + to { + opacity: 1; + -webkit-transform: none; + transform: none; + } +} + +@keyframes fadeInLeft { + from { + opacity: 0; + -webkit-transform: translate3d(-100%, 0, 0); + transform: translate3d(-100%, 0, 0); + } + + to { + opacity: 1; + -webkit-transform: none; + transform: none; + } +} + +.fadeInLeft { + -webkit-animation-name: fadeInLeft; + animation-name: fadeInLeft; +} + +@-webkit-keyframes fadeInLeftBig { + from { + opacity: 0; + -webkit-transform: translate3d(-2000px, 0, 0); + transform: translate3d(-2000px, 0, 0); + } + + to { + opacity: 1; + -webkit-transform: none; + transform: none; + } +} + +@keyframes fadeInLeftBig { + from { + opacity: 0; + -webkit-transform: translate3d(-2000px, 0, 0); + transform: translate3d(-2000px, 0, 0); + } + + to { + opacity: 1; + -webkit-transform: none; + transform: none; + } +} + +.fadeInLeftBig { + -webkit-animation-name: fadeInLeftBig; + animation-name: fadeInLeftBig; +} + +@-webkit-keyframes fadeInRight { + from { + opacity: 0; + -webkit-transform: translate3d(100%, 0, 0); + transform: translate3d(100%, 0, 0); + } + + to { + opacity: 1; + -webkit-transform: none; + transform: none; + } +} + +@keyframes fadeInRight { + from { + opacity: 0; + -webkit-transform: translate3d(100%, 0, 0); + transform: translate3d(100%, 0, 0); + } + + to { + opacity: 1; + -webkit-transform: none; + transform: none; + } +} + +.fadeInRight { + -webkit-animation-name: fadeInRight; + animation-name: fadeInRight; +} + +@-webkit-keyframes fadeInRightBig { + from { + opacity: 0; + -webkit-transform: translate3d(2000px, 0, 0); + transform: translate3d(2000px, 0, 0); + } + + to { + opacity: 1; + -webkit-transform: none; + transform: none; + } +} + +@keyframes fadeInRightBig { + from { + opacity: 0; + -webkit-transform: translate3d(2000px, 0, 0); + transform: translate3d(2000px, 0, 0); + } + + to { + opacity: 1; + -webkit-transform: none; + transform: none; + } +} + +.fadeInRightBig { + -webkit-animation-name: fadeInRightBig; + animation-name: fadeInRightBig; +} + +@-webkit-keyframes fadeInUp { + from { + opacity: 0; + -webkit-transform: translate3d(0, 100%, 0); + transform: translate3d(0, 100%, 0); + } + + to { + opacity: 1; + -webkit-transform: none; + transform: none; + } +} + +@keyframes fadeInUp { + from { + opacity: 0; + -webkit-transform: translate3d(0, 100%, 0); + transform: translate3d(0, 100%, 0); + } + + to { + opacity: 1; + -webkit-transform: none; + transform: none; + } +} + +.fadeInUp { + -webkit-animation-name: fadeInUp; + animation-name: fadeInUp; +} + +@-webkit-keyframes fadeInUpBig { + from { + opacity: 0; + -webkit-transform: translate3d(0, 2000px, 0); + transform: translate3d(0, 2000px, 0); + } + + to { + opacity: 1; + -webkit-transform: none; + transform: none; + } +} + +@keyframes fadeInUpBig { + from { + opacity: 0; + -webkit-transform: translate3d(0, 2000px, 0); + transform: translate3d(0, 2000px, 0); + } + + to { + opacity: 1; + -webkit-transform: none; + transform: none; + } +} + +.fadeInUpBig { + -webkit-animation-name: fadeInUpBig; + animation-name: fadeInUpBig; +} + +@-webkit-keyframes fadeOut { + from { + opacity: 1; + } + + to { + opacity: 0; + } +} + +@keyframes fadeOut { + from { + opacity: 1; + } + + to { + opacity: 0; + } +} + +.fadeOut { + -webkit-animation-name: fadeOut; + animation-name: fadeOut; +} + +@-webkit-keyframes fadeOutDown { + from { + opacity: 1; + } + + to { + opacity: 0; + -webkit-transform: translate3d(0, 100%, 0); + transform: translate3d(0, 100%, 0); + } +} + +@keyframes fadeOutDown { + from { + opacity: 1; + } + + to { + opacity: 0; + -webkit-transform: translate3d(0, 100%, 0); + transform: translate3d(0, 100%, 0); + } +} + +.fadeOutDown { + -webkit-animation-name: fadeOutDown; + animation-name: fadeOutDown; +} + +@-webkit-keyframes fadeOutDownBig { + from { + opacity: 1; + } + + to { + opacity: 0; + -webkit-transform: translate3d(0, 2000px, 0); + transform: translate3d(0, 2000px, 0); + } +} + +@keyframes fadeOutDownBig { + from { + opacity: 1; + } + + to { + opacity: 0; + -webkit-transform: translate3d(0, 2000px, 0); + transform: translate3d(0, 2000px, 0); + } +} + +.fadeOutDownBig { + -webkit-animation-name: fadeOutDownBig; + animation-name: fadeOutDownBig; +} + +@-webkit-keyframes fadeOutLeft { + from { + opacity: 1; + } + + to { + opacity: 0; + -webkit-transform: translate3d(-100%, 0, 0); + transform: translate3d(-100%, 0, 0); + } +} + +@keyframes fadeOutLeft { + from { + opacity: 1; + } + + to { + opacity: 0; + -webkit-transform: translate3d(-100%, 0, 0); + transform: translate3d(-100%, 0, 0); + } +} + +.fadeOutLeft { + -webkit-animation-name: fadeOutLeft; + animation-name: fadeOutLeft; +} + +@-webkit-keyframes fadeOutLeftBig { + from { + opacity: 1; + } + + to { + opacity: 0; + -webkit-transform: translate3d(-2000px, 0, 0); + transform: translate3d(-2000px, 0, 0); + } +} + +@keyframes fadeOutLeftBig { + from { + opacity: 1; + } + + to { + opacity: 0; + -webkit-transform: translate3d(-2000px, 0, 0); + transform: translate3d(-2000px, 0, 0); + } +} + +.fadeOutLeftBig { + -webkit-animation-name: fadeOutLeftBig; + animation-name: fadeOutLeftBig; +} + +@-webkit-keyframes fadeOutRight { + from { + opacity: 1; + } + + to { + opacity: 0; + -webkit-transform: translate3d(100%, 0, 0); + transform: translate3d(100%, 0, 0); + } +} + +@keyframes fadeOutRight { + from { + opacity: 1; + } + + to { + opacity: 0; + -webkit-transform: translate3d(100%, 0, 0); + transform: translate3d(100%, 0, 0); + } +} + +.fadeOutRight { + -webkit-animation-name: fadeOutRight; + animation-name: fadeOutRight; +} + +@-webkit-keyframes fadeOutRightBig { + from { + opacity: 1; + } + + to { + opacity: 0; + -webkit-transform: translate3d(2000px, 0, 0); + transform: translate3d(2000px, 0, 0); + } +} + +@keyframes fadeOutRightBig { + from { + opacity: 1; + } + + to { + opacity: 0; + -webkit-transform: translate3d(2000px, 0, 0); + transform: translate3d(2000px, 0, 0); + } +} + +.fadeOutRightBig { + -webkit-animation-name: fadeOutRightBig; + animation-name: fadeOutRightBig; +} + +@-webkit-keyframes fadeOutUp { + from { + opacity: 1; + } + + to { + opacity: 0; + -webkit-transform: translate3d(0, -100%, 0); + transform: translate3d(0, -100%, 0); + } +} + +@keyframes fadeOutUp { + from { + opacity: 1; + } + + to { + opacity: 0; + -webkit-transform: translate3d(0, -100%, 0); + transform: translate3d(0, -100%, 0); + } +} + +.fadeOutUp { + -webkit-animation-name: fadeOutUp; + animation-name: fadeOutUp; +} + +@-webkit-keyframes fadeOutUpBig { + from { + opacity: 1; + } + + to { + opacity: 0; + -webkit-transform: translate3d(0, -2000px, 0); + transform: translate3d(0, -2000px, 0); + } +} + +@keyframes fadeOutUpBig { + from { + opacity: 1; + } + + to { + opacity: 0; + -webkit-transform: translate3d(0, -2000px, 0); + transform: translate3d(0, -2000px, 0); + } +} + +.fadeOutUpBig { + -webkit-animation-name: fadeOutUpBig; + animation-name: fadeOutUpBig; +} + +@-webkit-keyframes flip { + from { + -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -360deg); + transform: perspective(400px) rotate3d(0, 1, 0, -360deg); + -webkit-animation-timing-function: ease-out; + animation-timing-function: ease-out; + } + + 40% { + -webkit-transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg); + transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg); + -webkit-animation-timing-function: ease-out; + animation-timing-function: ease-out; + } + + 50% { + -webkit-transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg); + transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg); + -webkit-animation-timing-function: ease-in; + animation-timing-function: ease-in; + } + + 80% { + -webkit-transform: perspective(400px) scale3d(.95, .95, .95); + transform: perspective(400px) scale3d(.95, .95, .95); + -webkit-animation-timing-function: ease-in; + animation-timing-function: ease-in; + } + + to { + -webkit-transform: perspective(400px); + transform: perspective(400px); + -webkit-animation-timing-function: ease-in; + animation-timing-function: ease-in; + } +} + +@keyframes flip { + from { + -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -360deg); + transform: perspective(400px) rotate3d(0, 1, 0, -360deg); + -webkit-animation-timing-function: ease-out; + animation-timing-function: ease-out; + } + + 40% { + -webkit-transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg); + transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg); + -webkit-animation-timing-function: ease-out; + animation-timing-function: ease-out; + } + + 50% { + -webkit-transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg); + transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg); + -webkit-animation-timing-function: ease-in; + animation-timing-function: ease-in; + } + + 80% { + -webkit-transform: perspective(400px) scale3d(.95, .95, .95); + transform: perspective(400px) scale3d(.95, .95, .95); + -webkit-animation-timing-function: ease-in; + animation-timing-function: ease-in; + } + + to { + -webkit-transform: perspective(400px); + transform: perspective(400px); + -webkit-animation-timing-function: ease-in; + animation-timing-function: ease-in; + } +} + +.animated.flip { + -webkit-backface-visibility: visible; + backface-visibility: visible; + -webkit-animation-name: flip; + animation-name: flip; +} + +@-webkit-keyframes flipInX { + from { + -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg); + transform: perspective(400px) rotate3d(1, 0, 0, 90deg); + -webkit-animation-timing-function: ease-in; + animation-timing-function: ease-in; + opacity: 0; + } + + 40% { + -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg); + transform: perspective(400px) rotate3d(1, 0, 0, -20deg); + -webkit-animation-timing-function: ease-in; + animation-timing-function: ease-in; + } + + 60% { + -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 10deg); + transform: perspective(400px) rotate3d(1, 0, 0, 10deg); + opacity: 1; + } + + 80% { + -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -5deg); + transform: perspective(400px) rotate3d(1, 0, 0, -5deg); + } + + to { + -webkit-transform: perspective(400px); + transform: perspective(400px); + } +} + +@keyframes flipInX { + from { + -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg); + transform: perspective(400px) rotate3d(1, 0, 0, 90deg); + -webkit-animation-timing-function: ease-in; + animation-timing-function: ease-in; + opacity: 0; + } + + 40% { + -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg); + transform: perspective(400px) rotate3d(1, 0, 0, -20deg); + -webkit-animation-timing-function: ease-in; + animation-timing-function: ease-in; + } + + 60% { + -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 10deg); + transform: perspective(400px) rotate3d(1, 0, 0, 10deg); + opacity: 1; + } + + 80% { + -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -5deg); + transform: perspective(400px) rotate3d(1, 0, 0, -5deg); + } + + to { + -webkit-transform: perspective(400px); + transform: perspective(400px); + } +} + +.flipInX { + -webkit-backface-visibility: visible !important; + backface-visibility: visible !important; + -webkit-animation-name: flipInX; + animation-name: flipInX; +} + +/************************************/ + +.animated.flipOutXX, +.animated.flipInXX, +.animated.flipInYY, +.animated.flipOutYY +{ + -webkit-animation-duration: .30s !important; + animation-duration: .30s !important; +} + +@-webkit-keyframes flipInXX { + from { + -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 270deg); + transform: perspective(400px) rotate3d(1, 0, 0, 270deg); + -webkit-animation-timing-function: linear; + animation-timing-function: linear; + opacity: 0; + } + to { + -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 360deg); + transform: perspective(400px) rotate3d(1, 0, 0, 360deg); + } +} + +@keyframes flipInXX { + from { + -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 270deg); + transform: perspective(400px) rotate3d(1, 0, 0, 270deg); + -webkit-animation-timing-function: linear; + animation-timing-function: linear; + opacity: 0; + } + to { + -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 360deg); + transform: perspective(400px) rotate3d(1, 0, 0, 360deg); + } +} + +.flipInXX { + -webkit-backface-visibility: visible !important; + backface-visibility: visible !important; + -webkit-animation-name: flipInXX; + animation-name: flipInXX; +} + +@-webkit-keyframes flipOutXX { + from { + -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 0deg); + transform: perspective(400px) rotate3d(1, 0, 0, 0deg); + -webkit-animation-timing-function: linear; + animation-timing-function: linear; + } + to { + -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg); + transform: perspective(400px) rotate3d(1, 0, 0, 90deg); + opacity: 0; + } +} + +@keyframes flipOutXX { + from { + -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 0deg); + transform: perspective(400px) rotate3d(1, 0, 0, 0deg); + -webkit-animation-timing-function: linear; + animation-timing-function: linear; + } + to { + -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg); + transform: perspective(400px) rotate3d(1, 0, 0, 90deg); + opacity: 0; + } +} + +.flipOutXX { + -webkit-backface-visibility: visible !important; + backface-visibility: visible !important; + -webkit-animation-name: flipOutXX; + animation-name: flipOutXX; +} + + +@-webkit-keyframes flipInYY { + from { + -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg); + transform: perspective(400px) rotate3d(0, 1, 0, 90deg); + -webkit-animation-timing-function: ease-out; + animation-timing-function: ease-out; + opacity: 0; + } + to { + -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 360deg); + transform: perspective(400px) rotate3d(0, 1, 0, 360deg); + } +} + +@keyframes flipInYY { + from { + -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 270deg); + transform: perspective(400px) rotate3d(0, 1, 0, 270deg); + -webkit-animation-timing-function: ease-out; + animation-timing-function: ease-out; + opacity: 0; + } + to { + -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 360deg); + transform: perspective(400px) rotate3d(0, 1, 0, 360deg); + } +} + +.flipInYY { + -webkit-backface-visibility: visible !important; + backface-visibility: visible !important; + -webkit-animation-name: flipInYY; + animation-name: flipInYY; +} + + +@-webkit-keyframes flipOutYY { + from { + -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 0deg); + transform: perspective(400px) rotate3d(0, 1, 0, 0deg); + -webkit-animation-timing-function: ease-in; + animation-timing-function: ease-in; + } + to { + -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg); + transform: perspective(400px) rotate3d(0, 1, 0, 90deg); + opacity: 0; + } +} + +@keyframes flipOutYY { + from { + -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 0deg); + transform: perspective(400px) rotate3d(0, 1, 0, 0deg); + -webkit-animation-timing-function: ease-in; + animation-timing-function: ease-in; + } + to { + -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg); + transform: perspective(400px) rotate3d(0, 1, 0, 90deg); + opacity: 0; + } +} + +.flipOutYY { + -webkit-backface-visibility: visible !important; + backface-visibility: visible !important; + -webkit-animation-name: flipOutYY; + animation-name: flipOutYY; +} + + + + + + + + + + +/**************************************/ + +@-webkit-keyframes flipInY { + from { + -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg); + transform: perspective(400px) rotate3d(0, 1, 0, 90deg); + -webkit-animation-timing-function: ease-in; + animation-timing-function: ease-in; + opacity: 0; + } + + 40% { + -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -20deg); + transform: perspective(400px) rotate3d(0, 1, 0, -20deg); + -webkit-animation-timing-function: ease-in; + animation-timing-function: ease-in; + } + + 60% { + -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 10deg); + transform: perspective(400px) rotate3d(0, 1, 0, 10deg); + opacity: 1; + } + + 80% { + -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -5deg); + transform: perspective(400px) rotate3d(0, 1, 0, -5deg); + } + + to { + -webkit-transform: perspective(400px); + transform: perspective(400px); + } +} + +@keyframes flipInY { + from { + -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg); + transform: perspective(400px) rotate3d(0, 1, 0, 90deg); + -webkit-animation-timing-function: ease-in; + animation-timing-function: ease-in; + opacity: 0; + } + + 40% { + -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -20deg); + transform: perspective(400px) rotate3d(0, 1, 0, -20deg); + -webkit-animation-timing-function: ease-in; + animation-timing-function: ease-in; + } + + 60% { + -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 10deg); + transform: perspective(400px) rotate3d(0, 1, 0, 10deg); + opacity: 1; + } + + 80% { + -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -5deg); + transform: perspective(400px) rotate3d(0, 1, 0, -5deg); + } + + to { + -webkit-transform: perspective(400px); + transform: perspective(400px); + } +} + +.flipInY { + -webkit-backface-visibility: visible !important; + backface-visibility: visible !important; + -webkit-animation-name: flipInY; + animation-name: flipInY; +} + +@-webkit-keyframes flipOutX { + from { + -webkit-transform: perspective(400px); + transform: perspective(400px); + } + + 30% { + -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg); + transform: perspective(400px) rotate3d(1, 0, 0, -20deg); + opacity: 1; + } + + to { + -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg); + transform: perspective(400px) rotate3d(1, 0, 0, 90deg); + opacity: 0; + } +} + +@keyframes flipOutX { + from { + -webkit-transform: perspective(400px); + transform: perspective(400px); + } + + 30% { + -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg); + transform: perspective(400px) rotate3d(1, 0, 0, -20deg); + opacity: 1; + } + + to { + -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg); + transform: perspective(400px) rotate3d(1, 0, 0, 90deg); + opacity: 0; + } +} + +.flipOutX { + -webkit-animation-name: flipOutX; + animation-name: flipOutX; + -webkit-backface-visibility: visible !important; + backface-visibility: visible !important; +} + +@-webkit-keyframes flipOutY { + from { + -webkit-transform: perspective(400px); + transform: perspective(400px); + } + + 30% { + -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -15deg); + transform: perspective(400px) rotate3d(0, 1, 0, -15deg); + opacity: 1; + } + + to { + -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg); + transform: perspective(400px) rotate3d(0, 1, 0, 90deg); + opacity: 0; + } +} + +@keyframes flipOutY { + from { + -webkit-transform: perspective(400px); + transform: perspective(400px); + } + + 30% { + -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -15deg); + transform: perspective(400px) rotate3d(0, 1, 0, -15deg); + opacity: 1; + } + + to { + -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg); + transform: perspective(400px) rotate3d(0, 1, 0, 90deg); + opacity: 0; + } +} + +.flipOutY { + -webkit-backface-visibility: visible !important; + backface-visibility: visible !important; + -webkit-animation-name: flipOutY; + animation-name: flipOutY; +} + +@-webkit-keyframes lightSpeedIn { + from { + -webkit-transform: translate3d(100%, 0, 0) skewX(-30deg); + transform: translate3d(100%, 0, 0) skewX(-30deg); + opacity: 0; + } + + 60% { + -webkit-transform: skewX(20deg); + transform: skewX(20deg); + opacity: 1; + } + + 80% { + -webkit-transform: skewX(-5deg); + transform: skewX(-5deg); + opacity: 1; + } + + to { + -webkit-transform: none; + transform: none; + opacity: 1; + } +} + +@keyframes lightSpeedIn { + from { + -webkit-transform: translate3d(100%, 0, 0) skewX(-30deg); + transform: translate3d(100%, 0, 0) skewX(-30deg); + opacity: 0; + } + + 60% { + -webkit-transform: skewX(20deg); + transform: skewX(20deg); + opacity: 1; + } + + 80% { + -webkit-transform: skewX(-5deg); + transform: skewX(-5deg); + opacity: 1; + } + + to { + -webkit-transform: none; + transform: none; + opacity: 1; + } +} + +.lightSpeedIn { + -webkit-animation-name: lightSpeedIn; + animation-name: lightSpeedIn; + -webkit-animation-timing-function: ease-out; + animation-timing-function: ease-out; +} + +@-webkit-keyframes lightSpeedOut { + from { + opacity: 1; + } + + to { + -webkit-transform: translate3d(100%, 0, 0) skewX(30deg); + transform: translate3d(100%, 0, 0) skewX(30deg); + opacity: 0; + } +} + +@keyframes lightSpeedOut { + from { + opacity: 1; + } + + to { + -webkit-transform: translate3d(100%, 0, 0) skewX(30deg); + transform: translate3d(100%, 0, 0) skewX(30deg); + opacity: 0; + } +} + +.lightSpeedOut { + -webkit-animation-name: lightSpeedOut; + animation-name: lightSpeedOut; + -webkit-animation-timing-function: ease-in; + animation-timing-function: ease-in; +} + +@-webkit-keyframes rotateIn { + from { + -webkit-transform-origin: center; + transform-origin: center; + -webkit-transform: rotate3d(0, 0, 1, -200deg); + transform: rotate3d(0, 0, 1, -200deg); + opacity: 0; + } + + to { + -webkit-transform-origin: center; + transform-origin: center; + -webkit-transform: none; + transform: none; + opacity: 1; + } +} + +@keyframes rotateIn { + from { + -webkit-transform-origin: center; + transform-origin: center; + -webkit-transform: rotate3d(0, 0, 1, -200deg); + transform: rotate3d(0, 0, 1, -200deg); + opacity: 0; + } + + to { + -webkit-transform-origin: center; + transform-origin: center; + -webkit-transform: none; + transform: none; + opacity: 1; + } +} + +.rotateIn { + -webkit-animation-name: rotateIn; + animation-name: rotateIn; +} + +@-webkit-keyframes rotateInDownLeft { + from { + -webkit-transform-origin: left bottom; + transform-origin: left bottom; + -webkit-transform: rotate3d(0, 0, 1, -45deg); + transform: rotate3d(0, 0, 1, -45deg); + opacity: 0; + } + + to { + -webkit-transform-origin: left bottom; + transform-origin: left bottom; + -webkit-transform: none; + transform: none; + opacity: 1; + } +} + +@keyframes rotateInDownLeft { + from { + -webkit-transform-origin: left bottom; + transform-origin: left bottom; + -webkit-transform: rotate3d(0, 0, 1, -45deg); + transform: rotate3d(0, 0, 1, -45deg); + opacity: 0; + } + + to { + -webkit-transform-origin: left bottom; + transform-origin: left bottom; + -webkit-transform: none; + transform: none; + opacity: 1; + } +} + +.rotateInDownLeft { + -webkit-animation-name: rotateInDownLeft; + animation-name: rotateInDownLeft; +} + +@-webkit-keyframes rotateInDownRight { + from { + -webkit-transform-origin: right bottom; + transform-origin: right bottom; + -webkit-transform: rotate3d(0, 0, 1, 45deg); + transform: rotate3d(0, 0, 1, 45deg); + opacity: 0; + } + + to { + -webkit-transform-origin: right bottom; + transform-origin: right bottom; + -webkit-transform: none; + transform: none; + opacity: 1; + } +} + +@keyframes rotateInDownRight { + from { + -webkit-transform-origin: right bottom; + transform-origin: right bottom; + -webkit-transform: rotate3d(0, 0, 1, 45deg); + transform: rotate3d(0, 0, 1, 45deg); + opacity: 0; + } + + to { + -webkit-transform-origin: right bottom; + transform-origin: right bottom; + -webkit-transform: none; + transform: none; + opacity: 1; + } +} + +.rotateInDownRight { + -webkit-animation-name: rotateInDownRight; + animation-name: rotateInDownRight; +} + +@-webkit-keyframes rotateInUpLeft { + from { + -webkit-transform-origin: left bottom; + transform-origin: left bottom; + -webkit-transform: rotate3d(0, 0, 1, 45deg); + transform: rotate3d(0, 0, 1, 45deg); + opacity: 0; + } + + to { + -webkit-transform-origin: left bottom; + transform-origin: left bottom; + -webkit-transform: none; + transform: none; + opacity: 1; + } +} + +@keyframes rotateInUpLeft { + from { + -webkit-transform-origin: left bottom; + transform-origin: left bottom; + -webkit-transform: rotate3d(0, 0, 1, 45deg); + transform: rotate3d(0, 0, 1, 45deg); + opacity: 0; + } + + to { + -webkit-transform-origin: left bottom; + transform-origin: left bottom; + -webkit-transform: none; + transform: none; + opacity: 1; + } +} + +.rotateInUpLeft { + -webkit-animation-name: rotateInUpLeft; + animation-name: rotateInUpLeft; +} + +@-webkit-keyframes rotateInUpRight { + from { + -webkit-transform-origin: right bottom; + transform-origin: right bottom; + -webkit-transform: rotate3d(0, 0, 1, -90deg); + transform: rotate3d(0, 0, 1, -90deg); + opacity: 0; + } + + to { + -webkit-transform-origin: right bottom; + transform-origin: right bottom; + -webkit-transform: none; + transform: none; + opacity: 1; + } +} + +@keyframes rotateInUpRight { + from { + -webkit-transform-origin: right bottom; + transform-origin: right bottom; + -webkit-transform: rotate3d(0, 0, 1, -90deg); + transform: rotate3d(0, 0, 1, -90deg); + opacity: 0; + } + + to { + -webkit-transform-origin: right bottom; + transform-origin: right bottom; + -webkit-transform: none; + transform: none; + opacity: 1; + } +} + +.rotateInUpRight { + -webkit-animation-name: rotateInUpRight; + animation-name: rotateInUpRight; +} + +@-webkit-keyframes rotateOut { + from { + -webkit-transform-origin: center; + transform-origin: center; + opacity: 1; + } + + to { + -webkit-transform-origin: center; + transform-origin: center; + -webkit-transform: rotate3d(0, 0, 1, 200deg); + transform: rotate3d(0, 0, 1, 200deg); + opacity: 0; + } +} + +@keyframes rotateOut { + from { + -webkit-transform-origin: center; + transform-origin: center; + opacity: 1; + } + + to { + -webkit-transform-origin: center; + transform-origin: center; + -webkit-transform: rotate3d(0, 0, 1, 200deg); + transform: rotate3d(0, 0, 1, 200deg); + opacity: 0; + } +} + +.rotateOut { + -webkit-animation-name: rotateOut; + animation-name: rotateOut; +} + +@-webkit-keyframes rotateOutDownLeft { + from { + -webkit-transform-origin: left bottom; + transform-origin: left bottom; + opacity: 1; + } + + to { + -webkit-transform-origin: left bottom; + transform-origin: left bottom; + -webkit-transform: rotate3d(0, 0, 1, 45deg); + transform: rotate3d(0, 0, 1, 45deg); + opacity: 0; + } +} + +@keyframes rotateOutDownLeft { + from { + -webkit-transform-origin: left bottom; + transform-origin: left bottom; + opacity: 1; + } + + to { + -webkit-transform-origin: left bottom; + transform-origin: left bottom; + -webkit-transform: rotate3d(0, 0, 1, 45deg); + transform: rotate3d(0, 0, 1, 45deg); + opacity: 0; + } +} + +.rotateOutDownLeft { + -webkit-animation-name: rotateOutDownLeft; + animation-name: rotateOutDownLeft; +} + +@-webkit-keyframes rotateOutDownRight { + from { + -webkit-transform-origin: right bottom; + transform-origin: right bottom; + opacity: 1; + } + + to { + -webkit-transform-origin: right bottom; + transform-origin: right bottom; + -webkit-transform: rotate3d(0, 0, 1, -45deg); + transform: rotate3d(0, 0, 1, -45deg); + opacity: 0; + } +} + +@keyframes rotateOutDownRight { + from { + -webkit-transform-origin: right bottom; + transform-origin: right bottom; + opacity: 1; + } + + to { + -webkit-transform-origin: right bottom; + transform-origin: right bottom; + -webkit-transform: rotate3d(0, 0, 1, -45deg); + transform: rotate3d(0, 0, 1, -45deg); + opacity: 0; + } +} + +.rotateOutDownRight { + -webkit-animation-name: rotateOutDownRight; + animation-name: rotateOutDownRight; +} + +@-webkit-keyframes rotateOutUpLeft { + from { + -webkit-transform-origin: left bottom; + transform-origin: left bottom; + opacity: 1; + } + + to { + -webkit-transform-origin: left bottom; + transform-origin: left bottom; + -webkit-transform: rotate3d(0, 0, 1, -45deg); + transform: rotate3d(0, 0, 1, -45deg); + opacity: 0; + } +} + +@keyframes rotateOutUpLeft { + from { + -webkit-transform-origin: left bottom; + transform-origin: left bottom; + opacity: 1; + } + + to { + -webkit-transform-origin: left bottom; + transform-origin: left bottom; + -webkit-transform: rotate3d(0, 0, 1, -45deg); + transform: rotate3d(0, 0, 1, -45deg); + opacity: 0; + } +} + +.rotateOutUpLeft { + -webkit-animation-name: rotateOutUpLeft; + animation-name: rotateOutUpLeft; +} + +@-webkit-keyframes rotateOutUpRight { + from { + -webkit-transform-origin: right bottom; + transform-origin: right bottom; + opacity: 1; + } + + to { + -webkit-transform-origin: right bottom; + transform-origin: right bottom; + -webkit-transform: rotate3d(0, 0, 1, 90deg); + transform: rotate3d(0, 0, 1, 90deg); + opacity: 0; + } +} + +@keyframes rotateOutUpRight { + from { + -webkit-transform-origin: right bottom; + transform-origin: right bottom; + opacity: 1; + } + + to { + -webkit-transform-origin: right bottom; + transform-origin: right bottom; + -webkit-transform: rotate3d(0, 0, 1, 90deg); + transform: rotate3d(0, 0, 1, 90deg); + opacity: 0; + } +} + +.rotateOutUpRight { + -webkit-animation-name: rotateOutUpRight; + animation-name: rotateOutUpRight; +} + +@-webkit-keyframes hinge { + 0% { + -webkit-transform-origin: top left; + transform-origin: top left; + -webkit-animation-timing-function: ease-in-out; + animation-timing-function: ease-in-out; + } + + 20%, 60% { + -webkit-transform: rotate3d(0, 0, 1, 80deg); + transform: rotate3d(0, 0, 1, 80deg); + -webkit-transform-origin: top left; + transform-origin: top left; + -webkit-animation-timing-function: ease-in-out; + animation-timing-function: ease-in-out; + } + + 40%, 80% { + -webkit-transform: rotate3d(0, 0, 1, 60deg); + transform: rotate3d(0, 0, 1, 60deg); + -webkit-transform-origin: top left; + transform-origin: top left; + -webkit-animation-timing-function: ease-in-out; + animation-timing-function: ease-in-out; + opacity: 1; + } + + to { + -webkit-transform: translate3d(0, 700px, 0); + transform: translate3d(0, 700px, 0); + opacity: 0; + } +} + +@keyframes hinge { + 0% { + -webkit-transform-origin: top left; + transform-origin: top left; + -webkit-animation-timing-function: ease-in-out; + animation-timing-function: ease-in-out; + } + + 20%, 60% { + -webkit-transform: rotate3d(0, 0, 1, 80deg); + transform: rotate3d(0, 0, 1, 80deg); + -webkit-transform-origin: top left; + transform-origin: top left; + -webkit-animation-timing-function: ease-in-out; + animation-timing-function: ease-in-out; + } + + 40%, 80% { + -webkit-transform: rotate3d(0, 0, 1, 60deg); + transform: rotate3d(0, 0, 1, 60deg); + -webkit-transform-origin: top left; + transform-origin: top left; + -webkit-animation-timing-function: ease-in-out; + animation-timing-function: ease-in-out; + opacity: 1; + } + + to { + -webkit-transform: translate3d(0, 700px, 0); + transform: translate3d(0, 700px, 0); + opacity: 0; + } +} + +.hinge { + -webkit-animation-name: hinge; + animation-name: hinge; +} + +/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */ + +@-webkit-keyframes rollIn { + from { + opacity: 0; + -webkit-transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg); + transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg); + } + + to { + opacity: 1; + -webkit-transform: none; + transform: none; + } +} + +@keyframes rollIn { + from { + opacity: 0; + -webkit-transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg); + transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg); + } + + to { + opacity: 1; + -webkit-transform: none; + transform: none; + } +} + +.rollIn { + -webkit-animation-name: rollIn; + animation-name: rollIn; +} + +/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */ + +@-webkit-keyframes rollOut { + from { + opacity: 1; + } + + to { + opacity: 0; + -webkit-transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg); + transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg); + } +} + +@keyframes rollOut { + from { + opacity: 1; + } + + to { + opacity: 0; + -webkit-transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg); + transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg); + } +} + +.rollOut { + -webkit-animation-name: rollOut; + animation-name: rollOut; +} + +@-webkit-keyframes zoomIn { + from { + opacity: 0; + -webkit-transform: scale3d(.3, .3, .3); + transform: scale3d(.3, .3, .3); + } + + 50% { + opacity: 1; + } +} + +@keyframes zoomIn { + from { + opacity: 0; + -webkit-transform: scale3d(.3, .3, .3); + transform: scale3d(.3, .3, .3); + } + + 50% { + opacity: 1; + } +} + +.zoomIn { + -webkit-animation-name: zoomIn; + animation-name: zoomIn; +} + +@-webkit-keyframes zoomInDown { + from { + opacity: 0; + -webkit-transform: scale3d(.1, .1, .1) translate3d(0, -1000px, 0); + transform: scale3d(.1, .1, .1) translate3d(0, -1000px, 0); + -webkit-animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190); + animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190); + } + + 60% { + opacity: 1; + -webkit-transform: scale3d(.475, .475, .475) translate3d(0, 60px, 0); + transform: scale3d(.475, .475, .475) translate3d(0, 60px, 0); + -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1); + animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1); + } +} + +@keyframes zoomInDown { + from { + opacity: 0; + -webkit-transform: scale3d(.1, .1, .1) translate3d(0, -1000px, 0); + transform: scale3d(.1, .1, .1) translate3d(0, -1000px, 0); + -webkit-animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190); + animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190); + } + + 60% { + opacity: 1; + -webkit-transform: scale3d(.475, .475, .475) translate3d(0, 60px, 0); + transform: scale3d(.475, .475, .475) translate3d(0, 60px, 0); + -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1); + animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1); + } +} + +.zoomInDown { + -webkit-animation-name: zoomInDown; + animation-name: zoomInDown; +} + +@-webkit-keyframes zoomInLeft { + from { + opacity: 0; + -webkit-transform: scale3d(.1, .1, .1) translate3d(-1000px, 0, 0); + transform: scale3d(.1, .1, .1) translate3d(-1000px, 0, 0); + -webkit-animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190); + animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190); + } + + 60% { + opacity: 1; + -webkit-transform: scale3d(.475, .475, .475) translate3d(10px, 0, 0); + transform: scale3d(.475, .475, .475) translate3d(10px, 0, 0); + -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1); + animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1); + } +} + +@keyframes zoomInLeft { + from { + opacity: 0; + -webkit-transform: scale3d(.1, .1, .1) translate3d(-1000px, 0, 0); + transform: scale3d(.1, .1, .1) translate3d(-1000px, 0, 0); + -webkit-animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190); + animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190); + } + + 60% { + opacity: 1; + -webkit-transform: scale3d(.475, .475, .475) translate3d(10px, 0, 0); + transform: scale3d(.475, .475, .475) translate3d(10px, 0, 0); + -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1); + animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1); + } +} + +.zoomInLeft { + -webkit-animation-name: zoomInLeft; + animation-name: zoomInLeft; +} + +@-webkit-keyframes zoomInRight { + from { + opacity: 0; + -webkit-transform: scale3d(.1, .1, .1) translate3d(1000px, 0, 0); + transform: scale3d(.1, .1, .1) translate3d(1000px, 0, 0); + -webkit-animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190); + animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190); + } + + 60% { + opacity: 1; + -webkit-transform: scale3d(.475, .475, .475) translate3d(-10px, 0, 0); + transform: scale3d(.475, .475, .475) translate3d(-10px, 0, 0); + -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1); + animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1); + } +} + +@keyframes zoomInRight { + from { + opacity: 0; + -webkit-transform: scale3d(.1, .1, .1) translate3d(1000px, 0, 0); + transform: scale3d(.1, .1, .1) translate3d(1000px, 0, 0); + -webkit-animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190); + animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190); + } + + 60% { + opacity: 1; + -webkit-transform: scale3d(.475, .475, .475) translate3d(-10px, 0, 0); + transform: scale3d(.475, .475, .475) translate3d(-10px, 0, 0); + -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1); + animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1); + } +} + +.zoomInRight { + -webkit-animation-name: zoomInRight; + animation-name: zoomInRight; +} + +@-webkit-keyframes zoomInUp { + from { + opacity: 0; + -webkit-transform: scale3d(.1, .1, .1) translate3d(0, 1000px, 0); + transform: scale3d(.1, .1, .1) translate3d(0, 1000px, 0); + -webkit-animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190); + animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190); + } + + 60% { + opacity: 1; + -webkit-transform: scale3d(.475, .475, .475) translate3d(0, -60px, 0); + transform: scale3d(.475, .475, .475) translate3d(0, -60px, 0); + -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1); + animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1); + } +} + +@keyframes zoomInUp { + from { + opacity: 0; + -webkit-transform: scale3d(.1, .1, .1) translate3d(0, 1000px, 0); + transform: scale3d(.1, .1, .1) translate3d(0, 1000px, 0); + -webkit-animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190); + animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190); + } + + 60% { + opacity: 1; + -webkit-transform: scale3d(.475, .475, .475) translate3d(0, -60px, 0); + transform: scale3d(.475, .475, .475) translate3d(0, -60px, 0); + -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1); + animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1); + } +} + +.zoomInUp { + -webkit-animation-name: zoomInUp; + animation-name: zoomInUp; +} + +@-webkit-keyframes zoomOut { + from { + opacity: 1; + } + + 50% { + opacity: 0; + -webkit-transform: scale3d(.3, .3, .3); + transform: scale3d(.3, .3, .3); + } + + to { + opacity: 0; + } +} + +@keyframes zoomOut { + from { + opacity: 1; + } + + 50% { + opacity: 0; + -webkit-transform: scale3d(.3, .3, .3); + transform: scale3d(.3, .3, .3); + } + + to { + opacity: 0; + } +} + +.zoomOut { + -webkit-animation-name: zoomOut; + animation-name: zoomOut; +} + +@-webkit-keyframes zoomOutDown { + 40% { + opacity: 1; + -webkit-transform: scale3d(.475, .475, .475) translate3d(0, -60px, 0); + transform: scale3d(.475, .475, .475) translate3d(0, -60px, 0); + -webkit-animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190); + animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190); + } + + to { + opacity: 0; + -webkit-transform: scale3d(.1, .1, .1) translate3d(0, 2000px, 0); + transform: scale3d(.1, .1, .1) translate3d(0, 2000px, 0); + -webkit-transform-origin: center bottom; + transform-origin: center bottom; + -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1); + animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1); + } +} + +@keyframes zoomOutDown { + 40% { + opacity: 1; + -webkit-transform: scale3d(.475, .475, .475) translate3d(0, -60px, 0); + transform: scale3d(.475, .475, .475) translate3d(0, -60px, 0); + -webkit-animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190); + animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190); + } + + to { + opacity: 0; + -webkit-transform: scale3d(.1, .1, .1) translate3d(0, 2000px, 0); + transform: scale3d(.1, .1, .1) translate3d(0, 2000px, 0); + -webkit-transform-origin: center bottom; + transform-origin: center bottom; + -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1); + animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1); + } +} + +.zoomOutDown { + -webkit-animation-name: zoomOutDown; + animation-name: zoomOutDown; +} + +@-webkit-keyframes zoomOutLeft { + 40% { + opacity: 1; + -webkit-transform: scale3d(.475, .475, .475) translate3d(42px, 0, 0); + transform: scale3d(.475, .475, .475) translate3d(42px, 0, 0); + } + + to { + opacity: 0; + -webkit-transform: scale(.1) translate3d(-2000px, 0, 0); + transform: scale(.1) translate3d(-2000px, 0, 0); + -webkit-transform-origin: left center; + transform-origin: left center; + } +} + +@keyframes zoomOutLeft { + 40% { + opacity: 1; + -webkit-transform: scale3d(.475, .475, .475) translate3d(42px, 0, 0); + transform: scale3d(.475, .475, .475) translate3d(42px, 0, 0); + } + + to { + opacity: 0; + -webkit-transform: scale(.1) translate3d(-2000px, 0, 0); + transform: scale(.1) translate3d(-2000px, 0, 0); + -webkit-transform-origin: left center; + transform-origin: left center; + } +} + +.zoomOutLeft { + -webkit-animation-name: zoomOutLeft; + animation-name: zoomOutLeft; +} + +@-webkit-keyframes zoomOutRight { + 40% { + opacity: 1; + -webkit-transform: scale3d(.475, .475, .475) translate3d(-42px, 0, 0); + transform: scale3d(.475, .475, .475) translate3d(-42px, 0, 0); + } + + to { + opacity: 0; + -webkit-transform: scale(.1) translate3d(2000px, 0, 0); + transform: scale(.1) translate3d(2000px, 0, 0); + -webkit-transform-origin: right center; + transform-origin: right center; + } +} + +@keyframes zoomOutRight { + 40% { + opacity: 1; + -webkit-transform: scale3d(.475, .475, .475) translate3d(-42px, 0, 0); + transform: scale3d(.475, .475, .475) translate3d(-42px, 0, 0); + } + + to { + opacity: 0; + -webkit-transform: scale(.1) translate3d(2000px, 0, 0); + transform: scale(.1) translate3d(2000px, 0, 0); + -webkit-transform-origin: right center; + transform-origin: right center; + } +} + +.zoomOutRight { + -webkit-animation-name: zoomOutRight; + animation-name: zoomOutRight; +} + +@-webkit-keyframes zoomOutUp { + 40% { + opacity: 1; + -webkit-transform: scale3d(.475, .475, .475) translate3d(0, 60px, 0); + transform: scale3d(.475, .475, .475) translate3d(0, 60px, 0); + -webkit-animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190); + animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190); + } + + to { + opacity: 0; + -webkit-transform: scale3d(.1, .1, .1) translate3d(0, -2000px, 0); + transform: scale3d(.1, .1, .1) translate3d(0, -2000px, 0); + -webkit-transform-origin: center bottom; + transform-origin: center bottom; + -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1); + animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1); + } +} + +@keyframes zoomOutUp { + 40% { + opacity: 1; + -webkit-transform: scale3d(.475, .475, .475) translate3d(0, 60px, 0); + transform: scale3d(.475, .475, .475) translate3d(0, 60px, 0); + -webkit-animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190); + animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190); + } + + to { + opacity: 0; + -webkit-transform: scale3d(.1, .1, .1) translate3d(0, -2000px, 0); + transform: scale3d(.1, .1, .1) translate3d(0, -2000px, 0); + -webkit-transform-origin: center bottom; + transform-origin: center bottom; + -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1); + animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1); + } +} + +.zoomOutUp { + -webkit-animation-name: zoomOutUp; + animation-name: zoomOutUp; +} + +@-webkit-keyframes slideInDown { + from { + -webkit-transform: translate3d(0, -100%, 0); + transform: translate3d(0, -100%, 0); + visibility: visible; + } + + to { + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + } +} + +@keyframes slideInDown { + from { + -webkit-transform: translate3d(0, -100%, 0); + transform: translate3d(0, -100%, 0); + visibility: visible; + } + + to { + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + } +} + +.slideInDown { + -webkit-animation-name: slideInDown; + animation-name: slideInDown; +} + +@-webkit-keyframes slideInLeft { + from { + -webkit-transform: translate3d(-100%, 0, 0); + transform: translate3d(-100%, 0, 0); + visibility: visible; + } + + to { + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + } +} + +@keyframes slideInLeft { + from { + -webkit-transform: translate3d(-100%, 0, 0); + transform: translate3d(-100%, 0, 0); + visibility: visible; + } + + to { + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + } +} + +.slideInLeft { + -webkit-animation-name: slideInLeft; + animation-name: slideInLeft; +} + +@-webkit-keyframes slideInRight { + from { + -webkit-transform: translate3d(100%, 0, 0); + transform: translate3d(100%, 0, 0); + visibility: visible; + } + + to { + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + } +} + +@keyframes slideInRight { + from { + -webkit-transform: translate3d(100%, 0, 0); + transform: translate3d(100%, 0, 0); + visibility: visible; + } + + to { + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + } +} + +.slideInRight { + -webkit-animation-name: slideInRight; + animation-name: slideInRight; +} + +@-webkit-keyframes slideInUp { + from { + -webkit-transform: translate3d(0, 100%, 0); + transform: translate3d(0, 100%, 0); + visibility: visible; + } + + to { + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + } +} + +@keyframes slideInUp { + from { + -webkit-transform: translate3d(0, 100%, 0); + transform: translate3d(0, 100%, 0); + visibility: visible; + } + + to { + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + } +} + +.slideInUp { + -webkit-animation-name: slideInUp; + animation-name: slideInUp; +} + +@-webkit-keyframes slideOutDown { + from { + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + } + + to { + visibility: hidden; + -webkit-transform: translate3d(0, 100%, 0); + transform: translate3d(0, 100%, 0); + } +} + +@keyframes slideOutDown { + from { + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + } + + to { + visibility: hidden; + -webkit-transform: translate3d(0, 100%, 0); + transform: translate3d(0, 100%, 0); + } +} + +.slideOutDown { + -webkit-animation-name: slideOutDown; + animation-name: slideOutDown; +} + +@-webkit-keyframes slideOutLeft { + from { + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + } + + to { + visibility: hidden; + -webkit-transform: translate3d(-100%, 0, 0); + transform: translate3d(-100%, 0, 0); + } +} + +@keyframes slideOutLeft { + from { + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + } + + to { + visibility: hidden; + -webkit-transform: translate3d(-100%, 0, 0); + transform: translate3d(-100%, 0, 0); + } +} + +.slideOutLeft { + -webkit-animation-name: slideOutLeft; + animation-name: slideOutLeft; +} + +@-webkit-keyframes slideOutRight { + from { + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + } + + to { + visibility: hidden; + -webkit-transform: translate3d(100%, 0, 0); + transform: translate3d(100%, 0, 0); + } +} + +@keyframes slideOutRight { + from { + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + } + + to { + visibility: hidden; + -webkit-transform: translate3d(100%, 0, 0); + transform: translate3d(100%, 0, 0); + } +} + +.slideOutRight { + -webkit-animation-name: slideOutRight; + animation-name: slideOutRight; +} + +@-webkit-keyframes slideOutUp { + from { + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + } + + to { + visibility: hidden; + -webkit-transform: translate3d(0, -100%, 0); + transform: translate3d(0, -100%, 0); + } +} + +@keyframes slideOutUp { + from { + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + } + + to { + visibility: hidden; + -webkit-transform: translate3d(0, -100%, 0); + transform: translate3d(0, -100%, 0); + } +} + +.slideOutUp { + -webkit-animation-name: slideOutUp; + animation-name: slideOutUp; +} diff --git a/gversion/gs/ovo/appmanifest.json b/gversion/gs/ovo/appmanifest.json new file mode 100644 index 0000000..8f407e1 --- /dev/null +++ b/gversion/gs/ovo/appmanifest.json @@ -0,0 +1,28 @@ +{ + "name": "OvO", + "short_name": "OvO", + "start_url": "index.html", + "display": "fullscreen", + "orientation": "any", + "icons": [{ + "src": "icon-16.png", + "sizes": "16x16", + "type": "image/png" + }, { + "src": "icon-32.png", + "sizes": "32x32", + "type": "image/png" + }, { + "src": "icon-128.png", + "sizes": "128x128", + "type": "image/png" + }, { + "src": "icon-256.png", + "sizes": "144x144", + "type": "image/png" + }, { + "src": "icon-256.png", + "sizes": "256x256", + "type": "image/png" + }] +} diff --git a/gversion/gs/ovo/astronaut.png b/gversion/gs/ovo/astronaut.png new file mode 100644 index 0000000..9cf7882 Binary files /dev/null and b/gversion/gs/ovo/astronaut.png differ diff --git a/gversion/gs/ovo/batter.png b/gversion/gs/ovo/batter.png new file mode 100644 index 0000000..c2a8adf Binary files /dev/null and b/gversion/gs/ovo/batter.png differ diff --git a/gversion/gs/ovo/brazilian.png b/gversion/gs/ovo/brazilian.png new file mode 100644 index 0000000..cd9ae8c Binary files /dev/null and b/gversion/gs/ovo/brazilian.png differ diff --git a/gversion/gs/ovo/c2runtime.js b/gversion/gs/ovo/c2runtime.js new file mode 100644 index 0000000..b80e878 --- /dev/null +++ b/gversion/gs/ovo/c2runtime.js @@ -0,0 +1,49759 @@ +// Generated by Construct 2, the HTML5 game and app creator :: https://www.construct.net +var cr = {}; +cr.plugins_ = {}; +cr.behaviors = {}; +if (typeof Object.getPrototypeOf !== "function") +{ + if (typeof "test".__proto__ === "object") + { + Object.getPrototypeOf = function(object) { + return object.__proto__; + }; + } + else + { + Object.getPrototypeOf = function(object) { + return object.constructor.prototype; + }; + } +} +(function(){ + cr.logexport = function (msg) + { + if (window.console && window.console.log) + window.console.log(msg); + }; + cr.logerror = function (msg) + { + if (window.console && window.console.error) + window.console.error(msg); + }; + cr.seal = function(x) + { + return x; + }; + cr.freeze = function(x) + { + return x; + }; + cr.is_undefined = function (x) + { + return typeof x === "undefined"; + }; + cr.is_number = function (x) + { + return typeof x === "number"; + }; + cr.is_string = function (x) + { + return typeof x === "string"; + }; + cr.isPOT = function (x) + { + return x > 0 && ((x - 1) & x) === 0; + }; + cr.nextHighestPowerOfTwo = function(x) { + --x; + for (var i = 1; i < 32; i <<= 1) { + x = x | x >> i; + } + return x + 1; + } + cr.abs = function (x) + { + return (x < 0 ? -x : x); + }; + cr.max = function (a, b) + { + return (a > b ? a : b); + }; + cr.min = function (a, b) + { + return (a < b ? a : b); + }; + cr.PI = Math.PI; + cr.round = function (x) + { + return (x + 0.5) | 0; + }; + cr.floor = function (x) + { + if (x >= 0) + return x | 0; + else + return (x | 0) - 1; // correctly round down when negative + }; + cr.ceil = function (x) + { + var f = x | 0; + return (f === x ? f : f + 1); + }; + function Vector2(x, y) + { + this.x = x; + this.y = y; + cr.seal(this); + }; + Vector2.prototype.offset = function (px, py) + { + this.x += px; + this.y += py; + return this; + }; + Vector2.prototype.mul = function (px, py) + { + this.x *= px; + this.y *= py; + return this; + }; + cr.vector2 = Vector2; + cr.segments_intersect = function(a1x, a1y, a2x, a2y, b1x, b1y, b2x, b2y) + { + var max_ax, min_ax, max_ay, min_ay, max_bx, min_bx, max_by, min_by; + if (a1x < a2x) + { + min_ax = a1x; + max_ax = a2x; + } + else + { + min_ax = a2x; + max_ax = a1x; + } + if (b1x < b2x) + { + min_bx = b1x; + max_bx = b2x; + } + else + { + min_bx = b2x; + max_bx = b1x; + } + if (max_ax < min_bx || min_ax > max_bx) + return false; + if (a1y < a2y) + { + min_ay = a1y; + max_ay = a2y; + } + else + { + min_ay = a2y; + max_ay = a1y; + } + if (b1y < b2y) + { + min_by = b1y; + max_by = b2y; + } + else + { + min_by = b2y; + max_by = b1y; + } + if (max_ay < min_by || min_ay > max_by) + return false; + var dpx = b1x - a1x + b2x - a2x; + var dpy = b1y - a1y + b2y - a2y; + var qax = a2x - a1x; + var qay = a2y - a1y; + var qbx = b2x - b1x; + var qby = b2y - b1y; + var d = cr.abs(qay * qbx - qby * qax); + var la = qbx * dpy - qby * dpx; + if (cr.abs(la) > d) + return false; + var lb = qax * dpy - qay * dpx; + return cr.abs(lb) <= d; + }; + function Rect(left, top, right, bottom) + { + this.set(left, top, right, bottom); + cr.seal(this); + }; + Rect.prototype.set = function (left, top, right, bottom) + { + this.left = left; + this.top = top; + this.right = right; + this.bottom = bottom; + }; + Rect.prototype.copy = function (r) + { + this.left = r.left; + this.top = r.top; + this.right = r.right; + this.bottom = r.bottom; + }; + Rect.prototype.width = function () + { + return this.right - this.left; + }; + Rect.prototype.height = function () + { + return this.bottom - this.top; + }; + Rect.prototype.offset = function (px, py) + { + this.left += px; + this.top += py; + this.right += px; + this.bottom += py; + return this; + }; + Rect.prototype.normalize = function () + { + var temp = 0; + if (this.left > this.right) + { + temp = this.left; + this.left = this.right; + this.right = temp; + } + if (this.top > this.bottom) + { + temp = this.top; + this.top = this.bottom; + this.bottom = temp; + } + }; + Rect.prototype.intersects_rect = function (rc) + { + return !(rc.right < this.left || rc.bottom < this.top || rc.left > this.right || rc.top > this.bottom); + }; + Rect.prototype.intersects_rect_off = function (rc, ox, oy) + { + return !(rc.right + ox < this.left || rc.bottom + oy < this.top || rc.left + ox > this.right || rc.top + oy > this.bottom); + }; + Rect.prototype.contains_pt = function (x, y) + { + return (x >= this.left && x <= this.right) && (y >= this.top && y <= this.bottom); + }; + Rect.prototype.equals = function (r) + { + return this.left === r.left && this.top === r.top && this.right === r.right && this.bottom === r.bottom; + }; + cr.rect = Rect; + function Quad() + { + this.tlx = 0; + this.tly = 0; + this.trx = 0; + this.try_ = 0; // is a keyword otherwise! + this.brx = 0; + this.bry = 0; + this.blx = 0; + this.bly = 0; + cr.seal(this); + }; + Quad.prototype.set_from_rect = function (rc) + { + this.tlx = rc.left; + this.tly = rc.top; + this.trx = rc.right; + this.try_ = rc.top; + this.brx = rc.right; + this.bry = rc.bottom; + this.blx = rc.left; + this.bly = rc.bottom; + }; + Quad.prototype.set_from_rotated_rect = function (rc, a) + { + if (a === 0) + { + this.set_from_rect(rc); + } + else + { + var sin_a = Math.sin(a); + var cos_a = Math.cos(a); + var left_sin_a = rc.left * sin_a; + var top_sin_a = rc.top * sin_a; + var right_sin_a = rc.right * sin_a; + var bottom_sin_a = rc.bottom * sin_a; + var left_cos_a = rc.left * cos_a; + var top_cos_a = rc.top * cos_a; + var right_cos_a = rc.right * cos_a; + var bottom_cos_a = rc.bottom * cos_a; + this.tlx = left_cos_a - top_sin_a; + this.tly = top_cos_a + left_sin_a; + this.trx = right_cos_a - top_sin_a; + this.try_ = top_cos_a + right_sin_a; + this.brx = right_cos_a - bottom_sin_a; + this.bry = bottom_cos_a + right_sin_a; + this.blx = left_cos_a - bottom_sin_a; + this.bly = bottom_cos_a + left_sin_a; + } + }; + Quad.prototype.offset = function (px, py) + { + this.tlx += px; + this.tly += py; + this.trx += px; + this.try_ += py; + this.brx += px; + this.bry += py; + this.blx += px; + this.bly += py; + return this; + }; + var minresult = 0; + var maxresult = 0; + function minmax4(a, b, c, d) + { + if (a < b) + { + if (c < d) + { + if (a < c) + minresult = a; + else + minresult = c; + if (b > d) + maxresult = b; + else + maxresult = d; + } + else + { + if (a < d) + minresult = a; + else + minresult = d; + if (b > c) + maxresult = b; + else + maxresult = c; + } + } + else + { + if (c < d) + { + if (b < c) + minresult = b; + else + minresult = c; + if (a > d) + maxresult = a; + else + maxresult = d; + } + else + { + if (b < d) + minresult = b; + else + minresult = d; + if (a > c) + maxresult = a; + else + maxresult = c; + } + } + }; + Quad.prototype.bounding_box = function (rc) + { + minmax4(this.tlx, this.trx, this.brx, this.blx); + rc.left = minresult; + rc.right = maxresult; + minmax4(this.tly, this.try_, this.bry, this.bly); + rc.top = minresult; + rc.bottom = maxresult; + }; + Quad.prototype.contains_pt = function (x, y) + { + var tlx = this.tlx; + var tly = this.tly; + var v0x = this.trx - tlx; + var v0y = this.try_ - tly; + var v1x = this.brx - tlx; + var v1y = this.bry - tly; + var v2x = x - tlx; + var v2y = y - tly; + var dot00 = v0x * v0x + v0y * v0y + var dot01 = v0x * v1x + v0y * v1y + var dot02 = v0x * v2x + v0y * v2y + var dot11 = v1x * v1x + v1y * v1y + var dot12 = v1x * v2x + v1y * v2y + var invDenom = 1.0 / (dot00 * dot11 - dot01 * dot01); + var u = (dot11 * dot02 - dot01 * dot12) * invDenom; + var v = (dot00 * dot12 - dot01 * dot02) * invDenom; + if ((u >= 0.0) && (v > 0.0) && (u + v < 1)) + return true; + v0x = this.blx - tlx; + v0y = this.bly - tly; + var dot00 = v0x * v0x + v0y * v0y + var dot01 = v0x * v1x + v0y * v1y + var dot02 = v0x * v2x + v0y * v2y + invDenom = 1.0 / (dot00 * dot11 - dot01 * dot01); + u = (dot11 * dot02 - dot01 * dot12) * invDenom; + v = (dot00 * dot12 - dot01 * dot02) * invDenom; + return (u >= 0.0) && (v > 0.0) && (u + v < 1); + }; + Quad.prototype.at = function (i, xory) + { + if (xory) + { + switch (i) + { + case 0: return this.tlx; + case 1: return this.trx; + case 2: return this.brx; + case 3: return this.blx; + case 4: return this.tlx; + default: return this.tlx; + } + } + else + { + switch (i) + { + case 0: return this.tly; + case 1: return this.try_; + case 2: return this.bry; + case 3: return this.bly; + case 4: return this.tly; + default: return this.tly; + } + } + }; + Quad.prototype.midX = function () + { + return (this.tlx + this.trx + this.brx + this.blx) / 4; + }; + Quad.prototype.midY = function () + { + return (this.tly + this.try_ + this.bry + this.bly) / 4; + }; + Quad.prototype.intersects_segment = function (x1, y1, x2, y2) + { + if (this.contains_pt(x1, y1) || this.contains_pt(x2, y2)) + return true; + var a1x, a1y, a2x, a2y; + var i; + for (i = 0; i < 4; i++) + { + a1x = this.at(i, true); + a1y = this.at(i, false); + a2x = this.at(i + 1, true); + a2y = this.at(i + 1, false); + if (cr.segments_intersect(x1, y1, x2, y2, a1x, a1y, a2x, a2y)) + return true; + } + return false; + }; + Quad.prototype.intersects_quad = function (rhs) + { + var midx = rhs.midX(); + var midy = rhs.midY(); + if (this.contains_pt(midx, midy)) + return true; + midx = this.midX(); + midy = this.midY(); + if (rhs.contains_pt(midx, midy)) + return true; + var a1x, a1y, a2x, a2y, b1x, b1y, b2x, b2y; + var i, j; + for (i = 0; i < 4; i++) + { + for (j = 0; j < 4; j++) + { + a1x = this.at(i, true); + a1y = this.at(i, false); + a2x = this.at(i + 1, true); + a2y = this.at(i + 1, false); + b1x = rhs.at(j, true); + b1y = rhs.at(j, false); + b2x = rhs.at(j + 1, true); + b2y = rhs.at(j + 1, false); + if (cr.segments_intersect(a1x, a1y, a2x, a2y, b1x, b1y, b2x, b2y)) + return true; + } + } + return false; + }; + cr.quad = Quad; + cr.RGB = function (red, green, blue) + { + return Math.max(Math.min(red, 255), 0) + | (Math.max(Math.min(green, 255), 0) << 8) + | (Math.max(Math.min(blue, 255), 0) << 16); + }; + cr.GetRValue = function (rgb) + { + return rgb & 0xFF; + }; + cr.GetGValue = function (rgb) + { + return (rgb & 0xFF00) >> 8; + }; + cr.GetBValue = function (rgb) + { + return (rgb & 0xFF0000) >> 16; + }; + cr.shallowCopy = function (a, b, allowOverwrite) + { + var attr; + for (attr in b) + { + if (b.hasOwnProperty(attr)) + { +; + a[attr] = b[attr]; + } + } + return a; + }; + cr.arrayRemove = function (arr, index) + { + var i, len; + index = cr.floor(index); + if (index < 0 || index >= arr.length) + return; // index out of bounds + for (i = index, len = arr.length - 1; i < len; i++) + arr[i] = arr[i + 1]; + cr.truncateArray(arr, len); + }; + cr.truncateArray = function (arr, index) + { + arr.length = index; + }; + cr.clearArray = function (arr) + { + cr.truncateArray(arr, 0); + }; + cr.shallowAssignArray = function (dest, src) + { + cr.clearArray(dest); + var i, len; + for (i = 0, len = src.length; i < len; ++i) + dest[i] = src[i]; + }; + cr.appendArray = function (a, b) + { + a.push.apply(a, b); + }; + cr.fastIndexOf = function (arr, item) + { + var i, len; + for (i = 0, len = arr.length; i < len; ++i) + { + if (arr[i] === item) + return i; + } + return -1; + }; + cr.arrayFindRemove = function (arr, item) + { + var index = cr.fastIndexOf(arr, item); + if (index !== -1) + cr.arrayRemove(arr, index); + }; + cr.clamp = function(x, a, b) + { + if (x < a) + return a; + else if (x > b) + return b; + else + return x; + }; + cr.to_radians = function(x) + { + return x / (180.0 / cr.PI); + }; + cr.to_degrees = function(x) + { + return x * (180.0 / cr.PI); + }; + cr.clamp_angle_degrees = function (a) + { + a %= 360; // now in (-360, 360) range + if (a < 0) + a += 360; // now in [0, 360) range + return a; + }; + cr.clamp_angle = function (a) + { + a %= 2 * cr.PI; // now in (-2pi, 2pi) range + if (a < 0) + a += 2 * cr.PI; // now in [0, 2pi) range + return a; + }; + cr.to_clamped_degrees = function (x) + { + return cr.clamp_angle_degrees(cr.to_degrees(x)); + }; + cr.to_clamped_radians = function (x) + { + return cr.clamp_angle(cr.to_radians(x)); + }; + cr.angleTo = function(x1, y1, x2, y2) + { + var dx = x2 - x1; + var dy = y2 - y1; + return Math.atan2(dy, dx); + }; + cr.angleDiff = function (a1, a2) + { + if (a1 === a2) + return 0; + var s1 = Math.sin(a1); + var c1 = Math.cos(a1); + var s2 = Math.sin(a2); + var c2 = Math.cos(a2); + var n = s1 * s2 + c1 * c2; + if (n >= 1) + return 0; + if (n <= -1) + return cr.PI; + return Math.acos(n); + }; + cr.angleRotate = function (start, end, step) + { + var ss = Math.sin(start); + var cs = Math.cos(start); + var se = Math.sin(end); + var ce = Math.cos(end); + if (Math.acos(ss * se + cs * ce) > step) + { + if (cs * se - ss * ce > 0) + return cr.clamp_angle(start + step); + else + return cr.clamp_angle(start - step); + } + else + return cr.clamp_angle(end); + }; + cr.angleClockwise = function (a1, a2) + { + var s1 = Math.sin(a1); + var c1 = Math.cos(a1); + var s2 = Math.sin(a2); + var c2 = Math.cos(a2); + return c1 * s2 - s1 * c2 <= 0; + }; + cr.rotatePtAround = function (px, py, a, ox, oy, getx) + { + if (a === 0) + return getx ? px : py; + var sin_a = Math.sin(a); + var cos_a = Math.cos(a); + px -= ox; + py -= oy; + var left_sin_a = px * sin_a; + var top_sin_a = py * sin_a; + var left_cos_a = px * cos_a; + var top_cos_a = py * cos_a; + px = left_cos_a - top_sin_a; + py = top_cos_a + left_sin_a; + px += ox; + py += oy; + return getx ? px : py; + } + cr.distanceTo = function(x1, y1, x2, y2) + { + var dx = x2 - x1; + var dy = y2 - y1; + return Math.sqrt(dx*dx + dy*dy); + }; + cr.xor = function (x, y) + { + return !x !== !y; + }; + cr.lerp = function (a, b, x) + { + return a + (b - a) * x; + }; + cr.unlerp = function (a, b, c) + { + if (a === b) + return 0; // avoid divide by 0 + return (c - a) / (b - a); + }; + cr.anglelerp = function (a, b, x) + { + var diff = cr.angleDiff(a, b); + if (cr.angleClockwise(b, a)) + { + return a + diff * x; + } + else + { + return a - diff * x; + } + }; + cr.qarp = function (a, b, c, x) + { + return cr.lerp(cr.lerp(a, b, x), cr.lerp(b, c, x), x); + }; + cr.cubic = function (a, b, c, d, x) + { + return cr.lerp(cr.qarp(a, b, c, x), cr.qarp(b, c, d, x), x); + }; + cr.cosp = function (a, b, x) + { + return (a + b + (a - b) * Math.cos(x * Math.PI)) / 2; + }; + cr.hasAnyOwnProperty = function (o) + { + var p; + for (p in o) + { + if (o.hasOwnProperty(p)) + return true; + } + return false; + }; + cr.wipe = function (obj) + { + var p; + for (p in obj) + { + if (obj.hasOwnProperty(p)) + delete obj[p]; + } + }; + var startup_time = +(new Date()); + cr.performance_now = function() + { + if (typeof window["performance"] !== "undefined") + { + var winperf = window["performance"]; + if (typeof winperf.now !== "undefined") + return winperf.now(); + else if (typeof winperf["webkitNow"] !== "undefined") + return winperf["webkitNow"](); + else if (typeof winperf["mozNow"] !== "undefined") + return winperf["mozNow"](); + else if (typeof winperf["msNow"] !== "undefined") + return winperf["msNow"](); + } + return Date.now() - startup_time; + }; + var isChrome = false; + var isSafari = false; + var isiOS = false; + var isEjecta = false; + if (typeof window !== "undefined") // not c2 editor + { + isChrome = /chrome/i.test(navigator.userAgent) || /chromium/i.test(navigator.userAgent); + isSafari = !isChrome && /safari/i.test(navigator.userAgent); + isiOS = /(iphone|ipod|ipad)/i.test(navigator.userAgent); + isEjecta = window["c2ejecta"]; + } + var supports_set = ((!isSafari && !isEjecta && !isiOS) && (typeof Set !== "undefined" && typeof Set.prototype["forEach"] !== "undefined")); + function ObjectSet_() + { + this.s = null; + this.items = null; // lazy allocated (hopefully results in better GC performance) + this.item_count = 0; + if (supports_set) + { + this.s = new Set(); + } + this.values_cache = []; + this.cache_valid = true; + cr.seal(this); + }; + ObjectSet_.prototype.contains = function (x) + { + if (this.isEmpty()) + return false; + if (supports_set) + return this.s["has"](x); + else + return (this.items && this.items.hasOwnProperty(x)); + }; + ObjectSet_.prototype.add = function (x) + { + if (supports_set) + { + if (!this.s["has"](x)) + { + this.s["add"](x); + this.cache_valid = false; + } + } + else + { + var str = x.toString(); + var items = this.items; + if (!items) + { + this.items = {}; + this.items[str] = x; + this.item_count = 1; + this.cache_valid = false; + } + else if (!items.hasOwnProperty(str)) + { + items[str] = x; + this.item_count++; + this.cache_valid = false; + } + } + }; + ObjectSet_.prototype.remove = function (x) + { + if (this.isEmpty()) + return; + if (supports_set) + { + if (this.s["has"](x)) + { + this.s["delete"](x); + this.cache_valid = false; + } + } + else if (this.items) + { + var str = x.toString(); + var items = this.items; + if (items.hasOwnProperty(str)) + { + delete items[str]; + this.item_count--; + this.cache_valid = false; + } + } + }; + ObjectSet_.prototype.clear = function (/*wipe_*/) + { + if (this.isEmpty()) + return; + if (supports_set) + { + this.s["clear"](); // best! + } + else + { + this.items = null; // creates garbage; will lazy allocate on next add() + this.item_count = 0; + } + cr.clearArray(this.values_cache); + this.cache_valid = true; + }; + ObjectSet_.prototype.isEmpty = function () + { + return this.count() === 0; + }; + ObjectSet_.prototype.count = function () + { + if (supports_set) + return this.s["size"]; + else + return this.item_count; + }; + var current_arr = null; + var current_index = 0; + function set_append_to_arr(x) + { + current_arr[current_index++] = x; + }; + ObjectSet_.prototype.update_cache = function () + { + if (this.cache_valid) + return; + if (supports_set) + { + cr.clearArray(this.values_cache); + current_arr = this.values_cache; + current_index = 0; + this.s["forEach"](set_append_to_arr); +; + current_arr = null; + current_index = 0; + } + else + { + var values_cache = this.values_cache; + cr.clearArray(values_cache); + var p, n = 0, items = this.items; + if (items) + { + for (p in items) + { + if (items.hasOwnProperty(p)) + values_cache[n++] = items[p]; + } + } +; + } + this.cache_valid = true; + }; + ObjectSet_.prototype.valuesRef = function () + { + this.update_cache(); + return this.values_cache; + }; + cr.ObjectSet = ObjectSet_; + var tmpSet = new cr.ObjectSet(); + cr.removeArrayDuplicates = function (arr) + { + var i, len; + for (i = 0, len = arr.length; i < len; ++i) + { + tmpSet.add(arr[i]); + } + cr.shallowAssignArray(arr, tmpSet.valuesRef()); + tmpSet.clear(); + }; + cr.arrayRemoveAllFromObjectSet = function (arr, remset) + { + if (supports_set) + cr.arrayRemoveAll_set(arr, remset.s); + else + cr.arrayRemoveAll_arr(arr, remset.valuesRef()); + }; + cr.arrayRemoveAll_set = function (arr, s) + { + var i, j, len, item; + for (i = 0, j = 0, len = arr.length; i < len; ++i) + { + item = arr[i]; + if (!s["has"](item)) // not an item to remove + arr[j++] = item; // keep it + } + cr.truncateArray(arr, j); + }; + cr.arrayRemoveAll_arr = function (arr, rem) + { + var i, j, len, item; + for (i = 0, j = 0, len = arr.length; i < len; ++i) + { + item = arr[i]; + if (cr.fastIndexOf(rem, item) === -1) // not an item to remove + arr[j++] = item; // keep it + } + cr.truncateArray(arr, j); + }; + function KahanAdder_() + { + this.c = 0; + this.y = 0; + this.t = 0; + this.sum = 0; + cr.seal(this); + }; + KahanAdder_.prototype.add = function (v) + { + this.y = v - this.c; + this.t = this.sum + this.y; + this.c = (this.t - this.sum) - this.y; + this.sum = this.t; + }; + KahanAdder_.prototype.reset = function () + { + this.c = 0; + this.y = 0; + this.t = 0; + this.sum = 0; + }; + cr.KahanAdder = KahanAdder_; + cr.regexp_escape = function(text) + { + return text.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&"); + }; + function CollisionPoly_(pts_array_) + { + this.pts_cache = []; + this.bboxLeft = 0; + this.bboxTop = 0; + this.bboxRight = 0; + this.bboxBottom = 0; + this.convexpolys = null; // for physics behavior to cache separated polys + this.set_pts(pts_array_); + cr.seal(this); + }; + CollisionPoly_.prototype.set_pts = function(pts_array_) + { + this.pts_array = pts_array_; + this.pts_count = pts_array_.length / 2; // x, y, x, y... in array + this.pts_cache.length = pts_array_.length; + this.cache_width = -1; + this.cache_height = -1; + this.cache_angle = 0; + }; + CollisionPoly_.prototype.is_empty = function() + { + return !this.pts_array.length; + }; + CollisionPoly_.prototype.update_bbox = function () + { + var myptscache = this.pts_cache; + var bboxLeft_ = myptscache[0]; + var bboxRight_ = bboxLeft_; + var bboxTop_ = myptscache[1]; + var bboxBottom_ = bboxTop_; + var x, y, i = 1, i2, len = this.pts_count; + for ( ; i < len; ++i) + { + i2 = i*2; + x = myptscache[i2]; + y = myptscache[i2+1]; + if (x < bboxLeft_) + bboxLeft_ = x; + if (x > bboxRight_) + bboxRight_ = x; + if (y < bboxTop_) + bboxTop_ = y; + if (y > bboxBottom_) + bboxBottom_ = y; + } + this.bboxLeft = bboxLeft_; + this.bboxRight = bboxRight_; + this.bboxTop = bboxTop_; + this.bboxBottom = bboxBottom_; + }; + CollisionPoly_.prototype.set_from_rect = function(rc, offx, offy) + { + this.pts_cache.length = 8; + this.pts_count = 4; + var myptscache = this.pts_cache; + myptscache[0] = rc.left - offx; + myptscache[1] = rc.top - offy; + myptscache[2] = rc.right - offx; + myptscache[3] = rc.top - offy; + myptscache[4] = rc.right - offx; + myptscache[5] = rc.bottom - offy; + myptscache[6] = rc.left - offx; + myptscache[7] = rc.bottom - offy; + this.cache_width = rc.right - rc.left; + this.cache_height = rc.bottom - rc.top; + this.update_bbox(); + }; + CollisionPoly_.prototype.set_from_quad = function(q, offx, offy, w, h) + { + this.pts_cache.length = 8; + this.pts_count = 4; + var myptscache = this.pts_cache; + myptscache[0] = q.tlx - offx; + myptscache[1] = q.tly - offy; + myptscache[2] = q.trx - offx; + myptscache[3] = q.try_ - offy; + myptscache[4] = q.brx - offx; + myptscache[5] = q.bry - offy; + myptscache[6] = q.blx - offx; + myptscache[7] = q.bly - offy; + this.cache_width = w; + this.cache_height = h; + this.update_bbox(); + }; + CollisionPoly_.prototype.set_from_poly = function (r) + { + this.pts_count = r.pts_count; + cr.shallowAssignArray(this.pts_cache, r.pts_cache); + this.bboxLeft = r.bboxLeft; + this.bboxTop = r.bboxTop; + this.bboxRight = r.bboxRight; + this.bboxBottom = r.bboxBottom; + }; + CollisionPoly_.prototype.cache_poly = function(w, h, a) + { + if (this.cache_width === w && this.cache_height === h && this.cache_angle === a) + return; // cache up-to-date + this.cache_width = w; + this.cache_height = h; + this.cache_angle = a; + var i, i2, i21, len, x, y; + var sina = 0; + var cosa = 1; + var myptsarray = this.pts_array; + var myptscache = this.pts_cache; + if (a !== 0) + { + sina = Math.sin(a); + cosa = Math.cos(a); + } + for (i = 0, len = this.pts_count; i < len; i++) + { + i2 = i*2; + i21 = i2+1; + x = myptsarray[i2] * w; + y = myptsarray[i21] * h; + myptscache[i2] = (x * cosa) - (y * sina); + myptscache[i21] = (y * cosa) + (x * sina); + } + this.update_bbox(); + }; + CollisionPoly_.prototype.contains_pt = function (a2x, a2y) + { + var myptscache = this.pts_cache; + if (a2x === myptscache[0] && a2y === myptscache[1]) + return true; + var i, i2, imod, len = this.pts_count; + var a1x = this.bboxLeft - 110; + var a1y = this.bboxTop - 101; + var a3x = this.bboxRight + 131 + var a3y = this.bboxBottom + 120; + var b1x, b1y, b2x, b2y; + var count1 = 0, count2 = 0; + for (i = 0; i < len; i++) + { + i2 = i*2; + imod = ((i+1)%len)*2; + b1x = myptscache[i2]; + b1y = myptscache[i2+1]; + b2x = myptscache[imod]; + b2y = myptscache[imod+1]; + if (cr.segments_intersect(a1x, a1y, a2x, a2y, b1x, b1y, b2x, b2y)) + count1++; + if (cr.segments_intersect(a3x, a3y, a2x, a2y, b1x, b1y, b2x, b2y)) + count2++; + } + return (count1 % 2 === 1) || (count2 % 2 === 1); + }; + CollisionPoly_.prototype.intersects_poly = function (rhs, offx, offy) + { + var rhspts = rhs.pts_cache; + var mypts = this.pts_cache; + if (this.contains_pt(rhspts[0] + offx, rhspts[1] + offy)) + return true; + if (rhs.contains_pt(mypts[0] - offx, mypts[1] - offy)) + return true; + var i, i2, imod, leni, j, j2, jmod, lenj; + var a1x, a1y, a2x, a2y, b1x, b1y, b2x, b2y; + for (i = 0, leni = this.pts_count; i < leni; i++) + { + i2 = i*2; + imod = ((i+1)%leni)*2; + a1x = mypts[i2]; + a1y = mypts[i2+1]; + a2x = mypts[imod]; + a2y = mypts[imod+1]; + for (j = 0, lenj = rhs.pts_count; j < lenj; j++) + { + j2 = j*2; + jmod = ((j+1)%lenj)*2; + b1x = rhspts[j2] + offx; + b1y = rhspts[j2+1] + offy; + b2x = rhspts[jmod] + offx; + b2y = rhspts[jmod+1] + offy; + if (cr.segments_intersect(a1x, a1y, a2x, a2y, b1x, b1y, b2x, b2y)) + return true; + } + } + return false; + }; + CollisionPoly_.prototype.intersects_segment = function (offx, offy, x1, y1, x2, y2) + { + var mypts = this.pts_cache; + if (this.contains_pt(x1 - offx, y1 - offy)) + return true; + var i, leni, i2, imod; + var a1x, a1y, a2x, a2y; + for (i = 0, leni = this.pts_count; i < leni; i++) + { + i2 = i*2; + imod = ((i+1)%leni)*2; + a1x = mypts[i2] + offx; + a1y = mypts[i2+1] + offy; + a2x = mypts[imod] + offx; + a2y = mypts[imod+1] + offy; + if (cr.segments_intersect(x1, y1, x2, y2, a1x, a1y, a2x, a2y)) + return true; + } + return false; + }; + CollisionPoly_.prototype.mirror = function (px) + { + var i, leni, i2; + for (i = 0, leni = this.pts_count; i < leni; ++i) + { + i2 = i*2; + this.pts_cache[i2] = px * 2 - this.pts_cache[i2]; + } + }; + CollisionPoly_.prototype.flip = function (py) + { + var i, leni, i21; + for (i = 0, leni = this.pts_count; i < leni; ++i) + { + i21 = i*2+1; + this.pts_cache[i21] = py * 2 - this.pts_cache[i21]; + } + }; + CollisionPoly_.prototype.diag = function () + { + var i, leni, i2, i21, temp; + for (i = 0, leni = this.pts_count; i < leni; ++i) + { + i2 = i*2; + i21 = i2+1; + temp = this.pts_cache[i2]; + this.pts_cache[i2] = this.pts_cache[i21]; + this.pts_cache[i21] = temp; + } + }; + cr.CollisionPoly = CollisionPoly_; + function SparseGrid_(cellwidth_, cellheight_) + { + this.cellwidth = cellwidth_; + this.cellheight = cellheight_; + this.cells = {}; + }; + SparseGrid_.prototype.totalCellCount = 0; + SparseGrid_.prototype.getCell = function (x_, y_, create_if_missing) + { + var ret; + var col = this.cells[x_]; + if (!col) + { + if (create_if_missing) + { + ret = allocGridCell(this, x_, y_); + this.cells[x_] = {}; + this.cells[x_][y_] = ret; + return ret; + } + else + return null; + } + ret = col[y_]; + if (ret) + return ret; + else if (create_if_missing) + { + ret = allocGridCell(this, x_, y_); + this.cells[x_][y_] = ret; + return ret; + } + else + return null; + }; + SparseGrid_.prototype.XToCell = function (x_) + { + return cr.floor(x_ / this.cellwidth); + }; + SparseGrid_.prototype.YToCell = function (y_) + { + return cr.floor(y_ / this.cellheight); + }; + SparseGrid_.prototype.update = function (inst, oldrange, newrange) + { + var x, lenx, y, leny, cell; + if (oldrange) + { + for (x = oldrange.left, lenx = oldrange.right; x <= lenx; ++x) + { + for (y = oldrange.top, leny = oldrange.bottom; y <= leny; ++y) + { + if (newrange && newrange.contains_pt(x, y)) + continue; // is still in this cell + cell = this.getCell(x, y, false); // don't create if missing + if (!cell) + continue; // cell does not exist yet + cell.remove(inst); + if (cell.isEmpty()) + { + freeGridCell(cell); + this.cells[x][y] = null; + } + } + } + } + if (newrange) + { + for (x = newrange.left, lenx = newrange.right; x <= lenx; ++x) + { + for (y = newrange.top, leny = newrange.bottom; y <= leny; ++y) + { + if (oldrange && oldrange.contains_pt(x, y)) + continue; // is still in this cell + this.getCell(x, y, true).insert(inst); + } + } + } + }; + SparseGrid_.prototype.queryRange = function (rc, result) + { + var x, lenx, ystart, y, leny, cell; + x = this.XToCell(rc.left); + ystart = this.YToCell(rc.top); + lenx = this.XToCell(rc.right); + leny = this.YToCell(rc.bottom); + for ( ; x <= lenx; ++x) + { + for (y = ystart; y <= leny; ++y) + { + cell = this.getCell(x, y, false); + if (!cell) + continue; + cell.dump(result); + } + } + }; + cr.SparseGrid = SparseGrid_; + function RenderGrid_(cellwidth_, cellheight_) + { + this.cellwidth = cellwidth_; + this.cellheight = cellheight_; + this.cells = {}; + }; + RenderGrid_.prototype.totalCellCount = 0; + RenderGrid_.prototype.getCell = function (x_, y_, create_if_missing) + { + var ret; + var col = this.cells[x_]; + if (!col) + { + if (create_if_missing) + { + ret = allocRenderCell(this, x_, y_); + this.cells[x_] = {}; + this.cells[x_][y_] = ret; + return ret; + } + else + return null; + } + ret = col[y_]; + if (ret) + return ret; + else if (create_if_missing) + { + ret = allocRenderCell(this, x_, y_); + this.cells[x_][y_] = ret; + return ret; + } + else + return null; + }; + RenderGrid_.prototype.XToCell = function (x_) + { + return cr.floor(x_ / this.cellwidth); + }; + RenderGrid_.prototype.YToCell = function (y_) + { + return cr.floor(y_ / this.cellheight); + }; + RenderGrid_.prototype.update = function (inst, oldrange, newrange) + { + var x, lenx, y, leny, cell; + if (oldrange) + { + for (x = oldrange.left, lenx = oldrange.right; x <= lenx; ++x) + { + for (y = oldrange.top, leny = oldrange.bottom; y <= leny; ++y) + { + if (newrange && newrange.contains_pt(x, y)) + continue; // is still in this cell + cell = this.getCell(x, y, false); // don't create if missing + if (!cell) + continue; // cell does not exist yet + cell.remove(inst); + if (cell.isEmpty()) + { + freeRenderCell(cell); + this.cells[x][y] = null; + } + } + } + } + if (newrange) + { + for (x = newrange.left, lenx = newrange.right; x <= lenx; ++x) + { + for (y = newrange.top, leny = newrange.bottom; y <= leny; ++y) + { + if (oldrange && oldrange.contains_pt(x, y)) + continue; // is still in this cell + this.getCell(x, y, true).insert(inst); + } + } + } + }; + RenderGrid_.prototype.queryRange = function (left, top, right, bottom, result) + { + var x, lenx, ystart, y, leny, cell; + x = this.XToCell(left); + ystart = this.YToCell(top); + lenx = this.XToCell(right); + leny = this.YToCell(bottom); + for ( ; x <= lenx; ++x) + { + for (y = ystart; y <= leny; ++y) + { + cell = this.getCell(x, y, false); + if (!cell) + continue; + cell.dump(result); + } + } + }; + RenderGrid_.prototype.markRangeChanged = function (rc) + { + var x, lenx, ystart, y, leny, cell; + x = rc.left; + ystart = rc.top; + lenx = rc.right; + leny = rc.bottom; + for ( ; x <= lenx; ++x) + { + for (y = ystart; y <= leny; ++y) + { + cell = this.getCell(x, y, false); + if (!cell) + continue; + cell.is_sorted = false; + } + } + }; + cr.RenderGrid = RenderGrid_; + var gridcellcache = []; + function allocGridCell(grid_, x_, y_) + { + var ret; + SparseGrid_.prototype.totalCellCount++; + if (gridcellcache.length) + { + ret = gridcellcache.pop(); + ret.grid = grid_; + ret.x = x_; + ret.y = y_; + return ret; + } + else + return new cr.GridCell(grid_, x_, y_); + }; + function freeGridCell(c) + { + SparseGrid_.prototype.totalCellCount--; + c.objects.clear(); + if (gridcellcache.length < 1000) + gridcellcache.push(c); + }; + function GridCell_(grid_, x_, y_) + { + this.grid = grid_; + this.x = x_; + this.y = y_; + this.objects = new cr.ObjectSet(); + }; + GridCell_.prototype.isEmpty = function () + { + return this.objects.isEmpty(); + }; + GridCell_.prototype.insert = function (inst) + { + this.objects.add(inst); + }; + GridCell_.prototype.remove = function (inst) + { + this.objects.remove(inst); + }; + GridCell_.prototype.dump = function (result) + { + cr.appendArray(result, this.objects.valuesRef()); + }; + cr.GridCell = GridCell_; + var rendercellcache = []; + function allocRenderCell(grid_, x_, y_) + { + var ret; + RenderGrid_.prototype.totalCellCount++; + if (rendercellcache.length) + { + ret = rendercellcache.pop(); + ret.grid = grid_; + ret.x = x_; + ret.y = y_; + return ret; + } + else + return new cr.RenderCell(grid_, x_, y_); + }; + function freeRenderCell(c) + { + RenderGrid_.prototype.totalCellCount--; + c.reset(); + if (rendercellcache.length < 1000) + rendercellcache.push(c); + }; + function RenderCell_(grid_, x_, y_) + { + this.grid = grid_; + this.x = x_; + this.y = y_; + this.objects = []; // array which needs to be sorted by Z order + this.is_sorted = true; // whether array is in correct sort order or not + this.pending_removal = new cr.ObjectSet(); + this.any_pending_removal = false; + }; + RenderCell_.prototype.isEmpty = function () + { + if (!this.objects.length) + { +; +; + return true; + } + if (this.objects.length > this.pending_removal.count()) + return false; +; + this.flush_pending(); // takes fast path and just resets state + return true; + }; + RenderCell_.prototype.insert = function (inst) + { + if (this.pending_removal.contains(inst)) + { + this.pending_removal.remove(inst); + if (this.pending_removal.isEmpty()) + this.any_pending_removal = false; + return; + } + if (this.objects.length) + { + var top = this.objects[this.objects.length - 1]; + if (top.get_zindex() > inst.get_zindex()) + this.is_sorted = false; // 'inst' should be somewhere beneath 'top' + this.objects.push(inst); + } + else + { + this.objects.push(inst); + this.is_sorted = true; + } +; + }; + RenderCell_.prototype.remove = function (inst) + { + this.pending_removal.add(inst); + this.any_pending_removal = true; + if (this.pending_removal.count() >= 30) + this.flush_pending(); + }; + RenderCell_.prototype.flush_pending = function () + { +; + if (!this.any_pending_removal) + return; // not changed + if (this.pending_removal.count() === this.objects.length) + { + this.reset(); + return; + } + cr.arrayRemoveAllFromObjectSet(this.objects, this.pending_removal); + this.pending_removal.clear(); + this.any_pending_removal = false; + }; + function sortByInstanceZIndex(a, b) + { + return a.zindex - b.zindex; + }; + RenderCell_.prototype.ensure_sorted = function () + { + if (this.is_sorted) + return; // already sorted + this.objects.sort(sortByInstanceZIndex); + this.is_sorted = true; + }; + RenderCell_.prototype.reset = function () + { + cr.clearArray(this.objects); + this.is_sorted = true; + this.pending_removal.clear(); + this.any_pending_removal = false; + }; + RenderCell_.prototype.dump = function (result) + { + this.flush_pending(); + this.ensure_sorted(); + if (this.objects.length) + result.push(this.objects); + }; + cr.RenderCell = RenderCell_; + var fxNames = [ "lighter", + "xor", + "copy", + "destination-over", + "source-in", + "destination-in", + "source-out", + "destination-out", + "source-atop", + "destination-atop"]; + cr.effectToCompositeOp = function(effect) + { + if (effect <= 0 || effect >= 11) + return "source-over"; + return fxNames[effect - 1]; // not including "none" so offset by 1 + }; + cr.setGLBlend = function(this_, effect, gl) + { + if (!gl) + return; + this_.srcBlend = gl.ONE; + this_.destBlend = gl.ONE_MINUS_SRC_ALPHA; + switch (effect) { + case 1: // lighter (additive) + this_.srcBlend = gl.ONE; + this_.destBlend = gl.ONE; + break; + case 2: // xor + break; // todo + case 3: // copy + this_.srcBlend = gl.ONE; + this_.destBlend = gl.ZERO; + break; + case 4: // destination-over + this_.srcBlend = gl.ONE_MINUS_DST_ALPHA; + this_.destBlend = gl.ONE; + break; + case 5: // source-in + this_.srcBlend = gl.DST_ALPHA; + this_.destBlend = gl.ZERO; + break; + case 6: // destination-in + this_.srcBlend = gl.ZERO; + this_.destBlend = gl.SRC_ALPHA; + break; + case 7: // source-out + this_.srcBlend = gl.ONE_MINUS_DST_ALPHA; + this_.destBlend = gl.ZERO; + break; + case 8: // destination-out + this_.srcBlend = gl.ZERO; + this_.destBlend = gl.ONE_MINUS_SRC_ALPHA; + break; + case 9: // source-atop + this_.srcBlend = gl.DST_ALPHA; + this_.destBlend = gl.ONE_MINUS_SRC_ALPHA; + break; + case 10: // destination-atop + this_.srcBlend = gl.ONE_MINUS_DST_ALPHA; + this_.destBlend = gl.SRC_ALPHA; + break; + } + }; + cr.round6dp = function (x) + { + return Math.round(x * 1000000) / 1000000; + }; + /* + var localeCompare_options = { + "usage": "search", + "sensitivity": "accent" + }; + var has_localeCompare = !!"a".localeCompare; + var localeCompare_works1 = (has_localeCompare && "a".localeCompare("A", undefined, localeCompare_options) === 0); + var localeCompare_works2 = (has_localeCompare && "a".localeCompare("á", undefined, localeCompare_options) !== 0); + var supports_localeCompare = (has_localeCompare && localeCompare_works1 && localeCompare_works2); + */ + cr.equals_nocase = function (a, b) + { + if (typeof a !== "string" || typeof b !== "string") + return false; + if (a.length !== b.length) + return false; + if (a === b) + return true; + /* + if (supports_localeCompare) + { + return (a.localeCompare(b, undefined, localeCompare_options) === 0); + } + else + { + */ + return a.toLowerCase() === b.toLowerCase(); + }; + cr.isCanvasInputEvent = function (e) + { + var target = e.target; + if (!target) + return true; + if (target === document || target === window) + return true; + if (document && document.body && target === document.body) + return true; + if (cr.equals_nocase(target.tagName, "canvas")) + return true; + return false; + }; +}()); +var MatrixArray=typeof Float32Array!=="undefined"?Float32Array:Array,glMatrixArrayType=MatrixArray,vec3={},mat3={},mat4={},quat4={};vec3.create=function(a){var b=new MatrixArray(3);a&&(b[0]=a[0],b[1]=a[1],b[2]=a[2]);return b};vec3.set=function(a,b){b[0]=a[0];b[1]=a[1];b[2]=a[2];return b};vec3.add=function(a,b,c){if(!c||a===c)return a[0]+=b[0],a[1]+=b[1],a[2]+=b[2],a;c[0]=a[0]+b[0];c[1]=a[1]+b[1];c[2]=a[2]+b[2];return c}; +vec3.subtract=function(a,b,c){if(!c||a===c)return a[0]-=b[0],a[1]-=b[1],a[2]-=b[2],a;c[0]=a[0]-b[0];c[1]=a[1]-b[1];c[2]=a[2]-b[2];return c};vec3.negate=function(a,b){b||(b=a);b[0]=-a[0];b[1]=-a[1];b[2]=-a[2];return b};vec3.scale=function(a,b,c){if(!c||a===c)return a[0]*=b,a[1]*=b,a[2]*=b,a;c[0]=a[0]*b;c[1]=a[1]*b;c[2]=a[2]*b;return c}; +vec3.normalize=function(a,b){b||(b=a);var c=a[0],d=a[1],e=a[2],g=Math.sqrt(c*c+d*d+e*e);if(g){if(g===1)return b[0]=c,b[1]=d,b[2]=e,b}else return b[0]=0,b[1]=0,b[2]=0,b;g=1/g;b[0]=c*g;b[1]=d*g;b[2]=e*g;return b};vec3.cross=function(a,b,c){c||(c=a);var d=a[0],e=a[1],a=a[2],g=b[0],f=b[1],b=b[2];c[0]=e*b-a*f;c[1]=a*g-d*b;c[2]=d*f-e*g;return c};vec3.length=function(a){var b=a[0],c=a[1],a=a[2];return Math.sqrt(b*b+c*c+a*a)};vec3.dot=function(a,b){return a[0]*b[0]+a[1]*b[1]+a[2]*b[2]}; +vec3.direction=function(a,b,c){c||(c=a);var d=a[0]-b[0],e=a[1]-b[1],a=a[2]-b[2],b=Math.sqrt(d*d+e*e+a*a);if(!b)return c[0]=0,c[1]=0,c[2]=0,c;b=1/b;c[0]=d*b;c[1]=e*b;c[2]=a*b;return c};vec3.lerp=function(a,b,c,d){d||(d=a);d[0]=a[0]+c*(b[0]-a[0]);d[1]=a[1]+c*(b[1]-a[1]);d[2]=a[2]+c*(b[2]-a[2]);return d};vec3.str=function(a){return"["+a[0]+", "+a[1]+", "+a[2]+"]"}; +mat3.create=function(a){var b=new MatrixArray(9);a&&(b[0]=a[0],b[1]=a[1],b[2]=a[2],b[3]=a[3],b[4]=a[4],b[5]=a[5],b[6]=a[6],b[7]=a[7],b[8]=a[8]);return b};mat3.set=function(a,b){b[0]=a[0];b[1]=a[1];b[2]=a[2];b[3]=a[3];b[4]=a[4];b[5]=a[5];b[6]=a[6];b[7]=a[7];b[8]=a[8];return b};mat3.identity=function(a){a[0]=1;a[1]=0;a[2]=0;a[3]=0;a[4]=1;a[5]=0;a[6]=0;a[7]=0;a[8]=1;return a}; +mat3.transpose=function(a,b){if(!b||a===b){var c=a[1],d=a[2],e=a[5];a[1]=a[3];a[2]=a[6];a[3]=c;a[5]=a[7];a[6]=d;a[7]=e;return a}b[0]=a[0];b[1]=a[3];b[2]=a[6];b[3]=a[1];b[4]=a[4];b[5]=a[7];b[6]=a[2];b[7]=a[5];b[8]=a[8];return b};mat3.toMat4=function(a,b){b||(b=mat4.create());b[15]=1;b[14]=0;b[13]=0;b[12]=0;b[11]=0;b[10]=a[8];b[9]=a[7];b[8]=a[6];b[7]=0;b[6]=a[5];b[5]=a[4];b[4]=a[3];b[3]=0;b[2]=a[2];b[1]=a[1];b[0]=a[0];return b}; +mat3.str=function(a){return"["+a[0]+", "+a[1]+", "+a[2]+", "+a[3]+", "+a[4]+", "+a[5]+", "+a[6]+", "+a[7]+", "+a[8]+"]"};mat4.create=function(a){var b=new MatrixArray(16);a&&(b[0]=a[0],b[1]=a[1],b[2]=a[2],b[3]=a[3],b[4]=a[4],b[5]=a[5],b[6]=a[6],b[7]=a[7],b[8]=a[8],b[9]=a[9],b[10]=a[10],b[11]=a[11],b[12]=a[12],b[13]=a[13],b[14]=a[14],b[15]=a[15]);return b}; +mat4.set=function(a,b){b[0]=a[0];b[1]=a[1];b[2]=a[2];b[3]=a[3];b[4]=a[4];b[5]=a[5];b[6]=a[6];b[7]=a[7];b[8]=a[8];b[9]=a[9];b[10]=a[10];b[11]=a[11];b[12]=a[12];b[13]=a[13];b[14]=a[14];b[15]=a[15];return b};mat4.identity=function(a){a[0]=1;a[1]=0;a[2]=0;a[3]=0;a[4]=0;a[5]=1;a[6]=0;a[7]=0;a[8]=0;a[9]=0;a[10]=1;a[11]=0;a[12]=0;a[13]=0;a[14]=0;a[15]=1;return a}; +mat4.transpose=function(a,b){if(!b||a===b){var c=a[1],d=a[2],e=a[3],g=a[6],f=a[7],h=a[11];a[1]=a[4];a[2]=a[8];a[3]=a[12];a[4]=c;a[6]=a[9];a[7]=a[13];a[8]=d;a[9]=g;a[11]=a[14];a[12]=e;a[13]=f;a[14]=h;return a}b[0]=a[0];b[1]=a[4];b[2]=a[8];b[3]=a[12];b[4]=a[1];b[5]=a[5];b[6]=a[9];b[7]=a[13];b[8]=a[2];b[9]=a[6];b[10]=a[10];b[11]=a[14];b[12]=a[3];b[13]=a[7];b[14]=a[11];b[15]=a[15];return b}; +mat4.determinant=function(a){var b=a[0],c=a[1],d=a[2],e=a[3],g=a[4],f=a[5],h=a[6],i=a[7],j=a[8],k=a[9],l=a[10],n=a[11],o=a[12],m=a[13],p=a[14],a=a[15];return o*k*h*e-j*m*h*e-o*f*l*e+g*m*l*e+j*f*p*e-g*k*p*e-o*k*d*i+j*m*d*i+o*c*l*i-b*m*l*i-j*c*p*i+b*k*p*i+o*f*d*n-g*m*d*n-o*c*h*n+b*m*h*n+g*c*p*n-b*f*p*n-j*f*d*a+g*k*d*a+j*c*h*a-b*k*h*a-g*c*l*a+b*f*l*a}; +mat4.inverse=function(a,b){b||(b=a);var c=a[0],d=a[1],e=a[2],g=a[3],f=a[4],h=a[5],i=a[6],j=a[7],k=a[8],l=a[9],n=a[10],o=a[11],m=a[12],p=a[13],r=a[14],s=a[15],A=c*h-d*f,B=c*i-e*f,t=c*j-g*f,u=d*i-e*h,v=d*j-g*h,w=e*j-g*i,x=k*p-l*m,y=k*r-n*m,z=k*s-o*m,C=l*r-n*p,D=l*s-o*p,E=n*s-o*r,q=1/(A*E-B*D+t*C+u*z-v*y+w*x);b[0]=(h*E-i*D+j*C)*q;b[1]=(-d*E+e*D-g*C)*q;b[2]=(p*w-r*v+s*u)*q;b[3]=(-l*w+n*v-o*u)*q;b[4]=(-f*E+i*z-j*y)*q;b[5]=(c*E-e*z+g*y)*q;b[6]=(-m*w+r*t-s*B)*q;b[7]=(k*w-n*t+o*B)*q;b[8]=(f*D-h*z+j*x)*q; +b[9]=(-c*D+d*z-g*x)*q;b[10]=(m*v-p*t+s*A)*q;b[11]=(-k*v+l*t-o*A)*q;b[12]=(-f*C+h*y-i*x)*q;b[13]=(c*C-d*y+e*x)*q;b[14]=(-m*u+p*B-r*A)*q;b[15]=(k*u-l*B+n*A)*q;return b};mat4.toRotationMat=function(a,b){b||(b=mat4.create());b[0]=a[0];b[1]=a[1];b[2]=a[2];b[3]=a[3];b[4]=a[4];b[5]=a[5];b[6]=a[6];b[7]=a[7];b[8]=a[8];b[9]=a[9];b[10]=a[10];b[11]=a[11];b[12]=0;b[13]=0;b[14]=0;b[15]=1;return b}; +mat4.toMat3=function(a,b){b||(b=mat3.create());b[0]=a[0];b[1]=a[1];b[2]=a[2];b[3]=a[4];b[4]=a[5];b[5]=a[6];b[6]=a[8];b[7]=a[9];b[8]=a[10];return b};mat4.toInverseMat3=function(a,b){var c=a[0],d=a[1],e=a[2],g=a[4],f=a[5],h=a[6],i=a[8],j=a[9],k=a[10],l=k*f-h*j,n=-k*g+h*i,o=j*g-f*i,m=c*l+d*n+e*o;if(!m)return null;m=1/m;b||(b=mat3.create());b[0]=l*m;b[1]=(-k*d+e*j)*m;b[2]=(h*d-e*f)*m;b[3]=n*m;b[4]=(k*c-e*i)*m;b[5]=(-h*c+e*g)*m;b[6]=o*m;b[7]=(-j*c+d*i)*m;b[8]=(f*c-d*g)*m;return b}; +mat4.multiply=function(a,b,c){c||(c=a);var d=a[0],e=a[1],g=a[2],f=a[3],h=a[4],i=a[5],j=a[6],k=a[7],l=a[8],n=a[9],o=a[10],m=a[11],p=a[12],r=a[13],s=a[14],a=a[15],A=b[0],B=b[1],t=b[2],u=b[3],v=b[4],w=b[5],x=b[6],y=b[7],z=b[8],C=b[9],D=b[10],E=b[11],q=b[12],F=b[13],G=b[14],b=b[15];c[0]=A*d+B*h+t*l+u*p;c[1]=A*e+B*i+t*n+u*r;c[2]=A*g+B*j+t*o+u*s;c[3]=A*f+B*k+t*m+u*a;c[4]=v*d+w*h+x*l+y*p;c[5]=v*e+w*i+x*n+y*r;c[6]=v*g+w*j+x*o+y*s;c[7]=v*f+w*k+x*m+y*a;c[8]=z*d+C*h+D*l+E*p;c[9]=z*e+C*i+D*n+E*r;c[10]=z*g+C* +j+D*o+E*s;c[11]=z*f+C*k+D*m+E*a;c[12]=q*d+F*h+G*l+b*p;c[13]=q*e+F*i+G*n+b*r;c[14]=q*g+F*j+G*o+b*s;c[15]=q*f+F*k+G*m+b*a;return c};mat4.multiplyVec3=function(a,b,c){c||(c=b);var d=b[0],e=b[1],b=b[2];c[0]=a[0]*d+a[4]*e+a[8]*b+a[12];c[1]=a[1]*d+a[5]*e+a[9]*b+a[13];c[2]=a[2]*d+a[6]*e+a[10]*b+a[14];return c}; +mat4.multiplyVec4=function(a,b,c){c||(c=b);var d=b[0],e=b[1],g=b[2],b=b[3];c[0]=a[0]*d+a[4]*e+a[8]*g+a[12]*b;c[1]=a[1]*d+a[5]*e+a[9]*g+a[13]*b;c[2]=a[2]*d+a[6]*e+a[10]*g+a[14]*b;c[3]=a[3]*d+a[7]*e+a[11]*g+a[15]*b;return c}; +mat4.translate=function(a,b,c){var d=b[0],e=b[1],b=b[2],g,f,h,i,j,k,l,n,o,m,p,r;if(!c||a===c)return a[12]=a[0]*d+a[4]*e+a[8]*b+a[12],a[13]=a[1]*d+a[5]*e+a[9]*b+a[13],a[14]=a[2]*d+a[6]*e+a[10]*b+a[14],a[15]=a[3]*d+a[7]*e+a[11]*b+a[15],a;g=a[0];f=a[1];h=a[2];i=a[3];j=a[4];k=a[5];l=a[6];n=a[7];o=a[8];m=a[9];p=a[10];r=a[11];c[0]=g;c[1]=f;c[2]=h;c[3]=i;c[4]=j;c[5]=k;c[6]=l;c[7]=n;c[8]=o;c[9]=m;c[10]=p;c[11]=r;c[12]=g*d+j*e+o*b+a[12];c[13]=f*d+k*e+m*b+a[13];c[14]=h*d+l*e+p*b+a[14];c[15]=i*d+n*e+r*b+a[15]; +return c};mat4.scale=function(a,b,c){var d=b[0],e=b[1],b=b[2];if(!c||a===c)return a[0]*=d,a[1]*=d,a[2]*=d,a[3]*=d,a[4]*=e,a[5]*=e,a[6]*=e,a[7]*=e,a[8]*=b,a[9]*=b,a[10]*=b,a[11]*=b,a;c[0]=a[0]*d;c[1]=a[1]*d;c[2]=a[2]*d;c[3]=a[3]*d;c[4]=a[4]*e;c[5]=a[5]*e;c[6]=a[6]*e;c[7]=a[7]*e;c[8]=a[8]*b;c[9]=a[9]*b;c[10]=a[10]*b;c[11]=a[11]*b;c[12]=a[12];c[13]=a[13];c[14]=a[14];c[15]=a[15];return c}; +mat4.rotate=function(a,b,c,d){var e=c[0],g=c[1],c=c[2],f=Math.sqrt(e*e+g*g+c*c),h,i,j,k,l,n,o,m,p,r,s,A,B,t,u,v,w,x,y,z;if(!f)return null;f!==1&&(f=1/f,e*=f,g*=f,c*=f);h=Math.sin(b);i=Math.cos(b);j=1-i;b=a[0];f=a[1];k=a[2];l=a[3];n=a[4];o=a[5];m=a[6];p=a[7];r=a[8];s=a[9];A=a[10];B=a[11];t=e*e*j+i;u=g*e*j+c*h;v=c*e*j-g*h;w=e*g*j-c*h;x=g*g*j+i;y=c*g*j+e*h;z=e*c*j+g*h;e=g*c*j-e*h;g=c*c*j+i;d?a!==d&&(d[12]=a[12],d[13]=a[13],d[14]=a[14],d[15]=a[15]):d=a;d[0]=b*t+n*u+r*v;d[1]=f*t+o*u+s*v;d[2]=k*t+m*u+A* +v;d[3]=l*t+p*u+B*v;d[4]=b*w+n*x+r*y;d[5]=f*w+o*x+s*y;d[6]=k*w+m*x+A*y;d[7]=l*w+p*x+B*y;d[8]=b*z+n*e+r*g;d[9]=f*z+o*e+s*g;d[10]=k*z+m*e+A*g;d[11]=l*z+p*e+B*g;return d};mat4.rotateX=function(a,b,c){var d=Math.sin(b),b=Math.cos(b),e=a[4],g=a[5],f=a[6],h=a[7],i=a[8],j=a[9],k=a[10],l=a[11];c?a!==c&&(c[0]=a[0],c[1]=a[1],c[2]=a[2],c[3]=a[3],c[12]=a[12],c[13]=a[13],c[14]=a[14],c[15]=a[15]):c=a;c[4]=e*b+i*d;c[5]=g*b+j*d;c[6]=f*b+k*d;c[7]=h*b+l*d;c[8]=e*-d+i*b;c[9]=g*-d+j*b;c[10]=f*-d+k*b;c[11]=h*-d+l*b;return c}; +mat4.rotateY=function(a,b,c){var d=Math.sin(b),b=Math.cos(b),e=a[0],g=a[1],f=a[2],h=a[3],i=a[8],j=a[9],k=a[10],l=a[11];c?a!==c&&(c[4]=a[4],c[5]=a[5],c[6]=a[6],c[7]=a[7],c[12]=a[12],c[13]=a[13],c[14]=a[14],c[15]=a[15]):c=a;c[0]=e*b+i*-d;c[1]=g*b+j*-d;c[2]=f*b+k*-d;c[3]=h*b+l*-d;c[8]=e*d+i*b;c[9]=g*d+j*b;c[10]=f*d+k*b;c[11]=h*d+l*b;return c}; +mat4.rotateZ=function(a,b,c){var d=Math.sin(b),b=Math.cos(b),e=a[0],g=a[1],f=a[2],h=a[3],i=a[4],j=a[5],k=a[6],l=a[7];c?a!==c&&(c[8]=a[8],c[9]=a[9],c[10]=a[10],c[11]=a[11],c[12]=a[12],c[13]=a[13],c[14]=a[14],c[15]=a[15]):c=a;c[0]=e*b+i*d;c[1]=g*b+j*d;c[2]=f*b+k*d;c[3]=h*b+l*d;c[4]=e*-d+i*b;c[5]=g*-d+j*b;c[6]=f*-d+k*b;c[7]=h*-d+l*b;return c}; +mat4.frustum=function(a,b,c,d,e,g,f){f||(f=mat4.create());var h=b-a,i=d-c,j=g-e;f[0]=e*2/h;f[1]=0;f[2]=0;f[3]=0;f[4]=0;f[5]=e*2/i;f[6]=0;f[7]=0;f[8]=(b+a)/h;f[9]=(d+c)/i;f[10]=-(g+e)/j;f[11]=-1;f[12]=0;f[13]=0;f[14]=-(g*e*2)/j;f[15]=0;return f};mat4.perspective=function(a,b,c,d,e){a=c*Math.tan(a*Math.PI/360);b*=a;return mat4.frustum(-b,b,-a,a,c,d,e)}; +mat4.ortho=function(a,b,c,d,e,g,f){f||(f=mat4.create());var h=b-a,i=d-c,j=g-e;f[0]=2/h;f[1]=0;f[2]=0;f[3]=0;f[4]=0;f[5]=2/i;f[6]=0;f[7]=0;f[8]=0;f[9]=0;f[10]=-2/j;f[11]=0;f[12]=-(a+b)/h;f[13]=-(d+c)/i;f[14]=-(g+e)/j;f[15]=1;return f}; +mat4.lookAt=function(a,b,c,d){d||(d=mat4.create());var e,g,f,h,i,j,k,l,n=a[0],o=a[1],a=a[2];g=c[0];f=c[1];e=c[2];c=b[1];j=b[2];if(n===b[0]&&o===c&&a===j)return mat4.identity(d);c=n-b[0];j=o-b[1];k=a-b[2];l=1/Math.sqrt(c*c+j*j+k*k);c*=l;j*=l;k*=l;b=f*k-e*j;e=e*c-g*k;g=g*j-f*c;(l=Math.sqrt(b*b+e*e+g*g))?(l=1/l,b*=l,e*=l,g*=l):g=e=b=0;f=j*g-k*e;h=k*b-c*g;i=c*e-j*b;(l=Math.sqrt(f*f+h*h+i*i))?(l=1/l,f*=l,h*=l,i*=l):i=h=f=0;d[0]=b;d[1]=f;d[2]=c;d[3]=0;d[4]=e;d[5]=h;d[6]=j;d[7]=0;d[8]=g;d[9]=i;d[10]=k;d[11]= +0;d[12]=-(b*n+e*o+g*a);d[13]=-(f*n+h*o+i*a);d[14]=-(c*n+j*o+k*a);d[15]=1;return d};mat4.fromRotationTranslation=function(a,b,c){c||(c=mat4.create());var d=a[0],e=a[1],g=a[2],f=a[3],h=d+d,i=e+e,j=g+g,a=d*h,k=d*i;d*=j;var l=e*i;e*=j;g*=j;h*=f;i*=f;f*=j;c[0]=1-(l+g);c[1]=k+f;c[2]=d-i;c[3]=0;c[4]=k-f;c[5]=1-(a+g);c[6]=e+h;c[7]=0;c[8]=d+i;c[9]=e-h;c[10]=1-(a+l);c[11]=0;c[12]=b[0];c[13]=b[1];c[14]=b[2];c[15]=1;return c}; +mat4.str=function(a){return"["+a[0]+", "+a[1]+", "+a[2]+", "+a[3]+", "+a[4]+", "+a[5]+", "+a[6]+", "+a[7]+", "+a[8]+", "+a[9]+", "+a[10]+", "+a[11]+", "+a[12]+", "+a[13]+", "+a[14]+", "+a[15]+"]"};quat4.create=function(a){var b=new MatrixArray(4);a&&(b[0]=a[0],b[1]=a[1],b[2]=a[2],b[3]=a[3]);return b};quat4.set=function(a,b){b[0]=a[0];b[1]=a[1];b[2]=a[2];b[3]=a[3];return b}; +quat4.calculateW=function(a,b){var c=a[0],d=a[1],e=a[2];if(!b||a===b)return a[3]=-Math.sqrt(Math.abs(1-c*c-d*d-e*e)),a;b[0]=c;b[1]=d;b[2]=e;b[3]=-Math.sqrt(Math.abs(1-c*c-d*d-e*e));return b};quat4.inverse=function(a,b){if(!b||a===b)return a[0]*=-1,a[1]*=-1,a[2]*=-1,a;b[0]=-a[0];b[1]=-a[1];b[2]=-a[2];b[3]=a[3];return b};quat4.length=function(a){var b=a[0],c=a[1],d=a[2],a=a[3];return Math.sqrt(b*b+c*c+d*d+a*a)}; +quat4.normalize=function(a,b){b||(b=a);var c=a[0],d=a[1],e=a[2],g=a[3],f=Math.sqrt(c*c+d*d+e*e+g*g);if(f===0)return b[0]=0,b[1]=0,b[2]=0,b[3]=0,b;f=1/f;b[0]=c*f;b[1]=d*f;b[2]=e*f;b[3]=g*f;return b};quat4.multiply=function(a,b,c){c||(c=a);var d=a[0],e=a[1],g=a[2],a=a[3],f=b[0],h=b[1],i=b[2],b=b[3];c[0]=d*b+a*f+e*i-g*h;c[1]=e*b+a*h+g*f-d*i;c[2]=g*b+a*i+d*h-e*f;c[3]=a*b-d*f-e*h-g*i;return c}; +quat4.multiplyVec3=function(a,b,c){c||(c=b);var d=b[0],e=b[1],g=b[2],b=a[0],f=a[1],h=a[2],a=a[3],i=a*d+f*g-h*e,j=a*e+h*d-b*g,k=a*g+b*e-f*d,d=-b*d-f*e-h*g;c[0]=i*a+d*-b+j*-h-k*-f;c[1]=j*a+d*-f+k*-b-i*-h;c[2]=k*a+d*-h+i*-f-j*-b;return c};quat4.toMat3=function(a,b){b||(b=mat3.create());var c=a[0],d=a[1],e=a[2],g=a[3],f=c+c,h=d+d,i=e+e,j=c*f,k=c*h;c*=i;var l=d*h;d*=i;e*=i;f*=g;h*=g;g*=i;b[0]=1-(l+e);b[1]=k+g;b[2]=c-h;b[3]=k-g;b[4]=1-(j+e);b[5]=d+f;b[6]=c+h;b[7]=d-f;b[8]=1-(j+l);return b}; +quat4.toMat4=function(a,b){b||(b=mat4.create());var c=a[0],d=a[1],e=a[2],g=a[3],f=c+c,h=d+d,i=e+e,j=c*f,k=c*h;c*=i;var l=d*h;d*=i;e*=i;f*=g;h*=g;g*=i;b[0]=1-(l+e);b[1]=k+g;b[2]=c-h;b[3]=0;b[4]=k-g;b[5]=1-(j+e);b[6]=d+f;b[7]=0;b[8]=c+h;b[9]=d-f;b[10]=1-(j+l);b[11]=0;b[12]=0;b[13]=0;b[14]=0;b[15]=1;return b}; +quat4.slerp=function(a,b,c,d){d||(d=a);var e=a[0]*b[0]+a[1]*b[1]+a[2]*b[2]+a[3]*b[3],g,f;if(Math.abs(e)>=1)return d!==a&&(d[0]=a[0],d[1]=a[1],d[2]=a[2],d[3]=a[3]),d;g=Math.acos(e);f=Math.sqrt(1-e*e);if(Math.abs(f)<0.001)return d[0]=a[0]*0.5+b[0]*0.5,d[1]=a[1]*0.5+b[1]*0.5,d[2]=a[2]*0.5+b[2]*0.5,d[3]=a[3]*0.5+b[3]*0.5,d;e=Math.sin((1-c)*g)/f;c=Math.sin(c*g)/f;d[0]=a[0]*e+b[0]*c;d[1]=a[1]*e+b[1]*c;d[2]=a[2]*e+b[2]*c;d[3]=a[3]*e+b[3]*c;return d}; +quat4.str=function(a){return"["+a[0]+", "+a[1]+", "+a[2]+", "+a[3]+"]"}; +(function() +{ + var MAX_VERTICES = 8000; // equates to 2500 objects being drawn + var MAX_INDICES = (MAX_VERTICES / 2) * 3; // 6 indices for every 4 vertices + var MAX_POINTS = 8000; + var MULTI_BUFFERS = 4; // cycle 4 buffers to try and avoid blocking + var BATCH_NULL = 0; + var BATCH_QUAD = 1; + var BATCH_SETTEXTURE = 2; + var BATCH_SETOPACITY = 3; + var BATCH_SETBLEND = 4; + var BATCH_UPDATEMODELVIEW = 5; + var BATCH_RENDERTOTEXTURE = 6; + var BATCH_CLEAR = 7; + var BATCH_POINTS = 8; + var BATCH_SETPROGRAM = 9; + var BATCH_SETPROGRAMPARAMETERS = 10; + var BATCH_SETTEXTURE1 = 11; + var BATCH_SETCOLOR = 12; + var BATCH_SETDEPTHTEST = 13; + var BATCH_SETEARLYZMODE = 14; + /* + var lose_ext = null; + window.lose_context = function () + { + if (!lose_ext) + { + console.log("WEBGL_lose_context not supported"); + return; + } + lose_ext.loseContext(); + }; + window.restore_context = function () + { + if (!lose_ext) + { + console.log("WEBGL_lose_context not supported"); + return; + } + lose_ext.restoreContext(); + }; + */ + var tempMat4 = mat4.create(); + function GLWrap_(gl, isMobile, enableFrontToBack) + { + this.isIE = /msie/i.test(navigator.userAgent) || /trident/i.test(navigator.userAgent); + this.width = 0; // not yet known, wait for call to setSize() + this.height = 0; + this.enableFrontToBack = !!enableFrontToBack; + this.isEarlyZPass = false; + this.isBatchInEarlyZPass = false; + this.currentZ = 0; + this.zNear = 1; + this.zFar = 1000; + this.zIncrement = ((this.zFar - this.zNear) / 32768); + this.zA = this.zFar / (this.zFar - this.zNear); + this.zB = this.zFar * this.zNear / (this.zNear - this.zFar); + this.kzA = 65536 * this.zA; + this.kzB = 65536 * this.zB; + this.cam = vec3.create([0, 0, 100]); // camera position + this.look = vec3.create([0, 0, 0]); // lookat position + this.up = vec3.create([0, 1, 0]); // up vector + this.worldScale = vec3.create([1, 1, 1]); // world scaling factor + this.enable_mipmaps = true; + this.matP = mat4.create(); // perspective matrix + this.matMV = mat4.create(); // model view matrix + this.lastMV = mat4.create(); + this.currentMV = mat4.create(); + this.gl = gl; + this.version = (this.gl.getParameter(this.gl.VERSION).indexOf("WebGL 2") === 0 ? 2 : 1); + this.initState(); + }; + GLWrap_.prototype.initState = function () + { + var gl = this.gl; + var i, len; + this.lastOpacity = 1; + this.lastTexture0 = null; // last bound to TEXTURE0 + this.lastTexture1 = null; // last bound to TEXTURE1 + this.currentOpacity = 1; + gl.clearColor(0, 0, 0, 0); + gl.clear(gl.COLOR_BUFFER_BIT); + gl.enable(gl.BLEND); + gl.blendFunc(gl.ONE, gl.ONE_MINUS_SRC_ALPHA); + gl.disable(gl.CULL_FACE); + gl.disable(gl.STENCIL_TEST); + gl.disable(gl.DITHER); + if (this.enableFrontToBack) + { + gl.enable(gl.DEPTH_TEST); + gl.depthFunc(gl.LEQUAL); + } + else + { + gl.disable(gl.DEPTH_TEST); + } + this.maxTextureSize = gl.getParameter(gl.MAX_TEXTURE_SIZE); + this.lastSrcBlend = gl.ONE; + this.lastDestBlend = gl.ONE_MINUS_SRC_ALPHA; + this.vertexData = new Float32Array(MAX_VERTICES * (this.enableFrontToBack ? 3 : 2)); + this.texcoordData = new Float32Array(MAX_VERTICES * 2); + this.pointData = new Float32Array(MAX_POINTS * 4); + this.pointBuffer = gl.createBuffer(); + gl.bindBuffer(gl.ARRAY_BUFFER, this.pointBuffer); + gl.bufferData(gl.ARRAY_BUFFER, this.pointData.byteLength, gl.DYNAMIC_DRAW); + this.vertexBuffers = new Array(MULTI_BUFFERS); + this.texcoordBuffers = new Array(MULTI_BUFFERS); + for (i = 0; i < MULTI_BUFFERS; i++) + { + this.vertexBuffers[i] = gl.createBuffer(); + gl.bindBuffer(gl.ARRAY_BUFFER, this.vertexBuffers[i]); + gl.bufferData(gl.ARRAY_BUFFER, this.vertexData.byteLength, gl.DYNAMIC_DRAW); + this.texcoordBuffers[i] = gl.createBuffer(); + gl.bindBuffer(gl.ARRAY_BUFFER, this.texcoordBuffers[i]); + gl.bufferData(gl.ARRAY_BUFFER, this.texcoordData.byteLength, gl.DYNAMIC_DRAW); + } + this.curBuffer = 0; + this.indexBuffer = gl.createBuffer(); + gl.bindBuffer(gl.ELEMENT_ARRAY_BUFFER, this.indexBuffer); + var indexData = new Uint16Array(MAX_INDICES); + i = 0, len = MAX_INDICES; + var fv = 0; + while (i < len) + { + indexData[i++] = fv; // top left + indexData[i++] = fv + 1; // top right + indexData[i++] = fv + 2; // bottom right (first tri) + indexData[i++] = fv; // top left + indexData[i++] = fv + 2; // bottom right + indexData[i++] = fv + 3; // bottom left + fv += 4; + } + gl.bufferData(gl.ELEMENT_ARRAY_BUFFER, indexData, gl.STATIC_DRAW); + this.vertexPtr = 0; + this.texPtr = 0; + this.pointPtr = 0; + var fsSource, vsSource; + this.shaderPrograms = []; + fsSource = [ + "varying mediump vec2 vTex;", + "uniform lowp float opacity;", + "uniform lowp sampler2D samplerFront;", + "void main(void) {", + " gl_FragColor = texture2D(samplerFront, vTex);", + " gl_FragColor *= opacity;", + "}" + ].join("\n"); + if (this.enableFrontToBack) + { + vsSource = [ + "attribute highp vec3 aPos;", + "attribute mediump vec2 aTex;", + "varying mediump vec2 vTex;", + "uniform highp mat4 matP;", + "uniform highp mat4 matMV;", + "void main(void) {", + " gl_Position = matP * matMV * vec4(aPos.x, aPos.y, aPos.z, 1.0);", + " vTex = aTex;", + "}" + ].join("\n"); + } + else + { + vsSource = [ + "attribute highp vec2 aPos;", + "attribute mediump vec2 aTex;", + "varying mediump vec2 vTex;", + "uniform highp mat4 matP;", + "uniform highp mat4 matMV;", + "void main(void) {", + " gl_Position = matP * matMV * vec4(aPos.x, aPos.y, 0.0, 1.0);", + " vTex = aTex;", + "}" + ].join("\n"); + } + var shaderProg = this.createShaderProgram({src: fsSource}, vsSource, ""); +; + this.shaderPrograms.push(shaderProg); // Default shader is always shader 0 + fsSource = [ + "uniform mediump sampler2D samplerFront;", + "varying lowp float opacity;", + "void main(void) {", + " gl_FragColor = texture2D(samplerFront, gl_PointCoord);", + " gl_FragColor *= opacity;", + "}" + ].join("\n"); + var pointVsSource = [ + "attribute vec4 aPos;", + "varying float opacity;", + "uniform mat4 matP;", + "uniform mat4 matMV;", + "void main(void) {", + " gl_Position = matP * matMV * vec4(aPos.x, aPos.y, 0.0, 1.0);", + " gl_PointSize = aPos.z;", + " opacity = aPos.w;", + "}" + ].join("\n"); + shaderProg = this.createShaderProgram({src: fsSource}, pointVsSource, ""); +; + this.shaderPrograms.push(shaderProg); // Point shader is always shader 1 + fsSource = [ + "varying mediump vec2 vTex;", + "uniform lowp sampler2D samplerFront;", + "void main(void) {", + " if (texture2D(samplerFront, vTex).a < 1.0)", + " discard;", // discarding non-opaque fragments + "}" + ].join("\n"); + var shaderProg = this.createShaderProgram({src: fsSource}, vsSource, ""); +; + this.shaderPrograms.push(shaderProg); // Early-Z shader is always shader 2 + fsSource = [ + "uniform lowp vec4 colorFill;", + "void main(void) {", + " gl_FragColor = colorFill;", + "}" + ].join("\n"); + var shaderProg = this.createShaderProgram({src: fsSource}, vsSource, ""); +; + this.shaderPrograms.push(shaderProg); // Fill-color shader is always shader 3 + for (var shader_name in cr.shaders) + { + if (cr.shaders.hasOwnProperty(shader_name)) + this.shaderPrograms.push(this.createShaderProgram(cr.shaders[shader_name], vsSource, shader_name)); + } + gl.activeTexture(gl.TEXTURE0); + gl.bindTexture(gl.TEXTURE_2D, null); + this.batch = []; + this.batchPtr = 0; + this.hasQuadBatchTop = false; + this.hasPointBatchTop = false; + this.lastProgram = -1; // start -1 so first switchProgram can do work + this.currentProgram = -1; // current program during batch execution + this.currentShader = null; + this.fbo = gl.createFramebuffer(); + this.renderToTex = null; + this.depthBuffer = null; + this.attachedDepthBuffer = false; // wait until first size call to attach, otherwise it has no storage + if (this.enableFrontToBack) + { + this.depthBuffer = gl.createRenderbuffer(); + } + this.tmpVec3 = vec3.create([0, 0, 0]); +; + var pointsizes = gl.getParameter(gl.ALIASED_POINT_SIZE_RANGE); + this.minPointSize = pointsizes[0]; + this.maxPointSize = pointsizes[1]; + if (this.maxPointSize > 2048) + this.maxPointSize = 2048; +; + this.switchProgram(0); + cr.seal(this); + }; + function GLShaderProgram(gl, shaderProgram, name) + { + this.gl = gl; + this.shaderProgram = shaderProgram; + this.name = name; + this.locAPos = gl.getAttribLocation(shaderProgram, "aPos"); + this.locATex = gl.getAttribLocation(shaderProgram, "aTex"); + this.locMatP = gl.getUniformLocation(shaderProgram, "matP"); + this.locMatMV = gl.getUniformLocation(shaderProgram, "matMV"); + this.locOpacity = gl.getUniformLocation(shaderProgram, "opacity"); + this.locColorFill = gl.getUniformLocation(shaderProgram, "colorFill"); + this.locSamplerFront = gl.getUniformLocation(shaderProgram, "samplerFront"); + this.locSamplerBack = gl.getUniformLocation(shaderProgram, "samplerBack"); + this.locDestStart = gl.getUniformLocation(shaderProgram, "destStart"); + this.locDestEnd = gl.getUniformLocation(shaderProgram, "destEnd"); + this.locSeconds = gl.getUniformLocation(shaderProgram, "seconds"); + this.locPixelWidth = gl.getUniformLocation(shaderProgram, "pixelWidth"); + this.locPixelHeight = gl.getUniformLocation(shaderProgram, "pixelHeight"); + this.locLayerScale = gl.getUniformLocation(shaderProgram, "layerScale"); + this.locLayerAngle = gl.getUniformLocation(shaderProgram, "layerAngle"); + this.locViewOrigin = gl.getUniformLocation(shaderProgram, "viewOrigin"); + this.locScrollPos = gl.getUniformLocation(shaderProgram, "scrollPos"); + this.hasAnyOptionalUniforms = !!(this.locPixelWidth || this.locPixelHeight || this.locSeconds || this.locSamplerBack || this.locDestStart || this.locDestEnd || this.locLayerScale || this.locLayerAngle || this.locViewOrigin || this.locScrollPos); + this.lpPixelWidth = -999; // set to something unlikely so never counts as cached on first set + this.lpPixelHeight = -999; + this.lpOpacity = 1; + this.lpDestStartX = 0.0; + this.lpDestStartY = 0.0; + this.lpDestEndX = 1.0; + this.lpDestEndY = 1.0; + this.lpLayerScale = 1.0; + this.lpLayerAngle = 0.0; + this.lpViewOriginX = 0.0; + this.lpViewOriginY = 0.0; + this.lpScrollPosX = 0.0; + this.lpScrollPosY = 0.0; + this.lpSeconds = 0.0; + this.lastCustomParams = []; + this.lpMatMV = mat4.create(); + if (this.locOpacity) + gl.uniform1f(this.locOpacity, 1); + if (this.locColorFill) + gl.uniform4f(this.locColorFill, 1.0, 1.0, 1.0, 1.0); + if (this.locSamplerFront) + gl.uniform1i(this.locSamplerFront, 0); + if (this.locSamplerBack) + gl.uniform1i(this.locSamplerBack, 1); + if (this.locDestStart) + gl.uniform2f(this.locDestStart, 0.0, 0.0); + if (this.locDestEnd) + gl.uniform2f(this.locDestEnd, 1.0, 1.0); + if (this.locLayerScale) + gl.uniform1f(this.locLayerScale, 1.0); + if (this.locLayerAngle) + gl.uniform1f(this.locLayerAngle, 0.0); + if (this.locViewOrigin) + gl.uniform2f(this.locViewOrigin, 0.0, 0.0); + if (this.locScrollPos) + gl.uniform2f(this.locScrollPos, 0.0, 0.0); + if (this.locSeconds) + gl.uniform1f(this.locSeconds, 0.0); + this.hasCurrentMatMV = false; // matMV needs updating + }; + function areMat4sEqual(a, b) + { + return a[0]===b[0]&&a[1]===b[1]&&a[2]===b[2]&&a[3]===b[3]&& + a[4]===b[4]&&a[5]===b[5]&&a[6]===b[6]&&a[7]===b[7]&& + a[8]===b[8]&&a[9]===b[9]&&a[10]===b[10]&&a[11]===b[11]&& + a[12]===b[12]&&a[13]===b[13]&&a[14]===b[14]&&a[15]===b[15]; + }; + GLShaderProgram.prototype.updateMatMV = function (mv) + { + if (areMat4sEqual(this.lpMatMV, mv)) + return; // no change, save the expensive GL call + mat4.set(mv, this.lpMatMV); + this.gl.uniformMatrix4fv(this.locMatMV, false, mv); + }; + GLWrap_.prototype.createShaderProgram = function(shaderEntry, vsSource, name) + { + var gl = this.gl; + var fragmentShader = gl.createShader(gl.FRAGMENT_SHADER); + gl.shaderSource(fragmentShader, shaderEntry.src); + gl.compileShader(fragmentShader); + if (!gl.getShaderParameter(fragmentShader, gl.COMPILE_STATUS)) + { + var compilationlog = gl.getShaderInfoLog(fragmentShader); + gl.deleteShader(fragmentShader); + throw new Error("error compiling fragment shader: " + compilationlog); + } + var vertexShader = gl.createShader(gl.VERTEX_SHADER); + gl.shaderSource(vertexShader, vsSource); + gl.compileShader(vertexShader); + if (!gl.getShaderParameter(vertexShader, gl.COMPILE_STATUS)) + { + var compilationlog = gl.getShaderInfoLog(vertexShader); + gl.deleteShader(fragmentShader); + gl.deleteShader(vertexShader); + throw new Error("error compiling vertex shader: " + compilationlog); + } + var shaderProgram = gl.createProgram(); + gl.attachShader(shaderProgram, fragmentShader); + gl.attachShader(shaderProgram, vertexShader); + gl.linkProgram(shaderProgram); + if (!gl.getProgramParameter(shaderProgram, gl.LINK_STATUS)) + { + var compilationlog = gl.getProgramInfoLog(shaderProgram); + gl.deleteShader(fragmentShader); + gl.deleteShader(vertexShader); + gl.deleteProgram(shaderProgram); + throw new Error("error linking shader program: " + compilationlog); + } + gl.useProgram(shaderProgram); + gl.deleteShader(fragmentShader); + gl.deleteShader(vertexShader); + var ret = new GLShaderProgram(gl, shaderProgram, name); + ret.extendBoxHorizontal = shaderEntry.extendBoxHorizontal || 0; + ret.extendBoxVertical = shaderEntry.extendBoxVertical || 0; + ret.crossSampling = !!shaderEntry.crossSampling; + ret.preservesOpaqueness = !!shaderEntry.preservesOpaqueness; + ret.animated = !!shaderEntry.animated; + ret.parameters = shaderEntry.parameters || []; + var i, len; + for (i = 0, len = ret.parameters.length; i < len; i++) + { + ret.parameters[i][1] = gl.getUniformLocation(shaderProgram, ret.parameters[i][0]); + ret.lastCustomParams.push(0); + gl.uniform1f(ret.parameters[i][1], 0); + } + cr.seal(ret); + return ret; + }; + GLWrap_.prototype.getShaderIndex = function(name_) + { + var i, len; + for (i = 0, len = this.shaderPrograms.length; i < len; i++) + { + if (this.shaderPrograms[i].name === name_) + return i; + } + return -1; + }; + GLWrap_.prototype.project = function (x, y, out) + { + var mv = this.matMV; + var proj = this.matP; + var fTempo = [0, 0, 0, 0, 0, 0, 0, 0]; + fTempo[0] = mv[0]*x+mv[4]*y+mv[12]; + fTempo[1] = mv[1]*x+mv[5]*y+mv[13]; + fTempo[2] = mv[2]*x+mv[6]*y+mv[14]; + fTempo[3] = mv[3]*x+mv[7]*y+mv[15]; + fTempo[4] = proj[0]*fTempo[0]+proj[4]*fTempo[1]+proj[8]*fTempo[2]+proj[12]*fTempo[3]; + fTempo[5] = proj[1]*fTempo[0]+proj[5]*fTempo[1]+proj[9]*fTempo[2]+proj[13]*fTempo[3]; + fTempo[6] = proj[2]*fTempo[0]+proj[6]*fTempo[1]+proj[10]*fTempo[2]+proj[14]*fTempo[3]; + fTempo[7] = -fTempo[2]; + if(fTempo[7]===0.0) //The w value + return; + fTempo[7]=1.0/fTempo[7]; + fTempo[4]*=fTempo[7]; + fTempo[5]*=fTempo[7]; + fTempo[6]*=fTempo[7]; + out[0]=(fTempo[4]*0.5+0.5)*this.width; + out[1]=(fTempo[5]*0.5+0.5)*this.height; + }; + GLWrap_.prototype.setSize = function(w, h, force) + { + if (this.width === w && this.height === h && !force) + return; + this.endBatch(); + var gl = this.gl; + this.width = w; + this.height = h; + gl.viewport(0, 0, w, h); + mat4.lookAt(this.cam, this.look, this.up, this.matMV); + if (this.enableFrontToBack) + { + mat4.ortho(-w/2, w/2, h/2, -h/2, this.zNear, this.zFar, this.matP); + this.worldScale[0] = 1; + this.worldScale[1] = 1; + } + else + { + mat4.perspective(45, w / h, this.zNear, this.zFar, this.matP); + var tl = [0, 0]; + var br = [0, 0]; + this.project(0, 0, tl); + this.project(1, 1, br); + this.worldScale[0] = 1 / (br[0] - tl[0]); + this.worldScale[1] = -1 / (br[1] - tl[1]); + } + var i, len, s; + for (i = 0, len = this.shaderPrograms.length; i < len; i++) + { + s = this.shaderPrograms[i]; + s.hasCurrentMatMV = false; + if (s.locMatP) + { + gl.useProgram(s.shaderProgram); + gl.uniformMatrix4fv(s.locMatP, false, this.matP); + } + } + gl.useProgram(this.shaderPrograms[this.lastProgram].shaderProgram); + gl.bindTexture(gl.TEXTURE_2D, null); + gl.activeTexture(gl.TEXTURE1); + gl.bindTexture(gl.TEXTURE_2D, null); + gl.activeTexture(gl.TEXTURE0); + this.lastTexture0 = null; + this.lastTexture1 = null; + if (this.depthBuffer) + { + gl.bindFramebuffer(gl.FRAMEBUFFER, this.fbo); + gl.bindRenderbuffer(gl.RENDERBUFFER, this.depthBuffer); + gl.renderbufferStorage(gl.RENDERBUFFER, gl.DEPTH_COMPONENT16, this.width, this.height); + if (!this.attachedDepthBuffer) + { + gl.framebufferRenderbuffer(gl.FRAMEBUFFER, gl.DEPTH_ATTACHMENT, gl.RENDERBUFFER, this.depthBuffer); + this.attachedDepthBuffer = true; + } + gl.bindRenderbuffer(gl.RENDERBUFFER, null); + gl.bindFramebuffer(gl.FRAMEBUFFER, null); + this.renderToTex = null; + } + }; + GLWrap_.prototype.resetModelView = function () + { + mat4.lookAt(this.cam, this.look, this.up, this.matMV); + mat4.scale(this.matMV, this.worldScale); + }; + GLWrap_.prototype.translate = function (x, y) + { + if (x === 0 && y === 0) + return; + this.tmpVec3[0] = x;// * this.worldScale[0]; + this.tmpVec3[1] = y;// * this.worldScale[1]; + this.tmpVec3[2] = 0; + mat4.translate(this.matMV, this.tmpVec3); + }; + GLWrap_.prototype.scale = function (x, y) + { + if (x === 1 && y === 1) + return; + this.tmpVec3[0] = x; + this.tmpVec3[1] = y; + this.tmpVec3[2] = 1; + mat4.scale(this.matMV, this.tmpVec3); + }; + GLWrap_.prototype.rotateZ = function (a) + { + if (a === 0) + return; + mat4.rotateZ(this.matMV, a); + }; + GLWrap_.prototype.updateModelView = function() + { + if (areMat4sEqual(this.lastMV, this.matMV)) + return; + var b = this.pushBatch(); + b.type = BATCH_UPDATEMODELVIEW; + if (b.mat4param) + mat4.set(this.matMV, b.mat4param); + else + b.mat4param = mat4.create(this.matMV); + mat4.set(this.matMV, this.lastMV); + this.hasQuadBatchTop = false; + this.hasPointBatchTop = false; + }; + /* + var debugBatch = false; + jQuery(document).mousedown( + function(info) { + if (info.which === 2) + debugBatch = true; + } + ); + */ + GLWrap_.prototype.setEarlyZIndex = function (i) + { + if (!this.enableFrontToBack) + return; + if (i > 32760) + i = 32760; + this.currentZ = this.cam[2] - this.zNear - i * this.zIncrement; + }; + function GLBatchJob(type_, glwrap_) + { + this.type = type_; + this.glwrap = glwrap_; + this.gl = glwrap_.gl; + this.opacityParam = 0; // for setOpacity() + this.startIndex = 0; // for quad() + this.indexCount = 0; // " + this.texParam = null; // for setTexture() + this.mat4param = null; // for updateModelView() + this.shaderParams = []; // for user parameters + cr.seal(this); + }; + GLBatchJob.prototype.doSetEarlyZPass = function () + { + var gl = this.gl; + var glwrap = this.glwrap; + if (this.startIndex !== 0) // enable + { + gl.depthMask(true); // enable depth writes + gl.colorMask(false, false, false, false); // disable color writes + gl.disable(gl.BLEND); // no color writes so disable blend + gl.bindFramebuffer(gl.FRAMEBUFFER, glwrap.fbo); + gl.framebufferTexture2D(gl.FRAMEBUFFER, gl.COLOR_ATTACHMENT0, gl.TEXTURE_2D, null, 0); + gl.clear(gl.DEPTH_BUFFER_BIT); // auto-clear depth buffer + gl.bindFramebuffer(gl.FRAMEBUFFER, null); + glwrap.isBatchInEarlyZPass = true; + } + else + { + gl.depthMask(false); // disable depth writes, only test existing depth values + gl.colorMask(true, true, true, true); // enable color writes + gl.enable(gl.BLEND); // turn blending back on + glwrap.isBatchInEarlyZPass = false; + } + }; + GLBatchJob.prototype.doSetTexture = function () + { + this.gl.bindTexture(this.gl.TEXTURE_2D, this.texParam); + }; + GLBatchJob.prototype.doSetTexture1 = function () + { + var gl = this.gl; + gl.activeTexture(gl.TEXTURE1); + gl.bindTexture(gl.TEXTURE_2D, this.texParam); + gl.activeTexture(gl.TEXTURE0); + }; + GLBatchJob.prototype.doSetOpacity = function () + { + var o = this.opacityParam; + var glwrap = this.glwrap; + glwrap.currentOpacity = o; + var curProg = glwrap.currentShader; + if (curProg.locOpacity && curProg.lpOpacity !== o) + { + curProg.lpOpacity = o; + this.gl.uniform1f(curProg.locOpacity, o); + } + }; + GLBatchJob.prototype.doQuad = function () + { + this.gl.drawElements(this.gl.TRIANGLES, this.indexCount, this.gl.UNSIGNED_SHORT, this.startIndex); + }; + GLBatchJob.prototype.doSetBlend = function () + { + this.gl.blendFunc(this.startIndex, this.indexCount); + }; + GLBatchJob.prototype.doUpdateModelView = function () + { + var i, len, s, shaderPrograms = this.glwrap.shaderPrograms, currentProgram = this.glwrap.currentProgram; + for (i = 0, len = shaderPrograms.length; i < len; i++) + { + s = shaderPrograms[i]; + if (i === currentProgram && s.locMatMV) + { + s.updateMatMV(this.mat4param); + s.hasCurrentMatMV = true; + } + else + s.hasCurrentMatMV = false; + } + mat4.set(this.mat4param, this.glwrap.currentMV); + }; + GLBatchJob.prototype.doRenderToTexture = function () + { + var gl = this.gl; + var glwrap = this.glwrap; + if (this.texParam) + { + if (glwrap.lastTexture1 === this.texParam) + { + gl.activeTexture(gl.TEXTURE1); + gl.bindTexture(gl.TEXTURE_2D, null); + glwrap.lastTexture1 = null; + gl.activeTexture(gl.TEXTURE0); + } + gl.bindFramebuffer(gl.FRAMEBUFFER, glwrap.fbo); + if (!glwrap.isBatchInEarlyZPass) + { + gl.framebufferTexture2D(gl.FRAMEBUFFER, gl.COLOR_ATTACHMENT0, gl.TEXTURE_2D, this.texParam, 0); + } + } + else + { + if (!glwrap.enableFrontToBack) + { + gl.framebufferTexture2D(gl.FRAMEBUFFER, gl.COLOR_ATTACHMENT0, gl.TEXTURE_2D, null, 0); + } + gl.bindFramebuffer(gl.FRAMEBUFFER, null); + } + }; + GLBatchJob.prototype.doClear = function () + { + var gl = this.gl; + var mode = this.startIndex; + if (mode === 0) // clear whole surface + { + gl.clearColor(this.mat4param[0], this.mat4param[1], this.mat4param[2], this.mat4param[3]); + gl.clear(gl.COLOR_BUFFER_BIT); + } + else if (mode === 1) // clear rectangle + { + gl.enable(gl.SCISSOR_TEST); + gl.scissor(this.mat4param[0], this.mat4param[1], this.mat4param[2], this.mat4param[3]); + gl.clearColor(0, 0, 0, 0); + gl.clear(gl.COLOR_BUFFER_BIT); + gl.disable(gl.SCISSOR_TEST); + } + else // clear depth + { + gl.clear(gl.DEPTH_BUFFER_BIT); + } + }; + GLBatchJob.prototype.doSetDepthTestEnabled = function () + { + var gl = this.gl; + var enable = this.startIndex; + if (enable !== 0) + { + gl.enable(gl.DEPTH_TEST); + } + else + { + gl.disable(gl.DEPTH_TEST); + } + }; + GLBatchJob.prototype.doPoints = function () + { + var gl = this.gl; + var glwrap = this.glwrap; + if (glwrap.enableFrontToBack) + gl.disable(gl.DEPTH_TEST); + var s = glwrap.shaderPrograms[1]; + gl.useProgram(s.shaderProgram); + if (!s.hasCurrentMatMV && s.locMatMV) + { + s.updateMatMV(glwrap.currentMV); + s.hasCurrentMatMV = true; + } + gl.enableVertexAttribArray(s.locAPos); + gl.bindBuffer(gl.ARRAY_BUFFER, glwrap.pointBuffer); + gl.vertexAttribPointer(s.locAPos, 4, gl.FLOAT, false, 0, 0); + gl.drawArrays(gl.POINTS, this.startIndex / 4, this.indexCount); + s = glwrap.currentShader; + gl.useProgram(s.shaderProgram); + if (s.locAPos >= 0) + { + gl.enableVertexAttribArray(s.locAPos); + gl.bindBuffer(gl.ARRAY_BUFFER, glwrap.vertexBuffers[glwrap.curBuffer]); + gl.vertexAttribPointer(s.locAPos, glwrap.enableFrontToBack ? 3 : 2, gl.FLOAT, false, 0, 0); + } + if (s.locATex >= 0) + { + gl.enableVertexAttribArray(s.locATex); + gl.bindBuffer(gl.ARRAY_BUFFER, glwrap.texcoordBuffers[glwrap.curBuffer]); + gl.vertexAttribPointer(s.locATex, 2, gl.FLOAT, false, 0, 0); + } + if (glwrap.enableFrontToBack) + gl.enable(gl.DEPTH_TEST); + }; + GLBatchJob.prototype.doSetProgram = function () + { + var gl = this.gl; + var glwrap = this.glwrap; + var s = glwrap.shaderPrograms[this.startIndex]; // recycled param to save memory + glwrap.currentProgram = this.startIndex; // current batch program + glwrap.currentShader = s; + gl.useProgram(s.shaderProgram); // switch to + if (!s.hasCurrentMatMV && s.locMatMV) + { + s.updateMatMV(glwrap.currentMV); + s.hasCurrentMatMV = true; + } + if (s.locOpacity && s.lpOpacity !== glwrap.currentOpacity) + { + s.lpOpacity = glwrap.currentOpacity; + gl.uniform1f(s.locOpacity, glwrap.currentOpacity); + } + if (s.locAPos >= 0) + { + gl.enableVertexAttribArray(s.locAPos); + gl.bindBuffer(gl.ARRAY_BUFFER, glwrap.vertexBuffers[glwrap.curBuffer]); + gl.vertexAttribPointer(s.locAPos, glwrap.enableFrontToBack ? 3 : 2, gl.FLOAT, false, 0, 0); + } + if (s.locATex >= 0) + { + gl.enableVertexAttribArray(s.locATex); + gl.bindBuffer(gl.ARRAY_BUFFER, glwrap.texcoordBuffers[glwrap.curBuffer]); + gl.vertexAttribPointer(s.locATex, 2, gl.FLOAT, false, 0, 0); + } + } + GLBatchJob.prototype.doSetColor = function () + { + var s = this.glwrap.currentShader; + var mat4param = this.mat4param; + this.gl.uniform4f(s.locColorFill, mat4param[0], mat4param[1], mat4param[2], mat4param[3]); + }; + GLBatchJob.prototype.doSetProgramParameters = function () + { + var i, len, s = this.glwrap.currentShader; + var gl = this.gl; + var mat4param = this.mat4param; + if (s.locSamplerBack && this.glwrap.lastTexture1 !== this.texParam) + { + gl.activeTexture(gl.TEXTURE1); + gl.bindTexture(gl.TEXTURE_2D, this.texParam); + this.glwrap.lastTexture1 = this.texParam; + gl.activeTexture(gl.TEXTURE0); + } + var v = mat4param[0]; + var v2; + if (s.locPixelWidth && v !== s.lpPixelWidth) + { + s.lpPixelWidth = v; + gl.uniform1f(s.locPixelWidth, v); + } + v = mat4param[1]; + if (s.locPixelHeight && v !== s.lpPixelHeight) + { + s.lpPixelHeight = v; + gl.uniform1f(s.locPixelHeight, v); + } + v = mat4param[2]; + v2 = mat4param[3]; + if (s.locDestStart && (v !== s.lpDestStartX || v2 !== s.lpDestStartY)) + { + s.lpDestStartX = v; + s.lpDestStartY = v2; + gl.uniform2f(s.locDestStart, v, v2); + } + v = mat4param[4]; + v2 = mat4param[5]; + if (s.locDestEnd && (v !== s.lpDestEndX || v2 !== s.lpDestEndY)) + { + s.lpDestEndX = v; + s.lpDestEndY = v2; + gl.uniform2f(s.locDestEnd, v, v2); + } + v = mat4param[6]; + if (s.locLayerScale && v !== s.lpLayerScale) + { + s.lpLayerScale = v; + gl.uniform1f(s.locLayerScale, v); + } + v = mat4param[7]; + if (s.locLayerAngle && v !== s.lpLayerAngle) + { + s.lpLayerAngle = v; + gl.uniform1f(s.locLayerAngle, v); + } + v = mat4param[8]; + v2 = mat4param[9]; + if (s.locViewOrigin && (v !== s.lpViewOriginX || v2 !== s.lpViewOriginY)) + { + s.lpViewOriginX = v; + s.lpViewOriginY = v2; + gl.uniform2f(s.locViewOrigin, v, v2); + } + v = mat4param[10]; + v2 = mat4param[11]; + if (s.locScrollPos && (v !== s.lpScrollPosX || v2 !== s.lpScrollPosY)) + { + s.lpScrollPosX = v; + s.lpScrollPosY = v2; + gl.uniform2f(s.locScrollPos, v, v2); + } + v = mat4param[12]; + if (s.locSeconds && v !== s.lpSeconds) + { + s.lpSeconds = v; + gl.uniform1f(s.locSeconds, v); + } + if (s.parameters.length) + { + for (i = 0, len = s.parameters.length; i < len; i++) + { + v = this.shaderParams[i]; + if (v !== s.lastCustomParams[i]) + { + s.lastCustomParams[i] = v; + gl.uniform1f(s.parameters[i][1], v); + } + } + } + }; + GLWrap_.prototype.pushBatch = function () + { + if (this.batchPtr === this.batch.length) + this.batch.push(new GLBatchJob(BATCH_NULL, this)); + return this.batch[this.batchPtr++]; + }; + GLWrap_.prototype.endBatch = function () + { + if (this.batchPtr === 0) + return; + if (this.gl.isContextLost()) + return; + var gl = this.gl; + if (this.pointPtr > 0) + { + gl.bindBuffer(gl.ARRAY_BUFFER, this.pointBuffer); + gl.bufferSubData(gl.ARRAY_BUFFER, 0, this.pointData.subarray(0, this.pointPtr)); + if (s && s.locAPos >= 0 && s.name === "") + gl.vertexAttribPointer(s.locAPos, 4, gl.FLOAT, false, 0, 0); + } + if (this.vertexPtr > 0) + { + var s = this.currentShader; + gl.bindBuffer(gl.ARRAY_BUFFER, this.vertexBuffers[this.curBuffer]); + gl.bufferSubData(gl.ARRAY_BUFFER, 0, this.vertexData.subarray(0, this.vertexPtr)); + if (s && s.locAPos >= 0 && s.name !== "") + gl.vertexAttribPointer(s.locAPos, this.enableFrontToBack ? 3 : 2, gl.FLOAT, false, 0, 0); + gl.bindBuffer(gl.ARRAY_BUFFER, this.texcoordBuffers[this.curBuffer]); + gl.bufferSubData(gl.ARRAY_BUFFER, 0, this.texcoordData.subarray(0, this.texPtr)); + if (s && s.locATex >= 0 && s.name !== "") + gl.vertexAttribPointer(s.locATex, 2, gl.FLOAT, false, 0, 0); + } + var i, len, b; + for (i = 0, len = this.batchPtr; i < len; i++) + { + b = this.batch[i]; + switch (b.type) { + case 1: + b.doQuad(); + break; + case 2: + b.doSetTexture(); + break; + case 3: + b.doSetOpacity(); + break; + case 4: + b.doSetBlend(); + break; + case 5: + b.doUpdateModelView(); + break; + case 6: + b.doRenderToTexture(); + break; + case 7: + b.doClear(); + break; + case 8: + b.doPoints(); + break; + case 9: + b.doSetProgram(); + break; + case 10: + b.doSetProgramParameters(); + break; + case 11: + b.doSetTexture1(); + break; + case 12: + b.doSetColor(); + break; + case 13: + b.doSetDepthTestEnabled(); + break; + case 14: + b.doSetEarlyZPass(); + break; + } + } + this.batchPtr = 0; + this.vertexPtr = 0; + this.texPtr = 0; + this.pointPtr = 0; + this.hasQuadBatchTop = false; + this.hasPointBatchTop = false; + this.isBatchInEarlyZPass = false; + this.curBuffer++; + if (this.curBuffer >= MULTI_BUFFERS) + this.curBuffer = 0; + }; + GLWrap_.prototype.setOpacity = function (op) + { + if (op === this.lastOpacity) + return; + if (this.isEarlyZPass) + return; // ignore + var b = this.pushBatch(); + b.type = BATCH_SETOPACITY; + b.opacityParam = op; + this.lastOpacity = op; + this.hasQuadBatchTop = false; + this.hasPointBatchTop = false; + }; + GLWrap_.prototype.setTexture = function (tex) + { + if (tex === this.lastTexture0) + return; +; + var b = this.pushBatch(); + b.type = BATCH_SETTEXTURE; + b.texParam = tex; + this.lastTexture0 = tex; + this.hasQuadBatchTop = false; + this.hasPointBatchTop = false; + }; + GLWrap_.prototype.setBlend = function (s, d) + { + if (s === this.lastSrcBlend && d === this.lastDestBlend) + return; + if (this.isEarlyZPass) + return; // ignore + var b = this.pushBatch(); + b.type = BATCH_SETBLEND; + b.startIndex = s; // recycle params to save memory + b.indexCount = d; + this.lastSrcBlend = s; + this.lastDestBlend = d; + this.hasQuadBatchTop = false; + this.hasPointBatchTop = false; + }; + GLWrap_.prototype.isPremultipliedAlphaBlend = function () + { + return (this.lastSrcBlend === this.gl.ONE && this.lastDestBlend === this.gl.ONE_MINUS_SRC_ALPHA); + }; + GLWrap_.prototype.setAlphaBlend = function () + { + this.setBlend(this.gl.ONE, this.gl.ONE_MINUS_SRC_ALPHA); + }; + GLWrap_.prototype.setNoPremultiplyAlphaBlend = function () + { + this.setBlend(this.gl.SRC_ALPHA, this.gl.ONE_MINUS_SRC_ALPHA); + }; + var LAST_VERTEX = MAX_VERTICES * 2 - 8; + GLWrap_.prototype.quad = function(tlx, tly, trx, try_, brx, bry, blx, bly) + { + if (this.vertexPtr >= LAST_VERTEX) + this.endBatch(); + var v = this.vertexPtr; // vertex cursor + var t = this.texPtr; + var vd = this.vertexData; // vertex data array + var td = this.texcoordData; // texture coord data array + var currentZ = this.currentZ; + if (this.hasQuadBatchTop) + { + this.batch[this.batchPtr - 1].indexCount += 6; + } + else + { + var b = this.pushBatch(); + b.type = BATCH_QUAD; + b.startIndex = this.enableFrontToBack ? v : (v / 2) * 3; + b.indexCount = 6; + this.hasQuadBatchTop = true; + this.hasPointBatchTop = false; + } + if (this.enableFrontToBack) + { + vd[v++] = tlx; + vd[v++] = tly; + vd[v++] = currentZ; + vd[v++] = trx; + vd[v++] = try_; + vd[v++] = currentZ; + vd[v++] = brx; + vd[v++] = bry; + vd[v++] = currentZ; + vd[v++] = blx; + vd[v++] = bly; + vd[v++] = currentZ; + } + else + { + vd[v++] = tlx; + vd[v++] = tly; + vd[v++] = trx; + vd[v++] = try_; + vd[v++] = brx; + vd[v++] = bry; + vd[v++] = blx; + vd[v++] = bly; + } + td[t++] = 0; + td[t++] = 0; + td[t++] = 1; + td[t++] = 0; + td[t++] = 1; + td[t++] = 1; + td[t++] = 0; + td[t++] = 1; + this.vertexPtr = v; + this.texPtr = t; + }; + GLWrap_.prototype.quadTex = function(tlx, tly, trx, try_, brx, bry, blx, bly, rcTex) + { + if (this.vertexPtr >= LAST_VERTEX) + this.endBatch(); + var v = this.vertexPtr; // vertex cursor + var t = this.texPtr; + var vd = this.vertexData; // vertex data array + var td = this.texcoordData; // texture coord data array + var currentZ = this.currentZ; + if (this.hasQuadBatchTop) + { + this.batch[this.batchPtr - 1].indexCount += 6; + } + else + { + var b = this.pushBatch(); + b.type = BATCH_QUAD; + b.startIndex = this.enableFrontToBack ? v : (v / 2) * 3; + b.indexCount = 6; + this.hasQuadBatchTop = true; + this.hasPointBatchTop = false; + } + var rc_left = rcTex.left; + var rc_top = rcTex.top; + var rc_right = rcTex.right; + var rc_bottom = rcTex.bottom; + if (this.enableFrontToBack) + { + vd[v++] = tlx; + vd[v++] = tly; + vd[v++] = currentZ; + vd[v++] = trx; + vd[v++] = try_; + vd[v++] = currentZ; + vd[v++] = brx; + vd[v++] = bry; + vd[v++] = currentZ; + vd[v++] = blx; + vd[v++] = bly; + vd[v++] = currentZ; + } + else + { + vd[v++] = tlx; + vd[v++] = tly; + vd[v++] = trx; + vd[v++] = try_; + vd[v++] = brx; + vd[v++] = bry; + vd[v++] = blx; + vd[v++] = bly; + } + td[t++] = rc_left; + td[t++] = rc_top; + td[t++] = rc_right; + td[t++] = rc_top; + td[t++] = rc_right; + td[t++] = rc_bottom; + td[t++] = rc_left; + td[t++] = rc_bottom; + this.vertexPtr = v; + this.texPtr = t; + }; + GLWrap_.prototype.quadTexUV = function(tlx, tly, trx, try_, brx, bry, blx, bly, tlu, tlv, tru, trv, bru, brv, blu, blv) + { + if (this.vertexPtr >= LAST_VERTEX) + this.endBatch(); + var v = this.vertexPtr; // vertex cursor + var t = this.texPtr; + var vd = this.vertexData; // vertex data array + var td = this.texcoordData; // texture coord data array + var currentZ = this.currentZ; + if (this.hasQuadBatchTop) + { + this.batch[this.batchPtr - 1].indexCount += 6; + } + else + { + var b = this.pushBatch(); + b.type = BATCH_QUAD; + b.startIndex = this.enableFrontToBack ? v : (v / 2) * 3; + b.indexCount = 6; + this.hasQuadBatchTop = true; + this.hasPointBatchTop = false; + } + if (this.enableFrontToBack) + { + vd[v++] = tlx; + vd[v++] = tly; + vd[v++] = currentZ; + vd[v++] = trx; + vd[v++] = try_; + vd[v++] = currentZ; + vd[v++] = brx; + vd[v++] = bry; + vd[v++] = currentZ; + vd[v++] = blx; + vd[v++] = bly; + vd[v++] = currentZ; + } + else + { + vd[v++] = tlx; + vd[v++] = tly; + vd[v++] = trx; + vd[v++] = try_; + vd[v++] = brx; + vd[v++] = bry; + vd[v++] = blx; + vd[v++] = bly; + } + td[t++] = tlu; + td[t++] = tlv; + td[t++] = tru; + td[t++] = trv; + td[t++] = bru; + td[t++] = brv; + td[t++] = blu; + td[t++] = blv; + this.vertexPtr = v; + this.texPtr = t; + }; + GLWrap_.prototype.convexPoly = function(pts) + { + var pts_count = pts.length / 2; +; + var tris = pts_count - 2; // 3 points = 1 tri, 4 points = 2 tris, 5 points = 3 tris etc. + var last_tri = tris - 1; + var p0x = pts[0]; + var p0y = pts[1]; + var i, i2, p1x, p1y, p2x, p2y, p3x, p3y; + for (i = 0; i < tris; i += 2) // draw 2 triangles at a time + { + i2 = i * 2; + p1x = pts[i2 + 2]; + p1y = pts[i2 + 3]; + p2x = pts[i2 + 4]; + p2y = pts[i2 + 5]; + if (i === last_tri) + { + this.quad(p0x, p0y, p1x, p1y, p2x, p2y, p2x, p2y); + } + else + { + p3x = pts[i2 + 6]; + p3y = pts[i2 + 7]; + this.quad(p0x, p0y, p1x, p1y, p2x, p2y, p3x, p3y); + } + } + }; + var LAST_POINT = MAX_POINTS - 4; + GLWrap_.prototype.point = function(x_, y_, size_, opacity_) + { + if (this.pointPtr >= LAST_POINT) + this.endBatch(); + var p = this.pointPtr; // point cursor + var pd = this.pointData; // point data array + if (this.hasPointBatchTop) + { + this.batch[this.batchPtr - 1].indexCount++; + } + else + { + var b = this.pushBatch(); + b.type = BATCH_POINTS; + b.startIndex = p; + b.indexCount = 1; + this.hasPointBatchTop = true; + this.hasQuadBatchTop = false; + } + pd[p++] = x_; + pd[p++] = y_; + pd[p++] = size_; + pd[p++] = opacity_; + this.pointPtr = p; + }; + GLWrap_.prototype.switchProgram = function (progIndex) + { + if (this.lastProgram === progIndex) + return; // no change + var shaderProg = this.shaderPrograms[progIndex]; + if (!shaderProg) + { + if (this.lastProgram === 0) + return; // already on default shader + progIndex = 0; + shaderProg = this.shaderPrograms[0]; + } + var b = this.pushBatch(); + b.type = BATCH_SETPROGRAM; + b.startIndex = progIndex; + this.lastProgram = progIndex; + this.hasQuadBatchTop = false; + this.hasPointBatchTop = false; + }; + GLWrap_.prototype.programUsesDest = function (progIndex) + { + var s = this.shaderPrograms[progIndex]; + return !!(s.locDestStart || s.locDestEnd); + }; + GLWrap_.prototype.programUsesCrossSampling = function (progIndex) + { + var s = this.shaderPrograms[progIndex]; + return !!(s.locDestStart || s.locDestEnd || s.crossSampling); + }; + GLWrap_.prototype.programPreservesOpaqueness = function (progIndex) + { + return this.shaderPrograms[progIndex].preservesOpaqueness; + }; + GLWrap_.prototype.programExtendsBox = function (progIndex) + { + var s = this.shaderPrograms[progIndex]; + return s.extendBoxHorizontal !== 0 || s.extendBoxVertical !== 0; + }; + GLWrap_.prototype.getProgramBoxExtendHorizontal = function (progIndex) + { + return this.shaderPrograms[progIndex].extendBoxHorizontal; + }; + GLWrap_.prototype.getProgramBoxExtendVertical = function (progIndex) + { + return this.shaderPrograms[progIndex].extendBoxVertical; + }; + GLWrap_.prototype.getProgramParameterType = function (progIndex, paramIndex) + { + return this.shaderPrograms[progIndex].parameters[paramIndex][2]; + }; + GLWrap_.prototype.programIsAnimated = function (progIndex) + { + return this.shaderPrograms[progIndex].animated; + }; + GLWrap_.prototype.setProgramParameters = function (backTex, pixelWidth, pixelHeight, destStartX, destStartY, destEndX, destEndY, layerScale, layerAngle, viewOriginLeft, viewOriginTop, scrollPosX, scrollPosY, seconds, params) + { + var i, len; + var s = this.shaderPrograms[this.lastProgram]; + var b, mat4param, shaderParams; + if (s.hasAnyOptionalUniforms || params.length) + { + b = this.pushBatch(); + b.type = BATCH_SETPROGRAMPARAMETERS; + if (b.mat4param) + mat4.set(this.matMV, b.mat4param); + else + b.mat4param = mat4.create(); + mat4param = b.mat4param; + mat4param[0] = pixelWidth; + mat4param[1] = pixelHeight; + mat4param[2] = destStartX; + mat4param[3] = destStartY; + mat4param[4] = destEndX; + mat4param[5] = destEndY; + mat4param[6] = layerScale; + mat4param[7] = layerAngle; + mat4param[8] = viewOriginLeft; + mat4param[9] = viewOriginTop; + mat4param[10] = scrollPosX; + mat4param[11] = scrollPosY; + mat4param[12] = seconds; + if (s.locSamplerBack) + { +; + b.texParam = backTex; + } + else + b.texParam = null; + if (params.length) + { + shaderParams = b.shaderParams; + shaderParams.length = params.length; + for (i = 0, len = params.length; i < len; i++) + shaderParams[i] = params[i]; + } + this.hasQuadBatchTop = false; + this.hasPointBatchTop = false; + } + }; + GLWrap_.prototype.clear = function (r, g, b_, a) + { + var b = this.pushBatch(); + b.type = BATCH_CLEAR; + b.startIndex = 0; // clear all mode + if (!b.mat4param) + b.mat4param = mat4.create(); + b.mat4param[0] = r; + b.mat4param[1] = g; + b.mat4param[2] = b_; + b.mat4param[3] = a; + this.hasQuadBatchTop = false; + this.hasPointBatchTop = false; + }; + GLWrap_.prototype.clearRect = function (x, y, w, h) + { + if (w < 0 || h < 0) + return; // invalid clear area + var b = this.pushBatch(); + b.type = BATCH_CLEAR; + b.startIndex = 1; // clear rect mode + if (!b.mat4param) + b.mat4param = mat4.create(); + b.mat4param[0] = x; + b.mat4param[1] = y; + b.mat4param[2] = w; + b.mat4param[3] = h; + this.hasQuadBatchTop = false; + this.hasPointBatchTop = false; + }; + GLWrap_.prototype.clearDepth = function () + { + var b = this.pushBatch(); + b.type = BATCH_CLEAR; + b.startIndex = 2; // clear depth mode + this.hasQuadBatchTop = false; + this.hasPointBatchTop = false; + }; + GLWrap_.prototype.setEarlyZPass = function (e) + { + if (!this.enableFrontToBack) + return; // no depth buffer in use + e = !!e; + if (this.isEarlyZPass === e) + return; // no change + var b = this.pushBatch(); + b.type = BATCH_SETEARLYZMODE; + b.startIndex = (e ? 1 : 0); + this.hasQuadBatchTop = false; + this.hasPointBatchTop = false; + this.isEarlyZPass = e; + this.renderToTex = null; + if (this.isEarlyZPass) + { + this.switchProgram(2); // early Z program + } + else + { + this.switchProgram(0); // normal rendering + } + }; + GLWrap_.prototype.setDepthTestEnabled = function (e) + { + if (!this.enableFrontToBack) + return; // no depth buffer in use + var b = this.pushBatch(); + b.type = BATCH_SETDEPTHTEST; + b.startIndex = (e ? 1 : 0); + this.hasQuadBatchTop = false; + this.hasPointBatchTop = false; + }; + GLWrap_.prototype.fullscreenQuad = function () + { + mat4.set(this.lastMV, tempMat4); + this.resetModelView(); + this.updateModelView(); + var halfw = this.width / 2; + var halfh = this.height / 2; + this.quad(-halfw, halfh, halfw, halfh, halfw, -halfh, -halfw, -halfh); + mat4.set(tempMat4, this.matMV); + this.updateModelView(); + }; + GLWrap_.prototype.setColorFillMode = function (r_, g_, b_, a_) + { + this.switchProgram(3); + var b = this.pushBatch(); + b.type = BATCH_SETCOLOR; + if (!b.mat4param) + b.mat4param = mat4.create(); + b.mat4param[0] = r_; + b.mat4param[1] = g_; + b.mat4param[2] = b_; + b.mat4param[3] = a_; + this.hasQuadBatchTop = false; + this.hasPointBatchTop = false; + }; + GLWrap_.prototype.setTextureFillMode = function () + { +; + this.switchProgram(0); + }; + GLWrap_.prototype.restoreEarlyZMode = function () + { +; + this.switchProgram(2); + }; + GLWrap_.prototype.present = function () + { + this.endBatch(); + this.gl.flush(); + /* + if (debugBatch) + { +; + debugBatch = false; + } + */ + }; + function nextHighestPowerOfTwo(x) { + --x; + for (var i = 1; i < 32; i <<= 1) { + x = x | x >> i; + } + return x + 1; + } + var all_textures = []; + var textures_by_src = {}; + GLWrap_.prototype.contextLost = function () + { + cr.clearArray(all_textures); + textures_by_src = {}; + }; + var BF_RGBA8 = 0; + var BF_RGB8 = 1; + var BF_RGBA4 = 2; + var BF_RGB5_A1 = 3; + var BF_RGB565 = 4; + GLWrap_.prototype.loadTexture = function (img, tiling, linearsampling, pixelformat, tiletype, nomip) + { + tiling = !!tiling; + linearsampling = !!linearsampling; + var tex_key = img.src + "," + tiling + "," + linearsampling + (tiling ? ("," + tiletype) : ""); + var webGL_texture = null; + if (typeof img.src !== "undefined" && textures_by_src.hasOwnProperty(tex_key)) + { + webGL_texture = textures_by_src[tex_key]; + webGL_texture.c2refcount++; + return webGL_texture; + } + this.endBatch(); +; + var gl = this.gl; + var isPOT = (cr.isPOT(img.width) && cr.isPOT(img.height)); + webGL_texture = gl.createTexture(); + gl.bindTexture(gl.TEXTURE_2D, webGL_texture); + gl.pixelStorei(gl["UNPACK_PREMULTIPLY_ALPHA_WEBGL"], true); + var internalformat = gl.RGBA; + var format = gl.RGBA; + var type = gl.UNSIGNED_BYTE; + if (pixelformat && !this.isIE) + { + switch (pixelformat) { + case BF_RGB8: + internalformat = gl.RGB; + format = gl.RGB; + break; + case BF_RGBA4: + type = gl.UNSIGNED_SHORT_4_4_4_4; + break; + case BF_RGB5_A1: + type = gl.UNSIGNED_SHORT_5_5_5_1; + break; + case BF_RGB565: + internalformat = gl.RGB; + format = gl.RGB; + type = gl.UNSIGNED_SHORT_5_6_5; + break; + } + } + if (this.version === 1 && !isPOT && tiling) + { + var canvas = document.createElement("canvas"); + canvas.width = cr.nextHighestPowerOfTwo(img.width); + canvas.height = cr.nextHighestPowerOfTwo(img.height); + var ctx = canvas.getContext("2d"); + if (typeof ctx["imageSmoothingEnabled"] !== "undefined") + { + ctx["imageSmoothingEnabled"] = linearsampling; + } + else + { + ctx["webkitImageSmoothingEnabled"] = linearsampling; + ctx["mozImageSmoothingEnabled"] = linearsampling; + ctx["msImageSmoothingEnabled"] = linearsampling; + } + ctx.drawImage(img, + 0, 0, img.width, img.height, + 0, 0, canvas.width, canvas.height); + gl.texImage2D(gl.TEXTURE_2D, 0, internalformat, format, type, canvas); + } + else + gl.texImage2D(gl.TEXTURE_2D, 0, internalformat, format, type, img); + if (tiling) + { + if (tiletype === "repeat-x") + { + gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_S, gl.REPEAT); + gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_T, gl.CLAMP_TO_EDGE); + } + else if (tiletype === "repeat-y") + { + gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_S, gl.CLAMP_TO_EDGE); + gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_T, gl.REPEAT); + } + else + { + gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_S, gl.REPEAT); + gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_T, gl.REPEAT); + } + } + else + { + gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_S, gl.CLAMP_TO_EDGE); + gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_T, gl.CLAMP_TO_EDGE); + } + if (linearsampling) + { + gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MAG_FILTER, gl.LINEAR); + if ((isPOT || this.version >= 2) && this.enable_mipmaps && !nomip) + { + gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MIN_FILTER, gl.LINEAR_MIPMAP_LINEAR); + gl.generateMipmap(gl.TEXTURE_2D); + } + else + gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MIN_FILTER, gl.LINEAR); + } + else + { + gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MAG_FILTER, gl.NEAREST); + gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MIN_FILTER, gl.NEAREST); + } + gl.bindTexture(gl.TEXTURE_2D, null); + this.lastTexture0 = null; + webGL_texture.c2width = img.width; + webGL_texture.c2height = img.height; + webGL_texture.c2refcount = 1; + webGL_texture.c2texkey = tex_key; + all_textures.push(webGL_texture); + textures_by_src[tex_key] = webGL_texture; + return webGL_texture; + }; + GLWrap_.prototype.createEmptyTexture = function (w, h, linearsampling, _16bit, tiling) + { + this.endBatch(); + var gl = this.gl; + if (this.isIE) + _16bit = false; + var webGL_texture = gl.createTexture(); + gl.bindTexture(gl.TEXTURE_2D, webGL_texture); + gl.texImage2D(gl.TEXTURE_2D, 0, gl.RGBA, w, h, 0, gl.RGBA, _16bit ? gl.UNSIGNED_SHORT_4_4_4_4 : gl.UNSIGNED_BYTE, null); + if (tiling) + { + gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_S, gl.REPEAT); + gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_T, gl.REPEAT); + } + else + { + gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_S, gl.CLAMP_TO_EDGE); + gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_T, gl.CLAMP_TO_EDGE); + } + gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MAG_FILTER, linearsampling ? gl.LINEAR : gl.NEAREST); + gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MIN_FILTER, linearsampling ? gl.LINEAR : gl.NEAREST); + gl.bindTexture(gl.TEXTURE_2D, null); + this.lastTexture0 = null; + webGL_texture.c2width = w; + webGL_texture.c2height = h; + all_textures.push(webGL_texture); + return webGL_texture; + }; + GLWrap_.prototype.videoToTexture = function (video_, texture_, _16bit) + { + this.endBatch(); + var gl = this.gl; + if (this.isIE) + _16bit = false; + gl.bindTexture(gl.TEXTURE_2D, texture_); + gl.pixelStorei(gl["UNPACK_PREMULTIPLY_ALPHA_WEBGL"], true); + try { + gl.texImage2D(gl.TEXTURE_2D, 0, gl.RGBA, gl.RGBA, _16bit ? gl.UNSIGNED_SHORT_4_4_4_4 : gl.UNSIGNED_BYTE, video_); + } + catch (e) + { + if (console && console.error) + console.error("Error updating WebGL texture: ", e); + } + gl.bindTexture(gl.TEXTURE_2D, null); + this.lastTexture0 = null; + }; + GLWrap_.prototype.deleteTexture = function (tex) + { + if (!tex) + return; + if (typeof tex.c2refcount !== "undefined" && tex.c2refcount > 1) + { + tex.c2refcount--; + return; + } + this.endBatch(); + if (tex === this.lastTexture0) + { + this.gl.bindTexture(this.gl.TEXTURE_2D, null); + this.lastTexture0 = null; + } + if (tex === this.lastTexture1) + { + this.gl.activeTexture(this.gl.TEXTURE1); + this.gl.bindTexture(this.gl.TEXTURE_2D, null); + this.gl.activeTexture(this.gl.TEXTURE0); + this.lastTexture1 = null; + } + cr.arrayFindRemove(all_textures, tex); + if (typeof tex.c2texkey !== "undefined") + delete textures_by_src[tex.c2texkey]; + this.gl.deleteTexture(tex); + }; + GLWrap_.prototype.estimateVRAM = function () + { + var total = this.width * this.height * 4 * 2; + var i, len, t; + for (i = 0, len = all_textures.length; i < len; i++) + { + t = all_textures[i]; + total += (t.c2width * t.c2height * 4); + } + return total; + }; + GLWrap_.prototype.textureCount = function () + { + return all_textures.length; + }; + GLWrap_.prototype.setRenderingToTexture = function (tex) + { + if (tex === this.renderToTex) + return; +; + var b = this.pushBatch(); + b.type = BATCH_RENDERTOTEXTURE; + b.texParam = tex; + this.renderToTex = tex; + this.hasQuadBatchTop = false; + this.hasPointBatchTop = false; + }; + cr.GLWrap = GLWrap_; +}()); +; +(function() +{ + var raf = window["requestAnimationFrame"] || + window["mozRequestAnimationFrame"] || + window["webkitRequestAnimationFrame"] || + window["msRequestAnimationFrame"] || + window["oRequestAnimationFrame"]; + function Runtime(canvas) + { + if (!canvas || (!canvas.getContext && !canvas["dc"])) + return; + if (canvas["c2runtime"]) + return; + else + canvas["c2runtime"] = this; + var self = this; + this.isCrosswalk = /crosswalk/i.test(navigator.userAgent) || /xwalk/i.test(navigator.userAgent) || !!(typeof window["c2isCrosswalk"] !== "undefined" && window["c2isCrosswalk"]); + this.isCordova = this.isCrosswalk || (typeof window["device"] !== "undefined" && (typeof window["device"]["cordova"] !== "undefined" || typeof window["device"]["phonegap"] !== "undefined")) || (typeof window["c2iscordova"] !== "undefined" && window["c2iscordova"]); + this.isPhoneGap = this.isCordova; + this.isDirectCanvas = !!canvas["dc"]; + this.isAppMobi = (typeof window["AppMobi"] !== "undefined" || this.isDirectCanvas); + this.isCocoonJs = !!window["c2cocoonjs"]; + this.isEjecta = !!window["c2ejecta"]; + if (this.isCocoonJs) + { + CocoonJS["App"]["onSuspended"].addEventListener(function() { + self["setSuspended"](true); + }); + CocoonJS["App"]["onActivated"].addEventListener(function () { + self["setSuspended"](false); + }); + } + if (this.isEjecta) + { + document.addEventListener("pagehide", function() { + self["setSuspended"](true); + }); + document.addEventListener("pageshow", function() { + self["setSuspended"](false); + }); + document.addEventListener("resize", function () { + self["setSize"](window.innerWidth, window.innerHeight); + }); + } + this.isDomFree = (this.isDirectCanvas || this.isCocoonJs || this.isEjecta); + this.isMicrosoftEdge = /edge\//i.test(navigator.userAgent); + this.isIE = (/msie/i.test(navigator.userAgent) || /trident/i.test(navigator.userAgent) || /iemobile/i.test(navigator.userAgent)) && !this.isMicrosoftEdge; + this.isTizen = /tizen/i.test(navigator.userAgent); + this.isAndroid = /android/i.test(navigator.userAgent) && !this.isTizen && !this.isIE && !this.isMicrosoftEdge; // IE mobile and Tizen masquerade as Android + this.isiPhone = (/iphone/i.test(navigator.userAgent) || /ipod/i.test(navigator.userAgent)) && !this.isIE && !this.isMicrosoftEdge; // treat ipod as an iphone; IE mobile masquerades as iPhone + this.isiPad = /ipad/i.test(navigator.userAgent); + this.isiOS = this.isiPhone || this.isiPad || this.isEjecta; + this.isiPhoneiOS6 = (this.isiPhone && /os\s6/i.test(navigator.userAgent)); + this.isChrome = (/chrome/i.test(navigator.userAgent) || /chromium/i.test(navigator.userAgent)) && !this.isIE && !this.isMicrosoftEdge; // note true on Chromium-based webview on Android 4.4+; IE 'Edge' mode also pretends to be Chrome + this.isAmazonWebApp = /amazonwebappplatform/i.test(navigator.userAgent); + this.isFirefox = /firefox/i.test(navigator.userAgent); + this.isSafari = /safari/i.test(navigator.userAgent) && !this.isChrome && !this.isIE && !this.isMicrosoftEdge; // Chrome and IE Mobile masquerade as Safari + this.isWindows = /windows/i.test(navigator.userAgent); + this.isNWjs = (typeof window["c2nodewebkit"] !== "undefined" || typeof window["c2nwjs"] !== "undefined" || /nodewebkit/i.test(navigator.userAgent) || /nwjs/i.test(navigator.userAgent)); + this.isNodeWebkit = this.isNWjs; // old name for backwards compat + this.isArcade = (typeof window["is_scirra_arcade"] !== "undefined"); + this.isWindows8App = !!(typeof window["c2isWindows8"] !== "undefined" && window["c2isWindows8"]); + this.isWindows8Capable = !!(typeof window["c2isWindows8Capable"] !== "undefined" && window["c2isWindows8Capable"]); + this.isWindowsPhone8 = !!(typeof window["c2isWindowsPhone8"] !== "undefined" && window["c2isWindowsPhone8"]); + this.isWindowsPhone81 = !!(typeof window["c2isWindowsPhone81"] !== "undefined" && window["c2isWindowsPhone81"]); + this.isWindows10 = !!window["cr_windows10"]; + this.isWinJS = (this.isWindows8App || this.isWindows8Capable || this.isWindowsPhone81 || this.isWindows10); // note not WP8.0 + this.isBlackberry10 = !!(typeof window["c2isBlackberry10"] !== "undefined" && window["c2isBlackberry10"]); + this.isAndroidStockBrowser = (this.isAndroid && !this.isChrome && !this.isCrosswalk && !this.isFirefox && !this.isAmazonWebApp && !this.isDomFree); + this.devicePixelRatio = 1; + this.isMobile = (this.isCordova || this.isCrosswalk || this.isAppMobi || this.isCocoonJs || this.isAndroid || this.isiOS || this.isWindowsPhone8 || this.isWindowsPhone81 || this.isBlackberry10 || this.isTizen || this.isEjecta); + if (!this.isMobile) + { + this.isMobile = /(blackberry|bb10|playbook|palm|symbian|nokia|windows\s+ce|phone|mobile|tablet|kindle|silk)/i.test(navigator.userAgent); + } + this.isWKWebView = !!(this.isiOS && this.isCordova && window["webkit"]); + if (typeof cr_is_preview !== "undefined" && !this.isNWjs && (window.location.search === "?nw" || /nodewebkit/i.test(navigator.userAgent) || /nwjs/i.test(navigator.userAgent))) + { + this.isNWjs = true; + } + this.isDebug = (typeof cr_is_preview !== "undefined" && window.location.search.indexOf("debug") > -1); + this.canvas = canvas; + this.canvasdiv = document.getElementById("c2canvasdiv"); + this.gl = null; + this.glwrap = null; + this.glUnmaskedRenderer = "(unavailable)"; + this.enableFrontToBack = false; + this.earlyz_index = 0; + this.ctx = null; + this.firstInFullscreen = false; + this.oldWidth = 0; // for restoring non-fullscreen canvas after fullscreen + this.oldHeight = 0; + this.canvas.oncontextmenu = function (e) { if (e.preventDefault) e.preventDefault(); return false; }; + this.canvas.onselectstart = function (e) { if (e.preventDefault) e.preventDefault(); return false; }; + this.canvas.ontouchstart = function (e) { if(e.preventDefault) e.preventDefault(); return false; }; + if (this.isDirectCanvas) + window["c2runtime"] = this; + if (this.isNWjs) + { + window["ondragover"] = function(e) { e.preventDefault(); return false; }; + window["ondrop"] = function(e) { e.preventDefault(); return false; }; + if (window["nwgui"] && window["nwgui"]["App"]["clearCache"]) + window["nwgui"]["App"]["clearCache"](); + } + if (this.isAndroidStockBrowser && typeof jQuery !== "undefined") + { + jQuery("canvas").parents("*").css("overflow", "visible"); + } + this.width = canvas.width; + this.height = canvas.height; + this.draw_width = this.width; + this.draw_height = this.height; + this.cssWidth = this.width; + this.cssHeight = this.height; + this.lastWindowWidth = window.innerWidth; + this.lastWindowHeight = window.innerHeight; + this.forceCanvasAlpha = false; // note: now unused, left for backwards compat since plugins could modify it + this.redraw = true; + this.isSuspended = false; + if (!Date.now) { + Date.now = function now() { + return +new Date(); + }; + } + this.plugins = []; + this.types = {}; + this.types_by_index = []; + this.behaviors = []; + this.layouts = {}; + this.layouts_by_index = []; + this.eventsheets = {}; + this.eventsheets_by_index = []; + this.wait_for_textures = []; // for blocking until textures loaded + this.triggers_to_postinit = []; + this.all_global_vars = []; + this.all_local_vars = []; + this.solidBehavior = null; + this.jumpthruBehavior = null; + this.shadowcasterBehavior = null; + this.deathRow = {}; + this.hasPendingInstances = false; // true if anything exists in create row or death row + this.isInClearDeathRow = false; + this.isInOnDestroy = 0; // needs to support recursion so increments and decrements and is true if > 0 + this.isRunningEvents = false; + this.isEndingLayout = false; + this.createRow = []; + this.isLoadingState = false; + this.saveToSlot = ""; + this.loadFromSlot = ""; + this.loadFromJson = null; // set to string when there is something to try to load + this.lastSaveJson = ""; + this.signalledContinuousPreview = false; + this.suspendDrawing = false; // for hiding display until continuous preview loads + this.fireOnCreateAfterLoad = []; // for delaying "On create" triggers until loading complete + this.dt = 0; + this.dt1 = 0; + this.minimumFramerate = 30; + this.logictime = 0; // used to calculate CPUUtilisation + this.cpuutilisation = 0; + this.timescale = 1.0; + this.kahanTime = new cr.KahanAdder(); + this.wallTime = new cr.KahanAdder(); + this.last_tick_time = 0; + this.fps = 0; + this.last_fps_time = 0; + this.tickcount = 0; + this.tickcount_nosave = 0; // same as tickcount but never saved/loaded + this.execcount = 0; + this.framecount = 0; // for fps + this.objectcount = 0; + this.changelayout = null; + this.destroycallbacks = []; + this.event_stack = []; + this.event_stack_index = -1; + this.localvar_stack = [[]]; + this.localvar_stack_index = 0; + this.trigger_depth = 0; // recursion depth for triggers + this.pushEventStack(null); + this.loop_stack = []; + this.loop_stack_index = -1; + this.next_uid = 0; + this.next_puid = 0; // permanent unique ids + this.layout_first_tick = true; + this.family_count = 0; + this.suspend_events = []; + this.raf_id = -1; + this.timeout_id = -1; + this.isloading = true; + this.loadingprogress = 0; + this.isNodeFullscreen = false; + this.stackLocalCount = 0; // number of stack-based local vars for recursion + this.audioInstance = null; + this.had_a_click = false; + this.isInUserInputEvent = false; + this.objects_to_pretick = new cr.ObjectSet(); + this.objects_to_tick = new cr.ObjectSet(); + this.objects_to_tick2 = new cr.ObjectSet(); + this.registered_collisions = []; + this.temp_poly = new cr.CollisionPoly([]); + this.temp_poly2 = new cr.CollisionPoly([]); + this.allGroups = []; // array of all event groups + this.groups_by_name = {}; + this.cndsBySid = {}; + this.actsBySid = {}; + this.varsBySid = {}; + this.blocksBySid = {}; + this.running_layout = null; // currently running layout + this.layer_canvas = null; // for layers "render-to-texture" + this.layer_ctx = null; + this.layer_tex = null; + this.layout_tex = null; + this.layout_canvas = null; + this.layout_ctx = null; + this.is_WebGL_context_lost = false; + this.uses_background_blending = false; // if any shader uses background blending, so entire layout renders to texture + this.fx_tex = [null, null]; + this.fullscreen_scaling = 0; + this.files_subfolder = ""; // path with project files + this.objectsByUid = {}; // maps every in-use UID (as a string) to its instance + this.loaderlogos = null; + this.snapshotCanvas = null; + this.snapshotData = ""; + this.objectRefTable = []; + this.requestProjectData(); + }; + Runtime.prototype.requestProjectData = function () + { + var self = this; + if (this.isWKWebView) + { + this.fetchLocalFileViaCordovaAsText("data.js", function (str) + { + self.loadProject(JSON.parse(str)); + }, function (err) + { + alert("Error fetching data.js"); + }); + return; + } + var xhr; + if (this.isWindowsPhone8) + xhr = new ActiveXObject("Microsoft.XMLHTTP"); + else + xhr = new XMLHttpRequest(); + var datajs_filename = "data.js"; + if (this.isWindows8App || this.isWindowsPhone8 || this.isWindowsPhone81 || this.isWindows10) + datajs_filename = "data.json"; + xhr.open("GET", datajs_filename, true); + var supportsJsonResponse = false; + if (!this.isDomFree && ("response" in xhr) && ("responseType" in xhr)) + { + try { + xhr["responseType"] = "json"; + supportsJsonResponse = (xhr["responseType"] === "json"); + } + catch (e) { + supportsJsonResponse = false; + } + } + if (!supportsJsonResponse && ("responseType" in xhr)) + { + try { + xhr["responseType"] = "text"; + } + catch (e) {} + } + if ("overrideMimeType" in xhr) + { + try { + xhr["overrideMimeType"]("application/json; charset=utf-8"); + } + catch (e) {} + } + if (this.isWindowsPhone8) + { + xhr.onreadystatechange = function () + { + if (xhr.readyState !== 4) + return; + self.loadProject(JSON.parse(xhr["responseText"])); + }; + } + else + { + xhr.onload = function () + { + if (supportsJsonResponse) + { + self.loadProject(xhr["response"]); // already parsed by browser + } + else + { + if (self.isEjecta) + { + var str = xhr["responseText"]; + str = str.substr(str.indexOf("{")); // trim any BOM + self.loadProject(JSON.parse(str)); + } + else + { + self.loadProject(JSON.parse(xhr["responseText"])); // forced to sync parse JSON + } + } + }; + xhr.onerror = function (e) + { + cr.logerror("Error requesting " + datajs_filename + ":"); + cr.logerror(e); + }; + } + xhr.send(); + }; + Runtime.prototype.initRendererAndLoader = function () + { + var self = this; + var i, len, j, lenj, k, lenk, t, s, l, y; + this.isRetina = ((!this.isDomFree || this.isEjecta || this.isCordova) && this.useHighDpi && !this.isAndroidStockBrowser); + if (this.fullscreen_mode === 0 && this.isiOS) + this.isRetina = false; + this.devicePixelRatio = (this.isRetina ? (window["devicePixelRatio"] || window["webkitDevicePixelRatio"] || window["mozDevicePixelRatio"] || window["msDevicePixelRatio"] || 1) : 1); + if (typeof window["StatusBar"] === "object") + window["StatusBar"]["hide"](); + this.ClearDeathRow(); + var attribs; + if (this.fullscreen_mode > 0) + this["setSize"](window.innerWidth, window.innerHeight, true); + this.canvas.addEventListener("webglcontextlost", function (ev) { + ev.preventDefault(); + self.onContextLost(); + cr.logexport("[Construct 2] WebGL context lost"); + window["cr_setSuspended"](true); // stop rendering + }, false); + this.canvas.addEventListener("webglcontextrestored", function (ev) { + self.glwrap.initState(); + self.glwrap.setSize(self.glwrap.width, self.glwrap.height, true); + self.layer_tex = null; + self.layout_tex = null; + self.fx_tex[0] = null; + self.fx_tex[1] = null; + self.onContextRestored(); + self.redraw = true; + cr.logexport("[Construct 2] WebGL context restored"); + window["cr_setSuspended"](false); // resume rendering + }, false); + try { + if (this.enableWebGL && (this.isCocoonJs || this.isEjecta || !this.isDomFree)) + { + attribs = { + "alpha": true, + "depth": false, + "antialias": false, + "powerPreference": "high-performance", + "failIfMajorPerformanceCaveat": true + }; + if (!this.isAndroid) + this.gl = this.canvas.getContext("webgl2", attribs); + if (!this.gl) + { + this.gl = (this.canvas.getContext("webgl", attribs) || + this.canvas.getContext("experimental-webgl", attribs)); + } + } + } + catch (e) { + } + if (this.gl) + { + var isWebGL2 = (this.gl.getParameter(this.gl.VERSION).indexOf("WebGL 2") === 0); + var debug_ext = this.gl.getExtension("WEBGL_debug_renderer_info"); + if (debug_ext) + { + var unmasked_vendor = this.gl.getParameter(debug_ext.UNMASKED_VENDOR_WEBGL); + var unmasked_renderer = this.gl.getParameter(debug_ext.UNMASKED_RENDERER_WEBGL); + this.glUnmaskedRenderer = unmasked_renderer + " [" + unmasked_vendor + "]"; + } + if (this.enableFrontToBack) + this.glUnmaskedRenderer += " [front-to-back enabled]"; +; + if (!this.isDomFree) + { + this.overlay_canvas = document.createElement("canvas"); + jQuery(this.overlay_canvas).appendTo(this.canvas.parentNode); + this.overlay_canvas.oncontextmenu = function (e) { return false; }; + this.overlay_canvas.onselectstart = function (e) { return false; }; + this.overlay_canvas.width = Math.round(this.cssWidth * this.devicePixelRatio); + this.overlay_canvas.height = Math.round(this.cssHeight * this.devicePixelRatio); + jQuery(this.overlay_canvas).css({"width": this.cssWidth + "px", + "height": this.cssHeight + "px"}); + this.positionOverlayCanvas(); + this.overlay_ctx = this.overlay_canvas.getContext("2d"); + } + this.glwrap = new cr.GLWrap(this.gl, this.isMobile, this.enableFrontToBack); + this.glwrap.setSize(this.canvas.width, this.canvas.height); + this.glwrap.enable_mipmaps = (this.downscalingQuality !== 0); + this.ctx = null; + for (i = 0, len = this.types_by_index.length; i < len; i++) + { + t = this.types_by_index[i]; + for (j = 0, lenj = t.effect_types.length; j < lenj; j++) + { + s = t.effect_types[j]; + s.shaderindex = this.glwrap.getShaderIndex(s.id); + s.preservesOpaqueness = this.glwrap.programPreservesOpaqueness(s.shaderindex); + this.uses_background_blending = this.uses_background_blending || this.glwrap.programUsesDest(s.shaderindex); + } + } + for (i = 0, len = this.layouts_by_index.length; i < len; i++) + { + l = this.layouts_by_index[i]; + for (j = 0, lenj = l.effect_types.length; j < lenj; j++) + { + s = l.effect_types[j]; + s.shaderindex = this.glwrap.getShaderIndex(s.id); + s.preservesOpaqueness = this.glwrap.programPreservesOpaqueness(s.shaderindex); + } + l.updateActiveEffects(); // update preserves opaqueness flag + for (j = 0, lenj = l.layers.length; j < lenj; j++) + { + y = l.layers[j]; + for (k = 0, lenk = y.effect_types.length; k < lenk; k++) + { + s = y.effect_types[k]; + s.shaderindex = this.glwrap.getShaderIndex(s.id); + s.preservesOpaqueness = this.glwrap.programPreservesOpaqueness(s.shaderindex); + this.uses_background_blending = this.uses_background_blending || this.glwrap.programUsesDest(s.shaderindex); + } + y.updateActiveEffects(); // update preserves opaqueness flag + } + } + } + else + { + if (this.fullscreen_mode > 0 && this.isDirectCanvas) + { +; + this.canvas = null; + document.oncontextmenu = function (e) { return false; }; + document.onselectstart = function (e) { return false; }; + this.ctx = AppMobi["canvas"]["getContext"]("2d"); + try { + this.ctx["samplingMode"] = this.linearSampling ? "smooth" : "sharp"; + this.ctx["globalScale"] = 1; + this.ctx["HTML5CompatibilityMode"] = true; + this.ctx["imageSmoothingEnabled"] = this.linearSampling; + } catch(e){} + if (this.width !== 0 && this.height !== 0) + { + this.ctx.width = this.width; + this.ctx.height = this.height; + } + } + if (!this.ctx) + { +; + if (this.isCocoonJs) + { + attribs = { + "antialias": !!this.linearSampling, + "alpha": true + }; + this.ctx = this.canvas.getContext("2d", attribs); + } + else + { + attribs = { + "alpha": true + }; + this.ctx = this.canvas.getContext("2d", attribs); + } + this.setCtxImageSmoothingEnabled(this.ctx, this.linearSampling); + } + this.overlay_canvas = null; + this.overlay_ctx = null; + } + this.tickFunc = function (timestamp) { self.tick(false, timestamp); }; + if (window != window.top && !this.isDomFree && !this.isWinJS && !this.isWindowsPhone8) + { + document.addEventListener("mousedown", function () { + window.focus(); + }, true); + document.addEventListener("touchstart", function () { + window.focus(); + }, true); + } + if (typeof cr_is_preview !== "undefined") + { + if (this.isCocoonJs) + console.log("[Construct 2] In preview-over-wifi via CocoonJS mode"); + if (window.location.search.indexOf("continuous") > -1) + { + cr.logexport("Reloading for continuous preview"); + this.loadFromSlot = "__c2_continuouspreview"; + this.suspendDrawing = true; + } + if (this.pauseOnBlur && !this.isMobile) + { + jQuery(window).focus(function () + { + self["setSuspended"](false); + }); + jQuery(window).blur(function () + { + var parent = window.parent; + if (!parent || !parent.document.hasFocus()) + self["setSuspended"](true); + }); + } + } + window.addEventListener("blur", function () { + self.onWindowBlur(); + }); + if (!this.isDomFree) + { + var unfocusFormControlFunc = function (e) { + if (cr.isCanvasInputEvent(e) && document["activeElement"] && document["activeElement"] !== document.getElementsByTagName("body")[0] && document["activeElement"].blur) + { + try { + document["activeElement"].blur(); + } + catch (e) {} + } + } + if (typeof PointerEvent !== "undefined") + { + document.addEventListener("pointerdown", unfocusFormControlFunc); + } + else if (window.navigator["msPointerEnabled"]) + { + document.addEventListener("MSPointerDown", unfocusFormControlFunc); + } + else + { + document.addEventListener("touchstart", unfocusFormControlFunc); + } + document.addEventListener("mousedown", unfocusFormControlFunc); + } + if (this.fullscreen_mode === 0 && this.isRetina && this.devicePixelRatio > 1) + { + this["setSize"](this.original_width, this.original_height, true); + } + this.tryLockOrientation(); + this.getready(); // determine things to preload + this.go(); // run loading screen + this.extra = {}; + cr.seal(this); + }; + var webkitRepaintFlag = false; + Runtime.prototype["setSize"] = function (w, h, force) + { + var offx = 0, offy = 0; + var neww = 0, newh = 0, intscale = 0; + if (this.lastWindowWidth === w && this.lastWindowHeight === h && !force) + return; + this.lastWindowWidth = w; + this.lastWindowHeight = h; + var mode = this.fullscreen_mode; + var orig_aspect, cur_aspect; + var isfullscreen = (document["mozFullScreen"] || document["webkitIsFullScreen"] || !!document["msFullscreenElement"] || document["fullScreen"] || this.isNodeFullscreen) && !this.isCordova; + if (!isfullscreen && this.fullscreen_mode === 0 && !force) + return; // ignore size events when not fullscreen and not using a fullscreen-in-browser mode + if (isfullscreen) + mode = this.fullscreen_scaling; + var dpr = this.devicePixelRatio; + if (mode >= 4) + { + if (mode === 5 && dpr !== 1) // integer scaling + { + w += 1; + h += 1; + } + orig_aspect = this.original_width / this.original_height; + cur_aspect = w / h; + if (cur_aspect > orig_aspect) + { + neww = h * orig_aspect; + if (mode === 5) // integer scaling + { + intscale = (neww * dpr) / this.original_width; + if (intscale > 1) + intscale = Math.floor(intscale); + else if (intscale < 1) + intscale = 1 / Math.ceil(1 / intscale); + neww = this.original_width * intscale / dpr; + newh = this.original_height * intscale / dpr; + offx = (w - neww) / 2; + offy = (h - newh) / 2; + w = neww; + h = newh; + } + else + { + offx = (w - neww) / 2; + w = neww; + } + } + else + { + newh = w / orig_aspect; + if (mode === 5) // integer scaling + { + intscale = (newh * dpr) / this.original_height; + if (intscale > 1) + intscale = Math.floor(intscale); + else if (intscale < 1) + intscale = 1 / Math.ceil(1 / intscale); + neww = this.original_width * intscale / dpr; + newh = this.original_height * intscale / dpr; + offx = (w - neww) / 2; + offy = (h - newh) / 2; + w = neww; + h = newh; + } + else + { + offy = (h - newh) / 2; + h = newh; + } + } + } + else if (isfullscreen && mode === 0) + { + offx = Math.floor((w - this.original_width) / 2); + offy = Math.floor((h - this.original_height) / 2); + w = this.original_width; + h = this.original_height; + } + if (mode < 2) + this.aspect_scale = dpr; + this.cssWidth = Math.round(w); + this.cssHeight = Math.round(h); + this.width = Math.round(w * dpr); + this.height = Math.round(h * dpr); + this.redraw = true; + if (this.wantFullscreenScalingQuality) + { + this.draw_width = this.width; + this.draw_height = this.height; + this.fullscreenScalingQuality = true; + } + else + { + if ((this.width < this.original_width && this.height < this.original_height) || mode === 1) + { + this.draw_width = this.width; + this.draw_height = this.height; + this.fullscreenScalingQuality = true; + } + else + { + this.draw_width = this.original_width; + this.draw_height = this.original_height; + this.fullscreenScalingQuality = false; + /*var orig_aspect = this.original_width / this.original_height; + var cur_aspect = this.width / this.height; + if ((this.fullscreen_mode !== 2 && cur_aspect > orig_aspect) || (this.fullscreen_mode === 2 && cur_aspect < orig_aspect)) + this.aspect_scale = this.height / this.original_height; + else + this.aspect_scale = this.width / this.original_width;*/ + if (mode === 2) // scale inner + { + orig_aspect = this.original_width / this.original_height; + cur_aspect = this.lastWindowWidth / this.lastWindowHeight; + if (cur_aspect < orig_aspect) + this.draw_width = this.draw_height * cur_aspect; + else if (cur_aspect > orig_aspect) + this.draw_height = this.draw_width / cur_aspect; + } + else if (mode === 3) + { + orig_aspect = this.original_width / this.original_height; + cur_aspect = this.lastWindowWidth / this.lastWindowHeight; + if (cur_aspect > orig_aspect) + this.draw_width = this.draw_height * cur_aspect; + else if (cur_aspect < orig_aspect) + this.draw_height = this.draw_width / cur_aspect; + } + } + } + if (this.canvasdiv && !this.isDomFree) + { + jQuery(this.canvasdiv).css({"width": Math.round(w) + "px", + "height": Math.round(h) + "px", + "margin-left": Math.floor(offx) + "px", + "margin-top": Math.floor(offy) + "px"}); + if (typeof cr_is_preview !== "undefined") + { + jQuery("#borderwrap").css({"width": Math.round(w) + "px", + "height": Math.round(h) + "px"}); + } + } + if (this.canvas) + { + this.canvas.width = Math.round(w * dpr); + this.canvas.height = Math.round(h * dpr); + if (this.isEjecta) + { + this.canvas.style.left = Math.floor(offx) + "px"; + this.canvas.style.top = Math.floor(offy) + "px"; + this.canvas.style.width = Math.round(w) + "px"; + this.canvas.style.height = Math.round(h) + "px"; + } + else if (this.isRetina && !this.isDomFree) + { + this.canvas.style.width = Math.round(w) + "px"; + this.canvas.style.height = Math.round(h) + "px"; + } + } + if (this.overlay_canvas) + { + this.overlay_canvas.width = Math.round(w * dpr); + this.overlay_canvas.height = Math.round(h * dpr); + this.overlay_canvas.style.width = this.cssWidth + "px"; + this.overlay_canvas.style.height = this.cssHeight + "px"; + } + if (this.glwrap) + { + this.glwrap.setSize(Math.round(w * dpr), Math.round(h * dpr)); + } + if (this.isDirectCanvas && this.ctx) + { + this.ctx.width = Math.round(w); + this.ctx.height = Math.round(h); + } + if (this.ctx) + { + this.setCtxImageSmoothingEnabled(this.ctx, this.linearSampling); + } + this.tryLockOrientation(); + if (this.isiPhone && !this.isCordova) + { + window.scrollTo(0, 0); + } + }; + Runtime.prototype.tryLockOrientation = function () + { + if (!this.autoLockOrientation || this.orientations === 0) + return; + var orientation = "portrait"; + if (this.orientations === 2) + orientation = "landscape"; + try { + if (screen["orientation"] && screen["orientation"]["lock"]) + screen["orientation"]["lock"](orientation).catch(function(){}); + else if (screen["lockOrientation"]) + screen["lockOrientation"](orientation); + else if (screen["webkitLockOrientation"]) + screen["webkitLockOrientation"](orientation); + else if (screen["mozLockOrientation"]) + screen["mozLockOrientation"](orientation); + else if (screen["msLockOrientation"]) + screen["msLockOrientation"](orientation); + } + catch (e) + { + if (console && console.warn) + console.warn("Failed to lock orientation: ", e); + } + }; + Runtime.prototype.onContextLost = function () + { + this.glwrap.contextLost(); + this.is_WebGL_context_lost = true; + var i, len, t; + for (i = 0, len = this.types_by_index.length; i < len; i++) + { + t = this.types_by_index[i]; + if (t.onLostWebGLContext) + t.onLostWebGLContext(); + } + }; + Runtime.prototype.onContextRestored = function () + { + this.is_WebGL_context_lost = false; + var i, len, t; + for (i = 0, len = this.types_by_index.length; i < len; i++) + { + t = this.types_by_index[i]; + if (t.onRestoreWebGLContext) + t.onRestoreWebGLContext(); + } + }; + Runtime.prototype.positionOverlayCanvas = function() + { + if (this.isDomFree) + return; + var isfullscreen = (document["mozFullScreen"] || document["webkitIsFullScreen"] || document["fullScreen"] || !!document["msFullscreenElement"] || this.isNodeFullscreen) && !this.isCordova; + var overlay_position = isfullscreen ? jQuery(this.canvas).offset() : jQuery(this.canvas).position(); + overlay_position.position = "absolute"; + jQuery(this.overlay_canvas).css(overlay_position); + }; + var caf = window["cancelAnimationFrame"] || + window["mozCancelAnimationFrame"] || + window["webkitCancelAnimationFrame"] || + window["msCancelAnimationFrame"] || + window["oCancelAnimationFrame"]; + Runtime.prototype["setSuspended"] = function (s) + { + var i, len; + var self = this; + if (s && !this.isSuspended) + { + cr.logexport("[Construct 2] Suspending"); + this.isSuspended = true; // next tick will be last + if (this.raf_id !== -1 && caf) // note: CocoonJS does not implement cancelAnimationFrame + caf(this.raf_id); + if (this.timeout_id !== -1) + clearTimeout(this.timeout_id); + for (i = 0, len = this.suspend_events.length; i < len; i++) + this.suspend_events[i](true); + } + else if (!s && this.isSuspended) + { + cr.logexport("[Construct 2] Resuming"); + this.isSuspended = false; + this.last_tick_time = cr.performance_now(); // ensure first tick is a zero-dt one + this.last_fps_time = cr.performance_now(); // reset FPS counter + this.framecount = 0; + this.logictime = 0; + for (i = 0, len = this.suspend_events.length; i < len; i++) + this.suspend_events[i](false); + this.tick(false); // kick off runtime again + } + }; + Runtime.prototype.addSuspendCallback = function (f) + { + this.suspend_events.push(f); + }; + Runtime.prototype.GetObjectReference = function (i) + { +; + return this.objectRefTable[i]; + }; + Runtime.prototype.loadProject = function (data_response) + { +; + if (!data_response || !data_response["project"]) + cr.logerror("Project model unavailable"); + var pm = data_response["project"]; + this.name = pm[0]; + this.first_layout = pm[1]; + this.fullscreen_mode = pm[12]; // 0 = off, 1 = crop, 2 = scale inner, 3 = scale outer, 4 = letterbox scale, 5 = integer letterbox scale + this.fullscreen_mode_set = pm[12]; + this.original_width = pm[10]; + this.original_height = pm[11]; + this.parallax_x_origin = this.original_width / 2; + this.parallax_y_origin = this.original_height / 2; + if (this.isDomFree && !this.isEjecta && (pm[12] >= 4 || pm[12] === 0)) + { + cr.logexport("[Construct 2] Letterbox scale fullscreen modes are not supported on this platform - falling back to 'Scale outer'"); + this.fullscreen_mode = 3; + this.fullscreen_mode_set = 3; + } + this.uses_loader_layout = pm[18]; + this.loaderstyle = pm[19]; + if (this.loaderstyle === 0) + { + var loaderImage = new Image(); + loaderImage.crossOrigin = "anonymous"; + this.setImageSrc(loaderImage, "loading-logo.png"); + this.loaderlogos = { + logo: loaderImage + }; + } + else if (this.loaderstyle === 4) // c2 splash + { + var loaderC2logo_1024 = new Image(); + loaderC2logo_1024.src = ""; + var loaderC2logo_512 = new Image(); + loaderC2logo_512.src = ""; + var loaderC2logo_256 = new Image(); + loaderC2logo_256.src = ""; + var loaderC2logo_128 = new Image(); + loaderC2logo_128.src = ""; + var loaderPowered_1024 = new Image(); + loaderPowered_1024.src = ""; + var loaderPowered_512 = new Image(); + loaderPowered_512.src = ""; + var loaderPowered_256 = new Image(); + loaderPowered_256.src = ""; + var loaderPowered_128 = new Image(); + loaderPowered_128.src = ""; + var loaderWebsite_1024 = new Image(); + loaderWebsite_1024.src = ""; + var loaderWebsite_512 = new Image(); + loaderWebsite_512.src = ""; + var loaderWebsite_256 = new Image(); + loaderWebsite_256.src = ""; + var loaderWebsite_128 = new Image(); + loaderWebsite_128.src = ""; + this.loaderlogos = { + logo: [loaderC2logo_1024, loaderC2logo_512, loaderC2logo_256, loaderC2logo_128], + powered: [loaderPowered_1024, loaderPowered_512, loaderPowered_256, loaderPowered_128], + website: [loaderWebsite_1024, loaderWebsite_512, loaderWebsite_256, loaderWebsite_128] + }; + } + this.next_uid = pm[21]; + this.objectRefTable = cr.getObjectRefTable(); + this.system = new cr.system_object(this); + var i, len, j, lenj, k, lenk, idstr, m, b, t, f, p; + var plugin, plugin_ctor; + for (i = 0, len = pm[2].length; i < len; i++) + { + m = pm[2][i]; + p = this.GetObjectReference(m[0]); +; + cr.add_common_aces(m, p.prototype); + plugin = new p(this); + plugin.singleglobal = m[1]; + plugin.is_world = m[2]; + plugin.is_rotatable = m[5]; + plugin.must_predraw = m[9]; + if (plugin.onCreate) + plugin.onCreate(); // opportunity to override default ACEs + cr.seal(plugin); + this.plugins.push(plugin); + } + this.objectRefTable = cr.getObjectRefTable(); + for (i = 0, len = pm[3].length; i < len; i++) + { + m = pm[3][i]; + plugin_ctor = this.GetObjectReference(m[1]); +; + plugin = null; + for (j = 0, lenj = this.plugins.length; j < lenj; j++) + { + if (this.plugins[j] instanceof plugin_ctor) + { + plugin = this.plugins[j]; + break; + } + } +; +; + var type_inst = new plugin.Type(plugin); +; + type_inst.name = m[0]; + type_inst.is_family = m[2]; + type_inst.instvar_sids = m[3].slice(0); + type_inst.vars_count = m[3].length; + type_inst.behs_count = m[4]; + type_inst.fx_count = m[5]; + type_inst.sid = m[11]; + if (type_inst.is_family) + { + type_inst.members = []; // types in this family + type_inst.family_index = this.family_count++; + type_inst.families = null; + } + else + { + type_inst.members = null; + type_inst.family_index = -1; + type_inst.families = []; // families this type belongs to + } + type_inst.family_var_map = null; + type_inst.family_beh_map = null; + type_inst.family_fx_map = null; + type_inst.is_contained = false; + type_inst.container = null; + if (m[6]) + { + type_inst.texture_file = m[6][0]; + type_inst.texture_filesize = m[6][1]; + type_inst.texture_pixelformat = m[6][2]; + } + else + { + type_inst.texture_file = null; + type_inst.texture_filesize = 0; + type_inst.texture_pixelformat = 0; // rgba8 + } + if (m[7]) + { + type_inst.animations = m[7]; + } + else + { + type_inst.animations = null; + } + type_inst.index = i; // save index in to types array in type + type_inst.instances = []; // all instances of this type + type_inst.deadCache = []; // destroyed instances to recycle next create + type_inst.solstack = [new cr.selection(type_inst)]; // initialise SOL stack with one empty SOL + type_inst.cur_sol = 0; + type_inst.default_instance = null; + type_inst.default_layerindex = 0; + type_inst.stale_iids = true; + type_inst.updateIIDs = cr.type_updateIIDs; + type_inst.getFirstPicked = cr.type_getFirstPicked; + type_inst.getPairedInstance = cr.type_getPairedInstance; + type_inst.getCurrentSol = cr.type_getCurrentSol; + type_inst.pushCleanSol = cr.type_pushCleanSol; + type_inst.pushCopySol = cr.type_pushCopySol; + type_inst.popSol = cr.type_popSol; + type_inst.getBehaviorByName = cr.type_getBehaviorByName; + type_inst.getBehaviorIndexByName = cr.type_getBehaviorIndexByName; + type_inst.getEffectIndexByName = cr.type_getEffectIndexByName; + type_inst.applySolToContainer = cr.type_applySolToContainer; + type_inst.getInstanceByIID = cr.type_getInstanceByIID; + type_inst.collision_grid = new cr.SparseGrid(this.original_width, this.original_height); + type_inst.any_cell_changed = true; + type_inst.any_instance_parallaxed = false; + type_inst.extra = {}; + type_inst.toString = cr.type_toString; + type_inst.behaviors = []; + for (j = 0, lenj = m[8].length; j < lenj; j++) + { + b = m[8][j]; + var behavior_ctor = this.GetObjectReference(b[1]); + var behavior_plugin = null; + for (k = 0, lenk = this.behaviors.length; k < lenk; k++) + { + if (this.behaviors[k] instanceof behavior_ctor) + { + behavior_plugin = this.behaviors[k]; + break; + } + } + if (!behavior_plugin) + { + behavior_plugin = new behavior_ctor(this); + behavior_plugin.my_types = []; // types using this behavior + behavior_plugin.my_instances = new cr.ObjectSet(); // instances of this behavior + if (behavior_plugin.onCreate) + behavior_plugin.onCreate(); + cr.seal(behavior_plugin); + this.behaviors.push(behavior_plugin); + if (cr.behaviors.solid && behavior_plugin instanceof cr.behaviors.solid) + this.solidBehavior = behavior_plugin; + if (cr.behaviors.jumpthru && behavior_plugin instanceof cr.behaviors.jumpthru) + this.jumpthruBehavior = behavior_plugin; + if (cr.behaviors.shadowcaster && behavior_plugin instanceof cr.behaviors.shadowcaster) + this.shadowcasterBehavior = behavior_plugin; + } + if (behavior_plugin.my_types.indexOf(type_inst) === -1) + behavior_plugin.my_types.push(type_inst); + var behavior_type = new behavior_plugin.Type(behavior_plugin, type_inst); + behavior_type.name = b[0]; + behavior_type.sid = b[2]; + behavior_type.onCreate(); + cr.seal(behavior_type); + type_inst.behaviors.push(behavior_type); + } + type_inst.global = m[9]; + type_inst.isOnLoaderLayout = m[10]; + type_inst.effect_types = []; + for (j = 0, lenj = m[12].length; j < lenj; j++) + { + type_inst.effect_types.push({ + id: m[12][j][0], + name: m[12][j][1], + shaderindex: -1, + preservesOpaqueness: false, + active: true, + index: j + }); + } + type_inst.tile_poly_data = m[13]; + if (!this.uses_loader_layout || type_inst.is_family || type_inst.isOnLoaderLayout || !plugin.is_world) + { + type_inst.onCreate(); + cr.seal(type_inst); + } + if (type_inst.name) + this.types[type_inst.name] = type_inst; + this.types_by_index.push(type_inst); + if (plugin.singleglobal) + { + var instance = new plugin.Instance(type_inst); + instance.uid = this.next_uid++; + instance.puid = this.next_puid++; + instance.iid = 0; + instance.get_iid = cr.inst_get_iid; + instance.toString = cr.inst_toString; + instance.properties = m[14]; + instance.onCreate(); + cr.seal(instance); + type_inst.instances.push(instance); + this.objectsByUid[instance.uid.toString()] = instance; + } + } + for (i = 0, len = pm[4].length; i < len; i++) + { + var familydata = pm[4][i]; + var familytype = this.types_by_index[familydata[0]]; + var familymember; + for (j = 1, lenj = familydata.length; j < lenj; j++) + { + familymember = this.types_by_index[familydata[j]]; + familymember.families.push(familytype); + familytype.members.push(familymember); + } + } + for (i = 0, len = pm[28].length; i < len; i++) + { + var containerdata = pm[28][i]; + var containertypes = []; + for (j = 0, lenj = containerdata.length; j < lenj; j++) + containertypes.push(this.types_by_index[containerdata[j]]); + for (j = 0, lenj = containertypes.length; j < lenj; j++) + { + containertypes[j].is_contained = true; + containertypes[j].container = containertypes; + } + } + if (this.family_count > 0) + { + for (i = 0, len = this.types_by_index.length; i < len; i++) + { + t = this.types_by_index[i]; + if (t.is_family || !t.families.length) + continue; + t.family_var_map = new Array(this.family_count); + t.family_beh_map = new Array(this.family_count); + t.family_fx_map = new Array(this.family_count); + var all_fx = []; + var varsum = 0; + var behsum = 0; + var fxsum = 0; + for (j = 0, lenj = t.families.length; j < lenj; j++) + { + f = t.families[j]; + t.family_var_map[f.family_index] = varsum; + varsum += f.vars_count; + t.family_beh_map[f.family_index] = behsum; + behsum += f.behs_count; + t.family_fx_map[f.family_index] = fxsum; + fxsum += f.fx_count; + for (k = 0, lenk = f.effect_types.length; k < lenk; k++) + all_fx.push(cr.shallowCopy({}, f.effect_types[k])); + } + t.effect_types = all_fx.concat(t.effect_types); + for (j = 0, lenj = t.effect_types.length; j < lenj; j++) + t.effect_types[j].index = j; + } + } + for (i = 0, len = pm[5].length; i < len; i++) + { + m = pm[5][i]; + var layout = new cr.layout(this, m); + cr.seal(layout); + this.layouts[layout.name] = layout; + this.layouts_by_index.push(layout); + } + for (i = 0, len = pm[6].length; i < len; i++) + { + m = pm[6][i]; + var sheet = new cr.eventsheet(this, m); + cr.seal(sheet); + this.eventsheets[sheet.name] = sheet; + this.eventsheets_by_index.push(sheet); + } + for (i = 0, len = this.eventsheets_by_index.length; i < len; i++) + this.eventsheets_by_index[i].postInit(); + for (i = 0, len = this.eventsheets_by_index.length; i < len; i++) + this.eventsheets_by_index[i].updateDeepIncludes(); + for (i = 0, len = this.triggers_to_postinit.length; i < len; i++) + this.triggers_to_postinit[i].postInit(); + cr.clearArray(this.triggers_to_postinit) + this.audio_to_preload = pm[7]; + this.files_subfolder = pm[8]; + this.pixel_rounding = pm[9]; + this.aspect_scale = 1.0; + this.enableWebGL = pm[13]; + this.linearSampling = pm[14]; + this.clearBackground = pm[15]; + this.versionstr = pm[16]; + this.useHighDpi = pm[17]; + this.orientations = pm[20]; // 0 = any, 1 = portrait, 2 = landscape + this.autoLockOrientation = (this.orientations > 0); + this.pauseOnBlur = pm[22]; + this.wantFullscreenScalingQuality = pm[23]; // false = low quality, true = high quality + this.fullscreenScalingQuality = this.wantFullscreenScalingQuality; + this.downscalingQuality = pm[24]; // 0 = low (mips off), 1 = medium (mips on, dense spritesheet), 2 = high (mips on, sparse spritesheet) + this.preloadSounds = pm[25]; // 0 = no, 1 = yes + this.projectName = pm[26]; + this.enableFrontToBack = pm[27] && !this.isIE; // front-to-back renderer disabled in IE (but not Edge) + this.start_time = Date.now(); + cr.clearArray(this.objectRefTable); + this.initRendererAndLoader(); + }; + var anyImageHadError = false; + var MAX_PARALLEL_IMAGE_LOADS = 100; + var currentlyActiveImageLoads = 0; + var imageLoadQueue = []; // array of [img, srcToSet] + Runtime.prototype.queueImageLoad = function (img_, src_) + { + var self = this; + var doneFunc = function () + { + currentlyActiveImageLoads--; + self.maybeLoadNextImages(); + }; + img_.addEventListener("load", doneFunc); + img_.addEventListener("error", doneFunc); + imageLoadQueue.push([img_, src_]); + this.maybeLoadNextImages(); + }; + Runtime.prototype.maybeLoadNextImages = function () + { + var next; + while (imageLoadQueue.length && currentlyActiveImageLoads < MAX_PARALLEL_IMAGE_LOADS) + { + currentlyActiveImageLoads++; + next = imageLoadQueue.shift(); + this.setImageSrc(next[0], next[1]); + } + }; + Runtime.prototype.waitForImageLoad = function (img_, src_) + { + img_["cocoonLazyLoad"] = true; + img_.onerror = function (e) + { + img_.c2error = true; + anyImageHadError = true; + if (console && console.error) + console.error("Error loading image '" + img_.src + "': ", e); + }; + if (this.isEjecta) + { + img_.src = src_; + } + else if (!img_.src) + { + if (typeof XAPKReader !== "undefined") + { + XAPKReader.get(src_, function (expanded_url) + { + img_.src = expanded_url; + }, function (e) + { + img_.c2error = true; + anyImageHadError = true; + if (console && console.error) + console.error("Error extracting image '" + src_ + "' from expansion file: ", e); + }); + } + else + { + img_.crossOrigin = "anonymous"; // required for Arcade sandbox compatibility + this.queueImageLoad(img_, src_); // use a queue to avoid requesting all images simultaneously + } + } + this.wait_for_textures.push(img_); + }; + Runtime.prototype.findWaitingTexture = function (src_) + { + var i, len; + for (i = 0, len = this.wait_for_textures.length; i < len; i++) + { + if (this.wait_for_textures[i].cr_src === src_) + return this.wait_for_textures[i]; + } + return null; + }; + var audio_preload_totalsize = 0; + var audio_preload_started = false; + Runtime.prototype.getready = function () + { + if (!this.audioInstance) + return; + audio_preload_totalsize = this.audioInstance.setPreloadList(this.audio_to_preload); + }; + Runtime.prototype.areAllTexturesAndSoundsLoaded = function () + { + var totalsize = audio_preload_totalsize; + var completedsize = 0; + var audiocompletedsize = 0; + var ret = true; + var i, len, img; + for (i = 0, len = this.wait_for_textures.length; i < len; i++) + { + img = this.wait_for_textures[i]; + var filesize = img.cr_filesize; + if (!filesize || filesize <= 0) + filesize = 50000; + totalsize += filesize; + if (!!img.src && (img.complete || img["loaded"]) && !img.c2error) + completedsize += filesize; + else + ret = false; // not all textures loaded + } + if (ret && this.preloadSounds && this.audioInstance) + { + if (!audio_preload_started) + { + this.audioInstance.startPreloads(); + audio_preload_started = true; + } + audiocompletedsize = this.audioInstance.getPreloadedSize(); + completedsize += audiocompletedsize; + if (audiocompletedsize < audio_preload_totalsize) + ret = false; // not done yet + } + if (totalsize == 0) + this.progress = 1; // indicate to C2 splash loader that it can finish now + else + this.progress = (completedsize / totalsize); + return ret; + }; + var isC2SplashDone = false; + Runtime.prototype.go = function () + { + if (!this.ctx && !this.glwrap) + return; + var ctx = this.ctx || this.overlay_ctx; + if (this.overlay_canvas) + this.positionOverlayCanvas(); + var curwidth = window.innerWidth; + var curheight = window.innerHeight; + if (this.lastWindowWidth !== curwidth || this.lastWindowHeight !== curheight) + { + this["setSize"](curwidth, curheight); + } + this.progress = 0; + this.last_progress = -1; + var self = this; + if (this.areAllTexturesAndSoundsLoaded() && (this.loaderstyle !== 4 || isC2SplashDone)) + { + this.go_loading_finished(); + } + else + { + var ms_elapsed = Date.now() - this.start_time; + if (ctx) + { + var overlay_width = this.width; + var overlay_height = this.height; + var dpr = this.devicePixelRatio; + if (this.loaderstyle < 3 && (this.isCocoonJs || (ms_elapsed >= 500 && this.last_progress != this.progress))) + { + ctx.clearRect(0, 0, overlay_width, overlay_height); + var mx = overlay_width / 2; + var my = overlay_height / 2; + var haslogo = (this.loaderstyle === 0 && this.loaderlogos.logo.complete); + var hlw = 40 * dpr; + var hlh = 0; + var logowidth = 80 * dpr; + var logoheight; + if (haslogo) + { + var loaderLogoImage = this.loaderlogos.logo; + logowidth = loaderLogoImage.width * dpr; + logoheight = loaderLogoImage.height * dpr; + hlw = logowidth / 2; + hlh = logoheight / 2; + ctx.drawImage(loaderLogoImage, cr.floor(mx - hlw), cr.floor(my - hlh), logowidth, logoheight); + } + if (this.loaderstyle <= 1) + { + my += hlh + (haslogo ? 12 * dpr : 0); + mx -= hlw; + mx = cr.floor(mx) + 0.5; + my = cr.floor(my) + 0.5; + ctx.fillStyle = anyImageHadError ? "red" : "DodgerBlue"; + ctx.fillRect(mx, my, Math.floor(logowidth * this.progress), 6 * dpr); + ctx.strokeStyle = "black"; + ctx.strokeRect(mx, my, logowidth, 6 * dpr); + ctx.strokeStyle = "white"; + ctx.strokeRect(mx - 1 * dpr, my - 1 * dpr, logowidth + 2 * dpr, 8 * dpr); + } + else if (this.loaderstyle === 2) + { + ctx.font = (this.isEjecta ? "12pt ArialMT" : "12pt Arial"); + ctx.fillStyle = anyImageHadError ? "#f00" : "#999"; + ctx.textBaseLine = "middle"; + var percent_text = Math.round(this.progress * 100) + "%"; + var text_dim = ctx.measureText ? ctx.measureText(percent_text) : null; + var text_width = text_dim ? text_dim.width : 0; + ctx.fillText(percent_text, mx - (text_width / 2), my); + } + this.last_progress = this.progress; + } + else if (this.loaderstyle === 4) + { + this.draw_c2_splash_loader(ctx); + if (raf) + raf(function() { self.go(); }); + else + setTimeout(function() { self.go(); }, 16); + return; + } + } + setTimeout(function() { self.go(); }, (this.isCocoonJs ? 10 : 100)); + } + }; + var splashStartTime = -1; + var splashFadeInDuration = 300; + var splashFadeOutDuration = 300; + var splashAfterFadeOutWait = (typeof cr_is_preview === "undefined" ? 200 : 0); + var splashIsFadeIn = true; + var splashIsFadeOut = false; + var splashFadeInFinish = 0; + var splashFadeOutStart = 0; + var splashMinDisplayTime = (typeof cr_is_preview === "undefined" ? 3000 : 0); + var renderViaCanvas = null; + var renderViaCtx = null; + var splashFrameNumber = 0; + function maybeCreateRenderViaCanvas(w, h) + { + if (!renderViaCanvas || renderViaCanvas.width !== w || renderViaCanvas.height !== h) + { + renderViaCanvas = document.createElement("canvas"); + renderViaCanvas.width = w; + renderViaCanvas.height = h; + renderViaCtx = renderViaCanvas.getContext("2d"); + } + }; + function mipImage(arr, size) + { + if (size <= 128) + return arr[3]; + else if (size <= 256) + return arr[2]; + else if (size <= 512) + return arr[1]; + else + return arr[0]; + }; + Runtime.prototype.draw_c2_splash_loader = function(ctx) + { + if (isC2SplashDone) + return; + var w = Math.ceil(this.width); + var h = Math.ceil(this.height); + var dpr = this.devicePixelRatio; + var logoimages = this.loaderlogos.logo; + var poweredimages = this.loaderlogos.powered; + var websiteimages = this.loaderlogos.website; + for (var i = 0; i < 4; ++i) + { + if (!logoimages[i].complete || !poweredimages[i].complete || !websiteimages[i].complete) + return; + } + if (splashFrameNumber === 0) + splashStartTime = Date.now(); + var nowTime = Date.now(); + var isRenderingVia = false; + var renderToCtx = ctx; + var drawW, drawH; + if (splashIsFadeIn || splashIsFadeOut) + { + ctx.clearRect(0, 0, w, h); + maybeCreateRenderViaCanvas(w, h); + renderToCtx = renderViaCtx; + isRenderingVia = true; + if (splashIsFadeIn && splashFrameNumber === 1) + splashStartTime = Date.now(); + } + else + { + ctx.globalAlpha = 1; + } + renderToCtx.fillStyle = "#333333"; + renderToCtx.fillRect(0, 0, w, h); + if (this.cssHeight > 256) + { + drawW = cr.clamp(h * 0.22, 105, w * 0.6); + drawH = drawW * 0.25; + renderToCtx.drawImage(mipImage(poweredimages, drawW), w * 0.5 - drawW/2, h * 0.2 - drawH/2, drawW, drawH); + drawW = Math.min(h * 0.395, w * 0.95); + drawH = drawW; + renderToCtx.drawImage(mipImage(logoimages, drawW), w * 0.5 - drawW/2, h * 0.485 - drawH/2, drawW, drawH); + drawW = cr.clamp(h * 0.22, 105, w * 0.6); + drawH = drawW * 0.25; + renderToCtx.drawImage(mipImage(websiteimages, drawW), w * 0.5 - drawW/2, h * 0.868 - drawH/2, drawW, drawH); + renderToCtx.fillStyle = "#3C3C3C"; + drawW = w; + drawH = Math.max(h * 0.005, 2); + renderToCtx.fillRect(0, h * 0.8 - drawH/2, drawW, drawH); + renderToCtx.fillStyle = anyImageHadError ? "red" : "#E0FF65"; + drawW = w * this.progress; + renderToCtx.fillRect(w * 0.5 - drawW/2, h * 0.8 - drawH/2, drawW, drawH); + } + else + { + drawW = h * 0.55; + drawH = drawW; + renderToCtx.drawImage(mipImage(logoimages, drawW), w * 0.5 - drawW/2, h * 0.45 - drawH/2, drawW, drawH); + renderToCtx.fillStyle = "#3C3C3C"; + drawW = w; + drawH = Math.max(h * 0.005, 2); + renderToCtx.fillRect(0, h * 0.85 - drawH/2, drawW, drawH); + renderToCtx.fillStyle = anyImageHadError ? "red" : "#E0FF65"; + drawW = w * this.progress; + renderToCtx.fillRect(w * 0.5 - drawW/2, h * 0.85 - drawH/2, drawW, drawH); + } + if (isRenderingVia) + { + if (splashIsFadeIn) + { + if (splashFrameNumber === 0) + ctx.globalAlpha = 0; + else + ctx.globalAlpha = Math.min((nowTime - splashStartTime) / splashFadeInDuration, 1); + } + else if (splashIsFadeOut) + { + ctx.globalAlpha = Math.max(1 - (nowTime - splashFadeOutStart) / splashFadeOutDuration, 0); + } + ctx.drawImage(renderViaCanvas, 0, 0, w, h); + } + if (splashIsFadeIn && nowTime - splashStartTime >= splashFadeInDuration && splashFrameNumber >= 2) + { + splashIsFadeIn = false; + splashFadeInFinish = nowTime; + } + if (!splashIsFadeIn && nowTime - splashFadeInFinish >= splashMinDisplayTime && !splashIsFadeOut && this.progress >= 1) + { + splashIsFadeOut = true; + splashFadeOutStart = nowTime; + } + if ((splashIsFadeOut && nowTime - splashFadeOutStart >= splashFadeOutDuration + splashAfterFadeOutWait) || + (typeof cr_is_preview !== "undefined" && this.progress >= 1 && Date.now() - splashStartTime < 500)) + { + isC2SplashDone = true; + splashIsFadeIn = false; + splashIsFadeOut = false; + renderViaCanvas = null; + renderViaCtx = null; + this.loaderlogos = null; + } + ++splashFrameNumber; + }; + Runtime.prototype.go_loading_finished = function () + { + if (this.overlay_canvas) + { + this.canvas.parentNode.removeChild(this.overlay_canvas); + this.overlay_ctx = null; + this.overlay_canvas = null; + } + this.start_time = Date.now(); + this.last_fps_time = cr.performance_now(); // for counting framerate + var i, len, t; + if (this.uses_loader_layout) + { + for (i = 0, len = this.types_by_index.length; i < len; i++) + { + t = this.types_by_index[i]; + if (!t.is_family && !t.isOnLoaderLayout && t.plugin.is_world) + { + t.onCreate(); + cr.seal(t); + } + } + } + else + this.isloading = false; + for (i = 0, len = this.layouts_by_index.length; i < len; i++) + { + this.layouts_by_index[i].createGlobalNonWorlds(); + } + if (this.fullscreen_mode >= 2) + { + var orig_aspect = this.original_width / this.original_height; + var cur_aspect = this.width / this.height; + if ((this.fullscreen_mode !== 2 && cur_aspect > orig_aspect) || (this.fullscreen_mode === 2 && cur_aspect < orig_aspect)) + this.aspect_scale = this.height / this.original_height; + else + this.aspect_scale = this.width / this.original_width; + } + if (this.first_layout) + this.layouts[this.first_layout].startRunning(); + else + this.layouts_by_index[0].startRunning(); +; + if (!this.uses_loader_layout) + { + this.loadingprogress = 1; + this.trigger(cr.system_object.prototype.cnds.OnLoadFinished, null); + if (window["C2_RegisterSW"]) // note not all platforms use SW + window["C2_RegisterSW"](); + } + if (navigator["splashscreen"] && navigator["splashscreen"]["hide"]) + navigator["splashscreen"]["hide"](); + for (i = 0, len = this.types_by_index.length; i < len; i++) + { + t = this.types_by_index[i]; + if (t.onAppBegin) + t.onAppBegin(); + } + if (document["hidden"] || document["webkitHidden"] || document["mozHidden"] || document["msHidden"]) + { + window["cr_setSuspended"](true); // stop rendering + } + else + { + this.tick(false); + } + if (this.isDirectCanvas) + AppMobi["webview"]["execute"]("onGameReady();"); + }; + Runtime.prototype.tick = function (background_wake, timestamp, debug_step) + { + if (!this.running_layout) + return; + var nowtime = cr.performance_now(); + var logic_start = nowtime; + if (!debug_step && this.isSuspended && !background_wake) + return; + if (!background_wake) + { + if (raf) + this.raf_id = raf(this.tickFunc); + else + { + this.timeout_id = setTimeout(this.tickFunc, this.isMobile ? 1 : 16); + } + } + var raf_time = timestamp || nowtime; + var fsmode = this.fullscreen_mode; + var isfullscreen = (document["mozFullScreen"] || document["webkitIsFullScreen"] || document["fullScreen"] || !!document["msFullscreenElement"]) && !this.isCordova; + if ((isfullscreen || this.isNodeFullscreen) && this.fullscreen_scaling > 0) + fsmode = this.fullscreen_scaling; + if (fsmode > 0) // r222: experimentally enabling this workaround for all platforms + { + var curwidth = window.innerWidth; + var curheight = window.innerHeight; + if (this.lastWindowWidth !== curwidth || this.lastWindowHeight !== curheight) + { + this["setSize"](curwidth, curheight); + } + } + if (!this.isDomFree) + { + if (isfullscreen) + { + if (!this.firstInFullscreen) + this.firstInFullscreen = true; + } + else + { + if (this.firstInFullscreen) + { + this.firstInFullscreen = false; + if (this.fullscreen_mode === 0) + { + this["setSize"](Math.round(this.oldWidth / this.devicePixelRatio), Math.round(this.oldHeight / this.devicePixelRatio), true); + } + } + else + { + this.oldWidth = this.width; + this.oldHeight = this.height; + } + } + } + if (this.isloading) + { + var done = this.areAllTexturesAndSoundsLoaded(); // updates this.progress + this.loadingprogress = this.progress; + if (done) + { + this.isloading = false; + this.progress = 1; + this.trigger(cr.system_object.prototype.cnds.OnLoadFinished, null); + if (window["C2_RegisterSW"]) + window["C2_RegisterSW"](); + } + } + this.logic(raf_time); + if ((this.redraw || this.isCocoonJs) && !this.is_WebGL_context_lost && !this.suspendDrawing && !background_wake) + { + this.redraw = false; + if (this.glwrap) + this.drawGL(); + else + this.draw(); + if (this.snapshotCanvas) + { + if (this.canvas && this.canvas.toDataURL) + { + this.snapshotData = this.canvas.toDataURL(this.snapshotCanvas[0], this.snapshotCanvas[1]); + if (window["cr_onSnapshot"]) + window["cr_onSnapshot"](this.snapshotData); + this.trigger(cr.system_object.prototype.cnds.OnCanvasSnapshot, null); + } + this.snapshotCanvas = null; + } + } + if (!this.hit_breakpoint) + { + this.tickcount++; + this.tickcount_nosave++; + this.execcount++; + this.framecount++; + } + this.logictime += cr.performance_now() - logic_start; + }; + Runtime.prototype.logic = function (cur_time) + { + var i, leni, j, lenj, k, lenk, type, inst, binst; + if (cur_time - this.last_fps_time >= 1000) // every 1 second + { + this.last_fps_time += 1000; + if (cur_time - this.last_fps_time >= 1000) + this.last_fps_time = cur_time; + this.fps = this.framecount; + this.framecount = 0; + this.cpuutilisation = this.logictime; + this.logictime = 0; + } + var wallDt = 0; + if (this.last_tick_time !== 0) + { + var ms_diff = cur_time - this.last_tick_time; + if (ms_diff < 0) + ms_diff = 0; + wallDt = ms_diff / 1000.0; // dt measured in seconds + this.dt1 = wallDt; + if (this.dt1 > 0.5) + this.dt1 = 0; + else if (this.dt1 > 1 / this.minimumFramerate) + this.dt1 = 1 / this.minimumFramerate; + } + this.last_tick_time = cur_time; + this.dt = this.dt1 * this.timescale; + this.kahanTime.add(this.dt); + this.wallTime.add(wallDt); // prevent min/max framerate affecting wall clock + var isfullscreen = (document["mozFullScreen"] || document["webkitIsFullScreen"] || document["fullScreen"] || !!document["msFullscreenElement"] || this.isNodeFullscreen) && !this.isCordova; + if (this.fullscreen_mode >= 2 /* scale */ || (isfullscreen && this.fullscreen_scaling > 0)) + { + var orig_aspect = this.original_width / this.original_height; + var cur_aspect = this.width / this.height; + var mode = this.fullscreen_mode; + if (isfullscreen && this.fullscreen_scaling > 0) + mode = this.fullscreen_scaling; + if ((mode !== 2 && cur_aspect > orig_aspect) || (mode === 2 && cur_aspect < orig_aspect)) + { + this.aspect_scale = this.height / this.original_height; + } + else + { + this.aspect_scale = this.width / this.original_width; + } + if (this.running_layout) + { + this.running_layout.scrollToX(this.running_layout.scrollX); + this.running_layout.scrollToY(this.running_layout.scrollY); + } + } + else + this.aspect_scale = (this.isRetina ? this.devicePixelRatio : 1); + this.ClearDeathRow(); + this.isInOnDestroy++; + this.system.runWaits(); // prevent instance list changing + this.isInOnDestroy--; + this.ClearDeathRow(); // allow instance list changing + this.isInOnDestroy++; + var tickarr = this.objects_to_pretick.valuesRef(); + for (i = 0, leni = tickarr.length; i < leni; i++) + tickarr[i].pretick(); + for (i = 0, leni = this.types_by_index.length; i < leni; i++) + { + type = this.types_by_index[i]; + if (type.is_family || (!type.behaviors.length && !type.families.length)) + continue; + for (j = 0, lenj = type.instances.length; j < lenj; j++) + { + inst = type.instances[j]; + for (k = 0, lenk = inst.behavior_insts.length; k < lenk; k++) + { + inst.behavior_insts[k].tick(); + } + } + } + for (i = 0, leni = this.types_by_index.length; i < leni; i++) + { + type = this.types_by_index[i]; + if (type.is_family || (!type.behaviors.length && !type.families.length)) + continue; // type doesn't have any behaviors + for (j = 0, lenj = type.instances.length; j < lenj; j++) + { + inst = type.instances[j]; + for (k = 0, lenk = inst.behavior_insts.length; k < lenk; k++) + { + binst = inst.behavior_insts[k]; + if (binst.posttick) + binst.posttick(); + } + } + } + tickarr = this.objects_to_tick.valuesRef(); + for (i = 0, leni = tickarr.length; i < leni; i++) + tickarr[i].tick(); + this.isInOnDestroy--; // end preventing instance lists from being changed + this.handleSaveLoad(); // save/load now if queued + i = 0; + while (this.changelayout && i++ < 10) + { + this.doChangeLayout(this.changelayout); + } + for (i = 0, leni = this.eventsheets_by_index.length; i < leni; i++) + this.eventsheets_by_index[i].hasRun = false; + if (this.running_layout.event_sheet) + this.running_layout.event_sheet.run(); + cr.clearArray(this.registered_collisions); + this.layout_first_tick = false; + this.isInOnDestroy++; // prevent instance lists from being changed + for (i = 0, leni = this.types_by_index.length; i < leni; i++) + { + type = this.types_by_index[i]; + if (type.is_family || (!type.behaviors.length && !type.families.length)) + continue; // type doesn't have any behaviors + for (j = 0, lenj = type.instances.length; j < lenj; j++) + { + var inst = type.instances[j]; + for (k = 0, lenk = inst.behavior_insts.length; k < lenk; k++) + { + binst = inst.behavior_insts[k]; + if (binst.tick2) + binst.tick2(); + } + } + } + tickarr = this.objects_to_tick2.valuesRef(); + for (i = 0, leni = tickarr.length; i < leni; i++) + tickarr[i].tick2(); + this.isInOnDestroy--; // end preventing instance lists from being changed + }; + Runtime.prototype.onWindowBlur = function () + { + var i, leni, j, lenj, k, lenk, type, inst, binst; + for (i = 0, leni = this.types_by_index.length; i < leni; i++) + { + type = this.types_by_index[i]; + if (type.is_family) + continue; + for (j = 0, lenj = type.instances.length; j < lenj; j++) + { + inst = type.instances[j]; + if (inst.onWindowBlur) + inst.onWindowBlur(); + if (!inst.behavior_insts) + continue; // single-globals don't have behavior_insts + for (k = 0, lenk = inst.behavior_insts.length; k < lenk; k++) + { + binst = inst.behavior_insts[k]; + if (binst.onWindowBlur) + binst.onWindowBlur(); + } + } + } + }; + Runtime.prototype.doChangeLayout = function (changeToLayout) + { + var prev_layout = this.running_layout; + this.running_layout.stopRunning(); + var i, len, j, lenj, k, lenk, type, inst, binst; + if (this.glwrap) + { + for (i = 0, len = this.types_by_index.length; i < len; i++) + { + type = this.types_by_index[i]; + if (type.is_family) + continue; + if (type.unloadTextures && (!type.global || type.instances.length === 0) && changeToLayout.initial_types.indexOf(type) === -1) + { + type.unloadTextures(); + } + } + } + if (prev_layout == changeToLayout) + cr.clearArray(this.system.waits); + cr.clearArray(this.registered_collisions); + this.runLayoutChangeMethods(true); + changeToLayout.startRunning(); + this.runLayoutChangeMethods(false); + this.redraw = true; + this.layout_first_tick = true; + this.ClearDeathRow(); + }; + Runtime.prototype.runLayoutChangeMethods = function (isBeforeChange) + { + var i, len, beh, type, j, lenj, inst, k, lenk, binst; + for (i = 0, len = this.behaviors.length; i < len; i++) + { + beh = this.behaviors[i]; + if (isBeforeChange) + { + if (beh.onBeforeLayoutChange) + beh.onBeforeLayoutChange(); + } + else + { + if (beh.onLayoutChange) + beh.onLayoutChange(); + } + } + for (i = 0, len = this.types_by_index.length; i < len; i++) + { + type = this.types_by_index[i]; + if (!type.global && !type.plugin.singleglobal) + continue; + for (j = 0, lenj = type.instances.length; j < lenj; j++) + { + inst = type.instances[j]; + if (isBeforeChange) + { + if (inst.onBeforeLayoutChange) + inst.onBeforeLayoutChange(); + } + else + { + if (inst.onLayoutChange) + inst.onLayoutChange(); + } + if (inst.behavior_insts) + { + for (k = 0, lenk = inst.behavior_insts.length; k < lenk; k++) + { + binst = inst.behavior_insts[k]; + if (isBeforeChange) + { + if (binst.onBeforeLayoutChange) + binst.onBeforeLayoutChange(); + } + else + { + if (binst.onLayoutChange) + binst.onLayoutChange(); + } + } + } + } + } + }; + Runtime.prototype.pretickMe = function (inst) + { + this.objects_to_pretick.add(inst); + }; + Runtime.prototype.unpretickMe = function (inst) + { + this.objects_to_pretick.remove(inst); + }; + Runtime.prototype.tickMe = function (inst) + { + this.objects_to_tick.add(inst); + }; + Runtime.prototype.untickMe = function (inst) + { + this.objects_to_tick.remove(inst); + }; + Runtime.prototype.tick2Me = function (inst) + { + this.objects_to_tick2.add(inst); + }; + Runtime.prototype.untick2Me = function (inst) + { + this.objects_to_tick2.remove(inst); + }; + Runtime.prototype.getDt = function (inst) + { + if (!inst || inst.my_timescale === -1.0) + return this.dt; + return this.dt1 * inst.my_timescale; + }; + Runtime.prototype.draw = function () + { + this.running_layout.draw(this.ctx); + if (this.isDirectCanvas) + this.ctx["present"](); + }; + Runtime.prototype.drawGL = function () + { + if (this.enableFrontToBack) + { + this.earlyz_index = 1; // start from front, 1-based to avoid exactly equalling near plane Z value + this.running_layout.drawGL_earlyZPass(this.glwrap); + } + this.running_layout.drawGL(this.glwrap); + this.glwrap.present(); + }; + Runtime.prototype.addDestroyCallback = function (f) + { + if (f) + this.destroycallbacks.push(f); + }; + Runtime.prototype.removeDestroyCallback = function (f) + { + cr.arrayFindRemove(this.destroycallbacks, f); + }; + Runtime.prototype.getObjectByUID = function (uid_) + { +; + var uidstr = uid_.toString(); + if (this.objectsByUid.hasOwnProperty(uidstr)) + return this.objectsByUid[uidstr]; + else + return null; + }; + var objectset_cache = []; + function alloc_objectset() + { + if (objectset_cache.length) + return objectset_cache.pop(); + else + return new cr.ObjectSet(); + }; + function free_objectset(s) + { + s.clear(); + objectset_cache.push(s); + }; + Runtime.prototype.DestroyInstance = function (inst) + { + var i, len; + var type = inst.type; + var typename = type.name; + var has_typename = this.deathRow.hasOwnProperty(typename); + var obj_set = null; + if (has_typename) + { + obj_set = this.deathRow[typename]; + if (obj_set.contains(inst)) + return; // already had DestroyInstance called + } + else + { + obj_set = alloc_objectset(); + this.deathRow[typename] = obj_set; + } + obj_set.add(inst); + this.hasPendingInstances = true; + if (inst.is_contained) + { + for (i = 0, len = inst.siblings.length; i < len; i++) + { + this.DestroyInstance(inst.siblings[i]); + } + } + if (this.isInClearDeathRow) + obj_set.values_cache.push(inst); + if (!this.isEndingLayout) + { + this.isInOnDestroy++; // support recursion + this.trigger(Object.getPrototypeOf(inst.type.plugin).cnds.OnDestroyed, inst); + this.isInOnDestroy--; + } + }; + Runtime.prototype.ClearDeathRow = function () + { + if (!this.hasPendingInstances) + return; + var inst, type, instances; + var i, j, leni, lenj, obj_set; + this.isInClearDeathRow = true; + for (i = 0, leni = this.createRow.length; i < leni; ++i) + { + inst = this.createRow[i]; + type = inst.type; + type.instances.push(inst); + for (j = 0, lenj = type.families.length; j < lenj; ++j) + { + type.families[j].instances.push(inst); + type.families[j].stale_iids = true; + } + } + cr.clearArray(this.createRow); + this.IterateDeathRow(); // moved to separate function so for-in performance doesn't hobble entire function + cr.wipe(this.deathRow); // all objectsets have already been recycled + this.isInClearDeathRow = false; + this.hasPendingInstances = false; + }; + Runtime.prototype.IterateDeathRow = function () + { + for (var p in this.deathRow) + { + if (this.deathRow.hasOwnProperty(p)) + { + this.ClearDeathRowForType(this.deathRow[p]); + } + } + }; + Runtime.prototype.ClearDeathRowForType = function (obj_set) + { + var arr = obj_set.valuesRef(); // get array of items from set +; + var type = arr[0].type; +; +; + var i, len, j, lenj, w, f, layer_instances, inst; + cr.arrayRemoveAllFromObjectSet(type.instances, obj_set); + type.stale_iids = true; + if (type.instances.length === 0) + type.any_instance_parallaxed = false; + for (i = 0, len = type.families.length; i < len; ++i) + { + f = type.families[i]; + cr.arrayRemoveAllFromObjectSet(f.instances, obj_set); + f.stale_iids = true; + } + for (i = 0, len = this.system.waits.length; i < len; ++i) + { + w = this.system.waits[i]; + if (w.sols.hasOwnProperty(type.index)) + cr.arrayRemoveAllFromObjectSet(w.sols[type.index].insts, obj_set); + if (!type.is_family) + { + for (j = 0, lenj = type.families.length; j < lenj; ++j) + { + f = type.families[j]; + if (w.sols.hasOwnProperty(f.index)) + cr.arrayRemoveAllFromObjectSet(w.sols[f.index].insts, obj_set); + } + } + } + var first_layer = arr[0].layer; + if (first_layer) + { + if (first_layer.useRenderCells) + { + layer_instances = first_layer.instances; + for (i = 0, len = layer_instances.length; i < len; ++i) + { + inst = layer_instances[i]; + if (!obj_set.contains(inst)) + continue; // not destroying this instance + inst.update_bbox(); + first_layer.render_grid.update(inst, inst.rendercells, null); + inst.rendercells.set(0, 0, -1, -1); + } + } + cr.arrayRemoveAllFromObjectSet(first_layer.instances, obj_set); + first_layer.setZIndicesStaleFrom(0); + } + for (i = 0; i < arr.length; ++i) // check array length every time in case it changes + { + this.ClearDeathRowForSingleInstance(arr[i], type); + } + free_objectset(obj_set); + this.redraw = true; + }; + Runtime.prototype.ClearDeathRowForSingleInstance = function (inst, type) + { + var i, len, binst; + for (i = 0, len = this.destroycallbacks.length; i < len; ++i) + this.destroycallbacks[i](inst); + if (inst.collcells) + { + type.collision_grid.update(inst, inst.collcells, null); + } + var layer = inst.layer; + if (layer) + { + layer.removeFromInstanceList(inst, true); // remove from both instance list and render grid + } + if (inst.behavior_insts) + { + for (i = 0, len = inst.behavior_insts.length; i < len; ++i) + { + binst = inst.behavior_insts[i]; + if (binst.onDestroy) + binst.onDestroy(); + binst.behavior.my_instances.remove(inst); + } + } + this.objects_to_pretick.remove(inst); + this.objects_to_tick.remove(inst); + this.objects_to_tick2.remove(inst); + if (inst.onDestroy) + inst.onDestroy(); + if (this.objectsByUid.hasOwnProperty(inst.uid.toString())) + delete this.objectsByUid[inst.uid.toString()]; + this.objectcount--; + if (type.deadCache.length < 100) + type.deadCache.push(inst); + }; + Runtime.prototype.createInstance = function (type, layer, sx, sy) + { + if (type.is_family) + { + var i = cr.floor(Math.random() * type.members.length); + return this.createInstance(type.members[i], layer, sx, sy); + } + if (!type.default_instance) + { + return null; + } + return this.createInstanceFromInit(type.default_instance, layer, false, sx, sy, false); + }; + var all_behaviors = []; + Runtime.prototype.createInstanceFromInit = function (initial_inst, layer, is_startup_instance, sx, sy, skip_siblings) + { + var i, len, j, lenj, p, effect_fallback, x, y; + if (!initial_inst) + return null; + var type = this.types_by_index[initial_inst[1]]; +; +; + var is_world = type.plugin.is_world; +; + if (this.isloading && is_world && !type.isOnLoaderLayout) + return null; + if (is_world && !this.glwrap && initial_inst[0][11] === 11) + return null; + var original_layer = layer; + if (!is_world) + layer = null; + var inst; + if (type.deadCache.length) + { + inst = type.deadCache.pop(); + inst.recycled = true; + type.plugin.Instance.call(inst, type); + } + else + { + inst = new type.plugin.Instance(type); + inst.recycled = false; + } + if (is_startup_instance && !skip_siblings && !this.objectsByUid.hasOwnProperty(initial_inst[2].toString())) + inst.uid = initial_inst[2]; + else + inst.uid = this.next_uid++; + this.objectsByUid[inst.uid.toString()] = inst; + inst.puid = this.next_puid++; + inst.iid = type.instances.length; + for (i = 0, len = this.createRow.length; i < len; ++i) + { + if (this.createRow[i].type === type) + inst.iid++; + } + inst.get_iid = cr.inst_get_iid; + inst.toString = cr.inst_toString; + var initial_vars = initial_inst[3]; + if (inst.recycled) + { + cr.wipe(inst.extra); + } + else + { + inst.extra = {}; + if (typeof cr_is_preview !== "undefined") + { + inst.instance_var_names = []; + inst.instance_var_names.length = initial_vars.length; + for (i = 0, len = initial_vars.length; i < len; i++) + inst.instance_var_names[i] = initial_vars[i][1]; + } + inst.instance_vars = []; + inst.instance_vars.length = initial_vars.length; + } + for (i = 0, len = initial_vars.length; i < len; i++) + inst.instance_vars[i] = initial_vars[i][0]; + if (is_world) + { + var wm = initial_inst[0]; +; + inst.x = cr.is_undefined(sx) ? wm[0] : sx; + inst.y = cr.is_undefined(sy) ? wm[1] : sy; + inst.z = wm[2]; + inst.width = wm[3]; + inst.height = wm[4]; + inst.depth = wm[5]; + inst.angle = wm[6]; + inst.opacity = wm[7]; + inst.hotspotX = wm[8]; + inst.hotspotY = wm[9]; + inst.blend_mode = wm[10]; + effect_fallback = wm[11]; + if (!this.glwrap && type.effect_types.length) // no WebGL renderer and shaders used + inst.blend_mode = effect_fallback; // use fallback blend mode - destroy mode was handled above + inst.compositeOp = cr.effectToCompositeOp(inst.blend_mode); + if (this.gl) + cr.setGLBlend(inst, inst.blend_mode, this.gl); + if (inst.recycled) + { + for (i = 0, len = wm[12].length; i < len; i++) + { + for (j = 0, lenj = wm[12][i].length; j < lenj; j++) + inst.effect_params[i][j] = wm[12][i][j]; + } + inst.bbox.set(0, 0, 0, 0); + inst.collcells.set(0, 0, -1, -1); + inst.rendercells.set(0, 0, -1, -1); + inst.bquad.set_from_rect(inst.bbox); + cr.clearArray(inst.bbox_changed_callbacks); + } + else + { + inst.effect_params = wm[12].slice(0); + for (i = 0, len = inst.effect_params.length; i < len; i++) + inst.effect_params[i] = wm[12][i].slice(0); + inst.active_effect_types = []; + inst.active_effect_flags = []; + inst.active_effect_flags.length = type.effect_types.length; + inst.bbox = new cr.rect(0, 0, 0, 0); + inst.collcells = new cr.rect(0, 0, -1, -1); + inst.rendercells = new cr.rect(0, 0, -1, -1); + inst.bquad = new cr.quad(); + inst.bbox_changed_callbacks = []; + inst.set_bbox_changed = cr.set_bbox_changed; + inst.add_bbox_changed_callback = cr.add_bbox_changed_callback; + inst.contains_pt = cr.inst_contains_pt; + inst.update_bbox = cr.update_bbox; + inst.update_render_cell = cr.update_render_cell; + inst.update_collision_cell = cr.update_collision_cell; + inst.get_zindex = cr.inst_get_zindex; + } + inst.tilemap_exists = false; + inst.tilemap_width = 0; + inst.tilemap_height = 0; + inst.tilemap_data = null; + if (wm.length === 14) + { + inst.tilemap_exists = true; + inst.tilemap_width = wm[13][0]; + inst.tilemap_height = wm[13][1]; + inst.tilemap_data = wm[13][2]; + } + for (i = 0, len = type.effect_types.length; i < len; i++) + inst.active_effect_flags[i] = true; + inst.shaders_preserve_opaqueness = true; + inst.updateActiveEffects = cr.inst_updateActiveEffects; + inst.updateActiveEffects(); + inst.uses_shaders = !!inst.active_effect_types.length; + inst.bbox_changed = true; + inst.cell_changed = true; + type.any_cell_changed = true; + inst.visible = true; + inst.my_timescale = -1.0; + inst.layer = layer; + inst.zindex = layer.instances.length; // will be placed at top of current layer + inst.earlyz_index = 0; + if (typeof inst.collision_poly === "undefined") + inst.collision_poly = null; + inst.collisionsEnabled = true; + this.redraw = true; + } + var initial_props, binst; + cr.clearArray(all_behaviors); + for (i = 0, len = type.families.length; i < len; i++) + { + all_behaviors.push.apply(all_behaviors, type.families[i].behaviors); + } + all_behaviors.push.apply(all_behaviors, type.behaviors); + if (inst.recycled) + { + for (i = 0, len = all_behaviors.length; i < len; i++) + { + var btype = all_behaviors[i]; + binst = inst.behavior_insts[i]; + binst.recycled = true; + btype.behavior.Instance.call(binst, btype, inst); + initial_props = initial_inst[4][i]; + for (j = 0, lenj = initial_props.length; j < lenj; j++) + binst.properties[j] = initial_props[j]; + binst.onCreate(); + btype.behavior.my_instances.add(inst); + } + } + else + { + inst.behavior_insts = []; + for (i = 0, len = all_behaviors.length; i < len; i++) + { + var btype = all_behaviors[i]; + var binst = new btype.behavior.Instance(btype, inst); + binst.recycled = false; + binst.properties = initial_inst[4][i].slice(0); + binst.onCreate(); + cr.seal(binst); + inst.behavior_insts.push(binst); + btype.behavior.my_instances.add(inst); + } + } + initial_props = initial_inst[5]; + if (inst.recycled) + { + for (i = 0, len = initial_props.length; i < len; i++) + inst.properties[i] = initial_props[i]; + } + else + inst.properties = initial_props.slice(0); + this.createRow.push(inst); + this.hasPendingInstances = true; + if (layer) + { +; + layer.appendToInstanceList(inst, true); + if (layer.parallaxX !== 1 || layer.parallaxY !== 1) + type.any_instance_parallaxed = true; + } + this.objectcount++; + if (type.is_contained) + { + inst.is_contained = true; + if (inst.recycled) + cr.clearArray(inst.siblings); + else + inst.siblings = []; // note: should not include self in siblings + if (!is_startup_instance && !skip_siblings) // layout links initial instances + { + for (i = 0, len = type.container.length; i < len; i++) + { + if (type.container[i] === type) + continue; + if (!type.container[i].default_instance) + { + return null; + } + inst.siblings.push(this.createInstanceFromInit(type.container[i].default_instance, original_layer, false, is_world ? inst.x : sx, is_world ? inst.y : sy, true)); + } + for (i = 0, len = inst.siblings.length; i < len; i++) + { + inst.siblings[i].siblings.push(inst); + for (j = 0; j < len; j++) + { + if (i !== j) + inst.siblings[i].siblings.push(inst.siblings[j]); + } + } + } + } + else + { + inst.is_contained = false; + inst.siblings = null; + } + inst.onCreate(); + if (!inst.recycled) + cr.seal(inst); + for (i = 0, len = inst.behavior_insts.length; i < len; i++) + { + if (inst.behavior_insts[i].postCreate) + inst.behavior_insts[i].postCreate(); + } + return inst; + }; + Runtime.prototype.getLayerByName = function (layer_name) + { + var i, len; + for (i = 0, len = this.running_layout.layers.length; i < len; i++) + { + var layer = this.running_layout.layers[i]; + if (cr.equals_nocase(layer.name, layer_name)) + return layer; + } + return null; + }; + Runtime.prototype.getLayerByNumber = function (index) + { + index = cr.floor(index); + if (index < 0) + index = 0; + if (index >= this.running_layout.layers.length) + index = this.running_layout.layers.length - 1; + return this.running_layout.layers[index]; + }; + Runtime.prototype.getLayer = function (l) + { + if (cr.is_number(l)) + return this.getLayerByNumber(l); + else + return this.getLayerByName(l.toString()); + }; + Runtime.prototype.clearSol = function (solModifiers) + { + var i, len; + for (i = 0, len = solModifiers.length; i < len; i++) + { + solModifiers[i].getCurrentSol().select_all = true; + } + }; + Runtime.prototype.pushCleanSol = function (solModifiers) + { + var i, len; + for (i = 0, len = solModifiers.length; i < len; i++) + { + solModifiers[i].pushCleanSol(); + } + }; + Runtime.prototype.pushCopySol = function (solModifiers) + { + var i, len; + for (i = 0, len = solModifiers.length; i < len; i++) + { + solModifiers[i].pushCopySol(); + } + }; + Runtime.prototype.popSol = function (solModifiers) + { + var i, len; + for (i = 0, len = solModifiers.length; i < len; i++) + { + solModifiers[i].popSol(); + } + }; + Runtime.prototype.updateAllCells = function (type) + { + if (!type.any_cell_changed) + return; // all instances must already be up-to-date + var i, len, instances = type.instances; + for (i = 0, len = instances.length; i < len; ++i) + { + instances[i].update_collision_cell(); + } + var createRow = this.createRow; + for (i = 0, len = createRow.length; i < len; ++i) + { + if (createRow[i].type === type) + createRow[i].update_collision_cell(); + } + type.any_cell_changed = false; + }; + Runtime.prototype.getCollisionCandidates = function (layer, rtype, bbox, candidates) + { + var i, len, t; + var is_parallaxed = (layer ? (layer.parallaxX !== 1 || layer.parallaxY !== 1) : false); + if (rtype.is_family) + { + for (i = 0, len = rtype.members.length; i < len; ++i) + { + t = rtype.members[i]; + if (is_parallaxed || t.any_instance_parallaxed) + { + cr.appendArray(candidates, t.instances); + } + else + { + this.updateAllCells(t); + t.collision_grid.queryRange(bbox, candidates); + } + } + } + else + { + if (is_parallaxed || rtype.any_instance_parallaxed) + { + cr.appendArray(candidates, rtype.instances); + } + else + { + this.updateAllCells(rtype); + rtype.collision_grid.queryRange(bbox, candidates); + } + } + }; + Runtime.prototype.getTypesCollisionCandidates = function (layer, types, bbox, candidates) + { + var i, len; + for (i = 0, len = types.length; i < len; ++i) + { + this.getCollisionCandidates(layer, types[i], bbox, candidates); + } + }; + Runtime.prototype.getSolidCollisionCandidates = function (layer, bbox, candidates) + { + var solid = this.getSolidBehavior(); + if (!solid) + return null; + this.getTypesCollisionCandidates(layer, solid.my_types, bbox, candidates); + }; + Runtime.prototype.getJumpthruCollisionCandidates = function (layer, bbox, candidates) + { + var jumpthru = this.getJumpthruBehavior(); + if (!jumpthru) + return null; + this.getTypesCollisionCandidates(layer, jumpthru.my_types, bbox, candidates); + }; + Runtime.prototype.testAndSelectCanvasPointOverlap = function (type, ptx, pty, inverted) + { + var sol = type.getCurrentSol(); + var i, j, inst, len; + var orblock = this.getCurrentEventStack().current_event.orblock; + var lx, ly, arr; + if (sol.select_all) + { + if (!inverted) + { + sol.select_all = false; + cr.clearArray(sol.instances); // clear contents + } + for (i = 0, len = type.instances.length; i < len; i++) + { + inst = type.instances[i]; + inst.update_bbox(); + lx = inst.layer.canvasToLayer(ptx, pty, true); + ly = inst.layer.canvasToLayer(ptx, pty, false); + if (inst.contains_pt(lx, ly)) + { + if (inverted) + return false; + else + sol.instances.push(inst); + } + else if (orblock) + sol.else_instances.push(inst); + } + } + else + { + j = 0; + arr = (orblock ? sol.else_instances : sol.instances); + for (i = 0, len = arr.length; i < len; i++) + { + inst = arr[i]; + inst.update_bbox(); + lx = inst.layer.canvasToLayer(ptx, pty, true); + ly = inst.layer.canvasToLayer(ptx, pty, false); + if (inst.contains_pt(lx, ly)) + { + if (inverted) + return false; + else if (orblock) + sol.instances.push(inst); + else + { + sol.instances[j] = sol.instances[i]; + j++; + } + } + } + if (!inverted) + arr.length = j; + } + type.applySolToContainer(); + if (inverted) + return true; // did not find anything overlapping + else + return sol.hasObjects(); + }; + Runtime.prototype.testOverlap = function (a, b) + { + if (!a || !b || a === b || !a.collisionsEnabled || !b.collisionsEnabled) + return false; + a.update_bbox(); + b.update_bbox(); + var layera = a.layer; + var layerb = b.layer; + var different_layers = (layera !== layerb && (layera.parallaxX !== layerb.parallaxX || layerb.parallaxY !== layerb.parallaxY || layera.scale !== layerb.scale || layera.angle !== layerb.angle || layera.zoomRate !== layerb.zoomRate)); + var i, len, i2, i21, x, y, haspolya, haspolyb, polya, polyb; + if (!different_layers) // same layers: easy check + { + if (!a.bbox.intersects_rect(b.bbox)) + return false; + if (!a.bquad.intersects_quad(b.bquad)) + return false; + if (a.tilemap_exists && b.tilemap_exists) + return false; + if (a.tilemap_exists) + return this.testTilemapOverlap(a, b); + if (b.tilemap_exists) + return this.testTilemapOverlap(b, a); + haspolya = (a.collision_poly && !a.collision_poly.is_empty()); + haspolyb = (b.collision_poly && !b.collision_poly.is_empty()); + if (!haspolya && !haspolyb) + return true; + if (haspolya) + { + a.collision_poly.cache_poly(a.width, a.height, a.angle); + polya = a.collision_poly; + } + else + { + this.temp_poly.set_from_quad(a.bquad, a.x, a.y, a.width, a.height); + polya = this.temp_poly; + } + if (haspolyb) + { + b.collision_poly.cache_poly(b.width, b.height, b.angle); + polyb = b.collision_poly; + } + else + { + this.temp_poly.set_from_quad(b.bquad, b.x, b.y, b.width, b.height); + polyb = this.temp_poly; + } + return polya.intersects_poly(polyb, b.x - a.x, b.y - a.y); + } + else // different layers: need to do full translated check + { + haspolya = (a.collision_poly && !a.collision_poly.is_empty()); + haspolyb = (b.collision_poly && !b.collision_poly.is_empty()); + if (haspolya) + { + a.collision_poly.cache_poly(a.width, a.height, a.angle); + this.temp_poly.set_from_poly(a.collision_poly); + } + else + { + this.temp_poly.set_from_quad(a.bquad, a.x, a.y, a.width, a.height); + } + polya = this.temp_poly; + if (haspolyb) + { + b.collision_poly.cache_poly(b.width, b.height, b.angle); + this.temp_poly2.set_from_poly(b.collision_poly); + } + else + { + this.temp_poly2.set_from_quad(b.bquad, b.x, b.y, b.width, b.height); + } + polyb = this.temp_poly2; + for (i = 0, len = polya.pts_count; i < len; i++) + { + i2 = i * 2; + i21 = i2 + 1; + x = polya.pts_cache[i2]; + y = polya.pts_cache[i21]; + polya.pts_cache[i2] = layera.layerToCanvas(x + a.x, y + a.y, true); + polya.pts_cache[i21] = layera.layerToCanvas(x + a.x, y + a.y, false); + } + polya.update_bbox(); + for (i = 0, len = polyb.pts_count; i < len; i++) + { + i2 = i * 2; + i21 = i2 + 1; + x = polyb.pts_cache[i2]; + y = polyb.pts_cache[i21]; + polyb.pts_cache[i2] = layerb.layerToCanvas(x + b.x, y + b.y, true); + polyb.pts_cache[i21] = layerb.layerToCanvas(x + b.x, y + b.y, false); + } + polyb.update_bbox(); + return polya.intersects_poly(polyb, 0, 0); + } + }; + var tmpQuad = new cr.quad(); + var tmpRect = new cr.rect(0, 0, 0, 0); + var collrect_candidates = []; + Runtime.prototype.testTilemapOverlap = function (tm, a) + { + var i, len, c, rc; + var bbox = a.bbox; + var tmx = tm.x; + var tmy = tm.y; + tm.getCollisionRectCandidates(bbox, collrect_candidates); + var collrects = collrect_candidates; + var haspolya = (a.collision_poly && !a.collision_poly.is_empty()); + for (i = 0, len = collrects.length; i < len; ++i) + { + c = collrects[i]; + rc = c.rc; + if (bbox.intersects_rect_off(rc, tmx, tmy)) + { + tmpQuad.set_from_rect(rc); + tmpQuad.offset(tmx, tmy); + if (tmpQuad.intersects_quad(a.bquad)) + { + if (haspolya) + { + a.collision_poly.cache_poly(a.width, a.height, a.angle); + if (c.poly) + { + if (c.poly.intersects_poly(a.collision_poly, a.x - (tmx + rc.left), a.y - (tmy + rc.top))) + { + cr.clearArray(collrect_candidates); + return true; + } + } + else + { + this.temp_poly.set_from_quad(tmpQuad, 0, 0, rc.right - rc.left, rc.bottom - rc.top); + if (this.temp_poly.intersects_poly(a.collision_poly, a.x, a.y)) + { + cr.clearArray(collrect_candidates); + return true; + } + } + } + else + { + if (c.poly) + { + this.temp_poly.set_from_quad(a.bquad, 0, 0, a.width, a.height); + if (c.poly.intersects_poly(this.temp_poly, -(tmx + rc.left), -(tmy + rc.top))) + { + cr.clearArray(collrect_candidates); + return true; + } + } + else + { + cr.clearArray(collrect_candidates); + return true; + } + } + } + } + } + cr.clearArray(collrect_candidates); + return false; + }; + Runtime.prototype.testRectOverlap = function (r, b) + { + if (!b || !b.collisionsEnabled) + return false; + b.update_bbox(); + var layerb = b.layer; + var haspolyb, polyb; + if (!b.bbox.intersects_rect(r)) + return false; + if (b.tilemap_exists) + { + b.getCollisionRectCandidates(r, collrect_candidates); + var collrects = collrect_candidates; + var i, len, c, tilerc; + var tmx = b.x; + var tmy = b.y; + for (i = 0, len = collrects.length; i < len; ++i) + { + c = collrects[i]; + tilerc = c.rc; + if (r.intersects_rect_off(tilerc, tmx, tmy)) + { + if (c.poly) + { + this.temp_poly.set_from_rect(r, 0, 0); + if (c.poly.intersects_poly(this.temp_poly, -(tmx + tilerc.left), -(tmy + tilerc.top))) + { + cr.clearArray(collrect_candidates); + return true; + } + } + else + { + cr.clearArray(collrect_candidates); + return true; + } + } + } + cr.clearArray(collrect_candidates); + return false; + } + else + { + tmpQuad.set_from_rect(r); + if (!b.bquad.intersects_quad(tmpQuad)) + return false; + haspolyb = (b.collision_poly && !b.collision_poly.is_empty()); + if (!haspolyb) + return true; + b.collision_poly.cache_poly(b.width, b.height, b.angle); + tmpQuad.offset(-r.left, -r.top); + this.temp_poly.set_from_quad(tmpQuad, 0, 0, 1, 1); + return b.collision_poly.intersects_poly(this.temp_poly, r.left - b.x, r.top - b.y); + } + }; + Runtime.prototype.testSegmentOverlap = function (x1, y1, x2, y2, b) + { + if (!b || !b.collisionsEnabled) + return false; + b.update_bbox(); + var layerb = b.layer; + var haspolyb, polyb; + tmpRect.set(cr.min(x1, x2), cr.min(y1, y2), cr.max(x1, x2), cr.max(y1, y2)); + if (!b.bbox.intersects_rect(tmpRect)) + return false; + if (b.tilemap_exists) + { + b.getCollisionRectCandidates(tmpRect, collrect_candidates); + var collrects = collrect_candidates; + var i, len, c, tilerc; + var tmx = b.x; + var tmy = b.y; + for (i = 0, len = collrects.length; i < len; ++i) + { + c = collrects[i]; + tilerc = c.rc; + if (tmpRect.intersects_rect_off(tilerc, tmx, tmy)) + { + tmpQuad.set_from_rect(tilerc); + tmpQuad.offset(tmx, tmy); + if (tmpQuad.intersects_segment(x1, y1, x2, y2)) + { + if (c.poly) + { + if (c.poly.intersects_segment(tmx + tilerc.left, tmy + tilerc.top, x1, y1, x2, y2)) + { + cr.clearArray(collrect_candidates); + return true; + } + } + else + { + cr.clearArray(collrect_candidates); + return true; + } + } + } + } + cr.clearArray(collrect_candidates); + return false; + } + else + { + if (!b.bquad.intersects_segment(x1, y1, x2, y2)) + return false; + haspolyb = (b.collision_poly && !b.collision_poly.is_empty()); + if (!haspolyb) + return true; + b.collision_poly.cache_poly(b.width, b.height, b.angle); + return b.collision_poly.intersects_segment(b.x, b.y, x1, y1, x2, y2); + } + }; + Runtime.prototype.typeHasBehavior = function (t, b) + { + if (!b) + return false; + var i, len, j, lenj, f; + for (i = 0, len = t.behaviors.length; i < len; i++) + { + if (t.behaviors[i].behavior instanceof b) + return true; + } + if (!t.is_family) + { + for (i = 0, len = t.families.length; i < len; i++) + { + f = t.families[i]; + for (j = 0, lenj = f.behaviors.length; j < lenj; j++) + { + if (f.behaviors[j].behavior instanceof b) + return true; + } + } + } + return false; + }; + Runtime.prototype.typeHasNoSaveBehavior = function (t) + { + return this.typeHasBehavior(t, cr.behaviors.NoSave); + }; + Runtime.prototype.typeHasPersistBehavior = function (t) + { + return this.typeHasBehavior(t, cr.behaviors.Persist); + }; + Runtime.prototype.getSolidBehavior = function () + { + return this.solidBehavior; + }; + Runtime.prototype.getJumpthruBehavior = function () + { + return this.jumpthruBehavior; + }; + var candidates = []; + Runtime.prototype.testOverlapSolid = function (inst) + { + var i, len, s; + inst.update_bbox(); + this.getSolidCollisionCandidates(inst.layer, inst.bbox, candidates); + for (i = 0, len = candidates.length; i < len; ++i) + { + s = candidates[i]; + if (!s.extra["solidEnabled"]) + continue; + if (this.testOverlap(inst, s)) + { + cr.clearArray(candidates); + return s; + } + } + cr.clearArray(candidates); + return null; + }; + Runtime.prototype.testRectOverlapSolid = function (r) + { + var i, len, s; + this.getSolidCollisionCandidates(null, r, candidates); + for (i = 0, len = candidates.length; i < len; ++i) + { + s = candidates[i]; + if (!s.extra["solidEnabled"]) + continue; + if (this.testRectOverlap(r, s)) + { + cr.clearArray(candidates); + return s; + } + } + cr.clearArray(candidates); + return null; + }; + var jumpthru_array_ret = []; + Runtime.prototype.testOverlapJumpThru = function (inst, all) + { + var ret = null; + if (all) + { + ret = jumpthru_array_ret; + cr.clearArray(ret); + } + inst.update_bbox(); + this.getJumpthruCollisionCandidates(inst.layer, inst.bbox, candidates); + var i, len, j; + for (i = 0, len = candidates.length; i < len; ++i) + { + j = candidates[i]; + if (!j.extra["jumpthruEnabled"]) + continue; + if (this.testOverlap(inst, j)) + { + if (all) + ret.push(j); + else + { + cr.clearArray(candidates); + return j; + } + } + } + cr.clearArray(candidates); + return ret; + }; + Runtime.prototype.pushOutSolid = function (inst, xdir, ydir, dist, include_jumpthrus, specific_jumpthru) + { + var push_dist = dist || 50; + var oldx = inst.x + var oldy = inst.y; + var i; + var last_overlapped = null, secondlast_overlapped = null; + for (i = 0; i < push_dist; i++) + { + inst.x = (oldx + (xdir * i)); + inst.y = (oldy + (ydir * i)); + inst.set_bbox_changed(); + if (!this.testOverlap(inst, last_overlapped)) + { + last_overlapped = this.testOverlapSolid(inst); + if (last_overlapped) + secondlast_overlapped = last_overlapped; + if (!last_overlapped) + { + if (include_jumpthrus) + { + if (specific_jumpthru) + last_overlapped = (this.testOverlap(inst, specific_jumpthru) ? specific_jumpthru : null); + else + last_overlapped = this.testOverlapJumpThru(inst); + if (last_overlapped) + secondlast_overlapped = last_overlapped; + } + if (!last_overlapped) + { + if (secondlast_overlapped) + this.pushInFractional(inst, xdir, ydir, secondlast_overlapped, 16); + return true; + } + } + } + } + inst.x = oldx; + inst.y = oldy; + inst.set_bbox_changed(); + return false; + }; + Runtime.prototype.pushOutSolidAxis = function(inst, xdir, ydir, dist) + { + dist = dist || 50; + var oldX = inst.x; + var oldY = inst.y; + var lastOverlapped = null; + var secondLastOverlapped = null; + var i, which, sign; + for (i = 0; i < dist; ++i) + { + for (which = 0; which < 2; ++which) + { + sign = which * 2 - 1; // -1 or 1 + inst.x = oldX + (xdir * i * sign); + inst.y = oldY + (ydir * i * sign); + inst.set_bbox_changed(); + if (!this.testOverlap(inst, lastOverlapped)) + { + lastOverlapped = this.testOverlapSolid(inst); + if (lastOverlapped) + { + secondLastOverlapped = lastOverlapped; + } + else + { + if (secondLastOverlapped) + this.pushInFractional(inst, xdir * sign, ydir * sign, secondLastOverlapped, 16); + return true; + } + } + } + } + inst.x = oldX; + inst.y = oldY; + inst.set_bbox_changed(); + return false; + }; + Runtime.prototype.pushOut = function (inst, xdir, ydir, dist, otherinst) + { + var push_dist = dist || 50; + var oldx = inst.x + var oldy = inst.y; + var i; + for (i = 0; i < push_dist; i++) + { + inst.x = (oldx + (xdir * i)); + inst.y = (oldy + (ydir * i)); + inst.set_bbox_changed(); + if (!this.testOverlap(inst, otherinst)) + return true; + } + inst.x = oldx; + inst.y = oldy; + inst.set_bbox_changed(); + return false; + }; + Runtime.prototype.pushInFractional = function (inst, xdir, ydir, obj, limit) + { + var divisor = 2; + var frac; + var forward = false; + var overlapping = false; + var bestx = inst.x; + var besty = inst.y; + while (divisor <= limit) + { + frac = 1 / divisor; + divisor *= 2; + inst.x += xdir * frac * (forward ? 1 : -1); + inst.y += ydir * frac * (forward ? 1 : -1); + inst.set_bbox_changed(); + if (this.testOverlap(inst, obj)) + { + forward = true; + overlapping = true; + } + else + { + forward = false; + overlapping = false; + bestx = inst.x; + besty = inst.y; + } + } + if (overlapping) + { + inst.x = bestx; + inst.y = besty; + inst.set_bbox_changed(); + } + }; + Runtime.prototype.pushOutSolidNearest = function (inst, max_dist_) + { + var max_dist = (cr.is_undefined(max_dist_) ? 100 : max_dist_); + var dist = 0; + var oldx = inst.x + var oldy = inst.y; + var dir = 0; + var dx = 0, dy = 0; + var last_overlapped = this.testOverlapSolid(inst); + if (!last_overlapped) + return true; // already clear of solids + while (dist <= max_dist) + { + switch (dir) { + case 0: dx = 0; dy = -1; dist++; break; + case 1: dx = 1; dy = -1; break; + case 2: dx = 1; dy = 0; break; + case 3: dx = 1; dy = 1; break; + case 4: dx = 0; dy = 1; break; + case 5: dx = -1; dy = 1; break; + case 6: dx = -1; dy = 0; break; + case 7: dx = -1; dy = -1; break; + } + dir = (dir + 1) % 8; + inst.x = cr.floor(oldx + (dx * dist)); + inst.y = cr.floor(oldy + (dy * dist)); + inst.set_bbox_changed(); + if (!this.testOverlap(inst, last_overlapped)) + { + last_overlapped = this.testOverlapSolid(inst); + if (!last_overlapped) + return true; + } + } + inst.x = oldx; + inst.y = oldy; + inst.set_bbox_changed(); + return false; + }; + Runtime.prototype.registerCollision = function (a, b) + { + if (!a.collisionsEnabled || !b.collisionsEnabled) + return; + this.registered_collisions.push([a, b]); + }; + Runtime.prototype.addRegisteredCollisionCandidates = function (inst, otherType, arr) + { + var i, len, r, otherInst; + for (i = 0, len = this.registered_collisions.length; i < len; ++i) + { + r = this.registered_collisions[i]; + if (r[0] === inst) + otherInst = r[1]; + else if (r[1] === inst) + otherInst = r[0]; + else + continue; + if (otherType.is_family) + { + if (otherType.members.indexOf(otherType) === -1) + continue; + } + else + { + if (otherInst.type !== otherType) + continue; + } + if (arr.indexOf(otherInst) === -1) + arr.push(otherInst); + } + }; + Runtime.prototype.checkRegisteredCollision = function (a, b) + { + var i, len, x; + for (i = 0, len = this.registered_collisions.length; i < len; i++) + { + x = this.registered_collisions[i]; + if ((x[0] === a && x[1] === b) || (x[0] === b && x[1] === a)) + return true; + } + return false; + }; + Runtime.prototype.calculateSolidBounceAngle = function(inst, startx, starty, obj) + { + var objx = inst.x; + var objy = inst.y; + var radius = cr.max(10, cr.distanceTo(startx, starty, objx, objy)); + var startangle = cr.angleTo(startx, starty, objx, objy); + var firstsolid = obj || this.testOverlapSolid(inst); + if (!firstsolid) + return cr.clamp_angle(startangle + cr.PI); + var cursolid = firstsolid; + var i, curangle, anticlockwise_free_angle, clockwise_free_angle; + var increment = cr.to_radians(5); // 5 degree increments + for (i = 1; i < 36; i++) + { + curangle = startangle - i * increment; + inst.x = startx + Math.cos(curangle) * radius; + inst.y = starty + Math.sin(curangle) * radius; + inst.set_bbox_changed(); + if (!this.testOverlap(inst, cursolid)) + { + cursolid = obj ? null : this.testOverlapSolid(inst); + if (!cursolid) + { + anticlockwise_free_angle = curangle; + break; + } + } + } + if (i === 36) + anticlockwise_free_angle = cr.clamp_angle(startangle + cr.PI); + var cursolid = firstsolid; + for (i = 1; i < 36; i++) + { + curangle = startangle + i * increment; + inst.x = startx + Math.cos(curangle) * radius; + inst.y = starty + Math.sin(curangle) * radius; + inst.set_bbox_changed(); + if (!this.testOverlap(inst, cursolid)) + { + cursolid = obj ? null : this.testOverlapSolid(inst); + if (!cursolid) + { + clockwise_free_angle = curangle; + break; + } + } + } + if (i === 36) + clockwise_free_angle = cr.clamp_angle(startangle + cr.PI); + inst.x = objx; + inst.y = objy; + inst.set_bbox_changed(); + if (clockwise_free_angle === anticlockwise_free_angle) + return clockwise_free_angle; + var half_diff = cr.angleDiff(clockwise_free_angle, anticlockwise_free_angle) / 2; + var normal; + if (cr.angleClockwise(clockwise_free_angle, anticlockwise_free_angle)) + { + normal = cr.clamp_angle(anticlockwise_free_angle + half_diff + cr.PI); + } + else + { + normal = cr.clamp_angle(clockwise_free_angle + half_diff); + } +; + var vx = Math.cos(startangle); + var vy = Math.sin(startangle); + var nx = Math.cos(normal); + var ny = Math.sin(normal); + var v_dot_n = vx * nx + vy * ny; + var rx = vx - 2 * v_dot_n * nx; + var ry = vy - 2 * v_dot_n * ny; + return cr.angleTo(0, 0, rx, ry); + }; + var triggerSheetIndex = -1; + Runtime.prototype.trigger = function (method, inst, value /* for fast triggers */) + { +; + if (!this.running_layout) + return false; + var sheet = this.running_layout.event_sheet; + if (!sheet) + return false; // no event sheet active; nothing to trigger + var ret = false; + var r, i, len; + triggerSheetIndex++; + var deep_includes = sheet.deep_includes; + for (i = 0, len = deep_includes.length; i < len; ++i) + { + r = this.triggerOnSheet(method, inst, deep_includes[i], value); + ret = ret || r; + } + r = this.triggerOnSheet(method, inst, sheet, value); + ret = ret || r; + triggerSheetIndex--; + return ret; + }; + Runtime.prototype.triggerOnSheet = function (method, inst, sheet, value) + { + var ret = false; + var i, leni, r, families; + if (!inst) + { + r = this.triggerOnSheetForTypeName(method, inst, "system", sheet, value); + ret = ret || r; + } + else + { + r = this.triggerOnSheetForTypeName(method, inst, inst.type.name, sheet, value); + ret = ret || r; + families = inst.type.families; + for (i = 0, leni = families.length; i < leni; ++i) + { + r = this.triggerOnSheetForTypeName(method, inst, families[i].name, sheet, value); + ret = ret || r; + } + } + return ret; // true if anything got triggered + }; + Runtime.prototype.triggerOnSheetForTypeName = function (method, inst, type_name, sheet, value) + { + var i, leni; + var ret = false, ret2 = false; + var trig, index; + var fasttrigger = (typeof value !== "undefined"); + var triggers = (fasttrigger ? sheet.fasttriggers : sheet.triggers); + var obj_entry = triggers[type_name]; + if (!obj_entry) + return ret; + var triggers_list = null; + for (i = 0, leni = obj_entry.length; i < leni; ++i) + { + if (obj_entry[i].method == method) + { + triggers_list = obj_entry[i].evs; + break; + } + } + if (!triggers_list) + return ret; + var triggers_to_fire; + if (fasttrigger) + { + triggers_to_fire = triggers_list[value]; + } + else + { + triggers_to_fire = triggers_list; + } + if (!triggers_to_fire) + return null; + for (i = 0, leni = triggers_to_fire.length; i < leni; i++) + { + trig = triggers_to_fire[i][0]; + index = triggers_to_fire[i][1]; + ret2 = this.executeSingleTrigger(inst, type_name, trig, index); + ret = ret || ret2; + } + return ret; + }; + Runtime.prototype.executeSingleTrigger = function (inst, type_name, trig, index) + { + var i, leni; + var ret = false; + this.trigger_depth++; + var current_event = this.getCurrentEventStack().current_event; + if (current_event) + this.pushCleanSol(current_event.solModifiersIncludingParents); + var isrecursive = (this.trigger_depth > 1); // calling trigger from inside another trigger + this.pushCleanSol(trig.solModifiersIncludingParents); + if (isrecursive) + this.pushLocalVarStack(); + var event_stack = this.pushEventStack(trig); + event_stack.current_event = trig; + if (inst) + { + var sol = this.types[type_name].getCurrentSol(); + sol.select_all = false; + cr.clearArray(sol.instances); + sol.instances[0] = inst; + this.types[type_name].applySolToContainer(); + } + var ok_to_run = true; + if (trig.parent) + { + var temp_parents_arr = event_stack.temp_parents_arr; + var cur_parent = trig.parent; + while (cur_parent) + { + temp_parents_arr.push(cur_parent); + cur_parent = cur_parent.parent; + } + temp_parents_arr.reverse(); + for (i = 0, leni = temp_parents_arr.length; i < leni; i++) + { + if (!temp_parents_arr[i].run_pretrigger()) // parent event failed + { + ok_to_run = false; + break; + } + } + } + if (ok_to_run) + { + this.execcount++; + if (trig.orblock) + trig.run_orblocktrigger(index); + else + trig.run(); + ret = ret || event_stack.last_event_true; + } + this.popEventStack(); + if (isrecursive) + this.popLocalVarStack(); + this.popSol(trig.solModifiersIncludingParents); + if (current_event) + this.popSol(current_event.solModifiersIncludingParents); + if (this.hasPendingInstances && this.isInOnDestroy === 0 && triggerSheetIndex === 0 && !this.isRunningEvents) + { + this.ClearDeathRow(); + } + this.trigger_depth--; + return ret; + }; + Runtime.prototype.getCurrentCondition = function () + { + var evinfo = this.getCurrentEventStack(); + return evinfo.current_event.conditions[evinfo.cndindex]; + }; + Runtime.prototype.getCurrentConditionObjectType = function () + { + var cnd = this.getCurrentCondition(); + return cnd.type; + }; + Runtime.prototype.isCurrentConditionFirst = function () + { + var evinfo = this.getCurrentEventStack(); + return evinfo.cndindex === 0; + }; + Runtime.prototype.getCurrentAction = function () + { + var evinfo = this.getCurrentEventStack(); + return evinfo.current_event.actions[evinfo.actindex]; + }; + Runtime.prototype.pushLocalVarStack = function () + { + this.localvar_stack_index++; + if (this.localvar_stack_index >= this.localvar_stack.length) + this.localvar_stack.push([]); + }; + Runtime.prototype.popLocalVarStack = function () + { +; + this.localvar_stack_index--; + }; + Runtime.prototype.getCurrentLocalVarStack = function () + { + return this.localvar_stack[this.localvar_stack_index]; + }; + Runtime.prototype.pushEventStack = function (cur_event) + { + this.event_stack_index++; + if (this.event_stack_index >= this.event_stack.length) + this.event_stack.push(new cr.eventStackFrame()); + var ret = this.getCurrentEventStack(); + ret.reset(cur_event); + return ret; + }; + Runtime.prototype.popEventStack = function () + { +; + this.event_stack_index--; + }; + Runtime.prototype.getCurrentEventStack = function () + { + return this.event_stack[this.event_stack_index]; + }; + Runtime.prototype.pushLoopStack = function (name_) + { + this.loop_stack_index++; + if (this.loop_stack_index >= this.loop_stack.length) + { + this.loop_stack.push(cr.seal({ name: name_, index: 0, stopped: false })); + } + var ret = this.getCurrentLoop(); + ret.name = name_; + ret.index = 0; + ret.stopped = false; + return ret; + }; + Runtime.prototype.popLoopStack = function () + { +; + this.loop_stack_index--; + }; + Runtime.prototype.getCurrentLoop = function () + { + return this.loop_stack[this.loop_stack_index]; + }; + Runtime.prototype.getEventVariableByName = function (name, scope) + { + var i, leni, j, lenj, sheet, e; + while (scope) + { + for (i = 0, leni = scope.subevents.length; i < leni; i++) + { + e = scope.subevents[i]; + if (e instanceof cr.eventvariable && cr.equals_nocase(name, e.name)) + return e; + } + scope = scope.parent; + } + for (i = 0, leni = this.eventsheets_by_index.length; i < leni; i++) + { + sheet = this.eventsheets_by_index[i]; + for (j = 0, lenj = sheet.events.length; j < lenj; j++) + { + e = sheet.events[j]; + if (e instanceof cr.eventvariable && cr.equals_nocase(name, e.name)) + return e; + } + } + return null; + }; + Runtime.prototype.getLayoutBySid = function (sid_) + { + var i, len; + for (i = 0, len = this.layouts_by_index.length; i < len; i++) + { + if (this.layouts_by_index[i].sid === sid_) + return this.layouts_by_index[i]; + } + return null; + }; + Runtime.prototype.getObjectTypeBySid = function (sid_) + { + var i, len; + for (i = 0, len = this.types_by_index.length; i < len; i++) + { + if (this.types_by_index[i].sid === sid_) + return this.types_by_index[i]; + } + return null; + }; + Runtime.prototype.getGroupBySid = function (sid_) + { + var i, len; + for (i = 0, len = this.allGroups.length; i < len; i++) + { + if (this.allGroups[i].sid === sid_) + return this.allGroups[i]; + } + return null; + }; + Runtime.prototype.doCanvasSnapshot = function (format_, quality_) + { + this.snapshotCanvas = [format_, quality_]; + this.redraw = true; // force redraw so snapshot is always taken + }; + function IsIndexedDBAvailable() + { + try { + return !!window.indexedDB; + } + catch (e) + { + return false; + } + }; + function makeSaveDb(e) + { + var db = e.target.result; + db.createObjectStore("saves", { keyPath: "slot" }); + }; + function IndexedDB_WriteSlot(slot_, data_, oncomplete_, onerror_) + { + try { + var request = indexedDB.open("_C2SaveStates"); + request.onupgradeneeded = makeSaveDb; + request.onerror = onerror_; + request.onsuccess = function (e) + { + var db = e.target.result; + db.onerror = onerror_; + var transaction = db.transaction(["saves"], "readwrite"); + var objectStore = transaction.objectStore("saves"); + var putReq = objectStore.put({"slot": slot_, "data": data_ }); + putReq.onsuccess = oncomplete_; + }; + } + catch (err) + { + onerror_(err); + } + }; + function IndexedDB_ReadSlot(slot_, oncomplete_, onerror_) + { + try { + var request = indexedDB.open("_C2SaveStates"); + request.onupgradeneeded = makeSaveDb; + request.onerror = onerror_; + request.onsuccess = function (e) + { + var db = e.target.result; + db.onerror = onerror_; + var transaction = db.transaction(["saves"]); + var objectStore = transaction.objectStore("saves"); + var readReq = objectStore.get(slot_); + readReq.onsuccess = function (e) + { + if (readReq.result) + oncomplete_(readReq.result["data"]); + else + oncomplete_(null); + }; + }; + } + catch (err) + { + onerror_(err); + } + }; + Runtime.prototype.signalContinuousPreview = function () + { + this.signalledContinuousPreview = true; + }; + function doContinuousPreviewReload() + { + cr.logexport("Reloading for continuous preview"); + if (!!window["c2cocoonjs"]) + { + CocoonJS["App"]["reload"](); + } + else + { + if (window.location.search.indexOf("continuous") > -1) + window.location.reload(true); + else + window.location = window.location + "?continuous"; + } + }; + Runtime.prototype.handleSaveLoad = function () + { + var self = this; + var savingToSlot = this.saveToSlot; + var savingJson = this.lastSaveJson; + var loadingFromSlot = this.loadFromSlot; + var continuous = false; + if (this.signalledContinuousPreview) + { + continuous = true; + savingToSlot = "__c2_continuouspreview"; + this.signalledContinuousPreview = false; + } + if (savingToSlot.length) + { + this.ClearDeathRow(); + savingJson = this.saveToJSONString(); + if (IsIndexedDBAvailable() && !this.isCocoonJs) + { + IndexedDB_WriteSlot(savingToSlot, savingJson, function () + { + cr.logexport("Saved state to IndexedDB storage (" + savingJson.length + " bytes)"); + self.lastSaveJson = savingJson; + self.trigger(cr.system_object.prototype.cnds.OnSaveComplete, null); + self.lastSaveJson = ""; + savingJson = ""; + if (continuous) + doContinuousPreviewReload(); + }, function (e) + { + try { + localStorage.setItem("__c2save_" + savingToSlot, savingJson); + cr.logexport("Saved state to WebStorage (" + savingJson.length + " bytes)"); + self.lastSaveJson = savingJson; + self.trigger(cr.system_object.prototype.cnds.OnSaveComplete, null); + self.lastSaveJson = ""; + savingJson = ""; + if (continuous) + doContinuousPreviewReload(); + } + catch (f) + { + cr.logexport("Failed to save game state: " + e + "; " + f); + self.trigger(cr.system_object.prototype.cnds.OnSaveFailed, null); + } + }); + } + else + { + try { + localStorage.setItem("__c2save_" + savingToSlot, savingJson); + cr.logexport("Saved state to WebStorage (" + savingJson.length + " bytes)"); + self.lastSaveJson = savingJson; + this.trigger(cr.system_object.prototype.cnds.OnSaveComplete, null); + self.lastSaveJson = ""; + savingJson = ""; + if (continuous) + doContinuousPreviewReload(); + } + catch (e) + { + cr.logexport("Error saving to WebStorage: " + e); + self.trigger(cr.system_object.prototype.cnds.OnSaveFailed, null); + } + } + this.saveToSlot = ""; + this.loadFromSlot = ""; + this.loadFromJson = null; + } + if (loadingFromSlot.length) + { + if (IsIndexedDBAvailable() && !this.isCocoonJs) + { + IndexedDB_ReadSlot(loadingFromSlot, function (result_) + { + if (result_) + { + self.loadFromJson = result_; + cr.logexport("Loaded state from IndexedDB storage (" + self.loadFromJson.length + " bytes)"); + } + else + { + self.loadFromJson = localStorage.getItem("__c2save_" + loadingFromSlot) || ""; + cr.logexport("Loaded state from WebStorage (" + self.loadFromJson.length + " bytes)"); + } + self.suspendDrawing = false; + if (!self.loadFromJson) + { + self.loadFromJson = null; + self.trigger(cr.system_object.prototype.cnds.OnLoadFailed, null); + } + }, function (e) + { + self.loadFromJson = localStorage.getItem("__c2save_" + loadingFromSlot) || ""; + cr.logexport("Loaded state from WebStorage (" + self.loadFromJson.length + " bytes)"); + self.suspendDrawing = false; + if (!self.loadFromJson) + { + self.loadFromJson = null; + self.trigger(cr.system_object.prototype.cnds.OnLoadFailed, null); + } + }); + } + else + { + try { + this.loadFromJson = localStorage.getItem("__c2save_" + loadingFromSlot) || ""; + cr.logexport("Loaded state from WebStorage (" + this.loadFromJson.length + " bytes)"); + } + catch (e) + { + this.loadFromJson = null; + } + this.suspendDrawing = false; + if (!self.loadFromJson) + { + self.loadFromJson = null; + self.trigger(cr.system_object.prototype.cnds.OnLoadFailed, null); + } + } + this.loadFromSlot = ""; + this.saveToSlot = ""; + } + if (this.loadFromJson !== null) + { + this.ClearDeathRow(); + var ok = this.loadFromJSONString(this.loadFromJson); + if (ok) + { + this.lastSaveJson = this.loadFromJson; + this.trigger(cr.system_object.prototype.cnds.OnLoadComplete, null); + this.lastSaveJson = ""; + } + else + { + self.trigger(cr.system_object.prototype.cnds.OnLoadFailed, null); + } + this.loadFromJson = null; + } + }; + function CopyExtraObject(extra) + { + var p, ret = {}; + for (p in extra) + { + if (extra.hasOwnProperty(p)) + { + if (extra[p] instanceof cr.ObjectSet) + continue; + if (extra[p] && typeof extra[p].c2userdata !== "undefined") + continue; + if (p === "spriteCreatedDestroyCallback") + continue; + ret[p] = extra[p]; + } + } + return ret; + }; + Runtime.prototype.saveToJSONString = function() + { + var i, len, j, lenj, type, layout, typeobj, g, c, a, v, p; + var o = { + "c2save": true, + "version": 1, + "rt": { + "time": this.kahanTime.sum, + "walltime": this.wallTime.sum, + "timescale": this.timescale, + "tickcount": this.tickcount, + "execcount": this.execcount, + "next_uid": this.next_uid, + "running_layout": this.running_layout.sid, + "start_time_offset": (Date.now() - this.start_time) + }, + "types": {}, + "layouts": {}, + "events": { + "groups": {}, + "cnds": {}, + "acts": {}, + "vars": {} + } + }; + for (i = 0, len = this.types_by_index.length; i < len; i++) + { + type = this.types_by_index[i]; + if (type.is_family || this.typeHasNoSaveBehavior(type)) + continue; + typeobj = { + "instances": [] + }; + if (cr.hasAnyOwnProperty(type.extra)) + typeobj["ex"] = CopyExtraObject(type.extra); + for (j = 0, lenj = type.instances.length; j < lenj; j++) + { + typeobj["instances"].push(this.saveInstanceToJSON(type.instances[j])); + } + o["types"][type.sid.toString()] = typeobj; + } + for (i = 0, len = this.layouts_by_index.length; i < len; i++) + { + layout = this.layouts_by_index[i]; + o["layouts"][layout.sid.toString()] = layout.saveToJSON(); + } + var ogroups = o["events"]["groups"]; + for (i = 0, len = this.allGroups.length; i < len; i++) + { + g = this.allGroups[i]; + ogroups[g.sid.toString()] = this.groups_by_name[g.group_name].group_active; + } + var ocnds = o["events"]["cnds"]; + for (p in this.cndsBySid) + { + if (this.cndsBySid.hasOwnProperty(p)) + { + c = this.cndsBySid[p]; + if (cr.hasAnyOwnProperty(c.extra)) + ocnds[p] = { "ex": CopyExtraObject(c.extra) }; + } + } + var oacts = o["events"]["acts"]; + for (p in this.actsBySid) + { + if (this.actsBySid.hasOwnProperty(p)) + { + a = this.actsBySid[p]; + if (cr.hasAnyOwnProperty(a.extra)) + oacts[p] = { "ex": CopyExtraObject(a.extra) }; + } + } + var ovars = o["events"]["vars"]; + for (p in this.varsBySid) + { + if (this.varsBySid.hasOwnProperty(p)) + { + v = this.varsBySid[p]; + if (!v.is_constant && (!v.parent || v.is_static)) + ovars[p] = v.data; + } + } + o["system"] = this.system.saveToJSON(); + return JSON.stringify(o); + }; + Runtime.prototype.refreshUidMap = function () + { + var i, len, type, j, lenj, inst; + this.objectsByUid = {}; + for (i = 0, len = this.types_by_index.length; i < len; i++) + { + type = this.types_by_index[i]; + if (type.is_family) + continue; + for (j = 0, lenj = type.instances.length; j < lenj; j++) + { + inst = type.instances[j]; + this.objectsByUid[inst.uid.toString()] = inst; + } + } + }; + Runtime.prototype.loadFromJSONString = function (str) + { + var o; + try { + o = JSON.parse(str); + } + catch (e) { + return false; + } + if (!o["c2save"]) + return false; // probably not a c2 save state + if (o["version"] > 1) + return false; // from future version of c2; assume not compatible + this.isLoadingState = true; + var rt = o["rt"]; + this.kahanTime.reset(); + this.kahanTime.sum = rt["time"]; + this.wallTime.reset(); + this.wallTime.sum = rt["walltime"] || 0; + this.timescale = rt["timescale"]; + this.tickcount = rt["tickcount"]; + this.execcount = rt["execcount"]; + this.start_time = Date.now() - rt["start_time_offset"]; + var layout_sid = rt["running_layout"]; + if (layout_sid !== this.running_layout.sid) + { + var changeToLayout = this.getLayoutBySid(layout_sid); + if (changeToLayout) + this.doChangeLayout(changeToLayout); + else + return; // layout that was saved on has gone missing (deleted?) + } + var i, len, j, lenj, k, lenk, p, type, existing_insts, load_insts, inst, binst, layout, layer, g, iid, t; + var otypes = o["types"]; + for (p in otypes) + { + if (otypes.hasOwnProperty(p)) + { + type = this.getObjectTypeBySid(parseInt(p, 10)); + if (!type || type.is_family || this.typeHasNoSaveBehavior(type)) + continue; + if (otypes[p]["ex"]) + type.extra = otypes[p]["ex"]; + else + cr.wipe(type.extra); + existing_insts = type.instances; + load_insts = otypes[p]["instances"]; + for (i = 0, len = cr.min(existing_insts.length, load_insts.length); i < len; i++) + { + this.loadInstanceFromJSON(existing_insts[i], load_insts[i]); + } + for (i = load_insts.length, len = existing_insts.length; i < len; i++) + this.DestroyInstance(existing_insts[i]); + for (i = existing_insts.length, len = load_insts.length; i < len; i++) + { + layer = null; + if (type.plugin.is_world) + { + layer = this.running_layout.getLayerBySid(load_insts[i]["w"]["l"]); + if (!layer) + continue; + } + inst = this.createInstanceFromInit(type.default_instance, layer, false, 0, 0, true); + this.loadInstanceFromJSON(inst, load_insts[i]); + } + type.stale_iids = true; + } + } + this.ClearDeathRow(); + this.refreshUidMap(); + var olayouts = o["layouts"]; + for (p in olayouts) + { + if (olayouts.hasOwnProperty(p)) + { + layout = this.getLayoutBySid(parseInt(p, 10)); + if (!layout) + continue; // must've gone missing + layout.loadFromJSON(olayouts[p]); + } + } + var ogroups = o["events"]["groups"]; + for (p in ogroups) + { + if (ogroups.hasOwnProperty(p)) + { + g = this.getGroupBySid(parseInt(p, 10)); + if (g && this.groups_by_name[g.group_name]) + this.groups_by_name[g.group_name].setGroupActive(ogroups[p]); + } + } + var ocnds = o["events"]["cnds"]; + for (p in this.cndsBySid) + { + if (this.cndsBySid.hasOwnProperty(p)) + { + if (ocnds.hasOwnProperty(p)) + { + this.cndsBySid[p].extra = ocnds[p]["ex"]; + } + else + { + this.cndsBySid[p].extra = {}; + } + } + } + var oacts = o["events"]["acts"]; + for (p in this.actsBySid) + { + if (this.actsBySid.hasOwnProperty(p)) + { + if (oacts.hasOwnProperty(p)) + { + this.actsBySid[p].extra = oacts[p]["ex"]; + } + else + { + this.actsBySid[p].extra = {}; + } + } + } + var ovars = o["events"]["vars"]; + for (p in ovars) + { + if (ovars.hasOwnProperty(p) && this.varsBySid.hasOwnProperty(p)) + { + this.varsBySid[p].data = ovars[p]; + } + } + this.next_uid = rt["next_uid"]; + this.isLoadingState = false; + for (i = 0, len = this.fireOnCreateAfterLoad.length; i < len; ++i) + { + inst = this.fireOnCreateAfterLoad[i]; + this.trigger(Object.getPrototypeOf(inst.type.plugin).cnds.OnCreated, inst); + } + cr.clearArray(this.fireOnCreateAfterLoad); + this.system.loadFromJSON(o["system"]); + for (i = 0, len = this.types_by_index.length; i < len; i++) + { + type = this.types_by_index[i]; + if (type.is_family || this.typeHasNoSaveBehavior(type)) + continue; + for (j = 0, lenj = type.instances.length; j < lenj; j++) + { + inst = type.instances[j]; + if (type.is_contained) + { + iid = inst.get_iid(); + cr.clearArray(inst.siblings); + for (k = 0, lenk = type.container.length; k < lenk; k++) + { + t = type.container[k]; + if (type === t) + continue; +; + inst.siblings.push(t.instances[iid]); + } + } + if (inst.afterLoad) + inst.afterLoad(); + if (inst.behavior_insts) + { + for (k = 0, lenk = inst.behavior_insts.length; k < lenk; k++) + { + binst = inst.behavior_insts[k]; + if (binst.afterLoad) + binst.afterLoad(); + } + } + } + } + this.redraw = true; + return true; + }; + Runtime.prototype.saveInstanceToJSON = function(inst, state_only) + { + var i, len, world, behinst, et; + var type = inst.type; + var plugin = type.plugin; + var o = {}; + if (state_only) + o["c2"] = true; // mark as known json data from Construct 2 + else + o["uid"] = inst.uid; + if (cr.hasAnyOwnProperty(inst.extra)) + o["ex"] = CopyExtraObject(inst.extra); + if (inst.instance_vars && inst.instance_vars.length) + { + o["ivs"] = {}; + for (i = 0, len = inst.instance_vars.length; i < len; i++) + { + o["ivs"][inst.type.instvar_sids[i].toString()] = inst.instance_vars[i]; + } + } + if (plugin.is_world) + { + world = { + "x": inst.x, + "y": inst.y, + "w": inst.width, + "h": inst.height, + "l": inst.layer.sid, + "zi": inst.get_zindex() + }; + if (inst.angle !== 0) + world["a"] = inst.angle; + if (inst.opacity !== 1) + world["o"] = inst.opacity; + if (inst.hotspotX !== 0.5) + world["hX"] = inst.hotspotX; + if (inst.hotspotY !== 0.5) + world["hY"] = inst.hotspotY; + if (inst.blend_mode !== 0) + world["bm"] = inst.blend_mode; + if (!inst.visible) + world["v"] = inst.visible; + if (!inst.collisionsEnabled) + world["ce"] = inst.collisionsEnabled; + if (inst.my_timescale !== -1) + world["mts"] = inst.my_timescale; + if (type.effect_types.length) + { + world["fx"] = []; + for (i = 0, len = type.effect_types.length; i < len; i++) + { + et = type.effect_types[i]; + world["fx"].push({"name": et.name, + "active": inst.active_effect_flags[et.index], + "params": inst.effect_params[et.index] }); + } + } + o["w"] = world; + } + if (inst.behavior_insts && inst.behavior_insts.length) + { + o["behs"] = {}; + for (i = 0, len = inst.behavior_insts.length; i < len; i++) + { + behinst = inst.behavior_insts[i]; + if (behinst.saveToJSON) + o["behs"][behinst.type.sid.toString()] = behinst.saveToJSON(); + } + } + if (inst.saveToJSON) + o["data"] = inst.saveToJSON(); + return o; + }; + Runtime.prototype.getInstanceVarIndexBySid = function (type, sid_) + { + var i, len; + for (i = 0, len = type.instvar_sids.length; i < len; i++) + { + if (type.instvar_sids[i] === sid_) + return i; + } + return -1; + }; + Runtime.prototype.getBehaviorIndexBySid = function (inst, sid_) + { + var i, len; + for (i = 0, len = inst.behavior_insts.length; i < len; i++) + { + if (inst.behavior_insts[i].type.sid === sid_) + return i; + } + return -1; + }; + Runtime.prototype.loadInstanceFromJSON = function(inst, o, state_only) + { + var p, i, len, iv, oivs, world, fxindex, obehs, behindex, value; + var oldlayer; + var type = inst.type; + var plugin = type.plugin; + if (state_only) + { + if (!o["c2"]) + return; + } + else + inst.uid = o["uid"]; + if (o["ex"]) + inst.extra = o["ex"]; + else + cr.wipe(inst.extra); + oivs = o["ivs"]; + if (oivs) + { + for (p in oivs) + { + if (oivs.hasOwnProperty(p)) + { + iv = this.getInstanceVarIndexBySid(type, parseInt(p, 10)); + if (iv < 0 || iv >= inst.instance_vars.length) + continue; // must've gone missing + value = oivs[p]; + if (value === null) + value = NaN; + inst.instance_vars[iv] = value; + } + } + } + if (plugin.is_world) + { + world = o["w"]; + if (inst.layer.sid !== world["l"]) + { + oldlayer = inst.layer; + inst.layer = this.running_layout.getLayerBySid(world["l"]); + if (inst.layer) + { + oldlayer.removeFromInstanceList(inst, true); + inst.layer.appendToInstanceList(inst, true); + inst.set_bbox_changed(); + inst.layer.setZIndicesStaleFrom(0); + } + else + { + inst.layer = oldlayer; + if (!state_only) + this.DestroyInstance(inst); + } + } + inst.x = world["x"]; + inst.y = world["y"]; + inst.width = world["w"]; + inst.height = world["h"]; + inst.zindex = world["zi"]; + inst.angle = world.hasOwnProperty("a") ? world["a"] : 0; + inst.opacity = world.hasOwnProperty("o") ? world["o"] : 1; + inst.hotspotX = world.hasOwnProperty("hX") ? world["hX"] : 0.5; + inst.hotspotY = world.hasOwnProperty("hY") ? world["hY"] : 0.5; + inst.visible = world.hasOwnProperty("v") ? world["v"] : true; + inst.collisionsEnabled = world.hasOwnProperty("ce") ? world["ce"] : true; + inst.my_timescale = world.hasOwnProperty("mts") ? world["mts"] : -1; + inst.blend_mode = world.hasOwnProperty("bm") ? world["bm"] : 0;; + inst.compositeOp = cr.effectToCompositeOp(inst.blend_mode); + if (this.gl) + cr.setGLBlend(inst, inst.blend_mode, this.gl); + inst.set_bbox_changed(); + if (world.hasOwnProperty("fx")) + { + for (i = 0, len = world["fx"].length; i < len; i++) + { + fxindex = type.getEffectIndexByName(world["fx"][i]["name"]); + if (fxindex < 0) + continue; // must've gone missing + inst.active_effect_flags[fxindex] = world["fx"][i]["active"]; + inst.effect_params[fxindex] = world["fx"][i]["params"]; + } + } + inst.updateActiveEffects(); + } + obehs = o["behs"]; + if (obehs) + { + for (p in obehs) + { + if (obehs.hasOwnProperty(p)) + { + behindex = this.getBehaviorIndexBySid(inst, parseInt(p, 10)); + if (behindex < 0) + continue; // must've gone missing + inst.behavior_insts[behindex].loadFromJSON(obehs[p]); + } + } + } + if (o["data"]) + inst.loadFromJSON(o["data"]); + }; + Runtime.prototype.fetchLocalFileViaCordova = function (filename, successCallback, errorCallback) + { + var path = cordova["file"]["applicationDirectory"] + "www/" + filename; + window["resolveLocalFileSystemURL"](path, function (entry) + { + entry.file(successCallback, errorCallback); + }, errorCallback); + }; + Runtime.prototype.fetchLocalFileViaCordovaAsText = function (filename, successCallback, errorCallback) + { + this.fetchLocalFileViaCordova(filename, function (file) + { + var reader = new FileReader(); + reader.onload = function (e) + { + successCallback(e.target.result); + }; + reader.onerror = errorCallback; + reader.readAsText(file); + }, errorCallback); + }; + var queuedArrayBufferReads = []; + var activeArrayBufferReads = 0; + var MAX_ARRAYBUFFER_READS = 8; + Runtime.prototype.maybeStartNextArrayBufferRead = function() + { + if (!queuedArrayBufferReads.length) + return; // none left + if (activeArrayBufferReads >= MAX_ARRAYBUFFER_READS) + return; // already got maximum number in-flight + activeArrayBufferReads++; + var job = queuedArrayBufferReads.shift(); + this.doFetchLocalFileViaCordovaAsArrayBuffer(job.filename, job.successCallback, job.errorCallback); + }; + Runtime.prototype.fetchLocalFileViaCordovaAsArrayBuffer = function (filename, successCallback_, errorCallback_) + { + var self = this; + queuedArrayBufferReads.push({ + filename: filename, + successCallback: function (result) + { + activeArrayBufferReads--; + self.maybeStartNextArrayBufferRead(); + successCallback_(result); + }, + errorCallback: function (err) + { + activeArrayBufferReads--; + self.maybeStartNextArrayBufferRead(); + errorCallback_(err); + } + }); + this.maybeStartNextArrayBufferRead(); + }; + Runtime.prototype.doFetchLocalFileViaCordovaAsArrayBuffer = function (filename, successCallback, errorCallback) + { + this.fetchLocalFileViaCordova(filename, function (file) + { + var reader = new FileReader(); + reader.onload = function (e) + { + successCallback(e.target.result); + }; + reader.readAsArrayBuffer(file); + }, errorCallback); + }; + Runtime.prototype.fetchLocalFileViaCordovaAsURL = function (filename, successCallback, errorCallback) + { + var blobType = ""; + var lowername = filename.toLowerCase(); + var ext3 = lowername.substr(lowername.length - 4); + var ext4 = lowername.substr(lowername.length - 5); + if (ext3 === ".mp4") + blobType = "video/mp4"; + else if (ext4 === ".webm") + blobType = "video/webm"; // use video type but hopefully works with audio too + else if (ext3 === ".m4a") + blobType = "audio/mp4"; + else if (ext3 === ".mp3") + blobType = "audio/mpeg"; + this.fetchLocalFileViaCordovaAsArrayBuffer(filename, function (arrayBuffer) + { + var blob = new Blob([arrayBuffer], { type: blobType }); + var url = URL.createObjectURL(blob); + successCallback(url); + }, errorCallback); + }; + Runtime.prototype.isAbsoluteUrl = function (url) + { + return /^(?:[a-z]+:)?\/\//.test(url) || url.substr(0, 5) === "data:" || url.substr(0, 5) === "blob:"; + }; + Runtime.prototype.setImageSrc = function (img, src) + { + if (this.isWKWebView && !this.isAbsoluteUrl(src)) + { + this.fetchLocalFileViaCordovaAsURL(src, function (url) + { + img.src = url; + }, function (err) + { + alert("Failed to load image: " + err); + }); + } + else + { + img.src = src; + } + }; + Runtime.prototype.setCtxImageSmoothingEnabled = function (ctx, e) + { + if (typeof ctx["imageSmoothingEnabled"] !== "undefined") + { + ctx["imageSmoothingEnabled"] = e; + } + else + { + ctx["webkitImageSmoothingEnabled"] = e; + ctx["mozImageSmoothingEnabled"] = e; + ctx["msImageSmoothingEnabled"] = e; + } + }; + cr.runtime = Runtime; + cr.createRuntime = function (canvasid) + { + return new Runtime(document.getElementById(canvasid)); + }; + cr.createDCRuntime = function (w, h) + { + return new Runtime({ "dc": true, "width": w, "height": h }); + }; + window["cr_createRuntime"] = cr.createRuntime; + window["cr_createDCRuntime"] = cr.createDCRuntime; + window["createCocoonJSRuntime"] = function () + { + window["c2cocoonjs"] = true; + var canvas = document.createElement("screencanvas") || document.createElement("canvas"); + canvas.screencanvas = true; + document.body.appendChild(canvas); + var rt = new Runtime(canvas); + window["c2runtime"] = rt; + window.addEventListener("orientationchange", function () { + window["c2runtime"]["setSize"](window.innerWidth, window.innerHeight); + }); + window["c2runtime"]["setSize"](window.innerWidth, window.innerHeight); + return rt; + }; + window["createEjectaRuntime"] = function () + { + var canvas = document.getElementById("canvas"); + var rt = new Runtime(canvas); + window["c2runtime"] = rt; + window["c2runtime"]["setSize"](window.innerWidth, window.innerHeight); + return rt; + }; +}()); +window["cr_getC2Runtime"] = function() +{ + var canvas = document.getElementById("c2canvas"); + if (canvas) + return canvas["c2runtime"]; + else if (window["c2runtime"]) + return window["c2runtime"]; + else + return null; +} +window["cr_getSnapshot"] = function (format_, quality_) +{ + var runtime = window["cr_getC2Runtime"](); + if (runtime) + runtime.doCanvasSnapshot(format_, quality_); +} +window["cr_sizeCanvas"] = function(w, h) +{ + if (w === 0 || h === 0) + return; + var runtime = window["cr_getC2Runtime"](); + if (runtime) + runtime["setSize"](w, h); +} +window["cr_setSuspended"] = function(s) +{ + var runtime = window["cr_getC2Runtime"](); + if (runtime) + runtime["setSuspended"](s); +} +; +(function() +{ + function Layout(runtime, m) + { + this.runtime = runtime; + this.event_sheet = null; + this.scrollX = (this.runtime.original_width / 2); + this.scrollY = (this.runtime.original_height / 2); + this.scale = 1.0; + this.angle = 0; + this.first_visit = true; + this.name = m[0]; + this.originalWidth = m[1]; + this.originalHeight = m[2]; + this.width = m[1]; + this.height = m[2]; + this.unbounded_scrolling = m[3]; + this.sheetname = m[4]; + this.sid = m[5]; + var lm = m[6]; + var i, len; + this.layers = []; + this.initial_types = []; + for (i = 0, len = lm.length; i < len; i++) + { + var layer = new cr.layer(this, lm[i]); + layer.number = i; + cr.seal(layer); + this.layers.push(layer); + } + var im = m[7]; + this.initial_nonworld = []; + for (i = 0, len = im.length; i < len; i++) + { + var inst = im[i]; + var type = this.runtime.types_by_index[inst[1]]; +; + if (!type.default_instance) + type.default_instance = inst; + this.initial_nonworld.push(inst); + if (this.initial_types.indexOf(type) === -1) + this.initial_types.push(type); + } + this.effect_types = []; + this.active_effect_types = []; + this.shaders_preserve_opaqueness = true; + this.effect_params = []; + for (i = 0, len = m[8].length; i < len; i++) + { + this.effect_types.push({ + id: m[8][i][0], + name: m[8][i][1], + shaderindex: -1, + preservesOpaqueness: false, + active: true, + index: i + }); + this.effect_params.push(m[8][i][2].slice(0)); + } + this.updateActiveEffects(); + this.rcTex = new cr.rect(0, 0, 1, 1); + this.rcTex2 = new cr.rect(0, 0, 1, 1); + this.persist_data = {}; + }; + Layout.prototype.saveObjectToPersist = function (inst) + { + var sidStr = inst.type.sid.toString(); + if (!this.persist_data.hasOwnProperty(sidStr)) + this.persist_data[sidStr] = []; + var type_persist = this.persist_data[sidStr]; + type_persist.push(this.runtime.saveInstanceToJSON(inst)); + }; + Layout.prototype.hasOpaqueBottomLayer = function () + { + var layer = this.layers[0]; + return !layer.transparent && layer.opacity === 1.0 && !layer.forceOwnTexture && layer.visible; + }; + Layout.prototype.updateActiveEffects = function () + { + cr.clearArray(this.active_effect_types); + this.shaders_preserve_opaqueness = true; + var i, len, et; + for (i = 0, len = this.effect_types.length; i < len; i++) + { + et = this.effect_types[i]; + if (et.active) + { + this.active_effect_types.push(et); + if (!et.preservesOpaqueness) + this.shaders_preserve_opaqueness = false; + } + } + }; + Layout.prototype.getEffectByName = function (name_) + { + var i, len, et; + for (i = 0, len = this.effect_types.length; i < len; i++) + { + et = this.effect_types[i]; + if (et.name === name_) + return et; + } + return null; + }; + var created_instances = []; + function sort_by_zindex(a, b) + { + return a.zindex - b.zindex; + }; + var first_layout = true; + Layout.prototype.startRunning = function () + { + if (this.sheetname) + { + this.event_sheet = this.runtime.eventsheets[this.sheetname]; +; + this.event_sheet.updateDeepIncludes(); + } + this.runtime.running_layout = this; + this.width = this.originalWidth; + this.height = this.originalHeight; + this.scrollX = (this.runtime.original_width / 2); + this.scrollY = (this.runtime.original_height / 2); + var i, k, len, lenk, type, type_instances, initial_inst, inst, iid, t, s, p, q, type_data, layer; + for (i = 0, len = this.runtime.types_by_index.length; i < len; i++) + { + type = this.runtime.types_by_index[i]; + if (type.is_family) + continue; // instances are only transferred for their real type + type_instances = type.instances; + for (k = 0, lenk = type_instances.length; k < lenk; k++) + { + inst = type_instances[k]; + if (inst.layer) + { + var num = inst.layer.number; + if (num >= this.layers.length) + num = this.layers.length - 1; + inst.layer = this.layers[num]; + if (inst.layer.instances.indexOf(inst) === -1) + inst.layer.instances.push(inst); + inst.layer.zindices_stale = true; + } + } + } + if (!first_layout) + { + for (i = 0, len = this.layers.length; i < len; ++i) + { + this.layers[i].instances.sort(sort_by_zindex); + } + } + var layer; + cr.clearArray(created_instances); + this.boundScrolling(); + for (i = 0, len = this.layers.length; i < len; i++) + { + layer = this.layers[i]; + layer.createInitialInstances(); // fills created_instances + layer.updateViewport(null); + } + var uids_changed = false; + if (!this.first_visit) + { + for (p in this.persist_data) + { + if (this.persist_data.hasOwnProperty(p)) + { + type = this.runtime.getObjectTypeBySid(parseInt(p, 10)); + if (!type || type.is_family || !this.runtime.typeHasPersistBehavior(type)) + continue; + type_data = this.persist_data[p]; + for (i = 0, len = type_data.length; i < len; i++) + { + layer = null; + if (type.plugin.is_world) + { + layer = this.getLayerBySid(type_data[i]["w"]["l"]); + if (!layer) + continue; + } + inst = this.runtime.createInstanceFromInit(type.default_instance, layer, false, 0, 0, true); + this.runtime.loadInstanceFromJSON(inst, type_data[i]); + uids_changed = true; + created_instances.push(inst); + } + cr.clearArray(type_data); + } + } + for (i = 0, len = this.layers.length; i < len; i++) + { + this.layers[i].instances.sort(sort_by_zindex); + this.layers[i].zindices_stale = true; // in case of duplicates/holes + } + } + if (uids_changed) + { + this.runtime.ClearDeathRow(); + this.runtime.refreshUidMap(); + } + for (i = 0; i < created_instances.length; i++) + { + inst = created_instances[i]; + if (!inst.type.is_contained) + continue; + iid = inst.get_iid(); + for (k = 0, lenk = inst.type.container.length; k < lenk; k++) + { + t = inst.type.container[k]; + if (inst.type === t) + continue; + if (t.instances.length > iid) + inst.siblings.push(t.instances[iid]); + else + { + if (!t.default_instance) + { + } + else + { + s = this.runtime.createInstanceFromInit(t.default_instance, inst.layer, true, inst.x, inst.y, true); + this.runtime.ClearDeathRow(); + t.updateIIDs(); + inst.siblings.push(s); + created_instances.push(s); // come back around and link up its own instances too + } + } + } + } + for (i = 0, len = this.initial_nonworld.length; i < len; i++) + { + initial_inst = this.initial_nonworld[i]; + type = this.runtime.types_by_index[initial_inst[1]]; + if (!type.is_contained) + { + inst = this.runtime.createInstanceFromInit(this.initial_nonworld[i], null, true); + } +; + } + this.runtime.changelayout = null; + this.runtime.ClearDeathRow(); + if (this.runtime.ctx && !this.runtime.isDomFree) + { + for (i = 0, len = this.runtime.types_by_index.length; i < len; i++) + { + t = this.runtime.types_by_index[i]; + if (t.is_family || !t.instances.length || !t.preloadCanvas2D) + continue; + t.preloadCanvas2D(this.runtime.ctx); + } + } + /* + if (this.runtime.glwrap) + { + console.log("Estimated VRAM at layout start: " + this.runtime.glwrap.textureCount() + " textures, approx. " + Math.round(this.runtime.glwrap.estimateVRAM() / 1024) + " kb"); + } + */ + if (this.runtime.isLoadingState) + { + cr.shallowAssignArray(this.runtime.fireOnCreateAfterLoad, created_instances); + } + else + { + for (i = 0, len = created_instances.length; i < len; i++) + { + inst = created_instances[i]; + this.runtime.trigger(Object.getPrototypeOf(inst.type.plugin).cnds.OnCreated, inst); + } + } + cr.clearArray(created_instances); + if (!this.runtime.isLoadingState) + { + this.runtime.trigger(cr.system_object.prototype.cnds.OnLayoutStart, null); + } + this.first_visit = false; + }; + Layout.prototype.createGlobalNonWorlds = function () + { + var i, k, len, initial_inst, inst, type; + for (i = 0, k = 0, len = this.initial_nonworld.length; i < len; i++) + { + initial_inst = this.initial_nonworld[i]; + type = this.runtime.types_by_index[initial_inst[1]]; + if (type.global) + { + if (!type.is_contained) + { + inst = this.runtime.createInstanceFromInit(initial_inst, null, true); + } + } + else + { + this.initial_nonworld[k] = initial_inst; + k++; + } + } + cr.truncateArray(this.initial_nonworld, k); + }; + Layout.prototype.stopRunning = function () + { +; + /* + if (this.runtime.glwrap) + { + console.log("Estimated VRAM at layout end: " + this.runtime.glwrap.textureCount() + " textures, approx. " + Math.round(this.runtime.glwrap.estimateVRAM() / 1024) + " kb"); + } + */ + if (!this.runtime.isLoadingState) + { + this.runtime.trigger(cr.system_object.prototype.cnds.OnLayoutEnd, null); + } + this.runtime.isEndingLayout = true; + cr.clearArray(this.runtime.system.waits); + var i, leni, j, lenj; + var layer_instances, inst, type; + if (!this.first_visit) + { + for (i = 0, leni = this.layers.length; i < leni; i++) + { + this.layers[i].updateZIndices(); + layer_instances = this.layers[i].instances; + for (j = 0, lenj = layer_instances.length; j < lenj; j++) + { + inst = layer_instances[j]; + if (!inst.type.global) + { + if (this.runtime.typeHasPersistBehavior(inst.type)) + this.saveObjectToPersist(inst); + } + } + } + } + for (i = 0, leni = this.layers.length; i < leni; i++) + { + layer_instances = this.layers[i].instances; + for (j = 0, lenj = layer_instances.length; j < lenj; j++) + { + inst = layer_instances[j]; + if (!inst.type.global) + { + this.runtime.DestroyInstance(inst); + } + } + this.runtime.ClearDeathRow(); + cr.clearArray(layer_instances); + this.layers[i].zindices_stale = true; + } + for (i = 0, leni = this.runtime.types_by_index.length; i < leni; i++) + { + type = this.runtime.types_by_index[i]; + if (type.global || type.plugin.is_world || type.plugin.singleglobal || type.is_family) + continue; + for (j = 0, lenj = type.instances.length; j < lenj; j++) + this.runtime.DestroyInstance(type.instances[j]); + this.runtime.ClearDeathRow(); + } + first_layout = false; + this.runtime.isEndingLayout = false; + }; + var temp_rect = new cr.rect(0, 0, 0, 0); + Layout.prototype.recreateInitialObjects = function (type, x1, y1, x2, y2) + { + temp_rect.set(x1, y1, x2, y2); + var i, len; + for (i = 0, len = this.layers.length; i < len; i++) + { + this.layers[i].recreateInitialObjects(type, temp_rect); + } + }; + Layout.prototype.draw = function (ctx) + { + var layout_canvas; + var layout_ctx = ctx; + var ctx_changed = false; + var render_offscreen = !this.runtime.fullscreenScalingQuality; + if (render_offscreen) + { + if (!this.runtime.layout_canvas) + { + this.runtime.layout_canvas = document.createElement("canvas"); + layout_canvas = this.runtime.layout_canvas; + layout_canvas.width = this.runtime.draw_width; + layout_canvas.height = this.runtime.draw_height; + this.runtime.layout_ctx = layout_canvas.getContext("2d"); + ctx_changed = true; + } + layout_canvas = this.runtime.layout_canvas; + layout_ctx = this.runtime.layout_ctx; + if (layout_canvas.width !== this.runtime.draw_width) + { + layout_canvas.width = this.runtime.draw_width; + ctx_changed = true; + } + if (layout_canvas.height !== this.runtime.draw_height) + { + layout_canvas.height = this.runtime.draw_height; + ctx_changed = true; + } + if (ctx_changed) + { + this.runtime.setCtxImageSmoothingEnabled(layout_ctx, this.runtime.linearSampling); + } + } + layout_ctx.globalAlpha = 1; + layout_ctx.globalCompositeOperation = "source-over"; + if (this.runtime.clearBackground && !this.hasOpaqueBottomLayer()) + layout_ctx.clearRect(0, 0, this.runtime.draw_width, this.runtime.draw_height); + var i, len, l; + for (i = 0, len = this.layers.length; i < len; i++) + { + l = this.layers[i]; + if (l.visible && l.opacity > 0 && l.blend_mode !== 11 && (l.instances.length || !l.transparent)) + l.draw(layout_ctx); + else + l.updateViewport(null); // even if not drawing, keep viewport up to date + } + if (render_offscreen) + { + ctx.drawImage(layout_canvas, 0, 0, this.runtime.width, this.runtime.height); + } + }; + Layout.prototype.drawGL_earlyZPass = function (glw) + { + glw.setEarlyZPass(true); + if (!this.runtime.layout_tex) + { + this.runtime.layout_tex = glw.createEmptyTexture(this.runtime.draw_width, this.runtime.draw_height, this.runtime.linearSampling); + } + if (this.runtime.layout_tex.c2width !== this.runtime.draw_width || this.runtime.layout_tex.c2height !== this.runtime.draw_height) + { + glw.deleteTexture(this.runtime.layout_tex); + this.runtime.layout_tex = glw.createEmptyTexture(this.runtime.draw_width, this.runtime.draw_height, this.runtime.linearSampling); + } + glw.setRenderingToTexture(this.runtime.layout_tex); + if (!this.runtime.fullscreenScalingQuality) + { + glw.setSize(this.runtime.draw_width, this.runtime.draw_height); + } + var i, l; + for (i = this.layers.length - 1; i >= 0; --i) + { + l = this.layers[i]; + if (l.visible && l.opacity === 1 && l.shaders_preserve_opaqueness && + l.blend_mode === 0 && (l.instances.length || !l.transparent)) + { + l.drawGL_earlyZPass(glw); + } + else + { + l.updateViewport(null); // even if not drawing, keep viewport up to date + } + } + glw.setEarlyZPass(false); + }; + Layout.prototype.drawGL = function (glw) + { + var render_to_texture = (this.active_effect_types.length > 0 || + this.runtime.uses_background_blending || + !this.runtime.fullscreenScalingQuality || + this.runtime.enableFrontToBack); + if (render_to_texture) + { + if (!this.runtime.layout_tex) + { + this.runtime.layout_tex = glw.createEmptyTexture(this.runtime.draw_width, this.runtime.draw_height, this.runtime.linearSampling); + } + if (this.runtime.layout_tex.c2width !== this.runtime.draw_width || this.runtime.layout_tex.c2height !== this.runtime.draw_height) + { + glw.deleteTexture(this.runtime.layout_tex); + this.runtime.layout_tex = glw.createEmptyTexture(this.runtime.draw_width, this.runtime.draw_height, this.runtime.linearSampling); + } + glw.setRenderingToTexture(this.runtime.layout_tex); + if (!this.runtime.fullscreenScalingQuality) + { + glw.setSize(this.runtime.draw_width, this.runtime.draw_height); + } + } + else + { + if (this.runtime.layout_tex) + { + glw.setRenderingToTexture(null); + glw.deleteTexture(this.runtime.layout_tex); + this.runtime.layout_tex = null; + } + } + if (this.runtime.clearBackground && !this.hasOpaqueBottomLayer()) + glw.clear(0, 0, 0, 0); + var i, len, l; + for (i = 0, len = this.layers.length; i < len; i++) + { + l = this.layers[i]; + if (l.visible && l.opacity > 0 && (l.instances.length || !l.transparent)) + l.drawGL(glw); + else + l.updateViewport(null); // even if not drawing, keep viewport up to date + } + if (render_to_texture) + { + if (this.active_effect_types.length === 0 || + (this.active_effect_types.length === 1 && this.runtime.fullscreenScalingQuality)) + { + if (this.active_effect_types.length === 1) + { + var etindex = this.active_effect_types[0].index; + glw.switchProgram(this.active_effect_types[0].shaderindex); + glw.setProgramParameters(null, // backTex + 1.0 / this.runtime.draw_width, // pixelWidth + 1.0 / this.runtime.draw_height, // pixelHeight + 0.0, 0.0, // destStart + 1.0, 1.0, // destEnd + this.scale, // layerScale + this.angle, // layerAngle + 0.0, 0.0, // viewOrigin + this.runtime.draw_width / 2, this.runtime.draw_height / 2, // scrollPos + this.runtime.kahanTime.sum, // seconds + this.effect_params[etindex]); // fx parameters + if (glw.programIsAnimated(this.active_effect_types[0].shaderindex)) + this.runtime.redraw = true; + } + else + glw.switchProgram(0); + if (!this.runtime.fullscreenScalingQuality) + { + glw.setSize(this.runtime.width, this.runtime.height); + } + glw.setRenderingToTexture(null); // to backbuffer + glw.setDepthTestEnabled(false); // ignore depth buffer, copy full texture + glw.setOpacity(1); + glw.setTexture(this.runtime.layout_tex); + glw.setAlphaBlend(); + glw.resetModelView(); + glw.updateModelView(); + var halfw = this.runtime.width / 2; + var halfh = this.runtime.height / 2; + glw.quad(-halfw, halfh, halfw, halfh, halfw, -halfh, -halfw, -halfh); + glw.setTexture(null); + glw.setDepthTestEnabled(true); // turn depth test back on + } + else + { + this.renderEffectChain(glw, null, null, null); + } + } + }; + Layout.prototype.getRenderTarget = function() + { + if (this.active_effect_types.length > 0 || + this.runtime.uses_background_blending || + !this.runtime.fullscreenScalingQuality || + this.runtime.enableFrontToBack) + { + return this.runtime.layout_tex; + } + else + { + return null; + } + }; + Layout.prototype.getMinLayerScale = function () + { + var m = this.layers[0].getScale(); + var i, len, l; + for (i = 1, len = this.layers.length; i < len; i++) + { + l = this.layers[i]; + if (l.parallaxX === 0 && l.parallaxY === 0) + continue; + if (l.getScale() < m) + m = l.getScale(); + } + return m; + }; + Layout.prototype.scrollToX = function (x) + { + if (!this.unbounded_scrolling) + { + var widthBoundary = (this.runtime.draw_width * (1 / this.getMinLayerScale()) / 2); + if (x > this.width - widthBoundary) + x = this.width - widthBoundary; + if (x < widthBoundary) + x = widthBoundary; + } + if (this.scrollX !== x) + { + this.scrollX = x; + this.runtime.redraw = true; + } + }; + Layout.prototype.scrollToY = function (y) + { + if (!this.unbounded_scrolling) + { + var heightBoundary = (this.runtime.draw_height * (1 / this.getMinLayerScale()) / 2); + if (y > this.height - heightBoundary) + y = this.height - heightBoundary; + if (y < heightBoundary) + y = heightBoundary; + } + if (this.scrollY !== y) + { + this.scrollY = y; + this.runtime.redraw = true; + } + }; + Layout.prototype.boundScrolling = function () + { + this.scrollToX(this.scrollX); + this.scrollToY(this.scrollY); + }; + Layout.prototype.renderEffectChain = function (glw, layer, inst, rendertarget) + { + var active_effect_types = inst ? + inst.active_effect_types : + layer ? + layer.active_effect_types : + this.active_effect_types; + var layerScale = 1, layerAngle = 0, viewOriginLeft = 0, viewOriginTop = 0, viewOriginRight = this.runtime.draw_width, viewOriginBottom = this.runtime.draw_height; + if (inst) + { + layerScale = inst.layer.getScale(); + layerAngle = inst.layer.getAngle(); + viewOriginLeft = inst.layer.viewLeft; + viewOriginTop = inst.layer.viewTop; + viewOriginRight = inst.layer.viewRight; + viewOriginBottom = inst.layer.viewBottom; + } + else if (layer) + { + layerScale = layer.getScale(); + layerAngle = layer.getAngle(); + viewOriginLeft = layer.viewLeft; + viewOriginTop = layer.viewTop; + viewOriginRight = layer.viewRight; + viewOriginBottom = layer.viewBottom; + } + var fx_tex = this.runtime.fx_tex; + var i, len, last, temp, fx_index = 0, other_fx_index = 1; + var y, h; + var windowWidth = this.runtime.draw_width; + var windowHeight = this.runtime.draw_height; + var halfw = windowWidth / 2; + var halfh = windowHeight / 2; + var rcTex = layer ? layer.rcTex : this.rcTex; + var rcTex2 = layer ? layer.rcTex2 : this.rcTex2; + var screenleft = 0, clearleft = 0; + var screentop = 0, cleartop = 0; + var screenright = windowWidth, clearright = windowWidth; + var screenbottom = windowHeight, clearbottom = windowHeight; + var boxExtendHorizontal = 0; + var boxExtendVertical = 0; + var inst_layer_angle = inst ? inst.layer.getAngle() : 0; + if (inst) + { + for (i = 0, len = active_effect_types.length; i < len; i++) + { + boxExtendHorizontal += glw.getProgramBoxExtendHorizontal(active_effect_types[i].shaderindex); + boxExtendVertical += glw.getProgramBoxExtendVertical(active_effect_types[i].shaderindex); + } + var bbox = inst.bbox; + screenleft = layer.layerToCanvas(bbox.left, bbox.top, true, true); + screentop = layer.layerToCanvas(bbox.left, bbox.top, false, true); + screenright = layer.layerToCanvas(bbox.right, bbox.bottom, true, true); + screenbottom = layer.layerToCanvas(bbox.right, bbox.bottom, false, true); + if (inst_layer_angle !== 0) + { + var screentrx = layer.layerToCanvas(bbox.right, bbox.top, true, true); + var screentry = layer.layerToCanvas(bbox.right, bbox.top, false, true); + var screenblx = layer.layerToCanvas(bbox.left, bbox.bottom, true, true); + var screenbly = layer.layerToCanvas(bbox.left, bbox.bottom, false, true); + temp = Math.min(screenleft, screenright, screentrx, screenblx); + screenright = Math.max(screenleft, screenright, screentrx, screenblx); + screenleft = temp; + temp = Math.min(screentop, screenbottom, screentry, screenbly); + screenbottom = Math.max(screentop, screenbottom, screentry, screenbly); + screentop = temp; + } + screenleft -= boxExtendHorizontal; + screentop -= boxExtendVertical; + screenright += boxExtendHorizontal; + screenbottom += boxExtendVertical; + rcTex2.left = screenleft / windowWidth; + rcTex2.top = 1 - screentop / windowHeight; + rcTex2.right = screenright / windowWidth; + rcTex2.bottom = 1 - screenbottom / windowHeight; + clearleft = screenleft = cr.floor(screenleft); + cleartop = screentop = cr.floor(screentop); + clearright = screenright = cr.ceil(screenright); + clearbottom = screenbottom = cr.ceil(screenbottom); + clearleft -= boxExtendHorizontal; + cleartop -= boxExtendVertical; + clearright += boxExtendHorizontal; + clearbottom += boxExtendVertical; + if (screenleft < 0) screenleft = 0; + if (screentop < 0) screentop = 0; + if (screenright > windowWidth) screenright = windowWidth; + if (screenbottom > windowHeight) screenbottom = windowHeight; + if (clearleft < 0) clearleft = 0; + if (cleartop < 0) cleartop = 0; + if (clearright > windowWidth) clearright = windowWidth; + if (clearbottom > windowHeight) clearbottom = windowHeight; + rcTex.left = screenleft / windowWidth; + rcTex.top = 1 - screentop / windowHeight; + rcTex.right = screenright / windowWidth; + rcTex.bottom = 1 - screenbottom / windowHeight; + } + else + { + rcTex.left = rcTex2.left = 0; + rcTex.top = rcTex2.top = 0; + rcTex.right = rcTex2.right = 1; + rcTex.bottom = rcTex2.bottom = 1; + } + var pre_draw = (inst && (glw.programUsesDest(active_effect_types[0].shaderindex) || boxExtendHorizontal !== 0 || boxExtendVertical !== 0 || inst.opacity !== 1 || inst.type.plugin.must_predraw)) || (layer && !inst && layer.opacity !== 1); + glw.setAlphaBlend(); + if (pre_draw) + { + if (!fx_tex[fx_index]) + { + fx_tex[fx_index] = glw.createEmptyTexture(windowWidth, windowHeight, this.runtime.linearSampling); + } + if (fx_tex[fx_index].c2width !== windowWidth || fx_tex[fx_index].c2height !== windowHeight) + { + glw.deleteTexture(fx_tex[fx_index]); + fx_tex[fx_index] = glw.createEmptyTexture(windowWidth, windowHeight, this.runtime.linearSampling); + } + glw.switchProgram(0); + glw.setRenderingToTexture(fx_tex[fx_index]); + h = clearbottom - cleartop; + y = (windowHeight - cleartop) - h; + glw.clearRect(clearleft, y, clearright - clearleft, h); + if (inst) + { + inst.drawGL(glw); + } + else + { + glw.setTexture(this.runtime.layer_tex); + glw.setOpacity(layer.opacity); + glw.resetModelView(); + glw.translate(-halfw, -halfh); + glw.updateModelView(); + glw.quadTex(screenleft, screenbottom, screenright, screenbottom, screenright, screentop, screenleft, screentop, rcTex); + } + rcTex2.left = rcTex2.top = 0; + rcTex2.right = rcTex2.bottom = 1; + if (inst) + { + temp = rcTex.top; + rcTex.top = rcTex.bottom; + rcTex.bottom = temp; + } + fx_index = 1; + other_fx_index = 0; + } + glw.setOpacity(1); + var last = active_effect_types.length - 1; + var post_draw = glw.programUsesCrossSampling(active_effect_types[last].shaderindex) || + (!layer && !inst && !this.runtime.fullscreenScalingQuality); + var etindex = 0; + for (i = 0, len = active_effect_types.length; i < len; i++) + { + if (!fx_tex[fx_index]) + { + fx_tex[fx_index] = glw.createEmptyTexture(windowWidth, windowHeight, this.runtime.linearSampling); + } + if (fx_tex[fx_index].c2width !== windowWidth || fx_tex[fx_index].c2height !== windowHeight) + { + glw.deleteTexture(fx_tex[fx_index]); + fx_tex[fx_index] = glw.createEmptyTexture(windowWidth, windowHeight, this.runtime.linearSampling); + } + glw.switchProgram(active_effect_types[i].shaderindex); + etindex = active_effect_types[i].index; + if (glw.programIsAnimated(active_effect_types[i].shaderindex)) + this.runtime.redraw = true; + if (i == 0 && !pre_draw) + { + glw.setRenderingToTexture(fx_tex[fx_index]); + h = clearbottom - cleartop; + y = (windowHeight - cleartop) - h; + glw.clearRect(clearleft, y, clearright - clearleft, h); + if (inst) + { + var pixelWidth; + var pixelHeight; + if (inst.curFrame && inst.curFrame.texture_img) + { + var img = inst.curFrame.texture_img; + pixelWidth = 1.0 / img.width; + pixelHeight = 1.0 / img.height; + } + else + { + pixelWidth = 1.0 / inst.width; + pixelHeight = 1.0 / inst.height; + } + glw.setProgramParameters(rendertarget, // backTex + pixelWidth, + pixelHeight, + rcTex2.left, rcTex2.top, // destStart + rcTex2.right, rcTex2.bottom, // destEnd + layerScale, + layerAngle, + viewOriginLeft, viewOriginTop, + (viewOriginLeft + viewOriginRight) / 2, (viewOriginTop + viewOriginBottom) / 2, + this.runtime.kahanTime.sum, + inst.effect_params[etindex]); // fx params + inst.drawGL(glw); + } + else + { + glw.setProgramParameters(rendertarget, // backTex + 1.0 / windowWidth, // pixelWidth + 1.0 / windowHeight, // pixelHeight + 0.0, 0.0, // destStart + 1.0, 1.0, // destEnd + layerScale, + layerAngle, + viewOriginLeft, viewOriginTop, + (viewOriginLeft + viewOriginRight) / 2, (viewOriginTop + viewOriginBottom) / 2, + this.runtime.kahanTime.sum, + layer ? // fx params + layer.effect_params[etindex] : + this.effect_params[etindex]); + glw.setTexture(layer ? this.runtime.layer_tex : this.runtime.layout_tex); + glw.resetModelView(); + glw.translate(-halfw, -halfh); + glw.updateModelView(); + glw.quadTex(screenleft, screenbottom, screenright, screenbottom, screenright, screentop, screenleft, screentop, rcTex); + } + rcTex2.left = rcTex2.top = 0; + rcTex2.right = rcTex2.bottom = 1; + if (inst && !post_draw) + { + temp = screenbottom; + screenbottom = screentop; + screentop = temp; + } + } + else + { + glw.setProgramParameters(rendertarget, // backTex + 1.0 / windowWidth, // pixelWidth + 1.0 / windowHeight, // pixelHeight + rcTex2.left, rcTex2.top, // destStart + rcTex2.right, rcTex2.bottom, // destEnd + layerScale, + layerAngle, + viewOriginLeft, viewOriginTop, + (viewOriginLeft + viewOriginRight) / 2, (viewOriginTop + viewOriginBottom) / 2, + this.runtime.kahanTime.sum, + inst ? // fx params + inst.effect_params[etindex] : + layer ? + layer.effect_params[etindex] : + this.effect_params[etindex]); + glw.setTexture(null); + if (i === last && !post_draw) + { + if (inst) + glw.setBlend(inst.srcBlend, inst.destBlend); + else if (layer) + glw.setBlend(layer.srcBlend, layer.destBlend); + glw.setRenderingToTexture(rendertarget); + } + else + { + glw.setRenderingToTexture(fx_tex[fx_index]); + h = clearbottom - cleartop; + y = (windowHeight - cleartop) - h; + glw.clearRect(clearleft, y, clearright - clearleft, h); + } + glw.setTexture(fx_tex[other_fx_index]); + glw.resetModelView(); + glw.translate(-halfw, -halfh); + glw.updateModelView(); + glw.quadTex(screenleft, screenbottom, screenright, screenbottom, screenright, screentop, screenleft, screentop, rcTex); + if (i === last && !post_draw) + glw.setTexture(null); + } + fx_index = (fx_index === 0 ? 1 : 0); + other_fx_index = (fx_index === 0 ? 1 : 0); // will be opposite to fx_index since it was just assigned + } + if (post_draw) + { + glw.switchProgram(0); + if (inst) + glw.setBlend(inst.srcBlend, inst.destBlend); + else if (layer) + glw.setBlend(layer.srcBlend, layer.destBlend); + else + { + if (!this.runtime.fullscreenScalingQuality) + { + glw.setSize(this.runtime.width, this.runtime.height); + halfw = this.runtime.width / 2; + halfh = this.runtime.height / 2; + screenleft = 0; + screentop = 0; + screenright = this.runtime.width; + screenbottom = this.runtime.height; + } + } + glw.setRenderingToTexture(rendertarget); + glw.setTexture(fx_tex[other_fx_index]); + glw.resetModelView(); + glw.translate(-halfw, -halfh); + glw.updateModelView(); + if (inst && active_effect_types.length === 1 && !pre_draw) + glw.quadTex(screenleft, screentop, screenright, screentop, screenright, screenbottom, screenleft, screenbottom, rcTex); + else + glw.quadTex(screenleft, screenbottom, screenright, screenbottom, screenright, screentop, screenleft, screentop, rcTex); + glw.setTexture(null); + } + }; + Layout.prototype.getLayerBySid = function (sid_) + { + var i, len; + for (i = 0, len = this.layers.length; i < len; i++) + { + if (this.layers[i].sid === sid_) + return this.layers[i]; + } + return null; + }; + Layout.prototype.saveToJSON = function () + { + var i, len, layer, et; + var o = { + "sx": this.scrollX, + "sy": this.scrollY, + "s": this.scale, + "a": this.angle, + "w": this.width, + "h": this.height, + "fv": this.first_visit, // added r127 + "persist": this.persist_data, + "fx": [], + "layers": {} + }; + for (i = 0, len = this.effect_types.length; i < len; i++) + { + et = this.effect_types[i]; + o["fx"].push({"name": et.name, "active": et.active, "params": this.effect_params[et.index] }); + } + for (i = 0, len = this.layers.length; i < len; i++) + { + layer = this.layers[i]; + o["layers"][layer.sid.toString()] = layer.saveToJSON(); + } + return o; + }; + Layout.prototype.loadFromJSON = function (o) + { + var i, j, len, fx, p, layer; + this.scrollX = o["sx"]; + this.scrollY = o["sy"]; + this.scale = o["s"]; + this.angle = o["a"]; + this.width = o["w"]; + this.height = o["h"]; + this.persist_data = o["persist"]; + if (typeof o["fv"] !== "undefined") + this.first_visit = o["fv"]; + var ofx = o["fx"]; + for (i = 0, len = ofx.length; i < len; i++) + { + fx = this.getEffectByName(ofx[i]["name"]); + if (!fx) + continue; // must've gone missing + fx.active = ofx[i]["active"]; + this.effect_params[fx.index] = ofx[i]["params"]; + } + this.updateActiveEffects(); + var olayers = o["layers"]; + for (p in olayers) + { + if (olayers.hasOwnProperty(p)) + { + layer = this.getLayerBySid(parseInt(p, 10)); + if (!layer) + continue; // must've gone missing + layer.loadFromJSON(olayers[p]); + } + } + }; + cr.layout = Layout; + function Layer(layout, m) + { + this.layout = layout; + this.runtime = layout.runtime; + this.instances = []; // running instances + this.scale = 1.0; + this.angle = 0; + this.disableAngle = false; + this.tmprect = new cr.rect(0, 0, 0, 0); + this.tmpquad = new cr.quad(); + this.viewLeft = 0; + this.viewRight = 0; + this.viewTop = 0; + this.viewBottom = 0; + this.zindices_stale = false; + this.zindices_stale_from = -1; // first index that has changed, or -1 if no bound + this.clear_earlyz_index = 0; + this.name = m[0]; + this.index = m[1]; + this.sid = m[2]; + this.visible = m[3]; // initially visible + this.background_color = m[4]; + this.transparent = m[5]; + this.parallaxX = m[6]; + this.parallaxY = m[7]; + this.opacity = m[8]; + this.forceOwnTexture = m[9]; + this.useRenderCells = m[10]; + this.zoomRate = m[11]; + this.blend_mode = m[12]; + this.effect_fallback = m[13]; + this.compositeOp = "source-over"; + this.srcBlend = 0; + this.destBlend = 0; + this.render_grid = null; + this.last_render_list = alloc_arr(); + this.render_list_stale = true; + this.last_render_cells = new cr.rect(0, 0, -1, -1); + this.cur_render_cells = new cr.rect(0, 0, -1, -1); + if (this.useRenderCells) + { + this.render_grid = new cr.RenderGrid(this.runtime.original_width, this.runtime.original_height); + } + this.render_offscreen = false; + var im = m[14]; + var i, len; + this.startup_initial_instances = []; // for restoring initial_instances after load + this.initial_instances = []; + this.created_globals = []; // global object UIDs already created - for save/load to avoid recreating + for (i = 0, len = im.length; i < len; i++) + { + var inst = im[i]; + var type = this.runtime.types_by_index[inst[1]]; +; + if (!type.default_instance) + { + type.default_instance = inst; + type.default_layerindex = this.index; + } + this.initial_instances.push(inst); + if (this.layout.initial_types.indexOf(type) === -1) + this.layout.initial_types.push(type); + } + cr.shallowAssignArray(this.startup_initial_instances, this.initial_instances); + this.effect_types = []; + this.active_effect_types = []; + this.shaders_preserve_opaqueness = true; + this.effect_params = []; + for (i = 0, len = m[15].length; i < len; i++) + { + this.effect_types.push({ + id: m[15][i][0], + name: m[15][i][1], + shaderindex: -1, + preservesOpaqueness: false, + active: true, + index: i + }); + this.effect_params.push(m[15][i][2].slice(0)); + } + this.updateActiveEffects(); + this.rcTex = new cr.rect(0, 0, 1, 1); + this.rcTex2 = new cr.rect(0, 0, 1, 1); + }; + Layer.prototype.updateActiveEffects = function () + { + cr.clearArray(this.active_effect_types); + this.shaders_preserve_opaqueness = true; + var i, len, et; + for (i = 0, len = this.effect_types.length; i < len; i++) + { + et = this.effect_types[i]; + if (et.active) + { + this.active_effect_types.push(et); + if (!et.preservesOpaqueness) + this.shaders_preserve_opaqueness = false; + } + } + }; + Layer.prototype.getEffectByName = function (name_) + { + var i, len, et; + for (i = 0, len = this.effect_types.length; i < len; i++) + { + et = this.effect_types[i]; + if (et.name === name_) + return et; + } + return null; + }; + Layer.prototype.createInitialInstances = function () + { + var i, k, len, inst, initial_inst, type, keep, hasPersistBehavior; + for (i = 0, k = 0, len = this.initial_instances.length; i < len; i++) + { + initial_inst = this.initial_instances[i]; + type = this.runtime.types_by_index[initial_inst[1]]; +; + hasPersistBehavior = this.runtime.typeHasPersistBehavior(type); + keep = true; + if (!hasPersistBehavior || this.layout.first_visit) + { + inst = this.runtime.createInstanceFromInit(initial_inst, this, true); + if (!inst) + continue; // may have skipped creation due to fallback effect "destroy" + created_instances.push(inst); + if (inst.type.global) + { + keep = false; + this.created_globals.push(inst.uid); + } + } + if (keep) + { + this.initial_instances[k] = this.initial_instances[i]; + k++; + } + } + this.initial_instances.length = k; + this.runtime.ClearDeathRow(); // flushes creation row so IIDs will be correct + if (!this.runtime.glwrap && this.effect_types.length) // no WebGL renderer and shaders used + this.blend_mode = this.effect_fallback; // use fallback blend mode + this.compositeOp = cr.effectToCompositeOp(this.blend_mode); + if (this.runtime.gl) + cr.setGLBlend(this, this.blend_mode, this.runtime.gl); + this.render_list_stale = true; + }; + Layer.prototype.recreateInitialObjects = function (only_type, rc) + { + var i, len, initial_inst, type, wm, x, y, inst, j, lenj, s; + var types_by_index = this.runtime.types_by_index; + var only_type_is_family = only_type.is_family; + var only_type_members = only_type.members; + for (i = 0, len = this.initial_instances.length; i < len; ++i) + { + initial_inst = this.initial_instances[i]; + wm = initial_inst[0]; + x = wm[0]; + y = wm[1]; + if (!rc.contains_pt(x, y)) + continue; // not in the given area + type = types_by_index[initial_inst[1]]; + if (type !== only_type) + { + if (only_type_is_family) + { + if (only_type_members.indexOf(type) < 0) + continue; + } + else + continue; // only_type is not a family, and the initial inst type does not match + } + inst = this.runtime.createInstanceFromInit(initial_inst, this, false); + this.runtime.isInOnDestroy++; + this.runtime.trigger(Object.getPrototypeOf(type.plugin).cnds.OnCreated, inst); + if (inst.is_contained) + { + for (j = 0, lenj = inst.siblings.length; j < lenj; j++) + { + s = inst.siblings[i]; + this.runtime.trigger(Object.getPrototypeOf(s.type.plugin).cnds.OnCreated, s); + } + } + this.runtime.isInOnDestroy--; + } + }; + Layer.prototype.removeFromInstanceList = function (inst, remove_from_grid) + { + var index = cr.fastIndexOf(this.instances, inst); + if (index < 0) + return; // not found + if (remove_from_grid && this.useRenderCells && inst.rendercells && inst.rendercells.right >= inst.rendercells.left) + { + inst.update_bbox(); // make sure actually in its current rendercells + this.render_grid.update(inst, inst.rendercells, null); // no new range provided - remove only + inst.rendercells.set(0, 0, -1, -1); // set to invalid state to indicate not inserted + } + if (index === this.instances.length - 1) + this.instances.pop(); + else + { + cr.arrayRemove(this.instances, index); + this.setZIndicesStaleFrom(index); + } + this.render_list_stale = true; + }; + Layer.prototype.appendToInstanceList = function (inst, add_to_grid) + { +; + inst.zindex = this.instances.length; + this.instances.push(inst); + if (add_to_grid && this.useRenderCells && inst.rendercells) + { + inst.set_bbox_changed(); // will cause immediate update and new insertion to grid + } + this.render_list_stale = true; + }; + Layer.prototype.prependToInstanceList = function (inst, add_to_grid) + { +; + this.instances.unshift(inst); + this.setZIndicesStaleFrom(0); + if (add_to_grid && this.useRenderCells && inst.rendercells) + { + inst.set_bbox_changed(); // will cause immediate update and new insertion to grid + } + }; + Layer.prototype.moveInstanceAdjacent = function (inst, other, isafter) + { +; + var myZ = inst.get_zindex(); + var insertZ = other.get_zindex(); + cr.arrayRemove(this.instances, myZ); + if (myZ < insertZ) + insertZ--; + if (isafter) + insertZ++; + if (insertZ === this.instances.length) + this.instances.push(inst); + else + this.instances.splice(insertZ, 0, inst); + this.setZIndicesStaleFrom(myZ < insertZ ? myZ : insertZ); + }; + Layer.prototype.setZIndicesStaleFrom = function (index) + { + if (this.zindices_stale_from === -1) // not yet set + this.zindices_stale_from = index; + else if (index < this.zindices_stale_from) // determine minimum z index affected + this.zindices_stale_from = index; + this.zindices_stale = true; + this.render_list_stale = true; + }; + Layer.prototype.updateZIndices = function () + { + if (!this.zindices_stale) + return; + if (this.zindices_stale_from === -1) + this.zindices_stale_from = 0; + var i, len, inst; + if (this.useRenderCells) + { + for (i = this.zindices_stale_from, len = this.instances.length; i < len; ++i) + { + inst = this.instances[i]; + inst.zindex = i; + this.render_grid.markRangeChanged(inst.rendercells); + } + } + else + { + for (i = this.zindices_stale_from, len = this.instances.length; i < len; ++i) + { + this.instances[i].zindex = i; + } + } + this.zindices_stale = false; + this.zindices_stale_from = -1; + }; + Layer.prototype.getScale = function (include_aspect) + { + return this.getNormalScale() * (this.runtime.fullscreenScalingQuality || include_aspect ? this.runtime.aspect_scale : 1); + }; + Layer.prototype.getNormalScale = function () + { + return ((this.scale * this.layout.scale) - 1) * this.zoomRate + 1; + }; + Layer.prototype.getAngle = function () + { + if (this.disableAngle) + return 0; + return cr.clamp_angle(this.layout.angle + this.angle); + }; + var arr_cache = []; + function alloc_arr() + { + if (arr_cache.length) + return arr_cache.pop(); + else + return []; + } + function free_arr(a) + { + cr.clearArray(a); + arr_cache.push(a); + }; + function mergeSortedZArrays(a, b, out) + { + var i = 0, j = 0, k = 0, lena = a.length, lenb = b.length, ai, bj; + out.length = lena + lenb; + for ( ; i < lena && j < lenb; ++k) + { + ai = a[i]; + bj = b[j]; + if (ai.zindex < bj.zindex) + { + out[k] = ai; + ++i; + } + else + { + out[k] = bj; + ++j; + } + } + for ( ; i < lena; ++i, ++k) + out[k] = a[i]; + for ( ; j < lenb; ++j, ++k) + out[k] = b[j]; + }; + var next_arr = []; + function mergeAllSortedZArrays_pass(arr, first_pass) + { + var i, len, arr1, arr2, out; + for (i = 0, len = arr.length; i < len - 1; i += 2) + { + arr1 = arr[i]; + arr2 = arr[i+1]; + out = alloc_arr(); + mergeSortedZArrays(arr1, arr2, out); + if (!first_pass) + { + free_arr(arr1); + free_arr(arr2); + } + next_arr.push(out); + } + if (len % 2 === 1) + { + if (first_pass) + { + arr1 = alloc_arr(); + cr.shallowAssignArray(arr1, arr[len - 1]); + next_arr.push(arr1); + } + else + { + next_arr.push(arr[len - 1]); + } + } + cr.shallowAssignArray(arr, next_arr); + cr.clearArray(next_arr); + }; + function mergeAllSortedZArrays(arr) + { + var first_pass = true; + while (arr.length > 1) + { + mergeAllSortedZArrays_pass(arr, first_pass); + first_pass = false; + } + return arr[0]; + }; + var render_arr = []; + Layer.prototype.getRenderCellInstancesToDraw = function () + { +; + this.updateZIndices(); + this.render_grid.queryRange(this.viewLeft, this.viewTop, this.viewRight, this.viewBottom, render_arr); + if (!render_arr.length) + return alloc_arr(); + if (render_arr.length === 1) + { + var a = alloc_arr(); + cr.shallowAssignArray(a, render_arr[0]); + cr.clearArray(render_arr); + return a; + } + var draw_list = mergeAllSortedZArrays(render_arr); + cr.clearArray(render_arr); + return draw_list; + }; + Layer.prototype.draw = function (ctx) + { + this.render_offscreen = (this.forceOwnTexture || this.opacity !== 1.0 || this.blend_mode !== 0); + var layer_canvas = this.runtime.canvas; + var layer_ctx = ctx; + var ctx_changed = false; + if (this.render_offscreen) + { + if (!this.runtime.layer_canvas) + { + this.runtime.layer_canvas = document.createElement("canvas"); +; + layer_canvas = this.runtime.layer_canvas; + layer_canvas.width = this.runtime.draw_width; + layer_canvas.height = this.runtime.draw_height; + this.runtime.layer_ctx = layer_canvas.getContext("2d"); +; + ctx_changed = true; + } + layer_canvas = this.runtime.layer_canvas; + layer_ctx = this.runtime.layer_ctx; + if (layer_canvas.width !== this.runtime.draw_width) + { + layer_canvas.width = this.runtime.draw_width; + ctx_changed = true; + } + if (layer_canvas.height !== this.runtime.draw_height) + { + layer_canvas.height = this.runtime.draw_height; + ctx_changed = true; + } + if (ctx_changed) + { + this.runtime.setCtxImageSmoothingEnabled(layer_ctx, this.runtime.linearSampling); + } + if (this.transparent) + layer_ctx.clearRect(0, 0, this.runtime.draw_width, this.runtime.draw_height); + } + layer_ctx.globalAlpha = 1; + layer_ctx.globalCompositeOperation = "source-over"; + if (!this.transparent) + { + layer_ctx.fillStyle = "rgb(" + this.background_color[0] + "," + this.background_color[1] + "," + this.background_color[2] + ")"; + layer_ctx.fillRect(0, 0, this.runtime.draw_width, this.runtime.draw_height); + } + layer_ctx.save(); + this.disableAngle = true; + var px = this.canvasToLayer(0, 0, true, true); + var py = this.canvasToLayer(0, 0, false, true); + this.disableAngle = false; + if (this.runtime.pixel_rounding) + { + px = Math.round(px); + py = Math.round(py); + } + this.rotateViewport(px, py, layer_ctx); + var myscale = this.getScale(); + layer_ctx.scale(myscale, myscale); + layer_ctx.translate(-px, -py); + var instances_to_draw; + if (this.useRenderCells) + { + this.cur_render_cells.left = this.render_grid.XToCell(this.viewLeft); + this.cur_render_cells.top = this.render_grid.YToCell(this.viewTop); + this.cur_render_cells.right = this.render_grid.XToCell(this.viewRight); + this.cur_render_cells.bottom = this.render_grid.YToCell(this.viewBottom); + if (this.render_list_stale || !this.cur_render_cells.equals(this.last_render_cells)) + { + free_arr(this.last_render_list); + instances_to_draw = this.getRenderCellInstancesToDraw(); + this.render_list_stale = false; + this.last_render_cells.copy(this.cur_render_cells); + } + else + instances_to_draw = this.last_render_list; + } + else + instances_to_draw = this.instances; + var i, len, inst, last_inst = null; + for (i = 0, len = instances_to_draw.length; i < len; ++i) + { + inst = instances_to_draw[i]; + if (inst === last_inst) + continue; + this.drawInstance(inst, layer_ctx); + last_inst = inst; + } + if (this.useRenderCells) + this.last_render_list = instances_to_draw; + layer_ctx.restore(); + if (this.render_offscreen) + { + ctx.globalCompositeOperation = this.compositeOp; + ctx.globalAlpha = this.opacity; + ctx.drawImage(layer_canvas, 0, 0); + } + }; + Layer.prototype.drawInstance = function(inst, layer_ctx) + { + if (!inst.visible || inst.width === 0 || inst.height === 0) + return; + inst.update_bbox(); + var bbox = inst.bbox; + if (bbox.right < this.viewLeft || bbox.bottom < this.viewTop || bbox.left > this.viewRight || bbox.top > this.viewBottom) + return; + layer_ctx.globalCompositeOperation = inst.compositeOp; + inst.draw(layer_ctx); + }; + Layer.prototype.updateViewport = function (ctx) + { + this.disableAngle = true; + var px = this.canvasToLayer(0, 0, true, true); + var py = this.canvasToLayer(0, 0, false, true); + this.disableAngle = false; + if (this.runtime.pixel_rounding) + { + px = Math.round(px); + py = Math.round(py); + } + this.rotateViewport(px, py, ctx); + }; + Layer.prototype.rotateViewport = function (px, py, ctx) + { + var myscale = this.getScale(); + this.viewLeft = px; + this.viewTop = py; + this.viewRight = px + (this.runtime.draw_width * (1 / myscale)); + this.viewBottom = py + (this.runtime.draw_height * (1 / myscale)); + var temp; + if (this.viewLeft > this.viewRight) + { + temp = this.viewLeft; + this.viewLeft = this.viewRight; + this.viewRight = temp; + } + if (this.viewTop > this.viewBottom) + { + temp = this.viewTop; + this.viewTop = this.viewBottom; + this.viewBottom = temp; + } + var myAngle = this.getAngle(); + if (myAngle !== 0) + { + if (ctx) + { + ctx.translate(this.runtime.draw_width / 2, this.runtime.draw_height / 2); + ctx.rotate(-myAngle); + ctx.translate(this.runtime.draw_width / -2, this.runtime.draw_height / -2); + } + this.tmprect.set(this.viewLeft, this.viewTop, this.viewRight, this.viewBottom); + this.tmprect.offset((this.viewLeft + this.viewRight) / -2, (this.viewTop + this.viewBottom) / -2); + this.tmpquad.set_from_rotated_rect(this.tmprect, myAngle); + this.tmpquad.bounding_box(this.tmprect); + this.tmprect.offset((this.viewLeft + this.viewRight) / 2, (this.viewTop + this.viewBottom) / 2); + this.viewLeft = this.tmprect.left; + this.viewTop = this.tmprect.top; + this.viewRight = this.tmprect.right; + this.viewBottom = this.tmprect.bottom; + } + } + Layer.prototype.drawGL_earlyZPass = function (glw) + { + var windowWidth = this.runtime.draw_width; + var windowHeight = this.runtime.draw_height; + var shaderindex = 0; + var etindex = 0; + this.render_offscreen = this.forceOwnTexture; + if (this.render_offscreen) + { + if (!this.runtime.layer_tex) + { + this.runtime.layer_tex = glw.createEmptyTexture(this.runtime.draw_width, this.runtime.draw_height, this.runtime.linearSampling); + } + if (this.runtime.layer_tex.c2width !== this.runtime.draw_width || this.runtime.layer_tex.c2height !== this.runtime.draw_height) + { + glw.deleteTexture(this.runtime.layer_tex); + this.runtime.layer_tex = glw.createEmptyTexture(this.runtime.draw_width, this.runtime.draw_height, this.runtime.linearSampling); + } + glw.setRenderingToTexture(this.runtime.layer_tex); + } + this.disableAngle = true; + var px = this.canvasToLayer(0, 0, true, true); + var py = this.canvasToLayer(0, 0, false, true); + this.disableAngle = false; + if (this.runtime.pixel_rounding) + { + px = Math.round(px); + py = Math.round(py); + } + this.rotateViewport(px, py, null); + var myscale = this.getScale(); + glw.resetModelView(); + glw.scale(myscale, myscale); + glw.rotateZ(-this.getAngle()); + glw.translate((this.viewLeft + this.viewRight) / -2, (this.viewTop + this.viewBottom) / -2); + glw.updateModelView(); + var instances_to_draw; + if (this.useRenderCells) + { + this.cur_render_cells.left = this.render_grid.XToCell(this.viewLeft); + this.cur_render_cells.top = this.render_grid.YToCell(this.viewTop); + this.cur_render_cells.right = this.render_grid.XToCell(this.viewRight); + this.cur_render_cells.bottom = this.render_grid.YToCell(this.viewBottom); + if (this.render_list_stale || !this.cur_render_cells.equals(this.last_render_cells)) + { + free_arr(this.last_render_list); + instances_to_draw = this.getRenderCellInstancesToDraw(); + this.render_list_stale = false; + this.last_render_cells.copy(this.cur_render_cells); + } + else + instances_to_draw = this.last_render_list; + } + else + instances_to_draw = this.instances; + var i, inst, last_inst = null; + for (i = instances_to_draw.length - 1; i >= 0; --i) + { + inst = instances_to_draw[i]; + if (inst === last_inst) + continue; + this.drawInstanceGL_earlyZPass(instances_to_draw[i], glw); + last_inst = inst; + } + if (this.useRenderCells) + this.last_render_list = instances_to_draw; + if (!this.transparent) + { + this.clear_earlyz_index = this.runtime.earlyz_index++; + glw.setEarlyZIndex(this.clear_earlyz_index); + glw.setColorFillMode(1, 1, 1, 1); + glw.fullscreenQuad(); // fill remaining space in depth buffer with current Z value + glw.restoreEarlyZMode(); + } + }; + Layer.prototype.drawGL = function (glw) + { + var windowWidth = this.runtime.draw_width; + var windowHeight = this.runtime.draw_height; + var shaderindex = 0; + var etindex = 0; + this.render_offscreen = (this.forceOwnTexture || this.opacity !== 1.0 || this.active_effect_types.length > 0 || this.blend_mode !== 0); + if (this.render_offscreen) + { + if (!this.runtime.layer_tex) + { + this.runtime.layer_tex = glw.createEmptyTexture(this.runtime.draw_width, this.runtime.draw_height, this.runtime.linearSampling); + } + if (this.runtime.layer_tex.c2width !== this.runtime.draw_width || this.runtime.layer_tex.c2height !== this.runtime.draw_height) + { + glw.deleteTexture(this.runtime.layer_tex); + this.runtime.layer_tex = glw.createEmptyTexture(this.runtime.draw_width, this.runtime.draw_height, this.runtime.linearSampling); + } + glw.setRenderingToTexture(this.runtime.layer_tex); + if (this.transparent) + glw.clear(0, 0, 0, 0); + } + if (!this.transparent) + { + if (this.runtime.enableFrontToBack) + { + glw.setEarlyZIndex(this.clear_earlyz_index); + glw.setColorFillMode(this.background_color[0] / 255, this.background_color[1] / 255, this.background_color[2] / 255, 1); + glw.fullscreenQuad(); + glw.setTextureFillMode(); + } + else + { + glw.clear(this.background_color[0] / 255, this.background_color[1] / 255, this.background_color[2] / 255, 1); + } + } + this.disableAngle = true; + var px = this.canvasToLayer(0, 0, true, true); + var py = this.canvasToLayer(0, 0, false, true); + this.disableAngle = false; + if (this.runtime.pixel_rounding) + { + px = Math.round(px); + py = Math.round(py); + } + this.rotateViewport(px, py, null); + var myscale = this.getScale(); + glw.resetModelView(); + glw.scale(myscale, myscale); + glw.rotateZ(-this.getAngle()); + glw.translate((this.viewLeft + this.viewRight) / -2, (this.viewTop + this.viewBottom) / -2); + glw.updateModelView(); + var instances_to_draw; + if (this.useRenderCells) + { + this.cur_render_cells.left = this.render_grid.XToCell(this.viewLeft); + this.cur_render_cells.top = this.render_grid.YToCell(this.viewTop); + this.cur_render_cells.right = this.render_grid.XToCell(this.viewRight); + this.cur_render_cells.bottom = this.render_grid.YToCell(this.viewBottom); + if (this.render_list_stale || !this.cur_render_cells.equals(this.last_render_cells)) + { + free_arr(this.last_render_list); + instances_to_draw = this.getRenderCellInstancesToDraw(); + this.render_list_stale = false; + this.last_render_cells.copy(this.cur_render_cells); + } + else + instances_to_draw = this.last_render_list; + } + else + instances_to_draw = this.instances; + var i, len, inst, last_inst = null; + for (i = 0, len = instances_to_draw.length; i < len; ++i) + { + inst = instances_to_draw[i]; + if (inst === last_inst) + continue; + this.drawInstanceGL(instances_to_draw[i], glw); + last_inst = inst; + } + if (this.useRenderCells) + this.last_render_list = instances_to_draw; + if (this.render_offscreen) + { + shaderindex = this.active_effect_types.length ? this.active_effect_types[0].shaderindex : 0; + etindex = this.active_effect_types.length ? this.active_effect_types[0].index : 0; + if (this.active_effect_types.length === 0 || (this.active_effect_types.length === 1 && + !glw.programUsesCrossSampling(shaderindex) && this.opacity === 1)) + { + if (this.active_effect_types.length === 1) + { + glw.switchProgram(shaderindex); + glw.setProgramParameters(this.layout.getRenderTarget(), // backTex + 1.0 / this.runtime.draw_width, // pixelWidth + 1.0 / this.runtime.draw_height, // pixelHeight + 0.0, 0.0, // destStart + 1.0, 1.0, // destEnd + myscale, // layerScale + this.getAngle(), + this.viewLeft, this.viewTop, + (this.viewLeft + this.viewRight) / 2, (this.viewTop + this.viewBottom) / 2, + this.runtime.kahanTime.sum, + this.effect_params[etindex]); // fx parameters + if (glw.programIsAnimated(shaderindex)) + this.runtime.redraw = true; + } + else + glw.switchProgram(0); + glw.setRenderingToTexture(this.layout.getRenderTarget()); + glw.setOpacity(this.opacity); + glw.setTexture(this.runtime.layer_tex); + glw.setBlend(this.srcBlend, this.destBlend); + glw.resetModelView(); + glw.updateModelView(); + var halfw = this.runtime.draw_width / 2; + var halfh = this.runtime.draw_height / 2; + glw.quad(-halfw, halfh, halfw, halfh, halfw, -halfh, -halfw, -halfh); + glw.setTexture(null); + } + else + { + this.layout.renderEffectChain(glw, this, null, this.layout.getRenderTarget()); + } + } + }; + Layer.prototype.drawInstanceGL = function (inst, glw) + { +; + if (!inst.visible || inst.width === 0 || inst.height === 0) + return; + inst.update_bbox(); + var bbox = inst.bbox; + if (bbox.right < this.viewLeft || bbox.bottom < this.viewTop || bbox.left > this.viewRight || bbox.top > this.viewBottom) + return; + glw.setEarlyZIndex(inst.earlyz_index); + if (inst.uses_shaders) + { + this.drawInstanceWithShadersGL(inst, glw); + } + else + { + glw.switchProgram(0); // un-set any previously set shader + glw.setBlend(inst.srcBlend, inst.destBlend); + inst.drawGL(glw); + } + }; + Layer.prototype.drawInstanceGL_earlyZPass = function (inst, glw) + { +; + if (!inst.visible || inst.width === 0 || inst.height === 0) + return; + inst.update_bbox(); + var bbox = inst.bbox; + if (bbox.right < this.viewLeft || bbox.bottom < this.viewTop || bbox.left > this.viewRight || bbox.top > this.viewBottom) + return; + inst.earlyz_index = this.runtime.earlyz_index++; + if (inst.blend_mode !== 0 || inst.opacity !== 1 || !inst.shaders_preserve_opaqueness || !inst.drawGL_earlyZPass) + return; + glw.setEarlyZIndex(inst.earlyz_index); + inst.drawGL_earlyZPass(glw); + }; + Layer.prototype.drawInstanceWithShadersGL = function (inst, glw) + { + var shaderindex = inst.active_effect_types[0].shaderindex; + var etindex = inst.active_effect_types[0].index; + var myscale = this.getScale(); + if (inst.active_effect_types.length === 1 && !glw.programUsesCrossSampling(shaderindex) && + !glw.programExtendsBox(shaderindex) && ((!inst.angle && !inst.layer.getAngle()) || !glw.programUsesDest(shaderindex)) && + inst.opacity === 1 && !inst.type.plugin.must_predraw) + { + glw.switchProgram(shaderindex); + glw.setBlend(inst.srcBlend, inst.destBlend); + if (glw.programIsAnimated(shaderindex)) + this.runtime.redraw = true; + var destStartX = 0, destStartY = 0, destEndX = 0, destEndY = 0; + if (glw.programUsesDest(shaderindex)) + { + var bbox = inst.bbox; + var screenleft = this.layerToCanvas(bbox.left, bbox.top, true, true); + var screentop = this.layerToCanvas(bbox.left, bbox.top, false, true); + var screenright = this.layerToCanvas(bbox.right, bbox.bottom, true, true); + var screenbottom = this.layerToCanvas(bbox.right, bbox.bottom, false, true); + destStartX = screenleft / windowWidth; + destStartY = 1 - screentop / windowHeight; + destEndX = screenright / windowWidth; + destEndY = 1 - screenbottom / windowHeight; + } + var pixelWidth; + var pixelHeight; + if (inst.curFrame && inst.curFrame.texture_img) + { + var img = inst.curFrame.texture_img; + pixelWidth = 1.0 / img.width; + pixelHeight = 1.0 / img.height; + } + else + { + pixelWidth = 1.0 / inst.width; + pixelHeight = 1.0 / inst.height; + } + glw.setProgramParameters(this.render_offscreen ? this.runtime.layer_tex : this.layout.getRenderTarget(), // backTex + pixelWidth, + pixelHeight, + destStartX, destStartY, + destEndX, destEndY, + myscale, + this.getAngle(), + this.viewLeft, this.viewTop, + (this.viewLeft + this.viewRight) / 2, (this.viewTop + this.viewBottom) / 2, + this.runtime.kahanTime.sum, + inst.effect_params[etindex]); + inst.drawGL(glw); + } + else + { + this.layout.renderEffectChain(glw, this, inst, this.render_offscreen ? this.runtime.layer_tex : this.layout.getRenderTarget()); + glw.resetModelView(); + glw.scale(myscale, myscale); + glw.rotateZ(-this.getAngle()); + glw.translate((this.viewLeft + this.viewRight) / -2, (this.viewTop + this.viewBottom) / -2); + glw.updateModelView(); + } + }; + Layer.prototype.canvasToLayer = function (ptx, pty, getx, using_draw_area) + { + var multiplier = this.runtime.devicePixelRatio; + if (this.runtime.isRetina) + { + ptx *= multiplier; + pty *= multiplier; + } + var ox = this.runtime.parallax_x_origin; + var oy = this.runtime.parallax_y_origin; + var par_x = ((this.layout.scrollX - ox) * this.parallaxX) + ox; + var par_y = ((this.layout.scrollY - oy) * this.parallaxY) + oy; + var x = par_x; + var y = par_y; + var invScale = 1 / this.getScale(!using_draw_area); + if (using_draw_area) + { + x -= (this.runtime.draw_width * invScale) / 2; + y -= (this.runtime.draw_height * invScale) / 2; + } + else + { + x -= (this.runtime.width * invScale) / 2; + y -= (this.runtime.height * invScale) / 2; + } + x += ptx * invScale; + y += pty * invScale; + var a = this.getAngle(); + if (a !== 0) + { + x -= par_x; + y -= par_y; + var cosa = Math.cos(a); + var sina = Math.sin(a); + var x_temp = (x * cosa) - (y * sina); + y = (y * cosa) + (x * sina); + x = x_temp; + x += par_x; + y += par_y; + } + return getx ? x : y; + }; + Layer.prototype.layerToCanvas = function (ptx, pty, getx, using_draw_area) + { + var ox = this.runtime.parallax_x_origin; + var oy = this.runtime.parallax_y_origin; + var par_x = ((this.layout.scrollX - ox) * this.parallaxX) + ox; + var par_y = ((this.layout.scrollY - oy) * this.parallaxY) + oy; + var x = par_x; + var y = par_y; + var a = this.getAngle(); + if (a !== 0) + { + ptx -= par_x; + pty -= par_y; + var cosa = Math.cos(-a); + var sina = Math.sin(-a); + var x_temp = (ptx * cosa) - (pty * sina); + pty = (pty * cosa) + (ptx * sina); + ptx = x_temp; + ptx += par_x; + pty += par_y; + } + var invScale = 1 / this.getScale(!using_draw_area); + if (using_draw_area) + { + x -= (this.runtime.draw_width * invScale) / 2; + y -= (this.runtime.draw_height * invScale) / 2; + } + else + { + x -= (this.runtime.width * invScale) / 2; + y -= (this.runtime.height * invScale) / 2; + } + x = (ptx - x) / invScale; + y = (pty - y) / invScale; + var multiplier = this.runtime.devicePixelRatio; + if (this.runtime.isRetina && !using_draw_area) + { + x /= multiplier; + y /= multiplier; + } + return getx ? x : y; + }; + Layer.prototype.rotatePt = function (x_, y_, getx) + { + if (this.getAngle() === 0) + return getx ? x_ : y_; + var nx = this.layerToCanvas(x_, y_, true); + var ny = this.layerToCanvas(x_, y_, false); + this.disableAngle = true; + var px = this.canvasToLayer(nx, ny, true); + var py = this.canvasToLayer(nx, ny, true); + this.disableAngle = false; + return getx ? px : py; + }; + Layer.prototype.saveToJSON = function () + { + var i, len, et; + var o = { + "s": this.scale, + "a": this.angle, + "vl": this.viewLeft, + "vt": this.viewTop, + "vr": this.viewRight, + "vb": this.viewBottom, + "v": this.visible, + "bc": this.background_color, + "t": this.transparent, + "px": this.parallaxX, + "py": this.parallaxY, + "o": this.opacity, + "zr": this.zoomRate, + "fx": [], + "cg": this.created_globals, // added r197; list of global UIDs already created + "instances": [] + }; + for (i = 0, len = this.effect_types.length; i < len; i++) + { + et = this.effect_types[i]; + o["fx"].push({"name": et.name, "active": et.active, "params": this.effect_params[et.index] }); + } + return o; + }; + Layer.prototype.loadFromJSON = function (o) + { + var i, j, len, p, inst, fx; + this.scale = o["s"]; + this.angle = o["a"]; + this.viewLeft = o["vl"]; + this.viewTop = o["vt"]; + this.viewRight = o["vr"]; + this.viewBottom = o["vb"]; + this.visible = o["v"]; + this.background_color = o["bc"]; + this.transparent = o["t"]; + this.parallaxX = o["px"]; + this.parallaxY = o["py"]; + this.opacity = o["o"]; + this.zoomRate = o["zr"]; + this.created_globals = o["cg"] || []; // added r197 + cr.shallowAssignArray(this.initial_instances, this.startup_initial_instances); + var temp_set = new cr.ObjectSet(); + for (i = 0, len = this.created_globals.length; i < len; ++i) + temp_set.add(this.created_globals[i]); + for (i = 0, j = 0, len = this.initial_instances.length; i < len; ++i) + { + if (!temp_set.contains(this.initial_instances[i][2])) // UID in element 2 + { + this.initial_instances[j] = this.initial_instances[i]; + ++j; + } + } + cr.truncateArray(this.initial_instances, j); + var ofx = o["fx"]; + for (i = 0, len = ofx.length; i < len; i++) + { + fx = this.getEffectByName(ofx[i]["name"]); + if (!fx) + continue; // must've gone missing + fx.active = ofx[i]["active"]; + this.effect_params[fx.index] = ofx[i]["params"]; + } + this.updateActiveEffects(); + this.instances.sort(sort_by_zindex); + this.zindices_stale = true; + }; + cr.layer = Layer; +}()); +; +(function() +{ + var allUniqueSolModifiers = []; + function testSolsMatch(arr1, arr2) + { + var i, len = arr1.length; + switch (len) { + case 0: + return true; + case 1: + return arr1[0] === arr2[0]; + case 2: + return arr1[0] === arr2[0] && arr1[1] === arr2[1]; + default: + for (i = 0; i < len; i++) + { + if (arr1[i] !== arr2[i]) + return false; + } + return true; + } + }; + function solArraySorter(t1, t2) + { + return t1.index - t2.index; + }; + function findMatchingSolModifier(arr) + { + var i, len, u, temp, subarr; + if (arr.length === 2) + { + if (arr[0].index > arr[1].index) + { + temp = arr[0]; + arr[0] = arr[1]; + arr[1] = temp; + } + } + else if (arr.length > 2) + arr.sort(solArraySorter); // so testSolsMatch compares in same order + if (arr.length >= allUniqueSolModifiers.length) + allUniqueSolModifiers.length = arr.length + 1; + if (!allUniqueSolModifiers[arr.length]) + allUniqueSolModifiers[arr.length] = []; + subarr = allUniqueSolModifiers[arr.length]; + for (i = 0, len = subarr.length; i < len; i++) + { + u = subarr[i]; + if (testSolsMatch(arr, u)) + return u; + } + subarr.push(arr); + return arr; + }; + function EventSheet(runtime, m) + { + this.runtime = runtime; + this.triggers = {}; + this.fasttriggers = {}; + this.hasRun = false; + this.includes = new cr.ObjectSet(); // all event sheets included by this sheet, at first-level indirection only + this.deep_includes = []; // all includes from this sheet recursively, in trigger order + this.already_included_sheets = []; // used while building deep_includes + this.name = m[0]; + var em = m[1]; // events model + this.events = []; // triggers won't make it to this array + var i, len; + for (i = 0, len = em.length; i < len; i++) + this.init_event(em[i], null, this.events); + }; + EventSheet.prototype.toString = function () + { + return this.name; + }; + EventSheet.prototype.init_event = function (m, parent, nontriggers) + { + switch (m[0]) { + case 0: // event block + { + var block = new cr.eventblock(this, parent, m); + cr.seal(block); + if (block.orblock) + { + nontriggers.push(block); + var i, len; + for (i = 0, len = block.conditions.length; i < len; i++) + { + if (block.conditions[i].trigger) + this.init_trigger(block, i); + } + } + else + { + if (block.is_trigger()) + this.init_trigger(block, 0); + else + nontriggers.push(block); + } + break; + } + case 1: // variable + { + var v = new cr.eventvariable(this, parent, m); + cr.seal(v); + nontriggers.push(v); + break; + } + case 2: // include + { + var inc = new cr.eventinclude(this, parent, m); + cr.seal(inc); + nontriggers.push(inc); + break; + } + default: +; + } + }; + EventSheet.prototype.postInit = function () + { + var i, len; + for (i = 0, len = this.events.length; i < len; i++) + { + this.events[i].postInit(i < len - 1 && this.events[i + 1].is_else_block); + } + }; + EventSheet.prototype.updateDeepIncludes = function () + { + cr.clearArray(this.deep_includes); + cr.clearArray(this.already_included_sheets); + this.addDeepIncludes(this); + cr.clearArray(this.already_included_sheets); + }; + EventSheet.prototype.addDeepIncludes = function (root_sheet) + { + var i, len, inc, sheet; + var deep_includes = root_sheet.deep_includes; + var already_included_sheets = root_sheet.already_included_sheets; + var arr = this.includes.valuesRef(); + for (i = 0, len = arr.length; i < len; ++i) + { + inc = arr[i]; + sheet = inc.include_sheet; + if (!inc.isActive() || root_sheet === sheet || already_included_sheets.indexOf(sheet) > -1) + continue; + already_included_sheets.push(sheet); + sheet.addDeepIncludes(root_sheet); + deep_includes.push(sheet); + } + }; + EventSheet.prototype.run = function (from_include) + { + if (!this.runtime.resuming_breakpoint) + { + this.hasRun = true; + if (!from_include) + this.runtime.isRunningEvents = true; + } + var i, len; + for (i = 0, len = this.events.length; i < len; i++) + { + var ev = this.events[i]; + ev.run(); + this.runtime.clearSol(ev.solModifiers); + if (this.runtime.hasPendingInstances) + this.runtime.ClearDeathRow(); + } + if (!from_include) + this.runtime.isRunningEvents = false; + }; + function isPerformanceSensitiveTrigger(method) + { + if (cr.plugins_.Sprite && method === cr.plugins_.Sprite.prototype.cnds.OnFrameChanged) + { + return true; + } + return false; + }; + EventSheet.prototype.init_trigger = function (trig, index) + { + if (!trig.orblock) + this.runtime.triggers_to_postinit.push(trig); // needs to be postInit'd later + var i, len; + var cnd = trig.conditions[index]; + var type_name; + if (cnd.type) + type_name = cnd.type.name; + else + type_name = "system"; + var fasttrigger = cnd.fasttrigger; + var triggers = (fasttrigger ? this.fasttriggers : this.triggers); + if (!triggers[type_name]) + triggers[type_name] = []; + var obj_entry = triggers[type_name]; + var method = cnd.func; + if (fasttrigger) + { + if (!cnd.parameters.length) // no parameters + return; + var firstparam = cnd.parameters[0]; + if (firstparam.type !== 1 || // not a string param + firstparam.expression.type !== 2) // not a string literal node + { + return; + } + var fastevs; + var firstvalue = firstparam.expression.value.toLowerCase(); + var i, len; + for (i = 0, len = obj_entry.length; i < len; i++) + { + if (obj_entry[i].method == method) + { + fastevs = obj_entry[i].evs; + if (!fastevs[firstvalue]) + fastevs[firstvalue] = [[trig, index]]; + else + fastevs[firstvalue].push([trig, index]); + return; + } + } + fastevs = {}; + fastevs[firstvalue] = [[trig, index]]; + obj_entry.push({ method: method, evs: fastevs }); + } + else + { + for (i = 0, len = obj_entry.length; i < len; i++) + { + if (obj_entry[i].method == method) + { + obj_entry[i].evs.push([trig, index]); + return; + } + } + if (isPerformanceSensitiveTrigger(method)) + obj_entry.unshift({ method: method, evs: [[trig, index]]}); + else + obj_entry.push({ method: method, evs: [[trig, index]]}); + } + }; + cr.eventsheet = EventSheet; + function Selection(type) + { + this.type = type; + this.instances = []; // subset of picked instances + this.else_instances = []; // subset of unpicked instances + this.select_all = true; + }; + Selection.prototype.hasObjects = function () + { + if (this.select_all) + return this.type.instances.length; + else + return this.instances.length; + }; + Selection.prototype.getObjects = function () + { + if (this.select_all) + return this.type.instances; + else + return this.instances; + }; + /* + Selection.prototype.ensure_picked = function (inst, skip_siblings) + { + var i, len; + var orblock = inst.runtime.getCurrentEventStack().current_event.orblock; + if (this.select_all) + { + this.select_all = false; + if (orblock) + { + cr.shallowAssignArray(this.else_instances, inst.type.instances); + cr.arrayFindRemove(this.else_instances, inst); + } + this.instances.length = 1; + this.instances[0] = inst; + } + else + { + if (orblock) + { + i = this.else_instances.indexOf(inst); + if (i !== -1) + { + this.instances.push(this.else_instances[i]); + this.else_instances.splice(i, 1); + } + } + else + { + if (this.instances.indexOf(inst) === -1) + this.instances.push(inst); + } + } + if (!skip_siblings) + { + } + }; + */ + Selection.prototype.pick_one = function (inst) + { + if (!inst) + return; + if (inst.runtime.getCurrentEventStack().current_event.orblock) + { + if (this.select_all) + { + cr.clearArray(this.instances); + cr.shallowAssignArray(this.else_instances, inst.type.instances); + this.select_all = false; + } + var i = this.else_instances.indexOf(inst); + if (i !== -1) + { + this.instances.push(this.else_instances[i]); + this.else_instances.splice(i, 1); + } + } + else + { + this.select_all = false; + cr.clearArray(this.instances); + this.instances[0] = inst; + } + }; + cr.selection = Selection; + function EventBlock(sheet, parent, m) + { + this.sheet = sheet; + this.parent = parent; + this.runtime = sheet.runtime; + this.solModifiers = []; + this.solModifiersIncludingParents = []; + this.solWriterAfterCnds = false; // block does not change SOL after running its conditions + this.group = false; // is group of events + this.initially_activated = false; // if a group, is active on startup + this.toplevelevent = false; // is an event block parented only by a top-level group + this.toplevelgroup = false; // is parented only by other groups or is top-level (i.e. not in a subevent) + this.has_else_block = false; // is followed by else +; + this.conditions = []; + this.actions = []; + this.subevents = []; + this.group_name = ""; + this.group = false; + this.initially_activated = false; + this.group_active = false; + this.contained_includes = null; + if (m[1]) + { + this.group_name = m[1][1].toLowerCase(); + this.group = true; + this.initially_activated = !!m[1][0]; + this.contained_includes = []; + this.group_active = this.initially_activated; + this.runtime.allGroups.push(this); + this.runtime.groups_by_name[this.group_name] = this; + } + this.orblock = m[2]; + this.sid = m[4]; + if (!this.group) + this.runtime.blocksBySid[this.sid.toString()] = this; + var i, len; + var cm = m[5]; + for (i = 0, len = cm.length; i < len; i++) + { + var cnd = new cr.condition(this, cm[i]); + cnd.index = i; + cr.seal(cnd); + this.conditions.push(cnd); + /* + if (cnd.is_logical()) + this.is_logical = true; + if (cnd.type && !cnd.type.plugin.singleglobal && this.cndReferences.indexOf(cnd.type) === -1) + this.cndReferences.push(cnd.type); + */ + this.addSolModifier(cnd.type); + } + var am = m[6]; + for (i = 0, len = am.length; i < len; i++) + { + var act = new cr.action(this, am[i]); + act.index = i; + cr.seal(act); + this.actions.push(act); + } + if (m.length === 8) + { + var em = m[7]; + for (i = 0, len = em.length; i < len; i++) + this.sheet.init_event(em[i], this, this.subevents); + } + this.is_else_block = false; + if (this.conditions.length) + { + this.is_else_block = (this.conditions[0].type == null && this.conditions[0].func == cr.system_object.prototype.cnds.Else); + } + }; + window["_c2hh_"] = "6A19FFAE7F62FE8813F3700E41734FD8D2C6DB17"; + EventBlock.prototype.postInit = function (hasElse/*, prevBlock_*/) + { + var i, len; + var p = this.parent; + if (this.group) + { + this.toplevelgroup = true; + while (p) + { + if (!p.group) + { + this.toplevelgroup = false; + break; + } + p = p.parent; + } + } + this.toplevelevent = !this.is_trigger() && (!this.parent || (this.parent.group && this.parent.toplevelgroup)); + this.has_else_block = !!hasElse; + this.solModifiersIncludingParents = this.solModifiers.slice(0); + p = this.parent; + while (p) + { + for (i = 0, len = p.solModifiers.length; i < len; i++) + this.addParentSolModifier(p.solModifiers[i]); + p = p.parent; + } + this.solModifiers = findMatchingSolModifier(this.solModifiers); + this.solModifiersIncludingParents = findMatchingSolModifier(this.solModifiersIncludingParents); + var i, len/*, s*/; + for (i = 0, len = this.conditions.length; i < len; i++) + this.conditions[i].postInit(); + for (i = 0, len = this.actions.length; i < len; i++) + this.actions[i].postInit(); + for (i = 0, len = this.subevents.length; i < len; i++) + { + this.subevents[i].postInit(i < len - 1 && this.subevents[i + 1].is_else_block); + } + /* + if (this.is_else_block && this.prev_block) + { + for (i = 0, len = this.prev_block.solModifiers.length; i < len; i++) + { + s = this.prev_block.solModifiers[i]; + if (this.solModifiers.indexOf(s) === -1) + this.solModifiers.push(s); + } + } + */ + }; + EventBlock.prototype.setGroupActive = function (a) + { + if (this.group_active === !!a) + return; // same state + this.group_active = !!a; + var i, len; + for (i = 0, len = this.contained_includes.length; i < len; ++i) + { + this.contained_includes[i].updateActive(); + } + if (len > 0 && this.runtime.running_layout.event_sheet) + this.runtime.running_layout.event_sheet.updateDeepIncludes(); + }; + function addSolModifierToList(type, arr) + { + var i, len, t; + if (!type) + return; + if (arr.indexOf(type) === -1) + arr.push(type); + if (type.is_contained) + { + for (i = 0, len = type.container.length; i < len; i++) + { + t = type.container[i]; + if (type === t) + continue; // already handled + if (arr.indexOf(t) === -1) + arr.push(t); + } + } + }; + EventBlock.prototype.addSolModifier = function (type) + { + addSolModifierToList(type, this.solModifiers); + }; + EventBlock.prototype.addParentSolModifier = function (type) + { + addSolModifierToList(type, this.solModifiersIncludingParents); + }; + EventBlock.prototype.setSolWriterAfterCnds = function () + { + this.solWriterAfterCnds = true; + if (this.parent) + this.parent.setSolWriterAfterCnds(); + }; + EventBlock.prototype.is_trigger = function () + { + if (!this.conditions.length) // no conditions + return false; + else + return this.conditions[0].trigger; + }; + EventBlock.prototype.run = function () + { + var i, len, c, any_true = false, cnd_result; + var runtime = this.runtime; + var evinfo = this.runtime.getCurrentEventStack(); + evinfo.current_event = this; + var conditions = this.conditions; + if (!this.is_else_block) + evinfo.else_branch_ran = false; + if (this.orblock) + { + if (conditions.length === 0) + any_true = true; // be sure to run if empty block + evinfo.cndindex = 0 + for (len = conditions.length; evinfo.cndindex < len; evinfo.cndindex++) + { + c = conditions[evinfo.cndindex]; + if (c.trigger) // skip triggers when running OR block + continue; + cnd_result = c.run(); + if (cnd_result) // make sure all conditions run and run if any were true + any_true = true; + } + evinfo.last_event_true = any_true; + if (any_true) + this.run_actions_and_subevents(); + } + else + { + evinfo.cndindex = 0 + for (len = conditions.length; evinfo.cndindex < len; evinfo.cndindex++) + { + cnd_result = conditions[evinfo.cndindex].run(); + if (!cnd_result) // condition failed + { + evinfo.last_event_true = false; + if (this.toplevelevent && runtime.hasPendingInstances) + runtime.ClearDeathRow(); + return; // bail out now + } + } + evinfo.last_event_true = true; + this.run_actions_and_subevents(); + } + this.end_run(evinfo); + }; + EventBlock.prototype.end_run = function (evinfo) + { + if (evinfo.last_event_true && this.has_else_block) + evinfo.else_branch_ran = true; + if (this.toplevelevent && this.runtime.hasPendingInstances) + this.runtime.ClearDeathRow(); + }; + EventBlock.prototype.run_orblocktrigger = function (index) + { + var evinfo = this.runtime.getCurrentEventStack(); + evinfo.current_event = this; + if (this.conditions[index].run()) + { + this.run_actions_and_subevents(); + this.runtime.getCurrentEventStack().last_event_true = true; + } + }; + EventBlock.prototype.run_actions_and_subevents = function () + { + var evinfo = this.runtime.getCurrentEventStack(); + var len; + for (evinfo.actindex = 0, len = this.actions.length; evinfo.actindex < len; evinfo.actindex++) + { + if (this.actions[evinfo.actindex].run()) + return; + } + this.run_subevents(); + }; + EventBlock.prototype.resume_actions_and_subevents = function () + { + var evinfo = this.runtime.getCurrentEventStack(); + var len; + for (len = this.actions.length; evinfo.actindex < len; evinfo.actindex++) + { + if (this.actions[evinfo.actindex].run()) + return; + } + this.run_subevents(); + }; + EventBlock.prototype.run_subevents = function () + { + if (!this.subevents.length) + return; + var i, len, subev, pushpop/*, skipped_pop = false, pop_modifiers = null*/; + var last = this.subevents.length - 1; + this.runtime.pushEventStack(this); + if (this.solWriterAfterCnds) + { + for (i = 0, len = this.subevents.length; i < len; i++) + { + subev = this.subevents[i]; + pushpop = (!this.toplevelgroup || (!this.group && i < last)); + if (pushpop) + this.runtime.pushCopySol(subev.solModifiers); + subev.run(); + if (pushpop) + this.runtime.popSol(subev.solModifiers); + else + this.runtime.clearSol(subev.solModifiers); + } + } + else + { + for (i = 0, len = this.subevents.length; i < len; i++) + { + this.subevents[i].run(); + } + } + this.runtime.popEventStack(); + }; + EventBlock.prototype.run_pretrigger = function () + { + var evinfo = this.runtime.getCurrentEventStack(); + evinfo.current_event = this; + var any_true = false; + var i, len; + for (evinfo.cndindex = 0, len = this.conditions.length; evinfo.cndindex < len; evinfo.cndindex++) + { +; + if (this.conditions[evinfo.cndindex].run()) + any_true = true; + else if (!this.orblock) // condition failed (let OR blocks run all conditions anyway) + return false; // bail out + } + return this.orblock ? any_true : true; + }; + EventBlock.prototype.retrigger = function () + { + this.runtime.execcount++; + var prevcndindex = this.runtime.getCurrentEventStack().cndindex; + var len; + var evinfo = this.runtime.pushEventStack(this); + if (!this.orblock) + { + for (evinfo.cndindex = prevcndindex + 1, len = this.conditions.length; evinfo.cndindex < len; evinfo.cndindex++) + { + if (!this.conditions[evinfo.cndindex].run()) // condition failed + { + this.runtime.popEventStack(); // moving up level of recursion + return false; // bail out + } + } + } + this.run_actions_and_subevents(); + this.runtime.popEventStack(); + return true; // ran an iteration + }; + EventBlock.prototype.isFirstConditionOfType = function (cnd) + { + var cndindex = cnd.index; + if (cndindex === 0) + return true; + --cndindex; + for ( ; cndindex >= 0; --cndindex) + { + if (this.conditions[cndindex].type === cnd.type) + return false; + } + return true; + }; + cr.eventblock = EventBlock; + function Condition(block, m) + { + this.block = block; + this.sheet = block.sheet; + this.runtime = block.runtime; + this.parameters = []; + this.results = []; + this.extra = {}; // for plugins to stow away some custom info + this.index = -1; + this.anyParamVariesPerInstance = false; + this.func = this.runtime.GetObjectReference(m[1]); +; + this.trigger = (m[3] > 0); + this.fasttrigger = (m[3] === 2); + this.looping = m[4]; + this.inverted = m[5]; + this.isstatic = m[6]; + this.sid = m[7]; + this.runtime.cndsBySid[this.sid.toString()] = this; + if (m[0] === -1) // system object + { + this.type = null; + this.run = this.run_system; + this.behaviortype = null; + this.beh_index = -1; + } + else + { + this.type = this.runtime.types_by_index[m[0]]; +; + if (this.isstatic) + this.run = this.run_static; + else + this.run = this.run_object; + if (m[2]) + { + this.behaviortype = this.type.getBehaviorByName(m[2]); +; + this.beh_index = this.type.getBehaviorIndexByName(m[2]); +; + } + else + { + this.behaviortype = null; + this.beh_index = -1; + } + if (this.block.parent) + this.block.parent.setSolWriterAfterCnds(); + } + if (this.fasttrigger) + this.run = this.run_true; + if (m.length === 10) + { + var i, len; + var em = m[9]; + for (i = 0, len = em.length; i < len; i++) + { + var param = new cr.parameter(this, em[i]); + cr.seal(param); + this.parameters.push(param); + } + this.results.length = em.length; + } + }; + Condition.prototype.postInit = function () + { + var i, len, p; + for (i = 0, len = this.parameters.length; i < len; i++) + { + p = this.parameters[i]; + p.postInit(); + if (p.variesPerInstance) + this.anyParamVariesPerInstance = true; + } + }; + /* + Condition.prototype.is_logical = function () + { + return !this.type || this.type.plugin.singleglobal; + }; + */ + Condition.prototype.run_true = function () + { + return true; + }; + Condition.prototype.run_system = function () + { + var i, len; + for (i = 0, len = this.parameters.length; i < len; i++) + this.results[i] = this.parameters[i].get(); + return cr.xor(this.func.apply(this.runtime.system, this.results), this.inverted); + }; + Condition.prototype.run_static = function () + { + var i, len; + for (i = 0, len = this.parameters.length; i < len; i++) + this.results[i] = this.parameters[i].get(); + var ret = this.func.apply(this.behaviortype ? this.behaviortype : this.type, this.results); + this.type.applySolToContainer(); + return ret; + }; + Condition.prototype.run_object = function () + { + var i, j, k, leni, lenj, p, ret, met, inst, s, sol2; + var type = this.type; + var sol = type.getCurrentSol(); + var is_orblock = this.block.orblock && !this.trigger; // triggers in OR blocks need to work normally + var offset = 0; + var is_contained = type.is_contained; + var is_family = type.is_family; + var family_index = type.family_index; + var beh_index = this.beh_index; + var is_beh = (beh_index > -1); + var params_vary = this.anyParamVariesPerInstance; + var parameters = this.parameters; + var results = this.results; + var inverted = this.inverted; + var func = this.func; + var arr, container; + if (params_vary) + { + for (j = 0, lenj = parameters.length; j < lenj; ++j) + { + p = parameters[j]; + if (!p.variesPerInstance) + results[j] = p.get(0); + } + } + else + { + for (j = 0, lenj = parameters.length; j < lenj; ++j) + results[j] = parameters[j].get(0); + } + if (sol.select_all) { + cr.clearArray(sol.instances); // clear contents + cr.clearArray(sol.else_instances); + arr = type.instances; + for (i = 0, leni = arr.length; i < leni; ++i) + { + inst = arr[i]; +; + if (params_vary) + { + for (j = 0, lenj = parameters.length; j < lenj; ++j) + { + p = parameters[j]; + if (p.variesPerInstance) + results[j] = p.get(i); // default SOL index is current object + } + } + if (is_beh) + { + offset = 0; + if (is_family) + { + offset = inst.type.family_beh_map[family_index]; + } + ret = func.apply(inst.behavior_insts[beh_index + offset], results); + } + else + ret = func.apply(inst, results); + met = cr.xor(ret, inverted); + if (met) + sol.instances.push(inst); + else if (is_orblock) // in OR blocks, keep the instances not meeting the condition for subsequent testing + sol.else_instances.push(inst); + } + if (type.finish) + type.finish(true); + sol.select_all = false; + type.applySolToContainer(); + return sol.hasObjects(); + } + else { + k = 0; + var using_else_instances = (is_orblock && !this.block.isFirstConditionOfType(this)); + arr = (using_else_instances ? sol.else_instances : sol.instances); + var any_true = false; + for (i = 0, leni = arr.length; i < leni; ++i) + { + inst = arr[i]; +; + if (params_vary) + { + for (j = 0, lenj = parameters.length; j < lenj; ++j) + { + p = parameters[j]; + if (p.variesPerInstance) + results[j] = p.get(i); // default SOL index is current object + } + } + if (is_beh) + { + offset = 0; + if (is_family) + { + offset = inst.type.family_beh_map[family_index]; + } + ret = func.apply(inst.behavior_insts[beh_index + offset], results); + } + else + ret = func.apply(inst, results); + if (cr.xor(ret, inverted)) + { + any_true = true; + if (using_else_instances) + { + sol.instances.push(inst); + if (is_contained) + { + for (j = 0, lenj = inst.siblings.length; j < lenj; j++) + { + s = inst.siblings[j]; + s.type.getCurrentSol().instances.push(s); + } + } + } + else + { + arr[k] = inst; + if (is_contained) + { + for (j = 0, lenj = inst.siblings.length; j < lenj; j++) + { + s = inst.siblings[j]; + s.type.getCurrentSol().instances[k] = s; + } + } + k++; + } + } + else + { + if (using_else_instances) + { + arr[k] = inst; + if (is_contained) + { + for (j = 0, lenj = inst.siblings.length; j < lenj; j++) + { + s = inst.siblings[j]; + s.type.getCurrentSol().else_instances[k] = s; + } + } + k++; + } + else if (is_orblock) + { + sol.else_instances.push(inst); + if (is_contained) + { + for (j = 0, lenj = inst.siblings.length; j < lenj; j++) + { + s = inst.siblings[j]; + s.type.getCurrentSol().else_instances.push(s); + } + } + } + } + } + cr.truncateArray(arr, k); + if (is_contained) + { + container = type.container; + for (i = 0, leni = container.length; i < leni; i++) + { + sol2 = container[i].getCurrentSol(); + if (using_else_instances) + cr.truncateArray(sol2.else_instances, k); + else + cr.truncateArray(sol2.instances, k); + } + } + var pick_in_finish = any_true; // don't pick in finish() if we're only doing the logic test below + if (using_else_instances && !any_true) + { + for (i = 0, leni = sol.instances.length; i < leni; i++) + { + inst = sol.instances[i]; + if (params_vary) + { + for (j = 0, lenj = parameters.length; j < lenj; j++) + { + p = parameters[j]; + if (p.variesPerInstance) + results[j] = p.get(i); + } + } + if (is_beh) + ret = func.apply(inst.behavior_insts[beh_index], results); + else + ret = func.apply(inst, results); + if (cr.xor(ret, inverted)) + { + any_true = true; + break; // got our flag, don't need to test any more + } + } + } + if (type.finish) + type.finish(pick_in_finish || is_orblock); + return is_orblock ? any_true : sol.hasObjects(); + } + }; + cr.condition = Condition; + function Action(block, m) + { + this.block = block; + this.sheet = block.sheet; + this.runtime = block.runtime; + this.parameters = []; + this.results = []; + this.extra = {}; // for plugins to stow away some custom info + this.index = -1; + this.anyParamVariesPerInstance = false; + this.func = this.runtime.GetObjectReference(m[1]); +; + if (m[0] === -1) // system + { + this.type = null; + this.run = this.run_system; + this.behaviortype = null; + this.beh_index = -1; + } + else + { + this.type = this.runtime.types_by_index[m[0]]; +; + this.run = this.run_object; + if (m[2]) + { + this.behaviortype = this.type.getBehaviorByName(m[2]); +; + this.beh_index = this.type.getBehaviorIndexByName(m[2]); +; + } + else + { + this.behaviortype = null; + this.beh_index = -1; + } + } + this.sid = m[3]; + this.runtime.actsBySid[this.sid.toString()] = this; + if (m.length === 6) + { + var i, len; + var em = m[5]; + for (i = 0, len = em.length; i < len; i++) + { + var param = new cr.parameter(this, em[i]); + cr.seal(param); + this.parameters.push(param); + } + this.results.length = em.length; + } + }; + Action.prototype.postInit = function () + { + var i, len, p; + for (i = 0, len = this.parameters.length; i < len; i++) + { + p = this.parameters[i]; + p.postInit(); + if (p.variesPerInstance) + this.anyParamVariesPerInstance = true; + } + }; + Action.prototype.run_system = function () + { + var runtime = this.runtime; + var i, len; + var parameters = this.parameters; + var results = this.results; + for (i = 0, len = parameters.length; i < len; ++i) + results[i] = parameters[i].get(); + return this.func.apply(runtime.system, results); + }; + Action.prototype.run_object = function () + { + var type = this.type; + var beh_index = this.beh_index; + var family_index = type.family_index; + var params_vary = this.anyParamVariesPerInstance; + var parameters = this.parameters; + var results = this.results; + var func = this.func; + var instances = type.getCurrentSol().getObjects(); + var is_family = type.is_family; + var is_beh = (beh_index > -1); + var i, j, leni, lenj, p, inst, offset; + if (params_vary) + { + for (j = 0, lenj = parameters.length; j < lenj; ++j) + { + p = parameters[j]; + if (!p.variesPerInstance) + results[j] = p.get(0); + } + } + else + { + for (j = 0, lenj = parameters.length; j < lenj; ++j) + results[j] = parameters[j].get(0); + } + for (i = 0, leni = instances.length; i < leni; ++i) + { + inst = instances[i]; + if (params_vary) + { + for (j = 0, lenj = parameters.length; j < lenj; ++j) + { + p = parameters[j]; + if (p.variesPerInstance) + results[j] = p.get(i); // pass i to use as default SOL index + } + } + if (is_beh) + { + offset = 0; + if (is_family) + { + offset = inst.type.family_beh_map[family_index]; + } + func.apply(inst.behavior_insts[beh_index + offset], results); + } + else + func.apply(inst, results); + } + return false; + }; + cr.action = Action; + var tempValues = []; + var tempValuesPtr = -1; + function pushTempValue() + { + tempValuesPtr++; + if (tempValues.length === tempValuesPtr) + tempValues.push(new cr.expvalue()); + return tempValues[tempValuesPtr]; + }; + function popTempValue() + { + tempValuesPtr--; + }; + function Parameter(owner, m) + { + this.owner = owner; + this.block = owner.block; + this.sheet = owner.sheet; + this.runtime = owner.runtime; + this.type = m[0]; + this.expression = null; + this.solindex = 0; + this.get = null; + this.combosel = 0; + this.layout = null; + this.key = 0; + this.object = null; + this.index = 0; + this.varname = null; + this.eventvar = null; + this.fileinfo = null; + this.subparams = null; + this.variadicret = null; + this.subparams = null; + this.variadicret = null; + this.variesPerInstance = false; + var i, len, param; + switch (m[0]) + { + case 0: // number + case 7: // any + this.expression = new cr.expNode(this, m[1]); + this.solindex = 0; + this.get = this.get_exp; + break; + case 1: // string + this.expression = new cr.expNode(this, m[1]); + this.solindex = 0; + this.get = this.get_exp_str; + break; + case 5: // layer + this.expression = new cr.expNode(this, m[1]); + this.solindex = 0; + this.get = this.get_layer; + break; + case 3: // combo + case 8: // cmp + this.combosel = m[1]; + this.get = this.get_combosel; + break; + case 6: // layout + this.layout = this.runtime.layouts[m[1]]; +; + this.get = this.get_layout; + break; + case 9: // keyb + this.key = m[1]; + this.get = this.get_key; + break; + case 4: // object + this.object = this.runtime.types_by_index[m[1]]; +; + this.get = this.get_object; + this.block.addSolModifier(this.object); + if (this.owner instanceof cr.action) + this.block.setSolWriterAfterCnds(); + else if (this.block.parent) + this.block.parent.setSolWriterAfterCnds(); + break; + case 10: // instvar + this.index = m[1]; + if (owner.type && owner.type.is_family) + { + this.get = this.get_familyvar; + this.variesPerInstance = true; + } + else + this.get = this.get_instvar; + break; + case 11: // eventvar + this.varname = m[1]; + this.eventvar = null; + this.get = this.get_eventvar; + break; + case 2: // audiofile ["name", ismusic] + case 12: // fileinfo "name" + this.fileinfo = m[1]; + this.get = this.get_audiofile; + break; + case 13: // variadic + this.get = this.get_variadic; + this.subparams = []; + this.variadicret = []; + for (i = 1, len = m.length; i < len; i++) + { + param = new cr.parameter(this.owner, m[i]); + cr.seal(param); + this.subparams.push(param); + this.variadicret.push(0); + } + break; + default: +; + } + }; + Parameter.prototype.postInit = function () + { + var i, len; + if (this.type === 11) // eventvar + { + this.eventvar = this.runtime.getEventVariableByName(this.varname, this.block.parent); +; + } + else if (this.type === 13) // variadic, postInit all sub-params + { + for (i = 0, len = this.subparams.length; i < len; i++) + this.subparams[i].postInit(); + } + if (this.expression) + this.expression.postInit(); + }; + Parameter.prototype.maybeVaryForType = function (t) + { + if (this.variesPerInstance) + return; // already varies per instance, no need to check again + if (!t) + return; // never vary for system type + if (!t.plugin.singleglobal) + { + this.variesPerInstance = true; + return; + } + }; + Parameter.prototype.setVaries = function () + { + this.variesPerInstance = true; + }; + Parameter.prototype.get_exp = function (solindex) + { + this.solindex = solindex || 0; // default SOL index to use + var temp = pushTempValue(); + this.expression.get(temp); + popTempValue(); + return temp.data; // return actual JS value, not expvalue + }; + Parameter.prototype.get_exp_str = function (solindex) + { + this.solindex = solindex || 0; // default SOL index to use + var temp = pushTempValue(); + this.expression.get(temp); + popTempValue(); + if (cr.is_string(temp.data)) + return temp.data; + else + return ""; + }; + Parameter.prototype.get_object = function () + { + return this.object; + }; + Parameter.prototype.get_combosel = function () + { + return this.combosel; + }; + Parameter.prototype.get_layer = function (solindex) + { + this.solindex = solindex || 0; // default SOL index to use + var temp = pushTempValue(); + this.expression.get(temp); + popTempValue(); + if (temp.is_number()) + return this.runtime.getLayerByNumber(temp.data); + else + return this.runtime.getLayerByName(temp.data); + } + Parameter.prototype.get_layout = function () + { + return this.layout; + }; + Parameter.prototype.get_key = function () + { + return this.key; + }; + Parameter.prototype.get_instvar = function () + { + return this.index; + }; + Parameter.prototype.get_familyvar = function (solindex_) + { + var solindex = solindex_ || 0; + var familytype = this.owner.type; + var realtype = null; + var sol = familytype.getCurrentSol(); + var objs = sol.getObjects(); + if (objs.length) + realtype = objs[solindex % objs.length].type; + else if (sol.else_instances.length) + realtype = sol.else_instances[solindex % sol.else_instances.length].type; + else if (familytype.instances.length) + realtype = familytype.instances[solindex % familytype.instances.length].type; + else + return 0; + return this.index + realtype.family_var_map[familytype.family_index]; + }; + Parameter.prototype.get_eventvar = function () + { + return this.eventvar; + }; + Parameter.prototype.get_audiofile = function () + { + return this.fileinfo; + }; + Parameter.prototype.get_variadic = function () + { + var i, len; + for (i = 0, len = this.subparams.length; i < len; i++) + { + this.variadicret[i] = this.subparams[i].get(); + } + return this.variadicret; + }; + cr.parameter = Parameter; + function EventVariable(sheet, parent, m) + { + this.sheet = sheet; + this.parent = parent; + this.runtime = sheet.runtime; + this.solModifiers = []; + this.name = m[1]; + this.vartype = m[2]; + this.initial = m[3]; + this.is_static = !!m[4]; + this.is_constant = !!m[5]; + this.sid = m[6]; + this.runtime.varsBySid[this.sid.toString()] = this; + this.data = this.initial; // note: also stored in event stack frame for local nonstatic nonconst vars + if (this.parent) // local var + { + if (this.is_static || this.is_constant) + this.localIndex = -1; + else + this.localIndex = this.runtime.stackLocalCount++; + this.runtime.all_local_vars.push(this); + } + else // global var + { + this.localIndex = -1; + this.runtime.all_global_vars.push(this); + } + }; + EventVariable.prototype.postInit = function () + { + this.solModifiers = findMatchingSolModifier(this.solModifiers); + }; + EventVariable.prototype.setValue = function (x) + { +; + var lvs = this.runtime.getCurrentLocalVarStack(); + if (!this.parent || this.is_static || !lvs) + this.data = x; + else // local nonstatic variable: use event stack to keep value at this level of recursion + { + if (this.localIndex >= lvs.length) + lvs.length = this.localIndex + 1; + lvs[this.localIndex] = x; + } + }; + EventVariable.prototype.getValue = function () + { + var lvs = this.runtime.getCurrentLocalVarStack(); + if (!this.parent || this.is_static || !lvs || this.is_constant) + return this.data; + else // local nonstatic variable + { + if (this.localIndex >= lvs.length) + { + return this.initial; + } + if (typeof lvs[this.localIndex] === "undefined") + { + return this.initial; + } + return lvs[this.localIndex]; + } + }; + EventVariable.prototype.run = function () + { + if (this.parent && !this.is_static && !this.is_constant) + this.setValue(this.initial); + }; + cr.eventvariable = EventVariable; + function EventInclude(sheet, parent, m) + { + this.sheet = sheet; + this.parent = parent; + this.runtime = sheet.runtime; + this.solModifiers = []; + this.include_sheet = null; // determined in postInit + this.include_sheet_name = m[1]; + this.active = true; + }; + EventInclude.prototype.toString = function () + { + return "include:" + this.include_sheet.toString(); + }; + EventInclude.prototype.postInit = function () + { + this.include_sheet = this.runtime.eventsheets[this.include_sheet_name]; +; +; + this.sheet.includes.add(this); + this.solModifiers = findMatchingSolModifier(this.solModifiers); + var p = this.parent; + while (p) + { + if (p.group) + p.contained_includes.push(this); + p = p.parent; + } + this.updateActive(); + }; + EventInclude.prototype.run = function () + { + if (this.parent) + this.runtime.pushCleanSol(this.runtime.types_by_index); + if (!this.include_sheet.hasRun) + this.include_sheet.run(true); // from include + if (this.parent) + this.runtime.popSol(this.runtime.types_by_index); + }; + EventInclude.prototype.updateActive = function () + { + var p = this.parent; + while (p) + { + if (p.group && !p.group_active) + { + this.active = false; + return; + } + p = p.parent; + } + this.active = true; + }; + EventInclude.prototype.isActive = function () + { + return this.active; + }; + cr.eventinclude = EventInclude; + function EventStackFrame() + { + this.temp_parents_arr = []; + this.reset(null); + cr.seal(this); + }; + EventStackFrame.prototype.reset = function (cur_event) + { + this.current_event = cur_event; + this.cndindex = 0; + this.actindex = 0; + cr.clearArray(this.temp_parents_arr); + this.last_event_true = false; + this.else_branch_ran = false; + this.any_true_state = false; + }; + EventStackFrame.prototype.isModifierAfterCnds = function () + { + if (this.current_event.solWriterAfterCnds) + return true; + if (this.cndindex < this.current_event.conditions.length - 1) + return !!this.current_event.solModifiers.length; + return false; + }; + cr.eventStackFrame = EventStackFrame; +}()); +(function() +{ + function ExpNode(owner_, m) + { + this.owner = owner_; + this.runtime = owner_.runtime; + this.type = m[0]; +; + this.get = [this.eval_int, + this.eval_float, + this.eval_string, + this.eval_unaryminus, + this.eval_add, + this.eval_subtract, + this.eval_multiply, + this.eval_divide, + this.eval_mod, + this.eval_power, + this.eval_and, + this.eval_or, + this.eval_equal, + this.eval_notequal, + this.eval_less, + this.eval_lessequal, + this.eval_greater, + this.eval_greaterequal, + this.eval_conditional, + this.eval_system_exp, + this.eval_object_exp, + this.eval_instvar_exp, + this.eval_behavior_exp, + this.eval_eventvar_exp][this.type]; + var paramsModel = null; + this.value = null; + this.first = null; + this.second = null; + this.third = null; + this.func = null; + this.results = null; + this.parameters = null; + this.object_type = null; + this.beh_index = -1; + this.instance_expr = null; + this.varindex = -1; + this.behavior_type = null; + this.varname = null; + this.eventvar = null; + this.return_string = false; + switch (this.type) { + case 0: // int + case 1: // float + case 2: // string + this.value = m[1]; + break; + case 3: // unaryminus + this.first = new cr.expNode(owner_, m[1]); + break; + case 18: // conditional + this.first = new cr.expNode(owner_, m[1]); + this.second = new cr.expNode(owner_, m[2]); + this.third = new cr.expNode(owner_, m[3]); + break; + case 19: // system_exp + this.func = this.runtime.GetObjectReference(m[1]); +; + if (this.func === cr.system_object.prototype.exps.random + || this.func === cr.system_object.prototype.exps.choose) + { + this.owner.setVaries(); + } + this.results = []; + this.parameters = []; + if (m.length === 3) + { + paramsModel = m[2]; + this.results.length = paramsModel.length + 1; // must also fit 'ret' + } + else + this.results.length = 1; // to fit 'ret' + break; + case 20: // object_exp + this.object_type = this.runtime.types_by_index[m[1]]; +; + this.beh_index = -1; + this.func = this.runtime.GetObjectReference(m[2]); + this.return_string = m[3]; + if (cr.plugins_.Function && this.func === cr.plugins_.Function.prototype.exps.Call) + { + this.owner.setVaries(); + } + if (m[4]) + this.instance_expr = new cr.expNode(owner_, m[4]); + else + this.instance_expr = null; + this.results = []; + this.parameters = []; + if (m.length === 6) + { + paramsModel = m[5]; + this.results.length = paramsModel.length + 1; + } + else + this.results.length = 1; // to fit 'ret' + break; + case 21: // instvar_exp + this.object_type = this.runtime.types_by_index[m[1]]; +; + this.return_string = m[2]; + if (m[3]) + this.instance_expr = new cr.expNode(owner_, m[3]); + else + this.instance_expr = null; + this.varindex = m[4]; + break; + case 22: // behavior_exp + this.object_type = this.runtime.types_by_index[m[1]]; +; + this.behavior_type = this.object_type.getBehaviorByName(m[2]); +; + this.beh_index = this.object_type.getBehaviorIndexByName(m[2]); + this.func = this.runtime.GetObjectReference(m[3]); + this.return_string = m[4]; + if (m[5]) + this.instance_expr = new cr.expNode(owner_, m[5]); + else + this.instance_expr = null; + this.results = []; + this.parameters = []; + if (m.length === 7) + { + paramsModel = m[6]; + this.results.length = paramsModel.length + 1; + } + else + this.results.length = 1; // to fit 'ret' + break; + case 23: // eventvar_exp + this.varname = m[1]; + this.eventvar = null; // assigned in postInit + break; + } + this.owner.maybeVaryForType(this.object_type); + if (this.type >= 4 && this.type <= 17) + { + this.first = new cr.expNode(owner_, m[1]); + this.second = new cr.expNode(owner_, m[2]); + } + if (paramsModel) + { + var i, len; + for (i = 0, len = paramsModel.length; i < len; i++) + this.parameters.push(new cr.expNode(owner_, paramsModel[i])); + } + cr.seal(this); + }; + ExpNode.prototype.postInit = function () + { + if (this.type === 23) // eventvar_exp + { + this.eventvar = this.owner.runtime.getEventVariableByName(this.varname, this.owner.block.parent); +; + } + if (this.first) + this.first.postInit(); + if (this.second) + this.second.postInit(); + if (this.third) + this.third.postInit(); + if (this.instance_expr) + this.instance_expr.postInit(); + if (this.parameters) + { + var i, len; + for (i = 0, len = this.parameters.length; i < len; i++) + this.parameters[i].postInit(); + } + }; + var tempValues = []; + var tempValuesPtr = -1; + function pushTempValue() + { + ++tempValuesPtr; + if (tempValues.length === tempValuesPtr) + tempValues.push(new cr.expvalue()); + return tempValues[tempValuesPtr]; + }; + function popTempValue() + { + --tempValuesPtr; + }; + function eval_params(parameters, results, temp) + { + var i, len; + for (i = 0, len = parameters.length; i < len; ++i) + { + parameters[i].get(temp); + results[i + 1] = temp.data; // passing actual javascript value as argument instead of expvalue + } + } + ExpNode.prototype.eval_system_exp = function (ret) + { + var parameters = this.parameters; + var results = this.results; + results[0] = ret; + var temp = pushTempValue(); + eval_params(parameters, results, temp); + popTempValue(); + this.func.apply(this.runtime.system, results); + }; + ExpNode.prototype.eval_object_exp = function (ret) + { + var object_type = this.object_type; + var results = this.results; + var parameters = this.parameters; + var instance_expr = this.instance_expr; + var func = this.func; + var index = this.owner.solindex; // default to parameter's intended SOL index + var sol = object_type.getCurrentSol(); + var instances = sol.getObjects(); + if (!instances.length) + { + if (sol.else_instances.length) + instances = sol.else_instances; + else + { + if (this.return_string) + ret.set_string(""); + else + ret.set_int(0); + return; + } + } + results[0] = ret; + ret.object_class = object_type; // so expression can access family type if need be + var temp = pushTempValue(); + eval_params(parameters, results, temp); + if (instance_expr) { + instance_expr.get(temp); + if (temp.is_number()) { + index = temp.data; + instances = object_type.instances; // pick from all instances, not SOL + } + } + popTempValue(); + var len = instances.length; + if (index >= len || index <= -len) + index %= len; // wraparound + if (index < 0) + index += len; + var returned_val = func.apply(instances[index], results); +; + }; + ExpNode.prototype.eval_behavior_exp = function (ret) + { + var object_type = this.object_type; + var results = this.results; + var parameters = this.parameters; + var instance_expr = this.instance_expr; + var beh_index = this.beh_index; + var func = this.func; + var index = this.owner.solindex; // default to parameter's intended SOL index + var sol = object_type.getCurrentSol(); + var instances = sol.getObjects(); + if (!instances.length) + { + if (sol.else_instances.length) + instances = sol.else_instances; + else + { + if (this.return_string) + ret.set_string(""); + else + ret.set_int(0); + return; + } + } + results[0] = ret; + ret.object_class = object_type; // so expression can access family type if need be + var temp = pushTempValue(); + eval_params(parameters, results, temp); + if (instance_expr) { + instance_expr.get(temp); + if (temp.is_number()) { + index = temp.data; + instances = object_type.instances; // pick from all instances, not SOL + } + } + popTempValue(); + var len = instances.length; + if (index >= len || index <= -len) + index %= len; // wraparound + if (index < 0) + index += len; + var inst = instances[index]; + var offset = 0; + if (object_type.is_family) + { + offset = inst.type.family_beh_map[object_type.family_index]; + } + var returned_val = func.apply(inst.behavior_insts[beh_index + offset], results); +; + }; + ExpNode.prototype.eval_instvar_exp = function (ret) + { + var instance_expr = this.instance_expr; + var object_type = this.object_type; + var varindex = this.varindex; + var index = this.owner.solindex; // default to parameter's intended SOL index + var sol = object_type.getCurrentSol(); + var instances = sol.getObjects(); + var inst; + if (!instances.length) + { + if (sol.else_instances.length) + instances = sol.else_instances; + else + { + if (this.return_string) + ret.set_string(""); + else + ret.set_int(0); + return; + } + } + if (instance_expr) + { + var temp = pushTempValue(); + instance_expr.get(temp); + if (temp.is_number()) + { + index = temp.data; + var type_instances = object_type.instances; + if (type_instances.length !== 0) // avoid NaN result with % + { + index %= type_instances.length; // wraparound + if (index < 0) // offset + index += type_instances.length; + } + inst = object_type.getInstanceByIID(index); + var to_ret = inst.instance_vars[varindex]; + if (cr.is_string(to_ret)) + ret.set_string(to_ret); + else + ret.set_float(to_ret); + popTempValue(); + return; // done + } + popTempValue(); + } + var len = instances.length; + if (index >= len || index <= -len) + index %= len; // wraparound + if (index < 0) + index += len; + inst = instances[index]; + var offset = 0; + if (object_type.is_family) + { + offset = inst.type.family_var_map[object_type.family_index]; + } + var to_ret = inst.instance_vars[varindex + offset]; + if (cr.is_string(to_ret)) + ret.set_string(to_ret); + else + ret.set_float(to_ret); + }; + ExpNode.prototype.eval_int = function (ret) + { + ret.type = cr.exptype.Integer; + ret.data = this.value; + }; + ExpNode.prototype.eval_float = function (ret) + { + ret.type = cr.exptype.Float; + ret.data = this.value; + }; + ExpNode.prototype.eval_string = function (ret) + { + ret.type = cr.exptype.String; + ret.data = this.value; + }; + ExpNode.prototype.eval_unaryminus = function (ret) + { + this.first.get(ret); // retrieve operand + if (ret.is_number()) + ret.data = -ret.data; + }; + ExpNode.prototype.eval_add = function (ret) + { + this.first.get(ret); // left operand + var temp = pushTempValue(); + this.second.get(temp); // right operand + if (ret.is_number() && temp.is_number()) + { + ret.data += temp.data; // both operands numbers: add + if (temp.is_float()) + ret.make_float(); + } + popTempValue(); + }; + ExpNode.prototype.eval_subtract = function (ret) + { + this.first.get(ret); // left operand + var temp = pushTempValue(); + this.second.get(temp); // right operand + if (ret.is_number() && temp.is_number()) + { + ret.data -= temp.data; // both operands numbers: subtract + if (temp.is_float()) + ret.make_float(); + } + popTempValue(); + }; + ExpNode.prototype.eval_multiply = function (ret) + { + this.first.get(ret); // left operand + var temp = pushTempValue(); + this.second.get(temp); // right operand + if (ret.is_number() && temp.is_number()) + { + ret.data *= temp.data; // both operands numbers: multiply + if (temp.is_float()) + ret.make_float(); + } + popTempValue(); + }; + ExpNode.prototype.eval_divide = function (ret) + { + this.first.get(ret); // left operand + var temp = pushTempValue(); + this.second.get(temp); // right operand + if (ret.is_number() && temp.is_number()) + { + ret.data /= temp.data; // both operands numbers: divide + ret.make_float(); + } + popTempValue(); + }; + ExpNode.prototype.eval_mod = function (ret) + { + this.first.get(ret); // left operand + var temp = pushTempValue(); + this.second.get(temp); // right operand + if (ret.is_number() && temp.is_number()) + { + ret.data %= temp.data; // both operands numbers: modulo + if (temp.is_float()) + ret.make_float(); + } + popTempValue(); + }; + ExpNode.prototype.eval_power = function (ret) + { + this.first.get(ret); // left operand + var temp = pushTempValue(); + this.second.get(temp); // right operand + if (ret.is_number() && temp.is_number()) + { + ret.data = Math.pow(ret.data, temp.data); // both operands numbers: raise to power + if (temp.is_float()) + ret.make_float(); + } + popTempValue(); + }; + ExpNode.prototype.eval_and = function (ret) + { + this.first.get(ret); // left operand + var temp = pushTempValue(); + this.second.get(temp); // right operand + if (temp.is_string() || ret.is_string()) + this.eval_and_stringconcat(ret, temp); + else + this.eval_and_logical(ret, temp); + popTempValue(); + }; + ExpNode.prototype.eval_and_stringconcat = function (ret, temp) + { + if (ret.is_string() && temp.is_string()) + this.eval_and_stringconcat_str_str(ret, temp); + else + this.eval_and_stringconcat_num(ret, temp); + }; + ExpNode.prototype.eval_and_stringconcat_str_str = function (ret, temp) + { + ret.data += temp.data; + }; + ExpNode.prototype.eval_and_stringconcat_num = function (ret, temp) + { + if (ret.is_string()) + { + ret.data += (Math.round(temp.data * 1e10) / 1e10).toString(); + } + else + { + ret.set_string(ret.data.toString() + temp.data); + } + }; + ExpNode.prototype.eval_and_logical = function (ret, temp) + { + ret.set_int(ret.data && temp.data ? 1 : 0); + }; + ExpNode.prototype.eval_or = function (ret) + { + this.first.get(ret); // left operand + var temp = pushTempValue(); + this.second.get(temp); // right operand + if (ret.is_number() && temp.is_number()) + { + if (ret.data || temp.data) + ret.set_int(1); + else + ret.set_int(0); + } + popTempValue(); + }; + ExpNode.prototype.eval_conditional = function (ret) + { + this.first.get(ret); // condition operand + if (ret.data) // is true + this.second.get(ret); // evaluate second operand to ret + else + this.third.get(ret); // evaluate third operand to ret + }; + ExpNode.prototype.eval_equal = function (ret) + { + this.first.get(ret); // left operand + var temp = pushTempValue(); + this.second.get(temp); // right operand + ret.set_int(ret.data === temp.data ? 1 : 0); + popTempValue(); + }; + ExpNode.prototype.eval_notequal = function (ret) + { + this.first.get(ret); // left operand + var temp = pushTempValue(); + this.second.get(temp); // right operand + ret.set_int(ret.data !== temp.data ? 1 : 0); + popTempValue(); + }; + ExpNode.prototype.eval_less = function (ret) + { + this.first.get(ret); // left operand + var temp = pushTempValue(); + this.second.get(temp); // right operand + ret.set_int(ret.data < temp.data ? 1 : 0); + popTempValue(); + }; + ExpNode.prototype.eval_lessequal = function (ret) + { + this.first.get(ret); // left operand + var temp = pushTempValue(); + this.second.get(temp); // right operand + ret.set_int(ret.data <= temp.data ? 1 : 0); + popTempValue(); + }; + ExpNode.prototype.eval_greater = function (ret) + { + this.first.get(ret); // left operand + var temp = pushTempValue(); + this.second.get(temp); // right operand + ret.set_int(ret.data > temp.data ? 1 : 0); + popTempValue(); + }; + ExpNode.prototype.eval_greaterequal = function (ret) + { + this.first.get(ret); // left operand + var temp = pushTempValue(); + this.second.get(temp); // right operand + ret.set_int(ret.data >= temp.data ? 1 : 0); + popTempValue(); + }; + ExpNode.prototype.eval_eventvar_exp = function (ret) + { + var val = this.eventvar.getValue(); + if (cr.is_number(val)) + ret.set_float(val); + else + ret.set_string(val); + }; + cr.expNode = ExpNode; + function ExpValue(type, data) + { + this.type = type || cr.exptype.Integer; + this.data = data || 0; + this.object_class = null; +; +; +; + if (this.type == cr.exptype.Integer) + this.data = Math.floor(this.data); + cr.seal(this); + }; + ExpValue.prototype.is_int = function () + { + return this.type === cr.exptype.Integer; + }; + ExpValue.prototype.is_float = function () + { + return this.type === cr.exptype.Float; + }; + ExpValue.prototype.is_number = function () + { + return this.type === cr.exptype.Integer || this.type === cr.exptype.Float; + }; + ExpValue.prototype.is_string = function () + { + return this.type === cr.exptype.String; + }; + ExpValue.prototype.make_int = function () + { + if (!this.is_int()) + { + if (this.is_float()) + this.data = Math.floor(this.data); // truncate float + else if (this.is_string()) + this.data = parseInt(this.data, 10); + this.type = cr.exptype.Integer; + } + }; + ExpValue.prototype.make_float = function () + { + if (!this.is_float()) + { + if (this.is_string()) + this.data = parseFloat(this.data); + this.type = cr.exptype.Float; + } + }; + ExpValue.prototype.make_string = function () + { + if (!this.is_string()) + { + this.data = this.data.toString(); + this.type = cr.exptype.String; + } + }; + ExpValue.prototype.set_int = function (val) + { +; + this.type = cr.exptype.Integer; + this.data = Math.floor(val); + }; + ExpValue.prototype.set_float = function (val) + { +; + this.type = cr.exptype.Float; + this.data = val; + }; + ExpValue.prototype.set_string = function (val) + { +; + this.type = cr.exptype.String; + this.data = val; + }; + ExpValue.prototype.set_any = function (val) + { + if (cr.is_number(val)) + { + this.type = cr.exptype.Float; + this.data = val; + } + else if (cr.is_string(val)) + { + this.type = cr.exptype.String; + this.data = val.toString(); + } + else + { + this.type = cr.exptype.Integer; + this.data = 0; + } + }; + cr.expvalue = ExpValue; + cr.exptype = { + Integer: 0, // emulated; no native integer support in javascript + Float: 1, + String: 2 + }; +}()); +; +cr.system_object = function (runtime) +{ + this.runtime = runtime; + this.waits = []; +}; +cr.system_object.prototype.saveToJSON = function () +{ + var o = {}; + var i, len, j, lenj, p, w, t, sobj; + o["waits"] = []; + var owaits = o["waits"]; + var waitobj; + for (i = 0, len = this.waits.length; i < len; i++) + { + w = this.waits[i]; + waitobj = { + "t": w.time, + "st": w.signaltag, + "s": w.signalled, + "ev": w.ev.sid, + "sm": [], + "sols": {} + }; + if (w.ev.actions[w.actindex]) + waitobj["act"] = w.ev.actions[w.actindex].sid; + for (j = 0, lenj = w.solModifiers.length; j < lenj; j++) + waitobj["sm"].push(w.solModifiers[j].sid); + for (p in w.sols) + { + if (w.sols.hasOwnProperty(p)) + { + t = this.runtime.types_by_index[parseInt(p, 10)]; +; + sobj = { + "sa": w.sols[p].sa, + "insts": [] + }; + for (j = 0, lenj = w.sols[p].insts.length; j < lenj; j++) + sobj["insts"].push(w.sols[p].insts[j].uid); + waitobj["sols"][t.sid.toString()] = sobj; + } + } + owaits.push(waitobj); + } + return o; +}; +cr.system_object.prototype.loadFromJSON = function (o) +{ + var owaits = o["waits"]; + var i, len, j, lenj, p, w, addWait, e, aindex, t, savedsol, nusol, inst; + cr.clearArray(this.waits); + for (i = 0, len = owaits.length; i < len; i++) + { + w = owaits[i]; + e = this.runtime.blocksBySid[w["ev"].toString()]; + if (!e) + continue; // event must've gone missing + aindex = -1; + for (j = 0, lenj = e.actions.length; j < lenj; j++) + { + if (e.actions[j].sid === w["act"]) + { + aindex = j; + break; + } + } + if (aindex === -1) + continue; // action must've gone missing + addWait = {}; + addWait.sols = {}; + addWait.solModifiers = []; + addWait.deleteme = false; + addWait.time = w["t"]; + addWait.signaltag = w["st"] || ""; + addWait.signalled = !!w["s"]; + addWait.ev = e; + addWait.actindex = aindex; + for (j = 0, lenj = w["sm"].length; j < lenj; j++) + { + t = this.runtime.getObjectTypeBySid(w["sm"][j]); + if (t) + addWait.solModifiers.push(t); + } + for (p in w["sols"]) + { + if (w["sols"].hasOwnProperty(p)) + { + t = this.runtime.getObjectTypeBySid(parseInt(p, 10)); + if (!t) + continue; // type must've been deleted + savedsol = w["sols"][p]; + nusol = { + sa: savedsol["sa"], + insts: [] + }; + for (j = 0, lenj = savedsol["insts"].length; j < lenj; j++) + { + inst = this.runtime.getObjectByUID(savedsol["insts"][j]); + if (inst) + nusol.insts.push(inst); + } + addWait.sols[t.index.toString()] = nusol; + } + } + this.waits.push(addWait); + } +}; +(function () +{ + var sysProto = cr.system_object.prototype; + function SysCnds() {}; + SysCnds.prototype.EveryTick = function() + { + return true; + }; + SysCnds.prototype.OnLayoutStart = function() + { + return true; + }; + SysCnds.prototype.OnLayoutEnd = function() + { + return true; + }; + SysCnds.prototype.Compare = function(x, cmp, y) + { + return cr.do_cmp(x, cmp, y); + }; + SysCnds.prototype.CompareTime = function (cmp, t) + { + var elapsed = this.runtime.kahanTime.sum; + if (cmp === 0) + { + var cnd = this.runtime.getCurrentCondition(); + if (!cnd.extra["CompareTime_executed"]) + { + if (elapsed >= t) + { + cnd.extra["CompareTime_executed"] = true; + return true; + } + } + return false; + } + return cr.do_cmp(elapsed, cmp, t); + }; + SysCnds.prototype.LayerVisible = function (layer) + { + if (!layer) + return false; + else + return layer.visible; + }; + SysCnds.prototype.LayerEmpty = function (layer) + { + if (!layer) + return false; + else + return !layer.instances.length; + }; + SysCnds.prototype.LayerCmpOpacity = function (layer, cmp, opacity_) + { + if (!layer) + return false; + return cr.do_cmp(layer.opacity * 100, cmp, opacity_); + }; + SysCnds.prototype.Repeat = function (count) + { + var current_frame = this.runtime.getCurrentEventStack(); + var current_event = current_frame.current_event; + var solModifierAfterCnds = current_frame.isModifierAfterCnds(); + var current_loop = this.runtime.pushLoopStack(); + var i; + if (solModifierAfterCnds) + { + for (i = 0; i < count && !current_loop.stopped; i++) + { + this.runtime.pushCopySol(current_event.solModifiers); + current_loop.index = i; + current_event.retrigger(); + this.runtime.popSol(current_event.solModifiers); + } + } + else + { + for (i = 0; i < count && !current_loop.stopped; i++) + { + current_loop.index = i; + current_event.retrigger(); + } + } + this.runtime.popLoopStack(); + return false; + }; + SysCnds.prototype.While = function (count) + { + var current_frame = this.runtime.getCurrentEventStack(); + var current_event = current_frame.current_event; + var solModifierAfterCnds = current_frame.isModifierAfterCnds(); + var current_loop = this.runtime.pushLoopStack(); + var i; + if (solModifierAfterCnds) + { + for (i = 0; !current_loop.stopped; i++) + { + this.runtime.pushCopySol(current_event.solModifiers); + current_loop.index = i; + if (!current_event.retrigger()) // one of the other conditions returned false + current_loop.stopped = true; // break + this.runtime.popSol(current_event.solModifiers); + } + } + else + { + for (i = 0; !current_loop.stopped; i++) + { + current_loop.index = i; + if (!current_event.retrigger()) + current_loop.stopped = true; + } + } + this.runtime.popLoopStack(); + return false; + }; + SysCnds.prototype.For = function (name, start, end) + { + var current_frame = this.runtime.getCurrentEventStack(); + var current_event = current_frame.current_event; + var solModifierAfterCnds = current_frame.isModifierAfterCnds(); + var current_loop = this.runtime.pushLoopStack(name); + var i; + if (end < start) + { + if (solModifierAfterCnds) + { + for (i = start; i >= end && !current_loop.stopped; --i) // inclusive to end + { + this.runtime.pushCopySol(current_event.solModifiers); + current_loop.index = i; + current_event.retrigger(); + this.runtime.popSol(current_event.solModifiers); + } + } + else + { + for (i = start; i >= end && !current_loop.stopped; --i) // inclusive to end + { + current_loop.index = i; + current_event.retrigger(); + } + } + } + else + { + if (solModifierAfterCnds) + { + for (i = start; i <= end && !current_loop.stopped; ++i) // inclusive to end + { + this.runtime.pushCopySol(current_event.solModifiers); + current_loop.index = i; + current_event.retrigger(); + this.runtime.popSol(current_event.solModifiers); + } + } + else + { + for (i = start; i <= end && !current_loop.stopped; ++i) // inclusive to end + { + current_loop.index = i; + current_event.retrigger(); + } + } + } + this.runtime.popLoopStack(); + return false; + }; + var foreach_instancestack = []; + var foreach_instanceptr = -1; + SysCnds.prototype.ForEach = function (obj) + { + var sol = obj.getCurrentSol(); + foreach_instanceptr++; + if (foreach_instancestack.length === foreach_instanceptr) + foreach_instancestack.push([]); + var instances = foreach_instancestack[foreach_instanceptr]; + cr.shallowAssignArray(instances, sol.getObjects()); + var current_frame = this.runtime.getCurrentEventStack(); + var current_event = current_frame.current_event; + var solModifierAfterCnds = current_frame.isModifierAfterCnds(); + var current_loop = this.runtime.pushLoopStack(); + var i, len, j, lenj, inst, s, sol2; + var is_contained = obj.is_contained; + if (solModifierAfterCnds) + { + for (i = 0, len = instances.length; i < len && !current_loop.stopped; i++) + { + this.runtime.pushCopySol(current_event.solModifiers); + inst = instances[i]; + sol = obj.getCurrentSol(); + sol.select_all = false; + cr.clearArray(sol.instances); + sol.instances[0] = inst; + if (is_contained) + { + for (j = 0, lenj = inst.siblings.length; j < lenj; j++) + { + s = inst.siblings[j]; + sol2 = s.type.getCurrentSol(); + sol2.select_all = false; + cr.clearArray(sol2.instances); + sol2.instances[0] = s; + } + } + current_loop.index = i; + current_event.retrigger(); + this.runtime.popSol(current_event.solModifiers); + } + } + else + { + sol.select_all = false; + cr.clearArray(sol.instances); + for (i = 0, len = instances.length; i < len && !current_loop.stopped; i++) + { + inst = instances[i]; + sol.instances[0] = inst; + if (is_contained) + { + for (j = 0, lenj = inst.siblings.length; j < lenj; j++) + { + s = inst.siblings[j]; + sol2 = s.type.getCurrentSol(); + sol2.select_all = false; + cr.clearArray(sol2.instances); + sol2.instances[0] = s; + } + } + current_loop.index = i; + current_event.retrigger(); + } + } + cr.clearArray(instances); + this.runtime.popLoopStack(); + foreach_instanceptr--; + return false; + }; + function foreach_sortinstances(a, b) + { + var va = a.extra["c2_feo_val"]; + var vb = b.extra["c2_feo_val"]; + if (cr.is_number(va) && cr.is_number(vb)) + return va - vb; + else + { + va = "" + va; + vb = "" + vb; + if (va < vb) + return -1; + else if (va > vb) + return 1; + else + return 0; + } + }; + SysCnds.prototype.ForEachOrdered = function (obj, exp, order) + { + var sol = obj.getCurrentSol(); + foreach_instanceptr++; + if (foreach_instancestack.length === foreach_instanceptr) + foreach_instancestack.push([]); + var instances = foreach_instancestack[foreach_instanceptr]; + cr.shallowAssignArray(instances, sol.getObjects()); + var current_frame = this.runtime.getCurrentEventStack(); + var current_event = current_frame.current_event; + var current_condition = this.runtime.getCurrentCondition(); + var solModifierAfterCnds = current_frame.isModifierAfterCnds(); + var current_loop = this.runtime.pushLoopStack(); + var i, len, j, lenj, inst, s, sol2; + for (i = 0, len = instances.length; i < len; i++) + { + instances[i].extra["c2_feo_val"] = current_condition.parameters[1].get(i); + } + instances.sort(foreach_sortinstances); + if (order === 1) + instances.reverse(); + var is_contained = obj.is_contained; + if (solModifierAfterCnds) + { + for (i = 0, len = instances.length; i < len && !current_loop.stopped; i++) + { + this.runtime.pushCopySol(current_event.solModifiers); + inst = instances[i]; + sol = obj.getCurrentSol(); + sol.select_all = false; + cr.clearArray(sol.instances); + sol.instances[0] = inst; + if (is_contained) + { + for (j = 0, lenj = inst.siblings.length; j < lenj; j++) + { + s = inst.siblings[j]; + sol2 = s.type.getCurrentSol(); + sol2.select_all = false; + cr.clearArray(sol2.instances); + sol2.instances[0] = s; + } + } + current_loop.index = i; + current_event.retrigger(); + this.runtime.popSol(current_event.solModifiers); + } + } + else + { + sol.select_all = false; + cr.clearArray(sol.instances); + for (i = 0, len = instances.length; i < len && !current_loop.stopped; i++) + { + inst = instances[i]; + sol.instances[0] = inst; + if (is_contained) + { + for (j = 0, lenj = inst.siblings.length; j < lenj; j++) + { + s = inst.siblings[j]; + sol2 = s.type.getCurrentSol(); + sol2.select_all = false; + cr.clearArray(sol2.instances); + sol2.instances[0] = s; + } + } + current_loop.index = i; + current_event.retrigger(); + } + } + cr.clearArray(instances); + this.runtime.popLoopStack(); + foreach_instanceptr--; + return false; + }; + SysCnds.prototype.PickByComparison = function (obj_, exp_, cmp_, val_) + { + var i, len, k, inst; + if (!obj_) + return; + foreach_instanceptr++; + if (foreach_instancestack.length === foreach_instanceptr) + foreach_instancestack.push([]); + var tmp_instances = foreach_instancestack[foreach_instanceptr]; + var sol = obj_.getCurrentSol(); + cr.shallowAssignArray(tmp_instances, sol.getObjects()); + if (sol.select_all) + cr.clearArray(sol.else_instances); + var current_condition = this.runtime.getCurrentCondition(); + for (i = 0, k = 0, len = tmp_instances.length; i < len; i++) + { + inst = tmp_instances[i]; + tmp_instances[k] = inst; + exp_ = current_condition.parameters[1].get(i); + val_ = current_condition.parameters[3].get(i); + if (cr.do_cmp(exp_, cmp_, val_)) + { + k++; + } + else + { + sol.else_instances.push(inst); + } + } + cr.truncateArray(tmp_instances, k); + sol.select_all = false; + cr.shallowAssignArray(sol.instances, tmp_instances); + cr.clearArray(tmp_instances); + foreach_instanceptr--; + obj_.applySolToContainer(); + return !!sol.instances.length; + }; + SysCnds.prototype.PickByEvaluate = function (obj_, exp_) + { + var i, len, k, inst; + if (!obj_) + return; + foreach_instanceptr++; + if (foreach_instancestack.length === foreach_instanceptr) + foreach_instancestack.push([]); + var tmp_instances = foreach_instancestack[foreach_instanceptr]; + var sol = obj_.getCurrentSol(); + cr.shallowAssignArray(tmp_instances, sol.getObjects()); + if (sol.select_all) + cr.clearArray(sol.else_instances); + var current_condition = this.runtime.getCurrentCondition(); + for (i = 0, k = 0, len = tmp_instances.length; i < len; i++) + { + inst = tmp_instances[i]; + tmp_instances[k] = inst; + exp_ = current_condition.parameters[1].get(i); + if (exp_) + { + k++; + } + else + { + sol.else_instances.push(inst); + } + } + cr.truncateArray(tmp_instances, k); + sol.select_all = false; + cr.shallowAssignArray(sol.instances, tmp_instances); + cr.clearArray(tmp_instances); + foreach_instanceptr--; + obj_.applySolToContainer(); + return !!sol.instances.length; + }; + SysCnds.prototype.TriggerOnce = function () + { + var cndextra = this.runtime.getCurrentCondition().extra; + if (typeof cndextra["TriggerOnce_lastTick"] === "undefined") + cndextra["TriggerOnce_lastTick"] = -1; + var last_tick = cndextra["TriggerOnce_lastTick"]; + var cur_tick = this.runtime.tickcount; + cndextra["TriggerOnce_lastTick"] = cur_tick; + return this.runtime.layout_first_tick || last_tick !== cur_tick - 1; + }; + SysCnds.prototype.Every = function (seconds) + { + var cnd = this.runtime.getCurrentCondition(); + var last_time = cnd.extra["Every_lastTime"] || 0; + var cur_time = this.runtime.kahanTime.sum; + if (typeof cnd.extra["Every_seconds"] === "undefined") + cnd.extra["Every_seconds"] = seconds; + var this_seconds = cnd.extra["Every_seconds"]; + if (cur_time >= last_time + this_seconds) + { + cnd.extra["Every_lastTime"] = last_time + this_seconds; + if (cur_time >= cnd.extra["Every_lastTime"] + 0.04) + { + cnd.extra["Every_lastTime"] = cur_time; + } + cnd.extra["Every_seconds"] = seconds; + return true; + } + else if (cur_time < last_time - 0.1) + { + cnd.extra["Every_lastTime"] = cur_time; + } + return false; + }; + SysCnds.prototype.PickNth = function (obj, index) + { + if (!obj) + return false; + var sol = obj.getCurrentSol(); + var instances = sol.getObjects(); + index = cr.floor(index); + if (index < 0 || index >= instances.length) + return false; + var inst = instances[index]; + sol.pick_one(inst); + obj.applySolToContainer(); + return true; + }; + SysCnds.prototype.PickRandom = function (obj) + { + if (!obj) + return false; + var sol = obj.getCurrentSol(); + var instances = sol.getObjects(); + var index = cr.floor(Math.random() * instances.length); + if (index >= instances.length) + return false; + var inst = instances[index]; + sol.pick_one(inst); + obj.applySolToContainer(); + return true; + }; + SysCnds.prototype.CompareVar = function (v, cmp, val) + { + return cr.do_cmp(v.getValue(), cmp, val); + }; + SysCnds.prototype.IsGroupActive = function (group) + { + var g = this.runtime.groups_by_name[group.toLowerCase()]; + return g && g.group_active; + }; + SysCnds.prototype.IsPreview = function () + { + return typeof cr_is_preview !== "undefined"; + }; + SysCnds.prototype.PickAll = function (obj) + { + if (!obj) + return false; + if (!obj.instances.length) + return false; + var sol = obj.getCurrentSol(); + sol.select_all = true; + obj.applySolToContainer(); + return true; + }; + SysCnds.prototype.IsMobile = function () + { + return this.runtime.isMobile; + }; + SysCnds.prototype.CompareBetween = function (x, a, b) + { + return x >= a && x <= b; + }; + SysCnds.prototype.Else = function () + { + var current_frame = this.runtime.getCurrentEventStack(); + if (current_frame.else_branch_ran) + return false; // another event in this else-if chain has run + else + return !current_frame.last_event_true; + /* + var current_frame = this.runtime.getCurrentEventStack(); + var current_event = current_frame.current_event; + var prev_event = current_event.prev_block; + if (!prev_event) + return false; + if (prev_event.is_logical) + return !this.runtime.last_event_true; + var i, len, j, lenj, s, sol, temp, inst, any_picked = false; + for (i = 0, len = prev_event.cndReferences.length; i < len; i++) + { + s = prev_event.cndReferences[i]; + sol = s.getCurrentSol(); + if (sol.select_all || sol.instances.length === s.instances.length) + { + sol.select_all = false; + sol.instances.length = 0; + } + else + { + if (sol.instances.length === 1 && sol.else_instances.length === 0 && s.instances.length >= 2) + { + inst = sol.instances[0]; + sol.instances.length = 0; + for (j = 0, lenj = s.instances.length; j < lenj; j++) + { + if (s.instances[j] != inst) + sol.instances.push(s.instances[j]); + } + any_picked = true; + } + else + { + temp = sol.instances; + sol.instances = sol.else_instances; + sol.else_instances = temp; + any_picked = true; + } + } + } + return any_picked; + */ + }; + SysCnds.prototype.OnLoadFinished = function () + { + return true; + }; + SysCnds.prototype.OnCanvasSnapshot = function () + { + return true; + }; + SysCnds.prototype.EffectsSupported = function () + { + return !!this.runtime.glwrap; + }; + SysCnds.prototype.OnSaveComplete = function () + { + return true; + }; + SysCnds.prototype.OnSaveFailed = function () + { + return true; + }; + SysCnds.prototype.OnLoadComplete = function () + { + return true; + }; + SysCnds.prototype.OnLoadFailed = function () + { + return true; + }; + SysCnds.prototype.ObjectUIDExists = function (u) + { + return !!this.runtime.getObjectByUID(u); + }; + SysCnds.prototype.IsOnPlatform = function (p) + { + var rt = this.runtime; + switch (p) { + case 0: // HTML5 website + return !rt.isDomFree && !rt.isNodeWebkit && !rt.isCordova && !rt.isWinJS && !rt.isWindowsPhone8 && !rt.isBlackberry10 && !rt.isAmazonWebApp; + case 1: // iOS + return rt.isiOS; + case 2: // Android + return rt.isAndroid; + case 3: // Windows 8 + return rt.isWindows8App; + case 4: // Windows Phone 8 + return rt.isWindowsPhone8; + case 5: // Blackberry 10 + return rt.isBlackberry10; + case 6: // Tizen + return rt.isTizen; + case 7: // CocoonJS + return rt.isCocoonJs; + case 8: // Cordova + return rt.isCordova; + case 9: // Scirra Arcade + return rt.isArcade; + case 10: // node-webkit + return rt.isNodeWebkit; + case 11: // crosswalk + return rt.isCrosswalk; + case 12: // amazon webapp + return rt.isAmazonWebApp; + case 13: // windows 10 app + return rt.isWindows10; + default: // should not be possible + return false; + } + }; + var cacheRegex = null; + var lastRegex = ""; + var lastFlags = ""; + function getRegex(regex_, flags_) + { + if (!cacheRegex || regex_ !== lastRegex || flags_ !== lastFlags) + { + cacheRegex = new RegExp(regex_, flags_); + lastRegex = regex_; + lastFlags = flags_; + } + cacheRegex.lastIndex = 0; // reset + return cacheRegex; + }; + SysCnds.prototype.RegexTest = function (str_, regex_, flags_) + { + var regex = getRegex(regex_, flags_); + return regex.test(str_); + }; + var tmp_arr = []; + SysCnds.prototype.PickOverlappingPoint = function (obj_, x_, y_) + { + if (!obj_) + return false; + var sol = obj_.getCurrentSol(); + var instances = sol.getObjects(); + var current_event = this.runtime.getCurrentEventStack().current_event; + var orblock = current_event.orblock; + var cnd = this.runtime.getCurrentCondition(); + var i, len, inst, pick; + if (sol.select_all) + { + cr.shallowAssignArray(tmp_arr, instances); + cr.clearArray(sol.else_instances); + sol.select_all = false; + cr.clearArray(sol.instances); + } + else + { + if (orblock) + { + cr.shallowAssignArray(tmp_arr, sol.else_instances); + cr.clearArray(sol.else_instances); + } + else + { + cr.shallowAssignArray(tmp_arr, instances); + cr.clearArray(sol.instances); + } + } + for (i = 0, len = tmp_arr.length; i < len; ++i) + { + inst = tmp_arr[i]; + inst.update_bbox(); + pick = cr.xor(inst.contains_pt(x_, y_), cnd.inverted); + if (pick) + sol.instances.push(inst); + else + sol.else_instances.push(inst); + } + obj_.applySolToContainer(); + return cr.xor(!!sol.instances.length, cnd.inverted); + }; + SysCnds.prototype.IsNaN = function (n) + { + return !!isNaN(n); + }; + SysCnds.prototype.AngleWithin = function (a1, within, a2) + { + return cr.angleDiff(cr.to_radians(a1), cr.to_radians(a2)) <= cr.to_radians(within); + }; + SysCnds.prototype.IsClockwiseFrom = function (a1, a2) + { + return cr.angleClockwise(cr.to_radians(a1), cr.to_radians(a2)); + }; + SysCnds.prototype.IsBetweenAngles = function (a, la, ua) + { + var angle = cr.to_clamped_radians(a); + var lower = cr.to_clamped_radians(la); + var upper = cr.to_clamped_radians(ua); + var obtuse = (!cr.angleClockwise(upper, lower)); + if (obtuse) + return !(!cr.angleClockwise(angle, lower) && cr.angleClockwise(angle, upper)); + else + return cr.angleClockwise(angle, lower) && !cr.angleClockwise(angle, upper); + }; + SysCnds.prototype.IsValueType = function (x, t) + { + if (typeof x === "number") + return t === 0; + else // string + return t === 1; + }; + sysProto.cnds = new SysCnds(); + function SysActs() {}; + SysActs.prototype.GoToLayout = function (to) + { + if (this.runtime.isloading) + return; // cannot change layout while loading on loader layout + if (this.runtime.changelayout) + return; // already changing to a different layout +; + this.runtime.changelayout = to; + }; + SysActs.prototype.NextPrevLayout = function (prev) + { + if (this.runtime.isloading) + return; // cannot change layout while loading on loader layout + if (this.runtime.changelayout) + return; // already changing to a different layout + var index = this.runtime.layouts_by_index.indexOf(this.runtime.running_layout); + if (prev && index === 0) + return; // cannot go to previous layout from first layout + if (!prev && index === this.runtime.layouts_by_index.length - 1) + return; // cannot go to next layout from last layout + var to = this.runtime.layouts_by_index[index + (prev ? -1 : 1)]; +; + this.runtime.changelayout = to; + }; + SysActs.prototype.CreateObject = function (obj, layer, x, y) + { + if (!layer || !obj) + return; + var inst = this.runtime.createInstance(obj, layer, x, y); + if (!inst) + return; + this.runtime.isInOnDestroy++; + var i, len, s; + this.runtime.trigger(Object.getPrototypeOf(obj.plugin).cnds.OnCreated, inst); + if (inst.is_contained) + { + for (i = 0, len = inst.siblings.length; i < len; i++) + { + s = inst.siblings[i]; + this.runtime.trigger(Object.getPrototypeOf(s.type.plugin).cnds.OnCreated, s); + } + } + this.runtime.isInOnDestroy--; + var sol = obj.getCurrentSol(); + sol.select_all = false; + cr.clearArray(sol.instances); + sol.instances[0] = inst; + if (inst.is_contained) + { + for (i = 0, len = inst.siblings.length; i < len; i++) + { + s = inst.siblings[i]; + sol = s.type.getCurrentSol(); + sol.select_all = false; + cr.clearArray(sol.instances); + sol.instances[0] = s; + } + } + }; + SysActs.prototype.SetLayerVisible = function (layer, visible_) + { + if (!layer) + return; + if (layer.visible !== visible_) + { + layer.visible = visible_; + this.runtime.redraw = true; + } + }; + SysActs.prototype.SetLayerOpacity = function (layer, opacity_) + { + if (!layer) + return; + opacity_ = cr.clamp(opacity_ / 100, 0, 1); + if (layer.opacity !== opacity_) + { + layer.opacity = opacity_; + this.runtime.redraw = true; + } + }; + SysActs.prototype.SetLayerScaleRate = function (layer, sr) + { + if (!layer) + return; + if (layer.zoomRate !== sr) + { + layer.zoomRate = sr; + this.runtime.redraw = true; + } + }; + SysActs.prototype.SetLayerForceOwnTexture = function (layer, f) + { + if (!layer) + return; + f = !!f; + if (layer.forceOwnTexture !== f) + { + layer.forceOwnTexture = f; + this.runtime.redraw = true; + } + }; + SysActs.prototype.SetLayoutScale = function (s) + { + if (!this.runtime.running_layout) + return; + if (this.runtime.running_layout.scale !== s) + { + this.runtime.running_layout.scale = s; + this.runtime.running_layout.boundScrolling(); + this.runtime.redraw = true; + } + }; + SysActs.prototype.ScrollX = function(x) + { + this.runtime.running_layout.scrollToX(x); + }; + SysActs.prototype.ScrollY = function(y) + { + this.runtime.running_layout.scrollToY(y); + }; + SysActs.prototype.Scroll = function(x, y) + { + this.runtime.running_layout.scrollToX(x); + this.runtime.running_layout.scrollToY(y); + }; + SysActs.prototype.ScrollToObject = function(obj) + { + var inst = obj.getFirstPicked(); + if (inst) + { + this.runtime.running_layout.scrollToX(inst.x); + this.runtime.running_layout.scrollToY(inst.y); + } + }; + SysActs.prototype.SetVar = function(v, x) + { +; + if (v.vartype === 0) + { + if (cr.is_number(x)) + v.setValue(x); + else + v.setValue(parseFloat(x)); + } + else if (v.vartype === 1) + v.setValue(x.toString()); + }; + SysActs.prototype.AddVar = function(v, x) + { +; + if (v.vartype === 0) + { + if (cr.is_number(x)) + v.setValue(v.getValue() + x); + else + v.setValue(v.getValue() + parseFloat(x)); + } + else if (v.vartype === 1) + v.setValue(v.getValue() + x.toString()); + }; + SysActs.prototype.SubVar = function(v, x) + { +; + if (v.vartype === 0) + { + if (cr.is_number(x)) + v.setValue(v.getValue() - x); + else + v.setValue(v.getValue() - parseFloat(x)); + } + }; + SysActs.prototype.SetGroupActive = function (group, active) + { + var g = this.runtime.groups_by_name[group.toLowerCase()]; + if (!g) + return; + switch (active) { + case 0: + g.setGroupActive(false); + break; + case 1: + g.setGroupActive(true); + break; + case 2: + g.setGroupActive(!g.group_active); + break; + } + }; + SysActs.prototype.SetTimescale = function (ts_) + { + var ts = ts_; + if (ts < 0) + ts = 0; + this.runtime.timescale = ts; + }; + SysActs.prototype.SetObjectTimescale = function (obj, ts_) + { + var ts = ts_; + if (ts < 0) + ts = 0; + if (!obj) + return; + var sol = obj.getCurrentSol(); + var instances = sol.getObjects(); + var i, len; + for (i = 0, len = instances.length; i < len; i++) + { + instances[i].my_timescale = ts; + } + }; + SysActs.prototype.RestoreObjectTimescale = function (obj) + { + if (!obj) + return false; + var sol = obj.getCurrentSol(); + var instances = sol.getObjects(); + var i, len; + for (i = 0, len = instances.length; i < len; i++) + { + instances[i].my_timescale = -1.0; + } + }; + var waitobjrecycle = []; + function allocWaitObject() + { + var w; + if (waitobjrecycle.length) + w = waitobjrecycle.pop(); + else + { + w = {}; + w.sols = {}; + w.solModifiers = []; + } + w.deleteme = false; + return w; + }; + function freeWaitObject(w) + { + cr.wipe(w.sols); + cr.clearArray(w.solModifiers); + waitobjrecycle.push(w); + }; + var solstateobjects = []; + function allocSolStateObject() + { + var s; + if (solstateobjects.length) + s = solstateobjects.pop(); + else + { + s = {}; + s.insts = []; + } + s.sa = false; + return s; + }; + function freeSolStateObject(s) + { + cr.clearArray(s.insts); + solstateobjects.push(s); + }; + SysActs.prototype.Wait = function (seconds) + { + if (seconds < 0) + return; + var i, len, s, t, ss; + var evinfo = this.runtime.getCurrentEventStack(); + var waitobj = allocWaitObject(); + waitobj.time = this.runtime.kahanTime.sum + seconds; + waitobj.signaltag = ""; + waitobj.signalled = false; + waitobj.ev = evinfo.current_event; + waitobj.actindex = evinfo.actindex + 1; // pointing at next action + for (i = 0, len = this.runtime.types_by_index.length; i < len; i++) + { + t = this.runtime.types_by_index[i]; + s = t.getCurrentSol(); + if (s.select_all && evinfo.current_event.solModifiers.indexOf(t) === -1) + continue; + waitobj.solModifiers.push(t); + ss = allocSolStateObject(); + ss.sa = s.select_all; + cr.shallowAssignArray(ss.insts, s.instances); + waitobj.sols[i.toString()] = ss; + } + this.waits.push(waitobj); + return true; + }; + SysActs.prototype.WaitForSignal = function (tag) + { + var i, len, s, t, ss; + var evinfo = this.runtime.getCurrentEventStack(); + var waitobj = allocWaitObject(); + waitobj.time = -1; + waitobj.signaltag = tag.toLowerCase(); + waitobj.signalled = false; + waitobj.ev = evinfo.current_event; + waitobj.actindex = evinfo.actindex + 1; // pointing at next action + for (i = 0, len = this.runtime.types_by_index.length; i < len; i++) + { + t = this.runtime.types_by_index[i]; + s = t.getCurrentSol(); + if (s.select_all && evinfo.current_event.solModifiers.indexOf(t) === -1) + continue; + waitobj.solModifiers.push(t); + ss = allocSolStateObject(); + ss.sa = s.select_all; + cr.shallowAssignArray(ss.insts, s.instances); + waitobj.sols[i.toString()] = ss; + } + this.waits.push(waitobj); + return true; + }; + SysActs.prototype.Signal = function (tag) + { + var lowertag = tag.toLowerCase(); + var i, len, w; + for (i = 0, len = this.waits.length; i < len; ++i) + { + w = this.waits[i]; + if (w.time !== -1) + continue; // timer wait, ignore + if (w.signaltag === lowertag) // waiting for this signal + w.signalled = true; // will run on next check + } + }; + SysActs.prototype.SetLayerScale = function (layer, scale) + { + if (!layer) + return; + if (layer.scale === scale) + return; + layer.scale = scale; + this.runtime.redraw = true; + }; + SysActs.prototype.ResetGlobals = function () + { + var i, len, g; + for (i = 0, len = this.runtime.all_global_vars.length; i < len; i++) + { + g = this.runtime.all_global_vars[i]; + g.data = g.initial; + } + }; + SysActs.prototype.SetLayoutAngle = function (a) + { + a = cr.to_radians(a); + a = cr.clamp_angle(a); + if (this.runtime.running_layout) + { + if (this.runtime.running_layout.angle !== a) + { + this.runtime.running_layout.angle = a; + this.runtime.redraw = true; + } + } + }; + SysActs.prototype.SetLayerAngle = function (layer, a) + { + if (!layer) + return; + a = cr.to_radians(a); + a = cr.clamp_angle(a); + if (layer.angle === a) + return; + layer.angle = a; + this.runtime.redraw = true; + }; + SysActs.prototype.SetLayerParallax = function (layer, px, py) + { + if (!layer) + return; + if (layer.parallaxX === px / 100 && layer.parallaxY === py / 100) + return; + layer.parallaxX = px / 100; + layer.parallaxY = py / 100; + if (layer.parallaxX !== 1 || layer.parallaxY !== 1) + { + var i, len, instances = layer.instances; + for (i = 0, len = instances.length; i < len; ++i) + { + instances[i].type.any_instance_parallaxed = true; + } + } + this.runtime.redraw = true; + }; + SysActs.prototype.SetLayerBackground = function (layer, c) + { + if (!layer) + return; + var r = cr.GetRValue(c); + var g = cr.GetGValue(c); + var b = cr.GetBValue(c); + if (layer.background_color[0] === r && layer.background_color[1] === g && layer.background_color[2] === b) + return; + layer.background_color[0] = r; + layer.background_color[1] = g; + layer.background_color[2] = b; + this.runtime.redraw = true; + }; + SysActs.prototype.SetLayerTransparent = function (layer, t) + { + if (!layer) + return; + if (!!t === !!layer.transparent) + return; + layer.transparent = !!t; + this.runtime.redraw = true; + }; + SysActs.prototype.SetLayerBlendMode = function (layer, bm) + { + if (!layer) + return; + if (layer.blend_mode === bm) + return; + layer.blend_mode = bm; + layer.compositeOp = cr.effectToCompositeOp(layer.blend_mode); + if (this.runtime.gl) + cr.setGLBlend(layer, layer.blend_mode, this.runtime.gl); + this.runtime.redraw = true; + }; + SysActs.prototype.StopLoop = function () + { + if (this.runtime.loop_stack_index < 0) + return; // no loop currently running + this.runtime.getCurrentLoop().stopped = true; + }; + SysActs.prototype.GoToLayoutByName = function (layoutname) + { + if (this.runtime.isloading) + return; // cannot change layout while loading on loader layout + if (this.runtime.changelayout) + return; // already changing to different layout +; + var l; + for (l in this.runtime.layouts) + { + if (this.runtime.layouts.hasOwnProperty(l) && cr.equals_nocase(l, layoutname)) + { + this.runtime.changelayout = this.runtime.layouts[l]; + return; + } + } + }; + SysActs.prototype.RestartLayout = function (layoutname) + { + if (this.runtime.isloading) + return; // cannot restart loader layouts + if (this.runtime.changelayout) + return; // already changing to a different layout +; + if (!this.runtime.running_layout) + return; + this.runtime.changelayout = this.runtime.running_layout; + var i, len, g; + for (i = 0, len = this.runtime.allGroups.length; i < len; i++) + { + g = this.runtime.allGroups[i]; + g.setGroupActive(g.initially_activated); + } + }; + SysActs.prototype.SnapshotCanvas = function (format_, quality_) + { + this.runtime.doCanvasSnapshot(format_ === 0 ? "image/png" : "image/jpeg", quality_ / 100); + }; + SysActs.prototype.SetCanvasSize = function (w, h) + { + if (w <= 0 || h <= 0) + return; + var mode = this.runtime.fullscreen_mode; + var isfullscreen = (document["mozFullScreen"] || document["webkitIsFullScreen"] || !!document["msFullscreenElement"] || document["fullScreen"] || this.runtime.isNodeFullscreen); + if (isfullscreen && this.runtime.fullscreen_scaling > 0) + mode = this.runtime.fullscreen_scaling; + if (mode === 0) + { + this.runtime["setSize"](w, h, true); + } + else + { + this.runtime.original_width = w; + this.runtime.original_height = h; + this.runtime["setSize"](this.runtime.lastWindowWidth, this.runtime.lastWindowHeight, true); + } + }; + SysActs.prototype.SetLayoutEffectEnabled = function (enable_, effectname_) + { + if (!this.runtime.running_layout || !this.runtime.glwrap) + return; + var et = this.runtime.running_layout.getEffectByName(effectname_); + if (!et) + return; // effect name not found + var enable = (enable_ === 1); + if (et.active == enable) + return; // no change + et.active = enable; + this.runtime.running_layout.updateActiveEffects(); + this.runtime.redraw = true; + }; + SysActs.prototype.SetLayerEffectEnabled = function (layer, enable_, effectname_) + { + if (!layer || !this.runtime.glwrap) + return; + var et = layer.getEffectByName(effectname_); + if (!et) + return; // effect name not found + var enable = (enable_ === 1); + if (et.active == enable) + return; // no change + et.active = enable; + layer.updateActiveEffects(); + this.runtime.redraw = true; + }; + SysActs.prototype.SetLayoutEffectParam = function (effectname_, index_, value_) + { + if (!this.runtime.running_layout || !this.runtime.glwrap) + return; + var et = this.runtime.running_layout.getEffectByName(effectname_); + if (!et) + return; // effect name not found + var params = this.runtime.running_layout.effect_params[et.index]; + index_ = Math.floor(index_); + if (index_ < 0 || index_ >= params.length) + return; // effect index out of bounds + if (this.runtime.glwrap.getProgramParameterType(et.shaderindex, index_) === 1) + value_ /= 100.0; + if (params[index_] === value_) + return; // no change + params[index_] = value_; + if (et.active) + this.runtime.redraw = true; + }; + SysActs.prototype.SetLayerEffectParam = function (layer, effectname_, index_, value_) + { + if (!layer || !this.runtime.glwrap) + return; + var et = layer.getEffectByName(effectname_); + if (!et) + return; // effect name not found + var params = layer.effect_params[et.index]; + index_ = Math.floor(index_); + if (index_ < 0 || index_ >= params.length) + return; // effect index out of bounds + if (this.runtime.glwrap.getProgramParameterType(et.shaderindex, index_) === 1) + value_ /= 100.0; + if (params[index_] === value_) + return; // no change + params[index_] = value_; + if (et.active) + this.runtime.redraw = true; + }; + SysActs.prototype.SaveState = function (slot_) + { + this.runtime.saveToSlot = slot_; + }; + SysActs.prototype.LoadState = function (slot_) + { + this.runtime.loadFromSlot = slot_; + }; + SysActs.prototype.LoadStateJSON = function (jsonstr_) + { + this.runtime.loadFromJson = jsonstr_; + }; + SysActs.prototype.SetHalfFramerateMode = function (set_) + { + this.runtime.halfFramerateMode = (set_ !== 0); + }; + SysActs.prototype.SetFullscreenQuality = function (q) + { + var isfullscreen = (document["mozFullScreen"] || document["webkitIsFullScreen"] || !!document["msFullscreenElement"] || document["fullScreen"] || this.isNodeFullscreen); + if (!isfullscreen && this.runtime.fullscreen_mode === 0) + return; + this.runtime.wantFullscreenScalingQuality = (q !== 0); + this.runtime["setSize"](this.runtime.lastWindowWidth, this.runtime.lastWindowHeight, true); + }; + SysActs.prototype.ResetPersisted = function () + { + var i, len; + for (i = 0, len = this.runtime.layouts_by_index.length; i < len; ++i) + { + this.runtime.layouts_by_index[i].persist_data = {}; + this.runtime.layouts_by_index[i].first_visit = true; + } + }; + SysActs.prototype.RecreateInitialObjects = function (obj, x1, y1, x2, y2) + { + if (!obj) + return; + this.runtime.running_layout.recreateInitialObjects(obj, x1, y1, x2, y2); + }; + SysActs.prototype.SetPixelRounding = function (m) + { + this.runtime.pixel_rounding = (m !== 0); + this.runtime.redraw = true; + }; + SysActs.prototype.SetMinimumFramerate = function (f) + { + if (f < 1) + f = 1; + if (f > 120) + f = 120; + this.runtime.minimumFramerate = f; + }; + function SortZOrderList(a, b) + { + var layerA = a[0]; + var layerB = b[0]; + var diff = layerA - layerB; + if (diff !== 0) + return diff; + var indexA = a[1]; + var indexB = b[1]; + return indexA - indexB; + }; + function SortInstancesByValue(a, b) + { + return a[1] - b[1]; + }; + SysActs.prototype.SortZOrderByInstVar = function (obj, iv) + { + if (!obj) + return; + var i, len, inst, value, r, layer, toZ; + var sol = obj.getCurrentSol(); + var pickedInstances = sol.getObjects(); + var zOrderList = []; + var instValues = []; + var layout = this.runtime.running_layout; + var isFamily = obj.is_family; + var familyIndex = obj.family_index; + for (i = 0, len = pickedInstances.length; i < len; ++i) + { + inst = pickedInstances[i]; + if (!inst.layer) + continue; // not a world instance + if (isFamily) + value = inst.instance_vars[iv + inst.type.family_var_map[familyIndex]]; + else + value = inst.instance_vars[iv]; + zOrderList.push([ + inst.layer.index, + inst.get_zindex() + ]); + instValues.push([ + inst, + value + ]); + } + if (!zOrderList.length) + return; // no instances were world instances + zOrderList.sort(SortZOrderList); + instValues.sort(SortInstancesByValue); + for (i = 0, len = zOrderList.length; i < len; ++i) + { + inst = instValues[i][0]; // instance in the order we want + layer = layout.layers[zOrderList[i][0]]; // layer to put it on + toZ = zOrderList[i][1]; // Z index on that layer to put it + if (layer.instances[toZ] !== inst) // not already got this instance there + { + layer.instances[toZ] = inst; // update instance + inst.layer = layer; // update instance's layer reference (could have changed) + layer.setZIndicesStaleFrom(toZ); // mark Z indices stale from this point since they have changed + } + } + }; + sysProto.acts = new SysActs(); + function SysExps() {}; + SysExps.prototype["int"] = function(ret, x) + { + if (cr.is_string(x)) + { + ret.set_int(parseInt(x, 10)); + if (isNaN(ret.data)) + ret.data = 0; + } + else + ret.set_int(x); + }; + SysExps.prototype["float"] = function(ret, x) + { + if (cr.is_string(x)) + { + ret.set_float(parseFloat(x)); + if (isNaN(ret.data)) + ret.data = 0; + } + else + ret.set_float(x); + }; + SysExps.prototype.str = function(ret, x) + { + if (cr.is_string(x)) + ret.set_string(x); + else + ret.set_string(x.toString()); + }; + SysExps.prototype.len = function(ret, x) + { + ret.set_int(x.length || 0); + }; + SysExps.prototype.random = function (ret, a, b) + { + if (b === undefined) + { + ret.set_float(Math.random() * a); + } + else + { + ret.set_float(Math.random() * (b - a) + a); + } + }; + SysExps.prototype.sqrt = function(ret, x) + { + ret.set_float(Math.sqrt(x)); + }; + SysExps.prototype.abs = function(ret, x) + { + ret.set_float(Math.abs(x)); + }; + SysExps.prototype.round = function(ret, x) + { + ret.set_int(Math.round(x)); + }; + SysExps.prototype.floor = function(ret, x) + { + ret.set_int(Math.floor(x)); + }; + SysExps.prototype.ceil = function(ret, x) + { + ret.set_int(Math.ceil(x)); + }; + SysExps.prototype.sin = function(ret, x) + { + ret.set_float(Math.sin(cr.to_radians(x))); + }; + SysExps.prototype.cos = function(ret, x) + { + ret.set_float(Math.cos(cr.to_radians(x))); + }; + SysExps.prototype.tan = function(ret, x) + { + ret.set_float(Math.tan(cr.to_radians(x))); + }; + SysExps.prototype.asin = function(ret, x) + { + ret.set_float(cr.to_degrees(Math.asin(x))); + }; + SysExps.prototype.acos = function(ret, x) + { + ret.set_float(cr.to_degrees(Math.acos(x))); + }; + SysExps.prototype.atan = function(ret, x) + { + ret.set_float(cr.to_degrees(Math.atan(x))); + }; + SysExps.prototype.exp = function(ret, x) + { + ret.set_float(Math.exp(x)); + }; + SysExps.prototype.ln = function(ret, x) + { + ret.set_float(Math.log(x)); + }; + SysExps.prototype.log10 = function(ret, x) + { + ret.set_float(Math.log(x) / Math.LN10); + }; + SysExps.prototype.max = function(ret) + { + var max_ = arguments[1]; + if (typeof max_ !== "number") + max_ = 0; + var i, len, a; + for (i = 2, len = arguments.length; i < len; i++) + { + a = arguments[i]; + if (typeof a !== "number") + continue; // ignore non-numeric types + if (max_ < a) + max_ = a; + } + ret.set_float(max_); + }; + SysExps.prototype.min = function(ret) + { + var min_ = arguments[1]; + if (typeof min_ !== "number") + min_ = 0; + var i, len, a; + for (i = 2, len = arguments.length; i < len; i++) + { + a = arguments[i]; + if (typeof a !== "number") + continue; // ignore non-numeric types + if (min_ > a) + min_ = a; + } + ret.set_float(min_); + }; + SysExps.prototype.dt = function(ret) + { + ret.set_float(this.runtime.dt); + }; + SysExps.prototype.timescale = function(ret) + { + ret.set_float(this.runtime.timescale); + }; + SysExps.prototype.wallclocktime = function(ret) + { + ret.set_float((Date.now() - this.runtime.start_time) / 1000.0); + }; + SysExps.prototype.time = function(ret) + { + ret.set_float(this.runtime.kahanTime.sum); + }; + SysExps.prototype.tickcount = function(ret) + { + ret.set_int(this.runtime.tickcount); + }; + SysExps.prototype.objectcount = function(ret) + { + ret.set_int(this.runtime.objectcount); + }; + SysExps.prototype.fps = function(ret) + { + ret.set_int(this.runtime.fps); + }; + SysExps.prototype.loopindex = function(ret, name_) + { + var loop, i, len; + if (!this.runtime.loop_stack.length) + { + ret.set_int(0); + return; + } + if (name_) + { + for (i = this.runtime.loop_stack_index; i >= 0; --i) + { + loop = this.runtime.loop_stack[i]; + if (loop.name === name_) + { + ret.set_int(loop.index); + return; + } + } + ret.set_int(0); + } + else + { + loop = this.runtime.getCurrentLoop(); + ret.set_int(loop ? loop.index : -1); + } + }; + SysExps.prototype.distance = function(ret, x1, y1, x2, y2) + { + ret.set_float(cr.distanceTo(x1, y1, x2, y2)); + }; + SysExps.prototype.angle = function(ret, x1, y1, x2, y2) + { + ret.set_float(cr.to_degrees(cr.angleTo(x1, y1, x2, y2))); + }; + SysExps.prototype.scrollx = function(ret) + { + ret.set_float(this.runtime.running_layout.scrollX); + }; + SysExps.prototype.scrolly = function(ret) + { + ret.set_float(this.runtime.running_layout.scrollY); + }; + SysExps.prototype.newline = function(ret) + { + ret.set_string("\n"); + }; + SysExps.prototype.lerp = function(ret, a, b, x) + { + ret.set_float(cr.lerp(a, b, x)); + }; + SysExps.prototype.qarp = function(ret, a, b, c, x) + { + ret.set_float(cr.qarp(a, b, c, x)); + }; + SysExps.prototype.cubic = function(ret, a, b, c, d, x) + { + ret.set_float(cr.cubic(a, b, c, d, x)); + }; + SysExps.prototype.cosp = function(ret, a, b, x) + { + ret.set_float(cr.cosp(a, b, x)); + }; + SysExps.prototype.windowwidth = function(ret) + { + ret.set_int(this.runtime.width); + }; + SysExps.prototype.windowheight = function(ret) + { + ret.set_int(this.runtime.height); + }; + SysExps.prototype.uppercase = function(ret, str) + { + ret.set_string(cr.is_string(str) ? str.toUpperCase() : ""); + }; + SysExps.prototype.lowercase = function(ret, str) + { + ret.set_string(cr.is_string(str) ? str.toLowerCase() : ""); + }; + SysExps.prototype.clamp = function(ret, x, l, u) + { + if (x < l) + ret.set_float(l); + else if (x > u) + ret.set_float(u); + else + ret.set_float(x); + }; + SysExps.prototype.layerscale = function (ret, layerparam) + { + var layer = this.runtime.getLayer(layerparam); + if (!layer) + ret.set_float(0); + else + ret.set_float(layer.scale); + }; + SysExps.prototype.layeropacity = function (ret, layerparam) + { + var layer = this.runtime.getLayer(layerparam); + if (!layer) + ret.set_float(0); + else + ret.set_float(layer.opacity * 100); + }; + SysExps.prototype.layerscalerate = function (ret, layerparam) + { + var layer = this.runtime.getLayer(layerparam); + if (!layer) + ret.set_float(0); + else + ret.set_float(layer.zoomRate); + }; + SysExps.prototype.layerparallaxx = function (ret, layerparam) + { + var layer = this.runtime.getLayer(layerparam); + if (!layer) + ret.set_float(0); + else + ret.set_float(layer.parallaxX * 100); + }; + SysExps.prototype.layerparallaxy = function (ret, layerparam) + { + var layer = this.runtime.getLayer(layerparam); + if (!layer) + ret.set_float(0); + else + ret.set_float(layer.parallaxY * 100); + }; + SysExps.prototype.layerindex = function (ret, layerparam) + { + var layer = this.runtime.getLayer(layerparam); + if (!layer) + ret.set_int(-1); + else + ret.set_int(layer.index); + }; + SysExps.prototype.layoutscale = function (ret) + { + if (this.runtime.running_layout) + ret.set_float(this.runtime.running_layout.scale); + else + ret.set_float(0); + }; + SysExps.prototype.layoutangle = function (ret) + { + ret.set_float(cr.to_degrees(this.runtime.running_layout.angle)); + }; + SysExps.prototype.layerangle = function (ret, layerparam) + { + var layer = this.runtime.getLayer(layerparam); + if (!layer) + ret.set_float(0); + else + ret.set_float(cr.to_degrees(layer.angle)); + }; + SysExps.prototype.layoutwidth = function (ret) + { + ret.set_int(this.runtime.running_layout.width); + }; + SysExps.prototype.layoutheight = function (ret) + { + ret.set_int(this.runtime.running_layout.height); + }; + SysExps.prototype.find = function (ret, text, searchstr) + { + if (cr.is_string(text) && cr.is_string(searchstr)) + ret.set_int(text.search(new RegExp(cr.regexp_escape(searchstr), "i"))); + else + ret.set_int(-1); + }; + SysExps.prototype.findcase = function (ret, text, searchstr) + { + if (cr.is_string(text) && cr.is_string(searchstr)) + ret.set_int(text.search(new RegExp(cr.regexp_escape(searchstr), ""))); + else + ret.set_int(-1); + }; + SysExps.prototype.left = function (ret, text, n) + { + ret.set_string(cr.is_string(text) ? text.substr(0, n) : ""); + }; + SysExps.prototype.right = function (ret, text, n) + { + ret.set_string(cr.is_string(text) ? text.substr(text.length - n) : ""); + }; + SysExps.prototype.mid = function (ret, text, index_, length_) + { + ret.set_string(cr.is_string(text) ? text.substr(index_, length_) : ""); + }; + SysExps.prototype.tokenat = function (ret, text, index_, sep) + { + if (cr.is_string(text) && cr.is_string(sep)) + { + var arr = text.split(sep); + var i = cr.floor(index_); + if (i < 0 || i >= arr.length) + ret.set_string(""); + else + ret.set_string(arr[i]); + } + else + ret.set_string(""); + }; + SysExps.prototype.tokencount = function (ret, text, sep) + { + if (cr.is_string(text) && text.length) + ret.set_int(text.split(sep).length); + else + ret.set_int(0); + }; + SysExps.prototype.replace = function (ret, text, find_, replace_) + { + if (cr.is_string(text) && cr.is_string(find_) && cr.is_string(replace_)) + ret.set_string(text.replace(new RegExp(cr.regexp_escape(find_), "gi"), replace_)); + else + ret.set_string(cr.is_string(text) ? text : ""); + }; + SysExps.prototype.trim = function (ret, text) + { + ret.set_string(cr.is_string(text) ? text.trim() : ""); + }; + SysExps.prototype.pi = function (ret) + { + ret.set_float(cr.PI); + }; + SysExps.prototype.layoutname = function (ret) + { + if (this.runtime.running_layout) + ret.set_string(this.runtime.running_layout.name); + else + ret.set_string(""); + }; + SysExps.prototype.renderer = function (ret) + { + ret.set_string(this.runtime.gl ? "webgl" : "canvas2d"); + }; + SysExps.prototype.rendererdetail = function (ret) + { + ret.set_string(this.runtime.glUnmaskedRenderer); + }; + SysExps.prototype.anglediff = function (ret, a, b) + { + ret.set_float(cr.to_degrees(cr.angleDiff(cr.to_radians(a), cr.to_radians(b)))); + }; + SysExps.prototype.choose = function (ret) + { + var index = cr.floor(Math.random() * (arguments.length - 1)); + ret.set_any(arguments[index + 1]); + }; + SysExps.prototype.rgb = function (ret, r, g, b) + { + ret.set_int(cr.RGB(r, g, b)); + }; + SysExps.prototype.projectversion = function (ret) + { + ret.set_string(this.runtime.versionstr); + }; + SysExps.prototype.projectname = function (ret) + { + ret.set_string(this.runtime.projectName); + }; + SysExps.prototype.anglelerp = function (ret, a, b, x) + { + a = cr.to_radians(a); + b = cr.to_radians(b); + var diff = cr.angleDiff(a, b); + if (cr.angleClockwise(b, a)) + { + ret.set_float(cr.to_clamped_degrees(a + diff * x)); + } + else + { + ret.set_float(cr.to_clamped_degrees(a - diff * x)); + } + }; + SysExps.prototype.anglerotate = function (ret, a, b, c) + { + a = cr.to_radians(a); + b = cr.to_radians(b); + c = cr.to_radians(c); + ret.set_float(cr.to_clamped_degrees(cr.angleRotate(a, b, c))); + }; + SysExps.prototype.zeropad = function (ret, n, d) + { + var s = (n < 0 ? "-" : ""); + if (n < 0) n = -n; + var zeroes = d - n.toString().length; + for (var i = 0; i < zeroes; i++) + s += "0"; + ret.set_string(s + n.toString()); + }; + SysExps.prototype.cpuutilisation = function (ret) + { + ret.set_float(this.runtime.cpuutilisation / 1000); + }; + SysExps.prototype.viewportleft = function (ret, layerparam) + { + var layer = this.runtime.getLayer(layerparam); + ret.set_float(layer ? layer.viewLeft : 0); + }; + SysExps.prototype.viewporttop = function (ret, layerparam) + { + var layer = this.runtime.getLayer(layerparam); + ret.set_float(layer ? layer.viewTop : 0); + }; + SysExps.prototype.viewportright = function (ret, layerparam) + { + var layer = this.runtime.getLayer(layerparam); + ret.set_float(layer ? layer.viewRight : 0); + }; + SysExps.prototype.viewportbottom = function (ret, layerparam) + { + var layer = this.runtime.getLayer(layerparam); + ret.set_float(layer ? layer.viewBottom : 0); + }; + SysExps.prototype.loadingprogress = function (ret) + { + ret.set_float(this.runtime.loadingprogress); + }; + SysExps.prototype.unlerp = function(ret, a, b, y) + { + ret.set_float(cr.unlerp(a, b, y)); + }; + SysExps.prototype.canvassnapshot = function (ret) + { + ret.set_string(this.runtime.snapshotData); + }; + SysExps.prototype.urlencode = function (ret, s) + { + ret.set_string(encodeURIComponent(s)); + }; + SysExps.prototype.urldecode = function (ret, s) + { + ret.set_string(decodeURIComponent(s)); + }; + SysExps.prototype.canvastolayerx = function (ret, layerparam, x, y) + { + var layer = this.runtime.getLayer(layerparam); + ret.set_float(layer ? layer.canvasToLayer(x, y, true) : 0); + }; + SysExps.prototype.canvastolayery = function (ret, layerparam, x, y) + { + var layer = this.runtime.getLayer(layerparam); + ret.set_float(layer ? layer.canvasToLayer(x, y, false) : 0); + }; + SysExps.prototype.layertocanvasx = function (ret, layerparam, x, y) + { + var layer = this.runtime.getLayer(layerparam); + ret.set_float(layer ? layer.layerToCanvas(x, y, true) : 0); + }; + SysExps.prototype.layertocanvasy = function (ret, layerparam, x, y) + { + var layer = this.runtime.getLayer(layerparam); + ret.set_float(layer ? layer.layerToCanvas(x, y, false) : 0); + }; + SysExps.prototype.savestatejson = function (ret) + { + ret.set_string(this.runtime.lastSaveJson); + }; + SysExps.prototype.imagememoryusage = function (ret) + { + if (this.runtime.glwrap) + ret.set_float(Math.round(100 * this.runtime.glwrap.estimateVRAM() / (1024 * 1024)) / 100); + else + ret.set_float(0); + }; + SysExps.prototype.regexsearch = function (ret, str_, regex_, flags_) + { + var regex = getRegex(regex_, flags_); + ret.set_int(str_ ? str_.search(regex) : -1); + }; + SysExps.prototype.regexreplace = function (ret, str_, regex_, flags_, replace_) + { + var regex = getRegex(regex_, flags_); + ret.set_string(str_ ? str_.replace(regex, replace_) : ""); + }; + var regexMatches = []; + var lastMatchesStr = ""; + var lastMatchesRegex = ""; + var lastMatchesFlags = ""; + function updateRegexMatches(str_, regex_, flags_) + { + if (str_ === lastMatchesStr && regex_ === lastMatchesRegex && flags_ === lastMatchesFlags) + return; + var regex = getRegex(regex_, flags_); + regexMatches = str_.match(regex); + lastMatchesStr = str_; + lastMatchesRegex = regex_; + lastMatchesFlags = flags_; + }; + SysExps.prototype.regexmatchcount = function (ret, str_, regex_, flags_) + { + var regex = getRegex(regex_, flags_); + updateRegexMatches(str_.toString(), regex_, flags_); + ret.set_int(regexMatches ? regexMatches.length : 0); + }; + SysExps.prototype.regexmatchat = function (ret, str_, regex_, flags_, index_) + { + index_ = Math.floor(index_); + var regex = getRegex(regex_, flags_); + updateRegexMatches(str_.toString(), regex_, flags_); + if (!regexMatches || index_ < 0 || index_ >= regexMatches.length) + ret.set_string(""); + else + ret.set_string(regexMatches[index_]); + }; + SysExps.prototype.infinity = function (ret) + { + ret.set_float(Infinity); + }; + SysExps.prototype.setbit = function (ret, n, b, v) + { + n = n | 0; + b = b | 0; + v = (v !== 0 ? 1 : 0); + ret.set_int((n & ~(1 << b)) | (v << b)); + }; + SysExps.prototype.togglebit = function (ret, n, b) + { + n = n | 0; + b = b | 0; + ret.set_int(n ^ (1 << b)); + }; + SysExps.prototype.getbit = function (ret, n, b) + { + n = n | 0; + b = b | 0; + ret.set_int((n & (1 << b)) ? 1 : 0); + }; + SysExps.prototype.originalwindowwidth = function (ret) + { + ret.set_int(this.runtime.original_width); + }; + SysExps.prototype.originalwindowheight = function (ret) + { + ret.set_int(this.runtime.original_height); + }; + sysProto.exps = new SysExps(); + sysProto.runWaits = function () + { + var i, j, len, w, k, s, ss; + var evinfo = this.runtime.getCurrentEventStack(); + for (i = 0, len = this.waits.length; i < len; i++) + { + w = this.waits[i]; + if (w.time === -1) // signalled wait + { + if (!w.signalled) + continue; // not yet signalled + } + else // timer wait + { + if (w.time > this.runtime.kahanTime.sum) + continue; // timer not yet expired + } + evinfo.current_event = w.ev; + evinfo.actindex = w.actindex; + evinfo.cndindex = 0; + for (k in w.sols) + { + if (w.sols.hasOwnProperty(k)) + { + s = this.runtime.types_by_index[parseInt(k, 10)].getCurrentSol(); + ss = w.sols[k]; + s.select_all = ss.sa; + cr.shallowAssignArray(s.instances, ss.insts); + freeSolStateObject(ss); + } + } + w.ev.resume_actions_and_subevents(); + this.runtime.clearSol(w.solModifiers); + w.deleteme = true; + } + for (i = 0, j = 0, len = this.waits.length; i < len; i++) + { + w = this.waits[i]; + this.waits[j] = w; + if (w.deleteme) + freeWaitObject(w); + else + j++; + } + cr.truncateArray(this.waits, j); + }; +}()); +; +(function () { + cr.add_common_aces = function (m, pluginProto) + { + var singleglobal_ = m[1]; + var position_aces = m[3]; + var size_aces = m[4]; + var angle_aces = m[5]; + var appearance_aces = m[6]; + var zorder_aces = m[7]; + var effects_aces = m[8]; + if (!pluginProto.cnds) + pluginProto.cnds = {}; + if (!pluginProto.acts) + pluginProto.acts = {}; + if (!pluginProto.exps) + pluginProto.exps = {}; + var cnds = pluginProto.cnds; + var acts = pluginProto.acts; + var exps = pluginProto.exps; + if (position_aces) + { + cnds.CompareX = function (cmp, x) + { + return cr.do_cmp(this.x, cmp, x); + }; + cnds.CompareY = function (cmp, y) + { + return cr.do_cmp(this.y, cmp, y); + }; + cnds.IsOnScreen = function () + { + var layer = this.layer; + this.update_bbox(); + var bbox = this.bbox; + return !(bbox.right < layer.viewLeft || bbox.bottom < layer.viewTop || bbox.left > layer.viewRight || bbox.top > layer.viewBottom); + }; + cnds.IsOutsideLayout = function () + { + this.update_bbox(); + var bbox = this.bbox; + var layout = this.runtime.running_layout; + return (bbox.right < 0 || bbox.bottom < 0 || bbox.left > layout.width || bbox.top > layout.height); + }; + cnds.PickDistance = function (which, x, y) + { + var sol = this.getCurrentSol(); + var instances = sol.getObjects(); + if (!instances.length) + return false; + var inst = instances[0]; + var pickme = inst; + var dist = cr.distanceTo(inst.x, inst.y, x, y); + var i, len, d; + for (i = 1, len = instances.length; i < len; i++) + { + inst = instances[i]; + d = cr.distanceTo(inst.x, inst.y, x, y); + if ((which === 0 && d < dist) || (which === 1 && d > dist)) + { + dist = d; + pickme = inst; + } + } + sol.pick_one(pickme); + return true; + }; + acts.SetX = function (x) + { + if (this.x !== x) + { + this.x = x; + this.set_bbox_changed(); + } + }; + acts.SetY = function (y) + { + if (this.y !== y) + { + this.y = y; + this.set_bbox_changed(); + } + }; + acts.SetPos = function (x, y) + { + if (this.x !== x || this.y !== y) + { + this.x = x; + this.y = y; + this.set_bbox_changed(); + } + }; + acts.SetPosToObject = function (obj, imgpt) + { + var inst = obj.getPairedInstance(this); + if (!inst) + return; + var newx, newy; + if (inst.getImagePoint) + { + newx = inst.getImagePoint(imgpt, true); + newy = inst.getImagePoint(imgpt, false); + } + else + { + newx = inst.x; + newy = inst.y; + } + if (this.x !== newx || this.y !== newy) + { + this.x = newx; + this.y = newy; + this.set_bbox_changed(); + } + }; + acts.MoveForward = function (dist) + { + if (dist !== 0) + { + this.x += Math.cos(this.angle) * dist; + this.y += Math.sin(this.angle) * dist; + this.set_bbox_changed(); + } + }; + acts.MoveAtAngle = function (a, dist) + { + if (dist !== 0) + { + this.x += Math.cos(cr.to_radians(a)) * dist; + this.y += Math.sin(cr.to_radians(a)) * dist; + this.set_bbox_changed(); + } + }; + exps.X = function (ret) + { + ret.set_float(this.x); + }; + exps.Y = function (ret) + { + ret.set_float(this.y); + }; + exps.dt = function (ret) + { + ret.set_float(this.runtime.getDt(this)); + }; + } + if (size_aces) + { + cnds.CompareWidth = function (cmp, w) + { + return cr.do_cmp(this.width, cmp, w); + }; + cnds.CompareHeight = function (cmp, h) + { + return cr.do_cmp(this.height, cmp, h); + }; + acts.SetWidth = function (w) + { + if (this.width !== w) + { + this.width = w; + this.set_bbox_changed(); + } + }; + acts.SetHeight = function (h) + { + if (this.height !== h) + { + this.height = h; + this.set_bbox_changed(); + } + }; + acts.SetSize = function (w, h) + { + if (this.width !== w || this.height !== h) + { + this.width = w; + this.height = h; + this.set_bbox_changed(); + } + }; + exps.Width = function (ret) + { + ret.set_float(this.width); + }; + exps.Height = function (ret) + { + ret.set_float(this.height); + }; + exps.BBoxLeft = function (ret) + { + this.update_bbox(); + ret.set_float(this.bbox.left); + }; + exps.BBoxTop = function (ret) + { + this.update_bbox(); + ret.set_float(this.bbox.top); + }; + exps.BBoxRight = function (ret) + { + this.update_bbox(); + ret.set_float(this.bbox.right); + }; + exps.BBoxBottom = function (ret) + { + this.update_bbox(); + ret.set_float(this.bbox.bottom); + }; + } + if (angle_aces) + { + cnds.AngleWithin = function (within, a) + { + return cr.angleDiff(this.angle, cr.to_radians(a)) <= cr.to_radians(within); + }; + cnds.IsClockwiseFrom = function (a) + { + return cr.angleClockwise(this.angle, cr.to_radians(a)); + }; + cnds.IsBetweenAngles = function (a, b) + { + var lower = cr.to_clamped_radians(a); + var upper = cr.to_clamped_radians(b); + var angle = cr.clamp_angle(this.angle); + var obtuse = (!cr.angleClockwise(upper, lower)); + if (obtuse) + return !(!cr.angleClockwise(angle, lower) && cr.angleClockwise(angle, upper)); + else + return cr.angleClockwise(angle, lower) && !cr.angleClockwise(angle, upper); + }; + acts.SetAngle = function (a) + { + var newangle = cr.to_radians(cr.clamp_angle_degrees(a)); + if (isNaN(newangle)) + return; + if (this.angle !== newangle) + { + this.angle = newangle; + this.set_bbox_changed(); + } + }; + acts.RotateClockwise = function (a) + { + if (a !== 0 && !isNaN(a)) + { + this.angle += cr.to_radians(a); + this.angle = cr.clamp_angle(this.angle); + this.set_bbox_changed(); + } + }; + acts.RotateCounterclockwise = function (a) + { + if (a !== 0 && !isNaN(a)) + { + this.angle -= cr.to_radians(a); + this.angle = cr.clamp_angle(this.angle); + this.set_bbox_changed(); + } + }; + acts.RotateTowardAngle = function (amt, target) + { + var newangle = cr.angleRotate(this.angle, cr.to_radians(target), cr.to_radians(amt)); + if (isNaN(newangle)) + return; + if (this.angle !== newangle) + { + this.angle = newangle; + this.set_bbox_changed(); + } + }; + acts.RotateTowardPosition = function (amt, x, y) + { + var dx = x - this.x; + var dy = y - this.y; + var target = Math.atan2(dy, dx); + var newangle = cr.angleRotate(this.angle, target, cr.to_radians(amt)); + if (isNaN(newangle)) + return; + if (this.angle !== newangle) + { + this.angle = newangle; + this.set_bbox_changed(); + } + }; + acts.SetTowardPosition = function (x, y) + { + var dx = x - this.x; + var dy = y - this.y; + var newangle = Math.atan2(dy, dx); + if (isNaN(newangle)) + return; + if (this.angle !== newangle) + { + this.angle = newangle; + this.set_bbox_changed(); + } + }; + exps.Angle = function (ret) + { + ret.set_float(cr.to_clamped_degrees(this.angle)); + }; + } + if (!singleglobal_) + { + cnds.CompareInstanceVar = function (iv, cmp, val) + { + return cr.do_cmp(this.instance_vars[iv], cmp, val); + }; + cnds.IsBoolInstanceVarSet = function (iv) + { + return this.instance_vars[iv]; + }; + cnds.PickInstVarHiLow = function (which, iv) + { + var sol = this.getCurrentSol(); + var instances = sol.getObjects(); + if (!instances.length) + return false; + var inst = instances[0]; + var pickme = inst; + var val = inst.instance_vars[iv]; + var i, len, v; + for (i = 1, len = instances.length; i < len; i++) + { + inst = instances[i]; + v = inst.instance_vars[iv]; + if ((which === 0 && v < val) || (which === 1 && v > val)) + { + val = v; + pickme = inst; + } + } + sol.pick_one(pickme); + return true; + }; + cnds.PickByUID = function (u) + { + var i, len, j, inst, families, instances, sol; + var cnd = this.runtime.getCurrentCondition(); + if (cnd.inverted) + { + sol = this.getCurrentSol(); + if (sol.select_all) + { + sol.select_all = false; + cr.clearArray(sol.instances); + cr.clearArray(sol.else_instances); + instances = this.instances; + for (i = 0, len = instances.length; i < len; i++) + { + inst = instances[i]; + if (inst.uid === u) + sol.else_instances.push(inst); + else + sol.instances.push(inst); + } + this.applySolToContainer(); + return !!sol.instances.length; + } + else + { + for (i = 0, j = 0, len = sol.instances.length; i < len; i++) + { + inst = sol.instances[i]; + sol.instances[j] = inst; + if (inst.uid === u) + { + sol.else_instances.push(inst); + } + else + j++; + } + cr.truncateArray(sol.instances, j); + this.applySolToContainer(); + return !!sol.instances.length; + } + } + else + { + inst = this.runtime.getObjectByUID(u); + if (!inst) + return false; + sol = this.getCurrentSol(); + if (!sol.select_all && sol.instances.indexOf(inst) === -1) + return false; // not picked + if (this.is_family) + { + families = inst.type.families; + for (i = 0, len = families.length; i < len; i++) + { + if (families[i] === this) + { + sol.pick_one(inst); + this.applySolToContainer(); + return true; + } + } + } + else if (inst.type === this) + { + sol.pick_one(inst); + this.applySolToContainer(); + return true; + } + return false; + } + }; + cnds.OnCreated = function () + { + return true; + }; + cnds.OnDestroyed = function () + { + return true; + }; + acts.SetInstanceVar = function (iv, val) + { + var myinstvars = this.instance_vars; + if (cr.is_number(myinstvars[iv])) + { + if (cr.is_number(val)) + myinstvars[iv] = val; + else + myinstvars[iv] = parseFloat(val); + } + else if (cr.is_string(myinstvars[iv])) + { + if (cr.is_string(val)) + myinstvars[iv] = val; + else + myinstvars[iv] = val.toString(); + } + else +; + }; + acts.AddInstanceVar = function (iv, val) + { + var myinstvars = this.instance_vars; + if (cr.is_number(myinstvars[iv])) + { + if (cr.is_number(val)) + myinstvars[iv] += val; + else + myinstvars[iv] += parseFloat(val); + } + else if (cr.is_string(myinstvars[iv])) + { + if (cr.is_string(val)) + myinstvars[iv] += val; + else + myinstvars[iv] += val.toString(); + } + else +; + }; + acts.SubInstanceVar = function (iv, val) + { + var myinstvars = this.instance_vars; + if (cr.is_number(myinstvars[iv])) + { + if (cr.is_number(val)) + myinstvars[iv] -= val; + else + myinstvars[iv] -= parseFloat(val); + } + else +; + }; + acts.SetBoolInstanceVar = function (iv, val) + { + this.instance_vars[iv] = val ? 1 : 0; + }; + acts.ToggleBoolInstanceVar = function (iv) + { + this.instance_vars[iv] = 1 - this.instance_vars[iv]; + }; + acts.Destroy = function () + { + this.runtime.DestroyInstance(this); + }; + if (!acts.LoadFromJsonString) + { + acts.LoadFromJsonString = function (str_) + { + var o, i, len, binst; + try { + o = JSON.parse(str_); + } + catch (e) { + return; + } + this.runtime.loadInstanceFromJSON(this, o, true); + if (this.afterLoad) + this.afterLoad(); + if (this.behavior_insts) + { + for (i = 0, len = this.behavior_insts.length; i < len; ++i) + { + binst = this.behavior_insts[i]; + if (binst.afterLoad) + binst.afterLoad(); + } + } + }; + } + exps.Count = function (ret) + { + var count = ret.object_class.instances.length; + var i, len, inst; + for (i = 0, len = this.runtime.createRow.length; i < len; i++) + { + inst = this.runtime.createRow[i]; + if (ret.object_class.is_family) + { + if (inst.type.families.indexOf(ret.object_class) >= 0) + count++; + } + else + { + if (inst.type === ret.object_class) + count++; + } + } + ret.set_int(count); + }; + exps.PickedCount = function (ret) + { + ret.set_int(ret.object_class.getCurrentSol().getObjects().length); + }; + exps.UID = function (ret) + { + ret.set_int(this.uid); + }; + exps.IID = function (ret) + { + ret.set_int(this.get_iid()); + }; + if (!exps.AsJSON) + { + exps.AsJSON = function (ret) + { + ret.set_string(JSON.stringify(this.runtime.saveInstanceToJSON(this, true))); + }; + } + } + if (appearance_aces) + { + cnds.IsVisible = function () + { + return this.visible; + }; + acts.SetVisible = function (v) + { + if (!v !== !this.visible) + { + this.visible = !!v; + this.runtime.redraw = true; + } + }; + cnds.CompareOpacity = function (cmp, x) + { + return cr.do_cmp(cr.round6dp(this.opacity * 100), cmp, x); + }; + acts.SetOpacity = function (x) + { + var new_opacity = x / 100.0; + if (new_opacity < 0) + new_opacity = 0; + else if (new_opacity > 1) + new_opacity = 1; + if (new_opacity !== this.opacity) + { + this.opacity = new_opacity; + this.runtime.redraw = true; + } + }; + exps.Opacity = function (ret) + { + ret.set_float(cr.round6dp(this.opacity * 100.0)); + }; + } + if (zorder_aces) + { + cnds.IsOnLayer = function (layer_) + { + if (!layer_) + return false; + return this.layer === layer_; + }; + cnds.PickTopBottom = function (which_) + { + var sol = this.getCurrentSol(); + var instances = sol.getObjects(); + if (!instances.length) + return false; + var inst = instances[0]; + var pickme = inst; + var i, len; + for (i = 1, len = instances.length; i < len; i++) + { + inst = instances[i]; + if (which_ === 0) + { + if (inst.layer.index > pickme.layer.index || (inst.layer.index === pickme.layer.index && inst.get_zindex() > pickme.get_zindex())) + { + pickme = inst; + } + } + else + { + if (inst.layer.index < pickme.layer.index || (inst.layer.index === pickme.layer.index && inst.get_zindex() < pickme.get_zindex())) + { + pickme = inst; + } + } + } + sol.pick_one(pickme); + return true; + }; + acts.MoveToTop = function () + { + var layer = this.layer; + var layer_instances = layer.instances; + if (layer_instances.length && layer_instances[layer_instances.length - 1] === this) + return; // is already at top + layer.removeFromInstanceList(this, false); + layer.appendToInstanceList(this, false); + this.runtime.redraw = true; + }; + acts.MoveToBottom = function () + { + var layer = this.layer; + var layer_instances = layer.instances; + if (layer_instances.length && layer_instances[0] === this) + return; // is already at bottom + layer.removeFromInstanceList(this, false); + layer.prependToInstanceList(this, false); + this.runtime.redraw = true; + }; + acts.MoveToLayer = function (layerMove) + { + if (!layerMove || layerMove == this.layer) + return; + this.layer.removeFromInstanceList(this, true); + this.layer = layerMove; + layerMove.appendToInstanceList(this, true); + this.runtime.redraw = true; + }; + acts.ZMoveToObject = function (where_, obj_) + { + var isafter = (where_ === 0); + if (!obj_) + return; + var other = obj_.getFirstPicked(this); + if (!other || other.uid === this.uid) + return; + if (this.layer.index !== other.layer.index) + { + this.layer.removeFromInstanceList(this, true); + this.layer = other.layer; + other.layer.appendToInstanceList(this, true); + } + this.layer.moveInstanceAdjacent(this, other, isafter); + this.runtime.redraw = true; + }; + exps.LayerNumber = function (ret) + { + ret.set_int(this.layer.number); + }; + exps.LayerName = function (ret) + { + ret.set_string(this.layer.name); + }; + exps.ZIndex = function (ret) + { + ret.set_int(this.get_zindex()); + }; + } + if (effects_aces) + { + acts.SetEffectEnabled = function (enable_, effectname_) + { + if (!this.runtime.glwrap) + return; + var i = this.type.getEffectIndexByName(effectname_); + if (i < 0) + return; // effect name not found + var enable = (enable_ === 1); + if (this.active_effect_flags[i] === enable) + return; // no change + this.active_effect_flags[i] = enable; + this.updateActiveEffects(); + this.runtime.redraw = true; + }; + acts.SetEffectParam = function (effectname_, index_, value_) + { + if (!this.runtime.glwrap) + return; + var i = this.type.getEffectIndexByName(effectname_); + if (i < 0) + return; // effect name not found + var et = this.type.effect_types[i]; + var params = this.effect_params[i]; + index_ = Math.floor(index_); + if (index_ < 0 || index_ >= params.length) + return; // effect index out of bounds + if (this.runtime.glwrap.getProgramParameterType(et.shaderindex, index_) === 1) + value_ /= 100.0; + if (params[index_] === value_) + return; // no change + params[index_] = value_; + if (et.active) + this.runtime.redraw = true; + }; + } + }; + cr.set_bbox_changed = function () + { + this.bbox_changed = true; // will recreate next time box requested + this.cell_changed = true; + this.type.any_cell_changed = true; // avoid unnecessary updateAllBBox() calls + this.runtime.redraw = true; // assume runtime needs to redraw + var i, len, callbacks = this.bbox_changed_callbacks; + for (i = 0, len = callbacks.length; i < len; ++i) + { + callbacks[i](this); + } + if (this.layer.useRenderCells) + this.update_bbox(); + }; + cr.add_bbox_changed_callback = function (f) + { + if (f) + { + this.bbox_changed_callbacks.push(f); + } + }; + cr.update_bbox = function () + { + if (!this.bbox_changed) + return; // bounding box not changed + var bbox = this.bbox; + var bquad = this.bquad; + bbox.set(this.x, this.y, this.x + this.width, this.y + this.height); + bbox.offset(-this.hotspotX * this.width, -this.hotspotY * this.height); + if (!this.angle) + { + bquad.set_from_rect(bbox); // make bounding quad from box + } + else + { + bbox.offset(-this.x, -this.y); // translate to origin + bquad.set_from_rotated_rect(bbox, this.angle); // rotate around origin + bquad.offset(this.x, this.y); // translate back to original position + bquad.bounding_box(bbox); + } + bbox.normalize(); + this.bbox_changed = false; // bounding box up to date + this.update_render_cell(); + }; + var tmprc = new cr.rect(0, 0, 0, 0); + cr.update_render_cell = function () + { + if (!this.layer.useRenderCells) + return; + var mygrid = this.layer.render_grid; + var bbox = this.bbox; + tmprc.set(mygrid.XToCell(bbox.left), mygrid.YToCell(bbox.top), mygrid.XToCell(bbox.right), mygrid.YToCell(bbox.bottom)); + if (this.rendercells.equals(tmprc)) + return; + if (this.rendercells.right < this.rendercells.left) + mygrid.update(this, null, tmprc); // first insertion with invalid rect: don't provide old range + else + mygrid.update(this, this.rendercells, tmprc); + this.rendercells.copy(tmprc); + this.layer.render_list_stale = true; + }; + cr.update_collision_cell = function () + { + if (!this.cell_changed || !this.collisionsEnabled) + return; + this.update_bbox(); + var mygrid = this.type.collision_grid; + var bbox = this.bbox; + tmprc.set(mygrid.XToCell(bbox.left), mygrid.YToCell(bbox.top), mygrid.XToCell(bbox.right), mygrid.YToCell(bbox.bottom)); + if (this.collcells.equals(tmprc)) + return; + if (this.collcells.right < this.collcells.left) + mygrid.update(this, null, tmprc); // first insertion with invalid rect: don't provide old range + else + mygrid.update(this, this.collcells, tmprc); + this.collcells.copy(tmprc); + this.cell_changed = false; + }; + cr.inst_contains_pt = function (x, y) + { + if (!this.bbox.contains_pt(x, y)) + return false; + if (!this.bquad.contains_pt(x, y)) + return false; + if (this.tilemap_exists) + return this.testPointOverlapTile(x, y); + if (this.collision_poly && !this.collision_poly.is_empty()) + { + this.collision_poly.cache_poly(this.width, this.height, this.angle); + return this.collision_poly.contains_pt(x - this.x, y - this.y); + } + else + return true; + }; + cr.inst_get_iid = function () + { + this.type.updateIIDs(); + return this.iid; + }; + cr.inst_get_zindex = function () + { + this.layer.updateZIndices(); + return this.zindex; + }; + cr.inst_updateActiveEffects = function () + { + cr.clearArray(this.active_effect_types); + var i, len, et; + var preserves_opaqueness = true; + for (i = 0, len = this.active_effect_flags.length; i < len; i++) + { + if (this.active_effect_flags[i]) + { + et = this.type.effect_types[i]; + this.active_effect_types.push(et); + if (!et.preservesOpaqueness) + preserves_opaqueness = false; + } + } + this.uses_shaders = !!this.active_effect_types.length; + this.shaders_preserve_opaqueness = preserves_opaqueness; + }; + cr.inst_toString = function () + { + return "Inst" + this.puid; + }; + cr.type_getFirstPicked = function (frominst) + { + if (frominst && frominst.is_contained && frominst.type != this) + { + var i, len, s; + for (i = 0, len = frominst.siblings.length; i < len; i++) + { + s = frominst.siblings[i]; + if (s.type == this) + return s; + } + } + var instances = this.getCurrentSol().getObjects(); + if (instances.length) + return instances[0]; + else + return null; + }; + cr.type_getPairedInstance = function (inst) + { + var instances = this.getCurrentSol().getObjects(); + if (instances.length) + return instances[inst.get_iid() % instances.length]; + else + return null; + }; + cr.type_updateIIDs = function () + { + if (!this.stale_iids || this.is_family) + return; // up to date or is family - don't want family to overwrite IIDs + var i, len; + for (i = 0, len = this.instances.length; i < len; i++) + this.instances[i].iid = i; + var next_iid = i; + var createRow = this.runtime.createRow; + for (i = 0, len = createRow.length; i < len; ++i) + { + if (createRow[i].type === this) + createRow[i].iid = next_iid++; + } + this.stale_iids = false; + }; + cr.type_getInstanceByIID = function (i) + { + if (i < this.instances.length) + return this.instances[i]; + i -= this.instances.length; + var createRow = this.runtime.createRow; + var j, lenj; + for (j = 0, lenj = createRow.length; j < lenj; ++j) + { + if (createRow[j].type === this) + { + if (i === 0) + return createRow[j]; + --i; + } + } +; + return null; + }; + cr.type_getCurrentSol = function () + { + return this.solstack[this.cur_sol]; + }; + cr.type_pushCleanSol = function () + { + this.cur_sol++; + if (this.cur_sol === this.solstack.length) + { + this.solstack.push(new cr.selection(this)); + } + else + { + this.solstack[this.cur_sol].select_all = true; // else clear next SOL + cr.clearArray(this.solstack[this.cur_sol].else_instances); + } + }; + cr.type_pushCopySol = function () + { + this.cur_sol++; + if (this.cur_sol === this.solstack.length) + this.solstack.push(new cr.selection(this)); + var clonesol = this.solstack[this.cur_sol]; + var prevsol = this.solstack[this.cur_sol - 1]; + if (prevsol.select_all) + { + clonesol.select_all = true; + } + else + { + clonesol.select_all = false; + cr.shallowAssignArray(clonesol.instances, prevsol.instances); + } + cr.clearArray(clonesol.else_instances); + }; + cr.type_popSol = function () + { +; + this.cur_sol--; + }; + cr.type_getBehaviorByName = function (behname) + { + var i, len, j, lenj, f, index = 0; + if (!this.is_family) + { + for (i = 0, len = this.families.length; i < len; i++) + { + f = this.families[i]; + for (j = 0, lenj = f.behaviors.length; j < lenj; j++) + { + if (behname === f.behaviors[j].name) + { + this.extra["lastBehIndex"] = index; + return f.behaviors[j]; + } + index++; + } + } + } + for (i = 0, len = this.behaviors.length; i < len; i++) { + if (behname === this.behaviors[i].name) + { + this.extra["lastBehIndex"] = index; + return this.behaviors[i]; + } + index++; + } + return null; + }; + cr.type_getBehaviorIndexByName = function (behname) + { + var b = this.getBehaviorByName(behname); + if (b) + return this.extra["lastBehIndex"]; + else + return -1; + }; + cr.type_getEffectIndexByName = function (name_) + { + var i, len; + for (i = 0, len = this.effect_types.length; i < len; i++) + { + if (this.effect_types[i].name === name_) + return i; + } + return -1; + }; + cr.type_applySolToContainer = function () + { + if (!this.is_contained || this.is_family) + return; + var i, len, j, lenj, t, sol, sol2; + this.updateIIDs(); + sol = this.getCurrentSol(); + var select_all = sol.select_all; + var es = this.runtime.getCurrentEventStack(); + var orblock = es && es.current_event && es.current_event.orblock; + for (i = 0, len = this.container.length; i < len; i++) + { + t = this.container[i]; + if (t === this) + continue; + t.updateIIDs(); + sol2 = t.getCurrentSol(); + sol2.select_all = select_all; + if (!select_all) + { + cr.clearArray(sol2.instances); + for (j = 0, lenj = sol.instances.length; j < lenj; ++j) + sol2.instances[j] = t.getInstanceByIID(sol.instances[j].iid); + if (orblock) + { + cr.clearArray(sol2.else_instances); + for (j = 0, lenj = sol.else_instances.length; j < lenj; ++j) + sol2.else_instances[j] = t.getInstanceByIID(sol.else_instances[j].iid); + } + } + } + }; + cr.type_toString = function () + { + return "Type" + this.sid; + }; + cr.do_cmp = function (x, cmp, y) + { + if (typeof x === "undefined" || typeof y === "undefined") + return false; + switch (cmp) + { + case 0: // equal + return x === y; + case 1: // not equal + return x !== y; + case 2: // less + return x < y; + case 3: // less/equal + return x <= y; + case 4: // greater + return x > y; + case 5: // greater/equal + return x >= y; + default: +; + return false; + } + }; +})(); +cr.shaders = {}; +cr.shaders["difference"] = {src: ["varying mediump vec2 vTex;", +"uniform lowp sampler2D samplerFront;", +"uniform lowp sampler2D samplerBack;", +"uniform mediump vec2 destStart;", +"uniform mediump vec2 destEnd;", +"void main(void)", +"{", +"lowp vec4 front = texture2D(samplerFront, vTex);", +"front.rgb /= front.a;", +"lowp vec4 back = texture2D(samplerBack, mix(destStart, destEnd, vTex));", +"back.rgb /= back.a;", +"front.rgb = (max(front.rgb, back.rgb) - min(front.rgb, back.rgb)) * front.a;", +"gl_FragColor = front;", +"}" +].join("\n"), + extendBoxHorizontal: 0, + extendBoxVertical: 0, + crossSampling: true, + preservesOpaqueness: false, + animated: false, + parameters: [] } +cr.shaders["replacecolor"] = {src: ["varying mediump vec2 vTex;", +"uniform lowp sampler2D samplerFront;", +"uniform mediump float rsource;", +"uniform mediump float gsource;", +"uniform mediump float bsource;", +"uniform mediump float rdest;", +"uniform mediump float gdest;", +"uniform mediump float bdest;", +"uniform lowp float tolerance;", +"void main(void)", +"{", +"lowp vec4 front = texture2D(samplerFront, vTex);", +"lowp float a = front.a;", +"if (a != 0.0)", +"front.rgb /= a;", +"lowp float diff = length(front.rgb - vec3(rsource, gsource, bsource) / 255.0);", +"if (diff <= tolerance)", +"{", +"front.rgb = mix(front.rgb, vec3(rdest, gdest, bdest) / 255.0, 1.0 - diff / tolerance);", +"}", +"front.rgb *= a;", +"gl_FragColor = front;", +"}" +].join("\n"), + extendBoxHorizontal: 0, + extendBoxVertical: 0, + crossSampling: false, + preservesOpaqueness: true, + animated: false, + parameters: [["rsource", 0, 0], ["gsource", 0, 0], ["bsource", 0, 0], ["rdest", 0, 0], ["gdest", 0, 0], ["bdest", 0, 0], ["tolerance", 0, 1]] } +; +; +cr.plugins_.AJAX = function(runtime) +{ + this.runtime = runtime; +}; +(function () +{ + var isNWjs = false; + var path = null; + var fs = null; + var nw_appfolder = ""; + var pluginProto = cr.plugins_.AJAX.prototype; + pluginProto.Type = function(plugin) + { + this.plugin = plugin; + this.runtime = plugin.runtime; + }; + var typeProto = pluginProto.Type.prototype; + typeProto.onCreate = function() + { + }; + pluginProto.Instance = function(type) + { + this.type = type; + this.runtime = type.runtime; + this.lastData = ""; + this.curTag = ""; + this.progress = 0; + this.timeout = -1; + isNWjs = this.runtime.isNWjs; + if (isNWjs) + { + path = require("path"); + fs = require("fs"); + var process = window["process"] || nw["process"]; + nw_appfolder = path["dirname"](process["execPath"]) + "\\"; + } + }; + var instanceProto = pluginProto.Instance.prototype; + var theInstance = null; + window["C2_AJAX_DCSide"] = function (event_, tag_, param_) + { + if (!theInstance) + return; + if (event_ === "success") + { + theInstance.curTag = tag_; + theInstance.lastData = param_; + theInstance.runtime.trigger(cr.plugins_.AJAX.prototype.cnds.OnAnyComplete, theInstance); + theInstance.runtime.trigger(cr.plugins_.AJAX.prototype.cnds.OnComplete, theInstance); + } + else if (event_ === "error") + { + theInstance.curTag = tag_; + theInstance.runtime.trigger(cr.plugins_.AJAX.prototype.cnds.OnAnyError, theInstance); + theInstance.runtime.trigger(cr.plugins_.AJAX.prototype.cnds.OnError, theInstance); + } + else if (event_ === "progress") + { + theInstance.progress = param_; + theInstance.curTag = tag_; + theInstance.runtime.trigger(cr.plugins_.AJAX.prototype.cnds.OnProgress, theInstance); + } + }; + instanceProto.onCreate = function() + { + theInstance = this; + }; + instanceProto.saveToJSON = function () + { + return { "lastData": this.lastData }; + }; + instanceProto.loadFromJSON = function (o) + { + this.lastData = o["lastData"]; + this.curTag = ""; + this.progress = 0; + }; + var next_request_headers = {}; + var next_override_mime = ""; + instanceProto.doRequest = function (tag_, url_, method_, data_) + { + if (this.runtime.isDirectCanvas) + { + AppMobi["webview"]["execute"]('C2_AJAX_WebSide("' + tag_ + '", "' + url_ + '", "' + method_ + '", ' + (data_ ? '"' + data_ + '"' : "null") + ');'); + return; + } + var self = this; + var request = null; + var doErrorFunc = function () + { + self.curTag = tag_; + self.runtime.trigger(cr.plugins_.AJAX.prototype.cnds.OnAnyError, self); + self.runtime.trigger(cr.plugins_.AJAX.prototype.cnds.OnError, self); + }; + var errorFunc = function () + { + if (isNWjs) + { + var filepath = nw_appfolder + url_; + if (fs["existsSync"](filepath)) + { + fs["readFile"](filepath, {"encoding": "utf8"}, function (err, data) { + if (err) + { + doErrorFunc(); + return; + } + self.curTag = tag_; + self.lastData = data.replace(/\r\n/g, "\n") + self.runtime.trigger(cr.plugins_.AJAX.prototype.cnds.OnAnyComplete, self); + self.runtime.trigger(cr.plugins_.AJAX.prototype.cnds.OnComplete, self); + }); + } + else + doErrorFunc(); + } + else + doErrorFunc(); + }; + var progressFunc = function (e) + { + if (!e["lengthComputable"]) + return; + self.progress = e.loaded / e.total; + self.curTag = tag_; + self.runtime.trigger(cr.plugins_.AJAX.prototype.cnds.OnProgress, self); + }; + try + { + if (this.runtime.isWindowsPhone8) + request = new ActiveXObject("Microsoft.XMLHTTP"); + else + request = new XMLHttpRequest(); + request.onreadystatechange = function() + { + if (request.readyState === 4) + { + self.curTag = tag_; + if (request.responseText) + self.lastData = request.responseText.replace(/\r\n/g, "\n"); // fix windows style line endings + else + self.lastData = ""; + if (request.status >= 400) + { + self.runtime.trigger(cr.plugins_.AJAX.prototype.cnds.OnAnyError, self); + self.runtime.trigger(cr.plugins_.AJAX.prototype.cnds.OnError, self); + } + else + { + if ((!isNWjs || self.lastData.length) && !(!isNWjs && request.status === 0 && !self.lastData.length)) + { + self.runtime.trigger(cr.plugins_.AJAX.prototype.cnds.OnAnyComplete, self); + self.runtime.trigger(cr.plugins_.AJAX.prototype.cnds.OnComplete, self); + } + } + } + }; + if (!this.runtime.isWindowsPhone8) + { + request.onerror = errorFunc; + request.ontimeout = errorFunc; + request.onabort = errorFunc; + request["onprogress"] = progressFunc; + } + request.open(method_, url_); + if (!this.runtime.isWindowsPhone8) + { + if (this.timeout >= 0 && typeof request["timeout"] !== "undefined") + request["timeout"] = this.timeout; + } + try { + request.responseType = "text"; + } catch (e) {} + if (data_) + { + if (request["setRequestHeader"] && !next_request_headers.hasOwnProperty("Content-Type")) + { + request["setRequestHeader"]("Content-Type", "application/x-www-form-urlencoded"); + } + } + if (request["setRequestHeader"]) + { + var p; + for (p in next_request_headers) + { + if (next_request_headers.hasOwnProperty(p)) + { + try { + request["setRequestHeader"](p, next_request_headers[p]); + } + catch (e) {} + } + } + next_request_headers = {}; + } + if (next_override_mime && request["overrideMimeType"]) + { + try { + request["overrideMimeType"](next_override_mime); + } + catch (e) {} + next_override_mime = ""; + } + if (data_) + request.send(data_); + else + request.send(); + } + catch (e) + { + errorFunc(); + } + }; + function Cnds() {}; + Cnds.prototype.OnComplete = function (tag) + { + return cr.equals_nocase(tag, this.curTag); + }; + Cnds.prototype.OnAnyComplete = function (tag) + { + return true; + }; + Cnds.prototype.OnError = function (tag) + { + return cr.equals_nocase(tag, this.curTag); + }; + Cnds.prototype.OnAnyError = function (tag) + { + return true; + }; + Cnds.prototype.OnProgress = function (tag) + { + return cr.equals_nocase(tag, this.curTag); + }; + pluginProto.cnds = new Cnds(); + function Acts() {}; + Acts.prototype.Request = function (tag_, url_) + { + var self = this; + if (this.runtime.isWKWebView && !this.runtime.isAbsoluteUrl(url_)) + { + this.runtime.fetchLocalFileViaCordovaAsText(url_, + function (str) + { + self.curTag = tag_; + self.lastData = str.replace(/\r\n/g, "\n"); // fix windows style line endings + self.runtime.trigger(cr.plugins_.AJAX.prototype.cnds.OnAnyComplete, self); + self.runtime.trigger(cr.plugins_.AJAX.prototype.cnds.OnComplete, self); + }, + function (err) + { + self.curTag = tag_; + self.runtime.trigger(cr.plugins_.AJAX.prototype.cnds.OnAnyError, self); + self.runtime.trigger(cr.plugins_.AJAX.prototype.cnds.OnError, self); + }); + } + else + { + this.doRequest(tag_, url_, "GET"); + } + }; + Acts.prototype.RequestFile = function (tag_, file_) + { + var self = this; + if (this.runtime.isWKWebView) + { + this.runtime.fetchLocalFileViaCordovaAsText(file_, + function (str) + { + self.curTag = tag_; + self.lastData = str.replace(/\r\n/g, "\n"); // fix windows style line endings + self.runtime.trigger(cr.plugins_.AJAX.prototype.cnds.OnAnyComplete, self); + self.runtime.trigger(cr.plugins_.AJAX.prototype.cnds.OnComplete, self); + }, + function (err) + { + self.curTag = tag_; + self.runtime.trigger(cr.plugins_.AJAX.prototype.cnds.OnAnyError, self); + self.runtime.trigger(cr.plugins_.AJAX.prototype.cnds.OnError, self); + }); + } + else + { + this.doRequest(tag_, file_, "GET"); + } + }; + Acts.prototype.Post = function (tag_, url_, data_, method_) + { + this.doRequest(tag_, url_, method_, data_); + }; + Acts.prototype.SetTimeout = function (t) + { + this.timeout = t * 1000; + }; + Acts.prototype.SetHeader = function (n, v) + { + next_request_headers[n] = v; + }; + Acts.prototype.OverrideMIMEType = function (m) + { + next_override_mime = m; + }; + pluginProto.acts = new Acts(); + function Exps() {}; + Exps.prototype.LastData = function (ret) + { + ret.set_string(this.lastData); + }; + Exps.prototype.Progress = function (ret) + { + ret.set_float(this.progress); + }; + Exps.prototype.Tag = function (ret) + { + ret.set_string(this.curTag); + }; + pluginProto.exps = new Exps(); +}()); +; +; +cr.plugins_.Arr = function(runtime) +{ + this.runtime = runtime; +}; +(function () +{ + var pluginProto = cr.plugins_.Arr.prototype; + pluginProto.Type = function(plugin) + { + this.plugin = plugin; + this.runtime = plugin.runtime; + }; + var typeProto = pluginProto.Type.prototype; + typeProto.onCreate = function() + { + }; + pluginProto.Instance = function(type) + { + this.type = type; + this.runtime = type.runtime; + }; + var instanceProto = pluginProto.Instance.prototype; + var arrCache = []; + function allocArray() + { + if (arrCache.length) + return arrCache.pop(); + else + return []; + }; + if (!Array.isArray) + { + Array.isArray = function (vArg) { + return Object.prototype.toString.call(vArg) === "[object Array]"; + }; + } + function freeArray(a) + { + var i, len; + for (i = 0, len = a.length; i < len; i++) + { + if (Array.isArray(a[i])) + freeArray(a[i]); + } + cr.clearArray(a); + arrCache.push(a); + }; + instanceProto.onCreate = function() + { + this.cx = this.properties[0]; + this.cy = this.properties[1]; + this.cz = this.properties[2]; + if (!this.recycled) + this.arr = allocArray(); + var a = this.arr; + a.length = this.cx; + var x, y, z; + for (x = 0; x < this.cx; x++) + { + if (!a[x]) + a[x] = allocArray(); + a[x].length = this.cy; + for (y = 0; y < this.cy; y++) + { + if (!a[x][y]) + a[x][y] = allocArray(); + a[x][y].length = this.cz; + for (z = 0; z < this.cz; z++) + a[x][y][z] = 0; + } + } + this.forX = []; + this.forY = []; + this.forZ = []; + this.forDepth = -1; + }; + instanceProto.onDestroy = function () + { + var x; + for (x = 0; x < this.cx; x++) + freeArray(this.arr[x]); // will recurse down and recycle other arrays + cr.clearArray(this.arr); + }; + instanceProto.at = function (x, y, z) + { + x = Math.floor(x); + y = Math.floor(y); + z = Math.floor(z); + if (isNaN(x) || x < 0 || x > this.cx - 1) + return 0; + if (isNaN(y) || y < 0 || y > this.cy - 1) + return 0; + if (isNaN(z) || z < 0 || z > this.cz - 1) + return 0; + return this.arr[x][y][z]; + }; + instanceProto.set = function (x, y, z, val) + { + x = Math.floor(x); + y = Math.floor(y); + z = Math.floor(z); + if (isNaN(x) || x < 0 || x > this.cx - 1) + return; + if (isNaN(y) || y < 0 || y > this.cy - 1) + return; + if (isNaN(z) || z < 0 || z > this.cz - 1) + return; + this.arr[x][y][z] = val; + }; + instanceProto.getAsJSON = function () + { + return JSON.stringify({ + "c2array": true, + "size": [this.cx, this.cy, this.cz], + "data": this.arr + }); + }; + instanceProto.saveToJSON = function () + { + return { + "size": [this.cx, this.cy, this.cz], + "data": this.arr + }; + }; + instanceProto.loadFromJSON = function (o) + { + var sz = o["size"]; + this.cx = sz[0]; + this.cy = sz[1]; + this.cz = sz[2]; + this.arr = o["data"]; + }; + instanceProto.setSize = function (w, h, d) + { + if (w < 0) w = 0; + if (h < 0) h = 0; + if (d < 0) d = 0; + if (this.cx === w && this.cy === h && this.cz === d) + return; // no change + this.cx = w; + this.cy = h; + this.cz = d; + var x, y, z; + var a = this.arr; + a.length = w; + for (x = 0; x < this.cx; x++) + { + if (cr.is_undefined(a[x])) + a[x] = allocArray(); + a[x].length = h; + for (y = 0; y < this.cy; y++) + { + if (cr.is_undefined(a[x][y])) + a[x][y] = allocArray(); + a[x][y].length = d; + for (z = 0; z < this.cz; z++) + { + if (cr.is_undefined(a[x][y][z])) + a[x][y][z] = 0; + } + } + } + }; + instanceProto.getForX = function () + { + if (this.forDepth >= 0 && this.forDepth < this.forX.length) + return this.forX[this.forDepth]; + else + return 0; + }; + instanceProto.getForY = function () + { + if (this.forDepth >= 0 && this.forDepth < this.forY.length) + return this.forY[this.forDepth]; + else + return 0; + }; + instanceProto.getForZ = function () + { + if (this.forDepth >= 0 && this.forDepth < this.forZ.length) + return this.forZ[this.forDepth]; + else + return 0; + }; + function Cnds() {}; + Cnds.prototype.CompareX = function (x, cmp, val) + { + return cr.do_cmp(this.at(x, 0, 0), cmp, val); + }; + Cnds.prototype.CompareXY = function (x, y, cmp, val) + { + return cr.do_cmp(this.at(x, y, 0), cmp, val); + }; + Cnds.prototype.CompareXYZ = function (x, y, z, cmp, val) + { + return cr.do_cmp(this.at(x, y, z), cmp, val); + }; + instanceProto.doForEachTrigger = function (current_event) + { + this.runtime.pushCopySol(current_event.solModifiers); + current_event.retrigger(); + this.runtime.popSol(current_event.solModifiers); + }; + Cnds.prototype.ArrForEach = function (dims) + { + var current_event = this.runtime.getCurrentEventStack().current_event; + this.forDepth++; + var forDepth = this.forDepth; + if (forDepth === this.forX.length) + { + this.forX.push(0); + this.forY.push(0); + this.forZ.push(0); + } + else + { + this.forX[forDepth] = 0; + this.forY[forDepth] = 0; + this.forZ[forDepth] = 0; + } + switch (dims) { + case 0: + for (this.forX[forDepth] = 0; this.forX[forDepth] < this.cx; this.forX[forDepth]++) + { + for (this.forY[forDepth] = 0; this.forY[forDepth] < this.cy; this.forY[forDepth]++) + { + for (this.forZ[forDepth] = 0; this.forZ[forDepth] < this.cz; this.forZ[forDepth]++) + { + this.doForEachTrigger(current_event); + } + } + } + break; + case 1: + for (this.forX[forDepth] = 0; this.forX[forDepth] < this.cx; this.forX[forDepth]++) + { + for (this.forY[forDepth] = 0; this.forY[forDepth] < this.cy; this.forY[forDepth]++) + { + this.doForEachTrigger(current_event); + } + } + break; + case 2: + for (this.forX[forDepth] = 0; this.forX[forDepth] < this.cx; this.forX[forDepth]++) + { + this.doForEachTrigger(current_event); + } + break; + } + this.forDepth--; + return false; + }; + Cnds.prototype.CompareCurrent = function (cmp, val) + { + return cr.do_cmp(this.at(this.getForX(), this.getForY(), this.getForZ()), cmp, val); + }; + Cnds.prototype.Contains = function(val) + { + var x, y, z; + for (x = 0; x < this.cx; x++) + { + for (y = 0; y < this.cy; y++) + { + for (z = 0; z < this.cz; z++) + { + if (this.arr[x][y][z] === val) + return true; + } + } + } + return false; + }; + Cnds.prototype.IsEmpty = function () + { + return this.cx === 0 || this.cy === 0 || this.cz === 0; + }; + Cnds.prototype.CompareSize = function (axis, cmp, value) + { + var s = 0; + switch (axis) { + case 0: + s = this.cx; + break; + case 1: + s = this.cy; + break; + case 2: + s = this.cz; + break; + } + return cr.do_cmp(s, cmp, value); + }; + pluginProto.cnds = new Cnds(); + function Acts() {}; + Acts.prototype.Clear = function () + { + var x, y, z; + for (x = 0; x < this.cx; x++) + for (y = 0; y < this.cy; y++) + for (z = 0; z < this.cz; z++) + this.arr[x][y][z] = 0; + }; + Acts.prototype.SetSize = function (w, h, d) + { + this.setSize(w, h, d); + }; + Acts.prototype.SetX = function (x, val) + { + this.set(x, 0, 0, val); + }; + Acts.prototype.SetXY = function (x, y, val) + { + this.set(x, y, 0, val); + }; + Acts.prototype.SetXYZ = function (x, y, z, val) + { + this.set(x, y, z, val); + }; + Acts.prototype.Push = function (where, value, axis) + { + var x = 0, y = 0, z = 0; + var a = this.arr; + switch (axis) { + case 0: // X axis + if (where === 0) // back + { + x = a.length; + a.push(allocArray()); + } + else // front + { + x = 0; + a.unshift(allocArray()); + } + a[x].length = this.cy; + for ( ; y < this.cy; y++) + { + a[x][y] = allocArray(); + a[x][y].length = this.cz; + for (z = 0; z < this.cz; z++) + a[x][y][z] = value; + } + this.cx++; + break; + case 1: // Y axis + for ( ; x < this.cx; x++) + { + if (where === 0) // back + { + y = a[x].length; + a[x].push(allocArray()); + } + else // front + { + y = 0; + a[x].unshift(allocArray()); + } + a[x][y].length = this.cz; + for (z = 0; z < this.cz; z++) + a[x][y][z] = value; + } + this.cy++; + break; + case 2: // Z axis + for ( ; x < this.cx; x++) + { + for (y = 0; y < this.cy; y++) + { + if (where === 0) // back + { + a[x][y].push(value); + } + else // front + { + a[x][y].unshift(value); + } + } + } + this.cz++; + break; + } + }; + Acts.prototype.Pop = function (where, axis) + { + var x = 0, y = 0, z = 0; + var a = this.arr; + switch (axis) { + case 0: // X axis + if (this.cx === 0) + break; + if (where === 0) // back + { + freeArray(a.pop()); + } + else // front + { + freeArray(a.shift()); + } + this.cx--; + break; + case 1: // Y axis + if (this.cy === 0) + break; + for ( ; x < this.cx; x++) + { + if (where === 0) // back + { + freeArray(a[x].pop()); + } + else // front + { + freeArray(a[x].shift()); + } + } + this.cy--; + break; + case 2: // Z axis + if (this.cz === 0) + break; + for ( ; x < this.cx; x++) + { + for (y = 0; y < this.cy; y++) + { + if (where === 0) // back + { + a[x][y].pop(); + } + else // front + { + a[x][y].shift(); + } + } + } + this.cz--; + break; + } + }; + Acts.prototype.Reverse = function (axis) + { + var x = 0, y = 0, z = 0; + var a = this.arr; + if (this.cx === 0 || this.cy === 0 || this.cz === 0) + return; // no point reversing empty array + switch (axis) { + case 0: // X axis + a.reverse(); + break; + case 1: // Y axis + for ( ; x < this.cx; x++) + a[x].reverse(); + break; + case 2: // Z axis + for ( ; x < this.cx; x++) + for (y = 0; y < this.cy; y++) + a[x][y].reverse(); + break; + } + }; + function compareValues(va, vb) + { + if (cr.is_number(va) && cr.is_number(vb)) + return va - vb; + else + { + var sa = "" + va; + var sb = "" + vb; + if (sa < sb) + return -1; + else if (sa > sb) + return 1; + else + return 0; + } + } + Acts.prototype.Sort = function (axis) + { + var x = 0, y = 0, z = 0; + var a = this.arr; + if (this.cx === 0 || this.cy === 0 || this.cz === 0) + return; // no point sorting empty array + switch (axis) { + case 0: // X axis + a.sort(function (a, b) { + return compareValues(a[0][0], b[0][0]); + }); + break; + case 1: // Y axis + for ( ; x < this.cx; x++) + { + a[x].sort(function (a, b) { + return compareValues(a[0], b[0]); + }); + } + break; + case 2: // Z axis + for ( ; x < this.cx; x++) + { + for (y = 0; y < this.cy; y++) + { + a[x][y].sort(compareValues); + } + } + break; + } + }; + Acts.prototype.Delete = function (index, axis) + { + var x = 0, y = 0, z = 0; + index = Math.floor(index); + var a = this.arr; + if (index < 0) + return; + switch (axis) { + case 0: // X axis + if (index >= this.cx) + break; + freeArray(a[index]); + a.splice(index, 1); + this.cx--; + break; + case 1: // Y axis + if (index >= this.cy) + break; + for ( ; x < this.cx; x++) + { + freeArray(a[x][index]); + a[x].splice(index, 1); + } + this.cy--; + break; + case 2: // Z axis + if (index >= this.cz) + break; + for ( ; x < this.cx; x++) + { + for (y = 0; y < this.cy; y++) + { + a[x][y].splice(index, 1); + } + } + this.cz--; + break; + } + }; + Acts.prototype.Insert = function (value, index, axis) + { + var x = 0, y = 0, z = 0; + index = Math.floor(index); + var a = this.arr; + if (index < 0) + return; + switch (axis) { + case 0: // X axis + if (index > this.cx) + return; + x = index; + a.splice(x, 0, allocArray()); + a[x].length = this.cy; + for ( ; y < this.cy; y++) + { + a[x][y] = allocArray(); + a[x][y].length = this.cz; + for (z = 0; z < this.cz; z++) + a[x][y][z] = value; + } + this.cx++; + break; + case 1: // Y axis + if (index > this.cy) + return; + for ( ; x < this.cx; x++) + { + y = index; + a[x].splice(y, 0, allocArray()); + a[x][y].length = this.cz; + for (z = 0; z < this.cz; z++) + a[x][y][z] = value; + } + this.cy++; + break; + case 2: // Z axis + if (index > this.cz) + return; + for ( ; x < this.cx; x++) + { + for (y = 0; y < this.cy; y++) + { + a[x][y].splice(index, 0, value); + } + } + this.cz++; + break; + } + }; + Acts.prototype.JSONLoad = function (json_) + { + var o; + try { + o = JSON.parse(json_); + } + catch(e) { return; } + if (!o["c2array"]) // presumably not a c2array object + return; + var sz = o["size"]; + this.cx = sz[0]; + this.cy = sz[1]; + this.cz = sz[2]; + this.arr = o["data"]; + }; + Acts.prototype.JSONDownload = function (filename) + { + var a = document.createElement("a"); + if (typeof a.download === "undefined") + { + var str = 'data:text/html,' + encodeURIComponent("

Download link

"); + window.open(str); + } + else + { + var body = document.getElementsByTagName("body")[0]; + a.textContent = filename; + a.href = "data:application/json," + encodeURIComponent(this.getAsJSON()); + a.download = filename; + body.appendChild(a); + var clickEvent = document.createEvent("MouseEvent"); + clickEvent.initMouseEvent("click", true, true, window, 0, 0, 0, 0, 0, false, false, false, false, 0, null); + a.dispatchEvent(clickEvent); + body.removeChild(a); + } + }; + pluginProto.acts = new Acts(); + function Exps() {}; + Exps.prototype.At = function (ret, x, y_, z_) + { + var y = y_ || 0; + var z = z_ || 0; + ret.set_any(this.at(x, y, z)); + }; + Exps.prototype.Width = function (ret) + { + ret.set_int(this.cx); + }; + Exps.prototype.Height = function (ret) + { + ret.set_int(this.cy); + }; + Exps.prototype.Depth = function (ret) + { + ret.set_int(this.cz); + }; + Exps.prototype.CurX = function (ret) + { + ret.set_int(this.getForX()); + }; + Exps.prototype.CurY = function (ret) + { + ret.set_int(this.getForY()); + }; + Exps.prototype.CurZ = function (ret) + { + ret.set_int(this.getForZ()); + }; + Exps.prototype.CurValue = function (ret) + { + ret.set_any(this.at(this.getForX(), this.getForY(), this.getForZ())); + }; + Exps.prototype.Front = function (ret) + { + ret.set_any(this.at(0, 0, 0)); + }; + Exps.prototype.Back = function (ret) + { + ret.set_any(this.at(this.cx - 1, 0, 0)); + }; + Exps.prototype.IndexOf = function (ret, v) + { + for (var i = 0; i < this.cx; i++) + { + if (this.arr[i][0][0] === v) + { + ret.set_int(i); + return; + } + } + ret.set_int(-1); + }; + Exps.prototype.LastIndexOf = function (ret, v) + { + for (var i = this.cx - 1; i >= 0; i--) + { + if (this.arr[i][0][0] === v) + { + ret.set_int(i); + return; + } + } + ret.set_int(-1); + }; + Exps.prototype.AsJSON = function (ret) + { + ret.set_string(this.getAsJSON()); + }; + pluginProto.exps = new Exps(); +}()); +; +; +cr.plugins_.Audio = function (runtime) { + this.runtime = runtime; +}; +(function () { + var pluginProto = cr.plugins_.Audio.prototype; + pluginProto.Type = function (plugin) { + this.plugin = plugin; + this.runtime = plugin.runtime; + }; + var typeProto = pluginProto.Type.prototype; + typeProto.onCreate = function () {}; + var audRuntime = null; + var audInst = null; + var audTag = ""; + var appPath = ""; // for Cordova only + var API_HTML5 = 0; + var API_WEBAUDIO = 1; + var API_CORDOVA = 2; + var API_APPMOBI = 3; + var api = API_HTML5; + var context = null; + var audioBuffers = []; // cache of buffers + var audioInstances = []; // cache of instances + var lastAudio = null; + var useOgg = false; // determined at create time + var timescale_mode = 0; + var silent = false; + var masterVolume = 1; + var listenerX = 0; + var listenerY = 0; + var isContextSuspended = false; + var panningModel = 1; // HRTF + var distanceModel = 1; // Inverse + var refDistance = 10; + var maxDistance = 10000; + var rolloffFactor = 1; + var micSource = null; + var micTag = ""; + var useNextTouchWorkaround = false; // heuristic in case play() does not return a promise and we have to guess if the play was blocked + var playOnNextInput = []; // C2AudioInstances with HTMLAudioElements to play on next input event + var playMusicAsSoundWorkaround = false; // play music tracks with Web Audio API + var hasPlayedDummyBuffer = false; // dummy buffer played to unblock AudioContext on some platforms + function addAudioToPlayOnNextInput(a) { + var i = playOnNextInput.indexOf(a); + if (i === -1) playOnNextInput.push(a); + } + function tryPlayAudioElement(a) { + var audioElem = a.instanceObject; + var playRet; + try { + playRet = audioElem.play(); + } catch (err) { + addAudioToPlayOnNextInput(a); + return; + } + if (playRet) { + playRet.catch(function (err) { + addAudioToPlayOnNextInput(a); + }); + } + else if (useNextTouchWorkaround && !audRuntime.isInUserInputEvent) { + addAudioToPlayOnNextInput(a); + } + } + function playQueuedAudio() { + var i, len, m, playRet; + if (!hasPlayedDummyBuffer && !isContextSuspended && context) { + playDummyBuffer(); + if (context["state"] === "running") hasPlayedDummyBuffer = true; + } + var tryPlay = playOnNextInput.slice(0); + cr.clearArray(playOnNextInput); + if (!silent) { + for (i = 0, len = tryPlay.length; i < len; ++i) { + m = tryPlay[i]; + if (!m.stopped && !m.is_paused) { + playRet = m.instanceObject.play(); + if (playRet) { + playRet.catch(function (err) { + addAudioToPlayOnNextInput(m); + }); + } + } + } + } + } + function playDummyBuffer() { + if (context["state"] === "suspended" && context["resume"]) + context["resume"](); + if (!context["createBuffer"]) return; + var buffer = context["createBuffer"](1, 220, 22050); + var source = context["createBufferSource"](); + source["buffer"] = buffer; + source["connect"](context["destination"]); + startSource(source); + } + document.addEventListener("pointerup", playQueuedAudio, true); + document.addEventListener("touchend", playQueuedAudio, true); + document.addEventListener("click", playQueuedAudio, true); + document.addEventListener("keydown", playQueuedAudio, true); + document.addEventListener("gamepadconnected", playQueuedAudio, true); + function dbToLinear(x) { + var v = dbToLinear_nocap(x); + if (!isFinite(v)) + v = 0; + if (v < 0) v = 0; + if (v > 1) v = 1; + return v; + } + function linearToDb(x) { + if (x < 0) x = 0; + if (x > 1) x = 1; + return linearToDb_nocap(x); + } + function dbToLinear_nocap(x) { + return Math.pow(10, x / 20); + } + function linearToDb_nocap(x) { + return (Math.log(x) / Math.log(10)) * 20; + } + var effects = {}; + function getDestinationForTag(tag) { + tag = tag.toLowerCase(); + if (effects.hasOwnProperty(tag)) { + if (effects[tag].length) return effects[tag][0].getInputNode(); + } + return context["destination"]; + } + function createGain() { + if (context["createGain"]) return context["createGain"](); + else return context["createGainNode"](); + } + function createDelay(d) { + if (context["createDelay"]) return context["createDelay"](d); + else return context["createDelayNode"](d); + } + function startSource(s, scheduledTime) { + if (s["start"]) s["start"](scheduledTime || 0); + else s["noteOn"](scheduledTime || 0); + } + function startSourceAt(s, x, d, scheduledTime) { + if (s["start"]) s["start"](scheduledTime || 0, x); + else s["noteGrainOn"](scheduledTime || 0, x, d - x); + } + function stopSource(s) { + try { + if (s["stop"]) s["stop"](0); + else s["noteOff"](0); + } catch (e) {} + } + function setAudioParam(ap, value, ramp, time) { + if (!ap) return; // iOS is missing some parameters + ap["cancelScheduledValues"](0); + if (time === 0) { + ap["value"] = value; + return; + } + var curTime = context["currentTime"]; + time += curTime; + switch (ramp) { + case 0: // step + ap["setValueAtTime"](value, time); + break; + case 1: // linear + ap["setValueAtTime"](ap["value"], curTime); // to set what to ramp from + ap["linearRampToValueAtTime"](value, time); + break; + case 2: // exponential + ap["setValueAtTime"](ap["value"], curTime); // to set what to ramp from + ap["exponentialRampToValueAtTime"](value, time); + break; + } + } + var filterTypes = [ + "lowpass", + "highpass", + "bandpass", + "lowshelf", + "highshelf", + "peaking", + "notch", + "allpass", + ]; + function FilterEffect(type, freq, detune, q, gain, mix) { + this.type = "filter"; + this.params = [type, freq, detune, q, gain, mix]; + this.inputNode = createGain(); + this.wetNode = createGain(); + this.wetNode["gain"]["value"] = mix; + this.dryNode = createGain(); + this.dryNode["gain"]["value"] = 1 - mix; + this.filterNode = context["createBiquadFilter"](); + if (typeof this.filterNode["type"] === "number") + this.filterNode["type"] = type; + else this.filterNode["type"] = filterTypes[type]; + this.filterNode["frequency"]["value"] = freq; + if (this.filterNode["detune"]) + this.filterNode["detune"]["value"] = detune; + this.filterNode["Q"]["value"] = q; + this.filterNode["gain"]["value"] = gain; + this.inputNode["connect"](this.filterNode); + this.inputNode["connect"](this.dryNode); + this.filterNode["connect"](this.wetNode); + } + FilterEffect.prototype.connectTo = function (node) { + this.wetNode["disconnect"](); + this.wetNode["connect"](node); + this.dryNode["disconnect"](); + this.dryNode["connect"](node); + }; + FilterEffect.prototype.remove = function () { + this.inputNode["disconnect"](); + this.filterNode["disconnect"](); + this.wetNode["disconnect"](); + this.dryNode["disconnect"](); + }; + FilterEffect.prototype.getInputNode = function () { + return this.inputNode; + }; + FilterEffect.prototype.setParam = function (param, value, ramp, time) { + switch (param) { + case 0: // mix + value = value / 100; + if (value < 0) value = 0; + if (value > 1) value = 1; + this.params[5] = value; + setAudioParam(this.wetNode["gain"], value, ramp, time); + setAudioParam(this.dryNode["gain"], 1 - value, ramp, time); + break; + case 1: // filter frequency + this.params[1] = value; + setAudioParam(this.filterNode["frequency"], value, ramp, time); + break; + case 2: // filter detune + this.params[2] = value; + setAudioParam(this.filterNode["detune"], value, ramp, time); + break; + case 3: // filter Q + this.params[3] = value; + setAudioParam(this.filterNode["Q"], value, ramp, time); + break; + case 4: // filter/delay gain (note value is in dB here) + this.params[4] = value; + setAudioParam(this.filterNode["gain"], value, ramp, time); + break; + } + }; + function DelayEffect(delayTime, delayGain, mix) { + this.type = "delay"; + this.params = [delayTime, delayGain, mix]; + this.inputNode = createGain(); + this.wetNode = createGain(); + this.wetNode["gain"]["value"] = mix; + this.dryNode = createGain(); + this.dryNode["gain"]["value"] = 1 - mix; + this.mainNode = createGain(); + this.delayNode = createDelay(delayTime); + this.delayNode["delayTime"]["value"] = delayTime; + this.delayGainNode = createGain(); + this.delayGainNode["gain"]["value"] = delayGain; + this.inputNode["connect"](this.mainNode); + this.inputNode["connect"](this.dryNode); + this.mainNode["connect"](this.wetNode); + this.mainNode["connect"](this.delayNode); + this.delayNode["connect"](this.delayGainNode); + this.delayGainNode["connect"](this.mainNode); + } + DelayEffect.prototype.connectTo = function (node) { + this.wetNode["disconnect"](); + this.wetNode["connect"](node); + this.dryNode["disconnect"](); + this.dryNode["connect"](node); + }; + DelayEffect.prototype.remove = function () { + this.inputNode["disconnect"](); + this.mainNode["disconnect"](); + this.delayNode["disconnect"](); + this.delayGainNode["disconnect"](); + this.wetNode["disconnect"](); + this.dryNode["disconnect"](); + }; + DelayEffect.prototype.getInputNode = function () { + return this.inputNode; + }; + DelayEffect.prototype.setParam = function (param, value, ramp, time) { + switch (param) { + case 0: // mix + value = value / 100; + if (value < 0) value = 0; + if (value > 1) value = 1; + this.params[2] = value; + setAudioParam(this.wetNode["gain"], value, ramp, time); + setAudioParam(this.dryNode["gain"], 1 - value, ramp, time); + break; + case 4: // filter/delay gain (note value is passed in dB but needs to be linear here) + this.params[1] = dbToLinear(value); + setAudioParam( + this.delayGainNode["gain"], + dbToLinear(value), + ramp, + time + ); + break; + case 5: // delay time + this.params[0] = value; + setAudioParam(this.delayNode["delayTime"], value, ramp, time); + break; + } + }; + function ConvolveEffect(buffer, normalize, mix, src) { + this.type = "convolve"; + this.params = [normalize, mix, src]; + this.inputNode = createGain(); + this.wetNode = createGain(); + this.wetNode["gain"]["value"] = mix; + this.dryNode = createGain(); + this.dryNode["gain"]["value"] = 1 - mix; + this.convolveNode = context["createConvolver"](); + if (buffer) { + this.convolveNode["normalize"] = normalize; + this.convolveNode["buffer"] = buffer; + } + this.inputNode["connect"](this.convolveNode); + this.inputNode["connect"](this.dryNode); + this.convolveNode["connect"](this.wetNode); + } + ConvolveEffect.prototype.connectTo = function (node) { + this.wetNode["disconnect"](); + this.wetNode["connect"](node); + this.dryNode["disconnect"](); + this.dryNode["connect"](node); + }; + ConvolveEffect.prototype.remove = function () { + this.inputNode["disconnect"](); + this.convolveNode["disconnect"](); + this.wetNode["disconnect"](); + this.dryNode["disconnect"](); + }; + ConvolveEffect.prototype.getInputNode = function () { + return this.inputNode; + }; + ConvolveEffect.prototype.setParam = function (param, value, ramp, time) { + switch (param) { + case 0: // mix + value = value / 100; + if (value < 0) value = 0; + if (value > 1) value = 1; + this.params[1] = value; + setAudioParam(this.wetNode["gain"], value, ramp, time); + setAudioParam(this.dryNode["gain"], 1 - value, ramp, time); + break; + } + }; + function FlangerEffect(delay, modulation, freq, feedback, mix) { + this.type = "flanger"; + this.params = [delay, modulation, freq, feedback, mix]; + this.inputNode = createGain(); + this.dryNode = createGain(); + this.dryNode["gain"]["value"] = 1 - mix / 2; + this.wetNode = createGain(); + this.wetNode["gain"]["value"] = mix / 2; + this.feedbackNode = createGain(); + this.feedbackNode["gain"]["value"] = feedback; + this.delayNode = createDelay(delay + modulation); + this.delayNode["delayTime"]["value"] = delay; + this.oscNode = context["createOscillator"](); + this.oscNode["frequency"]["value"] = freq; + this.oscGainNode = createGain(); + this.oscGainNode["gain"]["value"] = modulation; + this.inputNode["connect"](this.delayNode); + this.inputNode["connect"](this.dryNode); + this.delayNode["connect"](this.wetNode); + this.delayNode["connect"](this.feedbackNode); + this.feedbackNode["connect"](this.delayNode); + this.oscNode["connect"](this.oscGainNode); + this.oscGainNode["connect"](this.delayNode["delayTime"]); + startSource(this.oscNode); + } + FlangerEffect.prototype.connectTo = function (node) { + this.dryNode["disconnect"](); + this.dryNode["connect"](node); + this.wetNode["disconnect"](); + this.wetNode["connect"](node); + }; + FlangerEffect.prototype.remove = function () { + this.inputNode["disconnect"](); + this.delayNode["disconnect"](); + this.oscNode["disconnect"](); + this.oscGainNode["disconnect"](); + this.dryNode["disconnect"](); + this.wetNode["disconnect"](); + this.feedbackNode["disconnect"](); + }; + FlangerEffect.prototype.getInputNode = function () { + return this.inputNode; + }; + FlangerEffect.prototype.setParam = function (param, value, ramp, time) { + switch (param) { + case 0: // mix + value = value / 100; + if (value < 0) value = 0; + if (value > 1) value = 1; + this.params[4] = value; + setAudioParam(this.wetNode["gain"], value / 2, ramp, time); + setAudioParam(this.dryNode["gain"], 1 - value / 2, ramp, time); + break; + case 6: // modulation + this.params[1] = value / 1000; + setAudioParam(this.oscGainNode["gain"], value / 1000, ramp, time); + break; + case 7: // modulation frequency + this.params[2] = value; + setAudioParam(this.oscNode["frequency"], value, ramp, time); + break; + case 8: // feedback + this.params[3] = value / 100; + setAudioParam(this.feedbackNode["gain"], value / 100, ramp, time); + break; + } + }; + function PhaserEffect(freq, detune, q, modulation, modfreq, mix) { + this.type = "phaser"; + this.params = [freq, detune, q, modulation, modfreq, mix]; + this.inputNode = createGain(); + this.dryNode = createGain(); + this.dryNode["gain"]["value"] = 1 - mix / 2; + this.wetNode = createGain(); + this.wetNode["gain"]["value"] = mix / 2; + this.filterNode = context["createBiquadFilter"](); + if (typeof this.filterNode["type"] === "number") + this.filterNode["type"] = 7; + else this.filterNode["type"] = "allpass"; + this.filterNode["frequency"]["value"] = freq; + if (this.filterNode["detune"]) + this.filterNode["detune"]["value"] = detune; + this.filterNode["Q"]["value"] = q; + this.oscNode = context["createOscillator"](); + this.oscNode["frequency"]["value"] = modfreq; + this.oscGainNode = createGain(); + this.oscGainNode["gain"]["value"] = modulation; + this.inputNode["connect"](this.filterNode); + this.inputNode["connect"](this.dryNode); + this.filterNode["connect"](this.wetNode); + this.oscNode["connect"](this.oscGainNode); + this.oscGainNode["connect"](this.filterNode["frequency"]); + startSource(this.oscNode); + } + PhaserEffect.prototype.connectTo = function (node) { + this.dryNode["disconnect"](); + this.dryNode["connect"](node); + this.wetNode["disconnect"](); + this.wetNode["connect"](node); + }; + PhaserEffect.prototype.remove = function () { + this.inputNode["disconnect"](); + this.filterNode["disconnect"](); + this.oscNode["disconnect"](); + this.oscGainNode["disconnect"](); + this.dryNode["disconnect"](); + this.wetNode["disconnect"](); + }; + PhaserEffect.prototype.getInputNode = function () { + return this.inputNode; + }; + PhaserEffect.prototype.setParam = function (param, value, ramp, time) { + switch (param) { + case 0: // mix + value = value / 100; + if (value < 0) value = 0; + if (value > 1) value = 1; + this.params[5] = value; + setAudioParam(this.wetNode["gain"], value / 2, ramp, time); + setAudioParam(this.dryNode["gain"], 1 - value / 2, ramp, time); + break; + case 1: // filter frequency + this.params[0] = value; + setAudioParam(this.filterNode["frequency"], value, ramp, time); + break; + case 2: // filter detune + this.params[1] = value; + setAudioParam(this.filterNode["detune"], value, ramp, time); + break; + case 3: // filter Q + this.params[2] = value; + setAudioParam(this.filterNode["Q"], value, ramp, time); + break; + case 6: // modulation + this.params[3] = value; + setAudioParam(this.oscGainNode["gain"], value, ramp, time); + break; + case 7: // modulation frequency + this.params[4] = value; + setAudioParam(this.oscNode["frequency"], value, ramp, time); + break; + } + }; + function GainEffect(g) { + this.type = "gain"; + this.params = [g]; + this.node = createGain(); + this.node["gain"]["value"] = g; + } + GainEffect.prototype.connectTo = function (node_) { + this.node["disconnect"](); + this.node["connect"](node_); + }; + GainEffect.prototype.remove = function () { + this.node["disconnect"](); + }; + GainEffect.prototype.getInputNode = function () { + return this.node; + }; + GainEffect.prototype.setParam = function (param, value, ramp, time) { + switch (param) { + case 4: // gain + this.params[0] = dbToLinear(value); + setAudioParam(this.node["gain"], dbToLinear(value), ramp, time); + break; + } + }; + function TremoloEffect(freq, mix) { + this.type = "tremolo"; + this.params = [freq, mix]; + this.node = createGain(); + this.node["gain"]["value"] = 1 - mix / 2; + this.oscNode = context["createOscillator"](); + this.oscNode["frequency"]["value"] = freq; + this.oscGainNode = createGain(); + this.oscGainNode["gain"]["value"] = mix / 2; + this.oscNode["connect"](this.oscGainNode); + this.oscGainNode["connect"](this.node["gain"]); + startSource(this.oscNode); + } + TremoloEffect.prototype.connectTo = function (node_) { + this.node["disconnect"](); + this.node["connect"](node_); + }; + TremoloEffect.prototype.remove = function () { + this.oscNode["disconnect"](); + this.oscGainNode["disconnect"](); + this.node["disconnect"](); + }; + TremoloEffect.prototype.getInputNode = function () { + return this.node; + }; + TremoloEffect.prototype.setParam = function (param, value, ramp, time) { + switch (param) { + case 0: // mix + value = value / 100; + if (value < 0) value = 0; + if (value > 1) value = 1; + this.params[1] = value; + setAudioParam(this.node["gain"]["value"], 1 - value / 2, ramp, time); + setAudioParam(this.oscGainNode["gain"]["value"], value / 2, ramp, time); + break; + case 7: // modulation frequency + this.params[0] = value; + setAudioParam(this.oscNode["frequency"], value, ramp, time); + break; + } + }; + function RingModulatorEffect(freq, mix) { + this.type = "ringmod"; + this.params = [freq, mix]; + this.inputNode = createGain(); + this.wetNode = createGain(); + this.wetNode["gain"]["value"] = mix; + this.dryNode = createGain(); + this.dryNode["gain"]["value"] = 1 - mix; + this.ringNode = createGain(); + this.ringNode["gain"]["value"] = 0; + this.oscNode = context["createOscillator"](); + this.oscNode["frequency"]["value"] = freq; + this.oscNode["connect"](this.ringNode["gain"]); + startSource(this.oscNode); + this.inputNode["connect"](this.ringNode); + this.inputNode["connect"](this.dryNode); + this.ringNode["connect"](this.wetNode); + } + RingModulatorEffect.prototype.connectTo = function (node_) { + this.wetNode["disconnect"](); + this.wetNode["connect"](node_); + this.dryNode["disconnect"](); + this.dryNode["connect"](node_); + }; + RingModulatorEffect.prototype.remove = function () { + this.oscNode["disconnect"](); + this.ringNode["disconnect"](); + this.inputNode["disconnect"](); + this.wetNode["disconnect"](); + this.dryNode["disconnect"](); + }; + RingModulatorEffect.prototype.getInputNode = function () { + return this.inputNode; + }; + RingModulatorEffect.prototype.setParam = function (param, value, ramp, time) { + switch (param) { + case 0: // mix + value = value / 100; + if (value < 0) value = 0; + if (value > 1) value = 1; + this.params[1] = value; + setAudioParam(this.wetNode["gain"], value, ramp, time); + setAudioParam(this.dryNode["gain"], 1 - value, ramp, time); + break; + case 7: // modulation frequency + this.params[0] = value; + setAudioParam(this.oscNode["frequency"], value, ramp, time); + break; + } + }; + function DistortionEffect(threshold, headroom, drive, makeupgain, mix) { + this.type = "distortion"; + this.params = [threshold, headroom, drive, makeupgain, mix]; + this.inputNode = createGain(); + this.preGain = createGain(); + this.postGain = createGain(); + this.setDrive(drive, dbToLinear_nocap(makeupgain)); + this.wetNode = createGain(); + this.wetNode["gain"]["value"] = mix; + this.dryNode = createGain(); + this.dryNode["gain"]["value"] = 1 - mix; + this.waveShaper = context["createWaveShaper"](); + this.curve = new Float32Array(65536); + this.generateColortouchCurve(threshold, headroom); + this.waveShaper.curve = this.curve; + this.inputNode["connect"](this.preGain); + this.inputNode["connect"](this.dryNode); + this.preGain["connect"](this.waveShaper); + this.waveShaper["connect"](this.postGain); + this.postGain["connect"](this.wetNode); + } + DistortionEffect.prototype.setDrive = function (drive, makeupgain) { + if (drive < 0.01) drive = 0.01; + this.preGain["gain"]["value"] = drive; + this.postGain["gain"]["value"] = Math.pow(1 / drive, 0.6) * makeupgain; + }; + function e4(x, k) { + return 1.0 - Math.exp(-k * x); + } + DistortionEffect.prototype.shape = function ( + x, + linearThreshold, + linearHeadroom + ) { + var maximum = 1.05 * linearHeadroom * linearThreshold; + var kk = maximum - linearThreshold; + var sign = x < 0 ? -1 : +1; + var absx = x < 0 ? -x : x; + var shapedInput = + absx < linearThreshold + ? absx + : linearThreshold + kk * e4(absx - linearThreshold, 1.0 / kk); + shapedInput *= sign; + return shapedInput; + }; + DistortionEffect.prototype.generateColortouchCurve = function ( + threshold, + headroom + ) { + var linearThreshold = dbToLinear_nocap(threshold); + var linearHeadroom = dbToLinear_nocap(headroom); + var n = 65536; + var n2 = n / 2; + var x = 0; + for (var i = 0; i < n2; ++i) { + x = i / n2; + x = this.shape(x, linearThreshold, linearHeadroom); + this.curve[n2 + i] = x; + this.curve[n2 - i - 1] = -x; + } + }; + DistortionEffect.prototype.connectTo = function (node) { + this.wetNode["disconnect"](); + this.wetNode["connect"](node); + this.dryNode["disconnect"](); + this.dryNode["connect"](node); + }; + DistortionEffect.prototype.remove = function () { + this.inputNode["disconnect"](); + this.preGain["disconnect"](); + this.waveShaper["disconnect"](); + this.postGain["disconnect"](); + this.wetNode["disconnect"](); + this.dryNode["disconnect"](); + }; + DistortionEffect.prototype.getInputNode = function () { + return this.inputNode; + }; + DistortionEffect.prototype.setParam = function (param, value, ramp, time) { + switch (param) { + case 0: // mix + value = value / 100; + if (value < 0) value = 0; + if (value > 1) value = 1; + this.params[4] = value; + setAudioParam(this.wetNode["gain"], value, ramp, time); + setAudioParam(this.dryNode["gain"], 1 - value, ramp, time); + break; + } + }; + function CompressorEffect(threshold, knee, ratio, attack, release) { + this.type = "compressor"; + this.params = [threshold, knee, ratio, attack, release]; + this.node = context["createDynamicsCompressor"](); + try { + this.node["threshold"]["value"] = threshold; + this.node["knee"]["value"] = knee; + this.node["ratio"]["value"] = ratio; + this.node["attack"]["value"] = attack; + this.node["release"]["value"] = release; + } catch (e) {} + } + CompressorEffect.prototype.connectTo = function (node_) { + this.node["disconnect"](); + this.node["connect"](node_); + }; + CompressorEffect.prototype.remove = function () { + this.node["disconnect"](); + }; + CompressorEffect.prototype.getInputNode = function () { + return this.node; + }; + CompressorEffect.prototype.setParam = function (param, value, ramp, time) { + }; + function AnalyserEffect(fftSize, smoothing) { + this.type = "analyser"; + this.params = [fftSize, smoothing]; + this.node = context["createAnalyser"](); + this.node["fftSize"] = fftSize; + this.node["smoothingTimeConstant"] = smoothing; + this.freqBins = new Float32Array(this.node["frequencyBinCount"]); + this.signal = new Uint8Array(fftSize); + this.peak = 0; + this.rms = 0; + } + AnalyserEffect.prototype.tick = function () { + this.node["getFloatFrequencyData"](this.freqBins); + this.node["getByteTimeDomainData"](this.signal); + var fftSize = this.node["fftSize"]; + var i = 0; + this.peak = 0; + var rmsSquaredSum = 0; + var s = 0; + for (; i < fftSize; i++) { + s = (this.signal[i] - 128) / 128; + if (s < 0) s = -s; + if (this.peak < s) this.peak = s; + rmsSquaredSum += s * s; + } + this.peak = linearToDb(this.peak); + this.rms = linearToDb(Math.sqrt(rmsSquaredSum / fftSize)); + }; + AnalyserEffect.prototype.connectTo = function (node_) { + this.node["disconnect"](); + this.node["connect"](node_); + }; + AnalyserEffect.prototype.remove = function () { + this.node["disconnect"](); + }; + AnalyserEffect.prototype.getInputNode = function () { + return this.node; + }; + AnalyserEffect.prototype.setParam = function (param, value, ramp, time) { + }; + function ObjectTracker() { + this.obj = null; + this.loadUid = 0; + } + ObjectTracker.prototype.setObject = function (obj_) { + this.obj = obj_; + }; + ObjectTracker.prototype.hasObject = function () { + return !!this.obj; + }; + ObjectTracker.prototype.tick = function (dt) {}; + function C2AudioBuffer(src_, is_music) { + this.src = src_; + this.myapi = api; + this.is_music = is_music; + this.added_end_listener = false; + var self = this; + this.outNode = null; + this.mediaSourceNode = null; + this.panWhenReady = []; // for web audio API positioned sounds + this.seekWhenReady = 0; + this.pauseWhenReady = false; + this.supportWebAudioAPI = false; + this.failedToLoad = false; + this.wasEverReady = false; // if a buffer is ever marked as ready, it's permanently considered ready after then. + if (api === API_WEBAUDIO && is_music && !playMusicAsSoundWorkaround) { + this.myapi = API_HTML5; + this.outNode = createGain(); + } + this.bufferObject = null; // actual audio object + this.audioData = null; // web audio api: ajax request result (compressed audio that needs decoding) + var request; + switch (this.myapi) { + case API_HTML5: + this.bufferObject = new Audio(); + this.bufferObject.crossOrigin = "anonymous"; + this.bufferObject.addEventListener("canplaythrough", function () { + self.wasEverReady = true; // update loaded state so preload is considered complete + }); + if ( + api === API_WEBAUDIO && + context["createMediaElementSource"] && + !/wiiu/i.test(navigator.userAgent) + ) { + this.supportWebAudioAPI = true; // can be routed through web audio api + this.bufferObject.addEventListener("canplay", function () { + if (!self.mediaSourceNode && self.bufferObject) { + self.mediaSourceNode = context["createMediaElementSource"]( + self.bufferObject + ); + self.mediaSourceNode["connect"](self.outNode); + } + }); + } + this.bufferObject.autoplay = false; // this is only a source buffer, not an instance + this.bufferObject.preload = "auto"; + this.bufferObject.src = src_; + break; + case API_WEBAUDIO: + if (audRuntime.isWKWebView) { + audRuntime.fetchLocalFileViaCordovaAsArrayBuffer( + src_, + function (arrayBuffer) { + self.audioData = arrayBuffer; + self.decodeAudioBuffer(); + }, + function (err) { + self.failedToLoad = true; + } + ); + } else { + request = new XMLHttpRequest(); + request.open("GET", src_, true); + request.responseType = "arraybuffer"; + request.onload = function () { + self.audioData = request.response; + self.decodeAudioBuffer(); + }; + request.onerror = function () { + self.failedToLoad = true; + }; + request.send(); + } + break; + case API_CORDOVA: + this.bufferObject = true; + break; + case API_APPMOBI: + this.bufferObject = true; + break; + } + } + C2AudioBuffer.prototype.release = function () { + var i, len, j, a; + for (i = 0, j = 0, len = audioInstances.length; i < len; ++i) { + a = audioInstances[i]; + audioInstances[j] = a; + if (a.buffer === this) a.stop(); + else ++j; // keep + } + audioInstances.length = j; + if (this.mediaSourceNode) { + this.mediaSourceNode["disconnect"](); + this.mediaSourceNode = null; + } + if (this.outNode) { + this.outNode["disconnect"](); + this.outNode = null; + } + this.bufferObject = null; + this.audioData = null; + }; + C2AudioBuffer.prototype.decodeAudioBuffer = function () { + if (this.bufferObject || !this.audioData) return; // audio already decoded or AJAX request not yet complete + var self = this; + if (context["decodeAudioData"]) { + context["decodeAudioData"]( + this.audioData, + function (buffer) { + self.bufferObject = buffer; + self.audioData = null; // clear AJAX response to allow GC and save memory, only need the bufferObject now + var p, i, len, a; + if (!cr.is_undefined(self.playTagWhenReady) && !silent) { + if (self.panWhenReady.length) { + for (i = 0, len = self.panWhenReady.length; i < len; i++) { + p = self.panWhenReady[i]; + a = new C2AudioInstance(self, p.thistag); + a.setPannerEnabled(true); + if (typeof p.objUid !== "undefined") { + p.obj = audRuntime.getObjectByUID(p.objUid); + if (!p.obj) continue; + } + if (p.obj) { + var px = cr.rotatePtAround( + p.obj.x, + p.obj.y, + -p.obj.layer.getAngle(), + listenerX, + listenerY, + true + ); + var py = cr.rotatePtAround( + p.obj.x, + p.obj.y, + -p.obj.layer.getAngle(), + listenerX, + listenerY, + false + ); + a.setPan( + px, + py, + cr.to_degrees(p.obj.angle - p.obj.layer.getAngle()), + p.ia, + p.oa, + p.og + ); + a.setObject(p.obj); + } else { + a.setPan(p.x, p.y, p.a, p.ia, p.oa, p.og); + } + a.play( + self.loopWhenReady, + self.volumeWhenReady, + self.seekWhenReady + ); + if (self.pauseWhenReady) a.pause(); + audioInstances.push(a); + } + cr.clearArray(self.panWhenReady); + } else { + a = new C2AudioInstance(self, self.playTagWhenReady || ""); // sometimes playTagWhenReady is not set - TODO: why? + a.play( + self.loopWhenReady, + self.volumeWhenReady, + self.seekWhenReady + ); + if (self.pauseWhenReady) a.pause(); + audioInstances.push(a); + } + } else if (!cr.is_undefined(self.convolveWhenReady)) { + var convolveNode = self.convolveWhenReady.convolveNode; + convolveNode["normalize"] = self.normalizeWhenReady; + convolveNode["buffer"] = buffer; + } + }, + function (e) { + self.failedToLoad = true; + } + ); + } else { + this.bufferObject = context["createBuffer"](this.audioData, false); + this.audioData = null; // clear AJAX response to allow GC and save memory, only need the bufferObject now + if (!cr.is_undefined(this.playTagWhenReady) && !silent) { + var a = new C2AudioInstance(this, this.playTagWhenReady); + a.play(this.loopWhenReady, this.volumeWhenReady, this.seekWhenReady); + if (this.pauseWhenReady) a.pause(); + audioInstances.push(a); + } else if (!cr.is_undefined(this.convolveWhenReady)) { + var convolveNode = this.convolveWhenReady.convolveNode; + convolveNode["normalize"] = this.normalizeWhenReady; + convolveNode["buffer"] = this.bufferObject; + } + } + }; + C2AudioBuffer.prototype.isLoaded = function () { + switch (this.myapi) { + case API_HTML5: + var ret = this.bufferObject["readyState"] >= 4; // HAVE_ENOUGH_DATA + if (ret) this.wasEverReady = true; + return ret || this.wasEverReady; + case API_WEBAUDIO: + return !!this.audioData || !!this.bufferObject; + case API_CORDOVA: + return true; + case API_APPMOBI: + return true; + } + return false; + }; + C2AudioBuffer.prototype.isLoadedAndDecoded = function () { + switch (this.myapi) { + case API_HTML5: + return this.isLoaded(); // no distinction between loaded and decoded in HTML5 audio, just rely on ready state + case API_WEBAUDIO: + return !!this.bufferObject; + case API_CORDOVA: + return true; + case API_APPMOBI: + return true; + } + return false; + }; + C2AudioBuffer.prototype.hasFailedToLoad = function () { + switch (this.myapi) { + case API_HTML5: + return !!this.bufferObject["error"]; + case API_WEBAUDIO: + return this.failedToLoad; + } + return false; + }; + function C2AudioInstance(buffer_, tag_) { + var self = this; + this.tag = tag_; + this.fresh = true; + this.stopped = true; + this.src = buffer_.src; + this.buffer = buffer_; + this.myapi = api; + this.is_music = buffer_.is_music; + this.playbackRate = 1; + this.hasPlaybackEnded = true; // ended flag + this.resume_me = false; // make sure resumes when leaving suspend + this.is_paused = false; + this.resume_position = 0; // for web audio api to resume from correct playback position + this.looping = false; + this.is_muted = false; + this.is_silent = false; + this.volume = 1; + this.onended_handler = function (e) { + if (self.is_paused || self.resume_me) return; + var bufferThatEnded = this; + if (!bufferThatEnded) bufferThatEnded = e.target; + if (bufferThatEnded !== self.active_buffer) return; + self.hasPlaybackEnded = true; + self.stopped = true; + audTag = self.tag; + audRuntime.trigger(cr.plugins_.Audio.prototype.cnds.OnEnded, audInst); + }; + this.active_buffer = null; + this.isTimescaled = + (timescale_mode === 1 && !this.is_music) || timescale_mode === 2; + this.mutevol = 1; + this.startTime = this.isTimescaled + ? audRuntime.kahanTime.sum + : audRuntime.wallTime.sum; + this.gainNode = null; + this.pannerNode = null; + this.pannerEnabled = false; + this.objectTracker = null; + this.panX = 0; + this.panY = 0; + this.panAngle = 0; + this.panConeInner = 0; + this.panConeOuter = 0; + this.panConeOuterGain = 0; + this.instanceObject = null; + var add_end_listener = false; + if ( + this.myapi === API_WEBAUDIO && + this.buffer.myapi === API_HTML5 && + !this.buffer.supportWebAudioAPI + ) + this.myapi = API_HTML5; + switch (this.myapi) { + case API_HTML5: + if (this.is_music) { + this.instanceObject = buffer_.bufferObject; + add_end_listener = !buffer_.added_end_listener; + buffer_.added_end_listener = true; + } else { + this.instanceObject = new Audio(); + this.instanceObject.crossOrigin = "anonymous"; + this.instanceObject.autoplay = false; + this.instanceObject.src = buffer_.bufferObject.src; + add_end_listener = true; + } + if (add_end_listener) { + this.instanceObject.addEventListener("ended", function () { + audTag = self.tag; + self.stopped = true; + audRuntime.trigger( + cr.plugins_.Audio.prototype.cnds.OnEnded, + audInst + ); + }); + } + break; + case API_WEBAUDIO: + this.gainNode = createGain(); + this.gainNode["connect"](getDestinationForTag(tag_)); + if (this.buffer.myapi === API_WEBAUDIO) { + if (buffer_.bufferObject) { + this.instanceObject = context["createBufferSource"](); + this.instanceObject["buffer"] = buffer_.bufferObject; + this.instanceObject["connect"](this.gainNode); + } + } + else { + this.instanceObject = this.buffer.bufferObject; // reference the audio element + this.buffer.outNode["connect"](this.gainNode); + if (!this.buffer.added_end_listener) { + this.buffer.added_end_listener = true; + this.buffer.bufferObject.addEventListener("ended", function () { + audTag = self.tag; + self.stopped = true; + audRuntime.trigger( + cr.plugins_.Audio.prototype.cnds.OnEnded, + audInst + ); + }); + } + } + break; + case API_CORDOVA: + this.instanceObject = new window["Media"]( + appPath + this.src, + null, + null, + function (status) { + if (status === window["Media"]["MEDIA_STOPPED"]) { + self.hasPlaybackEnded = true; + self.stopped = true; + audTag = self.tag; + audRuntime.trigger( + cr.plugins_.Audio.prototype.cnds.OnEnded, + audInst + ); + } + } + ); + break; + case API_APPMOBI: + this.instanceObject = true; + break; + } + } + C2AudioInstance.prototype.hasEnded = function () { + var time; + switch (this.myapi) { + case API_HTML5: + return this.instanceObject.ended; + case API_WEBAUDIO: + if (this.buffer.myapi === API_WEBAUDIO) { + if (!this.fresh && !this.stopped && this.instanceObject["loop"]) + return false; + if (this.is_paused) return false; + return this.hasPlaybackEnded; + } else return this.instanceObject.ended; + case API_CORDOVA: + return this.hasPlaybackEnded; + case API_APPMOBI: + true; // recycling an AppMobi sound does not matter because it will just do another throwaway playSound + } + return true; + }; + C2AudioInstance.prototype.canBeRecycled = function () { + if (this.fresh || this.stopped) return true; // not yet used or is not playing + return this.hasEnded(); + }; + C2AudioInstance.prototype.setPannerEnabled = function (enable_) { + if (api !== API_WEBAUDIO) return; + if (!this.pannerEnabled && enable_) { + if (!this.gainNode) return; + if (!this.pannerNode) { + this.pannerNode = context["createPanner"](); + if (typeof this.pannerNode["panningModel"] === "number") + this.pannerNode["panningModel"] = panningModel; + else + this.pannerNode["panningModel"] = [ + "equalpower", + "HRTF", + "soundfield", + ][panningModel]; + if (typeof this.pannerNode["distanceModel"] === "number") + this.pannerNode["distanceModel"] = distanceModel; + else + this.pannerNode["distanceModel"] = [ + "linear", + "inverse", + "exponential", + ][distanceModel]; + this.pannerNode["refDistance"] = refDistance; + this.pannerNode["maxDistance"] = maxDistance; + this.pannerNode["rolloffFactor"] = rolloffFactor; + } + this.gainNode["disconnect"](); + this.gainNode["connect"](this.pannerNode); + this.pannerNode["connect"](getDestinationForTag(this.tag)); + this.pannerEnabled = true; + } + else if (this.pannerEnabled && !enable_) { + if (!this.gainNode) return; + this.pannerNode["disconnect"](); + this.gainNode["disconnect"](); + this.gainNode["connect"](getDestinationForTag(this.tag)); + this.pannerEnabled = false; + } + }; + C2AudioInstance.prototype.setPan = function ( + x, + y, + angle, + innerangle, + outerangle, + outergain + ) { + if (!this.pannerEnabled || api !== API_WEBAUDIO) return; + this.pannerNode["setPosition"](x, y, 0); + this.pannerNode["setOrientation"]( + Math.cos(cr.to_radians(angle)), + Math.sin(cr.to_radians(angle)), + 0 + ); + this.pannerNode["coneInnerAngle"] = innerangle; + this.pannerNode["coneOuterAngle"] = outerangle; + this.pannerNode["coneOuterGain"] = outergain; + this.panX = x; + this.panY = y; + this.panAngle = angle; + this.panConeInner = innerangle; + this.panConeOuter = outerangle; + this.panConeOuterGain = outergain; + }; + C2AudioInstance.prototype.setObject = function (o) { + if (!this.pannerEnabled || api !== API_WEBAUDIO) return; + if (!this.objectTracker) this.objectTracker = new ObjectTracker(); + this.objectTracker.setObject(o); + }; + C2AudioInstance.prototype.tick = function (dt) { + if ( + !this.pannerEnabled || + api !== API_WEBAUDIO || + !this.objectTracker || + !this.objectTracker.hasObject() || + !this.isPlaying() + ) { + return; + } + this.objectTracker.tick(dt); + var inst = this.objectTracker.obj; + var px = cr.rotatePtAround( + inst.x, + inst.y, + -inst.layer.getAngle(), + listenerX, + listenerY, + true + ); + var py = cr.rotatePtAround( + inst.x, + inst.y, + -inst.layer.getAngle(), + listenerX, + listenerY, + false + ); + this.pannerNode["setPosition"](px, py, 0); + var a = 0; + if (typeof this.objectTracker.obj.angle !== "undefined") { + a = inst.angle - inst.layer.getAngle(); + this.pannerNode["setOrientation"](Math.cos(a), Math.sin(a), 0); + } + }; + C2AudioInstance.prototype.play = function ( + looping, + vol, + fromPosition, + scheduledTime + ) { + var instobj = this.instanceObject; + this.looping = looping; + this.volume = vol; + var seekPos = fromPosition || 0; + scheduledTime = scheduledTime || 0; + switch (this.myapi) { + case API_HTML5: + if (instobj.playbackRate !== 1.0) instobj.playbackRate = 1.0; + if (instobj.volume !== vol * masterVolume) + instobj.volume = vol * masterVolume; + if (instobj.loop !== looping) instobj.loop = looping; + if (instobj.muted) instobj.muted = false; + if (instobj.currentTime !== seekPos) { + try { + instobj.currentTime = seekPos; + } catch (err) { +; + } + } + tryPlayAudioElement(this); + break; + case API_WEBAUDIO: + this.muted = false; + this.mutevol = 1; + if (this.buffer.myapi === API_WEBAUDIO) { + this.gainNode["gain"]["value"] = vol * masterVolume; + if (!this.fresh) { + this.instanceObject = context["createBufferSource"](); + this.instanceObject["buffer"] = this.buffer.bufferObject; + this.instanceObject["connect"](this.gainNode); + } + this.instanceObject["onended"] = this.onended_handler; + this.active_buffer = this.instanceObject; + this.instanceObject.loop = looping; + this.hasPlaybackEnded = false; + if (seekPos === 0) startSource(this.instanceObject, scheduledTime); + else + startSourceAt( + this.instanceObject, + seekPos, + this.getDuration(), + scheduledTime + ); + } else { + if (instobj.playbackRate !== 1.0) instobj.playbackRate = 1.0; + if (instobj.loop !== looping) instobj.loop = looping; + instobj.volume = vol * masterVolume; + if (instobj.currentTime !== seekPos) { + try { + instobj.currentTime = seekPos; + } catch (err) { +; + } + } + tryPlayAudioElement(this); + } + break; + case API_CORDOVA: + if ((!this.fresh && this.stopped) || seekPos !== 0) + instobj["seekTo"](seekPos); + instobj["play"](); + this.hasPlaybackEnded = false; + break; + case API_APPMOBI: + if (audRuntime.isDirectCanvas) + AppMobi["context"]["playSound"](this.src, looping); + else AppMobi["player"]["playSound"](this.src, looping); + break; + } + this.playbackRate = 1; + this.startTime = + (this.isTimescaled ? audRuntime.kahanTime.sum : audRuntime.wallTime.sum) - + seekPos; + this.fresh = false; + this.stopped = false; + this.is_paused = false; + }; + C2AudioInstance.prototype.stop = function () { + switch (this.myapi) { + case API_HTML5: + if (!this.instanceObject.paused) this.instanceObject.pause(); + break; + case API_WEBAUDIO: + if (this.buffer.myapi === API_WEBAUDIO) stopSource(this.instanceObject); + else { + if (!this.instanceObject.paused) this.instanceObject.pause(); + } + break; + case API_CORDOVA: + this.instanceObject["stop"](); + break; + case API_APPMOBI: + if (audRuntime.isDirectCanvas) + AppMobi["context"]["stopSound"](this.src); + break; + } + this.stopped = true; + this.is_paused = false; + }; + C2AudioInstance.prototype.pause = function () { + if (this.fresh || this.stopped || this.hasEnded() || this.is_paused) return; + switch (this.myapi) { + case API_HTML5: + if (!this.instanceObject.paused) this.instanceObject.pause(); + break; + case API_WEBAUDIO: + if (this.buffer.myapi === API_WEBAUDIO) { + this.resume_position = this.getPlaybackTime(true); + if (this.looping) + this.resume_position = this.resume_position % this.getDuration(); + this.is_paused = true; + stopSource(this.instanceObject); + } else { + if (!this.instanceObject.paused) this.instanceObject.pause(); + } + break; + case API_CORDOVA: + this.instanceObject["pause"](); + break; + case API_APPMOBI: + if (audRuntime.isDirectCanvas) + AppMobi["context"]["stopSound"](this.src); + break; + } + this.is_paused = true; + }; + C2AudioInstance.prototype.resume = function () { + if (this.fresh || this.stopped || this.hasEnded() || !this.is_paused) + return; + switch (this.myapi) { + case API_HTML5: + tryPlayAudioElement(this); + break; + case API_WEBAUDIO: + if (this.buffer.myapi === API_WEBAUDIO) { + this.instanceObject = context["createBufferSource"](); + this.instanceObject["buffer"] = this.buffer.bufferObject; + this.instanceObject["connect"](this.gainNode); + this.instanceObject["onended"] = this.onended_handler; + this.active_buffer = this.instanceObject; + this.instanceObject.loop = this.looping; + this.gainNode["gain"]["value"] = + masterVolume * this.volume * this.mutevol; + this.updatePlaybackRate(); + this.startTime = + (this.isTimescaled + ? audRuntime.kahanTime.sum + : audRuntime.wallTime.sum) - + this.resume_position / (this.playbackRate || 0.001); + startSourceAt( + this.instanceObject, + this.resume_position, + this.getDuration() + ); + } else { + tryPlayAudioElement(this); + } + break; + case API_CORDOVA: + this.instanceObject["play"](); + break; + case API_APPMOBI: + if (audRuntime.isDirectCanvas) + AppMobi["context"]["resumeSound"](this.src); + break; + } + this.is_paused = false; + }; + C2AudioInstance.prototype.seek = function (pos) { + if (this.fresh || this.stopped || this.hasEnded()) return; + switch (this.myapi) { + case API_HTML5: + try { + this.instanceObject.currentTime = pos; + } catch (e) {} + break; + case API_WEBAUDIO: + if (this.buffer.myapi === API_WEBAUDIO) { + if (this.is_paused) this.resume_position = pos; + else { + this.pause(); + this.resume_position = pos; + this.resume(); + } + } else { + try { + this.instanceObject.currentTime = pos; + } catch (e) {} + } + break; + case API_CORDOVA: + break; + case API_APPMOBI: + if (audRuntime.isDirectCanvas) + AppMobi["context"]["seekSound"](this.src, pos); + break; + } + }; + C2AudioInstance.prototype.reconnect = function (toNode) { + if (this.myapi !== API_WEBAUDIO) return; + if (this.pannerEnabled) { + this.pannerNode["disconnect"](); + this.pannerNode["connect"](toNode); + } else { + this.gainNode["disconnect"](); + this.gainNode["connect"](toNode); + } + }; + C2AudioInstance.prototype.getDuration = function (applyPlaybackRate) { + var ret = 0; + switch (this.myapi) { + case API_HTML5: + if (typeof this.instanceObject.duration !== "undefined") + ret = this.instanceObject.duration; + break; + case API_WEBAUDIO: + ret = this.buffer.bufferObject["duration"]; + break; + case API_CORDOVA: + ret = this.instanceObject["getDuration"](); + break; + case API_APPMOBI: + if (audRuntime.isDirectCanvas) + ret = AppMobi["context"]["getDurationSound"](this.src); + break; + } + if (applyPlaybackRate) ret /= this.playbackRate || 0.001; // avoid divide-by-zero + return ret; + }; + C2AudioInstance.prototype.getPlaybackTime = function (applyPlaybackRate) { + var duration = this.getDuration(); + var ret = 0; + switch (this.myapi) { + case API_HTML5: + if (typeof this.instanceObject.currentTime !== "undefined") + ret = this.instanceObject.currentTime; + break; + case API_WEBAUDIO: + if (this.buffer.myapi === API_WEBAUDIO) { + if (this.is_paused) return this.resume_position; + else + ret = + (this.isTimescaled + ? audRuntime.kahanTime.sum + : audRuntime.wallTime.sum) - this.startTime; + } else if (typeof this.instanceObject.currentTime !== "undefined") + ret = this.instanceObject.currentTime; + break; + case API_CORDOVA: + break; + case API_APPMOBI: + if (audRuntime.isDirectCanvas) + ret = AppMobi["context"]["getPlaybackTimeSound"](this.src); + break; + } + if (applyPlaybackRate) ret *= this.playbackRate; + if (!this.looping && ret > duration) ret = duration; + return ret; + }; + C2AudioInstance.prototype.isPlaying = function () { + return !this.is_paused && !this.fresh && !this.stopped && !this.hasEnded(); + }; + C2AudioInstance.prototype.shouldSave = function () { + return !this.fresh && !this.stopped && !this.hasEnded(); + }; + C2AudioInstance.prototype.setVolume = function (v) { + this.volume = v; + this.updateVolume(); + }; + C2AudioInstance.prototype.updateVolume = function () { + var volToSet = this.volume * masterVolume; + if (!isFinite(volToSet)) volToSet = 0; // HTMLMediaElement throws if setting non-finite volume + switch (this.myapi) { + case API_HTML5: + if ( + typeof this.instanceObject.volume !== "undefined" && + this.instanceObject.volume !== volToSet + ) + this.instanceObject.volume = volToSet; + break; + case API_WEBAUDIO: + if (this.buffer.myapi === API_WEBAUDIO) { + this.gainNode["gain"]["value"] = volToSet * this.mutevol; + } else { + if ( + typeof this.instanceObject.volume !== "undefined" && + this.instanceObject.volume !== volToSet + ) + this.instanceObject.volume = volToSet; + } + break; + case API_CORDOVA: + break; + case API_APPMOBI: + break; + } + }; + C2AudioInstance.prototype.getVolume = function () { + return this.volume; + }; + C2AudioInstance.prototype.doSetMuted = function (m) { + switch (this.myapi) { + case API_HTML5: + if (this.instanceObject.muted !== !!m) this.instanceObject.muted = !!m; + break; + case API_WEBAUDIO: + if (this.buffer.myapi === API_WEBAUDIO) { + this.mutevol = m ? 0 : 1; + this.gainNode["gain"]["value"] = + masterVolume * this.volume * this.mutevol; + } else { + if (this.instanceObject.muted !== !!m) + this.instanceObject.muted = !!m; + } + break; + case API_CORDOVA: + break; + case API_APPMOBI: + break; + } + }; + C2AudioInstance.prototype.setMuted = function (m) { + this.is_muted = !!m; + this.doSetMuted(this.is_muted || this.is_silent); + }; + C2AudioInstance.prototype.setSilent = function (m) { + this.is_silent = !!m; + this.doSetMuted(this.is_muted || this.is_silent); + }; + C2AudioInstance.prototype.setLooping = function (l) { + this.looping = l; + switch (this.myapi) { + case API_HTML5: + if (this.instanceObject.loop !== !!l) this.instanceObject.loop = !!l; + break; + case API_WEBAUDIO: + if (this.instanceObject.loop !== !!l) this.instanceObject.loop = !!l; + break; + case API_CORDOVA: + break; + case API_APPMOBI: + if (audRuntime.isDirectCanvas) + AppMobi["context"]["setLoopingSound"](this.src, l); + break; + } + }; + C2AudioInstance.prototype.setPlaybackRate = function (r) { + this.playbackRate = r; + this.updatePlaybackRate(); + }; + C2AudioInstance.prototype.updatePlaybackRate = function () { + var r = this.playbackRate; + if (this.isTimescaled) r *= audRuntime.timescale; + switch (this.myapi) { + case API_HTML5: + if (this.instanceObject.playbackRate !== r) + this.instanceObject.playbackRate = r; + break; + case API_WEBAUDIO: + if (this.buffer.myapi === API_WEBAUDIO) { + if (this.instanceObject["playbackRate"]["value"] !== r) + this.instanceObject["playbackRate"]["value"] = r; + } else { + if (this.instanceObject.playbackRate !== r) + this.instanceObject.playbackRate = r; + } + break; + case API_CORDOVA: + break; + case API_APPMOBI: + break; + } + }; + C2AudioInstance.prototype.setSuspended = function (s) { + switch (this.myapi) { + case API_HTML5: + if (s) { + if (this.isPlaying()) { + this.resume_me = true; + this.instanceObject["pause"](); + } else this.resume_me = false; + } else { + if (this.resume_me) { + this.instanceObject["play"](); + this.resume_me = false; + } + } + break; + case API_WEBAUDIO: + if (s) { + if (this.isPlaying()) { + this.resume_me = true; + if (this.buffer.myapi === API_WEBAUDIO) { + this.resume_position = this.getPlaybackTime(true); + if (this.looping) + this.resume_position = + this.resume_position % this.getDuration(); + stopSource(this.instanceObject); + } else this.instanceObject["pause"](); + } else this.resume_me = false; + } else { + if (this.resume_me) { + if (this.buffer.myapi === API_WEBAUDIO) { + this.instanceObject = context["createBufferSource"](); + this.instanceObject["buffer"] = this.buffer.bufferObject; + this.instanceObject["connect"](this.gainNode); + this.instanceObject["onended"] = this.onended_handler; + this.active_buffer = this.instanceObject; + this.instanceObject.loop = this.looping; + this.gainNode["gain"]["value"] = + masterVolume * this.volume * this.mutevol; + this.updatePlaybackRate(); + this.startTime = + (this.isTimescaled + ? audRuntime.kahanTime.sum + : audRuntime.wallTime.sum) - + this.resume_position / (this.playbackRate || 0.001); + startSourceAt( + this.instanceObject, + this.resume_position, + this.getDuration() + ); + } else { + this.instanceObject["play"](); + } + this.resume_me = false; + } + } + break; + case API_CORDOVA: + if (s) { + if (this.isPlaying()) { + this.instanceObject["pause"](); + this.resume_me = true; + } else this.resume_me = false; + } else { + if (this.resume_me) { + this.resume_me = false; + this.instanceObject["play"](); + } + } + break; + case API_APPMOBI: + break; + } + }; + pluginProto.Instance = function (type) { + this.type = type; + this.runtime = type.runtime; + audRuntime = this.runtime; + audInst = this; + this.listenerTracker = null; + this.listenerZ = -600; + if (this.runtime.isWKWebView) playMusicAsSoundWorkaround = true; + if ( + (this.runtime.isiOS || + (this.runtime.isAndroid && + (this.runtime.isChrome || this.runtime.isAndroidStockBrowser))) && + !this.runtime.isCrosswalk && + !this.runtime.isDomFree && + !this.runtime.isAmazonWebApp && + !playMusicAsSoundWorkaround + ) { + useNextTouchWorkaround = true; + } + context = null; + if (typeof AudioContext !== "undefined") { + api = API_WEBAUDIO; + context = new AudioContext(); + } else if (typeof webkitAudioContext !== "undefined") { + api = API_WEBAUDIO; + context = new webkitAudioContext(); + } + if (this.runtime.isiOS && context) { + if (context.close) context.close(); + if (typeof AudioContext !== "undefined") context = new AudioContext(); + else if (typeof webkitAudioContext !== "undefined") + context = new webkitAudioContext(); + } + if (api !== API_WEBAUDIO) { + if (this.runtime.isCordova && typeof window["Media"] !== "undefined") + api = API_CORDOVA; + else if (this.runtime.isAppMobi) api = API_APPMOBI; + } + if (api === API_CORDOVA) { + appPath = location.href; + var i = appPath.lastIndexOf("/"); + if (i > -1) appPath = appPath.substr(0, i + 1); + appPath = appPath.replace("file://", ""); + } + if ( + this.runtime.isSafari && + this.runtime.isWindows && + typeof Audio === "undefined" + ) { + alert( + "It looks like you're using Safari for Windows without Quicktime. Audio cannot be played until Quicktime is installed." + ); + this.runtime.DestroyInstance(this); + } else { + if (this.runtime.isDirectCanvas) useOgg = this.runtime.isAndroid; + else { + try { + useOgg = + !!new Audio().canPlayType('audio/ogg; codecs="vorbis"') && + !this.runtime.isWindows10; + } catch (e) { + useOgg = false; + } + } + switch (api) { + case API_HTML5: +; + break; + case API_WEBAUDIO: +; + break; + case API_CORDOVA: +; + break; + case API_APPMOBI: +; + break; + default: +; + } + this.runtime.tickMe(this); + } + }; + var instanceProto = pluginProto.Instance.prototype; + instanceProto.onCreate = function () { + this.runtime.audioInstance = this; + timescale_mode = this.properties[0]; // 0 = off, 1 = sounds only, 2 = all + this.saveload = this.properties[1]; // 0 = all, 1 = sounds only, 2 = music only, 3 = none + this.playinbackground = this.properties[2] !== 0; + this.nextPlayTime = 0; + panningModel = this.properties[3]; // 0 = equalpower, 1 = hrtf, 3 = soundfield + distanceModel = this.properties[4]; // 0 = linear, 1 = inverse, 2 = exponential + this.listenerZ = -this.properties[5]; + refDistance = this.properties[6]; + maxDistance = this.properties[7]; + rolloffFactor = this.properties[8]; + this.listenerTracker = new ObjectTracker(); + var draw_width = this.runtime.draw_width || this.runtime.width; + var draw_height = this.runtime.draw_height || this.runtime.height; + if (api === API_WEBAUDIO) { + context["listener"]["setPosition"]( + draw_width / 2, + draw_height / 2, + this.listenerZ + ); + context["listener"]["setOrientation"](0, 0, 1, 0, -1, 0); + window["c2OnAudioMicStream"] = function (localMediaStream, tag) { + if (micSource) micSource["disconnect"](); + micTag = tag.toLowerCase(); + micSource = context["createMediaStreamSource"](localMediaStream); + micSource["connect"](getDestinationForTag(micTag)); + }; + } + this.runtime.addSuspendCallback(function (s) { + audInst.onSuspend(s); + }); + var self = this; + this.runtime.addDestroyCallback(function (inst) { + self.onInstanceDestroyed(inst); + }); + }; + instanceProto.onInstanceDestroyed = function (inst) { + var i, len, a; + for (i = 0, len = audioInstances.length; i < len; i++) { + a = audioInstances[i]; + if (a.objectTracker) { + if (a.objectTracker.obj === inst) { + a.objectTracker.obj = null; + if (a.pannerEnabled && a.isPlaying() && a.looping) a.stop(); + } + } + } + if (this.listenerTracker.obj === inst) this.listenerTracker.obj = null; + }; + instanceProto.saveToJSON = function () { + var o = { + silent: silent, + masterVolume: masterVolume, + listenerZ: this.listenerZ, + listenerUid: this.listenerTracker.hasObject() + ? this.listenerTracker.obj.uid + : -1, + playing: [], + effects: {}, + }; + var playingarr = o["playing"]; + var i, len, a, d, p, panobj, playbackTime; + for (i = 0, len = audioInstances.length; i < len; i++) { + a = audioInstances[i]; + if (!a.shouldSave()) continue; // no need to save stopped sounds + if (this.saveload === 3) + continue; + if (a.is_music && this.saveload === 1) + continue; + if (!a.is_music && this.saveload === 2) + continue; + playbackTime = a.getPlaybackTime(); + if (a.looping) playbackTime = playbackTime % a.getDuration(); + d = { + tag: a.tag, + buffersrc: a.buffer.src, + is_music: a.is_music, + playbackTime: playbackTime, + volume: a.volume, + looping: a.looping, + muted: a.is_muted, + playbackRate: a.playbackRate, + paused: a.is_paused, + resume_position: a.resume_position, + }; + if (a.pannerEnabled) { + d["pan"] = {}; + panobj = d["pan"]; + if (a.objectTracker && a.objectTracker.hasObject()) { + panobj["objUid"] = a.objectTracker.obj.uid; + } else { + panobj["x"] = a.panX; + panobj["y"] = a.panY; + panobj["a"] = a.panAngle; + } + panobj["ia"] = a.panConeInner; + panobj["oa"] = a.panConeOuter; + panobj["og"] = a.panConeOuterGain; + } + playingarr.push(d); + } + var fxobj = o["effects"]; + var fxarr; + for (p in effects) { + if (effects.hasOwnProperty(p)) { + fxarr = []; + for (i = 0, len = effects[p].length; i < len; i++) { + fxarr.push({ + type: effects[p][i].type, + params: effects[p][i].params, + }); + } + fxobj[p] = fxarr; + } + } + return o; + }; + var objectTrackerUidsToLoad = []; + instanceProto.loadFromJSON = function (o) { + var setSilent = o["silent"]; + masterVolume = o["masterVolume"]; + this.listenerZ = o["listenerZ"]; + this.listenerTracker.setObject(null); + var listenerUid = o["listenerUid"]; + if (listenerUid !== -1) { + this.listenerTracker.loadUid = listenerUid; + objectTrackerUidsToLoad.push(this.listenerTracker); + } + var playingarr = o["playing"]; + var i, + len, + d, + src, + is_music, + tag, + playbackTime, + looping, + vol, + b, + a, + p, + pan, + panObjUid; + if (this.saveload !== 3) { + for (i = 0, len = audioInstances.length; i < len; i++) { + a = audioInstances[i]; + if (a.is_music && this.saveload === 1) continue; // only saving/loading sound: leave music playing + if (!a.is_music && this.saveload === 2) continue; // only saving/loading music: leave sound playing + a.stop(); + } + } + var fxarr, fxtype, fxparams, fx; + for (p in effects) { + if (effects.hasOwnProperty(p)) { + for (i = 0, len = effects[p].length; i < len; i++) + effects[p][i].remove(); + } + } + cr.wipe(effects); + for (p in o["effects"]) { + if (o["effects"].hasOwnProperty(p)) { + fxarr = o["effects"][p]; + for (i = 0, len = fxarr.length; i < len; i++) { + fxtype = fxarr[i]["type"]; + fxparams = fxarr[i]["params"]; + switch (fxtype) { + case "filter": + addEffectForTag( + p, + new FilterEffect( + fxparams[0], + fxparams[1], + fxparams[2], + fxparams[3], + fxparams[4], + fxparams[5] + ) + ); + break; + case "delay": + addEffectForTag( + p, + new DelayEffect(fxparams[0], fxparams[1], fxparams[2]) + ); + break; + case "convolve": + src = fxparams[2]; + b = this.getAudioBuffer(src, false); + if (b.bufferObject) { + fx = new ConvolveEffect( + b.bufferObject, + fxparams[0], + fxparams[1], + src + ); + } + else { + fx = new ConvolveEffect(null, fxparams[0], fxparams[1], src); + b.normalizeWhenReady = fxparams[0]; + b.convolveWhenReady = fx; + } + addEffectForTag(p, fx); + break; + case "flanger": + addEffectForTag( + p, + new FlangerEffect( + fxparams[0], + fxparams[1], + fxparams[2], + fxparams[3], + fxparams[4] + ) + ); + break; + case "phaser": + addEffectForTag( + p, + new PhaserEffect( + fxparams[0], + fxparams[1], + fxparams[2], + fxparams[3], + fxparams[4], + fxparams[5] + ) + ); + break; + case "gain": + addEffectForTag(p, new GainEffect(fxparams[0])); + break; + case "tremolo": + addEffectForTag(p, new TremoloEffect(fxparams[0], fxparams[1])); + break; + case "ringmod": + addEffectForTag( + p, + new RingModulatorEffect(fxparams[0], fxparams[1]) + ); + break; + case "distortion": + addEffectForTag( + p, + new DistortionEffect( + fxparams[0], + fxparams[1], + fxparams[2], + fxparams[3], + fxparams[4] + ) + ); + break; + case "compressor": + addEffectForTag( + p, + new CompressorEffect( + fxparams[0], + fxparams[1], + fxparams[2], + fxparams[3], + fxparams[4] + ) + ); + break; + case "analyser": + addEffectForTag(p, new AnalyserEffect(fxparams[0], fxparams[1])); + break; + } + } + } + } + for (i = 0, len = playingarr.length; i < len; i++) { + if (this.saveload === 3) + continue; + d = playingarr[i]; + src = d["buffersrc"]; + is_music = d["is_music"]; + tag = d["tag"]; + playbackTime = d["playbackTime"]; + looping = d["looping"]; + vol = d["volume"]; + pan = d["pan"]; + panObjUid = pan && pan.hasOwnProperty("objUid") ? pan["objUid"] : -1; + if (is_music && this.saveload === 1) + continue; + if (!is_music && this.saveload === 2) + continue; + a = this.getAudioInstance(src, tag, is_music, looping, vol); + if (!a) { + b = this.getAudioBuffer(src, is_music); + b.seekWhenReady = playbackTime; + b.pauseWhenReady = d["paused"]; + if (pan) { + if (panObjUid !== -1) { + b.panWhenReady.push({ + objUid: panObjUid, + ia: pan["ia"], + oa: pan["oa"], + og: pan["og"], + thistag: tag, + }); + } else { + b.panWhenReady.push({ + x: pan["x"], + y: pan["y"], + a: pan["a"], + ia: pan["ia"], + oa: pan["oa"], + og: pan["og"], + thistag: tag, + }); + } + } + continue; + } + a.resume_position = d["resume_position"]; + a.setPannerEnabled(!!pan); + a.play(looping, vol, playbackTime); + a.updatePlaybackRate(); + a.updateVolume(); + a.doSetMuted(a.is_muted || a.is_silent); + if (d["paused"]) a.pause(); + if (d["muted"]) a.setMuted(true); + a.doSetMuted(a.is_muted || a.is_silent); + if (pan) { + if (panObjUid !== -1) { + a.objectTracker = a.objectTracker || new ObjectTracker(); + a.objectTracker.loadUid = panObjUid; + objectTrackerUidsToLoad.push(a.objectTracker); + } else { + a.setPan( + pan["x"], + pan["y"], + pan["a"], + pan["ia"], + pan["oa"], + pan["og"] + ); + } + } + } + if (setSilent && !silent) { + for (i = 0, len = audioInstances.length; i < len; i++) + audioInstances[i].setSilent(true); + silent = true; + } else if (!setSilent && silent) { + for (i = 0, len = audioInstances.length; i < len; i++) + audioInstances[i].setSilent(false); + silent = false; + } + }; + instanceProto.afterLoad = function () { + var i, len, ot, inst; + for (i = 0, len = objectTrackerUidsToLoad.length; i < len; i++) { + ot = objectTrackerUidsToLoad[i]; + inst = this.runtime.getObjectByUID(ot.loadUid); + ot.setObject(inst); + ot.loadUid = -1; + if (inst) { + listenerX = inst.x; + listenerY = inst.y; + } + } + cr.clearArray(objectTrackerUidsToLoad); + }; + instanceProto.onSuspend = function (s) { + if (this.playinbackground) return; + if (!s && context && context["resume"]) { + context["resume"](); + isContextSuspended = false; + } + var i, len; + for (i = 0, len = audioInstances.length; i < len; i++) + audioInstances[i].setSuspended(s); + if (s && context && context["suspend"]) { + context["suspend"](); + isContextSuspended = true; + } + }; + instanceProto.tick = function () { + var dt = this.runtime.dt; + var i, len, a; + for (i = 0, len = audioInstances.length; i < len; i++) { + a = audioInstances[i]; + a.tick(dt); + if (timescale_mode !== 0) a.updatePlaybackRate(); + } + var p, arr, f; + for (p in effects) { + if (effects.hasOwnProperty(p)) { + arr = effects[p]; + for (i = 0, len = arr.length; i < len; i++) { + f = arr[i]; + if (f.tick) f.tick(); + } + } + } + if (api === API_WEBAUDIO && this.listenerTracker.hasObject()) { + this.listenerTracker.tick(dt); + listenerX = this.listenerTracker.obj.x; + listenerY = this.listenerTracker.obj.y; + context["listener"]["setPosition"]( + this.listenerTracker.obj.x, + this.listenerTracker.obj.y, + this.listenerZ + ); + } + }; + var preload_list = []; + instanceProto.setPreloadList = function (arr) { + var i, len, p, filename, size, isOgg; + var total_size = 0; + for (i = 0, len = arr.length; i < len; ++i) { + p = arr[i]; + filename = p[0]; + size = p[1] * 2; + isOgg = + filename.length > 4 && filename.substr(filename.length - 4) === ".ogg"; + if ((isOgg && useOgg) || (!isOgg && !useOgg)) { + preload_list.push({ + filename: filename, + size: size, + obj: null, + }); + total_size += size; + } + } + return total_size; + }; + instanceProto.startPreloads = function () { + var i, len, p, src; + for (i = 0, len = preload_list.length; i < len; ++i) { + p = preload_list[i]; + src = this.runtime.files_subfolder + p.filename; + p.obj = this.getAudioBuffer(src, false); + } + }; + instanceProto.getPreloadedSize = function () { + var completed = 0; + var i, len, p; + for (i = 0, len = preload_list.length; i < len; ++i) { + p = preload_list[i]; + if ( + p.obj.isLoadedAndDecoded() || + p.obj.hasFailedToLoad() || + this.runtime.isDomFree || + this.runtime.isAndroidStockBrowser + ) { + completed += p.size; + } else if (p.obj.isLoaded()) { + completed += Math.floor(p.size / 2); + } + } + return completed; + }; + instanceProto.releaseAllMusicBuffers = function () { + var i, len, j, b; + for (i = 0, j = 0, len = audioBuffers.length; i < len; ++i) { + b = audioBuffers[i]; + audioBuffers[j] = b; + if (b.is_music) b.release(); + else ++j; // keep + } + audioBuffers.length = j; + }; + instanceProto.getAudioBuffer = function (src_, is_music, dont_create) { + var i, + len, + a, + ret = null, + j, + k, + lenj, + ai; + for (i = 0, len = audioBuffers.length; i < len; i++) { + a = audioBuffers[i]; + if (a.src === src_) { + ret = a; + break; + } + } + if (!ret && !dont_create) { + if (playMusicAsSoundWorkaround && is_music) this.releaseAllMusicBuffers(); + ret = new C2AudioBuffer(src_, is_music); + audioBuffers.push(ret); + } + return ret; + }; + instanceProto.getAudioInstance = function ( + src_, + tag, + is_music, + looping, + vol + ) { + var i, len, a; + for (i = 0, len = audioInstances.length; i < len; i++) { + a = audioInstances[i]; + if (a.src === src_ && (a.canBeRecycled() || is_music)) { + a.tag = tag; + return a; + } + } + var b = this.getAudioBuffer(src_, is_music); + if (!b.bufferObject) { + if (tag !== "") { + b.playTagWhenReady = tag; + b.loopWhenReady = looping; + b.volumeWhenReady = vol; + } + return null; + } + a = new C2AudioInstance(b, tag); + audioInstances.push(a); + return a; + }; + var taggedAudio = []; + function SortByIsPlaying(a, b) { + var an = a.isPlaying() ? 1 : 0; + var bn = b.isPlaying() ? 1 : 0; + if (an === bn) return 0; + else if (an < bn) return 1; + else return -1; + } + function getAudioByTag(tag, sort_by_playing) { + cr.clearArray(taggedAudio); + if (!tag.length) { + if (!lastAudio || lastAudio.hasEnded()) return; + else { + cr.clearArray(taggedAudio); + taggedAudio[0] = lastAudio; + return; + } + } + var i, len, a; + for (i = 0, len = audioInstances.length; i < len; i++) { + a = audioInstances[i]; + if (cr.equals_nocase(tag, a.tag)) taggedAudio.push(a); + } + if (sort_by_playing) taggedAudio.sort(SortByIsPlaying); + } + function reconnectEffects(tag) { + var i, + len, + arr, + n, + toNode = context["destination"]; + if (effects.hasOwnProperty(tag)) { + arr = effects[tag]; + if (arr.length) { + toNode = arr[0].getInputNode(); + for (i = 0, len = arr.length; i < len; i++) { + n = arr[i]; + if (i + 1 === len) n.connectTo(context["destination"]); + else n.connectTo(arr[i + 1].getInputNode()); + } + } + } + getAudioByTag(tag); + for (i = 0, len = taggedAudio.length; i < len; i++) + taggedAudio[i].reconnect(toNode); + if (micSource && micTag === tag) { + micSource["disconnect"](); + micSource["connect"](toNode); + } + } + function addEffectForTag(tag, fx) { + if (!effects.hasOwnProperty(tag)) effects[tag] = [fx]; + else effects[tag].push(fx); + reconnectEffects(tag); + } + function Cnds() {} + Cnds.prototype.OnEnded = function (t) { + return cr.equals_nocase(audTag, t); + }; + Cnds.prototype.PreloadsComplete = function () { + var i, len; + for (i = 0, len = audioBuffers.length; i < len; i++) { + if ( + !audioBuffers[i].isLoadedAndDecoded() && + !audioBuffers[i].hasFailedToLoad() + ) + return false; + } + return true; + }; + Cnds.prototype.AdvancedAudioSupported = function () { + return api === API_WEBAUDIO; + }; + Cnds.prototype.IsSilent = function () { + return silent; + }; + Cnds.prototype.IsAnyPlaying = function () { + var i, len; + for (i = 0, len = audioInstances.length; i < len; i++) { + if (audioInstances[i].isPlaying()) return true; + } + return false; + }; + Cnds.prototype.IsTagPlaying = function (tag) { + getAudioByTag(tag); + var i, len; + for (i = 0, len = taggedAudio.length; i < len; i++) { + if (taggedAudio[i].isPlaying()) return true; + } + return false; + }; + pluginProto.cnds = new Cnds(); + function Acts() {} + Acts.prototype.Play = function (file, looping, vol, tag) { + if (silent) return; + var v = dbToLinear(vol); + var is_music = file[1]; + var src = + this.runtime.files_subfolder + file[0] + (useOgg ? ".ogg" : ".m4a"); + lastAudio = this.getAudioInstance(src, tag, is_music, looping !== 0, v); + if (!lastAudio) return; + lastAudio.setPannerEnabled(false); + lastAudio.play(looping !== 0, v, 0, this.nextPlayTime); + this.nextPlayTime = 0; + }; + Acts.prototype.PlayAtPosition = function ( + file, + looping, + vol, + x_, + y_, + angle_, + innerangle_, + outerangle_, + outergain_, + tag + ) { + if (silent) return; + var v = dbToLinear(vol); + var is_music = file[1]; + var src = + this.runtime.files_subfolder + file[0] + (useOgg ? ".ogg" : ".m4a"); + lastAudio = this.getAudioInstance(src, tag, is_music, looping !== 0, v); + if (!lastAudio) { + var b = this.getAudioBuffer(src, is_music); + b.panWhenReady.push({ + x: x_, + y: y_, + a: angle_, + ia: innerangle_, + oa: outerangle_, + og: dbToLinear(outergain_), + thistag: tag, + }); + return; + } + lastAudio.setPannerEnabled(true); + lastAudio.setPan( + x_, + y_, + angle_, + innerangle_, + outerangle_, + dbToLinear(outergain_) + ); + lastAudio.play(looping !== 0, v, 0, this.nextPlayTime); + this.nextPlayTime = 0; + }; + Acts.prototype.PlayAtObject = function ( + file, + looping, + vol, + obj, + innerangle, + outerangle, + outergain, + tag + ) { + if (silent || !obj) return; + var inst = obj.getFirstPicked(); + if (!inst) return; + var v = dbToLinear(vol); + var is_music = file[1]; + var src = + this.runtime.files_subfolder + file[0] + (useOgg ? ".ogg" : ".m4a"); + lastAudio = this.getAudioInstance(src, tag, is_music, looping !== 0, v); + if (!lastAudio) { + var b = this.getAudioBuffer(src, is_music); + b.panWhenReady.push({ + obj: inst, + ia: innerangle, + oa: outerangle, + og: dbToLinear(outergain), + thistag: tag, + }); + return; + } + lastAudio.setPannerEnabled(true); + var px = cr.rotatePtAround( + inst.x, + inst.y, + -inst.layer.getAngle(), + listenerX, + listenerY, + true + ); + var py = cr.rotatePtAround( + inst.x, + inst.y, + -inst.layer.getAngle(), + listenerX, + listenerY, + false + ); + lastAudio.setPan( + px, + py, + cr.to_degrees(inst.angle - inst.layer.getAngle()), + innerangle, + outerangle, + dbToLinear(outergain) + ); + lastAudio.setObject(inst); + lastAudio.play(looping !== 0, v, 0, this.nextPlayTime); + this.nextPlayTime = 0; + }; + Acts.prototype.PlayByName = function (folder, filename, looping, vol, tag) { + if (silent) return; + var v = dbToLinear(vol); + var is_music = folder === 1; + var src = + this.runtime.files_subfolder + + filename.toLowerCase() + + (useOgg ? ".ogg" : ".m4a"); + lastAudio = this.getAudioInstance(src, tag, is_music, looping !== 0, v); + if (!lastAudio) return; + lastAudio.setPannerEnabled(false); + lastAudio.play(looping !== 0, v, 0, this.nextPlayTime); + this.nextPlayTime = 0; + }; + Acts.prototype.PlayAtPositionByName = function ( + folder, + filename, + looping, + vol, + x_, + y_, + angle_, + innerangle_, + outerangle_, + outergain_, + tag + ) { + if (silent) return; + var v = dbToLinear(vol); + var is_music = folder === 1; + var src = + this.runtime.files_subfolder + + filename.toLowerCase() + + (useOgg ? ".ogg" : ".m4a"); + lastAudio = this.getAudioInstance(src, tag, is_music, looping !== 0, v); + if (!lastAudio) { + var b = this.getAudioBuffer(src, is_music); + b.panWhenReady.push({ + x: x_, + y: y_, + a: angle_, + ia: innerangle_, + oa: outerangle_, + og: dbToLinear(outergain_), + thistag: tag, + }); + return; + } + lastAudio.setPannerEnabled(true); + lastAudio.setPan( + x_, + y_, + angle_, + innerangle_, + outerangle_, + dbToLinear(outergain_) + ); + lastAudio.play(looping !== 0, v, 0, this.nextPlayTime); + this.nextPlayTime = 0; + }; + Acts.prototype.PlayAtObjectByName = function ( + folder, + filename, + looping, + vol, + obj, + innerangle, + outerangle, + outergain, + tag + ) { + if (silent || !obj) return; + var inst = obj.getFirstPicked(); + if (!inst) return; + var v = dbToLinear(vol); + var is_music = folder === 1; + var src = + this.runtime.files_subfolder + + filename.toLowerCase() + + (useOgg ? ".ogg" : ".m4a"); + lastAudio = this.getAudioInstance(src, tag, is_music, looping !== 0, v); + if (!lastAudio) { + var b = this.getAudioBuffer(src, is_music); + b.panWhenReady.push({ + obj: inst, + ia: innerangle, + oa: outerangle, + og: dbToLinear(outergain), + thistag: tag, + }); + return; + } + lastAudio.setPannerEnabled(true); + var px = cr.rotatePtAround( + inst.x, + inst.y, + -inst.layer.getAngle(), + listenerX, + listenerY, + true + ); + var py = cr.rotatePtAround( + inst.x, + inst.y, + -inst.layer.getAngle(), + listenerX, + listenerY, + false + ); + lastAudio.setPan( + px, + py, + cr.to_degrees(inst.angle - inst.layer.getAngle()), + innerangle, + outerangle, + dbToLinear(outergain) + ); + lastAudio.setObject(inst); + lastAudio.play(looping !== 0, v, 0, this.nextPlayTime); + this.nextPlayTime = 0; + }; + Acts.prototype.SetLooping = function (tag, looping) { + getAudioByTag(tag); + var i, len; + for (i = 0, len = taggedAudio.length; i < len; i++) + taggedAudio[i].setLooping(looping === 0); + }; + Acts.prototype.SetMuted = function (tag, muted) { + getAudioByTag(tag); + var i, len; + for (i = 0, len = taggedAudio.length; i < len; i++) + taggedAudio[i].setMuted(muted === 0); + }; + Acts.prototype.SetVolume = function (tag, vol) { + getAudioByTag(tag); + var v = dbToLinear(vol); + var i, len; + for (i = 0, len = taggedAudio.length; i < len; i++) + taggedAudio[i].setVolume(v); + }; + Acts.prototype.Preload = function (file) { + if (silent) return; + var is_music = file[1]; + var src = + this.runtime.files_subfolder + file[0] + (useOgg ? ".ogg" : ".m4a"); + if (api === API_APPMOBI) { + if (this.runtime.isDirectCanvas) AppMobi["context"]["loadSound"](src); + else AppMobi["player"]["loadSound"](src); + return; + } else if (api === API_CORDOVA) { + return; + } + this.getAudioInstance(src, "", is_music, false); + }; + Acts.prototype.PreloadByName = function (folder, filename) { + if (silent) return; + var is_music = folder === 1; + var src = + this.runtime.files_subfolder + + filename.toLowerCase() + + (useOgg ? ".ogg" : ".m4a"); + if (api === API_APPMOBI) { + if (this.runtime.isDirectCanvas) AppMobi["context"]["loadSound"](src); + else AppMobi["player"]["loadSound"](src); + return; + } else if (api === API_CORDOVA) { + return; + } + this.getAudioInstance(src, "", is_music, false); + }; + Acts.prototype.SetPlaybackRate = function (tag, rate) { + getAudioByTag(tag); + if (rate < 0.0) rate = 0; + var i, len; + for (i = 0, len = taggedAudio.length; i < len; i++) + taggedAudio[i].setPlaybackRate(rate); + }; + Acts.prototype.Stop = function (tag) { + getAudioByTag(tag); + var i, len; + for (i = 0, len = taggedAudio.length; i < len; i++) taggedAudio[i].stop(); + }; + Acts.prototype.StopAll = function () { + var i, len; + for (i = 0, len = audioInstances.length; i < len; i++) + audioInstances[i].stop(); + }; + Acts.prototype.SetPaused = function (tag, state) { + getAudioByTag(tag); + var i, len; + for (i = 0, len = taggedAudio.length; i < len; i++) { + if (state === 0) taggedAudio[i].pause(); + else taggedAudio[i].resume(); + } + }; + Acts.prototype.Seek = function (tag, pos) { + getAudioByTag(tag); + var i, len; + for (i = 0, len = taggedAudio.length; i < len; i++) { + taggedAudio[i].seek(pos); + } + }; + Acts.prototype.SetSilent = function (s) { + var i, len; + if (s === 2) + s = silent ? 1 : 0; // choose opposite state + if (s === 0 && !silent) { + for (i = 0, len = audioInstances.length; i < len; i++) + audioInstances[i].setSilent(true); + silent = true; + } else if (s === 1 && silent) { + for (i = 0, len = audioInstances.length; i < len; i++) + audioInstances[i].setSilent(false); + silent = false; + } + }; + Acts.prototype.SetMasterVolume = function (vol) { + masterVolume = dbToLinear(vol); + var i, len; + for (i = 0, len = audioInstances.length; i < len; i++) + audioInstances[i].updateVolume(); + }; + Acts.prototype.AddFilterEffect = function ( + tag, + type, + freq, + detune, + q, + gain, + mix + ) { + if ( + api !== API_WEBAUDIO || + type < 0 || + type >= filterTypes.length || + !context["createBiquadFilter"] + ) + return; + tag = tag.toLowerCase(); + mix = mix / 100; + if (mix < 0) mix = 0; + if (mix > 1) mix = 1; + addEffectForTag(tag, new FilterEffect(type, freq, detune, q, gain, mix)); + }; + Acts.prototype.AddDelayEffect = function (tag, delay, gain, mix) { + if (api !== API_WEBAUDIO) return; + tag = tag.toLowerCase(); + mix = mix / 100; + if (mix < 0) mix = 0; + if (mix > 1) mix = 1; + addEffectForTag(tag, new DelayEffect(delay, dbToLinear(gain), mix)); + }; + Acts.prototype.AddFlangerEffect = function ( + tag, + delay, + modulation, + freq, + feedback, + mix + ) { + if (api !== API_WEBAUDIO || !context["createOscillator"]) return; + tag = tag.toLowerCase(); + mix = mix / 100; + if (mix < 0) mix = 0; + if (mix > 1) mix = 1; + addEffectForTag( + tag, + new FlangerEffect( + delay / 1000, + modulation / 1000, + freq, + feedback / 100, + mix + ) + ); + }; + Acts.prototype.AddPhaserEffect = function ( + tag, + freq, + detune, + q, + mod, + modfreq, + mix + ) { + if (api !== API_WEBAUDIO || !context["createOscillator"]) return; + tag = tag.toLowerCase(); + mix = mix / 100; + if (mix < 0) mix = 0; + if (mix > 1) mix = 1; + addEffectForTag(tag, new PhaserEffect(freq, detune, q, mod, modfreq, mix)); + }; + Acts.prototype.AddConvolutionEffect = function (tag, file, norm, mix) { + if (api !== API_WEBAUDIO || !context["createConvolver"]) return; + var doNormalize = norm === 0; + var src = + this.runtime.files_subfolder + file[0] + (useOgg ? ".ogg" : ".m4a"); + var b = this.getAudioBuffer(src, false); + tag = tag.toLowerCase(); + mix = mix / 100; + if (mix < 0) mix = 0; + if (mix > 1) mix = 1; + var fx; + if (b.bufferObject) { + fx = new ConvolveEffect(b.bufferObject, doNormalize, mix, src); + } + else { + fx = new ConvolveEffect(null, doNormalize, mix, src); + b.normalizeWhenReady = doNormalize; + b.convolveWhenReady = fx; + } + addEffectForTag(tag, fx); + }; + Acts.prototype.AddGainEffect = function (tag, g) { + if (api !== API_WEBAUDIO) return; + tag = tag.toLowerCase(); + addEffectForTag(tag, new GainEffect(dbToLinear(g))); + }; + Acts.prototype.AddMuteEffect = function (tag) { + if (api !== API_WEBAUDIO) return; + tag = tag.toLowerCase(); + addEffectForTag(tag, new GainEffect(0)); // re-use gain effect with 0 gain + }; + Acts.prototype.AddTremoloEffect = function (tag, freq, mix) { + if (api !== API_WEBAUDIO || !context["createOscillator"]) return; + tag = tag.toLowerCase(); + mix = mix / 100; + if (mix < 0) mix = 0; + if (mix > 1) mix = 1; + addEffectForTag(tag, new TremoloEffect(freq, mix)); + }; + Acts.prototype.AddRingModEffect = function (tag, freq, mix) { + if (api !== API_WEBAUDIO || !context["createOscillator"]) return; + tag = tag.toLowerCase(); + mix = mix / 100; + if (mix < 0) mix = 0; + if (mix > 1) mix = 1; + addEffectForTag(tag, new RingModulatorEffect(freq, mix)); + }; + Acts.prototype.AddDistortionEffect = function ( + tag, + threshold, + headroom, + drive, + makeupgain, + mix + ) { + if (api !== API_WEBAUDIO || !context["createWaveShaper"]) return; + tag = tag.toLowerCase(); + mix = mix / 100; + if (mix < 0) mix = 0; + if (mix > 1) mix = 1; + addEffectForTag( + tag, + new DistortionEffect(threshold, headroom, drive, makeupgain, mix) + ); + }; + Acts.prototype.AddCompressorEffect = function ( + tag, + threshold, + knee, + ratio, + attack, + release + ) { + if (api !== API_WEBAUDIO || !context["createDynamicsCompressor"]) return; + tag = tag.toLowerCase(); + addEffectForTag( + tag, + new CompressorEffect( + threshold, + knee, + ratio, + attack / 1000, + release / 1000 + ) + ); + }; + Acts.prototype.AddAnalyserEffect = function (tag, fftSize, smoothing) { + if (api !== API_WEBAUDIO) return; + tag = tag.toLowerCase(); + addEffectForTag(tag, new AnalyserEffect(fftSize, smoothing)); + }; + Acts.prototype.RemoveEffects = function (tag) { + if (api !== API_WEBAUDIO) return; + tag = tag.toLowerCase(); + var i, len, arr; + if (effects.hasOwnProperty(tag)) { + arr = effects[tag]; + if (arr.length) { + for (i = 0, len = arr.length; i < len; i++) arr[i].remove(); + cr.clearArray(arr); + reconnectEffects(tag); + } + } + }; + Acts.prototype.SetEffectParameter = function ( + tag, + index, + param, + value, + ramp, + time + ) { + if (api !== API_WEBAUDIO) return; + tag = tag.toLowerCase(); + index = Math.floor(index); + var arr; + if (!effects.hasOwnProperty(tag)) return; + arr = effects[tag]; + if (index < 0 || index >= arr.length) return; + arr[index].setParam(param, value, ramp, time); + }; + Acts.prototype.SetListenerObject = function (obj_) { + if (!obj_ || api !== API_WEBAUDIO) return; + var inst = obj_.getFirstPicked(); + if (!inst) return; + this.listenerTracker.setObject(inst); + listenerX = inst.x; + listenerY = inst.y; + }; + Acts.prototype.SetListenerZ = function (z) { + this.listenerZ = z; + }; + Acts.prototype.ScheduleNextPlay = function (t) { + if (!context) return; // needs Web Audio API + this.nextPlayTime = t; + }; + Acts.prototype.UnloadAudio = function (file) { + var is_music = file[1]; + var src = + this.runtime.files_subfolder + file[0] + (useOgg ? ".ogg" : ".m4a"); + var b = this.getAudioBuffer( + src, + is_music, + true /* don't create if missing */ + ); + if (!b) return; // not loaded + b.release(); + cr.arrayFindRemove(audioBuffers, b); + }; + Acts.prototype.UnloadAudioByName = function (folder, filename) { + var is_music = folder === 1; + var src = + this.runtime.files_subfolder + + filename.toLowerCase() + + (useOgg ? ".ogg" : ".m4a"); + var b = this.getAudioBuffer( + src, + is_music, + true /* don't create if missing */ + ); + if (!b) return; // not loaded + b.release(); + cr.arrayFindRemove(audioBuffers, b); + }; + Acts.prototype.UnloadAll = function () { + var i, len; + for (i = 0, len = audioBuffers.length; i < len; ++i) { + audioBuffers[i].release(); + } + cr.clearArray(audioBuffers); + }; + pluginProto.acts = new Acts(); + function Exps() {} + Exps.prototype.Duration = function (ret, tag) { + getAudioByTag(tag, true); + if (taggedAudio.length) ret.set_float(taggedAudio[0].getDuration()); + else ret.set_float(0); + }; + Exps.prototype.PlaybackTime = function (ret, tag) { + getAudioByTag(tag, true); + if (taggedAudio.length) ret.set_float(taggedAudio[0].getPlaybackTime(true)); + else ret.set_float(0); + }; + Exps.prototype.Volume = function (ret, tag) { + getAudioByTag(tag, true); + if (taggedAudio.length) { + var v = taggedAudio[0].getVolume(); + ret.set_float(linearToDb(v)); + } else ret.set_float(0); + }; + Exps.prototype.MasterVolume = function (ret) { + ret.set_float(linearToDb(masterVolume)); + }; + Exps.prototype.EffectCount = function (ret, tag) { + tag = tag.toLowerCase(); + var arr = null; + if (effects.hasOwnProperty(tag)) arr = effects[tag]; + ret.set_int(arr ? arr.length : 0); + }; + function getAnalyser(tag, index) { + var arr = null; + if (effects.hasOwnProperty(tag)) arr = effects[tag]; + if (arr && index >= 0 && index < arr.length && arr[index].freqBins) + return arr[index]; + else return null; + } + Exps.prototype.AnalyserFreqBinCount = function (ret, tag, index) { + tag = tag.toLowerCase(); + index = Math.floor(index); + var analyser = getAnalyser(tag, index); + ret.set_int(analyser ? analyser.node["frequencyBinCount"] : 0); + }; + Exps.prototype.AnalyserFreqBinAt = function (ret, tag, index, bin) { + tag = tag.toLowerCase(); + index = Math.floor(index); + bin = Math.floor(bin); + var analyser = getAnalyser(tag, index); + if (!analyser) ret.set_float(0); + else if (bin < 0 || bin >= analyser.node["frequencyBinCount"]) + ret.set_float(0); + else ret.set_float(analyser.freqBins[bin]); + }; + Exps.prototype.AnalyserPeakLevel = function (ret, tag, index) { + tag = tag.toLowerCase(); + index = Math.floor(index); + var analyser = getAnalyser(tag, index); + if (analyser) ret.set_float(analyser.peak); + else ret.set_float(0); + }; + Exps.prototype.AnalyserRMSLevel = function (ret, tag, index) { + tag = tag.toLowerCase(); + index = Math.floor(index); + var analyser = getAnalyser(tag, index); + if (analyser) ret.set_float(analyser.rms); + else ret.set_float(0); + }; + Exps.prototype.SampleRate = function (ret) { + ret.set_int(context ? context.sampleRate : 0); + }; + Exps.prototype.CurrentTime = function (ret) { + ret.set_float(context ? context.currentTime : cr.performance_now()); + }; + pluginProto.exps = new Exps(); +})(); +; +; +cr.plugins_.Browser = function(runtime) +{ + this.runtime = runtime; +}; +(function () +{ + var pluginProto = cr.plugins_.Browser.prototype; + pluginProto.Type = function(plugin) + { + this.plugin = plugin; + this.runtime = plugin.runtime; + }; + var typeProto = pluginProto.Type.prototype; + typeProto.onCreate = function() + { + }; + var offlineScriptReady = false; + var browserPluginReady = false; + document.addEventListener("DOMContentLoaded", function () + { + if (window["C2_RegisterSW"] && navigator["serviceWorker"]) + { + var offlineClientScript = document.createElement("script"); + offlineClientScript.onload = function () + { + offlineScriptReady = true; + checkReady() + }; + offlineClientScript.src = "offlineClient.js"; + document.head.appendChild(offlineClientScript); + } + }); + var browserInstance = null; + typeProto.onAppBegin = function () + { + browserPluginReady = true; + checkReady(); + }; + function checkReady() + { + if (offlineScriptReady && browserPluginReady && window["OfflineClientInfo"]) + { + window["OfflineClientInfo"]["SetMessageCallback"](function (e) + { + browserInstance.onSWMessage(e); + }); + } + }; + pluginProto.Instance = function(type) + { + this.type = type; + this.runtime = type.runtime; + }; + var instanceProto = pluginProto.Instance.prototype; + instanceProto.onCreate = function() + { + var self = this; + window.addEventListener("resize", function () { + self.runtime.trigger(cr.plugins_.Browser.prototype.cnds.OnResize, self); + }); + browserInstance = this; + if (typeof navigator.onLine !== "undefined") + { + window.addEventListener("online", function() { + self.runtime.trigger(cr.plugins_.Browser.prototype.cnds.OnOnline, self); + }); + window.addEventListener("offline", function() { + self.runtime.trigger(cr.plugins_.Browser.prototype.cnds.OnOffline, self); + }); + } + if (!this.runtime.isDirectCanvas) + { + document.addEventListener("appMobi.device.update.available", function() { + self.runtime.trigger(cr.plugins_.Browser.prototype.cnds.OnUpdateReady, self); + }); + document.addEventListener("backbutton", function() { + self.runtime.trigger(cr.plugins_.Browser.prototype.cnds.OnBackButton, self); + }); + document.addEventListener("menubutton", function() { + self.runtime.trigger(cr.plugins_.Browser.prototype.cnds.OnMenuButton, self); + }); + document.addEventListener("searchbutton", function() { + self.runtime.trigger(cr.plugins_.Browser.prototype.cnds.OnSearchButton, self); + }); + document.addEventListener("tizenhwkey", function (e) { + var ret; + switch (e["keyName"]) { + case "back": + ret = self.runtime.trigger(cr.plugins_.Browser.prototype.cnds.OnBackButton, self); + if (!ret) + { + if (window["tizen"]) + window["tizen"]["application"]["getCurrentApplication"]()["exit"](); + } + break; + case "menu": + ret = self.runtime.trigger(cr.plugins_.Browser.prototype.cnds.OnMenuButton, self); + if (!ret) + e.preventDefault(); + break; + } + }); + } + if (this.runtime.isWindows10 && typeof Windows !== "undefined") + { + Windows["UI"]["Core"]["SystemNavigationManager"]["getForCurrentView"]().addEventListener("backrequested", function (e) + { + var ret = self.runtime.trigger(cr.plugins_.Browser.prototype.cnds.OnBackButton, self); + if (ret) + e["handled"] = true; + }); + } + else if (this.runtime.isWinJS && WinJS["Application"]) + { + WinJS["Application"]["onbackclick"] = function (e) + { + return !!self.runtime.trigger(cr.plugins_.Browser.prototype.cnds.OnBackButton, self); + }; + } + this.runtime.addSuspendCallback(function(s) { + if (s) + { + self.runtime.trigger(cr.plugins_.Browser.prototype.cnds.OnPageHidden, self); + } + else + { + self.runtime.trigger(cr.plugins_.Browser.prototype.cnds.OnPageVisible, self); + } + }); + this.is_arcade = (typeof window["is_scirra_arcade"] !== "undefined"); + }; + instanceProto.onSWMessage = function (e) + { + var messageType = e["data"]["type"]; + if (messageType === "downloading-update") + this.runtime.trigger(cr.plugins_.Browser.prototype.cnds.OnUpdateFound, this); + else if (messageType === "update-ready" || messageType === "update-pending") + this.runtime.trigger(cr.plugins_.Browser.prototype.cnds.OnUpdateReady, this); + else if (messageType === "offline-ready") + this.runtime.trigger(cr.plugins_.Browser.prototype.cnds.OnOfflineReady, this); + }; + var batteryManager = null; + var loadedBatteryManager = false; + function maybeLoadBatteryManager() + { + if (loadedBatteryManager) + return; + if (!navigator["getBattery"]) + return; + var promise = navigator["getBattery"](); + loadedBatteryManager = true; + if (promise) + { + promise.then(function (manager) { + batteryManager = manager; + }); + } + }; + function Cnds() {}; + Cnds.prototype.CookiesEnabled = function() + { + return navigator ? navigator.cookieEnabled : false; + }; + Cnds.prototype.IsOnline = function() + { + return navigator ? navigator.onLine : false; + }; + Cnds.prototype.HasJava = function() + { + return navigator ? navigator.javaEnabled() : false; + }; + Cnds.prototype.OnOnline = function() + { + return true; + }; + Cnds.prototype.OnOffline = function() + { + return true; + }; + Cnds.prototype.IsDownloadingUpdate = function () + { + return false; // deprecated + }; + Cnds.prototype.OnUpdateReady = function () + { + return true; + }; + Cnds.prototype.PageVisible = function () + { + return !this.runtime.isSuspended; + }; + Cnds.prototype.OnPageVisible = function () + { + return true; + }; + Cnds.prototype.OnPageHidden = function () + { + return true; + }; + Cnds.prototype.OnResize = function () + { + return true; + }; + Cnds.prototype.IsFullscreen = function () + { + return !!(document["mozFullScreen"] || document["webkitIsFullScreen"] || document["fullScreen"] || this.runtime.isNodeFullscreen); + }; + Cnds.prototype.OnBackButton = function () + { + return true; + }; + Cnds.prototype.OnMenuButton = function () + { + return true; + }; + Cnds.prototype.OnSearchButton = function () + { + return true; + }; + Cnds.prototype.IsMetered = function () + { + var connection = navigator["connection"] || navigator["mozConnection"] || navigator["webkitConnection"]; + if (!connection) + return false; + return !!connection["metered"]; + }; + Cnds.prototype.IsCharging = function () + { + var battery = navigator["battery"] || navigator["mozBattery"] || navigator["webkitBattery"]; + if (battery) + { + return !!battery["charging"] + } + else + { + maybeLoadBatteryManager(); + if (batteryManager) + { + return !!batteryManager["charging"]; + } + else + { + return true; // if unknown, default to charging (powered) + } + } + }; + Cnds.prototype.IsPortraitLandscape = function (p) + { + var current = (window.innerWidth <= window.innerHeight ? 0 : 1); + return current === p; + }; + Cnds.prototype.SupportsFullscreen = function () + { + if (this.runtime.isNodeWebkit) + return true; + var elem = this.runtime.canvasdiv || this.runtime.canvas; + return !!(elem["requestFullscreen"] || elem["mozRequestFullScreen"] || elem["msRequestFullscreen"] || elem["webkitRequestFullScreen"]); + }; + Cnds.prototype.OnUpdateFound = function () + { + return true; + }; + Cnds.prototype.OnUpdateReady = function () + { + return true; + }; + Cnds.prototype.OnOfflineReady = function () + { + return true; + }; + pluginProto.cnds = new Cnds(); + function Acts() {}; + Acts.prototype.Alert = function (msg) + { + if (!this.runtime.isDomFree) + alert(msg.toString()); + }; + Acts.prototype.Close = function () + { + if (this.runtime.isCocoonJs) + CocoonJS["App"]["forceToFinish"](); + else if (window["tizen"]) + window["tizen"]["application"]["getCurrentApplication"]()["exit"](); + else if (navigator["app"] && navigator["app"]["exitApp"]) + navigator["app"]["exitApp"](); + else if (navigator["device"] && navigator["device"]["exitApp"]) + navigator["device"]["exitApp"](); + else if (!this.is_arcade && !this.runtime.isDomFree) + window.close(); + }; + Acts.prototype.Focus = function () + { + if (this.runtime.isNodeWebkit) + { + var win = window["nwgui"]["Window"]["get"](); + win["focus"](); + } + else if (!this.is_arcade && !this.runtime.isDomFree) + window.focus(); + }; + Acts.prototype.Blur = function () + { + if (this.runtime.isNodeWebkit) + { + var win = window["nwgui"]["Window"]["get"](); + win["blur"](); + } + else if (!this.is_arcade && !this.runtime.isDomFree) + window.blur(); + }; + Acts.prototype.GoBack = function () + { + if (navigator["app"] && navigator["app"]["backHistory"]) + navigator["app"]["backHistory"](); + else if (!this.is_arcade && !this.runtime.isDomFree && window.back) + window.back(); + }; + Acts.prototype.GoForward = function () + { + if (!this.is_arcade && !this.runtime.isDomFree && window.forward) + window.forward(); + }; + Acts.prototype.GoHome = function () + { + if (!this.is_arcade && !this.runtime.isDomFree && window.home) + window.home(); + }; + Acts.prototype.GoToURL = function (url, target) + { + if (this.runtime.isCocoonJs) + CocoonJS["App"]["openURL"](url); + else if (this.runtime.isEjecta) + ejecta["openURL"](url); + else if (this.runtime.isWinJS) + Windows["System"]["Launcher"]["launchUriAsync"](new Windows["Foundation"]["Uri"](url)); + else if (navigator["app"] && navigator["app"]["loadUrl"]) + navigator["app"]["loadUrl"](url, { "openExternal": true }); + else if (self["cordova"] && self["cordova"]["InAppBrowser"]) + self["cordova"]["InAppBrowser"]["open"](url, "_system"); + else if (!this.is_arcade && !this.runtime.isDomFree) + { + if (target === 2 && !this.is_arcade) // top + window.top.location = url; + else if (target === 1 && !this.is_arcade) // parent + window.parent.location = url; + else // self + window.location = url; + } + }; + Acts.prototype.GoToURLWindow = function (url, tag) + { + if (this.runtime.isCocoonJs) + CocoonJS["App"]["openURL"](url); + else if (this.runtime.isEjecta) + ejecta["openURL"](url); + else if (this.runtime.isWinJS) + Windows["System"]["Launcher"]["launchUriAsync"](new Windows["Foundation"]["Uri"](url)); + else if (navigator["app"] && navigator["app"]["loadUrl"]) + navigator["app"]["loadUrl"](url, { "openExternal": true }); + else if (self["cordova"] && self["cordova"]["InAppBrowser"]) + self["cordova"]["InAppBrowser"]["open"](url, "_system"); + else if (!this.is_arcade && !this.runtime.isDomFree) + window.open(url, tag); + }; + Acts.prototype.Reload = function () + { + if (!this.is_arcade && !this.runtime.isDomFree) + window.location.reload(); + }; + var firstRequestFullscreen = true; + var crruntime = null; + function onFullscreenError(e) + { + if (console && console.warn) + console.warn("Fullscreen request failed: ", e); + crruntime["setSize"](window.innerWidth, window.innerHeight); + }; + Acts.prototype.RequestFullScreen = function (stretchmode) + { + if (this.runtime.isDomFree) + { + cr.logexport("[Construct 2] Requesting fullscreen is not supported on this platform - the request has been ignored"); + return; + } + if (stretchmode >= 2) + stretchmode += 1; + if (stretchmode === 6) + stretchmode = 2; + if (this.runtime.isNodeWebkit) + { + if (this.runtime.isDebug) + { + debuggerFullscreen(true); + } + else if (!this.runtime.isNodeFullscreen && window["nwgui"]) + { + window["nwgui"]["Window"]["get"]()["enterFullscreen"](); + this.runtime.isNodeFullscreen = true; + this.runtime.fullscreen_scaling = (stretchmode >= 2 ? stretchmode : 0); + } + } + else + { + if (document["mozFullScreen"] || document["webkitIsFullScreen"] || !!document["msFullscreenElement"] || document["fullScreen"] || document["fullScreenElement"]) + { + return; + } + this.runtime.fullscreen_scaling = (stretchmode >= 2 ? stretchmode : 0); + var elem = document.documentElement; + if (firstRequestFullscreen) + { + firstRequestFullscreen = false; + crruntime = this.runtime; + elem.addEventListener("mozfullscreenerror", onFullscreenError); + elem.addEventListener("webkitfullscreenerror", onFullscreenError); + elem.addEventListener("MSFullscreenError", onFullscreenError); + elem.addEventListener("fullscreenerror", onFullscreenError); + } + if (elem["requestFullscreen"]) + elem["requestFullscreen"](); + else if (elem["mozRequestFullScreen"]) + elem["mozRequestFullScreen"](); + else if (elem["msRequestFullscreen"]) + elem["msRequestFullscreen"](); + else if (elem["webkitRequestFullScreen"]) + { + if (typeof Element !== "undefined" && typeof Element["ALLOW_KEYBOARD_INPUT"] !== "undefined") + elem["webkitRequestFullScreen"](Element["ALLOW_KEYBOARD_INPUT"]); + else + elem["webkitRequestFullScreen"](); + } + } + }; + Acts.prototype.CancelFullScreen = function () + { + if (this.runtime.isDomFree) + { + cr.logexport("[Construct 2] Exiting fullscreen is not supported on this platform - the request has been ignored"); + return; + } + if (this.runtime.isNodeWebkit) + { + if (this.runtime.isDebug) + { + debuggerFullscreen(false); + } + else if (this.runtime.isNodeFullscreen && window["nwgui"]) + { + window["nwgui"]["Window"]["get"]()["leaveFullscreen"](); + this.runtime.isNodeFullscreen = false; + } + } + else + { + if (document["exitFullscreen"]) + document["exitFullscreen"](); + else if (document["mozCancelFullScreen"]) + document["mozCancelFullScreen"](); + else if (document["msExitFullscreen"]) + document["msExitFullscreen"](); + else if (document["webkitCancelFullScreen"]) + document["webkitCancelFullScreen"](); + } + }; + Acts.prototype.Vibrate = function (pattern_) + { + try { + var arr = pattern_.split(","); + var i, len; + for (i = 0, len = arr.length; i < len; i++) + { + arr[i] = parseInt(arr[i], 10); + } + if (navigator["vibrate"]) + navigator["vibrate"](arr); + else if (navigator["mozVibrate"]) + navigator["mozVibrate"](arr); + else if (navigator["webkitVibrate"]) + navigator["webkitVibrate"](arr); + else if (navigator["msVibrate"]) + navigator["msVibrate"](arr); + } + catch (e) {} + }; + Acts.prototype.InvokeDownload = function (url_, filename_) + { + var a = document.createElement("a"); + if (typeof a["download"] === "undefined") + { + window.open(url_); + } + else + { + var body = document.getElementsByTagName("body")[0]; + a.textContent = filename_; + a.href = url_; + a["download"] = filename_; + body.appendChild(a); + var clickEvent = new MouseEvent("click"); + a.dispatchEvent(clickEvent); + body.removeChild(a); + } + }; + Acts.prototype.InvokeDownloadString = function (str_, mimetype_, filename_) + { + var datauri = "data:" + mimetype_ + "," + encodeURIComponent(str_); + var a = document.createElement("a"); + if (typeof a["download"] === "undefined") + { + window.open(datauri); + } + else + { + var body = document.getElementsByTagName("body")[0]; + a.textContent = filename_; + a.href = datauri; + a["download"] = filename_; + body.appendChild(a); + var clickEvent = new MouseEvent("click"); + a.dispatchEvent(clickEvent); + body.removeChild(a); + } + }; + Acts.prototype.ConsoleLog = function (type_, msg_) + { + if (typeof console === "undefined") + return; + if (type_ === 0 && console.log) + console.log(msg_.toString()); + if (type_ === 1 && console.warn) + console.warn(msg_.toString()); + if (type_ === 2 && console.error) + console.error(msg_.toString()); + }; + Acts.prototype.ConsoleGroup = function (name_) + { + if (console && console.group) + console.group(name_); + }; + Acts.prototype.ConsoleGroupEnd = function () + { + if (console && console.groupEnd) + console.groupEnd(); + }; + Acts.prototype.ExecJs = function (js_) + { + try { + if (eval) + eval(js_); + } + catch (e) + { + if (console && console.error) + console.error("Error executing Javascript: ", e); + } + }; + var orientations = [ + "portrait", + "landscape", + "portrait-primary", + "portrait-secondary", + "landscape-primary", + "landscape-secondary" + ]; + Acts.prototype.LockOrientation = function (o) + { + o = Math.floor(o); + if (o < 0 || o >= orientations.length) + return; + this.runtime.autoLockOrientation = false; + var orientation = orientations[o]; + if (screen["orientation"] && screen["orientation"]["lock"]) + screen["orientation"]["lock"](orientation); + else if (screen["lockOrientation"]) + screen["lockOrientation"](orientation); + else if (screen["webkitLockOrientation"]) + screen["webkitLockOrientation"](orientation); + else if (screen["mozLockOrientation"]) + screen["mozLockOrientation"](orientation); + else if (screen["msLockOrientation"]) + screen["msLockOrientation"](orientation); + }; + Acts.prototype.UnlockOrientation = function () + { + this.runtime.autoLockOrientation = false; + if (screen["orientation"] && screen["orientation"]["unlock"]) + screen["orientation"]["unlock"](); + else if (screen["unlockOrientation"]) + screen["unlockOrientation"](); + else if (screen["webkitUnlockOrientation"]) + screen["webkitUnlockOrientation"](); + else if (screen["mozUnlockOrientation"]) + screen["mozUnlockOrientation"](); + else if (screen["msUnlockOrientation"]) + screen["msUnlockOrientation"](); + }; + pluginProto.acts = new Acts(); + function Exps() {}; + Exps.prototype.URL = function (ret) + { + ret.set_string(this.runtime.isDomFree ? "" : window.location.toString()); + }; + Exps.prototype.Protocol = function (ret) + { + ret.set_string(this.runtime.isDomFree ? "" : window.location.protocol); + }; + Exps.prototype.Domain = function (ret) + { + ret.set_string(this.runtime.isDomFree ? "" : window.location.hostname); + }; + Exps.prototype.PathName = function (ret) + { + ret.set_string(this.runtime.isDomFree ? "" : window.location.pathname); + }; + Exps.prototype.Hash = function (ret) + { + ret.set_string(this.runtime.isDomFree ? "" : window.location.hash); + }; + Exps.prototype.Referrer = function (ret) + { + ret.set_string(this.runtime.isDomFree ? "" : document.referrer); + }; + Exps.prototype.Title = function (ret) + { + ret.set_string(this.runtime.isDomFree ? "" : document.title); + }; + Exps.prototype.Name = function (ret) + { + ret.set_string(this.runtime.isDomFree ? "" : navigator.appName); + }; + Exps.prototype.Version = function (ret) + { + ret.set_string(this.runtime.isDomFree ? "" : navigator.appVersion); + }; + Exps.prototype.Language = function (ret) + { + if (navigator && navigator.language) + ret.set_string(navigator.language); + else + ret.set_string(""); + }; + Exps.prototype.Platform = function (ret) + { + ret.set_string(this.runtime.isDomFree ? "" : navigator.platform); + }; + Exps.prototype.Product = function (ret) + { + if (navigator && navigator.product) + ret.set_string(navigator.product); + else + ret.set_string(""); + }; + Exps.prototype.Vendor = function (ret) + { + if (navigator && navigator.vendor) + ret.set_string(navigator.vendor); + else + ret.set_string(""); + }; + Exps.prototype.UserAgent = function (ret) + { + ret.set_string(this.runtime.isDomFree ? "" : navigator.userAgent); + }; + Exps.prototype.QueryString = function (ret) + { + ret.set_string(this.runtime.isDomFree ? "" : window.location.search); + }; + Exps.prototype.QueryParam = function (ret, paramname) + { + if (this.runtime.isDomFree) + { + ret.set_string(""); + return; + } + var match = RegExp('[?&]' + paramname + '=([^&]*)').exec(window.location.search); + if (match) + ret.set_string(decodeURIComponent(match[1].replace(/\+/g, ' '))); + else + ret.set_string(""); + }; + Exps.prototype.Bandwidth = function (ret) + { + var connection = navigator["connection"] || navigator["mozConnection"] || navigator["webkitConnection"]; + if (!connection) + ret.set_float(Number.POSITIVE_INFINITY); + else + { + if (typeof connection["bandwidth"] !== "undefined") + ret.set_float(connection["bandwidth"]); + else if (typeof connection["downlinkMax"] !== "undefined") + ret.set_float(connection["downlinkMax"]); + else + ret.set_float(Number.POSITIVE_INFINITY); + } + }; + Exps.prototype.ConnectionType = function (ret) + { + var connection = navigator["connection"] || navigator["mozConnection"] || navigator["webkitConnection"]; + if (!connection) + ret.set_string("unknown"); + else + { + ret.set_string(connection["type"] || "unknown"); + } + }; + Exps.prototype.BatteryLevel = function (ret) + { + var battery = navigator["battery"] || navigator["mozBattery"] || navigator["webkitBattery"]; + if (battery) + { + ret.set_float(battery["level"]); + } + else + { + maybeLoadBatteryManager(); + if (batteryManager) + { + ret.set_float(batteryManager["level"]); + } + else + { + ret.set_float(1); // not supported/unknown: assume charged + } + } + }; + Exps.prototype.BatteryTimeLeft = function (ret) + { + var battery = navigator["battery"] || navigator["mozBattery"] || navigator["webkitBattery"]; + if (battery) + { + ret.set_float(battery["dischargingTime"]); + } + else + { + maybeLoadBatteryManager(); + if (batteryManager) + { + ret.set_float(batteryManager["dischargingTime"]); + } + else + { + ret.set_float(Number.POSITIVE_INFINITY); // not supported/unknown: assume infinite time left + } + } + }; + Exps.prototype.ExecJS = function (ret, js_) + { + if (!eval) + { + ret.set_any(0); + return; + } + var result = 0; + try { + result = eval(js_); + } + catch (e) + { + if (console && console.error) + console.error("Error executing Javascript: ", e); + } + if (typeof result === "number") + ret.set_any(result); + else if (typeof result === "string") + ret.set_any(result); + else if (typeof result === "boolean") + ret.set_any(result ? 1 : 0); + else + ret.set_any(0); + }; + Exps.prototype.ScreenWidth = function (ret) + { + ret.set_int(screen.width); + }; + Exps.prototype.ScreenHeight = function (ret) + { + ret.set_int(screen.height); + }; + Exps.prototype.DevicePixelRatio = function (ret) + { + ret.set_float(this.runtime.devicePixelRatio); + }; + Exps.prototype.WindowInnerWidth = function (ret) + { + ret.set_int(window.innerWidth); + }; + Exps.prototype.WindowInnerHeight = function (ret) + { + ret.set_int(window.innerHeight); + }; + Exps.prototype.WindowOuterWidth = function (ret) + { + ret.set_int(window.outerWidth); + }; + Exps.prototype.WindowOuterHeight = function (ret) + { + ret.set_int(window.outerHeight); + }; + pluginProto.exps = new Exps(); +}()); +; +; +cr.plugins_.Button = function(runtime) +{ + this.runtime = runtime; +}; +(function () +{ + var pluginProto = cr.plugins_.Button.prototype; + pluginProto.Type = function(plugin) + { + this.plugin = plugin; + this.runtime = plugin.runtime; + }; + var typeProto = pluginProto.Type.prototype; + typeProto.onCreate = function() + { + }; + pluginProto.Instance = function(type) + { + this.type = type; + this.runtime = type.runtime; + }; + var instanceProto = pluginProto.Instance.prototype; + instanceProto.onCreate = function() + { + if (this.runtime.isDomFree) + { + cr.logexport("[Construct 2] Button plugin not supported on this platform - the object will not be created"); + return; + } + this.isCheckbox = (this.properties[0] === 1); + this.inputElem = document.createElement("input"); + if (this.isCheckbox) + this.elem = document.createElement("label"); + else + this.elem = this.inputElem; + this.labelText = null; + this.inputElem.type = (this.isCheckbox ? "checkbox" : "button"); + this.inputElem.id = this.properties[6]; + jQuery(this.elem).appendTo(this.runtime.canvasdiv ? this.runtime.canvasdiv : "body"); + if (this.isCheckbox) + { + jQuery(this.inputElem).appendTo(this.elem); + this.labelText = document.createTextNode(this.properties[1]); + jQuery(this.elem).append(this.labelText); + this.inputElem.checked = (this.properties[7] !== 0); + jQuery(this.elem).css("font-family", "sans-serif"); + jQuery(this.elem).css("display", "inline-block"); + jQuery(this.elem).css("color", "black"); + } + else + this.inputElem.value = this.properties[1]; + this.elem.title = this.properties[2]; + this.inputElem.disabled = (this.properties[4] === 0); + this.autoFontSize = (this.properties[5] !== 0); + this.element_hidden = false; + if (this.properties[3] === 0) + { + jQuery(this.elem).hide(); + this.visible = false; + this.element_hidden = true; + } + this.inputElem.onclick = (function (self) { + return function(e) { + e.stopPropagation(); + self.runtime.isInUserInputEvent = true; + self.runtime.trigger(cr.plugins_.Button.prototype.cnds.OnClicked, self); + self.runtime.isInUserInputEvent = false; + }; + })(this); + this.elem.addEventListener("touchstart", function (e) { + e.stopPropagation(); + }, false); + this.elem.addEventListener("touchmove", function (e) { + e.stopPropagation(); + }, false); + this.elem.addEventListener("touchend", function (e) { + e.stopPropagation(); + }, false); + jQuery(this.elem).mousedown(function (e) { + e.stopPropagation(); + }); + jQuery(this.elem).mouseup(function (e) { + e.stopPropagation(); + }); + jQuery(this.elem).keydown(function (e) { + e.stopPropagation(); + }); + jQuery(this.elem).keyup(function (e) { + e.stopPropagation(); + }); + this.lastLeft = 0; + this.lastTop = 0; + this.lastRight = 0; + this.lastBottom = 0; + this.lastWinWidth = 0; + this.lastWinHeight = 0; + this.updatePosition(true); + this.runtime.tickMe(this); + }; + instanceProto.saveToJSON = function () + { + var o = { + "tooltip": this.elem.title, + "disabled": !!this.inputElem.disabled + }; + if (this.isCheckbox) + { + o["checked"] = !!this.inputElem.checked; + o["text"] = this.labelText.nodeValue; + } + else + { + o["text"] = this.elem.value; + } + return o; + }; + instanceProto.loadFromJSON = function (o) + { + this.elem.title = o["tooltip"]; + this.inputElem.disabled = o["disabled"]; + if (this.isCheckbox) + { + this.inputElem.checked = o["checked"]; + this.labelText.nodeValue = o["text"]; + } + else + { + this.elem.value = o["text"]; + } + }; + instanceProto.onDestroy = function () + { + if (this.runtime.isDomFree) + return; + jQuery(this.elem).remove(); + this.elem = null; + }; + instanceProto.tick = function () + { + this.updatePosition(); + }; + var last_canvas_offset = null; + var last_checked_tick = -1; + instanceProto.updatePosition = function (first) + { + if (this.runtime.isDomFree) + return; + var left = this.layer.layerToCanvas(this.x, this.y, true); + var top = this.layer.layerToCanvas(this.x, this.y, false); + var right = this.layer.layerToCanvas(this.x + this.width, this.y + this.height, true); + var bottom = this.layer.layerToCanvas(this.x + this.width, this.y + this.height, false); + var rightEdge = this.runtime.width / this.runtime.devicePixelRatio; + var bottomEdge = this.runtime.height / this.runtime.devicePixelRatio; + if (!this.visible || !this.layer.visible || right <= 0 || bottom <= 0 || left >= rightEdge || top >= bottomEdge) + { + if (!this.element_hidden) + jQuery(this.elem).hide(); + this.element_hidden = true; + return; + } + if (left < 1) + left = 1; + if (top < 1) + top = 1; + if (right >= rightEdge) + right = rightEdge - 1; + if (bottom >= bottomEdge) + bottom = bottomEdge - 1; + var curWinWidth = window.innerWidth; + var curWinHeight = window.innerHeight; + if (!first && this.lastLeft === left && this.lastTop === top && this.lastRight === right && this.lastBottom === bottom && this.lastWinWidth === curWinWidth && this.lastWinHeight === curWinHeight) + { + if (this.element_hidden) + { + jQuery(this.elem).show(); + this.element_hidden = false; + } + return; + } + this.lastLeft = left; + this.lastTop = top; + this.lastRight = right; + this.lastBottom = bottom; + this.lastWinWidth = curWinWidth; + this.lastWinHeight = curWinHeight; + if (this.element_hidden) + { + jQuery(this.elem).show(); + this.element_hidden = false; + } + var offx = Math.round(left) + jQuery(this.runtime.canvas).offset().left; + var offy = Math.round(top) + jQuery(this.runtime.canvas).offset().top; + jQuery(this.elem).css("position", "absolute"); + jQuery(this.elem).offset({left: offx, top: offy}); + jQuery(this.elem).width(Math.round(right - left)); + jQuery(this.elem).height(Math.round(bottom - top)); + if (this.autoFontSize) + jQuery(this.elem).css("font-size", ((this.layer.getScale(true) / this.runtime.devicePixelRatio) - 0.2) + "em"); + }; + instanceProto.draw = function(ctx) + { + }; + instanceProto.drawGL = function(glw) + { + }; + function Cnds() {}; + Cnds.prototype.OnClicked = function () + { + return true; + }; + Cnds.prototype.IsChecked = function () + { + return this.isCheckbox && this.inputElem.checked; + }; + pluginProto.cnds = new Cnds(); + function Acts() {}; + Acts.prototype.SetText = function (text) + { + if (this.runtime.isDomFree) + return; + if (this.isCheckbox) + this.labelText.nodeValue = text; + else + this.elem.value = text; + }; + Acts.prototype.SetTooltip = function (text) + { + if (this.runtime.isDomFree) + return; + this.elem.title = text; + }; + Acts.prototype.SetVisible = function (vis) + { + if (this.runtime.isDomFree) + return; + this.visible = (vis !== 0); + }; + Acts.prototype.SetEnabled = function (en) + { + if (this.runtime.isDomFree) + return; + this.inputElem.disabled = (en === 0); + }; + Acts.prototype.SetFocus = function () + { + if (this.runtime.isDomFree) + return; + this.inputElem.focus(); + }; + Acts.prototype.SetBlur = function () + { + if (this.runtime.isDomFree) + return; + this.inputElem.blur(); + }; + Acts.prototype.SetCSSStyle = function (p, v) + { + if (this.runtime.isDomFree) + return; + jQuery(this.elem).css(p, v); + }; + Acts.prototype.SetChecked = function (c) + { + if (this.runtime.isDomFree || !this.isCheckbox) + return; + this.inputElem.checked = (c === 1); + }; + Acts.prototype.ToggleChecked = function () + { + if (this.runtime.isDomFree || !this.isCheckbox) + return; + this.inputElem.checked = !this.inputElem.checked; + }; + pluginProto.acts = new Acts(); + function Exps() {}; + pluginProto.exps = new Exps(); +}()); +; +; +var lastCSS = ""; +var importList = []; +function importcssfile(filename){ + if (importList.indexOf(filename)==-1){ //Only imports if file of same name not already imported + var fileref=document.createElement("link") + fileref.setAttribute("rel", "stylesheet") + fileref.setAttribute("type", "text/css") + fileref.setAttribute("href", filename) + document.getElementsByTagName("head")[0].appendChild(fileref) + importList.push(filename) + } +}; +if(!Array.prototype.indexOf) { + Array.prototype.indexOf = function(what, i) { + i = i || 0; + var L = this.length; + while (i < L) { + if(this[i] === what) return i; + ++i; + } + return -1; + }; +}; +function removecssfile(filename){ + var removeList=document.getElementsByTagName("link") + for (var i=removeList.length; i>=0; i--){ //search backwards within nodelist for matching elements to remove + if (removeList[i] && removeList[i].getAttribute("href")!=null && removeList[i].getAttribute("href").indexOf(filename)!=-1) + removeList[i].parentNode.removeChild(removeList[i]) //remove element by calling parentNode.removeChild() + } + importList.splice(importList.indexOf(filename), 1); +}; +cr.plugins_.CSS_import = function(runtime) +{ + this.runtime = runtime; +}; +(function () +{ + var pluginProto = cr.plugins_.CSS_import.prototype; + pluginProto.Type = function(plugin) + { + this.plugin = plugin; + this.runtime = plugin.runtime; + }; + var typeProto = pluginProto.Type.prototype; + typeProto.onCreate = function() + { + }; + pluginProto.Instance = function(type) + { + this.type = type; + this.runtime = type.runtime; + }; + var instanceProto = pluginProto.Instance.prototype; + instanceProto.onCreate = function() + { + if (this.properties[0] != ""){ + importcssfile(this.properties[0]); + lastCSS = this.properties[0]; + } + }; + instanceProto.onDestroy = function () + { + }; + instanceProto.draw = function(ctx) + { + }; + instanceProto.drawGL = function(glw) + { + }; + pluginProto.cnds = {}; + var cnds = pluginProto.cnds; + cnds.CompareCSS = function (text, case_) + { + return this.properties[0] === text; + }; + pluginProto.acts = {}; + var acts = pluginProto.acts; + acts.SetCSS = function (setName) + { + importcssfile(setName); + lastCSS = setName; + }; + acts.RemCSS = function (remName) + { + removecssfile(remName); + }; + pluginProto.exps = {}; + var exps = pluginProto.exps; + exps.GetCSS = function (ret) + { + if (lastCSS != ""){ + ret.set_string(lastCSS); + } else if (this.properties[0] != ""){ + ret.set_string(this.properties[0]); + } else { + ret.set_string(""); + } + }; +}()); +; +; +cr.plugins_.Function = function(runtime) +{ + this.runtime = runtime; +}; +(function () +{ + var pluginProto = cr.plugins_.Function.prototype; + pluginProto.Type = function(plugin) + { + this.plugin = plugin; + this.runtime = plugin.runtime; + }; + var typeProto = pluginProto.Type.prototype; + typeProto.onCreate = function() + { + }; + pluginProto.Instance = function(type) + { + this.type = type; + this.runtime = type.runtime; + }; + var instanceProto = pluginProto.Instance.prototype; + var funcStack = []; + var funcStackPtr = -1; + var isInPreview = false; // set in onCreate + function FuncStackEntry() + { + this.name = ""; + this.retVal = 0; + this.params = []; + }; + function pushFuncStack() + { + funcStackPtr++; + if (funcStackPtr === funcStack.length) + funcStack.push(new FuncStackEntry()); + return funcStack[funcStackPtr]; + }; + function getCurrentFuncStack() + { + if (funcStackPtr < 0) + return null; + return funcStack[funcStackPtr]; + }; + function getOneAboveFuncStack() + { + if (!funcStack.length) + return null; + var i = funcStackPtr + 1; + if (i >= funcStack.length) + i = funcStack.length - 1; + return funcStack[i]; + }; + function popFuncStack() + { +; + funcStackPtr--; + }; + instanceProto.onCreate = function() + { + isInPreview = (typeof cr_is_preview !== "undefined"); + var self = this; + window["c2_callFunction"] = function (name_, params_) + { + var i, len, v; + var fs = pushFuncStack(); + fs.name = name_.toLowerCase(); + fs.retVal = 0; + if (params_) + { + fs.params.length = params_.length; + for (i = 0, len = params_.length; i < len; ++i) + { + v = params_[i]; + if (typeof v === "number" || typeof v === "string") + fs.params[i] = v; + else if (typeof v === "boolean") + fs.params[i] = (v ? 1 : 0); + else + fs.params[i] = 0; + } + } + else + { + cr.clearArray(fs.params); + } + self.runtime.trigger(cr.plugins_.Function.prototype.cnds.OnFunction, self, fs.name); + popFuncStack(); + return fs.retVal; + }; + }; + function Cnds() {}; + Cnds.prototype.OnFunction = function (name_) + { + var fs = getCurrentFuncStack(); + if (!fs) + return false; + return cr.equals_nocase(name_, fs.name); + }; + Cnds.prototype.CompareParam = function (index_, cmp_, value_) + { + var fs = getCurrentFuncStack(); + if (!fs) + return false; + index_ = cr.floor(index_); + if (index_ < 0 || index_ >= fs.params.length) + return false; + return cr.do_cmp(fs.params[index_], cmp_, value_); + }; + pluginProto.cnds = new Cnds(); + function Acts() {}; + Acts.prototype.CallFunction = function (name_, params_) + { + var fs = pushFuncStack(); + fs.name = name_.toLowerCase(); + fs.retVal = 0; + cr.shallowAssignArray(fs.params, params_); + var ran = this.runtime.trigger(cr.plugins_.Function.prototype.cnds.OnFunction, this, fs.name); + if (isInPreview && !ran) + { +; + } + popFuncStack(); + }; + Acts.prototype.SetReturnValue = function (value_) + { + var fs = getCurrentFuncStack(); + if (fs) + fs.retVal = value_; + else +; + }; + Acts.prototype.CallExpression = function (unused) + { + }; + pluginProto.acts = new Acts(); + function Exps() {}; + Exps.prototype.ReturnValue = function (ret) + { + var fs = getOneAboveFuncStack(); + if (fs) + ret.set_any(fs.retVal); + else + ret.set_int(0); + }; + Exps.prototype.ParamCount = function (ret) + { + var fs = getCurrentFuncStack(); + if (fs) + ret.set_int(fs.params.length); + else + { +; + ret.set_int(0); + } + }; + Exps.prototype.Param = function (ret, index_) + { + index_ = cr.floor(index_); + var fs = getCurrentFuncStack(); + if (fs) + { + if (index_ >= 0 && index_ < fs.params.length) + { + ret.set_any(fs.params[index_]); + } + else + { +; + ret.set_int(0); + } + } + else + { +; + ret.set_int(0); + } + }; + Exps.prototype.Call = function (ret, name_) + { + var fs = pushFuncStack(); + fs.name = name_.toLowerCase(); + fs.retVal = 0; + cr.clearArray(fs.params); + var i, len; + for (i = 2, len = arguments.length; i < len; i++) + fs.params.push(arguments[i]); + var ran = this.runtime.trigger(cr.plugins_.Function.prototype.cnds.OnFunction, this, fs.name); + if (isInPreview && !ran) + { +; + } + popFuncStack(); + ret.set_any(fs.retVal); + }; + pluginProto.exps = new Exps(); +}()); +; +; +cr.plugins_.GameAnalytics = function(runtime) +{ + this.runtime = runtime; +}; +(function () +{ + var pluginProto = cr.plugins_.GameAnalytics.prototype; + pluginProto.Type = function(plugin) + { + this.plugin = plugin; + this.runtime = plugin.runtime; + }; + var typeProto = pluginProto.Type.prototype; + typeProto.onCreate = function() + { + }; + pluginProto.Instance = function(type) + { + this.type = type; + this.runtime = type.runtime; + }; + var instanceProto = pluginProto.Instance.prototype; + instanceProto.onCreate = function() + { + this.build = this.properties[0]; + this.customUserId = this.properties[1]; + this.enableManualSessionHandling = this.properties[2]; + this.enableInfoLog = this.properties[3]; + this.enableVerboseLog = this.properties[4]; + this.gameKeyBrowser = this.properties[5]; + this.secretKeyBrowser = this.properties[6]; + this.gameKeyAndroid = this.properties[7]; + this.secretKeyAndroid = this.properties[8]; + this.gameKeyIOS = this.properties[9]; + this.secretKeyIOS = this.properties[10]; + this.customDimensions01 = []; + this.customDimensions02 = []; + this.customDimensions03 = []; + this.resourceCurrencies = []; + this.resourceItemTypes = []; + }; + instanceProto.onDestroy = function () + { + }; + instanceProto.saveToJSON = function () + { + return { + }; + }; + instanceProto.loadFromJSON = function (o) + { + }; + instanceProto.draw = function(ctx) + { + }; + instanceProto.drawGL = function (glw) + { + }; + function Cnds() {}; + pluginProto.cnds = new Cnds(); + function Acts() {}; + Acts.prototype.addAvailableCustomDimension01 = function (dimension) + { + this.customDimensions01.push(dimension); + }; + Acts.prototype.addAvailableCustomDimension02 = function (dimension) + { + this.customDimensions02.push(dimension); + }; + Acts.prototype.addAvailableCustomDimension03 = function (dimension) + { + this.customDimensions03.push(dimension); + }; + Acts.prototype.addAvailableResourceCurrency = function (currency) + { + this.resourceCurrencies.push(currency); + }; + Acts.prototype.addAvailableResourceItemType = function (itemType) + { + this.resourceItemTypes.push(itemType); + }; + Acts.prototype.initialize = function () + { + var VERSION = "1.1.1"; + if(typeof window["GameAnalytics"]["initialize"] == "function") + { + if(this.enableInfoLog) + { + GameAnalytics.setEnabledInfoLog(true); + } + if(this.enableVerboseLog) + { + GameAnalytics.setEnabledVerboseLog(true); + } + if(this.enableManualSessionHandling) + { + GameAnalytics.setEnabledManualSessionHandling(true); + } + if(this.customDimensions01.length > 0) + { + GameAnalytics.configureAvailableCustomDimensions01(this.customDimensions01); + } + if(this.customDimensions02.length > 0) + { + GameAnalytics.configureAvailableCustomDimensions02(this.customDimensions02); + } + if(this.customDimensions03.length > 0) + { + GameAnalytics.configureAvailableCustomDimensions03(this.customDimensions03); + } + if(this.resourceCurrencies.length > 0) + { + GameAnalytics.configureAvailableResourceCurrencies(this.resourceCurrencies); + } + if(this.resourceItemTypes.length > 0) + { + GameAnalytics.configureAvailableResourceItemTypes(this.resourceItemTypes); + } + GameAnalytics.configureBuild(this.build); + var sdkVersion = "construct " + VERSION; + var gameKey = device.platform === "Android" ? this.gameKeyAndroid : this.gameKeyIOS; + var secretKey = device.platform === "Android" ? this.secretKeyAndroid : this.secretKeyIOS; + GameAnalytics.initialize({ + gameKey: gameKey, + secretKey: secretKey, + sdkVersion: sdkVersion + }); + } + else if(typeof window["gameanalytics"]["GameAnalytics"] != "undefined") + { + var ga = window["gameanalytics"]["GameAnalytics"]; + if(this.enableInfoLog) + { + ga["setEnabledInfoLog"](true); + } + if(this.enableVerboseLog) + { + ga["setEnabledVerboseLog"](true); + } + if(this.enableManualSessionHandling) + { + ga["setEnabledManualSessionHandling"](true); + } + if(this.customDimensions01.length > 0) + { + ga["configureAvailableCustomDimensions01"](this.customDimensions01); + } + if(this.customDimensions02.length > 0) + { + ga["configureAvailableCustomDimensions02"](this.customDimensions02); + } + if(this.customDimensions03.length > 0) + { + ga["configureAvailableCustomDimensions03"](this.customDimensions03); + } + if(this.resourceCurrencies.length > 0) + { + ga["configureAvailableResourceCurrencies"](this.resourceCurrencies); + } + if(this.resourceItemTypes.length > 0) + { + ga["configureAvailableResourceItemTypes"](this.resourceItemTypes); + } + ga["configureBuild"](this.build); + ga["configureSdkGameEngineVersion"]("construct " + VERSION); + ga["initialize"](this.gameKeyBrowser, this.secretKeyBrowser); + } + else + { + console.log("initialize: GameAnalytics object not found"); + return; + } + }; + Acts.prototype.addBusinessEvent = function (currency, amount, itemType, itemId, cartType) + { + if(typeof window["GameAnalytics"]["addBusinessEvent"] == "function") + { + GameAnalytics.addBusinessEvent({ + currency: currency, + amount: amount, + itemType: itemType, + itemId: itemId, + cartType: cartType + }); + } + else if(typeof window["gameanalytics"]["GameAnalytics"] != "undefined") + { + window["gameanalytics"]["GameAnalytics"]["addBusinessEvent"](currency, amount, itemType, itemId, cartType); + } + else + { + console.log("addBusinessEvent: GameAnalytics object not found"); + return; + } + }; + Acts.prototype.addResourceEvent = function (flowType, currency, amount, itemType, itemId) + { + if(typeof window["GameAnalytics"]["addResourceEvent"] == "function") + { + GameAnalytics.addResourceEvent({ + flowType: flowType, + currency: currency, + amount: amount, + itemType: itemType, + itemId: itemId + }); + } + else if(typeof window["gameanalytics"]["GameAnalytics"] != "undefined") + { + window["gameanalytics"]["GameAnalytics"]["addResourceEvent"](flowType, currency, amount, itemType, itemId); + } + else + { + console.log("addResourceEvent: GameAnalytics object not found"); + return; + } + }; + Acts.prototype.addProgressionEvent = function (progressionStatus, progression01, progression02, progression03) + { + if(typeof window["GameAnalytics"]["addProgressionEvent"] == "function") + { + GameAnalytics.addProgressionEvent({ + progressionStatus: progressionStatus, + progression01: progression01, + progression02: progression02, + progression03: progression03 + }); + } + else if(typeof window["gameanalytics"]["GameAnalytics"] != "undefined") + { + window["gameanalytics"]["GameAnalytics"]["addProgressionEvent"](progressionStatus, progression01, progression02, progression03); + } + else + { + console.log("addProgressionEvent: GameAnalytics object not found"); + return; + } + }; + Acts.prototype.addProgressionEventWithScore = function (progressionStatus, progression01, progression02, progression03, score) + { + if(typeof window["GameAnalytics"]["addProgressionEvent"] == "function") + { + GameAnalytics.addProgressionEvent({ + progressionStatus: progressionStatus, + progression01: progression01, + progression02: progression02, + progression03: progression03, + score: score + }); + } + else if(typeof window["gameanalytics"]["GameAnalytics"] != "undefined") + { + window["gameanalytics"]["GameAnalytics"]["addProgressionEvent"](progressionStatus, progression01, progression02, progression03, score); + } + else + { + console.log("addProgressionEventWithScore: GameAnalytics object not found"); + return; + } + }; + Acts.prototype.addDesignEvent = function (eventId) + { + if(typeof window["GameAnalytics"]["addDesignEvent"] == "function") + { + GameAnalytics.addDesignEvent({ + eventId: eventId + }); + } + else if(typeof window["gameanalytics"]["GameAnalytics"] != "undefined") + { + window["gameanalytics"]["GameAnalytics"]["addDesignEvent"](eventId); + } + else + { + console.log("addDesignEvent: GameAnalytics object not found"); + return; + } + }; + Acts.prototype.addDesignEventWithValue = function (eventId, value) + { + if(typeof window["GameAnalytics"]["addDesignEvent"] == "function") + { + GameAnalytics.addDesignEvent({ + eventId: eventId, + value: value + }); + } + else if(typeof window["gameanalytics"]["GameAnalytics"] != "undefined") + { + window["gameanalytics"]["GameAnalytics"]["addDesignEvent"](eventId, value); + } + else + { + console.log("addDesignEventWithValue: GameAnalytics object not found"); + return; + } + }; + Acts.prototype.addErrorEvent = function (severity, message) + { + if(typeof window["GameAnalytics"]["addErrorEvent"] == "function") + { + GameAnalytics.addErrorEvent({ + severity: severity, + message: message + }); + } + else if(typeof window["gameanalytics"]["GameAnalytics"] != "undefined") + { + window["gameanalytics"]["GameAnalytics"]["addErrorEvent"](severity, message); + } + else + { + console.log("addErrorEvent: GameAnalytics object not found"); + return; + } + }; + Acts.prototype.setEnabledManualSessionHandling = function (flag) + { + if(typeof window["GameAnalytics"]["setEnabledManualSessionHandling"] == "function") + { + GameAnalytics.setEnabledManualSessionHandling(flag ? true : false); + } + else if(typeof window["gameanalytics"]["GameAnalytics"] != "undefined") + { + window["gameanalytics"]["GameAnalytics"]["setEnabledManualSessionHandling"](flag ? true : false); + } + else + { + console.log("setEnabledManualSessionHandling: GameAnalytics object not found"); + return; + } + }; + Acts.prototype.setCustomDimension01 = function (dimension) + { + if(typeof window["GameAnalytics"]["setCustomDimension01"] == "function") + { + GameAnalytics.setCustomDimension01(dimension); + } + else if(typeof window["gameanalytics"]["GameAnalytics"] != "undefined") + { + window["gameanalytics"]["GameAnalytics"]["setCustomDimension01"](dimension); + } + else + { + console.log("setCustomDimension01: GameAnalytics object not found"); + return; + } + }; + Acts.prototype.setCustomDimension02 = function (dimension) + { + if(typeof window["GameAnalytics"]["setCustomDimension02"] == "function") + { + GameAnalytics.setCustomDimension02(dimension); + } + else if(typeof window["gameanalytics"]["GameAnalytics"] != "undefined") + { + window["gameanalytics"]["GameAnalytics"]["setCustomDimension02"](dimension); + } + else + { + console.log("setCustomDimension02: GameAnalytics object not found"); + return; + } + }; + Acts.prototype.setCustomDimension03 = function (dimension) + { + if(typeof window["GameAnalytics"]["setCustomDimension03"] == "function") + { + GameAnalytics.setCustomDimension03(dimension); + } + else if(typeof window["gameanalytics"]["GameAnalytics"] != "undefined") + { + window["gameanalytics"]["GameAnalytics"]["setCustomDimension03"](dimension); + } + else + { + console.log("setCustomDimension03: GameAnalytics object not found"); + return; + } + }; + Acts.prototype.setFacebookId = function (facebookId) + { + if(typeof window["GameAnalytics"]["setFacebookId"] == "function") + { + GameAnalytics.setFacebookId(facebookId); + } + else if(typeof window["gameanalytics"]["GameAnalytics"] != "undefined") + { + window["gameanalytics"]["GameAnalytics"]["setFacebookId"](facebookId); + } + else + { + console.log("setFacebookId: GameAnalytics object not found"); + return; + } + }; + Acts.prototype.setGender = function (gender) + { + if(typeof window["GameAnalytics"]["setGender"] == "function") + { + GameAnalytics.setGender(gender); + } + else if(typeof window["gameanalytics"]["GameAnalytics"] != "undefined") + { + window["gameanalytics"]["GameAnalytics"]["setGender"](gender); + } + else + { + console.log("setGender: GameAnalytics object not found"); + return; + } + }; + Acts.prototype.setBirthYear = function (birthYear) + { + if(typeof window["GameAnalytics"]["setBirthYear"] == "function") + { + GameAnalytics.setBirthYear(birthYear); + } + else if(typeof window["gameanalytics"]["GameAnalytics"] != "undefined") + { + window["gameanalytics"]["GameAnalytics"]["setBirthYear"](birthYear); + } + else + { + console.log("setBirthYear: GameAnalytics object not found"); + return; + } + }; + Acts.prototype.startSession = function () + { + if(typeof window["GameAnalytics"]["startSession"] == "function") + { + GameAnalytics.startSession(); + } + else if(typeof window["gameanalytics"]["GameAnalytics"] != "undefined") + { + window["gameanalytics"]["GameAnalytics"]["startSession"](); + } + else + { + console.log("startSession: GameAnalytics object not found"); + return; + } + }; + Acts.prototype.endSession = function () + { + if(typeof window["GameAnalytics"]["endSession"] == "function") + { + GameAnalytics.endSession(); + } + else if(typeof window["gameanalytics"]["GameAnalytics"] != "undefined") + { + window["gameanalytics"]["GameAnalytics"]["endSession"](); + } + else + { + console.log("endSession: GameAnalytics object not found"); + return; + } + }; + pluginProto.acts = new Acts(); + function Exps() {}; + pluginProto.exps = new Exps(); +}()); +; +; +cr.plugins_.Globals = function(runtime) +{ + this.runtime = runtime; +}; +(function () +{ + var pluginProto = cr.plugins_.Globals.prototype; + pluginProto.Type = function(plugin) + { + this.plugin = plugin; + this.runtime = plugin.runtime; + }; + var typeProto = pluginProto.Type.prototype; + typeProto.onCreate = function() + { + }; + pluginProto.Instance = function(type) + { + this.type = type; + this.runtime = type.runtime; + }; + var instanceProto = pluginProto.Instance.prototype; + instanceProto.onCreate = function() + { + this.defaultVarsValues = JSON.stringify(this.instance_vars); + }; + instanceProto.saveToJSON = function () + { + return { + "v": JSON.stringify(this.instance_vars) + }; + }; + instanceProto.loadFromJSON = function (o) + { + this.instance_vars = JSON.parse(o["v"]); + }; + function Cnds() {}; + pluginProto.cnds = new Cnds(); + function Acts() {}; + Acts.prototype.ResetVariables = function() + { + this.instance_vars = JSON.parse(this.defaultVarsValues); + }; + Acts.prototype.LoadVariables = function(varsJSON_) + { + this.instance_vars = JSON.parse(varsJSON_); + }; + pluginProto.acts = new Acts(); + function Exps() {}; + Exps.prototype.GetVariablesAsJSON = function(ret) + { + ret.set_string(JSON.stringify(this.instance_vars)); + }; + pluginProto.exps = new Exps(); +}()); +; +; +cr.plugins_.HTML_Div_Pode = function(runtime) +{ + this.runtime = runtime; +}; +(function () +{ + var pluginProto = cr.plugins_.HTML_Div_Pode.prototype; + pluginProto.Type = function(plugin) + { + this.plugin = plugin; + this.runtime = plugin.runtime; + }; + var typeProto = pluginProto.Type.prototype; + typeProto.onCreate = function() + { + }; + pluginProto.Instance = function(type) + { + this.type = type; + this.runtime = type.runtime; + this.divloaded=0; + }; + var instanceProto = pluginProto.Instance.prototype; + instanceProto.onCreate = function() + { + this.elem = document.createElement("div"); + this.elem.innerHTML=this.properties[1]; + this.elem.style.cssText=this.properties[2]; + this.CSSstyle = this.properties[2]; + var widthfactor = this.width > 0 ? 1 : -1; + var heightfactor = this.height > 0 ? 1 : -1; + this.elem.setAttribute("id",this.properties[3]); + this.angle2D = this.angle; + /*this.angle3DX = 0; + this.angle3DY = 0; + this.angle3DZ = 0; + if(this.properties[5] == 1){ + this.angle3DX = this.properties[8]; + } + if(this.properties[6] == 1){ + this.angle3DY = this.properties[8]; + } + if(this.properties[7] == 1){ + this.angle3DZ = this.properties[8]; + }*/ + this.rotation2D = "-webkit-transform:rotate("+ this.angle * widthfactor * heightfactor*180/3.1416 + +"deg);"+ + "-moz-transform:rotate("+ this.angle * widthfactor * heightfactor*180/3.1416 + +"deg);"+ + "-o-transform:rotate("+ this.angle * widthfactor * heightfactor*180/3.1416 + +"deg);"; + /*this.perspectiveValue = "-webkit-perspective:"+ this.properties[4] + +";"+ + "-moz-perspective:"+ this.properties[4] + +";"+ + "-o-perspective:"+ this.properties[4] + +";"; + this.rotation3D = "-webkit-transform:rotate3d("+ this.properties[5] + "," + this.properties[6] + "," + this.properties[7] + "," + this.properties[8] + "deg);" + + "-moz-transform:rotate3d("+ this.properties[5] + "," + this.properties[6] + "," + this.properties[7] + "," + this.properties[8] + "deg);" + + "-o-transform:rotate3d("+ this.properties[5] + "," + this.properties[6] + "," + this.properties[7] + "," + this.properties[8] + "deg);" + + "-ms-transform:rotate3d("+ this.properties[5] + "," + this.properties[6] + "," + this.properties[7] + "," + this.properties[8] + "deg);" + + "transform:rotate3d("+ this.properties[5] + "," + this.properties[6] + "," + this.properties[7] + "," + this.properties[8] + "deg);"; + */ + this.elem.style.cssText += ";"+/*this.CSSstyle +";"+*/ this.rotation2D/* + this.perspectiveValue + this.rotation3D*/; + this.elem.width = Math.round(this.elem.width); + this.elem.height = Math.round(this.elem.height); + this.elem.x = Math.round(this.elem.x); + this.elem.y = Math.round(this.elem.y); + jQuery(this.elem).appendTo("body"); + if (this.properties[0] === 0) + { + jQuery(this.elem).hide(); + this.visible = false; + } + this.updatePosition(); + this.runtime.tickMe(this); + }; + instanceProto.onDestroy = function () + { + jQuery(this.elem).remove(); + this.elem = null; + }; + instanceProto.tick = function () + { + this.updatePosition(); + }; + instanceProto.updatePosition = function () + { + var left = this.layer.layerToCanvas(this.x, this.y, true); + var top = this.layer.layerToCanvas(this.x, this.y, false); + var right = this.layer.layerToCanvas(this.x + this.width, this.y + this.height, true); + var bottom = this.layer.layerToCanvas(this.x + this.width, this.y + this.height, false); + if (!this.visible || !this.layer.visible || right <= 0 || bottom <= 0 || left >= this.runtime.width || top >= this.runtime.height) + { + jQuery(this.elem).hide(); + return; + } + if (left < 1) + left = 1; + if (top < 1) + top = 1; + if (right >= this.runtime.width) + right = this.runtime.width - 1; + if (bottom >= this.runtime.height) + bottom = this.runtime.height - 1; + jQuery(this.elem).show(); + var offx = left + jQuery(this.runtime.canvas).offset().left; + var offy = top + jQuery(this.runtime.canvas).offset().top; + jQuery(this.elem).offset({left: offx, top: offy}); + jQuery(this.elem).width(right - left); + jQuery(this.elem).height(bottom - top); + this.elem.width = Math.round(this.elem.width); + this.elem.height = Math.round(this.elem.height); + this.elem.x = Math.round(this.elem.x); + this.elem.y = Math.round(this.elem.y); + }; + instanceProto.draw = function(ctx) + { + }; + instanceProto.drawGL = function(glw) + { + }; + pluginProto.cnds = {}; + var cnds = pluginProto.cnds; + cnds.CompareinnerHTML = function (text, case_) + { + return this.elem.innerHTML === text; + }; + cnds.CompareStyle = function (text, case_) + { + return this.elem.style.cssText === text; + }; + cnds.OnComplete = function (hmm) + { + return true; + }; + cnds.OnError = function () + { + return true; + }; + cnds.isFocused = function () + { + if(this.elem == document.activeElement) return true; + else return false; + }; + pluginProto.acts = {}; + var acts = pluginProto.acts; + acts.SetInnerHTML = function (text) + { + this.elem.innerHTML = text; + }; + acts.rotate3d = function (x,y,z,deg) + { + var rotationTemp = ""; + if(x == 1){ + this.angle3DX = this.angle3DX+deg; + rotationTemp = "-webkit-transform:rotateX("+this.angle3DX + "deg);" + + "-moz-transform:rotateX("+this.angle3DX + "deg);" + + "-o-transform:rotateX("+this.angle3DX + "deg);" + + "-ms-transform:rotateX("+this.angle3DX + "deg);" + + "transform:rotateX("+this.angle3DX + "deg);"; + } + if(y == 1){ + this.angle3DY = this.angle3DY+deg; + rotationTemp = rotationTemp + "-webkit-transform:rotateY("+this.angle3DY + "deg);" + + "-moz-transform:rotateY("+this.angle3DY + "deg);" + + "-o-transform:rotateY("+this.angle3DY + "deg);" + + "-ms-transform:rotateY("+this.angle3DY + "deg);" + + "transform:rotateY("+this.angle3DY + "deg);"; + } + if(z == 1){ + this.angle3DZ = this.angle3DZ+deg; + rotationTemp = rotationTemp + "-webkit-transform:rotateZ("+this.angle3DZ + "deg);" + + "-moz-transform:rotateZ("+this.angle3DZ + "deg);" + + "-o-transform:rotateZ("+this.angle3DZ + "deg);" + + "-ms-transform:rotateZ("+this.angle3DZ + "deg);" + + "transform:rotateZ("+this.angle3DZ + "deg);"; + } + this.rotation3D = rotationTemp; + this.elem.style.cssText= this.CSSstyle + this.rotation2D + this.perspectiveValue + this.rotation3D + /*+"position: absolute;" + +"left"+this.x+"px;" + +"top"+this.y+"px;" + +"-webkit-backface-visibility:visible;" + +"-webkit-transform-style: flat;";*/ + this.updatePosition(); + }; + acts.rotate2d = function (deg) + { + var widthfactor = this.width > 0 ? 1 : -1; + var heightfactor = this.height > 0 ? 1 : -1; + this.rotation2D = "-webkit-transform:rotate("+ deg * widthfactor * heightfactor*180/3.1416 + +"deg);"+ + "-moz-transform:rotate("+ deg * widthfactor * heightfactor*180/3.1416 + +"deg);"+ + "-o-transform:rotate("+ deg * widthfactor * heightfactor*180/3.1416 + +"deg);"; + this.elem.style.cssText= this.CSSstyle + this.rotation2D + this.perspectiveValue + this.rotation3D; + this.angle = this.angle2D+deg*180/3.1416; + }; + acts.setPerspective = function (perspective) + { + this.perspectiveValue = "-webkit-perspective:" + perspective +";" + + "-moz-perspective:" + perspective +";" + + "-o-perspective:" + perspective +";" + + "-ms-perspective:" + perspective +";" + + "perspective:" + perspective +";" + this.elem.style.cssText= this.CSSstyle + this.rotation2D + this.perspectiveValue + this.rotation3D; + }; + acts.LoadDiv = function (url_,postdata_) + { + if(postdata_.length){ + jQuery.ajax({ + context: this, + dataType: "text", + type: "POST", + url: url_, + data: postdata_, + success: function(data) { + this.elem.innerHTML=data; + this.runtime.trigger(cr.plugins_.HTML_Div.prototype.cnds.OnComplete, this); + }, + error: function() { + this.runtime.trigger(cr.plugins_.HTML_Div.prototype.cnds.OnError, this); + } + }); + } else { + jQuery.ajax({ + context: this, + dataType: "text", + type: "GET", + url: url_, + success: function(data) { + this.elem.innerHTML=data; + this.runtime.trigger(cr.plugins_.HTML_Div.prototype.cnds.OnComplete, this); + }, + error: function() { + this.runtime.trigger(cr.plugins_.HTML_Div.prototype.cnds.OnError, this); + } + }); + }; + }; + acts.SetStyle = function (text) + { + this.CSSstyle = text; + this.elem.style.cssText= this.CSSstyle + this.rotation2D + this.perspectiveValue + this.rotation3D; + }; + acts.SetVisible = function (vis) + { + this.visible = (vis !== 0); + }; + acts.setFocus = function () + { + this.elem.focus(); + }; + pluginProto.exps = {}; + var exps = pluginProto.exps; + exps.GetInnerHTML = function (ret) + { + ret.set_string(this.elem.innerHTML); + }; + exps.GetStyle = function (ret) + { + ret.set_string(this.elem.style.cssText); + }; +}()); +; +; +cr.plugins_.JSON = function(runtime) +{ + this.runtime = runtime; + this.references = {}; +}; +(function () +{ + /*! (C) WebReflection Mit Style License */ + var CircularJSON=function(e,t){function l(e,t,o){var u=[],f=[e],l=[e],c=[o?n:"[Circular]"],h=e,p=1,d;return function(e,v){return t&&(v=t.call(this,e,v)),e!==""&&(h!==this&&(d=p-a.call(f,this)-1,p-=d,f.splice(p,f.length),u.splice(p-1,u.length),h=this),typeof v=="object"&&v?(a.call(f,v)<0&&f.push(h=v),p=f.length,d=a.call(l,v),d<0?(d=l.push(v)-1,o?(u.push((""+e).replace(s,r)),c[d]=n+u.join(n)):c[d]=c[0]):v=c[d]):typeof v=="string"&&o&&(v=v.replace(r,i).replace(n,r))),v}}function c(e,t){for(var r=0,i=t.length;r -1) + { + info.preventDefault(); + alreadyPreventedDefault = true; + info.stopPropagation(); + } + if (this.keyMap[info.which]) + { + if (this.usedKeys[info.which] && !alreadyPreventedDefault) + info.preventDefault(); + return; + } + this.keyMap[info.which] = true; + this.triggerKey = info.which; + this.runtime.isInUserInputEvent = true; + this.runtime.trigger(cr.plugins_.Keyboard.prototype.cnds.OnAnyKey, this); + var eventRan = this.runtime.trigger(cr.plugins_.Keyboard.prototype.cnds.OnKey, this); + var eventRan2 = this.runtime.trigger(cr.plugins_.Keyboard.prototype.cnds.OnKeyCode, this); + this.runtime.isInUserInputEvent = false; + if (eventRan || eventRan2) + { + this.usedKeys[info.which] = true; + if (!alreadyPreventedDefault) + info.preventDefault(); + } + }; + instanceProto.onKeyUp = function (info) + { + this.keyMap[info.which] = false; + this.triggerKey = info.which; + this.runtime.isInUserInputEvent = true; + this.runtime.trigger(cr.plugins_.Keyboard.prototype.cnds.OnAnyKeyReleased, this); + var eventRan = this.runtime.trigger(cr.plugins_.Keyboard.prototype.cnds.OnKeyReleased, this); + var eventRan2 = this.runtime.trigger(cr.plugins_.Keyboard.prototype.cnds.OnKeyCodeReleased, this); + this.runtime.isInUserInputEvent = false; + if (eventRan || eventRan2 || this.usedKeys[info.which]) + { + this.usedKeys[info.which] = true; + info.preventDefault(); + } + }; + instanceProto.onWindowBlur = function () + { + var i; + for (i = 0; i < 256; ++i) + { + if (!this.keyMap[i]) + continue; // key already up + this.keyMap[i] = false; + this.triggerKey = i; + this.runtime.trigger(cr.plugins_.Keyboard.prototype.cnds.OnAnyKeyReleased, this); + var eventRan = this.runtime.trigger(cr.plugins_.Keyboard.prototype.cnds.OnKeyReleased, this); + var eventRan2 = this.runtime.trigger(cr.plugins_.Keyboard.prototype.cnds.OnKeyCodeReleased, this); + if (eventRan || eventRan2) + this.usedKeys[i] = true; + } + }; + instanceProto.saveToJSON = function () + { + return { "triggerKey": this.triggerKey }; + }; + instanceProto.loadFromJSON = function (o) + { + this.triggerKey = o["triggerKey"]; + }; + function Cnds() {}; + Cnds.prototype.IsKeyDown = function(key) + { + return this.keyMap[key]; + }; + Cnds.prototype.OnKey = function(key) + { + return (key === this.triggerKey); + }; + Cnds.prototype.OnAnyKey = function(key) + { + return true; + }; + Cnds.prototype.OnAnyKeyReleased = function(key) + { + return true; + }; + Cnds.prototype.OnKeyReleased = function(key) + { + return (key === this.triggerKey); + }; + Cnds.prototype.IsKeyCodeDown = function(key) + { + key = Math.floor(key); + if (key < 0 || key >= this.keyMap.length) + return false; + return this.keyMap[key]; + }; + Cnds.prototype.OnKeyCode = function(key) + { + return (key === this.triggerKey); + }; + Cnds.prototype.OnKeyCodeReleased = function(key) + { + return (key === this.triggerKey); + }; + pluginProto.cnds = new Cnds(); + function Acts() {}; + pluginProto.acts = new Acts(); + function Exps() {}; + Exps.prototype.LastKeyCode = function (ret) + { + ret.set_int(this.triggerKey); + }; + function fixedStringFromCharCode(kc) + { + kc = Math.floor(kc); + switch (kc) { + case 8: return "backspace"; + case 9: return "tab"; + case 13: return "enter"; + case 16: return "shift"; + case 17: return "control"; + case 18: return "alt"; + case 19: return "pause"; + case 20: return "capslock"; + case 27: return "esc"; + case 33: return "pageup"; + case 34: return "pagedown"; + case 35: return "end"; + case 36: return "home"; + case 37: return "←"; + case 38: return "↑"; + case 39: return "→"; + case 40: return "↓"; + case 45: return "insert"; + case 46: return "del"; + case 91: return "left window key"; + case 92: return "right window key"; + case 93: return "select"; + case 96: return "numpad 0"; + case 97: return "numpad 1"; + case 98: return "numpad 2"; + case 99: return "numpad 3"; + case 100: return "numpad 4"; + case 101: return "numpad 5"; + case 102: return "numpad 6"; + case 103: return "numpad 7"; + case 104: return "numpad 8"; + case 105: return "numpad 9"; + case 106: return "numpad *"; + case 107: return "numpad +"; + case 109: return "numpad -"; + case 110: return "numpad ."; + case 111: return "numpad /"; + case 112: return "F1"; + case 113: return "F2"; + case 114: return "F3"; + case 115: return "F4"; + case 116: return "F5"; + case 117: return "F6"; + case 118: return "F7"; + case 119: return "F8"; + case 120: return "F9"; + case 121: return "F10"; + case 122: return "F11"; + case 123: return "F12"; + case 144: return "numlock"; + case 145: return "scroll lock"; + case 186: return ";"; + case 187: return "="; + case 188: return ","; + case 189: return "-"; + case 190: return "."; + case 191: return "/"; + case 192: return "'"; + case 219: return "["; + case 220: return "\\"; + case 221: return "]"; + case 222: return "#"; + case 223: return "`"; + default: return String.fromCharCode(kc); + } + }; + Exps.prototype.StringFromKeyCode = function (ret, kc) + { + ret.set_string(fixedStringFromCharCode(kc)); + }; + pluginProto.exps = new Exps(); +}()); +; +; +var localForageInitFailed = false; +try { +/*! + localForage -- Offline Storage, Improved + Version 1.4.0 + https://mozilla.github.io/localForage + (c) 2013-2015 Mozilla, Apache License 2.0 +*/ +!function(){var a,b,c,d;!function(){var e={},f={};a=function(a,b,c){e[a]={deps:b,callback:c}},d=c=b=function(a){function c(b){if("."!==b.charAt(0))return b;for(var c=b.split("/"),d=a.split("/").slice(0,-1),e=0,f=c.length;f>e;e++){var g=c[e];if(".."===g)d.pop();else{if("."===g)continue;d.push(g)}}return d.join("/")}if(d._eak_seen=e,f[a])return f[a];if(f[a]={},!e[a])throw new Error("Could not find module "+a);for(var g,h=e[a],i=h.deps,j=h.callback,k=[],l=0,m=i.length;m>l;l++)"exports"===i[l]?k.push(g={}):k.push(b(c(i[l])));var n=j.apply(this,k);return f[a]=g||n}}(),a("promise/all",["./utils","exports"],function(a,b){"use strict";function c(a){var b=this;if(!d(a))throw new TypeError("You must pass an array to all.");return new b(function(b,c){function d(a){return function(b){f(a,b)}}function f(a,c){h[a]=c,0===--i&&b(h)}var g,h=[],i=a.length;0===i&&b([]);for(var j=0;jc;c++){var e=a[c];this.supports(e)&&b.push(e)}return b},a.prototype._wrapLibraryMethodsWithReady=function(){for(var a=0;ae;e++)d[e]=a.charCodeAt(e);return c}function d(a){return new Promise(function(b,c){var d=new XMLHttpRequest;d.open("GET",a),d.withCredentials=!0,d.responseType="arraybuffer",d.onreadystatechange=function(){return 4===d.readyState?200===d.status?b({response:d.response,type:d.getResponseHeader("Content-Type")}):void c({status:d.status,response:d.response}):void 0},d.send()})}function e(a){return new Promise(function(c,e){var f=b([""],{type:"image/png"}),g=a.transaction([D],"readwrite");g.objectStore(D).put(f,"key"),g.oncomplete=function(){var b=a.transaction([D],"readwrite"),f=b.objectStore(D).get("key");f.onerror=e,f.onsuccess=function(a){var b=a.target.result,e=URL.createObjectURL(b);d(e).then(function(a){c(!(!a||"image/png"!==a.type))},function(){c(!1)}).then(function(){URL.revokeObjectURL(e)})}},g.onerror=g.onabort=e})["catch"](function(){return!1})}function f(a){return"boolean"==typeof B?Promise.resolve(B):e(a).then(function(a){return B=a})}function g(a){return new Promise(function(b,c){var d=new FileReader;d.onerror=c,d.onloadend=function(c){var d=btoa(c.target.result||"");b({__local_forage_encoded_blob:!0,data:d,type:a.type})},d.readAsBinaryString(a)})}function h(a){var d=c(atob(a.data));return b([d],{type:a.type})}function i(a){return a&&a.__local_forage_encoded_blob}function j(a){var b=this,c=b._initReady().then(function(){var a=C[b._dbInfo.name];return a&&a.dbReady?a.dbReady:void 0});return c.then(a,a),c}function k(a){var b=C[a.name],c={};c.promise=new Promise(function(a){c.resolve=a}),b.deferredOperations.push(c),b.dbReady?b.dbReady=b.dbReady.then(function(){return c.promise}):b.dbReady=c.promise}function l(a){var b=C[a.name],c=b.deferredOperations.pop();c&&c.resolve()}function m(a){function b(){return Promise.resolve()}var c=this,d={db:null};if(a)for(var e in a)d[e]=a[e];C||(C={});var f=C[d.name];f||(f={forages:[],db:null,dbReady:null,deferredOperations:[]},C[d.name]=f),f.forages.push(c),c._initReady||(c._initReady=c.ready,c.ready=j);for(var g=[],h=0;hb.db.version;if(e&&(b.version!==c&&a.console.warn('The database "'+b.name+"\" can't be downgraded from version "+b.db.version+" to version "+b.version+"."),b.version=b.db.version),f||d){if(d){var g=b.db.version+1;g>b.version&&(b.version=g)}return!0}return!1}function r(b,c){var d=this;"string"!=typeof b&&(a.console.warn(b+" used as a key, but it is not a string."),b=String(b));var e=new Promise(function(a,c){d.ready().then(function(){var e=d._dbInfo,f=e.db.transaction(e.storeName,"readonly").objectStore(e.storeName),g=f.get(b);g.onsuccess=function(){var b=g.result;void 0===b&&(b=null),i(b)&&(b=h(b)),a(b)},g.onerror=function(){c(g.error)}})["catch"](c)});return z(e,c),e}function s(a,b){var c=this,d=new Promise(function(b,d){c.ready().then(function(){var e=c._dbInfo,f=e.db.transaction(e.storeName,"readonly").objectStore(e.storeName),g=f.openCursor(),j=1;g.onsuccess=function(){var c=g.result;if(c){var d=c.value;i(d)&&(d=h(d));var e=a(d,c.key,j++);void 0!==e?b(e):c["continue"]()}else b()},g.onerror=function(){d(g.error)}})["catch"](d)});return z(d,b),d}function t(b,c,d){var e=this;"string"!=typeof b&&(a.console.warn(b+" used as a key, but it is not a string."),b=String(b));var h=new Promise(function(a,d){var h;e.ready().then(function(){return h=e._dbInfo,c instanceof Blob?f(h.db).then(function(a){return a?c:g(c)}):c}).then(function(c){var e=h.db.transaction(h.storeName,"readwrite"),f=e.objectStore(h.storeName);null===c&&(c=void 0),e.oncomplete=function(){void 0===c&&(c=null),a(c)},e.onabort=e.onerror=function(){var a=g.error?g.error:g.transaction.error;d(a)};var g=f.put(c,b)})["catch"](d)});return z(h,d),h}function u(b,c){var d=this;"string"!=typeof b&&(a.console.warn(b+" used as a key, but it is not a string."),b=String(b));var e=new Promise(function(a,c){d.ready().then(function(){var e=d._dbInfo,f=e.db.transaction(e.storeName,"readwrite"),g=f.objectStore(e.storeName),h=g["delete"](b);f.oncomplete=function(){a()},f.onerror=function(){c(h.error)},f.onabort=function(){var a=h.error?h.error:h.transaction.error;c(a)}})["catch"](c)});return z(e,c),e}function v(a){var b=this,c=new Promise(function(a,c){b.ready().then(function(){var d=b._dbInfo,e=d.db.transaction(d.storeName,"readwrite"),f=e.objectStore(d.storeName),g=f.clear();e.oncomplete=function(){a()},e.onabort=e.onerror=function(){var a=g.error?g.error:g.transaction.error;c(a)}})["catch"](c)});return z(c,a),c}function w(a){var b=this,c=new Promise(function(a,c){b.ready().then(function(){var d=b._dbInfo,e=d.db.transaction(d.storeName,"readonly").objectStore(d.storeName),f=e.count();f.onsuccess=function(){a(f.result)},f.onerror=function(){c(f.error)}})["catch"](c)});return z(c,a),c}function x(a,b){var c=this,d=new Promise(function(b,d){return 0>a?void b(null):void c.ready().then(function(){var e=c._dbInfo,f=e.db.transaction(e.storeName,"readonly").objectStore(e.storeName),g=!1,h=f.openCursor();h.onsuccess=function(){var c=h.result;return c?void(0===a?b(c.key):g?b(c.key):(g=!0,c.advance(a))):void b(null)},h.onerror=function(){d(h.error)}})["catch"](d)});return z(d,b),d}function y(a){var b=this,c=new Promise(function(a,c){b.ready().then(function(){var d=b._dbInfo,e=d.db.transaction(d.storeName,"readonly").objectStore(d.storeName),f=e.openCursor(),g=[];f.onsuccess=function(){var b=f.result;return b?(g.push(b.key),void b["continue"]()):void a(g)},f.onerror=function(){c(f.error)}})["catch"](c)});return z(c,a),c}function z(a,b){b&&a.then(function(a){b(null,a)},function(a){b(a)})}var A=A||a.indexedDB||a.webkitIndexedDB||a.mozIndexedDB||a.OIndexedDB||a.msIndexedDB;if(A){var B,C,D="local-forage-detect-blob-support",E={_driver:"asyncStorage",_initStorage:m,iterate:s,getItem:r,setItem:t,removeItem:u,clear:v,length:w,key:x,keys:y};return E}}("undefined"!=typeof window?window:self);b["default"]=c,a.exports=b["default"]},function(a,b,c){"use strict";b.__esModule=!0;var d=function(a){function b(a){var b=this,d={};if(a)for(var e in a)d[e]=a[e];return d.keyPrefix=d.name+"/",d.storeName!==b._defaultConfig.storeName&&(d.keyPrefix+=d.storeName+"/"),b._dbInfo=d,new Promise(function(a,b){a(c(3))}).then(function(a){return d.serializer=a,Promise.resolve()})}function d(a){var b=this,c=b.ready().then(function(){for(var a=b._dbInfo.keyPrefix,c=m.length-1;c>=0;c--){var d=m.key(c);0===d.indexOf(a)&&m.removeItem(d)}});return l(c,a),c}function e(b,c){var d=this;"string"!=typeof b&&(a.console.warn(b+" used as a key, but it is not a string."),b=String(b));var e=d.ready().then(function(){var a=d._dbInfo,c=m.getItem(a.keyPrefix+b);return c&&(c=a.serializer.deserialize(c)),c});return l(e,c),e}function f(a,b){var c=this,d=c.ready().then(function(){for(var b=c._dbInfo,d=b.keyPrefix,e=d.length,f=m.length,g=1,h=0;f>h;h++){var i=m.key(h);if(0===i.indexOf(d)){var j=m.getItem(i);if(j&&(j=b.serializer.deserialize(j)),j=a(j,i.substring(e),g++),void 0!==j)return j}}});return l(d,b),d}function g(a,b){var c=this,d=c.ready().then(function(){var b,d=c._dbInfo;try{b=m.key(a)}catch(e){b=null}return b&&(b=b.substring(d.keyPrefix.length)),b});return l(d,b),d}function h(a){var b=this,c=b.ready().then(function(){for(var a=b._dbInfo,c=m.length,d=[],e=0;c>e;e++)0===m.key(e).indexOf(a.keyPrefix)&&d.push(m.key(e).substring(a.keyPrefix.length));return d});return l(c,a),c}function i(a){var b=this,c=b.keys().then(function(a){return a.length});return l(c,a),c}function j(b,c){var d=this;"string"!=typeof b&&(a.console.warn(b+" used as a key, but it is not a string."),b=String(b));var e=d.ready().then(function(){var a=d._dbInfo;m.removeItem(a.keyPrefix+b)});return l(e,c),e}function k(b,c,d){var e=this;"string"!=typeof b&&(a.console.warn(b+" used as a key, but it is not a string."),b=String(b));var f=e.ready().then(function(){void 0===c&&(c=null);var a=c;return new Promise(function(d,f){var g=e._dbInfo;g.serializer.serialize(c,function(c,e){if(e)f(e);else try{m.setItem(g.keyPrefix+b,c),d(a)}catch(h){("QuotaExceededError"===h.name||"NS_ERROR_DOM_QUOTA_REACHED"===h.name)&&f(h),f(h)}})})});return l(f,d),f}function l(a,b){b&&a.then(function(a){b(null,a)},function(a){b(a)})}var m=null;try{if(!(a.localStorage&&"setItem"in a.localStorage))return;m=a.localStorage}catch(n){return}var o={_driver:"localStorageWrapper",_initStorage:b,iterate:f,getItem:e,setItem:k,removeItem:j,clear:d,length:i,key:g,keys:h};return o}("undefined"!=typeof window?window:self);b["default"]=d,a.exports=b["default"]},function(a,b){"use strict";b.__esModule=!0;var c=function(a){function b(b,c){b=b||[],c=c||{};try{return new Blob(b,c)}catch(d){if("TypeError"!==d.name)throw d;for(var e=a.BlobBuilder||a.MSBlobBuilder||a.MozBlobBuilder||a.WebKitBlobBuilder,f=new e,g=0;gb;b+=4)c=g.indexOf(a[b]),d=g.indexOf(a[b+1]),e=g.indexOf(a[b+2]),f=g.indexOf(a[b+3]),l[j++]=c<<2|d>>4,l[j++]=(15&d)<<4|e>>2,l[j++]=(3&e)<<6|63&f;return k}function f(a){var b,c=new Uint8Array(a),d="";for(b=0;b>2],d+=g[(3&c[b])<<4|c[b+1]>>4],d+=g[(15&c[b+1])<<2|c[b+2]>>6],d+=g[63&c[b+2]];return c.length%3===2?d=d.substring(0,d.length-1)+"=":c.length%3===1&&(d=d.substring(0,d.length-2)+"=="),d}var g="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",h="~~local_forage_type~",i=/^~~local_forage_type~([^~]+)~/,j="__lfsc__:",k=j.length,l="arbf",m="blob",n="si08",o="ui08",p="uic8",q="si16",r="si32",s="ur16",t="ui32",u="fl32",v="fl64",w=k+l.length,x={serialize:c,deserialize:d,stringToBuffer:e,bufferToString:f};return x}("undefined"!=typeof window?window:self);b["default"]=c,a.exports=b["default"]},function(a,b,c){"use strict";b.__esModule=!0;var d=function(a){function b(a){var b=this,d={db:null};if(a)for(var e in a)d[e]="string"!=typeof a[e]?a[e].toString():a[e];var f=new Promise(function(a,c){try{d.db=m(d.name,String(d.version),d.description,d.size)}catch(e){return c(e)}d.db.transaction(function(e){e.executeSql("CREATE TABLE IF NOT EXISTS "+d.storeName+" (id INTEGER PRIMARY KEY, key unique, value)",[],function(){b._dbInfo=d,a()},function(a,b){c(b)})})});return new Promise(function(a,b){a(c(3))}).then(function(a){return d.serializer=a,f})}function d(b,c){var d=this;"string"!=typeof b&&(a.console.warn(b+" used as a key, but it is not a string."),b=String(b));var e=new Promise(function(a,c){d.ready().then(function(){var e=d._dbInfo;e.db.transaction(function(d){d.executeSql("SELECT * FROM "+e.storeName+" WHERE key = ? LIMIT 1",[b],function(b,c){var d=c.rows.length?c.rows.item(0).value:null;d&&(d=e.serializer.deserialize(d)),a(d)},function(a,b){c(b)})})})["catch"](c)});return l(e,c),e}function e(a,b){var c=this,d=new Promise(function(b,d){c.ready().then(function(){var e=c._dbInfo;e.db.transaction(function(c){c.executeSql("SELECT * FROM "+e.storeName,[],function(c,d){for(var f=d.rows,g=f.length,h=0;g>h;h++){var i=f.item(h),j=i.value;if(j&&(j=e.serializer.deserialize(j)),j=a(j,i.key,h+1),void 0!==j)return void b(j)}b()},function(a,b){d(b)})})})["catch"](d)});return l(d,b),d}function f(b,c,d){var e=this;"string"!=typeof b&&(a.console.warn(b+" used as a key, but it is not a string."),b=String(b));var f=new Promise(function(a,d){e.ready().then(function(){void 0===c&&(c=null);var f=c,g=e._dbInfo;g.serializer.serialize(c,function(c,e){e?d(e):g.db.transaction(function(e){e.executeSql("INSERT OR REPLACE INTO "+g.storeName+" (key, value) VALUES (?, ?)",[b,c],function(){a(f)},function(a,b){d(b)})},function(a){a.code===a.QUOTA_ERR&&d(a)})})})["catch"](d)});return l(f,d),f}function g(b,c){var d=this;"string"!=typeof b&&(a.console.warn(b+" used as a key, but it is not a string."),b=String(b));var e=new Promise(function(a,c){d.ready().then(function(){var e=d._dbInfo;e.db.transaction(function(d){d.executeSql("DELETE FROM "+e.storeName+" WHERE key = ?",[b],function(){a()},function(a,b){c(b)})})})["catch"](c)});return l(e,c),e}function h(a){var b=this,c=new Promise(function(a,c){b.ready().then(function(){var d=b._dbInfo;d.db.transaction(function(b){b.executeSql("DELETE FROM "+d.storeName,[],function(){a()},function(a,b){c(b)})})})["catch"](c)});return l(c,a),c}function i(a){var b=this,c=new Promise(function(a,c){b.ready().then(function(){var d=b._dbInfo;d.db.transaction(function(b){b.executeSql("SELECT COUNT(key) as c FROM "+d.storeName,[],function(b,c){var d=c.rows.item(0).c;a(d)},function(a,b){c(b)})})})["catch"](c)});return l(c,a),c}function j(a,b){var c=this,d=new Promise(function(b,d){c.ready().then(function(){var e=c._dbInfo;e.db.transaction(function(c){c.executeSql("SELECT key FROM "+e.storeName+" WHERE id = ? LIMIT 1",[a+1],function(a,c){var d=c.rows.length?c.rows.item(0).key:null;b(d)},function(a,b){d(b)})})})["catch"](d)});return l(d,b),d}function k(a){var b=this,c=new Promise(function(a,c){b.ready().then(function(){var d=b._dbInfo;d.db.transaction(function(b){b.executeSql("SELECT key FROM "+d.storeName,[],function(b,c){for(var d=[],e=0;e 0; + }; + Cnds.prototype.IsProcessingGets = function () + { + return this.pendingGets > 0; + }; + Cnds.prototype.OnAllSetsComplete = function () + { + return true; + }; + Cnds.prototype.OnAllGetsComplete = function () + { + return true; + }; + pluginProto.cnds = new Cnds(); + function Acts() {}; + Acts.prototype.SetItem = function (keyNoPrefix, value) + { + if (localForageInitFailed) + { + TriggerStorageError(this, "storage failed to initialise - may be disabled in browser settings"); + return; + } + var keyPrefix = prefix + keyNoPrefix; + this.pendingSets++; + var self = this; + localforage["setItem"](keyPrefix, value, function (err, valueSet) + { + debugDataChanged = true; + self.pendingSets--; + if (err) + { + errorMessage = getErrorString(err); + self.runtime.trigger(cr.plugins_.LocalStorage.prototype.cnds.OnError, self); + } + else + { + currentKey = keyNoPrefix; + lastValue = valueSet; + self.runtime.trigger(cr.plugins_.LocalStorage.prototype.cnds.OnAnyItemSet, self); + self.runtime.trigger(cr.plugins_.LocalStorage.prototype.cnds.OnItemSet, self); + currentKey = ""; + lastValue = ""; + } + if (self.pendingSets === 0) + { + self.runtime.trigger(cr.plugins_.LocalStorage.prototype.cnds.OnAllSetsComplete, self); + } + }); + }; + Acts.prototype.GetItem = function (keyNoPrefix) + { + if (localForageInitFailed) + { + TriggerStorageError(this, "storage failed to initialise - may be disabled in browser settings"); + return; + } + var keyPrefix = prefix + keyNoPrefix; + this.pendingGets++; + var self = this; + localforage["getItem"](keyPrefix, function (err, value) + { + self.pendingGets--; + if (err) + { + errorMessage = getErrorString(err); + self.runtime.trigger(cr.plugins_.LocalStorage.prototype.cnds.OnError, self); + } + else + { + currentKey = keyNoPrefix; + lastValue = value; + if (typeof lastValue === "undefined" || lastValue === null) + lastValue = ""; + self.runtime.trigger(cr.plugins_.LocalStorage.prototype.cnds.OnAnyItemGet, self); + self.runtime.trigger(cr.plugins_.LocalStorage.prototype.cnds.OnItemGet, self); + currentKey = ""; + lastValue = ""; + } + if (self.pendingGets === 0) + { + self.runtime.trigger(cr.plugins_.LocalStorage.prototype.cnds.OnAllGetsComplete, self); + } + }); + }; + Acts.prototype.CheckItemExists = function (keyNoPrefix) + { + if (localForageInitFailed) + { + TriggerStorageError(this, "storage failed to initialise - may be disabled in browser settings"); + return; + } + var keyPrefix = prefix + keyNoPrefix; + var self = this; + localforage["getItem"](keyPrefix, function (err, value) + { + if (err) + { + errorMessage = getErrorString(err); + self.runtime.trigger(cr.plugins_.LocalStorage.prototype.cnds.OnError, self); + } + else + { + currentKey = keyNoPrefix; + if (value === null) // null value indicates key missing + { + lastValue = ""; // prevent ItemValue meaning anything + self.runtime.trigger(cr.plugins_.LocalStorage.prototype.cnds.OnItemMissing, self); + } + else + { + lastValue = value; // make available to ItemValue expression + self.runtime.trigger(cr.plugins_.LocalStorage.prototype.cnds.OnItemExists, self); + } + currentKey = ""; + lastValue = ""; + } + }); + }; + Acts.prototype.RemoveItem = function (keyNoPrefix) + { + if (localForageInitFailed) + { + TriggerStorageError(this, "storage failed to initialise - may be disabled in browser settings"); + return; + } + var keyPrefix = prefix + keyNoPrefix; + var self = this; + localforage["removeItem"](keyPrefix, function (err) + { + debugDataChanged = true; + if (err) + { + errorMessage = getErrorString(err); + self.runtime.trigger(cr.plugins_.LocalStorage.prototype.cnds.OnError, self); + } + else + { + currentKey = keyNoPrefix; + lastValue = ""; + self.runtime.trigger(cr.plugins_.LocalStorage.prototype.cnds.OnAnyItemRemoved, self); + self.runtime.trigger(cr.plugins_.LocalStorage.prototype.cnds.OnItemRemoved, self); + currentKey = ""; + } + }); + }; + Acts.prototype.ClearStorage = function () + { + if (localForageInitFailed) + { + TriggerStorageError(this, "storage failed to initialise - may be disabled in browser settings"); + return; + } + if (is_arcade) + return; + var self = this; + localforage["clear"](function (err) + { + debugDataChanged = true; + if (err) + { + errorMessage = getErrorString(err); + self.runtime.trigger(cr.plugins_.LocalStorage.prototype.cnds.OnError, self); + } + else + { + currentKey = ""; + lastValue = ""; + cr.clearArray(keyNamesList); + self.runtime.trigger(cr.plugins_.LocalStorage.prototype.cnds.OnCleared, self); + } + }); + }; + Acts.prototype.GetAllKeyNames = function () + { + if (localForageInitFailed) + { + TriggerStorageError(this, "storage failed to initialise - may be disabled in browser settings"); + return; + } + var self = this; + localforage["keys"](function (err, keyList) + { + var i, len, k; + if (err) + { + errorMessage = getErrorString(err); + self.runtime.trigger(cr.plugins_.LocalStorage.prototype.cnds.OnError, self); + } + else + { + cr.clearArray(keyNamesList); + for (i = 0, len = keyList.length; i < len; ++i) + { + k = keyList[i]; + if (!hasRequiredPrefix(k)) + continue; + keyNamesList.push(removePrefix(k)); + } + self.runtime.trigger(cr.plugins_.LocalStorage.prototype.cnds.OnAllKeyNamesLoaded, self); + } + }); + }; + pluginProto.acts = new Acts(); + function Exps() {}; + Exps.prototype.ItemValue = function (ret) + { + ret.set_any(lastValue); + }; + Exps.prototype.Key = function (ret) + { + ret.set_string(currentKey); + }; + Exps.prototype.KeyCount = function (ret) + { + ret.set_int(keyNamesList.length); + }; + Exps.prototype.KeyAt = function (ret, i) + { + i = Math.floor(i); + if (i < 0 || i >= keyNamesList.length) + { + ret.set_string(""); + return; + } + ret.set_string(keyNamesList[i]); + }; + Exps.prototype.ErrorMessage = function (ret) + { + ret.set_string(errorMessage); + }; + pluginProto.exps = new Exps(); +}()); +; +; +cr.plugins_.MagiCam = function(runtime) +{ + this.runtime = runtime; +}; +(function () +{ + var CMath = {}; + CMath.lerp = function(a, b, x) + { + return a + (b - a) * x; + }; + CMath.cubic = function(a, b, c, d, x) + { + return this.lerp(this.lerp(this.lerp(a, b, x), this.lerp(b, c, x), x), this.lerp(this.lerp(b, c, x), this.lerp(c, d, x), x), x); + } + CMath.clamp = function(x, min, max) + { + if (x < min) + { + return min; + } + else if (x > max) + { + return max; + } + return x; + }; + function Transition(Type, Duration, Param1, Param2, Param3, Param4) + { + this.type = Type; + this.duration = Duration; + this.param1 = Param1; + this.param2 = Param2; + this.param3 = Param3; + this.param4 = Param4; + this.progress = 0; + } + function Camera(Name, X, Y, Scale, Global) + { + this.global = Global; + this.name = Name; + this.x = X; + this.y = Y; + this.scale = Scale; + this.following = false; + this.followedObjects = []; + this.followedObjectUIDs = []; + this.objectWeights = []; + this.followedObjectIPs = []; + this.followLag = 1; + this.zoomToContain = false; + this.zoomMarginH = 0; + this.zoomMarginV = 0; + this.zoomBoundU = -1; + this.zoomBoundL = -1; + this.transitions = []; + this.moveTransFinished = false; + this.zoomTransFinished = false; + this.isShaking = false; + this.shakeX = 0; + this.shakeY = 0; + this.shakeZoom = 0; + this.shakeTimer = 0; + this.shakeStrength = 0; + this.shakeMaxDeviation = 0; + this.shakeMaxZoomDeviation = 0; + this.shakeLength = 0; + this.shakeBuildTime = 0; + this.shakeDropTime = 0; + } + Camera.prototype.GetName = function() + { + return this.name; + }; + Camera.prototype.GetX = function() + { + return this.x; + }; + Camera.prototype.SetX = function(value) + { + this.x = value; + }; + Camera.prototype.GetY = function() + { + return this.y; + }; + Camera.prototype.SetY = function(value) + { + this.y = value; + }; + Camera.prototype.GetShakeX = function() + { + return this.shakeX; + }; + Camera.prototype.GetShakeY = function() + { + return this.shakeY; + }; + Camera.prototype.SetFollowedObject = function(fObject) + { + this.followedObject = fObject; + }; + Camera.prototype.ShakeCamera = function(dt) + { + if (this.isShaking) + { + this.shakeTimer += dt; + if (this.shakeTimer < this.shakeLength) + { + var shakeStrength = 0; + if (this.shakeTimer < this.shakeBuildTime) + { + shakeStrength = CMath.lerp(0, this.shakeStrength, this.shakeTimer / this.shakeBuildTime); + } + else + { + shakeStrength = this.shakeStrength; + } + if (this.shakeTimer > this.shakeDropTime) + { + shakeStrength = CMath.lerp(this.shakeStrength, 0, (this.shakeTimer - this.shakeDropTime) / (this.shakeLength - this.shakeDropTime)); + } + var shakeAngle = Math.floor(Math.random() * 361) / 57.2958; + var shakeX = CMath.lerp(0, Math.cos(shakeAngle) * this.shakeMaxDeviation, shakeStrength); + var shakeY = CMath.lerp(0, Math.sin(shakeAngle) * this.shakeMaxDeviation, shakeStrength); + var shakeZoom = CMath.lerp(0, (Math.floor(Math.random() * 201 - 100) / 100) * this.shakeMaxZoomDeviation, shakeStrength); + this.shakeX = CMath.lerp(this.shakeX, shakeX, shakeStrength); + this.shakeY = CMath.lerp(this.shakeY, shakeY, shakeStrength); + this.shakeZoom = CMath.lerp(this.shakeZoom, shakeZoom, shakeStrength); + } + else + { + this.isShaking = false; + this.shakeX = 0; + this.shakeY = 0; + this.shakeZoom = 0; + } + } + } + Camera.prototype.ProcessTransitions = function(dt) + { + this.moveTransFinished = false; + this.zoomTransFinished = false; + var transition; + for (var i = 0; i < this.transitions.length; ) + { + transition = this.transitions[i]; + transition.progress = CMath.clamp(transition.progress + (1.0 / transition.duration * dt), 0.0, 1.0); + if (transition.type == "MOVE") + { + this.x = CMath.cubic(transition.param3, transition.param3, transition.param1, transition.param1, transition.progress); + this.y = CMath.cubic(transition.param4, transition.param4, transition.param2, transition.param2, transition.progress); + } + else if (transition.type == "SCALE") + { + this.scale = CMath.cubic(transition.param2, transition.param2, transition.param1, transition.param1, transition.progress); + } + if (transition.progress == 1) + { + if (transition.type == "MOVE") + { + this.moveTransFinished = true; + } + else if (transition.type == "SCALE") + { + this.zoomTransFinished = true; + } + this.transitions.splice(i, 1); + } + else + { + i++; + } + } + }; + Camera.prototype.UpdateCameraTarget = function(dt, targetCamera) + { + for (var i = 0; i < this.transitions.length; i++) + { + var transition = this.transitions[i]; + if (transition.type == "MOVE") + { + transition.param1 = targetCamera.GetX(); + transition.param2 = targetCamera.GetY(); + } + else if (transition.type == "SCALE") + { + transition.param1 = targetCamera.scale; + } + } + }; + Camera.prototype.ProcessFollowing = function(dt, screenWidth, screenHeight, layout) + { + var followed = this.followedObjects; + var followedObjectIPs = this.followedObjectIPs; + if (this.following && followed.length > 0) + { + var tempX = 0, tempY = 0, tempScale = 0; + if (!this.zoomToContain) + { + var sumX = 0, sumY = 0, sumW = 0; + for (var i = 0; i < followed.length; i++) + { + sumX += followed[i].getImagePoint(followedObjectIPs[i], true) * this.objectWeights[i]; + sumY += followed[i].getImagePoint(followedObjectIPs[i], false) * this.objectWeights[i]; + sumW += this.objectWeights[i]; + } + tempX = sumX / sumW; + tempY = sumY / sumW; + } + else + { + var minX = 0, maxX = 0, minY = 0, maxY = 0; + var minXChanged = false, maxXChanged = false, minYChanged = false, maxYChanged = false; + for (var i = 0; i < followed.length; i++) + { + var fObject = followed[i]; + fObject.update_bbox(); + if (minXChanged) + { + minX = Math.min(minX, fObject.bbox.left); + } + else + { + minX = fObject.bbox.left; + minXChanged = true; + } + if (maxXChanged) + { + maxX = Math.max(maxX, fObject.bbox.right); + } + else + { + maxX = fObject.bbox.right; + maxXChanged = true; + } + if (minYChanged) + { + minY = Math.min(minY, fObject.bbox.top); + } + else + { + minY = fObject.bbox.top; + minYChanged = true; + } + if (maxYChanged) + { + maxY = Math.max(maxY, fObject.bbox.bottom); + } + else + { + maxY = fObject.bbox.bottom; + maxYChanged = true; + } + } + var tempXScale = (screenWidth - this.zoomMarginH * 2) / (maxX - minX); + var tempYScale = (screenHeight - this.zoomMarginV * 2) / (maxY - minY); + tempX = CMath.lerp(minX, maxX, 0.5); + tempY = CMath.lerp(minY, maxY, 0.5); + if (this.x < ((screenWidth / 2) / tempXScale)) + { + tempXScale = (screenWidth - this.zoomMarginH) / maxX; + tempX = (screenWidth / tempXScale) / 2; + } + if (this.x > (layout.width - (screenWidth / 2) / tempXScale)) + { + tempXScale = (screenWidth - this.zoomMarginH) / (layout.width - minX); + tempX = layout.width - (screenWidth / tempXScale) / 2; + } + if (this.y < ((screenHeight / 2) / tempYScale)) + { + tempYScale = (screenHeight - this.zoomMarginV) / maxY; + tempY = (screenHeight / tempYScale) / 2; + } + if (this.y > (layout.height - (screenHeight / 2) / tempYScale)) + { + tempYScale = (screenHeight - this.zoomMarginV) / (layout.height - minY); + tempY = layout.height - (screenHeight / tempYScale) / 2; + } + tempScale = Math.min(tempXScale, tempYScale); + if (this.zoomBoundL != -1) + { + if (tempScale < this.zoomBoundL) + { + tempScale = this.zoomBoundL; + } + } + if (this.zoomBoundU != -1) + { + if (tempScale > this.zoomBoundU) + { + tempScale = this.zoomBoundU; + } + } + } + if (this.followLag == 1) + { + this.x = tempX; + this.y = tempY; + if (this.zoomToContain) + { + this.scale = tempScale; + } + } + else + { + var lag = (this.followLag * 4.0 * dt) * Math.sqrt(1.0 / dt); + this.x = CMath.lerp(this.x, tempX, lag); + this.y = CMath.lerp(this.y, tempY, lag); + if (this.zoomToContain) + { + this.scale = CMath.lerp(this.scale, tempScale, lag); + } + } + } + }; + var pluginProto = cr.plugins_.MagiCam.prototype; + pluginProto.Type = function(plugin) + { + this.plugin = plugin; + this.runtime = plugin.runtime; + }; + var typeProto = pluginProto.Type.prototype; + typeProto.onCreate = function() + { + }; + pluginProto.Instance = function(type) + { + this.type = type; + this.runtime = type.runtime; + this.localCameras = []; + this.localCameraCount = 0; + this.localCameraCountOld = 0; + this.transCamera = null; + this.transTarget = null; + this.isSwitchingCameras = false; + this.globalCameras = []; + this.activeCamera = null; + }; + var instanceProto = pluginProto.Instance.prototype; + instanceProto.onCreate = function() + { + this.runtime.tickMe(this); + this.my_timescale = -1.0; + }; + instanceProto.saveToJSON = function () + { + if (null != this.transCamera) + { + this.localCameras.push(this.transCamera); + } + var o = { + "lcc": this.localCameraCount, + "olcc": this.localCameraCountOld, + "alcc": this.localCameras.length, + "agcc": this.globalCameras.length, + "tcnn": (this.transCamera == null ? false : true) + }; + for (var i = 0; i < this.localCameras.length; i++) + { + o["lc" + i + "g"] = this.localCameras[i].global; + o["lc" + i + "n"] = this.localCameras[i].name; + o["lc" + i + "x"] = this.localCameras[i].x; + o["lc" + i + "y"] = this.localCameras[i].y; + o["lc" + i + "s"] = this.localCameras[i].scale; + o["lc" + i + "f"] = this.localCameras[i].following; + o["lc" + i + "foc"] = this.localCameras[i].followedObjects.length; + for (var f = 0; f < this.localCameras[i].followedObjects.length; f++) + { + o["lc" + i + "fo" + f] = this.localCameras[i].followedObjects[f].uid; + } + for (var w = 0; w < this.localCameras[i].objectWeights.length; w++) + { + o["lc" + i + "fow" + w] = this.localCameras[i].objectWeights[w]; + } + for (var ip = 0; ip < this.localCameras[i].followedObjectIPs.length; ip++) + { + o["lc" + i + "foip" + ip] = this.localCameras[i].followedObjectIPs[ip]; + } + o["lc" + i + "fl"] = this.localCameras[i].followLag; + o["lc" + i + "ztc"] = this.localCameras[i].zoomToContain; + o["lc" + i + "zmh"] = this.localCameras[i].zoomMarginH; + o["lc" + i + "zmv"] = this.localCameras[i].zoomMarginV; + o["lc" + i + "zbu"] = this.localCameras[i].zoomBoundU; + o["lc" + i + "zbl"] = this.localCameras[i].zoomBoundL; + o["lc" + i + "tc"] = this.localCameras[i].transitions.length; + for (var t = 0; t < this.localCameras[i].transitions.length; t++) + { + o["lc" + i + "t" + t + "tp"] = this.localCameras[i].transitions[t].type; + o["lc" + i + "t" + t + "d"] = this.localCameras[i].transitions[t].duration; + o["lc" + i + "t" + t + "p1"] = this.localCameras[i].transitions[t].param1; + o["lc" + i + "t" + t + "p2"] = this.localCameras[i].transitions[t].param2; + o["lc" + i + "t" + t + "p3"] = this.localCameras[i].transitions[t].param3; + o["lc" + i + "t" + t + "p4"] = this.localCameras[i].transitions[t].param4; + o["lc" + i + "t" + t + "pr"] = this.localCameras[i].transitions[t].progress; + } + o["lc" + i + "mtf"] = this.localCameras[i].moveTransFinished; + o["lc" + i + "ztf"] = this.localCameras[i].zoomTransFinished; + o["lc" + i + "csis"] = this.localCameras[i].isShaking; + o["lc" + i + "cssx"] = this.localCameras[i].shakeX; + o["lc" + i + "cssy"] = this.localCameras[i].shakeY; + o["lc" + i + "cssz"] = this.localCameras[i].shakeZoom; + o["lc" + i + "csst"] = this.localCameras[i].shakeTimer; + o["lc" + i + "csss"] = this.localCameras[i].shakeStrength; + o["lc" + i + "cssmd"] = this.localCameras[i].shakeMaxDeviation; + o["lc" + i + "cssmzd"] = this.localCameras[i].shakeMaxZoomDeviation; + o["lc" + i + "cssl"] = this.localCameras[i].shakeLength; + o["lc" + i + "cssbt"] = this.localCameras[i].shakeBuildTime; + o["lc" + i + "cssdt"] = this.localCameras[i].shakeDropTime; + } + for (var i = 0; i < this.globalCameras.length; i++) + { + o["gc" + i + "g"] = this.globalCameras[i].global; + o["gc" + i + "n"] = this.globalCameras[i].name; + o["gc" + i + "x"] = this.globalCameras[i].x; + o["gc" + i + "y"] = this.globalCameras[i].y; + o["gc" + i + "s"] = this.globalCameras[i].scale; + o["gc" + i + "f"] = this.globalCameras[i].following; + o["gc" + i + "foc"] = this.globalCameras[i].followedObjects.length; + for (var f = 0; f < this.globalCameras[i].followedObjects.length; f++) + { + o["gc" + i + "fo" + f] = this.globalCameras[i].followedObjects[f].uid; + } + for (var w = 0; w < this.globalCameras[i].objectWeights.length; w++) + { + o["gc" + i + "fow" + w] = this.globalCameras[i].objectWeights[w]; + } + for (var ip = 0; ip < this.globalCameras[i].followedObjectIPs.length; ip++) + { + o["gc" + i + "foip" + ip] = this.globalCameras[i].followedObjectIPs[ip]; + } + o["gc" + i + "fl"] = this.globalCameras[i].followLag; + o["gc" + i + "ztc"] = this.globalCameras[i].zoomToContain; + o["gc" + i + "zmh"] = this.globalCameras[i].zoomMarginH; + o["gc" + i + "zmv"] = this.globalCameras[i].zoomMarginV; + o["gc" + i + "zbu"] = this.globalCameras[i].zoomBoundU; + o["gc" + i + "zbl"] = this.globalCameras[i].zoomBoundL; + o["gc" + i + "tc"] = this.globalCameras[i].transitions.length; + for (var t = 0; t < this.globalCameras[i].transitions.length; t++) + { + o["gc" + i + "t" + t + "tp"] = this.globalCameras[i].transitions[t].type; + o["gc" + i + "t" + t + "d"] = this.globalCameras[i].transitions[t].duration; + o["gc" + i + "t" + t + "p1"] = this.globalCameras[i].transitions[t].param1; + o["gc" + i + "t" + t + "p2"] = this.globalCameras[i].transitions[t].param2; + o["gc" + i + "t" + t + "p3"] = this.globalCameras[i].transitions[t].param3; + o["gc" + i + "t" + t + "p4"] = this.globalCameras[i].transitions[t].param4; + } + o["gc" + i + "mtf"] = this.globalCameras[i].moveTransFinished; + o["gc" + i + "ztf"] = this.globalCameras[i].zoomTransFinished; + o["gc" + i + "csis"] = this.globalCameras[i].isShaking; + o["gc" + i + "cssx"] = this.globalCameras[i].shakeX; + o["gc" + i + "cssy"] = this.globalCameras[i].shakeY; + o["gc" + i + "cssz"] = this.globalCameras[i].shakeZoom; + o["gc" + i + "csst"] = this.globalCameras[i].shakeTimer; + o["gc" + i + "csss"] = this.globalCameras[i].shakeStrength; + o["gc" + i + "cssmd"] = this.globalCameras[i].shakeMaxDeviation; + o["gc" + i + "cssmzd"] = this.globalCameras[i].shakeMaxZoomDeviation; + o["gc" + i + "cssl"] = this.globalCameras[i].shakeLength; + o["gc" + i + "cssbt"] = this.globalCameras[i].shakeBuildTime; + o["gc" + i + "cssdt"] = this.globalCameras[i].shakeDropTime; + } + if (null != this.activeCamera) + { + o["ac"] = this.activeCamera.name; + } + else + { + o["ac"] = "null"; + } + if (null != this.transTarget) + { + o["tt"] = this.transTarget.name; + } + return o; + } + instanceProto.loadFromJSON = function (o) + { + this.localCameras = []; + this.globalCameras = []; + this.localCameraCount = o["lcc"]; + this.localCameraCountOld = o["olcc"]; + var localCamCount = o["alcc"]; + for (var i = 0; i < localCamCount; i++) + { + var tempCam = new Camera("", 0, 0, 0, false); + tempCam.global = o["lc" + i + "g"]; + tempCam.name = o["lc" + i + "n"]; + tempCam.x = o["lc" + i + "x"]; + tempCam.y = o["lc" + i + "y"]; + tempCam.scale = o["lc" + i + "s"]; + tempCam.following = o["lc" + i + "f"]; + var foCount = o["lc" + i + "foc"]; + for (var f = 0; f < foCount; f++) + { + tempCam.followedObjectUIDs.push(o["lc" + i + "fo" + f]); + } + for (var w = 0; w < foCount; w++) + { + tempCam.objectWeights.push(o["lc" + i + "fow" + w]); + } + for (var ip = 0; ip < foCount; ip++) + { + tempCam.followedObjectIPs.push(o["lc" + i + "foip" + ip]); + } + tempCam.followLag = o["lc" + i + "fl"]; + tempCam.zoomToContain = o["lc" + i + "ztc"]; + tempCam.zoomMarginH = o["lc" + i + "zmh"]; + tempCam.zoomMarginV = o["lc" + i + "zmv"]; + tempCam.zoomBoundU = o["lc" + i + "zbu"]; + tempCam.zoomBoundL = o["lc" + i + "zbl"]; + var transCount = o["lc" + i + "tc"]; + for (var t = 0; t < transCount; t++) + { + var tempTrans = new Transition("", 0, 0, 0, 0); + tempTrans.type = o["lc" + i + "t" + t + "tp"]; + tempTrans.duration = o["lc" + i + "t" + t + "d"]; + tempTrans.param1 = o["lc" + i + "t" + t + "p1"]; + tempTrans.param2 = o["lc" + i + "t" + t + "p2"]; + tempTrans.param3 = o["lc" + i + "t" + t + "p3"]; + tempTrans.param4 = o["lc" + i + "t" + t + "p4"]; + tempTrans.progress = o["lc" + i + "t" + t + "pr"]; + tempCam.transitions.push(tempTrans); + } + tempCam.moveTransFinished = o["lc" + i + "mtf"]; + tempCam.zoomTransFinished = o["lc" + i + "ztf"]; + tempCam.isShaking = o["lc" + i + "csis"]; + tempCam.shakeX = o["lc" + i + "cssx"]; + tempCam.shakeY = o["lc" + i + "cssy"]; + tempCam.shakeZoom = o["lc" + i + "cssz"]; + tempCam.shakeTimer = o["lc" + i + "csst"]; + tempCam.shakeStrength = o["lc" + i + "csss"]; + tempCam.shakeMaxDeviation = o["lc" + i + "cssmd"]; + tempCam.shakeMaxZoomDeviation = o["lc" + i + "cssmzd"]; + tempCam.shakeLength = o["lc" + i + "cssl"]; + tempCam.shakeBuildTime = o["lc" + i + "cssbt"]; + tempCam.shakeDropTime = o["lc" + i + "cssdt"]; + this.localCameras.push(tempCam); + } + var globalCamCount = o["agcc"]; + for (var i = 0; i < globalCamCount; i++) + { + var tempCam = new Camera("", 0, 0, 0, false); + tempCam.global = o["gc" + i + "g"]; + tempCam.name = o["gc" + i + "n"]; + tempCam.x = o["gc" + i + "x"]; + tempCam.y = o["gc" + i + "y"]; + tempCam.scale = o["gc" + i + "s"]; + tempCam.following = o["gc" + i + "f"]; + var foCount = o["gc" + i + "foc"]; + for (var f = 0; f < foCount; f++) + { + tempCam.followedObjectUIDs.push(o["gc" + i + "fo" + f]); + } + for (var w = 0; w < foCount; w++) + { + tempCam.objectWeights.push(o["gc" + i + "fow" + w]); + } + for (var ip = 0; ip < foCount; ip++) + { + tempCam.followedObjectIPs.push(o["gc" + i + "foip" + ip]); + } + tempCam.followLag = o["gc" + i + "fl"]; + tempCam.zoomToContain = o["gc" + i + "ztc"]; + tempCam.zoomMarginH = o["gc" + i + "zmh"]; + tempCam.zoomMarginV = o["gc" + i + "zmv"]; + tempCam.zoomBoundU = o["gc" + i + "zbu"]; + tempCam.zoomBoundL = o["gc" + i + "zbl"]; + var transCount = o["gc" + i + "tc"]; + for (var t = 0; t < transCount; t++) + { + var tempTrans = new Transition("", 0, 0, 0, 0); + tempTrans.type = o["gc" + i + "t" + t + "tp"]; + tempTrans.duration = o["gc" + i + "t" + t + "d"]; + tempTrans.param1 = o["gc" + i + "t" + t + "p1"]; + tempTrans.param2 = o["gc" + i + "t" + t + "p2"]; + tempTrans.param3 = o["gc" + i + "t" + t + "p3"]; + tempTrans.param4 = o["gc" + i + "t" + t + "p4"]; + tempCam.transitions.push(tempTrans); + } + tempCam.moveTransFinished = o["gc" + i + "mtf"]; + tempCam.zoomTransFinished = o["gc" + i + "ztf"]; + tempCam.isShaking = o["gc" + i + "csis"]; + tempCam.shakeX = o["gc" + i + "cssx"]; + tempCam.shakeY = o["gc" + i + "cssy"]; + tempCam.shakeZoom = o["gc" + i + "cssz"]; + tempCam.shakeTimer = o["gc" + i + "csst"]; + tempCam.shakeStrength = o["gc" + i + "csss"]; + tempCam.shakeMaxDeviation = o["gc" + i + "cssmd"]; + tempCam.shakeMaxZoomDeviation = o["gc" + i + "cssmzd"]; + tempCam.shakeLength = o["gc" + i + "cssl"]; + tempCam.shakeBuildTime = o["gc" + i + "cssbt"]; + tempCam.shakeDropTime = o["gc" + i + "cssdt"]; + this.globalCameras.push(tempCam); + } + var activeCam = o["ac"]; + if (activeCam == "null") + { + this.activeCamera = null; + } + else + { + this.activeCamera = this.GetCamera(activeCam); + } + var hasTransCam = o["tcnn"]; + if (hasTransCam) + { + this.transCamera = this.localCameras.pop(); + this.transTarget = this.GetCamera(o["tt"]); + } + } + instanceProto.afterLoad = function() + { + for (var i = 0; i < this.localCameras.length; i++) + { + for (var o = 0; o < this.localCameras[i].followedObjectUIDs.length; o++) + { + this.localCameras[i].followedObjects.push(this.runtime.getObjectByUID(this.localCameras[i].followedObjectUIDs[o])); + } + } + for (var i = 0; i < this.globalCameras.length; i++) + { + for (var o = 0; o < this.globalCameras[i].followedObjectUIDs.length; o++) + { + this.globalCameras[i].followedObjects.push(this.runtime.getObjectByUID(this.globalCameras[i].followedObjectUIDs[o])); + } + } + } + instanceProto.onLayoutChange = function() + { + for (var i = 0; i < this.localCameraCountOld; i++) + { + this.localCameras.shift(); + } + this.localCameraCount -= this.localCameraCountOld; + } + instanceProto.tick = function() + { + this.localCameraCountOld = this.localCameraCount; + var dt = this.runtime.getDt(this); + if (dt == 0) + { + dt = 0.1; + } + for (var i = 0; i < this.globalCameras.length; i++) + { + this.globalCameras[i].ProcessTransitions(dt); + this.globalCameras[i].ProcessFollowing(dt, this.runtime.original_width, this.runtime.original_height, this.runtime.running_layout); + this.globalCameras[i].ShakeCamera(dt); + } + for (var i = 0; i < this.localCameras.length; i++) + { + this.localCameras[i].ProcessTransitions(dt); + this.localCameras[i].ProcessFollowing(dt, this.runtime.original_width, this.runtime.original_height, this.runtime.running_layout); + this.localCameras[i].ShakeCamera(dt); + } + if (null != this.transCamera) + { + this.transCamera.UpdateCameraTarget(dt, this.transTarget); + this.transCamera.ProcessTransitions(dt); + if (this.transCamera.moveTransFinished) + { + this.activeCamera = this.transTarget; + this.transCamera = null; + } + } + if (this.activeCamera != null) + { + this.runtime.running_layout.scrollToX(this.activeCamera.GetX() + this.activeCamera.GetShakeX()); + this.runtime.running_layout.scrollToY(this.activeCamera.GetY() + this.activeCamera.GetShakeY()); + this.runtime.running_layout.scale = this.activeCamera.scale + this.activeCamera.shakeZoom; + this.runtime.redraw = true; + } + }; + instanceProto.draw = function(ctx) + { + }; + instanceProto.drawGL = function (glw) + { + }; + instanceProto.GetCamera = function(Name) + { + if (Name == "") + { + return this.activeCamera; + } + for (var i = (this.globalCameras.length - 1) ; i >= 0; i--) + { + if (this.globalCameras[i].GetName() == Name) + { + return this.globalCameras[i]; + } + } + for (var i = (this.localCameras.length - 1); i >= 0; i--) + { + if (this.localCameras[i].GetName() == Name) + { + return this.localCameras[i]; + } + } + return null; + }; + function Cnds() {}; + Cnds.prototype.TransitionFinished = function (CameraName, Transition) + { + var camera = this.GetCamera(CameraName); + if (camera != null) + { + if (Transition == 0) + { + return camera.moveTransFinished; + } + else if (Transition == 1) + { + return camera.zoomTransFinished; + } + } + return false; + }; + Cnds.prototype.TransitionIsInProgress = function (CameraName, Transition) + { + var camera = this.GetCamera(CameraName); + if (camera != null) + { + for (var i = 0; i < camera.transitions.length; i++) + { + if (camera.transitions[i].type == "MOVE" && Transition == 0) + { + return true; + } + else if (camera.transitions[i].type == "SCALE" && Transition == 1) + { + return true; + } + } + } + return false; + }; + pluginProto.cnds = new Cnds(); + function Acts() {}; + Acts.prototype.FollowObject = function (CameraName, FollowedObject, ObjectWeight, ImagePoint) + { + if (!FollowedObject) + { + return; + } + var camera = this.GetCamera(CameraName); + if (camera != null) + { + var followedObject = FollowedObject.getFirstPicked(); + if (camera.global && !FollowedObject.global) + { + alert("MagiCam:\n\nObject not global - global cameras must follow global objects."); + return; + } + camera.followedObjects.push(followedObject); + camera.objectWeights.push(ObjectWeight); + camera.followedObjectIPs.push(ImagePoint); + } + }; + Acts.prototype.SetFollowLag = function (CameraName, FollowLag) + { + var camera = this.GetCamera(CameraName); + if (camera != null) + { + camera.followLag = 1 - FollowLag / 100; + } + }; + Acts.prototype.ZoomToContain = function (CameraName, Zoom, ZoomMarginH, ZoomMarginV, ZoomBoundU, ZoomBoundL) + { + var camera = this.GetCamera(CameraName); + if (camera != null) + { + if (Zoom == 0) + { + camera.zoomToContain = true; + camera.zoomMarginH = ZoomMarginH; + camera.zoomMarginV = ZoomMarginV; + camera.zoomBoundU = ZoomBoundU; + camera.zoomBoundL = ZoomBoundL; + } + else + { + camera.zoomToContain = false; + } + } + }; + Acts.prototype.EnableFollowing = function (CameraName, Following) + { + var camera = this.GetCamera(CameraName); + if (camera != null) + { + if (Following == 0) + { + camera.following = true; + } + else + { + camera.following = false; + } + } + }; + Acts.prototype.UnfollowObject = function (CameraName, FollowedObject) + { + if (!FollowedObject) + { + return; + } + var camera = this.GetCamera(CameraName); + if (camera != null) + { + var followedObject = FollowedObject.getFirstPicked(); + for (var i = 0; i < camera.followedObjects.length; i++) + { + if (camera.followedObjects[i] == followedObject) + { + camera.followedObjects.splice(i, 1); + break; + } + } + } + }; + Acts.prototype.CreateLocalCamera = function (cameraName, cameraX, cameraY, cameraScale, Active) + { + if (cameraName == "") + { + alert("Camera name must not be blank."); + return; + } + this.localCameras.push(new Camera(cameraName, cameraX, cameraY, cameraScale, false)); + this.localCameraCount++; + if (Active == 1) + { + this.activeCamera = this.localCameras[this.localCameras.length - 1]; + this.runtime.running_layout.scale = this.activeCamera.scale; + } + }; + Acts.prototype.CreateGlobalCamera = function (cameraName, cameraX, cameraY, cameraScale, Active) + { + if (cameraName == "") + { + alert("Camera name must not be blank."); + return; + } + else if (this.GetCamera(cameraName) != null) + { + return; + } + this.globalCameras.push(new Camera(cameraName, cameraX, cameraY, cameraScale, true)); + if (Active == 1) + { + this.activeCamera = this.globalCameras[this.globalCameras.length - 1]; + this.runtime.running_layout.scrollToX(this.activeCamera.GetX()); + this.runtime.running_layout.scrollToY(this.activeCamera.GetY()); + this.runtime.running_layout.scale = this.activeCamera.scale; + } + }; + Acts.prototype.SetActiveCamera = function (CameraName) + { + var camera = this.GetCamera(CameraName); + if (camera != null) + { + this.activeCamera = camera; + this.runtime.running_layout.scrollToX(camera.GetX()); + this.runtime.running_layout.scrollToY(camera.GetY()); + this.runtime.running_layout.scale = camera.scale; + } + }; + Acts.prototype.SetScrollSmoothing = function (CameraName) + { + }; + Acts.prototype.SetXPosition = function (CameraName, X) + { + var camera = this.GetCamera(CameraName); + if (camera != null) + { + camera.SetX(X); + } + }; + Acts.prototype.SetYPosition = function (CameraName, Y) + { + var camera = this.GetCamera(CameraName); + if (camera != null) + { + camera.SetY(Y); + } + }; + Acts.prototype.SetPosition = function (CameraName, X, Y) + { + var camera = this.GetCamera(CameraName); + if (camera != null) + { + camera.SetX(X); + camera.SetY(Y); + } + }; + Acts.prototype.SetZoom = function (CameraName, Zoom) + { + var camera = this.GetCamera(CameraName); + if (camera != null) + { + camera.scale = Zoom; + } + }; + Acts.prototype.TransitionToPoint = function (CameraName, X, Y, Duration) + { + var camera = this.GetCamera(CameraName); + if (camera != null) + { + for (var i = 0; i < camera.transitions.length; i++) + { + if (camera.transitions[i].type == "MOVE") + { + camera.transitions.splice(i, 1); + break; + } + } + camera.transitions.push(new Transition("MOVE", Duration, X, Y, camera.GetX(), camera.GetY())); + camera.following = false; + camera.zoomToContain = false; + } + }; + Acts.prototype.TransitionToZoom = function (CameraName, Zoom, Duration) + { + var camera = this.GetCamera(CameraName); + if (camera != null) + { + for (var i = 0; i < camera.transitions.length; i++) + { + if (camera.transitions[i].type == "SCALE") + { + camera.transitions.splice(i, 1); + break; + } + } + camera.transitions.push(new Transition("SCALE", Duration, Zoom, camera.scale, null, null)); + camera.zoomToContain = false; + } + }; + Acts.prototype.TransitionToCamera = function (CameraName, Duration) + { + var camera = this.GetCamera(CameraName); + if (camera != null) + { + this.transTarget = camera; + this.transCamera = new Camera("transCamera", this.activeCamera.GetX(), this.activeCamera.GetY(), this.activeCamera.scale, false); + this.transCamera.transitions.push(new Transition("MOVE", Duration, this.transTarget.GetX(), this.transTarget.GetY(), this.transCamera.GetX(), this.transCamera.GetY())); + this.transCamera.transitions.push(new Transition("SCALE", Duration, this.transTarget.scale, this.transCamera.scale, null, null)); + this.activeCamera = this.transCamera; + this.isSwitchingCameras = true; + } + }; + Acts.prototype.ShakeCamera = function (CameraName, Strength, MaxDeviation, MaxZoomDeviation, BuildLength, DropTime, Duration) + { + var camera = this.GetCamera(CameraName); + if (camera != null) + { + camera.isShaking = true; + camera.shakeStrength = Strength / 100; + camera.shakeMaxDeviation = MaxDeviation; + camera.shakeMaxZoomDeviation = MaxZoomDeviation; + camera.shakeBuildTime = BuildLength; + camera.shakeDropTime = DropTime; + camera.shakeLength = Duration; + camera.shakeTimer = 0; + } + }; + pluginProto.acts = new Acts(); + function Exps() {}; + Exps.prototype.MovementTransitionProgress = function (ret, CameraName) + { + var camera = this.GetCamera(CameraName); + if (null != camera) + { + for (var i = 0; i < camera.transitions.length; i++) + { + if (camera.transitions[i].type == "MOVE") + { + ret.set_float(camera.transitions[i].progress); + return; + } + } + } + ret.set_float(0); + }; + Exps.prototype.ZoomTransitionProgress = function (ret, CameraName) + { + var camera = this.GetCamera(CameraName); + if (null != camera) + { + for (var i = 0; i < camera.transitions.length; i++) + { + if (camera.transitions[i].type == "SCALE") + { + ret.set_float(camera.transitions[i].progress); + return; + } + } + } + ret.set_float(0); + }; + Exps.prototype.GetX = function (ret, CameraName) + { + var camera = this.GetCamera(CameraName); + if (null != camera) + { + ret.set_float(camera.x); + return; + } + ret.set_float(0); + }; + Exps.prototype.GetY = function (ret, CameraName) + { + var camera = this.GetCamera(CameraName); + if (null != camera) + { + ret.set_float(camera.y); + return; + } + ret.set_float(0); + }; + Exps.prototype.GetZoom = function (ret, CameraName) + { + var camera = this.GetCamera(CameraName); + if (null != camera) + { + ret.set_float(camera.scale); + return; + } + ret.set_float(0); + }; + Exps.prototype.GetActiveCamera = function (ret) + { + if (null != this.activeCamera) + { + ret.set_string(this.activeCamera.name); + return; + } + ret.set_string("null"); + }; + pluginProto.exps = new Exps(); +}()); +; +; +cr.plugins_.Mouse = function(runtime) +{ + this.runtime = runtime; +}; +(function () +{ + var pluginProto = cr.plugins_.Mouse.prototype; + pluginProto.Type = function(plugin) + { + this.plugin = plugin; + this.runtime = plugin.runtime; + }; + var typeProto = pluginProto.Type.prototype; + typeProto.onCreate = function() + { + }; + pluginProto.Instance = function(type) + { + this.type = type; + this.runtime = type.runtime; + this.buttonMap = new Array(4); // mouse down states + this.mouseXcanvas = 0; // mouse position relative to canvas + this.mouseYcanvas = 0; + this.triggerButton = 0; + this.triggerType = 0; + this.triggerDir = 0; + this.handled = false; + }; + var instanceProto = pluginProto.Instance.prototype; + instanceProto.onCreate = function() + { + var self = this; + if (!this.runtime.isDomFree) + { + jQuery(document).mousemove( + function(info) { + self.onMouseMove(info); + } + ); + jQuery(document).mousedown( + function(info) { + self.onMouseDown(info); + } + ); + jQuery(document).mouseup( + function(info) { + self.onMouseUp(info); + } + ); + jQuery(document).dblclick( + function(info) { + self.onDoubleClick(info); + } + ); + var wheelevent = function(info) { + self.onWheel(info); + }; + document.addEventListener("mousewheel", wheelevent, false); + document.addEventListener("DOMMouseScroll", wheelevent, false); + } + }; + var dummyoffset = {left: 0, top: 0}; + instanceProto.onMouseMove = function(info) + { + var offset = this.runtime.isDomFree ? dummyoffset : jQuery(this.runtime.canvas).offset(); + this.mouseXcanvas = info.pageX - offset.left; + this.mouseYcanvas = info.pageY - offset.top; + }; + instanceProto.mouseInGame = function () + { + if (this.runtime.fullscreen_mode > 0) + return true; + return this.mouseXcanvas >= 0 && this.mouseYcanvas >= 0 + && this.mouseXcanvas < this.runtime.width && this.mouseYcanvas < this.runtime.height; + }; + instanceProto.onMouseDown = function(info) + { + if (!this.mouseInGame()) + return; + this.buttonMap[info.which] = true; + this.runtime.isInUserInputEvent = true; + this.runtime.trigger(cr.plugins_.Mouse.prototype.cnds.OnAnyClick, this); + this.triggerButton = info.which - 1; // 1-based + this.triggerType = 0; // single click + this.runtime.trigger(cr.plugins_.Mouse.prototype.cnds.OnClick, this); + this.runtime.trigger(cr.plugins_.Mouse.prototype.cnds.OnObjectClicked, this); + this.runtime.isInUserInputEvent = false; + }; + instanceProto.onMouseUp = function(info) + { + if (!this.buttonMap[info.which]) + return; + if (this.runtime.had_a_click && !this.runtime.isMobile) + info.preventDefault(); + this.runtime.had_a_click = true; + this.buttonMap[info.which] = false; + this.runtime.isInUserInputEvent = true; + this.triggerButton = info.which - 1; // 1-based + this.runtime.trigger(cr.plugins_.Mouse.prototype.cnds.OnRelease, this); + this.runtime.isInUserInputEvent = false; + }; + instanceProto.onDoubleClick = function(info) + { + if (!this.mouseInGame()) + return; + info.preventDefault(); + this.runtime.isInUserInputEvent = true; + this.triggerButton = info.which - 1; // 1-based + this.triggerType = 1; // double click + this.runtime.trigger(cr.plugins_.Mouse.prototype.cnds.OnClick, this); + this.runtime.trigger(cr.plugins_.Mouse.prototype.cnds.OnObjectClicked, this); + this.runtime.isInUserInputEvent = false; + }; + instanceProto.onWheel = function (info) + { + var delta = info.wheelDelta ? info.wheelDelta : info.detail ? -info.detail : 0; + this.triggerDir = (delta < 0 ? 0 : 1); + this.handled = false; + this.runtime.isInUserInputEvent = true; + this.runtime.trigger(cr.plugins_.Mouse.prototype.cnds.OnWheel, this); + this.runtime.isInUserInputEvent = false; + if (this.handled && cr.isCanvasInputEvent(info)) + info.preventDefault(); + }; + instanceProto.onWindowBlur = function () + { + var i, len; + for (i = 0, len = this.buttonMap.length; i < len; ++i) + { + if (!this.buttonMap[i]) + continue; + this.buttonMap[i] = false; + this.triggerButton = i - 1; + this.runtime.trigger(cr.plugins_.Mouse.prototype.cnds.OnRelease, this); + } + }; + function Cnds() {}; + Cnds.prototype.OnClick = function (button, type) + { + return button === this.triggerButton && type === this.triggerType; + }; + Cnds.prototype.OnAnyClick = function () + { + return true; + }; + Cnds.prototype.IsButtonDown = function (button) + { + return this.buttonMap[button + 1]; // jQuery uses 1-based buttons for some reason + }; + Cnds.prototype.OnRelease = function (button) + { + return button === this.triggerButton; + }; + Cnds.prototype.IsOverObject = function (obj) + { + var cnd = this.runtime.getCurrentCondition(); + var mx = this.mouseXcanvas; + var my = this.mouseYcanvas; + return cr.xor(this.runtime.testAndSelectCanvasPointOverlap(obj, mx, my, cnd.inverted), cnd.inverted); + }; + Cnds.prototype.OnObjectClicked = function (button, type, obj) + { + if (button !== this.triggerButton || type !== this.triggerType) + return false; // wrong click type + return this.runtime.testAndSelectCanvasPointOverlap(obj, this.mouseXcanvas, this.mouseYcanvas, false); + }; + Cnds.prototype.OnWheel = function (dir) + { + this.handled = true; + return dir === this.triggerDir; + }; + pluginProto.cnds = new Cnds(); + function Acts() {}; + var lastSetCursor = null; + Acts.prototype.SetCursor = function (c) + { + if (this.runtime.isDomFree) + return; + var cursor_style = ["auto", "pointer", "text", "crosshair", "move", "help", "wait", "none"][c]; + if (lastSetCursor === cursor_style) + return; // redundant + lastSetCursor = cursor_style; + document.body.style.cursor = cursor_style; + }; + Acts.prototype.SetCursorSprite = function (obj) + { + if (this.runtime.isDomFree || this.runtime.isMobile || !obj) + return; + var inst = obj.getFirstPicked(); + if (!inst || !inst.curFrame) + return; + var frame = inst.curFrame; + if (lastSetCursor === frame) + return; // already set this frame + lastSetCursor = frame; + var datauri = frame.getDataUri(); + var cursor_style = "url(" + datauri + ") " + Math.round(frame.hotspotX * frame.width) + " " + Math.round(frame.hotspotY * frame.height) + ", auto"; + document.body.style.cursor = ""; + document.body.style.cursor = cursor_style; + }; + pluginProto.acts = new Acts(); + function Exps() {}; + Exps.prototype.X = function (ret, layerparam) + { + var layer, oldScale, oldZoomRate, oldParallaxX, oldAngle; + if (cr.is_undefined(layerparam)) + { + layer = this.runtime.getLayerByNumber(0); + oldScale = layer.scale; + oldZoomRate = layer.zoomRate; + oldParallaxX = layer.parallaxX; + oldAngle = layer.angle; + layer.scale = 1; + layer.zoomRate = 1.0; + layer.parallaxX = 1.0; + layer.angle = 0; + ret.set_float(layer.canvasToLayer(this.mouseXcanvas, this.mouseYcanvas, true)); + layer.scale = oldScale; + layer.zoomRate = oldZoomRate; + layer.parallaxX = oldParallaxX; + layer.angle = oldAngle; + } + else + { + if (cr.is_number(layerparam)) + layer = this.runtime.getLayerByNumber(layerparam); + else + layer = this.runtime.getLayerByName(layerparam); + if (layer) + ret.set_float(layer.canvasToLayer(this.mouseXcanvas, this.mouseYcanvas, true)); + else + ret.set_float(0); + } + }; + Exps.prototype.Y = function (ret, layerparam) + { + var layer, oldScale, oldZoomRate, oldParallaxY, oldAngle; + if (cr.is_undefined(layerparam)) + { + layer = this.runtime.getLayerByNumber(0); + oldScale = layer.scale; + oldZoomRate = layer.zoomRate; + oldParallaxY = layer.parallaxY; + oldAngle = layer.angle; + layer.scale = 1; + layer.zoomRate = 1.0; + layer.parallaxY = 1.0; + layer.angle = 0; + ret.set_float(layer.canvasToLayer(this.mouseXcanvas, this.mouseYcanvas, false)); + layer.scale = oldScale; + layer.zoomRate = oldZoomRate; + layer.parallaxY = oldParallaxY; + layer.angle = oldAngle; + } + else + { + if (cr.is_number(layerparam)) + layer = this.runtime.getLayerByNumber(layerparam); + else + layer = this.runtime.getLayerByName(layerparam); + if (layer) + ret.set_float(layer.canvasToLayer(this.mouseXcanvas, this.mouseYcanvas, false)); + else + ret.set_float(0); + } + }; + Exps.prototype.AbsoluteX = function (ret) + { + ret.set_float(this.mouseXcanvas); + }; + Exps.prototype.AbsoluteY = function (ret) + { + ret.set_float(this.mouseYcanvas); + }; + pluginProto.exps = new Exps(); +}()); +; +; +cr.plugins_.NinePatch = function(runtime) +{ + this.runtime = runtime; +}; +(function () +{ + var pluginProto = cr.plugins_.NinePatch.prototype; + pluginProto.Type = function(plugin) + { + this.plugin = plugin; + this.runtime = plugin.runtime; + }; + var typeProto = pluginProto.Type.prototype; + typeProto.onCreate = function() + { + if (this.is_family) + return; + this.texture_img = new Image(); + this.texture_img.cr_filesize = this.texture_filesize; + this.runtime.waitForImageLoad(this.texture_img, this.texture_file); + this.fillPattern = null; + this.leftPattern = null; + this.rightPattern = null; + this.topPattern = null; + this.bottomPattern = null; + this.webGL_texture = null; + this.webGL_fillTexture = null; + this.webGL_leftTexture = null; + this.webGL_rightTexture = null; + this.webGL_topTexture = null; + this.webGL_bottomTexture = null; + }; + typeProto.onLostWebGLContext = function () + { + if (this.is_family) + return; + this.webGL_texture = null; + this.webGL_fillTexture = null; + this.webGL_leftTexture = null; + this.webGL_rightTexture = null; + this.webGL_topTexture = null; + this.webGL_bottomTexture = null; + }; + typeProto.onRestoreWebGLContext = function () + { + if (this.is_family || !this.instances.length) + return; + if (!this.webGL_texture) + { + this.webGL_texture = this.runtime.glwrap.loadTexture(this.texture_img, true, this.runtime.linearSampling, this.texture_pixelformat); + } + }; + typeProto.unloadTextures = function () + { + if (this.is_family || this.instances.length) + return; + if (this.runtime.glwrap) + { + this.runtime.glwrap.deleteTexture(this.webGL_texture); + this.runtime.glwrap.deleteTexture(this.webGL_fillTexture); + this.runtime.glwrap.deleteTexture(this.webGL_leftTexture); + this.runtime.glwrap.deleteTexture(this.webGL_rightTexture); + this.runtime.glwrap.deleteTexture(this.webGL_topTexture); + this.runtime.glwrap.deleteTexture(this.webGL_bottomTexture); + this.webGL_texture = null; + this.webGL_fillTexture = null; + this.webGL_leftTexture = null; + this.webGL_rightTexture = null; + this.webGL_topTexture = null; + this.webGL_bottomTexture = null; + } + }; + typeProto.slicePatch = function (x1, y1, x2, y2) + { + var tmpcanvas = document.createElement("canvas"); + var w = x2 - x1; + var h = y2 - y1; + tmpcanvas.width = w; + tmpcanvas.height = h; + var tmpctx = tmpcanvas.getContext("2d"); + tmpctx.drawImage(this.texture_img, x1, y1, w, h, 0, 0, w, h); + return tmpcanvas; + }; + typeProto.createPatch = function (lm, rm, tm, bm) + { + var iw = this.texture_img.width; + var ih = this.texture_img.height; + var re = iw - rm; + var be = ih - bm; + if (this.runtime.glwrap) + { + if (this.webGL_fillTexture) + return; // already created + var glwrap = this.runtime.glwrap; + var ls = this.runtime.linearSampling; + var tf = this.texture_pixelformat; + if (re > lm && be > tm) + this.webGL_fillTexture = glwrap.loadTexture(this.slicePatch(lm, tm, re, be), true, ls, tf); + if (lm > 0 && be > tm) + this.webGL_leftTexture = glwrap.loadTexture(this.slicePatch(0, tm, lm, be), true, ls, tf, "repeat-y"); + if (rm > 0 && be > tm) + this.webGL_rightTexture = glwrap.loadTexture(this.slicePatch(re, tm, iw, be), true, ls, tf, "repeat-y"); + if (tm > 0 && re > lm) + this.webGL_topTexture = glwrap.loadTexture(this.slicePatch(lm, 0, re, tm), true, ls, tf, "repeat-x"); + if (bm > 0 && re > lm) + this.webGL_bottomTexture = glwrap.loadTexture(this.slicePatch(lm, be, re, ih), true, ls, tf, "repeat-x"); + } + else + { + if (this.fillPattern) + return; // already created + var ctx = this.runtime.ctx; + if (re > lm && be > tm) + this.fillPattern = ctx.createPattern(this.slicePatch(lm, tm, re, be), "repeat"); + if (lm > 0 && be > tm) + this.leftPattern = ctx.createPattern(this.slicePatch(0, tm, lm, be), "repeat"); + if (rm > 0 && be > tm) + this.rightPattern = ctx.createPattern(this.slicePatch(re, tm, iw, be), "repeat"); + if (tm > 0 && re > lm) + this.topPattern = ctx.createPattern(this.slicePatch(lm, 0, re, tm), "repeat"); + if (bm > 0 && re > lm) + this.bottomPattern = ctx.createPattern(this.slicePatch(lm, be, re, ih), "repeat"); + } + }; + pluginProto.Instance = function(type) + { + this.type = type; + this.runtime = type.runtime; + }; + var instanceProto = pluginProto.Instance.prototype; + instanceProto.onCreate = function() + { + this.leftMargin = this.properties[0]; + this.rightMargin = this.properties[1]; + this.topMargin = this.properties[2]; + this.bottomMargin = this.properties[3]; + this.edges = this.properties[4]; // 0=tile, 1=stretch + this.fill = this.properties[5]; // 0=tile, 1=stretch, 2=transparent + this.visible = (this.properties[6] === 0); // 0=visible, 1=invisible + this.seamless = (this.properties[8] !== 0); // 1px overdraw to hide seams + if (this.recycled) + this.rcTex.set(0, 0, 0, 0); + else + this.rcTex = new cr.rect(0, 0, 0, 0); + if (this.runtime.glwrap) + { + if (!this.type.webGL_texture) + { + this.type.webGL_texture = this.runtime.glwrap.loadTexture(this.type.texture_img, false, this.runtime.linearSampling, this.type.texture_pixelformat); + } + } + this.type.createPatch(this.leftMargin, this.rightMargin, this.topMargin, this.bottomMargin); + }; + function drawPatternProperly(ctx, pattern, pw, ph, drawX, drawY, w, h, ox, oy) + { + ctx.save(); + ctx.fillStyle = pattern; + var offX = drawX % pw; + var offY = drawY % ph; + if (offX < 0) + offX += pw; + if (offY < 0) + offY += ph; + ctx.translate(offX + ox, offY + oy); + ctx.fillRect(drawX - offX - ox, drawY - offY - oy, w, h); + ctx.restore(); + }; + instanceProto.draw = function(ctx) + { + var img = this.type.texture_img; + var lm = this.leftMargin; + var rm = this.rightMargin; + var tm = this.topMargin; + var bm = this.bottomMargin; + var iw = img.width; + var ih = img.height; + var re = iw - rm; + var be = ih - bm; + ctx.globalAlpha = this.opacity; + ctx.save(); + var myx = this.x; + var myy = this.y; + var myw = this.width; + var myh = this.height; + if (this.runtime.pixel_rounding) + { + myx = Math.round(myx); + myy = Math.round(myy); + } + var drawX = -(this.hotspotX * this.width); + var drawY = -(this.hotspotY * this.height); + var offX = drawX % iw; + var offY = drawY % ih; + if (offX < 0) + offX += iw; + if (offY < 0) + offY += ih; + ctx.translate(myx + offX, myy + offY); + var x = drawX - offX; + var y = drawY - offY; + var s = (this.seamless ? 1 : 0); + if (lm > 0 && tm > 0) + ctx.drawImage(img, 0, 0, lm + s, tm + s, x, y, lm + s, tm + s); + if (rm > 0 && tm > 0) + ctx.drawImage(img, re - s, 0, rm + s, tm + s, x + myw - rm - s, y, rm + s, tm + s); + if (rm > 0 && bm > 0) + ctx.drawImage(img, re - s, be - s, rm + s, bm + s, x + myw - rm - s, y + myh - bm - s, rm + s, bm + s); + if (lm > 0 && bm > 0) + ctx.drawImage(img, 0, be - s, lm + s, bm + s, x, y + myh - bm - s, lm + s, bm + s); + if (this.edges === 0) // tile edges + { + var off = (this.fill === 2 ? 0 : s); + if (lm > 0 && be > tm) + drawPatternProperly(ctx, this.type.leftPattern, lm, be - tm, x, y + tm, lm + off, myh - tm - bm, 0, 0); + if (rm > 0 && be > tm) + drawPatternProperly(ctx, this.type.rightPattern, rm, be - tm, x + myw - rm - off, y + tm, rm + off, myh - tm - bm, off, 0); + if (tm > 0 && re > lm) + drawPatternProperly(ctx, this.type.topPattern, re - lm, tm, x + lm, y, myw - lm - rm, tm + off, 0, 0); + if (bm > 0 && re > lm) + drawPatternProperly(ctx, this.type.bottomPattern, re - lm, bm, x + lm, y + myh - bm - off, myw - lm - rm, bm + off, 0, off); + } + else if (this.edges === 1) // stretch edges + { + if (lm > 0 && be > tm && myh - tm - bm > 0) + ctx.drawImage(img, 0, tm, lm, be - tm, x, y + tm, lm, myh - tm - bm); + if (rm > 0 && be > tm && myh - tm - bm > 0) + ctx.drawImage(img, re, tm, rm, be - tm, x + myw - rm, y + tm, rm, myh - tm - bm); + if (tm > 0 && re > lm && myw - lm - rm > 0) + ctx.drawImage(img, lm, 0, re - lm, tm, x + lm, y, myw - lm - rm, tm); + if (bm > 0 && re > lm && myw - lm - rm > 0) + ctx.drawImage(img, lm, be, re - lm, bm, x + lm, y + myh - bm, myw - lm - rm, bm); + } + if (be > tm && re > lm) + { + if (this.fill === 0) // tile fill + { + drawPatternProperly(ctx, this.type.fillPattern, re - lm, be - tm, x + lm, y + tm, myw - lm - rm, myh - tm - bm, 0, 0); + } + else if (this.fill === 1) // stretch fill + { + if (myw - lm - rm > 0 && myh - tm - bm > 0) + { + ctx.drawImage(img, lm, tm, re - lm, be - tm, x + lm, y + tm, myw - lm - rm, myh - tm - bm); + } + } + } + ctx.restore(); + }; + instanceProto.drawPatch = function(glw, tex, sx, sy, sw, sh, dx, dy, dw, dh) + { + glw.setTexture(tex); + var rcTex = this.rcTex; + rcTex.left = sx / tex.c2width; + rcTex.top = sy / tex.c2height; + rcTex.right = (sx + sw) / tex.c2width; + rcTex.bottom = (sy + sh) / tex.c2height; + glw.quadTex(dx, dy, dx + dw, dy, dx + dw, dy + dh, dx, dy + dh, rcTex); + }; + instanceProto.tilePatch = function(glw, tex, dx, dy, dw, dh, ox, oy) + { + glw.setTexture(tex); + var rcTex = this.rcTex; + rcTex.left = -ox / tex.c2width; + rcTex.top = -oy / tex.c2height; + rcTex.right = (dw - ox) / tex.c2width; + rcTex.bottom = (dh - oy) / tex.c2height; + glw.quadTex(dx, dy, dx + dw, dy, dx + dw, dy + dh, dx, dy + dh, rcTex); + }; + instanceProto.drawGL_earlyZPass = function(glw) + { + this.drawGL(glw); + }; + instanceProto.drawGL = function(glw) + { + var lm = this.leftMargin; + var rm = this.rightMargin; + var tm = this.topMargin; + var bm = this.bottomMargin; + var iw = this.type.texture_img.width; + var ih = this.type.texture_img.height; + var re = iw - rm; + var be = ih - bm; + glw.setOpacity(this.opacity); + var rcTex = this.rcTex; + var q = this.bquad; + var myx = q.tlx; + var myy = q.tly; + var myw = this.width; + var myh = this.height; + if (this.runtime.pixel_rounding) + { + myx = Math.round(myx); + myy = Math.round(myy); + } + var s = (this.seamless ? 1 : 0); + if (lm > 0 && tm > 0) + this.drawPatch(glw, this.type.webGL_texture, 0, 0, lm + s, tm + s, myx, myy, lm + s, tm + s); + if (rm > 0 && tm > 0) + this.drawPatch(glw, this.type.webGL_texture, re - s, 0, rm + s, tm + s, myx + myw - rm - s, myy, rm + s, tm + s); + if (rm > 0 && bm > 0) + this.drawPatch(glw, this.type.webGL_texture, re - s, be - s, rm + s, bm + s, myx + myw - rm - s, myy + myh - bm - s, rm + s, bm + s); + if (lm > 0 && bm > 0) + this.drawPatch(glw, this.type.webGL_texture, 0, be - s, lm + s, bm + s, myx, myy + myh - bm - s, lm + s, bm + s); + if (this.edges === 0) // tile edges + { + var off = (this.fill === 2 ? 0 : s); + if (lm > 0 && be > tm) + this.tilePatch(glw, this.type.webGL_leftTexture, myx, myy + tm, lm + off, myh - tm - bm, 0, 0); + if (rm > 0 && be > tm) + this.tilePatch(glw, this.type.webGL_rightTexture, myx + myw - rm - off, myy + tm, rm + off, myh - tm - bm, off, 0); + if (tm > 0 && re > lm) + this.tilePatch(glw, this.type.webGL_topTexture, myx + lm, myy, myw - lm - rm, tm + off, 0, 0); + if (bm > 0 && re > lm) + this.tilePatch(glw, this.type.webGL_bottomTexture, myx + lm, myy + myh - bm - off, myw - lm - rm, bm + off, 0, off); + } + else if (this.edges === 1) // stretch edges + { + if (lm > 0 && be > tm) + this.drawPatch(glw, this.type.webGL_texture, 0, tm, lm, be - tm, myx, myy + tm, lm, myh - tm - bm); + if (rm > 0 && be > tm) + this.drawPatch(glw, this.type.webGL_texture, re, tm, rm, be - tm, myx + myw - rm, myy + tm, rm, myh - tm - bm); + if (tm > 0 && re > lm) + this.drawPatch(glw, this.type.webGL_texture, lm, 0, re - lm, tm, myx + lm, myy, myw - lm - rm, tm); + if (bm > 0 && re > lm) + this.drawPatch(glw, this.type.webGL_texture, lm, be, re - lm, bm, myx + lm, myy + myh - bm, myw - lm - rm, bm); + } + if (be > tm && re > lm) + { + if (this.fill === 0) // tile fill + { + this.tilePatch(glw, this.type.webGL_fillTexture, myx + lm, myy + tm, myw - lm - rm, myh - tm - bm, 0, 0); + } + else if (this.fill === 1) // stretch fill + { + this.drawPatch(glw, this.type.webGL_texture, lm, tm, re - lm, be - tm, myx + lm, myy + tm, myw - lm - rm, myh - tm - bm); + } + } + }; + function Cnds() {}; + Cnds.prototype.OnURLLoaded = function () + { + return true; + }; + pluginProto.cnds = new Cnds(); + function Acts() {}; + Acts.prototype.SetEffect = function (effect) + { + this.blend_mode = effect; + this.compositeOp = cr.effectToCompositeOp(effect); + cr.setGLBlend(this, effect, this.runtime.gl); + this.runtime.redraw = true; + }; + pluginProto.acts = new Acts(); + function Exps() {}; + pluginProto.exps = new Exps(); +}()); +; +; +cr.plugins_.NodeWebkit = function(runtime) +{ + this.runtime = runtime; +}; +(function () +{ + var isNWjs = false; + var path = null; + var fs = null; + var os = null; + var gui = null; + var child_process = null; + var process = null; + var nw_appfolder = ""; + var nw_userfolder = ""; + var nw_projectfilesfolder = ""; + var slash = "\\"; + var filelist = []; + var droppedfile = ""; + var chosenpath = ""; + var pluginProto = cr.plugins_.NodeWebkit.prototype; + pluginProto.Type = function(plugin) + { + this.plugin = plugin; + this.runtime = plugin.runtime; + }; + var typeProto = pluginProto.Type.prototype; + typeProto.onCreate = function() + { + }; + pluginProto.Instance = function(type) + { + this.type = type; + this.runtime = type.runtime; + }; + var instanceProto = pluginProto.Instance.prototype; + instanceProto.onCreate = function() + { + isNWjs = this.runtime.isNWjs; + var self = this; + if (isNWjs) + { + path = require("path"); + fs = require("fs"); + os = require("os"); + child_process = require("child_process"); + process = window["process"] || nw["process"]; + if (process["platform"] !== "win32") + slash = "/"; + nw_appfolder = path["dirname"](process["execPath"]) + slash; + nw_userfolder = os["homedir"]() + slash; + gui = window["nwgui"]; + nw_projectfilesfolder = process["mainModule"]["filename"]; + var lastSlash = Math.max(nw_projectfilesfolder.lastIndexOf("/"), nw_projectfilesfolder.lastIndexOf("\\")); + if (lastSlash !== -1) + nw_projectfilesfolder = nw_projectfilesfolder.substr(0, lastSlash + 1); + window["ondrop"] = function (e) + { + e.preventDefault(); + for (var i = 0; i < e["dataTransfer"]["files"].length; ++i) + { + droppedfile = e["dataTransfer"]["files"][i]["path"]; + self.runtime.trigger(cr.plugins_.NodeWebkit.prototype.cnds.OnFileDrop, self); + } + return false; + }; + var openFileDialogElem = document.getElementById("c2nwOpenFileDialog"); + openFileDialogElem["onchange"] = function (e) { + chosenpath = openFileDialogElem.value; + self.runtime.trigger(cr.plugins_.NodeWebkit.prototype.cnds.OnOpenDlg, self); + try { + openFileDialogElem.value = null; + } + catch (e) {} + }; + openFileDialogElem["oncancel"] = function () { + self.runtime.trigger(cr.plugins_.NodeWebkit.prototype.cnds.OnOpenDlgCancel, self); + }; + var chooseFolderDialogElem = document.getElementById("c2nwChooseFolderDialog"); + chooseFolderDialogElem["onchange"] = function (e) { + chosenpath = chooseFolderDialogElem.value; + self.runtime.trigger(cr.plugins_.NodeWebkit.prototype.cnds.OnFolderDlg, self); + try { + chooseFolderDialogElem.value = null; + } + catch (e) {} + }; + chooseFolderDialogElem["oncancel"] = function () { + self.runtime.trigger(cr.plugins_.NodeWebkit.prototype.cnds.OnFolderDlgCancel, self); + }; + var saveDialogElem = document.getElementById("c2nwSaveDialog"); + saveDialogElem["onchange"] = function (e) { + chosenpath = saveDialogElem.value; + self.runtime.trigger(cr.plugins_.NodeWebkit.prototype.cnds.OnSaveDlg, self); + try { + saveDialogElem.value = null; + } + catch (e) {} + }; + saveDialogElem["oncancel"] = function () { + self.runtime.trigger(cr.plugins_.NodeWebkit.prototype.cnds.OnSaveDlgCancel, self); + }; + } + }; + instanceProto.onDestroy = function () + { + }; + instanceProto.saveToJSON = function () + { + return { + }; + }; + instanceProto.loadFromJSON = function (o) + { + }; + function Cnds() {}; + Cnds.prototype.PathExists = function (path_) + { + if (isNWjs) + return fs["existsSync"](path_); + else + return false; + }; + Cnds.prototype.OnFileDrop = function () + { + return true; + }; + Cnds.prototype.OnOpenDlg = function () + { + return true; + }; + Cnds.prototype.OnFolderDlg = function () + { + return true; + }; + Cnds.prototype.OnSaveDlg = function () + { + return true; + }; + Cnds.prototype.OnOpenDlgCancel = function () + { + return true; + }; + Cnds.prototype.OnFolderDlgCancel = function () + { + return true; + }; + Cnds.prototype.OnSaveDlgCancel = function () + { + return true; + }; + pluginProto.cnds = new Cnds(); + function Acts() {}; + Acts.prototype.WriteFile = function (path_, contents_) + { + if (!isNWjs) + return; + try { + fs["writeFileSync"](path_, contents_, {"encoding": "utf8"}); + } + catch (e) + {} + }; + Acts.prototype.RenameFile = function (old_, new_) + { + if (!isNWjs) + return; + try { + fs["renameSync"](old_, new_); + } + catch (e) + {} + }; + Acts.prototype.DeleteFile = function (path_) + { + if (!isNWjs) + return; + try { + fs["unlinkSync"](path_); + } + catch (e) + {} + }; + Acts.prototype.CopyFile = function (path_, dest_) + { + if (!isNWjs || path_ === dest_) + return; + try { + var contents = fs["readFileSync"](path_, {"flags": "rb"}); + fs["writeFileSync"](dest_, contents, {"flags": "wb"}); + } + catch (e) + {} + }; + Acts.prototype.MoveFile = function (path_, dest_) + { + if (!isNWjs || path_ === dest_) + return; + try { + var contents = fs["readFileSync"](path_, {"flags": "rb"}); + fs["writeFileSync"](dest_, contents, {"flags": "wb"}); + if (fs["existsSync"](dest_)) + fs["unlinkSync"](path_); + } + catch (e) + {} + }; + Acts.prototype.RunFile = function (path_) + { + if (!isNWjs) + return; + child_process["exec"](path_, function() {}); + }; + Acts.prototype.ShellOpen = function (path_) + { + if (!isNWjs) + return; + nw["Shell"]["openItem"](path_); + }; + Acts.prototype.OpenBrowser = function (url_) + { + if (!isNWjs) + return; + var opener; + switch (process.platform) { + case "win32": + opener = 'start ""'; + break; + case "darwin": + opener = 'open'; + break; + default: + opener = path["join"](__dirname, "../vendor/xdg-open"); + break; + } + child_process["exec"](opener + ' "' + url_.replace(/"/, '\\\"') + '"'); + }; + Acts.prototype.CreateFolder = function (path_) + { + if (!isNWjs) + return; + try { + fs["mkdirSync"](path_); + } + catch (e) + {} + }; + Acts.prototype.AppendFile = function (path_, contents_) + { + if (!isNWjs) + return; + try { + fs["appendFileSync"](path_, contents_, {"encoding": "utf8"}); + } + catch (e) + {} + }; + Acts.prototype.ListFiles = function (path_) + { + if (!isNWjs) + return; + try { + filelist = fs["readdirSync"](path_); + } + catch (err) + { + filelist = []; + console.warn("Error listing files at '" + path_ + "': ", err); + } + if (!filelist) + filelist = []; + }; + Acts.prototype.ShowOpenDlg = function (accept_) + { + if (!isNWjs) + return; + var dlg = jQuery("#c2nwOpenFileDialog"); + dlg.attr("accept", accept_); + dlg.trigger("click"); + }; + Acts.prototype.ShowFolderDlg = function (accept_) + { + if (!isNWjs) + return; + jQuery("#c2nwChooseFolderDialog").trigger("click"); + }; + Acts.prototype.ShowSaveDlg = function (accept_) + { + if (!isNWjs) + return; + var dlg = jQuery("#c2nwSaveDialog"); + dlg.attr("accept", accept_); + dlg.trigger("click"); + }; + Acts.prototype.SetWindowX = function (x_) + { + if (!isNWjs || !gui) + return; + gui["Window"]["get"]()["x"] = x_; + }; + Acts.prototype.SetWindowY = function (y_) + { + if (!isNWjs || !gui) + return; + gui["Window"]["get"]()["y"] = y_; + }; + Acts.prototype.SetWindowWidth = function (w_) + { + if (!isNWjs || !gui) + return; + gui["Window"]["get"]()["width"] = w_; + }; + Acts.prototype.SetWindowHeight = function (h_) + { + if (!isNWjs || !gui) + return; + gui["Window"]["get"]()["height"] = h_; + }; + Acts.prototype.SetWindowTitle = function (str) + { + if (!isNWjs || !gui) + return; + gui["Window"]["get"]()["title"] = str; + document.title = str; + }; + Acts.prototype.WindowMinimize = function () + { + if (!isNWjs || !gui) + return; + var win = gui["Window"]["get"](); + setTimeout(function () { + win["minimize"](); + }, 100); + }; + Acts.prototype.WindowMaximize = function () + { + if (!isNWjs || !gui) + return; + var win = gui["Window"]["get"](); + setTimeout(function () { + win["maximize"](); + }, 100); + }; + Acts.prototype.WindowUnmaximize = function () + { + if (!isNWjs || !gui) + return; + var win = gui["Window"]["get"](); + setTimeout(function () { + win["unmaximize"](); + }, 100); + }; + Acts.prototype.WindowRestore = function () + { + if (!isNWjs || !gui) + return; + var win = gui["Window"]["get"](); + setTimeout(function () { + win["restore"](); + }, 100); + }; + Acts.prototype.WindowRequestAttention = function (request_) + { + if (!isNWjs || !gui) + return; + gui["Window"]["get"]()["requestAttention"](request_ ? 3 : 0); + }; + Acts.prototype.WindowSetMaxSize = function (w, h) + { + if (!isNWjs || !gui) + return; + gui["Window"]["get"]()["setMaximumSize"](w, h); + }; + Acts.prototype.WindowSetMinSize = function (w, h) + { + if (!isNWjs || !gui) + return; + gui["Window"]["get"]()["setMinimumSize"](w, h); + }; + Acts.prototype.WindowSetResizable = function (x) + { + if (!isNWjs || !gui) + return; + gui["Window"]["get"]()["setResizable"](x !== 0); + }; + Acts.prototype.WindowSetAlwaysOnTop = function (x) + { + if (!isNWjs || !gui) + return; + gui["Window"]["get"]()["setAlwaysOnTop"](x !== 0); + }; + Acts.prototype.ShowDevTools = function () + { + if (!isNWjs || !gui) + return; + gui["Window"]["get"]()["showDevTools"](); + }; + Acts.prototype.SetClipboardText = function (str) + { + if (!isNWjs || !gui) + return; + gui["Clipboard"]["get"]()["set"](str); + }; + Acts.prototype.ClearClipboard = function () + { + if (!isNWjs || !gui) + return; + gui["Clipboard"]["get"]()["clear"](); + }; + pluginProto.acts = new Acts(); + function Exps() {}; + Exps.prototype.AppFolder = function (ret) + { + ret.set_string(nw_appfolder); + }; + Exps.prototype.AppFolderURL = function (ret) + { + ret.set_string("file://" + nw_appfolder); + }; + Exps.prototype.ProjectFilesFolder = function (ret) + { + ret.set_string(nw_projectfilesfolder); + }; + Exps.prototype.ProjectFilesFolderURL = function (ret) + { + ret.set_string("file://" + nw_projectfilesfolder); + }; + Exps.prototype.UserFolder = function (ret) + { + ret.set_string(nw_userfolder); + }; + Exps.prototype.ReadFile = function (ret, path_) + { + if (!isNWjs) + { + ret.set_string(""); + return; + } + var contents = ""; + try { + contents = fs["readFileSync"](path_, {"encoding": "utf8"}); + } + catch (e) {} + ret.set_string(contents); + }; + Exps.prototype.FileSize = function (ret, path_) + { + if (!isNWjs) + { + ret.set_int(0); + return; + } + var size = 0; + try { + var stat = fs["statSync"](path_); + if (stat) + size = stat["size"] || 0; + } + catch (e) {} + ret.set_int(size); + }; + Exps.prototype.ListCount = function (ret) + { + ret.set_int(filelist.length); + }; + Exps.prototype.ListAt = function (ret, index) + { + index = Math.floor(index); + if (index < 0 || index >= filelist.length) + ret.set_string(""); + else + ret.set_string(filelist[index]); + }; + Exps.prototype.DroppedFile = function (ret) + { + ret.set_string(droppedfile); + }; + Exps.prototype.ChosenPath = function (ret) + { + ret.set_string(chosenpath); + }; + Exps.prototype.WindowX = function (ret) + { + ret.set_int((isNWjs && gui) ? gui["Window"]["get"]()["x"] : 0); + }; + Exps.prototype.WindowY = function (ret) + { + ret.set_int((isNWjs && gui) ? gui["Window"]["get"]()["y"] : 0); + }; + Exps.prototype.WindowWidth = function (ret) + { + ret.set_int((isNWjs && gui) ? gui["Window"]["get"]()["width"] : 0); + }; + Exps.prototype.WindowHeight = function (ret) + { + ret.set_int((isNWjs && gui) ? gui["Window"]["get"]()["height"] : 0); + }; + Exps.prototype.WindowTitle = function (ret) + { + ret.set_string((isNWjs && gui) ? (gui["Window"]["get"]()["title"] || "") : 0); + }; + Exps.prototype.ClipboardText = function (ret) + { + ret.set_string((isNWjs && gui) ? (gui["Clipboard"]["get"]()["get"]() || "") : 0); + }; + pluginProto.exps = new Exps(); +}()); +; +; +cr.plugins_.Particles = function(runtime) +{ + this.runtime = runtime; +}; +(function () +{ + var pluginProto = cr.plugins_.Particles.prototype; + pluginProto.Type = function(plugin) + { + this.plugin = plugin; + this.runtime = plugin.runtime; + }; + var typeProto = pluginProto.Type.prototype; + typeProto.onCreate = function() + { + if (this.is_family) + return; + this.texture_img = new Image(); + this.texture_img.cr_filesize = this.texture_filesize; + this.webGL_texture = null; + this.runtime.waitForImageLoad(this.texture_img, this.texture_file); + }; + typeProto.onLostWebGLContext = function () + { + if (this.is_family) + return; + this.webGL_texture = null; + }; + typeProto.onRestoreWebGLContext = function () + { + if (this.is_family || !this.instances.length) + return; + if (!this.webGL_texture) + { + this.webGL_texture = this.runtime.glwrap.loadTexture(this.texture_img, true, this.runtime.linearSampling, this.texture_pixelformat); + } + }; + typeProto.loadTextures = function () + { + if (this.is_family || this.webGL_texture || !this.runtime.glwrap) + return; + this.webGL_texture = this.runtime.glwrap.loadTexture(this.texture_img, true, this.runtime.linearSampling, this.texture_pixelformat); + }; + typeProto.unloadTextures = function () + { + if (this.is_family || this.instances.length || !this.webGL_texture) + return; + this.runtime.glwrap.deleteTexture(this.webGL_texture); + this.webGL_texture = null; + }; + typeProto.preloadCanvas2D = function (ctx) + { + ctx.drawImage(this.texture_img, 0, 0); + }; + function Particle(owner) + { + this.owner = owner; + this.active = false; + this.x = 0; + this.y = 0; + this.speed = 0; + this.angle = 0; + this.opacity = 1; + this.grow = 0; + this.size = 0; + this.gs = 0; // gravity speed + this.age = 0; + cr.seal(this); + }; + Particle.prototype.init = function () + { + var owner = this.owner; + this.x = owner.x - (owner.xrandom / 2) + (Math.random() * owner.xrandom); + this.y = owner.y - (owner.yrandom / 2) + (Math.random() * owner.yrandom); + this.speed = owner.initspeed - (owner.speedrandom / 2) + (Math.random() * owner.speedrandom); + this.angle = owner.angle - (owner.spraycone / 2) + (Math.random() * owner.spraycone); + this.opacity = owner.initopacity; + this.size = owner.initsize - (owner.sizerandom / 2) + (Math.random() * owner.sizerandom); + this.grow = owner.growrate - (owner.growrandom / 2) + (Math.random() * owner.growrandom); + this.gs = 0; + this.age = 0; + }; + Particle.prototype.tick = function (dt) + { + var owner = this.owner; + this.x += Math.cos(this.angle) * this.speed * dt; + this.y += Math.sin(this.angle) * this.speed * dt; + this.y += this.gs * dt; + this.speed += owner.acc * dt; + this.size += this.grow * dt; + this.gs += owner.g * dt; + this.age += dt; + if (this.size < 1) + { + this.active = false; + return; + } + if (owner.lifeanglerandom !== 0) + this.angle += (Math.random() * owner.lifeanglerandom * dt) - (owner.lifeanglerandom * dt / 2); + if (owner.lifespeedrandom !== 0) + this.speed += (Math.random() * owner.lifespeedrandom * dt) - (owner.lifespeedrandom * dt / 2); + if (owner.lifeopacityrandom !== 0) + { + this.opacity += (Math.random() * owner.lifeopacityrandom * dt) - (owner.lifeopacityrandom * dt / 2); + if (this.opacity < 0) + this.opacity = 0; + else if (this.opacity > 1) + this.opacity = 1; + } + if (owner.destroymode <= 1 && this.age >= owner.timeout) + { + this.active = false; + } + if (owner.destroymode === 2 && this.speed <= 0) + { + this.active = false; + } + }; + Particle.prototype.draw = function (ctx) + { + var curopacity = this.owner.opacity * this.opacity; + if (curopacity === 0) + return; + if (this.owner.destroymode === 0) + curopacity *= 1 - (this.age / this.owner.timeout); + ctx.globalAlpha = curopacity; + var drawx = this.x - this.size / 2; + var drawy = this.y - this.size / 2; + if (this.owner.runtime.pixel_rounding) + { + drawx = (drawx + 0.5) | 0; + drawy = (drawy + 0.5) | 0; + } + ctx.drawImage(this.owner.type.texture_img, drawx, drawy, this.size, this.size); + }; + Particle.prototype.drawGL = function (glw) + { + var curopacity = this.owner.opacity * this.opacity; + if (this.owner.destroymode === 0) + curopacity *= 1 - (this.age / this.owner.timeout); + var drawsize = this.size; + var scaleddrawsize = drawsize * this.owner.particlescale; + var drawx = this.x - drawsize / 2; + var drawy = this.y - drawsize / 2; + if (this.owner.runtime.pixel_rounding) + { + drawx = (drawx + 0.5) | 0; + drawy = (drawy + 0.5) | 0; + } + if (scaleddrawsize < 1 || curopacity === 0) + return; + if (scaleddrawsize < glw.minPointSize || scaleddrawsize > glw.maxPointSize) + { + glw.setOpacity(curopacity); + glw.quad(drawx, drawy, drawx + drawsize, drawy, drawx + drawsize, drawy + drawsize, drawx, drawy + drawsize); + } + else + glw.point(this.x, this.y, scaleddrawsize, curopacity); + }; + Particle.prototype.left = function () + { + return this.x - this.size / 2; + }; + Particle.prototype.right = function () + { + return this.x + this.size / 2; + }; + Particle.prototype.top = function () + { + return this.y - this.size / 2; + }; + Particle.prototype.bottom = function () + { + return this.y + this.size / 2; + }; + pluginProto.Instance = function(type) + { + this.type = type; + this.runtime = type.runtime; + }; + var instanceProto = pluginProto.Instance.prototype; + var deadparticles = []; + instanceProto.onCreate = function() + { + var props = this.properties; + this.rate = props[0]; + this.spraycone = cr.to_radians(props[1]); + this.spraytype = props[2]; // 0 = continuous, 1 = one-shot + this.spraying = true; // for continuous mode only + this.initspeed = props[3]; + this.initsize = props[4]; + this.initopacity = props[5] / 100.0; + this.growrate = props[6]; + this.xrandom = props[7]; + this.yrandom = props[8]; + this.speedrandom = props[9]; + this.sizerandom = props[10]; + this.growrandom = props[11]; + this.acc = props[12]; + this.g = props[13]; + this.lifeanglerandom = props[14]; + this.lifespeedrandom = props[15]; + this.lifeopacityrandom = props[16]; + this.destroymode = props[17]; // 0 = fade, 1 = timeout, 2 = stopped + this.timeout = props[18]; + this.particleCreateCounter = 0; + this.particlescale = 1; + this.particleBoxLeft = this.x; + this.particleBoxTop = this.y; + this.particleBoxRight = this.x; + this.particleBoxBottom = this.y; + this.add_bbox_changed_callback(function (self) { + self.bbox.set(self.particleBoxLeft, self.particleBoxTop, self.particleBoxRight, self.particleBoxBottom); + self.bquad.set_from_rect(self.bbox); + self.bbox_changed = false; + self.update_collision_cell(); + self.update_render_cell(); + }); + if (!this.recycled) + this.particles = []; + this.runtime.tickMe(this); + this.type.loadTextures(); + if (this.spraytype === 1) + { + for (var i = 0; i < this.rate; i++) + this.allocateParticle().opacity = 0; + } + this.first_tick = true; // for re-init'ing one-shot particles on first tick so they assume any new angle/position + }; + instanceProto.saveToJSON = function () + { + var o = { + "r": this.rate, + "sc": this.spraycone, + "st": this.spraytype, + "s": this.spraying, + "isp": this.initspeed, + "isz": this.initsize, + "io": this.initopacity, + "gr": this.growrate, + "xr": this.xrandom, + "yr": this.yrandom, + "spr": this.speedrandom, + "szr": this.sizerandom, + "grnd": this.growrandom, + "acc": this.acc, + "g": this.g, + "lar": this.lifeanglerandom, + "lsr": this.lifespeedrandom, + "lor": this.lifeopacityrandom, + "dm": this.destroymode, + "to": this.timeout, + "pcc": this.particleCreateCounter, + "ft": this.first_tick, + "p": [] + }; + var i, len, p; + var arr = o["p"]; + for (i = 0, len = this.particles.length; i < len; i++) + { + p = this.particles[i]; + arr.push([p.x, p.y, p.speed, p.angle, p.opacity, p.grow, p.size, p.gs, p.age]); + } + return o; + }; + instanceProto.loadFromJSON = function (o) + { + this.rate = o["r"]; + this.spraycone = o["sc"]; + this.spraytype = o["st"]; + this.spraying = o["s"]; + this.initspeed = o["isp"]; + this.initsize = o["isz"]; + this.initopacity = o["io"]; + this.growrate = o["gr"]; + this.xrandom = o["xr"]; + this.yrandom = o["yr"]; + this.speedrandom = o["spr"]; + this.sizerandom = o["szr"]; + this.growrandom = o["grnd"]; + this.acc = o["acc"]; + this.g = o["g"]; + this.lifeanglerandom = o["lar"]; + this.lifespeedrandom = o["lsr"]; + this.lifeopacityrandom = o["lor"]; + this.destroymode = o["dm"]; + this.timeout = o["to"]; + this.particleCreateCounter = o["pcc"]; + this.first_tick = o["ft"]; + deadparticles.push.apply(deadparticles, this.particles); + cr.clearArray(this.particles); + var i, len, p, d; + var arr = o["p"]; + for (i = 0, len = arr.length; i < len; i++) + { + p = this.allocateParticle(); + d = arr[i]; + p.x = d[0]; + p.y = d[1]; + p.speed = d[2]; + p.angle = d[3]; + p.opacity = d[4]; + p.grow = d[5]; + p.size = d[6]; + p.gs = d[7]; + p.age = d[8]; + } + }; + instanceProto.onDestroy = function () + { + deadparticles.push.apply(deadparticles, this.particles); + cr.clearArray(this.particles); + }; + instanceProto.allocateParticle = function () + { + var p; + if (deadparticles.length) + { + p = deadparticles.pop(); + p.owner = this; + } + else + p = new Particle(this); + this.particles.push(p); + p.active = true; + return p; + }; + instanceProto.tick = function() + { + var dt = this.runtime.getDt(this); + var i, len, p, n, j; + if (this.spraytype === 0 && this.spraying) + { + this.particleCreateCounter += dt * this.rate; + n = cr.floor(this.particleCreateCounter); + this.particleCreateCounter -= n; + for (i = 0; i < n; i++) + { + p = this.allocateParticle(); + p.init(); + } + } + this.particleBoxLeft = this.x; + this.particleBoxTop = this.y; + this.particleBoxRight = this.x; + this.particleBoxBottom = this.y; + for (i = 0, j = 0, len = this.particles.length; i < len; i++) + { + p = this.particles[i]; + this.particles[j] = p; + this.runtime.redraw = true; + if (this.spraytype === 1 && this.first_tick) + p.init(); + p.tick(dt); + if (!p.active) + { + deadparticles.push(p); + continue; + } + if (p.left() < this.particleBoxLeft) + this.particleBoxLeft = p.left(); + if (p.right() > this.particleBoxRight) + this.particleBoxRight = p.right(); + if (p.top() < this.particleBoxTop) + this.particleBoxTop = p.top(); + if (p.bottom() > this.particleBoxBottom) + this.particleBoxBottom = p.bottom(); + j++; + } + cr.truncateArray(this.particles, j); + this.set_bbox_changed(); + this.first_tick = false; + if (this.spraytype === 1 && this.particles.length === 0) + this.runtime.DestroyInstance(this); + }; + instanceProto.draw = function (ctx) + { + var i, len, p, layer = this.layer; + for (i = 0, len = this.particles.length; i < len; i++) + { + p = this.particles[i]; + if (p.right() >= layer.viewLeft && p.bottom() >= layer.viewTop && p.left() <= layer.viewRight && p.top() <= layer.viewBottom) + { + p.draw(ctx); + } + } + }; + instanceProto.drawGL = function (glw) + { + this.particlescale = this.layer.getScale(); + glw.setTexture(this.type.webGL_texture); + var i, len, p, layer = this.layer; + for (i = 0, len = this.particles.length; i < len; i++) + { + p = this.particles[i]; + if (p.right() >= layer.viewLeft && p.bottom() >= layer.viewTop && p.left() <= layer.viewRight && p.top() <= layer.viewBottom) + { + p.drawGL(glw); + } + } + }; + function Cnds() {}; + Cnds.prototype.IsSpraying = function () + { + return this.spraying; + }; + pluginProto.cnds = new Cnds(); + function Acts() {}; + Acts.prototype.SetSpraying = function (set_) + { + this.spraying = (set_ !== 0); + }; + Acts.prototype.SetEffect = function (effect) + { + this.blend_mode = effect; + this.compositeOp = cr.effectToCompositeOp(effect); + cr.setGLBlend(this, effect, this.runtime.gl); + this.runtime.redraw = true; + }; + Acts.prototype.SetRate = function (x) + { + this.rate = x; + var diff, i; + if (this.spraytype === 1 && this.first_tick) + { + if (x < this.particles.length) + { + diff = this.particles.length - x; + for (i = 0; i < diff; i++) + deadparticles.push(this.particles.pop()); + } + else if (x > this.particles.length) + { + diff = x - this.particles.length; + for (i = 0; i < diff; i++) + this.allocateParticle().opacity = 0; + } + } + }; + Acts.prototype.SetSprayCone = function (x) + { + this.spraycone = cr.to_radians(x); + }; + Acts.prototype.SetInitSpeed = function (x) + { + this.initspeed = x; + }; + Acts.prototype.SetInitSize = function (x) + { + this.initsize = x; + }; + Acts.prototype.SetInitOpacity = function (x) + { + this.initopacity = x / 100; + }; + Acts.prototype.SetGrowRate = function (x) + { + this.growrate = x; + }; + Acts.prototype.SetXRandomiser = function (x) + { + this.xrandom = x; + }; + Acts.prototype.SetYRandomiser = function (x) + { + this.yrandom = x; + }; + Acts.prototype.SetSpeedRandomiser = function (x) + { + this.speedrandom = x; + }; + Acts.prototype.SetSizeRandomiser = function (x) + { + this.sizerandom = x; + }; + Acts.prototype.SetGrowRateRandomiser = function (x) + { + this.growrandom = x; + }; + Acts.prototype.SetParticleAcc = function (x) + { + this.acc = x; + }; + Acts.prototype.SetGravity = function (x) + { + this.g = x; + }; + Acts.prototype.SetAngleRandomiser = function (x) + { + this.lifeanglerandom = x; + }; + Acts.prototype.SetLifeSpeedRandomiser = function (x) + { + this.lifespeedrandom = x; + }; + Acts.prototype.SetOpacityRandomiser = function (x) + { + this.lifeopacityrandom = x; + }; + Acts.prototype.SetTimeout = function (x) + { + this.timeout = x; + }; + pluginProto.acts = new Acts(); + function Exps() {}; + Exps.prototype.ParticleCount = function (ret) + { + ret.set_int(this.particles.length); + }; + Exps.prototype.Rate = function (ret) + { + ret.set_float(this.rate); + }; + Exps.prototype.SprayCone = function (ret) + { + ret.set_float(cr.to_degrees(this.spraycone)); + }; + Exps.prototype.InitSpeed = function (ret) + { + ret.set_float(this.initspeed); + }; + Exps.prototype.InitSize = function (ret) + { + ret.set_float(this.initsize); + }; + Exps.prototype.InitOpacity = function (ret) + { + ret.set_float(this.initopacity * 100); + }; + Exps.prototype.InitGrowRate = function (ret) + { + ret.set_float(this.growrate); + }; + Exps.prototype.XRandom = function (ret) + { + ret.set_float(this.xrandom); + }; + Exps.prototype.YRandom = function (ret) + { + ret.set_float(this.yrandom); + }; + Exps.prototype.InitSpeedRandom = function (ret) + { + ret.set_float(this.speedrandom); + }; + Exps.prototype.InitSizeRandom = function (ret) + { + ret.set_float(this.sizerandom); + }; + Exps.prototype.InitGrowRandom = function (ret) + { + ret.set_float(this.growrandom); + }; + Exps.prototype.ParticleAcceleration = function (ret) + { + ret.set_float(this.acc); + }; + Exps.prototype.Gravity = function (ret) + { + ret.set_float(this.g); + }; + Exps.prototype.ParticleAngleRandom = function (ret) + { + ret.set_float(this.lifeanglerandom); + }; + Exps.prototype.ParticleSpeedRandom = function (ret) + { + ret.set_float(this.lifespeedrandom); + }; + Exps.prototype.ParticleOpacityRandom = function (ret) + { + ret.set_float(this.lifeopacityrandom); + }; + Exps.prototype.Timeout = function (ret) + { + ret.set_float(this.timeout); + }; + pluginProto.exps = new Exps(); +}()); +function c3JSONtoC2JSON(c3json) { + try { + c3json = JSON.parse(c3json) + } catch (error) { + return "" + } + var result = '{' + + '""c2array"": true,' + + '""size"": [2,' + c3json.length + ', 1],' + + '""data"":' + data0 = '' + data1 = '' + for (var i = 0; i < c3json.length; i++) { + var element = c3json[i]; + data0 += '[' + (element[0]) + '],' + data1 += '[""' + (element[1]) + '""],' + } + data0 = data0.substring(0, data0.length - 1) + data1 = data1.substring(0, data1.length - 1) + result += "[[" + data0 + "],[" + data1 + "]]}" + return result +} +/* global cr,log,assert2 */ +/* jshint globalstrict: true */ +/* jshint strict: true */ +; +; +var jText = ''; +cr.plugins_.SkymenSFPlusPLus = function(runtime) +{ + this.runtime = runtime; +}; +(function () +{ + var pluginProto = cr.plugins_.SkymenSFPlusPLus.prototype; + pluginProto.onCreate = function () + { + }; + pluginProto.Type = function(plugin) + { + this.plugin = plugin; + this.runtime = plugin.runtime; + }; + var typeProto = pluginProto.Type.prototype; + typeProto.onCreate = function() + { + if (this.is_family) + return; + this.texture_img = new Image(); + this.texture_img["idtkLoadDisposed"] = true; + this.texture_img.src = this.texture_file; + this.runtime.wait_for_textures.push(this.texture_img); + this.webGL_texture = null; + }; + typeProto.onLostWebGLContext = function () + { + if (this.is_family) + return; + this.webGL_texture = null; + }; + typeProto.onRestoreWebGLContext = function () + { + if (this.is_family || !this.instances.length) + return; + if (!this.webGL_texture) + { + this.webGL_texture = this.runtime.glwrap.loadTexture(this.texture_img, false, this.runtime.linearSampling, this.texture_pixelformat); + } + var i, len; + for (i = 0, len = this.instances.length; i < len; i++) + this.instances[i].webGL_texture = this.webGL_texture; + }; + typeProto.unloadTextures = function () + { + if (this.is_family || this.instances.length || !this.webGL_texture) + return; + this.runtime.glwrap.deleteTexture(this.webGL_texture); + this.webGL_texture = null; + }; + typeProto.preloadCanvas2D = function (ctx) + { + try { + ctx.drawImage(this.texture_img, 0, 0); + } catch (error) { + this.texture_img.onload = function () { + ctx.drawImage(this.texture_img, 0, 0); + } + } + }; + pluginProto.Instance = function(type) + { + this.type = type; + this.runtime = type.runtime; + }; + var instanceProto = pluginProto.Instance.prototype; + instanceProto.onDestroy = function() + { + freeAllLines (this.lines); + freeAllClip (this.clipList); + freeAllClipUV(this.clipUV); + cr.wipe(this.characterWidthList); + }; + instanceProto.onCreate = function() + { + this.texture_img = this.type.texture_img; + this.characterWidth = this.properties[0]; + this.characterHeight = this.properties[1]; + this.characterSet = this.properties[2]; + this.text = this.properties[3]; + this.characterScale = this.properties[4]; + this.visible = (this.properties[5] === 0); // 0=visible, 1=invisible + this.clamp = (this.properties[14] === 0); //0=Yes, 1=No + this.halign = this.clamp? cr.clamp(this.properties[6],0,100)/100 : this.properties[6]/100; // 0=left, 1=center, 2=right + this.valign = this.clamp? cr.clamp(this.properties[7],0,100)/100 : this.properties[7]/100; // 0=top, 1=center, 2=bottom + this.wrapbyword = (this.properties[9] === 0); // 0=word, 1=character, 2 = None + this.nowrap = (this.properties[9] === 2); // 0=word, 1=character, 2 = None + this.characterSpacing = this.properties[10]; + this.lineHeight = this.properties[11]; + this.textWidth = 0; + this.textHeight = 0; + this.charWidthJSON = this.properties[12]; + this.spaceWidth = this.properties[13]; + this.charPos = {"data":[0]}; + this.charPosProcessed = [[[0]]]; + this.lastValue = 0; + jText = this.charWidthJSON; + if (this.recycled) + { + this.lines.length = 0; + cr.wipe(this.clipList); + cr.wipe(this.clipUV); + cr.wipe(this.characterWidthList); + } + else + { + this.lines = []; + this.clipList = {}; + this.clipUV = {}; + this.characterWidthList = {}; + } + try{ + if(this.charWidthJSON){ + if(this.charWidthJSON.indexOf('""c2array""') !== -1) { + var jStr = jQuery.parseJSON(this.charWidthJSON.replace(/""/g,'"')); + var l = jStr.size[1]; + for(var s = 0; s < l; s++) { + var cs = jStr.data[1][s][0]; + var w = jStr.data[0][s][0]; + for(var c = 0; c < cs.length; c++) { + this.characterWidthList[cs.charAt(c)] = w + } + } + } else { + var jStr = jQuery.parseJSON(this.charWidthJSON); + var l = jStr.length; + for(var s = 0; s < l; s++) { + var cs = jStr[s][1]; + var w = jStr[s][0]; + for(var c = 0; c < cs.length; c++) { + this.characterWidthList[cs.charAt(c)] = w + } + } + } + } + if(this.spaceWidth !== -1) { + this.characterWidthList[' '] = this.spaceWidth; + } + } + catch(e){ + if(window.console && window.console.log) { + window.console.log('SpriteFont+ Failure: ' + e); + } + } + this.text_changed = true; + this.lastwrapwidth = this.width; + if (this.runtime.glwrap) + { + if (!this.type.webGL_texture) + { + this.type.webGL_texture = this.runtime.glwrap.loadTexture(this.type.texture_img, false, this.runtime.linearSampling, this.type.texture_pixelformat); + } + this.webGL_texture = this.type.webGL_texture; + } + this.SplitSheet(); + }; + instanceProto.saveToJSON = function () + { + var save = { + "t": this.text, + "csc": this.characterScale, + "csp": this.characterSpacing, + "lh": this.lineHeight, + "tw": this.textWidth, + "th": this.textHeight, + "lrt": this.last_render_tick, + "ha": this.halign, + "va": this.valign, + "clamp": this.clamp, + "wbw": this.wrapbyword, + "nw": this.nowrap, + "charpos": this.charPos, + "charpospro": this.charPosProcessed, + "lastvalue": this.lastValue, + "cw": {} + }; + for (var ch in this.characterWidthList) + save["cw"][ch] = this.characterWidthList[ch]; + return save; + }; + instanceProto.loadFromJSON = function (o) + { + this.text = o["t"]; + this.characterScale = o["csc"]; + this.characterSpacing = o["csp"]; + this.lineHeight = o["lh"]; + this.textWidth = o["tw"]; + this.textHeight = o["th"]; + this.halign = o["ha"]; + this.valign = o["va"]; + this.clamp = o["clamp"]; + this.nowrap = o["nw"]; + this.wrapbyword = o["wbw"]; + this.charPos = o["charpos"]; + this.charPosProcessed = o["charpospro"]; + this.lastValue = o["lastvalue"] + for(var ch in o["cw"]) + this.characterWidthList[ch] = o["cw"][ch]; + this.text_changed = true; + this.lastwrapwidth = this.width; + }; + function trimRight(text) + { + return text.replace(/\s\s*$/, ''); + } + var MAX_CACHE_SIZE = 1000; + function alloc(cache,Constructor) + { + if (cache.length) + return cache.pop(); + else + return new Constructor(); + } + function free(cache,data) + { + if (cache.length < MAX_CACHE_SIZE) + { + cache.push(data); + } + } + function freeAll(cache,dataList,isArray) + { + if (isArray) { + var i, len; + for (i = 0, len = dataList.length; i < len; i++) + { + free(cache,dataList[i]); + } + dataList.length = 0; + } else { + var prop; + for(prop in dataList) { + if(Object.prototype.hasOwnProperty.call(dataList,prop)) { + free(cache,dataList[prop]); + delete dataList[prop]; + } + } + } + } + function addLine(inst,lineIndex,cur_line) { + var lines = inst.lines; + var line; + cur_line = trimRight(cur_line); + if (lineIndex >= lines.length) + lines.push(allocLine()); + line = lines[lineIndex]; + line.text = cur_line; + line.width = inst.measureWidth(cur_line); + inst.textWidth = cr.max(inst.textWidth,line.width); + } + var linesCache = []; + function allocLine() { return alloc(linesCache,Object); } + function freeLine(l) { free(linesCache,l); } + function freeAllLines(arr) { freeAll(linesCache,arr,true); } + function addClip(obj,property,x,y,w,h) { + if (obj[property] === undefined) { + obj[property] = alloc(clipCache,Object); + } + obj[property].x = x; + obj[property].y = y; + obj[property].w = w; + obj[property].h = h; + } + var clipCache = []; + function allocClip() { return alloc(clipCache,Object); } + function freeAllClip(obj) { freeAll(clipCache,obj,false);} + function addClipUV(obj,property,left,top,right,bottom) { + if (obj[property] === undefined) { + obj[property] = alloc(clipUVCache,cr.rect); + } + obj[property].left = left; + obj[property].top = top; + obj[property].right = right; + obj[property].bottom = bottom; + } + var clipUVCache = []; + function allocClipUV() { return alloc(clipUVCache,cr.rect);} + function freeAllClipUV(obj) { freeAll(clipUVCache,obj,false);} + instanceProto.SplitSheet = function() { + var texture = this.texture_img; + var texWidth = texture.width; + var texHeight = texture.height; + var charWidth = this.characterWidth; + var charHeight = this.characterHeight; + var charU = charWidth /texWidth; + var charV = charHeight/texHeight; + var charSet = this.characterSet ; + var cols = Math.floor(texWidth/charWidth); + var rows = Math.floor(texHeight/charHeight); + for ( var c = 0; c < charSet.length; c++) { + if (c >= cols * rows) break; + var x = c%cols; + var y = Math.floor(c/cols); + var letter = charSet.charAt(c); + if (this.runtime.glwrap) { + addClipUV( + this.clipUV, letter, + x * charU , + y * charV , + (x+1) * charU , + (y+1) * charV + ); + } else { + addClip( + this.clipList, letter, + x * charWidth, + y * charHeight, + charWidth, + charHeight + ); + } + } + }; + /* + * Word-Wrapping + */ + var wordsCache = []; + pluginProto.TokeniseWords = function (text) + { + wordsCache.length = 0; + var cur_word = ""; + var ch; + var i = 0; + while (i < text.length) + { + ch = text.charAt(i); + if (ch === "\n") + { + if (cur_word.length) + { + wordsCache.push(cur_word); + cur_word = ""; + } + wordsCache.push("\n"); + ++i; + } + else if (ch === " " || ch === "\t" || ch === "-") + { + do { + cur_word += text.charAt(i); + i++; + } + while (i < text.length && (text.charAt(i) === " " || text.charAt(i) === "\t")); + wordsCache.push(cur_word); + cur_word = ""; + } + else if (i < text.length) + { + cur_word += ch; + i++; + } + } + if (cur_word.length) + wordsCache.push(cur_word); + }; + pluginProto.WordWrap = function (inst) + { + var text = inst.text; + var lines = inst.lines; + if (!text || !text.length) + { + freeAllLines(lines); + return; + } + var width = inst.width; + if (width <= 2.0) + { + freeAllLines(lines); + return; + } + var charWidth = inst.characterWidth; + var charScale = inst.characterScale; + var charSpacing = inst.characterSpacing; + if ( (text.length * (charWidth * charScale + charSpacing) - charSpacing) <= width && text.indexOf("\n") === -1) + { + var all_width = inst.measureWidth(text); + if (all_width <= width) + { + freeAllLines(lines); + lines.push(allocLine()); + lines[0].text = text; + lines[0].width = all_width; + inst.textWidth = all_width; + inst.textHeight = inst.characterHeight * charScale + inst.lineHeight; + return; + } + } + var wrapbyword = inst.wrapbyword; + this.WrapText(inst); + inst.textHeight = lines.length * (inst.characterHeight * charScale + inst.lineHeight); + }; + pluginProto.WrapText = function (inst) + { + var wrapbyword = inst.wrapbyword; + var nowrap = inst.nowrap; + var text = inst.text; + var lines = inst.lines; + var width = inst.width; + var wordArray; + if (wrapbyword) { + this.TokeniseWords(text); // writes to wordsCache + wordArray = wordsCache; + } + else if(nowrap){ + wordArray = [text]; + } + else { + wordArray = text; + } + var cur_line = ""; + var prev_line; + var line_width; + var i; + var lineIndex = 0; + var line; + var ignore_newline = false; + for (i = 0; i < wordArray.length; i++) + { + /*console.log('New Word ' + i) + console.log(wordArray) + console.log(wordArray[i])*/ + if (wordArray[i] === "\n") + { + if (ignore_newline === true) { + ignore_newline = false; + } else { + addLine(inst,lineIndex,cur_line); + lineIndex++; + } + cur_line = ""; + continue; + } + ignore_newline = false; + prev_line = cur_line; + cur_line += wordArray[i]; + line_width = inst.measureWidth(trimRight(cur_line)); + /*console.log(prev_line); + console.log(cur_line); + console.log(line_width); + console.log(width); + console.log(line_width > width);*/ + if (line_width > width) + { + if (prev_line === "") { + if(wrapbyword){ + while(inst.measureWidth(trimRight(cur_line)) > width){ + var wordP1 = cur_line; + var wordP2 = ""; + while(inst.measureWidth(trimRight(wordP1)) >= width){ + wordP2 = wordP1[wordP1.length-1] + wordP2; + wordP1 = wordP1.slice(0, -1); + } + addLine(inst,lineIndex,wordP1); + cur_line = wordP2; + lineIndex++; + } + lineIndex--; + } + else{ + addLine(inst,lineIndex,cur_line); + cur_line = ""; + ignore_newline = true; + } + } else { + addLine(inst,lineIndex,prev_line); + cur_line = wordArray[i]; + prev_line = ""; + while(inst.measureWidth(trimRight(cur_line)) > width){ + lineIndex++; + var wordP1 = cur_line; + var wordP2 = ""; + while(inst.measureWidth(trimRight(wordP1)) >= width){ + wordP2 = wordP1[wordP1.length-1] + wordP2; + wordP1 = wordP1.slice(0, -1); + } + addLine(inst,lineIndex,wordP1); + cur_line = wordP2; + } + } + lineIndex++; + /*if (!wrapbyword && cur_line === " ") + cur_line = "";*/ + } + } + if (trimRight(cur_line).length) + { + addLine(inst,lineIndex,cur_line); + lineIndex++; + } + for (i = lineIndex; i < lines.length; i++) + freeLine(lines[i]); + lines.length = lineIndex; + }; + instanceProto.measureWidth = function(text) { + var spacing = this.characterSpacing; + var len = text.length; + var width = 0; + for (var i = 0; i < len; i++) { + width += this.getCharacterWidth(text.charAt(i)) * this.characterScale + spacing; + } + width -= (width > 0) ? spacing : 0; + return width; + }; + /***/ + instanceProto.getCharacterWidth = function(character) { + var widthList = this.characterWidthList; + if (widthList[character] !== undefined) { + return widthList[character]; + } else { + return this.characterWidth; + } + }; + instanceProto.rebuildText = function() { + if (this.text_changed || this.width !== this.lastwrapwidth) { + this.textWidth = 0; + this.textHeight = 0; + this.type.plugin.WordWrap(this); + this.text_changed = false; + this.lastwrapwidth = this.width; + } + }; + var EPSILON = 0.00001; + instanceProto.draw = function(ctx, glmode) + { + var texture = this.texture_img; + if (this.text !== "" && texture != null) { + this.rebuildText(); + if (this.height < this.characterHeight*this.characterScale + this.lineHeight) { + return; + } + ctx.globalAlpha = this.opacity; + var myx = this.x; + var myy = this.y; + if (this.runtime.pixel_rounding) + { + myx = (myx + 0.5) | 0; + myy = (myy + 0.5) | 0; + } + ctx.save(); + ctx.translate(myx, myy); + ctx.rotate(this.angle); + var angle = this.angle; + var ha = this.halign; + var va = this.valign; + var scale = this.characterScale; + var charHeight = this.characterHeight * scale; + var lineHeight = this.lineHeight; + var charSpace = this.characterSpacing; + var lines = this.lines; + var textHeight = this.textHeight; + var charPos = this.charPosProcessed; + var useCP = false; + if (charPos && typeof charPos[0][2] !== "undefined") { + useCP = true; + } + var cosa, sina; + if (angle !== 0) { + cosa = Math.cos(angle); + sina = Math.sin(angle); + } + var halign; + var valign = va * cr.max(0,(this.height - textHeight)); + var offx = -(this.hotspotX * this.width); + var offy = -(this.hotspotY * this.height); + offy += valign; + var drawX ; + var drawY = offy; + var angle = this.angle; + var arrI = 0 + var drX=0; + var drY=0; + var charAngle; + var charCosa=0; + var charSina=0; + var anglOffsetX=0; + var anglOffsetY=0; + var lcount = 0; + var charOpacity = 1; + for(var i = 0; i < lines.length; i++) { + var line = lines[i].text; + var len = lines[i].width; + halign = ha * cr.max(0,this.width - len); + drawX = offx + halign; + drawY += lineHeight; + for(var j = 0; j < line.length; j++) { + var letter = line.charAt(j); + var clip = this.clipList[letter]; + if ( drawX + this.getCharacterWidth(letter) * scale > this.width + EPSILON ) { + break; + } + if (clip !== undefined) { + if(useCP){ + if (typeof charPos[arrI] === "undefined"){ + drX = 0; + drY = 0; + charAngle = angle; + } + else{ + drX = charPos[arrI][0] * Math.cos(angle) - charPos[arrI][1] * Math.sin(angle) || 0; + drY = charPos[arrI][1] * Math.cos(angle) - charPos[arrI][0] * Math.sin(angle) || 0; + charAngle = cr.to_radians(charPos[arrI][2]) || 0; + charOpacity = charPos[arrI][3]/100 || 1; + } + /*if(charAngle !== 0) + { + charCosa = Math.cos(charAngle); + charSina = Math.sin(charAngle); + }*/ + } + var X = 0; + var Y = 0; + ctx.globalAlpha = this.opacity * charOpacity; + var charCanvas = getColoredTexture(this, this.texture_img, (charPos[arrI] === undefined ? 'None' : charPos[arrI][4]), clip, scale, letter) + if (useCP && charAngle !== 0) { + var dx = drawX + this.getCharacterWidth(letter) * scale / 2; + var dy = drawY + charHeight; + var oa = Math.atan2(dy, dx) + Math.PI - charAngle; + var dist = Math.sqrt(Math.pow(-dx, 2) + Math.pow(-dy, 2)); + var X = -dx - Math.cos(oa) * dist; + var Y = -dy - Math.sin(oa) * dist; + ctx.save(); + ctx.rotate(charAngle); + ctx.translate(Math.round(drawX + drX + X), Math.round(drawY + drY + Y)); + if (charCanvas === this.texture_img) { + ctx.drawImage(this.texture_img, + clip.x, clip.y, clip.w, clip.h, + 0, 0, clip.w * scale, clip.h * scale); + } + else { + ctx.drawImage(charCanvas, 0, 0); + } + ctx.restore(); + } + else { + if (charCanvas === this.texture_img) { + ctx.drawImage(this.texture_img, + clip.x, clip.y, clip.w, clip.h, + Math.round(drawX + drX + X), Math.round(drawY + drY + Y), clip.w * scale, clip.h * scale); + } + else { + ctx.drawImage(charCanvas, Math.round(drawX + drX + X), Math.round(drawY + drY + Y)); + } + } + } + drawX += this.getCharacterWidth(letter) * scale + charSpace; + if(useCP){ + arrI ++; + } + lcount++ + } + drawY += charHeight; + if ( drawY + charHeight + lineHeight > this.height) { + break; + } + } + ctx.restore(); + } + }; + var dQuad = new cr.quad(); + function createCanvas(width, height) { + var canvas = document.createElement('canvas'); + canvas.width = width; + canvas.height = height; + return canvas + } + function getColoredTexture(inst, image, color, clip, scale, letter) { + if(!color || color === 'None') { + return image + } + if (inst.cachedImages !== undefined && inst.cachedImages[letter] !== undefined && inst.cachedImages[letter][color] !== undefined) { + return inst.cachedImages[letter][color]; + } + var charCanvas = createCanvas(clip.w * scale, clip.h * scale) + var charContext = charCanvas.getContext("2d"); + charContext.fillStyle = 'black'; + charContext.fillRect(0, 0, charCanvas.width, charCanvas.height); + charContext.drawImage(image, + clip.x, clip.y, clip.w, clip.h, + 0, 0, clip.w * scale, clip.h * scale); + charContext.globalCompositeOperation = 'multiply'; + charContext.fillStyle = color; + charContext.fillRect(0, 0, clip.w * scale, clip.h * scale); + charContext.globalCompositeOperation = 'destination-in'; + charContext.drawImage(image, + clip.x, clip.y, clip.w, clip.h, + 0, 0, clip.w * scale, clip.h * scale); + charContext.globalCompositeOperation = 'source-over'; + if (inst.cachedImages === undefined) { + inst.cachedImages = {} + } + if (inst.cachedImages[letter] === undefined) { + inst.cachedImages[letter] = {} + } + inst.cachedImages[letter][color] = charCanvas + return charCanvas + } + function rotateQuad(quad,cosa,sina) { + var x_temp; + x_temp = (quad.tlx * cosa) - (quad.tly * sina); + quad.tly = (quad.tly * cosa) + (quad.tlx * sina); + quad.tlx = x_temp; + x_temp = (quad.trx * cosa) - (quad.try_ * sina); + quad.try_ = (quad.try_ * cosa) + (quad.trx * sina); + quad.trx = x_temp; + x_temp = (quad.blx * cosa) - (quad.bly * sina); + quad.bly = (quad.bly * cosa) + (quad.blx * sina); + quad.blx = x_temp; + x_temp = (quad.brx * cosa) - (quad.bry * sina); + quad.bry = (quad.bry * cosa) + (quad.brx * sina); + quad.brx = x_temp; + } + instanceProto.drawGL = function(glw) + { + if (this.text !== "") { + this.rebuildText(); + if (this.height < this.characterHeight*this.characterScale + this.lineHeight) { + return; + } + this.update_bbox(); + var q = this.bquad; + var ox = 0; + var oy = 0; + if (this.runtime.pixel_rounding) + { + ox = ((this.x + 0.5) | 0) - this.x; + oy = ((this.y + 0.5) | 0) - this.y; + } + var angle = this.angle; + var ha = this.halign; + var va = this.valign; + var scale = this.characterScale; + var charHeight = this.characterHeight * scale; // to precalculate in onCreate or on change + var lineHeight = this.lineHeight; + var charSpace = this.characterSpacing; + var lines = this.lines; + var textHeight = this.textHeight; + var charPos = this.charPosProcessed; + var useCP = false; + if (charPos && typeof charPos[0][2] !== "undefined") { + useCP = true; + } + var cosa,sina; + if (angle !== 0) + { + cosa = Math.cos(angle); + sina = Math.sin(angle); + } + var halign; + var valign = va * cr.max(0,(this.height - textHeight)); + var offx = q.tlx + ox; + var offy = q.tly + oy; + var drawX ; + var drawY = valign; + var arrI = 0; + var charAngle; + var drX = 0; + var drY = 0; + var charCosa = 0; + var charSina = 0; + var anglOffsetX = 0; + var anglOffsetY = 0; + var charOpacity = 1; + var lcount = 0 + for(var i = 0; i < lines.length; i++) { + var line = lines[i].text; + var lineWidth = lines[i].width; + halign = ha * cr.max(0,this.width - lineWidth); + drawX = halign; + drawY += lineHeight; + for(var j = 0; j < line.length; j++) { + var letter = line.charAt(j); + var clipUV = this.clipUV[letter]; + if (clipUV !== undefined) { + var clip = { + x: clipUV.left * this.texture_img.width, + y: clipUV.top * this.texture_img.height, + w: clipUV.right * this.texture_img.width - clipUV.left * this.texture_img.width, + h: clipUV.bottom * this.texture_img.height - clipUV.top * this.texture_img.height + } + var color = (charPos[arrI] === undefined ? 'None' : charPos[arrI][4]); + if (color !== 'None' && this.cachedTextures !== undefined && this.cachedTextures[letter] !== undefined && this.cachedTextures[letter][color] !== undefined) { + glw.setTexture(this.cachedTextures[letter][color]); + clipUV = { + top: 0, + left: 0, + right: 1, + bottom: 1 + } + } + else if (color !== 'None') { + var letterImg = getColoredTexture(this, this.texture_img, color, clip, 1, letter) + if (letterImg != this.texture_img) { + var letterTexture = this.runtime.glwrap.loadTexture(letterImg, false, this.runtime.linearSampling, this.type.texture_pixelformat); + if (this.cachedTextures === undefined) { + this.cachedTextures = {} + } + if (this.cachedTextures[letter] === undefined) { + this.cachedTextures[letter] = {} + } + this.cachedTextures[letter][color] = letterTexture + glw.setTexture(letterTexture); + clipUV = { + top: 0, + left: 0, + right: 1, + bottom: 1 + } + } + else { + glw.setTexture(this.webGL_texture); + } + } + else { + glw.setTexture(this.webGL_texture); + } + } + if ( drawX + this.getCharacterWidth(letter) * scale > this.width + EPSILON) { + break; + } + if(useCP){ + if(typeof charPos[arrI] === "undefined"){ + drX = 0; + drY = 0; + charAngle = angle; + } + else{ + drX = charPos[arrI][0] * Math.cos(angle) - charPos[arrI][1] * Math.sin(angle) || 0; + drY = charPos[arrI][1] * Math.cos(angle) - charPos[arrI][0] * Math.sin(angle) || 0; + charAngle = cr.to_radians(charPos[arrI][2]) || 0; + charOpacity = charPos[arrI][3] !== undefined && charPos[arrI][3] !== null ? charPos[arrI][3] / 100 : 1; + } + if(charAngle !== 0) + { + charCosa = Math.cos(charAngle); + charSina = Math.sin(charAngle); + } + } + if (clipUV !== undefined) { + var clipWidth = this.characterWidth*scale; + var clipHeight = this.characterHeight*scale; + dQuad.tlx = drawX; + dQuad.tly = drawY; + dQuad.trx = drawX + clipWidth; + dQuad.try_ = drawY; + dQuad.blx = drawX; + dQuad.bly = drawY + clipHeight; + dQuad.brx = drawX + clipWidth; + dQuad.bry = drawY + clipHeight; + if(useCP && charAngle !== 0) + { + var dx = drawX + this.getCharacterWidth(letter) * scale/2; + var dy = drawY + charHeight; + var oa = Math.atan2(dy,dx) + Math.PI - charAngle; + var dist = Math.sqrt(Math.pow(-dx,2) + Math.pow(-dy,2)); + var X = -dx - Math.cos(oa) * dist; + var Y = -dy - Math.sin(oa) * dist; + dQuad.offset(X,Y); + rotateQuad(dQuad,charCosa,charSina); + } + if(angle !== 0) + { + rotateQuad(dQuad,cosa,sina); + } + dQuad.offset(offx,offy); + if(useCP){ + dQuad.offset(drX,drY); + } + glw.setOpacity(this.opacity * charOpacity); + glw.quadTex( + dQuad.tlx, dQuad.tly, + dQuad.trx, dQuad.try_, + dQuad.brx, dQuad.bry, + dQuad.blx, dQuad.bly, + clipUV + ); + } + drawX += this.getCharacterWidth(letter) * scale + charSpace; + if(useCP){ + arrI ++; + } + lcount++ + } + drawY += charHeight; + if ( drawY + charHeight + lineHeight > this.height) { + break; + } + } + } + }; + instanceProto.update = function(){ + this.runtime.redraw = true; + this.lastValue += Math.abs(60 * this.runtime.getDt(this)); + this.charPosProcessed = this.computeWholeArray(this.charPos.data); + } + instanceProto.computeWholeArray = function(array) + { + var result = []; + if (this.typewriterParams !== undefined && this.typewriterActive && !this.firstFrame) { + for (var i = 0; i < array.length; i++) { + var cur = array[i] + /* console.log(this.text) + console.log(array) + console.log(this.typeProgress) + console.log(i) */ + var progress = this.typeProgress[i][0]; + var curX = this.typewriterParams["value"]["x"] === null ? this.compute(cur[0], i) : cr.lerp(this.typewriterParams["value"]["x"], this.compute(cur[0], i), progress) + var curY = this.typewriterParams["value"]["y"] === null ? this.compute(cur[1], i) : cr.lerp(this.typewriterParams["value"]["y"], this.compute(cur[1], i), progress) + var curA = this.typewriterParams["value"]["a"] === null ? this.compute(cur[2], i) : cr.lerp(this.typewriterParams["value"]["a"], this.compute(cur[2], i), progress) + var curO = this.typewriterParams["value"]["o"] === null ? this.compute(cur[3], i, true) : cr.lerp(this.typewriterParams["value"]["o"], this.compute(cur[3], i, true), progress) + result.push([curX, curY, curA, curO, cur[4]]) + } + } + else { + for (var i = 0; i < array.length; i++) { + var cur = array[i] + result.push([this.compute(cur[0], i), this.compute(cur[1], i), this.compute(cur[2], i), this.compute(cur[3], i, true), cur[4]]) + } + } + return result + } + instanceProto.compute = function (value, offset, isOpacity) + { + isOpacity = typeof isOpacity !== 'undefined' ? isOpacity : false; + if (!this.hasBehavior() && this.animOffset === undefined) { + this.animOffset = 1; + this.defaultMagnitude = 0; + this.defaultSpeed = 100; + } + if(typeof value === "number"){ + return value; + } + else if(typeof value === "object" && value.length == 1){ + return this.compute(value[0], offset); + } + else if(typeof value !== "string"){ + return 0; + } + var valueA = value.split(' '); + var command = valueA[0].trim().toLowerCase(); + var param = 0; + var param2 = this.defaultSpeed; + var param3 = 0; + if(typeof valueA[1] === "undefined" || valueA[1].trim() == "" || isNaN(parseInt(valueA[1].trim()))) + param = isOpacity ? 100 : (this.defaultMagnitude === 0 ? this.characterHeight : this.defaultMagnitude) / (command.startsWith("angle") ? 1 : 4) + else + param = parseInt(valueA[1].trim()); + if(typeof valueA[2] === "undefined" || valueA[2].trim() == ""|| isNaN(parseInt(valueA[2].trim()))) + param2 = this.defaultSpeed; + else + param2 = this.defaultSpeed * parseInt(valueA[2].trim()) / 100; + if(typeof valueA[3] === "undefined" || valueA[3].trim() == ""|| isNaN(parseInt(valueA[3].trim()))) + param3 = 0; + else + param3 = parseInt(valueA[3].trim()); + switch (command){ + case "wave": + return Math.sin(cr.to_radians(this.lastValue * param2/100)*10+offset * this.animOffset) * param + param3 + break; + case "swing": + return Math.cos(cr.to_radians(this.lastValue * param2/100)*10+offset * this.animOffset * (isOpacity? -1: 1)) * param + param3 + break; + case "angle": + return Math.sin(cr.to_radians(this.lastValue * param2/100)*10+offset * this.animOffset) * param + param3 + break; + case "angle2": + return Math.cos(cr.to_radians(this.lastValue * param2/100)*10+offset * this.animOffset) * param + param3 + break; + case "shake": + return (Math.random()-0.5 ) * param + param3 + break; + default: + var commandInt = parseInt(command) + return isNaN(commandInt) ? (isOpacity? 100 : 0) : commandInt + } + } + instanceProto.hasBehavior = function () { + if (this.sfdxbehavior !== undefined) { + return this.sfdxbehavior + } + else { + this.sfdxbehavior = false + var self = this; + this.behavior_insts.forEach(function(inst) { + if (cr.behaviors.SkymenSFPPP && inst.behavior instanceof cr.behaviors.SkymenSFPPP) { + self.sfdxbehavior = true + } + }) + return this.sfdxbehavior + } + } + function Cnds() {} + Cnds.prototype.CompareText = function(text_to_compare, case_sensitive) + { + if (case_sensitive) + return this.text == text_to_compare; + else + return cr.equals_nocase(this.text, text_to_compare); + }; + pluginProto.cnds = new Cnds(); + function Acts() {} + Acts.prototype.SetText = function(param) + { + if (cr.is_number(param) && param < 1e9) + param = Math.round(param * 1e10) / 1e10; // round to nearest ten billionth - hides floating point errors + var text_to_set = param.toString(); + if (this.text !== text_to_set) + { + this.text = text_to_set; + this.text_changed = true; + this.runtime.redraw = true; + } + }; + Acts.prototype.AppendText = function(param) + { + if (cr.is_number(param)) + param = Math.round(param * 1e10) / 1e10; // round to nearest ten billionth - hides floating point errors + var text_to_append = param.toString(); + if (text_to_append) // not empty + { + this.text += text_to_append; + this.text_changed = true; + this.runtime.redraw = true; + } + }; + Acts.prototype.SetScale = function(param) + { + if (param !== this.characterScale) { + this.characterScale = param; + this.text_changed = true; + this.runtime.redraw = true; + } + }; + Acts.prototype.SetCharacterSpacing = function(param) + { + if (param !== this.CharacterSpacing) { + this.characterSpacing = param; + this.text_changed = true; + this.runtime.redraw = true; + } + }; + Acts.prototype.SetLineHeight = function(param) + { + if (param !== this.lineHeight) { + this.lineHeight = param; + this.text_changed = true; + this.runtime.redraw = true; + } + }; + instanceProto.SetCharWidth = function(character,width) { + var w = parseInt(width,10); + if (this.characterWidthList[character] !== w) { + this.characterWidthList[character] = w; + this.text_changed = true; + this.runtime.redraw = true; + } + }; + Acts.prototype.SetCharacterWidth = function(characterSet,width) + { + if (characterSet !== "") { + for(var c = 0; c < characterSet.length; c++) { + this.SetCharWidth(characterSet.charAt(c),width); + } + } + }; + Acts.prototype.SetEffect = function (effect) + { + this.compositeOp = cr.effectToCompositeOp(effect); + cr.setGLBlend(this, effect, this.runtime.gl); + this.runtime.redraw = true; + }; + Acts.prototype.SetVerAl = function (val) + { + if(this.clamp){ + this.valign = cr.clamp(val,0,100)/100; + } + else{ + this.valign = val/100; + } + this.text_changed = true; + this.runtime.redraw = true; + }; + Acts.prototype.SetHorAl = function (val) + { + if(this.clamp){ + this.halign = cr.clamp(val,0,100)/100; + } + else{ + this.halign = val/100; + } + this.text_changed = true; + this.runtime.redraw = true; + }; + Acts.prototype.SetAl = function (val,val2) + { + if(this.clamp){ + this.halign = cr.clamp(val,0,100)/100; + this.valign = cr.clamp(val2,0,100)/100; + } + else{ + this.halign = val/100; + this.valign = val2/100; + } + this.text_changed = true; + this.runtime.redraw = true; + }; + Acts.prototype.SetWrap = function (val) + { + this.wrapbyword = (val === 0); // 0=word, 1=character, 2 = None + this.nowrap = (val === 2); // 0=word, 1=character, 2 = None + this.text_changed = true; + this.runtime.redraw = true; + }; + Acts.prototype.SetClamp = function (val) + { + this.clamp = (val === 0); //0=Yes, 1=No + if(this.clamp){ + this.halign = cr.clamp(this.halign,0,1); + this.valign = cr.clamp(this.valign,0,1); + } + else{ + this.halign = this.halign; + this.valign = this.valign; + } + this.text_changed = true; + this.runtime.redraw = true; + }; + Acts.prototype.SetCharPos = function (val) + { + if(this.charPos !== JSON.parse(val)){ + this.charPos = JSON.parse(val); + this.text_changed = true; + this.runtime.redraw = true; + } + }; + Acts.prototype.Redraw = function () + { + this.update(); + }; + Acts.prototype.LoadURL = function (url_, crossOrigin_, cw, ch) + { + var img = new Image(); + var self = this; + this.characterWidth = cw > 0? cw : this.characterWidth; + this.characterHeight = ch > 0? ch : this.characterHeight; + img.onload = function () + { + self.texture_img = img; + if (self.runtime.glwrap) + { + if (self.has_own_texture && self.webGL_texture) + self.runtime.glwrap.deleteTexture(self.webGL_texture); + self.webGL_texture = self.runtime.glwrap.loadTexture(img, true, self.runtime.linearSampling); + } + else + { + self.pattern = self.runtime.ctx.createPattern(img, "repeat"); + } + self.has_own_texture = true; + self.runtime.redraw = true; + self.runtime.trigger(cr.plugins_.SkymenSFPlusPLus.prototype.cnds.OnURLLoaded, self); + }; + if (url_.substr(0, 5) !== "data:" && crossOrigin_ === 0) + img.crossOrigin = "anonymous"; + this.runtime.setImageSrc(img, url_); + }; + pluginProto.acts = new Acts(); + function Exps() {} + Exps.prototype.CharacterWidth = function(ret,character) + { + ret.set_int(this.getCharacterWidth(character)); + }; + Exps.prototype.CharacterHeight = function(ret) + { + ret.set_int(this.characterHeight); + }; + Exps.prototype.CharacterScale = function(ret) + { + ret.set_float(this.characterScale); + }; + Exps.prototype.CharacterSpacing = function(ret) + { + ret.set_int(this.characterSpacing); + }; + Exps.prototype.LineHeight = function(ret) + { + ret.set_int(this.lineHeight); + }; + Exps.prototype.Text = function(ret) + { + ret.set_string(this.text); + }; + Exps.prototype.TextWidth = function (ret) + { + this.rebuildText(); + ret.set_float(this.textWidth); + }; + Exps.prototype.TextHeight = function (ret) + { + this.rebuildText(); + ret.set_float(this.textHeight); + }; + Exps.prototype.FullTextWidth = function (ret) + { + ret.set_float(this.measureWidth(this.text)); + }; + Exps.prototype.HAlign = function (ret) + { + ret.set_float(this.halign); + }; + Exps.prototype.VAlign = function (ret) + { + ret.set_float(this.valign); + }; + Exps.prototype.CharPos = function(ret) + { + ret.set_string(this.charPos); + }; + pluginProto.exps = new Exps(); +}()); +; +; +cr.plugins_.Sprite = function(runtime) +{ + this.runtime = runtime; +}; +(function () +{ + var pluginProto = cr.plugins_.Sprite.prototype; + pluginProto.Type = function(plugin) + { + this.plugin = plugin; + this.runtime = plugin.runtime; + }; + var typeProto = pluginProto.Type.prototype; + function frame_getDataUri() + { + if (this.datauri.length === 0) + { + var tmpcanvas = document.createElement("canvas"); + tmpcanvas.width = this.width; + tmpcanvas.height = this.height; + var tmpctx = tmpcanvas.getContext("2d"); + if (this.spritesheeted) + { + tmpctx.drawImage(this.texture_img, this.offx, this.offy, this.width, this.height, + 0, 0, this.width, this.height); + } + else + { + tmpctx.drawImage(this.texture_img, 0, 0, this.width, this.height); + } + this.datauri = tmpcanvas.toDataURL("image/png"); + } + return this.datauri; + }; + typeProto.onCreate = function() + { + if (this.is_family) + return; + var i, leni, j, lenj; + var anim, frame, animobj, frameobj, wt, uv; + this.all_frames = []; + this.has_loaded_textures = false; + for (i = 0, leni = this.animations.length; i < leni; i++) + { + anim = this.animations[i]; + animobj = {}; + animobj.name = anim[0]; + animobj.speed = anim[1]; + animobj.loop = anim[2]; + animobj.repeatcount = anim[3]; + animobj.repeatto = anim[4]; + animobj.pingpong = anim[5]; + animobj.sid = anim[6]; + animobj.frames = []; + for (j = 0, lenj = anim[7].length; j < lenj; j++) + { + frame = anim[7][j]; + frameobj = {}; + frameobj.texture_file = frame[0]; + frameobj.texture_filesize = frame[1]; + frameobj.offx = frame[2]; + frameobj.offy = frame[3]; + frameobj.width = frame[4]; + frameobj.height = frame[5]; + frameobj.duration = frame[6]; + frameobj.hotspotX = frame[7]; + frameobj.hotspotY = frame[8]; + frameobj.image_points = frame[9]; + frameobj.poly_pts = frame[10]; + frameobj.pixelformat = frame[11]; + frameobj.spritesheeted = (frameobj.width !== 0); + frameobj.datauri = ""; // generated on demand and cached + frameobj.getDataUri = frame_getDataUri; + uv = {}; + uv.left = 0; + uv.top = 0; + uv.right = 1; + uv.bottom = 1; + frameobj.sheetTex = uv; + frameobj.webGL_texture = null; + wt = this.runtime.findWaitingTexture(frame[0]); + if (wt) + { + frameobj.texture_img = wt; + } + else + { + frameobj.texture_img = new Image(); + frameobj.texture_img.cr_src = frame[0]; + frameobj.texture_img.cr_filesize = frame[1]; + frameobj.texture_img.c2webGL_texture = null; + this.runtime.waitForImageLoad(frameobj.texture_img, frame[0]); + } + cr.seal(frameobj); + animobj.frames.push(frameobj); + this.all_frames.push(frameobj); + } + cr.seal(animobj); + this.animations[i] = animobj; // swap array data for object + } + }; + typeProto.updateAllCurrentTexture = function () + { + var i, len, inst; + for (i = 0, len = this.instances.length; i < len; i++) + { + inst = this.instances[i]; + inst.curWebGLTexture = inst.curFrame.webGL_texture; + } + }; + typeProto.onLostWebGLContext = function () + { + if (this.is_family) + return; + var i, len, frame; + for (i = 0, len = this.all_frames.length; i < len; ++i) + { + frame = this.all_frames[i]; + frame.texture_img.c2webGL_texture = null; + frame.webGL_texture = null; + } + this.has_loaded_textures = false; + this.updateAllCurrentTexture(); + }; + typeProto.onRestoreWebGLContext = function () + { + if (this.is_family || !this.instances.length) + return; + var i, len, frame; + for (i = 0, len = this.all_frames.length; i < len; ++i) + { + frame = this.all_frames[i]; + frame.webGL_texture = this.runtime.glwrap.loadTexture(frame.texture_img, false, this.runtime.linearSampling, frame.pixelformat); + } + this.updateAllCurrentTexture(); + }; + typeProto.loadTextures = function () + { + if (this.is_family || this.has_loaded_textures || !this.runtime.glwrap) + return; + var i, len, frame; + for (i = 0, len = this.all_frames.length; i < len; ++i) + { + frame = this.all_frames[i]; + frame.webGL_texture = this.runtime.glwrap.loadTexture(frame.texture_img, false, this.runtime.linearSampling, frame.pixelformat); + } + this.has_loaded_textures = true; + }; + typeProto.unloadTextures = function () + { + if (this.is_family || this.instances.length || !this.has_loaded_textures) + return; + var i, len, frame; + for (i = 0, len = this.all_frames.length; i < len; ++i) + { + frame = this.all_frames[i]; + this.runtime.glwrap.deleteTexture(frame.webGL_texture); + frame.webGL_texture = null; + } + this.has_loaded_textures = false; + }; + var already_drawn_images = []; + typeProto.preloadCanvas2D = function (ctx) + { + var i, len, frameimg; + cr.clearArray(already_drawn_images); + for (i = 0, len = this.all_frames.length; i < len; ++i) + { + frameimg = this.all_frames[i].texture_img; + if (already_drawn_images.indexOf(frameimg) !== -1) + continue; + ctx.drawImage(frameimg, 0, 0); + already_drawn_images.push(frameimg); + } + }; + pluginProto.Instance = function(type) + { + this.type = type; + this.runtime = type.runtime; + var poly_pts = this.type.animations[0].frames[0].poly_pts; + if (this.recycled) + this.collision_poly.set_pts(poly_pts); + else + this.collision_poly = new cr.CollisionPoly(poly_pts); + }; + var instanceProto = pluginProto.Instance.prototype; + instanceProto.onCreate = function() + { + this.visible = (this.properties[0] === 0); // 0=visible, 1=invisible + this.isTicking = false; + this.inAnimTrigger = false; + this.collisionsEnabled = (this.properties[3] !== 0); + this.cur_animation = this.getAnimationByName(this.properties[1]) || this.type.animations[0]; + this.cur_frame = this.properties[2]; + if (this.cur_frame < 0) + this.cur_frame = 0; + if (this.cur_frame >= this.cur_animation.frames.length) + this.cur_frame = this.cur_animation.frames.length - 1; + var curanimframe = this.cur_animation.frames[this.cur_frame]; + this.collision_poly.set_pts(curanimframe.poly_pts); + this.hotspotX = curanimframe.hotspotX; + this.hotspotY = curanimframe.hotspotY; + this.cur_anim_speed = this.cur_animation.speed; + this.cur_anim_repeatto = this.cur_animation.repeatto; + if (!(this.type.animations.length === 1 && this.type.animations[0].frames.length === 1) && this.cur_anim_speed !== 0) + { + this.runtime.tickMe(this); + this.isTicking = true; + } + if (this.recycled) + this.animTimer.reset(); + else + this.animTimer = new cr.KahanAdder(); + this.frameStart = this.getNowTime(); + this.animPlaying = true; + this.animRepeats = 0; + this.animForwards = true; + this.animTriggerName = ""; + this.changeAnimName = ""; + this.changeAnimFrom = 0; + this.changeAnimFrame = -1; + this.type.loadTextures(); + var i, leni, j, lenj; + var anim, frame, uv, maintex; + for (i = 0, leni = this.type.animations.length; i < leni; i++) + { + anim = this.type.animations[i]; + for (j = 0, lenj = anim.frames.length; j < lenj; j++) + { + frame = anim.frames[j]; + if (frame.width === 0) + { + frame.width = frame.texture_img.width; + frame.height = frame.texture_img.height; + } + if (frame.spritesheeted) + { + maintex = frame.texture_img; + uv = frame.sheetTex; + uv.left = frame.offx / maintex.width; + uv.top = frame.offy / maintex.height; + uv.right = (frame.offx + frame.width) / maintex.width; + uv.bottom = (frame.offy + frame.height) / maintex.height; + if (frame.offx === 0 && frame.offy === 0 && frame.width === maintex.width && frame.height === maintex.height) + { + frame.spritesheeted = false; + } + } + } + } + this.curFrame = this.cur_animation.frames[this.cur_frame]; + this.curWebGLTexture = this.curFrame.webGL_texture; + }; + instanceProto.saveToJSON = function () + { + var o = { + "a": this.cur_animation.sid, + "f": this.cur_frame, + "cas": this.cur_anim_speed, + "fs": this.frameStart, + "ar": this.animRepeats, + "at": this.animTimer.sum, + "rt": this.cur_anim_repeatto + }; + if (!this.animPlaying) + o["ap"] = this.animPlaying; + if (!this.animForwards) + o["af"] = this.animForwards; + return o; + }; + instanceProto.loadFromJSON = function (o) + { + var anim = this.getAnimationBySid(o["a"]); + if (anim) + this.cur_animation = anim; + this.cur_frame = o["f"]; + if (this.cur_frame < 0) + this.cur_frame = 0; + if (this.cur_frame >= this.cur_animation.frames.length) + this.cur_frame = this.cur_animation.frames.length - 1; + this.cur_anim_speed = o["cas"]; + this.frameStart = o["fs"]; + this.animRepeats = o["ar"]; + this.animTimer.reset(); + this.animTimer.sum = o["at"]; + this.animPlaying = o.hasOwnProperty("ap") ? o["ap"] : true; + this.animForwards = o.hasOwnProperty("af") ? o["af"] : true; + if (o.hasOwnProperty("rt")) + this.cur_anim_repeatto = o["rt"]; + else + this.cur_anim_repeatto = this.cur_animation.repeatto; + this.curFrame = this.cur_animation.frames[this.cur_frame]; + this.curWebGLTexture = this.curFrame.webGL_texture; + this.collision_poly.set_pts(this.curFrame.poly_pts); + this.hotspotX = this.curFrame.hotspotX; + this.hotspotY = this.curFrame.hotspotY; + }; + instanceProto.animationFinish = function (reverse) + { + this.cur_frame = reverse ? 0 : this.cur_animation.frames.length - 1; + this.animPlaying = false; + this.animTriggerName = this.cur_animation.name; + this.inAnimTrigger = true; + this.runtime.trigger(cr.plugins_.Sprite.prototype.cnds.OnAnyAnimFinished, this); + this.runtime.trigger(cr.plugins_.Sprite.prototype.cnds.OnAnimFinished, this); + this.inAnimTrigger = false; + this.animRepeats = 0; + }; + instanceProto.getNowTime = function() + { + return this.animTimer.sum; + }; + instanceProto.tick = function() + { + this.animTimer.add(this.runtime.getDt(this)); + if (this.changeAnimName.length) + this.doChangeAnim(); + if (this.changeAnimFrame >= 0) + this.doChangeAnimFrame(); + var now = this.getNowTime(); + var cur_animation = this.cur_animation; + var prev_frame = cur_animation.frames[this.cur_frame]; + var next_frame; + var cur_frame_time = prev_frame.duration / this.cur_anim_speed; + if (this.animPlaying && now >= this.frameStart + cur_frame_time) + { + if (this.animForwards) + { + this.cur_frame++; + } + else + { + this.cur_frame--; + } + this.frameStart += cur_frame_time; + if (this.cur_frame >= cur_animation.frames.length) + { + if (cur_animation.pingpong) + { + this.animForwards = false; + this.cur_frame = cur_animation.frames.length - 2; + } + else if (cur_animation.loop) + { + this.cur_frame = this.cur_anim_repeatto; + } + else + { + this.animRepeats++; + if (this.animRepeats >= cur_animation.repeatcount) + { + this.animationFinish(false); + } + else + { + this.cur_frame = this.cur_anim_repeatto; + } + } + } + if (this.cur_frame < 0) + { + if (cur_animation.pingpong) + { + this.cur_frame = 1; + this.animForwards = true; + if (!cur_animation.loop) + { + this.animRepeats++; + if (this.animRepeats >= cur_animation.repeatcount) + { + this.animationFinish(true); + } + } + } + else + { + if (cur_animation.loop) + { + this.cur_frame = this.cur_anim_repeatto; + } + else + { + this.animRepeats++; + if (this.animRepeats >= cur_animation.repeatcount) + { + this.animationFinish(true); + } + else + { + this.cur_frame = this.cur_anim_repeatto; + } + } + } + } + if (this.cur_frame < 0) + this.cur_frame = 0; + else if (this.cur_frame >= cur_animation.frames.length) + this.cur_frame = cur_animation.frames.length - 1; + if (now > this.frameStart + (cur_animation.frames[this.cur_frame].duration / this.cur_anim_speed)) + { + this.frameStart = now; + } + next_frame = cur_animation.frames[this.cur_frame]; + this.OnFrameChanged(prev_frame, next_frame); + this.runtime.redraw = true; + } + }; + instanceProto.getAnimationByName = function (name_) + { + var i, len, a; + for (i = 0, len = this.type.animations.length; i < len; i++) + { + a = this.type.animations[i]; + if (cr.equals_nocase(a.name, name_)) + return a; + } + return null; + }; + instanceProto.getAnimationBySid = function (sid_) + { + var i, len, a; + for (i = 0, len = this.type.animations.length; i < len; i++) + { + a = this.type.animations[i]; + if (a.sid === sid_) + return a; + } + return null; + }; + instanceProto.doChangeAnim = function () + { + var prev_frame = this.cur_animation.frames[this.cur_frame]; + var anim = this.getAnimationByName(this.changeAnimName); + this.changeAnimName = ""; + if (!anim) + return; + if (cr.equals_nocase(anim.name, this.cur_animation.name) && this.animPlaying) + return; + this.cur_animation = anim; + this.cur_anim_speed = anim.speed; + this.cur_anim_repeatto = anim.repeatto; + if (this.cur_frame < 0) + this.cur_frame = 0; + if (this.cur_frame >= this.cur_animation.frames.length) + this.cur_frame = this.cur_animation.frames.length - 1; + if (this.changeAnimFrom === 1) + this.cur_frame = 0; + this.animPlaying = true; + this.frameStart = this.getNowTime(); + this.animForwards = true; + this.OnFrameChanged(prev_frame, this.cur_animation.frames[this.cur_frame]); + this.runtime.redraw = true; + }; + instanceProto.doChangeAnimFrame = function () + { + var prev_frame = this.cur_animation.frames[this.cur_frame]; + var prev_frame_number = this.cur_frame; + this.cur_frame = cr.floor(this.changeAnimFrame); + if (this.cur_frame < 0) + this.cur_frame = 0; + if (this.cur_frame >= this.cur_animation.frames.length) + this.cur_frame = this.cur_animation.frames.length - 1; + if (prev_frame_number !== this.cur_frame) + { + this.OnFrameChanged(prev_frame, this.cur_animation.frames[this.cur_frame]); + this.frameStart = this.getNowTime(); + this.runtime.redraw = true; + } + this.changeAnimFrame = -1; + }; + instanceProto.OnFrameChanged = function (prev_frame, next_frame) + { + var oldw = prev_frame.width; + var oldh = prev_frame.height; + var neww = next_frame.width; + var newh = next_frame.height; + if (oldw != neww) + this.width *= (neww / oldw); + if (oldh != newh) + this.height *= (newh / oldh); + this.hotspotX = next_frame.hotspotX; + this.hotspotY = next_frame.hotspotY; + this.collision_poly.set_pts(next_frame.poly_pts); + this.set_bbox_changed(); + this.curFrame = next_frame; + this.curWebGLTexture = next_frame.webGL_texture; + var i, len, b; + for (i = 0, len = this.behavior_insts.length; i < len; i++) + { + b = this.behavior_insts[i]; + if (b.onSpriteFrameChanged) + b.onSpriteFrameChanged(prev_frame, next_frame); + } + this.runtime.trigger(cr.plugins_.Sprite.prototype.cnds.OnFrameChanged, this); + }; + instanceProto.draw = function(ctx) + { + ctx.globalAlpha = this.opacity; + var cur_frame = this.curFrame; + var spritesheeted = cur_frame.spritesheeted; + var cur_image = cur_frame.texture_img; + var myx = this.x; + var myy = this.y; + var w = this.width; + var h = this.height; + if (this.angle === 0 && w >= 0 && h >= 0) + { + myx -= this.hotspotX * w; + myy -= this.hotspotY * h; + if (this.runtime.pixel_rounding) + { + myx = Math.round(myx); + myy = Math.round(myy); + } + if (spritesheeted) + { + ctx.drawImage(cur_image, cur_frame.offx, cur_frame.offy, cur_frame.width, cur_frame.height, + myx, myy, w, h); + } + else + { + ctx.drawImage(cur_image, myx, myy, w, h); + } + } + else + { + if (this.runtime.pixel_rounding) + { + myx = Math.round(myx); + myy = Math.round(myy); + } + ctx.save(); + var widthfactor = w > 0 ? 1 : -1; + var heightfactor = h > 0 ? 1 : -1; + ctx.translate(myx, myy); + if (widthfactor !== 1 || heightfactor !== 1) + ctx.scale(widthfactor, heightfactor); + ctx.rotate(this.angle * widthfactor * heightfactor); + var drawx = 0 - (this.hotspotX * cr.abs(w)) + var drawy = 0 - (this.hotspotY * cr.abs(h)); + if (spritesheeted) + { + ctx.drawImage(cur_image, cur_frame.offx, cur_frame.offy, cur_frame.width, cur_frame.height, + drawx, drawy, cr.abs(w), cr.abs(h)); + } + else + { + ctx.drawImage(cur_image, drawx, drawy, cr.abs(w), cr.abs(h)); + } + ctx.restore(); + } + /* + ctx.strokeStyle = "#f00"; + ctx.lineWidth = 3; + ctx.beginPath(); + this.collision_poly.cache_poly(this.width, this.height, this.angle); + var i, len, ax, ay, bx, by; + for (i = 0, len = this.collision_poly.pts_count; i < len; i++) + { + ax = this.collision_poly.pts_cache[i*2] + this.x; + ay = this.collision_poly.pts_cache[i*2+1] + this.y; + bx = this.collision_poly.pts_cache[((i+1)%len)*2] + this.x; + by = this.collision_poly.pts_cache[((i+1)%len)*2+1] + this.y; + ctx.moveTo(ax, ay); + ctx.lineTo(bx, by); + } + ctx.stroke(); + ctx.closePath(); + */ + /* + if (this.behavior_insts.length >= 1 && this.behavior_insts[0].draw) + { + this.behavior_insts[0].draw(ctx); + } + */ + }; + instanceProto.drawGL_earlyZPass = function(glw) + { + this.drawGL(glw); + }; + instanceProto.drawGL = function(glw) + { + glw.setTexture(this.curWebGLTexture); + glw.setOpacity(this.opacity); + var cur_frame = this.curFrame; + var q = this.bquad; + if (this.runtime.pixel_rounding) + { + var ox = Math.round(this.x) - this.x; + var oy = Math.round(this.y) - this.y; + if (cur_frame.spritesheeted) + glw.quadTex(q.tlx + ox, q.tly + oy, q.trx + ox, q.try_ + oy, q.brx + ox, q.bry + oy, q.blx + ox, q.bly + oy, cur_frame.sheetTex); + else + glw.quad(q.tlx + ox, q.tly + oy, q.trx + ox, q.try_ + oy, q.brx + ox, q.bry + oy, q.blx + ox, q.bly + oy); + } + else + { + if (cur_frame.spritesheeted) + glw.quadTex(q.tlx, q.tly, q.trx, q.try_, q.brx, q.bry, q.blx, q.bly, cur_frame.sheetTex); + else + glw.quad(q.tlx, q.tly, q.trx, q.try_, q.brx, q.bry, q.blx, q.bly); + } + }; + instanceProto.getImagePointIndexByName = function(name_) + { + var cur_frame = this.curFrame; + var i, len; + for (i = 0, len = cur_frame.image_points.length; i < len; i++) + { + if (cr.equals_nocase(name_, cur_frame.image_points[i][0])) + return i; + } + return -1; + }; + instanceProto.getImagePoint = function(imgpt, getX) + { + var cur_frame = this.curFrame; + var image_points = cur_frame.image_points; + var index; + if (cr.is_string(imgpt)) + index = this.getImagePointIndexByName(imgpt); + else + index = imgpt - 1; // 0 is origin + index = cr.floor(index); + if (index < 0 || index >= image_points.length) + return getX ? this.x : this.y; // return origin + var x = (image_points[index][1] - cur_frame.hotspotX) * this.width; + var y = image_points[index][2]; + y = (y - cur_frame.hotspotY) * this.height; + var cosa = Math.cos(this.angle); + var sina = Math.sin(this.angle); + var x_temp = (x * cosa) - (y * sina); + y = (y * cosa) + (x * sina); + x = x_temp; + x += this.x; + y += this.y; + return getX ? x : y; + }; + function Cnds() {}; + var arrCache = []; + function allocArr() + { + if (arrCache.length) + return arrCache.pop(); + else + return [0, 0, 0]; + }; + function freeArr(a) + { + a[0] = 0; + a[1] = 0; + a[2] = 0; + arrCache.push(a); + }; + function makeCollKey(a, b) + { + if (a < b) + return "" + a + "," + b; + else + return "" + b + "," + a; + }; + function collmemory_add(collmemory, a, b, tickcount) + { + var a_uid = a.uid; + var b_uid = b.uid; + var key = makeCollKey(a_uid, b_uid); + if (collmemory.hasOwnProperty(key)) + { + collmemory[key][2] = tickcount; + return; + } + var arr = allocArr(); + arr[0] = a_uid; + arr[1] = b_uid; + arr[2] = tickcount; + collmemory[key] = arr; + }; + function collmemory_remove(collmemory, a, b) + { + var key = makeCollKey(a.uid, b.uid); + if (collmemory.hasOwnProperty(key)) + { + freeArr(collmemory[key]); + delete collmemory[key]; + } + }; + function collmemory_removeInstance(collmemory, inst) + { + var uid = inst.uid; + var p, entry; + for (p in collmemory) + { + if (collmemory.hasOwnProperty(p)) + { + entry = collmemory[p]; + if (entry[0] === uid || entry[1] === uid) + { + freeArr(collmemory[p]); + delete collmemory[p]; + } + } + } + }; + var last_coll_tickcount = -2; + function collmemory_has(collmemory, a, b) + { + var key = makeCollKey(a.uid, b.uid); + if (collmemory.hasOwnProperty(key)) + { + last_coll_tickcount = collmemory[key][2]; + return true; + } + else + { + last_coll_tickcount = -2; + return false; + } + }; + var candidates1 = []; + Cnds.prototype.OnCollision = function (rtype) + { + if (!rtype) + return false; + var runtime = this.runtime; + var cnd = runtime.getCurrentCondition(); + var ltype = cnd.type; + var collmemory = null; + if (cnd.extra["collmemory"]) + { + collmemory = cnd.extra["collmemory"]; + } + else + { + collmemory = {}; + cnd.extra["collmemory"] = collmemory; + } + if (!cnd.extra["spriteCreatedDestroyCallback"]) + { + cnd.extra["spriteCreatedDestroyCallback"] = true; + runtime.addDestroyCallback(function(inst) { + collmemory_removeInstance(cnd.extra["collmemory"], inst); + }); + } + var lsol = ltype.getCurrentSol(); + var rsol = rtype.getCurrentSol(); + var linstances = lsol.getObjects(); + var rinstances; + var registeredInstances; + var l, linst, r, rinst; + var curlsol, currsol; + var tickcount = this.runtime.tickcount; + var lasttickcount = tickcount - 1; + var exists, run; + var current_event = runtime.getCurrentEventStack().current_event; + var orblock = current_event.orblock; + for (l = 0; l < linstances.length; l++) + { + linst = linstances[l]; + if (rsol.select_all) + { + linst.update_bbox(); + this.runtime.getCollisionCandidates(linst.layer, rtype, linst.bbox, candidates1); + rinstances = candidates1; + this.runtime.addRegisteredCollisionCandidates(linst, rtype, rinstances); + } + else + { + rinstances = rsol.getObjects(); + } + for (r = 0; r < rinstances.length; r++) + { + rinst = rinstances[r]; + if (runtime.testOverlap(linst, rinst) || runtime.checkRegisteredCollision(linst, rinst)) + { + exists = collmemory_has(collmemory, linst, rinst); + run = (!exists || (last_coll_tickcount < lasttickcount)); + collmemory_add(collmemory, linst, rinst, tickcount); + if (run) + { + runtime.pushCopySol(current_event.solModifiers); + curlsol = ltype.getCurrentSol(); + currsol = rtype.getCurrentSol(); + curlsol.select_all = false; + currsol.select_all = false; + if (ltype === rtype) + { + curlsol.instances.length = 2; // just use lsol, is same reference as rsol + curlsol.instances[0] = linst; + curlsol.instances[1] = rinst; + ltype.applySolToContainer(); + } + else + { + curlsol.instances.length = 1; + currsol.instances.length = 1; + curlsol.instances[0] = linst; + currsol.instances[0] = rinst; + ltype.applySolToContainer(); + rtype.applySolToContainer(); + } + current_event.retrigger(); + runtime.popSol(current_event.solModifiers); + } + } + else + { + collmemory_remove(collmemory, linst, rinst); + } + } + cr.clearArray(candidates1); + } + return false; + }; + var rpicktype = null; + var rtopick = new cr.ObjectSet(); + var needscollisionfinish = false; + var candidates2 = []; + var temp_bbox = new cr.rect(0, 0, 0, 0); + function DoOverlapCondition(rtype, offx, offy) + { + if (!rtype) + return false; + var do_offset = (offx !== 0 || offy !== 0); + var oldx, oldy, ret = false, r, lenr, rinst; + var cnd = this.runtime.getCurrentCondition(); + var ltype = cnd.type; + var inverted = cnd.inverted; + var rsol = rtype.getCurrentSol(); + var orblock = this.runtime.getCurrentEventStack().current_event.orblock; + var rinstances; + if (rsol.select_all) + { + this.update_bbox(); + temp_bbox.copy(this.bbox); + temp_bbox.offset(offx, offy); + this.runtime.getCollisionCandidates(this.layer, rtype, temp_bbox, candidates2); + rinstances = candidates2; + } + else if (orblock) + { + if (this.runtime.isCurrentConditionFirst() && !rsol.else_instances.length && rsol.instances.length) + rinstances = rsol.instances; + else + rinstances = rsol.else_instances; + } + else + { + rinstances = rsol.instances; + } + rpicktype = rtype; + needscollisionfinish = (ltype !== rtype && !inverted); + if (do_offset) + { + oldx = this.x; + oldy = this.y; + this.x += offx; + this.y += offy; + this.set_bbox_changed(); + } + for (r = 0, lenr = rinstances.length; r < lenr; r++) + { + rinst = rinstances[r]; + if (this.runtime.testOverlap(this, rinst)) + { + ret = true; + if (inverted) + break; + if (ltype !== rtype) + rtopick.add(rinst); + } + } + if (do_offset) + { + this.x = oldx; + this.y = oldy; + this.set_bbox_changed(); + } + cr.clearArray(candidates2); + return ret; + }; + typeProto.finish = function (do_pick) + { + if (!needscollisionfinish) + return; + if (do_pick) + { + var orblock = this.runtime.getCurrentEventStack().current_event.orblock; + var sol = rpicktype.getCurrentSol(); + var topick = rtopick.valuesRef(); + var i, len, inst; + if (sol.select_all) + { + sol.select_all = false; + cr.clearArray(sol.instances); + for (i = 0, len = topick.length; i < len; ++i) + { + sol.instances[i] = topick[i]; + } + if (orblock) + { + cr.clearArray(sol.else_instances); + for (i = 0, len = rpicktype.instances.length; i < len; ++i) + { + inst = rpicktype.instances[i]; + if (!rtopick.contains(inst)) + sol.else_instances.push(inst); + } + } + } + else + { + if (orblock) + { + var initsize = sol.instances.length; + for (i = 0, len = topick.length; i < len; ++i) + { + sol.instances[initsize + i] = topick[i]; + cr.arrayFindRemove(sol.else_instances, topick[i]); + } + } + else + { + cr.shallowAssignArray(sol.instances, topick); + } + } + rpicktype.applySolToContainer(); + } + rtopick.clear(); + needscollisionfinish = false; + }; + Cnds.prototype.IsOverlapping = function (rtype) + { + return DoOverlapCondition.call(this, rtype, 0, 0); + }; + Cnds.prototype.IsOverlappingOffset = function (rtype, offx, offy) + { + return DoOverlapCondition.call(this, rtype, offx, offy); + }; + Cnds.prototype.IsAnimPlaying = function (animname) + { + if (this.changeAnimName.length) + return cr.equals_nocase(this.changeAnimName, animname); + else + return cr.equals_nocase(this.cur_animation.name, animname); + }; + Cnds.prototype.CompareFrame = function (cmp, framenum) + { + return cr.do_cmp(this.cur_frame, cmp, framenum); + }; + Cnds.prototype.CompareAnimSpeed = function (cmp, x) + { + var s = (this.animForwards ? this.cur_anim_speed : -this.cur_anim_speed); + return cr.do_cmp(s, cmp, x); + }; + Cnds.prototype.OnAnimFinished = function (animname) + { + return cr.equals_nocase(this.animTriggerName, animname); + }; + Cnds.prototype.OnAnyAnimFinished = function () + { + return true; + }; + Cnds.prototype.OnFrameChanged = function () + { + return true; + }; + Cnds.prototype.IsMirrored = function () + { + return this.width < 0; + }; + Cnds.prototype.IsFlipped = function () + { + return this.height < 0; + }; + Cnds.prototype.OnURLLoaded = function () + { + return true; + }; + Cnds.prototype.IsCollisionEnabled = function () + { + return this.collisionsEnabled; + }; + pluginProto.cnds = new Cnds(); + function Acts() {}; + Acts.prototype.Spawn = function (obj, layer, imgpt) + { + if (!obj || !layer) + return; + var inst = this.runtime.createInstance(obj, layer, this.getImagePoint(imgpt, true), this.getImagePoint(imgpt, false)); + if (!inst) + return; + if (typeof inst.angle !== "undefined") + { + inst.angle = this.angle; + inst.set_bbox_changed(); + } + this.runtime.isInOnDestroy++; + var i, len, s; + this.runtime.trigger(Object.getPrototypeOf(obj.plugin).cnds.OnCreated, inst); + if (inst.is_contained) + { + for (i = 0, len = inst.siblings.length; i < len; i++) + { + s = inst.siblings[i]; + this.runtime.trigger(Object.getPrototypeOf(s.type.plugin).cnds.OnCreated, s); + } + } + this.runtime.isInOnDestroy--; + var cur_act = this.runtime.getCurrentAction(); + var reset_sol = false; + if (cr.is_undefined(cur_act.extra["Spawn_LastExec"]) || cur_act.extra["Spawn_LastExec"] < this.runtime.execcount) + { + reset_sol = true; + cur_act.extra["Spawn_LastExec"] = this.runtime.execcount; + } + var sol; + if (obj != this.type) + { + sol = obj.getCurrentSol(); + sol.select_all = false; + if (reset_sol) + { + cr.clearArray(sol.instances); + sol.instances[0] = inst; + } + else + sol.instances.push(inst); + if (inst.is_contained) + { + for (i = 0, len = inst.siblings.length; i < len; i++) + { + s = inst.siblings[i]; + sol = s.type.getCurrentSol(); + sol.select_all = false; + if (reset_sol) + { + cr.clearArray(sol.instances); + sol.instances[0] = s; + } + else + sol.instances.push(s); + } + } + } + }; + Acts.prototype.SetEffect = function (effect) + { + this.blend_mode = effect; + this.compositeOp = cr.effectToCompositeOp(effect); + cr.setGLBlend(this, effect, this.runtime.gl); + this.runtime.redraw = true; + }; + Acts.prototype.StopAnim = function () + { + this.animPlaying = false; + }; + Acts.prototype.StartAnim = function (from) + { + this.animPlaying = true; + this.frameStart = this.getNowTime(); + if (from === 1 && this.cur_frame !== 0) + { + this.changeAnimFrame = 0; + if (!this.inAnimTrigger) + this.doChangeAnimFrame(); + } + if (!this.isTicking) + { + this.runtime.tickMe(this); + this.isTicking = true; + } + }; + Acts.prototype.SetAnim = function (animname, from) + { + this.changeAnimName = animname; + this.changeAnimFrom = from; + if (!this.isTicking) + { + this.runtime.tickMe(this); + this.isTicking = true; + } + if (!this.inAnimTrigger) + this.doChangeAnim(); + }; + Acts.prototype.SetAnimFrame = function (framenumber) + { + this.changeAnimFrame = framenumber; + if (!this.isTicking) + { + this.runtime.tickMe(this); + this.isTicking = true; + } + if (!this.inAnimTrigger) + this.doChangeAnimFrame(); + }; + Acts.prototype.SetAnimSpeed = function (s) + { + this.cur_anim_speed = cr.abs(s); + this.animForwards = (s >= 0); + if (!this.isTicking) + { + this.runtime.tickMe(this); + this.isTicking = true; + } + }; + Acts.prototype.SetAnimRepeatToFrame = function (s) + { + s = Math.floor(s); + if (s < 0) + s = 0; + if (s >= this.cur_animation.frames.length) + s = this.cur_animation.frames.length - 1; + this.cur_anim_repeatto = s; + }; + Acts.prototype.SetMirrored = function (m) + { + var neww = cr.abs(this.width) * (m === 0 ? -1 : 1); + if (this.width === neww) + return; + this.width = neww; + this.set_bbox_changed(); + }; + Acts.prototype.SetFlipped = function (f) + { + var newh = cr.abs(this.height) * (f === 0 ? -1 : 1); + if (this.height === newh) + return; + this.height = newh; + this.set_bbox_changed(); + }; + Acts.prototype.SetScale = function (s) + { + var cur_frame = this.curFrame; + var mirror_factor = (this.width < 0 ? -1 : 1); + var flip_factor = (this.height < 0 ? -1 : 1); + var new_width = cur_frame.width * s * mirror_factor; + var new_height = cur_frame.height * s * flip_factor; + if (this.width !== new_width || this.height !== new_height) + { + this.width = new_width; + this.height = new_height; + this.set_bbox_changed(); + } + }; + Acts.prototype.LoadURL = function (url_, resize_, crossOrigin_) + { + var img = new Image(); + var self = this; + var curFrame_ = this.curFrame; + img.onload = function () + { + if (curFrame_.texture_img.src === img.src) + { + if (self.runtime.glwrap && self.curFrame === curFrame_) + self.curWebGLTexture = curFrame_.webGL_texture; + if (resize_ === 0) // resize to image size + { + self.width = img.width; + self.height = img.height; + self.set_bbox_changed(); + } + self.runtime.redraw = true; + self.runtime.trigger(cr.plugins_.Sprite.prototype.cnds.OnURLLoaded, self); + return; + } + curFrame_.texture_img = img; + curFrame_.offx = 0; + curFrame_.offy = 0; + curFrame_.width = img.width; + curFrame_.height = img.height; + curFrame_.spritesheeted = false; + curFrame_.datauri = ""; + curFrame_.pixelformat = 0; // reset to RGBA, since we don't know what type of image will have come in + if (self.runtime.glwrap) + { + if (curFrame_.webGL_texture) + self.runtime.glwrap.deleteTexture(curFrame_.webGL_texture); + curFrame_.webGL_texture = self.runtime.glwrap.loadTexture(img, false, self.runtime.linearSampling); + if (self.curFrame === curFrame_) + self.curWebGLTexture = curFrame_.webGL_texture; + self.type.updateAllCurrentTexture(); + } + if (resize_ === 0) // resize to image size + { + self.width = img.width; + self.height = img.height; + self.set_bbox_changed(); + } + self.runtime.redraw = true; + self.runtime.trigger(cr.plugins_.Sprite.prototype.cnds.OnURLLoaded, self); + }; + if (url_.substr(0, 5) !== "data:" && crossOrigin_ === 0) + img["crossOrigin"] = "anonymous"; + this.runtime.setImageSrc(img, url_); + }; + Acts.prototype.SetCollisions = function (set_) + { + if (this.collisionsEnabled === (set_ !== 0)) + return; // no change + this.collisionsEnabled = (set_ !== 0); + if (this.collisionsEnabled) + this.set_bbox_changed(); // needs to be added back to cells + else + { + if (this.collcells.right >= this.collcells.left) + this.type.collision_grid.update(this, this.collcells, null); + this.collcells.set(0, 0, -1, -1); + } + }; + pluginProto.acts = new Acts(); + function Exps() {}; + Exps.prototype.AnimationFrame = function (ret) + { + ret.set_int(this.cur_frame); + }; + Exps.prototype.AnimationFrameCount = function (ret) + { + ret.set_int(this.cur_animation.frames.length); + }; + Exps.prototype.AnimationName = function (ret) + { + ret.set_string(this.cur_animation.name); + }; + Exps.prototype.AnimationSpeed = function (ret) + { + ret.set_float(this.animForwards ? this.cur_anim_speed : -this.cur_anim_speed); + }; + Exps.prototype.ImagePointX = function (ret, imgpt) + { + ret.set_float(this.getImagePoint(imgpt, true)); + }; + Exps.prototype.ImagePointY = function (ret, imgpt) + { + ret.set_float(this.getImagePoint(imgpt, false)); + }; + Exps.prototype.ImagePointCount = function (ret) + { + ret.set_int(this.curFrame.image_points.length); + }; + Exps.prototype.ImageWidth = function (ret) + { + ret.set_float(this.curFrame.width); + }; + Exps.prototype.ImageHeight = function (ret) + { + ret.set_float(this.curFrame.height); + }; + pluginProto.exps = new Exps(); +}()); +; +; +cr.plugins_.SyncStorage = function(runtime) +{ + this.runtime = runtime; +}; +(function () +{ + var pluginProto = cr.plugins_.SyncStorage.prototype; + pluginProto.Type = function(plugin) + { + this.plugin = plugin; + this.runtime = plugin.runtime; + }; + var typeProto = pluginProto.Type.prototype; + typeProto.onCreate = function() + { + }; + pluginProto.Instance = function(type) + { + this.type = type; + this.runtime = type.runtime; + }; + var instanceProto = pluginProto.Instance.prototype; + instanceProto.onCreate = function() + { + this.data = {}; + this.isStorageLoaded = false; + this.storageIndex = this.properties[1]; + this.isEncodingEnabled = !this.properties[3]; + this.headSalt = this.properties[4]; + this.tailSalt = this.properties[5]; + this.isLocalStorageLoaded = null; + this.LS_Instance = null; + this.LS_ProtoActions = null; + this.lastErrorMsg = null; + }; + instanceProto.onDestroy = function () + { + }; + instanceProto.isLocalStorageReady = function() + { + if (this.isLocalStorageLoaded) return true; + if ( ! this.storageIndex) return false; + if(cr.plugins_.LocalStorage) + { + var type, LS_Type; + for (type in this.runtime.types) + { + if ( ! this.runtime.types.hasOwnProperty(type)) continue; + if (this.runtime.types[type].plugin instanceof cr.plugins_.LocalStorage) + { + LS_Type = this.runtime.types[type]; + } + } + if (LS_Type) + { + this.LS_Instance = LS_Type.instances[0]; + this.LS_ProtoActions = cr.plugins_.LocalStorage.prototype.acts; + this.isLocalStorageLoaded = true; + return true; + } + } + console.log("\n*\n*\n*\nERROR: LocalStorage plugin not found. You must add LocalStorage plugin to the project. It's a JS library for SyncStorage plugin.\n*\n*\n*\n"); + return false; + }; + function Cnds() {}; + /** + * @returns {boolean} + */ + Cnds.prototype.OnLoaded = function() + { + return true; + }; + /** + * @returns {boolean} + */ + Cnds.prototype.OnLoadError = function() + { + return true; + }; + /** + * @returns {boolean} + */ + Cnds.prototype.IsLoaded = function() + { + return this.isStorageLoaded; + }; + /** + * @returns {boolean} + */ + Cnds.prototype.HasData = function(index_) + { + return this.hasData(index_); + }; + /** + * @returns {boolean} + */ + Cnds.prototype.CompareData = function(dataIndex_, cmp_, value_) + { + return cr.do_cmp(this.data[dataIndex_], cmp_, value_); + }; + /** + * @returns {boolean} + */ + Cnds.prototype.OnSave = function() + { + return true; + }; + /** + * @returns {boolean} + */ + Cnds.prototype.OnDataMissing = function() + { + return true; + }; + pluginProto.cnds = new Cnds(); + function Acts() {}; + Acts.prototype.SetData = function(index_, value_) + { + this.data[index_] = value_; + }; + Acts.prototype.SaveData = function() + { + if(this.isLocalStorageReady()) + { + this.LS_ProtoActions.SetItem.call(this.LS_Instance, this.storageIndex, + this.isEncodingEnabled + ? this.encode(JSON.stringify(this.data)) + : JSON.stringify(this.data)); + } + this.runtime.trigger(cr.plugins_.SyncStorage.prototype.cnds.OnSave, this); + }; + Acts.prototype.LoadData = function() + { + if( ! this.isLocalStorageReady()) + { + this.lastErrorMsg = "Could not load data from LocalStorage. Possible reasons: \"LocalStorage IDX\" property not set or LocalStorage plugin is not added to the project."; + this.runtime.trigger(cr.plugins_.SyncStorage.prototype.cnds.OnLoadError, this); + this.lastErrorMsg = ""; + return; + } + var self = this; + localforage["getItem"](this.storageIndex, function (err, value) + { + if (err) + { + if ( ! err) + err = "unknown error"; + else if (typeof err.message === "string") + err = err.message; + else if (typeof err.name === "string") + err = err.name; + else if (typeof err.data === "string") + err = err.data; + else if (typeof err !== "string") + err = "unknown error"; + self.isStorageLoaded = false; + self.lastErrorMsg = err; + self.runtime.trigger(cr.plugins_.SyncStorage.prototype.cnds.OnLoadError, self); + self.lastErrorMsg = null; + } + else + { + if (typeof value === "undefined" || value === null || value === "") + { + self.data = {}; + self.runtime.trigger(cr.plugins_.SyncStorage.prototype.cnds.OnDataMissing, self); + } + else + { + self.data = self.isEncodingEnabled ? JSON.parse(self.decode(value)) : JSON.parse(value); + } + self.isStorageLoaded = true; + self.runtime.trigger(cr.plugins_.SyncStorage.prototype.cnds.OnLoaded, self); + } + }); + }; + Acts.prototype.ClearData = function() + { + this.data = {}; + }; + Acts.prototype.RemoveData = function(index_) + { + if(typeof this.data[index_] !== "undefined") + { + delete this.data[index_]; + } + }; + Acts.prototype.LoadString = function(data_) + { + try + { + if(data_ == "") + { + this.data = {}; + this.runtime.trigger(cr.plugins_.SyncStorage.prototype.cnds.OnDataMissing, this); + } + else + { + if(data_.charAt(0) === "{") + { + this.data = JSON.parse(data_); + } + else + { + this.data = JSON.parse(this.decode(data_)); + } + } + this.runtime.trigger(cr.plugins_.SyncStorage.prototype.cnds.OnLoaded, this); + } + catch(e) + { + this.lastErrorMsg = e.message; + this.runtime.trigger(cr.plugins_.SyncStorage.prototype.cnds.OnLoadError, this); + this.lastErrorMsg = ""; + } + }; + Acts.prototype.AddValue = function(index_, value_) + { + if ( ! this.hasData(index_)) + { + this.data[index_] = 0; + } + if ( ! isNaN(parseFloat(value_)) && isFinite(value_)) + { + this.data[index_] += value_; + } + }; + Acts.prototype.SubtractValue = function(index_, value_) + { + if ( ! this.hasData(index_)) + { + this.data[index_] = 0; + } + if ( ! isNaN(parseFloat(value_)) && isFinite(value_)) + { + this.data[index_] -= value_; + } + }; + Acts.prototype.AppendValue = function(index_, value_) + { + if ( ! this.hasData(index_)) + { + this.data[index_] = ""; + } + if (typeof value_ === "string") + { + this.data[index_] += value_; + } + }; + Acts.prototype.PrependValue = function(index_, value_) + { + if ( ! this.hasData(index_)) + { + this.data[index_] = ""; + } + if (typeof value_ === "string") + { + this.data[index_] = value_ + this.data[index_]; + } + }; + pluginProto.acts = new Acts(); + function Exps() {}; + Exps.prototype.GetData = function(ret, dataIndex_) + { + ret.set_any(this.data[dataIndex_]); + }; + Exps.prototype.StorageIndex = function(ret) + { + ret.set_string(this.storageIndex); + }; + Exps.prototype.HasData = function(ret, index_) + { + ret.set_int(+this.hasData(index_)); + }; + Exps.prototype.AsJSON = function(ret) + { + ret.set_string(JSON.stringify(this.data)); + }; + Exps.prototype.AsString = function(ret) + { + ret.set_string(this.isEncodingEnabled + ? this.encode(JSON.stringify(this.data)) + : JSON.stringify(this.data)); + }; + Exps.prototype.ErrorMsg = function(ret) + { + ret.set_string(this.lastErrorMsg); + }; + Exps.prototype.Get = function(ret, dataIndex_) + { + ret.set_any(this.data[dataIndex_]); + }; + Exps.prototype.Has = function(ret, index_) + { + ret.set_int(+this.hasData(index_)); + }; + instanceProto.encode = function (rawData) + { + var encodedData = Secret.encode(rawData); + var i; + for (i = 0; i < this.headSalt; i++) + { + encodedData = encodedData.charAt(Math.floor((Math.random() * (encodedData.length-1)))) + encodedData; + } + for (i = 0; i < this.tailSalt; i++) + { + encodedData += encodedData.charAt(Math.floor((Math.random() * (encodedData.length-1)))); + } + return encodedData; + }; + instanceProto.decode = function (encodedData) + { + var rawData = encodedData.substring(this.headSalt); + rawData = rawData.substring(0, rawData.length - this.tailSalt); + rawData = Secret.decode(rawData); + return rawData; + }; + instanceProto.hasData = function(index_) + { + return !! this.data[index_]; + }; + pluginProto.exps = new Exps(); + var Secret={_keyStr:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",encode:function(r){var t,e,o,a,h,n,d,C="",i=0;for(r=Secret._utf8_encode(r);i>2,h=(3&t)<<4|(e=r.charCodeAt(i++))>>4,n=(15&e)<<2|(o=r.charCodeAt(i++))>>6,d=63&o,isNaN(e)?n=d=64:isNaN(o)&&(d=64),C=C+this._keyStr.charAt(a)+this._keyStr.charAt(h)+this._keyStr.charAt(n)+this._keyStr.charAt(d);return C},decode:function(r){var t,e,o,a,h,n,d="",C=0;for(r=r.replace(/[^A-Za-z0-9\+\/\=]/g,"");C>4,e=(15&a)<<4|(h=this._keyStr.indexOf(r.charAt(C++)))>>2,o=(3&h)<<6|(n=this._keyStr.indexOf(r.charAt(C++))),d+=String.fromCharCode(t),64!=h&&(d+=String.fromCharCode(e)),64!=n&&(d+=String.fromCharCode(o));return d=Secret._utf8_decode(d)},_utf8_encode:function(r){r=r.replace(/\r\n/g,"\n");for(var t="",e=0;e127&&o<2048?(t+=String.fromCharCode(o>>6|192),t+=String.fromCharCode(63&o|128)):(t+=String.fromCharCode(o>>12|224),t+=String.fromCharCode(o>>6&63|128),t+=String.fromCharCode(63&o|128))}return t},_utf8_decode:function(r){for(var t="",e=0,o=0,a=0,h=0;e191&&o<224?(a=r.charCodeAt(e+1),t+=String.fromCharCode((31&o)<<6|63&a),e+=2):(a=r.charCodeAt(e+1),h=r.charCodeAt(e+2),t+=String.fromCharCode((15&o)<<12|(63&a)<<6|63&h),e+=3);return t}}; +}()); +/** + * Object holder for the plugin + */ +cr.plugins_.TR_AdBlockDetector = function (runtime) +{ + this.runtime = runtime; +}; +/** + * C2 plugin + */ +(function () +{ + var pluginProto = cr.plugins_.TR_AdBlockDetector.prototype; + pluginProto.Type = function (plugin) + { + this.plugin = plugin; + this.runtime = plugin.runtime; + }; + var typeProto = pluginProto.Type.prototype; + typeProto.onCreate = function () + { + }; + /** + * C2 specific behaviour + */ + pluginProto.Instance = function (type) + { + this.type = type; + this.runtime = type.runtime; + }; + var instanceProto = pluginProto.Instance.prototype; + instanceProto.onCreate = function () + { + this.adblock = false + var self = this + var xhttp = new XMLHttpRequest (); + xhttp.onreadystatechange = function () { + if (this.readyState === 4 && this.status === 0) + self.adblock = true + } + xhttp.open ("GET", "https://api.adinplay.com/libs/aiptag/assets/adsbygoogle.js", true); + xhttp.send (); + }; + function Cnds() + { + } + /** * @returns {boolean} */ + Cnds.prototype.IsBlocking = function () + { + return (this.adblock); + }; + /** * @returns {boolean} */ + Cnds.prototype.IsReady = function () + { + return true; + }; + pluginProto.cnds = new Cnds(); + /** + * Plugin actions + */ + function Acts() + { + } + pluginProto.acts = new Acts(); + function Exps() + { + }; + Exps.prototype.IsBlocking = function (ret) + { + ret.set_int(+(this.adblock)); + }; + pluginProto.exps = new Exps(); +}()); +; +; +cr.plugins_.TR_ClockParser = function(runtime) +{ + this.runtime = runtime; +}; +(function () +{ + var pluginProto = cr.plugins_.TR_ClockParser.prototype; + pluginProto.Type = function(plugin) + { + this.plugin = plugin; + this.runtime = plugin.runtime; + }; + var typeProto = pluginProto.Type.prototype; + typeProto.onCreate = function() + { + }; + pluginProto.Instance = function(type) + { + this.type = type; + this.runtime = type.runtime; + }; + var instanceProto = pluginProto.Instance.prototype; + instanceProto.onCreate = function() + { + }; + instanceProto.onDestroy = function () + { + }; + function Cnds() {}; + pluginProto.cnds = new Cnds(); + function Acts() {}; + pluginProto.acts = new Acts(); + function Exps() {}; + Exps.prototype.Minimal = function(ret, seconds_) + { + seconds_ = parseInt(seconds_, 10); + var hours = Math.floor(seconds_ / 3600); + var minutes = Math.floor((seconds_ - (hours * 3600)) / 60); + var seconds = seconds_ - (hours * 3600) - (minutes * 60); + var clockString = ""; + if(hours > 0) + { + clockString += (hours < 10 ? "0" + hours : hours) + ":"; + } + if(hours > 0 || minutes > 0) + { + clockString += (minutes < 10 ? "0" + minutes : minutes) + ":"; + } + clockString += (seconds < 10 ? "0" + seconds : seconds); + ret.set_string(clockString); + }; + Exps.prototype.MMSS = function(ret, seconds_) + { + seconds_ = parseInt(seconds_, 10); + var minutes = Math.floor(seconds_ / 60); + var seconds = seconds_ - minutes * 60; + if (minutes < 10) { minutes = "0" +minutes; } + if (seconds < 10) { seconds = "0" + seconds; } + ret.set_string(minutes + ':' + seconds); + }; + Exps.prototype.HHMMSS = function(ret, seconds_) + { + seconds_ = parseInt(seconds_, 10); + var hours = Math.floor(seconds_ / 3600); + var minutes = Math.floor((seconds_ - (hours * 3600)) / 60); + var seconds = seconds_ - (hours * 3600) - (minutes * 60); + if (hours < 10) { hours = "0" + hours; } + if (minutes < 10) { minutes = "0" +minutes; } + if (seconds < 10) { seconds = "0" + seconds; } + ret.set_string(hours + ':' + minutes + ':' + seconds); + }; + pluginProto.exps = new Exps(); +}()); +; +; +cr.plugins_.Text = function(runtime) +{ + this.runtime = runtime; +}; +(function () +{ + var pluginProto = cr.plugins_.Text.prototype; + pluginProto.onCreate = function () + { + pluginProto.acts.SetWidth = function (w) + { + if (this.width !== w) + { + this.width = w; + this.text_changed = true; // also recalculate text wrapping + this.set_bbox_changed(); + } + }; + }; + pluginProto.Type = function(plugin) + { + this.plugin = plugin; + this.runtime = plugin.runtime; + }; + var typeProto = pluginProto.Type.prototype; + typeProto.onCreate = function() + { + }; + typeProto.onLostWebGLContext = function () + { + if (this.is_family) + return; + var i, len, inst; + for (i = 0, len = this.instances.length; i < len; i++) + { + inst = this.instances[i]; + inst.mycanvas = null; + inst.myctx = null; + inst.mytex = null; + } + }; + pluginProto.Instance = function(type) + { + this.type = type; + this.runtime = type.runtime; + if (this.recycled) + cr.clearArray(this.lines); + else + this.lines = []; // for word wrapping + this.text_changed = true; + }; + var instanceProto = pluginProto.Instance.prototype; + var requestedWebFonts = {}; // already requested web fonts have an entry here + instanceProto.onCreate = function() + { + this.text = this.properties[0]; + this.visible = (this.properties[1] === 0); // 0=visible, 1=invisible + this.font = this.properties[2]; + this.color = this.properties[3]; + this.halign = this.properties[4]; // 0=left, 1=center, 2=right + this.valign = this.properties[5]; // 0=top, 1=center, 2=bottom + this.wrapbyword = (this.properties[7] === 0); // 0=word, 1=character + this.lastwidth = this.width; + this.lastwrapwidth = this.width; + this.lastheight = this.height; + this.line_height_offset = this.properties[8]; + this.facename = ""; + this.fontstyle = ""; + this.ptSize = 0; + this.textWidth = 0; + this.textHeight = 0; + this.parseFont(); + this.mycanvas = null; + this.myctx = null; + this.mytex = null; + this.need_text_redraw = false; + this.last_render_tick = this.runtime.tickcount; + if (this.recycled) + this.rcTex.set(0, 0, 1, 1); + else + this.rcTex = new cr.rect(0, 0, 1, 1); + if (this.runtime.glwrap) + this.runtime.tickMe(this); +; + }; + instanceProto.parseFont = function () + { + var arr = this.font.split(" "); + var i; + for (i = 0; i < arr.length; i++) + { + if (arr[i].substr(arr[i].length - 2, 2) === "pt") + { + this.ptSize = parseInt(arr[i].substr(0, arr[i].length - 2)); + this.pxHeight = Math.ceil((this.ptSize / 72.0) * 96.0) + 4; // assume 96dpi... + if (i > 0) + this.fontstyle = arr[i - 1]; + this.facename = arr[i + 1]; + for (i = i + 2; i < arr.length; i++) + this.facename += " " + arr[i]; + break; + } + } + }; + instanceProto.saveToJSON = function () + { + return { + "t": this.text, + "f": this.font, + "c": this.color, + "ha": this.halign, + "va": this.valign, + "wr": this.wrapbyword, + "lho": this.line_height_offset, + "fn": this.facename, + "fs": this.fontstyle, + "ps": this.ptSize, + "pxh": this.pxHeight, + "tw": this.textWidth, + "th": this.textHeight, + "lrt": this.last_render_tick + }; + }; + instanceProto.loadFromJSON = function (o) + { + this.text = o["t"]; + this.font = o["f"]; + this.color = o["c"]; + this.halign = o["ha"]; + this.valign = o["va"]; + this.wrapbyword = o["wr"]; + this.line_height_offset = o["lho"]; + this.facename = o["fn"]; + this.fontstyle = o["fs"]; + this.ptSize = o["ps"]; + this.pxHeight = o["pxh"]; + this.textWidth = o["tw"]; + this.textHeight = o["th"]; + this.last_render_tick = o["lrt"]; + this.text_changed = true; + this.lastwidth = this.width; + this.lastwrapwidth = this.width; + this.lastheight = this.height; + }; + instanceProto.tick = function () + { + if (this.runtime.glwrap && this.mytex && (this.runtime.tickcount - this.last_render_tick >= 300)) + { + var layer = this.layer; + this.update_bbox(); + var bbox = this.bbox; + if (bbox.right < layer.viewLeft || bbox.bottom < layer.viewTop || bbox.left > layer.viewRight || bbox.top > layer.viewBottom) + { + this.runtime.glwrap.deleteTexture(this.mytex); + this.mytex = null; + this.myctx = null; + this.mycanvas = null; + } + } + }; + instanceProto.onDestroy = function () + { + this.myctx = null; + this.mycanvas = null; + if (this.runtime.glwrap && this.mytex) + this.runtime.glwrap.deleteTexture(this.mytex); + this.mytex = null; + }; + instanceProto.updateFont = function () + { + this.font = this.fontstyle + " " + this.ptSize.toString() + "pt " + this.facename; + this.text_changed = true; + this.runtime.redraw = true; + }; + instanceProto.draw = function(ctx, glmode) + { + ctx.font = this.font; + ctx.textBaseline = "top"; + ctx.fillStyle = this.color; + ctx.globalAlpha = glmode ? 1 : this.opacity; + var myscale = 1; + if (glmode) + { + myscale = Math.abs(this.layer.getScale()); + ctx.save(); + ctx.scale(myscale, myscale); + } + if (this.text_changed || this.width !== this.lastwrapwidth) + { + this.type.plugin.WordWrap(this.text, this.lines, ctx, this.width, this.wrapbyword); + this.text_changed = false; + this.lastwrapwidth = this.width; + } + this.update_bbox(); + var penX = glmode ? 0 : this.bquad.tlx; + var penY = glmode ? 0 : this.bquad.tly; + if (this.runtime.pixel_rounding) + { + penX = (penX + 0.5) | 0; + penY = (penY + 0.5) | 0; + } + if (this.angle !== 0 && !glmode) + { + ctx.save(); + ctx.translate(penX, penY); + ctx.rotate(this.angle); + penX = 0; + penY = 0; + } + var endY = penY + this.height; + var line_height = this.pxHeight; + line_height += this.line_height_offset; + var drawX; + var i; + if (this.valign === 1) // center + penY += Math.max(this.height / 2 - (this.lines.length * line_height) / 2, 0); + else if (this.valign === 2) // bottom + penY += Math.max(this.height - (this.lines.length * line_height) - 2, 0); + for (i = 0; i < this.lines.length; i++) + { + drawX = penX; + if (this.halign === 1) // center + drawX = penX + (this.width - this.lines[i].width) / 2; + else if (this.halign === 2) // right + drawX = penX + (this.width - this.lines[i].width); + ctx.fillText(this.lines[i].text, drawX, penY); + penY += line_height; + if (penY >= endY - line_height) + break; + } + if (this.angle !== 0 || glmode) + ctx.restore(); + this.last_render_tick = this.runtime.tickcount; + }; + instanceProto.drawGL = function(glw) + { + if (this.width < 1 || this.height < 1) + return; + var need_redraw = this.text_changed || this.need_text_redraw; + this.need_text_redraw = false; + var layer_scale = this.layer.getScale(); + var layer_angle = this.layer.getAngle(); + var rcTex = this.rcTex; + var floatscaledwidth = layer_scale * this.width; + var floatscaledheight = layer_scale * this.height; + var scaledwidth = Math.ceil(floatscaledwidth); + var scaledheight = Math.ceil(floatscaledheight); + var absscaledwidth = Math.abs(scaledwidth); + var absscaledheight = Math.abs(scaledheight); + var halfw = this.runtime.draw_width / 2; + var halfh = this.runtime.draw_height / 2; + if (!this.myctx) + { + this.mycanvas = document.createElement("canvas"); + this.mycanvas.width = absscaledwidth; + this.mycanvas.height = absscaledheight; + this.lastwidth = absscaledwidth; + this.lastheight = absscaledheight; + need_redraw = true; + this.myctx = this.mycanvas.getContext("2d"); + } + if (absscaledwidth !== this.lastwidth || absscaledheight !== this.lastheight) + { + this.mycanvas.width = absscaledwidth; + this.mycanvas.height = absscaledheight; + if (this.mytex) + { + glw.deleteTexture(this.mytex); + this.mytex = null; + } + need_redraw = true; + } + if (need_redraw) + { + this.myctx.clearRect(0, 0, absscaledwidth, absscaledheight); + this.draw(this.myctx, true); + if (!this.mytex) + this.mytex = glw.createEmptyTexture(absscaledwidth, absscaledheight, this.runtime.linearSampling, this.runtime.isMobile); + glw.videoToTexture(this.mycanvas, this.mytex, this.runtime.isMobile); + } + this.lastwidth = absscaledwidth; + this.lastheight = absscaledheight; + glw.setTexture(this.mytex); + glw.setOpacity(this.opacity); + glw.resetModelView(); + glw.translate(-halfw, -halfh); + glw.updateModelView(); + var q = this.bquad; + var tlx = this.layer.layerToCanvas(q.tlx, q.tly, true, true); + var tly = this.layer.layerToCanvas(q.tlx, q.tly, false, true); + var trx = this.layer.layerToCanvas(q.trx, q.try_, true, true); + var try_ = this.layer.layerToCanvas(q.trx, q.try_, false, true); + var brx = this.layer.layerToCanvas(q.brx, q.bry, true, true); + var bry = this.layer.layerToCanvas(q.brx, q.bry, false, true); + var blx = this.layer.layerToCanvas(q.blx, q.bly, true, true); + var bly = this.layer.layerToCanvas(q.blx, q.bly, false, true); + if (this.runtime.pixel_rounding || (this.angle === 0 && layer_angle === 0)) + { + var ox = ((tlx + 0.5) | 0) - tlx; + var oy = ((tly + 0.5) | 0) - tly + tlx += ox; + tly += oy; + trx += ox; + try_ += oy; + brx += ox; + bry += oy; + blx += ox; + bly += oy; + } + if (this.angle === 0 && layer_angle === 0) + { + trx = tlx + scaledwidth; + try_ = tly; + brx = trx; + bry = tly + scaledheight; + blx = tlx; + bly = bry; + rcTex.right = 1; + rcTex.bottom = 1; + } + else + { + rcTex.right = floatscaledwidth / scaledwidth; + rcTex.bottom = floatscaledheight / scaledheight; + } + glw.quadTex(tlx, tly, trx, try_, brx, bry, blx, bly, rcTex); + glw.resetModelView(); + glw.scale(layer_scale, layer_scale); + glw.rotateZ(-this.layer.getAngle()); + glw.translate((this.layer.viewLeft + this.layer.viewRight) / -2, (this.layer.viewTop + this.layer.viewBottom) / -2); + glw.updateModelView(); + this.last_render_tick = this.runtime.tickcount; + }; + var wordsCache = []; + pluginProto.TokeniseWords = function (text) + { + cr.clearArray(wordsCache); + var cur_word = ""; + var ch; + var i = 0; + while (i < text.length) + { + ch = text.charAt(i); + if (ch === "\n") + { + if (cur_word.length) + { + wordsCache.push(cur_word); + cur_word = ""; + } + wordsCache.push("\n"); + ++i; + } + else if (ch === " " || ch === "\t" || ch === "-") + { + do { + cur_word += text.charAt(i); + i++; + } + while (i < text.length && (text.charAt(i) === " " || text.charAt(i) === "\t")); + wordsCache.push(cur_word); + cur_word = ""; + } + else if (i < text.length) + { + cur_word += ch; + i++; + } + } + if (cur_word.length) + wordsCache.push(cur_word); + }; + var linesCache = []; + function allocLine() + { + if (linesCache.length) + return linesCache.pop(); + else + return {}; + }; + function freeLine(l) + { + linesCache.push(l); + }; + function freeAllLines(arr) + { + var i, len; + for (i = 0, len = arr.length; i < len; i++) + { + freeLine(arr[i]); + } + cr.clearArray(arr); + }; + pluginProto.WordWrap = function (text, lines, ctx, width, wrapbyword) + { + if (!text || !text.length) + { + freeAllLines(lines); + return; + } + if (width <= 2.0) + { + freeAllLines(lines); + return; + } + if (text.length <= 100 && text.indexOf("\n") === -1) + { + var all_width = ctx.measureText(text).width; + if (all_width <= width) + { + freeAllLines(lines); + lines.push(allocLine()); + lines[0].text = text; + lines[0].width = all_width; + return; + } + } + this.WrapText(text, lines, ctx, width, wrapbyword); + }; + function trimSingleSpaceRight(str) + { + if (!str.length || str.charAt(str.length - 1) !== " ") + return str; + return str.substring(0, str.length - 1); + }; + pluginProto.WrapText = function (text, lines, ctx, width, wrapbyword) + { + var wordArray; + if (wrapbyword) + { + this.TokeniseWords(text); // writes to wordsCache + wordArray = wordsCache; + } + else + wordArray = text; + var cur_line = ""; + var prev_line; + var line_width; + var i; + var lineIndex = 0; + var line; + for (i = 0; i < wordArray.length; i++) + { + if (wordArray[i] === "\n") + { + if (lineIndex >= lines.length) + lines.push(allocLine()); + cur_line = trimSingleSpaceRight(cur_line); // for correct center/right alignment + line = lines[lineIndex]; + line.text = cur_line; + line.width = ctx.measureText(cur_line).width; + lineIndex++; + cur_line = ""; + continue; + } + prev_line = cur_line; + cur_line += wordArray[i]; + line_width = ctx.measureText(cur_line).width; + if (line_width >= width) + { + if (lineIndex >= lines.length) + lines.push(allocLine()); + prev_line = trimSingleSpaceRight(prev_line); + line = lines[lineIndex]; + line.text = prev_line; + line.width = ctx.measureText(prev_line).width; + lineIndex++; + cur_line = wordArray[i]; + if (!wrapbyword && cur_line === " ") + cur_line = ""; + } + } + if (cur_line.length) + { + if (lineIndex >= lines.length) + lines.push(allocLine()); + cur_line = trimSingleSpaceRight(cur_line); + line = lines[lineIndex]; + line.text = cur_line; + line.width = ctx.measureText(cur_line).width; + lineIndex++; + } + for (i = lineIndex; i < lines.length; i++) + freeLine(lines[i]); + lines.length = lineIndex; + }; + function Cnds() {}; + Cnds.prototype.CompareText = function(text_to_compare, case_sensitive) + { + if (case_sensitive) + return this.text == text_to_compare; + else + return cr.equals_nocase(this.text, text_to_compare); + }; + pluginProto.cnds = new Cnds(); + function Acts() {}; + Acts.prototype.SetText = function(param) + { + if (cr.is_number(param) && param < 1e9) + param = Math.round(param * 1e10) / 1e10; // round to nearest ten billionth - hides floating point errors + var text_to_set = param.toString(); + if (this.text !== text_to_set) + { + this.text = text_to_set; + this.text_changed = true; + this.runtime.redraw = true; + } + }; + Acts.prototype.AppendText = function(param) + { + if (cr.is_number(param)) + param = Math.round(param * 1e10) / 1e10; // round to nearest ten billionth - hides floating point errors + var text_to_append = param.toString(); + if (text_to_append) // not empty + { + this.text += text_to_append; + this.text_changed = true; + this.runtime.redraw = true; + } + }; + Acts.prototype.SetFontFace = function (face_, style_) + { + var newstyle = ""; + switch (style_) { + case 1: newstyle = "bold"; break; + case 2: newstyle = "italic"; break; + case 3: newstyle = "bold italic"; break; + } + if (face_ === this.facename && newstyle === this.fontstyle) + return; // no change + this.facename = face_; + this.fontstyle = newstyle; + this.updateFont(); + }; + Acts.prototype.SetFontSize = function (size_) + { + if (this.ptSize === size_) + return; + this.ptSize = size_; + this.pxHeight = Math.ceil((this.ptSize / 72.0) * 96.0) + 4; // assume 96dpi... + this.updateFont(); + }; + Acts.prototype.SetFontColor = function (rgb) + { + var newcolor = "rgb(" + cr.GetRValue(rgb).toString() + "," + cr.GetGValue(rgb).toString() + "," + cr.GetBValue(rgb).toString() + ")"; + if (newcolor === this.color) + return; + this.color = newcolor; + this.need_text_redraw = true; + this.runtime.redraw = true; + }; + Acts.prototype.SetWebFont = function (familyname_, cssurl_) + { + if (this.runtime.isDomFree) + { + cr.logexport("[Construct 2] Text plugin: 'Set web font' not supported on this platform - the action has been ignored"); + return; // DC todo + } + var self = this; + var refreshFunc = (function () { + self.runtime.redraw = true; + self.text_changed = true; + }); + if (requestedWebFonts.hasOwnProperty(cssurl_)) + { + var newfacename = "'" + familyname_ + "'"; + if (this.facename === newfacename) + return; // no change + this.facename = newfacename; + this.updateFont(); + for (var i = 1; i < 10; i++) + { + setTimeout(refreshFunc, i * 100); + setTimeout(refreshFunc, i * 1000); + } + return; + } + var wf = document.createElement("link"); + wf.href = cssurl_; + wf.rel = "stylesheet"; + wf.type = "text/css"; + wf.onload = refreshFunc; + document.getElementsByTagName('head')[0].appendChild(wf); + requestedWebFonts[cssurl_] = true; + this.facename = "'" + familyname_ + "'"; + this.updateFont(); + for (var i = 1; i < 10; i++) + { + setTimeout(refreshFunc, i * 100); + setTimeout(refreshFunc, i * 1000); + } +; + }; + Acts.prototype.SetEffect = function (effect) + { + this.blend_mode = effect; + this.compositeOp = cr.effectToCompositeOp(effect); + cr.setGLBlend(this, effect, this.runtime.gl); + this.runtime.redraw = true; + }; + pluginProto.acts = new Acts(); + function Exps() {}; + Exps.prototype.Text = function(ret) + { + ret.set_string(this.text); + }; + Exps.prototype.FaceName = function (ret) + { + ret.set_string(this.facename); + }; + Exps.prototype.FaceSize = function (ret) + { + ret.set_int(this.ptSize); + }; + Exps.prototype.TextWidth = function (ret) + { + var w = 0; + var i, len, x; + for (i = 0, len = this.lines.length; i < len; i++) + { + x = this.lines[i].width; + if (w < x) + w = x; + } + ret.set_int(w); + }; + Exps.prototype.TextHeight = function (ret) + { + ret.set_int(this.lines.length * (this.pxHeight + this.line_height_offset) - this.line_height_offset); + }; + pluginProto.exps = new Exps(); +}()); +; +; +cr.plugins_.TextBox = function(runtime) +{ + this.runtime = runtime; +}; +(function () +{ + var pluginProto = cr.plugins_.TextBox.prototype; + pluginProto.Type = function(plugin) + { + this.plugin = plugin; + this.runtime = plugin.runtime; + }; + var typeProto = pluginProto.Type.prototype; + typeProto.onCreate = function() + { + }; + pluginProto.Instance = function(type) + { + this.type = type; + this.runtime = type.runtime; + }; + var instanceProto = pluginProto.Instance.prototype; + var elemTypes = ["text", "password", "email", "number", "tel", "url"]; + if (navigator.userAgent.indexOf("MSIE 9") > -1) + { + elemTypes[2] = "text"; + elemTypes[3] = "text"; + elemTypes[4] = "text"; + elemTypes[5] = "text"; + } + instanceProto.onCreate = function() + { + if (this.runtime.isDomFree) + { + cr.logexport("[Construct 2] Textbox plugin not supported on this platform - the object will not be created"); + return; + } + if (this.properties[7] === 6) // textarea + { + this.elem = document.createElement("textarea"); + jQuery(this.elem).css("resize", "none"); + } + else + { + this.elem = document.createElement("input"); + this.elem.type = elemTypes[this.properties[7]]; + } + this.elem.id = this.properties[9]; + jQuery(this.elem).appendTo(this.runtime.canvasdiv ? this.runtime.canvasdiv : "body"); + this.elem["autocomplete"] = "off"; + this.elem.value = this.properties[0]; + this.elem["placeholder"] = this.properties[1]; + this.elem.title = this.properties[2]; + this.elem.disabled = (this.properties[4] === 0); + this.elem["readOnly"] = (this.properties[5] === 1); + this.elem["spellcheck"] = (this.properties[6] === 1); + this.autoFontSize = (this.properties[8] !== 0); + this.element_hidden = false; + if (this.properties[3] === 0) + { + jQuery(this.elem).hide(); + this.visible = false; + this.element_hidden = true; + } + var onchangetrigger = (function (self) { + return function() { + self.runtime.trigger(cr.plugins_.TextBox.prototype.cnds.OnTextChanged, self); + }; + })(this); + this.elem["oninput"] = onchangetrigger; + if (navigator.userAgent.indexOf("MSIE") !== -1) + this.elem["oncut"] = onchangetrigger; + this.elem.onclick = (function (self) { + return function(e) { + e.stopPropagation(); + self.runtime.isInUserInputEvent = true; + self.runtime.trigger(cr.plugins_.TextBox.prototype.cnds.OnClicked, self); + self.runtime.isInUserInputEvent = false; + }; + })(this); + this.elem.ondblclick = (function (self) { + return function(e) { + e.stopPropagation(); + self.runtime.isInUserInputEvent = true; + self.runtime.trigger(cr.plugins_.TextBox.prototype.cnds.OnDoubleClicked, self); + self.runtime.isInUserInputEvent = false; + }; + })(this); + this.elem.addEventListener("touchstart", function (e) { + e.stopPropagation(); + }, false); + this.elem.addEventListener("touchmove", function (e) { + e.stopPropagation(); + }, false); + this.elem.addEventListener("touchend", function (e) { + e.stopPropagation(); + }, false); + jQuery(this.elem).mousedown(function (e) { + e.stopPropagation(); + }); + jQuery(this.elem).mouseup(function (e) { + e.stopPropagation(); + }); + jQuery(this.elem).keydown(function (e) { + if (e.which !== 13 && e.which != 27) // allow enter and escape + e.stopPropagation(); + }); + jQuery(this.elem).keyup(function (e) { + if (e.which !== 13 && e.which != 27) // allow enter and escape + e.stopPropagation(); + }); + this.lastLeft = 0; + this.lastTop = 0; + this.lastRight = 0; + this.lastBottom = 0; + this.lastWinWidth = 0; + this.lastWinHeight = 0; + this.updatePosition(true); + this.runtime.tickMe(this); + }; + instanceProto.saveToJSON = function () + { + return { + "text": this.elem.value, + "placeholder": this.elem.placeholder, + "tooltip": this.elem.title, + "disabled": !!this.elem.disabled, + "readonly": !!this.elem.readOnly, + "spellcheck": !!this.elem["spellcheck"] + }; + }; + instanceProto.loadFromJSON = function (o) + { + this.elem.value = o["text"]; + this.elem.placeholder = o["placeholder"]; + this.elem.title = o["tooltip"]; + this.elem.disabled = o["disabled"]; + this.elem.readOnly = o["readonly"]; + this.elem["spellcheck"] = o["spellcheck"]; + }; + instanceProto.onDestroy = function () + { + if (this.runtime.isDomFree) + return; + jQuery(this.elem).remove(); + this.elem = null; + }; + instanceProto.tick = function () + { + this.updatePosition(); + }; + instanceProto.updatePosition = function (first) + { + if (this.runtime.isDomFree) + return; + var left = this.layer.layerToCanvas(this.x, this.y, true); + var top = this.layer.layerToCanvas(this.x, this.y, false); + var right = this.layer.layerToCanvas(this.x + this.width, this.y + this.height, true); + var bottom = this.layer.layerToCanvas(this.x + this.width, this.y + this.height, false); + var rightEdge = this.runtime.width / this.runtime.devicePixelRatio; + var bottomEdge = this.runtime.height / this.runtime.devicePixelRatio; + if (!this.visible || !this.layer.visible || right <= 0 || bottom <= 0 || left >= rightEdge || top >= bottomEdge) + { + if (!this.element_hidden) + jQuery(this.elem).hide(); + this.element_hidden = true; + return; + } + if (left < 1) + left = 1; + if (top < 1) + top = 1; + if (right >= rightEdge) + right = rightEdge - 1; + if (bottom >= bottomEdge) + bottom = bottomEdge - 1; + var curWinWidth = window.innerWidth; + var curWinHeight = window.innerHeight; + if (!first && this.lastLeft === left && this.lastTop === top && this.lastRight === right && this.lastBottom === bottom && this.lastWinWidth === curWinWidth && this.lastWinHeight === curWinHeight) + { + if (this.element_hidden) + { + jQuery(this.elem).show(); + this.element_hidden = false; + } + return; + } + this.lastLeft = left; + this.lastTop = top; + this.lastRight = right; + this.lastBottom = bottom; + this.lastWinWidth = curWinWidth; + this.lastWinHeight = curWinHeight; + if (this.element_hidden) + { + jQuery(this.elem).show(); + this.element_hidden = false; + } + var offx = Math.round(left) + jQuery(this.runtime.canvas).offset().left; + var offy = Math.round(top) + jQuery(this.runtime.canvas).offset().top; + jQuery(this.elem).css("position", "absolute"); + jQuery(this.elem).offset({left: offx, top: offy}); + jQuery(this.elem).width(Math.round(right - left)); + jQuery(this.elem).height(Math.round(bottom - top)); + if (this.autoFontSize) + jQuery(this.elem).css("font-size", ((this.layer.getScale(true) / this.runtime.devicePixelRatio) - 0.2) + "em"); + }; + instanceProto.draw = function(ctx) + { + }; + instanceProto.drawGL = function(glw) + { + }; + function Cnds() {}; + Cnds.prototype.CompareText = function (text, case_) + { + if (this.runtime.isDomFree) + return false; + if (case_ === 0) // insensitive + return cr.equals_nocase(this.elem.value, text); + else + return this.elem.value === text; + }; + Cnds.prototype.OnTextChanged = function () + { + return true; + }; + Cnds.prototype.OnClicked = function () + { + return true; + }; + Cnds.prototype.OnDoubleClicked = function () + { + return true; + }; + pluginProto.cnds = new Cnds(); + function Acts() {}; + Acts.prototype.SetText = function (text) + { + if (this.runtime.isDomFree) + return; + this.elem.value = text; + }; + Acts.prototype.SetPlaceholder = function (text) + { + if (this.runtime.isDomFree) + return; + this.elem.placeholder = text; + }; + Acts.prototype.SetTooltip = function (text) + { + if (this.runtime.isDomFree) + return; + this.elem.title = text; + }; + Acts.prototype.SetVisible = function (vis) + { + if (this.runtime.isDomFree) + return; + this.visible = (vis !== 0); + }; + Acts.prototype.SetEnabled = function (en) + { + if (this.runtime.isDomFree) + return; + this.elem.disabled = (en === 0); + }; + Acts.prototype.SetReadOnly = function (ro) + { + if (this.runtime.isDomFree) + return; + this.elem.readOnly = (ro === 0); + }; + Acts.prototype.SetFocus = function () + { + if (this.runtime.isDomFree) + return; + this.elem.focus(); + }; + Acts.prototype.SetBlur = function () + { + if (this.runtime.isDomFree) + return; + this.elem.blur(); + }; + Acts.prototype.SetCSSStyle = function (p, v) + { + if (this.runtime.isDomFree) + return; + jQuery(this.elem).css(p, v); + }; + Acts.prototype.ScrollToBottom = function () + { + if (this.runtime.isDomFree) + return; + this.elem.scrollTop = this.elem.scrollHeight; + }; + pluginProto.acts = new Acts(); + function Exps() {}; + Exps.prototype.Text = function (ret) + { + if (this.runtime.isDomFree) + { + ret.set_string(""); + return; + } + ret.set_string(this.elem.value); + }; + pluginProto.exps = new Exps(); +}()); +; +; +cr.plugins_.TextModded = function(runtime) +{ + this.runtime = runtime; +}; +(function () +{ + var pluginProto = cr.plugins_.TextModded.prototype; + pluginProto.onCreate = function () + { + pluginProto.acts.SetWidth = function (w) + { + if (this.width !== w) + { + this.width = w; + this.text_changed = true; // also recalculate text wrapping + this.set_bbox_changed(); + } + }; + }; + pluginProto.Type = function(plugin) + { + this.plugin = plugin; + this.runtime = plugin.runtime; + }; + var typeProto = pluginProto.Type.prototype; + typeProto.onCreate = function() + { + }; + typeProto.onLostWebGLContext = function () + { + if (this.is_family) + return; + var i, len, inst; + for (i = 0, len = this.instances.length; i < len; i++) + { + inst = this.instances[i]; + inst.mycanvas = null; + inst.myctx = null; + inst.mytex = null; + } + }; + pluginProto.Instance = function(type) + { + this.type = type; + this.runtime = type.runtime; + if (this.recycled) + cr.clearArray(this.lines); + else + this.lines = []; // for word wrapping + this.text_changed = true; + }; + var instanceProto = pluginProto.Instance.prototype; + var requestedWebFonts = {}; // already requested web fonts have an entry here + instanceProto.onCreate = function() + { + this.text = this.properties[0]; + this.visible = (this.properties[1] === 0); // 0=visible, 1=invisible + this.font = this.properties[2]; + this.color = this.properties[3]; + this.clamp = this.properties[4]===0; + if(this.clamp){ + this.halign = cr.clamp(this.properties[5], 0, 100); // 0=left, 1=center, 2=right + this.valign = cr.clamp(this.properties[6], 0, 100); // 0=top, 1=center, 2=bottom + } + else{ + this.halign = this.properties[5]; // 0=left, 1=center, 2=right + this.valign = this.properties[6]; // 0=top, 1=center, 2=bottom + } + this.wrapbyword = (this.properties[8] === 0); + this.nowrap = (this.properties[8] === 2); + this.wrap = this.properties[8]; // 0=word, 1=character 2=none + this.lastwidth = this.width; + this.lastwrapwidth = this.width; + this.lastheight = this.height; + this.line_height_offset = this.properties[9]; + this.facename = ""; + this.fontstyle = ""; + this.ptSize = 0; + this.textWidth = 0; + this.textHeight = 0; + this.parseFont(); + this.mycanvas = null; + this.myctx = null; + this.mytex = null; + this.need_text_redraw = false; + this.last_render_tick = this.runtime.tickcount; + if (this.recycled) + this.rcTex.set(0, 0, 1, 1); + else + this.rcTex = new cr.rect(0, 0, 1, 1); + if (this.runtime.glwrap) + this.runtime.tickMe(this); +; + }; + instanceProto.parseFont = function () + { + var arr = this.font.split(" "); + var i; + for (i = 0; i < arr.length; i++) + { + if (arr[i].substr(arr[i].length - 2, 2) === "pt") + { + this.ptSize = parseInt(arr[i].substr(0, arr[i].length - 2)); + this.pxHeight = Math.ceil((this.ptSize / 72.0) * 96.0) + 4; // assume 96dpi... + if (i > 0) + this.fontstyle = arr[i - 1]; + this.facename = arr[i + 1]; + for (i = i + 2; i < arr.length; i++) + this.facename += " " + arr[i]; + break; + } + } + }; + instanceProto.saveToJSON = function () + { + return { + "t": this.text, + "f": this.font, + "c": this.color, + "ha": this.halign, + "va": this.valign, + "clamp": this.clamp, + "wr": this.wrapbyword, + "nw": this.nowrap, + "wrap": this.wrap, + "lho": this.line_height_offset, + "fn": this.facename, + "fs": this.fontstyle, + "ps": this.ptSize, + "pxh": this.pxHeight, + "tw": this.textWidth, + "th": this.textHeight, + "lrt": this.last_render_tick + }; + }; + instanceProto.loadFromJSON = function (o) + { + this.text = o["t"]; + this.font = o["f"]; + this.color = o["c"]; + this.halign = o["ha"]; + this.valign = o["va"]; + this.clamp = o["clamp"]; + this.wrapbyword = o["wr"]; + this.nowrap = o["nw"]; + this.wrap = o["wrap"]; + this.line_height_offset = o["lho"]; + this.facename = o["fn"]; + this.fontstyle = o["fs"]; + this.ptSize = o["ps"]; + this.pxHeight = o["pxh"]; + this.textWidth = o["tw"]; + this.textHeight = o["th"]; + this.last_render_tick = o["lrt"]; + this.text_changed = true; + this.lastwidth = this.width; + this.lastwrapwidth = this.width; + this.lastheight = this.height; + }; + instanceProto.tick = function () + { + if (this.runtime.glwrap && this.mytex && (this.runtime.tickcount - this.last_render_tick >= 300)) + { + var layer = this.layer; + this.update_bbox(); + var bbox = this.bbox; + if (bbox.right < layer.viewLeft || bbox.bottom < layer.viewTop || bbox.left > layer.viewRight || bbox.top > layer.viewBottom) + { + this.runtime.glwrap.deleteTexture(this.mytex); + this.mytex = null; + this.myctx = null; + this.mycanvas = null; + } + } + }; + instanceProto.onDestroy = function () + { + this.myctx = null; + this.mycanvas = null; + if (this.runtime.glwrap && this.mytex) + this.runtime.glwrap.deleteTexture(this.mytex); + this.mytex = null; + }; + instanceProto.updateFont = function () + { + this.font = this.fontstyle + " " + this.ptSize.toString() + "pt " + this.facename; + this.text_changed = true; + this.runtime.redraw = true; + }; + instanceProto.draw = function(ctx, glmode) + { + ctx.font = this.font; + ctx.textBaseline = "top"; + ctx.fillStyle = this.color; + ctx.globalAlpha = glmode ? 1 : this.opacity; + var myscale = 1; + if (glmode) + { + myscale = Math.abs(this.layer.getScale()); + ctx.save(); + ctx.scale(myscale, myscale); + } + if (this.text_changed || this.width !== this.lastwrapwidth) + { + this.type.plugin.WordWrap(this.text, this.lines, ctx, this.width, this.wrapbyword, this.nowrap); + this.text_changed = false; + this.lastwrapwidth = this.width; + } + this.update_bbox(); + var penX = glmode ? 0 : this.bquad.tlx; + var penY = glmode ? 0 : this.bquad.tly; + if (this.runtime.pixel_rounding) + { + penX = (penX + 0.5) | 0; + penY = (penY + 0.5) | 0; + } + if (this.angle !== 0 && !glmode) + { + ctx.save(); + ctx.translate(penX, penY); + ctx.rotate(this.angle); + penX = 0; + penY = 0; + } + var endY = penY + this.height; + var line_height = this.pxHeight; + line_height += this.line_height_offset; + var drawX; + var i; + var fucker = 0 + if (this.valign > 50){ + var fucker = 2 * (this.valign - 50 )/50 + } + penY += Math.max(this.height * this.valign/100 - (this.lines.length * line_height) * this.valign/100 - fucker, 0); + /* + if (this.valign === 50) // center + penY += Math.max(this.height / 2 - (this.lines.length * line_height) / 2, 0); + else if (this.valign === 100) // bottom + penY += Math.max(this.height - (this.lines.length * line_height) - 2, 0); + */ + for (i = 0; i < this.lines.length; i++) + { + drawX = penX+ (this.width - this.lines[i].width) * this.halign/100; + /*if (this.halign === 1) // center + drawX = penX + (this.width - this.lines[i].width) / 2; + else if (this.halign === 2) // right + drawX = penX + (this.width - this.lines[i].width); + */ + ctx.fillText(this.lines[i].text, drawX, penY); + penY += line_height; + if (penY >= endY - line_height) + break; + } + if (this.angle !== 0 || glmode) + ctx.restore(); + this.last_render_tick = this.runtime.tickcount; + }; + instanceProto.drawGL = function(glw) + { + if (this.width < 1 || this.height < 1) + return; + var need_redraw = this.text_changed || this.need_text_redraw; + this.need_text_redraw = false; + var layer_scale = this.layer.getScale(); + var layer_angle = this.layer.getAngle(); + var rcTex = this.rcTex; + var floatscaledwidth = layer_scale * this.width; + var floatscaledheight = layer_scale * this.height; + var scaledwidth = Math.ceil(floatscaledwidth); + var scaledheight = Math.ceil(floatscaledheight); + var absscaledwidth = Math.abs(scaledwidth); + var absscaledheight = Math.abs(scaledheight); + var halfw = this.runtime.draw_width / 2; + var halfh = this.runtime.draw_height / 2; + if (!this.myctx) + { + this.mycanvas = document.createElement("canvas"); + this.mycanvas.width = absscaledwidth; + this.mycanvas.height = absscaledheight; + this.lastwidth = absscaledwidth; + this.lastheight = absscaledheight; + need_redraw = true; + this.myctx = this.mycanvas.getContext("2d"); + } + if (absscaledwidth !== this.lastwidth || absscaledheight !== this.lastheight) + { + this.mycanvas.width = absscaledwidth; + this.mycanvas.height = absscaledheight; + if (this.mytex) + { + glw.deleteTexture(this.mytex); + this.mytex = null; + } + need_redraw = true; + } + if (need_redraw) + { + this.myctx.clearRect(0, 0, absscaledwidth, absscaledheight); + this.draw(this.myctx, true); + if (!this.mytex) + this.mytex = glw.createEmptyTexture(absscaledwidth, absscaledheight, this.runtime.linearSampling, this.runtime.isMobile); + glw.videoToTexture(this.mycanvas, this.mytex, this.runtime.isMobile); + } + this.lastwidth = absscaledwidth; + this.lastheight = absscaledheight; + glw.setTexture(this.mytex); + glw.setOpacity(this.opacity); + glw.resetModelView(); + glw.translate(-halfw, -halfh); + glw.updateModelView(); + var q = this.bquad; + var tlx = this.layer.layerToCanvas(q.tlx, q.tly, true, true); + var tly = this.layer.layerToCanvas(q.tlx, q.tly, false, true); + var trx = this.layer.layerToCanvas(q.trx, q.try_, true, true); + var try_ = this.layer.layerToCanvas(q.trx, q.try_, false, true); + var brx = this.layer.layerToCanvas(q.brx, q.bry, true, true); + var bry = this.layer.layerToCanvas(q.brx, q.bry, false, true); + var blx = this.layer.layerToCanvas(q.blx, q.bly, true, true); + var bly = this.layer.layerToCanvas(q.blx, q.bly, false, true); + if (this.runtime.pixel_rounding || (this.angle === 0 && layer_angle === 0)) + { + var ox = ((tlx + 0.5) | 0) - tlx; + var oy = ((tly + 0.5) | 0) - tly + tlx += ox; + tly += oy; + trx += ox; + try_ += oy; + brx += ox; + bry += oy; + blx += ox; + bly += oy; + } + if (this.angle === 0 && layer_angle === 0) + { + trx = tlx + scaledwidth; + try_ = tly; + brx = trx; + bry = tly + scaledheight; + blx = tlx; + bly = bry; + rcTex.right = 1; + rcTex.bottom = 1; + } + else + { + rcTex.right = floatscaledwidth / scaledwidth; + rcTex.bottom = floatscaledheight / scaledheight; + } + glw.quadTex(tlx, tly, trx, try_, brx, bry, blx, bly, rcTex); + glw.resetModelView(); + glw.scale(layer_scale, layer_scale); + glw.rotateZ(-this.layer.getAngle()); + glw.translate((this.layer.viewLeft + this.layer.viewRight) / -2, (this.layer.viewTop + this.layer.viewBottom) / -2); + glw.updateModelView(); + this.last_render_tick = this.runtime.tickcount; + }; + var wordsCache = []; + pluginProto.TokeniseWords = function (text) + { + cr.clearArray(wordsCache); + var cur_word = ""; + var ch; + var i = 0; + while (i < text.length) + { + ch = text.charAt(i); + if (ch === "\n") + { + if (cur_word.length) + { + wordsCache.push(cur_word); + cur_word = ""; + } + wordsCache.push("\n"); + ++i; + } + else if (ch === " " || ch === "\t" || ch === "-") + { + do { + cur_word += text.charAt(i); + i++; + } + while (i < text.length && (text.charAt(i) === " " || text.charAt(i) === "\t")); + wordsCache.push(cur_word); + cur_word = ""; + } + else if (i < text.length) + { + cur_word += ch; + i++; + } + } + if (cur_word.length) + wordsCache.push(cur_word); + }; + var linesCache = []; + function allocLine() + { + if (linesCache.length) + return linesCache.pop(); + else + return {}; + }; + function freeLine(l) + { + linesCache.push(l); + }; + function freeAllLines(arr) + { + var i, len; + for (i = 0, len = arr.length; i < len; i++) + { + freeLine(arr[i]); + } + cr.clearArray(arr); + }; + pluginProto.WordWrap = function (text, lines, ctx, width, wrapbyword, nowrap) + { + if (!text || !text.length) + { + freeAllLines(lines); + return; + } + if (width <= 2.0) + { + freeAllLines(lines); + return; + } + if (text.length <= 100 && text.indexOf("\n") === -1) + { + var all_width = ctx.measureText(text).width; + if (all_width <= width) + { + freeAllLines(lines); + lines.push(allocLine()); + lines[0].text = text; + lines[0].width = all_width; + return; + } + } + if(nowrap){ + var all_width = ctx.measureText(text).width; + freeAllLines(lines); + lines.push(allocLine()); + lines[0].text = text; + lines[0].width = all_width; + } + else{ + this.WrapText(text, lines, ctx, width, wrapbyword); + } + }; + function trimSingleSpaceRight(str) + { + if (!str.length || str.charAt(str.length - 1) !== " ") + return str; + return str.substring(0, str.length - 1); + }; + pluginProto.WrapText = function (text, lines, ctx, width, wrapbyword) + { + var wordArray; + if (wrapbyword) + { + this.TokeniseWords(text); // writes to wordsCache + wordArray = wordsCache; + } + else + wordArray = text; + var cur_line = ""; + var prev_line; + var line_width; + var i; + var lineIndex = 0; + var line; + for (i = 0; i < wordArray.length; i++) + { + if (wordArray[i] === "\n") + { + if (lineIndex >= lines.length) + lines.push(allocLine()); + cur_line = trimSingleSpaceRight(cur_line); // for correct center/right alignment + line = lines[lineIndex]; + line.text = cur_line; + line.width = ctx.measureText(cur_line).width; + lineIndex++; + cur_line = ""; + continue; + } + prev_line = cur_line; + cur_line += wordArray[i]; + line_width = ctx.measureText(cur_line).width; + if (line_width >= width) + { + if (lineIndex >= lines.length) + lines.push(allocLine()); + prev_line = trimSingleSpaceRight(prev_line); + line = lines[lineIndex]; + line.text = prev_line; + line.width = ctx.measureText(prev_line).width; + lineIndex++; + cur_line = wordArray[i]; + if (!wrapbyword && cur_line === " ") + cur_line = ""; + } + } + if (cur_line.length) + { + if (lineIndex >= lines.length) + lines.push(allocLine()); + cur_line = trimSingleSpaceRight(cur_line); + line = lines[lineIndex]; + line.text = cur_line; + line.width = ctx.measureText(cur_line).width; + lineIndex++; + } + for (i = lineIndex; i < lines.length; i++) + freeLine(lines[i]); + lines.length = lineIndex; + }; + function Cnds() {}; + Cnds.prototype.CompareText = function(text_to_compare, case_sensitive) + { + if (case_sensitive) + return this.text == text_to_compare; + else + return cr.equals_nocase(this.text, text_to_compare); + }; + pluginProto.cnds = new Cnds(); + function Acts() {}; + Acts.prototype.SetText = function(param) + { + if (cr.is_number(param) && param < 1e9) + param = Math.round(param * 1e10) / 1e10; // round to nearest ten billionth - hides floating point errors + var text_to_set = param.toString(); + if (this.text !== text_to_set) + { + this.text = text_to_set; + this.text_changed = true; + this.runtime.redraw = true; + } + }; + Acts.prototype.AppendText = function(param) + { + if (cr.is_number(param)) + param = Math.round(param * 1e10) / 1e10; // round to nearest ten billionth - hides floating point errors + var text_to_append = param.toString(); + if (text_to_append) // not empty + { + this.text += text_to_append; + this.text_changed = true; + this.runtime.redraw = true; + } + }; + Acts.prototype.SetFontFace = function (face_, style_) + { + var newstyle = ""; + switch (style_) { + case 1: newstyle = "bold"; break; + case 2: newstyle = "italic"; break; + case 3: newstyle = "bold italic"; break; + } + if (face_ === this.facename && newstyle === this.fontstyle) + return; // no change + this.facename = face_; + this.fontstyle = newstyle; + this.updateFont(); + }; + Acts.prototype.SetFontSize = function (size_) + { + if (this.ptSize === size_) + return; + this.ptSize = size_; + this.pxHeight = Math.ceil((this.ptSize / 72.0) * 96.0) + 4; // assume 96dpi... + this.updateFont(); + }; + Acts.prototype.SetFontColor = function (rgb) + { + var newcolor = "rgb(" + cr.GetRValue(rgb).toString() + "," + cr.GetGValue(rgb).toString() + "," + cr.GetBValue(rgb).toString() + ")"; + if (newcolor === this.color) + return; + this.color = newcolor; + this.need_text_redraw = true; + this.runtime.redraw = true; + }; + Acts.prototype.SetHorAl = function (val) + { + this.halign = this.clamp? cr.clamp(val, 0, 100) : val; + this.need_text_redraw = true; + this.runtime.redraw = true; + }; + Acts.prototype.SetVerAl = function (val) + { + this.valign = this.clamp? cr.clamp(val, 0, 100) : val; + this.need_text_redraw = true; + this.runtime.redraw = true; + }; + Acts.prototype.SetAl = function (hval, vval) + { + this.halign = this.clamp? cr.clamp(hval, 0, 100) : hval; + this.valign = this.clamp? cr.clamp(vval, 0, 100) : vval; + this.need_text_redraw = true; + this.runtime.redraw = true; + }; + Acts.prototype.SetWrap = function (wrap) + { + this.wrapbyword = (wrap === 0); + this.nowrap = (wrap === 2); + this.need_text_redraw = true; + this.runtime.redraw = true; + this.text_changed = true; + }; + Acts.prototype.SetClamp = function (clamp) + { + this.clamp = clamp === 0 + this.halign = this.clamp? cr.clamp(this.halign, 0, 100) : this.halign; + this.valign = this.clamp? cr.clamp(this.valign, 0, 100) : this.valign; + this.need_text_redraw = true; + this.runtime.redraw = true; + this.text_changed = true; + }; + Acts.prototype.SetHotspot = function (hs) + { + this.SetHotspot(GetHotspot(hs)); + }; + Acts.prototype.SetWebFont = function (familyname_, cssurl_) + { + if (this.runtime.isDomFree) + { + cr.logexport("[Construct 2] Text plugin: 'Set web font' not supported on this platform - the action has been ignored"); + return; // DC todo + } + var self = this; + var refreshFunc = (function () { + self.runtime.redraw = true; + self.text_changed = true; + }); + if (requestedWebFonts.hasOwnProperty(cssurl_)) + { + var newfacename = "'" + familyname_ + "'"; + if (this.facename === newfacename) + return; // no change + this.facename = newfacename; + this.updateFont(); + for (var i = 1; i < 10; i++) + { + setTimeout(refreshFunc, i * 100); + setTimeout(refreshFunc, i * 1000); + } + return; + } + var wf = document.createElement("link"); + wf.href = cssurl_; + wf.rel = "stylesheet"; + wf.type = "text/css"; + wf.onload = refreshFunc; + document.getElementsByTagName('head')[0].appendChild(wf); + requestedWebFonts[cssurl_] = true; + this.facename = "'" + familyname_ + "'"; + this.updateFont(); + for (var i = 1; i < 10; i++) + { + setTimeout(refreshFunc, i * 100); + setTimeout(refreshFunc, i * 1000); + } +; + }; + Acts.prototype.SetEffect = function (effect) + { + this.blend_mode = effect; + this.compositeOp = cr.effectToCompositeOp(effect); + cr.setGLBlend(this, effect, this.runtime.gl); + this.runtime.redraw = true; + }; + pluginProto.acts = new Acts(); + function Exps() {}; + Exps.prototype.Text = function(ret) + { + ret.set_string(this.text); + }; + Exps.prototype.HAlign = function(ret) + { + ret.set_int(this.halign); + }; + Exps.prototype.VAlign = function(ret) + { + ret.set_int(this.valign); + }; + Exps.prototype.FaceName = function (ret) + { + ret.set_string(this.facename); + }; + Exps.prototype.FaceSize = function (ret) + { + ret.set_int(this.ptSize); + }; + Exps.prototype.LineHeight = function (ret) + { + ret.set_int(this.pxHeight + this.line_height_offset); + }; + Exps.prototype.TextWidth = function (ret) + { + var w = 0; + var i, len, x; + for (i = 0, len = this.lines.length; i < len; i++) + { + x = this.lines[i].width; + if (w < x) + w = x; + } + ret.set_int(w); + }; + Exps.prototype.TextHeight = function (ret) + { + ret.set_int(this.lines.length * (this.pxHeight + this.line_height_offset) - this.line_height_offset); + }; + pluginProto.exps = new Exps(); +}()); +; +; +cr.plugins_.TiledBg = function(runtime) +{ + this.runtime = runtime; +}; +(function () +{ + var pluginProto = cr.plugins_.TiledBg.prototype; + pluginProto.Type = function(plugin) + { + this.plugin = plugin; + this.runtime = plugin.runtime; + }; + var typeProto = pluginProto.Type.prototype; + typeProto.onCreate = function() + { + if (this.is_family) + return; + this.texture_img = new Image(); + this.texture_img.cr_filesize = this.texture_filesize; + this.runtime.waitForImageLoad(this.texture_img, this.texture_file); + this.pattern = null; + this.webGL_texture = null; + }; + typeProto.onLostWebGLContext = function () + { + if (this.is_family) + return; + this.webGL_texture = null; + }; + typeProto.onRestoreWebGLContext = function () + { + if (this.is_family || !this.instances.length) + return; + if (!this.webGL_texture) + { + this.webGL_texture = this.runtime.glwrap.loadTexture(this.texture_img, true, this.runtime.linearSampling, this.texture_pixelformat); + } + var i, len; + for (i = 0, len = this.instances.length; i < len; i++) + this.instances[i].webGL_texture = this.webGL_texture; + }; + typeProto.loadTextures = function () + { + if (this.is_family || this.webGL_texture || !this.runtime.glwrap) + return; + this.webGL_texture = this.runtime.glwrap.loadTexture(this.texture_img, true, this.runtime.linearSampling, this.texture_pixelformat); + }; + typeProto.unloadTextures = function () + { + if (this.is_family || this.instances.length || !this.webGL_texture) + return; + this.runtime.glwrap.deleteTexture(this.webGL_texture); + this.webGL_texture = null; + }; + typeProto.preloadCanvas2D = function (ctx) + { + ctx.drawImage(this.texture_img, 0, 0); + }; + pluginProto.Instance = function(type) + { + this.type = type; + this.runtime = type.runtime; + }; + var instanceProto = pluginProto.Instance.prototype; + instanceProto.onCreate = function() + { + this.visible = (this.properties[0] === 0); // 0=visible, 1=invisible + this.rcTex = new cr.rect(0, 0, 0, 0); + this.has_own_texture = false; // true if a texture loaded in from URL + this.texture_img = this.type.texture_img; + if (this.runtime.glwrap) + { + this.type.loadTextures(); + this.webGL_texture = this.type.webGL_texture; + } + else + { + if (!this.type.pattern) + this.type.pattern = this.runtime.ctx.createPattern(this.type.texture_img, "repeat"); + this.pattern = this.type.pattern; + } + }; + instanceProto.afterLoad = function () + { + this.has_own_texture = false; + this.texture_img = this.type.texture_img; + }; + instanceProto.onDestroy = function () + { + if (this.runtime.glwrap && this.has_own_texture && this.webGL_texture) + { + this.runtime.glwrap.deleteTexture(this.webGL_texture); + this.webGL_texture = null; + } + }; + instanceProto.draw = function(ctx) + { + ctx.globalAlpha = this.opacity; + ctx.save(); + ctx.fillStyle = this.pattern; + var myx = this.x; + var myy = this.y; + if (this.runtime.pixel_rounding) + { + myx = Math.round(myx); + myy = Math.round(myy); + } + var drawX = -(this.hotspotX * this.width); + var drawY = -(this.hotspotY * this.height); + var offX = drawX % this.texture_img.width; + var offY = drawY % this.texture_img.height; + if (offX < 0) + offX += this.texture_img.width; + if (offY < 0) + offY += this.texture_img.height; + ctx.translate(myx, myy); + ctx.rotate(this.angle); + ctx.translate(offX, offY); + ctx.fillRect(drawX - offX, + drawY - offY, + this.width, + this.height); + ctx.restore(); + }; + instanceProto.drawGL_earlyZPass = function(glw) + { + this.drawGL(glw); + }; + instanceProto.drawGL = function(glw) + { + glw.setTexture(this.webGL_texture); + glw.setOpacity(this.opacity); + var rcTex = this.rcTex; + rcTex.right = this.width / this.texture_img.width; + rcTex.bottom = this.height / this.texture_img.height; + var q = this.bquad; + if (this.runtime.pixel_rounding) + { + var ox = Math.round(this.x) - this.x; + var oy = Math.round(this.y) - this.y; + glw.quadTex(q.tlx + ox, q.tly + oy, q.trx + ox, q.try_ + oy, q.brx + ox, q.bry + oy, q.blx + ox, q.bly + oy, rcTex); + } + else + glw.quadTex(q.tlx, q.tly, q.trx, q.try_, q.brx, q.bry, q.blx, q.bly, rcTex); + }; + function Cnds() {}; + Cnds.prototype.OnURLLoaded = function () + { + return true; + }; + pluginProto.cnds = new Cnds(); + function Acts() {}; + Acts.prototype.SetEffect = function (effect) + { + this.blend_mode = effect; + this.compositeOp = cr.effectToCompositeOp(effect); + cr.setGLBlend(this, effect, this.runtime.gl); + this.runtime.redraw = true; + }; + Acts.prototype.LoadURL = function (url_, crossOrigin_) + { + var img = new Image(); + var self = this; + img.onload = function () + { + self.texture_img = img; + if (self.runtime.glwrap) + { + if (self.has_own_texture && self.webGL_texture) + self.runtime.glwrap.deleteTexture(self.webGL_texture); + self.webGL_texture = self.runtime.glwrap.loadTexture(img, true, self.runtime.linearSampling); + } + else + { + self.pattern = self.runtime.ctx.createPattern(img, "repeat"); + } + self.has_own_texture = true; + self.runtime.redraw = true; + self.runtime.trigger(cr.plugins_.TiledBg.prototype.cnds.OnURLLoaded, self); + }; + if (url_.substr(0, 5) !== "data:" && crossOrigin_ === 0) + img.crossOrigin = "anonymous"; + this.runtime.setImageSrc(img, url_); + }; + pluginProto.acts = new Acts(); + function Exps() {}; + Exps.prototype.ImageWidth = function (ret) + { + ret.set_float(this.texture_img.width); + }; + Exps.prototype.ImageHeight = function (ret) + { + ret.set_float(this.texture_img.height); + }; + pluginProto.exps = new Exps(); +}()); +; +; +cr.plugins_.Touch = function(runtime) +{ + this.runtime = runtime; +}; +(function () +{ + var pluginProto = cr.plugins_.Touch.prototype; + pluginProto.Type = function(plugin) + { + this.plugin = plugin; + this.runtime = plugin.runtime; + }; + var typeProto = pluginProto.Type.prototype; + typeProto.onCreate = function() + { + }; + pluginProto.Instance = function(type) + { + this.type = type; + this.runtime = type.runtime; + this.touches = []; + this.mouseDown = false; + }; + var instanceProto = pluginProto.Instance.prototype; + var dummyoffset = {left: 0, top: 0}; + instanceProto.findTouch = function (id) + { + var i, len; + for (i = 0, len = this.touches.length; i < len; i++) + { + if (this.touches[i]["id"] === id) + return i; + } + return -1; + }; + var appmobi_accx = 0; + var appmobi_accy = 0; + var appmobi_accz = 0; + function AppMobiGetAcceleration(evt) + { + appmobi_accx = evt.x; + appmobi_accy = evt.y; + appmobi_accz = evt.z; + }; + var pg_accx = 0; + var pg_accy = 0; + var pg_accz = 0; + function PhoneGapGetAcceleration(evt) + { + pg_accx = evt.x; + pg_accy = evt.y; + pg_accz = evt.z; + }; + var theInstance = null; + var touchinfo_cache = []; + function AllocTouchInfo(x, y, id, index) + { + var ret; + if (touchinfo_cache.length) + ret = touchinfo_cache.pop(); + else + ret = new TouchInfo(); + ret.init(x, y, id, index); + return ret; + }; + function ReleaseTouchInfo(ti) + { + if (touchinfo_cache.length < 100) + touchinfo_cache.push(ti); + }; + var GESTURE_HOLD_THRESHOLD = 15; // max px motion for hold gesture to register + var GESTURE_HOLD_TIMEOUT = 500; // time for hold gesture to register + var GESTURE_TAP_TIMEOUT = 333; // time for tap gesture to register + var GESTURE_DOUBLETAP_THRESHOLD = 25; // max distance apart for taps to be + function TouchInfo() + { + this.starttime = 0; + this.time = 0; + this.lasttime = 0; + this.startx = 0; + this.starty = 0; + this.x = 0; + this.y = 0; + this.lastx = 0; + this.lasty = 0; + this["id"] = 0; + this.startindex = 0; + this.triggeredHold = false; + this.tooFarForHold = false; + }; + TouchInfo.prototype.init = function (x, y, id, index) + { + var nowtime = cr.performance_now(); + this.time = nowtime; + this.lasttime = nowtime; + this.starttime = nowtime; + this.startx = x; + this.starty = y; + this.x = x; + this.y = y; + this.lastx = x; + this.lasty = y; + this.width = 0; + this.height = 0; + this.pressure = 0; + this["id"] = id; + this.startindex = index; + this.triggeredHold = false; + this.tooFarForHold = false; + }; + TouchInfo.prototype.update = function (nowtime, x, y, width, height, pressure) + { + this.lasttime = this.time; + this.time = nowtime; + this.lastx = this.x; + this.lasty = this.y; + this.x = x; + this.y = y; + this.width = width; + this.height = height; + this.pressure = pressure; + if (!this.tooFarForHold && cr.distanceTo(this.startx, this.starty, this.x, this.y) >= GESTURE_HOLD_THRESHOLD) + { + this.tooFarForHold = true; + } + }; + TouchInfo.prototype.maybeTriggerHold = function (inst, index) + { + if (this.triggeredHold) + return; // already triggered this gesture + var nowtime = cr.performance_now(); + if (nowtime - this.starttime >= GESTURE_HOLD_TIMEOUT && !this.tooFarForHold && cr.distanceTo(this.startx, this.starty, this.x, this.y) < GESTURE_HOLD_THRESHOLD) + { + this.triggeredHold = true; + inst.trigger_index = this.startindex; + inst.trigger_id = this["id"]; + inst.getTouchIndex = index; + inst.runtime.trigger(cr.plugins_.Touch.prototype.cnds.OnHoldGesture, inst); + inst.curTouchX = this.x; + inst.curTouchY = this.y; + inst.runtime.trigger(cr.plugins_.Touch.prototype.cnds.OnHoldGestureObject, inst); + inst.getTouchIndex = 0; + } + }; + var lastTapX = -1000; + var lastTapY = -1000; + var lastTapTime = -10000; + TouchInfo.prototype.maybeTriggerTap = function (inst, index) + { + if (this.triggeredHold) + return; + var nowtime = cr.performance_now(); + if (nowtime - this.starttime <= GESTURE_TAP_TIMEOUT && !this.tooFarForHold && cr.distanceTo(this.startx, this.starty, this.x, this.y) < GESTURE_HOLD_THRESHOLD) + { + inst.trigger_index = this.startindex; + inst.trigger_id = this["id"]; + inst.getTouchIndex = index; + if ((nowtime - lastTapTime <= GESTURE_TAP_TIMEOUT * 2) && cr.distanceTo(lastTapX, lastTapY, this.x, this.y) < GESTURE_DOUBLETAP_THRESHOLD) + { + inst.runtime.trigger(cr.plugins_.Touch.prototype.cnds.OnDoubleTapGesture, inst); + inst.curTouchX = this.x; + inst.curTouchY = this.y; + inst.runtime.trigger(cr.plugins_.Touch.prototype.cnds.OnDoubleTapGestureObject, inst); + lastTapX = -1000; + lastTapY = -1000; + lastTapTime = -10000; + } + else + { + inst.runtime.trigger(cr.plugins_.Touch.prototype.cnds.OnTapGesture, inst); + inst.curTouchX = this.x; + inst.curTouchY = this.y; + inst.runtime.trigger(cr.plugins_.Touch.prototype.cnds.OnTapGestureObject, inst); + lastTapX = this.x; + lastTapY = this.y; + lastTapTime = nowtime; + } + inst.getTouchIndex = 0; + } + }; + instanceProto.onCreate = function() + { + theInstance = this; + this.isWindows8 = !!(typeof window["c2isWindows8"] !== "undefined" && window["c2isWindows8"]); + this.orient_alpha = 0; + this.orient_beta = 0; + this.orient_gamma = 0; + this.acc_g_x = 0; + this.acc_g_y = 0; + this.acc_g_z = 0; + this.acc_x = 0; + this.acc_y = 0; + this.acc_z = 0; + this.curTouchX = 0; + this.curTouchY = 0; + this.trigger_index = 0; + this.trigger_id = 0; + this.trigger_permission = 0; + this.getTouchIndex = 0; + this.useMouseInput = (this.properties[0] !== 0); + var elem = (this.runtime.fullscreen_mode > 0) ? document : this.runtime.canvas; + var elem2 = document; + if (this.runtime.isDirectCanvas) + elem2 = elem = window["Canvas"]; + else if (this.runtime.isCocoonJs) + elem2 = elem = window; + var self = this; + if (typeof PointerEvent !== "undefined") + { + elem.addEventListener("pointerdown", + function(info) { + self.onPointerStart(info); + }, + false + ); + elem.addEventListener("pointermove", + function(info) { + self.onPointerMove(info); + }, + false + ); + elem2.addEventListener("pointerup", + function(info) { + self.onPointerEnd(info, false); + }, + false + ); + elem2.addEventListener("pointercancel", + function(info) { + self.onPointerEnd(info, true); + }, + false + ); + if (this.runtime.canvas) + { + this.runtime.canvas.addEventListener("MSGestureHold", function(e) { + e.preventDefault(); + }, false); + document.addEventListener("MSGestureHold", function(e) { + e.preventDefault(); + }, false); + this.runtime.canvas.addEventListener("gesturehold", function(e) { + e.preventDefault(); + }, false); + document.addEventListener("gesturehold", function(e) { + e.preventDefault(); + }, false); + } + } + else if (window.navigator["msPointerEnabled"]) + { + elem.addEventListener("MSPointerDown", + function(info) { + self.onPointerStart(info); + }, + false + ); + elem.addEventListener("MSPointerMove", + function(info) { + self.onPointerMove(info); + }, + false + ); + elem2.addEventListener("MSPointerUp", + function(info) { + self.onPointerEnd(info, false); + }, + false + ); + elem2.addEventListener("MSPointerCancel", + function(info) { + self.onPointerEnd(info, true); + }, + false + ); + if (this.runtime.canvas) + { + this.runtime.canvas.addEventListener("MSGestureHold", function(e) { + e.preventDefault(); + }, false); + document.addEventListener("MSGestureHold", function(e) { + e.preventDefault(); + }, false); + } + } + else + { + elem.addEventListener("touchstart", + function(info) { + self.onTouchStart(info); + }, + false + ); + elem.addEventListener("touchmove", + function(info) { + self.onTouchMove(info); + }, + false + ); + elem2.addEventListener("touchend", + function(info) { + self.onTouchEnd(info, false); + }, + false + ); + elem2.addEventListener("touchcancel", + function(info) { + self.onTouchEnd(info, true); + }, + false + ); + } + if (this.isWindows8) + { + var win8accelerometerFn = function(e) { + var reading = e["reading"]; + self.acc_x = reading["accelerationX"]; + self.acc_y = reading["accelerationY"]; + self.acc_z = reading["accelerationZ"]; + }; + var win8inclinometerFn = function(e) { + var reading = e["reading"]; + self.orient_alpha = reading["yawDegrees"]; + self.orient_beta = reading["pitchDegrees"]; + self.orient_gamma = reading["rollDegrees"]; + }; + var accelerometer = Windows["Devices"]["Sensors"]["Accelerometer"]["getDefault"](); + if (accelerometer) + { + accelerometer["reportInterval"] = Math.max(accelerometer["minimumReportInterval"], 16); + accelerometer.addEventListener("readingchanged", win8accelerometerFn); + } + var inclinometer = Windows["Devices"]["Sensors"]["Inclinometer"]["getDefault"](); + if (inclinometer) + { + inclinometer["reportInterval"] = Math.max(inclinometer["minimumReportInterval"], 16); + inclinometer.addEventListener("readingchanged", win8inclinometerFn); + } + document.addEventListener("visibilitychange", function(e) { + if (document["hidden"] || document["msHidden"]) + { + if (accelerometer) + accelerometer.removeEventListener("readingchanged", win8accelerometerFn); + if (inclinometer) + inclinometer.removeEventListener("readingchanged", win8inclinometerFn); + } + else + { + if (accelerometer) + accelerometer.addEventListener("readingchanged", win8accelerometerFn); + if (inclinometer) + inclinometer.addEventListener("readingchanged", win8inclinometerFn); + } + }, false); + } + else + { + window.addEventListener("deviceorientation", function (eventData) { + self.orient_alpha = eventData["alpha"] || 0; + self.orient_beta = eventData["beta"] || 0; + self.orient_gamma = eventData["gamma"] || 0; + }, false); + window.addEventListener("devicemotion", function (eventData) { + if (eventData["accelerationIncludingGravity"]) + { + self.acc_g_x = eventData["accelerationIncludingGravity"]["x"] || 0; + self.acc_g_y = eventData["accelerationIncludingGravity"]["y"] || 0; + self.acc_g_z = eventData["accelerationIncludingGravity"]["z"] || 0; + } + if (eventData["acceleration"]) + { + self.acc_x = eventData["acceleration"]["x"] || 0; + self.acc_y = eventData["acceleration"]["y"] || 0; + self.acc_z = eventData["acceleration"]["z"] || 0; + } + }, false); + } + if (this.useMouseInput && !this.runtime.isDomFree) + { + jQuery(document).mousemove( + function(info) { + self.onMouseMove(info); + } + ); + jQuery(document).mousedown( + function(info) { + self.onMouseDown(info); + } + ); + jQuery(document).mouseup( + function(info) { + self.onMouseUp(info); + } + ); + } + if (!this.runtime.isiOS && this.runtime.isCordova && navigator["accelerometer"] && navigator["accelerometer"]["watchAcceleration"]) + { + navigator["accelerometer"]["watchAcceleration"](PhoneGapGetAcceleration, null, { "frequency": 40 }); + } + this.runtime.tick2Me(this); + }; + instanceProto.onPointerMove = function (info) + { + if (info["pointerType"] === info["MSPOINTER_TYPE_MOUSE"] || info["pointerType"] === "mouse") + return; + if (info.preventDefault) + info.preventDefault(); + var i = this.findTouch(info["pointerId"]); + var nowtime = cr.performance_now(); + if (i >= 0) + { + var offset = this.runtime.isDomFree ? dummyoffset : jQuery(this.runtime.canvas).offset(); + var t = this.touches[i]; + if (nowtime - t.time < 2) + return; + t.update(nowtime, info.pageX - offset.left, info.pageY - offset.top, info.width || 0, info.height || 0, info.pressure || 0); + } + }; + instanceProto.onPointerStart = function (info) + { + if (info["pointerType"] === info["MSPOINTER_TYPE_MOUSE"] || info["pointerType"] === "mouse") + return; + if (info.preventDefault && cr.isCanvasInputEvent(info)) + info.preventDefault(); + var offset = this.runtime.isDomFree ? dummyoffset : jQuery(this.runtime.canvas).offset(); + var touchx = info.pageX - offset.left; + var touchy = info.pageY - offset.top; + var nowtime = cr.performance_now(); + this.trigger_index = this.touches.length; + this.trigger_id = info["pointerId"]; + this.touches.push(AllocTouchInfo(touchx, touchy, info["pointerId"], this.trigger_index)); + this.runtime.isInUserInputEvent = true; + this.runtime.trigger(cr.plugins_.Touch.prototype.cnds.OnNthTouchStart, this); + this.runtime.trigger(cr.plugins_.Touch.prototype.cnds.OnTouchStart, this); + this.curTouchX = touchx; + this.curTouchY = touchy; + this.runtime.trigger(cr.plugins_.Touch.prototype.cnds.OnTouchObject, this); + this.runtime.isInUserInputEvent = false; + }; + instanceProto.onPointerEnd = function (info, isCancel) + { + if (info["pointerType"] === info["MSPOINTER_TYPE_MOUSE"] || info["pointerType"] === "mouse") + return; + if (info.preventDefault && cr.isCanvasInputEvent(info)) + info.preventDefault(); + var i = this.findTouch(info["pointerId"]); + this.trigger_index = (i >= 0 ? this.touches[i].startindex : -1); + this.trigger_id = (i >= 0 ? this.touches[i]["id"] : -1); + this.runtime.isInUserInputEvent = true; + this.runtime.trigger(cr.plugins_.Touch.prototype.cnds.OnNthTouchEnd, this); + this.runtime.trigger(cr.plugins_.Touch.prototype.cnds.OnTouchEnd, this); + if (i >= 0) + { + if (!isCancel) + this.touches[i].maybeTriggerTap(this, i); + ReleaseTouchInfo(this.touches[i]); + this.touches.splice(i, 1); + } + this.runtime.isInUserInputEvent = false; + }; + instanceProto.onTouchMove = function (info) + { + if (info.preventDefault) + info.preventDefault(); + var nowtime = cr.performance_now(); + var i, len, t, u; + for (i = 0, len = info.changedTouches.length; i < len; i++) + { + t = info.changedTouches[i]; + var j = this.findTouch(t["identifier"]); + if (j >= 0) + { + var offset = this.runtime.isDomFree ? dummyoffset : jQuery(this.runtime.canvas).offset(); + u = this.touches[j]; + if (nowtime - u.time < 2) + continue; + var touchWidth = (t.radiusX || t.webkitRadiusX || t.mozRadiusX || t.msRadiusX || 0) * 2; + var touchHeight = (t.radiusY || t.webkitRadiusY || t.mozRadiusY || t.msRadiusY || 0) * 2; + var touchForce = t.force || t.webkitForce || t.mozForce || t.msForce || 0; + u.update(nowtime, t.pageX - offset.left, t.pageY - offset.top, touchWidth, touchHeight, touchForce); + } + } + }; + instanceProto.onTouchStart = function (info) + { + if (info.preventDefault && cr.isCanvasInputEvent(info)) + info.preventDefault(); + var offset = this.runtime.isDomFree ? dummyoffset : jQuery(this.runtime.canvas).offset(); + var nowtime = cr.performance_now(); + this.runtime.isInUserInputEvent = true; + var i, len, t, j; + for (i = 0, len = info.changedTouches.length; i < len; i++) + { + t = info.changedTouches[i]; + j = this.findTouch(t["identifier"]); + if (j !== -1) + continue; + var touchx = t.pageX - offset.left; + var touchy = t.pageY - offset.top; + this.trigger_index = this.touches.length; + this.trigger_id = t["identifier"]; + this.touches.push(AllocTouchInfo(touchx, touchy, t["identifier"], this.trigger_index)); + this.runtime.trigger(cr.plugins_.Touch.prototype.cnds.OnNthTouchStart, this); + this.runtime.trigger(cr.plugins_.Touch.prototype.cnds.OnTouchStart, this); + this.curTouchX = touchx; + this.curTouchY = touchy; + this.runtime.trigger(cr.plugins_.Touch.prototype.cnds.OnTouchObject, this); + } + this.runtime.isInUserInputEvent = false; + }; + instanceProto.onTouchEnd = function (info, isCancel) + { + if (info.preventDefault && cr.isCanvasInputEvent(info)) + info.preventDefault(); + this.runtime.isInUserInputEvent = true; + var i, len, t, j; + for (i = 0, len = info.changedTouches.length; i < len; i++) + { + t = info.changedTouches[i]; + j = this.findTouch(t["identifier"]); + if (j >= 0) + { + this.trigger_index = this.touches[j].startindex; + this.trigger_id = this.touches[j]["id"]; + this.runtime.trigger(cr.plugins_.Touch.prototype.cnds.OnNthTouchEnd, this); + this.runtime.trigger(cr.plugins_.Touch.prototype.cnds.OnTouchEnd, this); + if (!isCancel) + this.touches[j].maybeTriggerTap(this, j); + ReleaseTouchInfo(this.touches[j]); + this.touches.splice(j, 1); + } + } + this.runtime.isInUserInputEvent = false; + }; + instanceProto.getAlpha = function () + { + if (this.runtime.isCordova && this.orient_alpha === 0 && pg_accz !== 0) + return pg_accz * 90; + else + return this.orient_alpha; + }; + instanceProto.getBeta = function () + { + if (this.runtime.isCordova && this.orient_beta === 0 && pg_accy !== 0) + return pg_accy * 90; + else + return this.orient_beta; + }; + instanceProto.getGamma = function () + { + if (this.runtime.isCordova && this.orient_gamma === 0 && pg_accx !== 0) + return pg_accx * 90; + else + return this.orient_gamma; + }; + var noop_func = function(){}; + function isCompatibilityMouseEvent(e) + { + return (e["sourceCapabilities"] && e["sourceCapabilities"]["firesTouchEvents"]) || + (e.originalEvent && e.originalEvent["sourceCapabilities"] && e.originalEvent["sourceCapabilities"]["firesTouchEvents"]); + }; + instanceProto.onMouseDown = function(info) + { + if (isCompatibilityMouseEvent(info)) + return; + var t = { pageX: info.pageX, pageY: info.pageY, "identifier": 0 }; + var fakeinfo = { changedTouches: [t] }; + this.onTouchStart(fakeinfo); + this.mouseDown = true; + }; + instanceProto.onMouseMove = function(info) + { + if (!this.mouseDown) + return; + if (isCompatibilityMouseEvent(info)) + return; + var t = { pageX: info.pageX, pageY: info.pageY, "identifier": 0 }; + var fakeinfo = { changedTouches: [t] }; + this.onTouchMove(fakeinfo); + }; + instanceProto.onMouseUp = function(info) + { + if (info.preventDefault && this.runtime.had_a_click && !this.runtime.isMobile) + info.preventDefault(); + this.runtime.had_a_click = true; + if (isCompatibilityMouseEvent(info)) + return; + var t = { pageX: info.pageX, pageY: info.pageY, "identifier": 0 }; + var fakeinfo = { changedTouches: [t] }; + this.onTouchEnd(fakeinfo); + this.mouseDown = false; + }; + instanceProto.tick2 = function() + { + var i, len, t; + var nowtime = cr.performance_now(); + for (i = 0, len = this.touches.length; i < len; ++i) + { + t = this.touches[i]; + if (t.time <= nowtime - 50) + t.lasttime = nowtime; + t.maybeTriggerHold(this, i); + } + }; + function Cnds() {}; + Cnds.prototype.OnTouchStart = function () + { + return true; + }; + Cnds.prototype.OnTouchEnd = function () + { + return true; + }; + Cnds.prototype.IsInTouch = function () + { + return this.touches.length; + }; + Cnds.prototype.OnTouchObject = function (type) + { + if (!type) + return false; + return this.runtime.testAndSelectCanvasPointOverlap(type, this.curTouchX, this.curTouchY, false); + }; + var touching = []; + Cnds.prototype.IsTouchingObject = function (type) + { + if (!type) + return false; + var sol = type.getCurrentSol(); + var instances = sol.getObjects(); + var px, py; + var i, leni, j, lenj; + for (i = 0, leni = instances.length; i < leni; i++) + { + var inst = instances[i]; + inst.update_bbox(); + for (j = 0, lenj = this.touches.length; j < lenj; j++) + { + var touch = this.touches[j]; + px = inst.layer.canvasToLayer(touch.x, touch.y, true); + py = inst.layer.canvasToLayer(touch.x, touch.y, false); + if (inst.contains_pt(px, py)) + { + touching.push(inst); + break; + } + } + } + if (touching.length) + { + sol.select_all = false; + cr.shallowAssignArray(sol.instances, touching); + type.applySolToContainer(); + cr.clearArray(touching); + return true; + } + else + return false; + }; + Cnds.prototype.CompareTouchSpeed = function (index, cmp, s) + { + index = Math.floor(index); + if (index < 0 || index >= this.touches.length) + return false; + var t = this.touches[index]; + var dist = cr.distanceTo(t.x, t.y, t.lastx, t.lasty); + var timediff = (t.time - t.lasttime) / 1000; + var speed = 0; + if (timediff > 0) + speed = dist / timediff; + return cr.do_cmp(speed, cmp, s); + }; + Cnds.prototype.OrientationSupported = function () + { + return typeof window["DeviceOrientationEvent"] !== "undefined"; + }; + Cnds.prototype.MotionSupported = function () + { + return typeof window["DeviceMotionEvent"] !== "undefined"; + }; + Cnds.prototype.CompareOrientation = function (orientation_, cmp_, angle_) + { + var v = 0; + if (orientation_ === 0) + v = this.getAlpha(); + else if (orientation_ === 1) + v = this.getBeta(); + else + v = this.getGamma(); + return cr.do_cmp(v, cmp_, angle_); + }; + Cnds.prototype.CompareAcceleration = function (acceleration_, cmp_, angle_) + { + var v = 0; + if (acceleration_ === 0) + v = this.acc_g_x; + else if (acceleration_ === 1) + v = this.acc_g_y; + else if (acceleration_ === 2) + v = this.acc_g_z; + else if (acceleration_ === 3) + v = this.acc_x; + else if (acceleration_ === 4) + v = this.acc_y; + else if (acceleration_ === 5) + v = this.acc_z; + return cr.do_cmp(v, cmp_, angle_); + }; + Cnds.prototype.OnNthTouchStart = function (touch_) + { + touch_ = Math.floor(touch_); + return touch_ === this.trigger_index; + }; + Cnds.prototype.OnNthTouchEnd = function (touch_) + { + touch_ = Math.floor(touch_); + return touch_ === this.trigger_index; + }; + Cnds.prototype.HasNthTouch = function (touch_) + { + touch_ = Math.floor(touch_); + return this.touches.length >= touch_ + 1; + }; + Cnds.prototype.OnHoldGesture = function () + { + return true; + }; + Cnds.prototype.OnTapGesture = function () + { + return true; + }; + Cnds.prototype.OnDoubleTapGesture = function () + { + return true; + }; + Cnds.prototype.OnHoldGestureObject = function (type) + { + if (!type) + return false; + return this.runtime.testAndSelectCanvasPointOverlap(type, this.curTouchX, this.curTouchY, false); + }; + Cnds.prototype.OnTapGestureObject = function (type) + { + if (!type) + return false; + return this.runtime.testAndSelectCanvasPointOverlap(type, this.curTouchX, this.curTouchY, false); + }; + Cnds.prototype.OnDoubleTapGestureObject = function (type) + { + if (!type) + return false; + return this.runtime.testAndSelectCanvasPointOverlap(type, this.curTouchX, this.curTouchY, false); + }; + Cnds.prototype.OnPermissionGranted = function (type) + { + return this.trigger_permission === type; + }; + Cnds.prototype.OnPermissionDenied = function (type) + { + return this.trigger_permission === type; + }; + pluginProto.cnds = new Cnds(); + function Acts() {}; + Acts.prototype.RequestPermission = function (type) + { + var self = this; + var promise = Promise.resolve(true); + if (type === 0) // orientation + { + if (window["DeviceOrientationEvent"] && window["DeviceOrientationEvent"]["requestPermission"]) + { + promise = window["DeviceOrientationEvent"]["requestPermission"]() + .then(function (state) + { + return state === "granted"; + }); + } + } + else // motion + { + if (window["DeviceMotionEvent"] && window["DeviceMotionEvent"]["requestPermission"]) + { + promise = window["DeviceMotionEvent"]["requestPermission"]() + .then(function (state) + { + return state === "granted"; + }); + } + } + promise.then(function (result) + { + self.trigger_permission = type; + if (result) + self.runtime.trigger(cr.plugins_.Touch.prototype.cnds.OnPermissionGranted, self); + else + self.runtime.trigger(cr.plugins_.Touch.prototype.cnds.OnPermissionDenied, self); + }); + }; + pluginProto.acts = new Acts(); + function Exps() {}; + Exps.prototype.TouchCount = function (ret) + { + ret.set_int(this.touches.length); + }; + Exps.prototype.X = function (ret, layerparam) + { + var index = this.getTouchIndex; + if (index < 0 || index >= this.touches.length) + { + ret.set_float(0); + return; + } + var layer, oldScale, oldZoomRate, oldParallaxX, oldAngle; + if (cr.is_undefined(layerparam)) + { + layer = this.runtime.getLayerByNumber(0); + oldScale = layer.scale; + oldZoomRate = layer.zoomRate; + oldParallaxX = layer.parallaxX; + oldAngle = layer.angle; + layer.scale = 1; + layer.zoomRate = 1.0; + layer.parallaxX = 1.0; + layer.angle = 0; + ret.set_float(layer.canvasToLayer(this.touches[index].x, this.touches[index].y, true)); + layer.scale = oldScale; + layer.zoomRate = oldZoomRate; + layer.parallaxX = oldParallaxX; + layer.angle = oldAngle; + } + else + { + if (cr.is_number(layerparam)) + layer = this.runtime.getLayerByNumber(layerparam); + else + layer = this.runtime.getLayerByName(layerparam); + if (layer) + ret.set_float(layer.canvasToLayer(this.touches[index].x, this.touches[index].y, true)); + else + ret.set_float(0); + } + }; + Exps.prototype.XAt = function (ret, index, layerparam) + { + index = Math.floor(index); + if (index < 0 || index >= this.touches.length) + { + ret.set_float(0); + return; + } + var layer, oldScale, oldZoomRate, oldParallaxX, oldAngle; + if (cr.is_undefined(layerparam)) + { + layer = this.runtime.getLayerByNumber(0); + oldScale = layer.scale; + oldZoomRate = layer.zoomRate; + oldParallaxX = layer.parallaxX; + oldAngle = layer.angle; + layer.scale = 1; + layer.zoomRate = 1.0; + layer.parallaxX = 1.0; + layer.angle = 0; + ret.set_float(layer.canvasToLayer(this.touches[index].x, this.touches[index].y, true)); + layer.scale = oldScale; + layer.zoomRate = oldZoomRate; + layer.parallaxX = oldParallaxX; + layer.angle = oldAngle; + } + else + { + if (cr.is_number(layerparam)) + layer = this.runtime.getLayerByNumber(layerparam); + else + layer = this.runtime.getLayerByName(layerparam); + if (layer) + ret.set_float(layer.canvasToLayer(this.touches[index].x, this.touches[index].y, true)); + else + ret.set_float(0); + } + }; + Exps.prototype.XForID = function (ret, id, layerparam) + { + var index = this.findTouch(id); + if (index < 0) + { + ret.set_float(0); + return; + } + var touch = this.touches[index]; + var layer, oldScale, oldZoomRate, oldParallaxX, oldAngle; + if (cr.is_undefined(layerparam)) + { + layer = this.runtime.getLayerByNumber(0); + oldScale = layer.scale; + oldZoomRate = layer.zoomRate; + oldParallaxX = layer.parallaxX; + oldAngle = layer.angle; + layer.scale = 1; + layer.zoomRate = 1.0; + layer.parallaxX = 1.0; + layer.angle = 0; + ret.set_float(layer.canvasToLayer(touch.x, touch.y, true)); + layer.scale = oldScale; + layer.zoomRate = oldZoomRate; + layer.parallaxX = oldParallaxX; + layer.angle = oldAngle; + } + else + { + if (cr.is_number(layerparam)) + layer = this.runtime.getLayerByNumber(layerparam); + else + layer = this.runtime.getLayerByName(layerparam); + if (layer) + ret.set_float(layer.canvasToLayer(touch.x, touch.y, true)); + else + ret.set_float(0); + } + }; + Exps.prototype.Y = function (ret, layerparam) + { + var index = this.getTouchIndex; + if (index < 0 || index >= this.touches.length) + { + ret.set_float(0); + return; + } + var layer, oldScale, oldZoomRate, oldParallaxY, oldAngle; + if (cr.is_undefined(layerparam)) + { + layer = this.runtime.getLayerByNumber(0); + oldScale = layer.scale; + oldZoomRate = layer.zoomRate; + oldParallaxY = layer.parallaxY; + oldAngle = layer.angle; + layer.scale = 1; + layer.zoomRate = 1.0; + layer.parallaxY = 1.0; + layer.angle = 0; + ret.set_float(layer.canvasToLayer(this.touches[index].x, this.touches[index].y, false)); + layer.scale = oldScale; + layer.zoomRate = oldZoomRate; + layer.parallaxY = oldParallaxY; + layer.angle = oldAngle; + } + else + { + if (cr.is_number(layerparam)) + layer = this.runtime.getLayerByNumber(layerparam); + else + layer = this.runtime.getLayerByName(layerparam); + if (layer) + ret.set_float(layer.canvasToLayer(this.touches[index].x, this.touches[index].y, false)); + else + ret.set_float(0); + } + }; + Exps.prototype.YAt = function (ret, index, layerparam) + { + index = Math.floor(index); + if (index < 0 || index >= this.touches.length) + { + ret.set_float(0); + return; + } + var layer, oldScale, oldZoomRate, oldParallaxY, oldAngle; + if (cr.is_undefined(layerparam)) + { + layer = this.runtime.getLayerByNumber(0); + oldScale = layer.scale; + oldZoomRate = layer.zoomRate; + oldParallaxY = layer.parallaxY; + oldAngle = layer.angle; + layer.scale = 1; + layer.zoomRate = 1.0; + layer.parallaxY = 1.0; + layer.angle = 0; + ret.set_float(layer.canvasToLayer(this.touches[index].x, this.touches[index].y, false)); + layer.scale = oldScale; + layer.zoomRate = oldZoomRate; + layer.parallaxY = oldParallaxY; + layer.angle = oldAngle; + } + else + { + if (cr.is_number(layerparam)) + layer = this.runtime.getLayerByNumber(layerparam); + else + layer = this.runtime.getLayerByName(layerparam); + if (layer) + ret.set_float(layer.canvasToLayer(this.touches[index].x, this.touches[index].y, false)); + else + ret.set_float(0); + } + }; + Exps.prototype.YForID = function (ret, id, layerparam) + { + var index = this.findTouch(id); + if (index < 0) + { + ret.set_float(0); + return; + } + var touch = this.touches[index]; + var layer, oldScale, oldZoomRate, oldParallaxY, oldAngle; + if (cr.is_undefined(layerparam)) + { + layer = this.runtime.getLayerByNumber(0); + oldScale = layer.scale; + oldZoomRate = layer.zoomRate; + oldParallaxY = layer.parallaxY; + oldAngle = layer.angle; + layer.scale = 1; + layer.zoomRate = 1.0; + layer.parallaxY = 1.0; + layer.angle = 0; + ret.set_float(layer.canvasToLayer(touch.x, touch.y, false)); + layer.scale = oldScale; + layer.zoomRate = oldZoomRate; + layer.parallaxY = oldParallaxY; + layer.angle = oldAngle; + } + else + { + if (cr.is_number(layerparam)) + layer = this.runtime.getLayerByNumber(layerparam); + else + layer = this.runtime.getLayerByName(layerparam); + if (layer) + ret.set_float(layer.canvasToLayer(touch.x, touch.y, false)); + else + ret.set_float(0); + } + }; + Exps.prototype.AbsoluteX = function (ret) + { + if (this.touches.length) + ret.set_float(this.touches[0].x); + else + ret.set_float(0); + }; + Exps.prototype.AbsoluteXAt = function (ret, index) + { + index = Math.floor(index); + if (index < 0 || index >= this.touches.length) + { + ret.set_float(0); + return; + } + ret.set_float(this.touches[index].x); + }; + Exps.prototype.AbsoluteXForID = function (ret, id) + { + var index = this.findTouch(id); + if (index < 0) + { + ret.set_float(0); + return; + } + var touch = this.touches[index]; + ret.set_float(touch.x); + }; + Exps.prototype.AbsoluteY = function (ret) + { + if (this.touches.length) + ret.set_float(this.touches[0].y); + else + ret.set_float(0); + }; + Exps.prototype.AbsoluteYAt = function (ret, index) + { + index = Math.floor(index); + if (index < 0 || index >= this.touches.length) + { + ret.set_float(0); + return; + } + ret.set_float(this.touches[index].y); + }; + Exps.prototype.AbsoluteYForID = function (ret, id) + { + var index = this.findTouch(id); + if (index < 0) + { + ret.set_float(0); + return; + } + var touch = this.touches[index]; + ret.set_float(touch.y); + }; + Exps.prototype.SpeedAt = function (ret, index) + { + index = Math.floor(index); + if (index < 0 || index >= this.touches.length) + { + ret.set_float(0); + return; + } + var t = this.touches[index]; + var dist = cr.distanceTo(t.x, t.y, t.lastx, t.lasty); + var timediff = (t.time - t.lasttime) / 1000; + if (timediff <= 0) + ret.set_float(0); + else + ret.set_float(dist / timediff); + }; + Exps.prototype.SpeedForID = function (ret, id) + { + var index = this.findTouch(id); + if (index < 0) + { + ret.set_float(0); + return; + } + var touch = this.touches[index]; + var dist = cr.distanceTo(touch.x, touch.y, touch.lastx, touch.lasty); + var timediff = (touch.time - touch.lasttime) / 1000; + if (timediff <= 0) + ret.set_float(0); + else + ret.set_float(dist / timediff); + }; + Exps.prototype.AngleAt = function (ret, index) + { + index = Math.floor(index); + if (index < 0 || index >= this.touches.length) + { + ret.set_float(0); + return; + } + var t = this.touches[index]; + ret.set_float(cr.to_degrees(cr.angleTo(t.lastx, t.lasty, t.x, t.y))); + }; + Exps.prototype.AngleForID = function (ret, id) + { + var index = this.findTouch(id); + if (index < 0) + { + ret.set_float(0); + return; + } + var touch = this.touches[index]; + ret.set_float(cr.to_degrees(cr.angleTo(touch.lastx, touch.lasty, touch.x, touch.y))); + }; + Exps.prototype.Alpha = function (ret) + { + ret.set_float(this.getAlpha()); + }; + Exps.prototype.Beta = function (ret) + { + ret.set_float(this.getBeta()); + }; + Exps.prototype.Gamma = function (ret) + { + ret.set_float(this.getGamma()); + }; + Exps.prototype.AccelerationXWithG = function (ret) + { + ret.set_float(this.acc_g_x); + }; + Exps.prototype.AccelerationYWithG = function (ret) + { + ret.set_float(this.acc_g_y); + }; + Exps.prototype.AccelerationZWithG = function (ret) + { + ret.set_float(this.acc_g_z); + }; + Exps.prototype.AccelerationX = function (ret) + { + ret.set_float(this.acc_x); + }; + Exps.prototype.AccelerationY = function (ret) + { + ret.set_float(this.acc_y); + }; + Exps.prototype.AccelerationZ = function (ret) + { + ret.set_float(this.acc_z); + }; + Exps.prototype.TouchIndex = function (ret) + { + ret.set_int(this.trigger_index); + }; + Exps.prototype.TouchID = function (ret) + { + ret.set_float(this.trigger_id); + }; + Exps.prototype.WidthForID = function (ret, id) + { + var index = this.findTouch(id); + if (index < 0) + { + ret.set_float(0); + return; + } + var touch = this.touches[index]; + ret.set_float(touch.width); + }; + Exps.prototype.HeightForID = function (ret, id) + { + var index = this.findTouch(id); + if (index < 0) + { + ret.set_float(0); + return; + } + var touch = this.touches[index]; + ret.set_float(touch.height); + }; + Exps.prototype.PressureForID = function (ret, id) + { + var index = this.findTouch(id); + if (index < 0) + { + ret.set_float(0); + return; + } + var touch = this.touches[index]; + ret.set_float(touch.pressure); + }; + pluginProto.exps = new Exps(); +}()); +if( window === undefined ) +{ + var window = ("undefined" == typeof window) ? + ("undefined" == typeof global) ? + ("undefined" == typeof self) ? + this + :self + :global + :window; +} +var __CONSTRUCT2_RUNTIME2__ = true; +var __CONSTRUCT3_RUNTIME2__ = false; +var __CONSTRUCT3_RUNTIME3__ = false; +var __DEBUG__ = false; +; +; +cr.plugins_.ValerypopoffJSPlugin = function(runtime) +{ + this.runtime = runtime; +}; +(function () +{ + var pluginProto = cr.plugins_.ValerypopoffJSPlugin.prototype; + pluginProto.Type = function(plugin) + { + this.plugin = plugin; + this.runtime = plugin.runtime; + }; + var typeProto = pluginProto.Type.prototype; + typeProto.onCreate = function() + { + }; + pluginProto.Instance = function(type) + { + this.type = type; + this.runtime = type.runtime; + }; + var instanceProto = pluginProto.Instance.prototype; + instanceProto.onCreate = function() + { + this.returnValue = undefined; + this.sciptsToLoad = 0; + this.Aliases = {}; + this.construct_compare_function_prefix = "ConstructCompare_"; + this.AliasDotpartsCache = + { + count: 0, + max_count: 4096, + Dotparts: {}, + AliasNames: {}, + AliasTrailers: {}, + IsAlias: {} + }; + this.NonAliasDotpartsCache = + { + count: 0, + max_count: 2048, + Dotparts: {} + }; + function AddScriptToPage(this_, nameOfExternalScript) + { + if( document === undefined ) + { + this_.ShowError( + { + debug_caller: "Including '"+ nameOfExternalScript +"' script to the page", + caller_name: "Including '"+ nameOfExternalScript +"' script to the page", + error_message: "'document' is not defined. You're probably launching the game in a Worker. Workers are not supported yet. Export project with 'Use worker' option unchecked in the 'Advanced' section of the 'Project properties' panel." + }); + return; + } + /* + if( window.jQuery && window.jQuery.ajax ) + { + $.ajax( + { + url: nameOfExternalScript, + dataType: "script", + async: false, + success: function() + { + this_.sciptsToLoad-- ; + }, + error: function(XMLHttpRequest) + { + this_.ShowError( + { + debug_caller: "Including '"+ nameOfExternalScript +"' script to the page", + caller_name: "Including '"+ nameOfExternalScript +"' script to the page", + error_message: XMLHttpRequest.status + }); + } + }); + } else */ + { + var myScriptTag = document.createElement('script'); + myScriptTag.setAttribute("type","text/javascript"); + myScriptTag.setAttribute("src", nameOfExternalScript); + myScriptTag.onreadystatechange = function () + { + if (this.readyState == 'complete') + this_.sciptsToLoad--; + } + myScriptTag.onload = function(){ this_.sciptsToLoad--; }; + myScriptTag.onerror = function() + { + this_.ShowError( + { + debug_caller: "Including '"+ nameOfExternalScript +"' script to the page", + caller_name: "Including '"+ nameOfExternalScript +"' script to the page", + error_message: "Probably file not found" + }); + }; + document.getElementsByTagName("head")[0].appendChild(myScriptTag); + } + } + if( this.properties[0] != "" ) + { + var lines = []; + if( __CONSTRUCT2_RUNTIME2__ ) + lines = this.properties[0].split(';'); + else + lines = this.properties[0].split(/[;\n\r]/); + for(var i=0; i= 0 || funcname_.indexOf(")") >= 0 ) + { + var info = + { + debug_caller: "CallJSfunction", + caller_name: caller_name_, + error_message: "'" + final.trimmed_code + "' must be a function name, not a function call. Remove parentheses." + } + if( final.alias_found ) + { + info["show-alias-expression"] = true; + info.alias_expression = final.trimmed_code; + } + this.ShowError( info ); + return; + } + var ret = undefined; + try + { + ret = final.end.apply(final.context, funcparams_); + } catch(err) + { + if (err instanceof TypeError && err.message.indexOf("apply") >= 0 && err.message.indexOf("undefined") >= 0 ) + err.message = funcname_ + " is undefined"; + var info = + { + debug_caller: "CallJSfunction", + caller_name: caller_name_, + error_message: err.message + } + if( final.alias_found ) + { + info["show-alias-expression"] = true; + info.alias_expression = MakeCallString(final.trimmed_code, funcparams_); + info["show-code"] = true, + info.code = MakeCallString(this.Aliases[final.alias_name].js + final.alias_trailer, funcparams_); + } + else + { + info["show-code"] = true, + info.code = MakeCallString(final.trimmed_code, funcparams_); + } + this.ShowError( info ); + return; + } + if( store_return_value_ ) + this.returnValue = ret; + return ret; + }, + CallAlias: function(alias_exp_, funcparams_, store_return_value_, caller_name_) + { + if( store_return_value_ === undefined ) + store_return_value_ = true; + if( caller_name_ === undefined ) + caller_name_ = "'Call alias' action"; + var final = this.ParseJS(alias_exp_, true, caller_name_); + /* + if( !final.alias_found ) + { + var info = + { + debug_caller: "CallAlias", + caller_name: caller_name_, + error_message: "No such alias '" + final.trimmed_code + "'" + } + this.ShowError( info ); + return; + } + */ + if( final.error ) + return; + var ret = this.CallJSfunction(this.Aliases[final.alias_name].js + final.alias_trailer, funcparams_, store_return_value_, caller_name_, final ); + return ret; + }, + ShowError: function( info ) + { + var error_str = "ValerypopoffJS plugin: Error in " + info.caller_name + "\n"; + error_str += "--------------------- \n"; + if( __DEBUG__ ) + { + error_str += "DEBUG CALLER: " + info.debug_caller + "\n"; + error_str += "--------------------- \n"; + } + if( info["show-alias-expression"] ) + { + error_str += "Alias expression: " + info.alias_expression + "\n"; + error_str += "--------------------- \n"; + } + if( info["show-code"] ) + { + error_str += "JS code: " + info.code + "\n"; + error_str += "--------------------- \n"; + } + error_str += info.error_message; + console.error( error_str ); + }, + Resolve: function( dotparts_, caller_name_, code_, alias_name_, alias_trailer_ ) + { + var context = window; + var end = context; + var endname = ""; + for( var i=0, dotparts_length=dotparts_.length; i= cache.max_count ) + for( var i in cache.Dotparts ) + { + delete cache.Dotparts[i]; + if( cache.IsAlias[ i ] ) + { + delete cache.AliasNames[ i ]; + delete cache.AliasTrailers[ i ]; + delete cache.IsAlias[ i ]; + } + cache.count--; + if(cache.count <= cache.max_count) + break; + } + cache.Dotparts[ trimmed_code ] = Dotparts; + if( alias_found ) + { + cache.AliasNames[ trimmed_code ] = alias_name; + cache.AliasTrailers[ trimmed_code ] = alias_trailer; + cache.IsAlias[ trimmed_code ] = true; + } + cache.count++; + } + var Result = this.Resolve( Dotparts, caller_name_, trimmed_code, alias_name, alias_trailer ); + return { + error: Result.error, + end: Result.end, + endname: Result.endname, + context: Result.context, + trimmed_code: trimmed_code, + alias_found: alias_found, + alias_name: alias_name, + alias_trailer: alias_trailer + }; + } +} + for( var k in InstanceFunctionsObject ) + { + instanceProto[k] = InstanceFunctionsObject[k]; + } + function Cnds() {}; + var CndsObject = + { + C2CompareFunctionReturnValue: function(value_, cmp_, funcname_, funcparams_) + { + switch( cmp_ ) + { + case 2: cmp_=4; break; + case 3: cmp_=5; break; + case 4: cmp_=2; break; + case 5: cmp_=3; break; + } + return this.CNDS.CompareFunctionReturnValue.call( this, funcname_, funcparams_, cmp_, value_ ); + }, + C2CompareAliasCallReturnValue: function(value_, cmp_, alias_exp_, funcparams_) + { + switch( cmp_ ) + { + case 2: cmp_=4; break; + case 3: cmp_=5; break; + case 4: cmp_=2; break; + case 5: cmp_=3; break; + } + return this.CNDS.CompareAliasCallReturnValue.call( this, alias_exp_, funcparams_, cmp_, value_ ); + }, + C2CompareExecReturnWithParams: function(value_, cmp_, code_, params_) + { + switch( cmp_ ) + { + case 2: cmp_=4; break; + case 3: cmp_=5; break; + case 4: cmp_=2; break; + case 5: cmp_=3; break; + } + return this.CNDS.CompareExecReturnWithParams.call( this, code_, params_, cmp_, value_ ); + }, + C2CompareValue: function(value_, cmp_, alias_exp_, funcparams_) + { + switch( cmp_ ) + { + case 2: cmp_=4; break; + case 3: cmp_=5; break; + case 4: cmp_=2; break; + case 5: cmp_=3; break; + } + return this.CNDS.CompareValue.call(this, alias_exp_, funcparams_, cmp_, value_) + }, + CompareExecReturnWithParams: function(code_, params_, cmp_, value_) + { + var ret = undefined; + var caller_name_ = "'Compare JS code Completion value' condition"; + if( params_.length ) + code_ = HashtagParamsToCode(code_, params_); + try + { + ret = eval(code_); + } catch(err) + { + var info = + { + debug_caller: "CompareExecReturnWithParams", + caller_name: caller_name_, + error_message: err.message, + "show-code": true, + code: code_ + } + this.ShowError( info ); + return; + } + if( typeof ret === "boolean" ) + ret = ret ? 1 : 0; + return cr.do_cmp(ret, cmp_, value_); + }, + CompareFunctionReturnValue: function(funcname_, funcparams_, cmp_, value_) + { + var store_return_value_ = false; + var ret = undefined; + ret = this.CallJSfunction(funcname_, funcparams_, store_return_value_, "'Compare Function return value' condition" ); + if( typeof ret === "boolean" ) + ret = ret ? 1 : 0; + return cr.do_cmp(ret, cmp_, value_); + }, + CompareStoredReturnValue: function(cmp_, value_) + { + var ret = this.returnValue; + if( typeof ret === "boolean" ) + ret = ret ? 1 : 0; + return cr.do_cmp(ret, cmp_, value_); + }, + AllScriptsLoaded: function() + { + return ( this.sciptsToLoad <= 0 ) ? true : false; + }, + CompareValue: function(alias_exp_, funcparams_, cmp_, value_) + { + var ret = undefined; + var caller_name = "'Compare Value' condition"; + ret = this.Value( caller_name, [].concat(alias_exp_, funcparams_) ); + if( typeof ret === "boolean" ) + ret = ret ? 1 : 0; + return cr.do_cmp(ret, cmp_, value_); + }, + CompareAliasValue: function(alias_exp_, cmp_, value_) + { + var caller_name_ = "'Compare alias' condition"; + var store_return_value_ = false; + var final = this.ParseJS(alias_exp_, true, "'Set alias' action"); + if( !final.alias_found ) + { + var info = + { + debug_caller: "CompareAliasValue", + caller_name: caller_name_, + error_message: "No such alias '" + alias_exp_ + "'" + } + this.ShowError( info ); + return; + } + if( final.error ) + { + return; + } + var custom_method = final.context[ this.construct_compare_function_prefix + final.endname ]; + if( custom_method && typeof(final.context) == "object" ) + { + try + { + return custom_method.call( final.context, cmp_, value_ ); + } catch(err) + { + var info = + { + debug_caller: "CompareAliasValue", + caller_name: caller_name_, + "show-alias-expression": true, + alias_expression: final.trimmed_code, + error_message: "Error in user defined '" + this.construct_compare_function_prefix + final.endname + "' function: " + err.message + } + this.ShowError( info ); + return; + } + } else + { + var ret = final.end; + if( typeof ret === "boolean" ) + ret = ret ? 1 : 0; + return cr.do_cmp(ret, cmp_, value_); + } + }, + CompareAliasCallReturnValue: function(alias_exp_, funcparams_, cmp_, value_) + { + var store_return_value_ = false; + var ret = undefined; + ret = this.CallAlias(alias_exp_, funcparams_, store_return_value_, "'Compare Alias Call return value' condition" ); + if( typeof ret === "boolean" ) + ret = ret ? 1 : 0; + return cr.do_cmp(ret, cmp_, value_); + } + }; + for( var k in CndsObject ) + { + Cnds.prototype[k] = CndsObject[k]; + } + pluginProto.cnds = new Cnds(); + function Acts() {}; + var ActsObject = + { + ExecuteJSWithParams: function(code, params_) + { + var caller_name_ = "'Execute JS code' action"; + this.returnValue = undefined; + code = code.replace( /#[0-9]+/g, function(str) + { + var temp = params_[ str.substr(1) ]; + if (typeof temp === "string") + return "'" + temp + "'"; + else + return temp; + } + ); + try + { + this.returnValue = eval(code); + } catch(err) + { + this.ShowError( + { + debug_caller: "ExecuteJSWithParams", + caller_name: caller_name_, + "show-code": true, + code: code, + error_message: err.message + }); + return; + } + }, + CallJSfunction: function(funcname_, funcparams_, store_return_value_, caller_name_, final_) + { + this.CallJSfunction(funcname_, funcparams_, store_return_value_, caller_name_, final_); + }, + SetValue: function(alias_exp_, alias_value_) + { + var caller_name_ = "'Set value' action"; + var final = this.ParseJS(alias_exp_, true, caller_name_); + /* + if( !final.alias_found ) + { + var info = + { + debug_caller: "SetValue", + caller_name: caller_name_, + error_message: "No such alias '" + final.trimmed_code + "'" + } + this.ShowError( info ); + return; + } */ + if( final.error ) + return; + try + { + final.context[final.endname] = alias_value_; + } catch(err) + { + var code = alias_exp_ + "="; + if( typeof alias_value_ == "string" ) + code = code + "'" + alias_value_ + "'"; + else + code = code + alias_value_; + var info = + { + debug_caller: "SetValue", + caller_name: caller_name_, + "show-alias-expression": final.alias_found, + alias_expression: final.trimmed_code, + "show-code": true, + code: code, + error_message: err.message + } + this.ShowError( info ); + return; + } + }, + Call: function(alias_exp_, funcparams_, store_return_value_, caller_name_) + { + this.CallJSfunction(alias_exp_, funcparams_, true, "'Call' action" ); + }, + InitAlias: function(alias_name_, alias_js_) + { + var caller_name_ = "'Init alias' action"; + alias_name_ = alias_name_.trim(); + alias_js_ = alias_js_.trim(); + if( alias_js_.length == 0 ) + { + var info = + { + debug_caller: "InitAlias", + caller_name: caller_name_, + error_message: "Javascript string of alias '" + alias_name_ + "' must not be empty." + } + this.ShowError( info ); + return; + } + if( alias_name_.indexOf(".") >= 0 || alias_name_.indexOf("[") >= 0 || alias_name_.indexOf("]") >= 0 ) + { + var info = + { + debug_caller: "InitAlias", + caller_name: caller_name_, + error_message: "Alias name must not contain '.', '[' or ']' signs: '" + alias_name_ + "'" + } + this.ShowError( info ); + return; + } + if( this.Aliases[alias_name_] != undefined ) + { + var info = + { + debug_caller: "InitAlias", + caller_name: caller_name_, + error_message: "Alias '" + alias_name_ + "' already exists" + } + this.ShowError( info ); + return; + } + var newAlias = new Object(); + newAlias.js = alias_js_; + newAlias.dotstring = alias_js_.split('[').join(".["); + this.Aliases[alias_name_] = newAlias; + }, + SetAlias: function(alias_exp_, alias_value_) + { + var caller_name_ = "'Set alias' action"; + var final = this.ParseJS(alias_exp_, true, "'Set alias' action"); + if( !final.alias_found ) + { + var info = + { + debug_caller: "SetAlias", + caller_name: caller_name_, + error_message: "No such alias '" + final.trimmed_code + "'" + } + this.ShowError( info ); + return; + } + if( final.error ) + return; + try + { + final.context[final.endname] = alias_value_; + } catch(err) + { + var code = alias_exp_ + "="; + if( typeof alias_value_ == "string" ) + code = code + "'" + alias_value_ + "'"; + else + code = code + alias_value_; + var info = + { + debug_caller: "SetAlias", + caller_name: caller_name_, + "show-alias-expression": true, + alias_expression: final.trimmed_code, + "show-code": true, + code: code, + error_message: err.message + } + this.ShowError( info ); + return; + } + }, + CallAlias: function(alias_exp_, funcparams_, store_return_value_, caller_name_) + { + this.CallAlias(alias_exp_, funcparams_, store_return_value_, caller_name_); + } + }; + for( var k in ActsObject ) + { + Acts.prototype[k] = ActsObject[k]; + } + pluginProto.acts = new Acts(); + function Exps() {}; + var ExpsObject = + { + JSCodeValue: function() + { + var params_ = Array.prototype.slice.call(arguments); + var ret; + if( __CONSTRUCT3_RUNTIME3__ ) + ret = {set_int: function(){}, set_float: function(){}, set_string: function(){}, set_any: function(){}}; + else + { + ret = params_[0]; + for( var i=0; i= entry.length){ + console.error("MODEL %s: setting item %s while array only have %s !",this.uid,index,entry.length); + throw "err"; + return; + } + } + /* + if entry[key] is not array or an object (typeof(entry[key]) != "object") + and since typeof(null)= "object" we had to add it in the condition + */ + if ( entry[key] == null || typeof(entry[key]) != "object"){ + entry[key] = {}; + } + entry = entry[key]; + } + return entry; + }; + instanceProto.getValue = function(keys, root) + { + var entry = root || this.hashtable; + if (!keys || keys === "" || keys == "root"|| keys.length == 0) + { + return entry; + } + if (typeof (keys) === "string"){ + keys = keys.split("."); + } + var key; + for (var i=0,l=keys.length; i< l; i++) + { + key = keys[i]; + if (entry.hasOwnProperty(key)){ + entry = entry[key]; + }else{ + return; + } + } + return entry; + }; + /* + keys="" + keys is an object/array + keys is a simple value + keys is a.b... where b dosent exist and a is a simple value + a.b.c + */ + instanceProto.setValue = function(keys, value, root) + { + if (keys === "" || keys.length === 0) + { + if (value !== null && typeof(value) === "object") + { + if (root == null){ + this.hashtable = value; + }else{ + root = value; + } + } + } + else + { + if (root == null){ + root = this.hashtable; + } + if (typeof (keys) === "string"){ + keys = keys.split("."); + } + var lastKey = keys.pop(); + try{ + var entry = this.getEntry(keys, root); + }catch(error){ + throw "err"; + return; + } + if(isArray(entry)){ + var index = parseInt(lastKey); + if(index < 0 || index >= entry.length){ + console.error("MODEL %s: setting item %s while array only have %s !",this.uid,index,entry.length); + return; + } + } + entry[lastKey] = value; + } + }; + instanceProto.removeKey = function (keys) + { + if ((keys === "") || (keys.length === 0)) + { + this.cleanAll(); + } + else + { + if (typeof (keys) === "string") + keys = keys.split("."); + var data = this.getValue(keys); + if (data === undefined) + return; + var lastKey = keys.pop(); + var entry = this.getEntry(keys); + if (!isArray(entry)) + { + delete entry[lastKey]; + } + else + { + if ((lastKey < 0) || (lastKey >= entry.length)) + return; + else if (lastKey === (entry.length-1)) + entry.pop(); + else if (lastKey === 0) + entry.shift(); + else + entry.splice(lastKey, 1); + } + } + }; + var getItemsCount = function (o) + { + if (o == null)// nothing + return (-1); + else if ((typeof o == "number") || (typeof o == "string"))// number/string + return 0; + else if (o.length != null)// list + return o.length; + var key,cnt=0; + for (key in o) + cnt += 1; + return cnt; + }; + var din = function (d, default_value) + { + var o; + if (d === true) + o = 1; + else if (d === false) + o = 0; + else if ((d == null) || (d==undefined)) + { + if ( (default_value != null) && (default_value != undefined) ) + o = default_value; + else + o = 0; + } + else if (typeof(d) == "object") + o = JSON.stringify(d); + else + o = d; + return o; + }; + var isArray = function(o) + { + return (o instanceof Array); + }; + var isObject = function(val) { + if (val === null) { return false;} + return ( (typeof val === 'function') || (typeof val === 'object') ); + } + function isObjectEmpty(obj) { + for(var prop in obj) { + if(obj.hasOwnProperty(prop)) + return false; + } + return true; + } + instanceProto.saveToJSON = function () + { + return { "d": this.hashtable }; + }; + instanceProto.loadFromJSON = function (o) + { + this.hashtable = o["d"]; + }; + instanceProto.onDestroy = function () + { + /* + delete tag from proui + deactivated the binding with all linked elements + */ + }; + function Cnds() {}; + pluginProto.cnds = new Cnds(); + Cnds.prototype.ForEachItem = function (key) + { + var entry = this.getEntry(key); + var current_frame = this.runtime.getCurrentEventStack(); + var current_event = current_frame.current_event; + var solModifierAfterCnds = current_frame.isModifierAfterCnds(); + var key, value; + this.exp_Loopindex = -1; + for (key in entry) + { + if (solModifierAfterCnds) + this.runtime.pushCopySol(current_event.solModifiers); + this.exp_CurKey = key; + this.exp_CurValue = entry[key]; + this.exp_Loopindex ++; + current_event.retrigger(); + if (solModifierAfterCnds) + this.runtime.popSol(current_event.solModifiers); + } + this.exp_CurKey = ""; + this.exp_CurValue = 0; + return false; + }; + Cnds.prototype.KeyExists = function (keys) + { + if (keys == "") + return false; + var data = this.getValue(keys); + return (data !== undefined); + }; + Cnds.prototype.IsEmpty = function (keys) + { + var entry = this.getEntry(keys); + var cnt = getItemsCount(entry); + return (cnt <= 0); + }; + /*Cnds.prototype.OnKeySet = function (key) + { + return cr.equals_nocase(tag, this.curTag); + };*/ + function Acts() {}; + pluginProto.acts = new Acts(); + Acts.prototype.SetValueByKeyString = function (key, value,options) + { + if (key == "" || key == "root"){ + console.error("MODEL %s: You can't set the root to a simple value !",this.tag); + return; + } + try{ + this.setValue(key, value); + }catch(error){ + return; + } + if(!options){ + options = {}; + } + options.op = 4; + options.key = key; + options.value = value; + this.notifyBehaviorModels(key,options); + }; + Acts.prototype.SetJSONByKeyString = function (key, value) + { + if(!isObject(value)){ + try { + value = JSON.parse(value); + } catch(e) { + console.error("MODEL %s: SetJSONByKeyString() **** The json you are trying to set is not valid !"); + console.error("key = %s", key); + console.error("value = %s", value); + console.error("********************* "); + return; + } + } + try{ + this.setValue(key, value); + }catch(error){ + return; + } + this.notifyBehaviorModels(key,{op:2}); //2 for load + }; + Acts.prototype.AddToValueByKeyString = function (key, value,options) + { + if (key === "") + return; + var _key = key.split("."); + var curValue = this.getValue(_key) || 0; + try{ + this.setValue(_key, curValue + value); + }catch(error){ + return; + } + if(!options){ + options = {}; + } + value = this.getValue(key) || 0; + options.op = 4; + options.key = key; + options.value = value; + this.notifyBehaviorModels(key,options); + }; + Acts.prototype.PushValue = function (key, val) + { + var arr = this.getEntry(key); + if (arr == null || isObjectEmpty(arr))//If there's nothing on key then we create a empty array + { + this.setValue(key, []); + arr = this.getEntry(key); + } + if (!isArray(arr)){//if there's something on keys but it's not an array, then we do nothing + console.log("not an array"); + return; + } + arr.push(val); + this.notifyBehaviorModels(key,{op:1}); //1 for push + }; + Acts.prototype.PushJSON = function (keys, val) + { + try { + val = JSON.parse(val); + } catch(e) { + console.error("MODEL PLugin: The json you are trying to push is not valid !"); + return; + } + Acts.prototype.PushValue.call(this, keys, val); + }; + Acts.prototype.InsertValue = function (key, val, index) + { + var array = this.getEntry(key); + if (array == null || isObjectEmpty(array)) + { + this.setValue(key, []); + array = this.getEntry(key); + } + if (!isArray(array)){ + console.log(this.hashtable); + return; + } + if(array.length= array.length)){ + return; + } + if (index === (array.length-1)){ + array.pop(); + } + else if (index === 0){ + array.shift(); + } + else{ + array.splice(index, 1); + } + this.notifyBehaviorModels(key,{op:-1, idx: index}); + }; + Acts.prototype.RemoveByKeyString = function (key) + { + this.removeKey(key); + this.notifyBehaviorModels(key); + }; + Acts.prototype.CleanAll = function () + { + this.cleanAll(); + this.notifyBehaviorModels("root"); + }; + Acts.prototype.StringToHashTable = function (json) + { + if (json != ""){ + try { + this.hashtable = JSON.parse(json); + } catch(e) { + console.error("MODEL PLugin: The json you are trying to load is not valid !",e); + return; + } + this.notifyBehaviorModels("root",{op:2}); + }else{ + this.cleanAll(); + } + }; + Acts.prototype.SetLanguage = function(lang) + { + this.lang_code = lang; + this.updateLabels(); + } + /*Acts.prototype.SetKeyToKey = function (key1,key2) + { + var value = this.getValue(key1); + var entry = this.getEntry(key1, root); + this.notifyBehaviorModels(key1,{op:-1, idx: index}); + };*/ + function Exps() {}; + pluginProto.exps = new Exps(); + Exps.prototype.at = function (ret, keys, default_value) + { + keys = keys.split("."); + var val = din(this.getValue(keys), default_value); + ret.set_any(val); + }; + Exps.prototype.arrayValueByValue = function (ret, arrayKey,idKey,idValue,key2,default_value) + { + var array = this.getValue(arrayKey); + var val = 0; + if (!isArray(array)){ + console.log("not an array"); + ret.set_any(val); + return; + } + for (var i = 0, l=array.length; i < l; i++) { + if(this.getValue(idKey,array[i]) == idValue){ + val = this.getValue(key2,array[i]); + break; + } + } + val = din(val, default_value); + ret.set_any(val); + }; + Exps.prototype.curKey = function (ret) + { + ret.set_string(this.exp_CurKey); + }; + Exps.prototype.curValue = function (ret, subKeys, default_value) + { + var val = this.getValue(subKeys, this.exp_CurValue); + val = din(val, default_value); + ret.set_any(val); + }; + Exps.prototype.loopindex = function (ret) + { + ret.set_int(this.exp_Loopindex); + }; + Exps.prototype.asJSON = function (ret) + { + var json = JSON.stringify(this.hashtable); + ret.set_string(json); + }; + Exps.prototype.makeJSON = function (ret) + { + var object = {}; + if (arguments.length > 1) + { + var i, cnt=arguments.length; + for(i=1; i 1) + { + var i, cnt=arguments.length; + for(i=1; i= + GESTURE_HOLD_THRESHOLD + ) { + this.tooFarForHold = true; + } + }; + var lastTapX = -1000; + var lastTapY = -1000; + var lastTapTime = -10000; + TouchInfo.prototype.maybeTriggerTap = function (inst, index) { + if (this.triggeredHold) return; + var nowtime = cr.performance_now(); + if ( + nowtime - this.starttime <= GESTURE_TAP_TIMEOUT && + !this.tooFarForHold && + cr.distanceTo(this.startx, this.starty, this.x, this.y) < + GESTURE_HOLD_THRESHOLD + ) { + inst.trigger_index = this.startindex; + inst.trigger_id = this["id"]; + inst.getTouchIndex = index; + if ( + nowtime - lastTapTime <= GESTURE_TAP_TIMEOUT * 2 && + cr.distanceTo(lastTapX, lastTapY, this.x, this.y) < + GESTURE_DOUBLETAP_THRESHOLD + ) { + inst.curTouchX = this.x; + inst.curTouchY = this.y; + lastTapX = -1000; + lastTapY = -1000; + lastTapTime = -10000; + } + else { + inst.curTouchX = this.x; + inst.curTouchY = this.y; + lastTapX = this.x; + lastTapY = this.y; + lastTapTime = nowtime; + } + inst.getTouchIndex = 0; + } + }; + instanceProto.onCreate = function () { + theInstance = this; + this.isWindows8 = !!( + typeof window["c2isWindows8"] !== "undefined" && window["c2isWindows8"] + ); + this.curTouchX = 0; + this.curTouchY = 0; + this.trigger_index = 0; + this.trigger_id = 0; + this.getTouchIndex = 0; + this.useMouseInput = true; + var elem = + this.runtime.fullscreen_mode > 0 ? document : this.runtime.canvas; + var elem2 = document; + if (this.runtime.isDirectCanvas) elem2 = elem = window["Canvas"]; + else if (this.runtime.isCocoonJs) elem2 = elem = window; + var self = this; + if (typeof PointerEvent !== "undefined") { + elem.addEventListener( + "pointerdown", + function (info) { + self.onPointerStart(info); + }, + false + ); + elem.addEventListener( + "pointermove", + function (info) { + self.onPointerMove(info); + }, + false + ); + elem2.addEventListener( + "pointerup", + function (info) { + self.onPointerEnd(info, false); + }, + false + ); + elem2.addEventListener( + "pointercancel", + function (info) { + self.onPointerEnd(info, true); + }, + false + ); + if (this.runtime.canvas) { + this.runtime.canvas.addEventListener( + "MSGestureHold", + function (e) { + e.preventDefault(); + }, + false + ); + document.addEventListener( + "MSGestureHold", + function (e) { + e.preventDefault(); + }, + false + ); + this.runtime.canvas.addEventListener( + "gesturehold", + function (e) { + e.preventDefault(); + }, + false + ); + document.addEventListener( + "gesturehold", + function (e) { + e.preventDefault(); + }, + false + ); + } + } + else if (window.navigator["msPointerEnabled"]) { + elem.addEventListener( + "MSPointerDown", + function (info) { + self.onPointerStart(info); + }, + false + ); + elem.addEventListener( + "MSPointerMove", + function (info) { + self.onPointerMove(info); + }, + false + ); + elem2.addEventListener( + "MSPointerUp", + function (info) { + self.onPointerEnd(info, false); + }, + false + ); + elem2.addEventListener( + "MSPointerCancel", + function (info) { + self.onPointerEnd(info, true); + }, + false + ); + if (this.runtime.canvas) { + this.runtime.canvas.addEventListener( + "MSGestureHold", + function (e) { + e.preventDefault(); + }, + false + ); + document.addEventListener( + "MSGestureHold", + function (e) { + e.preventDefault(); + }, + false + ); + } + } + else { + elem.addEventListener( + "touchstart", + function (info) { + self.onTouchStart(info); + }, + false + ); + elem.addEventListener( + "touchmove", + function (info) { + self.onTouchMove(info); + }, + false + ); + elem2.addEventListener( + "touchend", + function (info) { + self.onTouchEnd(info, false); + }, + false + ); + elem2.addEventListener( + "touchcancel", + function (info) { + self.onTouchEnd(info, true); + }, + false + ); + } + if (this.useMouseInput && !this.runtime.isDomFree) { + jQuery(document).mousemove(function (info) { + self.onMouseMove(info); + }); + jQuery(document).mousedown(function (info) { + self.onMouseDown(info); + }); + jQuery(document).mouseup(function (info) { + self.onMouseUp(info); + }); + } + if (!this.runtime.isDomFree) { + var wheelevent = function (info) { + self.onWheel(info); + }; + document.addEventListener("mousewheel", wheelevent, false); + document.addEventListener("DOMMouseScroll", wheelevent, false); + } + this.runtime.tick2Me(this); + this.enable = true; + this.lastTouchX = null; + this.lastTouchY = null; + cr.proui = this; + this.cssURL = this.properties[0]; + this.fontFamily = this.properties[1]; + this.defaultSoundTag = this.properties[2]; + this.useHowler = this.properties[3] === 0; + this.firstFrame = true; + /*The following is to get around not being able to destroy other instance in onDestroy of an instance, + cf onDestroy of radiogroup + */ + var runtime = this.runtime; + this.toBeDestroyed = []; + this.currentDialogs = []; + this.currentDialogs_lastResetTick = 0; + this.tags = {}; + this.tags_lastResetTick = 0; + this.scrollViews = {}; + this.iter = 0; + this.notRegister = false; + this.areInputsActive = true; + }; + instanceProto.getIter = function () { + this.iter++; + return this.iter; + }; + instanceProto.setNoRegister = function () {}; + instanceProto.addTag = function (tag, inst) { + if (!this.runtime.extra) { + this.runtime.extra = {}; + } + if (this.runtime.extra.notRegister || !tag) { + return; + } + /*if(this.runtime.changelayout && this.tags_lastResetTick != this.runtime.tickcount){ + this.tags = {} ; + this.tags_lastResetTick = this.runtime.tickcount; + }*/ + if (this.tags.hasOwnProperty(tag)) { + console.error("PROUI: Tag %s already exist !", tag); + return; + } + this.tags[tag] = inst; + }; + instanceProto.removeTag = function (tag) { + delete this.tags[tag]; + }; + instanceProto.addDialog = function (behavior) { + if ( + this.runtime.changelayout && + this.currentDialogs_lastResetTick != this.runtime.tickcount + ) { + this.currentDialogs.length = 0; + this.currentDialogs_lastResetTick = this.runtime.tickcount; + } + this.currentDialogs.push(behavior); + }; + instanceProto.isModalDialogOpened = function () { + for (var i = 0; i < this.currentDialogs.length; i++) { + if (this.currentDialogs[i].isModal) { + return true; + } + } + return false; + }; + instanceProto.removeDialog = function (behavior) { + this.removeFromArray(this.currentDialogs, behavior); + }; + instanceProto.removeFromArray = function (array, e) { + for (var i = 0, l = array.length; i < l; i++) { + if (array[i] == e) { + array.splice(i, 1); + return; + } + } + }; + instanceProto.clearDestroyList = function () { + var toBeDestroyed = this.toBeDestroyed; + for (var i = 0, l = toBeDestroyed.length; i < l; i++) { + this.runtime.DestroyInstance(toBeDestroyed[i]); + } + toBeDestroyed.length = 0; + }; + instanceProto.playAudio = function (fileName) { + if (this.useHowler) { + this.getDependency(cr.plugins_.skymenhowlerjs, "howler"); + if (this["howler"]) { + cr.plugins_.skymenhowlerjs.prototype.acts.PlayByName.call( + this["howler"], + fileName, + this.defaultSoundTag + ); + } else { + console.error("ProUI: Please add the Howler plugin to the project."); + } + } else { + this.getDependency(cr.plugins_.Audio, "audio"); + if (this["audio"]) { + var ret = { + val: 0, + set_float(val) { + ret.val = val; + }, + }; + cr.plugins_.Audio.prototype.exps.Volume.call( + this["audio"], + ret, + this.defaultSoundTag + ); + var volume = ret.val; + cr.plugins_.Audio.prototype.acts.PlayByName.call( + this["audio"], + 0, + fileName, + 0, + volume, + this.defaultSoundTag + ); + } else { + console.error("ProUI: Please add the Audio plugin to the project."); + } + } + }; + instanceProto.getDependency = function (dependency, dependencyRef) { + if (this[dependencyRef] != null) { + return this[dependencyRef]; + } + if (!dependency) { + console.error("ProUI: Can not find the " + dependencyRef + " object."); + return; + } + var plugins = this.runtime.types; + var name, inst; + for (name in plugins) { + inst = plugins[name].instances[0]; + if (inst instanceof dependency.prototype.Instance) { + this[dependencyRef] = inst; + return this[dependencyRef]; + } + } + if (!this[dependencyRef]) { + console.error("ProUI: Can not find " + dependencyRef + " object."); + } + }; + instanceProto.isTypeValid = function (inst, types, errorMsg) { + var test; + for (var i = 0, l = types.length; i < l; i++) { + test = types[i] ? inst.type.plugin instanceof types[i] : false; + if (test) { + return; + } + } + throw new Error(errorMsg); + }; + /*behinstProto.runCallback = function () + { + if(this.callbackName == ""){ + return; + } + var params = this.callbackParams.split(","); + if(this.callbackName[0]=="$"){ //$41$transitionToLayout + var callback = this.callbackName.split("$"); + console.log(callback); + var inst = this.runtime.getObjectByUID(parseInt(callback[1])); + if(inst){ + console.log(inst.type); + } + }else{ + c2_callFunction(this.callbackName,params); + } + };*/ + instanceProto.runCallback = function (callbackName, callbackParams) { + if (callbackName == "") { + return; + } + var params = callbackParams.split(","); + var callFunction = window["c2_callFunction"]; + if (callFunction) { + callFunction(callbackName, params); + } else { + console.error("ProUI : Please add the Function plugin to the project."); + } + }; + instanceProto.validateSimpleValue = function (value, default_value) { + var o; + if (value === true) { + o = 1; + } else if (value === false) { + o = 0; + } else if ( + value == null || + value == undefined || + typeof value == "object" + ) { + if (default_value != null && default_value != undefined) + o = default_value; + else o = 0; + } else { + o = value; + } + return o; + }; + instanceProto.HookMe = function (obj, types) { + var type; + for (var i = 0, l = types.length; i < l; i++) { + type = types[i]; + this._callbackObjs[type].push(obj); + } + }; + instanceProto.UnHookMe = function (obj, types) { + var type; + for (var i = 0, l = types.length; i < l; i++) { + type = types[i]; + cr.arrayFindRemove(this._callbackObjs[type], obj); + } + }; + function getThisBehavior(inst, behaviorProto) { + var i, len; + for (i = 0, len = inst.behavior_insts.length; i < len; i++) { + if (inst.behavior_insts[i] instanceof behaviorProto.Instance) + return inst.behavior_insts[i]; + } + return null; + } + /*var dispatchTouchStart = function(touchX, touchY) + { + var instances = this.my_instances.valuesRef(); + var instance; + var lx, ly; + var objectInstances = []; + for (var i=0,l=instances.length; i maxZInstance.layer.index) || ( (objectInstances[i].layer.index == maxZInstance.layer.index) && (objectInstances[i].get_zindex() > maxZInstance.get_zindex()) ) ) + { + maxZInstance = objectInstances[i]; + } + } + var maxZInstanceBehavior = getThisBehavior(maxZInstance,this); + if(maxZInstanceBehavior.OnTouchStart){ + maxZInstanceBehavior.OnTouchStart(); + } + objectInstances.length = 0; + };*/ + var dispatchTouchStart = function (touchX, touchY) { + var instances = this.my_instances.valuesRef(); + var instance; + var instanceBehavior; + var lx, ly; + for (var i = 0, l = instances.length; i < l; i++) { + instance = instances[i]; + if (!instance) continue; + if (!instance.layer.visible || !instance.visible) continue; + lx = instance.layer.canvasToLayer(touchX, touchY, true); + ly = instance.layer.canvasToLayer(touchX, touchY, false); + instance.update_bbox(); + instanceBehavior = getThisBehavior(instance, this); + if (instanceBehavior.OnAnyTouchStart) { + instanceBehavior.OnAnyTouchStart(); + } + if (instance.contains_pt(lx, ly)) { + if (instanceBehavior.OnTouchStart) { + instanceBehavior.OnTouchStart(lx, ly); + } + } + } + }; + var dispatchTouchMove = function (touchX, touchY) { + var instances = this.my_instances.valuesRef(); + var instance; + var instanceBehavior; + var lx, ly; + for (var i = 0, l = instances.length; i < l; i++) { + instance = instances[i]; + if (!instance) continue; + if (!instance.layer.visible || !instance.visible) continue; + lx = instance.layer.canvasToLayer(touchX, touchY, true); + ly = instance.layer.canvasToLayer(touchX, touchY, false); + instance.update_bbox(); + instanceBehavior = getThisBehavior(instance, this); + /*if(instanceBehavior.OnAnyTouchStart){ + instanceBehavior.OnAnyTouchStart(); + }*/ + if (instance.contains_pt(lx, ly)) { + if (instanceBehavior.OnTouchMove) { + instanceBehavior.OnTouchMove(lx, ly); + } + } + } + }; + var dispatchTouchEnd = function (touchX, touchY) { + var instances = this.my_instances.valuesRef(); + var instance; + var instanceBehavior; + var tx, ty; + for (var i = 0, l = instances.length; i < l; i++) { + instance = instances[i]; + if (!instance) continue; + /*if(!instance.layer.visible || !instance.visible) + continue;*/ + tx = instance.layer.canvasToLayer(touchX, touchY, true); + ty = instance.layer.canvasToLayer(touchX, touchY, false); + instanceBehavior = getThisBehavior(instance, this); + if (instanceBehavior.OnAnyTouchEnd) { + instanceBehavior.OnAnyTouchEnd(tx, ty); + } + } + }; + var dispatchWheel = function (triggerDir) { + var instances = this.my_instances.valuesRef(); + var instance; + var instanceBehavior; + for (var i = 0, l = instances.length; i < l; i++) { + instance = instances[i]; + if (!instance) continue; + instanceBehavior = getThisBehavior(instance, this); + if (instanceBehavior.OnWheel) { + instanceBehavior.OnWheel(triggerDir); + } + } + }; + instanceProto.onWheel = function (info) { + var delta = info.wheelDelta + ? info.wheelDelta + : info.detail + ? -info.detail + : 0; + this.triggerDir = delta < 0 ? 0 : 1; + this.handled = false; + this.runtime.isInUserInputEvent = true; + for (var i = 0, l = this._callbackObjs["wheel"].length; i < l; i++) { + this.handled = true; + dispatchWheel.call(this._callbackObjs["wheel"][i], this.triggerDir); + } + this.runtime.isInUserInputEvent = false; + if (this.handled && cr.isCanvasInputEvent(info)) info.preventDefault(); + }; + instanceProto.onPointerMove = function (info) { + if (!this.enable) return; + if ( + info["pointerType"] === info["MSPOINTER_TYPE_MOUSE"] || + info["pointerType"] === "mouse" + ) + return; + if (info.preventDefault) info.preventDefault(); + var i = this.findTouch(info["pointerId"]); + var nowtime = cr.performance_now(); + if (i >= 0) { + var offset = this.runtime.isDomFree + ? dummyoffset + : jQuery(this.runtime.canvas).offset(); + var t = this.touches[i]; + if (nowtime - t.time < 2) return; + t.update( + nowtime, + info.pageX - offset.left, + info.pageY - offset.top, + info.width || 0, + info.height || 0, + info.pressure || 0 + ); + var touchx = info.pageX - offset.left; + var touchy = info.pageY - offset.top; + var cnt = this._callbackObjs["touch"].length, + hooki; + for (hooki = 0; hooki < cnt; hooki++) { + dispatchTouchMove.call( + this._callbackObjs["touch"][hooki], + touchx, + touchy + ); + } + } + }; + instanceProto.onPointerStart = function (info) { + if (!this.enable) return; + if ( + info["pointerType"] === info["MSPOINTER_TYPE_MOUSE"] || + info["pointerType"] === "mouse" + ) + return; + if (info.preventDefault && cr.isCanvasInputEvent(info)) + info.preventDefault(); + var offset = this.runtime.isDomFree + ? dummyoffset + : jQuery(this.runtime.canvas).offset(); + var touchx = info.pageX - offset.left; + var touchy = info.pageY - offset.top; + var nowtime = cr.performance_now(); + this.trigger_index = this.touches.length; + this.trigger_id = info["pointerId"]; + this.touches.push( + AllocTouchInfo(touchx, touchy, info["pointerId"], this.trigger_index) + ); + this.runtime.isInUserInputEvent = true; + this.curTouchX = touchx; + this.curTouchY = touchy; + var hooki, + cnt = this._callbackObjs["touch"].length; + for (hooki = 0; hooki < cnt; hooki++) { + dispatchTouchStart.call( + this._callbackObjs["touch"][hooki], + this.curTouchX, + this.curTouchY + ); + } + this.runtime.isInUserInputEvent = false; + }; + instanceProto.onPointerEnd = function (info, isCancel) { + if (!this.enable) return; + if ( + info["pointerType"] === info["MSPOINTER_TYPE_MOUSE"] || + info["pointerType"] === "mouse" + ) + return; + if (info.preventDefault && cr.isCanvasInputEvent(info)) + info.preventDefault(); + var i = this.findTouch(info["pointerId"]); + this.trigger_index = i >= 0 ? this.touches[i].startindex : -1; + this.trigger_id = i >= 0 ? this.touches[i]["id"] : -1; + this.runtime.isInUserInputEvent = true; + if (i >= 0) { + this.lastTouchX = this.touches[i].x; + this.lastTouchY = this.touches[i].y; + } + var cnt = this._callbackObjs["touch"].length, + hooki; + for (hooki = 0; hooki < cnt; hooki++) { + dispatchTouchEnd.call( + this._callbackObjs["touch"][hooki], + this.lastTouchX, + this.lastTouchY + ); + } + if (i >= 0) { + if (!isCancel) this.touches[i].maybeTriggerTap(this, i); + ReleaseTouchInfo(this.touches[i]); + this.touches.splice(i, 1); + } + this.runtime.isInUserInputEvent = false; + }; + instanceProto.onTouchMove = function (info) { + if (!this.enable) return; + if (info.preventDefault) info.preventDefault(); + var nowtime = cr.performance_now(); + var i, len, t, u; + var cnt = this._callbackObjs["touch"].length, + hooki; + for (i = 0, len = info.changedTouches.length; i < len; i++) { + t = info.changedTouches[i]; + var j = this.findTouch(t["identifier"]); + if (j >= 0) { + var offset = this.runtime.isDomFree + ? dummyoffset + : jQuery(this.runtime.canvas).offset(); + u = this.touches[j]; + if (nowtime - u.time < 2) continue; + var touchWidth = + (t.radiusX || t.webkitRadiusX || t.mozRadiusX || t.msRadiusX || 0) * + 2; + var touchHeight = + (t.radiusY || t.webkitRadiusY || t.mozRadiusY || t.msRadiusY || 0) * + 2; + var touchForce = + t.force || t.webkitForce || t.mozForce || t.msForce || 0; + u.update( + nowtime, + t.pageX - offset.left, + t.pageY - offset.top, + touchWidth, + touchHeight, + touchForce + ); + var touchx = t.pageX - offset.left; + var touchy = t.pageY - offset.top; + for (hooki = 0; hooki < cnt; hooki++) { + dispatchTouchMove.call( + this._callbackObjs["touch"][hooki], + touchx, + touchy + ); + } + } + } + }; + instanceProto.onTouchStart = function (info) { + if (!this.enable) return; + if (info.preventDefault && cr.isCanvasInputEvent(info)) + info.preventDefault(); + var offset = this.runtime.isDomFree + ? dummyoffset + : jQuery(this.runtime.canvas).offset(); + var nowtime = cr.performance_now(); + this.runtime.isInUserInputEvent = true; + var i, len, t, j; + var cnt = this._callbackObjs["touch"].length, + hooki; + for (i = 0, len = info.changedTouches.length; i < len; i++) { + t = info.changedTouches[i]; + j = this.findTouch(t["identifier"]); + if (j !== -1) continue; + var touchx = t.pageX - offset.left; + var touchy = t.pageY - offset.top; + this.trigger_index = this.touches.length; + this.trigger_id = t["identifier"]; + this.touches.push( + AllocTouchInfo(touchx, touchy, t["identifier"], this.trigger_index) + ); + for (hooki = 0; hooki < cnt; hooki++) { + dispatchTouchStart.call( + this._callbackObjs["touch"][hooki], + touchx, + touchy + ); + } + } + this.runtime.isInUserInputEvent = false; + }; + instanceProto.onTouchEnd = function (info, isCancel) { + if (!this.enable) return; + if (info.preventDefault && cr.isCanvasInputEvent(info)) + info.preventDefault(); + this.runtime.isInUserInputEvent = true; + var i, len, t, j; + var cnt = this._callbackObjs["touch"].length, + hooki; + for (i = 0, len = info.changedTouches.length; i < len; i++) { + t = info.changedTouches[i]; + j = this.findTouch(t["identifier"]); + if (j >= 0) { + this.trigger_index = this.touches[j].startindex; + this.trigger_id = this.touches[j]["id"]; + this.lastTouchX = this.touches[j].x; + this.lastTouchY = this.touches[j].y; + for (hooki = 0; hooki < cnt; hooki++) { + dispatchTouchEnd.call( + this._callbackObjs["touch"][hooki], + this.lastTouchX, + this.lastTouchY + ); + } + if (!isCancel) this.touches[j].maybeTriggerTap(this, j); + ReleaseTouchInfo(this.touches[j]); + this.touches.splice(j, 1); + } + } + this.runtime.isInUserInputEvent = false; + }; + instanceProto.updateCursor = function (info) { + var offset = this.runtime.isDomFree + ? dummyoffset + : jQuery(this.runtime.canvas).offset(); + this.cursor.x = info.pageX - offset.left; + this.cursor.y = info.pageY - offset.top; + }; + instanceProto.onMouseDown = function (info) { + if (!this.enable) return; + this.updateCursor(info); + this.mouseDown = true; + if ( + info.preventDefault && + this.runtime.had_a_click && + !this.runtime.isMobile + ) + info.preventDefault(); + var index = this.findTouch(0); + if (index !== -1) { + ReleaseTouchInfo(this.touches[index]); + cr.arrayRemove(this.touches, index); + } + var t = { pageX: info.pageX, pageY: info.pageY, identifier: 0 }; + var fakeinfo = { changedTouches: [t] }; + this.onTouchStart(fakeinfo); + }; + instanceProto.onMouseMove = function (info) { + if (!this.enable) return; + this.updateCursor(info); + if (!this.mouseDown) return; + var t = { pageX: info.pageX, pageY: info.pageY, identifier: 0 }; + var fakeinfo = { changedTouches: [t] }; + this.onTouchMove(fakeinfo); + }; + instanceProto.onMouseUp = function (info) { + if (!this.enable) return; + this.updateCursor(info); + this.mouseDown = false; + if ( + info.preventDefault && + this.runtime.had_a_click && + !this.runtime.isMobile + ) + info.preventDefault(); + this.runtime.had_a_click = true; + var t = { pageX: info.pageX, pageY: info.pageY, identifier: 0 }; + var fakeinfo = { changedTouches: [t] }; + this.onTouchEnd(fakeinfo); + }; + instanceProto.tick2 = function () { + if (!this.enable) return; + var i, len, t; + var nowtime = cr.performance_now(); + for (i = 0, len = this.touches.length; i < len; ++i) { + t = this.touches[i]; + if (t.time <= nowtime - 50) t.lasttime = nowtime; + } + this.lastTouchX = null; + this.lastTouchY = null; + /*if(this.firstFrame){ + this.firstFrame = false; + }*/ + }; + function Cnds() {} + Cnds.prototype.IsDialogOpened = function () { + return this.currentDialogs.length; + }; + pluginProto.cnds = new Cnds(); + function Acts() {} + pluginProto.acts = new Acts(); + Acts.prototype.SetInputEnabled = function (en) { + this.enable = en == 1; + }; + function Exps() {} + pluginProto.exps = new Exps(); + instanceProto.TouchCount = function (ret) { + ret.set_int(this.touches.length); + }; + instanceProto.X = function (layerparam) { + var index = this.getTouchIndex; + var result; + if (index < 0 || index >= this.touches.length) { + result = 0; + return result; + } + var layer, oldScale, oldZoomRate, oldParallaxX, oldAngle; + if (cr.is_undefined(layerparam)) { + layer = this.runtime.getLayerByNumber(0); + oldScale = layer.scale; + oldZoomRate = layer.zoomRate; + oldParallaxX = layer.parallaxX; + oldAngle = layer.angle; + layer.scale = 1; + layer.zoomRate = 1.0; + layer.parallaxX = 1.0; + layer.angle = 0; + result = layer.canvasToLayer( + this.touches[index].x, + this.touches[index].y, + true + ); + layer.scale = oldScale; + layer.zoomRate = oldZoomRate; + layer.parallaxX = oldParallaxX; + layer.angle = oldAngle; + } else { + if (cr.is_number(layerparam)) + layer = this.runtime.getLayerByNumber(layerparam); + else layer = this.runtime.getLayerByName(layerparam); + if (layer) + result = layer.canvasToLayer( + this.touches[index].x, + this.touches[index].y, + true + ); + else result = 0; + } + return result; + }; + instanceProto.XAt = function (ret, index, layerparam) { + index = Math.floor(index); + if (index < 0 || index >= this.touches.length) { + ret.set_float(0); + return; + } + var layer, oldScale, oldZoomRate, oldParallaxX, oldAngle; + if (cr.is_undefined(layerparam)) { + layer = this.runtime.getLayerByNumber(0); + oldScale = layer.scale; + oldZoomRate = layer.zoomRate; + oldParallaxX = layer.parallaxX; + oldAngle = layer.angle; + layer.scale = 1; + layer.zoomRate = 1.0; + layer.parallaxX = 1.0; + layer.angle = 0; + ret.set_float( + layer.canvasToLayer(this.touches[index].x, this.touches[index].y, true) + ); + layer.scale = oldScale; + layer.zoomRate = oldZoomRate; + layer.parallaxX = oldParallaxX; + layer.angle = oldAngle; + } else { + if (cr.is_number(layerparam)) + layer = this.runtime.getLayerByNumber(layerparam); + else layer = this.runtime.getLayerByName(layerparam); + if (layer) + ret.set_float( + layer.canvasToLayer( + this.touches[index].x, + this.touches[index].y, + true + ) + ); + else ret.set_float(0); + } + }; + instanceProto.XForID = function (ret, id, layerparam) { + var index = this.findTouch(id); + if (index < 0) { + ret.set_float(0); + return; + } + var touch = this.touches[index]; + var layer, oldScale, oldZoomRate, oldParallaxX, oldAngle; + if (cr.is_undefined(layerparam)) { + layer = this.runtime.getLayerByNumber(0); + oldScale = layer.scale; + oldZoomRate = layer.zoomRate; + oldParallaxX = layer.parallaxX; + oldAngle = layer.angle; + layer.scale = 1; + layer.zoomRate = 1.0; + layer.parallaxX = 1.0; + layer.angle = 0; + ret.set_float(layer.canvasToLayer(touch.x, touch.y, true)); + layer.scale = oldScale; + layer.zoomRate = oldZoomRate; + layer.parallaxX = oldParallaxX; + layer.angle = oldAngle; + } else { + if (cr.is_number(layerparam)) + layer = this.runtime.getLayerByNumber(layerparam); + else layer = this.runtime.getLayerByName(layerparam); + if (layer) ret.set_float(layer.canvasToLayer(touch.x, touch.y, true)); + else ret.set_float(0); + } + }; + instanceProto.Y = function (layerparam) { + var index = this.getTouchIndex; + var result; + if (index < 0 || index >= this.touches.length) { + result = 0; + return; + } + var layer, oldScale, oldZoomRate, oldParallaxY, oldAngle; + if (cr.is_undefined(layerparam)) { + layer = this.runtime.getLayerByNumber(0); + oldScale = layer.scale; + oldZoomRate = layer.zoomRate; + oldParallaxY = layer.parallaxY; + oldAngle = layer.angle; + layer.scale = 1; + layer.zoomRate = 1.0; + layer.parallaxY = 1.0; + layer.angle = 0; + result = layer.canvasToLayer( + this.touches[index].x, + this.touches[index].y, + false + ); + layer.scale = oldScale; + layer.zoomRate = oldZoomRate; + layer.parallaxY = oldParallaxY; + layer.angle = oldAngle; + } else { + if (cr.is_number(layerparam)) + layer = this.runtime.getLayerByNumber(layerparam); + else layer = this.runtime.getLayerByName(layerparam); + if (layer) + result = layer.canvasToLayer( + this.touches[index].x, + this.touches[index].y, + false + ); + else result = 0; + } + return result; + }; + instanceProto.YAt = function (ret, index, layerparam) { + index = Math.floor(index); + if (index < 0 || index >= this.touches.length) { + ret.set_float(0); + return; + } + var layer, oldScale, oldZoomRate, oldParallaxY, oldAngle; + if (cr.is_undefined(layerparam)) { + layer = this.runtime.getLayerByNumber(0); + oldScale = layer.scale; + oldZoomRate = layer.zoomRate; + oldParallaxY = layer.parallaxY; + oldAngle = layer.angle; + layer.scale = 1; + layer.zoomRate = 1.0; + layer.parallaxY = 1.0; + layer.angle = 0; + ret.set_float( + layer.canvasToLayer(this.touches[index].x, this.touches[index].y, false) + ); + layer.scale = oldScale; + layer.zoomRate = oldZoomRate; + layer.parallaxY = oldParallaxY; + layer.angle = oldAngle; + } else { + if (cr.is_number(layerparam)) + layer = this.runtime.getLayerByNumber(layerparam); + else layer = this.runtime.getLayerByName(layerparam); + if (layer) + ret.set_float( + layer.canvasToLayer( + this.touches[index].x, + this.touches[index].y, + false + ) + ); + else ret.set_float(0); + } + }; + instanceProto.YForID = function (ret, id, layerparam) { + var index = this.findTouch(id); + if (index < 0) { + ret.set_float(0); + return; + } + var touch = this.touches[index]; + var layer, oldScale, oldZoomRate, oldParallaxY, oldAngle; + if (cr.is_undefined(layerparam)) { + layer = this.runtime.getLayerByNumber(0); + oldScale = layer.scale; + oldZoomRate = layer.zoomRate; + oldParallaxY = layer.parallaxY; + oldAngle = layer.angle; + layer.scale = 1; + layer.zoomRate = 1.0; + layer.parallaxY = 1.0; + layer.angle = 0; + ret.set_float(layer.canvasToLayer(touch.x, touch.y, false)); + layer.scale = oldScale; + layer.zoomRate = oldZoomRate; + layer.parallaxY = oldParallaxY; + layer.angle = oldAngle; + } else { + if (cr.is_number(layerparam)) + layer = this.runtime.getLayerByNumber(layerparam); + else layer = this.runtime.getLayerByName(layerparam); + if (layer) ret.set_float(layer.canvasToLayer(touch.x, touch.y, false)); + else ret.set_float(0); + } + }; + instanceProto.AbsoluteX = function (ret) { + if (this.touches.length) ret.set_float(this.touches[0].x); + else ret.set_float(0); + }; + instanceProto.AbsoluteXAt = function (ret, index) { + index = Math.floor(index); + if (index < 0 || index >= this.touches.length) { + ret.set_float(0); + return; + } + ret.set_float(this.touches[index].x); + }; + instanceProto.AbsoluteXForID = function (ret, id) { + var index = this.findTouch(id); + if (index < 0) { + ret.set_float(0); + return; + } + var touch = this.touches[index]; + ret.set_float(touch.x); + }; + instanceProto.AbsoluteY = function (ret) { + if (this.touches.length) ret.set_float(this.touches[0].y); + else ret.set_float(0); + }; + instanceProto.AbsoluteYAt = function (ret, index) { + index = Math.floor(index); + if (index < 0 || index >= this.touches.length) { + ret.set_float(0); + return; + } + ret.set_float(this.touches[index].y); + }; + instanceProto.AbsoluteYForID = function (ret, id) { + var index = this.findTouch(id); + if (index < 0) { + ret.set_float(0); + return; + } + var touch = this.touches[index]; + ret.set_float(touch.y); + }; + instanceProto.IsInTouch = function () { + return this.touches.length > 0; + }; + instanceProto.CursorX = function (layerparam) { + if (this.cursor.x == null) return null; + var x; + var layer, oldScale, oldZoomRate, oldParallaxX, oldAngle; + if (cr.is_undefined(layerparam)) { + layer = this.runtime.getLayerByNumber(0); + oldScale = layer.scale; + oldZoomRate = layer.zoomRate; + oldParallaxX = layer.parallaxX; + oldAngle = layer.angle; + layer.scale = 1; + layer.zoomRate = 1.0; + layer.parallaxX = 1.0; + layer.angle = 0; + x = layer.canvasToLayer(this.cursor.x, this.cursor.y, true); + layer.scale = oldScale; + layer.zoomRate = oldZoomRate; + layer.parallaxX = oldParallaxX; + layer.angle = oldAngle; + } else { + if (cr.is_number(layerparam)) + layer = this.runtime.getLayerByNumber(layerparam); + else layer = this.runtime.getLayerByName(layerparam); + if (layer) x = layer.canvasToLayer(this.cursor.x, this.cursor.y, true); + else x = 0; + } + return x; + }; + instanceProto.CursorY = function (layerparam) { + if (this.cursor.y == null) return null; + var y; + var layer, oldScale, oldZoomRate, oldParallaxX, oldAngle; + if (cr.is_undefined(layerparam)) { + layer = this.runtime.getLayerByNumber(0); + oldScale = layer.scale; + oldZoomRate = layer.zoomRate; + oldParallaxX = layer.parallaxX; + oldAngle = layer.angle; + layer.scale = 1; + layer.zoomRate = 1.0; + layer.parallaxX = 1.0; + layer.angle = 0; + y = layer.canvasToLayer(this.cursor.x, this.cursor.y, false); + layer.scale = oldScale; + layer.zoomRate = oldZoomRate; + layer.parallaxX = oldParallaxX; + layer.angle = oldAngle; + } else { + if (cr.is_number(layerparam)) + layer = this.runtime.getLayerByNumber(layerparam); + else layer = this.runtime.getLayerByName(layerparam); + if (layer) y = layer.canvasToLayer(this.cursor.x, this.cursor.y, false); + else y = 0; + } + return y; + }; + instanceProto.CursorAbsoluteX = function () { + return this.cursor.x; + }; + instanceProto.CursorAbsoluteY = function () { + return this.cursor.y; + }; +})(); +/** + * flood fill algorithm + * image_data is an array with pixel information as provided in canvas_context.data + * (x, y) is starting point and color is the color used to replace old color + */ +function flood_fill(image_data, canvas_width, canvas_height, x, y, _color) { + if (x<0 || x>canvas_width){ return;} + if (y<0 || y>canvas_height){ return;} + var color = $('
').css('background-color', _color).css('background-color'); + if(color == "transparent") + color="rgb(0,0,0)"; + color=color.slice(4,-1).split(","); + var components = 4; //rgba + var fillColorR = color[0]; + var fillColorG = color[1]; + var fillColorB = color[2]; + var pixel_pos = (y*canvas_width + x) * components; + var startR = image_data[pixel_pos]; + var startG = image_data[pixel_pos + 1]; + var startB = image_data[pixel_pos + 2]; + if(fillColorR==startR && fillColorG==startG && fillColorB==startB) + return; //prevent inf loop. + function matchStartColor(pixel_pos) { + return startR == image_data[pixel_pos] && + startG == image_data[pixel_pos+1] && + startB == image_data[pixel_pos+2]; + } + function colorPixel(pixel_pos) { + image_data[pixel_pos] = fillColorR; + image_data[pixel_pos+1] = fillColorG; + image_data[pixel_pos+2] = fillColorB; + image_data[pixel_pos+3] = 255; + } + function trace(dir) { + if(matchStartColor(pixel_pos + dir*components)) { + if(!sides[dir]) { + pixelStack.push([x + dir, y]); + sides[dir]= true; + } + } + else if(sides[dir]) { + sides[dir]= false; + } + } + var pixelStack = [[x, y]]; + while(pixelStack.length) + { + var newPos, x, y, pixel_pos, reachLeft, reachRight; + newPos = pixelStack.pop(); + x = newPos[0]; + y = newPos[1]; + pixel_pos = (y*canvas_width + x) * components; + while(y-- >= 0 && matchStartColor(pixel_pos)) + { + pixel_pos -= canvas_width * components; + } + pixel_pos += canvas_width * components; + ++y; + var sides = []; + sides[-1] = false; + sides[1] = false; + while(y++ < canvas_height-1 && matchStartColor(pixel_pos)) { + colorPixel(pixel_pos); + if(x > 0) { + trace(-1); + } + if(x < canvas_width-1) { + trace(1); + } + pixel_pos += canvas_width * components; + } + } +} +; +; +cr.plugins_.c2canvas = function(runtime) +{ + this.runtime = runtime; +}; +(function () +{ + var pluginProto = cr.plugins_.c2canvas.prototype; + pluginProto.Type = function(plugin) + { + this.plugin = plugin; + this.runtime = plugin.runtime; + }; + var typeProto = pluginProto.Type.prototype; + typeProto.onCreate = function() + { + if (this.is_family) + return; + this.texture_img = new Image(); + this.texture_img.src = this.texture_file; + this.texture_img.cr_filesize = this.texture_filesize; + this.runtime.wait_for_textures.push(this.texture_img); + }; + pluginProto.Instance = function(type) + { + this.type = type; + this.runtime = type.runtime; + }; + var instanceProto = pluginProto.Instance.prototype; + var fxNames = [ "lighter", + "xor", + "copy", + "destination-over", + "source-in", + "destination-in", + "source-out", + "destination-out", + "source-atop", + "destination-atop"]; + instanceProto.effectToCompositeOp = function(effect) + { + if (effect <= 0 || effect >= 11) + return "source-over"; + return fxNames[effect - 1]; // not including "none" so offset by 1 + }; + instanceProto.updateBlend = function(effect) + { + var gl = this.runtime.gl; + if (!gl) + return; + this.srcBlend = gl.ONE; + this.destBlend = gl.ONE_MINUS_SRC_ALPHA; + switch (effect) { + case 1: // lighter (additive) + this.srcBlend = gl.ONE; + this.destBlend = gl.ONE; + break; + case 2: // xor + break; // todo + case 3: // copy + this.srcBlend = gl.ONE; + this.destBlend = gl.ZERO; + break; + case 4: // destination-over + this.srcBlend = gl.ONE_MINUS_DST_ALPHA; + this.destBlend = gl.ONE; + break; + case 5: // source-in + this.srcBlend = gl.DST_ALPHA; + this.destBlend = gl.ZERO; + break; + case 6: // destination-in + this.srcBlend = gl.ZERO; + this.destBlend = gl.SRC_ALPHA; + break; + case 7: // source-out + this.srcBlend = gl.ONE_MINUS_DST_ALPHA; + this.destBlend = gl.ZERO; + break; + case 8: // destination-out + this.srcBlend = gl.ZERO; + this.destBlend = gl.ONE_MINUS_SRC_ALPHA; + break; + case 9: // source-atop + this.srcBlend = gl.DST_ALPHA; + this.destBlend = gl.ONE_MINUS_SRC_ALPHA; + break; + case 10: // destination-atop + this.srcBlend = gl.ONE_MINUS_DST_ALPHA; + this.destBlend = gl.SRC_ALPHA; + break; + } + }; + instanceProto.onCreate = function() + { + this.visible = (this.properties[0] === 0); // 0=visible, 1=invisible + this.compositeOp = this.effectToCompositeOp(this.properties[1]); + this.updateBlend(this.properties[1]); + this.canvas = document.createElement('canvas'); + this.canvas.width=this.width; + this.canvas.height=this.height; + this.ctx = this.canvas.getContext('2d'); + this.ctx.drawImage(this.type.texture_img,0,0,this.width,this.height); + this.tCanvas = document.createElement('canvas'); + this.tCtx = this.tCanvas.getContext('2d'); + this.update_tex = true; + this.rcTex = new cr.rect(0, 0, 0, 0); + }; + instanceProto.onDestroy = function () + { + }; + instanceProto.saveToJSON = function () + { + return { + "canvas_w":this.canvas.width, + "canvas_h":this.canvas.height, + "image":this.ctx.getImageData(0,0,this.canvas.width,this.canvas.height).data + }; + }; + instanceProto.loadFromJSON = function (o) + { + var canvasWidth = this.canvas.width = o["canvas_w"]; + var canvasHeight = this.canvas.height = o["canvas_h"]; + var data = this.ctx.getImageData(0,0,this.canvas.width,this.canvas.height).data; + for (var y = 0; y < canvasHeight; ++y) { + for (var x = 0; x < canvasWidth; ++x) { + var index = (y * canvasWidth + x)*4; + for (var c = 0; c < 4; ++c) + data[index+c] = o["image"][index+c]; + } + } + }; + instanceProto.draw_instances = function (instances, ctx) + { + for(var x in instances) + { + if(instances[x].visible==false && this.runtime.testOverlap(this, instances[x])== false) + continue; + ctx.save(); + ctx.scale(this.canvas.width/this.width, this.canvas.height/this.height); + ctx.rotate(-this.angle); + ctx.translate(-this.bquad.tlx, -this.bquad.tly); + ctx.globalCompositeOperation = instances[x].compositeOp;//rojo + if (instances[x].type.pattern !== undefined && instances[x].type.texture_img !== undefined) { + instances[x].pattern = ctx.createPattern(instances[x].type.texture_img, "repeat"); + } + instances[x].draw(ctx); + ctx.restore(); + } + }; + instanceProto.draw = function(ctx) + { + ctx.save(); + ctx.globalAlpha = this.opacity; + ctx.globalCompositeOperation = this.compositeOp; + var myx = this.x; + var myy = this.y; + if (this.runtime.pixel_rounding) + { + myx = Math.round(myx); + myy = Math.round(myy); + } + ctx.translate(myx, myy); + ctx.rotate(this.angle); + ctx.drawImage(this.canvas, + 0 - (this.hotspotX * this.width), + 0 - (this.hotspotY * this.height), + this.width, + this.height); + ctx.restore(); + }; + instanceProto.drawGL = function(glw) + { + glw.setBlend(this.srcBlend, this.destBlend); + if (this.update_tex) + { + if (this.tex) + glw.deleteTexture(this.tex); + this.tex=glw.loadTexture(this.canvas, false, this.runtime.linearSampling); + this.update_tex = false; + } + glw.setTexture(this.tex); + glw.setOpacity(this.opacity); + var q = this.bquad; + if (this.runtime.pixel_rounding) + { + var ox = Math.round(this.x) - this.x; + var oy = Math.round(this.y) - this.y; + glw.quad(q.tlx + ox, q.tly + oy, q.trx + ox, q.try_ + oy, q.brx + ox, q.bry + oy, q.blx + ox, q.bly + oy); + } + else + glw.quad(q.tlx, q.tly, q.trx, q.try_, q.brx, q.bry, q.blx, q.bly); + }; + pluginProto.cnds = {}; + var cnds = pluginProto.cnds; + pluginProto.acts = {}; + var acts = pluginProto.acts; + acts.SetEffect = function (effect) + { + this.compositeOp = this.effectToCompositeOp(effect); + this.runtime.redraw = true; + this.update_tex = true; + }; + acts.DrawPoint = function (x,y, color) + { + var ctx=this.ctx; + ctx.fillStyle = color; + ctx.fillRect(x,y,1,1); + this.runtime.redraw = true; + this.update_tex = true; + }; + acts.ResizeCanvas = function (width, height) + { + this.canvas.width=width; + this.canvas.height=height; + this.runtime.redraw = true; + this.update_tex = true; + }; + acts.PasteObject = function (object) + { + var ctx=this.ctx; + this.update_bbox(); + var sol = object.getCurrentSol(); + var instances; + if (sol.select_all) + instances = sol.type.instances; + else + instances = sol.instances; + this.draw_instances(instances, ctx); + this.runtime.redraw = true; + this.update_tex = true; + }; + acts.PasteLayer = function (layer) + { + if (!layer || !layer.visible) + return false; + var ctx=this.ctx; + this.update_bbox(); + this.tCanvas.width=this.canvas.width; + this.tCanvas.height=this.canvas.height; + var t=this.tCtx; + t.clearRect(0,0,this.tCanvas.width, this.tCanvas.height); + this.draw_instances(layer.instances, t); + ctx.drawImage(this.tCanvas,0,0,this.width,this.height); + this.runtime.redraw = true; + this.update_tex = true; + }; + acts.DrawBox = function (x, y, width, height, color) + { + this.ctx.fillStyle = color; + this.ctx.fillRect(x,y,width,height); + this.runtime.redraw = true; + this.update_tex = true; + }; + acts.DrawLine = function (x1, y1, x2, y2, color, line_width) + { + var ctx = this.ctx; + ctx.strokeStyle = color; + ctx.lineWidth = line_width; + ctx.beginPath(); + ctx.moveTo(x1,y1); + ctx.lineTo(x2, y2); + ctx.stroke(); + this.runtime.redraw = true; + this.update_tex = true; + }; + acts.ClearCanvas = function () + { + this.ctx.clearRect(0,0,this.canvas.width, this.canvas.height); + this.runtime.redraw = true; + this.update_tex = true; + }; + acts.FillColor = function (color) + { + this.ctx.fillStyle = color; + this.ctx.fillRect(0,0,this.canvas.width, this.canvas.height); + this.runtime.redraw = true; + this.update_tex = true; + }; + acts.fillGradient = function (gradient_style, color1, color2) + { + var ctx = this.ctx; + var w =this.canvas.width; + var h=this.canvas.height; + var gradient; + switch(gradient_style) + { + case 0: //horizontal + gradient = ctx.createLinearGradient(0,0,w,0); + break; + case 1: //vertical + gradient = ctx.createLinearGradient(0,0,0,h); + break; + case 2: //diagonal_down_right + gradient = ctx.createLinearGradient(0,0,w,h); + break; + case 3: //diagonal_down_left + gradient = ctx.createLinearGradient(w,0,0,h); + break; + case 4: //radial + gradient = ctx.createRadialGradient(w/2,h/2,0,w/2,h/2, Math.sqrt(w*w+h*h)/2); + break; + } + try{ + gradient.addColorStop(0, color1); + }catch(e){ + gradient.addColorStop(0, "black"); + } + try{ + gradient.addColorStop(1, color2); + }catch(e){ + gradient.addColorStop(1, "black"); + } + this.ctx.fillStyle = gradient; + this.ctx.fillRect(0, 0, w, h); + this.runtime.redraw = true; + this.update_tex = true; + }; + acts.beginPath = function () + { + this.ctx.beginPath(); + }; + acts.drawPath = function (color, line_width) + { + var ctx = this.ctx; + ctx.strokeStyle = color; + ctx.lineWidth = line_width; + ctx.stroke(); + this.runtime.redraw = true; + this.update_tex = true; + }; + acts.setLineSettings = function (line_cap, line_joint) + { + var ctx = this.ctx; + ctx.lineCap = ["butt","round","square"][line_cap]; + ctx.lineJoin = ["round","bevel","milet"][line_joint]; + }; + acts.fillPath = function (color) + { + this.ctx.fillStyle = color; + this.ctx.fill(); + this.runtime.redraw = true; + this.update_tex = true; + }; + acts.moveTo = function (x, y) + { + this.ctx.moveTo(x, y); + }; + acts.lineTo = function (x, y) + { + this.ctx.lineTo(x, y); + }; + acts.arc = function (x, y, radius, start_angle, end_angle, arc_direction) + { + this.ctx.arc(x, y, radius, cr.to_radians(start_angle), cr.to_radians(end_angle), arc_direction==1); + }; + acts.drawCircle = function (x, y, radius, color, line_width) + { + var ctx = this.ctx; + ctx.strokeStyle = color; + ctx.lineWidth = line_width; + ctx.beginPath(); + ctx.arc(x, y, radius, 0, cr.to_radians(360), true); + ctx.stroke(); + this.runtime.redraw = true; + this.update_tex = true; + }; + acts.bezierCurveTo = function (cp1x, cp1y, cp2x, cp2y, x, y) + { + this.ctx.bezierCurveTo(cp1x, cp1y, cp2x, cp2y, x, y); + }; + acts.quadraticCurveTo = function (cpx, cpy, x, y) + { + this.ctx.quadraticCurveTo(cpx, cpy, x, y); + }; + acts.rectPath = function (x, y, width, height) + { + this.ctx.rect(x,y,width,height); + }; + acts.FloodFill= function (x,y,color) + { + var ctx = this.ctx; + var I = ctx.getImageData(0, 0, this.canvas.width, this.canvas.height); + flood_fill(I.data, this.canvas.width, this.canvas.height, x, y, color); + ctx.putImageData(I,0,0); + this.runtime.redraw = true; + this.update_tex = true; + }; + acts.setLineDash = function (dash_width, space_width) + { + var dashArr = [dash_width, space_width]; + this.ctx.setLineDash(dashArr); + }; + pluginProto.exps = {}; + var exps = pluginProto.exps; + exps.rgbaAt = function (ret, x, y) + { + var imageData= this.ctx.getImageData(x,y,1,1); + var data= imageData.data; + ret.set_string("rgba(" + data[0] + "," + data[1] + "," + data[2] + "," + data[3]/255 + ")"); + }; + exps.redAt = function (ret, x, y) + { + var imageData= this.ctx.getImageData(x,y,1,1); + var data= imageData.data; + ret.set_int(data[0]); + }; + exps.greenAt = function (ret, x, y) + { + var imageData= this.ctx.getImageData(x,y,1,1); + var data= imageData.data; + ret.set_int(data[1]); + }; + exps.blueAt = function (ret, x, y) + { + var imageData= this.ctx.getImageData(x,y,1,1); + var data= imageData.data; + ret.set_int(data[2]); + }; + exps.alphaAt = function (ret, x, y) + { + var imageData= this.ctx.getImageData(x,y,1,1); + var data= imageData.data; + ret.set_int(data[3]*100/255); + }; + exps.imageUrl = function (ret) + { + ret.set_string(this.canvas.toDataURL()); + }; + exps.AsJSON = function(ret) + { + ret.set_string( JSON.stringify({ + "c2array": true, + "size": [1, 1, this.canvas.width * this.canvas.height * 4], + "data": [[this.ctx.getImageData(0, 0, this.canvas.width, this.canvas.height).data]] + })); + }; +}()); +; +; +cr.plugins_.filechooser = function(runtime) +{ + this.runtime = runtime; +}; +(function () +{ + var pluginProto = cr.plugins_.filechooser.prototype; + pluginProto.Type = function(plugin) + { + this.plugin = plugin; + this.runtime = plugin.runtime; + }; + var typeProto = pluginProto.Type.prototype; + typeProto.onCreate = function() + { + }; + pluginProto.Instance = function(type) + { + this.type = type; + this.runtime = type.runtime; + }; + var instanceProto = pluginProto.Instance.prototype; + var c2URL = window["URL"] || window["webkitURL"] || window["mozURL"] || window["msURL"]; + instanceProto.onCreate = function() + { + if (this.runtime.isDomFree) + { + cr.logexport("[Construct 2] File Chooser plugin not supported on this platform - the object will not be created"); + return; + } + this.elem = document.createElement("input"); + this.elem.type = "file"; + this.elem.setAttribute("accept", this.properties[0]); + if (this.properties[1] !== 0) // multiple selection + this.elem.setAttribute("multiple", ""); + this.elem.id = this.properties[3]; + jQuery(this.elem).appendTo(this.runtime.canvasdiv ? this.runtime.canvasdiv : "body"); + this.element_hidden = false; + if (this.properties[2] === 0) + { + jQuery(this.elem).hide(); + this.visible = false; + this.element_hidden = true; + } + var self = this; + this.elem.onchange = function () + { + self.runtime.trigger(cr.plugins_.filechooser.prototype.cnds.OnChanged, self); + }; + this.lastLeft = 0; + this.lastTop = 0; + this.lastRight = 0; + this.lastBottom = 0; + this.lastWinWidth = 0; + this.lastWinHeight = 0; + this.updatePosition(true); + this.runtime.tickMe(this); + }; + instanceProto.onDestroy = function () + { + if (this.runtime.isDomFree) + return; + jQuery(this.elem).remove(); + this.elem = null; + }; + instanceProto.tick = function () + { + this.updatePosition(); + }; + var last_canvas_offset = null; + var last_checked_tick = -1; + instanceProto.updatePosition = function (first) + { + if (this.runtime.isDomFree) + return; + var left = this.layer.layerToCanvas(this.x, this.y, true); + var top = this.layer.layerToCanvas(this.x, this.y, false); + var right = this.layer.layerToCanvas(this.x + this.width, this.y + this.height, true); + var bottom = this.layer.layerToCanvas(this.x + this.width, this.y + this.height, false); + var rightEdge = this.runtime.width / this.runtime.devicePixelRatio; + var bottomEdge = this.runtime.height / this.runtime.devicePixelRatio; + if (!this.visible || !this.layer.visible || right <= 0 || bottom <= 0 || left >= rightEdge || top >= bottomEdge) + { + if (!this.element_hidden) + jQuery(this.elem).hide(); + this.element_hidden = true; + return; + } + if (left < 1) + left = 1; + if (top < 1) + top = 1; + if (right >= rightEdge) + right = rightEdge - 1; + if (bottom >= bottomEdge) + bottom = bottomEdge - 1; + var curWinWidth = window.innerWidth; + var curWinHeight = window.innerHeight; + if (!first && this.lastLeft === left && this.lastTop === top && this.lastRight === right && this.lastBottom === bottom && this.lastWinWidth === curWinWidth && this.lastWinHeight === curWinHeight) + { + if (this.element_hidden) + { + jQuery(this.elem).show(); + this.element_hidden = false; + } + return; + } + this.lastLeft = left; + this.lastTop = top; + this.lastRight = right; + this.lastBottom = bottom; + this.lastWinWidth = curWinWidth; + this.lastWinHeight = curWinHeight; + if (this.element_hidden) + { + jQuery(this.elem).show(); + this.element_hidden = false; + } + var offx = Math.round(left) + jQuery(this.runtime.canvas).offset().left; + var offy = Math.round(top) + jQuery(this.runtime.canvas).offset().top; + jQuery(this.elem).css("position", "absolute"); + jQuery(this.elem).offset({left: offx, top: offy}); + jQuery(this.elem).width(Math.round(right - left)); + jQuery(this.elem).height(Math.round(bottom - top)); + }; + instanceProto.draw = function(ctx) + { + }; + instanceProto.drawGL = function(glw) + { + }; + function Cnds() {}; + Cnds.prototype.OnChanged = function () + { + return true; + }; + pluginProto.cnds = new Cnds(); + function Acts() {}; + Acts.prototype.SetVisible = function (vis) + { + if (this.runtime.isDomFree) + return; + this.visible = (vis !== 0); + }; + Acts.prototype.SetCSSStyle = function (p, v) + { + if (this.runtime.isDomFree) + return; + jQuery(this.elem).css(p, v); + }; + Acts.prototype.ReleaseFile = function (f) + { + if (this.runtime.isDomFree) + return; + if (c2URL && c2URL["revokeObjectURL"]) + c2URL["revokeObjectURL"](f); + }; + pluginProto.acts = new Acts(); + function Exps() {}; + Exps.prototype.FileCount = function (ret) + { + ret.set_int(this.runtime.isDomFree ? 0 : (this.elem["files"].length || 0)); + }; + function getFileAt(files, index) + { + if (!files) + return null; + index = Math.floor(index); + if (index < 0 || index >= files.length) + return null; + return files[index]; + }; + Exps.prototype.FileNameAt = function (ret, i) + { + var file = this.runtime.isDomFree ? null : getFileAt(this.elem["files"], i); + ret.set_string(file ? (file["name"] || "") : ""); + }; + Exps.prototype.FileSizeAt = function (ret, i) + { + var file = this.runtime.isDomFree ? null : getFileAt(this.elem["files"], i); + ret.set_int(file ? (file["size"] || 0) : 0); + }; + Exps.prototype.FileTypeAt = function (ret, i) + { + var file = this.runtime.isDomFree ? null : getFileAt(this.elem["files"], i); + ret.set_string(file ? (file["type"] || "") : ""); + }; + Exps.prototype.FileURLAt = function (ret, i) + { + var file = this.runtime.isDomFree ? null : getFileAt(this.elem["files"], i); + if (!file) + { + ret.set_string(""); + } + else if (file["c2url"]) // already created object URL + { + ret.set_string(file["c2url"]); + } + else if (c2URL && c2URL["createObjectURL"]) + { + file["c2url"] = c2URL["createObjectURL"](file); + ret.set_string(file["c2url"]); + } + else + { + ret.set_string(""); + } + }; + pluginProto.exps = new Exps(); +}()); +; +; +cr.plugins_.gamepad = function(runtime) +{ + this.runtime = runtime; +}; +(function () +{ + var pluginProto = cr.plugins_.gamepad.prototype; + var isSupported = false; + pluginProto.Type = function(plugin) + { + this.plugin = plugin; + this.runtime = plugin.runtime; + isSupported = !!(navigator["getGamepads"] || navigator["webkitGetGamepads"] || navigator["mozGetGamepads"] || navigator["gamepads"] || navigator["webkitGamepads"] || navigator["MozGamepads"] || window["cr_getGamepads"]); + }; + var typeProto = pluginProto.Type.prototype; + typeProto.onCreate = function() + { + }; + var gamepadRuntime = null; + var gamepadInstance = null; + var controllers = new Array(16); + var padStates = new Array(16); + var padOldStates = new Array(16); + var osToken = ""; + var browserToken = ""; + function getPadState(i) + { + var j; + if (!padStates[i]) + { + padStates[i] = new Array(20); + for (j = 0; j < 20; ++j) + padStates[i][j] = 0; + } + return padStates[i]; + }; + function getPadOldState(i) + { + var j; + if (!padOldStates[i]) + { + padOldStates[i] = new Array(20); + for (j = 0; j < 20; ++j) + padOldStates[i][j] = 0; + } + return padOldStates[i]; + }; + function updatePadOldState(i) + { + var cur = getPadState(i); + var old = getPadOldState(i); + var j; + for (j = 0; j < 20; ++j) + old[j] = cur[j]; + }; + function clearPadState(i) + { + padStates[i] = null; + padOldStates[i] = null; + }; + var axisOffset = 16; + var curCtrlMap = null; + var ctrlmap = {}; + ctrlmap["windows"] = {}; + ctrlmap["windows"]["firefox"] = {}; + function doControllerMapping(index, isAxis, buttonmap, axismap) + { + if (isAxis) + { + if (index >= axismap.length) + return -1; // unknown axis + if (cr.is_number(axismap[index])) + return axismap[index] + axisOffset; + else + { + return axismap[index]; // returning array + } + } + else + { + if (index >= buttonmap.length) + return -1; // unknown button + return buttonmap[index]; + } + }; + var win_ff_xbox360_buttons = [0, 1, 2, 3, 4, 5, 8, 9, 10, 11]; + var win_ff_xbox360_axes = [0, 1, [7, 6], 2, 3, [14, 15], [12, 13]]; + ctrlmap["windows"]["firefox"]["xbox360"] = function (index, isAxis) + { + return doControllerMapping(index, isAxis, win_ff_xbox360_buttons, win_ff_xbox360_axes); + }; + var win_ff_lda_buttons = [2, 0, 1, 3, 4, 6, 5, 7, 8, 9]; + var win_ff_lda_axes = [0, 1, 2, 3, [14, 15], [12, 13]]; + ctrlmap["windows"]["firefox"]["logitechdualaction"] = function (index, isAxis) + { + return doControllerMapping(index, isAxis, win_ff_lda_buttons, win_ff_lda_axes); + }; + function defaultMap(index, isAxis) + { + if (isAxis) + { + if (index >= 4) + return -1; // unknown axis + return index + axisOffset; + } + else + { + if (index >= 16) + return -1; // unknown button + return index; + } + }; + function getMapper(id_) + { + if (!curCtrlMap) + return defaultMap; + var controllertoken = ""; + var id = id_.toLowerCase(); + if (id.indexOf("xbox 360") > -1) + controllertoken = "xbox360"; + else if (id.indexOf("logitech dual action") > -1) + controllertoken = "logitechdualaction"; + var curmap = curCtrlMap[controllertoken]; + return curmap || defaultMap; + }; + function onConnected(e) + { + controllers[e["gamepad"]["index"]] = e["gamepad"]; + gamepadRuntime.trigger(cr.plugins_.gamepad.prototype.cnds.OnGamepadConnected, gamepadInstance); + }; + function onDisconnected(e) + { + gamepadRuntime.trigger(cr.plugins_.gamepad.prototype.cnds.OnGamepadDisconnected, gamepadInstance); + controllers[e["gamepad"]["index"]] = null; + }; + pluginProto.Instance = function(type) + { + this.type = type; + this.runtime = type.runtime; + gamepadRuntime = this.runtime; + gamepadInstance = this; + }; + var instanceProto = pluginProto.Instance.prototype; + instanceProto.onCreate = function() + { + this.deadzone = this.properties[0]; + this.lastButton = 0; + var userAgent = navigator.userAgent; + osToken = "windows"; + if (/mac/i.test(userAgent)) + osToken = "mac"; + curCtrlMap = ctrlmap[osToken]; + browserToken = "chrome"; + if (/firefox/i.test(userAgent)) + browserToken = "firefox"; + if (curCtrlMap) + curCtrlMap = curCtrlMap[browserToken]; + window.addEventListener("webkitgamepadconnected", onConnected, false); + window.addEventListener("webkitgamepaddisconnected", onDisconnected, false); + window.addEventListener("MozGamepadConnected", onConnected, false); + window.addEventListener("MozGamepadDisconnected", onDisconnected, false); + window.addEventListener("gamepadconnected", onConnected, false); + window.addEventListener("gamepaddisconnected", onDisconnected, false); + this.runtime.tickMe(this); + this.activeControllers = []; + }; + instanceProto.tick = function () + { + this.activeControllers.length = 0; + var gamepads = null; + var synthetic = false; + if (navigator["getGamepads"]) + gamepads = navigator["getGamepads"](); + else if (navigator["webkitGetGamepads"]) + gamepads = navigator["webkitGetGamepads"](); + else if (navigator["mozGetGamepads"]) + gamepads = navigator["mozGetGamepads"](); + else if (navigator["msGetGamepads"]) + gamepads = navigator["msGetGamepads"](); + else if (this.runtime.isWindows8Capable && window["cr_getGamepads"]) + { + gamepads = window["cr_getGamepads"](); + synthetic = true; + } + else + gamepads = navigator["gamepads"] || navigator["webkitGamepads"] || navigator["MozGamepads"] || controllers; + if (!gamepads) + return; + var i, len, j, lenj, mapfunc, index, value; + for (i = 0, len = gamepads.length; i < len; i++) + { + var pad = gamepads[i]; + if (!pad) + { + clearPadState(i); + continue; + } + var state = getPadState(i); + var oldstate = getPadOldState(i); + updatePadOldState(i); + mapfunc = (synthetic ? defaultMap : getMapper(pad.id)); + for (j = 0, lenj = pad["buttons"].length; j < lenj; j++) + { + if (typeof pad["buttons"][j]["value"] !== "undefined") + value = pad["buttons"][j]["value"]; + else + value = pad["buttons"][j]; + index = mapfunc(j, false, value); + if (index >= 0 && index < 20) + { + state[index] = value * 100; + if (state[index] >= 50 && oldstate[index] < 50) + this.lastButton = index; + } + } + for (j = 0, lenj = pad["axes"].length; j < lenj; j++) + { + value = pad["axes"][j]; + index = mapfunc(j, true, value); + if (cr.is_number(index)) + { + if (index >= 0 && index < 20) + state[index] = value * 100; + } + else + { + state[index[0]] = 0; + state[index[1]] = 0; + if (value <= 0) + state[index[0]] = Math.abs(value * 100); + else + state[index[1]] = Math.abs(value * 100); + } + } + this.activeControllers.push(pad); + } + for ( ; i < 20; ++i) + clearPadState(i); + }; + instanceProto.saveToJSON = function () + { + return { "lastButton": this.lastButton }; + }; + instanceProto.loadFromJSON = function (o) + { + this.lastButton = o["lastButton"]; + }; + function Cnds() {}; + Cnds.prototype.SupportsGamepad = function () + { + return isSupported; + }; + Cnds.prototype.OnGamepadConnected = function () + { + return true; + }; + Cnds.prototype.OnGamepadDisconnected = function () + { + return true; + }; + Cnds.prototype.IsButtonDown = function (gamepad, button) + { + gamepad = Math.floor(gamepad); + if (gamepad < 0 || gamepad >= this.activeControllers.length) + return false; + var state = getPadState(gamepad); + if (!state) + return false; + var ret = state[button] >= 50; + if (ret) + this.lastButton = button; + return ret; + }; + Cnds.prototype.OnButtonDown = function (gamepad, button) + { + gamepad = Math.floor(gamepad); + if (gamepad < 0 || gamepad >= this.activeControllers.length) + return false; + var state = getPadState(gamepad); + var oldstate = getPadOldState(gamepad); + if (!state || !oldstate) + return false; + var ret = state[button] >= 50 && oldstate[button] < 50; + if (ret) + this.lastButton = button; + return ret; + }; + Cnds.prototype.OnButtonUp = function (gamepad, button) + { + gamepad = Math.floor(gamepad); + if (gamepad < 0 || gamepad >= this.activeControllers.length) + return false; + var state = getPadState(gamepad); + var oldstate = getPadOldState(gamepad); + if (!state || !oldstate) + return false; + var ret = state[button] < 50 && oldstate[button] >= 50; + if (ret) + this.lastButton = button; + return ret; + }; + Cnds.prototype.HasGamepads = function () + { + return this.activeControllers.length > 0; + }; + Cnds.prototype.CompareAxis = function (gamepad, axis, comparison, value) + { + gamepad = Math.floor(gamepad); + axis = Math.floor(axis); + if (gamepad < 0 || gamepad >= this.activeControllers.length) + return false; + var state = getPadState(gamepad); + if (!state) + return; + var axisvalue = state[axis + axisOffset]; + var othervalue = 0; + if (axis % 2 === 0) // is X axis + othervalue = state[axis + axisOffset + 1]; // get next axis (Y) + else + othervalue = state[axis + axisOffset - 1]; // get previous axis (X) + if (Math.sqrt(axisvalue * axisvalue + othervalue * othervalue) <= this.deadzone) + axisvalue = 0; + return cr.do_cmp(axisvalue, comparison, value); + }; + Cnds.prototype.OnAnyButtonDown = function (gamepad) + { + gamepad = Math.floor(gamepad); + if (gamepad < 0 || gamepad >= this.activeControllers.length) + return false; + var state = getPadState(gamepad); + var oldstate = getPadOldState(gamepad); + if (!state || !oldstate) + return false; + var i, len; + for (i = 0, len = state.length; i < len; i++) + { + if (state[i] >= 50 && oldstate[i] < 50) + { + this.lastButton = i; + return true; + } + } + return false; + }; + Cnds.prototype.OnAnyButtonUp = function (gamepad) + { + gamepad = Math.floor(gamepad); + if (gamepad < 0 || gamepad >= this.activeControllers.length) + return false; + var state = getPadState(gamepad); + var oldstate = getPadOldState(gamepad); + if (!state || !oldstate) + return false; + var i, len; + for (i = 0, len = state.length; i < len; i++) + { + if (state[i] < 50 && oldstate[i] >= 50) + { + this.lastButton = i; + return true; + } + } + return false; + }; + Cnds.prototype.IsButtonIndexDown = function (gamepad, button) + { + gamepad = Math.floor(gamepad); + if (gamepad < 0 || gamepad >= this.activeControllers.length) + return false; + var state = getPadState(gamepad); + if (!state) + return false; + button = Math.floor(button); + if (button < 0 || button >= state.length) + return false; + var ret = state[button] >= 50; + if (ret) + this.lastButton = button; + return ret; + }; + Cnds.prototype.OnButtonIndexDown = function (gamepad, button) + { + gamepad = Math.floor(gamepad); + if (gamepad < 0 || gamepad >= this.activeControllers.length) + return false; + var state = getPadState(gamepad); + var oldstate = getPadOldState(gamepad); + if (!state || !oldstate) + return false; + button = Math.floor(button); + if (button < 0 || button >= state.length) + return false; + var ret = state[button] >= 50 && oldstate[button] < 50; + if (ret) + this.lastButton = button; + return ret; + }; + Cnds.prototype.OnButtonIndexUp = function (gamepad, button) + { + gamepad = Math.floor(gamepad); + if (gamepad < 0 || gamepad >= this.activeControllers.length) + return false; + var state = getPadState(gamepad); + var oldstate = getPadOldState(gamepad); + if (!state || !oldstate) + return false; + button = Math.floor(button); + if (button < 0 || button >= state.length) + return false; + var ret = state[button] < 50 && oldstate[button] >= 50; + if (ret) + this.lastButton = button; + return ret; + }; + pluginProto.cnds = new Cnds(); + function Acts() {}; + pluginProto.acts = new Acts(); + function Exps() {}; + Exps.prototype.GamepadCount = function (ret) + { + ret.set_int(this.activeControllers.length); + }; + Exps.prototype.GamepadID = function (ret, index) + { + if (index < 0 || index >= this.activeControllers.length) + { + ret.set_string(""); + return; + } + ret.set_string(this.activeControllers[index].id); + }; + Exps.prototype.GamepadAxes = function (ret, index) + { + if (index < 0 || index >= this.activeControllers.length) + { + ret.set_string(""); + return; + } + var axes = this.activeControllers[index]["axes"]; + var str = ""; + var i, len; + for (i = 0, len = axes.length; i < len; i++) + { + str += "Axis " + i + ": " + Math.round(axes[i] * 100) + "\n"; + } + ret.set_string(str); + }; + Exps.prototype.GamepadButtons = function (ret, index) + { + if (index < 0 || index >= this.activeControllers.length) + { + ret.set_string(""); + return; + } + var buttons = this.activeControllers[index]["buttons"]; + var str = ""; + var i, len, value; + for (i = 0, len = buttons.length; i < len; i++) + { + if (typeof buttons[i]["value"] !== "undefined") + value = buttons[i]["value"]; + else + value = buttons[i]; + str += "Button " + i + ": " + Math.round(value * 100) + "\n"; + } + ret.set_string(str); + }; + Exps.prototype.RawButton = function (ret, gamepad, index) + { + gamepad = Math.floor(gamepad); + index = Math.floor(index); + if (gamepad < 0 || gamepad >= this.activeControllers.length) + { + ret.set_float(0); + return; + } + var state = this.activeControllers[gamepad]["buttons"]; + if (!state || index < 0 || index >= state.length) + { + ret.set_float(0); + return; + } + if (typeof state[index]["value"] !== "undefined") + ret.set_float(state[index]["value"]); + else + ret.set_float(state[index]); + }; + Exps.prototype.RawAxis = function (ret, gamepad, index) + { + gamepad = Math.floor(gamepad); + index = Math.floor(index); + if (gamepad < 0 || gamepad >= this.activeControllers.length) + { + ret.set_float(0); + return; + } + var state = this.activeControllers[gamepad]["axes"]; + if (!state || index < 0 || index >= state.length) + { + ret.set_float(0); + return; + } + ret.set_float(state[index]); + }; + Exps.prototype.RawButtonCount = function (ret, gamepad) + { + gamepad = Math.floor(gamepad); + if (gamepad < 0 || gamepad >= this.activeControllers.length) + { + ret.set_int(0); + return; + } + ret.set_int(this.activeControllers[gamepad]["buttons"].length); + }; + Exps.prototype.RawAxisCount = function (ret, gamepad) + { + gamepad = Math.floor(gamepad); + if (gamepad < 0 || gamepad >= this.activeControllers.length) + { + ret.set_int(0); + return; + } + ret.set_int(this.activeControllers[gamepad]["axes"].length); + }; + Exps.prototype.Button = function (ret, gamepad, index) + { + gamepad = Math.floor(gamepad); + index = Math.floor(index); + if (gamepad < 0 || gamepad >= this.activeControllers.length) + { + ret.set_float(0); + return; + } + var state = getPadState(gamepad); + if (!state || index < 0 || index >= axisOffset) + { + ret.set_float(0); + return; + } + ret.set_float(state[index]); + }; + Exps.prototype.Axis = function (ret, gamepad, index) + { + gamepad = Math.floor(gamepad); + index = Math.floor(index); + if (gamepad < 0 || gamepad >= this.activeControllers.length) + { + ret.set_float(0); + return; + } + var state = getPadState(gamepad); + if (!state || index < 0 || index >= 4) + { + ret.set_float(0); + return; + } + var value = state[index + axisOffset]; + var othervalue = 0; + if (index % 2 === 0) // is X axis + othervalue = state[index + axisOffset + 1]; // get next axis (Y) + else + othervalue = state[index + axisOffset - 1]; // get previous axis (X) + if (Math.sqrt(value * value + othervalue * othervalue) <= this.deadzone) + value = 0; + ret.set_float(value); + }; + Exps.prototype.LastButton = function (ret) + { + ret.set_int(this.lastButton); + }; + pluginProto.exps = new Exps(); +}()); +; +; +cr.plugins_.hmmg_layoutTransition_v2 = function(runtime) +{ + this.runtime = runtime; +}; +(function () +{ + var pluginProto = cr.plugins_.hmmg_layoutTransition_v2.prototype; + pluginProto.Type = function(plugin) + { + this.plugin = plugin; + this.runtime = plugin.runtime; + }; + var typeProto = pluginProto.Type.prototype; + typeProto.onCreate = function() + { + }; + pluginProto.Instance = function(type) + { + this.type = type; + this.runtime = type.runtime; + }; + var instanceProto = pluginProto.Instance.prototype; + instanceProto.onCreate = function() + { + var time = this.properties[0] || null; + if(time != null) + if(time >0) + $("head").append(""); + }; + instanceProto.onDestroy = function () + { + }; + instanceProto.saveToJSON = function () + { + return { + }; + }; + instanceProto.loadFromJSON = function (o) + { + }; + instanceProto.draw = function(ctx) + { + }; + instanceProto.drawGL = function (glw) + { + }; + function Cnds() {}; + Cnds.prototype.isTransitionReady = function () + { + return true; + }; + Cnds.prototype.didTransitionStart = function () + { + return true; + }; + Cnds.prototype.didTransitionFinish = function () + { + return true; + }; + pluginProto.cnds = new Cnds(); + function Acts() {}; + Acts.prototype.prepareTransition = function () + { + var tempcolor = this.properties[1]; + var R = Math.floor(tempcolor/(65536)); + var G = Math.floor(tempcolor/(256)) % 256; + var B = tempcolor % 256; + tempcolor = "rgb(" + R + "," + G + "," + B +")"; + var self = this ; + function prepareCanvas(elem,callback1) + { + self.runtime.doCanvasSnapshot("image/jpeg", 100/100); + setTimeout(function() + { + callback1(self.runtime.snapshotData); + },50); + } + function isCanvasReady(callback) + { + prepareCanvas(self,function(returnedPic) + { + if($("#fakeCanvas")[0] == undefined) + { + var c2canvasdiv = $("#c2canvasdiv") ; + var fakeCanvas = $("
"); + var fakeBody = $("
"); + var marginLeft = parseFloat(c2canvasdiv.css("margin-left")); + fakeBody.css( + { + "top":c2canvasdiv.offset().top, + "left":c2canvasdiv.offset().left, + "width":c2canvasdiv.width(), + "height":c2canvasdiv.height(), + "background-color": tempcolor + }); + c2canvasdiv.addClass("prepared").find(" > :not(canvas)").each(function() + { + $(this).css("left",($(this).offset().left-marginLeft)+"px"); + }); + fakeBody.appendTo(document.body).append(c2canvasdiv).append(fakeCanvas); + if(callback) + callback(); + } + }); + } + isCanvasReady(function() + { + self.runtime.trigger(cr.plugins_.hmmg_layoutTransition_v2.prototype.cnds.isTransitionReady, self); + }); + }; + Acts.prototype.startTransition = function (transID) + { + var fakeBody = $("#fakeBody"); + var c2canvasdiv = fakeBody.find("#c2canvasdiv") ; + var fakeCanvas = fakeBody.find("#fakeCanvas"); + var self = this ; + function darkTheFakeCanvas(callback) + { + setTimeout(function() + { + fakeCanvas.find("div").addClass("darker"); + if(callback) + callback(); + },1); + } + function removeChanges() + { + fakeBody.remove(); + c2canvasdiv.appendTo(document.body).removeClass("prepared"); + self.runtime.trigger(cr.plugins_.hmmg_layoutTransition_v2.prototype.cnds.didTransitionFinish, self) + } + self.runtime.trigger(cr.plugins_.hmmg_layoutTransition_v2.prototype.cnds.didTransitionStart, self) + if(transID == 14) + { + c2canvasdiv.addClass("hidden"); + fakeCanvas.addClass('animated rotateOut').on('webkitAnimationEnd mozAnimationEnd MSAnimationEnd oanimationend animationend', function() + { + fakeCanvas.addClass("hidden"); + }); + c2canvasdiv.removeClass("hidden").addClass('animated rotateIn').on('webkitAnimationEnd mozAnimationEnd MSAnimationEnd oanimationend animationend', function() + { + c2canvasdiv.removeClass("animated rotateIn"); + removeChanges(); + }); + } + else if(transID == 13) + { + fakeCanvas.addClass('animated rollOut').on('webkitAnimationEnd mozAnimationEnd MSAnimationEnd oanimationend animationend', function() + { + fakeCanvas.addClass("hidden"); + }); + c2canvasdiv.addClass('animated rollIn').on('webkitAnimationEnd mozAnimationEnd MSAnimationEnd oanimationend animationend', function() + { + c2canvasdiv.removeClass("animated rollIn"); + removeChanges(); + }); + } + else if(transID == 12) + { + fakeCanvas.addClass('animated zoomOut').on('webkitAnimationEnd mozAnimationEnd MSAnimationEnd oanimationend animationend', function() + { + fakeCanvas.addClass("hidden"); + }); + c2canvasdiv.addClass('animated zoomIn').on('webkitAnimationEnd mozAnimationEnd MSAnimationEnd oanimationend animationend', function() + { + c2canvasdiv.removeClass("animated zoomIn"); + removeChanges(); + }); + } + else if(transID == 11) + { + c2canvasdiv.addClass("hidden"); + fakeCanvas.addClass('animated fadeOut').on('webkitAnimationEnd mozAnimationEnd MSAnimationEnd oanimationend animationend', function() + { + fakeCanvas.addClass("hidden"); + c2canvasdiv.removeClass("hidden").addClass('animated fadeIn').on('webkitAnimationEnd mozAnimationEnd MSAnimationEnd oanimationend animationend', function() + { + c2canvasdiv.removeClass("animated fadeIn"); + removeChanges(); + }); + }); + } + else if(transID == 10) + { + c2canvasdiv.addClass("hidden"); + fakeCanvas.addClass('animated fadeOut').on('webkitAnimationEnd mozAnimationEnd MSAnimationEnd oanimationend animationend', function() + { + fakeCanvas.addClass("hidden"); + }); + c2canvasdiv.removeClass("hidden").addClass('animated fadeIn').on('webkitAnimationEnd mozAnimationEnd MSAnimationEnd oanimationend animationend', function() + { + c2canvasdiv.removeClass("animated fadeIn"); + removeChanges(); + }); + } + else if(transID == 9) + { + c2canvasdiv.addClass("hidden"); + fakeCanvas.addClass('animated flipOutYY').on('webkitAnimationEnd mozAnimationEnd MSAnimationEnd oanimationend animationend', function() + { + fakeCanvas.addClass("hidden"); + c2canvasdiv.removeClass("hidden").addClass('animated flipInYY').on('webkitAnimationEnd mozAnimationEnd MSAnimationEnd oanimationend animationend', function() + { + c2canvasdiv.removeClass("animated flipInYY"); + removeChanges(); + }); + }); + } + else if(transID == 8) + { + c2canvasdiv.addClass("hidden"); + fakeCanvas.addClass('animated flipOutXX').on('webkitAnimationEnd mozAnimationEnd MSAnimationEnd oanimationend animationend', function() + { + fakeCanvas.addClass("hidden"); + c2canvasdiv.removeClass("hidden").addClass('animated flipInXX').on('webkitAnimationEnd mozAnimationEnd MSAnimationEnd oanimationend animationend', function() + { + c2canvasdiv.removeClass("animated flipInXX"); + removeChanges(); + }); + }); + } + else if(transID == 7) + { + c2canvasdiv.addClass('animated slideInRight').on('webkitAnimationEnd mozAnimationEnd MSAnimationEnd oanimationend animationend', function() + { + removeChanges(); + c2canvasdiv.removeClass("animated slideInRight"); + }); + } + else if(transID == 6) + { + c2canvasdiv.addClass('animated slideInLeft').on('webkitAnimationEnd mozAnimationEnd MSAnimationEnd oanimationend animationend', function() + { + removeChanges(); + c2canvasdiv.removeClass('animated slideInLeft'); + }); + } + else if(transID == 5) + { + c2canvasdiv.addClass('animated slideInDown').on('webkitAnimationEnd mozAnimationEnd MSAnimationEnd oanimationend animationend', function() + { + removeChanges(); + c2canvasdiv.removeClass('animated slideInDown'); + }); + } + else if(transID == 4) + { + c2canvasdiv.addClass('animated slideInUp').on('webkitAnimationEnd mozAnimationEnd MSAnimationEnd oanimationend animationend', function() + { + removeChanges(); + c2canvasdiv.removeClass('animated slideInUp'); + }); + } + else if(transID == 3) + { + c2canvasdiv.addClass('animated slideInRight').on('webkitAnimationEnd mozAnimationEnd MSAnimationEnd oanimationend animationend', function() + { + removeChanges(); + c2canvasdiv.removeClass("animated slideInRight"); + fakeCanvas.removeClass('animated slideOutLeft'); + }); + fakeCanvas.addClass('animated slideOutLeft'); + } + else if(transID == 2) + { + c2canvasdiv.addClass('animated slideInLeft').on('webkitAnimationEnd mozAnimationEnd MSAnimationEnd oanimationend animationend', function() + { + removeChanges(); + fakeCanvas.removeClass("animated slideOutRight"); + c2canvasdiv.removeClass('animated slideInLeft'); + }); + fakeCanvas.addClass('animated slideOutRight'); + } + else if(transID == 1) + { + c2canvasdiv.addClass('animated slideInDown').on('webkitAnimationEnd mozAnimationEnd MSAnimationEnd oanimationend animationend', function() + { + removeChanges(); + fakeCanvas.removeClass("animated slideOutDown"); + c2canvasdiv.removeClass('animated slideInDown'); + }); + fakeCanvas.addClass('animated slideOutDown'); + } + else if(transID == 0) + { + c2canvasdiv.addClass('animated slideInUp').on('webkitAnimationEnd mozAnimationEnd MSAnimationEnd oanimationend animationend', function() + { + removeChanges(); + fakeCanvas.removeClass("animated slideOutUp"); + c2canvasdiv.removeClass('animated slideInUp'); + }); + fakeCanvas.addClass('animated slideOutUp'); + } + }; + pluginProto.acts = new Acts(); + function Exps() {}; + pluginProto.exps = new Exps(); +}()); +; +; +Math.sign = Math.sign || function(x) { + x = +x; // convert to a number + if (x === 0 || isNaN(x)) { + return Number(x); + } + return x > 0 ? 1 : -1; +} +cr.plugins_.jcw_trace = function(runtime) +{ + this.runtime = runtime; +}; +(function () +{ + var pluginProto = cr.plugins_.jcw_trace.prototype; + pluginProto.Type = function(plugin) + { + this.plugin = plugin; + this.runtime = plugin.runtime; + }; + var typeProto = pluginProto.Type.prototype; + typeProto.onCreate = function() + { + this.obstacleTypes = []; + }; + pluginProto.Instance = function(type) + { + this.type = type; + this.runtime = type.runtime; + }; + var instanceProto = pluginProto.Instance.prototype; + function TR() + { + this.x1 = 0; + this.y1 = 0; + this.x2 = 0; + this.y2 = 0; + this.dx = 0; + this.dy = 0; + this.bounds = new cr.rect(0, 0, 0, 0); + this.t = 0; + this.hit = false; + this.hitx = 0; + this.hity = 0; + this.uid = -1; + this.normalang = 0; + cr.seal(this); + } + var TRProto = TR.prototype; + TRProto.CalcHitPos = function(padding) + { + this.hitx = this.x1 + this.dx * this.t; + this.hity = this.y1 + this.dy * this.t; + if (padding === 0) {return;} + var ang = Math.atan2(-this.dy, -this.dx); + this.hitx += Math.cos(ang)*padding; + this.hity += Math.sin(ang)*padding; + }; + TRProto.GetReflectAng = function() + { + return 2*this.normalang - Math.atan2(-this.dy, -this.dx); + }; + function PointOnLineSide(px, py, x1, y1, x2, y2) + { + var dx = x2 - x1; + var dy = y2 - y1; + return (y1 - py) * dx - (x1 - px) * dy >= 0 ? 0 : 1; + } + function SegmentAABB(tr, bbox, padx, pady) + { + var ScaleX = 1.0 / tr.dx; + var ScaleY = 1.0 / tr.dy; + var SignX = Math.sign(ScaleX); + var SignY = Math.sign(ScaleY); + var PosX = (bbox.left + bbox.right) / 2; + var PosY = (bbox.top + bbox.bottom) / 2; + var HalfW = (bbox.right - bbox.left) / 2 + padx; + var HalfH = (bbox.bottom - bbox.top) / 2 + pady; + var NearTimeX = (PosX - SignX * HalfW - tr.x1) * ScaleX; + var NearTimeY = (PosY - SignY * HalfH - tr.y1) * ScaleY; + var FarTimeX = (PosX + SignX * HalfW - tr.x1) * ScaleX; + var FarTimeY = (PosY + SignY * HalfH - tr.y1) * ScaleY; + if (NearTimeX > FarTimeY || NearTimeY > FarTimeX) return false; + var NearTime = NearTimeX > NearTimeY ? NearTimeX : NearTimeY; + var FarTime = FarTimeX < FarTimeY ? FarTimeX : FarTimeY; + if (NearTime >= tr.t || FarTime <= 0) return false; + tr.t = Math.max(NearTime, 0); + tr.hit = true; + if (NearTimeX > NearTimeY) + { + tr.normalang = Math.atan2(0, -SignX); + } + else + { + tr.normalang = Math.atan2(-SignY, 0); + } + return true; + } + function InterceptSegment(s2x1, s2y1, s2x2, s2y2, s1x1, s1y1, s1x2, s1y2) + { + var s1dx = s1x2 - s1x1; + var s1dy = s1y2 - s1y1; + var s2dx = s2x2 - s2x1; + var s2dy = s2y2 - s2y1; + var den = s1dy * s2dx - s1dx * s2dy; + if (den === 0) {return 0;} + var num = (s1x1 - s2x1) * s1dy + (s2y1 - s1y1) * s1dx; + return num / den; + } + function SegmentQuad(tr, bquad) + { + var hit = false; + if (bquad.contains_pt(tr.x1, tr.y1)) + { + tr.t = 0; + tr.hit = true; + tr.normalang = Math.atan2(-tr.dy, -tr.dx); + return true; + } + var i, t; + var px1, py1, px2, py2; + for (i = 0; i < 4; i++) + { + px1 = bquad.at(i, true); + py1 = bquad.at(i, false); + px2 = bquad.at(i + 1, true); + py2 = bquad.at(i + 1, false); + if (!cr.segments_intersect(tr.x1, tr.y1, tr.x2, tr.y2, px1, py1, px2, py2)) continue; + t = InterceptSegment(tr.x1, tr.y1, tr.x2, tr.y2, px1, py1, px2, py2); + if (t < tr.t) + { + hit = true; + tr.t = t; + tr.hit = true; + tr.normalang = Math.atan2(px1 - px2, py2 - py1); + } + } + return hit; + } + function SegmentPolygon(tr, polygon, offx, offy) + { + var points = polygon.pts_cache; + if (polygon.contains_pt(tr.x1 - offx, tr.y1 - offy)) + { + tr.t = 0; + tr.hit = true; + tr.normalang = Math.atan2(-tr.dy, -tr.dx); + return true; + } + var i, leni, i2, imod, t; + var px1, py1, px2, py2; + var hit = false; + for (i = 0, leni = polygon.pts_count; i < leni; i++) + { + i2 = i*2; + imod = ((i+1)%leni)*2; + px1 = points[i2] + offx; + py1 = points[i2+1] + offy; + px2 = points[imod] + offx; + py2 = points[imod+1] + offy; + if (!cr.segments_intersect(tr.x1, tr.y1, tr.x2, tr.y2, px1, py1, px2, py2)) continue; + t = InterceptSegment(tr.x1, tr.y1, tr.x2, tr.y2, px1, py1, px2, py2); + if (t < tr.t) + { + hit = true; + tr.t = t; + tr.hit = true; + if (PointOnLineSide(tr.x1, tr.y1, px1, py1, px2, py2) === 0) + { + tr.normalang = Math.atan2(px1 - px2, py2 - py1); + } + else + { + tr.normalang = Math.atan2(px2 - px1, py1 - py2); + } + } + } + return hit; + } + var collrect_candidates = []; + var tmpRect = new cr.rect(0, 0, 0, 0); + function SegmentTilemap(tr, inst) + { + inst.getCollisionRectCandidates(tr.bounds, collrect_candidates); + var i, len, c, tilerc; + var tmx = inst.x; + var tmy = inst.y; + var hit = false; + for (i = 0, len = collrect_candidates.length; i < len; ++i) + { + c = collrect_candidates[i]; + tilerc = c.rc; + if (!tr.bounds.intersects_rect_off(tilerc, tmx, tmy)) continue; + tmpRect.copy(tilerc); + tmpRect.offset(tmx, tmy); + if (c.poly) + { + if (SegmentPolygon(tr, c.poly, tmpRect.left, tmpRect.top)) hit = true; + } + else + { + if (SegmentAABB(tr, tmpRect, 0, 0)) hit = true; + } + } + cr.clearArray(collrect_candidates); + return hit; + } + function SegmentOverlap(tr, inst) + { + if (!inst || !inst.collisionsEnabled) return; + inst.update_bbox(); + if (!inst.bbox.intersects_rect(tr.bounds)) return; + var hit = false; + if (inst.tilemap_exists) + { + hit = SegmentTilemap(tr, inst); + } + else if (inst.collision_poly && !inst.collision_poly.is_empty()) + { + var polygon = inst.collision_poly; + polygon.cache_poly(inst.width, inst.height, inst.angle); + hit = SegmentPolygon(tr, polygon, inst.x, inst.y); + } + else + { + if (inst.angle === 0) hit = SegmentAABB(tr, inst.bbox, 0, 0); else hit = SegmentQuad(tr, inst.bquad); + } + if (hit) tr.uid = inst.uid; + } + function AABBOverlap(tr, inst, halfw, halfh) + { + if (!inst || !inst.collisionsEnabled) return; + inst.update_bbox(); + if (!inst.bbox.intersects_rect(tr.bounds)) return; + var hit = false; + if (inst.tilemap_exists) + { + } + else if (inst.collision_poly && !inst.collision_poly.is_empty()) + { + var polygon = inst.collision_poly; + polygon.cache_poly(inst.width, inst.height, inst.angle); + } + else + { + if (inst.angle === 0) hit = SegmentAABB(tr, inst.bbox, halfw, halfh); // else hit = SegmentQuad(tr, inst.bquad); + } + if (hit) tr.uid = inst.uid; + } + instanceProto.onCreate = function() + { + this.obstacleMode = this.properties[0]; + this.useCollisionCells = (this.properties[1] !== 0); + this.padding = cr.clamp(this.properties[2], 0, 1); + this.tr = new TR(); + }; + instanceProto.onDestroy = function () + { + }; + instanceProto.saveToJSON = function () + { + return { + }; + }; + instanceProto.loadFromJSON = function (o) + { + }; + var candidates = []; + instanceProto.GetOverlapCandidates = function() + { + var tr = this.tr; + var i, leni; + if (this.obstacleMode === 0) + { + if (this.useCollisionCells) + { + this.runtime.getSolidCollisionCandidates(null, tr.bounds, candidates); + } + else + { + var solid = this.runtime.getSolidBehavior(); + if (solid) cr.appendArray(candidates, solid.my_instances.valuesRef()); + } + } + else + { + if (this.useCollisionCells) + { + this.runtime.getTypesCollisionCandidates(null, this.type.obstacleTypes, tr.bounds, candidates); + } + else + { + for (i = 0, leni = this.type.obstacleTypes.length; i < leni; ++i) + { + cr.appendArray(candidates, this.type.obstacleTypes[i].instances); + } + } + } + }; + function Cnds() {} + Cnds.prototype.Hit = function () { return this.tr.hit; }; + pluginProto.cnds = new Cnds(); + function Acts() {} + Acts.prototype.AddObstacle = function (obj_) + { + var obstacleTypes = this.type.obstacleTypes; + if (obstacleTypes.indexOf(obj_) !== -1) return; + var i, len, t; + for (i = 0, len = obstacleTypes.length; i < len; i++) + { + t = obstacleTypes[i]; + if (t.is_family && t.members.indexOf(obj_) !== -1) return; + } + obstacleTypes.push(obj_); + }; + Acts.prototype.ClearObstacles = function () + { + cr.clearArray(this.type.obstacleTypes); + }; + Acts.prototype.TraceLine = function (x1, y1, x2, y2) + { + var tr = this.tr; + tr.x1 = x1; + tr.y1 = y1; + tr.x2 = x2; + tr.y2 = y2; + tr.dx = x2 - x1; + tr.dy = y2 - y1; + tr.bounds.set(x1, y1, x2, y2); + tr.bounds.normalize(); + tr.t = 1; + tr.hit = false; + var i, leni, rinst; + this.GetOverlapCandidates(); + if (this.obstacleMode === 0) + { + for (i = 0, leni = candidates.length; i < leni; ++i) + { + rinst = candidates[i]; + if (!rinst.extra["solidEnabled"]) continue; + SegmentOverlap(tr, rinst); + } + } + else + { + for (i = 0, leni = candidates.length; i < leni; ++i) + { + rinst = candidates[i]; + SegmentOverlap(tr, rinst); + } + } + cr.clearArray(candidates); + if (tr.hit) + { + tr.CalcHitPos(this.padding); + } + else + { + tr.hitx = x2; + tr.hity = y2; + tr.uid = -1; + tr.normalang = Math.atan2(-tr.dy, -tr.dx); + } + }; + Acts.prototype.TraceBox = function (x1, y1, x2, y2, w, h) + { + var halfw = w / 2; + var halfh = h / 2; + var tr = this.tr; + tr.x1 = x1; + tr.y1 = y1; + tr.x2 = x2; + tr.y2 = y2; + tr.dx = x2 - x1; + tr.dy = y2 - y1; + tr.bounds.set(x1, y1, x2, y2); + tr.bounds.normalize(); + tr.bounds.left -= halfw; + tr.bounds.right += halfw; + tr.bounds.top -= halfh; + tr.bounds.bottom += halfh; + tr.t = 1; + tr.hit = false; + var i, leni, rinst; + this.GetOverlapCandidates() + if (this.obstacleMode === 0) + { + for (i = 0, leni = candidates.length; i < leni; ++i) + { + rinst = candidates[i]; + if (!rinst.extra["solidEnabled"]) continue; + AABBOverlap(tr, rinst, halfw, halfh); + } + } + else + { + for (i = 0, leni = candidates.length; i < leni; ++i) + { + rinst = candidates[i]; + AABBOverlap(tr, rinst, halfw, halfh); + } + } + cr.clearArray(candidates); + if (tr.hit) + { + tr.CalcHitPos(this.padding); + } + else + { + tr.hitx = x2; + tr.hity = y2; + tr.uid = -1; + tr.normalang = Math.atan2(-tr.dy, -tr.dx); + } + }; + pluginProto.acts = new Acts(); + function Exps() {} + Exps.prototype.HitUID = function (ret) { ret.set_int(this.tr.uid); }; + Exps.prototype.HitX = function (ret) { ret.set_float(this.tr.hitx); }; + Exps.prototype.HitY = function (ret) { ret.set_float(this.tr.hity); }; + Exps.prototype.NormalAngle = function (ret) { ret.set_float(cr.to_degrees(this.tr.normalang)); }; + Exps.prototype.ReflectAngle = function (ret) { ret.set_float(cr.to_degrees(this.tr.GetReflectAng())); }; + Exps.prototype.HitFrac = function (ret) { ret.set_float(this.tr.t); }; + pluginProto.exps = new Exps(); +}()); +; +; +cr.plugins_.rojoPaster = function(runtime) +{ + this.runtime = runtime; +}; +(function () +{ + var pluginProto = cr.plugins_.rojoPaster.prototype; + pluginProto.Type = function(plugin) + { + this.plugin = plugin; + this.runtime = plugin.runtime; + }; + var typeProto = pluginProto.Type.prototype; + typeProto.onCreate = function() + { + }; + pluginProto.Instance = function(type) + { + this.type = type; + this.runtime = type.runtime; + }; + var instanceProto = pluginProto.Instance.prototype; + instanceProto.onCreate = function() + { + this.visible = (this.properties[0] === 0); // 0=visible, 1=invisible + this.resx = this.width; + this.resy = this.height; + this.verts = [{x:0,y:0,u:0,v:0}, + {x:0,y:0,u:0,v:0}, + {x:0,y:0,u:0,v:0}, + {x:0,y:0,u:0,v:0}]; + this.points=null; + this.canvas2textureNextTick = 0; + var glw = this.runtime.glwrap; + if(glw) + { +; + this.texture = glw.createEmptyTexture(this.resx, this.resy, this.runtime.linearSampling, false); + this.temp_texture = glw.createEmptyTexture(this.resx, this.resy, this.runtime.linearSampling, false); + this.quadtex = glw.createEmptyTexture(1, 1, this.runtime.linearSampling, false); + glw.setTexture(null); + glw.setRenderingToTexture(this.quadtex); + glw.clear(0,0,0,1); + glw.setRenderingToTexture(null); + this.quadblend = new Object(); + this.quadblend.srcBlend = glw.gl.ONE; + this.quadblend.destBlend = glw.gl.ONE_MINUS_SRC_ALPHA; + } + else + { + this.canvas = document.createElement('canvas'); + this.canvas.width=this.resx; + this.canvas.height=this.resy; + this.ctx = this.canvas.getContext('2d'); + if (!this.runtime.linearSampling) + { + this.ctx.mozImageSmoothingEnabled = false; + this.ctx.webkitImageSmoothingEnabled = false; + this.ctx.msImageSmoothingEnabled = false; + this.ctx.imageSmoothingEnabled = false; + } + this.fill="black"; + } + }; + instanceProto.onDestroy = function () + { + if(this.texture) + { + this.runtime.glwrap.deleteTexture(this.texture); + this.runtime.glwrap.deleteTexture(this.quadtex); + this.runtime.glwrap.deleteTexture(this.temp_texture); + } + this.texture=null; + this.quadtex=null; + this.temp_texture=null; + this.canvas=null; + this.ctx=null; + }; + instanceProto.saveToJSON = function () + { + return { + }; + }; + instanceProto.loadFromJSON = function (o) + { + }; + instanceProto.grabCanvas = function() + { + var glw = this.runtime.glwrap; + var img = this.runtime.canvas; + if(glw) + { + if (this.type.plugin.canvasflip == null) + { + var canvas = document.createElement('canvas'); + canvas.width = 1; + canvas.height = 2; + var gl = canvas.getContext("experimental-webgl"); + gl.clearColor(1, 1, 1, 1); + gl.clear(gl.COLOR_BUFFER_BIT); + var prog = gl.createProgram(); + var vss = gl.createShader(gl.VERTEX_SHADER); + gl.shaderSource(vss, "attribute vec3 pos;void main() {gl_Position = vec4(pos, 1.0);}"); + gl.compileShader(vss); + gl.attachShader(prog, vss); + var fss = gl.createShader(gl.FRAGMENT_SHADER); + gl.shaderSource(fss, "void main() {gl_FragColor = vec4(0.0, 0.0, 0.0, 1.0);}"); + gl.compileShader(fss); + gl.attachShader(prog, fss); + gl.linkProgram(prog); + gl.useProgram(prog); + gl.bindBuffer(gl.ARRAY_BUFFER, gl.createBuffer()); + gl.bufferData(gl.ARRAY_BUFFER, new Float32Array([-1, -1, 0, 1, -1, 0, -1, 0, 0, 1, 0, 0]), gl.STATIC_DRAW); + var attr = gl.getAttribLocation(prog, "pos"); + gl.enableVertexAttribArray(attr); + gl.vertexAttribPointer(attr, 3, gl.FLOAT, false, 0, 0); + gl.drawArrays(gl.TRIANGLE_STRIP, 0, 4); + var tex_small = gl.createTexture(); + gl.bindTexture(gl.TEXTURE_2D, tex_small); + gl.texImage2D(gl.TEXTURE_2D, 0, gl.RGBA, gl.RGBA, gl.UNSIGNED_BYTE, gl.canvas); + gl.bindTexture(gl.TEXTURE_2D, null); + var fbo = gl.createFramebuffer(); + gl.bindFramebuffer(gl.FRAMEBUFFER, fbo); + gl.framebufferTexture2D(gl.FRAMEBUFFER, gl.COLOR_ATTACHMENT0, gl.TEXTURE_2D, tex_small, 0); + var pixels = new Uint8Array(1 * 2 * 4); + gl.readPixels( 0, 0, 1, 2, gl.RGBA, gl.UNSIGNED_BYTE, pixels); + gl.bindFramebuffer(gl.FRAMEBUFFER, null); + this.type.plugin.canvasflip = pixels[0] == 0; + gl.deleteTexture(tex_small); + } + var gl = glw.gl; + if(this.texture.c2width != img.width || this.texture.c2height != img.height) + { + glw.deleteTexture(this.texture); + this.texture = null; + } + if ( this.texture == null) + this.texture = glw.createEmptyTexture(img.width, img.height, this.runtime.linearSampling, this.runtime.isMobile); + if(this.type.plugin.canvasflip) + { + glw.gl.pixelStorei(glw.gl.UNPACK_FLIP_Y_WEBGL, true); + } + glw.videoToTexture(img, this.texture, this.runtime.isMobile); + glw.gl.pixelStorei(glw.gl.UNPACK_FLIP_Y_WEBGL, false); + } + else + { + this.canvas.width = img.width; + this.canvas.height = img.height; + this.ctx.drawImage(img, 0, 0, img.width, img.height); + } + }; +/* instanceProto.tick = function() + { + this.canvas2textureNextTick--; + if(this.canvas2textureNextTick > 0) + { + this.canvas2textureNextTick = 0; + this.runtime.redraw = true; + this.grabCanvas(); + } + }; +*/ + instanceProto.draw = function(ctx) + { + ctx.globalAlpha = this.opacity; + ctx.save(); + ctx.translate(this.x, this.y); + var widthfactor = this.width > 0 ? 1 : -1; + var heightfactor = this.height > 0 ? 1 : -1; + if (widthfactor !== 1 || heightfactor !== 1) + ctx.scale(widthfactor, heightfactor); + ctx.rotate(this.angle * widthfactor * heightfactor); + ctx.drawImage(this.canvas, + 0 - (this.hotspotX * cr.abs(this.width)), + 0 - (this.hotspotY * cr.abs(this.height)), + cr.abs(this.width), + cr.abs(this.height)); + ctx.restore(); + }; + instanceProto.drawGL = function (glw) + { + glw.setTexture(this.texture); + glw.setOpacity(this.opacity); + var q = this.bquad; + glw.quad(q.tlx, q.tly, q.trx, q.try_, q.brx, q.bry, q.blx, q.bly); + }; + function Cnds() {}; +/* Cnds.prototype.MyCondition = function (myparam) + { + return myparam >= 0; + };*/ + pluginProto.cnds = new Cnds(); + function Acts() {}; + Acts.prototype.SetEffect = function (effect) + { + this.compositeOp = cr.effectToCompositeOp(effect); + cr.setGLBlend(this, effect, this.runtime.gl); + this.runtime.redraw = true; + }; + Acts.prototype.PasteObject = function (object) + { + var sol = object.getCurrentSol(); + var instances; + if (sol.select_all) + instances = sol.type.instances; + else + instances = sol.instances; + this.update_bbox(); + var inst, i, len; + var glw = this.runtime.glwrap; + if(glw) //webgl + { + if(!this.texture) //bad tex + return; + var old_width = glw.width; + var old_height = glw.height; + glw.setSize(this.resx,this.resy); + glw.setTexture(null); + glw.setRenderingToTexture(this.texture); + glw.resetModelView(); + glw.scale(this.resx/this.width, -this.resy/this.height); + glw.rotateZ(-this.angle); + glw.translate((this.bbox.left + this.bbox.right) / -2, (this.bbox.top + this.bbox.bottom) / -2); + glw.updateModelView(); + var shaderindex = 0, etindex = 0; + var e, elen; + for (i = 0, len = instances.length; i < len; i++) + { + inst = instances[i]; + if (this == inst || !inst.visible || inst.width === 0 || inst.height === 0) + continue; + inst.update_bbox(); + if( !this.bbox.intersects_rect(inst.bbox)) + continue; + if (inst.uses_shaders) + { + for(e=0, elen=inst.active_effect_types.length; e3) + return; + this.verts[index].x = x; + this.verts[index].y = y; + this.verts[index].u = u; + this.verts[index].v = v; + }; + Acts.prototype.DrawSubTexQuad = function (blend, opacity, object_type) + { + var obj = object_type.getFirstPicked(); + if(!obj) + return; //no obj picked + var x1 = this.verts[0].x; + var y1 = this.verts[0].y; + var u1 = this.verts[0].u; + var v1 = this.verts[0].v; + var x2 = this.verts[1].x; + var y2 = this.verts[1].y; + var u2 = this.verts[1].u; + var v2 = this.verts[1].v; + var x3 = this.verts[2].x; + var y3 = this.verts[2].y; + var u3 = this.verts[2].u; + var v3 = this.verts[2].v; + var x4 = this.verts[3].x; + var y4 = this.verts[3].y; + var u4 = this.verts[3].u; + var v4 = this.verts[3].v; + var sprite = obj.curFrame; + var texture_2d = null; + var texture_webgl= null; + if(!sprite) + { + if(obj.canvas) + texture_2d = obj.canvas; + if(obj.tex) + texture_webgl = obj.tex; + if(obj.texture) + texture_webgl = obj.texture; + if(obj.texture_img) + { + texture_2d = obj.texture_img; + texture_webgl = obj.webGL_texture; + } + } + this.update_bbox(); + var glw = this.runtime.glwrap; + if(glw && (sprite || texture_webgl)) + { + glw.setTexture(null); + glw.setRenderingToTexture(this.texture); + var old_width = glw.width; + var old_height = glw.height; + glw.setSize(this.resx,this.resy); + glw.resetModelView(); + glw.scale(this.resx/this.width, -this.resy/this.height); + glw.rotateZ(-this.angle); + glw.translate((this.bbox.left + this.bbox.right) / -2, (this.bbox.top + this.bbox.bottom) / -2); + glw.updateModelView(); + glw.setOpacity(opacity/100); + cr.setGLBlend(this.quadblend, blend, glw.gl); + glw.setBlend(this.quadblend.srcBlend, this.quadblend.destBlend); + if(sprite) + { + glw.setTexture(obj.curWebGLTexture); + if (sprite.spritesheeted) + { + var bbox = sprite.sheetTex; + bbox.width = bbox.right - bbox.left; + bbox.height = bbox.bottom - bbox.top; + glw.quadTexUV(x1,y1,x2,y2,x3,y3,x4,y4, + bbox.left + u1*bbox.width, + bbox.top + v1*bbox.height, + bbox.left + u2*bbox.width, + bbox.top + v2*bbox.height, + bbox.left + u3*bbox.width, + bbox.top + v3*bbox.height, + bbox.left + u4*bbox.width, + bbox.top + v4*bbox.height); + } + else + { + glw.quadTexUV(x1,y1,x2,y2,x3,y3,x4,y4,u1,v1,u2,v2,u3,v3,u4,v4); + } + } + else + { + glw.setTexture(texture_webgl); + glw.quadTexUV(x1,y1,x2,y2,x3,y3,x4,y4,u1,v1,u2,v2,u3,v3,u4,v4); + } + glw.setRenderingToTexture(null); + glw.setSize(old_width, old_height); + } + else if (sprite || texture_2d) + { + var ctx = this.ctx; + var img = null; + ctx.save(); + ctx.scale(this.canvas.width/this.width, this.canvas.height/this.height); + ctx.rotate(-this.angle); + ctx.translate(-this.bquad.tlx, -this.bquad.tly); + ctx.globalCompositeOperation = cr.effectToCompositeOp(blend); + ctx.globalAlpha = opacity/100; + if(!this.points) + { + this.points=[new Object(),new Object(),new Object(),new Object()]; + } + if(sprite) + img = sprite.texture_img; + else + img = texture_2d; + if (sprite && sprite.spritesheeted) + { + this.points[0].x=x1; + this.points[0].y=y1; + this.points[0].u=sprite.offx + u1*sprite.width; + this.points[0].v=sprite.offy + v1*sprite.height; + this.points[1].x=x2; + this.points[1].y=y2; + this.points[1].u=sprite.offx + u2*sprite.width; + this.points[1].v=sprite.offy + v2*sprite.height; + this.points[2].x=x3; + this.points[2].y=y3; + this.points[2].u=sprite.offx + u3*sprite.width; + this.points[2].v=sprite.offy + v3*sprite.height; + this.points[3].x=x4; + this.points[3].y=y4; + this.points[3].u=sprite.offx + u4*sprite.width; + this.points[3].v=sprite.offy + v4*sprite.height; + } + else + { + this.points[0].x=x1; + this.points[0].y=y1; + this.points[0].u=u1*img.width; + this.points[0].v=v1*img.height; + this.points[1].x=x2; + this.points[1].y=y2; + this.points[1].u=u2*img.width; + this.points[1].v=v2*img.height; + this.points[2].x=x3; + this.points[2].y=y3; + this.points[2].u=u3*img.width; + this.points[2].v=v3*img.height; + this.points[3].x=x4; + this.points[3].y=y4; + this.points[3].u=u4*img.width; + this.points[3].v=v4*img.height; + } + textureMap(ctx, img, this.points) + ctx.restore(); + } + this.runtime.redraw = true; + }; + Acts.prototype.LoadImage = function (url_, resize_) + { + var self = this; + var img = new Image(); + img.onload = function() + { + self.resx = img.width; + self.resy = img.height; + var glw = self.runtime.glwrap; + if(glw) + { + glw.deleteTexture(this.texture); + glw.deleteTexture(this.temp_texture); + self.texture = glw.loadTexture(img, false, self.runtime.linearSampling); + } + else + { + self.canvas.width = img.width; + self.canvas.height = img.height; + self.ctx.drawImage(img, 0, 0, img.width, img.height); + } + if (resize_ === 0) // resize to image size + { + self.width = img.width; + self.height = img.height; + self.set_bbox_changed(); + } + self.runtime.redraw = true; + } + if (url_.substr(0, 5) !== "data:") + img.crossOrigin = 'anonymous'; + img.src = url_; + }; + Acts.prototype.LoadCanvas = function () + { + this.grabCanvas(); + this.runtime.redraw = true; + }; + pluginProto.acts = new Acts(); + function Exps() {}; + Exps.prototype.imageUrl = function (ret) + { + var glw = this.runtime.glwrap; + if(glw) + { + var gl = glw.gl; + var width = this.resx; + var height = this.resy; + glw.present(); + var framebuffer = gl.createFramebuffer(); + gl.bindFramebuffer(gl.FRAMEBUFFER, framebuffer); + gl.framebufferTexture2D(gl.FRAMEBUFFER, gl.COLOR_ATTACHMENT0, gl.TEXTURE_2D, this.texture, 0); + var dsize=width * height * 4; + var data = new Uint8Array(dsize); + gl.readPixels(0, 0, width, height, gl.RGBA, gl.UNSIGNED_BYTE, data); + for(var i=0, r,g,b,a; i typeArray.length){ + difference = argArray.length - typeArray.length; + for (var i = 0; i < difference; i++) { + typeArray.push('a'); + } + } + /*else if(argArray.length < typeArray.length){ + difference = typeArray.length - argArray.length; + for (var i = 0; i < difference; i++) { + typeArray.pop(); + } + }*/ + for (var i = 0; i < argArray.length; i++) { + var char = typeArray[i].trim().charAt(0).toLowerCase(); + if(char != 's' && char != 'a' && char != 'n'){ + console.warn("The type of the given number doesn't exist. Please use Number, String or Any. Note that the type only needs to start with n, a or s, and is not case sensitive, so using a single letter is ok."); + } + if(char == 'n'){ + argArray[i] = parseFloat(argArray[i].trim()); + } + } + return argArray; + }; + function Cnds() {}; + pluginProto.cnds = new Cnds(); + function Acts() {}; + Acts.prototype.Callback = function (name, div, params, types) + { + var args = this.getArgs(params, div, types); + if (c2_callFunction){ + c2_callFunction(name, args); + } + }; + pluginProto.acts = new Acts(); + function Exps() {}; + Exps.prototype.Callback = function (ret, name_, div, params, types) // 'ret' must always be the first parameter - always return the expression's result through it! + { + var fs = pushFuncStack(); + fs.name = name_.toLowerCase(); + fs.retVal = 0; + cr.clearArray(fs.params); + fs.params = this.getArgs(params, div, types); + var ran = this.runtime.trigger(cr.plugins_.Function.prototype.cnds.OnFunction, this, fs.name); + if (isInPreview && !ran) + { + console.warn("[Construct 2] Function object: expression Function.Call('" + name_ + "' ...) was used, but no event was triggered. Is the function call spelt incorrectly or no longer used?"); + } + popFuncStack(); + ret.set_any(fs.retVal); + }; + pluginProto.exps = new Exps(); +}()); +; +; +cr.plugins_.skymen_siteLock = function(runtime) +{ + this.runtime = runtime; +}; +(function () +{ + var pluginProto = cr.plugins_.skymen_siteLock.prototype; + pluginProto.Type = function(plugin) + { + this.plugin = plugin; + this.runtime = plugin.runtime; + }; + var typeProto = pluginProto.Type.prototype; + typeProto.onCreate = function() + { + }; + pluginProto.Instance = function(type) + { + this.type = type; + this.runtime = type.runtime; + }; + var instanceProto = pluginProto.Instance.prototype; + instanceProto.onCreate = function() + { + this.sites = this.properties[0].split(' '); + this.hash = this.properties[1] === 0; + this.key = this.properties[2]; + this.order = this.properties[3] === 0; + }; + instanceProto.SiteLock = function () { + var key = this.key; + var val = this.getGameSite(); + var temp; + if (this.hash && this.order) { + for (var i = 0; i < this.sites.length; i++) { + var site = this.sites[i]; + key = this.key + i; + temp = this.hex_hmac_md5(key, val); + if (site === temp) return false; + } + return true; + } + if(this.hash){ + temp = this.hex_hmac_md5(key, val); + return !this.sites.includes(temp); + } + return !this.sites.includes(val); + }; + instanceProto.hex_hmac_md5 = function (k, d) { + return this.rstr2hex(rstr_hmac_md5(str2rstr_utf8(k), str2rstr_utf8(d))); + } + function rstr_hmac_md5(key, data) { + var bkey = rstr2binl(key); + if (bkey.length > 16) bkey = binl_md5(bkey, key.length * 8); + var ipad = Array(16), + opad = Array(16); + for (var i = 0; i < 16; i++) { + ipad[i] = bkey[i] ^ 0x36363636; + opad[i] = bkey[i] ^ 0x5C5C5C5C; + } + var hash = binl_md5(ipad.concat(rstr2binl(data)), 512 + data.length * 8); + return binl2rstr(binl_md5(opad.concat(hash), 512 + 128)); + } + function str2rstr_utf8(input) { + var output = ""; + var i = -1; + var x, y; + while (++i < input.length) { + /* Decode utf-16 surrogate pairs */ + x = input.charCodeAt(i); + y = i + 1 < input.length ? input.charCodeAt(i + 1) : 0; + if (0xD800 <= x && x <= 0xDBFF && 0xDC00 <= y && y <= 0xDFFF) { + x = 0x10000 + ((x & 0x03FF) << 10) + (y & 0x03FF); + i++; + } + /* Encode output as utf-8 */ + if (x <= 0x7F) + output += String.fromCharCode(x); + else if (x <= 0x7FF) + output += String.fromCharCode(0xC0 | ((x >>> 6) & 0x1F), + 0x80 | (x & 0x3F)); + else if (x <= 0xFFFF) + output += String.fromCharCode(0xE0 | ((x >>> 12) & 0x0F), + 0x80 | ((x >>> 6) & 0x3F), + 0x80 | (x & 0x3F)); + else if (x <= 0x1FFFFF) + output += String.fromCharCode(0xF0 | ((x >>> 18) & 0x07), + 0x80 | ((x >>> 12) & 0x3F), + 0x80 | ((x >>> 6) & 0x3F), + 0x80 | (x & 0x3F)); + } + return output; + } + function rstr2binl(input) { + var output = Array(input.length >> 2); + for (var i = 0; i < output.length; i++) + output[i] = 0; + for (var i = 0; i < input.length * 8; i += 8) + output[i >> 5] |= (input.charCodeAt(i / 8) & 0xFF) << (i % 32); + return output; + } + function binl2rstr(input) { + var output = ""; + for (var i = 0; i < input.length * 32; i += 8) + output += String.fromCharCode((input[i >> 5] >>> (i % 32)) & 0xFF); + return output; + } + function binl_md5(x, len) { + /* append padding */ + x[len >> 5] |= 0x80 << ((len) % 32); + x[(((len + 64) >>> 9) << 4) + 14] = len; + var a = 1732584193; + var b = -271733879; + var c = -1732584194; + var d = 271733878; + for (var i = 0; i < x.length; i += 16) { + var olda = a; + var oldb = b; + var oldc = c; + var oldd = d; + a = md5_ff(a, b, c, d, x[i + 0], 7, -680876936); + d = md5_ff(d, a, b, c, x[i + 1], 12, -389564586); + c = md5_ff(c, d, a, b, x[i + 2], 17, 606105819); + b = md5_ff(b, c, d, a, x[i + 3], 22, -1044525330); + a = md5_ff(a, b, c, d, x[i + 4], 7, -176418897); + d = md5_ff(d, a, b, c, x[i + 5], 12, 1200080426); + c = md5_ff(c, d, a, b, x[i + 6], 17, -1473231341); + b = md5_ff(b, c, d, a, x[i + 7], 22, -45705983); + a = md5_ff(a, b, c, d, x[i + 8], 7, 1770035416); + d = md5_ff(d, a, b, c, x[i + 9], 12, -1958414417); + c = md5_ff(c, d, a, b, x[i + 10], 17, -42063); + b = md5_ff(b, c, d, a, x[i + 11], 22, -1990404162); + a = md5_ff(a, b, c, d, x[i + 12], 7, 1804603682); + d = md5_ff(d, a, b, c, x[i + 13], 12, -40341101); + c = md5_ff(c, d, a, b, x[i + 14], 17, -1502002290); + b = md5_ff(b, c, d, a, x[i + 15], 22, 1236535329); + a = md5_gg(a, b, c, d, x[i + 1], 5, -165796510); + d = md5_gg(d, a, b, c, x[i + 6], 9, -1069501632); + c = md5_gg(c, d, a, b, x[i + 11], 14, 643717713); + b = md5_gg(b, c, d, a, x[i + 0], 20, -373897302); + a = md5_gg(a, b, c, d, x[i + 5], 5, -701558691); + d = md5_gg(d, a, b, c, x[i + 10], 9, 38016083); + c = md5_gg(c, d, a, b, x[i + 15], 14, -660478335); + b = md5_gg(b, c, d, a, x[i + 4], 20, -405537848); + a = md5_gg(a, b, c, d, x[i + 9], 5, 568446438); + d = md5_gg(d, a, b, c, x[i + 14], 9, -1019803690); + c = md5_gg(c, d, a, b, x[i + 3], 14, -187363961); + b = md5_gg(b, c, d, a, x[i + 8], 20, 1163531501); + a = md5_gg(a, b, c, d, x[i + 13], 5, -1444681467); + d = md5_gg(d, a, b, c, x[i + 2], 9, -51403784); + c = md5_gg(c, d, a, b, x[i + 7], 14, 1735328473); + b = md5_gg(b, c, d, a, x[i + 12], 20, -1926607734); + a = md5_hh(a, b, c, d, x[i + 5], 4, -378558); + d = md5_hh(d, a, b, c, x[i + 8], 11, -2022574463); + c = md5_hh(c, d, a, b, x[i + 11], 16, 1839030562); + b = md5_hh(b, c, d, a, x[i + 14], 23, -35309556); + a = md5_hh(a, b, c, d, x[i + 1], 4, -1530992060); + d = md5_hh(d, a, b, c, x[i + 4], 11, 1272893353); + c = md5_hh(c, d, a, b, x[i + 7], 16, -155497632); + b = md5_hh(b, c, d, a, x[i + 10], 23, -1094730640); + a = md5_hh(a, b, c, d, x[i + 13], 4, 681279174); + d = md5_hh(d, a, b, c, x[i + 0], 11, -358537222); + c = md5_hh(c, d, a, b, x[i + 3], 16, -722521979); + b = md5_hh(b, c, d, a, x[i + 6], 23, 76029189); + a = md5_hh(a, b, c, d, x[i + 9], 4, -640364487); + d = md5_hh(d, a, b, c, x[i + 12], 11, -421815835); + c = md5_hh(c, d, a, b, x[i + 15], 16, 530742520); + b = md5_hh(b, c, d, a, x[i + 2], 23, -995338651); + a = md5_ii(a, b, c, d, x[i + 0], 6, -198630844); + d = md5_ii(d, a, b, c, x[i + 7], 10, 1126891415); + c = md5_ii(c, d, a, b, x[i + 14], 15, -1416354905); + b = md5_ii(b, c, d, a, x[i + 5], 21, -57434055); + a = md5_ii(a, b, c, d, x[i + 12], 6, 1700485571); + d = md5_ii(d, a, b, c, x[i + 3], 10, -1894986606); + c = md5_ii(c, d, a, b, x[i + 10], 15, -1051523); + b = md5_ii(b, c, d, a, x[i + 1], 21, -2054922799); + a = md5_ii(a, b, c, d, x[i + 8], 6, 1873313359); + d = md5_ii(d, a, b, c, x[i + 15], 10, -30611744); + c = md5_ii(c, d, a, b, x[i + 6], 15, -1560198380); + b = md5_ii(b, c, d, a, x[i + 13], 21, 1309151649); + a = md5_ii(a, b, c, d, x[i + 4], 6, -145523070); + d = md5_ii(d, a, b, c, x[i + 11], 10, -1120210379); + c = md5_ii(c, d, a, b, x[i + 2], 15, 718787259); + b = md5_ii(b, c, d, a, x[i + 9], 21, -343485551); + a = safe_add(a, olda); + b = safe_add(b, oldb); + c = safe_add(c, oldc); + d = safe_add(d, oldd); + } + return Array(a, b, c, d); + } + function md5_cmn(q, a, b, x, s, t) { + return safe_add(bit_rol(safe_add(safe_add(a, q), safe_add(x, t)), s), b); + } + function md5_ff(a, b, c, d, x, s, t) { + return md5_cmn((b & c) | ((~b) & d), a, b, x, s, t); + } + function md5_gg(a, b, c, d, x, s, t) { + return md5_cmn((b & d) | (c & (~d)), a, b, x, s, t); + } + function md5_hh(a, b, c, d, x, s, t) { + return md5_cmn(b ^ c ^ d, a, b, x, s, t); + } + function md5_ii(a, b, c, d, x, s, t) { + return md5_cmn(c ^ (b | (~d)), a, b, x, s, t); + } + function safe_add(x, y) { + var lsw = (x & 0xFFFF) + (y & 0xFFFF); + var msw = (x >> 16) + (y >> 16) + (lsw >> 16); + return (msw << 16) | (lsw & 0xFFFF); + } + function bit_rol(num, cnt) { + return (num << cnt) | (num >>> (32 - cnt)); + } + instanceProto.rstr2hex = function (input) { + try { + this.hexcase + } catch (e) { + this.hexcase = 0; + } + var hex_tab = this.hexcase ? "0123456789ABCDEF" : "0123456789abcdef"; + var output = ""; + var x; + for (var i = 0; i < input.length; i++) { + x = input.charCodeAt(i); + output += hex_tab.charAt((x >>> 4) & 0x0F) + + hex_tab.charAt(x & 0x0F); + } + return output; + } + instanceProto.getGameSite = function () { + try { + return new URL(document.referrer).hostname; + } catch (e) { + return new URL(document.location).hostname; + } + }; + function Cnds() {}; + Cnds.prototype.SiteLock = function () { + return this.SiteLock(); + }; + pluginProto.cnds = new Cnds(); + function Acts() {}; + pluginProto.acts = new Acts(); + function Exps() {}; + pluginProto.exps = new Exps(); +}()); +; +; +cr.plugins_.skymen_skinsCore = function(runtime) +{ + this.runtime = runtime; +}; +(function () +{ + var pluginProto = cr.plugins_.skymen_skinsCore.prototype; + pluginProto.Type = function(plugin) + { + this.plugin = plugin; + this.runtime = plugin.runtime; + }; + var typeProto = pluginProto.Type.prototype; + typeProto.onCreate = function() + { + }; + pluginProto.Instance = function(type) + { + this.type = type; + this.runtime = type.runtime; + }; + var instanceProto = pluginProto.Instance.prototype; + instanceProto.onCreate = function() + { + this.skins = {}; + this.lastSkin; + this.lastSubSkin; + this.curSkin; + this.curSubSkin; + this.tag = this.properties[0]; + this.instances = []; + this.init = false; + if(cr.SkymenSkinCore == undefined){ + cr.SkymenSkinCore = {} + } + cr.SkymenSkinCore[this.tag] = this; + }; + instanceProto.draw = function(ctx) + { + }; + instanceProto.drawGL = function (glw) + { + }; + instanceProto.addInstance = function (inst) + { + this.instances.push(inst); + } + function Cnds() {}; + Cnds.prototype.IsEmpty = function () + { + return Object.keys(this.skins).length === 0 && this.skins.constructor === Object; + }; + Cnds.prototype.HasSkin = function (skin) + { + return this.skins[skin] != undefined; + }; + Cnds.prototype.HasSubSkin = function (skin, subskin) + { + return this.skins[skin] != undefined && this.skins[skin][subskin] != undefined; + }; + Cnds.prototype.OnSkin = function (skin) + { + return skin == this.lastSkin; + }; + Cnds.prototype.OnSubSkin = function (skin, subskin) + { + return skin == this.lastSkin && subskin == this.lastSubskin; + }; + Cnds.prototype.OnAnySkin = function () + { + return true; + }; + Cnds.prototype.OnAnySubSkin = function (skin) + { + return skin == this.lastSkin; + }; + Cnds.prototype.OnAnySubAnySkin = function () + { + return true; + }; + instanceProto.doForEachTrigger = function (current_event) + { + this.runtime.pushCopySol(current_event.solModifiers); + current_event.retrigger(); + this.runtime.popSol(current_event.solModifiers); + }; + Cnds.prototype.ForEachSkin = function () + { + var current_event = this.runtime.getCurrentEventStack().current_event; + self = this; + Object.keys(this.skins).forEach(function (k) { + self.curSkin = k; + self.doForEachTrigger(current_event); + }) + return false; + }; + Cnds.prototype.ForEachSubSkin = function (skin) + { + var current_event = this.runtime.getCurrentEventStack().current_event; + self = this; + if(this.skins[skin] == undefined) return false; + Object.keys(this.skins[skin]).forEach(function (k) { + self.curSubSkin = k; + self.doForEachTrigger(current_event); + }) + return false; + }; + pluginProto.cnds = new Cnds(); + function Acts() {}; + Acts.prototype.AddSkin = function (obj, skin, mode, anim, subskin) + { + if(this.skins[skin] == undefined){ + this.skins[skin] = {}; + } + if(mode == 0){ + for (var i = 0; i < obj.animations.length; i++) { + var anim = obj.animations[i].name; + this.skins[skin][anim] = { + "type": obj, + "anim": anim + } + } + } + else{ + this.skins[skin][subskin] = { + "type": obj, + "anim": anim + } + } + }; + Acts.prototype.AddSubSkin = function (obj, skin, subskin, anim) + { + if(this.skins[skin] == undefined){ + this.skins[skin] = {}; + } + this.skins[skin][subskin] = { + "type": obj, + "anim": anim + } + }; + Acts.prototype.RemoveSkin = function (skin) + { + if (this.skins[skin] != undefined) { + delete this.skins[skin]; + } + }; + Acts.prototype.RemoveSubSkin = function (skin, subskin) + { + if (this.skins[skin] != undefined && this.skins[skin][subskin] != undefined) { + delete this.skins[skin][subskin]; + } + }; + Acts.prototype.Init = function () + { + if(this.init) return; + for (var i = 0; i < this.instances.length; i++) { + this.instances[i].updateSkin(); + } + this.init = true; + }; + pluginProto.acts = new Acts(); + function Exps() {}; + Exps.prototype.CurSkin = function (ret) + { + ret.set_string(this.curSkin); + }; + Exps.prototype.CurSubSkin = function (ret) + { + ret.set_string(this.curSubSkin); + }; + Exps.prototype.LastSkin = function (ret) + { + ret.set_string(this.lastSkin); + }; + Exps.prototype.LastSubSkin = function (ret) + { + ret.set_string(this.lastSubSkin); + }; + Exps.prototype.RandomSkin = function (ret) + { + var keys = Object.keys(this.skins) + var res = keys[ keys.length * Math.random() << 0]; + if(typeof res == "string") + ret.set_string(res); + else + ret.set_string(""); + }; + Exps.prototype.RandomSubSkin = function (ret,skin) + { + if(this.skins[skin]){ + var keys = Object.keys(this.skins[skin]) + var res = keys[ keys.length * Math.random() << 0]; + if (typeof res == "string") + ret.set_string(res); + else + ret.set_string(""); + } + else{ + console.warn("The skin " + skin + " doesn't exist") + ret.set_string("") + } + }; + pluginProto.exps = new Exps(); +}()); +; +; +var HowlerAudioPlayer = globalThis.HowlerAudioPlayer; +cr.plugins_.skymenhowlerjs = function (runtime) { + this.runtime = runtime; +}; +(function () { + var pluginProto = cr.plugins_.skymenhowlerjs.prototype; + pluginProto.Type = function (plugin) { + this.plugin = plugin; + this.runtime = plugin.runtime; + HowlerAudioPlayer.init(this.runtime); + }; + var typeProto = pluginProto.Type.prototype; + typeProto.onCreate = function () {}; + pluginProto.Instance = function (type) { + this.type = type; + this.runtime = type.runtime; + }; + var instanceProto = pluginProto.Instance.prototype; + instanceProto.onCreate = function () {}; + instanceProto.saveToJSON = function () {}; + instanceProto.loadFromJSON = function (o) {}; + instanceProto.onDestroy = function () {}; + instanceProto.tick = function () {}; + instanceProto.draw = function (ctx) {}; + instanceProto.drawGL = function (glw) {}; + function Cnds() {} + Cnds.prototype.IsPlaying = function (group) { + if (group.trim() === "") { + return HowlerAudioPlayer.isPlaying(); + } + return HowlerAudioPlayer.isPlaying(group); + }; + pluginProto.cnds = new Cnds(); + function Acts() {} + Acts.prototype.Play = function (file, group) { + if (group.trim() === "") { + HowlerAudioPlayer.play(file[0]); + } else { + HowlerAudioPlayer.play(file[0], group); + } + }; + Acts.prototype.PlayByName = function (file, group) { + if (group.trim() === "") { + HowlerAudioPlayer.play(file); + } else { + HowlerAudioPlayer.play(file, group); + } + }; + Acts.prototype.Stop = function (group) { + if (group.trim() === "") { + HowlerAudioPlayer.stop(); + } else { + HowlerAudioPlayer.stop(group); + } + }; + Acts.prototype.Mute = function (group) { + if (group.trim() === "") { + HowlerAudioPlayer.setMuted(true); + } else { + HowlerAudioPlayer.setMuted(true, group); + } + }; + Acts.prototype.Unmute = function (group) { + if (group.trim() === "") { + HowlerAudioPlayer.setMuted(false); + } else { + HowlerAudioPlayer.setMuted(false, group); + } + }; + Acts.prototype.Volume = function (volume, group) { + if (group.trim() === "") { + HowlerAudioPlayer.setVolume(volume); + } else { + HowlerAudioPlayer.setVolume(volume, group); + } + }; + Acts.prototype.LinearVolume = function (volume, group) { + if (group.trim() === "") { + HowlerAudioPlayer.setLinearVolume(volume); + } else { + HowlerAudioPlayer.setLinearVolume(volume, group); + } + }; + Acts.prototype.Load = function (file, group) { + if (group.trim() === "") { + HowlerAudioPlayer.load(file[0]); + } else { + HowlerAudioPlayer.load(file[0], group); + } + }; + Acts.prototype.Unload = function (file, group) { + if (group.trim() === "") { + HowlerAudioPlayer.unload(file[0]); + } else { + HowlerAudioPlayer.unload(file[0], group); + } + }; + Acts.prototype.LoadByName = function (file, group) { + if (group.trim() === "") { + HowlerAudioPlayer.load(file); + } else { + HowlerAudioPlayer.load(file, group); + } + }; + Acts.prototype.UnloadByName = function (file, group) { + if (group.trim() === "") { + HowlerAudioPlayer.unload(file); + } else { + HowlerAudioPlayer.unload(file, group); + } + }; + pluginProto.acts = new Acts(); + function Exps() {} + Exps.prototype.Volume = function (ret, group) { + if (group.trim() === "") { + ret.set_float(HowlerAudioPlayer.getVolume()); + } else { + ret.set_float(HowlerAudioPlayer.getVolume(group)); + } + }; + Exps.prototype.MasterVolume = function (ret) { + ret.set_float(HowlerAudioPlayer.getVolume(group)); + }; + Exps.prototype.LinearVolume = function (ret, group) { + if (group.trim() === "") { + ret.set_float(HowlerAudioPlayer.getLinearVolume()); + } else { + ret.set_float(HowlerAudioPlayer.getLinearVolume(group)); + } + }; + Exps.prototype.MasterVolume = function (ret) { + ret.set_float(HowlerAudioPlayer.getLinearVolume(group)); + }; + pluginProto.exps = new Exps(); +})(); +; +; +cr.behaviors.Anchor = function(runtime) +{ + this.runtime = runtime; +}; +(function () +{ + var behaviorProto = cr.behaviors.Anchor.prototype; + behaviorProto.Type = function(behavior, objtype) + { + this.behavior = behavior; + this.objtype = objtype; + this.runtime = behavior.runtime; + }; + var behtypeProto = behaviorProto.Type.prototype; + behtypeProto.onCreate = function() + { + }; + behaviorProto.Instance = function(type, inst) + { + this.type = type; + this.behavior = type.behavior; + this.inst = inst; // associated object instance to modify + this.runtime = type.runtime; + }; + var behinstProto = behaviorProto.Instance.prototype; + behinstProto.onCreate = function() + { + this.anch_left = this.properties[0]; // 0 = left, 1 = right, 2 = none + this.anch_top = this.properties[1]; // 0 = top, 1 = bottom, 2 = none + this.anch_right = this.properties[2]; // 0 = none, 1 = right + this.anch_bottom = this.properties[3]; // 0 = none, 1 = bottom + this.inst.update_bbox(); + this.xleft = this.inst.bbox.left; + this.ytop = this.inst.bbox.top; + this.xright = this.runtime.original_width - this.inst.bbox.left; + this.ybottom = this.runtime.original_height - this.inst.bbox.top; + this.rdiff = this.runtime.original_width - this.inst.bbox.right; + this.bdiff = this.runtime.original_height - this.inst.bbox.bottom; + this.enabled = (this.properties[4] !== 0); + }; + behinstProto.saveToJSON = function () + { + return { + "xleft": this.xleft, + "ytop": this.ytop, + "xright": this.xright, + "ybottom": this.ybottom, + "rdiff": this.rdiff, + "bdiff": this.bdiff, + "enabled": this.enabled + }; + }; + behinstProto.loadFromJSON = function (o) + { + this.xleft = o["xleft"]; + this.ytop = o["ytop"]; + this.xright = o["xright"]; + this.ybottom = o["ybottom"]; + this.rdiff = o["rdiff"]; + this.bdiff = o["bdiff"]; + this.enabled = o["enabled"]; + }; + behinstProto.tick = function () + { + if (!this.enabled) + return; + var n; + var layer = this.inst.layer; + var inst = this.inst; + var bbox = this.inst.bbox; + if (this.anch_left === 0) + { + inst.update_bbox(); + n = (layer.viewLeft + this.xleft) - bbox.left; + if (n !== 0) + { + inst.x += n; + inst.set_bbox_changed(); + } + } + else if (this.anch_left === 1) + { + inst.update_bbox(); + n = (layer.viewRight - this.xright) - bbox.left; + if (n !== 0) + { + inst.x += n; + inst.set_bbox_changed(); + } + } + if (this.anch_top === 0) + { + inst.update_bbox(); + n = (layer.viewTop + this.ytop) - bbox.top; + if (n !== 0) + { + inst.y += n; + inst.set_bbox_changed(); + } + } + else if (this.anch_top === 1) + { + inst.update_bbox(); + n = (layer.viewBottom - this.ybottom) - bbox.top; + if (n !== 0) + { + inst.y += n; + inst.set_bbox_changed(); + } + } + if (this.anch_right === 1) + { + inst.update_bbox(); + n = (layer.viewRight - this.rdiff) - bbox.right; + if (n !== 0) + { + inst.width += n; + if (inst.width < 0) + inst.width = 0; + inst.set_bbox_changed(); + } + } + if (this.anch_bottom === 1) + { + inst.update_bbox(); + n = (layer.viewBottom - this.bdiff) - bbox.bottom; + if (n !== 0) + { + inst.height += n; + if (inst.height < 0) + inst.height = 0; + inst.set_bbox_changed(); + } + } + }; + function Cnds() {}; + behaviorProto.cnds = new Cnds(); + function Acts() {}; + Acts.prototype.SetEnabled = function (e) + { + if (this.enabled && e === 0) + this.enabled = false; + else if (!this.enabled && e !== 0) + { + this.inst.update_bbox(); + this.xleft = this.inst.bbox.left; + this.ytop = this.inst.bbox.top; + this.xright = this.runtime.original_width - this.inst.bbox.left; + this.ybottom = this.runtime.original_height - this.inst.bbox.top; + this.rdiff = this.runtime.original_width - this.inst.bbox.right; + this.bdiff = this.runtime.original_height - this.inst.bbox.bottom; + this.enabled = true; + } + }; + behaviorProto.acts = new Acts(); + function Exps() {}; + behaviorProto.exps = new Exps(); +}()); +; +; +cr.behaviors.Bullet = function(runtime) +{ + this.runtime = runtime; +}; +(function () +{ + var behaviorProto = cr.behaviors.Bullet.prototype; + behaviorProto.Type = function(behavior, objtype) + { + this.behavior = behavior; + this.objtype = objtype; + this.runtime = behavior.runtime; + }; + var behtypeProto = behaviorProto.Type.prototype; + behtypeProto.onCreate = function() + { + }; + behaviorProto.Instance = function(type, inst) + { + this.type = type; + this.behavior = type.behavior; + this.inst = inst; // associated object instance to modify + this.runtime = type.runtime; + }; + var behinstProto = behaviorProto.Instance.prototype; + behinstProto.onCreate = function() + { + var speed = this.properties[0]; + this.acc = this.properties[1]; + this.g = this.properties[2]; + this.bounceOffSolid = (this.properties[3] !== 0); + this.setAngle = (this.properties[4] !== 0); + this.dx = Math.cos(this.inst.angle) * speed; + this.dy = Math.sin(this.inst.angle) * speed; + this.lastx = this.inst.x; + this.lasty = this.inst.y; + this.lastKnownAngle = this.inst.angle; + this.travelled = 0; + this.enabled = (this.properties[5] !== 0); + }; + behinstProto.saveToJSON = function () + { + return { + "acc": this.acc, + "g": this.g, + "dx": this.dx, + "dy": this.dy, + "lx": this.lastx, + "ly": this.lasty, + "lka": this.lastKnownAngle, + "t": this.travelled, + "e": this.enabled + }; + }; + behinstProto.loadFromJSON = function (o) + { + this.acc = o["acc"]; + this.g = o["g"]; + this.dx = o["dx"]; + this.dy = o["dy"]; + this.lastx = o["lx"]; + this.lasty = o["ly"]; + this.lastKnownAngle = o["lka"]; + this.travelled = o["t"]; + this.enabled = o["e"]; + }; + behinstProto.tick = function () + { + if (!this.enabled) + return; + var dt = this.runtime.getDt(this.inst); + var s, a; + var bounceSolid, bounceAngle; + if (this.inst.angle !== this.lastKnownAngle) + { + if (this.setAngle) + { + s = cr.distanceTo(0, 0, this.dx, this.dy); + this.dx = Math.cos(this.inst.angle) * s; + this.dy = Math.sin(this.inst.angle) * s; + } + this.lastKnownAngle = this.inst.angle; + } + if (this.acc !== 0) + { + s = cr.distanceTo(0, 0, this.dx, this.dy); + if (this.dx === 0 && this.dy === 0) + a = this.inst.angle; + else + a = cr.angleTo(0, 0, this.dx, this.dy); + s += this.acc * dt; + if (s < 0) + s = 0; + this.dx = Math.cos(a) * s; + this.dy = Math.sin(a) * s; + } + if (this.g !== 0) + this.dy += this.g * dt; + this.lastx = this.inst.x; + this.lasty = this.inst.y; + if (this.dx !== 0 || this.dy !== 0) + { + this.inst.x += this.dx * dt; + this.inst.y += this.dy * dt; + this.travelled += cr.distanceTo(0, 0, this.dx * dt, this.dy * dt) + if (this.setAngle) + { + this.inst.angle = cr.angleTo(0, 0, this.dx, this.dy); + this.inst.set_bbox_changed(); + this.lastKnownAngle = this.inst.angle; + } + this.inst.set_bbox_changed(); + if (this.bounceOffSolid) + { + bounceSolid = this.runtime.testOverlapSolid(this.inst); + if (bounceSolid) + { + this.runtime.registerCollision(this.inst, bounceSolid); + s = cr.distanceTo(0, 0, this.dx, this.dy); + bounceAngle = this.runtime.calculateSolidBounceAngle(this.inst, this.lastx, this.lasty); + this.dx = Math.cos(bounceAngle) * s; + this.dy = Math.sin(bounceAngle) * s; + this.inst.x += this.dx * dt; // move out for one tick since the object can't have spent a tick in the solid + this.inst.y += this.dy * dt; + this.inst.set_bbox_changed(); + if (this.setAngle) + { + this.inst.angle = bounceAngle; + this.lastKnownAngle = bounceAngle; + this.inst.set_bbox_changed(); + } + if (!this.runtime.pushOutSolid(this.inst, this.dx / s, this.dy / s, Math.max(s * 2.5 * dt, 30))) + this.runtime.pushOutSolidNearest(this.inst, 100); + } + } + } + }; + function Cnds() {}; + Cnds.prototype.CompareSpeed = function (cmp, s) + { + return cr.do_cmp(cr.distanceTo(0, 0, this.dx, this.dy), cmp, s); + }; + Cnds.prototype.CompareTravelled = function (cmp, d) + { + return cr.do_cmp(this.travelled, cmp, d); + }; + behaviorProto.cnds = new Cnds(); + function Acts() {}; + Acts.prototype.SetSpeed = function (s) + { + var a = cr.angleTo(0, 0, this.dx, this.dy); + this.dx = Math.cos(a) * s; + this.dy = Math.sin(a) * s; + }; + Acts.prototype.SetAcceleration = function (a) + { + this.acc = a; + }; + Acts.prototype.SetGravity = function (g) + { + this.g = g; + }; + Acts.prototype.SetAngleOfMotion = function (a) + { + a = cr.to_radians(a); + var s = cr.distanceTo(0, 0, this.dx, this.dy) + this.dx = Math.cos(a) * s; + this.dy = Math.sin(a) * s; + }; + Acts.prototype.Bounce = function (objtype) + { + if (!objtype) + return; + var otherinst = objtype.getFirstPicked(this.inst); + if (!otherinst) + return; + var dt = this.runtime.getDt(this.inst); + var s = cr.distanceTo(0, 0, this.dx, this.dy); + var bounceAngle = this.runtime.calculateSolidBounceAngle(this.inst, this.lastx, this.lasty, otherinst); + this.dx = Math.cos(bounceAngle) * s; + this.dy = Math.sin(bounceAngle) * s; + this.inst.x += this.dx * dt; // move out for one tick since the object can't have spent a tick in the solid + this.inst.y += this.dy * dt; + this.inst.set_bbox_changed(); + if (this.setAngle) + { + this.inst.angle = bounceAngle; + this.lastKnownAngle = bounceAngle; + this.inst.set_bbox_changed(); + } + if (s !== 0) // prevent divide-by-zero + { + if (this.bounceOffSolid) + { + if (!this.runtime.pushOutSolid(this.inst, this.dx / s, this.dy / s, Math.max(s * 2.5 * dt, 30))) + this.runtime.pushOutSolidNearest(this.inst, 100); + } + else + { + this.runtime.pushOut(this.inst, this.dx / s, this.dy / s, Math.max(s * 2.5 * dt, 30), otherinst) + } + } + }; + Acts.prototype.SetDistanceTravelled = function (d) + { + this.travelled = d; + }; + Acts.prototype.SetEnabled = function (en) + { + this.enabled = (en === 1); + }; + behaviorProto.acts = new Acts(); + function Exps() {}; + Exps.prototype.Speed = function (ret) + { + var s = cr.distanceTo(0, 0, this.dx, this.dy); + s = cr.round6dp(s); + ret.set_float(s); + }; + Exps.prototype.Acceleration = function (ret) + { + ret.set_float(this.acc); + }; + Exps.prototype.AngleOfMotion = function (ret) + { + ret.set_float(cr.to_degrees(cr.angleTo(0, 0, this.dx, this.dy))); + }; + Exps.prototype.DistanceTravelled = function (ret) + { + ret.set_float(this.travelled); + }; + Exps.prototype.Gravity = function (ret) + { + ret.set_float(this.g); + }; + behaviorProto.exps = new Exps(); +}()); +; +; +cr.behaviors.Fade = function(runtime) +{ + this.runtime = runtime; +}; +(function () +{ + var behaviorProto = cr.behaviors.Fade.prototype; + behaviorProto.Type = function(behavior, objtype) + { + this.behavior = behavior; + this.objtype = objtype; + this.runtime = behavior.runtime; + }; + var behtypeProto = behaviorProto.Type.prototype; + behtypeProto.onCreate = function() + { + }; + behaviorProto.Instance = function(type, inst) + { + this.type = type; + this.behavior = type.behavior; + this.inst = inst; // associated object instance to modify + this.runtime = type.runtime; + }; + var behinstProto = behaviorProto.Instance.prototype; + behinstProto.onCreate = function() + { + this.activeAtStart = this.properties[0] === 1; + this.setMaxOpacity = false; // used to retrieve maxOpacity once in first 'Start fade' action if initially inactive + this.fadeInTime = this.properties[1]; + this.waitTime = this.properties[2]; + this.fadeOutTime = this.properties[3]; + this.destroy = this.properties[4]; // 0 = no, 1 = after fade out + this.stage = this.activeAtStart ? 0 : 3; // 0 = fade in, 1 = wait, 2 = fade out, 3 = done + if (this.recycled) + this.stageTime.reset(); + else + this.stageTime = new cr.KahanAdder(); + this.maxOpacity = (this.inst.opacity ? this.inst.opacity : 1.0); + if (this.activeAtStart) + { + if (this.fadeInTime === 0) + { + this.stage = 1; + if (this.waitTime === 0) + this.stage = 2; + } + else + { + this.inst.opacity = 0; + this.runtime.redraw = true; + } + } + }; + behinstProto.saveToJSON = function () + { + return { + "fit": this.fadeInTime, + "wt": this.waitTime, + "fot": this.fadeOutTime, + "s": this.stage, + "st": this.stageTime.sum, + "mo": this.maxOpacity, + }; + }; + behinstProto.loadFromJSON = function (o) + { + this.fadeInTime = o["fit"]; + this.waitTime = o["wt"]; + this.fadeOutTime = o["fot"]; + this.stage = o["s"]; + this.stageTime.reset(); + this.stageTime.sum = o["st"]; + this.maxOpacity = o["mo"]; + }; + behinstProto.tick = function () + { + this.stageTime.add(this.runtime.getDt(this.inst)); + if (this.stage === 0) + { + this.inst.opacity = (this.stageTime.sum / this.fadeInTime) * this.maxOpacity; + this.runtime.redraw = true; + if (this.inst.opacity >= this.maxOpacity) + { + this.inst.opacity = this.maxOpacity; + this.stage = 1; // wait stage + this.stageTime.reset(); + this.runtime.trigger(cr.behaviors.Fade.prototype.cnds.OnFadeInEnd, this.inst); + } + } + if (this.stage === 1) + { + if (this.stageTime.sum >= this.waitTime) + { + this.stage = 2; // fade out stage + this.stageTime.reset(); + this.runtime.trigger(cr.behaviors.Fade.prototype.cnds.OnWaitEnd, this.inst); + } + } + if (this.stage === 2) + { + if (this.fadeOutTime !== 0) + { + this.inst.opacity = this.maxOpacity - ((this.stageTime.sum / this.fadeOutTime) * this.maxOpacity); + this.runtime.redraw = true; + if (this.inst.opacity < 0) + { + this.inst.opacity = 0; + this.stage = 3; // done + this.stageTime.reset(); + this.runtime.trigger(cr.behaviors.Fade.prototype.cnds.OnFadeOutEnd, this.inst); + if (this.destroy === 1) + this.runtime.DestroyInstance(this.inst); + } + } + } + }; + behinstProto.doStart = function () + { + this.stage = 0; + this.stageTime.reset(); + if (this.fadeInTime === 0) + { + this.stage = 1; + if (this.waitTime === 0) + this.stage = 2; + } + else + { + this.inst.opacity = 0; + this.runtime.redraw = true; + } + }; + function Cnds() {}; + Cnds.prototype.OnFadeOutEnd = function () + { + return true; + }; + Cnds.prototype.OnFadeInEnd = function () + { + return true; + }; + Cnds.prototype.OnWaitEnd = function () + { + return true; + }; + behaviorProto.cnds = new Cnds(); + function Acts() {}; + Acts.prototype.StartFade = function () + { + if (!this.activeAtStart && !this.setMaxOpacity) + { + this.maxOpacity = (this.inst.opacity ? this.inst.opacity : 1.0); + this.setMaxOpacity = true; + } + if (this.stage === 3) + this.doStart(); + }; + Acts.prototype.RestartFade = function () + { + this.doStart(); + }; + Acts.prototype.SetFadeInTime = function (t) + { + if (t < 0) + t = 0; + this.fadeInTime = t; + }; + Acts.prototype.SetWaitTime = function (t) + { + if (t < 0) + t = 0; + this.waitTime = t; + }; + Acts.prototype.SetFadeOutTime = function (t) + { + if (t < 0) + t = 0; + this.fadeOutTime = t; + }; + behaviorProto.acts = new Acts(); + function Exps() {}; + Exps.prototype.FadeInTime = function (ret) + { + ret.set_float(this.fadeInTime); + }; + Exps.prototype.WaitTime = function (ret) + { + ret.set_float(this.waitTime); + }; + Exps.prototype.FadeOutTime = function (ret) + { + ret.set_float(this.fadeOutTime); + }; + behaviorProto.exps = new Exps(); +}()); +; +; +cr.behaviors.LOS = function(runtime) +{ + this.runtime = runtime; +}; +(function () +{ + var behaviorProto = cr.behaviors.LOS.prototype; + behaviorProto.Type = function(behavior, objtype) + { + this.behavior = behavior; + this.objtype = objtype; + this.runtime = behavior.runtime; + }; + var behtypeProto = behaviorProto.Type.prototype; + behtypeProto.onCreate = function() + { + this.obstacleTypes = []; // object types to check for as obstructions + }; + behtypeProto.findLosBehavior = function (inst) + { + var i, len, b; + for (i = 0, len = inst.behavior_insts.length; i < len; ++i) + { + b = inst.behavior_insts[i]; + if (b instanceof cr.behaviors.LOS.prototype.Instance && b.type === this) + return b; + } + return null; + }; + behaviorProto.Instance = function(type, inst) + { + this.type = type; + this.behavior = type.behavior; + this.inst = inst; // associated object instance to modify + this.runtime = type.runtime; + }; + var behinstProto = behaviorProto.Instance.prototype; + behinstProto.onCreate = function() + { + this.obstacleMode = this.properties[0]; // 0 = solids, 1 = custom + this.range = this.properties[1]; + this.cone = cr.to_radians(this.properties[2]); + this.useCollisionCells = (this.properties[3] !== 0); + }; + behinstProto.onDestroy = function () + { + }; + behinstProto.saveToJSON = function () + { + var o = { + "r": this.range, + "c": this.cone, + "t": [] + }; + var i, len; + for (i = 0, len = this.type.obstacleTypes.length; i < len; i++) + { + o["t"].push(this.type.obstacleTypes[i].sid); + } + return o; + }; + behinstProto.loadFromJSON = function (o) + { + this.range = o["r"]; + this.cone = o["c"]; + cr.clearArray(this.type.obstacleTypes); + var i, len, t; + for (i = 0, len = o["t"].length; i < len; i++) + { + t = this.runtime.getObjectTypeBySid(o["t"][i]); + if (t) + this.type.obstacleTypes.push(t); + } + }; + behinstProto.tick = function () + { + }; + var candidates = []; + var tmpRect = new cr.rect(0, 0, 0, 0); + behinstProto.hasLOSto = function (x_, y_) + { + var startx = this.inst.x; + var starty = this.inst.y; + var myangle = this.inst.angle; + if (this.inst.width < 0) + myangle += Math.PI; + if (cr.distanceTo(startx, starty, x_, y_) > this.range) + return false; // too far away + var a = cr.angleTo(startx, starty, x_, y_); + if (cr.angleDiff(myangle, a) > this.cone / 2) + return false; // outside cone of view + var i, leni, rinst, solid; + tmpRect.set(startx, starty, x_, y_); + tmpRect.normalize(); + if (this.obstacleMode === 0) + { + if (this.useCollisionCells) + { + this.runtime.getSolidCollisionCandidates(this.inst.layer, tmpRect, candidates); + } + else + { + solid = this.runtime.getSolidBehavior(); + if (solid) + cr.appendArray(candidates, solid.my_instances.valuesRef()); + } + for (i = 0, leni = candidates.length; i < leni; ++i) + { + rinst = candidates[i]; + if (!rinst.extra["solidEnabled"] || rinst === this.inst) + continue; + if (this.runtime.testSegmentOverlap(startx, starty, x_, y_, rinst)) + { + cr.clearArray(candidates); + return false; + } + } + } + else + { + if (this.useCollisionCells) + { + this.runtime.getTypesCollisionCandidates(this.inst.layer, this.type.obstacleTypes, tmpRect, candidates); + } + else + { + for (i = 0, leni = this.type.obstacleTypes.length; i < leni; ++i) + { + cr.appendArray(candidates, this.type.obstacleTypes[i].instances); + } + } + for (i = 0, leni = candidates.length; i < leni; ++i) + { + rinst = candidates[i]; + if (rinst === this.inst) + continue; + if (this.runtime.testSegmentOverlap(startx, starty, x_, y_, rinst)) + { + cr.clearArray(candidates); + return false; + } + } + } + cr.clearArray(candidates); + return true; + }; + function Cnds() {}; + var ltopick = new cr.ObjectSet(); + var rtopick = new cr.ObjectSet(); + Cnds.prototype.HasLOSToObject = function (obj_) + { + if (!obj_) + return false; + var i, j, leni, lenj, linst, losbeh, rinst, pick; + var lsol = this.runtime.getCurrentConditionObjectType().getCurrentSol(); + var rsol = obj_.getCurrentSol(); + var linstances = lsol.getObjects(); + var rinstances = rsol.getObjects(); + if (lsol.select_all) + cr.clearArray(lsol.else_instances); + if (rsol.select_all) + cr.clearArray(rsol.else_instances); + var inverted = this.runtime.getCurrentCondition().inverted; + for (i = 0, leni = linstances.length; i < leni; ++i) + { + linst = linstances[i]; + pick = false; + losbeh = this.findLosBehavior(linst); +; + for (j = 0, lenj = rinstances.length; j < lenj; ++j) + { + rinst = rinstances[j]; + if (linst !== rinst && cr.xor(losbeh.hasLOSto(rinst.x, rinst.y), inverted)) + { + pick = true; + rtopick.add(rinst); + } + } + if (pick) + ltopick.add(linst); + } + var lpicks = ltopick.valuesRef(); + var rpicks = rtopick.valuesRef(); + lsol.select_all = false; + rsol.select_all = false; + cr.shallowAssignArray(lsol.instances, lpicks); + cr.shallowAssignArray(rsol.instances, rpicks); + ltopick.clear(); + rtopick.clear(); + return lsol.hasObjects(); + }; + Cnds.prototype.HasLOSToPosition = function (x_, y_) + { + return this.hasLOSto(x_, y_); + }; + behaviorProto.cnds = new Cnds(); + function Acts() {}; + Acts.prototype.SetRange = function (r) + { + this.range = r; + }; + Acts.prototype.SetCone = function (c) + { + this.cone = cr.to_radians(c); + }; + Acts.prototype.AddObstacle = function (obj_) + { + var obstacleTypes = this.type.obstacleTypes; + if (obstacleTypes.indexOf(obj_) !== -1) + return; + var i, len, t; + for (i = 0, len = obstacleTypes.length; i < len; i++) + { + t = obstacleTypes[i]; + if (t.is_family && t.members.indexOf(obj_) !== -1) + return; + } + obstacleTypes.push(obj_); + }; + Acts.prototype.ClearObstacles = function () + { + cr.clearArray(this.type.obstacleTypes); + }; + behaviorProto.acts = new Acts(); + function Exps() {}; + Exps.prototype.Range = function (ret) + { + ret.set_float(this.range); + }; + Exps.prototype.ConeOfView = function (ret) + { + ret.set_float(cr.to_degrees(this.cone)); + }; + behaviorProto.exps = new Exps(); +}()); +; +; +cr.behaviors.Persist = function(runtime) +{ + this.runtime = runtime; +}; +(function () +{ + var behaviorProto = cr.behaviors.Persist.prototype; + behaviorProto.Type = function(behavior, objtype) + { + this.behavior = behavior; + this.objtype = objtype; + this.runtime = behavior.runtime; + }; + var behtypeProto = behaviorProto.Type.prototype; + behtypeProto.onCreate = function() + { + }; + behaviorProto.Instance = function(type, inst) + { + this.type = type; + this.behavior = type.behavior; + this.inst = inst; // associated object instance to modify + this.runtime = type.runtime; + }; + var behinstProto = behaviorProto.Instance.prototype; + behinstProto.onCreate = function() + { + this.myProperty = this.properties[0]; + }; + behinstProto.onDestroy = function () + { + }; + behinstProto.tick = function () + { + var dt = this.runtime.getDt(this.inst); + }; + function Cnds() {}; + behaviorProto.cnds = new Cnds(); + function Acts() {}; + behaviorProto.acts = new Acts(); + function Exps() {}; + behaviorProto.exps = new Exps(); +}()); +; +; +cr.behaviors.Platform = function(runtime) +{ + this.runtime = runtime; +}; +(function () +{ + var behaviorProto = cr.behaviors.Platform.prototype; + behaviorProto.Type = function(behavior, objtype) + { + this.behavior = behavior; + this.objtype = objtype; + this.runtime = behavior.runtime; + }; + var behtypeProto = behaviorProto.Type.prototype; + behtypeProto.onCreate = function() + { + }; + var ANIMMODE_STOPPED = 0; + var ANIMMODE_MOVING = 1; + var ANIMMODE_JUMPING = 2; + var ANIMMODE_FALLING = 3; + behaviorProto.Instance = function(type, inst) + { + this.type = type; + this.behavior = type.behavior; + this.inst = inst; // associated object instance to modify + this.runtime = type.runtime; + this.leftkey = false; + this.rightkey = false; + this.jumpkey = false; + this.jumped = false; // prevent bunnyhopping + this.doubleJumped = false; + this.canDoubleJump = false; + this.ignoreInput = false; + this.simleft = false; + this.simright = false; + this.simjump = false; + this.lastFloorObject = null; + this.loadFloorObject = -1; + this.lastFloorX = 0; + this.lastFloorY = 0; + this.floorIsJumpthru = false; + this.animMode = ANIMMODE_STOPPED; + this.fallthrough = 0; // fall through jump-thru. >0 to disable, lasts a few ticks + this.firstTick = true; + this.dx = 0; + this.dy = 0; + }; + var behinstProto = behaviorProto.Instance.prototype; + behinstProto.updateGravity = function() + { + this.downx = Math.cos(this.ga); + this.downy = Math.sin(this.ga); + this.rightx = Math.cos(this.ga - Math.PI / 2); + this.righty = Math.sin(this.ga - Math.PI / 2); + this.downx = cr.round6dp(this.downx); + this.downy = cr.round6dp(this.downy); + this.rightx = cr.round6dp(this.rightx); + this.righty = cr.round6dp(this.righty); + this.g1 = this.g; + if (this.g < 0) + { + this.downx *= -1; + this.downy *= -1; + this.g = Math.abs(this.g); + } + }; + behinstProto.onCreate = function() + { + this.maxspeed = this.properties[0]; + this.acc = this.properties[1]; + this.dec = this.properties[2]; + this.jumpStrength = this.properties[3]; + this.g = this.properties[4]; + this.g1 = this.g; + this.maxFall = this.properties[5]; + this.enableDoubleJump = (this.properties[6] !== 0); // 0=disabled, 1=enabled + this.jumpSustain = (this.properties[7] / 1000); // convert ms to s + this.defaultControls = (this.properties[8] === 1); // 0=no, 1=yes + this.enabled = (this.properties[9] !== 0); + this.wasOnFloor = false; + this.wasOverJumpthru = this.runtime.testOverlapJumpThru(this.inst); + this.loadOverJumpthru = -1; + this.sustainTime = 0; // time of jump sustain remaining + this.ga = cr.to_radians(90); + this.updateGravity(); + var self = this; + if (this.defaultControls && !this.runtime.isDomFree) + { + jQuery(document).keydown(function(info) { + self.onKeyDown(info); + }); + jQuery(document).keyup(function(info) { + self.onKeyUp(info); + }); + } + if (!this.recycled) + { + this.myDestroyCallback = function(inst) { + self.onInstanceDestroyed(inst); + }; + } + this.runtime.addDestroyCallback(this.myDestroyCallback); + this.inst.extra["isPlatformBehavior"] = true; + }; + behinstProto.saveToJSON = function () + { + return { + "ii": this.ignoreInput, + "lfx": this.lastFloorX, + "lfy": this.lastFloorY, + "lfo": (this.lastFloorObject ? this.lastFloorObject.uid : -1), + "am": this.animMode, + "en": this.enabled, + "fall": this.fallthrough, + "ft": this.firstTick, + "dx": this.dx, + "dy": this.dy, + "ms": this.maxspeed, + "acc": this.acc, + "dec": this.dec, + "js": this.jumpStrength, + "g": this.g, + "g1": this.g1, + "mf": this.maxFall, + "wof": this.wasOnFloor, + "woj": (this.wasOverJumpthru ? this.wasOverJumpthru.uid : -1), + "ga": this.ga, + "edj": this.enableDoubleJump, + "cdj": this.canDoubleJump, + "dj": this.doubleJumped, + "sus": this.jumpSustain + }; + }; + behinstProto.loadFromJSON = function (o) + { + this.ignoreInput = o["ii"]; + this.lastFloorX = o["lfx"]; + this.lastFloorY = o["lfy"]; + this.loadFloorObject = o["lfo"]; + this.animMode = o["am"]; + this.enabled = o["en"]; + this.fallthrough = o["fall"]; + this.firstTick = o["ft"]; + this.dx = o["dx"]; + this.dy = o["dy"]; + this.maxspeed = o["ms"]; + this.acc = o["acc"]; + this.dec = o["dec"]; + this.jumpStrength = o["js"]; + this.g = o["g"]; + this.g1 = o["g1"]; + this.maxFall = o["mf"]; + this.wasOnFloor = o["wof"]; + this.loadOverJumpthru = o["woj"]; + this.ga = o["ga"]; + this.enableDoubleJump = o["edj"]; + this.canDoubleJump = o["cdj"]; + this.doubleJumped = o["dj"]; + this.jumpSustain = o["sus"]; + this.leftkey = false; + this.rightkey = false; + this.jumpkey = false; + this.jumped = false; + this.simleft = false; + this.simright = false; + this.simjump = false; + this.sustainTime = 0; + this.updateGravity(); + }; + behinstProto.afterLoad = function () + { + if (this.loadFloorObject === -1) + this.lastFloorObject = null; + else + this.lastFloorObject = this.runtime.getObjectByUID(this.loadFloorObject); + if (this.loadOverJumpthru === -1) + this.wasOverJumpthru = null; + else + this.wasOverJumpthru = this.runtime.getObjectByUID(this.loadOverJumpthru); + }; + behinstProto.onInstanceDestroyed = function (inst) + { + if (this.lastFloorObject == inst) + this.lastFloorObject = null; + }; + behinstProto.onDestroy = function () + { + this.lastFloorObject = null; + this.runtime.removeDestroyCallback(this.myDestroyCallback); + }; + behinstProto.onKeyDown = function (info) + { + switch (info.which) { + case 38: // up + info.preventDefault(); + this.jumpkey = true; + break; + case 37: // left + info.preventDefault(); + this.leftkey = true; + break; + case 39: // right + info.preventDefault(); + this.rightkey = true; + break; + } + }; + behinstProto.onKeyUp = function (info) + { + switch (info.which) { + case 38: // up + info.preventDefault(); + this.jumpkey = false; + this.jumped = false; + break; + case 37: // left + info.preventDefault(); + this.leftkey = false; + break; + case 39: // right + info.preventDefault(); + this.rightkey = false; + break; + } + }; + behinstProto.onWindowBlur = function () + { + this.leftkey = false; + this.rightkey = false; + this.jumpkey = false; + }; + behinstProto.getGDir = function () + { + if (this.g < 0) + return -1; + else + return 1; + }; + behinstProto.isOnFloor = function () + { + var ret = null; + var ret2 = null; + var i, len, j; + var oldx = this.inst.x; + var oldy = this.inst.y; + this.inst.x += this.downx; + this.inst.y += this.downy; + this.inst.set_bbox_changed(); + if (this.lastFloorObject && this.runtime.testOverlap(this.inst, this.lastFloorObject) && + (!this.runtime.typeHasBehavior(this.lastFloorObject.type, cr.behaviors.solid) || this.lastFloorObject.extra["solidEnabled"])) + { + this.inst.x = oldx; + this.inst.y = oldy; + this.inst.set_bbox_changed(); + return this.lastFloorObject; + } + else + { + ret = this.runtime.testOverlapSolid(this.inst); + if (!ret && this.fallthrough === 0) + ret2 = this.runtime.testOverlapJumpThru(this.inst, true); + this.inst.x = oldx; + this.inst.y = oldy; + this.inst.set_bbox_changed(); + if (ret) // was overlapping solid + { + if (this.runtime.testOverlap(this.inst, ret)) + return null; + else + { + this.floorIsJumpthru = false; + return ret; + } + } + if (ret2 && ret2.length) + { + for (i = 0, j = 0, len = ret2.length; i < len; i++) + { + ret2[j] = ret2[i]; + if (!this.runtime.testOverlap(this.inst, ret2[i])) + j++; + } + if (j >= 1) + { + this.floorIsJumpthru = true; + return ret2[0]; + } + } + return null; + } + }; + behinstProto.tick = function () + { + }; + behinstProto.posttick = function () + { + var dt = this.runtime.getDt(this.inst); + var mx, my, obstacle, mag, allover, i, len, j, oldx, oldy; + if (!this.jumpkey && !this.simjump) + this.jumped = false; + var left = this.leftkey || this.simleft; + var right = this.rightkey || this.simright; + var jumpkey = (this.jumpkey || this.simjump); + var jump = jumpkey && !this.jumped; + this.simleft = false; + this.simright = false; + this.simjump = false; + if (!this.enabled) + return; + if (this.ignoreInput) + { + left = false; + right = false; + jumpkey = false; + jump = false; + } + if (!jumpkey) + this.sustainTime = 0; + var lastFloor = this.lastFloorObject; + var floor_moved = false; + if (this.firstTick) + { + if (this.runtime.testOverlapSolid(this.inst) || this.runtime.testOverlapJumpThru(this.inst)) + { + this.runtime.pushOutSolid(this.inst, -this.downx, -this.downy, 4, true); + } + this.firstTick = false; + } + if (lastFloor && this.dy === 0 && (lastFloor.y !== this.lastFloorY || lastFloor.x !== this.lastFloorX)) + { + mx = (lastFloor.x - this.lastFloorX); + my = (lastFloor.y - this.lastFloorY); + this.inst.x += mx; + this.inst.y += my; + this.inst.set_bbox_changed(); + this.lastFloorX = lastFloor.x; + this.lastFloorY = lastFloor.y; + floor_moved = true; + if (this.runtime.testOverlapSolid(this.inst)) + { + this.runtime.pushOutSolid(this.inst, -mx, -my, Math.sqrt(mx * mx + my * my) * 2.5); + } + } + var floor_ = this.isOnFloor(); + var collobj = this.runtime.testOverlapSolid(this.inst); + if (collobj) + { + var instWidth = Math.abs(this.inst.width); + var instHeight = Math.abs(this.inst.height); + if (this.inst.extra["inputPredicted"]) + { + this.runtime.pushOutSolid(this.inst, -this.downx, -this.downy, 10, false); + } + else if (this.runtime.pushOutSolidAxis(this.inst, -this.downx, -this.downy, instHeight / 8)) + { + this.runtime.registerCollision(this.inst, collobj); + } + else if (this.runtime.pushOutSolidAxis(this.inst, this.rightx, this.righty, instWidth / 2)) + { + this.runtime.registerCollision(this.inst, collobj); + } + else if (this.runtime.pushOutSolidAxis(this.inst, this.downx, this.downy, instHeight / 2)) + { + this.runtime.registerCollision(this.inst, collobj); + } + else if (this.runtime.pushOutSolidNearest(this.inst, Math.max(instWidth, instHeight) / 2)) + { + this.runtime.registerCollision(this.inst, collobj); + } + else + return; + } + if (floor_) + { + this.doubleJumped = false; // reset double jump flags for next jump + this.canDoubleJump = false; + if (this.dy > 0) + { + if (!this.wasOnFloor) + { + this.runtime.pushInFractional(this.inst, -this.downx, -this.downy, floor_, 16); + this.wasOnFloor = true; + } + this.dy = 0; + } + if (lastFloor != floor_) + { + this.lastFloorObject = floor_; + this.lastFloorX = floor_.x; + this.lastFloorY = floor_.y; + this.runtime.registerCollision(this.inst, floor_); + } + else if (floor_moved) + { + collobj = this.runtime.testOverlapSolid(this.inst); + if (collobj) + { + this.runtime.registerCollision(this.inst, collobj); + if (mx !== 0) + { + if (mx > 0) + this.runtime.pushOutSolid(this.inst, -this.rightx, -this.righty); + else + this.runtime.pushOutSolid(this.inst, this.rightx, this.righty); + } + this.runtime.pushOutSolid(this.inst, -this.downx, -this.downy); + } + } + } + else + { + if (!jumpkey) + this.canDoubleJump = true; + } + if ((floor_ && jump) || (!floor_ && this.enableDoubleJump && jumpkey && this.canDoubleJump && !this.doubleJumped)) + { + oldx = this.inst.x; + oldy = this.inst.y; + this.inst.x -= this.downx; + this.inst.y -= this.downy; + this.inst.set_bbox_changed(); + if (!this.runtime.testOverlapSolid(this.inst)) + { + this.sustainTime = this.jumpSustain; + this.runtime.trigger(cr.behaviors.Platform.prototype.cnds.OnJump, this.inst); + this.animMode = ANIMMODE_JUMPING; + this.dy = -this.jumpStrength; + jump = true; // set in case is double jump + if (floor_) + this.jumped = true; + else + this.doubleJumped = true; + } + else + jump = false; + this.inst.x = oldx; + this.inst.y = oldy; + this.inst.set_bbox_changed(); + } + if (!floor_) + { + if (jumpkey && this.sustainTime > 0) + { + this.dy = -this.jumpStrength; + this.sustainTime -= dt; + } + else + { + this.lastFloorObject = null; + this.dy += this.g * dt; + if (this.dy > this.maxFall) + this.dy = this.maxFall; + } + if (jump) + this.jumped = true; + } + this.wasOnFloor = !!floor_; + if (left == right) // both up or both down + { + if (this.dx < 0) + { + this.dx += this.dec * dt; + if (this.dx > 0) + this.dx = 0; + } + else if (this.dx > 0) + { + this.dx -= this.dec * dt; + if (this.dx < 0) + this.dx = 0; + } + } + if (left && !right) + { + if (this.dx > 0) + this.dx -= (this.acc + this.dec) * dt; + else + this.dx -= this.acc * dt; + } + if (right && !left) + { + if (this.dx < 0) + this.dx += (this.acc + this.dec) * dt; + else + this.dx += this.acc * dt; + } + if (this.dx > this.maxspeed) + this.dx = this.maxspeed; + else if (this.dx < -this.maxspeed) + this.dx = -this.maxspeed; + var landed = false; + if (this.dx !== 0) + { + oldx = this.inst.x; + oldy = this.inst.y; + mx = this.dx * dt * this.rightx; + my = this.dx * dt * this.righty; + this.inst.x += this.rightx * (this.dx > 1 ? 1 : -1) - this.downx; + this.inst.y += this.righty * (this.dx > 1 ? 1 : -1) - this.downy; + this.inst.set_bbox_changed(); + var is_jumpthru = false; + var slope_too_steep = this.runtime.testOverlapSolid(this.inst); + /* + if (!slope_too_steep && floor_) + { + slope_too_steep = this.runtime.testOverlapJumpThru(this.inst); + is_jumpthru = true; + if (slope_too_steep) + { + this.inst.x = oldx; + this.inst.y = oldy; + this.inst.set_bbox_changed(); + if (this.runtime.testOverlap(this.inst, slope_too_steep)) + { + slope_too_steep = null; + is_jumpthru = false; + } + } + } + */ + this.inst.x = oldx + mx; + this.inst.y = oldy + my; + this.inst.set_bbox_changed(); + obstacle = this.runtime.testOverlapSolid(this.inst); + if (!obstacle && floor_) + { + obstacle = this.runtime.testOverlapJumpThru(this.inst); + if (obstacle) + { + this.inst.x = oldx; + this.inst.y = oldy; + this.inst.set_bbox_changed(); + if (this.runtime.testOverlap(this.inst, obstacle)) + { + obstacle = null; + is_jumpthru = false; + } + else + is_jumpthru = true; + this.inst.x = oldx + mx; + this.inst.y = oldy + my; + this.inst.set_bbox_changed(); + } + } + if (obstacle) + { + var push_dist = Math.abs(this.dx * dt) + 2; + if (slope_too_steep || !this.runtime.pushOutSolid(this.inst, -this.downx, -this.downy, push_dist, is_jumpthru, obstacle)) + { + this.runtime.registerCollision(this.inst, obstacle); + push_dist = Math.max(Math.abs(this.dx * dt * 2.5), 30); + if (!this.runtime.pushOutSolid(this.inst, this.rightx * (this.dx < 0 ? 1 : -1), this.righty * (this.dx < 0 ? 1 : -1), push_dist, false)) + { + this.inst.x = oldx; + this.inst.y = oldy; + this.inst.set_bbox_changed(); + } + else if (floor_ && !is_jumpthru && !this.floorIsJumpthru) + { + oldx = this.inst.x; + oldy = this.inst.y; + this.inst.x += this.downx; + this.inst.y += this.downy; + if (this.runtime.testOverlapSolid(this.inst)) + { + if (!this.runtime.pushOutSolid(this.inst, -this.downx, -this.downy, 3, false)) + { + this.inst.x = oldx; + this.inst.y = oldy; + this.inst.set_bbox_changed(); + } + } + else + { + this.inst.x = oldx; + this.inst.y = oldy; + this.inst.set_bbox_changed(); + } + } + if (!is_jumpthru) + this.dx = 0; // stop + } + else if (!slope_too_steep && !jump && (Math.abs(this.dy) < Math.abs(this.jumpStrength / 4))) + { + this.dy = 0; + if (!floor_) + landed = true; + } + } + else + { + var newfloor = this.isOnFloor(); + if (floor_ && !newfloor) + { + mag = Math.ceil(Math.abs(this.dx * dt)) + 2; + oldx = this.inst.x; + oldy = this.inst.y; + this.inst.x += this.downx * mag; + this.inst.y += this.downy * mag; + this.inst.set_bbox_changed(); + if (this.runtime.testOverlapSolid(this.inst) || this.runtime.testOverlapJumpThru(this.inst)) + this.runtime.pushOutSolid(this.inst, -this.downx, -this.downy, mag + 2, true); + else + { + this.inst.x = oldx; + this.inst.y = oldy; + this.inst.set_bbox_changed(); + } + } + else if (newfloor) + { + if (!floor_ && this.floorIsJumpthru) + { + this.lastFloorObject = newfloor; + this.lastFloorX = newfloor.x; + this.lastFloorY = newfloor.y; + this.dy = 0; + landed = true; + } + if (this.dy === 0) + { + this.runtime.pushInFractional(this.inst, -this.downx, -this.downy, newfloor, 16); + } + } + } + } + if (this.dy !== 0) + { + oldx = this.inst.x; + oldy = this.inst.y; + this.inst.x += this.dy * dt * this.downx; + this.inst.y += this.dy * dt * this.downy; + var newx = this.inst.x; + var newy = this.inst.y; + this.inst.set_bbox_changed(); + collobj = this.runtime.testOverlapSolid(this.inst); + var fell_on_jumpthru = false; + if (!collobj && (this.dy > 0) && !floor_) + { + allover = this.fallthrough > 0 ? null : this.runtime.testOverlapJumpThru(this.inst, true); + if (allover && allover.length) + { + if (this.wasOverJumpthru) + { + this.inst.x = oldx; + this.inst.y = oldy; + this.inst.set_bbox_changed(); + for (i = 0, j = 0, len = allover.length; i < len; i++) + { + allover[j] = allover[i]; + if (!this.runtime.testOverlap(this.inst, allover[i])) + j++; + } + allover.length = j; + this.inst.x = newx; + this.inst.y = newy; + this.inst.set_bbox_changed(); + } + if (allover.length >= 1) + collobj = allover[0]; + } + fell_on_jumpthru = !!collobj; + } + if (collobj) + { + this.runtime.registerCollision(this.inst, collobj); + this.sustainTime = 0; + var push_dist = (fell_on_jumpthru ? Math.abs(this.dy * dt * 2.5 + 10) : Math.max(Math.abs(this.dy * dt * 2.5 + 10), 30)); + if (!this.runtime.pushOutSolid(this.inst, this.downx * (this.dy < 0 ? 1 : -1), this.downy * (this.dy < 0 ? 1 : -1), push_dist, fell_on_jumpthru, collobj)) + { + this.inst.x = oldx; + this.inst.y = oldy; + this.inst.set_bbox_changed(); + this.wasOnFloor = true; // prevent adjustment for unexpected floor landings + if (!fell_on_jumpthru) + this.dy = 0; // stop + } + else + { + this.lastFloorObject = collobj; + this.lastFloorX = collobj.x; + this.lastFloorY = collobj.y; + this.floorIsJumpthru = fell_on_jumpthru; + if (fell_on_jumpthru) + landed = true; + this.dy = 0; // stop + } + } + } + if (this.animMode !== ANIMMODE_FALLING && this.dy > 0 && !floor_) + { + this.runtime.trigger(cr.behaviors.Platform.prototype.cnds.OnFall, this.inst); + this.animMode = ANIMMODE_FALLING; + } + if ((floor_ || landed) && this.dy >= 0) + { + if (this.animMode === ANIMMODE_FALLING || landed || (jump && this.dy === 0)) + { + this.runtime.trigger(cr.behaviors.Platform.prototype.cnds.OnLand, this.inst); + if (this.dx === 0 && this.dy === 0) + this.animMode = ANIMMODE_STOPPED; + else + this.animMode = ANIMMODE_MOVING; + } + else + { + if (this.animMode !== ANIMMODE_STOPPED && this.dx === 0 && this.dy === 0) + { + this.runtime.trigger(cr.behaviors.Platform.prototype.cnds.OnStop, this.inst); + this.animMode = ANIMMODE_STOPPED; + } + if (this.animMode !== ANIMMODE_MOVING && (this.dx !== 0 || this.dy !== 0) && !jump) + { + this.runtime.trigger(cr.behaviors.Platform.prototype.cnds.OnMove, this.inst); + this.animMode = ANIMMODE_MOVING; + } + } + } + if (this.fallthrough > 0) + this.fallthrough--; + this.wasOverJumpthru = this.runtime.testOverlapJumpThru(this.inst); + }; + function Cnds() {}; + Cnds.prototype.IsMoving = function () + { + return this.dx !== 0 || this.dy !== 0; + }; + Cnds.prototype.CompareSpeed = function (cmp, s) + { + var speed = Math.sqrt(this.dx * this.dx + this.dy * this.dy); + return cr.do_cmp(speed, cmp, s); + }; + Cnds.prototype.IsOnFloor = function () + { + if (this.dy !== 0) + return false; + var ret = null; + var ret2 = null; + var i, len, j; + var oldx = this.inst.x; + var oldy = this.inst.y; + this.inst.x += this.downx; + this.inst.y += this.downy; + this.inst.set_bbox_changed(); + ret = this.runtime.testOverlapSolid(this.inst); + if (!ret && this.fallthrough === 0) + ret2 = this.runtime.testOverlapJumpThru(this.inst, true); + this.inst.x = oldx; + this.inst.y = oldy; + this.inst.set_bbox_changed(); + if (ret) // was overlapping solid + { + return !this.runtime.testOverlap(this.inst, ret); + } + if (ret2 && ret2.length) + { + for (i = 0, j = 0, len = ret2.length; i < len; i++) + { + ret2[j] = ret2[i]; + if (!this.runtime.testOverlap(this.inst, ret2[i])) + j++; + } + if (j >= 1) + return true; + } + return false; + }; + Cnds.prototype.IsByWall = function (side) + { + var ret = false; + var oldx = this.inst.x; + var oldy = this.inst.y; + if (side === 0) // left + { + this.inst.x -= this.rightx * 2; + this.inst.y -= this.righty * 2; + } + else + { + this.inst.x += this.rightx * 2; + this.inst.y += this.righty * 2; + } + this.inst.set_bbox_changed(); + if (!this.runtime.testOverlapSolid(this.inst)) + { + this.inst.x = oldx; + this.inst.y = oldy; + this.inst.set_bbox_changed(); + return false; + } + this.inst.x -= this.downx * 3; + this.inst.y -= this.downy * 3; + this.inst.set_bbox_changed(); + ret = this.runtime.testOverlapSolid(this.inst); + this.inst.x = oldx; + this.inst.y = oldy; + this.inst.set_bbox_changed(); + return ret; + }; + Cnds.prototype.IsJumping = function () + { + return this.dy < 0; + }; + Cnds.prototype.IsFalling = function () + { + return this.dy > 0; + }; + Cnds.prototype.OnJump = function () + { + return true; + }; + Cnds.prototype.OnFall = function () + { + return true; + }; + Cnds.prototype.OnStop = function () + { + return true; + }; + Cnds.prototype.OnMove = function () + { + return true; + }; + Cnds.prototype.OnLand = function () + { + return true; + }; + Cnds.prototype.IsDoubleJumpEnabled = function () + { + return this.enableDoubleJump; + }; + behaviorProto.cnds = new Cnds(); + function Acts() {}; + Acts.prototype.SetIgnoreInput = function (ignoring) + { + this.ignoreInput = ignoring; + }; + Acts.prototype.SetMaxSpeed = function (maxspeed) + { + this.maxspeed = maxspeed; + if (this.maxspeed < 0) + this.maxspeed = 0; + }; + Acts.prototype.SetAcceleration = function (acc) + { + this.acc = acc; + if (this.acc < 0) + this.acc = 0; + }; + Acts.prototype.SetDeceleration = function (dec) + { + this.dec = dec; + if (this.dec < 0) + this.dec = 0; + }; + Acts.prototype.SetJumpStrength = function (js) + { + this.jumpStrength = js; + if (this.jumpStrength < 0) + this.jumpStrength = 0; + }; + Acts.prototype.SetGravity = function (grav) + { + if (this.g1 === grav) + return; // no change + this.g = grav; + this.updateGravity(); + if (this.runtime.testOverlapSolid(this.inst)) + { + this.runtime.pushOutSolid(this.inst, this.downx, this.downy, 10); + this.inst.x += this.downx * 2; + this.inst.y += this.downy * 2; + this.inst.set_bbox_changed(); + } + this.lastFloorObject = null; + }; + Acts.prototype.SetMaxFallSpeed = function (mfs) + { + this.maxFall = mfs; + if (this.maxFall < 0) + this.maxFall = 0; + }; + Acts.prototype.SimulateControl = function (ctrl) + { + switch (ctrl) { + case 0: this.simleft = true; break; + case 1: this.simright = true; break; + case 2: this.simjump = true; break; + } + }; + Acts.prototype.SetVectorX = function (vx) + { + this.dx = vx; + }; + Acts.prototype.SetVectorY = function (vy) + { + this.dy = vy; + }; + Acts.prototype.SetGravityAngle = function (a) + { + a = cr.to_radians(a); + a = cr.clamp_angle(a); + if (this.ga === a) + return; // no change + this.ga = a; + this.updateGravity(); + this.lastFloorObject = null; + }; + Acts.prototype.SetEnabled = function (en) + { + if (this.enabled !== (en === 1)) + { + this.enabled = (en === 1); + if (!this.enabled) + this.lastFloorObject = null; + } + }; + Acts.prototype.FallThrough = function () + { + var oldx = this.inst.x; + var oldy = this.inst.y; + this.inst.x += this.downx; + this.inst.y += this.downy; + this.inst.set_bbox_changed(); + var overlaps = this.runtime.testOverlapJumpThru(this.inst, false); + this.inst.x = oldx; + this.inst.y = oldy; + this.inst.set_bbox_changed(); + if (!overlaps) + return; + this.fallthrough = 3; // disable jumpthrus for 3 ticks (1 doesn't do it, 2 does, 3 to be on safe side) + this.lastFloorObject = null; + }; + Acts.prototype.SetDoubleJumpEnabled = function (e) + { + this.enableDoubleJump = (e !== 0); + }; + Acts.prototype.SetJumpSustain = function (s) + { + this.jumpSustain = s / 1000; // convert to ms + }; + behaviorProto.acts = new Acts(); + function Exps() {}; + Exps.prototype.Speed = function (ret) + { + ret.set_float(Math.sqrt(this.dx * this.dx + this.dy * this.dy)); + }; + Exps.prototype.MaxSpeed = function (ret) + { + ret.set_float(this.maxspeed); + }; + Exps.prototype.Acceleration = function (ret) + { + ret.set_float(this.acc); + }; + Exps.prototype.Deceleration = function (ret) + { + ret.set_float(this.dec); + }; + Exps.prototype.JumpStrength = function (ret) + { + ret.set_float(this.jumpStrength); + }; + Exps.prototype.Gravity = function (ret) + { + ret.set_float(this.g); + }; + Exps.prototype.GravityAngle = function (ret) + { + ret.set_float(cr.to_degrees(this.ga)); + }; + Exps.prototype.MaxFallSpeed = function (ret) + { + ret.set_float(this.maxFall); + }; + Exps.prototype.MovingAngle = function (ret) + { + ret.set_float(cr.to_degrees(Math.atan2(this.dy, this.dx))); + }; + Exps.prototype.VectorX = function (ret) + { + ret.set_float(this.dx); + }; + Exps.prototype.VectorY = function (ret) + { + ret.set_float(this.dy); + }; + Exps.prototype.JumpSustain = function (ret) + { + ret.set_float(this.jumpSustain * 1000); // convert back to ms + }; + behaviorProto.exps = new Exps(); +}()); +; +; +cr.behaviors.Rex_Zigzag = function (runtime) { + this.runtime = runtime; +}; +(function () { + var behaviorProto = cr.behaviors.Rex_Zigzag.prototype; + behaviorProto.Type = function (behavior, objtype) { + this.behavior = behavior; + this.objtype = objtype; + this.runtime = behavior.runtime; + }; + var behtypeProto = behaviorProto.Type.prototype; + behtypeProto.onCreate = function () { + }; + behaviorProto.Instance = function (type, inst) { + this.type = type; + this.behavior = type.behavior; + this.inst = inst; // associated object instance to modify + this.runtime = type.runtime; + }; + var behinstProto = behaviorProto.Instance.prototype; + var transferCmd = function (name, param) { + switch (name) { + case "F": + name = "M"; // move + break; + case "B": + name = "M"; // move + param = -param; + break; + case "R": + name = "R"; // rotate + break; + case "L": + name = "R"; // rotate + param = -param; + break; + case "W": + break; + default: + return null; // no matched command + break; + } + return ({ + "cmd": name, + "param": param + }); + }; + var parseSpeed = function (speedString) { + var newSpeedValue = (speedString != "") ? + eval("(" + speedString + ")") : null; + return newSpeedValue; + }; + var parsingRresult = [null, null]; + var parseCmd1 = function (cmd) // split cmd string and speed setting + { + var startIndex = cmd.indexOf("["); + var retCmd; + var speedString; + if (startIndex != (-1)) { + speedString = cmd.slice(startIndex); + retCmd = cmd.slice(0, startIndex); + } else { + speedString = ""; + retCmd = cmd; + } + parsingRresult[0] = retCmd; + parsingRresult[1] = speedString; + return parsingRresult; + }; + var parseCmdString = function (cmdString) { + var ret_cmds = []; + var cmds = cmdString.split(/;|\n/); + var i; + var cmd_length = cmds.length; + var cmd, cmd_slices, cmd_name, cmd_param, cmd_parsed; + var tmp; + for (i = 0; i < cmd_length; i++) { + tmp = parseCmd1(cmds[i]); + cmd = tmp[0]; + cmd = cmd.replace(/(^\s*)|(\s*$)/g, ""); + cmd = cmd.replace(/(\s+)/g, " "); + cmd_slices = cmd.split(" "); + if (cmd_slices.length == 2) { + cmd_name = cmd_slices[0].toUpperCase(); + cmd_param = parseFloat(cmd_slices[1]); + cmd_parsed = transferCmd(cmd_name, cmd_param); + if (cmd_parsed) { + cmd_parsed["speed"] = parseSpeed(tmp[1]); + ret_cmds.push(cmd_parsed); + } else { +; + continue; + } + } else { +; + continue; + } + } + return ret_cmds; + }; + behinstProto.onCreate = function () { + this.activated = this.properties[0]; + this.isRun = (this.properties[1] == 1); + var isRotatable = (this.properties[2] == 1); + var preciseMode = (this.properties[12] == 1); + var continuedMode = (this.properties[13] == 1); + var absoluteMode = (this.properties[14] == 1); + this.currentCmd = null; + this.inst.xOffset = 0; + this.inst.yOffset = 0; + this.isMyCall = false; + var initAngle = (isRotatable) ? + this.inst.angle : + cr.to_clamped_radians(this.properties[11]); + this.inst.angleOffset = initAngle; + if (!this.recycled) { + this.positionData = { + "x": 0, + "y": 0, + "a": 0 + }; + } + this.positionData["x"] = absoluteMode ? 0 : this.inst.x; + this.positionData["y"] = absoluteMode ? 0 : this.inst.y; + this.positionData["a"] = initAngle; + if (!this.recycled) { + this.CmdQueue = new CmdQueue(this.properties[3]); + } else { + this.CmdQueue.Init(this.properties[3]); + } + if (!this.recycled) { + this.CmdMove = new CmdMoveKlass(this.inst, + this.properties[5], + this.properties[6], + this.properties[7], + preciseMode, + continuedMode, + absoluteMode); + } else { + this.CmdMove.Init(this.inst, + this.properties[5], + this.properties[6], + this.properties[7], + preciseMode, + continuedMode, + absoluteMode); + } + if (!this.recycled) { + this.CmdRotate = new CmdRotateKlass(this.inst, + isRotatable, + this.properties[8], + this.properties[9], + this.properties[10], + preciseMode, + continuedMode, + absoluteMode); + } else { + this.CmdRotate.Init(this.inst, + isRotatable, + this.properties[8], + this.properties[9], + this.properties[10], + preciseMode, + continuedMode, + absoluteMode); + } + if (!this.recycled) { + this.CmdWait = new CmdWaitKlass(continuedMode); + } else { + this.CmdWait.Init(continuedMode); + } + if (!this.recycled) { + this.cmdMap = { + "M": this.CmdMove, + "R": this.CmdRotate, + "W": this.CmdWait + }; + } + this.AddCommandString(this.properties[4]); + }; + behinstProto.tick = function () { + if ((this.activated == 0) || (!this.isRun)) + return; + var dt = this.runtime.getDt(this.inst); + var cmd; + while (dt) { + if (this.currentCmd == null) // try to get new cmd + { + this.currentCmd = this.CmdQueue.GetCmd(); + if (this.currentCmd != null) { + cmd = this.cmdMap[this.currentCmd["cmd"]]; + cmd.CmdInit(this.positionData, this.currentCmd["param"], this.currentCmd["speed"]); + this.isMyCall = true; + this.runtime.trigger(cr.behaviors.Rex_Zigzag.prototype.cnds.OnCmdStart, this.inst); + this.isMyCall = false; + } else { + this.isRun = false; + this.isMyCall = true; + this.runtime.trigger(cr.behaviors.Rex_Zigzag.prototype.cnds.OnCmdQueueFinish, this.inst); + this.isMyCall = false; + break; + } + } else { + cmd = this.cmdMap[this.currentCmd["cmd"]]; + } + dt = cmd.Tick(dt); + if (cmd.isDone) { + this.isMyCall = true; + this.runtime.trigger(cr.behaviors.Rex_Zigzag.prototype.cnds.OnCmdFinish, this.inst); + this.isMyCall = false; + this.currentCmd = null; + } + } + }; + behinstProto.AddCommand = function (cmd, param) { + this.CmdQueue.Push(transferCmd(cmd, param)); + }; + behinstProto.AddCommandString = function (cmdString) { + if (cmdString != "") + this.CmdQueue.PushList(parseCmdString(cmdString)); + }; + behinstProto.saveToJSON = function () { + return { + "en": this.activated, + "ir": this.isRun, + "ps": this.positionData, + "cq": this.CmdQueue.saveToJSON(), + "cc": this.currentCmd, + "cm": this.CmdMove.saveToJSON(), + "cr": this.CmdRotate.saveToJSON(), + "cw": this.CmdWait.saveToJSON(), + }; + }; + behinstProto.loadFromJSON = function (o) { + this.activated = o["en"]; + this.isRun = o["ir"]; + this.positionData = o["ps"]; + this.CmdQueue.loadFromJSON(o["cq"]); + this.currentCmd = o["cc"]; + this.CmdMove.loadFromJSON(o["cm"]); + this.CmdRotate.loadFromJSON(o["cr"]); + this.CmdWait.loadFromJSON(o["cw"]); + if (this.currentCmd != null) // link to cmd object + { + var cmd = this.cmdMap[this.currentCmd["cmd"]]; + cmd.target = this.positionData; + } + }; + function Cnds() {}; + behaviorProto.cnds = new Cnds(); + Cnds.prototype.CompareMovSpeed = function (cmp, s) { + return cr.do_cmp(this.CmdMove.currentSpeed, cmp, s); + }; + Cnds.prototype.CompareRotSpeed = function (cmp, s) { + return cr.do_cmp(this.CmdRotate.currentSpeed, cmp, s); + }; + var isValidCmd = function (currentCmd, _cmd) { + if (currentCmd == null) + return false; + var ret; + switch (_cmd) { + case 0: //"F" + ret = ((currentCmd["cmd"] == "M") && (currentCmd["param"] >= 0)); + break; + case 1: //"B" + ret = ((currentCmd["cmd"] == "M") && (currentCmd["param"] < 0)); + break; + case 2: //"R" + ret = ((currentCmd["cmd"] == "R") && (currentCmd["param"] >= 0)); + break; + case 3: //"L" + ret = ((currentCmd["cmd"] == "R") && (currentCmd["param"] < 0)); + break; + case 4: //"W" + ret = (currentCmd["cmd"] == "W"); + break; + default: // any + ret = true; + } + return ret; + } + Cnds.prototype.IsCmd = function (_cmd) { + return isValidCmd(this.currentCmd, _cmd); + }; + Cnds.prototype.OnCmdQueueFinish = function () { + return (this.isMyCall); + }; + Cnds.prototype.OnCmdStart = function (_cmd) { + return (isValidCmd(this.currentCmd, _cmd) && this.isMyCall); + }; + Cnds.prototype.OnCmdFinish = function (_cmd) { + return (isValidCmd(this.currentCmd, _cmd) && this.isMyCall); + }; + function Acts() {}; + behaviorProto.acts = new Acts(); + Acts.prototype.SetActivated = function (s) { + this.activated = s; + }; + Acts.prototype.Start = function () { + this.currentCmd = null; + this.isRun = true; + this.CmdQueue.Reset(); + this.positionData["x"] = this.CmdMove.absoluteMode ? 0 : this.inst.x; + this.positionData["y"] = this.CmdMove.absoluteMode ? 0 : this.inst.y; + if (this.CmdRotate.rotatable) + this.positionData["a"] = this.inst.angle; + }; + Acts.prototype.Stop = function () { + this.currentCmd = null; + this.isRun = false; + }; + Acts.prototype.SetMaxMovSpeed = function (s) { + this.CmdMove.move["max"] = s; + }; + Acts.prototype.SetMovAcceleration = function (s) { + this.CmdMove.move["acc"] = s; + }; + Acts.prototype.SetMovDeceleration = function (s) { + this.CmdMove.move["dec"] = s; + }; + Acts.prototype.SetMaxRotSpeed = function (s) { + this.CmdRotate.move["max"] = s; + }; + Acts.prototype.SetRotAcceleration = function (s) { + this.CmdRotate.move["acc"] = s; + }; + Acts.prototype.SetRotDeceleration = function (s) { + this.CmdRotate.move["dec"] = s; + }; + Acts.prototype.SetRepeatCount = function (s) { + this.CmdQueue.repeatCount = s; + this.CmdQueue.repeatCountSave = s; + }; + Acts.prototype.CleanCmdQueue = function () { + this.CmdQueue.CleanAll(); + }; + var index2NameMap = ["F", "B", "R", "L", "W"]; + Acts.prototype.AddCmd = function (_cmd, param) { + this.AddCommand(index2NameMap[_cmd], param); + }; + Acts.prototype.AddCmdString = function (cmdString) { + this.AddCommandString(cmdString); + }; + Acts.prototype.SetRotatable = function (s) { + this.CmdRotate.rotatable = (s == 1); + }; + Acts.prototype.SetMovingAngle = function (s) { + var _angle = cr.to_clamped_radians(s); + if (this.CmdMove.absoluteMode) { + this.inst.angleOffset = _angle; + } + else { + this.positionData["a"] = _angle; + if (this.CmdRotate.rotatable) { + this.inst.angle = _angle; + this.inst.set_bbox_changed(); + } + } + }; + Acts.prototype.SetPrecise = function (s) { + var preciseMode = (s == 1); + this.CmdMove.preciseMode = preciseMode; + this.CmdRotate.preciseMode = preciseMode; + }; + Acts.prototype.SetAbsolute = function (s) { + var absoluteMode = (s == 1); + this.CmdMove.absoluteMode = absoluteMode; + this.CmdRotate.absoluteMode = absoluteMode; + }; + function Exps() {}; + behaviorProto.exps = new Exps(); + Exps.prototype.Activated = function (ret) { + ret.set_int(this.activated); + }; + Exps.prototype.MovSpeed = function (ret) { + ret.set_float(this.CmdMove.currentSpeed); + }; + Exps.prototype.MaxMovSpeed = function (ret) { + ret.set_float(this.CmdMove.move["max"]); + }; + Exps.prototype.MovAcc = function (ret) { + ret.set_float(this.CmdMove.move["acc"]); + }; + Exps.prototype.MovDec = function (ret) { + ret.set_float(this.CmdMove.move["dec"]); + }; + Exps.prototype.RotSpeed = function (ret) { + ret.set_float(this.CmdRotate.currentSpeed); + }; + Exps.prototype.MaxRotSpeed = function (ret) { + ret.set_float(this.CmdRotate.move["max"]); + }; + Exps.prototype.RotAcc = function (ret) { + ret.set_float(this.CmdRotate.move["acc"]); + }; + Exps.prototype.RotDec = function (ret) { + ret.set_float(this.CmdRotate.move["dec"]); + }; + Exps.prototype.Rotatable = function (ret) { + ret.set_int(this.CmdRotate.rotatable); + }; + Exps.prototype.RepCnt = function (ret) { + ret.set_int(this.CmdQueue.repeatCountSave); + }; + Exps.prototype.CmdIndex = function (ret) { + ret.set_int(this.CmdQueue.currentCmdQueueIndex); + }; + Exps.prototype.MovAngle = function (ret) { + var angle; + if (isValidCmd(this.currentCmd, 2) || isValidCmd(this.currentCmd, 3)) { + angle = this.CmdRotate.currentAngleDeg; + if (angle < 0) + angle = 360 + angle; + } else + angle = cr.to_clamped_degrees(this.positionData["a"]); + ret.set_float(angle); + }; + Exps.prototype.OffAngle = function (ret) { + var off = this.CmdRotate.rotatable? cr.to_clamped_degrees(this.inst.angleOffset) : 0; + if(typeof off == "number") + ret.set_float(off); + else + ret.set_float(0); + }; + Exps.prototype.OffX = function (ret) { + var off = this.inst.xOffset; + if(typeof off == "number") + ret.set_float(off); + else + ret.set_float(0); + }; + Exps.prototype.OffY = function (ret) { + var off = this.inst.yOffset; + if(typeof off == "number") + ret.set_float(off); + else + ret.set_float(0); + }; + var CmdQueue = function (repeatCount) { + this.Init(repeatCount); + }; + var CmdQueueProto = CmdQueue.prototype; + CmdQueueProto.Init = function (repeatCount) { + this.CleanAll(); + this.repeatCount = repeatCount; + this.repeatCountSave = repeatCount; + }; + CmdQueueProto.CleanAll = function () { + this.queueIndex = 0; + this.currentCmdQueueIndex = -1; + this.queue = []; + }; + CmdQueueProto.Reset = function () { + this.repeatCount = this.repeatCountSave; + this.queueIndex = 0; + this.currentCmdQueueIndex = -1; + }; + CmdQueueProto.Push = function (item) { + this.queue.push(item); + }; + CmdQueueProto.PushList = function (items) { + this.queue.push.apply(this.queue, items); + }; + CmdQueueProto.GetCmd = function () { + var cmd; + cmd = this.queue[this.queueIndex]; + this.currentCmdQueueIndex = this.queueIndex; + var index = this.queueIndex + 1; + if (index >= this.queue.length) { + if (this.repeatCount != 1) // repeat + { + this.queueIndex = 0; + this.repeatCount -= 1; + } else { + this.queueIndex = (-1); // finish + } + } else + this.queueIndex = index; + return cmd; + }; + CmdQueueProto.saveToJSON = function () { + return { + "i": this.queueIndex, + "cci": this.currentCmdQueueIndex, + "q": this.queue, + "rptsv": this.repeatCountSave, + "rpt": this.repeatCount + }; + }; + CmdQueueProto.loadFromJSON = function (o) { + this.queueIndex = o["i"]; + this.currentCmdQueueIndex = o["cci"]; + this.queue = o["q"]; + this.repeatCountSave = o["rptsv"]; + this.repeatCount = o["rpt"]; + }; + var CmdMoveKlass = function (inst, + maxSpeed, acc, dec, + preciseMode, continuedMode, absoluteMode) { + this.Init(inst, + maxSpeed, acc, dec, + preciseMode, continuedMode, absoluteMode); + }; + var CmdMoveKlassProto = CmdMoveKlass.prototype; + CmdMoveKlassProto.Init = function (inst, + maxSpeed, acc, dec, + preciseMode, continuedMode, absoluteMode) { + this.inst = inst; + this.move = { + "max": maxSpeed, + "acc": acc, + "dec": dec + }; + this.isDone = true; + this.preciseMode = preciseMode; + this.continuedMode = continuedMode; + this.absoluteMode = absoluteMode; + this.currentSpeed = 0; + }; + CmdMoveKlassProto.CmdInit = function (positionData, distance, + newSpeedValue) { + this.target = positionData; + this.dir = (distance >= 0); + this.remainDistance = Math.abs(distance); + this.isDone = false; + var angle; + if(this.absoluteMode) + angle = this.inst.angleOffset; + else + angle = positionData["a"]; + positionData["x"] += (distance * Math.cos(angle)); + positionData["y"] += (distance * Math.sin(angle)); + if (newSpeedValue) + speedReset.apply(this, newSpeedValue); + setCurrentSpeed.call(this, null); + }; + CmdMoveKlassProto.Tick = function (dt) { + var remainDt; + var distance = getMoveDistance.call(this, dt); + this.remainDistance -= distance; + if ((this.remainDistance <= 0) || (this.currentSpeed <= 0)) { + this.isDone = true; + if (this.preciseMode) // precise mode + { + if(this.absoluteMode){ + this.inst.xOffset = this.target["x"]; + this.inst.yOffset = this.target["y"]; + } + else { + this.inst.x = this.target["x"]; + this.inst.y = this.target["y"]; + } + } else // non-precise mode + { + var angle = this.target["a"]; + distance += this.remainDistance; + if (!this.dir) { + distance = -distance; + } + if (this.absoluteMode) { + this.inst.xOffset += (distance * Math.cos(angle)); + this.inst.yOffset += (distance * Math.sin(angle)); + this.target["x"] = this.inst.xOffset; + this.target["y"] = this.inst.yOffset; + } else { + this.inst.x += (distance * Math.cos(angle)); + this.inst.y += (distance * Math.sin(angle)); + this.target["x"] = this.inst.x; + this.target["y"] = this.inst.y; + } + } + remainDt = (this.continuedMode) ? getRemaindDt.call(this) : 0; + } else { + var angle; + if (this.absoluteMode) + angle = this.inst.angleOffset; + else + angle = this.target["a"]; + if (!this.dir) { + distance = -distance; + } + if(this.absoluteMode) { + this.inst.xOffset += (distance * Math.cos(angle)); + this.inst.yOffset += (distance * Math.sin(angle)); + } + else { + this.inst.x += (distance * Math.cos(angle)); + this.inst.y += (distance * Math.sin(angle)); + } + remainDt = 0; + } + if(!this.absoluteMode){ + this.inst.set_bbox_changed(); + } + return remainDt; + }; + CmdMoveKlassProto.saveToJSON = function () { + return { + "v": this.move, + "id": this.isDone, + "pm": this.preciseMode, + "cspd": this.currentSpeed, + "offx": this.inst.xOffset, + "offy": this.inst.yOffset, + "abs": this.absoluteMode, + "dir": this.dir, + "rd": this.remainDistance, + }; + }; + CmdMoveKlassProto.loadFromJSON = function (o) { + this.move = o["v"]; + this.isDone = o["id"]; + this.preciseMode = o["pm"]; + this.currentSpeed = o["cspd"]; + this.dir = o["dir"]; + this.remainDistance = o["rd"]; + this.absoluteMode = o["abs"]; + this.inst.xOffset = o["offx"]; + this.inst.yOffset = o["offy"]; + }; + var CmdRotateKlass = function (inst, + rotatable, + maxSpeed, acc, dec, + preciseMode, continuedMode, absoluteMode) { + this.Init(inst, + rotatable, + maxSpeed, acc, dec, + preciseMode, continuedMode, absoluteMode); + }; + var CmdRotateKlassProto = CmdRotateKlass.prototype; + CmdRotateKlassProto.Init = function (inst, + rotatable, + maxSpeed, acc, dec, + preciseMode, continuedMode, absoluteMode) { + this.inst = inst; + this.rotatable = rotatable; + this.move = { + "max": maxSpeed, + "acc": acc, + "dec": dec + }; + this.isDone = true; + this.isZeroDtMode = ((maxSpeed >= 36000) && (acc == 0) && (dec == 0)); + this.preciseMode = preciseMode; + this.continuedMode = continuedMode; + this.absoluteMode = absoluteMode; + this.currentAngleDeg = (rotatable) ? cr.to_clamped_degrees(inst.angle) : 0; + this.currentSpeed = 0; + }; + CmdRotateKlassProto.CmdInit = function (positionData, distance, + newSpeedValue) { + this.target = positionData; + this.currentAngleDeg = cr.to_clamped_degrees(positionData["a"]); + this.targetAngleDeg = this.currentAngleDeg + distance; + this.dir = (distance >= 0); + var angle = cr.to_clamped_radians(this.targetAngleDeg); + this.remainDistance = Math.abs(distance); + this.isDone = false; + positionData["a"] = angle; + if (newSpeedValue) + speedReset.apply(this, newSpeedValue); + setCurrentSpeed.call(this, null); + }; + CmdRotateKlassProto.Tick = function (dt) { + var remainDt; + var targetAngleRad; + if (this.isZeroDtMode) { + remainDt = dt; + this.isDone = true; + targetAngleRad = this.target["a"]; + this.currentAngleDeg = this.targetAngleDeg; + } else { + var distance = getMoveDistance.call(this, dt); + this.remainDistance -= distance; + if ((this.remainDistance <= 0) || (this.currentSpeed <= 0)) { + this.isDone = true; + if (this.preciseMode) // precise mode + { + targetAngleRad = this.target["a"]; + this.currentAngleDeg = this.targetAngleDeg; + } else // non-precise mode + { + distance += this.remainDistance; + this.currentAngleDeg += ((this.dir) ? distance : (-distance)); + targetAngleRad = cr.to_clamped_radians(this.currentAngleDeg); + this.target["a"] = targetAngleRad; + } + remainDt = (this.continuedMode == 1) ? getRemaindDt.call(this) : 0; + } else { + this.currentAngleDeg += ((this.dir) ? distance : (-distance)); + targetAngleRad = cr.to_clamped_radians(this.currentAngleDeg); + remainDt = 0; + } + } + if (this.absoluteMode) { + this.inst.angleOffset = targetAngleRad; + } + else { + if (this.rotatable) { + this.inst.angle = targetAngleRad; + this.inst.set_bbox_changed(); + } + } + return remainDt; + }; + CmdRotateKlassProto.saveToJSON = function () { + return { + "ra": this.rotatable, + "v": this.move, + "id": this.isDone, + "izm": this.isZeroDtMode, + "pm": this.preciseMode, + "cad": this.currentAngleDeg, + "cspd": this.currentSpeed, + "abs": this.absoluteMode, + "offa": this.inst.angleOffset, + "tad": this.targetAngleDeg, + "dir": this.dir, + "rd": this.remainDistance, + }; + }; + CmdRotateKlassProto.loadFromJSON = function (o) { + this.rotatable = o["ra"]; + this.move = o["v"]; + this.isDone = o["id"]; + this.isZeroDtMode = o["izm"]; + this.preciseMode = o["pm"]; + this.currentAngleDeg = o["cad"]; + this.currentSpeed = o["cspd"]; + this.absoluteMode = o["abs"]; + this.inst.angleOffset = o["offa"] + this.targetAngleDeg = o["tad"]; + this.dir = o["dir"]; + this.remainDistance = o["rd"]; + }; + var setCurrentSpeed = function (speed) { + var move = this.move; + if (speed != null) { + this.currentSpeed = (speed > move["max"]) ? + move["max"] : speed; + } else if (move["acc"] > 0) { + this.currentSpeed = 0; + } else { + this.currentSpeed = move["max"]; + } + }; + var getMoveDistance = function (dt) { + var move = this.move; + var isSlowDown = false; + if (move["dec"] != 0) { + var _distance = (this.currentSpeed * this.currentSpeed) / (2 * move["dec"]); // (v*v)/(2*a) + isSlowDown = (_distance >= this.remainDistance); + } + var acc = (isSlowDown) ? (-move["dec"]) : move["acc"]; + if (acc != 0) { + setCurrentSpeed.call(this, this.currentSpeed + (acc * dt)); + } + var distance = this.currentSpeed * dt; + return distance; + }; + var getRemaindDt = function () { + var remainDt; + if ((this.move["acc"] > 0) || (this.move["dec"] > 0)) { + setCurrentSpeed.call(this, 0); // stop in point + remainDt = 0; + } else { + remainDt = (-this.remainDistance) / this.currentSpeed; + } + return remainDt; + }; + var speedReset = function (max, acc, dec) { + if (max != null) + this.move["max"] = max; + if (acc != null) + this.move["acc"] = acc; + if (dec != null) + this.move["dec"] = dec; + }; + var CmdWaitKlass = function (continuedMode) { + this.Init(continuedMode); + }; + var CmdWaitKlassProto = CmdWaitKlass.prototype; + CmdWaitKlassProto.Init = function (continuedMode) { + this.isDone = true; + this.continuedMode = continuedMode; + }; + CmdWaitKlassProto.CmdInit = function (positionData, distance) { + this.remainDistance = distance; + this.isDone = false; + this.target = positionData; + }; + CmdWaitKlassProto.Tick = function (dt) { + this.remainDistance -= dt; + var remainDt; + if (this.remainDistance <= 0) { + remainDt = (this.continuedMode) ? (-this.remainDistance) : 0; + this.isDone = true; + } else { + remainDt = 0; + } + return remainDt; + }; + CmdWaitKlassProto.saveToJSON = function () { + return { + "id": this.isDone, + "rd": this.remainDistance, + }; + }; + CmdWaitKlassProto.loadFromJSON = function (o) { + this.isDone = o["id"]; + this.remainDistance = o["rd"]; + }; +}()); +; +; +cr.behaviors.Rex_pushOutSolid = function(runtime) +{ + this.runtime = runtime; +}; +(function () +{ + var behaviorProto = cr.behaviors.Rex_pushOutSolid.prototype; + behaviorProto.Type = function(behavior, objtype) + { + this.behavior = behavior; + this.objtype = objtype; + this.runtime = behavior.runtime; + }; + var behtypeProto = behaviorProto.Type.prototype; + behtypeProto.onCreate = function() + { + this.obstacleTypes = []; // object types to check for as obstructions + }; + behaviorProto.Instance = function(type, inst) + { + this.type = type; + this.behavior = type.behavior; + this.inst = inst; + this.runtime = type.runtime; + }; + var behinstProto = behaviorProto.Instance.prototype; + behinstProto.onCreate = function() + { + this.enabled = (this.properties[0] === 1); + this.obstacleMode = this.properties[1]; // 0 = solids, 1 = custom + this.maxDist = 100; + }; + behinstProto.onDestroy = function() + { + }; + behinstProto.tick = function () + { + if (!this.enabled) + return; + this.pushOutNearest( this.getCandidates() , this.maxDist); + }; + var __candidates = []; + behinstProto.getCandidates = function () + { + __candidates.length = 0; + if (this.obstacleMode === 0) // use solids + { + var solid = this.runtime.getSolidBehavior(); + if (solid) + cr.appendArray(__candidates, solid.my_instances.valuesRef()); + } + else + { + var types = this.type.obstacleTypes; + var i, cnt=types.length; + for (i=0; i 1) + this.inst.opacity = 1; + break; + case 8: // forwards/backwards + if (this.inst.x !== this.lastKnownValue) + this.initialValue += this.inst.x - this.lastKnownValue; + if (this.inst.y !== this.lastKnownValue2) + this.initialValue2 += this.inst.y - this.lastKnownValue2; + this.inst.x = this.initialValue + Math.cos(this.inst.angle) * this.waveFunc(this.i) * this.mag; + this.inst.y = this.initialValue2 + Math.sin(this.inst.angle) * this.waveFunc(this.i) * this.mag; + this.lastKnownValue = this.inst.x; + this.lastKnownValue2 = this.inst.y; + break; + } + this.inst.set_bbox_changed(); + }; + behinstProto.onSpriteFrameChanged = function (prev_frame, next_frame) + { + switch (this.movement) { + case 2: // size + this.initialValue *= (next_frame.width / prev_frame.width); + this.ratio = next_frame.height / next_frame.width; + break; + case 3: // width + this.initialValue *= (next_frame.width / prev_frame.width); + break; + case 4: // height + this.initialValue *= (next_frame.height / prev_frame.height); + break; + } + }; + function Cnds() {}; + Cnds.prototype.IsActive = function () + { + return this.active; + }; + Cnds.prototype.CompareMovement = function (m) + { + return this.movement === m; + }; + Cnds.prototype.ComparePeriod = function (cmp, v) + { + return cr.do_cmp(this.period, cmp, v); + }; + Cnds.prototype.CompareMagnitude = function (cmp, v) + { + if (this.movement === 5) + return cr.do_cmp(this.mag, cmp, cr.to_radians(v)); + else + return cr.do_cmp(this.mag, cmp, v); + }; + Cnds.prototype.CompareWave = function (w) + { + return this.wave === w; + }; + behaviorProto.cnds = new Cnds(); + function Acts() {}; + Acts.prototype.SetActive = function (a) + { + this.active = (a === 1); + }; + Acts.prototype.SetPeriod = function (x) + { + this.period = x; + }; + Acts.prototype.SetMagnitude = function (x) + { + this.mag = x; + if (this.movement === 5) // angle + this.mag = cr.to_radians(this.mag); + }; + Acts.prototype.SetMovement = function (m) + { + if (this.movement === 5 && m !== 5) + this.mag = cr.to_degrees(this.mag); + this.movement = m; + this.init(); + }; + Acts.prototype.SetWave = function (w) + { + this.wave = w; + }; + Acts.prototype.SetPhase = function (x) + { + this.i = (x * _2pi) % _2pi; + this.updateFromPhase(); + }; + Acts.prototype.UpdateInitialState = function () + { + this.init(); + }; + behaviorProto.acts = new Acts(); + function Exps() {}; + Exps.prototype.CyclePosition = function (ret) + { + ret.set_float(this.i / _2pi); + }; + Exps.prototype.Period = function (ret) + { + ret.set_float(this.period); + }; + Exps.prototype.Magnitude = function (ret) + { + if (this.movement === 5) // angle + ret.set_float(cr.to_degrees(this.mag)); + else + ret.set_float(this.mag); + }; + Exps.prototype.Value = function (ret) + { + ret.set_float(this.waveFunc(this.i) * this.mag); + }; + behaviorProto.exps = new Exps(); +}()); +; +; +cr.behaviors.SkymenPin = function(runtime) +{ + this.runtime = runtime; +}; +(function () +{ + var behaviorProto = cr.behaviors.SkymenPin.prototype; + behaviorProto.Type = function(behavior, objtype) + { + this.behavior = behavior; + this.objtype = objtype; + this.runtime = behavior.runtime; + }; + var behtypeProto = behaviorProto.Type.prototype; + behtypeProto.onCreate = function() + { + }; + behaviorProto.Instance = function(type, inst) + { + this.type = type; + this.behavior = type.behavior; + this.inst = inst; // associated object instance to modify + this.runtime = type.runtime; + }; + var behinstProto = behaviorProto.Instance.prototype; + behinstProto.onCreate = function() + { + this.pinObject = null; + this.pinObjectUid = -1; // for loading + this.pinAngle = 0; + this.pinDist = 0; + this.myStartAngle = 0; + this.theirStartAngle = 0; + this.lastKnownAngle = 0; + this.mode = 0; // 0 = position & angle; 1 = position; 2 = angle; 3 = rope; 4 = bar + this.runOnTick = this.properties[0] == 0; + var self = this; + if (!this.recycled) + { + this.myDestroyCallback = (function(inst) { + self.onInstanceDestroyed(inst); + }); + } + this.runtime.addDestroyCallback(this.myDestroyCallback); + }; + behinstProto.saveToJSON = function () + { + return { + "uid": this.pinObject ? this.pinObject.uid : -1, + "pa": this.pinAngle, + "pd": this.pinDist, + "msa": this.myStartAngle, + "tsa": this.theirStartAngle, + "lka": this.lastKnownAngle, + "m": this.mode + }; + }; + behinstProto.loadFromJSON = function (o) + { + this.pinObjectUid = o["uid"]; // wait until afterLoad to look up + this.pinAngle = o["pa"]; + this.pinDist = o["pd"]; + this.myStartAngle = o["msa"]; + this.theirStartAngle = o["tsa"]; + this.lastKnownAngle = o["lka"]; + this.mode = o["m"]; + }; + behinstProto.afterLoad = function () + { + if (this.pinObjectUid === -1) + this.pinObject = null; + else + { + this.pinObject = this.runtime.getObjectByUID(this.pinObjectUid); +; + } + this.pinObjectUid = -1; + }; + behinstProto.onInstanceDestroyed = function (inst) + { + if (this.pinObject == inst) + this.pinObject = null; + }; + behinstProto.onDestroy = function() + { + this.pinObject = null; + this.runtime.removeDestroyCallback(this.myDestroyCallback); + }; + behinstProto.tick = function () + { + if (!this.pinObject || !this.runOnTick) + return; + if (this.lastKnownAngle !== this.inst.angle) + this.myStartAngle = cr.clamp_angle(this.myStartAngle + (this.inst.angle - this.lastKnownAngle)); + var newx = this.inst.x; + var newy = this.inst.y; + if (this.mode === 3 || this.mode === 4) // rope mode or bar mode + { + var dist = cr.distanceTo(this.inst.x, this.inst.y, this.pinObject.x, this.pinObject.y); + if ((dist > this.pinDist) || (this.mode === 4 && dist < this.pinDist)) { + var a = cr.angleTo(this.pinObject.x, this.pinObject.y, this.inst.x, this.inst.y); + newx = this.pinObject.x + Math.cos(a) * this.pinDist; + newy = this.pinObject.y + Math.sin(a) * this.pinDist; + } + } else { + newx = this.pinObject.x + Math.cos(this.pinObject.angle + this.pinAngle) * this.pinDist; + newy = this.pinObject.y + Math.sin(this.pinObject.angle + this.pinAngle) * this.pinDist; + } + var newangle = cr.clamp_angle(this.myStartAngle + (this.pinObject.angle - this.theirStartAngle)); + this.lastKnownAngle = newangle; + if ((this.mode === 0 || this.mode === 1 || this.mode === 3 || this.mode === 4) && + (this.inst.x !== newx || this.inst.y !== newy)) { + this.inst.x = newx; + this.inst.y = newy; + this.inst.set_bbox_changed(); + } + if ((this.mode === 0 || this.mode === 2) && (this.inst.angle !== newangle)) { + this.inst.angle = newangle; + this.inst.set_bbox_changed(); + } + }; + behinstProto.tick2 = function () + { + if (!this.pinObject || this.runOnTick) + return; + if (this.lastKnownAngle !== this.inst.angle) + this.myStartAngle = cr.clamp_angle(this.myStartAngle + (this.inst.angle - this.lastKnownAngle)); + var newx = this.inst.x; + var newy = this.inst.y; + if (this.mode === 3 || this.mode === 4) // rope mode or bar mode + { + var dist = cr.distanceTo(this.inst.x, this.inst.y, this.pinObject.x, this.pinObject.y); + if ((dist > this.pinDist) || (this.mode === 4 && dist < this.pinDist)) + { + var a = cr.angleTo(this.pinObject.x, this.pinObject.y, this.inst.x, this.inst.y); + newx = this.pinObject.x + Math.cos(a) * this.pinDist; + newy = this.pinObject.y + Math.sin(a) * this.pinDist; + } + } + else + { + newx = this.pinObject.x + Math.cos(this.pinObject.angle + this.pinAngle) * this.pinDist; + newy = this.pinObject.y + Math.sin(this.pinObject.angle + this.pinAngle) * this.pinDist; + } + var newangle = cr.clamp_angle(this.myStartAngle + (this.pinObject.angle - this.theirStartAngle)); + this.lastKnownAngle = newangle; + if ((this.mode === 0 || this.mode === 1 || this.mode === 3 || this.mode === 4) + && (this.inst.x !== newx || this.inst.y !== newy)) + { + this.inst.x = newx; + this.inst.y = newy; + this.inst.set_bbox_changed(); + } + if ((this.mode === 0 || this.mode === 2) && (this.inst.angle !== newangle)) + { + this.inst.angle = newangle; + this.inst.set_bbox_changed(); + } + }; + function Cnds() {}; + Cnds.prototype.IsPinned = function () + { + return !!this.pinObject; + }; + behaviorProto.cnds = new Cnds(); + function Acts() {}; + Acts.prototype.Pin = function (obj, mode_) + { + if (!obj) + return; + var otherinst = obj.getFirstPicked(this.inst); + if (!otherinst) + return; + this.pinObject = otherinst; + this.pinAngle = cr.angleTo(otherinst.x, otherinst.y, this.inst.x, this.inst.y) - otherinst.angle; + this.pinDist = cr.distanceTo(otherinst.x, otherinst.y, this.inst.x, this.inst.y); + this.myStartAngle = this.inst.angle; + this.lastKnownAngle = this.inst.angle; + this.theirStartAngle = otherinst.angle; + this.mode = mode_; + }; + Acts.prototype.Unpin = function () + { + this.pinObject = null; + }; + behaviorProto.acts = new Acts(); + function Exps() {}; + Exps.prototype.PinnedUID = function (ret) + { + ret.set_int(this.pinObject ? this.pinObject.uid : -1); + }; + behaviorProto.exps = new Exps(); +}()); +; +; +cr.behaviors.SkymenPolarCoordinates = function(runtime) +{ + this.runtime = runtime; +}; +(function () +{ + var behaviorProto = cr.behaviors.SkymenPolarCoordinates.prototype; + behaviorProto.Type = function(behavior, objtype) + { + this.behavior = behavior; + this.objtype = objtype; + this.runtime = behavior.runtime; + }; + var behtypeProto = behaviorProto.Type.prototype; + behtypeProto.onCreate = function() + { + }; + behaviorProto.Instance = function(type, inst) + { + this.type = type; + this.behavior = type.behavior; + this.inst = inst; // associated object instance to modify + this.runtime = type.runtime; + }; + var behinstProto = behaviorProto.Instance.prototype; + behinstProto.onCreate = function() + { + this.Enabled = this.properties[4] == 0; + this.Radius = this.properties[2]; + this.Angle = this.properties[3]; + this.OriginX = this.properties[0]; + this.OriginY = this.properties[1]; + this.ud = false + if(this.Enabled){ + this.update(); + } + }; + behinstProto.onDestroy = function () + { + }; + behinstProto.saveToJSON = function () + { + return { + "DX": this.Radius, + "DY": this.Angle, + "OX": this.OriginX, + "OY": this.OriginY, + "Enabled": this.Enabled + }; + }; + behinstProto.loadFromJSON = function (o) + { + this.Radius = o["DX"]; + this.Angle = o["DY"]; + this.OriginX = o["OX"]; + this.OriginY = o["OY"]; + this.Enabled = o["Enabled"] + this.update(); + }; + behinstProto.update = function(mode = 1) { + if(mode === 0){ + this.Radius = this.inst.x; + this.Angle = this.inst.y; + } + this.ud = true; + } + behinstProto.tick = function () + { + if(this.Angle > 359){ + this.Angle = this.Angle%360 + } + if(this.ud){ + this.inst.x = this.OriginX + Math.cos(this.Angle * Math.PI / 180) * this.Radius; + this.inst.y = this.OriginY + Math.sin(this.Angle * Math.PI / 180) * this.Radius; + this.inst.set_bbox_changed(); + this.ud = false; + } + }; + behinstProto.tick2 = function () + { + }; + function Cnds() {}; + Cnds.prototype.IsEnabled = function () + { + return this.Enabled; + }; + Cnds.prototype.CompareRadius = function (cmp, v) + { + return cr.do_cmp(this.Radius, cmp, v); + }; + Cnds.prototype.CompareAngle = function (cmp, v) + { + return cr.do_cmp(this.Angle, cmp, v); + }; + Cnds.prototype.CompareOriginX = function (cmp, v) + { + return cr.do_cmp(this.OriginX, cmp, v); + }; + Cnds.prototype.CompareOriginY = function (cmp, v) + { + return cr.do_cmp(this.OriginY, cmp, v); + }; + behaviorProto.cnds = new Cnds(); + function Acts() {}; + Acts.prototype.SetEnabled = function (value) + { + if(value === 0){ + this.Enabled = true; + this.update(); + } + else + this.Enabled = false; + }; + Acts.prototype.SetRadius = function (value) + { + var en = this.Enabled; + if(en){ + this.Radius = value; + this.update(); + } + }; + Acts.prototype.SetAngle = function (value) + { + var en = this.Enabled; + if(en){ + this.Angle = value; + this.update(); + } + }; + Acts.prototype.SetDeltaPos = function (v1,v2) + { + var en = this.Enabled; + if(en){ + this.Radius = v1; + this.Angle = v2; + this.update(); + } + }; + Acts.prototype.SetOriginX = function (value) + { + var en = this.Enabled; + if(en){ + this.OriginX = value; + this.update(); + } + }; + Acts.prototype.SetOriginY = function (value) + { + var en = this.Enabled; + if(en){ + this.OriginY = value; + this.update(); + } + }; + Acts.prototype.SetOriginPos = function (v1,v2) + { + var en = this.Enabled; + if(en){ + this.OriginX = v1; + this.OriginY = v2; + this.update(); + } + }; + Acts.prototype.Update = function (mode) + { + this.update(mode); + }; + behaviorProto.acts = new Acts(); + function Exps() {}; + Exps.prototype.Radius = function (ret) // 'ret' must always be the first parameter - always return the expression's result through it! + { + ret.set_float(this.Radius); + }; + Exps.prototype.Angle = function (ret) // 'ret' must always be the first parameter - always return the expression's result through it! + { + ret.set_float(this.Angle); + }; + Exps.prototype.DeltaX = function (ret) // 'ret' must always be the first parameter - always return the expression's result through it! + { + ret.set_float(this.Radius); + }; + Exps.prototype.DeltaY = function (ret) // 'ret' must always be the first parameter - always return the expression's result through it! + { + ret.set_float(this.Angle); + }; + Exps.prototype.OriginX = function (ret) // 'ret' must always be the first parameter - always return the expression's result through it! + { + ret.set_float(this.OriginX); + }; + Exps.prototype.OriginY = function (ret) // 'ret' must always be the first parameter - always return the expression's result through it! + { + ret.set_float(this.OriginY); + }; + Exps.prototype.CarToPolRad = function (ret,X,Y,OX,OY) // 'ret' must always be the first parameter - always return the expression's result through it! + { + X = X - OX; + Y = Y - OY; + var Dist = Math.sqrt(Math.pow(X,2) + Math.pow(Y,2)); + ret.set_float(Dist); + }; + Exps.prototype.CarToPolAngle = function (ret,X,Y,OX,OY) // 'ret' must always be the first parameter - always return the expression's result through it! + { + X = X - OX; + Y = Y - OY; + var Angle = Math.atan2(Y,X)*180/Math.PI; + ret.set_float(Angle); + }; + Exps.prototype.PolToCarX = function (ret,Dist,Angle,OX) // 'ret' must always be the first parameter - always return the expression's result through it! + { + var X = OX + Math.cos(Angle * Math.PI / 180) * Dist; + var X = Math.floor(X * 1000)/1000; + ret.set_float(X); + }; + Exps.prototype.PolToCarY = function (ret,Dist,Angle,OY) // 'ret' must always be the first parameter - always return the expression's result through it! + { + var Y = OY + Math.sin(Angle * Math.PI / 180) * Dist; + var Y = Math.floor(Y * 1000)/1000; + ret.set_float(Y); + }; + Exps.prototype.Status = function (ret) // 'ret' must always be the first parameter - always return the expression's result through it! + { + if(this.Enabled) + ret.set_string("Enabled"); + else + ret.set_string("Disabled"); + }; + behaviorProto.exps = new Exps(); +}()); +; +; +cr.behaviors.SkymenSkin = function(runtime) +{ + this.runtime = runtime; +}; +(function () +{ + var behaviorProto = cr.behaviors.SkymenSkin.prototype; + behaviorProto.Type = function(behavior, objtype) + { + this.behavior = behavior; + this.objtype = objtype; + this.runtime = behavior.runtime; + }; + var behtypeProto = behaviorProto.Type.prototype; + behtypeProto.onCreate = function() + { + }; + behaviorProto.Instance = function(type, inst) + { + this.type = type; + this.behavior = type.behavior; + this.inst = inst; // associated object instance to modify + this.runtime = type.runtime; + }; + var behinstProto = behaviorProto.Instance.prototype; + behinstProto.onCreate = function() + { + this.skinBaseTag = this.properties[0]; + if(cr.SkymenSkinCore == undefined){ + alert("Skin base plugin needed, please create it."); + } + else if(cr.SkymenSkinCore[this.skinBaseTag] == undefined){ + alert("Skin base with tag " + this.skinBaseTag + " cannot be found."); + } + else{ + this.skinBase = cr.SkymenSkinCore[this.skinBaseTag]; + this.skinBase.addInstance(this); + } + this.skinTag = this.properties[1]; + this.subSkinTag = this.properties[2]; + this.oldSkinTag = this.properties[1]; + this.oldSubSkinTag = this.properties[2]; + this.syncWithAnim = this.properties[3] === 0 ||this.properties[3] === 2; + this.syncWithFrame = this.properties[3] === 1 ||this.properties[3] === 2; + this.default = this.properties[4] === 0; //0 = Yes, 1 = No + this.hideDefault = this.properties[5] === 0; //0 = Yes, 1 = No + this.imagePoint = this.properties[6]; + this.syncZOrder = this.properties[7] === 0; //0 = Yes, 1 = No + this.syncSize = this.properties[8] === 1; + this.syncScale = this.properties[8] === 2; + this.firstFrame = true; + this.widthRatio = 1; + this.heightRatio = 1; + this.lastLayout = this.runtime.running_layout + this.object = null; + if(!this.inst.behaviorSkins){ + this.inst.behaviorSkins = []; + } + var found = false + for (let index = 0; index < this.inst.behaviorSkins.length; index++) { + const behavior = this.inst.behaviorSkins[index]; + if (this === behavior) { + found = true + this.behaviorId = index + } + } + if (!found){ + this.behaviorId = this.inst.behaviorSkins.length; + this.inst.behaviorSkins.push(this); + } + if(this.skinBase.init){ + this.updateSkin(); + } + }; + behinstProto.onDestroy = function () { + this.destroy(); + }; + behinstProto.saveToJSON = function () { + return { + "skinTag": this.skinTag, + "subSkinTag": this.subSkinTag, + "oldSkinTag": this.oldSkinTag, + "oldSubSkinTag": this.oldSubSkinTag, + "syncWithAnim": this.syncWithAnim, + "syncWithFrame": this.syncWithFrame, + "default": this.default, + "hideDefault": this.hideDefault, + "imagePoint": this.imagePoint, + "syncZOrder": this.syncZOrder, + "syncSize": this.syncSize, + "syncScale": this.syncScale, + "firstFrame": this.firstFrame, + "skinBaseTag": this.skinBaseTag, + "behaviorId": this.behaviorId + }; + }; + behinstProto.loadFromJSON = function (o) { + this.skinTag = o["skinTag"]; + this.subSkinTag = o["subSkinTag"]; + this.oldSkinTag = o["oldSkinTag"]; + this.oldSubSkinTag = o["oldSubSkinTag"]; + this.syncWithAnim = o["syncWithAnim"]; + this.syncWithFrame = o["syncWithFrame"]; + this.default = o["default"]; + this.hideDefault = o["hideDefault"]; + this.imagePoint = o["imagePoint"]; + this.syncZOrder = o["syncZOrder"]; + this.firstFrame = o["firstFrame"]; + this.skinBaseTag = o["skinBaseTag"]; + this.behaviorId = o["behaviorId"]; + this.syncSize = o["syncSize"]; + this.syncScale = o["syncScale"]; + /* if (o["object"] === "null"){ + this.object = null + } + else{ + } */ + }; + behinstProto.tick = function () + { + if(this.firstFrame){ + if(this.syncWithAnim){ + this.subSkinTag = this.inst.cur_animation.name; + this.oldsubSkinTag = this.inst.cur_animation.name; + } + this.firstFrame = false; + } + /* if (this.object != null && this.lastLayout !== this.runtime.running_layout) { + this.lastLayout = this.runtime.running_layout + this.runtime.DestroyInstance(this.object) + this.object = this.inst.runtime.createInstance(this.object.type, this.inst.layer) + this.updateSkin() + } + if (this.lastLayout !== this.runtime.running_layout) { + this.lastLayout = this.runtime.running_layout + } */ + } + behinstProto.tick2 = function () + { + if(this.object == null) return; + var newx = this.inst.getImagePoint(this.imagePoint, true); + var newy = this.inst.getImagePoint(this.imagePoint, false); + var angle = this.inst.angle; + var anim = this.inst.cur_animation.name; + if (this.syncSize || this.syncScale) { + if (this.object.width != this.inst.width * this.widthRatio) { + this.object.width = this.inst.width * this.widthRatio + } + if (this.object.height != this.inst.height * this.heightRatio) { + this.object.height = this.inst.height * this.heightRatio + } + } else { + var mirrorred = (this.inst.width < 0); + var selfMirrorred = (this.object.width < 0); + var flipped = (this.inst.height < 0); + var selfFlipped = (this.object.height < 0); + if(mirrorred != selfMirrorred){ + this.object.width = cr.abs(this.object.width) * (mirrorred ? -1 : 1); + } + if(flipped != selfFlipped){ + this.object.height = cr.abs(this.object.height) * (flipped? -1 : 1); + } + } + var other = this.inst; + if (this.behaviorId != 0) { + var i = this.behaviorId - 1; + while (i >= 0 && this.inst.behaviorSkins[i].object == null) { + i--; + } + if (i >= 0) { + other = this.inst.behaviorSkins[i].object; + } + } + if (this.syncZOrder && this.object.get_zindex() !== other.get_zindex() + 1) { + this.setZorder(); + } + if(this.object.x != newx){ + this.object.x = newx; + } + if(this.object.y != newy){ + this.object.y = newy; + } + if(this.object.angle != angle){ + this.object.angle = angle; + } + this.object.set_bbox_changed(); + if(this.syncWithAnim && this.subSkinTag != anim){ + this.subSkinTag = anim; + } + if(this.syncWithFrame && this.inst.cur_frame != this.object.cur_frame){ + cr.plugins_.Sprite.prototype.acts.SetAnimFrame.call(this.object, this.inst.cur_frame); + } + if(this.skinTag != this.oldSkinTag || this.subSkinTag != this.oldSubSkinTag){ + this.oldSkinTag = this.skinTag; + this.oldSubSkinTag = this.subSkinTag; + this.updateSkin(); + } + }; + behinstProto.updateSkin = function() + { + if(this.default){ + if(this.object != null){ + this.destroy(); + } + if(this.hideDefault && !this.inst.visible){ + this.inst.visible = true; + this.runtime.redraw = true; + } + return; + } + else{ + if(this.hideDefault && this.inst.visible){ + this.inst.visible = false; + this.runtime.redraw = true; + } + } + if(this.object == null){ + if(this.inst && this.inst.cur_animation){ + var anim = this.inst.cur_animation.name; + if (this.syncWithAnim && this.subSkinTag != anim) { + this.subSkinTag = anim; + } + } + var type = this.getType(this.skinTag, this.subSkinTag); + if(type == null){ + console.warn("Cannot assign subskin " + this.subSkinTag + " of skin " + this.skinTag + " because it doesn't exist. Reverting back to default."); + this.default = true; + this.updateSkin(); + return + } + if(this.syncWithAnim){ + this.subSkinTag = this.inst.cur_animation.name; + } + this.object = this.inst.runtime.createInstance(type, this.inst.layer) + var anim = this.getAnim(this.skinTag, this.subSkinTag); + cr.plugins_.Sprite.prototype.acts.SetAnim.call(this.object, anim, 0); + if(this.syncWithFrame){ + cr.plugins_.Sprite.prototype.acts.SetAnimSpeed.call(this.object, 0); + } + this.setZorder(); + cr.plugins_.Sprite.prototype.acts.SetCollisions.call(this.object, 0); + if (this.syncScale) { + let defaultAnim = this.object.type.animations.find(x => x.name === this.object.type.default_instance[5][4]) + defaultAnim = defaultAnim || this.object.type.animations[0]; + this.widthRatio = this.inst.width / Math.abs(this.inst.width) //Sign in case object is mirrorred + * this.object.type.default_instance[0][3] / defaultAnim.frames[0].width //Ratio of image size to default size + * this.object.cur_animation.frames[0].width / this.inst.width; //Ratio of frame size to object size + this.heightRatio = this.inst.height / Math.abs(this.inst.height) + * this.object.type.default_instance[0][4] / defaultAnim.frames[0].height + * this.object.cur_animation.frames[0].height / this.inst.height; + } else if (this.syncSize) { + this.widthRatio = 1; + this.heightRatio = 1; + this.object.width = this.inst.width; + this.object.height = this.inst.height; + } + } + else{ + if(this.object.type == this.getType(this.skinTag, this.subSkinTag)){ + if(this.syncWithAnim){ + this.subSkinTag = this.inst.cur_animation.name; + } + anim = this.getAnim(this.skinTag, this.subSkinTag); + cr.plugins_.Sprite.prototype.acts.SetAnim.call(this.object, anim, 0); + if(this.syncWithFrame){ + cr.plugins_.Sprite.prototype.acts.SetAnimSpeed.call(this.object, 0); + } + if(this.syncZOrder) this.setZorder(); + cr.plugins_.Sprite.prototype.acts.SetCollisions.call(this.object, 0); + } + else{ + this.destroy(); + this.updateSkin(); + return + } + } + }; + behinstProto.destroy = function () { + if(this.object === null)return; + if(this.object.behaviorSkins){ + for (var i = 0; i < this.object.behaviorSkins.length; i++) { + this.object.behaviorSkins[i].destroy(); + } + } + this.runtime.DestroyInstance(this.object); + this.object = null; + } + behinstProto.setZorder = function () { + var other = this.inst; + if(this.behaviorId != 0){ + var i = this.behaviorId-1; + while(i >= 0 && this.inst.behaviorSkins[i].object == null){ + i--; + } + if(i >= 0){ + other = this.inst.behaviorSkins[i].object; + } + } + if (this.object.layer.index !== other.layer.index) + { + this.object.layer.removeFromInstanceList(this.object, true); + this.object.layer = other.layer; + other.layer.appendToInstanceList(this.object, true); + } + this.object.layer.moveInstanceAdjacent(this.object, other, true); + this.runtime.redraw = true; + } + behinstProto.getType = function (skin, subSkin) + { + if(this.skinBase.skins[skin] == undefined || this.skinBase.skins[skin][subSkin] == undefined){ + return null; + } + return this.skinBase.skins[skin][subSkin].type; + } + behinstProto.getAnim = function (skin, subSkin) + { + if(this.skinBase.skins[skin] == undefined || this.skinBase.skins[skin][subSkin] == undefined){ + return null; + } + return this.skinBase.skins[skin][subSkin].anim; + } + function Cnds() {}; + Cnds.prototype.IsDefault = function () + { + return this.default; + }; + Cnds.prototype.IsSkin = function (skin) + { + return this.skinTag == skin; + }; + Cnds.prototype.IsSubSkin = function (subSkin) + { + return this.subSkinTag == subSkin; + }; + Cnds.prototype.IsDefaultHidden = function () + { + return this.hideDefault; + }; + behaviorProto.cnds = new Cnds(); + function Acts() {}; + Acts.prototype.SetSkin = function (skin) + { + if(this.default){ + this.default = false; + } + this.skinTag = skin; + this.updateSkin(); + }; + Acts.prototype.SetSubSkin = function (subSkin) + { + this.subSkinTag = subSkin; + this.updateSkin(); + }; + Acts.prototype.Setup = function (skin, subSkin) + { + this.default = false; + this.skinTag = skin; + this.subSkinTag = subSkin; + this.updateSkin(); + }; + Acts.prototype.UseDefault = function () + { + this.default = true; + this.updateSkin(); + }; + Acts.prototype.HideDefault = function (hide) + { + this.hideDefault = hide === 1; //0 = No, 1 = Yes + this.updateSkin(); + }; + Acts.prototype.SetImagePoint = function (ip) + { + this.imagePoint = ip; + }; + Acts.prototype.SyncMode = function (mode) { + this.syncWithAnim = mode === 0 || mode === 2; + this.syncWithFrame = mode === 1 || mode === 2; + if (this.syncWithAnim) { + this.subSkinTag = this.inst.cur_animation.name; + } + }; + Acts.prototype.SyncZOrder = function (mode) { + this.syncZOrder = mode === 0; + }; + Acts.prototype.UpdateZOrder = function () { + if(this.object){ + this.setZorder(); + } + }; + behaviorProto.acts = new Acts(); + function Exps() {}; + Exps.prototype.Skin = function (ret) + { + ret.set_string(this.skinTag); + }; + Exps.prototype.SubSkin = function (ret) + { + ret.set_string(this.subSkinTag); + }; + Exps.prototype.SkinBaseTag = function (ret) + { + ret.set_string(this.skinBaseTag); + }; + behaviorProto.exps = new Exps(); +}()); +; +; +cr.behaviors.Timer = function(runtime) +{ + this.runtime = runtime; +}; +(function () +{ + var behaviorProto = cr.behaviors.Timer.prototype; + behaviorProto.Type = function(behavior, objtype) + { + this.behavior = behavior; + this.objtype = objtype; + this.runtime = behavior.runtime; + }; + var behtypeProto = behaviorProto.Type.prototype; + behtypeProto.onCreate = function() + { + }; + behaviorProto.Instance = function(type, inst) + { + this.type = type; + this.behavior = type.behavior; + this.inst = inst; // associated object instance to modify + this.runtime = type.runtime; + }; + var behinstProto = behaviorProto.Instance.prototype; + behinstProto.onCreate = function() + { + this.timers = {}; + }; + behinstProto.onDestroy = function () + { + cr.wipe(this.timers); + }; + behinstProto.saveToJSON = function () + { + var o = {}; + var p, t; + for (p in this.timers) + { + if (this.timers.hasOwnProperty(p)) + { + t = this.timers[p]; + o[p] = { + "c": t.current.sum, + "t": t.total.sum, + "d": t.duration, + "r": t.regular + }; + } + } + return o; + }; + behinstProto.loadFromJSON = function (o) + { + this.timers = {}; + var p; + for (p in o) + { + if (o.hasOwnProperty(p)) + { + this.timers[p] = { + current: new cr.KahanAdder(), + total: new cr.KahanAdder(), + duration: o[p]["d"], + regular: o[p]["r"] + }; + this.timers[p].current.sum = o[p]["c"]; + this.timers[p].total.sum = o[p]["t"]; + } + } + }; + behinstProto.tick = function () + { + var dt = this.runtime.getDt(this.inst); + var p, t; + for (p in this.timers) + { + if (this.timers.hasOwnProperty(p)) + { + t = this.timers[p]; + t.current.add(dt); + t.total.add(dt); + } + } + }; + behinstProto.tick2 = function () + { + var p, t; + for (p in this.timers) + { + if (this.timers.hasOwnProperty(p)) + { + t = this.timers[p]; + if (t.current.sum >= t.duration) + { + if (t.regular) + t.current.sum -= t.duration; + else + delete this.timers[p]; + } + } + } + }; + function Cnds() {}; + Cnds.prototype.OnTimer = function (tag_) + { + tag_ = tag_.toLowerCase(); + var t = this.timers[tag_]; + if (!t) + return false; + return t.current.sum >= t.duration; + }; + behaviorProto.cnds = new Cnds(); + function Acts() {}; + Acts.prototype.StartTimer = function (duration_, type_, tag_) + { + this.timers[tag_.toLowerCase()] = { + current: new cr.KahanAdder(), + total: new cr.KahanAdder(), + duration: duration_, + regular: (type_ === 1) + }; + }; + Acts.prototype.StopTimer = function (tag_) + { + tag_ = tag_.toLowerCase(); + if (this.timers.hasOwnProperty(tag_)) + delete this.timers[tag_]; + }; + behaviorProto.acts = new Acts(); + function Exps() {}; + Exps.prototype.CurrentTime = function (ret, tag_) + { + var t = this.timers[tag_.toLowerCase()]; + ret.set_float(t ? t.current.sum : 0); + }; + Exps.prototype.TotalTime = function (ret, tag_) + { + var t = this.timers[tag_.toLowerCase()]; + ret.set_float(t ? t.total.sum : 0); + }; + Exps.prototype.Duration = function (ret, tag_) + { + var t = this.timers[tag_.toLowerCase()]; + ret.set_float(t ? t.duration : 0); + }; + behaviorProto.exps = new Exps(); +}()); +; +; +cr.behaviors.Turret = function(runtime) +{ + this.runtime = runtime; +}; +(function () +{ + var behaviorProto = cr.behaviors.Turret.prototype; + behaviorProto.Type = function(behavior, objtype) + { + this.behavior = behavior; + this.objtype = objtype; + this.runtime = behavior.runtime; + }; + var behtypeProto = behaviorProto.Type.prototype; + behtypeProto.onCreate = function() + { + this.targetTypes = []; // object types to check for as targets + }; + behaviorProto.Instance = function(type, inst) + { + this.type = type; + this.behavior = type.behavior; + this.inst = inst; // associated object instance to modify + this.runtime = type.runtime; + }; + var behinstProto = behaviorProto.Instance.prototype; + behinstProto.onCreate = function() + { + this.range = this.properties[0]; + this.rateOfFire = this.properties[1]; + this.rotateEnabled = (this.properties[2] !== 0); + this.rotateSpeed = cr.to_radians(this.properties[3]); + this.targetMode = this.properties[4]; // 0 = first, 1 = nearest + this.predictiveAim = (this.properties[5] !== 0); + this.projectileSpeed = this.properties[6]; + this.enabled = (this.properties[7] !== 0); + this.useCollisionCells = (this.properties[8] !== 0); + this.lastCheckTime = 0; // last time checked for targets in range + this.fireTimeCount = this.rateOfFire; // counts up to rate of fire before shooting. starts in fully reloaded state + this.currentTarget = null; // current target object + this.loadTargetUid = -1; + this.oldTargetX = 0; + this.oldTargetY = 0; + this.lastSpeeds = [0, 0, 0, 0]; + this.speedsCount = 0; + this.firstTickWithTarget = true; + var self = this; + if (!this.recycled) + { + this.myDestroyCallback = function(inst) { + self.onInstanceDestroyed(inst); + }; + } + this.runtime.addDestroyCallback(this.myDestroyCallback); + }; + behinstProto.saveToJSON = function () + { + var o = { + "r": this.range, + "rof": this.rateOfFire, + "re": this.rotateEnabled, + "rs": this.rotateSpeed, + "tm": this.targetMode, + "pa": this.predictiveAim, + "ps": this.projectileSpeed, + "en": this.enabled, + "lct": this.lastCheckTime, + "ftc": this.fireTimeCount, + "target": (this.currentTarget ? this.currentTarget.uid : -1), + "ox": this.oldTargetX, + "oy": this.oldTargetY, + "ls": this.lastSpeeds, + "sc": this.speedsCount, + "targs": [] + }; + var i, len; + for (i = 0, len = this.type.targetTypes.length; i < len; i++) + { + o["targs"].push(this.type.targetTypes[i].sid); + } + return o; + }; + behinstProto.loadFromJSON = function (o) + { + this.range = o["r"]; + this.rateOfFire = o["rof"]; + this.rotateEnabled = o["re"]; + this.rotateSpeed = o["rs"]; + this.targetMode = o["tm"]; + this.predictiveAim = o["pa"]; + this.projectileSpeed = o["ps"]; + this.enabled = o["en"]; + this.lastCheckTime = o["lct"]; + this.fireTimeCount = o["ftc"] || 0; // not in = this.lastCheckTime + 0.1) + { + this.lastCheckTime = nowtime; + if (this.targetMode === 0 && !this.currentTarget) + { + this.lookForFirstTarget(); + if (this.currentTarget) + { + this.speedsCount = 0; + this.firstTickWithTarget = true; + this.oldTargetX = this.currentTarget.x; + this.oldTargetY = this.currentTarget.y; + this.runtime.trigger(cr.behaviors.Turret.prototype.cnds.OnTargetAcquired, this.inst); + } + } + else if (this.targetMode === 1) + { + var oldTarget = this.currentTarget; + this.lookForNearestTarget(); + if (this.currentTarget && this.currentTarget !== oldTarget) + { + this.speedsCount = 0; + this.firstTickWithTarget = true; + this.oldTargetX = this.currentTarget.x; + this.oldTargetY = this.currentTarget.y; + this.runtime.trigger(cr.behaviors.Turret.prototype.cnds.OnTargetAcquired, this.inst); + } + } + } + this.fireTimeCount += dt; + if (this.currentTarget) + { + var targetAngle = cr.angleTo(inst.x, inst.y, this.currentTarget.x, this.currentTarget.y); + if (this.predictiveAim) + { + var Gx = inst.x; + var Gy = inst.y; + var Px = this.currentTarget.x; + var Py = this.currentTarget.y; + var h = cr.angleTo(Px, Py, this.oldTargetX, this.oldTargetY); + if (!this.firstTickWithTarget) + this.addSpeed(cr.distanceTo(Px, Py, this.oldTargetX, this.oldTargetY) / dt); + var s = this.getSpeed(); + var q = Py - Gy; + var r = Px - Gx; + var w = (s * Math.sin(h) * (Gx - Px) - s * Math.cos(h) * (Gy - Py)) / this.projectileSpeed; + var a = (Math.asin(w / Math.sqrt(q * q + r * r)) - Math.atan2(q, -r)) + Math.PI; + if (!isNaN(a)) + targetAngle = a; + } + if (this.rotateEnabled) + { + inst.angle = cr.angleRotate(inst.angle, targetAngle, this.rotateSpeed * dt); + inst.set_bbox_changed(); + } + if ((this.fireTimeCount >= this.rateOfFire) && + (!this.rotateEnabled || cr.to_degrees(cr.angleDiff(inst.angle, targetAngle)) <= 0.1) && + (!this.predictiveAim || this.speedsCount >= 4)) + { + this.fireTimeCount -= this.rateOfFire; + if (this.fireTimeCount >= this.rateOfFire) + this.fireTimeCount = 0; + this.runtime.trigger(cr.behaviors.Turret.prototype.cnds.OnShoot, this.inst); + } + if (this.currentTarget) + { + this.oldTargetX = this.currentTarget.x; + this.oldTargetY = this.currentTarget.y; + } + this.firstTickWithTarget = false; + } + if (this.fireTimeCount > this.rateOfFire) + this.fireTimeCount = this.rateOfFire; + }; + function Cnds() {}; + Cnds.prototype.HasTarget = function () + { + return !!this.currentTarget; + }; + Cnds.prototype.OnShoot = function () + { + return true; + }; + Cnds.prototype.OnTargetAcquired = function () + { + return true; + }; + behaviorProto.cnds = new Cnds(); + function Acts() {}; + Acts.prototype.AcquireTarget = function (obj_) + { + if (!obj_) + return; + var instances = obj_.getCurrentSol().getObjects(); + var i, len, inst; + for (i = 0, len = instances.length; i < len; ++i) + { + inst = instances[i]; + if (this.currentTarget !== inst && this.isInRange(inst)) + { + this.currentTarget = inst; + this.speedsCount = 0; + this.firstTickWithTarget = true; + this.oldTargetX = this.currentTarget.x; + this.oldTargetY = this.currentTarget.y; + this.runtime.trigger(cr.behaviors.Turret.prototype.cnds.OnTargetAcquired, this.inst); + break; + } + } + }; + Acts.prototype.AddTarget = function (obj_) + { + var targetTypes = this.type.targetTypes; + if (targetTypes.indexOf(obj_) !== -1) + return; + var i, len, t; + for (i = 0, len = targetTypes.length; i < len; i++) + { + t = targetTypes[i]; + if (t.is_family && t.members.indexOf(obj_) !== -1) + return; + } + targetTypes.push(obj_); + }; + Acts.prototype.ClearTargets = function () + { + cr.clearArray(this.type.targetTypes); + }; + Acts.prototype.UnacquireTarget = function () + { + this.currentTarget = null; + this.speedsCount = 0; + this.firstTickWithTarget = true; + }; + Acts.prototype.SetEnabled = function (e) + { + this.enabled = (e !== 0); + }; + Acts.prototype.SetRange = function (r) + { + this.range = r; + }; + Acts.prototype.SetRateOfFire = function (r) + { + this.rateOfFire = r; + }; + Acts.prototype.SetRotate = function (r) + { + this.rotateEnabled = (r !== 0); + }; + Acts.prototype.SetRotateSpeed = function (r) + { + this.rotateSpeed = cr.to_radians(r); + }; + Acts.prototype.SetTargetMode = function (s) + { + this.targetMode = s; + }; + Acts.prototype.SetPredictiveAim = function (s) + { + this.predictiveAim = (s !== 0); + }; + Acts.prototype.SetProjectileSpeed = function (s) + { + this.projectileSpeed = s; + }; + behaviorProto.acts = new Acts(); + function Exps() {}; + Exps.prototype.TargetUID = function (ret) + { + ret.set_int(this.currentTarget ? this.currentTarget.uid : 0); + }; + Exps.prototype.Range = function (ret) + { + ret.set_float(this.range); + }; + Exps.prototype.RateOfFire = function (ret) + { + ret.set_float(this.rateOfFire); + }; + Exps.prototype.RotateSpeed = function (ret) + { + ret.set_float(cr.to_degrees(this.rotateSpeed)); + }; + behaviorProto.exps = new Exps(); +}()); +; +; +cr.behaviors.aekiro_bind = function(runtime) +{ + this.runtime = runtime; +}; +(function () +{ + var behaviorProto = cr.behaviors.aekiro_bind.prototype; + behaviorProto.Type = function(behavior, objtype) + { + this.behavior = behavior; + this.objtype = objtype; + this.runtime = behavior.runtime; + }; + var behtypeProto = behaviorProto.Type.prototype; + behtypeProto.onCreate = function() + { + }; + behaviorProto.Instance = function(type, inst) + { + this.type = type; + this.behavior = type.behavior; + this.inst = inst; + this.runtime = type.runtime; + if(!cr.proui){ + throw new Error("ProUI Plugin not found. Please add it to the project."); + return; + } + }; + var behinstProto = behaviorProto.Instance.prototype; + behinstProto.onCreate = function() + { + this.proui = cr.proui; + this.isInstanceOfText = cr.plugins_.Text ? (this.inst.type.plugin instanceof cr.plugins_.Text) : false; + this.isInstanceOfSpriteFont = cr.plugins_.Spritefont2 ? (this.inst.type.plugin instanceof cr.plugins_.Spritefont2) : false; + this.isInstanceOfSpriteFontPlus = cr.plugins_.SkymenSFPlusPLus ? (this.inst.type.plugin instanceof cr.plugins_.SkymenSFPlusPLus) : false; + this.isInstanceOfSprite = cr.plugins_.Sprite?(this.inst.type.plugin instanceof cr.plugins_.Sprite):false; + this.isInstanceOfPaster = cr.plugins_.rojoPaster?(this.inst.type.plugin instanceof cr.plugins_.rojoPaster):false; + this.bind_key = this.properties[0]; + this.bind_property = this.properties[1]; + this.firstFrame = true; + this.inst.proui_bind = this; + this.index = -1 ; //index of the item this sub-item belong to + this.deepKey = ""; + this.model = null; + }; + behinstProto.updateGridViewModel = function (value,options){ + if(this.model && this.deepKey){ + console.log(this.deepKey+"***"+value); + cr.plugins_.aekiro_model.prototype.acts.SetValueByKeyString.call(this.model,this.deepKey,value,options); + } + }; + behinstProto.setValue = function (value){ + if(!this.bind_key){ + return; + } + if(this.bind_property==0 && this.inst._proui && this.inst._proui._setValue){//Value + this.inst._proui._setValue(value); + }else if(this.bind_property==1 && (this.isInstanceOfText || this.isInstanceOfSpriteFont || this.isInstanceOfSpriteFontPlus) ){ //Text + this.inst.type.plugin.acts.SetText.call(this.inst,value); + }else if(this.bind_property==2 && this.isInstanceOfSprite){//Frame + var frame = 0; + if (!isNaN(value)){ + frame = parseInt(value); + } + this.inst.type.plugin.acts.SetAnimFrame.apply(this.inst, [frame]); + }else if(this.bind_property==3 && this.isInstanceOfSprite){//Animation + var anim = String(value); + this.inst.type.plugin.acts.SetAnim.apply(this.inst, [anim]); + }else if(this.bind_property==4 && (this.isInstanceOfSprite || this.isInstanceOfPaster) ){//URL + this.inst.type.plugin.acts.LoadImage.call(this.inst,value, 1); + } + }; + behinstProto.tick = function () + { + }; + behinstProto.onDestroy = function () + { + }; + behinstProto.saveToJSON = function () + { + return { + "bind_key" : this.bind_key, + "bind_property" : this.bind_property + } + }; + behinstProto.loadFromJSON = function (o) + { + this.bind_key = o["bind_key"]; + this.bind_property = o["bind_property"]; + }; + function Cnds() {}; + Cnds.prototype.IsIndex = function (index){ + return (index == this.index); + }; + behaviorProto.cnds = new Cnds(); + function Acts() {}; + behaviorProto.acts = new Acts(); + function Exps() {}; + Exps.prototype.index = function (ret) + { + ret.set_int(this.index); + }; + behaviorProto.exps = new Exps(); +}()); +; +; +cr.behaviors.aekiro_button = function(runtime) +{ + this.runtime = runtime; +}; +(function () +{ + var behaviorProto = cr.behaviors.aekiro_button.prototype; + behaviorProto.Type = function(behavior, objtype) + { + this.behavior = behavior; + this.objtype = objtype; + this.runtime = behavior.runtime; + }; + var behtypeProto = behaviorProto.Type.prototype; + behtypeProto.onCreate = function() + { + }; + behaviorProto.Instance = function(type, inst) + { + this.type = type; + this.behavior = type.behavior; + this.inst = inst; + this.runtime = type.runtime; + if(!cr.proui){ + throw new Error("ProUI Plugin not found. Please add it to the project."); + } + if(!this.behavior.isHooked){ + cr.proui.HookMe(this.behavior,["touch"]); + this.behavior.isHooked = true; + } + }; + var behinstProto = behaviorProto.Instance.prototype; + var NORMAL = 0, HOVER = 1, CLICKED = 2; + behinstProto.onCreate = function() + { + this.proui = cr.proui; + this.proui.isTypeValid(this.inst,[cr.plugins_.Sprite,cr.plugins_.NinePatch,cr.plugins_.TiledBg],"Pro UI: Button behavior is only applicable to Sprite, 9-patch or tiled backgrounds objects."); + this.isInstanceOfSprite = cr.plugins_.Sprite?(this.inst.type.plugin instanceof cr.plugins_.Sprite):false; + this.isEnabled = this.properties[0]; + this.frame_hover = isNaN(parseInt(this.properties[1]))?-1:parseInt(this.properties[1]); + this.frame_clicked = isNaN(parseInt(this.properties[2]))?-1:parseInt(this.properties[2]); + this.frame_disabled = isNaN(parseInt(this.properties[3]))?-1:parseInt(this.properties[3]); + this.clickSound = this.properties[4]; + this.clickAnimation = this.properties[5]; + this.hoverSound = this.properties[6]; + this.hoverAnimation = this.properties[7]; + this.callbackName = this.properties[8]; + this.callbackParams = this.properties[9]; + this.firstFrame = true; + this.uiType = "button"; + this.inst.uiType = "button"; + this.inst._proui = this; + this.state = NORMAL; + this.onTouchStarted = false; + this.onMouseEnterFlag = false; + this.callbacks = []; + this.onCreateInit(); + }; + behinstProto.onCreateInit = function (){ + this.setClickAnimations(); + this.setHoverAnimations(); + this.useStates = true; + if(this.frame_hover<0 && this.frame_clicked<0 && this.frame_disabled<0){ + this.useStates = false; + } + }; + behinstProto.setClickAnimations = function (){ + this.tween = new TWEEN["Tween"](this.inst); + if(this.clickAnimation == 1){ + this.tween["easing"](TWEEN["Easing"]["Quadratic"]["Out"])["to"]({ width: this.inst.width*1.2, height:this.inst.height*1.2 }, 200); + }else if(this.clickAnimation == 2){ + this.tween["easing"](TWEEN["Easing"]["Elastic"]["Out"])["to"]({ width: this.inst.width*1.2, height:this.inst.height*1.2 }, 500); + }else if(this.clickAnimation == 3){ + this.tween["easing"](TWEEN["Easing"]["Quadratic"]["Out"])["to"]({ y:this.inst.y+this.inst.height/10 }, 100); + }else if(this.clickAnimation == 4){ + this.tween["easing"](TWEEN["Easing"]["Quadratic"]["Out"])["to"]({ y:this.inst.y-this.inst.height/10 }, 100); + }else if(this.clickAnimation == 5){ + this.tween["easing"](TWEEN["Easing"]["Quadratic"]["Out"])["to"]({ x:this.inst.x-this.inst.width/10 }, 100); + }else if(this.clickAnimation == 6){ + this.tween["easing"](TWEEN["Easing"]["Quadratic"]["Out"])["to"]({ x:this.inst.x+this.inst.width/10 }, 100); + } + }; + behinstProto.setHoverAnimations = function (){ + this.tween_hover = new TWEEN["Tween"](this.inst); + if(this.hoverAnimation == 1){ + this.tween_hover["easing"](TWEEN["Easing"]["Quadratic"]["Out"])["to"]({ width: this.inst.width*1.1, height:this.inst.height*1.1 }, 200); + }else if(this.hoverAnimation == 2){ + this.tween_hover["easing"](TWEEN["Easing"]["Elastic"]["Out"])["to"]({ width: this.inst.width*1.1, height:this.inst.height*1.1 }, 500); + }else if(this.hoverAnimation == 3){ + this.tween_hover["easing"](TWEEN["Easing"]["Quadratic"]["Out"])["to"]({ y:this.inst.y+this.inst.height/10 }, 100); + }else if(this.hoverAnimation == 4){ + this.tween_hover["easing"](TWEEN["Easing"]["Quadratic"]["Out"])["to"]({ y:this.inst.y-this.inst.height/10 }, 100); + }else if(this.hoverAnimation == 5){//Left + this.tween_hover["easing"](TWEEN["Easing"]["Quadratic"]["Out"])["to"]({ x:this.inst.x-this.inst.width/13 }, 100); + }else if(this.hoverAnimation == 6){//Right + this.tween_hover["easing"](TWEEN["Easing"]["Quadratic"]["Out"])["to"]({ x:this.inst.x+this.inst.width/13 }, 100); + } + }; + behinstProto.updateView = function (){ + if(!this.useStates){ + return; + } + if(!this.isInstanceOfSprite){ + return; + } + if(this.isEnabled){ + if(this.state == CLICKED && this.frame_clicked >= 0){ + cr.plugins_.Sprite.prototype.acts.SetAnimFrame.call(this.inst, this.frame_clicked); + } + else if(this.state == HOVER && this.frame_hover >= 0){ + cr.plugins_.Sprite.prototype.acts.SetAnimFrame.call(this.inst, this.frame_hover); + } + else if(this.state == NORMAL && this.frame_normal >= 0){ + cr.plugins_.Sprite.prototype.acts.SetAnimFrame.call(this.inst, this.frame_normal); + } + } + else if(this.frame_disabled >= 0){ + cr.plugins_.Sprite.prototype.acts.SetAnimFrame.call(this.inst, this.frame_disabled); + } + else if(!this.isInsideScrollView){ + cr.plugins_.Sprite.prototype.acts.SetAnimFrame.call(this.inst, this.frame_normal); + } + }; + /*Does not get called if: + - instance is invisible + - instance layer is + - under an opened dialog + cf dispatchTouchStart in proui plugin + */ + behinstProto.OnTouchStart = function () + { + if(!this.isClickable() || !this.isInsideScrollView() || this.onTouchStarted)return; + /*var scrollView = this.proui.scrollViews["l"+this.inst.layer.index]; + if(scrollView && (Math.abs(scrollView.contentDpos.dy)>1 || Math.abs(scrollView.contentDpos.dx)>1 ) ){ + return; + }*/ + var scrollView = this.proui.scrollViews["l"+this.inst.layer.index]; + if(scrollView && Math.sqrt(Math.pow(scrollView.scroll.dx, 2) + Math.pow(scrollView.scroll.dy, 2)) > 5) return; + this.onTouchStarted = true; + if(this.state != CLICKED && this.clickAnimation>0){ + this.tween["start"](); + } + this.state = CLICKED; + this.updateView(); + if(this.clickSound){ + this.proui.playAudio(this.clickSound); + } + }; + behinstProto.OnAnyTouchEnd = function (touchX, touchY) + { + if(this.onTouchStarted){ + this.OnTouchEnd(touchX, touchY); + } + this.onTouchStarted = false; + }; + behinstProto.OnTouchEnd = function (touchX, touchY) + { + this.inst.update_bbox(); + if(this.inst.contains_pt(touchX,touchY)){ + if(this.runtime.isMobile){ + this.state = NORMAL; + }else{ + this.state = HOVER; + } + this.updateView(); + this.proui.runCallback(this.callbackName,this.callbackParams); + for (var i = 0, l= this.callbacks.length; i < l; i++) { + this.callbacks[i](); + } + this.runtime.trigger(cr.behaviors.aekiro_button.prototype.cnds.OnClicked, this.inst); + }else{ + this.state = NORMAL; + this.updateView(); + } + if(this.clickAnimation>0){ + this.tween["reverse"](); + } + }; + behinstProto.isMouseOver = function () + { + if(this.onTouchStarted){ + var scrollView = this.proui.scrollViews["l"+this.inst.layer.index]; + if(scrollView && Math.sqrt(Math.pow(scrollView.scroll.dx, 2) + Math.pow(scrollView.scroll.dy, 2)) > 5) { + this.onTouchStarted = false; + this.state = NORMAL; + this.updateView(); + if(this.clickAnimation>0){ + this.tween["reverse"](); + } + }; + } + var mouse_x = this.proui.CursorX(this.inst.layer.index); + var mouse_y = this.proui.CursorY(this.inst.layer.index); + this.inst.update_bbox(); + return this.inst.contains_pt(mouse_x, mouse_y); + }; + behinstProto.OnMouseEnter = function () + { + if(!this.isClickable())return; + this.state = HOVER; + this.updateView(); + if(this.hoverAnimation>0){ + this.tween_hover["start"](); + } + if(this.hoverSound){ + this.proui.playAudio(this.hoverSound); + } + this.runtime.trigger(cr.behaviors.aekiro_button.prototype.cnds.OnMouseEnter, this.inst); + }; + behinstProto.OnMouseLeave = function () + { + this.state = NORMAL; + this.updateView(); + if(this.hoverAnimation>0){ + this.tween_hover["reverse"](); + } + this.runtime.trigger(cr.behaviors.aekiro_button.prototype.cnds.OnMouseLeave, this.inst); + }; + behinstProto.isInTouch = function () + { + var touch_x = this.proui.X(this.inst.layer.index); + var touch_y = this.proui.Y(this.inst.layer.index); + this.inst.update_bbox(); + return this.inst.contains_pt(touch_x, touch_y); + }; + behinstProto.setEnabled = function (isEnabled) + { + this.isEnabled = isEnabled; + this.updateView(); + } + behinstProto.isInsideScrollView = function(){ + var insideScrollView = true; + var scrollView = this.proui.scrollViews["l"+this.inst.layer.index]; + if(scrollView){ + var touch_x, touch_y; + if(this.runtime.isMobile){ + touch_x = this.proui.X(this.inst.layer.index); + touch_y = this.proui.Y(this.inst.layer.index); + } + else{ + touch_x = this.proui.CursorX(this.inst.layer.index); + touch_y = this.proui.CursorY(this.inst.layer.index); + } + scrollView.inst.update_bbox(); + insideScrollView = scrollView.inst.contains_pt(touch_x, touch_y); + } + return insideScrollView; + }; + behinstProto.isClickable = function() + { + var isVisible = (this.inst.layer.visible && this.inst.visible); + /***************/ + var isUnder = false; + for (var i = 0,l=this.proui.currentDialogs.length; i < l; i++) { + if(this.inst.layer.index10 || Math.abs(this.lastX-this.proui.CursorX(this.inst.layer.index))>10 ) ){ + this.onMouseEnterFlag = true; + this.OnMouseEnter(); + this.lastY = this.proui.CursorY(this.inst.layer.index); + this.lastX = this.proui.CursorX(this.inst.layer.index); + } + }else{ + if(this.onMouseEnterFlag && (!this.isInsideScrollView() || Math.abs(this.lastY-this.proui.CursorY(this.inst.layer.index))>10 || Math.abs(this.lastX-this.proui.CursorX(this.inst.layer.index))>10)) { + this.onMouseEnterFlag = false; + this.OnMouseLeave(); + this.lastY = this.proui.CursorY(this.inst.layer.index); + this.lastX = this.proui.CursorX(this.inst.layer.index); + } + } + } + }; + behinstProto.onDestroy = function () + { + }; + behinstProto.saveToJSON = function () + { + return { + "isEnabled" : this.isEnabled, + "clickSound" : this.clickSound, + "clickAnimation" : this.clickAnimation, + "hoverSound":this.hoverSound, + "hoverAnimation":this.hoverAnimation, + "callbackName" : this.callbackName, + "callbackParams" : this.callbackParams, + "frame_hover" : this.frame_hover, + "frame_clicked" : this.frame_clicked, + "frame_disabled" : this.frame_disabled + }; + }; + behinstProto.loadFromJSON = function (o) + { + this.isEnabled = o["isEnabled"]; + this.clickSound = o["clickSound"]; + this.clickAnimation = o["clickAnimation"]; + this.hoverSound = o["hoverSound"]; + this.hoverAnimation = o["hoverAnimation"]; + this.callbackName = o["callbackName"]; + this.callbackParams = o["callbackParams"]; + this.frame_hover = o["frame_hover"]; + this.frame_clicked = o["frame_clicked"]; + this.frame_disabled = o["frame_disabled"]; + this.onCreateInit(); + }; + function Cnds() {}; + Cnds.prototype.OnMouseEnter = function (){ + return true; + }; + Cnds.prototype.OnMouseLeave = function (){ + return true; + }; + Cnds.prototype.OnClicked = function (){ + return true; + }; + Cnds.prototype.IsEnabled = function (){ + return this.isEnabled; + }; + behaviorProto.cnds = new Cnds(); + function Acts() {}; + Acts.prototype.setEnabled = function (isEnabled){ + this.setEnabled(isEnabled); + }; + behaviorProto.acts = new Acts(); + function Exps() {}; + behaviorProto.exps = new Exps(); +}()); +; +; +cr.behaviors.aekiro_checkbox = function(runtime) +{ + this.runtime = runtime; +}; +(function () +{ + var behaviorProto = cr.behaviors.aekiro_checkbox.prototype; + behaviorProto.Type = function(behavior, objtype) + { + this.behavior = behavior; + this.objtype = objtype; + this.runtime = behavior.runtime; + }; + var behtypeProto = behaviorProto.Type.prototype; + behtypeProto.onCreate = function() + { + }; + behaviorProto.Instance = function(type, inst) + { + this.type = type; + this.behavior = type.behavior; + this.inst = inst; + this.runtime = type.runtime; + if(!cr.proui){ + throw new Error("ProUI Plugin not found. Please add it to the project."); + } + if(!this.behavior.isHooked){ + cr.proui.HookMe(this.behavior,["touch"]); + this.behavior.isHooked = true; + } + }; + var behinstProto = behaviorProto.Instance.prototype; + var NORMAL = 0, HOVER = 1, CLICKED = 2; + behinstProto.onCreate = function() + { + this.proui = cr.proui; + this.proui.isTypeValid(this.inst,[cr.plugins_.Sprite],"Pro UI: Checkbox behavior is only applicable to Sprite objects."); + this.isEnabled = this.properties[0]; + this.value = this.properties[1]; + this.frames_normal = this.properties[2]; + this.frames_hover = this.properties[3]; + this.frames_disabled = this.properties[4]; + this.clickSound = this.properties[5]; + this.clickAnimation = this.properties[6]; + this.hoverSound = this.properties[7]; + this.hoverAnimation = this.properties[8]; + this.callbackName = this.properties[9]; + this.callbackParams = this.properties[10]; + this.firstFrame = true; + this.uiType = "checkbox"; + this.inst.uiType = "checkbox"; + this.inst._proui = this; + this.firstSetValue = false; + this.state = NORMAL; + this.onTouchStarted = false; + this.onMouseEnterFlag = false; + /*If this elements is part of a composed ui element like a gridview, then upon creation of this element, the parent (gridview) will set this value to itself, + and it is passed in options.except (cf behinstProto.setValue ) to notifyBehaviorModels of themodel so that it wont notify the gridview + */ + this.compParent = this; + this.onCreateInit(); + }; + behinstProto.onCreateInit = function (){ + this.setFrames(); + this.setClickAnimations(); + this.setHoverAnimations(); + }; + behinstProto.setFrames = function (){ + var normalFrames = this.frames_normal.split(','); + this.frame_normal_uncheck = isNaN(parseInt(normalFrames[0]))?-1:parseInt(normalFrames[0]); + this.frame_normal_check = isNaN(parseInt(normalFrames[1]))?-1:parseInt(normalFrames[1]); + var hoverFrames = this.frames_hover.split(','); + this.frame_hover_uncheck = isNaN(parseInt(hoverFrames[0]))?-1:parseInt(hoverFrames[0]); + this.frame_hover_check = isNaN(parseInt(hoverFrames[1]))?-1:parseInt(hoverFrames[1]); + var disabledFrames = this.frames_disabled.split(','); + this.frame_disabled_uncheck = isNaN(parseInt(disabledFrames[0]))?-1:parseInt(disabledFrames[0]); + this.frame_disabled_check = isNaN(parseInt(disabledFrames[1]))?-1:parseInt(disabledFrames[1]); + }; + behinstProto.setClickAnimations = function (){ + this.tween = new TWEEN["Tween"](this.inst); + if(this.clickAnimation == 1){ + this.tween["easing"](TWEEN["Easing"]["Quadratic"]["Out"])["to"]({ width: this.inst.width*1.2, height:this.inst.height*1.2 }, 200); + }else if(this.clickAnimation == 2){ + this.tween["easing"](TWEEN["Easing"]["Elastic"]["Out"])["to"]({ width: this.inst.width*1.2, height:this.inst.height*1.2 }, 500); + }else if(this.clickAnimation == 3){ + this.tween["easing"](TWEEN["Easing"]["Quadratic"]["Out"])["to"]({ y:this.inst.y+this.inst.height/10 }, 100); + }else if(this.clickAnimation == 4){ + this.tween["easing"](TWEEN["Easing"]["Quadratic"]["Out"])["to"]({ y:this.inst.y-this.inst.height/10 }, 100); + }else if(this.clickAnimation == 5){ + this.tween["easing"](TWEEN["Easing"]["Quadratic"]["Out"])["to"]({ x:this.inst.x-this.inst.width/10 }, 100); + }else if(this.clickAnimation == 6){ + this.tween["easing"](TWEEN["Easing"]["Quadratic"]["Out"])["to"]({ x:this.inst.x+this.inst.width/10 }, 100); + } + }; + behinstProto.setHoverAnimations = function (){ + this.tween_hover = new TWEEN["Tween"](this.inst); + if(this.hoverAnimation == 1){ + this.tween_hover["easing"](TWEEN["Easing"]["Quadratic"]["Out"])["to"]({ width: this.inst.width*1.1, height:this.inst.height*1.1 }, 200); + }else if(this.hoverAnimation == 2){ + this.tween_hover["easing"](TWEEN["Easing"]["Elastic"]["Out"])["to"]({ width: this.inst.width*1.1, height:this.inst.height*1.1 }, 500); + }else if(this.hoverAnimation == 3){ + this.tween_hover["easing"](TWEEN["Easing"]["Quadratic"]["Out"])["to"]({ y:this.inst.y+this.inst.height/10 }, 100); + }else if(this.hoverAnimation == 4){ + this.tween_hover["easing"](TWEEN["Easing"]["Quadratic"]["Out"])["to"]({ y:this.inst.y-this.inst.height/10 }, 100); + }else if(this.hoverAnimation == 5){//Left + this.tween_hover["easing"](TWEEN["Easing"]["Quadratic"]["Out"])["to"]({ x:this.inst.x-this.inst.width/13 }, 100); + }else if(this.hoverAnimation == 6){//Right + this.tween_hover["easing"](TWEEN["Easing"]["Quadratic"]["Out"])["to"]({ x:this.inst.x+this.inst.width/13 }, 100); + } + }; + behinstProto.setValue = function (value){ + this.firstSetValue = true; + if(this._setValue(value)){ + var modelB = this.inst.proui_model; + if(modelB){ + modelB.setModelValue(value,{except:this.compParent}); + } + if(this.inst.proui_bind){ + this.inst.proui_bind.updateGridViewModel(value,{except:this.compParent}); + } + } + }; + behinstProto._setValue = function (value){ + if(value == null){ + return false; + } + value = this.proui.validateSimpleValue(value,0); + value = cr.clamp(value,0,1); + if(this.value!=value){ + this.value = value; + this.updateView(); + return true; + }else{ + return false; + } + }; + behinstProto.updateFromModel = function (){ + var modelB = this.inst.proui_model; + if(modelB){ + var value = modelB.getFromModel(); + if(value == null){ + return; + } + value = this.proui.validateSimpleValue(value,0); + value = cr.clamp(value,0,1); + if(this.value!=value){ + this.value = value; + } + } + }; + behinstProto.updateView = function (){ + if(this.value){ + cr.plugins_.Sprite.prototype.acts.SetAnimFrame.apply(this.inst, [this.frame_normal_check]); + if(this.isEnabled){ + if(this.state == HOVER && this.frame_hover_check>=0){ + cr.plugins_.Sprite.prototype.acts.SetAnimFrame.apply(this.inst, [this.frame_hover_check]); + } + }else{ + if(this.frame_disabled_check>=0) + cr.plugins_.Sprite.prototype.acts.SetAnimFrame.apply(this.inst, [this.frame_disabled_check]); + } + }else{ + cr.plugins_.Sprite.prototype.acts.SetAnimFrame.apply(this.inst, [this.frame_normal_uncheck]); + if(this.isEnabled){ + if(this.state == HOVER && this.frame_hover_uncheck>=0){ + cr.plugins_.Sprite.prototype.acts.SetAnimFrame.apply(this.inst, [this.frame_hover_uncheck]); + } + }else{ + if(this.frame_disabled_uncheck>=0) + cr.plugins_.Sprite.prototype.acts.SetAnimFrame.apply(this.inst, [this.frame_disabled_uncheck]); + } + } + }; + behinstProto.setEnabled = function (isEnabled) + { + this.isEnabled = isEnabled; + this.updateView(); + } + behinstProto.OnTouchStart = function () + { + if(!this.isClickable() || !this.isInsideScrollView() || this.onTouchStarted)return; + var scrollView = this.proui.scrollViews["l"+this.inst.layer.index]; + if(scrollView && Math.sqrt(Math.pow(scrollView.scroll.dx, 2) + Math.pow(scrollView.scroll.dy, 2)) > 5) return; + this.onTouchStarted = true; + if(this.state != CLICKED && this.clickAnimation>0){ + this.tween["start"](); + } + this.state = CLICKED; + if(this.clickSound){ + this.proui.playAudio(this.clickSound); + } + }; + behinstProto.OnAnyTouchEnd = function (touchX, touchY) + { + if(this.onTouchStarted){ + this.OnTouchEnd(touchX, touchY); + } + this.onTouchStarted = false; + }; + behinstProto.OnTouchEnd = function (touchX, touchY) + { + this.inst.update_bbox(); + if(this.inst.contains_pt(touchX,touchY)){ + if(this.runtime.isMobile){ + this.state = NORMAL; + }else{ + this.state = HOVER; + } + this.setValue(1-this.value); + this.updateView(); + this.proui.runCallback(this.callbackName,this.callbackParams); + this.runtime.trigger(cr.behaviors.aekiro_checkbox.prototype.cnds.OnClicked, this.inst); + }else{ + this.state = NORMAL; + this.updateView(); + } + if(this.clickAnimation>0){ + this.tween["reverse"](); + } + }; + behinstProto.isMouseOver = function () + { + if(this.onTouchStarted){ + var scrollView = this.proui.scrollViews["l"+this.inst.layer.index]; + if(scrollView && Math.sqrt(Math.pow(scrollView.scroll.dx, 2) + Math.pow(scrollView.scroll.dy, 2)) > 5) { + this.onTouchStarted = false; + this.state = NORMAL; + this.updateView(); + if(this.clickAnimation>0){ + this.tween["reverse"](); + } + }; + } + var mouse_x = this.proui.CursorX(this.inst.layer.index); + var mouse_y = this.proui.CursorY(this.inst.layer.index); + this.inst.update_bbox(); + return this.inst.contains_pt(mouse_x, mouse_y); + }; + behinstProto.OnMouseEnter = function () + { + if(!this.isClickable())return; + this.state = HOVER; + this.updateView(); + if(this.hoverAnimation>0){ + this.tween_hover["start"](); + } + if(this.hoverSound){ + this.proui.playAudio(this.hoverSound); + } + this.runtime.trigger(cr.behaviors.aekiro_checkbox.prototype.cnds.OnMouseEnter, this.inst); + }; + behinstProto.OnMouseLeave = function () + { + this.state = NORMAL; + this.updateView(); + if(this.hoverAnimation>0){ + this.tween_hover["reverse"](); + } + this.runtime.trigger(cr.behaviors.aekiro_checkbox.prototype.cnds.OnMouseLeave, this.inst); + }; + behinstProto.isInTouch = function () + { + var touch_x = this.proui.X(this.inst.layer.index); + var touch_y = this.proui.Y(this.inst.layer.index); + this.inst.update_bbox(); + return this.inst.contains_pt(touch_x, touch_y); + }; + behinstProto.isInsideScrollView = function(){ + var insideScrollView = true; + var scrollView = this.proui.scrollViews["l"+this.inst.layer.index]; + if(scrollView){ + var touch_x, touch_y; + if(this.runtime.isMobile){ + touch_x = this.proui.X(this.inst.layer.index); + touch_y = this.proui.Y(this.inst.layer.index); + } + else{ + touch_x = this.proui.CursorX(this.inst.layer.index); + touch_y = this.proui.CursorY(this.inst.layer.index); + } + scrollView.inst.update_bbox(); + insideScrollView = scrollView.inst.contains_pt(touch_x, touch_y); + } + return insideScrollView; + }; + behinstProto.isClickable = function() + { + var isVisible = (this.inst.layer.visible && this.inst.visible); + var isUnder = false; + for (var i = 0,l=this.proui.currentDialogs.length; i < l; i++) { + if(this.inst.layer.index10 || Math.abs(this.lastX-this.proui.CursorX(this.inst.layer.index))>10 ) ){ + this.onMouseEnterFlag = true; + this.OnMouseEnter(); + this.lastY = this.proui.CursorY(this.inst.layer.index); + this.lastX = this.proui.CursorX(this.inst.layer.index); + } + }else{ + if(this.onMouseEnterFlag && (!this.isInsideScrollView() || Math.abs(this.lastY-this.proui.CursorY(this.inst.layer.index))>10 || Math.abs(this.lastX-this.proui.CursorX(this.inst.layer.index))>10 ) ){ + this.onMouseEnterFlag = false; + this.OnMouseLeave(); + this.lastY = this.proui.CursorY(this.inst.layer.index); + this.lastX = this.proui.CursorX(this.inst.layer.index); + } + } + } + }; + behinstProto.onDestroy = function () + { + }; + behinstProto.saveToJSON = function () + { + return { + "isEnabled" : this.isEnabled, + "clickSound" : this.clickSound, + "clickAnimation" : this.clickAnimation, + "hoverSound":this.hoverSound, + "hoverAnimation":this.hoverAnimation, + "callbackName" : this.callbackName, + "callbackParams" : this.callbackParams, + "frames_normal" : this.frames_normal, + "frames_hover" : this.frames_hover, + "disabledFrames" : this.frames_disabled, + "value" : this.value + }; + }; + behinstProto.loadFromJSON = function (o) + { + this.isEnabled = o["isEnabled"]; + this.clickSound = o["clickSound"]; + this.clickAnimation = o["clickAnimation"]; + this.hoverSound = o["hoverSound"]; + this.hoverAnimation = o["hoverAnimation"]; + this.callbackName = o["callbackName"]; + this.callbackParams = o["callbackParams"]; + this.frames_normal = o["frames_normal"]; + this.frames_hover = o["frames_hover"]; + this.frames_disabled = o["disabledFrames"]; + this.value = o["value"]; + this.onCreateInit(); + }; + function Cnds() {}; + Cnds.prototype.OnMouseEnter = function (){ + return true; + }; + Cnds.prototype.OnMouseLeave = function (){ + return true; + }; + Cnds.prototype.IsEnabled = function (){ + return this.isEnabled; + }; + Cnds.prototype.OnClicked = function (){ + return true; + }; + Cnds.prototype.IsChecked = function (){ + return this.value; + }; + behaviorProto.cnds = new Cnds(); + function Acts() {}; + Acts.prototype.setEnabled = function (isEnabled){ + this.setEnabled(isEnabled); + }; + Acts.prototype.setValue = function (value){ + this.setValue(value); + }; + behaviorProto.acts = new Acts(); + function Exps() {}; + Exps.prototype.value = function (ret) + { + ret.set_int(this.value); + }; + behaviorProto.exps = new Exps(); +}()); +; +; +cr.behaviors.aekiro_dialog = function(runtime) +{ + this.runtime = runtime; +}; +(function () +{ + var behaviorProto = cr.behaviors.aekiro_dialog.prototype; + behaviorProto.Type = function(behavior, objtype) + { + this.behavior = behavior; + this.objtype = objtype; + this.runtime = behavior.runtime; + }; + var behtypeProto = behaviorProto.Type.prototype; + behtypeProto.onCreate = function() + { + }; + behaviorProto.Instance = function(type, inst) + { + this.type = type; + this.behavior = type.behavior; + this.inst = inst; + this.runtime = type.runtime; + if(!cr.proui){ + throw new Error("ProUI Plugin not found. Please add it to the project."); + return; + } + this.tweenFunctions =[ + TWEEN["Easing"]["Linear"]["None"], + TWEEN["Easing"]["Quadratic"]["Out"], + TWEEN["Easing"]["Quartic"]["Out"], + TWEEN["Easing"]["Exponential"]["Out"], + TWEEN["Easing"]["Circular"]["Out"], + TWEEN["Easing"]["Back"]["Out"], + TWEEN["Easing"]["Elastic"]["Out"], + TWEEN["Easing"]["Bounce"]["Out"], + ]; + }; + var behinstProto = behaviorProto.Instance.prototype; + behinstProto.onCreate = function() + { + this.proui = cr.proui; + this.proui.isTypeValid(this.inst,[cr.plugins_.Sprite,cr.plugins_.NinePatch,cr.plugins_.TiledBg],"Pro UI: dialog behavior is only applicable to Sprite, 9-patch or tiled backgrounds objects."); + this.openAnimation = this.properties[0]; + this.openAnimTweenFunction = this.tweenFunctions[this.properties[1]]; + this.openSound = this.properties[2]; + this.openAnimDuration = this.properties[3]; + this.closeAnimation = this.properties[4]; + this.closeAnimTweenFunction = this.tweenFunctions[this.properties[5]]; + this.closeSound = this.properties[6]; + this.closeAnimDuration = this.properties[7]; + this.overlayUID = this.properties[8]; + this.pauseOnOpen = this.properties[9]; + this.closeButtonUID = this.properties[10]; + this.isModal = this.properties[11]; + this.isLayerContainer = this.properties[12]; + this.firstFrame = true; + this.inst.uiType = "dialog"; + this.uiType = "dialog"; + this.inst._proui = this; + this.dpos = {}; + this.isInit = false; + this.isOpen = false; + this.outLayerChildren = {}; //list of scrollviews on the dialog + this.tween = new TWEEN["Tween"](); + this.tween["onReverseComplete"](this.postClose,this); + this.tween["onComplete"](this.postOpen,this); + this.tween_close = new TWEEN["Tween"](); + this.tween_close["onComplete"](this.postClose,this); + this.tween_opacity = new TWEEN["Tween"](); //a separate tween for opacity: we don't want the opacity to be tweened by elastic + }; + behinstProto.setCloseButton = function (){ + this.closeButton = this.proui.tags[this.closeButtonUID]; + if(this.closeButton){ + if(this.closeButton.uiType != "button"){ + console.error("ProUI-Dialog uid=%s: the close button needs to have a button behavior !",this.inst.uid); + return; + } + var self = this; + this.closeButton._proui.callbacks.push(function(){ + self.close(); + }); + } + }; + behinstProto.setOverlay = function (){ + this.overlay = this.proui.tags[this.overlayUID]; + if(this.overlay){ + this.proui.isTypeValid(this.overlay,[cr.plugins_.Sprite,cr.plugins_.NinePatch,cr.plugins_.TiledBg],"ProUI-Dialog: The overlay of a dialog can only be a Sprite, 9-patch Or Tiled Background object."); + this.overlay.uiType = "overlay"; + this.tween_overlay = new TWEEN["Tween"](); + this.tween_overlay["easing"](TWEEN["Easing"]["Quartic"]["Out"]); + } + }; + behinstProto.showOverlay = function (){ + if(this.overlay){ + this.overlay.my_timescale = 1; + this.overlay.type.plugin.acts.MoveToLayer.call(this.overlay, this.inst.layer); + this.overlay.type.plugin.acts.MoveToBottom.call(this.overlay); + this.overlay.width = this.inst.layer.viewRight - this.inst.layer.viewLeft; + this.overlay.height = this.inst.layer.viewBottom - this.inst.layer.viewTop; + this.overlay.set_bbox_changed(); + this.overlay.update_bbox(); + this.overlay.x = this.inst.layer.viewLeft + (this.overlay.x - this.overlay.bbox.left); + this.overlay.y = this.inst.layer.viewTop + (this.overlay.y - this.overlay.bbox.top); + this.overlay.set_bbox_changed(); + this.overlay.visible = true; + this.overlay.opacity = 0; + this.tween_overlay["setObject"](this.overlay); + this.tween_overlay["to"]({ opacity:0.3 }, 300); + this.tween_overlay["start"](); + } + }; + behinstProto.setDialogTimeScale = function (){ + var inst; + for (var i = 0, l= this.inst.layer.instances.length; i < l; i++) { + inst = this.inst.layer.instances[i]; + inst.my_timescale = 1; + } + }; + behinstProto.setOutLayerChildrenVisible = function (isVisible) + { + var layerInsts, self = this; + Object.keys(this.outLayerChildren).forEach(function(key) { + layerInsts = self.outLayerChildren[key]; + for (var i = 0, l= layerInsts.length; i < l; i++) { + cr.system_object.prototype.acts.SetLayerVisible.call(self.runtime.system,layerInsts[i].layer,isVisible); + } + }); + }; + behinstProto.init = function () + { + if(this.isInit) + return; + cr.system_object.prototype.acts.SetLayerVisible.call(this.runtime.system,this.inst.layer,false); + this.setOutLayerChildrenVisible(false); + /*if(this.inst.aekiro_gameobject){ + this.inst.aekiro_gameobject.init(); + }*/ + this.dpos.prev_x = this.inst.x; + this.dpos.prev_y = this.inst.y; + this.dpos.dx = 0; + this.dpos.dy = 0; + this.inst.x = this.inst.layer.viewLeft - this.inst.width - 100; + this.inst.set_bbox_changed(); + this.setOverlay(); + this.setCloseButton(); + this.isInit = true; + }; + behinstProto.tick = function () + { + if(this.firstFrame){ + this.firstFrame = false; + this.init(); + } + /*if(this.isOpen && this.runtime.timescale == 0){ + this.resetDialogTimeScale(); + }*/ + var dt; + if(this.tween["isPlaying"]){ + dt = this.runtime.getDt(this.inst)*1000; + this.tween["update"](dt); + if(this.openAnimation == 5 || this.openAnimation == 6){ //ScaleDown|ScaleUp + var layerInsts, self = this; + Object.keys(this.outLayerChildren).forEach(function(key) { + layerInsts = self.outLayerChildren[key]; + for (var i = 0, l= layerInsts.length; i < l; i++) { + layerInsts[i].layer.scale = self.inst.layer.scale; + } + }); + this.runtime.redraw = true; + }else{ + this.inst.set_bbox_changed(); + } + } + if(this.tween_close["isPlaying"]){ + dt = this.runtime.getDt(this.inst)*1000; + this.tween_close["update"](dt); + if(this.closeAnimation == 6 || this.closeAnimation == 7){ //ScaleDown|ScaleUp + var layerInsts, self = this; + Object.keys(this.outLayerChildren).forEach(function(key) { + layerInsts = self.outLayerChildren[key]; + for (var i = 0, l= layerInsts.length; i < l; i++) { + layerInsts[i].layer.scale = self.inst.layer.scale; + } + }); + this.runtime.redraw = true; + }else{ + this.inst.set_bbox_changed(); + } + } + if(this.tween_opacity["isPlaying"]){ + dt = this.runtime.getDt(this.inst)*1000; + this.tween_opacity["update"](dt); + var layerInsts, self = this; + Object.keys(this.outLayerChildren).forEach(function(key) { + layerInsts = self.outLayerChildren[key]; + for (var i = 0, l= layerInsts.length; i < l; i++) { + layerInsts[i].layer.opacity = self.inst.layer.opacity; + } + }); + this.runtime.redraw = true; + } + if(this.tween_overlay && this.tween_overlay["isPlaying"]){ + dt = this.runtime.getDt(this.inst)*1000; + this.tween_overlay["update"](dt); + this.runtime.redraw = true; + } + }; + behinstProto.updateChildren = function () + { + if(!this.isLayerContainer){ + return; + } + if(isNaN(this.dpos.prev_x)){ + this.dpos.prev_x = this.inst.x; + this.dpos.prev_y = this.inst.y; + } + this.dpos.dx = this.inst.x - this.dpos.prev_x; + this.dpos.dy = this.inst.y - this.dpos.prev_y; + this.dpos.prev_x = this.inst.x; + this.dpos.prev_y = this.inst.y; + var inst; + if( (this.dpos.dx != 0) || (this.dpos.dy != 0) ){ + for (var i = 0, l= this.inst.layer.instances.length; i < l; i++) { + inst = this.inst.layer.instances[i]; + if ( inst.uiType == "dialog" || inst.uiType == "overlay" || inst.isSubComp===true) + continue; + inst.x += this.dpos.dx; + inst.y += this.dpos.dy; + inst.set_bbox_changed(); + if ( inst.uiType == "radiogroup" || inst.uiType =="discreteProgress" || inst.uiType =="sliderbar"){ + inst._proui.updateChildren(); + } + /*if(inst.aekiro_gameobject){ + inst.aekiro_gameobject.updateChildren(); + }*/ + } + var layerInsts; + var self = this; + Object.keys(this.outLayerChildren).forEach(function(key,index) { + layerInsts = self.outLayerChildren[key]; + for (var i = 0, l= layerInsts.length; i < l; i++) { + inst = layerInsts[i]; + inst.x += self.dpos.dx; + inst.y += self.dpos.dy; + inst.set_bbox_changed(); + } + }); + } + }; + behinstProto.tick2 = function () + { + this.updateChildren(); + }; + behinstProto.setInitialPosition = function (targetX,targetY,center){ + var initX,initY; + if(this.openAnimation == 0 || this.openAnimation == 5 || this.openAnimation == 6){ //None/ ScaleDown|ScaleUp + initX = targetX; + initY = targetY; + if(center){ + initY = (this.inst.layer.viewTop+this.inst.layer.viewBottom)/2; + initX = (this.inst.layer.viewLeft+this.inst.layer.viewRight)/2; + } + }else if(this.openAnimation == 1){ //SlideDown + initY = this.inst.layer.viewTop - (this.inst.height/2) - 100; + if(center){ + initX = (this.inst.layer.viewLeft+this.inst.layer.viewRight)/2; + }else{ + initX = targetX; + } + }else if(this.openAnimation == 2){ //SlideUp + initY = this.inst.layer.viewBottom + (this.inst.height/2) + 100; + if(center){ + initX = (this.inst.layer.viewLeft+this.inst.layer.viewRight)/2; + }else{ + initX = targetX; + } + }else if(this.openAnimation == 3){ //SlideLeft + initX = this.inst.layer.viewRight + (this.inst.width/2) + 100; + if(center){ + initY = (this.inst.layer.viewTop+this.inst.layer.viewBottom)/2; + }else{ + initY = targetY; + } + }else if(this.openAnimation == 4){ //SlideRight + initX = this.inst.layer.viewLeft - (this.inst.width/2) - 100; + if(center){ + initY = (this.inst.layer.viewTop+this.inst.layer.viewBottom)/2; + }else{ + initY = targetY; + } + } + this.inst.x = initX; + this.inst.y = initY; + this.inst.set_bbox_changed(); + this.updateChildren(); + }; + behinstProto.open = function (_targetX,_targetY,center) + { + this.init(); + if(this.isOpen || this.tween["isPlaying"]){//|| this.tween_close["isPlaying"] + return; + } + if(this.proui.isModalDialogOpened()){ + console.log("ProUI-Dialog: Can not open dialog because modal dialog is already opened"); + return; + } + if(this.tween_close["isPlaying"]){ + this.tween_close["isPlaying"] = false; + this.postClose(); + } + this.proui.addDialog(this); + this.isOpen = true; + this.runtime.trigger(cr.behaviors.aekiro_dialog.prototype.cnds.onDialogOpened, this.inst); + if(this.pauseOnOpen){ + this.prevTimescale = this.runtime.timescale; + cr.system_object.prototype.acts.SetTimescale.call(this.runtime.system,0); + } + if(this.runtime.timescale != 1){ + this.setDialogTimeScale(1); + } + this.setInitialPosition(_targetX,_targetY,center); + cr.system_object.prototype.acts.SetLayerVisible.call(this.runtime.system,this.inst.layer,true); + var layerInsts, self = this; + Object.keys(this.outLayerChildren).forEach(function(key) { + layerInsts = self.outLayerChildren[key]; + for (var i = 0, l= layerInsts.length; i < l; i++) { + cr.system_object.prototype.acts.SetLayerVisible.call(self.runtime.system,layerInsts[i].layer,true); + } + }); + var targetX = _targetX; + var targetY = _targetY; + if(center){ + targetX = (this.inst.layer.viewLeft+this.inst.layer.viewRight)/2; + targetY = (this.inst.layer.viewTop+this.inst.layer.viewBottom)/2; + } + if(this.openAnimDuration == 0){ //If anim duration = 0 then we set animation to "no animation", otherwise wierd bug emerge + this.openAnimation = 0 + } + if(this.openAnimation==1 || this.openAnimation == 2){ //SlideDown|SlideUp + this.tween["setObject"](this.inst); + this.tween["easing"](this.openAnimTweenFunction); + this.tween["to"]({y: targetY }, this.openAnimDuration); + }else if(this.openAnimation == 3 || this.openAnimation == 4){ //SlideLeft|SlideRight + this.tween["setObject"](this.inst); + this.tween["easing"](this.openAnimTweenFunction); + this.tween["to"]({x: targetX }, this.openAnimDuration); + }else if(this.openAnimation == 5 || this.openAnimation == 6){ //ScaleDown|ScaleUp + this.tween["setObject"](this.inst.layer); + this.tween["easing"](this.openAnimTweenFunction); + if(this.openAnimation == 5){ //ScaleDown + this.inst.layer.scale = 2; + }else{ //ScaleUp + this.inst.layer.scale = 0.2; + } + this.inst.layer.opacity = 0; + this.runtime.redraw = true; + this.tween["to"]({ scale: 1 }, this.openAnimDuration); + this.tween_opacity["setObject"](this.inst.layer); + this.tween_opacity["to"]({ opacity: 1 }, 300); + this.tween_opacity["easing"](TWEEN["Easing"]["Quartic"]["Out"]); + } + if(this.openAnimation>0){ + this.tween["start"](); + if(this.openAnimation == 5 || this.openAnimation == 6){ //ScaleDown|ScaleUp + this.tween_opacity["start"](); + } + }else{ + this.inst.x = targetX; + this.inst.y = targetY; + this.inst.set_bbox_changed(); + this.updateChildren(); + } + if(this.openSound){ + this.proui.playAudio(this.openSound); + } + }; + behinstProto.postOpen = function (){ + this.showOverlay(); + }; + behinstProto.getCloseTargetPosition = function (){ + var X = this.inst.x; + var Y = this.inst.y; + if(this.closeAnimation == 2){ //SlideDown + Y = this.inst.layer.viewBottom + (this.inst.height/2) + 100; + X = this.inst.x; + }else if(this.closeAnimation == 3){ //SlideUp + Y = this.inst.layer.viewTop - (this.inst.height/2) - 100; + X = this.inst.x; + }else if(this.closeAnimation == 4){ //SlideLeft + X = this.inst.layer.viewLeft - (this.inst.width/2) - 100; + Y = this.inst.y; + }else if(this.closeAnimation == 5){ //SlideRight + X = this.inst.layer.viewRight + (this.inst.width/2) + 100; + Y = this.inst.y; + } + return {x:X,y:Y}; + }; + behinstProto.close = function () + { + if(!this.isOpen || this.tween["isPlaying"] || this.tween_close["isPlaying"]){ + return; + } + this.isOpen = false; + this.runtime.trigger(cr.behaviors.aekiro_dialog.prototype.cnds.onDialogClosed, this.inst); + if(this.overlay){ + this.overlay.visible = false; + } + this.proui.removeDialog(this); + var target = this.getCloseTargetPosition(); + var targetX = target.x; + var targetY = target.y; + if(this.closeAnimDuration == 0){ //If anim duration = 0 then we set animation to "no animation", otherwise wierd bug emerge + this.closeAnimation = 0 + } + if(this.closeAnimation==2 || this.closeAnimation==3){ //SlideDown|SlideUp + this.tween_close["setObject"](this.inst); + this.tween_close["easing"](this.closeAnimTweenFunction); + this.tween_close["to"]({ y: targetY }, this.closeAnimDuration); + }else if(this.closeAnimation == 4 || this.closeAnimation == 5){ //SlideLeft|SlideRight + this.tween_close["setObject"](this.inst); + this.tween_close["easing"](this.closeAnimTweenFunction); + this.tween_close["to"]({ x: targetX }, this.closeAnimDuration); + }else if(this.closeAnimation == 6 || this.closeAnimation == 7){ //ScaleDown|ScaleUp + this.tween_close["setObject"](this.inst.layer); + this.tween_close["easing"](this.closeAnimTweenFunction); + if(this.closeAnimation == 6){ //ScaleDown + this.tween_close["to"]({ scale: 0.2 }, this.closeAnimDuration); + }else{ //ScaleUp + this.tween_close["to"]({ scale: 2 }, this.closeAnimDuration); + } + this.tween_opacity["setObject"](this.inst.layer); + this.tween_opacity["to"]({ opacity: 0 }, 300); + this.tween_opacity["easing"](TWEEN["Easing"]["Quartic"]["Out"]); + } + if(this.closeAnimation==1){//Reverse + this.tween["reverse"](); + if(this.openAnimation == 5 || this.openAnimation == 6){ //ScaleDown|ScaleUp + this.tween_opacity["reverse"](); + } + }else if(this.closeAnimation==0){//None + this.postClose(); + }else{ //SlideDown|SlideUp|SlideLeft|SlideRight|ScaleDown|ScaleUp + this.tween_close["start"](); + if(this.closeAnimation == 6 || this.closeAnimation == 7){ //ScaleDown|ScaleUp + this.tween_opacity["start"](); + } + } + if(this.closeSound){ + this.proui.playAudio(this.closeSound); + } + }; + behinstProto.postClose = function (){ + cr.system_object.prototype.acts.SetLayerVisible.call(this.runtime.system,this.inst.layer,false); + var layerInsts, self = this; + Object.keys(this.outLayerChildren).forEach(function(key) { + layerInsts = self.outLayerChildren[key]; + for (var i = 0, l= layerInsts.length; i < l; i++) { + cr.system_object.prototype.acts.SetLayerVisible.call(self.runtime.system,layerInsts[i].layer,false); + } + }); + this.inst.layer.scale = 1; + this.inst.layer.opacity = 1; + this.runtime.redraw = true; + var targetX = (this.inst.layer.viewLeft+this.inst.layer.viewRight)/2; + var targetY = this.inst.layer.viewTop - (this.inst.height/2) -100; + this.inst.x = targetX; + this.inst.y = targetY; + this.inst.set_bbox_changed(); + this.updateChildren(); + if(this.pauseOnOpen){ + cr.system_object.prototype.acts.SetTimescale.call(this.runtime.system,this.prevTimescale); + } + if(this.runtime.timescale != 0){ + this.setDialogTimeScale(-1); //-1 indicate game time (cf RestoreObjectTimescale in system.js) + } + }; + behinstProto.onDestroy = function () + { + this.proui.removeDialog(this); + }; + behinstProto.saveToJSON = function () + { + return { + }; + }; + behinstProto.loadFromJSON = function (o) + { + }; + function Cnds() {}; + Cnds.prototype.onDialogOpened = function () + { + return true; + }; + Cnds.prototype.onDialogClosed = function () + { + return true; + }; + Cnds.prototype.isOpened = function () + { + return this.isOpen; + }; + behaviorProto.cnds = new Cnds(); + function Acts() {}; + Acts.prototype.Open = function (targetX,targetY,center) + { + this.open(targetX,targetY,center); + }; + Acts.prototype.Close = function () + { + this.close(); + }; + behaviorProto.acts = new Acts(); + function Exps() {}; + behaviorProto.exps = new Exps(); +}()); +; +; +cr.behaviors.aekiro_gameobject2 = function(runtime) +{ + this.runtime = runtime; +}; +(function () +{ + var behaviorProto = cr.behaviors.aekiro_gameobject2.prototype; + behaviorProto.Type = function(behavior, objtype) + { + this.behavior = behavior; + this.objtype = objtype; + this.runtime = behavior.runtime; + }; + var behtypeProto = behaviorProto.Type.prototype; + behtypeProto.onCreate = function() + { + }; + behaviorProto.Instance = function(type, inst) + { + this.type = type; + this.behavior = type.behavior; + this.inst = inst; + this.runtime = type.runtime; + if(!cr.goManager){ + var runtime = this.runtime; + cr.goManager = { + gos : {}, + toBeDestroyed : [], + addGO : function(inst){ + if(!inst)return; + if(!inst.aekiro_gameobject2.name){ + inst.aekiro_gameobject2.name = "o"+inst.uid; + } + /*if(!name){ + console.error("Aekiro Hierarchy: object of uid=%s has no name !",inst.uid); + return; + }*/ + var name = inst.aekiro_gameobject2.name; + if(this.gos.hasOwnProperty(name)){ + console.error("Aekiro Hierarchy: GameObject already exist with name: %s !",name); + return; + } + this.gos[name] = inst; + }, + removeGO : function(name){ + delete this.gos[name]; + }, + clearDestroyList : function (){ + var toBeDestroyed = this.toBeDestroyed; + for (var i = 0,l=toBeDestroyed.length; i < l; i++) { + runtime.DestroyInstance(toBeDestroyed[i]); + } + toBeDestroyed.length = 0; + }, + createInst : function (objtype,_layer,x,y) + { + var layer = (typeof _layer == "number")?this.runtime.getLayerByNumber(_layer):(typeof _layer == "string")?this.runtime.getLayerByName(_layer):_layer; + var inst = runtime.createInstance(objtype,layer); + /*var sol = objtype.getCurrentSol(); + sol.select_all = false; + cr.clearArray(sol.instances); + sol.instances[0] = inst;*/ + return inst; + }, + clone : function (t_node,parent,layer, x, y){ + cr.haltNext = true; + var inst = this.createInst(t_node.parent.type, layer); + cr.haltNext = false; + inst.type.plugin.acts.LoadFromJsonString.call(inst,t_node.parent.json); + inst.x = x; + inst.y = y; + inst.set_bbox_changed(); + inst.update_bbox(); + inst.aekiro_gameobject2.name = ""; + inst.aekiro_gameobject2.onCreateInit(); + if(parent){ + inst.aekiro_gameobject2.parentName = parent.aekiro_gameobject2.name; + } + for (var i = 0, l= t_node.children.length; i < l; i++) { + this.clone(t_node.children[i], inst, layer, inst.bbox.left+t_node.children[i].parent.relX, inst.bbox.top+t_node.children[i].parent.relY); + } + inst.aekiro_gameobject2.init(); + return inst; + } + } + } + }; + var behinstProto = behaviorProto.Instance.prototype; + behinstProto.onCreate = function() + { + this.goManager = cr.goManager; + this.name = this.properties[0]; + this.parentName = this.properties[1]; + this.firstFrame = true; + this.inst.aekiro_gameobject2 = this; + this.isInit = false; + this.areChildrenRegistred = false; + this.children = []; + if(!cr.haltNext){ + this.onCreateInit(); + } + }; + behinstProto.onCreateInit = function(){ + this.goManager.addGO(this.inst); + this.local = {x:0,y:0,angle:0}; + this.inst.update_bbox(); + this.prev = { + x : this.inst.x, + y : this.inst.y, + angle : this.inst.angle, + width: this.inst.width, + height: this.inst.height, + }; + var set_bbox_changed_old = this.inst.set_bbox_changed; + this.inst.set_bbox_changed_old = this.inst.set_bbox_changed; + this.inst.set_bbox_changed = function(){ + this.aekiro_gameobject2.local_update(); + this.aekiro_gameobject2.children_update(); + set_bbox_changed_old.call(this); + }; + }; + behinstProto.local_update = function(){ + this.parent = this.parent_get(); + if(this.parent){ + var res = this.globalToLocal(this.inst,this.parent); + this.local.x = res.x; + this.local.y = res.y + this.local.angle = res.angle; + } + }; + behinstProto.local_set = function(x,y,angle){ + this.parent = this.parent_get(); + if(this.parent){ + var inst = this.inst; + if(x!=undefined)this.local.x = x; + if(y!=undefined)this.local.y = y; + if(angle!=undefined)this.local.angle = angle; + inst.x = this.parent.x + this.local.x*Math.cos(this.parent.angle) - this.local.y*Math.sin(this.parent.angle); + inst.y = this.parent.y + this.local.x*Math.sin(this.parent.angle) + this.local.y*Math.cos(this.parent.angle); + inst.angle = this.parent.angle + this.local.angle; + this.prev.x = inst.x; + this.prev.y = inst.y; + this.prev.angle = inst.angle; + this.children_update(); + this.inst.set_bbox_changed_old(); + } + }; + behinstProto.children_add = function(inst){ + var name,aekiro_gameobject2; + if (typeof inst === 'string'){ //add by child name + name = inst; + inst = null; + }else{ + aekiro_gameobject2 = inst.aekiro_gameobject2; + if(!aekiro_gameobject2){ + console.error("Aekiro GameObject: You're adding a child (uid=%s) without a gameobject behavior on it.",inst.uid); + return; + } + name = inst.aekiro_gameobject2.name; + } + inst = this.goManager.gos[name]; + if(!inst){ + console.error("Aekiro GameObject: Object of name : %s not found !",name); + return; + } + if(name == this.parentName){ + console.error("Aekiro GameObject: Cannot add %s as a child of %s, because %s is its parent !",name,this.name,name); + return; + } + if(this.children.indexOf(inst) > -1){ + console.error("Aekiro GameObject: Object %s already have a child named %s !",this.name,name); + return; + } + aekiro_gameobject2 = inst.aekiro_gameobject2; + aekiro_gameobject2.removeFromParent(); //if inst is already a child of another parent then remove it from its parent. + aekiro_gameobject2.parentName = this.name; + /*initial local.x should be computed using x of parent as it is in the editor + we use self.prev.x instead of self.inst.x otherwise and in case of a "set x" action that happens on "on start of layout" + the local.x will be computed used the new value set by "set x" + */ + /*aekiro_gameobject2.local.x = inst.x - this.prev.x ; + aekiro_gameobject2.local.y = inst.y - this.prev.y ; + aekiro_gameobject2.local.angle = inst.angle - this.prev.angle;*/ + var res = this.globalToLocal2(inst,this.prev.x,this.prev.y,this.prev.angle); + aekiro_gameobject2.local.x = res.x; + aekiro_gameobject2.local.y = res.y + aekiro_gameobject2.local.angle = res.angle; + this.children.push(inst); + }; + behinstProto.children_remove = function(inst){ + var index = -1; + if (typeof inst === 'string'){ //remove by child name + for (var i = 0, l= this.children.length; i < l; i++) { + if(this.children[i].aekiro_gameobject2.name==inst){ + index = i; + break; + } + } + }else{ + index = this.children.indexOf(inst); + } + if(index!=-1){ + this.children[index].aekiro_gameobject2.parentName = ""; + this.children[index].aekiro_gameobject2.parent = null; + this.children.splice(index, 1); + } + }; + behinstProto.children_update = function () + { + if(!this.areChildrenRegistred) + this.registerChildren(); + this.prev.x = this.inst.x; + this.prev.y = this.inst.y; + this.prev.angle = this.inst.angle; + if(!this.children.length) + return; + var parent_inst = this.inst; + parent_inst.width = parent_inst.width==0?0.1:parent_inst.width; + parent_inst.height = parent_inst.height==0?0.1:parent_inst.height; + var wf = parent_inst.width/this.prev.width; + var hf = parent_inst.height/this.prev.height; + this.prev.width = parent_inst.width; + this.prev.height = parent_inst.height; + var inst, goManager = this.goManager; + for (var i = 0, l= this.children.length; i < l; i++) { + inst = this.children[i]; + if(wf!=1){ + inst.width *= wf; + inst.aekiro_gameobject2.local.x *=wf; + } + if(hf!=1){ + inst.height *= hf; + inst.aekiro_gameobject2.local.y *=hf; + } + inst.x = parent_inst.x + inst.aekiro_gameobject2.local.x*Math.cos(parent_inst.angle) - inst.aekiro_gameobject2.local.y*Math.sin(parent_inst.angle); + inst.y = parent_inst.y + inst.aekiro_gameobject2.local.x*Math.sin(parent_inst.angle) + inst.aekiro_gameobject2.local.y*Math.cos(parent_inst.angle); + inst.angle = parent_inst.angle + inst.aekiro_gameobject2.local.angle; + inst.aekiro_gameobject2.prev.x = inst.x; + inst.aekiro_gameobject2.prev.y = inst.y; + inst.aekiro_gameobject2.prev.angle = inst.angle; + inst.set_bbox_changed_old(); + inst.aekiro_gameobject2.children_update(); + } + }; + behinstProto.scopeToParent = function (local,parent_inst){ + var res = {}; + res.x = parent_inst.x + local.x*Math.cos(parent_inst.angle) - local.y*Math.sin(parent_inst.angle); + res.y = parent_inst.y + local.x*Math.sin(parent_inst.angle) + local.y*Math.cos(parent_inst.angle); + res.angle = parent_inst.angle + local.angle; + return res; + }; + behinstProto.localToGlobal = function (){ + let parent = this.parent_get(); + var local = this.local; + var res = {}; + if (!parent) { + return { + x: this.inst.x, + y: this.inst.y, + angle: this.inst.angle + } + } + while (parent) { + res.x = parent.x + local.x*Math.cos(parent.angle) - local.y*Math.sin(parent.angle); + res.y = parent.y + local.x*Math.sin(parent.angle) + local.y*Math.cos(parent.angle); + res.angle = parent.angle + local.angle; + local = { + x: res.x, + y: res.y, + angle: res.angle + } + parent = parent.aekiro_gameobject2.parent_get(); + } + return res; + }; + behinstProto.globalToLocal = function (inst,parent_inst){ + var res = {}; + res.x = (inst.x-parent_inst.x)*Math.cos(parent_inst.angle) + (inst.y-parent_inst.y)*Math.sin(parent_inst.angle); + res.y = -(inst.x-parent_inst.x)*Math.sin(parent_inst.angle) + (inst.y-parent_inst.y)*Math.cos(parent_inst.angle); + res.angle = inst.angle - parent_inst.angle; + return res; + }; + behinstProto.globalToLocal2 = function (inst,p_x,p_y,p_angle){ + var res = {}; + res.x = (inst.x-p_x)*Math.cos(p_angle) + (inst.y-p_y)*Math.sin(p_angle); + res.y = -(inst.x-p_x)*Math.sin(p_angle) + (inst.y-p_y)*Math.cos(p_angle); + res.angle = inst.angle - p_angle; + return res; + }; + behinstProto.registerChildren = function (){ + if(this.areChildrenRegistred) + return; + var gos = this.goManager.gos; + var go; + var self = this; + if(this.name){ + Object.keys(gos).forEach(function(key) { + go = gos[key]; + if(go.aekiro_gameobject2.parentName == self.name){ + self.children_add(go); + go.aekiro_gameobject2.registerChildren(); + } + }); + } + this.areChildrenRegistred = true; + console.log("registerChildren"); + }; + behinstProto.init = function (){ + if(this.isInit){ + return; + } + this.registerChildren(); + this.children_update(); + this.isInit = true; + this.setVisible(this.inst.visible); + }; + behinstProto.tick = function () + { + if(this.firstFrame){ + this.firstFrame = false; + this.init(); + } + }; + behinstProto.tick2 = function () + { + }; + behinstProto.setVisible = function (isVisible){ + this.init(); + this.inst.type.plugin.acts.SetVisible.call(this.inst,isVisible); + var children = this.children; + for (var i = 0, l= children.length; i < l; i++) { + children[i].aekiro_gameobject2.setVisible(isVisible); + } + }; + behinstProto.setOpacity = function (v){ + this.init(); + var SetOpacity = this.inst.type.plugin.acts.SetOpacity; + SetOpacity.call(this.inst,v); + var children = this.children; + for (var i = 0, l= children.length; i < l; i++) { + children[i].aekiro_gameobject2.setOpacity(v); + } + }; + behinstProto.getTemplate = function (node,parent,template){ + this.init(); + if(!node){ + node = this.inst; + } + if(!template){ + template = []; + } + if(parent){ + parent.update_bbox(); + } + template.push({ + parent:{ + type: node.type, + relX: parent?node.x - parent.bbox.left:null, + relY: parent?node.y - parent.bbox.top:null, + json:JSON.stringify(this.runtime.saveInstanceToJSON(node, true)) + }, + children:[] + }); + var children = node.aekiro_gameobject2.children; + for (var i = 0, l= children.length; i < l; i++) { + this.getTemplate(children[i],node,template[template.length-1].children); + } + return template[0]; + }; + behinstProto.parent_get = function () + { + if(!this.parent && this.parentName && this.name){ + this.parent = this.goManager.gos[this.parentName]; + } + return this.parent; + }; + behinstProto.removeFromParent = function () + { + this.parent = this.parent_get(); + if(this.parent){ + this.parent.aekiro_gameobject2.children_remove(this.inst); + } + }; + behinstProto.onDestroy = function () + { + var goManager = this.goManager; + if(!this.runtime.changelayout){ + for (var i = 0,l=this.children.length; i < l; i++) { + goManager.toBeDestroyed.push(this.children[i]); + } + setTimeout(function(){ goManager.clearDestroyList(); }, 0); + } + this.children.length = 0; + goManager.removeGO(this.name); + this.inst.set_bbox_changed = this.inst.set_bbox_changed_old; + this.removeFromParent(); + }; + behinstProto.saveToJSON = function () + { + return { + }; + }; + behinstProto.loadFromJSON = function (o) + { + }; + function Cnds() {}; + Cnds.prototype.IsName = function (name){ + return (name == this.name); + }; + Cnds.prototype.IsParent = function (name){ + return (name == this.parentName); + }; + Cnds.prototype.OnCloned = function () + { + return true; + }; + behaviorProto.cnds = new Cnds(); + function Acts() {}; + Acts.prototype.Clone = function (layer,x,y) + { + var template = []; + template = this.getTemplate(this.inst); + var inst = this.goManager.clone(template,null,layer,x,y); + this.runtime.trigger(cr.behaviors.aekiro_gameobject2.prototype.cnds.OnCloned, inst); + /*var sol = inst.type.getCurrentSol(); + sol.select_all = false; + cr.clearArray(sol.instances); + sol.instances[0] = inst;*/ + }; + Acts.prototype.SetVisible = function (isVisible) + { + this.setVisible(isVisible); + }; + Acts.prototype.SetOpacity = function (v) + { + this.setOpacity(v); + }; + Acts.prototype.AddChildrenFromLayer = function (_layer) + { + this.init(); + var layer = (typeof _layer == "number")?this.runtime.getLayerByNumber(_layer):(typeof _layer == "string")?this.runtime.getLayerByName(_layer):_layer; + var inst, name; + for (var i = 0, l= layer.instances.length; i < l; i++) { + this.children_add(layer.instances[i]); + } + }; + Acts.prototype.AddChildrenFromType = function (type) + { + if (!type) + return; + var instances = type.getCurrentSol().getObjects(); + for (var i = 0, l= instances.length; i < l; i++) { + this.children_add(instances[i]); + } + }; + Acts.prototype.AddChildByName = function (name) + { + this.children_add(name); + }; + Acts.prototype.SetLocalPosition = function (x,y) + { + this.local_set(x,y); + }; + Acts.prototype.SetLocal = function (prop,value) + { + if(prop==0){ + this.local_set(value);//x + }else if(prop==1){ + this.local_set(null,value);//y + }else if(prop==2){ + this.local_set(null,null,value);//angle + } + }; + Acts.prototype.RemoveChildByName = function (name) + { + this.children_remove(name); + }; + Acts.prototype.RemoveChildByType = function (type) + { + if (!type) + return; + var instances = type.getCurrentSol().getObjects(); + for (var i = 0, l= instances.length; i < l; i++) { + this.children_remove(instances[i]); + } + }; + Acts.prototype.RemoveFromParent = function () + { + this.removeFromParent(); + }; + behaviorProto.acts = new Acts(); + function Exps() {}; + Exps.prototype.name = function (ret) + { + ret.set_string(this.name); + }; + Exps.prototype.parent = function (ret) + { + ret.set_string(this.parentName); + }; + Exps.prototype.local = function (ret,prop) + { + if(!this.parent_get()){ + ret.set_float(0); + }else{ + if(prop=="x"){ + ret.set_float(this.local.x); + }else if(prop=="y"){ + ret.set_float(this.local.y); + }else if(prop=="angle"){ + ret.set_float(this.local.angle); + }else{ + ret.set_float(0); + } + } + }; + Exps.prototype.global = function (ret,prop) + { + var parent = this.parent_get(); + if(!parent){ + if(prop === "x") { + ret.set_float(this.inst.x); + } else if(prop === "y") { + ret.set_float(this.inst.y); + } else if(prop === "angle") { + ret.set_float(this.inst.angle); + } else { + ret.set_float(0); + } + }else{ + let global = this.localToGlobal(); + if(prop === "x") { + ret.set_float(global.x); + } else if(prop === "y") { + ret.set_float(global.y); + } else if(prop === "angle") { + ret.set_float(global.angle); + } else { + ret.set_float(0); + } + } + }; + behaviorProto.exps = new Exps(); +}()); +; +; +cr.behaviors.aekiro_gridView = function(runtime) +{ + this.runtime = runtime; +}; +(function () +{ + var behaviorProto = cr.behaviors.aekiro_gridView.prototype; + behaviorProto.Type = function(behavior, objtype) + { + this.behavior = behavior; + this.objtype = objtype; + this.runtime = behavior.runtime; + }; + var behtypeProto = behaviorProto.Type.prototype; + behtypeProto.onCreate = function() + { + }; + behaviorProto.Instance = function(type, inst) + { + this.type = type; + this.behavior = type.behavior; + this.inst = inst; + this.runtime = type.runtime; + if(!cr.proui){ + throw new Error("ProUI Plugin not found. Please add it to the project."); + return; + } + }; + var behinstProto = behaviorProto.Instance.prototype; + behinstProto.onCreate = function() + { + this.proui = cr.proui; + this.proui.isTypeValid(this.inst,[cr.plugins_.Sprite,cr.plugins_.NinePatch,cr.plugins_.TiledBg],"ProUI-GRIDVIEW: GridView behavior is only applicable to Sprite Or 9-patch objects."); + this.itemUID = this.properties[0]; + this.columns = this.properties[1]; + this.rows = this.properties[2]; + this.vspace = this.properties[3]; + this.hspace = this.properties[4]; + this.VPadding = this.properties[5]; + this.HPadding = this.properties[6]; + this.dialogUID = this.properties[7]; + this.firstFrame = true; + this.inst.uiType = "gridView"; + this.uiType = "gridView"; + this.inst._proui = this; + this.dpos = {}; + this.template = {}; + this.isTemplateSet = false; + this.value = []; + this.items = []; + this.isViewBuilt = false; + this.it_column = 0; //column iterator + this.it_row = 0; //row iterator + this.firstUpdateView = false; + this.scrollView = null; + this.isScrollViewInit = false; + this.triggerRenderTickCt = 0; + this.triggerRenderTickMax = 4; + }; + behinstProto.updateFromModel = function (){ + var modelB = this.inst.proui_model; + if(modelB){ + var value = modelB.getFromModel(); + if(value == null){ + return; + } + if(!isArray(value)){ + console.error("ProUI-GRIDVIEW: The value at the key %s of the model of uid= %s, is not an array !",modelB.modelKey,modelB.modelUID); + return; + } + this.value = value; + } + }; + behinstProto._setValue = function (value, options){ + if(value == null){ + value = []; + } + if(!isArray(value)){ + var modelB = this.inst.proui_model; + console.error("ProUI-GRIDVIEW: The value at the key %s of the model of uid= %s, is not an array !",modelB.modelKey,modelB.modelUID); + return; + } + this.value = value; + this.updateView(options); + }; + behinstProto.setItemTemplate = function (){ + if(this.isTemplateSet){ + return; + } + this.setTemplateVisible(true); + var item = this.proui.tags[this.itemUID]; + if(!item){ + throw new Error("ProUI-GRIDVIEW: Grid item not found, please check gridItem uid"); + return; + } + this.proui.isTypeValid(item,[cr.plugins_.Sprite,cr.plugins_.NinePatch,cr.plugins_.TiledBg],"ProUI-GRIDVIEW: Grid item can only be a Sprite Or 9-patch object."); + item.uiType = "gridItem"; + item.update_bbox(); + this.template.item = {}; + this.template.item.type = item.type; + this.template.item.width = item.width; + this.template.item.height = item.height; + this.template.item.uiType = "gridItem"; + this.template.item.offsetX = item.x - item.bbox.left; + this.template.item.offsetY = item.y - item.bbox.top; + this.template.item.json = JSON.stringify(this.runtime.saveInstanceToJSON(item, true)); + this.template.subs = []; //subitems + var inst, inst_template; + /* on firstframe the gridview update its view. the issue is that setTemplate might happens before the sliderbar set the slider button + with isSubComp == true and then get saved in the template. + */ + for (var i = 0, l= this.inst.layer.instances.length; i < l; i++) { + inst = this.inst.layer.instances[i]; + if (inst.uiType == "discreteProgress" || inst.uiType == "sliderbar" || inst.uiType == "progress" || inst.uiType == "scrollView"){ + inst._proui.init(); + } + } + for (var i = 0, l= this.inst.layer.instances.length; i < l; i++) { + inst = this.inst.layer.instances[i]; + if ( inst.uiType == "gridView" || inst.uiType == "gridItem" || inst.uiType == "dialog" || inst.uiType == "scrollView" || inst.uiType == "radiobutton" || inst.uiType == "scrollBar" || inst.uiType == "slider") + continue; + if(inst.isSubComp === true){ + continue; + } + inst_template = null; + if(inst.uiType == "radiogroup" || inst.uiType == "discreteProgress" || inst.uiType == "sliderbar"){ + inst_template = inst._proui.getTemplate(); + } + this.template.subs.push({ + type : inst.type, + relX: inst.x - item.bbox.left, + relY: inst.y - item.bbox.top, + json: JSON.stringify(this.runtime.saveInstanceToJSON(inst, true)), + bindkey: inst.proui_bind?inst.proui_bind.bind_key:"", + template: inst_template + }); + } + this.isTemplateSet = true; + for (var i = 0, l= this.inst.layer.instances.length; i < l; i++) { + inst = this.inst.layer.instances[i]; + if ( inst.uiType == "gridView" || inst.uiType == "dialog" || inst.uiType == "scrollView" || inst.uiType == "radiobutton" || inst.uiType == "scrollBar" || inst.uiType == "slider" || inst.isSubComp === true) + continue; + this.runtime.DestroyInstance(inst); + } + }; + behinstProto.initScrollView = function (){ + if(this.isScrollViewInit){ + return; + } + var inst; + for (var i = 0, l= this.inst.layer.instances.length; i < l; i++) { + inst = this.inst.layer.instances[i]; + if ( inst.uiType == "scrollView"){ + inst._proui.init(); + this.isScrollViewInit = true; + return; + } + } + }; + behinstProto.updateView = function (options){ + if(this.rows<=0 && this.columns<=0){ + console.error("ProUI-GRIDVIEW: max rows and max columns can't be both -1 or 0"); + return; + } + this.initScrollView(); + this.setItemTemplate(); + this.inst.update_bbox(); + this.initBboxTop = this.inst.bbox.top; + this.initBboxLeft = this.inst.bbox.left; + if(this.value.length == 0){ + this.clear(); + }else if(options.op == 2){ //load + this.build(); + }else if(options.op == 1){//push + if(this.rows>0 && this.columns>0 && this.it_row==this.rows){ + return; + } + this.add(this.value.length-1); + this.nextRowColumn(); + this.resize(); + }else if(options.op == -1){ //remove + this.remove(options.idx); + }else if(options.op == 3){ //insert + this.build(); + }else if(options.op == 4){ //edit + this.edit(options.key,options.value); + } + this.dpos.prev_x = this.inst.x; + this.dpos.prev_y = this.inst.y; + this.dpos.dx = 0; + this.dpos.dy = 0; + if(this.scrollView){ + this.scrollView.postGridviewUpdate(); + } + if(this.firstUpdateView){ + this.runtime.trigger(cr.behaviors.aekiro_gridView.prototype.cnds.OnRender, this.inst); + } + this.firstUpdateView = true; + }; + behinstProto.edit = function (key,value){ + var modelB = this.inst.proui_model; + var modelKey = modelB.modelKey; + var itemIndex = 0; + var subKey; + if(key.slice(0, modelKey.length+1) == (modelKey+".") ){ //make sure that key is a subkey of this.modelKey and not the opposite + var keys = key.slice(modelKey.length+1);//extract the part after the modelkey (0.coinValue) + var keysArray = keys.split("."); + if(keysArray.length>1){ + itemIndex = keysArray[0]; + subKey = keys.slice(itemIndex.length+1); + var item = this.items[itemIndex]; + if(!item){ + return; + } + for (var j = 0,m=item.subs.length; j < m; j++) { + var subItem = item.subs[j]; + if(subItem.proui_bind && subItem.proui_bind.bind_key == subKey){ + subItem.proui_bind.setValue(value); + } + } + } + } + }; + behinstProto.clear = function (){ + for (var i = 0,l=this.items.length; i < l; i++) { + this.runtime.DestroyInstance(this.items[i].parent); + for (var j = 0,m=this.items[i].subs.length; j < m; j++) { + this.runtime.DestroyInstance(this.items[i].subs[j]); + } + } + this.items.length = 0; + this.it_column = 0; //column iterator + this.it_row = 0; //row iterator + this.inst.width = 5; + this.inst.height = 5; + this.inst.set_bbox_changed(); + this.inst.update_bbox(); + this.inst.x = this.initBboxLeft + (this.inst.x-this.inst.bbox.left); + this.inst.y = this.initBboxTop + (this.inst.y-this.inst.bbox.top); + this.inst.set_bbox_changed(); + }; + behinstProto.resize = function (){ + var row = Math.ceil(this.value.length/this.columns); + var column = Math.ceil(this.value.length/this.rows); + if(this.rows<0){ + column = this.columns; + if(this.value.length0 && this.columns>0){ + var itemsCount = this.rows * this.columns; + if(this.value.length>=itemsCount){ + this.add(itemsCount-1); + this.nextRowColumn(); + this.resize(); + } + } + }; + behinstProto.setTemplateVisible = function (isVisible){ + if(this.isTemplateSet) + return; + var inst; + /* on firstframe the gridview update its view. the issue is that setTemplate might happens before the sliderbar set the slider button + with isSubComp == true and then get saved in the template. + */ + for (var i = 0, l= this.inst.layer.instances.length; i < l; i++) { + inst = this.inst.layer.instances[i]; + if (inst.uiType == "discreteProgress" || inst.uiType == "sliderbar" || inst.uiType == "progress" || inst.uiType == "scrollView"){ + inst._proui.init(); + } + } + /*for (var i = 0, l= this.inst.layer.instances.length; i < l; i++) { + inst = this.inst.layer.instances[i]; + if ( inst && (inst.uiType == "gridView" || inst.uiType == "dialog" || inst.uiType == "scrollView" || inst.uiType == "scrollBar" || inst.uiType == "slider") ) + continue; + inst.visible = isVisible; + }*/ + }; + behinstProto.tick = function () + { + if(this.firstFrame){ + this.firstFrame = false; + this.setTemplateVisible(false); + var dialog = this.proui.tags[this.dialogUID]; + if(dialog && (dialog.uiType == "dialog") && dialog._proui){ + if(!dialog._proui.outLayerChildren[this.inst.layer.name]){ + dialog._proui.outLayerChildren[this.inst.layer.name] = []; + } + dialog._proui.outLayerChildren[this.inst.layer.name].push(this.inst); + } + this.dpos.prev_x = this.inst.x; + this.dpos.prev_y = this.inst.y; + this.dpos.dx = 0; + this.dpos.dy = 0; + this.updateFromModel(); + if(!this.firstUpdateView){ + this.updateView({op:2}); + } + } + /*if(this.triggerRenderTickCt != 0){ + this.triggerRenderTickCt++; + if(this.triggerRenderTickCt == this.triggerRenderTickMax){ + this.triggerRenderTickCt = 0; + this.runtime.trigger(cr.behaviors.aekiro_gridView.prototype.cnds.OnRender, this.inst); + console.log("trigger render"); + } + }*/ + }; + behinstProto.updateChildren = function () + { + if(isNaN(this.dpos.prev_x)){ + this.dpos.prev_x = this.inst.x; + this.dpos.prev_y = this.inst.y; + } + this.dpos.dx = this.inst.x - this.dpos.prev_x; + this.dpos.dy = this.inst.y - this.dpos.prev_y; + this.dpos.prev_x = this.inst.x; + this.dpos.prev_y = this.inst.y; + var inst; + if( (this.dpos.dx != 0) || (this.dpos.dy != 0) ){ + for (var i = 0, l= this.inst.layer.instances.length; i < l; i++) { + inst = this.inst.layer.instances[i]; + if ( inst.isSubComp===true || (inst.uiType == "gridView") || (inst.uiType == "dialog") || (inst.uiType == "scrollView") || (inst.uiType == "scrollBar") || (inst.uiType == "slider")) + continue; + inst.x += this.dpos.dx; + inst.y += this.dpos.dy; + inst.set_bbox_changed(); + } + } + }; + behinstProto.tick2 = function () + { + this.updateChildren(); + }; + behinstProto.onDestroy = function () + { + }; + behinstProto.saveToJSON = function () + { + return { + }; + }; + behinstProto.loadFromJSON = function (o) + { + }; + var isObject = function(a) { + return (!!a) && (a.constructor === Object); + }; + var isArray = function(a) { + return (!!a) && (a.constructor === Array); + }; + var getValueByKeyString = function(o, s) { + s = s.replace(/\[(\w+)\]/g, '.$1'); // convert indexes to properties + s = s.replace(/^\./, ''); // strip a leading dot + var a = s.split('.'); + for (var i = 0, n = a.length; i < n; ++i) { + var k = a[i]; + if (k in o) { + o = o[k]; + } else { + return; + } + } + return o; + }; + function Cnds() {}; + Cnds.prototype.OnRender = function (){ + return true; + }; + behaviorProto.cnds = new Cnds(); + function Acts() {}; + behaviorProto.acts = new Acts(); + function Exps() {}; + behaviorProto.exps = new Exps(); +}()); +; +; +cr.behaviors.aekiro_modelB = function(runtime) +{ + this.runtime = runtime; +}; +(function () +{ + var behaviorProto = cr.behaviors.aekiro_modelB.prototype; + behaviorProto.Type = function(behavior, objtype) + { + this.behavior = behavior; + this.objtype = objtype; + this.runtime = behavior.runtime; + }; + var behtypeProto = behaviorProto.Type.prototype; + behtypeProto.onCreate = function() + { + }; + behaviorProto.Instance = function(type, inst) + { + this.type = type; + this.behavior = type.behavior; + this.inst = inst; + this.runtime = type.runtime; + if(!cr.proui){ + throw new Error("ProUI Plugin not found. Please add it to the project."); + return; + } + }; + var behinstProto = behaviorProto.Instance.prototype; + behinstProto.onCreate = function() + { + this.proui = cr.proui; + this.modelUID = this.properties[0]; + this.modelKey = this.properties[1]; + this.model = this.proui.tags[this.modelUID]; + this.model = (!!this.model && this.model.uiType == "model")?this.model:null; + this.firstFrame = true; + this.inst.proui_model = this; + if(this.model && this.modelKey){ + this.model.registerBehavior(this); + } + }; + behinstProto.setModelValue = function (value,options){ + if(this.model && this.modelKey){ + cr.plugins_.aekiro_model.prototype.acts.SetValueByKeyString.call(this.model,this.modelKey,value,options); + } + }; + behinstProto.setElementValue = function (value,options){ + var inst = this.inst; + if(inst._proui && inst._proui._setValue){ + inst._proui._setValue(value,options); + } + }; + behinstProto.getFromModel = function (){ + var value = null; + if(this.model && this.modelKey){ + value = this.model.getValue(this.modelKey); + } + return value; + }; + behinstProto.tick = function () + { + /*if(this.firstFrame){ + this.firstFrame = false; + }*/ + }; + behinstProto.onDestroy = function () + { + if(this.model){ + this.model.unregisterBehavior(this); + } + this.modelUID = 0; + this.modelKey = ""; + this.model = null; + }; + behinstProto.saveToJSON = function () + { + }; + behinstProto.loadFromJSON = function (o) + { + }; + function Cnds() {}; + behaviorProto.cnds = new Cnds(); + function Acts() {}; + Acts.prototype.Reset = function () + { + if(this.model){ + this.model.unregisterBehavior(this); + } + this.modelUID = ""; + this.modelKey = ""; + this.model = null; + }; + behaviorProto.acts = new Acts(); + function Exps() {}; + behaviorProto.exps = new Exps(); +}()); +; +; +cr.behaviors.aekiro_scrollView = function(runtime) +{ + this.runtime = runtime; +}; +(function () +{ + var behaviorProto = cr.behaviors.aekiro_scrollView.prototype; + behaviorProto.Type = function(behavior, objtype) + { + this.behavior = behavior; + this.objtype = objtype; + this.runtime = behavior.runtime; + }; + var behtypeProto = behaviorProto.Type.prototype; + behtypeProto.onCreate = function() + { + }; + behaviorProto.Instance = function(type, inst) + { + this.type = type; + this.behavior = type.behavior; + this.inst = inst; + this.runtime = type.runtime; + if(!cr.proui){ + throw new Error("ProUI Plugin not found. Please add it to the project."); + return; + } + if(!this.behavior.isHooked){ + cr.proui.HookMe(this.behavior,["touch","wheel"]); + this.behavior.isHooked = true; + } + }; + var behinstProto = behaviorProto.Instance.prototype; + behinstProto.onCreate = function() + { + this.proui = cr.proui; + this.proui.isTypeValid(this.inst,[cr.plugins_.Sprite,cr.plugins_.NinePatch,cr.plugins_.TiledBg],"Pro UI: ScrollView behavior is only applicable to Sprite Or 9-patch objects."); + this.scrolling = this.properties[0]; + this.isSwipeScroll = this.properties[1]; + this.isMouseScroll = this.properties[2]; + this.contentUID = this.properties[3]; + this.vSliderUID = this.properties[4]; + this.vScrollBarUID = this.properties[5]; + this.hSliderUID = this.properties[6]; + this.hScrollBarUID = this.properties[7]; + this.inertia = this.properties[8]; + this.movement = this.properties[9]; //0:clamped; 1:elastic + this.dialogUID = this.properties[10]; + if(!this.inertia){ //If there's no inertia, then the movement can't be elastic. + this.movement = 0; + } + this.elasticF = 1; + if(this.movement){ + this.elasticF = 0.4; + } + this.firstFrame = true; + this.uiType = "scrollView"; + this.inst.uiType = "scrollView"; + this.inst._proui = this; + this.dpos = {}; + this.proui.scrollViews["l"+this.inst.layer.index] = this; + this.onTouchStarted = false; + this.isTouchMoving = false; + this.onSliderTouchStarted = false; + this.onvSliderTouchStarted = false; + this.onhSliderTouchStarted = false; + this.content = null; + this.vSlider = null; + this.vScrollBar = null; + this.hSlider = null; + this.hScrollBar = null; + this.contentPrevWidth = 0; + this.contentPrevHeight = 0; + this.contentDpos = {}; + this.isInit = false; + this.isContentGridView = false; + this.scroll = { + isEnabled:false, + prevTouchX : 0, + dx:0, + prevTouchY : 0, + dy:0, + scrollRatio:0, + vScrolling: (this.scrolling == 0) || (this.scrolling == 2), + hScrolling: (this.scrolling == 1) || (this.scrolling == 2), + isSwipeScroll: this.isSwipeScroll, + isMouseScroll:this.isMouseScroll, + vSliderDy:0, + hSliderDx:0, + scrollToTargetY:null, + scrollToTargetX:null, + scrollToX:false, + scrollToY:false, + scrollToSmooth : 0.3 + }; + }; + behinstProto.scrollTo = function (targetX,targetY,targetType,smooth){ + this.inst.update_bbox(); + this.content.update_bbox(); + this.scroll.scrollToSmooth = smooth; + this.scroll.scrollToTargetY = null; + this.scroll.scrollToTargetX = null; + this.scroll.scrollToX = false; + this.scroll.scrollToY = false; + this.onScrollToStarted = false; + if(targetY>=0 && this.scroll.vScrolling ){ + var viewportCenterY = (this.inst.bbox.top+this.inst.bbox.bottom)/2; + if(targetType){//Percentage + targetY = cr.clamp(targetY,0,1); + targetY = this.content.bbox.top + targetY*this.content.height; + }else{ + targetY = this.content.bbox.top + targetY; + } + this.scroll.scrollToTargetY = this.content.y + (viewportCenterY-targetY); + this.scroll.scrollToY = true; + this.scroll.isEnabled = true; + this.onScrollToStarted = true; + } + if(targetX>=0 && this.scroll.hScrolling){ + var viewportCenterX = (this.inst.bbox.left+this.inst.bbox.right)/2; + if(targetType){//Percentage + targetX = cr.clamp(targetX,0,1); + targetX = this.content.bbox.left + targetX*this.content.width; + }else{ + targetX = this.content.bbox.left + targetX; + } + this.scroll.scrollToTargetX = this.content.x + (viewportCenterX-targetX); + this.scroll.scrollToX = true; + this.scroll.isEnabled = true; + this.onScrollToStarted = true; + } + this.content.set_bbox_changed(); + }; + behinstProto.OnWheel = function (dir){ + if(!this.isInteractible()){ + return; + } + if(this.scroll.isMouseScroll && this.scroll.vScrolling && this.isMouseOver()){ + this.scroll.scrollToX = false; + this.scroll.scrollToY = false; + this.scroll.isEnabled = true; + this.onWheelStarted = true; + dir = (dir == 0 ? -1 : 1); + this.scroll.dy = dir*0.026*this.content.height; + } + }; + behinstProto.OnAnyTouchStart = function () + { + if(this.vSlider && this.isInTouch(this.vSlider) && this.scroll.vScrolling){ + this.OnSliderTouchStart(); + this.onvSliderTouchStarted = true; + } + if(this.hSlider && this.isInTouch(this.hSlider) && this.scroll.hScrolling){ + this.OnSliderTouchStart(); + this.onhSliderTouchStarted = true; + } + }; + behinstProto.isInteractible = function () + { + var isInteractible = true; + for (var i = 0,l=this.proui.currentDialogs.length; i < l; i++) { + if(this.inst.layer.index0 || diff_bottomY>0){ + if(this.scroll.scrollToY){ + this.content.y = cr.clamp(this.content.y,this.content.y+diff_bottomY,this.content.y - diff_topY); + this.scroll.scrollToTargetY = this.content.y; + this.scroll.scrollToY = false; + }else{ + this.content.y = cr.clamp(this.content.y,cr.lerp(this.content.y,this.content.y+diff_bottomY,this.elasticF),cr.lerp(this.content.y,this.content.y - diff_topY,this.elasticF)); + } + } + this.content.set_bbox_changed(); + } + if(this.scroll.hScrolling){ + diff_rightX = this.inst.bbox.right-this.content.bbox.right; + diff_leftX = this.content.bbox.left-this.inst.bbox.left; + if(diff_rightX>0 || diff_leftX>0){ + if(this.scroll.scrollToX){ + this.content.x = cr.clamp(this.content.x,this.content.x + diff_rightX,this.content.x - diff_leftX); + this.scroll.scrollToTargetX = this.content.x; + this.scroll.scrollToX = false; + }else{ + this.content.x = cr.clamp(this.content.x,cr.lerp(this.content.x,this.content.x + diff_rightX,this.elasticF),cr.lerp(this.content.x,this.content.x - diff_leftX,this.elasticF)); + } + } + this.content.set_bbox_changed(); + } + if(!this.inertia && this.onWheelStarted){ + this.scroll.isEnabled = false; + this.onWheelStarted = false; + } + if(this.onScrollToStarted && !this.scroll.scrollToX && !this.scroll.scrollToY){ + this.scroll.isEnabled = false; + this.onScrollToStarted = false; + } + if( this.inertia && Math.abs(this.scroll.dx)<0.1 && Math.abs(this.scroll.dy)<0.1 && !this.scroll.scrollToX && !this.scroll.scrollToY ){ + this.scroll.isEnabled = false; + console.log("Scroll disabled"); + } + } + }; + behinstProto.updateContentChildren = function () + { + if(!this.content)return; + /*this.contentDpos.dx = this.content.x - this.contentDpos.prev_x; + this.contentDpos.dy = this.content.y - this.contentDpos.prev_y; + this.contentDpos.prev_x = this.content.x; + this.contentDpos.prev_y = this.content.y;*/ + var inst; + if( (this.contentDpos.dx != 0) || (this.contentDpos.dy != 0) ){ + for (var i = 0, l= this.inst.layer.instances.length; i < l; i++) { + inst = this.inst.layer.instances[i]; + if(!inst)continue; + if ( inst==this.content || inst.isSubComp===true || inst.uiType == "dialog" || inst.uiType == "scrollView" || inst.uiType == "scrollBar" || inst.uiType == "slider") + continue; + inst.x += this.contentDpos.dx; + inst.y += this.contentDpos.dy; + inst.set_bbox_changed(); + } + } + }; + behinstProto.updateChildren = function () + { + if(isNaN(this.dpos.prev_x)){ + this.dpos.prev_x = this.inst.x; + this.dpos.prev_y = this.inst.y; + } + this.dpos.dx = this.inst.x - this.dpos.prev_x; + this.dpos.dy = this.inst.y - this.dpos.prev_y; + this.dpos.prev_x = this.inst.x; + this.dpos.prev_y = this.inst.y; + var parts = [this.content, this.vScrollBar,this.vSlider,this.hScrollBar,this.hSlider]; + var inst; + if( (this.dpos.dx != 0) || (this.dpos.dy != 0) ){ + for (var i = 0, l= parts.length; i < l; i++) { + inst = parts[i]; + if(inst){ + inst.x += this.dpos.dx; + inst.y += this.dpos.dy; + inst.set_bbox_changed(); + } + } + } + }; + behinstProto.tick2 = function () + { + if(!this.isContentGridView){ + this.updateContentChildren(); + } + this.updateChildren(); + }; + behinstProto.onDestroy = function () + { + this.proui.scrollViews["l"+this.inst.layer.index] = null; + }; + behinstProto.saveToJSON = function () + { + return { + }; + }; + behinstProto.loadFromJSON = function (o) + { + }; + function Cnds() {}; + behaviorProto.cnds = new Cnds(); + function Acts() {}; + Acts.prototype.ScrollTo = function (targetX,targetY,targetType,smooth) + { + this.scrollTo(targetX,targetY,targetType,smooth); + } + behaviorProto.acts = new Acts(); + function Exps() {}; + behaviorProto.exps = new Exps(); +}()); +; +; +cr.behaviors.aekiro_sliderbar = function(runtime) +{ + this.runtime = runtime; +}; +(function () +{ + var behaviorProto = cr.behaviors.aekiro_sliderbar.prototype; + behaviorProto.Type = function(behavior, objtype) + { + this.behavior = behavior; + this.objtype = objtype; + this.runtime = behavior.runtime; + }; + var behtypeProto = behaviorProto.Type.prototype; + behtypeProto.onCreate = function() + { + }; + behaviorProto.Instance = function(type, inst) + { + this.type = type; + this.behavior = type.behavior; + this.inst = inst; + this.runtime = type.runtime; + if(!cr.proui){ + throw new Error("ProUI Plugin not found. Please add it to the project."); + return; + } + if(!this.behavior.isHooked){ + cr.proui.HookMe(this.behavior,["touch"]); + this.behavior.isHooked = true; + } + }; + var behinstProto = behaviorProto.Instance.prototype; + behinstProto.onCreate = function() + { + this.proui = cr.proui; + this.proui.isTypeValid(this.inst,[cr.plugins_.Sprite,cr.plugins_.NinePatch],"Pro UI: SliderBar behavior is only applicable to Sprite Or 9-patch objects."); + this.isEnabled = this.properties[0]; + this.value = this.properties[1]; + this.sliderButtonUID = this.properties[2]; + this.minValue = this.properties[3]; + this.maxValue = this.properties[4]; + this.step = this.properties[5]; + this.firstFrame = true; + this.inst.uiType = "sliderbar"; + this.uiType = "sliderbar"; + this.inst._proui = this; + this.firstSetValue = false; + this.compParent = this; + this.isInit = false; + this.dpos = {}; + this.onSliderTouchStarted = false; + this.onValueChanged = false; + this.value = this.validateValue(this.value); //needs to be after step + }; + behinstProto.getTemplate = function (){ + this.sliderButton = this.proui.tags[this.sliderButtonUID]; + if(!this.sliderButton){ + console.error("SLIDERBAR %d : Slider button not found",this.inst.uid); + return; + } + var template = { + sliderTag:this.sliderButtonUID, + type: this.sliderButton.type, + json: JSON.stringify(this.runtime.saveInstanceToJSON(this.sliderButton, true)) + }; + return template; + }; + behinstProto.clone = function (template){ + if(!template){ + return; + } + var sliderButton = this.runtime.createInstance(template.type, this.inst.layer); + sliderButton.type.plugin.acts.LoadFromJsonString.call(sliderButton,template.json); + var sliderTag = template.sliderTag + this.proui.getIter(); + sliderButton.aekiro_tag.tag = sliderTag; + var prevRegister = this.runtime.extra.notRegister; + this.runtime.extra.notRegister = false; + this.proui.addTag(sliderTag,sliderButton); + this.runtime.extra.notRegister = prevRegister; + this.sliderButtonUID = sliderTag; + this.init(); + }; + behinstProto.setValue = function (value){ + this.firstSetValue = true; + if(this._setValue(value)){ + var modelB = this.inst.proui_model; + if(modelB){ + modelB.setModelValue(value,{except:this.compParent}); + } + if(this.inst.proui_bind){ + this.inst.proui_bind.updateGridViewModel(value,{except:this.compParent}); + } + } + }; + behinstProto.validateValue = function (value){ + value = this.proui.validateSimpleValue(value,0); + value = Math.round(value/this.step)*this.step; + value = cr.clamp(value,this.minValue,this.maxValue); + return value; + }; + behinstProto._setValue = function (value){ + if(value == null){ + return false; + } + value = this.validateValue(value); + this.value = value; + this.updateView(); + return true; + /*}else{ + return false; + }*/ + }; + behinstProto.updateFromModel = function (){ + var modelB = this.inst.proui_model; + if(modelB){ + var value = modelB.getFromModel(); + if(value == null){ + return; + } + value = this.validateValue(value); + this.value = value; + } + }; + behinstProto.OnAnyTouchStart = function () + { + if(this.sliderButton && this.isInTouch(this.sliderButton) && this.isEnabled){ + this.OnSliderTouchStart(); + this.onSliderTouchStarted = true; + this.onValueChanged = true; + } + }; + behinstProto.OnTouchStart = function (){ + if( (this.sliderButton && this.isInTouch(this.sliderButton)) || !this.isEnabled){ + return; + } + this.onX(this.proui.X(this.inst.layer.index)); + this.onValueChanged = true; + }; + behinstProto.OnSliderTouchStart = function (){ + }; + behinstProto.OnAnyTouchEnd = function (touchX, touchY) + { + if(this.onSliderTouchStarted){ + this.OnTouchEnd(touchX, touchY); + } + this.onSliderTouchStarted = false; + this.onValueChanged = false; + }; + behinstProto.OnTouchEnd = function (touchX, touchY){ + this.setValue(this.value); + }; + behinstProto.updateView = function (){ + if(!this.isInit){ + return; + } + this.inst.update_bbox(); + this.sliderButton.x = cr.clamp(this.inst.bbox.left+((this.value-this.minValue)/this.step)*this.widthStep,this.inst.bbox.left,this.inst.bbox.right); + this.sliderButton.y = (this.inst.bbox.bottom+this.inst.bbox.top)/2; + this.sliderButton.set_bbox_changed(); + this.lastStop = this.sliderButton.x; + }; + behinstProto.setEnabled = function (isEnabled) + { + this.isEnabled = isEnabled; + } + behinstProto.init = function (){ + if(this.isInit){ + return; + } + this.sliderButton = this.proui.tags[this.sliderButtonUID]; + if(!this.sliderButton){ + console.error("SLIDERBAR %d : Slider button not found",this.inst.uid); + return; + } + this.sliderButton.uiType = "sliderbutton"; + this.inst.update_bbox(); + this.sliderButton.x = this.inst.bbox.left; + this.sliderButton.y = (this.inst.bbox.bottom+this.inst.bbox.top)/2; + this.sliderButton.set_bbox_changed(); + this.sliderButton.isSubComp = true; + this.widthStep = (this.step/(this.maxValue-this.minValue))* this.inst.width; + this.thres = this.step/(this.maxValue-this.minValue); + this.lastStop = this.inst.bbox.left; + this.dpos.prev_x = this.inst.x; + this.dpos.prev_y = this.inst.y; + this.dpos.dx = 0; + this.dpos.dy = 0; + this.isInit = true; + }; + behinstProto.onX = function (touchX){ + this.inst.update_bbox(); + var diff = touchX-this.lastStop; + if(this.thres>0.04){ + if(this.sign(diff)>0 && (this.maxValue-this.value < this.step) ){ + return; + } + if( (Math.abs(diff) > this.widthStep*2/3)){ + this.lastStop = this.lastStop + this.sign(diff)*this.widthStep; + this.sliderButton.x = cr.clamp(this.lastStop,this.inst.bbox.left,this.inst.bbox.right); + this.sliderButton.set_bbox_changed(); + this.value = this.value + this.sign(diff)*this.step; + this.value = cr.clamp(this.value,this.minValue,this.maxValue); + } + }else{ + this.sliderButton.x = cr.clamp(touchX,this.inst.bbox.left,this.inst.bbox.right); + this.sliderButton.set_bbox_changed(); + this.value = ((this.sliderButton.x-this.inst.bbox.left)/this.inst.width)*(this.maxValue-this.minValue); + this.value = this.minValue+Math.round(this.value/this.step)*this.step; + this.value = cr.clamp(this.value,this.minValue,this.maxValue); + } + }; + behinstProto.isInTouch = function (inst) + { + var touch_x = this.proui.X(this.inst.layer.index); + var touch_y = this.proui.Y(this.inst.layer.index); + inst.update_bbox(); + return inst.contains_pt(touch_x, touch_y); + }; + behinstProto.sign = function(value_){ + if (isNaN(parseFloat(value_))) return NaN; + if (value_ === 0) return 0; + if (value_ === -0) return -0; + return value_ > 0 ? 1 : -1; + }; + behinstProto.tick = function () + { + if(this.firstFrame){ + this.firstFrame = false; + this.init(); + if(!this.firstSetValue){ + this.updateFromModel(); + } + this.updateView(); + } + if(this.onSliderTouchStarted){ + this.onX(this.proui.X(this.inst.layer.index)); + } + }; + behinstProto.updateChildren = function () + { + if(!this.sliderButton){ + return; + } + if(isNaN(this.dpos.prev_x)){ + this.dpos.prev_x = this.inst.x; + this.dpos.prev_y = this.inst.y; + } + this.dpos.dx = this.inst.x - this.dpos.prev_x; + this.dpos.dy = this.inst.y - this.dpos.prev_y; + this.dpos.prev_x = this.inst.x; + this.dpos.prev_y = this.inst.y; + var inst = this.sliderButton; + if( (this.dpos.dx != 0) || (this.dpos.dy != 0) ){ + inst.x += this.dpos.dx; + inst.y += this.dpos.dy; + inst.set_bbox_changed(); + } + }; + behinstProto.tick2 = function () + { + this.updateChildren(); + }; + behinstProto.onDestroy = function () + { + if(this.runtime.changelayout){ + return; + } + this.proui.toBeDestroyed.push(this.sliderButton); + var proui = this.proui; + setTimeout(function(){ proui.clearDestroyList(); }, 0); + }; + behinstProto.saveToJSON = function () + { + return { + "isEnabled" : this.isEnabled, + "value": this.value, + "minValue": this.minValue, + "maxValue": this.maxValue, + "step": this.step + }; + }; + behinstProto.loadFromJSON = function (o) + { + this.isEnabled = o["isEnabled"]; + this.value = o["value"]; + this.minValue = o["minValue"]; + this.maxValue = o["maxValue"]; + this.step = o["step"]; + }; + var getValueByKeyString = function(o, s) { + s = s.replace(/\[(\w+)\]/g, '.$1'); // convert indexes to properties + s = s.replace(/^\./, ''); // strip a leading dot + var a = s.split('.'); + for (var i = 0, n = a.length; i < n; ++i) { + var k = a[i]; + if (k in o) { + o = o[k]; + } else { + return; + } + } + return o; + }; + function Cnds() {}; + behaviorProto.cnds = new Cnds(); + Cnds.prototype.IsSliding = function (){ + return this.onValueChanged; + }; + function Acts() {}; + Acts.prototype.setValue = function (value){ + this.setValue(value); + }; + behaviorProto.acts = new Acts(); + function Exps() {}; + Exps.prototype.value = function (ret) + { + ret.set_float(this.value); + }; + behaviorProto.exps = new Exps(); +}()); +; +; +cr.behaviors.aekiro_tag = function(runtime) +{ + this.runtime = runtime; +}; +(function () +{ + var behaviorProto = cr.behaviors.aekiro_tag.prototype; + behaviorProto.Type = function(behavior, objtype) + { + this.behavior = behavior; + this.objtype = objtype; + this.runtime = behavior.runtime; + }; + var behtypeProto = behaviorProto.Type.prototype; + behtypeProto.onCreate = function() + { + }; + behaviorProto.Instance = function(type, inst) + { + this.type = type; + this.behavior = type.behavior; + this.inst = inst; + this.runtime = type.runtime; + if(!cr.proui){ + throw new Error("ProUI Plugin not found. Please add it to the project."); + return; + } + }; + var behinstProto = behaviorProto.Instance.prototype; + behinstProto.onCreate = function() + { + this.proui = cr.proui; + this.tag = this.properties[0]; + this.inst.proui_tag = this.tag; + this.inst.aekiro_tag = this; + this.proui.addTag(this.tag,this.inst); + }; + behinstProto.tick = function () + { + }; + behinstProto.onDestroy = function () + { + this.proui.removeTag(this.tag); + }; + behinstProto.saveToJSON = function () + { + return { + }; + }; + behinstProto.loadFromJSON = function (o) + { + }; + function Cnds() {}; + Cnds.prototype.IsTag = function (tag){ + return (tag == this.tag); + }; + behaviorProto.cnds = new Cnds(); + function Acts() {}; + behaviorProto.acts = new Acts(); + function Exps() {}; + Exps.prototype.tag = function (ret) + { + ret.set_string(this.tag); + }; + behaviorProto.exps = new Exps(); +}()); +; +; +cr.behaviors.jumpthru = function(runtime) +{ + this.runtime = runtime; +}; +(function () +{ + var behaviorProto = cr.behaviors.jumpthru.prototype; + behaviorProto.Type = function(behavior, objtype) + { + this.behavior = behavior; + this.objtype = objtype; + this.runtime = behavior.runtime; + }; + var behtypeProto = behaviorProto.Type.prototype; + behtypeProto.onCreate = function() + { + }; + behaviorProto.Instance = function(type, inst) + { + this.type = type; + this.behavior = type.behavior; + this.inst = inst; // associated object instance to modify + this.runtime = type.runtime; + }; + var behinstProto = behaviorProto.Instance.prototype; + behinstProto.onCreate = function() + { + this.inst.extra["jumpthruEnabled"] = (this.properties[0] !== 0); + }; + behinstProto.tick = function () + { + }; + function Cnds() {}; + Cnds.prototype.IsEnabled = function () + { + return this.inst.extra["jumpthruEnabled"]; + }; + behaviorProto.cnds = new Cnds(); + function Acts() {}; + Acts.prototype.SetEnabled = function (e) + { + this.inst.extra["jumpthruEnabled"] = !!e; + }; + behaviorProto.acts = new Acts(); +}()); +var easeOutBounceArray = []; +var easeInElasticArray = []; +var easeOutElasticArray = []; +var easeInOutElasticArray = []; +var easeInCircle = []; +var easeOutCircle = []; +var easeInOutCircle = []; +var easeInBack = []; +var easeOutBack = []; +var easeInOutBack = []; +var litetween_precision = 10000; +var updateLimit = 0; //0.0165; +function easeOutBouncefunc(t) { + var b=0.0; + var c=1.0; + var d=1.0; + if ((t/=d) < (1/2.75)) { + result = c*(7.5625*t*t) + b; + } else if (t < (2/2.75)) { + result = c*(7.5625*(t-=(1.5/2.75))*t + .75) + b; + } else if (t < (2.5/2.75)) { + result = c*(7.5625*(t-=(2.25/2.75))*t + .9375) + b; + } else { + result = c*(7.5625*(t-=(2.625/2.75))*t + .984375) + b; + } + return result; +} +function integerize(t, d) +{ + return Math.round(t/d*litetween_precision); +} +function easeFunc(easing, t, b, c, d, flip, param) +{ + var ret_ease = 0; + switch (easing) { + case 0: // linear + ret_ease = c*t/d + b; + break; + case 1: // easeInQuad + ret_ease = c*(t/=d)*t + b; + break; + case 2: // easeOutQuad + ret_ease = -c *(t/=d)*(t-2) + b; + break; + case 3: // easeInOutQuad + if ((t/=d/2) < 1) + ret_ease = c/2*t*t + b + else + ret_ease = -c/2 * ((--t)*(t-2) - 1) + b; + break; + case 4: // easeInCubic + ret_ease = c*(t/=d)*t*t + b; + break; + case 5: // easeOutCubic + ret_ease = c*((t=t/d-1)*t*t + 1) + b; + break; + case 6: // easeInOutCubic + if ((t/=d/2) < 1) + ret_ease = c/2*t*t*t + b + else + ret_ease = c/2*((t-=2)*t*t + 2) + b; + break; + case 7: // easeInQuart + ret_ease = c*(t/=d)*t*t*t + b; + break; + case 8: // easeOutQuart + ret_ease = -c * ((t=t/d-1)*t*t*t - 1) + b; + break; + case 9: // easeInOutQuart + if ((t/=d/2) < 1) + ret_ease = c/2*t*t*t*t + b + else + ret_ease = -c/2 * ((t-=2)*t*t*t - 2) + b; + break; + case 10: // easeInQuint + ret_ease = c*(t/=d)*t*t*t*t + b; + break; + case 11: // easeOutQuint + ret_ease = c*((t=t/d-1)*t*t*t*t + 1) + b; + break; + case 12: // easeInOutQuint + if ((t/=d/2) < 1) + ret_ease = c/2*t*t*t*t*t + b + else + ret_ease = c/2*((t-=2)*t*t*t*t + 2) + b; + break; + case 13: // easeInCircle + if (param.optimized) { + ret_ease = easeInCircle[integerize(t,d)]; + } else { + ret_ease = -(Math.sqrt(1-t*t) - 1); + } + break; + case 14: // easeOutCircle + if (param.optimized) { + ret_ease = easeOutCircle[integerize(t,d)]; + } else { + ret_ease = Math.sqrt(1 - ((t-1)*(t-1))); + } + break; + case 15: // easeInOutCircle + if (param.optimized) { + ret_ease = easeInOutCircle[integerize(t,d)]; + } else { + if ((t/=d/2) < 1) ret_ease = -c/2 * (Math.sqrt(1 - t*t) - 1) + b + else ret_ease = c/2 * (Math.sqrt(1 - (t-=2)*t) + 1) + b; + } + break; + case 16: // easeInBack + if (param.optimized) { + ret_ease = easeInBack[integerize(t,d)]; + } else { + var s = param.s; + ret_ease = c*(t/=d)*t*((s+1)*t - s) + b; + } + break; + case 17: // easeOutBack + if (param.optimized) { + ret_ease = easeOutBack[integerize(t,d)]; + } else { + var s = param.s; + ret_ease = c*((t=t/d-1)*t*((s+1)*t + s) + 1) + b; + } + break; + case 18: // easeInOutBack + if (param.optimized) { + ret_ease = easeInOutBack[integerize(t,d)]; + } else { + var s = param.s + if ((t/=d/2) < 1) + ret_ease = c/2*(t*t*(((s*=(1.525))+1)*t - s)) + b + else + ret_ease = c/2*((t-=2)*t*(((s*=(1.525))+1)*t + s) + 2) + b; + } + break; + case 19: //easeInElastic + if (param.optimized) { + ret_ease = easeInElasticArray[integerize(t, d)]; + } else { + var a = param.a; + var p = param.p; + var s = 0; + if (t==0) ret_ease = b; if ((t/=d)==1) ret_ease = b+c; + if (p==0) p=d*.3; if (a==0 || a < Math.abs(c)) { a=c; s=p/4; } + else var s = p/(2*Math.PI) * Math.asin (c/a); + ret_ease = -(a*Math.pow(2,10*(t-=1)) * Math.sin( (t*d-s)*(2*Math.PI)/p )) + b; + } + break; + case 20: //easeOutElastic + if (param.optimized) { + ret_ease = easeOutElasticArray[integerize(t,d)]; + } else { + var a = param.a; + var p = param.p; + var s = 0; + if (t==0) ret_ease= b; if ((t/=d)==1) ret_ease= b+c; if (p == 0) p=d*.3; + if (a==0 || a < Math.abs(c)) { a=c; var s=p/4; } + else var s = p/(2*Math.PI) * Math.asin (c/a); + ret_ease= (a*Math.pow(2,-10*t) * Math.sin( (t*d-s)*(2*Math.PI)/p ) + c + b); + } + break; + case 21: //easeInOutElastic + if (param.optimized) { + ret_ease = easeInOutElasticArray[integerize(t,d)]; + } else { + var a = param.a; + var p = param.p; + var s = 0; + if (t==0) ret_ease = b; + if ((t/=d/2)==2) ret_ease = b+c; + if (p==0) p=d*(.3*1.5); + if (a==0 || a < Math.abs(c)) { a=c; var s=p/4; } + else var s = p/(2*Math.PI) * Math.asin (c/a); + if (t < 1) + ret_ease = -.5*(a*Math.pow(2,10*(t-=1)) * Math.sin( (t*d-s)*(2*Math.PI)/p )) + b + else + ret_ease = a*Math.pow(2,-10*(t-=1)) * Math.sin( (t*d-s)*(2*Math.PI)/p )*.5 + c + b; + } + break; + case 22: //easeInBounce + if (param.optimized) { + ret_ease = c - easeOutBounceArray[integerize(d-t, d)] + b; + } else { + ret_ease = c - easeOutBouncefunc(d-t/d) + b; + } + break; + case 23: //easeOutBounce + if (param.optimized) { + ret_ease = easeOutBounceArray[integerize(t, d)]; + } else { + ret_ease = easeOutBouncefunc(t/d); + } + break; + case 24: //easeInOutBounce + if (param.optimized) { + if (t < d/2) + ret_ease = (c - easeOutBounceArray[integerize(d-(t*2), d)] + b) * 0.5 +b; + else + ret_ease = easeOutBounceArray[integerize(t*2-d, d)] * .5 + c*.5 + b; + } else { + if (t < d/2) + ret_ease = (c - easeOutBouncefunc(d-(t*2)) + b) * 0.5 +b; + else + ret_ease = easeOutBouncefunc((t*2-d)/d) * .5 + c *.5 + b; + } + break; + case 25: //easeInSmoothstep + var mt = (t/d) / 2; + ret_ease = (2*(mt * mt * (3 - 2*mt))); + break; + case 26: //easeOutSmoothstep + var mt = ((t/d) + 1) / 2; + ret_ease = ((2*(mt * mt * (3 - 2*mt))) - 1); + break; + case 27: //easeInOutSmoothstep + var mt = (t / d); + ret_ease = (mt * mt * (3 - 2*mt)); + break; + }; + if (flip) + return (c - b) - ret_ease + else + return ret_ease; +}; +(function preCalculateArray() { + var d = 1.0; + var b = 0.0; + var c = 1.0; + var result = 0.0; + var a = 0.0; + var p = 0.0; + var t = 0.0; + var s = 0.0; + for (var ti = 0; ti <= litetween_precision; ti++) { + t = ti/litetween_precision; + if ((t/=d) < (1/2.75)) { + result = c*(7.5625*t*t) + b; + } else if (t < (2/2.75)) { + result = c*(7.5625*(t-=(1.5/2.75))*t + .75) + b; + } else if (t < (2.5/2.75)) { + result = c*(7.5625*(t-=(2.25/2.75))*t + .9375) + b; + } else { + result = c*(7.5625*(t-=(2.625/2.75))*t + .984375) + b; + } + easeOutBounceArray[ti] = result; + t = ti/litetween_precision; a = 0; p = 0; + if (t==0) result = b; if ((t/=d)==1) result = b+c; + if (p==0) p=d*.3; if (a==0 || a < Math.abs(c)) { a=c; var s=p/4; } + else var s = p/(2*Math.PI) * Math.asin (c/a); + result = -(a*Math.pow(2,10*(t-=1)) * Math.sin( (t*d-s)*(2*Math.PI)/p )) + b; + easeInElasticArray[ti] = result; + t = ti/litetween_precision; a = 0; p = 0; + if (t==0) result= b; if ((t/=d)==1) result= b+c; if (p == 0) p=d*.3; + if (a==0 || a < Math.abs(c)) { a=c; var s=p/4; } + else var s = p/(2*Math.PI) * Math.asin (c/a); + result= (a*Math.pow(2,-10*t) * Math.sin( (t*d-s)*(2*Math.PI)/p ) + c + b); + easeOutElasticArray[ti] = result; + t = ti/litetween_precision; a = 0; p = 0; + if (t==0) result = b; + if ((t/=d/2)==2) result = b+c; + if (p==0) p=d*(.3*1.5); + if (a==0 || a < Math.abs(c)) { a=c; var s=p/4; } + else var s = p/(2*Math.PI) * Math.asin (c/a); + if (t < 1) + result = -.5*(a*Math.pow(2,10*(t-=1)) * Math.sin( (t*d-s)*(2*Math.PI)/p )) + b + else + result = a*Math.pow(2,-10*(t-=1)) * Math.sin( (t*d-s)*(2*Math.PI)/p )*.5 + c + b; + easeInOutElasticArray[ti] = result; + t = ti/litetween_precision; easeInCircle[ti] = -(Math.sqrt(1-t*t) - 1); + t = ti/litetween_precision; easeOutCircle[ti] = Math.sqrt(1 - ((t-1)*(t-1))); + t = ti/litetween_precision; + if ((t/=d/2) < 1) result = -c/2 * (Math.sqrt(1 - t*t) - 1) + b + else result = c/2 * (Math.sqrt(1 - (t-=2)*t) + 1) + b; + easeInOutCircle[ti] = result; + t = ti/litetween_precision; s = 0; + if (s==0) s = 1.70158; + result = c*(t/=d)*t*((s+1)*t - s) + b; + easeInBack[ti] = result; + t = ti/litetween_precision; s = 0; + if (s==0) s = 1.70158; + result = c*((t=t/d-1)*t*((s+1)*t + s) + 1) + b; + easeOutBack[ti] = result; + t = ti/litetween_precision; s = 0; if (s==0) s = 1.70158; + if ((t/=d/2) < 1) + result = c/2*(t*t*(((s*=(1.525))+1)*t - s)) + b + else + result = c/2*((t-=2)*t*(((s*=(1.525))+1)*t + s) + 2) + b; + easeInOutBack[ti] = result; + } +}()); +var TweenObject = function() +{ + var constructor = function (tname, tweened, easefunc, initial, target, duration, enforce) + { + this.name = tname; + this.value = 0; + this.setInitial(initial); + this.setTarget(target); + this.easefunc = easefunc; + this.tweened = tweened; + this.duration = duration; + this.progress = 0; + this.state = 0; + this.onStart = false; + this.onEnd = false; + this.onReverseStart = false; + this.onReverseEnd = false; + this.lastKnownValue = 0; + this.lastKnownValue2 = 0; + this.enforce = enforce; + this.pingpong = 1.0; + this.flipEase = false; + this.easingparam = []; + this.lastState = 1; + for (var i=0; i<28; i++) { + this.easingparam[i] = {}; + this.easingparam[i].a = 0.0; + this.easingparam[i].p = 0.0; + this.easingparam[i].t = 0.0; + this.easingparam[i].s = 0.0; + this.easingparam[i].optimized = true; + } + } + return constructor; +}(); +(function () { + TweenObject.prototype = { + }; + TweenObject.prototype.flipTarget = function () + { + var x1 = this.initialparam1; + var x2 = this.initialparam2; + this.initialparam1 = this.targetparam1; + this.initialparam2 = this.targetparam2; + this.targetparam1 = x1; + this.targetparam2 = x2; + this.lastKnownValue = 0; + this.lastKnownValue2 = 0; + } + TweenObject.prototype.setInitial = function (initial) + { + this.initialparam1 = parseFloat(initial.split(",")[0]); + this.initialparam2 = parseFloat(initial.split(",")[1]); + this.lastKnownValue = 0; + this.lastKnownValue2 = 0; + } + TweenObject.prototype.setTarget = function (target) + { + this.targetparam1 = parseFloat(target.split(",")[0]); + this.targetparam2 = parseFloat(target.split(",")[1]); + if (isNaN(this.targetparam2)) this.targetparam2 = this.targetparam1; + } + TweenObject.prototype.OnTick = function(dt) + { + if (this.state === 0) return -1.0; + if (this.state === 1) + this.progress += dt; + if (this.state === 2) + this.progress -= dt; + if (this.state === 3) { + this.state = 0; + } + if ((this.state === 4) || (this.state === 6)) { + this.progress += dt * this.pingpong; + } + if (this.state === 5) { + this.progress += dt * this.pingpong; + } + if (this.progress < 0) { + this.progress = 0; + if (this.state === 4) { + this.pingpong = 1; + } else if (this.state === 6) { + this.pingpong = 1; + this.flipEase = false; + } else { + this.state = 0; + } + this.onReverseEnd = true; + return 0.0; + } else if (this.progress > this.duration) { + this.progress = this.duration; + if (this.state === 4) { + this.pingpong = -1; + } else if (this.state === 6) { + this.pingpong = -1; + this.flipEase = true; + } else if (this.state === 5) { + this.progress = 0.0; + } else { + this.state = 0; + } + this.onEnd = true; + return 1.0; + } else { + if (this.flipEase) { + var factor = easeFunc(this.easefunc, this.duration - this.progress, 0, 1, this.duration, this.flipEase, this.easingparam[this.easefunc]); + } else { + var factor = easeFunc(this.easefunc, this.progress, 0, 1, this.duration, this.flipEase, this.easingparam[this.easefunc]); + } + return factor; + } + }; +}()); +; +; +function trim (str) { + return str.replace(/^\s\s*/, '').replace(/\s\s*$/, ''); +} +cr.behaviors.lunarray_LiteTween = function(runtime) +{ + this.runtime = runtime; +}; +(function () +{ + var behaviorProto = cr.behaviors.lunarray_LiteTween.prototype; + behaviorProto.Type = function(behavior, objtype) + { + this.behavior = behavior; + this.objtype = objtype; + this.runtime = behavior.runtime; + }; + var behtypeProto = behaviorProto.Type.prototype; + behtypeProto.onCreate = function() + { + }; + behaviorProto.Instance = function(type, inst) + { + this.type = type; + this.behavior = type.behavior; + this.inst = inst; // associated object instance to modify + this.runtime = type.runtime; + this.i = 0; // progress + }; + var behinstProto = behaviorProto.Instance.prototype; + behinstProto.onCreate = function() + { + this.playmode = this.properties[0]; + this.active = (this.playmode == 1) || (this.playmode == 2) || (this.playmode == 3) || (this.playmode == 4); + this.tweened = this.properties[1]; // 0=Position|1=Size|2=Width|3=Height|4=Angle|5=Opacity|6=Value only|7=Horizontal|8=Vertical|9=Scale + this.easing = this.properties[2]; + this.target = this.properties[3]; + this.targetmode = this.properties[4]; + this.useCurrent = false; + if (this.targetmode === 1) this.target = "relative("+this.target+")"; + this.duration = this.properties[5]; + this.enforce = (this.properties[6] === 1); + this.value = 0; + this.tween_list = {}; + this.addToTweenList("default", this.tweened, this.easing, "current", this.target, this.duration, this.enforce); + if (this.properties[0] === 1) this.startTween(0) + if (this.properties[0] === 2) this.startTween(2) + if (this.properties[0] === 3) this.startTween(3) + if (this.properties[0] === 4) this.startTween(4) + }; + behinstProto.parseCurrent = function(tweened, parseText) + { + if (parseText === undefined) parseText = "current"; + var parsed = trim(parseText); + parseText = trim(parseText); + var value = this.value; + if (parseText === "current") { + switch (tweened) { + case 0: parsed = this.inst.x + "," + this.inst.y; break; + case 1: parsed = this.inst.width + "," + this.inst.height; break; + case 2: parsed = this.inst.width + "," + this.inst.height; break; + case 3: parsed = this.inst.width + "," + this.inst.height; break; + case 4: parsed = cr.to_degrees(this.inst.angle) + "," + cr.to_degrees(this.inst.angle); break; + case 5: parsed = (this.inst.opacity*100) + "," + (this.inst.opacity*100); break; + case 6: parsed = value + "," + value; break; + case 7: parsed = this.inst.x + "," + this.inst.y; break; + case 8: parsed = this.inst.x + "," + this.inst.y; break; + case 9: + if (this.inst.curFrame !== undefined) + parsed = (this.inst.width/this.inst.curFrame.width) + "," +(this.inst.height/this.inst.curFrame.height) + else + parsed = "1,1"; + break; + default: break; + } + } + if (parseText.substring(0,8) === "relative") { + var param1 = parseText.match(/\((.*?)\)/); + if (param1) { + var relativex = parseFloat(param1[1].split(",")[0]); + var relativey = parseFloat(param1[1].split(",")[1]); + } + if (isNaN(relativex)) relativex = 0; + if (isNaN(relativey)) relativey = 0; + switch (tweened) { + case 0: parsed = (this.inst.x+relativex) + "," + (this.inst.y+relativey); break; + case 1: parsed = (this.inst.width+relativex) + "," + (this.inst.height+relativey); break; + case 2: parsed = (this.inst.width+relativex) + "," + (this.inst.height+relativey); break; + case 3: parsed = (this.inst.width+relativex) + "," + (this.inst.height+relativey); break; + case 4: parsed = (cr.to_degrees(this.inst.angle)+relativex) + "," + (cr.to_degrees(this.inst.angle)+relativey); break; + case 5: parsed = (this.inst.opacity*100+relativex) + "," + (this.inst.opacity*100+relativey); break; + case 6: parsed = value+relativex + "," + value+relativex; break; + case 7: parsed = (this.inst.x+relativex) + "," + (this.inst.y); break; + case 8: parsed = (this.inst.x) + "," + (this.inst.y+relativex); break; + case 9: parsed = (relativex) + "," + (relativey); break; + default: break; + } + } + return parsed; + }; + behinstProto.addToTweenList = function(tname, tweened, easing, init, targ, duration, enforce) + { + init = this.parseCurrent(tweened, init); + targ = this.parseCurrent(tweened, targ); + if (this.tween_list[tname] !== undefined) { + delete this.tween_list[tname] + } + this.tween_list[tname] = new TweenObject(tname, tweened, easing, init, targ, duration, enforce); + this.tween_list[tname].dt = 0; + }; + behinstProto.saveToJSON = function () + { + var v = JSON.stringify(this.tween_list["default"]); + return { + "playmode": this.playmode, + "active": this.active, + "tweened": this.tweened, + "easing": this.easing, + "target": this.target, + "targetmode": this.targetmode, + "useCurrent": this.useCurrent, + "duration": this.duration, + "enforce": this.enforce, + "value": this.value, + "tweenlist": JSON.stringify(this.tween_list["default"]) + }; + }; + TweenObject.Load = function(rawObj, tname, tweened, easing, init, targ, duration, enforce) + { + var obj = new TweenObject(tname, tweened, easing, init, targ, duration, enforce); + for(var i in rawObj) + obj[i] = rawObj[i]; + return obj; + }; + behinstProto.loadFromJSON = function (o) + { + var x = JSON.parse(o["tweenlist"]); + var tempObj = TweenObject.Load(x, x.name, x.tweened, x.easefunc, x.initialparam1+","+x.initialparam2, x.targetparam1+","+x.targetparam2, x.duration, x.enforce); + this.tween_list["default"] = tempObj; + this.playmode = o["playmode"]; + this.active = o["active"]; + this.movement = o["tweened"]; + this.easing = o["easing"]; + this.target = o["target"]; + this.targetmode = o["targetmode"]; + this.useCurrent = o["useCurrent"]; + this.duration = o["duration"]; + this.enforce = o["enforce"]; + this.value = o["value"]; + }; + behinstProto.setProgressTo = function (mark) + { + if (mark > 1.0) mark = 1.0; + if (mark < 0.0) mark = 0.0; + for (var i in this.tween_list) { + var inst = this.tween_list[i]; + inst.lastKnownValue = 0; + inst.lastKnownValue2 = 0; + inst.state = 3; + inst.progress = mark * inst.duration; + var factor = inst.OnTick(0); + this.updateTween(inst, factor); + } + } + behinstProto.startTween = function (startMode) + { + for (var i in this.tween_list) { + var inst = this.tween_list[i]; + if (this.useCurrent) { + var init = this.parseCurrent(inst.tweened, "current"); + var target = this.parseCurrent(inst.tweened, this.target); + inst.setInitial(init); + inst.setTarget(target); + } + if (startMode === 0) { + inst.progress = 0.000001; + inst.lastKnownValue = 0; + inst.lastKnownValue2 = 0; + inst.onStart = true; + inst.state = 1; + } + if (startMode === 1) { + inst.state = inst.lastState; + } + if ((startMode === 2) || (startMode === 4)) { + inst.progress = 0.000001; + inst.lastKnownValue = 0; + inst.lastKnownValue2 = 0; + inst.onStart = true; + if (startMode == 2) inst.state = 4; //state ping pong + if (startMode == 4) inst.state = 6; //state flip flop + } + if (startMode === 3) { + inst.progress = 0.000001; + inst.lastKnownValue = 0; + inst.lastKnownValue2 = 0; + inst.onStart = true; + inst.state = 5; + } + } + } + behinstProto.stopTween = function (stopMode) + { + for (var i in this.tween_list) { + var inst = this.tween_list[i]; + if ((inst.state != 3) && (inst.state != 0)) //don't save paused/seek state + inst.lastState = inst.state; + if (stopMode === 1) inst.progress = 0.0; + if (stopMode === 2) inst.progress = inst.duration; + inst.state = 3; + var factor = inst.OnTick(0); + this.updateTween(inst, factor); + } + } + behinstProto.reverseTween = function(reverseMode) + { + for (var i in this.tween_list) { + var inst = this.tween_list[i]; + if (reverseMode === 1) { + inst.progress = inst.duration; + inst.lastKnownValue = 0; + inst.lastKnownValue2 = 0; + inst.onReverseStart = true; + } + inst.state = 2; + } + } + behinstProto.updateTween = function (inst, factor) + { + if (inst.tweened === 0) { + if (inst.enforce) { + this.inst.x = inst.initialparam1 + (inst.targetparam1 - inst.initialparam1) * factor; + this.inst.y = inst.initialparam2 + (inst.targetparam2 - inst.initialparam2) * factor; + } else { + this.inst.x += ((inst.targetparam1 - inst.initialparam1) * factor) - inst.lastKnownValue; + this.inst.y += ((inst.targetparam2 - inst.initialparam2) * factor) - inst.lastKnownValue2; + inst.lastKnownValue = ((inst.targetparam1 - inst.initialparam1) * factor); + inst.lastKnownValue2 = ((inst.targetparam2 - inst.initialparam2) * factor); + } + } else if (inst.tweened === 1) { + if (inst.enforce) { + this.inst.width = (inst.initialparam1 + ((inst.targetparam1 - inst.initialparam1) * (factor))); + this.inst.height = (inst.initialparam2 + ((inst.targetparam2 - inst.initialparam2) * (factor))); + } else { + this.inst.width += ((inst.targetparam1 - inst.initialparam1) * factor) - inst.lastKnownValue; + this.inst.height += ((inst.targetparam2 - inst.initialparam2) * factor) - inst.lastKnownValue2; + inst.lastKnownValue = ((inst.targetparam1 - inst.initialparam1) * factor); + inst.lastKnownValue2 = ((inst.targetparam2 - inst.initialparam2) * factor); + } + } else if (inst.tweened === 2) { + if (inst.enforce) { + this.inst.width = (inst.initialparam1 + ((inst.targetparam1 - inst.initialparam1) * (factor))); + } else { + this.inst.width += ((inst.targetparam1 - inst.initialparam1) * factor) - inst.lastKnownValue; + inst.lastKnownValue = ((inst.targetparam1 - inst.initialparam1) * factor); + } + } else if (inst.tweened === 3) { + if (inst.enforce) { + this.inst.height = (inst.initialparam2 + ((inst.targetparam2 - inst.initialparam2) * (factor))); + } else { + this.inst.height += ((inst.targetparam2 - inst.initialparam2) * factor) - inst.lastKnownValue2; + inst.lastKnownValue2 = ((inst.targetparam2 - inst.initialparam2) * factor); + } + } else if (inst.tweened === 4) { + if (inst.enforce) { + var tangle = inst.initialparam1 + (inst.targetparam1 - inst.initialparam1) * factor; + this.inst.angle = cr.clamp_angle(cr.to_radians(tangle)); + } else { + var tangle = ((inst.targetparam1 - inst.initialparam1) * factor) - inst.lastKnownValue; + this.inst.angle = cr.clamp_angle(this.inst.angle + cr.to_radians(tangle)); + inst.lastKnownValue = (inst.targetparam1 - inst.initialparam1) * factor; + } + } else if (inst.tweened === 5) { + if (inst.enforce) { + this.inst.opacity = (inst.initialparam1 + (inst.targetparam1 - inst.initialparam1) * factor) / 100; + } else { + this.inst.opacity += (((inst.targetparam1 - inst.initialparam1) * factor) - inst.lastKnownValue) / 100; + inst.lastKnownValue = ((inst.targetparam1 - inst.initialparam1) * factor); + } + } else if (inst.tweened === 6) { + if (inst.enforce) { + this.value = (inst.initialparam1 + (inst.targetparam1 - inst.initialparam1) * factor); + } else { + this.value += (((inst.targetparam1 - inst.initialparam1) * factor) - inst.lastKnownValue); + inst.lastKnownValue = ((inst.targetparam1 - inst.initialparam1) * factor); + } + } else if (inst.tweened === 7) { + if (inst.enforce) { + this.inst.x = inst.initialparam1 + (inst.targetparam1 - inst.initialparam1) * factor; + } else { + this.inst.x += ((inst.targetparam1 - inst.initialparam1) * factor) - inst.lastKnownValue; + inst.lastKnownValue = ((inst.targetparam1 - inst.initialparam1) * factor); + } + } else if (inst.tweened === 8) { + if (inst.enforce) { + this.inst.y = inst.initialparam2 + (inst.targetparam2 - inst.initialparam2) * factor; + } else { + this.inst.y += ((inst.targetparam2 - inst.initialparam2) * factor) - inst.lastKnownValue2; + inst.lastKnownValue2 = ((inst.targetparam2 - inst.initialparam2) * factor); + } + } else if (inst.tweened === 9) { + var scalex = inst.initialparam1 + (inst.targetparam1 - inst.initialparam1) * factor; + var scaley = inst.initialparam2 + (inst.targetparam2 - inst.initialparam2) * factor; + if (this.inst.width < 0) scalex = inst.initialparam1 + (inst.targetparam1 + inst.initialparam1) * -factor; + if (this.inst.height < 0) scaley = inst.initialparam2 + (inst.targetparam2 + inst.initialparam2) * -factor; + if (inst.enforce) { + this.inst.width = this.inst.curFrame.width * scalex; + this.inst.height = this.inst.curFrame.height * scaley; + } else { + if (this.inst.width < 0) { + this.inst.width = scalex * (this.inst.width / (-1+inst.lastKnownValue)); + inst.lastKnownValue = scalex + 1 + } else { + this.inst.width = scalex * (this.inst.width / (1+inst.lastKnownValue)); + inst.lastKnownValue = scalex - 1; + } + if (this.inst.height < 0) { + this.inst.height = scaley * (this.inst.height / (-1+inst.lastKnownValue2)); + inst.lastKnownValue2 = scaley + 1 + } else { + this.inst.height = scaley * (this.inst.height / (1+inst.lastKnownValue2)); + inst.lastKnownValue2 = scaley - 1; + } + } + } + this.inst.set_bbox_changed(); + } + behinstProto.tick = function () + { + var dt = this.runtime.getDt(this.inst); + var inst = this.tween_list["default"]; + if (inst.state !== 0) { + if (inst.onStart) { + this.runtime.trigger(cr.behaviors.lunarray_LiteTween.prototype.cnds.OnStart, this.inst); + inst.onStart = false; + } + if (inst.onReverseStart) { + this.runtime.trigger(cr.behaviors.lunarray_LiteTween.prototype.cnds.OnReverseStart, this.inst); + inst.onReverseStart = false; + } + this.active = (inst.state == 1) || (inst.state == 2) || (inst.state == 4) || (inst.state == 5) || (inst.state == 6); + var factor = inst.OnTick(dt); + this.updateTween(inst, factor); + if (inst.onEnd) { + this.runtime.trigger(cr.behaviors.lunarray_LiteTween.prototype.cnds.OnEnd, this.inst); + inst.onEnd = false; + } + if (inst.onReverseEnd) { + this.runtime.trigger(cr.behaviors.lunarray_LiteTween.prototype.cnds.OnReverseEnd, this.inst); + inst.onReverseEnd = false; + } + } + }; + behaviorProto.cnds = {}; + var cnds = behaviorProto.cnds; + cnds.IsActive = function () + { + return (this.tween_list["default"].state !== 0); + }; + cnds.IsReversing = function () + { + return (this.tween_list["default"].state == 2); + }; + cnds.CompareProgress = function (cmp, v) + { + var inst = this.tween_list["default"]; + return cr.do_cmp((inst.progress / inst.duration), cmp, v); + }; + cnds.OnThreshold = function (cmp, v) + { + var inst = this.tween_list["default"]; + this.threshold = (cr.do_cmp((inst.progress / inst.duration), cmp, v)); + var ret = (this.oldthreshold != this.threshold) && (this.threshold); + if (ret) { + this.oldthreshold = this.threshold; + } + return ret; + }; + cnds.OnStart = function () + { + if (this.tween_list["default"] === undefined) + return false; + return this.tween_list["default"].onStart; + }; + cnds.OnReverseStart = function () + { + if (this.tween_list["default"] === undefined) + return false; + return this.tween_list["default"].onReverseStart; + }; + cnds.OnEnd = function () + { + if (this.tween_list["default"] === undefined) + return false; + return this.tween_list["default"].onEnd; + }; + cnds.OnReverseEnd = function () + { + if (this.tween_list["default"] === undefined) + return false; + return this.tween_list["default"].onReverseEnd; + }; + behaviorProto.acts = {}; + var acts = behaviorProto.acts; + acts.Start = function (startmode, current) + { + this.threshold = false; + this.oldthreshold = false; + this.useCurrent = (current == 1); + this.startTween(startmode); + }; + acts.Stop = function (stopmode) + { + this.stopTween(stopmode); + }; + acts.Reverse = function (revMode) + { + this.threshold = false; + this.oldthreshold = false; + this.reverseTween(revMode); + }; + acts.ProgressTo = function (progress) + { + this.setProgressTo(progress); + }; + acts.SetDuration = function (x) + { + if (isNaN(x)) return; + if (x < 0) return; + if (this.tween_list["default"] === undefined) return; + this.tween_list["default"].duration = x; + }; + acts.SetEnforce = function (x) + { + if (this.tween_list["default"] === undefined) return; + this.tween_list["default"].enforce = (x===1); + }; + acts.SetInitial = function (x) + { + if (this.tween_list["default"] === undefined) return; + var init = this.parseCurrent(this.tween_list["default"].tweened, x); + this.tween_list["default"].setInitial(init); + }; + acts.SetTarget = function (targettype, absrel, x) + { + if (this.tween_list["default"] === undefined) return; + if (isNaN(x)) return; + var inst = this.tween_list["default"]; + var parsed = x + ""; + this.targetmode = absrel; + var x1 = ""; + var x2 = ""; + if (absrel === 1) { + this.target = "relative(" + parsed + ")"; + switch (targettype) { + case 0: x1 = (this.inst.x + x); x2 = inst.targetparam2; break; + case 1: x1 = inst.targetparam1; x2 = (this.inst.y + x); break; + case 2: x1 = "" + cr.to_degrees(this.inst.angle + cr.to_radians(x)); x2 = x1; break; //angle + case 3: x1 = "" + (this.inst.opacity*100) + x; x2 = x1; break; //opacity + case 4: x1 = (this.inst.width + x); x2 = inst.targetparam2; break; //width + case 5: x1 = inst.targetparam1; x2 = (this.inst.height + x); break; //height + case 6: x1 = x; x2 = x; break; //value + default: break; + } + parsed = x1 + "," + x2; + } else { + switch (targettype) { + case 0: x1 = x; x2 = inst.targetparam2; break; + case 1: x1 = inst.targetparam1; x2 = x; break; + case 2: x1 = x; x2 = x; break; //angle + case 3: x1 = x; x2 = x; break; //opacity + case 4: x1 = x; x2 = inst.targetparam2; break; //width + case 5: x1 = inst.targetparam1; x2 = x; break; //height + case 6: x1 = x; x2 = x; break; //value + default: break; + } + parsed = x1 + "," + x2; + this.target = parsed; + } + var init = this.parseCurrent(this.tween_list["default"].tweened, "current"); + var targ = this.parseCurrent(this.tween_list["default"].tweened, parsed); + inst.setInitial(init); + inst.setTarget(targ); + }; + acts.SetTweenedProperty = function (x) + { + if (this.tween_list["default"] === undefined) return; + this.tween_list["default"].tweened = x; + }; + acts.SetEasing = function (x) + { + if (this.tween_list["default"] === undefined) return; + this.tween_list["default"].easefunc = x; + }; + acts.SetEasingParam = function (x, a, p, t, s) + { + if (this.tween_list["default"] === undefined) return; + this.tween_list["default"].easingparam[x].optimized = false; + this.tween_list["default"].easingparam[x].a = a; + this.tween_list["default"].easingparam[x].p = p; + this.tween_list["default"].easingparam[x].t = t; + this.tween_list["default"].easingparam[x].s = s; + }; + acts.ResetEasingParam = function () + { + if (this.tween_list["default"] === undefined) return; + this.tween_list["default"].optimized = true; + }; + acts.SetValue = function (x) + { + var inst = this.tween_list["default"]; + this.value = x; + if (inst.tweened === 6) + inst.setInitial( this.parseCurrent(inst.tweened, "current") ); + }; + acts.SetParameter = function (tweened, easefunction, target, duration, enforce) + { + if (this.tween_list["default"] === undefined) { + this.addToTweenList("default", tweened, easefunction, initial, target, duration, enforce, 0); + } else { + var inst = this.tween_list["default"]; + inst.tweened = tweened; + inst.easefunc = easefunction; + inst.setInitial( this.parseCurrent(tweened, "current") ); + inst.setTarget( this.parseCurrent(tweened, target) ); + inst.duration = duration; + inst.enforce = (enforce === 1); + } + }; + behaviorProto.exps = {}; + var exps = behaviorProto.exps; + exps.State = function (ret) + { + var parsed = "N/A"; + switch (this.tween_list["default"].state) { + case 0: parsed = "paused"; break; + case 1: parsed = "playing"; break; + case 2: parsed = "reversing"; break; + case 3: parsed = "seeking"; break; + default: break; + } + ret.set_string(parsed); + }; + exps.Progress = function (ret) + { + var progress = this.tween_list["default"].progress/this.tween_list["default"].duration; + ret.set_float(progress); + }; + exps.Duration = function (ret) + { + ret.set_float(this.tween_list["default"].duration); + }; + exps.Target = function (ret) + { + var inst = this.tween_list["default"]; + var parsed = "N/A"; + switch (inst.tweened) { + case 0: parsed = inst.targetparam1; break; + case 1: parsed = inst.targetparam2; break; + case 2: parsed = inst.targetparam1; break; + case 3: parsed = inst.targetparam1; break; + case 4: parsed = inst.targetparam1; break; + case 5: parsed = inst.targetparam2; break; + case 6: parsed = inst.targetparam1; break; + default: break; + } + ret.set_float(parsed); + }; + exps.Value = function (ret) + { + var tval = this.value; + ret.set_float(tval); + }; + exps.Tween = function (ret, a_, b_, x_, easefunc_) + { + var currX = (x_>1.0?1.0:x_); + var factor = easeFunc(easefunc_, currX<0.0?0.0:currX, 0.0, 1.0, 1.0, false, false); + ret.set_float(a_ + factor * (b_-a_)); + }; +}()); +; +; +function trim (str) { + return str.replace(/^\s\s*/, '').replace(/\s\s*$/, ''); +} +cr.behaviors.lunarray_Tween = function(runtime) +{ + this.runtime = runtime; +}; +(function () +{ + var behaviorProto = cr.behaviors.lunarray_Tween.prototype; + behaviorProto.Type = function(behavior, objtype) + { + this.behavior = behavior; + this.objtype = objtype; + this.runtime = behavior.runtime; + }; + var behtypeProto = behaviorProto.Type.prototype; + behtypeProto.onCreate = function() + { + }; + behaviorProto.Instance = function(type, inst) + { + this.type = type; + this.behavior = type.behavior; + this.inst = inst; // associated object instance to modify + this.runtime = type.runtime; + this.i = 0; // progress + }; + var behinstProto = behaviorProto.Instance.prototype; + behinstProto.groupUpdateProgress = function(v) + { + if (v > 1) v = 1; + if (cr.lunarray_tweenProgress[this.group] = -1) cr.lunarray_tweenProgress[this.group] = v; + if (cr.lunarray_tweenProgress[this.group] >= v) cr.lunarray_tweenProgress[this.group] = v; + } + behinstProto.groupSync = function() + { + if (this.group != "") { + if (typeof cr.lunarray_tweenGroup === "undefined") { + cr.lunarray_tweenGroup = {}; + cr.lunarray_tweenProgress = {}; + } + if (typeof cr.lunarray_tweenGroup[this.group] === "undefined") { + cr.lunarray_tweenGroup[this.group] = []; + cr.lunarray_tweenProgress[this.group] = -1; + } + if (cr.lunarray_tweenGroup[this.group].indexOf(this) == -1) { + cr.lunarray_tweenGroup[this.group].push(this); + } + } + } + behinstProto.saveState = function() + { + this.tweenSaveWidth = this.inst.width; + this.tweenSaveHeight = this.inst.height; + this.tweenSaveAngle = this.inst.angle; + this.tweenSaveOpacity = this.inst.opacity; + this.tweenSaveX = this.inst.x; + this.tweenSaveY = this.inst.y; + this.tweenSaveValue = this.value; + } + behinstProto.onCreate = function() + { + this.active = (this.properties[0] === 1); + this.tweened = this.properties[1]; // 0=Position|1=Size|2=Width|3=Height|4=Angle|5=Opacity|6=Value only|7=Pixel Size + this.easing = this.properties[2]; + this.initial = this.properties[3]; + this.target = this.properties[4]; + this.duration = this.properties[5]; + this.wait = this.properties[6]; + this.playmode = this.properties[7]; //0=Play Once|1=Repeat|2=Ping Pong|3=Play once and destroy|4=Loop|5=Ping Pong Stop|6=Play and stop + this.value = this.properties[8]; + this.coord_mode = this.properties[9]; //0=Absolute|1=Relative + this.forceInit = (this.properties[10] === 1); + this.group = this.properties[11]; + this.targetObject = null; + this.pingpongCounter = 0; + if (this.playmode == 5) this.pingpongCounter = 1; + this.groupSync(); + this.isPaused = false; + this.initialX = this.inst.x; + this.initialY = this.inst.y; + this.targetX = parseFloat(this.target.split(",")[0]); + this.targetY = parseFloat(this.target.split(",")[1]); + this.saveState(); + this.tweenInitialX = 0; + this.tweenInitialY = 0; + this.tweenTargetX = 0; + this.tweenTargetY = 0; + this.tweenTargetAngle = 0; + this.ratio = this.inst.height / this.inst.width; + this.reverse = false; + this.rewindMode = false; + this.doTweenX = true; + this.doTweenY = true; + this.loop = false; + this.initiating = 0; + this.cooldown = 0; + this.lastPlayMode = this.playmode; + this.lastKnownValue = this.tweenInitialX; + this.lastKnownX = this.tweenInitialX; + this.lastKnownY = this.tweenInitialY; + if (this.forceInit) this.init(); + if (this.initial == "") this.initial = "current"; + this.onStarted = false; + this.onStartedDone = false; + this.onWaitEnd = false; + this.onWaitEndDone = false; + this.onEnd = false; + this.onEndDone = false; + this.onCooldown = false; + this.onCooldownDone = false; + if (this.active) { + this.init(); + } + }; + behinstProto.init = function () + { + this.onStarted = false; + if (this.initial === "") this.initial = "current"; + if (this.target === "") this.target = "current"; + var isCurrent = (this.initial === "current"); + var targetIsCurrent = (this.target === "current"); + var isTargettingObject = (this.target === "OBJ"); + if (this.target === "OBJ") { + if (this.targetObject != null) { + if (this.tweened == 0) { + if (this.coord_mode == 1) //relative mode + this.target = (this.targetObject.x-this.inst.x) + "," + (this.targetObject.y-this.inst.y); + else //absolute mode + this.target = (this.targetObject.x) + "," + (this.targetObject.y); + } else if ((this.tweened == 1) || (this.tweened == 2) || (this.tweened == 3) || (this.tweened == 7)) { + if (this.coord_mode == 1) { //relative mode + this.target = ((this.tweened==2)?1:(this.targetObject.width)) + "," + ((this.tweened==3)?1:(this.targetObject.height)); + } else { + this.target = ((this.tweened==2)?1:(this.targetObject.width/this.tweenSaveWidth)) + "," + ((this.tweened==3)?1:(this.targetObject.height/this.tweenSaveHeight)); + } + } else if (this.tweened == 4) { + if (this.coord_mode == 1) //relative mode + this.target = cr.to_degrees(this.targetObject.angle-this.inst.angle) + ""; + else //absolute mode + this.target = cr.to_degrees(this.targetObject.angle) + ""; + } else if (this.tweened == 5) { + if (this.coord_mode == 1) //relative mode + this.target = ((this.targetObject.opacity-this.inst.opacity)*100) + ""; + else //absolute mode + this.target = (this.targetObject.opacity*100) + ""; + } + } + } + if (this.tweened == 0) { + if (targetIsCurrent) this.target = this.inst.x + "," + this.inst.y; + if (!isCurrent) { + if (!this.reverse) { + if (this.playmode != 1) { + this.inst.x = parseFloat(this.initial.split(",")[0]); + this.inst.y = parseFloat(this.initial.split(",")[1]); + } + } + } else { + if (this.coord_mode == 1) { + this.initial = this.inst.x + "," + this.inst.y; + } else { + this.initial = this.tweenSaveX + "," + this.tweenSaveY; + } + } + if (this.coord_mode == 1) { + if (this.loop) { + this.inst.x = this.tweenSaveX; + this.inst.y = this.tweenSaveY; + } + this.initialX = this.inst.x; + this.initialY = this.inst.y; + if (!this.reverse) { + this.targetX = parseFloat(this.target.split(",")[0]); + this.targetY = parseFloat(this.target.split(",")[1]); + } else { + this.targetX = -parseFloat(this.target.split(",")[0]); + this.targetY = -parseFloat(this.target.split(",")[1]); + } + this.tweenInitialX = this.initialX; + this.tweenInitialY = this.initialY; + this.tweenTargetX = this.tweenInitialX + this.targetX; + this.tweenTargetY = this.tweenInitialY + this.targetY; + } else { + if (!this.reverse) { + this.inst.x = this.tweenSaveX; + this.inst.y = this.tweenSaveY; + this.targetX = parseFloat(this.target.split(",")[0]); + this.targetY = parseFloat(this.target.split(",")[1]); + } else { + this.inst.x = parseFloat(this.target.split(",")[0]); + this.inst.y = parseFloat(this.target.split(",")[1]); + this.targetX = this.tweenSaveX; + this.targetY = this.tweenSaveY; + } + this.initialX = this.inst.x; + this.initialY = this.inst.y; + this.tweenInitialX = this.initialX; + this.tweenInitialY = this.initialY; + this.tweenTargetX = this.targetX; + this.tweenTargetY = this.targetY; + if (this.playmode == -6) { + this.tweenTargetX = this.tweenSaveX; + this.tweenTargetY = this.tweenSaveY; + } + } + } else if ((this.tweened == 1) || (this.tweened == 2) || (this.tweened == 3)) { + if (targetIsCurrent) this.target = "1,1"; + if (this.initial == "current") this.initial = "1,1"; + this.initial = "" + this.initial; + this.target = "" + this.target; + if (this.tweened == 2) { + if (this.initial.indexOf(',') == -1) this.initial = parseFloat(this.initial) + ",1"; + if (this.target.indexOf(',') == -1) this.target = parseFloat(this.target) + ",1"; + } else if (this.tweened == 3) { + if (this.initial.indexOf(',') == -1) this.initial = "1," + parseFloat(this.initial); + if (this.target.indexOf(',') == -1) this.target = "1," + parseFloat(this.target); + } else { + if (this.initial.indexOf(',') == -1) this.initial = parseFloat(this.initial) + "," + parseFloat(this.initial); + if (this.target.indexOf(',') == -1) this.target = parseFloat(this.target) + "," + parseFloat(this.target); + } + var ix = parseFloat(this.initial.split(",")[0]); + var iy = parseFloat(this.initial.split(",")[1]); + this.doTweenX = true; + var tx = parseFloat(this.target.split(",")[0]); + if ((tx == 0) || (isNaN(tx))) this.doTweenX = false; + if (this.tweened == 3) this.doTweenX = false; + this.doTweenY = true; + var ty = parseFloat(this.target.split(",")[1]); + if ((ty == 0) || (isNaN(ty))) this.doTweenY = false; + if (this.tweened == 2) this.doTweenY = false; + if (this.coord_mode == 1) { + if (this.loop) { + this.inst.width = this.tweenSaveWidth; + this.inst.height = this.tweenSaveHeight; + } + if (!isCurrent) { + if (!this.reverse) { + this.inst.width = this.inst.width * ix; + this.inst.height = this.inst.height * iy; + } else { + this.inst.width = this.inst.width * tx; + this.inst.height = this.inst.height * ty; + } + } + this.initialX = this.inst.width; + this.initialY = this.inst.height; + this.tweenInitialX = this.initialX; + this.tweenInitialY = this.initialY; + if (!this.reverse) { + this.targetX = this.initialX * tx; + this.targetY = this.initialY * ty; + } else { + this.targetX = this.initialX * ix/tx; + this.targetY = this.initialY * iy/ty; + } + this.tweenTargetX = this.targetX; + this.tweenTargetY = this.targetY; + } else { + if (!isCurrent) { + if (!this.reverse) { + this.inst.width = this.tweenSaveWidth * ix; + this.inst.height = this.tweenSaveHeight * iy; + } else { + this.inst.width = this.tweenSaveWidth * tx; + this.inst.height = this.tweenSaveHeight * ty; + } + } + this.initialX = this.inst.width; + this.initialY = this.inst.height; + this.tweenInitialX = this.initialX; + this.tweenInitialY = this.initialY; + if (!this.reverse) { + this.targetX = this.tweenSaveWidth * tx; + this.targetY = this.tweenSaveHeight * ty; + } else { + this.targetX = this.tweenSaveWidth * ix; + this.targetY = this.tweenSaveHeight * iy; + } + this.tweenTargetX = this.targetX; + this.tweenTargetY = this.targetY; + } + if (this.playmode == -6) { + this.tweenTargetX = this.tweenSaveWidth * ix; + this.tweenTargetY = this.tweenSaveHeight * iy; + } + } else if (this.tweened == 4) { + if (targetIsCurrent) this.target = cr.to_degrees(this.inst.angle); + if (this.initial != "current") { + if (!this.reverse) { + if (this.playmode != 1) { //if repeat, don't initialize + this.inst.angle = cr.to_radians(parseFloat(this.initial.split(",")[0])); + } + } + } + if (this.coord_mode == 1) { + if (this.loop) { + this.inst.angle = this.tweenSaveAngle; + } + this.initialX = this.inst.angle; + if (this.reverse) { + this.targetX = this.inst.angle - cr.to_radians(parseFloat(this.target.split(",")[0])); + } else { + this.targetX = this.inst.angle + cr.to_radians(parseFloat(this.target.split(",")[0])); + } + this.tweenInitialX = this.initialX; + this.tweenTargetX = cr.to_degrees(this.targetX); + } else { + if (this.reverse) { + this.inst.angle = cr.to_radians(parseFloat(this.target.split(",")[0]));; + this.initialX = this.inst.angle; + this.targetX = this.tweenSaveAngle; + this.tweenInitialX = this.initialX; + this.tweenTargetX = cr.to_degrees(this.targetX); + } else { + this.inst.angle = this.tweenSaveAngle; + this.initialX = this.inst.angle; + this.targetX = cr.to_radians(parseFloat(this.target.split(",")[0])); + this.tweenInitialX = this.initialX; + this.tweenTargetX = cr.to_degrees(this.targetX); + } + } + if (this.playmode == -6) { + this.tweenTargetX = cr.to_degrees(this.tweenSaveAngle); + } + this.tweenTargetAngle = cr.to_radians(this.tweenTargetX); + } else if (this.tweened == 5) { + if (this.initial == "current") this.initial = this.inst.opacity; + if (targetIsCurrent) this.target = ""+this.inst.opacity; + if (!isCurrent) { + if (!this.reverse) { + if (this.playmode != 1) { //if repeat, don't initialize + this.inst.opacity = parseFloat(this.initial.split(",")[0]) / 100; + } + } + } + if (this.coord_mode == 1) { + if (this.loop) { + this.inst.opacity = this.tweenSaveOpacity; + } + this.initialX = this.inst.opacity; + this.tweenInitialX = this.initialX; + if (!this.reverse) { + this.targetX = parseFloat(this.target.split(",")[0]) / 100; + } else { + this.targetX = -parseFloat(this.target.split(",")[0]) / 100; + } + this.tweenTargetX = this.tweenInitialX + this.targetX; + } else { + this.initialX = this.inst.opacity; + if (!this.reverse) { + this.tweenInitialX = this.initialX; + this.targetX = parseFloat(this.target.split(",")[0]) / 100; + } else { + this.tweenInitialX = parseFloat(this.target.split(",")[0]) / 100; + this.targetX = parseFloat(this.initial.split(",")[0]) / 100; + } + this.tweenTargetX = this.targetX; + } + if (this.playmode == -6) { + this.tweenTargetX = this.tweenSaveOpacity; + } + } else if (this.tweened == 6) { + if (isNaN(this.value)) this.value = 0; + if (this.initial == "current") this.initial = ""+this.value; + if (targetIsCurrent) this.target = ""+this.value; + if (!isCurrent) { + if (!this.reverse) { + if (this.playmode != 1) { //if repeat, don't initialize + this.value = parseFloat(this.initial.split(",")[0]); + } + } + } + if (this.coord_mode == 1) { + if (this.loop) { + this.value = this.tweenSaveValue; + } + if (!isCurrent) { + if (!this.reverse) { + this.value = parseFloat(this.initial.split(",")[0]); + } else { + this.value = parseFloat(this.target.split(",")[0]); + } + } + this.initialX = this.value; + if (!this.reverse) { + this.targetX = this.initialX + parseFloat(this.target.split(",")[0]); + } else { + this.targetX = this.initialX - parseFloat(this.target.split(",")[0]); + } + this.tweenInitialX = this.initialX; + this.tweenTargetX = this.targetX; + } else { + if (!isCurrent) { + if (!this.reverse) { + this.value = parseFloat(this.initial.split(",")[0]); + } else { + this.value = parseFloat(this.target.split(",")[0]); + } + } + this.initialX = this.value; + if (!this.reverse) { + this.targetX = parseFloat(this.target.split(",")[0]); + } else { + this.targetX = parseFloat(this.initial.split(",")[0]); + } + this.tweenInitialX = this.initialX; + this.tweenTargetX = this.targetX; + } + if (this.playmode == -6) { + this.tweenTargetX = this.tweenSaveValue; + } + } else if (this.tweened == 7) { + if (targetIsCurrent) this.target = this.inst.width + "," + this.inst.height; + if (this.initial != "current") { + if (!this.reverse) { + if (this.playmode != 1) { //if repeat, don't initialize + this.inst.width = parseFloat(this.initial.split(",")[0]); + this.inst.height = parseFloat(this.initial.split(",")[1]); + } + } + } + this.doTweenX = true; + var tx = parseFloat(this.target.split(",")[0]); + if ((tx < 0) || (isNaN(tx))) this.doTweenX = false; + this.doTweenY = true; + var ty = parseFloat(this.target.split(",")[1]); + if ((ty < 0) || (isNaN(ty))) this.doTweenY = false; + if (this.coord_mode == 1) { + if (this.loop) { + this.inst.width = this.tweenSaveWidth; + this.inst.height = this.tweenSaveHeight; + } + this.initialX = this.inst.width; + this.initialY = this.inst.height; + if (!this.reverse) { + this.targetX = this.initialX + parseFloat(this.target.split(",")[0]); + this.targetY = this.initialY + parseFloat(this.target.split(",")[1]); + } else { + this.targetX = this.initialX - parseFloat(this.target.split(",")[0]); + this.targetY = this.initialY - parseFloat(this.target.split(",")[1]); + } + this.tweenInitialX = this.initialX; + this.tweenInitialY = this.initialY; + this.tweenTargetX = this.targetX; + this.tweenTargetY = this.targetY; + } else { + if (!isCurrent) { + if (!this.reverse) { + this.inst.width = this.tweenSaveWidth; + this.inst.height = this.tweenSaveHeight; + } else { + this.inst.width = parseFloat(this.target.split(",")[0]); + this.inst.height = parseFloat(this.target.split(",")[1]); + } + } + this.initialX = this.inst.width; + this.initialY = this.inst.height; + if (!this.reverse) { + this.targetX = parseFloat(this.target.split(",")[0]); + this.targetY = parseFloat(this.target.split(",")[1]); + } else { + this.targetX = this.tweenSaveWidth; + this.targetY = this.tweenSaveHeight; + } + this.tweenInitialX = this.initialX; + this.tweenInitialY = this.initialY; + this.tweenTargetX = this.targetX; + this.tweenTargetY = this.targetY; + } + if (this.playmode == -6) { + this.tweenTargetX = this.tweenSaveWidth; + this.tweenTargetY = this.tweenSaveHeight; + } + } else { +; + } + this.lastKnownValue = this.tweenInitialX; + this.lastKnownX = this.tweenInitialX; + this.lastKnownY = this.tweenInitialY; + this.initiating = parseFloat(this.wait.split(",")[0]); + this.cooldown = parseFloat(this.wait.split(",")[1]); + if ((this.initiating < 0) || (isNaN(this.initiating))) this.initiating = 0; + if ((this.cooldown < 0) || (isNaN(this.cooldown))) this.cooldown = 0; + if (isCurrent) this.initial = "current"; + if (targetIsCurrent) this.target = "current"; + if (isTargettingObject) this.target = "OBJ"; + }; + function easeOutBounce(t,b,c,d) { + if ((t/=d) < (1/2.75)) { + return c*(7.5625*t*t) + b; + } else if (t < (2/2.75)) { + return c*(7.5625*(t-=(1.5/2.75))*t + .75) + b; + } else if (t < (2.5/2.75)) { + return c*(7.5625*(t-=(2.25/2.75))*t + .9375) + b; + } else { + return c*(7.5625*(t-=(2.625/2.75))*t + .984375) + b; + } + } + behinstProto.easeFunc = function (t, b, c, d) + { + switch (this.easing) { + case 0: // linear + return c*t/d + b; + case 1: // easeInQuad + return c*(t/=d)*t + b; + case 2: // easeOutQuad + return -c *(t/=d)*(t-2) + b; + case 3: // easeInOutQuad + if ((t/=d/2) < 1) return c/2*t*t + b; + return -c/2 * ((--t)*(t-2) - 1) + b; + case 4: // easeInCubic + return c*(t/=d)*t*t + b; + case 5: // easeOutCubic + return c*((t=t/d-1)*t*t + 1) + b; + case 6: // easeInOutCubic + if ((t/=d/2) < 1) + return c/2*t*t*t + b; + return c/2*((t-=2)*t*t + 2) + b; + case 7: // easeInQuart + return c*(t/=d)*t*t*t + b; + case 8: // easeOutQuart + return -c * ((t=t/d-1)*t*t*t - 1) + b; + case 9: // easeInOutQuart + if ((t/=d/2) < 1) return c/2*t*t*t*t + b; + return -c/2 * ((t-=2)*t*t*t - 2) + b; + case 10: // easeInQuint + return c*(t/=d)*t*t*t*t + b; + case 11: // easeOutQuint + return c*((t=t/d-1)*t*t*t*t + 1) + b; + case 12: // easeInOutQuint + if ((t/=d/2) < 1) return c/2*t*t*t*t*t + b; + return c/2*((t-=2)*t*t*t*t + 2) + b; + case 13: // easeInCircle + return -c * (Math.sqrt(1 - (t/=d)*t) - 1) + b; + case 14: // easeOutCircle + return c * Math.sqrt(1 - (t=t/d-1)*t) + b; + case 15: // easeInOutCircle + if ((t/=d/2) < 1) return -c/2 * (Math.sqrt(1 - t*t) - 1) + b; + return c/2 * (Math.sqrt(1 - (t-=2)*t) + 1) + b; + case 16: // easeInBack + var s = 0; + if (s==0) s = 1.70158; + return c*(t/=d)*t*((s+1)*t - s) + b; + case 17: // easeOutBack + var s = 0; + if (s==0) s = 1.70158; + return c*((t=t/d-1)*t*((s+1)*t + s) + 1) + b; + case 18: // easeInOutBack + var s = 0; + if (s==0) s = 1.70158; + if ((t/=d/2) < 1) return c/2*(t*t*(((s*=(1.525))+1)*t - s)) + b; + return c/2*((t-=2)*t*(((s*=(1.525))+1)*t + s) + 2) + b; + case 19: //easeInElastic + var a = 0; + var p = 0; + if (t==0) return b; if ((t/=d)==1) return b+c; if (p==0) p=d*.3; + if (a==0 || a < Math.abs(c)) { a=c; var s=p/4; } + else var s = p/(2*Math.PI) * Math.asin (c/a); + return -(a*Math.pow(2,10*(t-=1)) * Math.sin( (t*d-s)*(2*Math.PI)/p )) + b; + case 20: //easeOutElastic + var a = 0; + var p = 0; + if (t==0) return b; if ((t/=d)==1) return b+c; if (p == 0) p=d*.3; + if (a==0 || a < Math.abs(c)) { a=c; var s=p/4; } + else var s = p/(2*Math.PI) * Math.asin (c/a); + return (a*Math.pow(2,-10*t) * Math.sin( (t*d-s)*(2*Math.PI)/p ) + c + b); + case 21: //easeInOutElastic + var a = 0; + var p = 0; + if (t==0) return b; + if ((t/=d/2)==2) return b+c; + if (p==0) p=d*(.3*1.5); + if (a==0 || a < Math.abs(c)) { a=c; var s=p/4; } + else var s = p/(2*Math.PI) * Math.asin (c/a); + if (t < 1) return -.5*(a*Math.pow(2,10*(t-=1)) * Math.sin( (t*d-s)*(2*Math.PI)/p )) + b; + return a*Math.pow(2,-10*(t-=1)) * Math.sin( (t*d-s)*(2*Math.PI)/p )*.5 + c + b; + case 22: //easeInBounce + return c - easeOutBounce(d-t, 0, c, d) + b; + case 23: //easeOutBounce + return easeOutBounce(t,b,c,d); + case 24: //easeInOutBounce + if (t < d/2) return (c - easeOutBounce(d-(t*2), 0, c, d) + b) * 0.5 +b; + else return easeOutBounce(t*2-d, 0, c, d) * .5 + c*.5 + b; + case 25: //easeInSmoothstep + var mt = (t/d) / 2; + return (2*(mt * mt * (3 - 2*mt))); + case 26: //easeOutSmoothstep + var mt = ((t/d) + 1) / 2; + return ((2*(mt * mt * (3 - 2*mt))) - 1); + case 27: //easeInOutSmoothstep + var mt = (t / d); + return (mt * mt * (3 - 2*mt)); + }; + return 0; + }; + behinstProto.saveToJSON = function () + { + return { + "i": this.i, + "active": this.active, + "tweened": this.tweened, + "easing": this.easing, + "initial": this.initial, + "target": this.target, + "duration": this.duration, + "wait": this.wait, + "playmode": this.playmode, + "value": this.value, + "coord_mode": this.coord_mode, + "forceInit": this.forceInit, + "group": this.group, + "targetObject": this.targetObject, + "pingpongCounter": this.pingpongCounter, + "isPaused": this.isPaused, + "initialX": this.initialX, + "initialY": this.initialY, + "targetX": this.targetX, + "targetY": this.targetY, + "tweenSaveWidth": this.tweenSaveWidth, + "tweenSaveHeight": this.tweenSaveHeight, + "tweenSaveAngle": this.tweenSaveAngle, + "tweenSaveX": this.tweenSaveX, + "tweenSaveY": this.tweenSaveY, + "tweenSaveValue": this.tweenSaveValue, + "tweenInitialX": this.tweenInitialX, + "tweenInitialY": this.tweenInitialY, + "tweenTargetX": this.tweenTargetX, + "tweenTargetY": this.tweenTargetY, + "tweenTargetAngle": this.tweenTargetAngle, + "ratio": this.ratio, + "reverse": this.reverse, + "rewindMode": this.rewindMode, + "doTweenX": this.doTweenX, + "doTweenY": this.doTweenY, + "loop": this.loop, + "initiating": this.initiating, + "cooldown": this.cooldown, + "lastPlayMode": this.lastPlayMode, + "lastKnownValue": this.lastKnownValue, + "lastKnownX": this.lastKnownX, + "lastKnownY": this.lastKnownY, + "onStarted": this.onStarted, + "onStartedDone": this.onStartedDone, + "onWaitEnd": this.onWaitEnd, + "onWaitEndDone": this.onWaitEndDone, + "onEnd": this.onEnd, + "onEndDone": this.onEndDone, + "onCooldown": this.onCooldown, + "onCooldownDone": this.onCooldownDone + }; + }; + behinstProto.loadFromJSON = function (o) + { + this.i = o["i"]; + this.active = o["active"]; + this.tweened = o["tweened"]; + this.easing = o["easing"]; + this.initial = o["initial"]; + this.target = o["target"]; + this.duration = o["duration"]; + this.wait = o["wait"]; + this.playmode = o["playmode"]; + this.value = o["value"]; + this.coord_mode = o["coord_mode"]; + this.forceInit = o["forceInit"]; + this.group = o["group"]; + this.targetObject = o["targetObject"]; + this.pingpongCounter = o["pingpongCounter"]; + this.isPaused = o["isPaused"]; + this.initialX = o["initialX"]; + this.initialY = o["initialY"]; + this.targetX = o["targetX"]; + this.targetY = o["targetY"]; + this.tweenSaveWidth = o["tweenSaveWidth"]; + this.tweenSaveHeight = o["tweenSaveHeight"]; + this.tweenSaveAngle = o["tweenSaveAngle"]; + this.tweenSaveX = o["tweenSaveX"]; + this.tweenSaveY = o["tweenSaveY"]; + this.tweenSaveValue = o["tweenSaveValue"]; + this.tweenInitialX = o["tweenInitialX"]; + this.tweenInitialY = o["tweenInitialY"]; + this.tweenTargetX = o["tweenTargetX"]; + this.tweenTargetY = o["tweenTargetY"]; + this.tweenTargetAngle = o["tweenTargetAngle"]; + this.ratio = o["ratio"]; + this.reverse = o["reverse"]; + this.rewindMode = o["rewindMode"]; + this.doTweenX = o["doTweenX"]; + this.doTweenY = o["doTweenY"]; + this.loop = o["loop"]; + this.initiating = o["initiating"]; + this.cooldown = o["cooldown"]; + this.lastPlayMode = o["lastPlayMode"]; + this.lastKnownValue = o["lastKnownValue"]; + this.lastKnownX = o["lastKnownX"]; + this.lastKnownY = o["lastKnownY"]; + this.onStarted = o["onStarted"]; + this.onStartedDone = o["onStartedDone"]; + this.onWaitEnd = o["onWaitEnd"]; + this.onWaitEndDone = o["onWaitEndDone"] + this.onEnd = o["onEnd"]; + this.onEndDone = o["onEndDone"]; + this.onCooldown = o["onCooldown"]; + this.onCooldownDone = o["onCooldownDone"]; + this.groupSync(); + }; + behinstProto.tick = function () + { + var dt = this.runtime.getDt(this.inst); + var isForceStop = (this.i == -1); + if (!this.active || dt === 0) + return; + if (this.i == 0) { + if (!this.onStarted) { + this.onStarted = true; + this.onStartedDone = false; + this.onWaitEnd = false; + this.onWaitEndDone = false; + this.onEnd = false; + this.onEndDone = false; + this.onCooldown = false; + this.onCooldownDone = false; + this.runtime.trigger(cr.behaviors.lunarray_Tween.prototype.cnds.OnStart, this.inst); + this.onStartedDone = true; + } + } + if (this.i == -1) { + this.i = this.initiating + this.duration + this.cooldown; + } else { + this.i += dt; + } + if (this.i <= this.initiating) { + return; + } else { + if (this.onWaitEnd == false) { + this.onWaitEnd = true; + this.runtime.trigger(cr.behaviors.lunarray_Tween.prototype.cnds.OnWaitEnd, this.inst); + this.onWaitEndDone = true; + } + } + if (this.i <= (this.duration + this.initiating)) { + var factor = this.easeFunc(this.i-this.initiating, 0, 1, this.duration); + if (this.tweened == 0) { + if (this.coord_mode == 1) { + if (this.inst.x !== this.lastKnownX) { + this.tweenInitialX += (this.inst.x - this.lastKnownX); + this.tweenTargetX += (this.inst.x - this.lastKnownX); + } + if (this.inst.y !== this.lastKnownY) { + this.tweenInitialY += (this.inst.y - this.lastKnownY); + this.tweenTargetY += (this.inst.y - this.lastKnownY); + } + } else { + if (this.inst.x !== this.lastKnownX) + this.tweenInitialX += (this.inst.x - this.lastKnownX); + if (this.inst.y !== this.lastKnownY) + this.tweenInitialY += (this.inst.y - this.lastKnownY); + } + this.inst.x = this.tweenInitialX + (this.tweenTargetX - this.tweenInitialX) * factor; + this.inst.y = this.tweenInitialY + (this.tweenTargetY - this.tweenInitialY) * factor; + this.lastKnownX = this.inst.x; + this.lastKnownY = this.inst.y; + } else if ((this.tweened == 1) || (this.tweened == 2) || (this.tweened == 3)) { + if (this.inst.width !== this.lastKnownX) + this.tweenInitialX = this.inst.width; + if (this.inst.height !== this.lastKnownY) + this.tweenInitialY = this.inst.height; + if (this.doTweenX) { + this.inst.width = this.tweenInitialX + (this.tweenTargetX - this.tweenInitialX) * factor; + } + if (this.doTweenY) { + this.inst.height = this.tweenInitialY + (this.tweenTargetY - this.tweenInitialY) * factor; + } else { + if (this.tweened == 1) { + this.inst.height = this.inst.width * this.ratio; + } + } + this.lastKnownX = this.inst.width; + this.lastKnownY = this.inst.height; + } else if (this.tweened == 4) { + var tangle = this.tweenInitialX + (this.tweenTargetAngle - this.tweenInitialX) * factor; + if (this.i >= (this.duration + this.initiating)) + tangle = this.tweenTargetAngle; + this.inst.angle = cr.clamp_angle(tangle); + } else if (this.tweened == 5) { + if (this.coord_mode == 1) { + if (this.inst.opacity !== this.lastKnownX) + this.tweenInitialX = this.inst.opacity; + } + this.inst.opacity = this.tweenInitialX + (this.tweenTargetX - this.tweenInitialX) * factor; + this.lastKnownX = this.inst.opacity; + } else if (this.tweened == 6) { + this.value = this.tweenInitialX + (this.tweenTargetX - this.tweenInitialX) * factor; + } else if (this.tweened == 7) { + if (this.coord_mode == 1) { + if (this.inst.width !== this.lastKnownX) + this.tweenInitialX = this.inst.width; + if (this.inst.height !== this.lastKnownY) + this.tweenInitialY = this.inst.height; + } + if (this.doTweenX) this.inst.width = this.tweenInitialX + (this.tweenTargetX - this.tweenInitialX) * factor; + if (this.doTweenY) this.inst.height = this.tweenInitialY + (this.tweenTargetY - this.tweenInitialY) * factor; + this.lastKnownX = this.inst.width; + this.lastKnownY = this.inst.height; + } + this.inst.set_bbox_changed(); + } + if (this.i >= this.duration + this.initiating) { + this.doEndFrame(isForceStop); + this.inst.set_bbox_changed(); + if (this.onEnd == false) { + this.onEnd = true; + this.runtime.trigger(cr.behaviors.lunarray_Tween.prototype.cnds.OnEnd, this.inst); + this.onEndDone = true; + } + }; + }; + behinstProto.doEndFrame = function (isForceStop) + { + switch (this.tweened) { + case 0: // position + this.inst.x = this.tweenTargetX; + this.inst.y = this.tweenTargetY; + break; + case 1: // size + if (this.doTweenX) this.inst.width = this.tweenTargetX; + if (this.doTweenY) { + this.inst.height = this.tweenTargetY; + } else { + this.inst.height = this.inst.width * this.ratio; + } + break; + case 2: // width + this.inst.width = this.tweenTargetX; + break; + case 3: // height + this.inst.height = this.tweenTargetY; + break; + case 4: // angle + var tangle = this.tweenTargetAngle; + this.inst.angle = cr.clamp_angle(tangle); + this.lastKnownValue = this.inst.angle; + break; + case 5: // opacity + this.inst.opacity = this.tweenTargetX; + break; + case 6: // value + this.value = this.tweenTargetX; + break; + case 7: // size + if (this.doTweenX) this.inst.width = this.tweenTargetX; + if (this.doTweenY) this.inst.height = this.tweenTargetY; + break; + } + if (this.i >= this.duration + this.initiating + this.cooldown) { + if (this.playmode == 0) { + this.active = false; + this.reverse = false; + this.i = this.duration + this.initiating + this.cooldown; + } else if (this.playmode == 1) { + this.i = 0; + this.init(); + this.active = true; + } else if (this.playmode == 2) { + if (isForceStop) { + this.reverse = false; + this.init(); + } else { + this.reverse = !this.reverse; + this.i = 0; + this.init(); + this.active = true; + } + } else if (this.playmode == 3) { + this.runtime.DestroyInstance(this.inst); + } else if (this.playmode == 4) { + this.loop = true; + this.i = 0; + this.init(); + this.active = true; + } else if (this.playmode == 5) { + if (isForceStop) { + this.reverse = false; + this.init(); + } else { + if (this.pingpongCounter <= 0) { + this.i = this.duration + this.initiating + this.cooldown; + this.active = false; + } else { + if (!this.reverse) { + this.pingpongCounter -= 1; + this.reverse = true; + this.i = 0; + this.init(); + this.active = true; + } else { + this.pingpongCounter -= 1; + this.reverse = false; + this.i = 0; + this.init(); + this.active = true; + } + } + } + } else if (this.playmode == -6) { + this.playmode = this.lastPlayMode; + this.reverse = false; + this.i = 0; + this.active = false; + } else if (this.playmode == 6) { + this.reverse = false; + this.i = this.duration + this.initiating + this.cooldown; + this.active = false; + } + } + if (this.onCooldown == false) { + this.onCooldown = true; + this.runtime.trigger(cr.behaviors.lunarray_Tween.prototype.cnds.OnCooldownEnd, this.inst); + this.onCooldownDone = true; + } + } + behaviorProto.cnds = {}; + var cnds = behaviorProto.cnds; + cnds.IsActive = function () + { + return this.active; + }; + cnds.CompareGroupProgress = function (cmp, v) + { + var x = []; + cr.lunarray_tweenGroup[this.group].forEach(function (value) { + x.push((value.i / (value.duration + value.initiating + value.cooldown))); + } ); + return cr.do_cmp( Math.min.apply(null, x), cmp, v ); + } + cnds.CompareProgress = function (cmp, v) + { + return cr.do_cmp((this.i / (this.duration + this.initiating + this.cooldown)), cmp, v); + }; + cnds.OnStart = function () + { + if (this.onStartedDone === false) { + return this.onStarted; + } + }; + cnds.OnWaitEnd = function () + { + if (this.onWaitEndDone === false) { + return this.onWaitEnd; + } + }; + cnds.OnEnd = function (a, b, c) + { + if (this.onEndDone === false) { + return this.onEnd; + } + }; + cnds.OnCooldownEnd = function () + { + if (this.onCooldownDone === false) { + return this.onCooldown; + } + }; + behaviorProto.acts = {}; + var acts = behaviorProto.acts; + acts.SetActive = function (a) + { + this.active = (a === 1); + }; + acts.StartGroup = function (force, sgroup) + { + if (sgroup === "") sgroup = this.group; + var groupReady = (force === 1) || cr.lunarray_tweenGroup[sgroup].every(function(value2) { return !value2.active; } ); + if ( groupReady ) { + cr.lunarray_tweenGroup[sgroup].forEach( + function(value) { + if (force === 1) { + acts.Force.apply(value); + } else { + acts.Start.apply(value); + } + } + ); + } + } + acts.StopGroup = function (stopmode, sgroup) + { + if (sgroup === "") sgroup = this.group; + cr.lunarray_tweenGroup[sgroup].forEach( function(value) { + acts.Stop.apply(value, [stopmode]); + } ); + } + acts.ReverseGroup = function (force, rewindMode, sgroup) + { + if (sgroup === "") sgroup = this.group; + var groupReady = (force === 1) || cr.lunarray_tweenGroup[sgroup].every(function(value2) { return !value2.active; } ); + if ( groupReady ) { + cr.lunarray_tweenGroup[sgroup].forEach( + function(value) { + if (force === 1) { + acts.ForceReverse.apply(value, [rewindMode]); + } else { + acts.Reverse.apply(value, [rewindMode]); + } + } + ); + } + } + acts.Force = function () + { + this.loop = (this.playmode === 4); + if (this.playmode == 5) this.pingpongCounter = 1; + if ((this.playmode == 6) || (this.playmode == -6)) { + if (this.i < this.duration + this.cooldown + this.initiating) { + this.reverse = false; + this.init(); + this.active = true; + } + } else { + this.reverse = false; + this.i = 0; + this.init(); + this.active = true; + } + }; + acts.ForceReverse = function (rewindMode) + { + this.rewindMode = (rewindMode == 1); + this.loop = (this.playmode === 4); + if (this.playmode == 5) this.pingpongCounter = 1; + if ((this.playmode == 6) || (this.playmode == -6)) { + if (this.i < this.duration + this.cooldown + this.initiating) { + this.reverse = true; + this.init(); + this.active = true; + } + } else { + if (rewindMode) { + if (this.pingpongCounter == 1) { + if (this.i >= this.duration + this.cooldown + this.initiating) { + this.reverse = true; + this.i = 0; + this.pingpongCounter = 2; + this.init(); + this.active = true; + } + } + } else { + this.reverse = true; + this.i = 0; + this.init(); + this.active = true; + } + } + }; + acts.Start = function () + { + if (!this.active) { + this.loop = (this.playmode === 4); + if (this.playmode == 5) this.pingpongCounter = 1; + if ((this.playmode == 6) || (this.playmode == -6)) { + if (this.i < this.duration + this.cooldown + this.initiating) { + this.reverse = false; + this.init(); + this.active = true; + } + } else { + this.pingpongCounter = 1; + this.reverse = false; + this.i = 0; + this.init(); + this.active = true; + } + } + }; + acts.Stop = function (stopmode) + { + if (this.active) { + if ((this.playmode == 2) || (this.playmode == 4)) { + if (this.reverse) { + this.i = 0; + } else { + this.i = -1; + } + } else { + if (stopmode == 1) { + this.saveState(); + } else if (stopmode == 0) { + this.i = this.initiating + this.cooldown + this.duration; + } else { + this.i = 0; + } + } + this.tick(); + this.active = false; + } + }; + acts.Pause = function () { + if (this.active) { + this.isPaused = true; + this.active = false; + } + } + acts.Resume = function () { + if (this.isPaused) { + this.active = true; + this.isPaused = false; + } else { + if (!this.active) { + this.reverse = false; + this.i = 0; + this.init(); + this.active = true; + } + } + } + acts.Reverse = function (rewindMode) + { + this.rewindMode = (rewindMode == 1); + if (!this.active) { + this.loop = (this.playmode === 4); + if (this.playmode == 5) this.pingpongCounter = 1; + if ((this.playmode == 6) || (this.playmode == -6)) { + if (this.i < this.duration + this.cooldown + this.initiating) { + this.reverse = true; + this.init(); + this.active = true; + } + } else { + if (rewindMode) { + if (this.pingpongCounter == 1) { + if (this.i >= this.duration + this.cooldown + this.initiating) { + this.reverse = true; + this.i = 0; + this.pingpongCounter = 2; + this.init(); + this.active = true; + } + } + } else { + this.reverse = true; + this.i = 0; + this.init(); + this.active = true; + } + } + } + }; + acts.SetDuration = function (x) + { + this.duration = x; + }; + acts.SetWait = function (x) + { + this.wait = x; + this.initiating = parseFloat(this.wait.split(",")[0]); + this.cooldown = parseFloat(this.wait.split(",")[1]); + if ((this.initiating < 0) || (isNaN(this.initiating))) this.initiating = 0; + if ((this.cooldown < 0) || (isNaN(this.cooldown))) this.cooldown = 0; + }; + acts.SetTarget = function (x) + { + if (typeof(x) == "string") { + this.target = x; + this.targetX = parseFloat(x.split(",")[0]); + this.targetY = parseFloat(x.split(",")[1]); + } else { + this.target = x; + this.targetX = x; + } + if (!this.active) { + this.init(); + } else { + } + }; + acts.SetTargetObject = function (obj) + { + if (!obj) + return; + var otherinst = obj.getFirstPicked(); + if (!otherinst) + return; + this.targetObject = otherinst; + this.target = "OBJ"; + }; + acts.SetTargetX = function (x) + { + if ((this.tweened == 2) || (this.tweened == 3) || (this.tweened == 4) || (this.tweened == 5) || (this.tweened == 6)) { + if (typeof(x) == "string") { + this.target = parseFloat(x.split(",")[0]); + } else { + this.target = ""+x+","+this.targetY; + } + this.targetX = this.target; + } else { + var currY = this.target.split(",")[1]; + this.target = String(x) + "," + currY; + this.targetX = parseFloat(this.target.split(",")[0]); + this.targetY = parseFloat(this.target.split(",")[1]); + } + if (!this.active) { + this.saveState(); + this.init(); + } else { + } + }; + acts.SetTargetY = function (x) + { + if ((this.tweened == 2) || (this.tweened == 3) || (this.tweened == 4) || (this.tweened == 5) || (this.tweened == 6)) { + if (typeof(x) == "string") { + this.target = parseFloat(x)+""; + } else { + this.target = this.targetX+","+x; + } + this.targetX = this.target; + } else { + var currX = this.target.split(",")[0]; + this.target = currX + "," + String(x); + this.targetX = parseFloat(this.target.split(",")[0]); + this.targetY = parseFloat(this.target.split(",")[1]); + } + if (!this.active) { + this.saveState(); + this.init(); + } else { + } + }; + acts.SetInitial = function (x) + { + if (typeof(x) == "string") { + this.initial = x; + this.initialX = parseFloat(x.split(",")[0]); + this.initialY = parseFloat(x.split(",")[1]); + } else { + this.initial = ""+x; + this.initialX = x; + } + if (this.tweened == 6) { + this.value = this.initialX; + } + if (!this.active) { + this.saveState(); + this.init(); + } else { + } + }; + acts.SetInitialX = function (x) + { + if ((this.tweened == 2) || (this.tweened == 3) || (this.tweened == 4) || (this.tweened == 5) || (this.tweened == 6)) { + if (typeof(x) == "string") { + this.initial = parseFloat(x); + } else { + this.initial = ""+x+","+this.initialY; + } + this.initialX = this.initial; + } else { + if (this.initial == "") this.initial = "current"; + if (this.initial == "current") { + var currY = this.tweenSaveY; + } else { + var currY = this.initial.split(",")[1]; + } + this.initial = String(x) + "," + currY; + this.initialX = parseFloat(this.initial.split(",")[0]); + this.initialY = parseFloat(this.initial.split(",")[1]); + } + if (this.tweened == 6) { + this.value = this.initialX; + } + if (!this.active) { + this.saveState(); + this.init(); + } else { + } + }; + acts.SetInitialY = function (x) + { + if ((this.tweened == 2) || (this.tweened == 3) || (this.tweened == 4) || (this.tweened == 5) || (this.tweened == 6)) { + if (typeof(x) == "string") { + this.initial = parseFloat(x); + } else { + this.initial = ""+this.initialX+","+x; + } + this.initialX = this.initial; + } else { + if (this.initial == "") this.initial = "current"; + if (this.initial == "current") { + var currX = this.tweenSaveX; + } else { + var currX = this.initial.split(",")[0]; + } + this.initial = currX + "," + String(x); + this.initialX = parseFloat(this.initial.split(",")[0]); + this.initialY = parseFloat(this.initial.split(",")[1]); + } + if (!this.active) { + this.saveState(); + this.init(); + } else { + } + }; + acts.SetValue = function (x) + { + this.value = x; + }; + acts.SetTweenedProperty = function (m) + { + this.tweened = m; + }; + acts.SetEasing = function (w) + { + this.easing = w; + }; + acts.SetPlayback = function (x) + { + this.playmode = x; + }; + acts.SetParameter = function (tweened, playmode, easefunction, initial, target, duration, wait, cmode) + { + this.tweened = tweened; + this.playmode = playmode; + this.easing = easefunction; + acts.SetInitial.apply(this, [initial]); + acts.SetTarget.apply(this, [target]); + acts.SetDuration.apply(this, [duration]); + acts.SetWait.apply(this, [wait]); + this.coord_mode = cmode; + this.saveState(); + }; + behaviorProto.exps = {}; + var exps = behaviorProto.exps; + exps.Progress = function (ret) + { + ret.set_float(this.i / (this.duration + this.initiating + this.cooldown)); + }; + exps.ProgressTime = function (ret) + { + ret.set_float(this.i); + }; + exps.Duration = function (ret) + { + ret.set_float(this.duration); + }; + exps.Initiating = function (ret) + { + ret.set_float(this.initiating); + }; + exps.Cooldown = function (ret) + { + ret.set_float(this.cooldown); + }; + exps.Target = function (ret) + { + ret.set_string(this.target); + }; + exps.Value = function (ret) + { + ret.set_float(this.value); + }; + exps.isPaused = function (ret) + { + ret.set_int(this.isPaused ? 1: 0); + }; +}()); +; +; +cr.behaviors.scrollto = function(runtime) +{ + this.runtime = runtime; + this.shakeMag = 0; + this.shakeStart = 0; + this.shakeEnd = 0; + this.shakeMode = 0; +}; +(function () +{ + var behaviorProto = cr.behaviors.scrollto.prototype; + behaviorProto.Type = function(behavior, objtype) + { + this.behavior = behavior; + this.objtype = objtype; + this.runtime = behavior.runtime; + }; + var behtypeProto = behaviorProto.Type.prototype; + behtypeProto.onCreate = function() + { + }; + behaviorProto.Instance = function(type, inst) + { + this.type = type; + this.behavior = type.behavior; + this.inst = inst; // associated object instance to modify + this.runtime = type.runtime; + }; + var behinstProto = behaviorProto.Instance.prototype; + behinstProto.onCreate = function() + { + this.enabled = (this.properties[0] !== 0); + }; + behinstProto.saveToJSON = function () + { + return { + "smg": this.behavior.shakeMag, + "ss": this.behavior.shakeStart, + "se": this.behavior.shakeEnd, + "smd": this.behavior.shakeMode + }; + }; + behinstProto.loadFromJSON = function (o) + { + this.behavior.shakeMag = o["smg"]; + this.behavior.shakeStart = o["ss"]; + this.behavior.shakeEnd = o["se"]; + this.behavior.shakeMode = o["smd"]; + }; + behinstProto.tick = function () + { + }; + function getScrollToBehavior(inst) + { + var i, len, binst; + for (i = 0, len = inst.behavior_insts.length; i < len; ++i) + { + binst = inst.behavior_insts[i]; + if (binst.behavior instanceof cr.behaviors.scrollto) + return binst; + } + return null; + }; + behinstProto.tick2 = function () + { + if (!this.enabled) + return; + var all = this.behavior.my_instances.valuesRef(); + var sumx = 0, sumy = 0; + var i, len, binst, count = 0; + for (i = 0, len = all.length; i < len; i++) + { + binst = getScrollToBehavior(all[i]); + if (!binst || !binst.enabled) + continue; + sumx += all[i].x; + sumy += all[i].y; + ++count; + } + var layout = this.inst.layer.layout; + var now = this.runtime.kahanTime.sum; + var offx = 0, offy = 0; + if (now >= this.behavior.shakeStart && now < this.behavior.shakeEnd) + { + var mag = this.behavior.shakeMag * Math.min(this.runtime.timescale, 1); + if (this.behavior.shakeMode === 0) + mag *= 1 - (now - this.behavior.shakeStart) / (this.behavior.shakeEnd - this.behavior.shakeStart); + var a = Math.random() * Math.PI * 2; + var d = Math.random() * mag; + offx = Math.cos(a) * d; + offy = Math.sin(a) * d; + } + layout.scrollToX(sumx / count + offx); + layout.scrollToY(sumy / count + offy); + }; + function Acts() {}; + Acts.prototype.Shake = function (mag, dur, mode) + { + this.behavior.shakeMag = mag; + this.behavior.shakeStart = this.runtime.kahanTime.sum; + this.behavior.shakeEnd = this.behavior.shakeStart + dur; + this.behavior.shakeMode = mode; + }; + Acts.prototype.SetEnabled = function (e) + { + this.enabled = (e !== 0); + }; + behaviorProto.acts = new Acts(); +}()); +; +; +cr.behaviors.shadowcaster = function(runtime) +{ + this.runtime = runtime; + this.myTypes = []; +}; +(function () +{ + var behaviorProto = cr.behaviors.shadowcaster.prototype; + behaviorProto.Type = function(behavior, objtype) + { + this.behavior = behavior; + this.objtype = objtype; + this.runtime = behavior.runtime; + if (this.behavior.myTypes.indexOf(objtype) === -1) + this.behavior.myTypes.push(objtype); + }; + var behtypeProto = behaviorProto.Type.prototype; + behtypeProto.onCreate = function() + { + }; + behaviorProto.Instance = function(type, inst) + { + this.type = type; + this.behavior = type.behavior; + this.inst = inst; // associated object instance to modify + this.runtime = type.runtime; + }; + var behinstProto = behaviorProto.Instance.prototype; + behinstProto.onCreate = function() + { + this.inst.extra["shadowcasterEnabled"] = (this.properties[0] !== 0); + this.inst.extra["shadowcasterHeight"] = this.properties[1]; + this.inst.extra["shadowcasterTag"] = this.properties[2]; + }; + behinstProto.tick = function () + { + }; + function Cnds() {}; + Cnds.prototype.IsEnabled = function () + { + return this.inst.extra["shadowcasterEnabled"]; + }; + Cnds.prototype.CompareHeight = function (cmp, x) + { + var h = this.inst.extra["shadowcasterHeight"]; + return cr.do_cmp(h, cmp, x); + }; + behaviorProto.cnds = new Cnds(); + function Acts() {}; + Acts.prototype.SetEnabled = function (e) + { + this.inst.extra["shadowcasterEnabled"] = !!e; + }; + Acts.prototype.SetHeight = function (h) + { + if (this.inst.extra["shadowcasterHeight"] !== h) + { + this.inst.extra["shadowcasterHeight"] = h; + this.runtime.redraw = true; + } + }; + Acts.prototype.SetTag = function (tag) + { + if (this.inst.extra["shadowcasterTag"] !== tag) + { + this.inst.extra["shadowcasterTag"] = tag; + this.runtime.redraw = true; + } + }; + behaviorProto.acts = new Acts(); + function Exps() {}; + Exps.prototype.Height = function (ret) + { + ret.set_float(this.inst.extra["shadowcasterHeight"]); + }; + Exps.prototype.Tag = function (ret) + { + ret.set_string(this.inst.extra["shadowcasterTag"]); + }; + behaviorProto.exps = new Exps(); +}()); +; +; +cr.behaviors.solid = function(runtime) +{ + this.runtime = runtime; +}; +(function () +{ + var behaviorProto = cr.behaviors.solid.prototype; + behaviorProto.Type = function(behavior, objtype) + { + this.behavior = behavior; + this.objtype = objtype; + this.runtime = behavior.runtime; + }; + var behtypeProto = behaviorProto.Type.prototype; + behtypeProto.onCreate = function() + { + }; + behaviorProto.Instance = function(type, inst) + { + this.type = type; + this.behavior = type.behavior; + this.inst = inst; // associated object instance to modify + this.runtime = type.runtime; + }; + var behinstProto = behaviorProto.Instance.prototype; + behinstProto.onCreate = function() + { + this.inst.extra["solidEnabled"] = (this.properties[0] !== 0); + }; + behinstProto.tick = function () + { + }; + function Cnds() {}; + Cnds.prototype.IsEnabled = function () + { + return this.inst.extra["solidEnabled"]; + }; + behaviorProto.cnds = new Cnds(); + function Acts() {}; + Acts.prototype.SetEnabled = function (e) + { + this.inst.extra["solidEnabled"] = !!e; + }; + behaviorProto.acts = new Acts(); +}()); +cr.getObjectRefTable = function () { return [ + cr.plugins_.NinePatch, + cr.plugins_.AJAX, + cr.plugins_.Audio, + cr.plugins_.Arr, + cr.plugins_.Function, + cr.plugins_.Browser, + cr.plugins_.Button, + cr.plugins_.filechooser, + cr.plugins_.Keyboard, + cr.plugins_.gamepad, + cr.plugins_.NodeWebkit, + cr.plugins_.Mouse, + cr.plugins_.LocalStorage, + cr.plugins_.Touch, + cr.plugins_.TextBox, + cr.plugins_.Particles, + cr.plugins_.aekiro_model, + cr.plugins_.aekiro_proui2, + cr.plugins_.TiledBg, + cr.plugins_.Sprite, + cr.plugins_.Text, + cr.plugins_.c2canvas, + cr.plugins_.GameAnalytics, + cr.plugins_.Globals, + cr.plugins_.CSS_import, + cr.plugins_.hmmg_layoutTransition_v2, + cr.plugins_.jcw_trace, + cr.plugins_.JSON, + cr.plugins_.HTML_Div_Pode, + cr.plugins_.MagiCam, + cr.plugins_.rojoPaster, + cr.plugins_.sirg_notifications, + cr.plugins_.TR_ClockParser, + cr.plugins_.skymen_minifunctioncallback, + cr.plugins_.skymen_siteLock, + cr.plugins_.SkymenSFPlusPLus, + cr.plugins_.skymen_skinsCore, + cr.plugins_.TextModded, + cr.plugins_.SyncStorage, + cr.plugins_.TR_AdBlockDetector, + cr.plugins_.ValerypopoffJSPlugin, + cr.plugins_.skymenhowlerjs, + cr.behaviors.Platform, + cr.behaviors.Timer, + cr.behaviors.Rex_pushOutSolid, + cr.behaviors.LOS, + cr.behaviors.jumpthru, + cr.behaviors.solid, + cr.behaviors.Persist, + cr.behaviors.Rex_Zigzag, + cr.behaviors.SkymenPolarCoordinates, + cr.behaviors.shadowcaster, + cr.behaviors.Bullet, + cr.behaviors.Turret, + cr.behaviors.Fade, + cr.behaviors.Anchor, + cr.behaviors.aekiro_button, + cr.behaviors.aekiro_tag, + cr.behaviors.aekiro_gameobject2, + cr.behaviors.Sin, + cr.behaviors.aekiro_bind, + cr.behaviors.aekiro_gridView, + cr.behaviors.aekiro_modelB, + cr.behaviors.aekiro_scrollView, + cr.behaviors.aekiro_dialog, + cr.behaviors.aekiro_checkbox, + cr.behaviors.aekiro_sliderbar, + cr.behaviors.lunarray_Tween, + cr.behaviors.scrollto, + cr.behaviors.lunarray_LiteTween, + cr.behaviors.SkymenSkin, + cr.behaviors.SkymenPin, + cr.system_object.prototype.cnds.IsGroupActive, + cr.plugins_.Sprite.prototype.cnds.CompareInstanceVar, + cr.behaviors.solid.prototype.acts.SetEnabled, + cr.system_object.prototype.cnds.Else, + cr.plugins_.Sprite.prototype.cnds.IsOverlapping, + cr.plugins_.Sprite.prototype.cnds.IsBoolInstanceVarSet, + cr.plugins_.Sprite.prototype.acts.AddInstanceVar, + cr.system_object.prototype.exps.dt, + cr.plugins_.Function.prototype.acts.CallFunction, + cr.plugins_.Sprite.prototype.acts.Destroy, + cr.plugins_.Sprite.prototype.acts.SetInstanceVar, + cr.plugins_.Sprite.prototype.cnds.OnCollision, + cr.behaviors.Platform.prototype.acts.SetVectorY, + cr.behaviors.Platform.prototype.exps.Gravity, + cr.system_object.prototype.exps.sin, + cr.plugins_.Sprite.prototype.exps.Angle, + cr.behaviors.Platform.prototype.acts.SetMaxSpeed, + cr.system_object.prototype.exps.max, + cr.system_object.prototype.exps.cos, + cr.behaviors.Platform.prototype.acts.SetVectorX, + cr.behaviors.Platform.prototype.exps.VectorX, + cr.plugins_.skymenhowlerjs.prototype.acts.Play, + cr.behaviors.Platform.prototype.acts.SetDeceleration, + cr.behaviors.Bullet.prototype.acts.SetAngleOfMotion, + cr.behaviors.Bullet.prototype.acts.SetSpeed, + cr.behaviors.Bullet.prototype.exps.Gravity, + cr.system_object.prototype.cnds.OnLayoutStart, + cr.system_object.prototype.acts.Wait, + cr.system_object.prototype.cnds.CompareVar, + cr.system_object.prototype.acts.SetVar, + cr.system_object.prototype.cnds.TriggerOnce, + cr.plugins_.GameAnalytics.prototype.acts.addProgressionEvent, + cr.system_object.prototype.exps.layoutname, + cr.system_object.prototype.exps["int"], + cr.system_object.prototype.exps.tokenat, + cr.plugins_.Globals.prototype.cnds.IsBoolInstanceVarSet, + cr.plugins_.Globals.prototype.cnds.CompareInstanceVar, + cr.system_object.prototype.cnds.IsPreview, + cr.system_object.prototype.cnds.IsOnPlatform, + cr.plugins_.SyncStorage.prototype.acts.SetData, + cr.plugins_.SyncStorage.prototype.exps.Get, + cr.plugins_.SyncStorage.prototype.acts.SaveData, + cr.plugins_.Sprite.prototype.acts.SetBoolInstanceVar, + cr.plugins_.Sprite.prototype.acts.SetAnimFrame, + cr.plugins_.Sprite.prototype.cnds.IsVisible, + cr.system_object.prototype.cnds.ForEach, + cr.behaviors.SkymenPin.prototype.acts.Pin, + cr.behaviors.Rex_Zigzag.prototype.acts.Start, + cr.plugins_.Sprite.prototype.acts.SetPos, + cr.plugins_.Sprite.prototype.exps.X, + cr.plugins_.Sprite.prototype.exps.Y, + cr.plugins_.Sprite.prototype.acts.SetAngle, + cr.plugins_.Sprite.prototype.exps.UID, + cr.system_object.prototype.cnds.PickAll, + cr.plugins_.Sprite.prototype.cnds.PickByUID, + cr.system_object.prototype.cnds.Compare, + cr.behaviors.Rex_Zigzag.prototype.acts.SetAbsolute, + cr.behaviors.SkymenPolarCoordinates.prototype.acts.SetEnabled, + cr.plugins_.Sprite.prototype.cnds.PickInstVarHiLow, + cr.behaviors.SkymenPolarCoordinates.prototype.acts.SetOriginPos, + cr.system_object.prototype.exps.distance, + cr.system_object.prototype.exps.angle, + cr.behaviors.SkymenPolarCoordinates.prototype.acts.SetDeltaPos, + cr.behaviors.Rex_Zigzag.prototype.exps.OffX, + cr.behaviors.Rex_Zigzag.prototype.exps.OffY, + cr.behaviors.Rex_Zigzag.prototype.exps.OffAngle, + cr.behaviors.jumpthru.prototype.acts.SetEnabled, + cr.behaviors.Turret.prototype.acts.AddTarget, + cr.behaviors.Turret.prototype.cnds.OnShoot, + cr.plugins_.Sprite.prototype.acts.Spawn, + cr.plugins_.Sprite.prototype.exps.LayerName, + cr.behaviors.Bullet.prototype.exps.Speed, + cr.behaviors.LOS.prototype.cnds.HasLOSToObject, + cr.behaviors.Turret.prototype.acts.SetEnabled, + cr.system_object.prototype.cnds.EveryTick, + cr.plugins_.Sprite.prototype.acts.RotateTowardPosition, + cr.plugins_.Sprite.prototype.cnds.OnDestroyed, + cr.plugins_.SyncStorage.prototype.cnds.HasData, + cr.plugins_.Sprite.prototype.acts.SetOpacity, + cr.behaviors.Bullet.prototype.cnds.CompareTravelled, + cr.behaviors.Bullet.prototype.acts.SetEnabled, + cr.behaviors.Fade.prototype.acts.StartFade, + cr.system_object.prototype.cnds.PickByComparison, + cr.plugins_.SkymenSFPlusPLus.prototype.acts.SetText, + cr.plugins_.Sprite.prototype.acts.SetMirrored, + cr.plugins_.Sprite.prototype.cnds.IsOverlappingOffset, + cr.behaviors.Platform.prototype.exps.VectorY, + cr.plugins_.Sprite.prototype.cnds.PickDistance, + cr.plugins_.Function.prototype.exps.Call, + cr.plugins_.Sprite.prototype.acts.SetCollisions, + cr.behaviors.Platform.prototype.exps.Speed, + cr.behaviors.Platform.prototype.exps.MovingAngle, + cr.plugins_.Sprite.prototype.exps.ImagePointX, + cr.plugins_.Sprite.prototype.exps.ImagePointY, + cr.plugins_.Sprite.prototype.acts.SetY, + cr.behaviors.Bullet.prototype.exps.AngleOfMotion, + cr.plugins_.Sprite.prototype.cnds.IsCollisionEnabled, + cr.plugins_.Function.prototype.cnds.OnFunction, + cr.plugins_.Function.prototype.exps.Param, + cr.plugins_.Function.prototype.acts.SetReturnValue, + cr.behaviors.Timer.prototype.cnds.OnTimer, + cr.behaviors.Platform.prototype.exps.GravityAngle, + cr.behaviors.Platform.prototype.acts.SetGravityAngle, + cr.plugins_.TiledBg.prototype.exps.Angle, + cr.system_object.prototype.exps.anglediff, + cr.behaviors.Timer.prototype.acts.StartTimer, + cr.plugins_.Sprite.prototype.acts.SetSize, + cr.plugins_.Sprite.prototype.acts.SetTowardPosition, + cr.system_object.prototype.cnds.ForEachOrdered, + cr.plugins_.Sprite.prototype.acts.ZMoveToObject, + cr.behaviors.SkymenSkin.prototype.acts.UseDefault, + cr.behaviors.SkymenSkin.prototype.acts.SetSkin, + cr.behaviors.SkymenSkin.prototype.acts.HideDefault, + cr.plugins_.Sprite.prototype.exps.Width, + cr.plugins_.Sprite.prototype.exps.ImageWidth, + cr.plugins_.Sprite.prototype.exps.Height, + cr.plugins_.Sprite.prototype.exps.ImageHeight, + cr.system_object.prototype.exps.find, + cr.plugins_.MagiCam.prototype.acts.CreateLocalCamera, + cr.plugins_.MagiCam.prototype.acts.FollowObject, + cr.plugins_.MagiCam.prototype.acts.EnableFollowing, + cr.plugins_.MagiCam.prototype.acts.SetFollowLag, + cr.system_object.prototype.acts.Scroll, + cr.system_object.prototype.exps.windowwidth, + cr.system_object.prototype.exps.windowheight, + cr.plugins_.Globals.prototype.acts.SetBoolInstanceVar, + cr.plugins_.Browser.prototype.acts.ExecJs, + cr.plugins_.Sprite.prototype.cnds.IsOutsideLayout, + cr.behaviors.Bullet.prototype.acts.SetAcceleration, + cr.behaviors.Fade.prototype.exps.FadeOutTime, + cr.behaviors.Platform.prototype.acts.SetEnabled, + cr.system_object.prototype.acts.RestartLayout, + cr.behaviors.Platform.prototype.cnds.IsFalling, + cr.behaviors.Platform.prototype.cnds.IsByWall, + cr.behaviors.Platform.prototype.cnds.OnJump, + cr.behaviors.Platform.prototype.exps.MaxSpeed, + cr.behaviors.Platform.prototype.exps.JumpStrength, + cr.behaviors.Platform.prototype.cnds.IsOnFloor, + cr.behaviors.Platform.prototype.acts.SetIgnoreInput, + cr.behaviors.Platform.prototype.cnds.IsMoving, + cr.system_object.prototype.exps.time, + cr.system_object.prototype.acts.AddVar, + cr.behaviors.Platform.prototype.cnds.IsJumping, + cr.behaviors.solid.prototype.cnds.IsEnabled, + cr.behaviors.Rex_pushOutSolid.prototype.acts.SetEnabled, + cr.behaviors.Rex_pushOutSolid.prototype.acts.PushOutNearest, + cr.plugins_.jcw_trace.prototype.acts.TraceLine, + cr.plugins_.jcw_trace.prototype.cnds.Hit, + cr.plugins_.jcw_trace.prototype.exps.NormalAngle, + cr.system_object.prototype.cnds.CompareBetween, + cr.plugins_.Text.prototype.acts.SetText, + cr.behaviors.Platform.prototype.cnds.CompareSpeed, + cr.system_object.prototype.exps.abs, + cr.system_object.prototype.exps.anglelerp, + cr.system_object.prototype.exps.timescale, + cr.plugins_.Keyboard.prototype.cnds.OnKeyCode, + cr.plugins_.Touch.prototype.cnds.OnTouchObject, + cr.plugins_.gamepad.prototype.cnds.OnButtonDown, + cr.system_object.prototype.cnds.IsMobile, + cr.plugins_.Browser.prototype.acts.Vibrate, + cr.plugins_.Touch.prototype.cnds.IsTouchingObject, + cr.plugins_.gamepad.prototype.cnds.CompareAxis, + cr.plugins_.Keyboard.prototype.cnds.OnKeyCodeReleased, + cr.plugins_.gamepad.prototype.cnds.OnButtonUp, + cr.plugins_.Arr.prototype.cnds.CompareSize, + cr.system_object.prototype.cnds.Repeat, + cr.plugins_.Arr.prototype.acts.Push, + cr.plugins_.Arr.prototype.acts.SetSize, + cr.behaviors.Platform.prototype.acts.SimulateControl, + cr.system_object.prototype.cnds.Every, + cr.plugins_.Arr.prototype.exps.At, + cr.plugins_.Arr.prototype.acts.Pop, + cr.behaviors.Timer.prototype.acts.StopTimer, + cr.plugins_.Sprite.prototype.acts.SetAnim, + cr.plugins_.Sprite.prototype.cnds.IsAnimPlaying, + cr.behaviors.Platform.prototype.acts.SetMaxFallSpeed, + cr.plugins_.MagiCam.prototype.acts.ShakeCamera, + cr.plugins_.Sprite.prototype.cnds.IsBetweenAngles, + cr.behaviors.Platform.prototype.cnds.OnLand, + cr.plugins_.Arr.prototype.exps.Width, + cr.system_object.prototype.cnds.While, + cr.system_object.prototype.acts.SubVar, + cr.plugins_.Sprite.prototype.cnds.CompareX, + cr.plugins_.Sprite.prototype.cnds.CompareY, + cr.plugins_.Sprite.prototype.cnds.OnCreated, + cr.plugins_.Arr.prototype.acts.JSONLoad, + cr.plugins_.Arr.prototype.cnds.CompareXY, + cr.plugins_.Sprite.prototype.acts.SetPosToObject, + cr.system_object.prototype.exps.lerp, + cr.plugins_.Sprite.prototype.acts.SetHeight, + cr.plugins_.SkymenSFPlusPLus.prototype.acts.MoveToBottom, + cr.plugins_.SkymenSFPlusPLus.prototype.acts.SetOpacity, + cr.behaviors.Platform.prototype.acts.SetDoubleJumpEnabled, + cr.plugins_.SkymenSFPlusPLus.prototype.exps.Count, + cr.system_object.prototype.acts.CreateObject, + cr.plugins_.SkymenSFPlusPLus.prototype.exps.LayerName, + cr.plugins_.SkymenSFPlusPLus.prototype.exps.X, + cr.plugins_.SkymenSFPlusPLus.prototype.exps.BBoxBottom, + cr.plugins_.SkymenSFPlusPLus.prototype.acts.SetSize, + cr.plugins_.SkymenSFPlusPLus.prototype.exps.Width, + cr.plugins_.SkymenSFPlusPLus.prototype.acts.SetPos, + cr.plugins_.SkymenSFPlusPLus.prototype.acts.MoveToLayer, + cr.system_object.prototype.acts.SetGroupActive, + cr.plugins_.TiledBg.prototype.acts.SetSize, + cr.system_object.prototype.exps.layoutwidth, + cr.plugins_.TiledBg.prototype.acts.MoveToBottom, + cr.plugins_.TiledBg.prototype.acts.SetOpacity, + cr.system_object.prototype.exps.layoutheight, + cr.plugins_.TiledBg.prototype.acts.SetAngle, + cr.plugins_.Browser.prototype.exps.Domain, + cr.plugins_.ValerypopoffJSPlugin.prototype.exps.JSCodeValue, + cr.behaviors.aekiro_dialog.prototype.acts.Open, + cr.plugins_.Keyboard.prototype.cnds.OnKey, + cr.plugins_.Browser.prototype.acts.ConsoleLog, + cr.plugins_.SkymenSFPlusPLus.prototype.cnds.OnCreated, + cr.plugins_.Browser.prototype.cnds.OnPageHidden, + cr.plugins_.ValerypopoffJSPlugin.prototype.acts.ExecuteJSWithParams, + cr.plugins_.Browser.prototype.cnds.OnPageVisible, + cr.plugins_.skymenhowlerjs.prototype.cnds.IsPlaying, + cr.plugins_.skymenhowlerjs.prototype.acts.PlayByName, + cr.plugins_.skymenhowlerjs.prototype.acts.Mute, + cr.plugins_.SyncStorage.prototype.cnds.IsLoaded, + cr.plugins_.skymenhowlerjs.prototype.acts.LinearVolume, + cr.plugins_.SyncStorage.prototype.cnds.CompareData, + cr.plugins_.skymenhowlerjs.prototype.acts.Unmute, + cr.system_object.prototype.exps.choose, + cr.system_object.prototype.exps.str, + cr.system_object.prototype.exps.floor, + cr.system_object.prototype.exps.random, + cr.plugins_.skymenhowlerjs.prototype.acts.Stop, + cr.plugins_.Sprite.prototype.cnds.AngleWithin, + cr.plugins_.JSON.prototype.cnds.IsEmpty, + cr.plugins_.AJAX.prototype.acts.RequestFile, + cr.plugins_.AJAX.prototype.cnds.OnComplete, + cr.plugins_.JSON.prototype.acts.LoadJSON, + cr.plugins_.AJAX.prototype.exps.LastData, + cr.plugins_.aekiro_model.prototype.acts.SetJSONByKeyString, + cr.plugins_.skymen_minifunctioncallback.prototype.acts.Callback, + cr.plugins_.JSON.prototype.exps.Value, + cr.plugins_.ValerypopoffJSPlugin.prototype.acts.Call, + cr.plugins_.ValerypopoffJSPlugin.prototype.exps.StoredReturnValue, + cr.plugins_.SyncStorage.prototype.acts.LoadData, + cr.plugins_.skymenhowlerjs.prototype.acts.Load, + cr.system_object.prototype.acts.WaitForSignal, + cr.plugins_.Globals.prototype.acts.SetInstanceVar, + cr.plugins_.Globals.prototype.exps.GetVariablesAsJSON, + cr.plugins_.ValerypopoffJSPlugin.prototype.acts.SetValue, + cr.plugins_.AJAX.prototype.cnds.OnError, + cr.plugins_.SyncStorage.prototype.cnds.OnDataMissing, + cr.plugins_.SyncStorage.prototype.cnds.OnLoaded, + cr.plugins_.Globals.prototype.acts.LoadVariables, + cr.plugins_.skymenhowlerjs.prototype.acts.Volume, + cr.plugins_.skymenhowlerjs.prototype.exps.LinearVolume, + cr.plugins_.Browser.prototype.acts.RequestFullScreen, + cr.plugins_.SyncStorage.prototype.cnds.OnLoadError, + cr.plugins_.SyncStorage.prototype.exps.ErrorMsg, + cr.system_object.prototype.cnds.OnLayoutEnd, + cr.plugins_.SyncStorage.prototype.acts.ClearData, + cr.system_object.prototype.cnds.For, + cr.plugins_.SyncStorage.prototype.acts.RemoveData, + cr.system_object.prototype.exps.loopindex, + cr.plugins_.SyncStorage.prototype.acts.AddValue, + cr.plugins_.Browser.prototype.cnds.OnOfflineReady, + cr.plugins_.Browser.prototype.cnds.OnUpdateFound, + cr.plugins_.Browser.prototype.cnds.OnUpdateReady, + cr.plugins_.sirg_notifications.prototype.cnds.OnNotificationClicked, + cr.plugins_.Browser.prototype.acts.Reload, + cr.plugins_.Browser.prototype.acts.GoToURLWindow, + cr.plugins_.hmmg_layoutTransition_v2.prototype.cnds.didTransitionStart, + cr.plugins_.sirg_notifications.prototype.acts.AddSimpleNotification, + cr.plugins_.sirg_notifications.prototype.acts.AddNotification, + cr.plugins_.sirg_notifications.prototype.acts.AddNotificationClickable, + cr.plugins_.sirg_notifications.prototype.acts.DeleteAllNotifications, + cr.plugins_.skymen_skinsCore.prototype.acts.AddSkin, + cr.plugins_.skymen_skinsCore.prototype.acts.Init, + cr.system_object.prototype.exps.clamp, + cr.plugins_.Keyboard.prototype.cnds.OnAnyKey, + cr.plugins_.Keyboard.prototype.exps.LastKeyCode, + cr.plugins_.Sprite.prototype.exps.Count, + cr.plugins_.NodeWebkit.prototype.acts.SetWindowTitle, + cr.plugins_.Arr.prototype.acts.SetXY, + cr.plugins_.Sprite.prototype.exps.AnimationFrame, + cr.plugins_.NodeWebkit.prototype.acts.SetClipboardText, + cr.plugins_.Arr.prototype.exps.AsJSON, + cr.plugins_.Sprite.prototype.acts.SetVisible, + cr.plugins_.skymen_skinsCore.prototype.exps.RandomSkin, + cr.plugins_.Globals.prototype.acts.ToggleBoolInstanceVar, + cr.plugins_.SyncStorage.prototype.exps.AsString, + cr.plugins_.TextModded.prototype.cnds.OnCreated, + cr.plugins_.TextModded.prototype.acts.SetInstanceVar, + cr.plugins_.TextModded.prototype.exps.FaceSize, + cr.plugins_.TextModded.prototype.exps.Width, + cr.plugins_.TextModded.prototype.exps.Height, + cr.plugins_.SkymenSFPlusPLus.prototype.acts.SetInstanceVar, + cr.plugins_.SkymenSFPlusPLus.prototype.exps.CharacterScale, + cr.plugins_.TextModded.prototype.acts.SetWebFont, + cr.plugins_.SkymenSFPlusPLus.prototype.cnds.IsBoolInstanceVarSet, + cr.plugins_.SkymenSFPlusPLus.prototype.cnds.IsVisible, + cr.plugins_.SkymenSFPlusPLus.prototype.acts.SetVisible, + cr.plugins_.ValerypopoffJSPlugin.prototype.cnds.CompareStoredReturnValue, + cr.plugins_.SkymenSFPlusPLus.prototype.exps.Text, + cr.plugins_.SkymenSFPlusPLus.prototype.exps.LayerNumber, + cr.behaviors.aekiro_gameobject2.prototype.exps.global, + cr.plugins_.TextModded.prototype.acts.SetSize, + cr.plugins_.SkymenSFPlusPLus.prototype.exps.Height, + cr.plugins_.TextModded.prototype.acts.SetText, + cr.plugins_.TextModded.prototype.acts.SetFontSize, + cr.plugins_.TextModded.prototype.acts.SetHorAl, + cr.plugins_.TextModded.prototype.acts.SetVerAl, + cr.plugins_.TextModded.prototype.acts.SetHeight, + cr.plugins_.TextModded.prototype.acts.SetY, + cr.plugins_.TextModded.prototype.exps.Y, + cr.plugins_.TextModded.prototype.acts.SetWidth, + cr.plugins_.TextModded.prototype.acts.SetX, + cr.plugins_.TextModded.prototype.exps.X, + cr.plugins_.TextModded.prototype.acts.SetAngle, + cr.plugins_.SkymenSFPlusPLus.prototype.exps.Angle, + cr.plugins_.TextModded.prototype.acts.SetOpacity, + cr.plugins_.SkymenSFPlusPLus.prototype.exps.Opacity, + cr.plugins_.TextModded.prototype.acts.ZMoveToObject, + cr.plugins_.SkymenSFPlusPLus.prototype.cnds.CompareInstanceVar, + cr.plugins_.TextModded.prototype.acts.SetFontColor, + cr.system_object.prototype.exps.rgb, + cr.plugins_.TextModded.prototype.acts.SetBoolInstanceVar, + cr.plugins_.SkymenSFPlusPLus.prototype.exps.UID, + cr.plugins_.SkymenSFPlusPLus.prototype.acts.Destroy, + cr.system_object.prototype.acts.Signal, + cr.system_object.prototype.exps.lowercase, + cr.plugins_.Sprite.prototype.exps.AnimationName, + cr.plugins_.Sprite.prototype.exps.LayerNumber, + cr.plugins_.TextModded.prototype.acts.SetPos, + cr.plugins_.Sprite.prototype.exps.Opacity, + cr.plugins_.TextModded.prototype.exps.UID, + cr.behaviors.aekiro_gameobject2.prototype.acts.AddChildrenFromType, + cr.plugins_.TextModded.prototype.cnds.IsBoolInstanceVarSet, + cr.plugins_.SkymenSFPlusPLus.prototype.acts.SetScale, + cr.plugins_.SkymenSFPlusPLus.prototype.cnds.PickByUID, + cr.plugins_.TextModded.prototype.cnds.PickByUID, + cr.plugins_.aekiro_model.prototype.acts.StringToHashTable, + cr.plugins_.TR_ClockParser.prototype.exps.MMSS, + cr.system_object.prototype.exps.round, + cr.system_object.prototype.exps.zeropad, + cr.behaviors.aekiro_button.prototype.acts.setEnabled, + cr.plugins_.aekiro_model.prototype.cnds.IsEmpty, + cr.plugins_.Sprite.prototype.acts.SetX, + cr.plugins_.Sprite.prototype.acts.SetWidth, + cr.behaviors.aekiro_gameobject2.prototype.exps.parent, + cr.plugins_.Sprite.prototype.exps.BBoxRight, + cr.system_object.prototype.exps.replace, + cr.plugins_.AJAX.prototype.acts.Request, + cr.plugins_.Text.prototype.cnds.OnCreated, + cr.plugins_.Text.prototype.acts.SetWebFont, + cr.behaviors.aekiro_dialog.prototype.cnds.onDialogOpened, + cr.system_object.prototype.acts.SetObjectTimescale, + cr.behaviors.aekiro_dialog.prototype.acts.Close, + cr.behaviors.aekiro_button.prototype.cnds.OnClicked, + cr.behaviors.aekiro_bind.prototype.exps.index, + cr.plugins_.TR_AdBlockDetector.prototype.cnds.IsBlocking, + cr.plugins_.GameAnalytics.prototype.acts.addDesignEvent, + cr.plugins_.Function.prototype.exps.ParamCount, + cr.system_object.prototype.acts.GoToLayoutByName, + cr.system_object.prototype.acts.SetTimescale, + cr.plugins_.hmmg_layoutTransition_v2.prototype.acts.prepareTransition, + cr.plugins_.hmmg_layoutTransition_v2.prototype.cnds.isTransitionReady, + cr.plugins_.hmmg_layoutTransition_v2.prototype.acts.startTransition, + cr.system_object.prototype.acts.SetLayerVisible, + cr.behaviors.lunarray_LiteTween.prototype.cnds.OnEnd, + cr.behaviors.aekiro_button.prototype.cnds.IsEnabled, + cr.plugins_.Sprite.prototype.cnds.CompareFrame, + cr.plugins_.Sprite.prototype.cnds.CompareWidth, + cr.plugins_.JSON.prototype.exps.Size, + cr.behaviors.lunarray_LiteTween.prototype.acts.SetParameter, + cr.behaviors.lunarray_LiteTween.prototype.acts.Start, + cr.plugins_.SkymenSFPlusPLus.prototype.acts.SetPosToObject, + cr.plugins_.Sprite.prototype.exps.BBoxLeft, + cr.plugins_.Sprite.prototype.exps.BBoxTop, + cr.system_object.prototype.exps.viewportright, + cr.system_object.prototype.exps.viewportleft, + cr.system_object.prototype.exps.viewportbottom, + cr.system_object.prototype.exps.viewporttop, + cr.system_object.prototype.acts.SetLayerOpacity, + cr.system_object.prototype.exps.unlerp, + cr.plugins_.Sprite.prototype.exps.BBoxBottom, + cr.plugins_.Particles.prototype.acts.SetRate, + cr.system_object.prototype.exps.canvastolayerx, + cr.plugins_.Touch.prototype.exps.AbsoluteX, + cr.plugins_.Touch.prototype.exps.AbsoluteY, + cr.system_object.prototype.exps.canvastolayery, + cr.plugins_.Mouse.prototype.cnds.OnObjectClicked, + cr.plugins_.Mouse.prototype.exps.AbsoluteX, + cr.plugins_.Mouse.prototype.exps.AbsoluteY, + cr.plugins_.Mouse.prototype.cnds.IsOverObject, + cr.behaviors.Sin.prototype.acts.SetMagnitude, + cr.behaviors.Sin.prototype.exps.Magnitude, + cr.behaviors.Sin.prototype.acts.SetPeriod, + cr.behaviors.Sin.prototype.exps.Period, + cr.behaviors.aekiro_dialog.prototype.cnds.onDialogClosed, + cr.plugins_.TextModded.prototype.cnds.CompareInstanceVar, + cr.plugins_.Keyboard.prototype.exps.StringFromKeyCode, + cr.behaviors.aekiro_sliderbar.prototype.acts.setValue, + cr.behaviors.aekiro_checkbox.prototype.acts.setValue, + cr.plugins_.Browser.prototype.cnds.IsFullscreen, + cr.behaviors.aekiro_checkbox.prototype.cnds.OnClicked, + cr.behaviors.aekiro_checkbox.prototype.cnds.IsChecked, + cr.plugins_.Browser.prototype.acts.CancelFullScreen, + cr.behaviors.aekiro_sliderbar.prototype.cnds.IsSliding, + cr.behaviors.aekiro_sliderbar.prototype.exps.value, + cr.plugins_.rojoPaster.prototype.cnds.OnCreated, + cr.plugins_.rojoPaster.prototype.acts.LoadImage, + cr.plugins_.SkymenSFPlusPLus.prototype.exps.Y, + cr.plugins_.TextModded.prototype.acts.Destroy, + cr.plugins_.SkymenSFPlusPLus.prototype.acts.SetBoolInstanceVar, + cr.plugins_.SyncStorage.prototype.acts.SubtractValue, + cr.plugins_.Touch.prototype.cnds.OnDoubleTapGestureObject, + cr.plugins_.Arr.prototype.acts.SetXYZ, + cr.plugins_.Keyboard.prototype.cnds.IsKeyDown, + cr.system_object.prototype.acts.GoToLayout, + cr.system_object.prototype.acts.ResetPersisted, + cr.behaviors.aekiro_dialog.prototype.cnds.isOpened, + cr.plugins_.Function.prototype.cnds.CompareParam, + cr.plugins_.HTML_Div_Pode.prototype.acts.MoveToLayer, + cr.plugins_.Browser.prototype.cnds.IsPortraitLandscape, + cr.plugins_.HTML_Div_Pode.prototype.acts.SetPos, + cr.system_object.prototype.exps.originalwindowwidth, + cr.plugins_.HTML_Div_Pode.prototype.acts.SetWidth, + cr.plugins_.HTML_Div_Pode.prototype.acts.SetVisible, + cr.plugins_.filechooser.prototype.acts.ReleaseFile, + cr.plugins_.filechooser.prototype.exps.FileURLAt, + cr.plugins_.Browser.prototype.acts.InvokeDownloadString, + cr.plugins_.filechooser.prototype.cnds.OnChanged, + cr.plugins_.TextBox.prototype.cnds.OnClicked, + cr.plugins_.TextBox.prototype.acts.SetBlur, + cr.plugins_.Button.prototype.cnds.OnClicked, + cr.plugins_.Button.prototype.cnds.CompareInstanceVar, + cr.plugins_.TextBox.prototype.cnds.CompareInstanceVar, + cr.plugins_.TextBox.prototype.exps.Text, + cr.plugins_.Button.prototype.cnds.IsChecked, + cr.plugins_.SyncStorage.prototype.acts.AppendValue, + cr.behaviors.Fade.prototype.acts.RestartFade, + cr.plugins_.hmmg_layoutTransition_v2.prototype.cnds.didTransitionFinish, + cr.behaviors.lunarray_Tween.prototype.cnds.OnEnd, + cr.behaviors.lunarray_Tween.prototype.acts.SetParameter, + cr.behaviors.lunarray_Tween.prototype.acts.Start, + cr.behaviors.lunarray_Tween.prototype.exps.isPaused, + cr.behaviors.lunarray_Tween.prototype.exps.Target, + cr.behaviors.lunarray_Tween.prototype.exps.Value, + cr.plugins_.SkymenSFPlusPLus.prototype.acts.SetCharPos, + cr.plugins_.SkymenSFPlusPLus.prototype.acts.Redraw, + cr.system_object.prototype.exps.loadingprogress, + cr.plugins_.TiledBg.prototype.exps.Opacity, + cr.plugins_.HTML_Div_Pode.prototype.acts.Destroy, + cr.plugins_.sirg_notifications.prototype.acts.SetPosition, + cr.plugins_.GameAnalytics.prototype.acts.initialize, + cr.plugins_.skymen_siteLock.prototype.cnds.SiteLock, + cr.plugins_.Browser.prototype.acts.GoToURL +];}; diff --git a/gversion/gs/ovo/check.png b/gversion/gs/ovo/check.png new file mode 100644 index 0000000..a47125c Binary files /dev/null and b/gversion/gs/ovo/check.png differ diff --git a/gversion/gs/ovo/cmg.png b/gversion/gs/ovo/cmg.png new file mode 100644 index 0000000..098fa83 Binary files /dev/null and b/gversion/gs/ovo/cmg.png differ diff --git a/gversion/gs/ovo/coin.png b/gversion/gs/ovo/coin.png new file mode 100644 index 0000000..4577eac Binary files /dev/null and b/gversion/gs/ovo/coin.png differ diff --git a/gversion/gs/ovo/coin10.png b/gversion/gs/ovo/coin10.png new file mode 100644 index 0000000..9edbe25 Binary files /dev/null and b/gversion/gs/ovo/coin10.png differ diff --git a/gversion/gs/ovo/coin30.png b/gversion/gs/ovo/coin30.png new file mode 100644 index 0000000..8c52ccf Binary files /dev/null and b/gversion/gs/ovo/coin30.png differ diff --git a/gversion/gs/ovo/coin40.png b/gversion/gs/ovo/coin40.png new file mode 100644 index 0000000..ad1f0c8 Binary files /dev/null and b/gversion/gs/ovo/coin40.png differ diff --git a/gversion/gs/ovo/coin5.png b/gversion/gs/ovo/coin5.png new file mode 100644 index 0000000..166f931 Binary files /dev/null and b/gversion/gs/ovo/coin5.png differ diff --git a/gversion/gs/ovo/coinsecret.png b/gversion/gs/ovo/coinsecret.png new file mode 100644 index 0000000..82fde67 Binary files /dev/null and b/gversion/gs/ovo/coinsecret.png differ diff --git a/gversion/gs/ovo/community.png b/gversion/gs/ovo/community.png new file mode 100644 index 0000000..a39e53b Binary files /dev/null and b/gversion/gs/ovo/community.png differ diff --git a/gversion/gs/ovo/data.js b/gversion/gs/ovo/data.js new file mode 100644 index 0000000..460cabd --- /dev/null +++ b/gversion/gs/ovo/data.js @@ -0,0 +1 @@ +{"project": [null,"LoaderLayout",[[0,false,true,true,true,false,true,true,true,true],[1,true,false,false,false,false,false,false,false,false],[2,true,false,false,false,false,false,false,false,false],[3,false,false,false,false,false,false,false,false,false],[4,true,false,false,false,false,false,false,false,false],[5,true,false,false,false,false,false,false,false,false],[6,false,true,true,true,false,false,false,false,false],[7,false,true,true,true,false,false,false,false,false],[8,true,false,false,false,false,false,false,false,false],[9,true,false,false,false,false,false,false,false,false],[10,true,false,false,false,false,false,false,false,false],[11,true,false,false,false,false,false,false,false,false],[12,true,false,false,false,false,false,false,false,false],[13,true,false,false,false,false,false,false,false,false],[14,false,true,true,true,false,false,false,false,false],[15,false,true,true,false,true,true,true,true,true],[16,false,false,false,false,false,false,false,false,false],[17,true,false,false,false,false,false,false,false,false],[18,false,true,true,true,true,true,true,true,true],[19,false,true,true,true,true,true,true,true,false],[20,false,true,true,true,true,true,true,true,false],[21,false,true,true,true,true,true,true,false,false],[22,true,false,false,false,false,false,false,false,false],[23,false,false,false,false,false,false,false,false,false],[24,false,false,false,false,false,false,false,false,false],[25,true,false,false,false,false,false,false,false,false],[26,false,false,false,false,false,false,false,false,false],[27,false,false,false,false,false,false,false,false,false],[28,false,true,true,true,true,false,true,false,false],[29,true,false,false,false,false,false,false,false,false],[30,false,true,true,true,true,true,true,true,true],[31,true,false,false,false,false,false,false,false,false],[32,true,false,false,false,false,false,false,false,false],[33,true,false,false,false,false,false,false,false,false],[34,true,false,false,false,false,false,false,false,false],[35,false,true,true,true,true,true,true,true,true],[36,false,false,false,false,false,false,false,false,false],[37,false,true,true,true,true,true,true,true,false],[38,true,false,false,false,false,false,false,false,false],[39,true,false,false,false,false,false,false,false,false],[40,true,false,false,false,false,false,false,false,false],[41,true,false,false,false,false,false,false,false,false]],[["t0",4,false,[],0,0,null,null,[],false,false,273531128924705,[],null,[]],["t1",23,false,[133877115910598,870428769630176,680844827905013,119861293303980,764988120178749,275777020702190,735275992362800,243159837440127,187274219200853,439020954481414,429060834882406,763267191436511,477511832838842,672163712802491,505132606345697,103042904045584,474761451305821,452916720123893,258727859434245,499687181670782,576616233442667,451174993162494,720578798982314,905944630760862],0,0,null,null,[],true,false,515033443117952,[],null],["t2",8,false,[],0,0,null,null,[],false,false,925902959099919,[],null,[]],["t3",13,false,[],0,0,null,null,[],false,false,357769062887890,[],null,[1]],["t4",5,false,[],0,0,null,null,[],false,false,414097256597231,[],null,[]],["t5",17,false,[],0,0,null,null,[],false,false,220986962710981,[],null,["","","sounds",0]],["t6",25,false,[],0,0,null,null,[],false,false,139489197023203,[],null,[0.7,16777215]],["t7",16,false,[],0,0,null,null,[],true,false,596640076803676,[],null],["t8",1,false,[],0,0,null,null,[],false,false,614316230504694,[],null,[]],["t9",2,false,[],0,0,null,null,[],false,false,398937627619450,[],null,[0,3,0,1,1,600,600,10000,1]],["t10",11,false,[],0,0,null,null,[],false,false,804715427322248,[],null,[]],["t11",31,false,[],0,0,null,null,[],false,false,599241411212868,[],null,[3,2,2,4000,0,1,1]],["t12",38,false,[],0,0,null,null,[],false,false,612921591774343,[],null,["","DedraOvO","",0,5,8]],["t13",12,false,[],0,0,null,null,[],false,false,342789472927660,[],null,[]],["t14",27,false,[],0,0,null,null,[],true,false,633629814046735,[],null],["t15",33,false,[],0,0,null,null,[],false,false,561258994883058,[],null,[]],["t16",23,false,[654480239520701,460684017557954,948787547911857,399335419630241,491126987205847,751935295868204],0,0,null,null,[],true,false,357146569931084,[],null],["t17",36,false,[],0,0,null,null,[],true,false,765401267426925,[],null],["t18",3,false,[],0,0,null,null,[],true,false,229044035855895,[],null],["t19",24,false,[],0,0,null,null,[],true,false,654869711968354,[],null],["t20",26,false,[],0,0,null,null,[],true,false,658037363086442,[],null],["t21",26,false,[],0,0,null,null,[],true,false,380420909735584,[],null],["t22",3,false,[],0,0,null,null,[],true,false,326089728410809,[],null],["t23",10,false,[],0,0,null,null,[],false,false,844752959443825,[],null,[]],["t24",27,false,[],0,0,null,null,[],true,false,821755585081430,[],null],["t25",29,false,[],0,0,null,null,[],false,false,764816129209275,[],null,[]],["t26",34,false,[],0,0,null,null,[],false,false,888954727894438,[],null,["f8e2608e89aac06b6cbb4521f5e1c955 fbc3ba78d351a32ddca2dae6f09d2b7c 00e1f6e8c4889f3789ec7f86922b233b 775b7c9d6ba3ff45cfc8d71c7b6c2855 205af8475efda4dd3b191b4c9fc4dfbf d8432200fe4cfc0397888f15840a50e3 697297b0c269a4d7b459588fd68cb428 d0cfa58d42faa472b19741a8893be5bb 1e03685c305699c1c46a4b2607f34187 537c75e5fe9c82bc3b35c9ac80d9db82 ba7fcd511d452e3c675cb17df5b8c88b 0833f8443e4f00c7ab33bac251568009 dc6de264d6084f9eb61f608fcefcdf70 3f56f8854b63c15c507e637af1131b50 8cae4451e3e5536df44f76b86e2cdb13 2d7d5773d83790ff6c86afd9bf893fc7 609f1096d43a9c52f16d34e33c0c3ad7",0,"meraihi",0]],["t27",3,false,[],0,0,null,null,[],true,false,360018221898094,[],null],["t28",27,false,[],0,0,null,null,[],true,false,289794641812541,[],null],["t29",39,false,[],0,0,null,null,[],false,false,953863787324806,[],null,[]],["t30",23,false,[186081230743002,182193094458423,283013160608045,668753281762467],0,0,null,null,[],true,false,654882806789288,[],null],["t31",16,false,[],0,0,null,null,[],true,false,506518707241328,[],null],["t32",19,false,[262704971509323,199058042510295,193849943661847,993466495623759,162248679823403],0,0,null,[["Default",5,false,1,0,false,124653844530838,[["images/body-sheet0.png",98,0,0,8,16,1,0.5,0.5,[["Head",0.5,0],["RightA",1,0.25],["LeftA",0,0.25],["LeftL",0,1],["RightL",0.5,1]],[],4]]]],[],false,false,370474469864310,[],null],["t33",19,false,[262704971509323,199058042510295,193849943661847,993466495623759,162248679823403],0,0,null,[["Default",5,false,1,0,false,606236016027047,[["images/head-sheet0.png",209,0,0,32,32,1,0.5,1,[],[-0.25,-0.75,0.25,-0.75,0.25,-0.25,-0.25,-0.25],3]]]],[],false,false,657289988106883,[],null],["t34",19,false,[262704971509323,199058042510295,193849943661847,993466495623759,162248679823403],0,0,null,[["Default",5,false,1,0,false,392742530391259,[["images/leftarm-sheet0.png",98,0,0,4,8,1,1,0,[["Imagepoint 1",1,1]],[],4]]]],[],false,false,694286574068717,[],null],["t35",19,false,[262704971509323,199058042510295,193849943661847,993466495623759,162248679823403],0,0,null,[["Default",5,false,1,0,false,250392094328566,[["images/leftarm-sheet0.png",98,0,0,4,8,1,0,0,[],[],4]]]],[],false,false,874995994633167,[],null],["t36",19,false,[262704971509323,199058042510295,193849943661847,993466495623759,162248679823403],0,0,null,[["Default",5,false,1,0,false,139580154073969,[["images/leftarm-sheet0.png",98,0,0,4,8,1,1,0,[],[],4]]]],[],false,false,961246189792673,[],null],["t37",19,false,[262704971509323,199058042510295,193849943661847,993466495623759,162248679823403],0,0,null,[["Default",5,false,1,0,false,335974442939608,[["images/leftarm-sheet0.png",98,0,0,4,8,1,0,0,[["Imagepoint 1",0,1]],[],4]]]],[],false,false,437376146047230,[],null],["t38",19,false,[262704971509323,199058042510295,193849943661847,993466495623759,162248679823403],0,0,null,[["Default",5,false,1,0,false,369268879553443,[["images/leftarm-sheet0.png",98,0,0,4,8,1,1,0,[["Imagepoint 1",1,1]],[],4]]]],[],false,false,488719721118304,[],null],["t39",19,false,[262704971509323,199058042510295,193849943661847,993466495623759,162248679823403],0,0,null,[["Default",5,false,1,0,false,875221134495159,[["images/leftarm-sheet0.png",98,0,0,4,8,1,0,0,[],[],4]]]],[],false,false,994642941606460,[],null],["t40",19,false,[262704971509323,199058042510295,193849943661847,993466495623759,162248679823403],0,0,null,[["Default",5,false,1,0,false,329108067790917,[["images/leftarm-sheet0.png",98,0,0,4,8,1,1,0,[],[],4]]]],[],false,false,495662826184147,[],null],["t41",19,false,[262704971509323,199058042510295,193849943661847,993466495623759,162248679823403],0,0,null,[["Default",5,false,1,0,false,565397434422435,[["images/leftarm-sheet0.png",98,0,0,4,8,1,0,0,[["Imagepoint 1",0,1]],[],4]]]],[],false,false,385635332581677,[],null],["t42",19,false,[965130243788707,391966578155599,418443004403309,205559354748660,184882366923246,571975540706805,973396186379932,905144766452725,438417421015097,391183442401305,203317764441037,401137709982100,241811251667048,526458096151416,656396053117641,604548696251246,323552313622811,328291593224048,698329618803408,900838029209634,138810329896709,446613829071068,706010803083758,717094015404639,502747126357153,391635589758416,608763460834035],4,0,null,[["Default",0,false,1,0,false,383507738196736,[["images/collider-sheet0.png",223,1,1,32,64,1,0.5,0.5,[["Bottom",0.5,1.25],["BodyPos",0.5,0.625],["Right",1.8125,0.953125],["Left",-0.8125,0.984375]],[0.25,-0.375,-0.25,-0.375,-0.25,0.5,0.25,0.5],0],["images/collider-sheet0.png",223,35,1,64,32,1,0.5,0,[["Bottom",0.5,2],["BodyPos",0.5,0.875],["Right",1.4375,0.875],["Left",-0.40625,0.96875]],[-0.1875,0.25,0.3125,0.25,0.3125,1,-0.1875,1],0],["images/collider-sheet0.png",223,35,35,32,64,1,0.5,0.5,[["Bottom",0.5,1.25],["BodyPos",0.5,0.625],["Right",1.8125,0.953125],["Left",-0.8125,0.984375]],[0.25,0,-0.25,0,-0.25,0.5,0.25,0.5],0]]],["Dive",3,true,1,1,false,950454803327767,[["images/collider-sheet1.png",140,0,0,64,32,1,0.5,0,[["Bottom",0.5,2],["BodyPos",0.5,0.875],["Right",1.4375,0.875],["Left",-0.40625,0.96875]],[-0.1875,0.25,0.5,0.25,0.5,1,-0.1875,1],0],["images/collider-sheet0.png",223,35,1,64,32,1,0.5,0,[["Bottom",0.5,2],["BodyPos",0.5,0.875],["Right",1.4375,0.875],["Left",-0.40625,0.96875]],[-0.1875,0.25,0.3125,0.25,0.3125,1,-0.1875,1],0]]]],[["Platform",42,106912818427955],["Timer",43,642338123210994],["PushOutSolid",44,547400551567431],["LineOfSight",45,215019182712805]],false,false,980093774729797,[],null],["t43",19,false,[915774954646669,520137848053553],0,0,null,[["Default",5,false,1,0,false,368770065383007,[["images/jumpboost-sheet0.png",147,0,0,32,32,1,0.5,0.5,[],[],3]]]],[],false,false,194253787145472,[],null],["t44",19,false,[],0,0,null,[["Default",5,false,1,0,false,668247446411146,[["images/endflag-sheet0.png",291,0,0,97,199,1,0.5257731676101685,0.4974874258041382,[],[],3]]]],[],false,false,794649530836660,[],null],["t45",18,false,[],1,0,["images/jumpthrough.png",118,3],null,[["Jumpthru",46,220799760448140]],false,false,536093583644218,[],null],["t46",35,false,[923581378846400,941836366546089,579965770275365,665145682518176,209428091582797,870289313099113,331397106793861,257200944302405,329765002652278,648691422126005,488960249811661,549107127422705,499348393459471],0,0,["images/spritefontdeluxe.png",1469,3],null,[],false,false,471915674765411,[],null],["t47",19,false,[497212342413462,221638416360845],1,0,null,[["Default",5,false,1,0,false,944480272403490,[["images/spike-sheet0.png",157,0,0,32,32,1,0.5,0.5,[],[0,-0.3125,0.40625,0.5,-0.40625,0.5],3]]]],[["Solid",47,291557814136714]],false,false,575349377753015,[],null],["t48",18,false,[],1,0,["images/solidmove.png",92,4],null,[["Solid",47,591205329772151]],false,false,822356300844382,[],null],["t49",19,false,[623098384470575,130266275676608,720839639861735,322342722461352,283978579575932,930540344157587,785612762004331],1,0,null,[["Default",0,false,1,0,false,481186809587176,[["images/buttontrigger-sheet0.png",121,0,0,32,32,1,0.5,0.5,[],[0.5,0.5,-0.5,0.5,-0.5,-0.5,0.5,-0.5],4],["images/buttontrigger-sheet1.png",125,0,0,32,32,1,0.5,0.5,[],[0.5,0.5,-0.5,0.5,-0.5,-0.5,0.5,-0.5],1]]]],[["Persist",48,513140042939745]],false,false,587395727077769,[],null],["t50",19,false,[440031906351753,952965123956453,238992560328463,689824488000075,860001807351402,243492761471736,448930816542163],2,0,null,[["Default",0,false,1,0,false,672507774301297,[["images/movearea-sheet0.png",182,0,0,32,32,1,0.5,0.5,[],[],0],["images/movearea-sheet1.png",182,0,0,32,32,1,0.5,0.5,[],[],0]]]],[["Zigzag",49,364916888746254],["PolarCoordinates",50,317780725754714]],false,false,633068639303610,[],null],["t51",18,false,[],2,0,["images/solid.png",106,1],null,[["Solid",47,839014338215174],["ShadowCaster",51,754529838465882]],false,false,947143641558759,[],null],["t52",18,false,[],1,0,["images/groundpoundsolid.png",118,0],null,[["Solid",47,355775501915793]],false,false,536663820533239,[],null],["t53",19,false,[809651306908247,219185254304743,213830926514419],0,0,null,[["Default",5,false,1,0,false,215265510930338,[["images/layoutnameholder-sheet0.png",92,0,0,16,16,1,0.5,0.5,[],[],1]]]],[],false,false,361845584556439,[],null],["t54",19,false,[497212342413462,653836336582490],1,0,null,[["Default",5,false,1,0,false,626893682707303,[["images/rocket-sheet0.png",149,0,0,32,16,1,0,0.5,[],[],3]]]],[["Bullet",52,762724820346008]],false,false,310947953387915,[],null],["t55",19,false,[538268536119827,737236424564987],2,0,null,[["Default",5,false,1,0,false,486312829178062,[["images/rocketlauncher-sheet0.png",179,0,0,64,32,1,0.125,0.5,[["Imagepoint 1",0.90625,0.5]],[],3]]]],[["Turret",53,611015121460512],["LineOfSight",45,843654116025483]],false,false,980398000624383,[],null],["t56",18,false,[],1,0,["images/solid2.png",92,4],null,[["Solid",47,494571790855143]],false,true,188134854455016,[],null],["t57",35,false,[923581378846400,941836366546089,579965770275365,665145682518176,209428091582797,870289313099113,331397106793861,257200944302405,329765002652278,648691422126005,488960249811661,549107127422705,499348393459471],0,0,["images/spritefontdeluxew.png",1566,3],null,[],false,false,882981310188564,[],null],["t58",19,false,[497212342413462],1,0,null,[["Default",5,false,1,0,false,676168668127819,[["images/spike2-sheet0.png",159,0,0,32,32,1,0.5,0.5,[],[0,-0.5,0.5,0.5,-0.5,0.5],3]]]],[["Solid",47,808816368020377]],false,false,422393596641127,[],null],["t59",18,false,[],1,0,["images/solid3.png",105,3],null,[["Solid",47,949978091938653]],false,false,263819500978949,[],null],["t60",19,false,[123984824623404],2,0,null,[["Default",15,true,1,0,false,163219438528587,[["images/coin-sheet0.png",2052,1,1,64,64,20,0.5,0.5,[],[],0],["images/coin-sheet0.png",2052,67,1,64,64,2,0.5,0.5,[],[],0],["images/coin-sheet0.png",2052,133,1,64,64,1,0.5,0.5,[],[],0],["images/coin-sheet0.png",2052,1,67,64,64,1,0.5,0.5,[],[],0],["images/coin-sheet0.png",2052,67,67,64,64,1,0.5,0.5,[],[],0],["images/coin-sheet0.png",2052,133,67,64,64,1,0.5,0.5,[],[],0],["images/coin-sheet0.png",2052,1,133,64,64,2,0.5,0.5,[],[],0]]]],[["Bullet",52,103306927455664],["Fade",54,561351622411365]],false,false,805093291112452,[],null],["t61",35,false,[],0,1,["images/layoutnumber.png",2921,3],null,[],false,false,472908043947012,[["difference","Difference"]],null],["t62",19,false,[409310316789030,270871931452201,282826763839191,364287935467571,206489992520925,974203441916957,700014547035786],0,1,null,[["Default",5,false,1,0,false,489610483249487,[["images/portal-sheet0.png",112,0,0,8,64,1,0.5,0.5,[["Sortie",3,0.5]],[0.5,0.5,-0.5,0.5,-0.5,-0.5,0.5,-0.5],4]]]],[],false,false,524765780411763,[["replacecolor","ReplaceColor"]],null],["t63",19,false,[624158734960115,129805782484247,760936835300304,364642784298408,597110937293322,347357058477259],1,0,null,[["Default",0,false,1,0,false,827244585747431,[["images/triggerarea-sheet0.png",106,0,0,32,32,1,0.5,0.5,[],[0.5,0.5,-0.5,0.5,-0.5,-0.5,0.5,-0.5],3],["images/triggerarea-sheet0.png",106,0,0,32,32,1,0.5,0.5,[],[0.5,0.5,-0.5,0.5,-0.5,-0.5,0.5,-0.5],3]]]],[["Persist",48,272307223957476]],false,false,727998011305228,[],null],["t64",18,false,[],0,0,["images/tiledbackground.png",175,0],null,[],false,false,596413871533967,[],null],["t65",35,false,[923581378846400,941836366546089,579965770275365,665145682518176,209428091582797,870289313099113,331397106793861,257200944302405,329765002652278,648691422126005,488960249811661,549107127422705,499348393459471],0,1,["images/layoutsubtitle.png",2563,3],null,[],false,false,559683679456801,[["difference","Difference"]],null],["t66",19,false,[987569335984970],2,0,null,[["Default",15,true,1,0,false,178569602330166,[["images/coin-sheet0.png",2052,1,1,64,64,20,0.75,0.75,[],[],0],["images/coin-sheet0.png",2052,67,1,64,64,2,0.75,0.75,[],[],0],["images/coin-sheet0.png",2052,133,1,64,64,1,0.75,0.75,[],[],0],["images/coin-sheet0.png",2052,1,67,64,64,1,0.75,0.75,[],[],0],["images/coin-sheet0.png",2052,67,67,64,64,1,0.75,0.75,[],[],0],["images/coin-sheet0.png",2052,133,67,64,64,1,0.75,0.75,[],[],0],["images/coin-sheet0.png",2052,1,133,64,64,2,0.75,0.75,[],[],0]]]],[["Bullet",52,613445057935133],["Fade",54,762709295679968]],false,false,894030707981383,[],null],["t67",18,false,[],1,0,["images/solid.png",106,1],null,[["Solid",47,411427981380259]],false,false,628885230276165,[],null],["t68",18,false,[],1,0,["images/jumpthrough.png",118,3],null,[["Jumpthru",46,106595504161356]],false,false,876073376960068,[],null],["t69",19,false,[790039848453840],1,0,null,[["Default",0,false,1,0,false,877289776453565,[["images/uidirectionbtn-sheet0.png",1829,1,1,160,640,1,0.5,1,[],[-0.5,-0.53125,0.5,-0.53125,0.5,0,-0.5,0],3],["images/uidirectionbtn-sheet0.png",1829,163,1,160,640,1,0.5,1,[],[-0.5,-0.53125,0.5,-0.53125,0.5,0,-0.5,0],3],["images/uidirectionbtn-sheet0.png",1829,325,1,160,640,1,0.5,1,[],[-0.5,-0.53125,0.5,-0.53125,0.5,0,-0.5,0],3],["images/uidirectionbtn-sheet0.png",1829,487,1,160,640,1,0.5,1,[],[-0.5,-0.53125,0.5,-0.53125,0.5,0,-0.5,0],3],["images/uidirectionbtn-sheet0.png",1829,649,1,160,640,1,0.5,0.5,[],[-0.5,0.5,0.5,0.5,0.5,0.5,-0.5,0.5],3]]]],[["Anchor",55,817786228546890]],false,false,773190814482478,[],null],["t70",19,false,[833326627125313,852633912590874,833764059808737,616664986852724,450163888755740,516056762554634,164252510379460,343821699287631,260272918043277,471614009004684],4,0,null,[["Play",0,false,1,0,false,962838230279748,[["images/menubutton-sheet1.png",2974,1,199,128,64,1,0.5,0.5,[["topLeft",0,0]],[],0],["images/menubutton-sheet1.png",2974,131,199,128,64,1,0.5,0.5,[["topLeft",0,0]],[],0],["images/menubutton-sheet1.png",2974,261,199,128,64,1,0.5,0.5,[["topLeft",0,0]],[],0],["images/menubutton-sheet1.png",2974,1,265,128,64,1,0.5,0.5,[["topLeft",0,0]],[],0]]],["Levels",0,false,1,0,false,696592364987785,[["images/menubutton-sheet1.png",2974,1,199,128,64,1,0.5,0.5,[["topLeft",0,0]],[],0],["images/menubutton-sheet1.png",2974,131,199,128,64,1,0.5,0.5,[["topLeft",0,0]],[],0],["images/menubutton-sheet1.png",2974,261,199,128,64,1,0.5,0.5,[["topLeft",0,0]],[],0]]],["Credits",0,false,1,0,false,757312139855112,[["images/menubutton-sheet1.png",2974,1,199,128,64,1,0.5,0.5,[["topLeft",0,0]],[],0],["images/menubutton-sheet1.png",2974,131,199,128,64,1,0.5,0.5,[["topLeft",0,0]],[],0],["images/menubutton-sheet1.png",2974,261,199,128,64,1,0.5,0.5,[["topLeft",0,0]],[],0]]],["Back",0,false,1,0,false,212726423616819,[["images/menubutton-sheet1.png",2974,1,199,128,64,1,0.5,0.5,[["topLeft",0,0]],[],0],["images/menubutton-sheet1.png",2974,131,199,128,64,1,0.5,0.5,[["topLeft",0,0]],[],0],["images/menubutton-sheet1.png",2974,261,199,128,64,1,0.5,0.5,[["topLeft",0,0]],[],0]]],["Next",0,false,1,0,false,718184098979829,[["images/menubutton-sheet1.png",2974,1,199,128,64,1,0.5,0.5,[["topLeft",0,0]],[],0],["images/menubutton-sheet1.png",2974,131,199,128,64,1,0.5,0.5,[["topLeft",0,0]],[],0],["images/menubutton-sheet1.png",2974,261,199,128,64,1,0.5,0.5,[["topLeft",0,0]],[],0]]],["Replay",0,false,1,0,false,661800133316195,[["images/menubutton-sheet1.png",2974,1,199,128,64,1,0.5,0.5,[["topLeft",0,0]],[],0],["images/menubutton-sheet1.png",2974,131,199,128,64,1,0.5,0.5,[["topLeft",0,0]],[],0],["images/menubutton-sheet1.png",2974,261,199,128,64,1,0.5,0.5,[["topLeft",0,0]],[],0]]],["Pause",0,false,1,0,false,309693113908650,[["images/menubutton-sheet1.png",2974,425,133,64,64,1,0.5,0.5,[["topLeft",0,0]],[],0],["images/menubutton-sheet1.png",2974,391,199,64,64,1,0.5,0.5,[["topLeft",0,0]],[],0],["images/menubutton-sheet1.png",2974,261,265,64,64,1,0.5,0.5,[["topLeft",0,0]],[0.5,0.5,-0.5,0.5,-0.5,-0.5,0.5,-0.5],0]]],["Quit",0,false,1,0,false,419735788479691,[["images/menubutton-sheet1.png",2974,1,199,128,64,1,0.5,0.5,[["topLeft",0,0]],[],0],["images/menubutton-sheet1.png",2974,131,199,128,64,1,0.5,0.5,[["topLeft",0,0]],[],0],["images/menubutton-sheet1.png",2974,261,199,128,64,1,0.5,0.5,[["topLeft",0,0]],[],0]]],["Training",0,false,1,0,false,154524941062248,[["images/menubutton-sheet1.png",2974,327,265,64,64,1,0.5,0.5,[["topLeft",0,0]],[],0],["images/menubutton-sheet1.png",2974,393,265,64,64,1,0.5,0.5,[["topLeft",0,0]],[],0],["images/menubutton-sheet1.png",2974,1,331,64,64,1,0.5,0.5,[["topLeft",0,0]],[0.5,0.5,-0.5,0.5,-0.5,-0.5,0.5,-0.5],0]]],["Options",0,false,1,0,false,521423074410578,[["images/menubutton-sheet1.png",2974,67,331,64,64,1,0.5,0.5,[["topLeft",0,0]],[],0],["images/menubutton-sheet1.png",2974,133,331,64,64,1,0.5,0.5,[["topLeft",0,0]],[],0],["images/menubutton-sheet1.png",2974,199,331,64,64,1,0.5,0.5,[["topLeft",0,0]],[],0]]],["Achievements",0,false,1,0,false,961597565981694,[["images/menubutton-sheet1.png",2974,265,331,64,64,1,0.5,0.5,[["topLeft",0,0]],[],0],["images/menubutton-sheet1.png",2974,331,331,64,64,1,0.5,0.5,[["topLeft",0,0]],[],0],["images/menubutton-sheet1.png",2974,397,331,64,64,1,0.5,0.5,[["topLeft",0,0]],[0.5,0.5,-0.5,0.5,-0.5,-0.5,0.5,-0.5],0]]],["Skins",0,false,1,0,false,140434261630757,[["images/menubutton-sheet1.png",2974,1,397,64,64,1,0.5,0.5,[["topLeft",0,0]],[],0],["images/menubutton-sheet1.png",2974,67,397,64,64,1,0.5,0.5,[["topLeft",0,0]],[],0],["images/menubutton-sheet1.png",2974,133,397,64,64,1,0.5,0.5,[["topLeft",0,0]],[0.5,0.5,-0.5,0.5,-0.5,-0.5,0.5,-0.5],0]]],["Inputs",0,false,1,0,false,213588918714415,[["images/menubutton-sheet1.png",2974,1,199,128,64,1,0.5,0.5,[["topLeft",0,0]],[],0],["images/menubutton-sheet1.png",2974,131,199,128,64,1,0.5,0.5,[["topLeft",0,0]],[],0],["images/menubutton-sheet1.png",2974,261,199,128,64,1,0.5,0.5,[["topLeft",0,0]],[],0]]],["Close",0,false,1,0,false,542281682425315,[["images/menubutton-sheet0.png",3655,493,246,16,16,1,0.5,0.5,[["topLeft",0,0]],[],0],["images/menubutton-sheet0.png",3655,493,264,16,16,1,0.5,0.5,[["topLeft",0,0]],[],0],["images/menubutton-sheet0.png",3655,493,282,16,16,1,0.5,0.5,[["topLeft",0,0]],[0.5,0.5,-0.5,0.5,-0.5,-0.5,0.5,-0.5],0]]],["Edit",0,false,1,0,false,643235031531346,[["images/menubutton-sheet0.png",3655,459,246,32,32,1,0.5,0.5,[["topLeft",0,0]],[],0],["images/menubutton-sheet0.png",3655,459,280,32,32,1,0.5,0.5,[["topLeft",0,0]],[],0],["images/menubutton-sheet0.png",3655,459,314,32,32,1,0.5,0.5,[["topLeft",0,0]],[0.5,0.5,-0.5,0.5,-0.5,-0.5,0.5,-0.5],0]]],["Reload",0,false,1,0,false,591056553932640,[["images/menubutton-sheet1.png",2974,199,397,64,64,1,0.5,0.5,[["topLeft",0,0]],[],0],["images/menubutton-sheet1.png",2974,265,397,64,64,1,0.5,0.5,[["topLeft",0,0]],[],0],["images/menubutton-sheet1.png",2974,331,397,64,64,1,0.5,0.5,[["topLeft",0,0]],[0.5,0.5,-0.5,0.5,-0.5,-0.5,0.5,-0.5],0]]],["Authenticate",0,false,1,0,false,216309916722664,[["images/menubutton-sheet1.png",2974,397,397,64,64,1,0.5,0.5,[["topLeft",0,0]],[],0],["images/menubutton-sheet2.png",1675,1,1,64,64,1,0.5,0.5,[["topLeft",0,0]],[],0],["images/menubutton-sheet2.png",1675,67,1,64,64,1,0.5,0.5,[["topLeft",0,0]],[0.5,0.5,-0.5,0.5,-0.5,-0.5,0.5,-0.5],0]]],["Info",0,false,1,0,false,842488651087870,[["images/menubutton-sheet2.png",1675,133,1,64,64,1,0.5,0.5,[["topLeft",0,0]],[],0],["images/menubutton-sheet2.png",1675,199,1,64,64,1,0.5,0.5,[["topLeft",0,0]],[],0],["images/menubutton-sheet2.png",1675,265,1,64,64,1,0.5,0.5,[["topLeft",0,0]],[0.5,0.5,-0.5,0.5,-0.5,-0.5,0.5,-0.5],0]]],["Resume",0,false,1,0,false,282666850536775,[["images/menubutton-sheet1.png",2974,1,199,128,64,1,0.5,0.5,[["topLeft",0,0]],[],0],["images/menubutton-sheet1.png",2974,131,199,128,64,1,0.5,0.5,[["topLeft",0,0]],[],0],["images/menubutton-sheet1.png",2974,261,199,128,64,1,0.5,0.5,[["topLeft",0,0]],[],0],["images/menubutton-sheet1.png",2974,131,265,128,64,1,0.5,0.5,[["topLeft",0,0]],[],0]]],["DownloadReplay",0,false,1,0,false,851859117973782,[["images/menubutton-sheet0.png",3655,1,1,256,64,1,0.5,0.5,[["topLeft",0,0]],[],0],["images/menubutton-sheet0.png",3655,1,67,256,64,1,0.5,0.5,[["topLeft",0,0]],[],0],["images/menubutton-sheet0.png",3655,1,133,256,64,1,0.5,0.5,[["topLeft",0,0]],[],0]]],["LoadReplay",0,false,1,0,false,567532834862750,[["images/menubutton-sheet0.png",3655,1,199,227,64,1,0.5022026300430298,0.5,[["topLeft",0,0]],[],0],["images/menubutton-sheet0.png",3655,230,199,227,64,1,0.5022026300430298,0.5,[["topLeft",0,0]],[],0],["images/menubutton-sheet0.png",3655,1,265,227,64,1,0.5022026300430298,0.5,[["topLeft",0,0]],[],0]]],["ToggleDebug",0,false,1,0,false,810913034713976,[["images/menubutton-sheet0.png",3655,230,265,227,64,1,0.5022026300430298,0.5,[["topLeft",0,0]],[],0],["images/menubutton-sheet0.png",3655,1,331,227,64,1,0.5022026300430298,0.5,[["topLeft",0,0]],[],0],["images/menubutton-sheet0.png",3655,230,331,227,64,1,0.5022026300430298,0.5,[["topLeft",0,0]],[],0]]],["Save",0,false,1,0,false,446180432961922,[["images/menubutton-sheet1.png",2974,1,199,128,64,1,0.5,0.5,[["topLeft",0,0]],[],0],["images/menubutton-sheet1.png",2974,131,199,128,64,1,0.5,0.5,[["topLeft",0,0]],[],0],["images/menubutton-sheet1.png",2974,261,199,128,64,1,0.5,0.5,[["topLeft",0,0]],[],0]]],["ClearSave",0,false,1,0,false,464364714618000,[["images/menubutton-sheet0.png",3655,1,397,227,64,1,0.5022026300430298,0.5,[["topLeft",0,0]],[],0],["images/menubutton-sheet0.png",3655,230,397,227,64,1,0.5022026300430298,0.5,[["topLeft",0,0]],[],0],["images/menubutton-sheet1.png",2974,1,1,227,64,1,0.5022026300430298,0.5,[["topLeft",0,0]],[],0]]],["Confirm",0,false,1,0,false,579470599704574,[["images/menubutton-sheet0.png",3655,459,348,32,32,1,0.5,0.5,[["topLeft",0,0]],[],0],["images/menubutton-sheet0.png",3655,459,382,32,32,1,0.5,0.5,[["topLeft",0,0]],[],0],["images/menubutton-sheet0.png",3655,459,416,32,32,1,0.5,0.5,[["topLeft",0,0]],[0.5,0.5,-0.5,0.5,-0.5,-0.5,0.5,-0.5],0],["images/menubutton-sheet0.png",3655,459,450,32,32,1,0.5,0.5,[["topLeft",0,0]],[0.5,0.5,-0.5,0.5,-0.5,-0.5,0.5,-0.5],0]]],["Cancel",0,false,1,0,false,742950516694063,[["images/menubutton-sheet0.png",3655,1,463,32,32,1,0.5,0.5,[["topLeft",0,0]],[],0],["images/menubutton-sheet0.png",3655,35,463,32,32,1,0.5,0.5,[["topLeft",0,0]],[],0],["images/menubutton-sheet0.png",3655,69,463,32,32,1,0.5,0.5,[["topLeft",0,0]],[0.5,0.5,-0.5,0.5,-0.5,-0.5,0.5,-0.5],0],["images/menubutton-sheet0.png",3655,103,463,32,32,1,0.5,0.5,[["topLeft",0,0]],[0.5,0.5,-0.5,0.5,-0.5,-0.5,0.5,-0.5],0]]],["ClearCoins",0,false,1,0,false,966550647742281,[["images/menubutton-sheet1.png",2974,230,1,227,64,1,0.5022026300430298,0.5,[["topLeft",0,0]],[],0],["images/menubutton-sheet1.png",2974,1,67,227,64,1,0.5022026300430298,0.5,[["topLeft",0,0]],[],0],["images/menubutton-sheet1.png",2974,230,67,227,64,1,0.5022026300430298,0.5,[["topLeft",0,0]],[],0]]],["ArrowRight",0,false,1,0,false,614997109473195,[["images/menubutton-sheet2.png",1675,331,1,64,64,1,0.5,0.5,[["topLeft",0,0]],[],0],["images/menubutton-sheet2.png",1675,397,1,64,64,1,0.5,0.5,[["topLeft",0,0]],[],0],["images/menubutton-sheet2.png",1675,1,67,64,64,1,0.5,0.5,[["topLeft",0,0]],[0.5,0.5,-0.5,0.5,-0.5,-0.5,0.5,-0.5],0],["images/menubutton-sheet2.png",1675,67,67,64,64,1,0.5,0.5,[["topLeft",0,0]],[0.5,0.5,-0.5,0.5,-0.5,-0.5,0.5,-0.5],0]]],["ArrowLeft",0,false,1,0,false,721178374660766,[["images/menubutton-sheet2.png",1675,133,67,64,64,1,0.5,0.5,[["topLeft",0,0]],[0.5,0.5,-0.5,0.5,-0.5,-0.5,0.5,-0.5],0],["images/menubutton-sheet2.png",1675,199,67,64,64,1,0.5,0.5,[["topLeft",0,0]],[0.5,0.5,-0.5,0.5,-0.5,-0.5,0.5,-0.5],0],["images/menubutton-sheet2.png",1675,265,67,64,64,1,0.5,0.5,[["topLeft",0,0]],[],0],["images/menubutton-sheet2.png",1675,331,67,64,64,1,0.5,0.5,[["topLeft",0,0]],[],0]]],["Discord",0,false,1,0,false,869766903139515,[["images/menubutton-sheet0.png",3655,459,199,40,45,1,0.5,0.5111111402511597,[["topLeft",0,0]],[],0]]],["RandomSkin",0,false,1,0,false,858132809397273,[["images/menubutton-sheet1.png",2974,1,133,210,64,1,0.5,0.5,[["topLeft",0,0]],[],0],["images/menubutton-sheet1.png",2974,213,133,210,64,1,0.5,0.5,[["topLeft",0,0]],[],0],["images/menubutton-sheet1.png",2974,1,133,210,64,1,0.5,0.5,[["topLeft",0,0]],[],0]]],["RemoveMidrollAds",0,false,1,0,false,533043914935058,[["images/menubutton-sheet0.png",3655,259,1,250,64,1,0.5,0.5,[["topLeft",0,0]],[],0],["images/menubutton-sheet0.png",3655,259,67,250,64,1,0.5,0.5,[["topLeft",0,0]],[],0],["images/menubutton-sheet0.png",3655,259,1,250,64,1,0.5,0.5,[["topLeft",0,0]],[],0],["images/menubutton-sheet0.png",3655,259,133,250,64,1,0.5,0.5,[["topLeft",0,0]],[],0]]],["MobileMode",0,false,1,0,false,816480965437860,[["images/menubutton-sheet1.png",2974,1,199,128,64,1,0.5,0.5,[["topLeft",0,0]],[],0],["images/menubutton-sheet1.png",2974,131,199,128,64,1,0.5,0.5,[["topLeft",0,0]],[],0],["images/menubutton-sheet1.png",2974,261,199,128,64,1,0.5,0.5,[["topLeft",0,0]],[],0]]]],[["Button",56,192590927567796],["Tag",57,504981886149227],["Anchor",55,912720542346137],["GameObject",58,851537989156808]],false,false,871307910208735,[],null],["t71",19,false,[],4,0,null,[["Default",5,false,1,0,false,658412924655736,[["images/titlelogo-sheet0.png",3831,0,0,429,151,1,0.501165509223938,0.5033112764358521,[],[-0.501165509223938,-0.5033112764358521,-0.1480185091495514,-0.5033112764358521,-0.0005825161933898926,0.08609169721603394,0.1477274894714356,-0.5033112764358521,0.498834490776062,-0.5033112764358521,0.498834490776062,0.496688723564148,-0.501165509223938,0.496688723564148],0]]]],[["Sine",59,687562273804991],["Sine2",59,254174200087253],["Sine3",59,559113761082110],["Sine4",59,397755608956234]],false,false,943341695504625,[],null],["t72",19,false,[],0,0,null,[["Default",5,false,1,0,false,843383714887302,[["images/credits-sheet0.png",1012,0,0,303,283,1,0.5016501545906067,0.5017668008804321,[],[-0.4950495064258575,-0.4946996569633484,0.4917488694190979,-0.4946996569633484,0.4917488694190979,0.4911661744117737,-0.4950495064258575,0.4911661744117737],0]]]],[],false,false,923192069896660,[],null],["t73",35,false,[923581378846400,941836366546089,579965770275365,665145682518176,209428091582797,870289313099113,331397106793861,257200944302405,329765002652278,648691422126005,488960249811661,549107127422705,499348393459471],0,0,["images/spritefontdeluxe.png",1469,3],null,[],false,false,469255364948708,[],null],["t74",19,false,[],3,0,null,[["Default",0,false,1,0,false,406099199651648,[["images/listsubitembtn-sheet0.png",260,1,1,32,32,1,0.5,0.5,[],[],0],["images/listsubitembtn-sheet0.png",260,35,1,32,32,1,0.5,0.5,[],[],0],["images/listsubitembtn-sheet0.png",260,69,1,32,32,1,0.5,0.5,[],[],0],["images/listsubitembtn-sheet0.png",260,1,35,32,32,1,0.5,0.5,[],[],0],["images/listsubitembtn-sheet0.png",260,35,35,32,32,1,0.5,0.5,[],[],0],["images/listsubitembtn-sheet0.png",260,69,35,32,32,1,0.5,0.5,[],[],0],["images/listsubitembtn-sheet0.png",260,1,69,32,32,1,0.5,0.5,[],[],0],["images/listsubitembtn-sheet0.png",260,35,69,32,32,1,0.5,0.5,[],[],0],["images/listsubitembtn-sheet0.png",260,69,69,32,32,1,0.5,0.5,[],[],0],["images/listsubitembtn-sheet1.png",256,1,1,32,32,1,0.5,0.5,[],[],0],["images/listsubitembtn-sheet1.png",256,35,1,32,32,1,0.5,0.5,[],[],0],["images/listsubitembtn-sheet1.png",256,69,1,32,32,1,0.5,0.5,[],[],0],["images/listsubitembtn-sheet1.png",256,1,35,32,32,1,0.5,0.5,[],[],0],["images/listsubitembtn-sheet1.png",256,35,35,32,32,1,0.5,0.5,[],[],0],["images/listsubitembtn-sheet1.png",256,69,35,32,32,1,0.5,0.5,[],[],0],["images/listsubitembtn-sheet1.png",256,1,69,32,32,1,0.5,0.5,[],[],0],["images/listsubitembtn-sheet1.png",256,35,69,32,32,1,0.5,0.5,[],[],0],["images/listsubitembtn-sheet1.png",256,69,69,32,32,1,0.5,0.5,[],[],0],["images/listsubitembtn-sheet2.png",221,1,1,32,32,1,0.5,0.5,[],[],0],["images/listsubitembtn-sheet2.png",221,35,1,32,32,1,0.5,0.5,[],[],0],["images/listsubitembtn-sheet2.png",221,69,1,32,32,1,0.5,0.5,[],[],0],["images/listsubitembtn-sheet2.png",221,1,35,32,32,1,0.5,0.5,[],[],0]]]],[["Button",56,870307188457327],["Fade",54,105323355133909],["GridViewDataBind",60,267322014361716]],false,false,916751472233462,[],null],["t75",19,false,[],3,0,null,[["Default",5,false,1,0,false,971954146164993,[["images/listparent-sheet0.png",93,0,0,32,32,1,0.5,0.5,[],[],4]]]],[["GridView",61,437028893016126],["Tag",57,349920604131476],["Model",62,540348529384128]],false,false,855218897776641,[],null],["t76",19,false,[],1,0,null,[["Default",5,false,1,0,false,306312591791818,[["images/listparent-sheet0.png",93,0,0,32,32,1,0.5,0.5,[],[],4]]]],[["ScrollView",63,920705789609230]],false,false,794854963730303,[],null],["t77",35,false,[923581378846400,941836366546089,579965770275365,665145682518176,209428091582797,870289313099113,331397106793861,257200944302405,329765002652278,648691422126005,488960249811661,549107127422705,499348393459471],1,0,["images/spritefontdeluxe.png",1469,3],null,[["GridViewDataBind",60,567270783348622]],false,false,717419481555108,[],null],["t78",19,false,[],1,0,null,[["Default",5,false,1,0,false,980813485972786,[["images/endcarddialog-sheet0.png",155,0,0,250,250,1,0.5,0.5,[],[],4]]]],[["Dialog",64,552690435112294]],false,false,997446117152924,[],null],["t79",35,false,[923581378846400,941836366546089,579965770275365,665145682518176,209428091582797,870289313099113,331397106793861,257200944302405,329765002652278,648691422126005,488960249811661,549107127422705,499348393459471],0,0,["images/spritefontdeluxe.png",1469,3],null,[],false,false,138943318199388,[],null],["t80",35,false,[923581378846400,941836366546089,579965770275365,665145682518176,209428091582797,870289313099113,331397106793861,257200944302405,329765002652278,648691422126005,488960249811661,549107127422705,499348393459471],0,0,["images/spritefontdeluxe.png",1469,3],null,[],false,false,483674724368637,[],null],["t81",15,false,[],0,0,["images/particlesbg.png",92,4],null,[],false,false,766106440353982,[],null],["t82",19,false,[],1,0,null,[["Default",5,false,1,0,false,797348745925872,[["images/endcarddialog-sheet0.png",155,0,0,250,250,1,0.5,0.5,[],[],4]]]],[["Dialog",64,627460496247420]],false,false,913035267880290,[],null],["t83",35,false,[923581378846400,941836366546089,579965770275365,665145682518176,209428091582797,870289313099113,331397106793861,257200944302405,329765002652278,648691422126005,488960249811661,549107127422705,499348393459471],0,0,["images/spritefontdeluxe.png",1469,3],null,[],false,false,394279432846411,[],null],["t84",35,false,[923581378846400,941836366546089,579965770275365,665145682518176,209428091582797,870289313099113,331397106793861,257200944302405,329765002652278,648691422126005,488960249811661,549107127422705,499348393459471],1,0,["images/spritefontdeluxe.png",1469,3],null,[["Anchor",55,287373255718523]],false,false,523768684818219,[],null],["t85",19,false,[],1,0,null,[["Default",5,false,1,0,false,881948234199591,[["images/endcarddialog-sheet0.png",155,0,0,250,250,1,0.5,0.5,[],[],4]]]],[["Dialog",64,671948621080307]],false,false,231927457641681,[],null],["t86",35,false,[923581378846400,941836366546089,579965770275365,665145682518176,209428091582797,870289313099113,331397106793861,257200944302405,329765002652278,648691422126005,488960249811661,549107127422705,499348393459471,691779161713694],0,0,["images/spritefontdeluxe.png",1469,3],null,[],false,false,685814704192994,[],null],["t87",35,false,[923581378846400,941836366546089,579965770275365,665145682518176,209428091582797,870289313099113,331397106793861,257200944302405,329765002652278,648691422126005,488960249811661,549107127422705,499348393459471],0,0,["images/spritefontdeluxe.png",1469,3],null,[],false,false,179156666000401,[],null],["t88",19,false,[],0,0,null,[["Default",0,false,1,0,false,613442593755762,[["images/sprite-sheet0.png",134,0,0,16,16,1,0.5,0.5,[],[],3],["images/sprite-sheet1.png",92,0,0,16,16,1,0.5,0.5,[],[],4]]]],[],false,false,130458472221869,[],null],["t89",15,false,[],0,0,["images/particles.png",117,3],null,[],false,false,362520618954819,[],null],["t90",35,false,[923581378846400,941836366546089,579965770275365,665145682518176,209428091582797,870289313099113,331397106793861,257200944302405,329765002652278,648691422126005,488960249811661,549107127422705,499348393459471],1,0,["images/spritefontdeluxe.png",1469,3],null,[["GridViewDataBind",60,521046110774143]],false,false,661062742647909,[],null],["t91",19,false,[],2,0,null,[["Default",0,false,1,0,false,741604365944040,[["images/listitem-sheet0.png",115,0,0,32,32,1,0.5,0.5,[],[],3]]]],[["Tag",57,854874059014333],["Fade",54,155319899051405]],false,false,805214314072590,[],null],["t92",0,false,[],1,0,["images/inputsdialog.png",104,4],null,[["Dialog",64,636786932072904]],false,false,353280313453311,[],null],["t93",37,false,[700545480860342],1,0,null,null,[["GameObject",58,583163345308791]],false,false,672178643629070,[],null],["t94",35,false,[923581378846400,941836366546089,579965770275365,665145682518176,209428091582797,870289313099113,331397106793861,257200944302405,329765002652278,648691422126005,488960249811661,549107127422705,499348393459471,465784063491532],0,0,["images/spritefontdeluxe.png",1469,3],null,[],false,false,328245429381537,[],null],["t95",30,false,[],2,0,null,null,[["GridViewDataBind",60,185633130855603],["Fade",54,553954237101114]],false,false,770502290910924,[],null],["t96",19,false,[384412574880714],1,0,null,[["Default",5,false,1,0,false,361223792566157,[["images/checkbox-sheet0.png",273,1,1,16,16,1,0.5,0.5,[],[],3],["images/checkbox-sheet0.png",273,19,1,16,16,1,0.5,0.5,[],[],3],["images/checkbox-sheet0.png",273,37,1,16,16,1,0.5,0.5,[],[],3],["images/checkbox-sheet0.png",273,1,19,16,16,1,0.5,0.5,[],[],3]]],["Audio",5,false,1,0,false,791412658252835,[["images/checkbox-sheet0.png",273,19,19,16,16,1,0.5,0.5,[],[],3],["images/checkbox-sheet0.png",273,37,19,16,16,1,0.5,0.5,[],[],3],["images/checkbox-sheet0.png",273,1,37,16,16,1,0.5,0.5,[],[],3],["images/checkbox-sheet0.png",273,19,37,16,16,1,0.5,0.5,[],[],3]]]],[["Checkbox",65,280353987761101]],false,false,904214012717681,[],null],["t97",30,false,[],2,0,null,null,[["GridViewDataBind",60,720196456593230],["Fade",54,451068625969125]],false,false,534283640513831,[],null],["t98",19,false,[718361519322223],1,0,null,[["Default",5,false,1,0,false,655162510356474,[["images/sliderbar-sheet0.png",92,0,0,8,4,1,0.5,0.5,[],[],4]]]],[["SliderBar",66,532906647179358]],false,false,742425440309907,[],null],["t99",19,false,[],1,0,null,[["Default",5,false,1,0,false,146605329170220,[["images/body-sheet0.png",98,0,0,8,16,1,0.5,0.5,[],[],4]]]],[["Tag",57,691316610327205]],false,false,115809270478405,[],null],["t100",6,false,[232837318186110],0,0,null,null,[],false,false,146416935242498,[],null],["t101",14,false,[995288370071815,818656319250812],0,0,null,null,[],false,false,329577255107656,[],null],["t102",37,false,[609050978827825],1,0,null,null,[["Fade",54,545888261773666]],false,false,234900585934994,[],null],["t103",19,false,[],0,0,null,[["Default",60,true,1,0,false,970472814107247,[["images/loadinganim-sheet0.png",7420,1,1,200,200,1,0.5,0.5,[],[],0],["images/loadinganim-sheet0.png",7420,203,1,200,200,1,0.5,0.5,[],[],0],["images/loadinganim-sheet0.png",7420,405,1,200,200,1,0.5,0.5,[],[],0],["images/loadinganim-sheet0.png",7420,607,1,200,200,1,0.5,0.5,[],[],0],["images/loadinganim-sheet0.png",7420,809,1,200,200,1,0.5,0.5,[],[],0],["images/loadinganim-sheet0.png",7420,1,203,200,200,1,0.5,0.5,[],[],0],["images/loadinganim-sheet0.png",7420,203,203,200,200,1,0.5,0.5,[],[],0],["images/loadinganim-sheet0.png",7420,405,203,200,200,1,0.5,0.5,[],[],0],["images/loadinganim-sheet0.png",7420,607,203,200,200,1,0.5,0.5,[],[],0],["images/loadinganim-sheet0.png",7420,809,203,200,200,1,0.5,0.5,[],[],0],["images/loadinganim-sheet0.png",7420,1,405,200,200,1,0.5,0.5,[],[],0],["images/loadinganim-sheet0.png",7420,203,405,200,200,1,0.5,0.5,[],[],0],["images/loadinganim-sheet0.png",7420,405,405,200,200,1,0.5,0.5,[],[],0],["images/loadinganim-sheet0.png",7420,607,405,200,200,1,0.5,0.5,[],[],0],["images/loadinganim-sheet0.png",7420,809,405,200,200,1,0.5,0.5,[],[],0],["images/loadinganim-sheet0.png",7420,1,607,200,200,1,0.5,0.5,[],[],0],["images/loadinganim-sheet0.png",7420,203,607,200,200,1,0.5,0.5,[],[],0],["images/loadinganim-sheet0.png",7420,405,607,200,200,1,0.5,0.5,[],[],0],["images/loadinganim-sheet0.png",7420,607,607,200,200,1,0.5,0.5,[],[],0],["images/loadinganim-sheet0.png",7420,809,607,200,200,1,0.5,0.5,[],[],0],["images/loadinganim-sheet0.png",7420,1,809,200,200,1,0.5,0.5,[],[],0],["images/loadinganim-sheet0.png",7420,203,809,200,200,1,0.5,0.5,[],[],0],["images/loadinganim-sheet0.png",7420,405,809,200,200,1,0.5,0.5,[],[],0],["images/loadinganim-sheet0.png",7420,607,809,200,200,1,0.5,0.5,[],[],0],["images/loadinganim-sheet0.png",7420,809,809,200,200,1,0.5,0.5,[],[],0],["images/loadinganim-sheet1.png",1589,1,1,200,200,1,0.5,0.5,[],[],0],["images/loadinganim-sheet1.png",1589,203,1,200,200,1,0.5,0.5,[],[],0],["images/loadinganim-sheet1.png",1589,1,203,200,200,1,0.5,0.5,[],[],0],["images/loadinganim-sheet1.png",1589,203,203,200,200,1,0.5,0.5,[],[],0],["images/loadinganim-sheet0.png",7420,1,1,200,200,1,0.5,0.5,[],[],0]]]],[],false,false,253550382642003,[],null],["t104",19,false,[],0,0,null,[["Default",5,false,1,0,false,912086023242790,[["images/fakeparseimage-sheet0.png",3327,0,0,641,641,1,0,0,[],[],0]]]],[],false,false,883979689512348,[],null],["t105",0,false,[],0,0,["images/inputsdialog.png",104,4],null,[],false,false,871390226154046,[],null],["t106",19,false,[],3,0,null,[["Default",5,false,1,0,false,374418277437220,[["images/menubutton2-sheet0.png",404,1,1,128,55,1,0.5,0.5090909004211426,[],[],3],["images/menubutton2-sheet0.png",404,1,58,128,55,1,0.5,0.5090909004211426,[],[],3],["images/menubutton2-sheet0.png",404,1,115,128,55,1,0.5,0.5090909004211426,[],[],3],["images/menubutton2-sheet0.png",404,1,172,128,55,1,0.5,0.5090909004211426,[],[],3]]]],[["Button",56,321059891411264],["Tag",57,138706539873709],["Anchor",55,439479988061095]],false,false,326986403255231,[],null],["t107",0,false,[],1,0,["images/inputsdialog.png",104,4],null,[["Anchor",55,567303206816233]],false,false,394569376315989,[],null],["t108",19,false,[],0,0,null,[["Default",5,false,1,0,false,506066228568740,[["images/adblocksign-sheet0.png",280,0,0,64,64,1,0.5,0.5,[],[],3]]]],[],false,false,956962616457867,[],null],["t109",19,false,[],1,0,null,[["Default",5,false,1,0,false,575506251700772,[["images/dialogoverlay-sheet0.png",155,0,0,250,250,1,0.5,0.5,[],[],4]]]],[["Tag",57,625921212032829]],false,false,181039768889194,[],null],["t110",3,false,[],0,0,null,null,[],true,false,370922250869393,[],null],["t111",35,false,[938838768440296,964209421649512,170788093613809,233968749852366],2,0,["images/spritefontdeluxe.png",1469,3],null,[["EaseTween",67,125771647312254],["Sine",59,735194056152753]],false,true,528654813414501,[],null],["t112",19,false,[],0,0,null,[["Default",60,true,1,0,false,691579894398459,[["images/dedraloader-sheet0.png",450722,1,1,360,288,1,0.5,0.5,[],[],0],["images/dedraloader-sheet0.png",450722,363,1,360,288,1,0.5,0.5,[],[],0],["images/dedraloader-sheet0.png",450722,725,1,360,288,1,0.5,0.5,[],[],0],["images/dedraloader-sheet0.png",450722,1087,1,360,288,1,0.5,0.5,[],[],0],["images/dedraloader-sheet0.png",450722,1449,1,360,288,1,0.5,0.5,[],[],0],["images/dedraloader-sheet0.png",450722,1,291,360,288,1,0.5,0.5,[],[],0],["images/dedraloader-sheet0.png",450722,363,291,360,288,1,0.5,0.5,[],[],0],["images/dedraloader-sheet0.png",450722,725,291,360,288,1,0.5,0.5,[],[],0],["images/dedraloader-sheet0.png",450722,1087,291,360,288,1,0.5,0.5,[],[],0],["images/dedraloader-sheet0.png",450722,1449,291,360,288,1,0.5,0.5,[],[],0],["images/dedraloader-sheet0.png",450722,1,581,360,288,1,0.5,0.5,[],[],0],["images/dedraloader-sheet0.png",450722,363,581,360,288,1,0.5,0.5,[],[],0],["images/dedraloader-sheet0.png",450722,725,581,360,288,1,0.5,0.5,[],[],0],["images/dedraloader-sheet0.png",450722,1087,581,360,288,1,0.5,0.5,[],[],0],["images/dedraloader-sheet0.png",450722,1449,581,360,288,1,0.5,0.5,[],[],0],["images/dedraloader-sheet0.png",450722,1,871,360,288,1,0.5,0.5,[],[],0],["images/dedraloader-sheet0.png",450722,363,871,360,288,1,0.5,0.5,[],[],0],["images/dedraloader-sheet0.png",450722,725,871,360,288,1,0.5,0.5,[],[],0],["images/dedraloader-sheet0.png",450722,1087,871,360,288,1,0.5,0.5,[],[],0],["images/dedraloader-sheet0.png",450722,1449,871,360,288,1,0.5,0.5,[],[],0],["images/dedraloader-sheet0.png",450722,1,1161,360,288,1,0.5,0.5,[],[],0],["images/dedraloader-sheet0.png",450722,363,1161,360,288,1,0.5,0.5,[],[],0],["images/dedraloader-sheet0.png",450722,725,1161,360,288,1,0.5,0.5,[],[],0],["images/dedraloader-sheet0.png",450722,1087,1161,360,288,1,0.5,0.5,[],[],0],["images/dedraloader-sheet0.png",450722,1449,1161,360,288,1,0.5,0.5,[],[],0],["images/dedraloader-sheet0.png",450722,1,1451,360,288,1,0.5,0.5,[],[],0],["images/dedraloader-sheet0.png",450722,363,1451,360,288,1,0.5,0.5,[],[],0],["images/dedraloader-sheet0.png",450722,725,1451,360,288,1,0.5,0.5,[],[],0],["images/dedraloader-sheet0.png",450722,1087,1451,360,288,1,0.5,0.5,[],[],0],["images/dedraloader-sheet0.png",450722,1449,1451,360,288,1,0.5,0.5,[],[],0],["images/dedraloader-sheet0.png",450722,1,1741,360,288,1,0.5,0.5,[],[],0],["images/dedraloader-sheet0.png",450722,363,1741,360,288,1,0.5,0.5,[],[],0],["images/dedraloader-sheet0.png",450722,725,1741,360,288,1,0.5,0.5,[],[],0],["images/dedraloader-sheet0.png",450722,1087,1741,360,288,1,0.5,0.5,[],[],0],["images/dedraloader-sheet0.png",450722,1449,1741,360,288,1,0.5,0.5,[],[],0],["images/dedraloader-sheet1.png",329477,1,1,360,288,1,0.5,0.5,[],[],0],["images/dedraloader-sheet1.png",329477,363,1,360,288,1,0.5,0.5,[],[],0],["images/dedraloader-sheet1.png",329477,725,1,360,288,1,0.5,0.5,[],[],0],["images/dedraloader-sheet1.png",329477,1087,1,360,288,1,0.5,0.5,[],[],0],["images/dedraloader-sheet1.png",329477,1449,1,360,288,1,0.5,0.5,[],[],0],["images/dedraloader-sheet1.png",329477,1,291,360,288,1,0.5,0.5,[],[],0],["images/dedraloader-sheet1.png",329477,363,291,360,288,1,0.5,0.5,[],[],0],["images/dedraloader-sheet1.png",329477,725,291,360,288,1,0.5,0.5,[],[],0],["images/dedraloader-sheet1.png",329477,1087,291,360,288,1,0.5,0.5,[],[],0],["images/dedraloader-sheet1.png",329477,1449,291,360,288,1,0.5,0.5,[],[],0],["images/dedraloader-sheet1.png",329477,1,581,360,288,1,0.5,0.5,[],[],0],["images/dedraloader-sheet1.png",329477,363,581,360,288,1,0.5,0.5,[],[],0],["images/dedraloader-sheet1.png",329477,725,581,360,288,1,0.5,0.5,[],[],0],["images/dedraloader-sheet1.png",329477,1087,581,360,288,1,0.5,0.5,[],[],0],["images/dedraloader-sheet1.png",329477,1449,581,360,288,1,0.5,0.5,[],[],0],["images/dedraloader-sheet1.png",329477,1,871,360,288,1,0.5,0.5,[],[],0],["images/dedraloader-sheet1.png",329477,363,871,360,288,1,0.5,0.5,[],[],0],["images/dedraloader-sheet1.png",329477,725,871,360,288,1,0.5,0.5,[],[],0],["images/dedraloader-sheet1.png",329477,1087,871,360,288,1,0.5,0.5,[],[],0],["images/dedraloader-sheet1.png",329477,1449,871,360,288,1,0.5,0.5,[],[],0],["images/dedraloader-sheet1.png",329477,1,1161,360,288,1,0.5,0.5,[],[],0],["images/dedraloader-sheet1.png",329477,363,1161,360,288,1,0.5,0.5,[],[],0],["images/dedraloader-sheet1.png",329477,725,1161,360,288,1,0.5,0.5,[],[],0],["images/dedraloader-sheet1.png",329477,1087,1161,360,288,1,0.5,0.5,[],[],0],["images/dedraloader-sheet1.png",329477,1449,1161,360,288,1,0.5,0.5,[],[],0],["images/dedraloader-sheet1.png",329477,1,1451,360,288,1,0.5,0.5,[],[],0],["images/dedraloader-sheet1.png",329477,363,1451,360,288,1,0.5,0.5,[],[],0],["images/dedraloader-sheet1.png",329477,363,1451,360,288,1,0.5,0.5,[],[],0],["images/dedraloader-sheet1.png",329477,363,1451,360,288,1,0.5,0.5,[],[],0],["images/dedraloader-sheet1.png",329477,363,1451,360,288,1,0.5,0.5,[],[],0],["images/dedraloader-sheet1.png",329477,725,1451,360,288,1,0.5,0.5,[],[],0],["images/dedraloader-sheet1.png",329477,725,1451,360,288,1,0.5,0.5,[],[],0],["images/dedraloader-sheet1.png",329477,725,1451,360,288,1,0.5,0.5,[],[],0],["images/dedraloader-sheet1.png",329477,725,1451,360,288,1,0.5,0.5,[],[],0],["images/dedraloader-sheet1.png",329477,1087,1451,360,288,1,0.5,0.5,[],[],0],["images/dedraloader-sheet1.png",329477,1087,1451,360,288,1,0.5,0.5,[],[],0],["images/dedraloader-sheet1.png",329477,1087,1451,360,288,1,0.5,0.5,[],[],0],["images/dedraloader-sheet1.png",329477,1087,1451,360,288,1,0.5,0.5,[],[],0],["images/dedraloader-sheet1.png",329477,1449,1451,360,288,1,0.5,0.5,[],[],0],["images/dedraloader-sheet1.png",329477,1449,1451,360,288,1,0.5,0.5,[],[],0],["images/dedraloader-sheet1.png",329477,1449,1451,360,288,1,0.5,0.5,[],[],0],["images/dedraloader-sheet1.png",329477,1449,1451,360,288,1,0.5,0.5,[],[],0],["images/dedraloader-sheet1.png",329477,1449,1451,360,288,1,0.5,0.5,[],[],0],["images/dedraloader-sheet1.png",329477,1449,1451,360,288,1,0.5,0.5,[],[],0],["images/dedraloader-sheet1.png",329477,1449,1451,360,288,1,0.5,0.5,[],[],0]]]],[],false,true,762684343615583,[],null],["t113",19,false,[],1,0,null,[["Default",5,false,1,0,false,165008020883225,[["images/sliderbar-sheet0.png",92,0,0,8,4,1,0.5,0.5,[],[],4]]]],[["Tag",57,741812261596438]],false,false,737200207141361,[],null],["t114",19,false,[],3,0,null,[["Play",5,false,1,0,false,333780014235581,[["images/menubutton3-sheet0.png",1853,1,1,128,64,1,0.5,0.5,[],[],3],["images/menubutton3-sheet0.png",1853,131,1,128,64,1,0.5,0.5,[],[],3],["images/menubutton3-sheet0.png",1853,261,1,128,64,1,0.5,0.5,[],[],3]]],["Levels",5,false,1,0,false,509344484078616,[["images/menubutton3-sheet0.png",1853,1,67,128,64,1,0.5,0.5,[],[],3],["images/menubutton3-sheet0.png",1853,131,67,128,64,1,0.5,0.5,[],[],3],["images/menubutton3-sheet0.png",1853,261,67,128,64,1,0.5,0.5,[],[],3]]],["Credits",5,false,1,0,false,279425333133862,[["images/menubutton3-sheet0.png",1853,1,133,128,64,1,0.5,0.5,[],[],3],["images/menubutton3-sheet0.png",1853,131,133,128,64,1,0.5,0.5,[],[],3],["images/menubutton3-sheet0.png",1853,261,133,128,64,1,0.5,0.5,[],[],3]]],["Back",5,false,1,0,false,246206964373389,[["images/menubutton3-sheet0.png",1853,1,199,128,64,1,0.5,0.5,[],[],3],["images/menubutton3-sheet0.png",1853,131,199,128,64,1,0.5,0.5,[],[],3],["images/menubutton3-sheet0.png",1853,261,199,128,64,1,0.5,0.5,[],[],3]]],["Next",5,false,1,0,false,721866488237406,[["images/menubutton3-sheet0.png",1853,1,265,128,64,1,0.5,0.5,[],[],3],["images/menubutton3-sheet0.png",1853,131,265,128,64,1,0.5,0.5,[],[],3],["images/menubutton3-sheet0.png",1853,261,265,128,64,1,0.5,0.5,[],[],3]]],["Replay",5,false,1,0,false,733110140192318,[["images/menubutton3-sheet0.png",1853,1,331,128,64,1,0.5,0.5,[],[],3],["images/menubutton3-sheet0.png",1853,131,331,128,64,1,0.5,0.5,[],[],3],["images/menubutton3-sheet0.png",1853,261,331,128,64,1,0.5,0.5,[],[],3]]],["Pause",5,false,1,0,false,465698565034744,[["images/menubutton-sheet1.png",2974,425,133,64,64,1,0.5,0.5,[],[],0],["images/menubutton-sheet1.png",2974,391,199,64,64,1,0.5,0.5,[],[],0],["images/menubutton-sheet1.png",2974,261,265,64,64,1,0.5,0.5,[],[0.5,0.5,-0.5,0.5,-0.5,-0.5,0.5,-0.5],0]]],["Quit",5,false,1,0,false,738362971715732,[["images/menubutton3-sheet0.png",1853,1,397,128,64,1,0.5,0.5,[],[],3],["images/menubutton3-sheet0.png",1853,131,397,128,64,1,0.5,0.5,[],[],3],["images/menubutton3-sheet0.png",1853,261,397,128,64,1,0.5,0.5,[],[],3]]],["Training",5,false,1,0,false,939977853862783,[["images/menubutton-sheet1.png",2974,327,265,64,64,1,0.5,0.5,[],[],0],["images/menubutton-sheet1.png",2974,393,265,64,64,1,0.5,0.5,[],[],0],["images/menubutton-sheet1.png",2974,1,331,64,64,1,0.5,0.5,[],[0.5,0.5,-0.5,0.5,-0.5,-0.5,0.5,-0.5],0]]],["Options",5,false,1,0,false,615105494757856,[["images/menubutton-sheet1.png",2974,67,331,64,64,1,0.5,0.5,[],[],0],["images/menubutton-sheet1.png",2974,133,331,64,64,1,0.5,0.5,[],[],0],["images/menubutton-sheet1.png",2974,199,331,64,64,1,0.5,0.5,[],[],0]]],["Achievements",5,false,1,0,false,703234058797336,[["images/menubutton-sheet1.png",2974,265,331,64,64,1,0.5,0.5,[],[],0],["images/menubutton-sheet1.png",2974,331,331,64,64,1,0.5,0.5,[],[],0],["images/menubutton-sheet1.png",2974,397,331,64,64,1,0.5,0.5,[],[0.5,0.5,-0.5,0.5,-0.5,-0.5,0.5,-0.5],0]]],["Skins",5,false,1,0,false,691726449977578,[["images/menubutton-sheet1.png",2974,1,397,64,64,1,0.5,0.5,[],[],0],["images/menubutton-sheet1.png",2974,67,397,64,64,1,0.5,0.5,[],[],0],["images/menubutton-sheet1.png",2974,133,397,64,64,1,0.5,0.5,[],[0.5,0.5,-0.5,0.5,-0.5,-0.5,0.5,-0.5],0]]],["Inputs",5,false,1,0,false,367536688697425,[["images/menubutton3-sheet1.png",1014,1,1,128,64,1,0.5,0.5,[],[],0],["images/menubutton3-sheet1.png",1014,131,1,128,64,1,0.5,0.5,[],[],0],["images/menubutton3-sheet1.png",1014,261,1,128,64,1,0.5,0.5,[],[],0]]],["Close",5,false,1,0,false,146038606699374,[["images/menubutton-sheet0.png",3655,493,246,16,16,1,0.5,0.5,[],[],0],["images/menubutton-sheet0.png",3655,493,264,16,16,1,0.5,0.5,[],[],0],["images/menubutton-sheet0.png",3655,493,282,16,16,1,0.5,0.5,[],[0.5,0.5,-0.5,0.5,-0.5,-0.5,0.5,-0.5],0]]],["Edit",5,false,1,0,false,505224075998332,[["images/menubutton-sheet0.png",3655,459,246,32,32,1,0.5,0.5,[],[],0],["images/menubutton-sheet0.png",3655,459,280,32,32,1,0.5,0.5,[],[],0],["images/menubutton-sheet0.png",3655,459,314,32,32,1,0.5,0.5,[],[0.5,0.5,-0.5,0.5,-0.5,-0.5,0.5,-0.5],0]]],["Reload",5,false,1,0,false,501855928966961,[["images/menubutton-sheet1.png",2974,199,397,64,64,1,0.5,0.5,[],[],0],["images/menubutton-sheet1.png",2974,265,397,64,64,1,0.5,0.5,[],[],0],["images/menubutton-sheet1.png",2974,331,397,64,64,1,0.5,0.5,[],[0.5,0.5,-0.5,0.5,-0.5,-0.5,0.5,-0.5],0]]],["Authenticate",5,false,1,0,false,169430374091798,[["images/menubutton-sheet1.png",2974,397,397,64,64,1,0.5,0.5,[],[],0],["images/menubutton-sheet2.png",1675,1,1,64,64,1,0.5,0.5,[],[],0],["images/menubutton-sheet2.png",1675,67,1,64,64,1,0.5,0.5,[],[0.5,0.5,-0.5,0.5,-0.5,-0.5,0.5,-0.5],0]]],["Info",5,false,1,0,false,629867085817814,[["images/menubutton-sheet2.png",1675,133,1,64,64,1,0.5,0.5,[],[],0],["images/menubutton-sheet2.png",1675,199,1,64,64,1,0.5,0.5,[],[],0],["images/menubutton-sheet2.png",1675,265,1,64,64,1,0.5,0.5,[],[0.5,0.5,-0.5,0.5,-0.5,-0.5,0.5,-0.5],0]]],["Resume",5,false,1,0,false,251837439270519,[["images/menubutton3-sheet1.png",1014,1,67,128,64,1,0.5,0.5,[],[],0],["images/menubutton3-sheet1.png",1014,131,67,128,64,1,0.5,0.5,[],[],0],["images/menubutton3-sheet1.png",1014,261,67,128,64,1,0.5,0.5,[],[],0],["images/menubutton3-sheet1.png",1014,1,133,128,64,1,0.5,0.5,[],[],0]]]],[["Button",56,626764854028722],["Tag",57,777212514580551],["Anchor",55,237564865277888]],false,false,500608885969508,[],null],["t115",19,false,[],1,0,null,[["Default",5,false,1,0,false,716646111566444,[["images/endcarddialog-sheet0.png",155,0,0,250,250,1,0.5,0.5,[],[],4]]]],[["Dialog",64,839393412176090]],false,false,685888929229272,[],null],["t116",0,false,[],1,0,["images/inputsdialog.png",104,4],null,[["GridView",61,530618519902577]],false,false,698740825060626,[],null],["t117",0,false,[],1,0,["images/inputsdialog.png",104,4],null,[["Dialog",64,181823755769196]],false,false,949626824085312,[],null],["t118",35,false,[923581378846400,941836366546089,579965770275365,665145682518176,209428091582797,870289313099113,331397106793861,257200944302405,329765002652278,648691422126005,488960249811661,549107127422705,499348393459471],0,0,["images/spritefontdeluxe.png",1469,3],null,[],false,false,211369145944098,[],null],["t119",19,false,[320220296090686],4,0,null,[["Default",0,false,1,0,false,942960222315004,[["images/levelbutton-sheet0.png",207,1,1,32,32,1,0.5,0.5,[],[],0],["images/levelbutton-sheet0.png",207,35,1,32,32,1,0.5,0.5,[],[],0],["images/levelbutton-sheet0.png",207,69,1,32,32,1,0.5,0.5,[],[],0],["images/levelbutton-sheet0.png",207,1,35,32,32,1,0.5,0.5,[],[],0]]]],[["Button",56,377737504087157],["Fade",54,266961703028516],["GridViewDataBind",60,188355250862660],["GameObject",58,724374395100818]],false,false,923735123705857,[],null],["t120",35,false,[923581378846400,941836366546089,579965770275365,665145682518176,209428091582797,870289313099113,331397106793861,257200944302405,329765002652278,648691422126005,488960249811661,549107127422705,499348393459471],1,0,["images/spritefontdeluxe.png",1469,3],null,[["GridViewDataBind",60,512325915159345]],false,false,657833063297561,[],null],["t121",35,false,[923581378846400,941836366546089,579965770275365,665145682518176,209428091582797,870289313099113,331397106793861,257200944302405,329765002652278,648691422126005,488960249811661,549107127422705,499348393459471],1,0,["images/spritefontdeluxe.png",1469,3],null,[["GridViewDataBind",60,444010086690192]],false,false,945624918494170,[],null],["t122",35,false,[923581378846400,941836366546089,579965770275365,665145682518176,209428091582797,870289313099113,331397106793861,257200944302405,329765002652278,648691422126005,488960249811661,549107127422705,499348393459471],1,0,["images/spritefontdeluxe.png",1469,3],null,[["GridViewDataBind",60,194977158738795]],false,false,295275278612708,[],null],["t123",35,false,[923581378846400,941836366546089,579965770275365,665145682518176,209428091582797,870289313099113,331397106793861,257200944302405,329765002652278,648691422126005,488960249811661,549107127422705,499348393459471],1,0,["images/spritefontdeluxe.png",1469,3],null,[["GridViewDataBind",60,466374552991123]],false,false,551413038289806,[],null],["t124",35,false,[923581378846400,941836366546089,579965770275365,665145682518176,209428091582797,870289313099113,331397106793861,257200944302405,329765002652278,648691422126005,488960249811661,549107127422705,499348393459471],1,0,["images/spritefontdeluxe.png",1469,3],null,[["GridViewDataBind",60,591756357361620]],false,false,810701524457933,[],null],["t125",19,false,[],2,0,null,[["Default",5,false,1,0,false,412795243691263,[["images/endcarddialog-sheet0.png",155,0,0,250,250,1,0.5,0.5,[],[],4]]]],[["Dialog",64,741898110610088],["Timer",43,148527827725193]],false,false,611323432718754,[],null],["t126",19,false,[],1,0,null,[["Default",5,false,1,0,false,976334471003911,[["images/endcarddialog-sheet0.png",155,0,0,250,250,1,0.5,0.5,[],[],4]]]],[["Dialog",64,141547365943778]],false,false,688564396454624,[],null],["t127",19,false,[],1,0,null,[["Default",5,false,1,0,false,908039882906396,[["images/endcarddialog-sheet0.png",155,0,0,250,250,1,0.5,0.5,[],[],4]]]],[["Dialog",64,435650113838940]],false,false,452621990911121,[],null],["t128",0,false,[],1,0,["images/inputsdialog.png",104,4],null,[["Dialog",64,204385127188126]],false,false,744977740637763,[],null],["t129",19,false,[],2,0,null,[["Default",5,false,1,0,false,365569720149582,[["images/endcarddialog-sheet0.png",155,0,0,250,250,1,0.5,0.5,[],[],4]]]],[["Dialog",64,503550370379173],["Tag",57,804754454909664]],false,false,881506757670642,[],null],["t130",37,false,[],1,0,null,null,[["GridViewDataBind",60,640954074975440]],false,false,373617037479652,[],null],["t131",19,false,[738125659224488],0,0,null,[["head",5,false,1,0,false,586528364646854,[["images/skin1-sheet0.png",302,1,1,32,32,1,0.5,1,[],[],0]]],["body",5,false,1,0,false,501405573101640,[["images/skin1-sheet0.png",302,35,1,8,16,1,0.5,0.5,[],[],0]]],["leftarm",5,false,1,0,false,590766387206457,[["images/skin1-sheet0.png",302,45,1,4,8,1,1,0,[],[],0]]],["leftfoot",5,false,1,0,false,311902843576176,[["images/skin1-sheet0.png",302,45,1,4,8,1,0,0,[],[],0]]],["lefthand",5,false,1,0,false,799218930109450,[["images/skin1-sheet0.png",302,45,1,4,8,1,1,0,[],[],0]]],["leftleg",5,false,1,0,false,171712081635501,[["images/skin1-sheet0.png",302,45,1,4,8,1,0,0,[],[],0]]],["rightarm",5,false,1,0,false,946401635859955,[["images/skin1-sheet0.png",302,45,1,4,8,1,1,0,[],[],0]]],["rightfoot",5,false,1,0,false,435447741590181,[["images/skin1-sheet0.png",302,45,1,4,8,1,0,0,[],[],0]]],["righthand",5,false,1,0,false,178021687844035,[["images/skin1-sheet0.png",302,45,1,4,8,1,1,0,[],[],0]]],["rightleg",5,false,1,0,false,190596195474302,[["images/skin1-sheet0.png",302,45,1,4,8,1,0,0,[],[],0]]]],[],false,false,609307711269423,[],null],["t132",19,false,[738125659224488],0,0,null,[["head",10,true,1,0,false,297291882454321,[["images/skin3-sheet0.png",344,1,1,32,32,1,0.5,1,[],[],0],["images/skin3-sheet1.png",273,0,0,32,32,1,0.5,1,[],[],0],["images/skin3-sheet2.png",259,0,0,32,32,1,0.5,1,[],[],0]]],["body",5,false,1,0,false,664644973898743,[["images/skin3-sheet0.png",344,35,1,8,16,1,0.5,0.5,[],[],0]]],["leftarm",5,false,1,0,false,713742973837430,[["images/skin3-sheet0.png",344,45,1,4,8,1,1,0,[],[],0]]],["leftfoot",5,false,1,0,false,617093358824485,[["images/skin3-sheet0.png",344,51,1,4,8,1,0,0,[],[],0]]],["lefthand",5,false,1,0,false,785004279422429,[["images/skin3-sheet0.png",344,57,1,4,8,1,1,0,[],[],0]]],["leftleg",5,false,1,0,false,618602163765438,[["images/skin3-sheet0.png",344,45,11,4,8,1,0,0,[],[],0]]],["rightarm",5,false,1,0,false,506223034350716,[["images/skin3-sheet0.png",344,45,1,4,8,1,1,0,[],[],0]]],["rightfoot",5,false,1,0,false,172987515514585,[["images/skin3-sheet0.png",344,51,1,4,8,1,0,0,[],[],0]]],["righthand",5,false,1,0,false,828698984635711,[["images/skin3-sheet0.png",344,57,1,4,8,1,1,0,[],[],0]]],["rightleg",5,false,1,0,false,728975509932883,[["images/skin3-sheet0.png",344,45,11,4,8,1,0,0,[],[],0]]]],[],false,false,276128244783084,[],null],["t133",19,false,[738125659224488],0,0,null,[["head",5,true,1,0,false,334443364144159,[["images/skin2-sheet0.png",1179,1,1,64,64,1,0.5,1,[],[],0],["images/skin2-sheet0.png",1179,67,1,64,64,1,0.5,1,[],[0.5,-1,0.5,0,-0.5,0,-0.5,-1],0],["images/skin2-sheet0.png",1179,133,1,64,64,1,0.5,1,[],[0.5,0,-0.5,0,-0.5,-1,0.5,-1],0],["images/skin2-sheet0.png",1179,1,67,64,64,1,0.5,1,[],[-0.5,0,-0.5,-1,0.5,-1,0.5,0],0]]],["body",5,false,1,0,false,758947595186202,[["images/skin2-sheet0.png",1179,199,1,16,32,1,0.5,0.5,[],[],0]]],["leftarm",5,false,1,0,false,495736901887677,[["images/skin2-sheet0.png",1179,217,1,8,16,1,1,0,[],[],0]]],["leftfoot",5,false,1,0,false,448939023603913,[["images/skin2-sheet0.png",1179,217,1,8,16,1,0,0,[],[],0]]],["lefthand",5,false,1,0,false,900474251252969,[["images/skin2-sheet0.png",1179,217,1,8,16,1,1,0,[],[],0]]],["leftleg",5,false,1,0,false,705158360586566,[["images/skin2-sheet0.png",1179,217,1,8,16,1,0,0,[],[],0]]],["rightarm",5,false,1,0,false,130588840300645,[["images/skin2-sheet0.png",1179,227,1,8,16,1,1,0,[],[],0]]],["rightfoot",5,false,1,0,false,973435076297212,[["images/skin2-sheet0.png",1179,227,1,8,16,1,0,0,[],[],0]]],["righthand",5,false,1,0,false,512268473277995,[["images/skin2-sheet0.png",1179,227,1,8,16,1,1,0,[],[],0]]],["rightleg",5,false,1,0,false,291662644020972,[["images/skin2-sheet0.png",1179,227,1,8,16,1,0,0,[],[],0]]]],[],false,false,343777229745406,[],null],["t134",19,false,[738125659224488],0,0,null,[["head",10,true,1,0,false,464773679927210,[["images/skin4-sheet0.png",253,0,0,64,64,1,0.5,1,[],[],0],["images/skin4-sheet1.png",231,0,0,64,64,1,0.5,1,[],[],0],["images/skin4-sheet2.png",243,0,0,64,64,1,0.5,1,[],[],0]]],["body",5,false,1,0,false,408968364278574,[["images/skin2-sheet0.png",1179,199,1,16,32,1,0.5,0.5,[],[],0]]],["leftarm",5,false,1,0,false,985102610002960,[["images/skin2-sheet0.png",1179,217,1,8,16,1,1,0,[],[],0]]],["leftfoot",5,false,1,0,false,914075526427074,[["images/skin2-sheet0.png",1179,217,1,8,16,1,0,0,[],[],0]]],["lefthand",5,false,1,0,false,415628585289795,[["images/skin2-sheet0.png",1179,217,1,8,16,1,1,0,[],[],0]]],["leftleg",5,false,1,0,false,898279410974090,[["images/skin2-sheet0.png",1179,217,1,8,16,1,0,0,[],[],0]]],["rightarm",5,false,1,0,false,209440463873510,[["images/skin2-sheet0.png",1179,227,1,8,16,1,1,0,[],[],0]]],["rightfoot",5,false,1,0,false,666155140732014,[["images/skin2-sheet0.png",1179,227,1,8,16,1,0,0,[],[],0]]],["righthand",5,false,1,0,false,905192247070826,[["images/skin2-sheet0.png",1179,227,1,8,16,1,1,0,[],[],0]]],["rightleg",5,false,1,0,false,819610866112132,[["images/skin2-sheet0.png",1179,227,1,8,16,1,0,0,[],[],0]]]],[],false,false,749715780337674,[],null],["t135",19,false,[738125659224488],0,0,null,[["head",10,true,1,0,false,924479293630781,[["images/skin5-sheet0.png",392,1,1,35,36,1,0.5142857432365418,0.9722222089767456,[],[-0.4571428298950195,-0.8888888955116272,0.457143247127533,-0.8888888955116272,0.457143247127533,-2.384185791015625e-007,-0.4571428298950195,-2.384185791015625e-007],0]]],["body",5,false,1,0,false,528274967503134,[["images/skin5-sheet0.png",392,38,1,14,24,1,0.5714285969734192,0.5416666865348816,[],[-0.2857145965099335,-0.3333336710929871,0.2857143878936768,-0.3333336710929871,0.2857143878936768,0.3333333134651184,-0.2857145965099335,0.3333333134651184],0]]],["leftarm",5,false,1,0,false,903763803684180,[["images/skin5-sheet0.png",392,54,15,4,8,1,1,0,[],[],0]]],["leftfoot",5,false,1,0,false,954573489767469,[["images/skin5-sheet0.png",392,54,1,7,12,1,0.1428571492433548,0.25,[],[-1.490116119384766e-007,0,0.5714288949966431,0,0.5714288949966431,0.6666669845581055,-1.490116119384766e-007,0.6666669845581055],0]]],["lefthand",5,false,1,0,false,924824772261561,[["images/skin5-sheet0.png",392,54,15,4,8,1,1,0,[],[],0]]],["leftleg",5,false,1,0,false,427657216442209,[["images/skin5-sheet0.png",392,54,15,4,8,1,0,0,[],[],0]]],["rightarm",5,false,1,0,false,628673134242238,[["images/skin5-sheet0.png",392,54,15,4,8,1,1,0,[],[],0]]],["rightfoot",5,false,1,0,false,228845687991178,[["images/skin5-sheet0.png",392,54,1,7,12,1,0.1428571492433548,0.25,[],[-1.490116119384766e-007,0,0.5714288949966431,0,0.5714288949966431,0.6666669845581055,-1.490116119384766e-007,0.6666669845581055],0]]],["righthand",5,false,1,0,false,149374930037293,[["images/skin5-sheet0.png",392,54,15,4,8,1,1,0,[],[],0]]],["rightleg",5,false,1,0,false,948439677313010,[["images/skin5-sheet0.png",392,54,15,4,8,1,0,0,[],[],0]]]],[],false,false,273803826237967,[],null],["t136",19,false,[738125659224488],0,0,null,[["head",5,true,1,0,false,562398620568247,[["images/skin6-sheet0.png",1007,1,1,39,33,1,0.3333333432674408,0.9090909361839294,[],[-0.3333333432674408,-0.8787879347801209,0.4743586480617523,-0.8787879347801209,0.4743586480617523,0.09090906381607056,-0.3333333432674408,0.09090906381607056],0]]],["body",5,false,1,0,false,339601533170442,[["images/skin6-sheet0.png",1007,42,1,16,32,1,0.5,0.5,[],[],0]]],["leftarm",5,false,1,0,false,498829552733148,[["images/skin6-sheet1.png",178,28,1,10,18,1,0.8999999761581421,0.0555555559694767,[],[],3]]],["leftfoot",5,false,1,0,false,856435698740357,[["images/skin6-sheet1.png",178,1,1,13,18,1,0.07692307978868485,0.0555555559694767,[],[],3]]],["lefthand",5,false,1,0,false,405856394676708,[["images/skin6-sheet0.png",1007,1,36,38,22,1,0.289473682641983,0.04545454680919647,[],[-0.2631578743457794,-0.04545454680919647,0.3947373330593109,-0.04545454680919647,0.3947373330593109,0.9090904593467712,-0.2631578743457794,0.9090904593467712],0]]],["leftleg",5,false,1,0,false,109306734302204,[["images/skin6-sheet0.png",1007,42,35,13,20,1,0.1538461595773697,0.05000000074505806,[],[],0]]],["rightarm",5,false,1,0,false,912165208716697,[["images/skin6-sheet1.png",178,28,1,10,18,1,0.8999999761581421,0.0555555559694767,[],[],3]]],["rightfoot",5,false,1,0,false,619978000092552,[["images/skin6-sheet1.png",178,1,1,13,18,1,0.07692307978868485,0.0555555559694767,[],[],3]]],["righthand",5,false,1,0,false,880994010234643,[["images/skin6-sheet1.png",178,16,1,10,20,1,0.8999999761581421,0.05000000074505806,[],[],3]]],["rightleg",5,false,1,0,false,219147220087789,[["images/skin6-sheet0.png",1007,42,35,13,20,1,0.1538461595773697,0.05000000074505806,[],[],0]]]],[],false,false,769497141627751,[],null],["t137",19,false,[738125659224488],0,0,null,[["head",5,false,1,0,false,932170991951091,[["images/skin7-sheet0.png",395,1,1,32,32,1,0.5,1,[],[],0]]],["body",5,false,1,0,false,150705902285545,[["images/skin7-sheet0.png",395,35,1,8,16,1,0.5,0.5,[],[],0]]],["leftarm",5,false,1,0,false,716756778454680,[["images/skin7-sheet0.png",395,45,1,4,8,1,1,0,[],[],0]]],["leftfoot",5,false,1,0,false,658619312765516,[["images/skin7-sheet0.png",395,51,1,4,8,1,0,0,[],[],0]]],["lefthand",5,false,1,0,false,112422052682118,[["images/skin7-sheet0.png",395,45,1,4,8,1,1,0,[],[],0]]],["leftleg",5,false,1,0,false,920888228742045,[["images/skin7-sheet0.png",395,57,1,4,8,1,0,0,[],[],0]]],["rightarm",5,false,1,0,false,440320143440439,[["images/skin7-sheet0.png",395,45,1,4,8,1,1,0,[],[],0]]],["rightfoot",5,false,1,0,false,204825843453662,[["images/skin7-sheet0.png",395,51,1,4,8,1,0,0,[],[],0]]],["righthand",5,false,1,0,false,407975104216960,[["images/skin7-sheet0.png",395,45,1,4,8,1,1,0,[],[],0]]],["rightleg",5,false,1,0,false,743817963804189,[["images/skin7-sheet0.png",395,57,1,4,8,1,0,0,[],[],0]]]],[],false,false,636513047909207,[],null],["t138",19,false,[738125659224488],0,0,null,[["head",10,true,1,0,false,552827855344850,[["images/skin8-sheet0.png",412,1,1,35,36,1,0.5142857432365418,0.9722222089767456,[],[-0.4571428298950195,-0.8888888955116272,0.457143247127533,-0.8888888955116272,0.457143247127533,-2.384185791015625e-007,-0.4571428298950195,-2.384185791015625e-007],0]]],["body",5,false,1,0,false,252743028965124,[["images/skin8-sheet0.png",412,38,1,14,24,1,0.5714285969734192,0.5416666865348816,[],[-0.2857145965099335,-0.3333336710929871,0.2857143878936768,-0.3333336710929871,0.2857143878936768,0.3333333134651184,-0.2857145965099335,0.3333333134651184],0]]],["leftarm",5,false,1,0,false,299145190691253,[["images/skin8-sheet0.png",412,54,15,4,8,1,1,0,[],[],0]]],["leftfoot",5,false,1,0,false,460519003385809,[["images/skin8-sheet0.png",412,54,1,7,12,1,0.1428571492433548,0.25,[],[-1.490116119384766e-007,0,0.5714288949966431,0,0.5714288949966431,0.6666669845581055,-1.490116119384766e-007,0.6666669845581055],0]]],["lefthand",5,false,1,0,false,397427208353495,[["images/skin8-sheet0.png",412,54,15,4,8,1,1,0,[],[],0]]],["leftleg",5,false,1,0,false,143213205499755,[["images/skin8-sheet0.png",412,54,15,4,8,1,0,0,[],[],0]]],["rightarm",5,false,1,0,false,409110416848735,[["images/skin8-sheet0.png",412,54,15,4,8,1,1,0,[],[],0]]],["rightfoot",5,false,1,0,false,238496009792005,[["images/skin8-sheet0.png",412,54,1,7,12,1,0.1428571492433548,0.25,[],[-1.490116119384766e-007,0,0.5714288949966431,0,0.5714288949966431,0.6666669845581055,-1.490116119384766e-007,0.6666669845581055],0]]],["righthand",5,false,1,0,false,882054892698895,[["images/skin8-sheet0.png",412,54,15,4,8,1,1,0,[],[],0]]],["rightleg",5,false,1,0,false,357868412112939,[["images/skin8-sheet0.png",412,54,15,4,8,1,0,0,[],[],0]]]],[],false,false,685369559089722,[],null],["t139",19,false,[738125659224488],0,0,null,[["head",10,true,1,0,false,376329279893349,[["images/skin9-sheet0.png",404,1,1,35,36,1,0.5142857432365418,0.9722222089767456,[],[-0.4571428298950195,-0.8888888955116272,0.457143247127533,-0.8888888955116272,0.457143247127533,-2.384185791015625e-007,-0.4571428298950195,-2.384185791015625e-007],0]]],["body",5,false,1,0,false,426917501551058,[["images/skin9-sheet0.png",404,38,1,14,24,1,0.5714285969734192,0.5416666865348816,[],[-0.2857145965099335,-0.3333336710929871,0.2857143878936768,-0.3333336710929871,0.2857143878936768,0.3333333134651184,-0.2857145965099335,0.3333333134651184],0]]],["leftarm",5,false,1,0,false,436471237207458,[["images/skin9-sheet0.png",404,54,15,4,8,1,1,0,[],[],0]]],["leftfoot",5,false,1,0,false,480417508185555,[["images/skin9-sheet0.png",404,54,1,7,12,1,0.1428571492433548,0.25,[],[-1.490116119384766e-007,0,0.5714288949966431,0,0.5714288949966431,0.6666669845581055,-1.490116119384766e-007,0.6666669845581055],0]]],["lefthand",5,false,1,0,false,713360059785046,[["images/skin9-sheet0.png",404,54,15,4,8,1,1,0,[],[],0]]],["leftleg",5,false,1,0,false,781983332145779,[["images/skin9-sheet0.png",404,54,15,4,8,1,0,0,[],[],0]]],["rightarm",5,false,1,0,false,584647259700945,[["images/skin9-sheet0.png",404,54,15,4,8,1,1,0,[],[],0]]],["rightfoot",5,false,1,0,false,199397123718853,[["images/skin9-sheet0.png",404,54,1,7,12,1,0.1428571492433548,0.25,[],[-1.490116119384766e-007,0,0.5714288949966431,0,0.5714288949966431,0.6666669845581055,-1.490116119384766e-007,0.6666669845581055],0]]],["righthand",5,false,1,0,false,768767322331106,[["images/skin9-sheet0.png",404,54,15,4,8,1,1,0,[],[],0]]],["rightleg",5,false,1,0,false,219324897915342,[["images/skin9-sheet0.png",404,54,15,4,8,1,0,0,[],[],0]]]],[],false,false,638968655346095,[],null],["t140",19,false,[738125659224488],0,0,null,[["head",2,true,1,0,false,292481362996197,[["images/skin10-sheet0.png",425,1,1,32,32,1,0.5,1,[],[],0],["images/skin10-sheet1.png",307,0,0,32,32,1,0.5,1,[],[],0]]],["body",5,false,1,0,false,125074057582852,[["images/skin10-sheet0.png",425,35,1,12,19,1,0.5,0.5263158082962036,[],[],0]]],["leftarm",5,false,1,0,false,387661835580695,[["images/skin10-sheet0.png",425,49,14,6,10,1,0.8333333134651184,0.1000000014901161,[],[],0]]],["leftfoot",5,false,1,0,false,403707367082950,[["images/skin10-sheet0.png",425,49,1,10,11,1,0.1000000014901161,0.1818181872367859,[],[],0]]],["lefthand",5,false,1,0,false,580333082554609,[["images/skin10-sheet0.png",425,57,14,6,10,1,0.8333333134651184,0.1000000014901161,[],[],0]]],["leftleg",5,false,1,0,false,473028884649302,[["images/skin10-sheet0.png",425,49,14,6,10,1,0.1666666716337204,0.1000000014901161,[],[],0]]],["rightarm",5,false,1,0,false,700047659957294,[["images/skin10-sheet0.png",425,49,14,6,10,1,0.8333333134651184,0.1000000014901161,[],[],0]]],["rightfoot",5,false,1,0,false,390540653476733,[["images/skin10-sheet0.png",425,49,1,10,11,1,0.2000000029802322,0.09090909361839294,[],[],0]]],["righthand",5,false,1,0,false,705407542059382,[["images/skin10-sheet0.png",425,57,14,6,10,1,0.8333333134651184,0.1000000014901161,[],[],0]]],["rightleg",5,false,1,0,false,955453701449809,[["images/skin10-sheet0.png",425,49,14,6,10,1,0.1666666716337204,0.1000000014901161,[],[],0]]]],[],false,false,364102596219366,[],null],["t141",19,false,[738125659224488],0,0,null,[["head",20,true,1,0,false,351384106443255,[["images/skin11-sheet0.png",655,1,1,32,32,1,0.5,1,[],[],0]]],["body",20,true,1,0,true,769041691143763,[["images/skin11-sheet0.png",655,35,1,20,22,1,0.6499999761581421,0.5909090638160706,[],[],0],["images/skin11-sheet0.png",655,35,25,20,22,1,0.6499999761581421,0.5909090638160706,[],[],0],["images/skin11-sheet0.png",655,1,35,20,22,1,0.6499999761581421,0.5909090638160706,[],[],0]]],["leftarm",5,false,1,0,false,440111551193805,[["images/skin11-sheet0.png",655,57,25,4,8,1,1,0,[],[],0]]],["leftfoot",5,false,1,0,false,972782717409259,[["images/skin11-sheet0.png",655,23,49,11,11,1,0.09090909361839294,0.1818181872367859,[],[],0]]],["lefthand",5,false,1,0,false,511960549591417,[["images/skin11-sheet0.png",655,57,1,6,10,1,0.6666666865348816,0.2000000029802322,[],[],0]]],["leftleg",5,false,1,0,false,594084523305602,[["images/skin11-sheet0.png",655,57,13,6,10,1,0.1666666716337204,0.1000000014901161,[],[],0]]],["rightarm",5,false,1,0,false,541433386931787,[["images/skin11-sheet0.png",655,57,25,4,8,1,1,0,[],[],0]]],["rightfoot",5,false,1,0,false,698732172921263,[["images/skin11-sheet0.png",655,36,49,11,11,1,0.1818181872367859,0.09090909361839294,[],[],0]]],["righthand",5,false,1,0,false,519775266421073,[["images/skin11-sheet0.png",655,57,1,6,10,1,0.6666666865348816,0.2000000029802322,[],[],0]]],["rightleg",5,false,1,0,false,160890903690502,[["images/skin11-sheet0.png",655,57,13,6,10,1,0.1666666716337204,0.1000000014901161,[],[],0]]]],[],false,false,358854174928549,[],null],["t142",19,false,[738125659224488],0,0,null,[["head",20,true,1,0,false,267429438687956,[["images/skin12-sheet0.png",547,1,1,32,32,30,0.5,1,[],[],3],["images/skin12-sheet0.png",547,35,1,32,32,5,0.5,1,[],[],3],["images/skin12-sheet0.png",547,1,1,32,32,15,0.5,1,[],[],3],["images/skin12-sheet0.png",547,69,1,32,32,5,0.5,1,[],[],3],["images/skin12-sheet0.png",547,1,1,32,32,15,0.5,1,[],[],3],["images/skin12-sheet0.png",547,1,35,32,32,1,0.5,1,[],[],3],["images/skin12-sheet0.png",547,35,35,32,32,1,0.5,1,[],[],3],["images/skin12-sheet0.png",547,69,35,32,32,1,0.5,1,[],[],3]]],["body",5,false,1,0,false,245659075907620,[["images/skin12-sheet0.png",547,103,1,8,16,1,0.5,0.5,[],[],3]]],["leftarm",5,false,1,0,false,443866854860010,[["images/skin12-sheet0.png",547,113,1,4,8,1,1,0,[],[],3]]],["leftfoot",5,false,1,0,false,434400064915869,[["images/skin12-sheet0.png",547,119,1,4,8,1,0,0,[],[],3]]],["lefthand",5,false,1,0,false,903649206406083,[["images/skin12-sheet0.png",547,113,11,4,8,1,1,0,[],[],3]]],["leftleg",5,false,1,0,false,359947523490470,[["images/leftarm-sheet0.png",98,0,0,4,8,1,0,0,[],[],4]]],["rightarm",5,false,1,0,false,983930214931091,[["images/skin12-sheet0.png",547,113,1,4,8,1,1,0,[],[],3]]],["rightfoot",5,false,1,0,false,935755059307597,[["images/skin12-sheet0.png",547,119,1,4,8,1,0,0,[],[],3]]],["righthand",5,false,1,0,false,552828446374398,[["images/skin12-sheet0.png",547,113,11,4,8,1,1,0,[],[],3]]],["rightleg",5,false,1,0,false,986680620526232,[["images/leftarm-sheet0.png",98,0,0,4,8,1,0,0,[],[],4]]]],[],false,false,940654328399812,[],null],["t143",19,false,[738125659224488],0,0,null,[["head",20,true,1,0,false,940378381697285,[["images/skin13-sheet0.png",481,1,1,32,32,30,0.5,1,[],[],0]]],["body",5,false,1,0,false,326575768750521,[["images/skin13-sheet0.png",481,35,1,8,16,1,0.5,0.5,[],[],0]]],["leftarm",5,false,1,0,false,994630352444915,[["images/skin13-sheet0.png",481,45,1,4,8,1,1,0,[],[],0]]],["leftfoot",5,false,1,0,false,145739985623385,[["images/skin13-sheet0.png",481,51,1,4,8,1,0,0,[],[],0]]],["lefthand",5,false,1,0,false,818400516751454,[["images/skin13-sheet0.png",481,57,1,4,8,1,1,0,[],[],0]]],["leftleg",5,false,1,0,false,450158348833093,[["images/skin13-sheet0.png",481,45,11,4,8,1,0,0,[],[],0]]],["rightarm",5,false,1,0,false,706072658919547,[["images/skin13-sheet0.png",481,45,1,4,8,1,1,0,[],[],0]]],["rightfoot",5,false,1,0,false,767408654982267,[["images/skin13-sheet0.png",481,51,11,4,8,1,0,0,[],[],0]]],["righthand",5,false,1,0,false,312731550542322,[["images/skin13-sheet0.png",481,57,1,4,8,1,1,0,[],[],0]]],["rightleg",5,false,1,0,false,379457506396337,[["images/skin13-sheet0.png",481,45,11,4,8,1,0,0,[],[],0]]]],[],false,false,410493214869395,[],null],["t144",19,false,[738125659224488],0,0,null,[["head",5,true,1,0,false,195416156953393,[["images/skin14-sheet0.png",831,1,1,64,66,1,0.5,0.9696969985961914,[],[],0]]],["body",5,false,1,0,false,413869035564537,[["images/skin14-sheet0.png",831,67,1,27,40,1,0.6666666865348816,0.5,[],[],0]]],["leftarm",5,false,1,0,false,181770821964509,[["images/skin14-sheet0.png",831,108,1,13,20,1,0.8461538553237915,0.1500000059604645,[],[-0.8461538553237915,-0.1500000059604645,0.1538461446762085,-0.1500000059604645,0.1538461446762085,0.7999999523162842,-0.8461538553237915,0.7999999523162842],0]]],["leftfoot",5,false,1,0,false,903371391723384,[["images/skin14-sheet0.png",831,96,37,10,18,1,0.1000000014901161,0.0555555559694767,[],[0,4.470348358154297e-008,0.7999999523162842,4.470348358154297e-008,0.7999999523162842,0.888888418674469,0,0.888888418674469],0]]],["lefthand",5,false,1,0,false,282546756452911,[["images/skin14-sheet0.png",831,79,43,8,16,1,1,0,[],[],0]]],["leftleg",5,false,1,0,false,746355951524082,[["images/skin14-sheet0.png",831,67,43,10,18,1,0.1000000014901161,0.0555555559694767,[],[],0]]],["rightarm",5,false,1,0,false,731332587317094,[["images/skin14-sheet0.png",831,108,23,13,20,1,0.8461538553237915,0.1500000059604645,[],[-0.8461538553237915,-0.1500000059604645,0.1538461446762085,-0.1500000059604645,0.1538461446762085,0.7999999523162842,-0.8461538553237915,0.7999999523162842],0]]],["rightfoot",5,false,1,0,false,334253827234981,[["images/skin14-sheet0.png",831,79,43,8,16,1,0,0,[],[],0]]],["righthand",5,false,1,0,false,748560160332068,[["images/skin14-sheet0.png",831,96,37,10,18,1,0.8999999761581421,0.0555555559694767,[],[],0]]],["rightleg",5,false,1,0,false,947956501503171,[["images/skin14-sheet0.png",831,96,1,10,34,1,0.1000000014901161,0.02941176481544972,[],[0,3.539025783538818e-008,0.7999999523162842,3.539025783538818e-008,0.7999999523162842,0.4705882370471954,0,0.4705882370471954],0]]]],[],false,false,728864176616224,[],null],["t145",19,false,[738125659224488],0,0,null,[["head",5,true,1,0,false,727236204598692,[["images/skin15-sheet0.png",655,1,1,64,66,1,0.5,0.9696969985961914,[],[],0]]],["body",5,false,1,0,false,836608104763543,[["images/skin15-sheet0.png",655,67,1,27,40,1,0.6666666865348816,0.5,[],[],0]]],["leftarm",5,false,1,0,false,913629532892307,[["images/skin15-sheet0.png",655,106,1,13,19,1,0.8461538553237915,0.1578947305679321,[],[],0]]],["leftfoot",5,false,1,0,false,342132682021319,[["images/skin15-sheet0.png",655,106,22,8,16,1,0,0,[],[],0]]],["lefthand",5,false,1,0,false,435669605762689,[["images/skin14-sheet0.png",831,79,43,8,16,1,1,0,[],[],0]]],["leftleg",5,false,1,0,false,774653325687621,[["images/skin15-sheet0.png",655,116,22,8,16,1,0,0,[],[],0]]],["rightarm",5,false,1,0,false,546055695541782,[["images/skin15-sheet0.png",655,106,1,13,19,1,0.8461538553237915,0.1578947305679321,[],[],0]]],["rightfoot",5,false,1,0,false,544493686337452,[["images/skin14-sheet0.png",831,79,43,8,16,1,0,0,[],[],0]]],["righthand",5,false,1,0,false,104829166323496,[["images/skin15-sheet0.png",655,106,22,8,16,1,1,0,[],[],0]]],["rightleg",5,false,1,0,false,359900140532704,[["images/skin15-sheet0.png",655,96,1,8,32,1,0,0,[],[0,0,1,0,1,0.5,0,0.5],0]]]],[],false,false,728540355245830,[],null],["t146",19,false,[738125659224488],0,0,null,[["head",12,true,1,0,false,791708716381825,[["images/pulse-sheet0.png",685,1,1,64,64,10,0.5,1,[],[],0],["images/pulse-sheet1.png",468,0,0,64,64,1,0.5,1,[],[],0],["images/pulse-sheet2.png",467,0,0,64,64,1,0.5,1,[],[],0]]],["body",5,false,1,0,false,514467720470438,[["images/pulse-sheet0.png",685,67,1,32,39,1,0.75,0.5641025900840759,[],[],0]]],["leftarm",5,false,1,0,false,608995714897647,[["images/pulse-sheet0.png",685,101,1,8,16,1,1,0,[],[],0]]],["leftfoot",5,false,1,0,false,293932378936584,[["images/pulse-sheet0.png",685,111,1,8,16,1,0,0,[],[0.125,0.06250009685754776,1,0.06250009685754776,1,1,0.125,1],0]]],["lefthand",5,false,1,0,false,858496119844265,[["images/pulse-sheet0.png",685,101,19,8,16,1,0.875,0,[],[],0]]],["leftleg",5,false,1,0,false,465471113938985,[["images/pulse-sheet0.png",685,111,19,8,16,1,0,0,[],[],0]]],["rightarm",5,false,1,0,false,348171073292074,[["images/pulse-sheet0.png",685,101,1,8,16,1,1,0,[],[],0]]],["rightfoot",5,false,1,0,false,987751822360879,[["images/pulse-sheet0.png",685,111,1,8,16,1,0,0,[],[],0]]],["righthand",5,false,1,0,false,382118316338397,[["images/pulse-sheet0.png",685,101,19,8,16,1,0.875,0,[],[],0]]],["rightleg",5,false,1,0,false,300665224789012,[["images/pulse-sheet0.png",685,111,19,8,16,1,0,0,[],[0.125,0.06250009685754776,1,0.06250009685754776,1,1,0.125,1],0]]]],[],false,false,922253138393706,[],null],["t147",19,false,[738125659224488],0,0,null,[["head",20,true,1,0,false,184824919670176,[["images/skin16-sheet0.png",417,1,1,32,32,30,0.5,1,[],[],0]]],["body",5,false,1,0,false,738499574926719,[["images/skin16-sheet0.png",417,35,1,8,16,1,0.5,0.5,[],[],0]]],["leftarm",5,false,1,0,false,174779992741858,[["images/skin16-sheet0.png",417,45,1,4,8,1,1,0,[],[],0]]],["leftfoot",5,false,1,0,false,955560354201024,[["images/skin16-sheet0.png",417,51,1,4,8,1,0,0,[],[],0]]],["lefthand",5,false,1,0,false,357119410134894,[["images/skin16-sheet0.png",417,57,1,4,8,1,1,0,[],[],0]]],["leftleg",5,false,1,0,false,565098588453748,[["images/skin16-sheet0.png",417,57,1,4,8,1,0,0,[],[],0]]],["rightarm",5,false,1,0,false,384877029705096,[["images/skin16-sheet0.png",417,57,1,4,8,1,1,0,[],[],0]]],["rightfoot",5,false,1,0,false,126142599003240,[["images/skin16-sheet0.png",417,57,1,4,8,1,0,0,[],[],0]]],["righthand",5,false,1,0,false,974803536402491,[["images/skin16-sheet0.png",417,45,11,4,8,1,1,0,[],[],0]]],["rightleg",5,false,1,0,false,149669472061123,[["images/skin16-sheet0.png",417,57,1,4,8,1,0,0,[],[],0]]]],[],false,false,138469785104112,[],null],["t148",19,false,[738125659224488],0,0,null,[["head",5,true,1,0,false,297342737279265,[["images/skin17-sheet0.png",934,1,1,64,64,1,0.53125,1,[],[-0.515625,-0.984375,0.46875,-0.984375,0.46875,0,-0.515625,0],0]]],["body",5,false,1,0,false,721595337313380,[["images/skin17-sheet0.png",934,67,1,32,38,1,0.75,0.5789473652839661,[],[],0]]],["leftarm",5,false,1,0,false,630311631107770,[["images/skin17-sheet0.png",934,101,19,8,16,1,1,0,[],[],0]]],["leftfoot",5,false,1,0,false,990866477622335,[["images/skin17-sheet0.png",934,101,1,12,16,1,0,0,[],[0.1000000014901161,0.06250009685754776,0.8999999761581421,0.06250009685754776,0.8999999761581421,1,0.1000000014901161,1],0]]],["lefthand",5,false,1,0,false,484012373152263,[["images/skin17-sheet0.png",934,111,19,8,16,1,1,0,[],[],0]]],["leftleg",5,false,1,0,false,656665552277265,[["images/skin17-sheet0.png",934,101,37,8,16,1,0,0,[],[],0]]],["rightarm",5,false,1,0,false,124331087030271,[["images/skin17-sheet0.png",934,111,37,8,16,1,1,0,[],[],0]]],["rightfoot",5,false,1,0,false,739683887970615,[["images/skin17-sheet0.png",934,115,1,12,16,1,0,0,[],[],0]]],["righthand",5,false,1,0,false,898282621446138,[["images/skin17-sheet0.png",934,67,41,8,16,1,1,0,[],[],0]]],["rightleg",5,false,1,0,false,233539527540801,[["images/skin17-sheet0.png",934,77,41,8,16,1,0,0,[],[0.125,0.06250009685754776,1,0.06250009685754776,1,1,0.125,1],0]]]],[],false,false,307146504697078,[],null],["t149",19,false,[738125659224488],0,0,null,[["head",5,true,1,0,false,201863066998365,[["images/skin18-sheet0.png",1129,1,1,64,64,1,0.53125,1,[],[-0.515625,-0.984375,0.46875,-0.984375,0.46875,0,-0.515625,0],0]]],["body",5,false,1,0,false,621598758518289,[["images/skin18-sheet0.png",1129,67,1,25,44,1,0.5600000023841858,0.3636363744735718,[],[],0]]],["leftarm",5,false,1,0,false,262694455036771,[["images/skin18-sheet0.png",1129,110,22,8,18,1,0.75,0.0555555559694767,[],[-0.75,-0.0555555559694767,0.25,-0.0555555559694767,0.25,0.833333432674408,-0.75,0.833333432674408],0]]],["leftfoot",5,false,1,0,false,914347000202120,[["images/skin18-sheet0.png",1129,94,1,14,20,1,0.1428571492433548,0.1500000059604645,[],[0.01428584754467011,0.04999999701976776,0.6999998688697815,0.04999999701976776,0.6999998688697815,0.7999999523162842,0.01428584754467011,0.7999999523162842],0]]],["lefthand",5,false,1,0,false,733495021994575,[["images/skin18-sheet0.png",1129,110,1,8,19,1,0.75,0.1578947305679321,[],[],0]]],["leftleg",5,false,1,0,false,887651622582088,[["images/skin18-sheet0.png",1129,94,23,8,18,1,0.25,0.0555555559694767,[],[],0]]],["rightarm",5,false,1,0,false,709300176979119,[["images/skin18-sheet0.png",1129,94,23,8,18,1,0.75,0.0555555559694767,[],[0.25,0.9444444179534912,-0.75,0.9444444179534912,-0.75,-0.0555555559694767,0.25,-0.0555555559694767],0]]],["rightfoot",5,false,1,0,false,317590968537117,[["images/skin18-sheet0.png",1129,94,1,14,20,1,0.1428571492433548,0.1500000059604645,[],[],0]]],["righthand",5,false,1,0,false,343570511100839,[["images/skin18-sheet0.png",1129,110,1,8,19,1,0.75,0.1578947305679321,[],[0.25,0.8421052694320679,-0.75,0.8421052694320679,-0.75,-0.09907123446464539,0.25,-0.09907123446464539],0]]],["rightleg",5,false,1,0,false,563499651252204,[["images/skin18-sheet0.png",1129,94,23,8,18,1,0.25,0.0555555559694767,[],[-0.125,0.00694454088807106,0.75,0.00694454088807106,0.75,0.9444444179534912,-0.125,0.9444444179534912],0]]]],[],false,false,665771625362299,[],null],["t150",19,false,[738125659224488],0,0,null,[["head",5,true,1,0,false,624457034228015,[["images/skin19-sheet1.png",2880,1,1,57,47,1,0.4035087823867798,1.297872304916382,[],[-0.4035087823867798,-1.297872304916382,0.5964912176132202,-1.297872304916382,0.5964912176132202,-0.3174803256988525,-0.4035087823867798,-0.3174803256988525],0]]],["body",5,false,1,0,false,368235633245239,[["images/skin19-sheet0.png",1242,1,1,86,86,1,0.4418604671955109,0.4186046421527863,[],[-0.3720930814743042,-0.4186046421527863,0.4999995529651642,-0.4186046421527863,0.4999995529651642,0.5232553482055664,-0.3720930814743042,0.5232553482055664],0]]],["leftarm",5,false,1,0,false,974936093757080,[["images/skin14-sheet0.png",831,79,43,8,16,1,1,0,[],[],0]]],["leftfoot",5,false,1,0,false,859420650496401,[["images/skin19-sheet1.png",2880,60,1,39,58,1,0.5641025900840759,0.4482758641242981,[],[-0.4641025960445404,-0.3857757747173309,0.3358973860740662,-0.3857757747173309,0.3358973860740662,0.5517241358757019,-0.4641025960445404,0.5517241358757019],0]]],["lefthand",5,false,1,0,false,838100520447079,[["images/skin14-sheet0.png",831,79,43,8,16,1,1,0,[],[],0]]],["leftleg",5,false,1,0,false,874786012641319,[["images/skin19-sheet0.png",1242,89,1,31,48,1,0.3548386991024017,0.1666666716337204,[],[],0]]],["rightarm",5,false,1,0,false,757261308102783,[["images/skin14-sheet0.png",831,79,43,8,16,1,1,0,[],[],0]]],["rightfoot",5,false,1,0,false,724742830741691,[["images/skin19-sheet1.png",2880,60,1,39,58,1,0.5641025900840759,0.4482758641242981,[],[],0]]],["righthand",5,false,1,0,false,124519994066300,[["images/skin14-sheet0.png",831,79,43,8,16,1,1,0,[],[],0]]],["rightleg",5,false,1,0,false,207134801291023,[["images/skin19-sheet0.png",1242,89,1,31,48,1,0.3548386991024017,0.1666666716337204,[],[-0.2298386991024017,-0.1041665747761726,0.6451612710952759,-0.1041665747761726,0.6451612710952759,0.8333333134651184,-0.2298386991024017,0.8333333134651184],0]]]],[],false,false,175878507706496,[],null],["t151",19,false,[738125659224488],0,0,null,[["head",20,true,1,0,false,469064190770253,[["images/skin16-sheet0.png",417,1,1,32,32,30,0.5,1,[],[],0]]],["body",5,false,1,0,false,385718770508892,[["images/skin16-sheet0.png",417,35,1,8,16,1,0.5,0.5,[],[],0]]],["leftarm",5,false,1,0,false,527186652370655,[["images/skin16-sheet0.png",417,45,1,4,8,1,1,0,[],[],0]]],["leftfoot",5,false,1,0,false,322559041259279,[["images/skin16-sheet0.png",417,51,1,4,8,1,0,0,[],[],0]]],["lefthand",5,false,1,0,false,939935836168341,[["images/skin16-sheet0.png",417,57,1,4,8,1,1,0,[],[],0]]],["leftleg",5,false,1,0,false,328076085545915,[["images/skin16-sheet0.png",417,57,1,4,8,1,0,0,[],[],0]]],["rightarm",5,false,1,0,false,928275389373613,[["images/skin16-sheet0.png",417,57,1,4,8,1,1,0,[],[],0]]],["rightfoot",5,false,1,0,false,973954636237735,[["images/skin16-sheet0.png",417,57,1,4,8,1,0,0,[],[],0]]],["righthand",5,false,1,0,false,180454158635081,[["images/skin16-sheet0.png",417,45,11,4,8,1,1,0,[],[],0]]],["rightleg",5,false,1,0,false,731894550246147,[["images/skin16-sheet0.png",417,57,1,4,8,1,0,0,[],[],0]]]],[],false,false,814729708934448,[],null],["t152",19,false,[738125659224488],0,0,null,[["head",12,true,1,0,false,962579310888810,[["images/cmgskin-sheet0.png",533,1,1,44,32,10,0.5227272510528565,1,[],[],0]]],["body",5,false,1,0,false,940475601526103,[["images/cmgskin-sheet0.png",533,47,1,10,16,1,0.5,0.5,[],[],0]]],["leftarm",5,false,1,0,false,809658071502656,[["images/cmgskin-sheet0.png",533,59,1,4,8,1,1,0,[],[],0]]],["leftfoot",5,false,1,0,false,211497396477718,[["images/cmgskin-sheet0.png",533,47,19,9,8,1,0,0,[],[0.125,0.125,1,0.125,1,1,0.125,1],0]]],["lefthand",5,false,1,0,false,867729915987285,[["images/cmgskin-sheet0.png",533,1,35,7,9,1,0.8571428656578064,0,[],[-0.8571428656578064,1,-0.8571428656578064,0,0.1428571343421936,0,0.1428571343421936,1],0]]],["leftleg",5,false,1,0,false,993545187127789,[["images/cmgskin-sheet0.png",533,59,11,4,8,1,0,0,[],[],0]]],["rightarm",5,false,1,0,false,513642894334456,[["images/cmgskin-sheet0.png",533,59,1,4,8,1,1,0,[],[],0]]],["rightfoot",5,false,1,0,false,113876484125647,[["images/cmgskin-sheet0.png",533,47,29,9,8,1,0,0,[],[],0]]],["righthand",5,false,1,0,false,475484922853518,[["images/cmgskin-sheet0.png",533,10,35,7,9,1,0.8571428656578064,0,[],[0.1428571343421936,0,0.1428571343421936,1,-0.8571428656578064,1,-0.8571428656578064,0],0]]],["rightleg",5,false,1,0,false,588079563860988,[["images/cmgskin-sheet0.png",533,58,21,4,8,1,0,0,[],[0.25,0.125,1,0.125,1,1,0.25,1],0]]]],[],false,false,979205171312083,[],null],["t153",19,false,[738125659224488],0,0,null,[["head",12,true,1,0,false,525496546412025,[["images/skin20-sheet0.png",573,1,1,31,36,10,0.4838709533214569,0.9722222089767456,[],[],0]]],["body",5,false,1,0,false,436291975625888,[["images/skin20-sheet0.png",573,34,1,12,19,1,0.5833333134651184,0.5789473652839661,[],[],0]]],["leftarm",5,false,1,0,false,235502860412254,[["images/skin20-sheet0.png",573,55,1,5,8,1,1,0,[],[-1,1,-1,0,0,0,0,1],0]]],["leftfoot",5,false,1,0,false,566184774353762,[["images/skin20-sheet0.png",573,55,11,5,8,1,0,0,[],[0.2249999940395355,0.125,1,0.125,1,1,0.2249999940395355,1],0]]],["lefthand",5,false,1,0,false,173810143590131,[["images/skin20-sheet0.png",573,48,1,5,9,1,1,0,[],[0,1,-1,1,-1,0,0,0],0]]],["leftleg",5,false,1,0,false,684069620178685,[["images/skin20-sheet0.png",573,48,12,5,8,1,0.2000000029802322,0,[],[],0]]],["rightarm",5,false,1,0,false,374237454628823,[["images/skin20-sheet0.png",573,55,21,5,8,1,1,0,[],[0,0,0,1,-1,1,-1,0],0]]],["rightfoot",5,false,1,0,false,738151147959290,[["images/skin20-sheet0.png",573,55,11,5,8,1,0,0,[],[],0]]],["righthand",5,false,1,0,false,363713617480886,[["images/skin20-sheet0.png",573,1,39,56,9,1,0.375,0,[],[0.625,1,-0.375,1,-0.375,0,0.625,0],0]]],["rightleg",5,false,1,0,false,728332442622457,[["images/skin20-sheet0.png",573,34,22,5,8,1,0,0,[],[0.75,1,0,1,0,0.125,0.75,0.125],0]]]],[],false,false,983753164838987,[],null],["t154",19,false,[738125659224488],0,0,null,[["head",12,true,1,0,false,576351024980243,[["images/skin21-sheet0.png",651,1,1,35,40,10,0.5142857432365418,1,[],[],0]]],["body",5,false,1,0,false,409546093172865,[["images/skin21-sheet0.png",651,38,17,9,18,1,0.4444444477558136,0.5555555820465088,[],[],0]]],["leftarm",5,false,1,0,false,116511284208310,[["images/skin21-sheet0.png",651,38,37,5,8,1,1,0,[],[-1,1,-1,0,0,0,0,1],0]]],["leftfoot",5,false,1,0,false,467450169639009,[["images/skin21-sheet0.png",651,49,17,9,8,1,0,0,[],[0.125,0.125,1,0.125,1,1,0.125,1],0]]],["lefthand",5,false,1,0,false,781077736277882,[["images/skin21-sheet0.png",651,45,37,5,8,1,1,0,[],[0,1,-1,1,-1,0,0,0],0]]],["leftleg",5,false,1,0,false,405736926630055,[["images/skin21-sheet0.png",651,52,37,5,8,1,0,0,[],[],0]]],["rightarm",5,false,1,0,false,506853586117776,[["images/skin21-sheet0.png",651,1,43,5,8,1,1,0,[],[0,0,0,1,-1,1,-1,0],0]]],["rightfoot",5,false,1,0,false,704523755012734,[["images/skin21-sheet0.png",651,49,27,9,8,1,0,0,[],[],0]]],["righthand",5,false,1,0,false,236915149210705,[["images/skin21-sheet0.png",651,38,1,21,14,1,0.2857142984867096,0.2142857164144516,[],[0.3582766950130463,0.7142852544784546,-0.2312926054000855,0.7142852544784546,-0.2312926054000855,0.1571432799100876,0.3582766950130463,0.1571432799100876],0]]],["rightleg",5,false,1,0,false,803812926843647,[["images/skin21-sheet0.png",651,8,43,5,8,1,0,0,[],[0.25,0.125,1,0.125,1,1,0.25,1],0]]]],[],false,false,361491194957403,[],null],["t155",19,false,[738125659224488],0,0,null,[["head",12,true,1,0,false,794519693940334,[["images/skin22-sheet0.png",811,1,1,68,40,10,0.5,0.925000011920929,[],[],0]]],["body",5,false,1,0,false,572656099429162,[["images/skin22-sheet0.png",811,71,1,11,25,1,0.4545454680919647,0.3199999928474426,[],[],0]]],["leftarm",5,false,1,0,false,272566842228831,[["images/skin22-sheet0.png",811,98,1,4,8,1,1,0,[],[-1,1,-1,0,0,0,0,1],0]]],["leftfoot",5,false,1,0,false,490165602105607,[["images/skin22-sheet0.png",811,84,1,5,8,1,0,0,[],[0.2249999940395355,0.125,1,0.125,1,1,0.2249999940395355,1],0]]],["lefthand",5,false,1,0,false,321877182216401,[["images/skin22-sheet0.png",811,98,1,4,8,1,1,0,[],[-1,1,-1,0,0,0,0,1],0]]],["leftleg",5,false,1,0,false,863595943607817,[["images/skin22-sheet0.png",811,104,1,4,8,1,0,0,[],[],0]]],["rightarm",5,false,1,0,false,538287683564141,[["images/skin22-sheet0.png",811,110,1,4,8,1,1,0,[],[0,0,0,1,-1,1,-1,0],0]]],["rightfoot",5,false,1,0,false,370127481096773,[["images/skin22-sheet0.png",811,91,1,5,8,1,0,0,[],[],0]]],["righthand",5,false,1,0,false,160866628904457,[["images/skin22-sheet0.png",811,110,1,4,8,1,1,0,[],[0,0,0,1,-1,1,-1,0],0]]],["rightleg",5,false,1,0,false,818713108765869,[["images/skin22-sheet0.png",811,116,1,4,8,1,0,0,[],[0.25,0.125,1,0.125,1,1,0.25,1],0]]]],[],false,false,478265688805318,[],null],["t156",19,false,[738125659224488],0,0,null,[["head",12,true,1,0,false,242369349234570,[["images/skin23-sheet0.png",483,1,1,29,32,10,0.5517241358757019,1,[],[],0]]],["body",5,false,1,0,false,703633145089310,[["images/skin23-sheet0.png",483,32,1,8,16,1,0.5,0.5,[],[],0]]],["leftarm",5,false,1,0,false,469356250488715,[["images/skin23-sheet0.png",483,42,1,5,8,1,1,0,[],[-1,1,-1,0,0,0,0,1],0]]],["leftfoot",5,false,1,0,false,114363280256871,[["images/skin23-sheet0.png",483,49,1,5,8,1,0,0,[],[0.2249999940395355,0.125,1,0.125,1,1,0.2249999940395355,1],0]]],["lefthand",5,false,1,0,false,477638977061478,[["images/skin22-sheet0.png",811,110,1,4,8,1,1,0,[],[0,1,-1,1,-1,0,0,0],0]]],["leftleg",5,false,1,0,false,697802566508833,[["images/skin23-sheet0.png",483,56,1,5,8,1,0,0,[],[],0]]],["rightarm",5,false,1,0,false,167346213158047,[["images/skin23-sheet0.png",483,42,11,5,8,1,1,0,[],[0,0,0,1,-1,1,-1,0],0]]],["rightfoot",5,false,1,0,false,780376574408467,[["images/skin23-sheet0.png",483,49,11,5,8,1,0,0,[],[],0]]],["righthand",5,false,1,0,false,379805314208159,[["images/skin23-sheet0.png",483,32,19,4,8,1,1,0,[],[0,1,-1,1,-1,0,0,0],0]]],["rightleg",5,false,1,0,false,397522833440620,[["images/skin23-sheet0.png",483,56,11,5,8,1,0,0,[],[0.25,0.125,1,0.125,1,1,0.25,1],0]]]],[],false,false,176165291860431,[],null],["t157",19,false,[738125659224488],0,0,null,[["head",12,true,1,0,false,250934140759814,[["images/skin24-sheet0.png",452,1,1,33,32,10,0.4848484992980957,1,[],[],0]]],["body",5,false,1,0,false,613705200028984,[["images/skin24-sheet0.png",452,36,1,8,16,1,0.5,0.5,[],[],0]]],["leftarm",5,false,1,0,false,169440926742849,[["images/skin24-sheet0.png",452,46,1,5,8,1,1,0,[],[-1,1,-1,0,0,0,0,1],0]]],["leftfoot",5,false,1,0,false,334072917905066,[["images/skin24-sheet0.png",452,53,1,5,8,1,0,0,[],[0.2249999940395355,0.125,1,0.125,1,1,0.2249999940395355,1],0]]],["lefthand",5,false,1,0,false,149426031618315,[["images/skin24-sheet0.png",452,46,11,5,8,1,1,0,[],[0,1,-1,1,-1,0,0,0],0]]],["leftleg",5,false,1,0,false,326356673502448,[["images/skin24-sheet0.png",452,53,11,5,8,1,0,0,[],[],0]]],["rightarm",5,false,1,0,false,515531965544081,[["images/skin23-sheet0.png",483,42,11,5,8,1,1,0,[],[0,0,0,1,-1,1,-1,0],0]]],["rightfoot",5,false,1,0,false,542119682497398,[["images/skin24-sheet0.png",452,36,19,5,8,1,0,0,[],[],0]]],["righthand",5,false,1,0,false,139645270322162,[["images/skin24-sheet0.png",452,43,21,5,8,1,1,0,[],[0,1,-1,1,-1,0,0,0],0]]],["rightleg",5,false,1,0,false,626945854861569,[["images/skin24-sheet0.png",452,50,21,5,8,1,0,0,[],[0.25,0.125,1,0.125,1,1,0.25,1],0]]]],[],false,false,530094794668721,[],null],["t158",32,false,[],0,0,null,null,[],false,false,609347935899338,[],null,[""]],["t159",19,false,[],0,0,null,[["Default",5,false,1,0,false,107667209002138,[["images/dialogoverlay-sheet0.png",155,0,0,250,250,1,-2.380000114440918,0.6399999856948853,[],[],4]]]],[],false,false,576695842718201,[],null],["t160",19,false,[],0,0,null,[["Default",5,false,1,0,false,172709924189429,[["images/sprite5-sheet0.png",91,0,0,8,2,1,0.5,0.5,[],[],4]]]],[],false,false,377445790996751,[],null],["t161",20,false,[],1,0,null,null,[["GridViewDataBind",60,846581066773910]],false,false,845296839830002,[],null],["t162",18,false,[],0,0,["images/border.png",536,0],null,[],false,false,141610347164560,[],null],["t163",19,false,[],0,0,null,[["Default",5,true,1,0,true,517509842036801,[["images/decor-sheet0.png",181,0,0,32,32,1,0.5,0.5,[],[],3]]],["coin",5,true,1,0,true,536228802011968,[["images/decor-sheet1.png",233,0,0,32,32,1,0.5,0.5,[],[],3]]]],[],false,false,190863947988864,[],null],["t164",19,false,[],0,0,null,[["Default",5,false,1,0,false,787267650977841,[["images/sprite2-sheet0.png",155,0,0,250,250,1,0.5,0.5,[],[],1]]]],[],false,false,391002310959594,[],null],["t165",19,false,[],0,0,null,[["Default",5,false,1,0,false,285156995241420,[["images/vector-sheet0.png",151,0,0,25,25,1,0,0.5199999809265137,[],[],0]]]],[],false,false,425919155164426,[],null],["t166",19,false,[],0,0,null,[["Default",5,false,1,0,false,694049161744789,[["images/coolmathgames800x-sheet0.png",34682,0,0,800,600,1,0.5,0.5,[],[],1]]]],[],false,false,704600268878493,[],null],["t167",40,false,[],0,0,null,null,[],false,false,422867680881162,[],null,["lzma.js;unlockalllevels.js;websdkwrapper.js;ovo-level-editor.js"]],["t168",7,false,[],0,0,null,null,[],false,false,598280077419959,[],null],["t169",9,false,[],0,0,null,null,[],false,false,121214953520369,[],null,[25]],["t170",19,false,[],2,0,null,[["Default",5,false,1,0,false,518385529986323,[["images/camera-sheet0.png",155,0,0,250,250,1,0.5,0.5,[],[],1]]]],[["ScrollTo",68,629454157504401],["LiteTween",69,810524953118095]],false,false,634097375191476,[],null],["t171",19,false,[],1,0,null,[["Default",0,false,1,0,false,865844350177381,[["images/background-sheet0.png",47871,1,1,640,640,1,0.5,0.5,[],[],0],["images/background-sheet0.png",47871,643,1,640,640,1,0.5,0.5,[],[],0],["images/background-sheet0.png",47871,1285,1,640,640,1,0.5,0.5,[],[],0],["images/background-sheet0.png",47871,1,643,640,640,1,0.5,0.5,[],[],0],["images/background-sheet0.png",47871,643,643,640,640,1,0.5,0.5,[],[],0],["images/background-sheet0.png",47871,1285,643,640,640,1,0.5,0.5,[],[],0],["images/background-sheet0.png",47871,1,1285,640,640,1,0.5,0.5,[],[],0]]]],[["Fade",54,761612305447562]],false,false,338704364442861,[],null],["t172",19,false,[],0,0,null,[["Default",5,false,1,0,false,332512937706842,[["images/dialogoverlay-sheet0.png",155,0,0,250,250,1,0.5,0.5,[],[],4]]]],[],false,false,735720556600850,[],null],["t173",19,false,[],0,0,null,[["Default",5,false,1,0,false,914559096167921,[["images/sprite4-sheet0.png",2860,0,0,342,466,1,0.5,0.5,[],[],0]]]],[],false,false,211823931688081,[],null],["t174",36,false,[],0,0,null,null,[],true,false,734682482115351,[],null],["t175",19,false,[],0,0,null,[["Default",5,false,1,0,false,117482678483296,[["images/sprite6-sheet0.png",3511,0,0,937,733,1,0.5005336403846741,0.5006821155548096,[],[],3]]]],[],false,false,417746400327462,[],null],["t176",18,false,[],0,0,["images/tiledbackground2.png",180625,0],null,[],false,false,699251066693732,[],null],["t177",19,false,[],0,0,null,[["Default",5,false,1,0,false,440151107251068,[["images/endcarddialog-sheet0.png",155,0,0,250,250,1,0,0,[],[],4]]]],[],false,false,357329769549431,[],null],["t178",18,false,[],0,0,["images/tiledbackground3.png",20986,0],null,[],false,false,737313328296348,[],null],["t179",19,false,[],0,0,null,[["Default",5,false,1,0,false,306369477425391,[["images/sprite7-sheet0.png",168,0,0,250,250,1,0.5,0.5,[],[],3]]]],[],false,false,881165139545174,[],null],["t180",19,false,[],0,0,null,[["Default",5,true,1,0,true,812959213818569,[["images/mark-sheet0.png",627,0,0,241,243,1,0.5020747184753418,0.5020576119422913,[],[],0]]]],[],false,false,542929226901125,[],null],["t181",19,false,[],0,0,null,[["Default",5,false,1,0,false,183317851014394,[["images/pumpkin-sheet0.png",2164,0,0,32,32,1,0.5,0.5,[],[-0.3967210054397583,-0.2810630202293396,-0.01259499788284302,-0.4217813909053803,0.3723859786987305,-0.2810630202293396,0.5,-0.001870989799499512,0.4348379969596863,0.3319609761238098,-0.01259499788284302,0.4360029697418213,-0.4480513036251068,0.3222309947013855,-0.5,-0.001870989799499512],0]]]],[],false,false,632919620414100,[],null],["t182",19,false,[],0,0,null,[["Default",5,false,1,0,false,528596388521817,[["images/fakenine-sheet0.png",244,0,0,151,172,1,0.8278145790100098,0.7267441749572754,[],[],0]]]],[],false,false,789863733405582,[],null],["t183",19,false,[],0,0,null,[["Default",5,false,1,0,false,534125977553266,[["images/bfakenine-sheet0.png",244,0,0,151,172,1,0.8278145790100098,0.7267441749572754,[],[],0]]]],[],false,false,758460878500982,[],null],["t184",19,false,[],0,0,null,[["Default",5,false,1,0,false,183984920346942,[["images/sprite8-sheet0.png",168,0,0,250,250,1,0.5,0.5,[],[],3]]]],[],false,false,700004251621802,[],null],["t185",19,false,[],0,0,null,[["Default",5,false,1,0,false,775113481535384,[["images/ablue-sheet0.png",176,0,0,93,97,1,1.344086050987244,1.288659811019898,[],[],0]]]],[],false,false,540875143856330,[],null],["t186",19,false,[],0,0,null,[["Default",5,false,1,0,false,540393032786240,[["images/agreen-sheet0.png",176,0,0,93,97,1,1.344086050987244,1.288659811019898,[],[],0]]]],[],false,false,190382172509121,[],null],["t187",19,false,[],0,0,null,[["Default",5,false,1,0,false,122547983464391,[["images/ared-sheet0.png",164,0,0,90,96,1,1.388888835906982,1.302083373069763,[],[],0]]]],[],false,false,425542782608990,[],null],["t188",19,false,[],0,0,null,[["Default",5,false,1,0,false,843156597495427,[["images/frank_1-sheet0.png",250525,0,0,650,635,1,0.5,0.5007873773574829,[],[],0]]]],[],false,false,993750884364612,[],null],["t189",6,false,[888850175166869],0,0,null,null,[],false,false,597662614600632,[],null],["t190",6,false,[],0,0,null,null,[],false,false,862258040033253,[],null],["t191",19,false,[],0,0,null,[["Default",5,true,1,0,true,611838537739735,[["images/decor2-sheet0.png",393,0,0,224,224,1,0.5,0.5,[],[],3]]]],[],false,false,780948200889483,[],null],["t192",28,false,[161007206053699,311633333626769],1,0,null,null,[["Timer",43,577465353931609]],true,true,347769334737410,[],null],["t193",19,false,[],0,0,null,[["Default",5,false,1,0,false,758642348595996,[["images/bannercontainer-sheet0.png",105,0,0,8,8,1,0,0,[],[],3]]]],[],false,false,432173547533703,[],null],["t194",22,false,[],0,0,null,null,[],false,false,588624700562001,[],null,["1.4.4","",0,1,0,"b2cf0437817948371c6ca28e0b642beb","6beac3bc3a9f5ae66f0be2b4045e8f5176e7652d","","","",""]],["t195",21,false,[],3,0,["images/runningcanvas.png",168,3],null,[["Fade",54,633480717868471],["Sine2",59,301080865184726],["Sine",59,114609354143004]],false,false,520530509322114,[],null],["t196",37,false,[652403475450522,626853564312960,694258955769425,594402942119031,496906001396689,470565060895900,444210199119393,962950781184294],0,0,null,null,[],false,true,707415154989440,[],null],["t197",19,false,[],1,0,null,[["enus",5,false,1,0,false,271831173935763,[["images/languageflag-sheet0.png",510,1,1,55,45,1,0,0,[],[],0]]],["frfr",5,false,1,0,false,652719406116502,[["images/languageflag-sheet0.png",510,58,1,55,45,1,0,0,[],[],0]]],["eses",5,false,1,0,false,687890100495405,[["images/languageflag-sheet0.png",510,1,48,55,45,1,0,0,[],[],0]]],["ptbr",5,false,1,0,false,117981749125038,[["images/languageflag-sheet0.png",510,58,48,55,45,1,0,0,[],[0.03636360168457031,0.06666669994592667,0.9636359810829163,0.06666669994592667,0.9636359810829163,0.9333329796791077,0.03636360168457031,0.9333329796791077],0]]]],[["GameObject",58,502756917995407]],false,false,963337548452675,[],null],["t198",19,false,[130653457797761,739507600795253],2,0,null,[["Default",5,false,1,0,false,807368187887454,[["images/languagebutton-sheet0.png",126,0,0,145,30,1,0.5034482479095459,0.5,[],[],4]]]],[["Button",56,513155303701181],["GameObject",58,673924634823110]],false,false,630158081691108,[],null],["t199",19,false,[],1,0,null,[["enus",5,false,1,0,false,514223143958607,[["images/languageflag-sheet0.png",510,1,1,55,45,1,0,0,[],[],0]]],["frfr",5,false,1,0,false,851108805495385,[["images/languageflag-sheet0.png",510,58,1,55,45,1,0,0,[],[],0]]],["eses",5,false,1,0,false,868651494402553,[["images/languageflag-sheet0.png",510,1,48,55,45,1,0,0,[],[],0]]],["ptbr",5,false,1,0,false,689836018243618,[["images/languageflag-sheet0.png",510,58,48,55,45,1,0,0,[],[0.03636360168457031,0.06666669994592667,0.9636359810829163,0.06666669994592667,0.9636359810829163,0.9333329796791077,0.03636360168457031,0.9333329796791077],0]]]],[["GridViewDataBind",60,978046172881575]],false,false,383302309727297,[],null],["t200",19,false,[],2,0,null,[["Default",5,false,1,0,false,908792354405304,[["images/languagebutton2-sheet0.png",144,0,0,164,60,1,0.5,0.5,[],[-0.5,-0.25,0.384145975112915,-0.25,0.384145975112915,0.25,-0.5,0.25],4]]]],[["Button",56,313633363488376],["GridViewDataBind",60,589341175902544]],false,false,232533490442612,[],null],["t201",41,false,[],0,0,null,null,[],false,false,930410094373469,[],null,[]],["t202",19,false,[],0,0,null,[["Default",5,false,1,0,false,391584670858240,[["images/sprite9-sheet0.png",749,0,0,27,22,1,0.7407407164573669,0.6818181872367859,[],[],0]]]],[],false,false,984070898645752,[],null],["t203",19,true,[262704971509323,199058042510295,193849943661847,993466495623759,162248679823403],4,0,null,null,[["Bullet",52,794056050906070],["Fade",54,117347565246895],["ScrollTo",68,155942162778745],["Skin",70,261165837698273]],false,false,299731548947860,[],null],["t204",19,true,[497212342413462],0,0,null,null,[],false,false,873675107375722,[],null],["t205",19,true,[],1,0,null,null,[["SkymenPin",71,796199303464956]],false,false,206054607957546,[],null],["t206",18,true,[],1,0,null,null,[["SkymenPin",71,138908180026964]],false,false,598898940920014,[],null],["t207",19,true,[440031906351753,952965123956453,238992560328463,689824488000075,860001807351402],1,0,null,null,[["SkymenPin",71,355565111643921]],false,false,509448117307828,[],null],["t208",18,true,[],0,0,null,null,[],false,false,211009381652717,[],null],["t209",35,true,[],1,0,null,null,[["SkymenPin",71,281395732264137]],false,false,115159909921455,[],null],["t210",19,true,[738125659224488],0,0,null,null,[],false,false,790364388382042,[],null],["t211",37,true,[652403475450522,626853564312960,694258955769425,594402942119031,496906001396689,470565060895900,444210199119393,962950781184294],1,0,null,null,[["GameObject",58,755905474898721]],false,false,920532809310815,[],null],["t212",35,true,[923581378846400,941836366546089,579965770275365,665145682518176,209428091582797,870289313099113,331397106793861,257200944302405,329765002652278,648691422126005,488960249811661,549107127422705,499348393459471],1,0,null,null,[["GameObject",58,216266219916726]],false,false,587761493907010,[],null],["t213",37,true,[],0,0,null,null,[],false,false,631733458020613,[],null],["t214",20,true,[],0,0,null,null,[],false,false,632533404603087,[],null]],[[203,32,33,34,35,36,37,38,39,40,41],[204,54,47,58],[205,49,60,163,191,44,43,66,180,62,55,47,58,159,63],[206,52,45,51,56,59,48],[207,50],[208,52,45,51,56,59,48,68,67],[209,61,65,46,57],[210,152,151,146,131,140,141,142,143,144,145,147,148,149,150,133,153,154,155,156,157,132,134,135,136,137,138,139],[211,196],[212,94,73,79,80,87,86,65,121,120,90,77,118,83,122,124,123,46,57,84],[213,93,130],[214,161]],[["Level 1",1700,640,true,"Levels",793322217032622,[["Background",0,526200868109867,true,[255,255,255],false,0.1000000014901161,0.1000000014901161,1,false,false,0,0,0,[],[]],["BG Image",1,708705796561252,false,[255,255,255],true,1,1,1,false,false,0,0,0,[],[]],["Mask",2,132494189666672,false,[255,255,255],true,1,1,1,true,false,1,0,0,[[[-894,-736,0,896,2265,0,0,1,0,0,0,0,[]],177,1785,[],[],[0,"Default",0,1]],[[1698,-736,0,896,2265,0,0,1,0,0,0,0,[]],177,8928,[],[],[0,"Default",0,1]],[[-288,639,0,2240,1024,0,0,1,0,0,0,0,[]],177,8929,[],[],[0,"Default",0,1]],[[-352,-1022,0,2240,1024,0,0,1,0,0,0,0,[]],177,8930,[],[],[0,"Default",0,1]],[[-160,-128,0,50,50,0,0,1,0,0,0,0,[]],195,10085,[],[[0,0,0,0.2,1],[1,1,0,0.5,0,0.15,0,3,0],[1,0,0,0.75,0,0,0,37,0]],[0,0,0]]],[]],["Layer 0",3,809202608845450,true,[255,255,255],true,1,1,1,false,false,1,0,0,[[[1,384,0,1104,9,0,0,1,0,0,0,0,[]],51,73,[],[[0],[1],[1,100,""]],[0,0]],[[175,-42,0,4,8,0,0,1,1,0,0,0,[]],38,74,[[0],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","","rightarm",3,1,0,0,1,2]],[0,"Default",0,1]],[[175,-34,0,4,8,0,0,1,1,0,0,0,[]],40,75,[[1],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","","righthand",3,1,0,0,1,2]],[0,"Default",0,1]],[[167,-21,0,4,8,0,0,1,0,0,0,0,[]],39,77,[[4],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","","rightfoot",3,1,0,0,1,2]],[0,"Default",0,1]],[[167,-29,0,4,8,0,0,1,0,0,0,0,[]],41,78,[[3],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","","rightleg",3,1,0,0,1,2]],[0,"Default",0,1]],[[167,-37,0,8,16,0,0,1,0.5,0.5,0,0,[]],32,76,[[2],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","","body",3,1,0,0,1,2]],[0,"Default",0,1]],[[163,-21,0,4,8,0,0,1,0,0,0,0,[]],35,79,[[6],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","","leftfoot",3,1,0,0,1,2]],[0,"Default",0,1]],[[163,-29,0,4,8,0,0,1,0,0,0,0,[]],37,80,[[5],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","","leftleg",3,1,0,0,1,2]],[0,"Default",0,1]],[[167,-45,0,32,32,0,0,1,0.5,1,0,0,[]],33,81,[[7],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","","head",3,1,0,0,1,2]],[0,"Default",0,1]],[[163,-42,0,4,8,0,0,1,1,0,0,0,[]],34,82,[[8],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","","leftarm",3,1,0,0,1,2]],[0,"Default",0,1]],[[163,-34,0,4,8,0,0,1,1,0,0,0,[]],36,83,[[9],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","","lefthand",3,1,0,0,1,2]],[0,"Default",0,1]],[[474,275,0,32,64,0,0,1,0.5,0.5,0,0,[]],42,91,[["run"],[0],[1],[1],[0],[0.8],[0.5],[0],[1],[0],[0],[0],[""],[2],[0],[0],[0],[""],[0],[3],[0],[0],[0],[0],[0],[0],[0]],[[330,1500,1500,650,1500,1000,0,0,0,1],[],[0,0],[0,10000,360,1]],[0,"Default",0,1]],[[-192,-192,0,60.93439102172852,60.93439102172852,0,0,1,0.5,0.5,0,0,[]],53,1271,[["Start"],["{\"c2array\":true,\"size\":[362,6,1],\"data\":[[[19.753175508500977],[351.99275975366527],[0],[\"idle\"],[0],[1]],[[19.753175508500977],[351.99275975366527],[0],[\"idle\"],[0],[1]],[[19.753175508500977],[351.99275975366527],[0],[\"idle\"],[0],[1]],[[19.753175508500977],[351.99275975366527],[0],[\"idle\"],[0],[1]],[[19.753175508500977],[351.99275975366527],[0],[\"idle\"],[0],[1]],[[19.753175508500977],[351.99275975366527],[0],[\"idle\"],[0],[1]],[[19.753175508500977],[351.99275975366527],[0],[\"idle\"],[0],[1]],[[19.753175508500977],[351.99275975366527],[0],[\"idle\"],[0],[1]],[[19.753175508500977],[351.99275975366527],[0],[\"idle\"],[0],[1]],[[19.753175508500977],[351.99275975366527],[0],[\"idle\"],[0],[1]],[[19.753175508500977],[351.99275975366527],[0],[\"idle\"],[0],[1]],[[19.753175508500977],[351.99275975366527],[0],[\"idle\"],[0],[1]],[[19.753175508500977],[351.99275975366527],[0],[\"idle\"],[0],[1]],[[19.753175508500977],[351.99275975366527],[0],[\"idle\"],[0],[1]],[[19.753175508500977],[351.99275975366527],[0],[\"idle\"],[0],[1]],[[19.753175508500977],[351.99275975366527],[0],[\"idle\"],[0],[1]],[[19.753175508500977],[351.99275975366527],[0],[\"idle\"],[0],[1]],[[20.167013658501006],[351.99275975366527],[0],[\"run\"],[0],[1]],[[20.995288014500915],[351.99275975366527],[0],[\"run\"],[0],[1]],[[22.241889314000858],[351.99275975366527],[0],[\"run\"],[0],[1]],[[23.90777027900094],[351.99275975366527],[0],[\"run\"],[0],[1]],[[25.97451411500095],[351.99275975366527],[0],[\"run\"],[0],[1]],[[28.475381403501036],[351.99275975366527],[0],[\"run\"],[0],[1]],[[31.374562743500714],[351.99275975366527],[0],[\"run\"],[0],[1]],[[34.695790389501276],[351.99275975366527],[0],[\"run\"],[0],[1]],[[38.438242209501375],[351.99275975366527],[0],[\"run\"],[0],[1]],[[42.590263433001084],[351.99275975366527],[0],[\"run\"],[0],[1]],[[47.1538758080011],[351.99275975366527],[0],[\"run\"],[0],[1]],[[52.13758898000105],[351.99275975366527],[0],[\"run\"],[0],[1]],[[57.53813399000128],[351.99275975366527],[0],[\"run\"],[0],[1]],[[63.0392339900007],[351.99275975366527],[0],[\"run\"],[0],[1]],[[68.52812399000123],[351.99275975366527],[0],[\"run\"],[0],[1]],[[74.01008399000156],[351.99275975366527],[0],[\"run\"],[0],[1]],[[79.51316399000139],[351.99275975366527],[0],[\"run\"],[0],[1]],[[85.01195399000154],[351.99275975366527],[0],[\"run\"],[0],[1]],[[90.48995399000107],[351.99275975366527],[0],[\"run\"],[0],[1]],[[96.00689399000132],[351.99275975366527],[0],[\"run\"],[0],[1]],[[101.49050399000078],[351.99275975366527],[0],[\"run\"],[0],[1]],[[106.97477399000157],[351.99275975366527],[0],[\"run\"],[0],[1]],[[112.44683399000108],[351.99275975366527],[0],[\"run\"],[0],[1]],[[117.97334399000088],[351.99275975366527],[0],[\"run\"],[0],[1]],[[123.44507399000153],[351.99275975366527],[0],[\"run\"],[0],[1]],[[128.94551399000082],[351.99275975366527],[0],[\"run\"],[0],[1]],[[134.4228539900014],[351.99275975366527],[0],[\"run\"],[0],[1]],[[139.90184399000114],[351.99275975366527],[0],[\"run\"],[0],[1]],[[145.40030399000122],[351.99275975366527],[0],[\"run\"],[0],[1]],[[150.89645399000085],[351.99275975366527],[0],[\"run\"],[0],[1]],[[156.4015139900011],[351.99275975366527],[0],[\"run\"],[0],[1]],[[161.88809399000115],[351.99275975366527],[0],[\"run\"],[0],[1]],[[167.38127399000138],[351.99275975366527],[0],[\"run\"],[0],[1]],[[172.85135399000168],[351.99275975366527],[0],[\"run\"],[0],[1]],[[178.34783399000136],[351.99275975366527],[0],[\"run\"],[0],[1]],[[183.86147399000095],[351.99275975366527],[0],[\"run\"],[0],[1]],[[189.31769399000083],[351.99275975366527],[0],[\"run\"],[0],[1]],[[194.84915399000164],[351.99275975366527],[0],[\"run\"],[0],[1]],[[200.32220399000136],[351.99275975366527],[0],[\"run\"],[0],[1]],[[205.79723399000147],[351.99275975366527],[0],[\"run\"],[0],[1]],[[211.28975399000154],[351.99275975366527],[0],[\"run\"],[0],[1]],[[216.78392399000074],[351.99275975366527],[0],[\"run\"],[0],[1]],[[222.271493990001],[351.99275975366527],[0],[\"run\"],[0],[1]],[[227.76896399000088],[351.99275975366527],[0],[\"run\"],[0],[1]],[[233.2552139900009],[351.99275975366527],[0],[\"run\"],[0],[1]],[[238.74641399000072],[351.99275975366527],[0],[\"run\"],[0],[1]],[[244.24520399000087],[351.99275975366527],[0],[\"run\"],[0],[1]],[[249.7354139900017],[351.99275975366527],[0],[\"run\"],[0],[1]],[[255.22265399000068],[351.99275975366527],[0],[\"run\"],[0],[1]],[[260.72210399000096],[351.99275975366527],[0],[\"run\"],[0],[1]],[[266.2030739900011],[351.99275975366527],[0],[\"run\"],[0],[1]],[[271.72694399000153],[351.99275975366527],[0],[\"run\"],[0],[1]],[[277.18349399000147],[351.99275975366527],[0],[\"run\"],[0],[1]],[[282.68162399000147],[351.99275975366527],[0],[\"run\"],[0],[1]],[[288.1767839900009],[351.99275975366527],[0],[\"run\"],[0],[1]],[[293.6564339900008],[351.99275975366527],[0],[\"run\"],[0],[1]],[[299.1479639900007],[351.99275975366527],[0],[\"run\"],[0],[1]],[[304.6639139900007],[351.99275975366527],[0],[\"run\"],[0],[1]],[[310.13267399000074],[351.99275975366527],[0],[\"run\"],[0],[1]],[[315.61991399000095],[351.99275975366527],[0],[\"run\"],[0],[1]],[[321.1144139900014],[351.99275975366527],[0],[\"run\"],[0],[1]],[[326.61023399000095],[351.99275975366527],[0],[\"run\"],[0],[1]],[[332.11760399000167],[351.99275975366527],[0],[\"run\"],[0],[1]],[[337.5863639900017],[351.99275975366527],[0],[\"run\"],[0],[1]],[[343.0858139900008],[351.99275975366527],[0],[\"run\"],[0],[1]],[[348.5677739900011],[351.99275975366527],[0],[\"run\"],[0],[1]],[[354.07976399000154],[351.99275975366527],[0],[\"run\"],[0],[1]],[[359.56568399000145],[351.99275975366527],[0],[\"run\"],[0],[1]],[[365.0601839900007],[351.99275975366527],[0],[\"run\"],[0],[1]],[[370.5401639900006],[351.99275975366527],[0],[\"run\"],[0],[1]],[[376.0448939900008],[351.99275975366527],[0],[\"run\"],[0],[1]],[[381.5182739900006],[351.99275975366527],[0],[\"run\"],[0],[1]],[[387.00782399000127],[351.99275975366527],[0],[\"run\"],[0],[1]],[[392.504633990001],[351.99275975366527],[0],[\"run\"],[0],[1]],[[397.9931939900015],[351.99275975366527],[0],[\"run\"],[0],[1]],[[403.4906639900014],[351.99275975366527],[0],[\"run\"],[0],[1]],[[408.98318399000146],[351.99275975366527],[0],[\"run\"],[0],[1]],[[414.4661339900008],[351.99275975366527],[0],[\"run\"],[0],[1]],[[419.96294399000175],[351.99275975366527],[0],[\"run\"],[0],[1]],[[425.45909399000135],[351.99275975366527],[0],[\"run\"],[0],[1]],[[430.94072399000163],[351.99275975366527],[0],[\"run\"],[0],[1]],[[436.4263139900015],[351.99275975366527],[0],[\"run\"],[0],[1]],[[441.92213399000104],[351.99275975366527],[0],[\"run\"],[0],[1]],[[447.4430339900009],[351.99275975366527],[0],[\"run\"],[0],[1]],[[452.90585399000094],[351.99275975366527],[0],[\"run\"],[0],[1]],[[458.3944139900014],[351.99275975366527],[0],[\"run\"],[0],[1]],[[463.89320399000155],[351.99275975366527],[0],[\"run\"],[0],[1]],[[469.37714399000106],[351.99275975366527],[0],[\"run\"],[0],[1]],[[474.874943990001],[351.99275975366527],[0],[\"run\"],[0],[1]],[[480.36317399000137],[351.99275975366527],[0],[\"run\"],[0],[1]],[[485.85272399000087],[351.99275975366527],[0],[\"run\"],[0],[1]],[[491.339633990001],[351.99275975366527],[0],[\"run\"],[0],[1]],[[496.8328139900012],[351.99275975366527],[0],[\"run\"],[0],[1]],[[502.32830399000073],[351.99275975366527],[0],[\"run\"],[0],[1]],[[507.83765399000066],[351.99275975366527],[0],[\"run\"],[0],[1]],[[513.3156539900014],[351.99275975366527],[0],[\"run\"],[0],[1]],[[518.8009139900012],[351.99275975366527],[0],[\"run\"],[0],[1]],[[524.2931039900012],[351.99275975366527],[0],[\"run\"],[0],[1]],[[529.7810039900015],[351.99275975366527],[0],[\"run\"],[0],[1]],[[535.2801239900017],[351.99275975366527],[0],[\"run\"],[0],[1]],[[540.7756139900011],[351.99275975366527],[0],[\"run\"],[0],[1]],[[546.2536139900006],[351.99275975366527],[0],[\"run\"],[0],[1]],[[551.7458039900007],[351.99275975366527],[0],[\"run\"],[0],[1]],[[557.257133990001],[351.99275975366527],[0],[\"run\"],[0],[1]],[[562.7285339900016],[351.99275975366527],[0],[\"run\"],[0],[1]],[[568.2253439900013],[351.99275975366527],[0],[\"run\"],[0],[1]],[[573.7132439900016],[351.99275975366527],[0],[\"run\"],[0],[1]],[[579.2021339900009],[351.99275975366527],[0],[\"run\"],[0],[1]],[[584.6982839900005],[351.99275975366527],[0],[\"run\"],[0],[1]],[[590.1838739900015],[351.99275975366527],[0],[\"run\"],[0],[1]],[[595.6780439900008],[351.99275975366527],[0],[\"run\"],[0],[1]],[[601.165283990001],[351.99275975366527],[0],[\"run\"],[0],[1]],[[606.6594539900013],[351.99275975366527],[0],[\"run\"],[0],[1]],[[612.1473539900005],[351.99275975366527],[0],[\"run\"],[0],[1]],[[617.6408639900008],[351.99275975366527],[0],[\"run\"],[0],[1]],[[623.1399839900009],[351.99275975366527],[0],[\"run\"],[0],[1]],[[628.6252439900007],[351.99275975366527],[0],[\"run\"],[0],[1]],[[634.1147939900014],[351.99275975366527],[0],[\"run\"],[0],[1]],[[639.6119339900013],[351.99275975366527],[0],[\"run\"],[0],[1]],[[645.1176539900005],[351.99275975366527],[0],[\"run\"],[0],[1]],[[650.589053990001],[351.99275975366527],[0],[\"run\"],[0],[1]],[[656.086523990001],[351.99275975366527],[0],[\"run\"],[0],[1]],[[661.572773990001],[351.99275975366527],[0],[\"run\"],[0],[1]],[[667.0570439900006],[351.99275975366527],[0],[\"run\"],[0],[1]],[[672.5561639900008],[351.99275975366527],[0],[\"run\"],[0],[1]],[[678.0457139900014],[351.99275975366527],[0],[\"run\"],[0],[1]],[[683.5398839900007],[351.99275975366527],[0],[\"run\"],[0],[1]],[[689.0304239900016],[351.99275975366527],[0],[\"run\"],[0],[1]],[[694.5183239900008],[351.99275975366527],[0],[\"run\"],[0],[1]],[[705.5183239900008],[351.99275975366527],[0],[\"run\"],[0],[1]],[[716.4868639900012],[351.99275975366527],[0],[\"run\"],[0],[1]],[[721.977733990001],[351.99275975366527],[0],[\"run\"],[0],[1]],[[727.4669539900003],[351.99275975366527],[0],[\"run\"],[0],[1]],[[732.9634339900012],[351.99275975366527],[0],[\"run\"],[0],[1]],[[738.454303990001],[351.99275975366527],[0],[\"run\"],[0],[1]],[[743.9544139900003],[351.99275975366527],[0],[\"run\"],[0],[1]],[[749.443963990001],[351.99275975366527],[0],[\"run\"],[0],[1]],[[754.9265839900003],[351.99275975366527],[0],[\"run\"],[0],[1]],[[760.4174539900013],[351.99275975366527],[0],[\"run\"],[0],[1]],[[765.9099739900014],[351.99275975366527],[0],[\"run\"],[0],[1]],[[771.4008439900011],[351.99275975366527],[0],[\"run\"],[0],[1]],[[776.8828039900014],[351.99275975366527],[0],[\"run\"],[0],[1]],[[782.3954539900008],[351.99275975366527],[0],[\"run\"],[0],[1]],[[787.8836839900011],[351.99275975366527],[0],[\"run\"],[0],[1]],[[793.3745539900009],[351.99275975366527],[0],[\"run\"],[0],[1]],[[798.849913990001],[351.99275975366527],[0],[\"run\"],[0],[1]],[[804.3407839900008],[351.99275975366527],[0],[\"run\"],[0],[1]],[[809.8415539900013],[351.99275975366527],[0],[\"run\"],[0],[1]],[[815.3377039900009],[351.99275975366527],[0],[\"run\"],[0],[1]],[[820.8285739900007],[351.99275975366527],[0],[\"run\"],[0],[1]],[[826.3075639900004],[351.99275975366527],[0],[\"run\"],[0],[1]],[[831.8109739900003],[351.99275975366527],[0],[\"run\"],[0],[1]],[[837.2869939900006],[351.99275975366527],[0],[\"run\"],[0],[1]],[[842.7778639900004],[351.99275975366527],[0],[\"run\"],[0],[1]],[[848.2750039900013],[351.99275975366527],[0],[\"run\"],[0],[1]],[[853.7658739900011],[351.99275975366527],[0],[\"run\"],[0],[1]],[[859.2673039900005],[351.99275975366527],[0],[\"run\"],[0],[1]],[[864.7581739900003],[351.99275975366527],[0],[\"run\"],[0],[1]],[[870.236173990001],[351.99275975366527],[0],[\"run\"],[0],[1]],[[875.7402439900011],[351.99275975366527],[0],[\"run\"],[0],[1]],[[881.2271539900012],[351.99275975366527],[0],[\"run\"],[0],[1]],[[886.7153839900004],[351.99275975366527],[0],[\"run\"],[0],[1]],[[892.2016339900005],[351.99275975366527],[0],[\"run\"],[0],[1]],[[897.6915139900012],[351.99275975366527],[0],[\"run\"],[0],[1]],[[903.1810639900007],[351.99275975366527],[0],[\"run\"],[0],[1]],[[908.6725939900006],[351.99275975366527],[0],[\"run\"],[0],[1]],[[914.1634639900003],[351.99275975366527],[0],[\"run\"],[0],[1]],[[919.6609339900014],[351.99275975366527],[0],[\"run\"],[0],[1]],[[925.1518039900011],[351.99275975366527],[0],[\"run\"],[0],[1]],[[930.6426739900008],[351.99275975366527],[0],[\"run\"],[0],[1]],[[936.1276039900006],[351.99275975366527],[0],[\"run\"],[0],[1]],[[941.6204539900007],[351.99275975366527],[0],[\"run\"],[0],[1]],[[947.1212239900012],[351.99275975366527],[0],[\"run\"],[0],[1]],[[952.612093990001],[351.99275975366527],[0],[\"run\"],[0],[1]],[[958.0940539900013],[351.99275975366527],[0],[\"run\"],[0],[1]],[[963.5971339900011],[351.99275975366527],[0],[\"run\"],[0],[1]],[[969.0744739900005],[351.99275975366527],[0],[\"run\"],[0],[1]],[[974.5679839900007],[351.99275975366527],[0],[\"run\"],[0],[1]],[[980.0588539900004],[351.99275975366527],[0],[\"run\"],[0],[1]],[[985.5497239900002],[351.99275975366527],[0],[\"run\"],[0],[1]],[[991.0415839900002],[351.99275975366527],[0],[\"run\"],[0],[1]],[[996.5324539900012],[351.99275975366527],[0],[\"run\"],[0],[1]],[[1002.0193639900012],[351.99275975366527],[0],[\"run\"],[0],[1]],[[1007.5188139900004],[351.99275975366527],[0],[\"run\"],[0],[1]],[[1013.0110039900004],[351.99275975366527],[0],[\"run\"],[0],[1]],[[1018.5018739900014],[351.99275975366527],[0],[\"run\"],[0],[1]],[[1023.9983539900011],[351.99275975366527],[0],[\"run\"],[0],[1]],[[1029.496153990001],[351.99275975366527],[0],[\"run\"],[0],[1]],[[1034.9870239900006],[351.99275975366527],[0],[\"run\"],[0],[1]],[[1040.4623839900007],[351.99275975366527],[0],[\"run\"],[0],[1]],[[1045.9657939900005],[351.99275975366527],[0],[\"run\"],[0],[1]],[[1051.4454439900003],[351.99275975366527],[0],[\"run\"],[0],[1]],[[1056.9399439900008],[351.99275975366527],[0],[\"run\"],[0],[1]],[[1062.4298239900004],[351.99275975366527],[0],[\"run\"],[0],[1]],[[1067.9292739900006],[351.99275975366527],[0],[\"run\"],[0],[1]],[[1073.4201439900003],[351.99275975366527],[0],[\"run\"],[0],[1]],[[1078.9007839900003],[351.99275975366527],[0],[\"run\"],[0],[1]],[[1084.39165399],[351.99275975366527],[0],[\"run\"],[0],[1]],[[1089.8808739900005],[351.99275975366527],[0],[\"run\"],[0],[1]],[[1095.3770239900002],[351.99275975366527],[0],[\"run\"],[0],[1]],[[1100.87482399],[351.99275975366527],[0],[\"run\"],[0],[1]],[[1106.3656939899997],[351.99275975366527],[0],[\"run\"],[0],[1]],[[1111.8572239899995],[341.1761097536655],[0],[\"jump\"],[0],[1]],[[1117.3431439899994],[330.78504581766566],[0],[\"jump\"],[0],[1]],[[1122.8317039899998],[320.80391650566486],[0],[\"jump\"],[0],[1]],[[1128.3225739899995],[311.2338708631653],[0],[\"jump\"],[0],[1]],[[1133.8137739899992],[302.0785844631656],[0],[\"jump\"],[0],[1]],[[1139.3046439900002],[293.33913274216417],[0],[\"jump\"],[0],[1]],[[1144.7955139899998],[285.0149655026646],[0],[\"jump\"],[0],[1]],[[1150.2966139899993],[277.09212291766545],[0],[\"jump\"],[0],[1]],[[1155.7874839900003],[269.59929835466426],[0],[\"jump\"],[0],[1]],[[1161.27868399],[262.52135787466455],[0],[\"jump\"],[0],[1]],[[1166.7560239899994],[255.8745227946653],[0],[\"jump\"],[0],[1]],[[1172.2676839899998],[249.6044750806649],[0],[\"jump\"],[0],[1]],[[1177.7506339900003],[243.78117511316444],[0],[\"jump\"],[0],[1]],[[1183.2395239899997],[238.36655145816513],[0],[\"jump\"],[0],[1]],[[1188.73270399],[233.36332982216499],[0],[\"jump\"],[0],[1]],[[1194.2235739899995],[228.77749662966522],[0],[\"jump\"],[0],[1]],[[1199.7160939899995],[224.6058195036652],[0],[\"jump\"],[0],[1]],[[1205.2039939899998],[220.85248670866503],[0],[\"jump\"],[0],[1]],[[1210.6948639899995],[217.51240712666524],[0],[\"jump\"],[0],[1]],[[1216.1827639899998],[214.58896953666513],[0],[\"jump\"],[0],[1]],[[1221.68782399],[212.07382439666512],[0],[\"jump\"],[0],[1]],[[1227.1786939899996],[209.9804468481653],[0],[\"jump\"],[0],[1]],[[1232.6586739899994],[208.30485993316537],[0],[\"jump\"],[0],[1]],[[1238.1548239899992],[207.0404123331655],[0],[\"jump\"],[0],[1]],[[1243.6361239899993],[206.19321928316552],[0],[\"jump\"],[0],[1]],[[1249.126003989999],[205.75983484716556],[0],[\"jump\"],[0],[1]],[[1254.6277639899997],[205.74244595116562],[0],[\"jump\"],[0],[1]],[[1260.1166539899991],[206.1400827656656],[0],[\"fall\"],[0],[1]],[[1265.6038939899993],[206.95233562366565],[0],[\"fall\"],[0],[1]],[[1271.0974039899995],[208.18120051666577],[0],[\"fall\"],[0],[1]],[[1276.5882739899992],[209.82475933916572],[0],[\"fall\"],[0],[1]],[[1282.0791439899988],[211.88360264316563],[0],[\"fall\"],[0],[1]],[[1287.5733139899992],[214.35946710866585],[0],[\"fall\"],[0],[1]],[[1293.0641839899988],[217.24912896066573],[0],[\"fall\"],[0],[1]],[[1298.5603339899985],[220.55765303816548],[0],[\"fall\"],[0],[1]],[[1304.054833989999],[224.28101761316583],[0],[\"fall\"],[0],[1]],[[1309.5338239899986],[228.40736120316564],[0],[\"fall\"],[0],[1]],[[1315.0246939899996],[232.9579363546665],[0],[\"fall\"],[0],[1]],[[1320.5363539899988],[237.94417648766577],[0],[\"fall\"],[0],[1]],[[1326.0278839899986],[243.32758991066567],[0],[\"fall\"],[0],[1]],[[1331.5187539899996],[249.12564080916675],[0],[\"fall\"],[0],[1]],[[1337.0043439899994],[255.33260251716666],[0],[\"fall\"],[0],[1]],[[1342.5021439899992],[261.96971327716665],[0],[\"fall\"],[0],[1]],[[1347.9930139899989],[269.0137424126664],[0],[\"fall\"],[0],[1]],[[1353.479923989999],[276.4673771076666],[0],[\"fall\"],[0],[1]],[[1358.9523139899986],[284.31378109616605],[0],[\"fall\"],[0],[1]],[[1364.4438439899984],[292.6030126571659],[0],[\"fall\"],[0],[1]],[[1369.934713989998],[301.30653245766547],[0],[\"fall\"],[0],[1]],[[1375.425583989999],[310.4253367396671],[0],[\"fall\"],[0],[1]],[[1380.506770568499],[319.97138520316696],[0],[\"fall\"],[0],[1]],[[1385.1665724354987],[329.9212576181665],[0],[\"fall\"],[0],[1]],[[1389.4108596834985],[340.28576661416594],[0],[\"fall\"],[0],[1]],[[1393.2401175459984],[351.0661830336654],[0],[\"fall\"],[0],[1]],[[1396.6519280649986],[351.9411830336654],[0],[\"run\"],[0],[1]],[[1399.6596074424986],[351.9411830336654],[0],[\"run\"],[0],[1]],[[1402.241913686499],[351.9411830336654],[0],[\"run\"],[0],[1]],[[1404.405143460999],[351.9411830336654],[0],[\"run\"],[0],[1]],[[1406.157136155999],[351.9411830336654],[0],[\"run\"],[0],[1]],[[1407.494687129499],[351.9411830336654],[0],[\"run\"],[0],[1]],[[1408.4166792744988],[351.9411830336654],[0],[\"run\"],[0],[1]],[[1408.924142249499],[351.9411830336654],[0],[\"run\"],[0],[1]],[[1409.014891355499],[351.9411830336654],[0],[\"run\"],[0],[1]],[[1409.014891355499],[351.9411830336654],[0],[\"idle\"],[0],[1]],[[1409.014891355499],[351.9411830336654],[0],[\"idle\"],[0],[1]],[[1409.014891355499],[351.9411830336654],[0],[\"idle\"],[0],[1]],[[1409.014891355499],[351.9411830336654],[0],[\"idle\"],[0],[1]],[[1409.014891355499],[351.9411830336654],[0],[\"idle\"],[0],[1]],[[1409.014891355499],[351.9411830336654],[0],[\"idle\"],[0],[1]],[[1409.014891355499],[351.9411830336654],[0],[\"idle\"],[0],[1]],[[1409.014891355499],[351.9411830336654],[0],[\"idle\"],[0],[1]],[[1409.014891355499],[351.9411830336654],[0],[\"idle\"],[0],[1]],[[1409.014891355499],[351.9411830336654],[0],[\"idle\"],[0],[1]],[[1409.014891355499],[351.9411830336654],[0],[\"idle\"],[0],[1]],[[1409.014891355499],[351.9411830336654],[0],[\"idle\"],[0],[1]],[[1409.014891355499],[351.9411830336654],[0],[\"idle\"],[0],[1]],[[1409.014891355499],[351.9411830336654],[0],[\"idle\"],[0],[1]],[[1409.014891355499],[351.9411830336654],[0],[\"idle\"],[0],[1]],[[1409.014891355499],[351.9411830336654],[0],[\"idle\"],[0],[1]],[[1409.014891355499],[351.9411830336654],[0],[\"idle\"],[0],[1]],[[1409.014891355499],[351.9411830336654],[0],[\"idle\"],[0],[1]],[[1409.014891355499],[351.9411830336654],[0],[\"idle\"],[0],[1]],[[1409.014891355499],[351.9411830336654],[0],[\"idle\"],[0],[1]],[[1409.014891355499],[351.9411830336654],[0],[\"idle\"],[0],[1]],[[1409.014891355499],[351.9411830336654],[0],[\"idle\"],[0],[1]],[[1409.014891355499],[351.9411830336654],[0],[\"idle\"],[0],[1]],[[1409.014891355499],[351.9411830336654],[0],[\"idle\"],[0],[1]],[[1409.014891355499],[351.9411830336654],[0],[\"idle\"],[0],[1]],[[1409.014891355499],[351.9411830336654],[0],[\"idle\"],[0],[1]],[[1409.014891355499],[351.9411830336654],[0],[\"idle\"],[0],[1]],[[1409.014891355499],[351.9411830336654],[0],[\"idle\"],[0],[1]],[[1409.014891355499],[351.9411830336654],[0],[\"idle\"],[0],[1]],[[1409.014891355499],[351.9411830336654],[0],[\"idle\"],[0],[1]],[[1409.014891355499],[351.9411830336654],[0],[\"idle\"],[0],[1]],[[1409.014891355499],[351.9411830336654],[0],[\"idle\"],[0],[1]],[[1409.014891355499],[351.9411830336654],[0],[\"idle\"],[0],[1]],[[1409.014891355499],[351.9411830336654],[0],[\"idle\"],[0],[1]],[[1409.014891355499],[351.9411830336654],[0],[\"idle\"],[0],[1]],[[1409.014891355499],[351.9411830336654],[0],[\"idle\"],[0],[1]],[[1409.014891355499],[351.9411830336654],[0],[\"idle\"],[0],[1]],[[1409.014891355499],[351.9411830336654],[0],[\"idle\"],[0],[1]],[[1409.014891355499],[351.9411830336654],[0],[\"idle\"],[0],[1]],[[1409.014891355499],[351.9411830336654],[0],[\"idle\"],[0],[1]],[[1409.014891355499],[351.9411830336654],[0],[\"idle\"],[0],[1]],[[1409.014891355499],[351.9411830336654],[0],[\"idle\"],[0],[1]],[[1409.014891355499],[351.9411830336654],[0],[\"idle\"],[0],[1]],[[1409.014891355499],[351.9411830336654],[0],[\"idle\"],[0],[1]],[[1409.014891355499],[351.9411830336654],[0],[\"idle\"],[0],[1]],[[1409.014891355499],[351.9411830336654],[0],[\"idle\"],[0],[1]],[[1409.014891355499],[351.9411830336654],[0],[\"idle\"],[0],[1]],[[1409.014891355499],[351.9411830336654],[0],[\"idle\"],[0],[1]],[[1409.014891355499],[351.9411830336654],[0],[\"idle\"],[0],[1]],[[1409.014891355499],[351.9411830336654],[0],[\"idle\"],[0],[1]],[[1409.014891355499],[351.9411830336654],[0],[\"idle\"],[0],[1]],[[1409.014891355499],[351.9411830336654],[0],[\"idle\"],[0],[1]],[[1409.014891355499],[351.9411830336654],[0],[\"idle\"],[0],[1]],[[1409.014891355499],[351.9411830336654],[0],[\"idle\"],[0],[1]],[[1409.014891355499],[351.9411830336654],[0],[\"idle\"],[0],[1]],[[1409.014891355499],[351.9411830336654],[0],[\"idle\"],[0],[1]],[[1409.014891355499],[351.9411830336654],[0],[\"idle\"],[0],[1]],[[1409.014891355499],[351.9411830336654],[0],[\"idle\"],[0],[1]],[[1409.014891355499],[351.9411830336654],[0],[\"idle\"],[0],[1]],[[1409.014891355499],[351.9411830336654],[0],[\"idle\"],[0],[1]],[[1409.014891355499],[351.9411830336654],[0],[\"idle\"],[0],[1]],[[1409.014891355499],[351.9411830336654],[0],[\"idle\"],[0],[1]],[[1409.014891355499],[351.9411830336654],[0],[\"idle\"],[0],[1]],[[1409.014891355499],[351.9411830336654],[0],[\"idle\"],[0],[1]],[[1409.014891355499],[351.9411830336654],[0],[\"idle\"],[0],[1]],[[1409.014891355499],[351.9411830336654],[0],[\"idle\"],[0],[1]],[[1409.014891355499],[351.9411830336654],[0],[\"idle\"],[0],[1]],[[1409.014891355499],[351.9411830336654],[0],[\"idle\"],[0],[1]],[[1409.014891355499],[351.9411830336654],[0],[\"idle\"],[0],[1]],[[1409.014891355499],[351.9411830336654],[0],[\"idle\"],[0],[1]],[[1409.014891355499],[351.9411830336654],[0],[\"idle\"],[0],[1]],[[1409.014891355499],[351.9411830336654],[0],[\"idle\"],[0],[1]],[[1409.014891355499],[351.9411830336654],[0],[\"idle\"],[0],[1]],[[1409.014891355499],[351.9411830336654],[0],[\"idle\"],[0],[1]],[[1409.014891355499],[351.9411830336654],[0],[\"idle\"],[0],[1]],[[1409.014891355499],[351.9411830336654],[0],[\"idle\"],[0],[1]],[[1409.014891355499],[351.9411830336654],[0],[\"idle\"],[0],[1]],[[1409.014891355499],[351.9411830336654],[0],[\"idle\"],[0],[1]],[[1409.014891355499],[351.9411830336654],[0],[\"idle\"],[0],[1]],[[1409.014891355499],[351.9411830336654],[0],[\"idle\"],[0],[1]],[[1409.014891355499],[351.9411830336654],[0],[\"idle\"],[0],[1]]]}"],[0]],[],[1,"Default",0,1]],[[170,288,0,249,52,0,0,1,0,0,0,0,[]],46,99,[[1],[1],["lvltxt1-1"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Hello, and Welcome to OvO!",1,0,50,0,0,0,0,0,"",-1,0]],[[542,287,0,249,52,0,0,1,0,0,0,0,[]],46,100,[[1],[1],[""],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Use arrow keys to move",1,0,50,0,0,0,0,0,"",-1,0]],[[8.000009536743164,0,0,392,9,0,1.570796370506287,1,0,0,0,0,[]],51,2700,[],[[0],[1],[1,100,""]],[0,0]],[[1352,128,0,249,52,0,0,1,0,0,0,0,[]],46,2701,[[1],[1],[""],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","This is the end of the Level",1,0,50,0,0,0,0,0,"",-1,0]],[[329.9974365234375,136,0,300,117,0,0,1,0,0,0,0,[[]]],61,5442,[],[[1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>","1",7,0,60,0,0,0,0,0,"",-1,0]],[[1512,288,0,97,199,0,0,1,0.5257731676101685,0.4974874258041382,0,0,[]],44,3147,[],[[0]],[0,"Default",0,1]],[[1112,288,0,176,96,0,0,1,0,0,0,0,[]],46,3152,[[1],[1],[""],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Press \"Up\" to jump",1,0,50,0,0,0,0,0,"",-1,0]],[[1296,384,0,337,9,0,0,1,0,0,0,0,[]],51,3153,[],[[0],[1],[1,100,""]],[0,0]],[[1104,448,0,200,9,0,0,1,0,0,0,0,[]],51,3162,[],[[0],[1],[1,100,""]],[0,0]],[[1304,384,0,71,9,0,1.570796370506287,1,0,0,0,0,[]],51,3166,[],[[0],[1],[1,100,""]],[0,0]],[[1112,384,0,71,9,0,1.570796370506287,1,0,0,0,0,[]],51,3168,[],[[0],[1],[1,100,""]],[0,0]],[[1201,215,0,64,64,0,0,1,0.5,0.5,0,0,[]],60,3246,[["level1"]],[[1],[400,-200,800,0,0,0],[0,0,0,1,1]],[0,"Default",0,1]],[[426.8966979980469,269.1820068359375,0,112,112,0,0,1,0,0,0,0,[[]]],65,48,[[1],[1],[""],["en-us"],[1],[0],[0],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","1",1,0,50,0,0,0,0,0,"",-1,0]]],[]],["UI",4,339750249863734,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[240,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3097,[["right"]],[[0,1,0,1,1]],[0,"Default",0,1]],[[80,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3098,[["left"]],[[0,1,0,1,1]],[0,"Default",1,1]],[[560,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3099,[["up"]],[[1,1,1,1,1]],[0,"Default",3,1]],[[400,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3100,[["down"]],[[1,1,1,1,1]],[0,"Default",2,1]]],[]],["End Card",5,659235480422105,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],78,2607,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[12.04449462890625,194,0,615.9109497070313,67,0,0,1,0,0,0,0,[]],79,2608,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Timer for this level",2.5,0,0,0,0,0,-10,0,"",-1,0]],[[17.546875,248,0,604.90625,105,0,0,1,0,0,0,0,[]],80,2610,[[0],[0],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","13:40:40",4,0,63,50,0,0,-10,0,"",-1,0]],[[115.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,2611,[[0],[1],[0],[0],["replay"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Replay",""],[""],[2,2,0,0,0],["",""]],[0,"Replay",0,1]],[[524.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3086,[[0],[1],[0],[0],["next"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Next",""],[""],[2,2,0,0,0],["",""]],[0,"Next",0,1]],[[320.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3087,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > Back","Level Menu"],[""],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[320.75,521.8050537109375,0,384,96,0,0,1,0.5,0.5,0,0,[]],70,3088,[[1],[1],[0],[0],[""],["{\"size\": 22, \"left\": 70, \"right\": 18, \"alignY\": 60}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > DownloadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"DownloadReplay",0,1]]],[]],["Pause",6,666340553478949,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-310,678,0,274,31,0,0,1,0,0,0,0,[]],168,3089,[],[],[".ovo",0,1,"file"]],[[320,320,0,425,250,0,0,1,0.5,0.5,0,0,[]],82,3090,[],[[6,1,"",300,1,1,"",300,"overlay",1,"PauseClose",1,1]],[0,"Default",0,1]],[[214,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3091,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"",""],["PauseClose"],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[426,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3092,[[0],[1],[0],[0],["quit"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > GiveUp",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[115.5,202,0,409,118,0,0,1,0,0,0,0,[]],83,3093,[[1],[1],["pause"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Pause",4,0,57,50,0,0,-10,0,"",-1,0]],[[320.5,88,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3094,[[1],[1],[0],[0],["loadreplay"],["{\"size\": 16, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > LoadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"LoadReplay",0,1]],[[320.5,157,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3095,[[1],[0],[0],[0],["toggledebug"],["{\"size\": 15, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Debug > Toggle",""],[""],[2,2,0,0,0],["",""]],[0,"ToggleDebug",0,1]],[[78,448,0,484,134,0,0,1,0,0,0,0,[]],193,3096,[],[],[0,"Default",0,1]]],[]],["Overlay",7,513203797983555,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[432,4,0,203.0009155273438,64,0,0,1,0,0,0,0,[]],107,5488,[],[[1,0,1,0,1]],[2,2,2,2,0,1,0,0,1]],[[432,4,0,203,64,0,0,1,0,0,0,0,[]],84,3101,[[0],[0],[""],["en-us"],[0],[1],[1],["{\"alignY\": 85, \"alignX\": 45, \"size\": 28}"],[0],[1],[0],[0],[0]],[["",""],[1,0,1,0,1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",2,0,100,50,0,0,-10,0,"",-1,0]],[[88,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3102,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Pause",""],[""],[0,0,0,0,1],["",""]],[0,"Pause",0,1]],[[158,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3103,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Replay","1"],[""],[0,0,0,0,1],["",""]],[0,"Reload",0,1]]],[]],["End Game",8,185681525019619,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],85,3104,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[73,194,0,494,72,0,0,1,0,0,0,0,[]],86,3105,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],["{alignY:50}"],[0],[1],[0],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Your final time",2.5,0,50,50,0,0,-10,0,"",-1,0]],[[320,403,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3106,[[0],[1],[0],[0],[""],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Quit",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[73,243,0,494,85,0,0,1,0,0,0,0,[]],87,3108,[[0],[1],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",3,0,50,50,0,0,-10,0,"",-1,0]],[[73,318,0,494,25,0,0,1,0,0,0,0,[]],86,5480,[[1],[1],["tryagainhardmode"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Try again in hard mode!",1,0,50,50,0,0,-2,0,"",-1,0]]],[]],["Banner",9,277872880887797,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-237,-189,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,3109,[],[["overlay"]],[0,"Default",0,1]]],[]],["AdPlaying",10,841537139153822,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,-203.5,0,250,97,0,0,1,0.5,0.5,0,0,[]],125,390,[],[[6,1,"",300,1,1,"",300,"overlay",1,"",1,1],[]],[0,"Default",0,1]],[[209,-275,0,222,139,0,0,1,0,0,0,0,[]],86,391,[[1],[1],["adplaying"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","An ad is playing right now...",1.2,0,50,50,0,0,-2,0,"",-1,0]],[[-154.5756988525391,-294.3137512207031,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,5508,[],[["overlay"]],[0,"Default",0,1]]],[]]],[[null,30,4433,[[""],[""],[0],[""]],[],[]]],[]],["Level 2",2400,640,true,"Levels",511516739107697,[["Layer 0",0,180136532280282,true,[255,255,255],false,1,1,1,false,false,1,0,0,[[[32,384,0,288,9,0,0,1,0,0,0,0,[]],51,117,[],[[0],[1],[1,100,""]],[0,0]],[[144,304,0,32,64,0,0,1,0.5,0.5,0,0,[]],42,128,[["run"],[0],[1],[1],[0],[0.8],[0.5],[0],[1],[0],[0],[0],[""],[2],[0],[0],[0],[""],[0],[3],[0],[0],[0],[0],[0],[0],[0]],[[330,1500,1500,650,1500,1000,0,0,0,1],[],[0,0],[0,10000,360,1]],[1,"Default",0,1]],[[736,384,0,312,9,0,0,1,0,0,0,0,[]],51,131,[],[[0],[1],[1,100,""]],[0,0]],[[448,384,0,160,9,0,0,1,0,0,0,0,[]],51,132,[],[[0],[1],[1,100,""]],[0,0]],[[-109,41,0,60.93439102172852,60.93439102172852,0,0,1,0.5,0.5,0,0,[]],53,1405,[["Hard"],["{\"c2array\":true,\"size\":[344,6,1],\"data\":[[[919.500470005622],[351.94589405067757],[0],[\"idle\"],[0],[1]],[[919.500470005622],[351.94589405067757],[0],[\"idle\"],[0],[1]],[[919.500470005622],[351.94589405067757],[0],[\"idle\"],[0],[1]],[[919.500470005622],[351.94589405067757],[0],[\"idle\"],[0],[1]],[[919.500470005622],[351.94589405067757],[0],[\"idle\"],[0],[1]],[[919.500470005622],[351.94589405067757],[0],[\"idle\"],[0],[1]],[[919.500470005622],[351.94589405067757],[0],[\"idle\"],[0],[1]],[[919.500470005622],[351.94589405067757],[0],[\"idle\"],[0],[1]],[[919.500470005622],[351.94589405067757],[0],[\"idle\"],[0],[1]],[[919.500470005622],[351.94589405067757],[0],[\"idle\"],[0],[1]],[[919.9066205431257],[351.94589405067757],[0],[\"run\"],[0],[1]],[[920.7356582431227],[351.94589405067757],[0],[\"run\"],[0],[1]],[[922.0071594121329],[351.94589405067757],[0],[\"run\"],[0],[1]],[[923.6720161546314],[351.94589405067757],[0],[\"run\"],[0],[1]],[[925.708045438622],[351.94589405067757],[0],[\"run\"],[0],[1]],[[928.2090288976403],[351.94589405067757],[0],[\"run\"],[0],[1]],[[931.1142232561363],[351.94589405067757],[0],[\"run\"],[0],[1]],[[934.412041029125],[351.94589405067757],[0],[\"run\"],[0],[1]],[[942.715080468146],[351.94589405067757],[0],[\"run\"],[0],[1]],[[947.279391114138],[351.94589405067757],[0],[\"run\"],[0],[1]],[[952.2589862416283],[351.94589405067757],[0],[\"run\"],[0],[1]],[[957.6629457916417],[351.94589405067757],[0],[\"run\"],[0],[1]],[[963.1881357916473],[351.94589405067757],[0],[\"run\"],[0],[1]],[[968.6790057916362],[351.94589405067757],[0],[\"run\"],[0],[1]],[[974.267225791639],[351.94589405067757],[0],[\"run\"],[0],[1]],[[985.1407257916237],[351.94589405067757],[0],[\"run\"],[0],[1]],[[990.6315957916511],[351.94589405067757],[0],[\"run\"],[0],[1]],[[996.0703257916606],[351.94589405067757],[0],[\"run\"],[0],[1]],[[1007.0703257916606],[351.94589405067757],[0],[\"run\"],[0],[1]],[[1012.5664757916699],[351.94589405067757],[0],[\"run\"],[0],[1]],[[1023.5664757916699],[351.94589405067757],[0],[\"run\"],[0],[1]],[[1029.0573457916971],[351.94589405067757],[0],[\"run\"],[0],[1]],[[1034.5706557916762],[351.94589405067757],[0],[\"run\"],[0],[1]],[[1040.0615257917036],[351.94589405067757],[0],[\"run\"],[0],[1]],[[1045.5464557916794],[351.94589405067757],[0],[\"run\"],[0],[1]],[[1056.53050579169],[351.94589405067757],[0],[\"run\"],[0],[1]],[[1062.021375791679],[351.94589405067757],[0],[\"run\"],[0],[1]],[[1070.9786957916879],[351.94589405067757],[0],[\"wall\"],[0],[1]],[[1070.9568297656854],[351.94589405067757],[0],[\"wall\"],[0],[1]],[[1070.9971142471895],[351.94589405067757],[0],[\"wall\"],[0],[1]],[[1070.9787010846878],[351.94589405067757],[0],[\"wall\"],[0],[1]],[[1070.9590853061875],[351.94589405067757],[0],[\"wall\"],[0],[1]],[[1070.9971265601896],[351.94589405067757],[0],[\"wall\"],[0],[1]],[[1070.9749110416878],[351.94589405067757],[0],[\"wall\"],[0],[1]],[[1070.9475507776917],[351.94589405067757],[0],[\"wall\"],[0],[1]],[[1070.9475507776917],[351.94589405067757],[0],[\"wall\"],[0],[1]],[[1070.9475507776917],[351.94589405067757],[0],[\"wall\"],[0],[1]],[[1070.9475507776917],[351.94589405067757],[0],[\"wall\"],[0],[1]],[[1070.9475507776917],[351.94589405067757],[0],[\"wall\"],[0],[1]],[[1070.9475507776917],[351.94589405067757],[0],[\"wall\"],[0],[1]],[[1065.8366986151877],[341.0486440506685],[0],[\"jump\"],[0],[-1]],[[1061.1543184361851],[328.41324501665963],[0],[\"jump\"],[0],[-1]],[[1056.9149175431667],[316.2678648711015],[0],[\"jump\"],[0],[-1]],[[1050.1267489031738],[293.75801575111325],[0],[\"jump\"],[0],[-1]],[[1047.115584919184],[282.8014352721465],[0],[\"jump\"],[0],[-1]],[[1044.5291875286873],[272.28910243415805],[0],[\"jump\"],[0],[-1]],[[1042.3645867406794],[262.2185223936104],[0],[\"jump\"],[0],[-1]],[[1040.6155109726872],[252.56489281564598],[0],[\"jump\"],[0],[-1]],[[1038.77763089219],[234.89367259266007],[0],[\"jump\"],[0],[-1]],[[1038.2755142351907],[226.51218494316805],[0],[\"jump\"],[0],[-1]],[[1038.2185433351913],[217.8616963581634],[0],[\"jump\"],[0],[-1]],[[1038.2185433351913],[203.6060500791452],[0],[\"jump\"],[0],[-1]],[[1038.2185433351913],[197.47607192617008],[0],[\"jump\"],[0],[-1]],[[1038.6338278166954],[191.14063124464053],[0],[\"jump\"],[0],[1]],[[1039.4713731746945],[185.18971975865577],[0],[\"jump\"],[0],[1]],[[1042.8063897687045],[175.0013773086442],[0],[\"jump\"],[0],[1]],[[1044.8744929556908],[170.35121269267418],[0],[\"jump\"],[0],[1]],[[1047.3673476477004],[166.09455937266068],[0],[\"jump\"],[0],[1]],[[1050.275936362195],[162.25242292416863],[0],[\"jump\"],[0],[1]],[[1057.769453028862],[156.22203959083572],[0],[\"jump\"],[0],[1]],[[1061.8843758738597],[153.64668910583714],[0],[\"jump\"],[0],[1]],[[1071.869059207193],[150.10747243917044],[0],[\"jump\"],[0],[1]],[[1077.1316412242245],[148.77837035716522],[0],[\"jump\"],[0],[1]],[[1082.6225112242134],[147.83248480466852],[0],[\"jump\"],[0],[1]],[[1088.0840112241904],[147.3025124296704],[0],[\"jump\"],[0],[1]],[[1093.5653112242242],[147.18445685467188],[0],[\"jump\"],[0],[1]],[[1099.056181224213],[147.48147964367266],[0],[\"fall\"],[0],[1]],[[1104.551671224191],[148.19473596016948],[0],[\"fall\"],[0],[1]],[[1110.0425412242184],[149.32267713117687],[0],[\"fall\"],[0],[1]],[[1115.4799512242037],[150.84687377767338],[0],[\"fall\"],[0],[1]],[[1126.4799512242037],[155.59702377767468],[0],[\"fall\"],[0],[1]],[[1131.9708212241926],[158.3834406346689],[0],[\"fall\"],[0],[1]],[[1137.4395812242071],[161.5705842466782],[0],[\"fall\"],[0],[1]],[[1142.930451224196],[165.185897847171],[0],[\"fall\"],[0],[1]],[[1153.930451224196],[174.0952145138378],[0],[\"fall\"],[0],[1]],[[1159.4213212242234],[178.95776259586415],[0],[\"fall\"],[0],[1]],[[1170.392171224222],[190.3310599433666],[0],[\"fall\"],[0],[1]],[[1175.9031712242067],[191.96255679335036],[0],[\"run\"],[0],[1]],[[1181.3623612241893],[191.96255679335036],[0],[\"run\"],[0],[1]],[[1186.8651112242046],[191.96255679335036],[0],[\"run\"],[0],[1]],[[1192.3856812242211],[191.96255679335036],[0],[\"run\"],[0],[1]],[[1197.8488312241996],[191.96255679335036],[0],[\"run\"],[0],[1]],[[1208.8305712242159],[191.96255679335036],[0],[\"run\"],[0],[1]],[[1214.2950412242187],[191.96255679335036],[0],[\"run\"],[0],[1]],[[1219.8301312241952],[191.96255679335036],[0],[\"run\"],[0],[1]],[[1225.3332112241878],[191.96255679335036],[0],[\"run\"],[0],[1]],[[1236.3149512242042],[191.96255679335036],[0],[\"run\"],[0],[1]],[[1241.7391612242154],[191.96255679335036],[0],[\"run\"],[0],[1]],[[1247.26897122421],[191.96255679335036],[0],[\"run\"],[0],[1]],[[1252.8050512241948],[191.96255679335036],[0],[\"run\"],[0],[1]],[[1258.2959212242222],[191.96255679335036],[0],[\"run\"],[0],[1]],[[1263.7458712241885],[191.96255679335036],[0],[\"run\"],[0],[1]],[[1269.202091224222],[191.96255679335036],[0],[\"run\"],[0],[1]],[[1274.6929612242109],[191.96255679335036],[0],[\"run\"],[0],[1]],[[1280.2075912242142],[191.96255679335036],[0],[\"run\"],[0],[1]],[[1285.67272122421],[191.96255679335036],[0],[\"run\"],[0],[1]],[[1291.193291224188],[191.96255679335036],[0],[\"run\"],[0],[1]],[[1302.1697512242224],[191.96255679335036],[0],[\"run\"],[0],[1]],[[1307.6606212242114],[191.96255679335036],[0],[\"run\"],[0],[1]],[[1318.6509412242126],[191.96255679335036],[0],[\"run\"],[0],[1]],[[1324.1418112242015],[191.96255679335036],[0],[\"run\"],[0],[1]],[[1329.6346612242078],[191.96255679335036],[0],[\"run\"],[0],[1]],[[1335.1255312241967],[191.96255679335036],[0],[\"run\"],[0],[1]],[[1340.6718412242064],[191.96255679335036],[0],[\"run\"],[0],[1]],[[1346.1627112241954],[191.96255679335036],[0],[\"run\"],[0],[1]],[[1351.5882412241926],[191.96255679335036],[0],[\"run\"],[0],[1]],[[1357.0900012241993],[191.96255679335036],[0],[\"run\"],[0],[1]],[[1362.5808712241883],[191.96255679335036],[0],[\"run\"],[0],[1]],[[1373.5808712241883],[191.96255679335036],[0],[\"run\"],[0],[1]],[[1384.5292812241967],[191.96255679335036],[0],[\"run\"],[0],[1]],[[1389.9990312241814],[191.96255679335036],[0],[\"run\"],[0],[1]],[[1395.5463312241998],[191.96255679335036],[0],[\"run\"],[0],[1]],[[1401.0372012241887],[191.96255679335036],[0],[\"run\"],[0],[1]],[[1406.498701224204],[191.96255679335036],[0],[\"run\"],[0],[1]],[[1411.989571224193],[191.96255679335036],[0],[\"run\"],[0],[1]],[[1422.947881224172],[191.96255679335036],[0],[\"run\"],[0],[1]],[[1428.5318112242016],[191.96255679335036],[0],[\"run\"],[0],[1]],[[1434.0226812241906],[191.96255679335036],[0],[\"run\"],[0],[1]],[[1439.436001224184],[191.96255679335036],[0],[\"run\"],[0],[1]],[[1444.926871224173],[191.96255679335036],[0],[\"run\"],[0],[1]],[[1455.8855112241679],[191.96255679335036],[0],[\"run\"],[0],[1]],[[1460.9865718741953],[191.96255679335036],[0],[\"run\"],[0],[1]],[[1465.632358807667],[191.96255679335036],[0],[\"run\"],[0],[1]],[[1473.2996421410005],[191.96255679335036],[0],[\"run\"],[0],[1]],[[1476.685128146995],[191.96255679335036],[0],[\"run\"],[0],[1]],[[1479.6696432219976],[191.96255679335036],[0],[\"run\"],[0],[1]],[[1482.2740992860033],[191.96255679335036],[0],[\"run\"],[0],[1]],[[1485.7795225835005],[191.96255679335036],[0],[\"run\"],[0],[1]],[[1487.1188340445053],[191.96255679335036],[0],[\"run\"],[0],[1]],[[1488.0470953295041],[181.06530679334128],[0],[\"jump\"],[0],[1]],[[1488.553095639002],[170.6652412748614],[0],[\"jump\"],[0],[1]],[[1488.6443370490017],[160.69598969288091],[0],[\"jump\"],[0],[1]],[[1488.6443370490017],[151.172047187851],[0],[\"jump\"],[0],[1]],[[1488.6443370490017],[142.01506472036817],[0],[\"jump\"],[0],[1]],[[1488.6443370490017],[125.40324549635008],[0],[\"jump\"],[0],[1]],[[1488.6443370490017],[117.41868236584044],[0],[\"jump\"],[0],[1]],[[1488.6443370490017],[109.9245100438548],[0],[\"jump\"],[0],[1]],[[1488.6443370490017],[102.89009407588094],[0],[\"jump\"],[0],[1]],[[1488.6443370490017],[90.37521270736336],[0],[\"pound\"],[0],[1]],[[1488.6443370490017],[85.79979754486104],[0],[\"pound\"],[0],[1]],[[1488.6443370490017],[81.59741802585144],[0],[\"pound\"],[0],[1]],[[1488.6443370490017],[77.85603904185946],[0],[\"pound\"],[0],[1]],[[1488.6443370490017],[72.06853595986851],[0],[\"pound\"],[0],[1]],[[1488.6443370490017],[69.57563739586577],[0],[\"pound\"],[0],[1]],[[1488.6443370490017],[67.47108113836077],[0],[\"pound\"],[0],[1]],[[1488.6443370490017],[65.7938333383653],[0],[\"pound\"],[0],[1]],[[1488.6443370490017],[64.54189001985998],[0],[\"pound\"],[0],[1]],[[1488.6443370490017],[63.704044244861215],[0],[\"pound\"],[0],[1]],[[1488.6443370490017],[63.28385393086181],[0],[\"pound\"],[0],[1]],[[1488.6443370490017],[81.58399185689142],[0],[\"pound\"],[0],[1]],[[1488.6443370490017],[91.04142378141161],[0],[\"pound\"],[0],[1]],[[1488.6443370490017],[101.0919085963601],[0],[\"pound\"],[0],[1]],[[1488.6443370490017],[111.56688937738299],[0],[\"pound\"],[0],[1]],[[1488.6443370490017],[122.37966865186114],[0],[\"pound\"],[0],[1]],[[1488.6443370490017],[145.65437063885193],[0],[\"pound\"],[0],[1]],[[1488.6443370490017],[157.5971926488411],[0],[\"pound\"],[0],[1]],[[1488.6443370490017],[170.19468093684324],[0],[\"pound\"],[0],[1]],[[1488.6443370490017],[196.8034036788839],[0],[\"pound\"],[0],[1]],[[1488.6443370490017],[210.34896383889162],[0],[\"pound\"],[0],[1]],[[1488.6443370490017],[224.66416638041363],[0],[\"pound\"],[0],[1]],[[1488.6443370490017],[239.2208520133698],[0],[\"pound\"],[0],[1]],[[1488.6443370490017],[269.98311840841825],[0],[\"pound\"],[0],[1]],[[1488.6443370490017],[285.7581017843897],[0],[\"pound\"],[0],[1]],[[1488.6443370490017],[301.96425867035214],[0],[\"pound\"],[0],[1]],[[1488.6443370490017],[318.55370232085465],[0],[\"pound\"],[0],[1]],[[1488.6443370490017],[353.4656687599084],[0],[\"pound\"],[0],[1]],[[1488.6443370490017],[371.2666054848582],[0],[\"pound\"],[0],[1]],[[1488.6443370490017],[389.55156032345116],[0],[\"pound\"],[0],[1]],[[1488.6443370490017],[408.44254816837815],[0],[\"pound\"],[0],[1]],[[1488.6443370490017],[447.3912933208832],[0],[\"pound\"],[0],[1]],[[1488.6443370490017],[467.2607403208266],[0],[\"pound\"],[0],[1]],[[1488.6443370490017],[487.62219244242925],[0],[\"pound\"],[0],[1]],[[1488.6443370490017],[503.9544757757651],[0],[\"poundFloor\"],[0],[1]],[[1488.6443370490017],[503.9544757757651],[0],[\"poundFloor\"],[0],[1]],[[1488.6443370490017],[503.9544757757651],[0],[\"poundFloor\"],[0],[1]],[[1488.6443370490017],[503.9544757757651],[0],[\"poundFloor\"],[0],[1]],[[1488.6443370490017],[503.9544757757651],[0],[\"poundFloor\"],[0],[1]],[[1488.6443370490017],[503.9544757757651],[0],[\"poundFloor\"],[0],[1]],[[1488.6443370490017],[503.9544757757651],[0],[\"poundFloor\"],[0],[1]],[[1488.6443370490017],[503.9544757757651],[0],[\"poundFloor\"],[0],[1]],[[1488.6443370490017],[503.9544757757651],[0],[\"poundFloor\"],[0],[1]],[[1488.6443370490017],[503.9544757757651],[0],[\"poundFloor\"],[0],[1]],[[1488.6443370490017],[503.9544757757651],[0],[\"poundFloor\"],[0],[1]],[[1488.6443370490017],[503.9544757757651],[0],[\"idle\"],[0],[1]],[[1489.0575774550016],[503.9544757757651],[0],[\"run\"],[0],[1]],[[1489.8871231195078],[503.9544757757651],[0],[\"run\"],[0],[1]],[[1493.211844409506],[503.9544757757651],[0],[\"run\"],[0],[1]],[[1495.2879922735021],[503.9544757757651],[0],[\"run\"],[0],[1]],[[1497.809165779004],[503.9544757757651],[0],[\"run\"],[0],[1]],[[1500.7201255509976],[503.9544757757651],[0],[\"run\"],[0],[1]],[[1504.046369804516],[503.9544757757651],[0],[\"run\"],[0],[1]],[[1507.752453848511],[503.9544757757651],[0],[\"run\"],[0],[1]],[[1516.9075205151798],[503.9544757757651],[0],[\"run\"],[0],[1]],[[1521.8421433646834],[503.9544757757651],[0],[\"run\"],[0],[1]],[[1527.238753429673],[503.9544757757651],[0],[\"run\"],[0],[1]],[[1532.6966234296694],[503.9544757757651],[0],[\"run\"],[0],[1]],[[1538.2300634296826],[503.9544757757651],[0],[\"run\"],[0],[1]],[[1543.7209334296715],[503.9544757757651],[0],[\"run\"],[0],[1]],[[1549.5220034296804],[503.9544757757651],[0],[\"run\"],[0],[1]],[[1554.664393429675],[503.9544757757651],[0],[\"run\"],[0],[1]],[[1565.664393429675],[503.9544757757651],[0],[\"run\"],[0],[1]],[[1571.1552634297025],[503.9544757757651],[0],[\"run\"],[0],[1]],[[1576.58442342968],[503.9544757757651],[0],[\"run\"],[0],[1]],[[1582.1264434296781],[503.9544757757651],[0],[\"run\"],[0],[1]],[[1587.6107134296994],[503.9544757757651],[0],[\"run\"],[0],[1]],[[1593.088383429676],[503.9544757757651],[0],[\"run\"],[0],[1]],[[1604.088383429676],[503.9544757757651],[0],[\"run\"],[0],[1]],[[1615.048343429695],[503.9544757757651],[0],[\"run\"],[0],[1]],[[1620.4982934296997],[503.9544757757651],[0],[\"run\"],[0],[1]],[[1626.0274434297012],[503.9544757757651],[0],[\"run\"],[0],[1]],[[1631.5183134296901],[503.9544757757651],[0],[\"run\"],[0],[1]],[[1642.4459334297098],[503.9544757757651],[0],[\"run\"],[0],[1]],[[1648.0047834297006],[503.9544757757651],[0],[\"run\"],[0],[1]],[[1658.9485734296816],[503.9544757757651],[0],[\"run\"],[0],[1]],[[1664.4612234297063],[503.9544757757651],[0],[\"run\"],[0],[1]],[[1675.4525334296777],[503.9544757757651],[0],[\"run\"],[0],[1]],[[1680.9503334296885],[503.9544757757651],[0],[\"run\"],[0],[1]],[[1686.4412034296774],[503.9544757757651],[0],[\"run\"],[0],[1]],[[1691.939663429681],[503.9544757757651],[0],[\"run\"],[0],[1]],[[1697.4318534296942],[503.9544757757651],[0],[\"run\"],[0],[1]],[[1702.9227234296832],[503.9544757757651],[0],[\"run\"],[0],[1]],[[1713.9227234296832],[503.9544757757651],[0],[\"run\"],[0],[1]],[[1724.904463429661],[503.9544757757651],[0],[\"run\"],[0],[1]],[[1730.3266934296553],[503.9544757757651],[0],[\"run\"],[0],[1]],[[1735.8845534296759],[503.9544757757651],[0],[\"run\"],[0],[1]],[[1740.9601389481666],[503.9544757757651],[0],[\"run\"],[0],[1]],[[1745.5954233781592],[503.9544757757651],[0],[\"run\"],[0],[1]],[[1749.84288586668],[503.9544757757651],[0],[\"run\"],[0],[1]],[[1756.6852692000125],[503.9544757757651],[0],[\"run\"],[0],[1]],[[1759.6854972070068],[503.9544757757651],[0],[\"run\"],[0],[1]],[[1762.2504550310116],[503.9544757757651],[0],[\"run\"],[0],[1]],[[1764.425728631007],[503.9544757757651],[0],[\"run\"],[0],[1]],[[1766.1903447670018],[503.9544757757651],[0],[\"run\"],[0],[1]],[[1767.535367295504],[493.08452577576634],[0],[\"jump\"],[0],[1]],[[1768.458349264509],[482.6844602572166],[0],[\"jump\"],[0],[1]],[[1768.966046752009],[472.69967922023795],[0],[\"jump\"],[0],[1]],[[1769.0620924630098],[463.23476835472684],[0],[\"jump\"],[0],[1]],[[1769.0620924630098],[454.07581416574624],[0],[\"jump\"],[0],[1]],[[1769.0620924630098],[437.39411416574814],[0],[\"jump\"],[0],[1]],[[1769.0620924630098],[429.49591182822434],[0],[\"jump\"],[0],[1]],[[1769.0620924630098],[421.98681164926944],[0],[\"jump\"],[0],[1]],[[1769.0620924630098],[414.928451201248],[0],[\"jump\"],[0],[1]],[[1769.0620924630098],[408.26111238676174],[0],[\"jump\"],[0],[1]],[[1769.0620924630098],[402.0181795687578],[0],[\"jump\"],[0],[1]],[[1769.0620924630098],[396.12540641625566],[0],[\"jump\"],[0],[1]],[[1769.0620924630098],[386.1492985372545],[0],[\"pound\"],[0],[1]],[[1769.0620924630098],[381.57288301876287],[0],[\"pound\"],[0],[1]],[[1769.0620924630098],[377.4043245067574],[0],[\"pound\"],[0],[1]],[[1769.0620924630098],[370.73839181475734],[0],[\"pound\"],[0],[1]],[[1769.0620924630098],[367.825011068262],[0],[\"pound\"],[0],[1]],[[1769.0620924630098],[365.3325507832556],[0],[\"pound\"],[0],[1]],[[1769.0620924630098],[361.99246744992183],[0],[\"pound\"],[0],[1]],[[1769.0620924630098],[360.7404825339233],[0],[\"pound\"],[0],[1]],[[1769.0620924630098],[359.90607367942226],[0],[\"pound\"],[0],[1]],[[1769.0620924630098],[359.4823911104212],[0],[\"pound\"],[0],[1]],[[1769.0620924630098],[359.47518642341896],[0],[\"pound\"],[0],[1]],[[1769.0620924630098],[377.7723252169458],[0],[\"pound\"],[0],[1]],[[1769.0620924630098],[387.33755386892676],[0],[\"pound\"],[0],[1]],[[1769.0620924630098],[397.265595646459],[0],[\"pound\"],[0],[1]],[[1769.0620924630098],[407.7216738514515],[0],[\"pound\"],[0],[1]],[[1769.0620924630098],[430.0533093314438],[0],[\"pound\"],[0],[1]],[[1769.0620924630098],[441.6910668649204],[0],[\"pound\"],[0],[1]],[[1769.0620924630098],[466.6719501982538],[0],[\"pound\"],[0],[1]],[[1769.0620924630098],[479.55694221322705],[0],[\"pound\"],[0],[1]],[[1769.0620924630098],[492.8283699772677],[0],[\"pound\"],[0],[1]],[[1769.0620924630098],[503.9952452852217],[0],[\"poundFloor\"],[0],[1]],[[1769.0620924630098],[492.0983602852457],[0],[\"gpjump\"],[0],[1]],[[1769.0620924630098],[470.048802958721],[0],[\"gpjump\"],[0],[1]],[[1769.0620924630098],[459.3944020057426],[0],[\"gpjump\"],[0],[1]],[[1769.0620924630098],[449.0761975282164],[0],[\"gpjump\"],[0],[1]],[[1769.0620924630098],[439.2557099772367],[0],[\"gpjump\"],[0],[1]],[[1769.0620924630098],[429.8342994977401],[0],[\"gpjump\"],[0],[1]],[[1769.0620924630098],[412.777799232716],[0],[\"gpjump\"],[0],[1]],[[1769.0620924630098],[404.61430649673326],[0],[\"gpjump\"],[0],[1]],[[1769.0620924630098],[396.8506753347345],[0],[\"gpjump\"],[0],[1]],[[1769.0620924630098],[389.47083990675304],[0],[\"gpjump\"],[0],[1]],[[1769.0620924630098],[382.55694439022034],[0],[\"gpjump\"],[0],[1]],[[1769.0620924630098],[376.08100672424695],[0],[\"gpjump\"],[0],[1]],[[1769.477376944514],[369.99613274371876],[0],[\"gpjump\"],[0],[1]],[[1771.9759936111848],[359.4728160770564],[0],[\"gpjump\"],[0],[1]],[[1773.628906054191],[354.65565072404934],[0],[\"gpjump\"],[0],[1]],[[1775.717524604201],[350.21090488204135],[0],[\"gpjump\"],[0],[1]],[[1778.2113366252036],[346.2033864670471],[0],[\"gpjump\"],[0],[1]],[[1781.1199835762006],[342.6118749560574],[0],[\"gpjump\"],[0],[1]],[[1788.61361690954],[337.08357495606367],[0],[\"gpjump\"],[0],[1]],[[1792.726403333532],[334.75753622407143],[0],[\"gpjump\"],[0],[1]],[[1797.2936507630588],[332.824625191566],[0],[\"gpjump\"],[0],[1]],[[1802.2946787750618],[331.30322723557043],[0],[\"gpjump\"],[0],[1]],[[1807.693917802054],[330.2023078005759],[0],[\"gpjump\"],[0],[1]],[[1818.6858878020569],[329.6626520370827],[0],[\"gpjump\"],[0],[1]],[[1824.1767578020458],[329.808359760085],[0],[\"fall\"],[0],[1]],[[1829.7191078020596],[330.37854161259014],[0],[\"fall\"],[0],[1]],[[1835.1433178020325],[331.34183199758695],[0],[\"fall\"],[0],[1]],[[1840.6341878020598],[332.7322450740976],[0],[\"fall\"],[0],[1]],[[1846.110207802035],[334.5319390470912],[0],[\"fall\"],[0],[1]],[[1855.4435411353682],[335.9387557137615],[0],[\"run\"],[0],[1]],[[1859.6809633193868],[335.9387557137615],[0],[\"run\"],[0],[1]],[[1863.5186025198811],[335.9387557137615],[0],[\"run\"],[0],[1]],[[1866.9312946978735],[335.9387557137615],[0],[\"run\"],[0],[1]],[[1872.093540494368],[335.9387557137615],[0],[\"run\"],[0],[1]],[[1875.600657161035],[335.9387557137615],[0],[\"run\"],[0],[1]],[[1876.9326414380341],[335.9387557137615],[0],[\"run\"],[0],[1]],[[1877.8543032230368],[335.9387557137615],[0],[\"run\"],[0],[1]],[[1878.0356892365367],[335.9387557137615],[0],[\"run\"],[0],[1]],[[1878.0356892365367],[335.9387557137615],[0],[\"idle\"],[0],[1]],[[1878.0356892365367],[335.9387557137615],[0],[\"idle\"],[0],[1]],[[1878.0356892365367],[335.9387557137615],[0],[\"idle\"],[0],[1]],[[1878.0356892365367],[335.9387557137615],[0],[\"idle\"],[0],[1]],[[1878.0356892365367],[335.9387557137615],[0],[\"idle\"],[0],[1]],[[1878.0356892365367],[335.9387557137615],[0],[\"idle\"],[0],[1]],[[1878.0356892365367],[335.9387557137615],[0],[\"idle\"],[0],[1]],[[1878.0356892365367],[335.9387557137615],[0],[\"idle\"],[0],[1]],[[1878.0356892365367],[335.9387557137615],[0],[\"idle\"],[0],[1]],[[1878.0356892365367],[335.9387557137615],[0],[\"idle\"],[0],[1]],[[1878.0356892365367],[335.9387557137615],[0],[\"idle\"],[0],[1]],[[1878.0356892365367],[335.9387557137615],[0],[\"idle\"],[0],[1]],[[1878.0356892365367],[335.9387557137615],[0],[\"idle\"],[0],[1]],[[1878.0356892365367],[335.9387557137615],[0],[\"idle\"],[0],[1]],[[1878.0356892365367],[335.9387557137615],[0],[\"idle\"],[0],[1]],[[1878.0356892365367],[335.9387557137615],[0],[\"idle\"],[0],[1]],[[1878.0356892365367],[335.9387557137615],[0],[\"idle\"],[0],[1]],[[1878.0356892365367],[335.9387557137615],[0],[\"idle\"],[0],[1]],[[1878.0356892365367],[335.9387557137615],[0],[\"idle\"],[0],[1]],[[1878.0356892365367],[335.9387557137615],[0],[\"idle\"],[0],[1]],[[1878.0356892365367],[335.9387557137615],[0],[\"idle\"],[0],[1]],[[1878.0356892365367],[335.9387557137615],[0],[\"idle\"],[0],[1]],[[1878.0356892365367],[335.9387557137615],[0],[\"idle\"],[0],[1]],[[1878.0356892365367],[335.9387557137615],[0],[\"idle\"],[0],[1]],[[1878.0356892365367],[335.9387557137615],[0],[\"idle\"],[0],[1]],[[1878.0356892365367],[335.9387557137615],[0],[\"idle\"],[0],[1]],[[1878.0356892365367],[335.9387557137615],[0],[\"idle\"],[0],[1]],[[1878.0356892365367],[335.9387557137615],[0],[\"idle\"],[0],[1]],[[1878.0356892365367],[335.9387557137615],[0],[\"idle\"],[0],[1]],[[1878.0356892365367],[335.9387557137615],[0],[\"idle\"],[0],[1]]]}"],[0]],[],[1,"Default",0,1]],[[40,0,0,392,9,0,1.570796370506287,1,0,0,0,0,[]],51,118,[],[[0],[1],[1,100,""]],[0,0]],[[256,304,0,249,52,0,0,1,0,0,0,0,[]],46,119,[[1],[1],[""],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Jump",1,0,50,0,0,0,0,0,"",-1,0]],[[552,304,0,249,52,0,0,1,0,0,0,0,[]],46,120,[[1],[1],[""],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Jump",1,0,50,0,0,0,0,0,"",-1,0]],[[84,183,0,300,117,0,0,1,0,0,0,0,[[]]],61,5511,[],[[1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>","1",7,0,60,0,0,0,0,0,"",-1,0]],[[768,384,0,320,9,0,0,1,0,0,0,0,[]],51,2584,[],[[0],[1],[1,100,""]],[0,0]],[[784,280,0,288,64,0,0,1,0,0,0,0,[]],46,2993,[[1],[1],[""],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Go next to the wall",1,0,50,0,0,0,0,0,"",-1,0]],[[1088,224,0,160,9,0,1.570796370506287,1,0,0,0,0,[]],51,2995,[],[[0],[1],[1,100,""]],[0,0]],[[1096,312,0,152,64,0,0,1,0,0,0,0,[]],46,2998,[[1],[1],[""],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","And jump higher",1,0,50,0,0,0,0,0,"",-1,0]],[[1424,536,0,374,9,0,0,1,0,0,0,0,[]],51,2859,[],[[0],[1],[1,100,""]],[0,0]],[[2264,440,0,97,199,0,0,1,0.5257731676101685,0.4974874258041382,0,0,[]],44,2990,[],[[0]],[0,"Default",0,1]],[[2040,536,0,320,9,0,0,1,0,0,0,0,[]],51,2996,[],[[0],[1],[1,100,""]],[0,0]],[[1808,368,0,203,9,0,0,1,0,0,0,0,[]],51,3124,[],[[0],[1],[1,100,""]],[0,0]],[[1216,24,0,294.1115112304688,64,0,0,1,0,0,0,0,[]],46,3131,[[1],[1],[""],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Jump on place and press down to smash the ground!",1,0,50,0,0,0,0,0,"",-1,0]],[[1520,360,0,256,64,0,0,1,0,0,0,0,[]],46,3132,[[1],[1],[""],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Jump after a Smash",1,0,50,0,0,0,0,0,"",-1,0]],[[1432,224,0,96,8,0,0,1,0,0,0,0,[]],45,3133,[],[[0],[1]],[0,0]],[[1080,224,0,352,9,0,0,1,0,0,0,0,[]],51,3134,[],[[0],[1],[1,100,""]],[0,0]],[[1432,224,0,320,9,0,1.570796370506287,1,0,0,0,0,[]],51,3135,[],[[0],[1],[1,100,""]],[0,0]],[[1536,-6,0,238,9,0,1.570796370506287,1,0,0,0,0,[]],51,3143,[],[[0],[1],[1,100,""]],[0,0]],[[1800,448,0,256,64,0,0,1,0,0,0,0,[]],46,3149,[[1],[1],[""],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","To jump higher!",1,0,50,0,0,0,0,0,"",-1,0]],[[1392,184,0,137,39.66987609863281,0,0,1,0,0,0,0,[]],46,3150,[[1],[1],[""],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","(You can smash this)",0.7,0,50,0,0,0,0,0,"",-1,0]],[[2360,120,0,416,9,0,1.570796370506287,1,0,0,0,0,[]],51,3151,[],[[0],[1],[1,100,""]],[0,0]],[[1431,-9,0,105,9,0,0,1,0,0,0,0,[]],51,3245,[],[[0],[1],[1,100,""]],[0,0]],[[1574,193,0,64,64,0,0,1,0.5,0.5,0,0,[]],60,3247,[["level2"]],[[1],[400,-200,800,0,0,0],[0,0,0,1,1]],[0,"Default",0,1]]],[]],["UI",1,172414048555365,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[240,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3097,[["right"]],[[0,1,0,1,1]],[0,"Default",0,1]],[[80,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3098,[["left"]],[[0,1,0,1,1]],[0,"Default",1,1]],[[560,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3099,[["up"]],[[1,1,1,1,1]],[0,"Default",3,1]],[[400,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3100,[["down"]],[[1,1,1,1,1]],[0,"Default",2,1]]],[]],["End Card",2,345522667736064,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],78,2607,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[12.04449462890625,194,0,615.9109497070313,67,0,0,1,0,0,0,0,[]],79,2608,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Timer for this level",2.5,0,0,0,0,0,-10,0,"",-1,0]],[[17.546875,248,0,604.90625,105,0,0,1,0,0,0,0,[]],80,2610,[[0],[0],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","13:40:40",4,0,63,50,0,0,-10,0,"",-1,0]],[[115.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,2611,[[0],[1],[0],[0],["replay"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Replay",""],[""],[2,2,0,0,0],["",""]],[0,"Replay",0,1]],[[524.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3086,[[0],[1],[0],[0],["next"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Next",""],[""],[2,2,0,0,0],["",""]],[0,"Next",0,1]],[[320.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3087,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > Back","Level Menu"],[""],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[320.75,521.8050537109375,0,384,96,0,0,1,0.5,0.5,0,0,[]],70,3088,[[1],[1],[0],[0],[""],["{\"size\": 22, \"left\": 70, \"right\": 18, \"alignY\": 60}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > DownloadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"DownloadReplay",0,1]]],[]],["Pause",3,779036946589126,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-310,678,0,274,31,0,0,1,0,0,0,0,[]],168,3089,[],[],[".ovo",0,1,"file"]],[[320,320,0,425,250,0,0,1,0.5,0.5,0,0,[]],82,3090,[],[[6,1,"",300,1,1,"",300,"overlay",1,"PauseClose",1,1]],[0,"Default",0,1]],[[214,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3091,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"",""],["PauseClose"],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[426,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3092,[[0],[1],[0],[0],["quit"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > GiveUp",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[115.5,202,0,409,118,0,0,1,0,0,0,0,[]],83,3093,[[1],[1],["pause"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Pause",4,0,57,50,0,0,-10,0,"",-1,0]],[[320.5,88,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3094,[[1],[1],[0],[0],["loadreplay"],["{\"size\": 16, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > LoadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"LoadReplay",0,1]],[[320.5,157,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3095,[[1],[0],[0],[0],["toggledebug"],["{\"size\": 15, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Debug > Toggle",""],[""],[2,2,0,0,0],["",""]],[0,"ToggleDebug",0,1]],[[78,448,0,484,134,0,0,1,0,0,0,0,[]],193,3096,[],[],[0,"Default",0,1]]],[]],["Overlay",4,675014630919668,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[432,4,0,203.0009155273438,64,0,0,1,0,0,0,0,[]],107,5488,[],[[1,0,1,0,1]],[2,2,2,2,0,1,0,0,1]],[[432,4,0,203,64,0,0,1,0,0,0,0,[]],84,3101,[[0],[0],[""],["en-us"],[0],[1],[1],["{\"alignY\": 85, \"alignX\": 45, \"size\": 28}"],[0],[1],[0],[0],[0]],[["",""],[1,0,1,0,1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",2,0,100,50,0,0,-10,0,"",-1,0]],[[88,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3102,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Pause",""],[""],[0,0,0,0,1],["",""]],[0,"Pause",0,1]],[[158,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3103,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Replay","1"],[""],[0,0,0,0,1],["",""]],[0,"Reload",0,1]]],[]],["End Game",5,223101367766163,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],85,3104,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[73,194,0,494,72,0,0,1,0,0,0,0,[]],86,3105,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],["{alignY:50}"],[0],[1],[0],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Your final time",2.5,0,50,50,0,0,-10,0,"",-1,0]],[[320,403,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3106,[[0],[1],[0],[0],[""],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Quit",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[73,243,0,494,85,0,0,1,0,0,0,0,[]],87,3108,[[0],[1],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",3,0,50,50,0,0,-10,0,"",-1,0]],[[73,318,0,494,25,0,0,1,0,0,0,0,[]],86,5480,[[1],[1],["tryagainhardmode"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Try again in hard mode!",1,0,50,50,0,0,-2,0,"",-1,0]]],[]],["Banner",6,154411690991124,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-237,-189,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,3109,[],[["overlay"]],[0,"Default",0,1]]],[]],["AdPlaying",7,709842045150745,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,-203.5,0,250,97,0,0,1,0.5,0.5,0,0,[]],125,390,[],[[6,1,"",300,1,1,"",300,"overlay",1,"",1,1],[]],[0,"Default",0,1]],[[209,-275,0,222,139,0,0,1,0,0,0,0,[]],86,391,[[1],[1],["adplaying"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","An ad is playing right now...",1.2,0,50,50,0,0,-2,0,"",-1,0]],[[-154.5756988525391,-294.3137512207031,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,5508,[],[["overlay"]],[0,"Default",0,1]]],[]]],[],[]],["Level 3",1280,640,true,"Levels",167329134242466,[["Layer 0",0,286157970918551,true,[255,255,255],false,1,1,1,false,false,1,0,0,[[[32,384,0,320,9,0,0,1,0,0,0,0,[]],51,184,[],[[0],[1],[1,100,""]],[0,0]],[[112,296,0,32,64,0,0,1,0.5,0.5,0,0,[]],42,195,[["run"],[0],[1],[1],[0],[0.8],[0.5],[0],[1],[0],[0],[0],[""],[2],[0],[0],[0],[""],[0],[3],[0],[0],[0],[0],[0],[0],[0]],[[330,1500,1500,650,1500,1000,0,0,0,1],[],[0,0],[0,10000,360,1]],[1,"Default",0,1]],[[1184,288,0,97,199,0,0,1,0.5257731676101685,0.4974874258041382,0,0,[]],44,196,[],[[0]],[0,"Default",0,1]],[[701,384,0,547,8.731283187866211,0,0,1,0,0,0,0,[]],51,197,[],[[0],[1],[1,100,""]],[0,0]],[[343,627,0,453,9,0,0,1,0,0,0,0,[]],51,198,[],[[0],[1],[1,100,""]],[0,0]],[[160,272,0,231,64,0,0,1,0,0,0,0,[]],46,199,[[1],[1],[""],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","You can slide down walls",1,0,50,0,0,0,0,0,"",-1,0]],[[415.9999694824219,232,0,317,9,0,1.570796370506287,1,0,0,0,0,[]],51,200,[],[[0],[1],[1,100,""]],[0,0]],[[352,387,0,247,9,0,1.570796370506287,1,0,0,0,0,[]],51,201,[],[[0],[1],[1,100,""]],[0,0]],[[704,384,0,169,9,0,1.570796370506287,1,0,0,0,0,[]],51,167,[],[[0],[1],[1,100,""]],[0,0]],[[580,320,0,312,9,0,1.570796370506287,1,0,0,0,0,[]],51,168,[],[[0],[1],[1,100,""]],[0,0]],[[368,560,0,208,64,0,0,1,0,0,0,0,[]],46,169,[[1],[1],[""],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Jump while sliding to wall jump",1,0,50,0,0,0,0,0,"",-1,0]],[[-121,63,0,60.93439102172852,60.93439102172852,0,0,1,0.5,0.5,0,0,[]],53,1408,[["Harder"],["{\"c2array\":true,\"size\":[352,6,1],\"data\":[[[337.80951294481576],[351.97610141344853],[4.6431098887747086e-7],[\"idle\"],[0],[1]],[[337.80951294481576],[351.97610141344853],[4.6431098887747086e-7],[\"idle\"],[0],[1]],[[337.80951294481576],[351.97610141344853],[4.6431098887747086e-7],[\"idle\"],[0],[1]],[[337.80951294481576],[351.97610141344853],[4.6431098887747086e-7],[\"idle\"],[0],[1]],[[337.80951294481576],[351.97610141344853],[4.6431098887747086e-7],[\"idle\"],[0],[1]],[[337.80951294481576],[351.97610141344853],[4.6431098887747086e-7],[\"idle\"],[0],[1]],[[337.80951294481576],[351.97610141344853],[4.6431098887747086e-7],[\"idle\"],[0],[1]],[[337.80951294481576],[351.97610141344853],[4.6431098887747086e-7],[\"idle\"],[0],[1]],[[337.80951294481576],[351.97610141344853],[4.6431098887747086e-7],[\"idle\"],[0],[1]],[[337.80951294481576],[351.97610141344853],[4.6431098887747086e-7],[\"idle\"],[0],[1]],[[337.80951294481576],[351.97610141344853],[4.6431098887747086e-7],[\"idle\"],[0],[1]],[[337.80951294481576],[351.97610141344853],[4.6431098887747086e-7],[\"idle\"],[0],[1]],[[337.80951294481576],[351.97610141344853],[4.6431098887747086e-7],[\"idle\"],[0],[1]],[[337.80951294481576],[351.97610141344853],[4.6431098887747086e-7],[\"idle\"],[0],[1]],[[337.80951294481576],[351.97610141344853],[4.6431098887747086e-7],[\"idle\"],[0],[1]],[[337.80951294481576],[351.97610141344853],[4.6431098887747086e-7],[\"idle\"],[0],[1]],[[337.80951294481576],[351.97610141344853],[4.6431098887747086e-7],[\"idle\"],[0],[1]],[[337.80951294481576],[351.97610141344853],[4.6431098887747086e-7],[\"idle\"],[0],[1]],[[337.80951294481576],[351.97610141344853],[4.6431098887747086e-7],[\"idle\"],[0],[1]],[[337.80951294481576],[351.97610141344853],[4.6431098887747086e-7],[\"idle\"],[0],[1]],[[337.80951294481576],[351.97610141344853],[4.6431098887747086e-7],[\"idle\"],[0],[1]],[[337.80951294481576],[351.97610141344853],[4.6431098887747086e-7],[\"idle\"],[0],[1]],[[337.80951294481576],[351.97610141344853],[4.6431098887747086e-7],[\"idle\"],[0],[1]],[[337.80951294481576],[351.97610141344853],[4.6431098887747086e-7],[\"idle\"],[0],[1]],[[337.80951294481576],[351.97610141344853],[4.6431098887747086e-7],[\"idle\"],[0],[1]],[[337.80951294481576],[351.97610141344853],[4.6431098887747086e-7],[\"idle\"],[0],[1]],[[337.80951294481576],[351.97610141344853],[4.6431098887747086e-7],[\"idle\"],[0],[1]],[[337.80951294481576],[351.97610141344853],[4.6431098887747086e-7],[\"idle\"],[0],[1]],[[337.80951294481576],[351.97610141344853],[4.6431098887747086e-7],[\"idle\"],[0],[1]],[[337.80951294481576],[351.97610141344853],[4.6431098887747086e-7],[\"idle\"],[0],[1]],[[337.80951294481576],[351.97610141344853],[4.6431098887747086e-7],[\"idle\"],[0],[1]],[[337.80951294481576],[351.97610141344853],[4.6431098887747086e-7],[\"idle\"],[0],[1]],[[337.80951294481576],[351.97610141344853],[4.6431098887747086e-7],[\"idle\"],[0],[1]],[[337.80951294481576],[351.97610141344853],[4.6431098887747086e-7],[\"idle\"],[0],[1]],[[338.23181520620346],[351.97610141344853],[4.6431098887747086e-7],[\"run\"],[0],[1]],[[339.06340217040804],[351.97610141344853],[4.6431098887747086e-7],[\"run\"],[0],[1]],[[340.3067305181119],[351.97610141344853],[4.6431098887747086e-7],[\"run\"],[0],[1]],[[341.97123954392424],[351.97610141344853],[4.6431098887747086e-7],[\"run\"],[0],[1]],[[344.0563306251862],[351.97610141344853],[4.6431098887747086e-7],[\"run\"],[0],[1]],[[346.54099408410457],[351.97610141344853],[4.6431098887747086e-7],[\"run\"],[0],[1]],[[349.4387004071871],[351.97610141344853],[4.6431098887747086e-7],[\"run\"],[0],[1]],[[352.7739351082802],[351.97610141344853],[4.6431098887747086e-7],[\"run\"],[0],[1]],[[356.51132014753244],[351.97610141344853],[4.6431098887747086e-7],[\"run\"],[0],[1]],[[360.6738028069089],[351.97610141344853],[4.6431098887747086e-7],[\"run\"],[0],[1]],[[365.24557673176713],[352.39163551832485],[0.0000010908506718896975],[\"fall\"],[0],[1]],[[370.2358063849051],[353.223377930171],[0.0000016026948029688557],[\"fall\"],[0],[1]],[[375.6318819806797],[354.4682079876539],[0.0000019639929868896945],[\"fall\"],[0],[1]],[[381.10361197222977],[356.12221247813676],[0.000002218808561409145],[\"fall\"],[0],[1]],[[386.610321980424],[358.2044747463941],[0.0000024752531368207513],[\"fall\"],[0],[1]],[[392.10779197588585],[360.6995264926486],[0.0000024752531368207513],[\"fall\"],[0],[1]],[[397.5933819769302],[363.60367264309383],[0.0000024752531368207513],[\"wallslide\"],[0],[1]],[[398.9500119766339],[365.9522604057059],[0.0000024752531368207513],[\"wallslide\"],[0],[1]],[[398.9907458321245],[367.93720699372807],[0.0000024752531368207513],[\"wallslide\"],[0],[1]],[[398.97243296664936],[369.68517645136916],[0.0000024752531368207513],[\"wallslide\"],[0],[1]],[[398.9499179997501],[371.259618960469],[0.0000024752531368207513],[\"wallslide\"],[0],[1]],[[398.98741183273387],[372.7185858740607],[0.0000024752531368207513],[\"wallslide\"],[0],[1]],[[398.9648968672868],[374.10914817528203],[0.0000024752531368207513],[\"wallslide\"],[0],[1]],[[398.9413845200506],[375.44906265865717],[0.0000024752531368207513],[\"wallslide\"],[0],[1]],[[398.982817886505],[376.76140706482073],[0.0000024752531368207513],[\"wallslide\"],[0],[1]],[[398.96420416819814],[378.0577625324654],[0.0000024752531368207513],[\"wallslide\"],[0],[1]],[[398.9383030056028],[379.32604771675125],[0.0000024752531368207513],[\"wallslide\"],[0],[1]],[[398.9823898419044],[380.59831442336116],[0.0000024752531368207513],[\"wallslide\"],[0],[1]],[[398.9542058847011],[381.84586254472293],[0.0000024752531368207513],[\"wallslide\"],[0],[1]],[[398.99449036517666],[383.09888753139774],[0.0000024752531368207513],[\"wallslide\"],[0],[1]],[[398.9743239652083],[384.3536295014961],[0.0000024752531368207513],[\"wallslide\"],[0],[1]],[[398.9508614603021],[385.6008517734867],[0.0000024752531368207513],[\"wallslide\"],[0],[1]],[[398.99119585965775],[386.8489689087843],[0.0000024752531368207513],[\"wallslide\"],[0],[1]],[[398.97142987582504],[388.1011812412246],[0.0000024752531368207513],[\"wallslide\"],[0],[1]],[[398.94986353138313],[389.35012223716876],[0.0000024752531368207513],[\"wallslide\"],[0],[1]],[[398.9883031382738],[390.59368909395994],[0.0000024752531368207513],[\"wallslide\"],[0],[1]],[[398.9667367938319],[391.84116414075527],[0.0000024752531368207513],[\"wallslide\"],[0],[1]],[[398.9430251145283],[393.08445494536204],[0.0000024752531368207513],[\"wallslide\"],[0],[1]],[[398.9856089525089],[394.33469204791584],[0.0000024752531368207513],[\"wallslide\"],[0],[1]],[[398.96459230538915],[395.58356780164974],[0.0000024752531368207513],[\"wallslide\"],[0],[1]],[[398.9422270501299],[396.82993730096086],[0.0000024752531368207513],[\"wallslide\"],[0],[1]],[[398.98186286397544],[398.0749866466331],[0.0000024752531368207513],[\"wallslide\"],[0],[1]],[[398.9586496055657],[399.318956819068],[0.0000024752531368207513],[\"wallslide\"],[0],[1]],[[398.9991837089888],[400.56505190824544],[0.0000024752531368207513],[\"wallslide\"],[0],[1]],[[398.97427704673026],[401.8054305169314],[0.0000024752531368207513],[\"wallslide\"],[0],[1]],[[398.95301049311695],[403.0522227761828],[0.0000024752531368207513],[\"wallslide\"],[0],[1]],[[398.99579457516546],[404.30274852464356],[0.0000024752531368207513],[\"wallslide\"],[0],[1]],[[398.9726311741843],[405.547322122131],[0.0000024752531368207513],[\"wallslide\"],[0],[1]],[[398.95216458884227],[406.7967670973766],[0.0000024752531368207513],[\"wallslide\"],[0],[1]],[[398.99254891007797],[408.04346619251356],[0.0000024752531368207513],[\"wallslide\"],[0],[1]],[[398.96893689153325],[409.2869885579116],[0.0000024752531368207513],[\"wallslide\"],[0],[1]],[[398.95077449224425],[410.54078099650945],[0.0000024752531368207513],[\"wallslide\"],[0],[1]],[[398.9883180761068],[411.78238733079525],[0.0000024752531368207513],[\"wallslide\"],[0],[1]],[[398.96665182490426],[413.02925281457465],[0.0000024752531368207513],[\"wallslide\"],[0],[1]],[[398.9429401470509],[414.2722378881213],[0.0000024752531368207513],[\"wallslide\"],[0],[1]],[[398.983474250474],[415.51817492704464],[0.0000024752531368207513],[\"wallslide\"],[0],[1]],[[398.96225767274126],[416.76583162356326],[0.0000024752531368207513],[\"wallslide\"],[0],[1]],[[398.9428922970443],[418.017584760119],[0.0000024752531368207513],[\"wallslide\"],[0],[1]],[[398.9807842181626],[419.25973064511976],[0.0000024752531368207513],[\"wallslide\"],[0],[1]],[[398.95762081863256],[420.50361196380885],[0.0000024752531368207513],[\"wallslide\"],[0],[1]],[[398.9388065922578],[421.7558928109463],[0.0000024752531368207513],[\"wallslide\"],[0],[1]],[[398.97590252910715],[422.9962465647512],[0.0000024752531368207513],[\"wallslide\"],[0],[1]],[[398.9551358649357],[424.24452203755254],[0.0000024752531368207513],[\"wallslide\"],[0],[1]],[[398.9951707989164],[425.49004310137747],[0.0000024752531368207513],[\"wallslide\"],[0],[1]],[[398.97130965242485],[426.7326316071672],[0.0000024752531368207513],[\"wallslide\"],[0],[1]],[[398.94919397511353],[427.9781542480027],[0.0000024752531368207513],[\"wallslide\"],[0],[1]],[[398.9918278685185],[429.2283819655143],[0.0000024752531368207513],[\"wallslide\"],[0],[1]],[[398.9682158499738],[430.47200875512243],[0.0000024752531368207513],[\"wallslide\"],[0],[1]],[[398.9451521757519],[431.7160786366748],[0.0000024752531368207513],[\"wallslide\"],[0],[1]],[[398.98249677554713],[432.955707503768],[0.0000024752531368207513],[\"wallslide\"],[0],[1]],[[398.96438453814017],[434.20854256506715],[0.0000024752531368207513],[\"wallslide\"],[0],[1]],[[398.9408721909039],[435.4523589293407],[0.0000024752531368207513],[\"wallslide\"],[0],[1]],[[398.9408721909039],[437.11452960167065],[0.0000024752531368207513],[\"wallslide\"],[0],[1]],[[398.9408721909039],[439.1964794513463],[0.0000024752531368207513],[\"wallslide\"],[0],[1]],[[398.9408721909039],[441.68345318582107],[0.0000024752531368207513],[\"wallslide\"],[0],[1]],[[398.9408721909039],[444.58426535838754],[0.0000024752531368207513],[\"wallslide\"],[0],[1]],[[398.9408721909039],[447.9126906657263],[0.0000024752531368207513],[\"wallslide\"],[0],[1]],[[398.9408721909039],[451.65315584977765],[0.0000024752531368207513],[\"wallslide\"],[0],[1]],[[398.9408721909039],[455.8138488105847],[0.0000024752531368207513],[\"wallslide\"],[0],[1]],[[398.9408721909039],[460.3738004669879],[0.0000024752531368207513],[\"wallslide\"],[0],[1]],[[398.9408721909039],[465.3880625077933],[0.0000024752531368207513],[\"wallslide\"],[0],[1]],[[398.9408721909039],[470.74367145649654],[0.0000024752531368207513],[\"wallslide\"],[0],[1]],[[398.9408721909039],[476.58739612377576],[0.0000024752531368207513],[\"wallslide\"],[0],[1]],[[398.9408721909039],[482.838070215009],[0.0000024752531368207513],[\"wallslide\"],[0],[1]],[[398.9408721909039],[489.45899136508257],[0.0000024752531368207513],[\"wallslide\"],[0],[1]],[[398.9408721909039],[496.5428793434479],[0.0000024752531368207513],[\"wallslide\"],[0],[1]],[[398.9408721909039],[503.9895786005455],[0.0000024752531368207513],[\"wallslide\"],[0],[1]],[[398.9408721909039],[511.8702839397663],[0.0000024752531368207513],[\"wallslide\"],[0],[1]],[[398.9408721909039],[520.2276130548058],[0.0000024752531368207513],[\"wallslide\"],[0],[1]],[[398.9408721909039],[528.9468981637833],[0.0000024752531368207513],[\"wallslide\"],[0],[1]],[[398.9408721909039],[538.0144847333463],[0.0000024752531368207513],[\"wallslide\"],[0],[1]],[[398.9408721909039],[547.5804133293692],[0.0000024752531368207513],[\"wallslide\"],[0],[1]],[[398.9408721909039],[557.582221939131],[0.0000024752531368207513],[\"wallslide\"],[0],[1]],[[398.9408721909039],[567.9670640044637],[0.0000024752531368207513],[\"wallslide\"],[0],[1]],[[398.9408721909039],[578.7504419734507],[0.0000024752531368207513],[\"fall\"],[0],[1]],[[398.9408721909039],[589.9235001364202],[0.0000024752531368207513],[\"fall\"],[0],[1]],[[398.9408721909039],[594.9840833720455],[0.0000017522655662760393],[\"idle\"],[0],[1]],[[399.3598086074788],[594.9840833720455],[0.0000012386080195819695],[\"run\"],[0],[1]],[[400.1964034051484],[594.9840833720455],[8.757667553806941e-7],[\"run\"],[0],[1]],[[401.43798287044297],[594.9840833720455],[6.212124353499917e-7],[\"run\"],[0],[1]],[[403.1050909283621],[594.9840833720455],[3.6493690751302116e-7],[\"run\"],[0],[1]],[[405.18198612603044],[594.9840833720455],[3.6493690751302116e-7],[\"run\"],[0],[1]],[[407.66238646964],[594.9840833720455],[3.6493690751302116e-7],[\"run\"],[0],[1]],[[410.57105019357033],[594.9840833720455],[3.6493690751302116e-7],[\"run\"],[0],[1]],[[413.89629652386884],[594.9840833720455],[3.6493690751302116e-7],[\"run\"],[0],[1]],[[417.6659067687636],[594.9840833720455],[3.6493690751302116e-7],[\"run\"],[0],[1]],[[421.82082185779757],[594.9840833720455],[3.6493690751302116e-7],[\"run\"],[0],[1]],[[426.3715474148903],[594.9840833720455],[3.6493690751302116e-7],[\"run\"],[0],[1]],[[431.3561340274814],[594.9840833720455],[3.6493690751302116e-7],[\"run\"],[0],[1]],[[436.73948118722444],[594.9840833720455],[3.6493690751302116e-7],[\"run\"],[0],[1]],[[442.28381119374797],[594.9840833720455],[3.6493690751302116e-7],[\"run\"],[0],[1]],[[447.7482811876424],[594.9840833720455],[3.6493690751302116e-7],[\"run\"],[0],[1]],[[453.2097811877346],[594.9840833720455],[3.6493690751302116e-7],[\"run\"],[0],[1]],[[458.72573118945263],[594.9840833720455],[3.6493690751302116e-7],[\"run\"],[0],[1]],[[464.2360711868704],[594.9840833720455],[3.6493690751302116e-7],[\"run\"],[0],[1]],[[469.7015311883032],[594.9840833720455],[3.6493690751302116e-7],[\"run\"],[0],[1]],[[475.19372119158186],[594.9840833720455],[3.6493690751302116e-7],[\"run\"],[0],[1]],[[480.6997711947505],[594.9840833720455],[3.6493690751302116e-7],[\"run\"],[0],[1]],[[486.161931190264],[584.2252833808825],[3.6493690751302116e-7],[\"jump\"],[0],[1]],[[491.66765119091986],[573.7982171636902],[3.6493690751302116e-7],[\"jump\"],[0],[1]],[[497.15951119168574],[563.8128341004052],[3.6493690751302116e-7],[\"jump\"],[0],[1]],[[502.6322311907742],[554.2747952620324],[3.6493690751302116e-7],[\"jump\"],[0],[1]],[[508.1481811924922],[545.080500571838],[3.6493690751302116e-7],[\"jump\"],[0],[1]],[[513.6156211897932],[536.3788130120981],[3.6493690751302116e-7],[\"jump\"],[0],[1]],[[519.1325611894453],[528.0175811595632],[3.6493690751302116e-7],[\"jump\"],[0],[1]],[[524.6442211873099],[520.082786651413],[3.6493690751302116e-7],[\"jump\"],[0],[1]],[[530.1314611913139],[512.5978836680307],[9.90874293102073e-7],[\"jump\"],[0],[1]],[[535.6220011916329],[505.5237138707232],[0.0000014337450430330635],[\"jump\"],[0],[1]],[[541.0706311897692],[498.91246180794747],[0.0000017925873378362709],[\"jump\"],[0],[1]],[[546.5915311907619],[492.6333582068563],[0.000002049692733714705],[\"jump\"],[0],[1]],[[552.0932911900771],[486.79295654356906],[0.0000023059067898283353],[\"jump\"],[0],[1]],[[557.5633711882718],[481.39833049719937],[0.0000023059067898283353],[\"jump\"],[0],[1]],[[562.9716111914921],[476.4152986763587],[0.0000023059067898283353],[\"jump\"],[0],[1]],[[562.953649454811],[471.80792029985133],[0.0000023059067898283353],[\"jump\"],[0],[1]],[[562.9899998557161],[467.65707349549297],[0.0000023059067898283353],[\"jump\"],[0],[1]],[[562.9899998557161],[463.87684098573567],[0.0000023059067898283353],[\"jump\"],[0],[1]],[[562.9899998557161],[460.5419635949599],[0.0000023059067898283353],[\"jump\"],[0],[1]],[[562.9899998557161],[457.63640284606976],[0.0000023059067898283353],[\"jump\"],[0],[1]],[[562.9899998557161],[455.11678244425764],[0.0000023059067898283353],[\"jump\"],[0],[1]],[[562.9899998557161],[453.02717320930145],[0.0000023059067898283353],[\"jump\"],[0],[1]],[[562.9899998557161],[451.35410885667875],[0.0000023059067898283353],[\"jump\"],[0],[1]],[[562.9899998557161],[450.08732130662617],[0.0000023059067898283353],[\"jump\"],[0],[1]],[[557.4915398527158],[441.839514668353],[0.0000023059067898283353],[\"jump\"],[0],[-1]],[[552.0069398496056],[434.02683492438416],[0.0000023059067898283353],[\"jump\"],[0],[-1]],[[546.5071598557628],[426.6091649846849],[0.0000023059067898283353],[\"jump\"],[0],[-1]],[[541.0222298501398],[419.62591000144715],[0.0000023059067898283353],[\"jump\"],[0],[-1]],[[535.5330098502676],[413.0522280550122],[0.0000023059067898283353],[\"jump\"],[0],[-1]],[[530.0454398533551],[406.89530755065476],[0.0000023059067898283353],[\"jump\"],[0],[-1]],[[524.5430198490143],[401.1387591126214],[0.0000023059067898283353],[\"jump\"],[0],[-1]],[[519.061059856402],[395.81755344374074],[0.0000023059067898283353],[\"jump\"],[0],[-1]],[[513.5856998564199],[390.9156959237036],[0.0000023059067898283353],[\"jump\"],[0],[-1]],[[508.0806398511853],[386.4046829357578],[0.0000023059067898283353],[\"jump\"],[0],[-1]],[[502.59735984852193],[382.32565432631986],[0.0000023059067898283353],[\"jump\"],[0],[-1]],[[497.0893298494851],[378.646098340936],[0.0000023059067898283353],[\"jump\"],[0],[-1]],[[491.5951598503383],[375.3915851198484],[0.0000023059067898283353],[\"jump\"],[0],[-1]],[[486.1320098568907],[372.5665488706483],[0.0000016327853016741853],[\"jump\"],[0],[-1]],[[480.59724985600803],[370.1264325202369],[0.000001117283604174432],[\"jump\"],[0],[-1]],[[475.1215598535131],[368.1253499054913],[7.566591597180525e-7],[\"jump\"],[0],[-1]],[[469.6075898572675],[366.5290639459604],[4.99876490498972e-7],[\"jump\"],[0],[-1]],[[464.1437798491901],[365.358500601721],[4.99876490498972e-7],[\"jump\"],[0],[-1]],[[458.6608298490395],[364.5979240547043],[4.99876490498972e-7],[\"jump\"],[0],[-1]],[[453.1386098572042],[364.2519402381027],[4.99876490498972e-7],[\"jump\"],[0],[-1]],[[447.677109857112],[364.32061446299883],[4.99876490498972e-7],[\"fall\"],[0],[-1]],[[442.17996985455864],[364.8059702803119],[4.99876490498972e-7],[\"fall\"],[0],[-1]],[[436.6983398548549],[365.70384466332837],[4.99876490498972e-7],[\"fall\"],[0],[-1]],[[431.19327984962035],[367.02299049704493],[4.99876490498972e-7],[\"fall\"],[0],[-1]],[[425.7030698518141],[368.75376256214844],[4.99876490498972e-7],[\"wallslide\"],[0],[-1]],[[424.02238985060137],[370.90110488600953],[4.99876490498972e-7],[\"wallslide\"],[0],[-1]],[[424.02238985060137],[373.4583566861156],[4.99876490498972e-7],[\"wallslide\"],[0],[-1]],[[424.02238985060137],[376.45330273193895],[4.99876490498972e-7],[\"wallslide\"],[0],[-1]],[[429.51094984544795],[368.2195978752803],[4.99876490498972e-7],[\"jump\"],[0],[1]],[[434.96485984537173],[360.447586064496],[4.99876490498972e-7],[\"jump\"],[0],[1]],[[440.4705798460276],[353.0192769812643],[4.99876490498972e-7],[\"jump\"],[0],[1]],[[445.9644198522659],[346.02273022544557],[4.99876490498972e-7],[\"jump\"],[0],[1]],[[451.473109846724],[339.4252559997886],[4.99876490498972e-7],[\"jump\"],[0],[1]],[[456.92338984782],[333.3069037983495],[4.99876490498972e-7],[\"jump\"],[0],[1]],[[462.4297698535014],[327.5432089866225],[4.99876490498972e-7],[\"jump\"],[0],[1]],[[467.91997985130763],[322.21162446530633],[4.99876490498972e-7],[\"jump\"],[0],[1]],[[473.4138198479417],[317.29224868011903],[4.99876490498972e-7],[\"jump\"],[0],[1]],[[478.90765985418],[312.7886067432759],[4.99876490498972e-7],[\"jump\"],[0],[1]],[[484.378399847796],[308.7161464468168],[4.99876490498972e-7],[\"jump\"],[0],[1]],[[489.9167898475065],[305.01583060677416],[4.99876490498972e-7],[\"jump\"],[0],[1]],[[495.3842298544117],[301.7746658989676],[4.99876490498972e-7],[\"jump\"],[0],[1]],[[500.8727898492583],[298.9359161415315],[4.99876490498972e-7],[\"jump\"],[0],[1]],[[506.3686098513648],[296.50944499465925],[4.99876490498972e-7],[\"jump\"],[0],[1]],[[511.85287985196226],[294.50236005504337],[4.99876490498972e-7],[\"jump\"],[0],[1]],[[517.3397898534535],[292.9089946448259],[4.99876490498972e-7],[\"jump\"],[0],[1]],[[522.8326398521534],[291.7294883327225],[4.99876490498972e-7],[\"jump\"],[0],[1]],[[528.3274698467216],[290.96544054718413],[4.99876490498972e-7],[\"jump\"],[0],[1]],[[533.8143798482128],[290.617179718409],[4.99876490498972e-7],[\"jump\"],[0],[1]],[[539.3121798461874],[290.6845610880499],[4.99876490498972e-7],[\"fall\"],[0],[1]],[[544.8050298544916],[291.16746582907433],[4.99876490498972e-7],[\"fall\"],[0],[1]],[[550.3051398508472],[292.06769216599645],[4.99876490498972e-7],[\"fall\"],[0],[1]],[[555.81217985195],[293.3867867823629],[4.99876490498972e-7],[\"fall\"],[0],[1]],[[561.2542098478519],[295.098239251868],[4.99876490498972e-7],[\"wallslide\"],[0],[1]],[[562.9540298507421],[297.25033250100705],[4.99876490498972e-7],[\"wallslide\"],[0],[1]],[[562.9540298507421],[299.80683356160364],[4.99876490498972e-7],[\"wallslide\"],[0],[1]],[[562.9540298507421],[302.78036456999297],[4.99876490498972e-7],[\"wallslide\"],[0],[1]],[[557.454249847295],[294.53067789908346],[4.99876490498972e-7],[\"jump\"],[0],[-1]],[[551.9600798481482],[286.70519005299496],[4.99876490498972e-7],[\"jump\"],[0],[-1]],[[546.4784498484445],[279.31145123256806],[4.99876490498972e-7],[\"jump\"],[0],[-1]],[[540.9888998460596],[272.3221145823856],[4.99876490498972e-7],[\"jump\"],[0],[-1]],[[535.4841698433378],[265.730834282688],[4.99876490498972e-7],[\"jump\"],[0],[-1]],[[530.0068298474874],[259.5855907675892],[4.99876490498972e-7],[\"jump\"],[0],[-1]],[[524.5070498440404],[253.83180425849062],[4.99876490498972e-7],[\"jump\"],[0],[-1]],[[518.9973698420439],[248.4857951452136],[4.99876490498972e-7],[\"jump\"],[0],[-1]],[[513.5196998436808],[243.5841353457111],[4.99876490498972e-7],[\"jump\"],[0],[-1]],[[508.0407098448708],[239.09478376512928],[4.99876490498972e-7],[\"jump\"],[0],[-1]],[[502.5217898493505],[234.99225277656512],[4.99876490498972e-7],[\"jump\"],[0],[-1]],[[497.07513984708237],[231.3520667728238],[4.99876490498972e-7],[\"jump\"],[0],[-1]],[[491.5667798455328],[228.08857212230097],[4.99876490498972e-7],[\"jump\"],[0],[-1]],[[486.07557984979246],[225.2505785245743],[4.99876490498972e-7],[\"jump\"],[0],[-1]],[[480.5764598417667],[222.82502500571414],[4.99876490498972e-7],[\"jump\"],[0],[-1]],[[475.07832984127924],[220.8162915412527],[4.99876490498972e-7],[\"jump\"],[0],[-1]],[[469.5930698427477],[219.22669643828226],[4.99876490498972e-7],[\"jump\"],[0],[-1]],[[464.11077984762267],[218.05194967706242],[4.99876490498972e-7],[\"jump\"],[0],[-1]],[[458.61990984479087],[217.2906488711199],[4.99876490498972e-7],[\"jump\"],[0],[-1]],[[453.1194698459225],[216.94475453555623],[4.99876490498972e-7],[\"jump\"],[0],[-1]],[[447.59625984654883],[217.01761906536697],[4.99876490498972e-7],[\"fall\"],[0],[-1]],[[442.13442984394385],[217.50057724610878],[4.99876490498972e-7],[\"fall\"],[0],[-1]],[[436.6372898413905],[218.40289113323598],[4.99876490498972e-7],[\"fall\"],[0],[-1]],[[431.1543398412399],[219.7169631764897],[4.99876490498972e-7],[\"fall\"],[0],[-1]],[[425.6783198458364],[221.4424155924114],[4.99876490498972e-7],[\"wallslide\"],[0],[-1]],[[424.05188984903396],[223.59275786829105],[4.99876490498972e-7],[\"wallslide\"],[0],[-1]],[[424.05188984903396],[226.16571304312555],[4.99876490498972e-7],[\"wallslide\"],[0],[-1]],[[424.05188984903396],[229.12819440561583],[4.99876490498972e-7],[\"wallslide\"],[0],[-1]],[[429.5440798523126],[220.8893185744455],[4.99876490498972e-7],[\"jump\"],[0],[1]],[[435.0610198519647],[213.03255237216368],[4.99876490498972e-7],[\"jump\"],[0],[1]],[[440.5106398480351],[205.68072600238995],[4.99876490498972e-7],[\"jump\"],[0],[1]],[[446.0345098524343],[198.64902361604862],[4.99876490498972e-7],[\"jump\"],[0],[1]],[[451.51316984873154],[192.0883116684599],[4.99876490498972e-7],[\"jump\"],[0],[1]],[[456.99611984888213],[185.9365497657795],[4.99876490498972e-7],[\"jump\"],[0],[1]],[[462.49820985071017],[180.18029655199405],[4.99876490498972e-7],[\"jump\"],[0],[1]],[[467.99369985030387],[174.84693183398448],[4.99876490498972e-7],[\"jump\"],[0],[1]],[[473.4677398498392],[169.94712692446114],[4.99876490498972e-7],[\"jump\"],[0],[1]],[[478.9661998528394],[165.4418970732911],[4.99876490498972e-7],[\"jump\"],[0],[1]],[[484.46696985422057],[161.35155783865704],[4.99876490498972e-7],[\"jump\"],[0],[1]],[[489.92945985224685],[157.7006860957179],[4.99876490498972e-7],[\"jump\"],[0],[1]],[[495.4394698567561],[154.43623892663246],[4.99876490498972e-7],[\"jump\"],[0],[1]],[[500.93297985087736],[151.59725122631002],[4.99876490498972e-7],[\"jump\"],[0],[1]],[[506.42384985370916],[149.17491232741435],[4.99876490498972e-7],[\"jump\"],[0],[1]],[[511.9160398569878],[147.16747527431767],[4.99876490498972e-7],[\"jump\"],[0],[1]],[[517.4366098554677],[145.5694542792469],[4.99876490498972e-7],[\"jump\"],[0],[1]],[[522.9192298531055],[144.39645603805977],[4.99876490498972e-7],[\"jump\"],[0],[1]],[[528.3942598505749],[143.63797358702655],[4.99876490498972e-7],[\"jump\"],[0],[1]],[[533.8758898502787],[143.2924647871392],[4.99876490498972e-7],[\"jump\"],[0],[1]],[[539.3766598516598],[143.36253292885576],[4.99876490498972e-7],[\"fall\"],[0],[1]],[[544.8698398528726],[143.8481383642534],[4.99876490498972e-7],[\"fall\"],[0],[1]],[[550.3590598527447],[144.748428663513],[4.99876490498972e-7],[\"fall\"],[0],[1]],[[555.8410198549612],[146.06146606249146],[4.99876490498972e-7],[\"fall\"],[0],[1]],[[561.3328798557271],[147.79230895223915],[4.99876490498972e-7],[\"fall\"],[0],[1]],[[566.8310098562146],[149.9415113089735],[4.99876490498972e-7],[\"fall\"],[0],[1]],[[572.3251798553614],[152.50494951455428],[4.99876490498972e-7],[\"fall\"],[0],[1]],[[577.8384898561857],[155.49600372554457],[4.99876490498972e-7],[\"fall\"],[0],[1]],[[583.2943798519776],[158.8659168466666],[4.99876490498972e-7],[\"fall\"],[0],[1]],[[588.7921798499523],[162.67804971533178],[4.99876490498972e-7],[\"fall\"],[0],[1]],[[594.2945998542931],[166.91041947606925],[4.99876490498972e-7],[\"fall\"],[0],[1]],[[599.7821698512056],[171.54615231962518],[4.99876490498972e-7],[\"fall\"],[0],[1]],[[605.249279855598],[176.57629941566086],[4.99876490498972e-7],[\"fall\"],[0],[1]],[[610.7652298573161],[182.07046977300132],[4.99876490498972e-7],[\"fall\"],[0],[1]],[[616.2531298567413],[187.95153623296804],[4.99876490498972e-7],[\"fall\"],[0],[1]],[[621.7436698570604],[194.25066639594104],[4.99876490498972e-7],[\"fall\"],[0],[1]],[[627.2342098573794],[200.9650311249623],[4.99876490498972e-7],[\"fall\"],[0],[1]],[[632.7131998561894],[208.07876080545725],[4.99876490498972e-7],[\"fall\"],[0],[1]],[[638.2086898557831],[215.62989712540985],[4.99876490498972e-7],[\"fall\"],[0],[1]],[[643.7206798561605],[223.62219075999815],[4.99876490498972e-7],[\"fall\"],[0],[1]],[[649.1950498486043],[231.97272839043964],[4.99876490498972e-7],[\"fall\"],[0],[1]],[[654.6826198551211],[240.75818662483292],[4.99876490498972e-7],[\"fall\"],[0],[1]],[[660.1738198508614],[249.9647907778293],[4.99876490498972e-7],[\"fall\"],[0],[1]],[[665.6933998514072],[259.6386157619664],[4.99876490498972e-7],[\"fall\"],[0],[1]],[[671.1803098528984],[269.6698677619847],[4.99876490498972e-7],[\"fall\"],[0],[1]],[[676.6738198566239],[280.128869900152],[4.99876490498972e-7],[\"fall\"],[0],[1]],[[682.1481898490678],[290.96422407019867],[4.99876490498972e-7],[\"fall\"],[0],[1]],[[687.6298198487715],[302.22783586607005],[4.99876490498972e-7],[\"fall\"],[0],[1]],[[693.1470898509364],[313.9839679108275],[4.99876490498972e-7],[\"fall\"],[0],[1]],[[698.6330098544935],[326.0878358230883],[4.99876490498972e-7],[\"fall\"],[0],[1]],[[704.0869198544173],[338.5307910088188],[4.99876490498972e-7],[\"fall\"],[0],[1]],[[709.6223398507212],[351.5817597652333],[4.99876490498972e-7],[\"fall\"],[0],[1]],[[715.1056198533846],[351.9567597652333],[4.99876490498972e-7],[\"run\"],[0],[1]],[[720.1635541878513],[351.9567597652333],[4.99876490498972e-7],[\"run\"],[0],[1]],[[724.8458355321612],[351.9567597652333],[4.99876490498972e-7],[\"run\"],[0],[1]],[[729.0927290475391],[351.9567597652333],[4.99876490498972e-7],[\"run\"],[0],[1]],[[732.9074182019604],[351.9567597652333],[4.99876490498972e-7],[\"run\"],[0],[1]],[[736.321676744444],[351.9567597652333],[4.99876490498972e-7],[\"run\"],[0],[1]],[[739.3233306053913],[351.9567597652333],[4.99876490498972e-7],[\"run\"],[0],[1]],[[741.9111254562434],[351.9567597652333],[4.99876490498972e-7],[\"run\"],[0],[1]],[[744.0768443261281],[351.9567597652333],[4.99876490498972e-7],[\"run\"],[0],[1]],[[745.8381224203318],[351.9567597652333],[4.99876490498972e-7],[\"run\"],[0],[1]],[[747.1720438929683],[351.9567597652333],[4.99876490498972e-7],[\"run\"],[0],[1]],[[748.0953250894615],[351.9567597652333],[4.99876490498972e-7],[\"run\"],[0],[1]],[[748.6037660988228],[351.9567597652333],[4.99876490498972e-7],[\"run\"],[0],[1]],[[748.6967768690942],[351.9567597652333],[4.99876490498972e-7],[\"run\"],[0],[1]],[[748.6967768690942],[351.9567597652333],[4.99876490498972e-7],[\"idle\"],[0],[1]],[[748.6967768690942],[351.9567597652333],[4.99876490498972e-7],[\"idle\"],[0],[1]],[[748.6967768690942],[351.9567597652333],[4.99876490498972e-7],[\"idle\"],[0],[1]],[[748.6967768690942],[351.9567597652333],[4.99876490498972e-7],[\"idle\"],[0],[1]],[[748.6967768690942],[351.9567597652333],[4.99876490498972e-7],[\"idle\"],[0],[1]],[[748.6967768690942],[351.9567597652333],[4.99876490498972e-7],[\"idle\"],[0],[1]],[[748.6967768690942],[351.9567597652333],[4.99876490498972e-7],[\"idle\"],[0],[1]],[[748.6967768690942],[351.9567597652333],[4.99876490498972e-7],[\"idle\"],[0],[1]],[[748.6967768690942],[351.9567597652333],[4.99876490498972e-7],[\"idle\"],[0],[1]],[[748.6967768690942],[351.9567597652333],[4.99876490498972e-7],[\"idle\"],[0],[1]],[[748.6967768690942],[351.9567597652333],[4.99876490498972e-7],[\"idle\"],[0],[1]],[[748.6967768690942],[351.9567597652333],[4.99876490498972e-7],[\"idle\"],[0],[1]],[[748.6967768690942],[351.9567597652333],[4.99876490498972e-7],[\"idle\"],[0],[1]],[[748.6967768690942],[351.9567597652333],[4.99876490498972e-7],[\"idle\"],[0],[1]],[[748.6967768690942],[351.9567597652333],[4.99876490498972e-7],[\"idle\"],[0],[1]],[[748.6967768690942],[351.9567597652333],[4.99876490498972e-7],[\"idle\"],[0],[1]],[[748.6967768690942],[351.9567597652333],[4.99876490498972e-7],[\"idle\"],[0],[1]],[[748.6967768690942],[351.9567597652333],[4.99876490498972e-7],[\"idle\"],[0],[1]],[[748.6967768690942],[351.9567597652333],[4.99876490498972e-7],[\"idle\"],[0],[1]],[[748.6967768690942],[351.9567597652333],[4.99876490498972e-7],[\"idle\"],[0],[1]],[[748.6967768690942],[351.9567597652333],[4.99876490498972e-7],[\"idle\"],[0],[1]],[[748.6967768690942],[351.9567597652333],[4.99876490498972e-7],[\"idle\"],[0],[1]],[[748.6967768690942],[351.9567597652333],[4.99876490498972e-7],[\"idle\"],[0],[1]],[[748.6967768690942],[351.9567597652333],[4.99876490498972e-7],[\"idle\"],[0],[1]],[[748.6967768690942],[351.9567597652333],[4.99876490498972e-7],[\"idle\"],[0],[1]],[[748.6967768690942],[351.9567597652333],[4.99876490498972e-7],[\"idle\"],[0],[1]]]}"],[0]],[],[1,"Default",0,1]],[[40,0,0,391,9,0,1.570796370506287,1,0,0,0,0,[]],51,126,[],[[0],[1],[1,100,""]],[0,0]],[[-108.2000122070313,-95.59999847412109,0,4,8,0,0,1,1,0,0,0,[]],38,2634,[[0],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","rightarm",3,1,0,0,1,2]],[0,"Default",0,1]],[[-108.2000122070313,-87.59999847412109,0,4,8,0,0,1,1,0,0,0,[]],40,2635,[[1],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","righthand",3,1,0,0,1,2]],[0,"Default",0,1]],[[-112.2000122070313,-90.59999847412109,0,8,16,0,0,1,0.5,0.5,0,0,[]],32,2636,[[2],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","body",3,1,0,0,1,2]],[0,"Default",0,1]],[[-112.2000122070313,-74.59999847412109,0,4,8,0,0,1,0,0,0,0,[]],39,2637,[[4],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","rightfoot",3,1,0,0,1,2]],[0,"Default",0,1]],[[-112.2000122070313,-82.59999847412109,0,4,8,0,0,1,0,0,0,0,[]],41,2638,[[3],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","rightleg",3,1,0,0,1,2]],[0,"Default",0,1]],[[-116.2000122070313,-74.59999847412109,0,4,8,0,0,1,0,0,0,0,[]],35,2639,[[6],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","leftfoot",3,1,0,0,1,2]],[0,"Default",0,1]],[[-116.2000122070313,-82.59999847412109,0,4,8,0,0,1,0,0,0,0,[]],37,2640,[[5],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","leftleg",3,1,0,0,1,2]],[0,"Default",0,1]],[[-112.2000122070313,-98.59999847412109,0,32,32,0,0,1,0.5,1,0,0,[]],33,2641,[[7],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","head",3,1,0,0,1,2]],[0,"Default",0,1]],[[-116.2000122070313,-95.59999847412109,0,4,8,0,0,1,1,0,0,0,[]],34,2642,[[8],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","leftarm",3,1,0,0,1,2]],[0,"Default",0,1]],[[-116.2000122070313,-87.59999847412109,0,4,8,0,0,1,1,0,0,0,[]],36,2643,[[9],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","lefthand",3,1,0,0,1,2]],[0,"Default",0,1]],[[759,591,0,64,64,0,0,1,0.5,0.5,0,0,[]],60,5499,[["level3"]],[[1],[400,-200,800,0,0,0],[0,0,0,1,1]],[0,"Default",0,1]],[[68,106,0,300,117,0,0,1,0,0,0,0,[[]]],61,5597,[],[[1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>","1",7,0,60,0,0,0,0,0,"",-1,0]]],[]],["UI",1,266359591770657,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[240,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3097,[["right"]],[[0,1,0,1,1]],[0,"Default",0,1]],[[80,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3098,[["left"]],[[0,1,0,1,1]],[0,"Default",1,1]],[[560,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3099,[["up"]],[[1,1,1,1,1]],[0,"Default",3,1]],[[400,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3100,[["down"]],[[1,1,1,1,1]],[0,"Default",2,1]]],[]],["End Card",2,284496166058282,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],78,2607,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[12.04449462890625,194,0,615.9109497070313,67,0,0,1,0,0,0,0,[]],79,2608,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Timer for this level",2.5,0,0,0,0,0,-10,0,"",-1,0]],[[17.546875,248,0,604.90625,105,0,0,1,0,0,0,0,[]],80,2610,[[0],[0],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","13:40:40",4,0,63,50,0,0,-10,0,"",-1,0]],[[115.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,2611,[[0],[1],[0],[0],["replay"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Replay",""],[""],[2,2,0,0,0],["",""]],[0,"Replay",0,1]],[[524.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3086,[[0],[1],[0],[0],["next"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Next",""],[""],[2,2,0,0,0],["",""]],[0,"Next",0,1]],[[320.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3087,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > Back","Level Menu"],[""],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[320.75,521.8050537109375,0,384,96,0,0,1,0.5,0.5,0,0,[]],70,3088,[[1],[1],[0],[0],[""],["{\"size\": 22, \"left\": 70, \"right\": 18, \"alignY\": 60}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > DownloadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"DownloadReplay",0,1]]],[]],["Pause",3,901310333764802,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-310,678,0,274,31,0,0,1,0,0,0,0,[]],168,3089,[],[],[".ovo",0,1,"file"]],[[320,320,0,425,250,0,0,1,0.5,0.5,0,0,[]],82,3090,[],[[6,1,"",300,1,1,"",300,"overlay",1,"PauseClose",1,1]],[0,"Default",0,1]],[[214,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3091,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"",""],["PauseClose"],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[426,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3092,[[0],[1],[0],[0],["quit"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > GiveUp",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[115.5,202,0,409,118,0,0,1,0,0,0,0,[]],83,3093,[[1],[1],["pause"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Pause",4,0,57,50,0,0,-10,0,"",-1,0]],[[320.5,88,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3094,[[1],[1],[0],[0],["loadreplay"],["{\"size\": 16, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > LoadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"LoadReplay",0,1]],[[320.5,157,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3095,[[1],[0],[0],[0],["toggledebug"],["{\"size\": 15, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Debug > Toggle",""],[""],[2,2,0,0,0],["",""]],[0,"ToggleDebug",0,1]],[[78,448,0,484,134,0,0,1,0,0,0,0,[]],193,3096,[],[],[0,"Default",0,1]]],[]],["Overlay",4,321452844889850,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[432,4,0,203.0009155273438,64,0,0,1,0,0,0,0,[]],107,5488,[],[[1,0,1,0,1]],[2,2,2,2,0,1,0,0,1]],[[432,4,0,203,64,0,0,1,0,0,0,0,[]],84,3101,[[0],[0],[""],["en-us"],[0],[1],[1],["{\"alignY\": 85, \"alignX\": 45, \"size\": 28}"],[0],[1],[0],[0],[0]],[["",""],[1,0,1,0,1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",2,0,100,50,0,0,-10,0,"",-1,0]],[[88,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3102,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Pause",""],[""],[0,0,0,0,1],["",""]],[0,"Pause",0,1]],[[158,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3103,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Replay","1"],[""],[0,0,0,0,1],["",""]],[0,"Reload",0,1]]],[]],["End Game",5,346444620114684,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],85,3104,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[73,194,0,494,72,0,0,1,0,0,0,0,[]],86,3105,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],["{alignY:50}"],[0],[1],[0],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Your final time",2.5,0,50,50,0,0,-10,0,"",-1,0]],[[320,403,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3106,[[0],[1],[0],[0],[""],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Quit",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[73,243,0,494,85,0,0,1,0,0,0,0,[]],87,3108,[[0],[1],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",3,0,50,50,0,0,-10,0,"",-1,0]],[[73,318,0,494,25,0,0,1,0,0,0,0,[]],86,5480,[[1],[1],["tryagainhardmode"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Try again in hard mode!",1,0,50,50,0,0,-2,0,"",-1,0]]],[]],["Banner",6,382437274986641,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-237,-189,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,3109,[],[["overlay"]],[0,"Default",0,1]]],[]],["AdPlaying",7,602302944493983,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,-203.5,0,250,97,0,0,1,0.5,0.5,0,0,[]],125,390,[],[[6,1,"",300,1,1,"",300,"overlay",1,"",1,1],[]],[0,"Default",0,1]],[[209,-275,0,222,139,0,0,1,0,0,0,0,[]],86,391,[[1],[1],["adplaying"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","An ad is playing right now...",1.2,0,50,50,0,0,-2,0,"",-1,0]],[[-154.5756988525391,-294.3137512207031,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,5508,[],[["overlay"]],[0,"Default",0,1]]],[]]],[],[]],["Level 4",1600,640,true,"Levels",367892594987182,[["Layer 0",0,260720997695780,true,[255,255,255],false,1,1,1,false,false,1,0,0,[[[96,256,0,32,64,0,0,1,0.5,0.5,0,0,[]],42,215,[["run"],[0],[1],[1],[0],[0.8],[0.5],[0],[1],[0],[0],[0],[""],[2],[0],[0],[0],[""],[0],[3],[0],[0],[0],[0],[0],[0],[0]],[[330,1500,1500,650,1500,1000,0,0,0,1],[],[0,0],[0,10000,360,1]],[1,"Default",0,1]],[[151,199,0,231,64,0,0,1,0,0,0,0,[]],46,217,[[1],[1],[""],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","You can even Slide!",1,0,50,0,0,0,0,0,"",-1,0]],[[398,67,0,270,9,0,1.570796370506287,1,0,0,0,0,[]],51,218,[],[[0],[1],[1,100,""]],[0,0]],[[-101,26,0,60.93439102172852,60.93439102172852,0,0,1,0.5,0.5,0,0,[]],53,1409,[["Hardest"],["{\"c2array\":true,\"size\":[296,6,1],\"data\":[[[256.78176339999743],[351.9668821539994],[0],[\"idle\"],[0],[1]],[[256.78176339999743],[351.9668821539994],[0],[\"idle\"],[0],[1]],[[256.78176339999743],[351.9668821539994],[0],[\"idle\"],[0],[1]],[[256.78176339999743],[351.9668821539994],[0],[\"idle\"],[0],[1]],[[256.78176339999743],[351.9668821539994],[0],[\"idle\"],[0],[1]],[[256.78176339999743],[351.9668821539994],[0],[\"idle\"],[0],[1]],[[256.78176339999743],[351.9668821539994],[0],[\"idle\"],[0],[1]],[[256.78176339999743],[351.9668821539994],[0],[\"idle\"],[0],[1]],[[256.78176339999743],[351.9668821539994],[0],[\"idle\"],[0],[1]],[[256.78176339999743],[351.9668821539994],[0],[\"idle\"],[0],[1]],[[256.78176339999743],[351.9668821539994],[0],[\"idle\"],[0],[1]],[[256.78176339999743],[351.9668821539994],[0],[\"idle\"],[0],[1]],[[256.78176339999743],[351.9668821539994],[0],[\"idle\"],[0],[1]],[[256.78176339999743],[351.9668821539994],[0],[\"idle\"],[0],[1]],[[256.78176339999743],[351.9668821539994],[0],[\"idle\"],[0],[1]],[[256.78176339999743],[351.9668821539994],[0],[\"idle\"],[0],[1]],[[256.78176339999743],[351.9668821539994],[0],[\"idle\"],[0],[1]],[[256.78176339999743],[351.9668821539994],[0],[\"idle\"],[0],[1]],[[256.78176339999743],[351.9668821539994],[0],[\"idle\"],[0],[1]],[[256.78176339999743],[351.9668821539994],[0],[\"idle\"],[0],[1]],[[256.78176339999743],[351.9668821539994],[0],[\"idle\"],[0],[1]],[[256.78176339999743],[351.9668821539994],[0],[\"idle\"],[0],[1]],[[256.78176339999743],[351.9668821539994],[0],[\"idle\"],[0],[1]],[[256.78176339999743],[351.9668821539994],[0],[\"idle\"],[0],[1]],[[256.78176339999743],[351.9668821539994],[0],[\"idle\"],[0],[1]],[[256.78176339999743],[351.9668821539994],[0],[\"idle\"],[0],[1]],[[256.78176339999743],[351.9668821539994],[0],[\"idle\"],[0],[1]],[[256.78176339999743],[351.9668821539994],[0],[\"idle\"],[0],[1]],[[256.78176339999743],[351.9668821539994],[0],[\"idle\"],[0],[1]],[[256.78176339999743],[351.9668821539994],[0],[\"slide\"],[1],[1]],[[260.76366999999664],[351.9668821539994],[0],[\"slide\"],[1],[1]],[[269.12517153849626],[351.9668821539994],[0],[\"slide\"],[1],[1]],[[277.5172677009986],[351.9668821539994],[0],[\"slide\"],[1],[1]],[[285.9303905394983],[351.9668821539994],[0],[\"slide\"],[1],[1]],[[294.2746772019979],[351.9668821539994],[0],[\"slide\"],[1],[1]],[[302.6227897284983],[351.9668821539994],[0],[\"slide\"],[1],[1]],[[311.0253999549958],[351.9668821539994],[0],[\"slide\"],[1],[1]],[[319.38833589099744],[351.9668821539994],[0],[\"slide\"],[1],[1]],[[327.7426650369973],[351.9668821539994],[0],[\"slide\"],[1],[1]],[[336.1070353434975],[351.9668821539994],[0],[\"slide\"],[1],[1]],[[344.4996094494982],[351.9668821539994],[0],[\"slide\"],[1],[1]],[[352.8658922079988],[351.9668821539994],[0],[\"slide\"],[1],[1]],[[361.21209182649875],[351.9668821539994],[0],[\"slide\"],[1],[1]],[[369.63285928899654],[351.9668821539994],[0],[\"slide\"],[1],[1]],[[377.9972295954967],[351.9668821539994],[0],[\"slide\"],[1],[1]],[[386.27931905799755],[351.9668821539994],[0],[\"slide\"],[1],[1]],[[394.75166764449887],[351.9668821539994],[0],[\"slide\"],[1],[1]],[[403.1074313229973],[351.9668821539994],[0],[\"slide\"],[1],[1]],[[411.44023924149803],[351.9668821539994],[0],[\"slide\"],[1],[1]],[[419.8538398914961],[351.9668821539994],[0],[\"slide\"],[1],[1]],[[428.22490356999765],[351.9668821539994],[0],[\"slide\"],[1],[1]],[[436.5390548439963],[351.9668821539994],[0],[\"slide\"],[1],[1]],[[444.9798857904982],[351.9668821539994],[0],[\"slide\"],[1],[1]],[[453.27106877649913],[351.9668821539994],[0],[\"slide\"],[1],[1]],[[461.67941333499783],[351.9668821539994],[0],[\"slide\"],[1],[1]],[[470.06911973499797],[351.9668821539994],[0],[\"slide\"],[1],[1]],[[478.38279257349825],[351.9668821539994],[0],[\"slide\"],[1],[1]],[[486.7490753319988],[351.9668821539994],[0],[\"slide\"],[1],[1]],[[495.2018463159979],[351.9668821539994],[0],[\"slide\"],[1],[1]],[[503.5341759159968],[351.9668821539994],[0],[\"slide\"],[1],[1]],[[511.8784625784964],[351.9668821539994],[0],[\"slide\"],[1],[1]],[[520.2834621624962],[351.9668821539994],[0],[\"slide\"],[1],[1]],[[528.671256698496],[351.9668821539994],[0],[\"slide\"],[1],[1]],[[537.032758236999],[351.9668821539994],[0],[\"slide\"],[1],[1]],[[545.4090805809965],[351.9668821539994],[0],[\"slide\"],[1],[1]],[[553.7438017434976],[351.9668821539994],[0],[\"slide\"],[1],[1]],[[562.1115188094967],[351.9668821539994],[0],[\"slide\"],[1],[1]],[[570.5017031679987],[351.9668821539994],[0],[\"slide\"],[1],[1]],[[578.8498156944991],[351.9668821539994],[0],[\"slide\"],[1],[1]],[[587.2256599929981],[351.9668821539994],[0],[\"slide\"],[1],[1]],[[595.6124985789976],[351.9668821539994],[0],[\"slide\"],[1],[1]],[[603.9280851414983],[351.9668821539994],[0],[\"slide\"],[1],[1]],[[612.3187474554986],[351.9668821539994],[0],[\"slide\"],[1],[1]],[[620.7070199619967],[351.9668821539994],[0],[\"slide\"],[1],[1]],[[629.0761713084979],[351.9668821539994],[0],[\"slide\"],[1],[1]],[[637.453449734499],[351.9668821539994],[0],[\"slide\"],[1],[1]],[[645.7924755204958],[351.9668821539994],[0],[\"slide\"],[1],[1]],[[654.1434573189968],[351.9668821539994],[0],[\"slide\"],[1],[1]],[[662.5317298254984],[351.9668821539994],[0],[\"run\"],[0],[1]],[[668.0216098254979],[351.9668821539994],[0],[\"run\"],[0],[1]],[[673.1134351119979],[351.9668821539994],[0],[\"run\"],[0],[1]],[[677.7982867749984],[351.9668821539994],[0],[\"run\"],[0],[1]],[[682.0050176949978],[351.9668821539994],[0],[\"run\"],[0],[1]],[[685.847191301498],[351.9668821539994],[0],[\"run\"],[0],[1]],[[689.2574748564974],[351.9668821539994],[0],[\"run\"],[0],[1]],[[692.257778432498],[351.9668821539994],[0],[\"run\"],[0],[1]],[[694.8412976394977],[351.9668821539994],[0],[\"run\"],[0],[1]],[[697.0125083469983],[351.9668821539994],[0],[\"run\"],[0],[1]],[[698.7580323909979],[351.9668821539994],[0],[\"run\"],[0],[1]],[[700.0925657169979],[351.9668821539994],[0],[\"run\"],[0],[1]],[[701.0174318349979],[351.9668821539994],[0],[\"run\"],[0],[1]],[[701.520231827498],[351.9668821539994],[0],[\"run\"],[0],[1]],[[701.610129656498],[351.9668821539994],[0],[\"run\"],[0],[1]],[[701.610129656498],[351.9668821539994],[0],[\"idle\"],[0],[1]],[[701.610129656498],[351.9668821539994],[0],[\"idle\"],[0],[1]],[[701.610129656498],[351.9668821539994],[0],[\"idle\"],[0],[1]],[[701.610129656498],[351.9668821539994],[0],[\"idle\"],[0],[1]],[[701.610129656498],[351.9668821539994],[0],[\"idle\"],[0],[1]],[[701.610129656498],[351.9668821539994],[0],[\"idle\"],[0],[1]],[[701.610129656498],[351.9668821539994],[0],[\"idle\"],[0],[1]],[[701.610129656498],[351.9668821539994],[0],[\"idle\"],[0],[1]],[[701.610129656498],[351.9668821539994],[0],[\"idle\"],[0],[1]],[[701.610129656498],[351.9668821539994],[0],[\"idle\"],[0],[1]],[[701.610129656498],[351.9668821539994],[0],[\"idle\"],[0],[1]],[[701.610129656498],[351.9668821539994],[0],[\"idle\"],[0],[1]],[[701.610129656498],[351.9668821539994],[0],[\"idle\"],[0],[1]],[[701.610129656498],[351.9668821539994],[0],[\"idle\"],[0],[1]],[[701.610129656498],[351.9668821539994],[0],[\"idle\"],[0],[1]],[[701.610129656498],[351.9668821539994],[0],[\"idle\"],[0],[1]],[[701.610129656498],[351.9668821539994],[0],[\"idle\"],[0],[1]],[[701.610129656498],[351.9668821539994],[0],[\"idle\"],[0],[1]],[[701.610129656498],[351.9668821539994],[0],[\"idle\"],[0],[1]],[[701.610129656498],[351.9668821539994],[0],[\"idle\"],[0],[1]],[[701.610129656498],[351.9668821539994],[0],[\"idle\"],[0],[1]],[[701.610129656498],[351.9668821539994],[0],[\"idle\"],[0],[1]],[[701.610129656498],[351.9668821539994],[0],[\"idle\"],[0],[1]],[[701.610129656498],[351.9668821539994],[0],[\"idle\"],[0],[1]],[[701.610129656498],[351.9668821539994],[0],[\"idle\"],[0],[1]],[[701.610129656498],[351.9668821539994],[0],[\"idle\"],[0],[1]],[[701.610129656498],[351.9668821539994],[0],[\"idle\"],[0],[1]],[[701.610129656498],[351.9668821539994],[0],[\"idle\"],[0],[1]],[[701.610129656498],[351.9668821539994],[0],[\"idle\"],[0],[1]],[[701.610129656498],[351.9668821539994],[0],[\"idle\"],[0],[1]],[[701.610129656498],[351.9668821539994],[0],[\"idle\"],[0],[1]],[[701.610129656498],[351.9668821539994],[0],[\"idle\"],[0],[1]],[[701.610129656498],[351.9668821539994],[0],[\"idle\"],[0],[1]],[[701.610129656498],[351.9668821539994],[0],[\"idle\"],[0],[1]],[[701.610129656498],[351.9668821539994],[0],[\"idle\"],[0],[1]],[[701.610129656498],[351.9668821539994],[0],[\"idle\"],[0],[1]],[[701.610129656498],[351.9668821539994],[0],[\"idle\"],[0],[1]],[[701.610129656498],[351.9668821539994],[0],[\"idle\"],[0],[1]],[[701.610129656498],[351.9668821539994],[0],[\"idle\"],[0],[1]],[[701.610129656498],[351.9668821539994],[0],[\"idle\"],[0],[1]],[[701.610129656498],[351.9668821539994],[0],[\"idle\"],[0],[1]],[[701.610129656498],[351.9668821539994],[0],[\"idle\"],[0],[1]],[[701.610129656498],[351.9668821539994],[0],[\"idle\"],[0],[1]],[[701.610129656498],[351.9668821539994],[0],[\"idle\"],[0],[1]],[[701.610129656498],[351.9668821539994],[0],[\"idle\"],[0],[1]],[[701.610129656498],[351.9668821539994],[0],[\"idle\"],[0],[1]],[[701.610129656498],[351.9668821539994],[0],[\"idle\"],[0],[1]],[[701.610129656498],[351.9668821539994],[0],[\"idle\"],[0],[1]],[[701.610129656498],[351.9668821539994],[0],[\"idle\"],[0],[1]],[[701.610129656498],[351.9668821539994],[0],[\"idle\"],[0],[1]],[[701.610129656498],[351.9668821539994],[0],[\"idle\"],[0],[1]],[[701.610129656498],[351.9668821539994],[0],[\"idle\"],[0],[1]],[[701.610129656498],[351.9668821539994],[0],[\"idle\"],[0],[1]],[[701.610129656498],[351.9668821539994],[0],[\"idle\"],[0],[1]],[[701.610129656498],[351.9668821539994],[0],[\"idle\"],[0],[1]],[[701.610129656498],[351.9668821539994],[0],[\"idle\"],[0],[1]],[[701.610129656498],[351.9668821539994],[0],[\"idle\"],[0],[1]],[[701.610129656498],[351.9668821539994],[0],[\"idle\"],[0],[1]],[[701.610129656498],[351.9668821539994],[0],[\"idle\"],[0],[1]],[[701.610129656498],[351.9668821539994],[0],[\"idle\"],[0],[1]],[[701.610129656498],[351.9668821539994],[0],[\"idle\"],[0],[1]],[[701.610129656498],[351.9668821539994],[0],[\"idle\"],[0],[1]],[[701.610129656498],[351.9668821539994],[0],[\"idle\"],[0],[1]],[[701.610129656498],[351.9668821539994],[0],[\"idle\"],[0],[1]],[[701.610129656498],[351.9668821539994],[0],[\"idle\"],[0],[1]],[[701.610129656498],[351.9668821539994],[0],[\"idle\"],[0],[1]],[[701.610129656498],[351.9668821539994],[0],[\"idle\"],[0],[1]],[[701.610129656498],[351.9668821539994],[0],[\"idle\"],[0],[1]],[[701.610129656498],[351.9668821539994],[0],[\"idle\"],[0],[1]],[[701.610129656498],[351.9668821539994],[0],[\"idle\"],[0],[1]],[[701.610129656498],[351.9668821539994],[0],[\"slide\"],[1],[1]],[[705.584543718998],[351.9668821539994],[0],[\"slide\"],[1],[1]],[[714.0387473814991],[351.9668821539994],[0],[\"slide\"],[1],[1]],[[722.3796862554997],[351.9668821539994],[0],[\"slide\"],[1],[1]],[[730.6890530394974],[351.9668821539994],[0],[\"slide\"],[1],[1]],[[739.0840168179968],[351.9668821539994],[0],[\"slide\"],[1],[1]],[[747.5219818764981],[351.9668821539994],[0],[\"slide\"],[1],[1]],[[755.8160362764996],[351.9668821539994],[0],[\"slide\"],[1],[1]],[[764.2396702749979],[351.9668821539994],[0],[\"slide\"],[1],[1]],[[772.5767829249978],[351.9668821539994],[0],[\"slide\"],[1],[1]],[[780.9502369509981],[351.9668821539994],[0],[\"slide\"],[1],[1]],[[789.3375535134995],[351.9668821539994],[0],[\"slide\"],[1],[1]],[[797.6751444519978],[351.9668821539994],[0],[\"slide\"],[1],[1]],[[806.060071101997],[351.9668821539994],[0],[\"slide\"],[1],[1]],[[814.4311347804985],[351.9668821539994],[0],[\"slide\"],[1],[1]],[[822.8404350189974],[351.9668821539994],[0],[\"slide\"],[1],[1]],[[831.1942859814989],[351.9668821539994],[0],[\"slide\"],[1],[1]],[[839.510350967498],[351.9668821539994],[0],[\"slide\"],[1],[1]],[[847.9530924459967],[351.9668821539994],[0],[\"slide\"],[1],[1]],[[856.3088561244987],[351.9668821539994],[0],[\"slide\"],[1],[1]],[[864.6622289004983],[351.9668821539994],[0],[\"slide\"],[1],[1]],[[873.0199052469972],[351.9668821539994],[0],[\"slide\"],[1],[1]],[[881.4502274094968],[351.9668821539994],[0],[\"slide\"],[1],[1]],[[889.7796870354987],[351.9668821539994],[0],[\"slide\"],[1],[1]],[[898.0924029939988],[351.9668821539994],[0],[\"slide\"],[1],[1]],[[906.516514737999],[351.9668821539994],[0],[\"slide\"],[1],[1]],[[914.8603231539968],[351.9668821539994],[0],[\"slide\"],[1],[1]],[[923.6610271539995],[343.29952215399675],[0],[\"jump\"],[0],[1]],[[932.4569791539993],[335.0531255754969],[0],[\"jump\"],[0],[1]],[[941.2856671539981],[327.19542604549787],[0],[\"jump\"],[0],[1]],[[950.0515231539976],[319.80708779149825],[0],[\"jump\"],[0],[1]],[[958.7967871539986],[312.8476050439974],[0],[\"jump\"],[0],[1]],[[967.5568351539988],[306.28924910799725],[0],[\"jump\"],[0],[1]],[[976.3512031540002],[300.1213324359963],[0],[\"jump\"],[0],[1]],[[985.1772511539966],[294.35033402799854],[0],[\"jump\"],[0],[1]],[[993.9441631540001],[289.0315414999964],[0],[\"jump\"],[0],[1]],[[1002.6999871539994],[284.1319697774968],[0],[\"jump\"],[0],[1]],[[1011.5207551539985],[279.6146924364972],[0],[\"plunge\"],[1],[1]],[[1019.2005811539983],[275.53434436449726],[0],[\"plunge\"],[1],[1]],[[1026.8499151539986],[271.88139828999704],[0],[\"plunge\"],[1],[1]],[[1034.5833331539993],[268.60858900999676],[0],[\"plunge\"],[1],[1]],[[1042.2673171539982],[265.7716355059971],[0],[\"plunge\"],[1],[1]],[[1049.9443711539975],[263.35142761549724],[0],[\"plunge\"],[1],[1]],[[1057.702275153998],[261.328688483497],[0],[\"plunge\"],[1],[1]],[[1065.330819153999],[259.74864694749675],[0],[\"plunge\"],[1],[1]],[[1073.0254291539986],[258.5710052074968],[0],[\"plunge\"],[1],[1]],[[1080.7181911539976],[257.8095300009968],[0],[\"plunge\"],[1],[1]],[[1088.392935153998],[257.4637761389967],[0],[\"plunge\"],[1],[1]],[[1096.0662931539964],[257.53187303899654],[0],[\"plunge\"],[1],[1]],[[1103.7475051539982],[258.0146754529966],[0],[\"plunge\"],[1],[1]],[[1111.4476591539988],[258.91535179949665],[0],[\"plunge\"],[1],[1]],[[1119.1473511539975],[260.23260744049634],[0],[\"plunge\"],[1],[1]],[[1126.833183153997],[261.9626266704961],[0],[\"plunge\"],[1],[1]],[[1134.4977631539987],[264.10070439549656],[0],[\"plunge\"],[1],[1]],[[1142.2265611539983],[266.6764852544964],[0],[\"plunge\"],[1],[1]],[[1149.9225571539964],[269.65756761849553],[0],[\"plunge\"],[1],[1]],[[1157.5991491539974],[273.0452709304958],[0],[\"plunge\"],[1],[1]],[[1165.3131631539975],[276.86767339799576],[0],[\"plunge\"],[1],[1]],[[1172.9869831539977],[281.0839973229958],[0],[\"plunge\"],[1],[1]],[[1180.648791153999],[285.7062649269965],[0],[\"plunge\"],[1],[1]],[[1188.366963153998],[290.7811718419959],[0],[\"plunge\"],[1],[1]],[[1196.026923153999],[296.23014739199647],[0],[\"plunge\"],[1],[1]],[[1203.7039771539983],[302.10546993299585],[0],[\"plunge\"],[1],[1]],[[1206.9378571539974],[308.444623352995],[0],[\"plunge\"],[0],[1]],[[1202.333010753997],[315.1492431649953],[0],[\"stun\"],[0],[-1]],[[1197.7619827539977],[322.2125038049943],[0],[\"stun\"],[0],[-1]],[[1193.115833553996],[329.813240182497],[0],[\"stun\"],[0],[-1]],[[1188.4860391539967],[337.80565659349577],[0],[\"stun\"],[0],[-1]],[[1183.888954353996],[346.15414998949706],[0],[\"stun\"],[0],[-1]],[[1179.289651953997],[351.98211233349537],[0],[\"stun\"],[0],[-1]],[[1175.0619497679975],[351.98211233349537],[0],[\"stun\"],[0],[-1]],[[1171.295892351997],[351.98211233349537],[0],[\"stun\"],[0],[-1]],[[1167.9477596139966],[351.98211233349537],[0],[\"stun\"],[0],[-1]],[[1164.9747808884963],[351.98211233349537],[0],[\"stun\"],[0],[-1]],[[1162.4473677504966],[351.98211233349537],[0],[\"stun\"],[0],[-1]],[[1160.3316606954966],[351.98211233349537],[0],[\"stun\"],[0],[-1]],[[1158.622129487497],[351.98211233349537],[0],[\"stun\"],[0],[-1]],[[1157.3355162774967],[351.98211233349537],[0],[\"stun\"],[0],[-1]],[[1156.4667790374967],[351.98211233349537],[0],[\"stun\"],[0],[-1]],[[1156.0067240259966],[351.98211233349537],[0],[\"stun\"],[0],[-1]],[[1155.9646262199967],[351.98211233349537],[0],[\"stun\"],[0],[-1]],[[1155.9646262199967],[351.98211233349537],[0],[\"stun\"],[0],[-1]],[[1155.9646262199967],[351.98211233349537],[0],[\"stun\"],[0],[-1]],[[1155.9646262199967],[351.98211233349537],[0],[\"stun\"],[0],[-1]],[[1155.9646262199967],[351.98211233349537],[0],[\"stun\"],[0],[-1]],[[1155.9646262199967],[351.98211233349537],[0],[\"stun\"],[0],[-1]],[[1155.9646262199967],[351.98211233349537],[0],[\"stun\"],[0],[-1]],[[1155.9646262199967],[351.98211233349537],[0],[\"stun\"],[0],[-1]],[[1157.2144928759965],[351.98211233349537],[0],[\"run\"],[0],[1]],[[1158.0463452584966],[351.98211233349537],[0],[\"run\"],[0],[1]],[[1158.4646109304965],[351.98211233349537],[0],[\"run\"],[0],[1]],[[1158.4662656304965],[351.98211233349537],[0],[\"run\"],[0],[1]],[[1158.4662656304965],[351.98211233349537],[0],[\"idle\"],[0],[1]],[[1158.4662656304965],[351.98211233349537],[0],[\"idle\"],[0],[1]],[[1158.4662656304965],[351.98211233349537],[0],[\"idle\"],[0],[1]],[[1158.4662656304965],[351.98211233349537],[0],[\"idle\"],[0],[1]],[[1158.4662656304965],[351.98211233349537],[0],[\"idle\"],[0],[1]],[[1158.4662656304965],[351.98211233349537],[0],[\"idle\"],[0],[1]],[[1158.4662656304965],[351.98211233349537],[0],[\"idle\"],[0],[1]],[[1158.4662656304965],[351.98211233349537],[0],[\"idle\"],[0],[1]],[[1158.4662656304965],[351.98211233349537],[0],[\"idle\"],[0],[1]],[[1158.4662656304965],[351.98211233349537],[0],[\"idle\"],[0],[1]],[[1158.4662656304965],[351.98211233349537],[0],[\"idle\"],[0],[1]],[[1158.4662656304965],[351.98211233349537],[0],[\"idle\"],[0],[1]],[[1158.4662656304965],[351.98211233349537],[0],[\"idle\"],[0],[1]],[[1158.4662656304965],[351.98211233349537],[0],[\"idle\"],[0],[1]],[[1158.4662656304965],[351.98211233349537],[0],[\"idle\"],[0],[1]],[[1158.4662656304965],[351.98211233349537],[0],[\"idle\"],[0],[1]],[[1158.4662656304965],[351.98211233349537],[0],[\"idle\"],[0],[1]],[[1158.4662656304965],[351.98211233349537],[0],[\"idle\"],[0],[1]],[[1158.4662656304965],[351.98211233349537],[0],[\"idle\"],[0],[1]],[[1158.4662656304965],[351.98211233349537],[0],[\"idle\"],[0],[1]],[[1158.4662656304965],[351.98211233349537],[0],[\"idle\"],[0],[1]],[[1158.4662656304965],[351.98211233349537],[0],[\"idle\"],[0],[1]],[[1158.4662656304965],[351.98211233349537],[0],[\"idle\"],[0],[1]],[[1158.4662656304965],[351.98211233349537],[0],[\"idle\"],[0],[1]],[[1158.4662656304965],[351.98211233349537],[0],[\"idle\"],[0],[1]],[[1158.4662656304965],[351.98211233349537],[0],[\"idle\"],[0],[1]],[[1158.4662656304965],[351.98211233349537],[0],[\"idle\"],[0],[1]],[[1158.4662656304965],[351.98211233349537],[0],[\"idle\"],[0],[1]],[[1158.4662656304965],[351.98211233349537],[0],[\"idle\"],[0],[1]],[[1158.4662656304965],[351.98211233349537],[0],[\"idle\"],[0],[1]],[[1158.4662656304965],[351.98211233349537],[0],[\"idle\"],[0],[1]],[[1158.4662656304965],[351.98211233349537],[0],[\"idle\"],[0],[1]],[[1158.4662656304965],[351.98211233349537],[0],[\"idle\"],[0],[1]],[[1158.4662656304965],[351.98211233349537],[0],[\"idle\"],[0],[1]],[[1158.4662656304965],[351.98211233349537],[0],[\"idle\"],[0],[1]],[[1158.4662656304965],[351.98211233349537],[0],[\"idle\"],[0],[1]],[[1158.4662656304965],[351.98211233349537],[0],[\"idle\"],[0],[1]],[[1158.4662656304965],[351.98211233349537],[0],[\"idle\"],[0],[1]],[[1158.4662656304965],[351.98211233349537],[0],[\"idle\"],[0],[1]],[[1158.4662656304965],[351.98211233349537],[0],[\"idle\"],[0],[1]],[[1158.4662656304965],[351.98211233349537],[0],[\"idle\"],[0],[1]]]}"],[0]],[],[1,"Default",0,1]],[[153,341,0,231,64,0,0,1,0,0,0,0,[]],46,127,[[1],[1],[""],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Press the Down key",1,0,50,0,0,0,0,0,"",-1,0]],[[41,1,0,392,9,0,1.570796370506287,1,0,0,0,0,[]],51,133,[],[[0],[1],[1,100,""]],[0,0]],[[-79.19999694824219,-74.59999847412109,0,4,8,0,0,1,1,0,0,0,[]],38,2644,[[0],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","rightarm",3,1,0,0,1,2]],[0,"Default",0,1]],[[-79.19999694824219,-66.59999847412109,0,4,8,0,0,1,1,0,0,0,[]],40,2645,[[1],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","righthand",3,1,0,0,1,2]],[0,"Default",0,1]],[[-83.19999694824219,-69.59999847412109,0,8,16,0,0,1,0.5,0.5,0,0,[]],32,2646,[[2],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","body",3,1,0,0,1,2]],[0,"Default",0,1]],[[-83.19999694824219,-53.59999847412109,0,4,8,0,0,1,0,0,0,0,[]],39,2647,[[4],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","rightfoot",3,1,0,0,1,2]],[0,"Default",0,1]],[[-83.19999694824219,-61.59999847412109,0,4,8,0,0,1,0,0,0,0,[]],41,2648,[[3],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","rightleg",3,1,0,0,1,2]],[0,"Default",0,1]],[[-87.19999694824219,-53.59999847412109,0,4,8,0,0,1,0,0,0,0,[]],35,2649,[[6],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","leftfoot",3,1,0,0,1,2]],[0,"Default",0,1]],[[-87.19999694824219,-61.59999847412109,0,4,8,0,0,1,0,0,0,0,[]],37,2650,[[5],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","leftleg",3,1,0,0,1,2]],[0,"Default",0,1]],[[-83.19999694824219,-77.59999847412109,0,32,32,0,0,1,0.5,1,0,0,[]],33,2651,[[7],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","head",3,1,0,0,1,2]],[0,"Default",0,1]],[[-87.19999694824219,-74.59999847412109,0,4,8,0,0,1,1,0,0,0,[]],34,2652,[[8],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","leftarm",3,1,0,0,1,2]],[0,"Default",0,1]],[[-87.19999694824219,-66.59999847412109,0,4,8,0,0,1,1,0,0,0,[]],36,2653,[[9],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","lefthand",3,1,0,0,1,2]],[0,"Default",0,1]],[[-251,177,0,288,117,0,0,1,0,0,0,0,[[]]],61,5598,[],[[1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>","1",7,0,50,0,0,0,0,0,"",-1,0]],[[448,384,0,475,9,0,0,1,0,0,0,0,[]],51,129,[],[[0],[1],[1,100,""]],[0,0]],[[1504,288,0,97,199,0,0,1,0.5257731676101685,0.4974874258041382,0,0,[]],44,2999,[],[[0]],[0,"Default",0,1]],[[544,224,0,231,64,0,0,1,0,0,0,0,[]],46,3000,[[1],[1],[""],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Jump while sliding to dive",1,0,50,0,0,0,0,0,"",-1,0]],[[800,64,0,270,9,0,1.570796370506287,1,0,0,0,0,[]],51,3001,[],[[0],[1],[1,100,""]],[0,0]],[[1152,384,0,367,9,0,0,1,0,0,0,0,[]],51,3002,[],[[0],[1],[1,100,""]],[0,0]],[[1248,288,0,99,9,0,1.570796370506287,1,0,0,0,0,[]],51,3003,[],[[0],[1],[1,100,""]],[0,0]],[[1152,224,0,231,64,0,0,1,0,0,0,0,[]],46,3004,[[1],[1],[""],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Be careful not to hit your head...",1,0,50,0,0,0,0,0,"",-1,0]],[[598,102,0,64,64,0,0,1,0.5,0.5,0,0,[]],60,3248,[["level4"]],[[1],[400,-200,800,0,0,0],[0,0,0,1,1]],[0,"Default",0,1]],[[1152,365,0,28,9,0,1.570796370506287,1,0,0,0,0,[]],51,2432,[],[[0],[1],[1,100,""]],[0,0]],[[32,384,0,571,9,0,0,1,0,0,0,0,[]],51,33,[],[[0],[1],[1,100,""]],[0,0]]],[]],["UI",1,799960469775113,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[240,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3097,[["right"]],[[0,1,0,1,1]],[0,"Default",0,1]],[[80,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3098,[["left"]],[[0,1,0,1,1]],[0,"Default",1,1]],[[560,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3099,[["up"]],[[1,1,1,1,1]],[0,"Default",3,1]],[[400,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3100,[["down"]],[[1,1,1,1,1]],[0,"Default",2,1]]],[]],["End Card",2,550168669659235,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],78,2607,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[12.04449462890625,194,0,615.9109497070313,67,0,0,1,0,0,0,0,[]],79,2608,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Timer for this level",2.5,0,0,0,0,0,-10,0,"",-1,0]],[[17.546875,248,0,604.90625,105,0,0,1,0,0,0,0,[]],80,2610,[[0],[0],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","13:40:40",4,0,63,50,0,0,-10,0,"",-1,0]],[[115.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,2611,[[0],[1],[0],[0],["replay"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Replay",""],[""],[2,2,0,0,0],["",""]],[0,"Replay",0,1]],[[524.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3086,[[0],[1],[0],[0],["next"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Next",""],[""],[2,2,0,0,0],["",""]],[0,"Next",0,1]],[[320.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3087,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > Back","Level Menu"],[""],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[320.75,521.8050537109375,0,384,96,0,0,1,0.5,0.5,0,0,[]],70,3088,[[1],[1],[0],[0],[""],["{\"size\": 22, \"left\": 70, \"right\": 18, \"alignY\": 60}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > DownloadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"DownloadReplay",0,1]]],[]],["Pause",3,374293232141493,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-310,678,0,274,31,0,0,1,0,0,0,0,[]],168,3089,[],[],[".ovo",0,1,"file"]],[[320,320,0,425,250,0,0,1,0.5,0.5,0,0,[]],82,3090,[],[[6,1,"",300,1,1,"",300,"overlay",1,"PauseClose",1,1]],[0,"Default",0,1]],[[214,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3091,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"",""],["PauseClose"],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[426,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3092,[[0],[1],[0],[0],["quit"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > GiveUp",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[115.5,202,0,409,118,0,0,1,0,0,0,0,[]],83,3093,[[1],[1],["pause"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Pause",4,0,57,50,0,0,-10,0,"",-1,0]],[[320.5,88,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3094,[[1],[1],[0],[0],["loadreplay"],["{\"size\": 16, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > LoadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"LoadReplay",0,1]],[[320.5,157,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3095,[[1],[0],[0],[0],["toggledebug"],["{\"size\": 15, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Debug > Toggle",""],[""],[2,2,0,0,0],["",""]],[0,"ToggleDebug",0,1]],[[78,448,0,484,134,0,0,1,0,0,0,0,[]],193,3096,[],[],[0,"Default",0,1]]],[]],["Overlay",4,425037070484153,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[432,4,0,203.0009155273438,64,0,0,1,0,0,0,0,[]],107,5488,[],[[1,0,1,0,1]],[2,2,2,2,0,1,0,0,1]],[[432,4,0,203,64,0,0,1,0,0,0,0,[]],84,3101,[[0],[0],[""],["en-us"],[0],[1],[1],["{\"alignY\": 85, \"alignX\": 45, \"size\": 28}"],[0],[1],[0],[0],[0]],[["",""],[1,0,1,0,1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",2,0,100,50,0,0,-10,0,"",-1,0]],[[88,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3102,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Pause",""],[""],[0,0,0,0,1],["",""]],[0,"Pause",0,1]],[[158,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3103,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Replay","1"],[""],[0,0,0,0,1],["",""]],[0,"Reload",0,1]]],[]],["End Game",5,772264246373391,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],85,3104,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[73,194,0,494,72,0,0,1,0,0,0,0,[]],86,3105,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],["{alignY:50}"],[0],[1],[0],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Your final time",2.5,0,50,50,0,0,-10,0,"",-1,0]],[[320,403,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3106,[[0],[1],[0],[0],[""],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Quit",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[73,243,0,494,85,0,0,1,0,0,0,0,[]],87,3108,[[0],[1],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",3,0,50,50,0,0,-10,0,"",-1,0]],[[73,318,0,494,25,0,0,1,0,0,0,0,[]],86,5480,[[1],[1],["tryagainhardmode"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Try again in hard mode!",1,0,50,50,0,0,-2,0,"",-1,0]]],[]],["Banner",6,818740155024148,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-237,-189,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,3109,[],[["overlay"]],[0,"Default",0,1]]],[]],["AdPlaying",7,691281971857714,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,-203.5,0,250,97,0,0,1,0.5,0.5,0,0,[]],125,390,[],[[6,1,"",300,1,1,"",300,"overlay",1,"",1,1],[]],[0,"Default",0,1]],[[209,-275,0,222,139,0,0,1,0,0,0,0,[]],86,391,[[1],[1],["adplaying"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","An ad is playing right now...",1.2,0,50,50,0,0,-2,0,"",-1,0]],[[-154.5756988525391,-294.3137512207031,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,5508,[],[["overlay"]],[0,"Default",0,1]]],[]]],[],[]],["Level 5",1900,640,true,"Levels",113382846026359,[["Layer 0",0,633840411295104,true,[255,255,255],false,1,1,1,false,false,1,0,0,[[[32,384,0,1184,9,0,0,1,0,0,0,0,[]],51,236,[],[[0],[1],[1,100,""]],[0,0]],[[116,299,0,32,64,0,0,1,0.5,0.5,0,0,[]],42,247,[["run"],[0],[1],[1],[0],[0.8],[0.5],[0],[1],[0],[0],[0],[""],[2],[0],[0],[0],[""],[0],[3],[0],[0],[0],[0],[0],[0],[0]],[[330,1500,1500,650,1500,1000,0,0,0,1],[],[0,0],[0,10000,360,1]],[1,"Default",0,1]],[[296,368,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,249,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[-97,30,0,60.93439102172852,60.93439102172852,0,0,1,0.5,0.5,0,0,[]],53,1411,[["Hellish"],["{\"c2array\":true,\"size\":[170,6,1],\"data\":[[[1032.48118870298],[310.9782033155937],[0],[\"idle\"],[0],[1]],[[1032.48118870298],[310.9782033155937],[0],[\"idle\"],[0],[1]],[[1032.48118870298],[310.9782033155937],[0],[\"idle\"],[0],[1]],[[1032.48118870298],[310.9782033155937],[0],[\"idle\"],[0],[1]],[[1032.48118870298],[310.9782033155937],[0],[\"idle\"],[0],[1]],[[1032.48118870298],[310.9782033155937],[0],[\"idle\"],[0],[1]],[[1032.48118870298],[310.9782033155937],[0],[\"idle\"],[0],[1]],[[1032.48118870298],[310.9782033155937],[0],[\"idle\"],[0],[1]],[[1032.48118870298],[310.9782033155937],[0],[\"idle\"],[0],[1]],[[1032.48118870298],[310.9782033155937],[0],[\"idle\"],[0],[1]],[[1032.48118870298],[310.9782033155937],[0],[\"idle\"],[0],[1]],[[1032.48118870298],[310.9782033155937],[0],[\"idle\"],[0],[1]],[[1032.48118870298],[310.9782033155937],[0],[\"idle\"],[0],[1]],[[1032.48118870298],[310.9782033155937],[0],[\"idle\"],[0],[1]],[[1032.48118870298],[310.9782033155937],[0],[\"idle\"],[0],[1]],[[1032.48118870298],[310.9782033155937],[0],[\"idle\"],[0],[1]],[[1032.48118870298],[310.9782033155937],[0],[\"idle\"],[0],[1]],[[1032.48118870298],[310.9782033155937],[0],[\"idle\"],[0],[1]],[[1032.48118870298],[310.9782033155937],[0],[\"idle\"],[0],[1]],[[1032.48118870298],[310.9782033155937],[0],[\"idle\"],[0],[1]],[[1032.48118870298],[310.9782033155937],[0],[\"idle\"],[0],[1]],[[1032.48118870298],[310.9782033155937],[0],[\"idle\"],[0],[1]],[[1032.48118870298],[310.9782033155937],[0],[\"idle\"],[0],[1]],[[1032.48118870298],[310.9782033155937],[0],[\"idle\"],[0],[1]],[[1032.48118870298],[310.9782033155937],[0],[\"idle\"],[0],[1]],[[1032.48118870298],[310.9782033155937],[0],[\"idle\"],[0],[1]],[[1032.48118870298],[310.9782033155937],[0],[\"idle\"],[0],[1]],[[1032.48118870298],[310.9782033155937],[0],[\"idle\"],[0],[1]],[[1032.48118870298],[310.9782033155937],[0],[\"idle\"],[0],[1]],[[1032.48118870298],[310.9782033155937],[0],[\"idle\"],[0],[1]],[[1032.48118870298],[310.9782033155937],[0],[\"idle\"],[0],[1]],[[1032.48118870298],[310.9782033155937],[0],[\"idle\"],[0],[1]],[[1032.48118870298],[310.9782033155937],[0],[\"idle\"],[0],[1]],[[1032.48118870298],[310.9782033155937],[0],[\"idle\"],[0],[1]],[[1032.48118870298],[310.9782033155937],[0],[\"idle\"],[0],[1]],[[1032.48118870298],[310.9782033155937],[0],[\"idle\"],[0],[1]],[[1032.48118870298],[310.9782033155937],[0],[\"idle\"],[0],[1]],[[1032.48118870298],[310.9782033155937],[0],[\"idle\"],[0],[1]],[[1032.48118870298],[310.9782033155937],[0],[\"idle\"],[0],[1]],[[1032.8998243569804],[310.9782033155937],[0],[\"run\"],[0],[1]],[[1033.7348417049811],[310.9782033155937],[0],[\"run\"],[0],[1]],[[1034.9875931769816],[300.13490331559325],[0],[\"jump\"],[0],[1]],[[1036.6465277049824],[289.76304501159075],[0],[\"jump\"],[0],[1]],[[1038.7431551664804],[279.70923880110047],[0],[\"jump\"],[0],[1]],[[1041.2273585214807],[270.1822269160989],[0],[\"jump\"],[0],[1]],[[1044.1145780214802],[261.0894103041001],[0],[\"jump\"],[0],[1]],[[1047.4530369174831],[252.31296523209315],[0],[\"jump\"],[0],[1]],[[1051.1954907069846],[243.98329571759083],[0],[\"jump\"],[0],[1]],[[1055.3680184439854],[236.04599515859056],[0],[\"jump\"],[0],[1]],[[1059.897805946478],[228.61387394910182],[0],[\"plunge\"],[1],[1]],[[1063.7790679464838],[221.46780692809125],[0],[\"plunge\"],[1],[1]],[[1071.413617946481],[214.84916435309356],[0],[\"plunge\"],[1],[1]],[[1079.13086594648],[208.57736358509428],[0],[\"plunge\"],[1],[1]],[[1086.822241946474],[202.7423228250986],[0],[\"plunge\"],[1],[1]],[[1094.451709946472],[197.36331668909952],[0],[\"plunge\"],[1],[1]],[[1102.1675719464724],[192.34178526659875],[0],[\"plunge\"],[1],[1]],[[1109.9166979464796],[187.72060571759434],[0],[\"plunge\"],[1],[1]],[[1117.572961946473],[183.5667510575975],[0],[\"plunge\"],[1],[1]],[[1125.2292259464798],[179.82484317359408],[0],[\"plunge\"],[1],[1]],[[1132.9478599464774],[176.47113846809486],[0],[\"plunge\"],[1],[1]],[[1140.6438559464755],[173.54350329709527],[0],[\"plunge\"],[1],[1]],[[1148.2853359464793],[171.04696396709392],[0],[\"plunge\"],[1],[1]],[[1156.0520179464734],[168.9334346140951],[0],[\"plunge\"],[1],[1]],[[1163.7087439464751],[167.26182382859434],[0],[\"plunge\"],[1],[1]],[[1171.3543819464746],[166.00343786859403],[0],[\"plunge\"],[1],[1]],[[1179.0882619464837],[165.15086966859315],[0],[\"plunge\"],[1],[1]],[[1186.7768659464803],[164.71872685459326],[0],[\"plunge\"],[1],[1]],[[1194.416959946472],[164.69951912909275],[0],[\"plunge\"],[1],[1]],[[1202.1388279464752],[165.09914251209258],[0],[\"plunge\"],[1],[1]],[[1209.865315946483],[165.91854325409346],[0],[\"plunge\"],[1],[1]],[[1217.4920119464837],[167.1361320640937],[0],[\"plunge\"],[1],[1]],[[1225.1773819464745],[168.77817291409136],[0],[\"plunge\"],[1],[1]],[[1232.923273946476],[170.85479290809147],[0],[\"plunge\"],[1],[1]],[[1240.5712219464776],[173.3162071680918],[0],[\"plunge\"],[1],[1]],[[1248.2431939464775],[176.19899216209157],[0],[\"plunge\"],[1],[1]],[[1255.9876999464805],[179.53052945259276],[0],[\"plunge\"],[1],[1]],[[1263.6518179464838],[183.2402777555945],[0],[\"plunge\"],[1],[1]],[[1271.290987946472],[187.34805953808763],[0],[\"plunge\"],[1],[1]],[[1279.010083946478],[191.91755552009107],[0],[\"plunge\"],[1],[1]],[[1286.6852899464836],[196.8750574630948],[0],[\"plunge\"],[1],[1]],[[1294.3567999464751],[202.24376115558843],[0],[\"plunge\"],[1],[1]],[[1302.1054639464737],[208.08840901358704],[0],[\"plunge\"],[1],[1]],[[1309.7492539464797],[214.26455824359172],[0],[\"plunge\"],[1],[1]],[[1317.4660399464838],[220.91817323909527],[0],[\"plunge\"],[1],[1]],[[1325.1255379464828],[227.93468788209444],[0],[\"plunge\"],[1],[1]],[[1332.7993579464764],[235.3781604020879],[0],[\"plunge\"],[1],[1]],[[1340.511523946476],[243.27681225158727],[0],[\"plunge\"],[1],[1]],[[1348.2121399464784],[251.58036814958965],[0],[\"plunge\"],[1],[1]],[[1355.8734859464846],[260.25407313359676],[0],[\"plunge\"],[1],[1]],[[1363.58980994648],[269.4084560355913],[0],[\"plunge\"],[1],[1]],[[1371.2021839464728],[278.84675350608194],[0],[\"plunge\"],[1],[1]],[[1378.9309819464827],[288.8491898960947],[0],[\"plunge\"],[1],[1]],[[1386.6218959464813],[299.21828157959294],[0],[\"plunge\"],[1],[1]],[[1394.2670719464725],[309.9364625495799],[0],[\"plunge\"],[1],[1]],[[1401.9894019464843],[311.9943966745973],[0],[\"plunge\"],[1],[1]],[[1407.4703719464833],[311.9943966745973],[0],[\"plunge\"],[1],[1]],[[1412.6793410624841],[311.9943966745973],[0],[\"plunge\"],[1],[1]],[[1417.6372232544838],[311.9943966745973],[0],[\"plunge\"],[1],[1]],[[1422.2889534144801],[311.9943966745973],[0],[\"plunge\"],[1],[1]],[[1426.698589237481],[311.9943966745973],[0],[\"plunge\"],[1],[1]],[[1430.7916574474802],[311.9943966745973],[0],[\"plunge\"],[1],[1]],[[1434.618464431483],[311.9943966745973],[0],[\"plunge\"],[1],[1]],[[1438.1727808334813],[311.9943966745973],[0],[\"plunge\"],[1],[1]],[[1441.45319689748],[311.9943966745973],[0],[\"plunge\"],[1],[1]],[[1444.4489555584794],[311.9943966745973],[0],[\"plunge\"],[1],[1]],[[1447.1704737064836],[311.9943966745973],[0],[\"plunge\"],[1],[1]],[[1449.6127859494827],[311.9943966745973],[0],[\"plunge\"],[1],[1]],[[1451.7680491954816],[311.9943966745973],[0],[\"plunge\"],[1],[1]],[[1453.671988523483],[311.9943966745973],[0],[\"plunge\"],[1],[1]],[[1455.280568928482],[311.9943966745973],[0],[\"plunge\"],[1],[1]],[[1456.6172652124822],[311.9943966745973],[0],[\"plunge\"],[1],[1]],[[1457.6796158224824],[311.9943966745973],[0],[\"plunge\"],[1],[1]],[[1458.4597689034824],[311.9943966745973],[0],[\"plunge\"],[1],[1]],[[1458.9635234194827],[311.9943966745973],[0],[\"plunge\"],[1],[1]],[[1459.194178787483],[311.9943966745973],[0],[\"plunge\"],[1],[1]],[[1459.194178787483],[311.9943966745973],[0],[\"plunge\"],[0],[1]],[[1459.194178787483],[311.9943966745973],[0],[\"idle\"],[0],[1]],[[1459.194178787483],[311.9943966745973],[0],[\"idle\"],[0],[1]],[[1459.194178787483],[311.9943966745973],[0],[\"idle\"],[0],[1]],[[1459.194178787483],[311.9943966745973],[0],[\"idle\"],[0],[1]],[[1459.194178787483],[311.9943966745973],[0],[\"idle\"],[0],[1]],[[1459.194178787483],[311.9943966745973],[0],[\"idle\"],[0],[1]],[[1459.194178787483],[311.9943966745973],[0],[\"idle\"],[0],[1]],[[1459.194178787483],[311.9943966745973],[0],[\"idle\"],[0],[1]],[[1459.194178787483],[311.9943966745973],[0],[\"idle\"],[0],[1]],[[1459.194178787483],[311.9943966745973],[0],[\"idle\"],[0],[1]],[[1459.194178787483],[311.9943966745973],[0],[\"idle\"],[0],[1]],[[1459.194178787483],[311.9943966745973],[0],[\"idle\"],[0],[1]],[[1459.194178787483],[311.9943966745973],[0],[\"idle\"],[0],[1]],[[1459.194178787483],[311.9943966745973],[0],[\"idle\"],[0],[1]],[[1459.194178787483],[311.9943966745973],[0],[\"idle\"],[0],[1]],[[1459.194178787483],[311.9943966745973],[0],[\"idle\"],[0],[1]],[[1459.194178787483],[311.9943966745973],[0],[\"idle\"],[0],[1]],[[1459.194178787483],[311.9943966745973],[0],[\"idle\"],[0],[1]],[[1459.194178787483],[311.9943966745973],[0],[\"idle\"],[0],[1]],[[1459.194178787483],[311.9943966745973],[0],[\"idle\"],[0],[1]],[[1459.194178787483],[311.9943966745973],[0],[\"idle\"],[0],[1]],[[1459.194178787483],[311.9943966745973],[0],[\"idle\"],[0],[1]],[[1459.194178787483],[311.9943966745973],[0],[\"idle\"],[0],[1]],[[1459.194178787483],[311.9943966745973],[0],[\"idle\"],[0],[1]],[[1459.194178787483],[311.9943966745973],[0],[\"idle\"],[0],[1]],[[1459.194178787483],[311.9943966745973],[0],[\"idle\"],[0],[1]],[[1459.194178787483],[311.9943966745973],[0],[\"idle\"],[0],[1]],[[1459.194178787483],[311.9943966745973],[0],[\"idle\"],[0],[1]],[[1459.194178787483],[311.9943966745973],[0],[\"idle\"],[0],[1]],[[1459.194178787483],[311.9943966745973],[0],[\"idle\"],[0],[1]],[[1459.194178787483],[311.9943966745973],[0],[\"idle\"],[0],[1]],[[1459.194178787483],[311.9943966745973],[0],[\"idle\"],[0],[1]],[[1459.194178787483],[311.9943966745973],[0],[\"idle\"],[0],[1]],[[1459.194178787483],[311.9943966745973],[0],[\"idle\"],[0],[1]],[[1459.194178787483],[311.9943966745973],[0],[\"idle\"],[0],[1]],[[1459.194178787483],[311.9943966745973],[0],[\"idle\"],[0],[1]],[[1459.194178787483],[311.9943966745973],[0],[\"idle\"],[0],[1]],[[1459.194178787483],[311.9943966745973],[0],[\"idle\"],[0],[1]],[[1459.194178787483],[311.9943966745973],[0],[\"idle\"],[0],[1]],[[1459.194178787483],[311.9943966745973],[0],[\"idle\"],[0],[1]],[[1459.194178787483],[311.9943966745973],[0],[\"idle\"],[0],[1]],[[1459.194178787483],[311.9943966745973],[0],[\"idle\"],[0],[1]],[[1459.194178787483],[311.9943966745973],[0],[\"idle\"],[0],[1]],[[1459.194178787483],[311.9943966745973],[0],[\"idle\"],[0],[1]],[[1459.194178787483],[311.9943966745973],[0],[\"idle\"],[0],[1]],[[1459.194178787483],[311.9943966745973],[0],[\"idle\"],[0],[1]],[[1459.194178787483],[311.9943966745973],[0],[\"idle\"],[0],[1]],[[1459.194178787483],[311.9943966745973],[0],[\"idle\"],[0],[1]],[[1459.194178787483],[311.9943966745973],[0],[\"idle\"],[0],[1]],[[1459.194178787483],[311.9943966745973],[0],[\"idle\"],[0],[1]],[[1459.194178787483],[311.9943966745973],[0],[\"idle\"],[0],[1]],[[1459.194178787483],[311.9943966745973],[0],[\"idle\"],[0],[1]],[[1459.194178787483],[311.9943966745973],[0],[\"idle\"],[0],[1]],[[1459.194178787483],[311.9943966745973],[0],[\"idle\"],[0],[1]]]}"],[0]],[],[1,"Default",0,1]],[[40.00001907348633,-47,0,440,9,0,1.570796370506287,1,0,0,0,0,[]],51,137,[],[[0],[1],[1,100,""]],[0,0]],[[328,368,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,138,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[360,368,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,139,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[208,296,0,249,52,0,0,1,0,0,0,0,[]],46,140,[[1],[1],[""],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Those are bad guys",1,0,50,0,0,0,0,0,"",-1,0]],[[728,320,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,141,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[760,320,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,142,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[792,320,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,155,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[712,296,0,96,9,0,0,1,0,0,0,0,[]],51,156,[],[[0],[1],[1,100,""]],[0,0]],[[728,280,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,171,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[760,280,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,172,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[792,280,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,173,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[640,342,0,249,41.27047729492188,0,0,1,0,0,0,0,[]],46,174,[[0],[0],[""],["en-us"],[0],[0],[1],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","----->",1,0,50,0,0,0,0,0,"",-1,0]],[[-75.19999694824219,-79.59999847412109,0,4,8,0,0,1,1,0,0,0,[]],38,2664,[[0],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","rightarm",3,1,0,0,1,2]],[0,"Default",0,1]],[[-75.19999694824219,-71.59999847412109,0,4,8,0,0,1,1,0,0,0,[]],40,2665,[[1],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","righthand",3,1,0,0,1,2]],[0,"Default",0,1]],[[-79.19999694824219,-74.59999847412109,0,8,16,0,0,1,0.5,0.5,0,0,[]],32,2666,[[2],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","body",3,1,0,0,1,2]],[0,"Default",0,1]],[[-79.19999694824219,-58.59999847412109,0,4,8,0,0,1,0,0,0,0,[]],39,2667,[[4],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","rightfoot",3,1,0,0,1,2]],[0,"Default",0,1]],[[-79.19999694824219,-66.59999847412109,0,4,8,0,0,1,0,0,0,0,[]],41,2668,[[3],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","rightleg",3,1,0,0,1,2]],[0,"Default",0,1]],[[-83.19999694824219,-58.59999847412109,0,4,8,0,0,1,0,0,0,0,[]],35,2669,[[6],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","leftfoot",3,1,0,0,1,2]],[0,"Default",0,1]],[[-83.19999694824219,-66.59999847412109,0,4,8,0,0,1,0,0,0,0,[]],37,2670,[[5],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","leftleg",3,1,0,0,1,2]],[0,"Default",0,1]],[[-79.19999694824219,-82.59999847412109,0,32,32,0,0,1,0.5,1,0,0,[]],33,2671,[[7],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","head",3,1,0,0,1,2]],[0,"Default",0,1]],[[-83.19999694824219,-79.59999847412109,0,4,8,0,0,1,1,0,0,0,[]],34,2672,[[8],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","leftarm",3,1,0,0,1,2]],[0,"Default",0,1]],[[-83.19999694824219,-71.59999847412109,0,4,8,0,0,1,1,0,0,0,[]],36,2673,[[9],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","lefthand",3,1,0,0,1,2]],[0,"Default",0,1]],[[197,156,0,300,117,0,0,1,0,0,0,0,[[]]],61,5600,[],[[1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>","1",7,0,55,0,0,0,0,0,"",-1,0]],[[992,384,0,848,9,0,0,1,0,0,0,0,[]],51,216,[],[[0],[1],[1,100,""]],[0,0]],[[1736,288,0,97,199,0,0,1,0.5257731676101685,0.4974874258041382,0,0,[]],44,3005,[],[[0]],[0,"Default",0,1]],[[1120,214.669921875,0,231,117.1815795898438,0,0,1,0,0,0,0,[]],46,3006,[[1],[1],[""],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Try to do a smash while going right to dive",1,0,50,0,0,0,0,0,"",-1,0]],[[1072,344,0,46,9,0,1.570796370506287,1,0,0,0,0,[]],51,3007,[],[[0],[1],[1,100,""]],[0,0]],[[1152,368,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3009,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1184,368,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3010,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1216,368,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3011,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1248,368,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3012,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1280,368,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3013,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1312,368,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3046,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1344,368,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3050,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1376,368,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3110,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1408,368,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3111,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1432,344,0,46,9,0,1.570796370506287,1,0,0,0,0,[]],51,3112,[],[[0],[1],[1,100,""]],[0,0]],[[1120,368,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3113,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1088,368,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3114,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1072,352,0,45.73793029785156,9,0,3.141592741012573,1,0,0,0,0,[]],51,3115,[],[[0],[1],[1,100,""]],[0,0]],[[1424,344,0,46.490234375,9,0,0,1,0,0,0,0,[]],51,3116,[],[[0],[1],[1,100,""]],[0,0]],[[1229,172,0,64,64,0,0,1,0.5,0.5,0,0,[]],60,3257,[["level5"]],[[1],[400,-200,800,0,0,0],[0,0,0,1,1]],[0,"Default",0,1]]],[]],["UI",1,557340416707531,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[240,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3097,[["right"]],[[0,1,0,1,1]],[0,"Default",0,1]],[[80,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3098,[["left"]],[[0,1,0,1,1]],[0,"Default",1,1]],[[560,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3099,[["up"]],[[1,1,1,1,1]],[0,"Default",3,1]],[[400,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3100,[["down"]],[[1,1,1,1,1]],[0,"Default",2,1]]],[]],["End Card",2,632390358990500,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],78,2607,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[12.04449462890625,194,0,615.9109497070313,67,0,0,1,0,0,0,0,[]],79,2608,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Timer for this level",2.5,0,0,0,0,0,-10,0,"",-1,0]],[[17.546875,248,0,604.90625,105,0,0,1,0,0,0,0,[]],80,2610,[[0],[0],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","13:40:40",4,0,63,50,0,0,-10,0,"",-1,0]],[[115.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,2611,[[0],[1],[0],[0],["replay"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Replay",""],[""],[2,2,0,0,0],["",""]],[0,"Replay",0,1]],[[524.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3086,[[0],[1],[0],[0],["next"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Next",""],[""],[2,2,0,0,0],["",""]],[0,"Next",0,1]],[[320.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3087,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > Back","Level Menu"],[""],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[320.75,521.8050537109375,0,384,96,0,0,1,0.5,0.5,0,0,[]],70,3088,[[1],[1],[0],[0],[""],["{\"size\": 22, \"left\": 70, \"right\": 18, \"alignY\": 60}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > DownloadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"DownloadReplay",0,1]]],[]],["Pause",3,431828593408160,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-310,678,0,274,31,0,0,1,0,0,0,0,[]],168,3089,[],[],[".ovo",0,1,"file"]],[[320,320,0,425,250,0,0,1,0.5,0.5,0,0,[]],82,3090,[],[[6,1,"",300,1,1,"",300,"overlay",1,"PauseClose",1,1]],[0,"Default",0,1]],[[214,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3091,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"",""],["PauseClose"],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[426,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3092,[[0],[1],[0],[0],["quit"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > GiveUp",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[115.5,202,0,409,118,0,0,1,0,0,0,0,[]],83,3093,[[1],[1],["pause"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Pause",4,0,57,50,0,0,-10,0,"",-1,0]],[[320.5,88,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3094,[[1],[1],[0],[0],["loadreplay"],["{\"size\": 16, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > LoadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"LoadReplay",0,1]],[[320.5,157,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3095,[[1],[0],[0],[0],["toggledebug"],["{\"size\": 15, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Debug > Toggle",""],[""],[2,2,0,0,0],["",""]],[0,"ToggleDebug",0,1]],[[78,448,0,484,134,0,0,1,0,0,0,0,[]],193,3096,[],[],[0,"Default",0,1]]],[]],["Overlay",4,897047461427650,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[432,4,0,203.0009155273438,64,0,0,1,0,0,0,0,[]],107,5488,[],[[1,0,1,0,1]],[2,2,2,2,0,1,0,0,1]],[[432,4,0,203,64,0,0,1,0,0,0,0,[]],84,3101,[[0],[0],[""],["en-us"],[0],[1],[1],["{\"alignY\": 85, \"alignX\": 45, \"size\": 28}"],[0],[1],[0],[0],[0]],[["",""],[1,0,1,0,1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",2,0,100,50,0,0,-10,0,"",-1,0]],[[88,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3102,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Pause",""],[""],[0,0,0,0,1],["",""]],[0,"Pause",0,1]],[[158,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3103,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Replay","1"],[""],[0,0,0,0,1],["",""]],[0,"Reload",0,1]]],[]],["End Game",5,678290129773593,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],85,3104,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[73,194,0,494,72,0,0,1,0,0,0,0,[]],86,3105,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],["{alignY:50}"],[0],[1],[0],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Your final time",2.5,0,50,50,0,0,-10,0,"",-1,0]],[[320,403,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3106,[[0],[1],[0],[0],[""],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Quit",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[73,243,0,494,85,0,0,1,0,0,0,0,[]],87,3108,[[0],[1],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",3,0,50,50,0,0,-10,0,"",-1,0]],[[73,318,0,494,25,0,0,1,0,0,0,0,[]],86,5480,[[1],[1],["tryagainhardmode"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Try again in hard mode!",1,0,50,50,0,0,-2,0,"",-1,0]]],[]],["Banner",6,984551397979165,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-237,-189,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,3109,[],[["overlay"]],[0,"Default",0,1]]],[]],["AdPlaying",7,349435689059483,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,-203.5,0,250,97,0,0,1,0.5,0.5,0,0,[]],125,390,[],[[6,1,"",300,1,1,"",300,"overlay",1,"",1,1],[]],[0,"Default",0,1]],[[209,-275,0,222,139,0,0,1,0,0,0,0,[]],86,391,[[1],[1],["adplaying"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","An ad is playing right now...",1.2,0,50,50,0,0,-2,0,"",-1,0]],[[-154.5756988525391,-294.3137512207031,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,5508,[],[["overlay"]],[0,"Default",0,1]]],[]]],[],[]],["Level 6",3600,640,true,"Levels",110385768031900,[["Layer 0",0,464281797429263,true,[255,255,255],false,1,1,1,false,false,1,0,0,[[[24,512,0,307,9,0,0,1,0,0,0,0,[]],51,280,[],[[0],[1],[1,100,""]],[0,0]],[[-37,166,0,4,8,0,0,1,1,0,0,0,[]],38,281,[[0],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","rightarm",3,1,0,0,1,2]],[0,"Default",0,1]],[[-37,174,0,4,8,0,0,1,1,0,0,0,[]],40,282,[[1],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","righthand",3,1,0,0,1,2]],[0,"Default",0,1]],[[-41,171,0,8,16,0,0,1,0.5,0.5,0,0,[]],32,283,[[2],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","body",3,1,0,0,1,2]],[0,"Default",0,1]],[[-41,187,0,4,8,0,0,1,0,0,0,0,[]],39,284,[[4],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","rightfoot",3,1,0,0,1,2]],[0,"Default",0,1]],[[-41,179,0,4,8,0,0,1,0,0,0,0,[]],41,285,[[3],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","rightleg",3,1,0,0,1,2]],[0,"Default",0,1]],[[-45,187,0,4,8,0,0,1,0,0,0,0,[]],35,286,[[6],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","leftfoot",3,1,0,0,1,2]],[0,"Default",0,1]],[[-45,179,0,4,8,0,0,1,0,0,0,0,[]],37,287,[[5],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","leftleg",3,1,0,0,1,2]],[0,"Default",0,1]],[[-41,163,0,32,32,0,0,1,0.5,1,0,0,[]],33,288,[[7],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","head",3,1,0,0,1,2]],[0,"Default",0,1]],[[-45,166,0,4,8,0,0,1,1,0,0,0,[]],34,289,[[8],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","leftarm",3,1,0,0,1,2]],[0,"Default",0,1]],[[-45,174,0,4,8,0,0,1,1,0,0,0,[]],36,290,[[9],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","lefthand",3,1,0,0,1,2]],[0,"Default",0,1]],[[88,384,0,32,64,0,0,1,0.5,0.5,0,0,[]],42,291,[["run"],[0],[1],[1],[0],[0.8],[0.5],[0],[1],[0],[0],[0],[""],[2],[0],[0],[0],[""],[0],[3],[0],[0],[0],[0],[0],[0],[0]],[[330,1500,1500,650,1500,1000,0,0,0,1],[],[0,0],[0,10000,360,1]],[1,"Default",0,1]],[[160,408,0,293,64,0,0,1,0,0,0,0,[]],46,293,[[1],[1],[""],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Now dive again",1,0,50,0,0,0,0,0,"",-1,0]],[[992,512,0,352,9,0,0,1,0,0,0,0,[]],51,294,[],[[0],[1],[1,100,""]],[0,0]],[[596,512,0,135,9,0,0,1,0,0,0,0,[]],51,295,[],[[0],[1],[1,100,""]],[0,0]],[[-133,29,0,60.93439102172852,60.93439102172852,0,0,1,0.5,0.5,0,0,[]],53,1413,[["Impossible"],["{\"c2array\":true,\"size\":[253,6,1],\"data\":[[[241.74607820350303],[479.9430528635005],[0],[\"idle\"],[0],[1]],[[241.74607820350303],[479.9430528635005],[0],[\"idle\"],[0],[1]],[[241.74607820350303],[479.9430528635005],[0],[\"idle\"],[0],[1]],[[241.74607820350303],[479.9430528635005],[0],[\"idle\"],[0],[1]],[[241.74607820350303],[479.9430528635005],[0],[\"idle\"],[0],[1]],[[241.74607820350303],[479.9430528635005],[0],[\"idle\"],[0],[1]],[[241.74607820350303],[479.9430528635005],[0],[\"idle\"],[0],[1]],[[241.74607820350303],[479.9430528635005],[0],[\"idle\"],[0],[1]],[[241.74607820350303],[479.9430528635005],[0],[\"idle\"],[0],[1]],[[241.74607820350303],[479.9430528635005],[0],[\"idle\"],[0],[1]],[[241.74607820350303],[479.9430528635005],[0],[\"idle\"],[0],[1]],[[241.74607820350303],[479.9430528635005],[0],[\"idle\"],[0],[1]],[[241.74607820350303],[479.9430528635005],[0],[\"idle\"],[0],[1]],[[241.74607820350303],[479.9430528635005],[0],[\"idle\"],[0],[1]],[[241.74607820350303],[479.9430528635005],[0],[\"idle\"],[0],[1]],[[241.74607820350303],[479.9430528635005],[0],[\"idle\"],[0],[1]],[[241.74607820350303],[479.9430528635005],[0],[\"idle\"],[0],[1]],[[241.74607820350303],[479.9430528635005],[0],[\"idle\"],[0],[1]],[[241.74607820350303],[479.9430528635005],[0],[\"idle\"],[0],[1]],[[241.74607820350303],[479.9430528635005],[0],[\"idle\"],[0],[1]],[[241.74607820350303],[479.9430528635005],[0],[\"idle\"],[0],[1]],[[241.74607820350303],[479.9430528635005],[0],[\"idle\"],[0],[1]],[[241.74607820350303],[479.9430528635005],[0],[\"idle\"],[0],[1]],[[241.74607820350303],[479.9430528635005],[0],[\"idle\"],[0],[1]],[[241.74607820350303],[479.9430528635005],[0],[\"idle\"],[0],[1]],[[241.74607820350303],[479.9430528635005],[0],[\"idle\"],[0],[1]],[[241.74607820350303],[479.9430528635005],[0],[\"idle\"],[0],[1]],[[242.16381221950348],[479.9430528635005],[0],[\"run\"],[0],[1]],[[242.99575405300396],[479.9430528635005],[0],[\"run\"],[0],[1]],[[244.24347989800322],[479.9430528635005],[0],[\"run\"],[0],[1]],[[245.9021706820042],[479.9430528635005],[0],[\"run\"],[0],[1]],[[247.98014080450506],[479.9430528635005],[0],[\"run\"],[0],[1]],[[250.4702000545054],[479.9430528635005],[0],[\"run\"],[0],[1]],[[253.38183493450353],[479.9430528635005],[0],[\"run\"],[0],[1]],[[256.70530885450347],[479.9430528635005],[0],[\"run\"],[0],[1]],[[260.4453654520045],[479.9430528635005],[0],[\"run\"],[0],[1]],[[264.60677398900395],[479.9430528635005],[0],[\"run\"],[0],[1]],[[269.1803208100034],[479.9430528635005],[0],[\"run\"],[0],[1]],[[274.15384835800313],[479.9430528635005],[0],[\"run\"],[0],[1]],[[279.54920149600446],[479.9430528635005],[0],[\"run\"],[0],[1]],[[285.0489814960036],[479.9430528635005],[0],[\"run\"],[0],[1]],[[296.0234614960064],[479.9430528635005],[0],[\"run\"],[0],[1]],[[301.51433149600496],[479.9430528635005],[0],[\"run\"],[0],[1]],[[307.0124614960074],[479.9430528635005],[0],[\"run\"],[0],[1]],[[312.5138914960033],[479.9430528635005],[0],[\"run\"],[0],[1]],[[317.98925149600467],[469.15825286349775],[0],[\"jump\"],[0],[1]],[[323.4801214960032],[458.7581873450004],[0],[\"jump\"],[0],[1]],[[328.9680214960048],[448.7785825499976],[0],[\"jump\"],[0],[1]],[[334.4912314960075],[439.1549581829931],[0],[\"jump\"],[0],[1]],[[339.9517414960047],[430.05128691949784],[0],[\"jump\"],[0],[1]],[[345.4406314960052],[421.315286026497],[0],[\"plunge\"],[1],[1]],[[349.3034134960039],[412.95197839049973],[0],[\"plunge\"],[1],[1]],[[356.9920174960072],[405.0441160404964],[0],[\"plunge\"],[1],[1]],[[364.6547494960052],[397.5755065844983],[0],[\"plunge\"],[1],[1]],[[372.3687634960053],[390.4750989859983],[0],[\"plunge\"],[1],[1]],[[380.0444314960059],[383.8240246729977],[0],[\"plunge\"],[1],[1]],[[387.7330354960092],[377.57717537999525],[0],[\"plunge\"],[1],[1]],[[395.3851414960067],[371.77147949399716],[0],[\"plunge\"],[1],[1]],[[403.1014654960089],[366.3354962559958],[0],[\"plunge\"],[1],[1]],[[410.7738994960039],[361.34412124649896],[0],[\"plunge\"],[1],[1]],[[418.45834549600465],[356.7599167494984],[0],[\"plunge\"],[1],[1]],[[426.1538794960077],[352.58528110999686],[0],[\"plunge\"],[1],[1]],[[433.85264749600964],[348.8254244499961],[0],[\"plunge\"],[1],[1]],[[441.51999949600525],[345.494051283998],[0],[\"plunge\"],[1],[1]],[[449.22846949600415],[342.5623966739983],[0],[\"plunge\"],[1],[1]],[[456.8981314960086],[340.058891169497],[0],[\"plunge\"],[1],[1]],[[464.5835014960062],[337.96534314949764],[0],[\"plunge\"],[1],[1]],[[472.28226949600815],[336.28467876549735],[0],[\"plunge\"],[1],[1]],[[480.0406354960038],[335.01401123099794],[0],[\"plunge\"],[1],[1]],[[487.65439549600865],[334.17441291099755],[0],[\"plunge\"],[1],[1]],[[495.3494674960099],[333.7419815109977],[0],[\"plunge\"],[1],[1]],[[503.0828854960038],[333.7276864049976],[0],[\"plunge\"],[1],[1]],[[510.71420149600885],[334.122846518998],[0],[\"plunge\"],[1],[1]],[[518.3880214960092],[334.9340456989982],[0],[\"plunge\"],[1],[1]],[[526.1071174960085],[336.16876689899823],[0],[\"plunge\"],[1],[1]],[[533.7721594960087],[337.8077337204984],[0],[\"plunge\"],[1],[1]],[[541.4695414960054],[339.86999897849745],[0],[\"plunge\"],[1],[1]],[[549.1539874960062],[342.34378348599773],[0],[\"plunge\"],[1],[1]],[[556.8416674960059],[345.23394348599766],[0],[\"plunge\"],[1],[1]],[[564.5201074960038],[348.5349663359966],[0],[\"plunge\"],[1],[1]],[[572.248443496005],[352.2771788519972],[0],[\"plunge\"],[1],[1]],[[579.8945434960063],[356.3904248269979],[0],[\"plunge\"],[1],[1]],[[587.6141014960075],[360.96197380899866],[0],[\"plunge\"],[1],[1]],[[595.3073254960084],[365.93386136099934],[0],[\"plunge\"],[1],[1]],[[602.9788354960065],[371.3053048784981],[0],[\"plunge\"],[1],[1]],[[610.6692874960034],[377.10564519349566],[0],[\"plunge\"],[1],[1]],[[618.366207496005],[383.3271972434969],[0],[\"plunge\"],[1],[1]],[[626.0460334960081],[389.9494181144998],[0],[\"plunge\"],[1],[1]],[[633.7364854960051],[396.99643563049693],[0],[\"plunge\"],[1],[1]],[[641.3909014960047],[404.4221800944966],[0],[\"plunge\"],[1],[1]],[[649.0998334960054],[412.3184458164973],[0],[\"plunge\"],[1],[1]],[[656.7759634960079],[420.595199759],[0],[\"plunge\"],[1],[1]],[[664.4950594960072],[429.3370175009994],[0],[\"plunge\"],[1],[1]],[[672.1513234960073],[438.4196252549996],[0],[\"plunge\"],[1],[1]],[[679.8588694960094],[447.9805524570024],[0],[\"plunge\"],[1],[1]],[[687.5220634960092],[457.8991554885023],[0],[\"plunge\"],[1],[1]],[[695.2268374960074],[468.28875971849993],[0],[\"plunge\"],[1],[1]],[[702.8978854960037],[479.04642490249466],[0],[\"plunge\"],[1],[1]],[[710.5911094960046],[479.98392490249466],[0],[\"plunge\"],[1],[1]],[[716.0935294960043],[472.3972549024951],[0],[\"jump\"],[0],[1]],[[727.0713094960054],[465.24422493599445],[0],[\"jump\"],[0],[1]],[[738.0504094960115],[458.50541970599096],[0],[\"jump\"],[0],[1]],[[749.0592094960069],[452.1657186659937],[0],[\"jump\"],[0],[1]],[[760.0475494960101],[446.2535838454922],[0],[\"jump\"],[0],[1]],[[770.9962894960053],[440.7755476764946],[0],[\"jump\"],[0],[1]],[[781.9529494960117],[435.70693865699195],[0],[\"jump\"],[0],[1]],[[792.9762694960052],[431.02592757399475],[0],[\"jump\"],[0],[1]],[[803.9388694960056],[426.7845391589947],[0],[\"jump\"],[0],[1]],[[814.9318294960074],[422.94753807899417],[0],[\"jump\"],[0],[1]],[[825.9016894960068],[419.5329863229944],[0],[\"jump\"],[0],[1]],[[836.8814494960059],[416.53048777099474],[0],[\"jump\"],[0],[1]],[[847.8810094960041],[413.93920809299516],[0],[\"jump\"],[0],[1]],[[858.8541694960066],[411.76878354899475],[0],[\"jump\"],[0],[1]],[[869.8253494960112],[410.0132368304943],[0],[\"jump\"],[0],[1]],[[880.8321694960085],[408.6691706924948],[0],[\"jump\"],[0],[1]],[[891.798069496012],[407.7441887199948],[0],[\"jump\"],[0],[1]],[[902.7837694960051],[407.23312063999515],[0],[\"jump\"],[0],[1]],[[913.7879494960116],[407.1381762414954],[0],[\"jump\"],[0],[1]],[[924.7479094960114],[407.45725222849563],[0],[\"fall\"],[0],[1]],[[935.7250294960099],[408.19176292849573],[0],[\"fall\"],[0],[1]],[[946.7061094960045],[409.3417731694952],[0],[\"fall\"],[0],[1]],[[957.6805894960121],[410.90582779149656],[0],[\"fall\"],[0],[1]],[[968.6788294960053],[412.8898019714954],[0],[\"fall\"],[0],[1]],[[979.6506694960027],[415.2835499154948],[0],[\"fall\"],[0],[1]],[[990.6561694960046],[418.1017249654953],[0],[\"fall\"],[0],[1]],[[1001.6095294960079],[421.3196893654964],[0],[\"fall\"],[0],[1]],[[1012.5985294960041],[424.96395811549513],[0],[\"fall\"],[0],[1]],[[1023.5809294960037],[429.021372515495],[0],[\"fall\"],[0],[1]],[[1034.576529496006],[433.499997015496],[0],[\"fall\"],[0],[1]],[[1045.5602494960108],[438.3892169114983],[0],[\"fall\"],[0],[1]],[[1056.5479294960114],[443.6959333914989],[0],[\"fall\"],[0],[1]],[[1067.5144894960079],[449.40658673549717],[0],[\"fall\"],[0],[1]],[[1078.5160294960042],[455.5522386729951],[0],[\"fall\"],[0],[1]],[[1089.468729496005],[462.0836987729956],[0],[\"fall\"],[0],[1]],[[1100.4597094960086],[469.05397012649814],[0],[\"fall\"],[0],[1]],[[1111.4421094960082],[476.43413460649805],[0],[\"fall\"],[0],[1]],[[1122.4251694960103],[479.98012692749984],[0],[\"run\"],[0],[1]],[[1133.3904094960112],[479.98012692749984],[0],[\"run\"],[0],[1]],[[1138.908339496008],[479.98012692749984],[0],[\"run\"],[0],[1]],[[1143.9685159120088],[479.98012692749984],[0],[\"run\"],[0],[1]],[[1148.641926014508],[479.98012692749984],[0],[\"run\"],[0],[1]],[[1152.8733510265076],[479.98012692749984],[0],[\"run\"],[0],[1]],[[1156.7146567090088],[479.98012692749984],[0],[\"run\"],[0],[1]],[[1160.1287269900097],[479.98012692749984],[0],[\"run\"],[0],[1]],[[1163.1276069910098],[479.98012692749984],[0],[\"run\"],[0],[1]],[[1165.7126754190085],[479.98012692749984],[0],[\"run\"],[0],[1]],[[1167.8827312090077],[479.98012692749984],[0],[\"run\"],[0],[1]],[[1169.6344167730085],[479.98012692749984],[0],[\"run\"],[0],[1]],[[1170.9764930530084],[479.98012692749984],[0],[\"run\"],[0],[1]],[[1171.8992448235083],[479.98012692749984],[0],[\"run\"],[0],[1]],[[1172.406275222508],[479.98012692749984],[0],[\"run\"],[0],[1]],[[1172.4984141625077],[479.98012692749984],[0],[\"run\"],[0],[1]],[[1172.4984141625077],[479.98012692749984],[0],[\"idle\"],[0],[1]],[[1172.4984141625077],[479.98012692749984],[0],[\"idle\"],[0],[1]],[[1172.4984141625077],[479.98012692749984],[0],[\"idle\"],[0],[1]],[[1172.4984141625077],[479.98012692749984],[0],[\"idle\"],[0],[1]],[[1172.4984141625077],[479.98012692749984],[0],[\"idle\"],[0],[1]],[[1172.915547626508],[479.98012692749984],[0],[\"run\"],[0],[1]],[[1173.7487642605079],[479.98012692749984],[0],[\"run\"],[0],[1]],[[1174.9897262230077],[479.98012692749984],[0],[\"run\"],[0],[1]],[[1176.655258573008],[479.98012692749984],[0],[\"run\"],[0],[1]],[[1178.7350266690084],[479.98012692749984],[0],[\"run\"],[0],[1]],[[1181.220443629007],[479.98012692749984],[0],[\"run\"],[0],[1]],[[1184.1309796930075],[479.98012692749984],[0],[\"run\"],[0],[1]],[[1187.459896531007],[479.98012692749984],[0],[\"run\"],[0],[1]],[[1191.187972183008],[479.98012692749984],[0],[\"run\"],[0],[1]],[[1195.341540821509],[479.98012692749984],[0],[\"run\"],[0],[1]],[[1199.9320671055057],[479.98012692749984],[0],[\"run\"],[0],[1]],[[1204.891270895507],[479.98012692749984],[0],[\"run\"],[0],[1]],[[1210.2847780795055],[462.5249269275039],[0],[\"jump\"],[0],[1]],[[1215.801388079507],[445.3912640609997],[0],[\"jump\"],[0],[1]],[[1221.2787280795064],[428.7928076160016],[0],[\"jump\"],[0],[1]],[[1226.7801580795071],[412.53823252499967],[0],[\"jump\"],[0],[1]],[[1232.2558480795099],[396.77270054549234],[0],[\"jump\"],[0],[1]],[[1237.7579380795082],[381.34814143949694],[0],[\"jump\"],[0],[1]],[[1243.2412180795063],[366.39045147150193],[0],[\"jump\"],[0],[1]],[[1248.7446280795098],[351.795032918993],[0],[\"jump\"],[0],[1]],[[1254.2358280795095],[337.6473305189938],[0],[\"jump\"],[0],[1]],[[1259.7184480795052],[323.9357713980046],[0],[\"jump\"],[0],[1]],[[1265.207668079507],[310.6227411810003],[0],[\"jump\"],[0],[1]],[[1270.706458079507],[297.7029841530001],[0],[\"jump\"],[0],[1]],[[1276.183468079505],[285.24759123450434],[0],[\"jump\"],[0],[1]],[[1281.7020580795092],[273.11712838649544],[0],[\"jump\"],[0],[1]],[[1287.172468079506],[261.50476582800235],[0],[\"jump\"],[0],[1]],[[1292.656738079508],[250.27726856999845],[0],[\"jump\"],[0],[1]],[[1298.1472780795052],[239.45216982000383],[0],[\"jump\"],[0],[1]],[[1303.649698079505],[229.0206819840044],[0],[\"jump\"],[0],[1]],[[1309.142218079505],[219.02349667200423],[0],[\"jump\"],[0],[1]],[[1314.6261580795058],[209.45616509400298],[0],[\"jump\"],[0],[1]],[[1320.125938079505],[200.27783224200437],[0],[\"jump\"],[0],[1]],[[1325.6187880795064],[191.5266485895023],[0],[\"jump\"],[0],[1]],[[1331.0981080795086],[183.2105600954992],[0],[\"jump\"],[0],[1]],[[1336.6054780795082],[175.26968356050014],[0],[\"jump\"],[0],[1]],[[1342.101628079508],[167.76106827300083],[0],[\"jump\"],[0],[1]],[[1347.570388079508],[160.70181885900095],[0],[\"jump\"],[0],[1]],[[1353.0757780795093],[154.0127700089994],[0],[\"jump\"],[0],[1]],[[1358.581168079506],[147.74120489250322],[0],[\"jump\"],[0],[1]],[[1364.0433280795094],[141.92983907249982],[0],[\"jump\"],[0],[1]],[[1369.5473980795057],[136.49116743150338],[0],[\"jump\"],[0],[1]],[[1375.0432180795087],[131.47668133950077],[0],[\"jump\"],[0],[1]],[[1380.5377180795067],[126.8792333895025],[0],[\"jump\"],[0],[1]],[[1386.005818079509],[122.71572262950104],[0],[\"jump\"],[0],[1]],[[1391.5092280795077],[118.94250968700214],[0],[\"jump\"],[0],[1]],[[1396.9928380795072],[115.59705892800264],[0],[\"jump\"],[0],[1]],[[1402.497238079505],[112.65625816800386],[0],[\"jump\"],[0],[1]],[[1407.9778780795075],[110.1418900080029],[0],[\"jump\"],[0],[1]],[[1413.4822780795052],[108.03395500800379],[0],[\"jump\"],[0],[1]],[[1418.954668079505],[106.35077221650388],[0],[\"jump\"],[0],[1]],[[1424.454448079509],[105.07579821750323],[0],[\"jump\"],[0],[1]],[[1429.9496080795095],[104.21782889550346],[0],[\"jump\"],[0],[1]],[[1435.4285980795057],[103.7758736385038],[0],[\"jump\"],[0],[1]],[[1440.9455380795084],[103.75009448250401],[0],[\"jump\"],[0],[1]],[[1446.0059947420061],[104.13711375000383],[0],[\"fall\"],[0],[1]],[[1450.6701954430075],[104.9414102910042],[0],[\"fall\"],[0],[1]],[[1454.9275879390063],[106.16532489900382],[0],[\"fall\"],[0],[1]],[[1458.7590418990067],[107.80203972300396],[0],[\"fall\"],[0],[1]],[[1462.156546400508],[109.83952974750487],[0],[\"fall\"],[0],[1]],[[1465.1671305505076],[112.31419419750455],[0],[\"fall\"],[0],[1]],[[1467.7469995855072],[115.18837025250384],[0],[\"fall\"],[0],[1]],[[1469.9161283935086],[118.4821549005066],[0],[\"fall\"],[0],[1]],[[1471.6720123870077],[122.19608198100472],[0],[\"fall\"],[0],[1]],[[1473.0117463120084],[126.3251737560072],[0],[\"fall\"],[0],[1]],[[1473.9347603050082],[130.86146018100726],[0],[\"fall\"],[0],[1]],[[1474.4434048330081],[135.8131014450063],[0],[\"fall\"],[0],[1]],[[1474.536545797008],[141.19666917300617],[0],[\"fall\"],[0],[1]],[[1474.536545797008],[146.97900211050634],[0],[\"fall\"],[0],[1]],[[1474.536545797008],[153.17751174750683],[0],[\"fall\"],[0],[1]],[[1474.536545797008],[159.81151980750698],[0],[\"fall\"],[0],[1]],[[1474.536545797008],[166.83724143900682],[0],[\"fall\"],[0],[1]],[[1474.536545797008],[174.28113014400736],[0],[\"fall\"],[0],[1]],[[1474.536545797008],[182.14975555050998],[0],[\"fall\"],[0],[1]],[[1474.536545797008],[190.4472298335098],[0],[\"fall\"],[0],[1]],[[1474.536545797008],[191.9858189145052],[0],[\"idle\"],[0],[1]],[[1474.536545797008],[191.9858189145052],[0],[\"idle\"],[0],[1]],[[1474.536545797008],[191.9858189145052],[0],[\"idle\"],[0],[1]],[[1474.536545797008],[191.9858189145052],[0],[\"idle\"],[0],[1]],[[1474.536545797008],[191.9858189145052],[0],[\"idle\"],[0],[1]],[[1474.536545797008],[191.9858189145052],[0],[\"idle\"],[0],[1]],[[1474.536545797008],[191.9858189145052],[0],[\"idle\"],[0],[1]],[[1474.536545797008],[191.9858189145052],[0],[\"idle\"],[0],[1]],[[1474.536545797008],[191.9858189145052],[0],[\"idle\"],[0],[1]],[[1474.536545797008],[191.9858189145052],[0],[\"idle\"],[0],[1]],[[1474.536545797008],[191.9858189145052],[0],[\"idle\"],[0],[1]],[[1474.536545797008],[191.9858189145052],[0],[\"idle\"],[0],[1]],[[1474.536545797008],[191.9858189145052],[0],[\"idle\"],[0],[1]],[[1474.536545797008],[191.9858189145052],[0],[\"idle\"],[0],[1]],[[1474.536545797008],[191.9858189145052],[0],[\"idle\"],[0],[1]],[[1474.536545797008],[191.9858189145052],[0],[\"idle\"],[0],[1]],[[1474.536545797008],[191.9858189145052],[0],[\"idle\"],[0],[1]],[[1474.536545797008],[191.9858189145052],[0],[\"idle\"],[0],[1]],[[1474.536545797008],[191.9858189145052],[0],[\"idle\"],[0],[1]],[[1474.536545797008],[191.9858189145052],[0],[\"idle\"],[0],[1]],[[1474.536545797008],[191.9858189145052],[0],[\"idle\"],[0],[1]]]}"],[0]],[],[1,"Default",0,1]],[[592,528,0,152,64,0,0,1,0,0,0,0,[]],46,178,[[1],[1],[""],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","And Jump!",1,0,50,0,0,0,0,0,"",-1,0]],[[-42,226,0,300,117,0,0,1,0,0,0,0,[[]]],61,5602,[],[[1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>","1",7,0,55,0,0,0,0,0,"",-1,0]],[[1432,224,0,215,9,0,0,1,0,0,0,0,[]],51,3117,[],[[0],[1],[1,100,""]],[0,0]],[[1224,496,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,3118,[[0.7],[0]],[[0]],[0,"Default",0,1]],[[1096,440,0,249,52,0,0,1,0,0,0,0,[]],46,3119,[[1],[0],["lvltxt6-3"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Those are Good guys",1,0,50,0,0,0,0,0,"",-1,0]],[[1640,544,0,307,9,0,0,1,0,0,0,0,[]],51,248,[],[[0],[1],[1,100,""]],[0,0]],[[2440,336,0,232,9,0,0,1,0,0,0,0,[]],51,3008,[],[[0],[1],[1,100,""]],[0,0]],[[1928,528,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,3120,[[0.7],[0]],[[0]],[0,"Default",0,1]],[[1864,288,0,202,9,0,1.570796370506287,1,0,0,0,0,[]],51,3121,[],[[0],[1],[1,100,""]],[0,0]],[[1648,227,0,320,9,0,1.570796370506287,1,0,0,0,0,[]],51,3122,[],[[0],[1],[1,100,""]],[0,0]],[[1912,288,0,64,64,0,0,1,0.5,0.5,0,0,[]],60,3123,[["level6"]],[[1],[400,-200,800,0,0,0],[0,0,0,1,1]],[0,"Default",0,1]],[[2664,552,0,307,9,0,0,1,0,0,0,0,[]],51,292,[],[[0],[1],[1,100,""]],[0,0]],[[3560,248,0,97,199,0,0,1,0.5257731676101685,0.4974874258041382,0,0,[]],44,3125,[],[[0]],[0,"Default",0,1]],[[3291.480224609375,344,0,291.519775390625,9,0,0,1,0,0,0,0,[]],51,3126,[],[[0],[1],[1,100,""]],[0,0]],[[2952,536,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,3127,[[0.7],[0]],[[0]],[0,"Default",0,1]],[[2888,48,0,453.0845642089844,9,0,1.570796370506287,1,0,0,0,0,[]],51,3128,[],[[0],[1],[1,100,""]],[0,0]],[[3136,160,0,172,9,0,1.570796370506287,1,0,0,0,0,[]],51,3129,[],[[0],[1],[1,100,""]],[0,0]],[[2672,344,0,216,9,0,1.570796370506287,1,0,0,0,0,[]],51,3130,[],[[0],[1],[1,100,""]],[0,0]],[[2880.3828125,-0.843902587890625,0,671.5006103515625,9,0,0,1,0,0,0,0,[]],51,2445,[],[[0],[1],[1,100,""]],[0,0]],[[340,501,0,20,9,0,1.570796370506287,1,0,0,0,0,[]],51,10058,[],[[0],[1],[1,100,""]],[0,0]],[[992,501,0,20,9,0,1.570796370506287,1,0,0,0,0,[]],51,10069,[],[[0],[1],[1,100,""]],[0,0]]],[]],["UI",1,148719711589301,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[240,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3097,[["right"]],[[0,1,0,1,1]],[0,"Default",0,1]],[[80,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3098,[["left"]],[[0,1,0,1,1]],[0,"Default",1,1]],[[560,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3099,[["up"]],[[1,1,1,1,1]],[0,"Default",3,1]],[[400,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3100,[["down"]],[[1,1,1,1,1]],[0,"Default",2,1]]],[]],["End Card",2,129302139324865,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],78,2607,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[12.04449462890625,194,0,615.9109497070313,67,0,0,1,0,0,0,0,[]],79,2608,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Timer for this level",2.5,0,0,0,0,0,-10,0,"",-1,0]],[[17.546875,248,0,604.90625,105,0,0,1,0,0,0,0,[]],80,2610,[[0],[0],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","13:40:40",4,0,63,50,0,0,-10,0,"",-1,0]],[[115.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,2611,[[0],[1],[0],[0],["replay"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Replay",""],[""],[2,2,0,0,0],["",""]],[0,"Replay",0,1]],[[524.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3086,[[0],[1],[0],[0],["next"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Next",""],[""],[2,2,0,0,0],["",""]],[0,"Next",0,1]],[[320.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3087,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > Back","Level Menu"],[""],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[320.75,521.8050537109375,0,384,96,0,0,1,0.5,0.5,0,0,[]],70,3088,[[1],[1],[0],[0],[""],["{\"size\": 22, \"left\": 70, \"right\": 18, \"alignY\": 60}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > DownloadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"DownloadReplay",0,1]]],[]],["Pause",3,778292008094265,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-310,678,0,274,31,0,0,1,0,0,0,0,[]],168,3089,[],[],[".ovo",0,1,"file"]],[[320,320,0,425,250,0,0,1,0.5,0.5,0,0,[]],82,3090,[],[[6,1,"",300,1,1,"",300,"overlay",1,"PauseClose",1,1]],[0,"Default",0,1]],[[214,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3091,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"",""],["PauseClose"],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[426,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3092,[[0],[1],[0],[0],["quit"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > GiveUp",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[115.5,202,0,409,118,0,0,1,0,0,0,0,[]],83,3093,[[1],[1],["pause"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Pause",4,0,57,50,0,0,-10,0,"",-1,0]],[[320.5,88,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3094,[[1],[1],[0],[0],["loadreplay"],["{\"size\": 16, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > LoadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"LoadReplay",0,1]],[[320.5,157,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3095,[[1],[0],[0],[0],["toggledebug"],["{\"size\": 15, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Debug > Toggle",""],[""],[2,2,0,0,0],["",""]],[0,"ToggleDebug",0,1]],[[78,448,0,484,134,0,0,1,0,0,0,0,[]],193,3096,[],[],[0,"Default",0,1]]],[]],["Overlay",4,173593751727407,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[432,4,0,203.0009155273438,64,0,0,1,0,0,0,0,[]],107,5488,[],[[1,0,1,0,1]],[2,2,2,2,0,1,0,0,1]],[[432,4,0,203,64,0,0,1,0,0,0,0,[]],84,3101,[[0],[0],[""],["en-us"],[0],[1],[1],["{\"alignY\": 85, \"alignX\": 45, \"size\": 28}"],[0],[1],[0],[0],[0]],[["",""],[1,0,1,0,1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",2,0,100,50,0,0,-10,0,"",-1,0]],[[88,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3102,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Pause",""],[""],[0,0,0,0,1],["",""]],[0,"Pause",0,1]],[[158,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3103,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Replay","1"],[""],[0,0,0,0,1],["",""]],[0,"Reload",0,1]]],[]],["End Game",5,796778414036311,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],85,3104,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[73,194,0,494,72,0,0,1,0,0,0,0,[]],86,3105,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],["{alignY:50}"],[0],[1],[0],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Your final time",2.5,0,50,50,0,0,-10,0,"",-1,0]],[[320,403,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3106,[[0],[1],[0],[0],[""],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Quit",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[73,243,0,494,85,0,0,1,0,0,0,0,[]],87,3108,[[0],[1],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",3,0,50,50,0,0,-10,0,"",-1,0]],[[73,318,0,494,25,0,0,1,0,0,0,0,[]],86,5480,[[1],[1],["tryagainhardmode"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Try again in hard mode!",1,0,50,50,0,0,-2,0,"",-1,0]]],[]],["Banner",6,455109579727925,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-237,-189,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,3109,[],[["overlay"]],[0,"Default",0,1]]],[]],["AdPlaying",7,365038848570753,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,-203.5,0,250,97,0,0,1,0.5,0.5,0,0,[]],125,390,[],[[6,1,"",300,1,1,"",300,"overlay",1,"",1,1],[]],[0,"Default",0,1]],[[209,-275,0,222,139,0,0,1,0,0,0,0,[]],86,391,[[1],[1],["adplaying"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","An ad is playing right now...",1.2,0,50,50,0,0,-2,0,"",-1,0]],[[-154.5756988525391,-294.3137512207031,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,5508,[],[["overlay"]],[0,"Default",0,1]]],[]]],[],[]],["Level 7",1050,640,true,"Levels",448184370710049,[["Layer 0",0,648243568419140,true,[255,255,255],false,1,1,1,false,false,1,0,0,[[[500,451,0,71,8,0,0,1,0,0,0,0,[]],45,157,[],[[0],[1]],[0,0]],[[32,612,0,469,9,0,0,1,0,0,0,0,[]],51,328,[],[[0],[1],[1,100,""]],[0,0]],[[-37,249,0,4,8,0,0,1,1,0,0,0,[]],38,329,[[0],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","rightarm",3,1,0,0,1,2]],[0,"Default",0,1]],[[-37,257,0,4,8,0,0,1,1,0,0,0,[]],40,330,[[1],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","righthand",3,1,0,0,1,2]],[0,"Default",0,1]],[[-41,254,0,8,16,0,0,1,0.5,0.5,0,0,[]],32,331,[[2],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","body",3,1,0,0,1,2]],[0,"Default",0,1]],[[-41,270,0,4,8,0,0,1,0,0,0,0,[]],39,332,[[4],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","rightfoot",3,1,0,0,1,2]],[0,"Default",0,1]],[[-41,262,0,4,8,0,0,1,0,0,0,0,[]],41,333,[[3],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","rightleg",3,1,0,0,1,2]],[0,"Default",0,1]],[[-45,270,0,4,8,0,0,1,0,0,0,0,[]],35,334,[[6],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","leftfoot",3,1,0,0,1,2]],[0,"Default",0,1]],[[-45,262,0,4,8,0,0,1,0,0,0,0,[]],37,335,[[5],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","leftleg",3,1,0,0,1,2]],[0,"Default",0,1]],[[-41,246,0,32,32,0,0,1,0.5,1,0,0,[]],33,336,[[7],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","head",3,1,0,0,1,2]],[0,"Default",0,1]],[[-45,249,0,4,8,0,0,1,1,0,0,0,[]],34,337,[[8],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","leftarm",3,1,0,0,1,2]],[0,"Default",0,1]],[[-45,257,0,4,8,0,0,1,1,0,0,0,[]],36,338,[[9],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","lefthand",3,1,0,0,1,2]],[0,"Default",0,1]],[[96,484,0,32,64,0,0,1,0.5,0.5,0,0,[]],42,339,[["run"],[0],[1],[1],[0],[0.8],[0.5],[0],[1],[0],[0],[0],[""],[2],[0],[0],[0],[""],[0],[3],[0],[0],[0],[0],[0],[0],[0]],[[330,1500,1500,650,1500,1000,0,0,0,1],[],[0,0],[0,10000,360,1]],[1,"Default",0,1]],[[969,447,0,97,199,0,0,1,0.5257731676101685,0.4974874258041382,0,0,[]],44,340,[],[[0]],[0,"Default",0,1]],[[492,542,0,502,9,0,0,1,0,0,0,0,[]],51,341,[],[[0],[1],[1,100,""]],[0,0]],[[378.0000305175781,-17,0,539,9,0,1.570796370506287,1,0,0,0,0,[]],51,343,[],[[0],[1],[1,100,""]],[0,0]],[[501,290,0,330,9,0,1.570796370506287,1,0,0,0,0,[]],51,344,[],[[0],[1],[1,100,""]],[0,0]],[[577,-17,0,482,9,0,1.570796370506287,1,0,0,0,0,[]],51,347,[],[[0],[1],[1,100,""]],[0,0]],[[533,526,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,348,[[0.7],[0]],[[0]],[0,"Default",0,1]],[[673,209,0,336,9,0,1.570796370506287,1,0,0,0,0,[]],51,158,[],[[0],[1],[1,100,""]],[0,0]],[[763,-14,0,492,9,0,1.570796370506287,1,0,0,0,0,[]],51,159,[],[[0],[1],[1,100,""]],[0,0]],[[722,527,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,368,[[0.7],[0]],[[0]],[0,"Default",0,1]],[[-95,41,0,60.93439102172852,60.93439102172852,0,0,1,0.5,0.5,0,0,[]],53,1417,[["Godlike"],["{\"c2array\":true,\"size\":[121,6,1],\"data\":[[[539.6916922305035],[418.95510724101365],[0.0000021760845081332306],[\"idle\"],[0],[1]],[[539.6916922305035],[418.95510724101365],[0.0000021760845081332306],[\"idle\"],[0],[1]],[[539.6916922305035],[418.95510724101365],[0.0000021760845081332306],[\"idle\"],[0],[1]],[[539.6916922305035],[418.95510724101365],[0.0000021760845081332306],[\"idle\"],[0],[1]],[[539.6916922305035],[418.95510724101365],[0.0000021760845081332306],[\"idle\"],[0],[1]],[[539.6916922305035],[418.95510724101365],[0.0000021760845081332306],[\"idle\"],[0],[1]],[[539.6916922305035],[418.95510724101365],[0.0000021760845081332306],[\"idle\"],[0],[1]],[[539.6916922305035],[418.95510724101365],[0.0000021760845081332306],[\"idle\"],[0],[1]],[[539.6916922305035],[418.95510724101365],[0.0000021760845081332306],[\"idle\"],[0],[1]],[[539.6916922305035],[418.95510724101365],[0.0000021760845081332306],[\"idle\"],[0],[1]],[[539.6916922305035],[418.95510724101365],[0.0000021760845081332306],[\"idle\"],[0],[1]],[[539.6916922305035],[418.95510724101365],[0.0000021760845081332306],[\"idle\"],[0],[1]],[[539.6916922305035],[418.95510724101365],[0.0000021760845081332306],[\"idle\"],[0],[1]],[[539.6916922305035],[418.95510724101365],[0.0000021760845081332306],[\"idle\"],[0],[1]],[[539.6916922305035],[418.95510724101365],[0.0000021760845081332306],[\"idle\"],[0],[1]],[[539.6916922305035],[418.95510724101365],[0.0000021760845081332306],[\"idle\"],[0],[1]],[[539.6916922305035],[418.95510724101365],[0.0000021760845081332306],[\"idle\"],[0],[1]],[[539.6916922305035],[418.95510724101365],[0.0000021760845081332306],[\"idle\"],[0],[1]],[[539.6916922305035],[418.95510724101365],[0.0000021760845081332306],[\"idle\"],[0],[1]],[[539.6916922305035],[418.95510724101365],[0.0000021760845081332306],[\"idle\"],[0],[1]],[[539.6916922305035],[418.95510724101365],[0.0000021760845081332306],[\"idle\"],[0],[1]],[[539.6916922305035],[418.95510724101365],[0.0000021760845081332306],[\"idle\"],[0],[1]],[[539.6916922305035],[418.95510724101365],[0.0000021760845081332306],[\"idle\"],[0],[1]],[[539.6916922305035],[418.95510724101365],[0.0000021760845081332306],[\"idle\"],[0],[1]],[[539.6916922305035],[408.12870724588316],[0.0000021760845081332306],[\"jump\"],[0],[1]],[[539.6916922305035],[397.70884062312814],[0.0000021760845081332306],[\"jump\"],[0],[1]],[[539.6916922305035],[387.7248832116415],[0.0000021760845081332306],[\"jump\"],[0],[1]],[[539.6916922305035],[378.15951104420594],[0.0000021760845081332306],[\"jump\"],[0],[1]],[[539.6916922305035],[369.0217292028524],[0.0000021760845081332306],[\"jump\"],[0],[1]],[[539.6916922305035],[360.31725137917476],[0.0000021760845081332306],[\"jump\"],[0],[1]],[[539.6916922305035],[351.96186709315447],[0.0000021760845081332306],[\"jump\"],[0],[1]],[[539.6916922305035],[344.02896956201664],[0.0000021760845081332306],[\"jump\"],[0],[1]],[[539.6916922305035],[336.52468593535644],[0.0000021760845081332306],[\"jump\"],[0],[1]],[[539.6916922305035],[329.4451405755858],[0.0000021760845081332306],[\"pound\"],[0],[1]],[[539.6916922305035],[324.88448624095497],[0.0000021760845081332306],[\"pound\"],[0],[1]],[[539.6916922305035],[320.7251614449465],[0.0000021760845081332306],[\"pound\"],[0],[1]],[[539.6916922305035],[316.97776869335496],[0.0000021760845081332306],[\"pound\"],[0],[1]],[[539.6916922305035],[313.64363211510954],[0.0000021760845081332306],[\"pound\"],[0],[1]],[[539.6916922305035],[310.72477841692074],[0.0000021760845081332306],[\"pound\"],[0],[1]],[[539.6916922305035],[308.2240650834517],[0.0000021760845081332306],[\"pound\"],[0],[1]],[[539.6916922305035],[306.136328432403],[0.0000021760845081332306],[\"pound\"],[0],[1]],[[539.6916922305035],[304.47144994387247],[0.0000021760845081332306],[\"pound\"],[0],[1]],[[539.6916922305035],[303.2107316540355],[0.0000021760845081332306],[\"pound\"],[0],[1]],[[539.6916922305035],[302.3702518320595],[0.0000021760845081332306],[\"pound\"],[0],[1]],[[539.6916922305035],[301.94525733308836],[0.0000021760845081332306],[\"pound\"],[0],[1]],[[539.6916922305035],[301.93606211717093],[0.0000021760845081332306],[\"pound\"],[0],[1]],[[539.6916922305035],[310.6538006001174],[0.0000021760845081332306],[\"pound\"],[0],[1]],[[539.6916922305035],[319.8467915200159],[0.0000021760845081332306],[\"pound\"],[0],[1]],[[539.6916922305035],[329.3712823412168],[0.0000021760845081332306],[\"pound\"],[0],[1]],[[539.6916922305035],[339.35192107085845],[0.0000021760845081332306],[\"pound\"],[0],[1]],[[539.6916922305035],[349.7550412595909],[0.0000021760845081332306],[\"pound\"],[0],[1]],[[539.6916922305035],[360.5855159587928],[0.0000021760845081332306],[\"pound\"],[0],[1]],[[539.6916922305035],[371.76835690275766],[0.0000021760845081332306],[\"pound\"],[0],[1]],[[539.6916922305035],[383.44739040708976],[0.0000021760845081332306],[\"pound\"],[0],[1]],[[539.6916922305035],[395.44391805774325],[0.0000021760845081332306],[\"pound\"],[0],[1]],[[539.6916922305035],[407.95004301966554],[0.0000021760845081332306],[\"pound\"],[0],[1]],[[539.6916922305035],[420.84896572049473],[0.0000021760845081332306],[\"pound\"],[0],[1]],[[539.6916922305035],[434.12352576347007],[0.0000021760845081332306],[\"pound\"],[0],[1]],[[539.6916922305035],[447.9356968356943],[0.0000021760845081332306],[\"pound\"],[0],[1]],[[539.6916922305035],[462.00172770605997],[0.0000021760845081332306],[\"pound\"],[0],[1]],[[539.6916922305035],[476.56183684971563],[0.0000021760845081332306],[\"pound\"],[0],[1]],[[539.6916922305035],[491.51939362957256],[0.0000021760845081332306],[\"pound\"],[0],[1]],[[539.6916922305035],[506.9203634919302],[0.0000021760845081332306],[\"pound\"],[0],[1]],[[539.6916922305035],[509.99765870075703],[0.0000015508999954187194],[\"idle\"],[0],[1]],[[539.6916922305035],[509.99765870075703],[0.0000011076299751261965],[\"idle\"],[0],[1]],[[539.6916922305035],[509.99765870075703],[7.444627074073347e-7],[\"idle\"],[0],[1]],[[539.6916922305035],[509.99765870075703],[4.888326324418064e-7],[\"idle\"],[0],[1]],[[539.6916922305035],[509.99765870075703],[4.888326324418064e-7],[\"idle\"],[0],[1]],[[539.6916922305035],[509.99765870075703],[4.888326324418064e-7],[\"idle\"],[0],[1]],[[539.6916922305035],[509.99765870075703],[4.888326324418064e-7],[\"idle\"],[0],[1]],[[539.6916922305035],[509.99765870075703],[4.888326324418064e-7],[\"idle\"],[0],[1]],[[539.6916922305035],[509.99765870075703],[4.888326324418064e-7],[\"idle\"],[0],[1]],[[539.6916922305035],[509.99765870075703],[4.888326324418064e-7],[\"idle\"],[0],[1]],[[539.6916922305035],[509.99765870075703],[4.888326324418064e-7],[\"idle\"],[0],[1]],[[539.6916922305035],[509.99765870075703],[4.888326324418064e-7],[\"idle\"],[0],[1]],[[539.6916922305035],[509.99765870075703],[4.888326324418064e-7],[\"idle\"],[0],[1]],[[539.6916922305035],[509.99765870075703],[4.888326324418064e-7],[\"idle\"],[0],[1]],[[540.1043353251238],[509.99765870075703],[4.888326324418064e-7],[\"run\"],[0],[1]],[[540.9384495639104],[509.99765870075703],[4.888326324418064e-7],[\"run\"],[0],[1]],[[542.1842031269354],[509.99765870075703],[4.888326324418064e-7],[\"run\"],[0],[1]],[[543.8460399641592],[509.99765870075703],[4.888326324418064e-7],[\"run\"],[0],[1]],[[545.9340029860307],[509.99765870075703],[4.888326324418064e-7],[\"run\"],[0],[1]],[[548.4285806504396],[509.99765870075703],[4.888326324418064e-7],[\"run\"],[0],[1]],[[551.3366444702604],[509.99765870075703],[4.888326324418064e-7],[\"run\"],[0],[1]],[[554.6462145651567],[509.99765870075703],[4.888326324418064e-7],[\"run\"],[0],[1]],[[558.382252299862],[509.99765870075703],[4.888326324418064e-7],[\"run\"],[0],[1]],[[562.5562468841805],[509.99765870075703],[4.888326324418064e-7],[\"run\"],[0],[1]],[[567.114265155929],[509.99765870075703],[4.888326324418064e-7],[\"run\"],[0],[1]],[[572.0929859762165],[509.99765870075703],[4.888326324418064e-7],[\"run\"],[0],[1]],[[576.6787818112402],[509.99765870075703],[4.888326324418064e-7],[\"run\"],[0],[1]],[[580.8137773654792],[509.99765870075703],[4.888326324418064e-7],[\"run\"],[0],[1]],[[584.551612067981],[509.99765870075703],[4.888326324418064e-7],[\"run\"],[0],[1]],[[587.8879353922656],[509.99765870075703],[4.888326324418064e-7],[\"run\"],[0],[1]],[[590.7878632635089],[509.99765870075703],[4.888326324418064e-7],[\"run\"],[0],[1]],[[593.2844101600921],[509.99765870075703],[4.888326324418064e-7],[\"run\"],[0],[1]],[[595.3522917944349],[509.99765870075703],[4.888326324418064e-7],[\"run\"],[0],[1]],[[597.0163006329852],[509.99765870075703],[4.888326324418064e-7],[\"run\"],[0],[1]],[[598.2618787674526],[509.99765870075703],[4.888326324418064e-7],[\"run\"],[0],[1]],[[599.094816317476],[509.99765870075703],[4.888326324418064e-7],[\"run\"],[0],[1]],[[599.5094266221315],[509.99765870075703],[4.888326324418064e-7],[\"run\"],[0],[1]],[[599.5094266221315],[509.99765870075703],[4.888326324418064e-7],[\"idle\"],[0],[1]],[[599.5094266221315],[509.99765870075703],[4.888326324418064e-7],[\"idle\"],[0],[1]],[[599.5094266221315],[509.99765870075703],[4.888326324418064e-7],[\"idle\"],[0],[1]],[[599.5094266221315],[509.99765870075703],[4.888326324418064e-7],[\"idle\"],[0],[1]],[[599.5094266221315],[509.99765870075703],[4.888326324418064e-7],[\"idle\"],[0],[1]],[[599.5094266221315],[509.99765870075703],[4.888326324418064e-7],[\"idle\"],[0],[1]],[[599.5094266221315],[509.99765870075703],[4.888326324418064e-7],[\"idle\"],[0],[1]],[[599.5094266221315],[509.99765870075703],[4.888326324418064e-7],[\"idle\"],[0],[1]],[[599.5094266221315],[509.99765870075703],[4.888326324418064e-7],[\"idle\"],[0],[1]],[[599.5094266221315],[509.99765870075703],[4.888326324418064e-7],[\"idle\"],[0],[1]],[[599.5094266221315],[509.99765870075703],[4.888326324418064e-7],[\"idle\"],[0],[1]],[[599.5094266221315],[509.99765870075703],[4.888326324418064e-7],[\"idle\"],[0],[1]],[[599.5094266221315],[509.99765870075703],[4.888326324418064e-7],[\"idle\"],[0],[1]],[[599.5094266221315],[509.99765870075703],[4.888326324418064e-7],[\"idle\"],[0],[1]],[[599.5094266221315],[509.99765870075703],[4.888326324418064e-7],[\"idle\"],[0],[1]],[[599.5094266221315],[509.99765870075703],[4.888326324418064e-7],[\"idle\"],[0],[1]],[[599.5094266221315],[509.99765870075703],[4.888326324418064e-7],[\"idle\"],[0],[1]],[[599.5094266221315],[509.99765870075703],[4.888326324418064e-7],[\"idle\"],[0],[1]],[[599.5094266221315],[509.99765870075703],[4.888326324418064e-7],[\"idle\"],[0],[1]],[[599.5094266221315],[509.99765870075703],[4.888326324418064e-7],[\"idle\"],[0],[1]],[[599.5094266221315],[509.99765870075703],[4.888326324418064e-7],[\"idle\"],[0],[1]]]}"],[0]],[],[1,"Default",0,1]],[[125,523,0,249,52,0,0,1,0,0,0,0,[]],46,185,[[1],[1],[""],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Smashing the jumpers won't activate them",1,0,50,0,0,0,0,0,"",-1,0]],[[43,354,0,288,117,0,0,1,0,0,0,0,[[]]],61,5606,[],[[1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>","1",7,0,55,0,0,0,0,0,"",-1,0]],[[470,42,0,64,64,0,0,1,0.5,0.5,0,0,[]],60,3261,[["level7"]],[[1],[400,-200,800,0,0,0],[0,0,0,1,1]],[0,"Default",0,1]]],[]],["UI",1,602442565043611,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[240,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3097,[["right"]],[[0,1,0,1,1]],[0,"Default",0,1]],[[80,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3098,[["left"]],[[0,1,0,1,1]],[0,"Default",1,1]],[[560,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3099,[["up"]],[[1,1,1,1,1]],[0,"Default",3,1]],[[400,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3100,[["down"]],[[1,1,1,1,1]],[0,"Default",2,1]]],[]],["End Card",2,724943242703442,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],78,2607,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[12.04449462890625,194,0,615.9109497070313,67,0,0,1,0,0,0,0,[]],79,2608,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Timer for this level",2.5,0,0,0,0,0,-10,0,"",-1,0]],[[17.546875,248,0,604.90625,105,0,0,1,0,0,0,0,[]],80,2610,[[0],[0],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","13:40:40",4,0,63,50,0,0,-10,0,"",-1,0]],[[115.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,2611,[[0],[1],[0],[0],["replay"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Replay",""],[""],[2,2,0,0,0],["",""]],[0,"Replay",0,1]],[[524.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3086,[[0],[1],[0],[0],["next"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Next",""],[""],[2,2,0,0,0],["",""]],[0,"Next",0,1]],[[320.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3087,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > Back","Level Menu"],[""],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[320.75,521.8050537109375,0,384,96,0,0,1,0.5,0.5,0,0,[]],70,3088,[[1],[1],[0],[0],[""],["{\"size\": 22, \"left\": 70, \"right\": 18, \"alignY\": 60}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > DownloadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"DownloadReplay",0,1]]],[]],["Pause",3,613766074632621,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-310,678,0,274,31,0,0,1,0,0,0,0,[]],168,3089,[],[],[".ovo",0,1,"file"]],[[320,320,0,425,250,0,0,1,0.5,0.5,0,0,[]],82,3090,[],[[6,1,"",300,1,1,"",300,"overlay",1,"PauseClose",1,1]],[0,"Default",0,1]],[[214,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3091,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"",""],["PauseClose"],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[426,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3092,[[0],[1],[0],[0],["quit"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > GiveUp",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[115.5,202,0,409,118,0,0,1,0,0,0,0,[]],83,3093,[[1],[1],["pause"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Pause",4,0,57,50,0,0,-10,0,"",-1,0]],[[320.5,88,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3094,[[1],[1],[0],[0],["loadreplay"],["{\"size\": 16, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > LoadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"LoadReplay",0,1]],[[320.5,157,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3095,[[1],[0],[0],[0],["toggledebug"],["{\"size\": 15, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Debug > Toggle",""],[""],[2,2,0,0,0],["",""]],[0,"ToggleDebug",0,1]],[[78,448,0,484,134,0,0,1,0,0,0,0,[]],193,3096,[],[],[0,"Default",0,1]]],[]],["Overlay",4,745986236154767,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[432,4,0,203.0009155273438,64,0,0,1,0,0,0,0,[]],107,5488,[],[[1,0,1,0,1]],[2,2,2,2,0,1,0,0,1]],[[432,4,0,203,64,0,0,1,0,0,0,0,[]],84,3101,[[0],[0],[""],["en-us"],[0],[1],[1],["{\"alignY\": 85, \"alignX\": 45, \"size\": 28}"],[0],[1],[0],[0],[0]],[["",""],[1,0,1,0,1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",2,0,100,50,0,0,-10,0,"",-1,0]],[[88,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3102,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Pause",""],[""],[0,0,0,0,1],["",""]],[0,"Pause",0,1]],[[158,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3103,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Replay","1"],[""],[0,0,0,0,1],["",""]],[0,"Reload",0,1]]],[]],["End Game",5,335383862143896,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],85,3104,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[73,194,0,494,72,0,0,1,0,0,0,0,[]],86,3105,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],["{alignY:50}"],[0],[1],[0],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Your final time",2.5,0,50,50,0,0,-10,0,"",-1,0]],[[320,403,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3106,[[0],[1],[0],[0],[""],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Quit",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[73,243,0,494,85,0,0,1,0,0,0,0,[]],87,3108,[[0],[1],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",3,0,50,50,0,0,-10,0,"",-1,0]],[[73,318,0,494,25,0,0,1,0,0,0,0,[]],86,5480,[[1],[1],["tryagainhardmode"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Try again in hard mode!",1,0,50,50,0,0,-2,0,"",-1,0]]],[]],["Banner",6,486367928120056,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-237,-189,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,3109,[],[["overlay"]],[0,"Default",0,1]]],[]],["AdPlaying",7,504090424327239,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,-203.5,0,250,97,0,0,1,0.5,0.5,0,0,[]],125,390,[],[[6,1,"",300,1,1,"",300,"overlay",1,"",1,1],[]],[0,"Default",0,1]],[[209,-275,0,222,139,0,0,1,0,0,0,0,[]],86,391,[[1],[1],["adplaying"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","An ad is playing right now...",1.2,0,50,50,0,0,-2,0,"",-1,0]],[[-154.5756988525391,-294.3137512207031,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,5508,[],[["overlay"]],[0,"Default",0,1]]],[]]],[],[]],["Level 8",3000,4000,true,"Levels",115816564683916,[["Background",0,140354695092720,true,[255,255,255],false,0,0,1,false,false,1,0,0,[[[-141,-358,0,60.93439102172852,60.93439102172852,0,0,1,0.5,0.5,0,0,[]],53,52,[["Jump & Dive"],[""],[0]],[],[1,"Default",0,1]]],[]],["Layer 0",1,111933353877229,true,[255,255,255],true,1,1,1,false,false,1,0,0,[[[136,312,0,32,64,0,0,1,0.5,0.5,0,0,[]],42,1882,[["run"],[0],[1],[1],[0],[0.8],[0.5],[0],[1],[0],[0],[0],["ovo+"],[2],[0],[0],[0],[""],[0],[3],[0],[0],[0],[0],[0],[0],[0]],[[330,1500,1500,650,1500,1000,1,0,0,1],[],[1,0],[0,10000,360,1]],[1,"Default",0,1]],[[1984,224,0,97,199,0,0,1,0.5257731676101685,0.4974874258041382,0,0,[]],44,2828,[],[[0]],[0,"Default",0,1]],[[-672,440,0,976,568,0,0,1,0,0,0,0,[]],51,2848,[],[[0],[1],[1,100,""]],[0,0]],[[528,440,0,88,640,0,0,1,0,0,0,0,[]],51,1883,[],[[0],[1],[1,100,""]],[0,0]],[[936,448,0,88,632,0,0,1,0,0,0,0,[]],51,1884,[],[[0],[1],[1,100,""]],[0,0]],[[1368,440,0,56,640,0,0,1,0,0,0,0,[]],51,1885,[],[[0],[1],[1,100,""]],[0,0]],[[376,288,0,80,24,0,0,1,0,0,0,0,[]],46,1886,[[1],[1],[""],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Jump",1,0,50,0,0,0,0,0,"",-1,0]],[[736,280,0,80,24,0,0,1,0,0,0,0,[]],46,1887,[[1],[1],[""],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Dive",1,0,50,0,0,0,0,0,"",-1,0]],[[1144,352,0,144,24,0,0,1,0,0,0,0,[]],46,1888,[[1],[1],[""],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Re-jump!",1,0,50,0,0,0,0,0,"",-1,0]],[[316,448,0,24,32,0,0,1,0.5,0.5,0,0,[]],47,1889,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[340,424,0,24,32,0,0,1,0.5,0.5,0,0,[]],47,1890,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[364,400,0,24,32,0,0,1,0.5,0.5,0,0,[]],47,1891,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[388,376,0,24,32,0,0,1,0.5,0.5,0,0,[]],47,1892,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[416,352,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1893,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[444,376,0,24,32,0,0,1,0.5,0.5,0,0,[]],47,1894,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[468,400,0,24,32,0,0,1,0.5,0.5,0,0,[]],47,1895,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[492,424,0,24,32,0,0,1,0.5,0.5,0,0,[]],47,1896,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[516,448,0,24,32,0,0,1,0.5,0.5,0,0,[]],47,1897,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[628,448,0,24,32,0,0,1,0.5,0.5,0,0,[]],47,1898,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[656,424,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1899,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[688,408,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1900,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[720,392,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1901,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[776,536,0,32,40,0,0,1,0.5,0.5,0,0,[]],47,1902,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[752,384,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1903,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[784,384,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1904,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[816,384,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1905,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[924,464,0,24,32,0,0,1,0.5,0.5,0,0,[]],47,1906,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[876,416,0,24,32,0,0,1,0.5,0.5,0,0,[]],47,1907,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[900,440,0,24,32,0,0,1,0.5,0.5,0,0,[]],47,1908,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[848,392,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1909,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1040,464,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1910,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1072,448,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1911,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1104,432,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1912,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1136,416,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1913,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1168,416,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1914,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1200,416,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1915,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1328,440,0,24,32,0,0,1,0.5,0.5,0,0,[]],47,1917,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1264,416,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1918,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1296,424,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1919,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1232,416,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1920,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1352,456,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1921,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1408,424,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,2752,[[0.7],[0]],[[0]],[0,"Default",0,1]],[[336,464,0,544,40,0,1.570796370506287,1,0,0,0,0,[]],51,1922,[],[[0],[1],[1,100,""]],[0,0]],[[368,440,0,640,40,0,1.570796370506287,1,0,0,0,0,[]],51,1923,[],[[0],[1],[1,100,""]],[0,0]],[[392,416,0,664,40,0,1.570796370506287,1,0,0,0,0,[]],51,1924,[],[[0],[1],[1,100,""]],[0,0]],[[416,392,0,688,40,0,1.570796370506287,1,0,0,0,0,[]],51,1925,[],[[0],[1],[1,100,""]],[0,0]],[[432,368,0,400,32,0,1.570796370506287,1,0,0,0,0,[]],51,1926,[],[[0],[1],[1,100,""]],[0,0]],[[456,392,0,688,40,0,1.570796370506287,1,0,0,0,0,[]],51,2743,[],[[0],[1],[1,100,""]],[0,0]],[[480,416,0,664,40,0,1.570796370506287,1,0,0,0,0,[]],51,2744,[],[[0],[1],[1,100,""]],[0,0]],[[504,440,0,640,40,0,1.570796370506287,1,0,0,0,0,[]],51,2745,[],[[0],[1],[1,100,""]],[0,0]],[[528,464,0,616,40,0,1.570796370506287,1,0,0,0,0,[]],51,2746,[],[[0],[1],[1,100,""]],[0,0]],[[648,464,0,616,40,0,1.570796370506287,1,0,0,0,0,[]],51,2747,[],[[0],[1],[1,100,""]],[0,0]],[[680,440,0,640,40,0,1.570796370506287,1,0,0,0,0,[]],51,2748,[],[[0],[1],[1,100,""]],[0,0]],[[712,424,0,656,40,0,1.570796370506287,1,0,0,0,0,[]],51,2749,[],[[0],[1],[1,100,""]],[0,0]],[[744,408,0,672,40,0,1.570796370506287,1,0,0,0,0,[]],51,2750,[],[[0],[1],[1,100,""]],[0,0]],[[832,400,0,216,96,0,1.570796370506287,1,0,0,0,0,[]],51,2751,[],[[0],[1],[1,100,""]],[0,0]],[[864,408,0,672,40,0,1.570796370506287,1,0,0,0,0,[]],51,2753,[],[[0],[1],[1,100,""]],[0,0]],[[888,432,0,648,40,0,1.570796370506287,1,0,0,0,0,[]],51,2754,[],[[0],[1],[1,100,""]],[0,0]],[[912,456,0,624,40,0,1.570796370506287,1,0,0,0,0,[]],51,2772,[],[[0],[1],[1,100,""]],[0,0]],[[936,480,0,600,40,0,1.570796370506287,1,0,0,0,0,[]],51,2773,[],[[0],[1],[1,100,""]],[0,0]],[[1056,480,0,600,40,0,1.570796370506287,1,0,0,0,0,[]],51,2774,[],[[0],[1],[1,100,""]],[0,0]],[[1096,464,0,616,40,0,1.570796370506287,1,0,0,0,0,[]],51,2775,[],[[0],[1],[1,100,""]],[0,0]],[[1128,448,0,632,40,0,1.570796370506287,1,0,0,0,0,[]],51,2776,[],[[0],[1],[1,100,""]],[0,0]],[[1280,432,0,648,160,0,1.570796370506287,1,0,0,0,0,[]],51,2777,[],[[0],[1],[1,100,""]],[0,0]],[[1312,440,0,640,32,0,1.570796370506287,1,0,0,0,0,[]],51,2778,[],[[0],[1],[1,100,""]],[0,0]],[[1336,456,0,624,40,0,1.570796370506287,1,0,0,0,0,[]],51,2779,[],[[0],[1],[1,100,""]],[0,0]],[[1368,472,0,608,40,0,1.570796370506287,1,0,0,0,0,[]],51,2780,[],[[0],[1],[1,100,""]],[0,0]],[[832,400,0,680,96,0,1.570796370506287,1,0,0,0,0,[]],51,2781,[],[[0],[1],[1,100,""]],[0,0]],[[-560,-296,0,3552,296,0,0,1,0,0,0,0,[]],51,2782,[],[[0],[1],[1,100,""]],[0,0]],[[1624,168,0,88,912,0,0,1,0,0,0,0,[]],51,2783,[],[[0],[1],[1,100,""]],[0,0]],[[1424,536,0,200,544,0,0,1,0,0,0,0,[]],51,2784,[],[[0],[1],[1,100,""]],[0,0]],[[1472,520,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2786,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1504,520,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2787,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1536,520,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2788,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1568,520,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2789,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1600,520,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2791,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1712,320,0,1256,760,0,0,1,0,0,0,0,[]],51,2785,[],[[0],[1],[1,100,""]],[0,0]],[[-976,-96,0,976,568,0,0,1,0,0,0,0,[]],51,2790,[],[[0],[1],[1,100,""]],[0,0]],[[2112,-96,0,1352,1176,0,0,1,0,0,0,0,[]],51,2797,[],[[0],[1],[1,100,""]],[0,0]],[[1440,520,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2798,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[48,144,0,288,117,0,0,1,0,0,0,0,[[]]],61,71,[],[[1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>","1",7,0,55,0,0,0,0,0,"",-1,0]],[[1584,336,0,64,64,0,0,1,0.5,0.5,0,0,[]],60,3264,[["level8"]],[[1],[400,-200,800,0,0,0],[0,0,0,1,1]],[0,"Default",0,1]],[[1624,-8,0,88,48,0,0,1,0,0,0,0,[]],51,1916,[],[[0],[1],[1,100,""]],[0,0]],[[1536,96,0,144,24,0,0,1,0,0,0,0,[]],46,10017,[[0],[0],[""],["en-us"],[0],[0],[1],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","--->",1,0,50,0,0,0,0,0,"",-1,0]]],[]],["UI",2,172776555409490,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[240,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3097,[["right"]],[[0,1,0,1,1]],[0,"Default",0,1]],[[80,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3098,[["left"]],[[0,1,0,1,1]],[0,"Default",1,1]],[[560,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3099,[["up"]],[[1,1,1,1,1]],[0,"Default",3,1]],[[400,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3100,[["down"]],[[1,1,1,1,1]],[0,"Default",2,1]]],[]],["End Card",3,777495558417993,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],78,2607,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[12.04449462890625,194,0,615.9109497070313,67,0,0,1,0,0,0,0,[]],79,2608,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Timer for this level",2.5,0,0,0,0,0,-10,0,"",-1,0]],[[17.546875,248,0,604.90625,105,0,0,1,0,0,0,0,[]],80,2610,[[0],[0],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","13:40:40",4,0,63,50,0,0,-10,0,"",-1,0]],[[115.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,2611,[[0],[1],[0],[0],["replay"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Replay",""],[""],[2,2,0,0,0],["",""]],[0,"Replay",0,1]],[[524.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3086,[[0],[1],[0],[0],["next"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Next",""],[""],[2,2,0,0,0],["",""]],[0,"Next",0,1]],[[320.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3087,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > Back","Level Menu"],[""],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[320.75,521.8050537109375,0,384,96,0,0,1,0.5,0.5,0,0,[]],70,3088,[[1],[1],[0],[0],[""],["{\"size\": 22, \"left\": 70, \"right\": 18, \"alignY\": 60}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > DownloadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"DownloadReplay",0,1]]],[]],["Pause",4,271018307286453,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-310,678,0,274,31,0,0,1,0,0,0,0,[]],168,3089,[],[],[".ovo",0,1,"file"]],[[320,320,0,425,250,0,0,1,0.5,0.5,0,0,[]],82,3090,[],[[6,1,"",300,1,1,"",300,"overlay",1,"PauseClose",1,1]],[0,"Default",0,1]],[[214,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3091,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"",""],["PauseClose"],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[426,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3092,[[0],[1],[0],[0],["quit"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > GiveUp",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[115.5,202,0,409,118,0,0,1,0,0,0,0,[]],83,3093,[[1],[1],["pause"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Pause",4,0,57,50,0,0,-10,0,"",-1,0]],[[320.5,88,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3094,[[1],[1],[0],[0],["loadreplay"],["{\"size\": 16, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > LoadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"LoadReplay",0,1]],[[320.5,157,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3095,[[1],[0],[0],[0],["toggledebug"],["{\"size\": 15, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Debug > Toggle",""],[""],[2,2,0,0,0],["",""]],[0,"ToggleDebug",0,1]],[[78,448,0,484,134,0,0,1,0,0,0,0,[]],193,3096,[],[],[0,"Default",0,1]]],[]],["Overlay",5,888133780543541,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[432,4,0,203.0009155273438,64,0,0,1,0,0,0,0,[]],107,5488,[],[[1,0,1,0,1]],[2,2,2,2,0,1,0,0,1]],[[432,4,0,203,64,0,0,1,0,0,0,0,[]],84,3101,[[0],[0],[""],["en-us"],[0],[1],[1],["{\"alignY\": 85, \"alignX\": 45, \"size\": 28}"],[0],[1],[0],[0],[0]],[["",""],[1,0,1,0,1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",2,0,100,50,0,0,-10,0,"",-1,0]],[[88,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3102,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Pause",""],[""],[0,0,0,0,1],["",""]],[0,"Pause",0,1]],[[158,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3103,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Replay","1"],[""],[0,0,0,0,1],["",""]],[0,"Reload",0,1]]],[]],["End Game",6,980770429390438,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],85,3104,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[73,194,0,494,72,0,0,1,0,0,0,0,[]],86,3105,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],["{alignY:50}"],[0],[1],[0],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Your final time",2.5,0,50,50,0,0,-10,0,"",-1,0]],[[320,403,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3106,[[0],[1],[0],[0],[""],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Quit",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[73,243,0,494,85,0,0,1,0,0,0,0,[]],87,3108,[[0],[1],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",3,0,50,50,0,0,-10,0,"",-1,0]],[[73,318,0,494,25,0,0,1,0,0,0,0,[]],86,5480,[[1],[1],["tryagainhardmode"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Try again in hard mode!",1,0,50,50,0,0,-2,0,"",-1,0]]],[]],["Banner",7,632641491127063,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-237,-189,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,3109,[],[["overlay"]],[0,"Default",0,1]]],[]],["AdPlaying",8,970233644764796,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,-203.5,0,250,97,0,0,1,0.5,0.5,0,0,[]],125,390,[],[[6,1,"",300,1,1,"",300,"overlay",1,"",1,1],[]],[0,"Default",0,1]],[[209,-275,0,222,139,0,0,1,0,0,0,0,[]],86,391,[[1],[1],["adplaying"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","An ad is playing right now...",1.2,0,50,50,0,0,-2,0,"",-1,0]],[[-154.5756988525391,-294.3137512207031,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,5508,[],[["overlay"]],[0,"Default",0,1]]],[]]],[],[]],["Level 9",1800,1280,true,"Levels",791093287015615,[["Layer 0",0,355777283387186,true,[255,255,255],false,1,1,1,false,false,1,0,0,[[[336,1184,0,32,64,0,0,1,0.5,0.5,0,0,[]],42,360,[["run"],[0],[1],[1],[0],[0.8],[0.5],[0],[1],[0],[0],[0],[""],[2],[0],[0],[0],[""],[0],[3],[0],[0],[0],[0],[0],[0],[0]],[[330,1500,1500,650,1500,1000,0,0,0,1],[],[0,0],[0,10000,360,1]],[1,"Default",0,1]],[[-120,-184,0,60.93439102172852,60.93439102172852,0,0,1,0.5,0.5,0,0,[]],53,1418,[["A wise decision"],[""],[0]],[],[1,"Default",0,1]],[[96,1176,0,97,199,0,0,1,0.5257731676101685,0.4974874258041382,0,0,[]],44,186,[],[[0]],[0,"Default",0,1]],[[-664,1272,0,1344,528,0,0,1,0,0,0,0,[]],51,187,[],[[0],[1],[1,100,""]],[0,0]],[[264,-112,0,224,32,0,0,1,0,0,0,0,[]],46,188,[[1],[1],[""],["en-us"],[0],[1],[0],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Hey... This is",1,0,50,0,0,0,0,0,"",-1,0]],[[8,1016,0,152,8,0,0,1,0,0,0,0,[]],45,189,[],[[0],[1]],[0,0]],[[8,-424,0,1704,736,0,1.570796370506287,1,0,0,0,0,[]],51,190,[],[[0],[1],[1,100,""]],[0,0]],[[680,1272,0,432,624,0,0,1,0,0,0,0,[]],51,192,[],[[0],[1],[1,100,""]],[0,0]],[[888,1256,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,193,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[856,1256,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,194,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[824,1256,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,205,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[792,1256,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,206,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[760,1256,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,207,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[728,1256,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,208,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[696,1256,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,209,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[952,1256,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,210,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[920,1256,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,211,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1352,1272,0,216,752,0,0,1,0,0,0,0,[]],51,212,[],[[0],[1],[1,100,""]],[0,0]],[[2231,1024,0,992,672,0,1.570796370506287,1,0,0,0,0,[]],51,213,[],[[0],[1],[1,100,""]],[0,0]],[[1560,1024,0,144,9,0,0,1,0,0,0,0,[]],51,214,[],[[0],[1],[1,100,""]],[0,0]],[[1568,744,0,176,9,0,1.570796370506287,1,0,0,0,0,[]],51,237,[],[[0],[1],[1,100,""]],[0,0]],[[2711,296,0,728,1016,0,1.570796370506287,1,0,0,0,0,[]],51,238,[],[[0],[1],[1,100,""]],[0,0]],[[1064,744,0,496,9,0,0,1,0,0,0,0,[]],51,239,[],[[0],[1],[1,100,""]],[0,0]],[[752,744,0,104,9,0,0,1,0,0,0,0,[]],51,240,[],[[0],[1],[1,100,""]],[0,0]],[[376,744,0,104,9,0,0,1,0,0,0,0,[]],51,241,[],[[0],[1],[1,100,""]],[0,0]],[[424,728,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,242,[[0.6],[0]],[[0]],[0,"Default",0,1]],[[1224,648,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,243,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1256,648,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,244,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1288,648,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,245,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1320,648,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,246,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1352,648,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,342,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1384,648,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,349,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1416,648,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,350,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1224,688,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,351,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1256,688,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,352,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1288,688,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,353,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1320,688,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,354,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1352,688,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,355,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1384,688,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,356,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1416,688,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,357,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1208,664,0,224,9,0,0,1,0,0,0,0,[]],51,358,[],[[0],[1],[1,100,""]],[0,0]],[[1080,728,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,359,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[24,640,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,361,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[24,608,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,362,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[24,576,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,363,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[24,544,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,364,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[24,512,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,365,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[24,480,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,366,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[24,448,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,2705,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[24,416,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,2706,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[24,384,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,2707,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[24,352,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,2708,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[-24,440,0,249,52,0,0,1,0,0,0,0,[]],46,2709,[[1],[1],[""],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","SMASH!",1,0,50,0,0,0,0,0,"",-1,0]],[[712,1072,0,288,117,0,0,1,0,0,0,0,[[]]],61,5607,[],[[1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>","1",7,0,55,0,0,0,0,0,"",-1,0]],[[640,384,0,64,64,0,0,1,0.5,0.5,0,0,[]],60,3263,[["level9"]],[[1],[400,-200,800,0,0,0],[0,0,0,1,1]],[0,"Default",0,1]],[[168,776,0,248,8,0,1.570796370506287,1,0,0,0,0,[]],51,10123,[],[[0],[1],[1,100,""]],[0,0]],[[168,1000,0,16,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,10124,[[-1],[0],[0],[0],[0],[1],[1]],[[0],[1,0,1,1,"F 248",1000,0,100,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[272,1144,0,32,256,0,0,1,0.5,0.5,0,0,[]],49,10125,[[1],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[1,"Default",0,1]],[[160,584,0,8,440,0,0,1,0,0,0,0,[]],67,10126,[],[[1]],[0,0]],[[240,-88,0,280,24,0,0,1,0,0,0,0,[]],46,191,[[1],[1],[""],["en-us"],[0],[1],[0],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","\"Getting SERIOUS\"",1,0,50,0,0,0,0,0,"",-1,0]],[[351.598388671875,-88,0,56,191.19677734375,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,10128,[[-1],[0],[0],[0],[0],[1],[1]],[[0],[1,0,1,1,"F 1208",4000,0,100,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1528,1080,0,32,8,0,0,1,0,0,0,0,[]],45,10127,[],[[0],[1]],[0,0]],[[629,-368,0,2728,688,0,0,1,0,0,0,0,[]],67,7213,[],[[1]],[0,0]],[[2688,1024,0,992,1128,0,1.570796370506287,1,0,0,0,0,[]],51,7214,[],[[0],[1],[1,100,""]],[0,0]]],[]],["UI",1,891241875722709,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[240,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3097,[["right"]],[[0,1,0,1,1]],[0,"Default",0,1]],[[80,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3098,[["left"]],[[0,1,0,1,1]],[0,"Default",1,1]],[[560,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3099,[["up"]],[[1,1,1,1,1]],[0,"Default",3,1]],[[400,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3100,[["down"]],[[1,1,1,1,1]],[0,"Default",2,1]]],[]],["End Card",2,350829626299810,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],78,2607,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[12.04449462890625,194,0,615.9109497070313,67,0,0,1,0,0,0,0,[]],79,2608,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Timer for this level",2.5,0,0,0,0,0,-10,0,"",-1,0]],[[17.546875,248,0,604.90625,105,0,0,1,0,0,0,0,[]],80,2610,[[0],[0],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","13:40:40",4,0,63,50,0,0,-10,0,"",-1,0]],[[115.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,2611,[[0],[1],[0],[0],["replay"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Replay",""],[""],[2,2,0,0,0],["",""]],[0,"Replay",0,1]],[[524.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3086,[[0],[1],[0],[0],["next"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Next",""],[""],[2,2,0,0,0],["",""]],[0,"Next",0,1]],[[320.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3087,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > Back","Level Menu"],[""],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[320.75,521.8050537109375,0,384,96,0,0,1,0.5,0.5,0,0,[]],70,3088,[[1],[1],[0],[0],[""],["{\"size\": 22, \"left\": 70, \"right\": 18, \"alignY\": 60}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > DownloadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"DownloadReplay",0,1]]],[]],["Pause",3,212459658277293,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-310,678,0,274,31,0,0,1,0,0,0,0,[]],168,3089,[],[],[".ovo",0,1,"file"]],[[320,320,0,425,250,0,0,1,0.5,0.5,0,0,[]],82,3090,[],[[6,1,"",300,1,1,"",300,"overlay",1,"PauseClose",1,1]],[0,"Default",0,1]],[[214,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3091,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"",""],["PauseClose"],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[426,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3092,[[0],[1],[0],[0],["quit"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > GiveUp",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[115.5,202,0,409,118,0,0,1,0,0,0,0,[]],83,3093,[[1],[1],["pause"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Pause",4,0,57,50,0,0,-10,0,"",-1,0]],[[320.5,88,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3094,[[1],[1],[0],[0],["loadreplay"],["{\"size\": 16, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > LoadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"LoadReplay",0,1]],[[320.5,157,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3095,[[1],[0],[0],[0],["toggledebug"],["{\"size\": 15, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Debug > Toggle",""],[""],[2,2,0,0,0],["",""]],[0,"ToggleDebug",0,1]],[[78,448,0,484,134,0,0,1,0,0,0,0,[]],193,3096,[],[],[0,"Default",0,1]]],[]],["Overlay",4,744199227563282,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[432,4,0,203.0009155273438,64,0,0,1,0,0,0,0,[]],107,5488,[],[[1,0,1,0,1]],[2,2,2,2,0,1,0,0,1]],[[432,4,0,203,64,0,0,1,0,0,0,0,[]],84,3101,[[0],[0],[""],["en-us"],[0],[1],[1],["{\"alignY\": 85, \"alignX\": 45, \"size\": 28}"],[0],[1],[0],[0],[0]],[["",""],[1,0,1,0,1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",2,0,100,50,0,0,-10,0,"",-1,0]],[[88,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3102,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Pause",""],[""],[0,0,0,0,1],["",""]],[0,"Pause",0,1]],[[158,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3103,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Replay","1"],[""],[0,0,0,0,1],["",""]],[0,"Reload",0,1]]],[]],["End Game",5,407192141310827,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],85,3104,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[73,194,0,494,72,0,0,1,0,0,0,0,[]],86,3105,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],["{alignY:50}"],[0],[1],[0],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Your final time",2.5,0,50,50,0,0,-10,0,"",-1,0]],[[320,403,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3106,[[0],[1],[0],[0],[""],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Quit",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[73,243,0,494,85,0,0,1,0,0,0,0,[]],87,3108,[[0],[1],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",3,0,50,50,0,0,-10,0,"",-1,0]],[[73,318,0,494,25,0,0,1,0,0,0,0,[]],86,5480,[[1],[1],["tryagainhardmode"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Try again in hard mode!",1,0,50,50,0,0,-2,0,"",-1,0]]],[]],["Banner",6,327063105647373,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-237,-189,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,3109,[],[["overlay"]],[0,"Default",0,1]]],[]],["AdPlaying",7,376322219529072,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,-203.5,0,250,97,0,0,1,0.5,0.5,0,0,[]],125,390,[],[[6,1,"",300,1,1,"",300,"overlay",1,"",1,1],[]],[0,"Default",0,1]],[[209,-275,0,222,139,0,0,1,0,0,0,0,[]],86,391,[[1],[1],["adplaying"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","An ad is playing right now...",1.2,0,50,50,0,0,-2,0,"",-1,0]],[[-154.5756988525391,-294.3137512207031,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,5508,[],[["overlay"]],[0,"Default",0,1]]],[]]],[],[]],["Level 10",3000,4000,true,"Levels",846970745293055,[["Background",0,257622040673604,true,[255,255,255],false,0,0,1,false,false,1,0,0,[],[]],["Layer 0",1,844485161018850,true,[255,255,255],true,1,1,1,false,false,1,0,0,[[[840,592,0,32,64,0,0,1,0.5,0.5,0,0,[]],42,1055,[["run"],[0],[1],[1],[0],[0.8],[0.5],[0],[1],[0],[0],[0],["ovo+"],[2],[0],[0],[0],[""],[0],[3],[0],[0],[0],[0],[0],[0],[0]],[[330,1500,1500,650,1500,1000,1,0,0,1],[],[1,0],[0,10000,360,1]],[1,"Default",0,1]],[[802,462,0,60.93439102172852,60.93439102172852,0,0,1,0.5,0.5,0,0,[]],53,1056,[["A matter of strengh"],[""],[0]],[],[1,"Default",0,1]],[[320,1664,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1057,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[744,232,0,1024,752,0,1.570796370506287,1,0,0,0,0,[]],51,1067,[],[[0],[1],[1,100,""]],[0,0]],[[735,720,0,441,552,0,0,1,0,0,0,0,[]],51,1069,[],[[0],[1],[1,100,""]],[0,0]],[[1179,699,0,32,32,0,-0.5235991477966309,1,0.5,0.5,0,0,[]],47,1171,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[264,696,0,97,199,0,0,1,0.5257731676101685,0.4974874258041382,0,0,[]],44,1178,[],[[0]],[0,"Default",0,1]],[[1768,483,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,1058,[[0.42],[0]],[[0]],[0,"Default",0,1]],[[1360,609,0,88,680,0,0,1,0,0,0,0,[]],51,1060,[],[[0],[1],[1,100,""]],[0,0]],[[1656.715454101563,1114.964599609375,0,504,584,0,2.617993831634522,1,0,0,0,0,[]],51,1059,[],[[0],[1],[1,100,""]],[0,0]],[[1206,683,0,32,32,0,-0.5235991477966309,1,0.5,0.5,0,0,[]],47,1061,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1233,667,0,32,32,0,-0.5235991477966309,1,0.5,0.5,0,0,[]],47,1062,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1260,652,0,32,32,0,-0.5235991477966309,1,0.5,0.5,0,0,[]],47,1063,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1286,637,0,32,32,0,-0.5235991477966309,1,0.5,0.5,0,0,[]],47,1064,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1314,621,0,32,32,0,-0.5235991477966309,1,0.5,0.5,0,0,[]],47,1065,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1410,609,0,90,424,0,0,1,0,0,0,0,[]],51,1068,[],[[0],[1],[1,100,""]],[0,0]],[[1503,588,0,32,32,0,-0.5235991477966309,1,0.5,0.5,0,0,[]],47,1070,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1468,593,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,1071,[[0.5],[0]],[[0]],[0,"Default",0,1]],[[1684,498,0,88,424,0,0,1,0,0,0,0,[]],51,1072,[],[[0],[1],[1,100,""]],[0,0]],[[1864.5,803.0468139648438,0,376,352,0,2.617993831634522,1,0,0,0,0,[]],51,1073,[],[[0],[1],[1,100,""]],[0,0]],[[1530,572,0,32,32,0,-0.5235991477966309,1,0.5,0.5,0,0,[]],47,1074,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1557,556,0,32,32,0,-0.5235991477966309,1,0.5,0.5,0,0,[]],47,1080,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1584,541,0,32,32,0,-0.5235991477966309,1,0.5,0.5,0,0,[]],47,1081,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1610,526,0,32,32,0,-0.5235991477966309,1,0.5,0.5,0,0,[]],47,1082,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1638,510,0,32,32,0,-0.5235991477966309,1,0.5,0.5,0,0,[]],47,1083,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1715,498,0,90,424,0,0,1,0,0,0,0,[]],51,1085,[],[[0],[1],[1,100,""]],[0,0]],[[1808,477,0,32,32,0,-0.5235991477966309,1,0.5,0.5,0,0,[]],47,1086,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1128,704,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,1168,[[0.68],[0]],[[0]],[0,"Default",0,1]],[[1991,388,0,184,424,0,0,1,0,0,0,0,[]],51,1169,[],[[0],[1],[1,100,""]],[0,0]],[[2169.5,692.0468139648438,0,376,352,0,2.617993831634522,1,0,0,0,0,[]],51,1170,[],[[0],[1],[1,100,""]],[0,0]],[[1835,461,0,32,32,0,-0.5235991477966309,1,0.5,0.5,0,0,[]],47,1172,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1862,445,0,32,32,0,-0.5235991477966309,1,0.5,0.5,0,0,[]],47,1173,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1889,430,0,32,32,0,-0.5235991477966309,1,0.5,0.5,0,0,[]],47,1174,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1915,415,0,32,32,0,-0.5235991477966309,1,0.5,0.5,0,0,[]],47,1175,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1943,399,0,32,32,0,-0.5235991477966309,1,0.5,0.5,0,0,[]],47,1176,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1720,435,0,74,20,0,0,1,0,0,0,0,[]],46,1066,[[1],[1],[""],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Weak",1,0,50,0,0,0,0,0,"",-1,0]],[[1072,656,0,101,20,0,0,1,0,0,0,0,[]],46,1084,[[1],[1],[""],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Strong",1,0,50,0,0,0,0,0,"",-1,0]],[[1391,552,0,103,20,0,0,1,0,0,0,0,[]],46,1177,[[1],[1],[""],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Normal",1,0,50,0,0,0,0,0,"",-1,0]],[[738,232,0,1571.99365234375,9,0,0,1,0,0,0,0,[]],51,1179,[],[[0],[1],[1,100,""]],[0,0]],[[776,256,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1180,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[808,256,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1181,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[840,256,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1182,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[872,256,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1395,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[904,256,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1396,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[936,256,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1397,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[968,256,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1398,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1000,256,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1399,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[872,256,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1400,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[840,256,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1401,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1032,256,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1403,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1064,256,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1428,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1096,256,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1511,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1128,256,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1608,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1160,256,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1609,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1192,256,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1610,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1224,256,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1611,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1256,256,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1612,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1128,256,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1613,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1096,256,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1614,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1288,256,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1615,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1320,256,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1616,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1352,256,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1617,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1384,256,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1618,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1416,256,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1619,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1448,256,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1620,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1480,256,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1621,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1512,256,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1639,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1384,256,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1640,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1352,256,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1642,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1544,256,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1643,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1576,256,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1644,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1608,256,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1645,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1640,256,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1647,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1672,256,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1649,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1704,256,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1650,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1736,256,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1651,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1768,256,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1652,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1768,344,0,168,48,0,0,1,0,0,0,0,[]],46,1656,[[1],[1],[""],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","(Sliding increases velocity)",1,0,50,0,0,0,0,0,"",-1,0]],[[797.8233032226563,310.3528442382813,0,64,64,0,0,1,0.5,0.5,0,0,[]],60,1657,[["level10"]],[[0],[400,-200,800,0,0,0],[0,0,0,1,1]],[0,"Default",0,1]],[[2310.059326171875,234.0652465820313,0,408,9,0,1.570796370506287,1,0,0,0,0,[]],51,1658,[],[[0],[1],[1,100,""]],[0,0]],[[2175,392,0,592,176,0,1.570796370506287,1,0,0,0,0,[]],51,1659,[],[[0],[1],[1,100,""]],[0,0]],[[2312,752,0,224,9,0,1.570796370506287,1,0,0,0,0,[]],51,1661,[],[[0],[1],[1,100,""]],[0,0]],[[2024,976,0,288,384,0,0,1,0,0,0,0,[]],51,1662,[],[[0],[1],[1,100,""]],[0,0]],[[2192,960,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1663,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[2224,960,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1664,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[2256,960,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1665,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[2191,688,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],43,1667,[[0.45],[0]],[[0]],[0,"Default",0,1]],[[2432,1040,0,16,16,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,1668,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2288,768,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,1670,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[2288,800,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,1671,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[2288,832,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,1672,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[2288,864,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,1673,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[2288,896,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,1674,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[2288,928,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,1666,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[2288,960,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,1675,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[2288,584,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,1676,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2288,616,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,1677,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2288,520,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,1678,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2288,552,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,1679,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2288,456,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,1680,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2288,488,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,1681,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2288,392,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,1682,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2288,424,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,1683,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2268,328,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,1684,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2268,360,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,1685,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2268,264,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,1686,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2268,296,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,1687,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2304,752,0,560,608,0,0,1,0,0,0,0,[]],51,1688,[],[[0],[1],[1,100,""]],[0,0]],[[2304,634,0,448,9,0,0,1,0,0,0,0,[]],51,1689,[],[[0],[1],[1,100,""]],[0,0]],[[2752,232,0,408,9,0,1.570796370506287,1,0,0,0,0,[]],51,1669,[],[[0],[1],[1,100,""]],[0,0]],[[3415,0,0,1336,560,0,1.570796370506287,1,0,0,0,0,[]],51,1690,[],[[0],[1],[1,100,""]],[0,0]],[[2304,232,0,448,408,0,0,1,0,0,0,0,[]],51,1691,[],[[0],[1],[1,100,""]],[0,0]],[[2048,784,0,592,704,0,1.570796370506287,1,0,0,0,0,[]],51,1692,[],[[0],[1],[1,100,""]],[0,0]],[[728,136,0,97,199,0,0,1,0.5257731676101685,0.4974874258041382,0,0,[]],44,1693,[],[[0]],[0,"Default",0,1]],[[2808,736,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,1697,[[0.4],[0]],[[0]],[0,"Default",0,1]],[[2776,616,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,1698,[[0.4],[0]],[[0]],[0,"Default",0,1]],[[2832,496,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,1699,[[0.4],[0]],[[0]],[0,"Default",0,1]],[[2800,288,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,1700,[[0.4],[0]],[[0]],[0,"Default",0,1]],[[2400,736,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1694,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2696,736,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1695,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2544,736,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,1696,[[0.1],[0]],[[0]],[0,"Default",0,1]],[[2544,658,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1701,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[-8,-568,0,3432,568,0,0,1,0,0,0,0,[]],51,1702,[],[[0],[1],[1,100,""]],[0,0]],[[640,-648,0,2040,1392,0,1.570796370506287,1,0,0,0,0,[]],51,1703,[],[[0],[1],[1,100,""]],[0,0]],[[3432,1088.000244140625,0,1024,4184,0,1.570796370506287,1,0,0,0,0,[]],51,1655,[],[[0],[1],[1,100,""]],[0,0]],[[2632,192,0,32,32,0,-0.7853984832763672,1,0.5,0.5,0,0,[]],43,1704,[[0.6],[0]],[[0]],[0,"Default",0,1]],[[2360,80,0,32,32,0,-1.08128023147583,1,0.5,0.5,0,0,[]],43,1705,[[1],[0]],[[0]],[0,"Default",0,1]],[[2592,216,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1706,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2560,216,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1707,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2528,216,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1708,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2496,216,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1709,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2464,216,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1710,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[2432,216,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1711,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[2304,104,0,128,8,0,1.570796370506287,1,0,0,0,0,[]],51,1712,[],[[0],[1],[1,100,""]],[0,0]],[[2280,120,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,1714,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[2280,152,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,1713,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2280,184,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,1715,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2280,216,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,1716,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2320,120,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,1717,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[2320,152,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,1718,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2320,184,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,1719,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2320,216,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,1720,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2592,16,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1721,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2560,16,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1722,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2528,16,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1723,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2496,16,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1724,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2464,16,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1725,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[2432,16,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1726,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[2032,216,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,1727,[[0.5],[0]],[[0]],[0,"Default",0,1]],[[2000,216,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,1729,[[0.5],[0]],[[0]],[0,"Default",0,1]],[[1968,216,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,1731,[[0.5],[0]],[[0]],[0,"Default",0,1]],[[1936,216,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,1733,[[0.5],[0]],[[0]],[0,"Default",0,1]],[[1904,216,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,1734,[[0.5],[0]],[[0]],[0,"Default",0,1]],[[1872,216,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,1735,[[0.5],[0]],[[0]],[0,"Default",0,1]],[[1840,216,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,1736,[[0.5],[0]],[[0]],[0,"Default",0,1]],[[1808,216,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,1737,[[0.5],[0]],[[0]],[0,"Default",0,1]],[[1776,216,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,1738,[[0.5],[0]],[[0]],[0,"Default",0,1]],[[1752,216,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,1739,[[0.5],[0]],[[0]],[0,"Default",0,1]],[[1720,216,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,1740,[[0.5],[0]],[[0]],[0,"Default",0,1]],[[1688,216,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,1741,[[0.5],[0]],[[0]],[0,"Default",0,1]],[[1656,216,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,1742,[[0.5],[0]],[[0]],[0,"Default",0,1]],[[1624,216,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,1743,[[0.5],[0]],[[0]],[0,"Default",0,1]],[[1592,216,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,1744,[[0.5],[0]],[[0]],[0,"Default",0,1]],[[1560,216,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,1745,[[0.5],[0]],[[0]],[0,"Default",0,1]],[[1528,216,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,1746,[[0.5],[0]],[[0]],[0,"Default",0,1]],[[1496,216,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,1747,[[0.5],[0]],[[0]],[0,"Default",0,1]],[[2032,16,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],43,1748,[[0.5],[0]],[[0]],[0,"Default",0,1]],[[2000,16,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],43,1749,[[0.5],[0]],[[0]],[0,"Default",0,1]],[[1968,16,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],43,1750,[[0.5],[0]],[[0]],[0,"Default",0,1]],[[1936,16,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],43,1751,[[0.5],[0]],[[0]],[0,"Default",0,1]],[[1904,16,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],43,1752,[[0.5],[0]],[[0]],[0,"Default",0,1]],[[1872,16,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],43,1753,[[0.5],[0]],[[0]],[0,"Default",0,1]],[[1840,16,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],43,1754,[[0.5],[0]],[[0]],[0,"Default",0,1]],[[1808,16,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],43,1755,[[0.5],[0]],[[0]],[0,"Default",0,1]],[[1776,16,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],43,1756,[[0.5],[0]],[[0]],[0,"Default",0,1]],[[1752,16,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],43,1757,[[0.5],[0]],[[0]],[0,"Default",0,1]],[[1720,16,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],43,1758,[[0.5],[0]],[[0]],[0,"Default",0,1]],[[1688,16,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],43,1759,[[0.5],[0]],[[0]],[0,"Default",0,1]],[[1656,16,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],43,1760,[[0.5],[0]],[[0]],[0,"Default",0,1]],[[1624,16,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],43,1761,[[0.5],[0]],[[0]],[0,"Default",0,1]],[[1592,16,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],43,1762,[[0.5],[0]],[[0]],[0,"Default",0,1]],[[1560,16,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],43,1763,[[0.5],[0]],[[0]],[0,"Default",0,1]],[[1528,16,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],43,1764,[[0.5],[0]],[[0]],[0,"Default",0,1]],[[1496,16,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],43,1765,[[0.5],[0]],[[0]],[0,"Default",0,1]],[[1448,216,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1728,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1416,216,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1730,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1384,216,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1732,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1352,216,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1766,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1320,216,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1767,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[1288,216,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1768,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[1256,216,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1769,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[1224,216,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1770,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[1192,216,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1771,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[872,456,0,288,117,0,0,1,0,0,0,0,[[]]],61,1772,[],[[1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>","1",7,0,55,0,0,0,0,0,"",-1,0]],[[2176,392,0,104,48,0,0,1,0,0,0,0,[]],46,1053,[[1],[1],[""],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Trust",1,0,50,0,0,0,0,0,"",-1,0]],[[2280,240,0,80,136,0,0,1,0,0,0,0,[]],51,1402,[],[[0],[1],[1,100,""]],[0,0]],[[1509,106,0,120,48,0,0,1,0,0,0,0,[]],46,2604,[[0],[0],[""],["en-us"],[0],[0],[1],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Smash !",1,0,50,0,0,0,0,0,"",-1,0]]],[]],["UI",2,700674017445967,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[240,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3097,[["right"]],[[0,1,0,1,1]],[0,"Default",0,1]],[[80,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3098,[["left"]],[[0,1,0,1,1]],[0,"Default",1,1]],[[560,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3099,[["up"]],[[1,1,1,1,1]],[0,"Default",3,1]],[[400,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3100,[["down"]],[[1,1,1,1,1]],[0,"Default",2,1]]],[]],["End Card",3,889716494040923,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],78,2607,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[12.04449462890625,194,0,615.9109497070313,67,0,0,1,0,0,0,0,[]],79,2608,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Timer for this level",2.5,0,0,0,0,0,-10,0,"",-1,0]],[[17.546875,248,0,604.90625,105,0,0,1,0,0,0,0,[]],80,2610,[[0],[0],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","13:40:40",4,0,63,50,0,0,-10,0,"",-1,0]],[[115.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,2611,[[0],[1],[0],[0],["replay"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Replay",""],[""],[2,2,0,0,0],["",""]],[0,"Replay",0,1]],[[524.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3086,[[0],[1],[0],[0],["next"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Next",""],[""],[2,2,0,0,0],["",""]],[0,"Next",0,1]],[[320.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3087,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > Back","Level Menu"],[""],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[320.75,521.8050537109375,0,384,96,0,0,1,0.5,0.5,0,0,[]],70,3088,[[1],[1],[0],[0],[""],["{\"size\": 22, \"left\": 70, \"right\": 18, \"alignY\": 60}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > DownloadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"DownloadReplay",0,1]]],[]],["Pause",4,650004376554499,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-310,678,0,274,31,0,0,1,0,0,0,0,[]],168,3089,[],[],[".ovo",0,1,"file"]],[[320,320,0,425,250,0,0,1,0.5,0.5,0,0,[]],82,3090,[],[[6,1,"",300,1,1,"",300,"overlay",1,"PauseClose",1,1]],[0,"Default",0,1]],[[214,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3091,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"",""],["PauseClose"],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[426,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3092,[[0],[1],[0],[0],["quit"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > GiveUp",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[115.5,202,0,409,118,0,0,1,0,0,0,0,[]],83,3093,[[1],[1],["pause"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Pause",4,0,57,50,0,0,-10,0,"",-1,0]],[[320.5,88,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3094,[[1],[1],[0],[0],["loadreplay"],["{\"size\": 16, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > LoadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"LoadReplay",0,1]],[[320.5,157,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3095,[[1],[0],[0],[0],["toggledebug"],["{\"size\": 15, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Debug > Toggle",""],[""],[2,2,0,0,0],["",""]],[0,"ToggleDebug",0,1]],[[78,448,0,484,134,0,0,1,0,0,0,0,[]],193,3096,[],[],[0,"Default",0,1]]],[]],["Overlay",5,192896149637831,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[432,4,0,203.0009155273438,64,0,0,1,0,0,0,0,[]],107,5488,[],[[1,0,1,0,1]],[2,2,2,2,0,1,0,0,1]],[[432,4,0,203,64,0,0,1,0,0,0,0,[]],84,3101,[[0],[0],[""],["en-us"],[0],[1],[1],["{\"alignY\": 85, \"alignX\": 45, \"size\": 28}"],[0],[1],[0],[0],[0]],[["",""],[1,0,1,0,1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",2,0,100,50,0,0,-10,0,"",-1,0]],[[88,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3102,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Pause",""],[""],[0,0,0,0,1],["",""]],[0,"Pause",0,1]],[[158,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3103,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Replay","1"],[""],[0,0,0,0,1],["",""]],[0,"Reload",0,1]]],[]],["End Game",6,232879213286124,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],85,3104,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[73,194,0,494,72,0,0,1,0,0,0,0,[]],86,3105,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],["{alignY:50}"],[0],[1],[0],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Your final time",2.5,0,50,50,0,0,-10,0,"",-1,0]],[[320,403,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3106,[[0],[1],[0],[0],[""],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Quit",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[73,243,0,494,85,0,0,1,0,0,0,0,[]],87,3108,[[0],[1],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",3,0,50,50,0,0,-10,0,"",-1,0]],[[73,318,0,494,25,0,0,1,0,0,0,0,[]],86,5480,[[1],[1],["tryagainhardmode"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Try again in hard mode!",1,0,50,50,0,0,-2,0,"",-1,0]]],[]],["Banner",7,373746071383182,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-237,-189,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,3109,[],[["overlay"]],[0,"Default",0,1]]],[]],["AdPlaying",8,122991153239243,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,-203.5,0,250,97,0,0,1,0.5,0.5,0,0,[]],125,390,[],[[6,1,"",300,1,1,"",300,"overlay",1,"",1,1],[]],[0,"Default",0,1]],[[209,-275,0,222,139,0,0,1,0,0,0,0,[]],86,391,[[1],[1],["adplaying"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","An ad is playing right now...",1.2,0,50,50,0,0,-2,0,"",-1,0]],[[-154.5756988525391,-294.3137512207031,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,5508,[],[["overlay"]],[0,"Default",0,1]]],[]]],[],[]],["Level 11",3000,4000,true,"Levels",480542536020384,[["Background",0,233015736697820,true,[255,255,255],false,0,0,1,false,false,1,0,0,[[[78,52,0,60.93439102172852,60.93439102172852,0,0,1,0.5,0.5,0,0,[]],53,5512,[["Reactivity"],[""],[0]],[],[1,"Default",0,1]]],[]],["Layer 0",1,152401859229350,true,[255,255,255],true,1,1,1,false,false,1,0,0,[[[296,352,0,32,64,0,0,1,0.5,0.5,0,0,[]],42,2804,[["run"],[0],[1],[1],[0],[0.8],[0.5],[0],[1],[0],[0],[0],["ovo+"],[2],[0],[0],[0],[""],[0],[3],[0],[0],[0],[0],[0],[0],[0]],[[330,1500,1500,650,1500,1000,1,0,0,1],[],[1,0],[0,10000,360,1]],[1,"Default",0,1]],[[928,294,0,97,199,0,0,1,0.5257731676101685,0.4974874258041382,0,0,[]],44,2805,[],[[0]],[0,"Default",0,1]],[[336,192,0,288,117,0,0,1,0,0,0,0,[[]]],61,2806,[],[[1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>","1",7,0,55,0,0,0,0,0,"",-1,0]],[[664,416.0000305175781,0,8,472,0,1.570796370506287,1,0,0,0,0,[]],51,7171,[],[[0],[1],[1,100,""]],[0,0]],[[488,400,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7172,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[520,400,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7173,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[552,384,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7174,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[584,368,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7175,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[616,384,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7176,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[648,400,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7177,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[600,384,0,32,32,0,1.570796370506287,1,0,0,0,0,[]],51,7179,[],[[0],[1],[1,100,""]],[0,0]],[[632,400,0,24,32,0,1.570796370506287,1,0,0,0,0,[]],51,7180,[],[[0],[1],[1,100,""]],[0,0]],[[568,400,0,24,32,0,1.570796370506287,1,0,0,0,0,[]],51,7181,[],[[0],[1],[1,100,""]],[0,0]],[[824,152,0,8,712,0,0,1,0,0,0,0,[]],51,7183,[],[[0],[1],[1,100,""]],[0,0]],[[832,696,0,8,368,0,1.570796370506287,1,0,0,0,0,[]],51,7184,[],[[0],[1],[1,100,""]],[0,0]],[[328,696,0,784,136,0,1.570796370506287,1,0,0,0,0,[]],51,7185,[],[[0],[1],[1,100,""]],[0,0]],[[-682,-511,0,882,1999,0,0,1,0,0,0,0,[]],51,7186,[],[[0],[1],[1,100,""]],[0,0]],[[656,416,0,8,240,0,0,1,0,0,0,0,[]],51,7187,[],[[0],[1],[1,100,""]],[0,0]],[[544,680,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7188,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[512,680,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7189,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[480,680,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7190,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[312,680,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7191,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[280,680,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7192,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[248,680,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7193,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[216,680,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7194,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[408,584,0,88,24,0,1.570796370506287,1,0,0,0,0,[]],46,7195,[[0],[1],[""],["en-us"],[0],[0],[1],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","---->",1,0,50,0,0,0,0,0,"",-1,0]],[[456,400,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7196,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[320,696,0,8,312,0,0,1,0,0,0,0,[]],51,7199,[],[[0],[1],[1,100,""]],[0,0]],[[464,696,0,8,104,0,0,1,0,0,0,0,[]],51,7200,[],[[0],[1],[1,100,""]],[0,0]],[[1016,1008,0,472,696,0,1.570796370506287,1,0,0,0,0,[]],51,7201,[],[[0],[1],[1,100,""]],[0,0]],[[528,992,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,7202,[[0.55],[0]],[[0]],[0,"Default",0,1]],[[808,784,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,7203,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[808,816,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,7204,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[808,848,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,7205,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[808,752,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,7209,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[808,720,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,7210,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[464,792,0,8,176,0,0,1,0,0,0,0,[]],51,7208,[],[[0],[1],[1,100,""]],[0,0]],[[1016,152,0,704,1328,0,0,1,0,0,0,0,[]],51,7207,[],[[0],[1],[1,100,""]],[0,0]],[[400,464,0,48,48,0,0,1,0.5,0.5,0,0,[]],60,3265,[["level11"]],[[1],[400,-200,800,0,0,0],[0,0,0,1,1]],[0,"Default",0,1]],[[1664,-623.9999389648438,0,776,1976,0,1.570796370506287,1,0,0,0,0,[]],51,10018,[],[[0],[1],[1,100,""]],[0,0]],[[424,400,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7197,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[832,392,0,184,8,0,0,1,0,0,0,0,[]],45,7198,[],[[0],[1]],[0,0]],[[688,992,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7206,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[656,992,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7211,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[624,992,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7212,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[968,992,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,7178,[[0.45],[0]],[[0]],[0,"Default",0,1]],[[872,856,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,7216,[[0.4],[0]],[[0]],[0,"Default",0,1]],[[968,768,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,7217,[[0.5],[0]],[[0]],[0,"Default",0,1]],[[872,632,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7218,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[888,608,0,8,32,0,1.570796370506287,1,0,0,0,0,[]],51,7219,[],[[0],[1],[1,100,""]],[0,0]],[[960,464,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7220,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[976,440,0,8,32,0,1.570796370506287,1,0,0,0,0,[]],51,7221,[],[[0],[1],[1,100,""]],[0,0]],[[968,808,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7222,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[984,784,0,8,32,0,1.570796370506287,1,0,0,0,0,[]],51,7223,[],[[0],[1],[1,100,""]],[0,0]],[[872,592,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,7224,[[0.4],[0]],[[0]],[0,"Default",0,1]],[[872,896,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10131,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[888,872,0,8,32,0,1.570796370506287,1,0,0,0,0,[]],51,10132,[],[[0],[1],[1,100,""]],[0,0]]],[]],["UI",2,771787376005090,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[240,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3097,[["right"]],[[0,1,0,1,1]],[0,"Default",0,1]],[[80,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3098,[["left"]],[[0,1,0,1,1]],[0,"Default",1,1]],[[560,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3099,[["up"]],[[1,1,1,1,1]],[0,"Default",3,1]],[[400,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3100,[["down"]],[[1,1,1,1,1]],[0,"Default",2,1]]],[]],["End Card",3,380094672736044,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],78,2607,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[12.04449462890625,194,0,615.9109497070313,67,0,0,1,0,0,0,0,[]],79,2608,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Timer for this level",2.5,0,0,0,0,0,-10,0,"",-1,0]],[[17.546875,248,0,604.90625,105,0,0,1,0,0,0,0,[]],80,2610,[[0],[0],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","13:40:40",4,0,63,50,0,0,-10,0,"",-1,0]],[[115.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,2611,[[0],[1],[0],[0],["replay"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Replay",""],[""],[2,2,0,0,0],["",""]],[0,"Replay",0,1]],[[524.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3086,[[0],[1],[0],[0],["next"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Next",""],[""],[2,2,0,0,0],["",""]],[0,"Next",0,1]],[[320.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3087,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > Back","Level Menu"],[""],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[320.75,521.8050537109375,0,384,96,0,0,1,0.5,0.5,0,0,[]],70,3088,[[1],[1],[0],[0],[""],["{\"size\": 22, \"left\": 70, \"right\": 18, \"alignY\": 60}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > DownloadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"DownloadReplay",0,1]]],[]],["Pause",4,939870968870902,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-310,678,0,274,31,0,0,1,0,0,0,0,[]],168,3089,[],[],[".ovo",0,1,"file"]],[[320,320,0,425,250,0,0,1,0.5,0.5,0,0,[]],82,3090,[],[[6,1,"",300,1,1,"",300,"overlay",1,"PauseClose",1,1]],[0,"Default",0,1]],[[214,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3091,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"",""],["PauseClose"],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[426,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3092,[[0],[1],[0],[0],["quit"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > GiveUp",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[115.5,202,0,409,118,0,0,1,0,0,0,0,[]],83,3093,[[1],[1],["pause"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Pause",4,0,57,50,0,0,-10,0,"",-1,0]],[[320.5,88,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3094,[[1],[1],[0],[0],["loadreplay"],["{\"size\": 16, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > LoadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"LoadReplay",0,1]],[[320.5,157,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3095,[[1],[0],[0],[0],["toggledebug"],["{\"size\": 15, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Debug > Toggle",""],[""],[2,2,0,0,0],["",""]],[0,"ToggleDebug",0,1]],[[78,448,0,484,134,0,0,1,0,0,0,0,[]],193,3096,[],[],[0,"Default",0,1]]],[]],["Overlay",5,436790901652721,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[432,4,0,203.0009155273438,64,0,0,1,0,0,0,0,[]],107,5488,[],[[1,0,1,0,1]],[2,2,2,2,0,1,0,0,1]],[[432,4,0,203,64,0,0,1,0,0,0,0,[]],84,3101,[[0],[0],[""],["en-us"],[0],[1],[1],["{\"alignY\": 85, \"alignX\": 45, \"size\": 28}"],[0],[1],[0],[0],[0]],[["",""],[1,0,1,0,1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",2,0,100,50,0,0,-10,0,"",-1,0]],[[88,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3102,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Pause",""],[""],[0,0,0,0,1],["",""]],[0,"Pause",0,1]],[[158,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3103,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Replay","1"],[""],[0,0,0,0,1],["",""]],[0,"Reload",0,1]]],[]],["End Game",6,590534977849416,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],85,3104,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[73,194,0,494,72,0,0,1,0,0,0,0,[]],86,3105,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],["{alignY:50}"],[0],[1],[0],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Your final time",2.5,0,50,50,0,0,-10,0,"",-1,0]],[[320,403,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3106,[[0],[1],[0],[0],[""],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Quit",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[73,243,0,494,85,0,0,1,0,0,0,0,[]],87,3108,[[0],[1],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",3,0,50,50,0,0,-10,0,"",-1,0]],[[73,318,0,494,25,0,0,1,0,0,0,0,[]],86,5480,[[1],[1],["tryagainhardmode"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Try again in hard mode!",1,0,50,50,0,0,-2,0,"",-1,0]]],[]],["Banner",7,582071967407001,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-237,-189,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,3109,[],[["overlay"]],[0,"Default",0,1]]],[]],["AdPlaying",8,210382089210610,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,-203.5,0,250,97,0,0,1,0.5,0.5,0,0,[]],125,390,[],[[6,1,"",300,1,1,"",300,"overlay",1,"",1,1],[]],[0,"Default",0,1]],[[209,-275,0,222,139,0,0,1,0,0,0,0,[]],86,391,[[1],[1],["adplaying"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","An ad is playing right now...",1.2,0,50,50,0,0,-2,0,"",-1,0]],[[-154.5756988525391,-294.3137512207031,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,5508,[],[["overlay"]],[0,"Default",0,1]]],[]]],[],[]],["Level 12",3000,4000,true,"Levels",867437975508354,[["Background",0,650173989809824,true,[255,255,255],false,0,0,1,false,false,1,0,0,[],[]],["Layer 0",1,484220660090308,true,[255,255,255],true,1,1,1,false,false,1,0,0,[[[1032,856,0,32,64,0,0,1,0.5,0.5,0,0,[]],42,5899,[["run"],[0],[1],[1],[0],[0.8],[0.5],[0],[1],[0],[0],[0],["ovo+"],[2],[0],[0],[0],[""],[0],[3],[0],[0],[0],[0],[0],[0],[0]],[[330,1500,1500,650,1500,1000,1,0,0,1],[],[1,0],[0,10000,360,1]],[1,"Default",0,1]],[[288,-96,0,60.93439102172852,60.93439102172852,0,0,1,0.5,0.5,0,0,[]],53,5915,[["A little Wall maze"],[""],[0]],[],[1,"Default",0,1]],[[320,1664,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,5916,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3143,-407.9999389648438,0,1968,1232,0,1.570796370506287,1,0,0,0,0,[]],51,5918,[],[[0],[1],[1,100,""]],[0,0]],[[976,-383,0,944,640,0,0,1,0,0,0,0,[]],51,5919,[],[[0],[1],[1,100,""]],[0,0]],[[984.0000610351563,-400,0,1936,752,0,1.570796370506287,1,0,0,0,0,[]],51,5920,[],[[0],[1],[1,100,""]],[0,0]],[[976,976,0,944,552,0,0,1,0,0,0,0,[]],51,5921,[],[[0],[1],[1,100,""]],[0,0]],[[976,496,0,832,11,0,0,1,0,0,0,0,[]],51,5922,[],[[0],[1],[1,100,""]],[0,0]],[[1096,664,0,320,9,0,1.570796370506287,1,0,0,0,0,[]],51,5917,[],[[0],[1],[1,100,""]],[0,0]],[[1272,688,0,288,9,0,1.570796370506287,1,0,0,0,0,[]],51,5923,[],[[0],[1],[1,100,""]],[0,0]],[[1192,504,0,224,9,0,1.570796370506287,1,0,0,0,0,[]],51,5924,[],[[0],[1],[1,100,""]],[0,0]],[[1360,584,0,192,9,0,1.570796370506287,1,0,0,0,0,[]],51,5925,[],[[0],[1],[1,100,""]],[0,0]],[[1440,728,0,160,9,0,1.570796370506287,1,0,0,0,0,[]],51,5926,[],[[0],[1],[1,100,""]],[0,0]],[[1568,608,0,120,9,0,1.570796370506287,1,0,0,0,0,[]],51,5927,[],[[0],[1],[1,100,""]],[0,0]],[[1632,888,0,72,9,0,0,1,0,0,0,0,[]],51,5929,[],[[0],[1],[1,100,""]],[0,0]],[[1911,808,0,168,128,0,1.570796370506287,1,0,0,0,0,[]],51,5930,[],[[0],[1],[1,100,""]],[0,0]],[[1816,496,0,192,9,0,1.570796370506287,1,0,0,0,0,[]],51,5931,[],[[0],[1],[1,100,""]],[0,0]],[[1768,960,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,5937,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1736,960,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,5938,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1704,960,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,5939,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1672,960,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,5940,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1640,960,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,5941,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1608,960,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,5942,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1576,960,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,5943,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1544,960,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,5944,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1512,960,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,5945,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1480,960,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,5947,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1448,960,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,5948,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1416,960,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,5949,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1384,960,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,5950,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1352,960,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,5951,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1320,960,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,5952,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[1288,960,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,5953,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[1064,384,0,97,199,0,0,1,0.5257731676101685,0.4974874258041382,0,0,[]],44,5954,[],[[0]],[0,"Default",0,1]],[[1544,728,0,80,9,0,0,1,0,0,0,0,[]],51,5896,[],[[0],[1],[1,100,""]],[0,0]],[[1312,880,0,48,16,0,-0.6553501486778259,1,0,0,0,0,[]],46,5897,[[0],[0],[""],["en-us"],[0],[0],[1],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","-->",1,0,50,0,0,0,0,0,"",-1,0]],[[1336,720,0,48,16,0,2.451996088027954,1,0,0,0,0,[]],46,5898,[[0],[0],[""],["en-us"],[0],[0],[1],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","-->",1,0,50,0,0,0,0,0,"",-1,0]],[[1536,720,0,48,16,0,-1.570796489715576,1,0,0,0,0,[]],46,5900,[[0],[0],[""],["en-us"],[0],[0],[1],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","-->",1,0,50,0,0,0,0,0,"",-1,0]],[[1696,792,0,48,16,0,-0.6103586554527283,1,0,0,0,0,[]],46,5901,[[0],[0],[""],["en-us"],[0],[0],[1],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","-->",1,0,50,0,0,0,0,0,"",-1,0]],[[1092,648,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,5902,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[1744,808,0,64,9,0,0,1,0,0,0,0,[]],51,5904,[],[[0],[1],[1,100,""]],[0,0]],[[1344,416,0,168,9,0,0,1,0,0,0,0,[]],51,5906,[],[[0],[1],[1,100,""]],[0,0]],[[1032,960,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,2799,[[0.6],[0]],[[0]],[0,"Default",0,1]],[[1292,264,0,288,117,0,0,1,0,0,0,0,[[]]],61,5565,[],[[1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>","1",7,0,60,0,0,0,0,0,"",-1,0]],[[1312,480,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2800,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1280,480,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,5905,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1248,480,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,5907,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1216,480,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,5908,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1184,480,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,5909,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1152,480,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,5936,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1704,480,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10019,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[1672,480,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10020,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1640,480,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10021,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1608,480,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10022,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1576,480,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10023,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1544,480,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10024,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[1496,400,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10025,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[1360,400,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10026,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1424,464,0,32,32,0,0,1,0.5,0.5,0,0,[]],49,10027,[[1],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[1,"Default",0,1]],[[1428,464,0,48,48,0,0,1,0.5,0.5,0,0,[]],60,5903,[["level12"]],[[0],[400,-200,800,0,0,0],[0,0,0,1,1]],[0,"Default",0,1]],[[1296,481,0,16,55,0,-1.570796489715576,1,0.5,0.5,0,0,[]],50,10028,[[-1],[0],[0],[0],[0],[1],[1]],[[0],[1,0,1,1,"F 2000",400,0,100,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1029.013549804688,480.813232421875,0,24,11.00958251953125,0,1.570796370506287,1,0,0,0,0,[]],51,7228,[],[[0],[1],[1,100,""]],[0,0]]],[]],["UI",2,457942914449975,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[240,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3097,[["right"]],[[0,1,0,1,1]],[0,"Default",0,1]],[[80,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3098,[["left"]],[[0,1,0,1,1]],[0,"Default",1,1]],[[560,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3099,[["up"]],[[1,1,1,1,1]],[0,"Default",3,1]],[[400,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3100,[["down"]],[[1,1,1,1,1]],[0,"Default",2,1]]],[]],["End Card",3,454597936890999,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],78,2607,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[12.04449462890625,194,0,615.9109497070313,67,0,0,1,0,0,0,0,[]],79,2608,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Timer for this level",2.5,0,0,0,0,0,-10,0,"",-1,0]],[[17.546875,248,0,604.90625,105,0,0,1,0,0,0,0,[]],80,2610,[[0],[0],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","13:40:40",4,0,63,50,0,0,-10,0,"",-1,0]],[[115.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,2611,[[0],[1],[0],[0],["replay"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Replay",""],[""],[2,2,0,0,0],["",""]],[0,"Replay",0,1]],[[524.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3086,[[0],[1],[0],[0],["next"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Next",""],[""],[2,2,0,0,0],["",""]],[0,"Next",0,1]],[[320.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3087,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > Back","Level Menu"],[""],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[320.75,521.8050537109375,0,384,96,0,0,1,0.5,0.5,0,0,[]],70,3088,[[1],[1],[0],[0],[""],["{\"size\": 22, \"left\": 70, \"right\": 18, \"alignY\": 60}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > DownloadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"DownloadReplay",0,1]]],[]],["Pause",4,109714894604325,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-310,678,0,274,31,0,0,1,0,0,0,0,[]],168,3089,[],[],[".ovo",0,1,"file"]],[[320,320,0,425,250,0,0,1,0.5,0.5,0,0,[]],82,3090,[],[[6,1,"",300,1,1,"",300,"overlay",1,"PauseClose",1,1]],[0,"Default",0,1]],[[214,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3091,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"",""],["PauseClose"],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[426,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3092,[[0],[1],[0],[0],["quit"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > GiveUp",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[115.5,202,0,409,118,0,0,1,0,0,0,0,[]],83,3093,[[1],[1],["pause"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Pause",4,0,57,50,0,0,-10,0,"",-1,0]],[[320.5,88,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3094,[[1],[1],[0],[0],["loadreplay"],["{\"size\": 16, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > LoadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"LoadReplay",0,1]],[[320.5,157,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3095,[[1],[0],[0],[0],["toggledebug"],["{\"size\": 15, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Debug > Toggle",""],[""],[2,2,0,0,0],["",""]],[0,"ToggleDebug",0,1]],[[78,448,0,484,134,0,0,1,0,0,0,0,[]],193,3096,[],[],[0,"Default",0,1]]],[]],["Overlay",5,380289720753309,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[432,4,0,203.0009155273438,64,0,0,1,0,0,0,0,[]],107,5488,[],[[1,0,1,0,1]],[2,2,2,2,0,1,0,0,1]],[[432,4,0,203,64,0,0,1,0,0,0,0,[]],84,3101,[[0],[0],[""],["en-us"],[0],[1],[1],["{\"alignY\": 85, \"alignX\": 45, \"size\": 28}"],[0],[1],[0],[0],[0]],[["",""],[1,0,1,0,1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",2,0,100,50,0,0,-10,0,"",-1,0]],[[88,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3102,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Pause",""],[""],[0,0,0,0,1],["",""]],[0,"Pause",0,1]],[[158,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3103,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Replay","1"],[""],[0,0,0,0,1],["",""]],[0,"Reload",0,1]]],[]],["End Game",6,844638552885228,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],85,3104,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[73,194,0,494,72,0,0,1,0,0,0,0,[]],86,3105,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],["{alignY:50}"],[0],[1],[0],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Your final time",2.5,0,50,50,0,0,-10,0,"",-1,0]],[[320,403,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3106,[[0],[1],[0],[0],[""],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Quit",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[73,243,0,494,85,0,0,1,0,0,0,0,[]],87,3108,[[0],[1],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",3,0,50,50,0,0,-10,0,"",-1,0]],[[73,318,0,494,25,0,0,1,0,0,0,0,[]],86,5480,[[1],[1],["tryagainhardmode"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Try again in hard mode!",1,0,50,50,0,0,-2,0,"",-1,0]]],[]],["Banner",7,943643813057777,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-237,-189,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,3109,[],[["overlay"]],[0,"Default",0,1]]],[]],["AdPlaying",8,266023054861357,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,-203.5,0,250,97,0,0,1,0.5,0.5,0,0,[]],125,390,[],[[6,1,"",300,1,1,"",300,"overlay",1,"",1,1],[]],[0,"Default",0,1]],[[209,-275,0,222,139,0,0,1,0,0,0,0,[]],86,391,[[1],[1],["adplaying"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","An ad is playing right now...",1.2,0,50,50,0,0,-2,0,"",-1,0]],[[-154.5756988525391,-294.3137512207031,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,5508,[],[["overlay"]],[0,"Default",0,1]]],[]]],[],[]],["Level 13",3000,4000,true,"Levels",495210295417890,[["Background",0,407493986037314,true,[255,255,255],false,0,0,1,false,false,1,0,0,[[[-168,-160,0,60.93439102172852,60.93439102172852,0,0,1,0.5,0.5,0,0,[]],53,5566,[["A matter of speed"],[""],[0]],[],[1,"Default",0,1]]],[]],["Layer 0",1,108911000382824,true,[255,255,255],true,1,1,1,false,false,1,0,0,[[[320,776,0,32,64,0,0,1,0.5,0.5,0,0,[]],42,2808,[["run"],[0],[1],[1],[0],[0.8],[0.5],[0],[1],[0],[0],[0],["ovo+"],[2],[0],[0],[0],[""],[0],[3],[0],[0],[0],[0],[0],[0],[0]],[[330,1500,1500,650,1500,1000,1,0,0,1],[],[1,0],[0,10000,360,1]],[1,"Default",0,1]],[[336,672,0,272,117,0,0,1,0,0,0,0,[[]]],61,2810,[],[[1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>","13",7,0,100,0,0,0,0,0,"",-1,0]],[[312,480,0,80,152,0,0,1,0.5257731676101685,0.4974874258041382,0,0,[]],44,7261,[],[[0]],[0,"Default",0,1]],[[472,272,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7267,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[928,600,0,64,64,0,0,1,0.5,0.5,0,0,[]],60,3267,[["level13"]],[[1],[400,-200,800,0,0,0],[0,0,0,1,1]],[0,"Default",0,1]],[[248,856,0,1792,688,0,0,1,0,0,0,0,[]],67,7225,[],[[1]],[0,0]],[[256.0000305175781,-448,0,1984,640,0,1.570796370506287,1,0,0,0,0,[]],67,7227,[],[[1]],[0,0]],[[2688,-448,0,1976,656,0,1.570796370506287,1,0,0,0,0,[]],67,7229,[],[[1]],[0,0]],[[456,288,0,32,336,0,0,1,0,0,0,0,[]],51,7230,[],[[0],[1],[1,100,""]],[0,0]],[[472,640,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7231,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[696,472,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7232,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[680,488,0,32,336,0,0,1,0,0,0,0,[]],51,7233,[],[[0],[1],[1,100,""]],[0,0]],[[696,840,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7234,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1168,472,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7235,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1152,488,0,32,336,0,0,1,0,0,0,0,[]],51,7236,[],[[0],[1],[1,100,""]],[0,0]],[[1168,840,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7237,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[256,552,0,1176,8,0,0,1,0,0,0,0,[]],67,7226,[],[[1]],[0,0]],[[928,672,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7238,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[912,688,0,32,136,0,0,1,0,0,0,0,[]],51,7239,[],[[0],[1],[1,100,""]],[0,0]],[[1636,376,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7242,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1620,392,0,32,336,0,0,1,0,0,0,0,[]],51,7243,[],[[0],[1],[1,100,""]],[0,0]],[[1636,744,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7244,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1816,556,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,7245,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1800,540,0,32,336,0,1.570796370506287,1,0,0,0,0,[]],51,7246,[],[[0],[1],[1,100,""]],[0,0]],[[1448,556,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,7247,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1632,560,0,360,360,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,7248,[[-1],[0],[0],[0],[0],[5],[1]],[[0],[1,1,1,0,"L 90 ; W 1; L 90 ; W 1; L 90 ; W 1; L 90 ; W 1;",400,0,100,60,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[472,456,0,344,48,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,7249,[[-1],[0],[0],[0],[0],[1],[1]],[[0],[1,1,1,0,"F 200 ; W 1; B 200 ; W 1",312,0,46,60,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[696,656,0,344,48,0,-1.570796489715576,1,0.5,0.5,0,0,[]],50,7250,[[-1],[0],[0],[0],[0],[1],[1]],[[0],[1,1,1,0,"F 200 ; W 1; B 200 ; W 1",312,0,46,60,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1168,656,0,344,48,0,-1.570796489715576,1,0.5,0.5,0,0,[]],50,7251,[[-1],[0],[0],[0],[0],[1],[1]],[[0],[1,1,1,0,"F 200 ; W 1; B 200 ; W 1",312,0,46,60,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[928,756,0,152,48,0,-1.570796489715576,1,0.5,0.5,0,0,[]],50,7252,[[-1],[0],[0],[0],[0],[1],[1]],[[0],[1,1,1,0,"F 96 ; W 1; B 96; W 1",416,0,46,60,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[928,840,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7253,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[928,272,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7240,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[912,288,0,32,136,0,0,1,0,0,0,0,[]],51,7241,[],[[0],[1],[1,100,""]],[0,0]],[[928,352,0,152,48,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,7254,[[-1],[0],[0],[0],[0],[1],[1]],[[0],[1,1,1,0,"F 96 ; W 1; B 96; W 1",416,0,46,60,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[928,440,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7255,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1936,840,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,7258,[[0.6],[0]],[[0]],[0,"Default",0,1]],[[2000,840,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,7264,[[0.6],[0]],[[0]],[0,"Default",0,1]],[[1968,840,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,7263,[[0.6],[0]],[[0]],[0,"Default",0,1]],[[728,808,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,7259,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[664,808,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,7260,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[504,608,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,7262,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[440,608,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,7265,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[960,808,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,7266,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[896,808,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,10054,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1200,808,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,10087,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1136,808,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,10088,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1200,504,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,10089,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1136,504,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,10090,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[960,304,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,10091,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[896,304,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,10092,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[728,504,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,10093,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[664,504,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,10094,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[504,304,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,10095,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[440,304,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,10096,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1450,788,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10097,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1450,964,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10099,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1534,876,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,10100,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1518,860,0,32,144,0,1.570796370506287,1,0,0,0,0,[]],51,10101,[],[[0],[1],[1,100,""]],[0,0]],[[1358,876,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,10102,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1446,876,0,160,160,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,10103,[[-1],[0],[0],[0],[0],[5],[1]],[[0],[1,1,1,0,"R 90 ; W 1;",400,0,100,60,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1434,804,0,32,144,0,0,1,0,0,0,0,[]],51,10098,[],[[0],[1],[1,100,""]],[0,0]],[[1811,788,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10104,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1811,964,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10105,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1895,876,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,10106,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1879,860,0,32,144,0,1.570796370506287,1,0,0,0,0,[]],51,10107,[],[[0],[1],[1,100,""]],[0,0]],[[1719,876,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,10108,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1807,876,0,160,160,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,10109,[[-1],[0],[0],[0],[0],[5],[1]],[[0],[1,1,1,0,"R 90 ; W 1;",400,0,100,60,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1795,804,0,32,144,0,0,1,0,0,0,0,[]],51,10110,[],[[0],[1],[1,100,""]],[0,0]],[[1449,152,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7256,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1449,328,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7257,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1536,240,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,10111,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1520,224,0,32,144,0,1.570796370506287,1,0,0,0,0,[]],51,10112,[],[[0],[1],[1,100,""]],[0,0]],[[1360,240,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,10113,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1448,240,0,160,160,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,10114,[[-1],[0],[0],[0],[0],[5],[1]],[[0],[1,1,1,0,"R 90 ; W 1;",400,0,100,60,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1433,168,0,32,144,0,0,1,0,0,0,0,[]],51,10115,[],[[0],[1],[1,100,""]],[0,0]],[[1810,152,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10116,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1810,328,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10117,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1896,240,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,10118,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1880,224,0,32,144,0,1.570796370506287,1,0,0,0,0,[]],51,10119,[],[[0],[1],[1,100,""]],[0,0]],[[1720,240,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,10120,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1808,240,0,160,160,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,10121,[[-1],[0],[0],[0],[0],[5],[1]],[[0],[1,1,1,0,"R 90 ; W 1;",400,0,100,60,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1794,168,0,32,144,0,0,1,0,0,0,0,[]],51,10122,[],[[0],[1],[1,100,""]],[0,0]],[[256,-432,0,1792,688,0,0,1,0,0,0,0,[]],67,10130,[],[[1]],[0,0]]],[]],["UI",2,104137003784960,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[240,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3097,[["right"]],[[0,1,0,1,1]],[0,"Default",0,1]],[[80,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3098,[["left"]],[[0,1,0,1,1]],[0,"Default",1,1]],[[560,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3099,[["up"]],[[1,1,1,1,1]],[0,"Default",3,1]],[[400,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3100,[["down"]],[[1,1,1,1,1]],[0,"Default",2,1]]],[]],["End Card",3,653066447384839,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],78,2607,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[12.04449462890625,194,0,615.9109497070313,67,0,0,1,0,0,0,0,[]],79,2608,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Timer for this level",2.5,0,0,0,0,0,-10,0,"",-1,0]],[[17.546875,248,0,604.90625,105,0,0,1,0,0,0,0,[]],80,2610,[[0],[0],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","13:40:40",4,0,63,50,0,0,-10,0,"",-1,0]],[[115.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,2611,[[0],[1],[0],[0],["replay"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Replay",""],[""],[2,2,0,0,0],["",""]],[0,"Replay",0,1]],[[524.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3086,[[0],[1],[0],[0],["next"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Next",""],[""],[2,2,0,0,0],["",""]],[0,"Next",0,1]],[[320.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3087,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > Back","Level Menu"],[""],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[320.75,521.8050537109375,0,384,96,0,0,1,0.5,0.5,0,0,[]],70,3088,[[1],[1],[0],[0],[""],["{\"size\": 22, \"left\": 70, \"right\": 18, \"alignY\": 60}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > DownloadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"DownloadReplay",0,1]]],[]],["Pause",4,830123472615815,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-310,678,0,274,31,0,0,1,0,0,0,0,[]],168,3089,[],[],[".ovo",0,1,"file"]],[[320,320,0,425,250,0,0,1,0.5,0.5,0,0,[]],82,3090,[],[[6,1,"",300,1,1,"",300,"overlay",1,"PauseClose",1,1]],[0,"Default",0,1]],[[214,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3091,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"",""],["PauseClose"],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[426,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3092,[[0],[1],[0],[0],["quit"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > GiveUp",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[115.5,202,0,409,118,0,0,1,0,0,0,0,[]],83,3093,[[1],[1],["pause"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Pause",4,0,57,50,0,0,-10,0,"",-1,0]],[[320.5,88,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3094,[[1],[1],[0],[0],["loadreplay"],["{\"size\": 16, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > LoadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"LoadReplay",0,1]],[[320.5,157,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3095,[[1],[0],[0],[0],["toggledebug"],["{\"size\": 15, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Debug > Toggle",""],[""],[2,2,0,0,0],["",""]],[0,"ToggleDebug",0,1]],[[78,448,0,484,134,0,0,1,0,0,0,0,[]],193,3096,[],[],[0,"Default",0,1]]],[]],["Overlay",5,397689601821748,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[432,4,0,203.0009155273438,64,0,0,1,0,0,0,0,[]],107,5488,[],[[1,0,1,0,1]],[2,2,2,2,0,1,0,0,1]],[[432,4,0,203,64,0,0,1,0,0,0,0,[]],84,3101,[[0],[0],[""],["en-us"],[0],[1],[1],["{\"alignY\": 85, \"alignX\": 45, \"size\": 28}"],[0],[1],[0],[0],[0]],[["",""],[1,0,1,0,1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",2,0,100,50,0,0,-10,0,"",-1,0]],[[88,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3102,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Pause",""],[""],[0,0,0,0,1],["",""]],[0,"Pause",0,1]],[[158,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3103,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Replay","1"],[""],[0,0,0,0,1],["",""]],[0,"Reload",0,1]]],[]],["End Game",6,977271865824374,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],85,3104,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[73,194,0,494,72,0,0,1,0,0,0,0,[]],86,3105,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],["{alignY:50}"],[0],[1],[0],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Your final time",2.5,0,50,50,0,0,-10,0,"",-1,0]],[[320,403,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3106,[[0],[1],[0],[0],[""],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Quit",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[73,243,0,494,85,0,0,1,0,0,0,0,[]],87,3108,[[0],[1],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",3,0,50,50,0,0,-10,0,"",-1,0]],[[73,318,0,494,25,0,0,1,0,0,0,0,[]],86,5480,[[1],[1],["tryagainhardmode"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Try again in hard mode!",1,0,50,50,0,0,-2,0,"",-1,0]]],[]],["Banner",7,142595626673348,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-237,-189,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,3109,[],[["overlay"]],[0,"Default",0,1]]],[]],["AdPlaying",8,559738191946791,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,-203.5,0,250,97,0,0,1,0.5,0.5,0,0,[]],125,390,[],[[6,1,"",300,1,1,"",300,"overlay",1,"",1,1],[]],[0,"Default",0,1]],[[209,-275,0,222,139,0,0,1,0,0,0,0,[]],86,391,[[1],[1],["adplaying"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","An ad is playing right now...",1.2,0,50,50,0,0,-2,0,"",-1,0]],[[-154.5756988525391,-294.3137512207031,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,5508,[],[["overlay"]],[0,"Default",0,1]]],[]]],[],[]],["Level 14",3000,4000,true,"Levels",146140957253746,[["Background",0,925498894397431,true,[255,255,255],false,0,0,1,false,false,1,0,0,[[[748,1011,0,60.93439102172852,60.93439102172852,0,0,1,0.5,0.5,0,0,[]],53,2809,[["Timing"],[""],[0]],[],[1,"Default",0,1]]],[]],["Layer 0",1,613493487315241,true,[255,255,255],true,1,1,1,false,false,1,0,0,[[[752,880,0,32,64,0,0,1,0.5,0.5,0,0,[]],42,2802,[["run"],[0],[1],[1],[0],[0.8],[0.5],[0],[1],[0],[0],[0],["ovo+"],[2],[0],[0],[0],[""],[0],[3],[0],[0],[0],[0],[0],[0],[0]],[[330,1500,1500,650,1500,1000,1,0,0,1],[],[1,0],[0,10000,360,1]],[1,"Default",0,1]],[[2520,1016,0,97,199,0,0,1,0.5257731676101685,0.4974874258041382,0,0,[]],44,2917,[],[[0]],[0,"Default",0,1]],[[616.4153442382813,1349.24951171875,0,288,80,0,0,1,0,0,0,0,[[]]],61,2997,[],[[1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>","1",5,0,55,0,0,0,0,0,"",-1,0]],[[688.0000610351563,504,0,968,912,0,1.570796370506287,1,0,0,0,0,[]],51,2811,[],[[0],[1],[1,100,""]],[0,0]],[[1143,832,0,192,320,0,1.570796370506287,1,0,0,0,0,[]],51,2812,[],[[0],[1],[1,100,""]],[0,0]],[[-240,1672,0,2680,512,0,0,1,0,0,0,0,[]],51,2813,[],[[0],[1],[1,100,""]],[0,0]],[[624,1472,0,104,792,0,1.570796370506287,1,0,0,0,0,[]],51,2815,[],[[0],[1],[1,100,""]],[0,0]],[[2359,1472,0,104,1464,0,1.570796370506287,1,0,0,0,0,[]],51,2817,[],[[0],[1],[1,100,""]],[0,0]],[[832,1416,0,56,8,0,1.570796370506287,1,0,0,0,0,[]],45,2819,[],[[0],[1]],[0,0]],[[640,1656,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,2820,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[640,1624,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,2821,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[640,1592,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,2822,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[880,1656,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,2823,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[880,1624,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,2824,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[880,1592,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,2825,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[624,1576,0,104,872,0,1.570796370506287,1,0,0,0,0,[]],51,2826,[],[[0],[1],[1,100,""]],[0,0]],[[2447,1576,0,104,1552,0,1.570796370506287,1,0,0,0,0,[]],51,2827,[],[[0],[1],[1,100,""]],[0,0]],[[904,1624,0,50,55,0,0,1,0.5,0.5,0,0,[]],50,2829,[[-1],[0],[0],[0],[0],[0],[1]],[[0],[1,1,1,1,"W 2 ; B 103",400,0,100,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[624,1616,0,50,55,0,0,1,0.5,0.5,0,0,[]],50,2830,[[-1],[0],[0],[0],[0],[0],[1]],[[0],[1,1,1,1,"W 2 ; F 103",400,0,100,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[680,1464,0,144,8,0,0,1,0,0,0,0,[]],45,2818,[],[[0],[1]],[0,0]],[[760,1656,0,32,32,0,0,1,0.5,0.5,0,0,[]],163,2814,[],[[0]],[0,"Default",0,1]],[[1512,1111.999877929688,0,360,688,0,1.570796370506287,1,0,0,0,0,[]],51,2816,[],[[0],[1],[1,100,""]],[0,0]],[[1672,1056,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,2831,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1672,1088,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,2832,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1696,1024,0,88,8,0,1.570796370506287,1,0,0,0,0,[]],51,2833,[],[[0],[1],[1,100,""]],[0,0]],[[1336,832,0,192,136,0,1.570796370506287,1,0,0,0,0,[]],51,2834,[],[[0],[1],[1,100,""]],[0,0]],[[1680,832,0,192,288,0,1.570796370506287,1,0,0,0,0,[]],51,2835,[],[[0],[1],[1,100,""]],[0,0]],[[1831,1056,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,2836,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1831,1088,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,2837,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1855,1024,0,88,8,0,1.570796370506287,1,0,0,0,0,[]],51,2838,[],[[0],[1],[1,100,""]],[0,0]],[[1200,832,0,88,64,0,1.570796370506287,1,0,0,0,0,[]],51,2839,[],[[0],[1],[1,100,""]],[0,0]],[[1392,832,0,88,64,0,1.570796370506287,1,0,0,0,0,[]],51,2840,[],[[0],[1],[1,100,""]],[0,0]],[[1688,1080,0,50,55,0,0,1,0.5,0.5,0,0,[]],50,2841,[[-1],[0],[0],[0],[0],[1],[1]],[[0],[1,0,1,1,"B 2000",400,0,100,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1064,1068,0,32,88,0,0,1,0.5,0.5,0,0,[]],49,2842,[[1],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[1,"Default",0,1]],[[1264,1068,0,32,88,0,0,1,0.5,0.5,0,0,[]],49,2843,[[2],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[1,"Default",0,1]],[[1847,1072,0,50,55,0,0,1,0.5,0.5,0,0,[]],50,2844,[[-1],[0],[0],[0],[0],[2],[1]],[[0],[1,0,1,1,"B 2000",400,0,100,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[831,928,0,104,8,0,1.570796370506287,1,0,0,0,0,[]],51,2845,[],[[0],[1],[1,100,""]],[0,0]],[[1143,928,0,104,8,0,1.570796370506287,1,0,0,0,0,[]],51,2846,[],[[0],[1],[1,100,""]],[0,0]],[[1336,928,0,104,8,0,1.570796370506287,1,0,0,0,0,[]],51,2847,[],[[0],[1],[1,100,""]],[0,0]],[[1944,1112,0,360,376,0,1.570796370506287,1,0,0,0,0,[]],51,2849,[],[[0],[1],[1,100,""]],[0,0]],[[1928,832,0,192,192,0,1.570796370506287,1,0,0,0,0,[]],51,2850,[],[[0],[1],[1,100,""]],[0,0]],[[2200,896,0,128,208,0,1.570796370506287,1,0,0,0,0,[]],51,2851,[],[[0],[1],[1,100,""]],[0,0]],[[2672,1112,0,360,680,0,1.570796370506287,1,0,0,0,0,[]],51,2852,[],[[0],[1],[1,100,""]],[0,0]],[[1736,832,0,88,56,0,1.570796370506287,1,0,0,0,0,[]],51,2853,[],[[0],[1],[1,100,""]],[0,0]],[[2000,832,0,0,56,0,1.570796370506287,1,0,0,0,0,[]],51,2854,[],[[0],[1],[1,100,""]],[0,0]],[[1992,1216,0,256,56,0,1.570796370506287,1,0,0,0,0,[]],51,2855,[],[[0],[1],[1,100,""]],[0,0]],[[1576,1216,0,256,64,0,1.570796370506287,1,0,0,0,0,[]],51,2856,[],[[0],[1],[1,100,""]],[0,0]],[[1576,928,0,104,8,0,1.570796370506287,1,0,0,0,0,[]],51,2857,[],[[0],[1],[1,100,""]],[0,0]],[[1680,928,0,104,8,0,1.570796370506287,1,0,0,0,0,[]],51,2858,[],[[0],[1],[1,100,""]],[0,0]],[[1456,1068,0,32,88,0,0,1,0.5,0.5,0,0,[]],49,2860,[[3],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[1,"Default",0,1]],[[1616,1068,0,32,88,0,0,1,0.5,0.5,0,0,[]],49,2861,[[4],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[1,"Default",0,1]],[[1792,1068,0,32,88,0,0,1,0.5,0.5,0,0,[]],49,2862,[[5],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[1,"Default",0,1]],[[1992,1056,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,2863,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1992,1088,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,2864,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2016,1024,0,88,8,0,1.570796370506287,1,0,0,0,0,[]],51,2865,[],[[0],[1],[1,100,""]],[0,0]],[[2008,1072,0,50,55,0,0,1,0.5,0.5,0,0,[]],50,2866,[[-1],[0],[0],[0],[0],[3],[1]],[[0],[1,0,1,1,"B 2000",400,0,100,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[2168,1056,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,2867,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2168,1088,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,2868,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2192,1024,0,88,8,0,1.570796370506287,1,0,0,0,0,[]],51,2869,[],[[0],[1],[1,100,""]],[0,0]],[[2192,1072,0,50,55,0,0,1,0.5,0.5,0,0,[]],50,2870,[[-1],[0],[0],[0],[0],[4],[1]],[[0],[1,0,1,1,"B 2000",400,0,100,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[2336,1056,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,2871,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2336,1088,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,2872,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2360,1024,0,88,8,0,1.570796370506287,1,0,0,0,0,[]],51,2873,[],[[0],[1],[1,100,""]],[0,0]],[[2348,1072,0,16,55,0,0,1,0.5,0.5,0,0,[]],50,2874,[[-1],[0],[0],[0],[0],[5],[1]],[[0],[1,0,1,1,"B 2000",400,0,100,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[832,1036,0,16,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,2875,[[-1],[0],[0],[0],[0],[1],[1]],[[0],[1,0,1,1,"F 90",400,0,100,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1136,1036,0,16,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,2876,[[-1],[0],[0],[0],[0],[2],[1]],[[0],[1,0,1,1,"F 90",400,0,100,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1336,1036,0,16,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,2877,[[-1],[0],[0],[0],[0],[3],[1]],[[0],[1,0,1,1,"F 90",400,0,100,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1576,1036,0,16,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,2878,[[-1],[0],[0],[0],[0],[4],[1]],[[0],[1,0,1,1,"F 90",400,0,100,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1664,1036,0,16,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,2879,[[-1],[0],[0],[0],[0],[5],[1]],[[0],[1,0,1,1,"F 90",400,0,100,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[3000,-136,0,968,3216,0,1.570796370506287,1,0,0,0,0,[]],51,2881,[],[[0],[1],[1,100,""]],[0,0]],[[3000,1256,0,968,648,0,1.570796370506287,1,0,0,0,0,[]],51,2882,[],[[0],[1],[1,100,""]],[0,0]],[[3632,-168,0,2408,992,0,1.570796370506287,1,0,0,0,0,[]],51,2883,[],[[0],[1],[1,100,""]],[0,0]],[[632,1540,0,80,24,0,0,1,0,0,0,0,[]],46,2884,[[1],[1],[""],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","here!",1,0,50,0,0,0,0,0,"",-1,0]],[[816,1540,0,80,24,0,0,1,0,0,0,0,[]],46,2885,[[1],[1],[""],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","here!",1,0,50,0,0,0,0,0,"",-1,0]],[[2280,944,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2886,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1928,952,0,72,8,0,0,1,0,0,0,0,[]],45,2895,[],[[0],[1]],[0,0]],[[1832,1008,0,104,8,0,0,1,0,0,0,0,[]],51,2896,[],[[0],[1],[1,100,""]],[0,0]],[[1942,1000,0,16,32,0,0,1,0.5,0.5,0,0,[]],50,2897,[[-1],[0],[0],[0],[0],[6],[1]],[[0],[1,0,1,1,"W 1 ; F 90",400,0,100,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1960,1068,0,32,88,0,0,1,0.5,0.5,0,0,[]],49,2898,[[6],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[1,"Default",0,1]],[[2032,864,0,48,48,0,0,1,0.5,0.5,0,0,[]],60,2899,[["level14"]],[[1],[400,-200,800,0,0,0],[0,0,0,1,1]],[0,"Default",0,1]],[[2296,960,0,152,32,0,1.570796370506287,1,0,0,0,0,[]],51,2887,[],[[0],[1],[1,100,""]],[0,0]],[[2408,1018,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2888,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2424,1034,0,88,32,0,1.570796370506287,1,0,0,0,0,[]],51,2889,[],[[0],[1],[1,100,""]],[0,0]]],[]],["UI",2,740441831511083,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[240,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3097,[["right"]],[[0,1,0,1,1]],[0,"Default",0,1]],[[80,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3098,[["left"]],[[0,1,0,1,1]],[0,"Default",1,1]],[[560,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3099,[["up"]],[[1,1,1,1,1]],[0,"Default",3,1]],[[400,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3100,[["down"]],[[1,1,1,1,1]],[0,"Default",2,1]]],[]],["End Card",3,199063644844163,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],78,2607,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[12.04449462890625,194,0,615.9109497070313,67,0,0,1,0,0,0,0,[]],79,2608,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Timer for this level",2.5,0,0,0,0,0,-10,0,"",-1,0]],[[17.546875,248,0,604.90625,105,0,0,1,0,0,0,0,[]],80,2610,[[0],[0],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","13:40:40",4,0,63,50,0,0,-10,0,"",-1,0]],[[115.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,2611,[[0],[1],[0],[0],["replay"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Replay",""],[""],[2,2,0,0,0],["",""]],[0,"Replay",0,1]],[[524.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3086,[[0],[1],[0],[0],["next"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Next",""],[""],[2,2,0,0,0],["",""]],[0,"Next",0,1]],[[320.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3087,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > Back","Level Menu"],[""],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[320.75,521.8050537109375,0,384,96,0,0,1,0.5,0.5,0,0,[]],70,3088,[[1],[1],[0],[0],[""],["{\"size\": 22, \"left\": 70, \"right\": 18, \"alignY\": 60}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > DownloadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"DownloadReplay",0,1]]],[]],["Pause",4,805875059016534,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-310,678,0,274,31,0,0,1,0,0,0,0,[]],168,3089,[],[],[".ovo",0,1,"file"]],[[320,320,0,425,250,0,0,1,0.5,0.5,0,0,[]],82,3090,[],[[6,1,"",300,1,1,"",300,"overlay",1,"PauseClose",1,1]],[0,"Default",0,1]],[[214,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3091,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"",""],["PauseClose"],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[426,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3092,[[0],[1],[0],[0],["quit"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > GiveUp",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[115.5,202,0,409,118,0,0,1,0,0,0,0,[]],83,3093,[[1],[1],["pause"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Pause",4,0,57,50,0,0,-10,0,"",-1,0]],[[320.5,88,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3094,[[1],[1],[0],[0],["loadreplay"],["{\"size\": 16, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > LoadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"LoadReplay",0,1]],[[320.5,157,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3095,[[1],[0],[0],[0],["toggledebug"],["{\"size\": 15, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Debug > Toggle",""],[""],[2,2,0,0,0],["",""]],[0,"ToggleDebug",0,1]],[[78,448,0,484,134,0,0,1,0,0,0,0,[]],193,3096,[],[],[0,"Default",0,1]]],[]],["Overlay",5,609419482359365,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[432,4,0,203.0009155273438,64,0,0,1,0,0,0,0,[]],107,5488,[],[[1,0,1,0,1]],[2,2,2,2,0,1,0,0,1]],[[432,4,0,203,64,0,0,1,0,0,0,0,[]],84,3101,[[0],[0],[""],["en-us"],[0],[1],[1],["{\"alignY\": 85, \"alignX\": 45, \"size\": 28}"],[0],[1],[0],[0],[0]],[["",""],[1,0,1,0,1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",2,0,100,50,0,0,-10,0,"",-1,0]],[[88,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3102,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Pause",""],[""],[0,0,0,0,1],["",""]],[0,"Pause",0,1]],[[158,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3103,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Replay","1"],[""],[0,0,0,0,1],["",""]],[0,"Reload",0,1]]],[]],["End Game",6,965823846785374,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],85,3104,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[73,194,0,494,72,0,0,1,0,0,0,0,[]],86,3105,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],["{alignY:50}"],[0],[1],[0],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Your final time",2.5,0,50,50,0,0,-10,0,"",-1,0]],[[320,403,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3106,[[0],[1],[0],[0],[""],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Quit",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[73,243,0,494,85,0,0,1,0,0,0,0,[]],87,3108,[[0],[1],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",3,0,50,50,0,0,-10,0,"",-1,0]],[[73,318,0,494,25,0,0,1,0,0,0,0,[]],86,5480,[[1],[1],["tryagainhardmode"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Try again in hard mode!",1,0,50,50,0,0,-2,0,"",-1,0]]],[]],["Banner",7,425054531596096,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-237,-189,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,3109,[],[["overlay"]],[0,"Default",0,1]]],[]],["AdPlaying",8,701141701118662,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,-203.5,0,250,97,0,0,1,0.5,0.5,0,0,[]],125,390,[],[[6,1,"",300,1,1,"",300,"overlay",1,"",1,1],[]],[0,"Default",0,1]],[[209,-275,0,222,139,0,0,1,0,0,0,0,[]],86,391,[[1],[1],["adplaying"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","An ad is playing right now...",1.2,0,50,50,0,0,-2,0,"",-1,0]],[[-154.5756988525391,-294.3137512207031,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,5508,[],[["overlay"]],[0,"Default",0,1]]],[]]],[],[]],["Level 15",3200,5000,true,"Levels",721362203676778,[["Background",0,338595887897767,true,[255,255,255],false,0,0,1,false,false,1,0,0,[[[1136,2080,0,60.93439102172852,60.93439102172852,0,0,1,0.5,0.5,0,0,[]],53,5854,[["Deadly contraption I"],[""],[0]],[],[1,"Default",0,1]]],[]],["Layer 0",1,523655851324972,true,[255,255,255],true,1,1,1,false,false,1,0,0,[[[1928,2160,0,8,376,0,0,1,0,0,0,0,[]],51,2902,[],[[0],[1],[1,100,""]],[0,0]],[[1564,2040,0,32,64,0,0,1,0.5,0.5,0,0,[]],42,2903,[["run"],[0],[1],[1],[0],[0.8],[0.5],[0],[1],[0],[0],[0],[""],[2],[0],[0],[0],[""],[0],[3],[0],[0],[0],[0],[0],[0],[0]],[[330,1500,1500,650,1500,1000,0,0,0,1],[],[0,0],[0,10000,360,1]],[0,"Default",0,1]],[[1200,2160,0,8,376,0,0,1,0,0,0,0,[]],51,2904,[],[[0],[1],[1,100,""]],[0,0]],[[1512,2160,0,8,312,0,1.570796370506287,1,0,0,0,0,[]],51,2905,[],[[0],[1],[1,100,""]],[0,0]],[[1928,2160,0,8,312,0,1.570796370506287,1,0,0,0,0,[]],51,2906,[],[[0],[1],[1,100,""]],[0,0]],[[1616,2528,0,8,120,0,1.570796370506287,1,0,0,0,0,[]],51,2908,[],[[0],[1],[1,100,""]],[0,0]],[[1504,960,0,8,1208,0,0,1,0,0,0,0,[]],51,2909,[],[[0],[1],[1,100,""]],[0,0]],[[1616,960,0,8,1208,0,0,1,0,0,0,0,[]],51,2910,[],[[0],[1],[1,100,""]],[0,0]],[[1232,2416,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,2911,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1264,2504,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2913,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1328,2192,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2914,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1344,1992,0,184,32,0,1.570796370506287,1,0,0,0,0,[]],51,2915,[],[[0],[1],[1,100,""]],[0,0]],[[1280,2520,0,136,32,0,1.570796370506287,1,0,0,0,0,[]],51,2916,[],[[0],[1],[1,100,""]],[0,0]],[[1080,2400,0,136,32,0,0,1,0,0,0,0,[]],51,2918,[],[[0],[1],[1,100,""]],[0,0]],[[1904,2480,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,2922,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1920,2464,0,208,32,0,0,1,0,0,0,0,[]],51,2923,[],[[0],[1],[1,100,""]],[0,0]],[[1904,2448,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,2924,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1920,2432,0,56,32,0,0,1,0,0,0,0,[]],51,2925,[],[[0],[1],[1,100,""]],[0,0]],[[1904,2384,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,2928,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1920,2368,0,208,32,0,0,1,0,0,0,0,[]],51,2929,[],[[0],[1],[1,100,""]],[0,0]],[[1904,2352,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,2930,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1920,2336,0,208,32,0,0,1,0,0,0,0,[]],51,2931,[],[[0],[1],[1,100,""]],[0,0]],[[1904,2288,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,2934,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1920,2272,0,208,32,0,0,1,0,0,0,0,[]],51,2935,[],[[0],[1],[1,100,""]],[0,0]],[[1904,2256,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,2936,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1920,2240,0,208,32,0,0,1,0,0,0,0,[]],51,2937,[],[[0],[1],[1,100,""]],[0,0]],[[1904,2192,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,2940,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1920,2176,0,208,32,0,0,1,0,0,0,0,[]],51,2941,[],[[0],[1],[1,100,""]],[0,0]],[[1296,2504,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2942,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1312,2520,0,136,32,0,1.570796370506287,1,0,0,0,0,[]],51,2943,[],[[0],[1],[1,100,""]],[0,0]],[[1392,2504,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2948,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1408,2520,0,136,32,0,1.570796370506287,1,0,0,0,0,[]],51,2949,[],[[0],[1],[1,100,""]],[0,0]],[[1424,2504,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2950,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1440,2520,0,136,32,0,1.570796370506287,1,0,0,0,0,[]],51,2951,[],[[0],[1],[1,100,""]],[0,0]],[[1488,2504,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2954,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1504,2520,0,136,32,0,1.570796370506287,1,0,0,0,0,[]],51,2955,[],[[0],[1],[1,100,""]],[0,0]],[[1632,2504,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2956,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1648,2520,0,136,32,0,1.570796370506287,1,0,0,0,0,[]],51,2957,[],[[0],[1],[1,100,""]],[0,0]],[[1760,2504,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2964,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1776,2520,0,136,32,0,1.570796370506287,1,0,0,0,0,[]],51,2965,[],[[0],[1],[1,100,""]],[0,0]],[[1792,2504,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2966,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1808,2520,0,136,32,0,1.570796370506287,1,0,0,0,0,[]],51,2967,[],[[0],[1],[1,100,""]],[0,0]],[[1856,2504,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2970,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1872,2520,0,136,32,0,1.570796370506287,1,0,0,0,0,[]],51,2971,[],[[0],[1],[1,100,""]],[0,0]],[[1360,2192,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2920,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1376,1992,0,184,32,0,1.570796370506287,1,0,0,0,0,[]],51,2921,[],[[0],[1],[1,100,""]],[0,0]],[[1456,2192,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2944,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1472,1992,0,184,32,0,1.570796370506287,1,0,0,0,0,[]],51,2945,[],[[0],[1],[1,100,""]],[0,0]],[[1664,2192,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2946,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1680,1992,0,184,32,0,1.570796370506287,1,0,0,0,0,[]],51,2947,[],[[0],[1],[1,100,""]],[0,0]],[[1696,2192,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2952,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1712,1992,0,184,32,0,1.570796370506287,1,0,0,0,0,[]],51,2953,[],[[0],[1],[1,100,""]],[0,0]],[[1728,2192,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2958,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1744,1992,0,184,32,0,1.570796370506287,1,0,0,0,0,[]],51,2959,[],[[0],[1],[1,100,""]],[0,0]],[[1832,2192,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2960,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1848,1992,0,184,32,0,1.570796370506287,1,0,0,0,0,[]],51,2961,[],[[0],[1],[1,100,""]],[0,0]],[[1232,2320,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,2926,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1080,2304,0,136,32,0,0,1,0,0,0,0,[]],51,2927,[],[[0],[1],[1,100,""]],[0,0]],[[1232,2224,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,2932,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1080,2208,0,136,32,0,0,1,0,0,0,0,[]],51,2933,[],[[0],[1],[1,100,""]],[0,0]],[[1220,2224,0,16,32,0,0,1,0.5,0.5,0,0,[]],50,2912,[[-1],[0],[0],[0],[0],[20],[1]],[[0],[1,1,1,1,"W 4 ; F 250; W 8 ; B 250",200,0,100,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1220,2320,0,16,32,0,0,1,0.5,0.5,0,0,[]],50,2919,[[-1],[0],[0],[0],[0],[20],[1]],[[0],[1,1,1,1,"W 1 ; F 800 ; W 8 ; B 800",150,0,100,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1220,2416,0,16,32,0,0,1,0.5,0.5,0,0,[]],50,2938,[[-1],[0],[0],[0],[0],[20],[1]],[[0],[1,1,1,1,"W 4 ; F 900; W 6 ; B 900",150,0,100,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1912,2192,0,16,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],50,2939,[[-1],[0],[0],[0],[0],[20],[1]],[[0],[1,1,1,1,"W 4 ; F 250 ; W 8 ; B 250",200,0,100,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1915,2252,0,16,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],50,2962,[[-1],[0],[0],[0],[0],[20],[1]],[[0],[1,1,1,1,"W 2.5 ; F 250 ; W 9.5 ; B 250",150,0,100,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1916,2292,0,16,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],50,2963,[[-1],[0],[0],[0],[0],[20],[1]],[[0],[1,1,1,1,"W 2.5 ; F 250 ; W 7 ; B 250",150,0,100,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1916,2349,0,16,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],50,2968,[[-1],[0],[0],[0],[0],[20],[1]],[[0],[1,1,1,1,"W 4 ; F 250 ; W 6 ; B 250",150,0,100,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1916,2386,0,16,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],50,2969,[[-1],[0],[0],[0],[0],[20],[1]],[[0],[1,1,1,1,"W 4 ; F 750 ; W 6 ; B 750",150,0,100,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1916,2440,0,16,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],50,2972,[[-1],[0],[0],[0],[0],[20],[1]],[[0],[1,1,1,1,"W 2.5 ; F 800 ; W 7 ; B 800",150,0,100,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1916,2480,0,16,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],50,2973,[[-1],[0],[0],[0],[0],[20],[1]],[[0],[1,1,1,1,"F 600 ; W 12 ; B 600",150,0,100,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1264,2517,0,16,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,2974,[[-1],[0],[0],[0],[0],[20],[1]],[[0],[1,1,1,1,"W 4 ; B 250 ; W 8 ; F 250",150,0,100,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1296,2516,0,16,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,2975,[[-1],[0],[0],[0],[0],[20],[1]],[[0],[1,1,1,1,"W 4 ; B 200 ; W 8 ; F 200",150,0,100,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1392,2516,0,16,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,2976,[[-1],[0],[0],[0],[0],[20],[1]],[[0],[1,1,1,1,"W 1 ; B 450 ; W 11 ; F 450",150,0,100,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1424,2512,0,16,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,2977,[[-1],[0],[0],[0],[0],[20],[1]],[[0],[1,1,1,1,"W 1 ; B 450 ; W 11 ; F 450",150,0,100,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1488,2512,0,16,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,2978,[[-1],[0],[0],[0],[0],[20],[1]],[[0],[1,1,1,1,"W 17 ; B 400",250,0,100,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1640,2516,0,16,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,2979,[[-1],[0],[0],[0],[0],[20],[1]],[[0],[1,1,1,1,"W 17 ; B 400",250,0,100,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1760,2512,0,16,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,2980,[[-1],[0],[0],[0],[0],[20],[1]],[[0],[1,1,1,1,"W 2.5 ; B 100 ; W 9.5 ; F 100",150,0,100,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1800,2512,0,16,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,2981,[[-1],[0],[0],[0],[0],[20],[1]],[[0],[1,1,1,1,"W 4 ; B 50 ; W 8 ; F 50",150,0,100,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1856,2512,0,16,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,2982,[[-1],[0],[0],[0],[0],[20],[1]],[[0],[1,1,1,1,"W 2.5 ; B 250 ; W 9.5 ; F 250",150,0,100,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1328,2180,0,16,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],50,2983,[[-1],[0],[0],[0],[0],[20],[1]],[[0],[1,1,1,1,"W 1 ;B 250; W 11 ; F 250",150,0,100,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1360,2184,0,16,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],50,2984,[[-1],[0],[0],[0],[0],[20],[1]],[[0],[1,1,1,1,"W 1 ;B 250 ; W 11 ; F 250",150,0,100,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1456,2184,0,16,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],50,2985,[[-1],[0],[0],[0],[0],[20],[1]],[[0],[1,1,1,1,"W 2.5 ; B 250; W 9.5 ; F 250",150,0,100,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1658,2180,0,16,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],50,2986,[[-1],[0],[0],[0],[0],[20],[1]],[[0],[1,1,1,1,"W 2.5 ; B 250 ; W 9.5 ; F 250",150,0,100,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1696,2181,0,16,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],50,2987,[[-1],[0],[0],[0],[0],[20],[1]],[[0],[1,1,1,1,"W 4 ; B 250; W 8 ; F 250",150,0,100,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1736,2181,0,16,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],50,2988,[[-1],[0],[0],[0],[0],[20],[1]],[[0],[1,1,1,1,"W 4 ; B 250 ; W 8 ; F 250",150,0,100,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1832,2180,0,16,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,2989,[[-1],[0],[0],[0],[0],[20],[1]],[[0],[1,1,1,1,"F 250 ; W 12 ; B 250",150,0,100,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1976,2432,0,16,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],50,2991,[[-1],[0],[0],[0],[0],[20],[1]],[[0],[1,1,1,1,"W 2.5 ; F 800 ; W 7 ; B 800",150,0,100,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1568,1640,0,97,199,0,0,1,0.5257731676101685,0.4974874258041382,0,0,[]],44,2994,[],[[0]],[0,"Default",0,1]],[[1512,2776,0,16,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,1024,[[-1],[0],[0],[0],[0],[20],[1]],[[0],[1,1,1,1,"W 21; B 376",150,0,100,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1616,2776,0,16,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,1031,[[-1],[0],[0],[0],[0],[20],[1]],[[0],[1,1,1,1,"W 21; B 376",150,0,100,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1616,2528,0,8,296,0,0,1,0,0,0,0,[]],51,1033,[],[[0],[1],[1,100,""]],[0,0]],[[1504,2536,0,8,376,0,0,1,0,0,0,0,[]],51,1034,[],[[0],[1],[1,100,""]],[0,0]],[[1408,2272,0,32,32,0,0,1,0.5,0.5,0,0,[]],60,1036,[["level15"]],[[1],[400,-200,800,0,0,0],[0,0,0,1,1]],[0,"Default",0,1]],[[1424,2252,0,4,32,0,1.570796370506287,1,0,0,0,0,[]],51,1037,[],[[0],[1],[1,100,""]],[0,0]],[[1424,2288,0,4,32,0,1.570796370506287,1,0,0,0,0,[]],51,1038,[],[[0],[1],[1,100,""]],[0,0]],[[1424,2252,0,4,40,0,0,1,0,0,0,0,[]],51,1039,[],[[0],[1],[1,100,""]],[0,0]],[[1388,2252,0,4,40,0,0,1,0,0,0,0,[]],51,1040,[],[[0],[1],[1,100,""]],[0,0]],[[1344,2504,0,32,32,0,0,1,0.5,0.5,0,0,[]],49,1032,[[4],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[0,"Default",0,1]],[[1385,2264,0,8,16,0,0,1,0.5,0.5,0,0,[]],50,1041,[[-1],[0],[0],[0],[0],[4],[1]],[[0],[1,0,1,1,"F 5000",800,0,100,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1430,2264,0,8,16,0,0,1,0.5,0.5,0,0,[]],50,1042,[[-1],[0],[0],[0],[0],[4],[1]],[[0],[1,0,1,1,"F 5000",800,0,100,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1408,2246,0,8,16,0,0,1,0.5,0.5,0,0,[]],50,1043,[[-1],[0],[0],[0],[0],[4],[1]],[[0],[1,0,1,1,"F 5000",800,0,100,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1408,2298,0,8,16,0,0,1,0.5,0.5,0,0,[]],50,1044,[[-1],[0],[0],[0],[0],[4],[1]],[[0],[1,0,1,1,"F 5000",800,0,100,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1344,2488,0,8,16,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,1045,[[-1],[0],[0],[0],[0],[3],[1]],[[0],[1,1,1,1,"W 3 ; F 5000",800,0,100,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1440,2296,0,288,117,0,0,1,0,0,0,0,[[]]],61,5855,[],[[1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>","1",7,0,55,0,0,0,0,0,"",-1,0]],[[1512,1739,0,104,8,0,0,1,0,0,0,0,[]],45,2890,[],[[0],[1]],[0,0]],[[784,2528,0,832,536,0,0,1,0,0,0,0,[]],67,2891,[],[[1]],[0,0]],[[1616,2528,0,760,536,0,0,1,0,0,0,0,[]],67,2892,[],[[1]],[0,0]],[[368,2016,0,832,832,0,0,1,0,0,0,0,[]],67,2893,[],[[1]],[0,0]],[[368,912,0,1136,1256,0,0,1,0,0,0,0,[]],67,2894,[],[[1]],[0,0]],[[1624,904,0,1136,1256,0,0,1,0,0,0,0,[]],67,2901,[],[[1]],[0,0]],[[1936,2080,0,832,832,0,0,1,0,0,0,0,[]],67,2907,[],[[1]],[0,0]]],[]],["UI",2,821492964633820,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[240,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3097,[["right"]],[[0,1,0,1,1]],[0,"Default",0,1]],[[80,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3098,[["left"]],[[0,1,0,1,1]],[0,"Default",1,1]],[[560,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3099,[["up"]],[[1,1,1,1,1]],[0,"Default",3,1]],[[400,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3100,[["down"]],[[1,1,1,1,1]],[0,"Default",2,1]]],[]],["End Card",3,879168724782121,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],78,2607,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[12.04449462890625,194,0,615.9109497070313,67,0,0,1,0,0,0,0,[]],79,2608,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Timer for this level",2.5,0,0,0,0,0,-10,0,"",-1,0]],[[17.546875,248,0,604.90625,105,0,0,1,0,0,0,0,[]],80,2610,[[0],[0],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","13:40:40",4,0,63,50,0,0,-10,0,"",-1,0]],[[115.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,2611,[[0],[1],[0],[0],["replay"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Replay",""],[""],[2,2,0,0,0],["",""]],[0,"Replay",0,1]],[[524.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3086,[[0],[1],[0],[0],["next"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Next",""],[""],[2,2,0,0,0],["",""]],[0,"Next",0,1]],[[320.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3087,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > Back","Level Menu"],[""],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[320.75,521.8050537109375,0,384,96,0,0,1,0.5,0.5,0,0,[]],70,3088,[[1],[1],[0],[0],[""],["{\"size\": 22, \"left\": 70, \"right\": 18, \"alignY\": 60}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > DownloadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"DownloadReplay",0,1]]],[]],["Pause",4,912348311892223,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-310,678,0,274,31,0,0,1,0,0,0,0,[]],168,3089,[],[],[".ovo",0,1,"file"]],[[320,320,0,425,250,0,0,1,0.5,0.5,0,0,[]],82,3090,[],[[6,1,"",300,1,1,"",300,"overlay",1,"PauseClose",1,1]],[0,"Default",0,1]],[[214,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3091,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"",""],["PauseClose"],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[426,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3092,[[0],[1],[0],[0],["quit"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > GiveUp",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[115.5,202,0,409,118,0,0,1,0,0,0,0,[]],83,3093,[[1],[1],["pause"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Pause",4,0,57,50,0,0,-10,0,"",-1,0]],[[320.5,88,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3094,[[1],[1],[0],[0],["loadreplay"],["{\"size\": 16, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > LoadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"LoadReplay",0,1]],[[320.5,157,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3095,[[1],[0],[0],[0],["toggledebug"],["{\"size\": 15, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Debug > Toggle",""],[""],[2,2,0,0,0],["",""]],[0,"ToggleDebug",0,1]],[[78,448,0,484,134,0,0,1,0,0,0,0,[]],193,3096,[],[],[0,"Default",0,1]]],[]],["Overlay",5,231265547298517,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[432,4,0,203.0009155273438,64,0,0,1,0,0,0,0,[]],107,5488,[],[[1,0,1,0,1]],[2,2,2,2,0,1,0,0,1]],[[432,4,0,203,64,0,0,1,0,0,0,0,[]],84,3101,[[0],[0],[""],["en-us"],[0],[1],[1],["{\"alignY\": 85, \"alignX\": 45, \"size\": 28}"],[0],[1],[0],[0],[0]],[["",""],[1,0,1,0,1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",2,0,100,50,0,0,-10,0,"",-1,0]],[[88,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3102,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Pause",""],[""],[0,0,0,0,1],["",""]],[0,"Pause",0,1]],[[158,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3103,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Replay","1"],[""],[0,0,0,0,1],["",""]],[0,"Reload",0,1]]],[]],["End Game",6,242060849030122,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],85,3104,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[73,194,0,494,72,0,0,1,0,0,0,0,[]],86,3105,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],["{alignY:50}"],[0],[1],[0],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Your final time",2.5,0,50,50,0,0,-10,0,"",-1,0]],[[320,403,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3106,[[0],[1],[0],[0],[""],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Quit",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[73,243,0,494,85,0,0,1,0,0,0,0,[]],87,3108,[[0],[1],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",3,0,50,50,0,0,-10,0,"",-1,0]],[[73,318,0,494,25,0,0,1,0,0,0,0,[]],86,5480,[[1],[1],["tryagainhardmode"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Try again in hard mode!",1,0,50,50,0,0,-2,0,"",-1,0]]],[]],["Banner",7,350365488441290,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-237,-189,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,3109,[],[["overlay"]],[0,"Default",0,1]]],[]],["AdPlaying",8,145653442183190,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,-203.5,0,250,97,0,0,1,0.5,0.5,0,0,[]],125,390,[],[[6,1,"",300,1,1,"",300,"overlay",1,"",1,1],[]],[0,"Default",0,1]],[[209,-275,0,222,139,0,0,1,0,0,0,0,[]],86,391,[[1],[1],["adplaying"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","An ad is playing right now...",1.2,0,50,50,0,0,-2,0,"",-1,0]],[[-154.5756988525391,-294.3137512207031,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,5508,[],[["overlay"]],[0,"Default",0,1]]],[]]],[],[]],["Level 16",3200,5000,true,"Levels",344872519288960,[["Background",0,162345772182182,true,[255,255,255],false,0,0,1,false,false,1,0,0,[[[1389,573.7828369140625,0,288,32,0,0,1,0,0,0,0,[[]]],65,6374,[[1],[1],[""],["en-us"],[1],[0],[0],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","1",1,0,50,0,0,0,0,0,"",-1,0]]],[]],["Layer 0",1,506934102975545,true,[255,255,255],true,1,1,1,false,false,1,0,0,[[[1520,520,0,32,64,0,0,1,0.5,0.5,0,0,[]],42,5911,[["run"],[0],[1],[1],[0],[0.8],[0.5],[0],[1],[0],[0],[0],["ovo+"],[2],[0],[0],[0],[""],[0],[3],[0],[0],[0],[0],[0],[0],[0]],[[330,1500,1500,650,1500,1000,1,0,0,1],[],[1,0],[0,10000,360,1]],[1,"Default",0,1]],[[1332,472,0,60.93439102172852,60.93439102172852,0,0,1,0.5,0.5,0,0,[]],53,5912,[["A way down"],[""],[0]],[],[1,"Default",0,1]],[[1312,560,0,392,9,0,0,1,0,0,0,0,[]],51,5963,[],[[0],[1],[1,100,""]],[0,0]],[[1512,4704,0,97,199,0,0,1,0.5257731676101685,0.4974874258041382,0,0,[]],44,5986,[],[[0]],[0,"Default",0,1]],[[1680,573.5474853515625,0,51.09490966796875,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,5914,[[-1],[0],[0],[0],[0],[0],[1]],[[0],[1,1,1,1,"F 4000",200,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1032,1104,0,344,136,0,0,1,0.5,0.5,0,0,[]],50,5978,[[-1],[0],[0],[0],[0],[1],[1]],[[0],[1,1,1,1,"W 1 ; F 450",225,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1184,1072,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,5968,[[0],[1]],[[1],[1]],[0,"Default",0,1]],[[1200,1104,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,5969,[[0],[1]],[[1],[1]],[0,"Default",0,1]],[[1184,1136,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,5970,[[0],[1]],[[1],[1]],[0,"Default",0,1]],[[1168,1040,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,5971,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1168,1168,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,5972,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[344,1024,0,808,32,0,0,1,0,0,0,0,[]],51,5973,[],[[0],[1],[1,100,""]],[0,0]],[[336,1056,0,832,32,0,0,1,0,0,0,0,[]],51,5974,[],[[0],[1],[1,100,""]],[0,0]],[[344,1152,0,808,32,0,0,1,0,0,0,0,[]],51,5975,[],[[0],[1],[1,100,""]],[0,0]],[[352,1120,0,816,32,0,0,1,0,0,0,0,[]],51,5976,[],[[0],[1],[1,100,""]],[0,0]],[[344,1088,0,840,32,0,0,1,0,0,0,0,[]],51,5977,[],[[0],[1],[1,100,""]],[0,0]],[[1544,280,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,6351,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1208,-31,0,568,352,0,0,1,0,0,0,0,[]],51,6334,[],[[0],[1],[1,100,""]],[0,0]],[[81.93017578125,2663,0,2272,5550,0,0,1,0.5,0.5,0,0,[]],164,5980,[],[],[0,"Default",0,1]],[[1216,600,0,4432,1,0,1.570796370506287,1,0,0,0,0,[]],51,5966,[],[[0],[1],[1,100,""]],[0,0]],[[1768,744,0,4432,1,0,1.570796370506287,1,0,0,0,0,[]],51,5979,[],[[0],[1],[1,100,""]],[0,0]],[[1208,4800,0,560,9,0,0,1,0,0,0,0,[]],51,5981,[],[[0],[1],[1,100,""]],[0,0]],[[1168,1952,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,5982,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1184,1984,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,5983,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1168,2016,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,5984,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1152,1920,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,5985,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1152,2048,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,5987,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[696,1904,0,440,32,0,0,1,0,0,0,0,[]],51,5988,[],[[0],[1],[1,100,""]],[0,0]],[[688,1936,0,464,32,0,0,1,0,0,0,0,[]],51,5989,[],[[0],[1],[1,100,""]],[0,0]],[[696,2032,0,440,32,0,0,1,0,0,0,0,[]],51,5990,[],[[0],[1],[1,100,""]],[0,0]],[[704,2000,0,448,32,0,0,1,0,0,0,0,[]],51,5991,[],[[0],[1],[1,100,""]],[0,0]],[[696,1968,0,472,32,0,0,1,0,0,0,0,[]],51,5992,[],[[0],[1],[1,100,""]],[0,0]],[[1016,1984,0,328,136,0,0,1,0.5,0.5,0,0,[]],50,5993,[[-1],[0],[0],[0],[0],[2],[1]],[[0],[1,1,1,1,"W 5 ; F 235",150,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1184,2696,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,5994,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1200,2728,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,5995,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1184,2760,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,5996,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1168,2664,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,5997,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1168,2792,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,5998,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[712,2648,0,440,32,0,0,1,0,0,0,0,[]],51,5999,[],[[0],[1],[1,100,""]],[0,0]],[[704,2680,0,464,32,0,0,1,0,0,0,0,[]],51,6000,[],[[0],[1],[1,100,""]],[0,0]],[[712,2776,0,440,32,0,0,1,0,0,0,0,[]],51,6001,[],[[0],[1],[1,100,""]],[0,0]],[[720,2744,0,448,32,0,0,1,0,0,0,0,[]],51,6002,[],[[0],[1],[1,100,""]],[0,0]],[[712,2712,0,472,32,0,0,1,0,0,0,0,[]],51,6003,[],[[0],[1],[1,100,""]],[0,0]],[[1032,2728,0,328,136,0,0,1,0.5,0.5,0,0,[]],50,6004,[[-1],[0],[0],[0],[0],[5],[1]],[[0],[1,1,1,1,"W 9.5 ; F 100",150,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1160,2880,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6005,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1160,2912,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6006,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1160,2944,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6007,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1160,2848,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6008,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1160,2976,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6009,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[704,2832,0,440,32,0,0,1,0,0,0,0,[]],51,6010,[],[[0],[1],[1,100,""]],[0,0]],[[680,2864,0,464,32,0,0,1,0,0,0,0,[]],51,6011,[],[[0],[1],[1,100,""]],[0,0]],[[704,2960,0,440,32,0,0,1,0,0,0,0,[]],51,6012,[],[[0],[1],[1,100,""]],[0,0]],[[696,2928,0,448,32,0,0,1,0,0,0,0,[]],51,6013,[],[[0],[1],[1,100,""]],[0,0]],[[672,2896,0,472,32,0,0,1,0,0,0,0,[]],51,6014,[],[[0],[1],[1,100,""]],[0,0]],[[1016,2912,0,328,136,0,0,1,0.5,0.5,0,0,[]],50,6015,[[-1],[0],[0],[0],[0],[7],[1]],[[0],[1,1,1,1,"W 10 ; F 170",150,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1176,3512,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6038,[[0],[1]],[[1],[1]],[0,"Default",0,1]],[[1176,3544,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6039,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1176,3576,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6040,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1176,3480,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6041,[[0],[1]],[[1],[1]],[0,"Default",0,1]],[[1176,3605,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6042,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[720,3464,0,440,32,0,0,1,0,0,0,0,[]],51,6043,[],[[0],[1],[1,100,""]],[0,0]],[[696,3496,0,464,32,0,0,1,0,0,0,0,[]],51,6044,[],[[0],[1],[1,100,""]],[0,0]],[[720,3589,0,440,32,0,0,1,0,0,0,0,[]],51,6045,[],[[0],[1],[1,100,""]],[0,0]],[[712,3560,0,448,32,0,0,1,0,0,0,0,[]],51,6046,[],[[0],[1],[1,100,""]],[0,0]],[[688,3528,0,472,32,0,0,1,0,0,0,0,[]],51,6047,[],[[0],[1],[1,100,""]],[0,0]],[[1016,3544,0,328,136,0,0,1,0.5,0.5,0,0,[]],50,6048,[[-1],[0],[0],[0],[0],[1],[1]],[[0],[1,1,1,1,"W 11.5 ;F 275",300,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[2684,2510,0,1832,6052,0,0,1,0.5,0.5,0,0,[]],164,5967,[],[],[0,"Default",0,1]],[[1800,1384,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6049,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1784,1416,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6050,[[0],[1]],[[1],[1]],[0,"Default",0,1]],[[1800,1448,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6051,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1816,1352,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6052,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1816,1480,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6053,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2792,1368,0,960,32,0,3.141592741012573,1,0,0,0,0,[]],51,6054,[],[[0],[1],[1,100,""]],[0,0]],[[2928,1400,0,1112,32,0,3.141592741012573,1,0,0,0,0,[]],51,6055,[],[[0],[1],[1,100,""]],[0,0]],[[3096,1496,0,1264,32,0,3.141592741012573,1,0,0,0,0,[]],51,6056,[],[[0],[1],[1,100,""]],[0,0]],[[3352,1464,0,1536,32,0,3.141592741012573,1,0,0,0,0,[]],51,6057,[],[[0],[1],[1,100,""]],[0,0]],[[2976,1432,0,1176,32,0,3.141592741012573,1,0,0,0,0,[]],51,6058,[],[[0],[1],[1,100,""]],[0,0]],[[1880,1416,0,184,136,0,0,1,0.5,0.5,0,0,[]],50,6059,[[-1],[0],[0],[0],[0],[4],[1]],[[0],[1,1,1,1,"W 3 ; B 450",225,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1800,2696,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6060,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1816,2728,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6061,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1800,2760,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6062,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1784,2664,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6063,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1784,2792,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6064,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2680,2680,0,880,32,0,3.141592741012573,1,0,0,0,0,[]],51,6065,[],[[0],[1],[1,100,""]],[0,0]],[[2680,2712,0,864,32,0,3.141592741012573,1,0,0,0,0,[]],51,6066,[],[[0],[1],[1,100,""]],[0,0]],[[2576,2808,0,776,32,0,3.141592741012573,1,0,0,0,0,[]],51,6067,[],[[0],[1],[1,100,""]],[0,0]],[[2616,2776,0,800,32,0,3.141592741012573,1,0,0,0,0,[]],51,6068,[],[[0],[1],[1,100,""]],[0,0]],[[2560,2744,0,728,32,0,3.141592741012573,1,0,0,0,0,[]],51,6069,[],[[0],[1],[1,100,""]],[0,0]],[[1884,2728,0,208,136,0,3.141592741012573,1,0.5,0.5,0,0,[]],50,6070,[[-1],[0],[0],[0],[0],[6],[1]],[[0],[1,1,1,1,"W 9.5 ; F 350",300,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1800,1952,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,3052,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1784,1984,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,3055,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1800,2016,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,3056,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1816,1920,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,3057,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1816,2048,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,3058,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2792,1936,0,960,32,0,3.141592741012573,1,0,0,0,0,[]],51,3060,[],[[0],[1],[1,100,""]],[0,0]],[[2928,1968,0,1112,32,0,3.141592741012573,1,0,0,0,0,[]],51,4588,[],[[0],[1],[1,100,""]],[0,0]],[[3096,2064,0,1264,32,0,3.141592741012573,1,0,0,0,0,[]],51,4611,[],[[0],[1],[1,100,""]],[0,0]],[[3352,2032,0,1536,32,0,3.141592741012573,1,0,0,0,0,[]],51,4674,[],[[0],[1],[1,100,""]],[0,0]],[[2976,2000,0,1176,32,0,3.141592741012573,1,0,0,0,0,[]],51,4689,[],[[0],[1],[1,100,""]],[0,0]],[[1880,1984,0,184,136,0,0,1,0.5,0.5,0,0,[]],50,4692,[[-1],[0],[0],[0],[0],[2],[1]],[[0],[1,1,1,1,"W 5 ; B 235",150,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1784,2888,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,5557,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1784,2920,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,5629,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1784,2952,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,5859,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1784,2856,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6074,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1784,2984,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6075,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2680,2872,0,880,32,0,3.141592741012573,1,0,0,0,0,[]],51,6076,[],[[0],[1],[1,100,""]],[0,0]],[[2664,2904,0,864,32,0,3.141592741012573,1,0,0,0,0,[]],51,6077,[],[[0],[1],[1,100,""]],[0,0]],[[2576,3000,0,776,32,0,3.141592741012573,1,0,0,0,0,[]],51,6078,[],[[0],[1],[1,100,""]],[0,0]],[[2600,2968,0,800,32,0,3.141592741012573,1,0,0,0,0,[]],51,6079,[],[[0],[1],[1,100,""]],[0,0]],[[2528,2936,0,728,32,0,3.141592741012573,1,0,0,0,0,[]],51,6080,[],[[0],[1],[1,100,""]],[0,0]],[[1896,2920,0,216,136,0,3.141592741012573,1,0.5,0.5,0,0,[]],50,6081,[[-1],[0],[0],[0],[0],[6],[1]],[[0],[1,1,1,1,"W 10 ; F 280",250,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1784,3512,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6104,[[0],[1]],[[1],[1]],[0,"Default",0,1]],[[1784,3544,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6105,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1784,3576,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6106,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1784,3480,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6107,[[0],[1]],[[1],[1]],[0,"Default",0,1]],[[1784,3605,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6108,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2680,3496,0,880,32,0,3.141592741012573,1,0,0,0,0,[]],51,6109,[],[[0],[1],[1,100,""]],[0,0]],[[2664,3528,0,864,32,0,3.141592741012573,1,0,0,0,0,[]],51,6110,[],[[0],[1],[1,100,""]],[0,0]],[[2576,3621,0,776,32,0,3.141592741012573,1,0,0,0,0,[]],51,6111,[],[[0],[1],[1,100,""]],[0,0]],[[2600,3592,0,800,32,0,3.141592741012573,1,0,0,0,0,[]],51,6112,[],[[0],[1],[1,100,""]],[0,0]],[[2528,3560,0,728,32,0,3.141592741012573,1,0,0,0,0,[]],51,6113,[],[[0],[1],[1,100,""]],[0,0]],[[1880,3544,0,200,136,0,3.141592741012573,1,0.5,0.5,0,0,[]],50,6114,[[-1],[0],[0],[0],[0],[6],[1]],[[0],[1,1,1,1,"W 12 ; F 250",300,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1800,3072,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6082,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1784,3104,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6083,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1800,3136,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6084,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1816,3040,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6085,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1816,3168,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6086,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2792,3056,0,960,32,0,3.141592741012573,1,0,0,0,0,[]],51,6087,[],[[0],[1],[1,100,""]],[0,0]],[[2928,3088,0,1112,32,0,3.141592741012573,1,0,0,0,0,[]],51,6088,[],[[0],[1],[1,100,""]],[0,0]],[[3096,3184,0,1264,32,0,3.141592741012573,1,0,0,0,0,[]],51,6089,[],[[0],[1],[1,100,""]],[0,0]],[[3352,3152,0,1536,32,0,3.141592741012573,1,0,0,0,0,[]],51,6090,[],[[0],[1],[1,100,""]],[0,0]],[[2976,3120,0,1176,32,0,3.141592741012573,1,0,0,0,0,[]],51,6091,[],[[0],[1],[1,100,""]],[0,0]],[[1880,3104,0,184,136,0,0,1,0.5,0.5,0,0,[]],50,6092,[[-1],[0],[0],[0],[0],[2],[1]],[[0],[1,1,1,1,"W 10.5 ; B 210",150,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1800,3264,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6093,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1784,3296,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6094,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1800,3328,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6095,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1816,3232,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6096,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1816,3360,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6097,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2792,3248,0,960,32,0,3.141592741012573,1,0,0,0,0,[]],51,6098,[],[[0],[1],[1,100,""]],[0,0]],[[2928,3280,0,1112,32,0,3.141592741012573,1,0,0,0,0,[]],51,6099,[],[[0],[1],[1,100,""]],[0,0]],[[3096,3376,0,1264,32,0,3.141592741012573,1,0,0,0,0,[]],51,6100,[],[[0],[1],[1,100,""]],[0,0]],[[3352,3344,0,1536,32,0,3.141592741012573,1,0,0,0,0,[]],51,6101,[],[[0],[1],[1,100,""]],[0,0]],[[2976,3312,0,1176,32,0,3.141592741012573,1,0,0,0,0,[]],51,6102,[],[[0],[1],[1,100,""]],[0,0]],[[1880,3296,0,184,136,0,0,1,0.5,0.5,0,0,[]],50,6103,[[-1],[0],[0],[0],[0],[2],[1]],[[0],[1,1,1,1,"W 11 ; B 150",150,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1176,3072,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6016,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1152,3104,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6017,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1176,3136,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6018,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1200,3040,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6019,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1200,3168,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6020,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1184,3056,0,808,32,0,3.141592741012573,1,0,0,0,0,[]],51,6021,[],[[0],[1],[1,100,""]],[0,0]],[[1160,3088,0,768,32,0,3.141592741012573,1,0,0,0,0,[]],51,6022,[],[[0],[1],[1,100,""]],[0,0]],[[1184,3184,0,808,32,0,3.141592741012573,1,0,0,0,0,[]],51,6023,[],[[0],[1],[1,100,""]],[0,0]],[[1160,3152,0,768,32,0,3.141592741012573,1,0,0,0,0,[]],51,6024,[],[[0],[1],[1,100,""]],[0,0]],[[1136,3120,0,728,32,0,3.141592741012573,1,0,0,0,0,[]],51,6025,[],[[0],[1],[1,100,""]],[0,0]],[[1032,3104,0,328,136,0,3.141592741012573,1,0.5,0.5,0,0,[]],50,6026,[[-1],[0],[0],[0],[0],[6],[1]],[[0],[1,1,1,1,"W 10.5 ; B 210",250,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1176,3256,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6027,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1152,3288,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6028,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1176,3320,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6029,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1200,3224,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6030,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1200,3352,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6031,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1184,3240,0,808,32,0,3.141592741012573,1,0,0,0,0,[]],51,6032,[],[[0],[1],[1,100,""]],[0,0]],[[1160,3272,0,768,32,0,3.141592741012573,1,0,0,0,0,[]],51,6033,[],[[0],[1],[1,100,""]],[0,0]],[[1184,3368,0,808,32,0,3.141592741012573,1,0,0,0,0,[]],51,6034,[],[[0],[1],[1,100,""]],[0,0]],[[1160,3336,0,768,32,0,3.141592741012573,1,0,0,0,0,[]],51,6035,[],[[0],[1],[1,100,""]],[0,0]],[[1136,3304,0,728,32,0,3.141592741012573,1,0,0,0,0,[]],51,6036,[],[[0],[1],[1,100,""]],[0,0]],[[1032,3288,0,328,136,0,0,1,0.5,0.5,0,0,[]],50,6037,[[-1],[0],[0],[0],[0],[6],[1]],[[0],[1,1,1,1,"W 11; F 280",150,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1288,2208,0,88,9,0,1.570796370506287,1,0,0,0,0,[]],51,6115,[],[[0],[1],[1,100,""]],[0,0]],[[1248,2264,0,40,40,0,0,1,0.5,0.5,0,0,[]],60,6116,[["level16"]],[[0],[400,-200,800,0,0,0],[0,0,0,1,1]],[0,"Default",0,1]],[[1288,2400,0,248,9,0,1.570796370506287,1,0,0,0,0,[]],51,6117,[],[[0],[1],[1,100,""]],[0,0]],[[1288,2296,0,104,8,0,1.570796370506287,1,0,0,0,0,[]],45,6118,[],[[0],[1]],[0,0]],[[1232,2096,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6119,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1216,2072,0,32,9,0,0,1,0,0,0,0,[]],51,6120,[],[[0],[1],[1,100,""]],[0,0]],[[1272,2136,0,48,48,0,0,1,0.5,0.5,0,0,[]],49,6121,[[10],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[1,"Default",0,1]],[[1248,2080,0,16,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,6122,[[-1],[0],[0],[0],[0],[10],[1]],[[0],[1,0,1,1,"W 1 ; F 750",200,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1264,2096,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6123,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1248,2072,0,32,9,0,0,1,0,0,0,0,[]],51,6124,[],[[0],[1],[1,100,""]],[0,0]],[[1232,16,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6125,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1232,48,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6126,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1232,80,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6127,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1232,112,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6128,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1232,144,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6129,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1232,176,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6130,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1232,208,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6131,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1232,240,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6132,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1232,272,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6133,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1232,304,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6134,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1232,336,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6135,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1232,368,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6136,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1232,400,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6137,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1232,432,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6138,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1232,464,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6139,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1232,496,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6140,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1232,528,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6141,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1232,560,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6142,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1232,592,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6143,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1232,624,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6144,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1232,656,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6145,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1232,688,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6146,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1232,720,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6147,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1232,752,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6148,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1232,784,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6149,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1232,816,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6150,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1232,848,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6151,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1232,880,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6152,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1232,912,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6153,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1232,944,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6154,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1232,976,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6155,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1232,1008,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6156,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1232,1200,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6157,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1232,1232,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6158,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1232,1264,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6159,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1232,1296,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6160,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1232,1328,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6161,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1232,1360,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6162,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1232,1392,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6163,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1232,1424,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6164,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1232,1456,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6165,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1232,1488,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6166,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1232,1520,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6167,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1232,1552,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6168,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1232,1584,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6169,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1232,1616,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6170,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1232,1648,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6171,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1232,1680,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6172,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1232,1712,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6173,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1232,1744,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6174,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1232,1776,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6175,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1232,1808,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6176,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1232,1840,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6177,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1232,1872,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6178,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1232,2824,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6179,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1232,3008,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6180,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1232,3192,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6181,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1232,3384,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6182,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1232,3416,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6183,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1232,3448,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6184,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1232,3640,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6185,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1232,3672,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6186,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1232,3704,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6187,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1232,3736,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6188,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1232,3768,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6189,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1232,3800,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6190,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1232,3832,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6191,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1232,3864,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6192,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1232,3896,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6193,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1232,3928,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6194,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1232,3960,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6195,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1232,3992,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6196,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1232,4024,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6197,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1232,4056,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6198,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1232,4088,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6199,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1232,4120,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6200,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1232,4152,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6201,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1232,4184,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6202,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1232,4216,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6203,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1232,4248,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6204,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1232,4280,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6205,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1232,4312,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6206,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1232,4344,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6207,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1232,4376,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6208,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1232,4408,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6209,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1232,4440,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6210,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1752,3640,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6215,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1752,3672,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6216,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1752,3704,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6217,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1752,3736,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6218,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1752,3768,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6219,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1752,3800,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6220,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1752,3832,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6221,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1752,3864,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6222,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1752,3896,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6223,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1752,3928,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6224,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1752,3960,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6225,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1752,3992,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6226,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1752,4024,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6227,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1752,4056,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6228,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1752,4088,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6229,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1752,4120,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6230,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1752,4152,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6231,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1752,4184,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6232,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1752,4216,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6233,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1752,4248,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6234,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1752,4280,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6235,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1752,4312,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6236,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1752,4344,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6237,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1752,4376,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6238,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1752,4408,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6239,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1752,4440,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6240,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1752,4472,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6241,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1752,2824,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6245,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1752,3008,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6246,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1752,3192,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6247,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1752,3384,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6248,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1752,3416,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6249,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1752,3448,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6250,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1752,16,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6251,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1752,48,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6252,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1752,80,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6253,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1752,112,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6254,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1752,144,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6255,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1752,176,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6256,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1752,208,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6257,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1752,240,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6258,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1752,272,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6259,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1752,304,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6260,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1752,336,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6261,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1752,368,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6262,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1752,400,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6263,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1752,432,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6264,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1752,464,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6265,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1752,496,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6266,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1752,528,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6267,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1752,560,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6268,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1752,592,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6269,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1752,624,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6270,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1752,656,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6271,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1752,688,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6272,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1752,720,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6273,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1752,752,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6274,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1752,784,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6275,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1752,816,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6276,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1752,848,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6277,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1752,880,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6278,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1752,912,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6279,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1752,944,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6280,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1752,976,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6281,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1752,1008,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6282,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1752,1200,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6283,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1752,1232,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6284,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1752,1264,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6285,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1752,1296,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6286,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1752,1328,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6287,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1752,1488,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6292,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1752,1520,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6293,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1752,1552,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6294,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1752,1584,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6295,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1752,1616,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6296,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1752,1648,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6297,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1752,1680,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6298,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1752,1712,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6299,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1752,1744,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6300,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1752,1776,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6301,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1752,1808,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6302,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1752,1840,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6303,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1752,1872,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6304,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1224,3784,0,1272,32,0,3.141592741012573,1,0,0,0,0,[]],51,6288,[],[[0],[1],[1,100,""]],[0,0]],[[1224,3944,0,1272,32,0,3.141592741012573,1,0,0,0,0,[]],51,6289,[],[[0],[1],[1,100,""]],[0,0]],[[1224,4264,0,1272,32,0,3.141592741012573,1,0,0,0,0,[]],51,6290,[],[[0],[1],[1,100,""]],[0,0]],[[1224,4456,0,1272,32,0,3.141592741012573,1,0,0,0,0,[]],51,6291,[],[[0],[1],[1,100,""]],[0,0]],[[3032,3848,0,1272,32,0,3.141592741012573,1,0,0,0,0,[]],51,6305,[],[[0],[1],[1,100,""]],[0,0]],[[3032,4008,0,1272,32,0,3.141592741012573,1,0,0,0,0,[]],51,6306,[],[[0],[1],[1,100,""]],[0,0]],[[3032,4072,0,1272,32,0,3.141592741012573,1,0,0,0,0,[]],51,6307,[],[[0],[1],[1,100,""]],[0,0]],[[3032,4456,0,1272,32,0,3.141592741012573,1,0,0,0,0,[]],51,6308,[],[[0],[1],[1,100,""]],[0,0]],[[1496,3456,0,560,32,0,0,1,0.5,0.5,0,0,[]],49,6309,[[20],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[1,"Default",0,1]],[[1224,3768,0,8,16,0,0,1,0.5,0.5,0,0,[]],50,6310,[[-1],[0],[0],[0],[0],[20],[1]],[[0],[1,0,1,1,"W 1 ; F 300",200,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1224,3928,0,8,16,0,0,1,0.5,0.5,0,0,[]],50,6311,[[-1],[0],[0],[0],[0],[20],[1]],[[0],[1,0,1,1,"W 2 ;F 250",200,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1224,4248,0,8,16,0,0,1,0.5,0.5,0,0,[]],50,6312,[[-1],[0],[0],[0],[0],[20],[1]],[[0],[1,0,1,1,"W 3 ; F 400",400,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1224,4440,0,8,16,0,0,1,0.5,0.5,0,0,[]],50,6313,[[-1],[0],[0],[0],[0],[20],[1]],[[0],[1,0,1,1,"W 4.5 ;F 200",400,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1760,3832,0,8,16,0,3.141592741012573,1,0.5,0.5,0,0,[]],50,6314,[[-1],[0],[0],[0],[0],[20],[1]],[[0],[1,0,1,1,"W 1.5; F 200",200,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1760,3992,0,8,16,0,3.141592741012573,1,0.5,0.5,0,0,[]],50,6315,[[-1],[0],[0],[0],[0],[20],[1]],[[0],[1,0,1,1,"W 2.5 ;F 200",300,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1760,4056,0,8,16,0,3.141592741012573,1,0.5,0.5,0,0,[]],50,6316,[[-1],[0],[0],[0],[0],[20],[1]],[[0],[1,0,1,1,"W 2.75 ;F 300",300,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1760,4440,0,8,16,0,3.141592741012573,1,0.5,0.5,0,0,[]],50,6317,[[-1],[0],[0],[0],[0],[20],[1]],[[0],[1,0,1,1,"W 4.5 ; F 200",400,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1440,2272,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,6318,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1440,2304,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6319,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1584,2336,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,6320,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1584,2368,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6321,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1520,2416,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,6322,[[0],[1]],[[1],[1]],[0,"Default",0,1]],[[1520,2448,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6323,[[0],[1]],[[1],[1]],[0,"Default",0,1]],[[1416,2424,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,6324,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1416,2456,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6325,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1336,2528,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,6326,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1336,2560,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6327,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1584,2568,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,6328,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1584,2600,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6329,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1688,2248,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,6330,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1688,2280,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6331,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1696,2456,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,6332,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1696,2488,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6333,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1264,336,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6335,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1296,336,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6336,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1328,336,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6337,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1360,336,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6338,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1392,336,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6339,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1424,336,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6340,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1456,336,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6341,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1488,336,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6342,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1520,336,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6343,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1552,336,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6344,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1584,336,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6345,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1616,336,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6346,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1648,336,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6347,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1680,336,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6348,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1712,336,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6349,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1496,232,0,200,448,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,6350,[[-1],[0],[0],[0],[0],[0],[1]],[[0],[1,1,1,1,"F 4200",200,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1384,176,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],58,6352,[[0]],[[1],[1]],[0,"Default",0,1]],[[1608,176,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],58,6353,[[0]],[[1],[1]],[0,"Default",0,1]],[[1380,252,0,24,24,0,0,1,0.5,0.5,0,0,[]],58,6354,[[0]],[[1],[1]],[0,"Default",0,1]],[[1400,264,0,24,24,0,0,1,0.5,0.5,0,0,[]],58,6355,[[0]],[[1],[1]],[0,"Default",0,1]],[[1416,280,0,24,24,0,0,1,0.5,0.5,0,0,[]],58,6356,[[0]],[[1],[1]],[0,"Default",0,1]],[[1496,208,0,32,32,0,0,1,0.5,0.5,0,0,[]],58,6362,[[0]],[[1],[1]],[0,"Default",0,1]],[[1368,160,0,32,9,0,0,1,0,0,0,0,[]],52,6363,[],[[0],[0]],[0,0]],[[1592,160,0,32,9,0,0,1,0,0,0,0,[]],52,6364,[],[[0],[0]],[0,0]],[[1440,288,0,24,24,0,0,1,0.5,0.5,0,0,[]],58,6357,[[0]],[[1],[1]],[0,"Default",0,1]],[[1464,296,0,24,24,0,0,1,0.5,0.5,0,0,[]],58,6358,[[0]],[[1],[1]],[0,"Default",0,1]],[[1488,300,0,24,24,0,0,1,0.5,0.5,0,0,[]],58,6359,[[0]],[[1],[1]],[0,"Default",0,1]],[[1512,296,0,24,24,0,0,1,0.5,0.5,0,0,[]],58,6360,[[0]],[[1],[1]],[0,"Default",0,1]],[[1600,256,0,24,24,0,0,1,0.5,0.5,0,0,[]],58,6361,[[0]],[[1],[1]],[0,"Default",0,1]],[[1576,264,0,24,24,0,0,1,0.5,0.5,0,0,[]],58,6365,[[0]],[[1],[1]],[0,"Default",0,1]],[[1560,280,0,24,24,0,0,1,0.5,0.5,0,0,[]],58,6366,[[0]],[[1],[1]],[0,"Default",0,1]],[[1536,288,0,24,24,0,0,1,0.5,0.5,0,0,[]],58,6367,[[0]],[[1],[1]],[0,"Default",0,1]],[[1480,4360,0,48,56,0,0,1,0,0,0,0,[]],46,6211,[[0],[0],[""],["en-us"],[0],[0],[1],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","!",3,0,50,50,0,0,0,0,"",-1,0]],[[1388,5164.5,0,776,713,0,0,1,0.5,0.5,0,0,[]],164,6212,[],[],[0,"Default",0,1]],[[1389,445,0,288,117,0,0,1,0,0,0,0,[[]]],61,5860,[],[[1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>","1",7,0,55,0,0,0,0,0,"",-1,0]]],[]],["UI",2,478222968556736,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[240,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3097,[["right"]],[[0,1,0,1,1]],[0,"Default",0,1]],[[80,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3098,[["left"]],[[0,1,0,1,1]],[0,"Default",1,1]],[[560,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3099,[["up"]],[[1,1,1,1,1]],[0,"Default",3,1]],[[400,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3100,[["down"]],[[1,1,1,1,1]],[0,"Default",2,1]]],[]],["End Card",3,581348850784439,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],78,2607,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[12.04449462890625,194,0,615.9109497070313,67,0,0,1,0,0,0,0,[]],79,2608,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Timer for this level",2.5,0,0,0,0,0,-10,0,"",-1,0]],[[17.546875,248,0,604.90625,105,0,0,1,0,0,0,0,[]],80,2610,[[0],[0],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","13:40:40",4,0,63,50,0,0,-10,0,"",-1,0]],[[115.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,2611,[[0],[1],[0],[0],["replay"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Replay",""],[""],[2,2,0,0,0],["",""]],[0,"Replay",0,1]],[[524.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3086,[[0],[1],[0],[0],["next"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Next",""],[""],[2,2,0,0,0],["",""]],[0,"Next",0,1]],[[320.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3087,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > Back","Level Menu"],[""],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[320.75,521.8050537109375,0,384,96,0,0,1,0.5,0.5,0,0,[]],70,3088,[[1],[1],[0],[0],[""],["{\"size\": 22, \"left\": 70, \"right\": 18, \"alignY\": 60}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > DownloadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"DownloadReplay",0,1]]],[]],["Pause",4,270967472725775,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-310,678,0,274,31,0,0,1,0,0,0,0,[]],168,3089,[],[],[".ovo",0,1,"file"]],[[320,320,0,425,250,0,0,1,0.5,0.5,0,0,[]],82,3090,[],[[6,1,"",300,1,1,"",300,"overlay",1,"PauseClose",1,1]],[0,"Default",0,1]],[[214,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3091,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"",""],["PauseClose"],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[426,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3092,[[0],[1],[0],[0],["quit"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > GiveUp",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[115.5,202,0,409,118,0,0,1,0,0,0,0,[]],83,3093,[[1],[1],["pause"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Pause",4,0,57,50,0,0,-10,0,"",-1,0]],[[320.5,88,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3094,[[1],[1],[0],[0],["loadreplay"],["{\"size\": 16, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > LoadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"LoadReplay",0,1]],[[320.5,157,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3095,[[1],[0],[0],[0],["toggledebug"],["{\"size\": 15, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Debug > Toggle",""],[""],[2,2,0,0,0],["",""]],[0,"ToggleDebug",0,1]],[[78,448,0,484,134,0,0,1,0,0,0,0,[]],193,3096,[],[],[0,"Default",0,1]]],[]],["Overlay",5,468574074165859,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[432,4,0,203.0009155273438,64,0,0,1,0,0,0,0,[]],107,5488,[],[[1,0,1,0,1]],[2,2,2,2,0,1,0,0,1]],[[432,4,0,203,64,0,0,1,0,0,0,0,[]],84,3101,[[0],[0],[""],["en-us"],[0],[1],[1],["{\"alignY\": 85, \"alignX\": 45, \"size\": 28}"],[0],[1],[0],[0],[0]],[["",""],[1,0,1,0,1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",2,0,100,50,0,0,-10,0,"",-1,0]],[[88,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3102,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Pause",""],[""],[0,0,0,0,1],["",""]],[0,"Pause",0,1]],[[158,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3103,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Replay","1"],[""],[0,0,0,0,1],["",""]],[0,"Reload",0,1]]],[]],["End Game",6,400814735465770,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],85,3104,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[73,194,0,494,72,0,0,1,0,0,0,0,[]],86,3105,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],["{alignY:50}"],[0],[1],[0],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Your final time",2.5,0,50,50,0,0,-10,0,"",-1,0]],[[320,403,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3106,[[0],[1],[0],[0],[""],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Quit",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[73,243,0,494,85,0,0,1,0,0,0,0,[]],87,3108,[[0],[1],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",3,0,50,50,0,0,-10,0,"",-1,0]],[[73,318,0,494,25,0,0,1,0,0,0,0,[]],86,5480,[[1],[1],["tryagainhardmode"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Try again in hard mode!",1,0,50,50,0,0,-2,0,"",-1,0]]],[]],["Banner",7,363630318739425,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-237,-189,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,3109,[],[["overlay"]],[0,"Default",0,1]]],[]],["AdPlaying",8,662984523186919,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,-203.5,0,250,97,0,0,1,0.5,0.5,0,0,[]],125,390,[],[[6,1,"",300,1,1,"",300,"overlay",1,"",1,1],[]],[0,"Default",0,1]],[[209,-275,0,222,139,0,0,1,0,0,0,0,[]],86,391,[[1],[1],["adplaying"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","An ad is playing right now...",1.2,0,50,50,0,0,-2,0,"",-1,0]],[[-154.5756988525391,-294.3137512207031,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,5508,[],[["overlay"]],[0,"Default",0,1]]],[]]],[],[]],["Level 17",800,1700,true,"Levels",630003668845955,[["Layer 0",0,631922893658258,true,[255,255,255],false,1,1,1,false,false,1,0,0,[[[312,192,0,32,64,0,0,1,0.5,0.5,0,0,[]],42,469,[["run"],[0],[1],[1],[0],[0.6],[0.5],[0],[1],[0],[0],[0],[""],[2],[0],[0],[0],[""],[0],[3],[0],[0],[0],[0],[0],[0],[0]],[[330,1500,1500,650,1500,1000,0,0,0,1],[],[0,0],[0,10000,360,1]],[0,"Default",0,1]],[[200,256,0,304,8,0,0,1,0,0,0,0,[]],51,473,[],[[0],[1],[1,100,""]],[0,0]],[[608,688,0,160,64,0,0,1,0,0,0,0,[]],46,474,[[1],[1],[""],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Slow Down!",1,0,50,0,0,0,0,0,"",-1,0]],[[576,0,0,1312,8,0,1.570796370506287,1,0,0,0,0,[]],51,475,[],[[0],[1],[1,100,""]],[0,0]],[[504,264,0,832,8,0,1.570796370506287,1,0,0,0,0,[]],51,476,[],[[0],[1],[1,100,""]],[0,0]],[[520,304,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,477,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[520,336,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,478,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[520,368,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,479,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[520,400,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,480,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[520,432,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,481,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[520,464,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,482,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[520,496,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,483,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[520,528,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,484,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[520,560,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,485,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[520,592,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,486,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[520,624,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,487,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[384,1312,0,192,8,0,0,1,0,0,0,0,[]],51,488,[],[[0],[1],[1,100,""]],[0,0]],[[512,1296,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,489,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[544,1296,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,490,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[392,352,0,1184,8,0,1.570796370506287,1,0,0,0,0,[]],51,491,[],[[0],[1],[1,100,""]],[0,0]],[[456,280,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,492,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[480,584,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,493,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[408,432,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,494,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[408,1296,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,495,[[0.75],[0]],[[0]],[0,"Default",0,1]],[[392,544,0,112,8,0,0,1,0,0,0,0,[]],45,496,[],[[0],[1]],[0,0]],[[496,1520,0,97,199,0,0,1,0.5257731676101685,0.4974874258041382,0,0,[]],44,497,[],[[0]],[0,"Default",0,1]],[[256,256,0,1360,8,0,1.570796370506287,1,0,0,0,0,[]],51,498,[],[[0],[1],[1,100,""]],[0,0]],[[248,1616,0,232,8,0,0,1,0,0,0,0,[]],51,499,[],[[0],[1],[1,100,""]],[0,0]],[[480,1616,0,96,8,0,0,1,0,0,0,0,[]],51,500,[],[[0],[1],[1,100,""]],[0,0]],[[576,1304,0,320,8,0,1.570796370506287,1,0,0,0,0,[]],51,501,[],[[0],[1],[1,100,""]],[0,0]],[[368,408,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,502,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[368,440,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,503,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[368,472,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,504,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[368,504,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,505,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[368,536,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,506,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[368,568,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,507,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[368,600,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,508,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[368,632,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,509,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[368,664,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,510,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[368,696,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,511,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[368,728,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,512,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[272,960,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,513,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[272,992,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,514,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[272,1024,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,515,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[272,864,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,516,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[272,896,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,517,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[272,928,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,518,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[-121,83,0,60.93439102172852,60.93439102172852,0,0,1,0.5,0.5,0,0,[]],53,1419,[["Take it slow"],[""],[0]],[],[1,"Default",0,1]],[[240,48,0,300,117,0,0,1,0,0,0,0,[[]]],61,5608,[],[[1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>","1",7,0,65,0,0,0,0,0,"",-1,0]],[[504,240,0,32,32,0,0,1,0.5,0.5,0,0,[]],163,5510,[],[[0]],[0,"Default",0,1]],[[280,1176,0,40,40,0,0,1,0.5,0.5,0,0,[]],60,3276,[["level17"]],[[1],[400,-200,800,0,0,0],[0,0,0,1,1]],[0,"Default",0,1]],[[200,0,0,264,8,0,1.570796370506287,1,0,0,0,0,[]],51,519,[],[[0],[1],[1,100,""]],[0,0]],[[552,800,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,7215,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[552,832,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,10129,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[552,864,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,10133,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[552,896,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,10134,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[552,928,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,10135,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[576,720,0,80,32,0,3.141592741012573,1,0,0,0,0,[]],46,10142,[[0],[0],[""],["en-us"],[0],[0],[1],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","-->",1,0,50,0,0,0,0,0,"",-1,0]],[[520,1080,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,10139,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[496,984,0,80,32,0,0,1,0,0,0,0,[]],46,10136,[[0],[0],[""],["en-us"],[0],[0],[1],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","-->",1,0,50,0,0,0,0,0,"",-1,0]],[[480,888,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,10137,[[0.7],[0]],[[0]],[0,"Default",0,1]],[[464,904,0,32,8,0,0,1,0,0,0,0,[]],51,10138,[],[[0],[1],[1,100,""]],[0,0]],[[272,1456,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,10140,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[272,1488,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,10141,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[272,1520,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,10143,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[272,1360,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,10144,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[272,1392,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,10145,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[272,1424,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,10146,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[368,1360,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,10147,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[368,1392,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,10148,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[368,1424,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,10149,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[368,1456,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,10150,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[368,1488,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,10151,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[368,1520,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,10152,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[312,1136,0,80,8,0,1.570796370506287,1,0,0,0,0,[]],51,10153,[],[[0],[1],[1,100,""]],[0,0]]],[]],["UI",1,545647211003541,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[240,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3097,[["right"]],[[0,1,0,1,1]],[0,"Default",0,1]],[[80,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3098,[["left"]],[[0,1,0,1,1]],[0,"Default",1,1]],[[560,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3099,[["up"]],[[1,1,1,1,1]],[0,"Default",3,1]],[[400,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3100,[["down"]],[[1,1,1,1,1]],[0,"Default",2,1]]],[]],["End Card",2,506716938677593,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],78,2607,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[12.04449462890625,194,0,615.9109497070313,67,0,0,1,0,0,0,0,[]],79,2608,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Timer for this level",2.5,0,0,0,0,0,-10,0,"",-1,0]],[[17.546875,248,0,604.90625,105,0,0,1,0,0,0,0,[]],80,2610,[[0],[0],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","13:40:40",4,0,63,50,0,0,-10,0,"",-1,0]],[[115.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,2611,[[0],[1],[0],[0],["replay"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Replay",""],[""],[2,2,0,0,0],["",""]],[0,"Replay",0,1]],[[524.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3086,[[0],[1],[0],[0],["next"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Next",""],[""],[2,2,0,0,0],["",""]],[0,"Next",0,1]],[[320.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3087,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > Back","Level Menu"],[""],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[320.75,521.8050537109375,0,384,96,0,0,1,0.5,0.5,0,0,[]],70,3088,[[1],[1],[0],[0],[""],["{\"size\": 22, \"left\": 70, \"right\": 18, \"alignY\": 60}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > DownloadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"DownloadReplay",0,1]]],[]],["Pause",3,829849322931450,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-310,678,0,274,31,0,0,1,0,0,0,0,[]],168,3089,[],[],[".ovo",0,1,"file"]],[[320,320,0,425,250,0,0,1,0.5,0.5,0,0,[]],82,3090,[],[[6,1,"",300,1,1,"",300,"overlay",1,"PauseClose",1,1]],[0,"Default",0,1]],[[214,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3091,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"",""],["PauseClose"],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[426,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3092,[[0],[1],[0],[0],["quit"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > GiveUp",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[115.5,202,0,409,118,0,0,1,0,0,0,0,[]],83,3093,[[1],[1],["pause"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Pause",4,0,57,50,0,0,-10,0,"",-1,0]],[[320.5,88,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3094,[[1],[1],[0],[0],["loadreplay"],["{\"size\": 16, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > LoadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"LoadReplay",0,1]],[[320.5,157,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3095,[[1],[0],[0],[0],["toggledebug"],["{\"size\": 15, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Debug > Toggle",""],[""],[2,2,0,0,0],["",""]],[0,"ToggleDebug",0,1]],[[78,448,0,484,134,0,0,1,0,0,0,0,[]],193,3096,[],[],[0,"Default",0,1]]],[]],["Overlay",4,270616977996703,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[432,4,0,203.0009155273438,64,0,0,1,0,0,0,0,[]],107,5488,[],[[1,0,1,0,1]],[2,2,2,2,0,1,0,0,1]],[[432,4,0,203,64,0,0,1,0,0,0,0,[]],84,3101,[[0],[0],[""],["en-us"],[0],[1],[1],["{\"alignY\": 85, \"alignX\": 45, \"size\": 28}"],[0],[1],[0],[0],[0]],[["",""],[1,0,1,0,1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",2,0,100,50,0,0,-10,0,"",-1,0]],[[88,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3102,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Pause",""],[""],[0,0,0,0,1],["",""]],[0,"Pause",0,1]],[[158,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3103,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Replay","1"],[""],[0,0,0,0,1],["",""]],[0,"Reload",0,1]]],[]],["End Game",5,440432282242761,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],85,3104,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[73,194,0,494,72,0,0,1,0,0,0,0,[]],86,3105,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],["{alignY:50}"],[0],[1],[0],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Your final time",2.5,0,50,50,0,0,-10,0,"",-1,0]],[[320,403,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3106,[[0],[1],[0],[0],[""],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Quit",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[73,243,0,494,85,0,0,1,0,0,0,0,[]],87,3108,[[0],[1],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",3,0,50,50,0,0,-10,0,"",-1,0]],[[73,318,0,494,25,0,0,1,0,0,0,0,[]],86,5480,[[1],[1],["tryagainhardmode"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Try again in hard mode!",1,0,50,50,0,0,-2,0,"",-1,0]]],[]],["Banner",6,347680772306972,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-237,-189,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,3109,[],[["overlay"]],[0,"Default",0,1]]],[]],["AdPlaying",7,819016958094888,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,-203.5,0,250,97,0,0,1,0.5,0.5,0,0,[]],125,390,[],[[6,1,"",300,1,1,"",300,"overlay",1,"",1,1],[]],[0,"Default",0,1]],[[209,-275,0,222,139,0,0,1,0,0,0,0,[]],86,391,[[1],[1],["adplaying"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","An ad is playing right now...",1.2,0,50,50,0,0,-2,0,"",-1,0]],[[-154.5756988525391,-294.3137512207031,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,5508,[],[["overlay"]],[0,"Default",0,1]]],[]]],[],[]],["Level 18",1800,1800,true,"Levels",209366405920923,[["Background",0,786312801046162,true,[255,255,255],false,0,0,1,false,false,1,0,0,[[[-115,53,0,60.93439102172852,60.93439102172852,0,0,1,0.5,0.5,0,0,[]],53,1420,[["Mirrored Room I"],[""],[0]],[],[1,"Default",0,1]]],[]],["Layer 0",1,114389247531653,true,[255,255,255],true,1,1,1,false,false,1,0,0,[[[866.5393676757813,1396.238159179688,0,96,9,0,0,1,0,0,0,0,[]],51,1429,[],[[0],[1],[1,100,""]],[0,0]],[[912.5393676757813,1380.238159179688,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1430,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[193.5393676757813,1792.238159179688,0,1528,9,0,0,1,0,0,0,0,[]],51,715,[],[[0],[1],[1,100,""]],[0,0]],[[1721.539306640625,1528.238159179688,0,264,9,0,1.570796370506287,1,0,0,0,0,[]],51,736,[],[[0],[1],[1,100,""]],[0,0]],[[201.5393676757813,1520.238159179688,0,280,9,0,1.570796370506287,1,0,0,0,0,[]],51,767,[],[[0],[1],[1,100,""]],[0,0]],[[193.5393676757813,1520.238159179688,0,328,9,0,0,1,0,0,0,0,[]],51,768,[],[[0],[1],[1,100,""]],[0,0]],[[1393.539306640625,1528.238159179688,0,328,9,0,0,1,0,0,0,0,[]],51,769,[],[[0],[1],[1,100,""]],[0,0]],[[1401.539306640625,1272.238159179688,0,264,9,0,1.570796370506287,1,0,0,0,0,[]],51,770,[],[[0],[1],[1,100,""]],[0,0]],[[529.5393676757813,1264.238159179688,0,264,9,0,1.570796370506287,1,0,0,0,0,[]],51,771,[],[[0],[1],[1,100,""]],[0,0]],[[641.5393676757813,1264.238159179688,0,208,9,0,0,1,0,0,0,0,[]],51,772,[],[[0],[1],[1,100,""]],[0,0]],[[1209.539306640625,1264.238159179688,0,192,9,0,0,1,0,0,0,0,[]],51,773,[],[[0],[1],[1,100,""]],[0,0]],[[1081.539306640625,568.2381591796875,0,704,9,0,1.570796370506287,1,0,0,0,0,[]],51,774,[],[[0],[1],[1,100,""]],[0,0]],[[849.5393676757813,568.2381591796875,0,704,9,0,1.570796370506287,1,0,0,0,0,[]],51,775,[],[[0],[1],[1,100,""]],[0,0]],[[841.5393676757813,608.2381591796875,0,240,9,0,0,1,0,0,0,0,[]],51,776,[],[[0],[1],[1,100,""]],[0,0]],[[232.67529296875,1721.96630859375,0,32,64,0,0,1,0.5,0.5,0,0,[]],42,777,[["run"],[0],[1],[1],[0],[0.8],[0.5],[0],[1],[0],[0],[0],[""],[2],[0],[0],[0],[""],[0],[3],[0],[0],[0],[0],[0],[0],[0]],[[330,1500,1500,650,1500,1000,0,0,0,1],[],[0,0],[0,10000,360,1]],[0,"Default",0,1]],[[353.5393676757813,1609.62353515625,0,184,9,0,1.570796370506287,1,0,0,0,0,[]],51,778,[],[[0],[1],[1,100,""]],[0,0]],[[353.5393676757813,1528.238159179688,0,83,8,0,1.570796370506287,1,0,0,0,0,[]],45,779,[],[[0],[1]],[0,0]],[[537.5393676757813,1776.238159179688,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,780,[[0.7],[0]],[[0]],[0,"Default",0,1]],[[969.539306640625,736.0885009765625,0,1064.149658203125,9,0,1.570796370506287,1,0,0,0,0,[]],51,781,[],[[0],[1],[1,100,""]],[0,0]],[[985.5393676757813,752.2381591796875,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,782,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[985.5393676757813,1200.238159179688,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,783,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1057.539306640625,960.2381591796875,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,784,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[641.5393676757813,1704.238159179688,0,96,9,0,0,1,0,0,0,0,[]],51,788,[],[[0],[1],[1,100,""]],[0,0]],[[833.5393676757813,1648.238159179688,0,96,9,0,0,1,0,0,0,0,[]],51,789,[],[[0],[1],[1,100,""]],[0,0]],[[585.5393676757813,1576.238159179688,0,96,9,0,0,1,0,0,0,0,[]],51,790,[],[[0],[1],[1,100,""]],[0,0]],[[593.5393676757813,1368.238159179688,0,96,9,0,0,1,0,0,0,0,[]],51,791,[],[[0],[1],[1,100,""]],[0,0]],[[681.5393676757813,1464.238159179688,0,96,9,0,0,1,0,0,0,0,[]],51,792,[],[[0],[1],[1,100,""]],[0,0]],[[689.5393676757813,1688.238159179688,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,793,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[881.5393676757813,1632.238159179688,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,794,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[633.5393676757813,1560.238159179688,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,795,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[729.5393676757813,1448.238159179688,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,796,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[641.5393676757813,1352.238159179688,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,797,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[1009.539367675781,1648.238159179688,0,96,9,0,0,1,0,0,0,0,[]],51,798,[],[[0],[1],[1,100,""]],[0,0]],[[1057.539306640625,1632.238159179688,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,799,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[1177.539306640625,1712.238159179688,0,96,9,0,0,1,0,0,0,0,[]],51,800,[],[[0],[1],[1,100,""]],[0,0]],[[1225.539306640625,1696.238159179688,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,801,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1209.539306640625,1576.238159179688,0,96,9,0,0,1,0,0,0,0,[]],51,802,[],[[0],[1],[1,100,""]],[0,0]],[[1257.539306640625,1560.238159179688,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,803,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1089.539306640625,1456.238159179688,0,96,9,0,0,1,0,0,0,0,[]],51,804,[],[[0],[1],[1,100,""]],[0,0]],[[1137.539306640625,1440.238159179688,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,805,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1257.539306640625,1368.238159179688,0,96,9,0,0,1,0,0,0,0,[]],51,806,[],[[0],[1],[1,100,""]],[0,0]],[[1305.539306640625,1352.238159179688,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,807,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1401.539306640625,1776.238159179688,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,808,[[0.7],[0]],[[0]],[0,"Default",0,1]],[[1545.539306640625,1623.268798828125,0,176.9693603515625,9,0,1.570796370506287,1,0,0,0,0,[]],51,809,[],[[0],[1],[1,100,""]],[0,0]],[[1545.539306640625,1528.238159179688,0,94.5321044921875,8,0,1.570796370506287,1,0,0,0,0,[]],45,810,[],[[0],[1]],[0,0]],[[1649.539306640625,1696.238159179688,0,97,199,0,0,1,0.5257731676101685,0.4974874258041382,0,0,[]],44,811,[],[[0]],[0,"Default",0,1]],[[521.5393676757813,1264.238159179688,0,64,9,0,0,1,0,0,0,0,[]],51,812,[],[[0],[1],[1,100,""]],[0,0]],[[569.5393676757813,1264.238159179688,0,96,8,0,0,1,0,0,0,0,[]],45,813,[],[[0],[1]],[0,0]],[[737.5393676757813,960.2381591796875,0,56,9,0,1.570796370506287,1,0,0,0,0,[]],51,815,[],[[0],[1],[1,100,""]],[0,0]],[[737.5393676757813,816.2381591796875,0,56,9,0,1.570796370506287,1,0,0,0,0,[]],51,816,[],[[0],[1],[1,100,""]],[0,0]],[[737.5393676757813,656.2381591796875,0,56,9,0,1.570796370506287,1,0,0,0,0,[]],51,817,[],[[0],[1],[1,100,""]],[0,0]],[[737.5393676757813,488.2381591796875,0,56,9,0,1.570796370506287,1,0,0,0,0,[]],51,818,[],[[0],[1],[1,100,""]],[0,0]],[[841.5393676757813,568.2381591796875,0,72,8,0,0,1,0,0,0,0,[]],45,819,[],[[0],[1]],[0,0]],[[937.5393676757813,544.2381591796875,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,814,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[961.5393676757813,512.2381591796875,0,64,9,0,1.570796370506287,1,0,0,0,0,[]],51,821,[],[[0],[1],[1,100,""]],[0,0]],[[985.5393676757813,544.2381591796875,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,823,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[969.5393676757813,512.2381591796875,0,64,9,0,1.570796370506287,1,0,0,0,0,[]],51,824,[],[[0],[1],[1,100,""]],[0,0]],[[1009.539367675781,568.2381591796875,0,72,8,0,0,1,0,0,0,0,[]],45,825,[],[[0],[1]],[0,0]],[[1153.539306640625,1264.238159179688,0,96,8,0,0,1,0,0,0,0,[]],45,826,[],[[0],[1]],[0,0]],[[1073.539306640625,1264.238159179688,0,80,9,0,0,1,0,0,0,0,[]],51,827,[],[[0],[1],[1,100,""]],[0,0]],[[1097.539306640625,1248.238159179688,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,828,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1129.539306640625,1248.238159179688,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,829,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1225.539306640625,1248.238159179688,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,830,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[1257.539306640625,1248.238159179688,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,831,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1289.539306640625,1248.238159179688,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,832,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1321.539306640625,1248.238159179688,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,833,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1353.539306640625,1248.238159179688,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,834,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1385.539306640625,1248.238159179688,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,835,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[857.5393676757813,376.2381591796875,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,836,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[993.5393676757813,392.2381591796875,0,96,9,0,0,1,0,0,0,0,[]],51,837,[],[[0],[1],[1,100,""]],[0,0]],[[889.5393676757813,376.2381591796875,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,838,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[921.5393676757813,376.2381591796875,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,839,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1009.539367675781,416.2381591796875,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,840,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1041.539306640625,416.2381591796875,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,841,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1073.539306640625,416.2381591796875,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,842,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[841.5393676757813,352.2381591796875,0,96,9,0,0,1,0,0,0,0,[]],51,843,[],[[0],[1],[1,100,""]],[0,0]],[[865.5393676757813,592.2381591796875,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,844,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1153.539306640625,616.2381591796875,0,72,9,0,0,1,0,0,0,0,[]],51,820,[],[[0],[1],[1,100,""]],[0,0]],[[1225.539306640625,552.2381591796875,0,72,9,0,1.570796370506287,1,0,0,0,0,[]],51,822,[],[[0],[1],[1,100,""]],[0,0]],[[965.5393676757813,215.2381591796875,0,64,64,0,0,1,0.5,0.5,0,0,[]],60,5490,[["level18"]],[[0],[400,-200,800,0,0,0],[0,0,0,1,1]],[0,"Default",0,1]],[[347.5393676757813,1622.238159179688,0,288,117,0,0,1,0,0,0,0,[[]]],61,5609,[],[[1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>","1",7,0,60,0,0,0,0,0,"",-1,0]]],[]],["UI",2,463749848501370,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[240,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3097,[["right"]],[[0,1,0,1,1]],[0,"Default",0,1]],[[80,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3098,[["left"]],[[0,1,0,1,1]],[0,"Default",1,1]],[[560,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3099,[["up"]],[[1,1,1,1,1]],[0,"Default",3,1]],[[400,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3100,[["down"]],[[1,1,1,1,1]],[0,"Default",2,1]]],[]],["End Card",3,567072185279929,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],78,2607,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[12.04449462890625,194,0,615.9109497070313,67,0,0,1,0,0,0,0,[]],79,2608,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Timer for this level",2.5,0,0,0,0,0,-10,0,"",-1,0]],[[17.546875,248,0,604.90625,105,0,0,1,0,0,0,0,[]],80,2610,[[0],[0],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","13:40:40",4,0,63,50,0,0,-10,0,"",-1,0]],[[115.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,2611,[[0],[1],[0],[0],["replay"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Replay",""],[""],[2,2,0,0,0],["",""]],[0,"Replay",0,1]],[[524.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3086,[[0],[1],[0],[0],["next"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Next",""],[""],[2,2,0,0,0],["",""]],[0,"Next",0,1]],[[320.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3087,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > Back","Level Menu"],[""],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[320.75,521.8050537109375,0,384,96,0,0,1,0.5,0.5,0,0,[]],70,3088,[[1],[1],[0],[0],[""],["{\"size\": 22, \"left\": 70, \"right\": 18, \"alignY\": 60}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > DownloadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"DownloadReplay",0,1]]],[]],["Pause",4,186656589976782,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-310,678,0,274,31,0,0,1,0,0,0,0,[]],168,3089,[],[],[".ovo",0,1,"file"]],[[320,320,0,425,250,0,0,1,0.5,0.5,0,0,[]],82,3090,[],[[6,1,"",300,1,1,"",300,"overlay",1,"PauseClose",1,1]],[0,"Default",0,1]],[[214,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3091,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"",""],["PauseClose"],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[426,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3092,[[0],[1],[0],[0],["quit"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > GiveUp",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[115.5,202,0,409,118,0,0,1,0,0,0,0,[]],83,3093,[[1],[1],["pause"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Pause",4,0,57,50,0,0,-10,0,"",-1,0]],[[320.5,88,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3094,[[1],[1],[0],[0],["loadreplay"],["{\"size\": 16, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > LoadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"LoadReplay",0,1]],[[320.5,157,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3095,[[1],[0],[0],[0],["toggledebug"],["{\"size\": 15, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Debug > Toggle",""],[""],[2,2,0,0,0],["",""]],[0,"ToggleDebug",0,1]],[[78,448,0,484,134,0,0,1,0,0,0,0,[]],193,3096,[],[],[0,"Default",0,1]]],[]],["Overlay",5,218749369529165,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[432,4,0,203.0009155273438,64,0,0,1,0,0,0,0,[]],107,5488,[],[[1,0,1,0,1]],[2,2,2,2,0,1,0,0,1]],[[432,4,0,203,64,0,0,1,0,0,0,0,[]],84,3101,[[0],[0],[""],["en-us"],[0],[1],[1],["{\"alignY\": 85, \"alignX\": 45, \"size\": 28}"],[0],[1],[0],[0],[0]],[["",""],[1,0,1,0,1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",2,0,100,50,0,0,-10,0,"",-1,0]],[[88,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3102,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Pause",""],[""],[0,0,0,0,1],["",""]],[0,"Pause",0,1]],[[158,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3103,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Replay","1"],[""],[0,0,0,0,1],["",""]],[0,"Reload",0,1]]],[]],["End Game",6,383280674167056,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],85,3104,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[73,194,0,494,72,0,0,1,0,0,0,0,[]],86,3105,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],["{alignY:50}"],[0],[1],[0],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Your final time",2.5,0,50,50,0,0,-10,0,"",-1,0]],[[320,403,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3106,[[0],[1],[0],[0],[""],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Quit",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[73,243,0,494,85,0,0,1,0,0,0,0,[]],87,3108,[[0],[1],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",3,0,50,50,0,0,-10,0,"",-1,0]],[[73,318,0,494,25,0,0,1,0,0,0,0,[]],86,5480,[[1],[1],["tryagainhardmode"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Try again in hard mode!",1,0,50,50,0,0,-2,0,"",-1,0]]],[]],["Banner",7,470496841457915,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-237,-189,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,3109,[],[["overlay"]],[0,"Default",0,1]]],[]],["AdPlaying",8,220838136733913,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,-203.5,0,250,97,0,0,1,0.5,0.5,0,0,[]],125,390,[],[[6,1,"",300,1,1,"",300,"overlay",1,"",1,1],[]],[0,"Default",0,1]],[[209,-275,0,222,139,0,0,1,0,0,0,0,[]],86,391,[[1],[1],["adplaying"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","An ad is playing right now...",1.2,0,50,50,0,0,-2,0,"",-1,0]],[[-154.5756988525391,-294.3137512207031,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,5508,[],[["overlay"]],[0,"Default",0,1]]],[]]],[],[]],["Level 19",1400,1200,true,"Levels",936243084560580,[["Background",0,567572528787519,true,[255,255,255],false,0,0,1,false,false,1,0,0,[[[-120,40,0,60.93439102172852,60.93439102172852,0,0,1,0.5,0.5,0,0,[]],53,1421,[["Little Spikehouse"],[""],[0]],[],[1,"Default",0,1]]],[]],["Layer 0",1,280172131494618,true,[255,255,255],true,1,1,1,false,false,1,0,0,[[[1296,193,0,97,192,0,0,1,0.5257731676101685,0.4974874258041382,0,0,[]],44,655,[],[[0]],[0,"Default",0,1]],[[280,1128,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,672,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[744,160,0,192,64,0,0,1,0,0,0,0,[]],46,747,[[1],[1],[""],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Press Up and Down",1,0,50,0,0,0,0,0,"",-1,0]],[[16,944,0,288,117,0,0,1,0,0,0,0,[[]]],61,5610,[],[[1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>","1",7,0,60,0,0,0,0,0,"",-1,0]],[[552,680,0,64,64,0,0,1,0.5,0.5,0,0,[]],60,3280,[["level19"]],[[1],[400,-200,800,0,0,0],[0,0,0,1,1]],[0,"Default",0,1]],[[0,1192,0,1400,10,0,0,1,0,0,0,0,[]],67,650,[],[[1]],[0,0]],[[0,912,0,560,8,0,0,1,0,0,0,0,[]],67,681,[],[[1]],[0,0]],[[0,592,0,512,8,0,0,1,0,0,0,0,[]],67,682,[],[[1]],[0,0]],[[96,288,0,1304,8,0,0,1,0,0,0,0,[]],67,683,[],[[1]],[0,0]],[[0,0,0,1400,10,0,0,1,0,0,0,0,[]],67,684,[],[[1]],[0,0]],[[1400,0,0,1200,10,0,1.570796370506287,1,0,0,0,0,[]],67,685,[],[[1]],[0,0]],[[8,0,0,1200,10,0,1.570796370506287,1,0,0,0,0,[]],67,686,[],[[1]],[0,0]],[[1184,592,0,328,8,0,1.570796370506287,1,0,0,0,0,[]],67,687,[],[[1]],[0,0]],[[312,1104,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,688,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[376,1128,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,689,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[344,1104,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,690,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[272,1152,0,40,8,0,1.570796370506287,1,0,0,0,0,[]],45,691,[],[[0],[1]],[0,0]],[[296,1144,0,8,32,0,1.570796370506287,1,0,0,0,0,[]],67,692,[],[[1]],[0,0]],[[392,1152,0,40,8,0,1.570796370506287,1,0,0,0,0,[]],45,693,[],[[0],[1]],[0,0]],[[280,1016,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,694,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[312,1016,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,695,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[376,1016,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,696,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[344,1016,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,697,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[456,992,0,8,192,0,1.570796370506287,1,0,0,0,0,[]],67,698,[],[[1]],[0,0]],[[464,920,0,72,8,0,1.570796370506287,1,0,0,0,0,[]],45,699,[],[[0],[1]],[0,0]],[[272,920,0,72,8,0,1.570796370506287,1,0,0,0,0,[]],45,700,[],[[0],[1]],[0,0]],[[296,1168,0,64,16,0,0,1,0,0,0,0,[]],46,701,[[0],[0],[""],["en-us"],[0],[0],[1],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","-->",1,0,50,0,0,0,0,0,"",-1,0]],[[408,1016,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,702,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[440,1016,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,703,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[456,992,0,8,48,0,0,1,0,0,0,0,[]],67,704,[],[[1]],[0,0]],[[744,1032,0,8,288,0,1.570796370506287,1,0,0,0,0,[]],67,705,[],[[1]],[0,0]],[[688,1040,0,88,8,0,1.570796370506287,1,0,0,0,0,[]],45,706,[],[[0],[1]],[0,0]],[[744,1040,0,88,8,0,1.570796370506287,1,0,0,0,0,[]],45,707,[],[[0],[1]],[0,0]],[[744,1128,0,8,64,0,1.570796370506287,1,0,0,0,0,[]],67,708,[],[[1]],[0,0]],[[696,1152,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,709,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[728,1152,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,710,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[392,1144,0,8,32,0,1.570796370506287,1,0,0,0,0,[]],67,711,[],[[1]],[0,0]],[[328,1120,0,8,32,0,1.570796370506287,1,0,0,0,0,[]],67,712,[],[[1]],[0,0]],[[360,1120,0,8,32,0,1.570796370506287,1,0,0,0,0,[]],67,713,[],[[1]],[0,0]],[[352,1120,0,8,32,0,0,1,0,0,0,0,[]],67,714,[],[[1]],[0,0]],[[296,1120,0,8,32,0,0,1,0,0,0,0,[]],67,716,[],[[1]],[0,0]],[[-210.7200012207031,966.783935546875,0,200,80,0,0,1,-2.380000114440918,0.6399999856948853,0,0,[]],159,717,[],[[0]],[0,"Default",0,1]],[[-203,990,0,280,120,0,0,1,-2.380000114440918,0.6399999856948853,0,0,[]],159,718,[],[[0]],[0,"Default",0,1]],[[712,1112,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,720,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[960,1040,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,721,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[992,1040,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,722,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[976,1056,0,8,32,0,1.570796370506287,1,0,0,0,0,[]],67,723,[],[[1]],[0,0]],[[1008,1056,0,8,32,0,1.570796370506287,1,0,0,0,0,[]],67,724,[],[[1]],[0,0]],[[952,1064,0,128,8,0,1.570796370506287,1,0,0,0,0,[]],67,725,[],[[1]],[0,0]],[[1008,1064,0,128,8,0,1.570796370506287,1,0,0,0,0,[]],67,726,[],[[1]],[0,0]],[[1088,1176,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,727,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1120,1176,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,728,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1080,1008,0,152,8,0,1.570796370506287,1,0,0,0,0,[]],67,729,[],[[1]],[0,0]],[[960,1040,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,730,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1136,1112,0,8,56,0,1.570796370506287,1,0,0,0,0,[]],67,731,[],[[1]],[0,0]],[[1136,1008,0,152,8,0,1.570796370506287,1,0,0,0,0,[]],67,732,[],[[1]],[0,0]],[[1080,920,0,16,8,0,1.570796370506287,1,0,0,0,0,[]],67,733,[],[[1]],[0,0]],[[1136,920,0,16,8,0,1.570796370506287,1,0,0,0,0,[]],67,734,[],[[1]],[0,0]],[[1136,1000,0,8,64,0,1.570796370506287,1,0,0,0,0,[]],67,735,[],[[1]],[0,0]],[[1080,936,0,64,8,0,1.570796370506287,1,0,0,0,0,[]],45,738,[],[[0],[1]],[0,0]],[[1136,936,0,64,8,0,1.570796370506287,1,0,0,0,0,[]],45,739,[],[[0],[1]],[0,0]],[[1008,984,0,64,16,0,0,1,0,0,0,0,[]],46,741,[[0],[0],[""],["en-us"],[0],[0],[1],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","-->",1,0,50,0,0,0,0,0,"",-1,0]],[[1040,1176,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,742,[[0.47],[0]],[[0]],[0,"Default",0,1]],[[1128,928,0,8,56,0,1.570796370506287,1,0,0,0,0,[]],67,737,[],[[1]],[0,0]],[[1232,1104,0,8,64,0,1.570796370506287,1,0,0,0,0,[]],67,744,[],[[1]],[0,0]],[[1184,1088,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,745,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1216,1088,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,746,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1224,1104,0,8,96,0,0,1,0,0,0,0,[]],67,748,[],[[1]],[0,0]],[[1168,1104,0,8,88,0,0,1,0,0,0,0,[]],67,749,[],[[1]],[0,0]],[[1336,1176,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,743,[[0.7],[0]],[[0]],[0,"Default",0,1]],[[1184,912,0,208,8,0,0,1,0,0,0,0,[]],45,750,[],[[0],[1]],[0,0]],[[1304,680,0,88,8,0,0,1,0,0,0,0,[]],45,751,[],[[0],[1]],[0,0]],[[64,1112,0,32,64,0,0,1,0.5,0.5,0,0,[]],42,651,[["run"],[0],[1],[1],[0],[0.8],[0.5],[0],[1],[0],[0],[0],["Skin6"],[2],[0],[0],[0],[""],[0],[3],[0],[0],[0],[0],[0],[0],[0]],[[330,1500,1500,650,1500,1000,0,0,0,1],[],[0,0],[0,10000,360,1]],[1,"Default",0,1]],[[963.0001220703125,1072.151977539063,0,49,248,0,0,1,-2.380000114440918,0.6399999856948853,0,0,[]],159,740,[],[[0]],[0,"Default",0,1]],[[968,288,0,240,8,0,1.570796370506287,1,0,0,0,0,[]],67,752,[],[[1]],[0,0]],[[968,528,0,64,8,0,1.570796370506287,1,0,0,0,0,[]],45,754,[],[[0],[1]],[0,0]],[[768,296,0,168,8,0,1.570796370506287,1,0,0,0,0,[]],67,753,[],[[1]],[0,0]],[[768,464,0,72,8,0,1.570796370506287,1,0,0,0,0,[]],45,755,[],[[0],[1]],[0,0]],[[768,536,0,56,8,0,1.570796370506287,1,0,0,0,0,[]],67,756,[],[[1]],[0,0]],[[400,296,0,56,8,0,1.570796370506287,1,0,0,0,0,[]],67,757,[],[[1]],[0,0]],[[400,352,0,64,8,0,1.570796370506287,1,0,0,0,0,[]],45,758,[],[[0],[1]],[0,0]],[[400,416,0,176,8,0,1.570796370506287,1,0,0,0,0,[]],67,759,[],[[1]],[0,0]],[[648,576,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3107,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[680,576,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10154,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[712,576,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10155,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[744,576,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10156,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[784,576,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10157,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[816,576,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10158,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[416,576,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,760,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[448,576,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,761,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[480,576,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,766,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[592,296,0,8,224,0,0,1,0,0,0,0,[]],67,2059,[],[[1]],[0,0]],[[504,520,0,96,8,0,0,1,0,0,0,0,[]],45,2119,[],[[0],[1]],[0,0]],[[648,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10159,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[680,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10160,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[712,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10161,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[744,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10162,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[616,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10163,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[816,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10164,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[848,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10165,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[880,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10166,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[912,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10167,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[784,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10168,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[944,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10169,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[480,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10170,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[512,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10171,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[544,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10172,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[576,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10173,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[448,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10174,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[416,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10175,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[312,576,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10176,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[344,576,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10177,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[376,576,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10178,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[216,576,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10179,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[248,576,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10180,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[280,576,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10181,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[120,576,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10182,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[152,576,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10183,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[184,576,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10184,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[48,576,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,10185,[[0.7],[0]],[[0]],[0,"Default",0,1]],[[8,288,0,88,8,0,0,1,0,0,0,0,[]],45,10186,[],[[0],[1]],[0,0]],[[8,288,0,0,8,0,0,1,0,0,0,0,[]],67,10187,[],[[1]],[0,0]],[[728,248,0,8,96,0,1.570796370506287,1,0,0,0,0,[]],67,10188,[],[[1]],[0,0]],[[648,232,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10189,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[680,232,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10190,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[720,248,0,8,40,0,0,1,0,0,0,0,[]],67,10191,[],[[1]],[0,0]],[[632,248,0,8,40,0,0,1,0,0,0,0,[]],67,10192,[],[[1]],[0,0]],[[712,232,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10193,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[728,104,0,8,96,0,1.570796370506287,1,0,0,0,0,[]],67,10194,[],[[1]],[0,0]],[[648,128,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10195,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[680,128,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10196,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[720,8,0,8,104,0,0,1,0,0,0,0,[]],67,10197,[],[[1]],[0,0]],[[632,8,0,8,104,0,0,1,0,0,0,0,[]],67,10198,[],[[1]],[0,0]],[[712,128,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10199,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1040,248,0,8,96,0,1.570796370506287,1,0,0,0,0,[]],67,10200,[],[[1]],[0,0]],[[960,232,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10201,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[992,232,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10202,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1032,248,0,8,40,0,0,1,0,0,0,0,[]],67,10203,[],[[1]],[0,0]],[[944,248,0,8,40,0,0,1,0,0,0,0,[]],67,10204,[],[[1]],[0,0]],[[1024,232,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10205,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1040,104,0,8,96,0,1.570796370506287,1,0,0,0,0,[]],67,10206,[],[[1]],[0,0]],[[960,128,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10207,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[992,128,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10208,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1032,8,0,8,104,0,0,1,0,0,0,0,[]],67,10209,[],[[1]],[0,0]],[[944,8,0,8,104,0,0,1,0,0,0,0,[]],67,10210,[],[[1]],[0,0]],[[1024,128,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10211,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[624,912,0,560,8,0,0,1,0,0,0,0,[]],67,10213,[],[[1]],[0,0]],[[560,912,0,64,8,0,0,1,0,0,0,0,[]],45,10214,[],[[0],[1]],[0,0]],[[512,592,0,72,8,0,0,1,0,0,0,0,[]],45,10216,[],[[0],[1]],[0,0]],[[560,800,0,112,552,0,1.570796370506287,1,0,0,0,0,[]],67,10217,[],[[1]],[0,0]],[[504,800,0,584,8,0,0,1,0,0,0,0,[]],67,10218,[],[[1]],[0,0]],[[1088,712,0,96,8,0,1.570796370506287,1,0,0,0,0,[]],67,10219,[],[[1]],[0,0]],[[512,600,0,200,504,0,1.570796370506287,1,0,0,0,0,[]],67,10220,[],[[1]],[0,0]],[[704,896,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10221,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[800,896,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10222,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[904,896,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10224,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1032,896,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10225,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1064,896,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10226,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1160,616,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,10228,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1104,792,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,10229,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[1160,728,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,10230,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[856,760,0,8,96,0,1.570796370506287,1,0,0,0,0,[]],67,10223,[],[[1]],[0,0]],[[776,744,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10227,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[808,744,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10231,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[848,760,0,8,48,0,0,1,0,0,0,0,[]],67,10232,[],[[1]],[0,0]],[[760,760,0,8,48,0,0,1,0,0,0,0,[]],67,10233,[],[[1]],[0,0]],[[840,744,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10234,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[856,624,0,8,96,0,1.570796370506287,1,0,0,0,0,[]],67,10235,[],[[1]],[0,0]],[[776,648,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10236,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[808,648,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10237,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[848,592,0,8,40,0,0,1,0,0,0,0,[]],67,10238,[],[[1]],[0,0]],[[760,600,0,8,32,0,0,1,0,0,0,0,[]],67,10239,[],[[1]],[0,0]],[[840,648,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10240,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1032,784,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10241,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1064,784,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10242,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[872,784,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10243,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[952,784,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10244,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[552,784,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,10245,[[0.6],[0]],[[0]],[0,"Default",0,1]],[[552,548,0,96,40,0,0,1,0.5,0.5,0,0,[]],49,10246,[[1],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[1,"Default",0,1]],[[608,589,0,24,8,0,3.141592741012573,1,0.5,0.5,0,0,[]],50,10247,[[-1],[0],[0],[0],[0],[1],[1]],[[0],[1,0,1,1,"F 72",1000,0,100,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1176,592,0,8,592,0,1.570796370506287,1,0,0,0,0,[]],67,10248,[],[[1]],[0,0]],[[584,592,0,72,8,0,0,1,0,0,0,0,[]],51,10249,[],[[0],[1],[1,100,""]],[0,0]],[[576,896,0,160,40,0,0,1,0.5,0.5,0,0,[]],49,10215,[[2],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[1,"Default",0,1]],[[552,632,0,24,8,0,3.141592741012573,1,0.5,0.5,0,0,[]],50,10250,[[-1],[0],[0],[0],[0],[2],[1]],[[0],[1,0,1,1,"B 2000",1000,0,100,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[-2792,800,0,1176,320,0,0,1,-2.380000114440918,0.6399999856948853,0,0,[]],159,10212,[],[[0]],[0,"Default",0,1]],[[104,112,0,176,8,0,1.570796370506287,1,0,0,0,0,[]],67,10251,[],[[1]],[0,0]],[[176,24,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,10252,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[200,8,0,224,8,0,1.570796370506287,1,0,0,0,0,[]],67,10253,[],[[1]],[0,0]],[[176,56,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,10254,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[176,88,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,10255,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[176,120,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,10256,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[176,152,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,10257,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[176,184,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,10258,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[176,216,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,10259,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[344,288,0,8,96,0,1.570796370506287,1,0,0,0,0,[]],67,10260,[],[[1]],[0,0]],[[312,272,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10261,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[344,272,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10262,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[376,272,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10263,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1304,680,0,8,120,0,1.570796370506287,1,0,0,0,0,[]],67,10264,[],[[1]],[0,0]],[[280,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10265,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[312,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10266,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[344,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10267,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[376,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10268,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[248,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10269,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[216,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10270,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[184,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10271,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[152,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10272,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[120,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10273,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1144,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10276,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1176,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10277,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1208,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10278,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1240,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10279,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1112,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10280,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1080,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10281,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1048,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10282,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1016,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10283,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[984,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10284,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1272,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10274,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1304,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10275,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1336,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10285,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1368,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10286,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1160,592,0,8,96,0,1.570796370506287,1,0,0,0,0,[]],67,10287,[],[[1]],[0,0]],[[1080,576,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10288,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[1112,576,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10289,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[1144,576,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10290,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[760,944,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,10291,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[760,976,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,10292,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[760,1008,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,10293,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[744,920,0,120,8,0,1.570796370506287,1,0,0,0,0,[]],67,719,[],[[1]],[0,0]]],[]],["UI",2,617269672502699,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[240,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3097,[["right"]],[[0,1,0,1,1]],[0,"Default",0,1]],[[80,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3098,[["left"]],[[0,1,0,1,1]],[0,"Default",1,1]],[[560,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3099,[["up"]],[[1,1,1,1,1]],[0,"Default",3,1]],[[400,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3100,[["down"]],[[1,1,1,1,1]],[0,"Default",2,1]]],[]],["End Card",3,284356276525048,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],78,2607,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[12.04449462890625,194,0,615.9109497070313,67,0,0,1,0,0,0,0,[]],79,2608,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Timer for this level",2.5,0,0,0,0,0,-10,0,"",-1,0]],[[17.546875,248,0,604.90625,105,0,0,1,0,0,0,0,[]],80,2610,[[0],[0],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","13:40:40",4,0,63,50,0,0,-10,0,"",-1,0]],[[115.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,2611,[[0],[1],[0],[0],["replay"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Replay",""],[""],[2,2,0,0,0],["",""]],[0,"Replay",0,1]],[[524.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3086,[[0],[1],[0],[0],["next"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Next",""],[""],[2,2,0,0,0],["",""]],[0,"Next",0,1]],[[320.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3087,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > Back","Level Menu"],[""],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[320.75,521.8050537109375,0,384,96,0,0,1,0.5,0.5,0,0,[]],70,3088,[[1],[1],[0],[0],[""],["{\"size\": 22, \"left\": 70, \"right\": 18, \"alignY\": 60}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > DownloadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"DownloadReplay",0,1]]],[]],["Pause",4,413466930787756,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-310,678,0,274,31,0,0,1,0,0,0,0,[]],168,3089,[],[],[".ovo",0,1,"file"]],[[320,320,0,425,250,0,0,1,0.5,0.5,0,0,[]],82,3090,[],[[6,1,"",300,1,1,"",300,"overlay",1,"PauseClose",1,1]],[0,"Default",0,1]],[[214,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3091,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"",""],["PauseClose"],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[426,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3092,[[0],[1],[0],[0],["quit"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > GiveUp",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[115.5,202,0,409,118,0,0,1,0,0,0,0,[]],83,3093,[[1],[1],["pause"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Pause",4,0,57,50,0,0,-10,0,"",-1,0]],[[320.5,88,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3094,[[1],[1],[0],[0],["loadreplay"],["{\"size\": 16, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > LoadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"LoadReplay",0,1]],[[320.5,157,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3095,[[1],[0],[0],[0],["toggledebug"],["{\"size\": 15, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Debug > Toggle",""],[""],[2,2,0,0,0],["",""]],[0,"ToggleDebug",0,1]],[[78,448,0,484,134,0,0,1,0,0,0,0,[]],193,3096,[],[],[0,"Default",0,1]]],[]],["Overlay",5,973887515080016,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[432,4,0,203.0009155273438,64,0,0,1,0,0,0,0,[]],107,5488,[],[[1,0,1,0,1]],[2,2,2,2,0,1,0,0,1]],[[432,4,0,203,64,0,0,1,0,0,0,0,[]],84,3101,[[0],[0],[""],["en-us"],[0],[1],[1],["{\"alignY\": 85, \"alignX\": 45, \"size\": 28}"],[0],[1],[0],[0],[0]],[["",""],[1,0,1,0,1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",2,0,100,50,0,0,-10,0,"",-1,0]],[[88,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3102,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Pause",""],[""],[0,0,0,0,1],["",""]],[0,"Pause",0,1]],[[158,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3103,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Replay","1"],[""],[0,0,0,0,1],["",""]],[0,"Reload",0,1]]],[]],["End Game",6,952378260169049,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],85,3104,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[73,194,0,494,72,0,0,1,0,0,0,0,[]],86,3105,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],["{alignY:50}"],[0],[1],[0],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Your final time",2.5,0,50,50,0,0,-10,0,"",-1,0]],[[320,403,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3106,[[0],[1],[0],[0],[""],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Quit",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[73,243,0,494,85,0,0,1,0,0,0,0,[]],87,3108,[[0],[1],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",3,0,50,50,0,0,-10,0,"",-1,0]],[[73,318,0,494,25,0,0,1,0,0,0,0,[]],86,5480,[[1],[1],["tryagainhardmode"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Try again in hard mode!",1,0,50,50,0,0,-2,0,"",-1,0]]],[]],["Banner",7,299055822613984,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-237,-189,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,3109,[],[["overlay"]],[0,"Default",0,1]]],[]],["AdPlaying",8,847351372351203,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,-203.5,0,250,97,0,0,1,0.5,0.5,0,0,[]],125,390,[],[[6,1,"",300,1,1,"",300,"overlay",1,"",1,1],[]],[0,"Default",0,1]],[[209,-275,0,222,139,0,0,1,0,0,0,0,[]],86,391,[[1],[1],["adplaying"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","An ad is playing right now...",1.2,0,50,50,0,0,-2,0,"",-1,0]],[[-154.5756988525391,-294.3137512207031,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,5508,[],[["overlay"]],[0,"Default",0,1]]],[]]],[],[]],["Level 20",2000,2000,true,"Levels",508733314443253,[["Background",0,949304462420114,true,[255,255,255],false,0,0,1,false,false,1,0,0,[[[-112,62,0,60.93439102172852,60.93439102172852,0,0,1,0.5,0.5,0,0,[]],53,1422,[["Dormant Contraption"],[""],[0]],[],[1,"Default",0,1]]],[]],["Layer 0",1,663928150915135,true,[255,255,255],true,1,1,1,false,false,1,0,0,[[[856,1208,0,360,9,0,1.570796370506287,1,0,0,0,0,[]],51,786,[],[[0],[1],[1,100,""]],[0,0]],[[1816,1184,0,97,192,0,0,1,0.5257731676101685,0.4974874258041382,0,0,[]],44,787,[],[[0]],[0,"Default",0,1]],[[1208,1280,0,288,9,0,1.570796370506287,1,0,0,0,0,[]],51,847,[],[[0],[1],[1,100,""]],[0,0]],[[856,488,0,360,9,0,1.570796370506287,1,0,0,0,0,[]],51,848,[],[[0],[1],[1,100,""]],[0,0]],[[1208,488,0,696,9,0,1.570796370506287,1,0,0,0,0,[]],51,849,[],[[0],[1],[1,100,""]],[0,0]],[[1208,1568,0,360,9,0,3.141592741012573,1,0,0,0,0,[]],51,858,[],[[0],[1],[1,100,""]],[0,0]],[[1208,496,0,360,9,0,3.141592741012573,1,0,0,0,0,[]],51,859,[],[[0],[1],[1,100,""]],[0,0]],[[856,1056,0,158,9,0,1.570796370506287,1,0,0,0,0,[]],51,850,[],[[0],[1],[1,100,""]],[0,0]],[[856,848,0,112,9,0,1.570796370506287,1,0,0,0,0,[]],51,851,[],[[0],[1],[1,100,""]],[0,0]],[[1032,624,0,592,9,0,1.570796370506287,1,0,0,0,0,[]],51,867,[],[[0],[1],[1,100,""]],[0,0]],[[856,1208,0,168,8,0,0,1,0,0,0,0,[]],45,868,[],[[0],[1]],[0,0]],[[872,1544,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,869,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[904,1544,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,870,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[936,1544,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,871,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[968,1544,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,872,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1000,1544,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,873,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[928,1112,0,72,9,0,0,1,0,0,0,0,[]],51,874,[],[[0],[1],[1,100,""]],[0,0]],[[848,952,0,72,9,0,0,1,0,0,0,0,[]],51,875,[],[[0],[1],[1,100,""]],[0,0]],[[976,808,0,48,9,0,0,1,0,0,0,0,[]],51,876,[],[[0],[1],[1,100,""]],[0,0]],[[856,648,0,64,9,0,0,1,0,0,0,0,[]],51,877,[],[[0],[1],[1,100,""]],[0,0]],[[1040,512,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,878,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1008,512,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,879,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1048,744,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,881,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1080,744,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,882,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1112,744,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,883,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1144,744,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,884,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1088,920,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,885,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1120,920,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,886,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1152,920,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,887,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1184,920,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,888,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1048,1104,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,889,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1080,1104,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,890,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1112,1104,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,891,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1184,1104,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,892,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[1072,936,0,136,9,0,0,1,0,0,0,0,[]],51,893,[],[[0],[1],[1,100,""]],[0,0]],[[1024,760,0,136,9,0,0,1,0,0,0,0,[]],51,894,[],[[0],[1],[1,100,""]],[0,0]],[[1032,1120,0,96,9,0,0,1,0,0,0,0,[]],51,895,[],[[0],[1],[1,100,""]],[0,0]],[[1168,1120,0,32,9,0,0,1,0,0,0,0,[]],51,896,[],[[0],[1],[1,100,""]],[0,0]],[[1032,624,0,128,9,0,0,1,0,0,0,0,[]],51,880,[],[[0],[1],[1,100,""]],[0,0]],[[928,1272,0,32,32,0,1.308996915817261,1,0.5,0.5,0,0,[]],43,898,[[1.5],[0]],[[0]],[0,"Default",0,1]],[[1048,1144,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,897,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[1080,1144,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,899,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[872,1192,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,900,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[872,1160,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,901,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[872,1128,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,902,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[872,1096,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,903,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[872,832,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,904,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[872,800,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,905,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[872,768,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,906,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[872,736,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,907,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[872,704,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,908,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[872,672,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,909,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1008,912,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,910,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1008,880,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,911,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1008,848,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,912,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1008,1008,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,913,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1008,976,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,914,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1008,944,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,915,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[576,976,0,64,64,0,0,1,0.5,0.5,0,0,[]],60,845,[["level20"]],[[1],[400,-200,800,0,0,0],[0,0,0,1,1]],[0,"Default",0,1]],[[240,888,0,288,117,0,0,1,0,0,0,0,[[]]],61,5611,[],[[1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>","1",7,0,60,0,0,0,0,0,"",-1,0]],[[1024,1208,0,8,864,0,1.570796370506287,1,0,0,0,0,[]],67,853,[],[[1]],[0,0]],[[848,712,0,8,696,0,1.570796370506287,1,0,0,0,0,[]],67,854,[],[[1]],[0,0]],[[152,720,0,8,496,0,0,1,0,0,0,0,[]],67,855,[],[[1]],[0,0]],[[608,1192,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,856,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[640,1192,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,857,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[856,1056,0,8,144,0,1.570796370506287,1,0,0,0,0,[]],67,860,[],[[1]],[0,0]],[[712,856,0,8,456,0,1.570796370506287,1,0,0,0,0,[]],67,861,[],[[1]],[0,0]],[[704,864,0,8,200,0,0,1,0,0,0,0,[]],67,862,[],[[1]],[0,0]],[[160,856,0,96,8,0,0,1,0,0,0,0,[]],45,863,[],[[0],[1]],[0,0]],[[864,976,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,852,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[544,1192,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,864,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[576,1192,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,865,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[512,1192,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,866,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[608,1064,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,916,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[640,1064,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,917,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[544,1064,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,918,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[576,1064,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,919,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[512,1064,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,920,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[656,1040,0,8,160,0,1.570796370506287,1,0,0,0,0,[]],67,921,[],[[1]],[0,0]],[[504,864,0,176,8,0,1.570796370506287,1,0,0,0,0,[]],45,10294,[],[[0],[1]],[0,0]],[[656,864,0,176,8,0,1.570796370506287,1,0,0,0,0,[]],45,10295,[],[[0],[1]],[0,0]],[[504,864,0,184,9,0,1.570796370506287,1,0,0,0,0,[]],51,10296,[],[[0],[1],[1,100,""]],[0,0]],[[656,936,0,112,9,0,1.570796370506287,1,0,0,0,0,[]],51,10297,[],[[0],[1],[1,100,""]],[0,0]],[[192,1128,0,32,8,0,0,1,0,0,0,0,[]],45,10301,[],[[0],[1]],[0,0]],[[208,1112,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,10302,[[0.7],[0]],[[0]],[0,"Default",0,1]],[[208,1152,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10303,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[272,1064,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10304,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[304,1064,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10305,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[288,1080,0,8,32,0,1.570796370506287,1,0,0,0,0,[]],67,10306,[],[[1]],[0,0]],[[320,1080,0,8,32,0,1.570796370506287,1,0,0,0,0,[]],67,10307,[],[[1]],[0,0]],[[264,1080,0,128,8,0,1.570796370506287,1,0,0,0,0,[]],67,10308,[],[[1]],[0,0]],[[320,1088,0,128,8,0,1.570796370506287,1,0,0,0,0,[]],67,10309,[],[[1]],[0,0]],[[272,1064,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10310,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[176,1192,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10298,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[208,1192,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10299,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[240,1192,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10300,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[264,864,0,72,9,0,1.570796370506287,1,0,0,0,0,[]],51,10311,[],[[0],[1],[1,100,""]],[0,0]],[[240,920,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,10312,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[240,888,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,10313,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[336,1192,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,10314,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[336,1160,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,10315,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[336,1128,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,10316,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[336,1096,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,10317,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[141.0400390625,980.06396484375,0,152,184,0,0,1,-2.380000114440918,0.6399999856948853,0,0,[]],159,10318,[],[[0]],[0,"Default",0,1]],[[504,800,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10320,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[536,800,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10321,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[472,800,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10322,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[672,840,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10319,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[640,840,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10323,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[552,776,0,8,96,0,1.570796370506287,1,0,0,0,0,[]],67,10324,[],[[1]],[0,0]],[[464,720,0,64,8,0,1.570796370506287,1,0,0,0,0,[]],45,10325,[],[[0],[1]],[0,0]],[[552,720,0,64,8,0,1.570796370506287,1,0,0,0,0,[]],45,10326,[],[[0],[1]],[0,0]],[[504,760,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10327,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[832,800,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,10328,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[832,768,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,10329,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[832,736,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,10330,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[832,896,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,10331,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[832,864,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,10332,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[832,832,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,10333,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1888,1280,0,8,680,0,1.570796370506287,1,0,0,0,0,[]],67,10334,[],[[1]],[0,0]],[[1888,976,0,8,680,0,1.570796370506287,1,0,0,0,0,[]],67,10335,[],[[1]],[0,0]],[[1880,976,0,8,312,0,0,1,0,0,0,0,[]],67,10336,[],[[1]],[0,0]],[[856,1392,0,72,9,0,0,1,0,0,0,0,[]],51,10337,[],[[0],[1],[1,100,""]],[0,0]],[[1288,1176,0,104,9,0,1.570796370506287,1,0,0,0,0,[]],51,10338,[],[[0],[1],[1,100,""]],[0,0]],[[952,1512,0,32,9,0,0,1,0,0,0,0,[]],51,10339,[],[[0],[1],[1,100,""]],[0,0]],[[1208,1176,0,160,8,0,0,1,0,0,0,0,[]],45,10340,[],[[0],[1]],[0,0]],[[1304,1264,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10341,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1336,1264,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10342,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1368,1264,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10343,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1400,1264,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10344,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1432,1264,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10345,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1464,1264,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10346,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1496,1264,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10347,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1528,1264,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10348,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1560,1264,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10349,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1592,1264,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10350,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1624,1264,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10351,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1656,1264,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10352,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1688,1264,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10353,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1720,1264,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10354,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1752,1264,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10355,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1800,1264,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10358,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1832,1264,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10359,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1864,1264,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10360,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1224,1000,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10356,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1256,1000,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10357,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1288,1000,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10361,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1320,1000,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10362,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1352,1000,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10363,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1384,1000,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10364,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1416,1000,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10365,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1448,1000,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10366,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1480,1000,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10367,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1512,1000,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10368,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1544,1000,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10369,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1576,1000,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10370,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1608,1000,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10371,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1640,1000,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10372,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1672,1000,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10373,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1704,1000,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10374,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1736,1000,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10375,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1768,1000,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10376,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1800,1000,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10377,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1832,1000,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10378,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1864,1000,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10379,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[747,1151,0,32,64,0,0,1,0.5,0.5,0,0,[]],42,846,[["run"],[0],[1],[1],[0],[0.8],[0.5],[0],[1],[0],[0],[0],[""],[2],[0],[0],[0],[""],[0],[3],[0],[0],[0],[0],[0],[0],[0]],[[330,1500,1500,650,1500,1000,0,0,0,1],[],[0,0],[0,10000,360,1]],[1,"Default",0,1]]],[]],["UI",2,438539905421414,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[240,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3097,[["right"]],[[0,1,0,1,1]],[0,"Default",0,1]],[[80,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3098,[["left"]],[[0,1,0,1,1]],[0,"Default",1,1]],[[560,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3099,[["up"]],[[1,1,1,1,1]],[0,"Default",3,1]],[[400,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3100,[["down"]],[[1,1,1,1,1]],[0,"Default",2,1]]],[]],["End Card",3,925818108645309,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],78,2607,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[12.04449462890625,194,0,615.9109497070313,67,0,0,1,0,0,0,0,[]],79,2608,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Timer for this level",2.5,0,0,0,0,0,-10,0,"",-1,0]],[[17.546875,248,0,604.90625,105,0,0,1,0,0,0,0,[]],80,2610,[[0],[0],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","13:40:40",4,0,63,50,0,0,-10,0,"",-1,0]],[[115.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,2611,[[0],[1],[0],[0],["replay"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Replay",""],[""],[2,2,0,0,0],["",""]],[0,"Replay",0,1]],[[524.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3086,[[0],[1],[0],[0],["next"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Next",""],[""],[2,2,0,0,0],["",""]],[0,"Next",0,1]],[[320.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3087,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > Back","Level Menu"],[""],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[320.75,521.8050537109375,0,384,96,0,0,1,0.5,0.5,0,0,[]],70,3088,[[1],[1],[0],[0],[""],["{\"size\": 22, \"left\": 70, \"right\": 18, \"alignY\": 60}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > DownloadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"DownloadReplay",0,1]]],[]],["Pause",4,596070738526571,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-310,678,0,274,31,0,0,1,0,0,0,0,[]],168,3089,[],[],[".ovo",0,1,"file"]],[[320,320,0,425,250,0,0,1,0.5,0.5,0,0,[]],82,3090,[],[[6,1,"",300,1,1,"",300,"overlay",1,"PauseClose",1,1]],[0,"Default",0,1]],[[214,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3091,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"",""],["PauseClose"],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[426,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3092,[[0],[1],[0],[0],["quit"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > GiveUp",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[115.5,202,0,409,118,0,0,1,0,0,0,0,[]],83,3093,[[1],[1],["pause"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Pause",4,0,57,50,0,0,-10,0,"",-1,0]],[[320.5,88,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3094,[[1],[1],[0],[0],["loadreplay"],["{\"size\": 16, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > LoadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"LoadReplay",0,1]],[[320.5,157,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3095,[[1],[0],[0],[0],["toggledebug"],["{\"size\": 15, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Debug > Toggle",""],[""],[2,2,0,0,0],["",""]],[0,"ToggleDebug",0,1]],[[78,448,0,484,134,0,0,1,0,0,0,0,[]],193,3096,[],[],[0,"Default",0,1]]],[]],["Overlay",5,197173880617954,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[432,4,0,203.0009155273438,64,0,0,1,0,0,0,0,[]],107,5488,[],[[1,0,1,0,1]],[2,2,2,2,0,1,0,0,1]],[[432,4,0,203,64,0,0,1,0,0,0,0,[]],84,3101,[[0],[0],[""],["en-us"],[0],[1],[1],["{\"alignY\": 85, \"alignX\": 45, \"size\": 28}"],[0],[1],[0],[0],[0]],[["",""],[1,0,1,0,1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",2,0,100,50,0,0,-10,0,"",-1,0]],[[88,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3102,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Pause",""],[""],[0,0,0,0,1],["",""]],[0,"Pause",0,1]],[[158,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3103,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Replay","1"],[""],[0,0,0,0,1],["",""]],[0,"Reload",0,1]]],[]],["End Game",6,520701841585900,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],85,3104,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[73,194,0,494,72,0,0,1,0,0,0,0,[]],86,3105,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],["{alignY:50}"],[0],[1],[0],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Your final time",2.5,0,50,50,0,0,-10,0,"",-1,0]],[[320,403,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3106,[[0],[1],[0],[0],[""],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Quit",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[73,243,0,494,85,0,0,1,0,0,0,0,[]],87,3108,[[0],[1],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",3,0,50,50,0,0,-10,0,"",-1,0]],[[73,318,0,494,25,0,0,1,0,0,0,0,[]],86,5480,[[1],[1],["tryagainhardmode"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Try again in hard mode!",1,0,50,50,0,0,-2,0,"",-1,0]]],[]],["Banner",7,837209047512144,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-237,-189,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,3109,[],[["overlay"]],[0,"Default",0,1]]],[]],["AdPlaying",8,593068260486296,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,-203.5,0,250,97,0,0,1,0.5,0.5,0,0,[]],125,390,[],[[6,1,"",300,1,1,"",300,"overlay",1,"",1,1],[]],[0,"Default",0,1]],[[209,-275,0,222,139,0,0,1,0,0,0,0,[]],86,391,[[1],[1],["adplaying"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","An ad is playing right now...",1.2,0,50,50,0,0,-2,0,"",-1,0]],[[-154.5756988525391,-294.3137512207031,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,5508,[],[["overlay"]],[0,"Default",0,1]]],[]]],[],[]],["Level 21",850,2400,true,"Levels",270332673925870,[["Background",0,676958727605149,true,[255,255,255],false,0,0,1,false,false,1,0,0,[[[-101,105,0,60.93439102172852,60.93439102172852,0,0,1,0.5,0.5,0,0,[]],53,1423,[["A way up"],[""],[0]],[],[1,"Default",0,1]]],[]],["Layer 0",1,543619172481489,true,[255,255,255],true,1,1,1,false,false,1,0,0,[[[234.0000610351563,94,0,2192,9,0,1.570796370506287,1,0,0,0,0,[]],51,924,[],[[0],[1],[1,100,""]],[0,0]],[[650,94,0,2192,9,0,1.570796370506287,1,0,0,0,0,[]],51,925,[],[[0],[1],[1,100,""]],[0,0]],[[226,94,0,416,9,0,0,1,0,0,0,0,[]],51,926,[],[[0],[1],[1,100,""]],[0,0]],[[450,206,0,97,192,0,0,1,0.5257731676101685,0.4974874258041382,0,0,[]],44,927,[],[[0]],[0,"Default",0,1]],[[224,2280,0,424,9,0,0,1,0,0,0,0,[]],51,929,[],[[0],[1],[1,100,""]],[0,0]],[[304,2264,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,939,[[0.6],[0]],[[0]],[0,"Default",0,1]],[[416,2064,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,985,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[384,2032,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,986,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[352,2064,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,987,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[384,2096,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,988,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[368,2048,0,32,32,0,0,1,0,0,0,0,[]],51,989,[],[[0],[1],[1,100,""]],[0,0]],[[234,302,0,416,8,0,0,1,0,0,0,0,[]],45,943,[],[[0],[1]],[0,0]],[[588,1256,0,64,64,0,0,1,0.5,0.5,0,0,[]],60,922,[["level21"]],[[1],[400,-200,800,0,0,0],[0,0,0,1,1]],[0,"Default",0,1]],[[296,1816,0,300,117,0,0,1,0,0,0,0,[[]]],61,5612,[],[[1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>","1",7,0,70,0,0,0,0,0,"",-1,0]],[[560,2264,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,930,[[0.6],[0]],[[0]],[0,"Default",0,1]],[[528,2064,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,931,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[496,2032,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,932,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[464,2064,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,933,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[496,2096,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,934,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[480,2048,0,32,32,0,0,1,0,0,0,0,[]],51,935,[],[[0],[1],[1,100,""]],[0,0]],[[444,2048,0,40,9,0,1.570796370506287,1,0,0,0,0,[]],51,936,[],[[0],[1],[1,100,""]],[0,0]],[[440,2104,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,938,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[440,2032,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,937,[[0.6],[0]],[[0]],[0,"Default",0,1]],[[424,2048,0,32,9,0,0,1,0,0,0,0,[]],51,940,[],[[0],[1],[1,100,""]],[0,0]],[[320,1856,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,941,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[288,1824,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,942,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[256,1856,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,944,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[288,1888,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,945,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[272,1840,0,32,32,0,0,1,0,0,0,0,[]],51,946,[],[[0],[1],[1,100,""]],[0,0]],[[616,1856,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,947,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[584,1824,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,948,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[552,1856,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,949,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[584,1888,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,950,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[568,1840,0,32,32,0,0,1,0,0,0,0,[]],51,951,[],[[0],[1],[1,100,""]],[0,0]],[[336,1776,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,954,[[0.6],[0]],[[0]],[0,"Default",0,1]],[[468,1736,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,956,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[436,1704,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,957,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[404,1736,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,958,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[436,1768,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,959,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[420,1720,0,32,32,0,0,1,0,0,0,0,[]],51,960,[],[[0],[1],[1,100,""]],[0,0]],[[320,1792,0,32,8,0,0,1,0,0,0,0,[]],45,952,[],[[0],[1]],[0,0]],[[536,1776,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,953,[[0.6],[0]],[[0]],[0,"Default",0,1]],[[520,1792,0,32,8,0,0,1,0,0,0,0,[]],45,955,[],[[0],[1]],[0,0]],[[436,1616,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,964,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[420,1496,0,32,104,0,0,1,0,0,0,0,[]],51,965,[],[[0],[1],[1,100,""]],[0,0]],[[568,1512,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,966,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[536,1544,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,969,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[448,1496,0,104,32,0,0,1,0,0,0,0,[]],51,970,[],[[0],[1],[1,100,""]],[0,0]],[[304,1512,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,973,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[336,1544,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,974,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[320,1496,0,104,32,0,0,1,0,0,0,0,[]],51,975,[],[[0],[1],[1,100,""]],[0,0]],[[436,1480,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,962,[[0.6],[0]],[[0]],[0,"Default",0,1]],[[536,712,0,592,9,0,1.570796370506287,1,0,0,0,0,[]],51,967,[],[[0],[1],[1,100,""]],[0,0]],[[360.0000305175781,712,0,592,9,0,1.570796370506287,1,0,0,0,0,[]],51,972,[],[[0],[1],[1,100,""]],[0,0]],[[444,1240,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,977,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[444,1200,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,978,[[0.5],[0]],[[0]],[0,"Default",0,1]],[[428,1216,0,32,9,0,0,1,0,0,0,0,[]],51,979,[],[[0],[1],[1,100,""]],[0,0]],[[360,1296,0,168,8,0,0,1,0,0,0,0,[]],45,976,[],[[0],[1]],[0,0]],[[512,736,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,995,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[512,696,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,996,[[0.6],[0]],[[0]],[0,"Default",0,1]],[[496,712,0,31.005859375,9,0,0,1,0,0,0,0,[]],51,997,[],[[0],[1],[1,100,""]],[0,0]],[[376,736,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,998,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[376,696,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,999,[[0.6],[0]],[[0]],[0,"Default",0,1]],[[232,712,0,160,9,0,0,1,0,0,0,0,[]],51,1000,[],[[0],[1],[1,100,""]],[0,0]],[[440,936,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,1001,[[0.7],[0]],[[0]],[0,"Default",0,1]],[[424,952,0,32,9,0,0,1,0,0,0,0,[]],51,1003,[],[[0],[1],[1,100,""]],[0,0]],[[368,1544,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,961,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[400,1544,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,963,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[504,1544,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,968,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[472,1544,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,971,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[368,1480,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1004,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[504,1480,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1010,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[436,416,0,408,240,0,0,1,0.5,0.5,0,0,[]],43,1011,[[0.8],[0]],[[0]],[0,"Default",0,1]],[[232,1296,0,120,8,0,0,1,0,0,0,0,[]],51,1012,[],[[0],[1],[1,100,""]],[0,0]],[[536,1296,0,112,8,0,0,1,0,0,0,0,[]],51,1013,[],[[0],[1],[1,100,""]],[0,0]],[[232,712,0,120,8,0,0,1,0,0,0,0,[]],45,1014,[],[[0],[1]],[0,0]],[[536,712,0,112,8,0,0,1,0,0,0,0,[]],45,1025,[],[[0],[1]],[0,0]],[[584,1320,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],163,1026,[],[[0]],[0,"Default",0,1]],[[263.2000122070313,1090.87646484375,0,112,587.53466796875,0,0,1,-2.380000114440918,0.6399999856948853,0,0,[]],159,1027,[],[[0]],[0,"Default",0,1]],[[-78.08001708984375,1096,0,128,584,0,0,1,-2.380000114440918,0.6399999856948853,0,0,[]],159,1028,[],[[0]],[0,"Default",0,1]],[[442,2180,0,32,64,0,0,1,0.5,0.5,0,0,[]],42,928,[["run"],[0],[1],[1],[0],[0.8],[0.5],[0],[1],[0],[0],[0],[""],[2],[0],[0],[0],[""],[0],[3],[0],[0],[0],[0],[0],[0],[0]],[[330,1500,1500,650,1500,1000,0,0,0,1],[],[0,0],[0,10000,360,1]],[1,"Default",0,1]]],[]],["UI",2,181247006927537,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[240,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3097,[["right"]],[[0,1,0,1,1]],[0,"Default",0,1]],[[80,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3098,[["left"]],[[0,1,0,1,1]],[0,"Default",1,1]],[[560,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3099,[["up"]],[[1,1,1,1,1]],[0,"Default",3,1]],[[400,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3100,[["down"]],[[1,1,1,1,1]],[0,"Default",2,1]]],[]],["End Card",3,507304762861697,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],78,2607,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[12.04449462890625,194,0,615.9109497070313,67,0,0,1,0,0,0,0,[]],79,2608,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Timer for this level",2.5,0,0,0,0,0,-10,0,"",-1,0]],[[17.546875,248,0,604.90625,105,0,0,1,0,0,0,0,[]],80,2610,[[0],[0],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","13:40:40",4,0,63,50,0,0,-10,0,"",-1,0]],[[115.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,2611,[[0],[1],[0],[0],["replay"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Replay",""],[""],[2,2,0,0,0],["",""]],[0,"Replay",0,1]],[[524.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3086,[[0],[1],[0],[0],["next"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Next",""],[""],[2,2,0,0,0],["",""]],[0,"Next",0,1]],[[320.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3087,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > Back","Level Menu"],[""],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[320.75,521.8050537109375,0,384,96,0,0,1,0.5,0.5,0,0,[]],70,3088,[[1],[1],[0],[0],[""],["{\"size\": 22, \"left\": 70, \"right\": 18, \"alignY\": 60}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > DownloadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"DownloadReplay",0,1]]],[]],["Pause",4,871669452485458,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-310,678,0,274,31,0,0,1,0,0,0,0,[]],168,3089,[],[],[".ovo",0,1,"file"]],[[320,320,0,425,250,0,0,1,0.5,0.5,0,0,[]],82,3090,[],[[6,1,"",300,1,1,"",300,"overlay",1,"PauseClose",1,1]],[0,"Default",0,1]],[[214,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3091,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"",""],["PauseClose"],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[426,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3092,[[0],[1],[0],[0],["quit"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > GiveUp",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[115.5,202,0,409,118,0,0,1,0,0,0,0,[]],83,3093,[[1],[1],["pause"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Pause",4,0,57,50,0,0,-10,0,"",-1,0]],[[320.5,88,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3094,[[1],[1],[0],[0],["loadreplay"],["{\"size\": 16, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > LoadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"LoadReplay",0,1]],[[320.5,157,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3095,[[1],[0],[0],[0],["toggledebug"],["{\"size\": 15, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Debug > Toggle",""],[""],[2,2,0,0,0],["",""]],[0,"ToggleDebug",0,1]],[[78,448,0,484,134,0,0,1,0,0,0,0,[]],193,3096,[],[],[0,"Default",0,1]]],[]],["Overlay",5,591077201322484,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[432,4,0,203.0009155273438,64,0,0,1,0,0,0,0,[]],107,5488,[],[[1,0,1,0,1]],[2,2,2,2,0,1,0,0,1]],[[432,4,0,203,64,0,0,1,0,0,0,0,[]],84,3101,[[0],[0],[""],["en-us"],[0],[1],[1],["{\"alignY\": 85, \"alignX\": 45, \"size\": 28}"],[0],[1],[0],[0],[0]],[["",""],[1,0,1,0,1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",2,0,100,50,0,0,-10,0,"",-1,0]],[[88,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3102,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Pause",""],[""],[0,0,0,0,1],["",""]],[0,"Pause",0,1]],[[158,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3103,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Replay","1"],[""],[0,0,0,0,1],["",""]],[0,"Reload",0,1]]],[]],["End Game",6,960139182490368,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],85,3104,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[73,194,0,494,72,0,0,1,0,0,0,0,[]],86,3105,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],["{alignY:50}"],[0],[1],[0],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Your final time",2.5,0,50,50,0,0,-10,0,"",-1,0]],[[320,403,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3106,[[0],[1],[0],[0],[""],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Quit",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[73,243,0,494,85,0,0,1,0,0,0,0,[]],87,3108,[[0],[1],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",3,0,50,50,0,0,-10,0,"",-1,0]],[[73,318,0,494,25,0,0,1,0,0,0,0,[]],86,5480,[[1],[1],["tryagainhardmode"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Try again in hard mode!",1,0,50,50,0,0,-2,0,"",-1,0]]],[]],["Banner",7,426148070192330,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-237,-189,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,3109,[],[["overlay"]],[0,"Default",0,1]]],[]],["AdPlaying",8,365703797396530,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,-203.5,0,250,97,0,0,1,0.5,0.5,0,0,[]],125,390,[],[[6,1,"",300,1,1,"",300,"overlay",1,"",1,1],[]],[0,"Default",0,1]],[[209,-275,0,222,139,0,0,1,0,0,0,0,[]],86,391,[[1],[1],["adplaying"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","An ad is playing right now...",1.2,0,50,50,0,0,-2,0,"",-1,0]],[[-154.5756988525391,-294.3137512207031,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,5508,[],[["overlay"]],[0,"Default",0,1]]],[]]],[],[]],["Level 22",3000,4000,true,"Levels",187856944471573,[["Background",0,392949102820102,true,[255,255,255],false,0,0,1,false,false,1,0,0,[[[-88,64,0,60.93439102172852,60.93439102172852,0,0,1,0.5,0.5,0,0,[]],53,1424,[["Iterations"],[""],[0]],[],[1,"Default",0,1]]],[]],["Layer 0",1,309195168823885,true,[255,255,255],true,1,1,1,false,false,1,0,0,[[[176,216,0,32,64,0,0,1,0.5,0.5,0,0,[]],42,1187,[["run"],[0],[1],[1],[0],[0.8],[0.5],[0],[1],[0],[0],[0],[""],[2],[0],[0],[0],[""],[0],[3],[0],[0],[0],[0],[0],[0],[0]],[[330,1500,1500,650,1500,1000,0,0,0,1],[],[0,0],[0,10000,360,1]],[1,"Default",0,1]],[[128,528,0,360,9,0,0,1,0,0,0,0,[]],51,1190,[],[[0],[1],[1,100,""]],[0,0]],[[264,448,0,32,32,0,0.7853981852531433,1,0.5,0.5,0,0,[]],43,1203,[[0.7],[1]],[[0]],[0,"Default",0,1]],[[136,104,0,432,9,0,1.570796370506287,1,0,0,0,0,[]],51,1204,[],[[0],[1],[1,100,""]],[0,0]],[[152,512,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1208,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[184,512,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1209,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[216,512,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1210,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2192,2656,0,97,192,0,0,1,0.5257731676101685,0.4974874258041382,0,0,[]],44,1214,[],[[0]],[0,"Default",0,1]],[[2304,2352,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,1227,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2304,2320,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,1228,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2304,2288,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,1229,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2304,2256,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,1230,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2072,2352,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,1231,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2072,2320,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,1232,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2072,2288,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,1233,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2072,2256,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,1234,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2072,2480,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,1235,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2072,2448,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,1236,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2072,2416,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,1237,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2072,2384,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,1238,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2048,2752,0,280,9,0,0,1,0,0,0,0,[]],51,1239,[],[[0],[1],[1,100,""]],[0,0]],[[2056,2240,0,520,9,0,1.570796370506287,1,0,0,0,0,[]],51,1240,[],[[0],[1],[1,100,""]],[0,0]],[[2328,2240,0,512,9,0,1.570796370506287,1,0,0,0,0,[]],51,1241,[],[[0],[1],[1,100,""]],[0,0]],[[312,264,0,288,117,0,0,1,0,0,0,0,[[]]],61,5613,[],[[1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>","1",7,0,70,0,0,0,0,0,"",-1,0]],[[2280,2720,0,56,56,0,0,1,0.5,0.5,0,0,[]],60,4610,[["level22"]],[[1],[400,-200,800,0,0,0],[0,0,0,1,1]],[0,"Default",0,1]],[[128,280,0,96,9,0,0,1,0,0,0,0,[]],51,1133,[],[[0],[1],[1,100,""]],[0,0]],[[800,112,0,424,9,0,1.570796370506287,1,0,0,0,0,[]],51,1134,[],[[0],[1],[1,100,""]],[0,0]],[[248,512,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1135,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[280,512,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1138,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[312,512,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1139,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[344,512,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1140,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[776,352,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,1142,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[776,320,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,1143,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[776,288,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,1144,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[776,256,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,1145,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[776,224,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,1146,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[776,192,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,1147,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[776,160,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,1148,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[776,128,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,1149,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[776,480,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,1150,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[776,448,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,1151,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[776,416,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,1152,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[776,384,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,1153,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[576,528,0,224,9,0,0,1,0,0,0,0,[]],51,1155,[],[[0],[1],[1,100,""]],[0,0]],[[376,512,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1156,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[408,512,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1157,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[440,512,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1158,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[472,512,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1159,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[592,512,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1160,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[624,512,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1161,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[656,512,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1162,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[688,512,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1163,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[720,512,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1164,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[752,512,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1165,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[480,960,0,360,9,0,0,1,0,0,0,0,[]],51,1154,[],[[0],[1],[1,100,""]],[0,0]],[[616,880,0,32,32,0,0.7853981852531433,1,0.5,0.5,0,0,[]],43,1167,[[0.75],[1]],[[0]],[0,"Default",0,1]],[[488,536,0,432,9,0,1.570796370506287,1,0,0,0,0,[]],51,1184,[],[[0],[1],[1,100,""]],[0,0]],[[504,944,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1185,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[536,944,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1186,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[568,944,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1188,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[480,712,0,96,9,0,0,1,0,0,0,0,[]],51,1189,[],[[0],[1],[1,100,""]],[0,0]],[[1152,544,0,384,9,0,1.570796370506287,1,0,0,0,0,[]],51,1201,[],[[0],[1],[1,100,""]],[0,0]],[[600,944,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1202,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[632,944,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1205,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[664,944,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1206,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[696,944,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1207,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1128,784,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,1211,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1128,752,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,1212,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1128,720,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,1213,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1128,688,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,1242,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1128,656,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,1243,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1128,624,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,1244,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1128,592,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,1245,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1128,560,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,1246,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1128,912,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,1247,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1128,880,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,1248,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1128,848,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,1249,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1128,816,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,1250,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[928,960,0,104,9,0,0,1,0,0,0,0,[]],51,1251,[],[[0],[1],[1,100,""]],[0,0]],[[728,944,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12282,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[760,944,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12283,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[792,944,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12287,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[824,944,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12288,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[952,944,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12289,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1016,944,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12290,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[840,960,0,128,9,0,0,1,0,0,0,0,[]],51,12303,[],[[0],[1],[1,100,""]],[0,0]],[[856,944,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12304,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[888,944,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12305,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[920,944,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12306,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[984,944,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12307,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1024,1384,0,360,9,0,0,1,0,0,0,0,[]],51,12301,[],[[0],[1],[1,100,""]],[0,0]],[[1160,1304,0,32,32,0,0.7853981852531433,1,0.5,0.5,0,0,[]],43,12302,[[0.75],[1]],[[0]],[0,"Default",0,1]],[[1032,960,0,432,9,0,1.570796370506287,1,0,0,0,0,[]],51,12308,[],[[0],[1],[1,100,""]],[0,0]],[[1048,1368,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12309,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1080,1368,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12310,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1112,1368,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12311,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1024,1136,0,96,9,0,0,1,0,0,0,0,[]],51,12312,[],[[0],[1],[1,100,""]],[0,0]],[[1696,968,0,416,9,0,1.570796370506287,1,0,0,0,0,[]],51,12313,[],[[0],[1],[1,100,""]],[0,0]],[[1144,1368,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12314,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1176,1368,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12315,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1208,1368,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12316,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1240,1368,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12317,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1672,1208,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,12318,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1672,1176,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,12319,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1672,1144,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,12320,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1672,1112,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,12321,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1672,1080,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,12322,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1672,1048,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,12323,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1672,1016,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,12324,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1672,984,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,12325,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1672,1336,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,12326,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1672,1304,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,12327,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1672,1272,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,12328,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1672,1240,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,12329,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1496,1384,0,200,9,0,0,1,0,0,0,0,[]],51,12330,[],[[0],[1],[1,100,""]],[0,0]],[[1272,1368,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12331,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1304,1368,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12332,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1336,1368,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12333,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1368,1368,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12334,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1512,1368,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12335,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1576,1368,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12336,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1384,1384,0,64,9,0,0,1,0,0,0,0,[]],51,12337,[],[[0],[1],[1,100,""]],[0,0]],[[1400,1368,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12338,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1432,1368,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12339,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1544,1368,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12341,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1608,1368,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12340,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1672,1368,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12342,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1640,1368,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12343,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1440,1808,0,360,9,0,0,1,0,0,0,0,[]],51,12344,[],[[0],[1],[1,100,""]],[0,0]],[[1576,1728,0,32,32,0,0.7853981852531433,1,0.5,0.5,0,0,[]],43,12345,[[0.75],[1]],[[0]],[0,"Default",0,1]],[[1448,1384,0,432,9,0,1.570796370506287,1,0,0,0,0,[]],51,12346,[],[[0],[1],[1,100,""]],[0,0]],[[1464,1792,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12347,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1496,1792,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12348,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1528,1792,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12349,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2112,1392,0,416,9,0,1.570796370506287,1,0,0,0,0,[]],51,12351,[],[[0],[1],[1,100,""]],[0,0]],[[1560,1792,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12352,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1592,1792,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12353,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1624,1792,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12354,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1656,1792,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12355,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2088,1632,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,12356,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2088,1600,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,12357,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2088,1568,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,12358,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2088,1536,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,12359,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2088,1504,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,12360,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2088,1472,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,12361,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2088,1440,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,12362,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2088,1408,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,12363,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2088,1760,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,12364,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2088,1728,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,12365,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2088,1696,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,12366,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2088,1664,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,12367,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1896,1808,0,216,9,0,0,1,0,0,0,0,[]],51,12368,[],[[0],[1],[1,100,""]],[0,0]],[[1688,1792,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12369,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1720,1792,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12370,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1752,1792,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12371,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1784,1792,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12372,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1912,1792,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12373,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1976,1792,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12374,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1944,1792,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12378,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2008,1792,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12379,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2072,1792,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12380,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2040,1792,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12381,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1800,1992,0,88,8,0,0,1,0,0,0,0,[]],45,12350,[],[[1],[1]],[0,0]],[[1512,1368,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12382,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1448,1576,0,96,9,0,0,1,0,0,0,0,[]],51,12383,[],[[0],[1],[1,100,""]],[0,0]],[[1792,2232,0,360,9,0,0,1,0,0,0,0,[]],51,12375,[],[[0],[1],[1,100,""]],[0,0]],[[1928,2152,0,32,32,0,0.7853981852531433,1,0.5,0.5,0,0,[]],43,12376,[[0.8],[1]],[[0]],[0,"Default",0,1]],[[1800,1808,0,432,9,0,1.570796370506287,1,0,0,0,0,[]],51,12377,[],[[0],[1],[1,100,""]],[0,0]],[[1816,2216,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12384,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1848,2216,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12385,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1880,2216,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12386,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2464,1816,0,416,9,0,1.570796370506287,1,0,0,0,0,[]],51,12387,[],[[0],[1],[1,100,""]],[0,0]],[[1912,2216,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12388,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1944,2216,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12389,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1976,2216,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12390,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2008,2216,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12391,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2440,2056,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,12392,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2440,2024,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,12393,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2440,1992,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,12394,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2440,1960,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,12395,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2440,1928,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,12396,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2440,1896,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,12397,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2440,1864,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,12398,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2440,1832,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,12399,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2440,2184,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,12400,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2440,2152,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,12401,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2440,2120,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,12402,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2440,2088,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,12403,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2216,2232,0,248,9,0,0,1,0,0,0,0,[]],51,12404,[],[[0],[1],[1,100,""]],[0,0]],[[2040,2216,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12405,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2072,2216,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12406,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2104,2216,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12407,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2136,2216,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12408,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2264,2216,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12409,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2328,2216,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12410,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2296,2216,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12411,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2360,2216,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12412,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2424,2216,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12413,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2392,2216,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12414,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2232,2216,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12415,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2056,2496,0,264,8,0,0,1,0,0,0,0,[]],45,12416,[],[[1],[1]],[0,0]]],[]],["UI",2,973927760647422,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[240,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3097,[["right"]],[[0,1,0,1,1]],[0,"Default",0,1]],[[80,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3098,[["left"]],[[0,1,0,1,1]],[0,"Default",1,1]],[[560,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3099,[["up"]],[[1,1,1,1,1]],[0,"Default",3,1]],[[400,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3100,[["down"]],[[1,1,1,1,1]],[0,"Default",2,1]]],[]],["End Card",3,903486246125433,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],78,2607,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[12.04449462890625,194,0,615.9109497070313,67,0,0,1,0,0,0,0,[]],79,2608,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Timer for this level",2.5,0,0,0,0,0,-10,0,"",-1,0]],[[17.546875,248,0,604.90625,105,0,0,1,0,0,0,0,[]],80,2610,[[0],[0],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","13:40:40",4,0,63,50,0,0,-10,0,"",-1,0]],[[115.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,2611,[[0],[1],[0],[0],["replay"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Replay",""],[""],[2,2,0,0,0],["",""]],[0,"Replay",0,1]],[[524.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3086,[[0],[1],[0],[0],["next"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Next",""],[""],[2,2,0,0,0],["",""]],[0,"Next",0,1]],[[320.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3087,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > Back","Level Menu"],[""],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[320.75,521.8050537109375,0,384,96,0,0,1,0.5,0.5,0,0,[]],70,3088,[[1],[1],[0],[0],[""],["{\"size\": 22, \"left\": 70, \"right\": 18, \"alignY\": 60}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > DownloadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"DownloadReplay",0,1]]],[]],["Pause",4,929292112567299,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-310,678,0,274,31,0,0,1,0,0,0,0,[]],168,3089,[],[],[".ovo",0,1,"file"]],[[320,320,0,425,250,0,0,1,0.5,0.5,0,0,[]],82,3090,[],[[6,1,"",300,1,1,"",300,"overlay",1,"PauseClose",1,1]],[0,"Default",0,1]],[[214,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3091,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"",""],["PauseClose"],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[426,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3092,[[0],[1],[0],[0],["quit"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > GiveUp",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[115.5,202,0,409,118,0,0,1,0,0,0,0,[]],83,3093,[[1],[1],["pause"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Pause",4,0,57,50,0,0,-10,0,"",-1,0]],[[320.5,88,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3094,[[1],[1],[0],[0],["loadreplay"],["{\"size\": 16, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > LoadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"LoadReplay",0,1]],[[320.5,157,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3095,[[1],[0],[0],[0],["toggledebug"],["{\"size\": 15, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Debug > Toggle",""],[""],[2,2,0,0,0],["",""]],[0,"ToggleDebug",0,1]],[[78,448,0,484,134,0,0,1,0,0,0,0,[]],193,3096,[],[],[0,"Default",0,1]]],[]],["Overlay",5,403553218407287,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[432,4,0,203.0009155273438,64,0,0,1,0,0,0,0,[]],107,5488,[],[[1,0,1,0,1]],[2,2,2,2,0,1,0,0,1]],[[432,4,0,203,64,0,0,1,0,0,0,0,[]],84,3101,[[0],[0],[""],["en-us"],[0],[1],[1],["{\"alignY\": 85, \"alignX\": 45, \"size\": 28}"],[0],[1],[0],[0],[0]],[["",""],[1,0,1,0,1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",2,0,100,50,0,0,-10,0,"",-1,0]],[[88,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3102,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Pause",""],[""],[0,0,0,0,1],["",""]],[0,"Pause",0,1]],[[158,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3103,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Replay","1"],[""],[0,0,0,0,1],["",""]],[0,"Reload",0,1]]],[]],["End Game",6,290262817267609,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],85,3104,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[73,194,0,494,72,0,0,1,0,0,0,0,[]],86,3105,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],["{alignY:50}"],[0],[1],[0],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Your final time",2.5,0,50,50,0,0,-10,0,"",-1,0]],[[320,403,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3106,[[0],[1],[0],[0],[""],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Quit",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[73,243,0,494,85,0,0,1,0,0,0,0,[]],87,3108,[[0],[1],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",3,0,50,50,0,0,-10,0,"",-1,0]],[[73,318,0,494,25,0,0,1,0,0,0,0,[]],86,5480,[[1],[1],["tryagainhardmode"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Try again in hard mode!",1,0,50,50,0,0,-2,0,"",-1,0]]],[]],["Banner",7,127752249614589,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-237,-189,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,3109,[],[["overlay"]],[0,"Default",0,1]]],[]],["AdPlaying",8,683685013026432,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,-203.5,0,250,97,0,0,1,0.5,0.5,0,0,[]],125,390,[],[[6,1,"",300,1,1,"",300,"overlay",1,"",1,1],[]],[0,"Default",0,1]],[[209,-275,0,222,139,0,0,1,0,0,0,0,[]],86,391,[[1],[1],["adplaying"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","An ad is playing right now...",1.2,0,50,50,0,0,-2,0,"",-1,0]],[[-154.5756988525391,-294.3137512207031,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,5508,[],[["overlay"]],[0,"Default",0,1]]],[]]],[],[]],["Level 23",4000,2000,true,"Levels",654532845993925,[["Background",0,569259323120807,true,[255,255,255],false,0,0,1,false,false,1,0,0,[[[-90,68,0,60.93439102172852,60.93439102172852,0,0,1,0.5,0.5,0,0,[]],53,1425,[["Leap of faith"],[""],[0]],[],[1,"Default",0,1]]],[]],["Layer 0",1,231605047204829,true,[255,255,255],true,1,1,1,false,false,1,0,0,[[[2160,584,0,32,64,0,0,1,0.5,0.5,0,0,[]],42,1088,[["run"],[0],[1],[1],[0],[0.8],[0.5],[0],[1],[0],[0],[0],[""],[2],[0],[0],[0],[""],[0],[3],[0],[0],[0],[0],[0],[0],[0]],[[330,1500,1500,650,1500,1000,0,0,0,1],[],[0,0],[0,10000,360,1]],[1,"Default",0,1]],[[2096,648,0,224,9,0,0,1,0,0,0,0,[]],51,1089,[],[[0],[1],[1,100,""]],[0,0]],[[2584,648,0,240,9,0,0,1,0,0,0,0,[]],51,1090,[],[[0],[1],[1,100,""]],[0,0]],[[2944,752,0,80,8,0,0,1,0,0,0,0,[]],45,1091,[],[[0],[1]],[0,0]],[[3080,248,0,600,9,0,1.570796370506287,1,0,0,0,0,[]],51,1092,[],[[0],[1],[1,100,""]],[0,0]],[[3056,360,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,1093,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3056,392,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,1094,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3056,424,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,1095,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3056,456,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,1096,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3056,488,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,1097,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3056,520,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,1098,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3056,552,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,1099,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3056,584,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,1100,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3056,616,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,1101,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3056,648,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,1102,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3056,680,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,1103,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3056,712,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,1104,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2816,752,0,128,9,0,0,1,0,0,0,0,[]],51,1105,[],[[0],[1],[1,100,""]],[0,0]],[[2824,656,0,360,9,0,1.570796370506287,1,0,0,0,0,[]],51,1106,[],[[0],[1],[1,100,""]],[0,0]],[[3024,752,0,56,9,0,0,1,0,0,0,0,[]],51,1107,[],[[0],[1],[1,100,""]],[0,0]],[[2872,736,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1108,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2896,736,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1109,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2928,736,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1110,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2840,736,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1111,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2816,1008,0,760,9,0,0,1,0,0,0,0,[]],51,1112,[],[[0],[1],[1,100,""]],[0,0]],[[3184,864,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1113,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3216,864,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1114,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3248,864,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1115,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3072,840,0,232,9,0,0,1,0,0,0,0,[]],51,1116,[],[[0],[1],[1,100,""]],[0,0]],[[3576,0,0,1016,9,0,1.570796370506287,1,0,0,0,0,[]],51,1117,[],[[0],[1],[1,100,""]],[0,0]],[[3184,992,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1118,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3216,992,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1119,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3248,992,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1120,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3280,992,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1121,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3304,792,0,56,9,0,1.570796370506287,1,0,0,0,0,[]],51,1122,[],[[0],[1],[1,100,""]],[0,0]],[[3184,288,0,184,9,0,1.570796370506287,1,0,0,0,0,[]],51,1123,[],[[0],[1],[1,100,""]],[0,0]],[[3496,504,0,112,9,0,1.570796370506287,1,0,0,0,0,[]],51,1124,[],[[0],[1],[1,100,""]],[0,0]],[[3080,464,0,104,8,0,0,1,0,0,0,0,[]],45,1125,[],[[0],[1]],[0,0]],[[3188,824,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,1126,[[0.7],[0]],[[0]],[0,"Default",0,1]],[[2096,240,0,984,9,0,0,1,0,0,0,0,[]],51,1128,[],[[0],[1],[1,100,""]],[0,0]],[[1048,1464,0,576,9,0,0,1,0,0,0,0,[]],51,1136,[],[[0],[1],[1,100,""]],[0,0]],[[1344,1368,0,97,192,0,0,1,0.5257731676101685,0.4974874258041382,0,0,[]],44,1137,[],[[0]],[0,"Default",0,1]],[[3488,992,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,1141,[[0.7],[0]],[[0]],[0,"Default",0,1]],[[1936,120,0,218,64,0,0,1,0,0,0,0,[]],46,1166,[[1],[1],[""],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Believe and Dive",1,0,50,0,0,0,0,0,"",-1,0]],[[2984,320,0,64,64,0,0,1,0.5,0.5,0,0,[]],60,5492,[["level23"]],[[1],[400,-200,800,0,0,0],[0,0,0,1,1]],[0,"Default",0,1]],[[2272,464,0,288,117,0,0,1,0,0,0,0,[[]]],61,5614,[],[[1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>","1",7,0,70,0,0,0,0,0,"",-1,0]],[[2560,664,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12155,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2528,664,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12156,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2496,664,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12157,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2464,664,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12158,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2432,664,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12159,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2400,664,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12160,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2368,664,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12161,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2336,664,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12162,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2584,648,0,40,9,0,1.570796370506287,1,0,0,0,0,[]],51,12163,[],[[0],[1],[1,100,""]],[0,0]],[[2320,656,0,32,9,0,1.570796370506287,1,0,0,0,0,[]],51,12164,[],[[0],[1],[1,100,""]],[0,0]],[[2312,680,0,272,9,0,0,1,0,0,0,0,[]],51,12165,[],[[0],[1],[1,100,""]],[0,0]],[[2104,240,0,416,9,0,1.570796370506287,1,0,0,0,0,[]],51,1130,[],[[0],[1],[1,100,""]],[0,0]],[[3056,296,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,1127,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3056,328,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,1129,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3056,264,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,1131,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2808,632,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1132,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2776,632,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12166,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2744,632,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12167,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2560,352,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,12168,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2528,352,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,12169,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2496,352,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,12170,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2464,352,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,12171,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2432,352,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,12172,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2400,352,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,12173,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2368,352,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,12174,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2336,352,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,12175,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2320,328,0,256,8,0,0,1,0,0,0,0,[]],51,12176,[],[[0],[1],[1,100,""]],[0,0]],[[2576,128,0,200,8,0,1.570796370506287,1,0,0,0,0,[]],45,12177,[],[[0],[1]],[0,0]],[[2328,128,0,200,8,0,1.570796370506287,1,0,0,0,0,[]],45,12178,[],[[0],[1]],[0,0]],[[2896,432,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,12179,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2864,432,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,12180,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2832,432,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,12181,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2800,432,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,12182,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2768,432,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,12183,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2736,432,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,12184,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2704,432,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,12185,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2672,432,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,12186,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2656,408,0,256,8,0,0,1,0,0,0,0,[]],51,12187,[],[[0],[1],[1,100,""]],[0,0]],[[2912,40,0,368,8,0,1.570796370506287,1,0,0,0,0,[]],45,12188,[],[[0],[1]],[0,0]],[[2664,48,0,360,8,0,1.570796370506287,1,0,0,0,0,[]],45,12189,[],[[0],[1]],[0,0]],[[2104,392,0,80,8,0,0,1,0,0,0,0,[]],45,12190,[],[[0],[1]],[0,0]],[[2432,264,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,12191,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2400,264,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,12192,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2368,264,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,12193,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[2528,264,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,12194,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[2496,264,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,12195,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2464,264,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,12196,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2768,312,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12197,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2736,352,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12198,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2704,392,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12199,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2864,392,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12200,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2832,352,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12201,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2800,312,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12202,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2720,368,0,128,40,0,0,1,0,0,0,0,[]],51,12203,[],[[0],[1],[1,100,""]],[0,0]],[[2752,328,0,64,40,0,0,1,0,0,0,0,[]],51,12204,[],[[0],[1],[1,100,""]],[0,0]],[[3280,864,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,12205,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3520,992,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12206,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3552,992,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12207,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3296,608,0,192,9,0,0,1,0,0,0,0,[]],51,12208,[],[[0],[1],[1,100,""]],[0,0]],[[3320,632,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,12209,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3352,632,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,12210,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3384,632,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,12211,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3416,632,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,12212,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3448,632,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,12213,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3480,632,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,12214,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3304,608,0,136,9,0,1.570796370506287,1,0,0,0,0,[]],51,12215,[],[[0],[1],[1,100,""]],[0,0]],[[3304,744,0,48,8,0,1.570796370506287,1,0,0,0,0,[]],45,12216,[],[[0],[1]],[0,0]],[[1816,0,0,1760,9,0,0,1,0,0,0,0,[]],51,12217,[],[[0],[1],[1,100,""]],[0,0]],[[3176,288,0,392,9,0,0,1,0,0,0,0,[]],51,12218,[],[[0],[1],[1,100,""]],[0,0]],[[3392,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,12219,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3424,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,12220,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3456,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,12221,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3488,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,12222,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3520,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,12223,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3552,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,12224,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3200,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,12225,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3232,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,12226,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3264,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,12227,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3296,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,12228,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3328,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,12229,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3360,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,12230,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3312,592,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12231,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3344,592,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12232,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3440,592,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12233,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3472,592,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12234,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3096,824,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12235,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3128,824,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12236,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3160,824,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12237,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3216,824,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12238,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3248,824,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12239,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3280,824,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12240,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3200,272,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12241,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3232,272,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12242,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3264,272,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12243,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3512,112,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,12244,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3480,112,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,12245,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3448,112,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,12246,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3416,112,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,12247,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3384,112,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,12248,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3352,112,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,12249,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3320,112,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,12250,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3288,112,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,12251,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3272,88,0,256,8,0,0,1,0,0,0,0,[]],51,12252,[],[[0],[1],[1,100,""]],[0,0]],[[3528,8,0,80,8,0,1.570796370506287,1,0,0,0,0,[]],45,12253,[],[[0],[1]],[0,0]],[[3280,8,0,80,8,0,1.570796370506287,1,0,0,0,0,[]],45,12254,[],[[0],[1]],[0,0]],[[3384,24,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,12255,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3352,24,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,12256,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3320,24,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,12257,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[3480,24,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,12258,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[3448,24,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,12259,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3416,24,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,12260,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2720,48,0,128,40,0,0,1,0,0,0,0,[]],51,12261,[],[[0],[1],[1,100,""]],[0,0]],[[2752,88,0,64,32,0,0,1,0,0,0,0,[]],51,12262,[],[[0],[1],[1,100,""]],[0,0]],[[2736,104,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,12263,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2704,64,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,12264,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2768,136,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,12265,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2800,136,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,12266,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2832,104,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,12267,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2864,64,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,12268,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2896,24,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12269,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2864,24,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12270,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2832,24,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12271,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2800,24,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12272,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2768,24,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12273,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2736,24,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12274,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2704,24,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12275,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2672,24,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12276,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2656,40,0,256,8,0,0,1,0,0,0,0,[]],51,12277,[],[[0],[1],[1,100,""]],[0,0]],[[2856,224,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12278,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[2888,224,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12279,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2928,224,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12280,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2960,224,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12281,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[2680,224,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12284,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2712,224,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12285,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[2432,224,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12286,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2464,224,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12291,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2560,104,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12292,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2528,104,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12293,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2496,104,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12294,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2464,104,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12295,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2432,104,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12296,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2400,104,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12297,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2368,104,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12298,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2336,104,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12299,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2320,120,0,256,8,0,0,1,0,0,0,0,[]],51,12300,[],[[0],[1],[1,100,""]],[0,0]]],[]],["UI",2,953146856614787,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[240,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3097,[["right"]],[[0,1,0,1,1]],[0,"Default",0,1]],[[80,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3098,[["left"]],[[0,1,0,1,1]],[0,"Default",1,1]],[[560,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3099,[["up"]],[[1,1,1,1,1]],[0,"Default",3,1]],[[400,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3100,[["down"]],[[1,1,1,1,1]],[0,"Default",2,1]]],[]],["End Card",3,361544305458384,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],78,2607,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[12.04449462890625,194,0,615.9109497070313,67,0,0,1,0,0,0,0,[]],79,2608,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Timer for this level",2.5,0,0,0,0,0,-10,0,"",-1,0]],[[17.546875,248,0,604.90625,105,0,0,1,0,0,0,0,[]],80,2610,[[0],[0],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","13:40:40",4,0,63,50,0,0,-10,0,"",-1,0]],[[115.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,2611,[[0],[1],[0],[0],["replay"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Replay",""],[""],[2,2,0,0,0],["",""]],[0,"Replay",0,1]],[[524.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3086,[[0],[1],[0],[0],["next"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Next",""],[""],[2,2,0,0,0],["",""]],[0,"Next",0,1]],[[320.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3087,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > Back","Level Menu"],[""],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[320.75,521.8050537109375,0,384,96,0,0,1,0.5,0.5,0,0,[]],70,3088,[[1],[1],[0],[0],[""],["{\"size\": 22, \"left\": 70, \"right\": 18, \"alignY\": 60}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > DownloadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"DownloadReplay",0,1]]],[]],["Pause",4,502565668509943,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-310,678,0,274,31,0,0,1,0,0,0,0,[]],168,3089,[],[],[".ovo",0,1,"file"]],[[320,320,0,425,250,0,0,1,0.5,0.5,0,0,[]],82,3090,[],[[6,1,"",300,1,1,"",300,"overlay",1,"PauseClose",1,1]],[0,"Default",0,1]],[[214,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3091,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"",""],["PauseClose"],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[426,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3092,[[0],[1],[0],[0],["quit"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > GiveUp",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[115.5,202,0,409,118,0,0,1,0,0,0,0,[]],83,3093,[[1],[1],["pause"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Pause",4,0,57,50,0,0,-10,0,"",-1,0]],[[320.5,88,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3094,[[1],[1],[0],[0],["loadreplay"],["{\"size\": 16, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > LoadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"LoadReplay",0,1]],[[320.5,157,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3095,[[1],[0],[0],[0],["toggledebug"],["{\"size\": 15, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Debug > Toggle",""],[""],[2,2,0,0,0],["",""]],[0,"ToggleDebug",0,1]],[[78,448,0,484,134,0,0,1,0,0,0,0,[]],193,3096,[],[],[0,"Default",0,1]]],[]],["Overlay",5,453367048113942,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[432,4,0,203.0009155273438,64,0,0,1,0,0,0,0,[]],107,5488,[],[[1,0,1,0,1]],[2,2,2,2,0,1,0,0,1]],[[432,4,0,203,64,0,0,1,0,0,0,0,[]],84,3101,[[0],[0],[""],["en-us"],[0],[1],[1],["{\"alignY\": 85, \"alignX\": 45, \"size\": 28}"],[0],[1],[0],[0],[0]],[["",""],[1,0,1,0,1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",2,0,100,50,0,0,-10,0,"",-1,0]],[[88,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3102,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Pause",""],[""],[0,0,0,0,1],["",""]],[0,"Pause",0,1]],[[158,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3103,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Replay","1"],[""],[0,0,0,0,1],["",""]],[0,"Reload",0,1]]],[]],["End Game",6,636024912234970,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],85,3104,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[73,194,0,494,72,0,0,1,0,0,0,0,[]],86,3105,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],["{alignY:50}"],[0],[1],[0],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Your final time",2.5,0,50,50,0,0,-10,0,"",-1,0]],[[320,403,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3106,[[0],[1],[0],[0],[""],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Quit",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[73,243,0,494,85,0,0,1,0,0,0,0,[]],87,3108,[[0],[1],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",3,0,50,50,0,0,-10,0,"",-1,0]],[[73,318,0,494,25,0,0,1,0,0,0,0,[]],86,5480,[[1],[1],["tryagainhardmode"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Try again in hard mode!",1,0,50,50,0,0,-2,0,"",-1,0]]],[]],["Banner",7,683380568843023,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-237,-189,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,3109,[],[["overlay"]],[0,"Default",0,1]]],[]],["AdPlaying",8,381844562537205,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,-203.5,0,250,97,0,0,1,0.5,0.5,0,0,[]],125,390,[],[[6,1,"",300,1,1,"",300,"overlay",1,"",1,1],[]],[0,"Default",0,1]],[[209,-275,0,222,139,0,0,1,0,0,0,0,[]],86,391,[[1],[1],["adplaying"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","An ad is playing right now...",1.2,0,50,50,0,0,-2,0,"",-1,0]],[[-154.5756988525391,-294.3137512207031,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,5508,[],[["overlay"]],[0,"Default",0,1]]],[]]],[],[]],["Level 24",2000,2000,true,"Levels",136570707965366,[["Background",0,643836135136504,true,[255,255,255],false,0,0,1,false,false,1,0,0,[[[-87,51,0,60.93439102172852,60.93439102172852,0,0,1,0.5,0.5,0,0,[]],53,1426,[["Maelstrom"],["{\"c2array\":true,\"size\":[265,6,1],\"data\":[[[1474.6866315032808],[1495.9561944947686],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[1474.6866315032808],[1495.9561944947686],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[1474.6866315032808],[1495.9561944947686],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[1474.6866315032808],[1495.9561944947686],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[1474.6866315032808],[1495.9561944947686],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[1474.6866315032808],[1495.9561944947686],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[1474.6866315032808],[1495.9561944947686],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[1474.6866315032808],[1495.9561944947686],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[1474.6866315032808],[1495.9561944947686],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[1474.6866315032808],[1495.9561944947686],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[1474.6866315032808],[1495.9561944947686],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[1474.6866315032808],[1495.9561944947686],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[1474.6866315032808],[1495.9561944947686],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[1474.6866315032808],[1495.9561944947686],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[1474.6866315032808],[1495.9561944947686],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[1474.6866315032808],[1495.9561944947686],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[1474.6866315032808],[1495.9561944947686],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[1474.6866315032808],[1495.9561944947686],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[1474.6866315032808],[1495.9561944947686],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[1474.6866315032808],[1495.9561944947686],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[1474.6866315032808],[1495.9561944947686],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[1474.6866315032808],[1495.9561944947686],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[1474.6866315032808],[1495.9561944947686],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[1474.6866315032808],[1495.9561944947686],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[1474.6866315032808],[1495.9561944947686],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[1474.6866315032808],[1495.9561944947686],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[1474.6866315032808],[1495.9561944947686],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[1474.6866315032808],[1495.9561944947686],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[1474.6866315032808],[1495.9561944947686],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[1474.6866315032808],[1495.9561944947686],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[1474.6866315032808],[1495.9561944947686],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[1474.6866315032808],[1495.9561944947686],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[1474.6866315032808],[1495.9561944947686],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[1474.6866315032808],[1495.9561944947686],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[1474.6866315032808],[1495.9561944947686],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[1474.6866315032808],[1495.9561944947686],[3.9413414317528896e-7],[\"slide\"],[1],[-1]],[[1470.705581008884],[1495.9561944947686],[3.9413414317528896e-7],[\"slide\"],[1],[-1]],[[1462.3761213821028],[1495.9561944947686],[3.9413414317528896e-7],[\"slide\"],[1],[-1]],[[1446.4427880487694],[1495.9561944947686],[3.9413414317528896e-7],[\"slide\"],[1],[-1]],[[1438.0941972955125],[1495.9561944947686],[3.9413414317528896e-7],[\"slide\"],[1],[-1]],[[1429.7059247996283],[1495.9561944947686],[3.9413414317528896e-7],[\"slide\"],[1],[-1]],[[1421.32004217662],[1495.9561944947686],[3.9413414317528896e-7],[\"slide\"],[1],[-1]],[[1412.9308137275464],[1495.9561944947686],[3.9413414317528896e-7],[\"slide\"],[1],[-1]],[[1404.5884400673733],[1495.9561944947686],[3.9413414317528896e-7],[\"slide\"],[1],[-1]],[[1396.1882192764656],[1495.9561944947686],[3.9413414317528896e-7],[\"slide\"],[1],[-1]],[[1387.8152433158489],[1495.9561944947686],[3.9413414317528896e-7],[\"slide\"],[1],[-1]],[[1379.477174095113],[1495.9561944947686],[3.9413414317528896e-7],[\"slide\"],[1],[-1]],[[1371.0817323888689],[1495.9561944947686],[3.9413414317528896e-7],[\"slide\"],[1],[-1]],[[1362.7183183314896],[1495.9561944947686],[3.9413414317528896e-7],[\"slide\"],[1],[-1]],[[1354.3950773438714],[1495.9561944947686],[3.9413414317528896e-7],[\"slide\"],[1],[-1]],[[1346.0068048340765],[1495.9561944947686],[3.9413414317528896e-7],[\"slide\"],[1],[-1]],[[1337.6180543670528],[1495.9561944947686],[3.9413414317528896e-7],[\"slide\"],[1],[-1]],[[1329.2833332054704],[1495.9561944947686],[3.9413414317528896e-7],[\"slide\"],[1],[-1]],[[1320.880245096638],[1495.9561944947686],[3.9413414317528896e-7],[\"slide\"],[1],[-1]],[[1312.516352912118],[1495.9561944947686],[3.9413414317528896e-7],[\"slide\"],[1],[-1]],[[1304.1395525262067],[1495.9561944947686],[3.9413414317528896e-7],[\"slide\"],[1],[-1]],[[1295.7570158623532],[1495.9561944947686],[3.9413414317528896e-7],[\"slide\"],[1],[-1]],[[1287.376869265287],[1495.9561944947686],[3.9413414317528896e-7],[\"slide\"],[1],[-1]],[[1279.0474096385058],[1495.9561944947686],[3.9413414317528896e-7],[\"slide\"],[1],[-1]],[[1270.6271199457567],[1495.9561944947686],[3.9413414317528896e-7],[\"slide\"],[1],[-1]],[[1262.2866593382314],[1495.9561944947686],[3.9413414317528896e-7],[\"slide\"],[1],[-1]],[[1253.9136833776147],[1495.9561944947686],[3.9413414317528896e-7],[\"slide\"],[1],[-1]],[[1245.5435758550123],[1495.9561944947686],[3.9413414317528896e-7],[\"slide\"],[1],[-1]],[[1237.1768149984784],[1495.9561944947686],[3.9413414317528896e-7],[\"slide\"],[1],[-1]],[[1228.7732490115072],[1495.9561944947686],[3.9413414317528896e-7],[\"slide\"],[1],[-1]],[[1220.4289623466866],[1495.9561944947686],[3.9413414317528896e-7],[\"slide\"],[1],[-1]],[[1212.0540741494226],[1495.9561944947686],[3.9413414317528896e-7],[\"slide\"],[1],[-1]],[[1203.6906600920433],[1495.9561944947686],[3.9413414317528896e-7],[\"slide\"],[1],[-1]],[[1195.3200744843004],[1495.9561944947686],[3.9413414317528896e-7],[\"slide\"],[1],[-1]],[[1186.9547479502737],[1495.9561944947686],[3.9413414317528896e-7],[\"slide\"],[1],[-1]],[[1178.6080701075825],[1495.9561944947686],[3.9413414317528896e-7],[\"slide\"],[1],[-1]],[[1170.2035483872419],[1495.9561944947686],[3.9413414317528896e-7],[\"slide\"],[1],[-1]],[[1161.8391780785814],[1495.9561944947686],[3.9413414317528896e-7],[\"slide\"],[1],[-1]],[[1153.4432584461981],[1495.9561944947686],[3.9413414317528896e-7],[\"slide\"],[1],[-1]],[[1145.0989717813775],[1495.9561944947686],[3.9413414317528896e-7],[\"slide\"],[0],[-1]],[[1136.7491507708442],[1487.3262744940926],[3.9413414317528896e-7],[\"jump\"],[0],[-1]],[[1128.3595830876593],[1479.07235793551],[3.9413414317528896e-7],[\"jump\"],[0],[-1]],[[1119.953915479024],[1471.2212875451899],[3.9413414317528896e-7],[\"pound\"],[0],[-1]],[[1119.953915479024],[1466.662635483237],[3.9413414317528896e-7],[\"pound\"],[0],[-1]],[[1119.953915479024],[1462.50153433521],[3.9413414317528896e-7],[\"pound\"],[0],[-1]],[[1119.953915479024],[1458.7453067535014],[3.9413414317528896e-7],[\"pound\"],[0],[-1]],[[1119.953915479024],[1455.4243423972073],[3.9413414317528896e-7],[\"pound\"],[0],[-1]],[[1119.953915479024],[1452.501983040289],[3.9413414317528896e-7],[\"pound\"],[0],[-1]],[[1119.953915479024],[1449.9995903859328],[3.9413414317528896e-7],[\"pound\"],[0],[-1]],[[1119.953915479024],[1447.9198173998009],[3.9413414317528896e-7],[\"pound\"],[0],[-1]],[[1119.953915479024],[1446.2391554663175],[3.9413414317528896e-7],[\"pound\"],[0],[-1]],[[1119.953915479024],[1444.9853229044834],[3.9413414317528896e-7],[\"pound\"],[0],[-1]],[[1119.953915479024],[1444.1454386292132],[3.9413414317528896e-7],[\"pound\"],[0],[-1]],[[1119.953915479024],[1443.7214030981995],[3.9413414317528896e-7],[\"pound\"],[0],[-1]],[[1119.953915479024],[1443.7125359078557],[3.9413414317528896e-7],[\"pound\"],[0],[-1]],[[1119.953915479024],[1452.427525319373],[3.9413414317528896e-7],[\"pound\"],[0],[-1]],[[1119.953915479024],[1461.5531306257824],[3.9413414317528896e-7],[\"pound\"],[0],[-1]],[[1119.953915479024],[1471.1531506805477],[3.9413414317528896e-7],[\"pound\"],[0],[-1]],[[1119.953915479024],[1481.1302654658127],[3.9413414317528896e-7],[\"pound\"],[0],[-1]],[[1119.953915479024],[1491.5698515900206],[3.9413414317528896e-7],[\"pound\"],[0],[-1]],[[1119.953915479024],[1495.9775441277295],[3.9413414317528896e-7],[\"plunge\"],[0],[-1]],[[1119.953915479024],[1495.9775441277295],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[1119.953915479024],[1495.9775441277295],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[1119.953915479024],[1495.9775441277295],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[1119.953915479024],[1495.9775441277295],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[1119.953915479024],[1495.9775441277295],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[1119.953915479024],[1495.9775441277295],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[1119.953915479024],[1495.9775441277295],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[1119.953915479024],[1495.9775441277295],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[1119.953915479024],[1495.9775441277295],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[1119.953915479024],[1495.9775441277295],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[1119.953915479024],[1495.9775441277295],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[1119.953915479024],[1495.9775441277295],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[1119.953915479024],[1495.9775441277295],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[1119.953915479024],[1495.9775441277295],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[1119.953915479024],[1495.9775441277295],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[1119.953915479024],[1495.9775441277295],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[1119.953915479024],[1495.9775441277295],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[1119.953915479024],[1495.9775441277295],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[1119.953915479024],[1495.9775441277295],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[1119.953915479024],[1495.9775441277295],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[1119.953915479024],[1495.9775441277295],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[1119.953915479024],[1495.9775441277295],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[1119.953915479024],[1495.9775441277295],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[1119.953915479024],[1495.9775441277295],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[1119.953915479024],[1495.9775441277295],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[1119.953915479024],[1495.9775441277295],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[1119.953915479024],[1495.9775441277295],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[1119.953915479024],[1495.9775441277295],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[1119.953915479024],[1495.9775441277295],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[1119.953915479024],[1495.9775441277295],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[1119.953915479024],[1495.9775441277295],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[1119.953915479024],[1495.9775441277295],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[1119.953915479024],[1495.9775441277295],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[1119.953915479024],[1495.9775441277295],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[1119.953915479024],[1495.9775441277295],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[1119.953915479024],[1495.9775441277295],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[1119.953915479024],[1495.9775441277295],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[1119.953915479024],[1495.9775441277295],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[1119.953915479024],[1495.9775441277295],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[1119.953915479024],[1495.9775441277295],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[1119.953915479024],[1495.9775441277295],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[1119.953915479024],[1495.9775441277295],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[1119.953915479024],[1495.9775441277295],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[1119.953915479024],[1495.9775441277295],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[1119.953915479024],[1495.9775441277295],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[1119.953915479024],[1495.9775441277295],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[1119.953915479024],[1495.9775441277295],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[1119.953915479024],[1495.9775441277295],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[1119.953915479024],[1495.9775441277295],[3.9413414317528896e-7],[\"slide\"],[1],[-1]],[[1115.9854980906146],[1495.9775441277295],[3.9413414317528896e-7],[\"slide\"],[1],[-1]],[[1107.580020648904],[1495.9775441277295],[3.9413414317528896e-7],[\"slide\"],[1],[-1]],[[1099.286923372507],[1495.9775441277295],[3.9413414317528896e-7],[\"slide\"],[1],[-1]],[[1083.3535900391737],[1495.9775441277295],[3.9413414317528896e-7],[\"slide\"],[1],[-1]],[[1074.9767896532624],[1495.9775441277295],[3.9413414317528896e-7],[\"slide\"],[1],[-1]],[[1066.6301117966527],[1495.9775441277295],[3.9413414317528896e-7],[\"slide\"],[1],[-1]],[[1058.2466191354315],[1495.9775441277295],[3.9413414317528896e-7],[\"slide\"],[1],[-1]],[[1049.8722089963076],[1495.9775441277295],[3.9413414317528896e-7],[\"slide\"],[1],[-1]],[[1041.5054481258592],[1495.9775441277295],[3.9413414317528896e-7],[\"slide\"],[1],[-1]],[[1033.1391653645512],[1495.9775441277295],[3.9413414317528896e-7],[\"slide\"],[1],[-1]],[[1024.759496792625],[1495.9775441277295],[3.9413414317528896e-7],[\"slide\"],[1],[-1]],[[1016.3936921434577],[1495.9775441277295],[3.9413414317528896e-7],[\"slide\"],[1],[-1]],[[1008.0183258910535],[1495.9775441277295],[3.9413414317528896e-7],[\"slide\"],[1],[-1]],[[999.6649531131367],[1495.9775441277295],[3.9413414317528896e-7],[\"slide\"],[1],[-1]],[[991.2795484792681],[1495.9775441277295],[3.9413414317528896e-7],[\"slide\"],[1],[-1]],[[982.9156562947483],[1495.9775441277295],[3.9413414317528896e-7],[\"slide\"],[1],[-1]],[[974.5369437681895],[1495.9775441277295],[3.9413414317528896e-7],[\"slide\"],[1],[-1]],[[966.1372008625123],[1495.9775441277295],[3.9413414317528896e-7],[\"slide\"],[1],[-1]],[[957.7718743284855],[1495.9775441277295],[3.9413414317528896e-7],[\"slide\"],[1],[-1]],[[949.4180233604276],[1495.9775441277295],[3.9413414317528896e-7],[\"slide\"],[1],[-1]],[[941.0617815144979],[1495.9775441277295],[3.9413414317528896e-7],[\"slide\"],[1],[-1]],[[932.6553483495101],[1495.9775441277295],[3.9413414317528896e-7],[\"slide\"],[1],[-1]],[[924.290499919709],[1495.9775441277295],[3.9413414317528896e-7],[\"slide\"],[1],[-1]],[[915.9739565133194],[1495.9775441277295],[3.9413414317528896e-7],[\"slide\"],[1],[-1]],[[907.5904638520983],[1495.9775441277295],[3.9413414317528896e-7],[\"slide\"],[1],[-1]],[[899.234700167393],[1495.9775441277295],[3.9413414317528896e-7],[\"slide\"],[1],[-1]],[[890.8406922575665],[1495.9775441277295],[3.9413414317528896e-7],[\"slide\"],[1],[-1]],[[882.4500299359851],[1495.9775441277295],[3.9413414317528896e-7],[\"slide\"],[1],[-1]],[[874.1038303284354],[1495.9775441277295],[3.9413414317528896e-7],[\"slide\"],[1],[-1]],[[865.72177166081],[1495.9775441277295],[3.9413414317528896e-7],[\"slide\"],[1],[-1]],[[857.3569232449239],[1495.9775441277295],[3.9413414317528896e-7],[\"slide\"],[1],[-1]],[[848.9968561336991],[1495.9775441277295],[3.9413414317528896e-7],[\"slide\"],[1],[-1]],[[840.6052379167493],[1495.9775441277295],[3.9413414317528896e-7],[\"slide\"],[1],[-1]],[[832.2150535543071],[1495.9775441277295],[3.9413414317528896e-7],[\"slide\"],[1],[-1]],[[823.8669410241915],[1495.9775441277295],[3.9413414317528896e-7],[\"slide\"],[1],[-1]],[[815.4801024458152],[1495.9775441277295],[3.9413414317528896e-7],[\"slide\"],[0],[-1]],[[807.1264611307206],[1487.341384124941],[3.9413414317528896e-7],[\"jump\"],[0],[-1]],[[798.7290597761082],[1479.0780686631763],[3.9413414317528896e-7],[\"jump\"],[0],[-1]],[[790.3955380278258],[1471.289360742779],[3.9413414317528896e-7],[\"jump\"],[0],[-1]],[[782.0152382976842],[1463.873316387915],[3.9413414317528896e-7],[\"jump\"],[0],[-1]],[[773.6555611125459],[1456.8898583039838],[3.9413414317528896e-7],[\"jump\"],[0],[-1]],[[765.3230453352845],[1450.3407386919023],[3.9413414317528896e-7],[\"pound\"],[0],[-1]],[[765.3230453352845],[1445.7283423256213],[3.9413414317528896e-7],[\"pound\"],[0],[-1]],[[765.3230453352845],[1441.5847554051168],[3.9413414317528896e-7],[\"pound\"],[0],[-1]],[[765.3230453352845],[1437.8267599559003],[3.9413414317528896e-7],[\"pound\"],[0],[-1]],[[765.3230453352845],[1434.5005414823338],[3.9413414317528896e-7],[\"pound\"],[0],[-1]],[[765.3230453352845],[1431.600418150621],[3.9413414317528896e-7],[\"pound\"],[0],[-1]],[[765.3230453352845],[1429.1021467921169],[3.9413414317528896e-7],[\"pound\"],[0],[-1]],[[765.3230453352845],[1427.019410270578],[3.9413414317528896e-7],[\"pound\"],[0],[-1]],[[765.3230453352845],[1425.3496516982293],[3.9413414317528896e-7],[\"pound\"],[0],[-1]],[[765.3230453352845],[1424.0981330194036],[3.9413414317528896e-7],[\"pound\"],[0],[-1]],[[765.3230453352845],[1423.2619754768532],[3.9413414317528896e-7],[\"pound\"],[0],[-1]],[[765.3230453352845],[1422.8407842774004],[3.9413414317528896e-7],[\"pound\"],[0],[-1]],[[765.3230453352845],[1422.835727141608],[3.9413414317528896e-7],[\"pound\"],[0],[-1]],[[765.3230453352845],[1431.534223635542],[3.9413414317528896e-7],[\"pound\"],[0],[-1]],[[765.3230453352845],[1440.7401379784912],[3.9413414317528896e-7],[\"pound\"],[0],[-1]],[[765.3230453352845],[1450.2901442141465],[3.9413414317528896e-7],[\"pound\"],[0],[-1]],[[765.3230453352845],[1460.2578366443145],[3.9413414317528896e-7],[\"pound\"],[0],[-1]],[[765.3230453352845],[1470.6436640269667],[3.9413414317528896e-7],[\"pound\"],[0],[-1]],[[765.3230453352845],[1481.4642674315546],[3.9413414317528896e-7],[\"pound\"],[0],[-1]],[[765.3230453352845],[1492.6771166374997],[3.9413414317528896e-7],[\"pound\"],[0],[-1]],[[765.3230453352845],[1495.941619705769],[3.9413414317528896e-7],[\"plunge\"],[0],[-1]],[[765.3230453352845],[1495.941619705769],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[765.3230453352845],[1495.941619705769],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[765.3230453352845],[1495.941619705769],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[765.3230453352845],[1495.941619705769],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[765.3230453352845],[1495.941619705769],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[765.3230453352845],[1495.941619705769],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[765.3230453352845],[1495.941619705769],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[765.3230453352845],[1495.941619705769],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[765.3230453352845],[1495.941619705769],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[765.3230453352845],[1495.941619705769],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[765.3230453352845],[1495.941619705769],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[765.3230453352845],[1495.941619705769],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[765.3230453352845],[1495.941619705769],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[765.3230453352845],[1495.941619705769],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[765.3230453352845],[1495.941619705769],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[765.3230453352845],[1495.941619705769],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[765.3230453352845],[1495.941619705769],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[765.3230453352845],[1495.941619705769],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[765.3230453352845],[1495.941619705769],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[765.3230453352845],[1495.941619705769],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[765.3230453352845],[1495.941619705769],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[765.3230453352845],[1495.941619705769],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[765.3230453352845],[1495.941619705769],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[765.3230453352845],[1495.941619705769],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[765.3230453352845],[1495.941619705769],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[765.3230453352845],[1495.941619705769],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[765.3230453352845],[1495.941619705769],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[765.3230453352845],[1495.941619705769],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[765.3230453352845],[1495.941619705769],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[765.3230453352845],[1495.941619705769],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[765.3230453352845],[1495.941619705769],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[765.3230453352845],[1495.941619705769],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[765.3230453352845],[1495.941619705769],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[765.3230453352845],[1495.941619705769],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[765.3230453352845],[1495.941619705769],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[765.3230453352845],[1495.941619705769],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[765.3230453352845],[1495.941619705769],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[765.3230453352845],[1495.941619705769],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[765.3230453352845],[1495.941619705769],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[765.3230453352845],[1495.941619705769],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[765.3230453352845],[1495.941619705769],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[765.3230453352845],[1495.941619705769],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[765.3230453352845],[1495.941619705769],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[765.3230453352845],[1495.941619705769],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[765.3230453352845],[1495.941619705769],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[765.3230453352845],[1495.941619705769],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[765.3230453352845],[1495.941619705769],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[765.3230453352845],[1495.941619705769],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[765.3230453352845],[1495.941619705769],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[765.3230453352845],[1495.941619705769],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[765.3230453352845],[1495.941619705769],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[765.3230453352845],[1495.941619705769],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[765.3230453352845],[1495.941619705769],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[765.3230453352845],[1495.941619705769],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[765.3230453352845],[1495.941619705769],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[765.3230453352845],[1495.941619705769],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[765.3230453352845],[1495.941619705769],[3.9413414317528896e-7],[\"idle\"],[0],[-1]],[[765.3230453352845],[1495.941619705769],[3.9413414317528896e-7],[\"idle\"],[0],[-1]]]}"],[0]],[],[1,"Default",0,1]]],[]],["Layer 0",1,304044364996528,true,[255,255,255],true,1,1,1,false,false,1,0,0,[[[704,608,0,32,64,0,0,1,0.5,0.5,0,0,[]],42,425,[["run"],[0],[1],[1],[0],[0.8],[0.5],[0],[1],[0],[0],[0],[""],[2],[0],[0],[0],[""],[0],[3],[0],[0],[0],[0],[0],[0],[0]],[[330,1500,1500,650,1500,1000,0,0,0,1],[],[0,0],[0,10000,360,1]],[0,"Default",0,1]],[[656,704,0,248,8,0,0,1,0,0,0,0,[]],51,426,[],[[0],[1],[1,100,""]],[0,0]],[[1688,544,0,992,8,0,1.570796370506287,1,0,0,0,0,[]],51,428,[],[[0],[1],[1,100,""]],[0,0]],[[880,1528,0,808,8,0,0,1,0,0,0,0,[]],51,0,[],[[0],[1],[1,100,""]],[0,0]],[[664.0000610351563,376,0,1152,8,0,1.570796370506287,1,0,0,0,0,[]],51,427,[],[[0],[1],[1,100,""]],[0,0]],[[1528,704,0,696,8,0,1.570796370506287,1,0,0,0,0,[]],51,429,[],[[0],[1],[1,100,""]],[0,0]],[[808,1392,0,712,8,0,0,1,0,0,0,0,[]],51,430,[],[[0],[1],[1,100,""]],[0,0]],[[816,816,0,584,8,0,1.570796370506287,1,0,0,0,0,[]],51,431,[],[[0],[1],[1,100,""]],[0,0]],[[808,864,0,600,8,0,0,1,0,0,0,0,[]],51,432,[],[[0],[1],[1,100,""]],[0,0]],[[1408,872,0,384,8,0,1.570796370506287,1,0,0,0,0,[]],51,433,[],[[0],[1],[1,100,""]],[0,0]],[[952,1248,0,456,8,0,0,1,0,0,0,0,[]],51,434,[],[[0],[1],[1,100,""]],[0,0]],[[1096,1152,0,97,199,0,0,1,0.5257731676101685,0.4974874258041382,0,0,[]],44,435,[],[[0]],[0,"Default",0,1]],[[952,968,0,288,8,0,1.570796370506287,1,0,0,0,0,[]],51,436,[],[[0],[1],[1,100,""]],[0,0]],[[952,968,0,336,8,0,0,1,0,0,0,0,[]],51,437,[],[[0],[1],[1,100,""]],[0,0]],[[1288,976,0,184,8,0,1.570796370506287,1,0,0,0,0,[]],51,438,[],[[0],[1],[1,100,""]],[0,0]],[[752,624,0,80,9,0,1.570796370506287,1,0,0,0,0,[]],51,439,[],[[0],[1],[1,100,""]],[0,0]],[[968,704,0,0,9,0,1.570796370506287,1,0,0,0,0,[]],51,441,[],[[0],[1],[1,100,""]],[0,0]],[[752,624,0,216,8,0,0,1,0,0,0,0,[]],51,442,[],[[0],[1],[1,100,""]],[0,0]],[[789,568,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,443,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[821,568,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,444,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[853,568,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,445,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[885,568,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,446,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[917,568,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,447,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[984,768,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,448,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1016,768,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,449,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1144,688,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,450,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[773,544,0,160,8,0,0,1,0,0,0,0,[]],51,440,[],[[0],[1],[1,100,""]],[0,0]],[[789,528,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,453,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[821,528,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,454,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[853,528,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,455,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[885,528,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,456,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[917,528,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,457,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1176,688,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,459,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1208,688,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,460,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1240,688,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,461,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1272,688,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,462,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1304,688,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,463,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[1048,768,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,451,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1128,704,0,400,8,0,0,1,0,0,0,0,[]],51,458,[],[[0],[1],[1,100,""]],[0,0]],[[1088,704,0,40,8,0,0,1,0,0,0,0,[]],45,464,[],[[0],[1]],[0,0]],[[1528,912,0,72,9,0,0,1,0,0,0,0,[]],51,466,[],[[0],[1],[1,100,""]],[0,0]],[[1568,1128,0,64,8,0,0,1,0,0,0,0,[]],45,468,[],[[0],[1]],[0,0]],[[1544,992,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,467,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1544,1024,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,470,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1544,1056,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,471,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1544,1088,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,472,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1544,1120,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,520,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1544,1152,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,521,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1544,1184,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,522,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1544,1216,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,523,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1544,1248,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,524,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1544,1280,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,525,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1544,1312,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,526,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1544,1344,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,527,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1664,1024,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,529,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1664,1056,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,530,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1664,1088,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,531,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1664,1120,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,532,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1664,1152,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,533,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1664,1184,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,534,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1664,1216,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,535,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1664,1248,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,536,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1664,1280,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,537,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1664,1312,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,538,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1664,1344,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,539,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1668,828,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,540,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1668,852,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,541,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1668,876,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,542,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1544,896,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,545,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1528,744,0,80,8,0,0,1,0,0,0,0,[]],45,465,[],[[0],[1]],[0,0]],[[1584,896,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,544,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1608,992,0,72,9,0,0,1,0,0,0,0,[]],51,548,[],[[0],[1],[1,100,""]],[0,0]],[[984,808,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,555,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[968,712,0,80,9,0,1.570796370506287,1,0,0,0,0,[]],51,549,[],[[0],[1],[1,100,""]],[0,0]],[[1136,712,0,80,9,0,1.570796370506287,1,0,0,0,0,[]],51,550,[],[[0],[1],[1,100,""]],[0,0]],[[1224,1392,0,56,9,0,1.570796370506287,1,0,0,0,0,[]],51,551,[],[[0],[1],[1,100,""]],[0,0]],[[1384,1392,0,56,9,0,1.570796370506287,1,0,0,0,0,[]],51,552,[],[[0],[1],[1,100,""]],[0,0]],[[960,784,0,176,9,0,0,1,0,0,0,0,[]],51,553,[],[[0],[1],[1,100,""]],[0,0]],[[1216,1448,0,168,9,0,0,1,0,0,0,0,[]],51,554,[],[[0],[1],[1,100,""]],[0,0]],[[1016,808,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,556,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1048,808,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,557,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1232,1472,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,558,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1264,1472,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,559,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1296,1472,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,560,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1328,1472,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,561,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1360,1472,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,562,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1424,904,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,563,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1424,936,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,564,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1424,968,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,565,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1424,1000,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,566,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1504,1120,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,567,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1504,1152,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,568,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1504,1184,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,569,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1504,1216,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,570,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1120,1376,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,571,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1152,1376,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,572,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1184,1376,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,573,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1216,1376,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,574,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1248,1376,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,575,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1280,1376,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,576,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[680,728,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,577,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[712,728,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,578,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[744,728,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,579,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[680,1512,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,580,[[0.7],[0]],[[0]],[0,"Default",0,1]],[[712,1512,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,581,[[0.7],[0]],[[0]],[0,"Default",0,1]],[[744,1512,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,582,[[0.7],[0]],[[0]],[0,"Default",0,1]],[[920,1392,0,56,9,0,1.570796370506287,1,0,0,0,0,[]],51,584,[],[[0],[1],[1,100,""]],[0,0]],[[1080,1392,0,56,9,0,1.570796370506287,1,0,0,0,0,[]],51,585,[],[[0],[1],[1,100,""]],[0,0]],[[912,1448,0,168,9,0,0,1,0,0,0,0,[]],51,586,[],[[0],[1],[1,100,""]],[0,0]],[[928,1472,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,587,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[960,1472,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,588,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[992,1472,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,589,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1024,1472,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,590,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1056,1472,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,591,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[664,1192,0,144,8,0,0,1,0,0,0,0,[]],45,592,[],[[0],[1]],[0,0]],[[680,1216,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,593,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[792,1216,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,594,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[696,992,0,112,8,0,0,1,0,0,0,0,[]],45,595,[],[[0],[1]],[0,0]],[[792,1176,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,596,[[0.7],[0]],[[0]],[0,"Default",0,1]],[[680,1176,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,597,[[0.7],[0]],[[0]],[0,"Default",0,1]],[[680,1016,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,598,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[712,1016,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,599,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[744,1016,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,600,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[792,848,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,602,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[680,976,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,604,[[0.7],[0]],[[0]],[0,"Default",0,1]],[[832,1264,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,605,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[928,1200,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,609,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1352,888,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,617,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1384,888,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,618,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1320,1232,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,619,[[0.7],[0]],[[0]],[0,"Default",0,1]],[[1352,1232,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,620,[[0.7],[0]],[[0]],[0,"Default",0,1]],[[1384,1232,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,621,[[0.7],[0]],[[0]],[0,"Default",0,1]],[[664,992,0,32,9,0,0,1,0,0,0,0,[]],51,601,[],[[0],[1],[1,100,""]],[0,0]],[[1080,768,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,452,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1080,808,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,603,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1112,808,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,583,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1112,768,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,606,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[904,704,0,64,8,0,0,1,0,0,0,0,[]],45,607,[],[[0],[1]],[0,0]],[[727,1991,0,1216,9,0,0,1,0,0,0,0,[]],51,608,[],[[0],[1],[1,100,""]],[0,0]],[[816,1528,0,64,8,0,0,1,0,0,0,0,[]],45,610,[],[[0],[1]],[0,0]],[[656,1528,0,160,9,0,0,1,0,0,0,0,[]],51,611,[],[[0],[1],[1,100,""]],[0,0]],[[888,1976,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,612,[[0.7],[0]],[[0]],[0,"Default",0,1]],[[848,1792,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,613,[[0.7],[0]],[[0]],[0,"Default",0,1]],[[848,1832,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,615,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1592,1976,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,622,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1560,1976,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,623,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1528,1976,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,624,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1496,1976,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,625,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1464,1976,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,626,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1432,1976,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,627,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1400,1976,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,628,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1312,1840,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,630,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1280,1840,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,631,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1248,1840,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,632,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1216,1840,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,633,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1184,1840,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,634,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1168,1816,0,160,9,0,0,1,0,0,0,0,[]],51,638,[],[[0],[1],[1,100,""]],[0,0]],[[1200,1976,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,640,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1168,1976,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,641,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1136,1976,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,642,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1928,1977,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,637,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1896,1977,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,643,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1864,1977,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,644,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1832,1977,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,645,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1800,1977,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,646,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[832,1808,0,32,8,0,0,1,0,0,0,0,[]],45,614,[],[[0],[1]],[0,0]],[[1768,1976,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,629,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1736,1976,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,635,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1704,1976,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,636,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[736,1800,0,200,9,0,1.570796370506287,1,0,0,0,0,[]],51,639,[],[[0],[1],[1,100,""]],[0,0]],[[872,1992,0,0,9,0,1.570796370506287,1,0,0,0,0,[]],51,647,[],[[0],[1],[1,100,""]],[0,0]],[[792,1949,0,64,64,0,0,1,0.5,0.5,0,0,[]],60,5493,[["level24"]],[[1],[400,-200,800,0,0,0],[0,0,0,1,1]],[0,"Default",0,1]],[[930,497,0,288,114,0,0,1,0,0,0,0,[[]]],61,5615,[],[[1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>","1",7,0,70,0,0,0,0,0,"",-1,0]],[[1686,528,0,32,32,0,0,1,0.5,0.5,0,0,[]],163,10601,[],[[0]],[0,"Default",0,1]]],[]],["UI",2,550499947346234,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[240,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3097,[["right"]],[[0,1,0,1,1]],[0,"Default",0,1]],[[80,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3098,[["left"]],[[0,1,0,1,1]],[0,"Default",1,1]],[[560,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3099,[["up"]],[[1,1,1,1,1]],[0,"Default",3,1]],[[400,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3100,[["down"]],[[1,1,1,1,1]],[0,"Default",2,1]]],[]],["End Card",3,461673877175130,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],78,2607,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[12.04449462890625,194,0,615.9109497070313,67,0,0,1,0,0,0,0,[]],79,2608,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Timer for this level",2.5,0,0,0,0,0,-10,0,"",-1,0]],[[17.546875,248,0,604.90625,105,0,0,1,0,0,0,0,[]],80,2610,[[0],[0],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","13:40:40",4,0,63,50,0,0,-10,0,"",-1,0]],[[115.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,2611,[[0],[1],[0],[0],["replay"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Replay",""],[""],[2,2,0,0,0],["",""]],[0,"Replay",0,1]],[[524.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3086,[[0],[1],[0],[0],["next"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Next",""],[""],[2,2,0,0,0],["",""]],[0,"Next",0,1]],[[320.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3087,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > Back","Level Menu"],[""],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[320.75,521.8050537109375,0,384,96,0,0,1,0.5,0.5,0,0,[]],70,3088,[[1],[1],[0],[0],[""],["{\"size\": 22, \"left\": 70, \"right\": 18, \"alignY\": 60}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > DownloadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"DownloadReplay",0,1]]],[]],["Pause",4,665607773210199,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-310,678,0,274,31,0,0,1,0,0,0,0,[]],168,3089,[],[],[".ovo",0,1,"file"]],[[320,320,0,425,250,0,0,1,0.5,0.5,0,0,[]],82,3090,[],[[6,1,"",300,1,1,"",300,"overlay",1,"PauseClose",1,1]],[0,"Default",0,1]],[[214,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3091,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"",""],["PauseClose"],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[426,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3092,[[0],[1],[0],[0],["quit"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > GiveUp",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[115.5,202,0,409,118,0,0,1,0,0,0,0,[]],83,3093,[[1],[1],["pause"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Pause",4,0,57,50,0,0,-10,0,"",-1,0]],[[320.5,88,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3094,[[1],[1],[0],[0],["loadreplay"],["{\"size\": 16, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > LoadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"LoadReplay",0,1]],[[320.5,157,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3095,[[1],[0],[0],[0],["toggledebug"],["{\"size\": 15, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Debug > Toggle",""],[""],[2,2,0,0,0],["",""]],[0,"ToggleDebug",0,1]],[[78,448,0,484,134,0,0,1,0,0,0,0,[]],193,3096,[],[],[0,"Default",0,1]]],[]],["Overlay",5,170312031169282,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[432,4,0,203.0009155273438,64,0,0,1,0,0,0,0,[]],107,5488,[],[[1,0,1,0,1]],[2,2,2,2,0,1,0,0,1]],[[432,4,0,203,64,0,0,1,0,0,0,0,[]],84,3101,[[0],[0],[""],["en-us"],[0],[1],[1],["{\"alignY\": 85, \"alignX\": 45, \"size\": 28}"],[0],[1],[0],[0],[0]],[["",""],[1,0,1,0,1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",2,0,100,50,0,0,-10,0,"",-1,0]],[[88,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3102,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Pause",""],[""],[0,0,0,0,1],["",""]],[0,"Pause",0,1]],[[158,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3103,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Replay","1"],[""],[0,0,0,0,1],["",""]],[0,"Reload",0,1]]],[]],["End Game",6,497042823604356,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],85,3104,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[73,194,0,494,72,0,0,1,0,0,0,0,[]],86,3105,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],["{alignY:50}"],[0],[1],[0],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Your final time",2.5,0,50,50,0,0,-10,0,"",-1,0]],[[320,403,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3106,[[0],[1],[0],[0],[""],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Quit",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[73,243,0,494,85,0,0,1,0,0,0,0,[]],87,3108,[[0],[1],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",3,0,50,50,0,0,-10,0,"",-1,0]],[[73,318,0,494,25,0,0,1,0,0,0,0,[]],86,5480,[[1],[1],["tryagainhardmode"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Try again in hard mode!",1,0,50,50,0,0,-2,0,"",-1,0]]],[]],["Banner",7,741381409412031,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-237,-189,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,3109,[],[["overlay"]],[0,"Default",0,1]]],[]],["AdPlaying",8,921349156695295,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,-203.5,0,250,97,0,0,1,0.5,0.5,0,0,[]],125,390,[],[[6,1,"",300,1,1,"",300,"overlay",1,"",1,1],[]],[0,"Default",0,1]],[[209,-275,0,222,139,0,0,1,0,0,0,0,[]],86,391,[[1],[1],["adplaying"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","An ad is playing right now...",1.2,0,50,50,0,0,-2,0,"",-1,0]],[[-154.5756988525391,-294.3137512207031,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,5508,[],[["overlay"]],[0,"Default",0,1]]],[]]],[],[]],["Level 25",1350,1700,true,"Levels",899479500007981,[["Background",0,660251469795282,true,[255,255,255],false,0,0,1,false,false,1,0,0,[],[]],["Layer 0",1,140415275891871,true,[255,255,255],true,1,1,1,false,false,1,0,0,[[[447,534,0,32,64,0,0,1,0.5,0.5,0,0,[]],42,1192,[["run"],[0],[1],[1],[0],[0.8],[0.5],[0],[1],[0],[0],[0],[""],[2],[0],[0],[0],[""],[0],[3],[0],[0],[0],[0],[0],[0],[0]],[[330,1500,1500,650,1500,1000,0,0,0,1],[],[0,0],[0,10000,360,1]],[1,"Default",0,1]],[[596,500,0,97,192,0,0,1,0.5257731676101685,0.4974874258041382,0,0,[]],44,1193,[],[[1]],[0,"Default",0,1]],[[340,592,0,680,9,0,0,1,0,0,0,0,[]],51,1194,[],[[1],[1],[1,100,""]],[0,0]],[[316,432,0,188.7003173828125,64,0,0,1,0,0,0,0,[]],46,1198,[[1],[1],["lvltxt25-2"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","This can be opened somehow...",1,0,50,0,0,0,0,0,"",-1,0]],[[523,392,0,9,200,0,0,1,0,0,0,0,[]],48,1199,[],[[0],[1]],[0,0]],[[532,0,0,392,9,0,1.570796370506287,1,0,0,0,0,[]],51,1195,[],[[1],[1],[1,100,""]],[0,0]],[[268,272,0,824,9,0,1.570796370506287,1,0,0,0,0,[]],51,1197,[],[[1],[1],[1,100,""]],[0,0]],[[260,272,0,144,9,0,0,1,0,0,0,0,[]],51,1200,[],[[1],[1],[1,100,""]],[0,0]],[[316,536,0,218,64,0,1.570796370506287,1,0,0,0,0,[]],46,1254,[[0],[0],[""],["en-us"],[0],[0],[1],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","--->",1,0,50,0,0,0,0,0,"",-1,0]],[[340,1088,0,688,9,0,0,1,0,0,0,0,[]],51,1255,[],[[1],[1],[1,100,""]],[0,0]],[[76,1176,0,1056,9,0,0,1,0,0,0,0,[]],51,1256,[],[[1],[1],[1,100,""]],[0,0]],[[1132,0,0,1184,9,0,1.570796370506287,1,0,0,0,0,[]],51,1257,[],[[1],[1],[1,100,""]],[0,0]],[[1028,592,0,416,9,0,1.570796370506287,1,0,0,0,0,[]],51,1258,[],[[1],[1],[1,100,""]],[0,0]],[[844,0,0,600,9,0,1.570796370506287,1,0,0,0,0,[]],51,1259,[],[[1],[1],[1,100,""]],[0,0]],[[864,158,0,232,64,0,0,1,0,0,0,0,[]],46,1260,[[1],[0],["lvltxt25-1"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Sorry, nothing here...",1,0,50,0,0,0,0,0,"",-1,0]],[[84,968,0,216,9,0,1.570796370506287,1,0,0,0,0,[]],51,1261,[],[[1],[1],[1,100,""]],[0,0]],[[212,1040,0,48,9,0,0,1,0,0,0,0,[]],51,1262,[],[[1],[1],[1,100,""]],[0,0]],[[236,1024,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,1263,[[0.7],[0]],[[1]],[0,"Default",0,1]],[[212,672,0,48,9,0,0,1,0,0,0,0,[]],51,1264,[],[[1],[1],[1,100,""]],[0,0]],[[236,696,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1265,[[0],[1]],[[1],[1]],[0,"Default",0,1]],[[236,656,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,1266,[[0.7],[0]],[[1]],[0,"Default",0,1]],[[380,272,0,88,8,0,0,1,0,0,0,0,[]],45,1272,[],[[1],[1]],[0,0]],[[444,272,0,80,9,0,0,1,0,0,0,0,[]],51,1273,[],[[1],[1],[1,100,""]],[0,0]],[[156,264,0,64,9,0,1.570796370506287,1,0,0,0,0,[]],51,1267,[],[[1],[1],[1,100,""]],[0,0]],[[124,664,0,64,9,0,1.570796370506287,1,0,0,0,0,[]],51,1268,[],[[1],[1],[1,100,""]],[0,0]],[[478.292724609375,243.413818359375,0,32,32,0,0,1,0.5,0.5,0,0,[]],49,1253,[[0],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[0,"Default",0,1]],[[-51,30,0,60.93439102172852,60.93439102172852,0,0,1,0.5,0.5,0,0,[]],53,1270,[["Simple Mechanics"],[""],[0]],[],[1,"Default",0,1]],[[672,856,0,64,64,0,0,1,0.5,0.5,0,0,[]],60,648,[["level25"]],[[1],[400,-200,800,0,0,0],[0,0,0,1,1]],[0,"Default",0,1]],[[527.627685546875,492.4734497070313,0,165.7147216796875,18.2294921875,0,-1.570796489715576,1,0.5,0.5,0,0,[]],50,1252,[[-1],[0],[0],[0],[0],[0],[0]],[[0],[1,0,1,1,"F 160",300,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[392,640,0,288,114,0,0,1,0,0,0,0,[[]]],61,1784,[],[[1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>","25",7,0,70,0,0,0,0,0,"",-1,0]],[[1019,1008,0,9,80,0,0,1,0,0,0,0,[]],48,10604,[],[[0],[1]],[0,0]],[[1024,1056,0,48,18.2294921875,0,-1.570796489715576,1,0.5,0.5,0,0,[]],50,10619,[[-1],[0],[0],[0],[0],[0],[0]],[[0],[1,0,1,1,"F 80",300,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[339,1096,0,9,80,0,0,1,0,0,0,0,[]],48,10620,[],[[0],[1]],[0,0]],[[344,1144,0,48,18.2294921875,0,-1.570796489715576,1,0.5,0.5,0,0,[]],50,10621,[[-1],[0],[0],[0],[0],[0],[0]],[[0],[1,0,1,1,"F 80",300,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[348,592,0,504,9,0,1.570796370506287,1,0,0,0,0,[]],51,1196,[],[[1],[1],[1,100,""]],[0,0]]],[]],["UI",2,927870292221569,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[240,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3097,[["right"]],[[0,1,0,1,1]],[0,"Default",0,1]],[[80,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3098,[["left"]],[[0,1,0,1,1]],[0,"Default",1,1]],[[560,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3099,[["up"]],[[1,1,1,1,1]],[0,"Default",3,1]],[[400,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3100,[["down"]],[[1,1,1,1,1]],[0,"Default",2,1]]],[]],["End Card",3,206235447121763,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],78,2607,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[12.04449462890625,194,0,615.9109497070313,67,0,0,1,0,0,0,0,[]],79,2608,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Timer for this level",2.5,0,0,0,0,0,-10,0,"",-1,0]],[[17.546875,248,0,604.90625,105,0,0,1,0,0,0,0,[]],80,2610,[[0],[0],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","13:40:40",4,0,63,50,0,0,-10,0,"",-1,0]],[[115.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,2611,[[0],[1],[0],[0],["replay"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Replay",""],[""],[2,2,0,0,0],["",""]],[0,"Replay",0,1]],[[524.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3086,[[0],[1],[0],[0],["next"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Next",""],[""],[2,2,0,0,0],["",""]],[0,"Next",0,1]],[[320.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3087,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > Back","Level Menu"],[""],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[320.75,521.8050537109375,0,384,96,0,0,1,0.5,0.5,0,0,[]],70,3088,[[1],[1],[0],[0],[""],["{\"size\": 22, \"left\": 70, \"right\": 18, \"alignY\": 60}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > DownloadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"DownloadReplay",0,1]]],[]],["Pause",4,143106196626784,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-310,678,0,274,31,0,0,1,0,0,0,0,[]],168,3089,[],[],[".ovo",0,1,"file"]],[[320,320,0,425,250,0,0,1,0.5,0.5,0,0,[]],82,3090,[],[[6,1,"",300,1,1,"",300,"overlay",1,"PauseClose",1,1]],[0,"Default",0,1]],[[214,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3091,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"",""],["PauseClose"],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[426,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3092,[[0],[1],[0],[0],["quit"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > GiveUp",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[115.5,202,0,409,118,0,0,1,0,0,0,0,[]],83,3093,[[1],[1],["pause"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Pause",4,0,57,50,0,0,-10,0,"",-1,0]],[[320.5,88,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3094,[[1],[1],[0],[0],["loadreplay"],["{\"size\": 16, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > LoadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"LoadReplay",0,1]],[[320.5,157,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3095,[[1],[0],[0],[0],["toggledebug"],["{\"size\": 15, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Debug > Toggle",""],[""],[2,2,0,0,0],["",""]],[0,"ToggleDebug",0,1]],[[78,448,0,484,134,0,0,1,0,0,0,0,[]],193,3096,[],[],[0,"Default",0,1]]],[]],["Overlay",5,429957008236712,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[432,4,0,203.0009155273438,64,0,0,1,0,0,0,0,[]],107,5488,[],[[1,0,1,0,1]],[2,2,2,2,0,1,0,0,1]],[[432,4,0,203,64,0,0,1,0,0,0,0,[]],84,3101,[[0],[0],[""],["en-us"],[0],[1],[1],["{\"alignY\": 85, \"alignX\": 45, \"size\": 28}"],[0],[1],[0],[0],[0]],[["",""],[1,0,1,0,1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",2,0,100,50,0,0,-10,0,"",-1,0]],[[88,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3102,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Pause",""],[""],[0,0,0,0,1],["",""]],[0,"Pause",0,1]],[[158,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3103,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Replay","1"],[""],[0,0,0,0,1],["",""]],[0,"Reload",0,1]]],[]],["End Game",6,634297511614141,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],85,3104,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[73,194,0,494,72,0,0,1,0,0,0,0,[]],86,3105,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],["{alignY:50}"],[0],[1],[0],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Your final time",2.5,0,50,50,0,0,-10,0,"",-1,0]],[[320,403,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3106,[[0],[1],[0],[0],[""],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Quit",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[73,243,0,494,85,0,0,1,0,0,0,0,[]],87,3108,[[0],[1],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",3,0,50,50,0,0,-10,0,"",-1,0]],[[73,318,0,494,25,0,0,1,0,0,0,0,[]],86,5480,[[1],[1],["tryagainhardmode"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Try again in hard mode!",1,0,50,50,0,0,-2,0,"",-1,0]]],[]],["Banner",7,500690507429291,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-237,-189,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,3109,[],[["overlay"]],[0,"Default",0,1]]],[]],["AdPlaying",8,588846042099937,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,-203.5,0,250,97,0,0,1,0.5,0.5,0,0,[]],125,390,[],[[6,1,"",300,1,1,"",300,"overlay",1,"",1,1],[]],[0,"Default",0,1]],[[209,-275,0,222,139,0,0,1,0,0,0,0,[]],86,391,[[1],[1],["adplaying"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","An ad is playing right now...",1.2,0,50,50,0,0,-2,0,"",-1,0]],[[-154.5756988525391,-294.3137512207031,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,5508,[],[["overlay"]],[0,"Default",0,1]]],[]]],[],[]],["Level 26",2000,2000,true,"Levels",107865939470488,[["Background",0,811607237711368,true,[255,255,255],false,0,0,1,false,false,1,0,0,[[[838,701,0,60.93439102172852,60.93439102172852,0,0,1,0.5,0.5,0,0,[]],53,1427,[["Three Doors"],["{\"c2array\":true,\"size\":[83,6,1],\"data\":[[[769.4110133590011],[1037.9784560431692],[0],[\"idle\"],[0],[1]],[[769.4110133590011],[1037.9784560431692],[0],[\"idle\"],[0],[1]],[[769.4110133590011],[1037.9784560431692],[0],[\"idle\"],[0],[1]],[[769.4110133590011],[1037.9784560431692],[0],[\"idle\"],[0],[1]],[[769.4110133590011],[1037.9784560431692],[0],[\"idle\"],[0],[1]],[[769.4110133590011],[1037.9784560431692],[0],[\"idle\"],[0],[1]],[[769.4110133590011],[1037.9784560431692],[0],[\"idle\"],[0],[1]],[[769.4110133590011],[1037.9784560431692],[0],[\"idle\"],[0],[1]],[[769.4110133590011],[1037.9784560431692],[0],[\"idle\"],[0],[1]],[[769.4110133590011],[1037.9784560431692],[0],[\"idle\"],[0],[1]],[[769.4110133590011],[1037.9784560431692],[0],[\"idle\"],[0],[1]],[[769.4110133590011],[1037.9784560431692],[0],[\"idle\"],[0],[1]],[[769.4110133590011],[1037.9784560431692],[0],[\"idle\"],[0],[1]],[[769.4110133590011],[1037.9784560431692],[0],[\"idle\"],[0],[1]],[[769.4110133590011],[1037.9784560431692],[0],[\"idle\"],[0],[1]],[[769.4110133590011],[1037.9784560431692],[0],[\"idle\"],[0],[1]],[[769.4110133590011],[1037.9784560431692],[0],[\"idle\"],[0],[1]],[[769.4110133590011],[1037.9784560431692],[0],[\"idle\"],[0],[1]],[[769.4110133590011],[1037.9784560431692],[0],[\"idle\"],[0],[1]],[[769.4110133590011],[1037.9784560431692],[0],[\"idle\"],[0],[1]],[[769.4110133590011],[1037.9784560431692],[0],[\"idle\"],[0],[1]],[[769.4110133590011],[1037.9784560431692],[0],[\"idle\"],[0],[1]],[[769.4110133590011],[1037.9784560431692],[0],[\"idle\"],[0],[1]],[[769.4110133590011],[1037.9784560431692],[0],[\"idle\"],[0],[1]],[[769.4110133590011],[1037.9784560431692],[0],[\"idle\"],[0],[1]],[[769.4110133590011],[1037.9784560431692],[0],[\"idle\"],[0],[1]],[[769.4110133590011],[1037.9784560431692],[0],[\"idle\"],[0],[1]],[[769.4110133590011],[1037.9784560431692],[0],[\"idle\"],[0],[1]],[[769.4110133590011],[1037.9784560431692],[0],[\"idle\"],[0],[1]],[[769.4110133590011],[1037.9784560431692],[0],[\"idle\"],[0],[1]],[[769.4110133590011],[1027.1631060431698],[0],[\"jump\"],[0],[1]],[[769.4110133590011],[1016.7630405246703],[0],[\"jump\"],[0],[1]],[[769.4110133590011],[1006.7782594876707],[0],[\"jump\"],[0],[1]],[[769.4110133590011],[997.2087629321691],[0],[\"jump\"],[0],[1]],[[769.4110133590011],[988.0592778471705],[0],[\"jump\"],[0],[1]],[[769.4110133590011],[979.3011178191706],[0],[\"jump\"],[0],[1]],[[769.4110133590011],[970.9815253071699],[0],[\"jump\"],[0],[1]],[[769.4110133590011],[963.0894780671703],[0],[\"pound\"],[0],[1]],[[769.4110133590011],[958.50206180067],[0],[\"pound\"],[0],[1]],[[769.4110133590011],[954.34518005067],[0],[\"pound\"],[0],[1]],[[769.4110133590011],[950.6000822501702],[0],[\"pound\"],[0],[1]],[[769.4110133590011],[947.2669413851703],[0],[\"pound\"],[0],[1]],[[769.4110133590011],[944.3548392941702],[0],[\"pound\"],[0],[1]],[[769.4110133590011],[941.8557446891699],[0],[\"pound\"],[0],[1]],[[769.4110133590011],[939.7711324376703],[0],[\"pound\"],[0],[1]],[[769.4110133590011],[938.1005485886702],[0],[\"pound\"],[0],[1]],[[769.4110133590011],[936.8482558511703],[0],[\"pound\"],[0],[1]],[[769.4110133590011],[936.0125441171703],[0],[\"pound\"],[0],[1]],[[769.4110133590011],[935.5895469971703],[0],[\"pound\"],[0],[1]],[[769.4110133590011],[935.5818597791704],[0],[\"pound\"],[0],[1]],[[769.4110133590011],[944.3188439526704],[0],[\"pound\"],[0],[1]],[[769.4110133590011],[953.4920104096683],[0],[\"pound\"],[0],[1]],[[769.4110133590011],[963.05846202817],[0],[\"pound\"],[0],[1]],[[769.4110133590011],[973.0052107561692],[0],[\"pound\"],[0],[1]],[[769.4110133590011],[983.4073311416699],[0],[\"pound\"],[0],[1]],[[769.4110133590011],[994.2090425166699],[0],[\"pound\"],[0],[1]],[[769.4110133590011],[1005.4351345511693],[0],[\"pound\"],[0],[1]],[[769.4110133590011],[1017.0808587361696],[0],[\"pound\"],[0],[1]],[[769.4110133590011],[1029.1504126081688],[0],[\"pound\"],[0],[1]],[[769.4110133590011],[1041.6229321326682],[0],[\"pound\"],[0],[1]],[[769.4110133590011],[1054.5339232626693],[0],[\"pound\"],[0],[1]],[[769.4110133590011],[1067.8377355466687],[0],[\"pound\"],[0],[1]],[[769.4110133590011],[1081.5406928666678],[0],[\"pound\"],[0],[1]],[[769.4110133590011],[1095.6588611341701],[0],[\"pound\"],[0],[1]],[[769.4110133590011],[1110.2022074451684],[0],[\"pound\"],[0],[1]],[[769.4110133590011],[1125.1660844396677],[0],[\"pound\"],[0],[1]],[[769.4110133590011],[1133.9411299766675],[0],[\"idle\"],[0],[1]],[[769.4110133590011],[1133.9411299766675],[0],[\"idle\"],[0],[1]],[[769.4110133590011],[1133.9411299766675],[0],[\"idle\"],[0],[1]],[[769.4110133590011],[1133.9411299766675],[0],[\"idle\"],[0],[1]],[[769.4110133590011],[1133.9411299766675],[0],[\"idle\"],[0],[1]],[[769.4110133590011],[1133.9411299766675],[0],[\"idle\"],[0],[1]],[[769.4110133590011],[1133.9411299766675],[0],[\"idle\"],[0],[1]],[[769.4110133590011],[1133.9411299766675],[0],[\"idle\"],[0],[1]],[[769.4110133590011],[1133.9411299766675],[0],[\"idle\"],[0],[1]],[[769.4110133590011],[1133.9411299766675],[0],[\"idle\"],[0],[1]],[[769.4110133590011],[1133.9411299766675],[0],[\"idle\"],[0],[1]],[[769.4110133590011],[1133.9411299766675],[0],[\"idle\"],[0],[1]],[[769.4110133590011],[1133.9411299766675],[0],[\"idle\"],[0],[1]],[[769.4110133590011],[1133.9411299766675],[0],[\"idle\"],[0],[1]],[[769.4110133590011],[1133.9411299766675],[0],[\"idle\"],[0],[1]],[[769.4110133590011],[1133.9411299766675],[0],[\"idle\"],[0],[1]],[[769.4110133590011],[1133.9411299766675],[0],[\"idle\"],[0],[1]]]}"],[0]],[],[1,"Default",0,1]]],[]],["Layer 0",1,238044199046585,true,[255,255,255],true,1,1,1,false,false,1,0,0,[[[872,782,0,288,9,0,1.570796370506287,1,0,0,0,0,[]],51,1269,[],[[1],[1],[1,100,""]],[0,0]],[[1057,904,0,32,64,0,0,1,0.5,0.5,0,0,[]],42,1274,[["run"],[0],[1],[1],[0],[0.8],[0.5],[0],[1],[0],[0],[0],[""],[2],[0],[0],[0],[""],[0],[3],[0],[0],[0],[0],[0],[0],[0]],[[330,1500,1500,650,1500,1000,0,0,0,1],[],[0,0],[0,10000,360,1]],[1,"Default",0,1]],[[1248,782,0,296,9,0,1.570796370506287,1,0,0,0,0,[]],51,1275,[],[[1],[1],[1,100,""]],[0,0]],[[80,1166,0,936,9,0,0,1,0,0,0,0,[]],51,1276,[],[[1],[1],[1,100,""]],[0,0]],[[864,774,0,152,9,0,0,1,0,0,0,0,[]],51,1277,[],[[1],[1],[1,100,""]],[0,0]],[[1008,998,0,96,9,0,0,1,0,0,0,0,[]],51,1278,[],[[1],[1],[1,100,""]],[0,0]],[[1096,774,0,152,9,0,0,1,0,0,0,0,[]],51,1279,[],[[1],[1],[1,100,""]],[0,0]],[[1016,774,0,80,9,0,0,1,0,0,0,0,[]],48,1280,[],[[0],[1]],[0,0]],[[872,1070,0,96,9,0,1.570796370506287,1,0,0,0,0,[]],48,1281,[],[[0],[1]],[0,0]],[[1248,1078,0,88,9,0,1.570796370506287,1,0,0,0,0,[]],48,1282,[],[[0],[1]],[0,0]],[[1096,1166,0,784,9,0,0,1,0,0,0,0,[]],51,1283,[],[[1],[1],[1,100,""]],[0,0]],[[888,1078,0,16,16,0,0,1,0,0,0,0,[]],46,1284,[[0],[0],[""],["en-us"],[0],[0],[1],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","1",1,0,50,0,0,0,0,0,"",-1,0]],[[1208,1078,0,24,24,0,0,1,0,0,0,0,[]],46,1285,[[0],[0],[""],["en-us"],[0],[0],[1],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","2",1,0,50,0,0,0,0,0,"",-1,0]],[[1040,806,0,32,16,0,0,1,0,0,0,0,[]],46,1286,[[0],[0],[""],["en-us"],[0],[0],[1],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","3",1,0,50,0,0,0,0,0,"",-1,0]],[[1016,1174,0,288,9,0,1.570796370506287,1,0,0,0,0,[]],51,1287,[],[[1],[1],[1,100,""]],[0,0]],[[1104,1166,0,296,9,0,1.570796370506287,1,0,0,0,0,[]],51,1288,[],[[1],[1],[1,100,""]],[0,0]],[[776,1838,0,560,9,0,0,1,0,0,0,0,[]],51,1289,[],[[1],[1],[1,100,""]],[0,0]],[[1096,1454,0,232,9,0,0,1,0,0,0,0,[]],51,1290,[],[[1],[1],[1,100,""]],[0,0]],[[784,1454,0,232,9,0,0,1,0,0,0,0,[]],51,1291,[],[[1],[1],[1,100,""]],[0,0]],[[784,1454,0,392,9,0,1.570796370506287,1,0,0,0,0,[]],51,1292,[],[[1],[1],[1,100,""]],[0,0]],[[1336,1454,0,384,9,0,1.570796370506287,1,0,0,0,0,[]],51,1293,[],[[1],[1],[1,100,""]],[0,0]],[[720,1070,0,32,9,0,0,1,0,0,0,0,[]],51,1294,[],[[1],[1],[1,100,""]],[0,0]],[[728,782,0,216,9,0,1.570796370506287,1,0,0,0,0,[]],51,1295,[],[[1],[1],[1,100,""]],[0,0]],[[88,782,0,392,9,0,1.570796370506287,1,0,0,0,0,[]],51,1296,[],[[1],[1],[1,100,""]],[0,0]],[[88,782,0,640,9,0,0,1,0,0,0,0,[]],51,1297,[],[[1],[1],[1,100,""]],[0,0]],[[1240,1070,0,160,9,0,0,1,0,0,0,0,[]],51,1298,[],[[1],[1],[1,100,""]],[0,0]],[[1400,782,0,288,9,0,1.570796370506287,1,0,0,0,0,[]],51,1299,[],[[1],[1],[1,100,""]],[0,0]],[[1392,782,0,488,9,0,0,1,0,0,0,0,[]],51,1300,[],[[1],[1],[1,100,""]],[0,0]],[[1880,782,0,392,9,0,1.570796370506287,1,0,0,0,0,[]],51,1301,[],[[1],[1],[1,100,""]],[0,0]],[[1016,478,0,304,9,0,1.570796370506287,1,0,0,0,0,[]],51,1302,[],[[1],[1],[1,100,""]],[0,0]],[[1104,478,0,304,9,0,1.570796370506287,1,0,0,0,0,[]],51,1303,[],[[1],[1],[1,100,""]],[0,0]],[[912,126,0,288,9,0,0,1,0,0,0,0,[]],51,1304,[],[[1],[1],[1,100,""]],[0,0]],[[1096,478,0,328,9,0,0,1,0,0,0,0,[]],51,1305,[],[[1],[1],[1,100,""]],[0,0]],[[904,478,0,112,9,0,0,1,0,0,0,0,[]],51,1306,[],[[1],[1],[1,100,""]],[0,0]],[[1008,478,0,88,8,0,0,1,0,0,0,0,[]],45,1307,[],[[1],[1]],[0,0]],[[912,126,0,360,9,0,1.570796370506287,1,0,0,0,0,[]],51,1308,[],[[1],[1],[1,100,""]],[0,0]],[[1208,126,0,272,9,0,1.570796370506287,1,0,0,0,0,[]],51,1309,[],[[1],[1],[1,100,""]],[0,0]],[[968,382,0,97,192,0,0,1,0.5257731676101685,0.4974874258041382,0,0,[]],44,1310,[],[[1]],[0,"Default",0,1]],[[1208,398,0,80,9,0,1.570796370506287,1,0,0,0,0,[]],48,1311,[],[[0],[1]],[0,0]],[[1168,398,0,24,16,0,0,1,0,0,0,0,[]],46,1312,[[0],[0],[""],["en-us"],[0],[0],[1],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","4",1,0,50,0,0,0,0,0,"",-1,0]],[[1200,390,0,216,9,0,0,1,0,0,0,0,[]],51,1313,[],[[1],[1],[1,100,""]],[0,0]],[[1424,390,0,96,9,0,1.570796370506287,1,0,0,0,0,[]],51,1314,[],[[1],[1],[1,100,""]],[0,0]],[[1016,1454,0,88,8,0,0,1,0,0,0,0,[]],45,1316,[],[[1],[1]],[0,0]],[[1120,1822,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,1317,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[992,1822,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1318,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[960,1822,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1319,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[928,1822,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1320,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[896,1822,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1321,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1120,1758,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,1322,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1120,1790,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,1323,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1120,1726,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,1324,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1144,1614,0,224,9,0,1.570796370506287,1,0,0,0,0,[]],51,1326,[],[[1],[1],[1,100,""]],[0,0]],[[1120,1662,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,1327,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1120,1694,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,1328,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[880,1646,0,120,9,0,0,1,0,0,0,0,[]],51,1330,[],[[1],[1],[1,100,""]],[0,0]],[[984,1630,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1332,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1104,1614,0,152,9,0,0,1,0,0,0,0,[]],51,1333,[],[[1],[1],[1,100,""]],[0,0]],[[1256,1550,0,152,9,0,1.570796370506287,1,0,0,0,0,[]],51,1334,[],[[1],[1],[1,100,""]],[0,0]],[[1280,1822,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1325,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1312,1822,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1335,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1160,1766,0,24,16,0,0,1,0,0,0,0,[]],46,1336,[[0],[0],[""],["en-us"],[0],[0],[1],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","1",1,0,50,0,0,0,0,0,"",-1,0]],[[560,862,0,168,9,0,0,1,0,0,0,0,[]],51,1338,[],[[1],[1],[1,100,""]],[0,0]],[[672,798,0,32,16,0,0,1,0,0,0,0,[]],46,1339,[[0],[0],[""],["en-us"],[0],[0],[1],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","2",1,0,50,0,0,0,0,0,"",-1,0]],[[608,886,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1340,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[640,886,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1341,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[672,886,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1342,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[704,886,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1343,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[528,1070,0,200,9,0,0,1,0,0,0,0,[]],51,1345,[],[[1],[1],[1,100,""]],[0,0]],[[608,1095,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1346,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[640,1094,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1347,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[672,1094,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1348,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[704,1094,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1349,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[576,1095,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1350,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[376,1150,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1352,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[408,1150,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1353,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[440,1150,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1354,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[472,1150,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1355,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[344,1150,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1356,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[200,902,0,208,9,0,0,1,0,0,0,0,[]],51,1351,[],[[1],[1],[1,100,""]],[0,0]],[[568,782,0,88,8,0,1.570796370506287,1,0,0,0,0,[]],45,1357,[],[[1],[1]],[0,0]],[[304,886,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,1358,[[0.7],[0]],[[1]],[0,"Default",0,1]],[[224,886,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,1359,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[224,854,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,1360,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[224,822,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,1361,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[208,790,0,120,9,0,1.570796370506287,1,0,0,0,0,[]],51,1362,[],[[1],[1],[1,100,""]],[0,0]],[[800,1070,0,72,9,0,0,1,0,0,0,0,[]],51,1364,[],[[1],[1],[1,100,""]],[0,0]],[[960,579.4093017578125,0,48,9,0,0,1,0,0,0,0,[]],51,1365,[],[[1],[1],[1,100,""]],[0,0]],[[976,508,0,16,16,0,0,1,0,0,0,0,[]],46,1367,[[0],[0],[""],["en-us"],[0],[0],[1],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","4",1,0,50,0,0,0,0,0,"",-1,0]],[[1448,854,0,352,9,0,0,1,0,0,0,0,[]],51,1369,[],[[1],[1],[1,100,""]],[0,0]],[[1784,854,0,88,8,0,0,1,0,0,0,0,[]],45,1370,[],[[1],[1]],[0,0]],[[1400,854,0,88,8,0,0,1,0,0,0,0,[]],45,1371,[],[[1],[1]],[0,0]],[[1856,1150,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,1372,[[0.7],[0]],[[1]],[0,"Default",0,1]],[[1688,1150,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,1373,[[0.7],[0]],[[1]],[0,"Default",0,1]],[[1552,1150,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,1374,[[0.7],[0]],[[1]],[0,"Default",0,1]],[[1528,998,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1375,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1560,998,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1376,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1592,998,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1377,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1728,1110,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,1378,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1728,1078,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,1379,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1728,1046,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,1380,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1696,926,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1381,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1728,926,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1382,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1760,926,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1383,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1680,902,0,96,9,0,0,1,0,0,0,0,[]],51,1384,[],[[1],[1],[1,100,""]],[0,0]],[[1512,974,0,96,9,0,0,1,0,0,0,0,[]],51,1385,[],[[1],[1],[1,100,""]],[0,0]],[[1752,1030,0,96,9,0,1.570796370506287,1,0,0,0,0,[]],51,1386,[],[[1],[1],[1,100,""]],[0,0]],[[1528,958,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1387,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1560,958,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1388,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1592,958,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1389,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1696,886,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1390,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1728,886,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1391,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1760,886,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1392,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1624,793,0,40,32,0,0,1,0,0,0,0,[]],46,1394,[[0],[0],[""],["en-us"],[0],[0],[1],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","3",1,0,50,0,0,0,0,0,"",-1,0]],[[1176,1814,0,32,32,0,0,1,0.5,0.5,0,0,[]],49,1337,[[1],[1],[1],[-1],[-1],[999],[0]],[[0],[]],[0,"Default",0,1]],[[752,1070,0,48,9,0,0,1,0,0,0,0,[]],52,1433,[],[[0],[0]],[0,0]],[[728,998,0,80,8,0,1.570796370506287,1,0,0,0,0,[]],45,1363,[],[[0],[1]],[0,0]],[[688,838,0,32,32,0,0,1,0.5,0.5,0,0,[]],49,1331,[[2],[1],[1],[-1],[-1],[999],[0]],[[0],[]],[0,"Default",0,1]],[[1240,1134,0,50,50,0,-1.570796489715576,1,0.5,0.5,0,0,[]],50,1434,[[-1],[0],[0],[0],[0],[2],[0]],[[0],[1,0,1,1,"F 90",300,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1640,830,0,32,32,0,0,1,0.5,0.5,0,0,[]],49,1393,[[3],[1],[1],[-1],[-1],[999],[0]],[[0],[]],[0,"Default",0,1]],[[1056,766,0,50,50,0,0,1,0.5,0.5,0,0,[]],50,1435,[[-1],[0],[0],[0],[0],[3],[0]],[[0],[1,0,1,1,"F 90",300,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1208,446,0,50,50,0,-1.570796489715576,1,0.5,0.5,0,0,[]],50,1329,[[-1],[0],[0],[0],[0],[4],[0]],[[0],[1,0,1,1,"F 90",300,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[984,540,0,32,32,0,0,1,0.5,0.5,0,0,[]],49,1436,[[4],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[0,"Default",0,1]],[[1366.810913085938,438.4569396972656,0,64,64,0,0,1,0.5,0.5,0,0,[]],60,1315,[["level26"]],[[1],[400,-200,800,0,0,0],[0,0,0,1,1]],[0,"Default",0,1]],[[921,900,0,300,113,0,0,1,0,0,0,0,[[]]],61,5617,[],[[1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>","26",7,0,60,0,0,0,0,0,"",-1,0]],[[864,1126,0,50,50,0,-1.570796489715576,1,0.5,0.5,0,0,[]],50,1368,[[-1],[0],[0],[0],[0],[1],[0]],[[0],[1,0,1,1,"F 90",300,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]]],[]],["UI",2,629785534832196,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[240,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3097,[["right"]],[[0,1,0,1,1]],[0,"Default",0,1]],[[80,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3098,[["left"]],[[0,1,0,1,1]],[0,"Default",1,1]],[[560,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3099,[["up"]],[[1,1,1,1,1]],[0,"Default",3,1]],[[400,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3100,[["down"]],[[1,1,1,1,1]],[0,"Default",2,1]]],[]],["End Card",3,771475450573515,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],78,2607,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[12.04449462890625,194,0,615.9109497070313,67,0,0,1,0,0,0,0,[]],79,2608,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Timer for this level",2.5,0,0,0,0,0,-10,0,"",-1,0]],[[17.546875,248,0,604.90625,105,0,0,1,0,0,0,0,[]],80,2610,[[0],[0],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","13:40:40",4,0,63,50,0,0,-10,0,"",-1,0]],[[115.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,2611,[[0],[1],[0],[0],["replay"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Replay",""],[""],[2,2,0,0,0],["",""]],[0,"Replay",0,1]],[[524.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3086,[[0],[1],[0],[0],["next"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Next",""],[""],[2,2,0,0,0],["",""]],[0,"Next",0,1]],[[320.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3087,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > Back","Level Menu"],[""],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[320.75,521.8050537109375,0,384,96,0,0,1,0.5,0.5,0,0,[]],70,3088,[[1],[1],[0],[0],[""],["{\"size\": 22, \"left\": 70, \"right\": 18, \"alignY\": 60}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > DownloadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"DownloadReplay",0,1]]],[]],["Pause",4,853704301528028,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-310,678,0,274,31,0,0,1,0,0,0,0,[]],168,3089,[],[],[".ovo",0,1,"file"]],[[320,320,0,425,250,0,0,1,0.5,0.5,0,0,[]],82,3090,[],[[6,1,"",300,1,1,"",300,"overlay",1,"PauseClose",1,1]],[0,"Default",0,1]],[[214,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3091,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"",""],["PauseClose"],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[426,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3092,[[0],[1],[0],[0],["quit"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > GiveUp",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[115.5,202,0,409,118,0,0,1,0,0,0,0,[]],83,3093,[[1],[1],["pause"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Pause",4,0,57,50,0,0,-10,0,"",-1,0]],[[320.5,88,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3094,[[1],[1],[0],[0],["loadreplay"],["{\"size\": 16, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > LoadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"LoadReplay",0,1]],[[320.5,157,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3095,[[1],[0],[0],[0],["toggledebug"],["{\"size\": 15, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Debug > Toggle",""],[""],[2,2,0,0,0],["",""]],[0,"ToggleDebug",0,1]],[[78,448,0,484,134,0,0,1,0,0,0,0,[]],193,3096,[],[],[0,"Default",0,1]]],[]],["Overlay",5,195616602313341,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[432,4,0,203.0009155273438,64,0,0,1,0,0,0,0,[]],107,5488,[],[[1,0,1,0,1]],[2,2,2,2,0,1,0,0,1]],[[432,4,0,203,64,0,0,1,0,0,0,0,[]],84,3101,[[0],[0],[""],["en-us"],[0],[1],[1],["{\"alignY\": 85, \"alignX\": 45, \"size\": 28}"],[0],[1],[0],[0],[0]],[["",""],[1,0,1,0,1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",2,0,100,50,0,0,-10,0,"",-1,0]],[[88,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3102,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Pause",""],[""],[0,0,0,0,1],["",""]],[0,"Pause",0,1]],[[158,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3103,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Replay","1"],[""],[0,0,0,0,1],["",""]],[0,"Reload",0,1]]],[]],["End Game",6,946114449568777,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],85,3104,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[73,194,0,494,72,0,0,1,0,0,0,0,[]],86,3105,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],["{alignY:50}"],[0],[1],[0],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Your final time",2.5,0,50,50,0,0,-10,0,"",-1,0]],[[320,403,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3106,[[0],[1],[0],[0],[""],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Quit",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[73,243,0,494,85,0,0,1,0,0,0,0,[]],87,3108,[[0],[1],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",3,0,50,50,0,0,-10,0,"",-1,0]],[[73,318,0,494,25,0,0,1,0,0,0,0,[]],86,5480,[[1],[1],["tryagainhardmode"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Try again in hard mode!",1,0,50,50,0,0,-2,0,"",-1,0]]],[]],["Banner",7,499812871562141,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-237,-189,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,3109,[],[["overlay"]],[0,"Default",0,1]]],[]],["AdPlaying",8,967339178603458,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,-203.5,0,250,97,0,0,1,0.5,0.5,0,0,[]],125,390,[],[[6,1,"",300,1,1,"",300,"overlay",1,"",1,1],[]],[0,"Default",0,1]],[[209,-275,0,222,139,0,0,1,0,0,0,0,[]],86,391,[[1],[1],["adplaying"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","An ad is playing right now...",1.2,0,50,50,0,0,-2,0,"",-1,0]],[[-154.5756988525391,-294.3137512207031,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,5508,[],[["overlay"]],[0,"Default",0,1]]],[]]],[],[]],["Level 27",3000,3000,true,"Levels",718424390180472,[["Background",0,449537327596667,true,[255,255,255],false,0,0,1,false,false,1,0,0,[[[480,984,0,60.93439102172852,60.93439102172852,0,0,1,0.5,0.5,0,0,[]],53,6214,[["Awake Contrapion"],[""],[0]],[],[1,"Default",0,1]]],[]],["Layer 0",1,486789532001740,true,[255,255,255],true,1,1,1,false,false,1,0,0,[[[1104,1232,0,184,32,0,1.570796370506287,1,0,0,0,0,[]],51,12132,[],[[0],[1],[1,100,""]],[0,0]],[[1304,1576,0,360,9,0,1.570796370506287,1,0,0,0,0,[]],51,1928,[],[[0],[1],[1,100,""]],[0,0]],[[2264,1552,0,97,192,0,0,1,0.5257731676101685,0.4974874258041382,0,0,[]],44,1929,[],[[0]],[0,"Default",0,1]],[[1656,1648,0,288,9,0,1.570796370506287,1,0,0,0,0,[]],51,1930,[],[[0],[1],[1,100,""]],[0,0]],[[1304,856,0,360,9,0,1.570796370506287,1,0,0,0,0,[]],51,1931,[],[[0],[1],[1,100,""]],[0,0]],[[1656,856,0,696,9,0,1.570796370506287,1,0,0,0,0,[]],51,1932,[],[[0],[1],[1,100,""]],[0,0]],[[1656,1936,0,360,9,0,3.141592741012573,1,0,0,0,0,[]],51,1933,[],[[0],[1],[1,100,""]],[0,0]],[[1656,864,0,360,9,0,3.141592741012573,1,0,0,0,0,[]],51,1934,[],[[0],[1],[1,100,""]],[0,0]],[[1304,1424,0,158,9,0,1.570796370506287,1,0,0,0,0,[]],51,1935,[],[[0],[1],[1,100,""]],[0,0]],[[1304,1216,0,112,9,0,1.570796370506287,1,0,0,0,0,[]],51,1936,[],[[0],[1],[1,100,""]],[0,0]],[[1480,992,0,592,9,0,1.570796370506287,1,0,0,0,0,[]],51,1937,[],[[0],[1],[1,100,""]],[0,0]],[[1304,1576,0,168,8,0,0,1,0,0,0,0,[]],45,1938,[],[[0],[1]],[0,0]],[[1328,1912,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1939,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1360,1912,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1940,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1392,1912,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1941,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1424,1912,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1942,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1456,1912,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1943,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1368,1480,0,80,9,0,0,1,0,0,0,0,[]],51,1944,[],[[0],[1],[1,100,""]],[0,0]],[[1296,1320,0,72,9,0,0,1,0,0,0,0,[]],51,1945,[],[[0],[1],[1,100,""]],[0,0]],[[1416,1176,0,56,9,0,0,1,0,0,0,0,[]],51,1946,[],[[0],[1],[1,100,""]],[0,0]],[[1304,1016,0,64,9,0,0,1,0,0,0,0,[]],51,1947,[],[[0],[1],[1,100,""]],[0,0]],[[1488,880,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1948,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1456,880,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1949,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1496,1112,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1950,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1528,1112,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1951,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1560,1112,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1952,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1592,1112,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1953,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1536,1288,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1954,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1568,1288,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1955,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1600,1288,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1956,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1632,1288,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1957,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1496,1472,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1958,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1528,1472,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1959,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1560,1472,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1960,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1632,1472,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1961,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[1520,1304,0,136,9,0,0,1,0,0,0,0,[]],51,1962,[],[[0],[1],[1,100,""]],[0,0]],[[1480,1128,0,128,9,0,0,1,0,0,0,0,[]],51,1963,[],[[0],[1],[1,100,""]],[0,0]],[[1480,1488,0,64,9,0,0,1,0,0,0,0,[]],51,1964,[],[[0],[1],[1,100,""]],[0,0]],[[1616,1488,0,32,9,0,0,1,0,0,0,0,[]],51,1965,[],[[0],[1],[1,100,""]],[0,0]],[[1480,992,0,128,9,0,0,1,0,0,0,0,[]],51,1966,[],[[0],[1],[1,100,""]],[0,0]],[[1376,1640,0,32,32,0,1.308996915817261,1,0.5,0.5,0,0,[]],43,1967,[[1.5],[0]],[[0]],[0,"Default",0,1]],[[1496,1512,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1968,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[1528,1512,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1969,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[1320,1560,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,1970,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1320,1528,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,1971,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1320,1496,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,1972,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1320,1464,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,1973,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1320,1200,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,1974,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1320,1168,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,1975,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1320,1136,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,1976,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1320,1104,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,1977,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1320,1072,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,1978,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1320,1040,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,1979,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1456,1280,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,1980,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1456,1248,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,1981,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1456,1216,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,1982,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1456,1376,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,1983,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1456,1344,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,1984,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1456,1312,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,1985,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1504,1056,0,40,40,0,0,1,0.5,0.5,0,0,[]],60,1986,[["level27"]],[[1],[400,-200,800,0,0,0],[0,0,0,1,1]],[0,"Default",0,1]],[[672,1248,0,288,117,0,0,1,0,0,0,0,[[]]],61,1987,[],[[1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>","1",7,0,60,0,0,0,0,0,"",-1,0]],[[1472,1576,0,8,864,0,1.570796370506287,1,0,0,0,0,[]],67,1988,[],[[1]],[0,0]],[[1296,1080,0,8,696,0,1.570796370506287,1,0,0,0,0,[]],67,1989,[],[[1]],[0,0]],[[600,1088,0,8,496,0,0,1,0,0,0,0,[]],67,1990,[],[[1]],[0,0]],[[1040,1560,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1991,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[1072,1560,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1992,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[1304,1424,0,8,144,0,1.570796370506287,1,0,0,0,0,[]],67,1993,[],[[1]],[0,0]],[[1160,1224,0,8,456,0,1.570796370506287,1,0,0,0,0,[]],67,1994,[],[[1]],[0,0]],[[1152,1232,0,8,200,0,0,1,0,0,0,0,[]],67,1995,[],[[1]],[0,0]],[[608,1224,0,96,8,0,0,1,0,0,0,0,[]],45,1996,[],[[0],[1]],[0,0]],[[1312,1344,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1997,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[976,1560,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1998,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[1008,1560,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1999,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[1056,1432,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2001,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1088,1432,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2002,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[992,1432,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2003,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1024,1432,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2004,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[960,1432,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2005,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1104,1232,0,184,160,0,1.570796370506287,1,0,0,0,0,[]],67,2006,[],[[1]],[0,0]],[[952,1232,0,176,8,0,1.570796370506287,1,0,0,0,0,[]],45,2007,[],[[0],[1]],[0,0]],[[1104,1232,0,176,8,0,1.570796370506287,1,0,0,0,0,[]],45,2008,[],[[0],[1]],[0,0]],[[976,1264,0,152,32,0,1.570796370506287,1,0,0,0,0,[]],51,2009,[],[[0],[1],[1,100,""]],[0,0]],[[1104,1232,0,184,9,0,1.570796370506287,1,0,0,0,0,[]],51,2010,[],[[0],[1],[1,100,""]],[0,0]],[[640,1496,0,32,8,0,0,1,0,0,0,0,[]],45,2011,[],[[0],[1]],[0,0]],[[656,1480,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,2012,[[0.7],[0]],[[0]],[0,"Default",0,1]],[[656,1520,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2013,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[720,1432,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2014,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[752,1432,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2015,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[736,1448,0,8,32,0,1.570796370506287,1,0,0,0,0,[]],67,2016,[],[[1]],[0,0]],[[768,1448,0,8,32,0,1.570796370506287,1,0,0,0,0,[]],67,2017,[],[[1]],[0,0]],[[712,1448,0,128,8,0,1.570796370506287,1,0,0,0,0,[]],67,2018,[],[[1]],[0,0]],[[768,1456,0,128,8,0,1.570796370506287,1,0,0,0,0,[]],67,2019,[],[[1]],[0,0]],[[720,1432,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2020,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[624,1560,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2021,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[656,1560,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2022,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[688,1560,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2023,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[712,1232,0,72,9,0,1.570796370506287,1,0,0,0,0,[]],51,2024,[],[[0],[1],[1,100,""]],[0,0]],[[688,1288,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,2025,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[688,1256,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,2026,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[784,1560,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,2027,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[784,1528,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,2028,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[784,1496,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,2029,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[784,1464,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,5496,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[952,1144,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,5618,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[984,1144,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,12049,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[920,1144,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,12051,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1120,1208,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12052,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1088,1208,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12053,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[952,1104,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12057,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1280,1168,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,12058,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1280,1136,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,12059,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1280,1104,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,12060,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1280,1264,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,12061,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1280,1232,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,12062,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1280,1200,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,12063,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2336,1648,0,8,680,0,1.570796370506287,1,0,0,0,0,[]],67,12064,[],[[1]],[0,0]],[[2336,1344,0,8,680,0,1.570796370506287,1,0,0,0,0,[]],67,12065,[],[[1]],[0,0]],[[2328,1344,0,8,312,0,0,1,0,0,0,0,[]],67,12066,[],[[1]],[0,0]],[[1304,1760,0,72,9,0,0,1,0,0,0,0,[]],51,12067,[],[[0],[1],[1,100,""]],[0,0]],[[1736,1544,0,104,9,0,1.570796370506287,1,0,0,0,0,[]],51,12068,[],[[0],[1],[1,100,""]],[0,0]],[[1568,1872,0,32,9,0,0,1,0,0,0,0,[]],51,12069,[],[[0],[1],[1,100,""]],[0,0]],[[1656,1544,0,160,8,0,0,1,0,0,0,0,[]],45,12070,[],[[0],[1]],[0,0]],[[1752,1632,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12071,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1784,1632,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12072,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1816,1632,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12073,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1848,1632,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12074,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1880,1632,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12075,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1912,1632,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12076,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1944,1632,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12077,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1976,1632,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12078,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2008,1632,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12079,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2040,1632,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12080,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2072,1632,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12081,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2104,1632,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12082,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2136,1632,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12083,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2168,1632,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12084,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2200,1632,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12085,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2248,1632,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12086,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2280,1632,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12087,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2312,1632,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12088,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1672,1368,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,12089,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1704,1368,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,12090,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1736,1368,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,12091,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1768,1368,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,12092,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1800,1368,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,12093,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1832,1368,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,12094,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1864,1368,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,12095,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1896,1368,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,12096,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1928,1368,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,12097,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1960,1368,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,12098,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1992,1368,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,12099,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2024,1368,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,12100,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2056,1368,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,12101,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2088,1368,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,12102,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2120,1368,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,12103,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2152,1368,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,12104,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2184,1368,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,12105,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2216,1368,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,12106,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2248,1368,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,12107,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2280,1368,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,12108,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2312,1368,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,12109,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1224,1504,0,32,64,0,0,1,0.5,0.5,0,0,[]],42,12110,[["run"],[0],[1],[1],[0],[0.8],[0.5],[0],[1],[0],[0],[0],[""],[2],[0],[0],[0],[""],[0],[3],[0],[0],[0],[0],[0],[0],[0]],[[330,1500,1500,650,1500,1000,0,0,0,1],[],[0,0],[0,10000,360,1]],[1,"Default",0,1]],[[656,1508,0,40,48,0,0,1,0.5,0.5,0,0,[]],50,12111,[[0],[0],[10],[0],[0],[-2],[1]],[[0],[1,1,1,0,"R 90 ; W 0.5",175,0,0,360,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[952,1128,0,48,104,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,12130,[[0],[0],[10],[0],[0],[-2],[1]],[[0],[1,1,1,0,"F 64 ; B 64",64,0,0,360,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[904,1120,0,96,9,0,0,1,0,0,0,0,[]],51,12055,[],[[0],[1],[1,100,""]],[0,0]],[[1088,1400,0,48,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,12054,[[0],[0],[10],[0],[0],[-2],[1]],[[0],[1,1,1,0,"F 128 ; B 128 ; W 1.2",172,0,0,360,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1008,1232,0,184,32,0,1.570796370506287,1,0,0,0,0,[]],51,5497,[],[[0],[1],[1,100,""]],[0,0]],[[1040,1232,0,184,32,0,1.570796370506287,1,0,0,0,0,[]],51,12056,[],[[0],[1],[1,100,""]],[0,0]],[[1072,1232,0,184,32,0,1.570796370506287,1,0,0,0,0,[]],51,12131,[],[[0],[1],[1,100,""]],[0,0]],[[1056,1400,0,48,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,12133,[[0],[0],[10],[0],[0],[-2],[1]],[[0],[1,1,1,0,"W 0.3 ; F 128; B 128; W 0.9",172,0,0,360,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1024,1400,0,48,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,12134,[[0],[0],[10],[0],[0],[-2],[1]],[[0],[1,1,1,0,"W 0.6 ; F 128; B 128; W 0.6",172,0,0,360,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[992,1400,0,48,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,12135,[[0],[0],[10],[0],[0],[-2],[1]],[[0],[1,1,1,0,"W 0.9 ; F 128; B 128; W 0.3",172,0,0,360,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[960,1400,0,48,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,12136,[[0],[0],[10],[0],[0],[-2],[1]],[[0],[1,1,1,0,"W 1.2 ; F 128; B 128",172,0,0,360,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1408,1488,0,16,48,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,2000,[[0],[0],[10],[0],[0],[-2],[1]],[[0],[1,1,1,0,"F 56 ; B 56",64,0,0,360,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1376,1560,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12137,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1408,1560,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12138,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1440,1560,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12139,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1360,1576,0,96,9,0,0,1,0,0,0,0,[]],51,12140,[],[[0],[1],[1,100,""]],[0,0]],[[1424,1176,0,16,48,0,3.141592741012573,1,0.5,0.5,0,0,[]],50,12141,[[0],[0],[10],[0],[0],[-2],[1]],[[0],[1,1,1,0,"F 56 ; B 56",64,0,0,360,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1544,1120,0,112,48,0,0,1,0.5,0.5,0,0,[]],50,12142,[[0],[0],[10],[0],[0],[-2],[1]],[[0],[1,1,1,0,"F 40 ;W 1; B 40 ; W 1",200,0,0,360,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1584,1296,0,112,48,0,3.141592741012573,1,0.5,0.5,0,0,[]],50,12143,[[0],[0],[10],[0],[0],[-2],[1]],[[0],[1,1,1,0,"F 40 ;W 1; B 40 ; W 1",200,0,0,360,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1560,1496,0,24,48,0,0,1,0.5,0.5,0,0,[]],50,12144,[[0],[0],[10],[0],[0],[-2],[1]],[[0],[1,1,1,0,"F 40 ;W 1; B 40 ; W 1",200,0,0,360,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1560,1512,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,12145,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[1544,1488,0,32,9,0,0,1,0,0,0,0,[]],51,12146,[],[[0],[1],[1,100,""]],[0,0]],[[1632,1512,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,12147,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[1488,1912,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12148,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1520,1912,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12149,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1552,1912,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12150,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1584,1912,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12151,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1616,1912,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12152,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1576,1868,0,16,24,0,3.141592741012573,1,0.5,0.5,0,0,[]],50,12153,[[0],[0],[10],[0],[0],[3],[1]],[[0],[1,0,1,0,"F 180 ; B 180",64,0,0,360,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1584,1872,0,32,8,0,0,1,0.5,0.5,0,0,[]],49,12154,[[3],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[1,"Default",0,1]]],[]],["UI",2,661927461303680,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[240,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3097,[["right"]],[[0,1,0,1,1]],[0,"Default",0,1]],[[80,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3098,[["left"]],[[0,1,0,1,1]],[0,"Default",1,1]],[[560,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3099,[["up"]],[[1,1,1,1,1]],[0,"Default",3,1]],[[400,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3100,[["down"]],[[1,1,1,1,1]],[0,"Default",2,1]]],[]],["End Card",3,361622239429741,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],78,2607,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[12.04449462890625,194,0,615.9109497070313,67,0,0,1,0,0,0,0,[]],79,2608,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Timer for this level",2.5,0,0,0,0,0,-10,0,"",-1,0]],[[17.546875,248,0,604.90625,105,0,0,1,0,0,0,0,[]],80,2610,[[0],[0],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","13:40:40",4,0,63,50,0,0,-10,0,"",-1,0]],[[115.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,2611,[[0],[1],[0],[0],["replay"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Replay",""],[""],[2,2,0,0,0],["",""]],[0,"Replay",0,1]],[[524.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3086,[[0],[1],[0],[0],["next"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Next",""],[""],[2,2,0,0,0],["",""]],[0,"Next",0,1]],[[320.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3087,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > Back","Level Menu"],[""],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[320.75,521.8050537109375,0,384,96,0,0,1,0.5,0.5,0,0,[]],70,3088,[[1],[1],[0],[0],[""],["{\"size\": 22, \"left\": 70, \"right\": 18, \"alignY\": 60}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > DownloadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"DownloadReplay",0,1]]],[]],["Pause",4,399695835667415,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-310,678,0,274,31,0,0,1,0,0,0,0,[]],168,3089,[],[],[".ovo",0,1,"file"]],[[320,320,0,425,250,0,0,1,0.5,0.5,0,0,[]],82,3090,[],[[6,1,"",300,1,1,"",300,"overlay",1,"PauseClose",1,1]],[0,"Default",0,1]],[[214,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3091,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"",""],["PauseClose"],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[426,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3092,[[0],[1],[0],[0],["quit"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > GiveUp",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[115.5,202,0,409,118,0,0,1,0,0,0,0,[]],83,3093,[[1],[1],["pause"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Pause",4,0,57,50,0,0,-10,0,"",-1,0]],[[320.5,88,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3094,[[1],[1],[0],[0],["loadreplay"],["{\"size\": 16, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > LoadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"LoadReplay",0,1]],[[320.5,157,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3095,[[1],[0],[0],[0],["toggledebug"],["{\"size\": 15, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Debug > Toggle",""],[""],[2,2,0,0,0],["",""]],[0,"ToggleDebug",0,1]],[[78,448,0,484,134,0,0,1,0,0,0,0,[]],193,3096,[],[],[0,"Default",0,1]]],[]],["Overlay",5,848088792167089,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[432,4,0,203.0009155273438,64,0,0,1,0,0,0,0,[]],107,5488,[],[[1,0,1,0,1]],[2,2,2,2,0,1,0,0,1]],[[432,4,0,203,64,0,0,1,0,0,0,0,[]],84,3101,[[0],[0],[""],["en-us"],[0],[1],[1],["{\"alignY\": 85, \"alignX\": 45, \"size\": 28}"],[0],[1],[0],[0],[0]],[["",""],[1,0,1,0,1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",2,0,100,50,0,0,-10,0,"",-1,0]],[[88,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3102,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Pause",""],[""],[0,0,0,0,1],["",""]],[0,"Pause",0,1]],[[158,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3103,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Replay","1"],[""],[0,0,0,0,1],["",""]],[0,"Reload",0,1]]],[]],["End Game",6,233721384988387,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],85,3104,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[73,194,0,494,72,0,0,1,0,0,0,0,[]],86,3105,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],["{alignY:50}"],[0],[1],[0],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Your final time",2.5,0,50,50,0,0,-10,0,"",-1,0]],[[320,403,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3106,[[0],[1],[0],[0],[""],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Quit",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[73,243,0,494,85,0,0,1,0,0,0,0,[]],87,3108,[[0],[1],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",3,0,50,50,0,0,-10,0,"",-1,0]],[[73,318,0,494,25,0,0,1,0,0,0,0,[]],86,5480,[[1],[1],["tryagainhardmode"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Try again in hard mode!",1,0,50,50,0,0,-2,0,"",-1,0]]],[]],["Banner",7,574540332427883,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-237,-189,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,3109,[],[["overlay"]],[0,"Default",0,1]]],[]],["AdPlaying",8,608010982073239,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,-203.5,0,250,97,0,0,1,0.5,0.5,0,0,[]],125,390,[],[[6,1,"",300,1,1,"",300,"overlay",1,"",1,1],[]],[0,"Default",0,1]],[[209,-275,0,222,139,0,0,1,0,0,0,0,[]],86,391,[[1],[1],["adplaying"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","An ad is playing right now...",1.2,0,50,50,0,0,-2,0,"",-1,0]],[[-154.5756988525391,-294.3137512207031,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,5508,[],[["overlay"]],[0,"Default",0,1]]],[]]],[],[]],["Level 28",3000,2000,true,"Levels",841411610610648,[["Background",0,978868040236575,true,[255,255,255],false,0,0,1,false,false,1,0,0,[[[279,462,0,60.93439102172852,60.93439102172852,0,0,1,0.5,0.5,0,0,[]],53,6242,[["Deadly contraption II"],[""],[0]],[],[1,"Default",0,1]]],[]],["Layer 0",1,682968452297466,true,[255,255,255],true,1,1,1,false,false,1,0,0,[[[2208,1560,0,64,64,0,0,1,0.5,0.5,0,0,[]],60,1431,[["level28"]],[[1],[400,-200,800,0,0,0],[0,0,0,1,1]],[0,"Default",0,1]],[[0,600,0,800,8,0,0,1,0,0,0,0,[]],51,2033,[],[[0],[1],[1,100,""]],[0,0]],[[1048,600,0,496,8,0,0,1,0,0,0,0,[]],51,2034,[],[[0],[1],[1,100,""]],[0,0]],[[0,400,0,1088,8,0,0,1,0,0,0,0,[]],51,2035,[],[[0],[1],[1,100,""]],[0,0]],[[1352,400,0,208,8,0,0,1,0,0,0,0,[]],51,2036,[],[[0],[1],[1,100,""]],[0,0]],[[864,600,0,184,8,0,0,1,0,0,0,0,[]],51,2037,[],[[0],[1],[1,100,""]],[0,0]],[[816,584,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2038,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[848,584,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2039,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[345,400,0,208,9,0,1.570796370506287,1,0,0,0,0,[]],51,2040,[],[[0],[1],[1,100,""]],[0,0]],[[361,424,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,2041,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[361,456,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,2042,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[361,488,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,2043,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[361,520,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,2044,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[361,552,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,2045,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[361,584,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,2046,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[800,600,0,64,8,0,0,1,0,0,0,0,[]],51,2047,[],[[0],[1],[1,100,""]],[0,0]],[[832,600,0,40,40,0,-1.570796489715576,1,0.5,0.5,0,0,[]],50,2048,[[-1],[0],[0],[0],[0],[1],[0]],[[0],[1,0,1,1,"F 120",1000,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[345,504,0,40,168,0,0,1,0.5,0.5,0,0,[]],50,2049,[[-1],[0],[0],[0],[0],[0],[0]],[[0],[1,1,1,1,"F 5000",500,100,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[832,432,0,32,32,0,0,1,0.5,0.5,0,0,[]],49,2050,[[1],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[0,"Default",0,1]],[[472,408,0,192,9,0,1.570796370506287,1,0,0,0,0,[]],52,2051,[],[[0],[0]],[0,0]],[[1240,424,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2052,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1272,424,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2053,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1304,424,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2054,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1336,424,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2055,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1224,400,0,128,8,0,0,1,0,0,0,0,[]],51,2056,[],[[0],[1],[1,100,""]],[0,0]],[[1288,424,0,40,104,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,2057,[[-1],[0],[0],[0],[0],[2],[0]],[[0],[1,0,1,1,"F 120",1000,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1288,512,0,64,64,0,0,1,0.5,0.5,0,0,[]],49,2058,[[2],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[0,"Default",0,1]],[[1912,400,0,160,80,0,0,1,0,0,0,0,[]],51,2060,[],[[0],[1],[1,100,""]],[0,0]],[[1560,400,0,353.4765625,8,0,0,1,0,0,0,0,[]],51,2061,[],[[0],[1],[1,100,""]],[0,0]],[[2056,496,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2062,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2024,496,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2063,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1992,496,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2064,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1960,496,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2065,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1928,496,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2066,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2040,528,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2067,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2008,528,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2068,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1976,528,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2069,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1944,528,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2070,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1912,528,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2071,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2072,528,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2072,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1896,544,0,192,568,0,0,1,0,0,0,0,[]],51,2073,[],[[0],[1],[1,100,""]],[0,0]],[[1864,512,0,32,32,0,0,1,0.5,0.5,0,0,[]],49,2074,[[2],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[0,"Default",0,1]],[[1536,1192,0,360,8,0,0,1,0,0,0,0,[]],51,2075,[],[[0],[1],[1,100,""]],[0,0]],[[1992,820,0,608,184,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,2076,[[-1],[0],[0],[0],[0],[20],[0]],[[0],[1,0,1,1,"F 60",1000,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1992,480,0,40,184,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,2077,[[-1],[0],[0],[0],[0],[2],[0]],[[0],[1,0,1,1,"B 60",1000,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1520,584,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2078,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1552,584,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2079,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1584,584,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2080,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1616,584,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2081,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1520,424,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2082,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1552,424,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2083,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1584,424,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2084,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1616,424,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2085,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2088,600,0,392,8,0,0,1,0,0,0,0,[]],51,2086,[],[[0],[1],[1,100,""]],[0,0]],[[2072,400,0,408,8,0,0,1,0,0,0,0,[]],51,2087,[],[[0],[1],[1,100,""]],[0,0]],[[2496,584,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2088,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[2528,584,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2090,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[2560,584,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2091,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[2480,400,0,184,8,0,0,1,0,0,0,0,[]],51,2092,[],[[0],[1],[1,100,""]],[0,0]],[[2440,528,0,32,32,0,0,1,0.5,0.5,0,0,[]],49,2093,[[3],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[0,"Default",0,1]],[[2528,600,0,40,72,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,2094,[[-1],[0],[0],[0],[0],[3],[0]],[[0],[1,0,1,1,"F 666",1000,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[2648,424,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,2095,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2648,456,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,2096,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2648,488,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,2097,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2648,520,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,2098,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2648,552,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,2099,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2648,584,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,2100,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2664,600,0,0,1664,0,0,1,0,0,0,0,[]],51,2101,[],[[0],[1],[1,100,""]],[0,0]],[[2664,400,0,8,200,0,0,1,0,0,0,0,[]],51,2102,[],[[0],[1],[1,100,""]],[0,0]],[[1896,1272,0,680,32,0,0,1,0,0,0,0,[]],51,2103,[],[[0],[1],[1,100,""]],[0,0]],[[1912,1128,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2104,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1944,1128,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2105,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1976,1128,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2106,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2008,1128,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2107,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2040,1128,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2108,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2072,1128,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2109,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1712,1384,0,8,344,0,0,1,0,0,0,0,[]],51,2111,[],[[0],[1],[1,100,""]],[0,0]],[[2000,1224,0,32,32,0,0,1,0.5,0.5,0,0,[]],49,2112,[[20],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[0,"Default",0,1]],[[1824,1368,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2114,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1792,1368,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2115,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1760,1368,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2116,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1728,1368,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2117,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1832,1384,0,144,8,0,0,1,0,0,0,0,[]],45,2118,[],[[0],[1]],[0,0]],[[1896,1800,0,680,8,0,0,1,0,0,0,0,[]],51,2110,[],[[0],[1],[1,100,""]],[0,0]],[[1840,1800,0,56,8,0,0,1,0,0,0,0,[]],51,2120,[],[[0],[1],[1,100,""]],[0,0]],[[1872,1536,0,32,32,0,0,1,0.5,0.5,0,0,[]],49,2121,[[5],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[0,"Default",0,1]],[[1712,1728,0,8,72,0,0,1,0,0,0,0,[]],51,2122,[],[[0],[1],[1,100,""]],[0,0]],[[1736,1744,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,2123,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1736,1784,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,2124,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1536,1800,0,304,8,0,0,1,0,0,0,0,[]],51,2125,[],[[0],[1],[1,100,""]],[0,0]],[[1716,1760,0,48,40,0,0,1,0.5,0.5,0,0,[]],50,2126,[[-1],[0],[0],[0],[0],[5],[0]],[[0],[1,0,1,1,"F 152",100,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[2368,1752,0,192,24,0,0,1,0,0,0,0,[]],46,2127,[[1],[1],[""],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Wrong way :)",1,0,50,0,0,0,0,0,"",-1,0]],[[1600,1376,0,24,40,0,0,1,0.5,0.5,0,0,[]],50,2128,[[-1],[0],[0],[0],[0],[5],[0]],[[0],[1,0,1,1,"F 184",75,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1624,1704,0,97,199,0,0,1,0.5257731676101685,0.4974874258041382,0,0,[]],44,2129,[],[[0]],[0,"Default",0,1]],[[2496,824,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,2130,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2496,856,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,2131,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[2560,960,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,2133,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2560,640,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,2134,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[2560,672,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,2135,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2480,600,0,96,8,0,0,1,0,0,0,0,[]],51,2089,[],[[0],[1],[1,100,""]],[0,0]],[[556,425,0,288,117,0,0,1,0,0,0,0,[[]]],61,5619,[],[[1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>","1",7,0,65,0,0,0,0,0,"",-1,0]],[[1864,512,0,32,32,0,0,1,0.5,0.5,0,0,[]],49,1046,[[20],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[0,"Default",0,1]],[[1088,400,0,136,8,0,0,1,0,0,0,0,[]],51,653,[],[[0],[1],[1,100,""]],[0,0]],[[1544,600,0,352,8,0,0,1,0,0,0,0,[]],51,654,[],[[0],[1],[1,100,""]],[0,0]],[[1896,608,0,584,8,0,1.570796370506287,1,0,0,0,0,[]],51,656,[],[[0],[1],[1,100,""]],[0,0]],[[1544,1200,0,600,8,0,1.570796370506287,1,0,0,0,0,[]],51,657,[],[[0],[1],[1,100,""]],[0,0]],[[2576,600,0,8,1208,0,0,1,0,0,0,0,[]],51,658,[],[[0],[1],[1,100,""]],[0,0]],[[2576,600,0,96,8,0,0,1,0,0,0,0,[]],51,659,[],[[0],[1],[1,100,""]],[0,0]],[[2472,608,0,8,504,0,0,1,0,0,0,0,[]],51,660,[],[[0],[1],[1,100,""]],[0,0]],[[2088,1104,0,392,8,0,0,1,0,0,0,0,[]],51,661,[],[[0],[1],[1,100,""]],[0,0]],[[1896,1384,0,8,336,0,0,1,0,0,0,0,[]],51,663,[],[[0],[1],[1,100,""]],[0,0]],[[1720,1384,0,120,8,0,0,1,0,0,0,0,[]],51,664,[],[[0],[1],[1,100,""]],[0,0]],[[1544,1384,0,168,8,0,0,1,0,0,0,0,[]],51,665,[],[[0],[1],[1,100,""]],[0,0]],[[1832,1392,0,8,336,0,0,1,0,0,0,0,[]],51,666,[],[[0],[1],[1,100,""]],[0,0]],[[1712,1720,0,120,8,0,0,1,0,0,0,0,[]],51,667,[],[[0],[1],[1,100,""]],[0,0]],[[1696,1744,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,668,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1696,1784,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,669,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2488,1280,0,88,448,0,0,1,0,0,0,0,[]],51,670,[],[[0],[1],[1,100,""]],[0,0]],[[1896,1304,0,8,80,0,0,1,0,0,0,0,[]],51,671,[],[[0],[1],[1,100,""]],[0,0]],[[1968,1280,0,520,240,0,0,1,0,0,0,0,[]],51,673,[],[[0],[1],[1,100,""]],[0,0]],[[1896,1600,0,520,128,0,0,1,0,0,0,0,[]],51,662,[],[[0],[1],[1,100,""]],[0,0]],[[1893,1328,0,24,8,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,675,[[-1],[0],[0],[0],[0],[6],[0]],[[0],[1,0,1,1,"F 80",80,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1936,1344,0,48,64,0,0,1,0.5,0.5,0,0,[]],49,676,[[6],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[1,"Default",0,1]],[[2416,1712,0,72,8,0,0,1,0,0,0,0,[]],45,677,[],[[0],[1]],[0,0]],[[280.0399169921875,1575.152099609375,0,680,424,0,0,1,-2.380000114440918,0.6399999856948853,0,0,[]],159,674,[],[[0]],[0,"Default",0,1]],[[2272,584,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,678,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[2152,1256,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,679,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[2184,1256,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,680,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[568,515,0,32,64,0,0,1,0.5,0.5,0,0,[]],42,2032,[["run"],[0],[1],[1],[0],[0.8],[0.5],[0],[1],[0],[0],[0],[""],[2],[0],[0],[0],[""],[0],[3],[0],[0],[0],[0],[0],[0],[0]],[[330,1500,1500,650,1500,1000,0,0,0,1],[],[0,0],[0,10000,360,1]],[1,"Default",0,1]]],[]],["UI",2,440995752794622,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[240,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3097,[["right"]],[[0,1,0,1,1]],[0,"Default",0,1]],[[80,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3098,[["left"]],[[0,1,0,1,1]],[0,"Default",1,1]],[[560,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3099,[["up"]],[[1,1,1,1,1]],[0,"Default",3,1]],[[400,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3100,[["down"]],[[1,1,1,1,1]],[0,"Default",2,1]]],[]],["End Card",3,663327299939544,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],78,2607,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[12.04449462890625,194,0,615.9109497070313,67,0,0,1,0,0,0,0,[]],79,2608,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Timer for this level",2.5,0,0,0,0,0,-10,0,"",-1,0]],[[17.546875,248,0,604.90625,105,0,0,1,0,0,0,0,[]],80,2610,[[0],[0],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","13:40:40",4,0,63,50,0,0,-10,0,"",-1,0]],[[115.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,2611,[[0],[1],[0],[0],["replay"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Replay",""],[""],[2,2,0,0,0],["",""]],[0,"Replay",0,1]],[[524.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3086,[[0],[1],[0],[0],["next"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Next",""],[""],[2,2,0,0,0],["",""]],[0,"Next",0,1]],[[320.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3087,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > Back","Level Menu"],[""],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[320.75,521.8050537109375,0,384,96,0,0,1,0.5,0.5,0,0,[]],70,3088,[[1],[1],[0],[0],[""],["{\"size\": 22, \"left\": 70, \"right\": 18, \"alignY\": 60}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > DownloadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"DownloadReplay",0,1]]],[]],["Pause",4,269708830122422,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-310,678,0,274,31,0,0,1,0,0,0,0,[]],168,3089,[],[],[".ovo",0,1,"file"]],[[320,320,0,425,250,0,0,1,0.5,0.5,0,0,[]],82,3090,[],[[6,1,"",300,1,1,"",300,"overlay",1,"PauseClose",1,1]],[0,"Default",0,1]],[[214,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3091,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"",""],["PauseClose"],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[426,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3092,[[0],[1],[0],[0],["quit"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > GiveUp",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[115.5,202,0,409,118,0,0,1,0,0,0,0,[]],83,3093,[[1],[1],["pause"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Pause",4,0,57,50,0,0,-10,0,"",-1,0]],[[320.5,88,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3094,[[1],[1],[0],[0],["loadreplay"],["{\"size\": 16, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > LoadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"LoadReplay",0,1]],[[320.5,157,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3095,[[1],[0],[0],[0],["toggledebug"],["{\"size\": 15, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Debug > Toggle",""],[""],[2,2,0,0,0],["",""]],[0,"ToggleDebug",0,1]],[[78,448,0,484,134,0,0,1,0,0,0,0,[]],193,3096,[],[],[0,"Default",0,1]]],[]],["Overlay",5,439433645225893,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[432,4,0,203.0009155273438,64,0,0,1,0,0,0,0,[]],107,5488,[],[[1,0,1,0,1]],[2,2,2,2,0,1,0,0,1]],[[432,4,0,203,64,0,0,1,0,0,0,0,[]],84,3101,[[0],[0],[""],["en-us"],[0],[1],[1],["{\"alignY\": 85, \"alignX\": 45, \"size\": 28}"],[0],[1],[0],[0],[0]],[["",""],[1,0,1,0,1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",2,0,100,50,0,0,-10,0,"",-1,0]],[[88,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3102,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Pause",""],[""],[0,0,0,0,1],["",""]],[0,"Pause",0,1]],[[158,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3103,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Replay","1"],[""],[0,0,0,0,1],["",""]],[0,"Reload",0,1]]],[]],["End Game",6,741793418617275,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],85,3104,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[73,194,0,494,72,0,0,1,0,0,0,0,[]],86,3105,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],["{alignY:50}"],[0],[1],[0],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Your final time",2.5,0,50,50,0,0,-10,0,"",-1,0]],[[320,403,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3106,[[0],[1],[0],[0],[""],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Quit",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[73,243,0,494,85,0,0,1,0,0,0,0,[]],87,3108,[[0],[1],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",3,0,50,50,0,0,-10,0,"",-1,0]],[[73,318,0,494,25,0,0,1,0,0,0,0,[]],86,5480,[[1],[1],["tryagainhardmode"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Try again in hard mode!",1,0,50,50,0,0,-2,0,"",-1,0]]],[]],["Banner",7,938394462580590,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-237,-189,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,3109,[],[["overlay"]],[0,"Default",0,1]]],[]],["AdPlaying",8,592961350509848,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,-203.5,0,250,97,0,0,1,0.5,0.5,0,0,[]],125,390,[],[[6,1,"",300,1,1,"",300,"overlay",1,"",1,1],[]],[0,"Default",0,1]],[[209,-275,0,222,139,0,0,1,0,0,0,0,[]],86,391,[[1],[1],["adplaying"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","An ad is playing right now...",1.2,0,50,50,0,0,-2,0,"",-1,0]],[[-154.5756988525391,-294.3137512207031,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,5508,[],[["overlay"]],[0,"Default",0,1]]],[]]],[],[]],["Level 29",3000,800,true,"Levels",364522721222959,[["Background",0,142738837285349,true,[255,255,255],false,0,0,1,false,false,1,0,0,[[[-85,117,0,60.93439102172852,60.93439102172852,0,0,1,0.5,0.5,0,0,[]],53,6243,[["Friendly little platform I"],[""],[0]],[],[1,"Default",0,1]]],[]],["Layer 0",1,160192140145606,true,[255,255,255],true,1,1,1,false,false,1,0,0,[[[280,392,0,32,64,0,0,1,0.5,0.5,0,0,[]],42,1344,[["run"],[0],[1],[1],[0],[0.8],[0.5],[0],[1],[0],[0],[0],[""],[2],[0],[0],[0],[""],[0],[3],[0],[0],[0],[0],[0],[0],[0]],[[330,1500,1500,650,1500,1000,0,0,0,1],[],[0,0],[0,10000,360,1]],[1,"Default",0,1]],[[240,488,0,288,9,0,0,1,0,0,0,0,[]],51,1366,[],[[0],[1],[1,100,""]],[0,0]],[[504,456,0,32,32,0,0,1,0.5,0.5,0,0,[]],49,1437,[[1],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[0,"Default",0,1]],[[616,408,0,288,9,0,0,1,0,0,0,0,[]],51,1439,[],[[0],[1],[1,100,""]],[0,0]],[[632,432,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1440,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[664,432,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1441,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[696,432,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1442,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[728,432,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1443,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[760,432,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1444,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[792,432,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1445,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[824,432,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1446,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[856,432,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1447,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[888,432,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1448,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[632,392,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1449,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[664,392,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1450,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[696,392,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1451,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[728,392,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1452,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[760,392,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1453,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[792,392,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1454,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[824,392,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1455,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[856,392,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1456,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[888,392,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1457,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[864,520,0,288,9,0,0,1,0,0,0,0,[]],51,1458,[],[[0],[1],[1,100,""]],[0,0]],[[880,560,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1459,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[912,560,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1460,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[944,560,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1461,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[976,560,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1462,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1008,560,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1463,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1040,560,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1464,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1072,560,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1465,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1104,560,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1466,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1136,560,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1467,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[864,536,0,288,9,0,0,1,0,0,0,0,[]],51,1477,[],[[0],[1],[1,100,""]],[0,0]],[[870.3604736328125,526.3713989257813,5.99999978589949e-008,15.16643905639648,9,0,2.356194496154785,1,0,0,0,0,[]],51,1468,[],[[0],[1],[1,100,""]],[0,0]],[[1208,464,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1470,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1192,440,0,32,9,0,0,1,0,0,0,0,[]],51,1473,[],[[0],[1],[1,100,""]],[0,0]],[[1352,616,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1474,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1384,616,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1475,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1416,616,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1476,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1336,632,0,96,9,0,0,1,0,0,0,0,[]],51,1478,[],[[0],[1],[1,100,""]],[0,0]],[[1536,400,0,128,9,0,1.570796370506287,1,0,0,0,0,[]],51,1479,[],[[0],[1],[1,100,""]],[0,0]],[[1536,536,0,120,9,0,1.570796370506287,1,0,0,0,0,[]],51,1480,[],[[0],[1],[1,100,""]],[0,0]],[[1448,616,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1481,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1480,616,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1482,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1512,616,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1483,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1432,632,0,96,9,0,0,1,0,0,0,0,[]],51,1484,[],[[0],[1],[1,100,""]],[0,0]],[[1528,520,0,384,9,0,0,1,0,0,0,0,[]],51,1438,[],[[0],[1],[1,100,""]],[0,0]],[[1360,536,0,552,9,0,0,1,0,0,0,0,[]],51,1471,[],[[0],[1],[1,100,""]],[0,0]],[[1616,504,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1472,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[1704,504,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1486,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1736,504,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1487,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1768,504,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1488,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1912,360,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1489,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[1896,336,0,32,9,0,0,1,0,0,0,0,[]],51,1490,[],[[0],[1],[1,100,""]],[0,0]],[[1944,360,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1491,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[1928,336,0,32,9,0,0,1,0,0,0,0,[]],51,1492,[],[[0],[1],[1,100,""]],[0,0]],[[1976,360,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1493,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[1960,336,0,56,9,0,0,1,0,0,0,0,[]],51,1494,[],[[0],[1],[1,100,""]],[0,0]],[[1800,504,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1495,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1832,504,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1496,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1912,520,0,71,8,0,0,1,0,0,0,0,[]],45,1497,[],[[0],[1]],[0,0]],[[1912,536,0,71,8,0,0,1,0,0,0,0,[]],45,1498,[],[[0],[1]],[0,0]],[[1976,536,0,184,9,0,0,1,0,0,0,0,[]],51,1499,[],[[0],[1],[1,100,""]],[0,0]],[[1976,520,0,168,9,0,0,1,0,0,0,0,[]],51,1500,[],[[0],[1],[1,100,""]],[0,0]],[[2016,336,0,184,9,0,1.570796370506287,1,0,0,0,0,[]],51,1501,[],[[0],[1],[1,100,""]],[0,0]],[[2055,672,0,232,8,0,0,1,0,0,0,0,[]],51,1502,[],[[0],[1],[1,100,""]],[0,0]],[[1912,544,0,136,9,0,1.570796370506287,1,0,0,0,0,[]],51,1503,[],[[0],[1],[1,100,""]],[0,0]],[[2368,536,0,71,8,0,0,1,0,0,0,0,[]],45,1504,[],[[0],[1]],[0,0]],[[2448,536,0,144,9,0,1.570796370506287,1,0,0,0,0,[]],51,1505,[],[[0],[1],[1,100,""]],[0,0]],[[2408,656,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,1506,[[0.5],[0]],[[0]],[0,"Default",0,1]],[[2384,248,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1507,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2368,224,0,32,9,0,0,1,0,0,0,0,[]],51,1508,[],[[0],[1],[1,100,""]],[0,0]],[[2440,248,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1509,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2400,224,0,32,9,0,0,1,0,0,0,0,[]],51,1510,[],[[0],[1],[1,100,""]],[0,0]],[[2432,224,0,32,9,0,0,1,0,0,0,0,[]],51,1512,[],[[0],[1],[1,100,""]],[0,0]],[[2368,48,0,480,9,0,1.570796370506287,1,0,0,0,0,[]],51,1513,[],[[0],[1],[1,100,""]],[0,0]],[[2032,504,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1515,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2064,504,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1516,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2096,504,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1517,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2280,504,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1518,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2312,504,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1519,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2344,504,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1520,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2248,504,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1521,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2128,504,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1522,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2008,560,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1523,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2040,560,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1524,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2304,561,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1525,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2336,561,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1526,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2176,656,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1527,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2208,656,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1528,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[304,528,0,24,9,0,0,1,0,0,0,0,[]],51,1529,[],[[0],[1],[1,100,""]],[0,0]],[[328,528,0,72,8,0,0,1,0,0,0,0,[]],45,1485,[],[[1],[1]],[0,0]],[[400,528,0,24,9,0,0,1,0,0,0,0,[]],51,1530,[],[[0],[1],[1,100,""]],[0,0]],[[2792,536,0,136,9,0,0,1,0,0,0,0,[]],51,1531,[],[[0],[1],[1,100,""]],[0,0]],[[2536,400,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1533,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[2520,376,0,32,9,0,0,1,0,0,0,0,[]],51,1534,[],[[0],[1],[1,100,""]],[0,0]],[[2568,400,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1535,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[2552,376,0,32,9,0,0,1,0,0,0,0,[]],51,1536,[],[[0],[1],[1,100,""]],[0,0]],[[2600,400,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1537,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[2584,376,0,32,9,0,0,1,0,0,0,0,[]],51,1538,[],[[0],[1],[1,100,""]],[0,0]],[[2632,400,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1539,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[2616,376,0,32,9,0,0,1,0,0,0,0,[]],51,1540,[],[[0],[1],[1,100,""]],[0,0]],[[2664,400,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1541,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[2648,376,0,32,9,0,0,1,0,0,0,0,[]],51,1542,[],[[0],[1],[1,100,""]],[0,0]],[[2696,400,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1543,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[2680,376,0,32,9,0,0,1,0,0,0,0,[]],51,1544,[],[[0],[1],[1,100,""]],[0,0]],[[2728,400,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1545,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[2712,376,0,32,9,0,0,1,0,0,0,0,[]],51,1546,[],[[0],[1],[1,100,""]],[0,0]],[[2760,400,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1547,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[2744,376,0,32,9,0,0,1,0,0,0,0,[]],51,1548,[],[[0],[1],[1,100,""]],[0,0]],[[2792,400,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1549,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[2776,376,0,32,9,0,0,1,0,0,0,0,[]],51,1550,[],[[0],[1],[1,100,""]],[0,0]],[[2472,400,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1551,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[2456,376,0,32,9,0,0,1,0,0,0,0,[]],51,1552,[],[[0],[1],[1,100,""]],[0,0]],[[2504,400,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1553,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[2488,376,0,32,9,0,0,1,0,0,0,0,[]],51,1554,[],[[0],[1],[1,100,""]],[0,0]],[[2536,400,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1555,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[2520,376,0,32,9,0,0,1,0,0,0,0,[]],51,1556,[],[[0],[1],[1,100,""]],[0,0]],[[368,536,0,136,50,0,0,1,0.5,0.5,0,0,[]],50,1469,[[-1],[0],[0],[0],[0],[1],[0]],[[0],[1,0,0,1,"F 2300 ;R 450;F 500",120,0,0,720,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1240,464,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1558,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1224,440,0,32,9,0,0,1,0,0,0,0,[]],51,1559,[],[[0],[1],[1,100,""]],[0,0]],[[1272,464,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1560,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1256,440,0,32,9,0,0,1,0,0,0,0,[]],51,1561,[],[[0],[1],[1,100,""]],[0,0]],[[1256,616,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1562,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1288,616,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1563,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1320,616,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1564,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1240,632,0,96,9,0,0,1,0,0,0,0,[]],51,1565,[],[[0],[1],[1,100,""]],[0,0]],[[1160,616,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1566,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1192,616,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1567,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1224,616,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1568,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1144,632,0,96,9,0,0,1,0,0,0,0,[]],51,1569,[],[[0],[1],[1,100,""]],[0,0]],[[2232,336,0,48,9,0,1.570796370506287,1,0,0,0,0,[]],51,1570,[],[[0],[1],[1,100,""]],[0,0]],[[2528,624,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1571,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2512,640,0,32,9,0,0,1,0,0,0,0,[]],51,1572,[],[[0],[1],[1,100,""]],[0,0]],[[2560,624,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1573,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2544,640,0,32,9,0,0,1,0,0,0,0,[]],51,1574,[],[[0],[1],[1,100,""]],[0,0]],[[2592,624,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1575,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2576,640,0,32,9,0,0,1,0,0,0,0,[]],51,1576,[],[[0],[1],[1,100,""]],[0,0]],[[2624,624,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1577,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2608,640,0,32,9,0,0,1,0,0,0,0,[]],51,1578,[],[[0],[1],[1,100,""]],[0,0]],[[2656,624,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1579,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2640,640,0,32,9,0,0,1,0,0,0,0,[]],51,1580,[],[[0],[1],[1,100,""]],[0,0]],[[2688,624,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1581,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2672,640,0,32,9,0,0,1,0,0,0,0,[]],51,1582,[],[[0],[1],[1,100,""]],[0,0]],[[2720,624,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1583,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2704,640,0,32,9,0,0,1,0,0,0,0,[]],51,1584,[],[[0],[1],[1,100,""]],[0,0]],[[2752,624,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1585,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2736,640,0,32,9,0,0,1,0,0,0,0,[]],51,1586,[],[[0],[1],[1,100,""]],[0,0]],[[2784,624,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1587,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2768,640,0,32,9,0,0,1,0,0,0,0,[]],51,1588,[],[[0],[1],[1,100,""]],[0,0]],[[2464,624,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1589,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2448,640,0,32,9,0,0,1,0,0,0,0,[]],51,1590,[],[[0],[1],[1,100,""]],[0,0]],[[2496,624,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1591,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2480,640,0,32,9,0,0,1,0,0,0,0,[]],51,1592,[],[[0],[1],[1,100,""]],[0,0]],[[2528,624,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1593,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2512,640,0,32,9,0,0,1,0,0,0,0,[]],51,1594,[],[[0],[1],[1,100,""]],[0,0]],[[1952,640,0,32,32,0,0,1,0.5,0.5,0,0,[]],49,1532,[[2],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[0,"Default",0,1]],[[2024,608,0,120,72,0,-1.570796489715576,1,0.5,0.5,0,0,[]],50,1557,[[-1],[0],[0],[0],[0],[2],[0]],[[0],[1,0,1,1,"B 140",75,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1992,576,0,64,9,0,0,1,0,0,0,0,[]],51,1595,[],[[0],[1],[1,100,""]],[0,0]],[[2055,576,0,104,64,0,1.570796370506287,1,0,0,0,0,[]],51,1596,[],[[0],[1],[1,100,""]],[0,0]],[[1904,672,0,88,8,0,0,1,0,0,0,0,[]],51,1597,[],[[0],[1],[1,100,""]],[0,0]],[[2232,520,0,136,9,0,0,1,0,0,0,0,[]],51,1598,[],[[0],[1],[1,100,""]],[0,0]],[[2224,536,0,152,9,0,0,1,0,0,0,0,[]],51,1599,[],[[0],[1],[1,100,""]],[0,0]],[[2160,536,0,64,104,0,0,1,0,0,0,0,[]],51,1600,[],[[0],[1],[1,100,""]],[0,0]],[[2192,640,0,24,48,0,-1.570796489715576,1,0.5,0.5,0,0,[]],50,1601,[[-1],[0],[0],[0],[0],[3],[0]],[[0],[1,0,1,1,"F 160",75,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[2112,640,0,32,32,0,0,1,0.5,0.5,0,0,[]],49,1602,[[3],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[0,"Default",0,1]],[[2351,672,0,96,8,0,0,1,0,0,0,0,[]],51,1603,[],[[0],[1],[1,100,""]],[0,0]],[[2287,576,0,64,104,0,0,1,0,0,0,0,[]],51,1604,[],[[0],[1],[1,100,""]],[0,0]],[[2320,576,0,24,48,0,-1.570796489715576,1,0.5,0.5,0,0,[]],50,1605,[[-1],[0],[0],[0],[0],[4],[0]],[[0],[1,0,1,1,"B 140",75,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[2256,632,0,32,32,0,0,1,0.5,0.5,0,0,[]],49,1606,[[4],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[0,"Default",0,1]],[[2928,440,0,97,199,0,0,1,0.5257731676101685,0.4974874258041382,0,0,[]],44,1607,[],[[0]],[0,"Default",0,1]],[[2464,224,0,160,9,0,1.570796370506287,1,0,0,0,0,[]],51,1638,[],[[0],[1],[1,100,""]],[0,0]],[[2191,474,0,64,64,0,0,1,0.5,0.5,0,0,[]],60,2113,[["level29"]],[[1],[400,-200,800,0,0,0],[0,0,0,1,1]],[0,"Default",0,1]],[[-0.560882568359375,331.464111328125,0,288,117,0,0,1,0,0,0,0,[[]]],61,5620,[],[[1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>","1",7,0,50,0,0,0,0,0,"",-1,0]]],[]],["UI",2,169203893941237,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[240,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3097,[["right"]],[[0,1,0,1,1]],[0,"Default",0,1]],[[80,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3098,[["left"]],[[0,1,0,1,1]],[0,"Default",1,1]],[[560,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3099,[["up"]],[[1,1,1,1,1]],[0,"Default",3,1]],[[400,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3100,[["down"]],[[1,1,1,1,1]],[0,"Default",2,1]]],[]],["End Card",3,381792072558143,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],78,2607,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[12.04449462890625,194,0,615.9109497070313,67,0,0,1,0,0,0,0,[]],79,2608,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Timer for this level",2.5,0,0,0,0,0,-10,0,"",-1,0]],[[17.546875,248,0,604.90625,105,0,0,1,0,0,0,0,[]],80,2610,[[0],[0],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","13:40:40",4,0,63,50,0,0,-10,0,"",-1,0]],[[115.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,2611,[[0],[1],[0],[0],["replay"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Replay",""],[""],[2,2,0,0,0],["",""]],[0,"Replay",0,1]],[[524.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3086,[[0],[1],[0],[0],["next"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Next",""],[""],[2,2,0,0,0],["",""]],[0,"Next",0,1]],[[320.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3087,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > Back","Level Menu"],[""],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[320.75,521.8050537109375,0,384,96,0,0,1,0.5,0.5,0,0,[]],70,3088,[[1],[1],[0],[0],[""],["{\"size\": 22, \"left\": 70, \"right\": 18, \"alignY\": 60}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > DownloadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"DownloadReplay",0,1]]],[]],["Pause",4,497203782483591,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-310,678,0,274,31,0,0,1,0,0,0,0,[]],168,3089,[],[],[".ovo",0,1,"file"]],[[320,320,0,425,250,0,0,1,0.5,0.5,0,0,[]],82,3090,[],[[6,1,"",300,1,1,"",300,"overlay",1,"PauseClose",1,1]],[0,"Default",0,1]],[[214,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3091,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"",""],["PauseClose"],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[426,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3092,[[0],[1],[0],[0],["quit"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > GiveUp",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[115.5,202,0,409,118,0,0,1,0,0,0,0,[]],83,3093,[[1],[1],["pause"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Pause",4,0,57,50,0,0,-10,0,"",-1,0]],[[320.5,88,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3094,[[1],[1],[0],[0],["loadreplay"],["{\"size\": 16, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > LoadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"LoadReplay",0,1]],[[320.5,157,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3095,[[1],[0],[0],[0],["toggledebug"],["{\"size\": 15, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Debug > Toggle",""],[""],[2,2,0,0,0],["",""]],[0,"ToggleDebug",0,1]],[[78,448,0,484,134,0,0,1,0,0,0,0,[]],193,3096,[],[],[0,"Default",0,1]]],[]],["Overlay",5,539911886130073,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[432,4,0,203.0009155273438,64,0,0,1,0,0,0,0,[]],107,5488,[],[[1,0,1,0,1]],[2,2,2,2,0,1,0,0,1]],[[432,4,0,203,64,0,0,1,0,0,0,0,[]],84,3101,[[0],[0],[""],["en-us"],[0],[1],[1],["{\"alignY\": 85, \"alignX\": 45, \"size\": 28}"],[0],[1],[0],[0],[0]],[["",""],[1,0,1,0,1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",2,0,100,50,0,0,-10,0,"",-1,0]],[[88,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3102,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Pause",""],[""],[0,0,0,0,1],["",""]],[0,"Pause",0,1]],[[158,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3103,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Replay","1"],[""],[0,0,0,0,1],["",""]],[0,"Reload",0,1]]],[]],["End Game",6,376742840807704,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],85,3104,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[73,194,0,494,72,0,0,1,0,0,0,0,[]],86,3105,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],["{alignY:50}"],[0],[1],[0],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Your final time",2.5,0,50,50,0,0,-10,0,"",-1,0]],[[320,403,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3106,[[0],[1],[0],[0],[""],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Quit",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[73,243,0,494,85,0,0,1,0,0,0,0,[]],87,3108,[[0],[1],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",3,0,50,50,0,0,-10,0,"",-1,0]],[[73,318,0,494,25,0,0,1,0,0,0,0,[]],86,5480,[[1],[1],["tryagainhardmode"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Try again in hard mode!",1,0,50,50,0,0,-2,0,"",-1,0]]],[]],["Banner",7,515218580043568,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-237,-189,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,3109,[],[["overlay"]],[0,"Default",0,1]]],[]],["AdPlaying",8,976388823569698,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,-203.5,0,250,97,0,0,1,0.5,0.5,0,0,[]],125,390,[],[[6,1,"",300,1,1,"",300,"overlay",1,"",1,1],[]],[0,"Default",0,1]],[[209,-275,0,222,139,0,0,1,0,0,0,0,[]],86,391,[[1],[1],["adplaying"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","An ad is playing right now...",1.2,0,50,50,0,0,-2,0,"",-1,0]],[[-154.5756988525391,-294.3137512207031,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,5508,[],[["overlay"]],[0,"Default",0,1]]],[]]],[],[]],["Level 30",4000,4000,true,"Levels",981970582276178,[["Background",0,738571028024793,true,[255,255,255],false,0,0,1,false,false,1,0,0,[[[192,-16,0,60.93439102172852,60.93439102172852,0,0,1,0.5,0.5,0,0,[]],53,6244,[["Friendly little platform II"],[""],[0]],[],[1,"Default",0,1]]],[]],["Layer 0",1,287637529790059,true,[255,255,255],true,1,1,1,false,false,1,0,0,[[[384,176,0,32,64,0,0,1,0.5,0.5,0,0,[]],42,2252,[["run"],[0],[1],[1],[0],[0.8],[0.5],[0],[1],[0],[0],[0],[""],[2],[0],[0],[0],[""],[0],[3],[0],[0],[0],[0],[0],[0],[0]],[[330,1500,1500,650,1500,1000,0,0,0,1],[],[0,0],[0,10000,360,1]],[1,"Default",0,1]],[[288,40,0,1136,9,0,1.570796370506287,1,0,0,0,0,[]],51,2254,[],[[0],[1],[1,100,""]],[0,0]],[[1184,40,0,1128,9,0,1.570796370506287,1,0,0,0,0,[]],51,2255,[],[[0],[1],[1,100,""]],[0,0]],[[280,40,0,904,9,0,0,1,0,0,0,0,[]],51,2256,[],[[0],[1],[1,100,""]],[0,0]],[[1072,1760,0,48,9,0,0,1,0,0,0,0,[]],51,2323,[],[[0],[1],[1,100,""]],[0,0]],[[824,1664,0,32,32,0,0,1,0.5,0.5,0,0,[]],49,2324,[[1],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[0,"Default",0,1]],[[1232,1768,0,400,72,0,0,1,0.5,0.5,0,0,[]],50,2325,[[-1],[0],[0],[0],[0],[1],[0]],[[0],[1,0,1,1,"F 2540",125,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1984,448,0,672,1064,0,0,1,0,0,0,0,[]],51,2326,[],[[0],[1],[1,100,""]],[0,0]],[[1976,1960,0,2024,1144,0,0,1,0,0,0,0,[]],51,2327,[],[[0],[1],[1,100,""]],[0,0]],[[3952,1736,0,97,199,0,0,1,0.5257731676101685,0.4974874258041382,0,0,[]],44,2328,[],[[0]],[0,"Default",0,1]],[[3840,1832,0,160,128,0,0,1,0,0,0,0,[]],51,2329,[],[[0],[1],[1,100,""]],[0,0]],[[2288,1768,0,192,9,0,1.570796370506287,1,0,0,0,0,[]],51,2331,[],[[0],[1],[1,100,""]],[0,0]],[[2264,1744,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,2332,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2264,1784,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,2333,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2264,1816,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,2334,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2264,1848,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,2335,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2264,1880,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,2336,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2264,1912,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,2337,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2264,1944,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,2338,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2264,1712,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,2339,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2304,1744,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,2340,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2304,1784,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,2341,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2304,1816,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,2342,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2304,1848,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,2343,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2304,1880,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,2344,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2304,1912,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,2345,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2304,1944,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,2346,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2304,1712,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,2347,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2552,1768,0,192,9,0,1.570796370506287,1,0,0,0,0,[]],51,2348,[],[[0],[1],[1,100,""]],[0,0]],[[2528,1744,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,2349,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2528,1784,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,2350,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2528,1816,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,2351,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2528,1848,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,2352,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2528,1880,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,2353,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2528,1912,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,2354,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2528,1944,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,2355,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2528,1712,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,2356,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2288,1688,0,72,9,0,1.570796370506287,1,0,0,0,0,[]],51,2357,[],[[0],[1],[1,100,""]],[0,0]],[[2160,1528,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2358,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2192,1528,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2359,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2224,1528,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2360,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2256,1528,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2361,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2288,1528,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2362,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2560,1768,0,64,9,0,1.570796370506287,1,0,0,0,0,[]],51,2363,[],[[0],[1],[1,100,""]],[0,0]],[[2576,1784,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,2365,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2576,1816,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,2366,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2576,1848,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,2367,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2576,1880,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,2368,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2560,1896,0,64,9,0,1.570796370506287,1,0,0,0,0,[]],51,2369,[],[[0],[1],[1,100,""]],[0,0]],[[2552,1688,0,72,9,0,1.570796370506287,1,0,0,0,0,[]],51,2370,[],[[0],[1],[1,100,""]],[0,0]],[[2560,1688,0,72,9,0,1.570796370506287,1,0,0,0,0,[]],51,2372,[],[[0],[1],[1,100,""]],[0,0]],[[2416,1736,0,32,32,0,0,1,0.5,0.5,0,0,[]],49,2373,[[2],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[0,"Default",0,1]],[[2592,1752,0,72,152,0,0,1,0.5,0.5,0,0,[]],50,2374,[[-1],[0],[0],[0],[0],[2],[0]],[[0],[1,0,1,1,"F 360",250,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[2564,1932,0,48,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],50,2375,[[-1],[0],[0],[0],[0],[2],[0]],[[0],[1,0,1,1,"R 90; F 400",125,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[2000,1528,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2330,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2032,1528,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2376,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2064,1528,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2377,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2096,1528,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2378,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2128,1528,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2379,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2480,1528,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2380,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2512,1528,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2381,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2544,1528,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2382,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2576,1528,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2383,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2608,1528,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2384,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2320,1528,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2385,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2352,1528,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2386,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2384,1528,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2387,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2416,1528,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2388,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2448,1528,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2389,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2800,1672,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2390,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2832,1672,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2391,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2864,1672,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2392,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2896,1672,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2393,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2928,1672,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2394,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2640,1528,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2395,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2672,1672,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2396,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2704,1672,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2397,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2736,1672,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2398,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2768,1672,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2399,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3120,1528,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2400,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3152,1528,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2401,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3184,1528,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2402,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3216,1528,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2403,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3248,1528,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2404,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2960,1672,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2405,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2992,1672,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2406,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3024,1528,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2407,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3056,1528,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2408,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3088,1528,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2409,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3440,1528,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2410,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3472,1528,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2411,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3504,1528,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2412,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3536,1528,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2413,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3568,1528,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2414,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3280,1528,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2415,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3312,1528,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2416,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3344,1528,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2417,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3376,1528,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2418,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3408,1528,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2419,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3760,1528,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2420,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3792,1528,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2421,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3600,1528,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2425,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3632,1528,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2426,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3664,1528,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2427,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3696,1528,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2428,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3728,1528,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2429,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2184,1944,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2433,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2216,1944,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2434,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2024,1944,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2438,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2056,1944,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2439,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2088,1944,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2440,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2120,1944,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2441,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2152,1944,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2442,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2344,1944,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2448,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2376,1944,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2449,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2408,1944,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2450,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2440,1944,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2451,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2472,1944,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2452,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2888,1944,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2455,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2920,1944,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2456,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2952,1944,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2457,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3144,1944,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2463,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3176,1944,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2464,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3208,1944,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2465,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3240,1944,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2466,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3272,1944,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2467,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2984,1944,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2468,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3016,1944,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2469,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3048,1944,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2470,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3080,1944,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2471,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3112,1944,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2472,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3464,1944,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2473,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3496,1944,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2474,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3528,1944,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2475,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3560,1944,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2476,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3592,1944,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2477,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3304,1944,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2478,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3336,1944,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2479,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3368,1944,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2480,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3400,1944,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2481,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3432,1944,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2482,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3784,1944,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2483,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3816,1944,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2484,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3624,1944,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2488,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3656,1944,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2489,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3688,1944,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2490,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3720,1944,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2491,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3752,1944,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2492,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2560,1832,0,64,9,0,1.570796370506287,1,0,0,0,0,[]],51,2435,[],[[0],[1],[1,100,""]],[0,0]],[[1240,1760,0,56,9,0,0,1,0,0,0,0,[]],51,2436,[],[[0],[1],[1,100,""]],[0,0]],[[1120,1759.999877929688,0,120,9,0,0,1,0,0,0,0,[]],45,2437,[],[[1],[1]],[0,0]],[[2656,448,0,1344,800,0,0,1,0,0,0,0,[]],51,2364,[],[[0],[1],[1,100,""]],[0,0]],[[2656,1648,0,352,8,0,0,1,0,0,0,0,[]],51,2371,[],[[0],[1],[1,100,""]],[0,0]],[[3824,1824,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,2430,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3824,1856,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,2431,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3824,1648,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,1,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3824,1792,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,2443,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3824,1680,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,2,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3840,1608,0,24,88,0,0,1,0,0,0,0,[]],51,2446,[],[[0],[1],[1,100,""]],[0,0]],[[3840,1768,0,24,88,0,0,1,0,0,0,0,[]],51,2447,[],[[0],[1],[1,100,""]],[0,0]],[[2728,1944,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2453,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2760,1944,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2454,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2792,1944,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2458,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2824,1944,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2459,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2856,1944,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2460,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2600,1944,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2462,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2632,1944,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2485,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2664,1944,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2486,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2696,1944,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2487,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3320,1376,0,64,64,0,0,1,0.5,0.5,0,0,[]],60,5502,[["level30"]],[[1],[400,-200,800,0,0,0],[0,0,0,1,1]],[0,"Default",0,1]],[[808,72,0,288,96.8204345703125,0,0,1,0,0,0,0,[[]]],61,5621,[],[[1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>","1",6,0,55,0,0,0,0,0,"",-1,0]],[[1992,1944,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2253,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[280,232,0,592,9,0,0,1,0,0,0,0,[]],51,2258,[],[[0],[1],[1,100,""]],[0,0]],[[376,544,0,808,9,0,0,1,0,0,0,0,[]],51,2259,[],[[0],[1],[1,100,""]],[0,0]],[[288,856,0,512,9,0,0,1,0,0,0,0,[]],51,2260,[],[[0],[1],[1,100,""]],[0,0]],[[280,1168,0,256,9,0,0,1,0,0,0,0,[]],51,2261,[],[[0],[1],[1,100,""]],[0,0]],[[872,232,0,120,8,0,0,1,0,0,0,0,[]],45,2262,[],[[0],[1]],[0,0]],[[992,232,0,192,9,0,0,1,0,0,0,0,[]],51,2263,[],[[0],[1],[1,100,""]],[0,0]],[[288,544,0,88,8,0,0,1,0,0,0,0,[]],45,2264,[],[[0],[1]],[0,0]],[[856,856,0,328,9,0,0,1,0,0,0,0,[]],51,2265,[],[[0],[1],[1,100,""]],[0,0]],[[792,856,0,72,8,0,0,1,0,0,0,0,[]],45,2266,[],[[0],[1]],[0,0]],[[776,1168,0,408,9,0,0,1,0,0,0,0,[]],51,2267,[],[[0],[1],[1,100,""]],[0,0]],[[592,1168,0,128,9,0,0,1,0,0,0,0,[]],51,2268,[],[[0],[1],[1,100,""]],[0,0]],[[536,1168,0,56,8,0,0,1,0,0,0,0,[]],45,2269,[],[[0],[1]],[0,0]],[[720,1168,0,56,8,0,0,1,0,0,0,0,[]],45,2270,[],[[0],[1]],[0,0]],[[536,1168,0,528,9,0,1.570796370506287,1,0,0,0,0,[]],51,2271,[],[[0],[1],[1,100,""]],[0,0]],[[600,1168,0,368,9,0,1.570796370506287,1,0,0,0,0,[]],51,2272,[],[[0],[1],[1,100,""]],[0,0]],[[720,1168,0,368,9,0,1.570796370506287,1,0,0,0,0,[]],51,2273,[],[[0],[1],[1,100,""]],[0,0]],[[784,1168,0,448,9,0,1.570796370506287,1,0,0,0,0,[]],51,2274,[],[[0],[1],[1,100,""]],[0,0]],[[1048,496,0,128,9,0,0,1,0,0,0,0,[]],51,2275,[],[[0],[1],[1,100,""]],[0,0]],[[392,528,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2276,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[424,528,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2277,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[456,528,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2278,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[488,528,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2279,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[520,528,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2280,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[552,528,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2281,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[584,528,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2282,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[616,528,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2283,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[648,528,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2284,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[680,528,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2285,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[712,528,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2286,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[744,528,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2287,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[776,528,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2288,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[808,528,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2289,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[840,528,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2290,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[872,528,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2291,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[904,528,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2292,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[936,528,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2293,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[968,528,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2294,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1000,528,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2295,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1032,528,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2296,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1064,528,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2297,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1096,528,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2298,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1128,528,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2299,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1160,528,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2300,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[304,840,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2301,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[336,840,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2302,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[368,840,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2303,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[400,840,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2304,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[432,840,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2305,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[464,840,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2306,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[496,840,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2307,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[528,840,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2308,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[560,840,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2309,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[592,840,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2310,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[624,840,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2311,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[656,840,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2312,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[688,840,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2313,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[720,840,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2314,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[752,840,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2315,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[784,840,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2316,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[872,840,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2319,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[904,840,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2320,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[936,840,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2321,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[968,840,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2322,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1000,840,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10432,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1032,840,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10433,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1064,840,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10434,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1096,840,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2317,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1128,840,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2318,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1160,840,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10435,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[328,1152,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10437,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[360,1152,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10438,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[392,1152,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10439,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[424,1152,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10440,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[456,1152,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10441,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[488,1152,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10442,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[520,1152,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10443,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[608,1152,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10444,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[640,1152,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10445,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[672,1152,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10446,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[704,1152,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10447,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[792,1152,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10448,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[824,1152,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10449,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[856,1152,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10450,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[888,1152,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10451,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[920,1152,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10452,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[952,1152,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10453,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[984,1152,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10454,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1016,1152,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10455,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1048,1152,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10456,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1080,1152,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10457,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1112,1152,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10458,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1144,1152,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10459,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[304,1136,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,10436,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[304,1104,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,10460,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[304,1072,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,10461,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[304,1040,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,10462,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[304,1008,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,10463,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[304,976,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,10464,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[304,944,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,10465,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[304,912,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,10466,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[304,880,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,10467,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1160,1136,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,10468,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1160,1104,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,10469,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1160,1072,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,10470,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1160,1040,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,10471,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1160,1008,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,10472,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1160,976,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,10473,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1160,944,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,10474,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1160,912,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,10475,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1160,880,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,10476,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1104,496,0,16,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],50,10477,[[-1],[0],[0],[0],[0],[1],[1]],[[0],[1,1,1,0,"F 760 ; B 760",260,0,20,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[680,352,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10479,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[648,384,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,10480,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[680,416,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10481,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[664,368,0,56,32,0,0,1,0,0,0,0,[]],51,10482,[],[[0],[1],[1,100,""]],[0,0]],[[824,384,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,10483,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[792,352,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10484,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[792,416,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10486,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[736,456,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10489,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[736,352,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,10490,[[0.3],[0]],[[0]],[0,"Default",0,1]],[[728,712,0,128,9,0,0,1,0,0,0,0,[]],51,10492,[],[[0],[1],[1,100,""]],[0,0]],[[792,704,0,16,32,0,0,1,0.5,0.5,0,0,[]],50,10493,[[-1],[0],[0],[0],[0],[1],[1]],[[0],[1,1,1,0,"F 320 ; B 760; F 430",260,0,20,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[752,368,0,56,32,0,0,1,0,0,0,0,[]],51,10485,[],[[0],[1],[1,100,""]],[0,0]],[[720,368,0,32,72,0,0,1,0,0,0,0,[]],51,10487,[],[[0],[1],[1,100,""]],[0,0]],[[304,448,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,10495,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[304,416,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,10496,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[304,384,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,10497,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[304,352,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,10498,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[304,320,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,10499,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[304,288,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,10500,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[304,256,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,10501,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1160,792,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,10488,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1160,760,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,10491,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1160,728,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,10494,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1160,696,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,10502,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1160,664,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,10503,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1160,632,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,10504,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1160,600,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,10505,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1160,568,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,10506,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[720,688,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2257,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[704,720,0,32,144,0,0,1,0,0,0,0,[]],51,10478,[],[[0],[1],[1,100,""]],[0,0]],[[704,704,0,32,9,0,0,1,0,0,0,0,[]],51,10507,[],[[0],[1],[1,100,""]],[0,0]],[[1016,1152,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10508,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1016,1000,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10509,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1000,1032,0,32,144,0,0,1,0,0,0,0,[]],51,10510,[],[[0],[1],[1,100,""]],[0,0]],[[1000,1016,0,32,9,0,0,1,0,0,0,0,[]],51,10511,[],[[0],[1],[1,100,""]],[0,0]],[[592,1064,0,128,9,0,0,1,0,0,0,0,[]],51,10512,[],[[0],[1],[1,100,""]],[0,0]],[[648,1064,0,16,32,0,0,1,0.5,0.5,0,0,[]],50,10513,[[-1],[0],[0],[0],[0],[1],[1]],[[0],[1,1,1,0,"F 456 ; B 760 ; F 304",260,0,20,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[840,1264,0,456,9,0,0,1,0,0,0,0,[]],51,10514,[],[[0],[1],[1,100,""]],[0,0]],[[832,760,0,80,16,0,1.570796370506287,1,0,0,0,0,[]],46,10515,[[0],[0],[""],["en-us"],[0],[0],[1],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","-->",1,0,50,0,0,0,0,0,"",-1,0]],[[748,1512,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10516,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[592,1528,0,192,9,0,0,1,0,0,0,0,[]],51,10517,[],[[0],[1],[1,100,""]],[0,0]],[[528,1688,0,456,9,0,0,1,0,0,0,0,[]],51,10518,[],[[0],[1],[1,100,""]],[0,0]],[[780,1632,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10519,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[872,1672,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10520,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[904,1672,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10521,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[936,1672,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10522,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[968,1672,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10523,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[600,184,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10524,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[632,184,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10525,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[568,184,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10526,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[792,216,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10527,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[760,216,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10528,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[648,160,0,8,96,0,1.570796370506287,1,0,0,0,0,[]],67,10529,[],[[1]],[0,0]],[[560,48,0,112,8,0,1.570796370506287,1,0,0,0,0,[]],45,10530,[],[[0],[1]],[0,0]],[[648,48,0,112,8,0,1.570796370506287,1,0,0,0,0,[]],45,10531,[],[[0],[1]],[0,0]],[[552,48,0,96,112,0,0,1,0,0,0,0,[]],51,10532,[],[[0],[1],[1,100,""]],[0,0]],[[856,216,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10533,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[824,216,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10534,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[756,1104,0,80,16,0,1.570796370506287,1,0,0,0,0,[]],46,10535,[[0],[0],[""],["en-us"],[0],[0],[1],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","X",1,0,50,0,0,0,0,0,"",-1,0]],[[1040,216,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10536,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[1008,216,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10537,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[1104,216,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10538,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[1072,216,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10539,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[3824,1912,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,2444,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3824,1880,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,10541,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2664,1128,0,528,9,0,1.570796370506287,1,0,0,0,0,[]],51,10540,[],[[0],[1],[1,100,""]],[0,0]],[[2744,1424,0,1064,88,0,0,1,0,0,0,0,[]],51,2423,[],[[0],[1],[1,100,""]],[0,0]],[[3976,1128,0,24,480,0,0,1,0,0,0,0,[]],51,2422,[],[[0],[1],[1,100,""]],[0,0]],[[3808,1424,0,72,88,0,0,1,0,0,0,0,[]],51,2424,[],[[0],[1],[1,100,""]],[0,0]],[[3008,1512,0,136,8,0,1.570796370506287,1,0,0,0,0,[]],45,10542,[],[[0],[1]],[0,0]],[[3848,1512,0,96,8,0,1.570796370506287,1,0,0,0,0,[]],45,10543,[],[[0],[1]],[0,0]],[[3864,1608,0,136,8,0,0,1,0,0,0,0,[]],51,10544,[],[[0],[1],[1,100,""]],[0,0]],[[2760,1632,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10545,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2792,1632,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10546,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2824,1632,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10547,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2856,1632,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10548,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2680,1632,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10549,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[2520,1424,0,176,88,0,0,1,0,0,0,0,[]],51,10550,[],[[0],[1],[1,100,""]],[0,0]],[[2680,1296,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,10551,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2680,1264,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,10552,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2680,1328,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,10553,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[2960,1384,0,40,96,0,1.570796370506287,1,0,0,0,0,[]],67,10554,[],[[1]],[0,0]],[[2880,1368,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10555,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2912,1368,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10556,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2952,1384,0,8,40,0,0,1,0,0,0,0,[]],67,10557,[],[[1]],[0,0]],[[2864,1384,0,8,40,0,0,1,0,0,0,0,[]],67,10558,[],[[1]],[0,0]],[[2944,1368,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10559,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2960,1240,0,8,96,0,1.570796370506287,1,0,0,0,0,[]],67,10560,[],[[1]],[0,0]],[[2880,1264,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10561,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2912,1264,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10562,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2952,1144,0,8,104,0,0,1,0,0,0,0,[]],67,10563,[],[[1]],[0,0]],[[2864,1144,0,8,104,0,0,1,0,0,0,0,[]],67,10564,[],[[1]],[0,0]],[[2944,1264,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10565,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3040,1264,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,10566,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3040,1296,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,10567,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3040,1328,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,10568,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3040,1360,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,10569,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3064,1248,0,128,8,0,1.570796370506287,1,0,0,0,0,[]],67,10570,[],[[1]],[0,0]],[[3136,1344,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,10572,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3136,1376,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,10573,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3136,1408,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,10574,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3160,1328,0,96,8,0,1.570796370506287,1,0,0,0,0,[]],67,10575,[],[[1]],[0,0]],[[3168,1312,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10576,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3200,1344,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10577,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3232,1376,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10578,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3184,1328,0,96,24,0,1.570796370506287,1,0,0,0,0,[]],67,10580,[],[[1]],[0,0]],[[3216,1360,0,64,32,0,1.570796370506287,1,0,0,0,0,[]],67,10581,[],[[1]],[0,0]],[[3248,1392,0,32,32,0,1.570796370506287,1,0,0,0,0,[]],67,10582,[],[[1]],[0,0]],[[3392,1408,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10579,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3424,1408,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10583,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3456,1408,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10584,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3488,1408,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10587,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3520,1408,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10588,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3552,1408,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10589,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3584,1408,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10590,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3616,1408,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10591,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3648,1408,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10585,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3680,1408,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10586,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3800,1408,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10592,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3832,1408,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10593,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3864,1408,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10594,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[-505.760009765625,1417.087890625,0,1328,272,0,0,1,-2.380000114440918,0.6399999856948853,0,0,[]],159,10571,[],[[0]],[0,"Default",0,1]],[[2784,1336,0,24,56,0,-1.570796489715576,1,0.5,0.5,0,0,[]],50,10595,[[-1],[0],[0],[0],[0],[5],[0]],[[0],[1,0,1,1,"F 2000",500,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1844.400146484375,1600.416015625,0,344,144,0,0,1,-2.380000114440918,0.6399999856948853,0,0,[]],159,10596,[],[[0]],[0,"Default",0,1]],[[2752,1560,0,24,16,0,-1.570796489715576,1,0.5,0.5,0,0,[]],50,10597,[[-1],[0],[0],[0],[0],[5],[0]],[[0],[1,0,1,1,"F 2000",500,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[3516.760009765625,1574.240112304688,0,136,104,0,0,1,-2.380000114440918,0.6399999856948853,0,0,[]],159,10598,[],[[0]],[0,"Default",0,1]],[[3904,1552,0,24,16,0,-1.570796489715576,1,0.5,0.5,0,0,[]],50,10599,[[-1],[0],[0],[0],[0],[5],[0]],[[0],[1,0,1,1,"F 2000",500,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[2984,1584,0,32,128,0,0,1,0.5,0.5,0,0,[]],49,10600,[[5],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[1,"Default",0,1]]],[]],["UI",2,484972963166177,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[240,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3097,[["right"]],[[0,1,0,1,1]],[0,"Default",0,1]],[[80,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3098,[["left"]],[[0,1,0,1,1]],[0,"Default",1,1]],[[560,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3099,[["up"]],[[1,1,1,1,1]],[0,"Default",3,1]],[[400,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3100,[["down"]],[[1,1,1,1,1]],[0,"Default",2,1]]],[]],["End Card",3,252044309097733,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],78,2607,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[12.04449462890625,194,0,615.9109497070313,67,0,0,1,0,0,0,0,[]],79,2608,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Timer for this level",2.5,0,0,0,0,0,-10,0,"",-1,0]],[[17.546875,248,0,604.90625,105,0,0,1,0,0,0,0,[]],80,2610,[[0],[0],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","13:40:40",4,0,63,50,0,0,-10,0,"",-1,0]],[[115.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,2611,[[0],[1],[0],[0],["replay"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Replay",""],[""],[2,2,0,0,0],["",""]],[0,"Replay",0,1]],[[524.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3086,[[0],[1],[0],[0],["next"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Next",""],[""],[2,2,0,0,0],["",""]],[0,"Next",0,1]],[[320.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3087,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > Back","Level Menu"],[""],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[320.75,521.8050537109375,0,384,96,0,0,1,0.5,0.5,0,0,[]],70,3088,[[1],[1],[0],[0],[""],["{\"size\": 22, \"left\": 70, \"right\": 18, \"alignY\": 60}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > DownloadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"DownloadReplay",0,1]]],[]],["Pause",4,231294918090211,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-310,678,0,274,31,0,0,1,0,0,0,0,[]],168,3089,[],[],[".ovo",0,1,"file"]],[[320,320,0,425,250,0,0,1,0.5,0.5,0,0,[]],82,3090,[],[[6,1,"",300,1,1,"",300,"overlay",1,"PauseClose",1,1]],[0,"Default",0,1]],[[214,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3091,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"",""],["PauseClose"],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[426,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3092,[[0],[1],[0],[0],["quit"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > GiveUp",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[115.5,202,0,409,118,0,0,1,0,0,0,0,[]],83,3093,[[1],[1],["pause"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Pause",4,0,57,50,0,0,-10,0,"",-1,0]],[[320.5,88,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3094,[[1],[1],[0],[0],["loadreplay"],["{\"size\": 16, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > LoadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"LoadReplay",0,1]],[[320.5,157,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3095,[[1],[0],[0],[0],["toggledebug"],["{\"size\": 15, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Debug > Toggle",""],[""],[2,2,0,0,0],["",""]],[0,"ToggleDebug",0,1]],[[78,448,0,484,134,0,0,1,0,0,0,0,[]],193,3096,[],[],[0,"Default",0,1]]],[]],["Overlay",5,905072967815834,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[432,4,0,203.0009155273438,64,0,0,1,0,0,0,0,[]],107,5488,[],[[1,0,1,0,1]],[2,2,2,2,0,1,0,0,1]],[[432,4,0,203,64,0,0,1,0,0,0,0,[]],84,3101,[[0],[0],[""],["en-us"],[0],[1],[1],["{\"alignY\": 85, \"alignX\": 45, \"size\": 28}"],[0],[1],[0],[0],[0]],[["",""],[1,0,1,0,1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",2,0,100,50,0,0,-10,0,"",-1,0]],[[88,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3102,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Pause",""],[""],[0,0,0,0,1],["",""]],[0,"Pause",0,1]],[[158,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3103,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Replay","1"],[""],[0,0,0,0,1],["",""]],[0,"Reload",0,1]]],[]],["End Game",6,668801238415103,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],85,3104,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[73,194,0,494,72,0,0,1,0,0,0,0,[]],86,3105,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],["{alignY:50}"],[0],[1],[0],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Your final time",2.5,0,50,50,0,0,-10,0,"",-1,0]],[[320,403,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3106,[[0],[1],[0],[0],[""],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Quit",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[73,243,0,494,85,0,0,1,0,0,0,0,[]],87,3108,[[0],[1],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",3,0,50,50,0,0,-10,0,"",-1,0]],[[73,318,0,494,25,0,0,1,0,0,0,0,[]],86,5480,[[1],[1],["tryagainhardmode"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Try again in hard mode!",1,0,50,50,0,0,-2,0,"",-1,0]]],[]],["Banner",7,689181448932578,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-237,-189,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,3109,[],[["overlay"]],[0,"Default",0,1]]],[]],["AdPlaying",8,165224482757330,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,-203.5,0,250,97,0,0,1,0.5,0.5,0,0,[]],125,390,[],[[6,1,"",300,1,1,"",300,"overlay",1,"",1,1],[]],[0,"Default",0,1]],[[209,-275,0,222,139,0,0,1,0,0,0,0,[]],86,391,[[1],[1],["adplaying"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","An ad is playing right now...",1.2,0,50,50,0,0,-2,0,"",-1,0]],[[-154.5756988525391,-294.3137512207031,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,5508,[],[["overlay"]],[0,"Default",0,1]]],[]]],[],[]],["Level 31",4000,4000,true,"Levels",321550007681680,[["Background",0,244083700912040,true,[255,255,255],false,0,0,1,false,false,1,0,0,[[[902,1389,0,60.93439102172852,60.93439102172852,0,0,1,0.5,0.5,0,0,[]],53,6368,[["Hilarious Quadrilateral"],[""],[0]],[],[1,"Default",0,1]]],[]],["Layer 0",1,935298577306024,true,[255,255,255],true,1,1,1,false,false,1,0,0,[[[712,1832,0,424,9,0,0,1,0,0,0,0,[]],51,2136,[],[[0],[1],[1,100,""]],[0,0]],[[1720,1704,0,1080,1016,0,0,1,0.5,0.5,0,0,[]],50,2141,[[-1],[0],[0],[0],[0],[0],[0]],[[0],[1,0,1,1,"L 90",75,40,0,15,100,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[784,1768,0,32,64,0,0,1,0.5,0.5,0,0,[]],42,2132,[["run"],[0],[1],[1],[0],[0.8],[0.5],[0],[1],[0],[0],[0],[""],[2],[0],[0],[0],[""],[0],[3],[0],[0],[0],[0],[0],[0],[0]],[[330,1500,1500,650,1500,1000,0,0,0,1],[],[0,0],[0,10000,360,1]],[1,"Default",0,1]],[[1304,2152,0,72,40,0,-1.570796489715576,1,0.5,0.5,0,0,[]],50,2159,[[-1],[0],[1],[0],[0],[1],[0]],[[0],[1,0,1,1,"F 100",75,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1170.2294921875,2199.96484375,0,1096,22,0,0,1,0,0,0,0,[]],51,2137,[],[[0],[1],[1,100,""]],[0,0]],[[1192,1184,0,520,23,0,1.570796370506287,1,0,0,0,0,[]],51,2138,[],[[0],[1],[1,100,""]],[0,0]],[[1170.2294921875,1183.96484375,0,1096,22,0,0,1,0,0,0,0,[]],51,2139,[],[[0],[1],[1,100,""]],[0,0]],[[2271.84423828125,1184,0,1038,23,0,1.570796370506287,1,0,0,0,0,[]],51,2140,[],[[0],[1],[1,100,""]],[0,0]],[[1192,1832,0,389.8591613769531,23.31147575378418,0,1.570796370506287,1,0,0,0,0,[]],51,2143,[],[[0],[1],[1,100,""]],[0,0]],[[1192,2096,0,920,9,0,0,1,0,0,0,0,[]],51,2144,[],[[0],[1],[1,100,""]],[0,0]],[[1240,2152,0,32,32,0,0,1,0.5,0.5,0,0,[]],49,2145,[[2],[1],[0],[-1],[-1],[999],[0]],[[1],[]],[0,"Default",0,1]],[[1312,2120,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,2146,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1312,2152,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,2147,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1312,2184,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,2148,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1296,2104,0,96,9,0,1.570796370506287,1,0,0,0,0,[]],51,2149,[],[[0],[1],[1,100,""]],[0,0]],[[2226,1672,0,32,32,0,0,1,0.5,0.5,0,0,[]],49,2150,[[1],[1],[0],[-1],[-1],[999],[0]],[[1],[]],[0,"Default",0,1]],[[2104,1696,0,160,9,0,0,1,0,0,0,0,[]],51,2151,[],[[0],[1],[1,100,""]],[0,0]],[[2104,1632,0,160,9,0,0,1,0,0,0,0,[]],51,2152,[],[[0],[1],[1,100,""]],[0,0]],[[1680,1808,0,104,9,0,0,1,0,0,0,0,[]],51,2155,[],[[0],[1],[1,100,""]],[0,0]],[[1784,1696,0,120,9,0,1.570796370506287,1,0,0,0,0,[]],51,2156,[],[[0],[1],[1,100,""]],[0,0]],[[1688,1712,0,104,9,0,1.570796370506287,1,0,0,0,0,[]],51,2157,[],[[0],[1],[1,100,""]],[0,0]],[[1728,1221,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],43,2154,[[1.2],[0]],[[0]],[0,"Default",0,1]],[[1688,1712,0,88,8,0,0,1,0,0,0,0,[]],45,2158,[],[[1],[1]],[0,0]],[[1192,1832,0,160,9,0,0,1,0,0,0,0,[]],51,2160,[],[[0],[1],[1,100,""]],[0,0]],[[1176,1695,0,176,9,0,0,1,0,0,0,0,[]],51,2161,[],[[0],[1],[1,100,""]],[0,0]],[[1200,1816,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2163,[[0],[1]],[[1],[1]],[0,"Default",0,1]],[[1336,1720,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2164,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1304,1720,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2165,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1600,472,0,680,9,0,1.570796370506287,1,0,0,0,0,[]],51,2167,[],[[0],[1],[1,100,""]],[0,0]],[[1752,728,0,432,9,0,1.570796370506287,1,0,0,0,0,[]],51,2168,[],[[0],[1],[1,100,""]],[0,0]],[[1600,1136,0,40,9,0,0,1,0,0,0,0,[]],51,2169,[],[[0],[1],[1,100,""]],[0,0]],[[1664,1760,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],43,2170,[[0.7],[0]],[[0]],[0,"Default",0,1]],[[1896,1480,0,576,9,0,1.570796370506287,1,0,0,0,0,[]],51,2171,[],[[0],[1],[1,100,""]],[0,0]],[[1896,2056,0,40,8,0,1.570796370506287,1,0,0,0,0,[]],45,2172,[],[[1],[1]],[0,0]],[[1896,1984,0,354,9,0,0,1,0,0,0,0,[]],51,2173,[],[[0],[1],[1,100,""]],[0,0]],[[1912,2008,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2174,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1944,2008,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2175,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1976,2008,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2176,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2008,2008,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2177,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2040,2008,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2178,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2072,2008,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2179,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2104,2008,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2180,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2136,2008,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2181,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2168,2008,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2182,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2200,2008,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2183,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2232,2008,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2184,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2234,1721,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,2185,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2234,1753,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,2186,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2234,1785,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,2187,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2234,1817,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,2188,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2234,1849,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,2189,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2234,1881,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,2190,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2234,1913,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,2191,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2234,1945,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,2192,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2234,1224,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,2193,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2234,1256,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,2194,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2234,1288,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,2195,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2234,1320,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,2196,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2234,1352,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,2197,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2234,1384,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,2198,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2234,1416,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,2199,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2234,1448,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,2200,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2234,1480,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,2201,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2234,1512,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,2202,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2234,1544,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,2203,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2234,1576,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,2204,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2234,1608,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,2205,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2096,1205,0,296,8,0,1.570796370506287,1,0,0,0,0,[]],51,2206,[],[[0],[1],[1,100,""]],[0,0]],[[2072,1384,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],43,2207,[[0.5],[0]],[[0]],[0,"Default",0,1]],[[1896,1200,0,160,9,0,1.570796370506287,1,0,0,0,0,[]],51,2208,[],[[0],[1],[1,100,""]],[0,0]],[[1887,1360,0,9,120,0,0,1,0,0,0,0,[]],48,2209,[],[[1],[1]],[0,0]],[[1731,1766,0,32,32,0,0,1,0.5,0.5,0,0,[]],49,2210,[[3],[1],[0],[-1],[-1],[999],[0]],[[1],[]],[0,"Default",0,1]],[[1888,1416,0,32,72,0,-1.570796489715576,1,0.5,0.5,0,0,[]],50,2211,[[-1],[0],[1],[0],[0],[3],[0]],[[0],[1,0,1,1,"B 120",75,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1208,1904,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],43,2212,[[0.6],[0]],[[0]],[0,"Default",0,1]],[[1272,1288,0,312,9,0,1.570796370506287,1,0,0,0,0,[]],51,2213,[],[[0],[1],[1,100,""]],[0,0]],[[1400,1280,0,320,9,0,1.570796370506287,1,0,0,0,0,[]],51,2214,[],[[0],[1],[1,100,""]],[0,0]],[[1640,1221,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2215,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1608,1221,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2216,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1576,1221,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2217,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1544,1221,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2218,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1512,1221,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2219,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1480,1221,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2220,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1376,1584,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,2223,[[0],[1]],[[1],[1]],[0,"Default",0,1]],[[1288,1344,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,2224,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1416,1360,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,2227,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1416,1392,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,2228,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1416,1424,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,2229,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1416,1456,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,2230,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1416,1488,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,2231,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1416,1520,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,2232,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1416,1552,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,2233,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1416,1584,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,2234,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1208,1360,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,2237,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1208,1392,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,2238,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1208,1424,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,2239,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1208,1456,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,2240,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1208,1488,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,2241,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1208,1520,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,2242,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1208,1552,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,2243,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1208,1584,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,2244,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1848,632,0,97,199,0,0,1,0.5257731676101685,0.4974874258041382,0,0,[]],44,2245,[],[[0]],[0,"Default",0,1]],[[1744,728,0,168,9,0,0,1,0,0,0,0,[]],51,2246,[],[[0],[1],[1,100,""]],[0,0]],[[1744,1144,0,9,144,0,1.570796370506287,1,0,0,0,0,[]],48,2247,[],[[1],[1]],[0,0]],[[1688,1136,0,16,16,0,0,1,0.5,0.5,0,0,[]],50,2248,[[-1],[0],[0],[0],[0],[2],[0]],[[0],[1,0,1,1,"F 260",75,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1376,1808,0,32,32,0,0,1,0.5,0.5,0,0,[]],49,3,[[0],[1],[0],[-1],[-1],[999],[0]],[[1],[]],[0,"Default",0,1]],[[1232,1248,0,32,32,0,0,1,0.5,0.5,0,0,[]],49,4,[[0],[1],[0],[-1],[-1],[999],[0]],[[1],[]],[0,"Default",0,1]],[[1176,1280,0,96,9,0,0,1,0,0,0,0,[]],51,1641,[],[[0],[1],[1,100,""]],[0,0]],[[1960,1248,0,32,32,0,0,1,0.5,0.5,0,0,[]],49,2225,[[0],[1],[0],[-1],[-1],[999],[0]],[[1],[]],[0,"Default",0,1]],[[2112,1632,0,72,8,0,1.570796370506287,1,0,0,0,0,[]],45,2153,[],[[1],[1]],[0,0]],[[2232,2072,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],43,2166,[[0.6],[0]],[[0]],[0,"Default",0,1]],[[2160,1264,0,64,64,0,3.141592741012573,1,0.5,0.5,0,0,[]],60,1514,[["level31"]],[[1],[400,-200,800,0,0,0],[0,0,0,1,1]],[0,"Default",0,1]],[[828,1674,0,288,117,0,0,1,0,0,0,0,[[]]],61,5622,[],[[1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>","1",7,0,80,0,0,0,0,0,"",-1,0]],[[2160,1222,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],43,1002,[[0.7],[0]],[[0]],[0,"Default",0,1]]],[]],["UI",2,315693914697054,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[240,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3097,[["right"]],[[0,1,0,1,1]],[0,"Default",0,1]],[[80,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3098,[["left"]],[[0,1,0,1,1]],[0,"Default",1,1]],[[560,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3099,[["up"]],[[1,1,1,1,1]],[0,"Default",3,1]],[[400,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3100,[["down"]],[[1,1,1,1,1]],[0,"Default",2,1]]],[]],["End Card",3,455520237785918,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],78,2607,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[12.04449462890625,194,0,615.9109497070313,67,0,0,1,0,0,0,0,[]],79,2608,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Timer for this level",2.5,0,0,0,0,0,-10,0,"",-1,0]],[[17.546875,248,0,604.90625,105,0,0,1,0,0,0,0,[]],80,2610,[[0],[0],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","13:40:40",4,0,63,50,0,0,-10,0,"",-1,0]],[[115.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,2611,[[0],[1],[0],[0],["replay"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Replay",""],[""],[2,2,0,0,0],["",""]],[0,"Replay",0,1]],[[524.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3086,[[0],[1],[0],[0],["next"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Next",""],[""],[2,2,0,0,0],["",""]],[0,"Next",0,1]],[[320.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3087,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > Back","Level Menu"],[""],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[320.75,521.8050537109375,0,384,96,0,0,1,0.5,0.5,0,0,[]],70,3088,[[1],[1],[0],[0],[""],["{\"size\": 22, \"left\": 70, \"right\": 18, \"alignY\": 60}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > DownloadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"DownloadReplay",0,1]]],[]],["Pause",4,115238240153991,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-310,678,0,274,31,0,0,1,0,0,0,0,[]],168,3089,[],[],[".ovo",0,1,"file"]],[[320,320,0,425,250,0,0,1,0.5,0.5,0,0,[]],82,3090,[],[[6,1,"",300,1,1,"",300,"overlay",1,"PauseClose",1,1]],[0,"Default",0,1]],[[214,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3091,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"",""],["PauseClose"],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[426,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3092,[[0],[1],[0],[0],["quit"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > GiveUp",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[115.5,202,0,409,118,0,0,1,0,0,0,0,[]],83,3093,[[1],[1],["pause"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Pause",4,0,57,50,0,0,-10,0,"",-1,0]],[[320.5,88,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3094,[[1],[1],[0],[0],["loadreplay"],["{\"size\": 16, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > LoadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"LoadReplay",0,1]],[[320.5,157,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3095,[[1],[0],[0],[0],["toggledebug"],["{\"size\": 15, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Debug > Toggle",""],[""],[2,2,0,0,0],["",""]],[0,"ToggleDebug",0,1]],[[78,448,0,484,134,0,0,1,0,0,0,0,[]],193,3096,[],[],[0,"Default",0,1]]],[]],["Overlay",5,672299296876573,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[432,4,0,203.0009155273438,64,0,0,1,0,0,0,0,[]],107,5488,[],[[1,0,1,0,1]],[2,2,2,2,0,1,0,0,1]],[[432,4,0,203,64,0,0,1,0,0,0,0,[]],84,3101,[[0],[0],[""],["en-us"],[0],[1],[1],["{\"alignY\": 85, \"alignX\": 45, \"size\": 28}"],[0],[1],[0],[0],[0]],[["",""],[1,0,1,0,1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",2,0,100,50,0,0,-10,0,"",-1,0]],[[88,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3102,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Pause",""],[""],[0,0,0,0,1],["",""]],[0,"Pause",0,1]],[[158,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3103,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Replay","1"],[""],[0,0,0,0,1],["",""]],[0,"Reload",0,1]]],[]],["End Game",6,962183727403584,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],85,3104,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[73,194,0,494,72,0,0,1,0,0,0,0,[]],86,3105,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],["{alignY:50}"],[0],[1],[0],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Your final time",2.5,0,50,50,0,0,-10,0,"",-1,0]],[[320,403,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3106,[[0],[1],[0],[0],[""],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Quit",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[73,243,0,494,85,0,0,1,0,0,0,0,[]],87,3108,[[0],[1],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",3,0,50,50,0,0,-10,0,"",-1,0]],[[73,318,0,494,25,0,0,1,0,0,0,0,[]],86,5480,[[1],[1],["tryagainhardmode"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Try again in hard mode!",1,0,50,50,0,0,-2,0,"",-1,0]]],[]],["Banner",7,389080780884637,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-237,-189,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,3109,[],[["overlay"]],[0,"Default",0,1]]],[]],["AdPlaying",8,787230101358026,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,-203.5,0,250,97,0,0,1,0.5,0.5,0,0,[]],125,390,[],[[6,1,"",300,1,1,"",300,"overlay",1,"",1,1],[]],[0,"Default",0,1]],[[209,-275,0,222,139,0,0,1,0,0,0,0,[]],86,391,[[1],[1],["adplaying"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","An ad is playing right now...",1.2,0,50,50,0,0,-2,0,"",-1,0]],[[-154.5756988525391,-294.3137512207031,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,5508,[],[["overlay"]],[0,"Default",0,1]]],[]]],[],[]],["Level 32",12000,4000,true,"Levels",378281149700731,[["Background",0,509833064155405,true,[255,255,255],false,0,0,1,false,false,1,0,0,[[[-97,439,0,60.93439102172852,60.93439102172852,0,0,1,0.5,0.5,0,0,[]],53,6369,[["Run for your life"],[""],[0]],[],[1,"Default",0,1]]],[]],["Layer 0",1,223519862668241,true,[255,255,255],true,1,1,1,false,false,1,0,0,[[[302,516,0,32,64,0,0,1,0.5,0.5,0,0,[]],42,2461,[["run"],[0],[1],[1],[0],[0.8],[0.5],[0],[1],[0],[0],[0],[""],[2],[0],[0],[0],[""],[0],[3],[0],[0],[0],[0],[0],[0],[0]],[[330,1500,1500,650,1500,1000,0,0,0,1],[],[0,0],[0,10000,360,1]],[1,"Default",0,1]],[[7240,888,0,1896,808,0,0,1,0.5,0.5,0,0,[]],50,2551,[[-1],[0],[0],[0],[0],[0],[0]],[[0],[1,1,1,1,"B 4000;",250,20,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[-536,584,0,6808,646,0,0,1,0,0,0,0,[]],51,2493,[],[[0],[1],[1,100,""]],[0,0]],[[40.00000762939453,328,0,256,9,0,1.570796370506287,1,0,0,0,0,[]],51,2494,[],[[0],[1],[1,100,""]],[0,0]],[[56,440,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,2495,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[56,472,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,2496,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[56,504,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,2497,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[56,536,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,2498,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[56,568,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,2499,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[53,456,0,32,240,0,0,1,0.5,0.5,0,0,[]],50,2500,[[-1],[0],[0],[0],[0],[0],[0]],[[0],[1,1,1,1,"F 5000;",175,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[4384,1492,0,7500,336,0,0,1,0.5,0.5,0,0,[]],50,2501,[[-1],[0],[0],[0],[0],[0],[0]],[[0],[1,1,1,1,"B 4000;",250,20,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[-512,-295,0,2504,624,0,0,1,0,0,0,0,[]],51,2502,[],[[0],[1],[1,100,""]],[0,0]],[[56,376,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,2503,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[56,408,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,2504,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[56,344,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,2505,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[376,568,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2506,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[408,568,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2507,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[440,568,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2508,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[472,568,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2509,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[216,328,0,256,9,0,1.570796370506287,1,0,0,0,0,[]],52,2510,[],[[0],[0]],[0,0]],[[584,520,0,32,32,0,0,1,0.5,0.5,0,0,[]],49,2511,[[1],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[0,"Default",0,1]],[[888,328,0,208,9,0,1.570796370506287,1,0,0,0,0,[]],51,2512,[],[[0],[1],[1,100,""]],[0,0]],[[888,536,0,56,9,0,1.570796370506287,1,0,0,0,0,[]],51,2513,[],[[0],[1],[1,100,""]],[0,0]],[[880,552,0,16,72,0,-1.570796489715576,1,0.5,0.5,0,0,[]],50,2514,[[-1],[0],[0],[0],[0],[1],[0]],[[0],[1,0,1,1,"B 1000",40,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1224,520,0,32,32,0,0,1,0.5,0.5,0,0,[]],49,2515,[[2],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[0,"Default",0,1]],[[1352,328,0,208,9,0,1.570796370506287,1,0,0,0,0,[]],51,2516,[],[[0],[1],[1,100,""]],[0,0]],[[1352,536,0,56,9,0,1.570796370506287,1,0,0,0,0,[]],51,2517,[],[[0],[1],[1,100,""]],[0,0]],[[1344,552,0,16,72,0,-1.570796489715576,1,0.5,0.5,0,0,[]],50,2518,[[-1],[0],[0],[0],[0],[2],[0]],[[0],[1,0,1,1,"B 1000",40,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1632,520,0,32,32,0,0,1,0.5,0.5,0,0,[]],49,2519,[[3],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[0,"Default",0,1]],[[1760,424,0,160,9,0,1.570796370506287,1,0,0,0,0,[]],51,2520,[],[[0],[1],[1,100,""]],[0,0]],[[1760,368,0,56,9,0,1.570796370506287,1,0,0,0,0,[]],51,2521,[],[[0],[1],[1,100,""]],[0,0]],[[1752,392,0,16,72,0,-1.570796489715576,1,0.5,0.5,0,0,[]],50,2522,[[-1],[0],[0],[0],[0],[3],[0]],[[0],[1,0,1,1,"F 1000",40,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1984,1,0,800,512,0,0,1,0,0,0,0,[]],51,2523,[],[[0],[1],[1,100,""]],[0,0]],[[1992,320,0,192,9,0,1.570796370506287,1,0,0,0,0,[]],51,2524,[],[[0],[1],[1,100,""]],[0,0]],[[3856,440,0,48,9,0,1.570796370506287,1,0,0,0,0,[]],51,2525,[],[[0],[1],[1,100,""]],[0,0]],[[3848,1,0,304,448,0,0,1,0,0,0,0,[]],51,2526,[],[[0],[1],[1,100,""]],[0,0]],[[1760,320,0,48,9,0,1.570796370506287,1,0,0,0,0,[]],51,2530,[],[[0],[1],[1,100,""]],[0,0]],[[3048,-7,0,808,496,0,0,1,0,0,0,0,[]],51,2531,[],[[0],[1],[1,100,""]],[0,0]],[[2792,0,0,512,9,0,1.570796370506287,1,0,0,0,0,[]],51,2532,[],[[0],[1],[1,100,""]],[0,0]],[[3056,0,0,488,9,0,1.570796370506287,1,0,0,0,0,[]],51,2533,[],[[0],[1],[1,100,""]],[0,0]],[[2928,360,0,232,16,0,1.570796370506287,1,0,0,0,0,[]],51,2535,[],[[0],[1],[1,100,""]],[0,0]],[[2792,1,0,256,288,0,0,1,0,0,0,0,[]],51,2536,[],[[0],[1],[1,100,""]],[0,0]],[[2896,568,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,2534,[[0.7],[0]],[[0]],[0,"Default",0,1]],[[-2,1216,0,7510,440,0,0,1,0,0,0,0,[]],51,2540,[],[[0],[1],[1,100,""]],[0,0]],[[7488,584,0,136,216,0,1.570796370506287,1,0,0,0,0,[]],51,2541,[],[[0],[1],[1,100,""]],[0,0]],[[7344,1016,0,816,9,0,0,1,0,0,0,0,[]],51,2542,[],[[0],[1],[1,100,""]],[0,0]],[[7280,1016,0,64,8,0,0,1,0,0,0,0,[]],45,2543,[],[[0],[1]],[0,0]],[[7312,1064,0,32,32,0,0,1,0.5,0.5,0,0,[]],49,2544,[[4],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[0,"Default",0,1]],[[7500,1216,0,200,9,0,-1.570796489715576,1,0,0,0,0,[]],51,2546,[],[[0],[1],[1,100,""]],[0,0]],[[7484,1136,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,2547,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[7484,1168,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,2548,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[7484,1200,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,2549,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[7484,1072,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,2553,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[7484,1104,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,2554,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[7484,1040,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,2555,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[5536,816,0,1400,336,0,0,1,0.5,0.5,0,0,[]],50,2550,[[-1],[0],[0],[0],[0],[0],[0]],[[0],[1,1,1,1,"B 4000;",250,20,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[7280,584,0,440,504,0,1.570796370506287,1,0,0,0,0,[]],51,2528,[],[[0],[1],[1,100,""]],[0,0]],[[7176,1072,0,144,9,0,1.570796370506287,1,0,0,0,0,[]],51,2552,[],[[0],[1],[1,100,""]],[0,0]],[[7040,864,0,264,192,0,1.570796370506287,1,0,0,0,0,[]],51,2556,[],[[0],[1],[1,100,""]],[0,0]],[[7024,1144,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2557,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[6992,1144,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2558,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[6960,1144,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2559,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[6928,1144,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2560,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[6896,1144,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2561,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[6864,1144,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2562,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[6776,584,0,72,8,0,0,1,0,0,0,0,[]],45,2563,[],[[0],[1]],[0,0]],[[4464,488,0,97,199,0,0,1,0.5257731676101685,0.4974874258041382,0,0,[]],44,2564,[],[[0]],[0,"Default",0,1]],[[6760,1200,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2565,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[6728,1200,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2566,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[6696,1200,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2567,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[6664,1200,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2568,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3832,504,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2529,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3800,504,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,3445,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3768,504,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,3446,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3736,504,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,3447,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3704,504,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,3449,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3672,504,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,3450,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3640,504,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,3451,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3608,504,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,3452,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3448,504,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,3458,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3416,504,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,3459,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3384,504,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,3460,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3352,504,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,3461,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[6344,584,0,432,440,0,0,1,0,0,0,0,[]],51,2527,[],[[0],[1],[1,100,""]],[0,0]],[[6312,1200,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,3462,[[1],[0]],[[0]],[0,"Default",0,1]],[[8432,584,0,136,856,0,1.570796370506287,1,0,0,0,0,[]],51,3463,[],[[0],[1],[1,100,""]],[0,0]],[[6256,584,0,96,8,0,0,1,0,0,0,0,[]],45,2537,[],[[0],[1]],[0,0]],[[4143,449,0,9,135,0,0,1,0,0,0,0,[]],48,5415,[],[[0],[1]],[0,0]],[[4144,504,0,24,100,0,-1.570796489715576,1,0.5,0.5,0,0,[]],50,5416,[[-1],[0],[0],[0],[0],[4],[1]],[[0],[1,0,1,1,"F 2000",500,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[151,475,0,64,64,0,0,1,0.5,0.5,0,0,[]],60,2249,[["level32"]],[[1],[400,-200,800,0,0,0],[0,0,0,1,1]],[0,"Default",0,1]],[[280,387,0,288,117,0,0,1,0,0,0,0,[[]]],61,5623,[],[[1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>","1",7,0,60,0,0,0,0,0,"",-1,0]],[[209.6012268066406,453.3729553222656,0,32,29.4512939453125,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,1432,[[-1],[0],[0],[0],[0],[0],[0]],[[0],[1,1,1,1,"W 10; F 10000",7000,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[8150.38916015625,1024.45556640625,0,311.1142578125,9,0,-1.570796489715576,1,0,0,0,0,[]],51,2538,[],[[0],[1],[1,100,""]],[0,0]]],[]],["UI",2,780239747127872,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[240,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3097,[["right"]],[[0,1,0,1,1]],[0,"Default",0,1]],[[80,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3098,[["left"]],[[0,1,0,1,1]],[0,"Default",1,1]],[[560,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3099,[["up"]],[[1,1,1,1,1]],[0,"Default",3,1]],[[400,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3100,[["down"]],[[1,1,1,1,1]],[0,"Default",2,1]]],[]],["End Card",3,371333309011920,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],78,2607,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[12.04449462890625,194,0,615.9109497070313,67,0,0,1,0,0,0,0,[]],79,2608,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Timer for this level",2.5,0,0,0,0,0,-10,0,"",-1,0]],[[17.546875,248,0,604.90625,105,0,0,1,0,0,0,0,[]],80,2610,[[0],[0],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","13:40:40",4,0,63,50,0,0,-10,0,"",-1,0]],[[115.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,2611,[[0],[1],[0],[0],["replay"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Replay",""],[""],[2,2,0,0,0],["",""]],[0,"Replay",0,1]],[[524.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3086,[[0],[1],[0],[0],["next"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Next",""],[""],[2,2,0,0,0],["",""]],[0,"Next",0,1]],[[320.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3087,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > Back","Level Menu"],[""],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[320.75,521.8050537109375,0,384,96,0,0,1,0.5,0.5,0,0,[]],70,3088,[[1],[1],[0],[0],[""],["{\"size\": 22, \"left\": 70, \"right\": 18, \"alignY\": 60}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > DownloadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"DownloadReplay",0,1]]],[]],["Pause",4,324738382487352,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-310,678,0,274,31,0,0,1,0,0,0,0,[]],168,3089,[],[],[".ovo",0,1,"file"]],[[320,320,0,425,250,0,0,1,0.5,0.5,0,0,[]],82,3090,[],[[6,1,"",300,1,1,"",300,"overlay",1,"PauseClose",1,1]],[0,"Default",0,1]],[[214,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3091,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"",""],["PauseClose"],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[426,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3092,[[0],[1],[0],[0],["quit"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > GiveUp",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[115.5,202,0,409,118,0,0,1,0,0,0,0,[]],83,3093,[[1],[1],["pause"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Pause",4,0,57,50,0,0,-10,0,"",-1,0]],[[320.5,88,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3094,[[1],[1],[0],[0],["loadreplay"],["{\"size\": 16, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > LoadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"LoadReplay",0,1]],[[320.5,157,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3095,[[1],[0],[0],[0],["toggledebug"],["{\"size\": 15, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Debug > Toggle",""],[""],[2,2,0,0,0],["",""]],[0,"ToggleDebug",0,1]],[[78,448,0,484,134,0,0,1,0,0,0,0,[]],193,3096,[],[],[0,"Default",0,1]]],[]],["Overlay",5,501210784048105,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[432,4,0,203.0009155273438,64,0,0,1,0,0,0,0,[]],107,5488,[],[[1,0,1,0,1]],[2,2,2,2,0,1,0,0,1]],[[432,4,0,203,64,0,0,1,0,0,0,0,[]],84,3101,[[0],[0],[""],["en-us"],[0],[1],[1],["{\"alignY\": 85, \"alignX\": 45, \"size\": 28}"],[0],[1],[0],[0],[0]],[["",""],[1,0,1,0,1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",2,0,100,50,0,0,-10,0,"",-1,0]],[[88,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3102,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Pause",""],[""],[0,0,0,0,1],["",""]],[0,"Pause",0,1]],[[158,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3103,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Replay","1"],[""],[0,0,0,0,1],["",""]],[0,"Reload",0,1]]],[]],["End Game",6,420901738204466,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],85,3104,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[73,194,0,494,72,0,0,1,0,0,0,0,[]],86,3105,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],["{alignY:50}"],[0],[1],[0],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Your final time",2.5,0,50,50,0,0,-10,0,"",-1,0]],[[320,403,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3106,[[0],[1],[0],[0],[""],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Quit",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[73,243,0,494,85,0,0,1,0,0,0,0,[]],87,3108,[[0],[1],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",3,0,50,50,0,0,-10,0,"",-1,0]],[[73,318,0,494,25,0,0,1,0,0,0,0,[]],86,5480,[[1],[1],["tryagainhardmode"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Try again in hard mode!",1,0,50,50,0,0,-2,0,"",-1,0]]],[]],["Banner",7,854512788954366,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-237,-189,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,3109,[],[["overlay"]],[0,"Default",0,1]]],[]],["AdPlaying",8,663465588393400,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,-203.5,0,250,97,0,0,1,0.5,0.5,0,0,[]],125,390,[],[[6,1,"",300,1,1,"",300,"overlay",1,"",1,1],[]],[0,"Default",0,1]],[[209,-275,0,222,139,0,0,1,0,0,0,0,[]],86,391,[[1],[1],["adplaying"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","An ad is playing right now...",1.2,0,50,50,0,0,-2,0,"",-1,0]],[[-154.5756988525391,-294.3137512207031,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,5508,[],[["overlay"]],[0,"Default",0,1]]],[]]],[],[]],["Level 33",3000,9000,true,"Levels",415272689974567,[["Background",0,158361417687801,true,[255,255,255],false,0,0,1,false,false,1,0,0,[[[2788.39111328125,4075,0,144,9,0,0,1,0,0,0,0,[]],51,5453,[],[[0],[1],[1,100,""]],[0,0]]],[]],["Layer 0",1,594181474817275,true,[255,255,255],true,1,1,1,false,false,1,0,0,[[[1774,760,0,64,64,0,0,1,0.5,0.5,0,0,[]],60,3136,[["level33"]],[[1],[400,-200,800,0,0,0],[0,0,0,1,1]],[0,"Default",0,1]],[[223,584,0,60.93439102172852,60.93439102172852,0,0,1,0.5,0.5,0,0,[]],53,6,[["Selection exam"],[""],[0]],[],[1,"Default",0,1]],[[439,809,0,32,64,0,0,1,0.5,0.5,0,0,[]],42,7,[["run"],[0],[1],[1],[0],[0.8],[0.5],[0],[1],[0],[0],[0],["astronaut"],[2],[0],[0],[0],[""],[0],[3],[0],[0],[0],[0],[0],[0],[0]],[[330,1500,1500,650,1500,1000,0,0,0,1],[],[0,0],[0,10000,360,1]],[0,"Default",0,1]],[[304,2840,0,912,9,0,0,1,0,0,0,0,[]],51,2597,[],[[0],[1],[1,100,""]],[0,0]],[[528,2632,0,920,9,0,0,1,0,0,0,0,[]],51,8,[],[[0],[1],[1,100,""]],[0,0]],[[208,2632,0,680,9,0,1.570796370506287,1,0,0,0,0,[]],51,2600,[],[[0],[1],[1,100,""]],[0,0]],[[336,2640,0,200,9,0,1.570796370506287,1,0,0,0,0,[]],48,2599,[],[[0],[1]],[0,0]],[[1752,2792,0,32,32,0,0,1,0.5,0.5,0,0,[]],49,2601,[[1],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[0,"Default",0,1]],[[1984,2640,0,208,9,0,1.570796370506287,1,0,0,0,0,[]],51,2602,[],[[0],[1],[1,100,""]],[0,0]],[[1968,2760,0,64,32,0,3.141592741012573,1,0.125,0.5,0,0,[]],55,2603,[[1],[300]],[[1],[300,1,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[336,2752,0,56,16,0,-1.570796489715576,1,0.5,0.5,0,0,[]],50,9,[[-1],[0],[0],[0],[0],[1],[0]],[[0],[1,0,1,1,"F 200",75,40,0,400,100,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1216,2840,0,768,9,0,0,1,0,0,0,0,[]],51,10,[],[[0],[1],[1,100,""]],[0,0]],[[1440,2632,0,544,9,0,0,1,0,0,0,0,[]],51,11,[],[[0],[1],[1,100,""]],[0,0]],[[872,2824,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,12,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[904,2824,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,13,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1104,2824,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,14,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1136,2824,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,15,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1344,2824,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,16,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1376,2824,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,17,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[208,2840,0,96,9,0,0,1,0,0,0,0,[]],52,2222,[],[[0],[0]],[0,0]],[[312,2840,0,504,9,0,1.570796370506287,1,0,0,0,0,[]],51,18,[],[[0],[1],[1,100,""]],[0,0]],[[40,3456,0,584,9,0,0,1,0,0,0,0,[]],51,19,[],[[0],[1],[1,100,""]],[0,0]],[[304,3336,0,128,9,0,0,1,0,0,0,0,[]],51,20,[],[[0],[1],[1,100,""]],[0,0]],[[432,3064,0,280,9,0,1.570796370506287,1,0,0,0,0,[]],51,21,[],[[0],[1],[1,100,""]],[0,0]],[[744,3072,0,752,9,0,1.570796370506287,1,0,0,0,0,[]],51,22,[],[[0],[1],[1,100,""]],[0,0]],[[744,3072,0,320,9,0,3.141592741012573,1,0,0,0,0,[]],51,23,[],[[0],[1],[1,100,""]],[0,0]],[[600,3304,0,40,96,0,3.141592741012573,1,0,0,0,0,[]],51,24,[],[[0],[1],[1,100,""]],[0,0]],[[56,3432,0,64,32,0,0,1,0.125,0.5,0,0,[]],55,25,[[1],[-1]],[[1],[300,1,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[40,3312,0,168,9,0,0,1,0,0,0,0,[]],51,26,[],[[0],[1],[1,100,""]],[0,0]],[[48,3312,0,152,9,0,1.570796370506287,1,0,0,0,0,[]],51,29,[],[[0],[1],[1,100,""]],[0,0]],[[584,3304,0,104,9,0,1.570796370506287,1,0,0,0,0,[]],52,30,[],[[0],[0]],[0,0]],[[584,3192,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,31,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2936,3184,0,900.101806640625,9,0,1.570796370506287,1,0,0,0,0,[]],51,32,[],[[0],[1],[1,100,""]],[0,0]],[[2872,3976,0,97,199,0,0,1,0.5257731676101685,0.4974874258041382,0,0,[]],44,36,[],[[0]],[0,"Default",0,1]],[[2792,3184,0,128,9,0,1.570796370506287,1,0,0,0,0,[]],51,39,[],[[0],[1],[1,100,""]],[0,0]],[[2792,3184,0,144,9,0,0,1,0,0,0,0,[]],51,50,[],[[0],[1],[1,100,""]],[0,0]],[[584,3408,0,48,9,0,1.570796370506287,1,0,0,0,0,[]],45,59,[],[[0],[1]],[0,0]],[[1000,2720,0,231,64,0,0,1,0,0,0,0,[]],46,69,[[1],[1],[""],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Step 1 is...",1,0,50,0,0,0,0,0,"",-1,0]],[[1400,2216,0,432,64,0,0,1,0,0,0,0,[]],46,84,[[1],[1],[""],["en-us"],[0],[1],[0],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","ROCKETS!",3,0,50,0,0,0,0,0,"",-1,0]],[[1640,2256,0,56,16,0,-1.570796489715576,1,0.5,0.5,0,0,[]],50,85,[[-1],[0],[0],[0],[0],[1],[0]],[[0],[1,0,1,1,"B 460",1000,0,0,400,100,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[56,3368,0,64,32,0,0,1,0.125,0.5,0,0,[]],55,86,[[1],[-1]],[[1],[300,1,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[256,3245,0,96,96,0,0,1,0.5,0.5,0,0,[]],49,87,[[2],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[0,"Default",0,1]],[[208,3392,0,64,9,0,1.570796370506287,1,0,0,0,0,[]],48,88,[],[[0],[1]],[0,0]],[[208,3320,0,72,9,0,1.570796370506287,1,0,0,0,0,[]],48,89,[],[[0],[1]],[0,0]],[[208,3352,0,56,16,0,-1.570796489715576,1,0.5,0.5,0,0,[]],50,90,[[-1],[0],[0],[0],[0],[2],[0]],[[0],[1,0,1,1,"F 64",1000,0,0,400,100,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[208,3424,0,56,16,0,-1.570796489715576,1,0.5,0.5,0,0,[]],50,92,[[-1],[0],[0],[0],[0],[2],[0]],[[0],[1,0,1,1,"B 64",1000,0,0,400,100,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[352,3728,0,56,16,0,-1.570796489715576,1,0.5,0.5,0,0,[]],50,93,[[-1],[0],[0],[0],[0],[2],[0]],[[0],[1,0,1,1,"F 360",1000,0,0,400,100,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[240,3720,0,231,64,0,0,1,0,0,0,0,[]],46,94,[[1],[1],[""],["en-us"],[0],[1],[0],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","MORE ROCKETS!",1.5,0,50,0,0,0,0,0,"",-1,0]],[[296,3336,0,160,9,0,0,1,0,0,0,0,[]],51,95,[],[[0],[1],[1,100,""]],[0,0]],[[296,3344,0,2,2,0,0,1,0.5,0.5,0,0,[]],50,96,[[-1],[0],[0],[0],[0],[2],[0]],[[0],[1,0,1,1,"F 120",1000,0,0,400,100,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[200,2632,0,176,9,0,0,1,0,0,0,0,[]],51,97,[],[[0],[1],[1,100,""]],[0,0]],[[375.9999389648438,896,0,1744,9,0,1.570796370506287,1,0,0,0,0,[]],51,202,[],[[0],[1],[1,100,""]],[0,0]],[[536.0000610351563,896,0,1744,9,0,1.570796370506287,1,0,0,0,0,[]],51,369,[],[[0],[1],[1,100,""]],[0,0]],[[344,744,0,231,64,0,0,1,0,0,0,0,[]],46,370,[[1],[1],[""],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Take part in the OvO space Program!",1,0,50,0,0,0,0,0,"",-1,0]],[[320,728,0,272,9,0,0,1,0,0,0,0,[]],51,381,[],[[0],[1],[1,100,""]],[0,0]],[[528,896,0,72,9,0,0,1,0,0,0,0,[]],51,382,[],[[0],[1],[1,100,""]],[0,0]],[[312,896,0,64,9,0,0,1,0,0,0,0,[]],51,399,[],[[0],[1],[1,100,""]],[0,0]],[[320,728,0,176,9,0,1.570796370506287,1,0,0,0,0,[]],51,400,[],[[0],[1],[1,100,""]],[0,0]],[[600,728,0,176,9,0,1.570796370506287,1,0,0,0,0,[]],51,421,[],[[0],[1],[1,100,""]],[0,0]],[[360,2736,0,231,64,0,0,1,0,0,0,0,[]],46,423,[[1],[1],[""],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","This way ---->",1,0,50,0,0,0,0,0,"",-1,0]],[[424,2728,0,56,16,0,-1.570796489715576,1,0.5,0.5,0,0,[]],50,424,[[-1],[0],[0],[0],[0],[1],[0]],[[0],[1,0,1,1,"F 600",1000,0,0,400,100,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[2792,3424,0,136,9,0,0,1,0,0,0,0,[]],52,543,[],[[0],[0]],[0,0]],[[2792,3424,0,660.101806640625,9,0,1.570796370506287,1,0,0,0,0,[]],51,546,[],[[0],[1],[1,100,""]],[0,0]],[[624,3456,0,680,9,0,1.570796370506287,1,0,0,0,0,[]],51,547,[],[[0],[1],[1,100,""]],[0,0]],[[616,4128,0,1792,9,0,0,1,0,0,0,0,[]],51,2710,[],[[0],[1],[1,100,""]],[0,0]],[[736,3816,0,1504,9,0,0,1,0,0,0,0,[]],51,2711,[],[[0],[1],[1,100,""]],[0,0]],[[2392,4112,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,2712,[[1],[0]],[[0]],[0,"Default",0,1]],[[680,3648,0,96,96,0,0,1,0.5,0.5,0,0,[]],49,2713,[[4],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[0,"Default",0,1]],[[792,3832,0,64,32,0,1.570796370506287,1,0.125,0.5,0,0,[]],55,2714,[[1],[325]],[[1],[300,0.5,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[840,3832,0,64,32,0,1.570796370506287,1,0.125,0.5,0,0,[]],55,2715,[[1],[325]],[[1],[300,0.5,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[888,3832,0,64,32,0,1.570796370506287,1,0.125,0.5,0,0,[]],55,2716,[[1],[325]],[[1],[300,0.5,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[944,3832,0,64,32,0,1.570796370506287,1,0.125,0.5,0,0,[]],55,2717,[[1],[325]],[[1],[300,0.5,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[1000,3832,0,64,32,0,1.570796370506287,1,0.125,0.5,0,0,[]],55,2718,[[1],[325]],[[1],[300,0.5,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[1056,3832,0,64,32,0,1.570796370506287,1,0.125,0.5,0,0,[]],55,2719,[[1],[325]],[[1],[300,0.5,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[1112,3832,0,64,32,0,1.570796370506287,1,0.125,0.5,0,0,[]],55,2720,[[1],[325]],[[1],[300,0.5,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[1168,3832,0,64,32,0,1.570796370506287,1,0.125,0.5,0,0,[]],55,2721,[[1],[325]],[[1],[300,0.5,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[432,4456,0,2184,176,0,0,1,0,0,0,0,[]],46,2722,[[1],[1],[""],["en-us"],[0],[1],[0],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","MORE ROCKEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEETS!",2.5,0,50,0,0,0,0,0,"",-1,0]],[[1080,4544,0,50,50,0,-1.570796489715576,1,0.5,0.5,0,0,[]],50,2723,[[-1],[0],[0],[0],[0],[4],[0]],[[0],[1,0,1,1,"F 360",1000,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1216,3832,0,64,32,0,1.570796370506287,1,0.125,0.5,0,0,[]],55,2724,[[1],[325]],[[1],[300,0.5,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[1272,3832,0,64,32,0,1.570796370506287,1,0.125,0.5,0,0,[]],55,2725,[[1],[325]],[[1],[300,0.5,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[1328,3832,0,64,32,0,1.570796370506287,1,0.125,0.5,0,0,[]],55,2726,[[1],[325]],[[1],[300,0.5,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[1376,3832,0,64,32,0,1.570796370506287,1,0.125,0.5,0,0,[]],55,2727,[[1],[325]],[[1],[300,0.5,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[1424,3832,0,64,32,0,1.570796370506287,1,0.125,0.5,0,0,[]],55,2728,[[1],[325]],[[1],[300,0.5,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[1472,3832,0,64,32,0,1.570796370506287,1,0.125,0.5,0,0,[]],55,2729,[[1],[325]],[[1],[300,0.5,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[1528,3832,0,64,32,0,1.570796370506287,1,0.125,0.5,0,0,[]],55,2730,[[1],[325]],[[1],[300,0.5,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[1584,3832,0,64,32,0,1.570796370506287,1,0.125,0.5,0,0,[]],55,2731,[[1],[325]],[[1],[300,0.5,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[1640,3832,0,64,32,0,1.570796370506287,1,0.125,0.5,0,0,[]],55,2732,[[1],[325]],[[1],[300,0.5,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[1696,3832,0,64,32,0,1.570796370506287,1,0.125,0.5,0,0,[]],55,2733,[[1],[325]],[[1],[300,0.5,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[1752,3832,0,64,32,0,1.570796370506287,1,0.125,0.5,0,0,[]],55,2734,[[1],[325]],[[1],[300,0.5,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[1800,3832,0,64,32,0,1.570796370506287,1,0.125,0.5,0,0,[]],55,2735,[[1],[325]],[[1],[300,0.5,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[1856,3832,0,64,32,0,1.570796370506287,1,0.125,0.5,0,0,[]],55,2736,[[1],[325]],[[1],[300,0.5,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[1912,3832,0,64,32,0,1.570796370506287,1,0.125,0.5,0,0,[]],55,2737,[[1],[325]],[[1],[300,0.5,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[1960,3832,0,64,32,0,1.570796370506287,1,0.125,0.5,0,0,[]],55,2738,[[1],[325]],[[1],[300,0.5,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[2008,3832,0,64,32,0,1.570796370506287,1,0.125,0.5,0,0,[]],55,2739,[[1],[325]],[[1],[300,0.5,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[2056,3832,0,64,32,0,1.570796370506287,1,0.125,0.5,0,0,[]],55,2740,[[1],[325]],[[1],[300,0.5,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[2112,3832,0,64,32,0,1.570796370506287,1,0.125,0.5,0,0,[]],55,2741,[[1],[325]],[[1],[300,0.5,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[2168,3832,0,64,32,0,1.570796370506287,1,0.125,0.5,0,0,[]],55,2742,[[1],[325]],[[1],[300,0.5,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[452,896,0,9,76,0,1.570796370506287,1,0,0,0,0,[]],48,371,[],[[0],[1]],[0,0]],[[528,896,0,9,76,0,1.570796370506287,1,0,0,0,0,[]],48,422,[],[[0],[1]],[0,0]],[[498,904,0,50,32,0,0,1,0.5,0.5,0,0,[]],50,1660,[[-1],[0],[0],[0],[0],[0],[0]],[[0],[1,1,0,1,"W 1;R 90;F 100;L 90;F 300",100,0,0,360,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[408,904,0,50,32,0,0,1,0.5,0.5,0,0,[]],50,1927,[[-1],[0],[0],[0],[0],[0],[0]],[[0],[1,1,0,1,"W 1;R 90; F 100;R 90; F 300",100,0,0,360,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[488,768,0,50,32,0,0,1,0.5,0.5,0,0,[]],50,98,[[-1],[0],[0],[0],[0],[0],[0]],[[0],[1,1,1,1,"W 10 ; F 1000",1000,0,0,360,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1776,760,0,50,32,0,0,1,0.5,0.5,0,0,[]],50,3137,[[-1],[0],[0],[0],[0],[0],[0]],[[0],[1,1,1,1,"W 10 ; B 1325",1000,0,0,360,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[314,582,0,288,114,0,0,1,0,0,0,0,[[]]],61,5624,[],[[1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>","1",7,0,60,0,0,0,0,0,"",-1,0]]],[]],["UI",2,801764278645348,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[240,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3097,[["right"]],[[0,1,0,1,1]],[0,"Default",0,1]],[[80,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3098,[["left"]],[[0,1,0,1,1]],[0,"Default",1,1]],[[560,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3099,[["up"]],[[1,1,1,1,1]],[0,"Default",3,1]],[[400,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3100,[["down"]],[[1,1,1,1,1]],[0,"Default",2,1]]],[]],["End Card",3,907649229126293,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],78,2607,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[12.04449462890625,194,0,615.9109497070313,67,0,0,1,0,0,0,0,[]],79,2608,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Timer for this level",2.5,0,0,0,0,0,-10,0,"",-1,0]],[[17.546875,248,0,604.90625,105,0,0,1,0,0,0,0,[]],80,2610,[[0],[0],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","13:40:40",4,0,63,50,0,0,-10,0,"",-1,0]],[[115.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,2611,[[0],[1],[0],[0],["replay"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Replay",""],[""],[2,2,0,0,0],["",""]],[0,"Replay",0,1]],[[524.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3086,[[0],[1],[0],[0],["next"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Next",""],[""],[2,2,0,0,0],["",""]],[0,"Next",0,1]],[[320.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3087,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > Back","Level Menu"],[""],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[320.75,521.8050537109375,0,384,96,0,0,1,0.5,0.5,0,0,[]],70,3088,[[1],[1],[0],[0],[""],["{\"size\": 22, \"left\": 70, \"right\": 18, \"alignY\": 60}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > DownloadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"DownloadReplay",0,1]]],[]],["Pause",4,596912154178111,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-310,678,0,274,31,0,0,1,0,0,0,0,[]],168,3089,[],[],[".ovo",0,1,"file"]],[[320,320,0,425,250,0,0,1,0.5,0.5,0,0,[]],82,3090,[],[[6,1,"",300,1,1,"",300,"overlay",1,"PauseClose",1,1]],[0,"Default",0,1]],[[214,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3091,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"",""],["PauseClose"],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[426,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3092,[[0],[1],[0],[0],["quit"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > GiveUp",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[115.5,202,0,409,118,0,0,1,0,0,0,0,[]],83,3093,[[1],[1],["pause"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Pause",4,0,57,50,0,0,-10,0,"",-1,0]],[[320.5,88,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3094,[[1],[1],[0],[0],["loadreplay"],["{\"size\": 16, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > LoadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"LoadReplay",0,1]],[[320.5,157,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3095,[[1],[0],[0],[0],["toggledebug"],["{\"size\": 15, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Debug > Toggle",""],[""],[2,2,0,0,0],["",""]],[0,"ToggleDebug",0,1]],[[78,448,0,484,134,0,0,1,0,0,0,0,[]],193,3096,[],[],[0,"Default",0,1]]],[]],["Overlay",5,355579686214278,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[432,4,0,203.0009155273438,64,0,0,1,0,0,0,0,[]],107,5488,[],[[1,0,1,0,1]],[2,2,2,2,0,1,0,0,1]],[[432,4,0,203,64,0,0,1,0,0,0,0,[]],84,3101,[[0],[0],[""],["en-us"],[0],[1],[1],["{\"alignY\": 85, \"alignX\": 45, \"size\": 28}"],[0],[1],[0],[0],[0]],[["",""],[1,0,1,0,1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",2,0,100,50,0,0,-10,0,"",-1,0]],[[88,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3102,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Pause",""],[""],[0,0,0,0,1],["",""]],[0,"Pause",0,1]],[[158,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3103,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Replay","1"],[""],[0,0,0,0,1],["",""]],[0,"Reload",0,1]]],[]],["End Game",6,719178086121515,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],85,3104,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[73,194,0,494,72,0,0,1,0,0,0,0,[]],86,3105,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],["{alignY:50}"],[0],[1],[0],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Your final time",2.5,0,50,50,0,0,-10,0,"",-1,0]],[[320,403,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3106,[[0],[1],[0],[0],[""],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Quit",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[73,243,0,494,85,0,0,1,0,0,0,0,[]],87,3108,[[0],[1],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",3,0,50,50,0,0,-10,0,"",-1,0]],[[73,318,0,494,25,0,0,1,0,0,0,0,[]],86,5480,[[1],[1],["tryagainhardmode"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Try again in hard mode!",1,0,50,50,0,0,-2,0,"",-1,0]]],[]],["Banner",7,589988977314873,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-237,-189,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,3109,[],[["overlay"]],[0,"Default",0,1]]],[]],["AdPlaying",8,106108338502018,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,-203.5,0,250,97,0,0,1,0.5,0.5,0,0,[]],125,390,[],[[6,1,"",300,1,1,"",300,"overlay",1,"",1,1],[]],[0,"Default",0,1]],[[209,-275,0,222,139,0,0,1,0,0,0,0,[]],86,391,[[1],[1],["adplaying"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","An ad is playing right now...",1.2,0,50,50,0,0,-2,0,"",-1,0]],[[-154.5756988525391,-294.3137512207031,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,5508,[],[["overlay"]],[0,"Default",0,1]]],[]]],[],[]],["Level 34",3000,4000,true,"Levels",187066840962196,[["Background",0,357380478704912,true,[255,255,255],false,0,0,1,false,false,1,0,0,[],[]],["Layer 0",1,480091760742559,true,[255,255,255],true,1,1,1,false,false,1,0,0,[[[585,519,0,60.93439102172852,60.93439102172852,0,0,1,0.5,0.5,0,0,[]],53,762,[["Test of intelligence"],[""],[0]],[],[1,"Default",0,1]],[[1080,8,0,1048,9,0,1.570796370506287,1,0,0,0,0,[]],51,763,[],[[0],[1],[1,100,""]],[0,0]],[[936,1048,0,136,9,0,0,1,0,0,0,0,[]],52,764,[],[[0],[0]],[0,0]],[[936.0000610351563,8,0,1048,9,0,1.570796370506287,1,0,0,0,0,[]],51,765,[],[[0],[1],[1,100,""]],[0,0]],[[48,1256,0,888,16,0,0,1,0,0,0,0,[]],51,980,[],[[0],[1],[1,100,""]],[0,0]],[[1080,1256,0,920,16,0,0,1,0,0,0,0,[]],51,981,[],[[0],[1],[1,100,""]],[0,0]],[[936,1256,0,144,9,0,0,1,0,0,0,0,[]],48,982,[],[[0],[1]],[0,0]],[[1072,1048,0,208,9,0,0,1,0,0,0,0,[]],51,983,[],[[0],[1],[1,100,""]],[0,0]],[[728,1048,0,208,9,0,0,1,0,0,0,0,[]],51,984,[],[[0],[1],[1,100,""]],[0,0]],[[1280,656,0,400,9,0,1.570796370506287,1,0,0,0,0,[]],51,990,[],[[0],[1],[1,100,""]],[0,0]],[[2000,656,0,608,9,0,1.570796370506287,1,0,0,0,0,[]],51,991,[],[[0],[1],[1,100,""]],[0,0]],[[1272,648,0,728,9,0,0,1,0,0,0,0,[]],51,992,[],[[0],[1],[1,100,""]],[0,0]],[[1984,1168,0,64,32,0,3.141592741012573,1,0.125,0.5,0,0,[]],55,993,[[1],[200]],[[1],[300,1,1,180,0,0,500,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[1984,816,0,64,32,0,3.141592741012573,1,0.125,0.5,0,0,[]],55,994,[[1],[200]],[[1],[300,1,1,180,0,0,500,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[1288,856,0,64,32,0,0,1,0.125,0.5,0,0,[]],55,1005,[[1],[200]],[[1],[300,1,1,180,0,0,500,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[1400,664,0,64,32,0,1.570796370506287,1,0.125,0.5,0,0,[]],55,2674,[[1],[200]],[[1],[300,1,1,180,0,0,500,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[1792,1048,0,88,9,0,1.570796370506287,1,0,0,0,0,[]],51,2675,[],[[0],[1],[1,100,""]],[0,0]],[[1456,816,0,64,9,0,1.570796370506287,1,0,0,0,0,[]],51,2676,[],[[0],[1],[1,100,""]],[0,0]],[[1792,904,0,64,9,0,1.570796370506287,1,0,0,0,0,[]],51,2677,[],[[0],[1],[1,100,""]],[0,0]],[[1496,1112,0,64,9,0,1.570796370506287,1,0,0,0,0,[]],51,2678,[],[[0],[1],[1,100,""]],[0,0]],[[1640,984,0,64,9,0,1.570796370506287,1,0,0,0,0,[]],51,2679,[],[[0],[1],[1,100,""]],[0,0]],[[1544,792,0,32,32,0,0,1,0.5,0.5,0,0,[]],49,2680,[[1],[1],[1],[-1],[-1],[999],[0]],[[0],[]],[0,"Default",0,1]],[[936,1264,0,144,9,0,0,1,0,0,0,0,[]],48,2681,[],[[0],[1]],[0,0]],[[1040,1252,0,16,16,0,0,1,0.5,0.5,0,0,[]],50,2682,[[-1],[0],[0],[0],[0],[1],[0]],[[0],[1,0,1,1,"F 160",1000,0,0,400,100,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1001,193,0,32,64,0,0,1,0.5,0.5,0,0,[]],42,2683,[["run"],[0],[1],[1],[0],[0.8],[0.5],[0],[1],[0],[0],[0],[""],[2],[0],[0],[0],[""],[0],[3],[0],[0],[0],[0],[0],[0],[0]],[[330,1500,1500,650,1500,1000,0,0,0,1],[],[0,0],[0,10000,360,1]],[0,"Default",0,1]],[[56,656,0,616,9,0,1.570796370506287,1,0,0,0,0,[]],51,2684,[],[[0],[1],[1,100,""]],[0,0]],[[736,648,0,408,9,0,1.570796370506287,1,0,0,0,0,[]],51,2685,[],[[0],[1],[1,100,""]],[0,0]],[[48,648,0,680,9,0,0,1,0,0,0,0,[]],51,2686,[],[[0],[1],[1,100,""]],[0,0]],[[152,976,0,480,9,0,0,1,0,0,0,0,[]],51,2687,[],[[0],[1],[1,100,""]],[0,0]],[[632,976,0,96,8,0,0,1,0,0,0,0,[]],45,2688,[],[[0],[1]],[0,0]],[[440,1064,0,192,9,0,1.570796370506287,1,0,0,0,0,[]],51,2689,[],[[0],[1],[1,100,""]],[0,0]],[[424,1240,0,64,32,0,3.141592741012573,1,0.125,0.5,0,0,[]],55,2690,[[1],[200]],[[1],[300,1,1,180,0,0,500,1,1],[0,10000,90,1]],[0,"Default",0,1]],[[448,1240,0,64,32,0,0,1,0.125,0.5,0,0,[]],55,2691,[[1],[225]],[[1],[300,1,1,180,0,0,500,1,1],[0,10000,90,1]],[0,"Default",0,1]],[[160,976,0,224,9,0,1.570796370506287,1,0,0,0,0,[]],51,2692,[],[[0],[1],[1,100,""]],[0,0]],[[192,664,0,64,32,0,1.570796370506287,1,0.125,0.5,0,0,[]],55,2693,[[1],[225]],[[1],[300,1,1,180,0,0,500,1,1],[0,10000,90,1]],[0,"Default",0,1]],[[296,664,0,64,32,0,1.570796370506287,1,0.125,0.5,0,0,[]],55,2694,[[1],[225]],[[1],[300,1,1,180,0,0,500,1,1],[0,10000,90,1]],[0,"Default",0,1]],[[400,664,0,64,32,0,1.570796370506287,1,0.125,0.5,0,0,[]],55,2695,[[1],[225]],[[1],[300,1,1,180,0,0,500,1,1],[0,10000,90,1]],[0,"Default",0,1]],[[512,664,0,64,32,0,1.570796370506287,1,0.125,0.5,0,0,[]],55,2696,[[1],[225]],[[1],[300,1,1,180,0,0,500,1,1],[0,10000,90,1]],[0,"Default",0,1]],[[680,888,0,32,32,0,0,1,0.5,0.5,0,0,[]],49,2698,[[2],[1],[1],[-1],[-1],[999],[0]],[[0],[]],[0,"Default",0,1]],[[976,1272,0,16,16,0,0,1,0.5,0.5,0,0,[]],50,2699,[[-1],[0],[0],[0],[0],[2],[0]],[[0],[1,0,1,1,"F 160",1000,0,0,400,100,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[856,1112,0,312,80,0,0,1,0,0,0,0,[]],46,3141,[[1],[1],[""],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","You will have to outrange rockets however you can",1,0,50,0,0,0,0,0,"",-1,0]],[[1576,880,0,64,9,0,0,1,0,0,0,0,[]],51,3138,[],[[0],[1],[1,100,""]],[0,0]],[[1088,1264,0,544,9,0,1.570796370506287,1,0,0,0,0,[]],51,3139,[],[[0],[1],[1,100,""]],[0,0]],[[936,1272,0,536,9,0,1.570796370506287,1,0,0,0,0,[]],51,3140,[],[[0],[1],[1,100,""]],[0,0]],[[1016,8,0,97,199,0,0,1,0.5257731676101685,0.4974874258041382,0,0,[]],44,3142,[],[[0]],[0,"Default",0,1]],[[1520,2432,0,8,32,0,0,1,0.5,0.5,0,0,[]],50,3224,[[-1],[0],[0],[0],[0],[3],[0]],[[0],[1,0,1,1,"F 60",20,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[928,1800,0,160,9,0,0,1,0,0,0,0,[]],52,3230,[],[[0],[0]],[0,0]],[[824,1800,0,216,8,0,1.570796370506287,1,0,0,0,0,[]],51,3231,[],[[0],[1],[1,100,""]],[0,0]],[[816,1800,0,112,8,0,0,1,0,0,0,0,[]],51,3232,[],[[0],[1],[1,100,""]],[0,0]],[[816,2008,0,672,8,0,0,1,0,0,0,0,[]],51,3233,[],[[0],[1],[1,100,""]],[0,0]],[[1088,1800,0,680,8,0,0,1,0,0,0,0,[]],51,3234,[],[[0],[1],[1,100,""]],[0,0]],[[1552,2008,0,216,8,0,0,1,0,0,0,0,[]],51,3235,[],[[0],[1],[1,100,""]],[0,0]],[[1768,1800,0,208,8,0,1.570796370506287,1,0,0,0,0,[]],51,3236,[],[[0],[1],[1,100,""]],[0,0]],[[832,1912,0,64,32,0,0,1,0.125,0.5,0,0,[]],55,3237,[[1],[250]],[[0],[300,1,1,180,0,0,500,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[1112,1992,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3239,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1376,1992,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3240,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1256,1824,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,3241,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1552,2008,0,8,64,0,1.570796370506287,1,0,0,0,0,[]],48,3243,[],[[0],[1]],[0,0]],[[1736,1984,0,32,32,0,0,1,0.5,0.5,0,0,[]],49,3249,[[10],[1],[1],[-1],[-1],[999],[0]],[[0],[]],[0,"Default",0,1]],[[1512,2008,0,8,32,0,0,1,0.5,0.5,0,0,[]],50,3250,[[-1],[0],[0],[0],[0],[10],[0]],[[0],[1,0,1,1,"F 75",50,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[824,2016,0,424,8,0,1.570796370506287,1,0,0,0,0,[]],51,3251,[],[[0],[1],[1,100,""]],[0,0]],[[1064,2224,0,488,8,0,0,1,0,0,0,0,[]],51,3252,[],[[0],[1],[1,100,""]],[0,0]],[[1552,2224,0,216,8,0,0,1,0,0,0,0,[]],51,3253,[],[[0],[1],[1,100,""]],[0,0]],[[1768,2016,0,208,8,0,1.570796370506287,1,0,0,0,0,[]],51,3254,[],[[0],[1],[1,100,""]],[0,0]],[[1752,2072,0,64,32,0,3.141592741012573,1,0.125,0.5,0,0,[]],55,3255,[[1],[300]],[[0],[300,1,1,180,0,0,500,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[1064,2224,0,8,64,0,1.570796370506287,1,0,0,0,0,[]],48,3256,[],[[0],[1]],[0,0]],[[960,2104,0,32,32,0,0,1,0.5,0.5,0,0,[]],49,3258,[[11],[1],[1],[-1],[-1],[999],[0]],[[0],[]],[0,"Default",0,1]],[[1016,2224,0,8,32,0,0,1,0.5,0.5,0,0,[]],50,3259,[[-1],[0],[0],[0],[0],[11],[0]],[[0],[1,0,1,1,"F 75",50,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1752,2160,0,64,32,0,3.141592741012573,1,0.125,0.5,0,0,[]],55,3260,[[1],[300]],[[0],[300,1,1,180,0,0,500,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[816,2224,0,184,8,0,0,1,0,0,0,0,[]],51,3262,[],[[0],[1],[1,100,""]],[0,0]],[[920,2160,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,3266,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[952,2160,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,3268,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[984,2160,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,3269,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[904,2136,0,96,8,0,0,1,0,0,0,0,[]],51,3270,[],[[0],[1],[1,100,""]],[0,0]],[[1768,2224,0,96,8,0,1.570796370506287,1,0,0,0,0,[]],51,3271,[],[[0],[1],[1,100,""]],[0,0]],[[832,2344,0,64,32,0,0,1,0.125,0.5,0,0,[]],55,3272,[[1],[350]],[[0],[300,1,1,180,0,0,500,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[1120,2416,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3273,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1384,2416,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3274,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1264,2248,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,3275,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[816,2432,0,672,8,0,0,1,0,0,0,0,[]],51,3278,[],[[0],[1],[1,100,""]],[0,0]],[[1552,2432,0,216,8,0,0,1,0,0,0,0,[]],51,3279,[],[[0],[1],[1,100,""]],[0,0]],[[1552,2432,0,8,64,0,1.570796370506287,1,0,0,0,0,[]],48,3281,[],[[0],[1]],[0,0]],[[1760,2368,0,8,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],50,3282,[[-1],[0],[0],[0],[0],[3],[0]],[[0],[1,0,1,1,"F 60",1000,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1768,2320,0,120,8,0,1.570796370506287,1,0,0,0,0,[]],51,3283,[],[[0],[1],[1,100,""]],[0,0]],[[1488,2696,0,1312,8,0,0,1,0,0,0,0,[]],51,3284,[],[[0],[1],[1,100,""]],[0,0]],[[2456,2688,0,64,32,0,-1.570796489715576,1,0.125,0.5,0,0,[]],55,3285,[[1],[250]],[[0],[300,1,1,180,0,0,500,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[2568,2688,0,64,32,0,-1.570796489715576,1,0.125,0.5,0,0,[]],55,3286,[[1],[250]],[[0],[300,1,1,180,0,0,500,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[2864,3040,0,97,199,0,0,1,0.5257731676101685,0.4974874258041382,0,0,[]],44,3287,[],[[0]],[0,"Default",0,1]],[[2800,2696,0,120,9,0,0,1,0,0,0,0,[]],52,3288,[],[[0],[0]],[0,0]],[[2800,2696,0,1440,8,0,1.570796370506287,1,0,0,0,0,[]],51,3289,[],[[0],[1],[1,100,""]],[0,0]],[[2928,1680,0,2456,8,0,1.570796370506287,1,0,0,0,0,[]],51,3290,[],[[0],[1],[1,100,""]],[0,0]],[[1704,2400,0,32,32,0,0,1,0.5,0.5,0,0,[]],49,3277,[[3],[1],[1],[-1],[-1],[999],[0]],[[0],[]],[0,"Default",0,1]],[[2511.393310546875,2660.8232421875,0,64,64,0,0,1,0.5,0.5,0,0,[]],60,5494,[["level34"]],[[1],[400,-200,800,0,0,0],[0,0,0,1,1]],[0,"Default",0,1]],[[1093,1277,0,288,117,0,0,1,0,0,0,0,[[]]],61,5625,[],[[1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>","1",7,0,60,0,0,0,0,0,"",-1,0]]],[]],["UI",2,321820101763092,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[240,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3097,[["right"]],[[0,1,0,1,1]],[0,"Default",0,1]],[[80,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3098,[["left"]],[[0,1,0,1,1]],[0,"Default",1,1]],[[560,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3099,[["up"]],[[1,1,1,1,1]],[0,"Default",3,1]],[[400,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3100,[["down"]],[[1,1,1,1,1]],[0,"Default",2,1]]],[]],["End Card",3,953824325326885,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],78,2607,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[12.04449462890625,194,0,615.9109497070313,67,0,0,1,0,0,0,0,[]],79,2608,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Timer for this level",2.5,0,0,0,0,0,-10,0,"",-1,0]],[[17.546875,248,0,604.90625,105,0,0,1,0,0,0,0,[]],80,2610,[[0],[0],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","13:40:40",4,0,63,50,0,0,-10,0,"",-1,0]],[[115.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,2611,[[0],[1],[0],[0],["replay"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Replay",""],[""],[2,2,0,0,0],["",""]],[0,"Replay",0,1]],[[524.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3086,[[0],[1],[0],[0],["next"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Next",""],[""],[2,2,0,0,0],["",""]],[0,"Next",0,1]],[[320.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3087,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > Back","Level Menu"],[""],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[320.75,521.8050537109375,0,384,96,0,0,1,0.5,0.5,0,0,[]],70,3088,[[1],[1],[0],[0],[""],["{\"size\": 22, \"left\": 70, \"right\": 18, \"alignY\": 60}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > DownloadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"DownloadReplay",0,1]]],[]],["Pause",4,338643345281746,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-310,678,0,274,31,0,0,1,0,0,0,0,[]],168,3089,[],[],[".ovo",0,1,"file"]],[[320,320,0,425,250,0,0,1,0.5,0.5,0,0,[]],82,3090,[],[[6,1,"",300,1,1,"",300,"overlay",1,"PauseClose",1,1]],[0,"Default",0,1]],[[214,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3091,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"",""],["PauseClose"],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[426,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3092,[[0],[1],[0],[0],["quit"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > GiveUp",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[115.5,202,0,409,118,0,0,1,0,0,0,0,[]],83,3093,[[1],[1],["pause"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Pause",4,0,57,50,0,0,-10,0,"",-1,0]],[[320.5,88,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3094,[[1],[1],[0],[0],["loadreplay"],["{\"size\": 16, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > LoadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"LoadReplay",0,1]],[[320.5,157,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3095,[[1],[0],[0],[0],["toggledebug"],["{\"size\": 15, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Debug > Toggle",""],[""],[2,2,0,0,0],["",""]],[0,"ToggleDebug",0,1]],[[78,448,0,484,134,0,0,1,0,0,0,0,[]],193,3096,[],[],[0,"Default",0,1]]],[]],["Overlay",5,464516746303262,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[432,4,0,203.0009155273438,64,0,0,1,0,0,0,0,[]],107,5488,[],[[1,0,1,0,1]],[2,2,2,2,0,1,0,0,1]],[[432,4,0,203,64,0,0,1,0,0,0,0,[]],84,3101,[[0],[0],[""],["en-us"],[0],[1],[1],["{\"alignY\": 85, \"alignX\": 45, \"size\": 28}"],[0],[1],[0],[0],[0]],[["",""],[1,0,1,0,1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",2,0,100,50,0,0,-10,0,"",-1,0]],[[88,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3102,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Pause",""],[""],[0,0,0,0,1],["",""]],[0,"Pause",0,1]],[[158,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3103,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Replay","1"],[""],[0,0,0,0,1],["",""]],[0,"Reload",0,1]]],[]],["End Game",6,767069366671110,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],85,3104,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[73,194,0,494,72,0,0,1,0,0,0,0,[]],86,3105,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],["{alignY:50}"],[0],[1],[0],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Your final time",2.5,0,50,50,0,0,-10,0,"",-1,0]],[[320,403,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3106,[[0],[1],[0],[0],[""],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Quit",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[73,243,0,494,85,0,0,1,0,0,0,0,[]],87,3108,[[0],[1],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",3,0,50,50,0,0,-10,0,"",-1,0]],[[73,318,0,494,25,0,0,1,0,0,0,0,[]],86,5480,[[1],[1],["tryagainhardmode"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Try again in hard mode!",1,0,50,50,0,0,-2,0,"",-1,0]]],[]],["Banner",7,124576901239053,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-237,-189,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,3109,[],[["overlay"]],[0,"Default",0,1]]],[]],["AdPlaying",8,282400980156737,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,-203.5,0,250,97,0,0,1,0.5,0.5,0,0,[]],125,390,[],[[6,1,"",300,1,1,"",300,"overlay",1,"",1,1],[]],[0,"Default",0,1]],[[209,-275,0,222,139,0,0,1,0,0,0,0,[]],86,391,[[1],[1],["adplaying"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","An ad is playing right now...",1.2,0,50,50,0,0,-2,0,"",-1,0]],[[-154.5756988525391,-294.3137512207031,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,5508,[],[["overlay"]],[0,"Default",0,1]]],[]]],[],[]],["Level 35",2000,3000,true,"Levels",790260098468660,[["Background",0,885121337970098,true,[255,255,255],false,0,0,1,false,false,1,0,0,[[[819,367,0,60.93439102172852,60.93439102172852,0,0,1,0.5,0.5,0,0,[]],53,6370,[["Test of instinct"],[""],[0]],[],[1,"Default",0,1]]],[]],["Layer 0",1,186988710119490,true,[255,255,255],true,1,1,1,false,false,1,0,0,[[[1000,388,0,32,64,0,0,1,0.5,0.5,0,0,[]],42,1006,[["run"],[0],[1],[1],[0],[0.8],[0.5],[0],[1],[0],[0],[0],[""],[2],[0],[0],[0],[""],[0],[3],[0],[0],[0],[0],[0],[0],[0]],[[330,1500,1500,650,1500,1000,0,0,0,1],[],[0,0],[0,10000,360,1]],[1,"Default",0,1]],[[944,-396,0,1608,9,0,1.570796370506287,1,0,0,0,0,[]],51,1007,[],[[0],[1],[1,100,""]],[0,0]],[[1088,-292,0,1504,9,0,1.570796370506287,1,0,0,0,0,[]],51,2697,[],[[0],[1],[1,100,""]],[0,0]],[[1016,180,0,97,199,0,0,1,0.5257731676101685,0.4974874258041382,0,0,[]],44,3144,[],[[0]],[0,"Default",0,1]],[[944,1204,0,136,9,0,0,1,0,0,0,0,[]],52,3145,[],[[0],[0]],[0,0]],[[1080,1204,0,832,9,0,0,1,0,0,0,0,[]],51,3148,[],[[0],[1],[1,100,""]],[0,0]],[[120,2028,0,816,9,0,0,1,0,0,0,0,[]],51,3154,[],[[0],[1],[1,100,""]],[0,0]],[[112,1204,0,832,9,0,0,1,0,0,0,0,[]],51,3146,[],[[0],[1],[1,100,""]],[0,0]],[[120,1204,0,832,9,0,1.570796370506287,1,0,0,0,0,[]],51,3157,[],[[0],[1],[1,100,""]],[0,0]],[[1912,1204,0,832,9,0,1.570796370506287,1,0,0,0,0,[]],51,3155,[],[[0],[1],[1,100,""]],[0,0]],[[1096,2028,0,816,9,0,0,1,0,0,0,0,[]],51,3156,[],[[0],[1],[1,100,""]],[0,0]],[[1096,2028,0,9,160,0,1.570796370506287,1,0,0,0,0,[]],48,3158,[],[[0],[1]],[0,0]],[[1016,2036,0,50,50,0,-1.570796370506287,1,0.5,0.5,0,0,[]],50,3159,[[-1],[0],[0],[0],[0],[-1],[0]],[[0],[1,1,1,1,"W 2 ; F 120; R 90",5,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[128,1316,0,64,32,0,0,1,0.125,0.5,0,0,[]],55,3160,[[1],[175]],[[1],[300,2,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[120,1580,0,64,32,0,0,1,0.125,0.5,0,0,[]],55,3161,[[1],[175]],[[1],[300,2,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[128,1820,0,64,32,0,0,1,0.125,0.5,0,0,[]],55,3163,[[1],[175]],[[1],[300,2,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[696,1220,0,64,32,0,1.570796370506287,1,0.125,0.5,0,0,[]],55,3164,[[1],[175]],[[1],[300,2,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[1312,1220,0,64,32,0,1.570796370506287,1,0.125,0.5,0,0,[]],55,3165,[[1],[175]],[[1],[300,2,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[1696,1220,0,64,32,0,1.570796370506287,1,0.125,0.5,0,0,[]],55,3167,[[1],[175]],[[1],[300,2,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[368,1220,0,64,32,0,1.570796370506287,1,0.125,0.5,0,0,[]],55,3173,[[1],[175]],[[1],[300,2,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[1168,2020,0,64,32,0,-1.570796489715576,1,0.125,0.5,0,0,[]],55,3174,[[1],[175]],[[1],[300,2,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[1552,2020,0,64,32,0,-1.570796489715576,1,0.125,0.5,0,0,[]],55,3175,[[1],[175]],[[1],[300,2,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[456,2020,0,64,32,0,-1.570796489715576,1,0.125,0.5,0,0,[]],55,3176,[[1],[175]],[[1],[300,2,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[848,2020,0,64,32,0,-1.570796489715576,1,0.125,0.5,0,0,[]],55,3177,[[1],[175]],[[1],[300,2,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[1896,1396,0,64,32,0,3.141592741012573,1,0.125,0.5,0,0,[]],55,3178,[[1],[175]],[[1],[300,2,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[1896,1660,0,64,32,0,3.141592741012573,1,0.125,0.5,0,0,[]],55,3179,[[1],[175]],[[1],[300,2,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[1896,1900,0,64,32,0,3.141592741012573,1,0.125,0.5,0,0,[]],55,3180,[[1],[175]],[[1],[300,2,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[648,2012,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,3182,[[0.7],[0]],[[0]],[0,"Default",0,1]],[[272,2012,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,3183,[[0.7],[0]],[[0]],[0,"Default",0,1]],[[1352,2012,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,3184,[[0.7],[0]],[[0]],[0,"Default",0,1]],[[1736,2012,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,3186,[[0.7],[0]],[[0]],[0,"Default",0,1]],[[448,1828,0,128,9,0,0,1,0,0,0,0,[]],51,3192,[],[[0],[1],[1,100,""]],[0,0]],[[1488,1852,0,128,9,0,0,1,0,0,0,0,[]],51,3193,[],[[0],[1],[1,100,""]],[0,0]],[[824,1548,0,128,9,0,1.570796370506287,1,0,0,0,0,[]],51,3194,[],[[0],[1],[1,100,""]],[0,0]],[[1288,1524,0,128,9,0,1.570796370506287,1,0,0,0,0,[]],51,3195,[],[[0],[1],[1,100,""]],[0,0]],[[496,1484,0,128,9,0,0,1,0,0,0,0,[]],51,3196,[],[[0],[1],[1,100,""]],[0,0]],[[1344,1732,0,128,9,0,0,1,0,0,0,0,[]],51,3197,[],[[0],[1],[1,100,""]],[0,0]],[[1640,1588,0,128,9,0,0,1,0,0,0,0,[]],51,3198,[],[[0],[1],[1,100,""]],[0,0]],[[968,1548,0,128,9,0,1.570796370506287,1,0,0,0,0,[]],51,3199,[],[[0],[1],[1,100,""]],[0,0]],[[1088,1396,0,128,9,0,0,1,0,0,0,0,[]],51,3201,[],[[0],[1],[1,100,""]],[0,0]],[[1296,1572,0,64,32,0,0,1,0.125,0.5,0,0,[]],55,3202,[[1],[175]],[[1],[300,2,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[808,1604,0,64,32,0,3.141592741012573,1,0.125,0.5,0,0,[]],55,3203,[[1],[175]],[[1],[300,2,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[1448,1460,0,128,9,0,0,1,0,0,0,0,[]],51,3212,[],[[0],[1],[1,100,""]],[0,0]],[[1320,1292,0,48,9,0,0,1,0,0,0,0,[]],51,3213,[],[[0],[1],[1,100,""]],[0,0]],[[832,1928,0,83,9,0,0,1,0,0,0,0,[]],51,3214,[],[[0],[1],[1,100,""]],[0,0]],[[464,1812,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,3215,[[0.7],[0]],[[0]],[0,"Default",0,1]],[[936,2028,0,1608,9,0,1.570796370506287,1,0,0,0,0,[]],51,3211,[],[[0],[1],[1,100,""]],[0,0]],[[1104,2028,0,1504,9,0,1.570796370506287,1,0,0,0,0,[]],51,3216,[],[[0],[1],[1,100,""]],[0,0]],[[1016,2812,0,97,199,0,0,1,0.5257731676101685,0.4974874258041382,0,0,[]],44,3217,[],[[0]],[0,"Default",0,1]],[[881,1754,0,288,117,0,0,1,0,0,0,0,[[]]],61,5626,[],[[1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>","1",7,0,60,0,0,0,0,0,"",-1,0]],[[1157,1344,0,64,64,0,0,1,0.5,0.5,0,0,[]],60,1047,[["level35"]],[[1],[400,-200,800,0,0,0],[0,0,0,1,1]],[0,"Default",0,1]]],[]],["UI",2,461809333983795,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[240,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3097,[["right"]],[[0,1,0,1,1]],[0,"Default",0,1]],[[80,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3098,[["left"]],[[0,1,0,1,1]],[0,"Default",1,1]],[[560,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3099,[["up"]],[[1,1,1,1,1]],[0,"Default",3,1]],[[400,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3100,[["down"]],[[1,1,1,1,1]],[0,"Default",2,1]]],[]],["End Card",3,396774902006415,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],78,2607,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[12.04449462890625,194,0,615.9109497070313,67,0,0,1,0,0,0,0,[]],79,2608,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Timer for this level",2.5,0,0,0,0,0,-10,0,"",-1,0]],[[17.546875,248,0,604.90625,105,0,0,1,0,0,0,0,[]],80,2610,[[0],[0],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","13:40:40",4,0,63,50,0,0,-10,0,"",-1,0]],[[115.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,2611,[[0],[1],[0],[0],["replay"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Replay",""],[""],[2,2,0,0,0],["",""]],[0,"Replay",0,1]],[[524.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3086,[[0],[1],[0],[0],["next"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Next",""],[""],[2,2,0,0,0],["",""]],[0,"Next",0,1]],[[320.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3087,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > Back","Level Menu"],[""],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[320.75,521.8050537109375,0,384,96,0,0,1,0.5,0.5,0,0,[]],70,3088,[[1],[1],[0],[0],[""],["{\"size\": 22, \"left\": 70, \"right\": 18, \"alignY\": 60}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > DownloadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"DownloadReplay",0,1]]],[]],["Pause",4,728068508973358,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-310,678,0,274,31,0,0,1,0,0,0,0,[]],168,3089,[],[],[".ovo",0,1,"file"]],[[320,320,0,425,250,0,0,1,0.5,0.5,0,0,[]],82,3090,[],[[6,1,"",300,1,1,"",300,"overlay",1,"PauseClose",1,1]],[0,"Default",0,1]],[[214,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3091,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"",""],["PauseClose"],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[426,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3092,[[0],[1],[0],[0],["quit"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > GiveUp",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[115.5,202,0,409,118,0,0,1,0,0,0,0,[]],83,3093,[[1],[1],["pause"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Pause",4,0,57,50,0,0,-10,0,"",-1,0]],[[320.5,88,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3094,[[1],[1],[0],[0],["loadreplay"],["{\"size\": 16, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > LoadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"LoadReplay",0,1]],[[320.5,157,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3095,[[1],[0],[0],[0],["toggledebug"],["{\"size\": 15, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Debug > Toggle",""],[""],[2,2,0,0,0],["",""]],[0,"ToggleDebug",0,1]],[[78,448,0,484,134,0,0,1,0,0,0,0,[]],193,3096,[],[],[0,"Default",0,1]]],[]],["Overlay",5,815490977891861,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[432,4,0,203.0009155273438,64,0,0,1,0,0,0,0,[]],107,5488,[],[[1,0,1,0,1]],[2,2,2,2,0,1,0,0,1]],[[432,4,0,203,64,0,0,1,0,0,0,0,[]],84,3101,[[0],[0],[""],["en-us"],[0],[1],[1],["{\"alignY\": 85, \"alignX\": 45, \"size\": 28}"],[0],[1],[0],[0],[0]],[["",""],[1,0,1,0,1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",2,0,100,50,0,0,-10,0,"",-1,0]],[[88,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3102,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Pause",""],[""],[0,0,0,0,1],["",""]],[0,"Pause",0,1]],[[158,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3103,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Replay","1"],[""],[0,0,0,0,1],["",""]],[0,"Reload",0,1]]],[]],["End Game",6,947295355744231,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],85,3104,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[73,194,0,494,72,0,0,1,0,0,0,0,[]],86,3105,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],["{alignY:50}"],[0],[1],[0],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Your final time",2.5,0,50,50,0,0,-10,0,"",-1,0]],[[320,403,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3106,[[0],[1],[0],[0],[""],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Quit",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[73,243,0,494,85,0,0,1,0,0,0,0,[]],87,3108,[[0],[1],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",3,0,50,50,0,0,-10,0,"",-1,0]],[[73,318,0,494,25,0,0,1,0,0,0,0,[]],86,5480,[[1],[1],["tryagainhardmode"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Try again in hard mode!",1,0,50,50,0,0,-2,0,"",-1,0]]],[]],["Banner",7,167440448590605,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-237,-189,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,3109,[],[["overlay"]],[0,"Default",0,1]]],[]],["AdPlaying",8,612041582485055,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,-203.5,0,250,97,0,0,1,0.5,0.5,0,0,[]],125,390,[],[[6,1,"",300,1,1,"",300,"overlay",1,"",1,1],[]],[0,"Default",0,1]],[[209,-275,0,222,139,0,0,1,0,0,0,0,[]],86,391,[[1],[1],["adplaying"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","An ad is playing right now...",1.2,0,50,50,0,0,-2,0,"",-1,0]],[[-154.5756988525391,-294.3137512207031,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,5508,[],[["overlay"]],[0,"Default",0,1]]],[]]],[],[]],["Level 36",5000,5000,true,"Levels",396453985665977,[["Background",0,223729410801067,true,[255,255,255],false,0,0,1,false,false,1,0,0,[[[1852,804,0,60.93439102172852,60.93439102172852,0,0,1,0.5,0.5,0,0,[]],53,6371,[["Test of speed"],[""],[0]],[],[1,"Default",0,1]]],[]],["Layer 0",1,445891245204597,true,[255,255,255],true,1,1,1,false,false,1,0,0,[[[2008,2370,0,64,32,0,1.570796370506287,1,0.125,0.5,0,0,[]],55,3370,[[1],[350]],[[1],[300,0.5,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[2599,1786,0,64,64,0,0,1,0.5,0.5,0,0,[]],60,5501,[["level36"]],[[1],[400,-200,800,0,0,0],[0,0,0,1,1]],[0,"Default",0,1]],[[2656,1520,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,3363,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2624,1520,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,3364,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2688,1520,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,3365,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2752,1520,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,3366,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2720,1520,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,3367,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2784,1520,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,3368,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[-1040,-528,0,60.93439102172852,60.93439102172852,0,0,1,0.5,0.5,0,0,[]],53,1009,[["Buttons!"],[""],[0]],[],[1,"Default",0,1]],[[1616,1048,0,416,1376,0,0,1,0,0,0,0,[]],51,3220,[],[[0],[1],[1,100,""]],[0,0]],[[1616,-368,0,168,1272,0,0,1,0,0,0,0,[]],51,3221,[],[[0],[1],[1,100,""]],[0,0]],[[2224,-384,0,224,1280,0,0,1,0,0,0,0,[]],51,3222,[],[[0],[1],[1,100,""]],[0,0]],[[2240,912,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,3292,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2272,912,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,3293,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2304,912,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,3294,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2336,912,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,3295,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2368,912,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,3296,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2400,912,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,3297,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2432,912,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,3298,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2336,880,0,72,208,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,3299,[[-1],[0],[0],[0],[0],[-1],[1]],[[0],[1,1,1,0,"W 1.5; F 110 ; W 1 ; B 110",1000,0,200,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[2960,-384,0,224,1280,0,0,1,0,0,0,0,[]],51,3300,[],[[0],[1],[1,100,""]],[0,0]],[[2976,912,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,3301,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3008,912,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,3302,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3040,912,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,3303,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3072,912,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,3304,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3104,912,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,3305,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3136,912,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,3306,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3168,912,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,3307,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3072,880,0,72,208,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,3308,[[-1],[0],[0],[0],[0],[-1],[1]],[[0],[1,1,1,0,"W 1.5; F 110 ; W 1 ; B 110",1000,0,200,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[2800,1504,0,192,456,0,3.141592741012573,1,0,0,0,0,[]],51,3309,[],[[0],[1],[1,100,""]],[0,0]],[[2784,1032,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3311,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2752,1032,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3312,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2720,1032,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3313,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2688,1032,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3314,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2656,1032,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3315,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2624,1032,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3316,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2704,1272,0,488,176,0,-1.570796489715576,1,0.5,0.5,0,0,[]],50,3317,[[-1],[0],[0],[0],[0],[-1],[1]],[[0],[1,1,1,0,"W 1.5; F 110 ; W 1 ; B 110",1000,0,200,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[2448,-384,0,512,1280,0,0,1,0,0,0,0,[]],51,3318,[],[[0],[1],[1,100,""]],[0,0]],[[2800,1048,0,984,272,0,0,1,0,0,0,0,[]],51,3319,[],[[0],[1],[1,100,""]],[0,0]],[[1784,887,0,128,9,0,0,1,0,0,0,0,[]],52,3322,[],[[0],[0]],[0,0]],[[1848,120,0,97,199,0,0,1,0.5257731676101685,0.4974874258041382,0,0,[]],44,3323,[],[[0]],[0,"Default",0,1]],[[1912,-384,0,312,1280,0,0,1,0,0,0,0,[]],51,3321,[],[[0],[1],[1,100,""]],[0,0]],[[3184,-392,0,600,1288,0,0,1,0,0,0,0,[]],51,3324,[],[[0],[1],[1,100,""]],[0,0]],[[3376,792,0,408,456,0,0,1,0,0,0,0,[]],51,3325,[],[[0],[1],[1,100,""]],[0,0]],[[3336,1016,0,32,32,0,0,1,0.5,0.5,0,0,[]],49,3326,[[1],[1],[1],[-1],[-1],[999],[0]],[[0],[]],[0,"Default",0,1]],[[1784,1000,0,50,50,0,-1.570796489715576,1,0.5,0.5,0,0,[]],50,3327,[[-1],[0],[0],[0],[0],[1],[0]],[[0],[1,0,1,1,"F 90",300,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[392,-368,0,1016,1424,0,0,1,0,0,0,0,[]],51,3310,[],[[0],[1],[1,100,""]],[0,0]],[[1512,992,0,32,32,0,0,1,0.5,0.5,0,0,[]],49,3329,[[2],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[0,"Default",0,1]],[[1408,-424,0,208,1328,0,0,1,0,0,0,0,[]],51,3328,[],[[0],[1],[1,100,""]],[0,0]],[[1744,-368,0,50,50,0,-1.570796489715576,1,0.5,0.5,0,0,[]],50,3330,[[-1],[0],[0],[0],[0],[2],[0]],[[0],[1,0,1,1,"B 160",300,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[408,1056,0,1000,1440,0,0,1,0,0,0,0,[]],51,3331,[],[[0],[1],[1,100,""]],[0,0]],[[1512,1048,0,104,456,0,0,1,0,0,0,0,[]],51,3332,[],[[0],[1],[1,100,""]],[0,0]],[[1408,1048,0,104,456,0,0,1,0,0,0,0,[]],51,3333,[],[[0],[1],[1,100,""]],[0,0]],[[1568,1232,0,50,50,0,0,1,0.5,0.5,0,0,[]],50,3334,[[-1],[0],[0],[0],[0],[2],[0]],[[0],[1,0,1,1,"W 3 ; F 160",30,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1472,1224,0,50,50,0,0,1,0.5,0.5,0,0,[]],50,3335,[[-1],[0],[0],[0],[0],[2],[0]],[[0],[1,0,1,1,"W 3; B 160",30,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[3776,2640,0,1384,3376,0,1.570796370506287,1,0,0,0,0,[]],51,3336,[],[[0],[1],[1,100,""]],[0,0]],[[2032,1048,0,416,568,0,0,1,0,0,0,0,[]],51,3337,[],[[0],[1],[1,100,""]],[0,0]],[[2032,2240,0,416,184,0,0,1,0,0,0,0,[]],51,3338,[],[[0],[1],[1,100,""]],[0,0]],[[2120,2144,0,97,199,0,0,1,0.5257731676101685,0.4974874258041382,0,0,[]],44,3339,[],[[0]],[0,"Default",0,1]],[[2448,1824,0,416,248,0,1.570796370506287,1,0,0,0,0,[]],51,3340,[],[[0],[1],[1,100,""]],[0,0]],[[2448,1824,0,960,600,0,0,1,0,0,0,0,[]],51,3341,[],[[0],[1],[1,100,""]],[0,0]],[[5024,-392,0,4392,1256,0,1.570796370506287,1,0,0,0,0,[]],51,3342,[],[[0],[1],[1,100,""]],[0,0]],[[2448,1048,0,160,376,0,0,1,0,0,0,0,[]],51,3343,[],[[0],[1],[1,100,""]],[0,0]],[[3560,2624,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,3344,[[0.8],[0]],[[0]],[0,"Default",0,1]],[[3528,2248,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,3345,[[0.7],[0]],[[0]],[0,"Default",0,1]],[[3688,2120,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,3346,[[0.7],[0]],[[0]],[0,"Default",0,1]],[[3240,1808,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,3347,[[0.7],[0]],[[0]],[0,"Default",0,1]],[[2864,1824,0,64,320,0,3.141592741012573,1,0,0,0,0,[]],51,3348,[],[[0],[1],[1,100,""]],[0,0]],[[3184,1504,0,64,320,0,1.570796370506287,1,0,0,0,0,[]],51,3349,[],[[0],[1],[1,100,""]],[0,0]],[[3184,1752,0,64,248,0,3.141592741012573,1,0,0,0,0,[]],51,3350,[],[[0],[1],[1,100,""]],[0,0]],[[3512,1968,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,3351,[[1],[0]],[[0]],[0,"Default",0,1]],[[2520,1536,0,280,80,0,0,1,0,0,0,0,[]],51,3352,[],[[0],[1],[1,100,""]],[0,0]],[[2992,1576,0,64,32,0,1.570796370506287,1,0.125,0.5,0,0,[]],55,3353,[[1],[-1]],[[1],[300,4,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[2992,1712,0,32,32,0,0,1,0.5,0.5,0,0,[]],49,3354,[[3],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[0,"Default",0,1]],[[400,2488,0,960,168,0,0,1,0,0,0,0,[]],51,3356,[],[[0],[1],[1,100,""]],[0,0]],[[1368,2544,0,64,32,0,0,1,0.125,0.5,0,0,[]],55,3357,[[1],[300]],[[1],[300,0.5,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[1368,2600,0,64,32,0,0,1,0.125,0.5,0,0,[]],55,3355,[[1],[300]],[[1],[300,0.5,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[1768,2552,0,88,8,0,1.570796370506287,1,0,0,0,0,[]],51,3358,[],[[0],[1],[1,100,""]],[0,0]],[[1768,2424,0,32,8,0,1.570796370506287,1,0,0,0,0,[]],51,3359,[],[[0],[1],[1,100,""]],[0,0]],[[1920,2424,0,216,8,0,1.570796370506287,1,0,0,0,0,[]],51,3360,[],[[0],[1],[1,100,""]],[0,0]],[[1832,2600,0,32,32,0,0,1,0.5,0.5,0,0,[]],49,3361,[[4],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[0,"Default",0,1]],[[1920,2544,0,50,50,0,-1.570796489715576,1,0.5,0.5,0,0,[]],50,3362,[[-1],[0],[0],[0],[0],[4],[0]],[[0],[1,0,1,1,"W 2 ; F 240",300,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[2779,1728,0,50,204,0,-1.570796489715576,1,0.5,0.5,0,0,[]],50,3369,[[-1],[0],[0],[0],[0],[3],[0]],[[0],[1,0,1,1,"W 2 ; F 160",300,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[2384,2624,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3372,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2008,2450,0,50,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],50,3371,[[-1],[0],[0],[0],[0],[4],[0]],[[0],[1,0,1,1,"W 2 ; B 60",300,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[2416,2624,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3373,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2480,2624,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3374,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2448,2624,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3375,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2784,2624,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3376,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2752,2624,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3377,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3192,2624,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3378,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3160,2624,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3379,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3512,2264,0,32,8,0,0,1,0,0,0,0,[]],51,3380,[],[[0],[1],[1,100,""]],[0,0]],[[3672,2136,0,32,8,0,0,1,0,0,0,0,[]],51,3381,[],[[0],[1],[1,100,""]],[0,0]],[[3496,1984,0,32,8,0,0,1,0,0,0,0,[]],51,3382,[],[[0],[1],[1,100,""]],[0,0]],[[3456,1400,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,3383,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3424,1400,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,3384,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3768,1320,0,64,360,0,1.570796370506287,1,0,0,0,0,[]],51,3385,[],[[0],[1],[1,100,""]],[0,0]],[[3520,1400,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,3386,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3488,1400,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,3387,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3584,1400,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,3388,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3552,1400,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,3389,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3648,1400,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,3390,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3616,1400,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,3391,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3712,1400,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,3392,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3680,1400,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,3393,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3744,1400,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,3395,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3424,2072,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,3394,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3424,2104,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,3396,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3424,2136,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,3397,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3424,2040,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,3398,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3424,2200,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,3399,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3424,2232,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,3400,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3424,2264,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,3401,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3424,2168,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,3402,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3424,2328,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,3403,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3424,2360,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,3404,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3424,2392,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,3405,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3424,2296,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,3406,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3424,1944,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,3407,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3424,1976,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,3408,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3424,2008,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,3409,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3424,1912,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,3410,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3752,2072,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,3411,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3752,2104,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,3412,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3752,2136,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,3413,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3752,2040,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,3414,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3752,2200,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,3415,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3752,2232,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,3416,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3752,2264,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,3417,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3752,2168,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,3418,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3752,2328,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,3419,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3752,2360,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,3420,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3752,2392,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,3421,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3752,2296,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,3422,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3752,1944,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,3423,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3752,1976,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,3424,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3752,2008,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,3425,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3752,1912,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,3426,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2448,1608,0,72,8,0,0,1,0,0,0,0,[]],45,3427,[],[[0],[1]],[0,0]],[[2216,1808,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3428,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2248,1808,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3429,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2280,1808,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3430,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2312,1808,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3431,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2048,1808,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,3432,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2048,1776,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,3433,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2048,1744,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,3434,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2048,1712,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,3435,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2168,1632,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,3436,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2200,1632,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,3437,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2232,1632,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,3438,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2264,1632,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,3439,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2053,1683,0,32,32,0,2.356194496154785,1,0.5,0.5,0,0,[]],47,3440,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2076,1661,0,32,32,0,2.356194496154785,1,0.5,0.5,0,0,[]],47,3441,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2099,1638,0,32,32,0,2.356194496154785,1,0.5,0.5,0,0,[]],47,3442,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2104.313720703125,1610.686279296875,0,104,72,0,2.356194496154785,1,0,0,0,0,[]],51,3443,[],[[0],[1],[1,100,""]],[0,0]],[[2800,1616,0,208,280,0,1.570796370506287,1,0,0,0,0,[]],51,3444,[],[[0],[1],[1,100,""]],[0,0]],[[1240,904,0,544,144,0,0,1,0,0,0,0,[]],51,3320,[],[[0],[1],[1,100,""]],[0,0]],[[1846,367,0,32,64,0,0,1,0.5,0.5,0,0,[]],42,3218,[["run"],[0],[1],[1],[0],[0.8],[0.5],[0],[1],[0],[0],[0],[""],[2],[0],[0],[0],[""],[0],[3],[0],[0],[0],[0],[0],[0],[0]],[[330,1500,1500,650,1500,1000,0,0,0,1],[],[0,0],[0,10000,360,1]],[0,"Default",0,1]],[[1914,899,0,288,117,0,0,1,0,0,0,0,[[]]],61,5627,[],[[1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>","1",7,0,60,0,0,0,0,0,"",-1,0]]],[]],["UI",2,600723636719424,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[240,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3097,[["right"]],[[0,1,0,1,1]],[0,"Default",0,1]],[[80,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3098,[["left"]],[[0,1,0,1,1]],[0,"Default",1,1]],[[560,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3099,[["up"]],[[1,1,1,1,1]],[0,"Default",3,1]],[[400,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3100,[["down"]],[[1,1,1,1,1]],[0,"Default",2,1]]],[]],["End Card",3,923904984228546,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],78,2607,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[12.04449462890625,194,0,615.9109497070313,67,0,0,1,0,0,0,0,[]],79,2608,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Timer for this level",2.5,0,0,0,0,0,-10,0,"",-1,0]],[[17.546875,248,0,604.90625,105,0,0,1,0,0,0,0,[]],80,2610,[[0],[0],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","13:40:40",4,0,63,50,0,0,-10,0,"",-1,0]],[[115.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,2611,[[0],[1],[0],[0],["replay"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Replay",""],[""],[2,2,0,0,0],["",""]],[0,"Replay",0,1]],[[524.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3086,[[0],[1],[0],[0],["next"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Next",""],[""],[2,2,0,0,0],["",""]],[0,"Next",0,1]],[[320.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3087,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > Back","Level Menu"],[""],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[320.75,521.8050537109375,0,384,96,0,0,1,0.5,0.5,0,0,[]],70,3088,[[1],[1],[0],[0],[""],["{\"size\": 22, \"left\": 70, \"right\": 18, \"alignY\": 60}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > DownloadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"DownloadReplay",0,1]]],[]],["Pause",4,190255380076431,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-310,678,0,274,31,0,0,1,0,0,0,0,[]],168,3089,[],[],[".ovo",0,1,"file"]],[[320,320,0,425,250,0,0,1,0.5,0.5,0,0,[]],82,3090,[],[[6,1,"",300,1,1,"",300,"overlay",1,"PauseClose",1,1]],[0,"Default",0,1]],[[214,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3091,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"",""],["PauseClose"],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[426,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3092,[[0],[1],[0],[0],["quit"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > GiveUp",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[115.5,202,0,409,118,0,0,1,0,0,0,0,[]],83,3093,[[1],[1],["pause"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Pause",4,0,57,50,0,0,-10,0,"",-1,0]],[[320.5,88,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3094,[[1],[1],[0],[0],["loadreplay"],["{\"size\": 16, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > LoadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"LoadReplay",0,1]],[[320.5,157,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3095,[[1],[0],[0],[0],["toggledebug"],["{\"size\": 15, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Debug > Toggle",""],[""],[2,2,0,0,0],["",""]],[0,"ToggleDebug",0,1]],[[78,448,0,484,134,0,0,1,0,0,0,0,[]],193,3096,[],[],[0,"Default",0,1]]],[]],["Overlay",5,972898273930038,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[432,4,0,203.0009155273438,64,0,0,1,0,0,0,0,[]],107,5488,[],[[1,0,1,0,1]],[2,2,2,2,0,1,0,0,1]],[[432,4,0,203,64,0,0,1,0,0,0,0,[]],84,3101,[[0],[0],[""],["en-us"],[0],[1],[1],["{\"alignY\": 85, \"alignX\": 45, \"size\": 28}"],[0],[1],[0],[0],[0]],[["",""],[1,0,1,0,1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",2,0,100,50,0,0,-10,0,"",-1,0]],[[88,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3102,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Pause",""],[""],[0,0,0,0,1],["",""]],[0,"Pause",0,1]],[[158,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3103,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Replay","1"],[""],[0,0,0,0,1],["",""]],[0,"Reload",0,1]]],[]],["End Game",6,316434591479115,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],85,3104,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[73,194,0,494,72,0,0,1,0,0,0,0,[]],86,3105,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],["{alignY:50}"],[0],[1],[0],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Your final time",2.5,0,50,50,0,0,-10,0,"",-1,0]],[[320,403,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3106,[[0],[1],[0],[0],[""],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Quit",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[73,243,0,494,85,0,0,1,0,0,0,0,[]],87,3108,[[0],[1],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",3,0,50,50,0,0,-10,0,"",-1,0]],[[73,318,0,494,25,0,0,1,0,0,0,0,[]],86,5480,[[1],[1],["tryagainhardmode"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Try again in hard mode!",1,0,50,50,0,0,-2,0,"",-1,0]]],[]],["Banner",7,957393707838430,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-237,-189,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,3109,[],[["overlay"]],[0,"Default",0,1]]],[]],["AdPlaying",8,687026282514646,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,-203.5,0,250,97,0,0,1,0.5,0.5,0,0,[]],125,390,[],[[6,1,"",300,1,1,"",300,"overlay",1,"",1,1],[]],[0,"Default",0,1]],[[209,-275,0,222,139,0,0,1,0,0,0,0,[]],86,391,[[1],[1],["adplaying"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","An ad is playing right now...",1.2,0,50,50,0,0,-2,0,"",-1,0]],[[-154.5756988525391,-294.3137512207031,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,5508,[],[["overlay"]],[0,"Default",0,1]]],[]]],[],[]],["Level 37",2000,2000,true,"Levels",237035931784043,[["Background",0,684282844436466,true,[255,255,255],false,0,0,1,false,false,1,0,0,[[[-1000,408,0,456,408,0,0,1,-2.380000114440918,0.6399999856948853,0,0,[]],159,3456,[],[[0]],[0,"Default",0,1]]],[]],["Layer 0",1,403491227943263,true,[255,255,255],true,1,1,1,false,false,1,0,0,[[[-51,30,0,60.93439102172852,60.93439102172852,0,0,1,0.5,0.5,0,0,[]],53,1018,[["Test of Accuracy"],[""],[0]],[],[1,"Default",0,1]],[[179,181,0,32,64,0,0,1,0.5,0.5,0,0,[]],42,3454,[["run"],[0],[1],[1],[0],[0.8],[0.5],[0],[1],[0],[0],[0],[""],[2],[0],[0],[0],[""],[0],[3],[0],[0],[0],[0],[0],[0],[0]],[[330,1500,1500,650,1500,1000,0,0,0,1],[],[0,0],[0,10000,360,1]],[0,"Default",0,1]],[[72,464,0,408,9,0,0,1,0,0,0,0,[]],51,3457,[],[[0],[1],[1,100,""]],[0,0]],[[808,448,0,32,32,0,0,1,0.5,0.5,0,0,[]],58,3467,[[0]],[[1],[1]],[0,"Default",0,1]],[[752,464,0,72,8,0,0,1,0,0,0,0,[]],56,3468,[],[[1],[1]],[0,0]],[[1040,336,0,224,8,0,0,1,0,0,0,0,[]],56,3469,[],[[1],[1]],[0,0]],[[920,240,0,64,8,0,0,1,0,0,0,0,[]],56,3470,[],[[1],[1]],[0,0]],[[936,264,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],58,3471,[[0]],[[1],[1]],[0,"Default",0,1]],[[968,264,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],58,3472,[[0]],[[1],[1]],[0,"Default",0,1]],[[1064,264,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],58,3500,[[0]],[[1],[1]],[0,"Default",0,1]],[[1096,264,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],58,3527,[[0]],[[1],[1]],[0,"Default",0,1]],[[1272,208,0,136,8,0,1.570796370506287,1,0,0,0,0,[]],56,3554,[],[[1],[1]],[0,0]],[[1248,320,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,3639,[[0]],[[1],[1]],[0,"Default",0,1]],[[480,464,0,56,8,0,0,1,0,0,0,0,[]],56,3464,[],[[1],[1]],[0,0]],[[1248,288,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,3640,[[0]],[[1],[1]],[0,"Default",0,1]],[[1248,256,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,3675,[[0]],[[1],[1]],[0,"Default",0,1]],[[1248,224,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,3676,[[0]],[[1],[1]],[0,"Default",0,1]],[[936,224,0,32,32,0,0,1,0.5,0.5,0,0,[]],58,3677,[[0]],[[1],[1]],[0,"Default",0,1]],[[1096,224,0,32,32,0,0,1,0.5,0.5,0,0,[]],58,3678,[[0]],[[1],[1]],[0,"Default",0,1]],[[1048,240,0,64,8,0,0,1,0,0,0,0,[]],56,3473,[],[[1],[1]],[0,0]],[[888,336,0,104,8,0,0,1,0,0,0,0,[]],56,3474,[],[[1],[1]],[0,0]],[[904,864,0,744,8,0,0,1,0,0,0,0,[]],56,3679,[],[[1],[1]],[0,0]],[[912,344,0,528,8,0,1.570796370506287,1,0,0,0,0,[]],56,3680,[],[[1],[1]],[0,0]],[[1120,512,0,248,8,0,1.570796370506287,1,0,0,0,0,[]],56,3681,[],[[1],[1]],[0,0]],[[1248,848,0,32,32,0,0,1,0.5,0.5,0,0,[]],58,3555,[[0]],[[1],[1]],[0,"Default",0,1]],[[1280,848,0,32,32,0,0,1,0.5,0.5,0,0,[]],58,3568,[[0]],[[1],[1]],[0,"Default",0,1]],[[1312,848,0,32,32,0,0,1,0.5,0.5,0,0,[]],58,3638,[[0]],[[1],[1]],[0,"Default",0,1]],[[1344,848,0,32,32,0,0,1,0.5,0.5,0,0,[]],58,3682,[[0]],[[1],[1]],[0,"Default",0,1]],[[1376,848,0,32,32,0,0,1,0.5,0.5,0,0,[]],58,3683,[[0]],[[1],[1]],[0,"Default",0,1]],[[1408,848,0,32,32,0,0,1,0.5,0.5,0,0,[]],58,3684,[[0]],[[1],[1]],[0,"Default",0,1]],[[1440,848,0,32,32,0,0,1,0.5,0.5,0,0,[]],58,3685,[[0]],[[1],[1]],[0,"Default",0,1]],[[1472,848,0,32,32,0,0,1,0.5,0.5,0,0,[]],58,3686,[[0]],[[1],[1]],[0,"Default",0,1]],[[1800,864,0,144,9,0,0,1,0,0,0,0,[]],51,3688,[],[[0],[1],[1,100,""]],[0,0]],[[2000,248,0,1544,8,0,1.570796370506287,1,0,0,0,0,[]],56,3689,[],[[1],[1]],[0,0]],[[1696,1000,0,64,8,0,0,1,0,0,0,0,[]],56,3687,[],[[1],[1]],[0,0]],[[1544,1088,0,72,9,0,0,1,0,0,0,0,[]],51,3690,[],[[0],[1],[1,100,""]],[0,0]],[[1360,1096,0,64,8,0,0,1,0,0,0,0,[]],56,3691,[],[[1],[1]],[0,0]],[[1144,1096,0,64,9,0,0,1,0,0,0,0,[]],51,3692,[],[[0],[1],[1,100,""]],[0,0]],[[880,1104,0,64,8,0,0,1,0,0,0,0,[]],56,3693,[],[[1],[1]],[0,0]],[[992,1296,0,72,9,0,0,1,0,0,0,0,[]],51,3694,[],[[0],[1],[1,100,""]],[0,0]],[[1560,1072,0,32,32,0,0,1,0.5,0.5,0,0,[]],58,3695,[[0]],[[1],[1]],[0,"Default",0,1]],[[1408,1080,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3696,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1160,1080,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3697,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1008,1280,0,32,32,0,0,1,0.5,0.5,0,0,[]],58,3698,[[0]],[[1],[1]],[0,"Default",0,1]],[[896,1088,0,32,32,0,0,1,0.5,0.5,0,0,[]],58,3699,[[0]],[[1],[1]],[0,"Default",0,1]],[[888,1464,0,64,9,0,0,1,0,0,0,0,[]],51,3466,[],[[0],[1],[1,100,""]],[0,0]],[[904,1448,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3700,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[768,1592,0,64,9,0,0,1,0,0,0,0,[]],51,3701,[],[[0],[1],[1,100,""]],[0,0]],[[784,1576,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3702,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[656,1792,0,1336,8,0,0,1,0,0,0,0,[]],56,3703,[],[[1],[1]],[0,0]],[[976,1776,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,3704,[[0.7],[0]],[[0]],[0,"Default",0,1]],[[1192,1776,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,3705,[[0.7],[0]],[[0]],[0,"Default",0,1]],[[1224,1776,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,3706,[[0.7],[0]],[[0]],[0,"Default",0,1]],[[1384,1776,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,3707,[[0.7],[0]],[[0]],[0,"Default",0,1]],[[1416,1776,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,3708,[[0.7],[0]],[[0]],[0,"Default",0,1]],[[1448,1776,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,3709,[[0.7],[0]],[[0]],[0,"Default",0,1]],[[1608,1776,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,3710,[[0.7],[0]],[[0]],[0,"Default",0,1]],[[1928,1696,0,97,199,0,0,1,0.5257731676101685,0.4974874258041382,0,0,[]],44,3711,[],[[0]],[0,"Default",0,1]],[[1056,1536,0,944,8,0,0,1,0,0,0,0,[]],56,3712,[],[[1],[1]],[0,0]],[[680,1776,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,3713,[[0]],[[1],[1]],[0,"Default",0,1]],[[680,1744,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,3714,[[0]],[[1],[1]],[0,"Default",0,1]],[[680,1712,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,3715,[[0]],[[1],[1]],[0,"Default",0,1]],[[680,1680,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,3716,[[0]],[[1],[1]],[0,"Default",0,1]],[[680,1648,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,3717,[[0]],[[1],[1]],[0,"Default",0,1]],[[680,1616,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,3718,[[0]],[[1],[1]],[0,"Default",0,1]],[[680,1584,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,3719,[[0]],[[1],[1]],[0,"Default",0,1]],[[680,1552,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,3720,[[0]],[[1],[1]],[0,"Default",0,1]],[[680,1520,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,3721,[[0]],[[1],[1]],[0,"Default",0,1]],[[680,1488,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,3722,[[0]],[[1],[1]],[0,"Default",0,1]],[[680,1456,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,3723,[[0]],[[1],[1]],[0,"Default",0,1]],[[680,1424,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,3724,[[0]],[[1],[1]],[0,"Default",0,1]],[[680,1392,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,3725,[[0]],[[1],[1]],[0,"Default",0,1]],[[680,1360,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,3726,[[0]],[[1],[1]],[0,"Default",0,1]],[[680,1328,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,3727,[[0]],[[1],[1]],[0,"Default",0,1]],[[680,1296,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,3728,[[0]],[[1],[1]],[0,"Default",0,1]],[[680,1264,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,3729,[[0]],[[1],[1]],[0,"Default",0,1]],[[680,1232,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,3730,[[0]],[[1],[1]],[0,"Default",0,1]],[[680,1200,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,3731,[[0]],[[1],[1]],[0,"Default",0,1]],[[680,1168,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,3732,[[0]],[[1],[1]],[0,"Default",0,1]],[[680,1136,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,3733,[[0]],[[1],[1]],[0,"Default",0,1]],[[680,1104,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,3734,[[0]],[[1],[1]],[0,"Default",0,1]],[[680,1072,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,3735,[[0]],[[1],[1]],[0,"Default",0,1]],[[680,1040,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,3736,[[0]],[[1],[1]],[0,"Default",0,1]],[[680,1008,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,3737,[[0]],[[1],[1]],[0,"Default",0,1]],[[680,976,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,3738,[[0]],[[1],[1]],[0,"Default",0,1]],[[680,944,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,3739,[[0]],[[1],[1]],[0,"Default",0,1]],[[680,912,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,3740,[[0]],[[1],[1]],[0,"Default",0,1]],[[680,880,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,3741,[[0]],[[1],[1]],[0,"Default",0,1]],[[680,848,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,3742,[[0]],[[1],[1]],[0,"Default",0,1]],[[1072,1520,0,32,32,0,0,1,0.5,0.5,0,0,[]],58,3743,[[0]],[[1],[1]],[0,"Default",0,1]],[[1104,1520,0,32,32,0,0,1,0.5,0.5,0,0,[]],58,3744,[[0]],[[1],[1]],[0,"Default",0,1]],[[1136,1520,0,32,32,0,0,1,0.5,0.5,0,0,[]],58,3745,[[0]],[[1],[1]],[0,"Default",0,1]],[[1168,1520,0,32,32,0,0,1,0.5,0.5,0,0,[]],58,3746,[[0]],[[1],[1]],[0,"Default",0,1]],[[1200,1520,0,32,32,0,0,1,0.5,0.5,0,0,[]],58,3747,[[0]],[[1],[1]],[0,"Default",0,1]],[[1232,1520,0,32,32,0,0,1,0.5,0.5,0,0,[]],58,3748,[[0]],[[1],[1]],[0,"Default",0,1]],[[1264,1520,0,32,32,0,0,1,0.5,0.5,0,0,[]],58,3749,[[0]],[[1],[1]],[0,"Default",0,1]],[[1296,1520,0,32,32,0,0,1,0.5,0.5,0,0,[]],58,3750,[[0]],[[1],[1]],[0,"Default",0,1]],[[1336,1520,0,32,32,0,0,1,0.5,0.5,0,0,[]],58,3751,[[0]],[[1],[1]],[0,"Default",0,1]],[[1368,1520,0,32,32,0,0,1,0.5,0.5,0,0,[]],58,3752,[[0]],[[1],[1]],[0,"Default",0,1]],[[1400,1520,0,32,32,0,0,1,0.5,0.5,0,0,[]],58,3753,[[0]],[[1],[1]],[0,"Default",0,1]],[[1432,1520,0,32,32,0,0,1,0.5,0.5,0,0,[]],58,3754,[[0]],[[1],[1]],[0,"Default",0,1]],[[1464,1520,0,32,32,0,0,1,0.5,0.5,0,0,[]],58,3755,[[0]],[[1],[1]],[0,"Default",0,1]],[[1496,1520,0,32,32,0,0,1,0.5,0.5,0,0,[]],58,3756,[[0]],[[1],[1]],[0,"Default",0,1]],[[1528,1520,0,32,32,0,0,1,0.5,0.5,0,0,[]],58,3757,[[0]],[[1],[1]],[0,"Default",0,1]],[[1560,1520,0,32,32,0,0,1,0.5,0.5,0,0,[]],58,3758,[[0]],[[1],[1]],[0,"Default",0,1]],[[1592,1520,0,32,32,0,0,1,0.5,0.5,0,0,[]],58,3759,[[0]],[[1],[1]],[0,"Default",0,1]],[[1624,1520,0,32,32,0,0,1,0.5,0.5,0,0,[]],58,3760,[[0]],[[1],[1]],[0,"Default",0,1]],[[1656,1520,0,32,32,0,0,1,0.5,0.5,0,0,[]],58,3761,[[0]],[[1],[1]],[0,"Default",0,1]],[[1688,1520,0,32,32,0,0,1,0.5,0.5,0,0,[]],58,3762,[[0]],[[1],[1]],[0,"Default",0,1]],[[1720,1520,0,32,32,0,0,1,0.5,0.5,0,0,[]],58,3763,[[0]],[[1],[1]],[0,"Default",0,1]],[[1752,1520,0,32,32,0,0,1,0.5,0.5,0,0,[]],58,3764,[[0]],[[1],[1]],[0,"Default",0,1]],[[1784,1520,0,32,32,0,0,1,0.5,0.5,0,0,[]],58,3765,[[0]],[[1],[1]],[0,"Default",0,1]],[[1816,1520,0,32,32,0,0,1,0.5,0.5,0,0,[]],58,3766,[[0]],[[1],[1]],[0,"Default",0,1]],[[1072,1560,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],58,3767,[[0]],[[1],[1]],[0,"Default",0,1]],[[1104,1560,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],58,3768,[[0]],[[1],[1]],[0,"Default",0,1]],[[1136,1560,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],58,3769,[[0]],[[1],[1]],[0,"Default",0,1]],[[1168,1560,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],58,3770,[[0]],[[1],[1]],[0,"Default",0,1]],[[1200,1560,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],58,3771,[[0]],[[1],[1]],[0,"Default",0,1]],[[1232,1560,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],58,3772,[[0]],[[1],[1]],[0,"Default",0,1]],[[1264,1560,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],58,3773,[[0]],[[1],[1]],[0,"Default",0,1]],[[1296,1560,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],58,3774,[[0]],[[1],[1]],[0,"Default",0,1]],[[1336,1560,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],58,3775,[[0]],[[1],[1]],[0,"Default",0,1]],[[1368,1560,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],58,3776,[[0]],[[1],[1]],[0,"Default",0,1]],[[1400,1560,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],58,3777,[[0]],[[1],[1]],[0,"Default",0,1]],[[1432,1560,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],58,3778,[[0]],[[1],[1]],[0,"Default",0,1]],[[1464,1560,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],58,3779,[[0]],[[1],[1]],[0,"Default",0,1]],[[1496,1560,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],58,3780,[[0]],[[1],[1]],[0,"Default",0,1]],[[1528,1560,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],58,3781,[[0]],[[1],[1]],[0,"Default",0,1]],[[1560,1560,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],58,3782,[[0]],[[1],[1]],[0,"Default",0,1]],[[1592,1560,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],58,3783,[[0]],[[1],[1]],[0,"Default",0,1]],[[1624,1560,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],58,3784,[[0]],[[1],[1]],[0,"Default",0,1]],[[1656,1560,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],58,3785,[[0]],[[1],[1]],[0,"Default",0,1]],[[1688,1560,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],58,3786,[[0]],[[1],[1]],[0,"Default",0,1]],[[1720,1560,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],58,3787,[[0]],[[1],[1]],[0,"Default",0,1]],[[1752,1560,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],58,3788,[[0]],[[1],[1]],[0,"Default",0,1]],[[1784,1560,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],58,3789,[[0]],[[1],[1]],[0,"Default",0,1]],[[1816,1560,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],58,3790,[[0]],[[1],[1]],[0,"Default",0,1]],[[1760,1776,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3791,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1936,1456,0,64,64,0,0,1,0.5,0.5,0,0,[]],60,3291,[["level37"]],[[1],[400,-200,800,0,0,0],[0,0,0,1,1]],[0,"Default",0,1]],[[-29,273,0,288,117,0,0,1,0,0,0,0,[[]]],61,5628,[],[[1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>","1",7,0,60,0,0,0,0,0,"",-1,0]],[[1936,1520,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,10622,[[1],[0]],[[0]],[0,"Default",0,1]]],[]],["UI",2,822482958479208,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[240,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3097,[["right"]],[[0,1,0,1,1]],[0,"Default",0,1]],[[80,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3098,[["left"]],[[0,1,0,1,1]],[0,"Default",1,1]],[[560,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3099,[["up"]],[[1,1,1,1,1]],[0,"Default",3,1]],[[400,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3100,[["down"]],[[1,1,1,1,1]],[0,"Default",2,1]]],[]],["End Card",3,416654380290080,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],78,2607,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[12.04449462890625,194,0,615.9109497070313,67,0,0,1,0,0,0,0,[]],79,2608,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Timer for this level",2.5,0,0,0,0,0,-10,0,"",-1,0]],[[17.546875,248,0,604.90625,105,0,0,1,0,0,0,0,[]],80,2610,[[0],[0],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","13:40:40",4,0,63,50,0,0,-10,0,"",-1,0]],[[115.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,2611,[[0],[1],[0],[0],["replay"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Replay",""],[""],[2,2,0,0,0],["",""]],[0,"Replay",0,1]],[[524.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3086,[[0],[1],[0],[0],["next"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Next",""],[""],[2,2,0,0,0],["",""]],[0,"Next",0,1]],[[320.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3087,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > Back","Level Menu"],[""],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[320.75,521.8050537109375,0,384,96,0,0,1,0.5,0.5,0,0,[]],70,3088,[[1],[1],[0],[0],[""],["{\"size\": 22, \"left\": 70, \"right\": 18, \"alignY\": 60}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > DownloadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"DownloadReplay",0,1]]],[]],["Pause",4,505591739988055,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-310,678,0,274,31,0,0,1,0,0,0,0,[]],168,3089,[],[],[".ovo",0,1,"file"]],[[320,320,0,425,250,0,0,1,0.5,0.5,0,0,[]],82,3090,[],[[6,1,"",300,1,1,"",300,"overlay",1,"PauseClose",1,1]],[0,"Default",0,1]],[[214,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3091,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"",""],["PauseClose"],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[426,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3092,[[0],[1],[0],[0],["quit"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > GiveUp",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[115.5,202,0,409,118,0,0,1,0,0,0,0,[]],83,3093,[[1],[1],["pause"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Pause",4,0,57,50,0,0,-10,0,"",-1,0]],[[320.5,88,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3094,[[1],[1],[0],[0],["loadreplay"],["{\"size\": 16, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > LoadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"LoadReplay",0,1]],[[320.5,157,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3095,[[1],[0],[0],[0],["toggledebug"],["{\"size\": 15, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Debug > Toggle",""],[""],[2,2,0,0,0],["",""]],[0,"ToggleDebug",0,1]],[[78,448,0,484,134,0,0,1,0,0,0,0,[]],193,3096,[],[],[0,"Default",0,1]]],[]],["Overlay",5,448535249983684,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[432,4,0,203.0009155273438,64,0,0,1,0,0,0,0,[]],107,5488,[],[[1,0,1,0,1]],[2,2,2,2,0,1,0,0,1]],[[432,4,0,203,64,0,0,1,0,0,0,0,[]],84,3101,[[0],[0],[""],["en-us"],[0],[1],[1],["{\"alignY\": 85, \"alignX\": 45, \"size\": 28}"],[0],[1],[0],[0],[0]],[["",""],[1,0,1,0,1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",2,0,100,50,0,0,-10,0,"",-1,0]],[[88,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3102,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Pause",""],[""],[0,0,0,0,1],["",""]],[0,"Pause",0,1]],[[158,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3103,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Replay","1"],[""],[0,0,0,0,1],["",""]],[0,"Reload",0,1]]],[]],["End Game",6,553143439551194,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],85,3104,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[73,194,0,494,72,0,0,1,0,0,0,0,[]],86,3105,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],["{alignY:50}"],[0],[1],[0],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Your final time",2.5,0,50,50,0,0,-10,0,"",-1,0]],[[320,403,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3106,[[0],[1],[0],[0],[""],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Quit",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[73,243,0,494,85,0,0,1,0,0,0,0,[]],87,3108,[[0],[1],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",3,0,50,50,0,0,-10,0,"",-1,0]],[[73,318,0,494,25,0,0,1,0,0,0,0,[]],86,5480,[[1],[1],["tryagainhardmode"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Try again in hard mode!",1,0,50,50,0,0,-2,0,"",-1,0]]],[]],["Banner",7,231030712723552,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-237,-189,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,3109,[],[["overlay"]],[0,"Default",0,1]]],[]],["AdPlaying",8,478267432644681,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,-203.5,0,250,97,0,0,1,0.5,0.5,0,0,[]],125,390,[],[[6,1,"",300,1,1,"",300,"overlay",1,"",1,1],[]],[0,"Default",0,1]],[[209,-275,0,222,139,0,0,1,0,0,0,0,[]],86,391,[[1],[1],["adplaying"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","An ad is playing right now...",1.2,0,50,50,0,0,-2,0,"",-1,0]],[[-154.5756988525391,-294.3137512207031,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,5508,[],[["overlay"]],[0,"Default",0,1]]],[]]],[],[]],["Level 38",5000,4000,true,"Levels",884679451760907,[["Background",0,364159834553991,true,[255,255,255],false,1,1,1,false,false,1,0,0,[[[1438,2058,0,288,32,0,0,1,0,0,0,0,[[]]],65,6375,[[1],[1],[""],["en-us"],[1],[0],[0],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","1",1,0,50,0,0,0,0,0,"",-1,0]],[[-11080,3359.999755859375,0,4568,1688,0,0,1,-2.380000114440918,0.6399999856948853,0,0,[]],159,3526,[],[[0]],[0,"Default",0,1]]],[]],["Layer 0",1,197352983503943,true,[255,255,255],true,1,1,1,false,false,1,0,0,[[[1274,1895,0,60.93439102172852,60.93439102172852,0,0,1,0.5,0.5,0,0,[]],53,1016,[["Test of Adaptation"],[""],[0]],[],[1,"Default",0,1]],[[2928,1832,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,3053,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2928,2072,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,3453,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2272,1936,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3465,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2480,2160,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3475,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2360,2160,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3476,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2416,2160,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3477,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2648,1600,0,32,32,0,-3.141592502593994,1,0.5,0.5,0,0,[]],47,3478,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2704,1600,0,32,32,0,-3.141592502593994,1,0.5,0.5,0,0,[]],47,3479,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2536,1600,0,32,32,0,-3.141592502593994,1,0.5,0.5,0,0,[]],47,3480,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2592,1600,0,32,32,0,-3.141592502593994,1,0.5,0.5,0,0,[]],47,3481,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2928,1680,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,3482,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2480,1600,0,32,32,0,-3.141592502593994,1,0.5,0.5,0,0,[]],47,3483,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2768,1600,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,3484,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2544,1936,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3486,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2928,1760,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,3487,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2432,1936,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3488,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2488,1936,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3489,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2360,1600,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,3490,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2416,1600,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,3491,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2136,1600,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,3494,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2024,1600,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,3496,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2080,1600,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,3497,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1912,1600,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,3498,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1968,1600,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,3499,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1856,1600,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,3501,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2248,1640,0,32,32,0,-3.141592502593994,1,0.5,0.5,0,0,[]],47,3502,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2304,1640,0,32,32,0,-3.141592502593994,1,0.5,0.5,0,0,[]],47,3503,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2120,1760,0,32,32,0,-3.141592502593994,1,0.5,0.5,0,0,[]],47,3504,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2008,1760,0,32,32,0,-3.141592502593994,1,0.5,0.5,0,0,[]],47,3506,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2064,1760,0,32,32,0,-3.141592502593994,1,0.5,0.5,0,0,[]],47,3507,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1912,1784,0,32,32,0,-3.141592502593994,1,0.5,0.5,0,0,[]],47,3508,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1968,1784,0,32,32,0,-3.141592502593994,1,0.5,0.5,0,0,[]],47,3509,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1800,1736,0,32,32,0,-3.141592502593994,1,0.5,0.5,0,0,[]],47,3510,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1856,1784,0,32,32,0,-3.141592502593994,1,0.5,0.5,0,0,[]],47,3511,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1688,1784,0,32,32,0,-3.141592502593994,1,0.5,0.5,0,0,[]],47,3512,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1744,1760,0,32,32,0,-3.141592502593994,1,0.5,0.5,0,0,[]],47,3513,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2248,2120,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3514,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2304,2120,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3515,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2136,2120,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3516,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2192,2120,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3517,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2024,2120,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3518,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2080,2120,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3519,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1912,2120,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3520,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1968,2120,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3521,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1800,2120,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3522,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1856,2120,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3523,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1688,2120,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3524,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2920,2152,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2759,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2800,2152,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2760,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2856,2152,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2761,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1744,2120,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3525,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1888,2048,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,3561,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1888,2000,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,3562,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1888,2088,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,3563,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2832,1600,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,3572,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2888,1600,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,3573,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2672,1880,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,3583,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2672,1920,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,3587,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2672,1960,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,3588,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2632,1880,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,3589,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2632,1920,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,3590,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2632,1960,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,3591,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2328,1936,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3054,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2384,1936,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3603,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2667,2119,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,3584,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2672,2160,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,3586,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2672,2200,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,3592,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2637,2119,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,3593,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2632,2160,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,3594,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2632,2200,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,3595,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2672,2160,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,3596,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2672,2200,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,3598,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2672,2240,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,3599,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2072,3640,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3604,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1480,3800,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3605,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1864,3552,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,3606,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1480,3560,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,3608,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2360,3288,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,3609,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2328,3288,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,3610,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2296,3288,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,3611,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2264,3288,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,3612,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2232,3288,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,3613,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2200,3288,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,3614,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2168,3288,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,3615,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2136,3288,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,3616,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2104,3288,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,3617,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2072,3288,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,3618,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2040,3288,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,3619,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2008,3288,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,3620,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1976,3288,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,3621,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1944,3288,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,3622,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1912,3288,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,3623,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1880,3288,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,3624,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1848,3288,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,3625,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1816,3288,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,3626,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1784,3288,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,3627,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1752,3288,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,3628,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1720,3288,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,3629,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1688,3288,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,3630,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1656,3288,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,3631,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1624,3288,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,3632,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1656,3288,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,3633,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1624,3288,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,3634,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1592,3288,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,3635,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2424,3936,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3642,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2392,3936,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3643,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2360,3936,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3644,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2328,3936,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3645,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2296,3936,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3646,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2264,3936,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3647,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2232,3936,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3648,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2200,3936,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3649,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2168,3936,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3650,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2136,3936,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3651,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2104,3936,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3652,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2072,3936,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3653,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2040,3936,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3654,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2008,3936,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3655,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1976,3936,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3656,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1944,3936,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3657,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1912,3936,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3658,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1880,3936,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3659,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1848,3936,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3660,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1816,3936,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3661,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2048,3688,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,3607,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1480,3512,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3636,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1864,3504,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3637,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1784,3936,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3662,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1752,3936,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3663,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1720,3936,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3664,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1688,3936,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3665,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1720,3936,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3666,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1688,3936,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3667,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1656,3936,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3668,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1624,3936,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3669,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1592,3936,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3670,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1560,3936,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3671,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1528,3936,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3672,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1496,3936,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3673,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2632,2160,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,3600,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2632,2200,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,3601,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2632,2240,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,3602,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2512,2344,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3539,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1416,2136,0,1080,9,0,0,1,0,0,0,0,[]],56,3528,[],[[1],[1]],[0,0]],[[2544,2360,0,176,9,0,0,1,0,0,0,0,[]],52,3529,[],[[0],[0]],[0,0]],[[1504,1528,0,432,9,0,1.570796370506287,1,0,0,0,0,[]],56,3530,[],[[1],[1]],[0,0]],[[1424,1528,0,608,9,0,1.570796370506287,1,0,0,0,0,[]],56,3531,[],[[1],[1]],[0,0]],[[2664,2232,0,152,64,0,1.570796370506287,1,0,0,0,0,[]],46,3532,[[0],[1],[""],["en-us"],[0],[0],[1],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","--->",1,0,50,0,0,0,0,0,"",-1,0]],[[2728,2360,0,424,8,0,1.570796370506287,1,0,0,0,0,[]],56,3533,[],[[1],[1]],[0,0]],[[2544,2360,0,424,8,0,1.570796370506287,1,0,0,0,0,[]],56,3534,[],[[1],[1]],[0,0]],[[1704,2512,0,64,16,0,0,1,0,0,0,0,[]],57,3535,[[1],[1],[""],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[1]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Move",1,0,0,0,0,0,0,0,"",-1,0]],[[2112,1896,0,56.47058868408203,13.3333330154419,0,0,1,0,0,0,0,[]],56,3536,[],[[1],[1]],[0,0]],[[2752,1864,0,80,13,0,0,1,0,0,0,0,[]],56,3537,[],[[1],[1]],[0,0]],[[2304,1824,0,56.47058868408203,13.3333330154419,0,0,1,0,0,0,0,[]],56,3538,[],[[1],[1]],[0,0]],[[2488,2360,0,56.47058868408203,13.3333330154419,0,0,1,0,0,0,0,[]],56,3540,[],[[1],[1]],[0,0]],[[2728,2360,0,56.47058868408203,13.3333330154419,0,0,1,0,0,0,0,[]],56,3541,[],[[1],[1]],[0,0]],[[1968,2064,0,56.47058868408203,13.3333330154419,0,0,1,0,0,0,0,[]],56,3542,[],[[1],[1]],[0,0]],[[1856,1936,0,56.47058868408203,13.3333330154419,0,0,1,0,0,0,0,[]],56,3543,[],[[1],[1]],[0,0]],[[1456,1024,0,32,64,0,0,1,0.5,0.5,0,0,[]],42,3544,[["run"],[0],[1],[1],[0],[0.8],[0.5],[0],[1],[0],[0],[0],[""],[2],[0],[0],[0],[""],[0],[3],[0],[0],[0],[0],[0],[0],[0]],[[330,1500,1500,650,1500,1000,0,0,0,1],[],[0,0],[0,10000,360,1]],[1,"Default",0,1]],[[1656,2056,0,56.47058868408203,13.3333330154419,0,0,1,0,0,0,0,[]],56,3545,[],[[1],[1]],[0,0]],[[1424.000122070313,401,0,1744,9,0,1.570796370506287,1,0,0,0,0,[]],51,3546,[],[[0],[1],[1,100,""]],[0,0]],[[1504.000122070313,401,0,1184,9,0,1.570796370506287,1,0,0,0,0,[]],51,3547,[],[[0],[1],[1,100,""]],[0,0]],[[2728,2776,0,616,9,0,1.570796370506287,1,0,0,0,0,[]],51,3548,[],[[0],[1],[1,100,""]],[0,0]],[[2544,2776,0,616,9,0,1.570796370506287,1,0,0,0,0,[]],51,3549,[],[[0],[1],[1,100,""]],[0,0]],[[2736,2472,0,96,8,0,0,1,0,0,0,0,[]],45,3550,[],[[0],[1]],[0,0]],[[1512,1888,0,64,32,0,0,1,0.125,0.5,0,0,[]],55,3551,[[1],[100]],[[1],[300,0.2,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[2216,2128,0,64,32,0,-1.570796489715576,1,0.125,0.5,0,0,[]],55,3552,[[1],[100]],[[1],[300,0.2,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[1496,1320,0,9,72,0,1.570796370506287,1,0,0,0,0,[]],48,3557,[],[[0],[1]],[0,0]],[[1464,1288,0,32,32,0,0,1,0.5,0.5,0,0,[]],49,3558,[[1],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[0,"Default",0,1]],[[1456,1328,0,48,18.2294921875,0,0,1,0.5,0.5,0,0,[]],50,3559,[[-1],[0],[0],[0],[0],[1],[0]],[[0],[1,0,1,1,"W 1;F 90",1000,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1402.88525390625,2504,0,48,936,0,-1.570796489715576,1,0.5,0.5,0,0,[]],50,3560,[[-1],[0],[0],[0],[0],[1],[0]],[[0],[1,0,1,0,"W 2.5; F 800; W 2.5; B 800",425,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1672,2136,0,656,9,0,0,1,0,0,0,0,[]],51,3564,[],[[0],[1],[1,100,""]],[0,0]],[[2320,2176,0,176,9,0,0,1,0,0,0,0,[]],51,3565,[],[[0],[1],[1,100,""]],[0,0]],[[2328,2136,0,48,9,0,1.570796370506287,1,0,0,0,0,[]],51,3566,[],[[0],[1],[1,100,""]],[0,0]],[[2256,1952,0,304,9,0,0,1,0,0,0,0,[]],51,3567,[],[[0],[1],[1,100,""]],[0,0]],[[2952,1584,0,592,9,0,1.570796370506287,1,0,0,0,0,[]],51,3569,[],[[0],[1],[1,100,""]],[0,0]],[[2776,2168,0,176,9,0,0,1,0,0,0,0,[]],51,3570,[],[[0],[1],[1,100,""]],[0,0]],[[2320,1576,0,632,9,0,0,1,0,0,0,0,[]],51,3571,[],[[0],[1],[1,100,""]],[0,0]],[[1992,1736,0,144,9,0,0,1,0,0,0,0,[]],51,3485,[],[[0],[1],[1,100,""]],[0,0]],[[1504,1576,0,680,9,0,0,1,0,0,0,0,[]],51,3492,[],[[0],[1],[1,100,""]],[0,0]],[[2184,1576,0,48,9,0,1.570796370506287,1,0,0,0,0,[]],51,3493,[],[[0],[1],[1,100,""]],[0,0]],[[2176,1616,0,144,9,0,0,1,0,0,0,0,[]],51,3495,[],[[0],[1],[1,100,""]],[0,0]],[[2320,1576,0,48,9,0,1.570796370506287,1,0,0,0,0,[]],51,3574,[],[[0],[1],[1,100,""]],[0,0]],[[1840,1760,0,144,9,0,0,1,0,0,0,0,[]],51,3575,[],[[0],[1],[1,100,""]],[0,0]],[[1784,1712,0,32,9,0,0,1,0,0,0,0,[]],51,3576,[],[[0],[1],[1,100,""]],[0,0]],[[1728,1736,0,32,9,0,0,1,0,0,0,0,[]],51,3577,[],[[0],[1],[1,100,""]],[0,0]],[[1672,1760,0,32,9,0,0,1,0,0,0,0,[]],51,3578,[],[[0],[1],[1,100,""]],[0,0]],[[2712,2056,0,104,13.3333330154419,0,0,1,0,0,0,0,[]],56,3582,[],[[1],[1]],[0,0]],[[2656,1864,0,112,9,0,1.570796370506287,1,0,0,0,0,[]],51,3553,[],[[0],[1],[1,100,""]],[0,0]],[[2656,2104,0,112,9,0,1.570796370506287,1,0,0,0,0,[]],51,3585,[],[[0],[1],[1,100,""]],[0,0]],[[2656,2144,0,112,9,0,1.570796370506287,1,0,0,0,0,[]],51,3597,[],[[0],[1],[1,100,""]],[0,0]],[[1803,1584,0,128,4,0,1.570796370506287,1,0,0,0,0,[]],45,2756,[],[[0],[1]],[0,0]],[[1747,1584,0,152,4,0,1.570796370506287,1,0,0,0,0,[]],45,2757,[],[[0],[1]],[0,0]],[[1691,1584,0,176,4,0,1.570796370506287,1,0,0,0,0,[]],45,2758,[],[[0],[1]],[0,0]],[[2536,3656,0,192,13.3333330154419,0,0,1,0,0,0,0,[]],56,2762,[],[[1],[1]],[0,0]],[[2312,3840,0,72,13,0,0,1,0,0,0,0,[]],56,2763,[],[[1],[1]],[0,0]],[[2264,3576,0,72,13,0,0,1,0,0,0,0,[]],56,2764,[],[[1],[1]],[0,0]],[[2016,3656,0,72,13,0,0,1,0,0,0,0,[]],56,2765,[],[[1],[1]],[0,0]],[[1832,3520,0,72,13,0,0,1,0,0,0,0,[]],56,2766,[],[[1],[1]],[0,0]],[[1816,3816,0,72,13,0,0,1,0,0,0,0,[]],56,2767,[],[[1],[1]],[0,0]],[[1640,3664,0,72,13,0,0,1,0,0,0,0,[]],56,2768,[],[[1],[1]],[0,0]],[[1448,3528,0,72,13,0,0,1,0,0,0,0,[]],56,2769,[],[[1],[1]],[0,0]],[[1440,3816,0,72,13,0,0,1,0,0,0,0,[]],56,2770,[],[[1],[1]],[0,0]],[[1000,3704,0,152,13,0,0,1,0,0,0,0,[]],56,2771,[],[[1],[1]],[0,0]],[[1072,3600,0,97,199,0,0,1,0.5257731676101685,0.4974874258041382,0,0,[]],44,3505,[],[[0]],[0,"Default",0,1]],[[2296,3560,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,3579,[[0.7],[0]],[[0]],[0,"Default",0,1]],[[1848,3800,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,3580,[[0.5],[0]],[[0]],[0,"Default",0,1]],[[1672,3648,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,3581,[[0.7],[0]],[[0]],[0,"Default",0,1]],[[1576,3264,0,960,9,0,0,1,0,0,0,0,[]],51,3641,[],[[0],[1],[1,100,""]],[0,0]],[[1480,3952,0,1120,9,0,0,1,0,0,0,0,[]],51,3674,[],[[0],[1],[1,100,""]],[0,0]],[[1591,1671,0,64,64,0,0,1,0.5,0.5,0,0,[]],60,5495,[["level38"]],[[1],[400,-200,800,0,0,0],[0,0,0,1,1]],[0,"Default",0,1]],[[1438,1958,0,288,117,0,0,1,0,0,0,0,[[]]],61,5630,[],[[1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>","1",7,0,60,0,0,0,0,0,"",-1,0]],[[1512,1807,0,64,32,0,0,1,0.125,0.5,0,0,[]],55,10623,[[1],[100]],[[1],[300,0.2,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]]],[]],["UI",2,129379441727718,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[240,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3097,[["right"]],[[0,1,0,1,1]],[0,"Default",0,1]],[[80,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3098,[["left"]],[[0,1,0,1,1]],[0,"Default",1,1]],[[560,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3099,[["up"]],[[1,1,1,1,1]],[0,"Default",3,1]],[[400,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3100,[["down"]],[[1,1,1,1,1]],[0,"Default",2,1]]],[]],["End Card",3,142339180879875,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],78,2607,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[12.04449462890625,194,0,615.9109497070313,67,0,0,1,0,0,0,0,[]],79,2608,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Timer for this level",2.5,0,0,0,0,0,-10,0,"",-1,0]],[[17.546875,248,0,604.90625,105,0,0,1,0,0,0,0,[]],80,2610,[[0],[0],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","13:40:40",4,0,63,50,0,0,-10,0,"",-1,0]],[[115.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,2611,[[0],[1],[0],[0],["replay"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Replay",""],[""],[2,2,0,0,0],["",""]],[0,"Replay",0,1]],[[524.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3086,[[0],[1],[0],[0],["next"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Next",""],[""],[2,2,0,0,0],["",""]],[0,"Next",0,1]],[[320.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3087,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > Back","Level Menu"],[""],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[320.75,521.8050537109375,0,384,96,0,0,1,0.5,0.5,0,0,[]],70,3088,[[1],[1],[0],[0],[""],["{\"size\": 22, \"left\": 70, \"right\": 18, \"alignY\": 60}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > DownloadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"DownloadReplay",0,1]]],[]],["Pause",4,846870060177898,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-310,678,0,274,31,0,0,1,0,0,0,0,[]],168,3089,[],[],[".ovo",0,1,"file"]],[[320,320,0,425,250,0,0,1,0.5,0.5,0,0,[]],82,3090,[],[[6,1,"",300,1,1,"",300,"overlay",1,"PauseClose",1,1]],[0,"Default",0,1]],[[214,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3091,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"",""],["PauseClose"],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[426,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3092,[[0],[1],[0],[0],["quit"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > GiveUp",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[115.5,202,0,409,118,0,0,1,0,0,0,0,[]],83,3093,[[1],[1],["pause"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Pause",4,0,57,50,0,0,-10,0,"",-1,0]],[[320.5,88,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3094,[[1],[1],[0],[0],["loadreplay"],["{\"size\": 16, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > LoadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"LoadReplay",0,1]],[[320.5,157,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3095,[[1],[0],[0],[0],["toggledebug"],["{\"size\": 15, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Debug > Toggle",""],[""],[2,2,0,0,0],["",""]],[0,"ToggleDebug",0,1]],[[78,448,0,484,134,0,0,1,0,0,0,0,[]],193,3096,[],[],[0,"Default",0,1]]],[]],["Overlay",5,806133097852659,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[432,4,0,203.0009155273438,64,0,0,1,0,0,0,0,[]],107,5488,[],[[1,0,1,0,1]],[2,2,2,2,0,1,0,0,1]],[[432,4,0,203,64,0,0,1,0,0,0,0,[]],84,3101,[[0],[0],[""],["en-us"],[0],[1],[1],["{\"alignY\": 85, \"alignX\": 45, \"size\": 28}"],[0],[1],[0],[0],[0]],[["",""],[1,0,1,0,1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",2,0,100,50,0,0,-10,0,"",-1,0]],[[88,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3102,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Pause",""],[""],[0,0,0,0,1],["",""]],[0,"Pause",0,1]],[[158,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3103,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Replay","1"],[""],[0,0,0,0,1],["",""]],[0,"Reload",0,1]]],[]],["End Game",6,717441974243220,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],85,3104,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[73,194,0,494,72,0,0,1,0,0,0,0,[]],86,3105,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],["{alignY:50}"],[0],[1],[0],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Your final time",2.5,0,50,50,0,0,-10,0,"",-1,0]],[[320,403,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3106,[[0],[1],[0],[0],[""],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Quit",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[73,243,0,494,85,0,0,1,0,0,0,0,[]],87,3108,[[0],[1],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",3,0,50,50,0,0,-10,0,"",-1,0]],[[73,318,0,494,25,0,0,1,0,0,0,0,[]],86,5480,[[1],[1],["tryagainhardmode"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Try again in hard mode!",1,0,50,50,0,0,-2,0,"",-1,0]]],[]],["Banner",7,922751150192083,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-237,-189,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,3109,[],[["overlay"]],[0,"Default",0,1]]],[]],["AdPlaying",8,548600288380852,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,-203.5,0,250,97,0,0,1,0.5,0.5,0,0,[]],125,390,[],[[6,1,"",300,1,1,"",300,"overlay",1,"",1,1],[]],[0,"Default",0,1]],[[209,-275,0,222,139,0,0,1,0,0,0,0,[]],86,391,[[1],[1],["adplaying"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","An ad is playing right now...",1.2,0,50,50,0,0,-2,0,"",-1,0]],[[-154.5756988525391,-294.3137512207031,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,5508,[],[["overlay"]],[0,"Default",0,1]]],[]]],[],[]],["Level 39",30000,30000,true,"Levels",522807999702537,[["Background",0,362256145875461,true,[0,0,0],false,0,0,1,false,false,1,0,0,[],[]],["Layer 0",1,440883075730242,true,[255,255,255],true,1,1,1,false,false,1,0,0,[[[1084.999877929688,619,0,19862,8,0,1.570796370506287,1,0,0,0,0,[]],51,4431,[],[[0],[1],[1,100,""]],[0,0]],[[965,261,0,60.93439102172852,60.93439102172852,0,0,1,0.5,0.5,0,0,[]],53,1022,[["Graduation?"],[""],[0]],[],[1,"Default",0,1]],[[9808,21483.45703125,0,18976,408,0,0,1,0.5257731676101685,0.4974874258041382,0,0,[]],44,4587,[],[[0]],[0,"Default",0,1]],[[688,520,0,32,64,0,0,1,0.5,0.5,0,0,[]],42,3835,[["run"],[0],[1],[1],[0],[0.8],[0.5],[0],[1],[0],[0],[0],[""],[2],[0],[0],[0],[""],[0],[3],[0],[0],[0],[0],[0],[0],[0]],[[330,1500,1500,650,1500,1000,0,0,0,1],[],[0,0],[0,10000,360,1]],[1,"Default",0,1]],[[608,600,0,744,8,0,0,1,0,0,0,0,[]],51,4140,[],[[0],[1],[1,100,""]],[0,0]],[[616,1,0,599,8,0,1.570796370506287,1,0,0,0,0,[]],51,4141,[],[[0],[1],[1,100,""]],[0,0]],[[1336,584,0,32,32,0,0,1,0.5,0.5,0,0,[]],58,4150,[[0]],[[1],[1]],[0,"Default",0,1]],[[1304,584,0,32,32,0,0,1,0.5,0.5,0,0,[]],58,4151,[[0]],[[1],[1]],[0,"Default",0,1]],[[1272,584,0,32,32,0,0,1,0.5,0.5,0,0,[]],58,4152,[[0]],[[1],[1]],[0,"Default",0,1]],[[1240,584,0,32,32,0,0,1,0.5,0.5,0,0,[]],58,4153,[[0]],[[1],[1]],[0,"Default",0,1]],[[1208,584,0,32,32,0,0,1,0.5,0.5,0,0,[]],58,4154,[[0]],[[1],[1]],[0,"Default",0,1]],[[1176,584,0,32,32,0,0,1,0.5,0.5,0,0,[]],58,4155,[[0]],[[1],[1]],[0,"Default",0,1]],[[1144,584,0,32,32,0,0,1,0.5,0.5,0,0,[]],58,4156,[[0]],[[1],[1]],[0,"Default",0,1]],[[1112,584,0,32,32,0,0,1,0.5,0.5,0,0,[]],58,4157,[[0]],[[1],[1]],[0,"Default",0,1]],[[777,385,0,288,117,0,0,1,0,0,0,0,[[]]],61,5631,[],[[1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>","1",7,0,60,0,0,0,0,0,"",-1,0]],[[1382,19867,0,587.2341918945313,587.2341918945313,0,0,1,0.5,0.5,0,0,[]],60,1048,[["level39"]],[[1],[400,-200,800,0,0,0],[0,0,0,1,1]],[0,"Default",0,1]],[[2032,5032,0,8,8,0,0,1,0,0,0,0,[]],56,4277,[],[[1],[0]],[0,0]],[[2104,4320,0,8,8,0,0,1,0,0,0,0,[]],56,4278,[],[[1],[0]],[0,0]],[[1752,5096,0,8,8,0,0,1,0,0,0,0,[]],56,4280,[],[[1],[0]],[0,0]],[[2264,5456,0,8,8,0,0,1,0,0,0,0,[]],56,4281,[],[[1],[0]],[0,0]],[[2040,5664,0,8,8,0,0,1,0,0,0,0,[]],56,4282,[],[[1],[0]],[0,0]],[[1808,5656,0,8,8,0,0,1,0,0,0,0,[]],56,4285,[],[[1],[0]],[0,0]],[[1728,6688,0,8,8,0,0,1,0,0,0,0,[]],56,4287,[],[[1],[0]],[0,0]],[[2272,6056,0,8,8,0,0,1,0,0,0,0,[]],56,4288,[],[[1],[0]],[0,0]],[[2416,6712,0,8,8,0,0,1,0,0,0,0,[]],56,4289,[],[[1],[0]],[0,0]],[[1872,6992,0,8,8,0,0,1,0,0,0,0,[]],56,4290,[],[[1],[0]],[0,0]],[[2312,6328,0,8,8,0,0,1,0,0,0,0,[]],56,4291,[],[[1],[0]],[0,0]],[[2080,6176,0,8,8,0,0,1,0,0,0,0,[]],56,4292,[],[[1],[0]],[0,0]],[[2424,7144,0,8,8,0,0,1,0,0,0,0,[]],56,4293,[],[[1],[0]],[0,0]],[[2896,6440,0,8,8,0,0,1,0,0,0,0,[]],56,4294,[],[[1],[0]],[0,0]],[[2792,7304,0,8,8,0,0,1,0,0,0,0,[]],56,4295,[],[[1],[0]],[0,0]],[[2008,7048,0,8,8,0,0,1,0,0,0,0,[]],56,4296,[],[[1],[0]],[0,0]],[[2392,7800,0,8,8,0,0,1,0,0,0,0,[]],56,4299,[],[[1],[0]],[0,0]],[[3240,7336,0,8,8,0,0,1,0,0,0,0,[]],56,4300,[],[[1],[0]],[0,0]],[[3312,6624,0,8,8,0,0,1,0,0,0,0,[]],56,4301,[],[[1],[0]],[0,0]],[[2904,6552,0,8,8,0,0,1,0,0,0,0,[]],56,4302,[],[[1],[0]],[0,0]],[[2960,7400,0,8,8,0,0,1,0,0,0,0,[]],56,4303,[],[[1],[0]],[0,0]],[[3472,7760,0,8,8,0,0,1,0,0,0,0,[]],56,4304,[],[[1],[0]],[0,0]],[[3248,7968,0,8,8,0,0,1,0,0,0,0,[]],56,4305,[],[[1],[0]],[0,0]],[[2856,8224,0,8,8,0,0,1,0,0,0,0,[]],56,4306,[],[[1],[0]],[0,0]],[[3688,6216,0,8,8,0,0,1,0,0,0,0,[]],56,4308,[],[[1],[0]],[0,0]],[[3136,6752,0,8,8,0,0,1,0,0,0,0,[]],56,4309,[],[[1],[0]],[0,0]],[[3608,7248,0,8,8,0,0,1,0,0,0,0,[]],56,4310,[],[[1],[0]],[0,0]],[[4152,6616,0,8,8,0,0,1,0,0,0,0,[]],56,4311,[],[[1],[0]],[0,0]],[[4296,7272,0,8,8,0,0,1,0,0,0,0,[]],56,4312,[],[[1],[0]],[0,0]],[[3752,7552,0,8,8,0,0,1,0,0,0,0,[]],56,4313,[],[[1],[0]],[0,0]],[[4192,6888,0,8,8,0,0,1,0,0,0,0,[]],56,4314,[],[[1],[0]],[0,0]],[[3960,6736,0,8,8,0,0,1,0,0,0,0,[]],56,4315,[],[[1],[0]],[0,0]],[[4304,7704,0,8,8,0,0,1,0,0,0,0,[]],56,4316,[],[[1],[0]],[0,0]],[[4776,7000,0,8,8,0,0,1,0,0,0,0,[]],56,4317,[],[[1],[0]],[0,0]],[[4672,7864,0,8,8,0,0,1,0,0,0,0,[]],56,4318,[],[[1],[0]],[0,0]],[[3888,7608,0,8,8,0,0,1,0,0,0,0,[]],56,4319,[],[[1],[0]],[0,0]],[[3600,7304,0,8,8,0,0,1,0,0,0,0,[]],56,4320,[],[[1],[0]],[0,0]],[[3288,7864,0,8,8,0,0,1,0,0,0,0,[]],56,4321,[],[[1],[0]],[0,0]],[[4272,8360,0,8,8,0,0,1,0,0,0,0,[]],56,4322,[],[[1],[0]],[0,0]],[[5120,7896,0,8,8,0,0,1,0,0,0,0,[]],56,4323,[],[[1],[0]],[0,0]],[[5192,7184,0,8,8,0,0,1,0,0,0,0,[]],56,4324,[],[[1],[0]],[0,0]],[[4784,7112,0,8,8,0,0,1,0,0,0,0,[]],56,4325,[],[[1],[0]],[0,0]],[[4840,7960,0,8,8,0,0,1,0,0,0,0,[]],56,4326,[],[[1],[0]],[0,0]],[[5352,8320,0,8,8,0,0,1,0,0,0,0,[]],56,4327,[],[[1],[0]],[0,0]],[[5128,8528,0,8,8,0,0,1,0,0,0,0,[]],56,4328,[],[[1],[0]],[0,0]],[[4736,8784,0,8,8,0,0,1,0,0,0,0,[]],56,4329,[],[[1],[0]],[0,0]],[[3104,6288,0,8,8,0,0,1,0,0,0,0,[]],56,4330,[],[[1],[0]],[0,0]],[[4432,4040,0,8,8,0,0,1,0,0,0,0,[]],56,4331,[],[[1],[0]],[0,0]],[[3880,4576,0,8,8,0,0,1,0,0,0,0,[]],56,4332,[],[[1],[0]],[0,0]],[[4352,5072,0,8,8,0,0,1,0,0,0,0,[]],56,4333,[],[[1],[0]],[0,0]],[[4896,4440,0,8,8,0,0,1,0,0,0,0,[]],56,4334,[],[[1],[0]],[0,0]],[[5040,5096,0,8,8,0,0,1,0,0,0,0,[]],56,4335,[],[[1],[0]],[0,0]],[[4496,5376,0,8,8,0,0,1,0,0,0,0,[]],56,4336,[],[[1],[0]],[0,0]],[[4936,4712,0,8,8,0,0,1,0,0,0,0,[]],56,4337,[],[[1],[0]],[0,0]],[[4704,4560,0,8,8,0,0,1,0,0,0,0,[]],56,4338,[],[[1],[0]],[0,0]],[[5048,5528,0,8,8,0,0,1,0,0,0,0,[]],56,4339,[],[[1],[0]],[0,0]],[[5416,5688,0,8,8,0,0,1,0,0,0,0,[]],56,4341,[],[[1],[0]],[0,0]],[[4632,5432,0,8,8,0,0,1,0,0,0,0,[]],56,4342,[],[[1],[0]],[0,0]],[[4344,5128,0,8,8,0,0,1,0,0,0,0,[]],56,4343,[],[[1],[0]],[0,0]],[[4032,5688,0,8,8,0,0,1,0,0,0,0,[]],56,4344,[],[[1],[0]],[0,0]],[[5016,6184,0,8,8,0,0,1,0,0,0,0,[]],56,4345,[],[[1],[0]],[0,0]],[[6096,6144,0,8,8,0,0,1,0,0,0,0,[]],56,4350,[],[[1],[0]],[0,0]],[[5872,6352,0,8,8,0,0,1,0,0,0,0,[]],56,4351,[],[[1],[0]],[0,0]],[[5480,6608,0,8,8,0,0,1,0,0,0,0,[]],56,4352,[],[[1],[0]],[0,0]],[[3848,4112,0,8,8,0,0,1,0,0,0,0,[]],56,4353,[],[[1],[0]],[0,0]],[[2448,4072,0,8,8,0,0,1,0,0,0,0,[]],56,4354,[],[[1],[0]],[0,0]],[[1896,4608,0,8,8,0,0,1,0,0,0,0,[]],56,4355,[],[[1],[0]],[0,0]],[[2368,5104,0,8,8,0,0,1,0,0,0,0,[]],56,4356,[],[[1],[0]],[0,0]],[[2912,4472,0,8,8,0,0,1,0,0,0,0,[]],56,4357,[],[[1],[0]],[0,0]],[[3056,5128,0,8,8,0,0,1,0,0,0,0,[]],56,4358,[],[[1],[0]],[0,0]],[[2512,5408,0,8,8,0,0,1,0,0,0,0,[]],56,4359,[],[[1],[0]],[0,0]],[[2832,8168,0,8,8,0,0,1,0,0,0,0,[]],56,4360,[],[[1],[0]],[0,0]],[[2288,8448,0,8,8,0,0,1,0,0,0,0,[]],56,4361,[],[[1],[0]],[0,0]],[[2728,7784,0,8,8,0,0,1,0,0,0,0,[]],56,4362,[],[[1],[0]],[0,0]],[[2496,7632,0,8,8,0,0,1,0,0,0,0,[]],56,4363,[],[[1],[0]],[0,0]],[[2840,8600,0,8,8,0,0,1,0,0,0,0,[]],56,4364,[],[[1],[0]],[0,0]],[[3312,7896,0,8,8,0,0,1,0,0,0,0,[]],56,4365,[],[[1],[0]],[0,0]],[[3208,8760,0,8,8,0,0,1,0,0,0,0,[]],56,4366,[],[[1],[0]],[0,0]],[[2424,8504,0,8,8,0,0,1,0,0,0,0,[]],56,4367,[],[[1],[0]],[0,0]],[[2136,8200,0,8,8,0,0,1,0,0,0,0,[]],56,4368,[],[[1],[0]],[0,0]],[[1824,8760,0,8,8,0,0,1,0,0,0,0,[]],56,4369,[],[[1],[0]],[0,0]],[[2808,9256,0,8,8,0,0,1,0,0,0,0,[]],56,4370,[],[[1],[0]],[0,0]],[[3656,8792,0,8,8,0,0,1,0,0,0,0,[]],56,4371,[],[[1],[0]],[0,0]],[[3728,8080,0,8,8,0,0,1,0,0,0,0,[]],56,4372,[],[[1],[0]],[0,0]],[[3320,8008,0,8,8,0,0,1,0,0,0,0,[]],56,4373,[],[[1],[0]],[0,0]],[[3376,8856,0,8,8,0,0,1,0,0,0,0,[]],56,4374,[],[[1],[0]],[0,0]],[[3888,9216,0,8,8,0,0,1,0,0,0,0,[]],56,4375,[],[[1],[0]],[0,0]],[[3664,9424,0,8,8,0,0,1,0,0,0,0,[]],56,4376,[],[[1],[0]],[0,0]],[[3272,9680,0,8,8,0,0,1,0,0,0,0,[]],56,4377,[],[[1],[0]],[0,0]],[[3432,9416,0,8,8,0,0,1,0,0,0,0,[]],56,4379,[],[[1],[0]],[0,0]],[[2880,9952,0,8,8,0,0,1,0,0,0,0,[]],56,4380,[],[[1],[0]],[0,0]],[[3352,10448,0,8,8,0,0,1,0,0,0,0,[]],56,4381,[],[[1],[0]],[0,0]],[[3896,9816,0,8,8,0,0,1,0,0,0,0,[]],56,4382,[],[[1],[0]],[0,0]],[[4040,10472,0,8,8,0,0,1,0,0,0,0,[]],56,4383,[],[[1],[0]],[0,0]],[[3496,10752,0,8,8,0,0,1,0,0,0,0,[]],56,4384,[],[[1],[0]],[0,0]],[[3936,10088,0,8,8,0,0,1,0,0,0,0,[]],56,4385,[],[[1],[0]],[0,0]],[[3704,9936,0,8,8,0,0,1,0,0,0,0,[]],56,4386,[],[[1],[0]],[0,0]],[[4048,10904,0,8,8,0,0,1,0,0,0,0,[]],56,4387,[],[[1],[0]],[0,0]],[[4520,10200,0,8,8,0,0,1,0,0,0,0,[]],56,4388,[],[[1],[0]],[0,0]],[[4416,11064,0,8,8,0,0,1,0,0,0,0,[]],56,4389,[],[[1],[0]],[0,0]],[[3632,10808,0,8,8,0,0,1,0,0,0,0,[]],56,4390,[],[[1],[0]],[0,0]],[[3344,10504,0,8,8,0,0,1,0,0,0,0,[]],56,4391,[],[[1],[0]],[0,0]],[[3032,11064,0,8,8,0,0,1,0,0,0,0,[]],56,4392,[],[[1],[0]],[0,0]],[[4016,11560,0,8,8,0,0,1,0,0,0,0,[]],56,4393,[],[[1],[0]],[0,0]],[[4864,11096,0,8,8,0,0,1,0,0,0,0,[]],56,4394,[],[[1],[0]],[0,0]],[[4936,10384,0,8,8,0,0,1,0,0,0,0,[]],56,4395,[],[[1],[0]],[0,0]],[[4528,10312,0,8,8,0,0,1,0,0,0,0,[]],56,4396,[],[[1],[0]],[0,0]],[[4584,11160,0,8,8,0,0,1,0,0,0,0,[]],56,4397,[],[[1],[0]],[0,0]],[[5096,11520,0,8,8,0,0,1,0,0,0,0,[]],56,4398,[],[[1],[0]],[0,0]],[[4872,11728,0,8,8,0,0,1,0,0,0,0,[]],56,4399,[],[[1],[0]],[0,0]],[[4480,11984,0,8,8,0,0,1,0,0,0,0,[]],56,4400,[],[[1],[0]],[0,0]],[[2848,9488,0,8,8,0,0,1,0,0,0,0,[]],56,4401,[],[[1],[0]],[0,0]],[[5312,9976,0,8,8,0,0,1,0,0,0,0,[]],56,4402,[],[[1],[0]],[0,0]],[[4760,10512,0,8,8,0,0,1,0,0,0,0,[]],56,4403,[],[[1],[0]],[0,0]],[[5232,11008,0,8,8,0,0,1,0,0,0,0,[]],56,4404,[],[[1],[0]],[0,0]],[[5776,10376,0,8,8,0,0,1,0,0,0,0,[]],56,4405,[],[[1],[0]],[0,0]],[[5920,11032,0,8,8,0,0,1,0,0,0,0,[]],56,4406,[],[[1],[0]],[0,0]],[[5376,11312,0,8,8,0,0,1,0,0,0,0,[]],56,4407,[],[[1],[0]],[0,0]],[[5816,10648,0,8,8,0,0,1,0,0,0,0,[]],56,4408,[],[[1],[0]],[0,0]],[[5584,10496,0,8,8,0,0,1,0,0,0,0,[]],56,4409,[],[[1],[0]],[0,0]],[[5928,11464,0,8,8,0,0,1,0,0,0,0,[]],56,4410,[],[[1],[0]],[0,0]],[[6400,10760,0,8,8,0,0,1,0,0,0,0,[]],56,4411,[],[[1],[0]],[0,0]],[[6296,11624,0,8,8,0,0,1,0,0,0,0,[]],56,4412,[],[[1],[0]],[0,0]],[[5512,11368,0,8,8,0,0,1,0,0,0,0,[]],56,4413,[],[[1],[0]],[0,0]],[[5224,11064,0,8,8,0,0,1,0,0,0,0,[]],56,4414,[],[[1],[0]],[0,0]],[[4912,11624,0,8,8,0,0,1,0,0,0,0,[]],56,4415,[],[[1],[0]],[0,0]],[[5896,12120,0,8,8,0,0,1,0,0,0,0,[]],56,4416,[],[[1],[0]],[0,0]],[[6408,10872,0,8,8,0,0,1,0,0,0,0,[]],56,4419,[],[[1],[0]],[0,0]],[[6464,11720,0,8,8,0,0,1,0,0,0,0,[]],56,4420,[],[[1],[0]],[0,0]],[[6360,12544,0,8,8,0,0,1,0,0,0,0,[]],56,4423,[],[[1],[0]],[0,0]],[[4728,10048,0,8,8,0,0,1,0,0,0,0,[]],56,4424,[],[[1],[0]],[0,0]],[[6056,7800,0,8,8,0,0,1,0,0,0,0,[]],56,4425,[],[[1],[0]],[0,0]],[[5504,8336,0,8,8,0,0,1,0,0,0,0,[]],56,4426,[],[[1],[0]],[0,0]],[[5976,8832,0,8,8,0,0,1,0,0,0,0,[]],56,4427,[],[[1],[0]],[0,0]],[[6120,9136,0,8,8,0,0,1,0,0,0,0,[]],56,4430,[],[[1],[0]],[0,0]],[[6256,9192,0,8,8,0,0,1,0,0,0,0,[]],56,4436,[],[[1],[0]],[0,0]],[[5968,8888,0,8,8,0,0,1,0,0,0,0,[]],56,4437,[],[[1],[0]],[0,0]],[[5656,9448,0,8,8,0,0,1,0,0,0,0,[]],56,4438,[],[[1],[0]],[0,0]],[[5472,7872,0,8,8,0,0,1,0,0,0,0,[]],56,4447,[],[[1],[0]],[0,0]],[[4072,7832,0,8,8,0,0,1,0,0,0,0,[]],56,4448,[],[[1],[0]],[0,0]],[[3520,8368,0,8,8,0,0,1,0,0,0,0,[]],56,4449,[],[[1],[0]],[0,0]],[[3992,8864,0,8,8,0,0,1,0,0,0,0,[]],56,4450,[],[[1],[0]],[0,0]],[[4536,8232,0,8,8,0,0,1,0,0,0,0,[]],56,4451,[],[[1],[0]],[0,0]],[[4680,8888,0,8,8,0,0,1,0,0,0,0,[]],56,4452,[],[[1],[0]],[0,0]],[[4136,9168,0,8,8,0,0,1,0,0,0,0,[]],56,4453,[],[[1],[0]],[0,0]],[[2512,12384,0,8,8,0,0,1,0,0,0,0,[]],56,4454,[],[[1],[0]],[0,0]],[[1968,12664,0,8,8,0,0,1,0,0,0,0,[]],56,4455,[],[[1],[0]],[0,0]],[[2408,12000,0,8,8,0,0,1,0,0,0,0,[]],56,4456,[],[[1],[0]],[0,0]],[[2176,11848,0,8,8,0,0,1,0,0,0,0,[]],56,4457,[],[[1],[0]],[0,0]],[[2520,12816,0,8,8,0,0,1,0,0,0,0,[]],56,4458,[],[[1],[0]],[0,0]],[[2992,12112,0,8,8,0,0,1,0,0,0,0,[]],56,4459,[],[[1],[0]],[0,0]],[[2888,12976,0,8,8,0,0,1,0,0,0,0,[]],56,4460,[],[[1],[0]],[0,0]],[[2104,12720,0,8,8,0,0,1,0,0,0,0,[]],56,4461,[],[[1],[0]],[0,0]],[[1816,12416,0,8,8,0,0,1,0,0,0,0,[]],56,4462,[],[[1],[0]],[0,0]],[[2488,13472,0,8,8,0,0,1,0,0,0,0,[]],56,4464,[],[[1],[0]],[0,0]],[[3336,13008,0,8,8,0,0,1,0,0,0,0,[]],56,4465,[],[[1],[0]],[0,0]],[[3408,12296,0,8,8,0,0,1,0,0,0,0,[]],56,4466,[],[[1],[0]],[0,0]],[[3000,12224,0,8,8,0,0,1,0,0,0,0,[]],56,4467,[],[[1],[0]],[0,0]],[[3056,13072,0,8,8,0,0,1,0,0,0,0,[]],56,4468,[],[[1],[0]],[0,0]],[[3568,13432,0,8,8,0,0,1,0,0,0,0,[]],56,4469,[],[[1],[0]],[0,0]],[[3344,13640,0,8,8,0,0,1,0,0,0,0,[]],56,4470,[],[[1],[0]],[0,0]],[[2952,13896,0,8,8,0,0,1,0,0,0,0,[]],56,4471,[],[[1],[0]],[0,0]],[[3112,13632,0,8,8,0,0,1,0,0,0,0,[]],56,4473,[],[[1],[0]],[0,0]],[[2560,14168,0,8,8,0,0,1,0,0,0,0,[]],56,4474,[],[[1],[0]],[0,0]],[[3032,14664,0,8,8,0,0,1,0,0,0,0,[]],56,4475,[],[[1],[0]],[0,0]],[[3576,14032,0,8,8,0,0,1,0,0,0,0,[]],56,4476,[],[[1],[0]],[0,0]],[[3720,14688,0,8,8,0,0,1,0,0,0,0,[]],56,4477,[],[[1],[0]],[0,0]],[[3176,14968,0,8,8,0,0,1,0,0,0,0,[]],56,4478,[],[[1],[0]],[0,0]],[[3616,14304,0,8,8,0,0,1,0,0,0,0,[]],56,4479,[],[[1],[0]],[0,0]],[[3384,14152,0,8,8,0,0,1,0,0,0,0,[]],56,4480,[],[[1],[0]],[0,0]],[[3728,15120,0,8,8,0,0,1,0,0,0,0,[]],56,4481,[],[[1],[0]],[0,0]],[[4200,14416,0,8,8,0,0,1,0,0,0,0,[]],56,4482,[],[[1],[0]],[0,0]],[[4096,15280,0,8,8,0,0,1,0,0,0,0,[]],56,4483,[],[[1],[0]],[0,0]],[[3312,15024,0,8,8,0,0,1,0,0,0,0,[]],56,4484,[],[[1],[0]],[0,0]],[[3024,14720,0,8,8,0,0,1,0,0,0,0,[]],56,4485,[],[[1],[0]],[0,0]],[[2712,15280,0,8,8,0,0,1,0,0,0,0,[]],56,4486,[],[[1],[0]],[0,0]],[[3696,15776,0,8,8,0,0,1,0,0,0,0,[]],56,4487,[],[[1],[0]],[0,0]],[[4544,15312,0,8,8,0,0,1,0,0,0,0,[]],56,4488,[],[[1],[0]],[0,0]],[[4616,14600,0,8,8,0,0,1,0,0,0,0,[]],56,4489,[],[[1],[0]],[0,0]],[[4208,14528,0,8,8,0,0,1,0,0,0,0,[]],56,4490,[],[[1],[0]],[0,0]],[[4264,15376,0,8,8,0,0,1,0,0,0,0,[]],56,4491,[],[[1],[0]],[0,0]],[[4776,15736,0,8,8,0,0,1,0,0,0,0,[]],56,4492,[],[[1],[0]],[0,0]],[[4552,15944,0,8,8,0,0,1,0,0,0,0,[]],56,4493,[],[[1],[0]],[0,0]],[[4160,16200,0,8,8,0,0,1,0,0,0,0,[]],56,4494,[],[[1],[0]],[0,0]],[[2528,13704,0,8,8,0,0,1,0,0,0,0,[]],56,4495,[],[[1],[0]],[0,0]],[[4992,14192,0,8,8,0,0,1,0,0,0,0,[]],56,4496,[],[[1],[0]],[0,0]],[[4440,14728,0,8,8,0,0,1,0,0,0,0,[]],56,4497,[],[[1],[0]],[0,0]],[[4912,15224,0,8,8,0,0,1,0,0,0,0,[]],56,4498,[],[[1],[0]],[0,0]],[[5456,14592,0,8,8,0,0,1,0,0,0,0,[]],56,4499,[],[[1],[0]],[0,0]],[[5600,15248,0,8,8,0,0,1,0,0,0,0,[]],56,4500,[],[[1],[0]],[0,0]],[[5056,15528,0,8,8,0,0,1,0,0,0,0,[]],56,4501,[],[[1],[0]],[0,0]],[[5496,14864,0,8,8,0,0,1,0,0,0,0,[]],56,4502,[],[[1],[0]],[0,0]],[[5264,14712,0,8,8,0,0,1,0,0,0,0,[]],56,4503,[],[[1],[0]],[0,0]],[[5608,15680,0,8,8,0,0,1,0,0,0,0,[]],56,4504,[],[[1],[0]],[0,0]],[[6080,14976,0,8,8,0,0,1,0,0,0,0,[]],56,4505,[],[[1],[0]],[0,0]],[[5976,15840,0,8,8,0,0,1,0,0,0,0,[]],56,4506,[],[[1],[0]],[0,0]],[[5192,15584,0,8,8,0,0,1,0,0,0,0,[]],56,4507,[],[[1],[0]],[0,0]],[[4904,15280,0,8,8,0,0,1,0,0,0,0,[]],56,4508,[],[[1],[0]],[0,0]],[[4592,15840,0,8,8,0,0,1,0,0,0,0,[]],56,4509,[],[[1],[0]],[0,0]],[[5576,16336,0,8,8,0,0,1,0,0,0,0,[]],56,4510,[],[[1],[0]],[0,0]],[[6424,15872,0,8,8,0,0,1,0,0,0,0,[]],56,4511,[],[[1],[0]],[0,0]],[[6496,15160,0,8,8,0,0,1,0,0,0,0,[]],56,4512,[],[[1],[0]],[0,0]],[[6088,15088,0,8,8,0,0,1,0,0,0,0,[]],56,4513,[],[[1],[0]],[0,0]],[[6144,15936,0,8,8,0,0,1,0,0,0,0,[]],56,4514,[],[[1],[0]],[0,0]],[[6432,16504,0,8,8,0,0,1,0,0,0,0,[]],56,4516,[],[[1],[0]],[0,0]],[[6040,16760,0,8,8,0,0,1,0,0,0,0,[]],56,4517,[],[[1],[0]],[0,0]],[[4408,14264,0,8,8,0,0,1,0,0,0,0,[]],56,4518,[],[[1],[0]],[0,0]],[[5736,12016,0,8,8,0,0,1,0,0,0,0,[]],56,4519,[],[[1],[0]],[0,0]],[[5184,12552,0,8,8,0,0,1,0,0,0,0,[]],56,4520,[],[[1],[0]],[0,0]],[[5656,13048,0,8,8,0,0,1,0,0,0,0,[]],56,4521,[],[[1],[0]],[0,0]],[[6200,12416,0,8,8,0,0,1,0,0,0,0,[]],56,4522,[],[[1],[0]],[0,0]],[[6344,13072,0,8,8,0,0,1,0,0,0,0,[]],56,4523,[],[[1],[0]],[0,0]],[[5800,13352,0,8,8,0,0,1,0,0,0,0,[]],56,4524,[],[[1],[0]],[0,0]],[[6240,12688,0,8,8,0,0,1,0,0,0,0,[]],56,4525,[],[[1],[0]],[0,0]],[[6008,12536,0,8,8,0,0,1,0,0,0,0,[]],56,4526,[],[[1],[0]],[0,0]],[[6352,13504,0,8,8,0,0,1,0,0,0,0,[]],56,4527,[],[[1],[0]],[0,0]],[[5936,13408,0,8,8,0,0,1,0,0,0,0,[]],56,4530,[],[[1],[0]],[0,0]],[[5648,13104,0,8,8,0,0,1,0,0,0,0,[]],56,4531,[],[[1],[0]],[0,0]],[[5336,13664,0,8,8,0,0,1,0,0,0,0,[]],56,4532,[],[[1],[0]],[0,0]],[[6320,14160,0,8,8,0,0,1,0,0,0,0,[]],56,4533,[],[[1],[0]],[0,0]],[[5152,12088,0,8,8,0,0,1,0,0,0,0,[]],56,4541,[],[[1],[0]],[0,0]],[[3752,12048,0,8,8,0,0,1,0,0,0,0,[]],56,4542,[],[[1],[0]],[0,0]],[[3200,12584,0,8,8,0,0,1,0,0,0,0,[]],56,4543,[],[[1],[0]],[0,0]],[[3672,13080,0,8,8,0,0,1,0,0,0,0,[]],56,4544,[],[[1],[0]],[0,0]],[[4216,12448,0,8,8,0,0,1,0,0,0,0,[]],56,4545,[],[[1],[0]],[0,0]],[[4360,13104,0,8,8,0,0,1,0,0,0,0,[]],56,4546,[],[[1],[0]],[0,0]],[[3816,13384,0,8,8,0,0,1,0,0,0,0,[]],56,4547,[],[[1],[0]],[0,0]],[[4184,16672,0,8,8,0,0,1,0,0,0,0,[]],56,4548,[],[[1],[0]],[0,0]],[[3640,16952,0,8,8,0,0,1,0,0,0,0,[]],56,4549,[],[[1],[0]],[0,0]],[[4080,16288,0,8,8,0,0,1,0,0,0,0,[]],56,4550,[],[[1],[0]],[0,0]],[[3848,16136,0,8,8,0,0,1,0,0,0,0,[]],56,4551,[],[[1],[0]],[0,0]],[[4192,17104,0,8,8,0,0,1,0,0,0,0,[]],56,4552,[],[[1],[0]],[0,0]],[[4664,16400,0,8,8,0,0,1,0,0,0,0,[]],56,4553,[],[[1],[0]],[0,0]],[[4560,17264,0,8,8,0,0,1,0,0,0,0,[]],56,4554,[],[[1],[0]],[0,0]],[[3776,17008,0,8,8,0,0,1,0,0,0,0,[]],56,4555,[],[[1],[0]],[0,0]],[[3488,16704,0,8,8,0,0,1,0,0,0,0,[]],56,4556,[],[[1],[0]],[0,0]],[[3176,17264,0,8,8,0,0,1,0,0,0,0,[]],56,4557,[],[[1],[0]],[0,0]],[[4160,17760,0,8,8,0,0,1,0,0,0,0,[]],56,4558,[],[[1],[0]],[0,0]],[[5008,17296,0,8,8,0,0,1,0,0,0,0,[]],56,4559,[],[[1],[0]],[0,0]],[[5080,16584,0,8,8,0,0,1,0,0,0,0,[]],56,4560,[],[[1],[0]],[0,0]],[[4672,16512,0,8,8,0,0,1,0,0,0,0,[]],56,4561,[],[[1],[0]],[0,0]],[[4728,17360,0,8,8,0,0,1,0,0,0,0,[]],56,4562,[],[[1],[0]],[0,0]],[[5240,17720,0,8,8,0,0,1,0,0,0,0,[]],56,4563,[],[[1],[0]],[0,0]],[[5016,17928,0,8,8,0,0,1,0,0,0,0,[]],56,4564,[],[[1],[0]],[0,0]],[[4624,18184,0,8,8,0,0,1,0,0,0,0,[]],56,4565,[],[[1],[0]],[0,0]],[[2992,15688,0,8,8,0,0,1,0,0,0,0,[]],56,4566,[],[[1],[0]],[0,0]],[[4784,17920,0,8,8,0,0,1,0,0,0,0,[]],56,4567,[],[[1],[0]],[0,0]],[[4232,18456,0,8,8,0,0,1,0,0,0,0,[]],56,4568,[],[[1],[0]],[0,0]],[[4704,18952,0,8,8,0,0,1,0,0,0,0,[]],56,4569,[],[[1],[0]],[0,0]],[[5248,18320,0,8,8,0,0,1,0,0,0,0,[]],56,4570,[],[[1],[0]],[0,0]],[[5392,18976,0,8,8,0,0,1,0,0,0,0,[]],56,4571,[],[[1],[0]],[0,0]],[[4848,19256,0,8,8,0,0,1,0,0,0,0,[]],56,4572,[],[[1],[0]],[0,0]],[[5288,18592,0,8,8,0,0,1,0,0,0,0,[]],56,4573,[],[[1],[0]],[0,0]],[[5056,18440,0,8,8,0,0,1,0,0,0,0,[]],56,4574,[],[[1],[0]],[0,0]],[[5400,19408,0,8,8,0,0,1,0,0,0,0,[]],56,4575,[],[[1],[0]],[0,0]],[[5872,18704,0,8,8,0,0,1,0,0,0,0,[]],56,4576,[],[[1],[0]],[0,0]],[[5768,19568,0,8,8,0,0,1,0,0,0,0,[]],56,4577,[],[[1],[0]],[0,0]],[[4984,19312,0,8,8,0,0,1,0,0,0,0,[]],56,4578,[],[[1],[0]],[0,0]],[[4696,19008,0,8,8,0,0,1,0,0,0,0,[]],56,4579,[],[[1],[0]],[0,0]],[[4384,19568,0,8,8,0,0,1,0,0,0,0,[]],56,4580,[],[[1],[0]],[0,0]],[[5368,20064,0,8,8,0,0,1,0,0,0,0,[]],56,4581,[],[[1],[0]],[0,0]],[[6216,19600,0,8,8,0,0,1,0,0,0,0,[]],56,4582,[],[[1],[0]],[0,0]],[[6288,18888,0,8,8,0,0,1,0,0,0,0,[]],56,4583,[],[[1],[0]],[0,0]],[[5880,18816,0,8,8,0,0,1,0,0,0,0,[]],56,4584,[],[[1],[0]],[0,0]],[[5936,19664,0,8,8,0,0,1,0,0,0,0,[]],56,4585,[],[[1],[0]],[0,0]],[[6448,20024,0,8,8,0,0,1,0,0,0,0,[]],56,4586,[],[[1],[0]],[0,0]],[[4200,17992,0,8,8,0,0,1,0,0,0,0,[]],56,4589,[],[[1],[0]],[0,0]],[[6112,19016,0,8,8,0,0,1,0,0,0,0,[]],56,4591,[],[[1],[0]],[0,0]],[[6264,20128,0,8,8,0,0,1,0,0,0,0,[]],56,4603,[],[[1],[0]],[0,0]],[[6080,18552,0,8,8,0,0,1,0,0,0,0,[]],56,4612,[],[[1],[0]],[0,0]],[[5424,16336,0,8,8,0,0,1,0,0,0,0,[]],56,4636,[],[[1],[0]],[0,0]],[[4872,16872,0,8,8,0,0,1,0,0,0,0,[]],56,4637,[],[[1],[0]],[0,0]],[[5344,17368,0,8,8,0,0,1,0,0,0,0,[]],56,4638,[],[[1],[0]],[0,0]],[[5888,16736,0,8,8,0,0,1,0,0,0,0,[]],56,4639,[],[[1],[0]],[0,0]],[[6032,17392,0,8,8,0,0,1,0,0,0,0,[]],56,4640,[],[[1],[0]],[0,0]],[[5488,17672,0,8,8,0,0,1,0,0,0,0,[]],56,4641,[],[[1],[0]],[0,0]],[[3392,5832,0,8,8,0,0,1,0,0,0,0,[]],56,5018,[],[[1],[0]],[0,0]],[[2848,6112,0,8,8,0,0,1,0,0,0,0,[]],56,5019,[],[[1],[0]],[0,0]],[[3288,5448,0,8,8,0,0,1,0,0,0,0,[]],56,5020,[],[[1],[0]],[0,0]],[[3056,5296,0,8,8,0,0,1,0,0,0,0,[]],56,5021,[],[[1],[0]],[0,0]],[[3400,6264,0,8,8,0,0,1,0,0,0,0,[]],56,5022,[],[[1],[0]],[0,0]],[[3872,5560,0,8,8,0,0,1,0,0,0,0,[]],56,5023,[],[[1],[0]],[0,0]],[[3768,6424,0,8,8,0,0,1,0,0,0,0,[]],56,5024,[],[[1],[0]],[0,0]],[[2984,6168,0,8,8,0,0,1,0,0,0,0,[]],56,5025,[],[[1],[0]],[0,0]],[[2696,5864,0,8,8,0,0,1,0,0,0,0,[]],56,5026,[],[[1],[0]],[0,0]],[[2384,6424,0,8,8,0,0,1,0,0,0,0,[]],56,5027,[],[[1],[0]],[0,0]],[[3368,6920,0,8,8,0,0,1,0,0,0,0,[]],56,5028,[],[[1],[0]],[0,0]],[[4216,6456,0,8,8,0,0,1,0,0,0,0,[]],56,5029,[],[[1],[0]],[0,0]],[[4288,5744,0,8,8,0,0,1,0,0,0,0,[]],56,5030,[],[[1],[0]],[0,0]],[[3880,5672,0,8,8,0,0,1,0,0,0,0,[]],56,5031,[],[[1],[0]],[0,0]],[[3936,6520,0,8,8,0,0,1,0,0,0,0,[]],56,5032,[],[[1],[0]],[0,0]],[[4448,6880,0,8,8,0,0,1,0,0,0,0,[]],56,5033,[],[[1],[0]],[0,0]],[[4224,7088,0,8,8,0,0,1,0,0,0,0,[]],56,5034,[],[[1],[0]],[0,0]],[[3832,7344,0,8,8,0,0,1,0,0,0,0,[]],56,5035,[],[[1],[0]],[0,0]],[[2200,4848,0,8,8,0,0,1,0,0,0,0,[]],56,5036,[],[[1],[0]],[0,0]],[[3992,7080,0,8,8,0,0,1,0,0,0,0,[]],56,5037,[],[[1],[0]],[0,0]],[[3440,7616,0,8,8,0,0,1,0,0,0,0,[]],56,5038,[],[[1],[0]],[0,0]],[[3912,8112,0,8,8,0,0,1,0,0,0,0,[]],56,5039,[],[[1],[0]],[0,0]],[[4456,7480,0,8,8,0,0,1,0,0,0,0,[]],56,5040,[],[[1],[0]],[0,0]],[[4600,8136,0,8,8,0,0,1,0,0,0,0,[]],56,5041,[],[[1],[0]],[0,0]],[[4056,8416,0,8,8,0,0,1,0,0,0,0,[]],56,5042,[],[[1],[0]],[0,0]],[[4496,7752,0,8,8,0,0,1,0,0,0,0,[]],56,5043,[],[[1],[0]],[0,0]],[[4264,7600,0,8,8,0,0,1,0,0,0,0,[]],56,5044,[],[[1],[0]],[0,0]],[[4608,8568,0,8,8,0,0,1,0,0,0,0,[]],56,5045,[],[[1],[0]],[0,0]],[[5080,7864,0,8,8,0,0,1,0,0,0,0,[]],56,5046,[],[[1],[0]],[0,0]],[[4976,8728,0,8,8,0,0,1,0,0,0,0,[]],56,5047,[],[[1],[0]],[0,0]],[[4192,8472,0,8,8,0,0,1,0,0,0,0,[]],56,5048,[],[[1],[0]],[0,0]],[[3904,8168,0,8,8,0,0,1,0,0,0,0,[]],56,5049,[],[[1],[0]],[0,0]],[[3592,8728,0,8,8,0,0,1,0,0,0,0,[]],56,5050,[],[[1],[0]],[0,0]],[[4576,9224,0,8,8,0,0,1,0,0,0,0,[]],56,5051,[],[[1],[0]],[0,0]],[[5424,8760,0,8,8,0,0,1,0,0,0,0,[]],56,5052,[],[[1],[0]],[0,0]],[[5496,8048,0,8,8,0,0,1,0,0,0,0,[]],56,5053,[],[[1],[0]],[0,0]],[[5088,7976,0,8,8,0,0,1,0,0,0,0,[]],56,5054,[],[[1],[0]],[0,0]],[[5144,8824,0,8,8,0,0,1,0,0,0,0,[]],56,5055,[],[[1],[0]],[0,0]],[[5656,9184,0,8,8,0,0,1,0,0,0,0,[]],56,5056,[],[[1],[0]],[0,0]],[[5432,9392,0,8,8,0,0,1,0,0,0,0,[]],56,5057,[],[[1],[0]],[0,0]],[[5040,9648,0,8,8,0,0,1,0,0,0,0,[]],56,5058,[],[[1],[0]],[0,0]],[[3408,7152,0,8,8,0,0,1,0,0,0,0,[]],56,5059,[],[[1],[0]],[0,0]],[[5872,7640,0,8,8,0,0,1,0,0,0,0,[]],56,5060,[],[[1],[0]],[0,0]],[[5320,8176,0,8,8,0,0,1,0,0,0,0,[]],56,5061,[],[[1],[0]],[0,0]],[[5792,8672,0,8,8,0,0,1,0,0,0,0,[]],56,5062,[],[[1],[0]],[0,0]],[[6480,8696,0,8,8,0,0,1,0,0,0,0,[]],56,5064,[],[[1],[0]],[0,0]],[[5936,8976,0,8,8,0,0,1,0,0,0,0,[]],56,5065,[],[[1],[0]],[0,0]],[[6488,9128,0,8,8,0,0,1,0,0,0,0,[]],56,5068,[],[[1],[0]],[0,0]],[[6072,9032,0,8,8,0,0,1,0,0,0,0,[]],56,5071,[],[[1],[0]],[0,0]],[[5784,8728,0,8,8,0,0,1,0,0,0,0,[]],56,5072,[],[[1],[0]],[0,0]],[[5472,9288,0,8,8,0,0,1,0,0,0,0,[]],56,5073,[],[[1],[0]],[0,0]],[[6456,9784,0,8,8,0,0,1,0,0,0,0,[]],56,5074,[],[[1],[0]],[0,0]],[[5288,7712,0,8,8,0,0,1,0,0,0,0,[]],56,5082,[],[[1],[0]],[0,0]],[[6064,6000,0,8,8,0,0,1,0,0,0,0,[]],56,5084,[],[[1],[0]],[0,0]],[[4632,5496,0,8,8,0,0,1,0,0,0,0,[]],56,5106,[],[[1],[0]],[0,0]],[[4080,6032,0,8,8,0,0,1,0,0,0,0,[]],56,5107,[],[[1],[0]],[0,0]],[[4552,6528,0,8,8,0,0,1,0,0,0,0,[]],56,5108,[],[[1],[0]],[0,0]],[[5096,5896,0,8,8,0,0,1,0,0,0,0,[]],56,5109,[],[[1],[0]],[0,0]],[[5240,6552,0,8,8,0,0,1,0,0,0,0,[]],56,5110,[],[[1],[0]],[0,0]],[[4696,6832,0,8,8,0,0,1,0,0,0,0,[]],56,5111,[],[[1],[0]],[0,0]],[[6040,10560,0,8,8,0,0,1,0,0,0,0,[]],56,5207,[],[[1],[0]],[0,0]],[[6480,9896,0,8,8,0,0,1,0,0,0,0,[]],56,5208,[],[[1],[0]],[0,0]],[[6248,9744,0,8,8,0,0,1,0,0,0,0,[]],56,5209,[],[[1],[0]],[0,0]],[[6176,10616,0,8,8,0,0,1,0,0,0,0,[]],56,5213,[],[[1],[0]],[0,0]],[[5888,10312,0,8,8,0,0,1,0,0,0,0,[]],56,5214,[],[[1],[0]],[0,0]],[[5576,10872,0,8,8,0,0,1,0,0,0,0,[]],56,5215,[],[[1],[0]],[0,0]],[[5392,9296,0,8,8,0,0,1,0,0,0,0,[]],56,5224,[],[[1],[0]],[0,0]],[[6240,13968,0,8,8,0,0,1,0,0,0,0,[]],56,5300,[],[[1],[0]],[0,0]],[[5696,14248,0,8,8,0,0,1,0,0,0,0,[]],56,5301,[],[[1],[0]],[0,0]],[[6136,13584,0,8,8,0,0,1,0,0,0,0,[]],56,5302,[],[[1],[0]],[0,0]],[[5904,13432,0,8,8,0,0,1,0,0,0,0,[]],56,5303,[],[[1],[0]],[0,0]],[[6248,14400,0,8,8,0,0,1,0,0,0,0,[]],56,5304,[],[[1],[0]],[0,0]],[[5832,14304,0,8,8,0,0,1,0,0,0,0,[]],56,5307,[],[[1],[0]],[0,0]],[[5544,14000,0,8,8,0,0,1,0,0,0,0,[]],56,5308,[],[[1],[0]],[0,0]],[[5232,14560,0,8,8,0,0,1,0,0,0,0,[]],56,5309,[],[[1],[0]],[0,0]],[[6216,15056,0,8,8,0,0,1,0,0,0,0,[]],56,5310,[],[[1],[0]],[0,0]],[[5048,12984,0,8,8,0,0,1,0,0,0,0,[]],56,5318,[],[[1],[0]],[0,0]],[[6288,15752,0,8,8,0,0,1,0,0,0,0,[]],56,5320,[],[[1],[0]],[0,0]],[[6440,16864,0,8,8,0,0,1,0,0,0,0,[]],56,5332,[],[[1],[0]],[0,0]],[[6256,15288,0,8,8,0,0,1,0,0,0,0,[]],56,5341,[],[[1],[0]],[0,0]],[[6440,17608,0,8,8,0,0,1,0,0,0,0,[]],56,5412,[],[[1],[0]],[0,0]],[[520,216,0,8,8,0,0,1,0,0,0,0,[]],56,4174,[],[[1],[0]],[0,0]],[[-32,752,0,8,8,0,0,1,0,0,0,0,[]],56,4175,[],[[1],[0]],[0,0]],[[984,616,0,8,8,0,0,1,0,0,0,0,[]],56,4177,[],[[1],[0]],[0,0]],[[792,736,0,8,8,0,0,1,0,0,0,0,[]],56,4181,[],[[1],[0]],[0,0]],[[1952,1896,0,8,8,0,0,1,0,0,0,0,[]],56,4189,[],[[1],[0]],[0,0]],[[2024,1184,0,8,8,0,0,1,0,0,0,0,[]],56,4190,[],[[1],[0]],[0,0]],[[2184,2320,0,8,8,0,0,1,0,0,0,0,[]],56,4193,[],[[1],[0]],[0,0]],[[1960,2528,0,8,8,0,0,1,0,0,0,0,[]],56,4194,[],[[1],[0]],[0,0]],[[1728,2520,0,8,8,0,0,1,0,0,0,0,[]],56,4197,[],[[1],[0]],[0,0]],[[2192,2920,0,8,8,0,0,1,0,0,0,0,[]],56,4200,[],[[1],[0]],[0,0]],[[2336,3576,0,8,8,0,0,1,0,0,0,0,[]],56,4201,[],[[1],[0]],[0,0]],[[1792,3856,0,8,8,0,0,1,0,0,0,0,[]],56,4202,[],[[1],[0]],[0,0]],[[2232,3192,0,8,8,0,0,1,0,0,0,0,[]],56,4203,[],[[1],[0]],[0,0]],[[2000,3040,0,8,8,0,0,1,0,0,0,0,[]],56,4204,[],[[1],[0]],[0,0]],[[2344,4008,0,8,8,0,0,1,0,0,0,0,[]],56,4205,[],[[1],[0]],[0,0]],[[2816,3304,0,8,8,0,0,1,0,0,0,0,[]],56,4206,[],[[1],[0]],[0,0]],[[2712,4168,0,8,8,0,0,1,0,0,0,0,[]],56,4207,[],[[1],[0]],[0,0]],[[1928,3912,0,8,8,0,0,1,0,0,0,0,[]],56,4208,[],[[1],[0]],[0,0]],[[2312,4664,0,8,8,0,0,1,0,0,0,0,[]],56,4211,[],[[1],[0]],[0,0]],[[3160,4200,0,8,8,0,0,1,0,0,0,0,[]],56,4212,[],[[1],[0]],[0,0]],[[3232,3488,0,8,8,0,0,1,0,0,0,0,[]],56,4213,[],[[1],[0]],[0,0]],[[2824,3416,0,8,8,0,0,1,0,0,0,0,[]],56,4214,[],[[1],[0]],[0,0]],[[2880,4264,0,8,8,0,0,1,0,0,0,0,[]],56,4215,[],[[1],[0]],[0,0]],[[3392,4624,0,8,8,0,0,1,0,0,0,0,[]],56,4216,[],[[1],[0]],[0,0]],[[3168,4832,0,8,8,0,0,1,0,0,0,0,[]],56,4217,[],[[1],[0]],[0,0]],[[2776,5088,0,8,8,0,0,1,0,0,0,0,[]],56,4218,[],[[1],[0]],[0,0]],[[3608,3080,0,8,8,0,0,1,0,0,0,0,[]],56,4220,[],[[1],[0]],[0,0]],[[3056,3616,0,8,8,0,0,1,0,0,0,0,[]],56,4221,[],[[1],[0]],[0,0]],[[3528,4112,0,8,8,0,0,1,0,0,0,0,[]],56,4222,[],[[1],[0]],[0,0]],[[4072,3480,0,8,8,0,0,1,0,0,0,0,[]],56,4223,[],[[1],[0]],[0,0]],[[4216,4136,0,8,8,0,0,1,0,0,0,0,[]],56,4224,[],[[1],[0]],[0,0]],[[3672,4416,0,8,8,0,0,1,0,0,0,0,[]],56,4225,[],[[1],[0]],[0,0]],[[4112,3752,0,8,8,0,0,1,0,0,0,0,[]],56,4226,[],[[1],[0]],[0,0]],[[3880,3600,0,8,8,0,0,1,0,0,0,0,[]],56,4227,[],[[1],[0]],[0,0]],[[4224,4568,0,8,8,0,0,1,0,0,0,0,[]],56,4228,[],[[1],[0]],[0,0]],[[4696,3864,0,8,8,0,0,1,0,0,0,0,[]],56,4229,[],[[1],[0]],[0,0]],[[4592,4728,0,8,8,0,0,1,0,0,0,0,[]],56,4230,[],[[1],[0]],[0,0]],[[3808,4472,0,8,8,0,0,1,0,0,0,0,[]],56,4231,[],[[1],[0]],[0,0]],[[3520,4168,0,8,8,0,0,1,0,0,0,0,[]],56,4232,[],[[1],[0]],[0,0]],[[3208,4728,0,8,8,0,0,1,0,0,0,0,[]],56,4233,[],[[1],[0]],[0,0]],[[4192,5224,0,8,8,0,0,1,0,0,0,0,[]],56,4234,[],[[1],[0]],[0,0]],[[5040,4760,0,8,8,0,0,1,0,0,0,0,[]],56,4235,[],[[1],[0]],[0,0]],[[5112,4048,0,8,8,0,0,1,0,0,0,0,[]],56,4236,[],[[1],[0]],[0,0]],[[4704,3976,0,8,8,0,0,1,0,0,0,0,[]],56,4237,[],[[1],[0]],[0,0]],[[4760,4824,0,8,8,0,0,1,0,0,0,0,[]],56,4238,[],[[1],[0]],[0,0]],[[5272,5184,0,8,8,0,0,1,0,0,0,0,[]],56,4239,[],[[1],[0]],[0,0]],[[5048,5392,0,8,8,0,0,1,0,0,0,0,[]],56,4240,[],[[1],[0]],[0,0]],[[4656,5648,0,8,8,0,0,1,0,0,0,0,[]],56,4241,[],[[1],[0]],[0,0]],[[3024,3152,0,8,8,0,0,1,0,0,0,0,[]],56,4242,[],[[1],[0]],[0,0]],[[3800,1440,0,8,8,0,0,1,0,0,0,0,[]],56,4244,[],[[1],[0]],[0,0]],[[3952,2552,0,8,8,0,0,1,0,0,0,0,[]],56,4256,[],[[1],[0]],[0,0]],[[3768,976,0,8,8,0,0,1,0,0,0,0,[]],56,4265,[],[[1],[0]],[0,0]],[[2368,936,0,8,8,0,0,1,0,0,0,0,[]],56,4144,[],[[1],[0]],[0,0]],[[1816,1472,0,8,8,0,0,1,0,0,0,0,[]],56,4145,[],[[1],[0]],[0,0]],[[2288,1968,0,8,8,0,0,1,0,0,0,0,[]],56,4146,[],[[1],[0]],[0,0]],[[2832,1336,0,8,8,0,0,1,0,0,0,0,[]],56,4147,[],[[1],[0]],[0,0]],[[2976,1992,0,8,8,0,0,1,0,0,0,0,[]],56,4148,[],[[1],[0]],[0,0]],[[2432,2272,0,8,8,0,0,1,0,0,0,0,[]],56,4149,[],[[1],[0]],[0,0]],[[2872,1608,0,8,8,0,0,1,0,0,0,0,[]],56,4158,[],[[1],[0]],[0,0]],[[2640,1456,0,8,8,0,0,1,0,0,0,0,[]],56,4159,[],[[1],[0]],[0,0]],[[2984,2424,0,8,8,0,0,1,0,0,0,0,[]],56,4160,[],[[1],[0]],[0,0]],[[3456,1720,0,8,8,0,0,1,0,0,0,0,[]],56,4161,[],[[1],[0]],[0,0]],[[3352,2584,0,8,8,0,0,1,0,0,0,0,[]],56,4162,[],[[1],[0]],[0,0]],[[2568,2328,0,8,8,0,0,1,0,0,0,0,[]],56,4163,[],[[1],[0]],[0,0]],[[2280,2024,0,8,8,0,0,1,0,0,0,0,[]],56,4164,[],[[1],[0]],[0,0]],[[1968,2584,0,8,8,0,0,1,0,0,0,0,[]],56,4165,[],[[1],[0]],[0,0]],[[2952,3080,0,8,8,0,0,1,0,0,0,0,[]],56,4166,[],[[1],[0]],[0,0]],[[3800,2616,0,8,8,0,0,1,0,0,0,0,[]],56,4167,[],[[1],[0]],[0,0]],[[3872,1904,0,8,8,0,0,1,0,0,0,0,[]],56,4168,[],[[1],[0]],[0,0]],[[3464,1832,0,8,8,0,0,1,0,0,0,0,[]],56,4169,[],[[1],[0]],[0,0]],[[3520,2680,0,8,8,0,0,1,0,0,0,0,[]],56,4170,[],[[1],[0]],[0,0]],[[4032,3040,0,8,8,0,0,1,0,0,0,0,[]],56,4171,[],[[1],[0]],[0,0]],[[3808,3248,0,8,8,0,0,1,0,0,0,0,[]],56,4172,[],[[1],[0]],[0,0]],[[3416,3504,0,8,8,0,0,1,0,0,0,0,[]],56,4173,[],[[1],[0]],[0,0]],[[1784,1008,0,8,8,0,0,1,0,0,0,0,[]],56,4143,[],[[1],[0]],[0,0]],[[2165.62841796875,3166.120361328125,0,8,8,0,0,1,0,0,0,0,[]],56,10760,[],[[1],[0]],[0,0]],[[2061.62841796875,4030.120361328125,0,8,8,0,0,1,0,0,0,0,[]],56,10762,[],[[1],[0]],[0,0]],[[2509.62841796875,4062.120361328125,0,8,8,0,0,1,0,0,0,0,[]],56,10768,[],[[1],[0]],[0,0]],[[2581.62841796875,3350.120361328125,0,8,8,0,0,1,0,0,0,0,[]],56,10769,[],[[1],[0]],[0,0]],[[2173.62841796875,3278.120361328125,0,8,8,0,0,1,0,0,0,0,[]],56,10770,[],[[1],[0]],[0,0]],[[2229.62841796875,4126.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,10771,[],[[1],[0]],[0,0]],[[2741.62841796875,4486.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,10772,[],[[1],[0]],[0,0]],[[2517.62841796875,4694.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,10773,[],[[1],[0]],[0,0]],[[2125.62841796875,4950.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,10774,[],[[1],[0]],[0,0]],[[2285.62841796875,4686.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,10779,[],[[1],[0]],[0,0]],[[1733.62841796875,5222.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,10780,[],[[1],[0]],[0,0]],[[2205.62841796875,5718.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,10783,[],[[1],[0]],[0,0]],[[2749.62841796875,5086.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,10787,[],[[1],[0]],[0,0]],[[2893.62841796875,5742.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,10790,[],[[1],[0]],[0,0]],[[2349.62841796875,6022.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,10796,[],[[1],[0]],[0,0]],[[2789.62841796875,5358.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,10797,[],[[1],[0]],[0,0]],[[2557.62841796875,5206.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,10798,[],[[1],[0]],[0,0]],[[2901.62841796875,6174.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,10804,[],[[1],[0]],[0,0]],[[3373.62841796875,5470.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,10805,[],[[1],[0]],[0,0]],[[3269.62841796875,6334.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,10806,[],[[1],[0]],[0,0]],[[2485.62841796875,6078.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,10808,[],[[1],[0]],[0,0]],[[2197.62841796875,5774.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,10811,[],[[1],[0]],[0,0]],[[1885.62841796875,6334.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,10812,[],[[1],[0]],[0,0]],[[2869.62841796875,6830.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,10813,[],[[1],[0]],[0,0]],[[3717.62841796875,6366.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,10814,[],[[1],[0]],[0,0]],[[3789.62841796875,5654.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,10815,[],[[1],[0]],[0,0]],[[3381.62841796875,5582.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,10817,[],[[1],[0]],[0,0]],[[3437.62841796875,6430.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,10818,[],[[1],[0]],[0,0]],[[3949.62841796875,6790.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,10819,[],[[1],[0]],[0,0]],[[3725.62841796875,6998.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,10820,[],[[1],[0]],[0,0]],[[4165.62841796875,5246.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,10822,[],[[1],[0]],[0,0]],[[3613.62841796875,5782.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,10823,[],[[1],[0]],[0,0]],[[4085.62841796875,6278.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,10824,[],[[1],[0]],[0,0]],[[4629.62841796875,5646.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,10825,[],[[1],[0]],[0,0]],[[4229.62841796875,6582.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,10826,[],[[1],[0]],[0,0]],[[4669.62841796875,5918.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,10828,[],[[1],[0]],[0,0]],[[4437.62841796875,5766.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,10829,[],[[1],[0]],[0,0]],[[4365.62841796875,6638.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,10831,[],[[1],[0]],[0,0]],[[4077.62841796875,6334.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,10832,[],[[1],[0]],[0,0]],[[3765.62841796875,6894.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,10833,[],[[1],[0]],[0,0]],[[3581.62841796875,5318.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,10834,[],[[1],[0]],[0,0]],[[4509.62841796875,4718.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,10836,[],[[1],[0]],[0,0]],[[2925.62841796875,3102.120361328125,0,8,8,0,0,1,0,0,0,0,[]],56,10838,[],[[1],[0]],[0,0]],[[2373.62841796875,3638.120361328125,0,8,8,0,0,1,0,0,0,0,[]],56,10839,[],[[1],[0]],[0,0]],[[2845.62841796875,4134.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,10842,[],[[1],[0]],[0,0]],[[3389.62841796875,3502.120361328125,0,8,8,0,0,1,0,0,0,0,[]],56,10843,[],[[1],[0]],[0,0]],[[3533.62841796875,4158.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,10844,[],[[1],[0]],[0,0]],[[2989.62841796875,4438.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,10845,[],[[1],[0]],[0,0]],[[2349.62841796875,6518.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,10856,[],[[1],[0]],[0,0]],[[1797.62841796875,7054.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,10857,[],[[1],[0]],[0,0]],[[2813.62841796875,6918.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,10858,[],[[1],[0]],[0,0]],[[2621.62841796875,7038.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,10859,[],[[1],[0]],[0,0]],[[1765.62841796875,6590.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,10860,[],[[1],[0]],[0,0]],[[3901.62841796875,7094.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,10867,[],[[1],[0]],[0,0]],[[3797.62841796875,6710.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,10868,[],[[1],[0]],[0,0]],[[3565.62841796875,6558.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,10869,[],[[1],[0]],[0,0]],[[4381.62841796875,6822.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,10870,[],[[1],[0]],[0,0]],[[3205.62841796875,7126.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,10871,[],[[1],[0]],[0,0]],[[4389.62841796875,6934.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,10872,[],[[1],[0]],[0,0]],[[2709.62841796875,6110.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,10873,[],[[1],[0]],[0,0]],[[1749.62841796875,4062.120361328125,0,8,8,0,0,1,0,0,0,0,[]],56,10962,[],[[1],[0]],[0,0]],[[2185.62841796875,6731.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11017,[],[[1],[0]],[0,0]],[[2081.62841796875,7595.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11018,[],[[1],[0]],[0,0]],[[2529.62841796875,7627.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11023,[],[[1],[0]],[0,0]],[[2601.62841796875,6915.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11024,[],[[1],[0]],[0,0]],[[2193.62841796875,6843.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11025,[],[[1],[0]],[0,0]],[[2249.62841796875,7691.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11026,[],[[1],[0]],[0,0]],[[2761.62841796875,8051.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11027,[],[[1],[0]],[0,0]],[[2537.62841796875,8259.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11028,[],[[1],[0]],[0,0]],[[2145.62841796875,8515.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11029,[],[[1],[0]],[0,0]],[[2305.62841796875,8251.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11031,[],[[1],[0]],[0,0]],[[1753.62841796875,8787.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11032,[],[[1],[0]],[0,0]],[[2225.62841796875,9283.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11033,[],[[1],[0]],[0,0]],[[2769.62841796875,8651.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11034,[],[[1],[0]],[0,0]],[[2913.62841796875,9307.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11035,[],[[1],[0]],[0,0]],[[2369.62841796875,9587.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11036,[],[[1],[0]],[0,0]],[[2809.62841796875,8923.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11037,[],[[1],[0]],[0,0]],[[2577.62841796875,8771.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11038,[],[[1],[0]],[0,0]],[[2921.62841796875,9739.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11039,[],[[1],[0]],[0,0]],[[3393.62841796875,9035.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11040,[],[[1],[0]],[0,0]],[[3289.62841796875,9899.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11041,[],[[1],[0]],[0,0]],[[2505.62841796875,9643.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11042,[],[[1],[0]],[0,0]],[[2217.62841796875,9339.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11043,[],[[1],[0]],[0,0]],[[1905.62841796875,9899.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11044,[],[[1],[0]],[0,0]],[[2889.62841796875,10395.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11045,[],[[1],[0]],[0,0]],[[3737.62841796875,9931.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11046,[],[[1],[0]],[0,0]],[[3809.62841796875,9219.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11047,[],[[1],[0]],[0,0]],[[3401.62841796875,9147.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11048,[],[[1],[0]],[0,0]],[[3457.62841796875,9995.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11049,[],[[1],[0]],[0,0]],[[3969.62841796875,10355.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11050,[],[[1],[0]],[0,0]],[[3745.62841796875,10563.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11051,[],[[1],[0]],[0,0]],[[4185.62841796875,8811.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11053,[],[[1],[0]],[0,0]],[[3633.62841796875,9347.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11054,[],[[1],[0]],[0,0]],[[4105.62841796875,9843.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11055,[],[[1],[0]],[0,0]],[[4649.62841796875,9211.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11056,[],[[1],[0]],[0,0]],[[4249.62841796875,10147.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11057,[],[[1],[0]],[0,0]],[[4689.62841796875,9483.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11058,[],[[1],[0]],[0,0]],[[4457.62841796875,9331.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11059,[],[[1],[0]],[0,0]],[[4385.62841796875,10203.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11060,[],[[1],[0]],[0,0]],[[4097.62841796875,9899.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11061,[],[[1],[0]],[0,0]],[[3785.62841796875,10459.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11062,[],[[1],[0]],[0,0]],[[3601.62841796875,8883.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11063,[],[[1],[0]],[0,0]],[[4377.62841796875,7171.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11064,[],[[1],[0]],[0,0]],[[4529.62841796875,8283.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11065,[],[[1],[0]],[0,0]],[[4345.62841796875,6707.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11066,[],[[1],[0]],[0,0]],[[2945.62841796875,6667.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11067,[],[[1],[0]],[0,0]],[[2393.62841796875,7203.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11068,[],[[1],[0]],[0,0]],[[2865.62841796875,7699.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11069,[],[[1],[0]],[0,0]],[[3409.62841796875,7067.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11070,[],[[1],[0]],[0,0]],[[3553.62841796875,7723.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11071,[],[[1],[0]],[0,0]],[[3009.62841796875,8003.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11072,[],[[1],[0]],[0,0]],[[2369.62841796875,10083.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11081,[],[[1],[0]],[0,0]],[[1817.62841796875,10619.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11082,[],[[1],[0]],[0,0]],[[2833.62841796875,10483.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11083,[],[[1],[0]],[0,0]],[[2641.62841796875,10603.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11084,[],[[1],[0]],[0,0]],[[1785.62841796875,10155.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11085,[],[[1],[0]],[0,0]],[[3921.62841796875,10659.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11089,[],[[1],[0]],[0,0]],[[3817.62841796875,10275.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11090,[],[[1],[0]],[0,0]],[[3585.62841796875,10123.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11091,[],[[1],[0]],[0,0]],[[4401.62841796875,10387.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11092,[],[[1],[0]],[0,0]],[[3225.62841796875,10691.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11093,[],[[1],[0]],[0,0]],[[4409.62841796875,10499.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11094,[],[[1],[0]],[0,0]],[[2729.62841796875,9675.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11095,[],[[1],[0]],[0,0]],[[1769.62841796875,7627.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11153,[],[[1],[0]],[0,0]],[[507.62841796875,15688.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11177,[],[[1],[0]],[0,0]],[[515.62841796875,16288.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11178,[],[[1],[0]],[0,0]],[[2123.62841796875,14808.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11180,[],[[1],[0]],[0,0]],[[2275.62841796875,15920.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11192,[],[[1],[0]],[0,0]],[[2091.62841796875,14344.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11197,[],[[1],[0]],[0,0]],[[691.62841796875,14304.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11198,[],[[1],[0]],[0,0]],[[611.62841796875,15336.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11199,[],[[1],[0]],[0,0]],[[1155.62841796875,14704.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11200,[],[[1],[0]],[0,0]],[[1299.62841796875,15360.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11201,[],[[1],[0]],[0,0]],[[755.62841796875,15640.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11202,[],[[1],[0]],[0,0]],[[1925.62841796875,12634.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11208,[],[[1],[0]],[0,0]],[[1821.62841796875,13498.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11209,[],[[1],[0]],[0,0]],[[2269.62841796875,13530.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11214,[],[[1],[0]],[0,0]],[[2341.62841796875,12818.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11215,[],[[1],[0]],[0,0]],[[1933.62841796875,12746.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11216,[],[[1],[0]],[0,0]],[[1989.62841796875,13594.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11217,[],[[1],[0]],[0,0]],[[2501.62841796875,13954.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11218,[],[[1],[0]],[0,0]],[[2277.62841796875,14162.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11219,[],[[1],[0]],[0,0]],[[1885.62841796875,14418.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11220,[],[[1],[0]],[0,0]],[[2045.62841796875,14154.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11222,[],[[1],[0]],[0,0]],[[1965.62841796875,15186.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11224,[],[[1],[0]],[0,0]],[[2509.62841796875,14554.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11225,[],[[1],[0]],[0,0]],[[2653.62841796875,15210.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11226,[],[[1],[0]],[0,0]],[[2109.62841796875,15490.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11227,[],[[1],[0]],[0,0]],[[2549.62841796875,14826.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11228,[],[[1],[0]],[0,0]],[[2317.62841796875,14674.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11229,[],[[1],[0]],[0,0]],[[2661.62841796875,15642.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11230,[],[[1],[0]],[0,0]],[[3133.62841796875,14938.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11231,[],[[1],[0]],[0,0]],[[3029.62841796875,15802.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11232,[],[[1],[0]],[0,0]],[[2245.62841796875,15546.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11233,[],[[1],[0]],[0,0]],[[1957.62841796875,15242.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11234,[],[[1],[0]],[0,0]],[[2629.62841796875,16298.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11236,[],[[1],[0]],[0,0]],[[3477.62841796875,15834.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11237,[],[[1],[0]],[0,0]],[[3549.62841796875,15122.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11238,[],[[1],[0]],[0,0]],[[3141.62841796875,15050.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11239,[],[[1],[0]],[0,0]],[[3197.62841796875,15898.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11240,[],[[1],[0]],[0,0]],[[3709.62841796875,16258.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11241,[],[[1],[0]],[0,0]],[[3485.62841796875,16466.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11242,[],[[1],[0]],[0,0]],[[3925.62841796875,14714.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11244,[],[[1],[0]],[0,0]],[[3373.62841796875,15250.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11245,[],[[1],[0]],[0,0]],[[3845.62841796875,15746.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11246,[],[[1],[0]],[0,0]],[[4389.62841796875,15114.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11247,[],[[1],[0]],[0,0]],[[3989.62841796875,16050.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11248,[],[[1],[0]],[0,0]],[[4429.62841796875,15386.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11249,[],[[1],[0]],[0,0]],[[4197.62841796875,15234.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11250,[],[[1],[0]],[0,0]],[[4125.62841796875,16106.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11251,[],[[1],[0]],[0,0]],[[3837.62841796875,15802.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11252,[],[[1],[0]],[0,0]],[[3525.62841796875,16362.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11253,[],[[1],[0]],[0,0]],[[3341.62841796875,14786.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11254,[],[[1],[0]],[0,0]],[[4117.62841796875,13074.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11255,[],[[1],[0]],[0,0]],[[4269.62841796875,14186.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11256,[],[[1],[0]],[0,0]],[[4085.62841796875,12610.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11257,[],[[1],[0]],[0,0]],[[2685.62841796875,12570.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11258,[],[[1],[0]],[0,0]],[[2133.62841796875,13106.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11259,[],[[1],[0]],[0,0]],[[2605.62841796875,13602.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11260,[],[[1],[0]],[0,0]],[[3149.62841796875,12970.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11261,[],[[1],[0]],[0,0]],[[3293.62841796875,13626.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11262,[],[[1],[0]],[0,0]],[[2749.62841796875,13906.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11263,[],[[1],[0]],[0,0]],[[1635.62841796875,16064.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11264,[],[[1],[0]],[0,0]],[[1531.62841796875,15680.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11265,[],[[1],[0]],[0,0]],[[1299.62841796875,15528.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11266,[],[[1],[0]],[0,0]],[[2115.62841796875,15792.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11267,[],[[1],[0]],[0,0]],[[939.62841796875,16096.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11268,[],[[1],[0]],[0,0]],[[2123.62841796875,15904.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11270,[],[[1],[0]],[0,0]],[[443.62841796875,15080.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11271,[],[[1],[0]],[0,0]],[[2109.62841796875,15986.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11272,[],[[1],[0]],[0,0]],[[2573.62841796875,16386.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11274,[],[[1],[0]],[0,0]],[[2381.62841796875,16506.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11275,[],[[1],[0]],[0,0]],[[2323.62841796875,16264.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11278,[],[[1],[0]],[0,0]],[[3661.62841796875,16562.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11280,[],[[1],[0]],[0,0]],[[3557.62841796875,16178.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11281,[],[[1],[0]],[0,0]],[[3325.62841796875,16026.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11282,[],[[1],[0]],[0,0]],[[4141.62841796875,16290.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11283,[],[[1],[0]],[0,0]],[[2965.62841796875,16594.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11284,[],[[1],[0]],[0,0]],[[4149.62841796875,16402.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11285,[],[[1],[0]],[0,0]],[[2469.62841796875,15578.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11286,[],[[1],[0]],[0,0]],[[435.62841796875,13152.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11288,[],[[1],[0]],[0,0]],[[579.62841796875,13808.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11289,[],[[1],[0]],[0,0]],[[475.62841796875,13424.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11290,[],[[1],[0]],[0,0]],[[587.62841796875,14240.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11291,[],[[1],[0]],[0,0]],[[1059.62841796875,13536.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11292,[],[[1],[0]],[0,0]],[[955.62841796875,14400.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11293,[],[[1],[0]],[0,0]],[[555.62841796875,14896.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11294,[],[[1],[0]],[0,0]],[[1403.62841796875,14432.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11295,[],[[1],[0]],[0,0]],[[1475.62841796875,13720.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11296,[],[[1],[0]],[0,0]],[[1067.62841796875,13648.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11297,[],[[1],[0]],[0,0]],[[1123.62841796875,14496.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11298,[],[[1],[0]],[0,0]],[[1635.62841796875,14856.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11299,[],[[1],[0]],[0,0]],[[1411.62841796875,15064.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11300,[],[[1],[0]],[0,0]],[[1019.62841796875,15320.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11301,[],[[1],[0]],[0,0]],[[1851.62841796875,13312.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11302,[],[[1],[0]],[0,0]],[[1299.62841796875,13848.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11303,[],[[1],[0]],[0,0]],[[1771.62841796875,14344.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11304,[],[[1],[0]],[0,0]],[[2315.62841796875,13712.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11305,[],[[1],[0]],[0,0]],[[1915.62841796875,14648.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11307,[],[[1],[0]],[0,0]],[[2355.62841796875,13984.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11308,[],[[1],[0]],[0,0]],[[2123.62841796875,13832.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11309,[],[[1],[0]],[0,0]],[[2051.62841796875,14704.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11313,[],[[1],[0]],[0,0]],[[1763.62841796875,14400.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11314,[],[[1],[0]],[0,0]],[[1451.62841796875,14960.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11315,[],[[1],[0]],[0,0]],[[1267.62841796875,13384.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11324,[],[[1],[0]],[0,0]],[[2195.62841796875,12784.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11338,[],[[1],[0]],[0,0]],[[1227.62841796875,12656.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11355,[],[[1],[0]],[0,0]],[[1595.62841796875,12816.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11357,[],[[1],[0]],[0,0]],[[1195.62841796875,13312.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11360,[],[[1],[0]],[0,0]],[[2043.62841796875,12848.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11361,[],[[1],[0]],[0,0]],[[1763.62841796875,12912.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11364,[],[[1],[0]],[0,0]],[[2275.62841796875,13272.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11365,[],[[1],[0]],[0,0]],[[2051.62841796875,13480.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11366,[],[[1],[0]],[0,0]],[[1659.62841796875,13736.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11367,[],[[1],[0]],[0,0]],[[967.62841796875,19965.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11368,[],[[1],[0]],[0,0]],[[1817.62841796875,20519.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11384,[],[[1],[0]],[0,0]],[[1889.62841796875,19807.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11385,[],[[1],[0]],[0,0]],[[1151.62841796875,18581.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11389,[],[[1],[0]],[0,0]],[[1071.62841796875,19613.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11390,[],[[1],[0]],[0,0]],[[1615.62841796875,18981.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11391,[],[[1],[0]],[0,0]],[[1759.62841796875,19637.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11392,[],[[1],[0]],[0,0]],[[1215.62841796875,19917.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11393,[],[[1],[0]],[0,0]],[[1905.62841796875,17183.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11394,[],[[1],[0]],[0,0]],[[1801.62841796875,16799.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11396,[],[[1],[0]],[0,0]],[[1913.62841796875,17615.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11398,[],[[1],[0]],[0,0]],[[2385.62841796875,16911.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11399,[],[[1],[0]],[0,0]],[[2281.62841796875,17775.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11400,[],[[1],[0]],[0,0]],[[1881.62841796875,18271.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11404,[],[[1],[0]],[0,0]],[[2729.62841796875,17807.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11405,[],[[1],[0]],[0,0]],[[2801.62841796875,17095.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11406,[],[[1],[0]],[0,0]],[[2393.62841796875,17023.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11407,[],[[1],[0]],[0,0]],[[2449.62841796875,17871.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11408,[],[[1],[0]],[0,0]],[[2961.62841796875,18231.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11409,[],[[1],[0]],[0,0]],[[2737.62841796875,18439.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11410,[],[[1],[0]],[0,0]],[[2345.62841796875,18695.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11411,[],[[1],[0]],[0,0]],[[2505.62841796875,18431.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11413,[],[[1],[0]],[0,0]],[[1953.62841796875,18967.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11414,[],[[1],[0]],[0,0]],[[2425.62841796875,19463.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11415,[],[[1],[0]],[0,0]],[[2969.62841796875,18831.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11416,[],[[1],[0]],[0,0]],[[3113.62841796875,19487.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11417,[],[[1],[0]],[0,0]],[[2569.62841796875,19767.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11418,[],[[1],[0]],[0,0]],[[3009.62841796875,19103.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11419,[],[[1],[0]],[0,0]],[[2777.62841796875,18951.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11420,[],[[1],[0]],[0,0]],[[3121.62841796875,19919.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11421,[],[[1],[0]],[0,0]],[[3593.62841796875,19215.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11422,[],[[1],[0]],[0,0]],[[3489.62841796875,20079.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11423,[],[[1],[0]],[0,0]],[[2705.62841796875,19823.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11424,[],[[1],[0]],[0,0]],[[2417.62841796875,19519.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11425,[],[[1],[0]],[0,0]],[[2105.62841796875,20079.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11426,[],[[1],[0]],[0,0]],[[3089.62841796875,20575.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11427,[],[[1],[0]],[0,0]],[[3937.62841796875,20111.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11428,[],[[1],[0]],[0,0]],[[4009.62841796875,19399.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11429,[],[[1],[0]],[0,0]],[[3601.62841796875,19327.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11430,[],[[1],[0]],[0,0]],[[3657.62841796875,20175.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11431,[],[[1],[0]],[0,0]],[[4169.62841796875,20535.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11432,[],[[1],[0]],[0,0]],[[3945.62841796875,20743.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11433,[],[[1],[0]],[0,0]],[[1921.62841796875,18503.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11434,[],[[1],[0]],[0,0]],[[4385.62841796875,18991.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11435,[],[[1],[0]],[0,0]],[[3833.62841796875,19527.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11436,[],[[1],[0]],[0,0]],[[4305.62841796875,20023.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11437,[],[[1],[0]],[0,0]],[[4849.62841796875,19391.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11438,[],[[1],[0]],[0,0]],[[4449.62841796875,20327.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11439,[],[[1],[0]],[0,0]],[[4889.62841796875,19663.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11440,[],[[1],[0]],[0,0]],[[4657.62841796875,19511.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11441,[],[[1],[0]],[0,0]],[[4585.62841796875,20383.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11442,[],[[1],[0]],[0,0]],[[4297.62841796875,20079.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11443,[],[[1],[0]],[0,0]],[[3985.62841796875,20639.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11444,[],[[1],[0]],[0,0]],[[3801.62841796875,19063.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11445,[],[[1],[0]],[0,0]],[[4577.62841796875,17351.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11446,[],[[1],[0]],[0,0]],[[4729.62841796875,18463.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11447,[],[[1],[0]],[0,0]],[[4545.62841796875,16887.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11448,[],[[1],[0]],[0,0]],[[3145.62841796875,16847.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11449,[],[[1],[0]],[0,0]],[[2593.62841796875,17383.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11450,[],[[1],[0]],[0,0]],[[3065.62841796875,17879.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11451,[],[[1],[0]],[0,0]],[[3609.62841796875,17247.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11452,[],[[1],[0]],[0,0]],[[3753.62841796875,17903.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11453,[],[[1],[0]],[0,0]],[[3209.62841796875,18183.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11454,[],[[1],[0]],[0,0]],[[2095.62841796875,20341.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11455,[],[[1],[0]],[0,0]],[[1991.62841796875,19957.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11456,[],[[1],[0]],[0,0]],[[1759.62841796875,19805.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11457,[],[[1],[0]],[0,0]],[[903.62841796875,19357.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11462,[],[[1],[0]],[0,0]],[[2569.62841796875,20263.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11463,[],[[1],[0]],[0,0]],[[2017.62841796875,20799.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11464,[],[[1],[0]],[0,0]],[[3033.62841796875,20663.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11465,[],[[1],[0]],[0,0]],[[2841.62841796875,20783.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11466,[],[[1],[0]],[0,0]],[[1985.62841796875,20335.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11467,[],[[1],[0]],[0,0]],[[4121.62841796875,20839.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11471,[],[[1],[0]],[0,0]],[[4017.62841796875,20455.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11472,[],[[1],[0]],[0,0]],[[3785.62841796875,20303.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11473,[],[[1],[0]],[0,0]],[[4601.62841796875,20567.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11474,[],[[1],[0]],[0,0]],[[3425.62841796875,20871.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11475,[],[[1],[0]],[0,0]],[[4609.62841796875,20679.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11476,[],[[1],[0]],[0,0]],[[2929.62841796875,19855.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11477,[],[[1],[0]],[0,0]],[[887.62841796875,16829.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11478,[],[[1],[0]],[0,0]],[[895.62841796875,17429.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11479,[],[[1],[0]],[0,0]],[[1039.62841796875,18085.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11480,[],[[1],[0]],[0,0]],[[935.62841796875,17701.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11481,[],[[1],[0]],[0,0]],[[1047.62841796875,18517.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11482,[],[[1],[0]],[0,0]],[[1519.62841796875,17813.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11483,[],[[1],[0]],[0,0]],[[1415.62841796875,18677.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11484,[],[[1],[0]],[0,0]],[[1015.62841796875,19173.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11485,[],[[1],[0]],[0,0]],[[1863.62841796875,18709.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11486,[],[[1],[0]],[0,0]],[[1935.62841796875,17997.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11487,[],[[1],[0]],[0,0]],[[1527.62841796875,17925.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11488,[],[[1],[0]],[0,0]],[[1583.62841796875,18773.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11489,[],[[1],[0]],[0,0]],[[2095.62841796875,19133.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11490,[],[[1],[0]],[0,0]],[[1871.62841796875,19341.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11491,[],[[1],[0]],[0,0]],[[1479.62841796875,19597.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11492,[],[[1],[0]],[0,0]],[[2311.62841796875,17589.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11493,[],[[1],[0]],[0,0]],[[1759.62841796875,18125.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11494,[],[[1],[0]],[0,0]],[[2231.62841796875,18621.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11495,[],[[1],[0]],[0,0]],[[2375.62841796875,18925.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11498,[],[[1],[0]],[0,0]],[[2223.62841796875,18677.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11505,[],[[1],[0]],[0,0]],[[1911.62841796875,19237.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11506,[],[[1],[0]],[0,0]],[[1727.62841796875,17661.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11515,[],[[1],[0]],[0,0]],[[1737.62841796875,17383.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11531,[],[[1],[0]],[0,0]],[[1809.62841796875,16671.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11532,[],[[1],[0]],[0,0]],[[1969.62841796875,17807.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11535,[],[[1],[0]],[0,0]],[[1745.62841796875,18015.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11536,[],[[1],[0]],[0,0]],[[1071.62841796875,15445.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11539,[],[[1],[0]],[0,0]],[[991.62841796875,16477.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11540,[],[[1],[0]],[0,0]],[[1535.62841796875,15845.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11541,[],[[1],[0]],[0,0]],[[1679.62841796875,16501.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11542,[],[[1],[0]],[0,0]],[[1135.62841796875,16781.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11543,[],[[1],[0]],[0,0]],[[1575.62841796875,16117.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11544,[],[[1],[0]],[0,0]],[[1343.62841796875,15965.1201171875,0,8,8,0,0,1,0,0,0,0,[]],56,11545,[],[[1],[0]],[0,0]],[[1687.62841796875,16933.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11546,[],[[1],[0]],[0,0]],[[2159.62841796875,16229.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11547,[],[[1],[0]],[0,0]],[[2055.62841796875,17093.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11548,[],[[1],[0]],[0,0]],[[1271.62841796875,16837.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11549,[],[[1],[0]],[0,0]],[[983.62841796875,16533.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11550,[],[[1],[0]],[0,0]],[[1655.62841796875,17589.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11551,[],[[1],[0]],[0,0]],[[2167.62841796875,16341.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11554,[],[[1],[0]],[0,0]],[[2223.62841796875,17189.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11555,[],[[1],[0]],[0,0]],[[2119.62841796875,18013.12109375,0,8,8,0,0,1,0,0,0,0,[]],56,11558,[],[[1],[0]],[0,0]],[[1462.955932617188,584.392578125,0,8,8,0,0,1,0,0,0,0,[]],56,4176,[],[[1],[0]],[0,0]],[[918.9559326171875,864.392578125,0,8,8,0,0,1,0,0,0,0,[]],56,4178,[],[[1],[0]],[0,0]],[[1358.955932617188,200.392578125,0,8,8,0,0,1,0,0,0,0,[]],56,4179,[],[[1],[0]],[0,0]],[[1126.955932617188,48.392578125,0,8,8,0,0,1,0,0,0,0,[]],56,4180,[],[[1],[0]],[0,0]],[[1470.955932617188,1016.392578125,0,8,8,0,0,1,0,0,0,0,[]],56,4182,[],[[1],[0]],[0,0]],[[1838.955932617188,1176.392578125,0,8,8,0,0,1,0,0,0,0,[]],56,4183,[],[[1],[0]],[0,0]],[[1054.955932617188,920.392578125,0,8,8,0,0,1,0,0,0,0,[]],56,4184,[],[[1],[0]],[0,0]],[[766.9559326171875,616.392578125,0,8,8,0,0,1,0,0,0,0,[]],56,4185,[],[[1],[0]],[0,0]],[[1438.955932617188,1672.392578125,0,8,8,0,0,1,0,0,0,0,[]],56,4186,[],[[1],[0]],[0,0]],[[1902.955932617188,2096.392578125,0,8,8,0,0,1,0,0,0,0,[]],56,4187,[],[[1],[0]],[0,0]],[[1510.955932617188,2368.392578125,0,8,8,0,0,1,0,0,0,0,[]],56,4188,[],[[1],[0]],[0,0]],[[1478.955932617188,1904.392578125,0,8,8,0,0,1,0,0,0,0,[]],56,4191,[],[[1],[0]],[0,0]],[[1074.584350585938,3008.5126953125,0,8,8,0,0,1,0,0,0,0,[]],56,4192,[],[[1],[0]],[0,0]],[[1042.584350585938,2544.5126953125,0,8,8,0,0,1,0,0,0,0,[]],56,4195,[],[[1],[0]],[0,0]],[[-357.4156494140625,2504.5126953125,0,8,8,0,0,1,0,0,0,0,[]],56,4196,[],[[1],[0]],[0,0]],[[106.5843505859375,2904.5126953125,0,8,8,0,0,1,0,0,0,0,[]],56,4198,[],[[1],[0]],[0,0]],[[876.5843505859375,834.5126953125,0,8,8,0,0,1,0,0,0,0,[]],56,4199,[],[[1],[0]],[0,0]],[[772.5843505859375,1698.5126953125,0,8,8,0,0,1,0,0,0,0,[]],56,4209,[],[[1],[0]],[0,0]],[[1220.584350585938,1730.5126953125,0,8,8,0,0,1,0,0,0,0,[]],56,4210,[],[[1],[0]],[0,0]],[[1292.584350585938,1018.5126953125,0,8,8,0,0,1,0,0,0,0,[]],56,4219,[],[[1],[0]],[0,0]],[[884.5843505859375,946.5126953125,0,8,8,0,0,1,0,0,0,0,[]],56,4243,[],[[1],[0]],[0,0]],[[940.5843505859375,1794.5126953125,0,8,8,0,0,1,0,0,0,0,[]],56,4245,[],[[1],[0]],[0,0]],[[1452.584350585938,2154.5126953125,0,8,8,0,0,1,0,0,0,0,[]],56,4246,[],[[1],[0]],[0,0]],[[1228.584350585938,2362.5126953125,0,8,8,0,0,1,0,0,0,0,[]],56,4247,[],[[1],[0]],[0,0]],[[836.5843505859375,2618.5126953125,0,8,8,0,0,1,0,0,0,0,[]],56,4248,[],[[1],[0]],[0,0]],[[996.5843505859375,2354.5126953125,0,8,8,0,0,1,0,0,0,0,[]],56,4249,[],[[1],[0]],[0,0]],[[1460.584350585938,2754.5126953125,0,8,8,0,0,1,0,0,0,0,[]],56,4250,[],[[1],[0]],[0,0]],[[1268.584350585938,2874.5126953125,0,8,8,0,0,1,0,0,0,0,[]],56,4251,[],[[1],[0]],[0,0]],[[1636.584350585938,770.5126953125,0,8,8,0,0,1,0,0,0,0,[]],56,4252,[],[[1],[0]],[0,0]],[[1084.584350585938,1306.5126953125,0,8,8,0,0,1,0,0,0,0,[]],56,4253,[],[[1],[0]],[0,0]],[[1556.584350585938,1802.5126953125,0,8,8,0,0,1,0,0,0,0,[]],56,4254,[],[[1],[0]],[0,0]],[[1700.584350585938,2106.5126953125,0,8,8,0,0,1,0,0,0,0,[]],56,4255,[],[[1],[0]],[0,0]],[[-613.4156494140625,1352.5126953125,0,8,8,0,0,1,0,0,0,0,[]],56,4257,[],[[1],[0]],[0,0]],[[-469.4156494140625,2008.5126953125,0,8,8,0,0,1,0,0,0,0,[]],56,4258,[],[[1],[0]],[0,0]],[[-573.4156494140625,1624.5126953125,0,8,8,0,0,1,0,0,0,0,[]],56,4259,[],[[1],[0]],[0,0]],[[-461.4156494140625,2440.5126953125,0,8,8,0,0,1,0,0,0,0,[]],56,4260,[],[[1],[0]],[0,0]],[[10.5843505859375,1736.5126953125,0,8,8,0,0,1,0,0,0,0,[]],56,4261,[],[[1],[0]],[0,0]],[[-93.4156494140625,2600.5126953125,0,8,8,0,0,1,0,0,0,0,[]],56,4262,[],[[1],[0]],[0,0]],[[354.5843505859375,2632.5126953125,0,8,8,0,0,1,0,0,0,0,[]],56,4263,[],[[1],[0]],[0,0]],[[426.5843505859375,1920.5126953125,0,8,8,0,0,1,0,0,0,0,[]],56,4264,[],[[1],[0]],[0,0]],[[18.5843505859375,1848.5126953125,0,8,8,0,0,1,0,0,0,0,[]],56,4266,[],[[1],[0]],[0,0]],[[74.5843505859375,2696.5126953125,0,8,8,0,0,1,0,0,0,0,[]],56,4267,[],[[1],[0]],[0,0]],[[802.5843505859375,1512.5126953125,0,8,8,0,0,1,0,0,0,0,[]],56,4268,[],[[1],[0]],[0,0]],[[250.5843505859375,2048.5126953125,0,8,8,0,0,1,0,0,0,0,[]],56,4269,[],[[1],[0]],[0,0]],[[722.5843505859375,2544.5126953125,0,8,8,0,0,1,0,0,0,0,[]],56,4270,[],[[1],[0]],[0,0]],[[1266.584350585938,1912.5126953125,0,8,8,0,0,1,0,0,0,0,[]],56,4271,[],[[1],[0]],[0,0]],[[866.5843505859375,2848.5126953125,0,8,8,0,0,1,0,0,0,0,[]],56,4272,[],[[1],[0]],[0,0]],[[1306.584350585938,2184.5126953125,0,8,8,0,0,1,0,0,0,0,[]],56,4273,[],[[1],[0]],[0,0]],[[1074.584350585938,2032.5126953125,0,8,8,0,0,1,0,0,0,0,[]],56,4274,[],[[1],[0]],[0,0]],[[1002.584350585938,2904.5126953125,0,8,8,0,0,1,0,0,0,0,[]],56,4275,[],[[1],[0]],[0,0]],[[714.5843505859375,2600.5126953125,0,8,8,0,0,1,0,0,0,0,[]],56,4276,[],[[1],[0]],[0,0]],[[218.5843505859375,1584.5126953125,0,8,8,0,0,1,0,0,0,0,[]],56,4279,[],[[1],[0]],[0,0]],[[1146.584350585938,984.5126953125,0,8,8,0,0,1,0,0,0,0,[]],56,4283,[],[[1],[0]],[0,0]],[[178.5843505859375,856.5126953125,0,8,8,0,0,1,0,0,0,0,[]],56,4284,[],[[1],[0]],[0,0]],[[546.5843505859375,1016.5126953125,0,8,8,0,0,1,0,0,0,0,[]],56,4286,[],[[1],[0]],[0,0]],[[146.5843505859375,1512.5126953125,0,8,8,0,0,1,0,0,0,0,[]],56,4297,[],[[1],[0]],[0,0]],[[994.5843505859375,1048.5126953125,0,8,8,0,0,1,0,0,0,0,[]],56,4298,[],[[1],[0]],[0,0]],[[714.5843505859375,1112.5126953125,0,8,8,0,0,1,0,0,0,0,[]],56,4307,[],[[1],[0]],[0,0]],[[1226.584350585938,1472.5126953125,0,8,8,0,0,1,0,0,0,0,[]],56,4340,[],[[1],[0]],[0,0]],[[1002.584350585938,1680.5126953125,0,8,8,0,0,1,0,0,0,0,[]],56,4346,[],[[1],[0]],[0,0]],[[610.5843505859375,1936.5126953125,0,8,8,0,0,1,0,0,0,0,[]],56,4347,[],[[1],[0]],[0,0]]],[]],["UI",2,662623308620703,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[240,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3097,[["right"]],[[0,1,0,1,1]],[0,"Default",0,1]],[[80,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3098,[["left"]],[[0,1,0,1,1]],[0,"Default",1,1]],[[560,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3099,[["up"]],[[1,1,1,1,1]],[0,"Default",3,1]],[[400,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3100,[["down"]],[[1,1,1,1,1]],[0,"Default",2,1]]],[]],["End Card",3,555676701074594,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],78,2607,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[12.04449462890625,194,0,615.9109497070313,67,0,0,1,0,0,0,0,[]],79,2608,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Timer for this level",2.5,0,0,0,0,0,-10,0,"",-1,0]],[[17.546875,248,0,604.90625,105,0,0,1,0,0,0,0,[]],80,2610,[[0],[0],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","13:40:40",4,0,63,50,0,0,-10,0,"",-1,0]],[[115.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,2611,[[0],[1],[0],[0],["replay"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Replay",""],[""],[2,2,0,0,0],["",""]],[0,"Replay",0,1]],[[524.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3086,[[0],[1],[0],[0],["next"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Next",""],[""],[2,2,0,0,0],["",""]],[0,"Next",0,1]],[[320.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3087,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > Back","Level Menu"],[""],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[320.75,521.8050537109375,0,384,96,0,0,1,0.5,0.5,0,0,[]],70,3088,[[1],[1],[0],[0],[""],["{\"size\": 22, \"left\": 70, \"right\": 18, \"alignY\": 60}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > DownloadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"DownloadReplay",0,1]]],[]],["Pause",4,296016019842802,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-310,678,0,274,31,0,0,1,0,0,0,0,[]],168,3089,[],[],[".ovo",0,1,"file"]],[[320,320,0,425,250,0,0,1,0.5,0.5,0,0,[]],82,3090,[],[[6,1,"",300,1,1,"",300,"overlay",1,"PauseClose",1,1]],[0,"Default",0,1]],[[214,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3091,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"",""],["PauseClose"],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[426,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3092,[[0],[1],[0],[0],["quit"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > GiveUp",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[115.5,202,0,409,118,0,0,1,0,0,0,0,[]],83,3093,[[1],[1],["pause"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Pause",4,0,57,50,0,0,-10,0,"",-1,0]],[[320.5,88,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3094,[[1],[1],[0],[0],["loadreplay"],["{\"size\": 16, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > LoadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"LoadReplay",0,1]],[[320.5,157,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3095,[[1],[0],[0],[0],["toggledebug"],["{\"size\": 15, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Debug > Toggle",""],[""],[2,2,0,0,0],["",""]],[0,"ToggleDebug",0,1]],[[78,448,0,484,134,0,0,1,0,0,0,0,[]],193,3096,[],[],[0,"Default",0,1]]],[]],["Overlay",5,590594429809237,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[432,4,0,203.0009155273438,64,0,0,1,0,0,0,0,[]],107,5488,[],[[1,0,1,0,1]],[2,2,2,2,0,1,0,0,1]],[[432,4,0,203,64,0,0,1,0,0,0,0,[]],84,3101,[[0],[0],[""],["en-us"],[0],[1],[1],["{\"alignY\": 85, \"alignX\": 45, \"size\": 28}"],[0],[1],[0],[0],[0]],[["",""],[1,0,1,0,1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",2,0,100,50,0,0,-10,0,"",-1,0]],[[88,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3102,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Pause",""],[""],[0,0,0,0,1],["",""]],[0,"Pause",0,1]],[[158,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3103,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Replay","1"],[""],[0,0,0,0,1],["",""]],[0,"Reload",0,1]]],[]],["End Game",6,462297624762342,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],85,3104,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[73,194,0,494,72,0,0,1,0,0,0,0,[]],86,3105,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],["{alignY:50}"],[0],[1],[0],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Your final time",2.5,0,50,50,0,0,-10,0,"",-1,0]],[[320,403,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3106,[[0],[1],[0],[0],[""],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Quit",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[73,243,0,494,85,0,0,1,0,0,0,0,[]],87,3108,[[0],[1],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",3,0,50,50,0,0,-10,0,"",-1,0]],[[73,318,0,494,25,0,0,1,0,0,0,0,[]],86,5480,[[1],[1],["tryagainhardmode"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Try again in hard mode!",1,0,50,50,0,0,-2,0,"",-1,0]]],[]],["Banner",7,885512291174976,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-237,-189,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,3109,[],[["overlay"]],[0,"Default",0,1]]],[]],["Layer 1",8,717655156270531,true,[255,255,255],true,1,1,1,false,false,1,0,0,[],[]]],[],[]],["Level 40",5000,10000,true,"Levels",586520026367591,[["Background",0,623014778492219,true,[255,255,255],false,0,0,1,false,false,1,0,0,[[[-120,4936,0,100,100,0,-1.570796489715576,1,0.5,0.5,0,0,[]],50,2221,[[-1],[0],[0],[0],[0],[10],[1]],[[0],[1,0,1,1,"F 5000",100000,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]]],[]],["Layer 0",1,510263117017948,true,[255,255,255],true,1,1,1,false,false,1,0,0,[[[2504,1512,0,32,32,0,0,1,0.5,0.5,0,0,[]],163,2571,[],[[0]],[0,"coin",0,1]],[[2456,1488,0,32,32,0,0,1,0.5,0.5,0,0,[]],49,10384,[[11],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[0,"Default",0,1]],[[-23272,10576,0,9096,9576,0,0,1,-2.380000114440918,0.6399999856948853,0,0,[]],159,2162,[],[[0]],[0,"Default",0,1]],[[-26045,8705,0,9960,7064,0,0,1,-2.380000114440918,0.6399999856948853,0,0,[]],159,3842,[],[[0]],[0,"Default",0,1]],[[3096,984,0,32,32,0,-0.567607045173645,1,0.5,0.5,0,0,[]],43,4138,[[1],[0]],[[0]],[0,"Default",0,1]],[[2224,376,0,792,9,0,0,1,0,0,0,0,[]],51,3205,[],[[0],[1],[1,100,""]],[0,0]],[[4263,1024,0,32,8,0,1.570796370506287,1,0,0,0,0,[]],56,3906,[],[[1],[1]],[0,0]],[[1262,1246,0,60.93439102172852,60.93439102172852,0,0,1,0.5,0.5,0,0,[]],53,1020,[["Final Exam"],[""],[0]],[],[1,"Default",0,1]],[[3168,1584,0,32,32,0,0,1,0.5,0.5,0,0,[]],49,3792,[[1],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[0,"Default",0,1]],[[1899,1569,0,32,64,0,0,1,0.5,0.5,0,0,[]],42,3793,[["run"],[0],[1],[1],[0],[0.8],[0.5],[0],[1],[0],[0],[0],[""],[2],[0],[0],[0],[""],[0],[3],[0],[0],[0],[0],[0],[0],[0]],[[330,1500,1500,650,1500,1000,0,0,0,1],[],[0,0],[0,10000,360,1]],[0,"Default",0,1]],[[1384,1608,0,664,9,0,0,1,0,0,0,0,[]],51,3794,[],[[0],[1],[1,100,""]],[0,0]],[[1389,1400,0,659,9,0,0,1,0,0,0,0,[]],51,3795,[],[[0],[1],[1,100,""]],[0,0]],[[56,1512,0,97,199,0,0,1,0.5257731676101685,0.4974874258041382,0,0,[]],44,3799,[],[[0]],[0,"Default",0,1]],[[619,943,0,16,8,0,0,1,0.5,0.5,0,0,[]],50,3801,[[-1],[0],[0],[0],[0],[0],[0]],[[0],[1,0,1,1,"W 1; F 180",100000,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[0,1608,0,1216,8,0,0,1,0,0,0,0,[]],56,3796,[],[[1],[1]],[0,0]],[[2048,904,0,504,9,0,1.570796370506287,1,0,0,0,0,[]],51,3797,[],[[0],[1],[1,100,""]],[0,0]],[[2048,1608,0,528,9,0,1.570796370506287,1,0,0,0,0,[]],51,3798,[],[[0],[1],[1,100,""]],[0,0]],[[2040,904,0,792,9,0,0,1,0,0,0,0,[]],51,3802,[],[[0],[1],[1,100,""]],[0,0]],[[2840,904,0,512,9,0,1.570796370506287,1,0,0,0,0,[]],51,3803,[],[[0],[1],[1,100,""]],[0,0]],[[2832,1608,0,304,9,0,0,1,0,0,0,0,[]],51,3805,[],[[0],[1],[1,100,""]],[0,0]],[[2832,3200,0,640,9,0,0,1,0,0,0,0,[]],51,3816,[],[[0],[1],[1,100,""]],[0,0]],[[2832,2992,0,640,9,0,0,1,0,0,0,0,[]],51,3817,[],[[0],[1],[1,100,""]],[0,0]],[[3472,2496,0,504,9,0,1.570796370506287,1,0,0,0,0,[]],51,3818,[],[[0],[1],[1,100,""]],[0,0]],[[3472,3200,0,504,9,0,1.570796370506287,1,0,0,0,0,[]],51,3819,[],[[0],[1],[1,100,""]],[0,0]],[[3472,2496,0,328,9,0,0,1,0,0,0,0,[]],51,3820,[],[[0],[1],[1,100,""]],[0,0]],[[3464,3696,0,640,9,0,0,1,0,0,0,0,[]],51,3821,[],[[0],[1],[1,100,""]],[0,0]],[[4264,2496,0,504,9,0,1.570796370506287,1,0,0,0,0,[]],51,3822,[],[[0],[1],[1,100,""]],[0,0]],[[4264,2992,0,192,9,0,1.570796370506287,1,0,0,0,0,[]],51,3823,[],[[0],[1],[1,100,""]],[0,0]],[[3936,2496,0,328,9,0,0,1,0,0,0,0,[]],51,3824,[],[[0],[1],[1,100,""]],[0,0]],[[3472,1608,0,504,8,0,1.570796370506287,1,0,0,0,0,[]],56,3807,[],[[1],[1]],[0,0]],[[3472,904,0,504,8,0,1.570796370506287,1,0,0,0,0,[]],56,3808,[],[[1],[1]],[0,0]],[[3472,904,0,792,8,0,0,1,0,0,0,0,[]],56,3809,[],[[1],[1]],[0,0]],[[4264,912,0,1208,8,0,1.570796370506287,1,0,0,0,0,[]],56,3810,[],[[1],[1]],[0,0]],[[3464,2112,0,328,8,0,0,1,0,0,0,0,[]],56,3811,[],[[1],[1]],[0,0]],[[3944,2112,0,320,8,0,0,1,0,0,0,0,[]],56,3812,[],[[1],[1]],[0,0]],[[3800,2112,0,384,8,0,1.570796370506287,1,0,0,0,0,[]],56,3813,[],[[1],[1]],[0,0]],[[3944,2000,0,496,8,0,1.570796370506287,1,0,0,0,0,[]],56,3825,[],[[1],[1]],[0,0]],[[2832,3200,0,504,8,0,1.570796370506287,1,0,0,0,0,[]],56,3814,[],[[1],[1]],[0,0]],[[2832,2496,0,64,8,0,1.570796370506287,1,0,0,0,0,[]],56,3815,[],[[1],[1]],[0,0]],[[2040,2496,0,792,8,0,0,1,0,0,0,0,[]],56,3826,[],[[1],[1]],[0,0]],[[2040,2496,0,1216,8,0,1.570796370506287,1,0,0,0,0,[]],56,3827,[],[[1],[1]],[0,0]],[[2040,3704,0,792,8,0,0,1,0,0,0,0,[]],56,3828,[],[[1],[1]],[0,0]],[[2832,2672,0,328,8,0,1.570796370506287,1,0,0,0,0,[]],56,3829,[],[[1],[1]],[0,0]],[[2832,2744,0,368,9,0,0,1,0,0,0,0,[]],51,3830,[],[[0],[1],[1,100,""]],[0,0]],[[3168,2728,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,3831,[[2],[0]],[[0]],[0,"Default",0,1]],[[3200,1608,0,264,9,0,0,1,0,0,0,0,[]],51,3832,[],[[0],[1],[1,100,""]],[0,0]],[[2832,1408,0,304,9,0,0,1,0,0,0,0,[]],51,3806,[],[[0],[1],[1,100,""]],[0,0]],[[3200,1408,0,272,9,0,0,1,0,0,0,0,[]],51,3833,[],[[0],[1],[1,100,""]],[0,0]],[[3160,1184,0,32,32,0,-0.567607045173645,1,0.5,0.5,0,0,[]],43,3834,[[1],[0]],[[0]],[0,"Default",0,1]],[[3868,2440,0,128,128,0,0,1,0.5,0.5,0,0,[]],49,3839,[[2],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[1,"Default",0,1]],[[976,4240,0,100,100,0,-1.570796489715576,1,0.5,0.5,0,0,[]],50,3843,[[-1],[0],[0],[0],[0],[1],[1]],[[0],[1,0,1,1,"F 5000",100000,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1216,2128,0,100,100,0,-1.570796489715576,1,0.5,0.5,0,0,[]],50,3844,[[-1],[0],[0],[0],[0],[2],[1]],[[0],[1,0,1,1,"B 5000",100000,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1969,1574,0,32,32,0,0,1,0.5,0.5,0,0,[]],49,3848,[[3],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[0,"Default",0,1]],[[1544,1592,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3857,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1576,1592,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3858,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1608,1592,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3859,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1640,1592,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3860,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1672,1592,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3861,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1704,1592,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3862,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1736,1592,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3863,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1768,1592,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3864,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1800,1592,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3865,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3096,1536,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,3856,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3128,1536,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,3875,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3216,1536,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,3879,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3248,1536,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,3886,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3080,1408,0,64,112,0,0,1,0,0,0,0,[]],51,3893,[],[[0],[1],[1,100,""]],[0,0]],[[3200,1408,0,64,112,0,0,1,0,0,0,0,[]],51,3894,[],[[0],[1],[1,100,""]],[0,0]],[[3584,1608,0,600,8,0,0,1,0,0,0,0,[]],56,3836,[],[[1],[1]],[0,0]],[[3656,1064,0,552,8,0,1.570796370506287,1,0,0,0,0,[]],56,3852,[],[[1],[1]],[0,0]],[[3648,1056,0,312,8,0,0,1,0,0,0,0,[]],56,3887,[],[[1],[1]],[0,0]],[[3568,1592,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,3892,[[0.9],[0]],[[0]],[0,"Default",0,1]],[[3473,912,0,96,8,0,1.570796370506287,1,0,0,0,0,[]],56,3895,[],[[1],[1]],[0,0]],[[3488,928,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,3896,[[0]],[[1],[1]],[0,"Default",0,1]],[[3488,960,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,3897,[[0]],[[1],[1]],[0,"Default",0,1]],[[3488,992,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,3898,[[0]],[[1],[1]],[0,"Default",0,1]],[[4240,1040,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,3899,[[0]],[[1],[1]],[0,"Default",0,1]],[[3493,976,0,40,100,0,0,1,0.5,0.5,0,0,[]],50,3900,[[-1],[0],[0],[0],[0],[4],[0]],[[0],[1,0,1,0,"F 1000",400,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[3920,1008,0,32,32,0,0,1,0.5,0.5,0,0,[]],49,3901,[[4],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[0,"Default",0,1]],[[4032,1056,0,224,8,0,0,1,0,0,0,0,[]],56,3902,[],[[1],[1]],[0,0]],[[3960,1056,0,72,8,0,0,1,0,0,0,0,[]],56,3903,[],[[1],[1]],[0,0]],[[3984,1064,0,40,16,0,0,1,0.5,0.5,0,0,[]],50,3904,[[-1],[0],[0],[0],[0],[4],[0]],[[0],[1,0,1,0,"W 3; F 64",300,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[3136,1608,0,64,8,0,0,1,0,0,0,0,[]],45,3905,[],[[0],[1]],[0,0]],[[4235,1038,0,40,32,0,0,1,0.5,0.5,0,0,[]],50,3907,[[-1],[0],[0],[0],[0],[4],[0]],[[0],[1,0,1,0,"B 1000",400,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[3808,1448,0,64,32,0,0,1,0.125,0.5,0,0,[]],55,3908,[[1],[150]],[[1],[300,2,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[3784,1216,0,64,32,0,0,1,0.125,0.5,0,0,[]],55,3909,[[1],[150]],[[1],[300,2,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[4248,1320,0,64,32,0,3.141592741012573,1,0.125,0.5,0,0,[]],55,3910,[[1],[150]],[[1],[300,2,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[4080,1512,0,72,8,0,1.570796370506287,1,0,0,0,0,[]],56,3911,[],[[1],[1]],[0,0]],[[3800,1416,0,72,8,0,1.570796370506287,1,0,0,0,0,[]],56,3912,[],[[1],[1]],[0,0]],[[3776,1192,0,72,8,0,1.570796370506287,1,0,0,0,0,[]],56,3913,[],[[1],[1]],[0,0]],[[4144,1192,0,72,8,0,1.570796370506287,1,0,0,0,0,[]],56,3914,[],[[1],[1]],[0,0]],[[3968,1304,0,72,8,0,1.570796370506287,1,0,0,0,0,[]],56,3915,[],[[1],[1]],[0,0]],[[4184,1608,0,72,8,0,0,1,0,0,0,0,[]],56,3916,[],[[1],[1]],[0,0]],[[4224,1608,0,40,16,0,0,1,0.5,0.5,0,0,[]],50,3917,[[-1],[0],[0],[0],[0],[4],[0]],[[0],[1,0,1,0,"W 8; B 64",300,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[3632,2000,0,304,8,0,0,1,0,0,0,0,[]],56,3918,[],[[1],[1]],[0,0]],[[4128,1624,0,64,32,0,1.570796370506287,1,0.125,0.5,0,0,[]],55,3920,[[1],[150]],[[1],[300,2,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[3472,1776,0,496,8,0,0,1,0,0,0,0,[]],56,3919,[],[[1],[1]],[0,0]],[[3792,1792,0,64,32,0,1.570796370506287,1,0.125,0.5,0,0,[]],55,3921,[[1],[150]],[[1],[300,2,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[3680,1984,0,32,32,0,0,1,0.5,0.5,0,0,[]],58,3922,[[0]],[[1],[1]],[0,"Default",0,1]],[[3960,2096,0,32,32,0,0,1,0.5,0.5,0,0,[]],58,3923,[[0]],[[1],[1]],[0,"Default",0,1]],[[3992,2096,0,32,32,0,0,1,0.5,0.5,0,0,[]],58,3924,[[0]],[[1],[1]],[0,"Default",0,1]],[[4024,2096,0,32,32,0,0,1,0.5,0.5,0,0,[]],58,3925,[[0]],[[1],[1]],[0,"Default",0,1]],[[3552,1608,0,32,8,0,0,1,0,0,0,0,[]],45,3926,[],[[0],[1]],[0,0]],[[3472,1608,0,112,8,0,0,1,0,0,0,0,[]],56,3927,[],[[1],[1]],[0,0]],[[3624,2504,0,1088,9,0,1.570796370506287,1,0,0,0,0,[]],51,3837,[],[[0],[1],[1,100,""]],[0,0]],[[3704,2608,0,472,9,0,0,1,0,0,0,0,[]],51,3928,[],[[0],[1],[1,100,""]],[0,0]],[[4048,2840,0,152,9,0,1.570796370506287,1,0,0,0,0,[]],51,3929,[],[[0],[1],[1,100,""]],[0,0]],[[4048,2992,0,48,9,0,1.570796370506287,1,0,0,0,0,[]],51,3930,[],[[0],[1],[1,100,""]],[0,0]],[[3888,2559,0,32,32,0,0,1,0.5,0.5,0,0,[]],49,3931,[[5],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[0,"Default",0,1]],[[3896,2608,0,64,72,0,-1.570796489715576,1,0.5,0.5,0,0,[]],50,3932,[[-1],[0],[0],[0],[0],[5],[0]],[[0],[1,0,1,1,"W 1; B 1200",125,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[3656,2984,0,392,9,0,0,1,0,0,0,0,[]],51,3933,[],[[0],[1],[1,100,""]],[0,0]],[[3736,2968,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3934,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3768,2968,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3935,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3800,2968,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3936,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3832,2968,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3937,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3864,2968,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3938,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3896,2968,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3939,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3928,2968,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3940,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3960,2968,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3941,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3992,2968,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3942,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4024,2968,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3943,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4240,2712,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,3944,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4240,2744,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,3945,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4240,2776,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,3946,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4240,2808,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,3947,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4240,2840,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,3948,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4240,2872,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,3949,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4240,2904,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,3950,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4240,2936,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,3951,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4240,2968,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,3952,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4240,3000,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,3953,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4240,3032,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,3954,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4240,3064,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,3955,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4240,3096,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,3956,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4240,3128,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,3957,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4240,3160,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,3958,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4080,3288,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,3962,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4080,3320,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,3963,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4080,3352,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,3964,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4080,3384,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,3965,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4080,3416,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,3966,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4080,3448,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,3967,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4080,3480,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,3968,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4080,3512,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,3969,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4080,3544,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,3970,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4080,3576,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,3971,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4080,3608,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,3972,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4080,3640,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,3973,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4048,3128,0,48,9,0,1.570796370506287,1,0,0,0,0,[]],51,3974,[],[[0],[1],[1,100,""]],[0,0]],[[4048,3032,0,96,8,0,1.570796370506287,1,0,0,0,0,[]],45,3975,[],[[0],[1]],[0,0]],[[4040,3176,0,216,9,0,0,1,0,0,0,0,[]],51,3976,[],[[0],[1],[1,100,""]],[0,0]],[[4064,3160,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3977,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4096,3160,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3978,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4128,3160,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3979,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4160,3160,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3980,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4192,3160,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3981,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3536,3680,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,3982,[[0.8],[0]],[[0]],[0,"Default",0,1]],[[3952,3208,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3983,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3944,3328,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3985,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3832,3216,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3986,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3856,3280,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3987,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3984,3416,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3988,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3736,3480,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3989,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3944,3616,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3990,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3808,3376,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3991,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3784,3600,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3992,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3872,3488,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3993,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3640,2520,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,3994,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3640,2552,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,3995,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3640,2584,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,3996,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3640,2616,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,3997,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3640,2648,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,3998,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3640,2680,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,3999,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3640,2712,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,4000,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3640,2744,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,4001,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3640,2776,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,4002,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3640,2808,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,4003,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3640,2840,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,4004,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3640,2872,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,4005,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3640,2904,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,4006,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3640,2936,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,4007,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3640,2968,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,4008,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3640,3000,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,4009,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3640,3032,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,4010,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3640,3064,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,4011,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3640,3096,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,4012,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3640,3128,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,4013,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3640,3160,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,4014,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3640,3192,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,4015,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3640,3224,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,4016,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3640,3256,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,4017,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3640,3288,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,4018,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3640,3320,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,4019,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3640,3352,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,4020,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3640,3384,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,4021,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3640,3416,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,4022,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3640,3448,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,4023,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3640,3480,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,4024,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3640,3512,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,4025,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3640,3544,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,4026,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3640,3576,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,4027,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3672,2968,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,4028,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3704,2968,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,4029,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4104,3184,0,512,9,0,1.570796370506287,1,0,0,0,0,[]],51,4030,[],[[0],[1],[1,100,""]],[0,0]],[[4080,3224,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,3959,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4080,3256,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,3960,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4080,3288,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,3961,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4080,3320,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,4031,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2664,3696,0,160,8,0,0,1,0,0,0,0,[]],56,3838,[],[[0],[1]],[0,0]],[[2368,3696,0,160,8,0,0,1,0,0,0,0,[]],56,4032,[],[[0],[1]],[0,0]],[[2040,3696,0,168,8,0,0,1,0,0,0,0,[]],56,4033,[],[[0],[1]],[0,0]],[[2536,2992,0,128,8,0,0,1,0,0,0,0,[]],56,4038,[],[[1],[1]],[0,0]],[[2208,2992,0,160,8,0,0,1,0,0,0,0,[]],56,4039,[],[[1],[1]],[0,0]],[[2640,3688,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,4034,[[0]],[[1],[1]],[0,"Default",0,1]],[[2624,3352,0,352,48,0,1.570796370506287,1,0,0,0,0,[]],56,4035,[],[[1],[1]],[0,0]],[[2328,3192,0,352,88,0,1.570796370506287,1,0,0,0,0,[]],56,4036,[],[[1],[1]],[0,0]],[[2640,3656,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,4037,[[0]],[[1],[1]],[0,"Default",0,1]],[[2640,3624,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,4040,[[0]],[[1],[1]],[0,"Default",0,1]],[[2640,3592,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,4041,[[0]],[[1],[1]],[0,"Default",0,1]],[[2640,3560,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,4042,[[0]],[[1],[1]],[0,"Default",0,1]],[[2640,3528,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,4043,[[0]],[[1],[1]],[0,"Default",0,1]],[[2640,3496,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,4044,[[0]],[[1],[1]],[0,"Default",0,1]],[[2640,3464,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,4045,[[0]],[[1],[1]],[0,"Default",0,1]],[[2640,3432,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,4046,[[0]],[[1],[1]],[0,"Default",0,1]],[[2344,3688,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,4047,[[0]],[[1],[1]],[0,"Default",0,1]],[[2344,3656,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,4048,[[0]],[[1],[1]],[0,"Default",0,1]],[[2344,3528,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,4052,[[0]],[[1],[1]],[0,"Default",0,1]],[[2344,3496,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,4053,[[0]],[[1],[1]],[0,"Default",0,1]],[[2344,3464,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,4054,[[0]],[[1],[1]],[0,"Default",0,1]],[[2344,3432,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,4055,[[0]],[[1],[1]],[0,"Default",0,1]],[[2560,3688,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,4056,[[0]],[[1],[1]],[0,"Default",0,1]],[[2560,3656,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,4057,[[0]],[[1],[1]],[0,"Default",0,1]],[[2560,3624,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,4058,[[0]],[[1],[1]],[0,"Default",0,1]],[[2560,3592,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,4059,[[0]],[[1],[1]],[0,"Default",0,1]],[[2560,3560,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,4060,[[0]],[[1],[1]],[0,"Default",0,1]],[[2560,3528,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,4061,[[0]],[[1],[1]],[0,"Default",0,1]],[[2560,3496,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,4062,[[0]],[[1],[1]],[0,"Default",0,1]],[[2560,3464,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,4063,[[0]],[[1],[1]],[0,"Default",0,1]],[[2560,3432,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,4064,[[0]],[[1],[1]],[0,"Default",0,1]],[[2224,3688,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,4065,[[0]],[[1],[1]],[0,"Default",0,1]],[[2224,3656,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,4066,[[0]],[[1],[1]],[0,"Default",0,1]],[[2224,3528,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,4070,[[0]],[[1],[1]],[0,"Default",0,1]],[[2224,3496,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,4071,[[0]],[[1],[1]],[0,"Default",0,1]],[[2224,3464,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,4072,[[0]],[[1],[1]],[0,"Default",0,1]],[[2224,3432,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,4073,[[0]],[[1],[1]],[0,"Default",0,1]],[[2560,3400,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,4074,[[0]],[[1],[1]],[0,"Default",0,1]],[[2560,3368,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,4075,[[0]],[[1],[1]],[0,"Default",0,1]],[[2560,3240,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,4079,[[0]],[[1],[1]],[0,"Default",0,1]],[[2560,3208,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,4080,[[0]],[[1],[1]],[0,"Default",0,1]],[[2224,3400,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,4081,[[0]],[[1],[1]],[0,"Default",0,1]],[[2224,3368,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,4082,[[0]],[[1],[1]],[0,"Default",0,1]],[[2224,3336,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,4083,[[0]],[[1],[1]],[0,"Default",0,1]],[[2224,3304,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,4084,[[0]],[[1],[1]],[0,"Default",0,1]],[[2224,3272,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,4085,[[0]],[[1],[1]],[0,"Default",0,1]],[[2224,3240,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,4086,[[0]],[[1],[1]],[0,"Default",0,1]],[[2224,3208,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,4087,[[0]],[[1],[1]],[0,"Default",0,1]],[[2344,3400,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,4088,[[0]],[[1],[1]],[0,"Default",0,1]],[[2344,3368,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,4089,[[0]],[[1],[1]],[0,"Default",0,1]],[[2344,3336,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,4090,[[0]],[[1],[1]],[0,"Default",0,1]],[[2344,3304,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,4091,[[0]],[[1],[1]],[0,"Default",0,1]],[[2344,3272,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,4092,[[0]],[[1],[1]],[0,"Default",0,1]],[[2344,3240,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,4093,[[0]],[[1],[1]],[0,"Default",0,1]],[[2344,3208,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,4094,[[0]],[[1],[1]],[0,"Default",0,1]],[[2640,3400,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,4095,[[0]],[[1],[1]],[0,"Default",0,1]],[[2640,3368,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,4096,[[0]],[[1],[1]],[0,"Default",0,1]],[[2640,3240,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,4100,[[0]],[[1],[1]],[0,"Default",0,1]],[[2640,3208,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,4101,[[0]],[[1],[1]],[0,"Default",0,1]],[[2624,3192,0,64,48,0,1.570796370506287,1,0,0,0,0,[]],56,4077,[],[[1],[1]],[0,0]],[[2328,3640,0,64,88,0,1.570796370506287,1,0,0,0,0,[]],56,4049,[],[[1],[1]],[0,0]],[[2240,2848,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],58,4050,[[0]],[[1],[1]],[0,"Default",0,1]],[[2328,2752,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],58,4067,[[0]],[[1],[1]],[0,"Default",0,1]],[[2240,2672,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],58,4068,[[0]],[[1],[1]],[0,"Default",0,1]],[[2328,2560,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],58,4078,[[0]],[[1],[1]],[0,"Default",0,1]],[[2576,2568,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],58,4098,[[0]],[[1],[1]],[0,"Default",0,1]],[[2584,2680,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],58,4099,[[0]],[[1],[1]],[0,"Default",0,1]],[[2640,2856,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],58,4102,[[0]],[[1],[1]],[0,"Default",0,1]],[[2440,2896,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],58,4103,[[0]],[[1],[1]],[0,"Default",0,1]],[[2448,2656,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],58,4104,[[0]],[[1],[1]],[0,"Default",0,1]],[[4072,2952,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,4105,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4168,2848,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,4106,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4080,2752,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,4107,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3688,3376,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,4108,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2744,3692,0,16,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],50,4110,[[-1],[0],[0],[0],[0],[5],[0]],[[0],[1,0,1,0,"F 360; W 2; B 360; W 2",100,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[2648,3016,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],58,4051,[[0]],[[1],[1]],[0,"Default",0,1]],[[2616,3016,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],58,4069,[[0]],[[1],[1]],[0,"Default",0,1]],[[2584,3016,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],58,4076,[[0]],[[1],[1]],[0,"Default",0,1]],[[2552,3016,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],58,4097,[[0]],[[1],[1]],[0,"Default",0,1]],[[2288,3016,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],58,4113,[[0]],[[1],[1]],[0,"Default",0,1]],[[2256,3016,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],58,4114,[[0]],[[1],[1]],[0,"Default",0,1]],[[2224,3016,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],58,4115,[[0]],[[1],[1]],[0,"Default",0,1]],[[2352,3016,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],58,4116,[[0]],[[1],[1]],[0,"Default",0,1]],[[2320,3016,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],58,4117,[[0]],[[1],[1]],[0,"Default",0,1]],[[2456,3692,0,16,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],50,4111,[[-1],[0],[0],[0],[0],[5],[0]],[[0],[1,0,1,0,"F 440; W 2; B 440; W 2",100,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[2120,3691,0,16,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],50,4112,[[-1],[0],[0],[0],[0],[5],[0]],[[0],[1,0,1,0,"F 520; W 1; B 520; W 1",100,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[2808,3688,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,4121,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2776,3688,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,4122,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2712,3688,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,4124,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2680,3688,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,4125,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2520,3688,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,4126,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2496,3688,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,4127,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2419,3688,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,4129,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2400,3688,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,4130,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2376,3688,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,4131,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2048,3696,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,4132,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2080,3696,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,4133,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2152,3696,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,4135,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2200,3696,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,4136,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2176,3696,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,4137,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2720,2608,0,8,216,0,0,1,0,0,0,0,[]],51,4118,[],[[0],[1],[1,100,""]],[0,0]],[[2728,2816,0,8,8,0,1.570796370506287,1,0,0,0,0,[]],56,4119,[],[[1],[1]],[0,0]],[[2728,2608,0,8,8,0,1.570796370506287,1,0,0,0,0,[]],56,4120,[],[[1],[1]],[0,0]],[[3088,2720,0,48,16,0,0,1,0,0,0,0,[]],57,4123,[[0],[0],[""],["en-us"],[0],[0],[1],[""],[0],[1],[0],[0],[1]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","-->",1,0,0,0,0,0,0,0,"",-1,0]],[[3192,1616,0,8,1128,0,0,1,0,0,0,0,[]],59,4128,[],[[1],[1]],[0,0]],[[3128,1616,0,8,1024,0,0,1,0,0,0,0,[]],59,4134,[],[[1],[1]],[0,0]],[[3056,784,0,144,16,0,0,1,0,0,0,0,[]],57,4139,[[1],[1],[""],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[1]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","<--- Dive ",1,0,0,0,0,0,0,0,"",-1,0]],[[3696,3288,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2226,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2456,2872,0,8,32,0,1.570796370506287,1,0,0,0,0,[]],51,2235,[],[[0],[1],[1,100,""]],[0,0]],[[2344,2728,0,8,32,0,1.570796370506287,1,0,0,0,0,[]],51,2236,[],[[0],[1],[1,100,""]],[0,0]],[[2464,2632,0,8,32,0,1.570796370506287,1,0,0,0,0,[]],51,3984,[],[[0],[1],[1,100,""]],[0,0]],[[2592,2544,0,8,32,0,1.570796370506287,1,0,0,0,0,[]],51,5414,[],[[0],[1],[1,100,""]],[0,0]],[[2451,2573,0,64,64,0,0,1,0.5,0.5,0,0,[]],60,2755,[["level40"]],[[1],[400,-200,800,0,0,0],[0,0,0,1,1]],[0,"Default",0,1]],[[2826,720,0,8,8,0,0,1,0,0,0,0,[]],56,2030,[],[[1],[0]],[0,0]],[[2921,826,0,8,8,0,0,1,0,0,0,0,[]],56,3840,[],[[1],[0]],[0,0]],[[2649,833,0,8,8,0,0,1,0,0,0,0,[]],56,5518,[],[[1],[0]],[0,0]],[[2558,717,0,8,8,0,0,1,0,0,0,0,[]],56,5524,[],[[1],[0]],[0,0]],[[2332,808,0,8,8,0,0,1,0,0,0,0,[]],56,5525,[],[[1],[0]],[0,0]],[[2183,642,0,8,8,0,0,1,0,0,0,0,[]],56,5526,[],[[1],[0]],[0,0]],[[2092,752,0,8,8,0,0,1,0,0,0,0,[]],56,5527,[],[[1],[0]],[0,0]],[[1633,1246,0,8,8,0,0,1,0,0,0,0,[]],56,5528,[],[[1],[0]],[0,0]],[[1827,1327,0,8,8,0,0,1,0,0,0,0,[]],56,5529,[],[[1],[0]],[0,0]],[[1947,1211,0,8,8,0,0,1,0,0,0,0,[]],56,5530,[],[[1],[0]],[0,0]],[[1749,1098,0,8,8,0,0,1,0,0,0,0,[]],56,5531,[],[[1],[0]],[0,0]],[[2907,1253,0,8,8,0,0,1,0,0,0,0,[]],56,5532,[],[[1],[0]],[0,0]],[[2918,1084,0,8,8,0,0,1,0,0,0,0,[]],56,5533,[],[[1],[0]],[0,0]],[[3024,1288,0,8,8,0,0,1,0,0,0,0,[]],56,5534,[],[[1],[0]],[0,0]],[[3242,1288,0,8,8,0,0,1,0,0,0,0,[]],56,5535,[],[[1],[0]],[0,0]],[[3369,1165,0,8,8,0,0,1,0,0,0,0,[]],56,5536,[],[[1],[0]],[0,0]],[[3211,1059,0,8,8,0,0,1,0,0,0,0,[]],56,5537,[],[[1],[0]],[0,0]],[[3394,1348,0,8,8,0,0,1,0,0,0,0,[]],56,5538,[],[[1],[0]],[0,0]],[[3309,939,0,8,8,0,0,1,0,0,0,0,[]],56,5539,[],[[1],[0]],[0,0]],[[3411,3148,0,32,32,0,0,1,0.5,0.5,0,0,[]],49,5540,[[10],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[0,"Default",0,1]],[[221.6666259765625,1337.333251953125,0,8,8,0,0,1,0,0,0,0,[]],56,5541,[],[[1],[0]],[0,0]],[[415.6666259765625,1418.333251953125,0,8,8,0,0,1,0,0,0,0,[]],56,5542,[],[[1],[0]],[0,0]],[[337.6666259765625,1189.333251953125,0,8,8,0,0,1,0,0,0,0,[]],56,5543,[],[[1],[0]],[0,0]],[[625.6666259765625,1448.333251953125,0,8,8,0,0,1,0,0,0,0,[]],56,5544,[],[[1],[0]],[0,0]],[[819.6666259765625,1529.333251953125,0,8,8,0,0,1,0,0,0,0,[]],56,5545,[],[[1],[0]],[0,0]],[[741.6666259765625,1300.333251953125,0,8,8,0,0,1,0,0,0,0,[]],56,5546,[],[[1],[0]],[0,0]],[[390.6666259765625,1272.333251953125,0,8,8,0,0,1,0,0,0,0,[]],56,5547,[],[[1],[0]],[0,0]],[[584.6666259765625,1353.333251953125,0,8,8,0,0,1,0,0,0,0,[]],56,5548,[],[[1],[0]],[0,0]],[[506.6666259765625,1124.333251953125,0,8,8,0,0,1,0,0,0,0,[]],56,5549,[],[[1],[0]],[0,0]],[[981.6666259765625,1395.333251953125,0,8,8,0,0,1,0,0,0,0,[]],56,5550,[],[[1],[0]],[0,0]],[[1175.666625976563,1476.333251953125,0,8,8,0,0,1,0,0,0,0,[]],56,5551,[],[[1],[0]],[0,0]],[[1097.666625976563,1247.333251953125,0,8,8,0,0,1,0,0,0,0,[]],56,5552,[],[[1],[0]],[0,0]],[[1238.666625976563,1404.333251953125,0,8,8,0,0,1,0,0,0,0,[]],56,5553,[],[[1],[0]],[0,0]],[[1432.666625976563,1485.333251953125,0,8,8,0,0,1,0,0,0,0,[]],56,5554,[],[[1],[0]],[0,0]],[[1354.666625976563,1256.333251953125,0,8,8,0,0,1,0,0,0,0,[]],56,5555,[],[[1],[0]],[0,0]],[[1550,1420,0,288,117,0,0,1,0,0,0,0,[[]]],61,5632,[],[[1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>","1",7,0,60,0,0,0,0,0,"",-1,0]],[[2245.209228515625,1129.578491210938,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,3849,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2245.209228515625,1017.578491210938,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3850,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2301.209228515625,1073.578491210938,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,3851,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2189.209228515625,1073.578491210938,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,3853,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2285.209228515625,1033.578491210938,0,32,32,0,0.7853981852531433,1,0.5,0.5,0,0,[]],47,3854,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2285.209228515625,1113.578491210938,0,32,32,0,2.356194496154785,1,0.5,0.5,0,0,[]],47,3855,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2205.209228515625,1113.578491210938,0,32,32,0,-2.356194734573364,1,0.5,0.5,0,0,[]],47,3866,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2205.209228515625,1033.578491210938,0,32,32,0,-0.7853984832763672,1,0.5,0.5,0,0,[]],47,3867,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2263.209228515625,1033.578491210938,0,80,33.489990234375,0,1.570796370506287,1,0,0,0,0,[]],51,3868,[],[[0],[1],[1,100,""]],[0,0]],[[2285.209228515625,1090.578491210938,0,80,34.0167236328125,0,3.141592741012573,1,0,0,0,0,[]],51,3869,[],[[0],[1],[1,100,""]],[0,0]],[[2228.209228515625,1032.578491210938,0,82.63404083251953,33.93962478637695,0,0.7853981852531433,1,0,0,0,0,[]],51,3870,[],[[0],[1],[1,100,""]],[0,0]],[[2287.209228515625,1055.578491210938,0,82.60512542724609,33.16415405273438,0,2.356194496154785,1,0,0,0,0,[]],51,3871,[],[[0],[1],[1,100,""]],[0,0]],[[2245.209228515625,1073.578491210938,0,144,144,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,3846,[[-1],[0],[0],[0],[0],[-2],[1]],[[0],[1,1,0,0,"F 432; R 90 ; F 816 ; R 90",300,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[2246.209228515625,1073.578491210938,0,104,104,0,0,1,0.5,0.5,0,0,[]],50,3847,[[1],[1],[10],[0],[0],[-2],[1]],[[0],[1,1,1,0,"R 360",175,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[2664,1880,0,8,424,0,1.570796370506287,1,0,0,0,0,[]],67,3889,[],[[1]],[0,0]],[[2240,1072,0,428,360,0,0,1,0,0,0,0,[]],67,3845,[],[[1]],[0,0]],[[2236,1068,0,8,824,0,0,1,0,0,0,0,[]],68,1035,[],[[1]],[0,0]],[[2672,1068,0,8,432,0,1.570796370506287,1,0,0,0,0,[]],68,1029,[],[[1]],[0,0]],[[2672,1884,0,8,432,0,1.570796370506287,1,0,0,0,0,[]],68,3841,[],[[1]],[0,0]],[[2664,1072,0,8,816,0,0,1,0,0,0,0,[]],68,3872,[],[[1]],[0,0]],[[2665.87353515625,1937.779174804688,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,3873,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2665.87353515625,1825.779174804688,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3874,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2721.87353515625,1881.779174804688,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,3876,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2609.87353515625,1881.779174804688,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,3877,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2705.87353515625,1841.779174804688,0,32,32,0,0.7853981852531433,1,0.5,0.5,0,0,[]],47,3878,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2705.87353515625,1921.779174804688,0,32,32,0,2.356194496154785,1,0.5,0.5,0,0,[]],47,3880,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2625.87353515625,1921.779174804688,0,32,32,0,-2.356194734573364,1,0.5,0.5,0,0,[]],47,3881,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2625.87353515625,1841.779174804688,0,32,32,0,-0.7853984832763672,1,0.5,0.5,0,0,[]],47,3882,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2683.87353515625,1841.779174804688,0,80,33.489990234375,0,1.570796370506287,1,0,0,0,0,[]],51,3883,[],[[0],[1],[1,100,""]],[0,0]],[[2705.87353515625,1898.779174804688,0,80,34.0167236328125,0,3.141592741012573,1,0,0,0,0,[]],51,3884,[],[[0],[1],[1,100,""]],[0,0]],[[2648.87353515625,1840.779174804688,0,82.63404083251953,33.93962478637695,0,0.7853981852531433,1,0,0,0,0,[]],51,3885,[],[[0],[1],[1,100,""]],[0,0]],[[2707.87353515625,1863.779174804688,0,82.60512542724609,33.16415405273438,0,2.356194496154785,1,0,0,0,0,[]],51,3888,[],[[0],[1],[1,100,""]],[0,0]],[[2665.87353515625,1881.779174804688,0,144,144,0,-1.570796489715576,1,0.5,0.5,0,0,[]],50,3890,[[-1],[0],[0],[0],[0],[-2],[1]],[[0],[1,1,0,0,"B 432; R 90 ; B 816 ; R 90",300,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[2666.87353515625,1881.779174804688,0,104,104,0,0,1,0.5,0.5,0,0,[]],50,3891,[[1],[1],[10],[0],[0],[-2],[1]],[[0],[1,1,1,0,"R 360",175,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[2048,1408,0,200,9,0,1.570796370506287,1,0,0,0,0,[]],51,10380,[],[[0],[1],[1,100,""]],[0,0]],[[2040,1504,0,32,40,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,10381,[[0],[0],[10],[0],[0],[3],[1]],[[0],[1,0,1,1,"F 200",100,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[2240,1528,0,428,360,0,0,1,0,0,0,0,[]],67,10382,[],[[1]],[0,0]],[[1222,1496,0,428,112,0,0,1,-2.380000114440918,0.6399999856948853,0,0,[]],159,10383,[],[[0]],[0,"Default",0,1]],[[2667,1432,0,104,9,0,1.570796370506287,1,0,0,0,0,[]],51,10385,[],[[0],[1],[1,100,""]],[0,0]],[[2304,2112,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10386,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2336,2112,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10387,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2416,2112,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10389,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2448,2112,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10390,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2528,2112,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10393,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2560,2112,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10394,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2048,2128,0,792,8,0,0,1,0,0,0,0,[]],67,10396,[],[[1]],[0,0]],[[2288,2128,0,64,136,0,0,1,0,0,0,0,[]],51,3800,[],[[0],[1],[1,100,""]],[0,0]],[[2512,2128,0,64,136,0,0,1,0,0,0,0,[]],51,10397,[],[[0],[1],[1,100,""]],[0,0]],[[2400,2128,0,64,112,0,0,1,0,0,0,0,[]],51,10388,[],[[0],[1],[1,100,""]],[0,0]],[[2320,2196,0,144,40,0,-1.570796489715576,1,0.5,0.5,0,0,[]],50,10391,[[0],[0],[10],[0],[0],[3],[1]],[[0],[1,0,1,0,"F 200 ; W 0.5; B 200; W 0.5",200,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[2544,2196,0,144,40,0,-1.570796489715576,1,0.5,0.5,0,0,[]],50,10399,[[0],[0],[10],[0],[0],[3],[1]],[[0],[1,0,1,0,"F 200 ; W 0.5; B 200; W 0.5",200,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[2432,2136,0,24,40,0,-1.570796489715576,1,0.5,0.5,0,0,[]],50,10392,[[0],[0],[10],[0],[0],[3],[1]],[[0],[1,0,1,0,"F 200 ; W 0.5; B 200; W 0.5",300,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[2632,2112,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10398,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2664,2112,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10400,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2616,2128,0,64,136,0,0,1,0,0,0,0,[]],51,10401,[],[[0],[1],[1,100,""]],[0,0]],[[2648,2136,0,24,40,0,-1.570796489715576,1,0.5,0.5,0,0,[]],50,10402,[[0],[0],[10],[0],[0],[3],[1]],[[0],[1,0,1,0,"F 200 ; W 0.5; B 200; W 0.5",300,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[2185,2118,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10403,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2217,2118,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10404,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2169,2134,0,64,136,0,0,1,0,0,0,0,[]],51,10405,[],[[0],[1],[1,100,""]],[0,0]],[[2201,2142,0,24,40,0,-1.570796489715576,1,0.5,0.5,0,0,[]],50,10406,[[0],[0],[10],[0],[0],[3],[1]],[[0],[1,0,1,0,"F 200 ; W 0.5; B 200; W 0.5",300,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[2840,1608,0,528,8,0,1.570796370506287,1,0,0,0,0,[]],67,3804,[],[[1]],[0,0]],[[2400,2128,0,64,136,0,0,1,0,0,0,0,[]],51,10411,[],[[0],[1],[1,100,""]],[0,0]],[[2304,2280,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10412,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2336,2280,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10413,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2528,2280,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10414,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2560,2280,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10415,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2784,2080,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,10416,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2784,2112,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,10417,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2912,2064,0,64,112,0,1.570796370506287,1,0,0,0,0,[]],51,10418,[],[[0],[1],[1,100,""]],[0,0]],[[2800,2096,0,24,40,0,3.141592741012573,1,0.5,0.5,0,0,[]],50,10419,[[0],[0],[10],[0],[0],[3],[1]],[[0],[1,0,1,0,"F 88 ; W 0.5; B 88; W 0.5",100,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[2784,1840,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,10420,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2784,1872,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,10421,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2912,1824,0,64,112,0,1.570796370506287,1,0,0,0,0,[]],51,10422,[],[[0],[1],[1,100,""]],[0,0]],[[2800,1856,0,24,40,0,3.141592741012573,1,0.5,0.5,0,0,[]],50,10423,[[0],[0],[10],[0],[0],[3],[1]],[[0],[1,0,1,0,"F 120 ; W 1.2; B 120; W 1.2",100,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[2784,1640,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,10424,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2784,1672,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,10425,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2824,1624,0,64,24,0,1.570796370506287,1,0,0,0,0,[]],51,10426,[],[[0],[1],[1,100,""]],[0,0]],[[2840,1656,0,112,56,0,3.141592741012573,1,0.5,0.5,0,0,[]],50,10427,[[0],[0],[10],[0],[0],[3],[1]],[[0],[1,0,1,0,"F 120 ; W 1.2; B 120; W 1.2",100,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[2904,1624,0,64,24,0,1.570796370506287,1,0,0,0,0,[]],51,10407,[],[[0],[1],[1,100,""]],[0,0]],[[2824,1624,0,56,8,0,0,1,0,0,0,0,[]],45,10408,[],[[0],[1]],[0,0]],[[2824,1680,0,56,8,0,0,1,0,0,0,0,[]],45,10409,[],[[0],[1]],[0,0]],[[2048,1400,0,192,9,0,0,1,0,0,0,0,[]],52,10410,[],[[0],[0]],[0,0]],[[2672,1408,0,160,9,0,0,1,0,0,0,0,[]],52,10428,[],[[0],[0]],[0,0]],[[2508,2552,0,24,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,10395,[[0],[0],[10],[0],[0],[11],[1]],[[0],[1,0,1,0,"F 3000",10000,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[2408,2504,0,120,8,0,1.570796370506287,1,0,0,0,0,[]],56,10429,[],[[1],[1]],[0,0]],[[2504,2504,0,120,8,0,1.570796370506287,1,0,0,0,0,[]],56,10430,[],[[1],[1]],[0,0]],[[2396,2560,0,24,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,10431,[[0],[0],[10],[0],[0],[11],[1]],[[0],[1,0,1,0,"F 3000",10000,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[2312,1472,0,24,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,2142,[[0],[0],[10],[0],[0],[11],[1]],[[0],[1,0,1,1,"F 200",100,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]]],[]],["UI",2,788860134648194,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[240,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3097,[["right"]],[[0,1,0,1,1]],[0,"Default",0,1]],[[80,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3098,[["left"]],[[0,1,0,1,1]],[0,"Default",1,1]],[[560,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3099,[["up"]],[[1,1,1,1,1]],[0,"Default",3,1]],[[400,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3100,[["down"]],[[1,1,1,1,1]],[0,"Default",2,1]]],[]],["End Card",3,772150204686758,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],78,2607,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[12.04449462890625,194,0,615.9109497070313,67,0,0,1,0,0,0,0,[]],79,2608,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Timer for this level",2.5,0,0,0,0,0,-10,0,"",-1,0]],[[17.546875,248,0,604.90625,105,0,0,1,0,0,0,0,[]],80,2610,[[0],[0],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","13:40:40",4,0,63,50,0,0,-10,0,"",-1,0]],[[115.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,2611,[[0],[1],[0],[0],["replay"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Replay",""],[""],[2,2,0,0,0],["",""]],[0,"Replay",0,1]],[[524.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3086,[[0],[1],[0],[0],["next"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Next",""],[""],[2,2,0,0,0],["",""]],[0,"Next",0,1]],[[320.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3087,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > Back","Level Menu"],[""],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[320.75,521.8050537109375,0,384,96,0,0,1,0.5,0.5,0,0,[]],70,3088,[[1],[1],[0],[0],[""],["{\"size\": 22, \"left\": 70, \"right\": 18, \"alignY\": 60}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > DownloadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"DownloadReplay",0,1]]],[]],["Pause",4,538627218715661,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-310,678,0,274,31,0,0,1,0,0,0,0,[]],168,3089,[],[],[".ovo",0,1,"file"]],[[320,320,0,425,250,0,0,1,0.5,0.5,0,0,[]],82,3090,[],[[6,1,"",300,1,1,"",300,"overlay",1,"PauseClose",1,1]],[0,"Default",0,1]],[[214,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3091,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"",""],["PauseClose"],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[426,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3092,[[0],[1],[0],[0],["quit"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > GiveUp",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[115.5,202,0,409,118,0,0,1,0,0,0,0,[]],83,3093,[[1],[1],["pause"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Pause",4,0,57,50,0,0,-10,0,"",-1,0]],[[320.5,88,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3094,[[1],[1],[0],[0],["loadreplay"],["{\"size\": 16, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > LoadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"LoadReplay",0,1]],[[320.5,157,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3095,[[1],[0],[0],[0],["toggledebug"],["{\"size\": 15, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Debug > Toggle",""],[""],[2,2,0,0,0],["",""]],[0,"ToggleDebug",0,1]],[[78,448,0,484,134,0,0,1,0,0,0,0,[]],193,3096,[],[],[0,"Default",0,1]]],[]],["Overlay",5,655660242395765,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[432,4,0,203.0009155273438,64,0,0,1,0,0,0,0,[]],107,5488,[],[[1,0,1,0,1]],[2,2,2,2,0,1,0,0,1]],[[432,4,0,203,64,0,0,1,0,0,0,0,[]],84,3101,[[0],[0],[""],["en-us"],[0],[1],[1],["{\"alignY\": 85, \"alignX\": 45, \"size\": 28}"],[0],[1],[0],[0],[0]],[["",""],[1,0,1,0,1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",2,0,100,50,0,0,-10,0,"",-1,0]],[[88,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3102,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Pause",""],[""],[0,0,0,0,1],["",""]],[0,"Pause",0,1]],[[158,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3103,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Replay","1"],[""],[0,0,0,0,1],["",""]],[0,"Reload",0,1]]],[]],["End Game",6,202125044846246,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],85,3104,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[73,194,0,494,72,0,0,1,0,0,0,0,[]],86,3105,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],["{alignY:50}"],[0],[1],[0],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Your final time",2.5,0,50,50,0,0,-10,0,"",-1,0]],[[320,403,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3106,[[0],[1],[0],[0],[""],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Quit",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[73,243,0,494,85,0,0,1,0,0,0,0,[]],87,3108,[[0],[1],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",3,0,50,50,0,0,-10,0,"",-1,0]],[[73,318,0,494,25,0,0,1,0,0,0,0,[]],86,5480,[[1],[1],["tryagainhardmode"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Try again in hard mode!",1,0,50,50,0,0,-2,0,"",-1,0]]],[]],["Banner",7,494282705815686,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-237,-189,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,3109,[],[["overlay"]],[0,"Default",0,1]]],[]],["AdPlaying",8,497669990335070,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,-203.5,0,250,97,0,0,1,0.5,0.5,0,0,[]],125,390,[],[[6,1,"",300,1,1,"",300,"overlay",1,"",1,1],[]],[0,"Default",0,1]],[[209,-275,0,222,139,0,0,1,0,0,0,0,[]],86,391,[[1],[1],["adplaying"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","An ad is playing right now...",1.2,0,50,50,0,0,-2,0,"",-1,0]],[[-154.5756988525391,-294.3137512207031,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,5508,[],[["overlay"]],[0,"Default",0,1]]],[]]],[],[]],["Level 41",4000,6000,true,"Levels",505886752746897,[["Background",0,879101618635889,true,[255,255,255],false,0,0,1,false,false,1,0,0,[],[]],["Layer 0",1,987470523785702,true,[255,255,255],true,1,1,1,false,false,1,0,0,[[[-21976,3360,0,7616,2000,0,0,1,-2.380000114440918,0.6399999856948853,0,0,[]],159,5728,[],[[0]],[0,"Default",0,1]],[[3656,5152,0,656,9,0,1.570796370506287,1,0,0,0,0,[]],51,5636,[],[[0],[1],[1,100,""]],[0,0]],[[3536,5304,0,504,9,0,1.570796370506287,1,0,0,0,0,[]],51,5638,[],[[0],[1],[1,100,""]],[0,0]],[[3528,5800,0,128,2000,0,0,1,0,0,0,0,[]],51,5639,[],[[0],[1],[1,100,""]],[0,0]],[[3584,5824,0,50,55,0,-1.570796489715576,1,0.5,0.5,0,0,[]],50,5640,[[-1],[0],[0],[0],[0],[0],[1]],[[0],[1,1,1,1,"W 3 ; F 500",200,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[2976,5304,0,560,1152,0,0,1,0,0,0,0,[]],51,5641,[],[[0],[1],[1,100,""]],[0,0]],[[3648,5304,0,1016,1168,0,0,1,0,0,0,0,[]],51,5642,[],[[0],[1],[1,100,""]],[0,0]],[[3200,5024,0,288,216,0,1.570796370506287,1,0,0,0,0,[]],51,5643,[],[[0],[1],[1,100,""]],[0,0]],[[4671,2896,0,2416,712,0,1.570796370506287,1,0,0,0,0,[]],51,5644,[],[[0],[1],[1,100,""]],[0,0]],[[2976,5024,0,560,9,0,0,1,0,0,0,0,[]],51,5645,[],[[0],[1],[1,100,""]],[0,0]],[[3648,2073,0,1040,2960,0,0,1,0,0,0,0,[]],51,5646,[],[[0],[1],[1,100,""]],[0,0]],[[3656,4248,0,784,9,0,1.570796370506287,1,0,0,0,0,[]],51,5647,[],[[0],[1],[1,100,""]],[0,0]],[[3536,4528,0,632,9,0,1.570796370506287,1,0,0,0,0,[]],51,5648,[],[[0],[1],[1,100,""]],[0,0]],[[2984,4536,0,296,9,0,1.570796370506287,1,0,0,0,0,[]],51,5651,[],[[0],[1],[1,100,""]],[0,0]],[[1048,4009,0,2608,248,0,0,1,0,0,0,0,[]],51,5655,[],[[0],[1],[1,100,""]],[0,0]],[[3528,5152,0,128,9,0,0,1,0,0,0,0,[]],51,5649,[],[[0],[1],[1,100,""]],[0,0]],[[3336,5176,0,8,64,0,0,1,0.5,0.5,0,0,[[255,255,255,0,128,255,0.01]]],62,5650,[[0],[1],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[3832,5176,0,8,64,0,3.141592741012573,1,0.5,0.5,0,0,[[255,255,255,0,128,255,0.01]]],62,5657,[[1],[0],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[3328,5208,0,88,9,0,0,1,0,0,0,0,[]],51,5658,[],[[0],[1],[1,100,""]],[0,0]],[[3752,5208,0,88,9,0,0,1,0,0,0,0,[]],51,5659,[],[[0],[1],[1,100,""]],[0,0]],[[3584,5160,0,50,55,0,-1.570796489715576,1,0.5,0.5,0,0,[]],50,5660,[[-1],[0],[0],[0],[0],[1],[1]],[[0],[1,0,1,1,"W 1 ; F 500 ; W 2 ; B 500",200,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[3584,5112,0,32,32,0,0,1,0.5,0.5,0,0,[]],49,5661,[[1],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[0,"Default",0,1]],[[2096,4248,0,664,1176,0,1.570796370506287,1,0,0,0,0,[]],51,5652,[],[[0],[1],[1,100,""]],[0,0]],[[3264,4456,0,8,64,0,0,1,0.5,0.5,0,0,[[255,255,255,255,0,0,0.01]]],62,5653,[[2],[3],[1],[180],[1],[0],[0]],[[0]],[0,"Default",0,1]],[[2200,4392,0,696,9,0,0,1,0,0,0,0,[]],51,5654,[],[[0],[1],[1,100,""]],[0,0]],[[3200,4256,0,56,272,0,0,1,0,0,0,0,[]],51,5665,[],[[0],[1],[1,100,""]],[0,0]],[[2896,4400,0,128,9,0,1.570796370506287,1,0,0,0,0,[]],51,5670,[],[[0],[1],[1,100,""]],[0,0]],[[2648,4256,0,136,9,0,1.570796370506287,1,0,0,0,0,[]],51,5671,[],[[0],[1],[1,100,""]],[0,0]],[[2640,4336,0,8,64,0,3.141592741012573,1,0.5,0.5,0,0,[[255,255,255,255,0,0,0.01]]],62,5674,[[6],[5],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[2648,4336,0,8,64,0,0,1,0.5,0.5,0,0,[[255,255,255,255,0,0,0.01]]],62,5675,[[7],[6],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[2136,4525,0,8,64,0,-1.570796489715576,1,0.5,0.5,0,0,[[255,255,255,0,0,255,0.01]]],62,5676,[[10],[11],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[2264,4829,0,8,64,0,-1.570796489715576,1,0.5,0.5,0,0,[[255,255,255,0,0,255,0.01]]],62,5677,[[11],[10],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[2208,4392,0,448,9,0,1.570796370506287,1,0,0,0,0,[]],51,5678,[],[[0],[1],[1,100,""]],[0,0]],[[2088,4528,0,120,9,0,0,1,0,0,0,0,[]],51,5679,[],[[0],[1],[1,100,""]],[0,0]],[[2360,4504,0,184,9,0,1.570796370506287,1,0,0,0,0,[]],51,5680,[],[[0],[1],[1,100,""]],[0,0]],[[928,4832,0,2056,1600,0,0,1,0,0,0,0,[]],51,5681,[],[[0],[1],[1,100,""]],[0,0]],[[2352,4680,0,624,9,0,0,1,0,0,0,0,[]],51,5682,[],[[0],[1],[1,100,""]],[0,0]],[[2984,4704,0,328,9,0,1.570796370506287,1,0,0,0,0,[]],51,5683,[],[[0],[1],[1,100,""]],[0,0]],[[2944,4816,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,5689,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2971,4744,0,8,64,0,3.141592741012573,1,0.5,0.5,0,0,[[255,255,255,255,0,0,0.01]]],62,5692,[[20],[30],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[2880,4528,0,656,9,0,0,1,0,0,0,0,[]],51,5693,[],[[0],[1],[1,100,""]],[0,0]],[[2883,4504,0,8,64,0,3.141592741012573,1,0.5,0.5,0,0,[[255,255,255,255,0,0,0.01]]],62,5694,[[30],[20],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[2368,4648,0,8,64,0,0,1,0.5,0.5,0,0,[[255,255,255,255,0,0,0.01]]],62,5695,[[12],[13],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[1392,3104,0,8,64,0,0,1,0.5,0.5,0,0,[[255,255,255,255,0,0,0.01]]],62,5697,[[13],[12],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[3168,3256,0,48,344,0,-1.570796489715576,1,0.5,0.5,0,0,[[255,255,255,69,169,148,0.01]]],62,5701,[[13],[100],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[2240,3752,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,5702,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2272,3752,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,5703,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2304,3752,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,5704,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2336,3752,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,5705,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2368,3752,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,5706,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2400,3752,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,5707,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2432,3752,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,5708,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2464,3752,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,5709,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2496,3752,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,5710,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2936,3744,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,5711,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2968,3744,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,5712,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3000,3744,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,5713,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3032,3744,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,5714,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3064,3744,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,5715,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3096,3744,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,5716,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3128,3744,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,5717,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3160,3744,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,5718,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3192,3744,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,5719,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3224,3744,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,5720,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3256,3744,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,5721,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3288,3744,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,5722,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3320,3744,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,5723,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3352,3744,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,5724,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3384,3744,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,5725,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2632,3080,0,224,40,0,0,1,0,0,0,0,[]],57,5726,[[1],[1],[""],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[1]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Through",2,0,0,0,0,0,0,0,"",-1,0]],[[1096,3032,0,1640,8,0,0,0.699999988079071,0,0,5,0,[]],56,5699,[],[[1],[1]],[0,0]],[[1016,3168,0,1832,8,0,0,0.699999988079071,0,0,5,0,[]],56,5731,[],[[1],[1]],[0,0]],[[1272,3032,0,136,8,0,1.570796370506287,0.699999988079071,0,0,5,0,[]],56,5698,[],[[1],[1]],[0,0]],[[3168,3344,0,320,192,0,0,1,0.5257731676101685,0.4974874258041382,0,0,[]],44,5696,[],[[0]],[0,"Default",0,1]],[[3168,3272,0,48,344,0,1.570796370506287,1,0.5,0.5,0,0,[[255,255,255,69,169,148,0.01]]],62,5700,[[100],[13],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[3744,5176,0,88,24,0,0,1,0,0,0,0,[]],46,5730,[[0],[0],[""],["en-us"],[0],[0],[1],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","-->",1,0,50,0,0,0,0,0,"",-1,0]],[[3424,5192,0,88,24,0,3.141592741012573,1,0,0,0,0,[]],46,5732,[[0],[0],[""],["en-us"],[0],[0],[1],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","-->",1,0,50,0,0,0,0,0,"",-1,0]],[[2936,3032,0,160,40,0,0,1,0,0,0,0,[]],57,5684,[[1],[1],[""],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[1]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","The",2,0,0,0,0,0,0,0,"",-1,0]],[[3184,3144,0,224,40,0,0,1,0,0,0,0,[]],57,5685,[[1],[1],[""],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[1]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Portal!",2,0,0,0,0,0,0,0,"",-1,0]],[[1280,3088,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,5686,[[0]],[[1],[1]],[0,"Default",0,1]],[[1280,3120,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,5687,[[0]],[[1],[1]],[0,"Default",0,1]],[[1288,3152,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,5688,[[0]],[[1],[1]],[0,"Default",0,1]],[[1288,3056,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,5733,[[0]],[[1],[1]],[0,"Default",0,1]],[[1273,3104,0,50,96,0,0,1,0.5,0.5,0,0,[]],50,5734,[[-1],[0],[0],[0],[0],[5],[1]],[[0],[1,0,1,1,"F 3000",550,125,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1416,3104,0,32,32,0,0,1,0.5,0.5,0,0,[]],49,5735,[[5],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[1,"Default",0,1]],[[1136,3104,0,64,64,0,0,1,0.5,0.5,0,0,[]],60,5736,[["level41"]],[[0],[400,-200,800,0,0,0],[0,0,0,1,1]],[0,"Default",0,1]],[[1016,2728,0,448,32,0,1.570796370506287,1,0,0,0,0,[]],51,5737,[],[[0],[1],[1,100,""]],[0,0]],[[2112,3080,0,240,40,0,0,1,0,0,0,0,[]],57,1049,[[1],[1],[""],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[1]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Quickly!",2,0,0,0,0,0,0,0,"",-1,0]],[[3192,4328,0,8,64,0,3.141592741012573,1,0.5,0.5,0,0,[[255,255,255,255,0,0,0.01]]],62,1788,[[3],[-1],[0],[180],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[3272,4272,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,1789,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3272,4304,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,1783,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3272,4336,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,1786,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3272,4368,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,1787,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3272,4400,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,1790,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3272,4512,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,1791,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3184,4272,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,1792,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3184,4384,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,1793,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3184,4416,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,1794,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3184,4448,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,1795,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3184,4480,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,1796,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3184,4512,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,1797,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3248,4678.75634765625,0,58.44655609130859,58.44655609130859,0,0,1,0.5,0.5,0,0,[]],53,177,[["Initialisation"],[""],[0]],[],[1,"Default",0,1]],[[3112,4728,0,288,117,0,0,1,0,0,0,0,[[]]],61,9115,[],[[1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>","1",7,0,60,0,0,0,0,0,"",-1,0]],[[3056,4784,0,8,64,0,0,1,0.5,0.5,0,0,[[255,255,255,0,0,255,0.01]]],62,9116,[[2],[3],[1],[180],[1],[0],[0]],[[0]],[0,"Default",0,1]],[[3120,4664,0,8,64,0,0.7853981852531433,1,0.5,0.5,0,0,[[255,255,255,255,128,64,0.01]]],62,9119,[[2],[3],[1],[180],[1],[0],[0]],[[0]],[0,"Default",0,1]],[[3376,4664,0,8,64,0,2.356194496154785,1,0.5,0.5,0,0,[[255,255,255,128,128,0,0.01]]],62,9120,[[2],[3],[1],[180],[1],[0],[0]],[[0]],[0,"Default",0,1]],[[3368,4912,0,8,64,0,-2.356194734573364,1,0.5,0.5,0,0,[[255,255,255,128,0,128,0.01]]],62,9121,[[2],[3],[1],[180],[1],[0],[0]],[[0]],[0,"Default",0,1]],[[3448,4784,0,8,64,0,3.141592741012573,1,0.5,0.5,0,0,[[255,255,255,0,128,128,0.01]]],62,9122,[[2],[3],[1],[180],[1],[0],[0]],[[0]],[0,"Default",0,1]],[[3248,4952,0,8,64,0,-1.570796489715576,1,0.5,0.5,0,0,[[255,255,255,0,255,0,0.01]]],62,9123,[[2],[3],[1],[180],[1],[0],[0]],[[0]],[0,"Default",0,1]],[[3112,4904,0,8,64,0,-0.7853984832763672,1,0.5,0.5,0,0,[[255,255,255,64,128,254,0.01]]],62,9124,[[2],[3],[1],[180],[1],[0],[0]],[[0]],[0,"Default",0,1]],[[3248,4608,0,8,64,0,1.570796370506287,1,0.5,0.5,0,0,[[255,255,255,255,0,0,0.01]]],62,9125,[[2],[3],[1],[180],[1],[0],[0]],[[0]],[0,"Default",0,1]],[[2912,4816,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,5637,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2880,4816,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,5690,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[12664,7432,0,7616,2000,0,0,1,-2.380000114440918,0.6399999856948853,0,0,[]],159,5691,[],[[0]],[0,"Default",0,1]],[[3584,5728,0,32,64,0,0,1,0.5,0.5,0,0,[]],42,616,[["run"],[0],[1],[1],[0],[0.8],[0.5],[0],[1],[0],[0],[0],["ovo+"],[2],[0],[0],[0],[""],[0],[3],[0],[0],[0],[0],[0],[0],[0]],[[330,1500,1500,650,1500,1000,1,0,0,1],[],[0,0],[0,10000,360,1]],[1,"Default",0,1]],[[984,4232,0,32,32,0,0,1,0.5,0.5,0,0,[]],163,9482,[],[[0]],[0,"Default",0,1]]],[]],["UI",2,135513035952652,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[240,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3097,[["right"]],[[0,1,0,1,1]],[0,"Default",0,1]],[[80,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3098,[["left"]],[[0,1,0,1,1]],[0,"Default",1,1]],[[560,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3099,[["up"]],[[1,1,1,1,1]],[0,"Default",3,1]],[[400,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3100,[["down"]],[[1,1,1,1,1]],[0,"Default",2,1]]],[]],["End Card",3,609446679384279,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],78,2607,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[12.04449462890625,194,0,615.9109497070313,67,0,0,1,0,0,0,0,[]],79,2608,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Timer for this level",2.5,0,0,0,0,0,-10,0,"",-1,0]],[[17.546875,248,0,604.90625,105,0,0,1,0,0,0,0,[]],80,2610,[[0],[0],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","13:40:40",4,0,63,50,0,0,-10,0,"",-1,0]],[[115.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,2611,[[0],[1],[0],[0],["replay"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Replay",""],[""],[2,2,0,0,0],["",""]],[0,"Replay",0,1]],[[524.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3086,[[0],[1],[0],[0],["next"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Next",""],[""],[2,2,0,0,0],["",""]],[0,"Next",0,1]],[[320.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3087,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > Back","Level Menu"],[""],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[320.75,521.8050537109375,0,384,96,0,0,1,0.5,0.5,0,0,[]],70,3088,[[1],[1],[0],[0],[""],["{\"size\": 22, \"left\": 70, \"right\": 18, \"alignY\": 60}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > DownloadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"DownloadReplay",0,1]]],[]],["Pause",4,465987659402152,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-310,678,0,274,31,0,0,1,0,0,0,0,[]],168,3089,[],[],[".ovo",0,1,"file"]],[[320,320,0,425,250,0,0,1,0.5,0.5,0,0,[]],82,3090,[],[[6,1,"",300,1,1,"",300,"overlay",1,"PauseClose",1,1]],[0,"Default",0,1]],[[214,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3091,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"",""],["PauseClose"],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[426,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3092,[[0],[1],[0],[0],["quit"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > GiveUp",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[115.5,202,0,409,118,0,0,1,0,0,0,0,[]],83,3093,[[1],[1],["pause"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Pause",4,0,57,50,0,0,-10,0,"",-1,0]],[[320.5,88,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3094,[[1],[1],[0],[0],["loadreplay"],["{\"size\": 16, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > LoadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"LoadReplay",0,1]],[[320.5,157,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3095,[[1],[0],[0],[0],["toggledebug"],["{\"size\": 15, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Debug > Toggle",""],[""],[2,2,0,0,0],["",""]],[0,"ToggleDebug",0,1]],[[78,448,0,484,134,0,0,1,0,0,0,0,[]],193,3096,[],[],[0,"Default",0,1]]],[]],["Overlay",5,355623847660788,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[432,4,0,203.0009155273438,64,0,0,1,0,0,0,0,[]],107,5488,[],[[1,0,1,0,1]],[2,2,2,2,0,1,0,0,1]],[[432,4,0,203,64,0,0,1,0,0,0,0,[]],84,3101,[[0],[0],[""],["en-us"],[0],[1],[1],["{\"alignY\": 85, \"alignX\": 45, \"size\": 28}"],[0],[1],[0],[0],[0]],[["",""],[1,0,1,0,1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",2,0,100,50,0,0,-10,0,"",-1,0]],[[88,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3102,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Pause",""],[""],[0,0,0,0,1],["",""]],[0,"Pause",0,1]],[[158,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3103,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Replay","1"],[""],[0,0,0,0,1],["",""]],[0,"Reload",0,1]]],[]],["End Game",6,703769209260174,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],85,3104,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[73,194,0,494,72,0,0,1,0,0,0,0,[]],86,3105,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],["{alignY:50}"],[0],[1],[0],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Your final time",2.5,0,50,50,0,0,-10,0,"",-1,0]],[[320,403,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3106,[[0],[1],[0],[0],[""],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Quit",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[73,243,0,494,85,0,0,1,0,0,0,0,[]],87,3108,[[0],[1],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",3,0,50,50,0,0,-10,0,"",-1,0]],[[73,318,0,494,25,0,0,1,0,0,0,0,[]],86,5480,[[1],[1],["tryagainhardmode"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Try again in hard mode!",1,0,50,50,0,0,-2,0,"",-1,0]]],[]],["Banner",7,965929824738346,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-237,-189,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,3109,[],[["overlay"]],[0,"Default",0,1]]],[]],["AdPlaying",8,519837975044530,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,-203.5,0,250,97,0,0,1,0.5,0.5,0,0,[]],125,390,[],[[6,1,"",300,1,1,"",300,"overlay",1,"",1,1],[]],[0,"Default",0,1]],[[209,-275,0,222,139,0,0,1,0,0,0,0,[]],86,391,[[1],[1],["adplaying"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","An ad is playing right now...",1.2,0,50,50,0,0,-2,0,"",-1,0]],[[-154.5756988525391,-294.3137512207031,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,5508,[],[["overlay"]],[0,"Default",0,1]]],[]]],[],[]],["Level 42",4000,6000,true,"Levels",519431428177721,[["Background",0,699466948675174,true,[255,255,255],false,0,0,1,false,false,1,0,0,[],[]],["Layer 0",1,945874169754056,true,[255,255,255],true,1,1,1,false,false,1,0,0,[[[2400,4840,0,58.44655609130859,58.44655609130859,0,0,1,0.5,0.5,0,0,[]],53,9126,[["Procedural"],[""],[0]],[],[1,"Default",0,1]],[[2136,4800,0,288,117,0,0,1,0,0,0,0,[[]]],61,9127,[],[[1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>","1",7,0,60,0,0,0,0,0,"",-1,0]],[[1752,4904,0,32,64,0,0,1,0.5,0.5,0,0,[]],42,9128,[["run"],[0],[1],[1],[0],[0.8],[0.5],[0],[1],[0],[0],[0],["ovo+"],[2],[0],[0],[0],[""],[0],[3],[0],[0],[0],[0],[0],[0],[0]],[[330,1500,1500,650,1500,1000,1,0,0,1],[],[0,0],[0,10000,360,1]],[1,"Default",0,1]],[[920,4992,0,3472,840,0,0,1,0,0,0,0,[]],67,9129,[],[[1]],[0,0]],[[1688.000122070313,3360,0,1640,776,0,1.570796370506287,1,0,0,0,0,[]],67,9131,[],[[1]],[0,0]],[[2144,3704,0,1288,8,0,1.570796370506287,1,0,0,0,0,[]],67,9132,[],[[1]],[0,0]],[[2936,3704,0,1392,1024,0,0,1,0,0,0,0,[]],67,9133,[],[[1]],[0,0]],[[4360,4720,0,280,960,0,1.570796370506287,1,0,0,0,0,[]],67,9134,[],[[1]],[0,0]],[[2944,3712,0,1016,8,0,1.570796370506287,1,0,0,0,0,[]],67,9135,[],[[1]],[0,0]],[[1472,3032,0,2848,680,0,0,1,0,0,0,0,[]],67,9136,[],[[1]],[0,0]],[[2072,4720,0,688,8,0,0,1,0,0,0,0,[]],67,9137,[],[[1]],[0,0]],[[2552,4720,0,272,8,0,1.570796370506287,1,0,0,0,0,[]],67,9138,[],[[1]],[0,0]],[[2336,3976,0,744,8,0,1.570796370506287,1,0,0,0,0,[]],67,9139,[],[[1]],[0,0]],[[2760,3976,0,744,8,0,1.570796370506287,1,0,0,0,0,[]],67,9140,[],[[1]],[0,0]],[[2328,3976,0,424,8,0,0,1,0,0,0,0,[]],67,9141,[],[[1]],[0,0]],[[2544,4512,0,64,64,0,0,1,0.5,0.5,0,0,[]],60,9142,[["level42"]],[[1],[400,-200,800,0,0,0],[0,0,0,1,1]],[0,"Default",0,1]],[[2352,4704,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9143,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2384,4704,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9144,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2416,4704,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9145,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2448,4704,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9146,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2480,4704,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9147,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2512,4704,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9148,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2544,4704,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9149,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2576,4704,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9150,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2608,4704,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9151,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2640,4704,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9152,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2672,4704,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9153,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2704,4704,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9154,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2704,4704,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9155,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2736,4704,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9156,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2548,4000,0,8,280,0,1.570796370506287,1,0.5,0.5,0,0,[[255,255,255,0,0,255,0.01]]],62,9157,[[1],[-1],[0],[0],[0],[0],[0]],[[0]],[1,"Default",0,1]],[[2544,4672,0,8,136,0,-1.570796489715576,1,0.5,0.5,0,0,[[255,255,255,0,0,255,0.01]]],62,9158,[[2],[10],[0],[0],[0],[0],[0]],[[0]],[1,"Default",0,1]],[[2552,4568,0,72,16,0,1.570796370506287,1,0,0,0,0,[]],46,9159,[[0],[0],[""],["en-us"],[0],[0],[1],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","-->",1,0,50,0,0,0,0,0,"",-1,0]],[[2848,4728,0,8,136,0,1.570796370506287,1,0.5,0.5,0,0,[[255,255,255,0,0,255,0.01]]],62,9160,[[10],[-1],[0],[0],[0],[0],[0]],[[0]],[1,"Default",0,1]],[[2540,4864,0,8,64,0,3.141592741012573,1,0.5,0.5,0,0,[[255,255,255,180,128,0,0.01]]],62,9161,[[3],[4],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[2184,4716,0,8,64,0,-1.570796489715576,1,0.5,0.5,0,0,[[255,255,255,180,128,0,0.01]]],62,9162,[[4],[-1],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[2432,4976,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9163,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2464,4976,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9164,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2496,4976,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9165,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2528,4976,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9166,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2304,4976,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9167,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2336,4976,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9168,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2368,4976,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9169,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2400,4976,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9170,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2432,4744,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9171,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2464,4744,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9172,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2496,4744,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9173,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2528,4744,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9174,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2304,4744,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9175,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2336,4744,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9176,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2368,4744,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9177,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2400,4744,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9178,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1704,4744,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9179,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1736,4744,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9180,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1768,4744,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9181,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1688,4720,0,96,9,0,0,1,0,0,0,0,[]],51,9182,[],[[0],[1],[1,100,""]],[0,0]],[[1800,4744,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9130,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1832,4744,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9183,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1864,4744,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9184,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1784,4720,0,96,9,0,0,1,0,0,0,0,[]],51,9185,[],[[0],[1],[1,100,""]],[0,0]],[[1880,4489,0,96,112,0,0,1,0,0,0,0,[]],51,9189,[],[[0],[1],[1,100,""]],[0,0]],[[1992,4744,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9190,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2024,4744,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9191,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2056,4744,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9192,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1736,4564,0,344,64,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,9194,[[-1],[0],[0],[0],[0],[-2],[1]],[[1],[1,1,1,1,"F 8 ; B 8; F 24; B 24; F 280; W 5; B 280",2000,1500,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1832,4660,0,152,64,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,9195,[[-1],[0],[0],[0],[0],[-2],[1]],[[1],[1,1,1,1,"F 280 ; W 1; B 280 ; W 1",2000,1500,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1784,4592,0,96,9,0,0,1,0,0,0,0,[]],51,9196,[],[[0],[1],[1,100,""]],[0,0]],[[1800,4576,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9197,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1832,4576,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9198,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1864,4576,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9199,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1928,4608,0,256,64,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,9200,[[-1],[0],[0],[0],[0],[-2],[1]],[[1],[1,1,1,1,"W 2; F 8 ; B 8; F 24; B 24; F 280 ;W 3; B 280 ",2000,1500,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1880,4720,0,96,272,0,0,1,0,0,0,0,[]],51,9202,[],[[0],[1],[1,100,""]],[0,0]],[[1976,4600,0,96,120,0,0,1,0,0,0,0,[]],51,9203,[],[[0],[1],[1,100,""]],[0,0]],[[1976,4720,0,96,9,0,0,1,0,0,0,0,[]],51,9193,[],[[0],[1],[1,100,""]],[0,0]],[[2016,4728,0,16,64,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,9201,[[-1],[0],[0],[0],[0],[-2],[1]],[[1],[1,1,1,1,"W 3; F 8 ; B 8; F 24; B 24; F 280; W 2; B 280",2000,1500,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1688,4592,0,96,8,0,0,1,0,0,0,0,[]],51,9204,[],[[0],[1],[1,100,""]],[0,0]],[[1704,4416,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9205,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1736,4416,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9206,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1768,4416,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9207,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1688,3697,0,96,704,0,0,1,0,0,0,0,[]],51,9208,[],[[0],[1],[1,100,""]],[0,0]],[[1800,4336,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9186,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1832,4336,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9187,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1864,4336,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9188,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1784,3689,0,360,632,0,0,1,0,0,0,0,[]],51,9209,[],[[0],[1],[1,100,""]],[0,0]],[[1784,4312,0,88,9,0,1.570796370506287,1,0,0,0,0,[]],51,9210,[],[[0],[1],[1,100,""]],[0,0]],[[1688,4392,0,152,9,0,1.570796370506287,1,0,0,0,0,[]],51,9211,[],[[0],[1],[1,100,""]],[0,0]],[[2104,4716,0,8,64,0,-1.570796489715576,1,0.5,0.5,0,0,[[255,255,255,0,0,255,0.01]]],62,9213,[[5],[6],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[2192,4988,0,8,64,0,-1.570796489715576,1,0.5,0.5,0,0,[[255,255,255,0,0,255,0.01]]],62,9214,[[6],[-1],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[1896,4336,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9215,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1928,4336,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9216,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1960,4336,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9217,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1992,4336,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9218,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2024,4336,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9219,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2056,4336,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9220,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2088,4336,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9221,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2120,4336,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9222,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2064,4416,0,8,312,0,0,1,0,0,0,0,[]],51,9212,[],[[0],[1],[1,100,""]],[0,0]],[[1928,4472,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,9223,[[0.3],[0]],[[1]],[0,"Default",0,1]],[[2088,5016,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9224,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2120,5016,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9225,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2072,5032,0,64,248,0,0,1,0,0,0,0,[]],51,9226,[],[[0],[1],[1,100,""]],[0,0]],[[2104,5032,0,16,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],50,9227,[[-1],[0],[0],[0],[0],[1],[1]],[[0],[1,1,1,1,"W 5; F 280",500,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[2280,4704,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,9228,[[0.7],[0]],[[0]],[0,"Default",0,1]],[[2184,4456,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,9229,[[0.7],[0]],[[0]],[0,"Default",0,1]],[[2248,4200,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,9230,[[0.7],[0]],[[0]],[0,"Default",0,1]],[[2184,4032,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,9231,[[0.4],[0]],[[0]],[0,"Default",0,1]],[[2184,4224,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9232,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2184,4192,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9233,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2256,4464,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9234,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2288,4464,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9235,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2248,4040,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9236,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2280,4040,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9237,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2160,3728,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9238,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2192,3728,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9239,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2224,3728,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9240,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2256,3728,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9241,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2288,3728,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9242,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2472,3960,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9243,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2504,3960,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9244,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2536,3960,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9245,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2568,3960,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9246,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2600,3960,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9247,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2536,3784,0,88,88,0,0,1,0.5,0.5,0,0,[]],50,9248,[[-1],[0],[0],[0],[0],[1],[1]],[[0],[1,1,1,0,"R 360",175,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[2536,3784,0,40,40,0,0,1,0.5,0.5,0,0,[]],50,9249,[[1],[1],[10],[0],[0],[2],[1]],[[0],[1,1,1,0,"L 360",175,0,0,360,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[2536,3832,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9250,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2536,3736,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9251,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2584,3784,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9252,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2488,3784,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9253,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2560,3760,0,32,32,0,0.7853981852531433,1,0.5,0.5,0,0,[]],47,9254,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2560,3808,0,32,32,0,2.356194496154785,1,0.5,0.5,0,0,[]],47,9255,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2512,3808,0,32,32,0,-2.356194734573364,1,0.5,0.5,0,0,[]],47,9256,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2512,3760,0,32,32,0,-0.7853984832763672,1,0.5,0.5,0,0,[]],47,9257,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2776,4008,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9258,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2808,4040,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9259,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2920,4008,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9262,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2904,4024,0,32,640,0,0,1,0,0,0,0,[]],67,9260,[],[[1]],[0,0]],[[2760,4024,0,32,640,0,0,1,0,0,0,0,[]],67,9263,[],[[1]],[0,0]],[[2808,4072,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9264,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2808,4104,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9261,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2808,4136,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9265,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2808,4168,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9266,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2808,4200,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9267,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2808,4232,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9268,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2808,4264,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9269,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2808,4296,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9270,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2808,4328,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9271,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2808,4360,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9272,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2808,4392,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9273,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2808,4424,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9274,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2808,4456,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9275,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2808,4488,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9276,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2808,4520,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9277,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2808,4552,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9278,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2808,4584,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9279,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2808,4616,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9280,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2808,4648,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9281,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2888,4040,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9282,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2888,4072,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9283,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2888,4104,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9284,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2888,4136,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9285,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2888,4168,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9286,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2888,4200,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9287,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2888,4232,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9288,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2888,4264,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9289,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2888,4296,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9290,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2888,4328,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9291,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2888,4360,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9292,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2888,4392,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9293,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2888,4424,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9294,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2888,4456,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9295,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2888,4488,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9296,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2888,4520,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9297,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2888,4552,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9298,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2888,4584,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9299,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2888,4616,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9300,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2888,4648,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9301,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2616,4936,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9302,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2648,4936,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9303,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2680,4936,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9304,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3296,4896,0,97,199,0,0,1,0.5257731676101685,0.4974874258041382,0,0,[]],44,9305,[],[[0]],[0,"Default",0,1]],[[2600,4912,0,96,8,0,0,1,0,0,0,0,[]],67,9306,[],[[1]],[0,0]],[[2600,4728,0,96,120,0,0,1,0,0,0,0,[]],67,9307,[],[[1]],[0,0]],[[2371.5,4893,0,96,72,0,0,1,-2.380000114440918,0.6399999856948853,0,0,[]],159,9308,[],[[0]],[0,"Default",0,1]],[[2592,4880,0,8,64,0,0,1,0.5,0.5,0,0,[[255,255,255,0,0,255,0.01]]],62,9309,[[7],[1],[0],[0],[0],[0],[0]],[[0]],[1,"Default",0,1]],[[2992,4976,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9310,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[3120,4944,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9311,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[3024,4968,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9312,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[3056,4960,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9313,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[3088,4952,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9314,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2992,4864,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9315,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[3120,4832,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9316,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[3024,4856,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9317,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[3056,4848,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9318,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[3088,4840,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9319,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[3020,4908,0,160,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,9330,[[-1],[0],[0],[0],[0],[10],[1]],[[0],[1,1,1,0,"F 120 ; W 1 ; B 120; W 1",120,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[3092,4896,0,152,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,9331,[[-1],[0],[0],[0],[0],[10],[1]],[[0],[1,1,1,0,"F 120 ; W 1 ; B 120; W 1",120,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[3008,4984,0,32,168,0,0,1,0,0,0,0,[]],51,9332,[],[[0],[1],[1,100,""]],[0,0]],[[3072,4968,0,32,168,0,0,1,0,0,0,0,[]],51,9321,[],[[0],[1],[1,100,""]],[0,0]],[[3008,4672,0,32,168,0,0,1,0,0,0,0,[]],51,9323,[],[[0],[1],[1,100,""]],[0,0]],[[3072,4656,0,32,168,0,0,1,0,0,0,0,[]],51,9325,[],[[0],[1],[1,100,""]],[0,0]],[[2992,4920,0,160,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],50,9326,[[-1],[0],[0],[0],[0],[10],[1]],[[0],[1,1,1,0,"F 120 ; W 1 ; B 120; W 1",120,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[3056,4904,0,160,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],50,9333,[[-1],[0],[0],[0],[0],[10],[1]],[[0],[1,1,1,0,"F 120 ; W 1 ; B 120; W 1",120,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[3120,4888,0,160,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],50,9334,[[-1],[0],[0],[0],[0],[10],[1]],[[0],[1,1,1,0,"F 120 ; W 1 ; B 120; W 1",120,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[2976,4680,0,32,168,0,0,1,0,0,0,0,[]],51,9320,[],[[0],[1],[1,100,""]],[0,0]],[[3040,4664,0,32,168,0,0,1,0,0,0,0,[]],51,9322,[],[[0],[1],[1,100,""]],[0,0]],[[3104,4648,0,32,168,0,0,1,0,0,0,0,[]],51,9324,[],[[0],[1],[1,100,""]],[0,0]],[[3104,4960,0,32,168,0,0,1,0,0,0,0,[]],51,9327,[],[[0],[1],[1,100,""]],[0,0]],[[3040,4976,0,32,168,0,0,1,0,0,0,0,[]],51,9328,[],[[0],[1],[1,100,""]],[0,0]],[[2976,4992,0,32,168,0,0,1,0,0,0,0,[]],51,9329,[],[[0],[1],[1,100,""]],[0,0]],[[2616,4972,0,32,40,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9335,[[0],[0]],[[0],[1]],[1,"Default",0,1]],[[2648,4976,0,32,32,0,0,1,0.5,0.5,0,0,[]],163,9336,[],[[0]],[0,"Default",0,1]]],[]],["UI",2,929925553792991,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[240,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3097,[["right"]],[[0,1,0,1,1]],[0,"Default",0,1]],[[80,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3098,[["left"]],[[0,1,0,1,1]],[0,"Default",1,1]],[[560,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3099,[["up"]],[[1,1,1,1,1]],[0,"Default",3,1]],[[400,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3100,[["down"]],[[1,1,1,1,1]],[0,"Default",2,1]]],[]],["End Card",3,710558450231036,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],78,2607,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[12.04449462890625,194,0,615.9109497070313,67,0,0,1,0,0,0,0,[]],79,2608,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Timer for this level",2.5,0,0,0,0,0,-10,0,"",-1,0]],[[17.546875,248,0,604.90625,105,0,0,1,0,0,0,0,[]],80,2610,[[0],[0],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","13:40:40",4,0,63,50,0,0,-10,0,"",-1,0]],[[115.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,2611,[[0],[1],[0],[0],["replay"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Replay",""],[""],[2,2,0,0,0],["",""]],[0,"Replay",0,1]],[[524.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3086,[[0],[1],[0],[0],["next"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Next",""],[""],[2,2,0,0,0],["",""]],[0,"Next",0,1]],[[320.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3087,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > Back","Level Menu"],[""],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[320.75,521.8050537109375,0,384,96,0,0,1,0.5,0.5,0,0,[]],70,3088,[[1],[1],[0],[0],[""],["{\"size\": 22, \"left\": 70, \"right\": 18, \"alignY\": 60}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > DownloadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"DownloadReplay",0,1]]],[]],["Pause",4,185760532634187,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-310,678,0,274,31,0,0,1,0,0,0,0,[]],168,3089,[],[],[".ovo",0,1,"file"]],[[320,320,0,425,250,0,0,1,0.5,0.5,0,0,[]],82,3090,[],[[6,1,"",300,1,1,"",300,"overlay",1,"PauseClose",1,1]],[0,"Default",0,1]],[[214,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3091,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"",""],["PauseClose"],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[426,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3092,[[0],[1],[0],[0],["quit"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > GiveUp",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[115.5,202,0,409,118,0,0,1,0,0,0,0,[]],83,3093,[[1],[1],["pause"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Pause",4,0,57,50,0,0,-10,0,"",-1,0]],[[320.5,88,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3094,[[1],[1],[0],[0],["loadreplay"],["{\"size\": 16, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > LoadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"LoadReplay",0,1]],[[320.5,157,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3095,[[1],[0],[0],[0],["toggledebug"],["{\"size\": 15, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Debug > Toggle",""],[""],[2,2,0,0,0],["",""]],[0,"ToggleDebug",0,1]],[[78,448,0,484,134,0,0,1,0,0,0,0,[]],193,3096,[],[],[0,"Default",0,1]]],[]],["Overlay",5,593150508090646,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[432,4,0,203.0009155273438,64,0,0,1,0,0,0,0,[]],107,5488,[],[[1,0,1,0,1]],[2,2,2,2,0,1,0,0,1]],[[432,4,0,203,64,0,0,1,0,0,0,0,[]],84,3101,[[0],[0],[""],["en-us"],[0],[1],[1],["{\"alignY\": 85, \"alignX\": 45, \"size\": 28}"],[0],[1],[0],[0],[0]],[["",""],[1,0,1,0,1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",2,0,100,50,0,0,-10,0,"",-1,0]],[[88,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3102,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Pause",""],[""],[0,0,0,0,1],["",""]],[0,"Pause",0,1]],[[158,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3103,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Replay","1"],[""],[0,0,0,0,1],["",""]],[0,"Reload",0,1]]],[]],["End Game",6,856238588407811,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],85,3104,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[73,194,0,494,72,0,0,1,0,0,0,0,[]],86,3105,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],["{alignY:50}"],[0],[1],[0],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Your final time",2.5,0,50,50,0,0,-10,0,"",-1,0]],[[320,403,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3106,[[0],[1],[0],[0],[""],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Quit",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[73,243,0,494,85,0,0,1,0,0,0,0,[]],87,3108,[[0],[1],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",3,0,50,50,0,0,-10,0,"",-1,0]],[[73,318,0,494,25,0,0,1,0,0,0,0,[]],86,5480,[[1],[1],["tryagainhardmode"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Try again in hard mode!",1,0,50,50,0,0,-2,0,"",-1,0]]],[]],["Banner",7,622522168125926,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-237,-189,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,3109,[],[["overlay"]],[0,"Default",0,1]]],[]],["AdPlaying",8,413146262648545,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,-203.5,0,250,97,0,0,1,0.5,0.5,0,0,[]],125,390,[],[[6,1,"",300,1,1,"",300,"overlay",1,"",1,1],[]],[0,"Default",0,1]],[[209,-275,0,222,139,0,0,1,0,0,0,0,[]],86,391,[[1],[1],["adplaying"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","An ad is playing right now...",1.2,0,50,50,0,0,-2,0,"",-1,0]],[[-154.5756988525391,-294.3137512207031,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,5508,[],[["overlay"]],[0,"Default",0,1]]],[]]],[],[]],["Level 43",4000,6000,true,"Levels",834474653129765,[["Background",0,918627232329025,true,[255,255,255],false,0,0,1,false,false,1,0,0,[],[]],["Layer 0",1,949604115452391,true,[255,255,255],true,1,1,1,false,false,1,0,0,[[[976,2040,0,60.93439102172852,60.93439102172852,0,0,1,0.5,0.5,0,0,[]],53,1023,[["Hysterical Quadrilateral"],[""],[0]],[],[1,"Default",0,1]],[[784,2488,0,472,9,0,0,1,0,0,0,0,[]],51,1030,[],[[0],[1],[1,100,""]],[0,0]],[[944,2432,0,32,64,0,0,1,0.5,0.5,0,0,[]],42,9338,[["run"],[0],[1],[1],[0],[0.8],[0.5],[0],[1],[0],[0],[0],[""],[2],[0],[0],[0],[""],[0],[3],[0],[0],[0],[0],[0],[0],[0]],[[330,1500,1500,650,1500,1000,0,0,0,1],[],[0,0],[0,10000,360,1]],[1,"Default",0,1]],[[1376,2808,0,72,40,0,-1.570796489715576,1,0.5,0.5,0,0,[]],50,9339,[[-1],[0],[1],[0],[0],[1],[0]],[[0],[1,0,1,1,"F 100",75,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1247,2856,0,1096,22,0,0,1,0,0,0,0,[]],51,9340,[],[[0],[1],[1,100,""]],[0,0]],[[1264,1840,0,520,24,0,1.570796370506287,1,0,0,0,0,[]],51,9341,[],[[0],[1],[1,100,""]],[0,0]],[[1247,1840,0,1096,22,0,0,1,0,0,0,0,[]],51,9342,[],[[0],[1],[1,100,""]],[0,0]],[[2344,1840,0,552,24,0,1.570796370506287,1,0,0,0,0,[]],51,9343,[],[[0],[1],[1,100,""]],[0,0]],[[1264,2488,0,389.8591613769531,23.31147575378418,0,1.570796370506287,1,0,0,0,0,[]],51,9344,[],[[0],[1],[1,100,""]],[0,0]],[[1264,2752,0,920,9,0,0,1,0,0,0,0,[]],51,9345,[],[[0],[1],[1,100,""]],[0,0]],[[1312,2808,0,32,32,0,0,1,0.5,0.5,0,0,[]],49,9346,[[2],[1],[0],[-1],[-1],[999],[0]],[[1],[]],[0,"Default",0,1]],[[1384,2776,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9347,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1384,2808,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9348,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1384,2840,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9349,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1368,2760,0,96,9,0,1.570796370506287,1,0,0,0,0,[]],51,9350,[],[[0],[1],[1,100,""]],[0,0]],[[2272,2336,0,32,32,0,0,1,0.5,0.5,0,0,[]],49,9351,[[1],[1],[0],[-1],[-1],[999],[0]],[[1],[]],[0,"Default",0,1]],[[2176,2376,0,160,9,0,0,1,0,0,0,0,[]],51,9352,[],[[0],[1],[1,100,""]],[0,0]],[[2176,2280,0,160,9,0,0,1,0,0,0,0,[]],51,9353,[],[[0],[1],[1,100,""]],[0,0]],[[1752,2400,0,96,8,0,0,1,0,0,0,0,[]],45,9358,[],[[1],[1]],[0,0]],[[1264,2488,0,160,9,0,0,1,0,0,0,0,[]],51,9359,[],[[0],[1],[1,100,""]],[0,0]],[[1264,2352,0,176,8,0,0,1,0,0,0,0,[]],51,9360,[],[[0],[1],[1,100,""]],[0,0]],[[1272,2472,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9361,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1424,2376,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9362,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1392,2376,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9363,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1672,1056,0,680,9,0,1.570796370506287,1,0,0,0,0,[]],51,9364,[],[[0],[1],[1,100,""]],[0,0]],[[1824,1312,0,424,9,0,1.570796370506287,1,0,0,0,0,[]],51,9365,[],[[0],[1],[1,100,""]],[0,0]],[[1672,1728,0,40,8,0,0,1,0,0,0,0,[]],51,9366,[],[[0],[1],[1,100,""]],[0,0]],[[1968,2088,0,624,9,0,1.570796370506287,1,0,0,0,0,[]],51,9368,[],[[0],[1],[1,100,""]],[0,0]],[[1968,2712,0,40,8,0,1.570796370506287,1,0,0,0,0,[]],45,9369,[],[[1],[1]],[0,0]],[[1968,2640,0,354,9,0,0,1,0,0,0,0,[]],51,9370,[],[[0],[1],[1,100,""]],[0,0]],[[1984,2664,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9371,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2016,2664,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9372,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2048,2664,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9373,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2080,2664,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9374,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2112,2664,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9375,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2144,2664,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9376,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2176,2664,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9377,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2208,2664,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9378,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2240,2664,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9379,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2272,2664,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9380,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2304,2664,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9381,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2304,2408,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9383,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2304,2440,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9384,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2304,2472,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9385,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2304,2504,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9386,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2304,2536,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9387,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2304,2568,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9388,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2304,2600,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9389,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2304,1880,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9390,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2304,1912,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9391,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2304,1944,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9392,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2304,1976,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9393,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2304,2008,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9394,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2304,2040,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9395,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2304,2072,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9396,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2304,2104,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9397,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2304,2136,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9398,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2304,2168,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9399,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2304,2200,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9400,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2304,2232,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9401,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2304,2264,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9402,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2168,1856,0,320,8,0,1.570796370506287,1,0,0,0,0,[]],51,9403,[],[[0],[1],[1,100,""]],[0,0]],[[1968,1856,0,128,9,0,1.570796370506287,1,0,0,0,0,[]],51,9405,[],[[0],[1],[1,100,""]],[0,0]],[[1959,1984,0,9,104,0,0,1,0,0,0,0,[]],48,9406,[],[[1],[1]],[0,0]],[[1800,2504,0,32,32,0,0,1,0.5,0.5,0,0,[]],49,9407,[[3],[1],[0],[-1],[-1],[999],[0]],[[1],[]],[0,"Default",0,1]],[[1960,2040,0,32,72,0,-1.570796489715576,1,0.5,0.5,0,0,[]],50,9408,[[-1],[0],[1],[0],[0],[3],[0]],[[0],[1,0,1,1,"B 140",75,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1344,1944,0,312,9,0,1.570796370506287,1,0,0,0,0,[]],51,9410,[],[[0],[1],[1,100,""]],[0,0]],[[1472,1936,0,320,9,0,1.570796370506287,1,0,0,0,0,[]],51,9411,[],[[0],[1],[1,100,""]],[0,0]],[[1712,1872,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9412,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1680,1872,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9413,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1648,1872,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9414,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1616,1872,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9415,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1584,1872,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9416,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1552,1872,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9417,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1448,2240,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9418,[[0],[1]],[[1],[1]],[0,"Default",0,1]],[[1360,2000,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9419,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1488,2016,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9420,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1488,2048,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9421,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1488,2080,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9422,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1488,2112,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9423,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1488,2144,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9424,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1488,2176,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9425,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1488,2208,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9426,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1488,2240,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9427,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1280,2016,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9428,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1280,2048,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9429,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1280,2080,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9430,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1280,2112,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9431,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1280,2144,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9432,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1280,2176,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9433,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1280,2208,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9434,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1280,2240,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9435,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1920,1216,0,97,199,0,0,1,0.5257731676101685,0.4974874258041382,0,0,[]],44,9436,[],[[0]],[0,"Default",0,1]],[[1816,1312,0,168,9,0,0,1,0,0,0,0,[]],51,9437,[],[[0],[1],[1,100,""]],[0,0]],[[1816,1728,0,9,144,0,1.570796370506287,1,0,0,0,0,[]],48,9438,[],[[1],[1]],[0,0]],[[1768,1728,0,16,16,0,0,1,0.5,0.5,0,0,[]],50,9439,[[-1],[0],[0],[0],[0],[2],[0]],[[0],[1,0,1,1,"F 260",75,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1248,1936,0,96,9,0,0,1,0,0,0,0,[]],51,9442,[],[[0],[1],[1,100,""]],[0,0]],[[2184,2288,0,88,8,0,1.570796370506287,1,0,0,0,0,[]],45,9444,[],[[1],[1]],[0,0]],[[2240,2504,0,64,64,0,0,1,0.5,0.5,0,0,[]],60,9446,[["level43"]],[[1],[400,-200,800,0,0,0],[0,0,0,1,1]],[0,"Default",0,1]],[[904,2328,0,288,117,0,0,1,0,0,0,0,[[]]],61,9447,[],[[1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>","1",7,0,80,0,0,0,0,0,"",-1,0]],[[1800,2536,0,8,64,0,-1.570796489715576,1,0.5,0.5,0,0,[[255,255,255,0,0,255,0.01]]],62,9337,[[1],[2],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[1268,2312,0,8,64,0,0,1,0.5,0.5,0,0,[[255,255,255,0,0,255,0.01]]],62,9357,[[2],[-1],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[1467,1898,0,8,72,0,3.141592741012573,1,0.5,0.5,0,0,[[255,255,255,0,64,128,0.64]]],62,9367,[[3],[4],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[1824,2080,0,8,64,0,-0.8113609552383423,1,0.5,0.5,0,0,[[255,255,255,0,64,128,0.64]]],62,9404,[[4],[-1],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[2316,2336,0,8,64,0,3.141592741012573,1,0.5,0.5,0,0,[[255,255,255,0,64,128,0.64]]],62,9382,[[5],[6],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[1268,2568,0,8,64,0,0,1,0.5,0.5,0,0,[[255,255,255,0,64,128,0.64]]],62,9409,[[6],[-1],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[1272,2816,0,8,64,0,0,1,0.5,0.5,0,0,[[255,255,255,0,64,128,0.64]]],62,9440,[[7],[8],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[1744,1832,0,8,64,0,-1.570796489715576,1,0.5,0.5,0,0,[[255,255,255,0,64,128,0.64]]],62,9441,[[8],[-1],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[1776,1552,0,40,9,0,0,1,0,0,0,0,[]],51,9443,[],[[0],[1],[1,100,""]],[0,0]],[[1672,1376,0,40,9,0,0,1,0,0,0,0,[]],51,9445,[],[[0],[1],[1,100,""]],[0,0]],[[1736,2384,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1648,[[0],[1]],[[1],[1]],[0,"Default",0,1]],[[1864,2384,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,27,[[0],[1]],[[1],[1]],[0,"Default",0,1]],[[1704,2416,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9448,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1704,2448,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9449,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1704,2480,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9450,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1704,2512,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9451,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1704,2544,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9452,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1896,2416,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9458,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1896,2448,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9459,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1896,2480,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9460,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1896,2512,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9461,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1896,2544,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9462,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1728,2400,0,160,9,0,1.570796370506287,1,0,0,0,0,[]],51,9463,[],[[0],[1],[1,100,""]],[0,0]],[[1880,2400,0,160,9,0,1.570796370506287,1,0,0,0,0,[]],51,9464,[],[[0],[1],[1,100,""]],[0,0]],[[1720,2552,0,160,9,0,0,1,0,0,0,0,[]],51,9465,[],[[0],[1],[1,100,""]],[0,0]],[[1720,2400,0,32,9,0,0,1,0,0,0,0,[]],51,9466,[],[[0],[1],[1,100,""]],[0,0]],[[1848,2400,0,32,9,0,0,1,0,0,0,0,[]],51,9467,[],[[0],[1],[1,100,""]],[0,0]],[[1800,2480,0,176,184,0,-1.570796489715576,1,0.5,0.5,0,0,[]],50,9354,[[-1],[0],[1],[0],[0],[-2],[0]],[[0],[1,1,1,0,"R 90 ; W 1",90,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[2344,2616,0,256,24,0,1.570796370506287,1,0,0,0,0,[]],51,9355,[],[[0],[1],[1,100,""]],[0,0]],[[2344,2424,0,32,24,0,1.570796370506287,1,0,0,0,0,[]],51,9453,[],[[0],[1],[1,100,""]],[0,0]],[[2344,2456,0,32,24,0,1.570796370506287,1,0,0,0,0,[]],51,9454,[],[[0],[1],[1,100,""]],[0,0]],[[2344,2488,0,32,24,0,1.570796370506287,1,0,0,0,0,[]],51,9455,[],[[0],[1],[1,100,""]],[0,0]],[[2344,2520,0,32,24,0,1.570796370506287,1,0,0,0,0,[]],51,9456,[],[[0],[1],[1,100,""]],[0,0]],[[2344,2552,0,32,24,0,1.570796370506287,1,0,0,0,0,[]],51,9457,[],[[0],[1],[1,100,""]],[0,0]],[[2312,2408,0,48,16,0,3.141592741012573,1,0.5,0.5,0,0,[]],50,9469,[[-1],[0],[1],[0],[0],[4],[0]],[[0],[1,0,1,1,"W 1.8 ; F 354",350,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[2312,2440,0,48,16,0,3.141592741012573,1,0.5,0.5,0,0,[]],50,9470,[[-1],[0],[1],[0],[0],[4],[0]],[[0],[1,0,1,1,"W 1.5 ; F 354",350,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[2312,2472,0,48,16,0,3.141592741012573,1,0.5,0.5,0,0,[]],50,9471,[[-1],[0],[1],[0],[0],[4],[0]],[[0],[1,0,1,1,"W 1.2 ; F 354",350,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[2312,2504,0,48,16,0,3.141592741012573,1,0.5,0.5,0,0,[]],50,9472,[[-1],[0],[1],[0],[0],[4],[0]],[[0],[1,0,1,1,"W 0.9 ; F 354",350,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[2312,2536,0,48,16,0,3.141592741012573,1,0.5,0.5,0,0,[]],50,9473,[[-1],[0],[1],[0],[0],[4],[0]],[[0],[1,0,1,1,"W 0.6 ; F 354",350,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[2312,2568,0,48,16,0,3.141592741012573,1,0.5,0.5,0,0,[]],50,9474,[[-1],[0],[1],[0],[0],[4],[0]],[[0],[1,0,1,1,"W 0.3 ; F 354",350,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[2312,2600,0,48,16,0,3.141592741012573,1,0.5,0.5,0,0,[]],50,9475,[[-1],[0],[1],[0],[0],[4],[0]],[[0],[1,0,1,1,"F 354",350,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[2076,2400,0,216,32,0,0,1,0.5,0.5,0,0,[]],49,9476,[[4],[1],[0],[-1],[-1],[999],[0]],[[1],[]],[1,"Default",0,1]],[[1968,1860,0,192,9,0,0,1,0,0,0,0,[]],51,9477,[],[[0],[1],[1,100,""]],[0,0]],[[1984,1884,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9483,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2016,1884,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9484,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2048,1884,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9485,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2080,1884,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9486,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2112,1884,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9487,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2144,1884,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9488,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2060,1872,0,16,168,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,9478,[[-1],[0],[1],[0],[0],[4],[0]],[[0],[1,0,1,1,"W 1.8 ; F 2000",700,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[2696,2392,0,32,376,0,1.570796370506287,1,0,0,0,0,[]],51,9356,[],[[0],[1],[1,100,""]],[0,0]],[[2696,2584,0,32,376,0,1.570796370506287,1,0,0,0,0,[]],51,9468,[],[[0],[1],[1,100,""]],[0,0]],[[2016,2624,0,32,32,0,0,1,0.5,0.5,0,0,[]],163,9479,[],[[0]],[0,"Default",0,1]],[[2240,2504,0,48,48,0,3.141592741012573,1,0.5,0.5,0,0,[[255,255,255,0,64,128,0.64]]],62,9480,[[9],[10],[0],[0],[0],[0],[0]],[[0]],[1,"Default",0,1]],[[2200,2328,0,8,64,0,0,1,0.5,0.5,0,0,[[255,255,255,0,64,128,0.64]]],62,9481,[[10],[-1],[0],[0],[0],[0],[0]],[[0]],[1,"Default",0,1]]],[]],["UI",2,363436960043808,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[240,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3097,[["right"]],[[0,1,0,1,1]],[0,"Default",0,1]],[[80,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3098,[["left"]],[[0,1,0,1,1]],[0,"Default",1,1]],[[560,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3099,[["up"]],[[1,1,1,1,1]],[0,"Default",3,1]],[[400,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3100,[["down"]],[[1,1,1,1,1]],[0,"Default",2,1]]],[]],["End Card",3,117742741223979,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],78,2607,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[12.04449462890625,194,0,615.9109497070313,67,0,0,1,0,0,0,0,[]],79,2608,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Timer for this level",2.5,0,0,0,0,0,-10,0,"",-1,0]],[[17.546875,248,0,604.90625,105,0,0,1,0,0,0,0,[]],80,2610,[[0],[0],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","13:40:40",4,0,63,50,0,0,-10,0,"",-1,0]],[[115.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,2611,[[0],[1],[0],[0],["replay"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Replay",""],[""],[2,2,0,0,0],["",""]],[0,"Replay",0,1]],[[524.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3086,[[0],[1],[0],[0],["next"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Next",""],[""],[2,2,0,0,0],["",""]],[0,"Next",0,1]],[[320.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3087,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > Back","Level Menu"],[""],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[320.75,521.8050537109375,0,384,96,0,0,1,0.5,0.5,0,0,[]],70,3088,[[1],[1],[0],[0],[""],["{\"size\": 22, \"left\": 70, \"right\": 18, \"alignY\": 60}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > DownloadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"DownloadReplay",0,1]]],[]],["Pause",4,709758232316470,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-310,678,0,274,31,0,0,1,0,0,0,0,[]],168,3089,[],[],[".ovo",0,1,"file"]],[[320,320,0,425,250,0,0,1,0.5,0.5,0,0,[]],82,3090,[],[[6,1,"",300,1,1,"",300,"overlay",1,"PauseClose",1,1]],[0,"Default",0,1]],[[214,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3091,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"",""],["PauseClose"],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[426,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3092,[[0],[1],[0],[0],["quit"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > GiveUp",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[115.5,202,0,409,118,0,0,1,0,0,0,0,[]],83,3093,[[1],[1],["pause"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Pause",4,0,57,50,0,0,-10,0,"",-1,0]],[[320.5,88,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3094,[[1],[1],[0],[0],["loadreplay"],["{\"size\": 16, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > LoadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"LoadReplay",0,1]],[[320.5,157,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3095,[[1],[0],[0],[0],["toggledebug"],["{\"size\": 15, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Debug > Toggle",""],[""],[2,2,0,0,0],["",""]],[0,"ToggleDebug",0,1]],[[78,448,0,484,134,0,0,1,0,0,0,0,[]],193,3096,[],[],[0,"Default",0,1]]],[]],["Overlay",5,939930140398242,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[432,4,0,203.0009155273438,64,0,0,1,0,0,0,0,[]],107,5488,[],[[1,0,1,0,1]],[2,2,2,2,0,1,0,0,1]],[[432,4,0,203,64,0,0,1,0,0,0,0,[]],84,3101,[[0],[0],[""],["en-us"],[0],[1],[1],["{\"alignY\": 85, \"alignX\": 45, \"size\": 28}"],[0],[1],[0],[0],[0]],[["",""],[1,0,1,0,1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",2,0,100,50,0,0,-10,0,"",-1,0]],[[88,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3102,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Pause",""],[""],[0,0,0,0,1],["",""]],[0,"Pause",0,1]],[[158,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3103,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Replay","1"],[""],[0,0,0,0,1],["",""]],[0,"Reload",0,1]]],[]],["End Game",6,106406460333200,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],85,3104,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[73,194,0,494,72,0,0,1,0,0,0,0,[]],86,3105,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],["{alignY:50}"],[0],[1],[0],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Your final time",2.5,0,50,50,0,0,-10,0,"",-1,0]],[[320,403,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3106,[[0],[1],[0],[0],[""],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Quit",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[73,243,0,494,85,0,0,1,0,0,0,0,[]],87,3108,[[0],[1],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",3,0,50,50,0,0,-10,0,"",-1,0]],[[73,318,0,494,25,0,0,1,0,0,0,0,[]],86,5480,[[1],[1],["tryagainhardmode"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Try again in hard mode!",1,0,50,50,0,0,-2,0,"",-1,0]]],[]],["Banner",7,202746275491178,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-237,-189,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,3109,[],[["overlay"]],[0,"Default",0,1]]],[]],["AdPlaying",8,979487060744780,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,-203.5,0,250,97,0,0,1,0.5,0.5,0,0,[]],125,390,[],[[6,1,"",300,1,1,"",300,"overlay",1,"",1,1],[]],[0,"Default",0,1]],[[209,-275,0,222,139,0,0,1,0,0,0,0,[]],86,391,[[1],[1],["adplaying"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","An ad is playing right now...",1.2,0,50,50,0,0,-2,0,"",-1,0]],[[-154.5756988525391,-294.3137512207031,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,5508,[],[["overlay"]],[0,"Default",0,1]]],[]]],[],[]],["Level 44",3000,4000,true,"Levels",940128557945896,[["Background",0,875059040031753,true,[255,255,255],false,0,0,1,false,false,1,0,0,[],[]],["Layer 0",1,644614945756492,true,[255,255,255],true,1,1,1,false,false,1,0,0,[[[200,1808,0,2536,624,0,0,1,0,0,0,0,[]],51,5762,[],[[0],[1],[1,100,""]],[0,0]],[[1784,-456,0,888,1960,0,0,1,0,0,0,0,[]],51,5763,[],[[0],[1],[1,100,""]],[0,0]],[[1032,1496,0,192,9,0,0,1,0,0,0,0,[]],51,5764,[],[[0],[1],[1,100,""]],[0,0]],[[1040,1496,0,320,848,0,1.570796370506287,1,0,0,0,0,[]],51,5765,[],[[0],[1],[1,100,""]],[0,0]],[[2695,1496,0,320,720,0,1.570796370506287,1,0,0,0,0,[]],51,5766,[],[[0],[1],[1,100,""]],[0,0]],[[1780,496,0,8,64,0,3.141592741012573,1,0.5,0.5,0,0,[[255,255,255,255,0,0,0.01]]],62,1183,[[1],[2],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[1224,840,0,560,9,0,0,1,0,0,0,0,[]],51,5739,[],[[0],[1],[1,100,""]],[0,0]],[[1224,1328,0,560,9,0,0,1,0,0,0,0,[]],51,5767,[],[[0],[1],[1,100,""]],[0,0]],[[1224,1496,0,560,9,0,0,1,0,0,0,0,[]],51,5768,[],[[0],[1],[1,100,""]],[0,0]],[[1504,-28,0,56,344,0,1.570796370506287,1,0.5,0.5,0,0,[[255,255,255,69,169,148,0.01]]],62,5558,[[100],[13],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[1224,1064,0,432,1032,0,1.570796370506287,1,0,0,0,0,[]],51,5738,[],[[0],[1],[1,100,""]],[0,0]],[[1224,528,0,560,9,0,0,1,0,0,0,0,[]],51,5740,[],[[0],[1],[1,100,""]],[0,0]],[[1504,96,0,32,64,0,0,1,0.5,0.5,0,0,[]],42,5744,[["run"],[0],[1],[1],[0],[0.8],[0.5],[0],[1],[0],[0],[0],[""],[2],[0],[0],[0],[""],[0],[3],[0],[0],[0],[0],[0],[0],[0]],[[330,1500,1500,650,1500,1000,1,0,0,1],[],[0,0],[0,10000,360,1]],[1,"Default",0,1]],[[1520,704,0,1104,9,0,1.570796370506287,1,0,0,0,0,[]],51,5745,[],[[0],[1],[1,100,""]],[0,0]],[[1216,528,0,48,8,0,0,1,0,0,0,0,[]],45,5746,[],[[0],[1]],[0,0]],[[1160,-112,0,60.93439102172852,60.93439102172852,0,0,1,0.5,0.5,0,0,[]],53,1087,[["Back-propagation"],[""],[0]],[],[1,"Default",0,1]],[[1524,569,0,8,64,0,0,1,0.5,0.5,0,0,[[255,255,255,255,0,0,0.01]]],62,5769,[[2],[0],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[1536,824,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,5770,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1568,824,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,5771,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1600,824,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,5772,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1632,824,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,5773,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1664,824,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,5774,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1696,824,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,5775,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1728,824,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,5776,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1760,824,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,5777,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1520,800,0,48,8,0,0,1,0,0,0,0,[]],45,5778,[],[[0],[1]],[0,0]],[[1536,616,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,5779,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1524,736,0,8,64,0,0,1,0.5,0.5,0,0,[[255,255,255,255,0,0,0.01]]],62,5781,[[3],[4],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[1784,880,0,8,64,0,3.141592741012573,1,0.5,0.5,0,0,[[255,255,255,255,0,0,0.01]]],62,5782,[[4],[0],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[1640,968,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,5783,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1672,968,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,5784,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1704,968,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,5785,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1736,968,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,5786,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1768,968,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,5787,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1624,984,0,160,9,0,0,1,0,0,0,0,[]],51,5788,[],[[0],[1],[1,100,""]],[0,0]],[[1520,1080,0,160,9,0,0,1,0,0,0,0,[]],51,5789,[],[[0],[1],[1,100,""]],[0,0]],[[1616,1176,0,168,9,0,0,1,0,0,0,0,[]],51,5790,[],[[0],[1],[1,100,""]],[0,0]],[[1520,1176,0,64,9,0,0,1,0,0,0,0,[]],51,5791,[],[[0],[1],[1,100,""]],[0,0]],[[1520,1272,0,192,8,0,0,1,0,0,0,0,[]],51,5792,[],[[0],[1],[1,100,""]],[0,0]],[[1640,1008,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,5793,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1672,1008,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,5794,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1768,1008,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,5795,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1768,1040,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,5796,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1768,1072,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,5797,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1780,1144,0,8,64,0,3.141592741012573,1,0.5,0.5,0,0,[[255,255,255,255,0,0,0.01]]],62,5800,[[5],[6],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[1523,1144,0,8,64,0,0,1,0.5,0.5,0,0,[[255,255,255,255,0,0,0.01]]],62,5801,[[6],[0],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[1520,1192,0,32,16,0,0,1,0.125,0.5,0,0,[]],55,5802,[[1],[100]],[[1],[300,1,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[1552,1324,0,8,64,0,-1.570796489715576,1,0.5,0.5,0,0,[[255,255,255,0,255,0,0.01]]],62,5803,[[7],[8],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[1552,1341,0,8,64,0,1.570796370506287,1,0.5,0.5,0,0,[[255,255,255,0,255,0,0.01]]],62,5804,[[8],[0],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[1752,1341,0,8,64,0,1.570796370506287,1,0.5,0.5,0,0,[[255,255,255,0,255,0,0.01]]],62,5780,[[9],[10],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[1536,1480,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,5805,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1568,1480,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,5806,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1600,1480,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,5807,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1632,1480,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,5808,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1664,1480,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,5809,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1256,1492,0,8,64,0,-1.570796489715576,1,0.5,0.5,0,0,[[255,255,255,0,255,0,0.01]]],62,5810,[[10],[0],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[1507,1400,0,8,64,0,3.141592741012573,1,0.5,0.5,0,0,[[255,255,255,255,0,0,0.01]]],62,5811,[[11],[12],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[1432,1480,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,5812,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1464,1480,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,5813,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1496,1480,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,5814,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1336,1480,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,5815,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1368,1480,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,5816,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1400,1480,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,5817,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1044,1576,0,-8,64,0,3.141592741012573,1,0.5,0.5,0,0,[[255,255,255,255,0,0,0.01]]],62,5818,[[12],[0],[0],[-15],[0],[660],[1]],[[0]],[0,"Default",0,1]],[[320,1664,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,5819,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1056,1672,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,5820,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1088,1672,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,5821,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1120,1672,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,5822,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1152,1672,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,5823,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1184,1688,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,5824,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1216,1704,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,5825,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1248,1736,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,5826,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1040,1688,0,128,9,0,0,1,0,0,0,0,[]],51,5827,[],[[0],[1],[1,100,""]],[0,0]],[[1160,1704,0,40,9,0,0,1,0,0,0,0,[]],51,5828,[],[[0],[1],[1,100,""]],[0,0]],[[1192,1720,0,40,9,0,0,1,0,0,0,0,[]],51,5829,[],[[0],[1],[1,100,""]],[0,0]],[[1168,1696,0,16,9,0,1.570796370506287,1,0,0,0,0,[]],51,5830,[],[[0],[1],[1,100,""]],[0,0]],[[1200,1712,0,16,9,0,1.570796370506287,1,0,0,0,0,[]],51,5831,[],[[0],[1],[1,100,""]],[0,0]],[[1232,1728,0,24,9,0,1.570796370506287,1,0,0,0,0,[]],51,5832,[],[[0],[1],[1,100,""]],[0,0]],[[1496,1640,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,5833,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1464,1640,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,5834,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1432,1640,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,5835,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1400,1640,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,5836,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1368,1616,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,5837,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1336,1600,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,5838,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1304,1568,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,5839,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1512,1624,0,128,9,0,3.141592741012573,1,0,0,0,0,[]],51,5840,[],[[0],[1],[1,100,""]],[0,0]],[[1392,1600,0,40,9,0,3.141592741012573,1,0,0,0,0,[]],51,5841,[],[[0],[1],[1,100,""]],[0,0]],[[1360,1584,0,40,9,0,3.141592741012573,1,0,0,0,0,[]],51,5842,[],[[0],[1],[1,100,""]],[0,0]],[[1384,1616,0,24,9,0,-1.570796489715576,1,0,0,0,0,[]],51,5843,[],[[0],[1],[1,100,""]],[0,0]],[[1352,1592,0,16,9,0,-1.570796489715576,1,0,0,0,0,[]],51,5844,[],[[0],[1],[1,100,""]],[0,0]],[[1320,1576,0,24,9,0,-1.570796489715576,1,0,0,0,0,[]],51,5845,[],[[0],[1],[1,100,""]],[0,0]],[[1043,1763,0,8,64,0,0,1,0.5,0.5,0,0,[[255,255,255,255,0,0,0.01]]],62,5846,[[13],[14],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[1507,1564,0,8,64,0,3.141592741012573,1,0.5,0.5,0,0,[[255,255,255,255,0,0,0.01]]],62,5847,[[14],[19],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[1424,1509,0,8,64,0,1.570796370506287,1,0.5,0.5,0,0,[[255,255,255,0,255,0,0.01]]],62,5848,[[15],[16],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[1560,1509,0,8,64,0,1.570796370506287,1,0.5,0.5,0,0,[[255,255,255,0,255,0,0.01]]],62,5849,[[16],[0],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[1608,1808,0,232,9,0,-1.570796489715576,1,0,0,0,0,[]],51,5850,[],[[0],[1],[1,100,""]],[0,0]],[[1560,1805,0,8,64,0,-1.570796489715576,1,0.5,0.5,0,0,[[255,255,255,0,255,0,0.01]]],62,5851,[[17],[18],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[1661,1805,0,8,64,0,-1.570796489715576,1,0.5,0.5,0,0,[[255,255,255,0,255,0,0.01]]],62,5852,[[18],[0],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[1520,1688,0,88,8,0,0,1,0,0,0,0,[]],45,5853,[],[[0],[1]],[0,0]],[[1192,1000,0,8,64,0,0,1,0.5,0.5,0,0,[[255,255,255,255,0,0,0.01]]],62,6654,[[19],[14],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[1224,56,0,880,1040,0,1.570796370506287,1,0,0,0,0,[]],51,6655,[],[[0],[1],[1,100,""]],[0,0]],[[1368,1312,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,6659,[[0.7],[0]],[[0]],[0,"Default",0,1]],[[1520,631,0,72,8,0,1.570796370506287,1,0,0,0,0,[]],45,6660,[],[[0],[1]],[0,0]],[[1520,536,0,96,9,0,1.570796370506287,1,0,0,0,0,[]],51,6661,[],[[0],[1],[1,100,""]],[0,0]],[[1508.06396484375,808,0,8,64,0,3.141592741012573,1,0.5,0.5,0,0,[[255,255,255,255,0,0,0.01]]],62,6662,[[20],[6],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[1904,1712,0,97,199,0,0,1,0.5257731676101685,0.4974874258041382,0,0,[]],44,5741,[],[[0]],[0,"Default",0,1]],[[1152,856,0,320,848,0,1.570796370506287,1,0,0,0,0,[]],51,5742,[],[[0],[1],[1,100,""]],[0,0]],[[1624,1089,0,96,9,0,1.570796370506287,1,0,0,0,0,[]],51,2793,[],[[0],[1],[1,100,""]],[0,0]],[[1368,1048,0,64,64,0,0,1,0.5,0.5,0,0,[]],60,1781,[["level44"]],[[1],[400,-200,800,0,0,0],[0,0,0,1,1]],[0,"Default",0,1]],[[1376,288,0,288,117,0,0,1,0,0,0,0,[[]]],61,923,[],[[1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>","1",7,0,60,0,0,0,0,0,"",-1,0]]],[]],["UI",2,485849265835669,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[240,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3097,[["right"]],[[0,1,0,1,1]],[0,"Default",0,1]],[[80,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3098,[["left"]],[[0,1,0,1,1]],[0,"Default",1,1]],[[560,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3099,[["up"]],[[1,1,1,1,1]],[0,"Default",3,1]],[[400,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3100,[["down"]],[[1,1,1,1,1]],[0,"Default",2,1]]],[]],["End Card",3,204491401402189,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],78,2607,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[12.04449462890625,194,0,615.9109497070313,67,0,0,1,0,0,0,0,[]],79,2608,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Timer for this level",2.5,0,0,0,0,0,-10,0,"",-1,0]],[[17.546875,248,0,604.90625,105,0,0,1,0,0,0,0,[]],80,2610,[[0],[0],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","13:40:40",4,0,63,50,0,0,-10,0,"",-1,0]],[[115.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,2611,[[0],[1],[0],[0],["replay"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Replay",""],[""],[2,2,0,0,0],["",""]],[0,"Replay",0,1]],[[524.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3086,[[0],[1],[0],[0],["next"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Next",""],[""],[2,2,0,0,0],["",""]],[0,"Next",0,1]],[[320.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3087,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > Back","Level Menu"],[""],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[320.75,521.8050537109375,0,384,96,0,0,1,0.5,0.5,0,0,[]],70,3088,[[1],[1],[0],[0],[""],["{\"size\": 22, \"left\": 70, \"right\": 18, \"alignY\": 60}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > DownloadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"DownloadReplay",0,1]]],[]],["Pause",4,217650984308533,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-310,678,0,274,31,0,0,1,0,0,0,0,[]],168,3089,[],[],[".ovo",0,1,"file"]],[[320,320,0,425,250,0,0,1,0.5,0.5,0,0,[]],82,3090,[],[[6,1,"",300,1,1,"",300,"overlay",1,"PauseClose",1,1]],[0,"Default",0,1]],[[214,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3091,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"",""],["PauseClose"],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[426,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3092,[[0],[1],[0],[0],["quit"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > GiveUp",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[115.5,202,0,409,118,0,0,1,0,0,0,0,[]],83,3093,[[1],[1],["pause"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Pause",4,0,57,50,0,0,-10,0,"",-1,0]],[[320.5,88,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3094,[[1],[1],[0],[0],["loadreplay"],["{\"size\": 16, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > LoadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"LoadReplay",0,1]],[[320.5,157,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3095,[[1],[0],[0],[0],["toggledebug"],["{\"size\": 15, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Debug > Toggle",""],[""],[2,2,0,0,0],["",""]],[0,"ToggleDebug",0,1]],[[78,448,0,484,134,0,0,1,0,0,0,0,[]],193,3096,[],[],[0,"Default",0,1]]],[]],["Overlay",5,172138655242600,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[432,4,0,203.0009155273438,64,0,0,1,0,0,0,0,[]],107,5488,[],[[1,0,1,0,1]],[2,2,2,2,0,1,0,0,1]],[[432,4,0,203,64,0,0,1,0,0,0,0,[]],84,3101,[[0],[0],[""],["en-us"],[0],[1],[1],["{\"alignY\": 85, \"alignX\": 45, \"size\": 28}"],[0],[1],[0],[0],[0]],[["",""],[1,0,1,0,1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",2,0,100,50,0,0,-10,0,"",-1,0]],[[88,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3102,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Pause",""],[""],[0,0,0,0,1],["",""]],[0,"Pause",0,1]],[[158,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3103,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Replay","1"],[""],[0,0,0,0,1],["",""]],[0,"Reload",0,1]]],[]],["End Game",6,347587970123259,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],85,3104,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[73,194,0,494,72,0,0,1,0,0,0,0,[]],86,3105,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],["{alignY:50}"],[0],[1],[0],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Your final time",2.5,0,50,50,0,0,-10,0,"",-1,0]],[[320,403,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3106,[[0],[1],[0],[0],[""],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Quit",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[73,243,0,494,85,0,0,1,0,0,0,0,[]],87,3108,[[0],[1],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",3,0,50,50,0,0,-10,0,"",-1,0]],[[73,318,0,494,25,0,0,1,0,0,0,0,[]],86,5480,[[1],[1],["tryagainhardmode"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Try again in hard mode!",1,0,50,50,0,0,-2,0,"",-1,0]]],[]],["Banner",7,957303031285180,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-237,-189,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,3109,[],[["overlay"]],[0,"Default",0,1]]],[]],["AdPlaying",8,484129200767025,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,-203.5,0,250,97,0,0,1,0.5,0.5,0,0,[]],125,390,[],[[6,1,"",300,1,1,"",300,"overlay",1,"",1,1],[]],[0,"Default",0,1]],[[209,-275,0,222,139,0,0,1,0,0,0,0,[]],86,391,[[1],[1],["adplaying"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","An ad is playing right now...",1.2,0,50,50,0,0,-2,0,"",-1,0]],[[-154.5756988525391,-294.3137512207031,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,5508,[],[["overlay"]],[0,"Default",0,1]]],[]]],[],[]],["Level 45",3000,4000,true,"Levels",366769671547932,[["Background",0,133379217528497,true,[255,255,255],false,0,0,1,false,false,1,0,0,[],[]],["Layer 0",1,994786212026008,true,[255,255,255],true,1,1,1,false,false,1,0,0,[[[2684,3048,0,3224,3032,0,0,1,0.5,0.5,0,0,[]],164,1777,[],[],[0,"Default",0,1]],[[2744,780,0,1648,1784,0,0,1,0.5,0.5,0,0,[]],164,5874,[],[],[0,"Default",0,1]],[[968,1144,0,32,64,0,0,1,0.5,0.5,0,0,[]],42,5877,[["run"],[0],[1],[1],[0],[0.8],[0.5],[0],[1],[0],[0],[0],["ovo+"],[2],[0],[0],[0],[""],[0],[3],[0],[0],[0],[0],[0],[0],[0]],[[330,1500,1500,650,1500,1000,1,0,0,1],[],[1,0],[0,10000,360,1]],[1,"Default",0,1]],[[208,736,0,60.93439102172852,60.93439102172852,0,0,1,0.5,0.5,0,0,[]],53,5895,[["Arithmetic"],[""],[0]],[],[1,"Default",0,1]],[[320,1664,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,5946,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[864,1216,0,1656,464,0,0,1,0,0,0,0,[]],51,5861,[],[[0],[1],[1,100,""]],[0,0]],[[2512,166,0,1056,600,0,1.570796370506287,1,0,0,0,0,[]],51,5862,[],[[0],[1],[1,100,""]],[0,0]],[[872,712,0,976,600,0,1.570796370506287,1,0,0,0,0,[]],51,5864,[],[[0],[1],[1,100,""]],[0,0]],[[864,952,0,1056,9,0,0,1,0,0,0,0,[]],51,5865,[],[[0],[1],[1,100,""]],[0,0]],[[1128,1212,0,8,64,0,-1.570796489715576,1,0.5,0.5,0,0,[[255,255,255,0,128,255,0.01]]],62,5878,[[1],[2],[0],[0],[1],[0],[0]],[[0]],[0,"Default",0,1]],[[1144,968,0,8,64,0,1.570796370506287,1,0.5,0.5,0,0,[[255,255,255,0,128,255,0.01]]],62,5743,[[2],[0],[0],[0],[1],[0],[0]],[[0]],[0,"Default",0,1]],[[1376,1212,0,8,64,0,-1.570796489715576,1,0.5,0.5,0,0,[[255,255,255,0,128,255,0.01]]],62,5747,[[1],[3],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[1600,1212,0,8,64,0,-1.570796489715576,1,0.5,0.5,0,0,[[255,255,255,0,128,255,0.01]]],62,5748,[[1],[4],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[1808,1212,0,8,-64,0,-1.570796489715576,1,0.5,0.5,0,0,[[255,255,255,0,128,255,0.01]]],62,5749,[[5],[0],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[1376,968,0,8,64,0,1.570796370506287,1,0.5,0.5,0,0,[[255,255,255,0,128,255,0.01]]],62,5750,[[3],[0],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[1600,968,0,8,64,0,1.570796370506287,1,0.5,0.5,0,0,[[255,255,255,0,128,255,0.01]]],62,5751,[[4],[0],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[1784,968,0,8,64,0,1.570796370506287,1,0.5,0.5,0,0,[[255,255,255,0,128,255,0.01]]],62,5752,[[1],[5],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[1312,960,0,128,9,0,1.570796370506287,1,0,0,0,0,[]],51,5753,[],[[0],[1],[1,100,""]],[0,0]],[[1304,1080,0,128,9,0,0,1,0,0,0,0,[]],51,5754,[],[[0],[1],[1,100,""]],[0,0]],[[1432,1080,0,104,9,0,1.570796370506287,1,0,0,0,0,[]],51,5755,[],[[0],[1],[1,100,""]],[0,0]],[[1544,1056,0,112,9,0,0,1,0,0,0,0,[]],51,5756,[],[[0],[1],[1,100,""]],[0,0]],[[1552,960,0,104,9,0,1.570796370506287,1,0,0,0,0,[]],51,5757,[],[[0],[1],[1,100,""]],[0,0]],[[1656,840,0,224,9,0,1.570796370506287,1,0,0,0,0,[]],51,5758,[],[[0],[1],[1,100,""]],[0,0]],[[1728,1200,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,5759,[[0.7],[0]],[[0]],[0,"Default",0,1]],[[1192,1080,0,136,9,0,1.570796370506287,1,0,0,0,0,[]],51,5760,[],[[0],[1],[1,100,""]],[0,0]],[[1088,1080,0,104,9,0,0,1,0,0,0,0,[]],51,5761,[],[[0],[1],[1,100,""]],[0,0]],[[1096,960,0,128,9,0,1.570796370506287,1,0,0,0,0,[]],51,5870,[],[[0],[1],[1,100,""]],[0,0]],[[1896,1064,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6665,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1896,1096,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6666,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1896,1128,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6667,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1896,1160,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6668,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1168,1104,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6669,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1168,1136,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6670,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1168,1168,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6671,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1072,976,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6672,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1072,1008,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6673,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1072,1040,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6674,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1288,1008,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6675,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1288,1040,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6676,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1208,1104,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6678,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1208,1136,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6679,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1208,1168,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6680,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1408,1104,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6682,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1408,1136,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6683,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1408,1168,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6684,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1328,1200,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,6681,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1416,1064,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,6685,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1328,1064,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,6686,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1568,1040,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,6687,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1632,1040,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,6688,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1600,1040,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,6689,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1448,1104,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6690,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1448,1136,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6691,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1480,1200,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6692,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1528,976,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6693,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1528,1008,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6694,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1528,1040,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6695,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1464,1184,0,32,40,0,1.570796370506287,1,0,0,0,0,[]],51,6696,[],[[0],[1],[1,100,""]],[0,0]],[[1760,1200,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,6697,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1904,1016,0,8,64,0,3.141592741012573,1,0.5,0.5,0,0,[[255,255,255,255,128,255,0.01]]],62,6663,[[1],[6],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[1896,888,0,8,64,0,3.141592741012573,1,0.5,0.5,0,0,[[255,255,255,255,128,255,0.01]]],62,6664,[[6],[0],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[1856,1200,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,6698,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1672,976,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6699,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1704,976,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6700,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1832,976,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6701,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1072,1072,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,5863,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1288,976,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,5866,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1168,1200,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,5867,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1208,1200,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,5868,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1408,1200,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,5869,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1448,1168,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,5871,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1896,1192,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,5872,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1648,784,0,8,64,0,0,1,0.5,0.5,0,0,[[255,255,255,255,128,255,0.01]]],62,6072,[[7],[8],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[1448,784,0,8,64,0,0,1,0.5,0.5,0,0,[[255,255,255,255,128,255,0.01]]],62,5873,[[8],[0],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[1448,872,0,80,9,0,0,1,0,0,0,0,[]],51,6071,[],[[0],[1],[1,100,""]],[0,0]],[[1456,872,0,80,9,0,1.570796370506287,1,0,0,0,0,[]],51,6073,[],[[0],[1],[1,100,""]],[0,0]],[[1472,856,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,6677,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1504,856,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,6702,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1672,864,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6703,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1672,896,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6704,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1672,928,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6705,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[272,161,0,1640,560,0,0,1,0,0,0,0,[]],51,6706,[],[[0],[1],[1,100,""]],[0,0]],[[1464,920,0,8,64,0,0,1,0.5,0.5,0,0,[[255,255,255,255,128,255,0.01]]],62,6707,[[10],[9],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[1352,944,0,8,64,0,-1.570796489715576,1,0.5,0.5,0,0,[[255,255,255,255,128,255,0.01]]],62,6708,[[9],[10],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[1264,936,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,6709,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1296,936,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,6710,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1200,936,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,6711,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1232,936,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,6712,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1136,936,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,6713,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1168,936,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,6714,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1136,768,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6715,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1168,768,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6716,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1200,768,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6717,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1232,768,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6718,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1264,768,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6719,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1296,768,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6720,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1120,721,0,192,32,0,0,1,0,0,0,0,[]],51,6721,[],[[0],[1],[1,100,""]],[0,0]],[[1400,936,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,6722,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1432,936,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,6723,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1136,864,0,8,64,0,0,1,0.5,0.5,0,0,[[255,255,255,255,128,255,0.01]]],62,6724,[[1],[11],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[2776,56,0,8,64,0,1.570796370506287,1,0.5,0.5,0,0,[[255,255,255,255,128,255,0.01]]],62,6725,[[11],[0],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[2704,72,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,5875,[[0]],[[1],[1]],[0,"Default",0,1]],[[2768,3696,0,152,199,0,0,1,0.5257731676101685,0.4974874258041382,0,0,[]],44,5880,[],[[0]],[0,"Default",0,1]],[[2684,56,0,8,792,0,0,0.699999988079071,0,0,0,0,[]],56,5881,[],[[1],[1]],[0,0]],[[2852,72,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,5882,[[0]],[[1],[1]],[0,"Default",0,1]],[[2704,96,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,5883,[[0]],[[1],[1]],[0,"Default",0,1]],[[2704,120,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,5884,[[0]],[[1],[1]],[0,"Default",0,1]],[[2704,144,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,5885,[[0]],[[1],[1]],[0,"Default",0,1]],[[2704,168,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,5886,[[0]],[[1],[1]],[0,"Default",0,1]],[[2704,192,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,5887,[[0]],[[1],[1]],[0,"Default",0,1]],[[2704,216,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,5888,[[0]],[[1],[1]],[0,"Default",0,1]],[[2704,240,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,5889,[[0]],[[1],[1]],[0,"Default",0,1]],[[2704,264,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,5890,[[0]],[[1],[1]],[0,"Default",0,1]],[[2704,288,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,5891,[[0]],[[1],[1]],[0,"Default",0,1]],[[2704,312,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,5892,[[0]],[[1],[1]],[0,"Default",0,1]],[[2704,336,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,5893,[[0]],[[1],[1]],[0,"Default",0,1]],[[2704,360,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,5894,[[0]],[[1],[1]],[0,"Default",0,1]],[[2704,384,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6726,[[0]],[[1],[1]],[0,"Default",0,1]],[[2704,408,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6727,[[0]],[[1],[1]],[0,"Default",0,1]],[[2704,432,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6728,[[0]],[[1],[1]],[0,"Default",0,1]],[[2704,456,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6729,[[0]],[[1],[1]],[0,"Default",0,1]],[[2704,480,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6730,[[0]],[[1],[1]],[0,"Default",0,1]],[[2704,504,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6731,[[0]],[[1],[1]],[0,"Default",0,1]],[[2704,528,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6732,[[0]],[[1],[1]],[0,"Default",0,1]],[[2704,552,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6733,[[0]],[[1],[1]],[0,"Default",0,1]],[[2704,576,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6734,[[0]],[[1],[1]],[0,"Default",0,1]],[[2704,600,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6735,[[0]],[[1],[1]],[0,"Default",0,1]],[[2704,624,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6736,[[0]],[[1],[1]],[0,"Default",0,1]],[[2704,648,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6737,[[0]],[[1],[1]],[0,"Default",0,1]],[[2704,672,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6738,[[0]],[[1],[1]],[0,"Default",0,1]],[[2704,696,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6739,[[0]],[[1],[1]],[0,"Default",0,1]],[[2704,720,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6740,[[0]],[[1],[1]],[0,"Default",0,1]],[[2704,744,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6741,[[0]],[[1],[1]],[0,"Default",0,1]],[[2704,768,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6742,[[0]],[[1],[1]],[0,"Default",0,1]],[[2704,792,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6743,[[0]],[[1],[1]],[0,"Default",0,1]],[[2704,816,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6744,[[0]],[[1],[1]],[0,"Default",0,1]],[[2852,72,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6745,[[0]],[[1],[1]],[0,"Default",0,1]],[[2852,96,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6746,[[0]],[[1],[1]],[0,"Default",0,1]],[[2852,120,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6747,[[0]],[[1],[1]],[0,"Default",0,1]],[[2852,144,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6748,[[0]],[[1],[1]],[0,"Default",0,1]],[[2852,168,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6749,[[0]],[[1],[1]],[0,"Default",0,1]],[[2852,192,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6750,[[0]],[[1],[1]],[0,"Default",0,1]],[[2852,216,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6751,[[0]],[[1],[1]],[0,"Default",0,1]],[[2852,240,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6752,[[0]],[[1],[1]],[0,"Default",0,1]],[[2852,264,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6753,[[0]],[[1],[1]],[0,"Default",0,1]],[[2852,288,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6754,[[0]],[[1],[1]],[0,"Default",0,1]],[[2852,312,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6755,[[0]],[[1],[1]],[0,"Default",0,1]],[[2852,336,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6756,[[0]],[[1],[1]],[0,"Default",0,1]],[[2852,360,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6757,[[0]],[[1],[1]],[0,"Default",0,1]],[[2852,384,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6758,[[0]],[[1],[1]],[0,"Default",0,1]],[[2852,408,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6759,[[0]],[[1],[1]],[0,"Default",0,1]],[[2852,432,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6760,[[0]],[[1],[1]],[0,"Default",0,1]],[[2852,456,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6761,[[0]],[[1],[1]],[0,"Default",0,1]],[[2852,480,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6762,[[0]],[[1],[1]],[0,"Default",0,1]],[[2852,504,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6763,[[0]],[[1],[1]],[0,"Default",0,1]],[[2852,528,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6764,[[0]],[[1],[1]],[0,"Default",0,1]],[[2852,552,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6765,[[0]],[[1],[1]],[0,"Default",0,1]],[[2852,576,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6766,[[0]],[[1],[1]],[0,"Default",0,1]],[[2852,600,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6767,[[0]],[[1],[1]],[0,"Default",0,1]],[[2852,624,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6768,[[0]],[[1],[1]],[0,"Default",0,1]],[[2852,648,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6769,[[0]],[[1],[1]],[0,"Default",0,1]],[[2852,672,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6770,[[0]],[[1],[1]],[0,"Default",0,1]],[[2852,696,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6771,[[0]],[[1],[1]],[0,"Default",0,1]],[[2852,720,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6772,[[0]],[[1],[1]],[0,"Default",0,1]],[[2852,744,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6773,[[0]],[[1],[1]],[0,"Default",0,1]],[[2852,768,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6774,[[0]],[[1],[1]],[0,"Default",0,1]],[[2852,792,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6775,[[0]],[[1],[1]],[0,"Default",0,1]],[[2852,816,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6776,[[0]],[[1],[1]],[0,"Default",0,1]],[[2864,56,0,8,792,0,0,0.699999988079071,0,0,0,0,[]],56,5876,[],[[1],[1]],[0,0]],[[2744,872,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6777,[[0]],[[1],[1]],[0,"Default",0,1]],[[2724,848,0,8,792,0,0,0.699999988079071,0,0,0,0,[]],56,6778,[],[[1],[1]],[0,0]],[[2872,872,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6779,[[0]],[[1],[1]],[0,"Default",0,1]],[[2744,896,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6780,[[0]],[[1],[1]],[0,"Default",0,1]],[[2744,920,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6781,[[0]],[[1],[1]],[0,"Default",0,1]],[[2744,944,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6782,[[0]],[[1],[1]],[0,"Default",0,1]],[[2744,968,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6783,[[0]],[[1],[1]],[0,"Default",0,1]],[[2744,992,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6784,[[0]],[[1],[1]],[0,"Default",0,1]],[[2744,1016,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6785,[[0]],[[1],[1]],[0,"Default",0,1]],[[2744,1040,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6786,[[0]],[[1],[1]],[0,"Default",0,1]],[[2744,1064,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6787,[[0]],[[1],[1]],[0,"Default",0,1]],[[2744,1088,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6788,[[0]],[[1],[1]],[0,"Default",0,1]],[[2744,1112,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6789,[[0]],[[1],[1]],[0,"Default",0,1]],[[2744,1136,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6790,[[0]],[[1],[1]],[0,"Default",0,1]],[[2744,1160,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6791,[[0]],[[1],[1]],[0,"Default",0,1]],[[2744,1184,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6792,[[0]],[[1],[1]],[0,"Default",0,1]],[[2744,1208,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6793,[[0]],[[1],[1]],[0,"Default",0,1]],[[2744,1232,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6794,[[0]],[[1],[1]],[0,"Default",0,1]],[[2744,1256,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6795,[[0]],[[1],[1]],[0,"Default",0,1]],[[2744,1280,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6796,[[0]],[[1],[1]],[0,"Default",0,1]],[[2744,1304,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6797,[[0]],[[1],[1]],[0,"Default",0,1]],[[2744,1328,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6798,[[0]],[[1],[1]],[0,"Default",0,1]],[[2744,1352,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6799,[[0]],[[1],[1]],[0,"Default",0,1]],[[2744,1376,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6800,[[0]],[[1],[1]],[0,"Default",0,1]],[[2744,1400,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6801,[[0]],[[1],[1]],[0,"Default",0,1]],[[2744,1424,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6802,[[0]],[[1],[1]],[0,"Default",0,1]],[[2744,1448,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6803,[[0]],[[1],[1]],[0,"Default",0,1]],[[2744,1472,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6804,[[0]],[[1],[1]],[0,"Default",0,1]],[[2744,1496,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6805,[[0]],[[1],[1]],[0,"Default",0,1]],[[2744,1520,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6806,[[0]],[[1],[1]],[0,"Default",0,1]],[[2744,1544,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6807,[[0]],[[1],[1]],[0,"Default",0,1]],[[2744,1568,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6808,[[0]],[[1],[1]],[0,"Default",0,1]],[[2744,1592,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6809,[[0]],[[1],[1]],[0,"Default",0,1]],[[2744,1616,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6810,[[0]],[[1],[1]],[0,"Default",0,1]],[[2872,872,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6811,[[0]],[[1],[1]],[0,"Default",0,1]],[[2872,896,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6812,[[0]],[[1],[1]],[0,"Default",0,1]],[[2872,920,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6813,[[0]],[[1],[1]],[0,"Default",0,1]],[[2872,944,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6814,[[0]],[[1],[1]],[0,"Default",0,1]],[[2872,968,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6815,[[0]],[[1],[1]],[0,"Default",0,1]],[[2872,992,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6816,[[0]],[[1],[1]],[0,"Default",0,1]],[[2872,1016,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6817,[[0]],[[1],[1]],[0,"Default",0,1]],[[2872,1040,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6818,[[0]],[[1],[1]],[0,"Default",0,1]],[[2872,1064,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6819,[[0]],[[1],[1]],[0,"Default",0,1]],[[2872,1088,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6820,[[0]],[[1],[1]],[0,"Default",0,1]],[[2872,1112,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6821,[[0]],[[1],[1]],[0,"Default",0,1]],[[2872,1136,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6822,[[0]],[[1],[1]],[0,"Default",0,1]],[[2872,1160,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6823,[[0]],[[1],[1]],[0,"Default",0,1]],[[2872,1184,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6824,[[0]],[[1],[1]],[0,"Default",0,1]],[[2872,1208,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6825,[[0]],[[1],[1]],[0,"Default",0,1]],[[2872,1232,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6826,[[0]],[[1],[1]],[0,"Default",0,1]],[[2872,1256,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6827,[[0]],[[1],[1]],[0,"Default",0,1]],[[2872,1280,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6828,[[0]],[[1],[1]],[0,"Default",0,1]],[[2872,1304,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6829,[[0]],[[1],[1]],[0,"Default",0,1]],[[2872,1328,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6830,[[0]],[[1],[1]],[0,"Default",0,1]],[[2872,1352,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6831,[[0]],[[1],[1]],[0,"Default",0,1]],[[2872,1376,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6832,[[0]],[[1],[1]],[0,"Default",0,1]],[[2872,1400,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6833,[[0]],[[1],[1]],[0,"Default",0,1]],[[2872,1424,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6834,[[0]],[[1],[1]],[0,"Default",0,1]],[[2872,1448,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6835,[[0]],[[1],[1]],[0,"Default",0,1]],[[2872,1472,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6836,[[0]],[[1],[1]],[0,"Default",0,1]],[[2872,1496,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6837,[[0]],[[1],[1]],[0,"Default",0,1]],[[2872,1520,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6838,[[0]],[[1],[1]],[0,"Default",0,1]],[[2872,1544,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6839,[[0]],[[1],[1]],[0,"Default",0,1]],[[2872,1568,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6840,[[0]],[[1],[1]],[0,"Default",0,1]],[[2872,1592,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6841,[[0]],[[1],[1]],[0,"Default",0,1]],[[2872,1616,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6842,[[0]],[[1],[1]],[0,"Default",0,1]],[[2884,856,0,8,784,0,0,0.699999988079071,0,0,0,0,[]],56,6843,[],[[1],[1]],[0,0]],[[2704,1664,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6844,[[0]],[[1],[1]],[0,"Default",0,1]],[[2684,1648,0,8,776,0,0,0.699999988079071,0,0,0,0,[]],56,6845,[],[[1],[1]],[0,0]],[[2816,1664,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6846,[[0]],[[1],[1]],[0,"Default",0,1]],[[2704,1688,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6847,[[0]],[[1],[1]],[0,"Default",0,1]],[[2704,1712,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6848,[[0]],[[1],[1]],[0,"Default",0,1]],[[2704,1736,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6849,[[0]],[[1],[1]],[0,"Default",0,1]],[[2704,1760,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6850,[[0]],[[1],[1]],[0,"Default",0,1]],[[2704,1784,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6851,[[0]],[[1],[1]],[0,"Default",0,1]],[[2704,1808,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6852,[[0]],[[1],[1]],[0,"Default",0,1]],[[2704,1832,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6853,[[0]],[[1],[1]],[0,"Default",0,1]],[[2704,1856,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6854,[[0]],[[1],[1]],[0,"Default",0,1]],[[2704,1880,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6855,[[0]],[[1],[1]],[0,"Default",0,1]],[[2704,1904,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6856,[[0]],[[1],[1]],[0,"Default",0,1]],[[2704,1928,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6857,[[0]],[[1],[1]],[0,"Default",0,1]],[[2704,1952,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6858,[[0]],[[1],[1]],[0,"Default",0,1]],[[2704,1976,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6859,[[0]],[[1],[1]],[0,"Default",0,1]],[[2704,2000,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6860,[[0]],[[1],[1]],[0,"Default",0,1]],[[2704,2024,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6861,[[0]],[[1],[1]],[0,"Default",0,1]],[[2704,2048,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6862,[[0]],[[1],[1]],[0,"Default",0,1]],[[2704,2072,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6863,[[0]],[[1],[1]],[0,"Default",0,1]],[[2704,2096,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6864,[[0]],[[1],[1]],[0,"Default",0,1]],[[2704,2120,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6865,[[0]],[[1],[1]],[0,"Default",0,1]],[[2704,2144,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6866,[[0]],[[1],[1]],[0,"Default",0,1]],[[2704,2168,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6867,[[0]],[[1],[1]],[0,"Default",0,1]],[[2704,2192,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6868,[[0]],[[1],[1]],[0,"Default",0,1]],[[2704,2216,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6869,[[0]],[[1],[1]],[0,"Default",0,1]],[[2704,2240,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6870,[[0]],[[1],[1]],[0,"Default",0,1]],[[2704,2264,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6871,[[0]],[[1],[1]],[0,"Default",0,1]],[[2704,2288,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6872,[[0]],[[1],[1]],[0,"Default",0,1]],[[2704,2312,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6873,[[0]],[[1],[1]],[0,"Default",0,1]],[[2704,2336,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6874,[[0]],[[1],[1]],[0,"Default",0,1]],[[2704,2360,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6875,[[0]],[[1],[1]],[0,"Default",0,1]],[[2704,2384,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6876,[[0]],[[1],[1]],[0,"Default",0,1]],[[2704,2408,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6877,[[0]],[[1],[1]],[0,"Default",0,1]],[[2816,1664,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6878,[[0]],[[1],[1]],[0,"Default",0,1]],[[2816,1688,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6879,[[0]],[[1],[1]],[0,"Default",0,1]],[[2816,1712,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6880,[[0]],[[1],[1]],[0,"Default",0,1]],[[2816,1736,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6881,[[0]],[[1],[1]],[0,"Default",0,1]],[[2816,1760,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6882,[[0]],[[1],[1]],[0,"Default",0,1]],[[2816,1784,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6883,[[0]],[[1],[1]],[0,"Default",0,1]],[[2816,1808,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6884,[[0]],[[1],[1]],[0,"Default",0,1]],[[2816,1832,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6885,[[0]],[[1],[1]],[0,"Default",0,1]],[[2816,1856,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6886,[[0]],[[1],[1]],[0,"Default",0,1]],[[2816,1880,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6887,[[0]],[[1],[1]],[0,"Default",0,1]],[[2816,1904,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6888,[[0]],[[1],[1]],[0,"Default",0,1]],[[2816,1928,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6889,[[0]],[[1],[1]],[0,"Default",0,1]],[[2816,1952,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6890,[[0]],[[1],[1]],[0,"Default",0,1]],[[2816,1976,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6891,[[0]],[[1],[1]],[0,"Default",0,1]],[[2816,2000,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6892,[[0]],[[1],[1]],[0,"Default",0,1]],[[2816,2024,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6893,[[0]],[[1],[1]],[0,"Default",0,1]],[[2816,2048,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6894,[[0]],[[1],[1]],[0,"Default",0,1]],[[2816,2072,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6895,[[0]],[[1],[1]],[0,"Default",0,1]],[[2816,2096,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6896,[[0]],[[1],[1]],[0,"Default",0,1]],[[2816,2120,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6897,[[0]],[[1],[1]],[0,"Default",0,1]],[[2816,2144,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6898,[[0]],[[1],[1]],[0,"Default",0,1]],[[2816,2168,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6899,[[0]],[[1],[1]],[0,"Default",0,1]],[[2816,2192,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6900,[[0]],[[1],[1]],[0,"Default",0,1]],[[2816,2216,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6901,[[0]],[[1],[1]],[0,"Default",0,1]],[[2816,2240,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6902,[[0]],[[1],[1]],[0,"Default",0,1]],[[2816,2264,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6903,[[0]],[[1],[1]],[0,"Default",0,1]],[[2816,2288,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6904,[[0]],[[1],[1]],[0,"Default",0,1]],[[2816,2312,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6905,[[0]],[[1],[1]],[0,"Default",0,1]],[[2816,2336,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6906,[[0]],[[1],[1]],[0,"Default",0,1]],[[2816,2360,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6907,[[0]],[[1],[1]],[0,"Default",0,1]],[[2816,2384,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6908,[[0]],[[1],[1]],[0,"Default",0,1]],[[2816,2408,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6909,[[0]],[[1],[1]],[0,"Default",0,1]],[[2828,1648,0,8,776,0,0,0.699999988079071,0,0,0,0,[]],56,6910,[],[[1],[1]],[0,0]],[[2744,2456,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6911,[[0]],[[1],[1]],[0,"Default",0,1]],[[2724,2432,0,8,784,0,0,0.699999988079071,0,0,0,0,[]],56,6912,[],[[1],[1]],[0,0]],[[2856,2456,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6913,[[0]],[[1],[1]],[0,"Default",0,1]],[[2744,2480,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6914,[[0]],[[1],[1]],[0,"Default",0,1]],[[2744,2504,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6915,[[0]],[[1],[1]],[0,"Default",0,1]],[[2744,2528,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6916,[[0]],[[1],[1]],[0,"Default",0,1]],[[2744,2552,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6917,[[0]],[[1],[1]],[0,"Default",0,1]],[[2744,2576,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6918,[[0]],[[1],[1]],[0,"Default",0,1]],[[2744,2600,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6919,[[0]],[[1],[1]],[0,"Default",0,1]],[[2744,2624,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6920,[[0]],[[1],[1]],[0,"Default",0,1]],[[2744,2648,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6921,[[0]],[[1],[1]],[0,"Default",0,1]],[[2744,2672,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6922,[[0]],[[1],[1]],[0,"Default",0,1]],[[2744,2696,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6923,[[0]],[[1],[1]],[0,"Default",0,1]],[[2744,2720,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6924,[[0]],[[1],[1]],[0,"Default",0,1]],[[2744,2744,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6925,[[0]],[[1],[1]],[0,"Default",0,1]],[[2744,2768,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6926,[[0]],[[1],[1]],[0,"Default",0,1]],[[2744,2792,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6927,[[0]],[[1],[1]],[0,"Default",0,1]],[[2744,2816,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6928,[[0]],[[1],[1]],[0,"Default",0,1]],[[2744,2840,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6929,[[0]],[[1],[1]],[0,"Default",0,1]],[[2744,2864,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6930,[[0]],[[1],[1]],[0,"Default",0,1]],[[2744,2888,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6931,[[0]],[[1],[1]],[0,"Default",0,1]],[[2744,2912,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6932,[[0]],[[1],[1]],[0,"Default",0,1]],[[2744,2936,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6933,[[0]],[[1],[1]],[0,"Default",0,1]],[[2744,2960,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6934,[[0]],[[1],[1]],[0,"Default",0,1]],[[2744,2984,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6935,[[0]],[[1],[1]],[0,"Default",0,1]],[[2744,3008,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6936,[[0]],[[1],[1]],[0,"Default",0,1]],[[2744,3032,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6937,[[0]],[[1],[1]],[0,"Default",0,1]],[[2744,3056,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6938,[[0]],[[1],[1]],[0,"Default",0,1]],[[2744,3080,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6939,[[0]],[[1],[1]],[0,"Default",0,1]],[[2744,3104,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6940,[[0]],[[1],[1]],[0,"Default",0,1]],[[2744,3128,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6941,[[0]],[[1],[1]],[0,"Default",0,1]],[[2744,3152,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6942,[[0]],[[1],[1]],[0,"Default",0,1]],[[2744,3176,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6943,[[0]],[[1],[1]],[0,"Default",0,1]],[[2744,3200,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6944,[[0]],[[1],[1]],[0,"Default",0,1]],[[2856,2456,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6945,[[0]],[[1],[1]],[0,"Default",0,1]],[[2856,2480,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6946,[[0]],[[1],[1]],[0,"Default",0,1]],[[2856,2504,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6947,[[0]],[[1],[1]],[0,"Default",0,1]],[[2856,2528,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6948,[[0]],[[1],[1]],[0,"Default",0,1]],[[2856,2552,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6949,[[0]],[[1],[1]],[0,"Default",0,1]],[[2856,2576,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6950,[[0]],[[1],[1]],[0,"Default",0,1]],[[2856,2600,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6951,[[0]],[[1],[1]],[0,"Default",0,1]],[[2856,2624,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6952,[[0]],[[1],[1]],[0,"Default",0,1]],[[2856,2648,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6953,[[0]],[[1],[1]],[0,"Default",0,1]],[[2856,2672,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6954,[[0]],[[1],[1]],[0,"Default",0,1]],[[2856,2696,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6955,[[0]],[[1],[1]],[0,"Default",0,1]],[[2856,2720,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6956,[[0]],[[1],[1]],[0,"Default",0,1]],[[2856,2744,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6957,[[0]],[[1],[1]],[0,"Default",0,1]],[[2856,2768,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6958,[[0]],[[1],[1]],[0,"Default",0,1]],[[2856,2792,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6959,[[0]],[[1],[1]],[0,"Default",0,1]],[[2856,2816,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6960,[[0]],[[1],[1]],[0,"Default",0,1]],[[2856,2840,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6961,[[0]],[[1],[1]],[0,"Default",0,1]],[[2856,2864,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6962,[[0]],[[1],[1]],[0,"Default",0,1]],[[2856,2888,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6963,[[0]],[[1],[1]],[0,"Default",0,1]],[[2856,2912,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6964,[[0]],[[1],[1]],[0,"Default",0,1]],[[2856,2936,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6965,[[0]],[[1],[1]],[0,"Default",0,1]],[[2856,2960,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6966,[[0]],[[1],[1]],[0,"Default",0,1]],[[2856,2984,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6967,[[0]],[[1],[1]],[0,"Default",0,1]],[[2856,3008,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6968,[[0]],[[1],[1]],[0,"Default",0,1]],[[2856,3032,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6969,[[0]],[[1],[1]],[0,"Default",0,1]],[[2856,3056,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6970,[[0]],[[1],[1]],[0,"Default",0,1]],[[2856,3080,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6971,[[0]],[[1],[1]],[0,"Default",0,1]],[[2856,3104,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6972,[[0]],[[1],[1]],[0,"Default",0,1]],[[2856,3128,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6973,[[0]],[[1],[1]],[0,"Default",0,1]],[[2856,3152,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6974,[[0]],[[1],[1]],[0,"Default",0,1]],[[2856,3176,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6975,[[0]],[[1],[1]],[0,"Default",0,1]],[[2856,3200,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6976,[[0]],[[1],[1]],[0,"Default",0,1]],[[2868,2432,0,8,784,0,0,0.699999988079071,0,0,0,0,[]],56,6977,[],[[1],[1]],[0,0]],[[2720,3240,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6978,[[0]],[[1],[1]],[0,"Default",0,1]],[[2700,3224,0,8,776,0,0,0.699999988079071,0,0,0,0,[]],56,6979,[],[[1],[1]],[0,0]],[[2832,3240,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,6980,[[0]],[[1],[1]],[0,"Default",0,1]],[[2720,3264,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6981,[[0]],[[1],[1]],[0,"Default",0,1]],[[2720,3288,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6982,[[0]],[[1],[1]],[0,"Default",0,1]],[[2720,3312,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6983,[[0]],[[1],[1]],[0,"Default",0,1]],[[2720,3336,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6984,[[0]],[[1],[1]],[0,"Default",0,1]],[[2720,3360,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6985,[[0]],[[1],[1]],[0,"Default",0,1]],[[2720,3384,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6986,[[0]],[[1],[1]],[0,"Default",0,1]],[[2720,3408,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6987,[[0]],[[1],[1]],[0,"Default",0,1]],[[2720,3432,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6988,[[0]],[[1],[1]],[0,"Default",0,1]],[[2720,3456,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6989,[[0]],[[1],[1]],[0,"Default",0,1]],[[2720,3480,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6990,[[0]],[[1],[1]],[0,"Default",0,1]],[[2720,3504,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6991,[[0]],[[1],[1]],[0,"Default",0,1]],[[2720,3528,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6992,[[0]],[[1],[1]],[0,"Default",0,1]],[[2720,3552,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6993,[[0]],[[1],[1]],[0,"Default",0,1]],[[2720,3576,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6994,[[0]],[[1],[1]],[0,"Default",0,1]],[[2720,3600,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6995,[[0]],[[1],[1]],[0,"Default",0,1]],[[2720,3624,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6996,[[0]],[[1],[1]],[0,"Default",0,1]],[[2720,3648,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6997,[[0]],[[1],[1]],[0,"Default",0,1]],[[2720,3672,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6998,[[0]],[[1],[1]],[0,"Default",0,1]],[[2720,3696,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,6999,[[0]],[[1],[1]],[0,"Default",0,1]],[[2720,3720,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,7000,[[0]],[[1],[1]],[0,"Default",0,1]],[[2720,3744,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,7001,[[0]],[[1],[1]],[0,"Default",0,1]],[[2720,3768,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,7002,[[0]],[[1],[1]],[0,"Default",0,1]],[[2720,3792,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,7003,[[0]],[[1],[1]],[0,"Default",0,1]],[[2720,3816,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,7004,[[0]],[[1],[1]],[0,"Default",0,1]],[[2720,3840,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,7005,[[0]],[[1],[1]],[0,"Default",0,1]],[[2720,3864,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,7006,[[0]],[[1],[1]],[0,"Default",0,1]],[[2720,3888,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,7007,[[0]],[[1],[1]],[0,"Default",0,1]],[[2720,3912,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,7008,[[0]],[[1],[1]],[0,"Default",0,1]],[[2720,3936,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,7009,[[0]],[[1],[1]],[0,"Default",0,1]],[[2720,3960,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,7010,[[0]],[[1],[1]],[0,"Default",0,1]],[[2720,3984,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,7011,[[0]],[[1],[1]],[0,"Default",0,1]],[[2832,3240,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,7012,[[0]],[[1],[1]],[0,"Default",0,1]],[[2832,3264,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,7013,[[0]],[[1],[1]],[0,"Default",0,1]],[[2832,3288,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,7014,[[0]],[[1],[1]],[0,"Default",0,1]],[[2832,3312,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,7015,[[0]],[[1],[1]],[0,"Default",0,1]],[[2832,3336,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,7016,[[0]],[[1],[1]],[0,"Default",0,1]],[[2832,3360,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,7017,[[0]],[[1],[1]],[0,"Default",0,1]],[[2832,3384,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,7018,[[0]],[[1],[1]],[0,"Default",0,1]],[[2832,3408,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,7019,[[0]],[[1],[1]],[0,"Default",0,1]],[[2832,3432,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,7020,[[0]],[[1],[1]],[0,"Default",0,1]],[[2832,3456,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,7021,[[0]],[[1],[1]],[0,"Default",0,1]],[[2832,3480,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,7022,[[0]],[[1],[1]],[0,"Default",0,1]],[[2832,3504,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,7023,[[0]],[[1],[1]],[0,"Default",0,1]],[[2832,3528,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,7024,[[0]],[[1],[1]],[0,"Default",0,1]],[[2832,3552,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,7025,[[0]],[[1],[1]],[0,"Default",0,1]],[[2832,3576,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,7026,[[0]],[[1],[1]],[0,"Default",0,1]],[[2832,3600,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,7027,[[0]],[[1],[1]],[0,"Default",0,1]],[[2832,3624,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,7028,[[0]],[[1],[1]],[0,"Default",0,1]],[[2832,3648,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,7029,[[0]],[[1],[1]],[0,"Default",0,1]],[[2832,3672,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,7030,[[0]],[[1],[1]],[0,"Default",0,1]],[[2832,3696,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,7031,[[0]],[[1],[1]],[0,"Default",0,1]],[[2832,3720,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,7032,[[0]],[[1],[1]],[0,"Default",0,1]],[[2832,3744,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,7033,[[0]],[[1],[1]],[0,"Default",0,1]],[[2832,3768,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,7034,[[0]],[[1],[1]],[0,"Default",0,1]],[[2832,3792,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,7035,[[0]],[[1],[1]],[0,"Default",0,1]],[[2832,3816,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,7036,[[0]],[[1],[1]],[0,"Default",0,1]],[[2832,3840,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,7037,[[0]],[[1],[1]],[0,"Default",0,1]],[[2832,3864,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,7038,[[0]],[[1],[1]],[0,"Default",0,1]],[[2832,3888,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,7039,[[0]],[[1],[1]],[0,"Default",0,1]],[[2832,3912,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,7040,[[0]],[[1],[1]],[0,"Default",0,1]],[[2832,3936,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,7041,[[0]],[[1],[1]],[0,"Default",0,1]],[[2832,3960,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,7042,[[0]],[[1],[1]],[0,"Default",0,1]],[[2832,3984,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,7043,[[0]],[[1],[1]],[0,"Default",0,1]],[[2844,3224,0,8,776,0,0,0.699999988079071,0,0,0,0,[]],56,7044,[],[[1],[1]],[0,0]],[[2700,3216,0,32,8,0,0,0.699999988079071,0,0,0,0,[]],56,7045,[],[[1],[1]],[0,0]],[[2844,3216,0,32,8,0,0,0.699999988079071,0,0,0,0,[]],56,7046,[],[[1],[1]],[0,0]],[[2684,2424,0,48,8,0,0,0.699999988079071,0,0,0,0,[]],56,7047,[],[[1],[1]],[0,0]],[[2828,2424,0,48,8,0,0,0.699999988079071,0,0,0,0,[]],56,7048,[],[[1],[1]],[0,0]],[[2684,1640,0,48,8,0,0,0.699999988079071,0,0,0,0,[]],56,7049,[],[[1],[1]],[0,0]],[[2828,1640,0,64,8,0,0,0.699999988079071,0,0,0,0,[]],56,7050,[],[[1],[1]],[0,0]],[[2684,848,0,48,8,0,0,0.699999988079071,0,0,0,0,[]],56,7051,[],[[1],[1]],[0,0]],[[2860,848,0,32,8,0,0,0.699999988079071,0,0,0,0,[]],56,7052,[],[[1],[1]],[0,0]],[[2828,552,0,272,16,0,1.570796370506287,1,0,0,0,0,[]],57,7053,[[0],[1],[""],["en-us"],[0],[0],[1],[""],[0],[1],[0],[0],[1]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","---------------->",1,0,0,0,0,0,0,0,"",-1,0]],[[2784,1208,0,272,16,0,1.570796370506287,1,0,0,0,0,[]],57,7054,[[0],[1],[""],["en-us"],[0],[0],[1],[""],[0],[1],[0],[0],[1]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","---------------->",1,0,0,0,0,0,0,0,"",-1,0]],[[2792,2048,0,272,16,0,1.570796370506287,1,0,0,0,0,[]],57,7055,[[0],[1],[""],["en-us"],[0],[0],[1],[""],[0],[1],[0],[0],[1]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","---------------->",1,0,0,0,0,0,0,0,"",-1,0]],[[2784,2944,0,272,16,0,1.570796370506287,1,0,0,0,0,[]],57,7056,[[0],[1],[""],["en-us"],[0],[0],[1],[""],[0],[1],[0],[0],[1]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","---------------->",1,0,0,0,0,0,0,0,"",-1,0]],[[2768,824,0,96,32,0,0,1,0.5,0.5,0,0,[]],43,7057,[[-0.2],[0]],[[0]],[0,"Default",0,1]],[[2792,1616,0,96,32,0,0,1,0.5,0.5,0,0,[]],43,7058,[[-0.2],[0]],[[0]],[0,"Default",0,1]],[[2776,2416,0,96,32,0,0,1,0.5,0.5,0,0,[]],43,7059,[[-0.2],[0]],[[0]],[0,"Default",0,1]],[[2768,3224,0,96,32,0,0,1,0.5,0.5,0,0,[]],43,7060,[[-0.2],[0]],[[0]],[0,"Default",0,1]],[[2948,800,0,48,48,0,0,1,0,0,0,0,[]],57,7061,[[0],[0],[""],["en-us"],[0],[0],[1],[""],[0],[1],[0],[0],[1]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","3",3,0,0,0,0,0,0,0,"",-1,0]],[[2608,1624,0,48,48,0,0,1,0,0,0,0,[]],57,7062,[[0],[0],[""],["en-us"],[0],[0],[1],[""],[0],[1],[0],[0],[1]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","2",3,0,0,0,0,0,0,0,"",-1,0]],[[2960,2440,0,48,48,0,0,1,0,0,0,0,[]],57,7063,[[0],[0],[""],["en-us"],[0],[0],[1],[""],[0],[1],[0],[0],[1]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","1",3,0,0,0,0,0,0,0,"",-1,0]],[[2624,3200,0,48,48,0,0,1,0,0,0,0,[]],57,7064,[[0],[0],[""],["en-us"],[0],[0],[1],[""],[0],[1],[0],[0],[1]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","0",3,0,0,0,0,0,0,0,"",-1,0]],[[2768,64,0,96,32,0,0,1,0.5,0.5,0,0,[]],43,7065,[[-0.2],[0]],[[0]],[0,"Default",0,1]],[[832,1016,0,288,117,0,0,1,0,0,0,0,[[]]],61,9505,[],[[1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>","1",7,0,60,0,0,0,0,0,"",-1,0]],[[1684,1020,0,40,40,0,0,1,0.5,0.5,0,0,[]],60,10014,[["level45"]],[[1],[400,-200,800,0,0,0],[0,0,0,1,1]],[0,"Default",0,1]]],[]],["UI",2,868937179522527,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[240,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3097,[["right"]],[[0,1,0,1,1]],[0,"Default",0,1]],[[80,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3098,[["left"]],[[0,1,0,1,1]],[0,"Default",1,1]],[[560,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3099,[["up"]],[[1,1,1,1,1]],[0,"Default",3,1]],[[400,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3100,[["down"]],[[1,1,1,1,1]],[0,"Default",2,1]]],[]],["End Card",3,985364453572807,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],78,2607,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[12.04449462890625,194,0,615.9109497070313,67,0,0,1,0,0,0,0,[]],79,2608,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Timer for this level",2.5,0,0,0,0,0,-10,0,"",-1,0]],[[17.546875,248,0,604.90625,105,0,0,1,0,0,0,0,[]],80,2610,[[0],[0],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","13:40:40",4,0,63,50,0,0,-10,0,"",-1,0]],[[115.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,2611,[[0],[1],[0],[0],["replay"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Replay",""],[""],[2,2,0,0,0],["",""]],[0,"Replay",0,1]],[[524.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3086,[[0],[1],[0],[0],["next"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Next",""],[""],[2,2,0,0,0],["",""]],[0,"Next",0,1]],[[320.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3087,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > Back","Level Menu"],[""],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[320.75,521.8050537109375,0,384,96,0,0,1,0.5,0.5,0,0,[]],70,3088,[[1],[1],[0],[0],[""],["{\"size\": 22, \"left\": 70, \"right\": 18, \"alignY\": 60}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > DownloadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"DownloadReplay",0,1]]],[]],["Pause",4,270092071203342,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-310,678,0,274,31,0,0,1,0,0,0,0,[]],168,3089,[],[],[".ovo",0,1,"file"]],[[320,320,0,425,250,0,0,1,0.5,0.5,0,0,[]],82,3090,[],[[6,1,"",300,1,1,"",300,"overlay",1,"PauseClose",1,1]],[0,"Default",0,1]],[[214,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3091,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"",""],["PauseClose"],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[426,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3092,[[0],[1],[0],[0],["quit"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > GiveUp",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[115.5,202,0,409,118,0,0,1,0,0,0,0,[]],83,3093,[[1],[1],["pause"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Pause",4,0,57,50,0,0,-10,0,"",-1,0]],[[320.5,88,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3094,[[1],[1],[0],[0],["loadreplay"],["{\"size\": 16, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > LoadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"LoadReplay",0,1]],[[320.5,157,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3095,[[1],[0],[0],[0],["toggledebug"],["{\"size\": 15, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Debug > Toggle",""],[""],[2,2,0,0,0],["",""]],[0,"ToggleDebug",0,1]],[[78,448,0,484,134,0,0,1,0,0,0,0,[]],193,3096,[],[],[0,"Default",0,1]]],[]],["Overlay",5,902914206118112,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[432,4,0,203.0009155273438,64,0,0,1,0,0,0,0,[]],107,5488,[],[[1,0,1,0,1]],[2,2,2,2,0,1,0,0,1]],[[432,4,0,203,64,0,0,1,0,0,0,0,[]],84,3101,[[0],[0],[""],["en-us"],[0],[1],[1],["{\"alignY\": 85, \"alignX\": 45, \"size\": 28}"],[0],[1],[0],[0],[0]],[["",""],[1,0,1,0,1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",2,0,100,50,0,0,-10,0,"",-1,0]],[[88,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3102,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Pause",""],[""],[0,0,0,0,1],["",""]],[0,"Pause",0,1]],[[158,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3103,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Replay","1"],[""],[0,0,0,0,1],["",""]],[0,"Reload",0,1]]],[]],["End Game",6,467282960645327,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],85,3104,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[73,194,0,494,72,0,0,1,0,0,0,0,[]],86,3105,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],["{alignY:50}"],[0],[1],[0],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Your final time",2.5,0,50,50,0,0,-10,0,"",-1,0]],[[320,403,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3106,[[0],[1],[0],[0],[""],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Quit",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[73,243,0,494,85,0,0,1,0,0,0,0,[]],87,3108,[[0],[1],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",3,0,50,50,0,0,-10,0,"",-1,0]],[[73,318,0,494,25,0,0,1,0,0,0,0,[]],86,5480,[[1],[1],["tryagainhardmode"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Try again in hard mode!",1,0,50,50,0,0,-2,0,"",-1,0]]],[]],["Banner",7,924082270714504,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-237,-189,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,3109,[],[["overlay"]],[0,"Default",0,1]]],[]],["AdPlaying",8,552833211448395,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,-203.5,0,250,97,0,0,1,0.5,0.5,0,0,[]],125,390,[],[[6,1,"",300,1,1,"",300,"overlay",1,"",1,1],[]],[0,"Default",0,1]],[[209,-275,0,222,139,0,0,1,0,0,0,0,[]],86,391,[[1],[1],["adplaying"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","An ad is playing right now...",1.2,0,50,50,0,0,-2,0,"",-1,0]],[[-154.5756988525391,-294.3137512207031,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,5508,[],[["overlay"]],[0,"Default",0,1]]],[]]],[],[]],["Level 46",10000,1000,true,"Levels",506243027359620,[["Background",0,117583055102237,true,[255,255,255],false,0,0,1,false,false,1,0,0,[],[]],["Layer 0",1,442540793509367,true,[255,255,255],true,1,1,1,false,false,1,0,0,[[[520,440,0,288,117,0,0,1,0,0,0,0,[[]]],61,6486,[],[[1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>","1",7,0,50,0,0,0,0,0,"",-1,0]],[[1928,648,0,128,120,0,0,1,0,0,0,0,[]],51,1653,[],[[0],[1],[1,100,""]],[0,0]],[[280,576,0,32,64,0,0,1,0.5,0.5,0,0,[]],42,1773,[["run"],[0],[1],[1],[0],[0.8],[0.5],[0],[1],[0],[0],[0],[""],[2],[0],[0],[0],[""],[0],[3],[0],[0],[0],[0],[0],[0],[0]],[[330,1500,1500,650,1500,1000,0,0,0,1],[],[0,0],[0,10000,360,1]],[1,"Default",0,1]],[[-256,640,0,1832,376,0,0,1,0,0,0,0,[]],67,9489,[],[[1]],[0,0]],[[-256,-584,0,6768,952,0,0,1,0,0,0,0,[]],67,9491,[],[[1]],[0,0]],[[1576,352,0,296,496,0,1.570796370506287,1,0,0,0,0,[]],67,9492,[],[[1]],[0,0]],[[120.0000228881836,32,0,616,376,0,1.570796370506287,1,0,0,0,0,[]],67,9493,[],[[1]],[0,0]],[[1072,408,0,8,64,0,3.141592741012573,1,0.5,0.5,0,0,[[255,255,255,255,0,0,0.01]]],62,9494,[[10],[-1],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[1072,584,0,8,64,0,3.141592741012573,1,0.5,0.5,0,0,[[255,255,255,255,0,0,0.01]]],62,9495,[[10],[-1],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[1072,496,0,8,64,0,3.141592741012573,1,0.5,0.5,0,0,[[255,255,255,0,255,0,0.01]]],62,9496,[[10],[20],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[136,384,0,64,32,0,0.7853981852531433,1,0.125,0.5,0,0,[]],55,9497,[[1],[325]],[[1],[300,1,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[136,464,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9498,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[136,496,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9499,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[136,528,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9500,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[136,560,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9501,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[136,592,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9502,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[136,624,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9503,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[136,432,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9504,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1016,1424,0,60.93439102172852,60.93439102172852,0,0,1,0.5,0.5,0,0,[]],53,6213,[["Recursion"],[""],[0]],[],[1,"Default",0,1]],[[1560,648,0,8384,360,0,0,1,0,0,0,0,[]],67,9506,[],[[1]],[0,0]],[[1584,360,0,960,8,0,0,1,0,0,0,0,[]],67,9507,[],[[1]],[0,0]],[[3024,360,0,312,480,0,1.570796370506287,1,0,0,0,0,[]],67,9508,[],[[1]],[0,0]],[[1584,360,0,296,8,0,1.570796370506287,1,0,0,0,0,[]],67,9509,[],[[1]],[0,0]],[[2536,416,0,8,64,0,3.141592741012573,1,0.5,0.5,0,0,[[255,255,255,255,0,0,0.01]]],62,9510,[[10],[-1],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[2536,592,0,8,64,0,3.141592741012573,1,0.5,0.5,0,0,[[255,255,255,255,0,0,0.01]]],62,9511,[[10],[-1],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[2536,504,0,8,64,0,3.141592741012573,1,0.5,0.5,0,0,[[255,255,255,0,255,0,0.01]]],62,9512,[[10],[30],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[1600,384,0,64,32,0,0.7853981852531433,1,0.125,0.5,0,0,[]],55,9513,[[1],[325]],[[1],[300,1,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[1600,472,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9514,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1600,504,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9515,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1600,536,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9516,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1600,568,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9517,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1600,600,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9518,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1600,632,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9519,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1600,440,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9520,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1688,448,0,8,64,0,0.7853981852531433,1,0.5,0.5,0,0,[[255,255,255,0,255,0,0.01]]],62,9595,[[20],[-2],[0],[0],[0],[0],[0]],[[0]],[1,"Default",0,1]],[[1988,648,0,16,112,0,-1.570796489715576,1,0.5,0.5,0,0,[]],50,9602,[[-1],[0],[0],[0],[0],[1],[1]],[[0],[1,0,1,1,"F 120",240,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[2140,368,0,16,48,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,9601,[[-1],[0],[0],[0],[0],[1],[1]],[[0],[1,0,1,1,"F 120",240,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1824,508,0,56,280,0,0,1,0.5,0.5,0,0,[]],49,9603,[[1],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[1,"Default",0,1]],[[432,624,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9610,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[464,624,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9611,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[736,624,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9612,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[768,624,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9613,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[496,624,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9614,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[528,624,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9615,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[800,624,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9616,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[832,624,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9617,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[584,376,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9618,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[616,376,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9619,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[648,376,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9620,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[680,376,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9621,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[632,624,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,9622,[[1],[0]],[[0]],[0,"Default",0,1]],[[1944,632,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9597,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1976,632,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9599,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2248,632,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9600,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2280,632,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9623,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2008,632,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9624,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2040,632,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9625,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2312,632,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9626,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2344,632,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9627,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2096,384,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9628,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2128,384,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9629,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2160,384,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9630,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2192,384,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9631,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2232,648,0,128,120,0,0,1,0,0,0,0,[]],51,9633,[],[[0],[1],[1,100,""]],[0,0]],[[2080,248,0,32,120,0,0,1,0,0,0,0,[]],51,9634,[],[[0],[1],[1,100,""]],[0,0]],[[2296,648,0,16,112,0,-1.570796489715576,1,0.5,0.5,0,0,[]],50,9635,[[-1],[0],[0],[0],[0],[1],[1]],[[0],[1,0,1,1,"F 120",240,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[2176,248,0,32,120,0,0,1,0,0,0,0,[]],51,9632,[],[[0],[1],[1,100,""]],[0,0]],[[2112,248,0,64,120,0,0,1,0,0,0,0,[]],51,9636,[],[[0],[1],[1,100,""]],[0,0]],[[2032,464,0,288,117,0,0,1,0,0,0,0,[[]]],61,9596,[],[[1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>","1",7,0,50,0,0,0,0,0,"",-1,0]],[[3376,648,0,32,120,0,0,1,0,0,0,0,[]],51,9521,[],[[0],[1],[1,100,""]],[0,0]],[[3016,648,0,984,8,0,0,1,0,0,0,0,[]],67,9522,[],[[1]],[0,0]],[[3032,360,0,960,8,0,0,1,0,0,0,0,[]],67,9523,[],[[1]],[0,0]],[[4600,360,0,296,608,0,1.570796370506287,1,0,0,0,0,[]],67,9524,[],[[1]],[0,0]],[[3032,360,0,296,8,0,1.570796370506287,1,0,0,0,0,[]],67,9525,[],[[1]],[0,0]],[[3984,416,0,8,64,0,3.141592741012573,1,0.5,0.5,0,0,[[255,255,255,255,0,0,0.01]]],62,9526,[[10],[-1],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[3984,512,0,8,64,0,3.141592741012573,1,0.5,0.5,0,0,[[255,255,255,255,0,0,0.01]]],62,9527,[[10],[-1],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[3984,600,0,8,64,0,3.141592741012573,1,0.5,0.5,0,0,[[255,255,255,0,255,0,0.01]]],62,9528,[[10],[40],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[3048,384,0,64,32,0,0.7853981852531433,1,0.125,0.5,0,0,[]],55,9529,[[1],[325]],[[1],[300,1,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[3048,472,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9530,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3048,504,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9531,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3048,536,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9532,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3048,568,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9533,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3048,600,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9534,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3048,632,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9535,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3048,440,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9598,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3136,448,0,8,64,0,0.7853981852531433,1,0.5,0.5,0,0,[[255,255,255,0,255,0,0.01]]],62,9604,[[30],[-2],[0],[0],[0],[0],[0]],[[0]],[1,"Default",0,1]],[[3272,504,0,56,280,0,0,1,0.5,0.5,0,0,[]],49,9607,[[2],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[1,"Default",0,1]],[[3392,632,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9608,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3424,632,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9609,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3696,632,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9637,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3728,632,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9638,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3456,632,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9639,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3488,632,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9640,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3760,632,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9641,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3792,632,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9642,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3544,384,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9643,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3576,384,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9644,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3608,384,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9645,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3640,384,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9646,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3680,648,0,32,120,0,0,1,0,0,0,0,[]],51,9647,[],[[0],[1],[1,100,""]],[0,0]],[[3528,248,0,32,120,0,0,1,0,0,0,0,[]],51,9648,[],[[0],[1],[1,100,""]],[0,0]],[[3624,248,0,32,120,0,0,1,0,0,0,0,[]],51,9650,[],[[0],[1],[1,100,""]],[0,0]],[[3560,248,0,64,120,0,0,1,0,0,0,0,[]],51,9651,[],[[0],[1],[1,100,""]],[0,0]],[[3480,464,0,288,117,0,0,1,0,0,0,0,[[]]],61,9652,[],[[1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>","1",7,0,50,0,0,0,0,0,"",-1,0]],[[3472,648,0,32,120,0,0,1,0,0,0,0,[]],51,9653,[],[[0],[1],[1,100,""]],[0,0]],[[3408,648,0,64,120,0,0,1,0,0,0,0,[]],51,9654,[],[[0],[1],[1,100,""]],[0,0]],[[3776,648,0,32,120,0,0,1,0,0,0,0,[]],51,9655,[],[[0],[1],[1,100,""]],[0,0]],[[3712,648,0,64,120,0,0,1,0,0,0,0,[]],51,9656,[],[[0],[1],[1,100,""]],[0,0]],[[4944,648,0,32,120,0,0,1,0,0,0,0,[]],51,9490,[],[[0],[1],[1,100,""]],[0,0]],[[4584,648,0,984,8,0,0,1,0,0,0,0,[]],67,9536,[],[[1]],[0,0]],[[4600,360,0,960,8,0,0,1,0,0,0,0,[]],67,9537,[],[[1]],[0,0]],[[6056,360,0,296,496,0,1.570796370506287,1,0,0,0,0,[]],67,9538,[],[[1]],[0,0]],[[4600,360,0,296,8,0,1.570796370506287,1,0,0,0,0,[]],67,9539,[],[[1]],[0,0]],[[5552,416,0,8,64,0,3.141592741012573,1,0.5,0.5,0,0,[[255,255,255,255,0,0,0.01]]],62,9540,[[10],[-1],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[5552,504,0,8,64,0,3.141592741012573,1,0.5,0.5,0,0,[[255,255,255,255,0,0,0.01]]],62,9541,[[10],[-1],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[5552,600,0,8,64,0,3.141592741012573,1,0.5,0.5,0,0,[[255,255,255,0,255,0,0.01]]],62,9542,[[10],[50],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[4616,384,0,64,32,0,0.7853981852531433,1,0.125,0.5,0,0,[]],55,9543,[[1],[325]],[[1],[300,1,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[4616,472,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9544,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4616,504,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9545,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4616,536,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9546,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4616,568,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9547,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4616,600,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9548,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4616,632,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9549,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4616,440,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9657,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4704,448,0,8,64,0,0.7853981852531433,1,0.5,0.5,0,0,[[255,255,255,0,255,0,0.01]]],62,9658,[[40],[-2],[0],[0],[0],[0],[0]],[[0]],[1,"Default",0,1]],[[4840,512,0,56,288,0,0,1,0.5,0.5,0,0,[]],49,9661,[[3],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[1,"Default",0,1]],[[4960,632,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9662,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4992,632,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9663,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[5264,632,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9664,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[5296,632,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9665,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[5024,632,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9666,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[5056,632,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9667,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[5328,632,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9668,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[5360,632,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9669,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[5248,648,0,32,120,0,0,1,0,0,0,0,[]],51,9674,[],[[0],[1],[1,100,""]],[0,0]],[[5096,248,0,32,120,0,0,1,0,0,0,0,[]],51,9675,[],[[0],[1],[1,100,""]],[0,0]],[[5192,248,0,32,120,0,0,1,0,0,0,0,[]],51,9677,[],[[0],[1],[1,100,""]],[0,0]],[[5128,248,0,64,120,0,0,1,0,0,0,0,[]],51,9678,[],[[0],[1],[1,100,""]],[0,0]],[[5112,384,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9670,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[5144,384,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9671,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[5176,384,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9672,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[5208,384,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9673,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[5048,448,0,288,117,0,0,1,0,0,0,0,[[]]],61,9679,[],[[1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>","1",7,0,50,0,0,0,0,0,"",-1,0]],[[5040,648,0,32,120,0,0,1,0,0,0,0,[]],51,9680,[],[[0],[1],[1,100,""]],[0,0]],[[4976,648,0,64,120,0,0,1,0,0,0,0,[]],51,9681,[],[[0],[1],[1,100,""]],[0,0]],[[5344,648,0,32,120,0,0,1,0,0,0,0,[]],51,9682,[],[[0],[1],[1,100,""]],[0,0]],[[5280,648,0,64,120,0,0,1,0,0,0,0,[]],51,9683,[],[[0],[1],[1,100,""]],[0,0]],[[3440,648,0,16,48,0,-1.570796489715576,1,0.5,0.5,0,0,[]],50,9605,[[-1],[0],[0],[0],[0],[2],[1]],[[0],[1,0,1,1,"F 120",240,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[3592,368,0,16,96,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,9606,[[-1],[0],[0],[0],[0],[2],[1]],[[0],[1,0,1,1,"F 120",240,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[3740,648,0,16,40,0,-1.570796489715576,1,0.5,0.5,0,0,[]],50,9649,[[-1],[0],[0],[0],[0],[2],[1]],[[0],[1,0,1,1,"F 120",240,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[5312,712,0,136,104,0,-1.570796489715576,1,0.5,0.5,0,0,[]],50,9676,[[-1],[0],[0],[0],[0],[3],[1]],[[0],[1,0,1,4,"F 60 ; W 0.75",240,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[5008,712,0,136,96,0,-1.570796489715576,1,0.5,0.5,0,0,[]],50,9659,[[-1],[0],[0],[0],[0],[3],[1]],[[0],[1,0,1,4,"F 60 ; W 0.75",240,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[5160,368,0,16,48,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,9660,[[-1],[0],[0],[0],[0],[3],[1]],[[0],[1,0,1,4,"F 60 ; W 0.75",240,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[4960,784,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9565,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4992,784,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9566,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[5024,784,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9567,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[5056,784,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9568,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[5264,784,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9569,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[5296,784,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9570,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[5328,784,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9571,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[5360,784,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9572,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[5408,504,0,56,288,0,0,1,0.5,0.5,0,0,[]],49,9573,[[4],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[1,"Default",0,1]],[[5536,600,0,16,40,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,9574,[[-1],[0],[0],[0],[0],[4],[1]],[[0],[1,0,1,1,"B 184",400,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[5536,416,0,16,40,0,-1.570796489715576,1,0.5,0.5,0,0,[]],50,9575,[[-1],[0],[0],[0],[0],[4],[1]],[[0],[1,0,1,1,"B 184",400,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[5504,672,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9576,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[5536,672,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9577,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[5488,688,0,64,120,0,0,1,0,0,0,0,[]],51,9582,[],[[0],[1],[1,100,""]],[0,0]],[[5520,688,0,16,48,0,-1.570796489715576,1,0.5,0.5,0,0,[]],50,9583,[[-1],[0],[0],[0],[0],[4],[1]],[[0],[1,0,1,4,"F 60 ; W 0.75",240,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[6048,648,0,984,8,0,0,1,0,0,0,0,[]],67,9579,[],[[1]],[0,0]],[[6064,360,0,960,8,0,0,1,0,0,0,0,[]],67,9580,[],[[1]],[0,0]],[[7032,360,0,296,8,0,1.570796370506287,1,0,0,0,0,[]],67,9581,[],[[1]],[0,0]],[[6064,360,0,296,8,0,1.570796370506287,1,0,0,0,0,[]],67,9584,[],[[1]],[0,0]],[[7016,416,0,8,64,0,3.141592741012573,1,0.5,0.5,0,0,[[255,255,255,0,0,255,0.01]]],62,9585,[[10],[50],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[7016,512,0,8,64,0,3.141592741012573,1,0.5,0.5,0,0,[[255,255,255,255,0,0,0.01]]],62,9586,[[10],[-1],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[6080,632,0,64,32,0,-0.7853981852531433,1,0.125,0.5,0,0,[]],55,9588,[[1],[325]],[[1],[300,1,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[6080,416,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9589,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[6080,448,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9590,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[6080,480,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9591,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[6080,512,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9592,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[6080,544,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9593,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[6080,576,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9594,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[6080,384,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9684,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[6160,560,0,8,64,0,-0.7853981852531433,1,0.5,0.5,0,0,[[255,255,255,0,255,0,0.01]]],62,9685,[[50],[-2],[0],[0],[0],[0],[0]],[[0]],[1,"Default",0,1]],[[6736,384,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9689,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[6768,384,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9690,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[6800,384,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9693,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[6832,384,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9694,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[6536,632,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9695,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[6568,632,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9696,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[6600,632,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9697,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[6632,632,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9698,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[6520,648,0,32,120,0,0,1,0,0,0,0,[]],51,9700,[],[[0],[1],[1,100,""]],[0,0]],[[6616,648,0,32,120,0,0,1,0,0,0,0,[]],51,9701,[],[[0],[1],[1,100,""]],[0,0]],[[6552,648,0,64,120,0,0,1,0,0,0,0,[]],51,9702,[],[[0],[1],[1,100,""]],[0,0]],[[6696,568,0,288,117,0,3.141592741012573,1,0,0,0,0,[[]]],61,9703,[],[[1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>","1",7,0,50,0,0,0,0,0,"",-1,0]],[[7016,600,0,8,64,0,3.141592741012573,1,0.5,0.5,0,0,[[255,255,255,255,0,0,0.01]]],62,9550,[[10],[-1],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[6288,504,0,56,288,0,0,1,0.5,0.5,0,0,[]],49,9551,[[5],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[1,"Default",0,1]],[[6584,704,0,136,96,0,-1.570796489715576,1,0.5,0.5,0,0,[]],50,9552,[[-1],[0],[0],[0],[0],[5],[1]],[[0],[1,0,1,1,"F 200",180,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[6720,240,0,128,128,0,0,1,0,0,0,0,[]],51,9553,[],[[0],[1],[1,100,""]],[0,0]],[[6784,312,0,136,96,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,9554,[[-1],[0],[0],[0],[0],[5],[1]],[[0],[1,0,1,1,"W 2 ; F 280",500,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[6352,384,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9555,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[6384,384,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9556,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[6416,384,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9557,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[6448,384,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9558,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[6336,88,0,128,280,0,0,1,0,0,0,0,[]],51,9559,[],[[0],[1],[1,100,""]],[0,0]],[[6392,312,0,136,120,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,9560,[[-1],[0],[0],[0],[0],[5],[1]],[[0],[1,0,1,1,"W 0.5 ; F 280",500,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[6536,784,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9561,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[6568,784,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9562,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[6600,784,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9563,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[6632,784,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9564,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[6332,232,0,8,80,0,3.141592741012573,1,0.5,0.5,0,0,[[255,255,255,0,0,255,0.01]]],62,9578,[[10],[70],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[6568,128,0,8,64,0,1.570796370506287,1,0.5,0.5,0,0,[[255,255,255,0,0,255,0.01]]],62,9587,[[70],[-2],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[7880,272,0,8,64,0,1.570796370506287,1,0.5,0.5,0,0,[[255,255,255,0,0,255,0.01]]],62,9686,[[-1],[-2],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[7768,440,0,2176,208,0,0,1,0,0,0,0,[]],67,9687,[],[[1]],[0,0]],[[7792,424,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9688,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[7496,8,0,736,256,0,0,1,0,0,0,0,[]],67,9691,[],[[1]],[0,0]],[[7776,256,0,416,744,0,1.570796370506287,1,0,0,0,0,[]],67,9692,[],[[1]],[0,0]],[[9952,-735.9998779296875,0,1184,1960,0,1.570796370506287,1,0,0,0,0,[]],67,9699,[],[[1]],[0,0]],[[7824,424,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9704,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[7976,424,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9705,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[7944,424,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9706,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[7856,424,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9707,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[7912,424,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9708,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[7884,424,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9709,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[6648,-568,0,984,928,0,0,1,0,0,0,0,[]],67,9710,[],[[1]],[0,0]],[[6200,-832,0,984,928,0,0,1,0,0,0,0,[]],67,9711,[],[[1]],[0,0]],[[7592,-800,0,984,928,0,0,1,0,0,0,0,[]],67,9712,[],[[1]],[0,0]],[[6584,264,0,97,199,0,0,1,0.5257731676101685,0.4974874258041382,0,0,[]],44,9713,[],[[0]],[0,"Default",0,1]],[[5528,504,0,32,32,0,0,1,0.5,0.5,0,0,[]],60,10015,[["level46"]],[[1],[400,-200,800,0,0,0],[0,0,0,1,1]],[0,"Default",0,1]]],[]],["UI",2,245493866241493,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[240,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3097,[["right"]],[[0,1,0,1,1]],[0,"Default",0,1]],[[80,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3098,[["left"]],[[0,1,0,1,1]],[0,"Default",1,1]],[[560,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3099,[["up"]],[[1,1,1,1,1]],[0,"Default",3,1]],[[400,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3100,[["down"]],[[1,1,1,1,1]],[0,"Default",2,1]]],[]],["End Card",3,492578414441467,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],78,2607,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[12.04449462890625,194,0,615.9109497070313,67,0,0,1,0,0,0,0,[]],79,2608,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Timer for this level",2.5,0,0,0,0,0,-10,0,"",-1,0]],[[17.546875,248,0,604.90625,105,0,0,1,0,0,0,0,[]],80,2610,[[0],[0],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","13:40:40",4,0,63,50,0,0,-10,0,"",-1,0]],[[115.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,2611,[[0],[1],[0],[0],["replay"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Replay",""],[""],[2,2,0,0,0],["",""]],[0,"Replay",0,1]],[[524.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3086,[[0],[1],[0],[0],["next"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Next",""],[""],[2,2,0,0,0],["",""]],[0,"Next",0,1]],[[320.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3087,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > Back","Level Menu"],[""],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[320.75,521.8050537109375,0,384,96,0,0,1,0.5,0.5,0,0,[]],70,3088,[[1],[1],[0],[0],[""],["{\"size\": 22, \"left\": 70, \"right\": 18, \"alignY\": 60}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > DownloadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"DownloadReplay",0,1]]],[]],["Pause",4,802111579550053,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-310,678,0,274,31,0,0,1,0,0,0,0,[]],168,3089,[],[],[".ovo",0,1,"file"]],[[320,320,0,425,250,0,0,1,0.5,0.5,0,0,[]],82,3090,[],[[6,1,"",300,1,1,"",300,"overlay",1,"PauseClose",1,1]],[0,"Default",0,1]],[[214,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3091,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"",""],["PauseClose"],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[426,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3092,[[0],[1],[0],[0],["quit"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > GiveUp",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[115.5,202,0,409,118,0,0,1,0,0,0,0,[]],83,3093,[[1],[1],["pause"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Pause",4,0,57,50,0,0,-10,0,"",-1,0]],[[320.5,88,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3094,[[1],[1],[0],[0],["loadreplay"],["{\"size\": 16, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > LoadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"LoadReplay",0,1]],[[320.5,157,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3095,[[1],[0],[0],[0],["toggledebug"],["{\"size\": 15, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Debug > Toggle",""],[""],[2,2,0,0,0],["",""]],[0,"ToggleDebug",0,1]],[[78,448,0,484,134,0,0,1,0,0,0,0,[]],193,3096,[],[],[0,"Default",0,1]]],[]],["Overlay",5,356126002878229,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[432,4,0,203.0009155273438,64,0,0,1,0,0,0,0,[]],107,5488,[],[[1,0,1,0,1]],[2,2,2,2,0,1,0,0,1]],[[432,4,0,203,64,0,0,1,0,0,0,0,[]],84,3101,[[0],[0],[""],["en-us"],[0],[1],[1],["{\"alignY\": 85, \"alignX\": 45, \"size\": 28}"],[0],[1],[0],[0],[0]],[["",""],[1,0,1,0,1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",2,0,100,50,0,0,-10,0,"",-1,0]],[[88,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3102,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Pause",""],[""],[0,0,0,0,1],["",""]],[0,"Pause",0,1]],[[158,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3103,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Replay","1"],[""],[0,0,0,0,1],["",""]],[0,"Reload",0,1]]],[]],["End Game",6,719489476114420,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],85,3104,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[73,194,0,494,72,0,0,1,0,0,0,0,[]],86,3105,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],["{alignY:50}"],[0],[1],[0],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Your final time",2.5,0,50,50,0,0,-10,0,"",-1,0]],[[320,403,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3106,[[0],[1],[0],[0],[""],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Quit",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[73,243,0,494,85,0,0,1,0,0,0,0,[]],87,3108,[[0],[1],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",3,0,50,50,0,0,-10,0,"",-1,0]],[[73,318,0,494,25,0,0,1,0,0,0,0,[]],86,5480,[[1],[1],["tryagainhardmode"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Try again in hard mode!",1,0,50,50,0,0,-2,0,"",-1,0]]],[]],["Banner",7,344682172840923,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-237,-189,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,3109,[],[["overlay"]],[0,"Default",0,1]]],[]],["AdPlaying",8,378776370252435,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,-203.5,0,250,97,0,0,1,0.5,0.5,0,0,[]],125,390,[],[[6,1,"",300,1,1,"",300,"overlay",1,"",1,1],[]],[0,"Default",0,1]],[[209,-275,0,222,139,0,0,1,0,0,0,0,[]],86,391,[[1],[1],["adplaying"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","An ad is playing right now...",1.2,0,50,50,0,0,-2,0,"",-1,0]],[[-154.5756988525391,-294.3137512207031,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,5508,[],[["overlay"]],[0,"Default",0,1]]],[]]],[],[]],["Level 47",3200,1000,true,"Levels",245978642365834,[["Background",0,139070554136886,true,[255,255,255],false,0,0,1,false,false,1,0,0,[],[]],["Layer 0",1,216769439539618,true,[255,255,255],true,1,1,1,false,false,1,0,0,[[[792,587,0,32,64,0,0,1,0.5,0.5,0,0,[]],42,6516,[["run"],[0],[1],[1],[0],[0.8],[0.5],[0],[1],[0],[0],[0],["ovo+"],[2],[0],[0],[0],[""],[0],[3],[0],[0],[0],[0],[0],[0],[0]],[[330,1500,1500,650,1500,1000,1,0,0,1],[],[0,0],[0,10000,360,1]],[1,"Default",0,1]],[[1128,584,0,288,117,0,0,1,0,0,0,0,[[]]],61,6608,[],[[1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>","1",7,0,50,0,0,0,0,0,"",-1,0]],[[696,784,0,2464,9,0,0,1,0,0,0,0,[]],51,6419,[],[[0],[1],[1,100,""]],[0,0]],[[888,296,0,2272,9,0,0,1,0,0,0,0,[]],51,6496,[],[[0],[1],[1,100,""]],[0,0]],[[3160,296,0,496,9,0,1.570796370506287,1,0,0,0,0,[]],51,6497,[],[[0],[1],[1,100,""]],[0,0]],[[896,296,0,376,9,0,1.570796370506287,1,0,0,0,0,[]],51,6498,[],[[0],[1],[1,100,""]],[0,0]],[[887,672,0,9,112,0,0,1,0,0,0,0,[]],48,6499,[],[[0],[1]],[0,0]],[[704,416,0,376,9,0,1.570796370506287,1,0,0,0,0,[]],51,6500,[],[[0],[1],[1,100,""]],[0,0]],[[696,416,0,192,9,0,0,1,0,0,0,0,[]],51,6501,[],[[0],[1],[1,100,""]],[0,0]],[[792,456,0,32,32,0,0,1,0.5,0.5,0,0,[]],49,6502,[[0],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[0,"Default",0,1]],[[888,720,0,50,55,0,-1.570796489715576,1,0.5,0.5,0,0,[]],50,6503,[[-1],[0],[0],[0],[0],[0],[1]],[[0],[1,0,1,1,"F 112",200,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[952,480,0,64,9,0,0,1,0,0,0,0,[]],51,6504,[],[[0],[1],[1,100,""]],[0,0]],[[984,496,0,64,32,0,1.570796370506287,1,0.125,0.5,0,0,[]],55,6505,[[1],[150]],[[1],[300,0.5,1,180,0,0,50,1,1],[0,10000,20,1]],[0,"Default",0,1]],[[1216,480,0,64,8,0,0,1,0,0,0,0,[]],51,6506,[],[[0],[1],[1,100,""]],[0,0]],[[1248,496,0,64,31,0,1.570796370506287,1,0.125,0.5,0,0,[]],55,6507,[[1],[150]],[[1],[300,2,1,180,0,0,50,1,1],[0,10000,180,1]],[0,"Default",0,1]],[[1472,480,0,64,9,0,0,1,0,0,0,0,[]],51,6508,[],[[0],[1],[1,100,""]],[0,0]],[[1504,496,0,64,32,0,1.570796370506287,1,0.125,0.5,0,0,[]],55,6509,[[1],[325]],[[1],[300,0.5,1,180,0,0,300,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[984,488,0,50,55,0,0,1,0.5,0.5,0,0,[]],50,6510,[[-1],[0],[0],[0],[0],[-1],[1]],[[0],[1,1,1,0,"F 200 ; W 2 ; B 200 ; W 2",200,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1248,496,0,50,55,0,0,1,0.5,0.5,0,0,[]],50,6511,[[-1],[0],[0],[0],[0],[-1],[1]],[[0],[1,1,1,0,"F 200 ; W 3 ; B 200 ; W 1",200,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1072,768,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,6513,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1104,768,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,6514,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1216,768,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,6515,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1248,768,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,6517,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1400,768,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,6518,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1432,768,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,6519,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1624,768,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,6525,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1320,780,0,8,88,0,-1.570796489715576,1,0.5,0.5,0,0,[[255,255,255,69,169,148,0.01]]],62,6526,[[1],[0],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[900,592,0,8,88,0,0,1,0.5,0.5,0,0,[[255,255,255,69,169,148,0.01]]],62,6527,[[0],[-1],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[1664,304,0,488,9,0,1.570796370506287,1,0,0,0,0,[]],51,6521,[],[[0],[1],[1,100,""]],[0,0]],[[1568,392,0,280,9,0,1.570796370506287,1,0,0,0,0,[]],51,6522,[],[[0],[1],[1,100,""]],[0,0]],[[1568,536,0,88,8,0,0,1,0,0,0,0,[]],45,6528,[],[[0],[1]],[0,0]],[[1112,416,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6529,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1144,416,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6530,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1376,327,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6531,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1408,327,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6532,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1376,304,0,8,2,0,1.570796370506287,1,0,0,0,0,[]],51,6533,[],[[0],[1],[1,100,""]],[0,0]],[[1408,304,0,8,2,0,1.570796370506287,1,0,0,0,0,[]],51,6534,[],[[0],[1],[1,100,""]],[0,0]],[[720,488,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6537,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[720,520,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6538,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[720,552,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6539,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[720,584,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6540,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[720,616,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6541,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[720,648,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6542,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[720,680,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6543,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[720,712,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6544,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[720,744,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,6545,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[872,648,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6547,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1146,304,0,92,4,0,1.570796370506287,1,0,0,0,0,[]],45,6535,[],[[0],[1]],[0,0]],[[1114,304,0,92,4,0,1.570796370506287,1,0,0,0,0,[]],45,6536,[],[[0],[1]],[0,0]],[[984,476,0,8,64,0,-1.570796489715576,1,0.5,0.5,0,0,[[255,255,255,255,0,0,0.01]]],62,6546,[[2],[3],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[1668,392,0,8,64,0,0,1,0.5,0.5,0,0,[[255,255,255,69,169,148,0.01]]],62,6548,[[-2],[4],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[1664,568,0,1200,8,0,0,1,0,0,0,0,[]],51,6512,[],[[0],[1],[1,100,""]],[0,0]],[[2864,296,0,280,9,0,1.570796370506287,1,0,0,0,0,[]],51,6523,[],[[0],[1],[1,100,""]],[0,0]],[[1968,488,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6550,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1992,304,0,200,9,0,1.570796370506287,1,0,0,0,0,[]],51,6551,[],[[0],[1],[1,100,""]],[0,0]],[[1968,456,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6552,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1968,424,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6553,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1968,392,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6554,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1968,360,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6555,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1968,328,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6556,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1656,520,0,96,8,0,0,1,0,0,0,0,[]],51,6557,[],[[0],[1],[1,100,""]],[0,0]],[[1680,552,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,6558,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1712,552,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,6559,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1744,552,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,6560,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1776,552,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,6561,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1808,552,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,6562,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1840,552,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,6563,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1872,552,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,6564,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1904,552,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,6565,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1936,552,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,6566,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1968,552,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,6567,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2000,552,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,6568,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2032,552,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,6569,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2064,552,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,6549,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2096,552,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,6582,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2128,552,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,6583,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2160,552,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,6584,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2040,308,0,8,64,0,1.570796370506287,1,0.5,0.5,0,0,[[255,255,255,69,169,148,0.01]]],62,6585,[[4],[-1],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[1728,520,0,40,24,0,0,1,0.5,0.5,0,0,[]],50,6586,[[-1],[0],[0],[0],[0],[3],[1]],[[0],[1,0,1,1,"F 1200",160,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1720,352,0,32,32,0,0,1,0.5,0.5,0,0,[]],49,6587,[[3],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[1,"Default",0,1]],[[1996,416,0,8,64,0,0,1,0.5,0.5,0,0,[[255,255,255,69,169,148,0.01]]],62,6588,[[5],[6],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[1668,624,0,8,64,0,0,1,0.5,0.5,0,0,[[255,255,255,69,169,148,0.01]]],62,6589,[[6],[-1],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[2304,488,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6590,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2328,304,0,264,9,0,1.570796370506287,1,0,0,0,0,[]],51,6591,[],[[0],[1],[1,100,""]],[0,0]],[[2304,456,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6592,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2304,424,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6593,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2304,392,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6594,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2304,360,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6595,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2304,328,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6596,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2304,520,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,6570,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2192,552,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,6571,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2224,552,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,6572,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2256,552,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,6573,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2288,552,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,6574,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1800,768,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,6575,[[0.5],[0]],[[0]],[0,"Default",0,1]],[[1968,768,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,6576,[[0.5],[0]],[[0]],[0,"Default",0,1]],[[2184,768,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,6577,[[0.5],[0]],[[0]],[0,"Default",0,1]],[[2416,768,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,6578,[[0.5],[0]],[[0]],[0,"Default",0,1]],[[1904,592,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6579,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1936,592,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6580,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1968,592,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6581,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2000,592,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6597,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2032,592,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6598,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2064,592,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6599,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2096,592,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6600,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2128,592,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6601,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2160,592,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6602,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2192,592,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6603,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2224,592,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6604,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2256,592,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6605,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2288,592,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6606,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2320,592,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6607,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2352,592,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6609,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3096,472,0,97,199,0,0,1,0.5257731676101685,0.4974874258041382,0,0,[]],44,6613,[],[[0]],[0,"Default",0,1]],[[2864,640,0,152,9,0,1.570796370506287,1,0,0,0,0,[]],51,6614,[],[[0],[1],[1,100,""]],[0,0]],[[2864,568,0,288,8,0,0,1,0,0,0,0,[]],51,6615,[],[[0],[1],[1,100,""]],[0,0]],[[2480,580,0,8,64,0,1.570796370506287,1,0.5,0.5,0,0,[[255,255,255,0,255,0,0.01]]],62,6610,[[7],[8],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[2384,308,0,8,64,0,1.570796370506287,1,0.5,0.5,0,0,[[255,255,255,0,255,0,0.01]]],62,6611,[[8],[-1],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[2536,576,0,208,9,0,1.570796370506287,1,0,0,0,0,[]],51,6612,[],[[0],[1],[1,100,""]],[0,0]],[[2328,480,0,168,8,0,0,1,0,0,0,0,[]],51,6616,[],[[0],[1],[1,100,""]],[0,0]],[[2568,424,0,208,8,0,0,1,0,0,0,0,[]],51,6617,[],[[0],[1],[1,100,""]],[0,0]],[[2568,296,0,136,9,0,1.570796370506287,1,0,0,0,0,[]],51,6618,[],[[0],[1],[1,100,""]],[0,0]],[[2336,536,0,8,64,0,0,1,0.5,0.5,0,0,[[255,255,255,0,255,0,0.01]]],62,6619,[[9],[10],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[2848,352,0,8,64,0,3.141592741012573,1,0.5,0.5,0,0,[[255,255,255,0,255,0,0.01]]],62,6620,[[10],[-1],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[2576,384,0,8,64,0,0,1,0.5,0.5,0,0,[[255,255,255,0,255,0,0.01]]],62,6621,[[11],[12],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[2544,696,0,8,64,0,0,1,0.5,0.5,0,0,[[255,255,255,0,255,0,0.01]]],62,6622,[[12],[-1],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[3136,736,0,8,64,0,3.141592741012573,1,0.5,0.5,0,0,[[255,255,255,0,255,0,0.01]]],62,6623,[[13],[14],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[2888,384,0,8,64,0,0,1,0.5,0.5,0,0,[[255,255,255,0,255,0,0.01]]],62,6624,[[14],[-1],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[2912,544,0,64,32,0,3.141592741012573,1,0.125,0.5,0,0,[]],55,6625,[[1],[500]],[[1],[300,0.2,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[2912,512,0,64,32,0,3.141592741012573,1,0.125,0.5,0,0,[]],55,6626,[[1],[500]],[[1],[300,0.2,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[2912,480,0,64,32,0,3.141592741012573,1,0.125,0.5,0,0,[]],55,6627,[[1],[500]],[[1],[300,0.2,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[2592,448,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6628,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2624,448,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6629,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2656,448,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6630,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2688,448,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6631,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2760,552,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,6632,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2728,552,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,6633,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2584,320,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6634,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2616,320,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6635,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2648,320,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6636,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2680,320,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6637,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2712,320,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6638,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2744,320,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6639,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2840,768,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,6640,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2808,768,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,6641,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2776,768,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,6642,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2744,768,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,6643,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2552,592,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6644,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2584,592,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6645,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2616,592,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6646,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2648,592,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6647,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2680,592,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6648,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2712,592,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6649,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2976,768,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,6650,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2944,768,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,6651,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2912,768,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,6652,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2880,768,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,6653,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3008,768,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,6656,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2976,768,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,6657,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1096,396,0,64,4,0,0,1,0,0,0,0,[]],45,1774,[],[[0],[1]],[0,0]],[[1720,384,0,80,24,0,0,1,0,0,0,0,[]],46,1775,[[0],[0],[""],["en-us"],[0],[0],[1],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","<--",1,0,50,0,0,0,0,0,"",-1,0]],[[2016,408,0,80,24,0,0,1,0,0,0,0,[]],46,1776,[[0],[0],[""],["en-us"],[0],[0],[1],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","<--",1,0,50,0,0,0,0,0,"",-1,0]],[[887,664,0,160,9,0,0,1,0,0,0,0,[]],51,1779,[],[[0],[1],[1,100,""]],[0,0]],[[1720,308,0,8,64,0,1.570796370506287,1,0.5,0.5,0,0,[[255,255,255,69,169,148,0.01]]],62,1780,[[3],[-1],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[2568,552,0,32,32,0,0,1,0.5,0.5,0,0,[]],163,1782,[],[[0]],[0,"Default",0,1]],[[2888,512,0,16,88,0,0,1,0.5,0.5,0,0,[]],50,1798,[[-1],[0],[0],[0],[0],[10],[1]],[[0],[1,0,1,1,"B 64",256,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[2564,500,0,8,136,0,0,1,0.5,0.5,0,0,[]],49,1799,[[10],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[1,"Default",0,1]],[[2896,512,0,112,64,0,1.570796370506287,1,0.5,0.5,0,0,[]],164,1801,[],[],[0,"Default",0,1]],[[2016,768,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1803,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2048,768,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1804,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2080,768,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1805,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2112,768,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1806,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2144,768,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1800,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2232,768,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1802,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2264,768,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1807,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2296,768,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1808,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2328,768,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1809,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2360,768,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1810,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1856,768,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1811,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1888,768,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1812,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1920,768,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1813,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[792,216,0,60.93439102172852,60.93439102172852,0,0,1,0.5,0.5,0,0,[]],53,6391,[["Rocket Science"],[""],[0]],[],[1,"Default",0,1]],[[1128,352,0,64,64,0,0,1,0.5,0.5,0,0,[]],60,10016,[["level47"]],[[1],[400,-200,800,0,0,0],[0,0,0,1,1]],[0,"Default",0,1]]],[]],["UI",2,430812554782784,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[240,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3097,[["right"]],[[0,1,0,1,1]],[0,"Default",0,1]],[[80,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3098,[["left"]],[[0,1,0,1,1]],[0,"Default",1,1]],[[560,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3099,[["up"]],[[1,1,1,1,1]],[0,"Default",3,1]],[[400,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3100,[["down"]],[[1,1,1,1,1]],[0,"Default",2,1]]],[]],["End Card",3,402749895145996,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],78,2607,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[12.04449462890625,194,0,615.9109497070313,67,0,0,1,0,0,0,0,[]],79,2608,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Timer for this level",2.5,0,0,0,0,0,-10,0,"",-1,0]],[[17.546875,248,0,604.90625,105,0,0,1,0,0,0,0,[]],80,2610,[[0],[0],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","13:40:40",4,0,63,50,0,0,-10,0,"",-1,0]],[[115.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,2611,[[0],[1],[0],[0],["replay"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Replay",""],[""],[2,2,0,0,0],["",""]],[0,"Replay",0,1]],[[524.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3086,[[0],[1],[0],[0],["next"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Next",""],[""],[2,2,0,0,0],["",""]],[0,"Next",0,1]],[[320.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3087,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > Back","Level Menu"],[""],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[320.75,521.8050537109375,0,384,96,0,0,1,0.5,0.5,0,0,[]],70,3088,[[1],[1],[0],[0],[""],["{\"size\": 22, \"left\": 70, \"right\": 18, \"alignY\": 60}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > DownloadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"DownloadReplay",0,1]]],[]],["Pause",4,348338920595401,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-310,678,0,274,31,0,0,1,0,0,0,0,[]],168,3089,[],[],[".ovo",0,1,"file"]],[[320,320,0,425,250,0,0,1,0.5,0.5,0,0,[]],82,3090,[],[[6,1,"",300,1,1,"",300,"overlay",1,"PauseClose",1,1]],[0,"Default",0,1]],[[214,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3091,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"",""],["PauseClose"],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[426,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3092,[[0],[1],[0],[0],["quit"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > GiveUp",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[115.5,202,0,409,118,0,0,1,0,0,0,0,[]],83,3093,[[1],[1],["pause"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Pause",4,0,57,50,0,0,-10,0,"",-1,0]],[[320.5,88,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3094,[[1],[1],[0],[0],["loadreplay"],["{\"size\": 16, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > LoadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"LoadReplay",0,1]],[[320.5,157,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3095,[[1],[0],[0],[0],["toggledebug"],["{\"size\": 15, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Debug > Toggle",""],[""],[2,2,0,0,0],["",""]],[0,"ToggleDebug",0,1]],[[78,448,0,484,134,0,0,1,0,0,0,0,[]],193,3096,[],[],[0,"Default",0,1]]],[]],["Overlay",5,620901970820499,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[432,4,0,203.0009155273438,64,0,0,1,0,0,0,0,[]],107,5488,[],[[1,0,1,0,1]],[2,2,2,2,0,1,0,0,1]],[[432,4,0,203,64,0,0,1,0,0,0,0,[]],84,3101,[[0],[0],[""],["en-us"],[0],[1],[1],["{\"alignY\": 85, \"alignX\": 45, \"size\": 28}"],[0],[1],[0],[0],[0]],[["",""],[1,0,1,0,1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",2,0,100,50,0,0,-10,0,"",-1,0]],[[88,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3102,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Pause",""],[""],[0,0,0,0,1],["",""]],[0,"Pause",0,1]],[[158,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3103,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Replay","1"],[""],[0,0,0,0,1],["",""]],[0,"Reload",0,1]]],[]],["End Game",6,163449161940555,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],85,3104,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[73,194,0,494,72,0,0,1,0,0,0,0,[]],86,3105,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],["{alignY:50}"],[0],[1],[0],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Your final time",2.5,0,50,50,0,0,-10,0,"",-1,0]],[[320,403,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3106,[[0],[1],[0],[0],[""],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Quit",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[73,243,0,494,85,0,0,1,0,0,0,0,[]],87,3108,[[0],[1],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",3,0,50,50,0,0,-10,0,"",-1,0]],[[73,318,0,494,25,0,0,1,0,0,0,0,[]],86,5480,[[1],[1],["tryagainhardmode"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Try again in hard mode!",1,0,50,50,0,0,-2,0,"",-1,0]]],[]],["Banner",7,736562891816779,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-237,-189,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,3109,[],[["overlay"]],[0,"Default",0,1]]],[]],["AdPlaying",8,414757962542772,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,-203.5,0,250,97,0,0,1,0.5,0.5,0,0,[]],125,390,[],[[6,1,"",300,1,1,"",300,"overlay",1,"",1,1],[]],[0,"Default",0,1]],[[209,-275,0,222,139,0,0,1,0,0,0,0,[]],86,391,[[1],[1],["adplaying"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","An ad is playing right now...",1.2,0,50,50,0,0,-2,0,"",-1,0]],[[-154.5756988525391,-294.3137512207031,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,5508,[],[["overlay"]],[0,"Default",0,1]]],[]]],[],[]],["Level 48",3200,5000,true,"Levels",165432698627761,[["Background",0,225469495486470,true,[255,255,255],false,0,0,1,false,false,1,0,0,[],[]],["Layer 0",1,642261180985204,true,[255,255,255],true,1,1,1,false,false,1,0,0,[[[1696,168,0,312,117,0,0,1,0,0,0,0,[[]]],61,28,[],[[1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>","48",7,0,50,0,0,0,0,0,"",-1,0]],[[0,-360,0,4152,504,0,0,1,0,0,0,0,[]],51,34,[],[[0],[1],[1,100,""]],[0,0]],[[408,152,0,64,32,0,1.570796370506287,1,0.125,0.5,0,0,[]],55,35,[[1],[400]],[[1],[300,0.2,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[2288,120,0,1864,400,0,0,1,0,0,0,0,[]],51,8935,[],[[0],[1],[1,100,""]],[0,0]],[[0,488,0,4152,280,0,0,1,0,0,0,0,[]],51,8936,[],[[0],[1],[1,100,""]],[0,0]],[[-680,424,0,60.93439102172852,60.93439102172852,0,0,1,0.5,0.5,0,0,[]],53,8937,[["Binary"],[""],[0]],[],[1,"Default",0,1]],[[496,136,0,912,400,0,0,1,0,0,0,0,[]],51,8938,[],[[0],[1],[1,100,""]],[0,0]],[[0,768,0,4152,144,0,0,1,0,0,0,0,[]],51,8939,[],[[0],[1],[1,100,""]],[0,0]],[[0,1256,0,4136,280,0,0,1,0,0,0,0,[]],51,8940,[],[[0],[1],[1,100,""]],[0,0]],[[0,1536,0,4136,144,0,0,1,0,0,0,0,[]],51,8941,[],[[0],[1],[1,100,""]],[0,0]],[[1000,1656,0,1272,1208,0,0,1,0,0,0,0,[]],51,8942,[],[[0],[1],[1,100,""]],[0,0]],[[-816,2784,0,5080,288,0,0,1,0,0,0,0,[]],51,8944,[],[[0],[1],[1,100,""]],[0,0]],[[-816,3072,0,5080,144,0,0,1,0,0,0,0,[]],51,8945,[],[[0],[1],[1,100,""]],[0,0]],[[0,3560,0,1488,488,0,0,1,0,0,0,0,[]],51,8946,[],[[0],[1],[1,100,""]],[0,0]],[[2274,376,0,28,224,0,3.141592741012573,1,0.5,0.5,0,0,[[255,255,255,0,128,255,0.01]]],62,8948,[[0],[1],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[1422,376,0,28,224,0,0,1,0.5,0.5,0,0,[[255,255,255,0,128,255,0.01]]],62,8949,[[100],[101],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[482,376,0,28,224,0,3.141592741012573,1,0.5,0.5,0,0,[[255,255,255,0,128,255,0.01]]],62,8950,[[101],[-1],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[-760,488,0,984,1192,0,0,1,0,0,0,0,[]],51,8934,[],[[0],[1],[1,100,""]],[0,0]],[[1336,880,0,760,400,0,0,1,0,0,0,0,[]],51,8951,[],[[0],[1],[1,100,""]],[0,0]],[[-56,376,0,28,224,0,0,1,0.5,0.5,0,0,[[255,255,255,0,128,255,0.01]]],62,8953,[[102],[103],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[3248,1144,0,28,224,0,3.141592741012573,1,0.5,0.5,0,0,[[255,255,255,0,128,255,0.01]]],62,8952,[[103],[102],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[238,1144,0,28,224,0,0,1,0.5,0.5,0,0,[[255,255,255,0,128,255,0.01]]],62,8954,[[1],[0],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[488,232,0,64,32,0,3.141592741012573,1,0.125,0.5,0,0,[]],55,8955,[[1],[400]],[[1],[300,0.2,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[464,176,0,64,32,0,2.356194496154785,1,0.125,0.5,0,0,[]],55,8956,[[1],[400]],[[1],[300,0.2,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[424,136,0,80,24,0,0,1,0,0,0,0,[]],51,8957,[],[[0],[1],[1,100,""]],[0,0]],[[480,160,0,24,56,0,0,1,0,0,0,0,[]],51,8958,[],[[0],[1],[1,100,""]],[0,0]],[[468.6568603515625,147.3431701660156,0,32,16,0,0.7853981852531433,1,0,0,0,0,[]],51,8959,[],[[0],[1],[1,100,""]],[0,0]],[[-1104,1648,0,1272,1208,0,0,1,0,0,0,0,[]],51,8943,[],[[0],[1],[1,100,""]],[0,0]],[[3080,1640,0,1272,1208,0,0,1,0,0,0,0,[]],51,8960,[],[[0],[1],[1,100,""]],[0,0]],[[-824,3216,0,1056,376,0,0,1,0,0,0,0,[]],51,8961,[],[[0],[1],[1,100,""]],[0,0]],[[3016,3192,0,1456,376,0,0,1,0,0,0,0,[]],51,8962,[],[[0],[1],[1,100,""]],[0,0]],[[2536,4360,0,1320,656,0,0,1,0.5,0.5,0,0,[]],164,9997,[],[],[0,"Default",0,1]],[[1712,3560,0,1488,488,0,0,1,0,0,0,0,[]],51,8964,[],[[0],[1],[1,100,""]],[0,0]],[[760,1936,0,160,520,0,0,1,0,0,0,0,[]],51,8963,[],[[0],[1],[1,100,""]],[0,0]],[[2880,1912,0,168,520,0,0,1,0,0,0,0,[]],51,8965,[],[[0],[1],[1,100,""]],[0,0]],[[3544,832,0,592,520,0,0,1,0,0,0,0,[]],51,8966,[],[[0],[1],[1,100,""]],[0,0]],[[1600,3760,0,28,224,0,-1.570796370506287,1,0.5,0.5,0,0,[[255,255,255,0,128,255,0.01]]],62,8968,[[200],[201],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[1481.514770507813,3774,0,240,274,0,0,1,0,0,0,0,[]],51,8969,[],[[0],[1],[1,100,""]],[0,0]],[[462,3448,0,28,224,0,0,1,0.5,0.5,0,0,[[255,255,255,0,128,255,0.01]]],62,8970,[[107],[106],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[2672,3448,0,28,224,0,3.141592741012573,1,0.5,0.5,0,0,[[255,255,255,0,128,255,0.01]]],62,8971,[[5],[4],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[1224,926,0,28,224,0,1.570796370506287,1,0.5,0.5,0,0,[[255,255,255,0,128,255,0.01]]],62,8973,[[2],[3],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[2110,1024,0,28,224,0,0,1,0.5,0.5,0,0,[[255,255,255,0,128,255,0.01]]],62,8974,[[104],[105],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[2286,1792,0,28,224,0,0,1,0.5,0.5,0,0,[[255,255,255,0,128,255,0.01]]],62,8975,[[105],[-1],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[840,1694,0,28,224,0,1.570796370506287,1,0.5,0.5,0,0,[[255,255,255,0,128,255,0.01]]],62,8976,[[3],[2],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[3066,2672,0,28,224,0,3.141592741012573,1,0.5,0.5,0,0,[[255,255,255,0,128,255,0.01]]],62,8977,[[106],[107],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[182,2672,0,28,224,0,0,1,0.5,0.5,0,0,[[255,255,255,0,128,255,0.01]]],62,8978,[[4],[5],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[1600,4062,0,28,224,0,1.570796370506287,1,0.5,0.5,0,0,[[255,255,255,0,128,255,0.01]]],62,8979,[[201],[200],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[1480,4048,0,8,312,0,0,1,0,0,0,0,[]],51,8980,[],[[0],[1],[1,100,""]],[0,0]],[[1712,4048,0,8,312,0,0,1,0,0,0,0,[]],51,8981,[],[[0],[1],[1,100,""]],[0,0]],[[1720,4048,0,160,120,0,0,1,0,0,0,0,[]],51,8982,[],[[0],[1],[1,100,""]],[0,0]],[[1320,4048,0,160,120,0,0,1,0,0,0,0,[]],51,8983,[],[[0],[1],[1,100,""]],[0,0]],[[1608,4901,0,97,199,0,0,1,0.5257731676101685,0.4974874258041382,0,0,[]],44,8988,[],[[1]],[0,"Default",0,1]],[[1488,4584,0,224,192,0,0,1,0,0,0,0,[]],51,8947,[],[[0],[1],[1,100,""]],[0,0]],[[1488,4776,0,224,224,0,0,1,0,0,0,0,[]],51,8986,[],[[0],[1],[1,100,""]],[0,0]],[[1484,4958,0,8,64,0,3.141592741012573,1,0.5,0.5,0,0,[[255,255,255,0,128,255,0.01]]],62,8984,[[300],[301],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[1716,4958,0,8,64,0,0,1,0.5,0.5,0,0,[[255,255,255,0,128,255,0.01]]],62,8993,[[301],[300],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[1400,4640,0,32,32,0,0,1,0.5,0.5,0,0,[]],49,8989,[[1],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[0,"Default",0,1]],[[1792,4640,0,32,32,0,0,1,0.5,0.5,0,0,[]],49,8991,[[2],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[0,"Default",0,1]],[[1712,4680,0,1488,888,0,0,1,0,0,0,0,[]],67,8992,[],[[1]],[0,0]],[[0,4680,0,1488,888,0,0,1,0,0,0,0,[]],67,8985,[],[[1]],[0,0]],[[1600,4880,0,280,256,0,-1.570796370506287,1,0.5,0.5,0,0,[]],50,8987,[[-1],[0],[0],[0],[0],[1],[1]],[[0],[1,0,1,1,"F 320",100,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1680,4824,0,56,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,8990,[[1],[0],[0],[0],[0],[2],[1]],[[0],[1,0,1,1,"F 224",100,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1483,4968,0,56,3.3487548828125,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,8995,[[1],[0],[0],[0],[0],[2],[1]],[[0],[1,0,1,1,"F 224",100,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1715,4967,0,56,3.3487548828125,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,8996,[[1],[0],[0],[0],[0],[2],[1]],[[0],[1,0,1,1,"F 224",100,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1684,4506,0,56,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,8994,[[1],[0],[0],[0],[0],[2],[1]],[[0],[1,0,1,1,"F 224",100,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1484,4650,0,56,3.3487548828125,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,8997,[[1],[0],[0],[0],[0],[2],[1]],[[0],[1,0,1,1,"F 500",300,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1716,4650,0,56,3.3487548828125,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,8998,[[1],[0],[0],[0],[0],[2],[1]],[[0],[1,0,1,1,"F 500",300,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1488,5000,0,224,568,0,0,1,0,0,0,0,[]],67,8999,[],[[1]],[0,0]],[[3008,1128,0,32,32,0,0.7853981852531433,1,0.5,0.5,0,0,[]],47,9000,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2984,1152,0,88,88,0,0,1,0.5,0.5,0,0,[]],50,9001,[[-1],[0],[0],[0],[0],[-2],[1]],[[0],[1,1,1,0,"R 90 ; W 1; R 90 ; W 1; R 90 ; W 1; R 90 ; W 1",175,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[3000,1136,0,16,16,0,0,1,0.5,0.5,0,0,[]],50,9002,[[1],[1],[10],[0],[0],[-2],[1]],[[0],[1,1,0,0,"L 45 ; F 50; W 1.5; B 50 ; R 45; W 1",175,0,0,360,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[2984,1200,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9003,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2984,1104,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9004,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3032,1152,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9005,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2936,1152,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9006,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3008,1176,0,32,32,0,2.356194496154785,1,0.5,0.5,0,0,[]],47,9007,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2960,1176,0,32,32,0,-2.356194734573364,1,0.5,0.5,0,0,[]],47,9008,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2960,1128,0,32,32,0,-0.7853984832763672,1,0.5,0.5,0,0,[]],47,9009,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2968,1136,0,16,16,0,0,1,0.5,0.5,0,0,[]],50,9010,[[1],[1],[10],[0],[0],[-2],[1]],[[0],[1,1,0,0,"R 45 ; B 50; W 1.5; F 50 ; L 45; W 1",175,0,0,360,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[3000,1168,0,16,16,0,0,1,0.5,0.5,0,0,[]],50,9011,[[1],[1],[10],[0],[0],[-2],[1]],[[0],[1,1,0,0,"L 135 ; B 50; W 1.5; F 50 ; R 135; W 1",175,0,0,1080,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[2968,1168,0,16,16,0,0,1,0.5,0.5,0,0,[]],50,9012,[[1],[1],[10],[0],[0],[-2],[1]],[[0],[1,1,0,0,"L 45 ; B 50; W 1.5; F 50 ; R 45 ; W 1",175,0,0,360,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[2704,1128,0,32,32,0,0.7853981852531433,1,0.5,0.5,0,0,[]],47,9013,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2680,1152,0,88,88,0,0,1,0.5,0.5,0,0,[]],50,9014,[[-1],[0],[0],[0],[0],[-2],[1]],[[0],[1,1,1,0,"R 90 ; W 1; R 90 ; W 1; R 90 ; W 1; R 90 ; W 1",175,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[2696,1136,0,16,16,0,0,1,0.5,0.5,0,0,[]],50,9016,[[1],[1],[10],[0],[0],[-2],[1]],[[0],[1,1,0,0,"L 45 ; F 50; W 1.5; B 50 ; R 45; W 1",175,0,0,360,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[2680,1200,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9018,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2680,1104,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9019,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2728,1152,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9020,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2632,1152,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9021,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2704,1176,0,32,32,0,2.356194496154785,1,0.5,0.5,0,0,[]],47,9022,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2656,1176,0,32,32,0,-2.356194734573364,1,0.5,0.5,0,0,[]],47,9023,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2656,1128,0,32,32,0,-0.7853984832763672,1,0.5,0.5,0,0,[]],47,9024,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2664,1136,0,16,16,0,0,1,0.5,0.5,0,0,[]],50,9025,[[1],[1],[10],[0],[0],[-2],[1]],[[0],[1,1,0,0,"R 45 ; B 50; W 1.5; F 50 ; L 45; W 1",175,0,0,360,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[2696,1168,0,16,16,0,0,1,0.5,0.5,0,0,[]],50,9026,[[1],[1],[10],[0],[0],[-2],[1]],[[0],[1,1,0,0,"L 135 ; B 50; W 1.5; F 50 ; R 135; W 1",175,0,0,1080,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[2664,1168,0,16,16,0,0,1,0.5,0.5,0,0,[]],50,9027,[[1],[1],[10],[0],[0],[-2],[1]],[[0],[1,1,0,0,"L 45 ; B 50; W 1.5; F 50 ; R 45 ; W 1",175,0,0,360,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[2464,1016,0,88,88,0,0,1,0.5,0.5,0,0,[]],50,9028,[[-1],[0],[0],[0],[0],[-2],[1]],[[0],[1,1,1,0,"R 360",175,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[2464,1016,0,40,40,0,0,1,0.5,0.5,0,0,[]],50,9029,[[1],[1],[10],[0],[0],[-2],[1]],[[0],[1,1,1,0,"L 360",175,0,0,360,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[2464,1064,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9030,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2464,968,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9031,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2512,1016,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9032,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2416,1016,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9033,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2488,992,0,32,32,0,0.7853981852531433,1,0.5,0.5,0,0,[]],47,9034,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2488,1040,0,32,32,0,2.356194496154785,1,0.5,0.5,0,0,[]],47,9035,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2440,1040,0,32,32,0,-2.356194734573364,1,0.5,0.5,0,0,[]],47,9036,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2440,992,0,32,32,0,-0.7853984832763672,1,0.5,0.5,0,0,[]],47,9037,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2312,1192,0,88,88,0,0,1,0.5,0.5,0,0,[]],50,9038,[[-1],[0],[0],[0],[0],[-2],[1]],[[0],[1,1,1,0,"R 360",175,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[2312,1192,0,40,40,0,0,1,0.5,0.5,0,0,[]],50,9039,[[1],[1],[10],[0],[0],[-2],[1]],[[0],[1,1,1,0,"L 360",175,0,0,360,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[2312,1240,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9040,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2312,1144,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9041,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2360,1192,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9042,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2264,1192,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9043,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2336,1168,0,32,32,0,0.7853981852531433,1,0.5,0.5,0,0,[]],47,9044,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2336,1216,0,32,32,0,2.356194496154785,1,0.5,0.5,0,0,[]],47,9045,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2288,1216,0,32,32,0,-2.356194734573364,1,0.5,0.5,0,0,[]],47,9046,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2288,1168,0,32,32,0,-0.7853984832763672,1,0.5,0.5,0,0,[]],47,9047,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2816,1240,0,80,8,0,0,1,0,0,0,0,[]],45,9048,[],[[0],[1]],[0,0]],[[2856,1232,0,16,16,0,-1.570796489715576,1,0.5,0.5,0,0,[]],50,9049,[[0],[0],[10],[0],[0],[4],[1]],[[0],[1,0,1,1,"F 120",175,0,0,1080,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[2952,1088,0,16,336,0,0,1,0.5,0.5,0,0,[]],49,9050,[[4],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[1,"Default",0,1]],[[2584,1240,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9051,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[2616,1240,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9052,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[2648,1240,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9053,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2680,1240,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9054,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2712,1240,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9055,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2744,1240,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9056,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[2776,1240,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9057,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[2584,928,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9058,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2616,928,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9059,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2648,928,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9060,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2680,928,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9061,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2712,928,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9062,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2744,928,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9063,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2776,928,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9064,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2112,1240,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9065,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[2144,1240,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9066,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[2352,1968,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9067,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2352,2000,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9068,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2352,2032,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9069,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2352,2064,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9070,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2352,2096,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9071,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2352,2128,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9072,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2352,2160,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9073,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2352,2192,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9074,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2368,1952,0,96,256,0,0,1,0,0,0,0,[]],51,9075,[],[[0],[1],[1,100,""]],[0,0]],[[2480,1968,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9076,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2480,2000,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9077,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2480,2032,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9078,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2480,2064,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9079,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2480,2096,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9081,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2480,2128,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9082,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2480,2160,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9083,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2384,1936,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9085,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2448,1936,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9086,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2416,1936,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9087,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2272,2328,0,192,8,0,0,1,0,0,0,0,[]],51,9088,[],[[0],[1],[1,100,""]],[0,0]],[[2448,2312,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9089,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2384,2224,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9090,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2352,1792,0,80,224,0,0,1,0.5,0.5,0,0,[]],43,9091,[[0.001],[0]],[[0]],[1,"Default",0,1]],[[2656,2312,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,8967,[[0.9],[0]],[[0]],[0,"Default",0,1]],[[2712,2088,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9092,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2712,2120,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9093,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2712,2152,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9095,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2712,2184,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9096,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2712,2216,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9097,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2712,2248,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9098,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2712,2280,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9099,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2712,2312,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9100,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2728,1816,0,120,512,0,0,1,0,0,0,0,[]],51,9101,[],[[0],[1],[1,100,""]],[0,0]],[[2712,1864,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9103,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2712,1896,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9104,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2712,1928,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9105,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2712,1960,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9106,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2712,1992,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9107,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2712,2024,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9108,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2712,2056,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9109,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2368,2200,0,248,8,0,0,1,0,0,0,0,[]],51,9084,[],[[0],[1],[1,100,""]],[0,0]],[[2504,2184,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9110,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2536,2184,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9111,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2568,2184,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9112,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2600,2184,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9113,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2704,1696,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9720,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2736,1696,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9721,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2768,1696,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9722,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2800,1696,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9723,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2832,1696,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9724,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2864,1696,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9725,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2864,2312,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9726,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2848,1912,0,32,8,0,0,1,0,0,0,0,[]],45,9727,[],[[0],[1]],[0,0]],[[3040,1912,0,40,8,0,0,1,0,0,0,0,[]],45,9728,[],[[0],[1]],[0,0]],[[2824,2520,0,256,8,0,0,1,0,0,0,0,[]],51,9729,[],[[0],[1],[1,100,""]],[0,0]],[[2272,2336,0,192,456,0,0,1,0,0,0,0,[]],51,9730,[],[[0],[1],[1,100,""]],[0,0]],[[2744,2352,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9731,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2744,2384,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9732,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2744,2416,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9733,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2744,2448,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9734,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2744,2480,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9735,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2744,2512,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9736,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2744,2544,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9737,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2744,2576,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9738,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2744,2608,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9739,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2744,2640,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9740,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2744,2672,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9741,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2744,2704,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9742,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2743,2736,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9743,[[0],[0]],[[0],[1]],[0,"Default",0,0]],[[2743,2768,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9744,[[0],[0]],[[0],[1]],[0,"Default",0,0]],[[2496,2336,0,232,384,0,0,1,0,0,0,0,[]],51,9745,[],[[0],[1],[1,100,""]],[0,0]],[[2496,2328,0,384,8,0,0,1,0,0,0,0,[]],51,9746,[],[[0],[1],[1,100,""]],[0,0]],[[2464,2328,0,32,8,0,0,1,0,0,0,0,[]],45,9747,[],[[0],[1]],[0,0]],[[2680,2752,0,64,64,0,0,1,0.5,0.5,0,0,[]],60,8932,[["level48"]],[[1],[400,-200,800,0,0,0],[0,0,0,1,1]],[0,"Default",0,1]],[[1835.15966796875,2627.44775390625,0,264,464,0,0,1,-2.380000114440918,0.6399999856948853,0,0,[]],159,9748,[],[[0]],[0,"Default",0,1]],[[2688,1816,0,160,8,0,0,1,0,0,0,0,[]],51,9102,[],[[0],[1],[1,100,""]],[0,0]],[[1128,1160,0,32,32,0,0.7853981852531433,1,0.5,0.5,0,0,[]],47,9749,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1104,1184,0,88,88,0,0,1,0.5,0.5,0,0,[]],50,9750,[[-1],[0],[0],[0],[0],[-2],[1]],[[0],[1,1,1,0,"R 90 ; W 1; R 90 ; W 1; R 90 ; W 1; R 90 ; W 1",175,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1120,1168,0,16,16,0,0,1,0.5,0.5,0,0,[]],50,9751,[[1],[1],[10],[0],[0],[-2],[1]],[[0],[1,1,0,0,"L 45 ; F 50; W 1.5; B 50 ; R 45; W 1",175,0,0,360,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1104,1232,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9752,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1104,1136,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9753,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1152,1184,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9754,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1056,1184,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9755,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1128,1208,0,32,32,0,2.356194496154785,1,0.5,0.5,0,0,[]],47,9756,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1080,1208,0,32,32,0,-2.356194734573364,1,0.5,0.5,0,0,[]],47,9757,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1080,1160,0,32,32,0,-0.7853984832763672,1,0.5,0.5,0,0,[]],47,9758,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1088,1168,0,16,16,0,0,1,0.5,0.5,0,0,[]],50,9759,[[1],[1],[10],[0],[0],[-2],[1]],[[0],[1,1,0,0,"R 45 ; B 50; W 1.5; F 50 ; L 45; W 1",175,0,0,360,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1120,1200,0,16,16,0,0,1,0.5,0.5,0,0,[]],50,9760,[[1],[1],[10],[0],[0],[-2],[1]],[[0],[1,1,0,0,"L 135 ; B 50; W 1.5; F 50 ; R 135; W 1",175,0,0,1080,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1088,1200,0,16,16,0,0,1,0.5,0.5,0,0,[]],50,9761,[[1],[1],[10],[0],[0],[-2],[1]],[[0],[1,1,0,0,"L 45 ; B 50; W 1.5; F 50 ; R 45 ; W 1",175,0,0,360,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[704,1064,0,32,32,0,0.7853981852531433,1,0.5,0.5,0,0,[]],47,9762,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[680,1088,0,88,88,0,0,1,0.5,0.5,0,0,[]],50,9763,[[-1],[0],[0],[0],[0],[-2],[1]],[[0],[1,1,1,0,"R 90 ; W 1; R 90 ; W 1; R 90 ; W 1; R 90 ; W 1",175,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[696,1072,0,16,16,0,0,1,0.5,0.5,0,0,[]],50,9764,[[1],[1],[10],[0],[0],[-2],[1]],[[0],[1,1,0,0,"L 45 ; F 50; W 1.5; B 50 ; R 45; W 1",175,0,0,360,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[680,1136,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9765,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[680,1040,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9766,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[728,1088,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9767,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[632,1088,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9768,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[704,1112,0,32,32,0,2.356194496154785,1,0.5,0.5,0,0,[]],47,9769,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[656,1112,0,32,32,0,-2.356194734573364,1,0.5,0.5,0,0,[]],47,9770,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[656,1064,0,32,32,0,-0.7853984832763672,1,0.5,0.5,0,0,[]],47,9771,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[664,1072,0,16,16,0,0,1,0.5,0.5,0,0,[]],50,9772,[[1],[1],[10],[0],[0],[-2],[1]],[[0],[1,1,0,0,"R 45 ; B 50; W 1.5; F 50 ; L 45; W 1",175,0,0,360,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[696,1104,0,16,16,0,0,1,0.5,0.5,0,0,[]],50,9773,[[1],[1],[10],[0],[0],[-2],[1]],[[0],[1,1,0,0,"L 135 ; B 50; W 1.5; F 50 ; R 135; W 1",175,0,0,1080,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[664,1104,0,16,16,0,0,1,0.5,0.5,0,0,[]],50,9774,[[1],[1],[10],[0],[0],[-2],[1]],[[0],[1,1,0,0,"L 45 ; B 50; W 1.5; F 50 ; R 45 ; W 1",175,0,0,360,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[496,984,0,88,88,0,0,1,0.5,0.5,0,0,[]],50,9775,[[-1],[0],[0],[0],[0],[-2],[1]],[[0],[1,1,1,0,"R 360",175,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[496,984,0,40,40,0,0,1,0.5,0.5,0,0,[]],50,9776,[[1],[1],[10],[0],[0],[-2],[1]],[[0],[1,1,1,0,"L 360",175,0,0,360,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[496,1032,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9777,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[496,936,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9778,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[544,984,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9779,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[448,984,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9780,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[520,960,0,32,32,0,0.7853981852531433,1,0.5,0.5,0,0,[]],47,9781,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[520,1008,0,32,32,0,2.356194496154785,1,0.5,0.5,0,0,[]],47,9782,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[472,1008,0,32,32,0,-2.356194734573364,1,0.5,0.5,0,0,[]],47,9783,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[472,960,0,32,32,0,-0.7853984832763672,1,0.5,0.5,0,0,[]],47,9784,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[496,1184,0,88,88,0,0,1,0.5,0.5,0,0,[]],50,9785,[[-1],[0],[0],[0],[0],[-2],[1]],[[0],[1,1,1,0,"R 360",175,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[496,1184,0,40,40,0,0,1,0.5,0.5,0,0,[]],50,9786,[[1],[1],[10],[0],[0],[-2],[1]],[[0],[1,1,1,0,"L 360",175,0,0,360,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[496,1232,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9787,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[496,1136,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9788,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[544,1184,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9789,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[448,1184,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9790,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[520,1160,0,32,32,0,0.7853981852531433,1,0.5,0.5,0,0,[]],47,9791,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[520,1208,0,32,32,0,2.356194496154785,1,0.5,0.5,0,0,[]],47,9792,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[472,1208,0,32,32,0,-2.356194734573364,1,0.5,0.5,0,0,[]],47,9793,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[472,1160,0,32,32,0,-0.7853984832763672,1,0.5,0.5,0,0,[]],47,9794,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[944,1247,0,80,8,0,0,1,0,0,0,0,[]],45,9795,[],[[0],[1]],[0,0]],[[984,1241,0,16,16,0,-1.570796489715576,1,0.5,0.5,0,0,[]],50,9796,[[0],[0],[10],[0],[0],[4],[1]],[[0],[1,0,1,1,"F 272",125,0,0,1080,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[912,1080,0,16,312,0,0,1,0.5,0.5,0,0,[]],49,9797,[[4],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[1,"Default",0,1]],[[712,1240,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9798,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[744,1240,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9799,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[776,1240,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9800,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[808,1240,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9801,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[840,1240,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9802,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[872,1240,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9803,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[1128,1032,0,32,32,0,0.7853981852531433,1,0.5,0.5,0,0,[]],47,9804,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1104,1056,0,88,88,0,0,1,0.5,0.5,0,0,[]],50,9805,[[-1],[0],[0],[0],[0],[-2],[1]],[[0],[1,1,1,0,"R 90 ; W 1; R 90 ; W 1; R 90 ; W 1; R 90 ; W 1",175,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1120,1040,0,16,16,0,0,1,0.5,0.5,0,0,[]],50,9806,[[1],[1],[10],[0],[0],[-2],[1]],[[0],[1,1,0,0,"L 45 ; F 50; W 1.5; B 50 ; R 45; W 1",175,0,0,360,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1104,1104,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9807,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1104,1008,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9808,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1152,1056,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9809,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1056,1056,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9810,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1128,1080,0,32,32,0,2.356194496154785,1,0.5,0.5,0,0,[]],47,9811,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1080,1080,0,32,32,0,-2.356194734573364,1,0.5,0.5,0,0,[]],47,9812,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1080,1032,0,32,32,0,-0.7853984832763672,1,0.5,0.5,0,0,[]],47,9813,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1088,1040,0,16,16,0,0,1,0.5,0.5,0,0,[]],50,9814,[[1],[1],[10],[0],[0],[-2],[1]],[[0],[1,1,0,0,"R 45 ; B 50; W 1.5; F 50 ; L 45; W 1",175,0,0,360,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1120,1072,0,16,16,0,0,1,0.5,0.5,0,0,[]],50,9815,[[1],[1],[10],[0],[0],[-2],[1]],[[0],[1,1,0,0,"L 135 ; B 50; W 1.5; F 50 ; R 135; W 1",175,0,0,1080,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1088,1072,0,16,16,0,0,1,0.5,0.5,0,0,[]],50,9816,[[1],[1],[10],[0],[0],[-2],[1]],[[0],[1,1,0,0,"L 45 ; B 50; W 1.5; F 50 ; R 45 ; W 1",175,0,0,360,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[288,1936,0,480,8,0,0,1,0,0,0,0,[]],51,9817,[],[[0],[1],[1,100,""]],[0,0]],[[160,1936,0,64,512,0,0,1,0,0,0,0,[]],51,9818,[],[[0],[1],[1,100,""]],[0,0]],[[936,1952,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9819,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[936,2192,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9820,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[936,2440,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9821,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[984,2064,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9822,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[984,2312,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9823,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[224,1936,0,96,8,0,0,1,0,0,0,0,[]],45,9824,[],[[0],[1]],[0,0]],[[176,1888,0,64,32,0,0,1,0.125,0.5,0,0,[]],55,9825,[[1],[-1]],[[1],[300,1,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[176,1832,0,64,32,0,0,1,0.125,0.5,0,0,[]],55,9826,[[1],[-1]],[[1],[300,1,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[176,1784,0,64,32,0,0,1,0.125,0.5,0,0,[]],55,9827,[[1],[-1]],[[1],[300,1,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[896,2768,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9828,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[536,2760,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9834,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[568,2752,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9835,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[600,2744,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9836,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[536,2648,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9839,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[568,2640,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9840,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[600,2632,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9841,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[536,2696,0,160,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,9842,[[-1],[0],[0],[0],[0],[10],[1]],[[0],[1,1,1,0,"F 120 ; W 1 ; B 120; W 1",120,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[600,2688,0,152,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,9843,[[-1],[0],[0],[0],[0],[10],[1]],[[0],[1,1,1,0,"F 120 ; W 1 ; B 120; W 1",120,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[520,2776,0,32,168,0,0,1,0,0,0,0,[]],51,9844,[],[[0],[1],[1,100,""]],[0,0]],[[584,2760,0,32,168,0,0,1,0,0,0,0,[]],51,9845,[],[[0],[1],[1,100,""]],[0,0]],[[520,2456,0,32,176,0,0,1,0,0,0,0,[]],51,9846,[],[[0],[1],[1,100,""]],[0,0]],[[584,2448,0,32,168,0,0,1,0,0,0,0,[]],51,9847,[],[[0],[1],[1,100,""]],[0,0]],[[568,2696,0,160,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],50,9849,[[-1],[0],[0],[0],[0],[10],[1]],[[0],[1,1,1,0,"F 120 ; W 1 ; B 120; W 1",120,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[552,2456,0,32,168,0,0,1,0,0,0,0,[]],51,9852,[],[[0],[1],[1,100,""]],[0,0]],[[552,2768,0,32,168,0,0,1,0,0,0,0,[]],51,9855,[],[[0],[1],[1,100,""]],[0,0]],[[488,2784,0,32,168,0,0,1,0,0,0,0,[]],51,9856,[],[[0],[1],[1,100,""]],[0,0]],[[288,1936,0,480,520,0,0,1,0,0,0,0,[]],51,9829,[],[[0],[1],[1,100,""]],[0,0]],[[208,2448,0,96,8,0,0,1,0,0,0,0,[]],45,9830,[],[[0],[1]],[0,0]],[[160,2448,0,64,8,0,0,1,0,0,0,0,[]],51,9831,[],[[0],[1],[1,100,""]],[0,0]],[[864,2768,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9857,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[832,2768,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9858,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[264,3280,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,37,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[264,3312,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9833,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[264,3344,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9838,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[264,3376,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9850,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[264,3408,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9853,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[264,3440,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9854,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[264,3472,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9859,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[264,3504,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9860,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[280,3264,0,96,256,0,0,1,0,0,0,0,[]],51,9861,[],[[0],[1],[1,100,""]],[0,0]],[[392,3280,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9862,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[392,3312,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9863,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[392,3344,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9864,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[392,3376,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9865,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[392,3408,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9866,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[392,3440,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9867,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[392,3472,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9868,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[296,3248,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9869,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[360,3248,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9870,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[328,3248,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9871,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[392,3504,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9872,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[296,3536,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9873,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[360,3536,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9874,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[328,3536,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9875,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[328,3392,0,112,272,0,0,1,0.5,0.5,0,0,[]],50,9876,[[-1],[0],[0],[0],[0],[6],[1]],[[0],[1,0,1,1,"F 1192",700,600,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[544,3388,0,128,344,0,0,1,0.5,0.5,0,0,[]],49,8972,[[6],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[1,"Default",0,1]],[[2800,3288,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9877,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2800,3320,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9878,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2800,3352,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9879,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2800,3384,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9880,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2800,3416,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9881,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2800,3448,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9882,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2800,3480,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9883,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2800,3512,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9884,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2816,3272,0,96,256,0,0,1,0,0,0,0,[]],51,9885,[],[[0],[1],[1,100,""]],[0,0]],[[2928,3288,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9886,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2928,3320,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9887,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2928,3352,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9888,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2928,3384,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9889,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2928,3416,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9890,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2928,3448,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9891,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2928,3480,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9892,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2832,3256,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9893,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2896,3256,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9894,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2864,3256,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9895,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2928,3512,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9896,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2832,3544,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9897,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2896,3544,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9898,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2864,3544,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9899,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2864,3400,0,112,272,0,3.141592741012573,1,0.5,0.5,0,0,[]],50,9900,[[-1],[0],[0],[0],[0],[6],[1]],[[0],[1,0,1,1,"F 1192",700,600,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[2576,3392,0,128,344,0,0,1,0.5,0.5,0,0,[]],49,9901,[[6],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[1,"Default",0,1]],[[1488,4584,0,8,272,0,1.570796370506287,1,0,0,0,0,[]],51,9832,[],[[0],[1],[1,100,""]],[0,0]],[[1888,4584,0,8,184,0,1.570796370506287,1,0,0,0,0,[]],51,9837,[],[[0],[1],[1,100,""]],[0,0]],[[608,4584,0,9,96,0,0,1,0,0,0,0,[]],48,9848,[],[[0],[1]],[0,0]],[[1328,4568,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,9902,[[0.8],[0]],[[0]],[0,"Default",0,1]],[[0,4048,0,8,640,0,0,1,0,0,0,0,[]],51,9903,[],[[0],[1],[1,100,""]],[0,0]],[[504,4040,0,8,312,0,0,1,0,0,0,0,[]],51,9904,[],[[0],[1],[1,100,""]],[0,0]],[[1232,4568,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9905,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1200,4520,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9906,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1168,4472,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9907,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1136,4424,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9908,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1104,4360,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9910,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1072,4320,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9911,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[912,4208,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9912,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1040,4304,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9913,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[880,4184,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9914,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[896,4200,0,8,32,0,1.570796370506287,1,0,0,0,0,[]],51,9909,[],[[0],[1],[1,100,""]],[0,0]],[[1216,4536,0,56,32,0,1.570796370506287,1,0,0,0,0,[]],51,9915,[],[[0],[1],[1,100,""]],[0,0]],[[1184,4488,0,104,32,0,1.570796370506287,1,0,0,0,0,[]],51,9916,[],[[0],[1],[1,100,""]],[0,0]],[[1152,4440,0,152,32,0,1.570796370506287,1,0,0,0,0,[]],51,9917,[],[[0],[1],[1,100,""]],[0,0]],[[1120,4376,0,152,32,0,1.570796370506287,1,0,0,0,0,[]],51,9918,[],[[0],[1],[1,100,""]],[0,0]],[[1088,4336,0,152,32,0,1.570796370506287,1,0,0,0,0,[]],51,9919,[],[[0],[1],[1,100,""]],[0,0]],[[1056,4320,0,152,32,0,1.570796370506287,1,0,0,0,0,[]],51,9920,[],[[0],[1],[1,100,""]],[0,0]],[[1024,4304,0,168,32,0,1.570796370506287,1,0,0,0,0,[]],51,9921,[],[[0],[1],[1,100,""]],[0,0]],[[992,4280,0,192,32,0,1.570796370506287,1,0,0,0,0,[]],51,9922,[],[[0],[1],[1,100,""]],[0,0]],[[960,4248,0,224,32,0,1.570796370506287,1,0,0,0,0,[]],51,9924,[],[[0],[1],[1,100,""]],[0,0]],[[928,4224,0,248,32,0,1.570796370506287,1,0,0,0,0,[]],51,9925,[],[[0],[1],[1,100,""]],[0,0]],[[896,4208,0,264,32,0,1.570796370506287,1,0,0,0,0,[]],51,9926,[],[[0],[1],[1,100,""]],[0,0]],[[832,4256,0,216,32,0,1.570796370506287,1,0,0,0,0,[]],51,9927,[],[[0],[1],[1,100,""]],[0,0]],[[864,4224,0,248,32,0,1.570796370506287,1,0,0,0,0,[]],51,9928,[],[[0],[1],[1,100,""]],[0,0]],[[800,4288,0,184,32,0,1.570796370506287,1,0,0,0,0,[]],51,9929,[],[[0],[1],[1,100,""]],[0,0]],[[768,4320,0,168,32,0,1.570796370506287,1,0,0,0,0,[]],51,9930,[],[[0],[1],[1,100,""]],[0,0]],[[736,4384,0,152,32,0,1.570796370506287,1,0,0,0,0,[]],51,9931,[],[[0],[1],[1,100,""]],[0,0]],[[944,4232,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9923,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[976,4264,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9932,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1008,4288,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9933,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[848,4208,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9934,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[816,4240,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9935,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[784,4272,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9936,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[752,4304,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9937,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[720,4368,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9938,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[656,4464,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9939,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[624,4512,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9940,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[688,4416,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9941,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[640,4528,0,56,32,0,1.570796370506287,1,0,0,0,0,[]],51,9942,[],[[0],[1],[1,100,""]],[0,0]],[[672,4480,0,104,32,0,1.570796370506287,1,0,0,0,0,[]],51,9943,[],[[0],[1],[1,100,""]],[0,0]],[[704,4432,0,152,32,0,1.570796370506287,1,0,0,0,0,[]],51,9944,[],[[0],[1],[1,100,""]],[0,0]],[[88,4152,0,8,424,0,0,1,0,0,0,0,[]],51,9945,[],[[0],[1],[1,100,""]],[0,0]],[[416,4152,0,8,328,0,1.570796370506287,1,0,0,0,0,[]],51,9946,[],[[0],[1],[1,100,""]],[0,0]],[[504,4344,0,8,328,0,1.570796370506287,1,0,0,0,0,[]],51,9947,[],[[0],[1],[1,100,""]],[0,0]],[[104,4552,0,64,32,0,0,1,0.125,0.5,0,0,[]],55,9948,[[1],[150]],[[1],[300,1,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[336,4256,0,32,32,0,0.7853981852531433,1,0.5,0.5,0,0,[]],47,9949,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[312,4280,0,88,88,0,0,1,0.5,0.5,0,0,[]],50,9950,[[-1],[0],[0],[0],[0],[-2],[1]],[[0],[1,1,1,0,"R 90 ; W 1; R 90 ; W 1; R 90 ; W 1; R 90 ; W 1",175,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[328,4264,0,16,16,0,0,1,0.5,0.5,0,0,[]],50,9951,[[1],[1],[10],[0],[0],[-2],[1]],[[0],[1,1,0,0,"L 45 ; F 50; W 1.5; B 50 ; R 45; W 1",175,0,0,360,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[312,4328,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9952,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[312,4232,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9953,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[360,4280,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9954,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[264,4280,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9955,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[336,4304,0,32,32,0,2.356194496154785,1,0.5,0.5,0,0,[]],47,9956,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[288,4304,0,32,32,0,-2.356194734573364,1,0.5,0.5,0,0,[]],47,9957,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[288,4256,0,32,32,0,-0.7853984832763672,1,0.5,0.5,0,0,[]],47,9958,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[296,4264,0,16,16,0,0,1,0.5,0.5,0,0,[]],50,9959,[[1],[1],[10],[0],[0],[-2],[1]],[[0],[1,1,0,0,"R 45 ; B 50; W 1.5; F 50 ; L 45; W 1",175,0,0,360,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[328,4296,0,16,16,0,0,1,0.5,0.5,0,0,[]],50,9960,[[1],[1],[10],[0],[0],[-2],[1]],[[0],[1,1,0,0,"L 135 ; B 50; W 1.5; F 50 ; R 135; W 1",175,0,0,1080,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[296,4296,0,16,16,0,0,1,0.5,0.5,0,0,[]],50,9961,[[1],[1],[10],[0],[0],[-2],[1]],[[0],[1,1,0,0,"L 45 ; B 50; W 1.5; F 50 ; R 45 ; W 1",175,0,0,360,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[24,4656,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9962,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[40,4672,0,56,32,0,1.570796370506287,1,0,0,0,0,[]],51,9963,[],[[0],[1],[1,100,""]],[0,0]],[[56,4656,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9964,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[72,4672,0,56,32,0,1.570796370506287,1,0,0,0,0,[]],51,9965,[],[[0],[1],[1,100,""]],[0,0]],[[40,4664,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],50,9966,[[-1],[0],[0],[0],[0],[8],[1]],[[0],[1,0,1,1,"F 1192",400,350,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[96,4632,0,16,112,0,0,1,0.5,0.5,0,0,[]],49,9967,[[8],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[1,"Default",0,1]],[[136,4344,0,24,24,0,0,1,0.5,0.5,0,0,[]],49,9968,[[9],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[0,"Default",0,1]],[[616,4632,0,24,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],50,9969,[[-1],[0],[0],[0],[0],[9],[1]],[[0],[1,0,1,1,"B 1000",400,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[944,4552,0,32,32,0,0.7853981852531433,1,0.5,0.5,0,0,[]],47,9970,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[920,4576,0,88,88,0,0,1,0.5,0.5,0,0,[]],50,9971,[[-1],[0],[0],[0],[0],[-2],[1]],[[0],[1,1,1,0,"R 90 ; W 1; R 90 ; W 1; R 90 ; W 1; R 90 ; W 1",175,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[936,4560,0,16,16,0,0,1,0.5,0.5,0,0,[]],50,9972,[[1],[1],[10],[0],[0],[-2],[1]],[[0],[1,1,0,0,"L 45 ; F 50; W 1.5; B 50 ; R 45; W 1",175,0,0,360,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[920,4624,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,9973,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[920,4528,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,9974,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[968,4576,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,9975,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[872,4576,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,9976,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[944,4600,0,32,32,0,2.356194496154785,1,0.5,0.5,0,0,[]],47,9977,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[896,4600,0,32,32,0,-2.356194734573364,1,0.5,0.5,0,0,[]],47,9978,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[896,4552,0,32,32,0,-0.7853984832763672,1,0.5,0.5,0,0,[]],47,9979,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[904,4560,0,16,16,0,0,1,0.5,0.5,0,0,[]],50,9980,[[1],[1],[10],[0],[0],[-2],[1]],[[0],[1,1,0,0,"R 45 ; B 50; W 1.5; F 50 ; L 45; W 1",175,0,0,360,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[936,4592,0,16,16,0,0,1,0.5,0.5,0,0,[]],50,9981,[[1],[1],[10],[0],[0],[-2],[1]],[[0],[1,1,0,0,"L 135 ; B 50; W 1.5; F 50 ; R 135; W 1",175,0,0,1080,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[904,4592,0,16,16,0,0,1,0.5,0.5,0,0,[]],50,9982,[[1],[1],[10],[0],[0],[-2],[1]],[[0],[1,1,0,0,"L 45 ; B 50; W 1.5; F 50 ; R 45 ; W 1",175,0,0,360,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[2680,4376,0,32,8,0,1.570796370506287,1,0,0,0,0,[]],56,9851,[],[[1],[1]],[0,0]],[[1888,4256,0,792,8,0,0,1,0,0,0,0,[]],56,9984,[],[[1],[1]],[0,0]],[[1992,4408,0,384,8,0,0,1,0,0,0,0,[]],56,9985,[],[[1],[1]],[0,0]],[[1888,4256,0,104,8,0,1.570796370506287,1,0,0,0,0,[]],56,9986,[],[[1],[1]],[0,0]],[[1904,4280,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,9987,[[0]],[[1],[1]],[0,"Default",0,1]],[[1904,4312,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,9988,[[0]],[[1],[1]],[0,"Default",0,1]],[[1904,4344,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],58,9989,[[0]],[[1],[1]],[0,"Default",0,1]],[[2656,4392,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],58,9990,[[0]],[[1],[1]],[0,"Default",0,1]],[[1912,4328,0,40,100,0,0,1,0.5,0.5,0,0,[]],50,9991,[[-1],[0],[0],[0],[0],[11],[0]],[[0],[1,0,1,0,"F 1000",400,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[2336,4360,0,32,32,0,0,1,0.5,0.5,0,0,[]],49,9992,[[11],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[0,"Default",0,1]],[[2448,4408,0,240,8,0,0,1,0,0,0,0,[]],56,9993,[],[[1],[1]],[0,0]],[[2376,4408,0,72,8,0,0,1,0,0,0,0,[]],56,9994,[],[[1],[1]],[0,0]],[[2400,4416,0,40,16,0,0,1,0.5,0.5,0,0,[]],50,9995,[[-1],[0],[0],[0],[0],[11],[0]],[[0],[1,0,1,0,"W 3; F 64",300,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[2657,4387,0,40,32,0,0,1,0.5,0.5,0,0,[]],50,9996,[[-1],[0],[0],[0],[0],[11],[0]],[[0],[1,0,1,0,"B 1000",400,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1888,4360,0,160,8,0,1.570796370506287,1,0,0,0,0,[]],56,9998,[],[[1],[1]],[0,0]],[[1992,4408,0,176,8,0,1.570796370506287,1,0,0,0,0,[]],56,9999,[],[[1],[1]],[0,0]],[[1880,4584,0,112,8,0,0,1,0,0,0,0,[]],56,10000,[],[[1],[1]],[0,0]],[[1840,368,0,32,64,0,0,1,0.5,0.5,0,0,[]],42,38,[["run"],[0],[1],[1],[0],[0.8],[0.5],[0],[1],[0],[0],[0],["ovo+"],[2],[0],[0],[0],[""],[0],[3],[0],[0],[0],[0],[0],[0],[0]],[[330,1500,1500,650,1500,1000,1,0,0,1],[],[0,0],[0,10000,360,1]],[1,"Default",0,1]],[[2688,4256,0,152,8,0,1.570796370506287,1,0,0,0,0,[]],56,10001,[],[[1],[1]],[0,0]],[[2688,4408,0,280,8,0,1.570796370506287,1,0,0,0,0,[]],56,10002,[],[[1],[1]],[0,0]],[[1880,4680,0,800,8,0,0,1,0,0,0,0,[]],56,10004,[],[[1],[1]],[0,0]],[[2000,4576,0,64,32,0,0,1,0.125,0.5,0,0,[]],55,10003,[[1],[150]],[[1],[300,1,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[2112,4424,0,64,32,0,1.570796370506287,1,0.125,0.5,0,0,[]],55,10005,[[1],[150]],[[1],[300,1,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[2280,4672,0,64,32,0,-1.570796489715576,1,0.125,0.5,0,0,[]],55,10006,[[1],[90]],[[1],[300,1,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[2632,4624,0,32,32,0,0,1,0.5,0.5,0,0,[]],49,10007,[[12],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[0,"Default",0,1]],[[2592,4424,0,64,32,0,1.570796370506287,1,0.125,0.5,0,0,[]],55,10008,[[1],[90]],[[1],[300,1,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[1888,4640,0,40,16,0,-1.570796489715576,1,0.5,0.5,0,0,[]],50,10009,[[-1],[0],[0],[0],[0],[12],[0]],[[0],[1,0,1,0,"B 2000",300,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1888,4584,0,104,8,0,1.570796370506287,1,0,0,0,0,[]],56,10010,[],[[1],[1]],[0,0]],[[1440,4636,0,28,80,0,3.141592741012573,1,0.5,0.5,0,0,[[255,255,255,0,128,255,0.01]]],62,9983,[[1000],[1001],[0],[0],[0],[0],[0]],[[0]],[1,"Default",0,1]],[[1736,4456,0,28,80,0,0,1,0.5,0.5,0,0,[[255,255,255,0,128,255,0.01]]],62,10011,[[1001],[-1],[0],[0],[0],[0],[0]],[[0]],[1,"Default",0,1]],[[1744,4636,0,28,80,0,3.141592741012573,1,0.5,0.5,0,0,[[255,255,255,0,128,255,0.01]]],62,10012,[[1002],[1003],[0],[0],[0],[0],[0]],[[0]],[1,"Default",0,1]],[[1448,4448,0,28,80,0,3.141592741012573,1,0.5,0.5,0,0,[[255,255,255,0,128,255,0.01]]],62,10013,[[1003],[-1],[0],[0],[0],[0],[0]],[[0]],[1,"Default",0,1]]],[]],["UI",2,830857103082037,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[240,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3097,[["right"]],[[0,1,0,1,1]],[0,"Default",0,1]],[[80,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3098,[["left"]],[[0,1,0,1,1]],[0,"Default",1,1]],[[560,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3099,[["up"]],[[1,1,1,1,1]],[0,"Default",3,1]],[[400,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3100,[["down"]],[[1,1,1,1,1]],[0,"Default",2,1]]],[]],["End Card",3,522601277043433,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],78,2607,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[12.04449462890625,194,0,615.9109497070313,67,0,0,1,0,0,0,0,[]],79,2608,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Timer for this level",2.5,0,0,0,0,0,-10,0,"",-1,0]],[[17.546875,248,0,604.90625,105,0,0,1,0,0,0,0,[]],80,2610,[[0],[0],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","13:40:40",4,0,63,50,0,0,-10,0,"",-1,0]],[[115.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,2611,[[0],[1],[0],[0],["replay"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Replay",""],[""],[2,2,0,0,0],["",""]],[0,"Replay",0,1]],[[524.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3086,[[0],[1],[0],[0],["next"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Next",""],[""],[2,2,0,0,0],["",""]],[0,"Next",0,1]],[[320.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3087,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > Back","Level Menu"],[""],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[320.75,521.8050537109375,0,384,96,0,0,1,0.5,0.5,0,0,[]],70,3088,[[1],[1],[0],[0],[""],["{\"size\": 22, \"left\": 70, \"right\": 18, \"alignY\": 60}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > DownloadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"DownloadReplay",0,1]]],[]],["Pause",4,314961077218204,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-310,678,0,274,31,0,0,1,0,0,0,0,[]],168,3089,[],[],[".ovo",0,1,"file"]],[[320,320,0,425,250,0,0,1,0.5,0.5,0,0,[]],82,3090,[],[[6,1,"",300,1,1,"",300,"overlay",1,"PauseClose",1,1]],[0,"Default",0,1]],[[214,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3091,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"",""],["PauseClose"],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[426,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3092,[[0],[1],[0],[0],["quit"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > GiveUp",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[115.5,202,0,409,118,0,0,1,0,0,0,0,[]],83,3093,[[1],[1],["pause"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Pause",4,0,57,50,0,0,-10,0,"",-1,0]],[[320.5,88,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3094,[[1],[1],[0],[0],["loadreplay"],["{\"size\": 16, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > LoadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"LoadReplay",0,1]],[[320.5,157,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3095,[[1],[0],[0],[0],["toggledebug"],["{\"size\": 15, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Debug > Toggle",""],[""],[2,2,0,0,0],["",""]],[0,"ToggleDebug",0,1]],[[78,448,0,484,134,0,0,1,0,0,0,0,[]],193,3096,[],[],[0,"Default",0,1]]],[]],["Overlay",5,103065276396759,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[432,4,0,203.0009155273438,64,0,0,1,0,0,0,0,[]],107,5488,[],[[1,0,1,0,1]],[2,2,2,2,0,1,0,0,1]],[[432,4,0,203,64,0,0,1,0,0,0,0,[]],84,3101,[[0],[0],[""],["en-us"],[0],[1],[1],["{\"alignY\": 85, \"alignX\": 45, \"size\": 28}"],[0],[1],[0],[0],[0]],[["",""],[1,0,1,0,1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",2,0,100,50,0,0,-10,0,"",-1,0]],[[88,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3102,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Pause",""],[""],[0,0,0,0,1],["",""]],[0,"Pause",0,1]],[[158,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3103,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Replay","1"],[""],[0,0,0,0,1],["",""]],[0,"Reload",0,1]]],[]],["End Game",6,383965508689807,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],85,3104,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[73,194,0,494,72,0,0,1,0,0,0,0,[]],86,3105,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],["{alignY:50}"],[0],[1],[0],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Your final time",2.5,0,50,50,0,0,-10,0,"",-1,0]],[[320,403,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3106,[[0],[1],[0],[0],[""],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Quit",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[73,243,0,494,85,0,0,1,0,0,0,0,[]],87,3108,[[0],[1],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",3,0,50,50,0,0,-10,0,"",-1,0]],[[73,318,0,494,25,0,0,1,0,0,0,0,[]],86,5480,[[1],[1],["tryagainhardmode"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Try again in hard mode!",1,0,50,50,0,0,-2,0,"",-1,0]]],[]],["Banner",7,503063231833538,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-237,-189,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,3109,[],[["overlay"]],[0,"Default",0,1]]],[]],["AdPlaying",8,831560373941358,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,-203.5,0,250,97,0,0,1,0.5,0.5,0,0,[]],125,390,[],[[6,1,"",300,1,1,"",300,"overlay",1,"",1,1],[]],[0,"Default",0,1]],[[209,-275,0,222,139,0,0,1,0,0,0,0,[]],86,391,[[1],[1],["adplaying"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","An ad is playing right now...",1.2,0,50,50,0,0,-2,0,"",-1,0]],[[-154.5756988525391,-294.3137512207031,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,5508,[],[["overlay"]],[0,"Default",0,1]]],[]]],[],[]],["Level 49",2000,2000,true,"Levels",866040169171752,[["Background",0,916571196448190,true,[255,255,255],false,0,0,1,false,false,1,0,0,[[[-259,239,0,60.93439102172852,60.93439102172852,0,0,1,0.5,0.5,0,0,[]],53,40,[["The iron maiden"],[""],[0]],[],[1,"Default",0,1]]],[]],["Layer 0",1,676883255295672,true,[255,255,255],true,1,1,1,false,false,1,0,0,[[[452,1072,0,224,117,0,0,1,0,0,0,0,[[]]],61,7387,[],[[1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>","1",7,0,50,0,0,0,0,0,"",-1,0]],[[272,1424,0,32,64,0,0,1,0.5,0.5,0,0,[]],42,7395,[["run"],[0],[1],[1],[0],[0.8],[0.5],[0],[1],[0],[0],[0],["ovo+"],[2],[0],[0],[0],[""],[0],[3],[0],[0],[0],[0],[0],[0],[0]],[[330,1500,1500,650,1500,1000,1,0,0,1],[],[1,0],[0,10000,360,1]],[1,"Default",0,1]],[[300,975,0,152,184,0,-1.570796489715576,1,0.5,0.5,0,0,[]],50,7546,[[-1],[0],[0],[0],[0],[6],[1]],[[0],[1,0,1,1,"W 1 ; F 552",80,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[208.0000152587891,344,0,1160,8,0,1.570796370506287,1,0,0,0,0,[]],67,7406,[],[[1]],[0,0]],[[1088,352,0,1160,8,0,1.570796370506287,1,0,0,0,0,[]],67,7396,[],[[1]],[0,0]],[[200,1504,0,888,8,0,0,1,0,0,0,0,[]],67,7397,[],[[1]],[0,0]],[[208,1272,0,536,8,0,0,1,0,0,0,0,[]],67,7398,[],[[1]],[0,0]],[[440,1328,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,7399,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[400,1328,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,7400,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[424,1312,0,64,8,0,1.570796370506287,1,0,0,0,0,[]],67,7401,[],[[1]],[0,0]],[[440,1360,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,7409,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[400,1360,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,7410,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[440,1488,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,7411,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[400,1488,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,7412,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[424,1472,0,32,8,0,1.570796370506287,1,0,0,0,0,[]],67,7402,[],[[1]],[0,0]],[[728,1328,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,7403,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[688,1328,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,7404,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[712,1312,0,32,8,0,1.570796370506287,1,0,0,0,0,[]],67,7405,[],[[1]],[0,0]],[[728,1456,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,7407,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[688,1456,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,7408,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[728,1488,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,7413,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[688,1488,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,7414,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[712,1440,0,64,8,0,1.570796370506287,1,0,0,0,0,[]],67,7415,[],[[1]],[0,0]],[[584,1328,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,7419,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[544,1328,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,7420,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[584,1360,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,7421,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[544,1360,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,7422,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[568,1312,0,96,8,0,1.570796370506287,1,0,0,0,0,[]],67,7423,[],[[1]],[0,0]],[[584,1392,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,7416,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[544,1392,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,7417,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[896,1488,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,7418,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[856,1488,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,7424,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[880,1472,0,32,8,0,1.570796370506287,1,0,0,0,0,[]],67,7425,[],[[1]],[0,0]],[[896,1328,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,7426,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[856,1328,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,7427,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[896,1360,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,7428,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[856,1360,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,7429,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[880,1312,0,64,8,0,1.570796370506287,1,0,0,0,0,[]],67,7430,[],[[1]],[0,0]],[[1064,1328,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,7431,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1064,1360,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,7432,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1064,1392,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,7433,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1064,1424,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,7434,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1064,1456,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,7435,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1064,1488,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,7436,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[992,1416,0,64,64,0,0,1,0.5,0.5,0,0,[]],60,7437,[["level49"]],[[1],[400,-200,800,0,0,0],[0,0,0,1,1]],[0,"Default",0,1]],[[440,1296,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,7438,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[400,1296,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,7439,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[424,1280,0,32,8,0,1.570796370506287,1,0,0,0,0,[]],67,7440,[],[[1]],[0,0]],[[584,1296,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,7441,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[544,1296,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,7442,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[568,1280,0,32,8,0,1.570796370506287,1,0,0,0,0,[]],67,7443,[],[[1]],[0,0]],[[728,1296,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,7444,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[688,1296,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,7445,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[712,1280,0,32,8,0,1.570796370506287,1,0,0,0,0,[]],67,7446,[],[[1]],[0,0]],[[896,1296,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,7448,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[856,1296,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,7449,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[880,1280,0,32,8,0,1.570796370506287,1,0,0,0,0,[]],67,7450,[],[[1]],[0,0]],[[840,1272,0,240,8,0,0,1,0,0,0,0,[]],67,7451,[],[[1]],[0,0]],[[744,1272,0,96,8,0,0,1,0,0,0,0,[]],45,7452,[],[[0],[1]],[0,0]],[[752,1272,0,24,8,0,1.570796370506287,1,0,0,0,0,[]],67,7453,[],[[1]],[0,0]],[[840,1272,0,24,8,0,1.570796370506287,1,0,0,0,0,[]],67,7454,[],[[1]],[0,0]],[[792,1240,0,32,32,0,0,1,0.5,0.5,0,0,[]],49,7455,[[1],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[1,"Default",0,1]],[[752,1200,0,72,8,0,1.570796370506287,1,0,0,0,0,[]],67,7456,[],[[1]],[0,0]],[[664,1200,0,88,8,0,0,1,0,0,0,0,[]],67,7464,[],[[1]],[0,0]],[[672,1208,0,72,8,0,1.570796370506287,1,0,0,0,0,[]],67,7465,[],[[1]],[0,0]],[[920,1200,0,72,8,0,1.570796370506287,1,0,0,0,0,[]],67,7466,[],[[1]],[0,0]],[[832,1200,0,88,8,0,0,1,0,0,0,0,[]],67,7467,[],[[1]],[0,0]],[[840,1208,0,72,8,0,1.570796370506287,1,0,0,0,0,[]],67,7468,[],[[1]],[0,0]],[[752,1200,0,80,8,0,0,1,0,0,0,0,[]],45,7463,[],[[0],[1]],[0,0]],[[880,1240,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,7469,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[704,1240,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,7470,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[744,1200,0,96,8,0,0,1,0,0,0,0,[]],45,7471,[],[[0],[1]],[0,0]],[[752,1200,0,24,8,0,1.570796370506287,1,0,0,0,0,[]],67,7472,[],[[1]],[0,0]],[[840,1200,0,24,8,0,1.570796370506287,1,0,0,0,0,[]],67,7473,[],[[1]],[0,0]],[[792,1168,0,32,32,0,0,1,0.5,0.5,0,0,[]],49,7474,[[2],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[1,"Default",0,1]],[[752,1128,0,72,8,0,1.570796370506287,1,0,0,0,0,[]],67,7475,[],[[1]],[0,0]],[[664,1128,0,88,8,0,0,1,0,0,0,0,[]],67,7476,[],[[1]],[0,0]],[[672,1136,0,72,8,0,1.570796370506287,1,0,0,0,0,[]],67,7477,[],[[1]],[0,0]],[[920,1128,0,72,8,0,1.570796370506287,1,0,0,0,0,[]],67,7478,[],[[1]],[0,0]],[[832,1128,0,88,8,0,0,1,0,0,0,0,[]],67,7479,[],[[1]],[0,0]],[[840,1136,0,72,8,0,1.570796370506287,1,0,0,0,0,[]],67,7480,[],[[1]],[0,0]],[[752,1128,0,80,8,0,0,1,0,0,0,0,[]],45,7481,[],[[0],[1]],[0,0]],[[880,1168,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,7482,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[704,1168,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,7483,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[744,1128,0,96,8,0,0,1,0,0,0,0,[]],45,7484,[],[[0],[1]],[0,0]],[[752,1120,0,24,8,0,1.570796370506287,1,0,0,0,0,[]],67,7485,[],[[1]],[0,0]],[[840,1120,0,24,8,0,1.570796370506287,1,0,0,0,0,[]],67,7486,[],[[1]],[0,0]],[[792,1096,0,32,32,0,0,1,0.5,0.5,0,0,[]],49,7487,[[3],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[1,"Default",0,1]],[[752,1056,0,72,8,0,1.570796370506287,1,0,0,0,0,[]],67,7488,[],[[1]],[0,0]],[[632,1056,0,120,8,0,0,1,0,0,0,0,[]],67,7489,[],[[1]],[0,0]],[[672,1064,0,72,8,0,1.570796370506287,1,0,0,0,0,[]],67,7490,[],[[1]],[0,0]],[[920,864,0,264,8,0,1.570796370506287,1,0,0,0,0,[]],67,7491,[],[[1]],[0,0]],[[832,1056,0,88,8,0,0,1,0,0,0,0,[]],67,7492,[],[[1]],[0,0]],[[840,864,0,272,8,0,1.570796370506287,1,0,0,0,0,[]],67,7493,[],[[1]],[0,0]],[[752,1056,0,80,8,0,0,1,0,0,0,0,[]],45,7494,[],[[0],[1]],[0,0]],[[880,1096,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,7495,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[704,1096,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,7496,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[696,1240,0,24,24,0,0,1,0.5,0.5,0,0,[]],50,7497,[[-1],[0],[0],[0],[0],[1],[1]],[[0],[1,0,1,1,"W 0.25 ; F 72",900,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[888,1240,0,24,24,0,3.141592741012573,1,0.5,0.5,0,0,[]],50,7498,[[-1],[0],[0],[0],[0],[1],[1]],[[0],[1,0,1,1,"W 0.25 ; F 72",900,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[696,1168,0,24,24,0,0,1,0.5,0.5,0,0,[]],50,7499,[[-1],[0],[0],[0],[0],[2],[1]],[[0],[1,0,1,1,"W 0.25 ; F 72",900,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[696,1096,0,24,24,0,0,1,0.5,0.5,0,0,[]],50,7500,[[-1],[0],[0],[0],[0],[3],[1]],[[0],[1,0,1,1,"W 0.25 ; F 72",900,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[888,1168,0,24,24,0,3.141592741012573,1,0.5,0.5,0,0,[]],50,7501,[[-1],[0],[0],[0],[0],[2],[1]],[[0],[1,0,1,1,"W 0.25 ; F 72",900,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[888,1096,0,24,24,0,3.141592741012573,1,0.5,0.5,0,0,[]],50,7502,[[-1],[0],[0],[0],[0],[3],[1]],[[0],[1,0,1,1,"W 0.25 ; F 72",900,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[752,936,0,80,9,0,0,1,0,0,0,0,[]],52,7388,[],[[0],[0]],[0,0]],[[752,1016,0,40,8,0,1.570796370506287,1,0,0,0,0,[]],45,7389,[],[[0],[1]],[0,0]],[[752,864,0,152,8,0,1.570796370506287,1,0,0,0,0,[]],67,7390,[],[[1]],[0,0]],[[752,864,0,88,8,0,0,1,0,0,0,0,[]],67,7391,[],[[1]],[0,0]],[[792,896,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7392,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[792,1024,0,32,32,0,0,1,0.5,0.5,0,0,[]],49,7393,[[4],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[1,"Default",0,1]],[[792,888,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,7394,[[-1],[0],[0],[0],[0],[4],[1]],[[0],[1,0,1,1,"W 1 ; F 1000",900,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[861,1040,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7503,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[892,1040,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7504,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[840,864,0,72,8,0,0,1,0,0,0,0,[]],45,7505,[],[[0],[1]],[0,0]],[[592,1056,0,72,8,0,0,1,0,0,0,0,[]],67,7507,[],[[1]],[0,0]],[[608,1040,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7508,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[640,1040,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7509,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[288,1056,0,200,8,0,0,1,0,0,0,0,[]],67,5616,[],[[1]],[0,0]],[[488,504,0,552,8,0,1.570796370506287,1,0,0,0,0,[]],67,7506,[],[[1]],[0,0]],[[504,1016,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,7510,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[504,1048,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,7511,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[504,984,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,7512,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[504,952,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,7513,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[480,864,0,264,8,0,0,1,0,0,0,0,[]],67,7514,[],[[1]],[0,0]],[[504,920,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,7515,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[504,888,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,7516,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[632,888,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7518,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[664,888,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7519,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[696,888,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7517,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[728,888,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7520,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[600,888,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7522,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[728,952,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,7521,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[728,984,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,7523,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[496,1256,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7525,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[464,1224,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7526,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[432,1184,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7527,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[400,1224,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7528,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[368,1256,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7529,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[368,1080,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7530,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[336,1112,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7531,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[304,1152,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7532,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[296,1056,0,80,8,0,1.570796370506287,1,0,0,0,0,[]],67,7535,[],[[1]],[0,0]],[[416,1240,0,32,32,0,1.570796370506287,1,0,0,0,0,[]],67,7524,[],[[1]],[0,0]],[[480,1240,0,32,32,0,1.570796370506287,1,0,0,0,0,[]],67,7533,[],[[1]],[0,0]],[[448,1200,0,72,32,0,1.570796370506287,1,0,0,0,0,[]],67,7534,[],[[1]],[0,0]],[[352,1064,0,32,32,0,1.570796370506287,1,0,0,0,0,[]],67,7536,[],[[1]],[0,0]],[[320,1064,0,72,32,0,1.570796370506287,1,0,0,0,0,[]],67,7537,[],[[1]],[0,0]],[[392,896,0,9,184,0,1.570796370506287,1,0,0,0,0,[]],48,7538,[],[[1],[1]],[0,0]],[[384,896,0,9,96,0,0,1,0,0,0,0,[]],48,7540,[],[[1],[1]],[0,0]],[[208,904,0,9,152,0,0,1,0,0,0,0,[]],48,7543,[],[[1],[1]],[0,0]],[[256,1032,0,72,16,0,0,1,0.5,0.5,0,0,[]],49,7548,[[6],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[1,"Default",0,1]],[[224,776,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7542,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[288,776,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7544,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[364,776,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7549,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[240,656,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7551,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[328,664,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7552,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[328,592,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7554,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[372,608,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7555,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[264,560,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7556,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[224,520,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7557,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[294,446,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7558,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[366,536,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7559,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[256,368,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7562,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[224,368,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7563,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[288,368,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7564,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[320,368,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7565,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[352,368,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7566,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[384,368,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7567,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[200,344,0,888,8,0,0,1,0,0,0,0,[]],67,7568,[],[[1]],[0,0]],[[372,680,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7541,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[480,504,0,264,8,0,0,1,0,0,0,0,[]],67,7545,[],[[1]],[0,0]],[[288,1048,0,104,9,0,0,1,0,0,0,0,[]],51,7547,[],[[0],[1],[1,100,""]],[0,0]],[[752,504,0,360,8,0,1.570796370506287,1,0,0,0,0,[]],67,7539,[],[[1]],[0,0]],[[752,504,0,328,8,0,0,1,0,0,0,0,[]],45,7550,[],[[0],[1]],[0,0]],[[776,472,0,32,16,0,0,1,0,0,0,0,[]],46,7553,[[0],[0],[""],["en-us"],[0],[0],[1],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","1",1,0,50,0,0,0,0,0,"",-1,0]],[[864,472,0,32,16,0,0,1,0,0,0,0,[]],46,7560,[[0],[0],[""],["en-us"],[0],[0],[1],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","2",1,0,50,0,0,0,0,0,"",-1,0]],[[984,472,0,32,16,0,0,1,0,0,0,0,[]],46,7561,[[0],[0],[""],["en-us"],[0],[0],[1],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","3",1,0,50,0,0,0,0,0,"",-1,0]],[[840,504,0,280,8,0,1.570796370506287,1,0,0,0,0,[]],67,7569,[],[[1]],[0,0]],[[920,504,0,280,8,0,1.570796370506287,1,0,0,0,0,[]],67,7570,[],[[1]],[0,0]],[[752,776,0,328,8,0,0,1,0,0,0,0,[]],45,7571,[],[[0],[1]],[0,0]],[[1000,752,0,144,32,0,0,1,0.5,0.5,0,0,[]],49,7573,[[7],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[1,"Default",0,1]],[[1000,1040,0,24,24,0,0,1,0.5,0.5,0,0,[]],50,7574,[[-1],[0],[0],[0],[0],[7],[1]],[[0],[1,0,1,1,"F 400",800,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[936,1256,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7575,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[968,1256,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7576,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1032,1256,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7577,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1064,1256,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7578,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1000,1256,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7579,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1000,1144,0,97,199,0,0,1,0.5257731676101685,0.4974874258041382,0,0,[]],44,7580,[],[[0]],[0,"Default",0,1]],[[392,992,0,56,8,0,1.570796370506287,1,0,0,0,0,[]],45,7581,[],[[0],[1]],[0,0]],[[616,716,0,232,296,0,0,1,0.5,0.5,0,0,[]],173,7572,[],[],[0,"Default",0,1]],[[560,528,0,112,24,0,0,1,0,0,0,0,[]],46,7582,[[0],[1],[""],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","FL1CKD",1,0,50,0,0,0,0,0,"",-1,0]],[[576,488,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7583,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[544,488,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7584,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[608,488,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7585,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[640,488,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7586,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[672,488,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7587,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[704,488,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7588,[[0],[0]],[[0],[1]],[0,"Default",0,1]]],[]],["UI",2,724580818663920,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[240,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3097,[["right"]],[[0,1,0,1,1]],[0,"Default",0,1]],[[80,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3098,[["left"]],[[0,1,0,1,1]],[0,"Default",1,1]],[[560,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3099,[["up"]],[[1,1,1,1,1]],[0,"Default",3,1]],[[400,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3100,[["down"]],[[1,1,1,1,1]],[0,"Default",2,1]]],[]],["End Card",3,655844049377971,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],78,2607,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[12.04449462890625,194,0,615.9109497070313,67,0,0,1,0,0,0,0,[]],79,2608,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Timer for this level",2.5,0,0,0,0,0,-10,0,"",-1,0]],[[17.546875,248,0,604.90625,105,0,0,1,0,0,0,0,[]],80,2610,[[0],[0],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","13:40:40",4,0,63,50,0,0,-10,0,"",-1,0]],[[115.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,2611,[[0],[1],[0],[0],["replay"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Replay",""],[""],[2,2,0,0,0],["",""]],[0,"Replay",0,1]],[[524.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3086,[[0],[1],[0],[0],["next"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Next",""],[""],[2,2,0,0,0],["",""]],[0,"Next",0,1]],[[320.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3087,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > Back","Level Menu"],[""],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[320.75,521.8050537109375,0,384,96,0,0,1,0.5,0.5,0,0,[]],70,3088,[[1],[1],[0],[0],[""],["{\"size\": 22, \"left\": 70, \"right\": 18, \"alignY\": 60}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > DownloadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"DownloadReplay",0,1]]],[]],["Pause",4,580367956384220,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-310,678,0,274,31,0,0,1,0,0,0,0,[]],168,3089,[],[],[".ovo",0,1,"file"]],[[320,320,0,425,250,0,0,1,0.5,0.5,0,0,[]],82,3090,[],[[6,1,"",300,1,1,"",300,"overlay",1,"PauseClose",1,1]],[0,"Default",0,1]],[[214,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3091,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"",""],["PauseClose"],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[426,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3092,[[0],[1],[0],[0],["quit"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > GiveUp",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[115.5,202,0,409,118,0,0,1,0,0,0,0,[]],83,3093,[[1],[1],["pause"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Pause",4,0,57,50,0,0,-10,0,"",-1,0]],[[320.5,88,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3094,[[1],[1],[0],[0],["loadreplay"],["{\"size\": 16, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > LoadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"LoadReplay",0,1]],[[320.5,157,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3095,[[1],[0],[0],[0],["toggledebug"],["{\"size\": 15, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Debug > Toggle",""],[""],[2,2,0,0,0],["",""]],[0,"ToggleDebug",0,1]],[[78,448,0,484,134,0,0,1,0,0,0,0,[]],193,3096,[],[],[0,"Default",0,1]]],[]],["Overlay",5,251501048792313,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[432,4,0,203.0009155273438,64,0,0,1,0,0,0,0,[]],107,5488,[],[[1,0,1,0,1]],[2,2,2,2,0,1,0,0,1]],[[432,4,0,203,64,0,0,1,0,0,0,0,[]],84,3101,[[0],[0],[""],["en-us"],[0],[1],[1],["{\"alignY\": 85, \"alignX\": 45, \"size\": 28}"],[0],[1],[0],[0],[0]],[["",""],[1,0,1,0,1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",2,0,100,50,0,0,-10,0,"",-1,0]],[[88,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3102,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Pause",""],[""],[0,0,0,0,1],["",""]],[0,"Pause",0,1]],[[158,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3103,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Replay","1"],[""],[0,0,0,0,1],["",""]],[0,"Reload",0,1]]],[]],["End Game",6,443939102020348,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],85,3104,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[73,194,0,494,72,0,0,1,0,0,0,0,[]],86,3105,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],["{alignY:50}"],[0],[1],[0],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Your final time",2.5,0,50,50,0,0,-10,0,"",-1,0]],[[320,403,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3106,[[0],[1],[0],[0],[""],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Quit",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[73,243,0,494,85,0,0,1,0,0,0,0,[]],87,3108,[[0],[1],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",3,0,50,50,0,0,-10,0,"",-1,0]],[[73,318,0,494,25,0,0,1,0,0,0,0,[]],86,5480,[[1],[1],["tryagainhardmode"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Try again in hard mode!",1,0,50,50,0,0,-2,0,"",-1,0]]],[]],["Banner",7,682424516631716,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-237,-189,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,3109,[],[["overlay"]],[0,"Default",0,1]]],[]],["AdPlaying",8,445234732475059,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,-203.5,0,250,97,0,0,1,0.5,0.5,0,0,[]],125,390,[],[[6,1,"",300,1,1,"",300,"overlay",1,"",1,1],[]],[0,"Default",0,1]],[[209,-275,0,222,139,0,0,1,0,0,0,0,[]],86,391,[[1],[1],["adplaying"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","An ad is playing right now...",1.2,0,50,50,0,0,-2,0,"",-1,0]],[[-154.5756988525391,-294.3137512207031,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,5508,[],[["overlay"]],[0,"Default",0,1]]],[]]],[],[]],["Level 50",3500,3500,true,"Levels",200730535750457,[["Background",0,622299070984176,true,[255,255,255],false,0,0,1,false,false,1,0,0,[],[]],["Layer 0",1,481403517635144,true,[255,255,255],true,1,1,1,false,false,1,0,0,[[[1104,1144,0,32,64,0,0,1,0.5,0.5,0,0,[]],42,1816,[["run"],[0],[1],[1],[0],[0.8],[0.5],[0],[1],[0],[0],[0],["ovo+"],[2],[0],[0],[0],[""],[0],[3],[0],[0],[0],[0],[0],[0],[0]],[[330,1500,1500,650,1500,1000,1,0,0,1],[],[1,0],[0,10000,360,1]],[1,"Default",0,1]],[[1000.000122070313,280,0,1688,680,0,1.570796370506287,1,0,0,0,0,[]],67,1829,[],[[1]],[0,0]],[[1016,1456,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7313,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[512,3400,0,97,199,0,0,1,0.5257731676101685,0.4974874258041382,0,0,[]],44,8552,[],[[0]],[0,"Default",0,1]],[[2232,1672,0,1240,200,0,3.141592741012573,1,0,0,0,0,[]],67,1815,[],[[1]],[0,0]],[[1048,1456,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1817,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1080,1456,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1818,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1112,1456,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1819,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1144,1456,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1820,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1176,1456,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1821,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1208,1456,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1822,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1240,1456,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1823,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1272,1456,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1824,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1304,1456,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1825,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1336,1456,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1826,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1368,1456,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1827,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1176,1208,0,104,8,0,3.141592741012573,1,0,0,0,0,[]],67,1828,[],[[1]],[0,0]],[[2448,904.0000610351563,0,1448,632,0,3.141592741012573,1,0,0,0,0,[]],67,1830,[],[[1]],[0,0]],[[1392,1144,0,328,8,0,1.570796370506287,1,0,0,0,0,[]],67,1831,[],[[1]],[0,0]],[[1392,904,0,80,8,0,1.570796370506287,1,0,0,0,0,[]],67,1832,[],[[1]],[0,0]],[[1408,1456,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1833,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1440,1456,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1834,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1472,1456,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1835,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1504,1456,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1836,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1536,1456,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1837,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1568,1456,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1838,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1600,1456,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1839,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1632,1456,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1840,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1664,1456,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1841,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1696,1456,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1842,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1728,1456,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1843,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1760,1456,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1844,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1608,1208,0,56,8,0,3.141592741012573,1,0,0,0,0,[]],67,1845,[],[[1]],[0,0]],[[1784,1168,0,304,8,0,1.570796370506287,1,0,0,0,0,[]],67,1846,[],[[1]],[0,0]],[[1784,904,0,104,8,0,1.570796370506287,1,0,0,0,0,[]],67,1847,[],[[1]],[0,0]],[[1800,1456,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1848,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1832,1456,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1849,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1864,1456,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1850,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1896,1456,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1851,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1928,1456,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1852,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1960,1456,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1853,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1992,1456,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1854,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2024,1456,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1855,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2056,1456,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1856,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2088,1456,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1857,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2120,1456,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1858,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2152,1456,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1860,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3072,568,0,1688,632,0,1.570796370506287,1,0,0,0,0,[]],67,1862,[],[[1]],[0,0]],[[2328,1456,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1865,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2360,1456,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1866,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2392,1456,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1867,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2424,1456,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1868,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1392,1128,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1864,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1392,1000,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1869,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1784,1152,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1870,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1784,1024,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1871,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1848,1248,0,40,8,0,0,1,0,0,0,0,[]],45,1861,[],[[0],[1]],[0,0]],[[2335.999755859375,4192,0,1344,1944,0,3.141592741012573,1,0,0,0,0,[]],67,1873,[],[[1]],[0,0]],[[3055.999755859375,4024,0,744,1776,0,3.141592741012573,1,0,0,0,0,[]],67,7271,[],[[1]],[0,0]],[[2328,2232,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7272,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2360,2232,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7273,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2392,2232,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7274,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2424,2232,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7275,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1960,1200,0,40,8,0,0,1,0,0,0,0,[]],45,7276,[],[[0],[1]],[0,0]],[[2096,1128,0,40,8,0,0,1,0,0,0,0,[]],45,7277,[],[[0],[1]],[0,0]],[[2240,1016,0,64,8,0,0,1,0,0,0,0,[]],45,7278,[],[[0],[1]],[0,0]],[[2240,1016,0,696,8,0,1.570796370506287,1,0,0,0,0,[]],67,7279,[],[[1]],[0,0]],[[2312,1016,0,696,8,0,1.570796370506287,1,0,0,0,0,[]],67,7280,[],[[1]],[0,0]],[[2184,1456,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7281,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2216,1456,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7282,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1728,1256,0,56,8,0,3.141592741012573,1,0,0,0,0,[]],67,7283,[],[[1]],[0,0]],[[2328,1032,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,7284,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2360,1064,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,7285,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2328,1096,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,7286,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2424,1224,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,7287,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2392,1256,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,7288,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2424,1288,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,7289,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2424,1400,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,7290,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2328,1400,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,7291,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2456,2048,0,200,8,0,3.141592741012573,1,0,0,0,0,[]],67,7292,[],[[1]],[0,0]],[[2376,1400,0,48,48,0,0,1,0.5,0.5,0,0,[]],49,7293,[[1],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[1,"Default",0,1]],[[2376,1400,0,64,64,0,0,1,0.5,0.5,0,0,[]],60,1859,[["level50"]],[[1],[400,-200,800,0,0,0],[0,0,0,1,1]],[0,"Default",0,1]],[[2376,1464,0,120,32,0,0,1,0.5,0.5,0,0,[]],50,7294,[[-1],[0],[0],[0],[0],[1],[1]],[[0],[1,0,1,1,"F 128",2048,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[2312,1472,0,128,8,0,0,1,0,0,0,0,[]],51,7295,[],[[0],[1],[1,100,""]],[0,0]],[[2344,1048,0,32,32,0,1.570796370506287,1,0,0,0,0,[]],67,1863,[],[[1]],[0,0]],[[2440,1240,0,32,32,0,1.570796370506287,1,0,0,0,0,[]],67,7296,[],[[1]],[0,0]],[[2056,1928,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7300,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2056,1792,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7301,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1816,2072,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1875,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1816,1936,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1876,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1568,1928,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,1879,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1568,1792,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,1880,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1240,1928,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2794,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1240,1792,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,2795,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2376,1576,0,136,200,0,0,1,0.5,0.5,0,0,[]],164,5504,[],[],[0,"Default",0,1]],[[2056,1768,0,56,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,5656,[[-1],[0],[0],[0],[0],[2],[1]],[[0],[1,1,1,0,"F 125 ; W 0.4; B 125; W 0.4",100,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[2056,1952,0,56,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,5662,[[-1],[0],[0],[0],[0],[2],[1]],[[0],[1,1,1,0,"F 125 ; W 0.4; B 125; W 0.4",100,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[2056,1472,0,304,8,0,1.570796370506287,1,0,0,0,0,[]],51,5663,[],[[0],[1],[1,100,""]],[0,0]],[[2056,1944,0,304,8,0,1.570796370506287,1,0,0,0,0,[]],51,5664,[],[[0],[1],[1,100,""]],[0,0]],[[1816,1912,0,56,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],50,5666,[[-1],[0],[0],[0],[0],[2],[1]],[[0],[1,1,1,0,"F 125 ; W 0.4; B 125; W 0.4",100,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1816,2096,0,56,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],50,5667,[[-1],[0],[0],[0],[0],[2],[1]],[[0],[1,1,1,0,"F 125 ; W 0.4; B 125; W 0.4",100,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1816,1592,0,328,8,0,1.570796370506287,1,0,0,0,0,[]],51,5668,[],[[0],[1],[1,100,""]],[0,0]],[[1816,2088,0,400,8,0,1.570796370506287,1,0,0,0,0,[]],51,1872,[],[[0],[1],[1,100,""]],[0,0]],[[1568,1944,0,400,8,0,1.570796370506287,1,0,0,0,0,[]],51,1874,[],[[0],[1],[1,100,""]],[0,0]],[[1240,1944,0,400,8,0,1.570796370506287,1,0,0,0,0,[]],51,1877,[],[[0],[1],[1,100,""]],[0,0]],[[1240,1472,0,304,8,0,1.570796370506287,1,0,0,0,0,[]],51,1878,[],[[0],[1],[1,100,""]],[0,0]],[[1568,1472,0,304,8,0,1.570796370506287,1,0,0,0,0,[]],51,1881,[],[[0],[1],[1,100,""]],[0,0]],[[1568,1768,0,56,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,2792,[[-1],[0],[0],[0],[0],[2],[1]],[[0],[1,1,1,0,"F 125 ; B 125",150,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1568,1952,0,56,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,5669,[[-1],[0],[0],[0],[0],[2],[1]],[[0],[1,1,1,0,"F 125 ; B 125",150,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1240,1792,0,56,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,5672,[[-1],[0],[0],[0],[0],[2],[1]],[[0],[1,1,1,0,"F 125 ; W 0.4; B 125; W 0.4",300,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1240,1944,0,56,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,5673,[[-1],[0],[0],[0],[0],[2],[1]],[[0],[1,1,1,0,"F 125 ; W 0.4; B 125; W 0.4",300,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1968,2016,0,72,8,0,3.141592741012573,1,0,0,0,0,[]],67,5727,[],[[1]],[0,0]],[[1712,1944,0,72,8,0,3.141592741012573,1,0,0,0,0,[]],67,5729,[],[[1]],[0,0]],[[1472,2072,0,152,8,0,3.141592741012573,1,0,0,0,0,[]],67,5798,[],[[1]],[0,0]],[[1112,2072,0,504,8,0,3.141592741012573,1,0,0,0,0,[]],67,5799,[],[[1]],[0,0]],[[1008.000061035156,2064,0,2008,224,0,1.570796370506287,1,0,0,0,0,[]],67,6384,[],[[1]],[0,0]],[[416.0001220703125,280,0,3776,984,0,1.570796370506287,1,0,0,0,0,[]],67,6485,[],[[1]],[0,0]],[[783.9999389648438,4264,0,368,768,0,3.141592741012573,1,0,0,0,0,[]],67,6487,[],[[1]],[0,0]],[[432,1960,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6524,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[464,1960,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6658,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[496,1960,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7268,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[560,1960,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7269,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[592,1960,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7270,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[432,2632,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7303,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[672,2656,0,264,8,0,3.141592741012573,1,0,0,0,0,[]],67,7304,[],[[1]],[0,0]],[[544,2608,0,32,8,0,3.141592741012573,1,0,0,0,0,[]],67,7297,[],[[1]],[0,0]],[[464,2632,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7298,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[496,2632,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7299,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[528,2632,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7302,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[560,2632,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7306,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[592,2632,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7307,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[624,2632,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7308,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[656,2632,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7309,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[432,3120,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7310,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[640,3144,0,224,8,0,3.141592741012573,1,0,0,0,0,[]],67,7311,[],[[1]],[0,0]],[[464,3120,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7314,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[496,3120,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7315,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[528,3120,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7316,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[560,3120,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7317,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[592,3120,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7318,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[624,3120,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7319,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[704,3120,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7312,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[736,3120,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7320,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[768,3120,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7321,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[784,3144,0,96,8,0,3.141592741012573,1,0,0,0,0,[]],67,7322,[],[[1]],[0,0]],[[200,2480,0,336,232,0,0,1,0.5005336403846741,0.5006821155548096,0,0,[]],175,7305,[],[],[0,"Default",0,1]],[[2200,2232,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7323,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2232,2232,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7324,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2264,2232,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7325,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2296,2232,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7326,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2072,2232,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7327,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2104,2232,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7328,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2136,2232,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7329,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2168,2232,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7330,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1936,2232,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7331,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1968,2232,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7332,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2000,2232,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7333,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2032,2232,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7334,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1840,2232,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7336,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1872,2232,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7337,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1904,2232,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7338,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1776,2232,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7335,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1648,2232,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7339,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1680,2232,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7447,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1712,2232,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7457,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1744,2232,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7458,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1584,2232,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7459,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1616,2232,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7460,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1448,2232,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7461,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1320,2232,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7462,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1352,2232,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8536,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1384,2232,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8537,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1416,2232,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8538,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1256,2232,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8539,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1288,2232,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8540,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1512,2232,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8541,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1480,2232,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8542,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1544,2232,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8543,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1216,2232,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8544,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1088,2232,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8545,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1120,2232,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8546,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1152,2232,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8547,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1184,2232,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8548,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1024,2232,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8549,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1056,2232,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8550,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[416,2064,0,192,8,0,0,1,0,0,0,0,[]],45,8551,[],[[0],[1]],[0,0]],[[-392,-56,0,60.93439102172852,60.93439102172852,0,0,1,0.5,0.5,0,0,[]],53,6520,[["Threading the Needle"],[""],[0]],[],[1,"Default",0,1]],[[1040,960,0,300,117,0,0,1,0,0,0,0,[[]]],61,8553,[],[[1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>","1",7,0,60,0,0,0,0,0,"",-1,0]]],[]],["UI",2,576312657080805,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[240,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3097,[["right"]],[[0,1,0,1,1]],[0,"Default",0,1]],[[80,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3098,[["left"]],[[0,1,0,1,1]],[0,"Default",1,1]],[[560,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3099,[["up"]],[[1,1,1,1,1]],[0,"Default",3,1]],[[400,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3100,[["down"]],[[1,1,1,1,1]],[0,"Default",2,1]]],[]],["End Card",3,783318510570452,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],78,2607,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[12.04449462890625,194,0,615.9109497070313,67,0,0,1,0,0,0,0,[]],79,2608,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Timer for this level",2.5,0,0,0,0,0,-10,0,"",-1,0]],[[17.546875,248,0,604.90625,105,0,0,1,0,0,0,0,[]],80,2610,[[0],[0],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","13:40:40",4,0,63,50,0,0,-10,0,"",-1,0]],[[115.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,2611,[[0],[1],[0],[0],["replay"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Replay",""],[""],[2,2,0,0,0],["",""]],[0,"Replay",0,1]],[[524.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3086,[[0],[1],[0],[0],["next"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Next",""],[""],[2,2,0,0,0],["",""]],[0,"Next",0,1]],[[320.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3087,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > Back","Level Menu"],[""],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[320.75,521.8050537109375,0,384,96,0,0,1,0.5,0.5,0,0,[]],70,3088,[[1],[1],[0],[0],[""],["{\"size\": 22, \"left\": 70, \"right\": 18, \"alignY\": 60}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > DownloadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"DownloadReplay",0,1]]],[]],["Pause",4,203214220535570,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-310,678,0,274,31,0,0,1,0,0,0,0,[]],168,3089,[],[],[".ovo",0,1,"file"]],[[320,320,0,425,250,0,0,1,0.5,0.5,0,0,[]],82,3090,[],[[6,1,"",300,1,1,"",300,"overlay",1,"PauseClose",1,1]],[0,"Default",0,1]],[[214,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3091,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"",""],["PauseClose"],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[426,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3092,[[0],[1],[0],[0],["quit"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > GiveUp",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[115.5,202,0,409,118,0,0,1,0,0,0,0,[]],83,3093,[[1],[1],["pause"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Pause",4,0,57,50,0,0,-10,0,"",-1,0]],[[320.5,88,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3094,[[1],[1],[0],[0],["loadreplay"],["{\"size\": 16, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > LoadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"LoadReplay",0,1]],[[320.5,157,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3095,[[1],[0],[0],[0],["toggledebug"],["{\"size\": 15, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Debug > Toggle",""],[""],[2,2,0,0,0],["",""]],[0,"ToggleDebug",0,1]],[[78,448,0,484,134,0,0,1,0,0,0,0,[]],193,3096,[],[],[0,"Default",0,1]]],[]],["Overlay",5,228136679307289,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[432,4,0,203.0009155273438,64,0,0,1,0,0,0,0,[]],107,5488,[],[[1,0,1,0,1]],[2,2,2,2,0,1,0,0,1]],[[432,4,0,203,64,0,0,1,0,0,0,0,[]],84,3101,[[0],[0],[""],["en-us"],[0],[1],[1],["{\"alignY\": 85, \"alignX\": 45, \"size\": 28}"],[0],[1],[0],[0],[0]],[["",""],[1,0,1,0,1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",2,0,100,50,0,0,-10,0,"",-1,0]],[[88,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3102,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Pause",""],[""],[0,0,0,0,1],["",""]],[0,"Pause",0,1]],[[158,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3103,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Replay","1"],[""],[0,0,0,0,1],["",""]],[0,"Reload",0,1]]],[]],["End Game",6,668255908569929,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],85,3104,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[73,194,0,494,72,0,0,1,0,0,0,0,[]],86,3105,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],["{alignY:50}"],[0],[1],[0],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Your final time",2.5,0,50,50,0,0,-10,0,"",-1,0]],[[320,403,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3106,[[0],[1],[0],[0],[""],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Quit",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[73,243,0,494,85,0,0,1,0,0,0,0,[]],87,3108,[[0],[1],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",3,0,50,50,0,0,-10,0,"",-1,0]],[[73,318,0,494,25,0,0,1,0,0,0,0,[]],86,5480,[[1],[1],["tryagainhardmode"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Try again in hard mode!",1,0,50,50,0,0,-2,0,"",-1,0]]],[]],["Banner",7,799057269229418,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-237,-189,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,3109,[],[["overlay"]],[0,"Default",0,1]]],[]],["AdPlaying",8,732186786657364,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,-203.5,0,250,97,0,0,1,0.5,0.5,0,0,[]],125,390,[],[[6,1,"",300,1,1,"",300,"overlay",1,"",1,1],[]],[0,"Default",0,1]],[[209,-275,0,222,139,0,0,1,0,0,0,0,[]],86,391,[[1],[1],["adplaying"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","An ad is playing right now...",1.2,0,50,50,0,0,-2,0,"",-1,0]],[[-154.5756988525391,-294.3137512207031,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,5508,[],[["overlay"]],[0,"Default",0,1]]],[]]],[],[]],["Level 51",3000,3000,true,"Levels",287534815755423,[["Background",0,340397711023578,true,[255,255,255],false,0,0,1,false,false,1,0,0,[],[]],["Layer 0",1,724972905082547,true,[255,255,255],true,1,1,1,false,false,1,0,0,[[[876,1252,0,325,117,0,0,1,0,0,0,0,[[]]],61,8555,[],[[1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>","50",7,0,70,0,0,0,0,0,"",-1,0]],[[984,1472,0,32,64,0,0,1,0.5,0.5,0,0,[]],42,8556,[["run"],[0],[1],[1],[0],[0.8],[0.5],[0],[1],[0],[0],[0],["ovo+"],[2],[0],[0],[0],[""],[0],[3],[0],[0],[0],[0],[0],[0],[0]],[[330,1500,1500,650,1500,1000,1,0,0,1],[],[1,0],[0,10000,360,1]],[1,"Default",0,1]],[[896,1416,0,1352,8,0,1.570796370506287,1,0,0,0,0,[]],67,8564,[],[[1]],[0,0]],[[1848,1080,0,97,199,0,1.570796370506287,1,0.5257731676101685,0.4974874258041382,0,0,[]],44,8741,[],[[0]],[0,"Default",0,1]],[[-280,-32,0,60.93439102172852,60.93439102172852,0,0,1,0.5,0.5,0,0,[]],53,8751,[["The Twin Towers"],[""],[0]],[],[1,"Default",0,1]],[[888,1408,0,336,8,0,0,1,0,0,0,0,[]],67,8557,[],[[1]],[0,0]],[[1224,768,0,1416,8,0,1.570796370506287,1,0,0,0,0,[]],67,8558,[],[[1]],[0,0]],[[1224,2376,0,384,8,0,1.570796370506287,1,0,0,0,0,[]],67,8565,[],[[1]],[0,0]],[[952,1528,0,88,8,0,0,1,0,0,0,0,[]],67,8567,[],[[1]],[0,0]],[[888,2760,0,336,8,0,0,1,0,0,0,0,[]],67,8562,[],[[1]],[0,0]],[[912,1432,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8563,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[912,1464,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8569,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[912,1496,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8570,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[912,1528,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8571,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[912,1560,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8572,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[912,1592,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8575,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[912,1624,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8576,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[912,1656,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8577,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[912,1752,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8578,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[912,1784,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8579,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[912,1816,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8580,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[912,1848,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8581,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[912,1880,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8582,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[912,1912,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8583,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[912,1944,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8584,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[912,1976,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8585,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[912,2008,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8586,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[912,2040,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8587,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[912,2072,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8588,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[912,2104,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8589,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[912,2136,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8590,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[912,2168,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8591,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[912,2200,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8592,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[912,2232,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8593,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[912,2264,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8594,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[912,2296,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8595,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[912,2328,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8596,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[912,2360,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8597,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[912,2392,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8598,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[912,2424,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8599,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[912,2456,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8600,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[912,2552,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8603,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[912,2584,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8604,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[912,2616,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8605,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[912,2648,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8606,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[912,2680,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8607,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[912,2712,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8608,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[912,2744,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8609,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1200,1592,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8614,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1200,1624,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8615,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1200,1656,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8616,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1200,1688,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8617,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1200,1720,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8618,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1200,1752,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8619,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1200,1784,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8620,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1200,1816,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8621,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1200,1848,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8622,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1200,1880,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8623,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1200,1912,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8624,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1200,1944,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8625,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1200,2040,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8628,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1200,2072,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8629,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1200,2104,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8630,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1200,2136,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8631,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1200,2168,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8632,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1200,2392,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8639,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1200,2424,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8640,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1200,2456,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8641,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1200,2552,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8644,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1200,2584,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8645,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1200,2616,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8646,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1200,2648,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8647,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1200,2680,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8648,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1200,2712,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8649,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1200,2744,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8650,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[944,2744,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8633,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[976,2744,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8634,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1008,2744,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8635,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1040,2744,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8636,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1072,2744,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8637,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1104,2744,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8638,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1136,2744,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8651,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1168,2744,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8652,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[888,1728,0,200,8,0,0,1,0,0,0,0,[]],67,8560,[],[[1]],[0,0]],[[912,1712,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8561,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[944,1712,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8566,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[976,1712,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8568,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1008,1712,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8573,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1040,1712,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8574,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1072,1712,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8610,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1136,1744,0,104,32,0,0,1,0.5,0.5,0,0,[]],43,8654,[[0.0000001],[0]],[[0]],[1,"Default",0,1]],[[1024,2016,0,192,8,0,0,1,0,0,0,0,[]],67,8658,[],[[1]],[0,0]],[[1040,2000,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8659,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1072,2000,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8660,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1104,2000,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8661,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1136,2000,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8662,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1168,2000,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8663,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1200,2000,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8664,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[976,2008,0,104,32,0,0,1,0.5,0.5,0,0,[]],43,8626,[[0.0000001],[0]],[[0]],[1,"Default",0,1]],[[1056,2712,0,40,32,0,0,1,0.5,0.5,0,0,[]],43,8627,[[0.7],[0]],[[0]],[0,"Default",0,1]],[[1136,2512,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8611,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1168,2512,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8612,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1088,2528,0,128,8,0,0,1,0,0,0,0,[]],67,8613,[],[[1]],[0,0]],[[1200,2512,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8653,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[912,2512,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8601,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[944,2512,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8602,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[896,2528,0,128,8,0,0,1,0,0,0,0,[]],67,8642,[],[[1]],[0,0]],[[976,2512,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8643,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1008,2512,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8655,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1104,2512,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8656,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1040,2136,0,32,24,0,0,1,0,0,0,0,[]],46,8657,[[0],[0],[""],["en-us"],[0],[0],[1],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","!",1,0,50,0,0,0,0,0,"",-1,0]],[[1128,1648,0,32,24,0,0,1,0,0,0,0,[]],46,8665,[[0],[0],[""],["en-us"],[0],[0],[1],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","!",1,0,50,0,0,0,0,0,"",-1,0]],[[952,1928,0,32,24,0,0,1,0,0,0,0,[]],46,8666,[[0],[0],[""],["en-us"],[0],[0],[1],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","!",1,0,50,0,0,0,0,0,"",-1,0]],[[1224,2376,0,480,8,0,0,1,0,0,0,0,[]],67,8559,[],[[1]],[0,0]],[[1216,2200,0,16,16,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,8668,[[-1],[0],[0],[0],[0],[2],[1]],[[0],[1,0,1,1,"F 184",500,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1616,2336,0,32,32,0,0,1,0.5,0.5,0,0,[]],49,8669,[[2],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[0,"Default",0,1]],[[1224,2000,0,192,8,0,1.570796370506287,1,0,0,0,0,[]],51,8670,[],[[0],[1],[1,100,""]],[0,0]],[[1200,1464,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8667,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1200,1496,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8671,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1200,1528,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8672,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1200,1560,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8673,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1200,1432,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8674,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1624,2536,0,24,776,0,-1.570796489715576,1,0.5,0.5,0,0,[]],50,8675,[[-1],[0],[0],[0],[0],[2],[1]],[[0],[1,0,1,1,"F 2000",65,0,10,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1224,2528,0,800,8,0,0,1,0,0,0,0,[]],51,8676,[],[[0],[1],[1,100,""]],[0,0]],[[1712,2048,0,336,8,0,1.570796370506287,1,0,0,0,0,[]],67,8677,[],[[1]],[0,0]],[[1224,2184,0,392,8,0,0,1,0,0,0,0,[]],67,8678,[],[[1]],[0,0]],[[1600,2168,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8679,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1544,2064,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,8680,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1656,2512,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8682,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1688,2512,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8683,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1720,2512,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8684,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1624,2512,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8685,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1784,2512,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8686,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1816,2512,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8687,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1848,2512,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8688,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1752,2512,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8689,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1912,2512,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8690,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1944,2512,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8691,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1976,2512,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8692,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1880,2512,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8693,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2008,2512,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8694,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1560,1944,0,104,32,0,1.570796370506287,1,0,0,0,0,[]],67,8695,[],[[1]],[0,0]],[[1600,1760,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,8696,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1616,1936,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,8697,[[0.7],[0]],[[0]],[0,"Default",0,1]],[[1536,2040,0,176,8,0,0,1,0,0,0,0,[]],67,8681,[],[[1]],[0,0]],[[1560,1944,0,40,8,0,0,1,0,0,0,0,[]],67,8699,[],[[1]],[0,0]],[[1648,1936,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,8700,[[0.7],[0]],[[0]],[0,"Default",0,1]],[[1680,1936,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,8701,[[0.7],[0]],[[0]],[0,"Default",0,1]],[[1712,1936,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,8702,[[0.7],[0]],[[0]],[0,"Default",0,1]],[[1744,1936,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,8703,[[0.7],[0]],[[0]],[0,"Default",0,1]],[[1776,1936,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,8704,[[0.7],[0]],[[0]],[0,"Default",0,1]],[[1808,1936,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,8705,[[0.7],[0]],[[0]],[0,"Default",0,1]],[[1840,1936,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,8706,[[0.7],[0]],[[0]],[0,"Default",0,1]],[[1872,1936,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,8707,[[0.7],[0]],[[0]],[0,"Default",0,1]],[[1904,1936,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,8708,[[0.7],[0]],[[0]],[0,"Default",0,1]],[[1488,1736,0,352,8,0,0,1,0,0,0,0,[]],67,8709,[],[[1]],[0,0]],[[1632,1760,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,8710,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1664,1760,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,8711,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1696,1760,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,8712,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1728,1760,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,8713,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1760,1760,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,8714,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1504,1760,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,8715,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1536,1760,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,8716,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1568,1760,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,8717,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1792,1760,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,8718,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1824,1760,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,8719,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1712,2184,0,216,8,0,0,1,0,0,0,0,[]],67,8720,[],[[1]],[0,0]],[[1928,1576,0,608,8,0,1.570796370506287,1,0,0,0,0,[]],67,8721,[],[[1]],[0,0]],[[1488,1568,0,440,8,0,0,1,0,0,0,0,[]],67,8723,[],[[1]],[0,0]],[[1752,864,0,832,8,0,1.570796370506287,1,0,0,0,0,[]],67,8724,[],[[1]],[0,0]],[[1488,1736,0,448,8,0,1.570796370506287,1,0,0,0,0,[]],51,8726,[],[[0],[1],[1,100,""]],[0,0]],[[1816,2120,0,64,64,0,0,1,0.5,0.5,0,0,[]],60,8725,[["level51"]],[[1],[400,-200,800,0,0,0],[0,0,0,1,1]],[0,"Default",0,1]],[[1704,2040,0,216,8,0,0,1,0,0,0,0,[]],45,8727,[],[[0],[1]],[0,0]],[[1544,640,0,152,104,0,0,1,0,0,0,0,[]],46,8698,[[1],[1],["lvltxt51-1"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","By Leetle Toady",1,0,50,0,0,0,0,0,"",-1,0]],[[1240,2512,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8722,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1272,2512,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8728,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1304,2512,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8729,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1368,2512,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8731,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1400,2512,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8732,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1432,2512,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8733,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1336,2512,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8734,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1496,2512,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8735,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1528,2512,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8736,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1560,2512,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8737,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1464,2512,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8738,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1592,2512,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8739,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1768,1592,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8730,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1768,1624,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8740,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1768,1656,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8742,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1488,1240,0,336,8,0,1.570796370506287,1,0,0,0,0,[]],51,8743,[],[[0],[1],[1,100,""]],[0,0]],[[1616,1720,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8744,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1240,1752,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8745,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1240,1784,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8746,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1240,1816,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8747,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1240,1848,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8748,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1240,1880,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8749,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1240,1912,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8750,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1240,1944,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8752,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1240,1976,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8753,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1240,2008,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8754,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1240,2040,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8755,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1240,2072,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8756,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1240,2104,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8757,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1240,2136,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8758,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1240,2168,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8759,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1240,1432,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8760,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1240,1464,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8761,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1240,1496,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8762,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1240,1528,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8763,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1240,1560,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8764,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1240,1592,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8765,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1240,1624,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8766,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1240,1656,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8767,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1240,1688,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8768,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1240,1720,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8769,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1464,1752,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8770,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1464,1784,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8771,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1464,1816,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8772,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1464,1848,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8773,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1464,1880,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8774,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1464,1912,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8775,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1464,1944,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8776,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1464,1976,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8777,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1464,2008,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8778,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1464,2040,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8779,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1464,2072,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8780,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1464,2104,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8781,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1464,2136,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8782,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1464,2168,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8783,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1464,1424,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8784,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1464,1456,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8785,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1464,1488,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8786,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1464,1528,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8787,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1464,1560,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8788,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1344,1776,0,40,8,0,0,1,0,0,0,0,[]],67,8789,[],[[1]],[0,0]],[[1280,1632,0,40,8,0,0,1,0,0,0,0,[]],67,8790,[],[[1]],[0,0]],[[1320,1376,0,120,8,0,1.570796370506287,1,0,0,0,0,[]],67,8791,[],[[1]],[0,0]],[[1392,1440,0,120,8,0,1.570796370506287,1,0,0,0,0,[]],67,8792,[],[[1]],[0,0]],[[1504,1552,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8794,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1536,1552,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8795,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1568,1552,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8796,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1600,1552,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8797,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1632,1552,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8798,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1664,1552,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8799,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1696,1552,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8793,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1728,1552,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8800,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1808,1552,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8802,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1840,1552,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8803,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1872,1552,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8804,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1392,1440,0,40,8,0,0,1,0,0,0,0,[]],67,8805,[],[[1]],[0,0]],[[1272,1376,0,40,8,0,0,1,0,0,0,0,[]],67,8806,[],[[1]],[0,0]],[[1488,1240,0,40,8,0,0,1,0,0,0,0,[]],67,8807,[],[[1]],[0,0]],[[1488,456,0,680,8,0,1.570796370506287,1,0,0,0,0,[]],51,8808,[],[[0],[1],[1,100,""]],[0,0]],[[1280,944,0,304,8,0,1.570796370506287,1,0,0,0,0,[]],67,8809,[],[[1]],[0,0]],[[1224,768,0,256,8,0,0,1,0,0,0,0,[]],67,8810,[],[[1]],[0,0]],[[1344,856,0,32,32,0,0,1,0.5,0.5,0,0,[]],49,8811,[[3],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[0,"Default",0,1]],[[1520,1096,0,40,24,0,0,1,0.5,0.5,0,0,[]],50,8801,[[-1],[0],[0],[0],[0],[3],[1]],[[0],[1,0,1,1,"F 2000",999999,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1488,1088,0,80,8,0,0,1,0,0,0,0,[]],51,8812,[],[[0],[1],[1,100,""]],[0,0]],[[1568,864,0,120,80,0,1.570796370506287,1,0,0,0,0,[]],67,8813,[],[[1]],[0,0]],[[1744,864,0,120,80,0,1.570796370506287,1,0,0,0,0,[]],67,8814,[],[[1]],[0,0]],[[1568,976,0,96,8,0,0,1,0,0,0,0,[]],45,8815,[],[[0],[1]],[0,0]],[[1568,1088,0,96,8,0,0,1,0,0,0,0,[]],51,8816,[],[[0],[1],[1,100,""]],[0,0]],[[1696,1096,0,40,24,0,0,1,0.5,0.5,0,0,[]],50,8817,[[-1],[0],[0],[0],[0],[3],[1]],[[0],[1,0,1,1,"F 2000",999999,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1664,1088,0,80,8,0,0,1,0,0,0,0,[]],51,8818,[],[[0],[1],[1,100,""]],[0,0]],[[1752,448,0,312,8,0,1.570796370506287,1,0,0,0,0,[]],67,8819,[],[[1]],[0,0]],[[1480,448,0,264,8,0,0,1,0,0,0,0,[]],67,8820,[],[[1]],[0,0]],[[1736,576,0,64,32,0,3.141592741012573,1,0.125,0.5,0,0,[]],55,8821,[[1],[50]],[[1],[300,1,1,180,0,0,500,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[1720,480,0,64,32,0,2.356194496154785,1,0.125,0.5,0,0,[]],55,8822,[[1],[50]],[[1],[300,1,1,180,0,0,500,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[1512,480,0,64,32,0,0.7853981852531433,1,0.125,0.5,0,0,[]],55,8823,[[1],[50]],[[1],[300,1,1,180,0,0,500,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[1496,576,0,64,32,0,0,1,0.125,0.5,0,0,[]],55,8824,[[1],[50]],[[1],[300,1,1,180,0,0,500,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[1616,464,0,64,32,0,1.570796370506287,1,0.125,0.5,0,0,[]],55,8827,[[1],[50]],[[1],[300,1,1,180,0,0,500,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[1706.343017578125,450.3431396484375,0,64,8,0,0.7853981852531433,1,0,0,0,0,[]],67,8825,[],[[1]],[0,0]],[[1531.313720703125,453.686279296875,0,64,8,0,2.356194496154785,1,0,0,0,0,[]],67,8826,[],[[1]],[0,0]],[[1616,576,0,32,32,0,0,1,0.5,0.5,0,0,[]],49,8828,[[4],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[0,"Default",0,1]],[[1744,816,0,32,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,8829,[[-1],[0],[0],[0],[0],[4],[1]],[[0],[1,0,1,1,"F 100",1000,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1752,760,0,104,8,0,1.570796370506287,1,0,0,0,0,[]],51,8830,[],[[0],[1],[1,100,""]],[0,0]],[[1584,976,0,32,24,0,-1.570796489715576,1,0.5,0.5,0,0,[]],50,8831,[[-1],[0],[0],[0],[0],[5],[1]],[[0],[1,0,1,1,"F 300",100,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1616,952,0,32,32,0,0,1,0.5,0.5,0,0,[]],49,8832,[[5],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[0,"Default",0,1]],[[1752,752,0,200,8,0,0,1,0,0,0,0,[]],51,8833,[],[[0],[1],[1,100,""]],[0,0]],[[1752,976,0,96,8,0,0,1,0,0,0,0,[]],51,8834,[],[[0],[1],[1,100,""]],[0,0]],[[1952,752,0,232,8,0,1.570796370506287,1,0,0,0,0,[]],51,8835,[],[[0],[1],[1,100,""]],[0,0]],[[1768,960,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8836,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1800,960,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8837,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1832,960,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8838,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1928,960,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8839,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1912,976,0,40,8,0,0,1,0,0,0,0,[]],51,8840,[],[[0],[1],[1,100,""]],[0,0]],[[1776,1552,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8841,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1904,1552,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8842,[[0],[0]],[[0],[1]],[0,"Default",0,1]]],[]],["UI",2,485509620695083,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[240,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3097,[["right"]],[[0,1,0,1,1]],[0,"Default",0,1]],[[80,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3098,[["left"]],[[0,1,0,1,1]],[0,"Default",1,1]],[[560,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3099,[["up"]],[[1,1,1,1,1]],[0,"Default",3,1]],[[400,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3100,[["down"]],[[1,1,1,1,1]],[0,"Default",2,1]]],[]],["End Card",3,781710398531892,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],78,2607,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[12.04449462890625,194,0,615.9109497070313,67,0,0,1,0,0,0,0,[]],79,2608,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Timer for this level",2.5,0,0,0,0,0,-10,0,"",-1,0]],[[17.546875,248,0,604.90625,105,0,0,1,0,0,0,0,[]],80,2610,[[0],[0],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","13:40:40",4,0,63,50,0,0,-10,0,"",-1,0]],[[115.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,2611,[[0],[1],[0],[0],["replay"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Replay",""],[""],[2,2,0,0,0],["",""]],[0,"Replay",0,1]],[[524.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3086,[[0],[1],[0],[0],["next"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Next",""],[""],[2,2,0,0,0],["",""]],[0,"Next",0,1]],[[320.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3087,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > Back","Level Menu"],[""],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[320.75,521.8050537109375,0,384,96,0,0,1,0.5,0.5,0,0,[]],70,3088,[[1],[1],[0],[0],[""],["{\"size\": 22, \"left\": 70, \"right\": 18, \"alignY\": 60}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > DownloadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"DownloadReplay",0,1]]],[]],["Pause",4,802173667050498,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-310,678,0,274,31,0,0,1,0,0,0,0,[]],168,3089,[],[],[".ovo",0,1,"file"]],[[320,320,0,425,250,0,0,1,0.5,0.5,0,0,[]],82,3090,[],[[6,1,"",300,1,1,"",300,"overlay",1,"PauseClose",1,1]],[0,"Default",0,1]],[[214,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3091,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"",""],["PauseClose"],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[426,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3092,[[0],[1],[0],[0],["quit"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > GiveUp",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[115.5,202,0,409,118,0,0,1,0,0,0,0,[]],83,3093,[[1],[1],["pause"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Pause",4,0,57,50,0,0,-10,0,"",-1,0]],[[320.5,88,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3094,[[1],[1],[0],[0],["loadreplay"],["{\"size\": 16, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > LoadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"LoadReplay",0,1]],[[320.5,157,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3095,[[1],[0],[0],[0],["toggledebug"],["{\"size\": 15, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Debug > Toggle",""],[""],[2,2,0,0,0],["",""]],[0,"ToggleDebug",0,1]],[[78,448,0,484,134,0,0,1,0,0,0,0,[]],193,3096,[],[],[0,"Default",0,1]]],[]],["Overlay",5,296704785452441,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[432,4,0,203.0009155273438,64,0,0,1,0,0,0,0,[]],107,5488,[],[[1,0,1,0,1]],[2,2,2,2,0,1,0,0,1]],[[432,4,0,203,64,0,0,1,0,0,0,0,[]],84,3101,[[0],[0],[""],["en-us"],[0],[1],[1],["{\"alignY\": 85, \"alignX\": 45, \"size\": 28}"],[0],[1],[0],[0],[0]],[["",""],[1,0,1,0,1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",2,0,100,50,0,0,-10,0,"",-1,0]],[[88,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3102,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Pause",""],[""],[0,0,0,0,1],["",""]],[0,"Pause",0,1]],[[158,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3103,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Replay","1"],[""],[0,0,0,0,1],["",""]],[0,"Reload",0,1]]],[]],["End Game",6,915704849487064,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],85,3104,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[73,194,0,494,72,0,0,1,0,0,0,0,[]],86,3105,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],["{alignY:50}"],[0],[1],[0],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Your final time",2.5,0,50,50,0,0,-10,0,"",-1,0]],[[320,403,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3106,[[0],[1],[0],[0],[""],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Quit",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[73,243,0,494,85,0,0,1,0,0,0,0,[]],87,3108,[[0],[1],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",3,0,50,50,0,0,-10,0,"",-1,0]],[[73,318,0,494,25,0,0,1,0,0,0,0,[]],86,5480,[[1],[1],["tryagainhardmode"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Try again in hard mode!",1,0,50,50,0,0,-2,0,"",-1,0]]],[]],["Banner",7,812285332773580,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-237,-189,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,3109,[],[["overlay"]],[0,"Default",0,1]]],[]],["AdPlaying",8,641512059620250,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,-203.5,0,250,97,0,0,1,0.5,0.5,0,0,[]],125,390,[],[[6,1,"",300,1,1,"",300,"overlay",1,"",1,1],[]],[0,"Default",0,1]],[[209,-275,0,222,139,0,0,1,0,0,0,0,[]],86,391,[[1],[1],["adplaying"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","An ad is playing right now...",1.2,0,50,50,0,0,-2,0,"",-1,0]],[[-154.5756988525391,-294.3137512207031,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,5508,[],[["overlay"]],[0,"Default",0,1]]],[]]],[],[]],["Level 52",5000,3000,true,"Levels",442499843579355,[["Background",0,666654289030370,true,[255,255,255],false,0,0,1,false,false,1,0,0,[],[]],["Layer 0",1,119248424355444,true,[255,255,255],true,1,1,1,false,false,1,0,0,[[[3720,2048,0,32,32,0,0,1,0.5,0.5,0,0,[]],163,11871,[],[[0]],[0,"Default",0,1]],[[3720,2072,0,32,32,0,0,1,0.5,0.5,0,0,[]],163,11869,[],[[0]],[0,"Default",0,1]],[[3696,1288,0,168,104,0,0,1,0.5,0.5,0,0,[]],49,11819,[[7],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[0,"Default",0,1]],[[800,200,0,224,117,0,0,1,0,0,0,0,[[]]],61,8844,[],[[1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>","1",7,0,50,0,0,0,0,0,"",-1,0]],[[280,296,0,32,64,0,0,1,0.5,0.5,0,0,[]],42,8845,[["run"],[0],[1],[1],[0],[0.8],[0.5],[0],[1],[0],[0],[0],["ovo+"],[2],[0],[0],[0],[""],[0],[3],[0],[0],[0],[0],[0],[0],[0]],[[330,1500,1500,650,1500,1000,1,0,0,1],[],[0,0],[0,10000,360,1]],[1,"Default",0,1]],[[4048,2016,0,97,199,0,0,1,0.5257731676101685,0.4974874258041382,0,0,[]],44,8847,[],[[0]],[0,"Default",0,1]],[[-280,-32,0,60.93439102172852,60.93439102172852,0,0,1,0.5,0.5,0,0,[]],53,8848,[["Andromeda"],[""],[0]],[],[1,"Default",0,1]],[[496,168,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,8931,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1680,1320,0,64,64,0,0,1,0.5,0.5,0,0,[]],60,9015,[["level52"]],[[1],[400,-200,800,0,0,0],[0,0,0,1,1]],[0,"Default",0,1]],[[79.99999237060547,144,0,232,8,0,1.570796370506287,1,0,0,0,0,[]],67,9080,[],[[1]],[0,0]],[[72,376,0,40,8,0,0,1,0,0,0,0,[]],67,9094,[],[[1]],[0,0]],[[424,264,0,32,32,0,0,1,0.5,0.5,0,0,[]],49,9117,[[1],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[0,"Default",0,1]],[[536,320,0,32,24,0,0,1,0.5,0.5,0,0,[]],50,9118,[[-1],[0],[0],[0],[0],[1],[1]],[[0],[1,0,1,1,"F 920",200,100,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[112,376,0,96,8,0,0,1,0,0,0,0,[]],45,8846,[],[[0],[1]],[0,0]],[[80,144,0,1168,8,0,0,1,0,0,0,0,[]],67,8849,[],[[1]],[0,0]],[[208,152,0,9,232,0,0,1,0,0,0,0,[]],48,8850,[],[[0],[1]],[0,0]],[[208,376,0,1168,8,0,0,1,0,0,0,0,[]],67,8851,[],[[1]],[0,0]],[[528,168,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,8852,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[560,168,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,8853,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[592,168,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,8854,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[624,168,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,8855,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[656,168,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,8856,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[688,168,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,8857,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[720,168,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,8858,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[752,168,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,8859,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[784,168,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,8860,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[816,168,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,8861,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[848,168,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,8862,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[880,168,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,8863,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[912,168,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,8864,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[944,168,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,8865,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[976,168,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,8866,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1008,168,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,8867,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1040,168,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,8868,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1072,168,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,8869,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1104,168,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,8870,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1136,168,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,8871,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1168,168,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,8872,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1200,168,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,8873,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1232,168,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,8874,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[496,360,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8875,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[528,360,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8876,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[560,360,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8877,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[592,360,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8878,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[624,360,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8879,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[656,360,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8880,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[688,360,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8881,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[720,360,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8882,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[752,360,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8883,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[784,360,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8884,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[816,360,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8885,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[848,360,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8886,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[880,360,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8887,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[912,360,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8888,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[944,360,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8889,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[976,360,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8890,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1008,360,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8891,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1040,360,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8892,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1072,360,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8893,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1104,360,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8894,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1136,360,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8895,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1168,360,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8896,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1200,360,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8897,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1232,360,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8898,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[384,344,0,80,40,0,0,1,0,0,0,0,[]],67,8899,[],[[1]],[0,0]],[[384,144,0,80,40,0,0,1,0,0,0,0,[]],67,8901,[],[[1]],[0,0]],[[408,200,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,8902,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[440,200,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,8903,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[408,328,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8904,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[440,328,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8905,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1264,360,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8907,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1296,360,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8908,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1328,360,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8909,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1360,360,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8910,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1504,104,0,744,128,0,1.570796370506287,1,0,0,0,0,[]],67,8911,[],[[1]],[0,0]],[[1360,168,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8912,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1360,136,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8913,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[496,320,0,80,8,0,0,1,0,0,0,0,[]],51,8914,[],[[0],[1],[1,100,""]],[0,0]],[[1248,0,0,152,8,0,1.570796370506287,1,0,0,0,0,[]],67,8900,[],[[1]],[0,0]],[[1264,24,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8916,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1240,0,0,656,8,0,0,1,0,0,0,0,[]],67,8917,[],[[1]],[0,0]],[[1376,104,0,392,8,0,0,1,0,0,0,0,[]],67,8918,[],[[1]],[0,0]],[[1904,0,0,1016,8,0,1.570796370506287,1,0,0,0,0,[]],67,8915,[],[[1]],[0,0]],[[1880,160,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,11559,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1880,128,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,11560,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1880,224,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,11561,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1880,192,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,11562,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1880,296,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,11563,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1880,264,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,11564,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1880,360,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,11565,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1880,328,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,11566,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1528,160,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,11567,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1528,128,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,11568,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1528,224,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,11569,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1528,192,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,11570,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1528,288,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,11571,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1528,256,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,11572,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1528,352,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,11573,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1528,320,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,11574,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1512,112,0,736,16,0,1.570796370506287,1,0,0,0,0,[]],67,11575,[],[[1]],[0,0]],[[1640,240,0,256,8,0,0,1,0,0,0,0,[]],67,11576,[],[[1]],[0,0]],[[1512,392,0,384,8,0,0,1,0,0,0,0,[]],45,11577,[],[[0],[1]],[0,0]],[[1624,544,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,11578,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1528,544,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,11579,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1560,544,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,11580,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1592,544,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,11581,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1512,560,0,160,8,0,0,1,0,0,0,0,[]],67,11582,[],[[1]],[0,0]],[[1880,544,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,11583,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1784,544,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,11584,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1816,544,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,11585,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1848,544,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,11586,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1736,560,0,160,8,0,0,1,0,0,0,0,[]],67,11587,[],[[1]],[0,0]],[[1504,704,0,144,8,0,0,1,0,0,0,0,[]],45,11588,[],[[0],[1]],[0,0]],[[1640,704,0,128,8,0,0,1,0,0,0,0,[]],67,11589,[],[[1]],[0,0]],[[1768,704,0,128,8,0,0,1,0,0,0,0,[]],45,11590,[],[[0],[1]],[0,0]],[[1768,712,0,304,8,0,1.570796370506287,1,0,0,0,0,[]],67,11591,[],[[1]],[0,0]],[[1880,992,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,11592,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1784,992,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,11593,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1816,992,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,11594,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1848,992,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,11595,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1768,1008,0,128,8,0,0,1,0,0,0,0,[]],67,11596,[],[[1]],[0,0]],[[1648,712,0,168,8,0,1.570796370506287,1,0,0,0,0,[]],67,11597,[],[[1]],[0,0]],[[216,1008,0,592,8,0,0,1,0,0,0,0,[]],67,11598,[],[[1]],[0,0]],[[1624,928,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,11599,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1624,896,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,11600,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1624,992,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,11601,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1624,960,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,11602,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[216,376,0,1344,8,0,1.570796370506287,1,0,0,0,0,[]],67,11604,[],[[1]],[0,0]],[[960,840,0,552,8,0,0,1,0,0,0,0,[]],67,11605,[],[[1]],[0,0]],[[936,536,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,11606,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[600,384,0,576,192,0,0,1,0,0,0,0,[]],51,11607,[],[[0],[1],[1,100,""]],[0,0]],[[776,432,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],58,11654,[[0]],[[1],[1]],[0,"Default",0,1]],[[1000,432,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],58,11655,[[0]],[[1],[1]],[0,"Default",0,1]],[[776,512,0,24,24,0,0,1,0.5,0.5,0,0,[]],58,11656,[[0]],[[1],[1]],[0,"Default",0,1]],[[792,520,0,24,24,0,0,1,0.5,0.5,0,0,[]],58,11657,[[0]],[[1],[1]],[0,"Default",0,1]],[[808,536,0,24,24,0,0,1,0.5,0.5,0,0,[]],58,11658,[[0]],[[1],[1]],[0,"Default",0,1]],[[888,464,0,32,32,0,0,1,0.5,0.5,0,0,[]],58,11659,[[0]],[[1],[1]],[0,"Default",0,1]],[[760,416,0,32,9,0,0,1,0,0,0,0,[]],52,11660,[],[[0],[0]],[0,0]],[[984,416,0,32,9,0,0,1,0,0,0,0,[]],52,11661,[],[[0],[0]],[0,0]],[[832,544,0,24,24,0,0,1,0.5,0.5,0,0,[]],58,11662,[[0]],[[1],[1]],[0,"Default",0,1]],[[856,552,0,24,24,0,0,1,0.5,0.5,0,0,[]],58,11663,[[0]],[[1],[1]],[0,"Default",0,1]],[[880,560,0,24,24,0,0,1,0.5,0.5,0,0,[]],58,11664,[[0]],[[1],[1]],[0,"Default",0,1]],[[904,552,0,24,24,0,0,1,0.5,0.5,0,0,[]],58,11665,[[0]],[[1],[1]],[0,"Default",0,1]],[[992,512,0,24,24,0,0,1,0.5,0.5,0,0,[]],58,11666,[[0]],[[1],[1]],[0,"Default",0,1]],[[968,520,0,24,24,0,0,1,0.5,0.5,0,0,[]],58,11667,[[0]],[[1],[1]],[0,"Default",0,1]],[[952,536,0,24,24,0,0,1,0.5,0.5,0,0,[]],58,11668,[[0]],[[1],[1]],[0,"Default",0,1]],[[928,544,0,24,24,0,0,1,0.5,0.5,0,0,[]],58,11669,[[0]],[[1],[1]],[0,"Default",0,1]],[[1576,856,0,128,24,0,0,1,0.5,0.5,0,0,[]],49,11608,[[3],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[0,"Default",0,1]],[[1620,934,0,40,120,0,3.141592741012573,1,0.5,0.5,0,0,[]],50,11609,[[-1],[0],[0],[0],[0],[3],[0]],[[0],[1,0,1,1,"F 10000",700,200,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[616,584,0,64,32,0,1.570796370506287,1,0.125,0.5,0,0,[]],55,11610,[[1],[90]],[[1],[300,1,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[648,584,0,64,32,0,1.570796370506287,1,0.125,0.5,0,0,[]],55,11611,[[1],[90]],[[1],[300,1,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[680,584,0,64,32,0,1.570796370506287,1,0.125,0.5,0,0,[]],55,11612,[[1],[90]],[[1],[300,1,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[712,584,0,64,32,0,1.570796370506287,1,0.125,0.5,0,0,[]],55,11613,[[1],[90]],[[1],[300,1,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[744,584,0,64,32,0,1.570796370506287,1,0.125,0.5,0,0,[]],55,11614,[[1],[90]],[[1],[300,1,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[776,584,0,64,32,0,1.570796370506287,1,0.125,0.5,0,0,[]],55,11615,[[1],[90]],[[1],[300,1,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[808,584,0,64,32,0,1.570796370506287,1,0.125,0.5,0,0,[]],55,11616,[[1],[90]],[[1],[300,1,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[840,584,0,64,32,0,1.570796370506287,1,0.125,0.5,0,0,[]],55,11617,[[1],[90]],[[1],[300,1,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[872,584,0,64,32,0,1.570796370506287,1,0.125,0.5,0,0,[]],55,11618,[[1],[90]],[[1],[300,1,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[904,584,0,64,32,0,1.570796370506287,1,0.125,0.5,0,0,[]],55,11619,[[1],[90]],[[1],[300,1,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[936,584,0,64,32,0,1.570796370506287,1,0.125,0.5,0,0,[]],55,11620,[[1],[90]],[[1],[300,1,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[968,584,0,64,32,0,1.570796370506287,1,0.125,0.5,0,0,[]],55,11621,[[1],[90]],[[1],[300,1,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[1000,584,0,64,32,0,1.570796370506287,1,0.125,0.5,0,0,[]],55,11622,[[1],[90]],[[1],[300,1,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[1032,584,0,64,32,0,1.570796370506287,1,0.125,0.5,0,0,[]],55,11623,[[1],[90]],[[1],[300,1,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[1064,584,0,64,32,0,1.570796370506287,1,0.125,0.5,0,0,[]],55,11624,[[1],[90]],[[1],[300,1,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[1096,584,0,64,32,0,1.570796370506287,1,0.125,0.5,0,0,[]],55,11625,[[1],[90]],[[1],[300,1,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[1128,584,0,64,32,0,1.570796370506287,1,0.125,0.5,0,0,[]],55,11626,[[1],[90]],[[1],[300,1,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[1160,584,0,64,32,0,1.570796370506287,1,0.125,0.5,0,0,[]],55,11627,[[1],[90]],[[1],[300,1,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[216,680,0,296,8,0,0,1,0,0,0,0,[]],67,11628,[],[[1]],[0,0]],[[376,688,0,8,160,0,0,1,0,0,0,0,[]],48,11629,[],[[0],[1]],[0,0]],[[512,384,0,304,8,0,1.570796370506287,1,0,0,0,0,[]],67,11630,[],[[1]],[0,0]],[[376,840,0,432,8,0,0,1,0,0,0,0,[]],67,11634,[],[[1]],[0,0]],[[960,840,0,8,152,0,1.570796370506287,1,0,0,0,0,[]],48,11635,[],[[0],[1]],[0,0]],[[816,744,0,104,8,0,1.570796370506287,1,0,0,0,0,[]],67,11636,[],[[1]],[0,0]],[[808,744,0,160,8,0,0,1,0,0,0,0,[]],67,11637,[],[[1]],[0,0]],[[968,744,0,96,8,0,1.570796370506287,1,0,0,0,0,[]],45,11638,[],[[0],[1]],[0,0]],[[888,808,0,40,40,0,0,1,0.5,0.5,0,0,[]],49,11639,[[5],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[0,"Default",0,1]],[[1216,992,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,11640,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1184,992,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,11641,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[680,992,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,11642,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[648,992,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,11643,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[504,864,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,11644,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[472,864,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,11645,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1048,864,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,11646,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1016,864,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,11647,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[960,1008,0,8,152,0,1.570796370506287,1,0,0,0,0,[]],48,11648,[],[[0],[1]],[0,0]],[[960,1008,0,688,8,0,0,1,0,0,0,0,[]],67,11649,[],[[1]],[0,0]],[[296,856,0,40,40,0,0,1,0.5,0.5,0,0,[]],49,11650,[[4],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[0,"Default",0,1]],[[376,760,0,40,48,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,11651,[[-1],[0],[0],[0],[0],[4],[0]],[[0],[1,0,1,1,"F 160",700,100,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1648,848,0,160,8,0,1.570796370506287,1,0,0,0,0,[]],51,11603,[],[[0],[1],[1,100,""]],[0,0]],[[1760,1008,0,8,112,0,1.570796370506287,1,0,0,0,0,[]],51,11653,[],[[0],[1],[1,100,""]],[0,0]],[[1760,872,0,8,112,0,1.570796370506287,1,0,0,0,0,[]],51,11670,[],[[0],[1],[1,100,""]],[0,0]],[[1346.26318359375,960,0,123.8629150390625,136,0,0,1,-2.380000114440918,0.6399999856948853,0,0,[]],159,11671,[],[[0]],[0,"Default",0,1]],[[1640,880,0,8,128,0,0,1,0,0,0,0,[]],68,11672,[],[[1]],[0,0]],[[1704,952,0,40,40,0,0,1,0.5,0.5,0,0,[]],49,11673,[[8],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[0,"Default",0,1]],[[808,1008,0,192,8,0,1.570796370506287,1,0,0,0,0,[]],67,11652,[],[[1]],[0,0]],[[968,1008,0,192,8,0,1.570796370506287,1,0,0,0,0,[]],67,11674,[],[[1]],[0,0]],[[208,1192,0,600,8,0,0,1,0,0,0,0,[]],67,11675,[],[[1]],[0,0]],[[968,1192,0,936,8,0,0,1,0,0,0,0,[]],67,11676,[],[[1]],[0,0]],[[120,376,0,1520,8,0,1.570796370506287,1,0,0,0,0,[]],67,11677,[],[[1]],[0,0]],[[1904,1200,0,696,8,0,1.570796370506287,1,0,0,0,0,[]],67,11679,[],[[1]],[0,0]],[[112,1888,0,1784,8,0,0,1,0,0,0,0,[]],67,11680,[],[[1]],[0,0]],[[960,1192,0,8,152,0,1.570796370506287,1,0,0,0,0,[]],48,11681,[],[[0],[1]],[0,0]],[[432,1392,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,11678,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[336,1392,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,11683,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[368,1392,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,11684,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[400,1392,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,11685,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[560,1392,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,11687,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[464,1392,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,11688,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[496,1392,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,11689,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[528,1392,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,11690,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[688,1392,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,11691,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[592,1392,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,11692,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[624,1392,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,11693,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[656,1392,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,11694,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[816,1392,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,11695,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[720,1392,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,11696,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[752,1392,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,11697,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[784,1392,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,11698,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[432,1640,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,11699,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[336,1640,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,11700,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[368,1640,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,11701,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[400,1640,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,11702,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[560,1640,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,11703,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[464,1640,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,11704,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[496,1640,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,11705,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[528,1640,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,11706,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[688,1640,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,11707,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[592,1640,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,11708,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[624,1640,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,11709,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[656,1640,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,11710,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[816,1640,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,11711,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[720,1640,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,11712,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[752,1640,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,11713,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[784,1640,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,11714,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[840,1464,0,64,32,0,0,1,0.125,0.5,0,0,[]],55,11715,[[1],[180]],[[1],[300,1,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[840,1568,0,64,32,0,0,1,0.125,0.5,0,0,[]],55,11716,[[1],[180]],[[1],[300,1,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[312,1464,0,64,32,0,3.141592741012573,1,0.125,0.5,0,0,[]],55,11717,[[1],[180]],[[1],[300,1,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[312,1568,0,64,32,0,3.141592741012573,1,0.125,0.5,0,0,[]],55,11718,[[1],[180]],[[1],[300,1,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[576,1512,0,584,240,0,0,1,0.5,0.5,0,0,[]],50,11719,[[-1],[0],[0],[0],[0],[6],[0]],[[0],[1,0,1,0,"W 1 ;F 950 ; W 1; B 950 ",250,100,100,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[832,1408,0,216,512,0,1.570796370506287,1,0,0,0,0,[]],51,11720,[],[[0],[1],[1,100,""]],[0,0]],[[1072,1208,0,64,32,0,1.570796370506287,1,0.125,0.5,0,0,[]],55,11686,[[1],[180]],[[1],[300,1,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[1712,1880,0,64,32,0,-1.570796489715576,1,0.125,0.5,0,0,[]],55,11721,[[1],[180]],[[1],[300,1,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[1800,1208,0,64,32,0,1.570796370506287,1,0.125,0.5,0,0,[]],55,11722,[[1],[180]],[[1],[300,1,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[1392,1880,0,64,32,0,-1.570796489715576,1,0.125,0.5,0,0,[]],55,11724,[[1],[180]],[[1],[300,1,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[1064,1888,0,64,32,0,-1.570796489715576,1,0.125,0.5,0,0,[]],55,11725,[[1],[180]],[[1],[300,1,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[1520,1872,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,11726,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1424,1872,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,11727,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1456,1872,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,11728,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1488,1872,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,11729,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1408,1888,0,128,8,0,0,1,0,0,0,0,[]],67,11730,[],[[1]],[0,0]],[[1360,1872,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,11731,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1264,1872,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,11732,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1296,1872,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,11733,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1328,1872,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,11734,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1248,1888,0,128,8,0,0,1,0,0,0,0,[]],67,11735,[],[[1]],[0,0]],[[1648,1872,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,11736,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1552,1872,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,11737,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1584,1872,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,11738,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1616,1872,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,11739,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1536,1888,0,128,8,0,0,1,0,0,0,0,[]],67,11740,[],[[1]],[0,0]],[[1744,1872,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,11741,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1776,1872,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,11742,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1808,1872,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,11743,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1680,1872,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,11744,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1840,1872,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,11745,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1872,1872,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,11746,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1216,1424,0,112,8,0,1.570796370506287,1,0,0,0,0,[]],67,11747,[],[[1]],[0,0]],[[1112,1784,0,72,8,0,0,1,0,0,0,0,[]],67,11748,[],[[1]],[0,0]],[[1496,1784,0,96,8,0,0,1,0,0,0,0,[]],67,11749,[],[[1]],[0,0]],[[1272,1648,0,72,8,0,0,1,0,0,0,0,[]],67,11750,[],[[1]],[0,0]],[[1528,1552,0,72,8,0,0,1,0,0,0,0,[]],67,11751,[],[[1]],[0,0]],[[1736,1568,0,80,8,0,1.570796370506287,1,0,0,0,0,[]],67,11753,[],[[1]],[0,0]],[[1488,1376,0,80,8,0,1.570796370506287,1,0,0,0,0,[]],67,11754,[],[[1]],[0,0]],[[888,848,0,40,48,0,0,1,0.5,0.5,0,0,[]],50,8906,[[-1],[0],[0],[0],[0],[5],[0]],[[0],[1,0,1,1,"F 152",450,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[888,1008,0,40,48,0,3.141592741012573,1,0.5,0.5,0,0,[]],50,9114,[[-1],[0],[0],[0],[0],[5],[0]],[[0],[1,0,1,1,"F 152",450,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[888,1192,0,40,48,0,0,1,0.5,0.5,0,0,[]],50,11631,[[-1],[0],[0],[0],[0],[5],[0]],[[0],[1,0,1,1,"F 152",450,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[888,1240,0,160,40,0,0,1,0.5,0.5,0,0,[]],49,11755,[[6],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[0,"Default",0,1]],[[1624,864,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,11757,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1560,584,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,11756,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1592,584,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,11758,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1816,584,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,11759,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1848,584,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,11760,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1656,224,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,11761,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1656,544,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,11762,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1752,544,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,11763,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1624,584,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,11764,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1784,584,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,11765,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1448,1368,0,72,8,0,0,1,0,0,0,0,[]],67,11766,[],[[1]],[0,0]],[[1176,1416,0,72,8,0,0,1,0,0,0,0,[]],67,11752,[],[[1]],[0,0]],[[1564,1536,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,11767,[[0.7],[0]],[[0]],[0,"Default",0,1]],[[4520,2088,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,11784,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4424,2088,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,11785,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4456,2088,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,11786,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4488,2088,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,11787,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4648,2088,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,11788,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4552,2088,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,11789,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4584,2088,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,11790,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4616,2088,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,11791,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4776,2088,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,11792,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4680,2088,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,11793,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4712,2088,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,11794,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4744,2088,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,11795,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4904,2088,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,11796,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4808,2088,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,11797,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4840,2088,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,11798,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4872,2088,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,11799,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4928,1912,0,64,32,0,0,1,0.125,0.5,0,0,[]],55,11800,[[1],[180]],[[1],[300,1,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[4928,2016,0,64,32,0,0,1,0.125,0.5,0,0,[]],55,11801,[[1],[180]],[[1],[300,1,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[4400,1912,0,64,32,0,3.141592741012573,1,0.125,0.5,0,0,[]],55,11802,[[1],[180]],[[1],[300,1,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[4400,2016,0,64,32,0,3.141592741012573,1,0.125,0.5,0,0,[]],55,11803,[[1],[180]],[[1],[300,1,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[3688,632,0,240,584,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,11804,[[-1],[0],[0],[0],[0],[7],[0]],[[0],[1,0,1,0,"W 0.5;F 5000",600,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[4920,1856,0,216,512,0,1.570796370506287,1,0,0,0,0,[]],51,11805,[],[[0],[1],[1,100,""]],[0,0]],[[144,192,0,8,64,0,1.570796370506287,1,0.5,0.5,0,0,[[255,255,255,0,64,128,0.64]]],62,11807,[[1],[2],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[3696,1288,0,8,64,0,-1.570796489715576,1,0.5,0.5,0,0,[[255,255,255,0,64,128,0.64]]],62,11808,[[2],[-1],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[4208,1424,0,696,8,0,1.570796370506287,1,0,0,0,0,[]],67,11809,[],[[1]],[0,0]],[[3192,1424,0,688,8,0,1.570796370506287,1,0,0,0,0,[]],67,11810,[],[[1]],[0,0]],[[3184,2112,0,1016,8,0,0,1,0,0,0,0,[]],67,11811,[],[[1]],[0,0]],[[3192,1424,0,352,8,0,0,1,0,0,0,0,[]],67,11812,[],[[1]],[0,0]],[[3848,1424,0,352,8,0,0,1,0,0,0,0,[]],67,11813,[],[[1]],[0,0]],[[3544,1424,0,304,8,0,0,1,0,0,0,0,[]],45,11814,[],[[0],[1]],[0,0]],[[3544,1136,0,296,8,0,1.570796370506287,1,0,0,0,0,[]],67,11815,[],[[1]],[0,0]],[[3856,1136,0,296,8,0,1.570796370506287,1,0,0,0,0,[]],67,11816,[],[[1]],[0,0]],[[3536,1136,0,312,8,0,0,1,0,0,0,0,[]],67,11817,[],[[1]],[0,0]],[[3984,2000,0,40,48,0,3.141592741012573,1,0.5,0.5,0,0,[]],50,11818,[[-1],[0],[0],[0],[0],[7],[0]],[[0],[1,0,1,1,"W 0.5 ; F 650",1300,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[4672,1968,0,224,224,0,0,1,0.5,0.5,0,0,[]],191,9017,[],[[1]],[0,"Default",0,1]],[[568,1528,0,224,224,0,0,1,0.5,0.5,0,0,[]],191,11806,[],[[1]],[0,"Default",0,1]],[[3728,664,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,11820,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[3392,512,0,576,192,0,0,1,0,0,0,0,[]],51,11821,[],[[0],[1],[1,100,""]],[0,0]],[[3568,560,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],58,11822,[[0]],[[1],[1]],[0,"Default",0,1]],[[3792,560,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],58,11823,[[0]],[[1],[1]],[0,"Default",0,1]],[[3568,640,0,24,24,0,0,1,0.5,0.5,0,0,[]],58,11824,[[0]],[[1],[1]],[0,"Default",0,1]],[[3584,648,0,24,24,0,0,1,0.5,0.5,0,0,[]],58,11825,[[0]],[[1],[1]],[0,"Default",0,1]],[[3600,664,0,24,24,0,0,1,0.5,0.5,0,0,[]],58,11826,[[0]],[[1],[1]],[0,"Default",0,1]],[[3680,592,0,32,32,0,0,1,0.5,0.5,0,0,[]],58,11827,[[0]],[[1],[1]],[0,"Default",0,1]],[[3552,544,0,32,9,0,0,1,0,0,0,0,[]],52,11828,[],[[0],[0]],[0,0]],[[3776,544,0,32,9,0,0,1,0,0,0,0,[]],52,11829,[],[[0],[0]],[0,0]],[[3624,672,0,24,24,0,0,1,0.5,0.5,0,0,[]],58,11830,[[0]],[[1],[1]],[0,"Default",0,1]],[[3648,680,0,24,24,0,0,1,0.5,0.5,0,0,[]],58,11831,[[0]],[[1],[1]],[0,"Default",0,1]],[[3672,688,0,24,24,0,0,1,0.5,0.5,0,0,[]],58,11832,[[0]],[[1],[1]],[0,"Default",0,1]],[[3696,680,0,24,24,0,0,1,0.5,0.5,0,0,[]],58,11833,[[0]],[[1],[1]],[0,"Default",0,1]],[[3784,640,0,24,24,0,0,1,0.5,0.5,0,0,[]],58,11834,[[0]],[[1],[1]],[0,"Default",0,1]],[[3760,648,0,24,24,0,0,1,0.5,0.5,0,0,[]],58,11835,[[0]],[[1],[1]],[0,"Default",0,1]],[[3744,664,0,24,24,0,0,1,0.5,0.5,0,0,[]],58,11836,[[0]],[[1],[1]],[0,"Default",0,1]],[[3720,672,0,24,24,0,0,1,0.5,0.5,0,0,[]],58,11837,[[0]],[[1],[1]],[0,"Default",0,1]],[[3408,712,0,64,32,0,1.570796370506287,1,0.125,0.5,0,0,[]],55,11838,[[1],[90]],[[1],[300,1,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[3440,712,0,64,32,0,1.570796370506287,1,0.125,0.5,0,0,[]],55,11839,[[1],[90]],[[1],[300,1,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[3472,712,0,64,32,0,1.570796370506287,1,0.125,0.5,0,0,[]],55,11840,[[1],[90]],[[1],[300,1,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[3504,712,0,64,32,0,1.570796370506287,1,0.125,0.5,0,0,[]],55,11841,[[1],[90]],[[1],[300,1,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[3536,712,0,64,32,0,1.570796370506287,1,0.125,0.5,0,0,[]],55,11842,[[1],[90]],[[1],[300,1,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[3568,712,0,64,32,0,1.570796370506287,1,0.125,0.5,0,0,[]],55,11843,[[1],[90]],[[1],[300,1,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[3600,712,0,64,32,0,1.570796370506287,1,0.125,0.5,0,0,[]],55,11844,[[1],[90]],[[1],[300,1,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[3632,712,0,64,32,0,1.570796370506287,1,0.125,0.5,0,0,[]],55,11845,[[1],[90]],[[1],[300,1,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[3664,712,0,64,32,0,1.570796370506287,1,0.125,0.5,0,0,[]],55,11846,[[1],[90]],[[1],[300,1,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[3696,712,0,64,32,0,1.570796370506287,1,0.125,0.5,0,0,[]],55,11847,[[1],[90]],[[1],[300,1,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[3728,712,0,64,32,0,1.570796370506287,1,0.125,0.5,0,0,[]],55,11848,[[1],[90]],[[1],[300,1,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[3760,712,0,64,32,0,1.570796370506287,1,0.125,0.5,0,0,[]],55,11849,[[1],[90]],[[1],[300,1,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[3792,712,0,64,32,0,1.570796370506287,1,0.125,0.5,0,0,[]],55,11850,[[1],[90]],[[1],[300,1,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[3824,712,0,64,32,0,1.570796370506287,1,0.125,0.5,0,0,[]],55,11851,[[1],[90]],[[1],[300,1,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[3856,712,0,64,32,0,1.570796370506287,1,0.125,0.5,0,0,[]],55,11852,[[1],[90]],[[1],[300,1,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[3888,712,0,64,32,0,1.570796370506287,1,0.125,0.5,0,0,[]],55,11853,[[1],[90]],[[1],[300,1,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[3920,712,0,64,32,0,1.570796370506287,1,0.125,0.5,0,0,[]],55,11854,[[1],[90]],[[1],[300,1,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[3952,712,0,64,32,0,1.570796370506287,1,0.125,0.5,0,0,[]],55,11855,[[1],[90]],[[1],[300,1,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[4656,1968,0,584,240,0,3.141592741012573,1,0.5,0.5,0,0,[]],50,11856,[[-1],[0],[0],[0],[0],[7],[0]],[[0],[1,0,1,0,"W 1.5 ; F 5000",600,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[3560,1408,0,32,32,0,0,1,0.5,0.5,0,0,[]],163,11857,[],[[0]],[0,"Default",0,1]],[[3592,1408,0,32,32,0,0,1,0.5,0.5,0,0,[]],163,11858,[],[[0]],[0,"Default",0,1]],[[3832,1408,0,32,32,0,0,1,0.5,0.5,0,0,[]],163,11859,[],[[0]],[0,"Default",0,1]],[[3800,1408,0,32,32,0,0,1,0.5,0.5,0,0,[]],163,11860,[],[[0]],[0,"Default",0,1]],[[3704,2096,0,32,32,0,0,1,0.5,0.5,0,0,[]],163,11861,[],[[0]],[0,"Default",0,1]],[[3672,2096,0,32,32,0,0,1,0.5,0.5,0,0,[]],163,11862,[],[[0]],[0,"Default",0,1]],[[3768,2096,0,32,32,0,0,1,0.5,0.5,0,0,[]],163,11863,[],[[0]],[0,"Default",0,1]],[[3736,2096,0,32,32,0,0,1,0.5,0.5,0,0,[]],163,11864,[],[[0]],[0,"Default",0,1]],[[3640,2096,0,32,32,0,0,1,0.5,0.5,0,0,[]],163,11865,[],[[0]],[0,"Default",0,1]],[[3608,2096,0,32,32,0,0,1,0.5,0.5,0,0,[]],163,11866,[],[[0]],[0,"Default",0,1]],[[3688,2064,0,32,32,0,0,1,0.5,0.5,0,0,[]],163,11867,[],[[0]],[0,"Default",0,1]],[[3640,2064,0,32,32,0,0,1,0.5,0.5,0,0,[]],163,11868,[],[[0]],[0,"Default",0,1]],[[3688,2032,0,32,32,0,0,1,0.5,0.5,0,0,[]],163,11870,[],[[0]],[0,"Default",0,1]],[[1485,1344,0,32,32,0,0,1,0.5,0.5,0,0,[]],49,11872,[[8],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[0,"Default",0,1]],[[208,1792,0,40,48,0,-1.570796489715576,1,0.5,0.5,0,0,[]],50,11873,[[-1],[0],[0],[0],[0],[8],[0]],[[0],[1,0,1,1,"F 168",700,100,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[208,1720,0,8,168,0,0,1,0,0,0,0,[]],48,11874,[],[[0],[1]],[0,0]],[[160,1872,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,11682,[[1.75],[0]],[[0]],[0,"Default",0,1]]],[]],["UI",2,652689914806520,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[240,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3097,[["right"]],[[0,1,0,1,1]],[0,"Default",0,1]],[[80,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3098,[["left"]],[[0,1,0,1,1]],[0,"Default",1,1]],[[560,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3099,[["up"]],[[1,1,1,1,1]],[0,"Default",3,1]],[[400,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3100,[["down"]],[[1,1,1,1,1]],[0,"Default",2,1]]],[]],["End Card",3,109278795548965,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],78,2607,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[12.04449462890625,194,0,615.9109497070313,67,0,0,1,0,0,0,0,[]],79,2608,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Timer for this level",2.5,0,0,0,0,0,-10,0,"",-1,0]],[[17.546875,248,0,604.90625,105,0,0,1,0,0,0,0,[]],80,2610,[[0],[0],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","13:40:40",4,0,63,50,0,0,-10,0,"",-1,0]],[[115.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,2611,[[0],[1],[0],[0],["replay"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Replay",""],[""],[2,2,0,0,0],["",""]],[0,"Replay",0,1]],[[524.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3086,[[0],[1],[0],[0],["next"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Next",""],[""],[2,2,0,0,0],["",""]],[0,"Next",0,1]],[[320.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3087,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > Back","Level Menu"],[""],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[320.75,521.8050537109375,0,384,96,0,0,1,0.5,0.5,0,0,[]],70,3088,[[1],[1],[0],[0],[""],["{\"size\": 22, \"left\": 70, \"right\": 18, \"alignY\": 60}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > DownloadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"DownloadReplay",0,1]]],[]],["Pause",4,298762292186450,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-310,678,0,274,31,0,0,1,0,0,0,0,[]],168,3089,[],[],[".ovo",0,1,"file"]],[[320,320,0,425,250,0,0,1,0.5,0.5,0,0,[]],82,3090,[],[[6,1,"",300,1,1,"",300,"overlay",1,"PauseClose",1,1]],[0,"Default",0,1]],[[214,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3091,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"",""],["PauseClose"],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[426,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3092,[[0],[1],[0],[0],["quit"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > GiveUp",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[115.5,202,0,409,118,0,0,1,0,0,0,0,[]],83,3093,[[1],[1],["pause"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Pause",4,0,57,50,0,0,-10,0,"",-1,0]],[[320.5,88,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3094,[[1],[1],[0],[0],["loadreplay"],["{\"size\": 16, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > LoadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"LoadReplay",0,1]],[[320.5,157,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3095,[[1],[0],[0],[0],["toggledebug"],["{\"size\": 15, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Debug > Toggle",""],[""],[2,2,0,0,0],["",""]],[0,"ToggleDebug",0,1]],[[78,448,0,484,134,0,0,1,0,0,0,0,[]],193,3096,[],[],[0,"Default",0,1]]],[]],["Overlay",5,348457652183889,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[432,4,0,203.0009155273438,64,0,0,1,0,0,0,0,[]],107,5488,[],[[1,0,1,0,1]],[2,2,2,2,0,1,0,0,1]],[[432,4,0,203,64,0,0,1,0,0,0,0,[]],84,3101,[[0],[0],[""],["en-us"],[0],[1],[1],["{\"alignY\": 85, \"alignX\": 45, \"size\": 28}"],[0],[1],[0],[0],[0]],[["",""],[1,0,1,0,1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",2,0,100,50,0,0,-10,0,"",-1,0]],[[88,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3102,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Pause",""],[""],[0,0,0,0,1],["",""]],[0,"Pause",0,1]],[[158,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3103,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Replay","1"],[""],[0,0,0,0,1],["",""]],[0,"Reload",0,1]]],[]],["End Game",6,546875980785964,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],85,3104,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[73,194,0,494,72,0,0,1,0,0,0,0,[]],86,3105,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],["{alignY:50}"],[0],[1],[0],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Your final time",2.5,0,50,50,0,0,-10,0,"",-1,0]],[[320,403,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3106,[[0],[1],[0],[0],[""],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Quit",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[73,243,0,494,85,0,0,1,0,0,0,0,[]],87,3108,[[0],[1],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",3,0,50,50,0,0,-10,0,"",-1,0]],[[73,318,0,494,25,0,0,1,0,0,0,0,[]],86,5480,[[1],[1],["tryagainhardmode"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Try again in hard mode!",1,0,50,50,0,0,-2,0,"",-1,0]]],[]],["Banner",7,595588691675473,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-237,-189,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,3109,[],[["overlay"]],[0,"Default",0,1]]],[]],["AdPlaying",8,987616614921612,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,-203.5,0,250,97,0,0,1,0.5,0.5,0,0,[]],125,390,[],[[6,1,"",300,1,1,"",300,"overlay",1,"",1,1],[]],[0,"Default",0,1]],[[209,-275,0,222,139,0,0,1,0,0,0,0,[]],86,391,[[1],[1],["adplaying"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","An ad is playing right now...",1.2,0,50,50,0,0,-2,0,"",-1,0]],[[-154.5756988525391,-294.3137512207031,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,5508,[],[["overlay"]],[0,"Default",0,1]]],[]]],[],[]],["Level 2 Old",1000,640,true,"Levels",651604627896401,[["Layer 0",0,574169250683322,true,[255,255,255],false,1,1,1,false,false,1,0,0,[[[32,384,0,416,9,0,0,1,0,0,0,0,[]],51,101,[],[[0],[1],[1,100,""]],[0,0]],[[235,300,0,32,64,0,0,1,0.5,0.5,0,0,[]],42,112,[["run"],[0],[1],[1],[0],[0.8],[0.5],[0],[1],[0],[0],[0],[""],[2],[0],[0],[0],[""],[0],[3],[0],[0],[0],[0],[0],[0],[0]],[[330,1500,1500,650,1500,1000,0,0,0,1],[],[0,0],[0,10000,360,1]],[1,"Default",0,1]],[[856,288,0,97,199,0,0,1,0.5257731676101685,0.4974874258041382,0,0,[]],44,113,[],[[0]],[0,"Default",0,1]],[[458,288,0,176,96,0,0,1,0,0,0,0,[]],46,114,[[1],[1],[""],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Press \"Up\" to jump",1,0,50,0,0,0,0,0,"",-1,0]],[[640,384,0,337,9,0,0,1,0,0,0,0,[]],51,115,[],[[0],[1],[1,100,""]],[0,0]],[[448,448,0,200,9,0,0,1,0,0,0,0,[]],51,116,[],[[0],[1],[1,100,""]],[0,0]],[[-118,36,0,60.93439102172852,60.93439102172852,0,0,1,0.5,0.5,0,0,[]],53,1404,[["Harder"],["{\"c2array\":true,\"size\":[123,6,1],\"data\":[[[427.2173458572832],[351.98739903832876],[0],[\"idle\"],[0],[1]],[[427.2173458572832],[351.98739903832876],[0],[\"idle\"],[0],[1]],[[427.2173458572832],[351.98739903832876],[0],[\"idle\"],[0],[1]],[[427.2173458572832],[351.98739903832876],[0],[\"idle\"],[0],[1]],[[427.2173458572832],[351.98739903832876],[0],[\"idle\"],[0],[1]],[[427.2173458572832],[351.98739903832876],[0],[\"idle\"],[0],[1]],[[427.2173458572832],[351.98739903832876],[0],[\"idle\"],[0],[1]],[[427.2173458572832],[351.98739903832876],[0],[\"idle\"],[0],[1]],[[427.2173458572832],[351.98739903832876],[0],[\"idle\"],[0],[1]],[[427.2173458572832],[351.98739903832876],[0],[\"idle\"],[0],[1]],[[427.2173458572832],[351.98739903832876],[0],[\"idle\"],[0],[1]],[[427.2173458572832],[351.98739903832876],[0],[\"idle\"],[0],[1]],[[427.2173458572832],[351.98739903832876],[0],[\"idle\"],[0],[1]],[[427.2173458572832],[351.98739903832876],[0],[\"idle\"],[0],[1]],[[427.2173458572832],[351.98739903832876],[0],[\"idle\"],[0],[1]],[[427.2173458572832],[351.98739903832876],[0],[\"idle\"],[0],[1]],[[427.2173458572832],[351.98739903832876],[0],[\"idle\"],[0],[1]],[[427.2173458572832],[351.98739903832876],[0],[\"idle\"],[0],[1]],[[427.2173458572832],[351.98739903832876],[0],[\"idle\"],[0],[1]],[[427.2173458572832],[351.98739903832876],[0],[\"idle\"],[0],[1]],[[427.2173458572832],[351.98739903832876],[0],[\"idle\"],[0],[1]],[[427.63387920104407],[351.98739903832876],[0],[\"run\"],[0],[1]],[[428.4737069597617],[351.98739903832876],[0],[\"run\"],[0],[1]],[[429.7072850882941],[351.98739903832876],[0],[\"run\"],[0],[1]],[[431.3744656230571],[351.98739903832876],[0],[\"run\"],[0],[1]],[[433.4487411798826],[351.98739903832876],[0],[\"run\"],[0],[1]],[[435.9402733125753],[351.98739903832876],[0],[\"run\"],[0],[1]],[[438.84793860098824],[351.98739903832876],[0],[\"run\"],[0],[1]],[[442.169415721239],[351.98739903832876],[0],[\"run\"],[0],[1]],[[445.9001881828426],[351.98739903832876],[0],[\"run\"],[0],[1]],[[450.0835730060247],[351.98739903832876],[7.723304703995229e-7],[\"run\"],[0],[1]],[[454.6366492832751],[351.98739903832876],[0.0000013421154177507934],[\"run\"],[0],[1]],[[459.61185142077426],[351.98739903832876],[0.000001703131065542736],[\"run\"],[0],[1]],[[465.02540307792646],[351.98739903832876],[0.0000019594834331456985],[\"run\"],[0],[1]],[[470.50934307601113],[352.4016359240394],[0.000002214867621217865],[\"fall\"],[0],[1]],[[475.99658307041085],[353.230857654625],[0.00000247040548837475],[\"fall\"],[0],[1]],[[481.5145130776013],[354.4841049667334],[0.00000247040548837475],[\"fall\"],[0],[1]],[[487.0047230754075],[356.14624108787876],[0.00000247040548837475],[\"fall\"],[0],[1]],[[492.4536830760566],[358.20485817598365],[0.00000247040548837475],[\"fall\"],[0],[1]],[[497.96105307006786],[360.70332664017064],[0.00000247040548837475],[\"fall\"],[0],[1]],[[503.46776307826207],[363.619179650535],[0.00000247040548837475],[\"fall\"],[0],[1]],[[508.9658930787495],[366.9468728503923],[0.00000247040548837475],[\"fall\"],[0],[1]],[[514.0467996267663],[370.69020030211937],[0.00000247040548837475],[\"fall\"],[0],[1]],[[518.6953993231865],[374.8324616549163],[0.00000247040548837475],[\"fall\"],[0],[1]],[[522.9493252286576],[379.4117751730093],[0.00000247040548837475],[\"fall\"],[0],[1]],[[526.7658497717059],[384.37604681912507],[0.0000017498955400094852],[\"fall\"],[0],[1]],[[530.1927697119788],[389.7961392509533],[0.0000012365760884646863],[\"fall\"],[0],[1]],[[533.1800291416797],[395.58331926968157],[8.765819160840765e-7],[\"fall\"],[0],[1]],[[535.7772565782533],[401.84793663623054],[6.194918882482937e-7],[\"fall\"],[0],[1]],[[537.9308733231545],[408.4364458254648],[3.6587501166308444e-7],[\"fall\"],[0],[1]],[[539.6913004116418],[415.51879328706104],[3.6587501166308444e-7],[\"fall\"],[0],[1]],[[541.0309148439592],[415.95629328706104],[3.6587501166308444e-7],[\"run\"],[0],[1]],[[541.9549421423864],[415.95629328706104],[3.6587501166308444e-7],[\"run\"],[0],[1]],[[542.4637678856805],[415.95629328706104],[3.6587501166308444e-7],[\"run\"],[0],[1]],[[542.557055556106],[415.95629328706104],[3.6587501166308444e-7],[\"run\"],[0],[1]],[[542.557055556106],[415.95629328706104],[3.6587501166308444e-7],[\"idle\"],[0],[1]],[[542.557055556106],[415.95629328706104],[3.6587501166308444e-7],[\"idle\"],[0],[1]],[[542.557055556106],[415.95629328706104],[3.6587501166308444e-7],[\"idle\"],[0],[1]],[[542.557055556106],[415.95629328706104],[3.6587501166308444e-7],[\"idle\"],[0],[1]],[[542.557055556106],[415.95629328706104],[3.6587501166308444e-7],[\"idle\"],[0],[1]],[[542.557055556106],[415.95629328706104],[3.6587501166308444e-7],[\"idle\"],[0],[1]],[[542.557055556106],[405.1695432911654],[3.6587501166308444e-7],[\"jump\"],[0],[1]],[[542.557055556106],[394.7880817839469],[3.6587501166308444e-7],[\"jump\"],[0],[1]],[[542.557055556106],[384.793899819148],[3.6587501166308444e-7],[\"jump\"],[0],[1]],[[542.557055556106],[375.22950596634945],[3.6587501166308444e-7],[\"jump\"],[0],[1]],[[542.557055556106],[366.06309027363346],[3.6587501166308444e-7],[\"jump\"],[0],[1]],[[542.557055556106],[357.31255778573995],[3.6587501166308444e-7],[\"jump\"],[0],[1]],[[542.557055556106],[349.0022220501449],[3.6587501166308444e-7],[\"jump\"],[0],[1]],[[542.557055556106],[341.0734013090142],[3.6587501166308444e-7],[\"jump\"],[0],[1]],[[542.557055556106],[333.57231961143816],[3.6587501166308444e-7],[\"jump\"],[0],[1]],[[542.9712924418167],[326.5043850894236],[3.6587501166308444e-7],[\"jump\"],[0],[1]],[[543.7931225872903],[319.88411562280777],[3.6587501166308444e-7],[\"jump\"],[0],[1]],[[545.0413906801244],[313.6150931925779],[3.6587501166308444e-7],[\"jump\"],[0],[1]],[[546.7005569976254],[307.7830831993047],[3.6587501166308444e-7],[\"jump\"],[0],[1]],[[548.7760054024405],[302.3642035805546],[3.6587501166308444e-7],[\"jump\"],[0],[1]],[[551.2647679840203],[297.36449132882683],[3.6587501166308444e-7],[\"jump\"],[0],[1]],[[554.1588915753863],[292.79175184109874],[3.6587501166308444e-7],[\"jump\"],[0],[1]],[[557.4792445033819],[288.61777673242517],[3.6587501166308444e-7],[\"jump\"],[0],[1]],[[561.2141838245374],[284.8601890106251],[3.6587501166308444e-7],[\"jump\"],[0],[1]],[[565.3776804394001],[281.50954682831895],[3.6587501166308444e-7],[\"jump\"],[0],[1]],[[569.9709452476311],[278.57066302017927],[3.6587501166308444e-7],[\"jump\"],[0],[1]],[[574.9508896966561],[276.0643838649349],[3.6587501166308444e-7],[\"jump\"],[0],[1]],[[580.3259586876661],[273.9784429540047],[3.6587501166308444e-7],[\"jump\"],[0],[1]],[[585.8131986916701],[272.3000625169982],[3.6587501166308444e-7],[\"jump\"],[0],[1]],[[591.3067086857914],[271.0354481926251],[3.6587501166308444e-7],[\"jump\"],[0],[1]],[[596.8078086896853],[270.18591998709206],[3.6587501166308444e-7],[\"jump\"],[0],[1]],[[602.2825086846419],[269.7533108521783],[3.6587501166308444e-7],[\"jump\"],[0],[1]],[[607.7905386836787],[269.73595221179403],[3.6587501166308444e-7],[\"jump\"],[0],[1]],[[613.2718386904739],[270.13251596241327],[3.6587501166308444e-7],[\"fall\"],[0],[1]],[[618.7603986853205],[270.944540097389],[3.6587501166308444e-7],[\"fall\"],[0],[1]],[[624.279318690445],[272.180594214663],[3.6587501166308444e-7],[\"fall\"],[0],[1]],[[629.7734886895919],[273.82688895696856],[3.6587501166308444e-7],[\"fall\"],[0],[1]],[[635.2204686847685],[275.86771555386014],[3.6587501166308444e-7],[\"fall\"],[0],[1]],[[640.3139733715886],[278.351384841754],[3.6587501166308444e-7],[\"fall\"],[0],[1]],[[644.9780319999952],[281.2449936002592],[3.6587501166308444e-7],[\"fall\"],[0],[1]],[[649.2142547098583],[284.54375621443415],[3.6587501166308444e-7],[\"fall\"],[0],[1]],[[653.0395119137097],[288.2598352979665],[3.6587501166308444e-7],[\"fall\"],[0],[1]],[[656.448971359605],[292.3885366643835],[3.6587501166308444e-7],[\"fall\"],[0],[1]],[[659.4557298263279],[296.95350847253195],[3.6587501166308444e-7],[\"fall\"],[0],[1]],[[662.0362734806662],[301.91566204044017],[3.6587501166308444e-7],[\"fall\"],[0],[1]],[[664.2061314731001],[307.3057396464865],[3.6587501166308444e-7],[\"fall\"],[0],[1]],[[665.9549096903706],[313.09149309509706],[3.6587501166308444e-7],[\"fall\"],[0],[1]],[[667.2938852202947],[319.3197114301101],[3.6587501166308444e-7],[\"fall\"],[0],[1]],[[668.2124089299325],[325.92256378830234],[3.6587501166308444e-7],[\"fall\"],[0],[1]],[[668.7190690627381],[332.9767465306828],[3.6587501166308444e-7],[\"fall\"],[0],[1]],[[668.8082593823303],[340.4665447524187],[3.6587501166308444e-7],[\"fall\"],[0],[1]],[[668.8082593823303],[348.36007737997085],[3.6587501166308444e-7],[\"fall\"],[0],[1]],[[668.8082593823303],[351.9516391899398],[3.6587501166308444e-7],[\"idle\"],[0],[1]],[[668.8082593823303],[351.9516391899398],[3.6587501166308444e-7],[\"idle\"],[0],[1]],[[668.8082593823303],[351.9516391899398],[3.6587501166308444e-7],[\"idle\"],[0],[1]],[[668.8082593823303],[351.9516391899398],[3.6587501166308444e-7],[\"idle\"],[0],[1]],[[668.8082593823303],[351.9516391899398],[3.6587501166308444e-7],[\"idle\"],[0],[1]],[[668.8082593823303],[351.9516391899398],[3.6587501166308444e-7],[\"idle\"],[0],[1]],[[668.8082593823303],[351.9516391899398],[3.6587501166308444e-7],[\"idle\"],[0],[1]],[[668.8082593823303],[351.9516391899398],[3.6587501166308444e-7],[\"idle\"],[0],[1]],[[668.8082593823303],[351.9516391899398],[3.6587501166308444e-7],[\"idle\"],[0],[1]],[[668.8082593823303],[351.9516391899398],[3.6587501166308444e-7],[\"idle\"],[0],[1]],[[668.8082593823303],[351.9516391899398],[3.6587501166308444e-7],[\"idle\"],[0],[1]],[[668.8082593823303],[351.9516391899398],[3.6587501166308444e-7],[\"idle\"],[0],[1]],[[668.8082593823303],[351.9516391899398],[3.6587501166308444e-7],[\"idle\"],[0],[1]],[[668.8082593823303],[351.9516391899398],[3.6587501166308444e-7],[\"idle\"],[0],[1]],[[668.8082593823303],[351.9516391899398],[3.6587501166308444e-7],[\"idle\"],[0],[1]],[[668.8082593823303],[351.9516391899398],[3.6587501166308444e-7],[\"idle\"],[0],[1]]]}"],[0]],[],[1,"Default",0,1]],[[648,384,0,71,9,0,1.570796370506287,1,0,0,0,0,[]],51,2702,[],[[0],[1],[1,100,""]],[0,0]],[[456,384,0,71,9,0,1.570796370506287,1,0,0,0,0,[]],51,2703,[],[[0],[1],[1,100,""]],[0,0]],[[40.00001525878906,-1,0,392,9,0,1.570796370506287,1,0,0,0,0,[]],51,2704,[],[[0],[1],[1,100,""]],[0,0]],[[-60.19999694824219,-182.6000061035156,0,4,8,0,0,1,1,0,0,0,[]],38,102,[[0],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","rightarm",3,1,0,0,1,2]],[0,"Default",0,1]],[[-60.19999694824219,-174.6000061035156,0,4,8,0,0,1,1,0,0,0,[]],40,103,[[1],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","righthand",3,1,0,0,1,2]],[0,"Default",0,1]],[[-64.19999694824219,-177.6000061035156,0,8,16,0,0,1,0.5,0.5,0,0,[]],32,104,[[2],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","body",3,1,0,0,1,2]],[0,"Default",0,1]],[[-64.19999694824219,-161.6000061035156,0,4,8,0,0,1,0,0,0,0,[]],39,105,[[4],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","rightfoot",3,1,0,0,1,2]],[0,"Default",0,1]],[[-64.19999694824219,-169.6000061035156,0,4,8,0,0,1,0,0,0,0,[]],41,106,[[3],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","rightleg",3,1,0,0,1,2]],[0,"Default",0,1]],[[-68.19999694824219,-161.6000061035156,0,4,8,0,0,1,0,0,0,0,[]],35,107,[[6],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","leftfoot",3,1,0,0,1,2]],[0,"Default",0,1]],[[-68.19999694824219,-169.6000061035156,0,4,8,0,0,1,0,0,0,0,[]],37,108,[[5],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","leftleg",3,1,0,0,1,2]],[0,"Default",0,1]],[[-64.19999694824219,-185.6000061035156,0,32,32,0,0,1,0.5,1,0,0,[]],33,109,[[7],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","head",3,1,0,0,1,2]],[0,"Default",0,1]],[[-68.19999694824219,-182.6000061035156,0,4,8,0,0,1,1,0,0,0,[]],34,110,[[8],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","leftarm",3,1,0,0,1,2]],[0,"Default",0,1]],[[-68.19999694824219,-174.6000061035156,0,4,8,0,0,1,1,0,0,0,[]],36,111,[[9],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","lefthand",3,1,0,0,1,2]],[0,"Default",0,1]],[[123,144,0,288,117,0,0,1,0,0,0,0,[[]]],61,4109,[],[[1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>","1",7,0,50,0,0,0,0,0,"",-1,0]]],[]],["UI",1,665746120924647,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[240,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3097,[["right"]],[[0,1,0,1,1]],[0,"Default",0,1]],[[80,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3098,[["left"]],[[0,1,0,1,1]],[0,"Default",1,1]],[[560,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3099,[["up"]],[[1,1,1,1,1]],[0,"Default",3,1]],[[400,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3100,[["down"]],[[1,1,1,1,1]],[0,"Default",2,1]]],[]],["End Card",2,573868912889221,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],78,2607,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[12.04449462890625,194,0,615.9109497070313,67,0,0,1,0,0,0,0,[]],79,2608,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Timer for this level",2.5,0,0,0,0,0,-10,0,"",-1,0]],[[17.546875,248,0,604.90625,105,0,0,1,0,0,0,0,[]],80,2610,[[0],[0],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","13:40:40",4,0,63,50,0,0,-10,0,"",-1,0]],[[115.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,2611,[[0],[1],[0],[0],["replay"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Replay",""],[""],[2,2,0,0,0],["",""]],[0,"Replay",0,1]],[[524.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3086,[[0],[1],[0],[0],["next"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Next",""],[""],[2,2,0,0,0],["",""]],[0,"Next",0,1]],[[320.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3087,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > Back","Level Menu"],[""],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[320.75,521.8050537109375,0,384,96,0,0,1,0.5,0.5,0,0,[]],70,3088,[[1],[1],[0],[0],[""],["{\"size\": 22, \"left\": 70, \"right\": 18, \"alignY\": 60}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > DownloadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"DownloadReplay",0,1]]],[]],["Pause",3,465299834397454,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-310,678,0,274,31,0,0,1,0,0,0,0,[]],168,3089,[],[],[".ovo",0,1,"file"]],[[320,320,0,425,250,0,0,1,0.5,0.5,0,0,[]],82,3090,[],[[6,1,"",300,1,1,"",300,"overlay",1,"PauseClose",1,1]],[0,"Default",0,1]],[[214,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3091,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"",""],["PauseClose"],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[426,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3092,[[0],[1],[0],[0],["quit"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > GiveUp",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[115.5,202,0,409,118,0,0,1,0,0,0,0,[]],83,3093,[[1],[1],["pause"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Pause",4,0,57,50,0,0,-10,0,"",-1,0]],[[320.5,88,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3094,[[1],[1],[0],[0],["loadreplay"],["{\"size\": 16, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > LoadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"LoadReplay",0,1]],[[320.5,157,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3095,[[1],[0],[0],[0],["toggledebug"],["{\"size\": 15, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Debug > Toggle",""],[""],[2,2,0,0,0],["",""]],[0,"ToggleDebug",0,1]],[[78,448,0,484,134,0,0,1,0,0,0,0,[]],193,3096,[],[],[0,"Default",0,1]]],[]],["Overlay",4,492033650821929,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[432,4,0,203.0009155273438,64,0,0,1,0,0,0,0,[]],107,5488,[],[[1,0,1,0,1]],[2,2,2,2,0,1,0,0,1]],[[432,4,0,203,64,0,0,1,0,0,0,0,[]],84,3101,[[0],[0],[""],["en-us"],[0],[1],[1],["{\"alignY\": 85, \"alignX\": 45, \"size\": 28}"],[0],[1],[0],[0],[0]],[["",""],[1,0,1,0,1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",2,0,100,50,0,0,-10,0,"",-1,0]],[[88,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3102,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Pause",""],[""],[0,0,0,0,1],["",""]],[0,"Pause",0,1]],[[158,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3103,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Replay","1"],[""],[0,0,0,0,1],["",""]],[0,"Reload",0,1]]],[]],["End Game",5,214571877639684,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],85,3104,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[73,194,0,494,72,0,0,1,0,0,0,0,[]],86,3105,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],["{alignY:50}"],[0],[1],[0],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Your final time",2.5,0,50,50,0,0,-10,0,"",-1,0]],[[320,403,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3106,[[0],[1],[0],[0],[""],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Quit",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[73,243,0,494,85,0,0,1,0,0,0,0,[]],87,3108,[[0],[1],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",3,0,50,50,0,0,-10,0,"",-1,0]],[[73,318,0,494,25,0,0,1,0,0,0,0,[]],86,5480,[[1],[1],["tryagainhardmode"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Try again in hard mode!",1,0,50,50,0,0,-2,0,"",-1,0]]],[]]],[],[]],["Level 4 Old",1280,640,true,"Levels",849895827525541,[["Layer 0",0,666773994833982,true,[255,255,255],false,1,1,1,false,false,1,0,0,[[[32,384,0,320,9,0,0,1,0,0,0,0,[]],51,130,[],[[0],[1],[1,100,""]],[0,0]],[[96,256,0,32,64,0,0,1,0.5,0.5,0,0,[]],42,143,[["run"],[0],[1],[1],[0],[0.8],[0.5],[0],[1],[0],[0],[0],[""],[2],[0],[0],[0],[""],[0],[3],[0],[0],[0],[0],[0],[0],[0]],[[330,1500,1500,650,1500,1000,0,0,0,1],[],[0,0],[0,10000,360,1]],[1,"Default",0,1]],[[1184,288,0,97,199,0,0,1,0.5257731676101685,0.4974874258041382,0,0,[]],44,144,[],[[0]],[0,"Default",0,1]],[[720.242431640625,384.1343383789063,0,527.7575073242188,8.731283187866211,0,0,1,0,0,0,0,[]],51,145,[],[[0],[1],[1,100,""]],[0,0]],[[352,224,0,369.387451171875,9,0,0,1,0,0,0,0,[]],51,146,[],[[0],[1],[1,100,""]],[0,0]],[[40,232,0,288,64,0,0,1,0,0,0,0,[]],46,147,[[1],[1],[""],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Go next to the wall",1,0,50,0,0,0,0,0,"",-1,0]],[[352,224,0,160,9,0,1.570796370506287,1,0,0,0,0,[]],51,148,[],[[0],[1],[1,100,""]],[0,0]],[[730,224,0,160,9,0,1.570796370506287,1,0,0,0,0,[]],51,166,[],[[0],[1],[1,100,""]],[0,0]],[[-129,48,0,60.93439102172852,60.93439102172852,0,0,1,0.5,0.5,0,0,[]],53,1406,[["Too Hard"],["{\"c2array\":true,\"size\":[210,6,1],\"data\":[[[334.99502211241094],[351.95705707893774],[0],[\"wall\"],[0],[1]],[[334.99502211241094],[351.95705707893774],[0],[\"wall\"],[0],[1]],[[334.99502211241094],[351.95705707893774],[0],[\"wall\"],[0],[1]],[[334.99502211241094],[351.95705707893774],[0],[\"wall\"],[0],[1]],[[334.99502211241094],[351.95705707893774],[0],[\"wall\"],[0],[1]],[[334.99502211241094],[351.95705707893774],[0],[\"wall\"],[0],[1]],[[334.99502211241094],[351.95705707893774],[0],[\"wall\"],[0],[1]],[[334.99502211241094],[351.95705707893774],[0],[\"wall\"],[0],[1]],[[334.99502211241094],[351.95705707893774],[0],[\"wall\"],[0],[1]],[[334.99502211241094],[351.95705707893774],[0],[\"wall\"],[0],[1]],[[334.99502211241094],[351.95705707893774],[0],[\"wall\"],[0],[1]],[[334.99502211241094],[351.95705707893774],[0],[\"wall\"],[0],[1]],[[334.99502211241094],[351.95705707893774],[0],[\"wall\"],[0],[1]],[[334.99502211241094],[351.95705707893774],[0],[\"wall\"],[0],[1]],[[334.99502211241094],[351.95705707893774],[0],[\"wall\"],[0],[1]],[[334.99502211241094],[351.95705707893774],[0],[\"wall\"],[0],[1]],[[334.99502211241094],[351.95705707893774],[0],[\"wall\"],[0],[1]],[[334.99502211241094],[351.95705707893774],[0],[\"wall\"],[0],[1]],[[334.99502211241094],[351.95705707893774],[0],[\"wall\"],[0],[1]],[[334.99502211241094],[351.95705707893774],[0],[\"wall\"],[0],[1]],[[334.99502211241094],[351.95705707893774],[0],[\"wall\"],[0],[1]],[[334.99502211241094],[351.95705707893774],[0],[\"wall\"],[0],[1]],[[334.99502211241094],[351.95705707893774],[0],[\"wall\"],[0],[1]],[[334.99502211241094],[351.95705707893774],[0],[\"wall\"],[0],[1]],[[334.99502211241094],[351.95705707893774],[0],[\"wall\"],[0],[1]],[[334.99502211241094],[351.95705707893774],[0],[\"wall\"],[0],[1]],[[334.99502211241094],[351.95705707893774],[0],[\"wall\"],[0],[1]],[[334.99502211241094],[351.95705707893774],[0],[\"wall\"],[0],[1]],[[334.99502211241094],[351.95705707893774],[0],[\"wall\"],[0],[1]],[[334.99502211241094],[351.95705707893774],[0],[\"wall\"],[0],[1]],[[334.99502211241094],[351.95705707893774],[0],[\"wall\"],[0],[1]],[[334.99502211241094],[351.95705707893774],[0],[\"wall\"],[0],[1]],[[334.99502211241094],[351.95705707893774],[0],[\"wall\"],[0],[1]],[[334.99502211241094],[351.95705707893774],[0],[\"wall\"],[0],[1]],[[334.99502211241094],[351.95705707893774],[0],[\"wall\"],[0],[1]],[[334.99502211241094],[351.95705707893774],[0],[\"wall\"],[0],[1]],[[334.9761076507315],[351.95705707893774],[0],[\"wall\"],[0],[1]],[[334.9539919719672],[351.95705707893774],[0],[\"wall\"],[0],[1]],[[334.992830121543],[351.95705707893774],[0],[\"wall\"],[0],[1]],[[334.973564927151],[351.95705707893774],[0],[\"wall\"],[0],[1]],[[334.94860851101356],[351.95705707893774],[0],[\"wall\"],[0],[1]],[[334.9891426158899],[351.95705707893774],[0],[\"wall\"],[0],[1]],[[334.9721849195481],[351.95705707893774],[0],[\"wall\"],[0],[1]],[[334.9482739576271],[351.95705707893774],[0],[\"wall\"],[0],[1]],[[334.9853201705979],[351.95705707893774],[0],[\"wall\"],[0],[1]],[[334.96590470801954],[351.95705707893774],[0],[\"wall\"],[0],[1]],[[334.93871248970964],[351.95705707893774],[0],[\"wall\"],[0],[1]],[[334.9810460897413],[351.95705707893774],[0],[\"wall\"],[0],[1]],[[334.9588804905498],[351.95705707893774],[0],[\"wall\"],[0],[1]],[[334.93786384343],[351.95705707893774],[0],[\"wall\"],[0],[1]],[[330.2649127535397],[341.10595708490416],[0],[\"jump\"],[0],[-1]],[[326.4431510693705],[328.56399521986884],[0],[\"jump\"],[0],[-1]],[[323.4588646646124],[316.48877408113185],[0],[\"jump\"],[0],[-1]],[[321.2855708015145],[304.74608454246686],[0],[\"jump\"],[0],[-1]],[[319.94326342618444],[293.4067274692261],[0],[\"jump\"],[0],[-1]],[[319.43461778229334],[282.477800858852],[0],[\"jump\"],[0],[-1]],[[319.7524094382585],[272.0363376422836],[7.635707531779952e-7],[\"jump\"],[0],[1]],[[320.48876079583545],[261.94652172331024],[0.0000013362422535229006],[\"jump\"],[0],[1]],[[321.63877733675093],[252.2905096747658],[0.0000016977577724896016],[\"jump\"],[0],[1]],[[323.2211209314261],[242.97262760618148],[0.0000019556161966435077],[\"jump\"],[0],[1]],[[325.20194169428106],[234.1604124839746],[0.0000022109389129923334],[\"jump\"],[0],[1]],[[327.58311528825146],[225.8011706126087],[0.0000024650168277262294],[\"jump\"],[0],[1]],[[330.40182393675025],[217.7872156418115],[0.0000024650168277262294],[\"jump\"],[0],[1]],[[333.64616176212996],[210.17355407904557],[0.0000024650168277262294],[\"jump\"],[0],[1]],[[334.967016107706],[203.0288141259841],[0.0000017438548723257917],[\"jump\"],[0],[1]],[[334.9435536013492],[196.28820697038023],[0.00000123320943962814],[\"jump\"],[0],[1]],[[334.98498696634886],[189.9445586969926],[8.71085382280014e-7],[\"jump\"],[0],[1]],[[335.3959896809971],[184.05341220133064],[6.167001089294159e-7],[\"jump\"],[0],[1]],[[336.2304765204575],[178.52216868646812],[3.597483925829656e-7],[\"jump\"],[0],[1]],[[337.47670434441426],[173.43160128173642],[3.597483925829656e-7],[\"jump\"],[0],[1]],[[339.1472101457586],[168.73866107699087],[3.597483925829656e-7],[\"jump\"],[0],[1]],[[341.21307610250665],[164.50123566039272],[3.597483925829656e-7],[\"jump\"],[0],[1]],[[343.7087769256172],[160.6529074817166],[3.597483925829656e-7],[\"jump\"],[0],[1]],[[346.62116087444304],[157.22088168927618],[3.597483925829656e-7],[\"jump\"],[0],[1]],[[349.9332293703744],[154.21709487441845],[3.597483925829656e-7],[\"jump\"],[0],[1]],[[353.6698163800813],[151.61993246046796],[3.597483925829656e-7],[\"jump\"],[0],[1]],[[357.82181264662967],[149.43779858604057],[3.597483925829656e-7],[\"jump\"],[0],[1]],[[362.38480121328456],[147.67198716498382],[3.597483925829656e-7],[\"jump\"],[0],[1]],[[367.38466447309605],[146.31678037700073],[3.597483925829656e-7],[\"jump\"],[0],[1]],[[372.7650706651932],[145.3828541497438],[3.597483925829656e-7],[\"jump\"],[0],[1]],[[378.2523106595929],[144.86124210437052],[3.597483925829656e-7],[\"jump\"],[0],[1]],[[383.7570406623147],[144.75535111661918],[3.597483925829656e-7],[\"jump\"],[0],[1]],[[389.25781066369586],[145.06631964660272],[3.597483925829656e-7],[\"fall\"],[0],[1]],[[394.7391106608868],[145.79002565142378],[3.597483925829656e-7],[\"fall\"],[0],[1]],[[399.81805696292764],[146.93140174979868],[3.597483925829656e-7],[\"fall\"],[0],[1]],[[404.49616349665166],[148.49565826986216],[3.597483925829656e-7],[\"fall\"],[0],[1]],[[408.72276798654775],[150.45836982110217],[3.597483925829656e-7],[\"fall\"],[0],[1]],[[412.5552780648397],[152.84730285238726],[3.597483925829656e-7],[\"fall\"],[0],[1]],[[415.96688906047746],[155.6470485621297],[3.597483925829656e-7],[\"fall\"],[0],[1]],[[418.964124962235],[158.86191650156914],[3.597483925829656e-7],[\"fall\"],[0],[1]],[[421.55985595856004],[162.51639354490575],[3.597483925829656e-7],[\"fall\"],[0],[1]],[[423.71612444482383],[166.54084897808713],[3.597483925829656e-7],[\"fall\"],[0],[1]],[[425.4724929648841],[171.01488926263937],[3.597483925829656e-7],[\"fall\"],[0],[1]],[[426.8043609931641],[175.86449228962132],[3.597483925829656e-7],[\"fall\"],[0],[1]],[[427.7306645059192],[181.1824196865042],[3.597483925829656e-7],[\"fall\"],[0],[1]],[[428.2373945058266],[186.8862992452879],[3.597483925829656e-7],[\"fall\"],[0],[1]],[[428.32924730574587],[191.94815957161117],[3.597483925829656e-7],[\"run\"],[0],[1]],[[428.32924730574587],[191.94815957161117],[3.597483925829656e-7],[\"idle\"],[0],[1]],[[428.32924730574587],[191.94815957161117],[3.597483925829656e-7],[\"idle\"],[0],[1]],[[428.32924730574587],[191.94815957161117],[3.597483925829656e-7],[\"idle\"],[0],[1]],[[428.32924730574587],[191.94815957161117],[3.597483925829656e-7],[\"idle\"],[0],[1]],[[428.32924730574587],[191.94815957161117],[3.597483925829656e-7],[\"idle\"],[0],[1]],[[428.32924730574587],[191.94815957161117],[3.597483925829656e-7],[\"idle\"],[0],[1]],[[428.32924730574587],[191.94815957161117],[3.597483925829656e-7],[\"idle\"],[0],[1]],[[428.32924730574587],[191.94815957161117],[3.597483925829656e-7],[\"idle\"],[0],[1]],[[428.32924730574587],[191.94815957161117],[3.597483925829656e-7],[\"idle\"],[0],[1]],[[428.32924730574587],[191.94815957161117],[3.597483925829656e-7],[\"idle\"],[0],[1]],[[428.32924730574587],[191.94815957161117],[3.597483925829656e-7],[\"idle\"],[0],[1]],[[428.32924730574587],[191.94815957161117],[3.597483925829656e-7],[\"idle\"],[0],[1]],[[428.32924730574587],[191.94815957161117],[3.597483925829656e-7],[\"idle\"],[0],[1]],[[428.32924730574587],[191.94815957161117],[3.597483925829656e-7],[\"idle\"],[0],[1]],[[428.32924730574587],[191.94815957161117],[3.597483925829656e-7],[\"idle\"],[0],[1]],[[427.9152098106521],[191.94815957161117],[3.597483925829656e-7],[\"run\"],[0],[-1]],[[427.09064537078524],[191.94815957161117],[3.597483925829656e-7],[\"run\"],[0],[-1]],[[425.8417254965477],[191.94815957161117],[3.597483925829656e-7],[\"run\"],[0],[-1]],[[424.17726845598133],[191.94815957161117],[3.597483925829656e-7],[\"run\"],[0],[-1]],[[422.1095510910673],[191.94815957161117],[3.597483925829656e-7],[\"run\"],[0],[-1]],[[419.61490058004176],[191.94815957161117],[3.597483925829656e-7],[\"run\"],[0],[-1]],[[416.6932788496706],[191.94815957161117],[3.597483925829656e-7],[\"run\"],[0],[-1]],[[413.39784272025213],[191.94815957161117],[3.597483925829656e-7],[\"run\"],[0],[-1]],[[409.6461577257873],[191.94815957161117],[3.597483925829656e-7],[\"run\"],[0],[-1]],[[405.4913163680915],[191.94815957161117],[3.597483925829656e-7],[\"run\"],[0],[-1]],[[400.9297252235884],[191.94815957161117],[3.597483925829656e-7],[\"run\"],[0],[-1]],[[395.92988700196753],[191.94815957161117],[3.597483925829656e-7],[\"run\"],[0],[-1]],[[390.5341340285233],[191.94815957161117],[3.597483925829656e-7],[\"run\"],[0],[-1]],[[385.05745402809424],[191.94815957161117],[3.597483925829656e-7],[\"run\"],[0],[-1]],[[379.5514040249256],[191.94815957161117],[3.597483925829656e-7],[\"run\"],[0],[-1]],[[374.08924401980784],[191.94815957161117],[3.597483925829656e-7],[\"run\"],[0],[-1]],[[368.5567940269104],[191.94815957161117],[3.597483925829656e-7],[\"run\"],[0],[-1]],[[363.0857240211773],[191.94815957161117],[3.597483925829656e-7],[\"run\"],[0],[-1]],[[357.60145402057987],[191.94815957161117],[3.597483925829656e-7],[\"run\"],[0],[-1]],[[352.11025402483955],[191.94815957161117],[3.597483925829656e-7],[\"run\"],[0],[-1]],[[346.61839402407367],[191.94815957161117],[0.0000010364072763557944],[\"run\"],[0],[-1]],[[341.120594026099],[191.94815957161117],[0.0000014798636227137413],[\"run\"],[0],[-1]],[[335.61619402589],[191.94815957161117],[0.0000018423788840299591],[\"run\"],[0],[-1]],[[330.14182402384193],[191.94815957161117],[0.000002097317402443356],[\"run\"],[0],[-1]],[[324.65392402441665],[192.3629949215243],[0.000002352886005685544],[\"fall\"],[0],[-1]],[[319.1604140206911],[193.19393825082622],[0.000002608715863863745],[\"fall\"],[0],[-1]],[[314.07166791801893],[194.44446217687678],[0.000002608715863863745],[\"fall\"],[0],[-1]],[[309.4059095394999],[196.10999560717204],[0.000002608715863863745],[\"fall\"],[0],[-1]],[[305.18596596314666],[198.17309456861847],[0.000002608715863863745],[\"fall\"],[0],[-1]],[[301.3399447517574],[200.67736094194646],[0.000002608715863863745],[\"fall\"],[0],[-1]],[[297.9308400301124],[203.5809321716057],[0.000002608715863863745],[\"fall\"],[0],[-1]],[[294.935095923497],[206.8997635861449],[0.000002608715863863745],[\"fall\"],[0],[-1]],[[292.35165265307324],[210.6369744869338],[0.000002608715863863745],[\"fall\"],[0],[-1]],[[290.1772875052802],[214.80529861128545],[0.000002608715863863745],[\"fall\"],[0],[-1]],[[288.43032511538826],[219.35695530273117],[0.0000018443613458777097],[\"fall\"],[0],[-1]],[[287.09082869835976],[224.34913060185286],[0.0000012716554825448702],[\"fall\"],[0],[-1]],[[286.1694270691221],[229.74116476070517],[9.104876995250423e-7],[\"fall\"],[0],[-1]],[[285.66212898332424],[235.5564204159704],[6.547346815600986e-7],[\"fall\"],[0],[-1]],[[285.5702651427551],[241.7871103275213],[3.989816631478895e-7],[\"fall\"],[0],[-1]],[[285.5702651427551],[248.45997269915247],[3.989816631478895e-7],[\"fall\"],[0],[-1]],[[285.5702651427551],[255.48851048088108],[3.989816631478895e-7],[\"fall\"],[0],[-1]],[[285.5702651427551],[262.93812761322397],[3.989816631478895e-7],[\"fall\"],[0],[-1]],[[285.5702651427551],[270.8312776839965],[3.989816631478895e-7],[\"fall\"],[0],[-1]],[[285.5702651427551],[279.1663199088782],[3.989816631478895e-7],[\"fall\"],[0],[-1]],[[285.98925169575256],[287.92833577893293],[3.989816631478895e-7],[\"fall\"],[0],[1]],[[286.8155287801578],[297.01976791908857],[3.989816631478895e-7],[\"fall\"],[0],[1]],[[288.06947811582035],[306.62123932296146],[3.989816631478895e-7],[\"fall\"],[0],[1]],[[289.7242507330621],[316.54915410265755],[3.989816631478895e-7],[\"fall\"],[0],[1]],[[291.7949095859822],[326.90593415916175],[3.989816631478895e-7],[\"fall\"],[0],[1]],[[294.2959782634074],[337.7420450614687],[3.989816631478895e-7],[\"fall\"],[0],[1]],[[297.19885137337747],[348.93902648172684],[3.989816631478895e-7],[\"fall\"],[0],[1]],[[300.53873244281783],[351.99893364490043],[3.989816631478895e-7],[\"run\"],[0],[1]],[[304.277065919395],[351.99893364490043],[3.989816631478895e-7],[\"run\"],[0],[1]],[[308.41176557762384],[351.99893364490043],[3.989816631478895e-7],[\"run\"],[0],[1]],[[312.9982452296484],[351.99893364490043],[3.989816631478895e-7],[\"run\"],[0],[1]],[[317.98974807717536],[351.99893364490043],[3.989816631478895e-7],[\"run\"],[0],[1]],[[323.356651097977],[351.99893364490043],[3.989816631478895e-7],[\"run\"],[0],[1]],[[328.88118109779754],[351.99893364490043],[3.989816631478895e-7],[\"run\"],[0],[1]],[[334.3479610996772],[351.99893364490043],[3.989816631478895e-7],[\"wall\"],[0],[1]],[[334.94601110127843],[351.99893364490043],[3.989816631478895e-7],[\"wall\"],[0],[1]],[[334.98879518332694],[351.99893364490043],[3.989816631478895e-7],[\"wall\"],[0],[1]],[[334.9705826236962],[351.99893364490043],[3.989816631478895e-7],[\"wall\"],[0],[1]],[[334.944283998412],[351.99893364490043],[3.989816631478895e-7],[\"wall\"],[0],[1]],[[334.9866175984437],[351.99893364490043],[3.989816631478895e-7],[\"wall\"],[0],[1]],[[334.9626568211936],[351.99893364490043],[3.989816631478895e-7],[\"wall\"],[0],[1]],[[334.9626568211936],[351.99893364490043],[3.989816631478895e-7],[\"wall\"],[0],[1]],[[334.9626568211936],[351.99893364490043],[3.989816631478895e-7],[\"wall\"],[0],[1]],[[334.9626568211936],[351.99893364490043],[3.989816631478895e-7],[\"wall\"],[0],[1]],[[334.9626568211936],[351.99893364490043],[3.989816631478895e-7],[\"wall\"],[0],[1]],[[334.9626568211936],[351.99893364490043],[3.989816631478895e-7],[\"wall\"],[0],[1]],[[334.9626568211936],[351.99893364490043],[3.989816631478895e-7],[\"wall\"],[0],[1]],[[334.9626568211936],[351.99893364490043],[3.989816631478895e-7],[\"wall\"],[0],[1]],[[334.9626568211936],[351.99893364490043],[3.989816631478895e-7],[\"wall\"],[0],[1]],[[334.9626568211936],[351.99893364490043],[3.989816631478895e-7],[\"wall\"],[0],[1]],[[334.9626568211936],[351.99893364490043],[3.989816631478895e-7],[\"wall\"],[0],[1]],[[334.9626568211936],[351.99893364490043],[3.989816631478895e-7],[\"wall\"],[0],[1]],[[334.9626568211936],[351.99893364490043],[3.989816631478895e-7],[\"wall\"],[0],[1]],[[334.9626568211936],[351.99893364490043],[3.989816631478895e-7],[\"wall\"],[0],[1]],[[334.9626568211936],[351.99893364490043],[3.989816631478895e-7],[\"wall\"],[0],[1]],[[334.9626568211936],[351.99893364490043],[3.989816631478895e-7],[\"wall\"],[0],[1]],[[334.9626568211936],[351.99893364490043],[3.989816631478895e-7],[\"wall\"],[0],[1]],[[334.9626568211936],[351.99893364490043],[3.989816631478895e-7],[\"wall\"],[0],[1]],[[334.9626568211936],[351.99893364490043],[3.989816631478895e-7],[\"wall\"],[0],[1]],[[334.9626568211936],[351.99893364490043],[3.989816631478895e-7],[\"wall\"],[0],[1]],[[334.9626568211936],[351.99893364490043],[3.989816631478895e-7],[\"wall\"],[0],[1]],[[334.9626568211936],[351.99893364490043],[3.989816631478895e-7],[\"wall\"],[0],[1]],[[334.9626568211936],[351.99893364490043],[3.989816631478895e-7],[\"wall\"],[0],[1]],[[334.9626568211936],[351.99893364490043],[3.989816631478895e-7],[\"wall\"],[0],[1]],[[334.9626568211936],[351.99893364490043],[3.989816631478895e-7],[\"wall\"],[0],[1]],[[334.9626568211936],[351.99893364490043],[3.989816631478895e-7],[\"wall\"],[0],[1]],[[334.9626568211936],[351.99893364490043],[3.989816631478895e-7],[\"wall\"],[0],[1]],[[334.9626568211936],[351.99893364490043],[3.989816631478895e-7],[\"wall\"],[0],[1]],[[334.9626568211936],[351.99893364490043],[3.989816631478895e-7],[\"wall\"],[0],[1]],[[334.9626568211936],[351.99893364490043],[3.989816631478895e-7],[\"wall\"],[0],[1]],[[334.9626568211936],[351.99893364490043],[3.989816631478895e-7],[\"wall\"],[0],[1]],[[334.9626568211936],[351.99893364490043],[3.989816631478895e-7],[\"wall\"],[0],[1]],[[334.9626568211936],[351.99893364490043],[3.989816631478895e-7],[\"wall\"],[0],[1]],[[334.9626568211936],[351.99893364490043],[3.989816631478895e-7],[\"wall\"],[0],[1]]]}"],[0]],[],[1,"Default",0,1]],[[360,312,0,152,64,0,0,1,0,0,0,0,[]],46,121,[[1],[1],[""],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","And jump higher",1,0,50,0,0,0,0,0,"",-1,0]],[[32.00001907348633,-224,0,616,9,0,1.570796370506287,1,0,0,0,0,[]],51,122,[],[[0],[1],[1,100,""]],[0,0]],[[-113.2000122070313,-84.59999847412109,0,4,8,0,0,1,1,0,0,0,[]],38,2614,[[0],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","rightarm",3,1,0,0,1,2]],[0,"Default",0,1]],[[-113.2000122070313,-76.59999847412109,0,4,8,0,0,1,1,0,0,0,[]],40,2615,[[1],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","righthand",3,1,0,0,1,2]],[0,"Default",0,1]],[[-117.2000122070313,-79.59999847412109,0,8,16,0,0,1,0.5,0.5,0,0,[]],32,2616,[[2],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","body",3,1,0,0,1,2]],[0,"Default",0,1]],[[-117.2000122070313,-63.59999847412109,0,4,8,0,0,1,0,0,0,0,[]],39,2617,[[4],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","rightfoot",3,1,0,0,1,2]],[0,"Default",0,1]],[[-117.2000122070313,-71.59999847412109,0,4,8,0,0,1,0,0,0,0,[]],41,2618,[[3],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","rightleg",3,1,0,0,1,2]],[0,"Default",0,1]],[[-121.2000122070313,-63.59999847412109,0,4,8,0,0,1,0,0,0,0,[]],35,2619,[[6],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","leftfoot",3,1,0,0,1,2]],[0,"Default",0,1]],[[-121.2000122070313,-71.59999847412109,0,4,8,0,0,1,0,0,0,0,[]],37,2620,[[5],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","leftleg",3,1,0,0,1,2]],[0,"Default",0,1]],[[-117.2000122070313,-87.59999847412109,0,32,32,0,0,1,0.5,1,0,0,[]],33,2621,[[7],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","head",3,1,0,0,1,2]],[0,"Default",0,1]],[[-121.2000122070313,-84.59999847412109,0,4,8,0,0,1,1,0,0,0,[]],34,2622,[[8],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","leftarm",3,1,0,0,1,2]],[0,"Default",0,1]],[[-121.2000122070313,-76.59999847412109,0,4,8,0,0,1,1,0,0,0,[]],36,2623,[[9],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","lefthand",3,1,0,0,1,2]],[0,"Default",0,1]],[[-167,238,0,288,117,0,0,1,0,0,0,0,[[]]],61,5595,[],[[1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>","1",7,0,50,0,0,0,0,0,"",-1,0]]],[]],["UI",1,310058647178577,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[240,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3097,[["right"]],[[0,1,0,1,1]],[0,"Default",0,1]],[[80,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3098,[["left"]],[[0,1,0,1,1]],[0,"Default",1,1]],[[560,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3099,[["up"]],[[1,1,1,1,1]],[0,"Default",3,1]],[[400,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3100,[["down"]],[[1,1,1,1,1]],[0,"Default",2,1]]],[]],["End Card",2,146818677271137,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],78,2607,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[12.04449462890625,194,0,615.9109497070313,67,0,0,1,0,0,0,0,[]],79,2608,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Timer for this level",2.5,0,0,0,0,0,-10,0,"",-1,0]],[[17.546875,248,0,604.90625,105,0,0,1,0,0,0,0,[]],80,2610,[[0],[0],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","13:40:40",4,0,63,50,0,0,-10,0,"",-1,0]],[[115.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,2611,[[0],[1],[0],[0],["replay"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Replay",""],[""],[2,2,0,0,0],["",""]],[0,"Replay",0,1]],[[524.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3086,[[0],[1],[0],[0],["next"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Next",""],[""],[2,2,0,0,0],["",""]],[0,"Next",0,1]],[[320.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3087,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > Back","Level Menu"],[""],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[320.75,521.8050537109375,0,384,96,0,0,1,0.5,0.5,0,0,[]],70,3088,[[1],[1],[0],[0],[""],["{\"size\": 22, \"left\": 70, \"right\": 18, \"alignY\": 60}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > DownloadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"DownloadReplay",0,1]]],[]],["Pause",3,643546021231677,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-310,678,0,274,31,0,0,1,0,0,0,0,[]],168,3089,[],[],[".ovo",0,1,"file"]],[[320,320,0,425,250,0,0,1,0.5,0.5,0,0,[]],82,3090,[],[[6,1,"",300,1,1,"",300,"overlay",1,"PauseClose",1,1]],[0,"Default",0,1]],[[214,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3091,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"",""],["PauseClose"],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[426,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3092,[[0],[1],[0],[0],["quit"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > GiveUp",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[115.5,202,0,409,118,0,0,1,0,0,0,0,[]],83,3093,[[1],[1],["pause"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Pause",4,0,57,50,0,0,-10,0,"",-1,0]],[[320.5,88,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3094,[[1],[1],[0],[0],["loadreplay"],["{\"size\": 16, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > LoadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"LoadReplay",0,1]],[[320.5,157,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3095,[[1],[0],[0],[0],["toggledebug"],["{\"size\": 15, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Debug > Toggle",""],[""],[2,2,0,0,0],["",""]],[0,"ToggleDebug",0,1]],[[78,448,0,484,134,0,0,1,0,0,0,0,[]],193,3096,[],[],[0,"Default",0,1]]],[]],["Overlay",4,435300187615979,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[432,4,0,203.0009155273438,64,0,0,1,0,0,0,0,[]],107,5488,[],[[1,0,1,0,1]],[2,2,2,2,0,1,0,0,1]],[[432,4,0,203,64,0,0,1,0,0,0,0,[]],84,3101,[[0],[0],[""],["en-us"],[0],[1],[1],["{\"alignY\": 85, \"alignX\": 45, \"size\": 28}"],[0],[1],[0],[0],[0]],[["",""],[1,0,1,0,1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",2,0,100,50,0,0,-10,0,"",-1,0]],[[88,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3102,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Pause",""],[""],[0,0,0,0,1],["",""]],[0,"Pause",0,1]],[[158,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3103,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Replay","1"],[""],[0,0,0,0,1],["",""]],[0,"Reload",0,1]]],[]],["End Game",5,521565674003461,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],85,3104,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[73,194,0,494,72,0,0,1,0,0,0,0,[]],86,3105,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],["{alignY:50}"],[0],[1],[0],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Your final time",2.5,0,50,50,0,0,-10,0,"",-1,0]],[[320,403,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3106,[[0],[1],[0],[0],[""],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Quit",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[73,243,0,494,85,0,0,1,0,0,0,0,[]],87,3108,[[0],[1],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",3,0,50,50,0,0,-10,0,"",-1,0]],[[73,318,0,494,25,0,0,1,0,0,0,0,[]],86,5480,[[1],[1],["tryagainhardmode"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Try again in hard mode!",1,0,50,50,0,0,-2,0,"",-1,0]]],[]]],[],[]],["Level 5 Old",1280,640,true,"Levels",931393148708778,[["Layer 0",0,321236706221512,true,[255,255,255],false,1,1,1,false,false,1,0,0,[[[342.7210083007813,599,0,374,9,0,0,1,0,0,0,0,[]],51,149,[],[[0],[1],[1,100,""]],[0,0]],[[85,193,0,32,64,0,0,1,0.5,0.5,0,0,[]],42,160,[["run"],[0],[1],[1],[0],[0.8],[0.5],[0],[1],[0],[0],[0],[""],[2],[0],[0],[0],[""],[0],[3],[0],[0],[0],[0],[0],[0],[0]],[[330,1500,1500,650,1500,1000,0,0,0,1],[],[0,0],[0,10000,360,1]],[1,"Default",0,1]],[[1186,504,0,97,199,0,0,1,0.5257731676101685,0.4974874258041382,0,0,[]],44,161,[],[[0]],[0,"Default",0,1]],[[960,599,0,320,9,0,0,1,0,0,0,0,[]],51,162,[],[[0],[1],[1,100,""]],[0,0]],[[725,437,0,203,9,0,0,1,0,0,0,0,[]],51,163,[],[[0],[1],[1,100,""]],[0,0]],[[134,77,0,294.1115112304688,64,0,0,1,0,0,0,0,[]],46,164,[[1],[1],[""],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Jump on place and press down to smash the ground!",1,0,50,0,0,0,0,0,"",-1,0]],[[442,428,0,256,64,0,0,1,0,0,0,0,[]],46,165,[[1],[1],[""],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Jump after a Smash",1,0,50,0,0,0,0,0,"",-1,0]],[[352,288,0,96,8,0,0,1,0,0,0,0,[]],45,150,[],[[0],[1]],[0,0]],[[0,288,0,352,9,0,0,1,0,0,0,0,[]],51,151,[],[[0],[1],[1,100,""]],[0,0]],[[352,288,0,320,9,0,1.570796370506287,1,0,0,0,0,[]],51,152,[],[[0],[1],[1,100,""]],[0,0]],[[456.8189392089844,-23.9676513671875,0,320,9,0,1.570796370506287,1,0,0,0,0,[]],51,153,[],[[0],[1],[1,100,""]],[0,0]],[[9,-28,0,320,9,0,1.570796370506287,1,0,0,0,0,[]],51,154,[],[[0],[1],[1,100,""]],[0,0]],[[-81,41,0,60.93439102172852,60.93439102172852,0,0,1,0.5,0.5,0,0,[]],53,1407,[["Hellish"],["{\"c2array\":true,\"size\":[329,6,1],\"data\":[[[403.49032605897264],[255.96897453585387],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[403.49032605897264],[255.96897453585387],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[403.49032605897264],[255.96897453585387],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[403.49032605897264],[255.96897453585387],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[403.49032605897264],[255.96897453585387],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[403.49032605897264],[255.96897453585387],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[403.49032605897264],[255.96897453585387],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[403.49032605897264],[255.96897453585387],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[403.49032605897264],[255.96897453585387],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[403.49032605897264],[255.96897453585387],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[403.49032605897264],[255.96897453585387],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[403.49032605897264],[255.96897453585387],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[403.49032605897264],[255.96897453585387],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[403.49032605897264],[255.96897453585387],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[403.49032605897264],[255.96897453585387],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[403.49032605897264],[255.96897453585387],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[403.49032605897264],[255.96897453585387],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[403.49032605897264],[255.96897453585387],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[403.49032605897264],[255.96897453585387],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[403.49032605897264],[255.96897453585387],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[403.49032605897264],[255.96897453585387],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[403.49032605897264],[255.96897453585387],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[403.49032605897264],[255.96897453585387],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[403.49032605897264],[255.96897453585387],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[403.49032605897264],[255.96897453585387],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[403.49032605897264],[255.96897453585387],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[403.49032605897264],[255.96897453585387],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[403.49032605897264],[255.96897453585387],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[403.49032605897264],[255.96897453585387],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[403.49032605897264],[255.96897453585387],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[403.49032605897264],[255.96897453585387],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[403.49032605897264],[255.96897453585387],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[403.49032605897264],[255.96897453585387],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[403.49032605897264],[255.96897453585387],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[403.49032605897264],[255.96897453585387],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[403.49032605897264],[255.96897453585387],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[403.49032605897264],[255.96897453585387],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[403.49032605897264],[255.96897453585387],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[403.49032605897264],[255.96897453585387],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[403.49032605897264],[245.18482452192092],[3.6647298748364163e-7],[\"jump\"],[0],[1]],[[403.49032605897264],[234.75955817593365],[3.6647298748364163e-7],[\"jump\"],[0],[1]],[[403.49032605897264],[224.7988302415274],[3.6647298748364163e-7],[\"jump\"],[0],[1]],[[403.49032605897264],[215.253593682584],[3.6647298748364163e-7],[\"jump\"],[0],[1]],[[403.49032605897264],[206.0894041904431],[3.6647298748364163e-7],[\"jump\"],[0],[1]],[[403.49032605897264],[197.3438494068554],[3.6647298748364163e-7],[\"jump\"],[0],[1]],[[403.49032605897264],[189.02463508985574],[3.6647298748364163e-7],[\"jump\"],[0],[1]],[[403.49032605897264],[181.1152520554886],[3.6647298748364163e-7],[\"jump\"],[0],[1]],[[403.49032605897264],[173.62247962943295],[3.6647298748364163e-7],[\"jump\"],[0],[1]],[[403.49032605897264],[166.54449141110365],[3.6647298748364163e-7],[\"jump\"],[0],[1]],[[403.49032605897264],[159.8464542992634],[3.6647298748364163e-7],[\"pound\"],[0],[1]],[[403.49032605897264],[155.29105633444829],[3.6647298748364163e-7],[\"pound\"],[0],[1]],[[403.49032605897264],[151.12197328404196],[3.6647298748364163e-7],[\"pound\"],[0],[1]],[[403.49032605897264],[147.38509634965072],[3.6647298748364163e-7],[\"pound\"],[0],[1]],[[403.49032605897264],[144.03321620958565],[3.6647298748364163e-7],[\"pound\"],[0],[1]],[[403.49032605897264],[141.11768853162164],[3.6647298748364163e-7],[\"pound\"],[0],[1]],[[403.49032605897264],[138.62966268824607],[3.6647298748364163e-7],[\"pound\"],[0],[1]],[[403.49032605897264],[136.53866707345773],[3.6647298748364163e-7],[\"pound\"],[0],[1]],[[403.49032605897264],[134.86349912115162],[3.6647298748364163e-7],[\"pound\"],[0],[1]],[[403.49032605897264],[133.61545932301945],[3.6647298748364163e-7],[\"pound\"],[0],[1]],[[403.49032605897264],[132.7720542930198],[3.6647298748364163e-7],[\"pound\"],[0],[1]],[[403.49032605897264],[132.34657631726222],[3.6647298748364163e-7],[\"pound\"],[0],[1]],[[403.49032605897264],[132.3362670946361],[3.6647298748364163e-7],[\"pound\"],[0],[1]],[[403.49032605897264],[141.11505453974524],[3.6647298748364163e-7],[\"pound\"],[0],[1]],[[403.49032605897264],[150.27057020764377],[3.6647298748364163e-7],[\"pound\"],[0],[1]],[[403.49032605897264],[159.79608002287043],[3.6647298748364163e-7],[\"pound\"],[0],[1]],[[403.49032605897264],[169.7471295441313],[3.6647298748364163e-7],[\"pound\"],[0],[1]],[[403.49032605897264],[180.17474218661064],[3.6647298748364163e-7],[\"pound\"],[0],[1]],[[403.49032605897264],[191.03566209448394],[3.6647298748364163e-7],[\"pound\"],[0],[1]],[[403.49032605897264],[202.20984906161206],[3.6647298748364163e-7],[\"pound\"],[0],[1]],[[403.49032605897264],[213.90413166524354],[3.6647298748364163e-7],[\"pound\"],[0],[1]],[[403.49032605897264],[225.91233994685348],[3.6647298748364163e-7],[\"pound\"],[0],[1]],[[403.49032605897264],[238.40524886662044],[3.6647298748364163e-7],[\"pound\"],[0],[1]],[[403.49032605897264],[251.22360114907357],[3.6647298748364163e-7],[\"pound\"],[0],[1]],[[403.49032605897264],[264.5427047043553],[3.6647298748364163e-7],[\"pound\"],[0],[1]],[[403.49032605897264],[278.2645509027295],[3.6647298748364163e-7],[\"pound\"],[0],[1]],[[403.49032605897264],[292.47538838939494],[3.6647298748364163e-7],[\"pound\"],[0],[1]],[[403.49032605897264],[307.0016188735815],[3.6647298748364163e-7],[\"pound\"],[0],[1]],[[403.49032605897264],[321.96859253885316],[3.6647298748364163e-7],[\"pound\"],[0],[1]],[[403.49032605897264],[337.32721825924375],[3.6647298748364163e-7],[\"pound\"],[0],[1]],[[403.49032605897264],[353.1370020242945],[3.6647298748364163e-7],[\"pound\"],[0],[1]],[[403.49032605897264],[369.3698143257615],[3.6647298748364163e-7],[\"pound\"],[0],[1]],[[403.49032605897264],[385.9637030969831],[3.6647298748364163e-7],[\"pound\"],[0],[1]],[[403.49032605897264],[403.00694934340106],[3.6647298748364163e-7],[\"pound\"],[0],[1]],[[403.49032605897264],[420.49028492136466],[3.6647298748364163e-7],[\"pound\"],[0],[1]],[[403.49032605897264],[438.4275269832111],[3.6647298748364163e-7],[\"pound\"],[0],[1]],[[403.49032605897264],[456.6278777712252],[3.6647298748364163e-7],[\"pound\"],[0],[1]],[[403.49032605897264],[475.4061771025196],[3.6647298748364163e-7],[\"pound\"],[0],[1]],[[403.49032605897264],[494.3823601775816],[3.6647298748364163e-7],[\"pound\"],[0],[1]],[[403.49032605897264],[514.0842526626028],[3.6647298748364163e-7],[\"pound\"],[0],[1]],[[403.49032605897264],[534.0224735384105],[3.6647298748364163e-7],[\"pound\"],[0],[1]],[[403.49032605897264],[554.3230291416688],[3.6647298748364163e-7],[\"pound\"],[0],[1]],[[403.49032605897264],[566.9558570358724],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[403.49032605897264],[566.9558570358724],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[403.49032605897264],[566.9558570358724],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[403.49032605897264],[566.9558570358724],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[403.49032605897264],[566.9558570358724],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[403.49032605897264],[566.9558570358724],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[403.49032605897264],[566.9558570358724],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[403.49032605897264],[566.9558570358724],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[403.49032605897264],[566.9558570358724],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[403.49032605897264],[566.9558570358724],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[403.49032605897264],[566.9558570358724],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[403.49032605897264],[566.9558570358724],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[403.49032605897264],[566.9558570358724],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[403.49032605897264],[566.9558570358724],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[403.49032605897264],[566.9558570358724],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[403.49032605897264],[566.9558570358724],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[403.49032605897264],[566.9558570358724],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[403.49032605897264],[566.9558570358724],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[403.49032605897264],[566.9558570358724],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[403.49032605897264],[566.9558570358724],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[403.49032605897264],[566.9558570358724],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[403.49032605897264],[566.9558570358724],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[403.49032605897264],[566.9558570358724],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[403.49032605897264],[566.9558570358724],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[403.49032605897264],[566.9558570358724],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[403.49032605897264],[566.9558570358724],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[403.49032605897264],[566.9558570358724],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[403.49032605897264],[566.9558570358724],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[403.49032605897264],[566.9558570358724],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[403.49032605897264],[566.9558570358724],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[403.49032605897264],[566.9558570358724],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[403.49032605897264],[566.9558570358724],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[403.49032605897264],[566.9558570358724],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[403.49032605897264],[566.9558570358724],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[403.49032605897264],[566.9558570358724],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[403.49032605897264],[566.9558570358724],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[403.49032605897264],[566.9558570358724],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[403.9045629446833],[566.9558570358724],[3.6647298748364163e-7],[\"run\"],[0],[1]],[[404.7358805599772],[566.9558570358724],[3.6647298748364163e-7],[\"run\"],[0],[1]],[[405.97624783263007],[566.9558570358724],[3.6647298748364163e-7],[\"run\"],[0],[1]],[[407.64242690705424],[566.9558570358724],[3.6647298748364163e-7],[\"run\"],[0],[1]],[[409.7083745078261],[566.9558570358724],[3.6647298748364163e-7],[\"run\"],[0],[1]],[[412.19820950563525],[566.9558570358724],[3.6647298748364163e-7],[\"run\"],[0],[1]],[[415.10432680651763],[566.9558570358724],[3.6647298748364163e-7],[\"run\"],[0],[1]],[[418.4255291418569],[566.9558570358724],[3.6647298748364163e-7],[\"run\"],[0],[1]],[[422.174394505004],[566.9558570358724],[3.6647298748364163e-7],[\"run\"],[0],[1]],[[426.3194539706509],[566.9558570358724],[3.6647298748364163e-7],[\"run\"],[0],[1]],[[430.87216539182674],[566.9558570358724],[3.6647298748364163e-7],[\"run\"],[0],[1]],[[435.8760430359131],[566.9558570358724],[3.6647298748364163e-7],[\"run\"],[0],[1]],[[441.26655629838854],[566.9558570358724],[3.6647298748364163e-7],[\"run\"],[0],[1]],[[446.75808629664164],[566.9558570358724],[3.6647298748364163e-7],[\"run\"],[0],[1]],[[452.2238763005872],[566.9558570358724],[3.6647298748364163e-7],[\"run\"],[0],[1]],[[457.75368629259094],[566.9558570358724],[3.6647298748364163e-7],[\"run\"],[0],[1]],[[463.2089162929616],[566.9558570358724],[3.6647298748364163e-7],[\"run\"],[0],[1]],[[468.73905629708236],[566.9558570358724],[3.6647298748364163e-7],[\"run\"],[0],[1]],[[474.2239862931011],[566.9558570358724],[3.6647298748364163e-7],[\"run\"],[0],[1]],[[479.6983562951492],[566.9558570358724],[3.6647298748364163e-7],[\"run\"],[0],[1]],[[485.21199629848627],[566.9558570358724],[3.6647298748364163e-7],[\"run\"],[0],[1]],[[490.7061662976331],[566.9558570358724],[3.6647298748364163e-7],[\"run\"],[0],[1]],[[496.178226291696],[566.9558570358724],[3.6647298748364163e-7],[\"run\"],[0],[1]],[[501.68229629899645],[566.9558570358724],[3.6647298748364163e-7],[\"run\"],[0],[1]],[[507.15270629970394],[566.9558570358724],[3.6647298748364163e-7],[\"run\"],[0],[1]],[[512.6452262958911],[566.9558570358724],[3.6647298748364163e-7],[\"run\"],[0],[1]],[[518.164806296437],[566.9558570358724],[3.6647298748364163e-7],[\"run\"],[0],[1]],[[523.6259762940164],[566.9558570358724],[3.6647298748364163e-7],[\"run\"],[0],[1]],[[529.129716298804],[566.9558570358724],[3.6647298748364163e-7],[\"run\"],[0],[1]],[[534.6321362935406],[566.9558570358724],[3.6647298748364163e-7],[\"run\"],[0],[1]],[[540.104856292629],[566.9558570358724],[3.6647298748364163e-7],[\"run\"],[0],[1]],[[545.5897862982521],[566.9558570358724],[3.6647298748364163e-7],[\"run\"],[0],[1]],[[551.0925362955014],[566.9558570358724],[3.6647298748364163e-7],[\"run\"],[0],[1]],[[556.5807662974395],[566.9558570358724],[3.6647298748364163e-7],[\"run\"],[0],[1]],[[562.0643762930114],[566.9558570358724],[3.6647298748364163e-7],[\"run\"],[0],[1]],[[567.5493062986344],[566.9558570358724],[3.6647298748364163e-7],[\"run\"],[0],[1]],[[573.0708662950484],[566.9558570358724],[3.6647298748364163e-7],[\"run\"],[0],[1]],[[578.5574462940268],[566.9558570358724],[3.6647298748364163e-7],[\"run\"],[0],[1]],[[584.0278562947343],[566.9558570358724],[3.6647298748364163e-7],[\"run\"],[0],[1]],[[589.5266463002473],[566.9558570358724],[3.6647298748364163e-7],[\"run\"],[0],[1]],[[595.0109162912405],[566.9558570358724],[3.6647298748364163e-7],[\"run\"],[0],[1]],[[600.5212562982625],[566.9558570358724],[3.6647298748364163e-7],[\"run\"],[0],[1]],[[605.9956263003106],[566.9558570358724],[3.6647298748364163e-7],[\"run\"],[0],[1]],[[611.4808862988422],[566.9558570358724],[3.6647298748364163e-7],[\"run\"],[0],[1]],[[616.9717562920697],[566.9558570358724],[3.6647298748364163e-7],[\"run\"],[0],[1]],[[622.4675762941762],[566.9558570358724],[3.6647298748364163e-7],[\"run\"],[0],[1]],[[627.5582819241221],[566.9558570358724],[3.6647298748364163e-7],[\"run\"],[0],[1]],[[632.2039688815132],[566.9558570358724],[3.6647298748364163e-7],[\"run\"],[0],[1]],[[636.4574494972652],[566.9558570358724],[3.6647298748364163e-7],[\"run\"],[0],[1]],[[640.2905156559424],[566.9558570358724],[3.6647298748364163e-7],[\"run\"],[0],[1]],[[643.6942737277773],[566.9558570358724],[3.6647298748364163e-7],[\"run\"],[0],[1]],[[646.7048495495287],[566.9558570358724],[3.6647298748364163e-7],[\"run\"],[0],[1]],[[649.2802479715141],[566.9558570358724],[3.6647298748364163e-7],[\"run\"],[0],[1]],[[651.4452292102967],[566.9558570358724],[3.6647298748364163e-7],[\"run\"],[0],[1]],[[653.1941293181219],[566.9558570358724],[3.6647298748364163e-7],[\"run\"],[0],[1]],[[654.5360553872447],[566.9558570358724],[3.6647298748364163e-7],[\"run\"],[0],[1]],[[655.4579250051938],[566.9558570358724],[3.6647298748364163e-7],[\"run\"],[0],[1]],[[655.9659179686427],[566.9558570358724],[3.6647298748364163e-7],[\"run\"],[0],[1]],[[656.0573179593333],[566.9558570358724],[3.6647298748364163e-7],[\"run\"],[0],[1]],[[656.0573179593333],[566.9558570358724],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[656.0573179593333],[566.9558570358724],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[656.0573179593333],[566.9558570358724],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[656.0573179593333],[566.9558570358724],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[656.0573179593333],[566.9558570358724],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[656.0573179593333],[566.9558570358724],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[656.0573179593333],[566.9558570358724],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[656.0573179593333],[566.9558570358724],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[656.0573179593333],[566.9558570358724],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[656.0573179593333],[566.9558570358724],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[656.0573179593333],[556.1522070247968],[3.6647298748364163e-7],[\"jump\"],[0],[1]],[[656.0573179593333],[545.7293405316223],[3.6647298748364163e-7],[\"jump\"],[0],[1]],[[656.0573179593333],[535.7719641917206],[3.6647298748364163e-7],[\"jump\"],[0],[1]],[[656.0573179593333],[526.1709126920263],[3.6647298748364163e-7],[\"jump\"],[0],[1]],[[656.0573179593333],[517.0573170768208],[3.6647298748364163e-7],[\"jump\"],[0],[1]],[[656.0573179593333],[508.30923610411537],[3.6647298748364163e-7],[\"jump\"],[0],[1]],[[656.0573179593333],[499.98346716925346],[3.6647298748364163e-7],[\"jump\"],[0],[1]],[[656.0573179593333],[492.0646267277677],[3.6647298748364163e-7],[\"pound\"],[0],[1]],[[656.0573179593333],[487.4662155262229],[3.6647298748364163e-7],[\"pound\"],[0],[1]],[[656.0573179593333],[483.33182283563605],[3.6647298748364163e-7],[\"pound\"],[0],[1]],[[656.0573179593333],[479.5616498940265],[3.6647298748364163e-7],[\"pound\"],[0],[1]],[[656.0573179593333],[476.23668532469765],[3.6647298748364163e-7],[\"pound\"],[0],[1]],[[656.0573179593333],[473.3336201224479],[3.6647298748364163e-7],[\"pound\"],[0],[1]],[[656.0573179593333],[470.8234142061765],[3.6647298748364163e-7],[\"pound\"],[0],[1]],[[656.0573179593333],[468.746616470371],[3.6647298748364163e-7],[\"pound\"],[0],[1]],[[656.0573179593333],[467.077613219869],[3.6647298748364163e-7],[\"pound\"],[0],[1]],[[656.0573179593333],[465.82484755871695],[3.6647298748364163e-7],[\"pound\"],[0],[1]],[[656.0573179593333],[464.98577391317957],[3.6647298748364163e-7],[\"pound\"],[0],[1]],[[656.0573179593333],[464.56474068926855],[3.6647298748364163e-7],[\"pound\"],[0],[1]],[[656.0573179593333],[464.55692586141373],[3.6647298748364163e-7],[\"pound\"],[0],[1]],[[656.0573179593333],[473.3131593953937],[3.6647298748364163e-7],[\"pound\"],[0],[1]],[[656.0573179593333],[482.4797260410277],[3.6647298748364163e-7],[\"pound\"],[0],[1]],[[656.0573179593333],[492.0263307653961],[3.6647298748364163e-7],[\"pound\"],[0],[1]],[[656.0573179593333],[501.98777400217534],[3.6647298748364163e-7],[\"pound\"],[0],[1]],[[656.0573179593333],[512.387594967246],[3.6647298748364163e-7],[\"pound\"],[0],[1]],[[656.0573179593333],[523.2070484538093],[3.6647298748364163e-7],[\"pound\"],[0],[1]],[[656.0573179593333],[534.3878157422079],[3.6647298748364163e-7],[\"pound\"],[0],[1]],[[656.0573179593333],[546.0327409647208],[3.6647298748364163e-7],[\"pound\"],[0],[1]],[[656.0573179593333],[558.126982557094],[3.6647298748364163e-7],[\"pound\"],[0],[1]],[[656.0573179593333],[566.958530818437],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[656.0573179593333],[566.958530818437],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[656.0573179593333],[566.958530818437],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[656.0573179593333],[555.0287558115716],[3.6647298748364163e-7],[\"jump\"],[0],[1]],[[656.0573179593333],[543.596379650348],[3.6647298748364163e-7],[\"jump\"],[0],[1]],[[656.0573179593333],[532.4834075565815],[3.6647298748364163e-7],[\"jump\"],[0],[1]],[[656.0573179593333],[521.7996762613607],[3.6647298748364163e-7],[\"jump\"],[0],[1]],[[656.0573179593333],[511.6395328459897],[3.6647298748364163e-7],[\"jump\"],[0],[1]],[[656.0573179593333],[501.78436234629135],[3.6647298748364163e-7],[\"jump\"],[0],[1]],[[656.0573179593333],[492.37060558893256],[3.6647298748364163e-7],[\"jump\"],[0],[1]],[[656.0573179593333],[483.36927541446966],[3.6647298748364163e-7],[\"jump\"],[0],[1]],[[656.0573179593333],[474.8103176996753],[3.6647298748364163e-7],[\"jump\"],[0],[1]],[[656.0573179593333],[466.63344954997984],[3.6647298748364163e-7],[\"jump\"],[0],[1]],[[656.0573179593333],[458.8772374374409],[3.6647298748364163e-7],[\"jump\"],[0],[1]],[[656.0573179593333],[451.5759818555806],[3.6647298748364163e-7],[\"jump\"],[0],[1]],[[656.4766054011624],[444.6310262857478],[3.6647298748364163e-7],[\"jump\"],[0],[1]],[[657.308721124726],[438.1367795530653],[3.6647298748364163e-7],[\"jump\"],[0],[1]],[[658.5492332355177],[432.0800003172243],[3.6647298748364163e-7],[\"jump\"],[0],[1]],[[660.2110450923719],[426.41060453289674],[3.6647298748364163e-7],[\"jump\"],[0],[1]],[[662.2903384023982],[421.1529640670976],[3.6647298748364163e-7],[\"jump\"],[0],[1]],[[664.7949088970106],[416.2976962601298],[3.6647298748364163e-7],[\"jump\"],[0],[1]],[[667.6998762177831],[411.88334867104214],[3.6647298748364163e-7],[\"jump\"],[0],[1]],[[671.0010665783747],[407.9004618280653],[3.6647298748364163e-7],[\"jump\"],[0],[1]],[[674.7426449406026],[404.30466595243337],[3.6647298748364163e-7],[\"jump\"],[0],[1]],[[678.9045758751511],[401.12261556477034],[3.6647298748364163e-7],[\"jump\"],[0],[1]],[[683.4897833005659],[398.35459177295655],[3.6647298748364163e-7],[\"jump\"],[0],[1]],[[688.4582947545172],[396.01700244729255],[3.6647298748364163e-7],[\"jump\"],[0],[1]],[[693.8531241728725],[394.0885527077408],[3.6647298748364163e-7],[\"jump\"],[0],[1]],[[699.3324441741953],[392.5761939715646],[3.6647298748364163e-7],[\"jump\"],[0],[1]],[[704.8434441670344],[391.47342617264394],[3.6647298748364163e-7],[\"jump\"],[0],[1]],[[710.3376141757855],[390.7898099073648],[3.6647298748364163e-7],[\"jump\"],[0],[1]],[[715.8142941762145],[390.52151067368493],[3.6647298748364163e-7],[\"jump\"],[0],[1]],[[721.3068141724017],[390.66796955163693],[3.6647298748364163e-7],[\"fall\"],[0],[1]],[[726.8247441699879],[391.23449375225954],[3.6647298748364163e-7],[\"fall\"],[0],[1]],[[731.9008898470053],[392.21369179418696],[3.6647298748364163e-7],[\"fall\"],[0],[1]],[[736.5294828434753],[393.594593521617],[3.6647298748364163e-7],[\"fall\"],[0],[1]],[[740.79066934968],[395.40876418289406],[3.6647298748364163e-7],[\"fall\"],[0],[1]],[[744.6279763090647],[397.63662573013244],[3.6647298748364163e-7],[\"fall\"],[0],[1]],[[748.0366491464646],[400.2691052611113],[3.6647298748364163e-7],[\"fall\"],[0],[1]],[[751.0422948783416],[403.32899191962804],[3.6647298748364163e-7],[\"fall\"],[0],[1]],[[753.6241163430248],[404.98055326998224],[3.6647298748364163e-7],[\"run\"],[0],[1]],[[755.7973348049719],[404.98055326998224],[3.6647298748364163e-7],[\"run\"],[0],[1]],[[757.5554771245156],[404.98055326998224],[3.6647298748364163e-7],[\"run\"],[0],[1]],[[758.8889996787514],[404.98055326998224],[3.6647298748364163e-7],[\"run\"],[0],[1]],[[759.8138962228319],[404.98055326998224],[3.6647298748364163e-7],[\"run\"],[0],[1]],[[760.3228147825313],[404.98055326998224],[3.6647298748364163e-7],[\"run\"],[0],[1]],[[760.4169385282163],[404.98055326998224],[3.6647298748364163e-7],[\"run\"],[0],[1]],[[760.4169385282163],[404.98055326998224],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[760.4169385282163],[404.98055326998224],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[760.4169385282163],[404.98055326998224],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[760.4169385282163],[404.98055326998224],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[760.4169385282163],[404.98055326998224],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[760.4169385282163],[404.98055326998224],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[760.4169385282163],[404.98055326998224],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[760.4169385282163],[404.98055326998224],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[760.4169385282163],[404.98055326998224],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[760.4169385282163],[404.98055326998224],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[760.4169385282163],[404.98055326998224],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[760.4169385282163],[404.98055326998224],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[760.4169385282163],[404.98055326998224],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[760.4169385282163],[404.98055326998224],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[760.4169385282163],[404.98055326998224],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[760.4169385282163],[404.98055326998224],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[760.4169385282163],[404.98055326998224],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[760.4169385282163],[404.98055326998224],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[760.4169385282163],[404.98055326998224],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[760.4169385282163],[404.98055326998224],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[760.4169385282163],[404.98055326998224],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[760.4169385282163],[404.98055326998224],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[760.4169385282163],[404.98055326998224],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[760.4169385282163],[404.98055326998224],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[760.4169385282163],[404.98055326998224],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[760.4169385282163],[404.98055326998224],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[760.4169385282163],[404.98055326998224],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[760.4169385282163],[404.98055326998224],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[760.4169385282163],[404.98055326998224],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[760.4169385282163],[404.98055326998224],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[760.4169385282163],[404.98055326998224],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[760.4169385282163],[404.98055326998224],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[760.4169385282163],[404.98055326998224],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[760.4169385282163],[404.98055326998224],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[760.4169385282163],[404.98055326998224],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[760.4169385282163],[404.98055326998224],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[760.4169385282163],[404.98055326998224],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[760.4169385282163],[404.98055326998224],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[760.4169385282163],[404.98055326998224],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[760.4169385282163],[404.98055326998224],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[760.4169385282163],[404.98055326998224],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[760.4169385282163],[404.98055326998224],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[760.4169385282163],[404.98055326998224],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[760.4169385282163],[404.98055326998224],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[760.4169385282163],[404.98055326998224],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[760.4169385282163],[404.98055326998224],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[760.4169385282163],[404.98055326998224],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[760.4169385282163],[404.98055326998224],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[760.4169385282163],[404.98055326998224],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[760.4169385282163],[404.98055326998224],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[760.4169385282163],[404.98055326998224],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[760.4169385282163],[404.98055326998224],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[760.4169385282163],[404.98055326998224],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[760.4169385282163],[404.98055326998224],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[760.4169385282163],[404.98055326998224],[3.6647298748364163e-7],[\"idle\"],[0],[1]],[[760.4169385282163],[404.98055326998224],[3.6647298748364163e-7],[\"idle\"],[0],[1]]]}"],[0]],[],[1,"Default",0,1]],[[718,518,0,256,64,0,0,1,0,0,0,0,[]],46,123,[[1],[1],[""],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","To jump higher!",1,0,50,0,0,0,0,0,"",-1,0]],[[314,249,0,137,49,0,0,1,0,0,0,0,[]],46,124,[[1],[1],[""],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","(You can smash this)",0.7,0,50,0,0,0,0,0,"",-1,0]],[[1279,190,0,416,9,0,1.570796370506287,1,0,0,0,0,[]],51,125,[],[[0],[1],[1,100,""]],[0,0]],[[-97.20001220703125,-83.59999847412109,0,4,8,0,0,1,1,0,0,0,[]],38,2624,[[0],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","rightarm",3,1,0,0,1,2]],[0,"Default",0,1]],[[-97.20001220703125,-75.59999847412109,0,4,8,0,0,1,1,0,0,0,[]],40,2625,[[1],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","righthand",3,1,0,0,1,2]],[0,"Default",0,1]],[[-101.2000122070313,-78.59999847412109,0,8,16,0,0,1,0.5,0.5,0,0,[]],32,2626,[[2],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","body",3,1,0,0,1,2]],[0,"Default",0,1]],[[-101.2000122070313,-62.59999847412109,0,4,8,0,0,1,0,0,0,0,[]],39,2627,[[4],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","rightfoot",3,1,0,0,1,2]],[0,"Default",0,1]],[[-101.2000122070313,-70.59999847412109,0,4,8,0,0,1,0,0,0,0,[]],41,2628,[[3],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","rightleg",3,1,0,0,1,2]],[0,"Default",0,1]],[[-105.2000122070313,-62.59999847412109,0,4,8,0,0,1,0,0,0,0,[]],35,2629,[[6],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","leftfoot",3,1,0,0,1,2]],[0,"Default",0,1]],[[-105.2000122070313,-70.59999847412109,0,4,8,0,0,1,0,0,0,0,[]],37,2630,[[5],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","leftleg",3,1,0,0,1,2]],[0,"Default",0,1]],[[-101.2000122070313,-86.59999847412109,0,32,32,0,0,1,0.5,1,0,0,[]],33,2631,[[7],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","head",3,1,0,0,1,2]],[0,"Default",0,1]],[[-105.2000122070313,-83.59999847412109,0,4,8,0,0,1,1,0,0,0,[]],34,2632,[[8],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","leftarm",3,1,0,0,1,2]],[0,"Default",0,1]],[[-105.2000122070313,-75.59999847412109,0,4,8,0,0,1,1,0,0,0,[]],36,2633,[[9],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","lefthand",3,1,0,0,1,2]],[0,"Default",0,1]],[[-219,136,0,288,117,0,0,1,0,0,0,0,[[]]],61,5596,[],[[1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>","1",7,0,50,0,0,0,0,0,"",-1,0]]],[]],["UI",1,327772779383549,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[240,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3097,[["right"]],[[0,1,0,1,1]],[0,"Default",0,1]],[[80,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3098,[["left"]],[[0,1,0,1,1]],[0,"Default",1,1]],[[560,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3099,[["up"]],[[1,1,1,1,1]],[0,"Default",3,1]],[[400,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3100,[["down"]],[[1,1,1,1,1]],[0,"Default",2,1]]],[]],["End Card",2,614345523289850,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],78,2607,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[12.04449462890625,194,0,615.9109497070313,67,0,0,1,0,0,0,0,[]],79,2608,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Timer for this level",2.5,0,0,0,0,0,-10,0,"",-1,0]],[[17.546875,248,0,604.90625,105,0,0,1,0,0,0,0,[]],80,2610,[[0],[0],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","13:40:40",4,0,63,50,0,0,-10,0,"",-1,0]],[[115.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,2611,[[0],[1],[0],[0],["replay"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Replay",""],[""],[2,2,0,0,0],["",""]],[0,"Replay",0,1]],[[524.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3086,[[0],[1],[0],[0],["next"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Next",""],[""],[2,2,0,0,0],["",""]],[0,"Next",0,1]],[[320.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3087,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > Back","Level Menu"],[""],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[320.75,521.8050537109375,0,384,96,0,0,1,0.5,0.5,0,0,[]],70,3088,[[1],[1],[0],[0],[""],["{\"size\": 22, \"left\": 70, \"right\": 18, \"alignY\": 60}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > DownloadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"DownloadReplay",0,1]]],[]],["Pause",3,347870773058602,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-310,678,0,274,31,0,0,1,0,0,0,0,[]],168,3089,[],[],[".ovo",0,1,"file"]],[[320,320,0,425,250,0,0,1,0.5,0.5,0,0,[]],82,3090,[],[[6,1,"",300,1,1,"",300,"overlay",1,"PauseClose",1,1]],[0,"Default",0,1]],[[214,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3091,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"",""],["PauseClose"],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[426,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3092,[[0],[1],[0],[0],["quit"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > GiveUp",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[115.5,202,0,409,118,0,0,1,0,0,0,0,[]],83,3093,[[1],[1],["pause"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Pause",4,0,57,50,0,0,-10,0,"",-1,0]],[[320.5,88,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3094,[[1],[1],[0],[0],["loadreplay"],["{\"size\": 16, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > LoadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"LoadReplay",0,1]],[[320.5,157,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3095,[[1],[0],[0],[0],["toggledebug"],["{\"size\": 15, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Debug > Toggle",""],[""],[2,2,0,0,0],["",""]],[0,"ToggleDebug",0,1]],[[78,448,0,484,134,0,0,1,0,0,0,0,[]],193,3096,[],[],[0,"Default",0,1]]],[]],["Overlay",4,823929716942182,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[432,4,0,203.0009155273438,64,0,0,1,0,0,0,0,[]],107,5488,[],[[1,0,1,0,1]],[2,2,2,2,0,1,0,0,1]],[[432,4,0,203,64,0,0,1,0,0,0,0,[]],84,3101,[[0],[0],[""],["en-us"],[0],[1],[1],["{\"alignY\": 85, \"alignX\": 45, \"size\": 28}"],[0],[1],[0],[0],[0]],[["",""],[1,0,1,0,1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",2,0,100,50,0,0,-10,0,"",-1,0]],[[88,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3102,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Pause",""],[""],[0,0,0,0,1],["",""]],[0,"Pause",0,1]],[[158,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3103,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Replay","1"],[""],[0,0,0,0,1],["",""]],[0,"Reload",0,1]]],[]],["End Game",5,754184220861042,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],85,3104,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[73,194,0,494,72,0,0,1,0,0,0,0,[]],86,3105,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],["{alignY:50}"],[0],[1],[0],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Your final time",2.5,0,50,50,0,0,-10,0,"",-1,0]],[[320,403,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3106,[[0],[1],[0],[0],[""],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Quit",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[73,243,0,494,85,0,0,1,0,0,0,0,[]],87,3108,[[0],[1],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",3,0,50,50,0,0,-10,0,"",-1,0]],[[73,318,0,494,25,0,0,1,0,0,0,0,[]],86,5480,[[1],[1],["tryagainhardmode"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Try again in hard mode!",1,0,50,50,0,0,-2,0,"",-1,0]]],[]]],[],[]],["Level 8 Old",1260,500,true,"Levels",355715533881021,[["Layer 0",0,160760948922936,true,[255,255,255],false,1,1,1,false,false,1,0,0,[[[32,384,0,475,9,0,0,1,0,0,0,0,[]],51,170,[],[[0],[1],[1,100,""]],[0,0]],[[98,282,0,32,64,0,0,1,0.5,0.5,0,0,[]],42,181,[["run"],[0],[1],[1],[0],[0.8],[0.5],[0],[1],[0],[0],[0],[""],[2],[0],[0],[0],[""],[0],[3],[0],[0],[0],[0],[0],[0],[0]],[[330,1500,1500,650,1500,1000,0,0,0,1],[],[0,0],[0,10000,360,1]],[1,"Default",0,1]],[[1095,291,0,97,199,0,0,1,0.5257731676101685,0.4974874258041382,0,0,[]],44,182,[],[[0]],[0,"Default",0,1]],[[160,214,0,231,64,0,0,1,0,0,0,0,[]],46,203,[[1],[1],[""],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Jump while sliding to dive",1,0,50,0,0,0,0,0,"",-1,0]],[[398,67,0,270,9,0,1.570796370506287,1,0,0,0,0,[]],51,204,[],[[0],[1],[1,100,""]],[0,0]],[[749,384,0,367,9,0,0,1,0,0,0,0,[]],51,219,[],[[0],[1],[1,100,""]],[0,0]],[[-92,63,0,60.93439102172852,60.93439102172852,0,0,1,0.5,0.5,0,0,[]],53,1410,[["Impossibler"],["{\"c2array\":true,\"size\":[138,6,1],\"data\":[[[295.7028513842802],[351.94335645729734],[0],[\"idle\"],[0],[1]],[[295.7028513842802],[351.94335645729734],[0],[\"idle\"],[0],[1]],[[295.7028513842802],[351.94335645729734],[0],[\"idle\"],[0],[1]],[[295.7028513842802],[351.94335645729734],[0],[\"idle\"],[0],[1]],[[295.7028513842802],[351.94335645729734],[0],[\"idle\"],[0],[1]],[[295.7028513842802],[351.94335645729734],[0],[\"idle\"],[0],[1]],[[295.7028513842802],[351.94335645729734],[0],[\"idle\"],[0],[1]],[[295.7028513842802],[351.94335645729734],[0],[\"idle\"],[0],[1]],[[295.7028513842802],[351.94335645729734],[0],[\"idle\"],[0],[1]],[[295.7028513842802],[351.94335645729734],[0],[\"idle\"],[0],[1]],[[295.7028513842802],[351.94335645729734],[0],[\"idle\"],[0],[1]],[[295.7028513842802],[351.94335645729734],[0],[\"idle\"],[0],[1]],[[295.7028513842802],[351.94335645729734],[0],[\"idle\"],[0],[1]],[[295.7028513842802],[351.94335645729734],[0],[\"idle\"],[0],[1]],[[295.7028513842802],[351.94335645729734],[0],[\"idle\"],[0],[1]],[[295.7028513842802],[351.94335645729734],[0],[\"idle\"],[0],[1]],[[295.7028513842802],[351.94335645729734],[0],[\"idle\"],[0],[1]],[[295.7028513842802],[351.94335645729734],[0],[\"idle\"],[0],[1]],[[295.7028513842802],[351.94335645729734],[0],[\"idle\"],[0],[1]],[[295.7028513842802],[351.94335645729734],[0],[\"idle\"],[0],[1]],[[295.7028513842802],[351.94335645729734],[0],[\"idle\"],[0],[1]],[[295.7028513842802],[351.94335645729734],[0],[\"idle\"],[0],[1]],[[295.7028513842802],[351.94335645729734],[0],[\"idle\"],[0],[1]],[[295.7028513842802],[351.94335645729734],[0],[\"idle\"],[0],[1]],[[295.7028513842802],[351.94335645729734],[0],[\"idle\"],[0],[1]],[[295.7028513842802],[351.94335645729734],[0],[\"idle\"],[0],[1]],[[295.7028513842802],[351.94335645729734],[0],[\"idle\"],[0],[1]],[[295.7028513842802],[351.94335645729734],[0],[\"idle\"],[0],[1]],[[295.7028513842802],[351.94335645729734],[0],[\"idle\"],[0],[1]],[[295.7028513842802],[351.94335645729734],[0],[\"idle\"],[0],[1]],[[295.7028513842802],[351.94335645729734],[0],[\"idle\"],[0],[1]],[[295.7028513842802],[351.94335645729734],[0],[\"idle\"],[0],[1]],[[295.7028513842802],[351.94335645729734],[0],[\"idle\"],[0],[1]],[[295.7028513842802],[351.94335645729734],[0],[\"idle\"],[0],[1]],[[295.7028513842802],[351.94335645729734],[0],[\"idle\"],[0],[1]],[[295.7028513842802],[351.94335645729734],[0],[\"slide\"],[1],[1]],[[299.6586252174692],[351.94335645729734],[0],[\"slide\"],[1],[1]],[[308.04163988846227],[351.94335645729734],[0],[\"slide\"],[1],[1]],[[316.42608854896287],[351.94335645729734],[0],[\"slide\"],[1],[1]],[[324.75889646589746],[351.94335645729734],[0],[\"slide\"],[1],[1]],[[333.1619845747299],[351.94335645729734],[0],[\"slide\"],[1],[1]],[[341.5325701685588],[351.94335645729734],[0],[\"slide\"],[1],[1]],[[349.89072467113607],[351.94335645729734],[0],[\"slide\"],[1],[1]],[[358.2990692327708],[351.94335645729734],[0],[\"slide\"],[1],[1]],[[366.6371384535067],[351.94335645729734],[0],[\"slide\"],[1],[1]],[[375.00628981074266],[351.94335645729734],[0],[\"slide\"],[1],[1]],[[383.3486634569965],[351.94335645729734],[0],[\"slide\"],[1],[1]],[[391.7426713807328],[351.94335645729734],[0],[\"slide\"],[1],[1]],[[400.1787257927945],[351.94335645729734],[0],[\"slide\"],[1],[1]],[[408.4833077791528],[351.94335645729734],[0],[\"slide\"],[1],[1]],[[416.87062433766874],[351.94335645729734],[0],[\"slide\"],[1],[1]],[[425.226388022374],[351.94335645729734],[0],[\"slide\"],[1],[1]],[[433.57545698185436],[351.94335645729734],[0],[\"slide\"],[1],[1]],[[441.9589496569871],[351.94335645729734],[0],[\"slide\"],[1],[1]],[[450.37876157659827],[351.94335645729734],[0],[\"slide\"],[1],[1]],[[458.72591765143096],[351.94335645729734],[0],[\"slide\"],[1],[1]],[[467.0941128173862],[351.94335645729734],[0],[\"slide\"],[1],[1]],[[475.44987650209146],[351.94335645729734],[0],[\"slide\"],[1],[1]],[[483.82954507401774],[351.94335645729734],[0],[\"slide\"],[1],[1]],[[492.17383173883826],[351.94335645729734],[0],[\"slide\"],[1],[1]],[[500.5793091805487],[351.94335645729734],[0],[\"slide\"],[0],[1]],[[508.9430433949228],[343.29575645820296],[0],[\"jump\"],[0],[1]],[[517.3022512442424],[335.06722291169206],[0],[\"jump\"],[0],[1]],[[525.6669913126384],[327.2481787630692],[0],[\"jump\"],[0],[1]],[[534.0186552055632],[319.85499658601907],[0],[\"jump\"],[0],[1]],[[542.376354251894],[312.8707087678287],[0],[\"jump\"],[0],[1]],[[550.7853522046371],[306.26288953372693],[0],[\"jump\"],[0],[1]],[[559.1666889888115],[300.09338987774777],[0],[\"jump\"],[0],[1]],[[567.4876741218274],[294.3789205937719],[0],[\"jump\"],[0],[1]],[[575.8579464239372],[289.04608732501396],[0],[\"jump\"],[0],[1]],[[584.2880674721504],[284.0965704373756],[0],[\"plunge\"],[1],[1]],[[591.9401734642282],[279.61731412953026],[0],[\"plunge\"],[1],[1]],[[599.6634274736692],[275.5155975710462],[0],[\"plunge\"],[1],[1]],[[607.3173814663727],[271.86238355416157],[0],[\"plunge\"],[1],[1]],[[615.0050614738551],[268.608406591532],[0],[\"plunge\"],[1],[1]],[[622.690431463748],[265.7704922302556],[0],[\"plunge\"],[1],[1]],[[630.3767254741227],[263.34742131803694],[0],[\"plunge\"],[1],[1]],[[638.041305467062],[261.3440378050525],[0],[\"plunge\"],[1],[1]],[[645.7816534722054],[259.7418946694394],[0],[\"plunge\"],[1],[1]],[[653.4559354717907],[258.56731424892814],[0],[\"plunge\"],[1],[1]],[[661.1306794748938],[257.8066009332132],[0],[\"plunge\"],[1],[1]],[[668.8188214724481],[257.459943942285],[0],[\"plunge\"],[1],[1]],[[676.5171274667204],[257.5293120113857],[0],[\"plunge\"],[1],[1]],[[684.1858654644287],[258.01170384976973],[0],[\"plunge\"],[1],[1]],[[691.8813994644855],[258.91196472880773],[0],[\"plunge\"],[1],[1]],[[699.5750854639167],[260.227993033211],[0],[\"plunge\"],[1],[1]],[[707.2327354713174],[261.9499532102741],[0],[\"plunge\"],[1],[1]],[[714.9582994714559],[264.10662299472267],[0],[\"plunge\"],[1],[1]],[[722.6311954739334],[266.6623284680886],[0],[\"plunge\"],[1],[1]],[[730.2925414691393],[269.6266806720155],[0],[\"plunge\"],[1],[1]],[[737.9820694638014],[273.01747124765603],[0],[\"plunge\"],[1],[1]],[[745.702551465581],[276.84079764962826],[0],[\"plunge\"],[1],[1]],[[753.3565054717304],[281.04287638392526],[0],[\"plunge\"],[1],[1]],[[761.0682094738999],[285.6945945997755],[0],[\"plunge\"],[1],[1]],[[768.757275465044],[290.7481416860166],[0],[\"plunge\"],[1],[1]],[[776.4546574657264],[296.2235377521005],[7.681350269587803e-7],[\"plunge\"],[1],[1]],[[784.1344834671885],[302.1009318633966],[0.0000013393632508068683],[\"plunge\"],[1],[1]],[[791.821701471153],[308.3992675785364],[0.0000017009874376127648],[\"plunge\"],[1],[1]],[[798.9658234749635],[315.1308851324637],[0.000001957339805215727],[\"plunge\"],[0],[1]],[[794.3809354798583],[322.2159595250555],[0.0000013889637713733403],[\"stun\"],[0],[-1]],[[789.7672186749935],[329.76111747760615],[9.45933312832925e-7],[\"stun\"],[0],[-1]],[[785.1313258787565],[337.76207975936893],[6.889201247631343e-7],[\"stun\"],[0],[-1]],[[780.5198266746423],[346.13607654346583],[4.33259313712303e-7],[\"stun\"],[0],[-1]],[[775.9285630793956],[351.9473270461057],[4.33259313712303e-7],[\"stun\"],[0],[-1]],[[771.7306076506376],[351.9473270461057],[4.33259313712303e-7],[\"stun\"],[0],[-1]],[[767.9242851156298],[351.9473270461057],[4.33259313712303e-7],[\"stun\"],[0],[-1]],[[764.5774429662216],[351.9473270461057],[4.33259313712303e-7],[\"stun\"],[0],[-1]],[[761.622656603121],[351.9473270461057],[4.33259313712303e-7],[\"stun\"],[0],[-1]],[[759.089187205401],[351.9473270461057],[4.33259313712303e-7],[\"stun\"],[0],[-1]],[[756.9688097047873],[351.9473270461057],[4.33259313712303e-7],[\"stun\"],[0],[-1]],[[755.2657370958591],[351.9473270461057],[4.33259313712303e-7],[\"stun\"],[0],[-1]],[[753.9768673466388],[351.9473270461057],[4.33259313712303e-7],[\"stun\"],[0],[-1]],[[753.1035592072503],[351.9473270461057],[4.33259313712303e-7],[\"stun\"],[0],[-1]],[[752.6455575234218],[351.9473270461057],[4.33259313712303e-7],[\"stun\"],[0],[-1]],[[752.6030691158555],[351.9473270461057],[4.33259313712303e-7],[\"stun\"],[0],[-1]],[[752.6030691158555],[351.9473270461057],[4.33259313712303e-7],[\"stun\"],[0],[-1]],[[752.6030691158555],[351.9473270461057],[4.33259313712303e-7],[\"stun\"],[0],[-1]],[[752.6030691158555],[351.9473270461057],[4.33259313712303e-7],[\"stun\"],[0],[-1]],[[752.6030691158555],[351.9473270461057],[4.33259313712303e-7],[\"stun\"],[0],[-1]],[[752.6030691158555],[351.9473270461057],[4.33259313712303e-7],[\"stun\"],[0],[-1]],[[752.6030691158555],[351.9473270461057],[4.33259313712303e-7],[\"stun\"],[0],[-1]],[[752.6030691158555],[351.9473270461057],[4.33259313712303e-7],[\"stun\"],[0],[-1]],[[753.8515844620225],[351.9473270461057],[4.33259313712303e-7],[\"run\"],[0],[1]],[[754.6850156657866],[351.9473270461057],[4.33259313712303e-7],[\"run\"],[0],[1]],[[755.1030630133564],[351.9473270461057],[4.33259313712303e-7],[\"run\"],[0],[1]],[[755.1043816810987],[351.9473270461057],[4.33259313712303e-7],[\"run\"],[0],[1]],[[755.1043816810987],[351.9473270461057],[4.33259313712303e-7],[\"idle\"],[0],[1]],[[755.1043816810987],[351.9473270461057],[4.33259313712303e-7],[\"idle\"],[0],[1]],[[755.1043816810987],[351.9473270461057],[4.33259313712303e-7],[\"idle\"],[0],[1]],[[755.1043816810987],[351.9473270461057],[4.33259313712303e-7],[\"idle\"],[0],[1]],[[755.1043816810987],[351.9473270461057],[4.33259313712303e-7],[\"idle\"],[0],[1]],[[755.1043816810987],[351.9473270461057],[4.33259313712303e-7],[\"idle\"],[0],[1]],[[755.1043816810987],[351.9473270461057],[4.33259313712303e-7],[\"idle\"],[0],[1]],[[755.1043816810987],[351.9473270461057],[4.33259313712303e-7],[\"idle\"],[0],[1]],[[755.1043816810987],[351.9473270461057],[4.33259313712303e-7],[\"idle\"],[0],[1]],[[755.1043816810987],[351.9473270461057],[4.33259313712303e-7],[\"idle\"],[0],[1]],[[755.1043816810987],[351.9473270461057],[4.33259313712303e-7],[\"idle\"],[0],[1]],[[755.1043816810987],[351.9473270461057],[4.33259313712303e-7],[\"idle\"],[0],[1]]]}"],[0]],[],[1,"Default",0,1]],[[32.00000762939453,-2,0,395,9,0,1.570796370506287,1,0,0,0,0,[]],51,134,[],[[0],[1],[1,100,""]],[0,0]],[[840,290,0,99,9,0,1.570796370506287,1,0,0,0,0,[]],51,135,[],[[0],[1],[1,100,""]],[0,0]],[[746,223,0,231,64,0,0,1,0,0,0,0,[]],46,136,[[1],[1],[""],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Be careful not to hit your head...",1,0,50,0,0,0,0,0,"",-1,0]],[[-79.19999694824219,-68.59999847412109,0,4,8,0,0,1,1,0,0,0,[]],38,2654,[[0],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","rightarm",3,1,0,0,1,2]],[0,"Default",0,1]],[[-79.19999694824219,-60.59999847412109,0,4,8,0,0,1,1,0,0,0,[]],40,2655,[[1],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","righthand",3,1,0,0,1,2]],[0,"Default",0,1]],[[-83.19999694824219,-63.59999847412109,0,8,16,0,0,1,0.5,0.5,0,0,[]],32,2656,[[2],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","body",3,1,0,0,1,2]],[0,"Default",0,1]],[[-83.19999694824219,-47.59999847412109,0,4,8,0,0,1,0,0,0,0,[]],39,2657,[[4],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","rightfoot",3,1,0,0,1,2]],[0,"Default",0,1]],[[-83.19999694824219,-55.59999847412109,0,4,8,0,0,1,0,0,0,0,[]],41,2658,[[3],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","rightleg",3,1,0,0,1,2]],[0,"Default",0,1]],[[-87.19999694824219,-47.59999847412109,0,4,8,0,0,1,0,0,0,0,[]],35,2659,[[6],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","leftfoot",3,1,0,0,1,2]],[0,"Default",0,1]],[[-87.19999694824219,-55.59999847412109,0,4,8,0,0,1,0,0,0,0,[]],37,2660,[[5],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","leftleg",3,1,0,0,1,2]],[0,"Default",0,1]],[[-83.19999694824219,-71.59999847412109,0,32,32,0,0,1,0.5,1,0,0,[]],33,2661,[[7],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","head",3,1,0,0,1,2]],[0,"Default",0,1]],[[-87.19999694824219,-68.59999847412109,0,4,8,0,0,1,1,0,0,0,[]],34,2662,[[8],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","leftarm",3,1,0,0,1,2]],[0,"Default",0,1]],[[-87.19999694824219,-60.59999847412109,0,4,8,0,0,1,1,0,0,0,[]],36,2663,[[9],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","lefthand",3,1,0,0,1,2]],[0,"Default",0,1]],[[511,182,0,288,117,0,0,1,0,0,0,0,[[]]],61,5599,[],[[1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>","1",7,0,50,0,0,0,0,0,"",-1,0]]],[]],["UI",1,532980148800326,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[240,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3097,[["right"]],[[0,1,0,1,1]],[0,"Default",0,1]],[[80,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3098,[["left"]],[[0,1,0,1,1]],[0,"Default",1,1]],[[560,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3099,[["up"]],[[1,1,1,1,1]],[0,"Default",3,1]],[[400,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3100,[["down"]],[[1,1,1,1,1]],[0,"Default",2,1]]],[]],["End Card",2,343269707726144,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],78,2607,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[12.04449462890625,194,0,615.9109497070313,67,0,0,1,0,0,0,0,[]],79,2608,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Timer for this level",2.5,0,0,0,0,0,-10,0,"",-1,0]],[[17.546875,248,0,604.90625,105,0,0,1,0,0,0,0,[]],80,2610,[[0],[0],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","13:40:40",4,0,63,50,0,0,-10,0,"",-1,0]],[[115.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,2611,[[0],[1],[0],[0],["replay"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Replay",""],[""],[2,2,0,0,0],["",""]],[0,"Replay",0,1]],[[524.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3086,[[0],[1],[0],[0],["next"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Next",""],[""],[2,2,0,0,0],["",""]],[0,"Next",0,1]],[[320.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3087,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > Back","Level Menu"],[""],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[320.75,521.8050537109375,0,384,96,0,0,1,0.5,0.5,0,0,[]],70,3088,[[1],[1],[0],[0],[""],["{\"size\": 22, \"left\": 70, \"right\": 18, \"alignY\": 60}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > DownloadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"DownloadReplay",0,1]]],[]],["Pause",3,884546816880089,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-310,678,0,274,31,0,0,1,0,0,0,0,[]],168,3089,[],[],[".ovo",0,1,"file"]],[[320,320,0,425,250,0,0,1,0.5,0.5,0,0,[]],82,3090,[],[[6,1,"",300,1,1,"",300,"overlay",1,"PauseClose",1,1]],[0,"Default",0,1]],[[214,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3091,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"",""],["PauseClose"],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[426,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3092,[[0],[1],[0],[0],["quit"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > GiveUp",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[115.5,202,0,409,118,0,0,1,0,0,0,0,[]],83,3093,[[1],[1],["pause"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Pause",4,0,57,50,0,0,-10,0,"",-1,0]],[[320.5,88,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3094,[[1],[1],[0],[0],["loadreplay"],["{\"size\": 16, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > LoadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"LoadReplay",0,1]],[[320.5,157,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3095,[[1],[0],[0],[0],["toggledebug"],["{\"size\": 15, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Debug > Toggle",""],[""],[2,2,0,0,0],["",""]],[0,"ToggleDebug",0,1]],[[78,448,0,484,134,0,0,1,0,0,0,0,[]],193,3096,[],[],[0,"Default",0,1]]],[]],["Overlay",4,536417279914463,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[432,4,0,203.0009155273438,64,0,0,1,0,0,0,0,[]],107,5488,[],[[1,0,1,0,1]],[2,2,2,2,0,1,0,0,1]],[[432,4,0,203,64,0,0,1,0,0,0,0,[]],84,3101,[[0],[0],[""],["en-us"],[0],[1],[1],["{\"alignY\": 85, \"alignX\": 45, \"size\": 28}"],[0],[1],[0],[0],[0]],[["",""],[1,0,1,0,1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",2,0,100,50,0,0,-10,0,"",-1,0]],[[88,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3102,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Pause",""],[""],[0,0,0,0,1],["",""]],[0,"Pause",0,1]],[[158,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3103,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Replay","1"],[""],[0,0,0,0,1],["",""]],[0,"Reload",0,1]]],[]],["End Game",5,581523160918611,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],85,3104,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[73,194,0,494,72,0,0,1,0,0,0,0,[]],86,3105,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],["{alignY:50}"],[0],[1],[0],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Your final time",2.5,0,50,50,0,0,-10,0,"",-1,0]],[[320,403,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3106,[[0],[1],[0],[0],[""],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Quit",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[73,243,0,494,85,0,0,1,0,0,0,0,[]],87,3108,[[0],[1],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",3,0,50,50,0,0,-10,0,"",-1,0]],[[73,318,0,494,25,0,0,1,0,0,0,0,[]],86,5480,[[1],[1],["tryagainhardmode"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Try again in hard mode!",1,0,50,50,0,0,-2,0,"",-1,0]]],[]]],[],[]],["Level 10 Old",1180,640,true,"Levels",818277003168731,[["Layer 0",0,870156324806537,true,[255,255,255],false,1,1,1,false,false,1,0,0,[[[32,384,0,750,9,0,0,1,0,0,0,0,[]],51,220,[],[[0],[1],[1,100,""]],[0,0]],[[96,256,0,32,64,0,0,1,0.5,0.5,0,0,[]],42,231,[["run"],[0],[1],[1],[0],[0.8],[0.5],[0],[1],[0],[0],[0],[""],[2],[0],[0],[0],[""],[0],[3],[0],[0],[0],[0],[0],[0],[0]],[[330,1500,1500,650,1500,1000,0,0,0,1],[],[0,0],[0,10000,360,1]],[1,"Default",0,1]],[[952,288,0,97,199,0,0,1,0.5257731676101685,0.4974874258041382,0,0,[]],44,232,[],[[0]],[0,"Default",0,1]],[[341,222,0,231,64,0,0,1,0,0,0,0,[]],46,233,[[1],[1],[""],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Try to do a smash while going right to dive",1,0,50,0,0,0,0,0,"",-1,0]],[[289,340,0,46,9,0,1.570796370506287,1,0,0,0,0,[]],51,234,[],[[0],[1],[1,100,""]],[0,0]],[[778,384,0,355,9,0,0,1,0,0,0,0,[]],51,235,[],[[0],[1],[1,100,""]],[0,0]],[[366,369,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,251,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[397,369,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,252,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[430,369,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,253,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[462,369,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,254,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[494,369,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,255,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[527,369,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,256,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[559,369,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,257,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[591,369,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,258,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[623,369,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,259,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[647,340,0,46,9,0,1.570796370506287,1,0,0,0,0,[]],51,260,[],[[0],[1],[1,100,""]],[0,0]],[[334,369,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,250,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[303,369,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,261,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[287,349,0,45.73793029785156,9,0,3.141592741012573,1,0,0,0,0,[]],51,262,[],[[0],[1],[1,100,""]],[0,0]],[[684.4901733398438,349,0,46.490234375,9,0,3.141592741012573,1,0,0,0,0,[]],51,263,[],[[0],[1],[1,100,""]],[0,0]],[[-94,45,0,60.93439102172852,60.93439102172852,0,0,1,0.5,0.5,0,0,[]],53,1412,[["Hella harder"],["{\"c2array\":true,\"size\":[145,6,1],\"data\":[[[259.4772692148135],[307.94611331782755],[0.000004045703814851849],[\"idle\"],[0],[1]],[[259.4772692148135],[307.94611331782755],[0.000004045703814851849],[\"idle\"],[0],[1]],[[259.4772692148135],[307.94611331782755],[0.000004045703814851849],[\"idle\"],[0],[1]],[[259.4772692148135],[307.94611331782755],[0.000004045703814851849],[\"idle\"],[0],[1]],[[259.4772692148135],[307.94611331782755],[0.000004045703814851849],[\"idle\"],[0],[1]],[[259.4772692148135],[307.94611331782755],[0.000004045703814851849],[\"idle\"],[0],[1]],[[259.4772692148135],[307.94611331782755],[0.000004045703814851849],[\"idle\"],[0],[1]],[[259.4772692148135],[307.94611331782755],[0.000004045703814851849],[\"idle\"],[0],[1]],[[259.4772692148135],[307.94611331782755],[0.000004045703814851849],[\"idle\"],[0],[1]],[[259.4772692148135],[307.94611331782755],[0.000004045703814851849],[\"idle\"],[0],[1]],[[259.4772692148135],[307.94611331782755],[0.000004045703814851849],[\"idle\"],[0],[1]],[[259.4772692148135],[307.94611331782755],[0.000004045703814851849],[\"idle\"],[0],[1]],[[259.4772692148135],[307.94611331782755],[0.000004045703814851849],[\"idle\"],[0],[1]],[[259.4772692148135],[307.94611331782755],[0.000004045703814851849],[\"idle\"],[0],[1]],[[259.4772692148135],[307.94611331782755],[0.000004045703814851849],[\"idle\"],[0],[1]],[[259.4772692148135],[307.94611331782755],[0.000004045703814851849],[\"idle\"],[0],[1]],[[259.4772692148135],[307.94611331782755],[0.000004045703814851849],[\"idle\"],[0],[1]],[[259.4772692148135],[307.94611331782755],[0.000004045703814851849],[\"idle\"],[0],[1]],[[259.4772692148135],[307.94611331782755],[0.000004045703814851849],[\"idle\"],[0],[1]],[[259.4772692148135],[307.94611331782755],[0.000004045703814851849],[\"idle\"],[0],[1]],[[259.4772692148135],[307.94611331782755],[0.000004045703814851849],[\"idle\"],[0],[1]],[[259.4772692148135],[307.94611331782755],[0.000004045703814851849],[\"idle\"],[0],[1]],[[259.4772692148135],[307.94611331782755],[0.000004045703814851849],[\"idle\"],[0],[1]],[[259.4772692148135],[307.94611331782755],[0.000004045703814851849],[\"idle\"],[0],[1]],[[259.4772692148135],[307.94611331782755],[0.000004045703814851849],[\"idle\"],[0],[1]],[[259.4772692148135],[307.94611331782755],[0.000004045703814851849],[\"idle\"],[0],[1]],[[259.4772692148135],[307.94611331782755],[0.000004045703814851849],[\"idle\"],[0],[1]],[[259.4772692148135],[307.94611331782755],[0.000004045703814851849],[\"idle\"],[0],[1]],[[259.4772692148135],[307.94611331782755],[0.000004045703814851849],[\"idle\"],[0],[1]],[[259.4772692148135],[307.94611331782755],[0.000004045703814851849],[\"idle\"],[0],[1]],[[259.4772692148135],[307.94611331782755],[0.000004045703814851849],[\"idle\"],[0],[1]],[[259.4772692148135],[307.94611331782755],[0.000004045703814851849],[\"idle\"],[0],[1]],[[259.4772692148135],[307.94611331782755],[0.000004045703814851849],[\"idle\"],[0],[1]],[[259.4772692148135],[307.94611331782755],[0.000004045703814851849],[\"idle\"],[0],[1]],[[259.4772692148135],[307.94611331782755],[0.000004045703814851849],[\"idle\"],[0],[1]],[[259.4772692148135],[307.94611331782755],[0.000004045703814851849],[\"idle\"],[0],[1]],[[259.89090806832195],[307.94611331782755],[0.000004045703814851849],[\"run\"],[0],[1]],[[260.7229744489593],[307.94611331782755],[0.000004045703814851849],[\"run\"],[0],[1]],[[261.97387325795455],[307.94611331782755],[0.000004045703814851849],[\"run\"],[0],[1]],[[263.63735806810075],[307.94611331782755],[0.000004045703814851849],[\"run\"],[0],[1]],[[265.7065425113806],[307.94611331782755],[0.000004045703814851849],[\"run\"],[0],[1]],[[268.1924856190016],[297.15221332424073],[0.000004045703814851849],[\"jump\"],[0],[1]],[[271.1016479753744],[286.74314689441053],[0.000004045703814851849],[\"jump\"],[0],[1]],[[274.4106772725933],[276.7915259329192],[0.000004045703814851849],[\"jump\"],[0],[1]],[[278.1456173181043],[267.2226318124632],[0.000004045703814851849],[\"jump\"],[0],[1]],[[282.31600721225067],[258.0300096445198],[0.000004045703814851849],[\"jump\"],[0],[1]],[[292.3018238790877],[241.35910964449334],[0.000004045703814851849],[\"jump\"],[0],[1]],[[297.6853056791536],[233.4739441565045],[0.000004045703814851849],[\"jump\"],[0],[1]],[[303.22435568388966],[225.91966187289202],[0.000004045703814851849],[\"plunge\"],[1],[1]],[[307.0478676807491],[218.88119698667757],[0.000004045703814851849],[\"plunge\"],[1],[1]],[[314.7129096906522],[212.23903990163376],[0.000004045703814851849],[\"plunge\"],[1],[1]],[[322.42091767812445],[205.97718434767327],[0.000004045703814851849],[\"plunge\"],[1],[1]],[[330.0882696787251],[200.1614978551129],[0.000004045703814851849],[\"plunge\"],[1],[1]],[[337.77825969035104],[194.74422446994618],[0.000004045703814851849],[\"plunge\"],[1],[1]],[[345.48534368423344],[189.73234278111747],[0.0000028432325493672747],[\"plunge\"],[1],[1]],[[353.1734856817878],[185.14816330763617],[0.000001995046718324358],[\"plunge\"],[1],[1]],[[360.86717168121896],[180.97666174647432],[0.0000014227875828357024],[\"plunge\"],[1],[1]],[[368.54976969034243],[177.22595753454243],[9.8015639465682e-7],[\"plunge\"],[1],[1]],[[376.21342568969186],[173.89724357531094],[7.252332442860745e-7],[\"plunge\"],[1],[1]],[[383.9339076780255],[170.96273349110183],[4.684198394289566e-7],[\"plunge\"],[1],[1]],[[391.61234768237983],[168.45853991977404],[4.684198394289566e-7],[\"plunge\"],[1],[1]],[[399.3143496779033],[166.36354536384198],[4.684198394289566e-7],[\"plunge\"],[1],[1]],[[406.98678369030887],[164.69028216615624],[4.684198394289566e-7],[\"plunge\"],[1],[1]],[[414.709575682786],[163.4251734975035],[4.684198394289566e-7],[\"plunge\"],[1],[1]],[[422.36306768541755],[162.58306573646934],[4.684198394289566e-7],[\"plunge\"],[1],[1]],[[430.05028568938206],[162.152531611718],[4.684198394289566e-7],[\"plunge\"],[1],[1]],[[437.7712296812336],[162.13904502776285],[4.684198394289566e-7],[\"plunge\"],[1],[1]],[[445.4663016777725],[162.5417371394251],[4.684198394289566e-7],[\"plunge\"],[1],[1]],[[453.1050096888451],[163.35153939303783],[4.684198394289566e-7],[\"plunge\"],[1],[1]],[[460.7977716812405],[164.5829557713514],[4.684198394289566e-7],[\"plunge\"],[1],[1]],[[468.50162167738955],[166.23323049534892],[4.684198394289566e-7],[\"plunge\"],[1],[1]],[[476.2008516786976],[168.29909888809323],[4.684198394289566e-7],[\"plunge\"],[1],[1]],[[483.9010056870414],[170.7818985461284],[4.684198394289566e-7],[\"plunge\"],[1],[1]],[[491.56558567998064],[173.66607004343436],[4.684198394289566e-7],[\"plunge\"],[1],[1]],[[499.2370956853504],[176.96643833349688],[4.684198394289566e-7],[\"plunge\"],[1],[1]],[[506.92292767876125],[180.6881028442032],[4.684198394289566e-7],[\"plunge\"],[1],[1]],[[514.6175376852282],[184.8301014179309],[4.684198394289566e-7],[\"plunge\"],[1],[1]],[[522.3333996787208],[189.40192500946947],[4.684198394289566e-7],[\"plunge\"],[1],[1]],[[530.0012136828393],[194.3584696892487],[4.684198394289566e-7],[\"plunge\"],[1],[1]],[[537.7129176850087],[199.7613195590038],[4.684198394289566e-7],[\"plunge\"],[1],[1]],[[545.3996736854554],[205.56192532759937],[4.684198394289566e-7],[\"plunge\"],[1],[1]],[[553.0850436887943],[211.77657002823815],[4.684198394289566e-7],[\"plunge\"],[1],[1]],[[560.7736476898665],[218.4092640926601],[4.684198394289566e-7],[\"plunge\"],[1],[1]],[[568.4761116889078],[225.47084807622718],[4.684198394289566e-7],[\"plunge\"],[1],[1]],[[576.1175916807499],[232.88687959831427],[4.684198394289566e-7],[\"plunge\"],[1],[1]],[[583.8126636772888],[240.77105549058533],[4.684198394289566e-7],[\"plunge\"],[1],[1]],[[591.5017296818789],[249.06456196960167],[4.684198394289566e-7],[\"plunge\"],[1],[1]],[[599.1773976785719],[257.7576547117431],[4.684198394289566e-7],[\"plunge\"],[1],[1]],[[606.8660016796441],[266.88083239696005],[4.684198394289566e-7],[\"plunge\"],[1],[1]],[[614.5818636865827],[276.4547391093901],[4.684198394289566e-7],[\"plunge\"],[1],[1]],[[622.275087682496],[286.4164900421971],[4.684198394289566e-7],[\"plunge\"],[1],[1]],[[629.9271936880198],[296.7364978380421],[4.684198394289566e-7],[\"plunge\"],[1],[1]],[[637.625499682292],[307.53529657159527],[4.684198394289566e-7],[\"plunge\"],[1],[1]],[[645.3044016901642],[307.97279657159527],[0.0000018200299003771192],[\"plunge\"],[1],[1]],[[650.8025316810474],[307.97279657159527],[0.0000027780625979236453],[\"plunge\"],[1],[1]],[[656.0141715217901],[307.97279657159527],[0.0000034542742250376037],[\"plunge\"],[1],[1]],[[660.9481007569582],[307.97279657159527],[0.0000038968521767551155],[\"plunge\"],[1],[1]],[[665.6126863104666],[307.97279657159527],[0.000004152789610337346],[\"plunge\"],[1],[1]],[[669.980908157718],[307.97279657159527],[0.000004407543713580722],[\"plunge\"],[1],[1]],[[674.0913740136136],[307.97279657159527],[0.000004407543713580722],[\"plunge\"],[1],[1]],[[677.950196637727],[307.97279657159527],[0.000004407543713580722],[\"plunge\"],[1],[1]],[[681.4844640711083],[307.97279657159527],[0.000004407543713580722],[\"plunge\"],[1],[1]],[[684.7696770339918],[307.97279657159527],[0.0000030748589047056792],[\"plunge\"],[1],[1]],[[687.7639376993027],[307.97279657159527],[0.0000021543351693850233],[\"plunge\"],[1],[1]],[[690.4835296109001],[307.97279657159527],[0.0000015286236447818759],[\"plunge\"],[1],[1]],[[692.9419400954171],[307.97279657159527],[0.0000010830910926988953],[\"plunge\"],[1],[1]],[[695.099518017288],[307.97279657159527],[7.232707886079867e-7],[\"plunge\"],[1],[1]],[[696.9873671341313],[307.97279657159527],[4.681478554718339e-7],[\"plunge\"],[1],[1]],[[698.6062187240029],[307.97279657159527],[4.681478554718339e-7],[\"plunge\"],[1],[1]],[[699.9436255915729],[307.97279657159527],[4.681478554718339e-7],[\"plunge\"],[1],[1]],[[701.001416350853],[307.97279657159527],[4.681478554718339e-7],[\"plunge\"],[1],[1]],[[704.8584233472865],[308.39098128432187],[4.681478554718339e-7],[\"plunge\"],[1],[1]],[[712.5539573473433],[309.22434765094533],[4.681478554718339e-7],[\"plunge\"],[1],[1]],[[720.2250053491952],[310.4686015989641],[4.681478554718339e-7],[\"plunge\"],[1],[1]],[[727.9302413558979],[312.1356344124943],[4.681478554718339e-7],[\"plunge\"],[1],[1]],[[735.6400973574417],[314.2214007810757],[4.681478554718339e-7],[\"plunge\"],[1],[1]],[[743.304677350381],[316.7077606685677],[4.681478554718339e-7],[\"plunge\"],[1],[1]],[[751.018229353176],[319.6281415095585],[4.681478554718339e-7],[\"plunge\"],[1],[1]],[[758.6703353586998],[322.93675811067703],[4.681478554718339e-7],[\"plunge\"],[1],[1]],[[766.364021358131],[326.679336677601],[4.681478554718339e-7],[\"plunge\"],[1],[1]],[[774.0563213470085],[330.83707477118855],[4.681478554718339e-7],[\"plunge\"],[1],[1]],[[781.724597354645],[335.39506815373977],[4.681478554718339e-7],[\"plunge\"],[1],[1]],[[789.4298333479018],[340.39226393301357],[4.681478554718339e-7],[\"plunge\"],[1],[1]],[[797.1364553517122],[345.8077422450446],[4.681478554718339e-7],[\"plunge\"],[1],[1]],[[804.798725353954],[351.6046475417155],[4.681478554718339e-7],[\"plunge\"],[1],[1]],[[812.4840953572929],[351.9796475417155],[4.681478554718339e-7],[\"plunge\"],[1],[1]],[[817.9752953530332],[351.9796475417155],[4.681478554718339e-7],[\"plunge\"],[1],[1]],[[823.1780321550809],[351.9796475417155],[4.681478554718339e-7],[\"plunge\"],[1],[1]],[[828.1284252154661],[351.9796475417155],[4.681478554718339e-7],[\"plunge\"],[1],[1]],[[832.7954584660075],[351.9796475417155],[4.681478554718339e-7],[\"plunge\"],[1],[1]],[[837.1711968636558],[351.9796475417155],[4.681478554718339e-7],[\"plunge\"],[1],[1]],[[841.2719640258987],[351.9796475417155],[4.681478554718339e-7],[\"plunge\"],[1],[1]],[[845.1259503546189],[351.9796475417155],[4.681478554718339e-7],[\"plunge\"],[1],[1]],[[848.6674696038316],[351.9796475417155],[4.681478554718339e-7],[\"plunge\"],[1],[1]],[[851.9392022772591],[351.9796475417155],[4.681478554718339e-7],[\"plunge\"],[1],[1]],[[854.9491353977388],[351.9796475417155],[4.681478554718339e-7],[\"plunge\"],[1],[1]],[[857.6684923996694],[351.9796475417155],[4.681478554718339e-7],[\"plunge\"],[1],[1]],[[860.0962006308249],[351.9796475417155],[4.681478554718339e-7],[\"plunge\"],[1],[1]],[[862.2660317569807],[351.9796475417155],[4.681478554718339e-7],[\"plunge\"],[1],[1]],[[864.1664402901315],[351.9796475417155],[4.681478554718339e-7],[\"plunge\"],[1],[1]],[[865.7796278178648],[351.9796475417155],[4.681478554718339e-7],[\"plunge\"],[1],[1]],[[867.1161363496147],[351.9796475417155],[4.681478554718339e-7],[\"plunge\"],[1],[1]],[[868.1780034427285],[351.9796475417155],[4.681478554718339e-7],[\"plunge\"],[1],[1]],[[868.9609822334627],[351.9796475417155],[4.681478554718339e-7],[\"plunge\"],[1],[1]],[[869.4689556430053],[351.9796475417155],[4.681478554718339e-7],[\"plunge\"],[1],[1]]]}"],[0]],[],[1,"Default",0,1]],[[36.00001525878906,2,0,391,9,0,1.570796370506287,1,0,0,0,0,[]],51,175,[],[[0],[1],[1,100,""]],[0,0]],[[-72.19999694824219,-86.59999847412109,0,4,8,0,0,1,1,0,0,0,[]],38,221,[[0],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","rightarm",3,1,0,0,1,2]],[0,"Default",0,1]],[[-72.19999694824219,-78.59999847412109,0,4,8,0,0,1,1,0,0,0,[]],40,222,[[1],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","righthand",3,1,0,0,1,2]],[0,"Default",0,1]],[[-76.19999694824219,-81.59999847412109,0,8,16,0,0,1,0.5,0.5,0,0,[]],32,223,[[2],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","body",3,1,0,0,1,2]],[0,"Default",0,1]],[[-76.19999694824219,-65.59999847412109,0,4,8,0,0,1,0,0,0,0,[]],39,224,[[4],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","rightfoot",3,1,0,0,1,2]],[0,"Default",0,1]],[[-76.19999694824219,-73.59999847412109,0,4,8,0,0,1,0,0,0,0,[]],41,225,[[3],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","rightleg",3,1,0,0,1,2]],[0,"Default",0,1]],[[-80.19999694824219,-65.59999847412109,0,4,8,0,0,1,0,0,0,0,[]],35,226,[[6],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","leftfoot",3,1,0,0,1,2]],[0,"Default",0,1]],[[-80.19999694824219,-73.59999847412109,0,4,8,0,0,1,0,0,0,0,[]],37,227,[[5],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","leftleg",3,1,0,0,1,2]],[0,"Default",0,1]],[[-76.19999694824219,-89.59999847412109,0,32,32,0,0,1,0.5,1,0,0,[]],33,228,[[7],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","head",3,1,0,0,1,2]],[0,"Default",0,1]],[[-80.19999694824219,-86.59999847412109,0,4,8,0,0,1,1,0,0,0,[]],34,229,[[8],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","leftarm",3,1,0,0,1,2]],[0,"Default",0,1]],[[-80.19999694824219,-78.59999847412109,0,4,8,0,0,1,1,0,0,0,[]],36,230,[[9],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","lefthand",3,1,0,0,1,2]],[0,"Default",0,1]],[[11.49879455566406,170.5813598632813,0,288,117,0,0,1,0,0,0,0,[[]]],61,5601,[],[[1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>","1",7,0,50,0,0,0,0,0,"",-1,0]]],[]],["UI",1,731519991195752,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[240,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3097,[["right"]],[[0,1,0,1,1]],[0,"Default",0,1]],[[80,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3098,[["left"]],[[0,1,0,1,1]],[0,"Default",1,1]],[[560,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3099,[["up"]],[[1,1,1,1,1]],[0,"Default",3,1]],[[400,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3100,[["down"]],[[1,1,1,1,1]],[0,"Default",2,1]]],[]],["End Card",2,292744140923323,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],78,2607,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[12.04449462890625,194,0,615.9109497070313,67,0,0,1,0,0,0,0,[]],79,2608,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Timer for this level",2.5,0,0,0,0,0,-10,0,"",-1,0]],[[17.546875,248,0,604.90625,105,0,0,1,0,0,0,0,[]],80,2610,[[0],[0],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","13:40:40",4,0,63,50,0,0,-10,0,"",-1,0]],[[115.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,2611,[[0],[1],[0],[0],["replay"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Replay",""],[""],[2,2,0,0,0],["",""]],[0,"Replay",0,1]],[[524.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3086,[[0],[1],[0],[0],["next"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Next",""],[""],[2,2,0,0,0],["",""]],[0,"Next",0,1]],[[320.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3087,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > Back","Level Menu"],[""],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[320.75,521.8050537109375,0,384,96,0,0,1,0.5,0.5,0,0,[]],70,3088,[[1],[1],[0],[0],[""],["{\"size\": 22, \"left\": 70, \"right\": 18, \"alignY\": 60}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > DownloadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"DownloadReplay",0,1]]],[]],["Pause",3,994659724842613,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-310,678,0,274,31,0,0,1,0,0,0,0,[]],168,3089,[],[],[".ovo",0,1,"file"]],[[320,320,0,425,250,0,0,1,0.5,0.5,0,0,[]],82,3090,[],[[6,1,"",300,1,1,"",300,"overlay",1,"PauseClose",1,1]],[0,"Default",0,1]],[[214,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3091,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"",""],["PauseClose"],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[426,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3092,[[0],[1],[0],[0],["quit"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > GiveUp",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[115.5,202,0,409,118,0,0,1,0,0,0,0,[]],83,3093,[[1],[1],["pause"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Pause",4,0,57,50,0,0,-10,0,"",-1,0]],[[320.5,88,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3094,[[1],[1],[0],[0],["loadreplay"],["{\"size\": 16, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > LoadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"LoadReplay",0,1]],[[320.5,157,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3095,[[1],[0],[0],[0],["toggledebug"],["{\"size\": 15, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Debug > Toggle",""],[""],[2,2,0,0,0],["",""]],[0,"ToggleDebug",0,1]],[[78,448,0,484,134,0,0,1,0,0,0,0,[]],193,3096,[],[],[0,"Default",0,1]]],[]],["Overlay",4,784353895593967,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[432,4,0,203.0009155273438,64,0,0,1,0,0,0,0,[]],107,5488,[],[[1,0,1,0,1]],[2,2,2,2,0,1,0,0,1]],[[432,4,0,203,64,0,0,1,0,0,0,0,[]],84,3101,[[0],[0],[""],["en-us"],[0],[1],[1],["{\"alignY\": 85, \"alignX\": 45, \"size\": 28}"],[0],[1],[0],[0],[0]],[["",""],[1,0,1,0,1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",2,0,100,50,0,0,-10,0,"",-1,0]],[[88,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3102,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Pause",""],[""],[0,0,0,0,1],["",""]],[0,"Pause",0,1]],[[158,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3103,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Replay","1"],[""],[0,0,0,0,1],["",""]],[0,"Reload",0,1]]],[]],["End Game",5,133987850553526,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],85,3104,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[73,194,0,494,72,0,0,1,0,0,0,0,[]],86,3105,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],["{alignY:50}"],[0],[1],[0],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Your final time",2.5,0,50,50,0,0,-10,0,"",-1,0]],[[320,403,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3106,[[0],[1],[0],[0],[""],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Quit",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[73,243,0,494,85,0,0,1,0,0,0,0,[]],87,3108,[[0],[1],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",3,0,50,50,0,0,-10,0,"",-1,0]],[[73,318,0,494,25,0,0,1,0,0,0,0,[]],86,5480,[[1],[1],["tryagainhardmode"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Try again in hard mode!",1,0,50,50,0,0,-2,0,"",-1,0]]],[]]],[],[]],["Level 12 Old",750,640,true,"Levels",884797927610262,[["Layer 0",0,493456400767656,true,[255,255,255],false,1,1,1,false,false,1,0,0,[[[32,529,0,307,9,0,0,1,0,0,0,0,[]],51,278,[],[[0],[1],[1,100,""]],[0,0]],[[-37,166,0,4,8,0,0,1,1,0,0,0,[]],38,296,[[0],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","rightarm",3,1,0,0,1,2]],[0,"Default",0,1]],[[-37,174,0,4,8,0,0,1,1,0,0,0,[]],40,297,[[1],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","righthand",3,1,0,0,1,2]],[0,"Default",0,1]],[[-41,171,0,8,16,0,0,1,0.5,0.5,0,0,[]],32,298,[[2],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","body",3,1,0,0,1,2]],[0,"Default",0,1]],[[-41,187,0,4,8,0,0,1,0,0,0,0,[]],39,299,[[4],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","rightfoot",3,1,0,0,1,2]],[0,"Default",0,1]],[[-41,179,0,4,8,0,0,1,0,0,0,0,[]],41,300,[[3],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","rightleg",3,1,0,0,1,2]],[0,"Default",0,1]],[[-45,187,0,4,8,0,0,1,0,0,0,0,[]],35,301,[[6],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","leftfoot",3,1,0,0,1,2]],[0,"Default",0,1]],[[-45,179,0,4,8,0,0,1,0,0,0,0,[]],37,302,[[5],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","leftleg",3,1,0,0,1,2]],[0,"Default",0,1]],[[-41,163,0,32,32,0,0,1,0.5,1,0,0,[]],33,303,[[7],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","head",3,1,0,0,1,2]],[0,"Default",0,1]],[[-45,166,0,4,8,0,0,1,1,0,0,0,[]],34,304,[[8],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","leftarm",3,1,0,0,1,2]],[0,"Default",0,1]],[[-45,174,0,4,8,0,0,1,1,0,0,0,[]],36,305,[[9],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","lefthand",3,1,0,0,1,2]],[0,"Default",0,1]],[[92,440,0,32,64,0,0,1,0.5,0.5,0,0,[]],42,306,[["run"],[0],[1],[1],[0],[0.8],[0.5],[0],[1],[0],[0],[0],[""],[2],[0],[0],[0],[""],[0],[3],[0],[0],[0],[0],[0],[0],[0]],[[330,1500,1500,650,1500,1000,0,0,0,1],[],[0,0],[0,10000,360,1]],[1,"Default",0,1]],[[679,163,0,97,199,0,0,1,0.5257731676101685,0.4974874258041382,0,0,[]],44,307,[],[[0]],[0,"Default",0,1]],[[489,258,0,215,9,0,0,1,0,0,0,0,[]],51,308,[],[[0],[1],[1,100,""]],[0,0]],[[317,513,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,309,[[0.7],[0]],[[0]],[0,"Default",0,1]],[[-85,75,0,60.93439102172852,60.93439102172852,0,0,1,0.5,0.5,0,0,[]],53,1414,[["Needs hacks"],["{\"c2array\":true,\"size\":[163,6,1],\"data\":[[[213.2707718354626],[496.9951799265888],[0],[\"idle\"],[0],[1]],[[213.2707718354626],[496.9951799265888],[0],[\"idle\"],[0],[1]],[[213.2707718354626],[496.9951799265888],[0],[\"idle\"],[0],[1]],[[213.2707718354626],[496.9951799265888],[0],[\"idle\"],[0],[1]],[[213.2707718354626],[496.9951799265888],[0],[\"idle\"],[0],[1]],[[213.2707718354626],[496.9951799265888],[0],[\"idle\"],[0],[1]],[[213.2707718354626],[496.9951799265888],[0],[\"idle\"],[0],[1]],[[213.2707718354626],[496.9951799265888],[0],[\"idle\"],[0],[1]],[[213.2707718354626],[496.9951799265888],[0],[\"idle\"],[0],[1]],[[213.2707718354626],[496.9951799265888],[0],[\"idle\"],[0],[1]],[[213.2707718354626],[496.9951799265888],[0],[\"idle\"],[0],[1]],[[213.2707718354626],[496.9951799265888],[0],[\"idle\"],[0],[1]],[[213.2707718354626],[496.9951799265888],[0],[\"idle\"],[0],[1]],[[213.2707718354626],[496.9951799265888],[0],[\"idle\"],[0],[1]],[[213.2707718354626],[496.9951799265888],[0],[\"idle\"],[0],[1]],[[213.2707718354626],[496.9951799265888],[0],[\"idle\"],[0],[1]],[[213.2707718354626],[496.9951799265888],[0],[\"idle\"],[0],[1]],[[213.2707718354626],[496.9951799265888],[0],[\"idle\"],[0],[1]],[[213.2707718354626],[496.9951799265888],[0],[\"idle\"],[0],[1]],[[213.2707718354626],[496.9951799265888],[0],[\"idle\"],[0],[1]],[[213.2707718354626],[496.9951799265888],[0],[\"idle\"],[0],[1]],[[213.2707718354626],[496.9951799265888],[0],[\"idle\"],[0],[1]],[[213.2707718354626],[496.9951799265888],[0],[\"idle\"],[0],[1]],[[213.2707718354626],[496.9951799265888],[0],[\"idle\"],[0],[1]],[[213.2707718354626],[496.9951799265888],[0],[\"idle\"],[0],[1]],[[213.2707718354626],[496.9951799265888],[0],[\"idle\"],[0],[1]],[[213.2707718354626],[496.9951799265888],[0],[\"idle\"],[0],[1]],[[213.2707718354626],[496.9951799265888],[0],[\"idle\"],[0],[1]],[[213.2707718354626],[496.9951799265888],[0],[\"idle\"],[0],[1]],[[213.2707718354626],[496.9951799265888],[0],[\"idle\"],[0],[1]],[[213.2707718354626],[496.9951799265888],[0],[\"idle\"],[0],[1]],[[213.2707718354626],[496.9951799265888],[0],[\"idle\"],[0],[1]],[[213.2707718354626],[496.9951799265888],[0],[\"idle\"],[0],[1]],[[213.2707718354626],[496.9951799265888],[0],[\"idle\"],[0],[1]],[[213.2707718354626],[496.9951799265888],[0],[\"idle\"],[0],[1]],[[213.2707718354626],[496.9951799265888],[0],[\"idle\"],[0],[1]],[[213.68381309021802],[496.9951799265888],[0],[\"run\"],[0],[1]],[[214.51101602989112],[496.9951799265888],[0],[\"run\"],[0],[1]],[[215.75669328802365],[496.9951799265888],[0],[\"run\"],[0],[1]],[[217.4166330378792],[496.9951799265888],[0],[\"run\"],[0],[1]],[[219.49210678461017],[496.9951799265888],[0],[\"run\"],[0],[1]],[[221.979871757852],[496.9951799265888],[0],[\"run\"],[0],[1]],[[228.62202706643998],[496.9951799265888],[0],[\"run\"],[0],[1]],[[232.3592375360036],[496.9951799265888],[0],[\"run\"],[0],[1]],[[236.51417796573352],[496.9951799265888],[0],[\"run\"],[0],[1]],[[241.08595048736262],[496.9951799265888],[0],[\"run\"],[0],[1]],[[246.04688640343525],[496.9951799265888],[0],[\"run\"],[0],[1]],[[251.4330360155788],[496.9951799265888],[0],[\"run\"],[0],[1]],[[256.94700602142865],[496.9951799265888],[0],[\"run\"],[0],[1]],[[262.435896018788],[496.9951799265888],[0],[\"run\"],[0],[1]],[[267.92841602457946],[496.9951799265888],[0],[\"run\"],[0],[1]],[[273.4196160203198],[496.9951799265888],[0],[\"run\"],[0],[1]],[[278.9137860194666],[496.9951799265888],[0],[\"run\"],[0],[1]],[[284.40795601861345],[496.9951799265888],[0],[\"run\"],[0],[1]],[[289.918626018544],[496.9951799265888],[0],[\"run\"],[0],[1]],[[295.3830960220427],[496.9951799265888],[0],[\"run\"],[0],[1]],[[300.862746016274],[479.55992994494375],[0],[\"jump\"],[0],[1]],[[306.38925602156695],[462.39627294240836],[0],[\"jump\"],[0],[1]],[[311.8434960240035],[445.8668267356049],[0],[\"jump\"],[0],[1]],[[317.3581260156704],[429.57325082918015],[0],[\"jump\"],[0],[1]],[[322.86813602017963],[413.71150989299576],[0],[\"jump\"],[0],[1]],[[328.33821601837434],[398.3768616742149],[0],[\"jump\"],[0],[1]],[[333.8214960210377],[383.4193461673094],[0],[\"jump\"],[0],[1]],[[339.3130260192908],[368.8547103061707],[0],[\"jump\"],[0],[1]],[[344.82303602380006],[354.65924648662474],[0],[\"jump\"],[0],[1]],[[350.29344602450755],[340.97799973047574],[0],[\"jump\"],[0],[1]],[[355.78926601700977],[327.64923731271546],[0],[\"jump\"],[0],[1]],[[361.2827760207353],[314.74176111979955],[0],[\"jump\"],[0],[1]],[[366.7627560174794],[302.27971370029485],[0],[\"jump\"],[0],[1]],[[372.2816760226039],[290.1486508955119],[0],[\"jump\"],[0],[1]],[[377.7860760228129],[278.4668379155641],[0],[\"jump\"],[0],[1]],[[383.2429560165389],[267.2960340764275],[0],[\"jump\"],[0],[1]],[[388.73646602026446],[256.46592869138476],[0],[\"jump\"],[0],[1]],[[394.2520860194697],[246.011271551134],[0],[\"jump\"],[0],[1]],[[399.71952601677066],[236.05968578808404],[0],[\"jump\"],[0],[1]],[[405.2235960240711],[226.45871130844066],[0],[\"jump\"],[0],[1]],[[410.72436601584803],[217.28027652112922],[0],[\"jump\"],[0],[1]],[[416.18850601683397],[208.57421258360046],[0],[\"jump\"],[0],[1]],[[421.69323601955574],[200.22085986921903],[0],[\"jump\"],[0],[1]],[[427.18377601987476],[192.30427485603136],[0],[\"jump\"],[0],[1]],[[432.66210602326345],[184.81868473992847],[0],[\"jump\"],[0],[1]],[[438.1744260165494],[177.7051861246137],[0],[\"jump\"],[0],[1]],[[443.67123601658994],[171.02788620608834],[0],[\"jump\"],[0],[1]],[[449.14494602321673],[164.79134006906148],[0],[\"jump\"],[0],[1]],[[454.66947602303725],[158.91728310126697],[0],[\"jump\"],[0],[1]],[[460.14417601799386],[153.50905094137883],[0],[\"jump\"],[0],[1]],[[465.6126060228332],[148.51890971045682],[0],[\"jump\"],[0],[1]],[[471.0816960230938],[143.94016270325238],[0],[\"jump\"],[0],[1]],[[476.61843601984464],[139.7270307369971],[0],[\"jump\"],[0],[1]],[[482.08356601876466],[135.9797898289251],[0],[\"jump\"],[0],[1]],[[487.57905601835836],[132.6277157858307],[0],[\"jump\"],[0],[1]],[[493.06497602191547],[129.69601520035604],[0],[\"jump\"],[0],[1]],[[498.5611260169305],[127.17493119769236],[0],[\"jump\"],[0],[1]],[[504.07344601982066],[125.06496543685536],[0],[\"jump\"],[0],[1]],[[509.56167602175873],[123.37910591317466],[0],[\"jump\"],[0],[1]],[[514.5994229975508],[122.11469321362455],[0],[\"jump\"],[0],[1]],[[519.2684546360027],[121.25466236418482],[0],[\"jump\"],[0],[1]],[[523.5345037219327],[120.81087469543067],[0],[\"jump\"],[0],[1]],[[527.359360887446],[120.78381537662622],[0],[\"jump\"],[0],[1]],[[530.7663599417859],[121.16958427761881],[0],[\"fall\"],[0],[1]],[[533.7672550674233],[121.97128825682563],[0],[\"fall\"],[0],[1]],[[536.3629965977059],[123.19529319803061],[0],[\"fall\"],[0],[1]],[[538.5330994876095],[124.8298471054856],[0],[\"fall\"],[0],[1]],[[540.2872545913771],[126.87874837304419],[0],[\"fall\"],[0],[1]],[[541.6242058733344],[129.33593683255694],[0],[\"fall\"],[0],[1]],[[542.5499380250711],[132.2182909435227],[0],[\"fall\"],[0],[1]],[[543.0597861533068],[135.52681750063707],[0],[\"fall\"],[0],[1]],[[543.1524764516304],[139.2380980932953],[0],[\"fall\"],[0],[1]],[[543.1524764516304],[143.36379435020254],[0],[\"fall\"],[0],[1]],[[543.1524764516304],[147.89385233733992],[0],[\"fall\"],[0],[1]],[[543.1524764516304],[152.83526433277072],[0],[\"fall\"],[0],[1]],[[543.1524764516304],[158.22896349117102],[0],[\"fall\"],[0],[1]],[[543.1524764516304],[164.01706108159914],[0],[\"fall\"],[0],[1]],[[543.1524764516304],[170.21974749408284],[0],[\"fall\"],[0],[1]],[[543.1524764516304],[176.83687300490698],[0],[\"fall\"],[0],[1]],[[543.1524764516304],[183.86112602168558],[0],[\"fall\"],[0],[1]],[[543.1524764516304],[191.3176237432571],[0],[\"fall\"],[0],[1]],[[543.1524764516304],[199.16841254740314],[0],[\"fall\"],[0],[1]],[[543.1524764516304],[207.4661066554014],[0],[\"fall\"],[0],[1]],[[543.1524764516304],[216.19681620128614],[0],[\"fall\"],[0],[1]],[[543.1524764516304],[225.28427119842746],[0],[\"fall\"],[0],[1]],[[543.1524764516304],[225.97177119842746],[0],[\"idle\"],[0],[1]],[[543.1524764516304],[225.97177119842746],[0],[\"idle\"],[0],[1]],[[543.1524764516304],[225.97177119842746],[0],[\"idle\"],[0],[1]],[[543.1524764516304],[225.97177119842746],[0],[\"idle\"],[0],[1]],[[543.1524764516304],[225.97177119842746],[0],[\"idle\"],[0],[1]],[[543.1524764516304],[225.97177119842746],[0],[\"idle\"],[0],[1]],[[543.1524764516304],[225.97177119842746],[0],[\"idle\"],[0],[1]],[[543.1524764516304],[225.97177119842746],[0],[\"idle\"],[0],[1]],[[543.1524764516304],[225.97177119842746],[0],[\"idle\"],[0],[1]],[[543.1524764516304],[225.97177119842746],[0],[\"idle\"],[0],[1]],[[543.1524764516304],[225.97177119842746],[0],[\"idle\"],[0],[1]],[[543.1524764516304],[225.97177119842746],[0],[\"idle\"],[0],[1]],[[543.1524764516304],[225.97177119842746],[0],[\"idle\"],[0],[1]],[[543.1524764516304],[225.97177119842746],[0],[\"idle\"],[0],[1]],[[543.1524764516304],[225.97177119842746],[0],[\"idle\"],[0],[1]],[[543.1524764516304],[225.97177119842746],[0],[\"idle\"],[0],[1]],[[543.1524764516304],[225.97177119842746],[0],[\"idle\"],[0],[1]],[[543.1524764516304],[225.97177119842746],[0],[\"idle\"],[0],[1]],[[543.1524764516304],[225.97177119842746],[0],[\"idle\"],[0],[1]],[[543.1524764516304],[225.97177119842746],[0],[\"idle\"],[0],[1]],[[543.1524764516304],[225.97177119842746],[0],[\"idle\"],[0],[1]],[[543.1524764516304],[225.97177119842746],[0],[\"idle\"],[0],[1]],[[543.1524764516304],[225.97177119842746],[0],[\"idle\"],[0],[1]],[[543.1524764516304],[225.97177119842746],[0],[\"idle\"],[0],[1]],[[543.1524764516304],[225.97177119842746],[0],[\"idle\"],[0],[1]],[[543.1524764516304],[225.97177119842746],[0],[\"idle\"],[0],[1]],[[543.1524764516304],[225.97177119842746],[0],[\"idle\"],[0],[1]],[[543.1524764516304],[225.97177119842746],[0],[\"idle\"],[0],[1]],[[543.1524764516304],[225.97177119842746],[0],[\"idle\"],[0],[1]],[[543.1524764516304],[225.97177119842746],[0],[\"idle\"],[0],[1]],[[543.1524764516304],[225.97177119842746],[0],[\"idle\"],[0],[1]],[[543.1524764516304],[225.97177119842746],[0],[\"idle\"],[0],[1]],[[543.1524764516304],[225.97177119842746],[0],[\"idle\"],[0],[1]],[[543.1524764516304],[225.97177119842746],[0],[\"idle\"],[0],[1]],[[543.1524764516304],[225.97177119842746],[0],[\"idle\"],[0],[1]],[[543.1524764516304],[225.97177119842746],[0],[\"idle\"],[0],[1]],[[543.1524764516304],[225.97177119842746],[0],[\"idle\"],[0],[1]],[[543.1524764516304],[225.97177119842746],[0],[\"idle\"],[0],[1]],[[543.1524764516304],[225.97177119842746],[0],[\"idle\"],[0],[1]],[[543.1524764516304],[225.97177119842746],[0],[\"idle\"],[0],[1]],[[543.1524764516304],[225.97177119842746],[0],[\"idle\"],[0],[1]],[[543.1524764516304],[225.97177119842746],[0],[\"idle\"],[0],[1]]]}"],[0]],[],[1,"Default",0,1]],[[195,460,0,249,52,0,0,1,0,0,0,0,[]],46,179,[[1],[1],[""],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Those are Good guys",1,0,50,0,0,0,0,0,"",-1,0]],[[364,332,0,288,117,0,0,1,0,0,0,0,[[]]],61,5603,[],[[1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>","1",7,0,50,0,0,0,0,0,"",-1,0]]],[]],["UI",1,661732305350876,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[240,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3097,[["right"]],[[0,1,0,1,1]],[0,"Default",0,1]],[[80,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3098,[["left"]],[[0,1,0,1,1]],[0,"Default",1,1]],[[560,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3099,[["up"]],[[1,1,1,1,1]],[0,"Default",3,1]],[[400,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3100,[["down"]],[[1,1,1,1,1]],[0,"Default",2,1]]],[]],["End Card",2,900703478570537,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],78,2607,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[12.04449462890625,194,0,615.9109497070313,67,0,0,1,0,0,0,0,[]],79,2608,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Timer for this level",2.5,0,0,0,0,0,-10,0,"",-1,0]],[[17.546875,248,0,604.90625,105,0,0,1,0,0,0,0,[]],80,2610,[[0],[0],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","13:40:40",4,0,63,50,0,0,-10,0,"",-1,0]],[[115.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,2611,[[0],[1],[0],[0],["replay"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Replay",""],[""],[2,2,0,0,0],["",""]],[0,"Replay",0,1]],[[524.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3086,[[0],[1],[0],[0],["next"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Next",""],[""],[2,2,0,0,0],["",""]],[0,"Next",0,1]],[[320.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3087,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > Back","Level Menu"],[""],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[320.75,521.8050537109375,0,384,96,0,0,1,0.5,0.5,0,0,[]],70,3088,[[1],[1],[0],[0],[""],["{\"size\": 22, \"left\": 70, \"right\": 18, \"alignY\": 60}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > DownloadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"DownloadReplay",0,1]]],[]],["Pause",3,358327526894166,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-310,678,0,274,31,0,0,1,0,0,0,0,[]],168,3089,[],[],[".ovo",0,1,"file"]],[[320,320,0,425,250,0,0,1,0.5,0.5,0,0,[]],82,3090,[],[[6,1,"",300,1,1,"",300,"overlay",1,"PauseClose",1,1]],[0,"Default",0,1]],[[214,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3091,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"",""],["PauseClose"],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[426,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3092,[[0],[1],[0],[0],["quit"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > GiveUp",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[115.5,202,0,409,118,0,0,1,0,0,0,0,[]],83,3093,[[1],[1],["pause"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Pause",4,0,57,50,0,0,-10,0,"",-1,0]],[[320.5,88,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3094,[[1],[1],[0],[0],["loadreplay"],["{\"size\": 16, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > LoadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"LoadReplay",0,1]],[[320.5,157,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3095,[[1],[0],[0],[0],["toggledebug"],["{\"size\": 15, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Debug > Toggle",""],[""],[2,2,0,0,0],["",""]],[0,"ToggleDebug",0,1]],[[78,448,0,484,134,0,0,1,0,0,0,0,[]],193,3096,[],[],[0,"Default",0,1]]],[]],["Overlay",4,312812025562473,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[432,4,0,203.0009155273438,64,0,0,1,0,0,0,0,[]],107,5488,[],[[1,0,1,0,1]],[2,2,2,2,0,1,0,0,1]],[[432,4,0,203,64,0,0,1,0,0,0,0,[]],84,3101,[[0],[0],[""],["en-us"],[0],[1],[1],["{\"alignY\": 85, \"alignX\": 45, \"size\": 28}"],[0],[1],[0],[0],[0]],[["",""],[1,0,1,0,1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",2,0,100,50,0,0,-10,0,"",-1,0]],[[88,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3102,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Pause",""],[""],[0,0,0,0,1],["",""]],[0,"Pause",0,1]],[[158,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3103,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Replay","1"],[""],[0,0,0,0,1],["",""]],[0,"Reload",0,1]]],[]],["End Game",5,837051842081280,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],85,3104,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[73,194,0,494,72,0,0,1,0,0,0,0,[]],86,3105,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],["{alignY:50}"],[0],[1],[0],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Your final time",2.5,0,50,50,0,0,-10,0,"",-1,0]],[[320,403,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3106,[[0],[1],[0],[0],[""],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Quit",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[73,243,0,494,85,0,0,1,0,0,0,0,[]],87,3108,[[0],[1],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",3,0,50,50,0,0,-10,0,"",-1,0]],[[73,318,0,494,25,0,0,1,0,0,0,0,[]],86,5480,[[1],[1],["tryagainhardmode"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Try again in hard mode!",1,0,50,50,0,0,-2,0,"",-1,0]]],[]]],[],[]],["Level 13 Old",1080,640,true,"Levels",874556490961798,[["Layer 0",0,754097457094955,true,[255,255,255],false,1,1,1,false,false,1,0,0,[[[32,529,0,307,9,0,0,1,0,0,0,0,[]],51,264,[],[[0],[1],[1,100,""]],[0,0]],[[-37,166,0,4,8,0,0,1,1,0,0,0,[]],38,265,[[0],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","rightarm",3,1,0,0,1,2]],[0,"Default",0,1]],[[-37,174,0,4,8,0,0,1,1,0,0,0,[]],40,266,[[1],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","righthand",3,1,0,0,1,2]],[0,"Default",0,1]],[[-41,171,0,8,16,0,0,1,0.5,0.5,0,0,[]],32,267,[[2],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","body",3,1,0,0,1,2]],[0,"Default",0,1]],[[-41,187,0,4,8,0,0,1,0,0,0,0,[]],39,268,[[4],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","rightfoot",3,1,0,0,1,2]],[0,"Default",0,1]],[[-41,179,0,4,8,0,0,1,0,0,0,0,[]],41,269,[[3],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","rightleg",3,1,0,0,1,2]],[0,"Default",0,1]],[[-45,187,0,4,8,0,0,1,0,0,0,0,[]],35,270,[[6],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","leftfoot",3,1,0,0,1,2]],[0,"Default",0,1]],[[-45,179,0,4,8,0,0,1,0,0,0,0,[]],37,271,[[5],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","leftleg",3,1,0,0,1,2]],[0,"Default",0,1]],[[-41,163,0,32,32,0,0,1,0.5,1,0,0,[]],33,272,[[7],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","head",3,1,0,0,1,2]],[0,"Default",0,1]],[[-45,166,0,4,8,0,0,1,1,0,0,0,[]],34,273,[[8],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","leftarm",3,1,0,0,1,2]],[0,"Default",0,1]],[[-45,174,0,4,8,0,0,1,1,0,0,0,[]],36,274,[[9],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","lefthand",3,1,0,0,1,2]],[0,"Default",0,1]],[[60,457,0,32,64,0,0,1,0.5,0.5,0,0,[]],42,275,[["run"],[0],[1],[1],[0],[0.8],[0.5],[0],[1],[0],[0],[0],[""],[2],[0],[0],[0],[""],[0],[3],[0],[0],[0],[0],[0],[0],[0]],[[330,1500,1500,650,1500,1000,0,0,0,1],[],[0,0],[0,10000,360,1]],[0,"Default",0,1]],[[969,227,0,97,199,0,0,1,0.5257731676101685,0.4974874258041382,0,0,[]],44,276,[],[[0]],[0,"Default",0,1]],[[779,322,0,215,9,0,0,1,0,0,0,0,[]],51,279,[],[[0],[1],[1,100,""]],[0,0]],[[317,513,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,277,[[0.7],[0]],[[0]],[0,"Default",0,1]],[[253,272,0,202,9,0,1.570796370506287,1,0,0,0,0,[]],51,310,[],[[0],[1],[1,100,""]],[0,0]],[[-123,74,0,60.93439102172852,60.93439102172852,0,0,1,0.5,0.5,0,0,[]],53,1415,[["Hackser"],[""],[0]],[],[1,"Default",0,1]],[[41.0000114440918,71,0,459,9,0,1.570796370506287,1,0,0,0,0,[]],51,180,[],[[0],[1],[1,100,""]],[0,0]],[[247,207,0,64,64,0,0,1,0.5,0.5,0,0,[]],60,5498,[["level13"]],[[1],[400,-200,800,0,0,0],[0,0,0,1,1]],[0,"Default",0,1]],[[35,348,0,288,117,0,0,1,0,0,0,0,[[]]],61,5604,[],[[1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>","1",7,0,50,0,0,0,0,0,"",-1,0]]],[]],["UI",1,989616594419612,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[240,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3097,[["right"]],[[0,1,0,1,1]],[0,"Default",0,1]],[[80,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3098,[["left"]],[[0,1,0,1,1]],[0,"Default",1,1]],[[560,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3099,[["up"]],[[1,1,1,1,1]],[0,"Default",3,1]],[[400,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3100,[["down"]],[[1,1,1,1,1]],[0,"Default",2,1]]],[]],["End Card",2,167385115355515,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],78,2607,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[12.04449462890625,194,0,615.9109497070313,67,0,0,1,0,0,0,0,[]],79,2608,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Timer for this level",2.5,0,0,0,0,0,-10,0,"",-1,0]],[[17.546875,248,0,604.90625,105,0,0,1,0,0,0,0,[]],80,2610,[[0],[0],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","13:40:40",4,0,63,50,0,0,-10,0,"",-1,0]],[[115.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,2611,[[0],[1],[0],[0],["replay"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Replay",""],[""],[2,2,0,0,0],["",""]],[0,"Replay",0,1]],[[524.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3086,[[0],[1],[0],[0],["next"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Next",""],[""],[2,2,0,0,0],["",""]],[0,"Next",0,1]],[[320.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3087,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > Back","Level Menu"],[""],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[320.75,521.8050537109375,0,384,96,0,0,1,0.5,0.5,0,0,[]],70,3088,[[1],[1],[0],[0],[""],["{\"size\": 22, \"left\": 70, \"right\": 18, \"alignY\": 60}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > DownloadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"DownloadReplay",0,1]]],[]],["Pause",3,312763908659104,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-310,678,0,274,31,0,0,1,0,0,0,0,[]],168,3089,[],[],[".ovo",0,1,"file"]],[[320,320,0,425,250,0,0,1,0.5,0.5,0,0,[]],82,3090,[],[[6,1,"",300,1,1,"",300,"overlay",1,"PauseClose",1,1]],[0,"Default",0,1]],[[214,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3091,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"",""],["PauseClose"],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[426,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3092,[[0],[1],[0],[0],["quit"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > GiveUp",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[115.5,202,0,409,118,0,0,1,0,0,0,0,[]],83,3093,[[1],[1],["pause"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Pause",4,0,57,50,0,0,-10,0,"",-1,0]],[[320.5,88,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3094,[[1],[1],[0],[0],["loadreplay"],["{\"size\": 16, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > LoadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"LoadReplay",0,1]],[[320.5,157,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3095,[[1],[0],[0],[0],["toggledebug"],["{\"size\": 15, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Debug > Toggle",""],[""],[2,2,0,0,0],["",""]],[0,"ToggleDebug",0,1]],[[78,448,0,484,134,0,0,1,0,0,0,0,[]],193,3096,[],[],[0,"Default",0,1]]],[]],["Overlay",4,789666684300708,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[432,4,0,203.0009155273438,64,0,0,1,0,0,0,0,[]],107,5488,[],[[1,0,1,0,1]],[2,2,2,2,0,1,0,0,1]],[[432,4,0,203,64,0,0,1,0,0,0,0,[]],84,3101,[[0],[0],[""],["en-us"],[0],[1],[1],["{\"alignY\": 85, \"alignX\": 45, \"size\": 28}"],[0],[1],[0],[0],[0]],[["",""],[1,0,1,0,1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",2,0,100,50,0,0,-10,0,"",-1,0]],[[88,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3102,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Pause",""],[""],[0,0,0,0,1],["",""]],[0,"Pause",0,1]],[[158,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3103,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Replay","1"],[""],[0,0,0,0,1],["",""]],[0,"Reload",0,1]]],[]],["End Game",5,315382310143576,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],85,3104,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[73,194,0,494,72,0,0,1,0,0,0,0,[]],86,3105,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],["{alignY:50}"],[0],[1],[0],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Your final time",2.5,0,50,50,0,0,-10,0,"",-1,0]],[[320,403,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3106,[[0],[1],[0],[0],[""],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Quit",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[73,243,0,494,85,0,0,1,0,0,0,0,[]],87,3108,[[0],[1],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",3,0,50,50,0,0,-10,0,"",-1,0]],[[73,318,0,494,25,0,0,1,0,0,0,0,[]],86,5480,[[1],[1],["tryagainhardmode"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Try again in hard mode!",1,0,50,50,0,0,-2,0,"",-1,0]]],[]]],[],[]],["Level 14 Old",1080,640,true,"Levels",993135549580914,[["Layer 0",0,748540458828883,true,[255,255,255],false,1,1,1,false,false,1,0,0,[[[32,529,0,307,9,0,0,1,0,0,0,0,[]],51,311,[],[[0],[1],[1,100,""]],[0,0]],[[-37,166,0,4,8,0,0,1,1,0,0,0,[]],38,312,[[0],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","rightarm",3,1,0,0,1,2]],[0,"Default",0,1]],[[-37,174,0,4,8,0,0,1,1,0,0,0,[]],40,313,[[1],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","righthand",3,1,0,0,1,2]],[0,"Default",0,1]],[[-41,171,0,8,16,0,0,1,0.5,0.5,0,0,[]],32,314,[[2],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","body",3,1,0,0,1,2]],[0,"Default",0,1]],[[-41,187,0,4,8,0,0,1,0,0,0,0,[]],39,315,[[4],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","rightfoot",3,1,0,0,1,2]],[0,"Default",0,1]],[[-41,179,0,4,8,0,0,1,0,0,0,0,[]],41,316,[[3],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","rightleg",3,1,0,0,1,2]],[0,"Default",0,1]],[[-45,187,0,4,8,0,0,1,0,0,0,0,[]],35,317,[[6],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","leftfoot",3,1,0,0,1,2]],[0,"Default",0,1]],[[-45,179,0,4,8,0,0,1,0,0,0,0,[]],37,318,[[5],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","leftleg",3,1,0,0,1,2]],[0,"Default",0,1]],[[-41,163,0,32,32,0,0,1,0.5,1,0,0,[]],33,319,[[7],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","head",3,1,0,0,1,2]],[0,"Default",0,1]],[[-45,166,0,4,8,0,0,1,1,0,0,0,[]],34,320,[[8],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","leftarm",3,1,0,0,1,2]],[0,"Default",0,1]],[[-45,174,0,4,8,0,0,1,1,0,0,0,[]],36,321,[[9],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","lefthand",3,1,0,0,1,2]],[0,"Default",0,1]],[[96,401,0,32,64,0,0,1,0.5,0.5,0,0,[]],42,322,[["run"],[0],[1],[1],[0],[0.8],[0.5],[0],[1],[0],[0],[0],[""],[2],[0],[0],[0],[""],[0],[3],[0],[0],[0],[0],[0],[0],[0]],[[330,1500,1500,650,1500,1000,0,0,0,1],[],[0,0],[0,10000,360,1]],[1,"Default",0,1]],[[969,227,0,97,199,0,0,1,0.5257731676101685,0.4974874258041382,0,0,[]],44,323,[],[[0]],[0,"Default",0,1]],[[779,322,0,215,9,0,0,1,0,0,0,0,[]],51,324,[],[[0],[1],[1,100,""]],[0,0]],[[317,513,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,325,[[0.7],[0]],[[0]],[0,"Default",0,1]],[[253,30,0,434,9,0,1.570796370506287,1,0,0,0,0,[]],51,326,[],[[0],[1],[1,100,""]],[0,0]],[[501,135,0,172,9,0,1.570796370506287,1,0,0,0,0,[]],51,327,[],[[0],[1],[1,100,""]],[0,0]],[[-111,54,0,60.93439102172852,60.93439102172852,0,0,1,0.5,0.5,0,0,[]],53,1416,[["Godlike"],[""],[0]],[],[1,"Default",0,1]],[[1,310,0,288,117,0,0,1,0,0,0,0,[[]]],61,5605,[],[[1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>","1",7,0,50,0,0,0,0,0,"",-1,0]]],[]],["UI",1,853314000007595,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[240,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3097,[["right"]],[[0,1,0,1,1]],[0,"Default",0,1]],[[80,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3098,[["left"]],[[0,1,0,1,1]],[0,"Default",1,1]],[[560,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3099,[["up"]],[[1,1,1,1,1]],[0,"Default",3,1]],[[400,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3100,[["down"]],[[1,1,1,1,1]],[0,"Default",2,1]]],[]],["End Card",2,566133029091186,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],78,2607,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[12.04449462890625,194,0,615.9109497070313,67,0,0,1,0,0,0,0,[]],79,2608,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Timer for this level",2.5,0,0,0,0,0,-10,0,"",-1,0]],[[17.546875,248,0,604.90625,105,0,0,1,0,0,0,0,[]],80,2610,[[0],[0],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","13:40:40",4,0,63,50,0,0,-10,0,"",-1,0]],[[115.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,2611,[[0],[1],[0],[0],["replay"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Replay",""],[""],[2,2,0,0,0],["",""]],[0,"Replay",0,1]],[[524.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3086,[[0],[1],[0],[0],["next"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Next",""],[""],[2,2,0,0,0],["",""]],[0,"Next",0,1]],[[320.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3087,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > Back","Level Menu"],[""],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[320.75,521.8050537109375,0,384,96,0,0,1,0.5,0.5,0,0,[]],70,3088,[[1],[1],[0],[0],[""],["{\"size\": 22, \"left\": 70, \"right\": 18, \"alignY\": 60}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > DownloadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"DownloadReplay",0,1]]],[]],["Pause",3,466700819396596,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-310,678,0,274,31,0,0,1,0,0,0,0,[]],168,3089,[],[],[".ovo",0,1,"file"]],[[320,320,0,425,250,0,0,1,0.5,0.5,0,0,[]],82,3090,[],[[6,1,"",300,1,1,"",300,"overlay",1,"PauseClose",1,1]],[0,"Default",0,1]],[[214,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3091,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"",""],["PauseClose"],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[426,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3092,[[0],[1],[0],[0],["quit"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > GiveUp",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[115.5,202,0,409,118,0,0,1,0,0,0,0,[]],83,3093,[[1],[1],["pause"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Pause",4,0,57,50,0,0,-10,0,"",-1,0]],[[320.5,88,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3094,[[1],[1],[0],[0],["loadreplay"],["{\"size\": 16, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > LoadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"LoadReplay",0,1]],[[320.5,157,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3095,[[1],[0],[0],[0],["toggledebug"],["{\"size\": 15, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Debug > Toggle",""],[""],[2,2,0,0,0],["",""]],[0,"ToggleDebug",0,1]],[[78,448,0,484,134,0,0,1,0,0,0,0,[]],193,3096,[],[],[0,"Default",0,1]]],[]],["Overlay",4,898607357723536,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[432,4,0,203.0009155273438,64,0,0,1,0,0,0,0,[]],107,5488,[],[[1,0,1,0,1]],[2,2,2,2,0,1,0,0,1]],[[432,4,0,203,64,0,0,1,0,0,0,0,[]],84,3101,[[0],[0],[""],["en-us"],[0],[1],[1],["{\"alignY\": 85, \"alignX\": 45, \"size\": 28}"],[0],[1],[0],[0],[0]],[["",""],[1,0,1,0,1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",2,0,100,50,0,0,-10,0,"",-1,0]],[[88,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3102,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Pause",""],[""],[0,0,0,0,1],["",""]],[0,"Pause",0,1]],[[158,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3103,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Replay","1"],[""],[0,0,0,0,1],["",""]],[0,"Reload",0,1]]],[]],["End Game",5,700131767500373,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],85,3104,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[73,194,0,494,72,0,0,1,0,0,0,0,[]],86,3105,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],["{alignY:50}"],[0],[1],[0],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Your final time",2.5,0,50,50,0,0,-10,0,"",-1,0]],[[320,403,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3106,[[0],[1],[0],[0],[""],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Quit",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[73,243,0,494,85,0,0,1,0,0,0,0,[]],87,3108,[[0],[1],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",3,0,50,50,0,0,-10,0,"",-1,0]],[[73,318,0,494,25,0,0,1,0,0,0,0,[]],86,5480,[[1],[1],["tryagainhardmode"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Try again in hard mode!",1,0,50,50,0,0,-2,0,"",-1,0]]],[]]],[],[]],["Level 410",10000,2000,true,"Levels",586041728570301,[["Background",0,983486385155511,true,[255,255,255],false,0,0,1,false,false,1,0,0,[[[704,1120,0,128,0,0,1.570796370506287,1,0,0,0,0,[]],51,6376,[],[[0],[1],[1,100,""]],[0,0]]],[]],["Layer 0",1,884493255691443,true,[255,255,255],true,1,1,1,false,false,1,0,0,[[[408,1200,0,32,64,0,0,1,0.5,0.5,0,0,[]],42,7067,[["run"],[0],[1],[1],[0],[0.8],[0.5],[0],[1],[0],[0],[0],["ovo+"],[2],[0],[0],[0],[""],[0],[3],[0],[0],[0],[0],[0],[0],[0]],[[330,1500,1500,650,1500,1000,1,0,0,1],[],[0,0],[0,10000,360,1]],[1,"Default",0,1]],[[280,1000,0,288,117,0,0,1,0,0,0,0,[[]]],61,7068,[],[[1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>","1",7,0,50,0,0,0,0,0,"",-1,0]],[[296,1296,0,3344,9,0,0,1,0,0,0,0,[]],51,7075,[],[[0],[1],[1,100,""]],[0,0]],[[3928,1456,0,97,199,0,0,1,0.5257731676101685,0.4974874258041382,0,0,[]],44,7182,[],[[0]],[0,"Default",0,1]],[[304.0000305175781,464,0,840,9,0,1.570796370506287,1,0,0,0,0,[]],51,7071,[],[[0],[1],[1,100,""]],[0,0]],[[544,1216,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2796,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[548,1232,0,64,9,0,1.570796370506287,1,0,0,0,0,[]],51,6377,[],[[0],[1],[1,100,""]],[0,0]],[[672,1216,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,6378,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[676,1232,0,64,9,0,1.570796370506287,1,0,0,0,0,[]],51,6379,[],[[0],[1],[1,100,""]],[0,0]],[[576,1216,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,6389,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[580,1232,0,64,9,0,1.570796370506287,1,0,0,0,0,[]],51,6390,[],[[0],[1],[1,100,""]],[0,0]],[[608,1216,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,6392,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[640,1216,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,6393,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[612,1232,0,64,9,0,1.570796370506287,1,0,0,0,0,[]],51,6394,[],[[0],[1],[1,100,""]],[0,0]],[[644,1232,0,64,9,0,1.570796370506287,1,0,0,0,0,[]],51,6395,[],[[0],[1],[1,100,""]],[0,0]],[[800,1216,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,6380,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[804,1232,0,64,9,0,1.570796370506287,1,0,0,0,0,[]],51,6381,[],[[0],[1],[1,100,""]],[0,0]],[[928,1216,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,6382,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[932,1232,0,64,9,0,1.570796370506287,1,0,0,0,0,[]],51,6383,[],[[0],[1],[1,100,""]],[0,0]],[[832,1216,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,6396,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[836,1232,0,64,9,0,1.570796370506287,1,0,0,0,0,[]],51,6397,[],[[0],[1],[1,100,""]],[0,0]],[[864,1216,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,6398,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[896,1216,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,6399,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[868,1232,0,64,9,0,1.570796370506287,1,0,0,0,0,[]],51,6400,[],[[0],[1],[1,100,""]],[0,0]],[[900,1232,0,64,9,0,1.570796370506287,1,0,0,0,0,[]],51,6401,[],[[0],[1],[1,100,""]],[0,0]],[[544,1056,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6402,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[548,976,0,64,9,0,1.570796370506287,1,0,0,0,0,[]],51,6403,[],[[0],[1],[1,100,""]],[0,0]],[[672,1056,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6404,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[676,976,0,64,9,0,1.570796370506287,1,0,0,0,0,[]],51,6405,[],[[0],[1],[1,100,""]],[0,0]],[[576,1056,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6406,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[580,976,0,64,9,0,1.570796370506287,1,0,0,0,0,[]],51,6407,[],[[0],[1],[1,100,""]],[0,0]],[[608,1056,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6408,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[640,1056,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6409,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[612,976,0,64,9,0,1.570796370506287,1,0,0,0,0,[]],51,6410,[],[[0],[1],[1,100,""]],[0,0]],[[644,976,0,64,9,0,1.570796370506287,1,0,0,0,0,[]],51,6411,[],[[0],[1],[1,100,""]],[0,0]],[[800,1056,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6385,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[804,976,0,64,9,0,1.570796370506287,1,0,0,0,0,[]],51,6386,[],[[0],[1],[1,100,""]],[0,0]],[[928,1056,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6387,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[932,976,0,64,9,0,1.570796370506287,1,0,0,0,0,[]],51,6388,[],[[0],[1],[1,100,""]],[0,0]],[[832,1056,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6412,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[836,976,0,64,9,0,1.570796370506287,1,0,0,0,0,[]],51,6413,[],[[0],[1],[1,100,""]],[0,0]],[[864,1056,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6414,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[896,1056,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6415,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[868,976,0,64,9,0,1.570796370506287,1,0,0,0,0,[]],51,6416,[],[[0],[1],[1,100,""]],[0,0]],[[900,976,0,64,9,0,1.570796370506287,1,0,0,0,0,[]],51,6417,[],[[0],[1],[1,100,""]],[0,0]],[[304,465,0,4512,512,0,0,1,0,0,0,0,[]],51,6418,[],[[0],[1],[1,100,""]],[0,0]],[[1104,1216,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6420,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1108,976,0,224,9,0,1.570796370506287,1,0,0,0,0,[]],51,6421,[],[[0],[1],[1,100,""]],[0,0]],[[1232,1216,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6422,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1236,976,0,224,9,0,1.570796370506287,1,0,0,0,0,[]],51,6423,[],[[0],[1],[1,100,""]],[0,0]],[[1136,1216,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6424,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1140,976,0,224,9,0,1.570796370506287,1,0,0,0,0,[]],51,6425,[],[[0],[1],[1,100,""]],[0,0]],[[1168,1216,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6426,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1200,1216,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6427,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1172,976,0,224,9,0,1.570796370506287,1,0,0,0,0,[]],51,6428,[],[[0],[1],[1,100,""]],[0,0]],[[1204,976,0,224,9,0,1.570796370506287,1,0,0,0,0,[]],51,6429,[],[[0],[1],[1,100,""]],[0,0]],[[1385,1088,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,6430,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1390,1104,0,192,9,0,1.570796370506287,1,0,0,0,0,[]],51,6431,[],[[0],[1],[1,100,""]],[0,0]],[[1513,1120,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,6432,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1518,1136,0,160,9,0,1.570796370506287,1,0,0,0,0,[]],51,6433,[],[[0],[1],[1,100,""]],[0,0]],[[1417,1096,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,6434,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1422,1112,0,184,9,0,1.570796370506287,1,0,0,0,0,[]],51,6435,[],[[0],[1],[1,100,""]],[0,0]],[[1449,1104,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,6436,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1481,1112,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,6437,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1454,1120,0,176,9,0,1.570796370506287,1,0,0,0,0,[]],51,6438,[],[[0],[1],[1,100,""]],[0,0]],[[1486,1128,0,168,9,0,1.570796370506287,1,0,0,0,0,[]],51,6439,[],[[0],[1],[1,100,""]],[0,0]],[[1752,1070,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6440,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1756,830,0,224,9,0,1.570796370506287,1,0,0,0,0,[]],51,6441,[],[[0],[1],[1,100,""]],[0,0]],[[1880,1070,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6442,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1884,830,0,224,9,0,1.570796370506287,1,0,0,0,0,[]],51,6443,[],[[0],[1],[1,100,""]],[0,0]],[[1784,1070,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6444,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1788,830,0,224,9,0,1.570796370506287,1,0,0,0,0,[]],51,6445,[],[[0],[1],[1,100,""]],[0,0]],[[1816,1070,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6446,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1848,1070,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6447,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1820,830,0,224,9,0,1.570796370506287,1,0,0,0,0,[]],51,6448,[],[[0],[1],[1,100,""]],[0,0]],[[1852,830,0,224,9,0,1.570796370506287,1,0,0,0,0,[]],51,6449,[],[[0],[1],[1,100,""]],[0,0]],[[1896,1054,0,32,312,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,6450,[[-1],[0],[0],[0],[0],[6],[1]],[[0],[1,1,1,0,"F 200 ; W 0.5; B 200 ; W 0.5",700,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1913,1070,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6451,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1917,830,0,224,9,0,1.570796370506287,1,0,0,0,0,[]],51,6452,[],[[0],[1],[1,100,""]],[0,0]],[[2041,1070,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6453,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2045,830,0,224,9,0,1.570796370506287,1,0,0,0,0,[]],51,6454,[],[[0],[1],[1,100,""]],[0,0]],[[1945,1070,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6455,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1949,830,0,224,9,0,1.570796370506287,1,0,0,0,0,[]],51,6456,[],[[0],[1],[1,100,""]],[0,0]],[[1977,1070,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6457,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2009,1070,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6458,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1981,830,0,224,9,0,1.570796370506287,1,0,0,0,0,[]],51,6459,[],[[0],[1],[1,100,""]],[0,0]],[[2013,830,0,224,9,0,1.570796370506287,1,0,0,0,0,[]],51,6460,[],[[0],[1],[1,100,""]],[0,0]],[[2072,1272,0,1312,9,0,1.570796370506287,1,0,0,0,0,[]],51,6463,[],[[0],[1],[1,100,""]],[0,0]],[[2200,1280,0,1304,9,0,1.570796370506287,1,0,0,0,0,[]],51,6465,[],[[0],[1],[1,100,""]],[0,0]],[[2104,1280,0,1304,9,0,1.570796370506287,1,0,0,0,0,[]],51,6467,[],[[0],[1],[1,100,""]],[0,0]],[[2136,1280,0,1304,9,0,1.570796370506287,1,0,0,0,0,[]],51,6470,[],[[0],[1],[1,100,""]],[0,0]],[[2168,1280,0,1304,9,0,1.570796370506287,1,0,0,0,0,[]],51,6471,[],[[0],[1],[1,100,""]],[0,0]],[[2216,1276,0,24,328,0,-1.570796489715576,1,0.5,0.5,0,0,[]],50,6472,[[-1],[0],[0],[0],[0],[2],[1]],[[0],[1,0,1,0,"F 224",175,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[2240,1280,0,1304,9,0,1.570796370506287,1,0,0,0,0,[]],51,6474,[],[[0],[1],[1,100,""]],[0,0]],[[2368,1280,0,1304,9,0,1.570796370506287,1,0,0,0,0,[]],51,6476,[],[[0],[1],[1,100,""]],[0,0]],[[2272,1280,0,1304,9,0,1.570796370506287,1,0,0,0,0,[]],51,6478,[],[[0],[1],[1,100,""]],[0,0]],[[2304,1280,0,1304,9,0,1.570796370506287,1,0,0,0,0,[]],51,6481,[],[[0],[1],[1,100,""]],[0,0]],[[2336,1280,0,1304,9,0,1.570796370506287,1,0,0,0,0,[]],51,6482,[],[[0],[1],[1,100,""]],[0,0]],[[2064,1272,0,304,9,0,0,1,0,0,0,0,[]],51,6461,[],[[0],[1],[1,100,""]],[0,0]],[[1976,1200,0,32,168,0,0,1,0.5,0.5,0,0,[]],49,6462,[[2],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[1,"Default",0,1]],[[2088,992,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6464,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2120,992,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6466,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2152,992,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6468,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2184,992,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6469,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2216,992,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6473,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2248,992,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6475,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2280,992,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6477,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[2312,992,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6479,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[2344,992,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6480,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[2404,1216,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,6483,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2408,1232,0,64,9,0,1.570796370506287,1,0,0,0,0,[]],51,6484,[],[[0],[1],[1,100,""]],[0,0]],[[2436,1216,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,6488,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2440,1232,0,64,9,0,1.570796370506287,1,0,0,0,0,[]],51,6489,[],[[0],[1],[1,100,""]],[0,0]],[[2468,1216,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,6490,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2500,1216,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,6491,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2472,1232,0,64,9,0,1.570796370506287,1,0,0,0,0,[]],51,6492,[],[[0],[1],[1,100,""]],[0,0]],[[2504,1232,0,64,9,0,1.570796370506287,1,0,0,0,0,[]],51,6493,[],[[0],[1],[1,100,""]],[0,0]],[[2516,1056,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,6494,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2520,976,0,64,9,0,1.570796370506287,1,0,0,0,0,[]],51,6495,[],[[0],[1],[1,100,""]],[0,0]],[[2644,1056,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7069,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2648,976,0,64,9,0,1.570796370506287,1,0,0,0,0,[]],51,7070,[],[[0],[1],[1,100,""]],[0,0]],[[2548,1056,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7072,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2552,976,0,64,9,0,1.570796370506287,1,0,0,0,0,[]],51,7073,[],[[0],[1],[1,100,""]],[0,0]],[[2580,1056,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7074,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2612,1056,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7076,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2584,976,0,64,9,0,1.570796370506287,1,0,0,0,0,[]],51,7077,[],[[0],[1],[1,100,""]],[0,0]],[[2616,976,0,64,9,0,1.570796370506287,1,0,0,0,0,[]],51,7078,[],[[0],[1],[1,100,""]],[0,0]],[[2972,1135,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7079,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2976,1151,0,144,9,0,1.570796370506287,1,0,0,0,0,[]],51,7080,[],[[0],[1],[1,100,""]],[0,0]],[[3100,1135,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7081,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3104,1151,0,144,9,0,1.570796370506287,1,0,0,0,0,[]],51,7082,[],[[0],[1],[1,100,""]],[0,0]],[[3004,1135,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7083,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3008,1151,0,144,9,0,1.570796370506287,1,0,0,0,0,[]],51,7084,[],[[0],[1],[1,100,""]],[0,0]],[[3036,1135,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7085,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3068,1135,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7086,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3040,1151,0,144,9,0,1.570796370506287,1,0,0,0,0,[]],51,7087,[],[[0],[1],[1,100,""]],[0,0]],[[3072,1151,0,144,9,0,1.570796370506287,1,0,0,0,0,[]],51,7088,[],[[0],[1],[1,100,""]],[0,0]],[[2740,1176,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7089,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2744,976,0,184,9,0,1.570796370506287,1,0,0,0,0,[]],51,7090,[],[[0],[1],[1,100,""]],[0,0]],[[2868,1176,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7091,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2872,976,0,184,9,0,1.570796370506287,1,0,0,0,0,[]],51,7092,[],[[0],[1],[1,100,""]],[0,0]],[[2772,1176,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7093,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2776,976,0,184,9,0,1.570796370506287,1,0,0,0,0,[]],51,7094,[],[[0],[1],[1,100,""]],[0,0]],[[2804,1176,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7095,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2836,1176,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7096,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2808,976,0,184,9,0,1.570796370506287,1,0,0,0,0,[]],51,7097,[],[[0],[1],[1,100,""]],[0,0]],[[2840,976,0,184,9,0,1.570796370506287,1,0,0,0,0,[]],51,7098,[],[[0],[1],[1,100,""]],[0,0]],[[3156,1160,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7099,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3160,1176,0,120,9,0,1.570796370506287,1,0,0,0,0,[]],51,7100,[],[[0],[1],[1,100,""]],[0,0]],[[3284,1160,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7101,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3288,1176,0,120,9,0,1.570796370506287,1,0,0,0,0,[]],51,7102,[],[[0],[1],[1,100,""]],[0,0]],[[3188,1160,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7103,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3192,1176,0,120,9,0,1.570796370506287,1,0,0,0,0,[]],51,7104,[],[[0],[1],[1,100,""]],[0,0]],[[3220,1160,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7105,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3252,1160,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7106,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3224,1176,0,120,9,0,1.570796370506287,1,0,0,0,0,[]],51,7107,[],[[0],[1],[1,100,""]],[0,0]],[[3256,1176,0,120,9,0,1.570796370506287,1,0,0,0,0,[]],51,7108,[],[[0],[1],[1,100,""]],[0,0]],[[3316,1160,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7109,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3320,1176,0,120,9,0,1.570796370506287,1,0,0,0,0,[]],51,7110,[],[[0],[1],[1,100,""]],[0,0]],[[3444,1160,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7111,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3448,1176,0,120,9,0,1.570796370506287,1,0,0,0,0,[]],51,7112,[],[[0],[1],[1,100,""]],[0,0]],[[3348,1160,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7113,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3352,1176,0,120,9,0,1.570796370506287,1,0,0,0,0,[]],51,7114,[],[[0],[1],[1,100,""]],[0,0]],[[3380,1160,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7115,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3412,1160,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7116,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3384,1176,0,120,9,0,1.570796370506287,1,0,0,0,0,[]],51,7117,[],[[0],[1],[1,100,""]],[0,0]],[[3416,1176,0,120,9,0,1.570796370506287,1,0,0,0,0,[]],51,7118,[],[[0],[1],[1,100,""]],[0,0]],[[3476,1160,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7119,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3480,1176,0,120,9,0,1.570796370506287,1,0,0,0,0,[]],51,7120,[],[[0],[1],[1,100,""]],[0,0]],[[3604,1160,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7121,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3608,1176,0,120,9,0,1.570796370506287,1,0,0,0,0,[]],51,7122,[],[[0],[1],[1,100,""]],[0,0]],[[3508,1160,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7123,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3512,1176,0,120,9,0,1.570796370506287,1,0,0,0,0,[]],51,7124,[],[[0],[1],[1,100,""]],[0,0]],[[3540,1160,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7125,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3572,1160,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7126,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3544,1176,0,120,9,0,1.570796370506287,1,0,0,0,0,[]],51,7127,[],[[0],[1],[1,100,""]],[0,0]],[[3576,1176,0,120,9,0,1.570796370506287,1,0,0,0,0,[]],51,7128,[],[[0],[1],[1,100,""]],[0,0]],[[3696,1116,0,152,9,0,0,1,0,0,0,0,[]],51,7129,[],[[0],[1],[1,100,""]],[0,0]],[[3680,1120,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,7130,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4960,1119.999755859375,0,2576,24,0,0,1,0.5,0.5,0,0,[]],50,7131,[[-1],[0],[0],[0],[0],[3],[1]],[[0],[1,0,1,0,"B 10000",175,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[2936,1232,0,32,40,0,0,1,0.5,0.5,0,0,[]],49,7132,[[3],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[1,"Default",0,1]],[[4064,1116,0,152,9,0,0,1,0,0,0,0,[]],51,7133,[],[[0],[1],[1,100,""]],[0,0]],[[4048,1120,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,7134,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4384,1116,0,152,9,0,0,1,0,0,0,0,[]],51,7135,[],[[0],[1],[1,100,""]],[0,0]],[[4368,1120,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,7136,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4728,1116,0,152,9,0,0,1,0,0,0,0,[]],51,7137,[],[[0],[1],[1,100,""]],[0,0]],[[4712,1120,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,7138,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[5048,1116,0,152,9,0,0,1,0,0,0,0,[]],51,7139,[],[[0],[1],[1,100,""]],[0,0]],[[5032,1120,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,7140,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[5416,1116,0,152,9,0,0,1,0,0,0,0,[]],51,7141,[],[[0],[1],[1,100,""]],[0,0]],[[5400,1120,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,7142,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[5736,1116,0,152,9,0,0,1,0,0,0,0,[]],51,7143,[],[[0],[1],[1,100,""]],[0,0]],[[5720,1120,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,7144,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[6080,1116,0,152,9,0,0,1,0,0,0,0,[]],51,7145,[],[[0],[1],[1,100,""]],[0,0]],[[6064,1120,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,7146,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[5064,1176,0,320,9,0,1.570796370506287,1,0,0,0,0,[]],52,7147,[],[[0],[0]],[0,0]],[[3640,1304,0,560,9,0,1.570796370506287,1,0,0,0,0,[]],51,7148,[],[[0],[1],[1,100,""]],[0,0]],[[4048,1312,0,552,9,0,1.570796370506287,1,0,0,0,0,[]],51,7149,[],[[0],[1],[1,100,""]],[0,0]],[[3632,1856,0,408,9,0,0,1,0,0,0,0,[]],51,7150,[],[[0],[1],[1,100,""]],[0,0]],[[3656,1840,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7151,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3688,1840,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7152,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3720,1840,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7153,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3752,1840,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7154,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3784,1840,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7155,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3816,1840,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7156,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3848,1840,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7157,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3880,1840,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7158,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3912,1840,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7159,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3816,1312,0,232,9,0,0,1,0,0,0,0,[]],51,7160,[],[[0],[1],[1,100,""]],[0,0]],[[3816,1312,0,336,9,0,1.570796370506287,1,0,0,0,0,[]],51,7161,[],[[0],[1],[1,100,""]],[0,0]],[[3992,1840,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,7162,[[0.5],[0]],[[0]],[0,"Default",0,1]],[[3832,1296,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7163,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3864,1296,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7164,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3896,1296,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7165,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3928,1296,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7167,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3960,1296,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7168,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3992,1296,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7169,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4024,1296,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7170,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2448,1032,0,64,64,0,0,1,0.5,0.5,0,0,[]],60,1778,[["level41"]],[[1],[400,-200,800,0,0,0],[0,0,0,1,1]],[0,"Default",0,1]]],[]],["UI",2,189995994790397,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[240,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3097,[["right"]],[[0,1,0,1,1]],[0,"Default",0,1]],[[80,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3098,[["left"]],[[0,1,0,1,1]],[0,"Default",1,1]],[[560,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3099,[["up"]],[[1,1,1,1,1]],[0,"Default",3,1]],[[400,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3100,[["down"]],[[1,1,1,1,1]],[0,"Default",2,1]]],[]],["End Card",3,559336737441017,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],78,2607,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[12.04449462890625,194,0,615.9109497070313,67,0,0,1,0,0,0,0,[]],79,2608,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Timer for this level",2.5,0,0,0,0,0,-10,0,"",-1,0]],[[17.546875,248,0,604.90625,105,0,0,1,0,0,0,0,[]],80,2610,[[0],[0],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","13:40:40",4,0,63,50,0,0,-10,0,"",-1,0]],[[115.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,2611,[[0],[1],[0],[0],["replay"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Replay",""],[""],[2,2,0,0,0],["",""]],[0,"Replay",0,1]],[[524.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3086,[[0],[1],[0],[0],["next"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Next",""],[""],[2,2,0,0,0],["",""]],[0,"Next",0,1]],[[320.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3087,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > Back","Level Menu"],[""],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[320.75,521.8050537109375,0,384,96,0,0,1,0.5,0.5,0,0,[]],70,3088,[[1],[1],[0],[0],[""],["{\"size\": 22, \"left\": 70, \"right\": 18, \"alignY\": 60}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > DownloadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"DownloadReplay",0,1]]],[]],["Pause",4,817580077550619,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-310,678,0,274,31,0,0,1,0,0,0,0,[]],168,3089,[],[],[".ovo",0,1,"file"]],[[320,320,0,425,250,0,0,1,0.5,0.5,0,0,[]],82,3090,[],[[6,1,"",300,1,1,"",300,"overlay",1,"PauseClose",1,1]],[0,"Default",0,1]],[[214,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3091,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"",""],["PauseClose"],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[426,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3092,[[0],[1],[0],[0],["quit"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > GiveUp",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[115.5,202,0,409,118,0,0,1,0,0,0,0,[]],83,3093,[[1],[1],["pause"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Pause",4,0,57,50,0,0,-10,0,"",-1,0]],[[320.5,88,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3094,[[1],[1],[0],[0],["loadreplay"],["{\"size\": 16, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > LoadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"LoadReplay",0,1]],[[320.5,157,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3095,[[1],[0],[0],[0],["toggledebug"],["{\"size\": 15, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Debug > Toggle",""],[""],[2,2,0,0,0],["",""]],[0,"ToggleDebug",0,1]],[[78,448,0,484,134,0,0,1,0,0,0,0,[]],193,3096,[],[],[0,"Default",0,1]]],[]],["Overlay",5,493298880098891,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[432,4,0,203.0009155273438,64,0,0,1,0,0,0,0,[]],107,5488,[],[[1,0,1,0,1]],[2,2,2,2,0,1,0,0,1]],[[432,4,0,203,64,0,0,1,0,0,0,0,[]],84,3101,[[0],[0],[""],["en-us"],[0],[1],[1],["{\"alignY\": 85, \"alignX\": 45, \"size\": 28}"],[0],[1],[0],[0],[0]],[["",""],[1,0,1,0,1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",2,0,100,50,0,0,-10,0,"",-1,0]],[[88,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3102,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Pause",""],[""],[0,0,0,0,1],["",""]],[0,"Pause",0,1]],[[158,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3103,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Replay","1"],[""],[0,0,0,0,1],["",""]],[0,"Reload",0,1]]],[]],["End Game",6,930227993455952,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],85,3104,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[73,194,0,494,72,0,0,1,0,0,0,0,[]],86,3105,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],["{alignY:50}"],[0],[1],[0],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Your final time",2.5,0,50,50,0,0,-10,0,"",-1,0]],[[320,403,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3106,[[0],[1],[0],[0],[""],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Quit",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[73,243,0,494,85,0,0,1,0,0,0,0,[]],87,3108,[[0],[1],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",3,0,50,50,0,0,-10,0,"",-1,0]],[[73,318,0,494,25,0,0,1,0,0,0,0,[]],86,5480,[[1],[1],["tryagainhardmode"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Try again in hard mode!",1,0,50,50,0,0,-2,0,"",-1,0]]],[]]],[],[]],["Level 420",10000,2000,true,"Levels",187437553567235,[["Background",0,796152199673829,true,[255,255,255],false,0,0,1,false,false,1,0,0,[],[]],["Layer 0",1,663354728148509,true,[255,255,255],true,1,1,1,false,false,1,0,0,[[[1328,440,0,248,117,0,0,1,0,0,0,0,[[]]],61,7590,[],[[1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>","1",7,0,50,0,0,0,0,0,"",-1,0]],[[928,480,0,32,64,0,0,1,0.5,0.5,0,0,[]],42,7591,[["run"],[0],[1],[1],[0],[0.8],[0.5],[0],[1],[0],[0],[0],["ovo+"],[2],[0],[0],[0],[""],[0],[3],[0],[0],[0],[0],[0],[0],[0]],[[330,1500,1500,650,1500,1000,1,0,0,1],[],[1,0],[0,10000,360,1]],[1,"Default",0,1]],[[16,560,0,1080,9,0,0,1,0,0,0,0,[]],51,7592,[],[[0],[1],[1,100,""]],[0,0]],[[1096,560,0,256,9,0,1.570796370506287,1,0,0,0,0,[]],51,7593,[],[[0],[1],[1,100,""]],[0,0]],[[1088,808,0,624,9,0,0,1,0,0,0,0,[]],51,7594,[],[[0],[1],[1,100,""]],[0,0]],[[1712,568,0,248,9,0,1.570796370506287,1,0,0,0,0,[]],51,7595,[],[[0],[1],[1,100,""]],[0,0]],[[1704,568,0,256,9,0,0,1,0,0,0,0,[]],51,7596,[],[[0],[1],[1,100,""]],[0,0]],[[1112,792,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7597,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1144,792,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7598,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1176,640,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7599,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1208,792,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7600,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1240,792,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7601,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1272,752,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7602,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1304,792,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7603,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1336,680,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7604,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1368,768,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7605,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1400,792,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7606,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1432,632,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7607,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1464,792,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7608,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1496,792,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7609,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1528,792,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7610,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1560,680,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7611,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1592,792,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7612,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1624,792,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7613,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1656,600,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7614,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1688,792,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7615,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1256,560,0,32,9,0,0,1,0,0,0,0,[]],51,7616,[],[[0],[1],[1,100,""]],[0,0]],[[1272,544,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,7617,[[0.3],[0]],[[0]],[0,"Default",0,1]],[[1496,672,0,32,9,0,0,1,0,0,0,0,[]],51,7618,[],[[0],[1],[1,100,""]],[0,0]],[[1512,656,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,7619,[[0.6],[0]],[[0]],[0,"Default",0,1]],[[1776,472,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7620,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1808,472,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7621,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2224,296,0,2192,9,0,3.141592741012573,1,0,0,0,0,[]],51,7622,[],[[0],[1],[1,100,""]],[0,0]],[[1112,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7623,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1144,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7624,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1176,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7625,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1208,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7626,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1240,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7627,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1272,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7628,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1304,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7629,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1336,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7630,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1368,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7631,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1400,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7632,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1432,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7633,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1464,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7634,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1496,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7635,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1528,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7636,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1560,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7637,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1592,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7638,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1624,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7639,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1656,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7640,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1688,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7641,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1720,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7642,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1752,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7643,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1784,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7644,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1816,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7645,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1848,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7646,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1880,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7647,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1912,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7648,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1944,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7649,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1976,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7650,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1840,472,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7651,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1960,568,0,728,9,0,1.570796370506287,1,0,0,0,0,[]],51,7652,[],[[0],[1],[1,100,""]],[0,0]],[[2224,288,0,1312,9,0,1.570796370506287,1,0,0,0,0,[]],51,7653,[],[[0],[1],[1,100,""]],[0,0]],[[2008,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7654,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2040,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7655,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2072,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7656,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2104,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7657,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2136,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7658,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2168,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7659,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2200,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7660,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1872,472,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7661,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1180,656,0,152,9,0,1.570796370506287,1,0,0,0,0,[]],51,7662,[],[[0],[1],[1,100,""]],[0,0]],[[1276,768,0,40,9,0,1.570796370506287,1,0,0,0,0,[]],51,7663,[],[[0],[1],[1,100,""]],[0,0]],[[1372,784,0,32,9,0,1.570796370506287,1,0,0,0,0,[]],51,7664,[],[[0],[1],[1,100,""]],[0,0]],[[1340,696,0,112,9,0,1.570796370506287,1,0,0,0,0,[]],51,7665,[],[[0],[1],[1,100,""]],[0,0]],[[1564,696,0,112,9,0,1.570796370506287,1,0,0,0,0,[]],51,7666,[],[[0],[1],[1,100,""]],[0,0]],[[1436,648,0,160,9,0,1.570796370506287,1,0,0,0,0,[]],51,7667,[],[[0],[1],[1,100,""]],[0,0]],[[1660,616,0,192,9,0,1.570796370506287,1,0,0,0,0,[]],51,7668,[],[[0],[1],[1,100,""]],[0,0]],[[856,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7669,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[888,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7670,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[920,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7671,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[952,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7672,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[984,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7673,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1016,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7674,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1048,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7675,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1080,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7676,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[600,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7677,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[632,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7678,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[664,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7679,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[696,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7680,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[728,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7681,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[760,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7682,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[792,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7683,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[824,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7684,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[344,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7685,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[376,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7686,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[408,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7687,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[440,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7688,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[472,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7689,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[504,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7690,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[536,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7691,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[568,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7692,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1780,488,0,80,9,0,1.570796370506287,1,0,0,0,0,[]],51,7693,[],[[0],[1],[1,100,""]],[0,0]],[[1812,488,0,80,9,0,1.570796370506287,1,0,0,0,0,[]],51,7694,[],[[0],[1],[1,100,""]],[0,0]],[[1844,488,0,80,9,0,1.570796370506287,1,0,0,0,0,[]],51,7695,[],[[0],[1],[1,100,""]],[0,0]],[[1876,488,0,80,9,0,1.570796370506287,1,0,0,0,0,[]],51,7696,[],[[0],[1],[1,100,""]],[0,0]],[[312,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7698,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[56,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7699,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[88,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7700,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[120,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7701,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[152,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7702,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[184,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7703,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[216,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7704,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[248,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7705,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[280,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7706,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1976,712,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,7707,[[1],[0]],[[0]],[0,"Default",0,1]],[[1976,752,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7719,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2008,712,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,7720,[[1],[0]],[[0]],[0,"Default",0,1]],[[2008,752,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7721,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2040,752,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7722,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2072,752,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7723,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2040,712,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,7724,[[1],[0]],[[0]],[0,"Default",0,1]],[[2072,712,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,7725,[[1],[0]],[[0]],[0,"Default",0,1]],[[2200,752,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7726,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2200,712,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,7727,[[1],[0]],[[0]],[0,"Default",0,1]],[[1976,928,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,7728,[[1],[0]],[[0]],[0,"Default",0,1]],[[1976,968,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7729,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2008,928,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,7730,[[1],[0]],[[0]],[0,"Default",0,1]],[[2008,968,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7731,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2136,928,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,7734,[[1],[0]],[[0]],[0,"Default",0,1]],[[2136,968,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7735,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2168,968,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7736,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2200,968,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7737,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2168,928,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,7738,[[1],[0]],[[0]],[0,"Default",0,1]],[[2200,928,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,7739,[[1],[0]],[[0]],[0,"Default",0,1]],[[1976,1192,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,7740,[[1],[0]],[[0]],[0,"Default",0,1]],[[1976,1232,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7741,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2008,1192,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,7742,[[1],[0]],[[0]],[0,"Default",0,1]],[[2008,1232,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7743,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2040,1232,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7744,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2072,1232,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7745,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2040,1192,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,7746,[[1],[0]],[[0]],[0,"Default",0,1]],[[2072,1192,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,7747,[[1],[0]],[[0]],[0,"Default",0,1]],[[2104,1192,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,7748,[[1],[0]],[[0]],[0,"Default",0,1]],[[2104,1232,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7749,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1960,728,0,128,9,0,0,1,0,0,0,0,[]],52,7752,[],[[0],[0]],[0,0]],[[2120,944,0,96,9,0,0,1,0,0,0,0,[]],52,7753,[],[[0],[0]],[0,0]],[[2184,728,0,32,9,0,0,1,0,0,0,0,[]],52,7754,[],[[0],[0]],[0,0]],[[1960,944,0,96,9,0,0,1,0,0,0,0,[]],52,7755,[],[[0],[0]],[0,0]],[[1960,1208,0,160,9,0,0,1,0,0,0,0,[]],52,7756,[],[[0],[0]],[0,0]],[[2136,720,0,96,32,0,0,1,0.5,0.5,0,0,[]],43,7757,[[0.001],[0]],[[0]],[1,"Default",0,1]],[[2088,936,0,64,32,0,0,1,0.5,0.5,0,0,[]],43,7758,[[0.001],[0]],[[0]],[1,"Default",0,1]],[[2168,1200,0,96,32,0,0,1,0.5,0.5,0,0,[]],43,7759,[[0.001],[0]],[[0]],[1,"Default",0,1]],[[0,1600,0,2224,9,0,0,1,0,0,0,0,[]],51,7760,[],[[0],[1],[1,100,""]],[0,0]],[[0,1288,0,1960,9,0,0,1,0,0,0,0,[]],51,7761,[],[[0],[1],[1,100,""]],[0,0]],[[0,1288,0,320,9,0,1.570796370506287,1,0,0,0,0,[]],51,7762,[],[[0],[1],[1,100,""]],[0,0]],[[1168,1312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7763,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1200,1312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7764,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1232,1312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7765,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1264,1312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7766,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1296,1312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7767,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1328,1312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7768,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1424,1312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7771,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1456,1312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7772,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1488,1312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7773,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1520,1312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7774,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1552,1312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7775,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1584,1312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7776,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1648,1312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7778,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1680,1312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7779,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1712,1312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7780,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1744,1312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7781,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1840,1312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7784,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1872,1312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7785,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1904,1312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7786,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1936,1312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7787,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1168,1584,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7788,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1200,1584,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7789,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1232,1584,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7790,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1264,1584,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7791,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1296,1584,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7792,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1328,1584,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7793,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1360,1584,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7794,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1392,1584,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7795,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1424,1584,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7796,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1456,1584,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7797,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1488,1584,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7798,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1520,1584,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7799,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1552,1584,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7800,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1584,1584,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7801,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1616,1584,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7802,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1648,1584,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7803,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1680,1584,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7804,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1712,1584,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7805,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1744,1584,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7806,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1776,1584,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7807,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1808,1584,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7808,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1840,1584,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7809,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1872,1584,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7810,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1904,1584,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7811,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1936,1584,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7812,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2072,1456,0,97,199,0,0,1,0.5257731676101685,0.4974874258041382,0,0,[]],44,7813,[],[[0]],[0,"Default",0,1]],[[2040,928,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,7732,[[1],[0]],[[0]],[0,"Default",0,1]],[[2040,968,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7733,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[368,1584,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3059,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[400,1584,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3061,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[432,1584,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7708,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[464,1584,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7709,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[496,1584,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7710,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[528,1584,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7711,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[560,1584,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7712,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[592,1584,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7713,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[624,1584,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7714,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[656,1584,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7715,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[688,1584,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7716,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[720,1584,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7717,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[752,1584,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7718,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[784,1584,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7848,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[816,1584,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7849,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[848,1584,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7850,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[880,1584,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7851,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[912,1584,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7852,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[944,1584,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7853,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[976,1584,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7854,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1008,1584,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7855,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1040,1584,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7856,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1072,1584,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7857,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1104,1584,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7858,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1136,1584,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7859,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[368,1312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7860,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[400,1312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7861,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[464,1312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7870,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[496,1312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7871,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[560,1312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7873,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[592,1312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7874,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[624,1312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7875,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[656,1312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7876,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[688,1312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7877,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[720,1312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7878,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[784,1312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7880,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[816,1312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7881,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[848,1312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7882,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[880,1312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7883,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[912,1312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7884,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[944,1312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7885,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[976,1312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7886,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1008,1312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7887,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1040,1312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7888,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1072,1312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7889,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1104,1312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7890,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[176,1312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7892,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[208,1312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7893,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[240,1312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7894,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[272,1312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7895,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[304,1312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7896,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[336,1312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7897,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[80,1312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7898,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[112,1312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7899,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[144,1312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7900,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[16,1312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7901,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[48,1312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7902,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[16,1584,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7904,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[48,1584,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7905,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[80,1584,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7906,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[112,1584,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7907,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[144,1584,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7908,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[176,1584,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7909,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[208,1584,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7910,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[240,1584,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7911,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[272,1584,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7912,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[304,1584,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7913,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[336,1584,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7914,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1232,1504,0,592,9,0,0,1,0,0,0,0,[]],51,7903,[],[[0],[1],[1,100,""]],[0,0]],[[600,1504,0,488,9,0,0,1,0,0,0,0,[]],51,7915,[],[[0],[1],[1,100,""]],[0,0]],[[200,1504,0,288,9,0,0,1,0,0,0,0,[]],51,7916,[],[[0],[1],[1,100,""]],[0,0]],[[1088,1504,0,144,9,0,0,1,0,0,0,0,[]],51,7917,[],[[0],[1],[1,100,""]],[0,0]],[[488,1504,0,112,9,0,0,1,0,0,0,0,[]],51,7918,[],[[0],[1],[1,100,""]],[0,0]],[[2056,1416,0,88,104,0,0,1,0.5,0.5,0,0,[]],50,7919,[[-1],[0],[0],[0],[0],[1],[1]],[[0],[1,0,1,1,"B 500 ; B 500; W 1; B 500; W 1 ; B 500 ; W 3 ; B 2000",1000,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[2168,1248,0,80,48,0,0,1,0.5,0.5,0,0,[]],49,7920,[[1],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[1,"Default",0,1]],[[1488,1328,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,7921,[[-1],[0],[0],[0],[0],[2],[1]],[[0],[1,0,1,1,"F 176",300,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1584,1420,0,16,152,0,0,1,0.5,0.5,0,0,[]],49,7922,[[2],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[1,"Default",0,1]],[[1456,1328,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,7923,[[-1],[0],[0],[0],[0],[2],[1]],[[0],[1,0,1,1,"W 0.25 ; F 176",300,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1424,1328,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,7924,[[-1],[0],[0],[0],[0],[2],[1]],[[0],[1,0,1,1,"W 0.5 ; F 176",300,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1300,1328,0,24,80,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,7925,[[-1],[0],[0],[0],[0],[3],[1]],[[0],[1,0,1,1,"F 176",300,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1448,1424,0,16,152,0,0,1,0.5,0.5,0,0,[]],49,7926,[[3],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[1,"Default",0,1]],[[1008,1328,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,7927,[[-1],[0],[0],[0],[0],[4],[1]],[[0],[1,0,1,1,"W 0.5 ; F 176",300,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1040,1328,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,7928,[[-1],[0],[0],[0],[0],[4],[1]],[[0],[1,0,1,1,"W 0.25 ; F 176",300,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1072,1328,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,7929,[[-1],[0],[0],[0],[0],[4],[1]],[[0],[1,0,1,1,"F 176",300,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1176,1432,0,16,168,0,0,1,0.5,0.5,0,0,[]],49,7930,[[4],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[1,"Default",0,1]],[[976,1328,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,7931,[[-1],[0],[0],[0],[0],[4],[1]],[[0],[1,0,1,1,"W 0.75 ; F 176",300,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[944,1328,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,7932,[[-1],[0],[0],[0],[0],[4],[1]],[[0],[1,0,1,1,"W 1 ; F 176",300,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[912,1328,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,7933,[[-1],[0],[0],[0],[0],[4],[1]],[[0],[1,0,1,1,"W 1.25 ; F 176",300,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[880,1328,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,7934,[[-1],[0],[0],[0],[0],[4],[1]],[[0],[1,0,1,1,"W 1.25 ; F 176",300,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1112,1496,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,7935,[[-1],[0],[0],[0],[0],[4],[1]],[[0],[1,0,1,1,"W 1 ;F 176",175,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[608,1424,0,16,168,0,0,1,0.5,0.5,0,0,[]],49,7769,[[5],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[1,"Default",0,1]],[[536,1496,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,7770,[[-1],[0],[0],[0],[0],[5],[1]],[[0],[1,0,1,1,"W 1 ;F 176",175,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[336,1328,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,7777,[[-1],[0],[0],[0],[0],[5],[1]],[[0],[1,0,1,1,"W 0.5 ; F 176",300,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[368,1328,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,7782,[[-1],[0],[0],[0],[0],[5],[1]],[[0],[1,0,1,1,"W 0.25 ; F 176",300,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[400,1328,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,7783,[[-1],[0],[0],[0],[0],[5],[1]],[[0],[1,0,1,1,"F 176",300,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[304,1328,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,7862,[[-1],[0],[0],[0],[0],[5],[1]],[[0],[1,0,1,1,"W 0.75 ; F 176",300,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[272,1328,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,7872,[[-1],[0],[0],[0],[0],[5],[1]],[[0],[1,0,1,1,"W 1 ; F 176",300,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[240,1328,0,24,24,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,7879,[[-1],[0],[0],[0],[0],[5],[1]],[[0],[1,0,1,1,"W 1.25 ; F 176",300,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1112,1488,0,32,32,0,0,1,0.5,0.5,0,0,[]],163,7936,[],[[0]],[0,"Default",0,1]],[[536,1488,0,32,32,0,0,1,0.5,0.5,0,0,[]],163,7937,[],[[0]],[0,"Default",0,1]],[[2440,1448,0,104,288,0,0,1,0.5,0.5,0,0,[]],50,7938,[[-1],[0],[0],[0],[0],[1],[1]],[[0],[1,0,1,1,"B 2000",225,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[2408,1352,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,7697,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2408,1384,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,7939,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2408,1416,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,7940,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2408,1448,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,7941,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2408,1480,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,7942,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2408,1512,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,7943,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2408,1544,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,7944,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2479,1336,0,224,56,0,1.570796370506287,1,0,0,0,0,[]],51,7824,[],[[0],[1],[1,100,""]],[0,0]],[[712,296,0,264,1000,0,1.570796370506287,1,0,0,0,0,[]],51,7945,[],[[0],[1],[1,100,""]],[0,0]],[[304,1376,0,64,64,0,0,1,0.5,0.5,0,0,[]],60,7946,[["level1"]],[[1],[400,-200,800,0,0,0],[0,0,0,1,1]],[0,"Default",0,1]],[[1824,680,0,88,88,0,0,1,0.5,0.5,0,0,[]],50,7750,[[-1],[0],[0],[0],[0],[100],[1]],[[0],[1,1,1,0,"R 90 ; W 1; R 90 ; W 1; R 90 ; W 1; R 90 ; W 1",175,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1824,680,0,40,40,0,0,1,0.5,0.5,0,0,[]],50,7751,[[1],[1],[10],[0],[0],[2],[1]],[[0],[1,1,1,0,"L 90 ; W 2; L 90 ; W 2; L 90 ; W 2; L 90 ; W 2",175,0,0,360,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1824,728,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7863,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1824,632,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7864,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1872,680,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,7865,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1776,680,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,7866,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1848,656,0,32,32,0,0.7853981852531433,1,0.5,0.5,0,0,[]],47,7867,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1848,704,0,32,32,0,2.356194496154785,1,0.5,0.5,0,0,[]],47,7868,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1800,704,0,32,32,0,-2.356194734573364,1,0.5,0.5,0,0,[]],47,7869,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1800,656,0,32,32,0,-0.7853984832763672,1,0.5,0.5,0,0,[]],47,7891,[[0],[0]],[[0],[1]],[0,"Default",0,1]]],[]],["UI",2,883937412361232,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[240,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3097,[["right"]],[[0,1,0,1,1]],[0,"Default",0,1]],[[80,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3098,[["left"]],[[0,1,0,1,1]],[0,"Default",1,1]],[[560,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3099,[["up"]],[[1,1,1,1,1]],[0,"Default",3,1]],[[400,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3100,[["down"]],[[1,1,1,1,1]],[0,"Default",2,1]]],[]],["End Card",3,593437322285580,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],78,2607,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[12.04449462890625,194,0,615.9109497070313,67,0,0,1,0,0,0,0,[]],79,2608,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Timer for this level",2.5,0,0,0,0,0,-10,0,"",-1,0]],[[17.546875,248,0,604.90625,105,0,0,1,0,0,0,0,[]],80,2610,[[0],[0],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","13:40:40",4,0,63,50,0,0,-10,0,"",-1,0]],[[115.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,2611,[[0],[1],[0],[0],["replay"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Replay",""],[""],[2,2,0,0,0],["",""]],[0,"Replay",0,1]],[[524.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3086,[[0],[1],[0],[0],["next"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Next",""],[""],[2,2,0,0,0],["",""]],[0,"Next",0,1]],[[320.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3087,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > Back","Level Menu"],[""],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[320.75,521.8050537109375,0,384,96,0,0,1,0.5,0.5,0,0,[]],70,3088,[[1],[1],[0],[0],[""],["{\"size\": 22, \"left\": 70, \"right\": 18, \"alignY\": 60}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > DownloadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"DownloadReplay",0,1]]],[]],["Pause",4,751557522012329,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-310,678,0,274,31,0,0,1,0,0,0,0,[]],168,3089,[],[],[".ovo",0,1,"file"]],[[320,320,0,425,250,0,0,1,0.5,0.5,0,0,[]],82,3090,[],[[6,1,"",300,1,1,"",300,"overlay",1,"PauseClose",1,1]],[0,"Default",0,1]],[[214,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3091,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"",""],["PauseClose"],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[426,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3092,[[0],[1],[0],[0],["quit"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > GiveUp",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[115.5,202,0,409,118,0,0,1,0,0,0,0,[]],83,3093,[[1],[1],["pause"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Pause",4,0,57,50,0,0,-10,0,"",-1,0]],[[320.5,88,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3094,[[1],[1],[0],[0],["loadreplay"],["{\"size\": 16, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > LoadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"LoadReplay",0,1]],[[320.5,157,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3095,[[1],[0],[0],[0],["toggledebug"],["{\"size\": 15, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Debug > Toggle",""],[""],[2,2,0,0,0],["",""]],[0,"ToggleDebug",0,1]],[[78,448,0,484,134,0,0,1,0,0,0,0,[]],193,3096,[],[],[0,"Default",0,1]]],[]],["Overlay",5,844791991429024,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[432,4,0,203.0009155273438,64,0,0,1,0,0,0,0,[]],107,5488,[],[[1,0,1,0,1]],[2,2,2,2,0,1,0,0,1]],[[432,4,0,203,64,0,0,1,0,0,0,0,[]],84,3101,[[0],[0],[""],["en-us"],[0],[1],[1],["{\"alignY\": 85, \"alignX\": 45, \"size\": 28}"],[0],[1],[0],[0],[0]],[["",""],[1,0,1,0,1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",2,0,100,50,0,0,-10,0,"",-1,0]],[[88,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3102,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Pause",""],[""],[0,0,0,0,1],["",""]],[0,"Pause",0,1]],[[158,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3103,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Replay","1"],[""],[0,0,0,0,1],["",""]],[0,"Reload",0,1]]],[]],["End Game",6,439592983571037,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],85,3104,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[73,194,0,494,72,0,0,1,0,0,0,0,[]],86,3105,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],["{alignY:50}"],[0],[1],[0],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Your final time",2.5,0,50,50,0,0,-10,0,"",-1,0]],[[320,403,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3106,[[0],[1],[0],[0],[""],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Quit",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[73,243,0,494,85,0,0,1,0,0,0,0,[]],87,3108,[[0],[1],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",3,0,50,50,0,0,-10,0,"",-1,0]],[[73,318,0,494,25,0,0,1,0,0,0,0,[]],86,5480,[[1],[1],["tryagainhardmode"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Try again in hard mode!",1,0,50,50,0,0,-2,0,"",-1,0]]],[]]],[],[]],["Level 430",10000,2000,true,"Levels",114304341622532,[["Background",0,453569908303797,true,[255,255,255],false,0,0,1,false,false,1,0,0,[],[]],["Layer 0",1,550229312903022,true,[255,255,255],true,1,1,1,false,false,1,0,0,[[[200,296,0,248,117,0,0,1,0,0,0,0,[[]]],61,7341,[],[[1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>","1",7,0,50,0,0,0,0,0,"",-1,0]],[[2240,456,0,32,64,0,0,1,0.5,0.5,0,0,[]],42,7342,[["run"],[0],[1],[1],[0],[0.8],[0.5],[0],[1],[0],[0],[0],["ovo+"],[2],[0],[0],[0],[""],[0],[3],[0],[0],[0],[0],[0],[0],[0]],[[330,1500,1500,650,1500,1000,1,0,0,1],[],[1,0],[0,10000,360,1]],[1,"Default",0,1]],[[0,560,0,3040,552,0,0,1,0,0,0,0,[]],51,7343,[],[[0],[1],[1,100,""]],[0,0]],[[3048,224.0002136230469,0,3048,552,0,3.141592741012573,1,0,0,0,0,[]],51,7373,[],[[0],[1],[1,100,""]],[0,0]],[[8.000024795532227,-312,0,1408,672,0,1.570796370506287,1,0,0,0,0,[]],51,7344,[],[[0],[1],[1,100,""]],[0,0]],[[992,336,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7378,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1592,432,0,32,32,0,0.7853981852531433,1,0.5,0.5,0,0,[]],47,7957,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1568,456,0,88,88,0,0,1,0.5,0.5,0,0,[]],50,7958,[[-1],[0],[0],[0],[0],[1],[1]],[[0],[1,1,1,0,"R 90 ; W 1; R 90 ; W 1; R 90 ; W 1; R 90 ; W 1",175,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1584,440,0,16,16,0,0,1,0.5,0.5,0,0,[]],50,7959,[[1],[1],[10],[0],[0],[2],[1]],[[0],[1,1,0,0,"L 45 ; F 50; W 1.5; B 50 ; R 45; W 1",175,0,0,360,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1568,504,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7960,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1568,408,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7961,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1616,456,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,7962,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1520,456,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,7963,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1592,480,0,32,32,0,2.356194496154785,1,0.5,0.5,0,0,[]],47,7964,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1544,480,0,32,32,0,-2.356194734573364,1,0.5,0.5,0,0,[]],47,7965,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1544,432,0,32,32,0,-0.7853984832763672,1,0.5,0.5,0,0,[]],47,7966,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1552,440,0,16,16,0,0,1,0.5,0.5,0,0,[]],50,7968,[[1],[1],[10],[0],[0],[2],[1]],[[0],[1,1,0,0,"R 45 ; B 50; W 1.5; F 50 ; L 45; W 1",175,0,0,360,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1584,472,0,16,16,0,0,1,0.5,0.5,0,0,[]],50,7969,[[1],[1],[10],[0],[0],[2],[1]],[[0],[1,1,0,0,"L 135 ; B 50; W 1.5; F 50 ; R 135; W 1",175,0,0,1080,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1552,472,0,16,16,0,0,1,0.5,0.5,0,0,[]],50,7970,[[1],[1],[10],[0],[0],[2],[1]],[[0],[1,1,0,0,"L 45 ; B 50; W 1.5; F 50 ; R 45 ; W 1",175,0,0,360,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[2000,456,0,32,32,0,0.7853981852531433,1,0.5,0.5,0,0,[]],47,7967,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1976,480,0,88,88,0,0,1,0.5,0.5,0,0,[]],50,7971,[[-1],[0],[0],[0],[0],[1],[1]],[[0],[1,1,1,0,"R 90 ; W 1; R 90 ; W 1; R 90 ; W 1; R 90 ; W 1",175,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1992,464,0,16,16,0,0,1,0.5,0.5,0,0,[]],50,7972,[[1],[1],[10],[0],[0],[2],[1]],[[0],[1,1,0,0,"L 45 ; F 50; W 1.5; B 50 ; R 45; W 1",175,0,0,360,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1976,528,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7973,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1976,432,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7974,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2024,480,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,7975,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1928,480,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,7976,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2000,504,0,32,32,0,2.356194496154785,1,0.5,0.5,0,0,[]],47,7977,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1952,504,0,32,32,0,-2.356194734573364,1,0.5,0.5,0,0,[]],47,7978,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1952,456,0,32,32,0,-0.7853984832763672,1,0.5,0.5,0,0,[]],47,7979,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1960,464,0,16,16,0,0,1,0.5,0.5,0,0,[]],50,7980,[[1],[1],[10],[0],[0],[2],[1]],[[0],[1,1,0,0,"R 45 ; B 50; W 1.5; F 50 ; L 45; W 1",175,0,0,360,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1992,496,0,16,16,0,0,1,0.5,0.5,0,0,[]],50,7981,[[1],[1],[10],[0],[0],[2],[1]],[[0],[1,1,0,0,"L 135 ; B 50; W 1.5; F 50 ; R 135; W 1",175,0,0,1080,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1960,496,0,16,16,0,0,1,0.5,0.5,0,0,[]],50,7982,[[1],[1],[10],[0],[0],[2],[1]],[[0],[1,1,0,0,"L 45 ; B 50; W 1.5; F 50 ; R 45 ; W 1",175,0,0,360,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1728,224,0,96,320,0,1.570796370506287,1,0,0,0,0,[]],51,7983,[],[[0],[1],[1,100,""]],[0,0]],[[1424,336,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7984,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1456,336,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7985,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1488,336,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7986,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1520,336,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7987,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1552,336,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7988,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1584,336,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7989,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1616,336,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7990,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1648,336,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7991,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1680,336,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7992,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1712,336,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7993,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1392,304,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,7994,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1392,272,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,7995,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1392,240,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,7996,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1744,304,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,7997,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1744,272,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,7998,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1744,240,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,7999,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1864,224,0,96,32,0,1.570796370506287,1,0,0,0,0,[]],51,8000,[],[[0],[1],[1,100,""]],[0,0]],[[1848,336,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,8001,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1896,224,0,72,32,0,1.570796370506287,1,0,0,0,0,[]],51,8002,[],[[0],[1],[1,100,""]],[0,0]],[[1880,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,8003,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1928,216,0,48,32,0,1.570796370506287,1,0,0,0,0,[]],51,8004,[],[[0],[1],[1,100,""]],[0,0]],[[1912,280,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,8005,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1960,216,0,32,32,0,1.570796370506287,1,0,0,0,0,[]],51,8006,[],[[0],[1],[1,100,""]],[0,0]],[[1944,264,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,8007,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1992,216,0,32,32,0,1.570796370506287,1,0,0,0,0,[]],51,8008,[],[[0],[1],[1,100,""]],[0,0]],[[1976,264,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,8009,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2024,216,0,32,32,0,1.570796370506287,1,0,0,0,0,[]],51,8010,[],[[0],[1],[1,100,""]],[0,0]],[[2008,264,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,8011,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2056,216,0,48,32,0,1.570796370506287,1,0,0,0,0,[]],51,8012,[],[[0],[1],[1,100,""]],[0,0]],[[2040,280,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,8013,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2088,216,0,80,32,0,1.570796370506287,1,0,0,0,0,[]],51,8014,[],[[0],[1],[1,100,""]],[0,0]],[[2072,312,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,8015,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2120,224,0,96,32,0,1.570796370506287,1,0,0,0,0,[]],51,8016,[],[[0],[1],[1,100,""]],[0,0]],[[2104,336,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,8017,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2448,368,0,32,32,0,0.7853981852531433,1,0.5,0.5,0,0,[]],47,8018,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2424,392,0,88,88,0,0,1,0.5,0.5,0,0,[]],50,8019,[[-1],[0],[0],[0],[0],[1],[1]],[[0],[1,1,1,0,"R 90 ; W 1; R 90 ; W 1; R 90 ; W 1; R 90 ; W 1",175,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[2440,376,0,16,16,0,0,1,0.5,0.5,0,0,[]],50,8020,[[1],[1],[10],[0],[0],[2],[1]],[[0],[1,1,0,0,"L 45 ; F 50; W 1.5; B 50 ; R 45; W 1",175,0,0,360,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[2424,440,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,8021,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2424,344,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8022,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2472,392,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8023,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2376,392,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8024,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2448,416,0,32,32,0,2.356194496154785,1,0.5,0.5,0,0,[]],47,8025,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2400,416,0,32,32,0,-2.356194734573364,1,0.5,0.5,0,0,[]],47,8026,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2400,368,0,32,32,0,-0.7853984832763672,1,0.5,0.5,0,0,[]],47,8027,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2408,376,0,16,16,0,0,1,0.5,0.5,0,0,[]],50,8028,[[1],[1],[10],[0],[0],[2],[1]],[[0],[1,1,0,0,"R 45 ; B 50; W 1.5; F 50 ; L 45; W 1",175,0,0,360,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[2440,408,0,16,16,0,0,1,0.5,0.5,0,0,[]],50,8029,[[1],[1],[10],[0],[0],[2],[1]],[[0],[1,1,0,0,"L 135 ; B 50; W 1.5; F 50 ; R 135; W 1",175,0,0,1080,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[2408,408,0,16,16,0,0,1,0.5,0.5,0,0,[]],50,8030,[[1],[1],[10],[0],[0],[2],[1]],[[0],[1,1,0,0,"L 45 ; B 50; W 1.5; F 50 ; R 45 ; W 1",175,0,0,360,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[2720,456,0,32,32,0,0.7853981852531433,1,0.5,0.5,0,0,[]],47,8031,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2696,480,0,88,88,0,0,1,0.5,0.5,0,0,[]],50,8032,[[-1],[0],[0],[0],[0],[1],[1]],[[0],[1,1,1,0,"R 90 ; W 1; R 90 ; W 1; R 90 ; W 1; R 90 ; W 1",175,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[2712,464,0,16,16,0,0,1,0.5,0.5,0,0,[]],50,8033,[[1],[1],[10],[0],[0],[2],[1]],[[0],[1,1,0,0,"L 45 ; F 50; W 1.5; B 50 ; R 45; W 1",175,0,0,360,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[2696,528,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,8034,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2696,432,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8035,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2744,480,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8036,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2648,480,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8037,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2720,504,0,32,32,0,2.356194496154785,1,0.5,0.5,0,0,[]],47,8038,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2672,504,0,32,32,0,-2.356194734573364,1,0.5,0.5,0,0,[]],47,8039,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2672,456,0,32,32,0,-0.7853984832763672,1,0.5,0.5,0,0,[]],47,8040,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2680,464,0,16,16,0,0,1,0.5,0.5,0,0,[]],50,8041,[[1],[1],[10],[0],[0],[2],[1]],[[0],[1,1,0,0,"R 45 ; B 50; W 1.5; F 50 ; L 45; W 1",175,0,0,360,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[2712,496,0,16,16,0,0,1,0.5,0.5,0,0,[]],50,8042,[[1],[1],[10],[0],[0],[2],[1]],[[0],[1,1,0,0,"L 135 ; B 50; W 1.5; F 50 ; R 135; W 1",175,0,0,1080,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[2680,496,0,16,16,0,0,1,0.5,0.5,0,0,[]],50,8043,[[1],[1],[10],[0],[0],[2],[1]],[[0],[1,1,0,0,"L 45 ; B 50; W 1.5; F 50 ; R 45 ; W 1",175,0,0,360,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[2904,280,0,32,32,0,0.7853981852531433,1,0.5,0.5,0,0,[]],47,8044,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2880,304,0,88,88,0,0,1,0.5,0.5,0,0,[]],50,8045,[[-1],[0],[0],[0],[0],[1],[1]],[[0],[1,1,1,0,"R 90 ; W 1; R 90 ; W 1; R 90 ; W 1; R 90 ; W 1",175,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[2896,288,0,16,16,0,0,1,0.5,0.5,0,0,[]],50,8046,[[1],[1],[10],[0],[0],[2],[1]],[[0],[1,1,0,0,"L 45 ; F 50; W 1.5; B 50 ; R 45; W 1",175,0,0,360,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[2880,352,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,8047,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2880,256,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8048,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2928,304,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8049,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2832,304,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8050,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2904,328,0,32,32,0,2.356194496154785,1,0.5,0.5,0,0,[]],47,8051,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2856,328,0,32,32,0,-2.356194734573364,1,0.5,0.5,0,0,[]],47,8052,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2856,280,0,32,32,0,-0.7853984832763672,1,0.5,0.5,0,0,[]],47,8053,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2864,288,0,16,16,0,0,1,0.5,0.5,0,0,[]],50,8054,[[1],[1],[10],[0],[0],[2],[1]],[[0],[1,1,0,0,"R 45 ; B 50; W 1.5; F 50 ; L 45; W 1",175,0,0,360,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[2896,320,0,16,16,0,0,1,0.5,0.5,0,0,[]],50,8055,[[1],[1],[10],[0],[0],[2],[1]],[[0],[1,1,0,0,"L 135 ; B 50; W 1.5; F 50 ; R 135; W 1",175,0,0,1080,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[2864,320,0,16,16,0,0,1,0.5,0.5,0,0,[]],50,8056,[[1],[1],[10],[0],[0],[2],[1]],[[0],[1,1,0,0,"L 45 ; B 50; W 1.5; F 50 ; R 45 ; W 1",175,0,0,360,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[3240,496,0,88,88,0,0,1,0.5,0.5,0,0,[]],50,8057,[[-1],[0],[0],[0],[0],[1],[1]],[[0],[1,1,1,0,"R 360",175,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[3240,496,0,40,40,0,0,1,0.5,0.5,0,0,[]],50,8058,[[1],[1],[10],[0],[0],[2],[1]],[[0],[1,1,1,0,"L 360",175,0,0,360,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[3240,544,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,8059,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3240,448,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8060,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3288,496,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8061,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3192,496,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8062,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3264,472,0,32,32,0,0.7853981852531433,1,0.5,0.5,0,0,[]],47,8063,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3264,520,0,32,32,0,2.356194496154785,1,0.5,0.5,0,0,[]],47,8064,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3216,520,0,32,32,0,-2.356194734573364,1,0.5,0.5,0,0,[]],47,8065,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3216,472,0,32,32,0,-0.7853984832763672,1,0.5,0.5,0,0,[]],47,8066,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3368,496,0,88,88,0,0,1,0.5,0.5,0,0,[]],50,8067,[[-1],[0],[0],[0],[0],[1],[1]],[[0],[1,1,1,0,"R 360",175,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[3368,496,0,40,40,0,0,1,0.5,0.5,0,0,[]],50,8068,[[1],[1],[10],[0],[0],[2],[1]],[[0],[1,1,1,0,"L 360",175,0,0,360,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[3368,544,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,8069,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3368,448,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8070,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3416,496,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8071,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3320,496,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8072,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3392,472,0,32,32,0,0.7853981852531433,1,0.5,0.5,0,0,[]],47,8073,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3392,520,0,32,32,0,2.356194496154785,1,0.5,0.5,0,0,[]],47,8074,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3344,520,0,32,32,0,-2.356194734573364,1,0.5,0.5,0,0,[]],47,8075,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3344,472,0,32,32,0,-0.7853984832763672,1,0.5,0.5,0,0,[]],47,8076,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3496,496,0,88,88,0,0,1,0.5,0.5,0,0,[]],50,8077,[[-1],[0],[0],[0],[0],[1],[1]],[[0],[1,1,1,0,"R 360",175,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[3496,496,0,40,40,0,0,1,0.5,0.5,0,0,[]],50,8078,[[1],[1],[10],[0],[0],[2],[1]],[[0],[1,1,1,0,"L 360",175,0,0,360,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[3496,544,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,8079,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3496,448,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8080,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3544,496,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8081,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3448,496,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8082,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3520,472,0,32,32,0,0.7853981852531433,1,0.5,0.5,0,0,[]],47,8083,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3520,520,0,32,32,0,2.356194496154785,1,0.5,0.5,0,0,[]],47,8084,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3472,520,0,32,32,0,-2.356194734573364,1,0.5,0.5,0,0,[]],47,8085,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3472,472,0,32,32,0,-0.7853984832763672,1,0.5,0.5,0,0,[]],47,8086,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3624,496,0,88,88,0,0,1,0.5,0.5,0,0,[]],50,8087,[[-1],[0],[0],[0],[0],[1],[1]],[[0],[1,1,1,0,"R 360",175,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[3624,496,0,40,40,0,0,1,0.5,0.5,0,0,[]],50,8088,[[1],[1],[10],[0],[0],[2],[1]],[[0],[1,1,1,0,"L 360",175,0,0,360,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[3624,544,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,8089,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3624,448,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8090,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3672,496,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8091,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3576,496,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8092,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3648,472,0,32,32,0,0.7853981852531433,1,0.5,0.5,0,0,[]],47,8093,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3648,520,0,32,32,0,2.356194496154785,1,0.5,0.5,0,0,[]],47,8094,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3600,520,0,32,32,0,-2.356194734573364,1,0.5,0.5,0,0,[]],47,8095,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3600,472,0,32,32,0,-0.7853984832763672,1,0.5,0.5,0,0,[]],47,8096,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3752,496,0,88,88,0,0,1,0.5,0.5,0,0,[]],50,8097,[[-1],[0],[0],[0],[0],[1],[1]],[[0],[1,1,1,0,"R 360",175,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[3752,496,0,40,40,0,0,1,0.5,0.5,0,0,[]],50,8098,[[1],[1],[10],[0],[0],[2],[1]],[[0],[1,1,1,0,"L 360",175,0,0,360,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[3752,544,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,8099,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3752,448,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8100,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3800,496,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8101,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3704,496,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8102,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3776,472,0,32,32,0,0.7853981852531433,1,0.5,0.5,0,0,[]],47,8103,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3776,520,0,32,32,0,2.356194496154785,1,0.5,0.5,0,0,[]],47,8104,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3728,520,0,32,32,0,-2.356194734573364,1,0.5,0.5,0,0,[]],47,8105,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3728,472,0,32,32,0,-0.7853984832763672,1,0.5,0.5,0,0,[]],47,8106,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3880,496,0,88,88,0,0,1,0.5,0.5,0,0,[]],50,8107,[[-1],[0],[0],[0],[0],[1],[1]],[[0],[1,1,1,0,"R 360",175,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[3880,496,0,40,40,0,0,1,0.5,0.5,0,0,[]],50,8108,[[1],[1],[10],[0],[0],[2],[1]],[[0],[1,1,1,0,"L 360",175,0,0,360,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[3880,544,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,8109,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3880,448,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8110,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3928,496,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8111,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3832,496,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8112,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3904,472,0,32,32,0,0.7853981852531433,1,0.5,0.5,0,0,[]],47,8113,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3904,520,0,32,32,0,2.356194496154785,1,0.5,0.5,0,0,[]],47,8114,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3856,520,0,32,32,0,-2.356194734573364,1,0.5,0.5,0,0,[]],47,8115,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3856,472,0,32,32,0,-0.7853984832763672,1,0.5,0.5,0,0,[]],47,8116,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3240,288,0,88,88,0,0,1,0.5,0.5,0,0,[]],50,8117,[[-1],[0],[0],[0],[0],[1],[1]],[[0],[1,1,1,0,"R 360",175,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[3240,288,0,40,40,0,0,1,0.5,0.5,0,0,[]],50,8118,[[1],[1],[10],[0],[0],[2],[1]],[[0],[1,1,1,0,"L 360",175,0,0,360,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[3240,336,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,8119,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3240,240,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8120,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3288,288,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8121,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3192,288,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8122,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3264,264,0,32,32,0,0.7853981852531433,1,0.5,0.5,0,0,[]],47,8123,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3264,312,0,32,32,0,2.356194496154785,1,0.5,0.5,0,0,[]],47,8124,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3216,312,0,32,32,0,-2.356194734573364,1,0.5,0.5,0,0,[]],47,8125,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3216,264,0,32,32,0,-0.7853984832763672,1,0.5,0.5,0,0,[]],47,8126,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3368,288,0,88,88,0,0,1,0.5,0.5,0,0,[]],50,8127,[[-1],[0],[0],[0],[0],[1],[1]],[[0],[1,1,1,0,"R 360",175,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[3368,288,0,40,40,0,0,1,0.5,0.5,0,0,[]],50,8128,[[1],[1],[10],[0],[0],[2],[1]],[[0],[1,1,1,0,"L 360",175,0,0,360,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[3368,336,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,8129,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3368,240,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8130,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3416,288,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8131,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3320,288,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8132,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3392,264,0,32,32,0,0.7853981852531433,1,0.5,0.5,0,0,[]],47,8133,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3392,312,0,32,32,0,2.356194496154785,1,0.5,0.5,0,0,[]],47,8134,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3344,312,0,32,32,0,-2.356194734573364,1,0.5,0.5,0,0,[]],47,8135,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3344,264,0,32,32,0,-0.7853984832763672,1,0.5,0.5,0,0,[]],47,8136,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3496,288,0,88,88,0,0,1,0.5,0.5,0,0,[]],50,8137,[[-1],[0],[0],[0],[0],[1],[1]],[[0],[1,1,1,0,"R 360",175,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[3496,288,0,40,40,0,0,1,0.5,0.5,0,0,[]],50,8138,[[1],[1],[10],[0],[0],[2],[1]],[[0],[1,1,1,0,"L 360",175,0,0,360,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[3496,336,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,8139,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3496,240,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8140,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3544,288,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8141,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3448,288,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8142,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3520,264,0,32,32,0,0.7853981852531433,1,0.5,0.5,0,0,[]],47,8143,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3520,312,0,32,32,0,2.356194496154785,1,0.5,0.5,0,0,[]],47,8144,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3472,312,0,32,32,0,-2.356194734573364,1,0.5,0.5,0,0,[]],47,8145,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3472,264,0,32,32,0,-0.7853984832763672,1,0.5,0.5,0,0,[]],47,8146,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3624,288,0,88,88,0,0,1,0.5,0.5,0,0,[]],50,8147,[[-1],[0],[0],[0],[0],[1],[1]],[[0],[1,1,1,0,"R 360",175,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[3624,288,0,40,40,0,0,1,0.5,0.5,0,0,[]],50,8148,[[1],[1],[10],[0],[0],[2],[1]],[[0],[1,1,1,0,"L 360",175,0,0,360,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[3624,336,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,8149,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3624,240,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8150,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3672,288,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8151,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3576,288,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8152,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3648,264,0,32,32,0,0.7853981852531433,1,0.5,0.5,0,0,[]],47,8153,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3648,312,0,32,32,0,2.356194496154785,1,0.5,0.5,0,0,[]],47,8154,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3600,312,0,32,32,0,-2.356194734573364,1,0.5,0.5,0,0,[]],47,8155,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3600,264,0,32,32,0,-0.7853984832763672,1,0.5,0.5,0,0,[]],47,8156,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3752,288,0,88,88,0,0,1,0.5,0.5,0,0,[]],50,8157,[[-1],[0],[0],[0],[0],[1],[1]],[[0],[1,1,1,0,"R 360",175,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[3752,288,0,40,40,0,0,1,0.5,0.5,0,0,[]],50,8158,[[1],[1],[10],[0],[0],[2],[1]],[[0],[1,1,1,0,"L 360",175,0,0,360,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[3752,336,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,8159,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3752,240,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8160,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3800,288,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8161,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3704,288,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8162,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3776,264,0,32,32,0,0.7853981852531433,1,0.5,0.5,0,0,[]],47,8163,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3776,312,0,32,32,0,2.356194496154785,1,0.5,0.5,0,0,[]],47,8164,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3728,312,0,32,32,0,-2.356194734573364,1,0.5,0.5,0,0,[]],47,8165,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3728,264,0,32,32,0,-0.7853984832763672,1,0.5,0.5,0,0,[]],47,8166,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3880,288,0,88,88,0,0,1,0.5,0.5,0,0,[]],50,8167,[[-1],[0],[0],[0],[0],[1],[1]],[[0],[1,1,1,0,"R 360",175,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[3880,288,0,40,40,0,0,1,0.5,0.5,0,0,[]],50,8168,[[1],[1],[10],[0],[0],[2],[1]],[[0],[1,1,1,0,"L 360",175,0,0,360,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[3880,336,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,8169,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3880,240,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8170,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3928,288,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8171,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3832,288,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8172,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3904,264,0,32,32,0,0.7853981852531433,1,0.5,0.5,0,0,[]],47,8173,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3904,312,0,32,32,0,2.356194496154785,1,0.5,0.5,0,0,[]],47,8174,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3856,312,0,32,32,0,-2.356194734573364,1,0.5,0.5,0,0,[]],47,8175,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3856,264,0,32,32,0,-0.7853984832763672,1,0.5,0.5,0,0,[]],47,8176,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3336,424,0,8,232,0,1.570796370506287,1,0,0,0,0,[]],51,8178,[],[[0],[1],[1,100,""]],[0,0]],[[4096,392,0,88,88,0,0,1,0.5,0.5,0,0,[]],50,8179,[[-1],[0],[0],[0],[0],[1],[1]],[[0],[1,1,1,0,"R 360",175,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[4096,392,0,40,40,0,0,1,0.5,0.5,0,0,[]],50,8180,[[1],[1],[10],[0],[0],[2],[1]],[[0],[1,1,1,0,"L 360",175,0,0,360,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[4096,440,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,8181,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4096,344,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8182,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4144,392,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8183,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4048,392,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8184,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4120,368,0,32,32,0,0.7853981852531433,1,0.5,0.5,0,0,[]],47,8185,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4120,416,0,32,32,0,2.356194496154785,1,0.5,0.5,0,0,[]],47,8186,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4072,416,0,32,32,0,-2.356194734573364,1,0.5,0.5,0,0,[]],47,8187,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4072,368,0,32,32,0,-0.7853984832763672,1,0.5,0.5,0,0,[]],47,8188,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4528,392,0,88,88,0,0,1,0.5,0.5,0,0,[]],50,8189,[[-1],[0],[0],[0],[0],[1],[1]],[[0],[1,1,1,0,"R 360",175,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[4528,392,0,40,40,0,0,1,0.5,0.5,0,0,[]],50,8190,[[1],[1],[10],[0],[0],[2],[1]],[[0],[1,1,1,0,"L 360",175,0,0,360,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[4528,440,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,8191,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4528,344,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8192,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4576,392,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8193,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4480,392,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8194,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4552,368,0,32,32,0,0.7853981852531433,1,0.5,0.5,0,0,[]],47,8195,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4552,416,0,32,32,0,2.356194496154785,1,0.5,0.5,0,0,[]],47,8196,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4504,416,0,32,32,0,-2.356194734573364,1,0.5,0.5,0,0,[]],47,8197,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4504,368,0,32,32,0,-0.7853984832763672,1,0.5,0.5,0,0,[]],47,8198,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4304,288,0,88,88,0,0,1,0.5,0.5,0,0,[]],50,8199,[[-1],[0],[0],[0],[0],[1],[1]],[[0],[1,1,1,0,"R 360",175,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[4304,288,0,40,40,0,0,1,0.5,0.5,0,0,[]],50,8200,[[1],[1],[10],[0],[0],[2],[1]],[[0],[1,1,1,0,"L 360",175,0,0,360,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[4304,336,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,8201,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4304,240,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8202,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4352,288,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8203,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4256,288,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8204,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4328,264,0,32,32,0,0.7853981852531433,1,0.5,0.5,0,0,[]],47,8205,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4328,312,0,32,32,0,2.356194496154785,1,0.5,0.5,0,0,[]],47,8206,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4280,312,0,32,32,0,-2.356194734573364,1,0.5,0.5,0,0,[]],47,8207,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4280,264,0,32,32,0,-0.7853984832763672,1,0.5,0.5,0,0,[]],47,8208,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4304,496,0,88,88,0,0,1,0.5,0.5,0,0,[]],50,8209,[[-1],[0],[0],[0],[0],[1],[1]],[[0],[1,1,1,0,"R 360",175,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[4304,496,0,40,40,0,0,1,0.5,0.5,0,0,[]],50,8210,[[1],[1],[10],[0],[0],[2],[1]],[[0],[1,1,1,0,"L 360",175,0,0,360,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[4304,544,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,8211,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4304,448,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8212,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4352,496,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8213,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4256,496,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8214,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4328,472,0,32,32,0,0.7853981852531433,1,0.5,0.5,0,0,[]],47,8215,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4328,520,0,32,32,0,2.356194496154785,1,0.5,0.5,0,0,[]],47,8216,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4280,520,0,32,32,0,-2.356194734573364,1,0.5,0.5,0,0,[]],47,8217,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4280,472,0,32,32,0,-0.7853984832763672,1,0.5,0.5,0,0,[]],47,8218,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4856,368,0,32,32,0,0.7853981852531433,1,0.5,0.5,0,0,[]],47,8219,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4832,392,0,88,88,0,0,1,0.5,0.5,0,0,[]],50,8220,[[-1],[0],[0],[0],[0],[1],[1]],[[0],[1,1,1,0,"R 90 ; W 1; R 90 ; W 1; R 90 ; W 1; R 90 ; W 1",175,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[4848,376,0,16,16,0,0,1,0.5,0.5,0,0,[]],50,8221,[[1],[1],[10],[0],[0],[2],[1]],[[0],[1,1,0,0,"L 45 ; F 50; W 1.5; B 50 ; R 45; W 1",175,0,0,360,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[4832,440,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,8222,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4832,344,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8223,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4880,392,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8224,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4784,392,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8225,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4856,416,0,32,32,0,2.356194496154785,1,0.5,0.5,0,0,[]],47,8226,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4808,416,0,32,32,0,-2.356194734573364,1,0.5,0.5,0,0,[]],47,8227,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4808,368,0,32,32,0,-0.7853984832763672,1,0.5,0.5,0,0,[]],47,8228,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4816,376,0,16,16,0,0,1,0.5,0.5,0,0,[]],50,8229,[[1],[1],[10],[0],[0],[2],[1]],[[0],[1,1,0,0,"R 45 ; B 50; W 1.5; F 50 ; L 45; W 1",175,0,0,360,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[4848,408,0,16,16,0,0,1,0.5,0.5,0,0,[]],50,8230,[[1],[1],[10],[0],[0],[2],[1]],[[0],[1,1,0,0,"L 135 ; B 50; W 1.5; F 50 ; R 135; W 1",175,0,0,1080,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[4816,408,0,16,16,0,0,1,0.5,0.5,0,0,[]],50,8231,[[1],[1],[10],[0],[0],[2],[1]],[[0],[1,1,0,0,"L 45 ; B 50; W 1.5; F 50 ; R 45 ; W 1",175,0,0,360,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[5128,264,0,32,32,0,0.7853981852531433,1,0.5,0.5,0,0,[]],47,8232,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[5104,288,0,88,88,0,0,1,0.5,0.5,0,0,[]],50,8233,[[-1],[0],[0],[0],[0],[1],[1]],[[0],[1,1,1,0,"R 90 ; W 1; R 90 ; W 1; R 90 ; W 1; R 90 ; W 1",175,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[5120,272,0,16,16,0,0,1,0.5,0.5,0,0,[]],50,8234,[[1],[1],[10],[0],[0],[2],[1]],[[0],[1,1,0,0,"L 45 ; F 50; W 1.5; B 50 ; R 45; W 1",175,0,0,360,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[5104,336,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,8235,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[5104,240,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8236,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[5152,288,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8237,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[5056,288,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8238,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[5128,312,0,32,32,0,2.356194496154785,1,0.5,0.5,0,0,[]],47,8239,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[5080,312,0,32,32,0,-2.356194734573364,1,0.5,0.5,0,0,[]],47,8240,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[5080,264,0,32,32,0,-0.7853984832763672,1,0.5,0.5,0,0,[]],47,8241,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[5088,272,0,16,16,0,0,1,0.5,0.5,0,0,[]],50,8242,[[1],[1],[10],[0],[0],[2],[1]],[[0],[1,1,0,0,"R 45 ; B 50; W 1.5; F 50 ; L 45; W 1",175,0,0,360,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[5120,304,0,16,16,0,0,1,0.5,0.5,0,0,[]],50,8243,[[1],[1],[10],[0],[0],[2],[1]],[[0],[1,1,0,0,"L 135 ; B 50; W 1.5; F 50 ; R 135; W 1",175,0,0,1080,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[5088,304,0,16,16,0,0,1,0.5,0.5,0,0,[]],50,8244,[[1],[1],[10],[0],[0],[2],[1]],[[0],[1,1,0,0,"L 45 ; B 50; W 1.5; F 50 ; R 45 ; W 1",175,0,0,360,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[5128,472,0,32,32,0,0.7853981852531433,1,0.5,0.5,0,0,[]],47,8245,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[5104,496,0,88,88,0,0,1,0.5,0.5,0,0,[]],50,8246,[[-1],[0],[0],[0],[0],[1],[1]],[[0],[1,1,1,0,"R 90 ; W 1; R 90 ; W 1; R 90 ; W 1; R 90 ; W 1",175,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[5120,480,0,16,16,0,0,1,0.5,0.5,0,0,[]],50,8247,[[1],[1],[10],[0],[0],[2],[1]],[[0],[1,1,0,0,"L 45 ; F 50; W 1.5; B 50 ; R 45; W 1",175,0,0,360,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[5104,544,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,8248,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[5104,448,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8249,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[5152,496,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8250,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[5056,496,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8251,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[5128,520,0,32,32,0,2.356194496154785,1,0.5,0.5,0,0,[]],47,8252,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[5080,520,0,32,32,0,-2.356194734573364,1,0.5,0.5,0,0,[]],47,8253,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[5080,472,0,32,32,0,-0.7853984832763672,1,0.5,0.5,0,0,[]],47,8254,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[5088,480,0,16,16,0,0,1,0.5,0.5,0,0,[]],50,8255,[[1],[1],[10],[0],[0],[2],[1]],[[0],[1,1,0,0,"R 45 ; B 50; W 1.5; F 50 ; L 45; W 1",175,0,0,360,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[5120,512,0,16,16,0,0,1,0.5,0.5,0,0,[]],50,8256,[[1],[1],[10],[0],[0],[2],[1]],[[0],[1,1,0,0,"L 135 ; B 50; W 1.5; F 50 ; R 135; W 1",175,0,0,1080,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[5088,512,0,16,16,0,0,1,0.5,0.5,0,0,[]],50,8257,[[1],[1],[10],[0],[0],[2],[1]],[[0],[1,1,0,0,"L 45 ; B 50; W 1.5; F 50 ; R 45 ; W 1",175,0,0,360,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[5456,392,0,97,199,0,0,1,0.5257731676101685,0.4974874258041382,0,0,[]],44,8258,[],[[0]],[0,"Default",0,1]],[[5528,-312,0,1056,1424,0,0,1,0,0,0,0,[]],51,8259,[],[[0],[1],[1,100,""]],[0,0]],[[3204,408,0,136,32,0,0,1,0.5,0.5,0,0,[]],49,8260,[[200],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[1,"Default",0,1]],[[3120,424,0,24,40,0,0,1,0.5,0.5,0,0,[]],50,8261,[[-1],[0],[0],[0],[0],[200],[1]],[[0],[1,0,1,1,"F 2000",175,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[3984,544,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8262,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4016,544,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8263,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4048,544,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8264,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4080,544,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8265,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4016,544,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8266,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4112,544,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8267,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4176,544,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8268,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4208,544,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8269,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4144,544,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8270,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4408,544,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8271,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4472,544,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8272,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4504,544,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8273,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4440,544,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8274,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4536,544,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8275,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4600,544,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8276,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4632,544,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8277,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4568,544,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8278,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4664,544,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8279,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4728,544,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8280,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4760,544,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8281,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4696,544,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8282,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4792,544,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8283,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4856,544,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8284,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4824,544,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8286,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[5016,544,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8289,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[5416,544,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8295,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[5480,544,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8296,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[5512,544,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8297,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[5448,544,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8298,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[5352,544,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8300,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[5384,544,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8301,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[5320,544,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8302,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[5192,544,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8291,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[5256,544,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8292,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[5288,544,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8293,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[5224,544,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8294,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1160,496,0,88,88,0,0,1,0.5,0.5,0,0,[]],50,7947,[[-1],[0],[0],[0],[0],[1],[1]],[[0],[1,1,1,0,"R 90 ; W 1; R 90 ; W 1; R 90 ; W 1; R 90 ; W 1",175,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1160,496,0,40,40,0,0,1,0.5,0.5,0,0,[]],50,7948,[[1],[1],[10],[0],[0],[2],[1]],[[0],[1,1,1,0,"L 90 ; W 2; L 90 ; W 2; L 90 ; W 2; L 90 ; W 2",175,0,0,360,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1160,544,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7949,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1160,448,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7950,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1208,496,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,7951,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1184,472,0,32,32,0,0.7853981852531433,1,0.5,0.5,0,0,[]],47,7952,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1184,520,0,32,32,0,2.356194496154785,1,0.5,0.5,0,0,[]],47,7953,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1136,520,0,32,32,0,-2.356194734573364,1,0.5,0.5,0,0,[]],47,7954,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1136,472,0,32,32,0,-0.7853984832763672,1,0.5,0.5,0,0,[]],47,7955,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1112,496,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,7956,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[992,288,0,88,88,0,0,1,0.5,0.5,0,0,[]],50,7376,[[-1],[0],[0],[0],[0],[1],[1]],[[0],[1,1,1,0,"R 90 ; W 1; R 90 ; W 1; R 90 ; W 1; R 90 ; W 1",175,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[992,288,0,40,40,0,0,1,0.5,0.5,0,0,[]],50,7377,[[1],[1],[10],[0],[0],[2],[1]],[[0],[1,1,1,0,"L 90 ; W 2; L 90 ; W 2; L 90 ; W 2; L 90 ; W 2",175,0,0,360,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[992,336,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7379,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[992,240,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7380,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1040,288,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,7381,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1016,264,0,32,32,0,0.7853981852531433,1,0.5,0.5,0,0,[]],47,7382,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1016,312,0,32,32,0,2.356194496154785,1,0.5,0.5,0,0,[]],47,7383,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[968,312,0,32,32,0,-2.356194734573364,1,0.5,0.5,0,0,[]],47,7384,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[968,264,0,32,32,0,-0.7853984832763672,1,0.5,0.5,0,0,[]],47,7385,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[944,288,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8299,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[800,496,0,88,88,0,0,1,0.5,0.5,0,0,[]],50,7365,[[-1],[0],[0],[0],[0],[1],[1]],[[0],[1,1,1,0,"R 90 ; W 1; R 90 ; W 1; R 90 ; W 1; R 90 ; W 1",175,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[800,496,0,40,40,0,0,1,0.5,0.5,0,0,[]],50,7366,[[1],[1],[10],[0],[0],[2],[1]],[[0],[1,1,1,0,"L 90 ; W 2; L 90 ; W 2; L 90 ; W 2; L 90 ; W 2",175,0,0,360,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[800,544,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7367,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[800,448,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7368,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[848,496,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,7369,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[824,472,0,32,32,0,0.7853981852531433,1,0.5,0.5,0,0,[]],47,7370,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[824,520,0,32,32,0,2.356194496154785,1,0.5,0.5,0,0,[]],47,7371,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[776,520,0,32,32,0,-2.356194734573364,1,0.5,0.5,0,0,[]],47,7372,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[776,472,0,32,32,0,-0.7853984832763672,1,0.5,0.5,0,0,[]],47,7374,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[752,496,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,7375,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[632,288,0,88,88,0,0,1,0.5,0.5,0,0,[]],50,7355,[[-1],[0],[0],[0],[0],[1],[1]],[[0],[1,1,1,0,"R 90 ; W 1; R 90 ; W 1; R 90 ; W 1; R 90 ; W 1",175,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[632,288,0,40,40,0,0,1,0.5,0.5,0,0,[]],50,7356,[[1],[1],[10],[0],[0],[2],[1]],[[0],[1,1,1,0,"L 90 ; W 2; L 90 ; W 2; L 90 ; W 2; L 90 ; W 2",175,0,0,360,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[632,336,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7357,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[632,240,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7358,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[680,288,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,7359,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[656,264,0,32,32,0,0.7853981852531433,1,0.5,0.5,0,0,[]],47,7360,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[656,312,0,32,32,0,2.356194496154785,1,0.5,0.5,0,0,[]],47,7361,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[608,312,0,32,32,0,-2.356194734573364,1,0.5,0.5,0,0,[]],47,7362,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[608,264,0,32,32,0,-0.7853984832763672,1,0.5,0.5,0,0,[]],47,7363,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[584,288,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,7364,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[432,496,0,88,88,0,0,1,0.5,0.5,0,0,[]],50,7345,[[-1],[0],[0],[0],[0],[1],[1]],[[0],[1,1,1,0,"R 90 ; W 1; R 90 ; W 1; R 90 ; W 1; R 90 ; W 1",175,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[432,496,0,40,40,0,0,1,0.5,0.5,0,0,[]],50,7346,[[1],[1],[10],[0],[0],[2],[1]],[[0],[1,1,1,0,"L 90 ; W 2; L 90 ; W 2; L 90 ; W 2; L 90 ; W 2",175,0,0,360,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[432,544,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7347,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[432,448,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7348,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[480,496,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,7349,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[456,472,0,32,32,0,0.7853981852531433,1,0.5,0.5,0,0,[]],47,7350,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[456,520,0,32,32,0,2.356194496154785,1,0.5,0.5,0,0,[]],47,7351,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[408,520,0,32,32,0,-2.356194734573364,1,0.5,0.5,0,0,[]],47,7352,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[408,472,0,32,32,0,-0.7853984832763672,1,0.5,0.5,0,0,[]],47,7353,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[384,496,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,7354,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[4936,520,0,64,64,0,0,1,0.5,0.5,0,0,[]],60,8285,[["level43"]],[[1],[400,-200,800,0,0,0],[0,0,0,1,1]],[0,"Default",0,1]],[[88,544,0,88,64,0,-1.570796489715576,1,0.5,0.5,0,0,[]],50,8287,[[-1],[0],[0],[0],[0],[1],[1]],[[0],[1,1,1,0,"F 64 ; W 0.5; B 64",160,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[96,216,0,88,64,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,8288,[[-1],[0],[0],[0],[0],[1],[1]],[[0],[1,1,1,0,"F 64 ; W 0.5; B 64",160,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[152,544,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8290,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[184,544,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8303,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[216,544,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8304,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[248,544,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8305,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[280,544,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8306,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[312,544,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8307,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[344,544,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8308,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[376,544,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8309,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[504,544,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8310,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[536,544,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8311,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[568,544,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8312,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[600,544,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8313,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[632,544,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8314,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[664,544,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8315,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[696,544,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8316,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[728,544,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8317,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[872,544,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8318,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[904,544,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8319,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[936,544,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8320,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[968,544,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8321,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1000,544,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8322,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1032,544,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8323,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1064,544,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8324,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1096,544,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,8325,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[3040,560,0,2512,552,0,0,1,0,0,0,0,[]],51,8326,[],[[0],[1],[1,100,""]],[0,0]],[[6056,224,0,3008,552,0,3.141592741012573,1,0,0,0,0,[]],51,8327,[],[[0],[1],[1,100,""]],[0,0]]],[]],["UI",2,409815147834546,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[240,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3097,[["right"]],[[0,1,0,1,1]],[0,"Default",0,1]],[[80,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3098,[["left"]],[[0,1,0,1,1]],[0,"Default",1,1]],[[560,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3099,[["up"]],[[1,1,1,1,1]],[0,"Default",3,1]],[[400,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3100,[["down"]],[[1,1,1,1,1]],[0,"Default",2,1]]],[]],["End Card",3,575014400932759,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],78,2607,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[12.04449462890625,194,0,615.9109497070313,67,0,0,1,0,0,0,0,[]],79,2608,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Timer for this level",2.5,0,0,0,0,0,-10,0,"",-1,0]],[[17.546875,248,0,604.90625,105,0,0,1,0,0,0,0,[]],80,2610,[[0],[0],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","13:40:40",4,0,63,50,0,0,-10,0,"",-1,0]],[[115.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,2611,[[0],[1],[0],[0],["replay"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Replay",""],[""],[2,2,0,0,0],["",""]],[0,"Replay",0,1]],[[524.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3086,[[0],[1],[0],[0],["next"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Next",""],[""],[2,2,0,0,0],["",""]],[0,"Next",0,1]],[[320.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3087,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > Back","Level Menu"],[""],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[320.75,521.8050537109375,0,384,96,0,0,1,0.5,0.5,0,0,[]],70,3088,[[1],[1],[0],[0],[""],["{\"size\": 22, \"left\": 70, \"right\": 18, \"alignY\": 60}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > DownloadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"DownloadReplay",0,1]]],[]],["Pause",4,180351207901906,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-310,678,0,274,31,0,0,1,0,0,0,0,[]],168,3089,[],[],[".ovo",0,1,"file"]],[[320,320,0,425,250,0,0,1,0.5,0.5,0,0,[]],82,3090,[],[[6,1,"",300,1,1,"",300,"overlay",1,"PauseClose",1,1]],[0,"Default",0,1]],[[214,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3091,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"",""],["PauseClose"],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[426,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3092,[[0],[1],[0],[0],["quit"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > GiveUp",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[115.5,202,0,409,118,0,0,1,0,0,0,0,[]],83,3093,[[1],[1],["pause"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Pause",4,0,57,50,0,0,-10,0,"",-1,0]],[[320.5,88,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3094,[[1],[1],[0],[0],["loadreplay"],["{\"size\": 16, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > LoadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"LoadReplay",0,1]],[[320.5,157,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3095,[[1],[0],[0],[0],["toggledebug"],["{\"size\": 15, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Debug > Toggle",""],[""],[2,2,0,0,0],["",""]],[0,"ToggleDebug",0,1]],[[78,448,0,484,134,0,0,1,0,0,0,0,[]],193,3096,[],[],[0,"Default",0,1]]],[]],["Overlay",5,313726709889958,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[432,4,0,203.0009155273438,64,0,0,1,0,0,0,0,[]],107,5488,[],[[1,0,1,0,1]],[2,2,2,2,0,1,0,0,1]],[[432,4,0,203,64,0,0,1,0,0,0,0,[]],84,3101,[[0],[0],[""],["en-us"],[0],[1],[1],["{\"alignY\": 85, \"alignX\": 45, \"size\": 28}"],[0],[1],[0],[0],[0]],[["",""],[1,0,1,0,1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",2,0,100,50,0,0,-10,0,"",-1,0]],[[88,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3102,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Pause",""],[""],[0,0,0,0,1],["",""]],[0,"Pause",0,1]],[[158,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3103,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Replay","1"],[""],[0,0,0,0,1],["",""]],[0,"Reload",0,1]]],[]],["End Game",6,232043411249068,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],85,3104,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[73,194,0,494,72,0,0,1,0,0,0,0,[]],86,3105,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],["{alignY:50}"],[0],[1],[0],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Your final time",2.5,0,50,50,0,0,-10,0,"",-1,0]],[[320,403,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3106,[[0],[1],[0],[0],[""],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Quit",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[73,243,0,494,85,0,0,1,0,0,0,0,[]],87,3108,[[0],[1],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",3,0,50,50,0,0,-10,0,"",-1,0]],[[73,318,0,494,25,0,0,1,0,0,0,0,[]],86,5480,[[1],[1],["tryagainhardmode"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Try again in hard mode!",1,0,50,50,0,0,-2,0,"",-1,0]]],[]]],[[null,174,8177,[],[],[""]]],[]],["Level 440",10000,2000,true,"Levels",219711835604511,[["Background",0,478208297841509,true,[255,255,255],false,0,0,1,false,false,1,0,0,[],[]],["Layer 0",1,249160163605015,true,[255,255,255],true,1,1,1,false,false,1,0,0,[[[760,1648,0,248,117,0,0,1,0,0,0,0,[[]]],61,8329,[],[[1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>","1",7,0,50,0,0,0,0,0,"",-1,0]],[[952,1712,0,32,64,0,0,1,0.5,0.5,0,0,[]],42,8330,[["run"],[0],[1],[1],[0],[0.8],[0.5],[0],[1],[0],[0],[0],["ovo+"],[2],[0],[0],[0],[""],[0],[3],[0],[0],[0],[0],[0],[0],[0]],[[330,1500,1500,650,1500,1000,1,0,0,1],[],[1,0],[0,10000,360,1]],[1,"Default",0,1]],[[664,1776,0,440,8,0,0,1,0,0,0,0,[]],67,8345,[],[[1]],[0,0]],[[672,1320,0,464,8,0,1.570796370506287,1,0,0,0,0,[]],67,8331,[],[[1]],[0,0]],[[1112,1320,0,464,8,0,1.570796370506287,1,0,0,0,0,[]],67,8332,[],[[1]],[0,0]],[[688,1616,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,8336,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[720,1616,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,8337,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[736,1600,0,64,8,0,3.141592741012573,1,0,0,0,0,[]],51,8338,[],[[0],[1],[1,100,""]],[0,0]],[[752,1616,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,8333,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[784,1616,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,8334,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[800,1600,0,64,8,0,3.141592741012573,1,0,0,0,0,[]],51,8335,[],[[0],[1],[1,100,""]],[0,0]],[[816,1616,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,8339,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[848,1616,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,8340,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[864,1600,0,64,8,0,3.141592741012573,1,0,0,0,0,[]],51,8341,[],[[0],[1],[1,100,""]],[0,0]],[[880,1616,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,8342,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[912,1616,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,8343,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[928,1600,0,64,8,0,3.141592741012573,1,0,0,0,0,[]],51,8344,[],[[0],[1],[1,100,""]],[0,0]],[[944,1616,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,8346,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[976,1616,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,8347,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[992,1600,0,64,8,0,3.141592741012573,1,0,0,0,0,[]],51,8348,[],[[0],[1],[1,100,""]],[0,0]],[[744,1328,0,264,72,0,1.570796370506287,1,0,0,0,0,[]],51,8349,[],[[0],[1],[1,100,""]],[0,0]],[[992,1496,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,8351,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1024,1496,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,8352,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1040,1480,0,64,8,0,3.141592741012573,1,0,0,0,0,[]],51,8353,[],[[0],[1],[1,100,""]],[0,0]],[[1056,1496,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,8354,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1088,1496,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,8355,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1104,1480,0,64,8,0,3.141592741012573,1,0,0,0,0,[]],51,8356,[],[[0],[1],[1,100,""]],[0,0]],[[864,1496,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,8350,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[896,1496,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,8357,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[912,1480,0,64,8,0,3.141592741012573,1,0,0,0,0,[]],51,8358,[],[[0],[1],[1,100,""]],[0,0]],[[928,1496,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,8359,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[960,1496,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,8360,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[976,1480,0,64,8,0,3.141592741012573,1,0,0,0,0,[]],51,8361,[],[[0],[1],[1,100,""]],[0,0]],[[1104,1328,0,144,128,0,1.570796370506287,1,0,0,0,0,[]],51,8362,[],[[0],[1],[1,100,""]],[0,0]],[[576,1760,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8364,[[0],[0]],[[0],[0]],[0,"Default",0,1]],[[560,1328,0,448,8,0,1.570796370506287,1,0,0,0,0,[]],51,8369,[],[[0],[1],[1,100,""]],[0,0]],[[576,1728,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8365,[[0],[0]],[[0],[0]],[0,"Default",0,1]],[[576,1696,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8366,[[0],[0]],[[0],[0]],[0,"Default",0,1]],[[576,1664,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8367,[[0],[0]],[[0],[0]],[0,"Default",0,1]],[[576,1632,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8368,[[0],[0]],[[0],[0]],[0,"Default",0,1]],[[576,1600,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8370,[[0],[0]],[[0],[0]],[0,"Default",0,1]],[[576,1568,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8371,[[0],[0]],[[0],[0]],[0,"Default",0,1]],[[576,1536,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8372,[[0],[0]],[[0],[0]],[0,"Default",0,1]],[[576,1504,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8373,[[0],[0]],[[0],[0]],[0,"Default",0,1]],[[576,1472,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8374,[[0],[0]],[[0],[0]],[0,"Default",0,1]],[[576,1440,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8375,[[0],[0]],[[0],[0]],[0,"Default",0,1]],[[576,1408,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8376,[[0],[0]],[[0],[0]],[0,"Default",0,1]],[[576,1376,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8377,[[0],[0]],[[0],[0]],[0,"Default",0,1]],[[576,1344,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8378,[[0],[0]],[[0],[0]],[0,"Default",0,1]],[[1200,1760,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8379,[[0],[0]],[[0],[0]],[0,"Default",0,1]],[[1216,1776,0,448,8,0,-1.570796489715576,1,0,0,0,0,[]],51,8380,[],[[0],[1],[1,100,""]],[0,0]],[[1200,1728,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8381,[[0],[0]],[[0],[0]],[0,"Default",0,1]],[[1200,1696,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8382,[[0],[0]],[[0],[0]],[0,"Default",0,1]],[[1200,1664,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8383,[[0],[0]],[[0],[0]],[0,"Default",0,1]],[[1200,1632,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8384,[[0],[0]],[[0],[0]],[0,"Default",0,1]],[[1200,1600,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8385,[[0],[0]],[[0],[0]],[0,"Default",0,1]],[[1200,1568,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8386,[[0],[0]],[[0],[0]],[0,"Default",0,1]],[[1200,1536,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8387,[[0],[0]],[[0],[0]],[0,"Default",0,1]],[[1200,1504,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8388,[[0],[0]],[[0],[0]],[0,"Default",0,1]],[[1200,1472,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8389,[[0],[0]],[[0],[0]],[0,"Default",0,1]],[[1200,1440,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8390,[[0],[0]],[[0],[0]],[0,"Default",0,1]],[[1200,1408,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8391,[[0],[0]],[[0],[0]],[0,"Default",0,1]],[[1200,1376,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8392,[[0],[0]],[[0],[0]],[0,"Default",0,1]],[[1200,1344,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8393,[[0],[0]],[[0],[0]],[0,"Default",0,1]],[[560,1552,0,32,456,0,3.141592741012573,1,0.5,0.5,0,0,[]],50,8395,[[-1],[0],[0],[0],[0],[6],[1]],[[0],[1,1,1,1,"B 296",50,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1216,1552,0,32,456,0,3.141592741012573,1,0.5,0.5,0,0,[]],50,8396,[[-1],[0],[0],[0],[0],[6],[1]],[[0],[1,1,1,1,"F 296",50,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[672,1320,0,432,8,0,0,1,0,0,0,0,[]],45,8397,[],[[0],[1]],[0,0]],[[672,856,0,464,8,0,1.570796370506287,1,0,0,0,0,[]],67,8399,[],[[1]],[0,0]],[[1112,856,0,464,8,0,1.570796370506287,1,0,0,0,0,[]],67,8400,[],[[1]],[0,0]],[[576,1296,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8430,[[0],[0]],[[0],[0]],[0,"Default",0,1]],[[560,864,0,448,8,0,1.570796370506287,1,0,0,0,0,[]],51,8431,[],[[0],[1],[1,100,""]],[0,0]],[[576,1264,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8432,[[0],[0]],[[0],[0]],[0,"Default",0,1]],[[576,1232,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8433,[[0],[0]],[[0],[0]],[0,"Default",0,1]],[[576,1200,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8434,[[0],[0]],[[0],[0]],[0,"Default",0,1]],[[576,1168,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8435,[[0],[0]],[[0],[0]],[0,"Default",0,1]],[[576,1136,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8436,[[0],[0]],[[0],[0]],[0,"Default",0,1]],[[576,1104,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8437,[[0],[0]],[[0],[0]],[0,"Default",0,1]],[[576,1072,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8438,[[0],[0]],[[0],[0]],[0,"Default",0,1]],[[576,1040,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8439,[[0],[0]],[[0],[0]],[0,"Default",0,1]],[[576,1008,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8440,[[0],[0]],[[0],[0]],[0,"Default",0,1]],[[576,976,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8441,[[0],[0]],[[0],[0]],[0,"Default",0,1]],[[576,944,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8442,[[0],[0]],[[0],[0]],[0,"Default",0,1]],[[576,912,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8443,[[0],[0]],[[0],[0]],[0,"Default",0,1]],[[576,880,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8444,[[0],[0]],[[0],[0]],[0,"Default",0,1]],[[1200,1296,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8445,[[0],[0]],[[0],[0]],[0,"Default",0,1]],[[1216,1312,0,448,8,0,-1.570796489715576,1,0,0,0,0,[]],51,8446,[],[[0],[1],[1,100,""]],[0,0]],[[1200,1264,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8447,[[0],[0]],[[0],[0]],[0,"Default",0,1]],[[1200,1232,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8448,[[0],[0]],[[0],[0]],[0,"Default",0,1]],[[1200,1200,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8449,[[0],[0]],[[0],[0]],[0,"Default",0,1]],[[1200,1168,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8450,[[0],[0]],[[0],[0]],[0,"Default",0,1]],[[1200,1136,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8451,[[0],[0]],[[0],[0]],[0,"Default",0,1]],[[1200,1104,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8452,[[0],[0]],[[0],[0]],[0,"Default",0,1]],[[1200,1072,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8453,[[0],[0]],[[0],[0]],[0,"Default",0,1]],[[1200,1040,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8454,[[0],[0]],[[0],[0]],[0,"Default",0,1]],[[1200,1008,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8455,[[0],[0]],[[0],[0]],[0,"Default",0,1]],[[1200,976,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8456,[[0],[0]],[[0],[0]],[0,"Default",0,1]],[[1200,944,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8457,[[0],[0]],[[0],[0]],[0,"Default",0,1]],[[1200,912,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8458,[[0],[0]],[[0],[0]],[0,"Default",0,1]],[[1200,880,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8459,[[0],[0]],[[0],[0]],[0,"Default",0,1]],[[560,1088,0,32,456,0,3.141592741012573,1,0.5,0.5,0,0,[]],50,8460,[[-1],[0],[0],[0],[0],[2],[1]],[[0],[1,0,1,1,"B 296",60,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1216,1088,0,32,456,0,3.141592741012573,1,0.5,0.5,0,0,[]],50,8461,[[-1],[0],[0],[0],[0],[2],[1]],[[0],[1,0,1,1,"F 296",60,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[672,856,0,432,8,0,0,1,0,0,0,0,[]],45,8462,[],[[0],[1]],[0,0]],[[1048,1232,0,328,8,0,3.141592741012573,1,0,0,0,0,[]],51,8363,[],[[0],[1],[1,100,""]],[0,0]],[[848,1136,0,64,8,0,3.141592741012573,1,0,0,0,0,[]],51,8398,[],[[0],[1],[1,100,""]],[0,0]],[[928,1040,0,80,8,0,3.141592741012573,1,0,0,0,0,[]],51,8401,[],[[0],[1],[1,100,""]],[0,0]],[[856,856,0,64,8,0,1.570796370506287,1,0,0,0,0,[]],51,8402,[],[[0],[1],[1,100,""]],[0,0]],[[928,856,0,64,8,0,1.570796370506287,1,0,0,0,0,[]],51,8403,[],[[0],[1],[1,100,""]],[0,0]],[[888,1272,0,432,32,0,0,1,0.5,0.5,0,0,[]],49,8404,[[2],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[1,"Default",0,1]],[[984,1136,0,64,8,0,3.141592741012573,1,0,0,0,0,[]],51,8405,[],[[0],[1],[1,100,""]],[0,0]],[[672,392,0,464,8,0,1.570796370506287,1,0,0,0,0,[]],67,8406,[],[[1]],[0,0]],[[1112,392,0,464,8,0,1.570796370506287,1,0,0,0,0,[]],67,8407,[],[[1]],[0,0]],[[576,832,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8408,[[0],[0]],[[0],[0]],[0,"Default",0,1]],[[560,400,0,448,8,0,1.570796370506287,1,0,0,0,0,[]],51,8409,[],[[0],[1],[1,100,""]],[0,0]],[[576,800,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8410,[[0],[0]],[[0],[0]],[0,"Default",0,1]],[[576,768,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8411,[[0],[0]],[[0],[0]],[0,"Default",0,1]],[[576,736,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8412,[[0],[0]],[[0],[0]],[0,"Default",0,1]],[[576,704,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8413,[[0],[0]],[[0],[0]],[0,"Default",0,1]],[[576,672,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8414,[[0],[0]],[[0],[0]],[0,"Default",0,1]],[[576,640,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8415,[[0],[0]],[[0],[0]],[0,"Default",0,1]],[[576,608,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8416,[[0],[0]],[[0],[0]],[0,"Default",0,1]],[[576,576,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8417,[[0],[0]],[[0],[0]],[0,"Default",0,1]],[[576,544,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8418,[[0],[0]],[[0],[0]],[0,"Default",0,1]],[[576,512,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8419,[[0],[0]],[[0],[0]],[0,"Default",0,1]],[[576,480,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8420,[[0],[0]],[[0],[0]],[0,"Default",0,1]],[[576,448,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8421,[[0],[0]],[[0],[0]],[0,"Default",0,1]],[[576,416,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8422,[[0],[0]],[[0],[0]],[0,"Default",0,1]],[[1200,832,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8423,[[0],[0]],[[0],[0]],[0,"Default",0,1]],[[1216,848,0,448,8,0,-1.570796489715576,1,0,0,0,0,[]],51,8424,[],[[0],[1],[1,100,""]],[0,0]],[[1200,800,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8425,[[0],[0]],[[0],[0]],[0,"Default",0,1]],[[1200,768,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8426,[[0],[0]],[[0],[0]],[0,"Default",0,1]],[[1200,736,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8427,[[0],[0]],[[0],[0]],[0,"Default",0,1]],[[1200,704,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8428,[[0],[0]],[[0],[0]],[0,"Default",0,1]],[[1200,672,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8429,[[0],[0]],[[0],[0]],[0,"Default",0,1]],[[1200,640,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8463,[[0],[0]],[[0],[0]],[0,"Default",0,1]],[[1200,608,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8464,[[0],[0]],[[0],[0]],[0,"Default",0,1]],[[1200,576,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8465,[[0],[0]],[[0],[0]],[0,"Default",0,1]],[[1200,544,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8466,[[0],[0]],[[0],[0]],[0,"Default",0,1]],[[1200,512,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8467,[[0],[0]],[[0],[0]],[0,"Default",0,1]],[[1200,480,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8468,[[0],[0]],[[0],[0]],[0,"Default",0,1]],[[1200,448,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8469,[[0],[0]],[[0],[0]],[0,"Default",0,1]],[[1200,416,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8470,[[0],[0]],[[0],[0]],[0,"Default",0,1]],[[560,624,0,32,456,0,3.141592741012573,1,0.5,0.5,0,0,[]],50,8471,[[-1],[0],[0],[0],[0],[3],[1]],[[0],[1,0,1,1,"B 296",60,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1216,624,0,32,456,0,3.141592741012573,1,0.5,0.5,0,0,[]],50,8472,[[-1],[0],[0],[0],[0],[3],[1]],[[0],[1,0,1,1,"F 296",60,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[672,392,0,432,8,0,0,1,0,0,0,0,[]],45,8473,[],[[0],[1]],[0,0]],[[888,808,0,432,32,0,0,1,0.5,0.5,0,0,[]],49,8479,[[3],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[1,"Default",0,1]],[[1032,400,0,376,8,0,1.570796370506287,1,0,0,0,0,[]],51,8474,[],[[0],[1],[1,100,""]],[0,0]],[[744,400,0,376,8,0,1.570796370506287,1,0,0,0,0,[]],51,8475,[],[[0],[1],[1,100,""]],[0,0]],[[720,744,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8476,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[720,712,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8480,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[720,680,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8481,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[720,648,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8482,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[720,616,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8483,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[720,584,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8484,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[720,552,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8485,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[720,520,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8486,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[720,488,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8487,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[720,456,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8488,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[720,424,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8489,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1048,744,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8490,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1048,712,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8491,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1048,680,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8492,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1048,648,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8493,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1048,616,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8494,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1048,584,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8495,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1048,552,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8496,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1048,520,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8497,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1048,488,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8498,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1048,456,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8499,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1048,424,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8500,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[168,832,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8501,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[152,400,0,448,656,0,1.570796370506287,1,0,0,0,0,[]],51,8502,[],[[0],[1],[1,100,""]],[0,0]],[[168,800,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8503,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[168,768,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8504,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[168,736,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8505,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[168,704,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8506,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[168,672,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8507,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[168,640,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8508,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[168,608,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8509,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[168,576,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8510,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[168,544,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8511,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[168,512,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8512,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[168,480,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8513,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[168,448,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8514,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[168,416,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,8515,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[152,640,0,32,456,0,3.141592741012573,1,0.5,0.5,0,0,[]],50,8516,[[-1],[0],[0],[0],[0],[3],[1]],[[0],[1,0,1,1,"W 6 ; B 668",300,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1600,832,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8517,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1616,848,0,448,856,0,-1.570796489715576,1,0,0,0,0,[]],51,8518,[],[[0],[1],[1,100,""]],[0,0]],[[1600,800,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8519,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1600,768,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8520,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1600,736,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8521,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1600,704,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8522,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1600,672,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8523,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1600,640,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8524,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1600,608,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8525,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1600,576,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8526,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1600,544,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8527,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1600,512,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8528,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1600,480,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8529,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1600,448,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8530,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1600,416,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,8531,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1616,616,0,32,456,0,3.141592741012573,1,0.5,0.5,0,0,[]],50,8532,[[-1],[0],[0],[0],[0],[3],[1]],[[0],[1,0,1,1,"W 6; F 668;",300,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[888.0000610351563,168,0,320,8,0,0.7853981852531433,1,0,0,0,0,[]],51,8533,[],[[0],[1],[1,100,""]],[0,0]],[[890.3624267578125,177.6375122070313,0,312,8,0,2.356194496154785,1,0,0,0,0,[]],51,8534,[],[[0],[1],[1,100,""]],[0,0]],[[892,312,0,48,88,0,0,1,0.5257731676101685,0.4974874258041382,0,0,[]],44,8394,[],[[0]],[0,"Default",0,1]],[[888,1080,0,64,64,0,0,1,0.5,0.5,0,0,[]],60,8477,[["level44"]],[[1],[400,-200,800,0,0,0],[0,0,0,1,1]],[0,"Default",0,1]],[[1288,1040,0,64,8,0,3.141592741012573,1,0,0,0,0,[]],51,8478,[],[[0],[1],[1,100,""]],[0,0]],[[552,1040,0,64,8,0,3.141592741012573,1,0,0,0,0,[]],51,8535,[],[[0],[1],[1,100,""]],[0,0]]],[]],["UI",2,263589349667344,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[240,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3097,[["right"]],[[0,1,0,1,1]],[0,"Default",0,1]],[[80,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3098,[["left"]],[[0,1,0,1,1]],[0,"Default",1,1]],[[560,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3099,[["up"]],[[1,1,1,1,1]],[0,"Default",3,1]],[[400,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3100,[["down"]],[[1,1,1,1,1]],[0,"Default",2,1]]],[]],["End Card",3,252023214966233,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],78,2607,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[12.04449462890625,194,0,615.9109497070313,67,0,0,1,0,0,0,0,[]],79,2608,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Timer for this level",2.5,0,0,0,0,0,-10,0,"",-1,0]],[[17.546875,248,0,604.90625,105,0,0,1,0,0,0,0,[]],80,2610,[[0],[0],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","13:40:40",4,0,63,50,0,0,-10,0,"",-1,0]],[[115.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,2611,[[0],[1],[0],[0],["replay"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Replay",""],[""],[2,2,0,0,0],["",""]],[0,"Replay",0,1]],[[524.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3086,[[0],[1],[0],[0],["next"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Next",""],[""],[2,2,0,0,0],["",""]],[0,"Next",0,1]],[[320.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3087,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > Back","Level Menu"],[""],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[320.75,521.8050537109375,0,384,96,0,0,1,0.5,0.5,0,0,[]],70,3088,[[1],[1],[0],[0],[""],["{\"size\": 22, \"left\": 70, \"right\": 18, \"alignY\": 60}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > DownloadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"DownloadReplay",0,1]]],[]],["Pause",4,171569403964202,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-310,678,0,274,31,0,0,1,0,0,0,0,[]],168,3089,[],[],[".ovo",0,1,"file"]],[[320,320,0,425,250,0,0,1,0.5,0.5,0,0,[]],82,3090,[],[[6,1,"",300,1,1,"",300,"overlay",1,"PauseClose",1,1]],[0,"Default",0,1]],[[214,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3091,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"",""],["PauseClose"],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[426,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3092,[[0],[1],[0],[0],["quit"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > GiveUp",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[115.5,202,0,409,118,0,0,1,0,0,0,0,[]],83,3093,[[1],[1],["pause"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Pause",4,0,57,50,0,0,-10,0,"",-1,0]],[[320.5,88,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3094,[[1],[1],[0],[0],["loadreplay"],["{\"size\": 16, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > LoadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"LoadReplay",0,1]],[[320.5,157,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3095,[[1],[0],[0],[0],["toggledebug"],["{\"size\": 15, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Debug > Toggle",""],[""],[2,2,0,0,0],["",""]],[0,"ToggleDebug",0,1]],[[78,448,0,484,134,0,0,1,0,0,0,0,[]],193,3096,[],[],[0,"Default",0,1]]],[]],["Overlay",5,109444973848987,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[432,4,0,203.0009155273438,64,0,0,1,0,0,0,0,[]],107,5488,[],[[1,0,1,0,1]],[2,2,2,2,0,1,0,0,1]],[[432,4,0,203,64,0,0,1,0,0,0,0,[]],84,3101,[[0],[0],[""],["en-us"],[0],[1],[1],["{\"alignY\": 85, \"alignX\": 45, \"size\": 28}"],[0],[1],[0],[0],[0]],[["",""],[1,0,1,0,1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",2,0,100,50,0,0,-10,0,"",-1,0]],[[88,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3102,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Pause",""],[""],[0,0,0,0,1],["",""]],[0,"Pause",0,1]],[[158,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3103,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Replay","1"],[""],[0,0,0,0,1],["",""]],[0,"Reload",0,1]]],[]],["End Game",6,829384335690664,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],85,3104,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[73,194,0,494,72,0,0,1,0,0,0,0,[]],86,3105,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],["{alignY:50}"],[0],[1],[0],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Your final time",2.5,0,50,50,0,0,-10,0,"",-1,0]],[[320,403,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3106,[[0],[1],[0],[0],[""],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Quit",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[73,243,0,494,85,0,0,1,0,0,0,0,[]],87,3108,[[0],[1],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",3,0,50,50,0,0,-10,0,"",-1,0]],[[73,318,0,494,25,0,0,1,0,0,0,0,[]],86,5480,[[1],[1],["tryagainhardmode"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Try again in hard mode!",1,0,50,50,0,0,-2,0,"",-1,0]]],[]]],[],[]],["Level 441",10000,2000,true,"Levels",372781167653761,[["Background",0,873674128239720,true,[255,255,255],false,0,0,1,false,false,1,0,0,[],[]],["Layer 0",1,557013081654922,true,[255,255,255],true,1,1,1,false,false,1,0,0,[[[2824,1256,0,200,96,0,-1.570796489715576,1,0.5,0.5,0,0,[]],50,12125,[[-1],[0],[0],[0],[0],[1],[1]],[[0],[1,0,1,1,"R 45",400,0,100,90,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1404,454.0000610351563,0,32,184,0,-0.1745333671569824,1,0,0,0,0,[]],51,10036,[],[[0],[1],[1,100,""]],[0,0]],[[2581,1123,0,32,64,0,0,1,0.5,0.5,0,0,[]],42,5935,[["run"],[0],[1],[1],[0],[0.8],[0.5],[0],[1],[0],[0],[0],["ovo+"],[2],[0],[0],[0],[""],[0],[3],[0],[0],[0],[0],[0],[0],[0]],[[330,1500,1500,650,1500,1000,1,0,0,1],[],[1,0],[0,10000,360,1]],[1,"Default",0,1]],[[1032,1176,0,1640,8,0,0,1,0,0,0,0,[]],67,10029,[],[[1]],[0,0]],[[1884,326,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,5934,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1548,150,0,568,216,0,0,1,0,0,0,0,[]],51,10030,[],[[0],[1],[1,100,""]],[0,0]],[[1604,382,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10055,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1636,382,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10056,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1668,382,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10057,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1700,382,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,41,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1732,382,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10059,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1764,382,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10060,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1796,382,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10061,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1828,382,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10062,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1860,382,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10063,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1892,382,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10064,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1924,382,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10065,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1956,382,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10066,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1988,382,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10067,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2020,382,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10068,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2052,382,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,42,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1724,222,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],58,10071,[[0]],[[1],[1]],[0,"Default",0,1]],[[1948,222,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],58,10072,[[0]],[[1],[1]],[0,"Default",0,1]],[[1724,294,0,24,24,0,0,1,0.5,0.5,0,0,[]],58,10073,[[0]],[[1],[1]],[0,"Default",0,1]],[[1740,310,0,24,24,0,0,1,0.5,0.5,0,0,[]],58,10074,[[0]],[[1],[1]],[0,"Default",0,1]],[[1756,326,0,24,24,0,0,1,0.5,0.5,0,0,[]],58,10075,[[0]],[[1],[1]],[0,"Default",0,1]],[[1836,254,0,32,32,0,0,1,0.5,0.5,0,0,[]],58,10076,[[0]],[[1],[1]],[0,"Default",0,1]],[[1708,206,0,32,9,0,0,1,0,0,0,0,[]],52,10077,[],[[0],[0]],[0,0]],[[1932,206,0,32,9,0,0,1,0,0,0,0,[]],52,10078,[],[[0],[0]],[0,0]],[[1780,334,0,24,24,0,0,1,0.5,0.5,0,0,[]],58,10079,[[0]],[[1],[1]],[0,"Default",0,1]],[[1804,342,0,24,24,0,0,1,0.5,0.5,0,0,[]],58,10080,[[0]],[[1],[1]],[0,"Default",0,1]],[[1828,342,0,24,24,0,0,1,0.5,0.5,0,0,[]],58,10081,[[0]],[[1],[1]],[0,"Default",0,1]],[[1852,342,0,24,24,0,0,1,0.5,0.5,0,0,[]],58,10082,[[0]],[[1],[1]],[0,"Default",0,1]],[[1940,302,0,24,24,0,0,1,0.5,0.5,0,0,[]],58,10083,[[0]],[[1],[1]],[0,"Default",0,1]],[[1916,310,0,24,24,0,0,1,0.5,0.5,0,0,[]],58,10084,[[0]],[[1],[1]],[0,"Default",0,1]],[[1900,326,0,24,24,0,0,1,0.5,0.5,0,0,[]],58,43,[[0]],[[1],[1]],[0,"Default",0,1]],[[1876,334,0,24,24,0,0,1,0.5,0.5,0,0,[]],58,10086,[[0]],[[1],[1]],[0,"Default",0,1]],[[1580,-114,0,264,8,0,1.570796370506287,1,0,0,0,0,[]],45,10031,[],[[0],[1]],[0,0]],[[1836,-114,0,264,8,0,1.570796370506287,1,0,0,0,0,[]],45,10032,[],[[0],[1]],[0,0]],[[2092,-114,0,264,8,0,1.570796370506287,1,0,0,0,0,[]],45,10033,[],[[0],[1]],[0,0]],[[2084,310,0,32,216,0,-0.7853984832763672,1,0,0,0,0,[]],51,10034,[],[[0],[1],[1,100,""]],[0,0]],[[1564,286,0,32,216,0,0.7853981852531433,1,0,0,0,0,[]],51,10035,[],[[0],[1],[1,100,""]],[0,0]],[[2228,445.9999389648438,0,32,182,0,0.1745329201221466,1,0,0,0,0,[]],51,10037,[],[[0],[1],[1,100,""]],[0,0]],[[1425,597,0,64,64,0,0,1,0,0,0,0,[]],51,10039,[],[[0],[1],[1,100,""]],[0,0]],[[1457,585,0,64,64,0,0.7853981852531433,1,0,0,0,0,[]],51,10040,[],[[0],[1],[1,100,""]],[0,0]],[[1457,669,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10038,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1457,589,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10041,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1497,630,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,10042,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1417,630,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,10043,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1489,597,0,32,32,0,0.7853981852531433,1,0.5,0.5,0,0,[]],47,10044,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1489,661,0,32,32,0,2.356194496154785,1,0.5,0.5,0,0,[]],47,10045,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1425,661,0,32,32,0,-2.356194734573364,1,0.5,0.5,0,0,[]],47,10046,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[1425,597,0,32,32,0,-0.7853984832763672,1,0.5,0.5,0,0,[]],47,10047,[[0],[0]],[[1],[1]],[0,"Default",0,1]],[[2212,630,0,64,32,0,1.745329260826111,1,0.125,0.5,0,0,[]],55,10048,[[1],[300]],[[1],[300,1,1,180,0,0,600,1,1],[0,10000,360,1]],[0,"Default",0,1]],[[2239.939453125,638.6946411132813,0,32,40,0,1.745329260826111,1,0.5,0.5,0,0,[]],43,10049,[[0.7],[0]],[[0]],[0,"Default",0,1]],[[2180,630,0,32,40,0,-1.396263599395752,1,0.5,0.5,0,0,[]],43,10050,[[0.7],[0]],[[0]],[0,"Default",0,1]],[[2260,558,0,72,8,0,1.919862151145935,1,0,0,0,0,[]],45,10051,[],[[0],[1]],[0,0]],[[2192,618,0,72,8,0,-1.570796489715576,1,0,0,0,0,[]],45,10052,[],[[0],[1]],[0,0]],[[2768,1312,0,104,8,0,0,1,0,0,0,0,[]],51,12121,[],[[0],[1],[1,100,""]],[0,0]],[[2776,1160,0,160,8,0,1.570796370506287,1,0,0,0,0,[]],51,12122,[],[[0],[1],[1,100,""]],[0,0]],[[2872,1160,0,160,8,0,1.570796370506287,1,0,0,0,0,[]],51,12123,[],[[0],[1],[1,100,""]],[0,0]],[[2728,1336,0,104,32,0,0.7853981852531433,1,0.5,0.5,0,0,[]],43,12124,[[2],[0]],[[0]],[1,"Default",0,1]],[[2728,1344,0,16,24,0,-0.7853981852531433,1,0.5,0.5,0,0,[]],50,12126,[[-1],[0],[10],[0],[0],[2],[1]],[[0],[1,0,1,1,"W 1 ; F 200",400,0,100,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[2824,1168,0,96,32,0,0,1,0.5,0.5,0,0,[]],49,12127,[[1],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[1,"Default",0,1]],[[2816,1168,0,80,32,0,0,1,0.5,0.5,0,0,[]],49,12128,[[2],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[1,"Default",0,1]],[[2848,392,0,1640,8,0,0,1,0,0,0,0,[]],67,12129,[],[[1]],[0,0]],[[2803.3916015625,798.8800048828125,0,152,96,0,1.570796370506287,1,-2.380000114440918,0.6399999856948853,0,0,[]],159,10070,[],[[0]],[0,"Default",0,1]]],[]],["UI",2,783340289678257,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[240,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3097,[["right"]],[[0,1,0,1,1]],[0,"Default",0,1]],[[80,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3098,[["left"]],[[0,1,0,1,1]],[0,"Default",1,1]],[[560,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3099,[["up"]],[[1,1,1,1,1]],[0,"Default",3,1]],[[400,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3100,[["down"]],[[1,1,1,1,1]],[0,"Default",2,1]]],[]],["End Card",3,472433177406513,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],78,2607,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[12.04449462890625,194,0,615.9109497070313,67,0,0,1,0,0,0,0,[]],79,2608,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Timer for this level",2.5,0,0,0,0,0,-10,0,"",-1,0]],[[17.546875,248,0,604.90625,105,0,0,1,0,0,0,0,[]],80,2610,[[0],[0],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","13:40:40",4,0,63,50,0,0,-10,0,"",-1,0]],[[115.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,2611,[[0],[1],[0],[0],["replay"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Replay",""],[""],[2,2,0,0,0],["",""]],[0,"Replay",0,1]],[[524.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3086,[[0],[1],[0],[0],["next"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Next",""],[""],[2,2,0,0,0],["",""]],[0,"Next",0,1]],[[320.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3087,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > Back","Level Menu"],[""],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[320.75,521.8050537109375,0,384,96,0,0,1,0.5,0.5,0,0,[]],70,3088,[[1],[1],[0],[0],[""],["{\"size\": 22, \"left\": 70, \"right\": 18, \"alignY\": 60}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > DownloadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"DownloadReplay",0,1]]],[]],["Pause",4,428085210967404,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-310,678,0,274,31,0,0,1,0,0,0,0,[]],168,3089,[],[],[".ovo",0,1,"file"]],[[320,320,0,425,250,0,0,1,0.5,0.5,0,0,[]],82,3090,[],[[6,1,"",300,1,1,"",300,"overlay",1,"PauseClose",1,1]],[0,"Default",0,1]],[[214,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3091,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"",""],["PauseClose"],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[426,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3092,[[0],[1],[0],[0],["quit"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > GiveUp",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[115.5,202,0,409,118,0,0,1,0,0,0,0,[]],83,3093,[[1],[1],["pause"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Pause",4,0,57,50,0,0,-10,0,"",-1,0]],[[320.5,88,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3094,[[1],[1],[0],[0],["loadreplay"],["{\"size\": 16, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > LoadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"LoadReplay",0,1]],[[320.5,157,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3095,[[1],[0],[0],[0],["toggledebug"],["{\"size\": 15, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Debug > Toggle",""],[""],[2,2,0,0,0],["",""]],[0,"ToggleDebug",0,1]],[[78,448,0,484,134,0,0,1,0,0,0,0,[]],193,3096,[],[],[0,"Default",0,1]]],[]],["Overlay",5,204310953259864,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[432,4,0,203.0009155273438,64,0,0,1,0,0,0,0,[]],107,5488,[],[[1,0,1,0,1]],[2,2,2,2,0,1,0,0,1]],[[432,4,0,203,64,0,0,1,0,0,0,0,[]],84,3101,[[0],[0],[""],["en-us"],[0],[1],[1],["{\"alignY\": 85, \"alignX\": 45, \"size\": 28}"],[0],[1],[0],[0],[0]],[["",""],[1,0,1,0,1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",2,0,100,50,0,0,-10,0,"",-1,0]],[[88,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3102,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Pause",""],[""],[0,0,0,0,1],["",""]],[0,"Pause",0,1]],[[158,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3103,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Replay","1"],[""],[0,0,0,0,1],["",""]],[0,"Reload",0,1]]],[]],["End Game",6,486046277306627,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],85,3104,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[73,194,0,494,72,0,0,1,0,0,0,0,[]],86,3105,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],["{alignY:50}"],[0],[1],[0],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Your final time",2.5,0,50,50,0,0,-10,0,"",-1,0]],[[320,403,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3106,[[0],[1],[0],[0],[""],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Quit",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[73,243,0,494,85,0,0,1,0,0,0,0,[]],87,3108,[[0],[1],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",3,0,50,50,0,0,-10,0,"",-1,0]],[[73,318,0,494,25,0,0,1,0,0,0,0,[]],86,5480,[[1],[1],["tryagainhardmode"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Try again in hard mode!",1,0,50,50,0,0,-2,0,"",-1,0]]],[]]],[],[]],["Level 57",5000,5000,true,"Levels",380123893848947,[["Background",0,487946333902901,true,[255,255,255],false,0,0,1,false,false,1,0,0,[],[]],["Layer 0",1,908950909188047,true,[255,255,255],true,1,1,1,false,false,1,0,0,[[[952,40,0,248,117,0,0,1,0,0,0,0,[[]]],61,10602,[],[[1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>","1",7,0,50,0,0,0,0,0,"",-1,0]],[[1128,480,0,544,8,0,0,1,0,0,0,0,[]],67,10607,[],[[1]],[0,0]],[[4600,3936,0,2952,2176,0,3.141592741012573,1,0,0,0,0,[]],64,10610,[],[],[0,0]],[[-9696,3062.3359375,0,4520,2872,0,0,1,-2.380000114440918,0.6399999856948853,0,0,[]],159,10605,[],[[0]],[0,"Default",0,1]],[[3288,1776,0,760,8,0,0,1,0,0,0,0,[]],56,10606,[],[[1],[1]],[0,0]],[[1136,0,0,488,8,0,1.570796370506287,1,0,0,0,0,[]],67,10608,[],[[1]],[0,0]],[[1304,496,0,8,8,0,0,1,0,0,0,0,[]],56,10609,[],[[1],[0]],[0,0]],[[1432,464,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10611,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1464,464,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10612,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1496,464,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10613,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1528,464,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10614,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1560,464,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10615,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1592,464,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10616,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1624,464,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10617,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1656,464,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10618,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1872,2256,0,8,8,0,0,1,0,0,0,0,[]],56,10633,[],[[1],[0]],[0,0]],[[1320,2792,0,8,8,0,0,1,0,0,0,0,[]],56,10634,[],[[1],[0]],[0,0]],[[1792,3288,0,8,8,0,0,1,0,0,0,0,[]],56,10635,[],[[1],[0]],[0,0]],[[2336,2656,0,8,8,0,0,1,0,0,0,0,[]],56,10636,[],[[1],[0]],[0,0]],[[2480,3312,0,8,8,0,0,1,0,0,0,0,[]],56,10637,[],[[1],[0]],[0,0]],[[1936,3592,0,8,8,0,0,1,0,0,0,0,[]],56,10638,[],[[1],[0]],[0,0]],[[2376,2928,0,8,8,0,0,1,0,0,0,0,[]],56,10639,[],[[1],[0]],[0,0]],[[2144,2776,0,8,8,0,0,1,0,0,0,0,[]],56,10640,[],[[1],[0]],[0,0]],[[2488,3744,0,8,8,0,0,1,0,0,0,0,[]],56,10641,[],[[1],[0]],[0,0]],[[2960,3040,0,8,8,0,0,1,0,0,0,0,[]],56,10642,[],[[1],[0]],[0,0]],[[2856,3904,0,8,8,0,0,1,0,0,0,0,[]],56,10643,[],[[1],[0]],[0,0]],[[2072,3648,0,8,8,0,0,1,0,0,0,0,[]],56,10644,[],[[1],[0]],[0,0]],[[1784,3344,0,8,8,0,0,1,0,0,0,0,[]],56,10645,[],[[1],[0]],[0,0]],[[3304,3936,0,8,8,0,0,1,0,0,0,0,[]],56,10648,[],[[1],[0]],[0,0]],[[3376,3224,0,8,8,0,0,1,0,0,0,0,[]],56,10649,[],[[1],[0]],[0,0]],[[2968,3152,0,8,8,0,0,1,0,0,0,0,[]],56,10650,[],[[1],[0]],[0,0]],[[3024,4000,0,8,8,0,0,1,0,0,0,0,[]],56,10651,[],[[1],[0]],[0,0]],[[1288,2328,0,8,8,0,0,1,0,0,0,0,[]],56,10655,[],[[1],[0]],[0,0]],[[3768,1192,0,8,8,0,0,1,0,0,0,0,[]],56,10726,[],[[1],[0]],[0,0]],[[2384,1192,0,8,8,0,0,1,0,0,0,0,[]],56,10729,[],[[1],[0]],[0,0]],[[3368,1688,0,8,8,0,0,1,0,0,0,0,[]],56,10730,[],[[1],[0]],[0,0]],[[4216,1224,0,8,8,0,0,1,0,0,0,0,[]],56,10731,[],[[1],[0]],[0,0]],[[3936,1288,0,8,8,0,0,1,0,0,0,0,[]],56,10734,[],[[1],[0]],[0,0]],[[4448,1648,0,8,8,0,0,1,0,0,0,0,[]],56,10735,[],[[1],[0]],[0,0]],[[4224,1856,0,8,8,0,0,1,0,0,0,0,[]],56,10736,[],[[1],[0]],[0,0]],[[3832,2112,0,8,8,0,0,1,0,0,0,0,[]],56,10737,[],[[1],[0]],[0,0]],[[3992,1848,0,8,8,0,0,1,0,0,0,0,[]],56,10739,[],[[1],[0]],[0,0]],[[3440,2384,0,8,8,0,0,1,0,0,0,0,[]],56,10740,[],[[1],[0]],[0,0]],[[3912,2880,0,8,8,0,0,1,0,0,0,0,[]],56,10741,[],[[1],[0]],[0,0]],[[4456,2248,0,8,8,0,0,1,0,0,0,0,[]],56,10742,[],[[1],[0]],[0,0]],[[4600,2904,0,8,8,0,0,1,0,0,0,0,[]],56,10743,[],[[1],[0]],[0,0]],[[4056,3184,0,8,8,0,0,1,0,0,0,0,[]],56,10744,[],[[1],[0]],[0,0]],[[4496,2520,0,8,8,0,0,1,0,0,0,0,[]],56,10745,[],[[1],[0]],[0,0]],[[4264,2368,0,8,8,0,0,1,0,0,0,0,[]],56,10746,[],[[1],[0]],[0,0]],[[4608,3336,0,8,8,0,0,1,0,0,0,0,[]],56,10747,[],[[1],[0]],[0,0]],[[5080,2632,0,8,8,0,0,1,0,0,0,0,[]],56,10748,[],[[1],[0]],[0,0]],[[4976,3496,0,8,8,0,0,1,0,0,0,0,[]],56,10749,[],[[1],[0]],[0,0]],[[4192,3240,0,8,8,0,0,1,0,0,0,0,[]],56,10750,[],[[1],[0]],[0,0]],[[3904,2936,0,8,8,0,0,1,0,0,0,0,[]],56,10751,[],[[1],[0]],[0,0]],[[3592,3496,0,8,8,0,0,1,0,0,0,0,[]],56,10752,[],[[1],[0]],[0,0]],[[4576,3992,0,8,8,0,0,1,0,0,0,0,[]],56,10753,[],[[1],[0]],[0,0]],[[5424,3528,0,8,8,0,0,1,0,0,0,0,[]],56,10754,[],[[1],[0]],[0,0]],[[5496,2816,0,8,8,0,0,1,0,0,0,0,[]],56,10755,[],[[1],[0]],[0,0]],[[5088,2744,0,8,8,0,0,1,0,0,0,0,[]],56,10756,[],[[1],[0]],[0,0]],[[5144,3592,0,8,8,0,0,1,0,0,0,0,[]],56,10757,[],[[1],[0]],[0,0]],[[5656,3952,0,8,8,0,0,1,0,0,0,0,[]],56,10758,[],[[1],[0]],[0,0]],[[3408,1920,0,8,8,0,0,1,0,0,0,0,[]],56,10761,[],[[1],[0]],[0,0]],[[5320,2944,0,8,8,0,0,1,0,0,0,0,[]],56,10763,[],[[1],[0]],[0,0]],[[5472,4056,0,8,8,0,0,1,0,0,0,0,[]],56,10775,[],[[1],[0]],[0,0]],[[7304,4088,0,8,8,0,0,1,0,0,0,0,[]],56,10777,[],[[1],[0]],[0,0]],[[7376,3376,0,8,8,0,0,1,0,0,0,0,[]],56,10778,[],[[1],[0]],[0,0]],[[7536,4512,0,8,8,0,0,1,0,0,0,0,[]],56,10781,[],[[1],[0]],[0,0]],[[7312,4720,0,8,8,0,0,1,0,0,0,0,[]],56,10782,[],[[1],[0]],[0,0]],[[5288,2480,0,8,8,0,0,1,0,0,0,0,[]],56,10784,[],[[1],[0]],[0,0]],[[6616,232,0,8,8,0,0,1,0,0,0,0,[]],56,10785,[],[[1],[0]],[0,0]],[[6064,768,0,8,8,0,0,1,0,0,0,0,[]],56,10786,[],[[1],[0]],[0,0]],[[7080,632,0,8,8,0,0,1,0,0,0,0,[]],56,10788,[],[[1],[0]],[0,0]],[[7224,1288,0,8,8,0,0,1,0,0,0,0,[]],56,10789,[],[[1],[0]],[0,0]],[[7120,904,0,8,8,0,0,1,0,0,0,0,[]],56,10791,[],[[1],[0]],[0,0]],[[6888,752,0,8,8,0,0,1,0,0,0,0,[]],56,10792,[],[[1],[0]],[0,0]],[[7232,1720,0,8,8,0,0,1,0,0,0,0,[]],56,10793,[],[[1],[0]],[0,0]],[[7704,1016,0,8,8,0,0,1,0,0,0,0,[]],56,10794,[],[[1],[0]],[0,0]],[[7600,1880,0,8,8,0,0,1,0,0,0,0,[]],56,10795,[],[[1],[0]],[0,0]],[[7200,2376,0,8,8,0,0,1,0,0,0,0,[]],56,10799,[],[[1],[0]],[0,0]],[[7712,1128,0,8,8,0,0,1,0,0,0,0,[]],56,10800,[],[[1],[0]],[0,0]],[[7768,1976,0,8,8,0,0,1,0,0,0,0,[]],56,10801,[],[[1],[0]],[0,0]],[[7664,2800,0,8,8,0,0,1,0,0,0,0,[]],56,10802,[],[[1],[0]],[0,0]],[[6032,304,0,8,8,0,0,1,0,0,0,0,[]],56,10803,[],[[1],[0]],[0,0]],[[4552,1296,0,8,8,0,0,1,0,0,0,0,[]],56,10807,[],[[1],[0]],[0,0]],[[5240,1320,0,8,8,0,0,1,0,0,0,0,[]],56,10809,[],[[1],[0]],[0,0]],[[4696,1600,0,8,8,0,0,1,0,0,0,0,[]],56,10810,[],[[1],[0]],[0,0]],[[1312,3776,0,8,8,0,0,1,0,0,0,0,[]],56,10816,[],[[1],[0]],[0,0]],[[4056,3680,0,8,8,0,0,1,0,0,0,0,[]],56,10827,[],[[1],[0]],[0,0]],[[4520,4080,0,8,8,0,0,1,0,0,0,0,[]],56,10830,[],[[1],[0]],[0,0]],[[3472,3752,0,8,8,0,0,1,0,0,0,0,[]],56,10840,[],[[1],[0]],[0,0]],[[2072,3712,0,8,8,0,0,1,0,0,0,0,[]],56,10841,[],[[1],[0]],[0,0]],[[5504,3872,0,8,8,0,0,1,0,0,0,0,[]],56,10849,[],[[1],[0]],[0,0]],[[5272,3720,0,8,8,0,0,1,0,0,0,0,[]],56,10850,[],[[1],[0]],[0,0]],[[4416,3272,0,8,8,0,0,1,0,0,0,0,[]],56,10861,[],[[1],[0]],[0,0]],[[7312,4320,0,8,8,0,0,1,0,0,0,0,[]],56,10865,[],[[1],[0]],[0,0]],[[7456,4976,0,8,8,0,0,1,0,0,0,0,[]],56,10866,[],[[1],[0]],[0,0]],[[1048,1296,0,8,8,0,0,1,0,0,0,0,[]],56,10882,[],[[1],[0]],[0,0]],[[968,2328,0,8,8,0,0,1,0,0,0,0,[]],56,10884,[],[[1],[0]],[0,0]],[[1512,1696,0,8,8,0,0,1,0,0,0,0,[]],56,10885,[],[[1],[0]],[0,0]],[[1656,2352,0,8,8,0,0,1,0,0,0,0,[]],56,10886,[],[[1],[0]],[0,0]],[[1112,2632,0,8,8,0,0,1,0,0,0,0,[]],56,10887,[],[[1],[0]],[0,0]],[[1552,1968,0,8,8,0,0,1,0,0,0,0,[]],56,10888,[],[[1],[0]],[0,0]],[[1320,1816,0,8,8,0,0,1,0,0,0,0,[]],56,10889,[],[[1],[0]],[0,0]],[[1664,2784,0,8,8,0,0,1,0,0,0,0,[]],56,10890,[],[[1],[0]],[0,0]],[[2136,2080,0,8,8,0,0,1,0,0,0,0,[]],56,10891,[],[[1],[0]],[0,0]],[[2032,2944,0,8,8,0,0,1,0,0,0,0,[]],56,10892,[],[[1],[0]],[0,0]],[[1248,2688,0,8,8,0,0,1,0,0,0,0,[]],56,10893,[],[[1],[0]],[0,0]],[[960,2384,0,8,8,0,0,1,0,0,0,0,[]],56,10894,[],[[1],[0]],[0,0]],[[1632,3440,0,8,8,0,0,1,0,0,0,0,[]],56,10896,[],[[1],[0]],[0,0]],[[2480,2976,0,8,8,0,0,1,0,0,0,0,[]],56,10897,[],[[1],[0]],[0,0]],[[2552,2264,0,8,8,0,0,1,0,0,0,0,[]],56,10898,[],[[1],[0]],[0,0]],[[2144,2192,0,8,8,0,0,1,0,0,0,0,[]],56,10899,[],[[1],[0]],[0,0]],[[2200,3040,0,8,8,0,0,1,0,0,0,0,[]],56,10900,[],[[1],[0]],[0,0]],[[2712,3400,0,8,8,0,0,1,0,0,0,0,[]],56,10901,[],[[1],[0]],[0,0]],[[2488,3608,0,8,8,0,0,1,0,0,0,0,[]],56,10902,[],[[1],[0]],[0,0]],[[1792,-880,0,8,8,0,0,1,0,0,0,0,[]],56,10905,[],[[1],[0]],[0,0]],[[1712,152,0,8,8,0,0,1,0,0,0,0,[]],56,10907,[],[[1],[0]],[0,0]],[[1704,208,0,8,8,0,0,1,0,0,0,0,[]],56,10917,[],[[1],[0]],[0,0]],[[2376,1264,0,8,8,0,0,1,0,0,0,0,[]],56,10919,[],[[1],[0]],[0,0]],[[3456,1224,0,8,8,0,0,1,0,0,0,0,[]],56,10924,[],[[1],[0]],[0,0]],[[3232,1432,0,8,8,0,0,1,0,0,0,0,[]],56,10925,[],[[1],[0]],[0,0]],[[2840,1688,0,8,8,0,0,1,0,0,0,0,[]],56,10926,[],[[1],[0]],[0,0]],[[1208,-808,0,8,8,0,0,1,0,0,0,0,[]],56,10927,[],[[1],[0]],[0,0]],[[-192,-848,0,8,8,0,0,1,0,0,0,0,[]],56,10928,[],[[1],[0]],[0,0]],[[1312,120,0,8,8,0,0,1,0,0,0,0,[]],56,10942,[],[[1],[0]],[0,0]],[[1472,1256,0,8,8,0,0,1,0,0,0,0,[]],56,10945,[],[[1],[0]],[0,0]],[[1248,1464,0,8,8,0,0,1,0,0,0,0,[]],56,10946,[],[[1],[0]],[0,0]],[[1304,360,0,32,64,0,0,1,0.5,0.5,0,0,[]],42,10603,[["run"],[0],[1],[1],[0],[0.8],[0.5],[0],[1],[0],[0],[0],["ovo+"],[2],[0],[0],[0],[""],[0],[3],[0],[0],[0],[0],[0],[0],[0]],[[330,1500,1500,650,1500,1000,1,0,0,1],[],[1,0],[0,10000,360,1]],[1,"Default",0,1]]],[]],["UI",2,167809678204360,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[240,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3097,[["right"]],[[0,1,0,1,1]],[0,"Default",0,1]],[[80,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3098,[["left"]],[[0,1,0,1,1]],[0,"Default",1,1]],[[560,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3099,[["up"]],[[1,1,1,1,1]],[0,"Default",3,1]],[[400,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3100,[["down"]],[[1,1,1,1,1]],[0,"Default",2,1]]],[]],["End Card",3,309751664252834,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],78,2607,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[12.04449462890625,194,0,615.9109497070313,67,0,0,1,0,0,0,0,[]],79,2608,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Timer for this level",2.5,0,0,0,0,0,-10,0,"",-1,0]],[[17.546875,248,0,604.90625,105,0,0,1,0,0,0,0,[]],80,2610,[[0],[0],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","13:40:40",4,0,63,50,0,0,-10,0,"",-1,0]],[[115.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,2611,[[0],[1],[0],[0],["replay"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Replay",""],[""],[2,2,0,0,0],["",""]],[0,"Replay",0,1]],[[524.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3086,[[0],[1],[0],[0],["next"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Next",""],[""],[2,2,0,0,0],["",""]],[0,"Next",0,1]],[[320.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3087,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > Back","Level Menu"],[""],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[320.75,521.8050537109375,0,384,96,0,0,1,0.5,0.5,0,0,[]],70,3088,[[1],[1],[0],[0],[""],["{\"size\": 22, \"left\": 70, \"right\": 18, \"alignY\": 60}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > DownloadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"DownloadReplay",0,1]]],[]],["Pause",4,543872967356355,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-310,678,0,274,31,0,0,1,0,0,0,0,[]],168,3089,[],[],[".ovo",0,1,"file"]],[[320,320,0,425,250,0,0,1,0.5,0.5,0,0,[]],82,3090,[],[[6,1,"",300,1,1,"",300,"overlay",1,"PauseClose",1,1]],[0,"Default",0,1]],[[214,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3091,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"",""],["PauseClose"],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[426,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3092,[[0],[1],[0],[0],["quit"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > GiveUp",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[115.5,202,0,409,118,0,0,1,0,0,0,0,[]],83,3093,[[1],[1],["pause"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Pause",4,0,57,50,0,0,-10,0,"",-1,0]],[[320.5,88,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3094,[[1],[1],[0],[0],["loadreplay"],["{\"size\": 16, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > LoadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"LoadReplay",0,1]],[[320.5,157,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3095,[[1],[0],[0],[0],["toggledebug"],["{\"size\": 15, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Debug > Toggle",""],[""],[2,2,0,0,0],["",""]],[0,"ToggleDebug",0,1]],[[78,448,0,484,134,0,0,1,0,0,0,0,[]],193,3096,[],[],[0,"Default",0,1]]],[]],["Overlay",5,931724801875457,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[432,4,0,203.0009155273438,64,0,0,1,0,0,0,0,[]],107,5488,[],[[1,0,1,0,1]],[2,2,2,2,0,1,0,0,1]],[[432,4,0,203,64,0,0,1,0,0,0,0,[]],84,3101,[[0],[0],[""],["en-us"],[0],[1],[1],["{\"alignY\": 85, \"alignX\": 45, \"size\": 28}"],[0],[1],[0],[0],[0]],[["",""],[1,0,1,0,1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",2,0,100,50,0,0,-10,0,"",-1,0]],[[88,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3102,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Pause",""],[""],[0,0,0,0,1],["",""]],[0,"Pause",0,1]],[[158,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3103,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Replay","1"],[""],[0,0,0,0,1],["",""]],[0,"Reload",0,1]]],[]],["End Game",6,379698997454154,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],85,3104,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[73,194,0,494,72,0,0,1,0,0,0,0,[]],86,3105,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],["{alignY:50}"],[0],[1],[0],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Your final time",2.5,0,50,50,0,0,-10,0,"",-1,0]],[[320,403,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3106,[[0],[1],[0],[0],[""],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Quit",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[73,243,0,494,85,0,0,1,0,0,0,0,[]],87,3108,[[0],[1],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",3,0,50,50,0,0,-10,0,"",-1,0]],[[73,318,0,494,25,0,0,1,0,0,0,0,[]],86,5480,[[1],[1],["tryagainhardmode"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Try again in hard mode!",1,0,50,50,0,0,-2,0,"",-1,0]]],[]]],[],[]],["Level 58",10000,2000,true,"Levels",713422322742733,[["Background",0,419778871687850,true,[255,255,255],false,0,0,1,false,false,1,0,0,[],[]],["Layer 0",1,228748842487977,true,[255,255,255],true,1,1,1,false,false,1,0,0,[[[316,1064,0,32,328,0,1.570796370506287,1,0.5,0.5,0,0,[]],49,12022,[[2],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[1,"Default",0,1]],[[2368,2001.000122070313,0,2216,616,0,3.141592741012573,1,0,0,0,0,[]],64,11960,[],[],[1,0]],[[2072,1049,0,1048,296,0,-1.570796489715576,1,0,0,0,0,[]],64,11769,[],[],[1,0]],[[480,1049,0,368,1600,0,-1.570796489715576,1,0,0,0,0,[]],64,11779,[],[],[1,0]],[[272,120,0,248,117,0,0,1,0,0,0,0,[[]]],61,10660,[],[[1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>","1",7,0,50,0,0,0,0,0,"",-1,0]],[[1296,984,0,32,64,0,0,1,0.5,0.5,0,0,[]],42,10661,[["run"],[0],[1],[1],[0],[0.8],[0.5],[0],[1],[0],[0],[0],["fallen"],[2],[0],[0],[0],[""],[0],[3],[0],[0],[0],[0],[0],[0],[0]],[[330,1500,1500,650,1500,1000,1,0,0,1],[],[1,0],[0,10000,360,1]],[1,"Default",0,1]],[[2240,1480,0,97,199,0,3.141592741012573,1,0.5257731676101685,0.4974874258041382,0,0,[]],44,10662,[],[[0]],[0,"Default",0,1]],[[152,312,0,752,368,0,0,1,0,0,0,0,[]],67,10663,[],[[1]],[0,0]],[[152,1,0,2224,8,0,0,1,0,0,0,0,[]],67,10664,[],[[1]],[0,0]],[[-8,0,0,160,2008,0,0,1,0,0,0,0,[]],67,10665,[],[[1]],[0,0]],[[904,313,0,1176,368,0,0,1,0,0,0,0,[]],67,10666,[],[[1]],[0,0]],[[1992,137,0,1360,128,0,3.141592741012573,1,0,0,0,0,[]],64,10667,[],[],[1,0]],[[168,25,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10668,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[200,25,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10669,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[232,25,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10670,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[264,25,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10671,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[296,25,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10672,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[328,25,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10673,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[360,25,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10674,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[392,25,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10675,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[424,25,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10676,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[456,25,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10677,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[488,25,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10678,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[520,25,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10679,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[552,25,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10680,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[584,25,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10681,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[616,25,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10682,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[632,296,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10683,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[664,296,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10684,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[696,296,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10685,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[864,1,0,32,80,0,0,1,0,0,0,0,[]],67,10686,[],[[1]],[0,0]],[[880,97,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10687,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[896,1,0,32,112,0,0,1,0,0,0,0,[]],67,10688,[],[[1]],[0,0]],[[912,129,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10689,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[928,1,0,32,144,0,0,1,0,0,0,0,[]],67,10690,[],[[1]],[0,0]],[[944,161,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10691,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1136,313,0,32,80,0,3.141592741012573,1,0,0,0,0,[]],67,10692,[],[[1]],[0,0]],[[1120,217,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10693,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1168,313,0,32,112,0,3.141592741012573,1,0,0,0,0,[]],67,10694,[],[[1]],[0,0]],[[1152,185,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10695,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1200,321,0,32,144,0,3.141592741012573,1,0,0,0,0,[]],67,10696,[],[[1]],[0,0]],[[1184,161,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10697,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1352,1,0,32,80,0,0,1,0,0,0,0,[]],67,10698,[],[[1]],[0,0]],[[1368,97,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10699,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1384,1,0,32,112,0,0,1,0,0,0,0,[]],67,10700,[],[[1]],[0,0]],[[1400,129,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10701,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1416,1,0,32,144,0,0,1,0,0,0,0,[]],67,10702,[],[[1]],[0,0]],[[1432,161,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,10703,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1648,313,0,32,80,0,3.141592741012573,1,0,0,0,0,[]],67,10704,[],[[1]],[0,0]],[[1632,217,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10705,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1680,313,0,32,112,0,3.141592741012573,1,0,0,0,0,[]],67,10706,[],[[1]],[0,0]],[[1664,185,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10707,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1712,321,0,32,144,0,3.141592741012573,1,0,0,0,0,[]],67,10708,[],[[1]],[0,0]],[[1696,161,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,10709,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1088,257,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,10710,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1088,289,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,10711,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[848,25,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,10712,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[848,57,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,10713,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1336,25,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,10714,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1336,57,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,10715,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1600,257,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,10716,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1600,289,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,10717,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2375.999755859375,2001,0,8,1992,0,3.141592741012573,1,0,0,0,0,[]],67,11768,[],[[1]],[0,0]],[[480,1049,0,1896,336,0,0,1,0,0,0,0,[]],67,11770,[],[[1]],[0,0]],[[1976,9,0,32,80,0,0,1,0,0,0,0,[]],67,11723,[],[[1]],[0,0]],[[1992,105,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,11772,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2008,9,0,32,112,0,0,1,0,0,0,0,[]],67,11773,[],[[1]],[0,0]],[[2024,137,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,11774,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2040,9,0,32,144,0,0,1,0,0,0,0,[]],67,11775,[],[[1]],[0,0]],[[2056,169,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,11776,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1960,33,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,11777,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1960,65,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,11778,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2296,409,0,8,144,0,1.570796370506287,1,0,0,0,0,[]],67,11880,[],[[1]],[0,0]],[[2352,641,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,11781,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2352,673,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,11782,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2352,705,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,11783,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2312,433,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,11875,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2312,465,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,11876,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2312,497,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,11877,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2312,529,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,11878,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2296,545,0,8,144,0,1.570796370506287,1,0,0,0,0,[]],67,11879,[],[[1]],[0,0]],[[2288,417,0,8,128,0,0,1,0,0,0,0,[]],67,11881,[],[[1]],[0,0]],[[2096,481,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,11882,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2152,417,0,8,128,0,0,1,0,0,0,0,[]],67,11883,[],[[1]],[0,0]],[[2352,841,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,11884,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2352,873,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,11885,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2352,905,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,11886,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2352,937,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,11887,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2352,969,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,11888,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2352,1001,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,11889,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2352,1033,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,11890,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2224,481,0,88,88,0,0,1,0.5,0.5,0,0,[]],50,11891,[[-1],[0],[0],[0],[0],[-2],[1]],[[0],[1,1,1,0,"R 360",175,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[2224,481,0,40,40,0,0,1,0.5,0.5,0,0,[]],50,11892,[[1],[1],[10],[0],[0],[-2],[1]],[[0],[1,1,1,0,"L 360",175,0,0,360,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[2224,529,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,11893,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2224,433,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,11894,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2272,481,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,11895,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2176,481,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,11896,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2248,457,0,32,32,0,0.7853981852531433,1,0.5,0.5,0,0,[]],47,11897,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2248,505,0,32,32,0,2.356194496154785,1,0.5,0.5,0,0,[]],47,11898,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2200,505,0,32,32,0,-2.356194734573364,1,0.5,0.5,0,0,[]],47,11899,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2200,457,0,32,32,0,-0.7853984832763672,1,0.5,0.5,0,0,[]],47,11900,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[2304,921,0,8,128,0,0,1,0,0,0,0,[]],67,11901,[],[[1]],[0,0]],[[2288,993,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,11902,[[0.65],[0]],[[0]],[0,"",1,1]],[[2016,921,0,128,8,0,1.570796370506287,1,0,0,0,0,[]],45,11771,[],[[0],[1]],[0,0]],[[2008,681,0,8,240,0,0,1,0,0,0,0,[]],67,11780,[],[[1]],[0,0]],[[1864,681,0,144,120,0,0,1,0,0,0,0,[]],67,11903,[],[[1]],[0,0]],[[1696,681,0,168,48,0,0,1,0,0,0,0,[]],67,11904,[],[[1]],[0,0]],[[1792,849,0,208,8,0,1.570796370506287,1,0,0,0,0,[]],45,11905,[],[[0],[1]],[0,0]],[[1848,745,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,11906,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1848,777,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,11907,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1608,889,0,8,160,0,0,1,0,0,0,0,[]],67,11908,[],[[1]],[0,0]],[[1496,681,0,8,240,0,0,1,0,0,0,0,[]],67,11909,[],[[1]],[0,0]],[[1344,737,0,8,312,0,0,1,0,0,0,0,[]],67,11910,[],[[1]],[0,0]],[[1136,681,0,8,280,0,0,1,0,0,0,0,[]],67,11911,[],[[1]],[0,0]],[[1592,1033,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,11912,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1592,1001,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,11913,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1416,905,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,11914,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1416,873,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,11915,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1368,753,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,11917,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1216,697,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,11918,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[1328,753,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,11920,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1160,913,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,11921,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1328,785,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,11923,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1160,945,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,11926,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1432,913,0,64,8,0,0,1,0,0,0,0,[]],45,11927,[],[[0],[1]],[0,0]],[[1432,857,0,64,8,0,0,1,0,0,0,0,[]],45,11928,[],[[0],[1]],[0,0]],[[1432,857,0,8,64,0,0,1,0,0,0,0,[]],67,11929,[],[[1]],[0,0]],[[1328,817,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,11916,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[968,785,0,8,64,0,0,1,0,0,0,0,[]],67,11919,[],[[1]],[0,0]],[[808,897,0,8,64,0,0,1,0,0,0,0,[]],67,11922,[],[[1]],[0,0]],[[656,753,0,8,64,0,0,1,0,0,0,0,[]],67,11924,[],[[1]],[0,0]],[[800,1033,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,11931,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[812,889,0,16,16,0,0,1,0.5,0.5,0,0,[]],47,11932,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[660,825,0,16,16,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,11933,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[660,744,0,16,16,0,0,1,0.5,0.5,0,0,[]],47,11934,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[1328,1033,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,11935,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1120,801,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,11936,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1120,833,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,11937,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1120,865,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,11938,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1120,697,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,11939,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[1088,697,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,11940,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[1056,697,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,11941,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[1024,697,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,11942,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[992,697,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,11943,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[960,697,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,11944,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[928,697,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,11945,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[896,696,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,11946,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[864,696,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,11947,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[832,696,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,11948,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[800,696,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,11949,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[768,696,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,11950,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[736,696,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,11951,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[704,696,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,11952,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[672,696,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,11953,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[640,696,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,11954,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[608,696,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,11955,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[576,696,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,11956,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[544,696,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,11957,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[512,696,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,11958,[[0],[1]],[[0],[1]],[0,"Default",0,1]],[[960,1033,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,11968,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[928,1033,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,11969,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[896,1033,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,11970,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[864,1033,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,11971,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[832,1033,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,11972,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[812,969,0,16,16,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,11973,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[768,1033,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,11974,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[736,1033,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,11975,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[704,1033,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,11976,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[672,1033,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,11977,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[640,1033,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,11978,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[608,1033,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,11979,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[576,1033,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,11980,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[544,1033,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,11981,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[512,1033,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,11982,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[496,681,0,368,8,0,1.570796370506287,1,0,0,0,0,[]],45,11925,[],[[0],[1]],[0,0]],[[408,880,0,32,352,0,0,1,0.5,0.5,0,0,[]],43,11930,[[0.001],[0]],[[0]],[1,"",1,1]],[[472,1664,0,1904,344,0,0,1,0,0,0,0,[]],67,11959,[],[[1]],[0,0]],[[0,2000,0,1848,8,0,0,1,0,0,0,0,[]],67,11961,[],[[1]],[0,0]],[[360,1984,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,11962,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[520,1984,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,11963,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[488,1984,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,11964,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[424,1984,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,11966,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[392,1984,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,11967,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[328,1984,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,11983,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[296,1984,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,11984,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[264,1984,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,11985,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[232,1984,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,11986,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[200,1984,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,11987,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[136,1984,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,11989,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[104,1984,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,11990,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[72,1984,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,11991,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[456,1680,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,11992,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[456,1712,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,11993,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[456,1744,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,11994,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[456,1776,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,11995,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[456,1808,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,11996,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[456,1840,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,11997,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[456,1872,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,11998,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[456,1904,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,11999,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[456,1936,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,12000,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[456,1968,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,12001,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[168,1680,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,12002,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[168,1712,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,12003,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[168,1744,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,12004,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[168,1776,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,12005,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[168,1808,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,12006,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[168,1840,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,12007,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[168,1872,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,12008,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[168,1904,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,12009,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[168,1936,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,12010,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[168,1968,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,12011,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[152,672,0,320,8,0,0,1,0,0,0,0,[]],51,11965,[],[[0],[1],[1,100,""]],[0,0]],[[456,696,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,11988,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[424,696,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,12012,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[392,696,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,12013,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[360,696,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,12014,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[328,696,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,12015,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[296,696,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,12016,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[264,696,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,12017,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[232,696,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,12018,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[200,696,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,12019,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[168,696,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,12020,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[318,680,0,32,288,0,-1.570796489715576,1,0.5,0.5,0,0,[]],50,12021,[[-1],[0],[0],[0],[0],[2],[1]],[[0],[1,0,1,0,"B 3000",300,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[152.0000152587891,1376,0,288,8,0,1.570796370506287,1,0,0,0,0,[]],51,10659,[],[[0],[1],[1,100,""]],[0,0]],[[152,1504,0,32,288,0,0,1,0.5,0.5,0,0,[]],50,12033,[[-1],[0],[0],[0],[0],[3],[1]],[[0],[1,0,1,0,"F 3000",300,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[168,1392,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,12024,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[168,1424,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,12025,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[168,1456,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,12026,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[168,1488,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,12027,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[168,1520,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,12028,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[168,1552,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,12029,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[168,1584,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,12030,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[168,1616,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,12031,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[168,1648,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,12032,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[536,1524,0,32,288,0,0,1,0.5,0.5,0,0,[]],49,12023,[[3],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[1,"Default",0,1]],[[856,1536,0,128,8,0,1.570796370506287,1,0,0,0,0,[]],45,12034,[],[[0],[1]],[0,0]],[[848,1384,0,8,152,0,0,1,0,0,0,0,[]],67,12035,[],[[1]],[0,0]],[[1064,1384,0,128,8,0,1.570796370506287,1,0,0,0,0,[]],45,12036,[],[[0],[1]],[0,0]],[[1056,1512,0,8,152,0,0,1,0,0,0,0,[]],67,12037,[],[[1]],[0,0]],[[1272,1480,0,128,8,0,1.570796370506287,1,0,0,0,0,[]],45,12038,[],[[0],[1]],[0,0]],[[1264,1384,0,8,96,0,0,1,0,0,0,0,[]],67,12039,[],[[1]],[0,0]],[[1264,1608,0,8,56,0,0,1,0,0,0,0,[]],67,12040,[],[[1]],[0,0]],[[1528,1384,0,48,8,0,1.570796370506287,1,0,0,0,0,[]],45,12041,[],[[0],[1]],[0,0]],[[1520,1416,0,8,176,0,0,1,0,0,0,0,[]],67,12042,[],[[1]],[0,0]],[[1520,1592,0,8,72,0,0,1,0,0,0,0,[]],67,12043,[],[[1]],[0,0]],[[1760,1544,0,56,8,0,1.570796370506287,1,0,0,0,0,[]],45,12044,[],[[0],[1]],[0,0]],[[1752,1384,0,8,160,0,0,1,0,0,0,0,[]],67,12045,[],[[1]],[0,0]],[[1752,1600,0,8,64,0,0,1,0,0,0,0,[]],67,12046,[],[[1]],[0,0]],[[256,1520,0,152,64,0,0,1,0,0,0,0,[]],46,12047,[[1],[1],[""],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","!",1,0,50,0,0,0,0,0,"",-1,0]],[[368,-80,0,60.93439102172852,60.93439102172852,0,0,1,0.5,0.5,0,0,[]],53,12048,[["Motion Blur"],[""],[0]],[],[1,"Default",0,1]]],[]],["UI",2,184669714796134,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[240,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3097,[["right"]],[[0,1,0,1,1]],[0,"Default",0,1]],[[80,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3098,[["left"]],[[0,1,0,1,1]],[0,"Default",1,1]],[[560,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3099,[["up"]],[[1,1,1,1,1]],[0,"Default",3,1]],[[400,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3100,[["down"]],[[1,1,1,1,1]],[0,"Default",2,1]]],[]],["End Card",3,133128240730973,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],78,2607,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[12.04449462890625,194,0,615.9109497070313,67,0,0,1,0,0,0,0,[]],79,2608,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Timer for this level",2.5,0,0,0,0,0,-10,0,"",-1,0]],[[17.546875,248,0,604.90625,105,0,0,1,0,0,0,0,[]],80,2610,[[0],[0],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","13:40:40",4,0,63,50,0,0,-10,0,"",-1,0]],[[115.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,2611,[[0],[1],[0],[0],["replay"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Replay",""],[""],[2,2,0,0,0],["",""]],[0,"Replay",0,1]],[[524.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3086,[[0],[1],[0],[0],["next"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Next",""],[""],[2,2,0,0,0],["",""]],[0,"Next",0,1]],[[320.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3087,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > Back","Level Menu"],[""],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[320.75,521.8050537109375,0,384,96,0,0,1,0.5,0.5,0,0,[]],70,3088,[[1],[1],[0],[0],[""],["{\"size\": 22, \"left\": 70, \"right\": 18, \"alignY\": 60}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > DownloadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"DownloadReplay",0,1]]],[]],["Pause",4,662487426301616,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-310,678,0,274,31,0,0,1,0,0,0,0,[]],168,3089,[],[],[".ovo",0,1,"file"]],[[320,320,0,425,250,0,0,1,0.5,0.5,0,0,[]],82,3090,[],[[6,1,"",300,1,1,"",300,"overlay",1,"PauseClose",1,1]],[0,"Default",0,1]],[[214,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3091,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"",""],["PauseClose"],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[426,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3092,[[0],[1],[0],[0],["quit"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > GiveUp",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[115.5,202,0,409,118,0,0,1,0,0,0,0,[]],83,3093,[[1],[1],["pause"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Pause",4,0,57,50,0,0,-10,0,"",-1,0]],[[320.5,88,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3094,[[1],[1],[0],[0],["loadreplay"],["{\"size\": 16, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > LoadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"LoadReplay",0,1]],[[320.5,157,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3095,[[1],[0],[0],[0],["toggledebug"],["{\"size\": 15, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Debug > Toggle",""],[""],[2,2,0,0,0],["",""]],[0,"ToggleDebug",0,1]],[[78,448,0,484,134,0,0,1,0,0,0,0,[]],193,3096,[],[],[0,"Default",0,1]]],[]],["Overlay",5,126492777831023,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[432,4,0,203.0009155273438,64,0,0,1,0,0,0,0,[]],107,5488,[],[[1,0,1,0,1]],[2,2,2,2,0,1,0,0,1]],[[432,4,0,203,64,0,0,1,0,0,0,0,[]],84,3101,[[0],[0],[""],["en-us"],[0],[1],[1],["{\"alignY\": 85, \"alignX\": 45, \"size\": 28}"],[0],[1],[0],[0],[0]],[["",""],[1,0,1,0,1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",2,0,100,50,0,0,-10,0,"",-1,0]],[[88,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3102,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Pause",""],[""],[0,0,0,0,1],["",""]],[0,"Pause",0,1]],[[158,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3103,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Replay","1"],[""],[0,0,0,0,1],["",""]],[0,"Reload",0,1]]],[]],["End Game",6,259715304976516,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],85,3104,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[73,194,0,494,72,0,0,1,0,0,0,0,[]],86,3105,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],["{alignY:50}"],[0],[1],[0],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Your final time",2.5,0,50,50,0,0,-10,0,"",-1,0]],[[320,403,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3106,[[0],[1],[0],[0],[""],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Quit",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[73,243,0,494,85,0,0,1,0,0,0,0,[]],87,3108,[[0],[1],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",3,0,50,50,0,0,-10,0,"",-1,0]],[[73,318,0,494,25,0,0,1,0,0,0,0,[]],86,5480,[[1],[1],["tryagainhardmode"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Try again in hard mode!",1,0,50,50,0,0,-2,0,"",-1,0]]],[]]],[],[]],["Platforms",3000,3000,true,"Levels",690535640844964,[["Background",0,899981170570826,true,[255,255,255],false,0,0,1,false,false,1,0,0,[[[-82,44,0,60.93439102172852,60.93439102172852,0,0,1,0.5,0.5,0,0,[]],53,1623,[["The chamber"],[""],[0]],[],[1,"Default",0,1]]],[]],["Layer 0",1,443402015814826,true,[255,255,255],true,1,1,1,false,false,1,0,0,[[[93,2879,0,264,9,0,0,1,0,0,0,0,[]],51,1624,[],[[0],[1],[1,100,""]],[0,0]],[[186.1044158935547,80.30842590332031,0,32,64,0,0,1,0.5,0.5,0,0,[]],42,1625,[["run"],[0],[1],[1],[0],[0.8],[0.5],[0],[1],[0],[0],[0],[""],[2],[0],[0],[0],[""],[0],[3],[0],[0],[0],[0],[0],[0],[0]],[[330,1500,1500,650,1500,1000,0,0,0,1],[],[0,0],[0,10000,360,1]],[1,"Default",0,1]],[[95,21,0,2865,9,0,1.570796370506287,1,0,0,0,0,[]],51,1626,[],[[0],[1],[1,100,""]],[0,0]],[[591,604,0,97,192,0,0,1,0.5257731676101685,0.4974874258041382,0,0,[]],44,1627,[],[[0]],[0,"Default",0,1]],[[281.1397705078125,21,0,2654,9,0,1.570796370506287,1,0,0,0,0,[]],51,1628,[],[[0],[1],[1,100,""]],[0,0]],[[96.41244506835938,154,0,176.5566711425781,64,0,0,1,0,0,0,0,[]],46,1629,[[1],[1],[""],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Down you go",1,0,50,0,0,0,0,0,"",-1,0]],[[357,2879,0,264,9,0,0,1,0,0,0,0,[]],51,1630,[],[[0],[1],[1,100,""]],[0,0]],[[492,2860,0,166,78,0,0,1,0.5,0.5,0,0,[]],50,1631,[[-1],[0],[0],[0],[0],[0],[0]],[[0],[1,0,1,0,"F 1000",600,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[496,2847,0,32,32,0,0,1,0.5,0.5,0,0,[]],49,1632,[[0],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[0,"Default",0,1]],[[2120,2900,0,687,9,0,0,1,0,0,0,0,[]],51,1633,[],[[0],[1],[1,100,""]],[0,0]],[[2384,2561,0,264,9,0,0,1,0,0,0,0,[]],51,1634,[],[[0],[1],[1,100,""]],[0,0]],[[2519,2542,0,166,78,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,1635,[[-1],[0],[0],[0],[0],[1],[0]],[[0],[1,1,1,0,"F 200;W 1;B 200;W 1",200,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[2174,2561,0,210,9,0,0,1,0,0,0,0,[]],51,1636,[],[[0],[1],[1,100,""]],[0,0]],[[2173,2247,0,320,9,0,1.570796370506287,1,0,0,0,0,[]],51,1637,[],[[0],[1],[1,100,""]],[0,0]],[[2272,921,0,1476,9,0,1.570796370506287,1,0,0,0,0,[]],51,2031,[],[[0],[1],[1,100,""]],[0,0]],[[2167,2252,0,1576,9,0,3.141592741012573,1,0,0,0,0,[]],51,2569,[],[[0],[1],[1,100,""]],[0,0]],[[1753,2229,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,2570,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[773,2143,0,352,9,0,3.141592741012573,1,0,0,0,0,[]],51,2577,[],[[0],[1],[1,100,""]],[0,0]],[[777,659,0,1482,9,0,1.570796370506287,1,0,0,0,0,[]],51,3014,[],[[0],[1],[1,100,""]],[0,0]],[[1045,1729,0,312,9,0,1.570796370506287,1,0,0,0,0,[]],51,3015,[],[[0],[1],[1,100,""]],[0,0]],[[1262,1686,0,312,9,0,0,1,0,0,0,0,[]],51,3016,[],[[0],[1],[1,100,""]],[0,0]],[[1621,1286,0,312,9,0,2.530727386474609,1,0,0,0,0,[]],51,3017,[],[[0],[1],[1,100,""]],[0,0]],[[1737,1024,0,312,9,0,0.7853981852531433,1,0,0,0,0,[]],51,3018,[],[[0],[1],[1,100,""]],[0,0]],[[1179,953,0,312,9,0,0.7853981852531433,1,0,0,0,0,[]],51,3019,[],[[0],[1],[1,100,""]],[0,0]],[[2449,834,0,1546,9,0,3.141592741012573,1,0,0,0,0,[]],51,3020,[],[[0],[1],[1,100,""]],[0,0]],[[2627,927,0,361,9,0,3.141592741012573,1,0,0,0,0,[]],51,3021,[],[[0],[1],[1,100,""]],[0,0]],[[915,508,0,320,9,0,1.570796370506287,1,0,0,0,0,[]],51,3022,[],[[0],[1],[1,100,""]],[0,0]],[[1515,1535,0,1606.340209960938,1708.898071289063,0,1.570796370506287,1,0.5,0.5,0,0,[]],50,3023,[[-1],[0],[0],[0],[0],[1],[0]],[[0],[1,1,1,0,"L 90; W 10;",200,0,0,10,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]]],[]],["UI",2,654280034016059,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[240,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3097,[["right"]],[[0,1,0,1,1]],[0,"Default",0,1]],[[80,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3098,[["left"]],[[0,1,0,1,1]],[0,"Default",1,1]],[[560,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3099,[["up"]],[[1,1,1,1,1]],[0,"Default",3,1]],[[400,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3100,[["down"]],[[1,1,1,1,1]],[0,"Default",2,1]]],[]],["End Card",3,919134056991806,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],78,2607,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[12.04449462890625,194,0,615.9109497070313,67,0,0,1,0,0,0,0,[]],79,2608,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Timer for this level",2.5,0,0,0,0,0,-10,0,"",-1,0]],[[17.546875,248,0,604.90625,105,0,0,1,0,0,0,0,[]],80,2610,[[0],[0],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","13:40:40",4,0,63,50,0,0,-10,0,"",-1,0]],[[115.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,2611,[[0],[1],[0],[0],["replay"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Replay",""],[""],[2,2,0,0,0],["",""]],[0,"Replay",0,1]],[[524.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3086,[[0],[1],[0],[0],["next"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Next",""],[""],[2,2,0,0,0],["",""]],[0,"Next",0,1]],[[320.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3087,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > Back","Level Menu"],[""],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[320.75,521.8050537109375,0,384,96,0,0,1,0.5,0.5,0,0,[]],70,3088,[[1],[1],[0],[0],[""],["{\"size\": 22, \"left\": 70, \"right\": 18, \"alignY\": 60}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > DownloadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"DownloadReplay",0,1]]],[]],["Pause",4,162589830408064,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-310,678,0,274,31,0,0,1,0,0,0,0,[]],168,3089,[],[],[".ovo",0,1,"file"]],[[320,320,0,425,250,0,0,1,0.5,0.5,0,0,[]],82,3090,[],[[6,1,"",300,1,1,"",300,"overlay",1,"PauseClose",1,1]],[0,"Default",0,1]],[[214,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3091,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"",""],["PauseClose"],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[426,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3092,[[0],[1],[0],[0],["quit"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > GiveUp",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[115.5,202,0,409,118,0,0,1,0,0,0,0,[]],83,3093,[[1],[1],["pause"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Pause",4,0,57,50,0,0,-10,0,"",-1,0]],[[320.5,88,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3094,[[1],[1],[0],[0],["loadreplay"],["{\"size\": 16, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > LoadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"LoadReplay",0,1]],[[320.5,157,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3095,[[1],[0],[0],[0],["toggledebug"],["{\"size\": 15, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Debug > Toggle",""],[""],[2,2,0,0,0],["",""]],[0,"ToggleDebug",0,1]],[[78,448,0,484,134,0,0,1,0,0,0,0,[]],193,3096,[],[],[0,"Default",0,1]]],[]],["Overlay",5,550065494499744,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[432,4,0,203.0009155273438,64,0,0,1,0,0,0,0,[]],107,5488,[],[[1,0,1,0,1]],[2,2,2,2,0,1,0,0,1]],[[432,4,0,203,64,0,0,1,0,0,0,0,[]],84,3101,[[0],[0],[""],["en-us"],[0],[1],[1],["{\"alignY\": 85, \"alignX\": 45, \"size\": 28}"],[0],[1],[0],[0],[0]],[["",""],[1,0,1,0,1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",2,0,100,50,0,0,-10,0,"",-1,0]],[[88,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3102,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Pause",""],[""],[0,0,0,0,1],["",""]],[0,"Pause",0,1]],[[158,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3103,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Replay","1"],[""],[0,0,0,0,1],["",""]],[0,"Reload",0,1]]],[]],["End Game",6,494593603968384,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],85,3104,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[73,194,0,494,72,0,0,1,0,0,0,0,[]],86,3105,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],["{alignY:50}"],[0],[1],[0],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Your final time",2.5,0,50,50,0,0,-10,0,"",-1,0]],[[320,403,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3106,[[0],[1],[0],[0],[""],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Quit",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[73,243,0,494,85,0,0,1,0,0,0,0,[]],87,3108,[[0],[1],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",3,0,50,50,0,0,-10,0,"",-1,0]],[[73,318,0,494,25,0,0,1,0,0,0,0,[]],86,5480,[[1],[1],["tryagainhardmode"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Try again in hard mode!",1,0,50,50,0,0,-2,0,"",-1,0]]],[]]],[],[]],["Sandbox Level",2000,1100,true,"Levels",138917027031498,[["Layer 0",0,240388268951302,true,[255,255,255],false,1,1,1,false,false,1,0,0,[[[644,0,0,184,9,0,1.570796370506287,1,0,0,0,0,[]],51,3026,[],[[0],[1],[1,100,""]],[0,0]],[[381.5,341.5,0,4,8,0,0,1,1,0,0,0,[]],38,3027,[[0],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","rightarm",3,1,0,0,1,2]],[0,"Default",0,1]],[[381.5,349.5,0,4,8,0,0,1,1,0,0,0,[]],40,3028,[[1],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","righthand",3,1,0,0,1,2]],[0,"Default",0,1]],[[377.5,362.5,0,4,8,0,0,1,0,0,0,0,[]],39,3029,[[4],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","rightfoot",3,1,0,0,1,2]],[0,"Default",0,1]],[[377.5,354.5,0,4,8,0,0,1,0,0,0,0,[]],41,3030,[[3],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","rightleg",3,1,0,0,1,2]],[0,"Default",0,1]],[[373.5,362.5,0,4,8,0,0,1,0,0,0,0,[]],35,3031,[[6],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","leftfoot",3,1,0,0,1,2]],[0,"Default",0,1]],[[373.5,354.5,0,4,8,0,0,1,0,0,0,0,[]],37,3032,[[5],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","leftleg",3,1,0,0,1,2]],[0,"Default",0,1]],[[377.5,346.5,0,8,16,0,0,1,0.5,0.5,0,0,[]],32,3033,[[2],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","body",3,1,0,0,1,2]],[0,"Default",0,1]],[[377.5,338.5,0,32,32,0,0,1,0.5,1,0,0,[]],33,3034,[[7],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","head",3,1,0,0,1,2]],[0,"Default",0,1]],[[373.5,341.5,0,4,8,0,0,1,1,0,0,0,[]],34,3035,[[8],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","leftarm",3,1,0,0,1,2]],[0,"Default",0,1]],[[373.5,349.5,0,4,8,0,0,1,1,0,0,0,[]],36,3036,[[9],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","lefthand",3,1,0,0,1,2]],[0,"Default",0,1]],[[1591,672,0,268,9,0,0,1,0,0,0,0,[]],51,3037,[],[[0],[1],[1,100,""]],[0,0]],[[132.5,919.5,0,1735,9,0,0,1,0,0,0,0,[]],51,3038,[],[[0],[1],[1,100,""]],[0,0]],[[344.5,820.5,0,102,9,0,1.570796370506287,1,0,0,0,0,[]],51,3039,[],[[0],[1],[1,100,""]],[0,0]],[[1941.5,368.5,0,220,9,0,1.570796370506287,1,0,0,0,0,[]],51,3040,[],[[0],[1],[1,100,""]],[0,0]],[[1772.5,217.5,0,214,9,0,1.570796370506287,1,0,0,0,0,[]],51,3041,[],[[0],[1],[1,100,""]],[0,0]],[[1912.5,403.5,0,26,9,0,0,1,0,0,0,0,[]],51,3042,[],[[0],[1],[1,100,""]],[0,0]],[[1739.5,422.5,0,29,9,0,0,1,0,0,0,0,[]],51,3043,[],[[0],[1],[1,100,""]],[0,0]],[[344.5,870.5,0,187,9,0,0.2617993950843811,1,0,0,0,0,[]],51,3045,[],[[0],[1],[1,100,""]],[0,0]],[[273.5,905.5,0,32,32,0,0,1,0.5,0.5,0,0,[]],43,3047,[[0.7],[0]],[[0]],[0,"Default",0,1]],[[334,192,0,249.030517578125,64,0,0,1,0,0,0,0,[]],46,3048,[[1],[1],[""],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[[1],["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Welcome to the training level",1,0,50,0,0,0,0,0,"",-1,0]],[[185,904,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,3049,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[72,576,0,32,32,0,0.7877870798110962,1,0.5,0.5,0,0,[]],43,3051,[[0.5],[1]],[[0]],[0,"Default",0,1]],[[863,852,0,232,8,0,-1.221730589866638,1,0,0,0,0,[]],51,3455,[],[[0],[1],[1,100,""]],[0,0]],[[577,252,0,32,64,0,0,1,0.5,0.5,0,0,[]],42,3044,[["run"],[0],[1],[1],[0],[0.8],[0.5],[0],[1],[0],[0],[0],[""],[2],[0],[0],[0],[""],[0],[3],[0],[0],[0],[0],[0],[0],[0]],[[330,1500,1500,650,1500,1000,0,0,0,1],[],[0,0],[0,10000,360,1]],[1,"Default",0,1]],[[608.1904296875,921.53271484375,0,120,8,0,-0.0872664749622345,1,0,0,0,0,[]],51,3448,[],[[0],[1],[1,100,""]],[0,0]],[[723,912,0,72.84906768798828,8,0,-0.2617994248867035,1,0,0,0,0,[]],51,4604,[],[[0],[1],[1,100,""]],[0,0]],[[787,896,0,52,8,0,-0.4363324046134949,1,0,0,0,0,[]],51,4608,[],[[0],[1],[1,100,""]],[0,0]],[[831,876,0,48,8,0,-0.698131799697876,1,0,0,0,0,[]],51,4609,[],[[0],[1],[1,100,""]],[0,0]],[[540,576,0,256,7.886388778686523,0,0,1,0,0,0,0,[]],51,3025,[],[[0],[1],[1,100,""]],[0,0]],[[880,812,0,72,8,0,-1.570796370506287,1,0,0,0,0,[]],51,4671,[],[[0],[1],[1,100,""]],[0,0]],[[872,688,0,100,8,0,-2.094395160675049,1,0,0,0,0,[]],51,4680,[],[[0],[1],[1,100,""]],[0,0]],[[876,680,0,72.84906768798828,8,0,1.396263360977173,1,0,0,0,0,[]],51,4688,[],[[0],[1],[1,100,""]],[0,0]],[[832,608,0,52,8,0,-2.668806791305542,1,0,0,0,0,[]],51,4694,[],[[0],[1],[1,100,""]],[0,0]],[[1292,268,0,64,64,0,0,1,0.5,0.5,0,0,[]],60,5456,[[""]],[[0],[400,-200,800,0,0,0],[0,0,0,1,1]],[0,"Default",0,1]],[[504,316,0,988,9,0,0,1,0,0,0,0,[]],51,5479,[],[[0],[1],[1,100,""]],[0,0]],[[1145.919677734375,15.06920623779297,0,512,84,0,0,1,0,0,0,0,[]],162,3063,[],[],[0,0]],[[-140,600,0,60.93439102172852,60.93439102172852,0,0,1,0.5,0.5,0,0,[]],53,3024,[["Buttons!"],[""],[1]],[],[1,"Default",0,1]],[[784,764,0,96,8,0,0,1,0,0,0,0,[]],45,1075,[],[[0],[1]],[0,0]],[[624,824,0,96,8,0,1.570796370506287,1,0,0,0,0,[]],45,1076,[],[[0],[1]],[0,0]],[[640,320,0,168,9,0,1.570796370506287,1,0,0,0,0,[]],51,1077,[],[[0],[1],[1,100,""]],[0,0]],[[368,-0.05680561065673828,0,516,8,0,0,1,0,0,0,0,[]],51,4682,[],[[0],[1],[1,100,""]],[0,0]],[[1700,139,0,25,25,0,0,1,0,0.5199999809265137,0,0,[]],165,5633,[],[],[0,"Default",0,1]],[[1206,775,0,88,88,0,0,1,0.5,0.5,0,0,[]],50,7814,[[-1],[0],[0],[0],[0],[1],[1]],[[0],[1,1,1,0,"R 90 ; W 1; R 90 ; W 1; R 90 ; W 1; R 90 ; W 1",175,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1206,775,0,40,40,0,0,1,0.5,0.5,0,0,[]],50,7815,[[1],[1],[10],[0],[0],[2],[1]],[[0],[1,1,1,0,"L 90 ; W 2; L 90 ; W 2; L 90 ; W 2; L 90 ; W 2",175,0,0,360,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1206,823,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7816,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1206,727,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7817,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1254,775,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,7818,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1158,775,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,7819,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1230,751,0,32,32,0,0.7853981852531433,1,0.5,0.5,0,0,[]],47,7820,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1230,799,0,32,32,0,2.356194496154785,1,0.5,0.5,0,0,[]],47,7821,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1182,799,0,32,32,0,-2.356194734573364,1,0.5,0.5,0,0,[]],47,7822,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1182,751,0,32,32,0,-0.7853984832763672,1,0.5,0.5,0,0,[]],47,7823,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1210,759,0,32,8,0,1.570796370506287,1,0,0,0,0,[]],67,7825,[],[[1]],[0,0]],[[1392,775,0,88,88,0,0,1,0.5,0.5,0,0,[]],50,7826,[[-1],[0],[0],[0],[0],[1],[1]],[[0],[1,1,1,0,"R 360",175,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1392,775,0,40,40,0,0,1,0.5,0.5,0,0,[]],50,7827,[[1],[1],[10],[0],[0],[2],[1]],[[0],[1,1,1,0,"L 360",175,0,0,360,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1392,823,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7828,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1392,727,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7829,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1440,775,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,7830,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1344,775,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,7831,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1416,751,0,32,32,0,0.7853981852531433,1,0.5,0.5,0,0,[]],47,7832,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1416,799,0,32,32,0,2.356194496154785,1,0.5,0.5,0,0,[]],47,7833,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1368,799,0,32,32,0,-2.356194734573364,1,0.5,0.5,0,0,[]],47,7834,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1368,751,0,32,32,0,-0.7853984832763672,1,0.5,0.5,0,0,[]],47,7835,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1396,759,0,32,8,0,1.570796370506287,1,0,0,0,0,[]],67,7836,[],[[1]],[0,0]],[[1600.002685546875,749.7665405273438,0,32,32,0,0.7853981852531433,1,0.5,0.5,0,0,[]],47,7843,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1577.21826171875,772.6513671875,0,88,88,0,0,1,0.5,0.5,0,0,[]],50,7837,[[-1],[0],[0],[0],[0],[1],[1]],[[0],[1,1,1,0,"R 90 ; W 1; R 90 ; W 1; R 90 ; W 1; R 90 ; W 1",175,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1595.2802734375,752.5615844726563,0,16,16,0,0,1,0.5,0.5,0,0,[]],50,7838,[[1],[1],[10],[0],[0],[2],[1]],[[0],[1,1,0,0,"L 45 ; F 50; W 1.5; B 50 ; R 45; W 1",175,0,0,360,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1576.002685546875,821.7665405273438,0,32,32,0,3.141592741012573,1,0.5,0.5,0,0,[]],47,7839,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1576.002685546875,725.7665405273438,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,7840,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1624.002685546875,773.7665405273438,0,32,32,0,1.570796370506287,1,0.5,0.5,0,0,[]],47,7841,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1528.002685546875,773.7665405273438,0,32,32,0,-1.570796489715576,1,0.5,0.5,0,0,[]],47,7842,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1600.002685546875,797.7665405273438,0,32,32,0,2.356194496154785,1,0.5,0.5,0,0,[]],47,7844,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1552.002685546875,797.7665405273438,0,32,32,0,-2.356194734573364,1,0.5,0.5,0,0,[]],47,7845,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1552.002685546875,749.7665405273438,0,32,32,0,-0.7853984832763672,1,0.5,0.5,0,0,[]],47,7846,[[0],[0]],[[0],[1]],[0,"Default",0,1]],[[1580.002685546875,757.7665405273438,0,32,8,0,1.570796370506287,1,0,0,0,0,[]],67,7847,[],[[1]],[0,0]],[[1558.478881835938,753.4974365234375,0,16,16,0,0,1,0.5,0.5,0,0,[]],50,1079,[[1],[1],[10],[0],[0],[2],[1]],[[0],[1,1,0,0,"R 45 ; B 50; W 1.5; F 50 ; L 45; W 1",175,0,0,360,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1592.589965820313,791.0340576171875,0,16,16,0,0,1,0.5,0.5,0,0,[]],50,785,[[1],[1],[10],[0],[0],[2],[1]],[[0],[1,1,0,0,"L 135 ; B 50; W 1.5; F 50 ; R 135; W 1",175,0,0,1080,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[1557.3876953125,789.7631225585938,0,16,16,0,0,1,0.5,0.5,0,0,[]],50,1078,[[1],[1],[10],[0],[0],[2],[1]],[[0],[1,1,0,0,"L 45 ; B 50; W 1.5; F 50 ; R 45 ; W 1",175,0,0,360,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[968.3872680664063,250.6834869384766,0,8,64,0,0,1,0.5,0.5,0,0,[[255,255,255,255,0,0,0.01]]],62,44,[[1],[0],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[918.5987548828125,250.6844787597656,0,8,64,0,3.141592741012573,1,0.5,0.5,0,0,[[255,255,255,255,0,0,0.01]]],62,45,[[0],[1],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[1089.912841796875,251.2826080322266,0,8,64,0,1.570796370506287,1,0.5,0.5,0,0,[[255,255,255,255,0,0,0.01]]],62,46,[[3],[2],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[1090.7314453125,223.4662628173828,0,8,64,0,-1.570796489715576,1,0.5,0.5,0,0,[[255,255,255,255,0,0,0.01]]],62,47,[[2],[3],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[793.4739990234375,235.6983184814453,0,8,64,0,0,1,0.5,0.5,0,0,[[255,255,255,255,0,0,0.01]]],62,49,[[5],[4],[0],[0],[0],[0],[0]],[[0]],[0,"Default",0,1]],[[735.6422119140625,268.5438842773438,0,8,64,0,-1.570796489715576,1,0.5,0.5,0,0,[[255,255,255,255,0,0,0.01]]],62,51,[[4],[5],[0],[0],[0],[0],[1]],[[0]],[0,"Default",0,1]],[[738,131,0,32,32,0,0,1,0.5,0.5,0,0,[]],47,53,[[0],[0]],[[0],[1]],[0,"Default",0,1]]],[]],["UI",1,707855211978893,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[240,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3097,[["right"]],[[0,1,0,1,1]],[0,"Default",0,1]],[[80,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3098,[["left"]],[[0,1,0,1,1]],[0,"Default",1,1]],[[560,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3099,[["up"]],[[1,1,1,1,1]],[0,"Default",3,1]],[[400,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3100,[["down"]],[[1,1,1,1,1]],[0,"Default",2,1]]],[]],["End Card",2,123988229054377,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],78,2607,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[12.04449462890625,194,0,615.9109497070313,67,0,0,1,0,0,0,0,[]],79,2608,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Timer for this level",2.5,0,0,0,0,0,-10,0,"",-1,0]],[[17.546875,248,0,604.90625,105,0,0,1,0,0,0,0,[]],80,2610,[[0],[0],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","13:40:40",4,0,63,50,0,0,-10,0,"",-1,0]],[[115.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,2611,[[0],[1],[0],[0],["replay"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Replay",""],[""],[2,2,0,0,0],["",""]],[0,"Replay",0,1]],[[524.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3086,[[0],[1],[0],[0],["next"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Next",""],[""],[2,2,0,0,0],["",""]],[0,"Next",0,1]],[[320.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3087,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > Back","Level Menu"],[""],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[320.75,521.8050537109375,0,384,96,0,0,1,0.5,0.5,0,0,[]],70,3088,[[1],[1],[0],[0],[""],["{\"size\": 22, \"left\": 70, \"right\": 18, \"alignY\": 60}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > DownloadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"DownloadReplay",0,1]]],[]],["Pause",3,433581487312939,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-310,678,0,274,31,0,0,1,0,0,0,0,[]],168,3089,[],[],[".ovo",0,1,"file"]],[[320,320,0,425,250,0,0,1,0.5,0.5,0,0,[]],82,3090,[],[[6,1,"",300,1,1,"",300,"overlay",1,"PauseClose",1,1]],[0,"Default",0,1]],[[214,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3091,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"",""],["PauseClose"],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[426,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3092,[[0],[1],[0],[0],["quit"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > GiveUp",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[115.5,202,0,409,118,0,0,1,0,0,0,0,[]],83,3093,[[1],[1],["pause"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Pause",4,0,57,50,0,0,-10,0,"",-1,0]],[[320.5,88,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3094,[[1],[1],[0],[0],["loadreplay"],["{\"size\": 16, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > LoadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"LoadReplay",0,1]],[[320.5,157,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3095,[[1],[0],[0],[0],["toggledebug"],["{\"size\": 15, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Debug > Toggle",""],[""],[2,2,0,0,0],["",""]],[0,"ToggleDebug",0,1]],[[78,448,0,484,134,0,0,1,0,0,0,0,[]],193,3096,[],[],[0,"Default",0,1]]],[]],["Overlay",4,292911961945988,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[432,4,0,203.0009155273438,64,0,0,1,0,0,0,0,[]],107,5488,[],[[1,0,1,0,1]],[2,2,2,2,0,1,0,0,1]],[[432,4,0,203,64,0,0,1,0,0,0,0,[]],84,3101,[[0],[0],[""],["en-us"],[0],[1],[1],["{\"alignY\": 85, \"alignX\": 45, \"size\": 28}"],[0],[1],[0],[0],[0]],[["",""],[1,0,1,0,1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",2,0,100,50,0,0,-10,0,"",-1,0]],[[88,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3102,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Pause",""],[""],[0,0,0,0,1],["",""]],[0,"Pause",0,1]],[[158,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3103,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Replay","1"],[""],[0,0,0,0,1],["",""]],[0,"Reload",0,1]]],[]],["End Game",5,446705927282897,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],85,3104,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[73,194,0,494,72,0,0,1,0,0,0,0,[]],86,3105,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],["{alignY:50}"],[0],[1],[0],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Your final time",2.5,0,50,50,0,0,-10,0,"",-1,0]],[[320,403,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3106,[[0],[1],[0],[0],[""],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Quit",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[73,243,0,494,85,0,0,1,0,0,0,0,[]],87,3108,[[0],[1],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",3,0,50,50,0,0,-10,0,"",-1,0]],[[73,318,0,494,25,0,0,1,0,0,0,0,[]],86,5480,[[1],[1],["tryagainhardmode"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Try again in hard mode!",1,0,50,50,0,0,-2,0,"",-1,0]]],[]]],[[null,1,3064,[[0],[0],[0],[0],[0],[16],[1],[0],[""],[52],[0],[0],[0],[1],[""],[0],[1],[0],[0],[0],[0],[0],[0],[1]],[],[]],[null,14,3065,[],[],[]],[null,16,3066,[[37],[38],[39],[40],[0],[0]],[],[]],[null,17,3067,[],[],["main"]],[null,18,3068,[],[],[0,1,1]],[null,20,3062,[],[],[0,1,0.1]],[null,21,3069,[],[],[0,1,0.1]]],[]],["Level Base",2000,1100,true,"Levels",451614616852985,[["Layer 0",0,462738890423227,true,[255,255,255],false,1,1,1,false,false,1,0,0,[[[32,384,0,576,9,0,0,1,0,0,0,0,[]],51,3070,[],[[0],[1],[1,100,""]],[0,0]],[[381.5,341.5,0,4,8,0,0,1,1,0,0,0,[]],38,3071,[[0],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","rightarm",3,1,0,0,1,2]],[0,"Default",0,1]],[[381.5,349.5,0,4,8,0,0,1,1,0,0,0,[]],40,3072,[[1],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","righthand",3,1,0,0,1,2]],[0,"Default",0,1]],[[377.5,346.5,0,8,16,0,0,1,0.5,0.5,0,0,[]],32,3073,[[2],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","body",3,1,0,0,1,2]],[0,"Default",0,1]],[[377.5,362.5,0,4,8,0,0,1,0,0,0,0,[]],39,3074,[[4],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","rightfoot",3,1,0,0,1,2]],[0,"Default",0,1]],[[377.5,354.5,0,4,8,0,0,1,0,0,0,0,[]],41,3075,[[3],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","rightleg",3,1,0,0,1,2]],[0,"Default",0,1]],[[373.5,362.5,0,4,8,0,0,1,0,0,0,0,[]],35,3076,[[6],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","leftfoot",3,1,0,0,1,2]],[0,"Default",0,1]],[[373.5,354.5,0,4,8,0,0,1,0,0,0,0,[]],37,3077,[[5],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","leftleg",3,1,0,0,1,2]],[0,"Default",0,1]],[[377.5,338.5,0,32,32,0,0,1,0.5,1,0,0,[]],33,3078,[[7],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","head",3,1,0,0,1,2]],[0,"Default",0,1]],[[373.5,341.5,0,4,8,0,0,1,1,0,0,0,[]],34,3079,[[8],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","leftarm",3,1,0,0,1,2]],[0,"Default",0,1]],[[373.5,349.5,0,4,8,0,0,1,1,0,0,0,[]],36,3080,[[9],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","lefthand",3,1,0,0,1,2]],[0,"Default",0,1]],[[0,0,0,32,64,0,0,1,0.5,0.5,0,0,[]],42,3081,[["run"],[0],[1],[1],[0],[0.8],[0.5],[0],[1],[0],[0],[0],[""],[2],[0],[0],[0],[""],[0],[3],[0],[0],[0],[0],[0],[0],[0]],[[330,1500,1500,650,1500,1000,0,0,0,1],[],[0,0],[0,10000,360,1]],[1,"Default",0,1]],[[544,288,0,97,199,0,0,1,0.5257731676101685,0.4974874258041382,0,0,[]],44,3082,[],[[0]],[0,"Default",0,1]]],[]],["UI",1,225950177159953,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[240,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3097,[["right"]],[[0,1,0,1,1]],[0,"Default",0,1]],[[80,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3098,[["left"]],[[0,1,0,1,1]],[0,"Default",1,1]],[[560,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3099,[["up"]],[[1,1,1,1,1]],[0,"Default",3,1]],[[400,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3100,[["down"]],[[1,1,1,1,1]],[0,"Default",2,1]]],[]],["End Card",2,626719004201972,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],78,2607,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[12.04449462890625,194,0,615.9109497070313,67,0,0,1,0,0,0,0,[]],79,2608,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Timer for this level",2.5,0,0,0,0,0,-10,0,"",-1,0]],[[17.546875,248,0,604.90625,105,0,0,1,0,0,0,0,[]],80,2610,[[0],[0],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","13:40:40",4,0,63,50,0,0,-10,0,"",-1,0]],[[115.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,2611,[[0],[1],[0],[0],["replay"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Replay",""],[""],[2,2,0,0,0],["",""]],[0,"Replay",0,1]],[[524.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3086,[[0],[1],[0],[0],["next"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Next",""],[""],[2,2,0,0,0],["",""]],[0,"Next",0,1]],[[320.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3087,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > Back","Level Menu"],[""],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[320.75,521.8050537109375,0,384,96,0,0,1,0.5,0.5,0,0,[]],70,3088,[[1],[1],[0],[0],[""],["{\"size\": 22, \"left\": 70, \"right\": 18, \"alignY\": 60}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > DownloadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"DownloadReplay",0,1]]],[]],["Pause",3,585892581990080,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-310,678,0,274,31,0,0,1,0,0,0,0,[]],168,3089,[],[],[".ovo",0,1,"file"]],[[320,320,0,425,250,0,0,1,0.5,0.5,0,0,[]],82,3090,[],[[6,1,"",300,1,1,"",300,"overlay",1,"PauseClose",1,1]],[0,"Default",0,1]],[[214,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3091,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"",""],["PauseClose"],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[426,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3092,[[0],[1],[0],[0],["quit"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > GiveUp",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[115.5,202,0,409,118,0,0,1,0,0,0,0,[]],83,3093,[[1],[1],["pause"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Pause",4,0,57,50,0,0,-10,0,"",-1,0]],[[320.5,88,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3094,[[1],[1],[0],[0],["loadreplay"],["{\"size\": 16, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > LoadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"LoadReplay",0,1]],[[320.5,157,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3095,[[1],[0],[0],[0],["toggledebug"],["{\"size\": 15, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Debug > Toggle",""],[""],[2,2,0,0,0],["",""]],[0,"ToggleDebug",0,1]],[[78,448,0,484,134,0,0,1,0,0,0,0,[]],193,3096,[],[],[0,"Default",0,1]]],[]],["Overlay",4,852880645616979,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[432,4,0,203.0009155273438,64,0,0,1,0,0,0,0,[]],107,5488,[],[[1,0,1,0,1]],[2,2,2,2,0,1,0,0,1]],[[432,4,0,203,64,0,0,1,0,0,0,0,[]],84,3101,[[0],[0],[""],["en-us"],[0],[1],[1],["{\"alignY\": 85, \"alignX\": 45, \"size\": 28}"],[0],[1],[0],[0],[0]],[["",""],[1,0,1,0,1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",2,0,100,50,0,0,-10,0,"",-1,0]],[[88,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3102,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Pause",""],[""],[0,0,0,0,1],["",""]],[0,"Pause",0,1]],[[158,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3103,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Replay","1"],[""],[0,0,0,0,1],["",""]],[0,"Reload",0,1]]],[]],["End Game",5,434903756665635,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],85,3104,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[73,194,0,494,72,0,0,1,0,0,0,0,[]],86,3105,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],["{alignY:50}"],[0],[1],[0],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Your final time",2.5,0,50,50,0,0,-10,0,"",-1,0]],[[320,403,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3106,[[0],[1],[0],[0],[""],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Quit",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[73,243,0,494,85,0,0,1,0,0,0,0,[]],87,3108,[[0],[1],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",3,0,50,50,0,0,-10,0,"",-1,0]],[[73,318,0,494,25,0,0,1,0,0,0,0,[]],86,5480,[[1],[1],["tryagainhardmode"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Try again in hard mode!",1,0,50,50,0,0,-2,0,"",-1,0]]],[]]],[],[]],["Gif",20000,640,false,"Levels",644165948526643,[["Layer 0",0,338761107171451,true,[255,255,255],false,1,1,1,false,false,1,0,0,[[[-32,534,0,20064,9,0,0,1,0,0,0,0,[]],51,5571,[],[[0],[1],[1,100,""]],[0,0]],[[490,-126,0,4,8,0,0,1,1,0,0,0,[]],38,5572,[[0],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","rightarm",3,1,0,0,1,2]],[0,"Default",0,1]],[[490,-118,0,4,8,0,0,1,1,0,0,0,[]],40,5573,[[1],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","righthand",3,1,0,0,1,2]],[0,"Default",0,1]],[[486,-121,0,8,16,0,0,1,0.5,0.5,0,0,[]],32,5574,[[2],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","body",3,1,0,0,1,2]],[0,"Default",0,1]],[[486,-105,0,4,8,0,0,1,0,0,0,0,[]],39,5575,[[4],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","rightfoot",3,1,0,0,1,2]],[0,"Default",0,1]],[[486,-113,0,4,8,0,0,1,0,0,0,0,[]],41,5576,[[3],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","rightleg",3,1,0,0,1,2]],[0,"Default",0,1]],[[482,-105,0,4,8,0,0,1,0,0,0,0,[]],35,5577,[[6],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","leftfoot",3,1,0,0,1,2]],[0,"Default",0,1]],[[482,-113,0,4,8,0,0,1,0,0,0,0,[]],37,5578,[[5],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","leftleg",3,1,0,0,1,2]],[0,"Default",0,1]],[[486,-129,0,32,32,0,0,1,0.5,1,0,0,[]],33,5579,[[7],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","head",3,1,0,0,1,2]],[0,"Default",0,1]],[[482,-126,0,4,8,0,0,1,1,0,0,0,[]],34,5580,[[8],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","leftarm",3,1,0,0,1,2]],[0,"Default",0,1]],[[482,-118,0,4,8,0,0,1,1,0,0,0,[]],36,5581,[[9],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","skin4","lefthand",3,1,0,0,1,2]],[0,"Default",0,1]],[[832,480,0,32,64,0,0,1,0.5,0.5,0,0,[]],42,5582,[["run"],[0],[1],[1],[0],[0.8],[0.5],[0],[1],[0],[0],[0],[""],[2],[0],[0],[0],[""],[0],[3],[0],[0],[0],[0],[0],[0],[0]],[[330,1500,1500,650,1500,1000,0,0,0,1],[],[0,0],[0,10000,360,1]],[1,"Default",0,1]],[[736,480,0,32,64,0,0,1,0.5,0.5,0,0,[]],42,5583,[["run"],[0],[1],[1],[0],[0.8],[0.5],[0],[1],[0],[0],[0],["ovo+"],[2],[0],[0],[0],[""],[0],[3],[0],[0],[0],[0],[0],[0],[0]],[[330,1500,1500,650,1500,1000,0,0,0,1],[],[0,0],[0,10000,360,1]],[1,"Default",0,1]],[[640,480,0,32,64,0,0,1,0.5,0.5,0,0,[]],42,5584,[["run"],[0],[1],[1],[0],[0.8],[0.5],[0],[1],[0],[0],[0],["electrical"],[2],[0],[0],[0],[""],[0],[3],[0],[0],[0],[0],[0],[0],[0]],[[330,1500,1500,650,1500,1000,0,0,0,1],[],[0,0],[0,10000,360,1]],[1,"Default",0,1]],[[544,480,0,32,64,0,0,1,0.5,0.5,0,0,[]],42,5585,[["run"],[0],[1],[1],[0],[0.8],[0.5],[0],[1],[0],[0],[0],["pole"],[2],[0],[0],[0],[""],[0],[3],[0],[0],[0],[0],[0],[0],[0]],[[330,1500,1500,650,1500,1000,0,0,0,1],[],[0,0],[0,10000,360,1]],[1,"Default",0,1]],[[448,480,0,32,64,0,0,1,0.5,0.5,0,0,[]],42,5586,[["run"],[0],[1],[1],[0],[0.8],[0.5],[0],[1],[0],[0],[0],["knight"],[2],[0],[0],[0],[""],[0],[3],[0],[0],[0],[0],[0],[0],[0]],[[330,1500,1500,650,1500,1000,0,0,0,1],[],[0,0],[0,10000,360,1]],[1,"Default",0,1]],[[352,480,0,32,64,0,0,1,0.5,0.5,0,0,[]],42,5587,[["run"],[0],[1],[1],[0],[0.8],[0.5],[0],[1],[0],[0],[0],["dknight"],[2],[0],[0],[0],[""],[0],[3],[0],[0],[0],[0],[0],[0],[0]],[[330,1500,1500,650,1500,1000,0,0,0,1],[],[0,0],[0,10000,360,1]],[1,"Default",0,1]],[[256,480,0,32,64,0,0,1,0.5,0.5,0,0,[]],42,5588,[["run"],[0],[1],[1],[0],[0.8],[0.5],[0],[1],[0],[0],[0],["astronaut"],[2],[0],[0],[0],[""],[0],[3],[0],[0],[0],[0],[0],[0],[0]],[[330,1500,1500,650,1500,1000,0,0,0,1],[],[0,0],[0,10000,360,1]],[1,"Default",0,1]],[[160,480,0,32,64,0,0,1,0.5,0.5,0,0,[]],42,5589,[["run"],[0],[1],[1],[0],[0.8],[0.5],[0],[1],[0],[0],[0],["erigato"],[2],[0],[0],[0],[""],[0],[3],[0],[0],[0],[0],[0],[0],[0]],[[330,1500,1500,650,1500,1000,0,0,0,1],[],[0,0],[0,10000,360,1]],[1,"Default",0,1]],[[928,480,0,32,64,0,0,1,0.5,0.5,0,0,[]],42,5591,[["run"],[0],[1],[1],[0],[0.8],[0.5],[0],[1],[0],[0],[0],[""],[2],[0],[0],[0],[""],[0],[3],[0],[0],[0],[0],[0],[0],[0]],[[330,1500,1500,650,1500,1000,0,0,0,1],[],[0,0],[0,10000,360,1]],[1,"Default",0,1]],[[1024,480,0,32,64,0,0,1,0.5,0.5,0,0,[]],42,5592,[["run"],[0],[1],[1],[0],[0.8],[0.5],[0],[1],[0],[0],[0],[""],[2],[0],[0],[0],[""],[0],[3],[0],[0],[0],[0],[0],[0],[0]],[[330,1500,1500,650,1500,1000,0,0,0,1],[],[0,0],[0,10000,360,1]],[1,"Default",0,1]],[[1120,480,0,32,64,0,0,1,0.5,0.5,0,0,[]],42,5593,[["run"],[0],[1],[1],[0],[0.8],[0.5],[0],[1],[0],[0],[0],[""],[2],[0],[0],[0],[""],[0],[3],[0],[0],[0],[0],[0],[0],[0]],[[330,1500,1500,650,1500,1000,0,0,0,1],[],[0,0],[0,10000,360,1]],[1,"Default",0,1]],[[1216,480,0,32,64,0,0,1,0.5,0.5,0,0,[]],42,5594,[["run"],[0],[1],[1],[0],[0.8],[0.5],[0],[1],[0],[0],[0],[""],[2],[0],[0],[0],[""],[0],[3],[0],[0],[0],[0],[0],[0],[0]],[[330,1500,1500,650,1500,1000,0,0,0,1],[],[0,0],[0,10000,360,1]],[1,"Default",0,1]]],[]],["UI",1,363011105075888,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[240,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3097,[["right"]],[[0,1,0,1,1]],[0,"Default",0,1]],[[80,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3098,[["left"]],[[0,1,0,1,1]],[0,"Default",1,1]],[[560,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3099,[["up"]],[[1,1,1,1,1]],[0,"Default",3,1]],[[400,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3100,[["down"]],[[1,1,1,1,1]],[0,"Default",2,1]]],[]],["End Card",2,827348826472844,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],78,2607,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[12.04449462890625,194,0,615.9109497070313,67,0,0,1,0,0,0,0,[]],79,2608,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Timer for this level",2.5,0,0,0,0,0,-10,0,"",-1,0]],[[17.546875,248,0,604.90625,105,0,0,1,0,0,0,0,[]],80,2610,[[0],[0],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","13:40:40",4,0,63,50,0,0,-10,0,"",-1,0]],[[115.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,2611,[[0],[1],[0],[0],["replay"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Replay",""],[""],[2,2,0,0,0],["",""]],[0,"Replay",0,1]],[[524.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3086,[[0],[1],[0],[0],["next"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Next",""],[""],[2,2,0,0,0],["",""]],[0,"Next",0,1]],[[320.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3087,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > Back","Level Menu"],[""],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[320.75,521.8050537109375,0,384,96,0,0,1,0.5,0.5,0,0,[]],70,3088,[[1],[1],[0],[0],[""],["{\"size\": 22, \"left\": 70, \"right\": 18, \"alignY\": 60}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > DownloadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"DownloadReplay",0,1]]],[]],["Pause",3,968075901458017,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-310,678,0,274,31,0,0,1,0,0,0,0,[]],168,3089,[],[],[".ovo",0,1,"file"]],[[320,320,0,425,250,0,0,1,0.5,0.5,0,0,[]],82,3090,[],[[6,1,"",300,1,1,"",300,"overlay",1,"PauseClose",1,1]],[0,"Default",0,1]],[[214,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3091,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"",""],["PauseClose"],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[426,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3092,[[0],[1],[0],[0],["quit"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > GiveUp",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[115.5,202,0,409,118,0,0,1,0,0,0,0,[]],83,3093,[[1],[1],["pause"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Pause",4,0,57,50,0,0,-10,0,"",-1,0]],[[320.5,88,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3094,[[1],[1],[0],[0],["loadreplay"],["{\"size\": 16, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > LoadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"LoadReplay",0,1]],[[320.5,157,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3095,[[1],[0],[0],[0],["toggledebug"],["{\"size\": 15, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Debug > Toggle",""],[""],[2,2,0,0,0],["",""]],[0,"ToggleDebug",0,1]],[[78,448,0,484,134,0,0,1,0,0,0,0,[]],193,3096,[],[],[0,"Default",0,1]]],[]],["End Game",4,373724987413844,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],85,3104,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[73,194,0,494,72,0,0,1,0,0,0,0,[]],86,3105,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],["{alignY:50}"],[0],[1],[0],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Your final time",2.5,0,50,50,0,0,-10,0,"",-1,0]],[[320,403,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3106,[[0],[1],[0],[0],[""],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Quit",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[73,243,0,494,85,0,0,1,0,0,0,0,[]],87,3108,[[0],[1],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",3,0,50,50,0,0,-10,0,"",-1,0]],[[73,318,0,494,25,0,0,1,0,0,0,0,[]],86,5480,[[1],[1],["tryagainhardmode"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Try again in hard mode!",1,0,50,50,0,0,-2,0,"",-1,0]]],[]],["Layer 1",5,342458220949705,true,[255,255,255],true,0,0,1,false,false,1,0,0,[[[288,128,0,429,151,0,0,1,0.501165509223938,0.5033112764358521,0,0,[]],71,5590,[],[[1,2,0,4,2,0,4,5,0],[1,1,0,4,3,0,4,5,0],[1,5,0,4,0,0,0,2,0],[1,0,0,4,0,2,4,5,0]],[0,"Default",0,1]]],[]]],[],[]],["Skins",1708,960,false,null,645895866588789,[["Layer 0",0,286840365390464,true,[255,255,255],false,1,1,1,false,false,1,0,0,[[[223.6230316162109,-27.96358489990234,0,32,16,0,0,1,0,0.5,0,0,[]],54,3556,[[0],[0]],[[400,0,0,0,1,1]],[0,"Default",0,1]],[[56.29624938964844,71.82901000976563,0,32,32,0,0,1,0.5,1,0,0,[]],131,54,[["frank"]],[],[0,"Default",0,1]],[[97.35780334472656,71.66355895996094,0,32,32,0,0,1,0.5,1,0,0,[]],133,55,[["pole"]],[],[0,"Default",0,1]],[[136.0782318115234,72.12991333007813,0,32,32,0,0,1,0.5,1,0,0,[]],132,56,[["elec"]],[],[0,"Default",0,1]],[[188.3089294433594,72.59646606445313,0,52.49001312255859,52.49001312255859,0,0,1,0.5,1,0,0,[]],134,57,[["skin4"]],[],[0,"Default",0,1]],[[241.5090789794922,70.49690246582031,0,35,36,0,0,1,0.5142857432365418,0.9722222089767456,0,0,[]],135,58,[["kinght"]],[],[0,"Default",0,1]],[[286.7602844238281,70.4967041015625,0,19.5,16.5,0,0,1,0.3333333432674408,0.9090909361839294,0,0,[]],136,60,[["batter"]],[],[0,"Default",0,1]],[[330.61181640625,69.09727478027344,0,32,32,0,0,1,0.5,1,0,0,[]],137,61,[["erigato"]],[],[0,"Default",0,1]],[[377.7291870117188,67.23129272460938,0,35,36,0,0,1,0.5142857432365418,0.9722222089767456,0,0,[]],138,62,[["dknight"]],[],[0,"Default",0,1]],[[419.2485046386719,67.23129272460938,0,35,36,0,0,1,0.5142857432365418,0.9722222089767456,0,0,[]],139,63,[["lknight"]],[],[0,"Default",0,1]],[[461.7467651367188,68.25721740722656,0,32,32,0,0,1,0.5,1,0,0,[]],140,64,[["astronaut"]],[],[0,"Default",0,1]],[[500.4203491210938,67.50692749023438,0,32,32,0,0,1,0.5,1,0,0,[]],141,65,[["alien"]],[],[0,"Default",0,1]],[[136.1212310791016,109.4919586181641,0,32,32,0,0,1,0.5,1,0,0,[]],142,66,[["ovo+"]],[],[0,"Default",0,1]],[[191.4658813476563,115.0052947998047,0,32,32,0,0,1,0.5,1,0,0,[]],143,67,[["ada"]],[],[0,"Default",0,1]],[[237.2630615234375,113.2882232666016,0,32,33,0,0,1,0.5,0.9696969985961914,0,0,[]],144,68,[["thefall"]],[],[0,"Default",0,1]],[[239.4215545654297,189.6714630126953,0,64,66,0,0,1,0.5,0.9696969985961914,0,0,[]],145,70,[["thefallwhite"]],[],[0,"Default",0,1]],[[428.0129699707031,118.4389190673828,0,32,32,0,0,1,0.5,1,0,0,[]],146,72,[["pulse"]],[],[0,"Default",0,1]],[[475.1413269042969,116.3897399902344,0,32,32,0,0,1,0.5,1,0,0,[]],151,176,[["materwelon"]],[],[0,"Default",0,1]],[[296.7437438964844,120.1106414794922,0,32,32,0,0,1,0.53125,1,0,0,[]],148,3083,[["fl1ckd"]],[],[0,"Default",0,1]],[[342.5328063964844,120.0699157714844,0,32,32,0,0,1,0.53125,1,0,0,[]],149,3084,[["theliljoker"]],[],[0,"Default",0,1]],[[382.7881774902344,104.2079925537109,0,25.48147964477539,25.48148155212402,0,0,1,0.4418604671955109,0.4186046421527863,0,0,[]],150,3085,[["amongus"]],[],[0,"body",0,1]],[[320.9842529296875,179.6083374023438,0,44,32,0,0,1,0.5227272510528565,1,0,0,[]],152,5,[["cmg"]],[],[0,"Default",0,1]],[[377.8988342285156,183.8073425292969,0,31,36,0,0,1,0.4838709533214569,0.9722222089767456,0,0,[]],153,528,[["french"]],[],[0,"Default",0,1]],[[425.4819030761719,185.2071533203125,0,35,40,0,0,1,0.5142857432365418,1,0,0,[]],154,649,[["english"]],[],[0,"Default",0,1]],[[480.0628967285156,181.474853515625,0,68,40,0,0,1,0.5,0.925000011920929,0,0,[]],155,1008,[["spanish"]],[],[0,"Default",0,1]],[[535.57666015625,182.8739013671875,0,29,32,0,0,1,0.5517241358757019,1,0,0,[]],156,1015,[["brazilian"]],[],[0,"Default",0,1]],[[575.2310180664063,185.6737365722656,0,33,32,0,0,1,0.4848484992980957,1,0,0,[]],157,1017,[["shyguy"]],[],[0,"Default",0,1]]],[]]],[],[]],["Ad",1708,960,false,"Ad",680483274299272,[["Layer 0",0,893601207899477,true,[255,255,255],false,1,1,1,false,false,1,0,0,[],[]]],[],[]],["CrazyGamesTestRoom",1708,960,true,"CrazyGamesTestRoom",595310783398288,[["Layer 0",0,650947221470295,true,[255,255,255],false,1,1,1,false,false,1,0,0,[[[218.5,156.5,0,203,32,0,0,1,0,0,0,0,[]],189,183,[["crazyHappyTime()"]],[],[0,"happyTime","",1,1,1,"",0]],[[218.5,230.5,0,203,32,0,0,1,0,0,0,0,[]],189,345,[["crazyRewarded()"]],[],[0,"rewarded","",1,1,1,"",0]],[[218.5,304.5,0,203,32,0,0,1,0,0,0,0,[]],189,346,[["crazyMidRoll()"]],[],[0,"midroll","",1,1,1,"",0]],[[218.5,377.5,0,203,32,0,0,1,0,0,0,0,[]],189,367,[["crazyGameplayStart()"]],[],[0,"gameplayStart","",1,1,1,"",0]],[[218.5,451.5,0,203,32,0,0,1,0,0,0,0,[]],189,372,[["crazyGameplayStop()"]],[],[0,"gameplayStop","",1,1,1,"",0]],[[218.5,586,0,203,32,0,0,1,0,0,0,0,[]],190,373,[],[],[0,"Back to game","",1,1,1,"",0]]],[]]],[],[]],["Main Menu",640,640,true,"Main Menu",794952083725119,[["Layer 0",0,623719239705738,true,[255,255,255],false,0,0,1,false,false,0,0,0,[[[320,351,0,353,639,0,-1.570796370506287,1,0,0.5,0,0,[]],81,374,[],[],[50,60,0,200,4,100,-2,700,700,0,4,4,-150,0,0,800,0,0,1]],[[-80,-132,0,128,128,0,0,1,0,0.5,0,0,[]],89,375,[],[],[10,360,1,200,6,100,-4,0,0,0,2,0,-150,300,0,800,0,0,0.5]]],[]],["Layer 1",1,540172260555628,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[119,293,0,145,30,0,0,1,0.5034482479095459,0.5,0,0,[]],198,4434,[[97],[188]],[[1,"","","","Click",3,"Hover",4,"Menu > Languages",""],["langbutton",""]],[0,"Default",0,1]],[[320.5,120.0719528198242,0,429,151,0,0,1,0.501165509223938,0.5033112764358521,0,0,[]],71,377,[],[[1,2,0,4,2,0,4,5,0],[1,1,0,4,3,0,4,5,0],[1,5,0,4,0,0,0,2,0],[1,0,0,4,0,2,4,5,0]],[0,"Default",0,1]],[[320,310,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,378,[[0],[1],[0],[0],["play"],["{\"size\": 30}"],[1],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Resume",""],[""],[2,2,0,0,0],["",""]],[0,"Play",0,1]],[[283,492,0,128,64,0,0,1,0.5,0.5,0,0,[]],70,379,[[0],[1],[0],[0],["levels"],["{\"size\": 15}"],[1],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Transition","Level Menu"],[""],[2,2,0,0,0],["",""]],[0,"Levels",0,1]],[[389,410,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,380,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Transition","Skins Menu"],[""],[2,2,0,0,0],["",""]],[0,"Skins",0,1]],[[283,410,0,128,64,0,0,1,0.5,0.5,0,0,[]],70,5519,[[0],[1],[0],[0],["restart"],["{\"size\": 15}"],[1],[0],[0],[0]],[[1,"1","2","3","Click",1,"Hover",4,"Menu > Play",""],[""],[2,2,0,0,0],["",""]],[0,"Resume",0,1]],[[201,323.5,0,16,16,0,0,1,0.5,0.5,0,0,[]],88,5561,[],[],[0,"Default",0,1]],[[201,618.5,0,16,16,0,3.141592741012573,1,0.5,0.5,0,0,[]],88,5562,[],[],[0,"Default",0,1]],[[201,471,0,11,274,0,0,1,0.5,0.5,0,0,[]],113,5564,[],[["TipScroll"]],[0,"Default",0,1]],[[201,346,0,11,24,0,0,1,0.5,0.5,0,0,[]],99,5443,[],[["TipSlider"]],[0,"Default",0,1]],[[23.26832580566406,292.5997619628906,0,40,45,0,0,1,0.5,0.5111111402511597,0,0,[]],70,383,[[0],[1],[0],[0],[""],[""],[1],[0],[0],[0]],[[1,"1","2","3","Click",1,"Hover",4,"Menu > Discord",""],[""],[2,2,0,0,0],["",""]],[0,"Discord",0,1]],[[97,243,0,188,48,0,0,1,0.5,0.5,0,0,[]],70,384,[[0],[1],[999],[1],[""],["{\"size\": 10, \"left\": 30, \"right\": 7}"],[1],[0],[0],[0]],[[1,"1","2","3","Click",3,"Hover",4,"Menu > RemoveAds",""],[""],[2,2,0,0,0],["",""]],[0,"RemoveMidrollAds",0,1]],[[49,281,0,30,24,0,0,1,0,0,0,0,[]],197,2250,[],[["","langbutton"]],[0,"Default",0,1]],[[80,281,0,108,25.61749267578125,0,0,1,0,0,0,0,[]],93,2539,[[2]],[["","langbutton"]],["English (US)",0,"9pt Retron2000","rgb(0,0,0)",0,10,100,0,0,0]],[[283,572,0,128,64,0,0,1,0.5,0.5,0,0,[]],70,385,[[0],[1],[0],[0],["credits"],["{\"size\": 15}"],[1],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Transition","Credits"],[""],[2,2,0,0,0],["",""]],[0,"Credits",0,1]],[[389,492,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,386,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Transition","Achievements Menu"],[""],[2,2,0,0,0],["",""]],[0,"Achievements",0,1]],[[389,572,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,387,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Transition","Options Menu"],[""],[2,2,0,0,0],["",""]],[0,"Options",0,1]],[[270,605,0,100,30,0,0,1,0,0,0,0,[]],86,2612,[[0],[1],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","1.4.4",1,0,50,50,0,0,-2,0,"",-1,0]],[[535.5,595,0,157.5,48,0,0,1,0.5,0.5,0,0,[]],70,376,[[0],[1],[0],[1],[""],["{\"size\": 11, \"left\": 30, \"right\": 7}"],[1],[0],[0],[0]],[[1,"1","2","3","Click",1,"Hover",4,"Menu > RandomSkin",""],[""],[2,2,0,0,0],["",""]],[0,"RandomSkin",0,1]]],[]],["Tips",2,339920086021683,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[97,472,0,188,305,0,0,1,0.5,0.5,0,0,[]],76,5559,[],[[0,1,1,"TipList","TipSlider","TipScroll","","",1,1,""]],[0,"Default",0,1]],[[97,472,0,188,305,0,0,1,0.5,0.5,0,0,[]],75,5560,[],[["tipItem",1,-1,8,8,4,4,""],["TipList"],["list","TipList"]],[0,"Default",0,1]],[[97,429.5,0,180,211,0,0,0,0.5,0.5,0,0,[]],91,5563,[],[["tipItem"],[0,1,0,0,1]],[1,"Default",0,1]],[[97,429.5,0,180,211,0,0,1,0.5,0.5,0,0,[]],74,5556,[],[[0,"","","","Click",2,"Hover",2,"",""],[1,1,0,0,1],["frame",2]],[0,"Default",0,1]],[[97,429.5,0,180,211,0,0,1,0.5,0.5,0,0,[]],161,5570,[],[["text",1]],["The game will tell you when an update is found, will download it in the background and will tell you when you can reload to get the new update.",0,"bold 12pt Arial","rgb(0,0,0)",1,1,4,0,0]]],[]],["Tips Overlay",3,569870538596908,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[97,317,0,188,5,0,3.141592741012573,1,0.5,0.5,0,0,[]],88,2613,[],[],[0,"Default",1,1]],[[97,622,0,188,5,0,3.141592741012573,1,0.5,0.5,0,0,[]],88,2880,[],[],[0,"Default",1,1]],[[527.5,435,0,128,256,0,0,1,0.5,0.5,0,0,[]],42,2992,[["run"],[0],[1],[1],[0],[0.8],[0.5],[0],[0],[0],[0],[0],["ovo+"],[2],[0],[0],[0],[""],[0],[3],[0],[0],[0],[0],[0],[0],[0]],[[330,1500,1500,650,1500,1000,1,0,0,0],[],[0,0],[0,10000,360,1]],[1,"Default",0,1]],[[535.5,246.9999847412109,0,203,4,0,3.141592741012573,1,0.5,0.5,0,0,[]],88,3191,[],[],[0,"Default",1,1]],[[535.5,623,0,203,4,0,3.141592741012573,1,0.5,0.5,0,0,[]],88,3200,[],[],[0,"Default",1,1]],[[635,435,0,380,4,0,1.570796370506287,1,0.5,0.5,0,0,[]],88,3204,[],[],[0,"Default",1,1]],[[436,435,0,380,4,0,1.570796370506287,1,0.5,0.5,0,0,[]],88,3206,[],[],[0,"Default",1,1]],[[766,366,0,4,8,0,0,1,1,0,0,0,[]],38,3169,[[0],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","","rightarm",3,1,0,0,1,2]],[0,"Default",0,1]],[[766,374,0,4,8,0,0,1,1,0,0,0,[]],40,3170,[[1],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","","righthand",3,1,0,0,1,2]],[0,"Default",0,1]],[[762,387,0,4,8,0,0,1,0,0,0,0,[]],39,3171,[[4],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","","rightfoot",3,1,0,0,1,2]],[0,"Default",0,1]],[[762,379,0,4,8,0,0,1,0,0,0,0,[]],41,3172,[[3],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","","rightleg",3,1,0,0,1,2]],[0,"Default",0,1]],[[762,371,0,8,16,0,0,1,0.5,0.5,0,0,[]],32,3181,[[2],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","","body",3,1,0,0,1,2]],[0,"Default",0,1]],[[758,387,0,4,8,0,0,1,0,0,0,0,[]],35,3185,[[6],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","","leftfoot",3,1,0,0,1,2]],[0,"Default",0,1]],[[758,379,0,4,8,0,0,1,0,0,0,0,[]],37,3187,[[5],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","","leftleg",3,1,0,0,1,2]],[0,"Default",0,1]],[[762,363,0,32,32,0,0,1,0.5,1,0,0,[]],33,3188,[[7],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","","head",3,1,0,0,1,2]],[0,"Default",0,1]],[[758,366,0,4,8,0,0,1,1,0,0,0,[]],34,3189,[[8],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","","leftarm",3,1,0,0,1,2]],[0,"Default",0,1]],[[758,374,0,4,8,0,0,1,1,0,0,0,[]],36,3190,[[9],[0],[0],[0],[0]],[[200,-400,1500,1,0,0],[0,0,0,1,1],[0],["main","","lefthand",3,1,0,0,1,2]],[0,"Default",0,1]],[[197,208,0,246,46,0,0,1,0,0,0,0,[]],121,388,[[1],[1],["besttime"],["en-us"],[0],[1],[0],["{\"alignY\":0}"],[0],[1],[0],[0],[0]],[["",""],["tag",1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Best Time",1,0,50,0,0,0,0,0,"",-1,0]],[[186,229.5,0,268,41,0,0,1,0,0,0,0,[]],122,389,[[0],[1],[""],["en-us"],[0],[1],[1],["{\"alignY\":0}"],[0],[1],[0],[0],[0]],[["",""],["tag",1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","00:00:00",1.5,0,50,0,0,0,0,0,"",-1,0]]],[]],["Adblock",4,151913819037723,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,-244.0064697265625,0,425,123.55908203125,0,0,1,0.5,0.5,0,0,[]],115,5634,[],[[6,1,"",300,1,1,"",300,"overlay",0,"PauseClose",1,1]],[0,"Default",0,1]],[[511.4325561523438,-283.2252807617188,0,32,32,0,0,1,0.5,0.5,0,0,[]],114,5635,[],[[1,"1","2","","Return",1,"Hover",1,"",""],["PauseClose"],[2,2,0,0,0]],[0,"Close",0,1]],[[142.1003723144531,-224.6805267333984,0,64,64,0,0,1,0.5,0.5,0,0,[]],108,4535,[],[],[0,"Default",0,1]],[[110.5696411132813,-301.7151794433594,0,383.1528625488281,47.28652954101563,0,0,1,0,0,0,0,[]],86,4536,[[1],[0],["adblocktitle"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Adblock detected",1.2,0,50,50,0,0,-2,0,"",-1,0]],[[176.0726318359375,-262.8081665039063,0,316.9914245605469,76.83514404296875,0,0,1,0,0,0,0,[]],86,4537,[[1],[0],["adblockdescription"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Disable adblock and try again",1,0,50,50,0,0,-2,0,"",-1,0]]],[]],["Ads",5,643906312418124,true,[255,255,255],true,0,0,1,false,false,0,0,0,[],[]],["AdPlaying",6,327120266869076,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,-203.5,0,250,97,0,0,1,0.5,0.5,0,0,[]],125,390,[],[[6,1,"",300,1,1,"",300,"overlay",1,"",1,1],[]],[0,"Default",0,1]],[[209,-275,0,222,139,0,0,1,0,0,0,0,[]],86,391,[[1],[1],["adplaying"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","An ad is playing right now...",1.2,0,50,50,0,0,-2,0,"",-1,0]],[[-154.5756988525391,-294.3137512207031,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,5508,[],[["overlay"]],[0,"Default",0,1]]],[]],["NoAd",7,549340491059294,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,-226.25,0,250,97,0,0,1,0.5,0.5,0,0,[]],126,392,[],[[6,1,"",300,1,1,"",300,"overlay",0,"NoAdClose",1,1]],[0,"Default",0,1]],[[209,-297.75,0,222,139,0,0,1,0,0,0,0,[]],86,393,[[1],[1],["ad1"],["en-us"],[0],[1],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","No ad available...",1.2,0,50,50,0,0,-2,0,"",-1,0]],[[429,-259,0,32,32,0,0,1,0.5,0.5,0,0,[]],114,394,[],[[1,"1","2","","Return",1,"Hover",1,"",""],["NoAdClose"],[2,2,0,0,0]],[0,"Close",0,1]]],[]],["Banner",8,131442299412979,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-237,-189,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,3109,[],[["overlay"]],[0,"Default",0,1]]],[]],["NoMoreAds",9,646916076276542,true,[255,255,255],true,1,1,1,false,false,1,0,0,[[[320,-218,0,425,200,0,0,1,0.5,0.5,0,0,[]],127,395,[],[[6,1,"",300,1,1,"",300,"overlay",0,"MidrollClose",1,1]],[0,"Default",0,1]],[[116,-311,0,396,48.57135009765625,0,0,1,0,0,0,0,[]],86,396,[[1],[1],[""],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Midrolls are no more",1.2,0,50,50,0,0,-2,0,"",-1,0]],[[120,-274,0,401,144,0,0,1,0,0,0,0,[]],86,397,[[1],[1],[""],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Midroll ads will no longer appear in the game",1.1,0,50,50,0,0,-2,0,"",-1,0]],[[512,-296,0,32,32,0,0,1,0.5,0.5,0,0,[]],114,398,[],[[1,"1","2","","Return",1,"Hover",1,"",""],["MidrollClose"],[2,2,0,0,0]],[0,"Close",0,1]]],[]],["Langages",10,952189195647780,true,[255,255,255],true,1,1,1,false,false,1,0,0,[[[-195,853.98681640625,0,204.302001953125,314.5870971679688,0,0,1,0.5,0.5,0,0,[]],129,4435,[],[[6,1,"",300,1,1,"",300,"overlay",0,"LanguagesClose",1,1],["LanguagesDialog"]],[0,"Default",0,1]],[[-113,717,0,32,32,0,0,1,0.5,0.5,0,0,[]],114,4439,[],[[1,"1","2","","Return",1,"Hover",1,"",""],["LanguagesClose"],[2,2,0,0,0]],[0,"Close",0,1]],[[-296,700,0,169.3356018066406,44.21400451660156,0,0,1,0,0,0,0,[]],86,4440,[[1],[1],["selectlang"],["en-us"],[0],[0],[0],["{\"size\": 12}"],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Select language",1.2,0,50,50,0,0,-2,0,"",-1,0]],[[-82.15546417236328,747,0,16,16,0,0,1,0.5,0.5,0,0,[]],88,4441,[],[],[1,"Default",0,1]],[[-82.15546417236328,996,0,16,16,0,3.141592741012573,1,0.5,0.5,0,0,[]],88,4442,[],[],[1,"Default",0,1]],[[-195.2174987792969,743,0,193.5649871826172,10,0,3.141592741012573,1,0.5,0.5,0,0,[]],88,4463,[],[],[0,"Default",1,1]],[[-195.2174987792969,999,0,193.5649871826172,10,0,3.141592741012573,1,0.5,0.5,0,0,[]],88,4515,[],[],[0,"Default",1,1]]],[]],["LanguagesList",11,424370021120819,true,[255,255,255],true,1,1,1,false,false,1,0,0,[[[-195.2174987792969,875,0,193.5649871826172,260,0,0,1,0.5,0.5,0,0,[]],76,4445,[],[[0,1,1,"LanguagesList","LanguagesSlider","LanguagesScroll","","",1,1,"LanguagesDialog"]],[0,"Default",0,1]],[[-195.2174987792969,875,0,193.5649871826172,260,0,0,1,0.5,0.5,0,0,[]],75,4446,[],[["languagesItem",1,-1,4,4,0,4,""],["LanguagesList"],["list","LanguagesList"]],[0,"Default",0,1]],[[-196.2174987792969,780,0,185.5649871826172,60,0,0,0,0.5,0.5,0,0,[]],91,4472,[],[["languagesItem"],[0,1,0,0,1]],[1,"Default",0,1]],[[-196.2174987792969,780,0,185.5649871826172,60,0,0,1,0.5,0.5,0,0,[]],200,4534,[],[[1,"","","","Click",0,"Hover",0,"",""],["",0]],[0,"Default",0,1]],[[-281.8966674804688,757,0,55,45,0,0,1,0,0,0,0,[]],199,4528,[],[["anim",3]],[0,"Default",0,1]],[[-82.15546417236328,872,0,11,228,0,0,1,0.5,0.5,0,0,[]],113,4443,[],[["LanguagesScroll"]],[1,"Default",0,1]],[[-82.15546417236328,770,0,11,24,0,0,1,0.5,0.5,0,0,[]],99,4444,[],[["LanguagesSlider"]],[1,"Default",0,1]],[[-227.2174987792969,755.308837890625,0,121.5649871826172,54.69110107421875,0,0,1,0,0,0,0,[]],161,4538,[],[["name",1]],["test",0,"11pt Retron2000","rgb(0,0,0)",1,1,0,0,0]]],[]]],[[null,22,401,[],[],[0,6,1]],[null,24,5440,[],[],[]],[null,27,2609,[],[],[10,1,1]],[null,28,5489,[],[],[]],[null,31,1219,[],[],["lang",""]]],[]],["Credits",640,640,true,"Main Menu",137477814501701,[["Layer 0",0,253005755209792,true,[255,255,255],false,0,0,1,false,false,0,0,0,[[[320,352,0,353,639,0,-1.570796370506287,1,0,0.5,0,0,[]],81,402,[],[],[50,60,0,200,4,100,-2,700,700,0,4,4,-150,0,0,800,0,0,1]],[[132,378,0,376,26,0,0,1,0,0,0,0,[]],73,1050,[[1],[1],["madebydedra"],["en-us"],[0],[0],[0],["{\"alignY\":0}"],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Made by Dedra",1,0,50,0,0,0,0,0,"",-1,0]]],[]],["Layer 1",1,823045848862222,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,527,0,256,128,0,0,1,0.5,0.5,0,0,[]],70,403,[[0],[1],[0],[0],[""],["{\"size\": 32, \"alignY\": 63}"],[1],[0],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > Transition","Main Menu"],[""],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[139,409,0,362,26,0,0,1,0,0,0,0,[]],73,404,[[1],[1],["poweredby"],["en-us"],[0],[0],[0],["{\"alignY\":0}"],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Powered by Construct 2",1,0,50,0,0,0,0,0,"",-1,0]],[[320,200,0,360,288,0,0,1,0.5,0.5,0,0,[]],112,405,[],[],[0,"Default",0,1]]],[]]],[],[]],["Options Menu",640,640,true,"Main Menu",159079742952632,[["Layer 0",0,217581173958401,true,[255,255,255],false,0,0,1,false,false,0,0,0,[[[320,352,0,353,639,0,-1.570796370506287,1,0,0.5,0,0,[]],81,406,[],[],[50,60,0,200,4,100,-2,700,700,0,4,4,-150,0,0,800,0,0,1]]],[]],["Layer 1",1,619305038670525,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,467,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,414,[[0],[1],[0],[0],["inputs"],["{\"size\": 28, \"alignY\": 61}"],[1],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Options > Inputs",""],[""],[2,2,0,0,0],["",""]],[0,"Inputs",0,1]],[[146,238,0,64,64,0,0,1,0.5,0.5,0,0,[]],96,2545,[[1]],[[1,1,"0,2","1,3","","Click",3,"Hover",2,"Options > Hard",""]],[0,"Default",0,1]],[[178.25,206,0,151,64,0,0,1,0,0,0,0,[]],73,5417,[[1],[1],["hard"],["en-us"],[0],[0],[0],["{\"alignX\": 5, \"alignY\": 55}"],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Hard Mode",1,0,50,50,0,0,0,0,"",-1,0]],[[366,238,0,64,64,0,0,1,0.5,0.5,0,0,[]],96,2605,[[2]],[[1,1,"0,2","1,3","","Click",3,"Hover",2,"Options > Advanced",""]],[0,"Default",0,1]],[[396.75,206,0,220,64,0,0,1,0,0,0,0,[]],73,2606,[[1],[1],["advanced"],["en-us"],[0],[0],[0],["{\"alignX\": 5, \"alignY\": 55}"],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Advanced Mode",1,0,50,50,0,0,0,0,"",-1,0]],[[210,346,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3209,[[0],[1],[0],[0],["savedata"],["{\"size\": 28, \"alignY\": 61}"],[1],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Options > Save",""],[""],[2,2,0,0,0],["",""]],[0,"Save",0,1]],[[430,346,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,4142,[[0],[1],[0],[0],["mobilemode"],["{\"size\": 28, \"alignY\": 61}"],[1],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Options > Mode",""],[""],[2,2,0,0,0],["",""]],[0,"MobileMode",0,1]],[[320,568,0,128,64,0,0,1,0.5,0.5,0,0,[]],70,4540,[[0],[1],[0],[0],["back"],["{\"size\": 18, \"alignY\": 65}"],[1],[0],[0],[0]],[[1,"1","2","","Return",1,"Hover",2,"Menu > Transition","Main Menu"],[""],[0,0,0,0,0],["",""]],[0,"Back",0,1]]],[]],["NoSafari",2,647761798668948,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[329,94,0,382,22,0,0,1,0.5,0.5,0,0,[]],98,408,[["Music"]],[[1,0,"MusicSliderButton",0,1,0.01]],[0,"Default",0,1]],[[516,94,0,22,48,0,0,1,0.5,0.5,0,0,[]],99,409,[],[["MusicSliderButton"]],[0,"Default",0,1]],[[329,169,0,382,22,0,0,1,0.5,0.5,0,0,[]],98,410,[["Sounds"]],[[1,0,"SoundSliderButton",0,1,0.01]],[0,"Default",0,1]],[[516,169,0,22,48,0,0,1,0.5,0.5,0,0,[]],99,411,[],[["SoundSliderButton"]],[0,"Default",0,1]],[[148,46,0,362,26,0,0,1,0,0,0,0,[]],73,412,[[1],[1],["music"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Music",1,0,50,0,0,0,0,0,"",-1,0]],[[148,121,0,362,26,0,0,1,0,0,0,0,[]],73,413,[[1],[1],["sounds"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Sound",1,0,50,0,0,0,0,0,"",-1,0]],[[107,169,0,32,32,0,0,1,0.5,0.5,0,0,[]],96,4529,[[-1]],[[1,1,"0,2","1,3","","Click",3,"Hover",2,"Options > Hard",""]],[0,"Audio",0,1]],[[107,94,0,32,32,0,0,1,0.5,0.5,0,0,[]],96,4539,[[-2]],[[1,1,"0,2","1,3","","Click",3,"Hover",2,"Options > Hard",""]],[0,"Audio",0,1]]],[]],["Inputs",3,603693529082332,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,-217.2737731933594,0,524,320,0,0,1,0.5,0.5,0,0,[]],92,415,[],[[1,1,"",300,1,1,"",300,"",0,"OptionsDialogClose",1,1]],[2,2,2,2,1,1,0,4,1]],[[556.3807373046875,-352,0,32,32,0,0,1,0.5,0.5,0,0,[]],70,416,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"",""],["OptionsDialogClose"],[2,2,0,0,0],["",""]],[0,"Close",0,1]],[[529.5689086914063,-256.949462890625,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,417,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Options > Edit","3"],[""],[2,2,0,0,0],["",""]],[0,"Edit",0,1]],[[529.5689086914063,-111.8217315673828,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,418,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Options > Edit","2"],[""],[2,2,0,0,0],["",""]],[0,"Edit",0,1]],[[276.0244750976563,-256.949462890625,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,419,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Options > Edit","1"],[""],[2,2,0,0,0],["",""]],[0,"Edit",0,1]],[[276.0244750976563,-111.8217315673828,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,420,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Options > Edit","0"],[""],[2,2,0,0,0],["",""]],[0,"Edit",0,1]],[[139,-365.4052734375,0,362,48.62753295898438,0,0,1,0,0,0,0,[]],73,652,[[1],[1],[""],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Inputs",2,0,50,0,0,0,0,0,"",-1,0]],[[72,-287,0,167,24.43899917602539,0,0,1,0,0,0,0,[]],73,1051,[[1],[1],["up"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Up",1,0,50,0,0,0,0,0,"",-1,0]],[[324,-287,0,167,24.43899917602539,0,0,1,0,0,0,0,[]],73,1052,[[1],[1],["down"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Down",1,0,50,0,0,0,0,0,"",-1,0]],[[324,-142,0,167,24.43899917602539,0,0,1,0,0,0,0,[]],73,1220,[[1],[1],["right"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Right",1,0,50,0,0,0,0,0,"",-1,0]],[[72,-142,0,167,24.43899917602539,0,0,1,0,0,0,0,[]],73,1222,[[1],[1],["left"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Left",1,0,50,0,0,0,0,0,"",-1,0]],[[72,-266,0,167,59,0,0,1,0,0,0,0,[]],93,1223,[[1]],[["",""]],["Text",0,"14pt Arial","rgb(0,0,0)",0,50,0,0,0,0]],[[325.4230041503906,-266,0,167,59,0,0,1,0,0,0,0,[]],93,1224,[[3]],[["",""]],["Text",0,"14pt Arial","rgb(0,0,0)",0,50,0,0,0,0]],[[324,-121,0,167,59,0,0,1,0,0,0,0,[]],93,1225,[[2]],[["",""]],["Text",0,"14pt Arial","rgb(0,0,0)",0,50,0,0,0,0]],[[72,-121,0,167,59,0,0,1,0,0,0,0,[]],93,1226,[[0]],[["",""]],["Text",0,"14pt Arial","rgb(0,0,0)",0,50,0,0,0,0]]],[]],["Save",4,610679346274423,true,[255,255,255],true,1,1,1,false,false,1,0,0,[[[320,810,0,524,320,0,0,1,0.5,0.5,0,0,[]],117,3210,[],[[1,1,"",300,1,1,"",300,"",0,"SaveDialogClose",1,1]],[2,2,2,2,1,1,0,4,1]],[[129.9087829589844,662,0,380.1824340820313,48.62753295898438,0,0,1,0,0,0,0,[]],73,3219,[[1],[1],["savedatatext"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Save data",2,0,50,0,0,0,0,0,"",-1,0]],[[554,676,0,32,32,0,0,1,0.5,0.5,0,0,[]],70,3223,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"",""],["SaveDialogClose"],[2,2,0,0,0],["",""]],[0,"Close",0,1]],[[58,767.058349609375,0,524,134.941650390625,0,0,1,0,0,0,0,[]],118,3225,[[0],[1],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","24/24",4,0,50,50,0,0,0,0,"",-1,0]],[[150,939,0,170,48,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3226,[[0],[1],[0],[0],["clearsave"],["{\"size\": 14, \"alignY\": 70, \"left\": 40, \"right\": 10}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Options > ClearSave",""],[""],[2,2,0,0,0],["",""]],[0,"ClearSave",0,1]],[[109.6605682373047,735.2481689453125,0,420.6788635253906,48.62753295898438,0,0,1,0,0,0,0,[]],73,3227,[[1],[1],["collectedcoins"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Collected coins:",1.5,0,50,0,0,0,0,0,"",-1,0]],[[302,939,0,32,32,0,0,1,0.5,0.5,0,0,[]],70,3228,[[0],[1],[1],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","3","Click",1,"Hover",0,"Options > Confirm",""],[""],[2,2,0,0,0],["",""]],[1,"Confirm",0,1]],[[260,939,0,32,32,0,0,1,0.5,0.5,0,0,[]],70,3229,[[0],[1],[2],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","3","Click",1,"Hover",0,"Options > Cancel",""],[""],[2,2,0,0,0],["",""]],[1,"Cancel",0,1]],[[491,939,0,170,48,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3238,[[0],[1],[0],[0],["clearcoins"],["{\"size\": 14, \"alignY\": 70, \"left\": 40, \"right\": 10}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Options > ClearCoins",""],[""],[2,2,0,0,0],["",""]],[0,"ClearCoins",0,1]],[[338,939,0,32,32,0,0,1,0.5,0.5,0,0,[]],70,3242,[[0],[1],[3],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","3","Click",1,"Hover",0,"Options > Confirm2",""],[""],[2,2,0,0,0],["",""]],[1,"Confirm",0,1]],[[380,939,0,32,32,0,0,1,0.5,0.5,0,0,[]],70,3244,[[0],[1],[4],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","3","Click",1,"Hover",0,"Options > Cancel2",""],[""],[2,2,0,0,0],["",""]],[1,"Cancel",0,1]]],[]],["Mode",5,699790696933878,true,[255,255,255],true,1,1,1,false,false,1,0,0,[[[-341,321,0,524,320,0,0,1,0.5,0.5,0,0,[]],128,4348,[],[[1,1,"",300,1,1,"",300,"",0,"ModeDialogClose",1,1]],[2,2,2,2,1,1,0,4,1]],[[-103.0413208007813,184.5704040527344,0,32,32,0,0,1,0.5,0.5,0,0,[]],70,4349,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"",""],["ModeDialogClose"],[2,2,0,0,0],["",""]],[0,"Close",0,1]],[[-461.5,260,0,64,64,0,0,1,0.5,0.5,0,0,[]],96,4417,[[10]],[[1,1,"0,2","1,3","","Click",3,"Hover",2,"Options > Mode Auto",""]],[0,"Default",0,1]],[[-428.5,228,0,240,64,0,0,1,0,0,0,0,[]],73,4418,[[1],[1],["autodetectinput"],["en-us"],[0],[0],[0],["{\"alignX\": 5, \"alignY\": 55}"],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Auto detect",1,0,50,50,0,0,0,0,"",-1,0]],[[-461.5,340,0,64,64,0,0,1,0.5,0.5,0,0,[]],96,4421,[[11]],[[1,1,"0,2","1,3","","Click",3,"Hover",2,"Options > Mode Mobile",""]],[0,"Default",0,1]],[[-428.5,308,0,240,64,0,0,1,0,0,0,0,[]],73,4422,[[1],[1],["forcemobile"],["en-us"],[0],[0],[0],["{\"alignX\": 5, \"alignY\": 55}"],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Force Mobile",1,0,50,50,0,0,0,0,"",-1,0]],[[-461.5,420,0,64,64,0,0,1,0.5,0.5,0,0,[]],96,4378,[[12]],[[1,1,"0,2","1,3","","Click",3,"Hover",2,"Options > Mode Desktop",""]],[0,"Default",0,1]],[[-428.5,388,0,240,64,0,0,1,0,0,0,0,[]],73,4428,[[1],[1],["forcedesktop"],["en-us"],[0],[0],[0],["{\"alignX\": 5, \"alignY\": 55}"],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Force Desktop",1,0,50,50,0,0,0,0,"",-1,0]],[[-563.1651611328125,161.5516204833984,0,444.3302612304688,64,0,0,1,0,0,0,0,[]],73,4429,[[1],[1],["whatdeviceinput"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","What is your device?",1,0,50,50,0,0,0,0,"",-1,0]]],[]]],[],[]],["Level Menu",640,640,true,"Main Menu",822562428873563,[["BG",0,616650339615023,true,[255,255,255],false,0,0,1,false,false,0,0,0,[[[320,320,0,640,640,0,0,0.300000011920929,0.5,0.5,0,0,[]],171,4705,[],[[1,0.5,0,0,0]],[0,"Default",0,1]]],[]],["Layer 0",1,671483369834853,true,[255,255,255],true,0,1,1,false,true,0,0,0,[[[100,393,0,128,128,0,0,1,0.5,0.5,0,0,[]],119,4676,[[0]],[[1,"1","2","3","Click",2,"Hover",0,"",""],[1,1,0,0,1],["frame",2],["",""]],[0,"Default",0,1]],[[36,329,0,128,128,0,0,1,0,0,0,0,[]],120,4679,[[0],[0],[""],["en-us"],[0],[0],[0],["{\"alignX\": 50, \"alignY\": 60}"],[1],[0],[0],[0],[0]],[["",""],["tag",1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","40",3,0,65,55,0,0,0,0,"",-1,0]],[[247,393,0,128,128,0,0,1,0.5,0.5,0,0,[]],119,2572,[[1]],[[1,"1","2","3","Click",2,"Hover",0,"",""],[1,1,0,0,1],["frame",2],["",""]],[0,"Default",0,1]],[[393,393,0,128,128,0,0,1,0.5,0.5,0,0,[]],119,4681,[[2]],[[1,"1","2","3","Click",2,"Hover",0,"",""],[1,1,0,0,1],["frame",2],["",""]],[0,"Default",0,1]],[[540,393,0,128,128,0,0,1,0.5,0.5,0,0,[]],119,4696,[[3]],[[1,"1","2","3","Click",2,"Hover",0,"",""],[1,1,0,0,1],["frame",2],["",""]],[0,"Default",0,1]],[[100,536,0,128,128,0,0,1,0.5,0.5,0,0,[]],119,2573,[[4]],[[1,"1","2","3","Click",2,"Hover",0,"",""],[1,1,0,0,1],["frame",2],["",""]],[0,"Default",0,1]],[[247,536,0,128,128,0,0,1,0.5,0.5,0,0,[]],119,4695,[[5]],[[1,"1","2","3","Click",2,"Hover",0,"",""],[1,1,0,0,1],["frame",2],["",""]],[0,"Default",0,1]],[[393,536,0,128,128,0,0,1,0.5,0.5,0,0,[]],119,4697,[[6]],[[1,"1","2","3","Click",2,"Hover",0,"",""],[1,1,0,0,1],["frame",2],["",""]],[0,"Default",0,1]],[[540,536,0,128,128,0,0,1,0.5,0.5,0,0,[]],119,4698,[[7]],[[1,"1","2","3","Click",2,"Hover",0,"",""],[1,1,0,0,1],["frame",2],["",""]],[0,"Default",0,1]],[[41,289.5,0,568,38,0,0,1,0,0,0,0,[]],121,4699,[[1],[1],["individuallevels"],["en-us"],[0],[0],[0],["{\"alignX\": 0, \"alignY\":0}"],[0],[1],[0],[0],[0]],[["",""],["tag",1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Individual Levels",1.5,0,0,0,0,0,0,0,"",-1,0]],[[257,234,0,128,64,0,0,1,0.5,0.5,0,0,[]],70,4702,[[0],[1],[0],[0],["playlevelmenu"],["{\"size\": 22, \"alignY\": 75}"],[1],[0],[0],[0]],[[1,"1","2","3","Click",1,"Hover",4,"Menu > PlaySection",""],[""],[2,2,0,0,0],["",""]],[0,"Play",0,1]],[[329.3125,233,0,265.6874694824219,41,0,0,1,0,0,0,0,[]],122,4703,[[0],[1],[""],["en-us"],[0],[1],[1],["{\"alignX\": 0, \"alignY\":0}"],[0],[1],[0],[0],[0]],[["",""],["tag",1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","--:--:--",2,0,50,0,0,0,0,0,"",-1,0]],[[330.7169189453125,212,0,251.7830810546875,46,0,0,1,0,0,0,0,[]],121,4704,[[1],[1],["besttime"],["en-us"],[0],[0],[0],["{\"alignX\": 0, \"alignY\":0}"],[0],[1],[0],[0],[0]],[["",""],["tag",1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Best Time",1,0,0,0,0,0,0,0,"",-1,0]],[[11,82.5,0,618,121,0,0,1,0,0,0,0,[]],123,5491,[[0],[1],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""],["tag",1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","OvO Space Progam",3,0,50,0,0,0,0,0,"",-1,0]],[[326.3499755859375,38,0,676.408203125,84,0,0,1,0.5,0.5,6,0,[]],172,2574,[],[],[0,"Default",0,1]],[[163.36279296875,452.3695983886719,0,48,48,0,0,1,0.75,0.75,0,0,[]],66,5513,[["level10"]],[[0],[400,-200,800,0,0,0],[0,0,0,1,1]],[0,"Default",0,1]]],[]],["Locked",2,264385062734674,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[70,38,0,128,64,0,0,1,0.5,0.5,0,0,[]],70,2575,[[0],[1],[0],[0],["back"],["{\"size\": 18, \"alignY\": 65}"],[1],[0],[0],[0]],[[1,"1","2","","Return",1,"Hover",2,"Menu > Transition","Main Menu"],[""],[0,0,0,0,0],["",""]],[0,"Back",0,1]],[[10,78.24189758300781,0,620,4,0,0,1,0,0,0,0,[]],51,2576,[],[[0],[1],[1,100,""]],[0,0]],[[603,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,2578,[[0],[1],[2],[0],[""],[""],[1],[0],[0],[0]],[[1,"1","2","3","Click",1,"Hover",0,"Menu > NextSection",""],[""],[2,0,1,0,0],["",""]],[0,"ArrowRight",0,1]],[[533,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,2579,[[0],[1],[1],[0],[""],[""],[1],[0],[0],[0]],[[1,"1","2","3","Click",1,"Hover",0,"Menu > PrevSection",""],[""],[2,0,1,0,0],["",""]],[0,"ArrowLeft",0,1]],[[318,8,0,180,60,0,0,1,0,0,0,0,[]],124,5500,[[0],[1],[""],["en-us"],[0],[1],[1],["{\"alignX\": 100, \"alignY\": 80}"],[0],[1],[0],[0],[0]],[["",""],["tag",1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","1/5",2,0,100,50,0,0,0,0,"",-1,0]]],[]],["Ads",3,331859507310583,true,[255,255,255],true,0,0,1,false,false,0,0,0,[],[]],["Camera",4,649931801375900,true,[255,255,255],true,1,1,1,false,false,1,0,0,[[[320,320,0,32,32,0,0,1,0.5,0.5,0,0,[]],170,2580,[],[[1],[0,0,23,"100,100",0,2.5,1]],[1,"Default",0,1]]],[]]],[[null,7,2581,[],[],["list","lang"]]],[]],["Achievements Menu",640,640,true,"Main Menu",388152367234853,[["Layer 0",0,561555676564209,true,[255,255,255],false,0,0,1,false,false,0,0,0,[[[320,353,0,353,639,0,-1.570796370506287,1,0,0.5,0,0,[]],81,2582,[],[],[50,60,0,200,4,100,-2,700,700,0,4,4,-150,0,0,800,0,0,1]]],[]],["Layer 1",1,558698212988182,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[341,157,0,287,55,0,0,1,0,0,0,0,[]],105,5418,[],[],[2,2,2,2,0,1,0,0,1]],[[341,411,0,287,54,0,0,1,0,0,0,0,[]],105,5419,[],[],[2,2,2,2,0,1,0,0,1]],[[341,225,0,287,178,0,0,1,0,0,0,0,[]],105,5423,[],[],[2,2,2,2,0,1,0,0,1]],[[483,78,0,132,132,0,0,1,0.5,0.5,0,0,[]],105,5422,[],[],[2,2,2,2,0,1,0,4,1]],[[320,570,0,256,128,0,0,1,0.5,0.5,0,0,[]],70,2583,[[0],[1],[0],[0],[""],["{\"size\": 32, \"alignY\": 63}"],[1],[0],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > Transition","Main Menu"],[""],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[323,28,0,16,16,0,0,1,0.5,0.5,0,0,[]],88,2585,[],[],[0,"Default",0,1]],[[323,477,0,16,16,0,3.141592741012573,1,0.5,0.5,0,0,[]],88,2586,[],[],[0,"Default",0,1]],[[483,78,0,128,128,0,0,1,0.5,0.5,0,0,[]],95,2587,[],[["icon",4],[1,1,0,0,1]],[0,4]],[[343,160,0,283,50,0,0,1,0,0,0,0,[]],94,2588,[[1],[0],[""],["en-us"],[0],[1],[0],[""],[0],[1],[0],[0],[0],["title"]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","",1,0,50,50,0,0,0,0,"",-1,0]],[[343,227,0,283,174,0,0,1,0,0,0,0,[]],94,2589,[[1],[0],[""],["en-us"],[0],[1],[0],[""],[0],[1],[0],[0],[0],["description"]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","",1,0,50,50,0,0,0,0,"",-1,0]],[[343,413,0,283,50,0,0,1,0,0,0,0,[]],94,2590,[[1],[0],[""],["en-us"],[1],[0],[0],[""],[0],[1],[0],[0],[0],["acquired"]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","",1,0,50,50,0,0,0,0,"",-1,0]],[[323,252,0,11,428,0,0,1,0.5,0.5,0,0,[]],113,2591,[],[["Scroll"]],[0,"Default",0,1]],[[323,50,0,11,24,0,0,1,0.5,0.5,0,0,[]],99,5567,[],[["Slider"]],[0,"Default",0,1]]],[]],["Levels",2,512966525676444,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-92,58,0,128,128,0,0,0,0.5,0.5,0,0,[]],91,2592,[],[["achievementItem"],[0,1,0,0,1]],[1,"Default",0,1]],[[167,252.5,0,292,465,0,0,1,0.5,0.5,0,0,[]],76,2593,[],[[0,1,1,"AchievementList","Slider","Scroll","","",1,1,""]],[0,"Default",0,1]],[[167,252.5,0,292,465,0,0,1,0.5,0.5,0,0,[]],75,2595,[],[["achievementItem",2,-1,12,12,12,12,""],["AchievementList"],["list","Achievements"]],[0,"Default",0,1]],[[-92,58,0,128,128,0,0,1,0.5,0.5,0,0,[]],74,2596,[],[[1,"","","","Click",2,"Hover",2,"",""],[1,1,0,0,1],["title",3]],[0,"Default",0,1]],[[-92,58,0,128,128,0,0,1,0.5,0.5,0,0,[]],97,2598,[],[["icon",4],[1,1,0,0,1]],[0,4]]],[]],["Ads",3,147874670421458,true,[255,255,255],true,0,0,1,false,false,0,0,0,[],[]]],[],[]],["Skins Menu",640,640,true,"Main Menu",105863768299262,[["Layer 0",0,283939012159318,true,[255,255,255],false,0,0,1,false,false,0,0,0,[[[320,353,0,353,639,0,-1.570796370506287,1,0,0.5,0,0,[]],81,5420,[],[],[50,60,0,200,4,100,-2,700,700,0,4,4,-150,0,0,800,0,0,1]],[[5,418,0,630,9,0,0,1,0,0,0,0,[]],51,5432,[],[[0],[1],[1,100,""]],[0,0]],[[535,316,0,91,9,0,0,1,0,0,0,0,[]],52,5444,[],[[0],[0]],[0,0]],[[11,281,0,71,8,0,0,1,0,0,0,0,[]],45,5445,[],[[0],[1]],[0,0]],[[14.00000381469727,189,0,231,9,0,1.570796370506287,1,0,0,0,0,[]],51,5446,[],[[0],[1],[1,100,""]],[0,0]],[[125,189,0,101,9,0,1.570796370506287,1,0,0,0,0,[]],51,5447,[],[[0],[1],[1,100,""]],[0,0]],[[587,165.0000457763672,0,488,9,0,3.141592741012573,1,0,0,0,0,[]],51,5448,[],[[0],[1],[1,100,""]],[0,0]],[[635,189,0,231,9,0,1.570796370506287,1,0,0,0,0,[]],51,5449,[],[[0],[1],[1,100,""]],[0,0]],[[587,38,0,555,9,0,3.141592741012573,1,0,0,0,0,[]],51,5425,[],[[0],[1],[1,100,""]],[0,0]],[[41,29,0,136,9,0,1.570796370506287,1,0,0,0,0,[]],51,5426,[],[[0],[1],[1,100,""]],[0,0]],[[41,156,0,58,9,0,0,1,0,0,0,0,[]],52,5430,[],[[0],[0]],[0,0]],[[62,108,0,32,32,0,0,1,0.5,0.5,0,0,[]],49,5450,[[0],[1],[0],[-1],[-1],[999],[0]],[[0],[]],[0,"Default",0,1]],[[70,162,0,50,55,0,0,1,0.5,0.5,0,0,[]],50,5451,[[-1],[0],[0],[0],[0],[0],[1]],[[0],[1,0,1,1,"F 200",200,0,0,180,0,0,0,0,0,0],[0,0,0,0,1]],[1,"Default",0,1]],[[65,76,0,64,64,0,0,1,0.5,0.5,0,0,[]],60,5478,[["level0"]],[[0],[400,-200,800,0,0,0],[0,0,0,1,1]],[0,"Default",0,1]]],[]],["Layer 1",1,439068306650109,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[97.5,433,0,202,55,0,0,1,0,0,0,0,[]],105,5421,[],[],[2,2,2,2,0,1,0,0,1]],[[610,28,0,16,16,0,0,1,0.5,0.5,0,0,[]],88,5428,[],[],[0,"Default",0,1]],[[610,165,0,16,16,0,3.141592741012573,1,0.5,0.5,0,0,[]],88,5429,[],[],[0,"Default",0,1]],[[99.5,435,0,198,51,0,0,1,0,0,0,0,[]],94,5431,[[1],[0],[""],["en-us"],[0],[1],[0],["{\"alignY\": 65}"],[0],[1],[0],[0],[0],["title"]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","",1,0,50,50,0,0,-3,0,"",-1,0]],[[320,320,0,32,64,0,0,1,0.5,0.5,0,0,[]],42,5441,[["run"],[0],[1],[1],[0],[0.8],[0.5],[0],[1],[0],[0],[0],["ovo+"],[2],[0],[0],[0],[""],[0],[3],[0],[0],[0],[0],[0],[0],[0]],[[330,1500,1500,650,1500,1000,1,0,0,1],[],[0,0],[0,10000,360,1]],[1,"Default",0,1]],[[6,433,0,87,55,0,0,1,0,0,0,0,[]],105,5454,[],[],[2,2,2,2,0,1,0,0,1]],[[8,435,0,83,51,0,0,1,0,0,0,0,[]],94,5455,[[0],[1],[""],["en-us"],[0],[1],[1],["{\"alignX\": 80, \"alignY\": 65}"],[0],[1],[0],[0],[0],["money"]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","0",1,0,100,50,0,0,-3,0,"",-1,0]],[[24,460,0,26,26,0,0,1,0.5,0.5,0,0,[]],60,5457,[[""]],[[0],[400,-200,800,0,0,0],[0,0,0,1,1]],[0,"Default",0,0]],[[304.5,433,0,198,55,0,0,1,0,0,0,0,[]],105,5424,[],[],[2,2,2,2,0,1,0,0,1]],[[306.5,435,0,194,51,0,0,1,0,0,0,0,[]],94,5433,[[1],[0],[""],["en-us"],[0],[1],[0],["{\"alignY\": 65}"],[0],[1],[0],[0],[0],["price"]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","",1,0,50,50,0,0,-3,0,"",-1,0]],[[571,461,0,128,55,0,0,1,0.5,0.5090909004211426,0,0,[]],106,5473,[],[[1,"1","2","3","Click",1,"Hover",1,"",""],[""],[2,2,0,0,0]],[0,"Default",0,1]],[[511,437,0,120,47,0,0,1,0,0,0,0,[]],94,5458,[[1],[0],[""],["en-us"],[0],[1],[0],["{\"alignY\": 65}"],[0],[1],[0],[0],[0],["button"]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","",1,0,50,50,0,0,-3,0,"",-1,0]],[[320,565,0,256,128,0,0,1,0.5,0.5,0,0,[]],70,5427,[[0],[1],[0],[0],["back"],["{\"size\": 32, \"alignY\": 63}"],[1],[0],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > Transition","Main Menu"],[""],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[610,96.5,0,11,117,0,0,1,0.5,0.5,0,0,[]],113,5568,[],[["Scroll"]],[0,"Default",0,1]],[[610,50,0,11,24,0,0,1,0.5,0.5,0,0,[]],99,5569,[],[["Slider"]],[0,"Default",0,1]]],[]],["MenuUI",2,336486667513286,false,[255,255,255],true,0,0,1,false,false,0,0,0,[[[244.4479522705078,424.5482788085938,0,118.6138687133789,474.4554748535156,0,0,1,0.5,1,0,0,[]],69,5514,[["right"]],[[2,1,0,1,0]],[0,"Default",0,1]],[[84.44795227050781,424.5482788085938,0,118.6138687133789,474.4554748535156,0,0,1,0.5,1,0,0,[]],69,5515,[["left"]],[[2,1,0,1,0]],[0,"Default",1,1]],[[564.4481201171875,424.5482788085938,0,118.6138687133789,474.4554748535156,0,0,1,0.5,1,0,0,[]],69,5516,[["up"]],[[2,1,0,1,0]],[0,"Default",3,1]],[[404.447998046875,424.5482788085938,0,118.6138687133789,474.4554748535156,0,0,1,0.5,1,0,0,[]],69,5517,[["down"]],[[2,1,0,1,0]],[0,"Default",2,1]]],[]],["Levels",3,915135473507469,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-92,58,0,110,110,0,0,0,0.5,0.5,0,0,[]],91,5434,[],[["achievementItem"],[0,1,0,0,1]],[1,"Default",0,1]],[[310,96.5,0,572,153,0,0,1,0.5,0.5,0,0,[]],76,5436,[],[[0,1,1,"AchievementList","Slider","Scroll","","",1,1,""]],[0,"Default",0,1]],[[310,96.5,0,572,153,0,0,1,0.5,0.5,0,0,[]],75,5437,[],[["achievementItem",4,-1,12,12,12,40,""],["AchievementList"],["list","Skins"]],[0,"Default",0,1]],[[-92,58,0,110,110,0,0,1,0.5,0.5,0,0,[]],74,5438,[],[[1,"","","","Click",2,"Hover",2,"",""],[1,1,0,0,1],["title",3]],[0,"Default",0,1]],[[-92,58,0,110,110,0,0,1,0.5,0.5,0,0,[]],97,5439,[],[["icon",4],[1,1,0,0,1]],[0,4]]],[]],["Ads",4,284290074541066,true,[255,255,255],true,0,0,1,false,false,0,0,0,[],[]]],[],[]],["Common Menus",640,640,true,"Common Menus",303725593686539,[["End Card",0,432267425014390,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],78,2607,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[12.04449462890625,194,0,615.9109497070313,67,0,0,1,0,0,0,0,[]],79,2608,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Timer for this level",2.5,0,0,0,0,0,-10,0,"",-1,0]],[[17.546875,248,0,604.90625,105,0,0,1,0,0,0,0,[]],80,2610,[[0],[0],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","13:40:40",4,0,63,50,0,0,-10,0,"",-1,0]],[[115.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,2611,[[0],[1],[0],[0],["replay"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Replay",""],[""],[2,2,0,0,0],["",""]],[0,"Replay",0,1]],[[524.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3086,[[0],[1],[0],[0],["next"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Next",""],[""],[2,2,0,0,0],["",""]],[0,"Next",0,1]],[[320.5,396,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3087,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > Back","Level Menu"],[""],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[320.75,521.8050537109375,0,384,96,0,0,1,0.5,0.5,0,0,[]],70,3088,[[1],[1],[0],[0],[""],["{\"size\": 22, \"left\": 70, \"right\": 18, \"alignY\": 60}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > DownloadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"DownloadReplay",0,1]]],[]],["Pause",1,412143330869125,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-310,678,0,274,31,0,0,1,0,0,0,0,[]],168,3089,[],[],[".ovo",0,1,"file"]],[[320,320,0,425,250,0,0,1,0.5,0.5,0,0,[]],82,3090,[],[[6,1,"",300,1,1,"",300,"overlay",1,"PauseClose",1,1]],[0,"Default",0,1]],[[214,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3091,[[0],[1],[0],[0],["back"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"",""],["PauseClose"],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[426,385,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3092,[[0],[1],[0],[0],["quit"],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Return",1,"Hover",4,"Menu > GiveUp",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[115.5,202,0,409,118,0,0,1,0,0,0,0,[]],83,3093,[[1],[1],["pause"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Pause",4,0,57,50,0,0,-10,0,"",-1,0]],[[320.5,88,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3094,[[1],[1],[0],[0],["loadreplay"],["{\"size\": 16, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > LoadReplay",""],[""],[2,2,0,0,0],["",""]],[0,"LoadReplay",0,1]],[[320.5,157,0,227,64,0,0,1,0.5022026300430298,0.5,0,0,[]],70,3095,[[1],[0],[0],[0],["toggledebug"],["{\"size\": 15, \"left\": 60, \"right\": 14}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Debug > Toggle",""],[""],[2,2,0,0,0],["",""]],[0,"ToggleDebug",0,1]],[[78,448,0,484,134,0,0,1,0,0,0,0,[]],193,3096,[],[],[0,"Default",0,1]]],[]],["UI",2,525014068763414,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[240,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3097,[["right"]],[[0,1,0,1,1]],[0,"Default",0,1]],[[80,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3098,[["left"]],[[0,1,0,1,1]],[0,"Default",1,1]],[[560,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3099,[["up"]],[[1,1,1,1,1]],[0,"Default",3,1]],[[400,640,0,160,640,0,0,1,0.5,1,0,0,[]],69,3100,[["down"]],[[1,1,1,1,1]],[0,"Default",2,1]]],[]],["Overlay",3,794496253237207,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[432,4,0,203.0009155273438,64,0,0,1,0,0,0,0,[]],107,5488,[],[[1,0,1,0,1]],[2,2,2,2,0,1,0,0,1]],[[432,4,0,203,64,0,0,1,0,0,0,0,[]],84,3101,[[0],[0],[""],["en-us"],[0],[1],[1],["{\"alignY\": 85, \"alignX\": 45, \"size\": 28}"],[0],[1],[0],[0],[0]],[["",""],[1,0,1,0,1]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",2,0,100,50,0,0,-10,0,"",-1,0]],[[88,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3102,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Pause",""],[""],[0,0,0,0,1],["",""]],[0,"Pause",0,1]],[[158,38,0,64,64,0,0,1,0.5,0.5,0,0,[]],70,3103,[[0],[1],[0],[0],[""],[""],[0],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",1,"Menu > Replay","1"],[""],[0,0,0,0,1],["",""]],[0,"Reload",0,1]]],[]],["End Game",4,254947929720124,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[320,320,0,616,266,0,0,1,0.5,0.5,0,0,[]],85,3104,[],[[6,1,"Hover",300,1,1,"Hover",300,"overlay",1,"",1,1]],[0,"Default",0,1]],[[73,194,0,494,72,0,0,1,0,0,0,0,[]],86,3105,[[1],[1],["yourfinaltime"],["en-us"],[0],[0],[0],["{alignY:50}"],[0],[1],[0],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Your final time",2.5,0,50,50,0,0,-10,0,"",-1,0]],[[320,403,0,192,96,0,0,1,0.5,0.5,0,0,[]],70,3106,[[0],[1],[0],[0],[""],["{\"size\": 24, \"alignY\": 59}"],[1],[1],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Quit",""],[""],[2,2,0,0,0],["",""]],[0,"Quit",0,1]],[[73,243,0,494,85,0,0,1,0,0,0,0,[]],87,3108,[[0],[1],[""],["en-us"],[0],[1],[1],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","03:03:03",3,0,50,50,0,0,-10,0,"",-1,0]],[[73,318,0,494,25,0,0,1,0,0,0,0,[]],86,5480,[[1],[1],["tryagainhardmode"],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0],[1]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","Try again in hard mode!",1,0,50,50,0,0,-2,0,"",-1,0]]],[]],["Banner",5,861214288401435,true,[255,255,255],true,0,0,1,false,false,0,0,0,[[[-237,-189,0,62.27638626098633,62.27638626098633,0,0,1,0.5,0.5,0,0,[]],109,3109,[],[["overlay"]],[0,"Default",0,1]]],[]]],[],[]],["Parse Auth",1708,960,true,"Parse Auth",318758436191215,[["Login",0,230113926697692,true,[255,255,255],false,1,1,1,false,false,1,0,0,[[[204,239.5,0,232,24,0,0,1,0,0,0,0,[]],101,3207,[[0],["Username"]],[],["","Username","",1,1,0,0,0,1,"textbox"]],[[204,276.5,0,232,24,0,0,1,0,0,0,0,[]],101,3208,[[1],["Password"]],[],["","Password","",1,1,0,0,1,1,"textbox"]],[[206,312.5,0,114,24,0,0,1,0,0,0,0,[]],100,4675,[["rememberme"]],[],[1," Remember me","",1,1,1,"check",0]],[[320,312.5,0,116,24,0,0,1,0,0,0,0,[]],100,5452,[["login"]],[],[0,"Log in","",1,1,1,"button",0]],[[204,349.5,0,232,24,0,0,1,0,0,0,0,[]],100,5503,[["toregister"]],[],[0,"Don't have an account?","",1,1,1,"link",0]],[[204,376.5,0,232,24,0,0,1,0,0,0,0,[]],100,5509,[["toforgotpass"]],[],[0,"Forgot password?","",1,1,1,"link",0]]],[]],["Register",1,308536761977922,true,[255,255,255],false,1,1,1,false,false,1,0,0,[[[204,234,0,232,24,0,0,1,0,0,0,0,[]],101,5520,[[3],["Username"]],[],["","Username","",1,1,0,0,0,1,"textbox"]],[[204,271,0,232,24,0,0,1,0,0,0,0,[]],101,5521,[[4],["E-mail"]],[],["","E-mail","",1,1,0,0,0,1,"textbox"]],[[204,308,0,232,24,0,0,1,0,0,0,0,[]],101,5522,[[5],["Password"]],[],["","Password","",1,1,0,0,1,1,"textbox"]],[[204,344,0,232,24,0,0,1,0,0,0,0,[]],100,5523,[["register"]],[],[0,"Register","",1,1,1,"button",0]],[[204,381,0,232,24,0,0,1,0,0,0,0,[]],100,5857,[["tologin"]],[],[0,"Already have an account?","",1,1,1,"link",0]]],[]],["ForgotPass",2,618879877485583,true,[255,255,255],false,1,1,1,false,false,1,0,0,[[[204,271,0,232,24,0,0,1,0,0,0,0,[]],101,5858,[[10],["E-mail"]],[],["","E-mail","",1,1,0,0,0,1,"textbox"]],[[204,307,0,232,24,0,0,1,0,0,0,0,[]],100,6372,[["forgotpass"]],[],[0,"Send password reset e-mail","",1,1,1,"button",0]],[[204,344.5,0,232,24,0,0,1,0,0,0,0,[]],100,6373,[["tologin"]],[],[0,"Back","",1,1,1,"link",0]]],[]],["AccountInfo",3,654517051650785,true,[255,255,255],false,1,1,1,false,false,1,0,0,[[[206,266.5,0,232,30,0,0,1,0,0,0,0,[]],102,7166,[[0]],[[0,0,0,1,1]],["Username: ",0,"12pt Arial","rgb(0,0,0)",0,0,0,0,0,0]],[[205,308.5,0,297,30,0,0,1,0,0,0,0,[]],102,8920,[[1]],[[0,0,0,1,1]],["E-mail: ",0,"12pt Arial","rgb(0,0,0)",0,0,0,0,0,0]],[[202,349.5,0,232,24,0,0,1,0,0,0,0,[]],100,8921,[["logout"]],[],[0,"Log out","",1,1,1,"button",0]]],[]],["Above",4,700797910318196,true,[255,255,255],true,1,1,1,false,false,1,0,0,[[[320,597,0,128,64,0,0,1,0.5,0.5,0,0,[]],70,8922,[[0],[1],[0],[0],[""],[""],[1],[0],[0],[0]],[[1,"1","2","","Click",1,"Hover",4,"Menu > Transition","Main Menu"],[""],[2,2,0,0,0],["",""]],[0,"Back",0,1]],[[52,85,0,536,81,0,0,0,0,0,0,0,[]],102,8923,[[42]],[[0,0.1,5,1,0]],["Help message",0,"12pt Arial","rgb(0,0,0)",0,50,50,0,0,0]]],[]]],[[null,19,8924,[],[],["style.css"]]],[]],["Fake Parse",1708,960,true,"Fake Parse",928287007773377,[["Layer 0",0,287793658810316,true,[255,255,255],false,1,1,1,false,false,1,0,0,[[[0,0,0,640,640,0,0,1,0,0,0,0,[]],104,8926,[],[],[0,"Default",0,1]],[[320,310,0,200,200,0,0,1,0.5,0.5,0,0,[]],103,9714,[],[],[0,"Default",0,1]]],[]]],[],[]],["LoaderLayout",1708,960,true,"Loader Layout",245791299910343,[["Layer 0",0,200586069124774,true,[255,255,255],false,1,1,1,false,false,1,0,0,[[[320,320,0,360,288,0,0,1,0.5,0.5,0,0,[]],112,9715,[],[],[0,"Default",0,1]],[[137,163,0,379,313,0,0,0.699999988079071,0,0,0,0,[]],56,9716,[],[[1],[1]],[0,0]],[[330,320,0,188,42,0,0,1,0.5,0.5,0,0,[]],111,9717,[[100],[1],[0.5],["0.2"]],[[0,0,23,"current","100, 100",2.5,"0,0",0,0,1,0,""],[1,5,0,1.2,0,0,0,10,0]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>","Loading...",1,0,50,50,1,0,0,0,"",-1,0]],[[78,459,0,484,134,0,0,1,0,0,0,0,[]],192,9718,[[200],[484]],[[]],[1,"","position:absolute; overflow: visible;","banner-container"]],[[-191,219,0,200,30,0,0,1,0,0,0,0,[]],196,4432,[[0],[0],[0],[0],[0],[0],[0],[0]],[["",""]],["",0,"12pt Arial","rgb(0,0,0)",0,0,0,0,0,0]]],[]]],[[null,110,9719,[],[],[10,5,1]]],[]],["Level Editor",1708,960,false,"Level Editor",888340642319740,[["Layer 0",0,548264056099828,true,[255,255,255],false,1,1,1,false,false,1,0,0,[],[]],["ObjectList",1,160283437277274,true,[255,255,255],true,1,1,1,false,false,1,0,0,[[[320,580,0,620,100,0,0,1,0.5,0.5,0,0,[]],116,10053,[],[["",0,1,10,10,10,10,""]],[2,2,2,2,1,1,0,4,1]]],[]]],[],[]],["Splash Screen",1708,960,true,"Splash Screen",404899983884372,[["Layer 0",0,832845546307768,true,[36,36,36],false,1,1,1,false,false,1,0,0,[[[320,320,0,800,600,0,0,1,0.5,0.5,0,0,[]],166,12120,[],[],[0,"Default",0,1]]],[]]],[],[]],["Site Locking",1708,960,true,"Site Locking",782851519379115,[["Layer 0",0,626646186151461,true,[255,255,255],false,1,1,1,false,false,1,0,0,[[[132,260.5,0,376,106,0,0,1,0,0,0,0,[]],73,12417,[[1],[1],[""],["en-us"],[0],[0],[0],[""],[0],[1],[0],[0],[0]],[["",""]],[16,16,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>ÄäÀàÂâÁáÃãÅåÆæÈèÊêÉéÇçĞğÎîÍíİıÑñÖöÒòÔôÓóÕõŒœØøŞşÜüÙùÛûÚúŸÿ¿¡ß","You're not playing this game on an authorized website, please play it here on coolmath games:",1,0,50,0,0,0,0,0,"",-1,0]],[[168.5,355.5,0,303,24,0,0,1,0,0,0,0,[]],100,12418,[["login"]],[],[0,"Coolmath games","",1,1,1,"button",0]]],[]]],[],[]]],[["Gameplay",[[1,"UnlockAchievement",0,-1,false,false,617479371695415,false],[2,"Debug",false],[2,"Common Menus",false],[0,[true,"Enemies"],false,null,817517233824430,[[-1,72,null,0,false,false,false,817517233824430,false,[[1,[2,"Enemies"]]]]],[],[[0,[true,"Enemies > Spikes"],false,null,798193702646536,[[-1,72,null,0,false,false,false,798193702646536,false,[[1,[2,"Enemies > Spikes"]]]]],[],[[0,null,false,null,150656990047087,[[42,73,null,0,false,false,false,909359155734417,false,[[10,0],[8,0],[7,[2,"dead"]]]]],[[47,74,"Solid",124347435776538,false,[[3,1]]],[58,74,"Solid",286840385748564,false,[[3,1]]]]],[0,null,false,null,319383041334756,[[-1,75,null,0,false,false,false,892502809345956,false]],[[47,74,"Solid",695125869112333,false,[[3,0]]],[58,74,"Solid",902425964778148,false,[[3,0]]]]]]],[0,null,false,null,829319559625942,[[42,76,null,0,false,false,false,764856751145562,false,[[4,204]]],[42,73,null,0,false,true,false,558752642017839,false,[[10,0],[8,0],[7,[2,"dead"]]]],[42,77,null,0,false,true,false,278700364341164,false,[[10,16]]]],[[42,78,null,853993977575063,false,[[10,14],[7,[6,[6,[0,1],[19,79]],[0,60]]]]]],[[0,null,false,null,966106561576403,[[42,73,null,0,false,false,false,232612793796245,false,[[10,14],[8,5],[7,[21,42,false,null,13]]]]],[[0,80,null,309938790786540,false,[[1,[2,"Gameplay > Death"]],[13]]]],[[0,null,false,null,316734215688468,[[204,77,null,0,false,false,false,529364119637173,false,[[10,0]]]],[[204,81,null,409484968063477,false]]]]]]],[0,null,false,null,592386007772312,[[-1,75,null,0,false,false,false,812809402188421,false],[42,73,null,0,false,false,false,313064679806543,false,[[10,14],[8,4],[7,[0,0]]]]],[[42,82,null,166351368722714,false,[[10,14],[7,[0,0]]]]]]]],[0,[true,"Jump Boost"],false,null,540406129165503,[[-1,72,null,0,false,false,false,540406129165503,false,[[1,[2,"Jump Boost"]]]]],[],[[0,null,false,null,558500188667790,[[42,83,null,0,false,false,true,170161209500788,false,[[4,43]]],[42,77,null,0,false,true,false,598831587684794,false,[[10,8]]],[42,77,null,0,false,true,false,497095828681308,false,[[10,7]]],[42,77,null,0,false,true,false,705415163603497,false,[[10,9]]]],[[42,84,"Platform",116092953129615,false,[[0,[6,[6,[22,42,"Platform",85,false,null],[21,43,false,null,0]],[19,86,[[4,[20,43,87,false,null],[0,270]]]]]]]],[42,88,"Platform",341626096438500,false,[[0,[19,89,[[6,[6,[22,42,"Platform",85,false,null],[21,43,false,null,0]],[19,90,[[4,[20,43,87,false,null],[0,270]]]]],[0,330]]]]]],[42,91,"Platform",121361528745025,false,[[0,[4,[6,[6,[22,42,"Platform",85,false,null],[21,43,false,null,0]],[19,90,[[4,[20,43,87,false,null],[0,270]]]]],[22,42,"Platform",92,false,null]]]]],[201,93,null,469888107079478,false,[[2,["jumpboost",false]],[1,[2,"sounds"]]]]],[[0,null,false,null,534608861064089,[[43,77,null,0,false,false,false,571894215802774,false,[[10,1]]]],[[42,94,"Platform",669607740636976,false,[[0,[0,0]]]]]]]],[0,null,false,null,238577669602631,[[203,83,null,0,false,false,true,636538411301879,false,[[4,43]]],[42,73,null,0,false,false,false,100843965170533,false,[[10,0],[8,0],[7,[2,"dead"]]]]],[[203,95,"Bullet",976734589507321,false,[[0,[4,[0,270],[20,43,87,false,null]]]]],[203,96,"Bullet",525629416541543,false,[[0,[6,[22,203,"Bullet",97,false,null],[21,43,false,null,0]]]]]]]]],[0,[true,"TP"],false,null,487442456114779,[[-1,72,null,0,false,false,false,487442456114779,false,[[1,[2,"TP"]]]]],[],[[0,null,false,null,798274928593214,[[-1,98,null,1,false,false,false,686987629843082,false]],[[-1,99,null,145729446632000,false,[[0,[1,1]]]]],[[0,null,false,null,393501063824987,[[-1,100,null,0,false,false,false,605534092982955,false,[[11,"UnlockAchievement"],[8,1],[7,[0,-1]]]]],[[0,80,null,107337355179901,false,[[1,[2,"Achievements > Unlock"]],[13,[7,[23,"UnlockAchievement"]]]]],[-1,101,null,579647739410040,false,[[11,"UnlockAchievement"],[7,[0,-1]]]]]]]],[0,null,false,null,149476609751529,[[42,76,null,0,false,false,false,839752528935810,false,[[4,44]]],[42,77,null,0,false,true,false,925862418578616,false,[[10,16]]],[-1,102,null,0,false,false,false,815917620843442,false]],[[194,103,null,437288196561753,false,[[3,2],[1,[19,104]],[1,[2,""]],[1,[2,""]]]]],[[1,"ID",0,0,true,false,651458185400498,false],[0,null,false,null,386099809151427,[],[[-1,101,null,482275405956776,false,[[11,"ID"],[7,[19,105,[[19,106,[[19,104],[0,1],[2," "]]]]]]]]]],[0,null,false,null,174185499592548,[[-1,100,null,0,false,false,false,270726603265149,false,[[11,"ID"],[8,0],[7,[0,8]]]]],[[-1,101,null,897334891353849,false,[[11,"UnlockAchievement"],[7,[0,3]]]]]],[0,null,false,null,129477236498970,[[-1,100,null,0,false,false,false,240795562792672,false,[[11,"ID"],[8,0],[7,[0,16]]]]],[[-1,101,null,407966422969438,false,[[11,"UnlockAchievement"],[7,[0,4]]]]]],[0,null,false,null,968649019067156,[[-1,100,null,0,false,false,false,723374594827934,false,[[11,"ID"],[8,0],[7,[0,24]]]]],[[-1,101,null,343679789204913,false,[[11,"UnlockAchievement"],[7,[0,5]]]]]],[0,null,false,null,669882669771626,[[-1,100,null,0,false,false,false,638706238153179,false,[[11,"ID"],[8,0],[7,[0,32]]]]],[[-1,101,null,935004685923671,false,[[11,"UnlockAchievement"],[7,[0,6]]]]]],[0,null,false,null,706463416026314,[[-1,100,null,0,false,false,false,793500271293311,false,[[11,"ID"],[8,0],[7,[0,40]]]]],[[-1,101,null,267005123162857,false,[[11,"UnlockAchievement"],[7,[0,7]]]]]],[0,null,false,null,510399322431641,[[-1,100,null,0,false,false,false,262851734053250,false,[[11,"ID"],[8,0],[7,[0,48]]]]],[[-1,101,null,730963262878942,false,[[11,"UnlockAchievement"],[7,[0,8]]]]]],[0,null,false,null,590613378428006,[[-1,100,null,0,false,false,false,371991566328258,false,[[11,"ID"],[8,0],[7,[0,52]]]]],[[-1,101,null,660313744076151,false,[[11,"UnlockAchievement"],[7,[0,9]]]]]],[0,null,false,null,948761321422102,[[1,107,null,0,false,false,false,277086741670455,false,[[10,3]]]],[[0,80,null,257320941282235,false,[[1,[2,"Menu > End"]],[13]]]],[[0,null,false,null,376185364606687,[[-1,100,null,0,false,false,false,181759053071889,false,[[11,"UnlockAchievement"],[8,1],[7,[0,-1]]]]],[[0,80,null,153846071231581,false,[[1,[2,"Achievements > Unlock"]],[13,[7,[23,"UnlockAchievement"]]]]],[-1,101,null,298017840871591,false,[[11,"UnlockAchievement"],[7,[0,-1]]]]]]]],[0,null,false,null,600890669847699,[[-1,75,null,0,false,false,false,459981123918630,false],[1,107,null,0,false,false,false,291334912575442,false,[[10,21]]]],[],[[0,null,false,null,392563633641833,[[1,108,null,0,false,false,false,105452162252624,false,[[10,20],[8,4],[7,[19,105,[[19,106,[[19,104],[0,1],[2," "]]]]]]]]],[],[[0,null,true,null,747973930009222,[[-1,109,null,0,false,false,false,703426847404900,false],[-1,110,null,0,false,false,false,804301584785363,false,[[3,10]]],[1,107,null,0,false,false,false,119352123383371,false,[[10,12]]],[1,107,null,0,false,false,false,235688253540502,false,[[10,13]]]],[[0,80,null,321462479511729,false,[[1,[2,"Menu > Next"]],[13]]]]]]],[0,null,false,null,748959070218175,[[-1,75,null,0,false,false,false,362933450419035,false]],[[12,111,null,724855818897912,false,[[1,[2,"Levels"]],[7,[19,89,[[20,12,112,false,null,[[2,"Levels"]]],[4,[19,105,[[19,106,[[19,104],[0,1],[2," "]]]]],[0,1]]]]]]],[12,113,null,677888245728033,false],[0,80,null,724813211688974,false,[[1,[2,"Menu > EndSection"]],[13,[7,[0,1]]]]]]]]],[0,null,false,null,767294840153446,[[-1,75,null,0,false,false,false,889130853284105,false]],[],[[0,null,false,null,651107060139585,[[1,108,null,0,false,false,false,792679126932503,false,[[10,9],[8,4],[7,[19,105,[[19,106,[[19,104],[0,1],[2," "]]]]]]]]],[],[[0,null,true,null,837910573871268,[[-1,109,null,0,false,false,false,159384116669939,false],[-1,110,null,0,false,false,false,608557143278274,false,[[3,10]]],[1,107,null,0,false,false,false,388622695521257,false,[[10,12]]],[1,107,null,0,false,false,false,896006252218961,false,[[10,13]]]],[[0,80,null,789626617247197,false,[[1,[2,"Menu > Next"]],[13]]]]]]],[0,null,false,null,182514247752239,[[-1,75,null,0,false,false,false,878519327188342,false]],[[0,80,null,698089568575990,false,[[1,[2,"Menu > EndGame"]],[13,[7,[0,1]]]]]]]]]]]]],[0,[true,"Buttons"],false,null,508180762397505,[[-1,72,null,0,false,false,false,508180762397505,false,[[1,[2,"Buttons"]]]]],[],[[0,null,false,null,902955938570994,[[42,77,null,0,false,true,false,819694607383468,false,[[10,16]]]],[],[[0,null,true,null,642371373962835,[[42,83,null,0,false,false,true,352103356460442,false,[[4,49]]],[33,83,null,0,false,false,true,597916209539078,false,[[4,49]]]],[],[[0,null,false,null,936629351434192,[[49,77,null,0,false,false,false,294006780722284,false,[[10,1]]]],[[49,114,null,526300921309243,false,[[10,1],[3,0]]],[49,115,null,552067581246204,false,[[0,[5,[0,1],[21,49,false,null,1]]]]]],[[0,null,false,null,945312009452096,[[49,116,null,0,false,false,false,967948815180281,false]],[[201,93,null,766369654270585,false,[[2,["button",false]],[1,[2,"sounds"]]]]]],[0,null,false,null,743203908752598,[[50,73,null,0,false,false,false,159114570291117,false,[[10,5],[8,0],[7,[21,49,false,null,0]]]],[-1,117,null,0,true,false,false,175155984018472,false,[[4,50]]]],[],[[0,null,false,null,487703960112722,[[50,77,null,0,false,false,false,780727798536287,false,[[10,6]]]],[],[[0,null,false,null,962028631556252,[[50,76,null,0,false,false,false,226793124479602,false,[[4,205]]]],[[205,118,"SkymenPin",548525204835581,false,[[4,50],[3,0]]]]],[0,null,false,null,383328890319792,[[50,76,null,0,false,false,false,655194200426509,false,[[4,206]]]],[[206,118,"SkymenPin",670255726921916,false,[[4,50],[3,0]]]]],[0,null,false,null,643290193210626,[[50,76,null,0,false,false,false,251234267325714,false,[[4,209]]]],[[209,118,"SkymenPin",164530002567242,false,[[4,50],[3,0]]]]]]],[0,null,false,null,423193213230728,[],[[50,119,"Zigzag",827322568071143,false]]]]]]]]]]],[0,null,false,null,658506795810972,[[-1,98,null,1,false,false,false,862782746536643,false]],[],[[0,null,false,null,406173925048443,[[-1,117,null,0,true,false,false,755673292652676,false,[[4,49]]]],[[49,120,null,283693193820755,false,[[0,[18,[12,[21,49,false,null,3],[0,-1]],[20,49,121,false,null],[21,49,false,null,3]]],[0,[18,[12,[21,49,false,null,4],[0,-1]],[20,49,122,false,null],[21,49,false,null,4]]]]],[49,123,null,241855671655582,false,[[0,[18,[12,[21,49,false,null,5],[0,999]],[20,49,87,false,null],[21,49,false,null,5]]]]],[49,82,null,295321496106524,false,[[10,3],[7,[20,49,121,false,null]]]],[49,82,null,668580951060570,false,[[10,4],[7,[20,49,122,false,null]]]],[49,82,null,765455086450546,false,[[10,5],[7,[20,49,87,false,null]]]]],[[0,null,false,null,968476180543512,[[49,77,null,0,false,true,false,445894409534634,false,[[10,1]]]],[[49,115,null,467355071915063,false,[[0,[5,[0,1],[21,49,false,null,1]]]]]],[[0,null,false,null,121500755098797,[[49,77,null,0,false,false,false,152378740043540,false,[[10,2]]],[1,108,null,0,false,false,false,983939611117620,false,[[10,14],[8,0],[7,[19,104]]]],[1,107,null,0,false,false,false,754635947633677,false,[[10,16]]]],[],[[0,null,false,null,171534935856519,[[-1,117,null,0,true,false,false,654444139799719,false,[[4,50]]],[50,73,null,0,false,false,false,321429922339418,false,[[10,5],[8,0],[7,[21,49,false,null,0]]]]],[[50,119,"Zigzag",940657765419910,false]]]]],[0,null,false,null,977557424786587,[[-1,75,null,0,false,false,false,212094976796817,false]],[[49,114,null,385601338193014,false,[[10,1],[3,1]]],[49,115,null,280509589880977,false,[[0,[5,[0,1],[21,49,false,null,1]]]]]]]]]]]]]]],[0,[true,"MovingArea"],false,null,904588067133589,[[-1,72,null,0,false,false,false,904588067133589,false,[[1,[2,"MovingArea"]]]]],[],[[0,null,false,null,167228592949210,[[-1,98,null,1,false,false,false,794671769229875,false]],[],[[0,null,false,null,745148900092535,[[-1,117,null,0,true,false,false,143824916063120,false,[[4,50]]]],[],[[0,null,false,null,141306624089218,[[50,76,null,0,false,false,false,665048178008046,false,[[4,207]]]],[],[[0,null,false,null,337038643543639,[[-1,117,null,0,true,false,false,578827976416521,false,[[4,207]]]],[],[[1,"CurImportance",0,0,false,false,615627086078896,false],[1,"CurUID",0,0,false,false,725648213075367,false],[0,null,false,null,534680483129626,[[207,77,null,0,false,false,false,755266752968829,false,[[10,1]]]],[[-1,101,null,434681276548446,false,[[11,"CurImportance"],[7,[21,50,false,null,2]]]],[-1,101,null,210583706734876,false,[[11,"CurUID"],[7,[20,50,124,false,null]]]]],[[0,null,false,null,100792502340868,[[-1,125,null,0,false,false,false,986707027884520,false,[[4,50]]],[50,126,null,0,false,false,true,747064261642000,false,[[0,[21,207,false,null,0]]]]],[],[[0,null,false,null,873047682791911,[[-1,127,null,0,false,false,false,516672485473776,false,[[7,[23,"CurImportance"]],[8,4],[7,[21,50,false,null,2]]]]],[],[[0,null,false,null,542132450158482,[[-1,125,null,0,false,false,false,139783287480773,false,[[4,50]]],[50,126,null,0,false,false,true,238495426396428,false,[[0,[23,"CurUID"]]]]],[],[[0,null,false,null,750399560056762,[[-1,127,null,0,false,false,false,945206978259047,false,[[7,[21,207,false,null,2]],[8,4],[7,[21,50,false,null,2]]]]],[[207,82,null,186931137229608,false,[[10,0],[7,[20,50,124,false,null]]]],[207,114,null,817251491373655,false,[[10,1],[3,1]]],[207,82,null,948320763579813,false,[[10,3],[7,[5,[20,207,121,false,null],[20,50,121,false,null]]]]],[207,82,null,734170979213931,false,[[10,3],[7,[5,[20,207,122,false,null],[20,50,122,false,null]]]]]]],[0,null,false,null,497370283446743,[[-1,127,null,0,false,false,false,648485699553719,false,[[7,[21,207,false,null,2]],[8,2],[7,[21,50,false,null,2]]]]],[[50,82,null,876241630848121,false,[[10,0],[7,[20,207,124,false,null]]]],[50,114,null,110387348199515,false,[[10,1],[3,1]]],[50,82,null,882752541497752,false,[[10,3],[7,[5,[20,50,121,false,null],[20,207,121,false,null]]]]],[50,82,null,741989885311350,false,[[10,4],[7,[5,[20,50,122,false,null],[20,207,122,false,null]]]]]]]]]]]]]]],[0,null,false,null,638778869444803,[[-1,75,null,0,false,false,false,898850007028291,false]],[],[[0,null,false,null,548686648969102,[[-1,127,null,0,false,false,false,903453735204728,false,[[7,[21,207,false,null,2]],[8,4],[7,[21,50,false,null,2]]]]],[[207,82,null,655305170037748,false,[[10,0],[7,[20,50,124,false,null]]]],[207,114,null,329843414872670,false,[[10,1],[3,1]]],[207,82,null,834541701984000,false,[[10,3],[7,[5,[20,207,121,false,null],[20,50,121,false,null]]]]],[207,82,null,962014219404534,false,[[10,3],[7,[5,[20,207,122,false,null],[20,50,122,false,null]]]]]]],[0,null,false,null,664410892122281,[[-1,127,null,0,false,false,false,563532501216306,false,[[7,[21,207,false,null,2]],[8,2],[7,[21,50,false,null,2]]]]],[[50,82,null,929764597035863,false,[[10,0],[7,[20,207,124,false,null]]]],[50,114,null,337878281255467,false,[[10,1],[3,1]]],[50,82,null,986246388282786,false,[[10,3],[7,[5,[20,50,121,false,null],[20,207,121,false,null]]]]],[50,82,null,392217519036617,false,[[10,4],[7,[5,[20,50,122,false,null],[20,207,122,false,null]]]]]]]]]]]]]]],[0,null,false,null,495209427441512,[[-1,117,null,0,true,false,false,551114269868589,false,[[4,50]]]],[],[[0,null,false,null,359418109233930,[[50,77,null,0,false,false,false,284005694360484,false,[[10,1]]]],[[50,128,"Zigzag",967591894594695,false,[[3,1]]],[50,129,"PolarCoordinates",702721524503720,false,[[3,0]]],[50,115,null,345401432259852,false,[[0,[0,1]]]]]]]],[0,null,false,null,776864796568203,[[-1,117,null,0,true,false,false,323509012912686,false,[[4,205]]]],[],[[0,null,false,null,865816497884485,[[50,76,null,0,false,false,false,824868405943703,false,[[4,205]]],[50,130,null,0,false,false,true,361298335117262,false,[[3,1],[10,2]]]],[[205,118,"SkymenPin",738731819020303,false,[[4,50],[3,0]]]]]]],[0,null,false,null,425757021478604,[[-1,117,null,0,true,false,false,673890063596772,false,[[4,209]]]],[],[[0,null,false,null,693065561368178,[[50,76,null,0,false,false,false,222641781984759,false,[[4,209]]],[50,130,null,0,false,false,true,909657105600037,false,[[3,1],[10,2]]]],[[209,118,"SkymenPin",404316209793545,false,[[4,50],[3,0]]]]]]],[0,null,false,null,157023248301650,[[-1,117,null,0,true,false,false,546201128171560,false,[[4,206]]]],[],[[0,null,false,null,877371937655740,[[50,76,null,0,false,false,false,594583177963440,false,[[4,206]]],[50,130,null,0,false,false,true,589243968736765,false,[[3,1],[10,2]]]],[[206,118,"SkymenPin",221463562231372,false,[[4,50],[3,0]]]]]]]]],[0,null,false,null,813051797789613,[[-1,117,null,0,true,false,false,483426909665626,false,[[4,50]]]],[],[[0,null,false,null,471076546839299,[[50,77,null,0,false,false,false,796234832555981,false,[[10,1]]]],[],[[1,"ParX",0,0,false,false,715365549297791,false],[1,"ParY",0,0,false,false,615315466616089,false],[1,"ParAngle",0,0,false,false,488192487309853,false],[0,null,false,null,463244225677382,[[207,126,null,0,false,false,true,326643880622102,false,[[0,[21,50,false,null,0]]]]],[[-1,101,null,835631189997491,false,[[11,"ParX"],[7,[20,207,121,false,null]]]],[-1,101,null,209780820821914,false,[[11,"ParY"],[7,[20,207,122,false,null]]]],[-1,101,null,303686801706156,false,[[11,"ParAngle"],[7,[20,207,87,false,null]]]],[50,131,"PolarCoordinates",663187526849578,false,[[0,[4,[23,"ParX"],[6,[19,132,[[0,0],[0,0],[21,50,false,null,3],[21,50,false,null,4]]],[19,90,[[4,[19,133,[[0,0],[0,0],[21,50,false,null,3],[21,50,false,null,4]]],[23,"ParAngle"]]]]]]],[0,[4,[23,"ParY"],[6,[19,132,[[0,0],[0,0],[21,50,false,null,3],[21,50,false,null,4]]],[19,86,[[4,[19,133,[[0,0],[0,0],[21,50,false,null,3],[21,50,false,null,4]]],[23,"ParAngle"]]]]]]]]],[50,134,"PolarCoordinates",626389494729110,false,[[0,[19,132,[[0,0],[0,0],[22,50,"Zigzag",135,false,null],[22,50,"Zigzag",136,false,null]]]],[0,[4,[19,133,[[0,0],[0,0],[22,50,"Zigzag",135,false,null],[22,50,"Zigzag",136,false,null]]],[23,"ParAngle"]]]]],[50,123,null,669851426250991,false,[[0,[4,[23,"ParAngle"],[22,50,"Zigzag",137,false,null]]]]]]]]]]]]],[0,[true,"GroudPoundSolid"],false,null,492475194697945,[[-1,72,null,0,false,false,false,492475194697945,false,[[1,[2,"GroudPoundSolid"]]]]],[],[[0,null,false,null,662222996520295,[[42,77,null,0,false,true,false,153657532399537,false,[[10,16]]],[42,77,null,0,false,true,false,468531551045040,false,[[10,18]]]],[],[[0,null,false,null,883146632734165,[[42,77,null,0,false,true,false,277442949937267,false,[[10,8]]],[42,76,null,0,false,true,false,282562966097522,false,[[4,45]]]],[[45,138,"Jumpthru",361517237070169,false,[[3,1]]]]],[0,null,false,null,571534718329416,[[42,77,null,0,false,true,false,317164334119389,false,[[10,8]]],[42,76,null,0,false,true,false,642655778849958,false,[[4,68]]]],[[68,138,"Jumpthru",911707609123969,false,[[3,1]]]]],[0,null,false,null,492367381446997,[[42,77,null,0,false,true,false,319209342190573,false,[[10,8]]],[42,76,null,0,false,true,false,454272673244056,false,[[4,52]]]],[[52,74,"Solid",295651419863401,false,[[3,1]]]]]]]]],[0,[true,"RocketLauncher"],false,null,192789956493627,[[-1,72,null,0,false,false,false,192789956493627,false,[[1,[2,"RocketLauncher"]]]]],[],[[0,null,false,null,777173910549523,[[-1,98,null,1,false,false,false,391616240895367,false],[42,77,null,0,false,true,false,556590585111010,false,[[10,16]]]],[[55,139,"Turret",474263712742605,false,[[4,42]]]]],[0,null,false,null,749983096070953,[[55,140,"Turret",1,false,false,false,336140798754307,false],[55,77,null,0,false,false,false,856760561395989,false,[[10,0]]]],[[55,114,null,971553812347711,false,[[10,0],[3,0]]],[-1,99,null,606631913237770,false,[[0,[1,0.2]]]],[201,93,null,824685422565539,false,[[2,["rocket-2",false]],[1,[2,"sounds"]]]],[55,141,null,749690754090173,false,[[4,54],[5,[20,55,142,true,null]],[7,[0,1]]]],[54,82,null,451505195388333,false,[[10,1],[7,[20,55,124,false,null]]]],[54,96,"Bullet",293484470756343,false,[[0,[18,[13,[21,55,false,null,1],[0,-1]],[21,55,false,null,1],[22,54,"Bullet",143,false,null]]]]]]],[0,null,false,null,144641948971650,[[42,77,null,0,false,true,false,914846130232944,false,[[10,16]]],[55,144,"LineOfSight",0,false,false,true,849530282743892,false,[[4,42]]]],[[55,145,"Turret",882549382432237,false,[[3,1]]]]],[0,null,false,null,968496039315631,[[42,77,null,0,false,true,false,127440019731546,false,[[10,16]]],[55,144,"LineOfSight",0,false,true,true,886452279449538,false,[[4,42]]]],[[55,145,"Turret",801900307586725,false,[[3,0]]]]],[0,[true,"Rocket"],false,null,208862693197073,[[-1,72,null,0,false,false,false,208862693197073,false,[[1,[2,"Rocket"]]]]],[],[[0,null,false,null,881781032217730,[[-1,146,null,0,false,false,false,573446189354330,false],[42,77,null,0,false,true,false,120346975020679,false,[[10,16]]]],[[54,147,null,974419686917347,false,[[0,[0,3]],[0,[20,42,121,false,null]],[0,[20,42,122,false,null]]]]]],[0,null,false,null,412829219196926,[[54,148,null,1,false,false,false,197425302647346,false],[55,126,null,0,false,false,true,174310842828542,false,[[0,[21,54,false,null,1]]]]],[[55,114,null,937090996993651,false,[[10,0],[3,1]]]]],[0,null,false,null,559922652136731,[[54,76,null,0,false,false,false,612850265831041,false,[[4,208]]]],[[54,81,null,988659206297056,false],[201,93,null,142582953243310,false,[[2,["hurt",false]],[1,[2,"sounds"]]]]]]]]]],[0,[true,"Coin"],false,null,610053379239775,[[-1,72,null,0,false,false,false,610053379239775,false,[[1,[2,"Coin"]]]]],[],[[0,null,false,null,781860972346237,[[-1,98,null,1,false,false,false,435096492543288,false]],[],[[0,null,false,null,174250042545386,[[-1,117,null,0,true,false,false,986712664670712,false,[[4,60]]]],[],[[0,null,false,null,329423880048447,[[12,149,null,0,false,false,false,568927665542643,false,[[1,[10,[2,"Coin"],[21,60,true,null,0]]]]]],[[60,150,null,126983096854299,false,[[0,[0,20]]]]]]]]]],[0,null,false,null,638084587700225,[[42,83,null,0,false,false,true,471252147382572,false,[[4,60]]],[42,77,null,0,false,true,false,119478504775756,false,[[10,16]]],[60,151,"Bullet",0,false,false,false,602298311856320,false,[[8,0],[0,[0,0]]]]],[[201,93,null,517944324813027,false,[[2,["coin1",false]],[1,[2,"sounds"]]]],[60,152,"Bullet",356712068570731,false,[[3,1]]],[60,95,"Bullet",723323301603338,false,[[0,[0,270]]]],[60,153,"Fade",585968662104051,false]],[[0,null,false,null,553699073841255,[[42,77,null,0,false,true,false,866082612074941,false,[[10,18]]]],[],[[0,null,false,null,850651083900177,[[12,149,null,0,false,true,false,450073700028019,false,[[1,[10,[2,"Coin"],[21,60,true,null,0]]]]]],[[12,111,null,266758589101539,false,[[1,[10,[2,"Coin"],[21,60,true,null,0]]],[7,[0,1]]]],[0,80,null,668957708024811,false,[[1,[2,"Save > UpdateNbCoins"]],[13]]],[0,80,null,585749039474643,false,[[1,[2,"Skins > Gold"]],[13,[7,[0,10]],[7,[2,"coin"]],[7,[21,60,true,null,0]]]]]],[[0,null,false,null,145933097162145,[[-1,154,null,0,false,false,false,723688855441844,false,[[4,94],[7,[21,94,true,null,13]],[8,0],[7,[2,"money"]]]]],[[94,155,null,862964535237520,false,[[7,[20,12,112,false,null,[[2,"Gold"]]]]]]]]]]]]]]]],[0,[true,"Portal"],false,null,307271499653043,[[-1,72,null,0,false,false,false,307271499653043,false,[[1,[2,"Portal"]]]]],[],[[1,"JustCollided",0,0,true,false,344349118038214,false],[0,null,false,null,117818488913664,[[-1,98,null,1,false,false,false,544389669167733,false],[62,77,null,0,false,false,false,108659871731841,false,[[10,6]]]],[[62,156,null,347839771706692,false,[[3,0]]],[62,123,null,628362523601327,false,[[0,[4,[20,62,87,false,null],[0,180]]]]]]],[0,null,false,null,640223326190029,[[42,157,null,0,false,false,false,284547737854565,false,[[4,62],[0,[6,[22,42,"Platform",92,false,null],[19,79]]],[0,[6,[22,42,"Platform",158,false,null],[19,79]]]]],[42,144,"LineOfSight",0,false,false,true,249592473618981,false,[[4,62]]],[42,159,null,0,false,false,true,124546823398841,false,[[3,0],[0,[20,62,121,false,null]],[0,[20,62,122,false,null]]]],[-1,100,null,0,false,false,false,744637760358725,false,[[11,"JustCollided"],[8,0],[7,[0,0]]]],[-1,127,null,0,false,false,false,891978708761939,false,[[7,[20,0,160,false,null,[[2,"PortalExists"],[21,62,false,null,1]]]],[8,0],[7,[0,1]]]]],[[-1,101,null,725251558901742,false,[[11,"JustCollided"],[7,[0,1]]]],[42,161,null,312290955888035,false,[[3,0]]]],[[1,"Target",0,0,false,false,984329452873764,false],[1,"InitAngle",0,0,false,false,119952797419937,false],[1,"speed",0,0,false,false,673936231611882,false],[1,"newAngle",0,0,false,false,288230369368679,false],[0,null,false,null,792585926331277,[],[[-1,101,null,286256617359828,false,[[11,"Target"],[7,[21,62,false,null,1]]]],[-1,101,null,519270582810577,false,[[11,"InitAngle"],[7,[4,[20,62,87,false,null],[6,[21,62,false,null,6],[0,180]]]]]]]],[0,null,false,null,169207246720608,[[-1,125,null,0,false,false,false,714285544513840,false,[[4,62]]],[-1,154,null,0,false,false,false,865070932920193,false,[[4,62],[7,[21,62,false,null,0]],[8,0],[7,[23,"Target"]]]]],[[-1,101,null,120298919648925,false,[[11,"speed"],[7,[18,[21,62,false,null,4],[21,62,false,null,5],[22,42,"Platform",162,false,null]]]]],[-1,101,null,156485652373797,false,[[11,"newAngle"],[7,[18,[21,62,false,null,2],[21,62,false,null,3],[4,[5,[4,[22,42,"Platform",163,false,null],[0,180]],[23,"InitAngle"]],[20,62,87,false,null]]]]]],[42,120,null,239556871038482,false,[[0,[20,62,164,false,null,[[0,1]]]],[0,[20,62,165,false,null,[[0,1]]]]]],[42,91,"Platform",786097994326707,false,[[0,[6,[19,90,[[6,[23,"newAngle"],[18,[21,62,false,null,6],[0,-1],[0,1]]]]],[23,"speed"]]]]],[42,84,"Platform",954279228239211,false,[[0,[6,[19,86,[[6,[23,"newAngle"],[18,[21,62,false,null,6],[0,-1],[0,1]]]]],[23,"speed"]]]]],[42,161,null,824802431077976,false,[[3,1]]]],[[0,null,true,null,991284308318970,[[42,157,null,0,false,false,false,984224813254441,false,[[4,208],[0,[0,0]],[0,[0,1]]]],[42,157,null,0,false,false,false,279341671173437,false,[[4,45],[0,[0,0]],[0,[0,1]]]]],[[42,166,null,440706781388326,false,[[0,[5,[20,42,122,false,null],[0,1]]]]]]],[0,null,false,null,970877941223723,[],[[42,161,null,612752459395941,false,[[3,0]]]]]]],[0,null,false,null,140128020291500,[],[[-1,99,null,377359185081384,false,[[0,[1,0.02]]]],[42,161,null,292924157930893,false,[[3,1]]]]]]],[0,null,false,null,566541167465031,[[42,73,null,0,false,false,false,346122380728791,false,[[10,0],[8,0],[7,[2,"dead"]]]],[203,157,null,0,false,false,false,211550470608036,false,[[4,62],[0,[6,[6,[19,90,[[22,203,"Bullet",167,false,null]]],[22,203,"Bullet",143,false,null]],[19,79]]],[0,[6,[6,[19,86,[[22,203,"Bullet",167,false,null]]],[22,203,"Bullet",143,false,null]],[19,79]]]]],[203,159,null,0,false,false,true,272642135757539,false,[[3,0],[0,[20,62,121,false,null]],[0,[20,62,122,false,null]]]],[-1,127,null,0,false,false,false,317102578632877,false,[[7,[20,0,160,false,null,[[2,"PortalExists"],[21,62,false,null,1]]]],[8,0],[7,[0,1]]]]],[],[[1,"Target",0,0,false,false,840781792592097,false],[1,"InitAngle",0,0,false,false,172881254203042,false],[1,"speed",0,0,false,false,696053828858877,false],[1,"newAngle",0,0,false,false,963168793860633,false],[0,null,false,null,745089561639135,[],[[-1,101,null,450305254434424,false,[[11,"Target"],[7,[21,62,false,null,1]]]],[-1,101,null,683095828471648,false,[[11,"InitAngle"],[7,[4,[20,62,87,false,null],[6,[21,62,false,null,6],[0,180]]]]]]]],[0,null,false,null,228595700589634,[[-1,125,null,0,false,false,false,889881120601918,false,[[4,62]]],[-1,154,null,0,false,false,false,692232896422692,false,[[4,62],[7,[21,62,false,null,0]],[8,0],[7,[23,"Target"]]]]],[[-1,101,null,501643993500060,false,[[11,"speed"],[7,[18,[21,62,false,null,4],[21,62,false,null,5],[22,203,"Bullet",143,false,null]]]]],[-1,101,null,330855058759606,false,[[11,"newAngle"],[7,[18,[21,62,false,null,2],[21,62,false,null,3],[4,[5,[4,[22,203,"Bullet",167,false,null],[0,180]],[23,"InitAngle"]],[20,62,87,false,null]]]]]],[203,120,null,272681967075299,false,[[0,[20,62,164,false,null,[[0,1]]]],[0,[20,62,165,false,null,[[0,1]]]]]],[203,95,"Bullet",387534864209000,false,[[0,[6,[23,"newAngle"],[18,[21,62,false,null,6],[0,-1],[0,1]]]]]],[203,96,"Bullet",997611053185961,false,[[0,[23,"speed"]]]]]],[0,null,false,null,664152685186553,[],[[-1,99,null,632881929884814,false,[[0,[1,0.02]]]],[203,161,null,617028694489580,false,[[3,1]]]]]]],[0,null,false,null,659314141891608,[[42,168,null,0,false,false,false,625185955991560,false],[42,76,null,0,false,true,false,672542996184996,false,[[4,62]]],[-1,100,null,0,false,false,false,752323044251589,false,[[11,"JustCollided"],[8,0],[7,[0,1]]]]],[[-1,99,null,581480505208886,false,[[0,[1,0.1]]]],[-1,101,null,224269478219969,false,[[11,"JustCollided"],[7,[0,0]]]]]],[0,null,false,null,708934789572638,[[0,169,null,2,false,false,false,987768858311828,false,[[1,[2,"PortalExists"]]]]],[],[[1,"Target",0,0,false,false,670339968882488,false],[0,null,false,null,639735049739766,[],[[-1,101,null,617549616520206,false,[[11,"Target"],[7,[20,0,170,false,null,[[0,0]]]]]]]],[0,null,false,null,893749878656184,[[-1,154,null,0,false,false,false,482205822136063,false,[[4,62],[7,[21,62,false,null,0]],[8,0],[7,[23,"Target"]]]]],[[0,171,null,444121838589462,false,[[7,[0,1]]]]]],[0,null,false,null,548303110752330,[[-1,75,null,0,false,false,false,258362858636533,false]],[[0,171,null,920304485389246,false,[[7,[0,0]]]]]]]]]],[0,[true,"GravityModifier"],false,null,685129349237703,[[-1,72,null,0,false,false,false,685129349237703,false,[[1,[2,"GravityModifier"]]]]],[],[[1,"cooldown",0,0,true,false,480186584362648,false],[1,"laststate",0,0,true,false,703710979706237,false],[0,null,false,null,764705808348460,[[-1,102,null,0,false,false,false,122688132624896,false]],[[-1,101,null,128987473830969,false,[[11,"cooldown"],[7,[0,0]]]],[-1,101,null,381591877928087,false,[[11,"laststate"],[7,[0,0]]]]]],[0,null,false,null,173786138800555,[[42,172,"Timer",0,false,false,false,217954447752586,false,[[1,[2,"gravityCooldown"]]]]],[[-1,101,null,166771761466916,false,[[11,"cooldown"],[7,[0,0]]]]]],[0,null,false,null,664147285572350,[[42,76,null,0,false,false,false,191476512090739,false,[[4,64]]],[-1,100,null,0,false,false,false,269035633657247,false,[[11,"cooldown"],[8,0],[7,[0,0]]]]],[],[[1,"startAngle",0,0,false,false,101240763580271,false],[0,null,false,null,798987350297156,[[-1,100,null,0,false,false,false,514991713773749,false,[[11,"laststate"],[8,0],[7,[0,0]]]],[-1,102,null,0,false,false,false,945585433154623,false]],[[-1,101,null,197355287270236,false,[[11,"startAngle"],[7,[22,42,"Platform",173,false,null]]]],[42,174,"Platform",401409928409540,false,[[0,[4,[20,64,175,false,null],[0,90]]]]],[42,91,"Platform",246374773260340,false,[[0,[5,[6,[22,42,"Platform",92,false,null],[19,90,[[3,[19,176,[[23,"startAngle"],[22,42,"Platform",173,false,null]]]]]]],[6,[22,42,"Platform",158,false,null],[19,86,[[3,[19,176,[[23,"startAngle"],[22,42,"Platform",173,false,null]]]]]]]]]]],[42,84,"Platform",691524706641798,false,[[0,[4,[6,[22,42,"Platform",158,false,null],[19,90,[[3,[19,176,[[23,"startAngle"],[22,42,"Platform",173,false,null]]]]]]],[6,[22,42,"Platform",92,false,null],[19,86,[[3,[19,176,[[23,"startAngle"],[22,42,"Platform",173,false,null]]]]]]]]]]],[42,123,null,254092729597449,false,[[0,[5,[22,42,"Platform",173,false,null],[0,90]]]]],[42,177,"Timer",414418575786425,false,[[0,[1,0.1]],[3,0],[1,[2,"gravityCooldown"]]]],[-1,101,null,100359847170940,false,[[11,"cooldown"],[7,[0,1]]]],[-1,101,null,307106799694441,false,[[11,"laststate"],[7,[0,1]]]],[42,177,"Timer",595869118190293,false,[[0,[1,0.1]],[3,0],[1,[2,"gravityCooldown"]]]],[-1,101,null,234999175535584,false,[[11,"cooldown"],[7,[0,1]]]],[0,80,null,647640646829084,false,[[1,[2,"Player > Update Controls"]],[13]]]]]]],[0,null,false,null,880840812667687,[[-1,75,null,0,false,false,false,253974437048243,false],[-1,100,null,0,false,false,false,561952468057546,false,[[11,"cooldown"],[8,0],[7,[0,0]]]]],[],[[1,"startAngle",0,0,false,false,378168274091704,false],[0,null,false,null,866930301300976,[[-1,100,null,0,false,false,false,288026142628092,false,[[11,"laststate"],[8,0],[7,[0,1]]]],[-1,102,null,0,false,false,false,972024744486087,false]],[[-1,101,null,995979263713003,false,[[11,"startAngle"],[7,[22,42,"Platform",173,false,null]]]],[42,174,"Platform",962213521729336,false,[[0,[0,90]]]],[42,91,"Platform",358086231966437,false,[[0,[5,[6,[22,42,"Platform",92,false,null],[19,90,[[3,[19,176,[[23,"startAngle"],[22,42,"Platform",173,false,null]]]]]]],[6,[22,42,"Platform",158,false,null],[19,86,[[3,[19,176,[[23,"startAngle"],[22,42,"Platform",173,false,null]]]]]]]]]]],[42,84,"Platform",487013144987218,false,[[0,[4,[6,[22,42,"Platform",158,false,null],[19,90,[[3,[19,176,[[23,"startAngle"],[22,42,"Platform",173,false,null]]]]]]],[6,[22,42,"Platform",92,false,null],[19,86,[[3,[19,176,[[23,"startAngle"],[22,42,"Platform",173,false,null]]]]]]]]]]],[42,123,null,225351416893313,false,[[0,[5,[22,42,"Platform",173,false,null],[0,90]]]]],[0,80,null,375923096288383,false,[[1,[2,"Player > Update Controls"]],[13]]],[-1,101,null,536544559642652,false,[[11,"laststate"],[7,[0,0]]]],[42,177,"Timer",275580806182986,false,[[0,[1,0.1]],[3,0],[1,[2,"gravityCooldown"]]]],[-1,101,null,211487344272421,false,[[11,"cooldown"],[7,[0,1]]]]]]]],[0,null,false,null,935787613356154,[[-1,146,null,0,false,false,false,211216742320522,false]],[[165,120,null,625689852404397,false,[[0,[20,32,121,false,null]],[0,[20,32,122,false,null]]]],[165,178,null,798008546917223,false,[[0,[19,132,[[20,165,121,false,null],[20,165,122,false,null],[4,[20,165,121,false,null],[6,[22,42,"Platform",92,false,null],[19,79]]],[4,[20,165,122,false,null],[6,[22,42,"Platform",158,false,null],[19,79]]]]]],[0,[0,10]]]],[165,179,null,406200134672372,false,[[0,[4,[20,165,121,false,null],[22,42,"Platform",92,false,null]]],[0,[4,[20,165,122,false,null],[22,42,"Platform",158,false,null]]]]],[165,123,null,935118120233219,false,[[0,[4,[20,165,87,false,null],[20,42,87,false,null]]]]]]]]],[0,null,false,null,251145131090409,[],[]]]],["Player",[[2,"Inputs",false],[1,"VibratePtrn",1,"25",false,false,404570459311652,false],[0,[true,"Player"],false,null,611919123152529,[[-1,72,null,0,false,false,false,611919123152529,false,[[1,[2,"Player"]]]]],[],[[1,"Inverted",0,0,true,false,142546222875684,false],[0,null,false,null,222471026120080,[[42,77,null,0,false,true,false,299857350779876,false,[[10,16]]]],[],[[0,[true,"Player > Initialisation"],false,null,311991729341677,[[-1,72,null,0,false,false,false,311991729341677,false,[[1,[2,"Player > Initialisation"]]]]],[],[[0,null,true,null,695705595441808,[[-1,98,null,1,false,false,false,561579168352558,false]],[[42,82,null,938707018834186,false,[[10,12],[7,[21,1,true,null,8]]]]],[[0,null,false,null,965263383313761,[[-1,180,null,0,true,false,false,475619460788218,false,[[4,203],[7,[21,203,false,null,0]],[3,1]]]],[[203,181,null,799476829368724,false,[[3,0],[4,42]]]]],[0,null,false,null,609799635511282,[],[[-1,99,null,489026715020074,false,[[0,[0,0]]]]],[[0,null,false,null,630769856715792,[[42,73,null,0,false,false,false,916287859599748,false,[[10,12],[8,0],[7,[2,"spanish"]]]]],[[32,181,null,593567642189931,false,[[3,1],[4,33]]]]],[0,null,false,null,903004188327531,[[42,73,null,0,false,false,false,537116052858869,false,[[10,12],[8,0],[7,[2,""]]]]],[[203,182,"Skin",172513228022747,false]]],[0,null,false,null,206781635794602,[[-1,75,null,0,false,false,false,617843830175889,false]],[[203,183,"Skin",110983869807050,false,[[1,[21,42,true,null,12]]]],[203,184,"Skin",547029390719523,false,[[3,1]]]]],[0,null,false,null,729123524972897,[],[[203,178,null,724254348184846,false,[[0,[6,[7,[20,42,185,false,null],[20,42,186,false,null]],[20,203,186,false,null]]],[0,[6,[7,[20,42,187,false,null],[20,42,188,false,null]],[20,203,188,false,null]]]]]]]]],[0,null,false,null,160867454186983,[[-1,127,null,0,false,false,false,253863230623412,false,[[7,[19,189,[[19,104],[2,"Level"]]]],[8,5],[7,[0,0]]]]],[[25,190,null,415926411414526,false,[[1,[2,"Player"]],[0,[20,42,121,false,null]],[0,[20,42,122,false,null]],[0,[0,1]],[3,1]]],[25,191,null,243568413934290,false,[[1,[2,"Player"]],[4,42],[0,[0,1]],[7,[0,0]]]],[25,192,null,396711831267182,false,[[1,[2,"Player"]],[3,0]]],[25,193,null,879904038902192,false,[[1,[2,"Player"]],[0,[0,50]]]]]],[0,null,false,null,772619519119564,[[-1,75,null,0,false,false,false,384511928985335,false]],[[-1,194,null,192402281456738,false,[[0,[7,[19,195],[0,2]]],[0,[7,[19,196],[0,2]]]]]]],[0,null,false,null,465824268572830,[[1,107,null,0,false,false,false,756263485323418,false,[[10,18]]]],[[42,114,null,999467865036388,false,[[10,18],[3,1]]],[-1,99,null,199329300191530,false,[[0,[0,0]]]],[1,197,null,313383739076360,false,[[10,18],[3,0]]]]]]]]],[0,null,false,null,536751646237692,[[42,77,null,0,false,true,false,444152157040405,false,[[10,18]]]],[],[[0,[true,"Player > Death"],false,null,703647380856614,[[-1,72,null,0,false,false,false,703647380856614,false,[[1,[2,"Player > Death"]]]]],[],[[1,"Reload",0,0,true,false,720725094289766,false],[0,null,true,null,994290894875405,[[203,73,null,0,false,false,false,598946884206893,false,[[10,1],[8,1],[7,[20,203,121,false,null]]]],[203,73,null,0,false,false,false,748152737746933,false,[[10,2],[8,1],[7,[20,203,122,false,null]]]]],[[203,82,null,818129925795969,false,[[10,3],[7,[19,133,[[21,203,false,null,1],[21,203,false,null,2],[20,203,121,false,null],[20,203,122,false,null]]]]]],[203,82,null,365531185064939,false,[[10,4],[7,[19,132,[[21,203,false,null,1],[21,203,false,null,2],[20,203,121,false,null],[20,203,122,false,null]]]]]],[203,82,null,409788904091401,false,[[10,1],[7,[20,203,121,false,null]]]],[203,82,null,746113980889542,false,[[10,2],[7,[20,203,122,false,null]]]]]],[0,null,false,null,100692862973133,[[0,169,null,2,false,false,false,317984783736533,false,[[1,[2,"Gameplay > Death"]]]],[-1,125,null,0,false,false,false,955957225841565,false,[[4,203]]],[42,73,null,0,false,false,false,891108422609590,false,[[10,0],[8,1],[7,[2,"dead"]]]]],[[201,93,null,452012762805525,false,[[2,["death",false]],[1,[2,"sounds"]]]],[201,93,null,577794210083520,false,[[2,["death-2",false]],[1,[2,"sounds"]]]],[4,198,null,757533544581354,false,[[1,[2,"WebSdkWrapper.gameplayStop()"]]]]],[[0,null,false,null,388660541599371,[[42,73,null,0,false,false,false,772673506258535,false,[[10,12],[8,0],[7,[2,"amongus"]]]]],[],[[0,null,false,null,907313177397629,[[42,199,null,0,false,false,false,791955334047369,false]],[[201,93,null,187210056981686,false,[[2,["among us death",false]],[1,[2,"sounds"]]]]]],[0,null,false,null,827429724627074,[[-1,75,null,0,false,false,false,193717619932586,false]],[[201,93,null,479987673881857,false,[[2,["among us slice",false]],[1,[2,"sounds"]]]]]]]],[0,null,false,null,925276944419925,[],[[203,95,"Bullet",967135246481237,false,[[0,[21,203,false,null,3]]]],[203,96,"Bullet",263616075709037,false,[[0,[7,[21,203,false,null,4],[19,79]]]]],[203,200,"Bullet",930114452643498,false,[[0,[7,[7,[7,[3,[21,203,false,null,4]],[19,79]],[22,203,"Fade",201,false,null]],[0,2]]]]],[203,152,"Bullet",171090466000044,false,[[3,1]]],[42,82,null,750509417298385,false,[[10,0],[7,[2,"dead"]]]],[203,153,"Fade",538683964134631,false],[42,202,"Platform",742878953157599,false,[[3,0]]],[194,103,null,649380245768172,false,[[3,3],[1,[19,104]],[1,[2,""]],[1,[2,""]]]],[-1,99,null,103914881686088,false,[[0,[22,203,"Fade",201,false,null]]]],[-1,203,null,329531296352914,false]],[[0,null,false,null,933838668096089,[[49,77,null,0,false,false,false,202745271234599,false,[[10,2]]],[1,107,null,0,false,false,false,372895041536422,false,[[10,16]]]],[[1,197,null,825389824061635,false,[[10,23],[3,0]]]]]]],[0,null,false,null,584898329503183,[],[[-1,99,null,261183733211957,false,[[0,[1,0.1]]]],[201,93,null,769622196867013,false,[[2,["transition",false]],[1,[2,"sounds"]]]]]]]],[0,null,false,null,166452097410063,[[42,199,null,0,false,false,false,747236391839549,false],[42,73,null,0,false,false,false,362594800233900,false,[[10,0],[8,1],[7,[2,"dead"]]]]],[[0,80,null,950641217725306,false,[[1,[2,"Gameplay > Death"]],[13]]]]]]],[0,[true,"Player > WallSlide/Jump"],false,null,756773847233278,[[-1,72,null,0,false,false,false,756773847233278,false,[[1,[2,"Player > WallSlide/Jump"]]]]],[],[[0,null,false,null,419290695000157,[[42,204,"Platform",0,false,false,false,107358381159348,false],[42,77,null,0,false,true,false,721506661251965,false,[[10,8]]],[42,77,null,0,false,true,false,244130475414842,false,[[10,9]]]],[],[[0,null,false,null,963165931674392,[[-1,100,null,0,false,false,false,746526023282297,false,[[11,"Inverted"],[8,0],[7,[0,0]]]]],[],[[0,null,false,null,247770236124322,[[42,205,"Platform",0,false,false,false,951511903399889,false,[[3,0]]],[1,107,null,0,false,false,false,559544520621972,false,[[10,0]]]],[[42,84,"Platform",455624441398169,false,[[0,[7,[22,42,"Platform",158,false,null],[1,1.5]]]]],[42,114,null,906852178593184,false,[[10,1],[3,1]]],[42,115,null,555096587954172,false,[[0,[0,0]]]]]],[0,null,false,null,808811610369680,[[42,205,"Platform",0,false,false,false,525975802545173,false,[[3,1]]],[1,107,null,0,false,false,false,694577381124749,false,[[10,1]]]],[[42,84,"Platform",767414451997432,false,[[0,[7,[22,42,"Platform",158,false,null],[1,1.5]]]]],[42,114,null,345909971204675,false,[[10,1],[3,1]]],[42,115,null,389100514309378,false,[[0,[0,0]]]]]]]],[0,null,false,null,519425445016447,[[-1,75,null,0,false,false,false,991913596874637,false]],[],[[0,null,false,null,140343974474509,[[42,205,"Platform",0,false,false,false,918988254288049,false,[[3,0]]],[1,107,null,0,false,false,false,380398014379296,false,[[10,1]]]],[[42,84,"Platform",840923293564087,false,[[0,[7,[22,42,"Platform",158,false,null],[1,1.5]]]]],[42,114,null,660510260641505,false,[[10,1],[3,1]]],[42,115,null,636835331062297,false,[[0,[0,0]]]]],[[0,null,false,null,363189458201053,[[42,73,null,0,false,false,false,166669398982182,false,[[10,2],[8,0],[7,[0,1]]]]],[[0,80,null,278967976853928,false,[[1,[2,"Player > Mirror"]],[13]]]]]]],[0,null,false,null,931019007278236,[[42,205,"Platform",0,false,false,false,294571593929933,false,[[3,1]]],[1,107,null,0,false,false,false,765769481828771,false,[[10,0]]]],[[42,84,"Platform",489078398197151,false,[[0,[7,[22,42,"Platform",158,false,null],[1,1.5]]]]],[42,114,null,548003317394052,false,[[10,1],[3,1]]],[42,115,null,473573539443508,false,[[0,[0,0]]]]],[[0,null,false,null,938716305858812,[[42,73,null,0,false,false,false,975224556687209,false,[[10,2],[8,0],[7,[0,-1]]]]],[[0,80,null,719637011854503,false,[[1,[2,"Player > Unmirror"]],[13]]]]]]]]]]],[0,null,false,null,649168603453041,[[42,206,"Platform",1,false,false,false,575737793678411,false],[42,77,null,0,false,true,false,362324836777059,false,[[10,4]]]],[],[[0,null,true,null,207824824826524,[[42,205,"Platform",0,false,false,false,283988943663898,false,[[3,0]]],[42,205,"Platform",0,false,false,false,882618223779794,false,[[3,1]]]],[[42,91,"Platform",303245881019558,false,[[0,[6,[3,[21,42,false,null,2]],[22,42,"Platform",207,false,null]]]]],[-1,99,null,268305987783492,false,[[0,[0,0]]]],[42,84,"Platform",463178130888534,false,[[0,[6,[3,[22,42,"Platform",208,false,null]],[1,1.2]]]]],[201,93,null,742359688520845,false,[[2,["superjump",false]],[1,[2,"sounds"]]]]]]]],[0,null,false,null,881305590255112,[[0,169,null,2,false,false,false,353375039744012,false,[[1,[2,"Controls > Jump"]]]],[42,209,"Platform",0,false,true,false,514849441734088,false],[42,77,null,0,false,true,false,979643219341583,false,[[10,8]]],[42,77,null,0,false,true,false,368127081640151,false,[[10,9]]]],[],[[0,null,true,null,112232987900131,[[42,205,"Platform",0,false,false,false,420278566576251,false,[[3,0]]],[42,205,"Platform",0,false,false,false,245028335370593,false,[[3,1]]]],[[42,91,"Platform",338813858655594,false,[[0,[6,[3,[21,42,false,null,2]],[22,42,"Platform",207,false,null]]]]],[42,94,"Platform",310108071975863,false,[[0,[0,0]]]],[42,210,"Platform",469024885817592,false,[[3,1]]],[201,93,null,372677199798333,false,[[2,["walljump",false]],[1,[2,"sounds"]]]],[0,80,null,543399298042383,false,[[1,[2,"Controls > Clear Buffer"]],[13]]],[42,84,"Platform",353647297754898,false,[[0,[6,[3,[22,42,"Platform",208,false,null]],[1,0.8]]]]],[-1,99,null,603946370145239,false,[[0,[0,0]]]],[42,114,null,392625502572694,false,[[10,1],[3,1]]]],[[0,null,true,null,889291250836348,[[1,107,null,0,false,false,false,458034844110622,false,[[10,0]]],[1,107,null,0,false,false,false,605601992479987,false,[[10,1]]]],[],[[0,null,false,null,837431421500875,[[42,205,"Platform",0,false,false,false,192858133401906,false,[[3,0]]],[42,73,null,0,false,false,false,470980842571103,false,[[10,2],[8,0],[7,[0,1]]]]],[[0,80,null,252332830130475,false,[[1,[2,"Player > Mirror"]],[13,[7,[20,42,124,false,null]]]]]]],[0,null,false,null,687701523433150,[[42,205,"Platform",0,false,false,false,201458025094707,false,[[3,1]]],[42,73,null,0,false,false,false,621685835589986,false,[[10,2],[8,0],[7,[0,-1]]]]],[[0,80,null,847248967294844,false,[[1,[2,"Player > Unmirror"]],[13,[7,[20,42,124,false,null]]]]]]]]]]]]],[0,null,false,null,288987895310972,[[42,77,null,0,false,false,false,580716659821990,false,[[10,1]]],[42,204,"Platform",0,false,false,false,841359689150379,false],[42,205,"Platform",0,false,true,false,799866353904932,false,[[3,0]]],[42,205,"Platform",0,false,true,false,372758628768929,false,[[3,1]]]],[[42,114,null,989381910286378,false,[[10,1],[3,0]]]]],[0,null,false,null,651347113241493,[[42,77,null,0,false,false,false,313424466172390,false,[[10,1]]],[42,209,"Platform",0,false,false,false,809641831184818,false]],[[42,114,null,781117275459109,false,[[10,1],[3,0]]]]]]],[0,[true,"Player > Mirroring"],false,null,788445689487855,[[-1,72,null,0,false,false,false,788445689487855,false,[[1,[2,"Player > Mirroring"]]]]],[],[[1,"lastMirrorTime",0,0,true,false,847195757140915,false],[1,"nbMirrorsNeeded",0,4,true,false,512590942036373,false],[1,"curNbMirror",0,0,true,false,999994579713845,false],[1,"maxMirrorDelay",0,0.5,true,false,712224370881504,false],[0,null,false,null,483549912426703,[[42,77,null,0,false,true,false,185686571738319,false,[[10,15]]],[42,77,null,0,false,true,false,931129726030186,false,[[10,21]]],[42,77,null,0,false,true,false,221944859475033,false,[[10,23]]]],[],[[0,null,false,null,309019718657994,[[42,73,null,0,false,false,false,498338820155898,false,[[10,2],[8,4],[7,[0,0]]]]],[],[[0,null,false,null,774322911567924,[[-1,127,null,0,false,false,false,588795239826025,false,[[7,[22,42,"Platform",92,false,null]],[8,2],[7,[0,0]]]]],[[0,80,null,441482357624294,false,[[1,[2,"Player > Mirror"]],[13,[7,[20,42,124,false,null]]]]]]]]],[0,null,false,null,304369263826212,[[42,73,null,0,false,false,false,552262113970447,false,[[10,2],[8,2],[7,[0,0]]]]],[],[[0,null,false,null,773033750027538,[[-1,127,null,0,false,false,false,982751115549204,false,[[7,[22,42,"Platform",92,false,null]],[8,4],[7,[0,0]]]]],[[0,80,null,166732662715480,false,[[1,[2,"Player > Unmirror"]],[13,[7,[20,42,124,false,null]]]]]]]]]]],[0,null,false,null,536561708929046,[[0,169,null,2,false,false,false,298345945494330,false,[[1,[2,"Player > Mirror"]]]]],[],[[0,null,false,null,263494337490672,[[42,209,"Platform",0,false,false,false,288306850388891,false],[42,211,"Platform",0,false,false,false,262485002816915,false],[42,77,null,0,false,true,false,207308544531415,false,[[10,22]]]],[[-1,101,null,806275300670141,false,[[11,"lastMirrorTime"],[7,[19,212]]]]],[[0,null,false,null,312590310044943,[[-1,127,null,0,false,false,false,520666100704795,false,[[7,[5,[19,212],[23,"lastMirrorTime"]]],[8,3],[7,[23,"maxMirrorDelay"]]]]],[[-1,213,null,197336124102168,false,[[11,"curNbMirror"],[7,[0,1]]]]],[[0,null,false,null,231191796662136,[[-1,100,null,0,false,false,false,259137093913557,false,[[11,"curNbMirror"],[8,5],[7,[23,"nbMirrorsNeeded"]]]]],[[42,114,null,314371777263009,false,[[10,22],[3,1]]],[-1,101,null,701480047617526,false,[[11,"curNbMirror"],[7,[0,0]]]]]]]],[0,null,false,null,460625645662284,[[-1,75,null,0,false,false,false,708662602911122,false]],[[-1,101,null,738145411898240,false,[[11,"curNbMirror"],[7,[0,1]]]]]]]],[0,null,false,null,120402788886166,[[-1,75,null,0,false,false,false,382904202254737,false]],[[-1,101,null,344404693416870,false,[[11,"curNbMirror"],[7,[0,0]]]]]]]]]],[0,[true,"Player > States"],false,null,691170587589756,[[-1,72,null,0,false,false,false,691170587589756,false,[[1,[2,"Player > States"]]]]],[],[[0,null,false,null,365334319207043,[[42,73,null,0,false,false,false,487642474176428,false,[[10,0],[8,1],[7,[2,"dead"]]]]],[],[[0,null,false,null,772177277725175,[[42,209,"Platform",0,false,false,false,578041127296899,false]],[],[[0,null,true,null,841197150335354,[[42,205,"Platform",0,false,false,false,550018608464953,false,[[3,1]]],[42,205,"Platform",0,false,false,false,634127236895506,false,[[3,0]]]],[[42,82,null,573056175141292,false,[[10,0],[7,[2,"wall"]]]]]],[0,null,false,null,938072579500169,[[-1,75,null,0,false,false,false,669601944839990,false],[42,77,null,0,false,false,false,874486525942314,false,[[10,15]]]],[[42,82,null,295430485483083,false,[[10,0],[7,[2,"slip"]]]]]],[0,null,false,null,662423429444711,[[-1,75,null,0,false,false,false,540143150321449,false],[42,77,null,0,false,false,false,146912380348786,false,[[10,4]]]],[[42,82,null,961413717467038,false,[[10,0],[7,[2,"slide"]]]]]],[0,null,false,null,915468017588539,[[-1,75,null,0,false,false,false,433699678326971,false],[42,211,"Platform",0,false,false,false,724256939668784,false],[42,77,null,0,false,false,false,308169221057692,false,[[10,22]]]],[[42,82,null,766521005851009,false,[[10,0],[7,[2,"dancing"]]]]]],[0,null,false,null,461324225597614,[[-1,75,null,0,false,false,false,783545845344897,false],[42,211,"Platform",0,false,false,false,927778244215716,false],[42,77,null,0,false,false,false,318679739014858,false,[[10,21]]]],[[42,82,null,471776416651567,false,[[10,0],[7,[2,"wavedash"]]]]]],[0,null,false,null,127869997114178,[[-1,75,null,0,false,false,false,256848986081910,false],[42,211,"Platform",0,false,false,false,591957950033748,false]],[[42,82,null,179817547998943,false,[[10,0],[7,[2,"run"]]]]]],[0,null,false,null,174494803007621,[[-1,75,null,0,false,false,false,863221064292302,false]],[[42,82,null,889298161020188,false,[[10,0],[7,[2,"idle"]]]]]]]],[0,null,false,null,108561763805288,[[-1,75,null,0,false,false,false,283006012171817,false],[42,214,"Platform",0,false,true,false,962271403230216,false]],[],[[0,null,true,null,410781216237656,[[42,205,"Platform",0,false,false,false,447679676554500,false,[[3,1]]],[42,205,"Platform",0,false,false,false,282804201753922,false,[[3,0]]]],[[42,82,null,106395543792028,false,[[10,0],[7,[2,"wallslide"]]]]]],[0,null,false,null,634034304315596,[[-1,75,null,0,false,false,false,934269637663244,false],[42,204,"Platform",0,false,false,false,374704680374179,false]],[[42,82,null,974996045650701,false,[[10,0],[7,[2,"fall"]]]]]]]],[0,null,false,null,480055683239038,[[-1,75,null,0,false,false,false,497693645446123,false],[42,73,null,0,false,true,false,315955031235247,false,[[10,0],[8,0],[7,[2,"gpjump"]]]],[42,73,null,0,false,true,false,203152588400306,false,[[10,0],[8,0],[7,[2,"triplejump"]]]]],[[42,82,null,724977437829410,false,[[10,0],[7,[2,"jump"]]]]]],[0,null,false,null,991991554591831,[[42,77,null,0,false,false,false,535332068373284,false,[[10,8]]],[42,209,"Platform",0,false,true,false,940191543603060,false]],[[42,82,null,590048493493372,false,[[10,0],[7,[2,"pound"]]]]]],[0,null,false,null,219474227370741,[[42,77,null,0,false,false,false,785719819786893,false,[[10,8]]],[42,209,"Platform",0,false,false,false,702331426105038,false]],[[42,82,null,593808500082171,false,[[10,0],[7,[2,"poundFloor"]]]]]],[0,null,false,null,708979458211209,[[42,77,null,0,false,false,false,656237787934013,false,[[10,7]]]],[[42,82,null,159444926068036,false,[[10,0],[7,[2,"plunge"]]]]]],[0,null,false,null,454094226038354,[[42,77,null,0,false,false,false,775099755147749,false,[[10,9]]]],[[42,82,null,396583149177702,false,[[10,0],[7,[2,"stun"]]]]]],[0,null,true,null,430752751541234,[[42,76,null,0,false,false,false,145702857378290,false,[[4,51]]],[42,76,null,0,false,false,false,465510120606619,false,[[4,59]]],[42,76,null,0,false,false,false,698410053005777,false,[[4,48]]]],[[0,80,null,248065759133436,false,[[1,[2,"Player > SolidCollide"]],[13]]]]],[0,null,false,null,307419554101622,[[42,76,null,0,false,false,false,737021520013945,false,[[4,56]]],[56,215,"Solid",0,false,false,false,773312664991372,false]],[[0,80,null,617131426746346,false,[[1,[2,"Player > SolidCollide"]],[13]]]]],[0,null,false,null,431875627554592,[[42,76,null,0,false,false,false,403317186805152,false,[[4,52]]],[52,215,"Solid",0,false,false,false,493550569352031,false]],[[0,80,null,546385582989277,false,[[1,[2,"Player > SolidCollide"]],[13]]]]]]],[0,null,false,null,274577329636626,[[0,169,null,2,false,false,false,531118484884435,false,[[1,[2,"Player > SolidCollide"]]]]],[[42,78,null,807734866741220,false,[[10,20],[7,[0,1]]]]],[[0,null,false,null,286638327994891,[[42,73,null,0,false,false,false,825042826102583,false,[[10,20],[8,5],[7,[21,42,false,null,19]]]]],[[42,82,null,739420521147516,false,[[10,20],[7,[0,0]]]],[42,216,"PushOutSolid",536238443169339,false,[[3,1]]],[42,217,"PushOutSolid",220851704157402,false,[[0,[0,100]]]],[42,216,"PushOutSolid",148808559923978,false,[[3,0]]]]]]]]],[0,[false,"Player > Slopes"],false,null,976552025905797,[[-1,72,null,0,false,false,false,976552025905797,false,[[1,[2,"Player > Slopes"]]]]],[],[[0,null,false,null,695380159970420,[],[[20,218,null,689271926724801,false,[[0,[20,42,121,false,null]],[0,[20,42,122,false,null]],[0,[20,42,164,false,null,[[0,1]]]],[0,[20,42,165,false,null,[[0,1]]]]]],[21,218,null,544672994598797,false,[[0,[20,42,121,false,null]],[0,[20,42,122,false,null]],[0,[20,42,164,false,null,[[18,[16,[21,42,false,null,2],[0,0]],[0,3],[0,4]]]]],[0,[20,42,165,false,null,[[18,[16,[21,42,false,null,2],[0,0]],[0,3],[0,4]]]]]]]]],[0,null,false,null,728211652982944,[[21,219,null,0,false,false,false,715218382824547,false],[20,219,null,0,false,true,false,606265049322254,false]],[],[[1,"SlopeAngle",0,0,false,false,529303812680273,false],[0,null,false,null,340988331442485,[],[[-1,101,null,762274679592202,false,[[11,"SlopeAngle"],[7,[4,[20,21,220,false,null],[0,180]]]]]],[[0,null,true,null,477251842829911,[[-1,221,null,0,false,false,false,738118798256837,false,[[0,[23,"SlopeAngle"]],[0,[0,0]],[0,[0,30]]]],[-1,221,null,0,false,false,false,800623960320869,false,[[0,[23,"SlopeAngle"]],[0,[0,150]],[0,[0,180]]]]],[[42,174,"Platform",611602333331513,false,[[0,[4,[23,"SlopeAngle"],[6,[0,90],[21,42,false,null,2]]]]]]]]]]]],[0,null,false,null,612315725708972,[[20,219,null,0,false,false,false,870667097605101,false],[42,209,"Platform",0,false,false,false,322365763986867,false]],[],[[1,"SlopeAngle",0,0,false,false,974281029821255,false],[0,null,false,null,744784957729824,[],[[-1,101,null,627084559763304,false,[[11,"SlopeAngle"],[7,[4,[20,20,220,false,null],[0,180]]]]],[161,222,null,878645268291733,false,[[7,[23,"SlopeAngle"]]]]]],[0,null,false,null,755017279225060,[[42,223,"Platform",0,false,false,false,631778567950868,false,[[8,5],[0,[0,50]]]]],[],[[0,null,false,null,615557969700593,[[-1,221,null,0,false,false,false,879555554607765,false,[[0,[19,224,[[19,176,[[22,42,"Platform",173,false,null],[23,"SlopeAngle"]]]]]],[0,[0,0]],[0,[0,45]]]]],[[42,174,"Platform",328647829317294,false,[[0,[23,"SlopeAngle"]]]]]],[0,null,true,null,838362947694223,[[-1,221,null,0,false,false,false,847355661406360,false,[[0,[23,"SlopeAngle"]],[0,[0,0]],[0,[0,45]]]],[-1,221,null,0,false,false,false,162453729565543,false,[[0,[23,"SlopeAngle"]],[0,[0,135]],[0,[0,225]]]],[-1,221,null,0,false,false,false,169645907291632,false,[[0,[23,"SlopeAngle"]],[0,[0,180]],[0,[0,360]]]]],[[42,114,null,337116283834176,false,[[10,4],[3,0]]],[42,114,null,123171880016045,false,[[10,7],[3,0]]],[42,114,null,554127991134717,false,[[10,9],[3,0]]]]]]],[0,null,false,null,547321736029348,[[42,223,"Platform",0,false,false,false,510789482130003,false,[[8,2],[0,[0,50]]]]],[],[[0,null,false,null,713745663247367,[[-1,221,null,0,false,false,false,679835878431618,false,[[0,[23,"SlopeAngle"]],[0,[0,180]],[0,[0,360]]]]],[[42,114,null,889474842301223,false,[[10,11],[3,1]]]]],[0,null,true,null,194705879603610,[[-1,221,null,0,false,false,false,661427986908166,false,[[0,[23,"SlopeAngle"]],[0,[0,0]],[0,[0,45]]]],[-1,221,null,0,false,false,false,376336147138338,false,[[0,[23,"SlopeAngle"]],[0,[0,135]],[0,[0,225]]]]],[[42,82,null,940413739632072,false,[[10,2],[7,[0,1]]]],[42,114,null,925631332223759,false,[[10,15],[3,1]]]]],[0,null,false,null,136187638133406,[[-1,221,null,0,false,false,false,587085632654524,false,[[0,[23,"SlopeAngle"]],[0,[0,45]],[0,[0,135]]]]],[[42,174,"Platform",352806600689566,false,[[0,[23,"SlopeAngle"]]]]]]]]]],[0,null,false,null,506764414929522,[[-1,75,null,0,false,false,false,777181238146584,false],[21,219,null,0,false,true,false,734146853512279,false],[20,219,null,0,false,true,false,466377197057649,false]],[[-1,99,null,114510103945489,false,[[0,[1,0.05]]]]],[[0,null,false,null,342984894011255,[[21,219,null,0,false,true,false,505429410435493,false],[20,219,null,0,false,true,false,289884044949552,false]],[[42,114,null,566400165294802,false,[[10,11],[3,1]]]]]]],[0,null,false,null,101084980225245,[],[[42,123,null,329672571451253,false,[[0,[19,225,[[20,42,87,false,null],[5,[22,42,"Platform",173,false,null],[0,90]],[6,[6,[1,0.3],[19,79]],[0,60]]]]]]]]],[0,null,false,null,979771158849875,[[42,77,null,0,false,false,false,863439185951053,false,[[10,11]]]],[],[[1,"startAngle",0,0,false,false,704584737237915,false],[0,null,false,null,733588820380398,[],[[-1,101,null,363404284752787,false,[[11,"startAngle"],[7,[22,42,"Platform",173,false,null]]]],[42,174,"Platform",241385793810352,false,[[0,[19,225,[[22,42,"Platform",173,false,null],[0,90],[1,0.3]]]]]],[42,91,"Platform",477821071558060,false,[[0,[5,[6,[22,42,"Platform",92,false,null],[19,90,[[3,[19,176,[[23,"startAngle"],[22,42,"Platform",173,false,null]]]]]]],[6,[22,42,"Platform",158,false,null],[19,86,[[3,[19,176,[[23,"startAngle"],[22,42,"Platform",173,false,null]]]]]]]]]]],[42,84,"Platform",716454807663193,false,[[0,[4,[6,[22,42,"Platform",158,false,null],[19,90,[[3,[19,176,[[23,"startAngle"],[22,42,"Platform",173,false,null]]]]]]],[6,[22,42,"Platform",92,false,null],[19,86,[[3,[19,176,[[23,"startAngle"],[22,42,"Platform",173,false,null]]]]]]]]]]],[42,94,"Platform",645473313235388,false,[[0,[0,500]]]]]],[0,null,false,null,938883530769901,[[-1,221,null,0,false,false,false,740551229659674,false,[[0,[22,42,"Platform",173,false,null]],[0,[0,89]],[0,[0,91]]]]],[[-1,101,null,231024391910069,false,[[11,"startAngle"],[7,[22,42,"Platform",173,false,null]]]],[42,174,"Platform",863164628893295,false,[[0,[0,90]]]],[42,91,"Platform",948533621148569,false,[[0,[5,[6,[22,42,"Platform",92,false,null],[19,90,[[3,[19,176,[[23,"startAngle"],[22,42,"Platform",173,false,null]]]]]]],[6,[22,42,"Platform",158,false,null],[19,86,[[3,[19,176,[[23,"startAngle"],[22,42,"Platform",173,false,null]]]]]]]]]]],[42,84,"Platform",639119190641677,false,[[0,[4,[6,[22,42,"Platform",158,false,null],[19,90,[[3,[19,176,[[23,"startAngle"],[22,42,"Platform",173,false,null]]]]]]],[6,[22,42,"Platform",92,false,null],[19,86,[[3,[19,176,[[23,"startAngle"],[22,42,"Platform",173,false,null]]]]]]]]]]],[42,94,"Platform",251631673511878,false,[[0,[0,1500]]]],[42,114,null,368136511183625,false,[[10,11],[3,0]]]]]]]]],[0,[true,"Player > Controls"],false,null,886105852205779,[[-1,72,null,0,false,false,false,886105852205779,false,[[1,[2,"Player > Controls"]]]]],[],[[0,[true,"Player > Controls > Inputs"],false,null,823929961941068,[[-1,72,null,0,false,false,false,823929961941068,false,[[1,[2,"Player > Controls > Inputs"]]]]],[],[[1,"DEADZONE",0,0.25,false,true,965801597637059,false],[0,null,false,null,798643964847074,[[-1,127,null,0,false,false,false,867552163701943,false,[[7,[19,226]],[8,1],[7,[0,0]]]],[16,107,null,0,false,true,false,181626391342655,false,[[10,4]]]],[],[[0,null,true,null,757593264803895,[[2,227,null,1,false,false,false,677260429724933,false,[[0,[21,16,false,null,1]]]],[3,228,null,1,false,false,false,693718677405989,false,[[4,69]]],[169,229,null,0,false,false,false,993891042787258,false,[[0,[0,0]],[3,1]]],[169,229,null,0,false,false,false,287437332569168,false,[[0,[0,0]],[3,7]]],[169,229,null,0,false,false,false,912806490183312,false,[[0,[0,0]],[3,3]]]],[],[[0,null,false,null,978674883094863,[[69,73,null,0,false,false,false,806489454084693,false,[[10,0],[8,0],[7,[2,"up"]]]]],[],[[0,null,false,null,774246659634667,[[-1,230,null,0,false,false,false,578969652562450,false]],[[4,231,null,440250864669173,false,[[1,[23,"VibratePtrn"]]]],[0,80,null,697969900207877,false,[[1,[2,"Controls > Buffer"]],[13,[7,[2,"Jump"]],[7,[0,10]]]]]]],[0,null,false,null,859999590370793,[[-1,75,null,0,false,false,false,136067501079734,false]],[[0,80,null,939391542338706,false,[[1,[2,"Controls > Buffer"]],[13,[7,[2,"Jump"]],[7,[0,5]]]]]]]]]]],[0,null,true,null,985512435830358,[[2,227,null,1,false,false,false,922409609619713,false,[[0,[21,16,false,null,3]]]],[3,228,null,1,false,false,false,214729213378416,false,[[4,69]]],[169,229,null,0,false,false,false,439893663021523,false,[[0,[0,0]],[3,0]]],[169,229,null,0,false,false,false,915265148095670,false,[[0,[0,0]],[3,6]]],[169,229,null,0,false,false,false,649702921358863,false,[[0,[0,0]],[3,2]]]],[],[[0,null,false,null,800805527840444,[[69,73,null,0,false,false,false,944460842290175,false,[[10,0],[8,0],[7,[2,"down"]]]]],[[0,80,null,143929143416327,false,[[1,[2,"Controls > Down"]],[13]]]]]]],[0,null,true,null,101112671549247,[[2,227,null,1,false,false,false,102606565784440,false,[[0,[21,16,false,null,0]]]],[3,228,null,1,false,false,false,994657629749514,false,[[4,69]]],[169,229,null,0,false,false,false,764766912928415,false,[[0,[0,0]],[3,14]]]],[],[[0,null,false,null,291978251728377,[[69,73,null,0,false,false,false,160319987043963,false,[[10,0],[8,0],[7,[2,"left"]]]]],[[0,80,null,373950571600023,false,[[1,[2,"Controls > Left In"]],[13]]]]]]],[0,null,true,null,866786361230880,[[2,227,null,1,false,false,false,507833559278697,false,[[0,[21,16,false,null,2]]]],[3,228,null,1,false,false,false,439281305756680,false,[[4,69]]],[169,229,null,0,false,false,false,160358613277183,false,[[0,[0,0]],[3,15]]]],[],[[0,null,false,null,776216112880362,[[69,73,null,0,false,false,false,504410973385736,false,[[10,0],[8,0],[7,[2,"right"]]]]],[[0,80,null,448123307381582,false,[[1,[2,"Controls > Right In"]],[13]]]]]]],[0,null,false,null,430555247179932,[[-1,154,null,0,false,false,false,401857038531782,false,[[4,69],[7,[21,69,true,null,0]],[8,0],[7,[2,"left"]]]]],[],[[0,null,false,null,608879741711760,[[3,232,null,0,false,true,false,963841130941860,false,[[4,69]]],[-1,102,null,0,false,false,false,650944373072462,false]],[[0,80,null,649495344571573,false,[[1,[2,"Controls > Left Out"]],[13]]]]],[0,null,false,null,840563605824173,[[3,232,null,0,false,false,false,608045244890565,false,[[4,69]]],[-1,102,null,0,false,false,false,164726037765808,false]],[[0,80,null,448488508117407,false,[[1,[2,"Controls > Left In"]],[13]]]]]]],[0,null,false,null,493099835103524,[[-1,154,null,0,false,false,false,595168418902040,false,[[4,69],[7,[21,69,true,null,0]],[8,0],[7,[2,"right"]]]]],[],[[0,null,false,null,757749243608708,[[3,232,null,0,false,true,false,310888647214145,false,[[4,69]]],[-1,102,null,0,false,false,false,428642563577871,false]],[[0,80,null,142404356065969,false,[[1,[2,"Controls > Right Out"]],[13]]]]],[0,null,false,null,720827895028426,[[3,232,null,0,false,false,false,934368641082896,false,[[4,69]]],[-1,102,null,0,false,false,false,647286745775147,false]],[[0,80,null,714251384862761,false,[[1,[2,"Controls > Right In"]],[13]]]]]]],[0,null,false,null,521500076914960,[[169,233,null,0,false,false,false,764299625474317,false,[[0,[0,0]],[3,0],[8,4],[0,[23,"DEADZONE"]]]],[-1,102,null,0,false,false,false,300086564157868,false]],[[0,80,null,489464080417457,false,[[1,[2,"Controls > Right In"]],[13]]]]],[0,null,false,null,575150608288982,[[169,233,null,0,false,false,false,724727422518019,false,[[0,[0,0]],[3,0],[8,3],[0,[23,"DEADZONE"]]]],[-1,102,null,0,false,false,false,831996135157760,false]],[[0,80,null,987952363547244,false,[[1,[2,"Controls > Right Out"]],[13]]]]],[0,null,false,null,784198250410556,[[169,233,null,0,false,false,false,806281934502223,false,[[0,[0,0]],[3,0],[8,2],[0,[3,[23,"DEADZONE"]]]]],[-1,102,null,0,false,false,false,667377346824358,false]],[[0,80,null,941420699710940,false,[[1,[2,"Controls > Left In"]],[13]]]]],[0,null,false,null,459245801993335,[[169,233,null,0,false,false,false,454082760330744,false,[[0,[0,0]],[3,0],[8,5],[0,[3,[23,"DEADZONE"]]]]],[-1,102,null,0,false,false,false,839570806945625,false]],[[0,80,null,535676470319510,false,[[1,[2,"Controls > Left Out"]],[13]]]]],[0,null,true,null,560163830078652,[[2,234,null,1,false,false,false,802710456441647,false,[[0,[21,16,false,null,2]]]],[169,235,null,0,false,false,false,713350492660419,false,[[0,[0,0]],[3,15]]]],[[0,80,null,480828289459769,false,[[1,[2,"Controls > Right Out"]],[13]]]]],[0,null,true,null,660529212224859,[[2,234,null,1,false,false,false,536627815365158,false,[[0,[21,16,false,null,0]]]],[169,235,null,0,false,false,false,201234275442276,false,[[0,[0,0]],[3,14]]]],[[0,80,null,765764043572018,false,[[1,[2,"Controls > Left Out"]],[13]]]]]]],[0,null,false,null,716075351175236,[[0,169,null,2,false,false,false,973284870683443,false,[[1,[2,"Controls > Left In"]]]]],[[1,197,null,435183338914561,false,[[10,0],[3,1]]],[4,231,null,137681839008129,false,[[1,[23,"VibratePtrn"]]]],[0,80,null,693294275928430,false,[[1,[2,"Player > Update Controls"]],[13]]]]],[0,null,false,null,235491262106860,[[0,169,null,2,false,false,false,754797402914491,false,[[1,[2,"Controls > Left Out"]]]]],[[1,197,null,202212652916979,false,[[10,0],[3,0]]]]],[0,null,false,null,529298193633468,[[0,169,null,2,false,false,false,426549686156353,false,[[1,[2,"Controls > Right In"]]]]],[[1,197,null,912385440950602,false,[[10,1],[3,1]]],[4,231,null,384358683146879,false,[[1,[23,"VibratePtrn"]]]],[0,80,null,249610848175024,false,[[1,[2,"Player > Update Controls"]],[13]]]]],[0,null,false,null,131478670778004,[[0,169,null,2,false,false,false,837127616805212,false,[[1,[2,"Controls > Right Out"]]]]],[[1,197,null,689374339648023,false,[[10,1],[3,0]]]]],[0,null,false,null,577996062195257,[[0,169,null,2,false,false,false,307061671341280,false,[[1,[2,"Controls > Down"]]]]],[[4,231,null,148607203699902,false,[[1,[23,"VibratePtrn"]]]]],[[0,null,false,null,290875036723816,[[42,209,"Platform",0,false,false,false,370380781119735,false],[42,77,null,0,false,false,false,411516228686388,false,[[10,3]]],[42,77,null,0,false,true,false,802848156258173,false,[[10,7]]],[42,77,null,0,false,true,false,845420949536284,false,[[10,9]]],[42,77,null,0,false,true,false,328300317870651,false,[[10,15]]]],[[1,197,null,968886620823687,false,[[10,2],[3,1]]],[-1,99,null,954029282635918,false,[[0,[1,0.05]]]]],[[0,null,false,null,598666103798881,[[18,236,null,0,false,false,false,271561393507275,false,[[3,0],[8,4],[0,[0,0]]]],[42,77,null,0,false,true,false,929283679817413,false,[[10,4]]]],[[1,197,null,982188859923733,false,[[10,2],[3,0]]],[42,94,"Platform",464723191222887,false,[[0,[0,0]]]],[42,84,"Platform",750284061203688,false,[[0,[6,[3,[22,42,"Platform",208,false,null]],[1,0.8]]]]],[201,93,null,790509670990368,false,[[2,["jump",false]],[1,[2,"sounds"]]]],[0,80,null,402706078828503,false,[[1,[2,"Controls > Clear Buffer"]],[13,[7,[2,"Jump"]]]]],[-1,99,null,901552156092393,false,[[0,[1,0.15]]]],[42,114,null,228809631767409,false,[[10,7],[3,1]]]]],[0,null,false,null,235407024412591,[[-1,75,null,0,false,false,false,859621616452075,false]],[[1,197,null,501849789321380,false,[[10,2],[3,0]]]],[[0,null,false,null,287550945835933,[],[[42,114,null,180707654537739,false,[[10,4],[3,1]]]]]]]]],[0,null,false,null,674690005073812,[[42,209,"Platform",0,false,true,false,137771904142347,false]],[],[[0,null,true,null,296037556846492,[[1,107,null,0,false,false,false,787572431816924,false,[[10,0]]],[1,107,null,0,false,false,false,947988528704650,false,[[10,1]]]],[],[[0,null,false,null,744678385437263,[[42,77,null,0,false,true,false,999856157380997,false,[[10,8]]],[42,77,null,0,false,true,false,167793312816489,false,[[10,9]]],[42,77,null,0,false,true,false,181437011026590,false,[[10,10]]]],[],[[0,null,false,null,237566276052056,[[42,77,null,0,false,true,false,256515140737938,false,[[10,7]]]],[[42,114,null,243251260249829,false,[[10,7],[3,1]]]]],[0,null,false,null,355090883444414,[[-1,75,null,0,false,false,false,704811510345137,false]],[[42,114,null,328160539662691,false,[[10,8],[3,1]]],[42,114,null,133033630400327,false,[[10,7],[3,0]]]]]]]]],[0,null,false,null,776426800056314,[[-1,75,null,0,false,false,false,845694050237654,false]],[],[[0,null,false,null,890150920018840,[[42,77,null,0,false,true,false,349203847803959,false,[[10,9]]]],[[42,114,null,376642493049789,false,[[10,8],[3,1]]],[42,114,null,200082814010546,false,[[10,7],[3,0]]]]]]]]]]],[0,null,false,null,787365756692921,[[0,169,null,2,false,false,false,434845305505344,false,[[1,[2,"Controls > Buffer"]]]]],[],[[1,"Length",0,5,false,false,250756514300551,false],[1,"Input",1,"",false,false,645609993880248,false],[0,null,false,null,544498446813569,[],[[-1,101,null,131845755658139,false,[[11,"Input"],[7,[20,0,170,false,null,[[0,0]]]]]],[-1,101,null,131990013019710,false,[[11,"Length"],[7,[18,[12,[20,0,170,false,null,[[0,1]]],[0,0]],[23,"Length"],[20,0,170,false,null,[[0,1]]]]]]]]],[0,null,false,null,471029487332544,[[-1,237,null,0,true,false,false,422955904147317,false,[[0,[23,"Length"]]]]],[[18,238,null,541994231213228,false,[[3,0],[7,[23,"Input"]],[3,0]]]]]]],[0,null,false,null,495109701861065,[[0,169,null,2,false,false,false,588179034482036,false,[[1,[2,"Controls > Clear Buffer"]]]]],[[18,239,null,623168694447919,false,[[0,[0,0]],[0,[0,1]],[0,[0,1]]]]]],[0,null,false,null,852522602340434,[[42,77,null,0,false,true,false,658754257138830,false,[[10,21]]]],[],[[0,null,true,null,758185804928598,[[1,107,null,0,false,false,false,373367329142514,false,[[10,1]]],[1,107,null,0,false,false,false,416179047406949,false,[[10,0]]]],[],[[0,null,false,null,621907986973923,[[-1,100,null,0,false,false,false,302359767744989,false,[[11,"Inverted"],[8,0],[7,[0,0]]]]],[],[[0,null,false,null,868809679079789,[[1,107,null,0,false,false,false,327340049666832,false,[[10,0]]]],[[42,240,"Platform",822572512259894,false,[[3,0]]]]],[0,null,false,null,925120304506499,[[1,107,null,0,false,false,false,800870744243534,false,[[10,1]]]],[[42,240,"Platform",169433429511949,false,[[3,1]]]]]]],[0,null,false,null,211206089338948,[[-1,75,null,0,false,false,false,383455295883676,false]],[],[[0,null,false,null,508370783197560,[[1,107,null,0,false,false,false,366639356525243,false,[[10,0]]]],[[42,240,"Platform",516557842251802,false,[[3,1]]]]],[0,null,false,null,228922403212596,[[1,107,null,0,false,false,false,885856427437085,false,[[10,1]]]],[[42,240,"Platform",979906914973760,false,[[3,0]]]]]]]]]]],[0,null,false,null,816319954411908,[[18,236,null,0,false,false,false,699916884943934,false,[[3,0],[8,4],[0,[0,0]]]],[-1,241,null,0,false,false,false,458926654683300,false,[[0,[1,0.03]]]]],[[-1,99,null,991333363816052,false,[[0,[1,0.05]]]],[0,80,null,631583189581228,false,[[1,[10,[2,"Controls > "],[20,18,242,false,null,[[0,0]]]]],[13]]],[18,243,null,109805058586508,false,[[3,1],[3,0]]]]]]],[0,[true,"Player > Controls > Special Movements"],false,null,363053825355751,[[-1,72,null,0,false,false,false,363053825355751,false,[[1,[2,"Player > Controls > Special Movements"]]]]],[],[[0,null,false,null,234151200155398,[[42,209,"Platform",0,false,false,false,633425257668606,false],[42,77,null,0,false,true,false,123558431860533,false,[[10,4]]]],[],[[0,null,false,null,794360659217055,[[42,77,null,0,false,false,false,126028473875206,false,[[10,23]]],[42,77,null,0,false,true,false,449235096313453,false,[[10,7]]],[42,77,null,0,false,true,false,633278401000515,false,[[10,9]]]],[[42,114,null,784078599706659,false,[[10,23],[3,0]]],[42,114,null,769666761762470,false,[[10,21],[3,1]]]]],[0,null,false,null,138162063845322,[[-1,127,null,0,false,false,false,900846157803891,false,[[7,[5,[19,212],[21,42,false,null,25]]],[8,4],[7,[19,79]]]]],[[42,94,"Platform",412061506384571,false,[[0,[0,1500]]]],[42,88,"Platform",529014027071057,false,[[0,[0,330]]]],[42,210,"Platform",729231104702418,false,[[3,0]]]]]]],[0,null,false,null,611907762886215,[[42,77,null,0,false,false,false,312455868864623,false,[[10,22]]]],[[42,88,"Platform",529440291614446,false,[[0,[0,450]]]]],[[0,null,true,null,426548083760066,[[42,209,"Platform",0,false,true,false,130935118925915,false],[42,211,"Platform",0,false,true,false,942529375362234,false]],[[-1,99,null,733431664393461,false,[[0,[1,0.2]]]]],[[0,null,true,null,520339018057197,[[42,209,"Platform",0,false,true,false,516641182318195,false],[42,211,"Platform",0,false,true,false,766516486480773,false]],[[42,114,null,889255989187974,false,[[10,22],[3,0]]]]]]],[0,null,false,null,610420678978043,[[42,77,null,0,false,false,false,704540255368555,false,[[10,4]]]],[[42,114,null,537008673798183,false,[[10,22],[3,0]]]]]]],[0,null,false,null,569858679980113,[[42,77,null,0,false,false,false,571470368547165,false,[[10,26]]]],[[42,88,"Platform",325242182074794,false,[[0,[19,89,[[22,42,"Platform",207,false,null],[0,380]]]]]]],[[0,null,true,null,459218799201131,[[42,209,"Platform",0,false,false,false,824474909563929,false],[42,205,"Platform",0,false,false,false,620908376827032,false,[[3,0]]],[42,205,"Platform",0,false,false,false,380893851150332,false,[[3,1]]],[42,205,"Platform",0,false,false,false,436304788321559,false,[[3,1]]],[42,77,null,0,false,false,false,865866958801757,false,[[10,7]]]],[[42,114,null,161072743921074,false,[[10,26],[3,0]]]]]]],[0,null,false,null,688522682926390,[[42,77,null,0,false,false,false,268611126756265,false,[[10,21]]]],[[42,88,"Platform",241478928172269,false,[[0,[0,700]]]],[42,94,"Platform",782346954165456,false,[[0,[0,100]]]],[42,115,null,455990636542360,false,[[0,[0,2]]]]],[[0,null,false,null,211852139719691,[[-1,102,null,0,false,false,false,429106015634381,false]],[[201,93,null,391430948041386,false,[[2,["slide",false]],[1,[2,"sounds"]]]]],[[0,null,false,null,582626501728137,[[1,107,null,0,false,false,false,843473232322003,false,[[10,0]]],[42,73,null,0,false,false,false,491971852347534,false,[[10,2],[8,0],[7,[0,1]]]]],[[42,91,"Platform",946200696636764,false,[[0,[0,-550]]]]]],[0,null,false,null,850678311227510,[[-1,75,null,0,false,false,false,921406343109791,false],[1,107,null,0,false,false,false,666243466310714,false,[[10,1]]]],[[42,91,"Platform",854828596840148,false,[[0,[0,550]]]]]],[0,null,false,null,463293337769137,[[-1,75,null,0,false,false,false,913350117351669,false],[42,73,null,0,false,false,false,588550704254702,false,[[10,2],[8,0],[7,[0,1]]]]],[[42,91,"Platform",768104234539159,false,[[0,[0,550]]]]]],[0,null,false,null,984405175640277,[[-1,75,null,0,false,false,false,855140576194044,false]],[[42,91,"Platform",841345119154130,false,[[0,[0,-550]]]]]]]],[0,null,true,null,455543835012033,[[42,209,"Platform",0,false,true,false,590657579263759,false],[42,211,"Platform",0,false,true,false,589118068591016,false]],[[42,114,null,375863947012170,false,[[10,21],[3,0]]]]],[0,null,false,null,836547563493698,[[42,209,"Platform",0,false,false,false,338778183174668,false],[42,211,"Platform",0,false,false,false,539745865335194,false]],[[42,94,"Platform",135398754705231,false,[[0,[0,400]]]]],[[0,null,false,null,213211032057746,[[0,169,null,2,false,false,false,882971242594561,false,[[1,[2,"Controls > Jump"]]]]],[[42,84,"Platform",333156160338518,false,[[0,[6,[3,[22,42,"Platform",208,false,null]],[1,0.7]]]]],[201,93,null,160333512383321,false,[[2,["jumpboost",false]],[1,[2,"sounds"]]]],[42,114,null,453798787599105,false,[[10,21],[3,0]]],[42,114,null,586865016512066,false,[[10,10],[3,1]]],[0,80,null,520682762765632,false,[[1,[2,"Controls > Clear Buffer"]],[13,[7,[2,"Jump"]]]]]]]]],[0,null,false,null,634382156731601,[],[[-1,99,null,802589379717344,false,[[0,[1,0.4]]]],[42,114,null,690955693268396,false,[[10,21],[3,0]]]]],[0,null,false,null,512771997713136,[[-1,127,null,0,false,false,false,583767623007596,false,[[7,[22,42,"Platform",162,false,null]],[8,3],[7,[0,335]]]]],[[42,114,null,692683567693318,false,[[10,21],[3,0]]]]]]],[0,null,false,null,149697714522515,[[42,77,null,0,false,false,false,893326844858346,false,[[10,4]]]],[[42,115,null,643262095837352,false,[[0,[0,1]]]],[42,210,"Platform",708058542680396,false,[[3,1]]],[42,91,"Platform",582648154283970,false,[[0,[6,[6,[22,42,"Platform",207,false,null],[1,0.8]],[21,42,false,null,2]]]]],[42,88,"Platform",531100416915484,false,[[0,[0,660]]]]],[[0,null,false,null,949239644479790,[[-1,102,null,0,false,false,false,613411643457291,false]],[[201,93,null,839898145323238,false,[[2,["slide",false]],[1,[2,"sounds"]]]],[42,114,null,144975376700173,false,[[10,3],[3,0]]],[42,114,null,503742870282340,false,[[10,8],[3,0]]],[-1,99,null,683247520265486,false,[[0,[21,42,false,null,5]]]],[42,114,null,456413201611895,false,[[10,4],[3,0]]],[-1,99,null,390040252374842,false,[[0,[21,42,false,null,6]]]]],[[0,null,false,null,215731007074017,[[42,77,null,0,false,true,false,591370287776237,false,[[10,3]]]],[[42,114,null,509728627590603,false,[[10,3],[3,1]]],[201,93,null,198605345162292,false,[[2,["slide_recover",false]],[1,[2,"sounds"]]]]]]]],[0,null,false,null,671699291995199,[[0,169,null,2,false,false,false,861878792069515,false,[[1,[2,"Controls > Jump"]]]]],[[42,94,"Platform",196130927424202,false,[[0,[0,0]]]],[42,84,"Platform",191538897194715,false,[[0,[6,[3,[22,42,"Platform",208,false,null]],[1,0.8]]]]],[42,114,null,928097913066387,false,[[10,4],[3,0]]],[201,93,null,520342871639641,false,[[2,["jump",false]],[1,[2,"sounds"]]]],[0,80,null,646114125670202,false,[[1,[2,"Controls > Clear Buffer"]],[13,[7,[2,"Jump"]]]]],[-1,99,null,536906843429536,false,[[0,[1,0.15]]]],[42,114,null,451164878067401,false,[[10,7],[3,1]]]]],[0,null,false,null,243846958569722,[[42,209,"Platform",0,false,true,false,726201385370051,false]],[],[[0,null,false,null,404278600345537,[[-1,102,null,0,false,false,false,746891947160625,false]],[[42,177,"Timer",234551718073909,false,[[0,[1,0.1]],[3,0],[1,[2,"slideEnd"]]]]]],[0,null,false,null,243966505511514,[[42,172,"Timer",0,false,false,false,826174321638238,false,[[1,[2,"slideEnd"]]]]],[[42,94,"Platform",840796500758957,false,[[0,[0,0]]]],[42,114,null,196084792400539,false,[[10,4],[3,0]]],[42,115,null,683538051132814,false,[[0,[0,0]]]]]]]],[0,null,false,null,150051602975663,[[42,209,"Platform",0,false,false,false,134827211896509,false]],[[42,244,"Timer",692876129793336,false,[[1,[2,"slideEnd"]]]]]],[0,null,false,null,990247662493409,[[42,205,"Platform",0,false,false,false,308992508514478,false,[[3,0]]],[42,73,null,0,false,false,false,454449863392065,false,[[10,2],[8,2],[7,[0,0]]]]],[[42,114,null,454136502654359,false,[[10,4],[3,0]]],[42,114,null,734922125268928,false,[[10,3],[3,1]]],[201,93,null,450924068025923,false,[[2,["slide_recover",false]],[1,[2,"sounds"]]]]]],[0,null,false,null,927960791100859,[[42,205,"Platform",0,false,false,false,536069859736383,false,[[3,1]]],[42,73,null,0,false,false,false,646051920783423,false,[[10,2],[8,4],[7,[0,0]]]]],[[42,114,null,608856341514888,false,[[10,4],[3,0]]],[42,114,null,377741565204735,false,[[10,3],[3,1]]],[201,93,null,364806382641198,false,[[2,["slide_recover",false]],[1,[2,"sounds"]]]]]]]],[0,null,false,null,295115445478936,[[42,77,null,0,false,false,false,426799706126589,false,[[10,7]]]],[[42,245,null,739234623223014,false,[[1,[2,"Dive"]],[3,1]]],[42,210,"Platform",647036875001244,false,[[3,1]]]],[[0,null,false,null,291492786195840,[[-1,102,null,0,false,false,false,341245115795112,false]],[[201,93,null,674792430682167,false,[[2,["plunge",false]],[1,[2,"sounds"]]]]]],[0,null,false,null,948548544197326,[[42,205,"Platform",0,false,false,false,887275194330134,false,[[3,0]]],[42,73,null,0,false,false,false,543111482145418,false,[[10,2],[8,2],[7,[0,0]]]]],[[42,114,null,845568670928387,false,[[10,7],[3,0]]],[42,114,null,584330671650497,false,[[10,9],[3,1]]]]],[0,null,false,null,598770997813210,[[42,205,"Platform",0,false,false,false,170653372213439,false,[[3,1]]],[42,73,null,0,false,false,false,154932316823163,false,[[10,2],[8,4],[7,[0,0]]]]],[[42,114,null,980613528881365,false,[[10,7],[3,0]]],[42,114,null,797036182890270,false,[[10,9],[3,1]]]]],[0,null,false,null,145282778952449,[[42,209,"Platform",0,false,true,false,842767136564938,false]],[[42,91,"Platform",275301996895491,false,[[0,[6,[6,[22,42,"Platform",207,false,null],[1,0.7]],[21,42,false,null,2]]]]],[42,88,"Platform",774177221332522,false,[[0,[0,660]]]],[42,94,"Platform",727377977992170,false,[[0,[0,0]]]]]],[0,null,false,null,222243477406380,[[42,209,"Platform",0,false,false,false,844919359169178,false],[42,211,"Platform",0,false,false,false,979470601217414,false]],[[42,94,"Platform",165322303639700,false,[[0,[0,1000]]]]],[[0,null,false,null,185284095006238,[[0,169,null,2,false,false,false,641995135276923,false,[[1,[2,"Controls > Jump"]]]]],[[42,84,"Platform",242147824459377,false,[[0,[6,[3,[22,42,"Platform",208,false,null]],[1,0.7]]]]],[201,93,null,181320688640716,false,[[2,["jumpboost",false]],[1,[2,"sounds"]]]],[42,114,null,730729412907676,false,[[10,7],[3,0]]],[42,114,null,410184176037931,false,[[10,10],[3,1]]],[0,80,null,457320271768626,false,[[1,[2,"Controls > Clear Buffer"]],[13,[7,[2,"Jump"]]]]]]]]],[0,null,false,null,646607498301793,[[42,209,"Platform",0,false,false,false,367656668673651,false],[42,211,"Platform",0,false,true,false,364597386438180,false]],[[42,114,null,665747695236702,false,[[10,7],[3,0]]]]]]],[0,null,false,null,156875482546822,[[42,77,null,0,false,true,false,382746562020733,false,[[10,7]]],[42,246,null,0,false,false,false,442881764337654,false,[[1,[2,"Dive"]]]]],[[42,245,null,265327227357440,false,[[1,[2,"Default"]],[3,1]]]]],[0,null,false,null,934734420905879,[[42,77,null,0,false,false,false,549003062898579,false,[[10,10]]]],[[42,115,null,721908313349610,false,[[0,[0,0]]]],[42,210,"Platform",569182247863497,false,[[3,0]]],[42,88,"Platform",566364099637377,false,[[0,[0,660]]]],[42,91,"Platform",192896584717466,false,[[0,[6,[6,[22,42,"Platform",207,false,null],[0,2]],[21,42,false,null,2]]]]],[42,94,"Platform",642671025830788,false,[[0,[0,0]]]]],[[0,null,true,null,110446374893991,[[42,205,"Platform",0,false,false,false,554708956189875,false,[[3,0]]],[42,205,"Platform",0,false,false,false,193953298902279,false,[[3,1]]]],[[42,114,null,822678230115321,false,[[10,10],[3,0]]]]],[0,null,false,null,251993110207656,[[42,209,"Platform",0,false,false,false,110939718393033,false]],[[42,114,null,504264503331625,false,[[10,10],[3,0]]]]]]],[0,null,false,null,339268782131627,[[42,77,null,0,false,false,false,677012648112752,false,[[10,8]]]],[[42,115,null,968228659036443,false,[[0,[0,0]]]],[42,91,"Platform",353564076139514,false,[[0,[0,0]]]],[42,247,"Platform",512361875108767,false,[[0,[6,[22,42,"Platform",85,false,null],[0,2]]]]],[42,210,"Platform",402513405805144,false,[[3,1]]]],[[0,null,false,null,963368301073653,[[-1,102,null,0,false,false,false,479550046911456,false]],[[45,138,"Jumpthru",976560061507965,false,[[3,0]]],[68,138,"Jumpthru",243061084410162,false,[[3,0]]],[52,74,"Solid",889858337611395,false,[[3,0]]]]],[0,null,false,null,815393364606998,[[42,209,"Platform",0,false,false,false,824364844850936,false]],[],[[0,null,false,null,796315182690396,[[0,169,null,2,false,false,false,843773121114078,false,[[1,[2,"Controls > Jump"]]]]],[[0,80,null,338110813588658,false,[[1,[2,"Controls > Clear Buffer"]],[13]]],[42,84,"Platform",934504163476757,false,[[0,[6,[3,[22,42,"Platform",208,false,null]],[1,1.1]]]]],[42,114,null,767606467765704,false,[[10,8],[3,0]]],[42,82,null,191642327665652,false,[[10,0],[7,[2,"gpjump"]]]],[201,93,null,571296941569114,false,[[2,["jumpstrong",false]],[1,[2,"sounds"]]]],[42,114,null,642975499221718,false,[[10,23],[3,0]]]]],[0,null,false,null,767022326931793,[[-1,102,null,0,false,false,false,664368721197360,false]],[[201,93,null,201241292365051,false,[[2,["stun",false]],[1,[2,"sounds"]]]],[25,248,null,380894253458116,false,[[1,[2,"Player"]],[0,[0,30]],[0,[0,30]],[0,[1,0.1]],[0,[0,0]],[0,[1,0.1]],[0,[1,0.2]]]],[-1,99,null,226294170737269,false,[[0,[1,0.25]]]]],[[0,null,false,null,854513940128563,[[42,77,null,0,false,false,false,713986977275120,false,[[10,8]]],[42,209,"Platform",0,false,true,false,641895530349819,false]],[[42,114,null,328010380539615,false,[[10,23],[3,1]]],[-1,99,null,366043767170955,false,[[0,[1,0.5]]]],[42,114,null,277644095629144,false,[[10,23],[3,0]]]]],[0,null,false,null,622780094202269,[],[[42,114,null,706546148420929,false,[[10,8],[3,0]]]]]]]]],[0,null,false,null,816379556195353,[[-1,102,null,0,false,false,false,435257581947974,false]],[[201,93,null,671469099359503,false,[[2,["prepound",false]],[1,[2,"sounds"]]]],[42,84,"Platform",147173804863668,false,[[0,[7,[3,[22,42,"Platform",85,false,null]],[0,5]]]]],[-1,99,null,419910408689091,false,[[0,[1,0.2]]]],[42,84,"Platform",321944822457609,false,[[0,[7,[22,42,"Platform",85,false,null],[0,3]]]]]]]]],[0,null,false,null,310443411342945,[[42,77,null,0,false,false,false,406471942627452,false,[[10,15]]]],[[42,115,null,667904969000301,false,[[0,[0,1]]]],[42,210,"Platform",810228066015481,false,[[3,1]]]],[[1,"HasMoved",0,0,true,false,648002617674966,false],[0,null,false,null,267845189682378,[[-1,102,null,0,false,false,false,354678911170284,false]],[[-1,101,null,633679420683557,false,[[11,"HasMoved"],[7,[0,0]]]],[42,114,null,137779026198230,false,[[10,4],[3,0]]],[42,114,null,636284802422337,false,[[10,7],[3,0]]],[42,114,null,385877455010294,false,[[10,9],[3,0]]]]],[0,null,false,null,228461296983364,[[42,249,null,0,false,true,false,929443244984241,false,[[0,[0,0]],[0,[0,45]]]],[42,249,null,0,false,true,false,511623738861655,false,[[0,[0,315]],[0,[0,360]]]]],[[42,91,"Platform",948856888378105,false,[[0,[6,[3,[22,42,"Platform",207,false,null]],[21,42,false,null,2]]]]],[42,88,"Platform",913470149851894,false,[[0,[0,700]]]],[42,94,"Platform",252625228899587,false,[[0,[0,0]]]]]],[0,null,false,null,538667103688894,[[-1,75,null,0,false,false,false,492970077304098,false],[42,211,"Platform",0,false,false,false,417792675029875,false]],[[42,94,"Platform",239512324450997,false,[[0,[0,500]]]]]],[0,null,false,null,701571947653122,[[-1,75,null,0,false,false,false,308225476051091,false]],[[42,114,null,384797355988514,false,[[10,15],[3,0]]]]]]],[0,null,false,null,889385577070764,[[42,77,null,0,false,false,false,826777966534400,false,[[10,9]]]],[[42,115,null,907464667784307,false,[[0,[0,0]]]],[42,210,"Platform",253184080153398,false,[[3,1]]]],[[0,null,false,null,304912021288356,[[42,209,"Platform",0,false,false,false,863777075014988,false],[-1,102,null,0,false,false,false,442185400781011,false]],[[201,93,null,968847686252746,false,[[2,["stun",false]],[1,[2,"sounds"]]]],[-1,99,null,306345634303416,false,[[0,[1,0.3]]]],[42,114,null,709741391790074,false,[[10,9],[3,0]]],[42,91,"Platform",881043551343636,false,[[0,[6,[3,[21,42,false,null,2]],[0,100]]]]]]],[0,null,false,null,190351955319994,[[-1,102,null,0,false,false,false,155729367259746,false]],[[42,91,"Platform",505741491876053,false,[[0,[6,[22,42,"Platform",92,false,null],[1,-0.6]]]]],[201,93,null,459298654192874,false,[[2,["pound",false]],[1,[2,"sounds"]]]],[25,248,null,245428759770685,false,[[1,[2,"Player"]],[0,[0,50]],[0,[0,30]],[0,[1,0.25]],[0,[0,0]],[0,[1,0.1]],[0,[1,0.5]]]]]]]],[0,null,false,null,809238165586064,[[42,250,"Platform",1,false,false,false,970430710827143,false]],[[42,82,null,573821466374265,false,[[10,25],[7,[19,212]]]]]],[0,null,false,null,327986592568436,[[42,204,"Platform",0,false,false,false,736309745205108,false]],[[20,218,null,724840615189425,false,[[0,[20,42,121,false,null]],[0,[20,42,122,false,null]],[0,[20,42,121,false,null]],[0,[4,[20,42,122,false,null],[20,42,187,false,null]]]]]],[[0,null,false,null,986799436102462,[[20,219,null,0,false,false,false,997650823224230,false]],[[42,82,null,596172872649892,false,[[10,25],[7,[19,212]]]]]]]],[0,null,false,null,697109131792845,[[42,77,null,0,false,true,false,328586785690808,false,[[10,4]]],[42,77,null,0,false,true,false,848799512958797,false,[[10,7]]],[42,77,null,0,false,true,false,431761652489517,false,[[10,8]]],[42,77,null,0,false,true,false,279587680706069,false,[[10,9]]],[42,77,null,0,false,true,false,763177634916047,false,[[10,1]]],[42,77,null,0,false,true,false,754335624538479,false,[[10,15]]],[42,77,null,0,false,true,false,427875792263002,false,[[10,21]]],[1,107,null,0,false,true,false,268094222355594,false,[[10,2]]]],[[42,115,null,993314453946783,false,[[0,[0,0]]]],[42,210,"Platform",986286268712447,false,[[3,0]]]],[[0,null,false,null,235871184204619,[[0,169,null,2,false,false,false,288319760480956,false,[[1,[2,"Controls > Jump"]]]],[42,209,"Platform",0,false,false,false,464754659632466,false],[18,236,null,0,false,false,false,427557156322740,false,[[3,0],[8,4],[0,[0,0]]]]],[[0,80,null,505045592662932,false,[[1,[2,"Controls > Clear Buffer"]],[13]]],[4,231,null,396370909876961,false,[[1,[23,"VibratePtrn"]]]],[42,240,"Platform",910622627141946,false,[[3,2]]]],[[0,null,false,null,967880756819220,[[-1,127,null,0,false,false,false,591509576401018,false,[[7,[5,[19,212],[21,42,false,null,25]]],[8,3],[7,[1,0.1]]]]],[[42,78,null,824337290971704,false,[[10,24],[7,[0,1]]]],[-1,99,null,437588189261928,false,[[0,[0,0]]]]],[[0,null,false,null,758136673128243,[[42,73,null,0,false,false,false,640176111970724,false,[[10,24],[8,0],[7,[0,0]]]]],[[201,93,null,330198253049861,false,[[2,["jump",false]],[1,[2,"sounds"]]]]]],[0,null,false,null,553358567984277,[[42,73,null,0,false,false,false,229493038025303,false,[[10,24],[8,0],[7,[0,1]]]]],[[42,84,"Platform",965846211193367,false,[[0,[6,[3,[22,42,"Platform",208,false,null]],[1,1.05]]]]],[42,82,null,413406224282301,false,[[10,0],[7,[2,"gpjump"]]]],[201,93,null,769989193186885,false,[[2,["jumpstrong",false]],[1,[2,"sounds"]]]]]],[0,null,false,null,239129126161759,[[42,73,null,0,false,false,false,393160903676857,false,[[10,24],[8,0],[7,[0,2]]]]],[[42,84,"Platform",292216881114001,false,[[0,[6,[22,42,"Platform",158,false,null],[1,1.15]]]]],[42,82,null,821349012206638,false,[[10,24],[7,[0,-1]]]],[42,114,null,853241982725288,false,[[10,26],[3,1]]],[42,82,null,231357453666471,false,[[10,0],[7,[2,"triplejump"]]]],[201,93,null,876471365518828,false,[[2,["superjump",false]],[1,[2,"sounds"]]]]]]]],[0,null,false,null,353951668756337,[[-1,75,null,0,false,false,false,243104479886662,false]],[[42,82,null,735437148341193,false,[[10,24],[7,[0,0]]]],[201,93,null,482292118586285,false,[[2,["jump",false]],[1,[2,"sounds"]]]]]]]]]],[0,null,false,null,751201020040414,[[-1,75,null,0,false,false,false,127529581561110,false]],[[42,82,null,397801520086061,false,[[10,24],[7,[0,0]]]]]]]]]]]],[0,null,false,null,156141046873126,[[42,77,null,0,false,false,false,586881239706411,false,[[10,18]]]],[[42,202,"Platform",137936592884535,false,[[3,0]]]],[[1,"totdt",0,0,true,false,267859146352348,false],[1,"x",0,0,false,false,730136266388836,false],[1,"y",0,0,false,false,410003952550462,false],[1,"ang",0,0,false,false,481960375392541,false],[1,"state",1,"",false,false,899685984069302,false],[1,"frame",0,0,false,false,393964444703393,false],[1,"side",0,0,false,false,230399022519980,false],[1,"isValid",0,0,false,false,654599994298413,false],[1,"isOnCorrectMap",0,0,true,false,730720099939731,false],[0,null,false,null,829468374598519,[],[[-1,213,null,285016637825401,false,[[11,"totdt"],[7,[19,79]]]]]],[0,null,false,null,514911305231830,[[-1,102,null,0,false,false,false,703672072706211,false]],[[-1,101,null,218431225400741,false,[[11,"isOnCorrectMap"],[7,[12,[20,27,242,false,null,[[5,[20,27,251,false,null],[0,1]],[0,1],[0,1]]],[19,104]]]]]]],[0,null,false,null,480109356137061,[[-1,252,null,0,true,false,false,205905386554800,false],[-1,100,null,0,false,false,false,152102123632622,false,[[11,"totdt"],[8,4],[7,[1,0.01666666666666667]]]]],[[-1,253,null,758473408262674,false,[[11,"totdt"],[7,[1,0.01666666666666667]]]]],[[0,null,false,null,954510659548701,[[27,236,null,0,false,false,false,970026099032795,false,[[3,0],[8,4],[0,[0,0]]]],[-1,127,null,0,false,false,false,209877549521096,false,[[7,[19,226]],[8,4],[7,[0,0]]]]],[],[[0,null,false,null,982737016137921,[],[[-1,101,null,118573791856926,false,[[11,"x"],[7,[20,27,242,false,null,[[0,0],[0,0]]]]]],[-1,101,null,487251042128727,false,[[11,"y"],[7,[20,27,242,false,null,[[0,0],[0,1]]]]]],[-1,101,null,476154440719399,false,[[11,"ang"],[7,[20,27,242,false,null,[[0,0],[0,2]]]]]],[-1,101,null,176403210531315,false,[[11,"state"],[7,[20,27,242,false,null,[[0,0],[0,3]]]]]],[-1,101,null,549261333934504,false,[[11,"frame"],[7,[20,27,242,false,null,[[0,0],[0,4]]]]]],[-1,101,null,559526079359235,false,[[11,"side"],[7,[20,27,242,false,null,[[0,0],[0,5]]]]]],[-1,101,null,386877770239437,false,[[11,"isValid"],[7,[0,1]]]]]],[0,null,false,null,620937857771709,[],[[27,243,null,178703592861039,false,[[3,1],[3,0]]]]]]]]],[0,null,false,null,184661524664614,[[-1,100,null,0,false,false,false,725017395327013,false,[[11,"isValid"],[8,0],[7,[0,1]]]]],[[42,120,null,796825404433314,false,[[0,[23,"x"]],[0,[23,"y"]]]],[42,123,null,877488677237217,false,[[0,[23,"ang"]]]],[42,82,null,139104162117140,false,[[10,0],[7,[23,"state"]]]],[42,115,null,898912722617471,false,[[0,[23,"frame"]]]]],[[0,null,false,null,304172650272537,[[42,73,null,0,false,false,false,209161752053109,false,[[10,2],[8,1],[7,[23,"side"]]]]],[[42,82,null,589004259808866,false,[[10,2],[7,[23,"side"]]]]],[[0,null,false,null,378353106018284,[[42,73,null,0,false,false,false,918342218185485,false,[[10,2],[8,4],[7,[0,0]]]]],[[0,80,null,421107392963534,false,[[1,[2,"Player > Unmirror"]],[13,[7,[20,42,124,false,null]]]]]]],[0,null,false,null,340066436124507,[[42,73,null,0,false,false,false,881465647986947,false,[[10,2],[8,2],[7,[0,0]]]]],[[0,80,null,619772545284765,false,[[1,[2,"Player > Mirror"]],[13,[7,[20,42,124,false,null]]]]]]]]],[0,null,false,null,850197117058349,[[42,254,null,0,false,false,false,609799091916248,false,[[8,0],[0,[0,0]]]],[42,255,null,0,false,false,false,479427184656509,false,[[8,0],[0,[0,0]]]]],[[42,120,null,100962656481671,true,[[0,[23,"x"]],[0,[23,"y"]]]]]]]],[0,null,false,null,899574254781975,[[27,236,null,0,false,false,false,919736463104254,false,[[3,0],[8,0],[0,[0,0]]]]],[[42,114,null,133778970016206,false,[[10,18],[3,0]]],[42,114,null,241553301807067,false,[[10,8],[3,0]]],[42,202,"Platform",322938491218574,false,[[3,1]]]],[[0,null,false,null,462454853335087,[[-1,100,null,0,false,false,false,472314589649868,false,[[11,"isOnCorrectMap"],[8,0],[7,[0,1]]]]],[[42,120,null,473658434695112,false,[[0,[20,44,121,false,null]],[0,[20,44,122,false,null]]]]]]]]]]]],[0,null,false,null,215995300983103,[[42,77,null,0,false,false,false,159282898938938,false,[[10,16]]]],[[42,202,"Platform",467034861694278,false,[[3,0]]]],[[1,"GHOSTOPACITY",0,50,false,true,755712497155555,false],[0,null,false,null,610244726479499,[],[[33,150,null,411857087181546,false,[[0,[23,"GHOSTOPACITY"]]]],[32,150,null,434348739424253,false,[[0,[23,"GHOSTOPACITY"]]]],[34,150,null,175400980252283,false,[[0,[23,"GHOSTOPACITY"]]]],[35,150,null,434544860943530,false,[[0,[23,"GHOSTOPACITY"]]]],[36,150,null,204816322929772,false,[[0,[23,"GHOSTOPACITY"]]]],[37,150,null,181634839520543,false,[[0,[23,"GHOSTOPACITY"]]]],[38,150,null,143359813385219,false,[[0,[23,"GHOSTOPACITY"]]]],[39,150,null,763723398257762,false,[[0,[23,"GHOSTOPACITY"]]]],[40,150,null,243775356095169,false,[[0,[23,"GHOSTOPACITY"]]]],[41,150,null,891346351943445,false,[[0,[23,"GHOSTOPACITY"]]]],[33,182,"Skin",304460098943416,false],[32,182,"Skin",348066667867423,false],[34,182,"Skin",754659264853425,false],[35,182,"Skin",548557473702159,false],[36,182,"Skin",746668420967360,false],[37,182,"Skin",985800214032272,false],[38,182,"Skin",646067373379263,false],[39,182,"Skin",386261090503461,false],[40,182,"Skin",750106142855077,false],[41,182,"Skin",613777555742141,false]]],[0,null,false,null,654143178408526,[[42,256,null,1,false,false,false,968744484478835,false],[42,77,null,0,false,false,false,571244564999171,false,[[10,16]]]],[],[[0,null,false,null,281995551381876,[[1,107,null,0,false,false,false,383173458826215,false,[[10,15]]]],[[42,81,null,801812598964691,false]]],[0,null,false,null,107420606062321,[[-1,75,null,0,false,false,false,794412130833875,false]],[[22,257,null,756631897176540,false,[[1,[21,42,true,null,17]]]]],[[0,null,false,null,417506777740632,[[42,73,null,0,false,false,false,505052368901354,false,[[10,17],[8,0],[7,[2,""]]]]],[]]]]]],[1,"totdt",0,0,true,false,927846616028760,false],[0,null,false,null,160422064182649,[],[[-1,213,null,940889766913763,false,[[11,"totdt"],[7,[19,79]]]]]],[0,null,false,null,129781886011280,[[-1,252,null,0,true,false,false,908468482309613,false],[-1,100,null,0,false,false,false,419709005302300,false,[[11,"totdt"],[8,4],[7,[1,0.01666666666666667]]]]],[[-1,253,null,786188170554211,false,[[11,"totdt"],[7,[1,0.01666666666666667]]]]],[[0,null,false,null,246482095747891,[[22,236,null,0,false,false,false,753880760047912,false,[[3,0],[8,4],[0,[0,0]]]]],[],[[0,null,false,null,580742570341402,[[-1,127,null,0,false,false,false,690869706291923,false,[[7,[19,226]],[8,4],[7,[0,0]]]]],[[42,120,null,107352578889989,false,[[0,[20,22,242,false,null,[[0,0],[0,0]]]],[0,[20,22,242,false,null,[[0,0],[0,1]]]]]],[42,123,null,444293655275431,false,[[0,[20,22,242,false,null,[[0,0],[0,2]]]]]],[42,82,null,922969489693796,false,[[10,0],[7,[20,22,242,false,null,[[0,0],[0,3]]]]]],[42,115,null,383792607061486,false,[[0,[20,22,242,false,null,[[0,0],[0,4]]]]]]],[[0,null,false,null,105719951577974,[[22,258,null,0,false,false,false,213965162854967,false,[[0,[0,0]],[0,[0,5]],[8,1],[7,[21,42,false,null,2]]]]],[[42,82,null,666308483532413,false,[[10,2],[7,[20,22,242,false,null,[[0,0],[0,5]]]]]]],[[0,null,false,null,763833858762548,[[42,73,null,0,false,false,false,574868771374962,false,[[10,2],[8,4],[7,[0,0]]]]],[[0,80,null,863877730958315,false,[[1,[2,"Player > Unmirror"]],[13,[7,[20,42,124,false,null]]]]]]],[0,null,false,null,321004727863768,[[42,73,null,0,false,false,false,598344183294855,false,[[10,2],[8,2],[7,[0,0]]]]],[[0,80,null,277094610951174,false,[[1,[2,"Player > Mirror"]],[13,[7,[20,42,124,false,null]]]]]]]]],[0,null,false,null,853520435221701,[],[[22,243,null,393785217846335,false,[[3,1],[3,0]]]]]]]]],[0,null,false,null,883079616802522,[[22,236,null,0,false,false,false,434906052745167,false,[[3,0],[8,0],[0,[0,0]]]]],[],[[0,null,false,null,737757264553076,[[-1,102,null,0,false,false,false,291036687902187,false]],[[-1,99,null,138186168140597,false,[[0,[1,1]]]],[22,257,null,738223005910939,false,[[1,[21,42,true,null,17]]]]]]]]]]]],[0,[true,"Player > API"],false,null,310778656544186,[[-1,72,null,0,false,false,false,310778656544186,false,[[1,[2,"Player > API"]]]]],[],[[0,null,false,null,666684004601444,[[0,169,null,2,false,false,false,230911075847446,false,[[1,[2,"Player > Mirror"]]]]],[],[[1,"UID",0,0,false,false,214985796778577,false],[0,null,false,null,444017504116743,[],[[-1,101,null,905792860560439,false,[[11,"UID"],[7,[20,0,170,false,null,[[0,0]]]]]]]],[0,null,false,null,934223386933652,[[42,126,null,0,false,false,true,850803206820198,false,[[0,[23,"UID"]]]]],[[42,82,null,484762860301695,false,[[10,2],[7,[0,-1]]]],[42,156,null,739757915878079,false,[[3,0]]],[38,156,null,433706518374110,false,[[3,0]]],[40,156,null,614033754410790,false,[[3,0]]],[34,156,null,346445005175917,false,[[3,0]]],[36,156,null,673158429981905,false,[[3,0]]],[41,156,null,744022138485777,false,[[3,0]]],[39,156,null,829001401043935,false,[[3,0]]],[37,156,null,428695071211299,false,[[3,0]]],[35,156,null,345550748842253,false,[[3,0]]],[33,156,null,566160608722986,false,[[3,0]]],[32,156,null,222340057935942,false,[[3,0]]]]]]],[0,null,false,null,639840547395723,[[0,169,null,2,false,false,false,889393957717644,false,[[1,[2,"Player > Unmirror"]]]]],[],[[1,"UID",0,0,false,false,641016828248015,false],[0,null,false,null,925461952490355,[],[[-1,101,null,311976308380890,false,[[11,"UID"],[7,[20,0,170,false,null,[[0,0]]]]]]]],[0,null,false,null,899966522959813,[[42,126,null,0,false,false,true,476265351964623,false,[[0,[23,"UID"]]]]],[[42,82,null,533717445989646,false,[[10,2],[7,[0,1]]]],[42,156,null,520478777224339,false,[[3,1]]],[38,156,null,896204914481771,false,[[3,1]]],[40,156,null,967856229726762,false,[[3,1]]],[34,156,null,342588685006876,false,[[3,1]]],[36,156,null,827069188194492,false,[[3,1]]],[41,156,null,604237736167475,false,[[3,1]]],[39,156,null,842731416358022,false,[[3,1]]],[37,156,null,258261400934643,false,[[3,1]]],[35,156,null,978663955444557,false,[[3,1]]],[33,156,null,581051287480842,false,[[3,1]]],[32,156,null,511650866812460,false,[[3,1]]]]]]],[0,null,false,null,423936173939520,[[0,169,null,2,false,false,false,161402772590571,false,[[1,[2,"Player > Update Controls"]]]],[42,77,null,0,false,true,false,919950137978691,false,[[10,16]]]],[],[[0,null,false,null,471899662998867,[],[[-1,101,null,149714195771140,false,[[11,"Inverted"],[7,[0,0]]]]],[[0,null,false,null,760434055072290,[[-1,221,null,0,false,false,false,137757818750170,false,[[0,[22,42,"Platform",173,false,null]],[0,[0,181]],[0,[0,359]]]]],[[-1,101,null,653127214837167,false,[[11,"Inverted"],[7,[0,1]]]]]]]]]]]],[0,[true,"Player > Animations"],false,null,281099492903291,[[-1,72,null,0,false,false,false,281099492903291,false,[[1,[2,"Player > Animations"]]]]],[],[[0,null,false,null,271150416590545,[[-1,117,null,0,true,false,false,470551344768546,false,[[4,42]]]],[],[[0,null,false,null,400283323424766,[[42,73,null,0,false,false,false,342223258668987,false,[[10,0],[8,0],[7,[2,"idle"]]]]],[[32,120,null,635775977241362,false,[[0,[20,42,164,false,null,[[0,2]]]],[0,[20,42,165,false,null,[[0,2]]]]]],[32,123,null,270612262898026,false,[[0,[19,225,[[20,32,87,false,null],[20,42,87,false,null],[6,[6,[1,0.2],[19,79]],[0,60]]]]]]]],[[0,null,false,null,690285446819830,[],[[33,259,null,349744207916067,false,[[4,32],[7,[2,"Head"]]]],[33,123,null,850879159254308,false,[[0,[19,225,[[20,33,87,false,null],[20,32,87,false,null],[6,[6,[1,0.2],[19,79]],[0,60]]]]]]]]],[0,null,false,null,871273679678469,[],[[34,259,null,147449485136856,false,[[4,32],[7,[2,"LeftA"]]]],[34,123,null,405281745083498,false,[[0,[19,225,[[20,34,87,false,null],[20,32,87,false,null],[6,[6,[1,0.2],[19,79]],[0,60]]]]]]]],[[0,null,false,null,361686910422164,[],[[36,259,null,547444547996008,false,[[4,34],[7,[0,1]]]],[36,123,null,330943956852297,false,[[0,[19,225,[[20,36,87,false,null],[20,34,87,false,null],[6,[6,[1,0.2],[19,79]],[0,60]]]]]]]]]]],[0,null,false,null,483495424085668,[],[[38,259,null,613544955559107,false,[[4,32],[7,[2,"RightA"]]]],[38,123,null,905798844555936,false,[[0,[19,225,[[20,38,87,false,null],[20,32,87,false,null],[6,[6,[1,0.2],[19,79]],[0,60]]]]]]]],[[0,null,false,null,317406717265707,[],[[40,259,null,282184550657003,false,[[4,38],[7,[0,1]]]],[40,123,null,706774377998064,false,[[0,[19,225,[[20,40,87,false,null],[20,38,87,false,null],[6,[6,[1,0.2],[19,79]],[0,60]]]]]]]]]]],[0,null,false,null,370093733085246,[],[[37,259,null,362916160703906,false,[[4,32],[7,[2,"LeftL"]]]],[37,123,null,965006232035947,false,[[0,[19,225,[[20,37,87,false,null],[20,32,87,false,null],[6,[6,[1,0.2],[19,79]],[0,60]]]]]]]],[[0,null,false,null,188199813232892,[],[[35,259,null,382845654783847,false,[[4,37],[7,[0,1]]]],[35,123,null,953533920754343,false,[[0,[19,225,[[20,35,87,false,null],[20,37,87,false,null],[6,[6,[1,0.2],[19,79]],[0,60]]]]]]]]]]],[0,null,false,null,569930363813218,[],[[41,259,null,225138866018364,false,[[4,32],[7,[2,"RightL"]]]],[41,123,null,834887088989131,false,[[0,[19,225,[[20,41,87,false,null],[20,32,87,false,null],[6,[6,[1,0.2],[19,79]],[0,60]]]]]]]],[[0,null,false,null,920268353481039,[],[[39,259,null,762780972140463,false,[[4,41],[7,[0,1]]]],[39,123,null,548442102604359,false,[[0,[19,225,[[20,39,87,false,null],[20,41,87,false,null],[6,[6,[1,0.2],[19,79]],[0,60]]]]]]]]]]]]],[0,null,false,null,409921586480001,[[-1,75,null,0,false,false,false,429049799024204,false],[42,73,null,0,false,false,false,620441225373352,false,[[10,0],[8,0],[7,[2,"wavedash"]]]]],[[32,120,null,370514849483233,false,[[0,[20,42,164,false,null,[[0,2]]]],[0,[4,[20,42,165,false,null,[[0,2]]],[0,8]]]]],[32,123,null,267182862554413,false,[[0,[19,225,[[20,32,87,false,null],[4,[20,42,87,false,null],[6,[0,8],[21,42,false,null,2]]],[6,[6,[1,0.2],[19,79]],[0,60]]]]]]]],[[0,null,false,null,591394898564113,[],[[33,259,null,196219383765407,false,[[4,32],[7,[2,"Head"]]]],[33,123,null,858418823503704,false,[[0,[19,225,[[20,33,87,false,null],[20,32,87,false,null],[6,[6,[1,0.2],[19,79]],[0,60]]]]]]]]],[0,null,false,null,995753561607330,[],[[34,259,null,267907588574320,false,[[4,32],[7,[2,"LeftA"]]]],[34,123,null,462734126580891,false,[[0,[19,225,[[20,34,87,false,null],[4,[20,32,87,false,null],[6,[21,42,false,null,2],[0,60]]],[6,[6,[1,0.5],[19,79]],[0,60]]]]]]]],[[0,null,false,null,473580263618676,[],[[36,259,null,275684176097516,false,[[4,34],[7,[0,1]]]],[36,123,null,604253874218871,false,[[0,[19,225,[[20,36,87,false,null],[5,[20,34,87,false,null],[6,[21,42,false,null,2],[0,20]]],[6,[6,[1,0.5],[19,79]],[0,60]]]]]]]]]]],[0,null,false,null,790123449053005,[],[[38,259,null,117022293005609,false,[[4,32],[7,[2,"RightA"]]]],[38,123,null,841655977113541,false,[[0,[19,225,[[20,38,87,false,null],[5,[20,32,87,false,null],[6,[21,42,false,null,2],[0,60]]],[6,[6,[1,0.5],[19,79]],[0,60]]]]]]]],[[0,null,false,null,519432241409002,[],[[40,259,null,411241807619854,false,[[4,38],[7,[0,1]]]],[40,123,null,225107398343598,false,[[0,[19,225,[[20,40,87,false,null],[4,[20,38,87,false,null],[6,[21,42,false,null,2],[0,20]]],[6,[6,[1,0.5],[19,79]],[0,60]]]]]]]]]]],[0,null,false,null,459444140618960,[],[[37,259,null,612459705119984,false,[[4,32],[7,[2,"LeftL"]]]],[37,123,null,205675625489051,false,[[0,[19,225,[[20,37,87,false,null],[20,32,87,false,null],[6,[6,[1,0.5],[19,79]],[0,60]]]]]]]],[[0,null,false,null,795512808381698,[],[[35,259,null,691863066858387,false,[[4,37],[7,[0,1]]]],[35,123,null,557875567370509,false,[[0,[19,225,[[20,35,87,false,null],[4,[20,37,87,false,null],[6,[21,42,false,null,2],[0,90]]],[6,[6,[1,0.5],[19,79]],[0,60]]]]]]]]]]],[0,null,false,null,574758102302731,[],[[41,259,null,608499501709325,false,[[4,32],[7,[2,"RightL"]]]],[41,123,null,961598052048020,false,[[0,[19,225,[[20,41,87,false,null],[5,[20,32,87,false,null],[6,[0,90],[21,42,false,null,2]]],[6,[6,[1,0.5],[19,79]],[0,60]]]]]]]],[[0,null,false,null,878546035813959,[],[[39,259,null,475644031999416,false,[[4,41],[7,[0,1]]]],[39,123,null,503132110484926,false,[[0,[19,225,[[20,39,87,false,null],[4,[20,41,87,false,null],[6,[21,42,false,null,2],[0,90]]],[6,[6,[1,0.5],[19,79]],[0,60]]]]]]]]]]]]],[0,null,false,null,704391860344931,[[-1,75,null,0,false,false,false,499599308673535,false],[42,73,null,0,false,false,false,238935790257649,false,[[10,0],[8,0],[7,[2,"wall"]]]]],[[32,120,null,830288499986627,false,[[0,[20,42,164,false,null,[[0,2]]]],[0,[20,42,165,false,null,[[0,2]]]]]],[32,123,null,919806162383114,false,[[0,[19,225,[[20,32,87,false,null],[20,42,87,false,null],[6,[6,[1,0.2],[19,79]],[0,60]]]]]]]],[[0,null,false,null,398950777399584,[],[[33,259,null,429074367969996,false,[[4,32],[7,[2,"Head"]]]],[33,123,null,756873938334439,false,[[0,[19,225,[[20,33,87,false,null],[20,32,87,false,null],[6,[6,[1,0.2],[19,79]],[0,60]]]]]]]]],[0,null,false,null,649200545671635,[],[[34,259,null,332681362252185,false,[[4,32],[7,[2,"LeftA"]]]],[34,123,null,482605585166411,false,[[0,[19,225,[[20,34,87,false,null],[4,[6,[21,42,false,null,2],[0,280]],[20,32,87,false,null]],[6,[6,[1,0.1],[19,79]],[0,60]]]]]]]],[[0,null,false,null,599893776760867,[],[[36,259,null,645824020362736,false,[[4,34],[7,[0,1]]]],[36,123,null,211103961598518,false,[[0,[5,[20,34,87,false,null],[6,[21,42,false,null,2],[0,20]]]]]]]]]],[0,null,false,null,849177307725659,[],[[38,259,null,185809533263371,false,[[4,32],[7,[2,"RightA"]]]],[38,123,null,800705218960245,false,[[0,[19,225,[[20,38,87,false,null],[4,[6,[21,42,false,null,2],[0,280]],[20,32,87,false,null]],[6,[6,[1,0.1],[19,79]],[0,60]]]]]]]],[[0,null,false,null,446214125424953,[],[[40,259,null,903847237814460,false,[[4,38],[7,[0,1]]]],[40,123,null,208766962890608,false,[[0,[5,[20,38,87,false,null],[6,[21,42,false,null,2],[0,20]]]]]]]]]],[0,null,false,null,824990985629429,[],[[37,259,null,773788877182559,false,[[4,32],[7,[2,"LeftL"]]]],[37,123,null,615308237169774,false,[[0,[19,225,[[20,37,87,false,null],[20,32,87,false,null],[6,[6,[1,0.2],[19,79]],[0,60]]]]]]]],[[0,null,false,null,955913269158021,[],[[35,259,null,169148096175391,false,[[4,37],[7,[0,1]]]],[35,123,null,848786421442564,false,[[0,[19,225,[[20,35,87,false,null],[20,37,87,false,null],[6,[6,[1,0.2],[19,79]],[0,60]]]]]]]]]]],[0,null,false,null,640157826639388,[],[[41,259,null,372211920033240,false,[[4,32],[7,[2,"RightL"]]]],[41,123,null,851355176634165,false,[[0,[19,225,[[20,41,87,false,null],[20,32,87,false,null],[6,[6,[1,0.2],[19,79]],[0,60]]]]]]]],[[0,null,false,null,917177020090468,[],[[39,259,null,672110137367149,false,[[4,41],[7,[0,1]]]],[39,123,null,387282175047144,false,[[0,[19,225,[[20,39,87,false,null],[20,41,87,false,null],[6,[6,[1,0.2],[19,79]],[0,60]]]]]]]]]]]]],[0,null,false,null,519360248922449,[[-1,75,null,0,false,false,false,774745917004406,false],[42,73,null,0,false,false,false,652839155009778,false,[[10,0],[8,0],[7,[2,"triplejump"]]]]],[[32,120,null,927301148635358,false,[[0,[20,42,164,false,null,[[0,2]]]],[0,[20,42,165,false,null,[[0,2]]]]]],[32,123,null,297038533296147,false,[[0,[19,225,[[20,32,87,false,null],[4,[20,42,87,false,null],[6,[0,10],[21,42,false,null,2]]],[6,[6,[1,0.2],[19,79]],[0,60]]]]]]]],[[0,null,false,null,558789907473289,[],[[33,259,null,896727002448220,false,[[4,32],[7,[2,"Head"]]]],[33,123,null,994779233703890,false,[[0,[19,225,[[20,33,87,false,null],[5,[20,32,87,false,null],[6,[0,10],[21,42,false,null,2]]],[6,[6,[1,0.2],[19,79]],[0,60]]]]]]]]],[0,null,false,null,349795009629075,[],[[34,259,null,850215995308625,false,[[4,32],[7,[2,"LeftA"]]]],[34,123,null,644205236063115,false,[[0,[19,225,[[20,34,87,false,null],[4,[4,[6,[21,42,false,null,2],[0,70]],[6,[19,86,[[6,[19,212],[0,300]]]],[0,5]]],[20,32,87,false,null]],[6,[6,[1,0.2],[19,79]],[0,60]]]]]]]],[[0,null,false,null,590404812423902,[],[[36,259,null,516147306777094,false,[[4,34],[7,[0,1]]]],[36,123,null,172968527613103,false,[[0,[5,[20,34,87,false,null],[6,[21,42,false,null,2],[0,20]]]]]]]]]],[0,null,false,null,730875501588257,[],[[38,259,null,266145014477405,false,[[4,32],[7,[2,"RightA"]]]],[38,123,null,871306793804156,false,[[0,[19,225,[[20,38,87,false,null],[4,[4,[6,[21,42,false,null,2],[0,350]],[6,[19,86,[[6,[19,212],[0,300]]]],[0,5]]],[20,32,87,false,null]],[6,[6,[1,0.2],[19,79]],[0,60]]]]]]]],[[0,null,false,null,324090833426985,[],[[40,259,null,246012712459969,false,[[4,38],[7,[0,1]]]],[40,123,null,526694927843118,false,[[0,[5,[20,38,87,false,null],[6,[21,42,false,null,2],[0,20]]]]]]]]]],[0,null,false,null,444047629234086,[],[[37,259,null,304299215123832,false,[[4,32],[7,[2,"LeftL"]]]],[37,123,null,702944530319980,false,[[0,[19,225,[[20,37,87,false,null],[4,[4,[20,32,87,false,null],[6,[19,90,[[6,[19,212],[0,100]]]],[0,5]]],[6,[0,30],[21,42,false,null,2]]],[6,[6,[1,0.2],[19,79]],[0,60]]]]]]]],[[0,null,false,null,733225494052375,[],[[35,259,null,254221117768342,false,[[4,37],[7,[0,1]]]],[35,123,null,772195326365903,false,[[0,[19,225,[[20,35,87,false,null],[4,[4,[20,37,87,false,null],[6,[19,90,[[6,[19,212],[0,80]]]],[0,20]]],[6,[0,30],[21,42,false,null,2]]],[6,[6,[1,0.2],[19,79]],[0,60]]]]]]]]]]],[0,null,false,null,294084692841568,[],[[41,259,null,413097302185336,false,[[4,32],[7,[2,"RightL"]]]],[41,123,null,296635603716766,false,[[0,[19,225,[[20,41,87,false,null],[5,[4,[20,32,87,false,null],[6,[19,90,[[6,[19,212],[0,100]]]],[0,5]]],[6,[0,10],[21,42,false,null,2]]],[6,[6,[1,0.2],[19,79]],[0,60]]]]]]]],[[0,null,false,null,191476708987044,[],[[39,259,null,156922459302373,false,[[4,41],[7,[0,1]]]],[39,123,null,989427999649175,false,[[0,[19,225,[[20,39,87,false,null],[4,[4,[20,41,87,false,null],[6,[19,90,[[6,[19,212],[0,80]]]],[0,20]]],[6,[0,20],[21,42,false,null,2]]],[6,[6,[1,0.2],[19,79]],[0,60]]]]]]]]]]]]],[0,null,false,null,928649569913105,[[-1,75,null,0,false,false,false,315531332164941,false],[42,73,null,0,false,false,false,987568968501156,false,[[10,0],[8,0],[7,[2,"dancing"]]]]],[[32,120,null,219216073735260,false,[[0,[20,42,164,false,null,[[0,2]]]],[0,[20,42,165,false,null,[[0,2]]]]]],[32,123,null,161237509237044,false,[[0,[4,[6,[21,42,false,null,2],[4,[0,-10],[6,[0,10],[19,86,[[6,[6,[19,212],[0,60]],[0,15]]]]]]],[20,42,87,false,null]]]]]],[[0,null,false,null,498820233595801,[],[[33,259,null,350058085726037,false,[[4,32],[7,[2,"Head"]]]],[33,123,null,416093553672079,false,[[0,[4,[20,32,87,false,null],[6,[21,42,false,null,2],[5,[6,[0,10],[19,90,[[6,[6,[19,212],[0,60]],[0,15]]]]],[0,5]]]]]]]]],[0,null,false,null,452350123367096,[],[[34,259,null,549802426003014,false,[[4,32],[7,[2,"LeftA"]]]],[34,123,null,814522296665565,false,[[0,[4,[18,[12,[21,42,true,null,12],[2,"ada"]],[6,[21,42,false,null,2],[0,160]],[5,[6,[21,42,false,null,2],[0,45]],[6,[0,45],[19,90,[[6,[6,[19,212],[0,60]],[0,8]]]]]]],[20,32,87,false,null]]]]]],[[0,null,false,null,867203230702253,[],[[36,259,null,887460732556076,false,[[4,34],[7,[0,1]]]],[36,123,null,458847808383877,false,[[0,[18,[12,[21,42,true,null,12],[2,"ada"]],[20,34,87,false,null],[5,[5,[20,34,87,false,null],[6,[21,42,false,null,2],[0,90]]],[6,[0,45],[19,90,[[6,[6,[19,212],[0,60]],[0,8]]]]]]]]]]]]]],[0,null,false,null,290207473327906,[],[[38,259,null,896384341403766,false,[[4,32],[7,[2,"RightA"]]]],[38,123,null,684460062083342,false,[[0,[4,[18,[12,[21,42,true,null,12],[2,"ada"]],[6,[21,42,false,null,2],[0,120]],[6,[0,-45],[19,90,[[4,[0,180],[6,[6,[19,212],[0,60]],[0,8]]]]]]],[20,32,87,false,null]]]]]],[[0,null,false,null,446367884115003,[],[[40,259,null,387188070132672,false,[[4,38],[7,[0,1]]]],[40,123,null,499942909209913,false,[[0,[18,[12,[21,42,true,null,12],[2,"ada"]],[20,38,87,false,null],[5,[5,[20,38,87,false,null],[6,[21,42,false,null,2],[0,90]]],[6,[0,45],[19,90,[[4,[0,180],[6,[6,[19,212],[0,60]],[0,8]]]]]]]]]]]]]]],[0,null,false,null,946305659847911,[],[[37,259,null,545193891844284,false,[[4,32],[7,[2,"LeftL"]]]],[37,123,null,988315198816797,false,[[0,[4,[6,[6,[21,42,false,null,2],[0,90]],[19,90,[[6,[6,[19,212],[0,60]],[0,8]]]]],[20,32,87,false,null]]]]]],[[0,null,false,null,652938421628628,[],[[35,259,null,290659025467467,false,[[4,37],[7,[0,1]]]],[35,123,null,799762279249383,false,[[0,[4,[20,37,87,false,null],[6,[21,42,false,null,2],[4,[0,90],[6,[0,90],[19,86,[[6,[6,[19,212],[0,60]],[0,8]]]]]]]]]]]]]]],[0,null,false,null,926578236638095,[],[[41,259,null,807362413541902,false,[[4,32],[7,[2,"RightL"]]]],[41,123,null,845729683144738,false,[[0,[4,[6,[6,[21,42,false,null,2],[0,90]],[19,90,[[4,[0,180],[6,[6,[19,212],[0,60]],[0,8]]]]]],[20,32,87,false,null]]]]]],[[0,null,false,null,229404520767380,[],[[39,259,null,696134787870936,false,[[4,41],[7,[0,1]]]],[39,123,null,435736698561965,false,[[0,[4,[20,41,87,false,null],[6,[21,42,false,null,2],[4,[0,90],[6,[0,90],[19,86,[[4,[0,180],[6,[6,[19,212],[0,60]],[0,8]]]]]]]]]]]]]]]]]],[0,null,false,null,123082174789365,[[-1,75,null,0,false,false,false,741790114580631,false],[42,73,null,0,false,false,false,926219900544475,false,[[10,0],[8,0],[7,[2,"run"]]]]],[[32,120,null,241440156488208,false,[[0,[20,42,164,false,null,[[0,2]]]],[0,[20,42,165,false,null,[[0,2]]]]]],[32,123,null,812938074998150,false,[[0,[4,[6,[21,42,false,null,2],[4,[0,15],[6,[0,5],[19,86,[[6,[6,[19,212],[0,60]],[0,15]]]]]]],[20,42,87,false,null]]]]]],[[0,null,false,null,457412256844100,[],[[33,259,null,798681847208692,false,[[4,32],[7,[2,"Head"]]]],[33,123,null,847322284568749,false,[[0,[4,[20,32,87,false,null],[6,[21,42,false,null,2],[6,[0,10],[19,90,[[6,[6,[19,212],[0,60]],[0,20]]]]]]]]]]]],[0,null,false,null,705557604064165,[],[[34,259,null,395012411735817,false,[[4,32],[7,[2,"LeftA"]]]],[34,123,null,601470312613057,false,[[0,[4,[18,[12,[21,42,true,null,12],[2,"ada"]],[6,[21,42,false,null,2],[0,120]],[5,[6,[21,42,false,null,2],[0,45]],[6,[0,45],[19,90,[[6,[6,[19,212],[0,60]],[0,10]]]]]]],[20,32,87,false,null]]]]]],[[0,null,false,null,563290427769426,[],[[36,259,null,134013286698008,false,[[4,34],[7,[0,1]]]],[36,123,null,458656503677891,false,[[0,[18,[12,[21,42,true,null,12],[2,"ada"]],[20,34,87,false,null],[5,[5,[20,34,87,false,null],[6,[21,42,false,null,2],[0,90]]],[6,[0,45],[19,90,[[6,[6,[19,212],[0,60]],[0,10]]]]]]]]]]]]]],[0,null,false,null,989977822617913,[],[[38,259,null,109145378557549,false,[[4,32],[7,[2,"RightA"]]]],[38,123,null,747437013922934,false,[[0,[4,[18,[12,[21,42,true,null,12],[2,"ada"]],[6,[21,42,false,null,2],[0,120]],[6,[0,-45],[19,90,[[4,[0,180],[6,[6,[19,212],[0,60]],[0,10]]]]]]],[20,32,87,false,null]]]]]],[[0,null,false,null,697393660076718,[],[[40,259,null,336057262611979,false,[[4,38],[7,[0,1]]]],[40,123,null,352981193382501,false,[[0,[18,[12,[21,42,true,null,12],[2,"ada"]],[20,38,87,false,null],[5,[5,[20,38,87,false,null],[6,[21,42,false,null,2],[0,90]]],[6,[0,45],[19,90,[[4,[0,180],[6,[6,[19,212],[0,60]],[0,10]]]]]]]]]]]]]]],[0,null,false,null,404677069394732,[],[[37,259,null,780139456376845,false,[[4,32],[7,[2,"LeftL"]]]],[37,123,null,656460563188321,false,[[0,[4,[6,[6,[21,42,false,null,2],[0,90]],[19,90,[[6,[6,[19,212],[0,60]],[0,10]]]]],[20,32,87,false,null]]]]]],[[0,null,false,null,279530227593761,[],[[35,259,null,346144114822278,false,[[4,37],[7,[0,1]]]],[35,123,null,989766860978645,false,[[0,[4,[20,37,87,false,null],[6,[21,42,false,null,2],[4,[0,90],[6,[0,90],[19,86,[[6,[6,[19,212],[0,60]],[0,10]]]]]]]]]]]]]]],[0,null,false,null,764361981194794,[],[[41,259,null,127907074145687,false,[[4,32],[7,[2,"RightL"]]]],[41,123,null,473432296280576,false,[[0,[4,[6,[6,[21,42,false,null,2],[0,90]],[19,90,[[4,[0,180],[6,[6,[19,212],[0,60]],[0,10]]]]]],[20,32,87,false,null]]]]]],[[0,null,false,null,624643681073891,[],[[39,259,null,180884813587202,false,[[4,41],[7,[0,1]]]],[39,123,null,877170726397700,false,[[0,[4,[20,41,87,false,null],[6,[21,42,false,null,2],[4,[0,90],[6,[0,90],[19,86,[[4,[0,180],[6,[6,[19,212],[0,60]],[0,10]]]]]]]]]]]]]]]]]],[0,null,false,null,660404342933246,[[-1,75,null,0,false,false,false,849231850072140,false],[42,73,null,0,false,false,false,641132449475471,false,[[10,0],[8,0],[7,[2,"jump"]]]]],[[32,120,null,863886691313751,false,[[0,[20,42,164,false,null,[[0,2]]]],[0,[20,42,165,false,null,[[0,2]]]]]],[32,123,null,947027640909739,false,[[0,[19,225,[[20,32,87,false,null],[4,[6,[3,[21,42,false,null,2]],[0,10]],[20,42,87,false,null]],[6,[6,[1,0.05],[19,79]],[0,60]]]]]]]],[[0,null,false,null,580384736587621,[],[[33,259,null,462256664227415,false,[[4,32],[7,[2,"Head"]]]],[33,123,null,691468025979640,false,[[0,[19,225,[[20,33,87,false,null],[5,[20,32,87,false,null],[6,[21,42,false,null,2],[0,20]]],[6,[6,[1,0.05],[19,79]],[0,60]]]]]]]]],[0,null,false,null,823799275262269,[],[[34,259,null,416048549393720,false,[[4,32],[7,[2,"LeftA"]]]],[34,123,null,285982740113223,false,[[0,[19,225,[[20,34,87,false,null],[4,[20,32,87,false,null],[6,[21,42,false,null,2],[0,5]]],[6,[6,[1,0.1],[19,79]],[0,60]]]]]]]],[[0,null,false,null,876863116184903,[],[[36,259,null,508019533668068,false,[[4,34],[7,[0,1]]]],[36,123,null,167200703263832,false,[[0,[5,[20,34,87,false,null],[6,[21,42,false,null,2],[0,20]]]]]]]]]],[0,null,false,null,134911995978562,[],[[38,259,null,145715805452978,false,[[4,32],[7,[2,"RightA"]]]],[38,123,null,200314838627490,false,[[0,[19,225,[[20,38,87,false,null],[4,[20,32,87,false,null],[6,[21,42,false,null,2],[0,280]]],[6,[6,[1,0.1],[19,79]],[0,60]]]]]]]],[[0,null,false,null,537693946573364,[],[[40,259,null,207127573821040,false,[[4,38],[7,[0,1]]]],[40,123,null,725823088987724,false,[[0,[5,[20,38,87,false,null],[6,[21,42,false,null,2],[0,20]]]]]]]]]],[0,null,false,null,741458607229602,[],[[37,259,null,670908312536250,false,[[4,32],[7,[2,"LeftL"]]]],[37,123,null,618523202162777,false,[[0,[19,225,[[20,37,87,false,null],[4,[20,32,87,false,null],[6,[21,42,false,null,2],[0,5]]],[6,[6,[1,0.1],[19,79]],[0,60]]]]]]]],[[0,null,false,null,104281676576475,[],[[35,259,null,516188741088770,false,[[4,37],[7,[0,1]]]],[35,123,null,142951735613576,false,[[0,[4,[20,37,87,false,null],[6,[21,42,false,null,2],[0,30]]]]]]]]]],[0,null,false,null,826789081000474,[],[[41,259,null,837177111107588,false,[[4,32],[7,[2,"RightL"]]]],[41,123,null,786398431760266,false,[[0,[19,225,[[20,41,87,false,null],[4,[20,32,87,false,null],[6,[21,42,false,null,2],[0,280]]],[6,[6,[1,0.1],[19,79]],[0,60]]]]]]]],[[0,null,false,null,968506133270231,[],[[39,259,null,820799053981624,false,[[4,41],[7,[0,1]]]],[39,123,null,750380697686615,false,[[0,[4,[20,41,87,false,null],[6,[21,42,false,null,2],[0,20]]]]]]]]]]]],[0,null,false,null,924283789202538,[[-1,75,null,0,false,false,false,151835039526528,false],[42,73,null,0,false,false,false,314284776416174,false,[[10,0],[8,0],[7,[2,"poundFloor"]]]]],[[32,120,null,832648962911173,false,[[0,[20,42,164,false,null,[[0,2]]]],[0,[20,42,165,false,null,[[0,2]]]]]],[32,123,null,946183405829913,false,[[0,[19,225,[[20,32,87,false,null],[20,42,87,false,null],[6,[6,[1,0.2],[19,79]],[0,60]]]]]]]],[[0,null,false,null,525516252093791,[[-1,102,null,0,false,false,false,331954622842166,false]],[[34,123,null,598711703004936,false,[[0,[4,[20,32,87,false,null],[6,[0,120],[21,42,false,null,2]]]]]],[38,123,null,724053438087828,false,[[0,[5,[20,32,87,false,null],[6,[0,120],[21,42,false,null,2]]]]]],[37,123,null,908851947585349,false,[[0,[5,[20,32,87,false,null],[6,[0,80],[21,42,false,null,2]]]]]],[41,123,null,511177201189443,false,[[0,[5,[20,32,87,false,null],[6,[0,80],[21,42,false,null,2]]]]]],[35,123,null,616057763629306,false,[[0,[4,[20,32,87,false,null],[6,[0,120],[21,42,false,null,2]]]]]],[39,123,null,745102201872089,false,[[0,[4,[20,32,87,false,null],[6,[0,120],[21,42,false,null,2]]]]]]]],[0,null,false,null,822307429020755,[],[[33,259,null,982717046574574,false,[[4,32],[7,[2,"Head"]]]],[33,123,null,179069528400075,false,[[0,[19,225,[[20,33,87,false,null],[20,32,87,false,null],[6,[6,[1,0.2],[19,79]],[0,60]]]]]]]]],[0,null,false,null,163802519643313,[],[[34,259,null,848598139426903,false,[[4,32],[7,[2,"LeftA"]]]],[34,123,null,139643050944861,false,[[0,[19,225,[[20,34,87,false,null],[20,32,87,false,null],[6,[6,[1,0.1],[19,79]],[0,60]]]]]]]],[[0,null,false,null,873111685189892,[],[[36,259,null,834471220639755,false,[[4,34],[7,[0,1]]]],[36,123,null,462981626453760,false,[[0,[19,225,[[20,36,87,false,null],[20,32,87,false,null],[6,[6,[1,0.2],[19,79]],[0,60]]]]]]]]]]],[0,null,false,null,278975274391047,[],[[38,259,null,692965851825913,false,[[4,32],[7,[2,"RightA"]]]],[38,123,null,603151835160381,false,[[0,[19,225,[[20,38,87,false,null],[20,32,87,false,null],[6,[6,[1,0.1],[19,79]],[0,60]]]]]]]],[[0,null,false,null,275941665155628,[],[[40,259,null,502083830999802,false,[[4,38],[7,[0,1]]]],[40,123,null,349065154629598,false,[[0,[19,225,[[20,40,87,false,null],[20,32,87,false,null],[6,[6,[1,0.2],[19,79]],[0,60]]]]]]]]]]],[0,null,false,null,196313489814132,[],[[37,259,null,128111558026983,false,[[4,32],[7,[2,"LeftL"]]]],[37,123,null,449420506385453,false,[[0,[19,225,[[20,37,87,false,null],[20,32,87,false,null],[6,[6,[1,0.1],[19,79]],[0,60]]]]]]]],[[0,null,false,null,865103881676003,[],[[35,259,null,173140533888652,false,[[4,37],[7,[0,1]]]],[35,123,null,368704496991931,false,[[0,[19,225,[[20,35,87,false,null],[20,32,87,false,null],[6,[6,[1,0.1],[19,79]],[0,60]]]]]]]]]]],[0,null,false,null,946262869298217,[],[[41,259,null,164555132536388,false,[[4,32],[7,[2,"RightL"]]]],[41,123,null,665562919250478,false,[[0,[19,225,[[20,41,87,false,null],[20,32,87,false,null],[6,[6,[1,0.1],[19,79]],[0,60]]]]]]]],[[0,null,false,null,466107971468604,[],[[39,259,null,587108778980172,false,[[4,41],[7,[0,1]]]],[39,123,null,702887573743531,false,[[0,[19,225,[[20,39,87,false,null],[20,32,87,false,null],[6,[6,[1,0.1],[19,79]],[0,60]]]]]]]]]]]]],[0,null,false,null,109825265648293,[[-1,75,null,0,false,false,false,142942802819544,false],[42,73,null,0,false,false,false,589294505000831,false,[[10,0],[8,0],[7,[2,"gpjump"]]]]],[[32,120,null,409677865086702,false,[[0,[20,42,164,false,null,[[0,2]]]],[0,[20,42,165,false,null,[[0,2]]]]]],[32,123,null,308905572244608,false,[[0,[19,225,[[20,32,87,false,null],[20,42,87,false,null],[6,[6,[1,0.2],[19,79]],[0,60]]]]]]]],[[0,null,false,null,808363741560107,[],[[33,259,null,523494793229301,false,[[4,32],[7,[2,"Head"]]]],[33,123,null,410031680645732,false,[[0,[19,225,[[20,33,87,false,null],[5,[20,32,87,false,null],[6,[0,30],[21,42,false,null,2]]],[6,[6,[1,0.2],[19,79]],[0,60]]]]]]]]],[0,null,false,null,329845632004907,[],[[34,259,null,508309163821442,false,[[4,32],[7,[2,"LeftA"]]]],[34,123,null,505868057652546,false,[[0,[19,225,[[20,34,87,false,null],[20,32,87,false,null],[6,[6,[1,0.2],[19,79]],[0,60]]]]]]]],[[0,null,false,null,456017505216042,[],[[36,259,null,306650765672361,false,[[4,34],[7,[0,1]]]],[36,123,null,105115234529152,false,[[0,[19,225,[[20,36,87,false,null],[20,34,87,false,null],[6,[6,[1,0.2],[19,79]],[0,60]]]]]]]]]]],[0,null,false,null,544977240303673,[],[[38,259,null,622867771944621,false,[[4,32],[7,[2,"RightA"]]]],[38,123,null,817190219014913,false,[[0,[19,225,[[20,38,87,false,null],[20,32,87,false,null],[6,[6,[1,0.2],[19,79]],[0,60]]]]]]]],[[0,null,false,null,270847551690086,[],[[40,259,null,146001490871796,false,[[4,38],[7,[0,1]]]],[40,123,null,823904425896017,false,[[0,[19,225,[[20,40,87,false,null],[20,38,87,false,null],[6,[6,[1,0.2],[19,79]],[0,60]]]]]]]]]]],[0,null,false,null,559874938538818,[],[[37,259,null,987630549263244,false,[[4,32],[7,[2,"LeftL"]]]],[37,123,null,144252227304526,false,[[0,[19,225,[[20,37,87,false,null],[20,32,87,false,null],[6,[6,[1,0.2],[19,79]],[0,60]]]]]]]],[[0,null,false,null,201982363401811,[],[[35,259,null,733542699003753,false,[[4,37],[7,[0,1]]]],[35,123,null,294625428526288,false,[[0,[19,225,[[20,35,87,false,null],[20,37,87,false,null],[6,[6,[1,0.2],[19,79]],[0,60]]]]]]]]]]],[0,null,false,null,877271632511689,[],[[41,259,null,107252495729902,false,[[4,32],[7,[2,"RightL"]]]],[41,123,null,569039856802960,false,[[0,[19,225,[[20,41,87,false,null],[20,32,87,false,null],[6,[6,[1,0.2],[19,79]],[0,60]]]]]]]],[[0,null,false,null,643348116444515,[],[[39,259,null,895502045217064,false,[[4,41],[7,[0,1]]]],[39,123,null,842944844290311,false,[[0,[19,225,[[20,39,87,false,null],[20,41,87,false,null],[6,[6,[1,0.2],[19,79]],[0,60]]]]]]]]]]]]],[0,null,false,null,718490831058831,[[-1,75,null,0,false,false,false,967722937670416,false],[42,73,null,0,false,false,false,926530646436442,false,[[10,0],[8,0],[7,[2,"fall"]]]]],[[32,120,null,510216136400673,false,[[0,[20,42,164,false,null,[[0,2]]]],[0,[20,42,165,false,null,[[0,2]]]]]],[32,123,null,218871535072432,false,[[0,[19,225,[[20,32,87,false,null],[4,[6,[21,42,false,null,2],[0,10]],[20,42,87,false,null]],[6,[6,[1,0.05],[19,79]],[0,60]]]]]]]],[[0,null,false,null,736178928441611,[],[[33,259,null,606247005168164,false,[[4,32],[7,[2,"Head"]]]],[33,123,null,434455917902193,false,[[0,[19,225,[[20,33,87,false,null],[4,[20,32,87,false,null],[6,[21,42,false,null,2],[0,20]]],[6,[6,[1,0.05],[19,79]],[0,60]]]]]]]]],[0,null,false,null,298229501765110,[],[[34,259,null,185562358324127,false,[[4,32],[7,[2,"LeftA"]]]],[34,123,null,100634850480395,false,[[0,[19,225,[[20,34,87,false,null],[4,[20,32,87,false,null],[6,[21,42,false,null,2],[0,300]]],[6,[6,[1,0.05],[19,79]],[0,60]]]]]]]],[[0,null,false,null,340726230573764,[],[[36,259,null,655704262187348,false,[[4,34],[7,[0,1]]]],[36,123,null,162163802541935,false,[[0,[5,[20,34,87,false,null],[6,[21,42,false,null,2],[0,20]]]]]]]]]],[0,null,false,null,460029678667230,[],[[38,259,null,885944983108098,false,[[4,32],[7,[2,"RightA"]]]],[38,123,null,640995865259255,false,[[0,[19,225,[[20,38,87,false,null],[4,[20,32,87,false,null],[6,[21,42,false,null,2],[0,280]]],[6,[6,[1,0.1],[19,79]],[0,60]]]]]]]],[[0,null,false,null,828106622521073,[],[[40,259,null,399834160366503,false,[[4,38],[7,[0,1]]]],[40,123,null,260514882468700,false,[[0,[5,[20,38,87,false,null],[6,[21,42,false,null,2],[0,20]]]]]]]]]],[0,null,false,null,691432209325245,[],[[37,259,null,874044776330502,false,[[4,32],[7,[2,"LeftL"]]]],[37,123,null,873822017597312,false,[[0,[19,225,[[20,37,87,false,null],[4,[20,32,87,false,null],[6,[21,42,false,null,2],[0,300]]],[6,[6,[1,0.05],[19,79]],[0,60]]]]]]]],[[0,null,false,null,590431261443707,[],[[35,259,null,748392231422005,false,[[4,37],[7,[0,1]]]],[35,123,null,119527643157870,false,[[0,[4,[20,37,87,false,null],[6,[21,42,false,null,2],[0,30]]]]]]]]]],[0,null,false,null,568562188150189,[],[[41,259,null,432487997073285,false,[[4,32],[7,[2,"RightL"]]]],[41,123,null,464310082847434,false,[[0,[19,225,[[20,41,87,false,null],[4,[20,32,87,false,null],[6,[21,42,false,null,2],[0,280]]],[6,[6,[1,0.1],[19,79]],[0,60]]]]]]]],[[0,null,false,null,787216305075849,[],[[39,259,null,925894373853273,false,[[4,41],[7,[0,1]]]],[39,123,null,448105978990906,false,[[0,[4,[20,41,87,false,null],[6,[21,42,false,null,2],[0,20]]]]]]]]]]]],[0,null,false,null,158621298586766,[[-1,75,null,0,false,false,false,681108932903924,false],[42,73,null,0,false,false,false,647373172772948,false,[[10,0],[8,0],[7,[2,"wallslide"]]]]],[[32,120,null,106363014778466,false,[[0,[20,42,164,false,null,[[0,2]]]],[0,[20,42,165,false,null,[[0,2]]]]]],[32,123,null,983682710176785,false,[[0,[19,225,[[20,32,87,false,null],[4,[6,[3,[21,42,false,null,2]],[0,10]],[20,42,87,false,null]],[6,[6,[1,0.05],[19,79]],[0,60]]]]]]]],[[0,null,false,null,910443773109646,[],[[33,259,null,249421409628599,false,[[4,32],[7,[2,"Head"]]]],[33,123,null,424282580757893,false,[[0,[19,225,[[20,33,87,false,null],[6,[3,[21,42,false,null,2]],[0,40]],[6,[6,[1,0.05],[19,79]],[0,60]]]]]]]]],[0,null,false,null,289864298956867,[],[[34,259,null,481327312002731,false,[[4,32],[7,[2,"LeftA"]]]],[34,123,null,803556176482893,false,[[0,[19,225,[[20,34,87,false,null],[6,[21,42,false,null,2],[0,300]],[6,[6,[1,0.05],[19,79]],[0,60]]]]]]]],[[0,null,false,null,574611129117917,[],[[36,259,null,811703493237997,false,[[4,34],[7,[0,1]]]],[36,123,null,885340834631071,false,[[0,[5,[20,34,87,false,null],[6,[21,42,false,null,2],[0,20]]]]]]]]]],[0,null,false,null,222675164964233,[],[[38,259,null,969343453168502,false,[[4,32],[7,[2,"RightA"]]]],[38,123,null,534490917035635,false,[[0,[19,225,[[20,38,87,false,null],[6,[21,42,false,null,2],[0,280]],[6,[6,[1,0.1],[19,79]],[0,60]]]]]]]],[[0,null,false,null,844409980383122,[],[[40,259,null,898190775576339,false,[[4,38],[7,[0,1]]]],[40,123,null,890974079663701,false,[[0,[5,[20,38,87,false,null],[6,[21,42,false,null,2],[0,20]]]]]]]]]],[0,null,false,null,127541756665008,[],[[37,259,null,624104169201521,false,[[4,32],[7,[2,"LeftL"]]]],[37,123,null,875887772355220,false,[[0,[19,225,[[20,37,87,false,null],[6,[21,42,false,null,2],[0,300]],[6,[6,[1,0.05],[19,79]],[0,60]]]]]]]],[[0,null,false,null,983210712208022,[],[[35,259,null,339564649542356,false,[[4,37],[7,[0,1]]]],[35,123,null,925346305785816,false,[[0,[4,[20,37,87,false,null],[6,[21,42,false,null,2],[0,30]]]]]]]]]],[0,null,false,null,374927503472739,[],[[41,259,null,416178556657150,false,[[4,32],[7,[2,"RightL"]]]],[41,123,null,821784691523222,false,[[0,[19,225,[[20,41,87,false,null],[6,[21,42,false,null,2],[0,280]],[6,[6,[1,0.1],[19,79]],[0,60]]]]]]]],[[0,null,false,null,486677508016104,[],[[39,259,null,918979746542348,false,[[4,41],[7,[0,1]]]],[39,123,null,959541279226275,false,[[0,[4,[20,41,87,false,null],[6,[21,42,false,null,2],[0,20]]]]]]]]]]]],[0,null,false,null,797011172446362,[[-1,75,null,0,false,false,false,320185848035333,false],[42,73,null,0,false,false,false,705211780320465,false,[[10,0],[8,0],[7,[2,"slide"]]]]],[[32,120,null,965900154868865,false,[[0,[19,260,[[20,32,121,false,null],[20,42,164,false,null,[[0,2]]],[1,0.5]]]],[0,[19,260,[[20,32,122,false,null],[20,42,165,false,null,[[0,2]]],[1,0.5]]]]]],[32,123,null,350138362905520,false,[[0,[19,225,[[20,32,87,false,null],[4,[6,[21,42,false,null,2],[0,-80]],[20,42,87,false,null]],[6,[6,[1,0.5],[19,79]],[0,60]]]]]]]],[[0,null,false,null,452099705572543,[],[[33,259,null,674884793940459,false,[[4,32],[7,[2,"Head"]]]],[33,123,null,584314522302391,false,[[0,[4,[20,32,87,false,null],[6,[21,42,false,null,2],[4,[6,[0,5],[19,90,[[6,[6,[19,212],[0,60]],[0,10]]]]],[0,45]]]]]]]]],[0,null,false,null,230351738078894,[],[[34,259,null,627091406597528,false,[[4,32],[7,[2,"LeftA"]]]],[34,123,null,916715668067487,false,[[0,[19,225,[[20,34,87,false,null],[5,[5,[20,32,87,false,null],[6,[21,42,false,null,2],[0,10]]],[0,20]],[6,[6,[1,0.5],[19,79]],[0,60]]]]]]]],[[0,null,false,null,412988875342023,[],[[36,259,null,214117665596196,false,[[4,34],[7,[0,1]]]],[36,123,null,468581338720112,false,[[0,[5,[20,34,87,false,null],[6,[21,42,false,null,2],[0,40]]]]]]]]]],[0,null,false,null,622945997152434,[],[[38,259,null,354598650073451,false,[[4,32],[7,[2,"RightA"]]]],[38,123,null,147484677143539,false,[[0,[19,225,[[20,38,87,false,null],[5,[20,32,87,false,null],[6,[21,42,false,null,2],[0,10]]],[6,[6,[1,0.5],[19,79]],[0,60]]]]]]]],[[0,null,false,null,375855903249413,[],[[40,259,null,294485050284307,false,[[4,38],[7,[0,1]]]],[40,123,null,721861964242194,false,[[0,[4,[5,[20,38,87,false,null],[6,[21,42,false,null,2],[0,40]]],[0,10]]]]]]]]],[0,null,false,null,641807547309849,[],[[37,259,null,889269633456671,false,[[4,32],[7,[2,"LeftL"]]]],[37,123,null,152251833570059,false,[[0,[19,225,[[20,37,87,false,null],[4,[20,32,87,false,null],[6,[21,42,false,null,2],[0,-20]]],[6,[6,[1,0.5],[19,79]],[0,60]]]]]]]],[[0,null,false,null,113230452744390,[],[[35,259,null,689545690390658,false,[[4,37],[7,[0,1]]]],[35,123,null,953617617079342,false,[[0,[19,225,[[20,35,87,false,null],[20,37,87,false,null],[6,[6,[1,0.5],[19,79]],[0,60]]]]]]]]]]],[0,null,false,null,425968760761138,[],[[41,259,null,180165111529073,false,[[4,32],[7,[2,"RightL"]]]],[41,123,null,833589771453641,false,[[0,[19,225,[[20,41,87,false,null],[4,[20,32,87,false,null],[6,[21,42,false,null,2],[0,-45]]],[6,[6,[1,0.5],[19,79]],[0,60]]]]]]]],[[0,null,false,null,884155522716281,[],[[39,259,null,547084017750004,false,[[4,41],[7,[0,1]]]],[39,123,null,741546357791539,false,[[0,[19,225,[[20,39,87,false,null],[20,37,87,false,null],[6,[6,[1,0.5],[19,79]],[0,60]]]]]]]]]]]]],[0,null,false,null,560230789983784,[[-1,75,null,0,false,false,false,165773971272169,false],[42,73,null,0,false,false,false,555577047697985,false,[[10,0],[8,0],[7,[2,"plunge"]]]]],[[32,120,null,982598640687238,false,[[0,[19,260,[[20,32,121,false,null],[20,42,164,false,null,[[0,2]]],[1,0.5]]]],[0,[19,260,[[20,32,122,false,null],[20,42,165,false,null,[[0,2]]],[1,0.5]]]]]],[32,123,null,270522250400175,false,[[0,[4,[19,225,[[5,[20,32,87,false,null],[20,42,87,false,null]],[6,[21,42,false,null,2],[0,120]],[6,[6,[1,0.05],[19,79]],[0,60]]]],[20,42,87,false,null]]]]]],[[0,null,false,null,777186373987663,[],[[33,259,null,251695972199851,false,[[4,32],[7,[2,"Head"]]]],[33,123,null,585997812925332,false,[[0,[19,225,[[20,33,87,false,null],[5,[20,32,87,false,null],[6,[21,42,false,null,2],[4,[6,[0,5],[19,90,[[6,[6,[19,212],[0,60]],[0,10]]]]],[0,50]]]],[1,0.3]]]]]]]],[0,null,false,null,261923917589314,[],[[34,259,null,729315455007081,false,[[4,32],[7,[2,"LeftA"]]]],[34,123,null,762454381877571,false,[[0,[19,225,[[20,34,87,false,null],[5,[3,[20,32,87,false,null]],[6,[21,42,false,null,2],[0,10]]],[6,[6,[1,0.5],[19,79]],[0,60]]]]]]]],[[0,null,false,null,760532483101612,[],[[36,259,null,998365325744448,false,[[4,34],[7,[0,1]]]],[36,123,null,573412635075903,false,[[0,[5,[20,34,87,false,null],[6,[21,42,false,null,2],[0,20]]]]]]]]]],[0,null,false,null,443573432275028,[],[[38,259,null,681273668128491,false,[[4,32],[7,[2,"RightA"]]]],[38,123,null,648020718046055,false,[[0,[19,225,[[20,38,87,false,null],[5,[3,[20,32,87,false,null]],[6,[21,42,false,null,2],[0,10]]],[6,[6,[1,0.5],[19,79]],[0,60]]]]]]]],[[0,null,false,null,315174080475684,[],[[40,259,null,477763009038556,false,[[4,38],[7,[0,1]]]],[40,123,null,573285306710692,false,[[0,[5,[20,38,87,false,null],[6,[21,42,false,null,2],[0,20]]]]]]]]]],[0,null,false,null,952274779924951,[],[[37,259,null,782479536237459,false,[[4,32],[7,[2,"LeftL"]]]],[37,123,null,614316029924900,false,[[0,[19,225,[[20,37,87,false,null],[6,[21,42,false,null,2],[0,90]],[6,[6,[1,0.1],[19,79]],[0,60]]]]]]]],[[0,null,false,null,285608983326525,[],[[35,259,null,667926907350811,false,[[4,37],[7,[0,1]]]],[35,123,null,524923158664586,false,[[0,[19,225,[[20,35,87,false,null],[4,[20,37,87,false,null],[6,[21,42,false,null,2],[0,30]]],[6,[6,[1,0.5],[19,79]],[0,60]]]]]]]]]]],[0,null,false,null,905894091630642,[],[[41,259,null,596832538177922,false,[[4,32],[7,[2,"RightL"]]]],[41,123,null,496310678595824,false,[[0,[19,225,[[20,41,87,false,null],[6,[21,42,false,null,2],[0,90]],[6,[6,[1,0.1],[19,79]],[0,60]]]]]]]],[[0,null,false,null,152804026858008,[],[[39,259,null,302133948188714,false,[[4,41],[7,[0,1]]]],[39,123,null,346467058224187,false,[[0,[19,225,[[20,39,87,false,null],[4,[20,41,87,false,null],[6,[21,42,false,null,2],[0,30]]],[6,[6,[1,0.5],[19,79]],[0,60]]]]]]]]]]]]],[0,null,false,null,885524000806879,[[-1,75,null,0,false,false,false,964960531061976,false],[42,73,null,0,false,false,false,184129519527351,false,[[10,0],[8,0],[7,[2,"slip"]]]]],[[32,120,null,684436210581139,false,[[0,[19,260,[[20,32,121,false,null],[20,42,164,false,null,[[0,2]]],[1,0.5]]]],[0,[19,260,[[20,32,122,false,null],[20,42,165,false,null,[[0,2]]],[1,0.5]]]]]],[32,123,null,485455299858459,false,[[0,[19,225,[[20,32,87,false,null],[4,[6,[21,42,false,null,2],[0,120]],[20,42,87,false,null]],[6,[6,[1,0.05],[19,79]],[0,60]]]]]]]],[[0,null,false,null,543753160811216,[],[[33,259,null,169867265708571,false,[[4,32],[7,[2,"Head"]]]],[33,123,null,851888610466566,false,[[0,[19,225,[[20,33,87,false,null],[5,[20,32,87,false,null],[6,[21,42,false,null,2],[4,[6,[0,5],[19,90,[[6,[6,[19,212],[0,60]],[0,10]]]]],[0,50]]]],[1,0.3]]]]]]]],[0,null,false,null,927256565631695,[],[[34,259,null,310621179044501,false,[[4,32],[7,[2,"LeftA"]]]],[34,123,null,687508228725778,false,[[0,[19,225,[[20,34,87,false,null],[5,[3,[20,32,87,false,null]],[6,[21,42,false,null,2],[0,10]]],[6,[6,[1,0.5],[19,79]],[0,60]]]]]]]],[[0,null,false,null,573869846346369,[],[[36,259,null,794470080088844,false,[[4,34],[7,[0,1]]]],[36,123,null,370164132629501,false,[[0,[5,[20,34,87,false,null],[6,[21,42,false,null,2],[0,20]]]]]]]]]],[0,null,false,null,933860058721648,[],[[38,259,null,847455816331875,false,[[4,32],[7,[2,"RightA"]]]],[38,123,null,973743421595233,false,[[0,[19,225,[[20,38,87,false,null],[5,[3,[20,32,87,false,null]],[6,[21,42,false,null,2],[0,10]]],[6,[6,[1,0.5],[19,79]],[0,60]]]]]]]],[[0,null,false,null,480420785390290,[],[[40,259,null,444772196320492,false,[[4,38],[7,[0,1]]]],[40,123,null,326162983274651,false,[[0,[5,[20,38,87,false,null],[6,[21,42,false,null,2],[0,20]]]]]]]]]],[0,null,false,null,297608394206365,[],[[37,259,null,940602664322417,false,[[4,32],[7,[2,"LeftL"]]]],[37,123,null,751963634329965,false,[[0,[19,225,[[20,37,87,false,null],[4,[4,[0,-90],[20,32,87,false,null]],[6,[21,42,false,null,2],[0,120]]],[6,[6,[1,0.1],[19,79]],[0,60]]]]]]]],[[0,null,false,null,229497414658507,[],[[35,259,null,728545684994814,false,[[4,37],[7,[0,1]]]],[35,123,null,357313859656692,false,[[0,[19,225,[[20,35,87,false,null],[4,[20,37,87,false,null],[6,[21,42,false,null,2],[0,30]]],[6,[6,[1,0.5],[19,79]],[0,60]]]]]]]]]]],[0,null,false,null,418183933766525,[],[[41,259,null,241372299274285,false,[[4,32],[7,[2,"RightL"]]]],[41,123,null,857129344361720,false,[[0,[19,225,[[20,41,87,false,null],[4,[4,[0,-90],[20,32,87,false,null]],[6,[21,42,false,null,2],[0,120]]],[6,[6,[1,0.1],[19,79]],[0,60]]]]]]]],[[0,null,false,null,719114194525291,[],[[39,259,null,158783658452152,false,[[4,41],[7,[0,1]]]],[39,123,null,238213601316181,false,[[0,[19,225,[[20,39,87,false,null],[4,[20,41,87,false,null],[6,[21,42,false,null,2],[0,30]]],[6,[6,[1,0.5],[19,79]],[0,60]]]]]]]]]]]]],[0,null,false,null,772670248561297,[[-1,75,null,0,false,false,false,709539542832816,false],[42,73,null,0,false,false,false,365141754546206,false,[[10,0],[8,0],[7,[2,"pound"]]]]],[[32,120,null,832431798934197,false,[[0,[20,42,164,false,null,[[0,2]]]],[0,[20,42,165,false,null,[[0,2]]]]]],[32,123,null,158425096882504,false,[[0,[19,225,[[20,32,87,false,null],[20,42,87,false,null],[6,[6,[1,0.2],[19,79]],[0,60]]]]]]]],[[0,null,false,null,613124111763767,[],[[33,259,null,706126574049328,false,[[4,32],[7,[2,"Head"]]]],[33,123,null,439349822242414,false,[[0,[19,225,[[20,33,87,false,null],[20,32,87,false,null],[6,[6,[1,0.2],[19,79]],[0,60]]]]]]]]],[0,null,false,null,796615826423381,[],[[34,259,null,617328171036274,false,[[4,32],[7,[2,"LeftA"]]]],[34,123,null,131097606668013,false,[[0,[19,225,[[20,34,87,false,null],[6,[21,42,false,null,2],[4,[0,150],[20,32,87,false,null]]],[6,[6,[1,0.2],[19,79]],[0,60]]]]]]]],[[0,null,false,null,270134629527092,[],[[36,259,null,527412552503942,false,[[4,34],[7,[0,1]]]],[36,123,null,103510095836198,false,[[0,[19,225,[[20,36,87,false,null],[20,34,87,false,null],[6,[6,[1,0.2],[19,79]],[0,60]]]]]]]]]]],[0,null,false,null,559265325439389,[],[[38,259,null,731610049423423,false,[[4,32],[7,[2,"RightA"]]]],[38,123,null,987889789337158,false,[[0,[19,225,[[20,38,87,false,null],[6,[3,[21,42,false,null,2]],[4,[0,150],[20,42,87,false,null]]],[6,[6,[1,0.2],[19,79]],[0,60]]]]]]]],[[0,null,false,null,366030643504950,[],[[40,259,null,715679440230903,false,[[4,38],[7,[0,1]]]],[40,123,null,835681993985181,false,[[0,[19,225,[[20,40,87,false,null],[20,38,87,false,null],[6,[6,[1,0.2],[19,79]],[0,60]]]]]]]]]]],[0,null,false,null,890730553224887,[],[[37,259,null,613560969727077,false,[[4,32],[7,[2,"LeftL"]]]],[37,123,null,834804505098734,false,[[0,[19,225,[[20,37,87,false,null],[20,32,87,false,null],[6,[6,[1,0.2],[19,79]],[0,60]]]]]]]],[[0,null,false,null,331097886682098,[],[[35,259,null,521664217071270,false,[[4,37],[7,[0,1]]]],[35,123,null,684465681213046,false,[[0,[19,225,[[20,35,87,false,null],[20,37,87,false,null],[6,[6,[1,0.2],[19,79]],[0,60]]]]]]]]]]],[0,null,false,null,410895001800901,[],[[41,259,null,784143983964115,false,[[4,32],[7,[2,"RightL"]]]],[41,123,null,480301015823748,false,[[0,[19,225,[[20,41,87,false,null],[20,32,87,false,null],[6,[6,[1,0.2],[19,79]],[0,60]]]]]]]],[[0,null,false,null,488235468194618,[],[[39,259,null,490201850365663,false,[[4,41],[7,[0,1]]]],[39,123,null,299678911691998,false,[[0,[19,225,[[20,39,87,false,null],[20,41,87,false,null],[6,[6,[1,0.2],[19,79]],[0,60]]]]]]]]]]]]],[0,null,false,null,783154020797196,[[-1,75,null,0,false,false,false,442150087678287,false],[42,73,null,0,false,false,false,445920138321311,false,[[10,0],[8,0],[7,[2,"stun"]]]]],[[32,120,null,293094769439962,false,[[0,[19,260,[[20,32,121,false,null],[5,[20,42,121,false,null],[6,[19,86,[[20,42,87,false,null]]],[5,[5,[7,[20,42,187,false,null],[0,2]],[7,[20,32,187,false,null],[0,2]]],[0,2]]]],[1,0.5]]]],[0,[19,260,[[20,32,122,false,null],[4,[20,42,122,false,null],[6,[19,90,[[20,42,87,false,null]]],[5,[5,[7,[20,42,187,false,null],[0,2]],[7,[20,32,187,false,null],[0,2]]],[0,2]]]],[1,0.5]]]]]],[32,123,null,467612776769788,false,[[0,[19,225,[[20,32,87,false,null],[4,[6,[21,42,false,null,2],[0,40]],[20,42,87,false,null]],[6,[6,[1,0.1],[19,79]],[0,60]]]]]]]],[[0,null,false,null,511086827797398,[],[[33,259,null,250493608329979,false,[[4,32],[7,[2,"Head"]]]],[33,123,null,457263995972026,false,[[0,[4,[19,225,[[20,33,87,false,null],[20,32,87,false,null],[1,0.5]]],[6,[19,86,[[6,[6,[19,212],[0,60]],[0,30]]]],[0,5]]]]]]]],[0,null,false,null,815651032485489,[],[[34,259,null,946961550273885,false,[[4,32],[7,[2,"LeftA"]]]],[34,123,null,241405845180210,false,[[0,[19,225,[[20,34,87,false,null],[5,[20,32,87,false,null],[6,[21,42,false,null,2],[0,25]]],[6,[6,[1,0.1],[19,79]],[0,60]]]]]]]],[[0,null,false,null,731798570517196,[],[[36,259,null,199676224501250,false,[[4,34],[7,[0,1]]]],[36,123,null,295398128339594,false,[[0,[4,[20,34,87,false,null],[6,[21,42,false,null,2],[0,20]]]]]]]]]],[0,null,false,null,898525608563431,[],[[38,259,null,303869182517301,false,[[4,32],[7,[2,"RightA"]]]],[38,123,null,678396343113151,false,[[0,[19,225,[[20,38,87,false,null],[5,[20,32,87,false,null],[6,[21,42,false,null,2],[0,25]]],[6,[6,[1,0.1],[19,79]],[0,60]]]]]]]],[[0,null,false,null,159417756905494,[],[[40,259,null,766706276318753,false,[[4,38],[7,[0,1]]]],[40,123,null,656834094960006,false,[[0,[4,[20,38,87,false,null],[6,[21,42,false,null,2],[0,20]]]]]]]]]],[0,null,false,null,199350187051188,[],[[37,259,null,512838495312991,false,[[4,32],[7,[2,"LeftL"]]]],[37,123,null,862529847070480,false,[[0,[19,225,[[20,37,87,false,null],[4,[20,32,87,false,null],[6,[21,42,false,null,2],[0,45]]],[6,[6,[1,0.2],[19,79]],[0,60]]]]]]],[37,156,null,856333962075852,false,[[3,1]]]],[[0,null,false,null,548402658284269,[],[[35,259,null,491484778722009,false,[[4,37],[7,[0,1]]]],[35,123,null,836687335836799,false,[[0,[19,225,[[20,35,87,false,null],[20,37,87,false,null],[6,[6,[1,0.5],[19,79]],[0,60]]]]]]],[35,156,null,568230267867674,false,[[3,1]]]]]]],[0,null,false,null,691253482384689,[],[[41,259,null,931121508871582,false,[[4,32],[7,[2,"RightL"]]]],[41,123,null,367251283023927,false,[[0,[19,225,[[20,41,87,false,null],[4,[20,32,87,false,null],[6,[21,42,false,null,2],[0,90]]],[6,[6,[1,0.2],[19,79]],[0,60]]]]]]]],[[0,null,false,null,387093449003316,[],[[39,259,null,858850616350491,false,[[4,41],[7,[0,1]]]],[39,123,null,569471125223467,false,[[0,[19,225,[[20,39,87,false,null],[5,[20,41,87,false,null],[6,[21,42,false,null,2],[0,45]]],[6,[6,[1,0.5],[19,79]],[0,60]]]]]]]]]]]]]]],[0,null,false,null,249139340128283,[[42,73,null,0,false,false,false,255244345264867,false,[[10,12],[8,0],[7,[2,"amongus"]]]]],[],[[0,null,true,null,123698489614617,[[-1,127,null,0,false,false,false,960628708565588,false,[[7,[19,189,[[19,104],[2,"Level"]]]],[8,1],[7,[0,-1]]]],[-1,127,null,0,false,false,false,974019525762601,false,[[7,[19,104]],[8,0],[7,[2,"Skins Menu"]]]]],[],[[0,null,false,null,892750009357648,[[-1,146,null,0,false,false,false,754183138506790,false]],[[32,261,null,739738474633515,false,[[0,[19,260,[[20,32,187,false,null],[20,32,188,false,null],[6,[6,[1,0.2],[19,79]],[0,60]]]]]]]]],[0,null,false,null,312478966841914,[[42,206,"Platform",1,false,false,false,752934770959967,false]],[[32,261,null,223732160997857,false,[[0,[6,[20,32,188,false,null],[0,2]]]]]]],[0,null,false,null,835615324556248,[[42,250,"Platform",1,false,false,false,649641904699920,false]],[[32,261,null,549122920596055,false,[[0,[6,[20,32,188,false,null],[1,0.6]]]]]]]]]]]]]]]]],["Levels",[[2,"Save",false],[2,"Player",false],[2,"Gameplay",false],[0,null,false,null,262908404654682,[[-1,98,null,1,false,false,false,589220378013624,false]],[[61,155,null,774160630736170,false,[[7,[19,106,[[19,104],[0,1],[2," "]]]]]],[61,262,null,795698966170694,false],[61,263,null,163176830842861,false,[[0,[0,30]]]],[42,264,"Platform",901418482868617,false,[[3,0]]],[194,103,null,169946351745214,false,[[3,1],[1,[19,104]],[1,[2,""]],[1,[2,""]]]],[4,198,null,692160165085170,false,[[1,[2,"WebSdkWrapper.gameplayStart()"]]]]],[[1,"HITBUFFERPLAYER",0,3,false,true,368957611672813,false],[0,null,false,null,292246417486018,[],[[42,82,null,723796179807074,false,[[10,13],[7,[23,"HITBUFFERPLAYER"]]]]]],[0,null,false,null,541709556999178,[[-1,127,null,0,false,false,false,515180332198595,false,[[7,[20,65,265,false,null]],[8,0],[7,[0,0]]]]],[[-1,266,null,728293240153042,false,[[4,65],[5,[20,61,267,true,null]],[0,[20,61,268,false,null]],[0,[20,61,269,false,null]]]],[65,270,null,413965636560135,false,[[0,[20,61,271,false,null]],[0,[0,32]]]],[65,155,null,615122999535352,false,[[7,[21,53,true,null,0]]]],[65,262,null,788771448138871,false],[65,263,null,990055935706722,false,[[0,[0,30]]]]]],[0,null,false,null,184101312825057,[[-1,75,null,0,false,false,false,127240278689503,false]],[[65,272,null,499381353888391,false,[[0,[20,61,268,false,null]],[0,[20,61,269,false,null]]]],[65,273,null,702574908217420,false,[[5,[20,61,267,true,null]]]],[65,270,null,823717993044235,false,[[0,[20,61,271,false,null]],[0,[0,32]]]],[65,155,null,574559299285381,false,[[7,[21,53,true,null,0]]]],[65,262,null,235132433381054,false],[65,263,null,764804378526256,false,[[0,[0,30]]]]]],[0,null,false,null,930312386417511,[[53,77,null,0,false,false,false,498543424255809,false,[[10,2]]]],[[-1,274,null,476278821268681,false,[[1,[2,"Player > Slopes"]],[3,1]]]]],[0,null,false,null,838511017271359,[[-1,75,null,0,false,false,false,275124377753458,false]],[[-1,274,null,598990600681202,false,[[1,[2,"Player > Slopes"]],[3,0]]]]],[0,null,false,null,605622329332106,[[1,107,null,0,false,false,false,486563526629710,false,[[10,16]]],[47,77,null,0,false,false,false,995742463265474,false,[[10,1]]]],[[47,81,null,604927661472600,false]]],[1,"BORDERWIDTH",0,84,false,true,491504855197634,false],[1,"BORDEROPA",0,100,false,true,192410600212223,false],[0,null,false,null,408314256473983,[],[[-1,266,null,897488327121572,false,[[4,162],[5,[2,"Layer 0"]],[0,[0,0]],[0,[0,0]]]],[162,275,null,171231945393289,false,[[0,[19,276]],[0,[23,"BORDERWIDTH"]]]],[162,277,null,517361504234956,false],[162,278,null,956882151014981,false,[[0,[23,"BORDEROPA"]]]],[-1,266,null,697973847926467,false,[[4,162],[5,[2,"Layer 0"]],[0,[0,0]],[0,[19,279]]]],[162,275,null,905355207578911,false,[[0,[19,279]],[0,[23,"BORDERWIDTH"]]]],[162,280,null,839795677040754,false,[[0,[0,-90]]]],[162,277,null,772517694725741,false],[162,278,null,619018822697129,false,[[0,[23,"BORDEROPA"]]]],[-1,266,null,989765526010275,false,[[4,162],[5,[2,"Layer 0"]],[0,[19,276]],[0,[19,279]]]],[162,275,null,239235109666779,false,[[0,[19,276]],[0,[23,"BORDERWIDTH"]]]],[162,280,null,957355156742143,false,[[0,[0,180]]]],[162,277,null,837009412628728,false],[162,278,null,639907003733091,false,[[0,[23,"BORDEROPA"]]]],[-1,266,null,387682335182584,false,[[4,162],[5,[2,"Layer 0"]],[0,[19,276]],[0,[0,0]]]],[162,275,null,192791144557089,false,[[0,[19,279]],[0,[23,"BORDERWIDTH"]]]],[162,280,null,636827519284473,false,[[0,[0,90]]]],[162,277,null,430707196999115,false],[162,278,null,890086847538060,false,[[0,[23,"BORDEROPA"]]]]]],[0,null,false,null,674276796813212,[[-1,127,null,0,false,false,false,450281059871531,false,[[7,[20,4,281,true,null]],[8,1],[7,[2,"dedragames.com"]]]],[-1,127,null,0,false,false,false,423023376792552,false,[[7,[20,4,281,true,null]],[8,1],[7,[2,"www.dedragames.com"]]]],[-1,127,null,0,false,false,false,778259619911084,false,[[7,[20,167,282,false,null,[[2,"WebSdkWrapper.hasAds()"]]]],[8,0],[7,[0,1]]]],[-1,127,null,0,false,false,false,612995517924246,false,[[7,[5,[19,212],[23,"lastAdTime"]]],[8,5],[7,[23,"AD_DELAY"]]]],[12,149,null,0,false,true,false,403460055054987,false,[[1,[2,"RemoveAds"]]]]],[[-1,101,null,771517267186538,false,[[11,"lastAdTime"],[7,[19,212]]]],[4,198,null,833963919892525,false,[[1,[2,"crazyMidRoll();"]]]],[125,283,"Dialog",194032468592201,false,[[0,[0,0]],[0,[0,0]],[3,1]]]]]]],[0,null,false,null,311471831130356,[[-1,109,null,0,false,false,false,359203702169628,false]],[],[[0,null,false,null,735896009839655,[[2,284,null,1,false,false,false,280548311442316,false,[[9,78]]]],[[42,120,null,522339314675040,false,[[0,[20,44,121,false,null]],[0,[20,44,122,false,null]]]]]]]],[0,null,false,null,214537880863723,[[53,256,null,1,false,false,false,212267908535824,false]],[[4,285,null,358755628340514,false,[[3,0],[7,[2,"Holder created"]]]],[-1,99,null,894282060244766,false,[[0,[0,0]]]]],[[0,null,false,null,368128153038400,[[-1,127,null,0,false,false,false,721439231547725,false,[[7,[20,65,265,false,null]],[8,0],[7,[0,0]]]]],[[-1,266,null,406635898438827,false,[[4,65],[5,[20,61,267,true,null]],[0,[20,61,268,false,null]],[0,[20,61,269,false,null]]]],[65,270,null,458158632377996,false,[[0,[20,61,271,false,null]],[0,[0,32]]]],[65,155,null,397323122416641,false,[[7,[21,53,true,null,0]]]],[65,262,null,688045167791770,false],[65,263,null,237193273671393,false,[[0,[0,30]]]]]],[0,null,false,null,816392361464306,[[-1,75,null,0,false,false,false,373622157820225,false]],[[65,272,null,188046464135325,false,[[0,[20,61,268,false,null]],[0,[20,61,269,false,null]]]],[65,273,null,759793431232091,false,[[5,[20,61,267,true,null]]]],[65,270,null,453035530977899,false,[[0,[20,61,271,false,null]],[0,[0,32]]]],[65,155,null,413119614541773,false,[[7,[21,53,true,null,0]]]],[65,262,null,971974720662683,false],[65,263,null,156455814576076,false,[[0,[0,30]]]]]],[0,null,false,null,302212852917173,[[53,77,null,0,false,false,false,261855841731533,false,[[10,2]]]],[[-1,274,null,222009221071306,false,[[1,[2,"Player > Slopes"]],[3,1]]]]],[0,null,false,null,290269601901096,[[-1,75,null,0,false,false,false,996250735157930,false]],[[-1,274,null,331615982806334,false,[[1,[2,"Player > Slopes"]],[3,0]]]]]]],[0,null,false,null,227905464368115,[[65,286,null,1,false,false,false,818207833571058,false]],[[65,272,null,246386053767738,false,[[0,[20,61,268,false,null]],[0,[20,61,269,false,null]]]],[65,273,null,132584561274895,false,[[5,[20,61,267,true,null]]]],[65,270,null,973812351604511,false,[[0,[20,61,271,false,null]],[0,[0,32]]]],[65,155,null,844586756395713,false,[[7,[21,53,true,null,0]]]],[65,262,null,685794639281360,false],[65,263,null,692739331250691,false,[[0,[0,30]]]]]],[0,null,false,null,478195429964133,[[61,286,null,1,false,false,false,352088386681585,false]],[[61,155,null,948706222487066,false,[[7,[19,106,[[19,104],[0,1],[2," "]]]]]],[61,262,null,868471312716269,false],[61,263,null,966817285739053,false,[[0,[0,30]]]]]]]],["Music",[[0,[true,"Music"],false,null,834293298384805,[[-1,72,null,0,false,false,false,834293298384805,false,[[1,[2,"Music"]]]]],[],[[1,"curMusicId",1,"",true,false,646336600479377,false],[0,null,false,null,783647158324180,[[4,287,null,1,false,false,false,733616083414813,false]],[[167,288,null,518618532302966,false,[[1,[2,"globalThis.adconfigStopAudioInBackground? HowlerAudioPlayer.setPaused(true) : HowlerAudioPlayer.setLooping(true, 'music')"]],[13]]]]],[0,null,false,null,676418073052509,[[4,289,null,1,false,false,false,577004070147708,false]],[[167,288,null,119545179086229,false,[[1,[2,"globalThis.adconfigStopAudioInBackground? HowlerAudioPlayer.setPaused(false) : HowlerAudioPlayer.setLooping(false, 'music')"]],[13]]]]],[0,null,false,null,665300087704953,[[-1,98,null,1,false,false,false,810292481227460,false]],[],[[0,null,false,null,482987919748899,[[201,290,null,0,false,true,false,616145660037101,false,[[1,[2,"music"]]]]],[[-1,101,null,920431604177404,false,[[11,"curMusicId"],[7,[20,0,160,false,null,[[2,"Music > GetMusic"]]]]]],[201,291,null,970596391003589,false,[[1,[23,"curMusicId"]],[1,[2,"music"]]]]]],[0,null,false,null,161174416182653,[[-1,75,null,0,false,false,false,726147648996942,false]],[],[[1,"musicThatShouldPlay",1,"",false,false,991081929010896,false],[0,null,false,null,814946893421265,[],[[-1,101,null,575985790288294,false,[[11,"musicThatShouldPlay"],[7,[20,0,160,false,null,[[2,"Music > GetMusic"],[0,1]]]]]]]],[0,null,false,null,495918811048273,[[-1,100,null,0,false,false,false,350353783169366,false,[[11,"curMusicId"],[8,1],[7,[23,"musicThatShouldPlay"]]]]],[[0,80,null,926837401466194,false,[[1,[2,"Music > TransitionTo"]],[13,[7,[23,"musicThatShouldPlay"]]]]]]]]],[0,null,false,null,727313552336444,[[-1,127,null,0,false,true,false,261561123998451,false,[[7,[20,0,160,false,null,[[2,"Music > IsOnSafari"]]]],[8,0],[7,[0,0]]]]],[[201,292,null,499900922879403,false,[[1,[2,""]]]]]],[0,null,false,null,297114545720289,[[12,293,null,0,false,false,false,815558439712984,false],[201,290,null,0,false,false,false,652208397461105,false,[[1,[2,""]]]]],[[201,294,null,465479829091412,false,[[0,[20,12,112,false,null,[[2,"Music"]]]],[1,[2,"music"]]]],[201,294,null,929446297086971,false,[[0,[20,12,112,false,null,[[2,"Music"]]]],[1,[2,"transition"]]]],[201,294,null,214198002417033,false,[[0,[20,12,112,false,null,[[2,"Sounds"]]]],[1,[2,"sounds"]]]]],[[0,null,false,null,338333963773114,[[12,295,null,0,false,false,false,165240807364054,false,[[1,[2,"MusicMuted"]],[8,0],[7,[0,1]]]]],[[201,292,null,461162147282539,false,[[1,[2,"music"]]]],[201,292,null,314504727764668,false,[[1,[2,"transition"]]]]]],[0,null,false,null,831575944104728,[[-1,75,null,0,false,false,false,907059571752751,false]],[[201,296,null,634320662227618,false,[[1,[2,"music"]]]],[201,296,null,931731974924461,false,[[1,[2,"transition"]]]]]],[0,null,false,null,250844591970611,[[12,295,null,0,false,false,false,481177714032833,false,[[1,[2,"SoundsMuted"]],[8,0],[7,[0,1]]]]],[[201,292,null,749767535398704,false,[[1,[2,"sounds"]]]]]],[0,null,false,null,287499860697504,[[-1,75,null,0,false,false,false,623972875238483,false]],[[201,296,null,244095784429450,false,[[1,[2,"sounds"]]]]]]]]]],[0,null,false,null,232534594814032,[[201,290,null,0,false,true,false,856581752035176,false,[[1,[2,"music"]]]],[-1,102,null,0,false,false,false,799346528093198,false]],[[-1,101,null,779668990063558,false,[[11,"curMusicId"],[7,[20,0,160,false,null,[[2,"Music > GetMusic"]]]]]],[201,291,null,326891436194415,false,[[1,[23,"curMusicId"]],[1,[2,"music"]]]]]],[0,null,false,null,189849960111386,[[0,169,null,2,false,false,false,819075979872075,false,[[1,[2,"Music > GetMusic"]]]]],[],[[0,null,true,null,431635055479360,[[-1,127,null,0,false,false,false,271064481686439,false,[[7,[19,189,[[19,104],[2,"Menu"]]]],[8,1],[7,[0,-1]]]],[-1,127,null,0,false,false,false,371918829059102,false,[[7,[19,189,[[19,104],[2,"Level"]]]],[8,0],[7,[0,-1]]]]],[[0,171,null,152526323749773,false,[[7,[2,"MenuTrack"]]]]]],[0,null,false,null,585397886302142,[[-1,75,null,0,false,false,false,758072015676112,false]],[],[[1,"ID",0,0,false,false,438217808798611,false],[1,"KeepCurrentIfPossible",0,0,false,false,696101499980387,false],[0,null,false,null,706073424231672,[],[[-1,101,null,825583153468680,false,[[11,"ID"],[7,[19,105,[[19,106,[[19,104],[0,1],[2," "]]]]]]]],[-1,101,null,923906175384407,false,[[11,"KeepCurrentIfPossible"],[7,[20,0,170,false,null,[[0,0]]]]]]]],[0,null,false,null,305438840574910,[[-1,100,null,0,false,false,false,759039851178346,false,[[11,"ID"],[8,3],[7,[0,8]]]]],[[0,171,null,506811607073390,false,[[7,[2,"Track1"]]]]]],[0,null,false,null,986607817373479,[[-1,75,null,0,false,false,false,699669545617792,false],[-1,100,null,0,false,false,false,862779031226782,false,[[11,"ID"],[8,3],[7,[0,16]]]]],[[0,171,null,356411930078803,false,[[7,[2,"Track2"]]]]]],[0,null,false,null,861705489111860,[[-1,75,null,0,false,false,false,180126215025261,false],[-1,100,null,0,false,false,false,704252038312933,false,[[11,"ID"],[8,3],[7,[0,24]]]]],[],[[0,null,false,null,121202277153058,[[-1,100,null,0,false,false,false,468218725805515,false,[[11,"curMusicId"],[8,0],[7,[2,"Track1"]]]]],[],[[0,null,false,null,312099206395062,[[-1,100,null,0,false,false,false,985620106627608,false,[[11,"KeepCurrentIfPossible"],[8,0],[7,[0,0]]]]],[[0,171,null,616597085767573,false,[[7,[2,"Track2"]]]]]],[0,null,false,null,420917152488760,[[-1,75,null,0,false,false,false,344328203896715,false]],[[0,171,null,617270630487567,false,[[7,[2,"Track1"]]]]]]]],[0,null,false,null,251781043868993,[[-1,75,null,0,false,false,false,708742972638011,false],[-1,100,null,0,false,false,false,436639753011074,false,[[11,"curMusicId"],[8,0],[7,[2,"Track2"]]]]],[],[[0,null,false,null,178340194952577,[[-1,100,null,0,false,false,false,239067577739569,false,[[11,"KeepCurrentIfPossible"],[8,0],[7,[0,0]]]]],[[0,171,null,862802428205008,false,[[7,[2,"Track1"]]]]]],[0,null,false,null,869781913786546,[[-1,75,null,0,false,false,false,804142187748208,false]],[[0,171,null,536062924804727,false,[[7,[2,"Track2"]]]]]]]],[0,null,false,null,631137728442017,[[-1,75,null,0,false,false,false,102852646797885,false]],[[0,171,null,287233174744654,false,[[7,[19,297,[[2,"Track1"],[2,"Track2"]]]]]]]]]],[0,null,false,null,178652708201988,[[-1,75,null,0,false,false,false,636735901545949,false],[-1,100,null,0,false,false,false,576590375836157,false,[[11,"ID"],[8,3],[7,[0,32]]]]],[],[[0,null,false,null,966423895913848,[[-1,100,null,0,false,false,false,738663328797994,false,[[11,"curMusicId"],[8,0],[7,[2,"Track2"]]]]],[],[[0,null,false,null,138251430146716,[[-1,100,null,0,false,false,false,782306379102525,false,[[11,"KeepCurrentIfPossible"],[8,0],[7,[0,0]]]]],[[0,171,null,498472484047858,false,[[7,[2,"Track3"]]]]]],[0,null,false,null,870123655259361,[[-1,75,null,0,false,false,false,720178433880187,false]],[[0,171,null,741500737584953,false,[[7,[2,"Track2"]]]]]]]],[0,null,false,null,175977263526627,[[-1,75,null,0,false,false,false,884391991538303,false],[-1,100,null,0,false,false,false,950619687338150,false,[[11,"curMusicId"],[8,0],[7,[2,"Track3"]]]]],[],[[0,null,false,null,466752165711104,[[-1,100,null,0,false,false,false,458698935375697,false,[[11,"KeepCurrentIfPossible"],[8,0],[7,[0,0]]]]],[[0,171,null,629865451995769,false,[[7,[2,"Track2"]]]]]],[0,null,false,null,304944795435889,[[-1,75,null,0,false,false,false,303097741523470,false]],[[0,171,null,772310323738699,false,[[7,[2,"Track3"]]]]]]]],[0,null,false,null,842131136534110,[[-1,75,null,0,false,false,false,520774770393677,false]],[[0,171,null,905200187874063,false,[[7,[19,297,[[2,"Track2"],[2,"Track3"]]]]]]]]]],[0,null,false,null,786281660073354,[[-1,75,null,0,false,false,false,758847075844587,false],[-1,100,null,0,false,false,false,818491854634671,false,[[11,"ID"],[8,3],[7,[0,40]]]]],[],[[0,null,false,null,963526501528750,[[-1,100,null,0,false,false,false,476968994810798,false,[[11,"curMusicId"],[8,0],[7,[2,"Track3"]]]]],[],[[0,null,false,null,796595693638316,[[-1,100,null,0,false,false,false,951450901648160,false,[[11,"KeepCurrentIfPossible"],[8,0],[7,[0,0]]]]],[[0,171,null,896029390697147,false,[[7,[2,"Track4"]]]]]],[0,null,false,null,474544655176801,[[-1,75,null,0,false,false,false,555224833619829,false]],[[0,171,null,266607879961259,false,[[7,[2,"Track3"]]]]]]]],[0,null,false,null,605255482930408,[[-1,75,null,0,false,false,false,519205918997494,false],[-1,100,null,0,false,false,false,228919586841778,false,[[11,"curMusicId"],[8,0],[7,[2,"Track4"]]]]],[],[[0,null,false,null,564189792863265,[[-1,100,null,0,false,false,false,604113262894345,false,[[11,"KeepCurrentIfPossible"],[8,0],[7,[0,0]]]]],[[0,171,null,305421959526726,false,[[7,[2,"Track3"]]]]]],[0,null,false,null,634446854009012,[[-1,75,null,0,false,false,false,243096907530680,false]],[[0,171,null,365595656071837,false,[[7,[2,"Track4"]]]]]]]],[0,null,false,null,932176846936120,[[-1,75,null,0,false,false,false,655870559310570,false]],[[0,171,null,852677969515837,false,[[7,[19,297,[[2,"Track3"],[2,"Track4"]]]]]]]]]],[0,null,false,null,177849394190549,[[-1,75,null,0,false,false,false,168359971652807,false],[-1,100,null,0,false,false,false,862930625360745,false,[[11,"ID"],[8,3],[7,[0,48]]]]],[],[[0,null,false,null,714266866700918,[[-1,100,null,0,false,false,false,950405812599458,false,[[11,"curMusicId"],[8,0],[7,[2,"Track1"]]]]],[],[[0,null,false,null,441594605052624,[[-1,100,null,0,false,false,false,837896664522274,false,[[11,"KeepCurrentIfPossible"],[8,0],[7,[0,0]]]]],[[0,171,null,296781515951859,false,[[7,[19,297,[[2,"Track2"],[2,"Track4"]]]]]]]],[0,null,false,null,469262093508549,[[-1,75,null,0,false,false,false,573366266316560,false]],[[0,171,null,384336718739976,false,[[7,[2,"Track 1"]]]]]]]],[0,null,false,null,353518361255720,[[-1,75,null,0,false,false,false,550785685925134,false],[-1,100,null,0,false,false,false,238204620847805,false,[[11,"curMusicId"],[8,0],[7,[2,"Track2"]]]]],[],[[0,null,false,null,667179911093984,[[-1,100,null,0,false,false,false,276725843425680,false,[[11,"KeepCurrentIfPossible"],[8,0],[7,[0,0]]]]],[[0,171,null,481704296821981,false,[[7,[19,297,[[2,"Track1"],[2,"Track4"]]]]]]]],[0,null,false,null,492069594968202,[[-1,75,null,0,false,false,false,470475745217425,false]],[[0,171,null,345333340003673,false,[[7,[2,"Track2"]]]]]]]],[0,null,false,null,321557148408329,[[-1,75,null,0,false,false,false,688274068030327,false],[-1,100,null,0,false,false,false,798919748601031,false,[[11,"curMusicId"],[8,0],[7,[2,"Track4"]]]]],[],[[0,null,false,null,468325551365692,[[-1,100,null,0,false,false,false,949101710688790,false,[[11,"KeepCurrentIfPossible"],[8,0],[7,[0,0]]]]],[[0,171,null,851920587271552,false,[[7,[19,297,[[2,"Track1"],[2,"Track2"]]]]]]]],[0,null,false,null,592928952920952,[[-1,75,null,0,false,false,false,575289584688183,false]],[[0,171,null,828645116980356,false,[[7,[2,"Track4"]]]]]]]],[0,null,false,null,105041108848179,[[-1,75,null,0,false,false,false,907456054920336,false]],[[0,171,null,861494642637077,false,[[7,[19,297,[[2,"Track1"],[2,"Track2"],[2,"Track4"]]]]]]]]]],[0,null,false,null,479878533696056,[[-1,75,null,0,false,false,false,574280972236386,false]],[],[[0,null,false,null,231611330175091,[[-1,100,null,0,false,false,false,456151069772991,false,[[11,"curMusicId"],[8,0],[7,[2,"Track1"]]]]],[],[[0,null,false,null,729422115528030,[[-1,100,null,0,false,false,false,480480262860007,false,[[11,"KeepCurrentIfPossible"],[8,0],[7,[0,0]]]]],[[0,171,null,548705738596285,false,[[7,[19,297,[[2,"Track2"],[2,"Track3"],[2,"Track4"]]]]]]]],[0,null,false,null,661487869110645,[[-1,75,null,0,false,false,false,294680838893290,false]],[[0,171,null,935277142140368,false,[[7,[2,"Track 1"]]]]]]]],[0,null,false,null,916973679410426,[[-1,75,null,0,false,false,false,598164983987906,false],[-1,100,null,0,false,false,false,979887795034457,false,[[11,"curMusicId"],[8,0],[7,[2,"Track2"]]]]],[],[[0,null,false,null,974215114179635,[[-1,100,null,0,false,false,false,318933371146750,false,[[11,"KeepCurrentIfPossible"],[8,0],[7,[0,0]]]]],[[0,171,null,646967251457981,false,[[7,[19,297,[[2,"Track1"],[2,"Track3"],[2,"Track4"]]]]]]]],[0,null,false,null,167712409398253,[[-1,75,null,0,false,false,false,469452677702658,false]],[[0,171,null,557373766742237,false,[[7,[2,"Track2"]]]]]]]],[0,null,false,null,937480126629693,[[-1,75,null,0,false,false,false,114698362681292,false],[-1,100,null,0,false,false,false,541645527197480,false,[[11,"curMusicId"],[8,0],[7,[2,"Track3"]]]]],[],[[0,null,false,null,421721712412123,[[-1,100,null,0,false,false,false,298894293112883,false,[[11,"KeepCurrentIfPossible"],[8,0],[7,[0,0]]]]],[[0,171,null,962498109447773,false,[[7,[19,297,[[2,"Track1"],[2,"Track2"],[2,"Track4"]]]]]]]],[0,null,false,null,435207725976235,[[-1,75,null,0,false,false,false,194504752381395,false]],[[0,171,null,492650247645207,false,[[7,[2,"Track3"]]]]]]]],[0,null,false,null,692159109929300,[[-1,75,null,0,false,false,false,564283304872376,false],[-1,100,null,0,false,false,false,542479658855977,false,[[11,"curMusicId"],[8,0],[7,[2,"Track4"]]]]],[],[[0,null,false,null,123556355629641,[[-1,100,null,0,false,false,false,674730872065042,false,[[11,"KeepCurrentIfPossible"],[8,0],[7,[0,0]]]]],[[0,171,null,637268422688023,false,[[7,[19,297,[[2,"Track1"],[2,"Track2"],[2,"Track3"]]]]]]]],[0,null,false,null,549320499529525,[[-1,75,null,0,false,false,false,929002874023651,false]],[[0,171,null,483037056834630,false,[[7,[2,"Track4"]]]]]]]],[0,null,false,null,367476357913311,[[-1,75,null,0,false,false,false,129310838557980,false]],[[0,171,null,986726444308461,false,[[7,[19,297,[[2,"Track1"],[2,"Track2"],[2,"Track3"],[2,"Track4"]]]]]]]]]]]]]],[0,null,false,null,560977516750594,[[0,169,null,2,false,false,false,604989033802839,false,[[1,[2,"Music > TransitionTo"]]]]],[],[[1,"musicToTransitionTo",1,"",true,false,660486003855271,false],[0,null,false,null,796035312368828,[],[[-1,101,null,712376019852777,false,[[11,"musicToTransitionTo"],[7,[20,0,170,false,null,[[0,0]]]]]],[201,294,null,139254817052246,false,[[0,[20,12,112,false,null,[[2,"Music"]]]],[1,[2,"transition"]]]],[201,291,null,646935262743982,false,[[1,[10,[2,"Sfx_Transition-0"],[19,298,[[4,[19,299,[[19,300,[[0,9]]]]],[0,1]]]]]],[1,[2,"transition"]]]],[-1,99,null,559006776291973,false,[[0,[1,0.1]]]],[201,301,null,670559398141388,false,[[1,[2,"music"]]]],[201,291,null,208882259624150,false,[[1,[23,"musicToTransitionTo"]],[1,[2,"music"]]]],[-1,101,null,170663011681904,false,[[11,"curMusicId"],[7,[23,"musicToTransitionTo"]]]]]]]],[0,null,false,null,303447219955458,[[0,169,null,2,false,false,false,177748323790443,false,[[1,[2,"Music > IsOnSafari"]]]]],[[0,171,null,234604438797258,false,[[7,[20,167,282,false,null,[[2,"globalThis.__ovoIsSafari? 1:0"]]]]]]]]]],[0,[true,"Sounds"],false,null,195246873340451,[[-1,72,null,0,false,false,false,195246873340451,false,[[1,[2,"Sounds"]]]]],[],[[0,null,false,null,212243551230728,[[42,206,"Platform",1,false,false,false,414447786138746,false],[42,77,null,0,false,true,false,319416623148736,false,[[10,1]]],[42,77,null,0,false,true,false,390912347047063,false,[[10,4]]],[42,77,null,0,false,true,false,694353117514808,false,[[10,7]]],[42,77,null,0,false,true,false,450220836432058,false,[[10,8]]],[42,77,null,0,false,true,false,248445886420719,false,[[10,1]]],[42,205,"Platform",0,false,true,false,902050333520360,false,[[3,0]]],[42,205,"Platform",0,false,true,false,487571116414741,false,[[3,1]]],[42,77,null,0,false,true,false,187004495056925,false,[[10,16]]]],[]],[0,null,false,null,258727837531968,[[42,73,null,0,false,false,false,617832157580689,false,[[10,0],[8,0],[7,[2,"run"]]]],[42,77,null,0,false,true,false,956163226781186,false,[[10,16]]],[-1,127,null,0,false,true,false,106879508972673,false,[[7,[19,189,[[19,104],[2,"Menu"]]]],[8,1],[7,[0,-1]]]]],[],[[0,null,true,null,775164690120588,[[35,302,null,0,false,false,false,600797643040006,false,[[0,[4,[0,80],[20,42,87,false,null]]],[0,[4,[0,100],[20,42,87,false,null]]]]],[39,302,null,0,false,false,false,534783724373821,false,[[0,[4,[0,80],[20,42,87,false,null]]],[0,[4,[0,100],[20,42,87,false,null]]]]]],[],[[0,null,false,null,936784366299142,[[-1,102,null,0,false,false,false,978160110375954,false]],[[201,291,null,228712029554244,false,[[1,[10,[2,"step"],[19,297,[[2,""],[2,"2"],[2,"3"]]]]],[1,[2,"sounds"]]]]]]]]]],[0,null,false,null,497888976995997,[[42,73,null,0,false,false,false,167956916865618,false,[[10,0],[8,0],[7,[2,"dancing"]]]],[42,77,null,0,false,true,false,176531096055768,false,[[10,16]]],[-1,127,null,0,false,true,false,329926294906198,false,[[7,[19,189,[[19,104],[2,"Menu"]]]],[8,1],[7,[0,-1]]]]],[],[[0,null,true,null,330879669762533,[[35,302,null,0,false,false,false,526968249333871,false,[[0,[4,[0,80],[20,42,87,false,null]]],[0,[4,[0,100],[20,42,87,false,null]]]]],[39,302,null,0,false,false,false,319993430921153,false,[[0,[4,[0,80],[20,42,87,false,null]]],[0,[4,[0,100],[20,42,87,false,null]]]]]],[],[[0,null,false,null,742516946565625,[[-1,102,null,0,false,false,false,228914304454531,false]],[[201,291,null,692343945014335,false,[[1,[10,[2,"step"],[19,297,[[2,""],[2,"2"],[2,"3"]]]]],[1,[2,"sounds"]]]]]]]]]]]],[0,null,false,null,220117348155934,[[0,169,null,2,false,false,false,178170322315101,false,[[1,[2,"muteSounds"]]]]],[[201,292,null,371082123435635,false,[[1,[2,""]]]]]],[0,null,false,null,763780346262210,[[0,169,null,2,false,false,false,477604814916257,false,[[1,[2,"unmuteSounds"]]]]],[[201,296,null,585982494643615,false,[[1,[2,""]]]]]]]],["Achievements",[[2,"Skins",false],[0,[true,"Achievements"],false,null,911999944091335,[[-1,72,null,0,false,false,false,911999944091335,false,[[1,[2,"Achievements"]]]]],[],[[0,[true,"Achievements > Init"],false,null,310144369309424,[[-1,72,null,0,false,false,false,310144369309424,false,[[1,[2,"Achievements > Init"]]]]],[],[[0,null,false,null,423825310968724,[[-1,98,null,1,false,false,false,977938436828895,false],[14,303,null,0,false,false,false,211396064576267,false,[[3,0],[13]]]],[[8,304,null,164821358810043,false,[[1,[2,"Achievements"]],[12,"achievements.json"]]]]],[0,null,false,null,868493747045833,[[8,305,null,1,false,false,false,390904824076330,false,[[1,[2,"Achievements"]]]]],[[14,306,null,556523142549276,false,[[1,[20,8,307,true,null]],[3,0],[13]]],[7,308,null,232051643448702,false,[[1,[2,"Achievements"]],[1,[20,8,307,true,null]]]]]]]],[0,[true,"Achievements > API"],false,null,875317090437606,[[-1,72,null,0,false,false,false,875317090437606,false,[[1,[2,"Achievements > API"]]]]],[],[[0,null,false,null,631631509947933,[[0,169,null,2,false,false,false,866448631875583,false,[[1,[2,"Achievements > Unlock"]]]],[12,149,null,0,false,true,false,405889323207027,false,[[1,[10,[2,"Achievement"],[20,0,170,false,null,[[0,0]]]]]]]],[[0,80,null,897191250055948,false,[[1,[2,"Save > Achievement"]],[13,[7,[20,0,170,false,null,[[0,0]]]]]]],[15,309,null,461019997212428,false,[[1,[20,14,310,false,null,[[0,0],[20,0,170,false,null,[[0,0]]],[2,"callback"]]]],[1,[20,14,310,false,null,[[0,0],[20,0,170,false,null,[[0,0]]],[2,"divider"]]]],[1,[20,14,310,false,null,[[0,0],[20,0,170,false,null,[[0,0]]],[2,"params"]]]],[1,[20,14,310,false,null,[[0,0],[20,0,170,false,null,[[0,0]]],[2,"type"]]]]]],[4,198,null,103432079846720,false,[[1,[2,"globalThis.WebSdkWrapper.happyTime()"]]]],[194,103,null,942384658801085,false,[[3,2],[1,[2,"Achievement"]],[1,[20,0,160,false,null,[[2,"Achievements > Name"],[20,0,170,false,null,[[0,0]]]]]],[1,[2,""]]]]],[[1,"title",1,"",false,false,423816191629674,false],[1,"achname",1,"",false,false,947064063943985,false],[1,"achdesc",1,"",false,false,639244663161052,false],[0,null,false,null,865331059773374,[],[[167,311,null,192932419445655,false,[[1,[2,"getLanguageValue"]],[13,[7,[21,30,true,null,0]],[7,[2,"achievementunlocked"]],[7,[2,"text"]],[7,[2,"Achievement Unlocked !"]],[7,[2,""]]]]],[-1,101,null,433293757159875,false,[[11,"title"],[7,[20,167,312,false,null]]]],[-1,101,null,436157484553193,false,[[11,"title"],[7,[20,167,312,false,null]]]],[167,311,null,905432434575781,false,[[1,[2,"findLanguageKey"]],[13,[7,[2,"en-us"]],[7,[20,0,160,false,null,[[2,"Achievements > Name"],[20,0,170,false,null,[[0,0]]]]]]]]],[167,311,null,197180075876222,false,[[1,[2,"getLanguageValue"]],[13,[7,[21,30,true,null,0]],[7,[20,167,312,false,null]],[7,[2,"text"]],[7,[20,0,160,false,null,[[2,"Achievements > Name"],[20,0,170,false,null,[[0,0]]]]]],[7,[2,""]]]]],[-1,101,null,408214947868636,false,[[11,"achname"],[7,[20,167,312,false,null]]]],[167,311,null,907046479136857,false,[[1,[2,"findLanguageKey"]],[13,[7,[2,"en-us"]],[7,[20,0,160,false,null,[[2,"Achievements > Description"],[20,0,170,false,null,[[0,0]]]]]]]]],[167,311,null,949056557778947,false,[[1,[2,"getLanguageValue"]],[13,[7,[21,30,true,null,0]],[7,[20,167,312,false,null]],[7,[2,"text"]],[7,[20,0,160,false,null,[[2,"Achievements > Description"],[20,0,170,false,null,[[0,0]]]]]],[7,[2,""]]]]],[-1,101,null,102536389370750,false,[[11,"achdesc"],[7,[20,167,312,false,null]]]],[0,80,null,432830210793400,false,[[1,[2,"Notification > Image"]],[13,[7,[23,"title"]],[7,[10,[10,[23,"achname"],[2,": "]],[23,"achdesc"]]],[7,[20,0,160,false,null,[[2,"Achievements > Icon"],[20,0,170,false,null,[[0,0]]]]]]]]]]]]],[0,null,false,null,769715116212284,[[0,169,null,2,false,false,false,662877008481550,false,[[1,[2,"Achievements > Name"]]]]],[[0,171,null,964172676212825,false,[[7,[20,14,310,false,null,[[0,0],[20,0,170,false,null,[[0,0]]],[2,"name"]]]]]]]],[0,null,false,null,707996213756631,[[0,169,null,2,false,false,false,717227998776218,false,[[1,[2,"Achievements > Description"]]]]],[[0,171,null,435353834842690,false,[[7,[20,14,310,false,null,[[0,0],[20,0,170,false,null,[[0,0]]],[2,"description"]]]]]]]],[0,null,false,null,486845014960751,[[0,169,null,2,false,false,false,249187675882139,false,[[1,[2,"Achievements > Icon"]]]]],[[0,171,null,521740548336253,false,[[7,[20,14,310,false,null,[[0,0],[20,0,170,false,null,[[0,0]]],[2,"icon"]]]]]]]],[0,null,false,null,992674309015349,[[0,169,null,2,false,false,false,876074760310401,false,[[1,[2,"Achievements > Hidden"]]]]],[[0,171,null,728140719383226,false,[[7,[20,14,310,false,null,[[0,0],[20,0,170,false,null,[[0,0]]],[2,"hidden"]]]]]]]]]]]]]],["Save",[[2,"Language",false],[2,"Skins",false],[2,"Inputs",false],[2,"Achievements",false],[2,"Notification",false],[0,[true,"Save"],false,null,162986568156015,[[-1,72,null,0,false,false,false,162986568156015,false,[[1,[2,"Save"]]]]],[],[[0,[true,"Save > Init"],false,null,283165337029184,[[-1,72,null,0,false,false,false,283165337029184,false,[[1,[2,"Save > Init"]]]]],[],[[0,null,false,null,855870978712707,[[-1,98,null,1,false,false,false,750078358650990,false],[1,107,null,0,false,false,false,949644249988978,false,[[10,6]]]],[[8,304,null,735985345045914,false,[[1,[2,"adconfig"]],[12,"adconfig.json"]]],[4,198,null,418123747283769,false,[[1,[2,"globalThis.oldRuntimeMobileMode = this.runtime.isMobile"]]]],[12,313,null,211265669871254,false],[201,314,null,481167027365172,false,[[2,["menutrack",false]],[1,[2,"music"]]]],[201,314,null,557488789583885,false,[[2,["track1",true]],[1,[2,"music"]]]],[201,314,null,937435560220639,false,[[2,["track2",true]],[1,[2,"music"]]]],[201,314,null,471424179541705,false,[[2,["track3",true]],[1,[2,"music"]]]],[201,314,null,109928488869888,false,[[2,["track4",true]],[1,[2,"music"]]]]],[[0,null,false,null,261757822495536,[],[[-1,315,null,490693393652791,false,[[1,[23,"LANGUAGELOADEDSIGNAL"]]]]],[[0,null,false,null,851539001060242,[[30,108,null,0,false,false,false,700675995494868,false,[[10,0],[8,0],[7,[2,""]]]]],[[30,316,null,434287948116961,false,[[10,0],[7,[20,167,282,false,null,[[2,"detectLanguage()"]]]]]],[-1,99,null,817839074078626,false,[[0,[1,1]]]],[12,111,null,268971112127220,false,[[1,[2,"Language"]],[7,[20,30,317,true,null]]]],[12,113,null,208638790552480,false]]]]],[0,null,false,null,851076218283539,[],[[-1,99,null,176849822561145,false,[[0,[0,0]]]],[1,197,null,474782993454946,false,[[10,6],[3,0]]],[8,304,null,912681795007652,false,[[1,[2,"language"]],[12,"languages.json"]]]]]]],[0,null,false,null,910632506246077,[[8,305,null,1,false,false,false,636612072809910,false,[[1,[2,"language"]]]]],[],[[0,null,false,null,600840665840540,[[30,108,null,0,false,false,false,532124893435554,false,[[10,1],[8,0],[7,[2,""]]]]],[[30,316,null,597812878819622,false,[[10,1],[7,[20,8,307,true,null]]]],[30,197,null,375112387838088,false,[[10,2],[3,1]]],[12,111,null,662066397971048,false,[[1,[2,"Language"]],[7,[20,30,317,true,null]]]],[0,80,null,292340083562544,false,[[1,[2,"Language > Loaded"]],[13]]]],[[0,null,false,null,289977059879069,[[12,293,null,0,false,false,false,278946890351023,false]],[[12,113,null,244280892223327,false]]]]]]],[0,null,false,null,821190910100078,[[8,305,null,1,false,false,false,847283276673076,false,[[1,[2,"adconfig"]]]]],[[167,318,null,714329333861523,false,[[1,[2,"adconfig"]],[7,[20,8,307,true,null]]]]],[[0,null,false,null,876661063980343,[[-1,109,null,0,false,false,false,116302400862035,false]],[[167,311,null,475413504738752,false,[[1,[2,"initWebSdkWrapper"]],[13,[7,[0,1]]]]]]],[0,null,false,null,248416363955669,[[-1,75,null,0,false,false,false,624916031097691,false]],[[167,311,null,307717019234091,false,[[1,[2,"initWebSdkWrapper"]],[13,[7,[0,0]]]]]]]]],[0,null,false,null,611428631163515,[[8,319,null,1,false,false,false,331994346093878,false,[[1,[2,"adconfig"]]]]],[]],[0,null,false,null,669131513933010,[[12,320,null,1,false,false,false,671529092966837,false]],[[12,111,null,803905557492758,false,[[1,[2,"Levels"]],[7,[0,1]]]],[12,111,null,864311614878293,false,[[1,[2,"Music"]],[7,[1,0.5]]]],[12,111,null,464758699033225,false,[[1,[2,"Sounds"]],[7,[1,0.5]]]],[12,111,null,290639275637948,false,[[1,[2,"VolumeIsLinear"]],[7,[0,1]]]],[12,111,null,923381777766359,false,[[1,[2,"Fullscreen"]],[7,[0,0]]]],[12,111,null,629676849342578,false,[[1,[2,"HardMode"]],[7,[0,0]]]],[12,111,null,768695733681222,false,[[1,[2,"AdvancedMode"]],[7,[0,0]]]],[12,111,null,284617585170439,false,[[1,[2,"LeftInput"]],[7,[21,16,false,null,0]]]],[12,111,null,253290119634447,false,[[1,[2,"RightInput"]],[7,[21,16,false,null,2]]]],[12,111,null,271074527701897,false,[[1,[2,"UpInput"]],[7,[21,16,false,null,1]]]],[12,111,null,754687278107088,false,[[1,[2,"DownInput"]],[7,[21,16,false,null,3]]]],[12,111,null,571643322782463,false,[[1,[2,"Gold"]],[7,[0,0]]]],[12,111,null,723145622788503,false,[[1,[2,"Skin0"]],[7,[0,1]]]],[12,111,null,308993002650976,false,[[1,[2,"CollectedCoins"]],[7,[0,0]]]],[12,111,null,483688618875811,false,[[1,[2,"CurSkin"]],[7,[2,""]]]],[12,111,null,459260542656810,false,[[1,[2,"MobileMode"]],[7,[0,0]]]],[12,111,null,181995077996050,false,[[1,[2,"MusicMuted"]],[7,[0,0]]]],[12,111,null,323841926399552,false,[[1,[2,"SoundsMuted"]],[7,[0,0]]]],[12,113,null,287238616458505,false]],[[0,null,false,null,154382183721419,[[30,107,null,0,false,false,false,934526837180121,false,[[10,2]]]],[[12,111,null,661493644679138,false,[[1,[2,"Language"]],[7,[20,30,317,true,null]]]],[12,113,null,333736026151571,false]]]]],[0,null,false,null,165604402275530,[[12,321,null,1,false,false,false,775790404995832,false]],[],[[0,null,false,null,654032152308802,[[1,107,null,0,false,false,false,563107270537816,false,[[10,7]]],[-1,109,null,0,false,false,false,983942327988317,false]],[[4,285,null,129268849388368,false,[[3,1],[7,[2,"BLOW SAVE MODE: PLEASE DISABLE AFTER TESTING"]]]],[0,80,null,121950783623740,false,[[1,[2,"Save > BlowSave"]],[13]]]]],[0,null,false,null,115706140179141,[[1,107,null,0,false,false,false,428571442928592,false,[[10,12]]]],[[12,111,null,390430929672685,false,[[1,[2,"Levels"]],[7,[21,1,false,null,9]]]],[0,80,null,690072598568067,false,[[1,[2,"Notification > Alert"]],[13,[7,[2,"Test Mode Activated"]],[7,[2,"This unlocks every level."]]]]],[12,113,null,531292985869405,false]]],[0,null,false,null,648721901291575,[[1,107,null,0,false,false,false,551057881912831,false,[[10,11]]]],[[0,80,null,159980054600369,false,[[1,[2,"Notification > Alert"]],[13,[7,[2,"Random Skin Activated"]],[7,[2,"This makes you try every skin in the game."]]]]]]],[0,null,false,null,324154452321057,[[12,149,null,0,false,true,false,565616474010403,false,[[1,[2,"Levels"]]]]],[[12,111,null,240186018083704,false,[[1,[2,"Levels"]],[7,[0,1]]]],[12,113,null,683932486412394,false]]],[0,null,true,null,158440876070012,[[12,149,null,0,false,false,false,633915784769280,false,[[1,[2,"besttime"]]]],[12,149,null,0,false,false,false,178852042436420,false,[[1,[2,"besttimehard"]]]]],[[0,80,null,247085273161368,false,[[1,[2,"Achievements > Unlock"]],[13,[7,[0,10]]]]]]],[0,null,false,null,567203571428331,[[-1,75,null,0,false,false,false,194369843114659,false],[12,295,null,0,false,false,false,955018068061617,false,[[1,[2,"Levels"]],[8,4],[7,[21,1,false,null,9]]]]],[[12,111,null,348198921036705,false,[[1,[2,"Levels"]],[7,[21,1,false,null,9]]]],[12,113,null,209534354796506,false]]],[0,null,true,null,568274906586870,[[12,149,null,0,false,true,false,340665498869633,false,[[1,[2,"LeftInput"]]]],[12,295,null,0,false,false,false,256981955378935,false,[[1,[2,"LeftInput"]],[8,2],[7,[0,3]]]]],[[12,111,null,449702388163239,false,[[1,[2,"LeftInput"]],[7,[21,16,false,null,0]]]]]],[0,null,true,null,393749748047054,[[12,149,null,0,false,true,false,752071561619586,false,[[1,[2,"RightInput"]]]],[12,295,null,0,false,false,false,887157804206072,false,[[1,[2,"RightInput"]],[8,2],[7,[0,3]]]]],[[12,111,null,253190104837749,false,[[1,[2,"RightInput"]],[7,[21,16,false,null,2]]]]]],[0,null,true,null,936714148639980,[[12,149,null,0,false,true,false,152634170491822,false,[[1,[2,"UpInput"]]]],[12,295,null,0,false,false,false,162040904732276,false,[[1,[2,"UpInput"]],[8,2],[7,[0,3]]]]],[[12,111,null,268980869575249,false,[[1,[2,"UpInput"]],[7,[21,16,false,null,1]]]]]],[0,null,true,null,555653481807695,[[12,149,null,0,false,true,false,541389630555295,false,[[1,[2,"DownInput"]]]],[12,295,null,0,false,false,false,174487595292886,false,[[1,[2,"DownInput"]],[8,2],[7,[0,3]]]]],[[12,111,null,344418674661205,false,[[1,[2,"DownInput"]],[7,[21,16,false,null,3]]]]]],[0,null,false,null,536767773635854,[[12,149,null,0,false,false,false,496782941149315,false,[[1,[2,"Language"]]]]],[[167,318,null,173046675829932,false,[[1,[2,"savedVars"]],[7,[20,12,112,false,null,[[2,"Language"]]]]]],[167,318,null,690226434084932,false,[[1,[2,"curVars"]],[7,[20,30,317,true,null]]]],[167,311,null,375468426452456,false,[[1,[2,"mergeInstanceVars"]],[13]]],[30,322,null,544977044764135,false,[[1,[20,167,312,false,null]]]],[0,80,null,999405815840846,false,[[1,[2,"Language > Loaded"]],[13]]]]],[0,null,false,null,529950628875775,[[12,149,null,0,false,true,false,647352120456165,false,[[1,[2,"MusicMuted"]]]]],[[12,111,null,336061206078562,false,[[1,[2,"MusicMuted"]],[7,[0,0]]]]]],[0,null,false,null,958414220108857,[[12,149,null,0,false,true,false,473362993297200,false,[[1,[2,"SoundsMuted"]]]]],[[12,111,null,824672939843699,false,[[1,[2,"SoundsMuted"]],[7,[0,0]]]]]],[0,null,false,null,488504661712040,[[-1,75,null,0,false,false,false,689472132831626,false]],[[12,111,null,975807535287343,false,[[1,[2,"Language"]],[7,[20,30,317,true,null]]]]]],[0,null,false,null,697465902245521,[],[[-1,99,null,888498472278283,false,[[0,[0,0]]]],[16,316,null,202800238877928,false,[[10,0],[7,[20,12,112,false,null,[[2,"LeftInput"]]]]]],[16,316,null,502322096114036,false,[[10,3],[7,[20,12,112,false,null,[[2,"DownInput"]]]]]],[16,316,null,522447533155396,false,[[10,2],[7,[20,12,112,false,null,[[2,"RightInput"]]]]]],[16,316,null,476775079206194,false,[[10,1],[7,[20,12,112,false,null,[[2,"UpInput"]]]]]],[1,316,null,624888217179466,false,[[10,8],[7,[20,12,112,false,null,[[2,"CurSkin"]]]]]]],[[0,null,false,null,754756956427564,[[12,149,null,0,false,true,false,568587465180406,false,[[1,[2,"VolumeIsLinear"]]]]],[[201,323,null,728410219618408,false,[[0,[20,12,112,false,null,[[2,"Music"]]]],[1,[2,"music"]]]],[201,323,null,253643581181864,false,[[0,[20,12,112,false,null,[[2,"Sounds"]]]],[1,[2,"sounds"]]]],[12,111,null,495508023041801,false,[[1,[2,"Music"]],[7,[20,201,324,false,null,[[2,"music"]]]]]],[12,111,null,411468552827177,false,[[1,[2,"Sounds"]],[7,[20,201,324,false,null,[[2,"sounds"]]]]]],[12,111,null,657237777880578,false,[[1,[2,"VolumeIsLinear"]],[7,[0,1]]]],[201,294,null,389019009004008,false,[[0,[20,12,112,false,null,[[2,"Music"]]]],[1,[2,"music"]]]],[201,294,null,918035952247009,false,[[0,[20,12,112,false,null,[[2,"Sounds"]]]],[1,[2,"sounds"]]]]]],[0,null,false,null,248780237932463,[[-1,75,null,0,false,false,false,946065334708927,false]],[[201,294,null,412492798942209,false,[[0,[20,12,112,false,null,[[2,"Music"]]]],[1,[2,"music"]]]],[201,294,null,868227491645633,false,[[0,[20,12,112,false,null,[[2,"Sounds"]]]],[1,[2,"sounds"]]]]]],[0,null,false,null,821531406954841,[[12,295,null,0,false,false,false,823673578277356,false,[[1,[2,"Fullscreen"]],[8,0],[7,[0,1]]]]],[[4,325,null,706353150222840,false,[[3,0]]]]],[0,null,false,null,994603906770450,[[12,295,null,0,false,false,false,416597273766833,false,[[1,[2,"HardMode"]],[8,0],[7,[0,1]]]]],[[1,197,null,107432619565177,false,[[10,16],[3,0]]]]],[0,null,false,null,543709717956369,[[12,295,null,0,false,false,false,191607024089398,false,[[1,[2,"AdvancedMode"]],[8,0],[7,[0,1]]]]],[[1,197,null,390853691505709,false,[[10,17],[3,1]]]]],[0,null,false,null,372050391686339,[[12,295,null,0,false,false,false,547836138675055,false,[[1,[2,"MusicMuted"]],[8,0],[7,[0,1]]]]],[[201,292,null,292807829833409,false,[[1,[2,"music"]]]]]],[0,null,false,null,926911077808948,[[-1,75,null,0,false,false,false,401329858585438,false]],[[201,296,null,198571554634384,false,[[1,[2,"music"]]]]]],[0,null,false,null,336411234421061,[[12,295,null,0,false,false,false,676475051283773,false,[[1,[2,"SoundsMuted"]],[8,0],[7,[0,1]]]]],[[201,292,null,140501162948391,false,[[1,[2,"sounds"]]]]]],[0,null,false,null,728351105910189,[[-1,75,null,0,false,false,false,342166235544418,false]],[[201,296,null,418896621432117,false,[[1,[2,"sounds"]]]]]],[0,null,false,null,764750905827966,[],[[0,80,null,729203026031539,false,[[1,[2,"Options > Update"]],[13]]]]]]],[0,null,false,null,292841523463166,[],[[0,80,null,383099674928518,false,[[1,[2,"Save > UpdateNbCoins"]],[13]]],[0,80,null,339181398740631,false,[[1,[2,"Save > UpdateLevelAchievements"]],[13]]],[0,80,null,831560700818737,false,[[1,[2,"Save > Update Mobile Mode"]],[13]]],[12,113,null,412027218432684,false]]]]],[0,null,false,null,775355781556675,[[12,326,null,1,false,false,false,792201547156201,false]],[[4,285,null,855062792113850,false,[[3,2],[7,[10,[2,"SyncStorage: Init failed: "],[20,12,327,true,null]]]]]]],[0,null,false,null,472664455482677,[[-1,328,null,1,false,false,false,153060324119327,false]],[[0,80,null,302578828316574,false,[[1,[2,"Save > Save"]],[13]]]]]]],[0,[true,"Save > API"],false,null,629196985939124,[[-1,72,null,0,false,false,false,629196985939124,false,[[1,[2,"Save > API"]]]]],[],[[0,null,false,null,266481799390422,[[0,169,null,2,false,false,false,785616536486651,false,[[1,[2,"Save > Save"]]]]],[[12,113,null,535781288900225,false]]],[0,null,false,null,298471975688083,[[0,169,null,2,false,false,false,839479699918601,false,[[1,[2,"Save > Achievement"]]]]],[[12,111,null,104072826878550,false,[[1,[10,[2,"Achievement"],[20,0,170,false,null,[[0,0]]]]],[7,[0,1]]]],[12,113,null,718484982641264,false]]],[0,null,false,null,472399118101821,[[0,169,null,2,false,false,false,892193053467844,false,[[1,[2,"Save > Skin"]]]]],[[12,111,null,368799202724134,false,[[1,[10,[2,"Skin"],[20,0,170,false,null,[[0,0]]]]],[7,[0,1]]]],[12,113,null,334881200476443,false]]],[0,null,false,null,682218786424573,[[0,169,null,2,false,false,false,867120449805977,false,[[1,[2,"Save > BlowSave"]]]]],[[12,329,null,584398412758930,false],[12,111,null,945670827231365,false,[[1,[2,"Levels"]],[7,[0,1]]]],[12,111,null,809734191189483,false,[[1,[2,"Music"]],[7,[1,0.5]]]],[12,111,null,757590849794366,false,[[1,[2,"Sounds"]],[7,[1,0.5]]]],[12,111,null,709553063595747,false,[[1,[2,"VolumeIsLinear"]],[7,[0,1]]]],[12,111,null,619112106225530,false,[[1,[2,"Fullscreen"]],[7,[0,0]]]],[12,111,null,190208265624887,false,[[1,[2,"HardMode"]],[7,[0,0]]]],[12,111,null,488914781807004,false,[[1,[2,"AdvancedMode"]],[7,[0,0]]]],[12,111,null,989924001593810,false,[[1,[2,"LeftInput"]],[7,[21,16,false,null,0]]]],[12,111,null,599663057435475,false,[[1,[2,"RightInput"]],[7,[21,16,false,null,2]]]],[12,111,null,435651200544452,false,[[1,[2,"UpInput"]],[7,[21,16,false,null,1]]]],[12,111,null,593348250242490,false,[[1,[2,"DownInput"]],[7,[21,16,false,null,3]]]],[12,111,null,102416547723878,false,[[1,[2,"Gold"]],[7,[0,0]]]],[12,111,null,553107813630470,false,[[1,[2,"Skin0"]],[7,[0,1]]]],[12,111,null,474132508373151,false,[[1,[2,"CollectedCoins"]],[7,[0,0]]]],[12,111,null,234039771356494,false,[[1,[2,"CurSkin"]],[7,[2,""]]]],[12,111,null,133438133741123,false,[[1,[2,"MobileMode"]],[7,[0,0]]]],[12,111,null,833274241556141,false,[[1,[2,"MusicMuted"]],[7,[0,0]]]],[12,111,null,301938068647116,false,[[1,[2,"SoundsMuted"]],[7,[0,0]]]],[12,113,null,318408467372715,false]]],[0,null,false,null,902690401653051,[[0,169,null,2,false,false,false,140530036800313,false,[[1,[2,"Save > BlowCoins"]]]]],[],[[0,null,false,null,230914432645613,[[-1,330,null,0,true,false,false,207583546716044,false,[[1,[2,"coins"]],[0,[0,0]],[0,[21,1,false,null,9]]]]],[[12,331,null,117098735207470,false,[[1,[10,[2,"Coinlevel"],[19,332]]]]]]],[0,null,false,null,780466350557466,[],[[12,111,null,523432526039584,false,[[1,[2,"CollectedCoins"]],[7,[0,0]]]],[12,113,null,122346518941519,false]]]]],[0,null,false,null,978560428414984,[[0,169,null,2,false,false,false,404787142079780,false,[[1,[2,"Save > Update Mobile Mode"]]]]],[],[[0,null,false,null,852183798736470,[[12,295,null,0,false,false,false,522630216336123,false,[[1,[2,"MobileMode"]],[8,0],[7,[0,0]]]]],[[4,198,null,237923126487022,false,[[1,[2,"this.runtime.isMobile = globalThis.oldRuntimeMobileMode"]]]],[4,198,null,163502361535161,false,[[1,[2,"Object.values(this.runtime.types).find(x=>x.plugin instanceof cr.plugins_.Touch).getFirstPicked().useMouseInput = false"]]]]]],[0,null,false,null,519806167382668,[[12,295,null,0,false,false,false,208576371924283,false,[[1,[2,"MobileMode"]],[8,0],[7,[0,1]]]]],[[4,198,null,429917408187916,false,[[1,[2,"this.runtime.isMobile = true"]]]],[4,198,null,691044219666934,false,[[1,[2,"Object.values(this.runtime.types).find(x=>x.plugin instanceof cr.plugins_.Touch).getFirstPicked().useMouseInput = true"]]]]]],[0,null,false,null,278299695832948,[[12,295,null,0,false,false,false,819070389272493,false,[[1,[2,"MobileMode"]],[8,0],[7,[0,2]]]]],[[4,198,null,938502309507733,false,[[1,[2,"this.runtime.isMobile = false"]]]],[4,198,null,158867633523096,false,[[1,[2,"Object.values(this.runtime.types).find(x=>x.plugin instanceof cr.plugins_.Touch).getFirstPicked().useMouseInput = false"]]]]]]]],[0,null,false,null,702266321569704,[[0,169,null,2,false,false,false,282687954329211,false,[[1,[2,"Save > Auto Update Mobile Mode"]]]]],[],[[0,null,false,null,991852137867820,[[12,295,null,0,false,false,false,595420786684060,false,[[1,[2,"MobileMode"]],[8,0],[7,[0,0]]]]],[[12,111,null,535999767134209,false,[[1,[2,"MobileMode"]],[7,[0,1]]]],[0,80,null,275851366194316,false,[[1,[2,"Save > Update Mobile Mode"]],[13]]],[12,113,null,537902442497986,false],[-1,203,null,962313602842857,false]]]]],[0,null,false,null,834568546328728,[[0,169,null,2,false,false,false,750219063786859,false,[[1,[2,"Save > RemoveAds"]]]]],[],[[0,null,false,null,773926798763573,[],[[12,111,null,566566119058730,false,[[1,[2,"RemoveAds"]],[7,[0,1]]]],[12,113,null,197294371871422,false]]]]],[0,null,false,null,634640458555801,[[0,169,null,2,false,false,false,622100068772835,false,[[1,[2,"Save > UpdateNbCoins"]]]]],[[12,111,null,599179606311313,false,[[1,[2,"CollectedCoins"]],[7,[0,0]]]]],[[0,null,false,null,941963175750392,[[-1,330,null,0,true,false,false,336145921439530,false,[[1,[2,"coins"]],[0,[0,0]],[0,[21,1,false,null,9]]]]],[],[[0,null,false,null,264446812058616,[[12,149,null,0,false,false,false,107529066904947,false,[[1,[10,[2,"Coinlevel"],[19,332]]]]]],[[12,333,null,477501374214849,false,[[1,[2,"CollectedCoins"]],[0,[0,1]]]]]]]],[0,null,false,null,863848314175138,[[12,295,null,0,false,false,false,804969158269453,false,[[1,[2,"CollectedCoins"]],[8,4],[7,[0,0]]]]],[[0,80,null,537698047388532,false,[[1,[2,"Achievements > Unlock"]],[13,[7,[0,11]]]]]]],[0,null,false,null,754971654642991,[[12,295,null,0,false,false,false,333568526431004,false,[[1,[2,"CollectedCoins"]],[8,5],[7,[0,5]]]]],[[0,80,null,856823571571596,false,[[1,[2,"Achievements > Unlock"]],[13,[7,[0,12]]]]]]],[0,null,false,null,523438105169265,[[12,295,null,0,false,false,false,516501041858255,false,[[1,[2,"CollectedCoins"]],[8,5],[7,[0,10]]]]],[[0,80,null,496751487363466,false,[[1,[2,"Achievements > Unlock"]],[13,[7,[0,13]]]]]]],[0,null,false,null,405836812773732,[[12,295,null,0,false,false,false,345263562304141,false,[[1,[2,"CollectedCoins"]],[8,5],[7,[0,30]]]]],[[0,80,null,633834991098070,false,[[1,[2,"Achievements > Unlock"]],[13,[7,[0,14]]]]]]],[0,null,false,null,191797424226801,[[12,295,null,0,false,false,false,215393407556031,false,[[1,[2,"CollectedCoins"]],[8,5],[7,[0,40]]]]],[[0,80,null,686524315266703,false,[[1,[2,"Achievements > Unlock"]],[13,[7,[0,15]]]]]]],[0,null,false,null,513761394801399,[[12,149,null,0,false,false,false,986653751547226,false,[[1,[2,"Coinlevel0"]]]]],[[0,80,null,550541349833375,false,[[1,[2,"Achievements > Unlock"]],[13,[7,[0,16]]]]]]],[0,null,false,null,178133318848539,[],[[12,113,null,252936428017010,false]]]]],[0,null,false,null,668393992317081,[[0,169,null,2,false,false,false,407807567130061,false,[[1,[2,"Save > UpdateLevelAchievements"]]]]],[],[[1,"ID",0,0,false,false,228403972980044,false],[0,null,false,null,585519957949464,[],[[-1,101,null,825615916600727,false,[[11,"ID"],[7,[20,12,112,false,null,[[2,"Levels"]]]]]]]],[0,null,false,null,236290131357183,[[-1,100,null,0,false,false,false,968032353244090,false,[[11,"UnlockAchievement"],[8,1],[7,[0,-1]]]]],[[0,80,null,378911864007238,false,[[1,[2,"Achievements > Unlock"]],[13,[7,[23,"UnlockAchievement"]]]]],[-1,101,null,472705738793977,false,[[11,"UnlockAchievement"],[7,[0,-1]]]]]],[0,null,false,null,655193061685735,[[-1,100,null,0,false,false,false,429645062872507,false,[[11,"ID"],[8,5],[7,[0,8]]]]],[[-1,101,null,505669474781054,false,[[11,"UnlockAchievement"],[7,[0,3]]]],[0,80,null,716170052799344,false,[[1,[2,"Achievements > Unlock"]],[13,[7,[23,"UnlockAchievement"]]]]]]],[0,null,false,null,204914375506487,[[-1,100,null,0,false,false,false,129671292058132,false,[[11,"ID"],[8,5],[7,[0,16]]]]],[[-1,101,null,988061602834500,false,[[11,"UnlockAchievement"],[7,[0,4]]]],[0,80,null,711124813252035,false,[[1,[2,"Achievements > Unlock"]],[13,[7,[23,"UnlockAchievement"]]]]]]],[0,null,false,null,523590150714604,[[-1,100,null,0,false,false,false,431094348155173,false,[[11,"ID"],[8,5],[7,[0,24]]]]],[[-1,101,null,966655867056828,false,[[11,"UnlockAchievement"],[7,[0,5]]]],[0,80,null,616074959739551,false,[[1,[2,"Achievements > Unlock"]],[13,[7,[23,"UnlockAchievement"]]]]]]],[0,null,false,null,987987435254797,[[-1,100,null,0,false,false,false,648459904536917,false,[[11,"ID"],[8,5],[7,[0,32]]]]],[[-1,101,null,439877578874949,false,[[11,"UnlockAchievement"],[7,[0,6]]]],[0,80,null,563114090511195,false,[[1,[2,"Achievements > Unlock"]],[13,[7,[23,"UnlockAchievement"]]]]]]],[0,null,false,null,479711864948118,[[-1,100,null,0,false,false,false,469321637204963,false,[[11,"ID"],[8,5],[7,[0,40]]]]],[[-1,101,null,333242360882637,false,[[11,"UnlockAchievement"],[7,[0,7]]]],[0,80,null,814462906437476,false,[[1,[2,"Achievements > Unlock"]],[13,[7,[23,"UnlockAchievement"]]]]]]],[0,null,false,null,262987617247746,[[-1,100,null,0,false,false,false,171831558230016,false,[[11,"ID"],[8,5],[7,[0,48]]]]],[[-1,101,null,103851592049807,false,[[11,"UnlockAchievement"],[7,[0,8]]]],[0,80,null,545942785566804,false,[[1,[2,"Achievements > Unlock"]],[13,[7,[23,"UnlockAchievement"]]]]]]],[0,null,false,null,425909562539820,[[-1,100,null,0,false,false,false,759810191050362,false,[[11,"ID"],[8,5],[7,[0,52]]]]],[[-1,101,null,461557791587036,false,[[11,"UnlockAchievement"],[7,[0,9]]]],[0,80,null,969658485857231,false,[[1,[2,"Achievements > Unlock"]],[13,[7,[23,"UnlockAchievement"]]]]]]],[0,null,false,null,646674763594272,[],[[-1,101,null,146670175156889,false,[[11,"UnlockAchievement"],[7,[0,-1]]]],[12,113,null,501789778357215,false]]]]],[0,null,false,null,781606348755903,[[0,169,null,2,false,false,false,940066756813248,false,[[1,[2,"unlockAllLevels"]]]]],[[12,111,null,172358039965542,false,[[1,[2,"Levels"]],[7,[21,1,false,null,9]]]],[0,80,null,447509840047522,false,[[1,[2,"Save > UpdateLevelAchievements"]],[13]]]],[[1,"title",1,"",false,false,742950872914267,false],[1,"desc",1,"",false,false,289072199951973,false],[0,null,false,null,717653655856565,[],[[167,311,null,774025148586657,false,[[1,[2,"getLanguageValue"]],[13,[7,[21,30,true,null,0]],[7,[2,"likemagic"]],[7,[2,"text"]],[7,[2,"Like magic"]],[7,[2,""]]]]],[-1,101,null,216912865597812,false,[[11,"title"],[7,[20,167,312,false,null]]]],[167,311,null,758845161080633,false,[[1,[2,"getLanguageValue"]],[13,[7,[21,30,true,null,0]],[7,[2,"unlockall"]],[7,[2,"text"]],[7,[2,"You unlocked every level !"]],[7,[2,""]]]]],[-1,101,null,122580228780298,false,[[11,"desc"],[7,[20,167,312,false,null]]]],[0,80,null,292096691684984,false,[[1,[2,"Notification > Alert"]],[13,[7,[23,"title"]],[7,[23,"desc"]]]]],[12,113,null,445780415643247,false]]],[0,null,false,null,356245705215911,[[-1,330,null,0,true,false,false,652246325324648,false,[[1,[2,"coins"]],[0,[0,0]],[0,[0,99]]]]],[[12,111,null,142567777906449,false,[[1,[10,[2,"Skin"],[19,332]]],[7,[0,1]]]]]]]],[0,null,false,null,377149048561755,[[0,169,null,2,false,false,false,180987727482198,false,[[1,[2,"websdk > pause"]]]]],[],[[0,null,false,null,129722835012198,[[-1,127,null,0,false,false,false,803605467999775,false,[[7,[19,226]],[8,1],[7,[0,0]]]],[-1,127,null,0,false,false,false,506872008245474,false,[[7,[19,189,[[19,104],[2,"Level"]]]],[8,5],[7,[0,0]]]]],[[0,80,null,102659525108368,false,[[1,[2,"Menu > Pause"]],[13]]]]]]],[0,null,false,null,121718778769536,[[0,169,null,2,false,false,false,374070008963150,false,[[1,[2,"websdk > resume"]]]]],[],[[0,null,false,null,305396824438823,[[-1,127,null,0,false,false,false,747991156746038,false,[[7,[19,226]],[8,0],[7,[0,0]]]],[-1,127,null,0,false,false,false,422589199541815,false,[[7,[19,189,[[19,104],[2,"Level"]]]],[8,5],[7,[0,0]]]]],[[0,80,null,805325000770054,false,[[1,[2,"Menu > Pause"]],[13]]]]]]]]]]],[0,null,false,null,661549912589126,[[0,169,null,2,false,false,false,263626190925141,false,[[1,[2,"adOver"]]]]],[[0,80,null,486453223990955,false,[[1,[2,"unmuteSounds"]],[13]]]]],[0,null,false,null,982750771900489,[[0,169,null,2,false,false,false,209315474564397,false,[[1,[2,"adOverFail"]]]]],[[0,80,null,794270267174170,false,[[1,[2,"unmuteSounds"]],[13]]]]],[0,null,false,null,849342344090202,[[0,169,null,2,false,false,false,610755531464544,false,[[1,[2,"getSaveValue"]]]]],[[4,285,null,165239135400277,false,[[3,0],[7,[20,12,112,false,null,[[20,0,170,false,null,[[0,0]]]]]]]]]]]],["Notification",[[0,[true,"Notification"],false,null,664193936102864,[[-1,72,null,0,false,false,false,664193936102864,false,[[1,[2,"Notification"]]]]],[],[[0,[true,"Notification > Updates"],false,null,295719443144517,[[-1,72,null,0,false,false,false,295719443144517,false,[[1,[2,"Notification > Updates"]]]]],[],[[0,null,false,null,984510323679056,[[4,334,null,1,false,false,false,463107203018341,false]],[],[[1,"title",1,"",false,false,232993443304031,false],[1,"desc",1,"",false,false,239916995568323,false],[0,null,false,null,578260121600642,[],[[167,311,null,112845821410029,false,[[1,[2,"getLanguageValue"]],[13,[7,[21,30,true,null,0]],[7,[2,"offlineready"]],[7,[2,"text"]],[7,[2,"Offline ready!"]],[7,[2,""]]]]],[-1,101,null,820626833987368,false,[[11,"title"],[7,[20,167,312,false,null]]]],[167,311,null,909437216047526,false,[[1,[2,"getLanguageValue"]],[13,[7,[21,30,true,null,0]],[7,[2,"offlinereadydesc"]],[7,[2,"text"]],[7,[2,"You can now play the game offline!"]],[7,[2,""]]]]],[-1,101,null,967295246508584,false,[[11,"desc"],[7,[20,167,312,false,null]]]],[0,80,null,964750894295849,false,[[1,[2,"Notification > Alert"]],[13,[7,[23,"title"]],[7,[23,"desc"]]]]]]]]],[0,null,false,null,983090562478107,[[4,335,null,1,false,false,false,764467136429042,false]],[],[[1,"title",1,"",false,false,721748611986444,false],[1,"desc",1,"",false,false,838847301237665,false],[0,null,false,null,455643181178506,[],[[167,311,null,796252427384052,false,[[1,[2,"getLanguageValue"]],[13,[7,[21,30,true,null,0]],[7,[2,"updatefound"]],[7,[2,"text"]],[7,[2,"Update found!"]],[7,[2,""]]]]],[-1,101,null,174276026694077,false,[[11,"title"],[7,[20,167,312,false,null]]]],[167,311,null,590401647293682,false,[[1,[2,"getLanguageValue"]],[13,[7,[21,30,true,null,0]],[7,[2,"updatefounddesc"]],[7,[2,"text"]],[7,[2,"A new update has been found, and is getting downloaded in background"]],[7,[2,""]]]]],[-1,101,null,935287110345683,false,[[11,"desc"],[7,[20,167,312,false,null]]]],[0,80,null,254456138983520,false,[[1,[2,"Notification > Alert"]],[13,[7,[23,"title"]],[7,[23,"desc"]]]]]]]]],[0,null,false,null,228889864686755,[[4,336,null,1,false,false,false,980331229154883,false]],[],[[1,"title",1,"",false,false,495530890229953,false],[1,"desc",1,"",false,false,812220671176891,false],[0,null,false,null,568235413691530,[],[[167,311,null,995423988930806,false,[[1,[2,"getLanguageValue"]],[13,[7,[21,30,true,null,0]],[7,[2,"updateready"]],[7,[2,"text"]],[7,[2,"Update ready!"]],[7,[2,""]]]]],[-1,101,null,303310881867901,false,[[11,"title"],[7,[20,167,312,false,null]]]],[167,311,null,495112342270339,false,[[1,[2,"getLanguageValue"]],[13,[7,[21,30,true,null,0]],[7,[2,"updatereadydesc"]],[7,[2,"text"]],[7,[2,"A new update has been downloaded! Reload or click here to load the new version."]],[7,[2,""]]]]],[-1,101,null,683251464291553,false,[[11,"desc"],[7,[20,167,312,false,null]]]],[0,80,null,975652226742164,false,[[1,[2,"Notification > Clickable"]],[13,[7,[23,"title"]],[7,[23,"desc"]],[7,[2,"UpdateReady"]],[7,[2,""]]]]]]]]],[0,null,false,null,240832970927803,[[11,337,null,1,false,false,false,340135006123545,false,[[1,[2,"UpdateReady"]]]]],[[4,338,null,225622502405290,false]]],[0,null,false,null,766589814319976,[[11,337,null,1,false,false,false,709959805518754,false,[[1,[2,"gpdr"]]]]],[[4,339,null,437175724445551,false,[[1,[2,"https://dedragames.com/#/agreement"]],[1,[2,"_blank"]]]]]],[0,null,false,null,933377953764687,[[6,340,null,1,false,false,false,216590106974714,false]],[[0,80,null,529169650009445,false,[[1,[2,"Notification > Clear"]],[13]]]]]]],[0,[true,"Notification > API"],false,null,813828376180890,[[-1,72,null,0,false,false,false,813828376180890,false,[[1,[2,"Notification > API"]]]]],[],[[1,"LastTitle",1,"",true,false,189343501093671,false],[1,"LastContent",1,"",true,false,580305689941129,false],[0,null,false,null,863753033157357,[[0,169,null,2,false,false,false,134355953833387,false,[[1,[2,"Notification > Alert"]]]]],[[11,341,null,596485239258313,false,[[7,[20,0,170,false,null,[[0,0]]]],[7,[20,0,170,false,null,[[0,1]]]],[7,[2,""]]]]]],[0,null,false,null,772595943669217,[[0,169,null,2,false,false,false,510404534419283,false,[[1,[2,"Notification > Image"]]]]],[],[[1,"Title",1,"",true,false,711395509202240,false],[1,"Content",1,"",true,false,668549220564003,false],[1,"Image",1,"",true,false,417769001419522,false],[0,null,false,null,529992627576131,[],[[-1,101,null,907941738335058,false,[[11,"Title"],[7,[20,0,170,false,null,[[0,0]]]]]],[-1,101,null,994156823038939,false,[[11,"Content"],[7,[20,0,170,false,null,[[0,1]]]]]],[-1,101,null,860339141254544,false,[[11,"Image"],[7,[20,0,170,false,null,[[0,2]]]]]],[11,341,null,436423451143321,false,[[7,[23,"Title"]],[7,[23,"Content"]],[7,[23,"Image"]]]]]]]],[0,null,false,null,271487200105526,[[0,169,null,2,false,false,false,461835123638216,false,[[1,[2,"Notification > Light"]]]]],[[11,342,null,830294922465414,false,[[7,[20,0,170,false,null,[[0,0]]]],[7,[20,0,170,false,null,[[0,1]]]],[7,[20,0,170,false,null,[[0,2]]]],[3,0],[3,1],[0,[0,5000]]]]]],[0,null,false,null,788177294983023,[[0,169,null,2,false,false,false,670672380963126,false,[[1,[2,"Notification > Clickable"]]]]],[[11,343,null,604795158123989,false,[[7,[20,0,170,false,null,[[0,2]]]],[7,[20,0,170,false,null,[[0,0]]]],[7,[20,0,170,false,null,[[0,1]]]],[7,[20,0,170,false,null,[[0,3]]]],[3,0],[3,1],[0,[0,20000]],[3,1]]]]],[0,null,false,null,347835676438162,[[0,169,null,2,false,false,false,948573155466653,false,[[1,[2,"Notification > Clear"]]]]],[[11,344,null,432867999033585,false]]]]]]]]],["Skins",[[2,"Notification",false],[0,[true,"Skins"],false,null,614092635124522,[[-1,72,null,0,false,false,false,614092635124522,false,[[1,[2,"Skins"]]]]],[],[[0,[true,"Skins > Init"],false,null,704566812623910,[[-1,72,null,0,false,false,false,704566812623910,false,[[1,[2,"Skins > Init"]]]]],[],[[0,null,false,null,935040084500943,[[-1,98,null,1,false,false,false,607503337999100,false],[1,107,null,0,false,false,false,978863040146073,false,[[10,6]]]],[[17,345,null,957202151983317,false,[[4,131],[1,[2,"frank"]],[3,0],[1,[2,""]],[1,[2,""]]]],[17,345,null,167957046520860,false,[[4,133],[1,[2,"pole"]],[3,0],[1,[2,""]],[1,[2,""]]]],[17,345,null,462686161866882,false,[[4,132],[1,[2,"elec"]],[3,0],[1,[2,""]],[1,[2,""]]]],[17,345,null,937198788019089,false,[[4,135],[1,[2,"knight"]],[3,0],[1,[2,""]],[1,[2,""]]]],[17,345,null,921578374259943,false,[[4,136],[1,[2,"batter"]],[3,0],[1,[2,""]],[1,[2,""]]]],[17,345,null,438921503939528,false,[[4,137],[1,[2,"erigato"]],[3,0],[1,[2,""]],[1,[2,""]]]],[17,345,null,442010896421776,false,[[4,138],[1,[2,"dknight"]],[3,0],[1,[2,""]],[1,[2,""]]]],[17,345,null,764685043295537,false,[[4,139],[1,[2,"lknight"]],[3,0],[1,[2,""]],[1,[2,""]]]],[17,345,null,957136155525858,false,[[4,140],[1,[2,"astronaut"]],[3,0],[1,[2,""]],[1,[2,""]]]],[17,345,null,778613802836099,false,[[4,141],[1,[2,"alien"]],[3,0],[1,[2,""]],[1,[2,""]]]],[17,345,null,380707045808223,false,[[4,142],[1,[2,"ovo+"]],[3,0],[1,[2,""]],[1,[2,""]]]],[17,345,null,462994461297597,false,[[4,143],[1,[2,"ada"]],[3,0],[1,[2,""]],[1,[2,""]]]],[17,345,null,213160910915358,false,[[4,144],[1,[2,"thefall"]],[3,0],[1,[2,""]],[1,[2,""]]]],[17,345,null,590255259682902,false,[[4,146],[1,[2,"pulse"]],[3,0],[1,[2,""]],[1,[2,""]]]],[17,345,null,323586210617996,false,[[4,151],[1,[2,"materwelon"]],[3,0],[1,[2,""]],[1,[2,""]]]],[17,345,null,972058289351422,false,[[4,148],[1,[2,"fl1ckd"]],[3,0],[1,[2,""]],[1,[2,""]]]],[17,345,null,583892214228627,false,[[4,149],[1,[2,"theliljoker"]],[3,0],[1,[2,""]],[1,[2,""]]]],[17,345,null,374425036740744,false,[[4,150],[1,[2,"amongus"]],[3,0],[1,[2,""]],[1,[2,""]]]],[17,345,null,916734055037470,false,[[4,153],[1,[2,"french"]],[3,0],[1,[2,""]],[1,[2,""]]]],[17,345,null,538856964222463,false,[[4,154],[1,[2,"english"]],[3,0],[1,[2,""]],[1,[2,""]]]],[17,345,null,283409576567506,false,[[4,155],[1,[2,"spanish"]],[3,0],[1,[2,""]],[1,[2,""]]]],[17,345,null,509968611087976,false,[[4,156],[1,[2,"brazilian"]],[3,0],[1,[2,""]],[1,[2,""]]]],[17,345,null,402782407942150,false,[[4,152],[1,[2,"cmg"]],[3,0],[1,[2,""]],[1,[2,""]]]],[17,345,null,394535684014583,false,[[4,157],[1,[2,"shyguy"]],[3,0],[1,[2,""]],[1,[2,""]]]],[17,346,null,195489443870218,false]]],[0,null,false,null,886910214133860,[[-1,98,null,1,false,false,false,339296582875753,false],[24,303,null,0,false,false,false,895407816162829,false,[[3,0],[13]]]],[[8,304,null,621907758193215,false,[[1,[2,"Skins"]],[12,"skins.json"]]]]],[0,null,false,null,581757901361853,[[8,305,null,1,false,false,false,713278767466190,false,[[1,[2,"Skins"]]]]],[[24,306,null,293028301736217,false,[[1,[20,8,307,true,null]],[3,0],[13]]],[7,308,null,206536568341537,false,[[1,[2,"Skins"]],[1,[20,8,307,true,null]]]]]]]],[0,[true,"Skins > API"],false,null,285000074836405,[[-1,72,null,0,false,false,false,285000074836405,false,[[1,[2,"Skins > API"]]]]],[],[[0,null,false,null,265038762949972,[[0,169,null,2,false,false,false,611177692844586,false,[[1,[2,"Skins > Unlock"]]]],[12,149,null,0,false,true,false,593970920920356,false,[[1,[10,[2,"Skin"],[20,0,170,false,null,[[0,0]]]]]]]],[[0,80,null,875546572351476,false,[[1,[2,"Save > Skin"]],[13,[7,[20,0,170,false,null,[[0,0]]]]]]],[194,103,null,912163420874407,false,[[3,2],[1,[2,"Skin"]],[1,[20,0,160,false,null,[[2,"Skin > Name"],[20,0,170,false,null,[[0,0]]]]]],[1,[2,""]]]]],[[1,"title",1,"",false,false,396542816640720,false],[0,null,false,null,896983731152935,[],[[167,311,null,352121968551891,false,[[1,[2,"getLanguageValue"]],[13,[7,[21,30,true,null,0]],[7,[2,"skinunlocked"]],[7,[2,"text"]],[7,[2,"Skin Unlocked !"]],[7,[2,""]]]]],[-1,101,null,168486059068200,false,[[11,"title"],[7,[20,167,312,false,null]]]],[167,311,null,559191272743731,false,[[1,[2,"findLanguageKey"]],[13,[7,[2,"en-us"]],[7,[20,0,160,false,null,[[2,"Skins > Name"],[20,0,170,false,null,[[0,0]]]]]]]]],[167,311,null,444858633259840,false,[[1,[2,"getLanguageValue"]],[13,[7,[21,30,true,null,0]],[7,[20,167,312,false,null]],[7,[2,"text"]],[7,[20,0,160,false,null,[[2,"Skins > Name"],[20,0,170,false,null,[[0,0]]]]]],[7,[2,""]]]]],[0,80,null,708890456718975,false,[[1,[2,"Notification > Image"]],[13,[7,[23,"title"]],[7,[20,167,312,false,null]],[7,[20,0,160,false,null,[[2,"Skins > Icon"],[20,0,170,false,null,[[0,0]]]]]]]]]]]]],[0,null,false,null,765731176690143,[[0,169,null,2,false,false,false,599004354885987,false,[[1,[2,"Skins > Gold"]]]]],[],[[1,"title",1,"",false,false,156462875847915,false],[0,null,false,null,676242058575065,[],[[167,311,null,476635613116064,false,[[1,[2,"getLanguageValue"]],[13,[7,[21,30,true,null,0]],[7,[2,"goldearned"]],[7,[2,"text"]],[7,[2,"Gold earned !"]],[7,[2,""]]]]],[-1,101,null,370163394363156,false,[[11,"title"],[7,[20,167,312,false,null]]]],[167,311,null,235692096420232,false,[[1,[2,"getLanguageValue"]],[13,[7,[21,30,true,null,0]],[7,[2,"xgoldearned"]],[7,[2,"text"]],[7,[2,"{0} Gold earned"]],[7,[2,""]]]]],[167,311,null,917036652494424,false,[[1,[2,"processString"]],[13,[7,[20,167,312,false,null]],[7,[20,0,170,false,null,[[0,0]]]]]]],[0,80,null,399188959344877,false,[[1,[2,"Notification > Alert"]],[13,[7,[23,"title"]],[7,[20,167,312,false,null]]]]],[12,333,null,254099650132872,false,[[1,[2,"Gold"]],[0,[20,0,170,false,null,[[0,0]]]]]]]]]],[0,null,false,null,961924603234818,[[0,169,null,2,false,false,false,666749949568765,false,[[1,[2,"Skins > Name"]]]]],[[0,171,null,732494785459614,false,[[7,[20,24,310,false,null,[[0,0],[20,0,170,false,null,[[0,0]]],[2,"name"]]]]]]]],[0,null,false,null,357337817854501,[[0,169,null,2,false,false,false,387851312576378,false,[[1,[2,"Skins > Skin"]]]]],[[0,171,null,694356799901475,false,[[7,[20,24,310,false,null,[[0,0],[20,0,170,false,null,[[0,0]]],[2,"skin"]]]]]]]],[0,null,false,null,597881569013600,[[0,169,null,2,false,false,false,151415681783390,false,[[1,[2,"Skins > Lang"]]]]],[[0,171,null,632900343506526,false,[[7,[20,24,310,false,null,[[0,0],[20,0,170,false,null,[[0,0]]],[2,"lang"]]]]]]]],[0,null,false,null,326974436814308,[[0,169,null,2,false,false,false,100926794921003,false,[[1,[2,"Skins > Icon"]]]]],[[0,171,null,944562018446259,false,[[7,[20,24,310,false,null,[[0,0],[20,0,170,false,null,[[0,0]]],[2,"icon"]]]]]]]],[0,null,false,null,836871499560619,[[0,169,null,2,false,false,false,760885007200923,false,[[1,[2,"Skins > Hidden"]]]]],[[0,171,null,639867336014152,false,[[7,[20,24,310,false,null,[[0,0],[20,0,170,false,null,[[0,0]]],[2,"hidden"]]]]]]]],[0,null,false,null,141108112417058,[[0,169,null,2,false,false,false,710513841676231,false,[[1,[2,"Skins > Buyable"]]]]],[[0,171,null,383464589548573,false,[[7,[19,347,[[4,[16,[20,24,310,false,null,[[0,0],[20,0,170,false,null,[[0,0]]],[2,"price"]]],[0,0]],[14,[20,24,310,false,null,[[0,0],[20,0,170,false,null,[[0,0]]],[2,"achievement"]]],[0,0]]],[0,0],[0,1]]]]]]]],[0,null,false,null,533039341729705,[[0,169,null,2,false,false,false,540813695749347,false,[[1,[2,"Skins > Price"]]]]],[[0,171,null,378258192968555,false,[[7,[20,24,310,false,null,[[0,0],[20,0,170,false,null,[[0,0]]],[2,"price"]]]]]]]],[0,null,false,null,185232306242911,[[0,169,null,2,false,false,false,999707528379246,false,[[1,[2,"Skins > Achievement"]]]]],[[0,171,null,110383138784748,false,[[7,[20,24,310,false,null,[[0,0],[20,0,170,false,null,[[0,0]]],[2,"achievement"]]]]]]]]]]]]]],["Inputs",[[0,[true,"Inputs"],false,null,396453782658897,[[-1,72,null,0,false,false,false,396453782658897,false,[[1,[2,"Inputs"]]]]],[],[[0,[true,"Inputs > Listen"],false,null,898890600748449,[[-1,72,null,0,false,false,false,898890600748449,false,[[1,[2,"Inputs > Listen"]]]]],[],[[0,null,false,null,472919093318492,[[2,348,null,1,false,false,false,983474172434210,false],[16,107,null,0,false,false,false,507089535810307,false,[[10,4]]]],[[0,80,null,184540799660959,false,[[1,[2,"Inputs > Set Input"]],[13,[7,[21,16,false,null,5]],[7,[20,2,349,false,null]]]]]]]]],[0,[true,"Inputs > API"],false,null,446914502717137,[[-1,72,null,0,false,false,false,446914502717137,false,[[1,[2,"Inputs > API"]]]]],[],[[0,null,false,null,504456828454720,[[0,169,null,2,false,false,false,533441397409408,false,[[1,[2,"Inputs > Listen"]]]]],[],[[1,"Next",0,0,false,false,886207361980074,false],[0,null,false,null,994024371780197,[],[[-1,101,null,635909119075089,false,[[11,"Next"],[7,[20,0,170,false,null,[[0,0]]]]]],[16,316,null,381912579286486,false,[[10,5],[7,[23,"Next"]]]],[16,197,null,598046752322292,false,[[10,4],[3,1]]]]]]],[0,null,false,null,345290290605776,[[0,169,null,2,false,false,false,236622341323652,false,[[1,[2,"Inputs > Listen Stop"]]]]],[[16,197,null,974098017361629,false,[[10,4],[3,0]]]]],[0,null,false,null,132437173187846,[[0,169,null,2,false,false,false,204499990796128,false,[[1,[2,"Inputs > Set Input"]]]]],[[16,197,null,864386309026991,false,[[10,4],[3,0]]]],[[1,"Next",0,0,false,false,242117534566788,false],[1,"Value",0,0,false,false,316765615675353,false],[0,null,false,null,954866613547619,[],[[-1,101,null,925460098365563,false,[[11,"Next"],[7,[20,0,170,false,null,[[0,0]]]]]],[-1,101,null,281188270593060,false,[[11,"Value"],[7,[20,0,170,false,null,[[0,1]]]]]]]],[0,null,false,null,277267330848150,[[-1,100,null,0,false,false,false,142654927405640,false,[[11,"Next"],[8,0],[7,[0,0]]]]],[[16,316,null,792154857902448,false,[[10,0],[7,[23,"Value"]]]]]],[0,null,false,null,996175268269768,[[-1,100,null,0,false,false,false,842352030365841,false,[[11,"Next"],[8,0],[7,[0,1]]]]],[[16,316,null,107193480529298,false,[[10,1],[7,[23,"Value"]]]]]],[0,null,false,null,844490852075328,[[-1,100,null,0,false,false,false,979545257605818,false,[[11,"Next"],[8,0],[7,[0,2]]]]],[[16,316,null,816563376411410,false,[[10,2],[7,[23,"Value"]]]]]],[0,null,false,null,237945038156421,[[-1,100,null,0,false,false,false,625350773318108,false,[[11,"Next"],[8,0],[7,[0,3]]]]],[[16,316,null,773651811526191,false,[[10,3],[7,[23,"Value"]]]]]]]]]]]]]],["Debug",[[0,[true,"Debug"],false,null,813440597276459,[[-1,72,null,0,false,false,false,813440597276459,false,[[1,[2,"Debug"]]]]],[],[[0,null,false,null,632250327199747,[[-1,127,null,0,false,false,false,245847810881614,false,[[7,[20,42,350,false,null]],[8,4],[7,[0,0]]]]],[],[[0,null,false,null,596038451878668,[[1,107,null,0,false,false,false,421353368635517,false,[[10,15]]]],[],[[0,null,false,null,990750887089517,[[-1,102,null,0,false,false,false,281382204567400,false]],[[22,239,null,749786969183214,false,[[0,[0,0]],[0,[0,6]],[0,[0,1]]]],[23,351,null,368314107846358,false,[[1,[2,"Record Mode"]]]]]],[1,"totdt",0,0,true,false,654895333309259,false],[0,null,false,null,586756905995509,[],[[-1,213,null,468280866907796,false,[[11,"totdt"],[7,[19,79]]]]]],[0,null,false,null,985387535932122,[[-1,252,null,0,true,false,false,281860481998255,false],[-1,100,null,0,false,false,false,510825611028930,false,[[11,"totdt"],[8,4],[7,[1,0.01666666666666667]]]]],[[-1,253,null,857852363562297,false,[[11,"totdt"],[7,[1,0.01666666666666667]]]]],[[0,null,false,null,732973374709271,[[42,77,null,0,false,true,false,496856804396213,false,[[10,16]]],[-1,127,null,0,false,false,false,676492706390776,false,[[7,[19,226]],[8,4],[7,[0,0]]]]],[[22,238,null,444046242678374,false,[[3,0],[7,[0,0]],[3,0]]],[22,352,null,419920161819661,false,[[0,[5,[20,22,251,false,null],[0,1]]],[0,[0,0]],[7,[20,42,121,false,null]]]],[22,352,null,787795009440555,false,[[0,[5,[20,22,251,false,null],[0,1]]],[0,[0,1]],[7,[20,42,122,false,null]]]],[22,352,null,809549689249459,false,[[0,[5,[20,22,251,false,null],[0,1]]],[0,[0,2]],[7,[20,42,87,false,null]]]],[22,352,null,165244712193070,false,[[0,[5,[20,22,251,false,null],[0,1]]],[0,[0,3]],[7,[21,42,true,null,0]]]],[22,352,null,822257236929168,false,[[0,[5,[20,22,251,false,null],[0,1]]],[0,[0,4]],[7,[20,42,353,false,null]]]],[22,352,null,335238393612995,false,[[0,[5,[20,22,251,false,null],[0,1]]],[0,[0,5]],[7,[21,42,false,null,2]]]]],[[0,null,false,null,927683696777362,[[-1,109,null,0,false,false,false,289226740728722,false]],[],[[0,null,true,null,323343641955910,[[42,76,null,0,false,false,false,748099233587083,false,[[4,44]]],[2,284,null,1,false,false,false,830665489318166,false,[[9,114]]]],[[23,354,null,471567428864770,false,[[1,[20,22,355,true,null]]]],[4,285,null,111943643378143,false,[[3,0],[7,[20,22,355,true,null]]]],[-1,99,null,208887955285562,false,[[0,[0,0]]]],[1,197,null,585287826670849,false,[[10,15],[3,0]]],[-1,266,null,338490241344082,false,[[4,42],[5,[2,"Layer 0"]],[0,[0,0]],[0,[0,0]]]],[42,114,null,246019208801216,false,[[10,16],[3,1]]],[42,82,null,204463017906433,false,[[10,17],[7,[20,22,355,true,null]]]]]]]]]]]]]],[0,null,false,null,460948409870986,[[-1,75,null,0,false,false,false,354907195321572,false]],[],[[0,null,false,null,376983480439962,[[2,284,null,1,false,false,false,276933341178219,false,[[9,114]]],[-1,109,null,0,false,false,false,305831643556225,false]],[[1,197,null,113592672746499,false,[[10,15],[3,1]]]],[[0,null,false,null,146032293692647,[[42,77,null,0,false,false,false,338763278213161,false,[[10,16]]]],[[42,81,null,422308607766162,false]]]]],[0,null,false,null,175812837868736,[[-1,98,null,1,false,false,false,869107967170271,false],[-1,127,null,0,false,false,false,266604103302309,false,[[7,[20,53,350,false,null]],[8,4],[7,[0,0]]]],[-1,127,null,0,false,false,false,433237901021406,false,[[7,[21,53,true,null,1]],[8,1],[7,[2,""]]]]],[[-1,266,null,347117999349066,false,[[4,42],[5,[2,"Layer 0"]],[0,[0,0]],[0,[0,0]]]],[42,114,null,478114353506939,false,[[10,16],[3,1]]],[42,82,null,547864873726972,false,[[10,17],[7,[21,53,true,null,1]]]],[22,257,null,209981098593543,false,[[1,[21,53,true,null,1]]]]],[[0,null,false,null,459999210434512,[[1,107,null,0,false,false,false,818332651015038,false,[[10,10]]]],[[42,356,null,424948554755554,false,[[3,1]]]]],[0,null,false,null,945262331040864,[[-1,75,null,0,false,false,false,763585543909220,false]],[[42,356,null,726880264464520,false,[[3,0]]]]]]],[0,null,false,null,257770542104024,[[-1,102,null,0,false,false,false,875132791627644,false]],[[23,351,null,992612393090745,false,[[1,[2,"Record Stopped"]]]]]]]]]],[0,null,false,null,413253338281855,[[-1,98,null,1,false,false,false,908129784258038,false]],[],[[0,null,false,null,142074069528551,[[12,295,null,0,false,false,false,495587417085400,false,[[1,[2,"Levels"]],[8,2],[7,[19,105,[[19,106,[[19,104],[0,1],[2," "]]]]]]]]],[[12,111,null,265410935144573,false,[[1,[2,"Levels"]],[7,[19,105,[[19,106,[[19,104],[0,1],[2," "]]]]]]]]]],[0,null,false,null,913383672412579,[[1,107,null,0,false,false,false,294904323149369,false,[[10,10]]]],[[42,356,null,524920240050461,false,[[3,1]]],[50,356,null,499590493462937,false,[[3,1]]]]],[0,null,false,null,365779814782971,[[-1,75,null,0,false,false,false,781195870052483,false]],[[42,356,null,360878440508636,false,[[3,0]]],[50,356,null,351670528894151,false,[[3,0]]]]],[0,null,false,null,494299256462245,[[1,107,null,0,false,false,false,907387576574166,false,[[10,11]]]],[[1,316,null,756608187659490,false,[[10,8],[7,[20,17,357,true,null]]]]]]]],[0,null,false,null,652330158058176,[[-1,328,null,1,false,false,false,644897008873232,false]],[[1,316,null,661438683872999,false,[[10,14],[7,[19,104]]]]]],[0,null,true,null,269990095759579,[[2,284,null,1,false,false,false,242446502649053,false,[[9,113]]],[0,169,null,2,false,false,false,491166406462066,false,[[1,[2,"Debug > Toggle"]]]]],[[1,358,null,115244191650001,false,[[10,10]]]],[[0,null,true,null,755800405424005,[[-1,109,null,0,false,false,false,246053107262549,false],[1,107,null,0,false,false,false,134911279887466,false,[[10,17]]]],[],[[0,null,false,null,328687968126779,[[1,107,null,0,false,false,false,746289422138022,false,[[10,10]]]],[[42,356,null,176052176655598,false,[[3,1]]],[50,356,null,814389902251056,false,[[3,1]]]]],[0,null,false,null,717568070679781,[[-1,75,null,0,false,false,false,708227983205618,false]],[[42,356,null,838324858754224,false,[[3,0]]],[50,356,null,974975799852560,false,[[3,0]]]]]]]]]]],[0,null,false,null,501015244627881,[[0,169,null,2,false,false,false,785234951731818,false,[[1,[2,"dumpSave"]]]]],[[4,285,null,658876563589455,false,[[3,0],[7,[20,12,359,true,null]]]]]],[0,null,false,null,342694615633387,[[0,169,null,2,false,false,false,483482124333366,false,[[1,[2,"execCode"]]]]],[[4,198,null,395901901059497,false,[[1,[20,0,170,false,null,[[0,0]]]]]]]]]],["Language",[[1,"LANGUAGELOADEDSIGNAL",1,"languageLoaded",false,true,508018423785804,false],[0,[true,"Language"],false,null,575826132229970,[[-1,72,null,0,false,false,false,575826132229970,false,[[1,[2,"Language"]]]]],[],[[1,"DEFAULTLOCALE",1,"en-us",false,true,864047399338267,false],[0,[true,"Language > Init"],false,null,844956328180398,[[-1,72,null,0,false,false,false,844956328180398,false,[[1,[2,"Language > Init"]]]]],[],[[0,null,false,null,369080485177415,[[211,360,null,1,false,false,false,550199406713766,false]],[[211,361,null,603025662346772,false,[[10,0],[7,[20,211,362,false,null]]]],[211,361,null,162017488276494,false,[[10,4],[7,[20,211,363,false,null]]]],[211,361,null,153088980502832,false,[[10,5],[7,[20,211,364,false,null]]]],[-1,99,null,894555992850907,false,[[0,[0,0]]]],[211,361,null,805991577208538,false,[[10,0],[7,[20,211,362,false,null]]]],[211,361,null,642153567971719,false,[[10,4],[7,[20,211,363,false,null]]]],[211,361,null,289466827736745,false,[[10,5],[7,[20,211,364,false,null]]]]]],[0,null,false,null,318983577018271,[[212,286,null,1,false,false,false,613779832376752,false]],[[212,365,null,889401952173541,false,[[10,10],[7,[20,212,366,false,null]]]],[212,365,null,172749770877060,false,[[10,11],[7,[20,212,271,false,null]]]],[-1,99,null,894230206206485,false,[[0,[0,0]]]],[212,365,null,867660515773385,false,[[10,10],[7,[20,212,366,false,null]]]],[212,365,null,236349027417754,false,[[10,11],[7,[20,212,271,false,null]]]]]],[0,null,false,null,699870053441279,[[213,360,null,1,false,false,false,230241754549063,false]],[[213,367,null,374832665715014,false,[[1,[2,"Retron2000"]],[1,[2,"./fonts.css"]]]]]],[0,null,false,null,634239899722242,[[212,286,null,1,false,false,false,888362438246238,false]],[],[[1,"key",1,"",false,false,823997613086452,false],[1,"text",1,"",false,false,557467623667490,false],[1,"visible",0,0,true,false,482322649205085,false],[0,null,false,null,315549600256296,[[212,368,null,0,false,true,false,110505542546119,false,[[10,4]]]],[[-1,101,null,346306962497900,false,[[11,"visible"],[7,[0,0]]]]],[[0,null,false,null,461713170669751,[[212,369,null,0,false,false,false,777993046702803,false]],[[-1,101,null,929584913962627,false,[[11,"visible"],[7,[0,1]]]]]],[0,null,false,null,544782775545390,[],[[212,370,null,510984092564987,false,[[3,0]]]]]]],[0,null,false,null,957840732643647,[],[[-1,99,null,246146295958677,false,[[0,[0,0]]]]],[[0,null,false,null,371157992775356,[[212,368,null,0,false,false,false,167396097898496,false,[[10,0]]]],[],[[0,null,false,null,453966682906081,[],[[-1,315,null,749390059838264,false,[[1,[23,"LANGUAGELOADEDSIGNAL"]]]],[167,311,null,533841441625750,false,[[1,[2,"languageKeyExists"]],[13,[7,[21,30,true,null,0]],[7,[21,212,true,null,2]]]]]],[[0,null,false,null,836548159751192,[[30,108,null,0,false,false,false,779776502003711,false,[[10,0],[8,0],[7,[2,""]]]]],[[30,316,null,994389686494623,false,[[10,0],[7,[23,"DEFAULTLOCALE"]]]]]],[0,null,false,null,599641785895105,[[167,371,null,0,false,false,false,687937521445502,false,[[8,0],[7,[0,1]]]]],[[-1,101,null,978198078890522,false,[[11,"key"],[7,[21,212,true,null,2]]]]]],[0,null,false,null,190978376870664,[[-1,75,null,0,false,false,false,709631506800963,false]],[],[[0,null,false,null,641372729491575,[[212,368,null,0,false,false,false,342350753032494,false,[[10,1]]]],[[167,311,null,475204315348265,false,[[1,[2,"findLanguageKey"]],[13,[7,[21,212,true,null,3]],[7,[20,212,372,true,null]]]]]],[[0,null,false,null,103432151075862,[],[[-1,101,null,974191450616625,false,[[11,"key"],[7,[20,167,312,false,null]]]]]]]]]],[0,null,false,null,832795022761256,[[-1,100,null,0,false,false,false,122573884317728,false,[[11,"key"],[8,1],[7,[2,""]]]]],[[167,311,null,620032844696784,false,[[1,[2,"getLanguageValue"]],[13,[7,[21,30,true,null,0]],[7,[23,"key"]],[7,[2,"text"]],[7,[2,""]],[7,[2,""]]]]],[-1,101,null,254908300606110,false,[[11,"text"],[7,[20,167,312,false,null]]]]]],[0,null,false,null,949334064893367,[[-1,75,null,0,false,false,false,904210815175077,false]],[[-1,101,null,936358933795019,false,[[11,"text"],[7,[2,""]]]]]],[0,null,false,null,549618371074241,[[-1,100,null,0,false,false,false,318991260835468,false,[[11,"text"],[8,1],[7,[2,""]]]]],[],[[0,null,false,null,142796115563107,[[212,368,null,0,false,false,false,652527794368672,false,[[10,4]]]],[[212,155,null,294599826197870,false,[[7,[23,"text"]]]]],[[0,null,false,null,448610269358034,[[-1,100,null,0,false,false,false,743645054115125,false,[[11,"visible"],[8,0],[7,[0,1]]]]],[[-1,99,null,681289090352849,false,[[0,[0,0]]]],[212,370,null,138508873415146,false,[[3,1]]]]]]],[0,null,false,null,160933505643518,[[-1,75,null,0,false,false,false,763457703910603,false]],[],[[0,null,true,null,809648797373849,[[212,368,null,0,false,false,false,238530657141104,false,[[10,5]]],[50,76,null,0,false,false,false,519683283359330,false,[[4,212]]]],[[212,370,null,586376612704721,false,[[3,0]]]],[[0,null,false,null,836826884819087,[[-1,100,null,0,false,false,false,865754363099781,false,[[11,"text"],[8,1],[7,[2,""]]]]],[[212,155,null,911823439624393,false,[[7,[23,"text"]]]]]]]],[0,null,false,null,272432374120391,[],[[-1,266,null,843683073717859,false,[[4,196],[5,[20,212,373,false,null]],[0,[22,212,"GameObject",374,false,null,[[2,"x"]]]],[0,[22,212,"GameObject",374,false,null,[[2,"y"]]]]]],[196,375,null,934915272399031,false,[[0,[20,212,271,false,null]],[0,[20,212,376,false,null]]]],[196,377,null,709746241580125,false,[[7,[23,"text"]]]],[167,311,null,969313823587941,false,[[1,[2,"getLanguageValue"]],[13,[7,[21,30,true,null,0]],[7,[23,"key"]],[7,[2,"font"]],[7,[2,"Retron2000"]],[7,[21,212,true,null,7]]]]],[196,367,null,456082965188214,false,[[1,[20,167,312,false,null]],[1,[2,"./fonts.css"]]]],[167,311,null,756335884767794,false,[[1,[2,"getLanguageValue"]],[13,[7,[21,30,true,null,0]],[7,[23,"key"]],[7,[2,"size"]],[7,[6,[20,196,362,false,null],[20,212,366,false,null]]],[7,[21,212,true,null,7]]]]],[196,378,null,379837971830285,false,[[0,[20,167,312,false,null]]]],[167,311,null,328429411638418,false,[[1,[2,"getLanguageValue"]],[13,[7,[21,30,true,null,0]],[7,[23,"key"]],[7,[2,"alignX"]],[7,[0,50]],[7,[21,212,true,null,7]]]]],[196,379,null,960783378347078,false,[[0,[20,167,312,false,null]]]],[167,311,null,964436958900776,false,[[1,[2,"getLanguageValue"]],[13,[7,[21,30,true,null,0]],[7,[23,"key"]],[7,[2,"alignY"]],[7,[0,50]],[7,[21,212,true,null,7]]]]],[196,380,null,132617689026344,false,[[0,[20,167,312,false,null]]]],[167,311,null,647262725589459,false,[[1,[2,"getLanguageValue"]],[13,[7,[21,30,true,null,0]],[7,[23,"key"]],[7,[2,"top"]],[7,[0,0]],[7,[21,212,true,null,7]]]]],[196,381,null,866963936269755,false,[[0,[5,[20,196,364,false,null],[20,167,312,false,null]]]]],[196,382,null,508296042503267,false,[[0,[4,[20,196,383,false,null],[20,167,312,false,null]]]]],[167,311,null,181125024909109,false,[[1,[2,"getLanguageValue"]],[13,[7,[21,30,true,null,0]],[7,[23,"key"]],[7,[2,"bottom"]],[7,[0,0]],[7,[21,212,true,null,7]]]]],[196,381,null,692273201542214,false,[[0,[5,[20,196,364,false,null],[20,167,312,false,null]]]]],[167,311,null,162668851248881,false,[[1,[2,"getLanguageValue"]],[13,[7,[21,30,true,null,0]],[7,[23,"key"]],[7,[2,"left"]],[7,[0,0]],[7,[21,212,true,null,7]]]]],[196,384,null,648711135397107,false,[[0,[5,[20,196,363,false,null],[20,167,312,false,null]]]]],[196,385,null,528652978370207,false,[[0,[4,[20,196,386,false,null],[20,167,312,false,null]]]]],[167,311,null,606462503687601,false,[[1,[2,"getLanguageValue"]],[13,[7,[21,30,true,null,0]],[7,[23,"key"]],[7,[2,"right"]],[7,[0,0]],[7,[21,212,true,null,7]]]]],[196,384,null,406985792267085,false,[[0,[5,[20,196,363,false,null],[20,167,312,false,null]]]]],[196,387,null,709070469299684,false,[[0,[20,212,388,false,null]]]],[196,389,null,685562414768690,false,[[0,[20,212,390,false,null]]]],[196,361,null,622605241738035,false,[[10,6],[7,[5,[22,212,"GameObject",374,false,null,[[2,"x"]]],[20,196,386,false,null]]]]],[196,361,null,104198120670459,false,[[10,7],[7,[5,[22,212,"GameObject",374,false,null,[[2,"y"]]],[20,196,383,false,null]]]]],[196,361,null,559502555841758,false,[[10,5],[7,[20,196,364,false,null]]]],[196,361,null,824070214833886,false,[[10,4],[7,[20,196,363,false,null]]]],[196,391,null,968584453230777,false,[[3,0],[4,212]]]],[[0,null,false,null,332330875826467,[[212,392,null,0,false,false,false,664812046728523,false,[[10,12],[8,1],[7,[0,0]]]]],[[196,393,null,335347907358347,false,[[0,[19,394,[[0,255],[0,255],[0,255]]]]]]]],[0,null,false,null,128952622387918,[[212,368,null,0,false,false,false,938943482930038,false,[[10,9]]]],[[196,389,null,690201103513764,false,[[0,[20,212,390,false,null]]]]]],[0,null,true,null,496471196438987,[[212,368,null,0,false,false,false,631446714754344,false,[[10,5]]],[50,76,null,0,false,false,false,172352878021793,false,[[4,212]]]],[[196,395,null,302118873556914,false,[[10,2],[3,1]]],[196,361,null,205119254037388,false,[[10,3],[7,[20,212,396,false,null]]]]]],[0,null,false,null,363733787258513,[[-1,75,null,0,false,false,false,989463764231518,false]],[[212,397,null,479415111679602,false]]],[0,null,false,null,871628886325528,[[212,368,null,0,false,false,false,460861454349913,false,[[10,8]]]],[[196,395,null,840953465341722,false,[[10,1],[3,1]]],[196,361,null,440665576640353,false,[[10,0],[7,[20,196,362,false,null]]]]]],[0,null,false,null,738038033785974,[[-1,75,null,0,false,false,false,901095830567372,false]],[[196,395,null,506913698737014,false,[[10,1],[3,0]]]]],[0,null,false,null,804279600815158,[],[[196,361,null,808832391540180,false,[[10,0],[7,[20,196,362,false,null]]]],[196,361,null,347298810519908,false,[[10,4],[7,[20,196,363,false,null]]]]]]]]]]]]]],[0,null,false,null,477738532975087,[[30,107,null,0,false,false,false,954117952061446,false,[[10,2]]]],[[-1,398,null,595723795694252,false,[[1,[23,"LANGUAGELOADEDSIGNAL"]]]]]]]],[0,null,false,null,410265638911304,[[-1,75,null,0,false,false,false,683162925381490,false],[212,368,null,0,false,false,false,821972197570691,false,[[10,6]]]],[[4,285,null,275159054979362,false,[[3,0],[7,[2,"Spritefont created"]]]]],[[0,null,false,null,193179727073420,[[212,368,null,0,false,false,false,464627342852121,false,[[10,4]]]],[[212,155,null,276810034930109,false,[[7,[23,"text"]]]]]],[0,null,false,null,389729289585626,[[-1,75,null,0,false,false,false,559628721122058,false]],[],[[0,null,true,null,565354280113831,[[212,368,null,0,false,false,false,651628281517898,false,[[10,5]]],[50,76,null,0,false,false,false,619166649272005,false,[[4,212]]]],[[212,370,null,843823204391645,false,[[3,0]]]]],[0,null,false,null,163869270760944,[],[[-1,266,null,353572004388988,false,[[4,196],[5,[20,212,373,false,null]],[0,[22,212,"GameObject",374,false,null,[[2,"x"]]]],[0,[22,212,"GameObject",374,false,null,[[2,"y"]]]]]],[196,375,null,396336910279006,false,[[0,[20,212,271,false,null]],[0,[20,212,376,false,null]]]],[196,377,null,530194068031087,false,[[7,[20,212,372,true,null]]]],[167,311,null,671921222163978,false,[[1,[2,"getLanguageValue"]],[13,[7,[21,30,true,null,0]],[7,[2,""]],[7,[2,"font"]],[7,[2,"Retron2000"]],[7,[21,212,true,null,7]]]]],[196,367,null,456055287170334,false,[[1,[20,167,312,false,null]],[1,[2,"./fonts.css"]]]],[167,311,null,840299126161007,false,[[1,[2,"getLanguageValue"]],[13,[7,[21,30,true,null,0]],[7,[2,""]],[7,[2,"size"]],[7,[6,[20,196,362,false,null],[20,212,366,false,null]]],[7,[21,212,true,null,7]]]]],[196,378,null,396928817642211,false,[[0,[20,167,312,false,null]]]],[167,311,null,165058274082760,false,[[1,[2,"getLanguageValue"]],[13,[7,[21,30,true,null,0]],[7,[2,""]],[7,[2,"alignX"]],[7,[0,50]],[7,[21,212,true,null,7]]]]],[196,379,null,917406863107284,false,[[0,[20,167,312,false,null]]]],[167,311,null,828022007659409,false,[[1,[2,"getLanguageValue"]],[13,[7,[21,30,true,null,0]],[7,[2,""]],[7,[2,"alignY"]],[7,[0,50]],[7,[21,212,true,null,7]]]]],[196,380,null,872691304815308,false,[[0,[20,167,312,false,null]]]],[167,311,null,850038062688926,false,[[1,[2,"getLanguageValue"]],[13,[7,[21,30,true,null,0]],[7,[23,"key"]],[7,[2,"top"]],[7,[0,0]],[7,[21,212,true,null,7]]]]],[196,381,null,821186242728759,false,[[0,[5,[20,196,364,false,null],[20,167,312,false,null]]]]],[196,382,null,138839615473396,false,[[0,[4,[20,196,383,false,null],[20,167,312,false,null]]]]],[167,311,null,216072369363469,false,[[1,[2,"getLanguageValue"]],[13,[7,[21,30,true,null,0]],[7,[23,"key"]],[7,[2,"bottom"]],[7,[0,0]],[7,[21,212,true,null,7]]]]],[196,381,null,824914008393998,false,[[0,[5,[20,196,364,false,null],[20,167,312,false,null]]]]],[167,311,null,921324553438892,false,[[1,[2,"getLanguageValue"]],[13,[7,[21,30,true,null,0]],[7,[23,"key"]],[7,[2,"left"]],[7,[0,0]],[7,[21,212,true,null,7]]]]],[196,384,null,498690603929753,false,[[0,[5,[20,196,363,false,null],[20,167,312,false,null]]]]],[196,385,null,639017933210442,false,[[0,[4,[20,196,386,false,null],[20,167,312,false,null]]]]],[167,311,null,178582447252034,false,[[1,[2,"getLanguageValue"]],[13,[7,[21,30,true,null,0]],[7,[23,"key"]],[7,[2,"right"]],[7,[0,0]],[7,[21,212,true,null,7]]]]],[196,384,null,961700060598394,false,[[0,[5,[20,196,363,false,null],[20,167,312,false,null]]]]],[196,387,null,291826036683546,false,[[0,[20,212,388,false,null]]]],[196,389,null,398973563825070,false,[[0,[20,212,390,false,null]]]],[196,361,null,337151606863962,false,[[10,6],[7,[5,[22,212,"GameObject",374,false,null,[[2,"x"]]],[20,196,386,false,null]]]]],[196,361,null,170481893895467,false,[[10,7],[7,[5,[22,212,"GameObject",374,false,null,[[2,"y"]]],[20,196,383,false,null]]]]],[196,361,null,139800907453280,false,[[10,5],[7,[20,196,364,false,null]]]],[196,361,null,450141157595918,false,[[10,4],[7,[20,196,363,false,null]]]],[196,391,null,219969182193336,false,[[3,0],[4,212]]]],[[0,null,false,null,544270801666609,[[212,392,null,0,false,false,false,593211093554095,false,[[10,12],[8,1],[7,[0,0]]]]],[[196,393,null,905710450361462,false,[[0,[19,394,[[0,255],[0,255],[0,255]]]]]]]],[0,null,false,null,419482521842862,[[212,368,null,0,false,false,false,430033120097134,false,[[10,9]]]],[[196,389,null,370898850191911,false,[[0,[20,212,390,false,null]]]]]],[0,null,true,null,535763610595617,[[212,368,null,0,false,false,false,416529345885879,false,[[10,5]]],[50,76,null,0,false,false,false,660392939744504,false,[[4,212]]]],[[196,395,null,231001803705317,false,[[10,2],[3,1]]],[196,361,null,762361818097329,false,[[10,3],[7,[20,212,396,false,null]]]]]],[0,null,false,null,681683392853122,[[-1,75,null,0,false,false,false,210058200583126,false]],[[212,397,null,863254691757990,false]]],[0,null,false,null,742954536179174,[[212,368,null,0,false,false,false,248141426969685,false,[[10,8]]]],[[196,395,null,422279271960951,false,[[10,1],[3,1]]],[196,361,null,699209377186805,false,[[10,0],[7,[20,196,362,false,null]]]]]],[0,null,false,null,379135922604961,[[-1,75,null,0,false,false,false,785004512340771,false]],[[196,395,null,618476170478163,false,[[10,1],[3,0]]]]],[0,null,false,null,551233378233070,[],[[196,361,null,453476790908608,false,[[10,0],[7,[20,196,362,false,null]]]],[196,361,null,377467013598304,false,[[10,4],[7,[20,196,363,false,null]]]]]]]]]],[0,null,false,null,439819055026783,[],[]]]]]]]],[0,null,false,null,984956434506639,[[70,256,null,1,false,false,false,847445073384960,false]],[],[[0,null,false,null,102824526990337,[[70,77,null,0,false,false,false,890629485060643,false,[[10,6]]]],[[-1,315,null,381019965336885,false,[[1,[23,"LANGUAGELOADEDSIGNAL"]]]],[70,82,null,341902189413780,false,[[10,9],[7,[20,70,185,false,null]]]]],[[0,null,false,null,304383899925464,[[70,73,null,0,false,false,false,805142336844398,false,[[10,4],[8,0],[7,[2,""]]]]],[[70,82,null,247275153850567,false,[[10,4],[7,[19,399,[[20,70,400,true,null]]]]]]]],[0,null,false,null,481736476724117,[],[[-1,266,null,782549102705143,false,[[4,196],[5,[20,70,401,false,null]],[0,[20,70,164,false,null,[[2,"topLeft"]]]],[0,[20,70,165,false,null,[[2,"topLeft"]]]]]],[196,402,null,124228957843109,false,[[0,[20,70,164,false,null,[[2,"topLeft"]]]],[0,[20,70,165,false,null,[[2,"topLeft"]]]]]],[196,375,null,115222391220120,false,[[0,[20,70,185,false,null]],[0,[20,70,187,false,null]]]],[167,311,null,503648542554742,false,[[1,[2,"getLanguageValue"]],[13,[7,[21,30,true,null,0]],[7,[21,70,true,null,4]],[7,[2,"text"]],[7,[2,""]],[7,[21,70,true,null,5]]]]],[196,377,null,707648916405583,false,[[7,[20,167,312,false,null]]]],[167,311,null,699985265230239,false,[[1,[2,"getLanguageValue"]],[13,[7,[21,30,true,null,0]],[7,[21,70,true,null,4]],[7,[2,"font"]],[7,[2,"Retron2000"]],[7,[21,70,true,null,5]]]]],[196,367,null,601230439256672,false,[[1,[20,167,312,false,null]],[1,[2,"./fonts.css"]]]],[167,311,null,616792998538896,false,[[1,[2,"getLanguageValue"]],[13,[7,[21,30,true,null,0]],[7,[21,70,true,null,4]],[7,[2,"size"]],[7,[6,[6,[20,196,362,false,null],[7,[20,70,185,false,null],[20,70,186,false,null]]],[0,2]]],[7,[21,70,true,null,5]]]]],[196,378,null,201075968465572,false,[[0,[20,167,312,false,null]]]],[167,311,null,877029106455715,false,[[1,[2,"getLanguageValue"]],[13,[7,[21,30,true,null,0]],[7,[21,70,true,null,4]],[7,[2,"alignX"]],[7,[0,50]],[7,[21,70,true,null,5]]]]],[196,379,null,686342762224026,false,[[0,[20,167,312,false,null]]]],[167,311,null,838305454679030,false,[[1,[2,"getLanguageValue"]],[13,[7,[21,30,true,null,0]],[7,[21,70,true,null,4]],[7,[2,"alignY"]],[7,[0,65]],[7,[21,70,true,null,5]]]]],[196,380,null,873681540690847,false,[[0,[20,167,312,false,null]]]],[167,311,null,920265667296077,false,[[1,[2,"getLanguageValue"]],[13,[7,[21,30,true,null,0]],[7,[21,70,true,null,4]],[7,[2,"top"]],[7,[0,0]],[7,[21,70,true,null,5]]]]],[196,381,null,409231671650955,false,[[0,[5,[20,196,364,false,null],[20,167,312,false,null]]]]],[196,382,null,469210638730005,false,[[0,[4,[20,196,383,false,null],[20,167,312,false,null]]]]],[167,311,null,670403125512183,false,[[1,[2,"getLanguageValue"]],[13,[7,[21,30,true,null,0]],[7,[21,70,true,null,4]],[7,[2,"bottom"]],[7,[0,0]],[7,[21,70,true,null,5]]]]],[196,381,null,501668002771666,false,[[0,[5,[20,196,364,false,null],[20,167,312,false,null]]]]],[167,311,null,905153299967844,false,[[1,[2,"getLanguageValue"]],[13,[7,[21,30,true,null,0]],[7,[21,70,true,null,4]],[7,[2,"left"]],[7,[0,0]],[7,[21,70,true,null,5]]]]],[196,384,null,156614364569723,false,[[0,[5,[20,196,363,false,null],[20,167,312,false,null]]]]],[196,385,null,303869392689642,false,[[0,[4,[20,196,386,false,null],[20,167,312,false,null]]]]],[167,311,null,100004166958584,false,[[1,[2,"getLanguageValue"]],[13,[7,[21,30,true,null,0]],[7,[21,70,true,null,4]],[7,[2,"right"]],[7,[0,0]],[7,[21,70,true,null,5]]]]],[196,384,null,587110688008435,false,[[0,[5,[20,196,363,false,null],[20,167,312,false,null]]]]],[196,387,null,358076711343530,false,[[0,[22,70,"GameObject",374,false,null,[[2,"angle"]]]]]],[196,389,null,742964197508726,false,[[0,[20,70,403,false,null]]]],[196,395,null,157672141890529,false,[[10,1],[3,1]]],[196,361,null,502160340692753,false,[[10,0],[7,[20,196,362,false,null]]]],[196,361,null,910665930994168,false,[[10,6],[7,[5,[20,196,386,false,null],[20,70,164,false,null,[[2,"topLeft"]]]]]]],[196,361,null,939677007182946,false,[[10,7],[7,[5,[20,196,383,false,null],[20,70,165,false,null,[[2,"topLeft"]]]]]]],[196,361,null,833104042683267,false,[[10,5],[7,[20,196,364,false,null]]]],[196,361,null,715544927025847,false,[[10,4],[7,[20,196,363,false,null]]]],[196,391,null,597318849179016,false,[[3,0],[4,70]]]],[[0,null,false,null,552095974192927,[[70,77,null,0,false,false,false,906249099435262,false,[[10,7]]]],[[70,82,null,189654896763986,false,[[10,8],[7,[20,196,404,false,null]]]],[196,361,null,307541979389146,false,[[10,3],[7,[20,70,124,false,null]]]]]],[0,null,false,null,732041159987484,[[-1,75,null,0,false,false,false,359848482837584,false]],[[70,405,"GameObject",766601851141072,false,[[4,196]]],[196,361,null,543767077778716,false,[[10,3],[7,[20,70,124,false,null]]]]]],[0,null,false,null,143848199172205,[],[[196,361,null,885201771298416,false,[[10,0],[7,[20,196,362,false,null]]]],[196,361,null,921211153552635,false,[[10,4],[7,[20,196,363,false,null]]]]]]]]]],[0,null,false,null,919948366549868,[[30,107,null,0,false,false,false,619362048187937,false,[[10,2]]]],[[-1,398,null,222490395679916,false,[[1,[23,"LANGUAGELOADEDSIGNAL"]]]]]],[0,null,false,null,664206588230442,[],[]]]],[0,null,false,null,746844627841351,[[211,406,null,0,false,false,false,135685803121751,false,[[10,1]]]],[[211,378,null,416520335404672,false,[[0,[6,[21,211,false,null,0],[7,[20,211,363,false,null],[21,211,false,null,4]]]]]]]],[0,null,false,null,373831650562627,[[212,368,null,0,false,false,false,284363779183700,false,[[10,8]]],[212,368,null,0,false,true,false,736948545432924,false,[[10,0]]],[212,368,null,0,false,true,false,389474095832985,false,[[10,6]]]],[[212,407,null,607509467615822,false,[[0,[6,[21,212,false,null,10],[7,[20,212,271,false,null],[21,212,false,null,11]]]]]]]],[0,null,false,null,585180466900201,[[211,406,null,0,false,false,false,305218895669468,false,[[10,2]]],[-1,117,null,0,true,false,false,712753611762968,false,[[4,211]]],[212,408,null,0,false,false,true,844156465134232,false,[[0,[21,211,false,null,3]]]]],[[211,377,null,937245188116876,false,[[7,[20,212,372,true,null]]]],[211,387,null,445019441609896,false,[[0,[20,212,388,false,null]]]],[211,402,null,668854758594504,false,[[0,[4,[22,212,"GameObject",374,false,null,[[2,"x"]]],[6,[21,211,false,null,6],[7,[20,212,271,false,null],[21,212,false,null,11]]]]],[0,[4,[22,212,"GameObject",374,false,null,[[2,"y"]]],[6,[21,211,false,null,7],[7,[20,212,271,false,null],[21,212,false,null,11]]]]]]],[211,375,null,652268577610406,false,[[0,[6,[21,211,false,null,4],[7,[20,212,271,false,null],[21,212,false,null,11]]]],[0,[6,[21,211,false,null,5],[7,[20,212,271,false,null],[21,212,false,null,11]]]]]],[211,391,null,500426021826483,false,[[3,0],[4,212]]],[212,370,null,323726144669593,false,[[3,0]]]],[[0,null,false,null,988943499666460,[[212,368,null,0,false,false,false,303786570893425,false,[[10,9]]]],[[211,389,null,323195556068877,false,[[0,[20,212,390,false,null]]]]]]]],[0,null,false,null,154670315076541,[[70,77,null,0,false,false,false,187697297287063,false,[[10,7]]],[-1,117,null,0,true,false,false,466782746305136,false,[[4,70]]],[211,409,null,0,false,false,true,376497614557181,false,[[0,[21,70,false,null,8]]]]],[[211,387,null,591415703422603,false,[[0,[20,70,87,false,null]]]],[211,402,null,281677548611484,false,[[0,[4,[20,70,164,false,null,[[2,"topLeft"]]],[6,[21,211,false,null,6],[7,[20,70,185,false,null],[21,70,false,null,9]]]]],[0,[4,[20,70,165,false,null,[[2,"topLeft"]]],[6,[21,211,false,null,7],[7,[20,70,185,false,null],[21,70,false,null,9]]]]]]],[211,375,null,273280472975479,false,[[0,[6,[21,211,false,null,4],[7,[20,70,185,false,null],[21,70,false,null,9]]]],[0,[6,[21,211,false,null,5],[7,[20,70,185,false,null],[21,70,false,null,9]]]]]],[211,391,null,837623656868576,false,[[3,0],[4,70]]]]]]],[0,[true,"Language > API"],false,null,510520860656034,[[-1,72,null,0,false,false,false,510520860656034,false,[[1,[2,"Language > API"]]]]],[],[[0,null,false,null,674558582218390,[[0,169,null,2,false,false,false,533011390234023,false,[[1,[2,"Language > LoadLanguageFile"]]]]],[[30,316,null,157028846095447,false,[[10,1],[7,[20,0,170,false,null,[[0,0]]]]]],[30,197,null,690119569657180,false,[[10,2],[3,1]]],[31,410,null,240197877910975,false,[[1,[20,0,170,false,null,[[0,0]]]]]],[12,111,null,199785119336597,false,[[1,[2,"Language"]],[7,[20,30,317,true,null]]]],[12,113,null,313017806596994,false]]],[0,null,false,null,975427285954712,[[0,169,null,2,false,false,false,259615473472116,false,[[1,[2,"Language > SetLocale"]]]]],[[30,316,null,789225842703134,false,[[10,0],[7,[20,0,170,false,null,[[0,0]]]]]],[12,111,null,982002688809825,false,[[1,[2,"Language"]],[7,[20,30,317,true,null]]]],[12,113,null,675422541823652,false],[-1,99,null,159175226932793,false,[[0,[0,0]]]],[-1,203,null,221651384107092,false]]],[0,null,false,null,629976361921088,[[0,169,null,2,false,false,false,736021682586338,false,[[1,[2,"Language > Loaded"]]]]],[[167,318,null,935652041669255,false,[[1,[2,"tempLanguageJSON"]],[7,[21,30,true,null,1]]]],[167,311,null,728781644794423,false,[[1,[2,"setLanguageJSON"]],[13]]],[167,311,null,727687466623165,false,[[1,[2,"getTranslations"]],[13]]],[-1,398,null,314594678723976,false,[[1,[23,"LANGUAGELOADEDSIGNAL"]]]]]]]]]]]],["Main Menu",[[2,"Common Menus",false],[2,"Gameplay",false],[2,"Player",false],[2,"Debug",false],[2,"Save",false],[2,"Music",false],[2,"Skins",false],[1,"lastAdTime",0,0,false,false,739648218616034,false],[1,"AD_DELAY",0,185,false,true,890638500305501,false],[0,[true,"Menu"],false,null,347042795462740,[[-1,72,null,0,false,false,false,347042795462740,false,[[1,[2,"Menu"]]]]],[],[[1,"Target",1,"",true,false,483218689929701,false],[0,null,false,null,550715259366492,[[-1,98,null,1,false,false,false,403641051628108,false],[-1,127,null,0,false,false,false,630825430526209,false,[[7,[19,104]],[8,0],[7,[2,"Main Menu"]]]]],[],[[0,null,false,null,702307424152043,[[12,149,null,0,false,false,false,630335224389314,false,[[1,[10,[2,"besttime"],[18,[21,1,false,null,16],[2,""],[2,"hard"]]]]]]],[],[[1,"besttime",0,0,false,false,259540602063844,false],[0,null,false,null,647333412897058,[],[[-1,101,null,169119521780104,false,[[11,"besttime"],[7,[20,12,112,false,null,[[10,[2,"besttime"],[18,[21,1,false,null,16],[2,""],[2,"hard"]]]]]]]],[122,155,null,843608134757654,false,[[7,[10,[10,[20,158,411,true,null,[[4,[23,"besttime"],[12,[19,412,[[6,[5,[23,"besttime"],[19,299,[[23,"besttime"]]]],[0,100]]]],[0,100]]]]],[2,":"]],[19,413,[[8,[19,412,[[6,[5,[23,"besttime"],[19,299,[[23,"besttime"]]]],[0,100]]]],[0,100]],[0,2]]]]]]]]]]],[0,null,false,null,430531681369450,[[-1,75,null,0,false,false,false,596404871501609,false]],[[122,370,null,218834926204503,false,[[3,0]]],[121,370,null,760955429530485,false,[[3,0]]]]],[0,null,false,null,223121870163000,[[-1,154,null,0,false,false,false,881703017367996,false,[[4,70],[7,[20,70,400,true,null]],[8,0],[7,[2,"Play"]]]]],[[70,414,"Button",327401275169974,false,[[3,0]]]]],[0,null,false,null,263955610737327,[],[[-1,99,null,225923077253020,false,[[0,[0,0]]]]],[[0,null,false,null,799470733383521,[[12,149,null,0,false,true,false,800865778047317,false,[[1,[2,"LastLevel"]]]],[-1,154,null,0,false,false,false,761088258907299,false,[[4,70],[7,[20,70,400,true,null]],[8,0],[7,[2,"Resume"]]]]],[[70,414,"Button",687928071911216,false,[[3,0]]]]]]],[0,null,false,null,852329937406106,[],[[-1,99,null,795981196274604,false,[[0,[1,0.8]]]]],[[0,null,false,null,888063943909341,[[-1,154,null,0,false,false,false,587396861539633,false,[[4,70],[7,[20,70,400,true,null]],[8,0],[7,[2,"Play"]]]]],[[70,414,"Button",847312459461300,false,[[3,1]]]]]]],[0,null,false,null,979765898285434,[[7,415,null,0,false,false,false,778637889007111,false,[[1,[2,"TipList"]]]]],[[8,304,null,215374058665775,false,[[1,[2,"tips"]],[12,"tips.json"]]]]],[0,null,false,null,978010614618662,[[-1,75,null,0,false,false,false,259060187855585,false]],[],[[0,null,false,null,534944602330014,[],[[-1,315,null,669986810817862,false,[[1,[23,"LANGUAGELOADEDSIGNAL"]]]],[167,311,null,448678938758626,false,[[1,[2,"translateTips"]],[13,[7,[21,30,true,null,0]]]]],[7,308,null,441403467957029,false,[[1,[2,"TipList"]],[1,[20,167,312,false,null]]]]]],[0,null,false,null,178882328353300,[[30,107,null,0,false,false,false,676467611218366,false,[[10,2]]]],[[-1,398,null,240353765512766,false,[[1,[23,"LANGUAGELOADEDSIGNAL"]]]]]]]],[0,null,false,null,860415168001879,[],[[-1,315,null,815134361004624,false,[[1,[23,"LANGUAGELOADEDSIGNAL"]]]],[167,311,null,435644922880378,false,[[1,[2,"listLanguages"]],[13]]],[7,308,null,728944710940307,false,[[1,[2,"LanguagesList"]],[1,[20,167,312,false,null]]]]]],[0,null,false,null,275752067038776,[[30,107,null,0,false,false,false,730512971646156,false,[[10,2]]]],[[-1,398,null,323181244819773,false,[[1,[23,"LANGUAGELOADEDSIGNAL"]]]]]],[0,null,false,null,252397457804320,[[70,77,null,0,false,false,false,492245312786321,false,[[10,3]]]],[],[[0,null,false,null,252687794052104,[[-1,127,null,0,false,false,false,860028501798385,false,[[7,[20,4,281,true,null]],[8,1],[7,[2,"dedragames.com"]]]],[-1,127,null,0,false,false,false,671894223533252,false,[[7,[20,4,281,true,null]],[8,1],[7,[2,"www.dedragames.com"]]]],[-1,127,null,0,false,false,false,285216610938405,false,[[7,[20,167,282,false,null,[[2,"WebSdkWrapper.hasAds()"]]]],[8,0],[7,[0,1]]]]],[[70,356,null,369732027657126,false,[[3,1]]],[-1,99,null,948561265783553,false,[[0,[1,0.1]]]],[1,197,null,201564011923129,false,[[10,11],[3,0]]]]],[0,null,false,null,863504926971792,[[-1,75,null,0,false,false,false,965564519230391,false]],[[70,356,null,813147364710586,false,[[3,0]]]]]]],[0,null,false,null,981315308193634,[[70,246,null,0,false,false,false,562960234189449,false,[[1,[2,"RemoveMidrollAds"]]]],[-1,127,null,0,false,false,false,947952138784833,false,[[7,[20,167,282,false,null,[[2,"globalThis.adconfigRemoveMidrollRewarded"]]]],[8,0],[7,[0,1]]]]],[[70,356,null,695800192093125,false,[[3,0]]]]],[0,null,false,null,846787486513711,[[70,246,null,0,false,false,false,702205382276167,false,[[1,[2,"Discord"]]]],[-1,127,null,0,false,false,false,602705395703555,false,[[7,[20,167,282,false,null,[[2,"globalThis.adconfigRemoveSocials"]]]],[8,0],[7,[0,1]]]]],[[70,356,null,219671325554952,false,[[3,0]]],[198,416,null,554127269436031,false,[[0,[21,198,false,null,0]]]],[198,417,null,903991095012345,false,[[0,[21,198,false,null,1]]]],[197,417,null,101709775407276,false,[[0,[0,30]]]]],[[0,null,false,null,428268434636892,[[-1,154,null,0,false,false,false,637660081493507,false,[[4,93],[7,[22,93,"GameObject",418,true,null]],[8,0],[7,[2,"langbutton"]]]]],[[93,385,null,930624537117813,false,[[0,[20,197,419,false,null]]]]]]]],[0,null,false,null,809146989865686,[[-1,127,null,0,false,false,false,543943134911590,false,[[7,[20,4,281,true,null]],[8,1],[7,[2,"dedragames.com"]]]],[-1,127,null,0,false,false,false,254948439453403,false,[[7,[20,4,281,true,null]],[8,1],[7,[2,"www.dedragames.com"]]]],[-1,127,null,0,false,false,false,391383466092909,false,[[7,[20,167,282,false,null,[[2,"WebSdkWrapper.hasAds()"]]]],[8,0],[7,[0,1]]]],[-1,127,null,0,false,false,false,504967117379844,false,[[7,[5,[19,212],[23,"lastAdTime"]]],[8,5],[7,[23,"AD_DELAY"]]]],[1,107,null,0,false,true,false,927301876092250,false,[[10,11]]],[12,149,null,0,false,true,false,640530477043471,false,[[1,[2,"RemoveAds"]]]]],[[-1,101,null,248684541869314,false,[[11,"lastAdTime"],[7,[19,212]]]],[4,198,null,311661730876302,false,[[1,[2,"crazyMidRoll();"]]]],[125,283,"Dialog",444337235763570,false,[[0,[0,0]],[0,[0,0]],[3,1]]]]],[0,null,false,null,105324253903467,[[12,149,null,0,false,false,false,620022309759798,false,[[1,[2,"RemoveAds"]]]],[70,73,null,0,false,false,false,618602706469604,false,[[10,2],[8,0],[7,[0,999]]]]],[[70,414,"Button",601540953788315,false,[[3,0]]]]],[0,null,false,null,580323257038575,[],[[-1,315,null,471996245699491,false,[[1,[23,"LANGUAGELOADEDSIGNAL"]]]],[197,245,null,334084166362215,false,[[1,[19,420,[[21,30,true,null,0],[2,"-"],[2,""]]]],[3,1]]],[167,311,null,571593160162729,false,[[1,[2,"getLocaleName"]],[13,[7,[21,30,true,null,0]]]]],[93,377,null,223606530546061,false,[[7,[20,167,282,false,null,[[10,[10,[2,"getLocaleName(\""],[21,30,true,null,0]],[2,"\")"]]]]]]]]],[0,null,false,null,458498893901601,[[30,107,null,0,false,false,false,106461548387287,false,[[10,2]]]],[[-1,398,null,555537703464544,false,[[1,[23,"LANGUAGELOADEDSIGNAL"]]]]]],[0,null,false,null,339386972905822,[],[[4,198,null,987294403410514,false,[[1,[2,"globalThis.ovoLevelEditor && globalThis.ovoLevelEditor.init && globalThis.ovoLevelEditor.init()"]]]]]]]],[0,null,false,null,343305557178142,[[8,305,null,1,false,false,false,894758080847281,false,[[1,[2,"dedratips"]]]]],[],[[0,null,false,null,483610672558703,[[-1,127,null,0,false,false,false,354630925375468,false,[[7,[20,8,307,true,null]],[8,0],[7,[2,"0"]]]]],[[8,304,null,217462094744734,false,[[1,[2,"tips"]],[12,"tips.json"]]]]],[0,null,false,null,299334075246832,[[-1,75,null,0,false,false,false,516705723950578,false]],[[8,421,null,568886226023404,false,[[1,[2,"tips"]],[1,[2,"https://dedragames.com/games/ovo/1.3.2/tips.json"]]]]]]]],[0,null,false,null,894719232257878,[[8,305,null,1,false,false,false,265500819439049,false,[[1,[2,"tips"]]]]],[],[[0,null,false,null,786380452516679,[],[[30,316,null,287346545561375,false,[[10,3],[7,[20,8,307,true,null]]]],[167,318,null,322172033250975,false,[[1,[2,"gatheredTips"]],[7,[20,8,307,true,null]]]],[-1,315,null,778291991263633,false,[[1,[23,"LANGUAGELOADEDSIGNAL"]]]],[167,311,null,659365096469249,false,[[1,[2,"translateTips"]],[13,[7,[21,30,true,null,0]]]]],[7,308,null,719978213806586,false,[[1,[2,"TipList"]],[1,[20,167,312,false,null]]]]]],[0,null,false,null,164233254014846,[[30,107,null,0,false,false,false,986350737704880,false,[[10,2]]]],[[-1,398,null,515274287264306,false,[[1,[23,"LANGUAGELOADEDSIGNAL"]]]]]]]],[0,null,false,null,761034153393720,[[161,422,null,1,false,false,false,611089912617231,false]],[[161,423,null,829890799568750,false,[[1,[2,"Retron2000"]],[1,[2,"./fonts.css"]]]]]],[1,"rewarded",0,0,true,false,994113655085954,false],[1,"adShouldStart",0,0,true,false,926209114562845,false],[1,"ADTIMEOUT",0,2,false,true,131722405442863,false],[0,null,false,null,570548994725842,[[125,424,"Dialog",1,false,false,false,273681586726473,false]],[[-1,101,null,681142988298331,false,[[11,"adShouldStart"],[7,[0,1]]]],[-1,425,null,268033550634350,false,[[4,125],[0,[1,1]]]],[125,177,"Timer",430023684738504,false,[[0,[23,"ADTIMEOUT"]],[3,0],[1,[2,"timeout"]]]]]],[0,null,false,null,170729440465951,[[125,172,"Timer",0,false,false,false,414696649205876,false,[[1,[2,"timeout"]]]]],[],[[0,null,false,null,816098940951179,[[-1,100,null,0,false,false,false,661949746977881,false,[[11,"adShouldStart"],[8,0],[7,[0,1]]]]],[[125,426,"Dialog",723828950296206,false],[126,283,"Dialog",682537882812333,false,[[0,[0,0]],[0,[0,0]],[3,1]]]]]]],[0,null,false,null,383228022986971,[[200,427,"Button",1,false,false,false,167231260398634,false]],[[167,311,null,489235216873621,false,[[1,[2,"getLocale"]],[13,[7,[22,200,"GridViewDataBind",428,false,null]]]]],[0,80,null,581226844688504,false,[[1,[2,"Language > SetLocale"]],[13,[7,[20,167,312,false,null]]]]]]],[0,null,false,null,659833701127987,[[0,169,null,2,false,false,false,443703983696403,false,[[1,[2,"Menu > Languages"]]]]],[[129,283,"Dialog",698594178154882,false,[[0,[0,0]],[0,[0,0]],[3,1]]]]],[0,null,false,null,516071815254523,[[0,169,null,2,false,false,false,385285420522917,false,[[1,[2,"Menu > RandomSkin"]]]]],[],[[0,null,false,null,263173509919975,[[29,429,null,0,false,false,false,697161551583762,false]],[[115,283,"Dialog",938651990499230,false,[[0,[0,0]],[0,[0,0]],[3,1]]]]],[0,null,false,null,346982158968821,[[-1,75,null,0,false,false,false,960276346325370,false]],[[-1,101,null,421531120753370,false,[[11,"rewarded"],[7,[0,1]]]],[4,198,null,522737099203770,false,[[1,[2,"crazyRewarded();"]]]],[125,283,"Dialog",774784553606627,false,[[0,[0,0]],[0,[0,0]],[3,1]]]]]]],[0,null,false,null,943671299252318,[[0,169,null,2,false,false,false,765451646864203,false,[[1,[2,"Menu > RemoveAds"]]]]],[],[[0,null,false,null,429431638438059,[[29,429,null,0,false,false,false,360497548574174,false]],[[115,283,"Dialog",211918786965592,false,[[0,[0,0]],[0,[0,0]],[3,1]]]]],[0,null,false,null,888031656950942,[[-1,75,null,0,false,false,false,690241242354904,false]],[[-1,101,null,431165204180282,false,[[11,"rewarded"],[7,[0,2]]]],[4,198,null,666740001211435,false,[[1,[2,"crazyRewarded();"]]]],[125,283,"Dialog",616119235849676,false,[[0,[0,0]],[0,[0,0]],[3,1]]]]]]],[0,null,false,null,560463245075257,[[0,169,null,2,false,false,false,475324133309890,false,[[1,[2,"Menu > Discord"]]]]],[[4,339,null,878631031994129,false,[[1,[2,"https://dedragames.com/ovoDiscord.html"]],[1,[2,"_blank"]]]]]],[0,null,false,null,560506484971244,[[0,169,null,2,false,false,false,740004650962769,false,[[1,[2,"adStarted"]]]]],[[4,285,null,865347034127935,false,[[3,0],[7,[2,"ad started"]]]],[-1,101,null,180218399081629,false,[[11,"adShouldStart"],[7,[0,0]]]],[125,244,"Timer",819734133959097,false,[[1,[2,"timeout"]]]],[194,430,null,600382095441753,false,[[1,[2,"Ad started"]]]]]],[0,null,false,null,235395104032913,[[0,169,null,2,false,false,false,600991211938204,false,[[1,[2,"adOver"]]]]],[[125,426,"Dialog",105285830779939,false],[194,430,null,831082164230288,false,[[1,[2,"Ad over"]]]]],[[0,null,false,null,856146348981208,[[-1,100,null,0,false,false,false,933859286451982,false,[[11,"rewarded"],[8,4],[7,[0,0]]]]],[[194,430,null,531424830409797,false,[[1,[2,"Rewarded"]]]]]],[0,null,false,null,326885765847897,[[-1,75,null,0,false,false,false,672176099599875,false]],[[194,430,null,936729860957065,false,[[1,[2,"Midroll"]]]]]],[0,null,false,null,807642418649178,[[-1,100,null,0,false,false,false,257026849273031,false,[[11,"rewarded"],[8,0],[7,[0,1]]]]],[[194,430,null,783530334986778,false,[[1,[2,"Rewarded 1"]]]],[1,197,null,540500286713494,false,[[10,11],[3,1]]],[-1,203,null,388135182316307,false]]],[0,null,false,null,210737150218287,[[-1,100,null,0,false,false,false,599090624838114,false,[[11,"rewarded"],[8,0],[7,[0,2]]]]],[[194,430,null,183873506079886,false,[[1,[2,"Rewarded 2"]]]],[0,80,null,926994471047670,false,[[1,[2,"Save > RemoveAds"]],[13]]],[127,283,"Dialog",327516702347962,false,[[0,[0,0]],[0,[0,0]],[3,1]]]],[[0,null,false,null,187600486128940,[[12,149,null,0,false,false,false,646958229079614,false,[[1,[2,"RemoveAds"]]]],[70,73,null,0,false,false,false,425984439591146,false,[[10,2],[8,0],[7,[0,999]]]]],[[70,414,"Button",716646468013742,false,[[3,0]]]]]]],[0,null,false,null,660193929326547,[],[[-1,101,null,904910337891249,false,[[11,"rewarded"],[7,[0,0]]]]]]]],[0,null,false,null,963880213625336,[[0,169,null,2,false,false,false,749053637379276,false,[[1,[2,"adOverFail"]]]]],[[-1,101,null,262126755602842,false,[[11,"rewarded"],[7,[0,0]]]],[125,426,"Dialog",644928268963085,false],[126,283,"Dialog",925568889772762,false,[[0,[0,0]],[0,[0,0]],[3,1]]]]],[0,null,false,null,564527429649118,[[0,169,null,2,false,false,false,313207284071164,false,[[1,[2,"Menu > Play"]]]]],[[1,197,null,824137948903708,false,[[10,3],[3,0]]],[1,197,null,736468009343617,false,[[10,21],[3,0]]],[0,80,null,384579395700610,false,[[1,[2,"Menu > Transition"]],[13,[7,[2,"Level 1"]]]]]]],[0,null,false,null,778873971432323,[[0,169,null,2,false,false,false,168426402702824,false,[[1,[2,"Menu > Resume"]]]]],[[1,197,null,160764756487263,false,[[10,3],[3,0]]],[1,197,null,589279469053069,false,[[10,21],[3,0]]],[1,316,null,673363481970530,false,[[10,4],[7,[5,[19,212],[20,12,112,false,null,[[2,"LastTime"]]]]]]]],[[0,null,false,null,877659944083382,[[12,149,null,0,false,false,false,436001248048060,false,[[1,[2,"LastLevel"]]]]],[[0,80,null,547390823535684,false,[[1,[2,"Menu > Transition"]],[13,[7,[10,[2,"Level "],[20,12,112,false,null,[[2,"LastLevel"]]]]]]]]]],[0,null,false,null,208970704697660,[[-1,75,null,0,false,false,false,300307531536715,false]],[[0,80,null,829774652519878,false,[[1,[2,"Menu > Transition"]],[13,[7,[2,"Level 1"]]]]]]]]],[0,null,false,null,970474509353122,[[0,169,null,2,false,false,false,346507530553524,false,[[1,[2,"Menu > Levels"]]]]],[[0,80,null,683122700567341,false,[[1,[2,"Menu > Transition"]],[13,[7,[2,"Level Menu"]]]]]]],[0,null,false,null,382487852758293,[[0,169,null,2,false,false,false,311074679929822,false,[[1,[2,"Menu > Credits"]]]]],[[0,80,null,552966502517737,false,[[1,[2,"Menu > Transition"]],[13,[7,[2,"Credits"]]]]]]],[0,null,false,null,317945469250140,[[0,169,null,2,false,false,false,820418095537380,false,[[1,[2,"Menu > Options"]]]]],[[0,80,null,736077096751743,false,[[1,[2,"Menu > Transition"]],[13,[7,[2,"Options Menu"]]]]]]],[0,null,false,null,443402327844779,[[0,169,null,2,false,false,false,699841169243949,false,[[1,[2,"Menu > Back"]]]]],[[0,80,null,745681357338292,false,[[1,[2,"Menu > Transition"]],[13,[7,[18,[11,[12,[20,0,431,false,null],[0,0]],[12,[20,0,170,false,null,[[0,0]]],[2,""]]],[2,"Main Menu"],[20,0,170,false,null,[[0,0]]]]]]]]]],[0,null,false,null,513650222541016,[[0,169,null,2,false,false,false,394844360208020,false,[[1,[2,"Menu > Next"]]]]],[],[[1,"ID",0,0,false,false,509730512123901,false],[0,null,false,null,679053644573191,[],[[-1,101,null,934789171476556,false,[[11,"ID"],[7,[19,105,[[19,106,[[19,104],[0,1],[2," "]]]]]]]],[0,80,null,748600148464203,false,[[1,[2,"Menu > Transition"]],[13,[7,[18,[14,[23,"ID"],[21,1,false,null,9]],[10,[2,"Level "],[19,298,[[4,[23,"ID"],[0,1]]]]],[2,"Main Menu"]]]]]]]],[0,null,false,null,640368178870354,[[1,107,null,0,false,false,false,815811350991263,false,[[10,3]]]],[[4,198,null,144681026680585,false,[[1,[10,[10,[2,"WebSdkWrapper.levelStart("],[19,298,[[4,[23,"ID"],[0,1]]]]],[2,")"]]]]]]]]],[0,null,false,null,103242992893225,[[0,169,null,2,false,false,false,939319672930375,false,[[1,[2,"Menu > Level"]]]]],[[0,80,null,605716748734880,false,[[1,[2,"Menu > Transition"]],[13,[7,[10,[2,"Level "],[4,[20,0,170,false,null,[[0,0]]],[0,1]]]]]]]]],[0,null,false,null,581454617454392,[[0,169,null,2,false,false,false,669845447213658,false,[[1,[2,"Menu > Train"]]]]],[[0,80,null,587207502509377,false,[[1,[2,"Menu > Transition"]],[13,[7,[2,"Sandbox Level"]]]]]]],[0,null,false,null,525277846568351,[[0,169,null,2,false,false,false,597125343954944,false,[[1,[2,"Menu > Info"]]]]],[[4,339,null,907716645155840,false,[[1,[2,"https://dedragames.com/"]],[1,[2,"_blank"]]]]]],[0,null,false,null,520975304953040,[[0,169,null,2,false,false,false,759108527539775,false,[[1,[2,"Menu > Transition"]]]]],[[4,231,null,470536912898955,false,[[1,[23,"VibratePtrn"]]]],[-1,101,null,765650622488646,false,[[11,"Target"],[7,[20,0,170,false,null,[[0,0]]]]]]],[[0,null,false,null,304068756911160,[[-1,230,null,0,false,false,false,779596453443956,false]],[[-1,432,null,247510441877405,false,[[1,[23,"Target"]]]],[-1,433,null,449970204185544,false,[[0,[1,1]]]]]],[0,null,false,null,646176072705056,[[-1,75,null,0,false,false,false,847326598783788,false]],[[6,434,null,524179302619050,false]]]]],[0,null,false,null,385669966529442,[[0,169,null,2,false,false,false,159380969146706,false,[[1,[2,"Menu > Goto"]]]]],[[4,231,null,248893532246654,false,[[1,[23,"VibratePtrn"]]]],[-1,101,null,109275240377407,false,[[11,"Target"],[7,[20,0,170,false,null,[[0,0]]]]]],[-1,432,null,856227479078782,false,[[1,[23,"Target"]]]],[-1,433,null,200175627424971,false,[[0,[1,1]]]]]],[0,null,false,null,396489234101565,[[6,435,null,1,false,false,false,757296524545245,false]],[[6,436,null,464324782466741,false,[[3,12]]],[-1,433,null,148885379409788,false,[[0,[1,1]]]],[-1,432,null,457720175376192,false,[[1,[23,"Target"]]]]]]]],[0,[true,"Level Menu"],false,null,562560226748156,[[-1,72,null,0,false,false,false,562560226748156,false,[[1,[2,"Level Menu"]]]]],[],[[1,"Divider",0,4,false,false,712001924445363,false],[1,"DisabledFrames",0,11,false,false,315797852421137,false],[1,"Quote",1,"\"",false,false,599857175645607,false],[1,"CurrentSection",0,0,true,false,356295658667763,false],[0,null,false,null,950685301689525,[[-1,98,null,1,false,false,false,775606385377244,false]],[[-1,433,null,360945045772442,false,[[0,[1,1]]]],[-1,437,null,402690073053879,false,[[5,[2,"Ads"]],[3,0]]],[-1,99,null,996334242514593,false,[[0,[1,0.5]]]],[-1,437,null,700792633071030,false,[[5,[2,"Ads"]],[3,1]]]],[[0,null,false,null,692541619234871,[[-1,127,null,0,false,false,false,287395485759407,false,[[7,[19,104]],[8,0],[7,[2,"Main Menu"]]]]],[[1,316,null,477606511178988,false,[[10,22],[7,[0,0]]]]]]]],[0,null,false,null,385527972480298,[[-1,127,null,0,false,false,false,104544763831130,false,[[7,[19,104]],[8,0],[7,[2,"Level Menu"]]]]],[],[[0,null,false,null,617646289825160,[[-1,98,null,1,false,false,false,966446143803677,false]],[[8,304,null,975078566746600,false,[[1,[2,"lvl"]],[12,"levels.json"]]],[170,166,null,316108827028045,false,[[0,[6,[19,279],[1,0.75]]]]]]],[0,null,false,null,144020805292004,[[8,305,null,1,false,false,false,331248362197756,false,[[1,[2,"lvl"]]]]],[[28,306,null,974354117472923,false,[[1,[20,8,307,true,null]],[3,0],[13]]],[0,80,null,604369797304810,false,[[1,[2,"Menu > SetSection"]],[13,[7,[21,1,false,null,22]]]]],[-1,99,null,329203158002761,false,[[0,[1,0.2]]]],[-1,398,null,664691515555872,false,[[1,[2,"cameraTween"]]]]]],[0,null,false,null,902724201225779,[[170,438,"LiteTween",1,false,false,false,206998599684559,false]],[[-1,398,null,897006154688834,false,[[1,[2,"cameraTween"]]]]]],[0,null,false,null,538538728756920,[[70,73,null,0,false,false,false,371058123864716,false,[[10,2],[8,0],[7,[0,1]]]],[70,439,"Button",0,false,false,false,359628763304717,false],[70,440,null,0,false,false,false,867470318308951,false,[[8,0],[0,[0,3]]]]],[[70,115,null,586244937996981,false,[[0,[0,0]]]]]],[0,null,true,null,378239291608975,[[70,73,null,0,false,false,false,132373559028412,false,[[10,2],[8,0],[7,[0,1]]]],[70,73,null,0,false,false,false,864004718646459,false,[[10,2],[8,0],[7,[0,2]]]]],[],[[0,null,false,null,858712149022877,[[70,439,"Button",0,false,true,false,492210330529751,false],[70,441,null,0,false,false,false,592776357576102,false,[[8,2],[0,[0,64]]]]],[[70,178,null,495857126593296,false,[[0,[0,64]],[0,[0,64]]]]]]]],[0,null,false,null,693904426575391,[[119,256,null,1,false,false,false,774497388709693,false]],[[119,405,"GameObject",968255661308990,false,[[4,120]]]]],[0,null,false,null,490161939377050,[[0,169,null,2,false,false,false,774785122660290,false,[[1,[2,"Menu > SetSection"]]]]],[],[[0,null,false,null,278220766553913,[],[[-1,101,null,392892918275718,false,[[11,"CurrentSection"],[7,[20,0,170,false,null,[[0,0]]]]]],[124,155,null,568728078250859,false,[[7,[10,[10,[4,[23,"CurrentSection"],[0,1]],[2,"/"]],[20,28,442,false,null,[[0,0]]]]]]],[1,316,null,943890946339621,false,[[10,22],[7,[0,0]]]]]],[0,null,true,null,520307196596379,[[70,73,null,0,false,false,false,479302443121532,false,[[10,2],[8,0],[7,[0,1]]]],[70,73,null,0,false,false,false,506518463930306,false,[[10,2],[8,0],[7,[0,2]]]]],[[70,414,"Button",627641935886744,false,[[3,1]]]]],[0,null,false,null,446592132477979,[[70,73,null,0,false,false,false,986525971493434,false,[[10,2],[8,0],[7,[0,1]]]],[-1,100,null,0,false,false,false,597925458992066,false,[[11,"CurrentSection"],[8,0],[7,[0,0]]]]],[[70,414,"Button",383301660758394,false,[[3,0]]]]],[0,null,false,null,100857427853167,[[70,73,null,0,false,false,false,503431773381761,false,[[10,2],[8,0],[7,[0,2]]]],[-1,100,null,0,false,false,false,552055872183193,false,[[11,"CurrentSection"],[8,0],[7,[5,[20,28,442,false,null,[[0,0]]],[0,1]]]]]],[[70,414,"Button",248252029251245,false,[[3,0]]]]],[0,null,false,null,329531925978659,[],[[170,443,"LiteTween",300174006474272,false,[[3,8],[3,16],[1,[19,298,[[6,[19,279],[1,0.75]]]]],[0,[1,0.5]],[3,0]]],[170,444,"LiteTween",380347557976254,false,[[3,0],[3,0]]],[-1,315,null,257749865305444,false,[[1,[2,"cameraTween"]]]]],[[0,null,false,null,537810920522306,[[-1,127,null,0,false,false,false,452757400517799,false,[[7,[20,28,310,false,null,[[0,0],[23,"CurrentSection"],[2,"levels"],[0,0]]]],[8,4],[7,[20,12,112,false,null,[[2,"Levels"]]]]]]],[],[[0,null,false,null,591665354621145,[[70,246,null,0,false,false,false,790782827869341,false,[[1,[2,"Play"]]]]],[[70,414,"Button",492443670424684,false,[[3,0]]]]]]],[0,null,false,null,639597713087723,[[-1,75,null,0,false,false,false,643199191521741,false]],[],[[0,null,false,null,373986593657751,[[70,246,null,0,false,false,false,457768594535094,false,[[1,[2,"Play"]]]]],[[70,414,"Button",333693596780746,false,[[3,1]]]]]]],[0,null,false,null,302939768649168,[[-1,180,null,0,true,false,false,885005837178014,false,[[4,119],[7,[21,119,false,null,0]],[3,0]]]],[[120,445,null,471546777372907,false,[[4,119],[7,[0,0]]]],[120,155,null,971594682797611,false,[[7,[4,[20,28,310,false,null,[[0,0],[23,"CurrentSection"],[2,"levels"],[0,0]]],[21,119,false,null,0]]]]],[120,272,null,662446691916432,false,[[0,[20,119,446,false,null]],[0,[20,119,447,false,null]]]],[120,270,null,399086435751164,false,[[0,[20,119,185,false,null]],[0,[20,119,187,false,null]]]]],[[0,null,false,null,847971126497591,[[-1,127,null,0,false,false,false,484638898780562,false,[[7,[4,[20,28,310,false,null,[[0,0],[23,"CurrentSection"],[2,"levels"],[0,0]]],[21,119,false,null,0]]],[8,4],[7,[20,28,310,false,null,[[0,0],[23,"CurrentSection"],[2,"levels"],[0,1]]]]]]],[[119,356,null,706571025727270,false,[[3,0]]],[120,263,null,525965149391299,false,[[0,[0,0]]]],[66,150,null,968665766190000,false,[[0,[0,0]]]]]],[0,null,false,null,942348000656014,[[-1,75,null,0,false,false,false,723639908037394,false],[-1,127,null,0,false,false,false,169074404434860,false,[[7,[4,[20,28,310,false,null,[[0,0],[23,"CurrentSection"],[2,"levels"],[0,0]]],[21,119,false,null,0]]],[8,4],[7,[20,12,112,false,null,[[2,"Levels"]]]]]]],[[119,414,"Button",199815596341405,false,[[3,0]]],[120,155,null,927578231389449,false,[[7,[2,"µ"]]]],[119,356,null,332610567237255,false,[[3,1]]],[120,263,null,619779259796332,false,[[0,[0,100]]]],[66,150,null,361815537989091,false,[[0,[0,10]]]]]],[0,null,false,null,403044814644795,[[-1,75,null,0,false,false,false,853013107870168,false]],[[119,414,"Button",553129778256330,false,[[3,1]]],[119,356,null,825071445028164,false,[[3,1]]],[120,263,null,862519587962214,false,[[0,[0,100]]]],[66,150,null,534055452413066,false,[[0,[0,10]]]]]],[0,null,false,null,925307809823368,[[119,116,null,0,false,false,false,846799481602248,false]],[],[[0,null,false,null,110371911449116,[[12,149,null,0,false,false,false,418148094743556,false,[[1,[10,[2,"Coinlevel"],[4,[20,28,310,false,null,[[0,0],[23,"CurrentSection"],[2,"levels"],[0,0]]],[21,119,false,null,0]]]]]]],[[66,150,null,768968551356545,false,[[0,[0,100]]]]]],[0,null,false,null,622509619433033,[[-1,75,null,0,false,false,false,421362058663876,false]],[[66,150,null,197478273692755,false,[[0,[0,10]]]]]]]]]],[0,null,false,null,835949928670319,[[12,149,null,0,false,false,false,168581618972530,false,[[1,[10,[10,[2,"section"],[23,"CurrentSection"]],[18,[21,1,false,null,16],[2,""],[2,"hard"]]]]]]],[],[[1,"besttime",0,0,false,false,978708963209707,false],[0,null,false,null,472490139547821,[],[[-1,101,null,156607611128107,false,[[11,"besttime"],[7,[20,12,112,false,null,[[10,[10,[2,"section"],[23,"CurrentSection"]],[18,[21,1,false,null,16],[2,""],[2,"hard"]]]]]]]],[122,155,null,783482694581665,false,[[7,[10,[10,[20,158,411,true,null,[[4,[23,"besttime"],[12,[19,412,[[6,[5,[23,"besttime"],[19,299,[[23,"besttime"]]]],[0,100]]]],[0,100]]]]],[2,":"]],[19,413,[[8,[19,412,[[6,[5,[23,"besttime"],[19,299,[[23,"besttime"]]]],[0,100]]]],[0,100]],[0,2]]]]]]]]]]],[0,null,false,null,457699618784636,[[-1,75,null,0,false,false,false,568898545459932,false]],[[122,155,null,847938763000115,false,[[7,[2,"--:--:--"]]]]]],[0,null,false,null,608015573991654,[],[[167,311,null,966281429503021,false,[[1,[2,"getLanguageValue"]],[13,[7,[21,30,true,null,0]],[7,[20,28,310,false,null,[[0,0],[23,"CurrentSection"],[2,"lang"]]]],[7,[2,"text"]],[7,[20,28,310,false,null,[[0,0],[23,"CurrentSection"],[2,"name"]]]],[7,[2,""]]]]],[123,155,null,768544491419469,false,[[7,[20,167,312,false,null]]]],[123,407,null,257589304413393,false,[[0,[6,[20,28,310,false,null,[[0,0],[23,"CurrentSection"],[2,"textScale"]]],[0,3]]]]],[171,115,null,831230114637532,false,[[0,[23,"CurrentSection"]]]],[170,443,"LiteTween",162823055752720,false,[[3,8],[3,17],[1,[19,298,[[7,[19,279],[0,2]]]]],[0,[1,0.5]],[3,0]]],[170,444,"LiteTween",668861815918756,false,[[3,0],[3,0]]]]]]]]],[0,null,false,null,603308910083164,[[0,169,null,2,false,false,false,467862190759794,false,[[1,[2,"Menu > NextSection"]]]]],[[0,80,null,279497170280394,false,[[1,[2,"Menu > SetSection"]],[13,[7,[4,[23,"CurrentSection"],[0,1]]]]]]]],[0,null,false,null,454712867952731,[[0,169,null,2,false,false,false,868146088512168,false,[[1,[2,"Menu > PrevSection"]]]]],[[0,80,null,425403566543102,false,[[1,[2,"Menu > SetSection"]],[13,[7,[5,[23,"CurrentSection"],[0,1]]]]]]]],[0,null,false,null,128207201935333,[[0,169,null,2,false,false,false,557818390283978,false,[[1,[2,"Menu > PlaySection"]]]]],[[1,197,null,222139191290507,false,[[10,3],[3,0]]],[1,197,null,238699676913742,false,[[10,21],[3,1]]],[1,316,null,941845828547547,false,[[10,19],[7,[20,28,310,false,null,[[0,0],[23,"CurrentSection"],[2,"levels"],[0,0]]]]]],[1,316,null,613689825966675,false,[[10,20],[7,[20,28,310,false,null,[[0,0],[23,"CurrentSection"],[2,"levels"],[0,1]]]]]],[1,316,null,949189657994905,false,[[10,22],[7,[23,"CurrentSection"]]]],[0,80,null,618011954071934,false,[[1,[2,"Menu > Level"]],[13,[7,[5,[20,28,310,false,null,[[0,0],[23,"CurrentSection"],[2,"levels"],[0,0]]],[0,1]]]]]],[4,198,null,750124718121365,false,[[1,[10,[10,[2,"WebSdkWrapper.levelStart("],[19,298,[[4,[20,28,310,false,null,[[0,0],[23,"CurrentSection"],[2,"levels"],[0,0]]],[21,119,false,null,0]]]]],[2,")"]]]]]]],[0,null,false,null,554166878161036,[[119,427,"Button",1,false,false,false,282392838930291,false]],[],[[0,null,false,null,150556343473982,[[12,295,null,0,false,false,false,755734986416114,false,[[1,[2,"Levels"]],[8,5],[7,[4,[22,74,"GridViewDataBind",428,false,null],[0,1]]]]]],[[1,197,null,766928941678172,false,[[10,3],[3,1]]],[1,197,null,189116050705000,false,[[10,21],[3,0]]],[1,316,null,876323073847162,false,[[10,22],[7,[23,"CurrentSection"]]]],[0,80,null,325771325339404,false,[[1,[2,"Menu > Level"]],[13,[7,[5,[4,[20,28,310,false,null,[[0,0],[23,"CurrentSection"],[2,"levels"],[0,0]]],[21,119,false,null,0]],[0,1]]]]]],[4,198,null,747269055029780,false,[[1,[10,[10,[2,"WebSdkWrapper.levelStart("],[19,298,[[4,[20,28,310,false,null,[[0,0],[23,"CurrentSection"],[2,"levels"],[0,0]]],[21,119,false,null,0]]]]],[2,")"]]]]]]],[0,null,false,null,759472088253574,[[-1,75,null,0,false,false,false,771053522175936,false]],[[201,93,null,387922648222296,false,[[2,["hurt",false]],[1,[2,"sounds"]]]]]]]],[0,null,false,null,216841621383563,[[-1,127,null,0,false,false,false,732990700697882,false,[[7,[5,[19,448,[[0,0]]],[19,449,[[0,0]]]]],[8,2],[7,[5,[19,450,[[0,0]]],[19,451,[[0,0]]]]]]]],[[171,178,null,622117525351172,false,[[0,[5,[19,450,[[0,0]]],[19,451,[[0,0]]]]],[0,[5,[19,450,[[0,0]]],[19,451,[[0,0]]]]]]]]],[0,null,false,null,686521676139972,[[-1,75,null,0,false,false,false,853385014077906,false]],[[171,178,null,236585805349181,false,[[0,[5,[19,448,[[0,0]]],[19,449,[[0,0]]]]],[0,[5,[19,448,[[0,0]]],[19,449,[[0,0]]]]]]]]],[0,null,false,null,413583054788296,[[170,255,null,0,false,false,false,409203595307829,false,[[8,5],[0,[7,[19,279],[0,2]]]]]],[[-1,452,null,219313331768039,false,[[5,[2,"Layer 0"]],[0,[19,260,[[0,100],[0,0],[19,453,[[7,[19,279],[0,2]],[4,[7,[19,279],[0,2]],[0,50]],[20,170,122,false,null]]]]]]]],[171,150,null,756984054375560,false,[[0,[19,260,[[0,30],[0,0],[19,453,[[7,[19,279],[0,2]],[4,[7,[19,279],[0,2]],[0,100]],[20,170,122,false,null]]]]]]]]]],[0,null,false,null,164801896226560,[[-1,75,null,0,false,false,false,111140087558819,false]],[[-1,452,null,992500667175276,false,[[5,[2,"Layer 0"]],[0,[19,260,[[0,100],[0,0],[19,453,[[7,[19,279],[0,2]],[5,[7,[19,279],[0,2]],[0,300]],[20,170,122,false,null]]]]]]]],[171,150,null,630216364788002,false,[[0,[19,260,[[0,30],[0,0],[19,453,[[7,[19,279],[0,2]],[5,[7,[19,279],[0,2]],[0,300]],[20,170,122,false,null]]]]]]]]]],[0,null,false,null,397812950220937,[],[[172,166,null,826429215406429,false,[[0,[4,[5,[20,170,122,false,null],[7,[19,279],[0,2]]],[0,38]]]]],[66,120,null,230730320006029,false,[[0,[20,119,419,false,null]],[0,[20,119,454,false,null]]]]]],[0,null,false,null,781867378010920,[[170,255,null,0,false,false,false,705402694984488,false,[[8,2],[0,[7,[19,279],[0,4]]]]]],[[170,166,null,799369782836257,false,[[0,[7,[19,279],[0,4]]]]]]]]]]],[0,[true,"Mobile Particles"],false,null,858740712199220,[[-1,72,null,0,false,false,false,858740712199220,false,[[1,[2,"Mobile Particles"]]]]],[],[[0,null,false,null,266817845605781,[[-1,98,null,1,false,false,false,681075581349699,false],[-1,230,null,0,false,false,false,323095181317307,false]],[[81,455,null,936019656721210,false,[[0,[0,10]]]]]]]],[0,[true,"OvO Animation"],false,null,619168026184674,[[-1,72,null,0,false,false,false,619168026184674,false,[[1,[2,"OvO Animation"]]]]],[],[[0,null,false,null,890530193235742,[[-1,127,null,0,false,false,false,422503312056070,false,[[7,[19,104]],[8,0],[7,[2,"Main Menu"]]]]],[],[[0,null,false,null,677015011250042,[[-1,230,null,0,false,false,false,797013555091261,false]],[],[[0,null,false,null,331846018574788,[[3,228,null,1,false,false,false,530973781510720,false,[[4,71]]]],[[0,80,null,507914897881687,false,[[1,[2,"Menu > Logo Wiggle"]],[13,[7,[19,456,[[0,1],[20,3,457,false,null],[20,3,458,false,null]]]],[7,[19,459,[[0,1],[20,3,457,false,null],[20,3,458,false,null]]]]]]]]]]],[0,null,false,null,524254005147371,[[-1,75,null,0,false,false,false,208737568068979,false]],[],[[0,null,false,null,838400835036863,[[10,460,null,1,false,false,false,966653523323339,false,[[3,0],[3,0],[4,71]]]],[[0,80,null,729868850433084,false,[[1,[2,"Menu > Logo Wiggle"]],[13,[7,[19,456,[[0,1],[20,10,461,false,null],[20,10,462,false,null]]]],[7,[19,459,[[0,1],[20,10,461,false,null],[20,10,462,false,null]]]]]]]]],[0,null,false,null,283361850979607,[[10,463,null,0,false,false,false,915938837715744,false,[[4,71]]],[-1,102,null,0,false,false,false,226160889946702,false]],[[0,80,null,740678442501098,false,[[1,[2,"Menu > Logo Wiggle"]],[13,[7,[19,456,[[0,1],[20,10,461,false,null],[20,10,462,false,null]]]],[7,[19,459,[[0,1],[20,10,461,false,null],[20,10,462,false,null]]]]]]]]]]],[0,null,false,null,803028218250663,[[-1,146,null,0,false,false,false,286708266196327,false]],[[71,464,"Sine3",860543674990055,false,[[0,[19,260,[[22,71,"Sine3",465,false,null],[0,2],[1,0.02]]]]]],[71,466,"Sine3",101495722514252,false,[[0,[19,260,[[22,71,"Sine3",467,false,null],[0,4],[1,0.02]]]]]],[71,464,"Sine2",390107274517722,false,[[0,[19,260,[[22,71,"Sine2",465,false,null],[0,5],[1,0.02]]]]]],[71,464,"Sine",488305209527276,false,[[0,[19,260,[[22,71,"Sine",465,false,null],[0,5],[1,0.02]]]]]],[71,466,"Sine",389964111810888,false,[[0,[19,260,[[22,71,"Sine",467,false,null],[0,4],[1,0.02]]]]]],[71,464,"Sine4",794206535413369,false,[[0,[19,260,[[22,71,"Sine4",465,false,null],[0,5],[1,0.02]]]]]],[71,466,"Sine4",326869135343237,false,[[0,[19,260,[[22,71,"Sine4",467,false,null],[0,4],[1,0.02]]]]]]]],[1,"NbWiggles",0,-1,true,false,702852256349095,false],[0,null,false,null,488235603387466,[[0,169,null,2,false,false,false,719263183627696,false,[[1,[2,"Menu > Logo Wiggle"]]]]],[[201,93,null,335851930280158,false,[[2,["step2",false]],[1,[2,"sounds"]]]],[-1,266,null,345879183011189,false,[[4,89],[5,[20,71,142,true,null]],[0,[20,0,170,false,null,[[0,0]]]],[0,[20,0,170,false,null,[[0,1]]]]]],[71,464,"Sine3",998210232542637,false,[[0,[4,[22,71,"Sine3",465,false,null],[6,[0,10],[7,[0,2],[22,71,"Sine3",465,false,null]]]]]]],[71,466,"Sine3",307597767402473,false,[[0,[1,0.5]]]],[71,464,"Sine2",298045013050396,false,[[0,[4,[22,71,"Sine2",465,false,null],[6,[0,10],[7,[0,5],[22,71,"Sine2",465,false,null]]]]]]],[71,464,"Sine",170625436028604,false,[[0,[4,[22,71,"Sine",465,false,null],[6,[0,10],[7,[0,5],[22,71,"Sine",465,false,null]]]]]]],[71,466,"Sine",185595876393432,false,[[0,[1,0.5]]]],[71,464,"Sine4",642508814606031,false,[[0,[4,[22,71,"Sine2",465,false,null],[6,[0,10],[7,[0,5],[22,71,"Sine2",465,false,null]]]]]]],[71,466,"Sine4",925741690347569,false,[[0,[1,0.5]]]],[-1,213,null,918333443024039,false,[[11,"NbWiggles"],[7,[0,1]]]]],[[0,null,false,null,516529580148421,[[-1,100,null,0,false,false,false,551373926577925,false,[[11,"NbWiggles"],[8,0],[7,[0,1]]]]],[[0,80,null,320785545502344,false,[[1,[2,"Achievements > Unlock"]],[13,[7,[0,0]]]]]]],[0,null,false,null,213657258214600,[[-1,100,null,0,false,false,false,336288723682347,false,[[11,"NbWiggles"],[8,0],[7,[0,20]]]]],[[0,80,null,202298935211187,false,[[1,[2,"Achievements > Unlock"]],[13,[7,[0,1]]]]]]],[0,null,false,null,685311651486122,[[-1,100,null,0,false,false,false,157500210792586,false,[[11,"NbWiggles"],[8,0],[7,[0,50]]]]],[[0,80,null,777747278152217,false,[[1,[2,"Achievements > Unlock"]],[13,[7,[0,2]]]]]]]]]]]]],[0,[true,"Options Menu"],false,null,550727618548445,[[-1,72,null,0,false,false,false,550727618548445,false,[[1,[2,"Options Menu"]]]]],[],[[0,null,false,null,860962129354062,[[-1,127,null,0,false,false,false,203195888577223,false,[[7,[19,104]],[8,0],[7,[2,"Options Menu"]]]]],[],[[0,null,false,null,887307886656957,[[-1,98,null,1,false,false,false,372374553546070,false]],[[-1,99,null,613793028896706,false,[[0,[19,79]]]],[0,80,null,797019076955135,false,[[1,[2,"Options > Update"]],[13]]]],[[0,null,false,null,172820741427844,[[-1,230,null,0,false,false,false,577875971875755,false],[70,246,null,0,false,false,false,451627537270123,false,[[1,[2,"Inputs"]]]]],[[70,356,null,294979429277199,false,[[3,0]]],[70,120,null,489140569785514,false,[[0,[0,-500]],[0,[0,-500]]]]]]]],[0,null,false,null,790517533273941,[[92,468,"Dialog",1,false,false,false,287738866632665,false],[16,107,null,0,false,false,false,759978742126162,false,[[10,4]]]],[[0,80,null,943260498836359,false,[[1,[2,"Inputs > Listen Stop"]],[13]]],[0,80,null,107134884562940,false,[[1,[2,"Options > Update Inputs"]],[13]]]]],[0,null,false,null,297974269060306,[[0,169,null,2,false,false,false,547512655952347,false,[[1,[2,"Options > Update Inputs"]]]]],[],[[0,null,false,null,601358766569076,[[-1,117,null,0,true,false,false,820333440858576,false,[[4,93]]]],[],[[0,null,false,null,350989783857368,[[93,469,null,0,false,false,false,398728008726001,false,[[10,0],[8,0],[7,[0,0]]]]],[[93,377,null,165174986889180,false,[[7,[20,2,470,true,null,[[21,16,false,null,0]]]]]]]],[0,null,false,null,891967283388187,[[93,469,null,0,false,false,false,749654930579777,false,[[10,0],[8,0],[7,[0,1]]]]],[[93,377,null,123917969277083,false,[[7,[20,2,470,true,null,[[21,16,false,null,1]]]]]]]],[0,null,false,null,386941670470462,[[93,469,null,0,false,false,false,838000306838691,false,[[10,0],[8,0],[7,[0,2]]]]],[[93,377,null,691049451999273,false,[[7,[20,2,470,true,null,[[21,16,false,null,2]]]]]]]],[0,null,false,null,562135886843777,[[93,469,null,0,false,false,false,702691219378335,false,[[10,0],[8,0],[7,[0,3]]]]],[[93,377,null,439838766476700,false,[[7,[20,2,470,true,null,[[21,16,false,null,3]]]]]]]]]]]],[0,null,false,null,266680940803412,[[0,169,null,2,false,false,false,983481310538354,false,[[1,[2,"Options > Update Sliders"]]]]],[],[[0,null,false,null,449367887652587,[[-1,117,null,0,true,false,false,628842951640910,false,[[4,98]]]],[[98,471,"SliderBar",901665124927449,false,[[0,[20,12,112,false,null,[[21,98,true,null,0]]]]]]],[[0,null,false,null,292043496826978,[[12,295,null,0,false,false,false,268340090382254,false,[[1,[10,[21,98,true,null,0],[2,"Muted"]]],[8,0],[7,[0,0]]]]],[[201,294,null,466923984450248,false,[[0,[20,12,112,false,null,[[21,98,true,null,0]]]],[1,[19,399,[[21,98,true,null,0]]]]]]]]]]]],[0,null,false,null,146425221044682,[[0,169,null,2,false,false,false,604633676103316,false,[[1,[2,"Options > Update"]]]]],[[0,80,null,599132214928456,false,[[1,[2,"Options > Update Inputs"]],[13]]],[0,80,null,296743255105407,false,[[1,[2,"Options > Update Sliders"]],[13]]],[0,80,null,990172787030226,false,[[1,[2,"Options > Update Check"]],[13]]]]],[0,null,false,null,249383992902907,[[0,169,null,2,false,false,false,356035466762171,false,[[1,[2,"Options > Inputs"]]]]],[[92,283,"Dialog",279011093848881,false,[[0,[0,0]],[0,[0,0]],[3,1]]]]],[0,null,false,null,243134947475000,[[0,169,null,2,false,false,false,728679505341201,false,[[1,[2,"Options > Edit"]]]]],[[0,80,null,142640901654780,false,[[1,[2,"Options > Update Inputs"]],[13]]],[0,80,null,703448568291978,false,[[1,[2,"Inputs > Listen"]],[13,[7,[20,0,170,false,null,[[0,0]]]]]]]],[[0,null,false,null,637530658629423,[[-1,154,null,0,false,false,false,693485579552446,false,[[4,93],[7,[21,93,false,null,0]],[8,0],[7,[19,105,[[20,0,170,false,null,[[0,0]]]]]]]]],[[167,311,null,241816458532528,false,[[1,[2,"getLanguageValue"]],[13,[7,[21,30,true,null,0]],[7,[2,"setkey"]],[7,[2,"text"]],[7,[2,"Set a key..."]],[7,[2,""]]]]],[93,377,null,608803497166814,false,[[7,[20,167,312,false,null]]]]]]]],[0,null,false,null,699049775561943,[[0,169,null,2,false,false,false,586498989737838,false,[[1,[2,"Inputs > Set Input"]]]]],[[0,80,null,266299993021290,false,[[1,[2,"Options > Update Inputs"]],[13]]]]],[0,null,false,null,680516901831824,[[0,169,null,2,false,false,false,566555160373384,false,[[1,[2,"Options > Update Check"]]]]],[],[[0,null,false,null,811141203591945,[[-1,154,null,0,false,false,false,434730942427357,false,[[4,96],[7,[21,96,false,null,0]],[8,0],[7,[0,-2]]]]],[],[[0,null,false,null,275570443146430,[[12,295,null,0,false,false,false,817962649526994,false,[[1,[2,"MusicMuted"]],[8,0],[7,[0,1]]]]],[[96,472,"Checkbox",103539342390654,false,[[3,0]]]]],[0,null,false,null,597601476856701,[[-1,75,null,0,false,false,false,250259030104777,false]],[[96,472,"Checkbox",320727213864951,false,[[3,1]]]]]]],[0,null,false,null,148117600669761,[[-1,154,null,0,false,false,false,531688175641343,false,[[4,96],[7,[21,96,false,null,0]],[8,0],[7,[0,-1]]]]],[],[[0,null,false,null,203930578360616,[[12,295,null,0,false,false,false,593699323217135,false,[[1,[2,"SoundsMuted"]],[8,0],[7,[0,1]]]]],[[96,472,"Checkbox",996355396400915,false,[[3,0]]]]],[0,null,false,null,117761487166725,[[-1,75,null,0,false,false,false,392863251547280,false]],[[96,472,"Checkbox",511435927092639,false,[[3,1]]]]]]],[0,null,false,null,296172544369895,[[-1,154,null,0,false,false,false,997962336899865,false,[[4,96],[7,[21,96,false,null,0]],[8,0],[7,[0,0]]]]],[],[[0,null,false,null,985927149003542,[[4,473,null,0,false,false,false,123268836642384,false]],[[96,472,"Checkbox",315561481166019,false,[[3,1]]]]],[0,null,false,null,786583796529460,[[-1,75,null,0,false,false,false,695928712903510,false]],[[96,472,"Checkbox",998194228640242,false,[[3,0]]]]]]],[0,null,false,null,582337186875403,[[-1,154,null,0,false,false,false,425594206476665,false,[[4,96],[7,[21,96,false,null,0]],[8,0],[7,[0,1]]]]],[],[[0,null,false,null,875327994213434,[[1,107,null,0,false,false,false,916299953137139,false,[[10,16]]]],[[96,472,"Checkbox",794607843636350,false,[[3,0]]]]],[0,null,false,null,840255025576882,[[-1,75,null,0,false,false,false,208749861265968,false]],[[96,472,"Checkbox",983402397019318,false,[[3,1]]]]]]],[0,null,false,null,246333656740313,[[-1,154,null,0,false,false,false,441642700108710,false,[[4,96],[7,[21,96,false,null,0]],[8,0],[7,[0,2]]]]],[],[[0,null,false,null,652036227791468,[[1,107,null,0,false,false,false,828330809796228,false,[[10,17]]]],[[96,472,"Checkbox",935465588289918,false,[[3,1]]]]],[0,null,false,null,537904304946318,[[-1,75,null,0,false,false,false,683423738992419,false]],[[96,472,"Checkbox",533491483188233,false,[[3,0]]]]]]],[0,null,false,null,833900698975757,[[-1,154,null,0,false,false,false,410219139402538,false,[[4,96],[7,[21,96,false,null,0]],[8,0],[7,[0,10]]]]],[],[[0,null,false,null,377182636850885,[[12,295,null,0,false,false,false,748326879458036,false,[[1,[2,"MobileMode"]],[8,0],[7,[0,0]]]]],[[96,472,"Checkbox",337986292971649,false,[[3,1]]]]],[0,null,false,null,415924690157745,[[-1,75,null,0,false,false,false,457511980398626,false]],[[96,472,"Checkbox",618045391104283,false,[[3,0]]]]]]],[0,null,false,null,920177702808912,[[-1,154,null,0,false,false,false,483746575263838,false,[[4,96],[7,[21,96,false,null,0]],[8,0],[7,[0,11]]]]],[],[[0,null,false,null,918894407772444,[[12,295,null,0,false,false,false,999888003338164,false,[[1,[2,"MobileMode"]],[8,0],[7,[0,1]]]]],[[96,472,"Checkbox",401837367048156,false,[[3,1]]]]],[0,null,false,null,403063154832955,[[-1,75,null,0,false,false,false,712635586803133,false]],[[96,472,"Checkbox",748475341464637,false,[[3,0]]]]]]],[0,null,false,null,670262833273302,[[-1,154,null,0,false,false,false,613922623310103,false,[[4,96],[7,[21,96,false,null,0]],[8,0],[7,[0,12]]]]],[],[[0,null,false,null,138713198699892,[[12,295,null,0,false,false,false,112881305471769,false,[[1,[2,"MobileMode"]],[8,0],[7,[0,2]]]]],[[96,472,"Checkbox",335891731312589,false,[[3,1]]]]],[0,null,false,null,451876367203774,[[-1,75,null,0,false,false,false,465360231245718,false]],[[96,472,"Checkbox",745202473388413,false,[[3,0]]]]]]]]],[0,null,false,null,939536526875847,[[0,169,null,2,false,false,false,238972500024666,false,[[1,[2,"Options > Save Inputs"]]]]],[[12,111,null,258191601536037,false,[[1,[2,"LeftInput"]],[7,[21,16,false,null,0]]]],[12,111,null,154134086312248,false,[[1,[2,"RightInput"]],[7,[21,16,false,null,2]]]],[12,111,null,412945548118683,false,[[1,[2,"UpInput"]],[7,[21,16,false,null,1]]]],[12,111,null,313753311944044,false,[[1,[2,"DownInput"]],[7,[21,16,false,null,3]]]],[12,113,null,424100898353433,false]]],[0,null,false,null,132944808394638,[[92,468,"Dialog",1,false,false,false,763081733685364,false]],[[0,80,null,684743088659672,false,[[1,[2,"Options > Save Inputs"]],[13]]]]],[0,null,false,null,338399772768207,[[0,169,null,2,false,false,false,809179375355592,false,[[1,[2,"Options > Save"]]]]],[[117,283,"Dialog",828071248001041,false,[[0,[0,0]],[0,[0,0]],[3,1]]],[0,80,null,917047124542398,false,[[1,[2,"Save > UpdateNbCoins"]],[13]]],[118,155,null,349958708820562,false,[[7,[10,[10,[20,12,112,false,null,[[2,"CollectedCoins"]]],[2,"/"]],[21,1,false,null,9]]]]]]],[0,null,false,null,775274523335792,[[0,169,null,2,false,false,false,645250188908801,false,[[1,[2,"Options > Mode"]]]]],[[128,283,"Dialog",399653117390485,false,[[0,[0,0]],[0,[0,0]],[3,1]]]]],[0,null,false,null,746520296114720,[[0,169,null,2,false,false,false,256642128569295,false,[[1,[2,"Options > Mode Auto"]]]]],[[12,111,null,929277844260026,false,[[1,[2,"MobileMode"]],[7,[0,0]]]],[12,113,null,372405282246497,false]],[[0,null,false,null,871114617653423,[[-1,154,null,0,false,false,false,428276440024691,false,[[4,96],[7,[21,96,false,null,0]],[8,0],[7,[0,10]]]]],[],[[0,null,false,null,518664678915604,[[12,295,null,0,false,false,false,643407719956054,false,[[1,[2,"MobileMode"]],[8,0],[7,[0,0]]]]],[[96,472,"Checkbox",743507053666679,false,[[3,1]]]]],[0,null,false,null,920509654283795,[[-1,75,null,0,false,false,false,411919624646765,false]],[[96,472,"Checkbox",234504166105107,false,[[3,0]]]]]]],[0,null,false,null,163061500607352,[[-1,154,null,0,false,false,false,676418703367812,false,[[4,96],[7,[21,96,false,null,0]],[8,0],[7,[0,11]]]]],[],[[0,null,false,null,942214202791075,[[12,295,null,0,false,false,false,560703817133032,false,[[1,[2,"MobileMode"]],[8,0],[7,[0,1]]]]],[[96,472,"Checkbox",131752770927729,false,[[3,1]]]]],[0,null,false,null,420461861583200,[[-1,75,null,0,false,false,false,666743881696975,false]],[[96,472,"Checkbox",150174989430705,false,[[3,0]]]]]]],[0,null,false,null,629284901736619,[[-1,154,null,0,false,false,false,254705193407546,false,[[4,96],[7,[21,96,false,null,0]],[8,0],[7,[0,12]]]]],[],[[0,null,false,null,408177255118387,[[12,295,null,0,false,false,false,401673386694882,false,[[1,[2,"MobileMode"]],[8,0],[7,[0,2]]]]],[[96,472,"Checkbox",164759838138846,false,[[3,1]]]]],[0,null,false,null,917642091743211,[[-1,75,null,0,false,false,false,744557685635728,false]],[[96,472,"Checkbox",654280108107228,false,[[3,0]]]]]]]]],[0,null,false,null,820091295388962,[[0,169,null,2,false,false,false,615757283135750,false,[[1,[2,"Options > Mode Mobile"]]]]],[[12,111,null,194553921128170,false,[[1,[2,"MobileMode"]],[7,[0,1]]]],[12,113,null,107024878593539,false]],[[0,null,false,null,819091928859413,[[-1,154,null,0,false,false,false,268001193783123,false,[[4,96],[7,[21,96,false,null,0]],[8,0],[7,[0,10]]]]],[],[[0,null,false,null,226706720833651,[[12,295,null,0,false,false,false,904300120210278,false,[[1,[2,"MobileMode"]],[8,0],[7,[0,0]]]]],[[96,472,"Checkbox",991697534749899,false,[[3,1]]]]],[0,null,false,null,378127453814022,[[-1,75,null,0,false,false,false,225536502270560,false]],[[96,472,"Checkbox",648754226675710,false,[[3,0]]]]]]],[0,null,false,null,792017943225828,[[-1,154,null,0,false,false,false,981551589011034,false,[[4,96],[7,[21,96,false,null,0]],[8,0],[7,[0,11]]]]],[],[[0,null,false,null,261814674404369,[[12,295,null,0,false,false,false,300146138671358,false,[[1,[2,"MobileMode"]],[8,0],[7,[0,1]]]]],[[96,472,"Checkbox",400209404523720,false,[[3,1]]]]],[0,null,false,null,907721149080600,[[-1,75,null,0,false,false,false,524823689507138,false]],[[96,472,"Checkbox",513098548921631,false,[[3,0]]]]]]],[0,null,false,null,259847136993040,[[-1,154,null,0,false,false,false,283773142216095,false,[[4,96],[7,[21,96,false,null,0]],[8,0],[7,[0,12]]]]],[],[[0,null,false,null,761917304951508,[[12,295,null,0,false,false,false,385426241072821,false,[[1,[2,"MobileMode"]],[8,0],[7,[0,2]]]]],[[96,472,"Checkbox",201967720742604,false,[[3,1]]]]],[0,null,false,null,895585121970423,[[-1,75,null,0,false,false,false,411157534146714,false]],[[96,472,"Checkbox",285016424880571,false,[[3,0]]]]]]]]],[0,null,false,null,277097666214317,[[0,169,null,2,false,false,false,810062692395509,false,[[1,[2,"Options > Mode Desktop"]]]]],[[12,111,null,945700033890185,false,[[1,[2,"MobileMode"]],[7,[0,2]]]],[12,113,null,177945236999521,false]],[[0,null,false,null,661038145228717,[[-1,154,null,0,false,false,false,790402167550911,false,[[4,96],[7,[21,96,false,null,0]],[8,0],[7,[0,10]]]]],[],[[0,null,false,null,575687613724575,[[12,295,null,0,false,false,false,861957247968380,false,[[1,[2,"MobileMode"]],[8,0],[7,[0,0]]]]],[[96,472,"Checkbox",409214933862817,false,[[3,1]]]]],[0,null,false,null,198068343197886,[[-1,75,null,0,false,false,false,883998034280104,false]],[[96,472,"Checkbox",892230656197344,false,[[3,0]]]]]]],[0,null,false,null,577983911923079,[[-1,154,null,0,false,false,false,285546152200554,false,[[4,96],[7,[21,96,false,null,0]],[8,0],[7,[0,11]]]]],[],[[0,null,false,null,268740543119379,[[12,295,null,0,false,false,false,583554263951813,false,[[1,[2,"MobileMode"]],[8,0],[7,[0,1]]]]],[[96,472,"Checkbox",254895777726274,false,[[3,1]]]]],[0,null,false,null,176526995271340,[[-1,75,null,0,false,false,false,858815673026390,false]],[[96,472,"Checkbox",203139740525762,false,[[3,0]]]]]]],[0,null,false,null,993324495237852,[[-1,154,null,0,false,false,false,979723902509293,false,[[4,96],[7,[21,96,false,null,0]],[8,0],[7,[0,12]]]]],[],[[0,null,false,null,387718560893249,[[12,295,null,0,false,false,false,585701139648673,false,[[1,[2,"MobileMode"]],[8,0],[7,[0,2]]]]],[[96,472,"Checkbox",432689991125645,false,[[3,1]]]]],[0,null,false,null,826718965611798,[[-1,75,null,0,false,false,false,240997895017897,false]],[[96,472,"Checkbox",299797279913164,false,[[3,0]]]]]]]]],[0,null,false,null,524422714038021,[[128,468,"Dialog",1,false,false,false,122615085716537,false]],[[0,80,null,882978557415891,false,[[1,[2,"Save > Update Mobile Mode"]],[13]]],[-1,99,null,905556175231862,false,[[0,[1,0.5]]]],[-1,203,null,884457959672658,false]]],[0,null,false,null,880359791638542,[[0,169,null,2,false,false,false,300416166093926,false,[[1,[2,"Options > ClearSave"]]]]],[],[[0,null,true,null,453286130576877,[[70,73,null,0,false,false,false,176499081828678,false,[[10,2],[8,0],[7,[0,1]]]],[70,73,null,0,false,false,false,473039308321156,false,[[10,2],[8,0],[7,[0,2]]]]],[[70,356,null,929476487179529,false,[[3,1]]]]],[0,null,true,null,981503581836452,[[70,73,null,0,false,false,false,948378291845230,false,[[10,2],[8,0],[7,[0,3]]]],[70,73,null,0,false,false,false,737859150884648,false,[[10,2],[8,0],[7,[0,4]]]]],[[70,356,null,194575189360687,false,[[3,0]]]]]]],[0,null,false,null,915570454338213,[[0,169,null,2,false,false,false,434280161556795,false,[[1,[2,"Options > Cancel"]]]]],[],[[0,null,true,null,894212122765031,[[70,73,null,0,false,false,false,425301747893856,false,[[10,2],[8,0],[7,[0,1]]]],[70,73,null,0,false,false,false,331058488812646,false,[[10,2],[8,0],[7,[0,2]]]]],[[70,356,null,547155698621588,false,[[3,0]]]]]]],[0,null,false,null,374226985201001,[[0,169,null,2,false,false,false,567162196368065,false,[[1,[2,"Options > Confirm"]]]]],[[0,80,null,476140259072091,false,[[1,[2,"Save > BlowSave"]],[13]]],[0,80,null,796987924011463,false,[[1,[2,"Save > UpdateNbCoins"]],[13]]],[118,155,null,456063911145602,false,[[7,[10,[10,[20,12,112,false,null,[[2,"CollectedCoins"]]],[2,"/"]],[21,1,false,null,9]]]]]],[[0,null,true,null,107389997307043,[[70,73,null,0,false,false,false,852415387312280,false,[[10,2],[8,0],[7,[0,1]]]],[70,73,null,0,false,false,false,805279444528811,false,[[10,2],[8,0],[7,[0,2]]]]],[[70,356,null,788005882196214,false,[[3,0]]]]]]],[0,null,false,null,128235582863542,[[0,169,null,2,false,false,false,158059118632159,false,[[1,[2,"Options > ClearCoins"]]]]],[],[[0,null,true,null,883200955046581,[[70,73,null,0,false,false,false,495897071112166,false,[[10,2],[8,0],[7,[0,1]]]],[70,73,null,0,false,false,false,823341727621437,false,[[10,2],[8,0],[7,[0,2]]]]],[[70,356,null,364822790463409,false,[[3,0]]]]],[0,null,true,null,514042764054691,[[70,73,null,0,false,false,false,455511604467384,false,[[10,2],[8,0],[7,[0,3]]]],[70,73,null,0,false,false,false,614705049901152,false,[[10,2],[8,0],[7,[0,4]]]]],[[70,356,null,856648254713344,false,[[3,1]]]]]]],[0,null,false,null,403319657746801,[[0,169,null,2,false,false,false,142938955956345,false,[[1,[2,"Options > Cancel2"]]]]],[],[[0,null,true,null,667382372085485,[[70,73,null,0,false,false,false,952272085999155,false,[[10,2],[8,0],[7,[0,3]]]],[70,73,null,0,false,false,false,718244295422746,false,[[10,2],[8,0],[7,[0,4]]]]],[[70,356,null,271528872819922,false,[[3,0]]]]]]],[0,null,false,null,200537218593310,[[0,169,null,2,false,false,false,978408513876486,false,[[1,[2,"Options > Confirm2"]]]]],[[0,80,null,258644321864107,false,[[1,[2,"Save > BlowCoins"]],[13]]],[0,80,null,679207350220420,false,[[1,[2,"Save > UpdateNbCoins"]],[13]]],[118,155,null,108025637621196,false,[[7,[10,[10,[20,12,112,false,null,[[2,"CollectedCoins"]]],[2,"/"]],[21,1,false,null,9]]]]]],[[0,null,true,null,543027673907374,[[70,73,null,0,false,false,false,309644325872328,false,[[10,2],[8,0],[7,[0,3]]]],[70,73,null,0,false,false,false,157883383602581,false,[[10,2],[8,0],[7,[0,4]]]]],[[70,356,null,141269359504805,false,[[3,0]]]]]]],[0,null,false,null,867528368166477,[[96,474,"Checkbox",1,false,false,false,119802286444839,false]],[],[[0,null,false,null,187142603821380,[[96,73,null,0,false,false,false,918217100264998,false,[[10,0],[8,0],[7,[0,-2]]]]],[],[[0,null,false,null,966730462205258,[[96,475,"Checkbox",0,false,false,false,747783961960789,false]],[[12,111,null,635209333195580,false,[[1,[2,"MusicMuted"]],[7,[0,0]]]],[201,296,null,452239196412762,false,[[1,[2,"music"]]]]]],[0,null,false,null,710723070957998,[[-1,75,null,0,false,false,false,227859685553262,false]],[[12,111,null,518589212264722,false,[[1,[2,"MusicMuted"]],[7,[0,1]]]],[201,292,null,357058582676680,false,[[1,[2,"music"]]]]]]]],[0,null,false,null,664138061479399,[[96,73,null,0,false,false,false,259024219584289,false,[[10,0],[8,0],[7,[0,-1]]]]],[],[[0,null,false,null,486368119841315,[[96,475,"Checkbox",0,false,false,false,177781219452157,false]],[[12,111,null,725023971740265,false,[[1,[2,"SoundsMuted"]],[7,[0,0]]]],[201,296,null,909553216708269,false,[[1,[2,"sounds"]]]]]],[0,null,false,null,868805440538171,[[-1,75,null,0,false,false,false,125727091768975,false]],[[12,111,null,916774141588272,false,[[1,[2,"SoundsMuted"]],[7,[0,1]]]],[201,292,null,441206804366303,false,[[1,[2,"sounds"]]]]]]]],[0,null,false,null,665447153221185,[[96,73,null,0,false,false,false,739395359140196,false,[[10,0],[8,0],[7,[0,0]]]]],[],[[0,null,false,null,167461449421341,[[96,475,"Checkbox",0,false,false,false,116496995891854,false]],[[4,325,null,594153022381407,false,[[3,0]]],[12,111,null,472628201424803,false,[[1,[2,"Fullscreen"]],[7,[0,1]]]]]],[0,null,false,null,494678538995895,[[-1,75,null,0,false,false,false,528794249597024,false]],[[4,476,null,388154111517884,false],[12,111,null,427730454971424,false,[[1,[2,"Fullscreen"]],[7,[0,0]]]]]]]],[0,null,false,null,658478139883047,[[96,73,null,0,false,false,false,826873870451714,false,[[10,0],[8,0],[7,[0,1]]]]],[],[[0,null,false,null,447773970160464,[[96,475,"Checkbox",0,false,false,false,514359194475288,false]],[[1,197,null,599472396875978,false,[[10,16],[3,0]]],[12,111,null,342975576962081,false,[[1,[2,"HardMode"]],[7,[0,1]]]]]],[0,null,false,null,295340609556400,[[-1,75,null,0,false,false,false,909238785492726,false]],[[1,197,null,193153531291458,false,[[10,16],[3,1]]],[12,111,null,371655681116901,false,[[1,[2,"HardMode"]],[7,[0,0]]]]]]]],[0,null,false,null,959254795502177,[[96,73,null,0,false,false,false,858429791219640,false,[[10,0],[8,0],[7,[0,2]]]]],[],[[0,null,false,null,287120104831544,[[96,475,"Checkbox",0,false,false,false,357900586037386,false]],[[1,197,null,905798709175867,false,[[10,17],[3,1]]],[12,111,null,667060349468462,false,[[1,[2,"AdvancedMode"]],[7,[0,1]]]]]],[0,null,false,null,386242405801118,[[-1,75,null,0,false,false,false,928489243681038,false]],[[1,197,null,650872193487864,false,[[10,17],[3,0]]],[1,197,null,117543504233242,false,[[10,10],[3,0]]],[12,111,null,586261458110113,false,[[1,[2,"AdvancedMode"]],[7,[0,0]]]]]]]],[0,null,false,null,329154681185176,[],[[12,113,null,419716171900365,false]]]]],[0,null,false,null,201897847463463,[[98,477,"SliderBar",0,false,false,false,566488379556777,false],[12,295,null,0,false,false,false,945205246379722,false,[[1,[10,[21,98,true,null,0],[2,"Muted"]]],[8,0],[7,[0,0]]]]],[[201,294,null,491933975844504,false,[[0,[22,98,"SliderBar",478,false,null]],[1,[19,399,[[21,98,true,null,0]]]]]],[12,111,null,737520547189188,false,[[1,[21,98,true,null,0]],[7,[22,98,"SliderBar",478,false,null]]]],[12,113,null,916575316684215,false]]],[0,null,false,null,847883412318164,[[-1,75,null,0,false,false,false,355975888696072,false],[-1,102,null,0,false,false,false,399978724048882,false]],[]]]]]],[0,[true,"Achievements Menu"],false,null,656948668828874,[[-1,72,null,0,false,false,false,656948668828874,false,[[1,[2,"Achievements Menu"]]]]],[],[[0,null,false,null,821520751458944,[[-1,127,null,0,false,false,false,587768219619307,false,[[7,[19,104]],[8,0],[7,[2,"Achievements Menu"]]]]],[],[[0,null,false,null,381027091564338,[[97,479,null,1,false,false,false,351226980093948,false]],[],[[0,null,false,null,739913167509110,[[-1,127,null,0,false,false,false,297489758891366,false,[[7,[20,0,160,false,null,[[2,"Achievements > Hidden"],[22,74,"GridViewDataBind",428,false,null]]]],[8,0],[7,[0,1]]]]],[[97,480,null,305928100537396,false,[[1,[2,"icon-16.png"]],[3,0]]]]]]],[0,null,false,null,706230204500589,[[74,427,"Button",1,false,false,false,120119415748547,false]],[],[[0,null,false,null,313111849897555,[[12,149,null,0,false,false,false,353299489741495,false,[[1,[10,[2,"Achievement"],[22,74,"GridViewDataBind",428,false,null]]]]]],[[95,480,null,669695948028898,false,[[1,[20,0,160,false,null,[[2,"Achievements > Icon"],[22,74,"GridViewDataBind",428,false,null]]]],[3,1]]]],[[1,"layer",1,"",false,false,551095129150140,false],[1,"x",0,0,false,false,993591523856517,false],[1,"y",0,0,false,false,807290452313529,false],[1,"width",0,0,false,false,911851898799818,false],[1,"height",0,0,false,false,577741681332437,false],[1,"id",1,"",false,false,776001738407319,false],[0,null,false,null,968003545089465,[[-1,154,null,0,false,false,false,757049202979217,false,[[4,94],[7,[21,94,true,null,13]],[8,0],[7,[2,"title"]]]]],[[-1,101,null,195330135970852,false,[[11,"layer"],[7,[20,94,267,true,null]]]],[-1,101,null,945723454130831,false,[[11,"x"],[7,[20,94,268,false,null]]]],[-1,101,null,390629527356025,false,[[11,"y"],[7,[20,94,481,false,null]]]],[-1,101,null,103887546846412,false,[[11,"width"],[7,[20,94,271,false,null]]]],[-1,101,null,715104356878654,false,[[11,"height"],[7,[20,94,376,false,null]]]],[-1,101,null,725619280702411,false,[[11,"id"],[7,[21,94,true,null,13]]]]],[[0,null,false,null,433529145402120,[[211,469,null,0,false,false,false,642998234296989,false,[[10,3],[8,0],[7,[20,94,396,false,null]]]]],[[211,482,null,360761560047758,false]]],[0,null,false,null,960793566250048,[],[[94,397,null,213395369006162,false],[-1,266,null,165743210557314,false,[[4,94],[5,[23,"layer"]],[0,[23,"x"]],[0,[23,"y"]]]],[94,270,null,241313887590034,false,[[0,[23,"width"]],[0,[23,"height"]]]],[94,155,null,739281672098731,false,[[7,[20,0,160,false,null,[[2,"Achievements > Name"],[22,74,"GridViewDataBind",428,false,null]]]]]],[94,483,null,267019001000417,false,[[10,1],[3,1]]],[94,365,null,526719815468183,false,[[10,13],[7,[23,"id"]]]],[94,365,null,277209520577855,false,[[10,2],[7,[10,[10,[2,"a"],[4,[22,74,"GridViewDataBind",428,false,null],[0,1]]],[2,"t"]]]]]]]]],[0,null,false,null,435813556385288,[[-1,154,null,0,false,false,false,661155409435412,false,[[4,94],[7,[21,94,true,null,13]],[8,0],[7,[2,"description"]]]]],[[-1,101,null,640318240092128,false,[[11,"layer"],[7,[20,94,267,true,null]]]],[-1,101,null,515238499715170,false,[[11,"x"],[7,[20,94,268,false,null]]]],[-1,101,null,679479151351526,false,[[11,"y"],[7,[20,94,481,false,null]]]],[-1,101,null,939624033752345,false,[[11,"width"],[7,[20,94,271,false,null]]]],[-1,101,null,716151420889652,false,[[11,"height"],[7,[20,94,376,false,null]]]],[-1,101,null,227348788656624,false,[[11,"id"],[7,[21,94,true,null,13]]]]],[[0,null,false,null,808749370509021,[[211,469,null,0,false,false,false,690199345527969,false,[[10,3],[8,0],[7,[20,94,396,false,null]]]]],[[211,482,null,405315745135327,false]]],[0,null,false,null,390943594790405,[],[[94,397,null,655551794200004,false],[-1,266,null,539891262171483,false,[[4,94],[5,[23,"layer"]],[0,[23,"x"]],[0,[23,"y"]]]],[94,270,null,168710756114577,false,[[0,[23,"width"]],[0,[23,"height"]]]],[94,155,null,913738285217300,false,[[7,[20,0,160,false,null,[[2,"Achievements > Description"],[22,74,"GridViewDataBind",428,false,null]]]]]],[94,483,null,720884544223914,false,[[10,1],[3,1]]],[94,365,null,530559955348933,false,[[10,13],[7,[23,"id"]]]],[94,365,null,671194098262590,false,[[10,2],[7,[10,[10,[2,"a"],[4,[22,74,"GridViewDataBind",428,false,null],[0,1]]],[2,"d"]]]]]]]]],[0,null,false,null,577278467322055,[[-1,154,null,0,false,false,false,511528644880422,false,[[4,94],[7,[21,94,true,null,13]],[8,0],[7,[2,"acquired"]]]]],[[-1,101,null,345377927348730,false,[[11,"layer"],[7,[20,94,267,true,null]]]],[-1,101,null,531668741326740,false,[[11,"x"],[7,[20,94,268,false,null]]]],[-1,101,null,900520653086956,false,[[11,"y"],[7,[20,94,481,false,null]]]],[-1,101,null,622590153566758,false,[[11,"width"],[7,[20,94,271,false,null]]]],[-1,101,null,524033641700074,false,[[11,"height"],[7,[20,94,376,false,null]]]],[-1,101,null,779534848854964,false,[[11,"id"],[7,[21,94,true,null,13]]]]],[[0,null,false,null,850635530454179,[[211,469,null,0,false,false,false,943605587974172,false,[[10,3],[8,0],[7,[20,94,396,false,null]]]]],[[211,482,null,577685399430184,false]]],[0,null,false,null,541052735900133,[],[[94,397,null,665529702560603,false],[-1,266,null,762674886568336,false,[[4,94],[5,[23,"layer"]],[0,[23,"x"]],[0,[23,"y"]]]],[94,270,null,936389101580341,false,[[0,[23,"width"]],[0,[23,"height"]]]],[94,155,null,346801258881815,false,[[7,[2,"Acquired !"]]]],[94,483,null,124578138701817,false,[[10,1],[3,1]]],[94,365,null,233036674219955,false,[[10,13],[7,[23,"id"]]]],[94,365,null,964527345904167,false,[[10,2],[7,[2,"acquired"]]]]]]]]]],[0,null,false,null,896624624071550,[[-1,75,null,0,false,false,false,774060841099274,false]],[[95,480,null,403603502253101,false,[[1,[20,0,160,false,null,[[2,"Achievements > Icon"],[22,74,"GridViewDataBind",428,false,null]]]],[3,1]]]],[[1,"layer",1,"",false,false,503800694015631,false],[1,"x",0,0,false,false,488516638737198,false],[1,"y",0,0,false,false,828114629503363,false],[1,"width",0,0,false,false,501522687383830,false],[1,"height",0,0,false,false,978443628624092,false],[1,"id",1,"",false,false,292878610027146,false],[0,null,false,null,607258930825779,[[-1,127,null,0,false,false,false,288224107835013,false,[[7,[20,0,160,false,null,[[2,"Achievements > Hidden"],[22,74,"GridViewDataBind",428,false,null]]]],[8,0],[7,[0,0]]]]],[[95,480,null,503218506031792,false,[[1,[20,0,160,false,null,[[2,"Achievements > Icon"],[22,74,"GridViewDataBind",428,false,null]]]],[3,1]]]],[[0,null,false,null,916624140124142,[[-1,154,null,0,false,false,false,738332120942128,false,[[4,94],[7,[21,94,true,null,13]],[8,0],[7,[2,"title"]]]]],[[-1,101,null,841951828674491,false,[[11,"layer"],[7,[20,94,267,true,null]]]],[-1,101,null,712995641261993,false,[[11,"x"],[7,[20,94,268,false,null]]]],[-1,101,null,560646236831177,false,[[11,"y"],[7,[20,94,481,false,null]]]],[-1,101,null,698999884703059,false,[[11,"width"],[7,[20,94,271,false,null]]]],[-1,101,null,349118457894813,false,[[11,"height"],[7,[20,94,376,false,null]]]],[-1,101,null,845853045756469,false,[[11,"id"],[7,[21,94,true,null,13]]]]],[[0,null,false,null,512709810866488,[[211,469,null,0,false,false,false,350656781110850,false,[[10,3],[8,0],[7,[20,94,396,false,null]]]]],[[211,482,null,822212897751774,false]]],[0,null,false,null,335098935028489,[],[[94,397,null,869662375951436,false],[-1,266,null,566343289668134,false,[[4,94],[5,[23,"layer"]],[0,[23,"x"]],[0,[23,"y"]]]],[94,270,null,429351507589950,false,[[0,[23,"width"]],[0,[23,"height"]]]],[94,155,null,317927323267578,false,[[7,[20,0,160,false,null,[[2,"Achievements > Name"],[22,74,"GridViewDataBind",428,false,null]]]]]],[94,483,null,207751834183703,false,[[10,1],[3,1]]],[94,365,null,336508096104704,false,[[10,13],[7,[23,"id"]]]],[94,365,null,873682716304150,false,[[10,2],[7,[10,[10,[2,"a"],[4,[22,74,"GridViewDataBind",428,false,null],[0,1]]],[2,"t"]]]]]]]]],[0,null,false,null,492712603881215,[[-1,154,null,0,false,false,false,789409405109610,false,[[4,94],[7,[21,94,true,null,13]],[8,0],[7,[2,"description"]]]]],[[-1,101,null,998983888670905,false,[[11,"layer"],[7,[20,94,267,true,null]]]],[-1,101,null,699946001697857,false,[[11,"x"],[7,[20,94,268,false,null]]]],[-1,101,null,231945243891529,false,[[11,"y"],[7,[20,94,481,false,null]]]],[-1,101,null,789455966398357,false,[[11,"width"],[7,[20,94,271,false,null]]]],[-1,101,null,188717204086012,false,[[11,"height"],[7,[20,94,376,false,null]]]],[-1,101,null,266259414148862,false,[[11,"id"],[7,[21,94,true,null,13]]]]],[[0,null,false,null,317537646075921,[[211,469,null,0,false,false,false,558130232774327,false,[[10,3],[8,0],[7,[20,94,396,false,null]]]]],[[211,482,null,260603938925743,false]]],[0,null,false,null,542453205176391,[],[[94,397,null,203063331292483,false],[-1,266,null,881813193956301,false,[[4,94],[5,[23,"layer"]],[0,[23,"x"]],[0,[23,"y"]]]],[94,270,null,157446703926075,false,[[0,[23,"width"]],[0,[23,"height"]]]],[94,155,null,660495164201854,false,[[7,[20,0,160,false,null,[[2,"Achievements > Description"],[22,74,"GridViewDataBind",428,false,null]]]]]],[94,483,null,691099133148254,false,[[10,1],[3,1]]],[94,365,null,806273326778513,false,[[10,13],[7,[23,"id"]]]],[94,365,null,406024831941084,false,[[10,2],[7,[10,[10,[2,"a"],[4,[22,74,"GridViewDataBind",428,false,null],[0,1]]],[2,"d"]]]]]]]]],[0,null,false,null,870862464098072,[[-1,154,null,0,false,false,false,821048318956903,false,[[4,94],[7,[21,94,true,null,13]],[8,0],[7,[2,"acquired"]]]]],[[-1,101,null,821764777691418,false,[[11,"layer"],[7,[20,94,267,true,null]]]],[-1,101,null,592103797832914,false,[[11,"x"],[7,[20,94,268,false,null]]]],[-1,101,null,856011033039001,false,[[11,"y"],[7,[20,94,481,false,null]]]],[-1,101,null,827480346216204,false,[[11,"width"],[7,[20,94,271,false,null]]]],[-1,101,null,929005471392280,false,[[11,"height"],[7,[20,94,376,false,null]]]],[-1,101,null,687913310617628,false,[[11,"id"],[7,[21,94,true,null,13]]]]],[[0,null,false,null,216959968439433,[[211,469,null,0,false,false,false,365532956367402,false,[[10,3],[8,0],[7,[20,94,396,false,null]]]]],[[211,482,null,931118800182618,false]]],[0,null,false,null,806333633871482,[],[[94,397,null,585608691449667,false],[-1,266,null,605839174979560,false,[[4,94],[5,[23,"layer"]],[0,[23,"x"]],[0,[23,"y"]]]],[94,270,null,281971029453152,false,[[0,[23,"width"]],[0,[23,"height"]]]],[94,155,null,872686665170414,false,[[7,[2,"Locked"]]]],[94,483,null,929829483983499,false,[[10,1],[3,1]]],[94,365,null,741163001068018,false,[[10,13],[7,[23,"id"]]]],[94,365,null,459639408051748,false,[[10,2],[7,[2,"locked"]]]]]]]]]],[0,null,false,null,214314125792274,[[-1,75,null,0,false,false,false,638723524684623,false],[-1,117,null,0,true,false,false,130412779229096,false,[[4,94]]]],[[-1,101,null,866394747103930,false,[[11,"layer"],[7,[20,94,267,true,null]]]],[-1,101,null,937023886486373,false,[[11,"x"],[7,[20,94,268,false,null]]]],[-1,101,null,734292571888424,false,[[11,"y"],[7,[20,94,481,false,null]]]],[-1,101,null,371200041037531,false,[[11,"width"],[7,[20,94,271,false,null]]]],[-1,101,null,477539150518945,false,[[11,"height"],[7,[20,94,376,false,null]]]],[-1,101,null,541600752347992,false,[[11,"id"],[7,[21,94,true,null,13]]]]],[[0,null,false,null,242638627782381,[[211,469,null,0,false,false,false,811169204076745,false,[[10,3],[8,0],[7,[20,94,396,false,null]]]]],[[211,482,null,703626246047692,false]]],[0,null,false,null,411861319056040,[],[[94,397,null,231065851174601,false],[-1,266,null,912675559033104,false,[[4,94],[5,[23,"layer"]],[0,[23,"x"]],[0,[23,"y"]]]],[94,270,null,301033760816191,false,[[0,[23,"width"]],[0,[23,"height"]]]],[94,155,null,919786184970227,false,[[7,[2,"Hidden"]]]],[94,483,null,203253658806049,false,[[10,1],[3,1]]],[94,365,null,605790505636535,false,[[10,13],[7,[23,"id"]]]],[94,365,null,476879154366326,false,[[10,2],[7,[2,"hidden"]]]]]]]]]]]]]]]],[0,[true,"Skins Menu"],false,null,669443833198293,[[-1,72,null,0,false,false,false,669443833198293,false,[[1,[2,"Skins Menu"]]]]],[],[[0,null,false,null,643609585737673,[[-1,127,null,0,false,false,false,172966868788532,false,[[7,[19,104]],[8,0],[7,[2,"Skins Menu"]]]]],[],[[0,null,false,null,106582919991828,[[-1,102,null,0,false,false,false,469942645361492,false]],[],[[0,null,false,null,429456712741849,[[-1,154,null,0,false,false,false,119430995324453,false,[[4,94],[7,[21,94,true,null,13]],[8,0],[7,[2,"money"]]]]],[[94,155,null,611753810308308,false,[[7,[20,12,112,false,null,[[2,"Gold"]]]]]]]],[0,null,false,null,540366651666542,[[-1,230,null,0,false,false,false,727680066832854,false]],[[-1,437,null,613658149888789,false,[[5,[2,"MenuUI"]],[3,1]]]]]]],[1,"CurID",0,0,true,false,958246589545178,false],[0,null,false,null,896678220417662,[[97,479,null,1,false,false,false,763854769114713,false]],[],[[0,null,false,null,943437450929486,[[-1,127,null,0,false,false,false,906421317083340,false,[[7,[20,0,160,false,null,[[2,"Skins > Hidden"],[22,74,"GridViewDataBind",428,false,null]]]],[8,0],[7,[0,1]]]]],[[97,480,null,613188314272625,false,[[1,[2,"icon-16.png"]],[3,0]]]]]]],[0,null,false,null,511768739214551,[[74,427,"Button",1,false,false,false,907643302435332,false]],[[-1,101,null,846660924248251,false,[[11,"CurID"],[7,[22,74,"GridViewDataBind",428,false,null]]]],[0,80,null,246421101183359,false,[[1,[2,"Menu > Update Skin"]],[13]]]]],[0,null,false,null,368443385734796,[[0,169,null,2,false,false,false,324411130437419,false,[[1,[2,"Menu > Update Skin"]]]]],[],[[1,"layer",1,"",false,false,172275881519323,false],[1,"x",0,0,false,false,523108027957793,false],[1,"y",0,0,false,false,654160945822342,false],[1,"width",0,0,false,false,994130672159193,false],[1,"height",0,0,false,false,266122937008499,false],[1,"id",1,"",false,false,973933503507726,false],[1,"metadata",1,"",false,false,730211894395608,false],[0,null,false,null,149456600755715,[[12,149,null,0,false,true,false,194281333290950,false,[[1,[10,[2,"Skin"],[23,"CurID"]]]]],[-1,127,null,0,false,false,false,680689685386459,false,[[7,[20,0,160,false,null,[[2,"Skins > Buyable"],[23,"CurID"]]]],[8,0],[7,[0,0]]]],[12,149,null,0,false,false,false,687199320585386,false,[[1,[10,[2,"Achievement"],[20,0,160,false,null,[[2,"Skins > Achievement"],[23,"CurID"]]]]]]]],[[0,80,null,683633404241610,false,[[1,[2,"Save > Skin"]],[13,[7,[23,"CurID"]]]]]]],[0,null,true,null,948930903586347,[[12,149,null,0,false,false,false,770699724855543,false,[[1,[10,[2,"Skin"],[23,"CurID"]]]]],[-1,127,null,0,false,false,false,575813882917847,false,[[7,[20,0,160,false,null,[[2,"Skins > Price"],[23,"CurID"]]]],[8,0],[7,[0,0]]]]],[[42,82,null,319209909290319,false,[[10,12],[7,[20,0,160,false,null,[[2,"Skins > Skin"],[23,"CurID"]]]]]]],[[0,null,false,null,401876056271041,[[-1,154,null,0,false,false,false,777928695677737,false,[[4,94],[7,[21,94,true,null,13]],[8,0],[7,[2,"title"]]]]],[[-1,101,null,492921665501711,false,[[11,"layer"],[7,[20,94,267,true,null]]]],[-1,101,null,298979781622890,false,[[11,"x"],[7,[20,94,268,false,null]]]],[-1,101,null,274974147306050,false,[[11,"y"],[7,[20,94,481,false,null]]]],[-1,101,null,270105214954526,false,[[11,"width"],[7,[20,94,271,false,null]]]],[-1,101,null,937406714193673,false,[[11,"height"],[7,[20,94,376,false,null]]]],[-1,101,null,977887337362338,false,[[11,"id"],[7,[21,94,true,null,13]]]],[-1,101,null,940982030109383,false,[[11,"metadata"],[7,[21,94,true,null,7]]]]],[[0,null,false,null,302206321781154,[[211,469,null,0,false,false,false,492623789774763,false,[[10,3],[8,0],[7,[20,94,396,false,null]]]]],[[211,482,null,465025251946321,false]]],[0,null,false,null,932129654498864,[],[[94,397,null,489664646117703,false],[-1,266,null,337679511597519,false,[[4,94],[5,[23,"layer"]],[0,[23,"x"]],[0,[23,"y"]]]],[94,270,null,563183009709173,false,[[0,[23,"width"]],[0,[23,"height"]]]],[94,155,null,717442025438372,false,[[7,[20,0,160,false,null,[[2,"Skins > Name"],[23,"CurID"]]]]]],[94,483,null,659789128759841,false,[[10,1],[3,1]]],[94,365,null,311575243993671,false,[[10,13],[7,[23,"id"]]]],[94,365,null,503243201384011,false,[[10,7],[7,[23,"metadata"]]]],[94,365,null,695919029304480,false,[[10,2],[7,[20,0,160,false,null,[[2,"Skins > Lang"],[23,"CurID"]]]]]]]]]],[0,null,false,null,344881604810746,[[-1,154,null,0,false,false,false,589251084593901,false,[[4,94],[7,[21,94,true,null,13]],[8,0],[7,[2,"button"]]]]],[[-1,101,null,176375875812401,false,[[11,"layer"],[7,[20,94,267,true,null]]]],[-1,101,null,697454258891258,false,[[11,"x"],[7,[20,94,268,false,null]]]],[-1,101,null,267630287500711,false,[[11,"y"],[7,[20,94,481,false,null]]]],[-1,101,null,924325396754697,false,[[11,"width"],[7,[20,94,271,false,null]]]],[-1,101,null,923808876792547,false,[[11,"height"],[7,[20,94,376,false,null]]]],[-1,101,null,965034598879666,false,[[11,"id"],[7,[21,94,true,null,13]]]],[-1,101,null,614709919052011,false,[[11,"metadata"],[7,[21,94,true,null,7]]]]],[[0,null,false,null,293913179735946,[[211,469,null,0,false,false,false,295417569807327,false,[[10,3],[8,0],[7,[20,94,396,false,null]]]]],[[211,482,null,611867874484407,false]]],[0,null,false,null,775930173803489,[],[[94,397,null,924826660941354,false],[-1,266,null,183264858842960,false,[[4,94],[5,[23,"layer"]],[0,[23,"x"]],[0,[23,"y"]]]],[94,270,null,742499354429951,false,[[0,[23,"width"]],[0,[23,"height"]]]],[94,155,null,107285146337246,false,[[7,[2,"Choose"]]]],[94,483,null,132450609593251,false,[[10,1],[3,1]]],[94,365,null,913931552345649,false,[[10,13],[7,[23,"id"]]]],[94,365,null,228474712511918,false,[[10,7],[7,[23,"metadata"]]]],[94,365,null,332021180210544,false,[[10,2],[7,[2,"choose"]]]]]]]],[0,null,false,null,469043922022399,[[-1,154,null,0,false,false,false,591039374772687,false,[[4,94],[7,[21,94,true,null,13]],[8,0],[7,[2,"price"]]]]],[[-1,101,null,509482732789675,false,[[11,"layer"],[7,[20,94,267,true,null]]]],[-1,101,null,745201799025488,false,[[11,"x"],[7,[20,94,268,false,null]]]],[-1,101,null,846094696628073,false,[[11,"y"],[7,[20,94,481,false,null]]]],[-1,101,null,605674764404357,false,[[11,"width"],[7,[20,94,271,false,null]]]],[-1,101,null,801734246889076,false,[[11,"height"],[7,[20,94,376,false,null]]]],[-1,101,null,437242292263915,false,[[11,"id"],[7,[21,94,true,null,13]]]],[-1,101,null,214821971911627,false,[[11,"metadata"],[7,[21,94,true,null,7]]]]],[[0,null,false,null,549887865216433,[[211,469,null,0,false,false,false,709844692145895,false,[[10,3],[8,0],[7,[20,94,396,false,null]]]]],[[211,482,null,870961715714247,false]]],[0,null,false,null,753742230420935,[],[[94,397,null,518667187882079,false],[-1,266,null,282761601152721,false,[[4,94],[5,[23,"layer"]],[0,[23,"x"]],[0,[23,"y"]]]],[94,270,null,130148183058376,false,[[0,[23,"width"]],[0,[23,"height"]]]],[94,483,null,199342716555777,false,[[10,1],[3,1]]],[94,365,null,589315084338435,false,[[10,13],[7,[23,"id"]]]],[94,365,null,797970909521850,false,[[10,7],[7,[23,"metadata"]]]]],[[0,null,false,null,781004870535756,[[1,108,null,0,false,false,false,990412782166406,false,[[10,8],[8,0],[7,[20,0,160,false,null,[[2,"Skins > Skin"],[23,"CurID"]]]]]]],[[94,155,null,343884997266165,false,[[7,[2,"Chosen"]]]],[106,414,"Button",835448433888955,false,[[3,0]]],[94,365,null,799429580177711,false,[[10,2],[7,[2,"chosen"]]]]]],[0,null,false,null,608998256124589,[[-1,75,null,0,false,false,false,175227135047000,false]],[[94,155,null,215468664227994,false,[[7,[2,"Acquired"]]]],[106,414,"Button",536656556730856,false,[[3,1]]],[94,365,null,121124848216881,false,[[10,2],[7,[2,"acquired"]]]]]]]]]]]],[0,null,false,null,329071394535602,[[-1,75,null,0,false,false,false,868223091080772,false]],[],[[0,null,false,null,109370804162802,[[-1,127,null,0,false,false,false,290596363318318,false,[[7,[20,0,160,false,null,[[2,"Skins > Hidden"],[23,"CurID"]]]],[8,0],[7,[0,0]]]]],[[42,82,null,884633416053389,false,[[10,12],[7,[20,0,160,false,null,[[2,"Skins > Skin"],[23,"CurID"]]]]]]],[[0,null,false,null,899999516362563,[[-1,154,null,0,false,false,false,585738312260725,false,[[4,94],[7,[21,94,true,null,13]],[8,0],[7,[2,"title"]]]]],[[-1,101,null,415485073352815,false,[[11,"layer"],[7,[20,94,267,true,null]]]],[-1,101,null,163893057338327,false,[[11,"x"],[7,[20,94,268,false,null]]]],[-1,101,null,954367960490842,false,[[11,"y"],[7,[20,94,481,false,null]]]],[-1,101,null,484105201072737,false,[[11,"width"],[7,[20,94,271,false,null]]]],[-1,101,null,677532696492862,false,[[11,"height"],[7,[20,94,376,false,null]]]],[-1,101,null,760141734663687,false,[[11,"id"],[7,[21,94,true,null,13]]]],[-1,101,null,268309968404200,false,[[11,"metadata"],[7,[21,94,true,null,7]]]]],[[0,null,false,null,245699905316493,[[211,469,null,0,false,false,false,101895163053867,false,[[10,3],[8,0],[7,[20,94,396,false,null]]]]],[[211,482,null,258053924941307,false]]],[0,null,false,null,278412423879376,[],[[94,397,null,298842578304488,false],[-1,266,null,336491520997776,false,[[4,94],[5,[23,"layer"]],[0,[23,"x"]],[0,[23,"y"]]]],[94,270,null,778103252967021,false,[[0,[23,"width"]],[0,[23,"height"]]]],[94,155,null,694882498307117,false,[[7,[20,0,160,false,null,[[2,"Skins > Name"],[23,"CurID"]]]]]],[94,483,null,754650122456286,false,[[10,1],[3,1]]],[94,365,null,503597283801085,false,[[10,13],[7,[23,"id"]]]],[94,365,null,834635246089368,false,[[10,7],[7,[23,"metadata"]]]],[94,365,null,961806748508915,false,[[10,2],[7,[20,0,160,false,null,[[2,"Skins > Lang"],[23,"CurID"]]]]]]]]]],[0,null,false,null,561102933042836,[[-1,154,null,0,false,false,false,567519100507703,false,[[4,94],[7,[21,94,true,null,13]],[8,0],[7,[2,"price"]]]]],[[-1,101,null,222879531573951,false,[[11,"layer"],[7,[20,94,267,true,null]]]],[-1,101,null,407977851510433,false,[[11,"x"],[7,[20,94,268,false,null]]]],[-1,101,null,420032764284850,false,[[11,"y"],[7,[20,94,481,false,null]]]],[-1,101,null,807267270613932,false,[[11,"width"],[7,[20,94,271,false,null]]]],[-1,101,null,458755022854776,false,[[11,"height"],[7,[20,94,376,false,null]]]],[-1,101,null,609340944380236,false,[[11,"id"],[7,[21,94,true,null,13]]]],[-1,101,null,502896677373283,false,[[11,"metadata"],[7,[21,94,true,null,7]]]]],[[0,null,false,null,222605767705377,[[211,469,null,0,false,false,false,524136815036111,false,[[10,3],[8,0],[7,[20,94,396,false,null]]]]],[[211,482,null,872947970618049,false]]],[0,null,false,null,873918198505192,[],[[94,397,null,993806284545072,false],[-1,266,null,756491450746737,false,[[4,94],[5,[23,"layer"]],[0,[23,"x"]],[0,[23,"y"]]]],[94,270,null,653356256089324,false,[[0,[23,"width"]],[0,[23,"height"]]]],[94,483,null,130886724651954,false,[[10,1],[3,1]]],[94,365,null,990978144750665,false,[[10,13],[7,[23,"id"]]]],[94,365,null,814772459059626,false,[[10,7],[7,[23,"metadata"]]]]],[[0,null,false,null,339830203506720,[[-1,127,null,0,false,false,false,515653252262492,false,[[7,[20,0,160,false,null,[[2,"Skins > Buyable"],[23,"CurID"]]]],[8,1],[7,[0,0]]]]],[[167,311,null,488360932510957,false,[[1,[2,"getLanguageValue"]],[13,[7,[21,30,true,null,0]],[7,[2,"price"]],[7,[2,"text"]],[7,[2,"Price: {0}"]],[7,[2,""]]]]],[167,311,null,892225141481220,false,[[1,[2,"processString"]],[13,[7,[20,167,312,false,null]],[7,[20,0,160,false,null,[[2,"Skins > Price"],[23,"CurID"]]]]]]],[94,155,null,860808753414917,false,[[7,[20,167,312,false,null]]]],[94,483,null,358186573228586,false,[[10,1],[3,0]]],[94,483,null,822902797753918,false,[[10,0],[3,0]]],[94,483,null,496176940249027,false,[[10,6],[3,1]]],[94,483,null,252580714090759,false,[[10,5],[3,1]]]]],[0,null,false,null,860152746092731,[[-1,75,null,0,false,false,false,201229947912888,false]],[[167,311,null,678777924301270,false,[[1,[2,"getLanguageValue"]],[13,[7,[21,30,true,null,0]],[7,[2,"achievement"]],[7,[2,"text"]],[7,[2,"Achievement: {0}"]],[7,[2,""]]]]],[167,311,null,470507980764756,false,[[1,[2,"processString"]],[13,[7,[20,167,312,false,null]],[7,[20,0,160,false,null,[[2,"Achievements > Name"],[20,0,160,false,null,[[2,"Skins > Achievement"],[23,"CurID"]]]]]]]]],[94,155,null,863319868818647,false,[[7,[20,167,312,false,null]]]],[94,483,null,658915465233999,false,[[10,1],[3,0]]],[94,483,null,856739959043738,false,[[10,0],[3,0]]],[94,483,null,288497395543069,false,[[10,6],[3,1]]],[94,483,null,303423802145677,false,[[10,5],[3,1]]]]]]]]],[0,null,false,null,580415218146675,[[-1,154,null,0,false,false,false,389093258917261,false,[[4,94],[7,[21,94,true,null,13]],[8,0],[7,[2,"button"]]]]],[[-1,101,null,900359016912890,false,[[11,"layer"],[7,[20,94,267,true,null]]]],[-1,101,null,423303602527836,false,[[11,"x"],[7,[20,94,268,false,null]]]],[-1,101,null,283467663197101,false,[[11,"y"],[7,[20,94,481,false,null]]]],[-1,101,null,422286500384914,false,[[11,"width"],[7,[20,94,271,false,null]]]],[-1,101,null,385110882647276,false,[[11,"height"],[7,[20,94,376,false,null]]]],[-1,101,null,238986498865397,false,[[11,"id"],[7,[21,94,true,null,13]]]],[-1,101,null,688053268359456,false,[[11,"metadata"],[7,[21,94,true,null,7]]]]],[[0,null,false,null,666070546734104,[[211,469,null,0,false,false,false,553012600154247,false,[[10,3],[8,0],[7,[20,94,396,false,null]]]]],[[211,482,null,116442823013046,false]]],[0,null,false,null,750949219457506,[],[[94,397,null,239073506817257,false],[-1,266,null,549434025766677,false,[[4,94],[5,[23,"layer"]],[0,[23,"x"]],[0,[23,"y"]]]],[94,270,null,131028262552383,false,[[0,[23,"width"]],[0,[23,"height"]]]],[94,483,null,889858540926193,false,[[10,1],[3,1]]],[94,365,null,321458041979111,false,[[10,13],[7,[23,"id"]]]],[94,365,null,854698824395014,false,[[10,7],[7,[23,"metadata"]]]]],[[0,null,false,null,758040197973246,[[-1,127,null,0,false,false,false,756502751777708,false,[[7,[20,0,160,false,null,[[2,"Skins > Buyable"],[23,"CurID"]]]],[8,1],[7,[0,0]]]]],[[94,155,null,170183739863404,false,[[7,[2,"Buy"]]]],[106,414,"Button",721913177858822,false,[[3,1]]],[94,365,null,317417180431929,false,[[10,2],[7,[2,"buy"]]]]]],[0,null,false,null,449974727995028,[[-1,75,null,0,false,false,false,892175686584734,false]],[[94,155,null,468877822974261,false,[[7,[2,""]]]],[106,414,"Button",472008873443320,false,[[3,0]]],[94,483,null,169442309430943,false,[[10,1],[3,0]]],[94,483,null,638770646019080,false,[[10,0],[3,0]]],[94,483,null,139523215178514,false,[[10,6],[3,1]]]]]]]]]]],[0,null,false,null,458189743087276,[[-1,75,null,0,false,false,false,498084561328616,false]],[[42,82,null,851397777543094,false,[[10,12],[7,[2,""]]]]],[[0,null,false,null,316074994297803,[[-1,154,null,0,false,false,false,707755115093424,false,[[4,94],[7,[21,94,true,null,13]],[8,0],[7,[2,"title"]]]]],[[-1,101,null,307502448528348,false,[[11,"layer"],[7,[20,94,267,true,null]]]],[-1,101,null,934441307273133,false,[[11,"x"],[7,[20,94,268,false,null]]]],[-1,101,null,376664913679415,false,[[11,"y"],[7,[20,94,481,false,null]]]],[-1,101,null,858735747549229,false,[[11,"width"],[7,[20,94,271,false,null]]]],[-1,101,null,741811968466865,false,[[11,"height"],[7,[20,94,376,false,null]]]],[-1,101,null,267849802826946,false,[[11,"id"],[7,[21,94,true,null,13]]]],[-1,101,null,659158648983909,false,[[11,"metadata"],[7,[21,94,true,null,7]]]]],[[0,null,false,null,570720708258047,[[211,469,null,0,false,false,false,602351536668253,false,[[10,3],[8,0],[7,[20,94,396,false,null]]]]],[[211,482,null,351735925434417,false]]],[0,null,false,null,775895497249732,[],[[94,397,null,702365733725431,false],[-1,266,null,766269787788882,false,[[4,94],[5,[23,"layer"]],[0,[23,"x"]],[0,[23,"y"]]]],[94,270,null,213383911457558,false,[[0,[23,"width"]],[0,[23,"height"]]]],[94,155,null,385618153200203,false,[[7,[2,"Hidden"]]]],[94,483,null,575721841745207,false,[[10,1],[3,1]]],[94,365,null,854529112552494,false,[[10,13],[7,[23,"id"]]]],[94,365,null,529892666781664,false,[[10,7],[7,[23,"metadata"]]]],[94,365,null,818759374234853,false,[[10,2],[7,[2,"hidden"]]]]]]]],[0,null,false,null,678907001585150,[[-1,154,null,0,false,false,false,818853343145464,false,[[4,94],[7,[21,94,true,null,13]],[8,0],[7,[2,"price"]]]]],[[-1,101,null,333183479800861,false,[[11,"layer"],[7,[20,94,267,true,null]]]],[-1,101,null,924724301866340,false,[[11,"x"],[7,[20,94,268,false,null]]]],[-1,101,null,127172098187993,false,[[11,"y"],[7,[20,94,481,false,null]]]],[-1,101,null,810757351821354,false,[[11,"width"],[7,[20,94,271,false,null]]]],[-1,101,null,989266133369108,false,[[11,"height"],[7,[20,94,376,false,null]]]],[-1,101,null,206999536168489,false,[[11,"id"],[7,[21,94,true,null,13]]]],[-1,101,null,220139410984727,false,[[11,"metadata"],[7,[21,94,true,null,7]]]]],[[0,null,false,null,411999556705473,[[211,469,null,0,false,false,false,253029787913199,false,[[10,3],[8,0],[7,[20,94,396,false,null]]]]],[[211,482,null,400267933142172,false]]],[0,null,false,null,998741628706228,[],[[94,397,null,193855283792357,false],[-1,266,null,848778434508842,false,[[4,94],[5,[23,"layer"]],[0,[23,"x"]],[0,[23,"y"]]]],[94,270,null,332836763850577,false,[[0,[23,"width"]],[0,[23,"height"]]]],[94,365,null,956520329679482,false,[[10,13],[7,[23,"id"]]]],[94,365,null,588652154477089,false,[[10,7],[7,[23,"metadata"]]]]],[[0,null,false,null,180545547663075,[[-1,127,null,0,false,false,false,310200525708409,false,[[7,[20,0,160,false,null,[[2,"Skins > Buyable"],[23,"CurID"]]]],[8,1],[7,[0,0]]]]],[[167,311,null,430118072543615,false,[[1,[2,"getLanguageValue"]],[13,[7,[21,30,true,null,0]],[7,[2,"price"]],[7,[2,"text"]],[7,[2,"Price: {0}"]],[7,[2,""]]]]],[167,311,null,283702157194843,false,[[1,[2,"processString"]],[13,[7,[20,167,312,false,null]],[7,[20,0,160,false,null,[[2,"Skins > Price"],[23,"CurID"]]]]]]],[94,155,null,252984899720163,false,[[7,[20,167,312,false,null]]]],[94,483,null,283441801968819,false,[[10,1],[3,0]]],[94,483,null,324888287701120,false,[[10,0],[3,0]]],[94,483,null,863231503490198,false,[[10,6],[3,1]]]]],[0,null,false,null,745865681124743,[[-1,75,null,0,false,false,false,602426686100634,false]],[[167,311,null,630531109498996,false,[[1,[2,"getLanguageValue"]],[13,[7,[21,30,true,null,0]],[7,[2,"achievement"]],[7,[2,"text"]],[7,[2,"Achievement: {0}"]],[7,[2,""]]]]],[167,311,null,660980133872128,false,[[1,[2,"processString"]],[13,[7,[20,167,312,false,null]],[7,[20,0,160,false,null,[[2,"Achievements > Name"],[20,0,160,false,null,[[2,"Skins > Achievement"],[23,"CurID"]]]]]]]]],[94,155,null,997590122592513,false,[[7,[20,167,312,false,null]]]],[94,483,null,522792739998515,false,[[10,1],[3,0]]],[94,483,null,498854818531276,false,[[10,0],[3,0]]],[94,483,null,835085459880539,false,[[10,6],[3,1]]]]]]]]],[0,null,false,null,106614593797223,[[-1,154,null,0,false,false,false,677337682976714,false,[[4,94],[7,[21,94,true,null,13]],[8,0],[7,[2,"button"]]]]],[[-1,101,null,594239761195934,false,[[11,"layer"],[7,[20,94,267,true,null]]]],[-1,101,null,364394389316592,false,[[11,"x"],[7,[20,94,268,false,null]]]],[-1,101,null,956661578873178,false,[[11,"y"],[7,[20,94,481,false,null]]]],[-1,101,null,224275217984265,false,[[11,"width"],[7,[20,94,271,false,null]]]],[-1,101,null,725381529715610,false,[[11,"height"],[7,[20,94,376,false,null]]]],[-1,101,null,628807614846761,false,[[11,"id"],[7,[21,94,true,null,13]]]],[-1,101,null,782566213183095,false,[[11,"metadata"],[7,[21,94,true,null,7]]]]],[[0,null,false,null,536301786423087,[[211,469,null,0,false,false,false,953749472488958,false,[[10,3],[8,0],[7,[20,94,396,false,null]]]]],[[211,482,null,181719378892094,false]]],[0,null,false,null,881563095308404,[],[[94,397,null,203297007316799,false],[-1,266,null,732646393116556,false,[[4,94],[5,[23,"layer"]],[0,[23,"x"]],[0,[23,"y"]]]],[94,270,null,500529308062901,false,[[0,[23,"width"]],[0,[23,"height"]]]],[94,155,null,575142545417641,false,[[7,[2,"Hidden"]]]],[94,483,null,200093242241292,false,[[10,1],[3,1]]],[94,365,null,910881896213798,false,[[10,13],[7,[23,"id"]]]],[94,365,null,968104012574633,false,[[10,7],[7,[23,"metadata"]]]],[94,365,null,130571899727038,false,[[10,2],[7,[2,"hidden"]]]]],[[0,null,false,null,683180564041825,[[-1,127,null,0,false,false,false,194305898410661,false,[[7,[20,0,160,false,null,[[2,"Skins > Buyable"],[23,"CurID"]]]],[8,1],[7,[0,0]]]]],[[94,155,null,657603917644175,false,[[7,[2,"Buy"]]]],[106,414,"Button",483480646709841,false,[[3,1]]]]],[0,null,false,null,145175279661500,[[-1,75,null,0,false,false,false,531467634455552,false]],[[94,155,null,798020939550879,false,[[7,[2,""]]]],[106,414,"Button",245488863499958,false,[[3,0]]],[94,483,null,223341179829899,false,[[10,1],[3,0]]],[94,483,null,789094994254012,false,[[10,0],[3,0]]],[94,483,null,135535848111583,false,[[10,6],[3,1]]]]]]]]]]]]],[0,null,false,null,463256858522888,[],[[-1,99,null,419613621617968,false,[[0,[0,0]]]]],[[0,null,false,null,465381913358883,[[-1,180,null,0,true,false,false,626778640843334,false,[[4,203],[7,[21,203,false,null,0]],[3,1]]]],[[203,181,null,718989313993728,false,[[3,0],[4,42]]]]],[0,null,false,null,460179524218187,[[42,73,null,0,false,false,false,303029714350800,false,[[10,12],[8,0],[7,[2,"spanish"]]]]],[[32,181,null,251974626751745,false,[[3,1],[4,33]]]]],[0,null,false,null,969150741028909,[[42,73,null,0,false,false,false,251615831588836,false,[[10,12],[8,0],[7,[2,""]]]]],[[203,182,"Skin",461467509373234,false]]],[0,null,false,null,501576378991201,[[-1,75,null,0,false,false,false,742547114630364,false]],[[203,183,"Skin",137835415568916,false,[[1,[21,42,true,null,12]]]],[203,184,"Skin",115916439584713,false,[[3,1]]]]]]]]],[0,null,false,null,763288788447646,[[106,427,"Button",1,false,false,false,111446320124506,false]],[],[[0,null,false,null,935797859081416,[[12,149,null,0,false,false,false,851850751857040,false,[[1,[10,[2,"Skin"],[23,"CurID"]]]]]],[[1,316,null,997892591215158,false,[[10,8],[7,[20,0,160,false,null,[[2,"Skins > Skin"],[23,"CurID"]]]]]],[12,111,null,679969978764122,false,[[1,[2,"CurSkin"]],[7,[21,1,true,null,8]]]],[12,113,null,758578674784746,false]]],[0,null,false,null,695502533235226,[[-1,75,null,0,false,false,false,594814014249123,false],[-1,127,null,0,false,false,false,269506238232837,false,[[7,[20,0,160,false,null,[[2,"Skins > Buyable"],[23,"CurID"]]]],[8,1],[7,[0,0]]]]],[],[[0,null,false,null,153026498706027,[[12,295,null,0,false,false,false,459112937131916,false,[[1,[2,"Gold"]],[8,5],[7,[19,105,[[20,0,160,false,null,[[2,"Skins > Price"],[23,"CurID"]]]]]]]]],[[12,484,null,571623014471422,false,[[1,[2,"Gold"]],[0,[19,105,[[20,0,160,false,null,[[2,"Skins > Price"],[23,"CurID"]]]]]]]],[0,80,null,343286106581180,false,[[1,[2,"Skins > Unlock"]],[13,[7,[23,"CurID"]]]]],[1,316,null,259862072560787,false,[[10,8],[7,[20,0,160,false,null,[[2,"Skins > Skin"],[23,"CurID"]]]]]],[12,111,null,666870509285026,false,[[1,[2,"CurSkin"]],[7,[21,1,true,null,8]]]],[12,113,null,143156884866654,false]],[[0,null,false,null,606474893444688,[[-1,125,null,0,false,false,false,402090155926161,false,[[4,94]]],[-1,154,null,0,false,false,false,710124773678083,false,[[4,94],[7,[21,94,true,null,13]],[8,0],[7,[2,"money"]]]]],[[94,155,null,234777291755029,false,[[7,[20,12,112,false,null,[[2,"Gold"]]]]]]]]]]]],[0,null,false,null,823699531276430,[],[[0,80,null,201989566419106,false,[[1,[2,"Menu > Update Skin"]],[13]]]]]]]]]]],[0,[true,"Credits Menu"],false,null,757417334387862,[[-1,72,null,0,false,false,false,757417334387862,false,[[1,[2,"Credits Menu"]]]]],[],[[0,null,true,null,370802196191169,[[3,485,null,1,false,false,false,865656571087228,false,[[4,112]]],[10,460,null,1,false,false,false,733782634527298,false,[[3,0],[3,1],[4,112]]]],[[0,80,null,881072830216894,false,[[1,[2,"unlockAllLevels"]],[13]]]]]]]]],["Common Menus",[[2,"Main Menu",false],[0,[true,"End Card"],false,null,302531167753173,[[-1,72,null,0,false,false,false,302531167753173,false,[[1,[2,"End Card"]]]]],[],[[0,null,false,null,709127389402980,[[0,169,null,2,false,false,false,758587919888590,false,[[1,[2,"Menu > End"]]]]],[[78,283,"Dialog",448032496261272,false,[[0,[0,0]],[0,[0,0]],[3,1]]],[-1,433,null,146027187906884,false,[[0,[0,0]]]],[4,198,null,265031532258374,false,[[1,[2,"WebSdkWrapper.gameplayStop()"]]]]],[[0,null,false,null,209727201401536,[[42,77,null,0,false,true,false,165705405148012,false,[[10,16]]]],[],[[0,null,false,null,459345575056318,[[42,77,null,0,false,true,false,697345247586576,false,[[10,18]]]],[[80,155,null,772203547329617,false,[[7,[20,84,372,true,null]]]]],[[0,null,false,null,615154646507367,[[1,107,null,0,false,false,false,257934359768203,false,[[10,17]]]],[[27,238,null,403696272321881,false,[[3,0],[7,[0,0]],[3,0]]],[27,352,null,639446474707387,false,[[0,[5,[20,27,251,false,null],[0,1]]],[0,[0,0]],[7,[7,[19,412,[[6,[20,42,121,false,null],[0,100]]]],[0,100]]]]],[27,352,null,949837414376675,false,[[0,[5,[20,27,251,false,null],[0,1]]],[0,[0,1]],[7,[7,[19,412,[[6,[20,42,122,false,null],[0,100]]]],[0,100]]]]],[27,352,null,884202899385116,false,[[0,[5,[20,27,251,false,null],[0,1]]],[0,[0,2]],[7,[7,[19,412,[[6,[20,42,87,false,null],[0,100]]]],[0,100]]]]],[27,352,null,795212320375246,false,[[0,[5,[20,27,251,false,null],[0,1]]],[0,[0,3]],[7,[21,42,true,null,0]]]],[27,352,null,259754123549251,false,[[0,[5,[20,27,251,false,null],[0,1]]],[0,[0,4]],[7,[20,42,353,false,null]]]],[27,352,null,770779046276800,false,[[0,[5,[20,27,251,false,null],[0,1]]],[0,[0,5]],[7,[21,42,false,null,2]]]],[27,486,null,633106613946569,false,[[0,[5,[20,27,251,false,null],[0,1]]],[0,[0,0]],[0,[0,1]],[7,[20,80,372,true,null]]]],[27,486,null,693993370845458,false,[[0,[5,[20,27,251,false,null],[0,1]]],[0,[0,1]],[0,[0,1]],[7,[19,104]]]],[4,285,null,458544939599424,false,[[3,1],[7,[2,"Not replaying, end of level"]]]]]]]],[0,null,false,null,536953458054288,[[-1,75,null,0,false,false,false,329926866747076,false]],[[4,285,null,371567591100624,false,[[3,1],[7,[2,"Replaying, end of level"]]]]],[[0,null,false,null,574992713258808,[[-1,127,null,0,false,false,false,981822717828988,false,[[7,[20,27,242,false,null,[[5,[20,27,251,false,null],[0,1]],[0,1],[0,1]]]],[8,1],[7,[19,104]]]]],[[80,155,null,675530373324722,false,[[7,[10,[10,[2,"|"],[20,84,372,true,null]],[2,"|"]]]]]]],[0,null,false,null,680102265660463,[[-1,75,null,0,false,false,false,592750067097760,false]],[[80,155,null,410579586492146,false,[[7,[20,27,242,false,null,[[5,[20,27,251,false,null],[0,1]],[0,0],[0,1]]]]]]]]]]]]]],[0,null,false,null,161907250474873,[[-1,127,null,0,false,false,false,525301166878135,false,[[7,[19,189,[[19,104],[2,"Level"]]]],[8,1],[7,[0,-1]]]]],[],[[0,null,true,null,169513857372481,[[0,169,null,2,false,false,false,952940984388581,false,[[1,[2,"Menu > Replay"]]]],[2,284,null,1,false,false,false,999042921041768,false,[[9,82]]]],[],[[0,null,false,null,712981394275815,[[2,487,null,0,false,false,false,317542631770457,false,[[9,17]]],[1,107,null,0,false,true,false,552749489878396,false,[[10,3]]],[1,107,null,0,false,true,false,274503767365712,false,[[10,21]]]],[[-1,488,null,527435541814437,false,[[6,"Level 1"]]]]],[0,null,false,null,227260233995585,[[-1,75,null,0,false,false,false,990475204881135,false],[2,487,null,0,false,false,false,792162639428200,false,[[9,17]]],[1,107,null,0,false,false,false,199966970925087,false,[[10,21]]]],[[-1,432,null,868495525724217,false,[[1,[10,[2,"Level "],[21,1,false,null,19]]]]]]],[0,null,false,null,147240126713441,[[-1,75,null,0,false,false,false,133571855606909,false],[2,487,null,0,false,false,false,221734676113925,false,[[9,17]]]],[[-1,489,null,589805634608540,false],[4,198,null,442112124168438,false,[[1,[10,[10,[2,"WebSdkWrapper.replayLevel("],[19,105,[[19,106,[[19,104],[0,1],[2," "]]]]]],[2,")"]]]]],[78,426,"Dialog",971846159506900,false],[-1,433,null,191215297940802,false,[[0,[0,1]]]],[-1,203,null,463241098446547,false]]],[0,null,false,null,689039611648109,[[-1,75,null,0,false,false,false,838360495729270,false]],[[4,198,null,978705794277951,false,[[1,[10,[10,[2,"WebSdkWrapper.replayLevel("],[19,105,[[19,106,[[19,104],[0,1],[2," "]]]]]],[2,")"]]]]],[78,426,"Dialog",134750538964283,false],[-1,433,null,276110713654038,false,[[0,[0,1]]]],[-1,203,null,617552514180430,false]],[[0,null,false,null,226347249892819,[[49,77,null,0,false,false,false,859632681011826,false,[[10,2]]],[1,107,null,0,false,false,false,457356909362241,false,[[10,16]]]],[],[[0,null,false,null,222053043218322,[[78,490,"Dialog",0,false,false,false,446175701282203,false]],[[-1,489,null,992979311551848,false]]],[0,null,false,null,849390939309567,[[-1,75,null,0,false,false,false,317347617826600,false]],[],[[0,null,true,null,675536112900555,[[2,487,null,0,false,false,false,640779014384891,false,[[9,82]]],[0,491,null,0,false,false,false,203105083234461,false,[[0,[0,0]],[8,0],[7,[2,"1"]]]]],[[1,197,null,262468450122039,false,[[10,23],[3,0]]]]],[0,null,false,null,990487818797297,[[-1,75,null,0,false,false,false,679383756139380,false]],[[-1,489,null,802433053930171,false]]]]]]]]]]]]]]],[0,[true,"End Game"],false,null,612836382817091,[[-1,72,null,0,false,false,false,612836382817091,false,[[1,[2,"End Game"]]]]],[],[[0,null,false,null,293626678624596,[[-1,98,null,1,false,false,false,522784042602369,false],[1,107,null,0,false,true,false,765975451972328,false,[[10,16]]],[-1,154,null,0,false,false,false,324633872653584,false,[[4,86],[7,[21,86,false,null,13]],[8,0],[7,[0,1]]]]],[[86,370,null,196741678100464,false,[[3,0]]]]],[0,null,false,null,409899824037429,[[0,169,null,2,false,false,false,943420265334402,false,[[1,[2,"Menu > EndGame"]]]]],[[4,198,null,785679874532806,false,[[1,[2,"WebSdkWrapper.gameplayStop()"]]]]],[[1,"ID",0,0,true,false,873328039958921,false],[0,null,false,null,899205794266984,[],[[-1,101,null,315854355272890,false,[[11,"ID"],[7,[19,105,[[19,106,[[19,104],[0,1],[2," "]]]]]]]],[85,283,"Dialog",568255723791512,false,[[0,[0,0]],[0,[0,0]],[3,1]]],[-1,433,null,283670882313126,false,[[0,[0,0]]]]]],[0,null,false,null,686666836895303,[],[[87,155,null,223757763137903,false,[[7,[10,[10,[20,158,411,true,null,[[4,[5,[19,212],[21,1,false,null,4]],[12,[19,412,[[6,[5,[5,[19,212],[21,1,false,null,4]],[19,299,[[5,[19,212],[21,1,false,null,4]]]]],[0,100]]]],[0,100]]]]],[2,":"]],[19,413,[[8,[19,412,[[6,[5,[5,[19,212],[21,1,false,null,4]],[19,299,[[5,[19,212],[21,1,false,null,4]]]]],[0,100]]]],[0,100]],[0,2]]]]]]]]],[0,null,false,null,405095970679863,[[0,491,null,0,false,false,false,679677439621132,false,[[0,[0,0]],[8,0],[7,[0,1]]]]],[[12,331,null,753809230526805,false,[[1,[2,"LastLevel"]]]]],[[0,null,true,null,222972121543207,[[12,295,null,0,false,false,false,182786535824295,false,[[1,[10,[2,"besttime"],[18,[21,1,false,null,16],[2,""],[2,"hard"]]]],[8,4],[7,[5,[19,212],[21,1,false,null,4]]]]],[12,149,null,0,false,true,false,121716094544242,false,[[1,[10,[2,"besttime"],[18,[21,1,false,null,16],[2,""],[2,"hard"]]]]]]],[[12,111,null,923112123588732,false,[[1,[10,[2,"besttime"],[18,[21,1,false,null,16],[2,""],[2,"hard"]]]],[7,[5,[19,212],[21,1,false,null,4]]]]]]],[0,null,false,null,886937511906526,[],[[12,113,null,744114023522790,false],[0,80,null,609193379410712,false,[[1,[2,"Achievements > Unlock"]],[13,[7,[0,10]]]]]]],[0,null,false,null,425761453351688,[[-1,127,null,0,false,false,false,422504623314119,false,[[7,[5,[19,212],[21,1,false,null,4]]],[8,2],[7,[0,1800]]]]],[[0,80,null,605411096496037,false,[[1,[2,"Achievements > Unlock"]],[13,[7,[0,17]]]]]]],[0,null,false,null,461442906920531,[[-1,127,null,0,false,false,false,731569061079203,false,[[7,[5,[19,212],[21,1,false,null,4]]],[8,2],[7,[0,1200]]]]],[[0,80,null,561508630375738,false,[[1,[2,"Achievements > Unlock"]],[13,[7,[0,18]]]]]]],[0,null,false,null,459011121532967,[[-1,127,null,0,false,false,false,339265486027966,false,[[7,[5,[19,212],[21,1,false,null,4]]],[8,2],[7,[0,900]]]]],[[0,80,null,512760531207384,false,[[1,[2,"Achievements > Unlock"]],[13,[7,[0,19]]]]]]],[0,null,false,null,477870726137467,[[-1,127,null,0,false,false,false,317486560332106,false,[[7,[5,[19,212],[21,1,false,null,4]]],[8,2],[7,[0,720]]]]],[[0,80,null,626741715000200,false,[[1,[2,"Achievements > Unlock"]],[13,[7,[0,20]]]]]]],[0,null,false,null,879870594361487,[[-1,127,null,0,false,false,false,926281368122848,false,[[7,[5,[19,212],[21,1,false,null,4]]],[8,2],[7,[0,600]]]]],[[0,80,null,970875238999204,false,[[1,[2,"Achievements > Unlock"]],[13,[7,[0,21]]]]]]]]],[0,null,false,null,227026462503861,[[-1,75,null,0,false,false,false,892841263991846,false]],[[12,111,null,990009305072551,false,[[1,[2,"LastLevel"]],[7,[23,"ID"]]]],[12,111,null,845235993766094,false,[[1,[2,"LastTime"]],[7,[5,[19,212],[21,1,false,null,4]]]]],[12,113,null,672089999605577,false]]],[0,null,false,null,285181653116836,[[1,107,null,0,false,true,false,124190166327472,false,[[10,16]]],[-1,154,null,0,false,false,false,713035359215442,false,[[4,86],[7,[21,86,false,null,13]],[8,0],[7,[0,1]]]]],[[86,155,null,329868443143761,false,[[7,[2,""]]]]]]]],[0,null,false,null,650548338318059,[[85,490,"Dialog",0,false,false,false,348900990616530,false]],[[-1,433,null,248282075447055,false,[[0,[0,0]]]]]],[0,null,false,null,100397740958838,[[0,169,null,2,false,false,false,916832030247877,false,[[1,[2,"Menu > EndSection"]]]]],[[4,198,null,263218451793155,false,[[1,[2,"WebSdkWrapper.gameplayStop()"]]]]],[[1,"ID",0,0,true,false,484376273891582,false],[0,null,false,null,318061866619929,[],[[-1,101,null,136534166858059,false,[[11,"ID"],[7,[19,105,[[19,106,[[19,104],[0,1],[2," "]]]]]]]],[85,283,"Dialog",966649999999678,false,[[0,[0,0]],[0,[0,0]],[3,1]]],[-1,433,null,963980019629255,false,[[0,[0,0]]]]]],[0,null,false,null,674438848025793,[],[[87,155,null,216504206624453,false,[[7,[10,[10,[20,158,411,true,null,[[4,[5,[19,212],[21,1,false,null,4]],[12,[19,412,[[6,[5,[5,[19,212],[21,1,false,null,4]],[19,299,[[5,[19,212],[21,1,false,null,4]]]]],[0,100]]]],[0,100]]]]],[2,":"]],[19,413,[[8,[19,412,[[6,[5,[5,[19,212],[21,1,false,null,4]],[19,299,[[5,[19,212],[21,1,false,null,4]]]]],[0,100]]]],[0,100]],[0,2]]]]]]]]],[0,null,false,null,675826073195189,[[0,491,null,0,false,false,false,971978611413270,false,[[0,[0,0]],[8,0],[7,[0,1]]]]],[],[[0,null,true,null,154248911237079,[[12,295,null,0,false,false,false,225820692499716,false,[[1,[10,[10,[2,"section"],[21,1,false,null,22]],[18,[21,1,false,null,16],[2,""],[2,"hard"]]]],[8,4],[7,[5,[19,212],[21,1,false,null,4]]]]],[12,149,null,0,false,true,false,971394579318746,false,[[1,[10,[10,[2,"section"],[21,1,false,null,22]],[18,[21,1,false,null,16],[2,""],[2,"hard"]]]]]]],[[12,111,null,611662975464628,false,[[1,[10,[10,[2,"section"],[21,1,false,null,22]],[18,[21,1,false,null,16],[2,""],[2,"hard"]]]],[7,[5,[19,212],[21,1,false,null,4]]]]],[12,113,null,325664025797929,false]]]]],[0,null,false,null,809320547579340,[[1,107,null,0,false,true,false,332682531146518,false,[[10,16]]],[-1,154,null,0,false,false,false,123828881883283,false,[[4,86],[7,[21,86,false,null,13]],[8,0],[7,[0,1]]]]],[[86,155,null,787091234811848,false,[[7,[2,""]]]]]]]],[0,null,false,null,149212780561182,[[0,169,null,2,false,false,false,791270415102331,false,[[1,[2,"Menu > Quit"]]]]],[],[[0,null,false,null,237113626970291,[[1,107,null,0,false,false,false,660003922027194,false,[[10,21]]]],[[0,80,null,750371591667945,false,[[1,[2,"Menu > Back"]],[13,[7,[2,"Level Menu"]]]]]]],[0,null,false,null,842289969527789,[[-1,75,null,0,false,false,false,246120446856333,false]],[[0,80,null,959132430192777,false,[[1,[2,"Menu > Back"]],[13]]]]]]],[0,null,false,null,318038015938804,[[0,169,null,2,false,false,false,366440051444645,false,[[1,[2,"Menu > GiveUp"]]]]],[],[[0,null,false,null,801215542845065,[[1,107,null,0,false,false,false,503042263728246,false,[[10,3]]]],[[0,80,null,674792449388939,false,[[1,[2,"Menu > Back"]],[13,[7,[2,"Level Menu"]]]]]]],[0,null,false,null,245922569845796,[[-1,75,null,0,false,false,false,617264826385075,false],[1,107,null,0,false,false,false,708615277015887,false,[[10,21]]]],[[82,426,"Dialog",713645575164214,false],[0,80,null,805292929669738,false,[[1,[2,"Menu > EndSection"]],[13]]]]],[0,null,false,null,353345522023934,[[-1,75,null,0,false,false,false,577988136034176,false]],[[82,426,"Dialog",315067274619222,false],[0,80,null,387166345777490,false,[[1,[2,"Menu > EndGame"]],[13]]]]]]]]],[0,[true,"Timer"],false,null,950881186405880,[[-1,72,null,0,false,false,false,950881186405880,false,[[1,[2,"Timer"]]]]],[],[[0,null,false,null,488066008141850,[[-1,98,null,1,false,false,false,663266422955971,false]],[],[[0,null,false,null,521213949187200,[[1,107,null,0,false,false,false,919942977630328,false,[[10,3]]],[1,107,null,0,false,false,false,188795640237163,false,[[10,23]]]],[[-1,99,null,211589105552628,false,[[0,[0,0]]]],[1,316,null,107076666420292,false,[[10,4],[7,[19,212]]]]]],[0,null,false,null,943071831702513,[[-1,75,null,0,false,false,false,342487783209723,false],[1,107,null,0,false,false,false,546410233544586,false,[[10,3]]]],[[-1,99,null,813963509029242,false,[[0,[0,0]]]],[1,197,null,992581271602993,false,[[10,23],[3,1]]]]],[0,null,false,null,817812932397469,[[-1,75,null,0,false,false,false,504471931909322,false],[1,107,null,0,false,false,false,812529449912139,false,[[10,21]]],[-1,127,null,0,false,false,false,804626161861954,false,[[7,[19,104]],[8,0],[7,[10,[2,"Level "],[21,1,false,null,19]]]]]],[[-1,99,null,439252165343312,false,[[0,[0,0]]]],[1,316,null,600469641925766,false,[[10,4],[7,[19,212]]]]]],[0,null,false,null,362073651254561,[[-1,75,null,0,false,false,false,773699210911176,false],[-1,127,null,0,false,false,false,428809421294412,false,[[7,[19,104]],[8,0],[7,[2,"Level 1"]]]]],[[1,316,null,630362494080530,false,[[10,4],[7,[19,212]]]]]]]],[0,null,false,null,603136682992150,[[-1,146,null,0,false,false,false,199663942168572,false]],[[84,155,null,361882916609205,false,[[7,[10,[10,[20,158,411,true,null,[[4,[5,[19,212],[21,1,false,null,4]],[12,[19,412,[[6,[5,[5,[19,212],[21,1,false,null,4]],[19,299,[[5,[19,212],[21,1,false,null,4]]]]],[0,100]]]],[0,100]]]]],[2,":"]],[19,413,[[8,[19,412,[[6,[5,[5,[19,212],[21,1,false,null,4]],[19,299,[[5,[19,212],[21,1,false,null,4]]]]],[0,100]]]],[0,100]],[0,2]]]]]]]]]]],[0,[true,"Pause"],false,null,384765354261598,[[-1,72,null,0,false,false,false,384765354261598,false,[[1,[2,"Pause"]]]]],[],[[0,null,false,null,610730821509938,[],[[192,492,null,602467676495717,false,[[5,[2,"Banner"]]]]],[[0,null,false,null,630063847573074,[[-1,230,null,0,false,false,false,368270944119686,false],[4,493,null,0,false,false,false,627460471506454,false,[[3,0]]]],[[192,494,null,936130871616309,false,[[0,[5,[7,[5,[5,[19,448,[[0,0]]],[19,449,[[0,0]]]],[5,[19,456,[[0,0],[0,320],[0,0]]],[19,456,[[0,0],[0,0],[0,0]]]]],[0,2]],[7,[5,[5,[19,448,[[0,0]]],[19,449,[[0,0]]]],[19,495]],[0,2]]]],[0,[20,193,122,false,null]]]],[192,496,null,953801069232090,false,[[0,[21,192,false,null,0]]]]]],[0,null,false,null,723963684658375,[[-1,75,null,0,false,false,false,929948538602613,false]],[[192,494,null,616366021521937,false,[[0,[5,[7,[5,[5,[19,448,[[0,0]]],[19,449,[[0,0]]]],[5,[19,456,[[0,0],[0,728],[0,0]]],[19,456,[[0,0],[0,0],[0,0]]]]],[0,2]],[7,[5,[5,[19,448,[[0,0]]],[19,449,[[0,0]]]],[19,495]],[0,2]]]],[0,[20,193,122,false,null]]]],[192,496,null,702345075222413,false,[[0,[21,192,false,null,1]]]]]]]],[0,null,false,null,522195407738835,[[82,424,"Dialog",1,false,false,false,383305005686616,false]],[[192,497,null,207582269060861,false,[[3,1]]],[-1,425,null,827273086995556,false,[[4,192],[0,[1,1]]]],[192,244,"Timer",481154358681698,false,[[1,[2,"reloadBanner"]]]],[192,177,"Timer",795250891913259,false,[[0,[1,0.1]],[3,0],[1,[2,"reloadBanner"]]]]]],[0,null,false,null,150771120437358,[[82,468,"Dialog",1,false,false,false,514730990499604,false]],[[192,497,null,420164042761338,false,[[3,0]]]]],[0,null,false,null,970022356723960,[[192,172,"Timer",0,false,false,false,778869142896610,false,[[1,[2,"reloadBanner"]]]],[82,490,"Dialog",0,false,false,false,662719918481399,false]],[[4,198,null,374898824547148,false,[[1,[2,"crazyCreateBanner('banner-container');"]]]],[192,177,"Timer",330547537461034,false,[[0,[0,35]],[3,0],[1,[2,"reloadBanner"]]]]]],[0,null,true,null,452267350406719,[[2,284,null,1,false,false,false,511089652215093,false,[[9,27]]],[2,284,null,1,false,false,false,945057948798189,false,[[9,80]]],[0,169,null,2,false,false,false,977311094832537,false,[[1,[2,"Menu > Pause"]]]]],[],[[0,null,false,null,490520238677286,[[-1,127,null,0,false,false,false,781919767139096,false,[[7,[19,226]],[8,0],[7,[0,0]]]]],[[82,426,"Dialog",706132062197292,false],[4,198,null,152820335765257,false,[[1,[2,"WebSdkWrapper.gameplayStart()"]]]]]],[0,null,false,null,859828450866567,[[-1,75,null,0,false,false,false,635432268951636,false]],[[82,283,"Dialog",722950342322390,false,[[0,[0,0]],[0,[0,0]],[3,1]]],[4,198,null,114326327408557,false,[[1,[2,"WebSdkWrapper.gameplayStop()"]]]]]]]]]],[0,[true,"Mobile UI"],false,null,944043991060676,[[-1,72,null,0,false,false,false,944043991060676,false,[[1,[2,"Mobile UI"]]]]],[],[[0,null,false,null,762628016594779,[[-1,98,null,1,false,false,false,493786824767456,false],[-1,230,null,0,false,true,false,811631262577511,false]],[[-1,437,null,748666092008041,false,[[5,[2,"UI"]],[3,0]]],[-1,99,null,833537948328169,false,[[0,[0,0]]]],[69,115,null,452409791188089,false,[[0,[0,5]]]]]]]],[0,[true,"Advanced Mode"],false,null,756024822518035,[[-1,72,null,0,false,false,false,756024822518035,false,[[1,[2,"Advanced Mode"]]]]],[],[[0,null,false,null,702663697454685,[[-1,98,null,1,false,false,false,569181878349590,false]],[[168,498,null,227434280226239,false,[[1,[20,168,499,true,null,[[0,0]]]]]]],[[0,null,false,null,688230009925224,[[70,77,null,0,false,false,false,562697511910891,false,[[10,0]]]],[],[[0,null,false,null,541152964737233,[[1,107,null,0,false,true,false,510497958893991,false,[[10,17]]]],[[70,81,null,446224066903101,false]]],[0,null,false,null,226486766558580,[[1,107,null,0,false,false,false,575661192879641,false,[[10,17]]],[1,107,null,0,false,true,false,248692080150757,false,[[10,3]]],[70,77,null,0,false,false,false,698128574231214,false,[[10,1]]]],[[70,81,null,323333555991468,false]]]]],[0,null,false,null,233048542541466,[[1,107,null,0,false,true,false,477142756543700,false,[[10,18]]],[1,107,null,0,false,false,false,261206594640894,false,[[10,23]]]],[[27,239,null,744259601429197,false,[[0,[0,0]],[0,[0,6]],[0,[0,2]]]]]]]],[0,null,false,null,490320274181563,[[1,107,null,0,false,false,false,367496974877386,false,[[10,17]]],[1,107,null,0,false,false,false,767445192037113,false,[[10,3]]],[42,77,null,0,false,true,false,706014771812973,false,[[10,18]]]],[],[[1,"totdt",0,0,true,false,319679141936885,false],[0,null,false,null,271890834233288,[],[[-1,213,null,415115657405282,false,[[11,"totdt"],[7,[19,79]]]]]],[0,null,false,null,962140809185321,[[-1,252,null,0,true,false,false,704626674064172,false],[-1,100,null,0,false,false,false,590659835489616,false,[[11,"totdt"],[8,4],[7,[1,0.01666666666666667]]]]],[[-1,253,null,945549537160498,false,[[11,"totdt"],[7,[1,0.01666666666666667]]]]],[[0,null,false,null,529200358711974,[[42,77,null,0,false,true,false,240218461033037,false,[[10,16]]],[-1,241,null,0,false,false,false,450417494803050,false,[[0,[1,0.01666666666666667]]]],[-1,127,null,0,false,false,false,681270245883362,false,[[7,[19,226]],[8,4],[7,[0,0]]]]],[[27,238,null,247687114747868,false,[[3,0],[7,[0,0]],[3,0]]],[27,352,null,404264710748038,false,[[0,[5,[20,27,251,false,null],[0,1]]],[0,[0,0]],[7,[7,[19,412,[[6,[20,42,121,false,null],[0,100]]]],[0,100]]]]],[27,352,null,706656863325808,false,[[0,[5,[20,27,251,false,null],[0,1]]],[0,[0,1]],[7,[7,[19,412,[[6,[20,42,122,false,null],[0,100]]]],[0,100]]]]],[27,352,null,610565351411549,false,[[0,[5,[20,27,251,false,null],[0,1]]],[0,[0,2]],[7,[7,[19,412,[[6,[20,42,87,false,null],[0,100]]]],[0,100]]]]],[27,352,null,642765732392315,false,[[0,[5,[20,27,251,false,null],[0,1]]],[0,[0,3]],[7,[21,42,true,null,0]]]],[27,352,null,339214591279330,false,[[0,[5,[20,27,251,false,null],[0,1]]],[0,[0,4]],[7,[20,42,353,false,null]]]],[27,352,null,465342308519391,false,[[0,[5,[20,27,251,false,null],[0,1]]],[0,[0,5]],[7,[21,42,false,null,2]]]]],[[0,null,false,null,929529790085761,[[42,76,null,0,false,false,false,563029101708564,false,[[4,44]]]],[[27,238,null,729280623741012,false,[[3,0],[7,[0,0]],[3,0]]],[27,352,null,785413972240910,false,[[0,[5,[20,27,251,false,null],[0,1]]],[0,[0,0]],[7,[7,[19,412,[[6,[20,42,121,false,null],[0,100]]]],[0,100]]]]],[27,352,null,979314577543949,false,[[0,[5,[20,27,251,false,null],[0,1]]],[0,[0,1]],[7,[7,[19,412,[[6,[20,42,122,false,null],[0,100]]]],[0,100]]]]],[27,352,null,634081725701366,false,[[0,[5,[20,27,251,false,null],[0,1]]],[0,[0,2]],[7,[7,[19,412,[[6,[20,42,87,false,null],[0,100]]]],[0,100]]]]],[27,352,null,515981605277238,false,[[0,[5,[20,27,251,false,null],[0,1]]],[0,[0,3]],[7,[21,42,true,null,0]]]],[27,352,null,386193070638092,false,[[0,[5,[20,27,251,false,null],[0,1]]],[0,[0,4]],[7,[20,42,353,false,null]]]],[27,352,null,546383906389528,false,[[0,[5,[20,27,251,false,null],[0,1]]],[0,[0,5]],[7,[21,42,false,null,2]]]]]]]]]]]],[1,"CompressingReplay",0,0,true,false,443629980533071,false],[0,null,false,null,737551028557660,[[0,169,null,2,false,false,false,534258974263435,false,[[1,[2,"Menu > DownloadReplay"]]]]],[],[[0,null,false,null,221969088095474,[[-1,100,null,0,false,false,false,938070281396012,false,[[11,"CompressingReplay"],[8,0],[7,[0,0]]]]],[[-1,101,null,290124616410457,false,[[11,"CompressingReplay"],[7,[0,1]]]],[167,311,null,186754630317475,false,[[1,[2,"compressReplay"]],[13,[7,[20,27,355,true,null]]]]]]]]],[0,null,false,null,467448427145843,[[0,169,null,2,false,false,false,700625786752757,false,[[1,[2,"replayCompressed"]]]],[-1,100,null,0,false,false,false,989557552733529,false,[[11,"CompressingReplay"],[8,0],[7,[0,1]]]]],[[4,500,null,420935782283809,false,[[1,[20,0,170,false,null,[[0,0]]]],[1,[2,"application/json"]],[1,[10,[19,104],[2,"-replay.ovo"]]]]],[-1,101,null,705647126113581,false,[[11,"CompressingReplay"],[7,[0,0]]]]]],[0,null,false,null,428536203781779,[[0,169,null,2,false,false,false,427396613077287,false,[[1,[2,"Menu > LoadReplay"]]]]],[[4,198,null,557890820377806,false,[[1,[2,"document.getElementById('file').click()"]]]]]],[0,null,false,null,212525123458025,[[168,501,null,1,false,false,false,747782818557750,false]],[[8,421,null,416266104086454,false,[[1,[2,"replay"]],[1,[20,168,499,true,null,[[0,0]]]]]]]],[1,"DecompressingReplay",0,0,true,false,546390088495646,false],[0,null,false,null,348024747088678,[[8,305,null,1,false,false,false,847085133630149,false,[[1,[2,"replay"]]]]],[[167,311,null,698142658878674,false,[[1,[2,"decompressReplay"]],[13,[7,[20,8,307,true,null]]]]],[-1,101,null,646682265622261,false,[[11,"DecompressingReplay"],[7,[0,1]]]]]],[0,null,false,null,287299998197608,[[0,169,null,2,false,false,false,160844781746182,false,[[1,[2,"replayDecompressed"]]]],[-1,100,null,0,false,false,false,637927529975069,false,[[11,"DecompressingReplay"],[8,0],[7,[0,1]]]]],[[27,257,null,428574112945022,false,[[1,[20,0,170,false,null,[[0,0]]]]]],[1,316,null,959622092840206,false,[[10,4],[7,[19,212]]]],[168,498,null,421953675194102,false,[[1,[20,168,499,true,null,[[0,0]]]]]],[0,80,null,631227268184782,false,[[1,[2,"Menu > Pause"]],[13]]],[1,197,null,943362930342364,false,[[10,18],[3,1]]],[-1,101,null,460681541541529,false,[[11,"DecompressingReplay"],[7,[0,0]]]],[-1,433,null,496164623229478,false,[[0,[0,1]]]],[-1,489,null,798047723886223,false],[-1,203,null,968828132749675,false]]]]]]],["Parse Auth",[[2,"Common Menus",false],[0,[true,"Parse Auth"],false,null,938319982019981,[[-1,72,null,0,false,false,false,938319982019981,false,[[1,[2,"Parse Auth"]]]]],[],[[0,[true,"Parse Auth > Mobile Control"],false,null,490618339457944,[[-1,72,null,0,false,false,false,490618339457944,false,[[1,[2,"Parse Auth > Mobile Control"]]]]],[],[[1,"id",0,0,true,false,930356198715420,false],[0,null,false,null,656075754915147,[[-1,230,null,0,false,false,false,432909794693673,false]],[],[[0,null,false,null,970232525842123,[[101,502,null,1,false,false,false,371593609943967,false]],[[4,231,null,164804904924638,false,[[1,[23,"VibratePtrn"]]]],[-1,101,null,946880704265881,false,[[11,"id"],[7,[21,101,false,null,0]]]],[-1,99,null,377397707670656,false,[[0,[1,0.1]]]]]],[0,null,false,null,121768104283290,[[-1,154,null,0,false,false,false,406084915404440,false,[[4,101],[7,[21,101,false,null,0]],[8,0],[7,[23,"id"]]]]],[[101,503,null,184029817474397,false]]]]]]],[0,[true,"Parse Auth > UI"],false,null,777350050317882,[[-1,72,null,0,false,false,false,777350050317882,false,[[1,[2,"Parse Auth > UI"]]]]],[],[[0,null,false,null,325164430899891,[[100,504,null,1,false,false,false,688653122013436,false]],[[4,231,null,409567906831354,false,[[1,[23,"VibratePtrn"]]]]],[[0,null,false,null,373962641970671,[[100,505,null,0,false,false,false,314541005325907,false,[[10,0],[8,0],[7,[2,"login"]]]]],[],[[1,"login",1,"",false,false,306592330102427,false],[1,"pass",1,"",false,false,203696354472961,false],[0,null,false,null,525185847667686,[[101,506,null,0,false,false,false,131133488181352,false,[[10,0],[8,0],[7,[0,0]]]]],[[-1,101,null,220378479709399,false,[[11,"login"],[7,[20,101,507,true,null]]]]]],[0,null,false,null,524456115434329,[[101,506,null,0,false,false,false,575634213536008,false,[[10,0],[8,0],[7,[0,1]]]]],[[-1,101,null,261312307986330,false,[[11,"pass"],[7,[20,101,507,true,null]]]]]],[0,null,false,null,111663849865898,[[-1,125,null,0,false,false,false,207805715677266,false,[[4,100]]],[100,505,null,0,false,false,false,234775825673310,false,[[10,0],[8,0],[7,[2,"rememberme"]]]],[100,508,null,0,false,false,false,996112414648860,false]],[[12,509,null,975040269559345,false,[[1,[2,"login"]],[1,[23,"login"]]]]]]]],[0,null,false,null,250631402608892,[[100,505,null,0,false,false,false,163597238093450,false,[[10,0],[8,0],[7,[2,"register"]]]]],[],[[1,"login",1,"",false,false,236089636504177,false],[1,"mail",1,"",false,false,174124755549006,false],[1,"pass",1,"",false,false,878982572803662,false],[0,null,false,null,878689297295570,[[101,506,null,0,false,false,false,435364979650098,false,[[10,0],[8,0],[7,[0,3]]]]],[[-1,101,null,274785278131063,false,[[11,"login"],[7,[20,101,507,true,null]]]]]],[0,null,false,null,224451900348724,[[101,506,null,0,false,false,false,517116402297316,false,[[10,0],[8,0],[7,[0,4]]]]],[[-1,101,null,108065644233963,false,[[11,"mail"],[7,[20,101,507,true,null]]]]]],[0,null,false,null,842065937347931,[[101,506,null,0,false,false,false,751474500991484,false,[[10,0],[8,0],[7,[0,5]]]]],[[-1,101,null,550366854852467,false,[[11,"pass"],[7,[20,101,507,true,null]]]]]]]],[0,null,false,null,848900101905271,[[100,505,null,0,false,false,false,418153116775083,false,[[10,0],[8,0],[7,[2,"forgotpass"]]]]],[],[[1,"mail",1,"",false,false,892021480793412,false],[0,null,false,null,635434711364300,[[101,506,null,0,false,false,false,797569108187421,false,[[10,0],[8,0],[7,[0,10]]]]],[[-1,101,null,324402066505479,false,[[11,"mail"],[7,[20,101,507,true,null]]]]]]]],[0,null,false,null,553643444156102,[[100,505,null,0,false,false,false,399023609108781,false,[[10,0],[8,0],[7,[2,"logout"]]]]],[[-1,437,null,608381143468429,false,[[5,[2,"Login"]],[3,1]]],[-1,437,null,978461652012299,false,[[5,[2,"AccountInfo"]],[3,0]]]]],[0,null,false,null,597402758429809,[[100,505,null,0,false,false,false,994279573123952,false,[[10,0],[8,0],[7,[2,"tologin"]]]]],[[-1,437,null,597369093939400,false,[[5,[2,"Login"]],[3,1]]],[-1,437,null,587950048890640,false,[[5,[2,"Register"]],[3,0]]],[-1,437,null,851647392870629,false,[[5,[2,"ForgotPass"]],[3,0]]]]],[0,null,false,null,307735466157324,[[100,505,null,0,false,false,false,774985103507320,false,[[10,0],[8,0],[7,[2,"toregister"]]]]],[[-1,437,null,342331086035015,false,[[5,[2,"Login"]],[3,0]]],[-1,437,null,476573231574714,false,[[5,[2,"Register"]],[3,1]]]]],[0,null,false,null,619220202915592,[[100,505,null,0,false,false,false,498157888548870,false,[[10,0],[8,0],[7,[2,"toforgotpass"]]]]],[[-1,437,null,967726436367735,false,[[5,[2,"Login"]],[3,0]]],[-1,437,null,818304287430006,false,[[5,[2,"ForgotPass"]],[3,1]]]]]]],[0,null,false,null,603324730029772,[[-1,98,null,1,false,false,false,762314668204334,false]],[[-1,437,null,444144243800721,false,[[5,[2,"Login"]],[3,1]]],[-1,437,null,391306290624365,false,[[5,[2,"Register"]],[3,0]]],[-1,437,null,426406917722780,false,[[5,[2,"AccountInfo"]],[3,0]]],[-1,437,null,157355335286566,false,[[5,[2,"ForgotPass"]],[3,0]]]]],[0,null,false,null,708492434835837,[],[[-1,437,null,355493799904189,false,[[5,[2,"Login"]],[3,0]]],[-1,437,null,416072506484792,false,[[5,[2,"Register"]],[3,0]]],[-1,437,null,578634310093013,false,[[5,[2,"AccountInfo"]],[3,1]]]],[[0,null,false,null,369302331813121,[[102,469,null,0,false,false,false,189902842559831,false,[[10,0],[8,0],[7,[0,0]]]]],[]],[0,null,false,null,316404766277072,[[102,469,null,0,false,false,false,267926207186309,false,[[10,0],[8,0],[7,[0,1]]]]],[]]]],[0,null,false,null,593223391921000,[[-1,98,null,1,false,false,false,268504594490043,false]],[[-1,437,null,980629092195927,false,[[5,[2,"Login"]],[3,0]]],[-1,437,null,778105273882369,false,[[5,[2,"Register"]],[3,0]]],[-1,437,null,136908876465697,false,[[5,[2,"AccountInfo"]],[3,1]]]],[[0,null,false,null,838062951259625,[[102,469,null,0,false,false,false,737137068815603,false,[[10,0],[8,0],[7,[0,0]]]]],[]],[0,null,false,null,994817287411739,[[102,469,null,0,false,false,false,652729876757702,false,[[10,0],[8,0],[7,[0,1]]]]],[]]]],[0,null,false,null,254820234957831,[],[[-1,437,null,978214292533185,false,[[5,[2,"Login"]],[3,1]]],[-1,437,null,856767007749434,false,[[5,[2,"Register"]],[3,0]]],[-1,437,null,326869331855173,false,[[5,[2,"ForgotPass"]],[3,0]]]],[[0,null,false,null,584682457644238,[[102,469,null,0,false,false,false,694280588115998,false,[[10,0],[8,0],[7,[0,42]]]]],[[102,377,null,209895124907966,false,[[7,[2,"Account created successfully. You can now login.\nPlease confirm your e-mail by clicking the link sent to you."]]]],[102,153,"Fade",668115639041394,false],[102,510,"Fade",813790454244975,false]]]]],[0,null,false,null,912533299362477,[],[[-1,437,null,886893227796656,false,[[5,[2,"Login"]],[3,1]]],[-1,437,null,448461105187826,false,[[5,[2,"Register"]],[3,0]]],[-1,437,null,367784944666706,false,[[5,[2,"ForgotPass"]],[3,0]]]],[[0,null,false,null,609721185822270,[[102,469,null,0,false,false,false,922997982932238,false,[[10,0],[8,0],[7,[0,42]]]]],[[102,377,null,139128244376972,false,[[7,[2,"Password reset email sent successfully. Please reset your password and try again."]]]],[102,153,"Fade",763072400587138,false],[102,510,"Fade",576645180464267,false]]]]],[0,null,false,null,512372470844586,[],[],[[0,null,false,null,511362377349429,[[102,469,null,0,false,false,false,770271267607841,false,[[10,0],[8,0],[7,[0,42]]]]],[[102,153,"Fade",279597098982053,false],[102,510,"Fade",890846873148560,false]]]]]]]]]]],["Fake Parse",[[0,null,false,null,121776726056867,[[6,511,null,1,false,false,false,596615379085960,false]],[[-1,488,null,357083002627547,false,[[6,"Parse Auth"]]]]],[0,null,false,null,714635458547112,[[-1,98,null,1,false,false,false,635853819999608,false],[-1,230,null,0,false,false,false,329369560984325,false]],[[-1,488,null,912440557028818,false,[[6,"Parse Auth"]]]]]]],["Loader Layout",[[2,"Save",false],[0,null,true,null,172604443187469,[[111,512,"EaseTween",1,false,false,false,219968594118213,false],[-1,98,null,1,false,false,false,723553996651328,false]],[],[[0,null,false,null,114977476587676,[[111,368,null,0,false,false,false,294135792309180,false,[[10,1]]]],[[111,513,"EaseTween",430611167625989,false,[[3,6],[3,0],[3,13],[1,[2,"0"]],[1,[19,298,[[21,111,false,null,0]]]],[0,[21,111,false,null,2]],[1,[21,111,true,null,3]],[3,0]]],[111,514,"EaseTween",322022356928160,false],[111,483,null,547144578735101,false,[[10,1],[3,0]]]]],[0,null,false,null,543602937347673,[[-1,75,null,0,false,false,false,275898706173064,false]],[[111,513,"EaseTween",898555503215365,false,[[3,6],[3,0],[3,14],[1,[10,[2,"-"],[21,111,false,null,0]]],[1,[2,"0"]],[0,[21,111,false,null,2]],[1,[2,"0"]],[3,0]]],[111,514,"EaseTween",264579291167251,false],[111,483,null,831579325634411,false,[[10,1],[3,1]]]]]]],[0,null,false,null,536184983670284,[[-1,330,null,0,true,false,false,859707618959199,false,[[1,[2,""]],[0,[0,9]],[0,[0,0]]]]],[[110,352,null,739408580514149,false,[[0,[19,332]],[0,[0,1]],[7,[18,[12,[19,332],[0,0]],[18,[22,111,"EaseTween",515,false,null],[22,111,"EaseTween",516,true,null],[22,111,"EaseTween",517,false,null]],[20,110,242,false,null,[[5,[19,332],[0,1]],[0,1]]]]]]],[110,352,null,385588319635101,false,[[0,[19,332]],[0,[0,3]],[7,[0,100]]]]]],[0,null,false,null,180842766192473,[],[[111,518,null,288840687636997,false,[[1,[20,110,355,true,null]]]],[111,519,null,442141424108791,false]]],[0,null,false,null,680851502079058,[[-1,127,null,0,false,false,false,303608666662352,false,[[7,[19,520]],[8,0],[7,[0,1]]]],[12,293,null,0,false,false,false,612566744292900,false],[-1,102,null,0,false,false,false,365050150719613,false]],[[6,434,null,231401092725418,false]]],[0,null,false,null,518881779701184,[],[[56,278,null,343459979727448,false,[[0,[19,260,[[20,56,521,false,null],[6,[19,520],[0,100]],[1,0.08]]]]]]]],[0,null,false,null,964387216768268,[[6,435,null,1,false,false,false,454545693890281,false]],[],[[0,null,false,null,423059370734425,[[-1,127,null,0,false,false,false,225155216001108,false,[[7,[20,4,281,true,null]],[8,1],[7,[2,"dedragames.com"]]]],[-1,127,null,0,false,false,false,318023318675017,false,[[7,[20,4,281,true,null]],[8,1],[7,[2,"www.dedragames.com"]]]]],[[6,436,null,791396186030700,false,[[3,11]]],[-1,488,null,721070308108867,false,[[6,"Main Menu"]]]]],[0,null,false,null,212103367939701,[[-1,75,null,0,false,false,false,516767840218917,false]],[[6,436,null,289312963477614,false,[[3,11]]],[-1,488,null,416814006312717,false,[[6,"Main Menu"]]],[192,522,null,356035100327959,false]]]]],[0,null,false,null,758170150875373,[[-1,98,null,1,false,false,false,844956461695841,false]],[[211,367,null,458149258124210,false,[[1,[2,"Retron2000"]],[1,[2,"fonts.css"]]]]],[[0,null,false,null,931518010612236,[[-1,230,null,0,false,false,false,321813423442539,false]],[[11,523,null,662525821550658,false,[[3,0]]]]]]],[0,null,false,null,835610698228949,[[0,169,null,2,false,false,false,740523573613849,false,[[1,[2,"adOver"]]]]],[[6,436,null,646358102788126,false,[[3,11]]],[-1,488,null,175244415341168,false,[[6,"Main Menu"]]]]],[0,null,false,null,271756214194986,[[0,169,null,2,false,false,false,524016067421044,false,[[1,[2,"adOverFail"]]]]],[[6,436,null,705616470452365,false,[[3,11]]],[-1,488,null,650675620169841,false,[[6,"Main Menu"]]]]],[0,null,false,null,229512994278737,[[-1,98,null,1,false,false,false,733164962388256,false]],[[194,524,null,211800323940459,false]]],[0,null,false,null,404691065901241,[[-1,328,null,1,false,false,false,343667532260802,false]],[[192,497,null,753028473999684,false,[[3,0]]]]]]],["Ad",[[0,null,false,null,649472730271348,[[-1,98,null,1,false,false,false,543576513378660,false]],[[-1,432,null,924718357345990,false,[[1,[2,"Level 1"]]]],[0,80,null,247059513566739,false,[[1,[2,"muteSounds"]],[13]]]]]]],["Level Editor",[]],["Splash Screen",[[0,null,false,null,660804202932930,[[-1,98,null,1,false,false,false,467143283212669,false]],[[-1,99,null,881964374725619,false,[[0,[0,3]]]],[6,434,null,105958371472575,false]]],[0,null,false,null,395364802420621,[[6,435,null,1,false,false,false,727779824069967,false]],[[6,436,null,364252046981183,false,[[3,11]]]],[[0,null,false,null,598349098856747,[[-1,109,null,0,false,true,false,593786698283101,false],[-1,110,null,0,false,false,false,708810607996130,false,[[3,0]]],[-1,127,null,0,false,false,false,896834382050898,false,[[7,[20,4,281,true,null]],[8,1],[7,[2,"dedragames.com"]]]],[-1,127,null,0,false,false,false,772161683244982,false,[[7,[20,4,281,true,null]],[8,1],[7,[2,"www.dedragames.com"]]]],[26,525,null,0,false,false,false,551847635237813,false]],[[-1,488,null,893640427194788,false,[[6,"Site Locking"]]]]],[0,null,false,null,869827969104852,[[-1,75,null,0,false,false,false,116397526937243,false]],[[-1,488,null,667242298045487,false,[[6,"Main Menu"]]]]]]]]],["Site Locking",[[0,null,false,null,991267865365791,[[100,504,null,1,false,false,false,715878288029738,false]],[[4,526,null,662493788859011,false,[[1,[2,"https://www.coolmath-games.com"]],[3,0]]]]]]],["CrazyGamesTestRoom",[[0,null,false,null,472227846830765,[[189,504,null,1,false,false,false,586915765840766,false]],[[4,198,null,183986116920925,false,[[1,[21,189,true,null,0]]]]]],[0,null,false,null,759760246612910,[[190,504,null,1,false,false,false,365574838395710,false]],[[-1,488,null,142955799569368,false,[[6,"Main Menu"]]]]]]]],[["click.m4a",3373],["click.ogg",6101],["hover.m4a",3264],["hover.ogg",5965],["return.m4a",3262],["return.ogg",6062],["step.m4a",1828],["step.ogg",4586],["step2.ogg",4593],["step2.m4a",1719],["step3.m4a",1743],["step3.ogg",4523],["footstep.m4a",45196],["footstep.ogg",34520],["pound.m4a",27576],["pound.ogg",26469],["prepound.m4a",26930],["prepound.ogg",22532],["stun.m4a",3336],["stun.ogg",6355],["jump.m4a",45221],["jump.ogg",35205],["jumpboost.m4a",45124],["jumpboost.ogg",35193],["hurt.m4a",1815],["hurt.ogg",4995],["plunge.m4a",45336],["plunge.ogg",35567],["jumpstrong.m4a",45291],["jumpstrong.ogg",35193],["superjump.m4a",24840],["superjump.ogg",24963],["walljump.m4a",45125],["walljump.ogg",34640],["sfx_transition-01.m4a",51531],["sfx_transition-01.ogg",42869],["sfx_transition-02.m4a",51156],["sfx_transition-02.ogg",43578],["sfx_transition-03.m4a",51410],["sfx_transition-03.ogg",43511],["sfx_transition-04.m4a",51598],["sfx_transition-04.ogg",43502],["sfx_transition-05.m4a",50458],["sfx_transition-05.ogg",43238],["sfx_transition-06.m4a",51118],["sfx_transition-06.ogg",44039],["sfx_transition-07.m4a",50769],["sfx_transition-07.ogg",43334],["sfx_transition-08.m4a",50922],["sfx_transition-08.ogg",44114],["slide.m4a",45386],["slide.ogg",35049],["slide_recover.m4a",45496],["slide_recover.ogg",35695],["button.m4a",22755],["button.ogg",19211],["rocket-2.m4a",45387],["rocket-2.ogg",36221],["coin1.m4a",45284],["coin1.ogg",35426],["among us death.m4a",18565],["among us death.ogg",15922],["among us slice.m4a",14847],["among us slice.ogg",16955],["death-2.m4a",50434],["death-2.ogg",46722],["transition.m4a",30208],["transition.ogg",28294],["death.m4a",4151],["death.ogg",9063],["menutrack.m4a",933084],["menutrack.ogg",637642]],"media/",false,640,640,3,true,false,true,"1.0.0.0",false,true,0,0,12443,false,true,1,true,"OvO",0,[[66,120,119],[32,33,35,37,38,39,40,36,34,41,42]]]} \ No newline at end of file diff --git a/gversion/gs/ovo/default.png b/gversion/gs/ovo/default.png new file mode 100644 index 0000000..e7b4241 Binary files /dev/null and b/gversion/gs/ovo/default.png differ diff --git a/gversion/gs/ovo/dknight.png b/gversion/gs/ovo/dknight.png new file mode 100644 index 0000000..a415d21 Binary files /dev/null and b/gversion/gs/ovo/dknight.png differ diff --git a/gversion/gs/ovo/electrical.png b/gversion/gs/ovo/electrical.png new file mode 100644 index 0000000..5c02454 Binary files /dev/null and b/gversion/gs/ovo/electrical.png differ diff --git a/gversion/gs/ovo/english.png b/gversion/gs/ovo/english.png new file mode 100644 index 0000000..59ce67b Binary files /dev/null and b/gversion/gs/ovo/english.png differ diff --git a/gversion/gs/ovo/erigato.png b/gversion/gs/ovo/erigato.png new file mode 100644 index 0000000..fa7c27a Binary files /dev/null and b/gversion/gs/ovo/erigato.png differ diff --git a/gversion/gs/ovo/fl1ckd.png b/gversion/gs/ovo/fl1ckd.png new file mode 100644 index 0000000..18bfbb4 Binary files /dev/null and b/gversion/gs/ovo/fl1ckd.png differ diff --git a/gversion/gs/ovo/fonts.css b/gversion/gs/ovo/fonts.css new file mode 100644 index 0000000..53dac63 --- /dev/null +++ b/gversion/gs/ovo/fonts.css @@ -0,0 +1,9 @@ +/* @font-face { + font-family: Silver; + src: url(./silver.ttf); +} */ + +@font-face { + font-family: Retron2000; + src: url(./retron2000.ttf); +} diff --git a/gversion/gs/ovo/frank.png b/gversion/gs/ovo/frank.png new file mode 100644 index 0000000..1a747f0 Binary files /dev/null and b/gversion/gs/ovo/frank.png differ diff --git a/gversion/gs/ovo/french.png b/gversion/gs/ovo/french.png new file mode 100644 index 0000000..25f9963 Binary files /dev/null and b/gversion/gs/ovo/french.png differ diff --git a/gversion/gs/ovo/gettingserious.png b/gversion/gs/ovo/gettingserious.png new file mode 100644 index 0000000..b4d4564 Binary files /dev/null and b/gversion/gs/ovo/gettingserious.png differ diff --git a/gversion/gs/ovo/higherorder.png b/gversion/gs/ovo/higherorder.png new file mode 100644 index 0000000..349fb9b Binary files /dev/null and b/gversion/gs/ovo/higherorder.png differ diff --git a/gversion/gs/ovo/hmmg_layoutTransition.css b/gversion/gs/ovo/hmmg_layoutTransition.css new file mode 100644 index 0000000..2240133 --- /dev/null +++ b/gversion/gs/ovo/hmmg_layoutTransition.css @@ -0,0 +1,57 @@ +#c2canvasdiv.prepared +{ + position:absolute !important; + margin:0px !important; + z-index:49; +} + +#fakeBody +{ + position:absolute; + z-index:999999999; + overflow:hidden !important; +} + + +#fakeBody #fakeCanvas +{ + position:absolute; + top:0px; + z-index:50; + overflow:hidden !important; + height:100%; + width:100%; +} + + +#fakeCanvas div +{ + position:absolute; + width:100%; + height:100%; + top:0px; + left:0px; +} +#fakeCanvas div.darker +{ + -webkit-transition: background-color 100ms linear ; + -moz-transition: background-color 100ms linear ; + -o-transition: background-color 100ms linear ; + -ms-transition: background-color 100ms linear ; + transition: background-color 100ms linear ; + background-color:rgba(0,0,0,0.3); +} + +#c2canvasdiv.animated +{ + z-index:51; +} +#fakeCanvas.animated +{ + z-index:49; +} + +.hidden +{ + display:none; +} \ No newline at end of file diff --git a/gversion/gs/ovo/howler.js b/gversion/gs/ovo/howler.js new file mode 100644 index 0000000..85c77c1 --- /dev/null +++ b/gversion/gs/ovo/howler.js @@ -0,0 +1,1987 @@ +/*! howler.js v2.2.3 | (c) 2013-2020, James Simpson of GoldFire Studios | MIT License | howlerjs.com */ +!(function () { + "use strict"; + var e = function () { + this.init(); + }; + e.prototype = { + init: function () { + var e = this || n; + return ( + (e._counter = 1e3), + (e._html5AudioPool = []), + (e.html5PoolSize = 10), + (e._codecs = {}), + (e._howls = []), + (e._muted = !1), + (e._volume = 1), + (e._canPlayEvent = "canplaythrough"), + (e._navigator = + "undefined" != typeof window && window.navigator + ? window.navigator + : null), + (e.masterGain = null), + (e.noAudio = !1), + (e.usingWebAudio = !0), + (e.autoSuspend = !0), + (e.ctx = null), + (e.autoUnlock = !0), + e._setup(), + e + ); + }, + volume: function (e) { + var o = this || n; + if ( + ((e = parseFloat(e)), o.ctx || _(), void 0 !== e && e >= 0 && e <= 1) + ) { + if (((o._volume = e), o._muted)) return o; + o.usingWebAudio && + o.masterGain.gain.setValueAtTime(e, n.ctx.currentTime); + for (var t = 0; t < o._howls.length; t++) + if (!o._howls[t]._webAudio) + for (var r = o._howls[t]._getSoundIds(), a = 0; a < r.length; a++) { + var u = o._howls[t]._soundById(r[a]); + u && u._node && (u._node.volume = u._volume * e); + } + return o; + } + return o._volume; + }, + mute: function (e) { + var o = this || n; + o.ctx || _(), + (o._muted = e), + o.usingWebAudio && + o.masterGain.gain.setValueAtTime( + e ? 0 : o._volume, + n.ctx.currentTime + ); + for (var t = 0; t < o._howls.length; t++) + if (!o._howls[t]._webAudio) + for (var r = o._howls[t]._getSoundIds(), a = 0; a < r.length; a++) { + var u = o._howls[t]._soundById(r[a]); + u && u._node && (u._node.muted = !!e || u._muted); + } + return o; + }, + stop: function () { + for (var e = this || n, o = 0; o < e._howls.length; o++) + e._howls[o].stop(); + return e; + }, + unload: function () { + for (var e = this || n, o = e._howls.length - 1; o >= 0; o--) + e._howls[o].unload(); + return ( + e.usingWebAudio && + e.ctx && + void 0 !== e.ctx.close && + (e.ctx.close(), (e.ctx = null), _()), + e + ); + }, + codecs: function (e) { + return (this || n)._codecs[e.replace(/^x-/, "")]; + }, + _setup: function () { + var e = this || n; + if ( + ((e.state = e.ctx ? e.ctx.state || "suspended" : "suspended"), + e._autoSuspend(), + !e.usingWebAudio) + ) + if ("undefined" != typeof Audio) + try { + var o = new Audio(); + void 0 === o.oncanplaythrough && (e._canPlayEvent = "canplay"); + } catch (n) { + e.noAudio = !0; + } + else e.noAudio = !0; + try { + var o = new Audio(); + o.muted && (e.noAudio = !0); + } catch (e) {} + return e.noAudio || e._setupCodecs(), e; + }, + _setupCodecs: function () { + var e = this || n, + o = null; + try { + o = "undefined" != typeof Audio ? new Audio() : null; + } catch (n) { + return e; + } + if (!o || "function" != typeof o.canPlayType) return e; + var t = o.canPlayType("audio/mpeg;").replace(/^no$/, ""), + r = e._navigator ? e._navigator.userAgent : "", + a = r.match(/OPR\/([0-6].)/g), + u = a && parseInt(a[0].split("/")[1], 10) < 33, + d = -1 !== r.indexOf("Safari") && -1 === r.indexOf("Chrome"), + i = r.match(/Version\/(.*?) /), + _ = d && i && parseInt(i[1], 10) < 15; + return ( + (e._codecs = { + mp3: !(u || (!t && !o.canPlayType("audio/mp3;").replace(/^no$/, ""))), + mpeg: !!t, + opus: !!o.canPlayType('audio/ogg; codecs="opus"').replace(/^no$/, ""), + ogg: !!o + .canPlayType('audio/ogg; codecs="vorbis"') + .replace(/^no$/, ""), + oga: !!o + .canPlayType('audio/ogg; codecs="vorbis"') + .replace(/^no$/, ""), + wav: !!( + o.canPlayType('audio/wav; codecs="1"') || o.canPlayType("audio/wav") + ).replace(/^no$/, ""), + aac: !!o.canPlayType("audio/aac;").replace(/^no$/, ""), + caf: !!o.canPlayType("audio/x-caf;").replace(/^no$/, ""), + m4a: !!( + o.canPlayType("audio/x-m4a;") || + o.canPlayType("audio/m4a;") || + o.canPlayType("audio/aac;") + ).replace(/^no$/, ""), + m4b: !!( + o.canPlayType("audio/x-m4b;") || + o.canPlayType("audio/m4b;") || + o.canPlayType("audio/aac;") + ).replace(/^no$/, ""), + mp4: !!( + o.canPlayType("audio/x-mp4;") || + o.canPlayType("audio/mp4;") || + o.canPlayType("audio/aac;") + ).replace(/^no$/, ""), + weba: !( + _ || + !o.canPlayType('audio/webm; codecs="vorbis"').replace(/^no$/, "") + ), + webm: !( + _ || + !o.canPlayType('audio/webm; codecs="vorbis"').replace(/^no$/, "") + ), + dolby: !!o + .canPlayType('audio/mp4; codecs="ec-3"') + .replace(/^no$/, ""), + flac: !!( + o.canPlayType("audio/x-flac;") || o.canPlayType("audio/flac;") + ).replace(/^no$/, ""), + }), + e + ); + }, + _unlockAudio: function () { + var e = this || n; + if (!e._audioUnlocked && e.ctx) { + (e._audioUnlocked = !1), + (e.autoUnlock = !1), + e._mobileUnloaded || + 44100 === e.ctx.sampleRate || + ((e._mobileUnloaded = !0), e.unload()), + (e._scratchBuffer = e.ctx.createBuffer(1, 1, 22050)); + var o = function (n) { + for (; e._html5AudioPool.length < e.html5PoolSize; ) + try { + var t = new Audio(); + (t._unlocked = !0), e._releaseHtml5Audio(t); + } catch (n) { + e.noAudio = !0; + break; + } + for (var r = 0; r < e._howls.length; r++) + if (!e._howls[r]._webAudio) + for ( + var a = e._howls[r]._getSoundIds(), u = 0; + u < a.length; + u++ + ) { + var d = e._howls[r]._soundById(a[u]); + d && + d._node && + !d._node._unlocked && + ((d._node._unlocked = !0), d._node.load()); + } + e._autoResume(); + var i = e.ctx.createBufferSource(); + (i.buffer = e._scratchBuffer), + i.connect(e.ctx.destination), + void 0 === i.start ? i.noteOn(0) : i.start(0), + "function" == typeof e.ctx.resume && e.ctx.resume(), + (i.onended = function () { + i.disconnect(0), + (e._audioUnlocked = !0), + document.removeEventListener("touchstart", o, !0), + document.removeEventListener("touchend", o, !0), + document.removeEventListener("click", o, !0), + document.removeEventListener("keydown", o, !0); + for (var n = 0; n < e._howls.length; n++) + e._howls[n]._emit("unlock"); + }); + }; + return ( + document.addEventListener("touchstart", o, !0), + document.addEventListener("touchend", o, !0), + document.addEventListener("click", o, !0), + document.addEventListener("keydown", o, !0), + e + ); + } + }, + _obtainHtml5Audio: function () { + var e = this || n; + if (e._html5AudioPool.length) return e._html5AudioPool.pop(); + var o = new Audio().play(); + return ( + o && + "undefined" != typeof Promise && + (o instanceof Promise || "function" == typeof o.then) && + o.catch(function () { + console.warn( + "HTML5 Audio pool exhausted, returning potentially locked audio object." + ); + }), + new Audio() + ); + }, + _releaseHtml5Audio: function (e) { + var o = this || n; + return e._unlocked && o._html5AudioPool.push(e), o; + }, + _autoSuspend: function () { + var e = this; + if ( + e.autoSuspend && + e.ctx && + void 0 !== e.ctx.suspend && + n.usingWebAudio + ) { + for (var o = 0; o < e._howls.length; o++) + if (e._howls[o]._webAudio) + for (var t = 0; t < e._howls[o]._sounds.length; t++) + if (!e._howls[o]._sounds[t]._paused) return e; + return ( + e._suspendTimer && clearTimeout(e._suspendTimer), + (e._suspendTimer = setTimeout(function () { + if (e.autoSuspend) { + (e._suspendTimer = null), (e.state = "suspending"); + var n = function () { + (e.state = "suspended"), + e._resumeAfterSuspend && + (delete e._resumeAfterSuspend, e._autoResume()); + }; + e.ctx.suspend().then(n, n); + } + }, 3e4)), + e + ); + } + }, + _autoResume: function () { + var e = this; + if (e.ctx && void 0 !== e.ctx.resume && n.usingWebAudio) + return ( + "running" === e.state && + "interrupted" !== e.ctx.state && + e._suspendTimer + ? (clearTimeout(e._suspendTimer), (e._suspendTimer = null)) + : "suspended" === e.state || + ("running" === e.state && "interrupted" === e.ctx.state) + ? (e.ctx.resume().then(function () { + e.state = "running"; + for (var n = 0; n < e._howls.length; n++) + e._howls[n]._emit("resume"); + }), + e._suspendTimer && + (clearTimeout(e._suspendTimer), (e._suspendTimer = null))) + : "suspending" === e.state && (e._resumeAfterSuspend = !0), + e + ); + }, + }; + var n = new e(), + o = function (e) { + var n = this; + if (!e.src || 0 === e.src.length) + return void console.error( + "An array of source files must be passed with any new Howl." + ); + n.init(e); + }; + o.prototype = { + init: function (e) { + var o = this; + return ( + n.ctx || _(), + (o._autoplay = e.autoplay || !1), + (o._format = "string" != typeof e.format ? e.format : [e.format]), + (o._html5 = e.html5 || !1), + (o._muted = e.mute || !1), + (o._loop = e.loop || !1), + (o._pool = e.pool || 5), + (o._preload = + ("boolean" != typeof e.preload && "metadata" !== e.preload) || + e.preload), + (o._rate = e.rate || 1), + (o._sprite = e.sprite || {}), + (o._src = "string" != typeof e.src ? e.src : [e.src]), + (o._volume = void 0 !== e.volume ? e.volume : 1), + (o._xhr = { + method: e.xhr && e.xhr.method ? e.xhr.method : "GET", + headers: e.xhr && e.xhr.headers ? e.xhr.headers : null, + withCredentials: + !(!e.xhr || !e.xhr.withCredentials) && e.xhr.withCredentials, + }), + (o._duration = 0), + (o._state = "unloaded"), + (o._sounds = []), + (o._endTimers = {}), + (o._queue = []), + (o._playLock = !1), + (o._onend = e.onend ? [{ fn: e.onend }] : []), + (o._onfade = e.onfade ? [{ fn: e.onfade }] : []), + (o._onload = e.onload ? [{ fn: e.onload }] : []), + (o._onloaderror = e.onloaderror ? [{ fn: e.onloaderror }] : []), + (o._onplayerror = e.onplayerror ? [{ fn: e.onplayerror }] : []), + (o._onpause = e.onpause ? [{ fn: e.onpause }] : []), + (o._onplay = e.onplay ? [{ fn: e.onplay }] : []), + (o._onstop = e.onstop ? [{ fn: e.onstop }] : []), + (o._onmute = e.onmute ? [{ fn: e.onmute }] : []), + (o._onvolume = e.onvolume ? [{ fn: e.onvolume }] : []), + (o._onrate = e.onrate ? [{ fn: e.onrate }] : []), + (o._onseek = e.onseek ? [{ fn: e.onseek }] : []), + (o._onunlock = e.onunlock ? [{ fn: e.onunlock }] : []), + (o._onresume = []), + (o._webAudio = n.usingWebAudio && !o._html5), + void 0 !== n.ctx && n.ctx && n.autoUnlock && n._unlockAudio(), + n._howls.push(o), + o._autoplay && + o._queue.push({ + event: "play", + action: function () { + o.play(); + }, + }), + o._preload && "none" !== o._preload && o.load(), + o + ); + }, + load: function () { + var e = this, + o = null; + if (n.noAudio) + return void e._emit("loaderror", null, "No audio support."); + "string" == typeof e._src && (e._src = [e._src]); + for (var r = 0; r < e._src.length; r++) { + var u, d; + if (e._format && e._format[r]) u = e._format[r]; + else { + if ("string" != typeof (d = e._src[r])) { + e._emit( + "loaderror", + null, + "Non-string found in selected audio sources - ignoring." + ); + continue; + } + (u = /^data:audio\/([^;,]+);/i.exec(d)), + u || (u = /\.([^.]+)$/.exec(d.split("?", 1)[0])), + u && (u = u[1].toLowerCase()); + } + if ( + (u || + console.warn( + 'No file extension was found. Consider using the "format" property or specify an extension.' + ), + u && n.codecs(u)) + ) { + o = e._src[r]; + break; + } + } + return o + ? ((e._src = o), + (e._state = "loading"), + "https:" === window.location.protocol && + "http:" === o.slice(0, 5) && + ((e._html5 = !0), (e._webAudio = !1)), + new t(e), + e._webAudio && a(e), + e) + : void e._emit( + "loaderror", + null, + "No codec support for selected audio sources." + ); + }, + play: function (e, o) { + var t = this, + r = null; + if ("number" == typeof e) (r = e), (e = null); + else { + if ("string" == typeof e && "loaded" === t._state && !t._sprite[e]) + return null; + if (void 0 === e && ((e = "__default"), !t._playLock)) { + for (var a = 0, u = 0; u < t._sounds.length; u++) + t._sounds[u]._paused && + !t._sounds[u]._ended && + (a++, (r = t._sounds[u]._id)); + 1 === a ? (e = null) : (r = null); + } + } + var d = r ? t._soundById(r) : t._inactiveSound(); + if (!d) return null; + if ((r && !e && (e = d._sprite || "__default"), "loaded" !== t._state)) { + (d._sprite = e), (d._ended = !1); + var i = d._id; + return ( + t._queue.push({ + event: "play", + action: function () { + t.play(i); + }, + }), + i + ); + } + if (r && !d._paused) return o || t._loadQueue("play"), d._id; + t._webAudio && n._autoResume(); + var _ = Math.max(0, d._seek > 0 ? d._seek : t._sprite[e][0] / 1e3), + s = Math.max(0, (t._sprite[e][0] + t._sprite[e][1]) / 1e3 - _), + l = (1e3 * s) / Math.abs(d._rate), + c = t._sprite[e][0] / 1e3, + f = (t._sprite[e][0] + t._sprite[e][1]) / 1e3; + (d._sprite = e), (d._ended = !1); + var p = function () { + (d._paused = !1), + (d._seek = _), + (d._start = c), + (d._stop = f), + (d._loop = !(!d._loop && !t._sprite[e][2])); + }; + if (_ >= f) return void t._ended(d); + var m = d._node; + if (t._webAudio) { + var v = function () { + (t._playLock = !1), p(), t._refreshBuffer(d); + var e = d._muted || t._muted ? 0 : d._volume; + m.gain.setValueAtTime(e, n.ctx.currentTime), + (d._playStart = n.ctx.currentTime), + void 0 === m.bufferSource.start + ? d._loop + ? m.bufferSource.noteGrainOn(0, _, 86400) + : m.bufferSource.noteGrainOn(0, _, s) + : d._loop + ? m.bufferSource.start(0, _, 86400) + : m.bufferSource.start(0, _, s), + l !== 1 / 0 && + (t._endTimers[d._id] = setTimeout(t._ended.bind(t, d), l)), + o || + setTimeout(function () { + t._emit("play", d._id), t._loadQueue(); + }, 0); + }; + "running" === n.state && "interrupted" !== n.ctx.state + ? v() + : ((t._playLock = !0), t.once("resume", v), t._clearTimer(d._id)); + } else { + var h = function () { + (m.currentTime = _), + (m.muted = d._muted || t._muted || n._muted || m.muted), + (m.volume = d._volume * n.volume()), + (m.playbackRate = d._rate); + try { + var r = m.play(); + if ( + (r && + "undefined" != typeof Promise && + (r instanceof Promise || "function" == typeof r.then) + ? ((t._playLock = !0), + p(), + r + .then(function () { + (t._playLock = !1), + (m._unlocked = !0), + o ? t._loadQueue() : t._emit("play", d._id); + }) + .catch(function () { + (t._playLock = !1), + t._emit( + "playerror", + d._id, + "Playback was unable to start. This is most commonly an issue on mobile devices and Chrome where playback was not within a user interaction." + ), + (d._ended = !0), + (d._paused = !0); + })) + : o || ((t._playLock = !1), p(), t._emit("play", d._id)), + (m.playbackRate = d._rate), + m.paused) + ) + return void t._emit( + "playerror", + d._id, + "Playback was unable to start. This is most commonly an issue on mobile devices and Chrome where playback was not within a user interaction." + ); + "__default" !== e || d._loop + ? (t._endTimers[d._id] = setTimeout(t._ended.bind(t, d), l)) + : ((t._endTimers[d._id] = function () { + t._ended(d), + m.removeEventListener("ended", t._endTimers[d._id], !1); + }), + m.addEventListener("ended", t._endTimers[d._id], !1)); + } catch (e) { + t._emit("playerror", d._id, e); + } + }; + "data:audio/wav;base64,UklGRigAAABXQVZFZm10IBIAAAABAAEARKwAAIhYAQACABAAAABkYXRhAgAAAAEA" === + m.src && ((m.src = t._src), m.load()); + var y = + (window && window.ejecta) || + (!m.readyState && n._navigator.isCocoonJS); + if (m.readyState >= 3 || y) h(); + else { + (t._playLock = !0), (t._state = "loading"); + var g = function () { + (t._state = "loaded"), + h(), + m.removeEventListener(n._canPlayEvent, g, !1); + }; + m.addEventListener(n._canPlayEvent, g, !1), t._clearTimer(d._id); + } + } + return d._id; + }, + pause: function (e) { + var n = this; + if ("loaded" !== n._state || n._playLock) + return ( + n._queue.push({ + event: "pause", + action: function () { + n.pause(e); + }, + }), + n + ); + for (var o = n._getSoundIds(e), t = 0; t < o.length; t++) { + n._clearTimer(o[t]); + var r = n._soundById(o[t]); + if ( + r && + !r._paused && + ((r._seek = n.seek(o[t])), + (r._rateSeek = 0), + (r._paused = !0), + n._stopFade(o[t]), + r._node) + ) + if (n._webAudio) { + if (!r._node.bufferSource) continue; + void 0 === r._node.bufferSource.stop + ? r._node.bufferSource.noteOff(0) + : r._node.bufferSource.stop(0), + n._cleanBuffer(r._node); + } else + (isNaN(r._node.duration) && r._node.duration !== 1 / 0) || + r._node.pause(); + arguments[1] || n._emit("pause", r ? r._id : null); + } + return n; + }, + stop: function (e, n) { + var o = this; + if ("loaded" !== o._state || o._playLock) + return ( + o._queue.push({ + event: "stop", + action: function () { + o.stop(e); + }, + }), + o + ); + for (var t = o._getSoundIds(e), r = 0; r < t.length; r++) { + o._clearTimer(t[r]); + var a = o._soundById(t[r]); + a && + ((a._seek = a._start || 0), + (a._rateSeek = 0), + (a._paused = !0), + (a._ended = !0), + o._stopFade(t[r]), + a._node && + (o._webAudio + ? a._node.bufferSource && + (void 0 === a._node.bufferSource.stop + ? a._node.bufferSource.noteOff(0) + : a._node.bufferSource.stop(0), + o._cleanBuffer(a._node)) + : (isNaN(a._node.duration) && a._node.duration !== 1 / 0) || + ((a._node.currentTime = a._start || 0), + a._node.pause(), + a._node.duration === 1 / 0 && o._clearSound(a._node))), + n || o._emit("stop", a._id)); + } + return o; + }, + mute: function (e, o) { + var t = this; + if ("loaded" !== t._state || t._playLock) + return ( + t._queue.push({ + event: "mute", + action: function () { + t.mute(e, o); + }, + }), + t + ); + if (void 0 === o) { + if ("boolean" != typeof e) return t._muted; + t._muted = e; + } + for (var r = t._getSoundIds(o), a = 0; a < r.length; a++) { + var u = t._soundById(r[a]); + u && + ((u._muted = e), + u._interval && t._stopFade(u._id), + t._webAudio && u._node + ? u._node.gain.setValueAtTime(e ? 0 : u._volume, n.ctx.currentTime) + : u._node && (u._node.muted = !!n._muted || e), + t._emit("mute", u._id)); + } + return t; + }, + volume: function () { + var e, + o, + t = this, + r = arguments; + if (0 === r.length) return t._volume; + if (1 === r.length || (2 === r.length && void 0 === r[1])) { + t._getSoundIds().indexOf(r[0]) >= 0 + ? (o = parseInt(r[0], 10)) + : (e = parseFloat(r[0])); + } else + r.length >= 2 && ((e = parseFloat(r[0])), (o = parseInt(r[1], 10))); + var a; + if (!(void 0 !== e && e >= 0 && e <= 1)) + return (a = o ? t._soundById(o) : t._sounds[0]), a ? a._volume : 0; + if ("loaded" !== t._state || t._playLock) + return ( + t._queue.push({ + event: "volume", + action: function () { + t.volume.apply(t, r); + }, + }), + t + ); + void 0 === o && (t._volume = e), (o = t._getSoundIds(o)); + for (var u = 0; u < o.length; u++) + (a = t._soundById(o[u])) && + ((a._volume = e), + r[2] || t._stopFade(o[u]), + t._webAudio && a._node && !a._muted + ? a._node.gain.setValueAtTime(e, n.ctx.currentTime) + : a._node && !a._muted && (a._node.volume = e * n.volume()), + t._emit("volume", a._id)); + return t; + }, + fade: function (e, o, t, r) { + var a = this; + if ("loaded" !== a._state || a._playLock) + return ( + a._queue.push({ + event: "fade", + action: function () { + a.fade(e, o, t, r); + }, + }), + a + ); + (e = Math.min(Math.max(0, parseFloat(e)), 1)), + (o = Math.min(Math.max(0, parseFloat(o)), 1)), + (t = parseFloat(t)), + a.volume(e, r); + for (var u = a._getSoundIds(r), d = 0; d < u.length; d++) { + var i = a._soundById(u[d]); + if (i) { + if ((r || a._stopFade(u[d]), a._webAudio && !i._muted)) { + var _ = n.ctx.currentTime, + s = _ + t / 1e3; + (i._volume = e), + i._node.gain.setValueAtTime(e, _), + i._node.gain.linearRampToValueAtTime(o, s); + } + a._startFadeInterval(i, e, o, t, u[d], void 0 === r); + } + } + return a; + }, + _startFadeInterval: function (e, n, o, t, r, a) { + var u = this, + d = n, + i = o - n, + _ = Math.abs(i / 0.01), + s = Math.max(4, _ > 0 ? t / _ : t), + l = Date.now(); + (e._fadeTo = o), + (e._interval = setInterval(function () { + var r = (Date.now() - l) / t; + (l = Date.now()), + (d += i * r), + (d = Math.round(100 * d) / 100), + (d = i < 0 ? Math.max(o, d) : Math.min(o, d)), + u._webAudio ? (e._volume = d) : u.volume(d, e._id, !0), + a && (u._volume = d), + ((o < n && d <= o) || (o > n && d >= o)) && + (clearInterval(e._interval), + (e._interval = null), + (e._fadeTo = null), + u.volume(o, e._id), + u._emit("fade", e._id)); + }, s)); + }, + _stopFade: function (e) { + var o = this, + t = o._soundById(e); + return ( + t && + t._interval && + (o._webAudio && t._node.gain.cancelScheduledValues(n.ctx.currentTime), + clearInterval(t._interval), + (t._interval = null), + o.volume(t._fadeTo, e), + (t._fadeTo = null), + o._emit("fade", e)), + o + ); + }, + loop: function () { + var e, + n, + o, + t = this, + r = arguments; + if (0 === r.length) return t._loop; + if (1 === r.length) { + if ("boolean" != typeof r[0]) + return !!(o = t._soundById(parseInt(r[0], 10))) && o._loop; + (e = r[0]), (t._loop = e); + } else 2 === r.length && ((e = r[0]), (n = parseInt(r[1], 10))); + for (var a = t._getSoundIds(n), u = 0; u < a.length; u++) + (o = t._soundById(a[u])) && + ((o._loop = e), + t._webAudio && + o._node && + o._node.bufferSource && + ((o._node.bufferSource.loop = e), + e && + ((o._node.bufferSource.loopStart = o._start || 0), + (o._node.bufferSource.loopEnd = o._stop), + t.playing(a[u]) && (t.pause(a[u], !0), t.play(a[u], !0))))); + return t; + }, + rate: function () { + var e, + o, + t = this, + r = arguments; + if (0 === r.length) o = t._sounds[0]._id; + else if (1 === r.length) { + var a = t._getSoundIds(), + u = a.indexOf(r[0]); + u >= 0 ? (o = parseInt(r[0], 10)) : (e = parseFloat(r[0])); + } else + 2 === r.length && ((e = parseFloat(r[0])), (o = parseInt(r[1], 10))); + var d; + if ("number" != typeof e) + return (d = t._soundById(o)), d ? d._rate : t._rate; + if ("loaded" !== t._state || t._playLock) + return ( + t._queue.push({ + event: "rate", + action: function () { + t.rate.apply(t, r); + }, + }), + t + ); + void 0 === o && (t._rate = e), (o = t._getSoundIds(o)); + for (var i = 0; i < o.length; i++) + if ((d = t._soundById(o[i]))) { + t.playing(o[i]) && + ((d._rateSeek = t.seek(o[i])), + (d._playStart = t._webAudio ? n.ctx.currentTime : d._playStart)), + (d._rate = e), + t._webAudio && d._node && d._node.bufferSource + ? d._node.bufferSource.playbackRate.setValueAtTime( + e, + n.ctx.currentTime + ) + : d._node && (d._node.playbackRate = e); + var _ = t.seek(o[i]), + s = (t._sprite[d._sprite][0] + t._sprite[d._sprite][1]) / 1e3 - _, + l = (1e3 * s) / Math.abs(d._rate); + (!t._endTimers[o[i]] && d._paused) || + (t._clearTimer(o[i]), + (t._endTimers[o[i]] = setTimeout(t._ended.bind(t, d), l))), + t._emit("rate", d._id); + } + return t; + }, + seek: function () { + var e, + o, + t = this, + r = arguments; + if (0 === r.length) t._sounds.length && (o = t._sounds[0]._id); + else if (1 === r.length) { + var a = t._getSoundIds(), + u = a.indexOf(r[0]); + u >= 0 + ? (o = parseInt(r[0], 10)) + : t._sounds.length && + ((o = t._sounds[0]._id), (e = parseFloat(r[0]))); + } else + 2 === r.length && ((e = parseFloat(r[0])), (o = parseInt(r[1], 10))); + if (void 0 === o) return 0; + if ("number" == typeof e && ("loaded" !== t._state || t._playLock)) + return ( + t._queue.push({ + event: "seek", + action: function () { + t.seek.apply(t, r); + }, + }), + t + ); + var d = t._soundById(o); + if (d) { + if (!("number" == typeof e && e >= 0)) { + if (t._webAudio) { + var i = t.playing(o) ? n.ctx.currentTime - d._playStart : 0, + _ = d._rateSeek ? d._rateSeek - d._seek : 0; + return d._seek + (_ + i * Math.abs(d._rate)); + } + return d._node.currentTime; + } + var s = t.playing(o); + s && t.pause(o, !0), + (d._seek = e), + (d._ended = !1), + t._clearTimer(o), + t._webAudio || + !d._node || + isNaN(d._node.duration) || + (d._node.currentTime = e); + var l = function () { + s && t.play(o, !0), t._emit("seek", o); + }; + if (s && !t._webAudio) { + var c = function () { + t._playLock ? setTimeout(c, 0) : l(); + }; + setTimeout(c, 0); + } else l(); + } + return t; + }, + playing: function (e) { + var n = this; + if ("number" == typeof e) { + var o = n._soundById(e); + return !!o && !o._paused; + } + for (var t = 0; t < n._sounds.length; t++) + if (!n._sounds[t]._paused) return !0; + return !1; + }, + duration: function (e) { + var n = this, + o = n._duration, + t = n._soundById(e); + return t && (o = n._sprite[t._sprite][1] / 1e3), o; + }, + state: function () { + return this._state; + }, + unload: function () { + for (var e = this, o = e._sounds, t = 0; t < o.length; t++) + o[t]._paused || e.stop(o[t]._id), + e._webAudio || + (e._clearSound(o[t]._node), + o[t]._node.removeEventListener("error", o[t]._errorFn, !1), + o[t]._node.removeEventListener(n._canPlayEvent, o[t]._loadFn, !1), + o[t]._node.removeEventListener("ended", o[t]._endFn, !1), + n._releaseHtml5Audio(o[t]._node)), + delete o[t]._node, + e._clearTimer(o[t]._id); + var a = n._howls.indexOf(e); + a >= 0 && n._howls.splice(a, 1); + var u = !0; + for (t = 0; t < n._howls.length; t++) + if ( + n._howls[t]._src === e._src || + e._src.indexOf(n._howls[t]._src) >= 0 + ) { + u = !1; + break; + } + return ( + r && u && delete r[e._src], + (n.noAudio = !1), + (e._state = "unloaded"), + (e._sounds = []), + (e = null), + null + ); + }, + on: function (e, n, o, t) { + var r = this, + a = r["_on" + e]; + return ( + "function" == typeof n && + a.push(t ? { id: o, fn: n, once: t } : { id: o, fn: n }), + r + ); + }, + off: function (e, n, o) { + var t = this, + r = t["_on" + e], + a = 0; + if (("number" == typeof n && ((o = n), (n = null)), n || o)) + for (a = 0; a < r.length; a++) { + var u = o === r[a].id; + if ((n === r[a].fn && u) || (!n && u)) { + r.splice(a, 1); + break; + } + } + else if (e) t["_on" + e] = []; + else { + var d = Object.keys(t); + for (a = 0; a < d.length; a++) + 0 === d[a].indexOf("_on") && Array.isArray(t[d[a]]) && (t[d[a]] = []); + } + return t; + }, + once: function (e, n, o) { + var t = this; + return t.on(e, n, o, 1), t; + }, + _emit: function (e, n, o) { + for (var t = this, r = t["_on" + e], a = r.length - 1; a >= 0; a--) + (r[a].id && r[a].id !== n && "load" !== e) || + (setTimeout( + function (e) { + e.call(this, n, o); + }.bind(t, r[a].fn), + 0 + ), + r[a].once && t.off(e, r[a].fn, r[a].id)); + return t._loadQueue(e), t; + }, + _loadQueue: function (e) { + var n = this; + if (n._queue.length > 0) { + var o = n._queue[0]; + o.event === e && (n._queue.shift(), n._loadQueue()), e || o.action(); + } + return n; + }, + _ended: function (e) { + var o = this, + t = e._sprite; + if ( + !o._webAudio && + e._node && + !e._node.paused && + !e._node.ended && + e._node.currentTime < e._stop + ) + return setTimeout(o._ended.bind(o, e), 100), o; + var r = !(!e._loop && !o._sprite[t][2]); + if ( + (o._emit("end", e._id), + !o._webAudio && r && o.stop(e._id, !0).play(e._id), + o._webAudio && r) + ) { + o._emit("play", e._id), + (e._seek = e._start || 0), + (e._rateSeek = 0), + (e._playStart = n.ctx.currentTime); + var a = (1e3 * (e._stop - e._start)) / Math.abs(e._rate); + o._endTimers[e._id] = setTimeout(o._ended.bind(o, e), a); + } + return ( + o._webAudio && + !r && + ((e._paused = !0), + (e._ended = !0), + (e._seek = e._start || 0), + (e._rateSeek = 0), + o._clearTimer(e._id), + o._cleanBuffer(e._node), + n._autoSuspend()), + o._webAudio || r || o.stop(e._id, !0), + o + ); + }, + _clearTimer: function (e) { + var n = this; + if (n._endTimers[e]) { + if ("function" != typeof n._endTimers[e]) clearTimeout(n._endTimers[e]); + else { + var o = n._soundById(e); + o && + o._node && + o._node.removeEventListener("ended", n._endTimers[e], !1); + } + delete n._endTimers[e]; + } + return n; + }, + _soundById: function (e) { + for (var n = this, o = 0; o < n._sounds.length; o++) + if (e === n._sounds[o]._id) return n._sounds[o]; + return null; + }, + _inactiveSound: function () { + var e = this; + e._drain(); + for (var n = 0; n < e._sounds.length; n++) + if (e._sounds[n]._ended) return e._sounds[n].reset(); + return new t(e); + }, + _drain: function () { + var e = this, + n = e._pool, + o = 0, + t = 0; + if (!(e._sounds.length < n)) { + for (t = 0; t < e._sounds.length; t++) e._sounds[t]._ended && o++; + for (t = e._sounds.length - 1; t >= 0; t--) { + if (o <= n) return; + e._sounds[t]._ended && + (e._webAudio && + e._sounds[t]._node && + e._sounds[t]._node.disconnect(0), + e._sounds.splice(t, 1), + o--); + } + } + }, + _getSoundIds: function (e) { + var n = this; + if (void 0 === e) { + for (var o = [], t = 0; t < n._sounds.length; t++) + o.push(n._sounds[t]._id); + return o; + } + return [e]; + }, + _refreshBuffer: function (e) { + var o = this; + return ( + (e._node.bufferSource = n.ctx.createBufferSource()), + (e._node.bufferSource.buffer = r[o._src]), + e._panner + ? e._node.bufferSource.connect(e._panner) + : e._node.bufferSource.connect(e._node), + (e._node.bufferSource.loop = e._loop), + e._loop && + ((e._node.bufferSource.loopStart = e._start || 0), + (e._node.bufferSource.loopEnd = e._stop || 0)), + e._node.bufferSource.playbackRate.setValueAtTime( + e._rate, + n.ctx.currentTime + ), + o + ); + }, + _cleanBuffer: function (e) { + var o = this, + t = n._navigator && n._navigator.vendor.indexOf("Apple") >= 0; + if ( + n._scratchBuffer && + e.bufferSource && + ((e.bufferSource.onended = null), e.bufferSource.disconnect(0), t) + ) + try { + e.bufferSource.buffer = n._scratchBuffer; + } catch (e) {} + return (e.bufferSource = null), o; + }, + _clearSound: function (e) { + /MSIE |Trident\//.test(n._navigator && n._navigator.userAgent) || + (e.src = + "data:audio/wav;base64,UklGRigAAABXQVZFZm10IBIAAAABAAEARKwAAIhYAQACABAAAABkYXRhAgAAAAEA"); + }, + }; + var t = function (e) { + (this._parent = e), this.init(); + }; + t.prototype = { + init: function () { + var e = this, + o = e._parent; + return ( + (e._muted = o._muted), + (e._loop = o._loop), + (e._volume = o._volume), + (e._rate = o._rate), + (e._seek = 0), + (e._paused = !0), + (e._ended = !0), + (e._sprite = "__default"), + (e._id = ++n._counter), + o._sounds.push(e), + e.create(), + e + ); + }, + create: function () { + var e = this, + o = e._parent, + t = n._muted || e._muted || e._parent._muted ? 0 : e._volume; + return ( + o._webAudio + ? ((e._node = + void 0 === n.ctx.createGain + ? n.ctx.createGainNode() + : n.ctx.createGain()), + e._node.gain.setValueAtTime(t, n.ctx.currentTime), + (e._node.paused = !0), + e._node.connect(n.masterGain)) + : n.noAudio || + ((e._node = n._obtainHtml5Audio()), + (e._errorFn = e._errorListener.bind(e)), + e._node.addEventListener("error", e._errorFn, !1), + (e._loadFn = e._loadListener.bind(e)), + e._node.addEventListener(n._canPlayEvent, e._loadFn, !1), + (e._endFn = e._endListener.bind(e)), + e._node.addEventListener("ended", e._endFn, !1), + (e._node.src = o._src), + (e._node.preload = !0 === o._preload ? "auto" : o._preload), + (e._node.volume = t * n.volume()), + e._node.load()), + e + ); + }, + reset: function () { + var e = this, + o = e._parent; + return ( + (e._muted = o._muted), + (e._loop = o._loop), + (e._volume = o._volume), + (e._rate = o._rate), + (e._seek = 0), + (e._rateSeek = 0), + (e._paused = !0), + (e._ended = !0), + (e._sprite = "__default"), + (e._id = ++n._counter), + e + ); + }, + _errorListener: function () { + var e = this; + e._parent._emit( + "loaderror", + e._id, + e._node.error ? e._node.error.code : 0 + ), + e._node.removeEventListener("error", e._errorFn, !1); + }, + _loadListener: function () { + var e = this, + o = e._parent; + (o._duration = Math.ceil(10 * e._node.duration) / 10), + 0 === Object.keys(o._sprite).length && + (o._sprite = { __default: [0, 1e3 * o._duration] }), + "loaded" !== o._state && + ((o._state = "loaded"), o._emit("load"), o._loadQueue()), + e._node.removeEventListener(n._canPlayEvent, e._loadFn, !1); + }, + _endListener: function () { + var e = this, + n = e._parent; + n._duration === 1 / 0 && + ((n._duration = Math.ceil(10 * e._node.duration) / 10), + n._sprite.__default[1] === 1 / 0 && + (n._sprite.__default[1] = 1e3 * n._duration), + n._ended(e)), + e._node.removeEventListener("ended", e._endFn, !1); + }, + }; + var r = {}, + a = function (e) { + var n = e._src; + if (r[n]) return (e._duration = r[n].duration), void i(e); + if (/^data:[^;]+;base64,/.test(n)) { + for ( + var o = atob(n.split(",")[1]), t = new Uint8Array(o.length), a = 0; + a < o.length; + ++a + ) + t[a] = o.charCodeAt(a); + d(t.buffer, e); + } else { + var _ = new XMLHttpRequest(); + _.open(e._xhr.method, n, !0), + (_.withCredentials = e._xhr.withCredentials), + (_.responseType = "arraybuffer"), + e._xhr.headers && + Object.keys(e._xhr.headers).forEach(function (n) { + _.setRequestHeader(n, e._xhr.headers[n]); + }), + (_.onload = function () { + var n = (_.status + "")[0]; + if ("0" !== n && "2" !== n && "3" !== n) + return void e._emit( + "loaderror", + null, + "Failed loading audio file with status: " + _.status + "." + ); + d(_.response, e); + }), + (_.onerror = function () { + e._webAudio && + ((e._html5 = !0), + (e._webAudio = !1), + (e._sounds = []), + delete r[n], + e.load()); + }), + u(_); + } + }, + u = function (e) { + try { + e.send(); + } catch (n) { + e.onerror(); + } + }, + d = function (e, o) { + var t = function () { + o._emit("loaderror", null, "Decoding audio data failed."); + }, + a = function (e) { + e && o._sounds.length > 0 ? ((r[o._src] = e), i(o, e)) : t(); + }; + "undefined" != typeof Promise && 1 === n.ctx.decodeAudioData.length + ? n.ctx.decodeAudioData(e).then(a).catch(t) + : n.ctx.decodeAudioData(e, a, t); + }, + i = function (e, n) { + n && !e._duration && (e._duration = n.duration), + 0 === Object.keys(e._sprite).length && + (e._sprite = { __default: [0, 1e3 * e._duration] }), + "loaded" !== e._state && + ((e._state = "loaded"), e._emit("load"), e._loadQueue()); + }, + _ = function () { + if (n.usingWebAudio) { + try { + "undefined" != typeof AudioContext + ? (n.ctx = new AudioContext()) + : "undefined" != typeof webkitAudioContext + ? (n.ctx = new webkitAudioContext()) + : (n.usingWebAudio = !1); + } catch (e) { + n.usingWebAudio = !1; + } + n.ctx || (n.usingWebAudio = !1); + var e = /iP(hone|od|ad)/.test(n._navigator && n._navigator.platform), + o = + n._navigator && + n._navigator.appVersion.match(/OS (\d+)_(\d+)_?(\d+)?/), + t = o ? parseInt(o[1], 10) : null; + if (e && t && t < 9) { + var r = /safari/.test( + n._navigator && n._navigator.userAgent.toLowerCase() + ); + n._navigator && !r && (n.usingWebAudio = !1); + } + n.usingWebAudio && + ((n.masterGain = + void 0 === n.ctx.createGain + ? n.ctx.createGainNode() + : n.ctx.createGain()), + n.masterGain.gain.setValueAtTime( + n._muted ? 0 : n._volume, + n.ctx.currentTime + ), + n.masterGain.connect(n.ctx.destination)), + n._setup(); + } + }; + "function" == typeof define && + define.amd && + define([], function () { + return { Howler: n, Howl: o }; + }), + "undefined" != typeof exports && ((exports.Howler = n), (exports.Howl = o)), + "undefined" != typeof global + ? ((global.HowlerGlobal = e), + (global.Howler = n), + (global.Howl = o), + (global.Sound = t)) + : "undefined" != typeof window && + ((window.HowlerGlobal = e), + (window.Howler = n), + (window.Howl = o), + (window.Sound = t)); +})(); +/*! Spatial Plugin */ +!(function () { + "use strict"; + (HowlerGlobal.prototype._pos = [0, 0, 0]), + (HowlerGlobal.prototype._orientation = [0, 0, -1, 0, 1, 0]), + (HowlerGlobal.prototype.stereo = function (e) { + var n = this; + if (!n.ctx || !n.ctx.listener) return n; + for (var t = n._howls.length - 1; t >= 0; t--) n._howls[t].stereo(e); + return n; + }), + (HowlerGlobal.prototype.pos = function (e, n, t) { + var r = this; + return r.ctx && r.ctx.listener + ? ((n = "number" != typeof n ? r._pos[1] : n), + (t = "number" != typeof t ? r._pos[2] : t), + "number" != typeof e + ? r._pos + : ((r._pos = [e, n, t]), + void 0 !== r.ctx.listener.positionX + ? (r.ctx.listener.positionX.setTargetAtTime( + r._pos[0], + Howler.ctx.currentTime, + 0.1 + ), + r.ctx.listener.positionY.setTargetAtTime( + r._pos[1], + Howler.ctx.currentTime, + 0.1 + ), + r.ctx.listener.positionZ.setTargetAtTime( + r._pos[2], + Howler.ctx.currentTime, + 0.1 + )) + : r.ctx.listener.setPosition(r._pos[0], r._pos[1], r._pos[2]), + r)) + : r; + }), + (HowlerGlobal.prototype.orientation = function (e, n, t, r, o, i) { + var a = this; + if (!a.ctx || !a.ctx.listener) return a; + var s = a._orientation; + return ( + (n = "number" != typeof n ? s[1] : n), + (t = "number" != typeof t ? s[2] : t), + (r = "number" != typeof r ? s[3] : r), + (o = "number" != typeof o ? s[4] : o), + (i = "number" != typeof i ? s[5] : i), + "number" != typeof e + ? s + : ((a._orientation = [e, n, t, r, o, i]), + void 0 !== a.ctx.listener.forwardX + ? (a.ctx.listener.forwardX.setTargetAtTime( + e, + Howler.ctx.currentTime, + 0.1 + ), + a.ctx.listener.forwardY.setTargetAtTime( + n, + Howler.ctx.currentTime, + 0.1 + ), + a.ctx.listener.forwardZ.setTargetAtTime( + t, + Howler.ctx.currentTime, + 0.1 + ), + a.ctx.listener.upX.setTargetAtTime( + r, + Howler.ctx.currentTime, + 0.1 + ), + a.ctx.listener.upY.setTargetAtTime( + o, + Howler.ctx.currentTime, + 0.1 + ), + a.ctx.listener.upZ.setTargetAtTime( + i, + Howler.ctx.currentTime, + 0.1 + )) + : a.ctx.listener.setOrientation(e, n, t, r, o, i), + a) + ); + }), + (Howl.prototype.init = (function (e) { + return function (n) { + var t = this; + return ( + (t._orientation = n.orientation || [1, 0, 0]), + (t._stereo = n.stereo || null), + (t._pos = n.pos || null), + (t._pannerAttr = { + coneInnerAngle: + void 0 !== n.coneInnerAngle ? n.coneInnerAngle : 360, + coneOuterAngle: + void 0 !== n.coneOuterAngle ? n.coneOuterAngle : 360, + coneOuterGain: void 0 !== n.coneOuterGain ? n.coneOuterGain : 0, + distanceModel: + void 0 !== n.distanceModel ? n.distanceModel : "inverse", + maxDistance: void 0 !== n.maxDistance ? n.maxDistance : 1e4, + panningModel: void 0 !== n.panningModel ? n.panningModel : "HRTF", + refDistance: void 0 !== n.refDistance ? n.refDistance : 1, + rolloffFactor: void 0 !== n.rolloffFactor ? n.rolloffFactor : 1, + }), + (t._onstereo = n.onstereo ? [{ fn: n.onstereo }] : []), + (t._onpos = n.onpos ? [{ fn: n.onpos }] : []), + (t._onorientation = n.onorientation ? [{ fn: n.onorientation }] : []), + e.call(this, n) + ); + }; + })(Howl.prototype.init)), + (Howl.prototype.stereo = function (n, t) { + var r = this; + if (!r._webAudio) return r; + if ("loaded" !== r._state) + return ( + r._queue.push({ + event: "stereo", + action: function () { + r.stereo(n, t); + }, + }), + r + ); + var o = void 0 === Howler.ctx.createStereoPanner ? "spatial" : "stereo"; + if (void 0 === t) { + if ("number" != typeof n) return r._stereo; + (r._stereo = n), (r._pos = [n, 0, 0]); + } + for (var i = r._getSoundIds(t), a = 0; a < i.length; a++) { + var s = r._soundById(i[a]); + if (s) { + if ("number" != typeof n) return s._stereo; + (s._stereo = n), + (s._pos = [n, 0, 0]), + s._node && + ((s._pannerAttr.panningModel = "equalpower"), + (s._panner && s._panner.pan) || e(s, o), + "spatial" === o + ? void 0 !== s._panner.positionX + ? (s._panner.positionX.setValueAtTime( + n, + Howler.ctx.currentTime + ), + s._panner.positionY.setValueAtTime( + 0, + Howler.ctx.currentTime + ), + s._panner.positionZ.setValueAtTime( + 0, + Howler.ctx.currentTime + )) + : s._panner.setPosition(n, 0, 0) + : s._panner.pan.setValueAtTime(n, Howler.ctx.currentTime)), + r._emit("stereo", s._id); + } + } + return r; + }), + (Howl.prototype.pos = function (n, t, r, o) { + var i = this; + if (!i._webAudio) return i; + if ("loaded" !== i._state) + return ( + i._queue.push({ + event: "pos", + action: function () { + i.pos(n, t, r, o); + }, + }), + i + ); + if ( + ((t = "number" != typeof t ? 0 : t), + (r = "number" != typeof r ? -0.5 : r), + void 0 === o) + ) { + if ("number" != typeof n) return i._pos; + i._pos = [n, t, r]; + } + for (var a = i._getSoundIds(o), s = 0; s < a.length; s++) { + var p = i._soundById(a[s]); + if (p) { + if ("number" != typeof n) return p._pos; + (p._pos = [n, t, r]), + p._node && + ((p._panner && !p._panner.pan) || e(p, "spatial"), + void 0 !== p._panner.positionX + ? (p._panner.positionX.setValueAtTime( + n, + Howler.ctx.currentTime + ), + p._panner.positionY.setValueAtTime(t, Howler.ctx.currentTime), + p._panner.positionZ.setValueAtTime(r, Howler.ctx.currentTime)) + : p._panner.setPosition(n, t, r)), + i._emit("pos", p._id); + } + } + return i; + }), + (Howl.prototype.orientation = function (n, t, r, o) { + var i = this; + if (!i._webAudio) return i; + if ("loaded" !== i._state) + return ( + i._queue.push({ + event: "orientation", + action: function () { + i.orientation(n, t, r, o); + }, + }), + i + ); + if ( + ((t = "number" != typeof t ? i._orientation[1] : t), + (r = "number" != typeof r ? i._orientation[2] : r), + void 0 === o) + ) { + if ("number" != typeof n) return i._orientation; + i._orientation = [n, t, r]; + } + for (var a = i._getSoundIds(o), s = 0; s < a.length; s++) { + var p = i._soundById(a[s]); + if (p) { + if ("number" != typeof n) return p._orientation; + (p._orientation = [n, t, r]), + p._node && + (p._panner || + (p._pos || (p._pos = i._pos || [0, 0, -0.5]), e(p, "spatial")), + void 0 !== p._panner.orientationX + ? (p._panner.orientationX.setValueAtTime( + n, + Howler.ctx.currentTime + ), + p._panner.orientationY.setValueAtTime( + t, + Howler.ctx.currentTime + ), + p._panner.orientationZ.setValueAtTime( + r, + Howler.ctx.currentTime + )) + : p._panner.setOrientation(n, t, r)), + i._emit("orientation", p._id); + } + } + return i; + }), + (Howl.prototype.pannerAttr = function () { + var n, + t, + r, + o = this, + i = arguments; + if (!o._webAudio) return o; + if (0 === i.length) return o._pannerAttr; + if (1 === i.length) { + if ("object" != typeof i[0]) + return ( + (r = o._soundById(parseInt(i[0], 10))), + r ? r._pannerAttr : o._pannerAttr + ); + (n = i[0]), + void 0 === t && + (n.pannerAttr || + (n.pannerAttr = { + coneInnerAngle: n.coneInnerAngle, + coneOuterAngle: n.coneOuterAngle, + coneOuterGain: n.coneOuterGain, + distanceModel: n.distanceModel, + maxDistance: n.maxDistance, + refDistance: n.refDistance, + rolloffFactor: n.rolloffFactor, + panningModel: n.panningModel, + }), + (o._pannerAttr = { + coneInnerAngle: + void 0 !== n.pannerAttr.coneInnerAngle + ? n.pannerAttr.coneInnerAngle + : o._coneInnerAngle, + coneOuterAngle: + void 0 !== n.pannerAttr.coneOuterAngle + ? n.pannerAttr.coneOuterAngle + : o._coneOuterAngle, + coneOuterGain: + void 0 !== n.pannerAttr.coneOuterGain + ? n.pannerAttr.coneOuterGain + : o._coneOuterGain, + distanceModel: + void 0 !== n.pannerAttr.distanceModel + ? n.pannerAttr.distanceModel + : o._distanceModel, + maxDistance: + void 0 !== n.pannerAttr.maxDistance + ? n.pannerAttr.maxDistance + : o._maxDistance, + refDistance: + void 0 !== n.pannerAttr.refDistance + ? n.pannerAttr.refDistance + : o._refDistance, + rolloffFactor: + void 0 !== n.pannerAttr.rolloffFactor + ? n.pannerAttr.rolloffFactor + : o._rolloffFactor, + panningModel: + void 0 !== n.pannerAttr.panningModel + ? n.pannerAttr.panningModel + : o._panningModel, + })); + } else 2 === i.length && ((n = i[0]), (t = parseInt(i[1], 10))); + for (var a = o._getSoundIds(t), s = 0; s < a.length; s++) + if ((r = o._soundById(a[s]))) { + var p = r._pannerAttr; + p = { + coneInnerAngle: + void 0 !== n.coneInnerAngle ? n.coneInnerAngle : p.coneInnerAngle, + coneOuterAngle: + void 0 !== n.coneOuterAngle ? n.coneOuterAngle : p.coneOuterAngle, + coneOuterGain: + void 0 !== n.coneOuterGain ? n.coneOuterGain : p.coneOuterGain, + distanceModel: + void 0 !== n.distanceModel ? n.distanceModel : p.distanceModel, + maxDistance: + void 0 !== n.maxDistance ? n.maxDistance : p.maxDistance, + refDistance: + void 0 !== n.refDistance ? n.refDistance : p.refDistance, + rolloffFactor: + void 0 !== n.rolloffFactor ? n.rolloffFactor : p.rolloffFactor, + panningModel: + void 0 !== n.panningModel ? n.panningModel : p.panningModel, + }; + var c = r._panner; + c + ? ((c.coneInnerAngle = p.coneInnerAngle), + (c.coneOuterAngle = p.coneOuterAngle), + (c.coneOuterGain = p.coneOuterGain), + (c.distanceModel = p.distanceModel), + (c.maxDistance = p.maxDistance), + (c.refDistance = p.refDistance), + (c.rolloffFactor = p.rolloffFactor), + (c.panningModel = p.panningModel)) + : (r._pos || (r._pos = o._pos || [0, 0, -0.5]), e(r, "spatial")); + } + return o; + }), + (Sound.prototype.init = (function (e) { + return function () { + var n = this, + t = n._parent; + (n._orientation = t._orientation), + (n._stereo = t._stereo), + (n._pos = t._pos), + (n._pannerAttr = t._pannerAttr), + e.call(this), + n._stereo + ? t.stereo(n._stereo) + : n._pos && t.pos(n._pos[0], n._pos[1], n._pos[2], n._id); + }; + })(Sound.prototype.init)), + (Sound.prototype.reset = (function (e) { + return function () { + var n = this, + t = n._parent; + return ( + (n._orientation = t._orientation), + (n._stereo = t._stereo), + (n._pos = t._pos), + (n._pannerAttr = t._pannerAttr), + n._stereo + ? t.stereo(n._stereo) + : n._pos + ? t.pos(n._pos[0], n._pos[1], n._pos[2], n._id) + : n._panner && + (n._panner.disconnect(0), + (n._panner = void 0), + t._refreshBuffer(n)), + e.call(this) + ); + }; + })(Sound.prototype.reset)); + var e = function (e, n) { + (n = n || "spatial"), + "spatial" === n + ? ((e._panner = Howler.ctx.createPanner()), + (e._panner.coneInnerAngle = e._pannerAttr.coneInnerAngle), + (e._panner.coneOuterAngle = e._pannerAttr.coneOuterAngle), + (e._panner.coneOuterGain = e._pannerAttr.coneOuterGain), + (e._panner.distanceModel = e._pannerAttr.distanceModel), + (e._panner.maxDistance = e._pannerAttr.maxDistance), + (e._panner.refDistance = e._pannerAttr.refDistance), + (e._panner.rolloffFactor = e._pannerAttr.rolloffFactor), + (e._panner.panningModel = e._pannerAttr.panningModel), + void 0 !== e._panner.positionX + ? (e._panner.positionX.setValueAtTime( + e._pos[0], + Howler.ctx.currentTime + ), + e._panner.positionY.setValueAtTime( + e._pos[1], + Howler.ctx.currentTime + ), + e._panner.positionZ.setValueAtTime( + e._pos[2], + Howler.ctx.currentTime + )) + : e._panner.setPosition(e._pos[0], e._pos[1], e._pos[2]), + void 0 !== e._panner.orientationX + ? (e._panner.orientationX.setValueAtTime( + e._orientation[0], + Howler.ctx.currentTime + ), + e._panner.orientationY.setValueAtTime( + e._orientation[1], + Howler.ctx.currentTime + ), + e._panner.orientationZ.setValueAtTime( + e._orientation[2], + Howler.ctx.currentTime + )) + : e._panner.setOrientation( + e._orientation[0], + e._orientation[1], + e._orientation[2] + )) + : ((e._panner = Howler.ctx.createStereoPanner()), + e._panner.pan.setValueAtTime(e._stereo, Howler.ctx.currentTime)), + e._panner.connect(e._node), + e._paused || e._parent.pause(e._id, !0).play(e._id, !0); + }; +})(); + +globalThis.HowlerAudioPlayer = { + audioStore: {}, + loadedAudio: {}, + paused: {}, + volumes: {}, + muted: {}, + init(runtime) { + this.runtime = runtime; + }, + + dbToLinear(x) { + var v = this.dbToLinear_nocap(x); + + if (!isFinite(v)) + // accidentally passing a string can result in NaN; set volume to 0 if so + v = 0; + + if (v <= 0.0011) v = 0; + if (v > 1) v = 1; + return v; + }, + + linearToDb(x) { + if (x < 0.001) x = 0.001; + if (x > 1) x = 1; + return this.linearToDb_nocap(x); + }, + + dbToLinear_nocap(x) { + return Math.pow(10, x / 20); + }, + + linearToDb_nocap(x) { + return (Math.log(x) / Math.log(10)) * 20; + }, + + play(name, group = "sounds") { + //if sound has already been played before, reuse it, else create new Howler. + let howler; + this.audioStore[group] = this.audioStore[group] || {}; + if (this.audioStore[group][name]) howler = this.audioStore[group][name]; + else if (this.loadedAudio[name]) { + howler = this.audioStore[group][name] = this.loadedAudio[name]; + delete this.loadedAudio[name]; + } else howler = this.load(name, group); + + howler.volume(this.volumes[group] || 1); + howler.mute(!!this.muted[group]); + howler.play(); + }, + setPaused(paused = true, group) { + if (group) { + if (paused) { + if (!this.audioStore.hasOwnProperty(group)) return; + this.paused[group] = this.paused[group] || {}; + Object.keys(this.audioStore[group]).forEach((name) => { + this.paused[group][name] = this.paused[group][name] || []; + let self = this.audioStore[group][name]; + for (var i = 0; i < self._sounds.length; i++) { + let sound = self._sounds[i]; + if (!sound._paused && !sound._ended) { + this.paused[group][name].push(sound._id); + self.pause(sound._id); + } + } + }); + } else { + if (!this.paused.hasOwnProperty(group)) return; + if (!this.audioStore.hasOwnProperty(group)) return; + Object.keys(this.paused[group]).forEach((name) => { + if (!this.audioStore[group].hasOwnProperty(name)) return; + let ids = this.paused[group][name]; + ids.forEach((id) => { + this.audioStore[group][name].play(id); + }); + this.paused[group][name] = []; + }); + } + } else { + if (paused) { + let arr = Object.keys(this.audioStore); + for (let i = 0; i < arr.length; i++) { + const groupName = arr[i]; + this.setPaused(true, groupName); + } + } else { + let arr = Object.keys(this.paused); + for (let i = 0; i < arr.length; i++) { + const groupName = arr[i]; + this.setPaused(false, groupName); + } + } + } + }, + setMuted(muted = true, group) { + if (group) { + if (!this.audioStore.hasOwnProperty(group)) return; + this.muted[group] = muted; + Object.values(this.audioStore[group]).forEach((howl) => { + howl.mute(muted); + }); + } else { + Howler.mute(muted); + } + }, + setLooping(looping = true, group) { + if (group) { + if (!this.audioStore.hasOwnProperty(group)) return; + Object.values(this.audioStore[group]).forEach((howl) => { + howl.loop(looping); + }); + } else { + let arr = Object.keys(this.audioStore); + for (let i = 0; i < arr.length; i++) { + const groupName = arr[i]; + this.setLooping(looping, groupName); + } + } + }, + setVolume(volume, group) { + volume = this.dbToLinear(volume); + this.setLinearVolume(volume, group); + }, + setLinearVolume(volume, group) { + if (group) { + if (!this.audioStore.hasOwnProperty(group)) return; + this.volumes[group] = volume; + Object.values(this.audioStore[group]).forEach((howl) => { + howl.volume(volume); + }); + } else { + Howler.volume(volume); + } + }, + stop(group) { + if (group) { + if (!this.audioStore.hasOwnProperty(group)) return; + + if (this.paused.hasOwnProperty(group)) { + this.paused[group] = {}; + } + + Object.values(this.audioStore[group]).forEach((howl) => { + howl.stop(); + }); + } else { + this.paused = {}; + Howler.stop(); + } + }, + unload(name, group) { + if (name) { + if (group) { + if (this.audioStore[group] && this.audioStore[group][name]) + this.audioStore[group][name].unload(); + } else { + Object.values(this.audioStore).forEach((group) => { + if (group[name]) group[name].unload(); + }); + } + } else { + Howler.unload(); + } + }, + load(name, group) { + let fullName = this.runtime.files_subfolder + name.toLowerCase(); + if (group) { + this.audioStore[group] = this.audioStore[group] || {}; + if (!this.audioStore[group][name]) { + this.audioStore[group][name] = new Howl({ + src: [fullName + ".ogg", fullName + ".m4a"], + }); + } + return this.audioStore[group][name]; + } else { + if (this.loadedAudio[name]) return; + this.loadedAudio[name] = new Howl({ + src: [fullName + ".ogg", fullName + ".m4a"], + }); + } + }, + isPlaying(group) { + if (group) { + if (!this.audioStore.hasOwnProperty(group)) return false; + let arr = Object.values(this.audioStore[group]); + for (let i = 0; i < arr.length; i++) { + const howl = arr[i]; + if (howl.playing()) return true; + } + return false; + } else { + let arr = Object.keys(this.audioStore); + for (let i = 0; i < arr.length; i++) { + const groupName = arr[i]; + if (this.isPlaying(groupName)) return true; + } + return false; + } + }, + getVolume(group) { + if (group) { + return this.linearToDb(this.volumes[group] || 1); + } else { + return this.linearToDb(Howler.volume()); + } + }, + getLinearVolume(group) { + if (group) { + return this.volumes[group] || 1; + } else { + return Howler.volume(); + } + }, +}; diff --git a/gversion/gs/ovo/html2canvas.min.js b/gversion/gs/ovo/html2canvas.min.js new file mode 100644 index 0000000..3d7173a --- /dev/null +++ b/gversion/gs/ovo/html2canvas.min.js @@ -0,0 +1,8 @@ +/* + html2canvas 0.5.0-beta2 + Copyright (c) 2015 Niklas von Hertzen + + Released under License +*/ +!function(a){if("object"==typeof exports&&"undefined"!=typeof module)module.exports=a();else if("function"==typeof define&&define.amd)define([],a);else{var b;b="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:this,b.html2canvas=a()}}(function(){var a;return function b(a,c,d){function e(g,h){if(!c[g]){if(!a[g]){var i="function"==typeof require&&require;if(!h&&i)return i(g,!0);if(f)return f(g,!0);var j=new Error("Cannot find module '"+g+"'");throw j.code="MODULE_NOT_FOUND",j}var k=c[g]={exports:{}};a[g][0].call(k.exports,function(b){var c=a[g][1][b];return e(c?c:b)},k,k.exports,b,a,c,d)}return c[g].exports}for(var f="function"==typeof require&&require,g=0;g1&&(d=c[0]+"@",a=c[1]),a=a.replace(H,".");var e=a.split("."),f=g(e,b).join(".");return d+f}function i(a){for(var b,c,d=[],e=0,f=a.length;f>e;)b=a.charCodeAt(e++),b>=55296&&56319>=b&&f>e?(c=a.charCodeAt(e++),56320==(64512&c)?d.push(((1023&b)<<10)+(1023&c)+65536):(d.push(b),e--)):d.push(b);return d}function j(a){return g(a,function(a){var b="";return a>65535&&(a-=65536,b+=L(a>>>10&1023|55296),a=56320|1023&a),b+=L(a)}).join("")}function k(a){return 10>a-48?a-22:26>a-65?a-65:26>a-97?a-97:x}function l(a,b){return a+22+75*(26>a)-((0!=b)<<5)}function m(a,b,c){var d=0;for(a=c?K(a/B):a>>1,a+=K(a/b);a>J*z>>1;d+=x)a=K(a/J);return K(d+(J+1)*a/(a+A))}function n(a){var b,c,d,e,g,h,i,l,n,o,p=[],q=a.length,r=0,s=D,t=C;for(c=a.lastIndexOf(E),0>c&&(c=0),d=0;c>d;++d)a.charCodeAt(d)>=128&&f("not-basic"),p.push(a.charCodeAt(d));for(e=c>0?c+1:0;q>e;){for(g=r,h=1,i=x;e>=q&&f("invalid-input"),l=k(a.charCodeAt(e++)),(l>=x||l>K((w-r)/h))&&f("overflow"),r+=l*h,n=t>=i?y:i>=t+z?z:i-t,!(n>l);i+=x)o=x-n,h>K(w/o)&&f("overflow"),h*=o;b=p.length+1,t=m(r-g,b,0==g),K(r/b)>w-s&&f("overflow"),s+=K(r/b),r%=b,p.splice(r++,0,s)}return j(p)}function o(a){var b,c,d,e,g,h,j,k,n,o,p,q,r,s,t,u=[];for(a=i(a),q=a.length,b=D,c=0,g=C,h=0;q>h;++h)p=a[h],128>p&&u.push(L(p));for(d=e=u.length,e&&u.push(E);q>d;){for(j=w,h=0;q>h;++h)p=a[h],p>=b&&j>p&&(j=p);for(r=d+1,j-b>K((w-c)/r)&&f("overflow"),c+=(j-b)*r,b=j,h=0;q>h;++h)if(p=a[h],b>p&&++c>w&&f("overflow"),p==b){for(k=c,n=x;o=g>=n?y:n>=g+z?z:n-g,!(o>k);n+=x)t=k-o,s=x-o,u.push(L(l(o+t%s,0))),k=K(t/s);u.push(L(l(k,0))),g=m(c,r,d==e),c=0,++d}++c,++b}return u.join("")}function p(a){return h(a,function(a){return F.test(a)?n(a.slice(4).toLowerCase()):a})}function q(a){return h(a,function(a){return G.test(a)?"xn--"+o(a):a})}var r="object"==typeof d&&d&&!d.nodeType&&d,s="object"==typeof c&&c&&!c.nodeType&&c,t="object"==typeof b&&b;(t.global===t||t.window===t||t.self===t)&&(e=t);var u,v,w=2147483647,x=36,y=1,z=26,A=38,B=700,C=72,D=128,E="-",F=/^xn--/,G=/[^\x20-\x7E]/,H=/[\x2E\u3002\uFF0E\uFF61]/g,I={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"},J=x-y,K=Math.floor,L=String.fromCharCode;if(u={version:"1.3.2",ucs2:{decode:i,encode:j},decode:n,encode:o,toASCII:q,toUnicode:p},"function"==typeof a&&"object"==typeof a.amd&&a.amd)a("punycode",function(){return u});else if(r&&s)if(c.exports==r)s.exports=u;else for(v in u)u.hasOwnProperty(v)&&(r[v]=u[v]);else e.punycode=u}(this)}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],2:[function(a,b,c){function d(a,b,c){!a.defaultView||b===a.defaultView.pageXOffset&&c===a.defaultView.pageYOffset||a.defaultView.scrollTo(b,c)}function e(a,b){try{b&&(b.width=a.width,b.height=a.height,b.getContext("2d").putImageData(a.getContext("2d").getImageData(0,0,a.width,a.height),0,0))}catch(c){h("Unable to copy canvas content from",a,c)}}function f(a,b){for(var c=3===a.nodeType?document.createTextNode(a.nodeValue):a.cloneNode(!1),d=a.firstChild;d;)(b===!0||1!==d.nodeType||"SCRIPT"!==d.nodeName)&&c.appendChild(f(d,b)),d=d.nextSibling;return 1===a.nodeType&&(c._scrollTop=a.scrollTop,c._scrollLeft=a.scrollLeft,"CANVAS"===a.nodeName?e(a,c):("TEXTAREA"===a.nodeName||"SELECT"===a.nodeName)&&(c.value=a.value)),c}function g(a){if(1===a.nodeType){a.scrollTop=a._scrollTop,a.scrollLeft=a._scrollLeft;for(var b=a.firstChild;b;)g(b),b=b.nextSibling}}var h=a("./log");b.exports=function(a,b,c,e,h,i,j){var k=f(a.documentElement,h.javascriptEnabled),l=b.createElement("iframe");return l.className="html2canvas-container",l.style.visibility="hidden",l.style.position="fixed",l.style.left="-10000px",l.style.top="0px",l.style.border="0",l.width=c,l.height=e,l.scrolling="no",b.body.appendChild(l),new Promise(function(b){var c=l.contentWindow.document;l.contentWindow.onload=l.onload=function(){var a=setInterval(function(){c.body.childNodes.length>0&&(g(c.documentElement),clearInterval(a),"view"===h.type&&(l.contentWindow.scrollTo(i,j),!/(iPad|iPhone|iPod)/g.test(navigator.userAgent)||l.contentWindow.scrollY===j&&l.contentWindow.scrollX===i||(c.documentElement.style.top=-j+"px",c.documentElement.style.left=-i+"px",c.documentElement.style.position="absolute")),b(l))},50)},c.open(),c.write(""),d(a,i,j),c.replaceChild(c.adoptNode(k),c.documentElement),c.close()})}},{"./log":13}],3:[function(a,b,c){function d(a){this.r=0,this.g=0,this.b=0,this.a=null;this.fromArray(a)||this.namedColor(a)||this.rgb(a)||this.rgba(a)||this.hex6(a)||this.hex3(a)}d.prototype.darken=function(a){var b=1-a;return new d([Math.round(this.r*b),Math.round(this.g*b),Math.round(this.b*b),this.a])},d.prototype.isTransparent=function(){return 0===this.a},d.prototype.isBlack=function(){return 0===this.r&&0===this.g&&0===this.b},d.prototype.fromArray=function(a){return Array.isArray(a)&&(this.r=Math.min(a[0],255),this.g=Math.min(a[1],255),this.b=Math.min(a[2],255),a.length>3&&(this.a=a[3])),Array.isArray(a)};var e=/^#([a-f0-9]{3})$/i;d.prototype.hex3=function(a){var b=null;return null!==(b=a.match(e))&&(this.r=parseInt(b[1][0]+b[1][0],16),this.g=parseInt(b[1][1]+b[1][1],16),this.b=parseInt(b[1][2]+b[1][2],16)),null!==b};var f=/^#([a-f0-9]{6})$/i;d.prototype.hex6=function(a){var b=null;return null!==(b=a.match(f))&&(this.r=parseInt(b[1].substring(0,2),16),this.g=parseInt(b[1].substring(2,4),16),this.b=parseInt(b[1].substring(4,6),16)),null!==b};var g=/^rgb\(\s*(\d{1,3})\s*,\s*(\d{1,3})\s*,\s*(\d{1,3})\s*\)$/;d.prototype.rgb=function(a){var b=null;return null!==(b=a.match(g))&&(this.r=Number(b[1]),this.g=Number(b[2]),this.b=Number(b[3])),null!==b};var h=/^rgba\(\s*(\d{1,3})\s*,\s*(\d{1,3})\s*,\s*(\d{1,3})\s*,\s*(\d?\.?\d+)\s*\)$/;d.prototype.rgba=function(a){var b=null;return null!==(b=a.match(h))&&(this.r=Number(b[1]),this.g=Number(b[2]),this.b=Number(b[3]),this.a=Number(b[4])),null!==b},d.prototype.toString=function(){return null!==this.a&&1!==this.a?"rgba("+[this.r,this.g,this.b,this.a].join(",")+")":"rgb("+[this.r,this.g,this.b].join(",")+")"},d.prototype.namedColor=function(a){a=a.toLowerCase();var b=i[a];if(b)this.r=b[0],this.g=b[1],this.b=b[2];else if("transparent"===a)return this.r=this.g=this.b=this.a=0,!0;return!!b},d.prototype.isColor=!0;var i={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]};b.exports=d},{}],4:[function(b,c,d){function e(a,b){var c=x++;if(b=b||{},b.logging&&(window.html2canvas.logging=!0,window.html2canvas.start=Date.now()),b.async="undefined"==typeof b.async?!0:b.async,b.allowTaint="undefined"==typeof b.allowTaint?!1:b.allowTaint,b.removeContainer="undefined"==typeof b.removeContainer?!0:b.removeContainer,b.javascriptEnabled="undefined"==typeof b.javascriptEnabled?!1:b.javascriptEnabled,b.imageTimeout="undefined"==typeof b.imageTimeout?1e4:b.imageTimeout,b.renderer="function"==typeof b.renderer?b.renderer:n,b.strict=!!b.strict,"string"==typeof a){if("string"!=typeof b.proxy)return Promise.reject("Proxy must be used when rendering url");var d=null!=b.width?b.width:window.innerWidth,e=null!=b.height?b.height:window.innerHeight;return u(l(a),b.proxy,document,d,e,b).then(function(a){return g(a.contentWindow.document.documentElement,a,b,d,e)})}var h=(void 0===a?[document.documentElement]:a.length?a:[a])[0];return h.setAttribute(w+c,c),f(h.ownerDocument,b,h.ownerDocument.defaultView.innerWidth,h.ownerDocument.defaultView.innerHeight,c).then(function(a){return"function"==typeof b.onrendered&&(r("options.onrendered is deprecated, html2canvas returns a Promise containing the canvas"),b.onrendered(a)),a})}function f(a,b,c,d,e){return t(a,a,c,d,b,a.defaultView.pageXOffset,a.defaultView.pageYOffset).then(function(f){r("Document cloned");var h=w+e,i="["+h+"='"+e+"']";a.querySelector(i).removeAttribute(h);var j=f.contentWindow,k=j.document.querySelector(i),l="function"==typeof b.onclone?Promise.resolve(b.onclone(j.document)):Promise.resolve(!0);return l.then(function(){return g(k,f,b,c,d)})})}function g(a,b,c,d,e){var f=b.contentWindow,g=new m(f.document),l=new o(c,g),n=v(a),q="view"===c.type?d:j(f.document),s="view"===c.type?e:k(f.document),t=new c.renderer(q,s,l,c,document),u=new p(a,t,g,l,c);return u.ready.then(function(){r("Finished rendering");var d;return d="view"===c.type?i(t.canvas,{width:t.canvas.width,height:t.canvas.height,top:0,left:0,x:0,y:0}):a===f.document.body||a===f.document.documentElement||null!=c.canvas?t.canvas:i(t.canvas,{width:null!=c.width?c.width:n.width,height:null!=c.height?c.height:n.height,top:n.top,left:n.left,x:f.pageXOffset,y:f.pageYOffset}),h(b,c),d})}function h(a,b){b.removeContainer&&(a.parentNode.removeChild(a),r("Cleaned up container"))}function i(a,b){var c=document.createElement("canvas"),d=Math.min(a.width-1,Math.max(0,b.left)),e=Math.min(a.width,Math.max(1,b.left+b.width)),f=Math.min(a.height-1,Math.max(0,b.top)),g=Math.min(a.height,Math.max(1,b.top+b.height));return c.width=b.width,c.height=b.height,r("Cropping canvas at:","left:",b.left,"top:",b.top,"width:",e-d,"height:",g-f),r("Resulting crop with width",b.width,"and height",b.height," with x",d,"and y",f),c.getContext("2d").drawImage(a,d,f,e-d,g-f,b.x,b.y,e-d,g-f),c}function j(a){return Math.max(Math.max(a.body.scrollWidth,a.documentElement.scrollWidth),Math.max(a.body.offsetWidth,a.documentElement.offsetWidth),Math.max(a.body.clientWidth,a.documentElement.clientWidth))}function k(a){return Math.max(Math.max(a.body.scrollHeight,a.documentElement.scrollHeight),Math.max(a.body.offsetHeight,a.documentElement.offsetHeight),Math.max(a.body.clientHeight,a.documentElement.clientHeight))}function l(a){var b=document.createElement("a");return b.href=a,b.href=b.href,b}var m=b("./support"),n=b("./renderers/canvas"),o=b("./imageloader"),p=b("./nodeparser"),q=b("./nodecontainer"),r=b("./log"),s=b("./utils"),t=b("./clone"),u=b("./proxy").loadUrlDocument,v=s.getBounds,w="data-html2canvas-node",x=0;e.CanvasRenderer=n,e.NodeContainer=q,e.log=r,e.utils=s;var y="undefined"==typeof document||"function"!=typeof Object.create||"function"!=typeof document.createElement("canvas").getContext?function(){return Promise.reject("No canvas support")}:e;c.exports=y,"function"==typeof a&&a.amd&&a("html2canvas",[],function(){return y})},{"./clone":2,"./imageloader":11,"./log":13,"./nodecontainer":14,"./nodeparser":15,"./proxy":16,"./renderers/canvas":20,"./support":22,"./utils":26}],5:[function(a,b,c){function d(a){if(this.src=a,e("DummyImageContainer for",a),!this.promise||!this.image){e("Initiating DummyImageContainer"),d.prototype.image=new Image;var b=this.image;d.prototype.promise=new Promise(function(a,c){b.onload=a,b.onerror=c,b.src=f(),b.complete===!0&&a(b)})}}var e=a("./log"),f=a("./utils").smallImage;b.exports=d},{"./log":13,"./utils":26}],6:[function(a,b,c){function d(a,b){var c,d,f=document.createElement("div"),g=document.createElement("img"),h=document.createElement("span"),i="Hidden Text";f.style.visibility="hidden",f.style.fontFamily=a,f.style.fontSize=b,f.style.margin=0,f.style.padding=0,document.body.appendChild(f),g.src=e(),g.width=1,g.height=1,g.style.margin=0,g.style.padding=0,g.style.verticalAlign="baseline",h.style.fontFamily=a,h.style.fontSize=b,h.style.margin=0,h.style.padding=0,h.appendChild(document.createTextNode(i)),f.appendChild(h),f.appendChild(g),c=g.offsetTop-h.offsetTop+1,f.removeChild(h),f.appendChild(document.createTextNode(i)),f.style.lineHeight="normal",g.style.verticalAlign="super",d=g.offsetTop-f.offsetTop+1,document.body.removeChild(f),this.baseline=c,this.lineWidth=1,this.middle=d}var e=a("./utils").smallImage;b.exports=d},{"./utils":26}],7:[function(a,b,c){function d(){this.data={}}var e=a("./font");d.prototype.getMetrics=function(a,b){return void 0===this.data[a+"-"+b]&&(this.data[a+"-"+b]=new e(a,b)),this.data[a+"-"+b]},b.exports=d},{"./font":6}],8:[function(a,b,c){function d(b,c,d){this.image=null,this.src=b;var e=this,g=f(b);this.promise=(c?new Promise(function(a){"about:blank"===b.contentWindow.document.URL||null==b.contentWindow.document.documentElement?b.contentWindow.onload=b.onload=function(){a(b)}:a(b)}):this.proxyLoad(d.proxy,g,d)).then(function(b){var c=a("./core");return c(b.contentWindow.document.documentElement,{type:"view",width:b.width,height:b.height,proxy:d.proxy,javascriptEnabled:d.javascriptEnabled,removeContainer:d.removeContainer,allowTaint:d.allowTaint,imageTimeout:d.imageTimeout/2})}).then(function(a){return e.image=a})}var e=a("./utils"),f=e.getBounds,g=a("./proxy").loadUrlDocument;d.prototype.proxyLoad=function(a,b,c){var d=this.src;return g(d.src,a,d.ownerDocument,b.width,b.height,c)},b.exports=d},{"./core":4,"./proxy":16,"./utils":26}],9:[function(a,b,c){function d(a){this.src=a.value,this.colorStops=[],this.type=null,this.x0=.5,this.y0=.5,this.x1=.5,this.y1=.5,this.promise=Promise.resolve(!0)}d.TYPES={LINEAR:1,RADIAL:2},d.REGEXP_COLORSTOP=/^\s*(rgba?\(\s*\d{1,3},\s*\d{1,3},\s*\d{1,3}(?:,\s*[0-9\.]+)?\s*\)|[a-z]{3,20}|#[a-f0-9]{3,6})(?:\s+(\d{1,3}(?:\.\d+)?)(%|px)?)?(?:\s|$)/i,b.exports=d},{}],10:[function(a,b,c){function d(a,b){this.src=a,this.image=new Image;var c=this;this.tainted=null,this.promise=new Promise(function(d,e){c.image.onload=d,c.image.onerror=e,b&&(c.image.crossOrigin="anonymous"),c.image.src=a,c.image.complete===!0&&d(c.image)})}b.exports=d},{}],11:[function(a,b,c){function d(a,b){this.link=null,this.options=a,this.support=b,this.origin=this.getOrigin(window.location.href)}var e=a("./log"),f=a("./imagecontainer"),g=a("./dummyimagecontainer"),h=a("./proxyimagecontainer"),i=a("./framecontainer"),j=a("./svgcontainer"),k=a("./svgnodecontainer"),l=a("./lineargradientcontainer"),m=a("./webkitgradientcontainer"),n=a("./utils").bind;d.prototype.findImages=function(a){var b=[];return a.reduce(function(a,b){switch(b.node.nodeName){case"IMG":return a.concat([{args:[b.node.src],method:"url"}]);case"svg":case"IFRAME":return a.concat([{args:[b.node],method:b.node.nodeName}])}return a},[]).forEach(this.addImage(b,this.loadImage),this),b},d.prototype.findBackgroundImage=function(a,b){return b.parseBackgroundImages().filter(this.hasImageBackground).forEach(this.addImage(a,this.loadImage),this),a},d.prototype.addImage=function(a,b){return function(c){c.args.forEach(function(d){this.imageExists(a,d)||(a.splice(0,0,b.call(this,c)),e("Added image #"+a.length,"string"==typeof d?d.substring(0,100):d))},this)}},d.prototype.hasImageBackground=function(a){return"none"!==a.method},d.prototype.loadImage=function(a){if("url"===a.method){var b=a.args[0];return!this.isSVG(b)||this.support.svg||this.options.allowTaint?b.match(/data:image\/.*;base64,/i)?new f(b.replace(/url\(['"]{0,}|['"]{0,}\)$/gi,""),!1):this.isSameOrigin(b)||this.options.allowTaint===!0||this.isSVG(b)?new f(b,!1):this.support.cors&&!this.options.allowTaint&&this.options.useCORS?new f(b,!0):this.options.proxy?new h(b,this.options.proxy):new g(b):new j(b)}return"linear-gradient"===a.method?new l(a):"gradient"===a.method?new m(a):"svg"===a.method?new k(a.args[0],this.support.svg):"IFRAME"===a.method?new i(a.args[0],this.isSameOrigin(a.args[0].src),this.options):new g(a)},d.prototype.isSVG=function(a){return"svg"===a.substring(a.length-3).toLowerCase()||j.prototype.isInline(a)},d.prototype.imageExists=function(a,b){return a.some(function(a){return a.src===b})},d.prototype.isSameOrigin=function(a){return this.getOrigin(a)===this.origin},d.prototype.getOrigin=function(a){var b=this.link||(this.link=document.createElement("a"));return b.href=a,b.href=b.href,b.protocol+b.hostname+b.port},d.prototype.getPromise=function(a){return this.timeout(a,this.options.imageTimeout)["catch"](function(){var b=new g(a.src);return b.promise.then(function(b){a.image=b})})},d.prototype.get=function(a){var b=null;return this.images.some(function(c){return(b=c).src===a})?b:null},d.prototype.fetch=function(a){return this.images=a.reduce(n(this.findBackgroundImage,this),this.findImages(a)),this.images.forEach(function(a,b){a.promise.then(function(){e("Succesfully loaded image #"+(b+1),a)},function(c){e("Failed loading image #"+(b+1),a,c)})}),this.ready=Promise.all(this.images.map(this.getPromise,this)),e("Finished searching images"),this},d.prototype.timeout=function(a,b){var c,d=Promise.race([a.promise,new Promise(function(d,f){c=setTimeout(function(){e("Timed out loading image",a),f(a)},b)})]).then(function(a){return clearTimeout(c),a});return d["catch"](function(){clearTimeout(c)}),d},b.exports=d},{"./dummyimagecontainer":5,"./framecontainer":8,"./imagecontainer":10,"./lineargradientcontainer":12,"./log":13,"./proxyimagecontainer":17,"./svgcontainer":23,"./svgnodecontainer":24,"./utils":26,"./webkitgradientcontainer":27}],12:[function(a,b,c){function d(a){e.apply(this,arguments),this.type=e.TYPES.LINEAR;var b=d.REGEXP_DIRECTION.test(a.args[0])||!e.REGEXP_COLORSTOP.test(a.args[0]);b?a.args[0].split(/\s+/).reverse().forEach(function(a,b){switch(a){case"left":this.x0=0,this.x1=1;break;case"top":this.y0=0,this.y1=1;break;case"right":this.x0=1,this.x1=0;break;case"bottom":this.y0=1,this.y1=0;break;case"to":var c=this.y0,d=this.x0;this.y0=this.y1,this.x0=this.x1,this.x1=d,this.y1=c;break;case"center":break;default:var e=.01*parseFloat(a,10);if(isNaN(e))break;0===b?(this.y0=e,this.y1=1-this.y0):(this.x0=e,this.x1=1-this.x0)}},this):(this.y0=0,this.y1=1),this.colorStops=a.args.slice(b?1:0).map(function(a){var b=a.match(e.REGEXP_COLORSTOP),c=+b[2],d=0===c?"%":b[3];return{color:new f(b[1]),stop:"%"===d?c/100:null}}),null===this.colorStops[0].stop&&(this.colorStops[0].stop=0),null===this.colorStops[this.colorStops.length-1].stop&&(this.colorStops[this.colorStops.length-1].stop=1),this.colorStops.forEach(function(a,b){null===a.stop&&this.colorStops.slice(b).some(function(c,d){return null!==c.stop?(a.stop=(c.stop-this.colorStops[b-1].stop)/(d+1)+this.colorStops[b-1].stop,!0):!1},this)},this)}var e=a("./gradientcontainer"),f=a("./color");d.prototype=Object.create(e.prototype),d.REGEXP_DIRECTION=/^\s*(?:to|left|right|top|bottom|center|\d{1,3}(?:\.\d+)?%?)(?:\s|$)/i,b.exports=d},{"./color":3,"./gradientcontainer":9}],13:[function(a,b,c){b.exports=function(){window.html2canvas.logging&&window.console&&window.console.log&&Function.prototype.bind.call(window.console.log,window.console).apply(window.console,[Date.now()-window.html2canvas.start+"ms","html2canvas:"].concat([].slice.call(arguments,0)))}},{}],14:[function(a,b,c){function d(a,b){this.node=a,this.parent=b,this.stack=null,this.bounds=null,this.borders=null,this.clip=[],this.backgroundClip=[],this.offsetBounds=null,this.visible=null,this.computedStyles=null,this.colors={},this.styles={},this.backgroundImages=null,this.transformData=null,this.transformMatrix=null,this.isPseudoElement=!1,this.opacity=null}function e(a){var b=a.options[a.selectedIndex||0];return b?b.text||"":""}function f(a){if(a&&"matrix"===a[1])return a[2].split(",").map(function(a){return parseFloat(a.trim())});if(a&&"matrix3d"===a[1]){var b=a[2].split(",").map(function(a){return parseFloat(a.trim())});return[b[0],b[1],b[4],b[5],b[12],b[13]]}}function g(a){return-1!==a.toString().indexOf("%")}function h(a){return a.replace("px","")}function i(a){return parseFloat(a)}var j=a("./color"),k=a("./utils"),l=k.getBounds,m=k.parseBackgrounds,n=k.offsetBounds;d.prototype.cloneTo=function(a){a.visible=this.visible,a.borders=this.borders,a.bounds=this.bounds,a.clip=this.clip,a.backgroundClip=this.backgroundClip,a.computedStyles=this.computedStyles,a.styles=this.styles,a.backgroundImages=this.backgroundImages,a.opacity=this.opacity},d.prototype.getOpacity=function(){return null===this.opacity?this.opacity=this.cssFloat("opacity"):this.opacity},d.prototype.assignStack=function(a){this.stack=a,a.children.push(this)},d.prototype.isElementVisible=function(){return this.node.nodeType===Node.TEXT_NODE?this.parent.visible:"none"!==this.css("display")&&"hidden"!==this.css("visibility")&&!this.node.hasAttribute("data-html2canvas-ignore")&&("INPUT"!==this.node.nodeName||"hidden"!==this.node.getAttribute("type"))},d.prototype.css=function(a){return this.computedStyles||(this.computedStyles=this.isPseudoElement?this.parent.computedStyle(this.before?":before":":after"):this.computedStyle(null)),this.styles[a]||(this.styles[a]=this.computedStyles[a])},d.prototype.prefixedCss=function(a){var b=["webkit","moz","ms","o"],c=this.css(a);return void 0===c&&b.some(function(b){return c=this.css(b+a.substr(0,1).toUpperCase()+a.substr(1)),void 0!==c},this),void 0===c?null:c},d.prototype.computedStyle=function(a){return this.node.ownerDocument.defaultView.getComputedStyle(this.node,a)},d.prototype.cssInt=function(a){var b=parseInt(this.css(a),10);return isNaN(b)?0:b},d.prototype.color=function(a){return this.colors[a]||(this.colors[a]=new j(this.css(a)))},d.prototype.cssFloat=function(a){var b=parseFloat(this.css(a));return isNaN(b)?0:b},d.prototype.fontWeight=function(){var a=this.css("fontWeight");switch(parseInt(a,10)){case 401:a="bold";break;case 400:a="normal"}return a},d.prototype.parseClip=function(){var a=this.css("clip").match(this.CLIP);return a?{top:parseInt(a[1],10),right:parseInt(a[2],10),bottom:parseInt(a[3],10),left:parseInt(a[4],10)}:null},d.prototype.parseBackgroundImages=function(){return this.backgroundImages||(this.backgroundImages=m(this.css("backgroundImage")))},d.prototype.cssList=function(a,b){var c=(this.css(a)||"").split(",");return c=c[b||0]||c[0]||"auto",c=c.trim().split(" "),1===c.length&&(c=[c[0],g(c[0])?"auto":c[0]]),c},d.prototype.parseBackgroundSize=function(a,b,c){var d,e,f=this.cssList("backgroundSize",c);if(g(f[0]))d=a.width*parseFloat(f[0])/100;else{if(/contain|cover/.test(f[0])){var h=a.width/a.height,i=b.width/b.height;return i>h^"contain"===f[0]?{width:a.height*i,height:a.height}:{width:a.width,height:a.width/i}}d=parseInt(f[0],10)}return e="auto"===f[0]&&"auto"===f[1]?b.height:"auto"===f[1]?d/b.width*b.height:g(f[1])?a.height*parseFloat(f[1])/100:parseInt(f[1],10),"auto"===f[0]&&(d=e/b.height*b.width),{width:d,height:e}},d.prototype.parseBackgroundPosition=function(a,b,c,d){var e,f,h=this.cssList("backgroundPosition",c);return e=g(h[0])?(a.width-(d||b).width)*(parseFloat(h[0])/100):parseInt(h[0],10),f="auto"===h[1]?e/b.width*b.height:g(h[1])?(a.height-(d||b).height)*parseFloat(h[1])/100:parseInt(h[1],10),"auto"===h[0]&&(e=f/b.height*b.width),{left:e,top:f}},d.prototype.parseBackgroundRepeat=function(a){return this.cssList("backgroundRepeat",a)[0]},d.prototype.parseTextShadows=function(){var a=this.css("textShadow"),b=[];if(a&&"none"!==a)for(var c=a.match(this.TEXT_SHADOW_PROPERTY),d=0;c&&d0?(this.renderIndex=0,this.asyncRenderer(this.renderQueue,a)):a():(this.renderQueue.forEach(this.paint,this),a())},this))},this))}function e(a){return a.parent&&a.parent.clip.length}function f(a){return a.replace(/(\-[a-z])/g,function(a){return a.toUpperCase().replace("-","")})}function g(){}function h(a,b,c,d){return a.map(function(e,f){if(e.width>0){var g=b.left,h=b.top,i=b.width,j=b.height-a[2].width;switch(f){case 0:j=a[0].width,e.args=l({c1:[g,h],c2:[g+i,h],c3:[g+i-a[1].width,h+j],c4:[g+a[3].width,h+j]},d[0],d[1],c.topLeftOuter,c.topLeftInner,c.topRightOuter,c.topRightInner);break;case 1:g=b.left+b.width-a[1].width,i=a[1].width,e.args=l({c1:[g+i,h],c2:[g+i,h+j+a[2].width],c3:[g,h+j],c4:[g,h+a[0].width]},d[1],d[2],c.topRightOuter,c.topRightInner,c.bottomRightOuter,c.bottomRightInner);break;case 2:h=h+b.height-a[2].width,j=a[2].width,e.args=l({c1:[g+i,h+j],c2:[g,h+j],c3:[g+a[3].width,h],c4:[g+i-a[3].width,h]},d[2],d[3],c.bottomRightOuter,c.bottomRightInner,c.bottomLeftOuter,c.bottomLeftInner);break;case 3:i=a[3].width,e.args=l({c1:[g,h+j+a[2].width],c2:[g,h],c3:[g+i,h+a[0].width],c4:[g+i,h+j]},d[3],d[0],c.bottomLeftOuter,c.bottomLeftInner,c.topLeftOuter,c.topLeftInner)}}return e})}function i(a,b,c,d){var e=4*((Math.sqrt(2)-1)/3),f=c*e,g=d*e,h=a+c,i=b+d;return{topLeft:k({x:a,y:i},{x:a,y:i-g},{x:h-f,y:b},{x:h,y:b}),topRight:k({x:a,y:b},{x:a+f,y:b},{x:h,y:i-g},{x:h,y:i}),bottomRight:k({x:h,y:b},{x:h,y:b+g},{x:a+f,y:i},{x:a,y:i}),bottomLeft:k({x:h,y:i},{x:h-f,y:i},{x:a,y:b+g},{x:a,y:b})}}function j(a,b,c){var d=a.left,e=a.top,f=a.width,g=a.height,h=b[0][0]f+c[3].width?0:k-c[3].width,l-c[0].width).topRight.subdivide(.5),bottomRightOuter:i(d+s,e+r,m,n).bottomRight.subdivide(.5),bottomRightInner:i(d+Math.min(s,f-c[3].width),e+Math.min(r,g+c[0].width),Math.max(0,m-c[1].width),n-c[2].width).bottomRight.subdivide(.5), +bottomLeftOuter:i(d,e+t,o,p).bottomLeft.subdivide(.5),bottomLeftInner:i(d+c[3].width,e+t,Math.max(0,o-c[3].width),p-c[2].width).bottomLeft.subdivide(.5)}}function k(a,b,c,d){var e=function(a,b,c){return{x:a.x+(b.x-a.x)*c,y:a.y+(b.y-a.y)*c}};return{start:a,startControl:b,endControl:c,end:d,subdivide:function(f){var g=e(a,b,f),h=e(b,c,f),i=e(c,d,f),j=e(g,h,f),l=e(h,i,f),m=e(j,l,f);return[k(a,g,j,m),k(m,l,i,d)]},curveTo:function(a){a.push(["bezierCurve",b.x,b.y,c.x,c.y,d.x,d.y])},curveToReversed:function(d){d.push(["bezierCurve",c.x,c.y,b.x,b.y,a.x,a.y])}}}function l(a,b,c,d,e,f,g){var h=[];return b[0]>0||b[1]>0?(h.push(["line",d[1].start.x,d[1].start.y]),d[1].curveTo(h)):h.push(["line",a.c1[0],a.c1[1]]),c[0]>0||c[1]>0?(h.push(["line",f[0].start.x,f[0].start.y]),f[0].curveTo(h),h.push(["line",g[0].end.x,g[0].end.y]),g[0].curveToReversed(h)):(h.push(["line",a.c2[0],a.c2[1]]),h.push(["line",a.c3[0],a.c3[1]])),b[0]>0||b[1]>0?(h.push(["line",e[1].end.x,e[1].end.y]),e[1].curveToReversed(h)):h.push(["line",a.c4[0],a.c4[1]]),h}function m(a,b,c,d,e,f,g){b[0]>0||b[1]>0?(a.push(["line",d[0].start.x,d[0].start.y]),d[0].curveTo(a),d[1].curveTo(a)):a.push(["line",f,g]),(c[0]>0||c[1]>0)&&a.push(["line",e[0].start.x,e[0].start.y])}function n(a){return a.cssInt("zIndex")<0}function o(a){return a.cssInt("zIndex")>0}function p(a){return 0===a.cssInt("zIndex")}function q(a){return-1!==["inline","inline-block","inline-table"].indexOf(a.css("display"))}function r(a){return a instanceof V}function s(a){return a.node.data.trim().length>0}function t(a){return/^(normal|none|0px)$/.test(a.parent.css("letterSpacing"))}function u(a){return["TopLeft","TopRight","BottomRight","BottomLeft"].map(function(b){var c=a.css("border"+b+"Radius"),d=c.split(" ");return d.length<=1&&(d[1]=d[0]),d.map(G)})}function v(a){return a.nodeType===Node.TEXT_NODE||a.nodeType===Node.ELEMENT_NODE}function w(a){var b=a.css("position"),c=-1!==["absolute","relative","fixed"].indexOf(b)?a.css("zIndex"):"auto";return"auto"!==c}function x(a){return"static"!==a.css("position")}function y(a){return"none"!==a.css("float")}function z(a){return-1!==["inline-block","inline-table"].indexOf(a.css("display"))}function A(a){var b=this;return function(){return!a.apply(b,arguments)}}function B(a){return a.node.nodeType===Node.ELEMENT_NODE}function C(a){return a.isPseudoElement===!0}function D(a){return a.node.nodeType===Node.TEXT_NODE}function E(a){return function(b,c){return b.cssInt("zIndex")+a.indexOf(b)/a.length-(c.cssInt("zIndex")+a.indexOf(c)/a.length)}}function F(a){return a.getOpacity()<1}function G(a){return parseInt(a,10)}function H(a){return a.width}function I(a){return a.node.nodeType!==Node.ELEMENT_NODE||-1===["SCRIPT","HEAD","TITLE","OBJECT","BR","OPTION"].indexOf(a.node.nodeName)}function J(a){return[].concat.apply([],a)}function K(a){var b=a.substr(0,1);return b===a.substr(a.length-1)&&b.match(/'|"/)?a.substr(1,a.length-2):a}function L(a){for(var b,c=[],d=0,e=!1;a.length;)M(a[d])===e?(b=a.splice(0,d),b.length&&c.push(P.ucs2.encode(b)),e=!e,d=0):d++,d>=a.length&&(b=a.splice(0,d),b.length&&c.push(P.ucs2.encode(b)));return c}function M(a){return-1!==[32,13,10,9,45].indexOf(a)}function N(a){return/[^\u0000-\u00ff]/.test(a)}var O=a("./log"),P=a("punycode"),Q=a("./nodecontainer"),R=a("./textcontainer"),S=a("./pseudoelementcontainer"),T=a("./fontmetrics"),U=a("./color"),V=a("./stackingcontext"),W=a("./utils"),X=W.bind,Y=W.getBounds,Z=W.parseBackgrounds,$=W.offsetBounds;d.prototype.calculateOverflowClips=function(){this.nodes.forEach(function(a){if(B(a)){C(a)&&a.appendToDOM(),a.borders=this.parseBorders(a);var b="hidden"===a.css("overflow")?[a.borders.clip]:[],c=a.parseClip();c&&-1!==["absolute","fixed"].indexOf(a.css("position"))&&b.push([["rect",a.bounds.left+c.left,a.bounds.top+c.top,c.right-c.left,c.bottom-c.top]]),a.clip=e(a)?a.parent.clip.concat(b):b,a.backgroundClip="hidden"!==a.css("overflow")?a.clip.concat([a.borders.clip]):a.clip,C(a)&&a.cleanDOM()}else D(a)&&(a.clip=e(a)?a.parent.clip:[]);C(a)||(a.bounds=null)},this)},d.prototype.asyncRenderer=function(a,b,c){c=c||Date.now(),this.paint(a[this.renderIndex++]),a.length===this.renderIndex?b():c+20>Date.now()?this.asyncRenderer(a,b,c):setTimeout(X(function(){this.asyncRenderer(a,b)},this),0)},d.prototype.createPseudoHideStyles=function(a){this.createStyles(a,"."+S.prototype.PSEUDO_HIDE_ELEMENT_CLASS_BEFORE+':before { content: "" !important; display: none !important; }.'+S.prototype.PSEUDO_HIDE_ELEMENT_CLASS_AFTER+':after { content: "" !important; display: none !important; }')},d.prototype.disableAnimations=function(a){this.createStyles(a,"* { -webkit-animation: none !important; -moz-animation: none !important; -o-animation: none !important; animation: none !important; -webkit-transition: none !important; -moz-transition: none !important; -o-transition: none !important; transition: none !important;}")},d.prototype.createStyles=function(a,b){var c=a.createElement("style");c.innerHTML=b,a.body.appendChild(c)},d.prototype.getPseudoElements=function(a){var b=[[a]];if(a.node.nodeType===Node.ELEMENT_NODE){var c=this.getPseudoElement(a,":before"),d=this.getPseudoElement(a,":after");c&&b.push(c),d&&b.push(d)}return J(b)},d.prototype.getPseudoElement=function(a,b){var c=a.computedStyle(b);if(!c||!c.content||"none"===c.content||"-moz-alt-content"===c.content||"none"===c.display)return null;for(var d=K(c.content),e="url"===d.substr(0,3),g=document.createElement(e?"img":"html2canvaspseudoelement"),h=new S(g,a,b),i=c.length-1;i>=0;i--){var j=f(c.item(i));g.style[j]=c[j]}if(g.className=S.prototype.PSEUDO_HIDE_ELEMENT_CLASS_BEFORE+" "+S.prototype.PSEUDO_HIDE_ELEMENT_CLASS_AFTER,e)return g.src=Z(d)[0].args[0],[h];var k=document.createTextNode(d);return g.appendChild(k),[h,new R(k,h)]},d.prototype.getChildren=function(a){return J([].filter.call(a.node.childNodes,v).map(function(b){var c=[b.nodeType===Node.TEXT_NODE?new R(b,a):new Q(b,a)].filter(I);return b.nodeType===Node.ELEMENT_NODE&&c.length&&"TEXTAREA"!==b.tagName?c[0].isElementVisible()?c.concat(this.getChildren(c[0])):[]:c},this))},d.prototype.newStackingContext=function(a,b){var c=new V(b,a.getOpacity(),a.node,a.parent);a.cloneTo(c);var d=b?c.getParentStack(this):c.parent.stack;d.contexts.push(c),a.stack=c},d.prototype.createStackingContexts=function(){this.nodes.forEach(function(a){B(a)&&(this.isRootElement(a)||F(a)||w(a)||this.isBodyWithTransparentRoot(a)||a.hasTransform())?this.newStackingContext(a,!0):B(a)&&(x(a)&&p(a)||z(a)||y(a))?this.newStackingContext(a,!1):a.assignStack(a.parent.stack)},this)},d.prototype.isBodyWithTransparentRoot=function(a){return"BODY"===a.node.nodeName&&a.parent.color("backgroundColor").isTransparent()},d.prototype.isRootElement=function(a){return null===a.parent},d.prototype.sortStackingContexts=function(a){a.contexts.sort(E(a.contexts.slice(0))),a.contexts.forEach(this.sortStackingContexts,this)},d.prototype.parseTextBounds=function(a){return function(b,c,d){if("none"!==a.parent.css("textDecoration").substr(0,4)||0!==b.trim().length){if(this.support.rangeBounds&&!a.parent.hasTransform()){var e=d.slice(0,c).join("").length;return this.getRangeBounds(a.node,e,b.length)}if(a.node&&"string"==typeof a.node.data){var f=a.node.splitText(b.length),g=this.getWrapperBounds(a.node,a.parent.hasTransform());return a.node=f,g}}else(!this.support.rangeBounds||a.parent.hasTransform())&&(a.node=a.node.splitText(b.length));return{}}},d.prototype.getWrapperBounds=function(a,b){var c=a.ownerDocument.createElement("html2canvaswrapper"),d=a.parentNode,e=a.cloneNode(!0);c.appendChild(a.cloneNode(!0)),d.replaceChild(c,a);var f=b?$(c):Y(c);return d.replaceChild(e,c),f},d.prototype.getRangeBounds=function(a,b,c){var d=this.range||(this.range=a.ownerDocument.createRange());return d.setStart(a,b),d.setEnd(a,b+c),d.getBoundingClientRect()},d.prototype.parse=function(a){var b=a.contexts.filter(n),c=a.children.filter(B),d=c.filter(A(y)),e=d.filter(A(x)).filter(A(q)),f=c.filter(A(x)).filter(y),h=d.filter(A(x)).filter(q),i=a.contexts.concat(d.filter(x)).filter(p),j=a.children.filter(D).filter(s),k=a.contexts.filter(o);b.concat(e).concat(f).concat(h).concat(i).concat(j).concat(k).forEach(function(a){this.renderQueue.push(a),r(a)&&(this.parse(a),this.renderQueue.push(new g))},this)},d.prototype.paint=function(a){try{a instanceof g?this.renderer.ctx.restore():D(a)?(C(a.parent)&&a.parent.appendToDOM(),this.paintText(a),C(a.parent)&&a.parent.cleanDOM()):this.paintNode(a)}catch(b){if(O(b),this.options.strict)throw b}},d.prototype.paintNode=function(a){r(a)&&(this.renderer.setOpacity(a.opacity),this.renderer.ctx.save(),a.hasTransform()&&this.renderer.setTransform(a.parseTransform())),"INPUT"===a.node.nodeName&&"checkbox"===a.node.type?this.paintCheckbox(a):"INPUT"===a.node.nodeName&&"radio"===a.node.type?this.paintRadio(a):this.paintElement(a)},d.prototype.paintElement=function(a){var b=a.parseBounds();this.renderer.clip(a.backgroundClip,function(){this.renderer.renderBackground(a,b,a.borders.borders.map(H))},this),this.renderer.clip(a.clip,function(){this.renderer.renderBorders(a.borders.borders)},this),this.renderer.clip(a.backgroundClip,function(){switch(a.node.nodeName){case"svg":case"IFRAME":var c=this.images.get(a.node);c?this.renderer.renderImage(a,b,a.borders,c):O("Error loading <"+a.node.nodeName+">",a.node);break;case"IMG":var d=this.images.get(a.node.src);d?this.renderer.renderImage(a,b,a.borders,d):O("Error loading ",a.node.src);break;case"CANVAS":this.renderer.renderImage(a,b,a.borders,{image:a.node});break;case"SELECT":case"INPUT":case"TEXTAREA":this.paintFormValue(a)}},this)},d.prototype.paintCheckbox=function(a){var b=a.parseBounds(),c=Math.min(b.width,b.height),d={width:c-1,height:c-1,top:b.top,left:b.left},e=[3,3],f=[e,e,e,e],g=[1,1,1,1].map(function(a){return{color:new U("#A5A5A5"),width:a}}),i=j(d,f,g);this.renderer.clip(a.backgroundClip,function(){this.renderer.rectangle(d.left+1,d.top+1,d.width-2,d.height-2,new U("#DEDEDE")),this.renderer.renderBorders(h(g,d,i,f)),a.node.checked&&(this.renderer.font(new U("#424242"),"normal","normal","bold",c-3+"px","arial"),this.renderer.text("✔",d.left+c/6,d.top+c-1))},this)},d.prototype.paintRadio=function(a){var b=a.parseBounds(),c=Math.min(b.width,b.height)-2;this.renderer.clip(a.backgroundClip,function(){this.renderer.circleStroke(b.left+1,b.top+1,c,new U("#DEDEDE"),1,new U("#A5A5A5")),a.node.checked&&this.renderer.circle(Math.ceil(b.left+c/4)+1,Math.ceil(b.top+c/4)+1,Math.floor(c/2),new U("#424242"))},this)},d.prototype.paintFormValue=function(a){var b=a.getValue();if(b.length>0){var c=a.node.ownerDocument,d=c.createElement("html2canvaswrapper"),e=["lineHeight","textAlign","fontFamily","fontWeight","fontSize","color","paddingLeft","paddingTop","paddingRight","paddingBottom","width","height","borderLeftStyle","borderTopStyle","borderLeftWidth","borderTopWidth","boxSizing","whiteSpace","wordWrap"];e.forEach(function(b){try{d.style[b]=a.css(b)}catch(c){O("html2canvas: Parse: Exception caught in renderFormValue: "+c.message)}});var f=a.parseBounds();d.style.position="fixed",d.style.left=f.left+"px",d.style.top=f.top+"px",d.textContent=b,c.body.appendChild(d),this.paintText(new R(d.firstChild,a)),c.body.removeChild(d)}},d.prototype.paintText=function(a){a.applyTextTransform();var b=P.ucs2.decode(a.node.data),c=this.options.letterRendering&&!t(a)||N(a.node.data)?b.map(function(a){return P.ucs2.encode([a])}):L(b),d=a.parent.fontWeight(),e=a.parent.css("fontSize"),f=a.parent.css("fontFamily"),g=a.parent.parseTextShadows();this.renderer.font(a.parent.color("color"),a.parent.css("fontStyle"),a.parent.css("fontVariant"),d,e,f),g.length?this.renderer.fontShadow(g[0].color,g[0].offsetX,g[0].offsetY,g[0].blur):this.renderer.clearShadow(),this.renderer.clip(a.parent.clip,function(){c.map(this.parseTextBounds(a),this).forEach(function(b,d){b&&(this.renderer.text(c[d],b.left,b.bottom),this.renderTextDecoration(a.parent,b,this.fontMetrics.getMetrics(f,e)))},this)},this)},d.prototype.renderTextDecoration=function(a,b,c){switch(a.css("textDecoration").split(" ")[0]){case"underline":this.renderer.rectangle(b.left,Math.round(b.top+c.baseline+c.lineWidth),b.width,1,a.color("color"));break;case"overline":this.renderer.rectangle(b.left,Math.round(b.top),b.width,1,a.color("color"));break;case"line-through":this.renderer.rectangle(b.left,Math.ceil(b.top+c.middle+c.lineWidth),b.width,1,a.color("color"))}};var _={inset:[["darken",.6],["darken",.1],["darken",.1],["darken",.6]]};d.prototype.parseBorders=function(a){var b=a.parseBounds(),c=u(a),d=["Top","Right","Bottom","Left"].map(function(b,c){var d=a.css("border"+b+"Style"),e=a.color("border"+b+"Color");"inset"===d&&e.isBlack()&&(e=new U([255,255,255,e.a]));var f=_[d]?_[d][c]:null;return{width:a.cssInt("border"+b+"Width"),color:f?e[f[0]](f[1]):e,args:null}}),e=j(b,c,d);return{clip:this.parseBackgroundClip(a,e,d,c,b),borders:h(d,b,e,c)}},d.prototype.parseBackgroundClip=function(a,b,c,d,e){var f=a.css("backgroundClip"),g=[];switch(f){case"content-box":case"padding-box":m(g,d[0],d[1],b.topLeftInner,b.topRightInner,e.left+c[3].width,e.top+c[0].width),m(g,d[1],d[2],b.topRightInner,b.bottomRightInner,e.left+e.width-c[1].width,e.top+c[0].width),m(g,d[2],d[3],b.bottomRightInner,b.bottomLeftInner,e.left+e.width-c[1].width,e.top+e.height-c[2].width),m(g,d[3],d[0],b.bottomLeftInner,b.topLeftInner,e.left+c[3].width,e.top+e.height-c[2].width);break;default:m(g,d[0],d[1],b.topLeftOuter,b.topRightOuter,e.left,e.top),m(g,d[1],d[2],b.topRightOuter,b.bottomRightOuter,e.left+e.width,e.top),m(g,d[2],d[3],b.bottomRightOuter,b.bottomLeftOuter,e.left+e.width,e.top+e.height),m(g,d[3],d[0],b.bottomLeftOuter,b.topLeftOuter,e.left,e.top+e.height)}return g},b.exports=d},{"./color":3,"./fontmetrics":7,"./log":13,"./nodecontainer":14,"./pseudoelementcontainer":18,"./stackingcontext":21,"./textcontainer":25,"./utils":26,punycode:1}],16:[function(a,b,c){function d(a,b,c){var d="withCredentials"in new XMLHttpRequest;if(!b)return Promise.reject("No proxy configured");var e=g(d),i=h(b,a,e);return d?k(i):f(c,i,e).then(function(a){return o(a.content)})}function e(a,b,c){var d="crossOrigin"in new Image,e=g(d),i=h(b,a,e);return d?Promise.resolve(i):f(c,i,e).then(function(a){return"data:"+a.type+";base64,"+a.content})}function f(a,b,c){return new Promise(function(d,e){var f=a.createElement("script"),g=function(){delete window.html2canvas.proxy[c],a.body.removeChild(f)};window.html2canvas.proxy[c]=function(a){g(),d(a)},f.src=b,f.onerror=function(a){g(),e(a)},a.body.appendChild(f)})}function g(a){return a?"":"html2canvas_"+Date.now()+"_"+ ++p+"_"+Math.round(1e5*Math.random())}function h(a,b,c){return a+"?url="+encodeURIComponent(b)+(c.length?"&callback=html2canvas.proxy."+c:"")}function i(a){return function(b){var c,d=new DOMParser;try{c=d.parseFromString(b,"text/html")}catch(e){m("DOMParser not supported, falling back to createHTMLDocument"),c=document.implementation.createHTMLDocument("");try{c.open(),c.write(b),c.close()}catch(f){m("createHTMLDocument write not supported, falling back to document.body.innerHTML"),c.body.innerHTML=b}}var g=c.querySelector("base");if(!g||!g.href.host){var h=c.createElement("base");h.href=a,c.head.insertBefore(h,c.head.firstChild)}return c}}function j(a,b,c,e,f,g){return new d(a,b,window.document).then(i(a)).then(function(a){return n(a,c,e,f,g,0,0)})}var k=a("./xhr"),l=a("./utils"),m=a("./log"),n=a("./clone"),o=l.decode64,p=0;c.Proxy=d,c.ProxyURL=e,c.loadUrlDocument=j},{"./clone":2,"./log":13,"./utils":26,"./xhr":28}],17:[function(a,b,c){function d(a,b){var c=document.createElement("a");c.href=a,a=c.href,this.src=a,this.image=new Image;var d=this;this.promise=new Promise(function(c,f){d.image.crossOrigin="Anonymous",d.image.onload=c,d.image.onerror=f,new e(a,b,document).then(function(a){d.image.src=a})["catch"](f)})}var e=a("./proxy").ProxyURL;b.exports=d},{"./proxy":16}],18:[function(a,b,c){function d(a,b,c){e.call(this,a,b),this.isPseudoElement=!0,this.before=":before"===c}var e=a("./nodecontainer");d.prototype.cloneTo=function(a){d.prototype.cloneTo.call(this,a),a.isPseudoElement=!0,a.before=this.before},d.prototype=Object.create(e.prototype),d.prototype.appendToDOM=function(){this.before?this.parent.node.insertBefore(this.node,this.parent.node.firstChild):this.parent.node.appendChild(this.node),this.parent.node.className+=" "+this.getHideClass()},d.prototype.cleanDOM=function(){this.node.parentNode.removeChild(this.node),this.parent.node.className=this.parent.node.className.replace(this.getHideClass(),"")},d.prototype.getHideClass=function(){return this["PSEUDO_HIDE_ELEMENT_CLASS_"+(this.before?"BEFORE":"AFTER")]},d.prototype.PSEUDO_HIDE_ELEMENT_CLASS_BEFORE="___html2canvas___pseudoelement_before",d.prototype.PSEUDO_HIDE_ELEMENT_CLASS_AFTER="___html2canvas___pseudoelement_after",b.exports=d},{"./nodecontainer":14}],19:[function(a,b,c){function d(a,b,c,d,e){this.width=a,this.height=b,this.images=c,this.options=d,this.document=e}var e=a("./log");d.prototype.renderImage=function(a,b,c,d){var e=a.cssInt("paddingLeft"),f=a.cssInt("paddingTop"),g=a.cssInt("paddingRight"),h=a.cssInt("paddingBottom"),i=c.borders,j=b.width-(i[1].width+i[3].width+e+g),k=b.height-(i[0].width+i[2].width+f+h);this.drawImage(d,0,0,d.image.width||j,d.image.height||k,b.left+e+i[3].width,b.top+f+i[0].width,j,k)},d.prototype.renderBackground=function(a,b,c){b.height>0&&b.width>0&&(this.renderBackgroundColor(a,b),this.renderBackgroundImage(a,b,c))},d.prototype.renderBackgroundColor=function(a,b){var c=a.color("backgroundColor");c.isTransparent()||this.rectangle(b.left,b.top,b.width,b.height,c)},d.prototype.renderBorders=function(a){a.forEach(this.renderBorder,this)},d.prototype.renderBorder=function(a){a.color.isTransparent()||null===a.args||this.drawShape(a.args,a.color)},d.prototype.renderBackgroundImage=function(a,b,c){var d=a.parseBackgroundImages();d.reverse().forEach(function(d,f,g){switch(d.method){case"url":var h=this.images.get(d.args[0]);h?this.renderBackgroundRepeating(a,b,h,g.length-(f+1),c):e("Error loading background-image",d.args[0]);break;case"linear-gradient":case"gradient":var i=this.images.get(d.value);i?this.renderBackgroundGradient(i,b,c):e("Error loading background-image",d.args[0]);break;case"none":break;default:e("Unknown background-image type",d.args[0])}},this)},d.prototype.renderBackgroundRepeating=function(a,b,c,d,e){var f=a.parseBackgroundSize(b,c.image,d),g=a.parseBackgroundPosition(b,c.image,d,f),h=a.parseBackgroundRepeat(d);switch(h){case"repeat-x":case"repeat no-repeat":this.backgroundRepeatShape(c,g,f,b,b.left+e[3],b.top+g.top+e[0],99999,f.height,e);break;case"repeat-y":case"no-repeat repeat":this.backgroundRepeatShape(c,g,f,b,b.left+g.left+e[3],b.top+e[0],f.width,99999,e);break;case"no-repeat":this.backgroundRepeatShape(c,g,f,b,b.left+g.left+e[3],b.top+g.top+e[0],f.width,f.height,e);break;default:this.renderBackgroundRepeat(c,g,f,{top:b.top,left:b.left},e[3],e[0])}},b.exports=d},{"./log":13}],20:[function(a,b,c){function d(a,b){f.apply(this,arguments),this.canvas=this.options.canvas||this.document.createElement("canvas"),this.options.canvas||(this.canvas.width=a,this.canvas.height=b),this.ctx=this.canvas.getContext("2d"),this.taintCtx=this.document.createElement("canvas").getContext("2d"),this.ctx.textBaseline="bottom",this.variables={},h("Initialized CanvasRenderer with size",a,"x",b)}function e(a){return a.length>0}var f=a("../renderer"),g=a("../lineargradientcontainer"),h=a("../log");d.prototype=Object.create(f.prototype),d.prototype.setFillStyle=function(a){return this.ctx.fillStyle="object"==typeof a&&a.isColor?a.toString():a,this.ctx},d.prototype.rectangle=function(a,b,c,d,e){this.setFillStyle(e).fillRect(a,b,c,d)},d.prototype.circle=function(a,b,c,d){this.setFillStyle(d),this.ctx.beginPath(),this.ctx.arc(a+c/2,b+c/2,c/2,0,2*Math.PI,!0),this.ctx.closePath(),this.ctx.fill()},d.prototype.circleStroke=function(a,b,c,d,e,f){this.circle(a,b,c,d),this.ctx.strokeStyle=f.toString(),this.ctx.stroke()},d.prototype.drawShape=function(a,b){this.shape(a),this.setFillStyle(b).fill()},d.prototype.taints=function(a){if(null===a.tainted){this.taintCtx.drawImage(a.image,0,0);try{this.taintCtx.getImageData(0,0,1,1),a.tainted=!1}catch(b){this.taintCtx=document.createElement("canvas").getContext("2d"),a.tainted=!0}}return a.tainted},d.prototype.drawImage=function(a,b,c,d,e,f,g,h,i){(!this.taints(a)||this.options.allowTaint)&&this.ctx.drawImage(a.image,b,c,d,e,f,g,h,i)},d.prototype.clip=function(a,b,c){this.ctx.save(),a.filter(e).forEach(function(a){this.shape(a).clip()},this),b.call(c),this.ctx.restore()},d.prototype.shape=function(a){return this.ctx.beginPath(),a.forEach(function(a,b){"rect"===a[0]?this.ctx.rect.apply(this.ctx,a.slice(1)):this.ctx[0===b?"moveTo":a[0]+"To"].apply(this.ctx,a.slice(1))},this),this.ctx.closePath(),this.ctx},d.prototype.font=function(a,b,c,d,e,f){this.setFillStyle(a).font=[b,c,d,e,f].join(" ").split(",")[0]},d.prototype.fontShadow=function(a,b,c,d){this.setVariable("shadowColor",a.toString()).setVariable("shadowOffsetY",b).setVariable("shadowOffsetX",c).setVariable("shadowBlur",d)},d.prototype.clearShadow=function(){this.setVariable("shadowColor","rgba(0,0,0,0)")},d.prototype.setOpacity=function(a){this.ctx.globalAlpha=a},d.prototype.setTransform=function(a){this.ctx.translate(a.origin[0],a.origin[1]),this.ctx.transform.apply(this.ctx,a.matrix),this.ctx.translate(-a.origin[0],-a.origin[1])},d.prototype.setVariable=function(a,b){return this.variables[a]!==b&&(this.variables[a]=this.ctx[a]=b),this},d.prototype.text=function(a,b,c){this.ctx.fillText(a,b,c)},d.prototype.backgroundRepeatShape=function(a,b,c,d,e,f,g,h,i){var j=[["line",Math.round(e),Math.round(f)],["line",Math.round(e+g),Math.round(f)],["line",Math.round(e+g),Math.round(h+f)],["line",Math.round(e),Math.round(h+f)]];this.clip([j],function(){this.renderBackgroundRepeat(a,b,c,d,i[3],i[0])},this)},d.prototype.renderBackgroundRepeat=function(a,b,c,d,e,f){var g=Math.round(d.left+b.left+e),h=Math.round(d.top+b.top+f);this.setFillStyle(this.ctx.createPattern(this.resizeImage(a,c),"repeat")),this.ctx.translate(g,h),this.ctx.fill(),this.ctx.translate(-g,-h)},d.prototype.renderBackgroundGradient=function(a,b){if(a instanceof g){var c=this.ctx.createLinearGradient(b.left+b.width*a.x0,b.top+b.height*a.y0,b.left+b.width*a.x1,b.top+b.height*a.y1);a.colorStops.forEach(function(a){c.addColorStop(a.stop,a.color.toString())}),this.rectangle(b.left,b.top,b.width,b.height,c)}},d.prototype.resizeImage=function(a,b){var c=a.image;if(c.width===b.width&&c.height===b.height)return c;var d,e=document.createElement("canvas");return e.width=b.width,e.height=b.height,d=e.getContext("2d"),d.drawImage(c,0,0,c.width,c.height,0,0,b.width,b.height),e},b.exports=d},{"../lineargradientcontainer":12,"../log":13,"../renderer":19}],21:[function(a,b,c){function d(a,b,c,d){e.call(this,c,d),this.ownStacking=a,this.contexts=[],this.children=[],this.opacity=(this.parent?this.parent.stack.opacity:1)*b}var e=a("./nodecontainer");d.prototype=Object.create(e.prototype),d.prototype.getParentStack=function(a){var b=this.parent?this.parent.stack:null;return b?b.ownStacking?b:b.getParentStack(a):a.stack},b.exports=d},{"./nodecontainer":14}],22:[function(a,b,c){function d(a){this.rangeBounds=this.testRangeBounds(a),this.cors=this.testCORS(),this.svg=this.testSVG()}d.prototype.testRangeBounds=function(a){var b,c,d,e,f=!1;return a.createRange&&(b=a.createRange(),b.getBoundingClientRect&&(c=a.createElement("boundtest"),c.style.height="123px",c.style.display="block",a.body.appendChild(c),b.selectNode(c),d=b.getBoundingClientRect(),e=d.height,123===e&&(f=!0),a.body.removeChild(c))),f},d.prototype.testCORS=function(){return"undefined"!=typeof(new Image).crossOrigin},d.prototype.testSVG=function(){var a=new Image,b=document.createElement("canvas"),c=b.getContext("2d");a.src="data:image/svg+xml,";try{c.drawImage(a,0,0),b.toDataURL()}catch(d){return!1}return!0},b.exports=d},{}],23:[function(a,b,c){function d(a){this.src=a,this.image=null;var b=this;this.promise=this.hasFabric().then(function(){return b.isInline(a)?Promise.resolve(b.inlineFormatting(a)):e(a)}).then(function(a){return new Promise(function(c){window.html2canvas.svg.fabric.loadSVGFromString(a,b.createCanvas.call(b,c))})})}var e=a("./xhr"),f=a("./utils").decode64;d.prototype.hasFabric=function(){return window.html2canvas.svg&&window.html2canvas.svg.fabric?Promise.resolve():Promise.reject(new Error("html2canvas.svg.js is not loaded, cannot render svg"))},d.prototype.inlineFormatting=function(a){return/^data:image\/svg\+xml;base64,/.test(a)?this.decode64(this.removeContentType(a)):this.removeContentType(a)},d.prototype.removeContentType=function(a){return a.replace(/^data:image\/svg\+xml(;base64)?,/,"")},d.prototype.isInline=function(a){return/^data:image\/svg\+xml/i.test(a)},d.prototype.createCanvas=function(a){var b=this;return function(c,d){var e=new window.html2canvas.svg.fabric.StaticCanvas("c");b.image=e.lowerCanvasEl,e.setWidth(d.width).setHeight(d.height).add(window.html2canvas.svg.fabric.util.groupSVGElements(c,d)).renderAll(),a(e.lowerCanvasEl)}},d.prototype.decode64=function(a){return"function"==typeof window.atob?window.atob(a):f(a)},b.exports=d},{"./utils":26,"./xhr":28}],24:[function(a,b,c){function d(a,b){this.src=a,this.image=null;var c=this;this.promise=b?new Promise(function(b,d){c.image=new Image,c.image.onload=b,c.image.onerror=d,c.image.src="data:image/svg+xml,"+(new XMLSerializer).serializeToString(a),c.image.complete===!0&&b(c.image)}):this.hasFabric().then(function(){return new Promise(function(b){window.html2canvas.svg.fabric.parseSVGDocument(a,c.createCanvas.call(c,b))})})}var e=a("./svgcontainer");d.prototype=Object.create(e.prototype),b.exports=d},{"./svgcontainer":23}],25:[function(a,b,c){function d(a,b){f.call(this,a,b)}function e(a,b,c){return a.length>0?b+c.toUpperCase():void 0}var f=a("./nodecontainer");d.prototype=Object.create(f.prototype),d.prototype.applyTextTransform=function(){this.node.data=this.transform(this.parent.css("textTransform"))},d.prototype.transform=function(a){var b=this.node.data;switch(a){case"lowercase":return b.toLowerCase();case"capitalize":return b.replace(/(^|\s|:|-|\(|\))([a-z])/g,e);case"uppercase":return b.toUpperCase();default:return b}},b.exports=d},{"./nodecontainer":14}],26:[function(a,b,c){c.smallImage=function(){return"data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7"},c.bind=function(a,b){return function(){return a.apply(b,arguments)}},c.decode64=function(a){var b,c,d,e,f,g,h,i,j="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",k=a.length,l="";for(b=0;k>b;b+=4)c=j.indexOf(a[b]),d=j.indexOf(a[b+1]),e=j.indexOf(a[b+2]),f=j.indexOf(a[b+3]),g=c<<2|d>>4,h=(15&d)<<4|e>>2,i=(3&e)<<6|f,l+=64===e?String.fromCharCode(g):64===f||-1===f?String.fromCharCode(g,h):String.fromCharCode(g,h,i);return l},c.getBounds=function(a){if(a.getBoundingClientRect){var b=a.getBoundingClientRect(),c=null==a.offsetWidth?b.width:a.offsetWidth;return{top:b.top,bottom:b.bottom||b.top+b.height,right:b.left+c,left:b.left,width:c,height:null==a.offsetHeight?b.height:a.offsetHeight}}return{}},c.offsetBounds=function(a){var b=a.offsetParent?c.offsetBounds(a.offsetParent):{top:0,left:0};return{top:a.offsetTop+b.top,bottom:a.offsetTop+a.offsetHeight+b.top,right:a.offsetLeft+b.left+a.offsetWidth,left:a.offsetLeft+b.left,width:a.offsetWidth,height:a.offsetHeight}},c.parseBackgrounds=function(a){var b,c,d,e,f,g,h,i=" \r\n ",j=[],k=0,l=0,m=function(){b&&('"'===c.substr(0,1)&&(c=c.substr(1,c.length-2)),c&&h.push(c),"-"===b.substr(0,1)&&(e=b.indexOf("-",1)+1)>0&&(d=b.substr(0,e),b=b.substr(e)),j.push({prefix:d,method:b.toLowerCase(),value:f,args:h,image:null})),h=[],b=d=c=f=""};return h=[],b=d=c=f="",a.split("").forEach(function(a){if(!(0===k&&i.indexOf(a)>-1)){switch(a){case'"':g?g===a&&(g=null):g=a;break;case"(":if(g)break;if(0===k)return k=1,void(f+=a);l++;break;case")":if(g)break;if(1===k){if(0===l)return k=0,f+=a,void m();l--}break;case",":if(g)break;if(0===k)return void m();if(1===k&&0===l&&!b.match(/^url$/i))return h.push(c),c="",void(f+=a)}f+=a,0===k?b+=a:c+=a}}),m(),j}},{}],27:[function(a,b,c){function d(a){e.apply(this,arguments),this.type="linear"===a.args[0]?e.TYPES.LINEAR:e.TYPES.RADIAL}var e=a("./gradientcontainer");d.prototype=Object.create(e.prototype),b.exports=d},{"./gradientcontainer":9}],28:[function(a,b,c){function d(a){return new Promise(function(b,c){var d=new XMLHttpRequest;d.open("GET",a),d.onload=function(){200===d.status?b(d.responseText):c(new Error(d.statusText))},d.onerror=function(){c(new Error("Network Error"))},d.send()})}b.exports=d},{}]},{},[4])(4)}); \ No newline at end of file diff --git a/gversion/gs/ovo/icon-114.png b/gversion/gs/ovo/icon-114.png new file mode 100644 index 0000000..6317b2e Binary files /dev/null and b/gversion/gs/ovo/icon-114.png differ diff --git a/gversion/gs/ovo/icon-128.png b/gversion/gs/ovo/icon-128.png new file mode 100644 index 0000000..2eca21f Binary files /dev/null and b/gversion/gs/ovo/icon-128.png differ diff --git a/gversion/gs/ovo/icon-16.png b/gversion/gs/ovo/icon-16.png new file mode 100644 index 0000000..426741c Binary files /dev/null and b/gversion/gs/ovo/icon-16.png differ diff --git a/gversion/gs/ovo/icon-256.png b/gversion/gs/ovo/icon-256.png new file mode 100644 index 0000000..4cd8f8c Binary files /dev/null and b/gversion/gs/ovo/icon-256.png differ diff --git a/gversion/gs/ovo/icon-32.png b/gversion/gs/ovo/icon-32.png new file mode 100644 index 0000000..582f6b8 Binary files /dev/null and b/gversion/gs/ovo/icon-32.png differ diff --git a/gversion/gs/ovo/images/ablue-sheet0.png b/gversion/gs/ovo/images/ablue-sheet0.png new file mode 100644 index 0000000..ace9ce5 Binary files /dev/null and b/gversion/gs/ovo/images/ablue-sheet0.png differ diff --git a/gversion/gs/ovo/images/adblocksign-sheet0.png b/gversion/gs/ovo/images/adblocksign-sheet0.png new file mode 100644 index 0000000..78cbfae Binary files /dev/null and b/gversion/gs/ovo/images/adblocksign-sheet0.png differ diff --git a/gversion/gs/ovo/images/agreen-sheet0.png b/gversion/gs/ovo/images/agreen-sheet0.png new file mode 100644 index 0000000..a705cc8 Binary files /dev/null and b/gversion/gs/ovo/images/agreen-sheet0.png differ diff --git a/gversion/gs/ovo/images/ared-sheet0.png b/gversion/gs/ovo/images/ared-sheet0.png new file mode 100644 index 0000000..a909b3b Binary files /dev/null and b/gversion/gs/ovo/images/ared-sheet0.png differ diff --git a/gversion/gs/ovo/images/background-sheet0.png b/gversion/gs/ovo/images/background-sheet0.png new file mode 100644 index 0000000..5592746 Binary files /dev/null and b/gversion/gs/ovo/images/background-sheet0.png differ diff --git a/gversion/gs/ovo/images/bannercontainer-sheet0.png b/gversion/gs/ovo/images/bannercontainer-sheet0.png new file mode 100644 index 0000000..764148d Binary files /dev/null and b/gversion/gs/ovo/images/bannercontainer-sheet0.png differ diff --git a/gversion/gs/ovo/images/bfakenine-sheet0.png b/gversion/gs/ovo/images/bfakenine-sheet0.png new file mode 100644 index 0000000..499d67e Binary files /dev/null and b/gversion/gs/ovo/images/bfakenine-sheet0.png differ diff --git a/gversion/gs/ovo/images/body-sheet0.png b/gversion/gs/ovo/images/body-sheet0.png new file mode 100644 index 0000000..860c301 Binary files /dev/null and b/gversion/gs/ovo/images/body-sheet0.png differ diff --git a/gversion/gs/ovo/images/border.png b/gversion/gs/ovo/images/border.png new file mode 100644 index 0000000..89e86e2 Binary files /dev/null and b/gversion/gs/ovo/images/border.png differ diff --git a/gversion/gs/ovo/images/buttontrigger-sheet0.png b/gversion/gs/ovo/images/buttontrigger-sheet0.png new file mode 100644 index 0000000..c4560d7 Binary files /dev/null and b/gversion/gs/ovo/images/buttontrigger-sheet0.png differ diff --git a/gversion/gs/ovo/images/buttontrigger-sheet1.png b/gversion/gs/ovo/images/buttontrigger-sheet1.png new file mode 100644 index 0000000..97bbdae Binary files /dev/null and b/gversion/gs/ovo/images/buttontrigger-sheet1.png differ diff --git a/gversion/gs/ovo/images/camera-sheet0.png b/gversion/gs/ovo/images/camera-sheet0.png new file mode 100644 index 0000000..d87d726 Binary files /dev/null and b/gversion/gs/ovo/images/camera-sheet0.png differ diff --git a/gversion/gs/ovo/images/checkbox-sheet0.png b/gversion/gs/ovo/images/checkbox-sheet0.png new file mode 100644 index 0000000..649a08f Binary files /dev/null and b/gversion/gs/ovo/images/checkbox-sheet0.png differ diff --git a/gversion/gs/ovo/images/cmgskin-sheet0.png b/gversion/gs/ovo/images/cmgskin-sheet0.png new file mode 100644 index 0000000..9fddb0c Binary files /dev/null and b/gversion/gs/ovo/images/cmgskin-sheet0.png differ diff --git a/gversion/gs/ovo/images/coin-sheet0.png b/gversion/gs/ovo/images/coin-sheet0.png new file mode 100644 index 0000000..5b20657 Binary files /dev/null and b/gversion/gs/ovo/images/coin-sheet0.png differ diff --git a/gversion/gs/ovo/images/collider-sheet0.png b/gversion/gs/ovo/images/collider-sheet0.png new file mode 100644 index 0000000..b6b655e Binary files /dev/null and b/gversion/gs/ovo/images/collider-sheet0.png differ diff --git a/gversion/gs/ovo/images/collider-sheet1.png b/gversion/gs/ovo/images/collider-sheet1.png new file mode 100644 index 0000000..f48cd47 Binary files /dev/null and b/gversion/gs/ovo/images/collider-sheet1.png differ diff --git a/gversion/gs/ovo/images/coolmathgames800x-sheet0.png b/gversion/gs/ovo/images/coolmathgames800x-sheet0.png new file mode 100644 index 0000000..8250585 Binary files /dev/null and b/gversion/gs/ovo/images/coolmathgames800x-sheet0.png differ diff --git a/gversion/gs/ovo/images/credits-sheet0.png b/gversion/gs/ovo/images/credits-sheet0.png new file mode 100644 index 0000000..388df4d Binary files /dev/null and b/gversion/gs/ovo/images/credits-sheet0.png differ diff --git a/gversion/gs/ovo/images/decor-sheet0.png b/gversion/gs/ovo/images/decor-sheet0.png new file mode 100644 index 0000000..89227c7 Binary files /dev/null and b/gversion/gs/ovo/images/decor-sheet0.png differ diff --git a/gversion/gs/ovo/images/decor-sheet1.png b/gversion/gs/ovo/images/decor-sheet1.png new file mode 100644 index 0000000..15a2c22 Binary files /dev/null and b/gversion/gs/ovo/images/decor-sheet1.png differ diff --git a/gversion/gs/ovo/images/decor2-sheet0.png b/gversion/gs/ovo/images/decor2-sheet0.png new file mode 100644 index 0000000..bc6276d Binary files /dev/null and b/gversion/gs/ovo/images/decor2-sheet0.png differ diff --git a/gversion/gs/ovo/images/dedraloader-sheet0.png b/gversion/gs/ovo/images/dedraloader-sheet0.png new file mode 100644 index 0000000..33f479f Binary files /dev/null and b/gversion/gs/ovo/images/dedraloader-sheet0.png differ diff --git a/gversion/gs/ovo/images/dedraloader-sheet1.png b/gversion/gs/ovo/images/dedraloader-sheet1.png new file mode 100644 index 0000000..7f3883d Binary files /dev/null and b/gversion/gs/ovo/images/dedraloader-sheet1.png differ diff --git a/gversion/gs/ovo/images/dialogoverlay-sheet0.png b/gversion/gs/ovo/images/dialogoverlay-sheet0.png new file mode 100644 index 0000000..d2c74de Binary files /dev/null and b/gversion/gs/ovo/images/dialogoverlay-sheet0.png differ diff --git a/gversion/gs/ovo/images/endcarddialog-sheet0.png b/gversion/gs/ovo/images/endcarddialog-sheet0.png new file mode 100644 index 0000000..76e1b8e Binary files /dev/null and b/gversion/gs/ovo/images/endcarddialog-sheet0.png differ diff --git a/gversion/gs/ovo/images/endflag-sheet0.png b/gversion/gs/ovo/images/endflag-sheet0.png new file mode 100644 index 0000000..5cd1901 Binary files /dev/null and b/gversion/gs/ovo/images/endflag-sheet0.png differ diff --git a/gversion/gs/ovo/images/fakenine-sheet0.png b/gversion/gs/ovo/images/fakenine-sheet0.png new file mode 100644 index 0000000..86121f4 Binary files /dev/null and b/gversion/gs/ovo/images/fakenine-sheet0.png differ diff --git a/gversion/gs/ovo/images/fakeparseimage-sheet0.png b/gversion/gs/ovo/images/fakeparseimage-sheet0.png new file mode 100644 index 0000000..6f03e3f Binary files /dev/null and b/gversion/gs/ovo/images/fakeparseimage-sheet0.png differ diff --git a/gversion/gs/ovo/images/frank_1-sheet0.png b/gversion/gs/ovo/images/frank_1-sheet0.png new file mode 100644 index 0000000..46a155a Binary files /dev/null and b/gversion/gs/ovo/images/frank_1-sheet0.png differ diff --git a/gversion/gs/ovo/images/groundpoundsolid.png b/gversion/gs/ovo/images/groundpoundsolid.png new file mode 100644 index 0000000..c131c69 Binary files /dev/null and b/gversion/gs/ovo/images/groundpoundsolid.png differ diff --git a/gversion/gs/ovo/images/head-sheet0.png b/gversion/gs/ovo/images/head-sheet0.png new file mode 100644 index 0000000..245c11a Binary files /dev/null and b/gversion/gs/ovo/images/head-sheet0.png differ diff --git a/gversion/gs/ovo/images/inputsdialog.png b/gversion/gs/ovo/images/inputsdialog.png new file mode 100644 index 0000000..228f68f Binary files /dev/null and b/gversion/gs/ovo/images/inputsdialog.png differ diff --git a/gversion/gs/ovo/images/jumpboost-sheet0.png b/gversion/gs/ovo/images/jumpboost-sheet0.png new file mode 100644 index 0000000..5396708 Binary files /dev/null and b/gversion/gs/ovo/images/jumpboost-sheet0.png differ diff --git a/gversion/gs/ovo/images/jumpthrough.png b/gversion/gs/ovo/images/jumpthrough.png new file mode 100644 index 0000000..1516bec Binary files /dev/null and b/gversion/gs/ovo/images/jumpthrough.png differ diff --git a/gversion/gs/ovo/images/languagebutton-sheet0.png b/gversion/gs/ovo/images/languagebutton-sheet0.png new file mode 100644 index 0000000..6806320 Binary files /dev/null and b/gversion/gs/ovo/images/languagebutton-sheet0.png differ diff --git a/gversion/gs/ovo/images/languagebutton2-sheet0.png b/gversion/gs/ovo/images/languagebutton2-sheet0.png new file mode 100644 index 0000000..953fac8 Binary files /dev/null and b/gversion/gs/ovo/images/languagebutton2-sheet0.png differ diff --git a/gversion/gs/ovo/images/languageflag-sheet0.png b/gversion/gs/ovo/images/languageflag-sheet0.png new file mode 100644 index 0000000..0767653 Binary files /dev/null and b/gversion/gs/ovo/images/languageflag-sheet0.png differ diff --git a/gversion/gs/ovo/images/layoutnameholder-sheet0.png b/gversion/gs/ovo/images/layoutnameholder-sheet0.png new file mode 100644 index 0000000..5a04da6 Binary files /dev/null and b/gversion/gs/ovo/images/layoutnameholder-sheet0.png differ diff --git a/gversion/gs/ovo/images/layoutnumber.png b/gversion/gs/ovo/images/layoutnumber.png new file mode 100644 index 0000000..4e7db83 Binary files /dev/null and b/gversion/gs/ovo/images/layoutnumber.png differ diff --git a/gversion/gs/ovo/images/layoutsubtitle.png b/gversion/gs/ovo/images/layoutsubtitle.png new file mode 100644 index 0000000..b8f6471 Binary files /dev/null and b/gversion/gs/ovo/images/layoutsubtitle.png differ diff --git a/gversion/gs/ovo/images/leftarm-sheet0.png b/gversion/gs/ovo/images/leftarm-sheet0.png new file mode 100644 index 0000000..4857e9e Binary files /dev/null and b/gversion/gs/ovo/images/leftarm-sheet0.png differ diff --git a/gversion/gs/ovo/images/levelbutton-sheet0.png b/gversion/gs/ovo/images/levelbutton-sheet0.png new file mode 100644 index 0000000..9d9b01c Binary files /dev/null and b/gversion/gs/ovo/images/levelbutton-sheet0.png differ diff --git a/gversion/gs/ovo/images/listitem-sheet0.png b/gversion/gs/ovo/images/listitem-sheet0.png new file mode 100644 index 0000000..1866751 Binary files /dev/null and b/gversion/gs/ovo/images/listitem-sheet0.png differ diff --git a/gversion/gs/ovo/images/listparent-sheet0.png b/gversion/gs/ovo/images/listparent-sheet0.png new file mode 100644 index 0000000..ea60bc7 Binary files /dev/null and b/gversion/gs/ovo/images/listparent-sheet0.png differ diff --git a/gversion/gs/ovo/images/listsubitembtn-sheet0.png b/gversion/gs/ovo/images/listsubitembtn-sheet0.png new file mode 100644 index 0000000..16e35f7 Binary files /dev/null and b/gversion/gs/ovo/images/listsubitembtn-sheet0.png differ diff --git a/gversion/gs/ovo/images/listsubitembtn-sheet1.png b/gversion/gs/ovo/images/listsubitembtn-sheet1.png new file mode 100644 index 0000000..83114fe Binary files /dev/null and b/gversion/gs/ovo/images/listsubitembtn-sheet1.png differ diff --git a/gversion/gs/ovo/images/listsubitembtn-sheet2.png b/gversion/gs/ovo/images/listsubitembtn-sheet2.png new file mode 100644 index 0000000..ade36e2 Binary files /dev/null and b/gversion/gs/ovo/images/listsubitembtn-sheet2.png differ diff --git a/gversion/gs/ovo/images/loadinganim-sheet0.png b/gversion/gs/ovo/images/loadinganim-sheet0.png new file mode 100644 index 0000000..3ce76f8 Binary files /dev/null and b/gversion/gs/ovo/images/loadinganim-sheet0.png differ diff --git a/gversion/gs/ovo/images/loadinganim-sheet1.png b/gversion/gs/ovo/images/loadinganim-sheet1.png new file mode 100644 index 0000000..d2f02ed Binary files /dev/null and b/gversion/gs/ovo/images/loadinganim-sheet1.png differ diff --git a/gversion/gs/ovo/images/mark-sheet0.png b/gversion/gs/ovo/images/mark-sheet0.png new file mode 100644 index 0000000..8113631 Binary files /dev/null and b/gversion/gs/ovo/images/mark-sheet0.png differ diff --git a/gversion/gs/ovo/images/menubutton-sheet0.png b/gversion/gs/ovo/images/menubutton-sheet0.png new file mode 100644 index 0000000..b17c9eb Binary files /dev/null and b/gversion/gs/ovo/images/menubutton-sheet0.png differ diff --git a/gversion/gs/ovo/images/menubutton-sheet1.png b/gversion/gs/ovo/images/menubutton-sheet1.png new file mode 100644 index 0000000..5aa58ae Binary files /dev/null and b/gversion/gs/ovo/images/menubutton-sheet1.png differ diff --git a/gversion/gs/ovo/images/menubutton-sheet2.png b/gversion/gs/ovo/images/menubutton-sheet2.png new file mode 100644 index 0000000..c43bcf4 Binary files /dev/null and b/gversion/gs/ovo/images/menubutton-sheet2.png differ diff --git a/gversion/gs/ovo/images/menubutton2-sheet0.png b/gversion/gs/ovo/images/menubutton2-sheet0.png new file mode 100644 index 0000000..a0a1305 Binary files /dev/null and b/gversion/gs/ovo/images/menubutton2-sheet0.png differ diff --git a/gversion/gs/ovo/images/menubutton3-sheet0.png b/gversion/gs/ovo/images/menubutton3-sheet0.png new file mode 100644 index 0000000..ae44624 Binary files /dev/null and b/gversion/gs/ovo/images/menubutton3-sheet0.png differ diff --git a/gversion/gs/ovo/images/menubutton3-sheet1.png b/gversion/gs/ovo/images/menubutton3-sheet1.png new file mode 100644 index 0000000..d9bff4d Binary files /dev/null and b/gversion/gs/ovo/images/menubutton3-sheet1.png differ diff --git a/gversion/gs/ovo/images/movearea-sheet0.png b/gversion/gs/ovo/images/movearea-sheet0.png new file mode 100644 index 0000000..1c5a069 Binary files /dev/null and b/gversion/gs/ovo/images/movearea-sheet0.png differ diff --git a/gversion/gs/ovo/images/movearea-sheet1.png b/gversion/gs/ovo/images/movearea-sheet1.png new file mode 100644 index 0000000..21df2ea Binary files /dev/null and b/gversion/gs/ovo/images/movearea-sheet1.png differ diff --git a/gversion/gs/ovo/images/particles.png b/gversion/gs/ovo/images/particles.png new file mode 100644 index 0000000..69f7e03 Binary files /dev/null and b/gversion/gs/ovo/images/particles.png differ diff --git a/gversion/gs/ovo/images/particlesbg.png b/gversion/gs/ovo/images/particlesbg.png new file mode 100644 index 0000000..28d3a71 Binary files /dev/null and b/gversion/gs/ovo/images/particlesbg.png differ diff --git a/gversion/gs/ovo/images/placeholder b/gversion/gs/ovo/images/placeholder new file mode 100644 index 0000000..8b13789 --- /dev/null +++ b/gversion/gs/ovo/images/placeholder @@ -0,0 +1 @@ + diff --git a/gversion/gs/ovo/images/portal-sheet0.png b/gversion/gs/ovo/images/portal-sheet0.png new file mode 100644 index 0000000..1d6dcdf Binary files /dev/null and b/gversion/gs/ovo/images/portal-sheet0.png differ diff --git a/gversion/gs/ovo/images/pulse-sheet0.png b/gversion/gs/ovo/images/pulse-sheet0.png new file mode 100644 index 0000000..2a1ab28 Binary files /dev/null and b/gversion/gs/ovo/images/pulse-sheet0.png differ diff --git a/gversion/gs/ovo/images/pulse-sheet1.png b/gversion/gs/ovo/images/pulse-sheet1.png new file mode 100644 index 0000000..997b536 Binary files /dev/null and b/gversion/gs/ovo/images/pulse-sheet1.png differ diff --git a/gversion/gs/ovo/images/pulse-sheet2.png b/gversion/gs/ovo/images/pulse-sheet2.png new file mode 100644 index 0000000..bfd0775 Binary files /dev/null and b/gversion/gs/ovo/images/pulse-sheet2.png differ diff --git a/gversion/gs/ovo/images/pumpkin-sheet0.png b/gversion/gs/ovo/images/pumpkin-sheet0.png new file mode 100644 index 0000000..0598204 Binary files /dev/null and b/gversion/gs/ovo/images/pumpkin-sheet0.png differ diff --git a/gversion/gs/ovo/images/rocket-sheet0.png b/gversion/gs/ovo/images/rocket-sheet0.png new file mode 100644 index 0000000..fc974ad Binary files /dev/null and b/gversion/gs/ovo/images/rocket-sheet0.png differ diff --git a/gversion/gs/ovo/images/rocketlauncher-sheet0.png b/gversion/gs/ovo/images/rocketlauncher-sheet0.png new file mode 100644 index 0000000..50665fe Binary files /dev/null and b/gversion/gs/ovo/images/rocketlauncher-sheet0.png differ diff --git a/gversion/gs/ovo/images/runningcanvas.png b/gversion/gs/ovo/images/runningcanvas.png new file mode 100644 index 0000000..84a6275 Binary files /dev/null and b/gversion/gs/ovo/images/runningcanvas.png differ diff --git a/gversion/gs/ovo/images/skin1-sheet0.png b/gversion/gs/ovo/images/skin1-sheet0.png new file mode 100644 index 0000000..ec94a12 Binary files /dev/null and b/gversion/gs/ovo/images/skin1-sheet0.png differ diff --git a/gversion/gs/ovo/images/skin10-sheet0.png b/gversion/gs/ovo/images/skin10-sheet0.png new file mode 100644 index 0000000..f0a21ea Binary files /dev/null and b/gversion/gs/ovo/images/skin10-sheet0.png differ diff --git a/gversion/gs/ovo/images/skin10-sheet1.png b/gversion/gs/ovo/images/skin10-sheet1.png new file mode 100644 index 0000000..e2618a3 Binary files /dev/null and b/gversion/gs/ovo/images/skin10-sheet1.png differ diff --git a/gversion/gs/ovo/images/skin11-sheet0.png b/gversion/gs/ovo/images/skin11-sheet0.png new file mode 100644 index 0000000..8117e9c Binary files /dev/null and b/gversion/gs/ovo/images/skin11-sheet0.png differ diff --git a/gversion/gs/ovo/images/skin12-sheet0.png b/gversion/gs/ovo/images/skin12-sheet0.png new file mode 100644 index 0000000..803536d Binary files /dev/null and b/gversion/gs/ovo/images/skin12-sheet0.png differ diff --git a/gversion/gs/ovo/images/skin13-sheet0.png b/gversion/gs/ovo/images/skin13-sheet0.png new file mode 100644 index 0000000..024f88b Binary files /dev/null and b/gversion/gs/ovo/images/skin13-sheet0.png differ diff --git a/gversion/gs/ovo/images/skin14-sheet0.png b/gversion/gs/ovo/images/skin14-sheet0.png new file mode 100644 index 0000000..6e9e2da Binary files /dev/null and b/gversion/gs/ovo/images/skin14-sheet0.png differ diff --git a/gversion/gs/ovo/images/skin15-sheet0.png b/gversion/gs/ovo/images/skin15-sheet0.png new file mode 100644 index 0000000..4c670f4 Binary files /dev/null and b/gversion/gs/ovo/images/skin15-sheet0.png differ diff --git a/gversion/gs/ovo/images/skin16-sheet0.png b/gversion/gs/ovo/images/skin16-sheet0.png new file mode 100644 index 0000000..3d1a375 Binary files /dev/null and b/gversion/gs/ovo/images/skin16-sheet0.png differ diff --git a/gversion/gs/ovo/images/skin17-sheet0.png b/gversion/gs/ovo/images/skin17-sheet0.png new file mode 100644 index 0000000..c765b92 Binary files /dev/null and b/gversion/gs/ovo/images/skin17-sheet0.png differ diff --git a/gversion/gs/ovo/images/skin18-sheet0.png b/gversion/gs/ovo/images/skin18-sheet0.png new file mode 100644 index 0000000..9843785 Binary files /dev/null and b/gversion/gs/ovo/images/skin18-sheet0.png differ diff --git a/gversion/gs/ovo/images/skin19-sheet0.png b/gversion/gs/ovo/images/skin19-sheet0.png new file mode 100644 index 0000000..410ee74 Binary files /dev/null and b/gversion/gs/ovo/images/skin19-sheet0.png differ diff --git a/gversion/gs/ovo/images/skin19-sheet1.png b/gversion/gs/ovo/images/skin19-sheet1.png new file mode 100644 index 0000000..4538fe4 Binary files /dev/null and b/gversion/gs/ovo/images/skin19-sheet1.png differ diff --git a/gversion/gs/ovo/images/skin2-sheet0.png b/gversion/gs/ovo/images/skin2-sheet0.png new file mode 100644 index 0000000..38738ca Binary files /dev/null and b/gversion/gs/ovo/images/skin2-sheet0.png differ diff --git a/gversion/gs/ovo/images/skin20-sheet0.png b/gversion/gs/ovo/images/skin20-sheet0.png new file mode 100644 index 0000000..0615450 Binary files /dev/null and b/gversion/gs/ovo/images/skin20-sheet0.png differ diff --git a/gversion/gs/ovo/images/skin21-sheet0.png b/gversion/gs/ovo/images/skin21-sheet0.png new file mode 100644 index 0000000..2cd9c62 Binary files /dev/null and b/gversion/gs/ovo/images/skin21-sheet0.png differ diff --git a/gversion/gs/ovo/images/skin22-sheet0.png b/gversion/gs/ovo/images/skin22-sheet0.png new file mode 100644 index 0000000..9994e15 Binary files /dev/null and b/gversion/gs/ovo/images/skin22-sheet0.png differ diff --git a/gversion/gs/ovo/images/skin23-sheet0.png b/gversion/gs/ovo/images/skin23-sheet0.png new file mode 100644 index 0000000..2f48800 Binary files /dev/null and b/gversion/gs/ovo/images/skin23-sheet0.png differ diff --git a/gversion/gs/ovo/images/skin24-sheet0.png b/gversion/gs/ovo/images/skin24-sheet0.png new file mode 100644 index 0000000..d6e4db5 Binary files /dev/null and b/gversion/gs/ovo/images/skin24-sheet0.png differ diff --git a/gversion/gs/ovo/images/skin3-sheet0.png b/gversion/gs/ovo/images/skin3-sheet0.png new file mode 100644 index 0000000..de7c51a Binary files /dev/null and b/gversion/gs/ovo/images/skin3-sheet0.png differ diff --git a/gversion/gs/ovo/images/skin3-sheet1.png b/gversion/gs/ovo/images/skin3-sheet1.png new file mode 100644 index 0000000..5060631 Binary files /dev/null and b/gversion/gs/ovo/images/skin3-sheet1.png differ diff --git a/gversion/gs/ovo/images/skin3-sheet2.png b/gversion/gs/ovo/images/skin3-sheet2.png new file mode 100644 index 0000000..c6f39ed Binary files /dev/null and b/gversion/gs/ovo/images/skin3-sheet2.png differ diff --git a/gversion/gs/ovo/images/skin4-sheet0.png b/gversion/gs/ovo/images/skin4-sheet0.png new file mode 100644 index 0000000..4795516 Binary files /dev/null and b/gversion/gs/ovo/images/skin4-sheet0.png differ diff --git a/gversion/gs/ovo/images/skin4-sheet1.png b/gversion/gs/ovo/images/skin4-sheet1.png new file mode 100644 index 0000000..f208cef Binary files /dev/null and b/gversion/gs/ovo/images/skin4-sheet1.png differ diff --git a/gversion/gs/ovo/images/skin4-sheet2.png b/gversion/gs/ovo/images/skin4-sheet2.png new file mode 100644 index 0000000..673c314 Binary files /dev/null and b/gversion/gs/ovo/images/skin4-sheet2.png differ diff --git a/gversion/gs/ovo/images/skin5-sheet0.png b/gversion/gs/ovo/images/skin5-sheet0.png new file mode 100644 index 0000000..10a119a Binary files /dev/null and b/gversion/gs/ovo/images/skin5-sheet0.png differ diff --git a/gversion/gs/ovo/images/skin6-sheet0.png b/gversion/gs/ovo/images/skin6-sheet0.png new file mode 100644 index 0000000..ae671a6 Binary files /dev/null and b/gversion/gs/ovo/images/skin6-sheet0.png differ diff --git a/gversion/gs/ovo/images/skin6-sheet1.png b/gversion/gs/ovo/images/skin6-sheet1.png new file mode 100644 index 0000000..966332f Binary files /dev/null and b/gversion/gs/ovo/images/skin6-sheet1.png differ diff --git a/gversion/gs/ovo/images/skin7-sheet0.png b/gversion/gs/ovo/images/skin7-sheet0.png new file mode 100644 index 0000000..88973c0 Binary files /dev/null and b/gversion/gs/ovo/images/skin7-sheet0.png differ diff --git a/gversion/gs/ovo/images/skin8-sheet0.png b/gversion/gs/ovo/images/skin8-sheet0.png new file mode 100644 index 0000000..b5c2707 Binary files /dev/null and b/gversion/gs/ovo/images/skin8-sheet0.png differ diff --git a/gversion/gs/ovo/images/skin9-sheet0.png b/gversion/gs/ovo/images/skin9-sheet0.png new file mode 100644 index 0000000..312e7d5 Binary files /dev/null and b/gversion/gs/ovo/images/skin9-sheet0.png differ diff --git a/gversion/gs/ovo/images/sliderbar-sheet0.png b/gversion/gs/ovo/images/sliderbar-sheet0.png new file mode 100644 index 0000000..f2d657b Binary files /dev/null and b/gversion/gs/ovo/images/sliderbar-sheet0.png differ diff --git a/gversion/gs/ovo/images/solid.png b/gversion/gs/ovo/images/solid.png new file mode 100644 index 0000000..06f8eb6 Binary files /dev/null and b/gversion/gs/ovo/images/solid.png differ diff --git a/gversion/gs/ovo/images/solid2.png b/gversion/gs/ovo/images/solid2.png new file mode 100644 index 0000000..2060c63 Binary files /dev/null and b/gversion/gs/ovo/images/solid2.png differ diff --git a/gversion/gs/ovo/images/solid3.png b/gversion/gs/ovo/images/solid3.png new file mode 100644 index 0000000..764148d Binary files /dev/null and b/gversion/gs/ovo/images/solid3.png differ diff --git a/gversion/gs/ovo/images/solidmove.png b/gversion/gs/ovo/images/solidmove.png new file mode 100644 index 0000000..d01204b Binary files /dev/null and b/gversion/gs/ovo/images/solidmove.png differ diff --git a/gversion/gs/ovo/images/spike-sheet0.png b/gversion/gs/ovo/images/spike-sheet0.png new file mode 100644 index 0000000..5b517ae Binary files /dev/null and b/gversion/gs/ovo/images/spike-sheet0.png differ diff --git a/gversion/gs/ovo/images/spike2-sheet0.png b/gversion/gs/ovo/images/spike2-sheet0.png new file mode 100644 index 0000000..aec18d6 Binary files /dev/null and b/gversion/gs/ovo/images/spike2-sheet0.png differ diff --git a/gversion/gs/ovo/images/sprite-sheet0.png b/gversion/gs/ovo/images/sprite-sheet0.png new file mode 100644 index 0000000..4994139 Binary files /dev/null and b/gversion/gs/ovo/images/sprite-sheet0.png differ diff --git a/gversion/gs/ovo/images/sprite-sheet1.png b/gversion/gs/ovo/images/sprite-sheet1.png new file mode 100644 index 0000000..c787a18 Binary files /dev/null and b/gversion/gs/ovo/images/sprite-sheet1.png differ diff --git a/gversion/gs/ovo/images/sprite2-sheet0.png b/gversion/gs/ovo/images/sprite2-sheet0.png new file mode 100644 index 0000000..61945e0 Binary files /dev/null and b/gversion/gs/ovo/images/sprite2-sheet0.png differ diff --git a/gversion/gs/ovo/images/sprite4-sheet0.png b/gversion/gs/ovo/images/sprite4-sheet0.png new file mode 100644 index 0000000..07068a8 Binary files /dev/null and b/gversion/gs/ovo/images/sprite4-sheet0.png differ diff --git a/gversion/gs/ovo/images/sprite5-sheet0.png b/gversion/gs/ovo/images/sprite5-sheet0.png new file mode 100644 index 0000000..fcaf18c Binary files /dev/null and b/gversion/gs/ovo/images/sprite5-sheet0.png differ diff --git a/gversion/gs/ovo/images/sprite6-sheet0.png b/gversion/gs/ovo/images/sprite6-sheet0.png new file mode 100644 index 0000000..81432b0 Binary files /dev/null and b/gversion/gs/ovo/images/sprite6-sheet0.png differ diff --git a/gversion/gs/ovo/images/sprite7-sheet0.png b/gversion/gs/ovo/images/sprite7-sheet0.png new file mode 100644 index 0000000..7de39d4 Binary files /dev/null and b/gversion/gs/ovo/images/sprite7-sheet0.png differ diff --git a/gversion/gs/ovo/images/sprite8-sheet0.png b/gversion/gs/ovo/images/sprite8-sheet0.png new file mode 100644 index 0000000..84a6275 Binary files /dev/null and b/gversion/gs/ovo/images/sprite8-sheet0.png differ diff --git a/gversion/gs/ovo/images/sprite9-sheet0.png b/gversion/gs/ovo/images/sprite9-sheet0.png new file mode 100644 index 0000000..950f5ef Binary files /dev/null and b/gversion/gs/ovo/images/sprite9-sheet0.png differ diff --git a/gversion/gs/ovo/images/spritefontdeluxe.png b/gversion/gs/ovo/images/spritefontdeluxe.png new file mode 100644 index 0000000..c33ce4b Binary files /dev/null and b/gversion/gs/ovo/images/spritefontdeluxe.png differ diff --git a/gversion/gs/ovo/images/spritefontdeluxew.png b/gversion/gs/ovo/images/spritefontdeluxew.png new file mode 100644 index 0000000..7cf529b Binary files /dev/null and b/gversion/gs/ovo/images/spritefontdeluxew.png differ diff --git a/gversion/gs/ovo/images/tiledbackground.png b/gversion/gs/ovo/images/tiledbackground.png new file mode 100644 index 0000000..9dcc35d Binary files /dev/null and b/gversion/gs/ovo/images/tiledbackground.png differ diff --git a/gversion/gs/ovo/images/tiledbackground2.png b/gversion/gs/ovo/images/tiledbackground2.png new file mode 100644 index 0000000..9fdfe30 Binary files /dev/null and b/gversion/gs/ovo/images/tiledbackground2.png differ diff --git a/gversion/gs/ovo/images/tiledbackground3.png b/gversion/gs/ovo/images/tiledbackground3.png new file mode 100644 index 0000000..d7b0915 Binary files /dev/null and b/gversion/gs/ovo/images/tiledbackground3.png differ diff --git a/gversion/gs/ovo/images/titlelogo-sheet0.png b/gversion/gs/ovo/images/titlelogo-sheet0.png new file mode 100644 index 0000000..b4bc451 Binary files /dev/null and b/gversion/gs/ovo/images/titlelogo-sheet0.png differ diff --git a/gversion/gs/ovo/images/triggerarea-sheet0.png b/gversion/gs/ovo/images/triggerarea-sheet0.png new file mode 100644 index 0000000..3dc4b5c Binary files /dev/null and b/gversion/gs/ovo/images/triggerarea-sheet0.png differ diff --git a/gversion/gs/ovo/images/uidirectionbtn-sheet0.png b/gversion/gs/ovo/images/uidirectionbtn-sheet0.png new file mode 100644 index 0000000..63b132e Binary files /dev/null and b/gversion/gs/ovo/images/uidirectionbtn-sheet0.png differ diff --git a/gversion/gs/ovo/images/vector-sheet0.png b/gversion/gs/ovo/images/vector-sheet0.png new file mode 100644 index 0000000..25591d1 Binary files /dev/null and b/gversion/gs/ovo/images/vector-sheet0.png differ diff --git a/gversion/gs/ovo/index.html b/gversion/gs/ovo/index.html new file mode 100644 index 0000000..c4a9aa0 --- /dev/null +++ b/gversion/gs/ovo/index.html @@ -0,0 +1,153 @@ + + + + + + + + OvO + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + +

+ Your browser does not appear to support HTML5. Try upgrading your + browser to the latest version. + What is a browser? +

Microsoft Internet + Explorer
+ Mozilla Firefox
+ Google Chrome
+ Apple Safari +

+
+
+ + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/gversion/gs/ovo/jquery-3.4.1.min.js b/gversion/gs/ovo/jquery-3.4.1.min.js new file mode 100644 index 0000000..a1c07fd --- /dev/null +++ b/gversion/gs/ovo/jquery-3.4.1.min.js @@ -0,0 +1,2 @@ +/*! jQuery v3.4.1 | (c) JS Foundation and other contributors | jquery.org/license */ +!function(e,t){"use strict";"object"==typeof module&&"object"==typeof module.exports?module.exports=e.document?t(e,!0):function(e){if(!e.document)throw new Error("jQuery requires a window with a document");return t(e)}:t(e)}("undefined"!=typeof window?window:this,function(C,e){"use strict";var t=[],E=C.document,r=Object.getPrototypeOf,s=t.slice,g=t.concat,u=t.push,i=t.indexOf,n={},o=n.toString,v=n.hasOwnProperty,a=v.toString,l=a.call(Object),y={},m=function(e){return"function"==typeof e&&"number"!=typeof e.nodeType},x=function(e){return null!=e&&e===e.window},c={type:!0,src:!0,nonce:!0,noModule:!0};function b(e,t,n){var r,i,o=(n=n||E).createElement("script");if(o.text=e,t)for(r in c)(i=t[r]||t.getAttribute&&t.getAttribute(r))&&o.setAttribute(r,i);n.head.appendChild(o).parentNode.removeChild(o)}function w(e){return null==e?e+"":"object"==typeof e||"function"==typeof e?n[o.call(e)]||"object":typeof e}var f="3.4.1",k=function(e,t){return new k.fn.init(e,t)},p=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g;function d(e){var t=!!e&&"length"in e&&e.length,n=w(e);return!m(e)&&!x(e)&&("array"===n||0===t||"number"==typeof t&&0+~]|"+M+")"+M+"*"),U=new RegExp(M+"|>"),X=new RegExp($),V=new RegExp("^"+I+"$"),G={ID:new RegExp("^#("+I+")"),CLASS:new RegExp("^\\.("+I+")"),TAG:new RegExp("^("+I+"|[*])"),ATTR:new RegExp("^"+W),PSEUDO:new RegExp("^"+$),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+M+"*(even|odd|(([+-]|)(\\d*)n|)"+M+"*(?:([+-]|)"+M+"*(\\d+)|))"+M+"*\\)|)","i"),bool:new RegExp("^(?:"+R+")$","i"),needsContext:new RegExp("^"+M+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+M+"*((?:-\\d)?\\d*)"+M+"*\\)|)(?=[^-]|$)","i")},Y=/HTML$/i,Q=/^(?:input|select|textarea|button)$/i,J=/^h\d$/i,K=/^[^{]+\{\s*\[native \w/,Z=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,ee=/[+~]/,te=new RegExp("\\\\([\\da-f]{1,6}"+M+"?|("+M+")|.)","ig"),ne=function(e,t,n){var r="0x"+t-65536;return r!=r||n?t:r<0?String.fromCharCode(r+65536):String.fromCharCode(r>>10|55296,1023&r|56320)},re=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,ie=function(e,t){return t?"\0"===e?"\ufffd":e.slice(0,-1)+"\\"+e.charCodeAt(e.length-1).toString(16)+" ":"\\"+e},oe=function(){T()},ae=be(function(e){return!0===e.disabled&&"fieldset"===e.nodeName.toLowerCase()},{dir:"parentNode",next:"legend"});try{H.apply(t=O.call(m.childNodes),m.childNodes),t[m.childNodes.length].nodeType}catch(e){H={apply:t.length?function(e,t){L.apply(e,O.call(t))}:function(e,t){var n=e.length,r=0;while(e[n++]=t[r++]);e.length=n-1}}}function se(t,e,n,r){var i,o,a,s,u,l,c,f=e&&e.ownerDocument,p=e?e.nodeType:9;if(n=n||[],"string"!=typeof t||!t||1!==p&&9!==p&&11!==p)return n;if(!r&&((e?e.ownerDocument||e:m)!==C&&T(e),e=e||C,E)){if(11!==p&&(u=Z.exec(t)))if(i=u[1]){if(9===p){if(!(a=e.getElementById(i)))return n;if(a.id===i)return n.push(a),n}else if(f&&(a=f.getElementById(i))&&y(e,a)&&a.id===i)return n.push(a),n}else{if(u[2])return H.apply(n,e.getElementsByTagName(t)),n;if((i=u[3])&&d.getElementsByClassName&&e.getElementsByClassName)return H.apply(n,e.getElementsByClassName(i)),n}if(d.qsa&&!A[t+" "]&&(!v||!v.test(t))&&(1!==p||"object"!==e.nodeName.toLowerCase())){if(c=t,f=e,1===p&&U.test(t)){(s=e.getAttribute("id"))?s=s.replace(re,ie):e.setAttribute("id",s=k),o=(l=h(t)).length;while(o--)l[o]="#"+s+" "+xe(l[o]);c=l.join(","),f=ee.test(t)&&ye(e.parentNode)||e}try{return H.apply(n,f.querySelectorAll(c)),n}catch(e){A(t,!0)}finally{s===k&&e.removeAttribute("id")}}}return g(t.replace(B,"$1"),e,n,r)}function ue(){var r=[];return function e(t,n){return r.push(t+" ")>b.cacheLength&&delete e[r.shift()],e[t+" "]=n}}function le(e){return e[k]=!0,e}function ce(e){var t=C.createElement("fieldset");try{return!!e(t)}catch(e){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function fe(e,t){var n=e.split("|"),r=n.length;while(r--)b.attrHandle[n[r]]=t}function pe(e,t){var n=t&&e,r=n&&1===e.nodeType&&1===t.nodeType&&e.sourceIndex-t.sourceIndex;if(r)return r;if(n)while(n=n.nextSibling)if(n===t)return-1;return e?1:-1}function de(t){return function(e){return"input"===e.nodeName.toLowerCase()&&e.type===t}}function he(n){return function(e){var t=e.nodeName.toLowerCase();return("input"===t||"button"===t)&&e.type===n}}function ge(t){return function(e){return"form"in e?e.parentNode&&!1===e.disabled?"label"in e?"label"in e.parentNode?e.parentNode.disabled===t:e.disabled===t:e.isDisabled===t||e.isDisabled!==!t&&ae(e)===t:e.disabled===t:"label"in e&&e.disabled===t}}function ve(a){return le(function(o){return o=+o,le(function(e,t){var n,r=a([],e.length,o),i=r.length;while(i--)e[n=r[i]]&&(e[n]=!(t[n]=e[n]))})})}function ye(e){return e&&"undefined"!=typeof e.getElementsByTagName&&e}for(e in d=se.support={},i=se.isXML=function(e){var t=e.namespaceURI,n=(e.ownerDocument||e).documentElement;return!Y.test(t||n&&n.nodeName||"HTML")},T=se.setDocument=function(e){var t,n,r=e?e.ownerDocument||e:m;return r!==C&&9===r.nodeType&&r.documentElement&&(a=(C=r).documentElement,E=!i(C),m!==C&&(n=C.defaultView)&&n.top!==n&&(n.addEventListener?n.addEventListener("unload",oe,!1):n.attachEvent&&n.attachEvent("onunload",oe)),d.attributes=ce(function(e){return e.className="i",!e.getAttribute("className")}),d.getElementsByTagName=ce(function(e){return e.appendChild(C.createComment("")),!e.getElementsByTagName("*").length}),d.getElementsByClassName=K.test(C.getElementsByClassName),d.getById=ce(function(e){return a.appendChild(e).id=k,!C.getElementsByName||!C.getElementsByName(k).length}),d.getById?(b.filter.ID=function(e){var t=e.replace(te,ne);return function(e){return e.getAttribute("id")===t}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&E){var n=t.getElementById(e);return n?[n]:[]}}):(b.filter.ID=function(e){var n=e.replace(te,ne);return function(e){var t="undefined"!=typeof e.getAttributeNode&&e.getAttributeNode("id");return t&&t.value===n}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&E){var n,r,i,o=t.getElementById(e);if(o){if((n=o.getAttributeNode("id"))&&n.value===e)return[o];i=t.getElementsByName(e),r=0;while(o=i[r++])if((n=o.getAttributeNode("id"))&&n.value===e)return[o]}return[]}}),b.find.TAG=d.getElementsByTagName?function(e,t){return"undefined"!=typeof t.getElementsByTagName?t.getElementsByTagName(e):d.qsa?t.querySelectorAll(e):void 0}:function(e,t){var n,r=[],i=0,o=t.getElementsByTagName(e);if("*"===e){while(n=o[i++])1===n.nodeType&&r.push(n);return r}return o},b.find.CLASS=d.getElementsByClassName&&function(e,t){if("undefined"!=typeof t.getElementsByClassName&&E)return t.getElementsByClassName(e)},s=[],v=[],(d.qsa=K.test(C.querySelectorAll))&&(ce(function(e){a.appendChild(e).innerHTML="",e.querySelectorAll("[msallowcapture^='']").length&&v.push("[*^$]="+M+"*(?:''|\"\")"),e.querySelectorAll("[selected]").length||v.push("\\["+M+"*(?:value|"+R+")"),e.querySelectorAll("[id~="+k+"-]").length||v.push("~="),e.querySelectorAll(":checked").length||v.push(":checked"),e.querySelectorAll("a#"+k+"+*").length||v.push(".#.+[+~]")}),ce(function(e){e.innerHTML="";var t=C.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),e.querySelectorAll("[name=d]").length&&v.push("name"+M+"*[*^$|!~]?="),2!==e.querySelectorAll(":enabled").length&&v.push(":enabled",":disabled"),a.appendChild(e).disabled=!0,2!==e.querySelectorAll(":disabled").length&&v.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),v.push(",.*:")})),(d.matchesSelector=K.test(c=a.matches||a.webkitMatchesSelector||a.mozMatchesSelector||a.oMatchesSelector||a.msMatchesSelector))&&ce(function(e){d.disconnectedMatch=c.call(e,"*"),c.call(e,"[s!='']:x"),s.push("!=",$)}),v=v.length&&new RegExp(v.join("|")),s=s.length&&new RegExp(s.join("|")),t=K.test(a.compareDocumentPosition),y=t||K.test(a.contains)?function(e,t){var n=9===e.nodeType?e.documentElement:e,r=t&&t.parentNode;return e===r||!(!r||1!==r.nodeType||!(n.contains?n.contains(r):e.compareDocumentPosition&&16&e.compareDocumentPosition(r)))}:function(e,t){if(t)while(t=t.parentNode)if(t===e)return!0;return!1},D=t?function(e,t){if(e===t)return l=!0,0;var n=!e.compareDocumentPosition-!t.compareDocumentPosition;return n||(1&(n=(e.ownerDocument||e)===(t.ownerDocument||t)?e.compareDocumentPosition(t):1)||!d.sortDetached&&t.compareDocumentPosition(e)===n?e===C||e.ownerDocument===m&&y(m,e)?-1:t===C||t.ownerDocument===m&&y(m,t)?1:u?P(u,e)-P(u,t):0:4&n?-1:1)}:function(e,t){if(e===t)return l=!0,0;var n,r=0,i=e.parentNode,o=t.parentNode,a=[e],s=[t];if(!i||!o)return e===C?-1:t===C?1:i?-1:o?1:u?P(u,e)-P(u,t):0;if(i===o)return pe(e,t);n=e;while(n=n.parentNode)a.unshift(n);n=t;while(n=n.parentNode)s.unshift(n);while(a[r]===s[r])r++;return r?pe(a[r],s[r]):a[r]===m?-1:s[r]===m?1:0}),C},se.matches=function(e,t){return se(e,null,null,t)},se.matchesSelector=function(e,t){if((e.ownerDocument||e)!==C&&T(e),d.matchesSelector&&E&&!A[t+" "]&&(!s||!s.test(t))&&(!v||!v.test(t)))try{var n=c.call(e,t);if(n||d.disconnectedMatch||e.document&&11!==e.document.nodeType)return n}catch(e){A(t,!0)}return 0":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(te,ne),e[3]=(e[3]||e[4]||e[5]||"").replace(te,ne),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||se.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&se.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return G.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":n&&X.test(n)&&(t=h(n,!0))&&(t=n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(te,ne).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=p[e+" "];return t||(t=new RegExp("(^|"+M+")"+e+"("+M+"|$)"))&&p(e,function(e){return t.test("string"==typeof e.className&&e.className||"undefined"!=typeof e.getAttribute&&e.getAttribute("class")||"")})},ATTR:function(n,r,i){return function(e){var t=se.attr(e,n);return null==t?"!="===r:!r||(t+="","="===r?t===i:"!="===r?t!==i:"^="===r?i&&0===t.indexOf(i):"*="===r?i&&-1:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i;function j(e,n,r){return m(n)?k.grep(e,function(e,t){return!!n.call(e,t,e)!==r}):n.nodeType?k.grep(e,function(e){return e===n!==r}):"string"!=typeof n?k.grep(e,function(e){return-1)[^>]*|#([\w-]+))$/;(k.fn.init=function(e,t,n){var r,i;if(!e)return this;if(n=n||q,"string"==typeof e){if(!(r="<"===e[0]&&">"===e[e.length-1]&&3<=e.length?[null,e,null]:L.exec(e))||!r[1]&&t)return!t||t.jquery?(t||n).find(e):this.constructor(t).find(e);if(r[1]){if(t=t instanceof k?t[0]:t,k.merge(this,k.parseHTML(r[1],t&&t.nodeType?t.ownerDocument||t:E,!0)),D.test(r[1])&&k.isPlainObject(t))for(r in t)m(this[r])?this[r](t[r]):this.attr(r,t[r]);return this}return(i=E.getElementById(r[2]))&&(this[0]=i,this.length=1),this}return e.nodeType?(this[0]=e,this.length=1,this):m(e)?void 0!==n.ready?n.ready(e):e(k):k.makeArray(e,this)}).prototype=k.fn,q=k(E);var H=/^(?:parents|prev(?:Until|All))/,O={children:!0,contents:!0,next:!0,prev:!0};function P(e,t){while((e=e[t])&&1!==e.nodeType);return e}k.fn.extend({has:function(e){var t=k(e,this),n=t.length;return this.filter(function(){for(var e=0;e\x20\t\r\n\f]*)/i,he=/^$|^module$|\/(?:java|ecma)script/i,ge={option:[1,""],thead:[1,"","
"],col:[2,"","
"],tr:[2,"","
"],td:[3,"","
"],_default:[0,"",""]};function ve(e,t){var n;return n="undefined"!=typeof e.getElementsByTagName?e.getElementsByTagName(t||"*"):"undefined"!=typeof e.querySelectorAll?e.querySelectorAll(t||"*"):[],void 0===t||t&&A(e,t)?k.merge([e],n):n}function ye(e,t){for(var n=0,r=e.length;nx",y.noCloneChecked=!!me.cloneNode(!0).lastChild.defaultValue;var Te=/^key/,Ce=/^(?:mouse|pointer|contextmenu|drag|drop)|click/,Ee=/^([^.]*)(?:\.(.+)|)/;function ke(){return!0}function Se(){return!1}function Ne(e,t){return e===function(){try{return E.activeElement}catch(e){}}()==("focus"===t)}function Ae(e,t,n,r,i,o){var a,s;if("object"==typeof t){for(s in"string"!=typeof n&&(r=r||n,n=void 0),t)Ae(e,s,n,r,t[s],o);return e}if(null==r&&null==i?(i=n,r=n=void 0):null==i&&("string"==typeof n?(i=r,r=void 0):(i=r,r=n,n=void 0)),!1===i)i=Se;else if(!i)return e;return 1===o&&(a=i,(i=function(e){return k().off(e),a.apply(this,arguments)}).guid=a.guid||(a.guid=k.guid++)),e.each(function(){k.event.add(this,t,i,r,n)})}function De(e,i,o){o?(Q.set(e,i,!1),k.event.add(e,i,{namespace:!1,handler:function(e){var t,n,r=Q.get(this,i);if(1&e.isTrigger&&this[i]){if(r.length)(k.event.special[i]||{}).delegateType&&e.stopPropagation();else if(r=s.call(arguments),Q.set(this,i,r),t=o(this,i),this[i](),r!==(n=Q.get(this,i))||t?Q.set(this,i,!1):n={},r!==n)return e.stopImmediatePropagation(),e.preventDefault(),n.value}else r.length&&(Q.set(this,i,{value:k.event.trigger(k.extend(r[0],k.Event.prototype),r.slice(1),this)}),e.stopImmediatePropagation())}})):void 0===Q.get(e,i)&&k.event.add(e,i,ke)}k.event={global:{},add:function(t,e,n,r,i){var o,a,s,u,l,c,f,p,d,h,g,v=Q.get(t);if(v){n.handler&&(n=(o=n).handler,i=o.selector),i&&k.find.matchesSelector(ie,i),n.guid||(n.guid=k.guid++),(u=v.events)||(u=v.events={}),(a=v.handle)||(a=v.handle=function(e){return"undefined"!=typeof k&&k.event.triggered!==e.type?k.event.dispatch.apply(t,arguments):void 0}),l=(e=(e||"").match(R)||[""]).length;while(l--)d=g=(s=Ee.exec(e[l])||[])[1],h=(s[2]||"").split(".").sort(),d&&(f=k.event.special[d]||{},d=(i?f.delegateType:f.bindType)||d,f=k.event.special[d]||{},c=k.extend({type:d,origType:g,data:r,handler:n,guid:n.guid,selector:i,needsContext:i&&k.expr.match.needsContext.test(i),namespace:h.join(".")},o),(p=u[d])||((p=u[d]=[]).delegateCount=0,f.setup&&!1!==f.setup.call(t,r,h,a)||t.addEventListener&&t.addEventListener(d,a)),f.add&&(f.add.call(t,c),c.handler.guid||(c.handler.guid=n.guid)),i?p.splice(p.delegateCount++,0,c):p.push(c),k.event.global[d]=!0)}},remove:function(e,t,n,r,i){var o,a,s,u,l,c,f,p,d,h,g,v=Q.hasData(e)&&Q.get(e);if(v&&(u=v.events)){l=(t=(t||"").match(R)||[""]).length;while(l--)if(d=g=(s=Ee.exec(t[l])||[])[1],h=(s[2]||"").split(".").sort(),d){f=k.event.special[d]||{},p=u[d=(r?f.delegateType:f.bindType)||d]||[],s=s[2]&&new RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"),a=o=p.length;while(o--)c=p[o],!i&&g!==c.origType||n&&n.guid!==c.guid||s&&!s.test(c.namespace)||r&&r!==c.selector&&("**"!==r||!c.selector)||(p.splice(o,1),c.selector&&p.delegateCount--,f.remove&&f.remove.call(e,c));a&&!p.length&&(f.teardown&&!1!==f.teardown.call(e,h,v.handle)||k.removeEvent(e,d,v.handle),delete u[d])}else for(d in u)k.event.remove(e,d+t[l],n,r,!0);k.isEmptyObject(u)&&Q.remove(e,"handle events")}},dispatch:function(e){var t,n,r,i,o,a,s=k.event.fix(e),u=new Array(arguments.length),l=(Q.get(this,"events")||{})[s.type]||[],c=k.event.special[s.type]||{};for(u[0]=s,t=1;t\x20\t\r\n\f]*)[^>]*)\/>/gi,qe=/\s*$/g;function Oe(e,t){return A(e,"table")&&A(11!==t.nodeType?t:t.firstChild,"tr")&&k(e).children("tbody")[0]||e}function Pe(e){return e.type=(null!==e.getAttribute("type"))+"/"+e.type,e}function Re(e){return"true/"===(e.type||"").slice(0,5)?e.type=e.type.slice(5):e.removeAttribute("type"),e}function Me(e,t){var n,r,i,o,a,s,u,l;if(1===t.nodeType){if(Q.hasData(e)&&(o=Q.access(e),a=Q.set(t,o),l=o.events))for(i in delete a.handle,a.events={},l)for(n=0,r=l[i].length;n")},clone:function(e,t,n){var r,i,o,a,s,u,l,c=e.cloneNode(!0),f=oe(e);if(!(y.noCloneChecked||1!==e.nodeType&&11!==e.nodeType||k.isXMLDoc(e)))for(a=ve(c),r=0,i=(o=ve(e)).length;r").attr(n.scriptAttrs||{}).prop({charset:n.scriptCharset,src:n.url}).on("load error",i=function(e){r.remove(),i=null,e&&t("error"===e.type?404:200,e.type)}),E.head.appendChild(r[0])},abort:function(){i&&i()}}});var Vt,Gt=[],Yt=/(=)\?(?=&|$)|\?\?/;k.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=Gt.pop()||k.expando+"_"+kt++;return this[e]=!0,e}}),k.ajaxPrefilter("json jsonp",function(e,t,n){var r,i,o,a=!1!==e.jsonp&&(Yt.test(e.url)?"url":"string"==typeof e.data&&0===(e.contentType||"").indexOf("application/x-www-form-urlencoded")&&Yt.test(e.data)&&"data");if(a||"jsonp"===e.dataTypes[0])return r=e.jsonpCallback=m(e.jsonpCallback)?e.jsonpCallback():e.jsonpCallback,a?e[a]=e[a].replace(Yt,"$1"+r):!1!==e.jsonp&&(e.url+=(St.test(e.url)?"&":"?")+e.jsonp+"="+r),e.converters["script json"]=function(){return o||k.error(r+" was not called"),o[0]},e.dataTypes[0]="json",i=C[r],C[r]=function(){o=arguments},n.always(function(){void 0===i?k(C).removeProp(r):C[r]=i,e[r]&&(e.jsonpCallback=t.jsonpCallback,Gt.push(r)),o&&m(i)&&i(o[0]),o=i=void 0}),"script"}),y.createHTMLDocument=((Vt=E.implementation.createHTMLDocument("").body).innerHTML="
",2===Vt.childNodes.length),k.parseHTML=function(e,t,n){return"string"!=typeof e?[]:("boolean"==typeof t&&(n=t,t=!1),t||(y.createHTMLDocument?((r=(t=E.implementation.createHTMLDocument("")).createElement("base")).href=E.location.href,t.head.appendChild(r)):t=E),o=!n&&[],(i=D.exec(e))?[t.createElement(i[1])]:(i=we([e],t,o),o&&o.length&&k(o).remove(),k.merge([],i.childNodes)));var r,i,o},k.fn.load=function(e,t,n){var r,i,o,a=this,s=e.indexOf(" ");return-1").append(k.parseHTML(e)).find(r):e)}).always(n&&function(e,t){a.each(function(){n.apply(this,o||[e.responseText,t,e])})}),this},k.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(e,t){k.fn[t]=function(e){return this.on(t,e)}}),k.expr.pseudos.animated=function(t){return k.grep(k.timers,function(e){return t===e.elem}).length},k.offset={setOffset:function(e,t,n){var r,i,o,a,s,u,l=k.css(e,"position"),c=k(e),f={};"static"===l&&(e.style.position="relative"),s=c.offset(),o=k.css(e,"top"),u=k.css(e,"left"),("absolute"===l||"fixed"===l)&&-1<(o+u).indexOf("auto")?(a=(r=c.position()).top,i=r.left):(a=parseFloat(o)||0,i=parseFloat(u)||0),m(t)&&(t=t.call(e,n,k.extend({},s))),null!=t.top&&(f.top=t.top-s.top+a),null!=t.left&&(f.left=t.left-s.left+i),"using"in t?t.using.call(e,f):c.css(f)}},k.fn.extend({offset:function(t){if(arguments.length)return void 0===t?this:this.each(function(e){k.offset.setOffset(this,t,e)});var e,n,r=this[0];return r?r.getClientRects().length?(e=r.getBoundingClientRect(),n=r.ownerDocument.defaultView,{top:e.top+n.pageYOffset,left:e.left+n.pageXOffset}):{top:0,left:0}:void 0},position:function(){if(this[0]){var e,t,n,r=this[0],i={top:0,left:0};if("fixed"===k.css(r,"position"))t=r.getBoundingClientRect();else{t=this.offset(),n=r.ownerDocument,e=r.offsetParent||n.documentElement;while(e&&(e===n.body||e===n.documentElement)&&"static"===k.css(e,"position"))e=e.parentNode;e&&e!==r&&1===e.nodeType&&((i=k(e).offset()).top+=k.css(e,"borderTopWidth",!0),i.left+=k.css(e,"borderLeftWidth",!0))}return{top:t.top-i.top-k.css(r,"marginTop",!0),left:t.left-i.left-k.css(r,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){var e=this.offsetParent;while(e&&"static"===k.css(e,"position"))e=e.offsetParent;return e||ie})}}),k.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(t,i){var o="pageYOffset"===i;k.fn[t]=function(e){return _(this,function(e,t,n){var r;if(x(e)?r=e:9===e.nodeType&&(r=e.defaultView),void 0===n)return r?r[i]:e[t];r?r.scrollTo(o?r.pageXOffset:n,o?n:r.pageYOffset):e[t]=n},t,e,arguments.length)}}),k.each(["top","left"],function(e,n){k.cssHooks[n]=ze(y.pixelPosition,function(e,t){if(t)return t=_e(e,n),$e.test(t)?k(e).position()[n]+"px":t})}),k.each({Height:"height",Width:"width"},function(a,s){k.each({padding:"inner"+a,content:s,"":"outer"+a},function(r,o){k.fn[o]=function(e,t){var n=arguments.length&&(r||"boolean"!=typeof e),i=r||(!0===e||!0===t?"margin":"border");return _(this,function(e,t,n){var r;return x(e)?0===o.indexOf("outer")?e["inner"+a]:e.document.documentElement["client"+a]:9===e.nodeType?(r=e.documentElement,Math.max(e.body["scroll"+a],r["scroll"+a],e.body["offset"+a],r["offset"+a],r["client"+a])):void 0===n?k.css(e,t,i):k.style(e,t,n,i)},s,n?e:void 0,n)}})}),k.each("blur focus focusin focusout resize scroll click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup contextmenu".split(" "),function(e,n){k.fn[n]=function(e,t){return 0Close Notification', + _tpl_title: '[[title]]', + _tpl_item: '', + _tpl_wrap: '
', + _notificaiton_queue: [], + + + /** + * Add a notification to the queue. + * @param {Object} params The object that contains all the options for drawing the notification + * @return {Integer} The specific numeric id to that gritter notification + */ + addToQueue: function(params){ + // Handle straight text + if(typeof(params) === 'string'){ + params = {text:params}; + } + + this._item_count++; + this._notificaiton_queue.push($.extend(params, {item_number: this._item_count})); //add this notification to the end of the queue. include its unique id which is the item_count. + this._updateDomFromQueue(); + return this._item_count; + }, + + + /** + * Check whether we can move a notification from the queue onto the DOM. + */ + _updateDomFromQueue: function(){ + var maxNotifications = $.gritter.options.max_to_display; + var isLimited = maxNotifications > 0; // if maxNotifications is greater than 0, then there is a set limit. + if(!isLimited || $('.gritter-item-wrapper').length < maxNotifications){ //no limit or have not reached the max yet + if(this._notificaiton_queue.length > 0){ //there's something in the queue to add + this._addToDom(this._notificaiton_queue.shift()); //put the first item in the queue onto the dom + } + } + }, + + /** + * Add a gritter notification to the screen + * @param {Object} params The object that contains all the options for drawing the notification + */ + _addToDom: function(params){ + + // We might have some issues if we don't have a title or text! + if(params.text === null){ + throw 'You must supply "text" parameter.'; + } + + // Check the options and set them once + if(!this._is_setup){ + this._runSetup(); + } + + // Basics + var title = params.title, + text = params.text, + image = params.image || '', + sticky = params.sticky || false, + item_class = params.class_name || $.gritter.options.class_name, + position = $.gritter.options.position, + time_alive = params.time || '', + widget_click_close = params.close_on_click || false; + + //this._testBorderRadius(); + this._verifyWrapper(); + + var number = params.item_number, + tmp = this._tpl_item; + + // Assign callbacks + $(['before_open', 'after_open', 'before_close', 'after_close','on_click']).each(function(i, val){ + Gritter['_' + val + '_' + number] = ($.isFunction(params[val])) ? params[val] : function(){}; + }); + + // Reset + this._custom_timer = 0; + + // A custom fade time set + if(time_alive){ + this._custom_timer = time_alive; + } + + var image_str = (image !== '') ? '' : '', + class_name = (image !== '') ? 'gritter-with-image' : 'gritter-without-image'; + + // String replacements on the template + if(title){ + title = this._str_replace('[[title]]',title,this._tpl_title); + }else{ + title = ''; + } + + tmp = this._str_replace( + ['[[title]]', '[[text]]', '[[close]]', '[[image]]', '[[number]]', '[[class_name]]', '[[item_class]]'], + [title, text, this._tpl_close, image_str, number, class_name, item_class], tmp + ); + + // If it's false, don't show another gritter message + if(this['_before_open_' + number]() === false){ + return false; + } + + $('#gritter-notice-wrapper').addClass(position).append(tmp); + + var item = $('#gritter-item-' + number); + + item.fadeIn(this.fade_in_speed, function(){ + Gritter['_after_open_' + number]($(this)); + }); + + if(!sticky){ + this._setFadeTimer(item, number); + } + + // Add on_click listener + $(item).click(function(){ + Gritter['_' + 'on_click' + '_' + number]($(this)); + if(widget_click_close) { + Gritter.removeSpecific(number, {}, $(item), true); + } + }); + + /** + * In order to avoid conflicts between on_click and before/after_close + * Disable on_click event when hover over close button + * Enable on_click event on mouse leave + */ + $(item).find('.gritter-close').bind('mouseenter mouseleave', function(event){ + if(event.type == 'mouseenter'){ + $(item).off("click"); + } else { + $(item).on("click",function(){ + Gritter['_' + 'on_click' + '_' + number]($(this)); + if(widget_click_close) { + Gritter.removeSpecific(number, {}, $(item), true); + } + }); + } + }); + + // Bind the hover/unhover states + $(item).bind('mouseenter mouseleave', function(event){ + if(event.type === 'mouseenter'){ + if(!sticky){ + Gritter._restoreItemIfFading($(this), number); + } + } + else { + if(!sticky){ + Gritter._setFadeTimer($(this), number); + } + } + /*Gritter._hoverState($(this), event.type);*/ + }); + + // Clicking (X) makes the perdy thing close + $(item).find('.gritter-close').click(function(){ + Gritter.removeSpecific(number, {}, null, true); + return false; + }); + }, + + /** + * If we don't have any more gritter notifications, get rid of the wrapper using this check + * @private + * @param {Integer} unique_id The ID of the element that was just deleted, use it for a callback + * @param {Object} e The jQuery element that we're going to perform the remove() action on + * @param {Boolean} manual_close Did we close the gritter dialog with the (X) button + */ + _countRemoveWrapper: function(unique_id, e, manual_close){ + + // Remove it then run the callback function + e.remove(); + this['_after_close_' + unique_id](e, manual_close); + + // Check if the wrapper is empty, if it is.. remove the wrapper + if($('.gritter-item-wrapper').length === 0){ + $('#gritter-notice-wrapper').remove(); + } + + }, + + + /** + * Fade out an element after it's been on the screen for x amount of time + * @private + * @param {Object} e The jQuery element to get rid of + * @param {Integer} unique_id The id of the element to remove + * @param {Object} [params] An optional list of params to set fade speeds etc. + * @param {Boolean} [unbind_events] Unbind the mouseenter/mouseleave events if they click (X) + */ + _fade: function(e, unique_id /*, params, unbind_events */){ + + var params = arguments[2] || {}, + unbind_events = arguments[3] || false, + fade = (typeof(params.fade) !== 'undefined') ? params.fade : true, + fade_out_speed = params.speed || this.fade_out_speed, + manual_close = unbind_events; + + this['_before_close_' + unique_id](e, manual_close); + + // If this is true, then we are coming from clicking the (X) + if(unbind_events){ + e.unbind('mouseenter mouseleave'); + } + + // Fade it out or remove it + if(fade){ + + e.animate({ + opacity: 0 + }, fade_out_speed, function(){ + e.animate({ height: 0 }, 300, function(){ + Gritter._countRemoveWrapper(unique_id, e, manual_close); + }); + }); + + } else { + + this._countRemoveWrapper(unique_id, e); + + } + + }, + + /** + * Remove a specific notification based on an ID + * @param {Integer} unique_id The ID used to delete a specific notification + * @param {Object} params A set of options passed in to determine how to get rid of it + * @param {Object} [e] The optional jQuery element that we're "fading" then removing + * @param {Boolean} [unbind_events] If we clicked on the (X) we set this to true to unbind mouseenter/mouseleave + */ + removeSpecific: function(unique_id, params /*, e, unbind_events */){ + + var e = arguments[2] || false, + unbind_events = arguments[3] || false; + + if(!e){ + e = $('#gritter-item-' + unique_id); + } + + // We set the fourth param to let the _fade function know to + // unbind the "mouseleave" event. Once you click (X) there's no going back! + this._fade(e, unique_id, params || {}, unbind_events); + + }, + + /** + * If the item is fading out and we hover over it, restore it! + * @private + * @param {Object} e The HTML element to remove + * @param {Integer} unique_id The ID of the element + */ + _restoreItemIfFading: function(e, unique_id){ + + clearTimeout(this['_int_id_' + unique_id]); + e.stop().css({ opacity: '', height: '' }); + + }, + + /** + * Setup the global options - only once + * @private + */ + _runSetup: function(){ + + for(var opt in $.gritter.options){ + this[opt] = $.gritter.options[opt]; + } + this._is_setup = 1; + + }, + + /** + * Set the notification to fade out after a certain amount of time + * @private + * @param {Object} item The HTML element we're dealing with + * @param {Integer} unique_id The ID of the element + */ + _setFadeTimer: function(e, unique_id){ + + var timer_str = (this._custom_timer) ? this._custom_timer : this.time; + this['_int_id_' + unique_id] = setTimeout(function(){ + Gritter._fade(e, unique_id); + }, timer_str); + + }, + + /** + * Bring everything to a halt + * @param {Object} params A list of callback functions to pass when all notifications are removed + */ + stop: function(params){ + + // callbacks (if passed) + var before_close = ($.isFunction(params.before_close)) ? params.before_close : function(){}; + var after_close = ($.isFunction(params.after_close)) ? params.after_close : function(){}; + + var wrap = $('#gritter-notice-wrapper'); + before_close(wrap); + wrap.fadeOut(function(){ + $(this).remove(); + after_close(); + }); + + }, + + /** + * An extremely handy PHP function ported to JS, works well for templating + * @private + * @param {String/Array} search A list of things to search for + * @param {String/Array} replace A list of things to replace the searches with + * @return {String} sa The output + */ + _str_replace: function(search, replace, subject, count){ + + var i = 0, j = 0, temp = '', repl = '', sl = 0, fl = 0, + f = [].concat(search), + r = [].concat(replace), + s = subject, + ra = r instanceof Array, sa = s instanceof Array; + s = [].concat(s); + + if(count){ + this.window[count] = 0; + } + + for(i = 0, sl = s.length; i < sl; i++){ + + if(s[i] === ''){ + continue; + } + + for (j = 0, fl = f.length; j < fl; j++){ + + temp = s[i] + ''; + repl = ra ? (r[j] !== undefined ? r[j] : '') : r[0]; + s[i] = (temp).split(f[j]).join(repl); + + if(count && s[i] !== temp){ + this.window[count] += (temp.length-s[i].length) / f[j].length; + } + + } + } + + return sa ? s : s[0]; + + }, + + /** + * A check to make sure we have something to wrap our notices with + * @private + */ + _verifyWrapper: function(){ + + if($('#gritter-notice-wrapper').length === 0){ + $('#c2canvasdiv').append(this._tpl_wrap); + } + + } + + } + +})(jQuery); diff --git a/gversion/gs/ovo/jttp.png b/gversion/gs/ovo/jttp.png new file mode 100644 index 0000000..be90d91 Binary files /dev/null and b/gversion/gs/ovo/jttp.png differ diff --git a/gversion/gs/ovo/knight.png b/gversion/gs/ovo/knight.png new file mode 100644 index 0000000..d2a8786 Binary files /dev/null and b/gversion/gs/ovo/knight.png differ diff --git a/gversion/gs/ovo/languages.json b/gversion/gs/ovo/languages.json new file mode 100644 index 0000000..a3867a4 --- /dev/null +++ b/gversion/gs/ovo/languages.json @@ -0,0 +1,5304 @@ +{ + "version": "1.4.4", + "languages": { + "en-us": "English (US)", + "fr-fr": "Français", + "pt-br": "Português (BR)", + "es-es": "Español", + "it-it": "Italiano" + }, + "data": { + "en-us": { + "play": { + "text": "PLAY", + "extra": [""] + }, + "playlevelmenu": { + "text": "PLAY", + "extra": [""] + }, + "resume": { + "text": "RESUME", + "extra": [""] + }, + "restart": { + "text": "RESTART", + "extra": [""] + }, + "levels": { + "text": "LEVELS", + "extra": [""] + }, + "credits": { + "text": "CREDITS", + "extra": [""] + }, + "removemidrollads": { + "text": "REMOVE MIDROLL ADS", + "extra": [""] + }, + "randomskin": { + "text": "RANDOM SKIN", + "extra": [""] + }, + "adblocktitle": { + "text": "Adblock detected", + "extra": [""] + }, + "adblockdescription": { + "text": "Disable adblock and try again", + "extra": [""] + }, + "offlineready": { + "text": "Offline ready !", + "extra": [""] + }, + "offlinereadydesc": { + "text": "You can now play the game offline !", + "extra": [""] + }, + "updatefound": { + "text": "Update found !", + "extra": [""] + }, + "updatefounddesc": { + "text": "A new update has been found, and is getting downloaded in the background", + "extra": [""] + }, + "updateready": { + "text": "Update ready !", + "extra": [""] + }, + "updatereadydesc": { + "text": "A new update has been downloaded ! Reload or click here to load the new version", + "extra": [""] + }, + "tip1": { + "text": "Did you know you can play this game on mobile ?", + "extra": [""] + }, + "tip2": { + "text": "============== Want to speedrun this game? ============== Join the community at discord.gg/ hTNX225Njt", + "extra": [""] + }, + "tip3": { + "text": "Pressing R restarts the level. Ctrl + R resets the whole run in Play mode", + "extra": [""] + }, + "tip4": { + "text": "Activate hard mode in the options if you're a tough player", + "extra": [""] + }, + "tip5": { + "text": "Activate advanced mode in the options to get level replays", + "extra": [""] + }, + "tip6": { + "text": "In advanced mode, you can toggle debug mode in the pause menu or using F2", + "extra": [""] + }, + "selectlang": { + "text": "Select language", + "extra": [""] + }, + "ad1": { + "text": "No ad available", + "extra": [""] + }, + "ad2": { + "text": "Midrolls are no more", + "extra": [""] + }, + "ad3": { + "text": "Midrolls ads will no longer appear in the game", + "extra": [""] + }, + "tip7": { + "text": "On desktop you can change the keys you wish to use for movement in the options", + "extra": [""] + }, + "default": { + "text": "Default", + "extra": [""] + }, + "electrical": { + "text": "Electrical", + "extra": [""] + }, + "pole": { + "text": "Pole", + "extra": [""] + }, + "pinkguy": { + "text": "Pink guy", + "extra": [""] + }, + "ovoplus": { + "text": "OvO+", + "extra": [""] + }, + "knight": { + "text": "Knight", + "extra": [""] + }, + "dknight": { + "text": "Dark Knight", + "extra": [""] + }, + "lknight": { + "text": "Light Knight", + "extra": [""] + }, + "astronaut": { + "text": "Astronaut", + "extra": [""] + }, + "alien": { + "text": "Alien", + "extra": [""] + }, + "erigato": { + "text": "Erigato", + "extra": [""] + }, + "batter": { + "text": "Batter", + "extra": [""] + }, + "adalich": { + "text": "Adalich", + "extra": [""] + }, + "fallen": { + "text": "Fallen", + "extra": [""] + }, + "pulse": { + "text": "Pulse", + "extra": [""] + }, + "materwelon": { + "text": "MaterWelon", + "extra": [""] + }, + "flickd": { + "text": "Fl1ckd", + "extra": [""] + }, + "theliljoker": { + "text": "TheLil Joker", + "extra": [""] + }, + "amogus": { + "text": "Among us", + "extra": [""] + }, + "french": { + "text": "French", + "extra": [""] + }, + "english": { + "text": "English", + "extra": [""] + }, + "spanish": { + "text": "Spanish", + "extra": [""] + }, + "brazilian": { + "text": "Brazilian", + "extra": [""] + }, + "shyguy": { + "text": "ShyGuy", + "extra": [""] + }, + "hidden": { + "text": "Hidden", + "extra": [""] + }, + "choose": { + "text": "Choose", + "extra": [""] + }, + "chosen": { + "text": "Chosen", + "extra": [""] + }, + "price": { + "text": "Price: {0}", + "extra": [""] + }, + "achievement": { + "text": "Achievement: {0}", + "extra": [""] + }, + "buy": { + "text": "Buy", + "extra": [""] + }, + "acquired": { + "text": "Acquired", + "extra": [""] + }, + "back": { + "text": "BACK", + "extra": [""] + }, + "a1t": { + "text": "OvO", + "extra": [""] + }, + "a1d": { + "text": "What's this?", + "extra": [""] + }, + "a2t": { + "text": "Hittin da head", + "extra": [""] + }, + "a2d": { + "text": "Stop it please", + "extra": [""] + }, + "a3t": { + "text": "Hurting da head", + "extra": [""] + }, + "a3d": { + "text": ":(", + "extra": [""] + }, + "a4t": { + "text": "Tutorials", + "extra": [""] + }, + "a4d": { + "text": "Finish the tutorial section", + "extra": [""] + }, + "a5t": { + "text": "Getting serious", + "extra": [""] + }, + "a5d": { + "text": "Finish the Getting serious section", + "extra": [""] + }, + "a6t": { + "text": "Mechanics", + "extra": [""] + }, + "a6d": { + "text": "Finish the Mechanics section", + "extra": [""] + }, + "a7t": { + "text": "Higher Order", + "extra": [""] + }, + "a7d": { + "text": "Finish the higher order section", + "extra": [""] + }, + "a8t": { + "text": "OvO Space Program", + "extra": [""] + }, + "a8d": { + "text": "Finish the OvO Space Program section", + "extra": [""] + }, + "a9t": { + "text": "A mystical Journey", + "extra": [""] + }, + "a9d": { + "text": "Finish the journey through the portal section", + "extra": [""] + }, + "a10t": { + "text": "Community work", + "extra": [""] + }, + "a10d": { + "text": "Finish the community levels", + "extra": [""] + }, + "a11t": { + "text": "Purified", + "extra": [""] + }, + "a11d": { + "text": "Finish every level", + "extra": [""] + }, + "a12t": { + "text": "Coins !", + "extra": [""] + }, + "a12d": { + "text": "Collect a coin", + "extra": [""] + }, + "a13t": { + "text": "Coin Enthusiast", + "extra": [""] + }, + "a13d": { + "text": "Collect 5 coins", + "extra": [""] + }, + "a14t": { + "text": "Coin Connoiseur", + "extra": [""] + }, + "a14d": { + "text": "Collect 10 coins", + "extra": [""] + }, + "a15t": { + "text": "Coin Hunter", + "extra": [""] + }, + "a15d": { + "text": "Collect 30 coins", + "extra": [""] + }, + "a16t": { + "text": "Coin God", + "extra": [""] + }, + "a16d": { + "text": "Collect 4O coins", + "extra": [""] + }, + "a17t": { + "text": "Secret coin", + "extra": [""] + }, + "a17d": { + "text": "Collect the secret coin", + "extra": [""] + }, + "a18t": { + "text": "Runner", + "extra": [""] + }, + "a18d": { + "text": "Finish the game in less than 30mn", + "extra": [""] + }, + "a19t": { + "text": "Speedrunner", + "extra": [""] + }, + "a19d": { + "text": "Finish the game in less than 20mn", + "extra": [""] + }, + "a20t": { + "text": "Velocity Master", + "extra": [""] + }, + "a20d": { + "text": "Finish the game in less than 15mn", + "extra": [""] + }, + "a21t": { + "text": "Top Charts", + "extra": [""] + }, + "a21d": { + "text": "Finish the game in less than 12mn", + "extra": [""] + }, + "a22t": { + "text": "Light Speed", + "extra": [""] + }, + "a22d": { + "text": "Finish the game in less than 10mn", + "extra": [""] + }, + "likemagic": { + "text": "Like magic", + "extra": [""] + }, + "unlockall": { + "text": "You unlocked every level!", + "extra": [""] + }, + "achievementunlocked": { + "text": "Achievement unlocked !", + "extra": [""] + }, + "skinunlocked": { + "text": "Skin Unlocked !", + "extra": [""] + }, + "goldearned": { + "text": "Gold earned !", + "extra": [""] + }, + "xgoldearned": { + "text": "{0} Gold earned", + "extra": [""] + }, + "locked": { + "text": "Locked", + "extra": [""] + }, + "music": { + "text": "Music", + "extra": [""] + }, + "sounds": { + "text": "Sounds", + "extra": [""] + }, + "hard": { + "text": "Hard mode", + "extra": [""] + }, + "advanced": { + "text": "Advanced mode", + "extra": [""] + }, + "inputs": { + "text": "Inputs", + "extra": [""] + }, + "savedata": { + "text": "Data", + "extra": [""] + }, + "savedatatext": { + "text": "Save Data", + "extra": [""] + }, + "mobilemode": { + "text": "Device", + "extra": [""] + }, + "up": { + "text": "Up", + "extra": [""] + }, + "down": { + "text": "Down", + "extra": [""] + }, + "left": { + "text": "Left", + "extra": [""] + }, + "right": { + "text": "Right", + "extra": [""] + }, + "setkey": { + "text": "Set a key…", + "extra": [""] + }, + "collectedcoins": { + "text": "Collected Coins", + "extra": [""] + }, + "clearsave": { + "text": "Clear Save", + "extra": [""] + }, + "clearcoins": { + "text": "Clear Coins", + "extra": [""] + }, + "autodetectinput": { + "text": "Auto detect", + "extra": [""] + }, + "forcemobile": { + "text": "Force mobile", + "extra": [""] + }, + "forcedesktop": { + "text": "Force desktop", + "extra": [""] + }, + "whatdeviceinput": { + "text": "What is your device?", + "extra": [""] + }, + "madebydedra": { + "text": "Made by Dedra", + "extra": [""] + }, + "poweredby": { + "text": "Powered by Construct 2", + "extra": [""] + }, + "runsection": { + "text": "Run Section", + "extra": [""] + }, + "basics": { + "text": "Basics", + "extra": [""] + }, + "gettingserious": { + "text": "Getting serious", + "extra": [""] + }, + "higherorder": { + "text": "Higher Order", + "extra": [""] + }, + "mechanicis": { + "text": "Mechanics", + "extra": [""] + }, + "ovospaceprogram": { + "text": "OvO Space Program", + "extra": [""] + }, + "jttp": { + "text": "Journey Through the portal", + "extra": [""] + }, + "community": { + "text": "Community levels", + "extra": [""] + }, + "besttime": { + "text": "Best time", + "extra": [""] + }, + "individuallevels": { + "text": "Individual levels", + "extra": [""] + }, + "loadreplay": { + "text": "Load Replay", + "extra": [""] + }, + "adplaying": { + "text": "An ad should be playing right now", + "extra": [""] + }, + "toggledebug": { + "text": "Toggle debug", + "extra": [""] + }, + "downloadreplay": { + "text": "Download Replay", + "extra": [""] + }, + "next": { + "text": "NEXT", + "extra": [""] + }, + "replay": { + "text": "REPLAY", + "extra": [""] + }, + "pause": { + "text": "PAUSE", + "extra": [""] + }, + "quit": { + "text": "QUIT", + "extra": [""] + }, + "lvltxt1-1": { + "text": "Hello, and welcome to OvO", + "extra": [""] + }, + "lvltxt1-2": { + "text": "Use arrow keys to move", + "extra": [""] + }, + "lvltxt1-3": { + "text": "Press Up to jump", + "extra": [""] + }, + "lvltxt1-4": { + "text": "This is the end of the level", + "extra": [""] + }, + "lvltxt2-1": { + "text": "Jump", + "extra": [""] + }, + "lvltxt2-2": { + "text": "Go next to the wall", + "extra": [""] + }, + "lvltxt2-3": { + "text": "And jump higher", + "extra": [""] + }, + "lvltxt2-4": { + "text": "Jump on place and press down to smash the ground", + "extra": [""] + }, + "lvltxt2-5": { + "text": "(you can smash this)", + "extra": [""] + }, + "lvltxt2-6": { + "text": "Jump after a smash", + "extra": [""] + }, + "lvltxt2-7": { + "text": "To jump higher", + "extra": [""] + }, + "lvltxt3-1": { + "text": "You can slide down walls", + "extra": [""] + }, + "lvltxt3-2": { + "text": "Jump while sliding to wall jump", + "extra": [""] + }, + "lvltxt4-1": { + "text": "You can even slide!", + "extra": [""] + }, + "lvltxt4-2": { + "text": "Press the down key", + "extra": [""] + }, + "lvltxt4-3": { + "text": "Jump while sliding to dive", + "extra": [""] + }, + "lvltxt4-4": { + "text": "Be careful not to hit your head", + "extra": [""] + }, + "lvltxt5-1": { + "text": "Those are bad guys", + "extra": [""] + }, + "lvltxt5-2": { + "text": "Try to do a smash while going right to Dive", + "extra": [""] + }, + "lvltxt6-1": { + "text": "Now dive again", + "extra": [""] + }, + "lvltxt6-2": { + "text": "And jump", + "extra": [""] + }, + "lvltxt6-3": { + "text": "Those are good guys", + "extra": [""] + }, + "lvltxt7-2": { + "text": "Smashing the jumpers won't activate them", + "extra": [""] + }, + "lvltxt8-1": { + "text": "Jump", + "extra": [""] + }, + "lvltxt8-2": { + "text": "Dive", + "extra": [""] + }, + "lvltxt8-3": { + "text": "Re-jump", + "extra": [""] + }, + "lvltxt9-1": { + "text": "Hey... This is", + "extra": [""] + }, + "lvltxt9-2": { + "text": "SMASH!", + "extra": [""] + }, + "lvltxt9-3": { + "text": "\"Getting SERIOUS\"", + "extra": [""] + }, + "lvltxt10-1": { + "text": "Strong", + "extra": [""] + }, + "lvltxt10-2": { + "text": "Normal", + "extra": [""] + }, + "lvltxt10-3": { + "text": "Weak", + "extra": [""] + }, + "lvltct10-4": { + "text": "(Sliding increases velocity)", + "extra": [""] + }, + "lvltxt10-4": { + "text": "Trust", + "extra": [""] + }, + "lvltxt14-1": { + "text": "Here !", + "extra": [""] + }, + "lvltxt17-1": { + "text": "Slow down!", + "extra": [""] + }, + "lvltxt19-1": { + "text": "Press Up and Down", + "extra": [""] + }, + "lvltxt23-1": { + "text": "Believe and Dive", + "extra": [""] + }, + "lvltxt28-1": { + "text": "Wrong way :)", + "extra": [""] + }, + "lvltxt25-1": { + "text": "Sorry, nothing here...", + "extra": [""] + }, + "lvltxt25-2": { + "text": "This can be opened somehow...", + "extra": [""] + }, + "lvltxt51-1": { + "text": "By Leetle Toady", + "extra": [""] + }, + "lvltxt33-1": { + "text": "Take part in the OvO space Program!", + "extra": [""] + }, + "lvltxt33-2": { + "text": "This way ---->", + "extra": [""] + }, + "lvltxt33-3": { + "text": "Step 1 is...", + "extra": [""] + }, + "lvltxt33-4": { + "text": "ROCKETS!", + "extra": [""] + }, + "lvltxt33-5": { + "text": "MORE ROCKETS!", + "extra": [""] + }, + "lvltxt33-6": { + "text": "MORE ROCKEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEETS!", + "extra": [""] + }, + "lvltxt34-1": { + "text": "You will have to outrange rockets however you can", + "extra": [""] + }, + "lvltxt38-1": { + "text": "Move", + "extra": [""] + }, + "lvltxt41-1": { + "text": "Quickly", + "extra": [""] + }, + "lvltxt41-2": { + "text": "Through", + "extra": [""] + }, + "lvltxt41-3": { + "text": "The", + "extra": [""] + }, + "lvltxt41-4": { + "text": "Portal!", + "extra": [""] + }, + "": { + "text": "", + "extra": [""] + }, + "lvltxt40-1": { + "text": "<--- Dive", + "extra": [""] + }, + "level1": { + "text": "Start", + "extra": [""] + }, + "level2": { + "text": "Hard", + "extra": [""] + }, + "level3": { + "text": "Harder", + "extra": [""] + }, + "level4": { + "text": "Hardest", + "extra": [""] + }, + "level5": { + "text": "Hellish", + "extra": [""] + }, + "level6": { + "text": "Impossible", + "extra": [""] + }, + "level7": { + "text": "Godlike", + "extra": [""] + }, + "level8": { + "text": "Jump & Dive", + "extra": [""] + }, + "level9": { + "text": "A wise Decision", + "extra": [""] + }, + "level10": { + "text": "A matter of strength", + "extra": [""] + }, + "level11": { + "text": "Reactivity", + "extra": [""] + }, + "level12": { + "text": "A little wall maze", + "extra": [""] + }, + "level13": { + "text": "A matter of speed", + "extra": [""] + }, + "level14": { + "text": "Timing", + "extra": [""] + }, + "level15": { + "text": "Deadly contraption I", + "extra": [""] + }, + "level16": { + "text": "A way down", + "extra": [""] + }, + "level17": { + "text": "Take it slow", + "extra": [""] + }, + "level18": { + "text": "Mirrored Room I", + "extra": [""] + }, + "level19": { + "text": "Little Spikehouse", + "extra": [""] + }, + "level20": { + "text": "Dormant contraption", + "extra": [""] + }, + "level21": { + "text": "A way up", + "extra": [""] + }, + "level22": { + "text": "Iterations", + "extra": [""] + }, + "level23": { + "text": "Leap of faith", + "extra": [""] + }, + "level24": { + "text": "Maelstrom", + "extra": [""] + }, + "level25": { + "text": "Simple Mechanics", + "extra": [""] + }, + "level26": { + "text": "Three doors", + "extra": [""] + }, + "level27": { + "text": "Awake contraption", + "extra": [""] + }, + "level28": { + "text": "Deadly contraption II", + "extra": [""] + }, + "level29": { + "text": "Friendly little platform I", + "extra": [""] + }, + "level30": { + "text": "Friendly little platform II", + "extra": [""] + }, + "level31": { + "text": "Hilarious Quadrilateral", + "extra": [""] + }, + "level32": { + "text": "Run for your life", + "extra": [""] + }, + "level33": { + "text": "Selection Exam", + "extra": [""] + }, + "level34": { + "text": "Test of intelligence", + "extra": [""] + }, + "level35": { + "text": "Test of instinct", + "extra": [""] + }, + "level36": { + "text": "Test of speed", + "extra": [""] + }, + "level37": { + "text": "Test of accuracy", + "extra": [""] + }, + "level38": { + "text": "Test of adaptation", + "extra": [""] + }, + "level39": { + "text": "Graduation?", + "extra": [""] + }, + "level40": { + "text": "Final Exam", + "extra": [""] + }, + "level41": { + "text": "Initialization", + "extra": [""] + }, + "level42": { + "text": "Procedural", + "extra": [""] + }, + "level43": { + "text": "Hysterical Quadrilatral", + "extra": [""] + }, + "level44": { + "text": "Back-propagation", + "extra": [""] + }, + "level45": { + "text": "Arithmetic", + "extra": [""] + }, + "level46": { + "text": "Recursion", + "extra": [""] + }, + "level47": { + "text": "Rocket Science", + "extra": [""] + }, + "level48": { + "text": "Binary", + "extra": [""] + }, + "level49": { + "text": "The Iron maiden", + "extra": [""] + }, + "level50": { + "text": "Threading the needle", + "extra": [""] + }, + "level51": { + "text": "The twin towers", + "extra": [""] + }, + "level52": { + "text": "Andromeda", + "extra": [""] + }, + "yourfinaltime": { + "text": "Your Final Time", + "extra": [""] + }, + "timerforthislevel": { + "text": "Timer for this level", + "extra": [""] + }, + "tryagainhardmode": { + "text": "Try again in Hard mode !", + "extra": [""] + } + }, + "fr-fr": { + "play": { + "text": "JOUER", + "extra": [""] + }, + "playlevelmenu": { + "text": "JOUER", + "extra": [""] + }, + "resume": { + "text": "CONTINUER", + "extra": [], + "size": 12, + "alignY": 62 + }, + "restart": { + "text": "RECOMMENCER", + "extra": [], + "size": 10, + "alignY": 62 + }, + "levels": { + "text": "NIVEAUX", + "extra": [], + "size": 12, + "alignY": 62 + }, + "credits": { + "text": "CREDITS", + "extra": [], + "size": 12, + "alignY": 62 + }, + "removemidrollads": { + "text": "RETIRER PUB MID-ROLL", + "extra": [], + "size": 9, + "alignX": 85 + }, + "randomskin": { + "text": "SKIN ALEATOIRE", + "extra": [], + "size": 10, + "alignX": 82 + }, + "adblocktitle": { + "text": "Adblock détecté", + "extra": [""] + }, + "adblockdescription": { + "text": "Désactivez l'adblock et réessayez", + "extra": [""] + }, + "offlineready": { + "text": "Mode hors-ligne prêt !", + "extra": [""] + }, + "offlinereadydesc": { + "text": "Vous pouvez désormais jouer en mode hors-ligne !", + "extra": [""] + }, + "updatefound": { + "text": "Mise à jour détectée !", + "extra": [""] + }, + "updatefounddesc": { + "text": "Une mise à jour est en cours d'installation", + "extra": [""] + }, + "updateready": { + "text": "Mise à jour terminée !", + "extra": [""] + }, + "updatereadydesc": { + "text": "Une mise à jour a été téléchargée ! Rechargez la page ou cliquez ici.", + "extra": [""] + }, + "tip1": { + "text": "Le saviez-vous? Vous pouvez jouer à OvO sur mobile !", + "extra": [""] + }, + "tip2": { + "text": "============== Tu veux speedrunner OvO? ============== Rejoins la communauté ici discord.gg/ hTNX225Njt", + "extra": [""] + }, + "tip3": { + "text": "Appuyer sur R recommence le niveau. Ctrl+R recommence toute une partie en mode jouer", + "extra": [""] + }, + "tip4": { + "text": "Active le mode difficile dans les options si tu en es capable !", + "extra": [""] + }, + "tip5": { + "text": "Active le mode avancé dans les options pour générer les replays des niveaux", + "extra": [""] + }, + "tip6": { + "text": "En mode Avancé, active le mode Debug depuis le menu pause ou en appuyant sur F2", + "extra": [""] + }, + "selectlang": { + "text": "Choisir la langue", + "extra": [""] + }, + "ad1": { + "text": "Pas de pub disponible", + "extra": [""] + }, + "ad2": { + "text": "les pubs sont vaincues", + "extra": [""] + }, + "ad3": { + "text": "les pubs n'apparaîtront plus en jeu", + "extra": [""] + }, + "tip7": { + "text": "Sur PC, tu peux changer les touches de déplacement dans les options.", + "extra": [""] + }, + "default": { + "text": "Defaut", + "extra": [""] + }, + "electrical": { + "text": "Electrique", + "extra": [""] + }, + "pole": { + "text": "Pole", + "extra": [""] + }, + "pinkguy": { + "text": "Pink guy", + "extra": [""] + }, + "ovoplus": { + "text": "OvO+", + "extra": [""] + }, + "knight": { + "text": "Chevalier", + "extra": [""] + }, + "dknight": { + "text": "Chevalier sombre", + "extra": [""] + }, + "lknight": { + "text": "Chevalier lumineux", + "extra": [""] + }, + "astronaut": { + "text": "Astronaute", + "extra": [""] + }, + "alien": { + "text": "Alien", + "extra": [""] + }, + "erigato": { + "text": "Erigato", + "extra": [""] + }, + "batter": { + "text": "Batteur", + "extra": [""] + }, + "adalich": { + "text": "Adalich", + "extra": [""] + }, + "fallen": { + "text": "Déchu", + "extra": [""] + }, + "pulse": { + "text": "Pulse", + "extra": [""] + }, + "materwelon": { + "text": "MaterWelon", + "extra": [""] + }, + "flickd": { + "text": "Fl1ckd", + "extra": [""] + }, + "theliljoker": { + "text": "TheLilJoker", + "extra": [""] + }, + "amogus": { + "text": "PARMI NOUS", + "extra": [""] + }, + "french": { + "text": "Français", + "extra": [""] + }, + "english": { + "text": "", + "extra": [""] + }, + "spanish": { + "text": "", + "extra": [""] + }, + "brazilian": { + "text": "", + "extra": [""] + }, + "shyguy": { + "text": "ShyGuy", + "extra": [""] + }, + "hidden": { + "text": "Caché", + "extra": [""] + }, + "choose": { + "text": "Choisir", + "extra": [""] + }, + "chosen": { + "text": "Séléctionné", + "extra": [""] + }, + "price": { + "text": "Prix: {0}", + "extra": [""] + }, + "achievement": { + "text": "Succès: {0}", + "extra": [""] + }, + "buy": { + "text": "Acheter", + "extra": [""] + }, + "acquired": { + "text": "Obtenu", + "extra": [""] + }, + "back": { + "text": "RETOUR", + "extra": [""] + }, + "a1t": { + "text": "OvO", + "extra": [""] + }, + "a1d": { + "text": "Qu'est-ce que…?", + "extra": [""] + }, + "a2t": { + "text": "Toucher la tête", + "extra": [""] + }, + "a2d": { + "text": "Arrête ca !", + "extra": [""] + }, + "a3t": { + "text": "Frapper la tête", + "extra": [""] + }, + "a3d": { + "text": ":(", + "extra": [""] + }, + "a4t": { + "text": "Tutoriel", + "extra": [""] + }, + "a4d": { + "text": "Terminer la section tutoriel", + "extra": [""] + }, + "a5t": { + "text": "Les choses sérieuses", + "extra": [""] + }, + "a5d": { + "text": "Terminer la section les choses sérieuses", + "extra": [""] + }, + "a6t": { + "text": "Méchaniques", + "extra": [""] + }, + "a6d": { + "text": "Terminer la section méchaniques", + "extra": [""] + }, + "a7t": { + "text": "Ordre supérieur", + "extra": [""] + }, + "a7d": { + "text": "Terminer la section order supérieur", + "extra": [""] + }, + "a8t": { + "text": "Programme Spatial OvO", + "extra": [""] + }, + "a8d": { + "text": "Terminer la section Programme spatial OvO", + "extra": [""] + }, + "a9t": { + "text": "Un voyage mystique", + "extra": [""] + }, + "a9d": { + "text": "Terminer la section Le Voyage au travers du portail", + "extra": [""] + }, + "a10t": { + "text": "Travaux communautaires", + "extra": [""] + }, + "a10d": { + "text": "Terminer les niveaux de la communauté", + "extra": [""] + }, + "a11t": { + "text": "Purifié", + "extra": [""] + }, + "a11d": { + "text": "Terminer tous les niveaux", + "extra": [""] + }, + "a12t": { + "text": "Des pièces !", + "extra": [""] + }, + "a12d": { + "text": "Collecter une pièce", + "extra": [""] + }, + "a13t": { + "text": "Amateur de pièces", + "extra": [""] + }, + "a13d": { + "text": "Collecter 5 pièces", + "extra": [""] + }, + "a14t": { + "text": "Connaisseur de pièces", + "extra": [""] + }, + "a14d": { + "text": "Collecter 10 pièces", + "extra": [""] + }, + "a15t": { + "text": "Chasseur de pièces", + "extra": [""] + }, + "a15d": { + "text": "Collecter 30 pièces", + "extra": [""] + }, + "a16t": { + "text": "Dieu de la pièce", + "extra": [""] + }, + "a16d": { + "text": "Collecter 40 pièces", + "extra": [""] + }, + "a17t": { + "text": "Pièce secrète", + "extra": [""] + }, + "a17d": { + "text": "Trouver la pièce secrète", + "extra": [""] + }, + "a18t": { + "text": "Runner", + "extra": [""] + }, + "a18d": { + "text": "Terminer le jeu en moins de 30mn", + "extra": [""] + }, + "a19t": { + "text": "Speedrunner", + "extra": [""] + }, + "a19d": { + "text": "Terminer le jeu en moins de 20mn", + "extra": [""] + }, + "a20t": { + "text": "Maitrise de la vitesse", + "extra": [""] + }, + "a20d": { + "text": "Terminer le jeu en moins de 15mn", + "extra": [""] + }, + "a21t": { + "text": "Le podium", + "extra": [""] + }, + "a21d": { + "text": "Terminer le jeu en moins de 12mn", + "extra": [""] + }, + "a22t": { + "text": "Vitesse lumière", + "extra": [""] + }, + "a22d": { + "text": "Terminer le jeu en moins de 10mn", + "extra": [""] + }, + "likemagic": { + "text": "Comme par magie !", + "extra": [""] + }, + "unlockall": { + "text": "Tu as débloqué tous les niveaux !", + "extra": [""] + }, + "achievementunlocked": { + "text": "Succès débloqué !", + "extra": [""] + }, + "skinunlocked": { + "text": "Costume débloqué !", + "extra": [""] + }, + "goldearned": { + "text": "Pièce obtenue", + "extra": [""] + }, + "xgoldearned": { + "text": "{0} Pièces obtenues", + "extra": [""] + }, + "locked": { + "text": "Verrouillé", + "extra": [""] + }, + "music": { + "text": "Musique", + "extra": [""] + }, + "sounds": { + "text": "Sons", + "extra": [""] + }, + "hard": { + "text": "Mode difficile", + "extra": [""] + }, + "advanced": { + "text": "Mode avancé", + "extra": [""] + }, + "inputs": { + "text": "Touches", + "extra": [], + "size": 22 + }, + "savedata": { + "text": "Données", + "extra": [], + "size": 22 + }, + "savedatatext": { + "text": "Données de sauvegarde", + "extra": [""] + }, + "mobilemode": { + "text": "Appareil", + "extra": [], + "size": 22 + }, + "up": { + "text": "Haut", + "extra": [""] + }, + "down": { + "text": "Bas", + "extra": [""] + }, + "left": { + "text": "Gauche", + "extra": [""] + }, + "right": { + "text": "Droite", + "extra": [""] + }, + "setkey": { + "text": "Choisis…", + "extra": [""] + }, + "collectedcoins": { + "text": "Pièces collectées", + "extra": [""] + }, + "clearsave": { + "text": "Suppr. données", + "extra": [], + "size": 10, + "alignY": 65 + }, + "clearcoins": { + "text": "Suppr. pièces", + "extra": [], + "size": 10, + "alignY": 65 + }, + "autodetectinput": { + "text": "Automatique", + "extra": [""] + }, + "forcemobile": { + "text": "Mobile", + "extra": [""] + }, + "forcedesktop": { + "text": "Ordinateur", + "extra": [""] + }, + "whatdeviceinput": { + "text": "Quel est ton appareil?", + "extra": [""] + }, + "madebydedra": { + "text": "Créé par Dedra", + "extra": [""] + }, + "poweredby": { + "text": "Fait avec Construct 2", + "extra": [""] + }, + "runsection": { + "text": "Jouer la section", + "extra": [""] + }, + "basics": { + "text": "Tutoriel", + "extra": [""] + }, + "gettingserious": { + "text": "Les choses sérieuses", + "extra": [""] + }, + "higherorder": { + "text": "Ordre supérieur", + "extra": [""] + }, + "mechanicis": { + "text": "Méchaniques", + "extra": [""] + }, + "ovospaceprogram": { + "text": "Programme Spatial OvO", + "extra": [""] + }, + "jttp": { + "text": "Le Voyage au travers du portail", + "extra": [""] + }, + "community": { + "text": "Niveaux de la communauté", + "extra": [""] + }, + "besttime": { + "text": "Meilleur temps", + "extra": [""] + }, + "individuallevels": { + "text": "Niveaux individuels", + "extra": [""] + }, + "loadreplay": { + "text": "Charger un replay", + "extra": [], + "size": 12 + }, + "adplaying": { + "text": "Une pub devrait être affichée", + "extra": [""] + }, + "toggledebug": { + "text": "Mode debug", + "extra": [""] + }, + "downloadreplay": { + "text": "Télécharger le replay", + "extra": [], + "size": 17 + }, + "next": { + "text": "SUIVANT", + "extra": [""] + }, + "replay": { + "text": "REPLAY", + "extra": [""] + }, + "pause": { + "text": "PAUSE", + "extra": [""] + }, + "quit": { + "text": "QUITTER", + "extra": [""] + }, + "lvltxt1-1": { + "text": "Bienvenue dans OvO", + "extra": [""] + }, + "lvltxt1-2": { + "text": "Utilise les flèches pour te déplacer", + "extra": [""] + }, + "lvltxt1-3": { + "text": "Appuie sur Haut pour sauter", + "extra": [""] + }, + "lvltxt1-4": { + "text": "Fin du niveau", + "extra": [""] + }, + "lvltxt2-1": { + "text": "Saute", + "extra": [""] + }, + "lvltxt2-2": { + "text": "Reste près du mur", + "extra": [""] + }, + "lvltxt2-3": { + "text": "Pour sauter plus haut", + "extra": [""] + }, + "lvltxt2-4": { + "text": "Saute sur place et appuie sur bas pour smasher", + "extra": [""] + }, + "lvltxt2-5": { + "text": "Tu peux smasher ça", + "extra": [""] + }, + "lvltxt2-6": { + "text": "Saute après un Smash", + "extra": [""] + }, + "lvltxt2-7": { + "text": "Pour sauter plus haut", + "extra": [""] + }, + "lvltxt3-1": { + "text": "Tu peux descendre des murs", + "extra": [""] + }, + "lvltxt3-2": { + "text": "Saute en descendant pour faire un saut mural", + "extra": [""] + }, + "lvltxt4-1": { + "text": "Tu peux aussi glisser !", + "extra": [""] + }, + "lvltxt4-2": { + "text": "Appuie sur Bas", + "extra": [""] + }, + "lvltxt4-3": { + "text": "Saute en glissant pour plonger", + "extra": [""] + }, + "lvltxt4-4": { + "text": "Attention la tête…", + "extra": [""] + }, + "lvltxt5-1": { + "text": "Eux, ils sont méchants", + "extra": [""] + }, + "lvltxt5-2": { + "text": "Essaie de smasher en restant appuyé sur Droite pour faire un plongeon", + "extra": [""] + }, + "lvltxt6-1": { + "text": "Plonge encore", + "extra": [""] + }, + "lvltxt6-2": { + "text": "Puis saute !", + "extra": [""] + }, + "lvltxt6-3": { + "text": "Eux, ils sont cools", + "extra": [""] + }, + "lvltxt7-2": { + "text": "Smasher les boosters ne les active pas", + "extra": [""] + }, + "lvltxt8-1": { + "text": "Saute", + "extra": [""] + }, + "lvltxt8-2": { + "text": "Plonge", + "extra": [""] + }, + "lvltxt8-3": { + "text": "Re-saute!", + "extra": [""] + }, + "lvltxt9-1": { + "text": "Hé... on a dit", + "extra": [""] + }, + "lvltxt9-2": { + "text": "SMASH!", + "extra": [""] + }, + "lvltxt9-3": { + "text": "\"Les choses Sérieuses\"", + "extra": [""] + }, + "lvltxt10-1": { + "text": "Puissant", + "extra": [""] + }, + "lvltxt10-2": { + "text": "Normal", + "extra": [""] + }, + "lvltxt10-3": { + "text": "Faible", + "extra": [""] + }, + "lvltct10-4": { + "text": "(Glisser augmente ta vitesse)", + "extra": [""] + }, + "lvltxt10-4": { + "text": "Aie foi", + "extra": [""] + }, + "lvltxt14-1": { + "text": "Ici !", + "extra": [""] + }, + "lvltxt17-1": { + "text": "Ralentis !", + "extra": [""] + }, + "lvltxt19-1": { + "text": "Appuies sur Haut et Bas", + "extra": [""] + }, + "lvltxt23-1": { + "text": "Prie et Plonge !", + "extra": [""] + }, + "lvltxt28-1": { + "text": "Mauvais sens :)", + "extra": [""] + }, + "lvltxt25-1": { + "text": "Y'a rien à voir, désolé…", + "extra": [""] + }, + "lvltxt25-2": { + "text": "Tu dois pouvoir activer ça…", + "extra": [""] + }, + "lvltxt51-1": { + "text": "Par Leetle Toady", + "extra": [""] + }, + "lvltxt33-1": { + "text": "Bienvenue dans Le programme spatial OvO !", + "extra": [""] + }, + "lvltxt33-2": { + "text": "Par ici ---->", + "extra": [""] + }, + "lvltxt33-3": { + "text": "Etape 1 :", + "extra": [""] + }, + "lvltxt33-4": { + "text": "ROCKETS!", + "extra": [""] + }, + "lvltxt33-5": { + "text": "PLUS DE ROCKETS!", + "extra": [""] + }, + "lvltxt33-6": { + "text": "PLUS DE ROCKEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEETS!", + "extra": [""] + }, + "lvltxt34-1": { + "text": "Sois inventif pour éviter les rockets", + "extra": [""] + }, + "lvltxt38-1": { + "text": "Bouge", + "extra": [""] + }, + "lvltxt41-1": { + "text": "Vite", + "extra": [""] + }, + "lvltxt41-2": { + "text": "Dans", + "extra": [""] + }, + "lvltxt41-3": { + "text": "Le", + "extra": [""] + }, + "lvltxt41-4": { + "text": "Portail!", + "extra": [""] + }, + "": { + "text": "", + "extra": [""] + }, + "lvltxt40-1": { + "text": "<--- Plonge", + "extra": [""] + }, + "level1": { + "text": "Départ", + "extra": [""] + }, + "level2": { + "text": "Dur", + "extra": [""] + }, + "level3": { + "text": "Super dur", + "extra": [""] + }, + "level4": { + "text": "Trop dur", + "extra": [""] + }, + "level5": { + "text": "Dangereux", + "extra": [""] + }, + "level6": { + "text": "Impossible", + "extra": [""] + }, + "level7": { + "text": "Agréable", + "extra": [""] + }, + "level8": { + "text": "Saute & plonge", + "extra": [""] + }, + "level9": { + "text": "Une sage décision", + "extra": [""] + }, + "level10": { + "text": "Une question de force", + "extra": [""] + }, + "level11": { + "text": "Réactivité", + "extra": [""] + }, + "level12": { + "text": "Le petit labyrinthe", + "extra": [""] + }, + "level13": { + "text": "Une question de vitesse", + "extra": [""] + }, + "level14": { + "text": "Timing", + "extra": [""] + }, + "level15": { + "text": "Piège mortel I", + "extra": [""] + }, + "level16": { + "text": "La descente", + "extra": [""] + }, + "level17": { + "text": "Vas-y doucement", + "extra": [""] + }, + "level18": { + "text": "Pièce symétrique I", + "extra": [""] + }, + "level19": { + "text": "Petite maison de piques", + "extra": [""] + }, + "level20": { + "text": "Piège endormi", + "extra": [""] + }, + "level21": { + "text": "La montée", + "extra": [""] + }, + "level22": { + "text": "Itérations", + "extra": [""] + }, + "level23": { + "text": "Saut de la foi", + "extra": [""] + }, + "level24": { + "text": "Maelstrom", + "extra": [""] + }, + "level25": { + "text": "Méchaniques de base", + "extra": [""] + }, + "level26": { + "text": "Trois portes", + "extra": [""] + }, + "level27": { + "text": "Piège éveillé", + "extra": [""] + }, + "level28": { + "text": "Piège mortel II", + "extra": [""] + }, + "level29": { + "text": "Petite plateforme sympathique I", + "extra": [""] + }, + "level30": { + "text": "Petite plateforme sympathique II", + "extra": [""] + }, + "level31": { + "text": "Quadrilatère Hilarant", + "extra": [""] + }, + "level32": { + "text": "Fuis pour ta vie", + "extra": [""] + }, + "level33": { + "text": "Examen séléctif", + "extra": [""] + }, + "level34": { + "text": "Test d'intelligence", + "extra": [""] + }, + "level35": { + "text": "Test d'instinct", + "extra": [""] + }, + "level36": { + "text": "Test de vitesse", + "extra": [""] + }, + "level37": { + "text": "Test de visée", + "extra": [""] + }, + "level38": { + "text": "Test d'adaptation", + "extra": [""] + }, + "level39": { + "text": "Le diplôme ?", + "extra": [""] + }, + "level40": { + "text": "Examen final", + "extra": [""] + }, + "level41": { + "text": "Initialisation", + "extra": [""] + }, + "level42": { + "text": "Procédural", + "extra": [""] + }, + "level43": { + "text": "Quadrilatère Hystérique", + "extra": [""] + }, + "level44": { + "text": "Propagation arrière", + "extra": [""] + }, + "level45": { + "text": "Arithmétique", + "extra": [""] + }, + "level46": { + "text": "Recursion", + "extra": [""] + }, + "level47": { + "text": "Fuséologie avancée", + "extra": [""] + }, + "level48": { + "text": "Binaire", + "extra": [""] + }, + "level49": { + "text": "La vierge de fer", + "extra": [""] + }, + "level50": { + "text": "Au travers de l'aiguille", + "extra": [""] + }, + "level51": { + "text": "Les deux tours", + "extra": [""] + }, + "level52": { + "text": "Andromède", + "extra": [""] + }, + "yourfinaltime": { + "text": "Temps final", + "extra": [""] + }, + "timerforthislevel": { + "text": "Temps du niveau", + "extra": [""] + }, + "tryagainhardmode": { + "text": "Essaie en mode difficile maintenant !", + "extra": [""] + } + }, + "pt-br": { + "play": { + "text": "JOGAR", + "extra": [""] + }, + "playlevelmenu": { + "text": "JOGAR", + "extra": [""] + }, + "resume": { + "text": "CONTINUAR", + "extra": [], + "size": 12, + "alignY": 62 + }, + "restart": { + "text": "REINICIAR", + "extra": [], + "size": 12, + "alignY": 62 + }, + "levels": { + "text": "NÍVEIS", + "extra": [], + "size": 12, + "alignY": 62 + }, + "credits": { + "text": "CRÉDITOS", + "extra": [], + "size": 12, + "alignY": 62 + }, + "removemidrollads": { + "text": "REMOVER ANÚNCIOS", + "extra": [""] + }, + "randomskin": { + "text": "SKIN ALEATÓRIA", + "extra": [], + "size": 10, + "alignX": 82 + }, + "adblocktitle": { + "text": "Adblock detectado", + "extra": [""] + }, + "adblockdescription": { + "text": "Desative seu adblock e tente denovo", + "extra": [""] + }, + "offlineready": { + "text": "Modo Offline pronto!", + "extra": [""] + }, + "offlinereadydesc": { + "text": "Você agora pode jogar offline!", + "extra": [""] + }, + "updatefound": { + "text": "Atualização encontrada!", + "extra": [""] + }, + "updatefounddesc": { + "text": "Uma nova atualização foi encontrada e está sendo baixada em segundo plano", + "extra": [""] + }, + "updateready": { + "text": "Atualização pronta!", + "extra": [""] + }, + "updatereadydesc": { + "text": "Uma nova atualização foi baixada! Recarrege ou clique aqui para carregar a nova versão.", + "extra": [""] + }, + "tip1": { + "text": "Você sabia que é possível jogar também pelo seu celular?", + "extra": [""] + }, + "tip2": { + "text": "============== Você quer fazer um speedrun desse jogo? ============== Entre para a nossa comunidade em discord.gg/ hTNX225Njt", + "extra": [""] + }, + "tip3": { + "text": "A tecla R reinicia o nível, enquanto que Ctrl + R reinicia toda a run ao jogar", + "extra": [""] + }, + "tip4": { + "text": "Ative o modo difícil nas opções se você já é um expert", + "extra": [""] + }, + "tip5": { + "text": "Ative o modo avançado nas opções para ter replays de níveis", + "extra": [""] + }, + "tip6": { + "text": "No modo avançado, você pode ativar o modo debug no menu de pausa ou pressionando F2", + "extra": [""] + }, + "selectlang": { + "text": "Selecione o idioma", + "extra": [""] + }, + "ad1": { + "text": "Nenhum anúncio disponível", + "extra": [""] + }, + "ad2": { + "text": "Sem mais anúncios no meio do jogo", + "extra": [""] + }, + "ad3": { + "text": "Os anúncios não irão mais aparecer no meio do jogo", + "extra": [""] + }, + "tip7": { + "text": "Você pode mudar a qualquer hora os controles de movimento nas opções, caso esteja jogando pelo computador", + "extra": [""] + }, + "default": { + "text": "Padrão", + "extra": [""] + }, + "electrical": { + "text": "Elétrico", + "extra": [""] + }, + "pole": { + "text": "Pólo", + "extra": [""] + }, + "pinkguy": { + "text": "Pink Guy", + "extra": [""] + }, + "ovoplus": { + "text": "OvO+", + "extra": [""] + }, + "knight": { + "text": "Cavaleiro", + "extra": [""] + }, + "dknight": { + "text": "Cavaleiro das Trevas", + "extra": [""] + }, + "lknight": { + "text": "Cavaleiro da Luz", + "extra": [""] + }, + "astronaut": { + "text": "Astronauta", + "extra": [""] + }, + "alien": { + "text": "Alien", + "extra": [""] + }, + "erigato": { + "text": "Erigato", + "extra": [""] + }, + "batter": { + "text": "Batter", + "extra": [""] + }, + "adalich": { + "text": "Adalich", + "extra": [""] + }, + "fallen": { + "text": "Ancestral", + "extra": [""] + }, + "pulse": { + "text": "Pulse", + "extra": [""] + }, + "materwelon": { + "text": "MaterWelon", + "extra": [""] + }, + "flickd": { + "text": "Fl1ckd", + "extra": [""] + }, + "theliljoker": { + "text": "TheLilJoker", + "extra": [""] + }, + "amogus": { + "text": "amungokkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk", + "extra": [""] + }, + "french": { + "text": "", + "extra": [""] + }, + "english": { + "text": "", + "extra": [""] + }, + "spanish": { + "text": "", + "extra": [""] + }, + "brazilian": { + "text": "", + "extra": [""] + }, + "shyguy": { + "text": "ShyGuy", + "extra": [""] + }, + "hidden": { + "text": "Secreto", + "extra": [""] + }, + "choose": { + "text": "Escolher", + "extra": [""] + }, + "chosen": { + "text": "Selecionado", + "extra": [""] + }, + "price": { + "text": "Preço: {0}", + "extra": [""] + }, + "achievement": { + "text": "Conquista: {0}", + "extra": [""] + }, + "buy": { + "text": "Comprar", + "extra": [""] + }, + "acquired": { + "text": "Obtido", + "extra": [""] + }, + "back": { + "text": "VOLTAR", + "extra": [""] + }, + "a1t": { + "text": "OvO", + "extra": [""] + }, + "a1d": { + "text": "Que isso?", + "extra": [""] + }, + "a2t": { + "text": "Paulada na cabeça", + "extra": [""] + }, + "a2d": { + "text": "Pare com isso, por favor", + "extra": [""] + }, + "a3t": { + "text": "Dor de cabeça", + "extra": [""] + }, + "a3d": { + "text": ":(", + "extra": [""] + }, + "a4t": { + "text": "Tutorial", + "extra": [""] + }, + "a4d": { + "text": "Termine o Tutorial", + "extra": [""] + }, + "a5t": { + "text": "Ficando Tenso", + "extra": [""] + }, + "a5d": { + "text": "Termine a seção \"Ficando Tenso\"", + "extra": [""] + }, + "a6t": { + "text": "Mecânicas", + "extra": [""] + }, + "a6d": { + "text": "Termine a seção \"Mecânicas\"", + "extra": [""] + }, + "a7t": { + "text": "A Grande Ordem", + "extra": [""] + }, + "a7d": { + "text": "Termine a seção \"A Grande Ordem\"", + "extra": [""] + }, + "a8t": { + "text": "Programa Espacial OvO", + "extra": [""] + }, + "a8d": { + "text": "Termine a seção \"Programa Espacial OvO\"", + "extra": [""] + }, + "a9t": { + "text": "Uma Jornada Mística", + "extra": [""] + }, + "a9d": { + "text": "Termine a seção \"Uma Jornada Mística\"", + "extra": [""] + }, + "a10t": { + "text": "Níveis da Comunidade", + "extra": [""] + }, + "a10d": { + "text": "Termine os Níveis da Comunidade", + "extra": [""] + }, + "a11t": { + "text": "Purificado", + "extra": [""] + }, + "a11d": { + "text": "Termine todos os níveis", + "extra": [""] + }, + "a12t": { + "text": "Moedas!", + "extra": [""] + }, + "a12d": { + "text": "Pegue uma moeda", + "extra": [""] + }, + "a13t": { + "text": "Entusiasta de Moedas", + "extra": [""] + }, + "a13d": { + "text": "Pegue 5 moedas", + "extra": [""] + }, + "a14t": { + "text": "Apreciador de Moedas", + "extra": [""] + }, + "a14d": { + "text": "Pegue 10 moedas", + "extra": [""] + }, + "a15t": { + "text": "Caçador de Moedas", + "extra": [""] + }, + "a15d": { + "text": "Pegue 30 moedas", + "extra": [""] + }, + "a16t": { + "text": "Deus da Moeda", + "extra": [""] + }, + "a16d": { + "text": "Pegue 40 moedas", + "extra": [""] + }, + "a17t": { + "text": "Moeda Secreta?", + "extra": [""] + }, + "a17d": { + "text": "Pegue a moeda secreta", + "extra": [""] + }, + "a18t": { + "text": "Corredor", + "extra": [""] + }, + "a18d": { + "text": "Termine o jogo em menos de 30 minutos", + "extra": [""] + }, + "a19t": { + "text": "Speedrunner", + "extra": [""] + }, + "a19d": { + "text": "Termine o jogo em menos de 20 minutos", + "extra": [""] + }, + "a20t": { + "text": "Mestre da velocidade", + "extra": [""] + }, + "a20d": { + "text": "Termine o jogo em menos de 10 minutos", + "extra": [""] + }, + "a21t": { + "text": "Top 10 Melhores", + "extra": [""] + }, + "a21d": { + "text": "Termine o jogo em menos de 12 minutos", + "extra": [""] + }, + "a22t": { + "text": "Velocidade da Luz", + "extra": [""] + }, + "a22d": { + "text": "Termine o jogo em menos de 10 minutos", + "extra": [""] + }, + "likemagic": { + "text": "Como mágica!", + "extra": [""] + }, + "unlockall": { + "text": "Você desbloqueou todos os níveis!", + "extra": [""] + }, + "achievementunlocked": { + "text": "Conquista desbloqueada!", + "extra": [""] + }, + "skinunlocked": { + "text": "Nova skin desbloqueada!", + "extra": [""] + }, + "goldearned": { + "text": "Ganhou umas moedas!", + "extra": [""] + }, + "xgoldearned": { + "text": "{0} Dinheiro ganho", + "extra": [""] + }, + "locked": { + "text": "Bloqueado", + "extra": [""] + }, + "music": { + "text": "Música", + "extra": [""] + }, + "sounds": { + "text": "Sons", + "extra": [""] + }, + "hard": { + "text": "Modo difícil", + "extra": [""] + }, + "advanced": { + "text": "Modo avançado", + "extra": [""] + }, + "inputs": { + "text": "Entradas", + "extra": [], + "size": 21 + }, + "savedata": { + "text": "Data", + "extra": [], + "size": 21 + }, + "savedatatext": { + "text": "Salvar Dados", + "extra": [""] + }, + "mobilemode": { + "text": "Aparelho", + "extra": [], + "size": 21 + }, + "up": { + "text": "Cima", + "extra": [""] + }, + "down": { + "text": "Baixo", + "extra": [""] + }, + "left": { + "text": "Esquerda", + "extra": [""] + }, + "right": { + "text": "Direita", + "extra": [""] + }, + "setkey": { + "text": "Pressione uma tecla...", + "extra": [""] + }, + "collectedcoins": { + "text": "Moedas Coletadas", + "extra": [""] + }, + "clearsave": { + "text": "Deletar Dados", + "extra": [], + "size": 10, + "alignY": 65 + }, + "clearcoins": { + "text": "Deletar Moedas", + "extra": [], + "size": 10, + "alignY": 65 + }, + "autodetectinput": { + "text": "Auto detectar", + "extra": [""] + }, + "forcemobile": { + "text": "Dispositivo Móvel", + "extra": [""] + }, + "forcedesktop": { + "text": "Computador", + "extra": [""] + }, + "whatdeviceinput": { + "text": "Qual é o seu aparelho?", + "extra": [""] + }, + "madebydedra": { + "text": "Criado por Dedra", + "extra": [""] + }, + "poweredby": { + "text": "Feito no Construct 2", + "extra": [""] + }, + "runsection": { + "text": "Sessões da Run", + "extra": [""] + }, + "basics": { + "text": "Tutorial", + "extra": [""] + }, + "gettingserious": { + "text": "Ficando Tenso", + "extra": [""] + }, + "higherorder": { + "text": "A Grande Ordem", + "extra": [""] + }, + "mechanicis": { + "text": "Mecânicas", + "extra": [""] + }, + "ovospaceprogram": { + "text": "Programa Espacial OvO", + "extra": [""] + }, + "jttp": { + "text": "Uma Jornada Mística Por Portais", + "extra": [""] + }, + "community": { + "text": "Níveis da Comunidade", + "extra": [""] + }, + "besttime": { + "text": "Melhor tempo", + "extra": [""] + }, + "individuallevels": { + "text": "Níveis Individuais", + "extra": [""] + }, + "loadreplay": { + "text": "Carregar um Replay", + "extra": [], + "size": 12 + }, + "adplaying": { + "text": "Um anúncio irá ser reproduzido", + "extra": [""] + }, + "toggledebug": { + "text": "Modo Debug", + "extra": [""] + }, + "downloadreplay": { + "text": "Baixar Replay", + "extra": [""] + }, + "next": { + "text": "PRÓXIMO", + "extra": [""] + }, + "replay": { + "text": "REPLAY", + "extra": [""] + }, + "pause": { + "text": "PAUSA", + "extra": [""] + }, + "quit": { + "text": "SAIR", + "extra": [""] + }, + "lvltxt1-1": { + "text": "Olá! Bem-vindo à OvO", + "extra": [""] + }, + "lvltxt1-2": { + "text": "Use as setas para se mover", + "extra": [""] + }, + "lvltxt1-3": { + "text": "Pressione Cima para pular", + "extra": [""] + }, + "lvltxt1-4": { + "text": "Esse é o final do nível", + "extra": [""] + }, + "lvltxt2-1": { + "text": "Pule", + "extra": [""] + }, + "lvltxt2-2": { + "text": "Vá para à parede", + "extra": [""] + }, + "lvltxt2-3": { + "text": "E pule mais alto", + "extra": [""] + }, + "lvltxt2-4": { + "text": "Pule no lugar e pressione Baixo para dar uma pézada", + "extra": [""] + }, + "lvltxt2-5": { + "text": "(Você pode Atravessar com a pézada aqui)", + "extra": [""] + }, + "lvltxt2-6": { + "text": "Pule após dar uma pézada", + "extra": [""] + }, + "lvltxt2-7": { + "text": "Para pular bem mais alto", + "extra": [""] + }, + "lvltxt3-1": { + "text": "Você pode deslizar nas paredes", + "extra": [""] + }, + "lvltxt3-2": { + "text": "Pule enquanto deslize nas paredes para fazer um Pulo De Parede", + "extra": [], + "size": 8 + }, + "lvltxt4-1": { + "text": "Você pode até deslizar no chão!", + "extra": [""] + }, + "lvltxt4-2": { + "text": "Pressione a tecla Baixo", + "extra": [""] + }, + "lvltxt4-3": { + "text": "Pule enquanto desliza para Mergulhar", + "extra": [""] + }, + "lvltxt4-4": { + "text": "Tome cuidado para não bater a cabeça...", + "extra": [""] + }, + "lvltxt5-1": { + "text": "Esse são os caras maus", + "extra": [""] + }, + "lvltxt5-2": { + "text": "Tente dar uma pézada enquanto anda pra direita para Mergulhar", + "extra": [""] + }, + "lvltxt6-1": { + "text": "Mergulhe denovo...", + "extra": [""] + }, + "lvltxt6-2": { + "text": "E Pule!", + "extra": [""] + }, + "lvltxt6-3": { + "text": "Esse são os caras bons", + "extra": [""] + }, + "lvltxt7-2": { + "text": "Dar uma pézada nas molas não irá ativar-las", + "extra": [""] + }, + "lvltxt8-1": { + "text": "Pule", + "extra": [""] + }, + "lvltxt8-2": { + "text": "Mergulhe denovo...", + "extra": [""] + }, + "lvltxt8-3": { + "text": "Pule denovo!", + "extra": [""] + }, + "lvltxt9-1": { + "text": "Ei... isso está", + "extra": [""] + }, + "lvltxt9-2": { + "text": "KABUM!", + "extra": [""] + }, + "lvltxt9-3": { + "text": "\"ficando tenso\"", + "extra": [""] + }, + "lvltxt10-1": { + "text": "Forte", + "extra": [""] + }, + "lvltxt10-2": { + "text": "Normal", + "extra": [""] + }, + "lvltxt10-3": { + "text": "Fraco", + "extra": [""] + }, + "lvltct10-4": { + "text": "(O deslizamento aumenta a velocidade)", + "extra": [""] + }, + "lvltxt10-4": { + "text": "Confie", + "extra": [""] + }, + "lvltxt14-1": { + "text": "Aqui!", + "extra": [""] + }, + "lvltxt17-1": { + "text": "Desacelere!", + "extra": [""] + }, + "lvltxt19-1": { + "text": "Pressione Cima e Baixo", + "extra": [""] + }, + "lvltxt23-1": { + "text": "Confie e Mergulhe!", + "extra": [""] + }, + "lvltxt28-1": { + "text": "Caminho errado :)", + "extra": [""] + }, + "lvltxt25-1": { + "text": "Nada aqui, foi mal!", + "extra": [""] + }, + "lvltxt25-2": { + "text": "Deve ter alguma forma de abrir isso...", + "extra": [""] + }, + "lvltxt51-1": { + "text": "Por Leetle Toady", + "extra": [""] + }, + "lvltxt33-1": { + "text": "Bem-vindo ao Programa Espacial OvO!", + "extra": [""] + }, + "lvltxt33-2": { + "text": "Por aqui ---->", + "extra": [""] + }, + "lvltxt33-3": { + "text": "Passo 1 :", + "extra": [""] + }, + "lvltxt33-4": { + "text": "FOGUETES!", + "extra": [""] + }, + "lvltxt33-5": { + "text": "MAIS FOGUETES!", + "extra": [""] + }, + "lvltxt33-6": { + "text": "MAIS FOGUEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEETES!", + "extra": [""] + }, + "lvltxt34-1": { + "text": "Seja criativo para evitar foguetes", + "extra": [""] + }, + "lvltxt38-1": { + "text": "Mover", + "extra": [""] + }, + "lvltxt41-1": { + "text": "Rapido", + "extra": [""] + }, + "lvltxt41-2": { + "text": "Atravès", + "extra": [""] + }, + "lvltxt41-3": { + "text": "A", + "extra": [""] + }, + "lvltxt41-4": { + "text": "Portal!", + "extra": [""] + }, + "": { + "text": "", + "extra": [""] + }, + "lvltxt40-1": { + "text": "<--- Mergulhe", + "extra": [""] + }, + "level1": { + "text": "Começo", + "extra": [""] + }, + "level2": { + "text": "Difícil", + "extra": [""] + }, + "level3": { + "text": "Muito Difícil", + "extra": [""] + }, + "level4": { + "text": "Super Dificil", + "extra": [""] + }, + "level5": { + "text": "Perigoso", + "extra": [""] + }, + "level6": { + "text": "Impossível", + "extra": [""] + }, + "level7": { + "text": "Prazeroso", + "extra": [""] + }, + "level8": { + "text": "Pule e Mergulhe", + "extra": [""] + }, + "level9": { + "text": "Uma Decisão Sábia", + "extra": [""] + }, + "level10": { + "text": "Uma Questão de Força", + "extra": [""] + }, + "level11": { + "text": "Reatividade", + "extra": [""] + }, + "level12": { + "text": "Um Pequeno Labirinto de Paredes", + "extra": [""] + }, + "level13": { + "text": "Uma Questão de Velocidade", + "extra": [""] + }, + "level14": { + "text": "Tempo", + "extra": [""] + }, + "level15": { + "text": "Engenhoca Mortal I", + "extra": [""] + }, + "level16": { + "text": "Ladeira Abaixo", + "extra": [""] + }, + "level17": { + "text": "Pegue Leve", + "extra": [""] + }, + "level18": { + "text": "Sala Espelhada I", + "extra": [""] + }, + "level19": { + "text": "Pequena Sala Pontiaguda", + "extra": [""] + }, + "level20": { + "text": "Engenhoca Adormecida", + "extra": [""] + }, + "level21": { + "text": "Ladeira Acima", + "extra": [""] + }, + "level22": { + "text": "Iterações", + "extra": [""] + }, + "level23": { + "text": "Salto de Fé", + "extra": [""] + }, + "level24": { + "text": "Redemoinho", + "extra": [""] + }, + "level25": { + "text": "Mecânicas Simples", + "extra": [""] + }, + "level26": { + "text": "Três Portas", + "extra": [""] + }, + "level27": { + "text": "Engenhoca Acordada", + "extra": [""] + }, + "level28": { + "text": "Engenhoca Mortal II", + "extra": [""] + }, + "level29": { + "text": "Pequena Plataforma Amigável I", + "extra": [""] + }, + "level30": { + "text": "Pequena Plataforma Amigável II", + "extra": [""] + }, + "level31": { + "text": "Quadrilátero Hilário", + "extra": [""] + }, + "level32": { + "text": "Corra Por Sua Vida", + "extra": [""] + }, + "level33": { + "text": "Exame De Seleção", + "extra": [""] + }, + "level34": { + "text": "Teste de Inteligência", + "extra": [""] + }, + "level35": { + "text": "Teste de Instinto", + "extra": [""] + }, + "level36": { + "text": "Teste de Velocidade", + "extra": [""] + }, + "level37": { + "text": "Teste de Precisão", + "extra": [""] + }, + "level38": { + "text": "Teste de Adaptação", + "extra": [""] + }, + "level39": { + "text": "O Diploma...?", + "extra": [""] + }, + "level40": { + "text": "O Exame Final", + "extra": [""] + }, + "level41": { + "text": "Inicialização", + "extra": [""] + }, + "level42": { + "text": "Procedural", + "extra": [""] + }, + "level43": { + "text": "Quadrilátero Histérico", + "extra": [""] + }, + "level44": { + "text": "Retropropagação", + "extra": [""] + }, + "level45": { + "text": "Aritmética", + "extra": [""] + }, + "level46": { + "text": "Recursão", + "extra": [""] + }, + "level47": { + "text": "Ciência de Foguetes", + "extra": [""] + }, + "level48": { + "text": "Binário", + "extra": [""] + }, + "level49": { + "text": "A Donzela De Ferro", + "extra": [""] + }, + "level50": { + "text": "Linha Na Agulha", + "extra": [""] + }, + "level51": { + "text": "As Torres Gêmeas", + "extra": [""] + }, + "level52": { + "text": "Andrômeda", + "extra": [""] + }, + "yourfinaltime": { + "text": "Seu tempo final:", + "extra": [""] + }, + "timerforthislevel": { + "text": "Tempo de niveis", + "extra": [""] + }, + "tryagainhardmode": { + "text": "Tente denovo no Modo Difícil!", + "extra": [""] + } + }, + "es-es": { + "play": { + "text": "JUGAR", + "extra": [""] + }, + "playlevelmenu": { + "text": "JUGAR", + "extra": [""] + }, + "resume": { + "text": "SEGUIR", + "extra": [], + "size": 14, + "alignX": 48 + }, + "restart": { + "text": "REINICIAR", + "extra": [], + "size": 12, + "alignX": 48 + }, + "levels": { + "text": "NIVELES", + "extra": [], + "size": 14, + "alignX": 48 + }, + "credits": { + "text": "CREDITOS", + "extra": [], + "size": 14, + "alignX": 48 + }, + "removemidrollads": { + "text": "ELIMINAR ANUNCIOS", + "extra": [""] + }, + "randomskin": { + "text": "SKIN ALEATORIA", + "extra": [], + "size": 10, + "alignX": 82 + }, + "adblocktitle": { + "text": "Adblock detectado", + "extra": [""] + }, + "adblockdescription": { + "text": "Deshabilite su adblock y vuelva a intentarlo", + "extra": [""] + }, + "offlineready": { + "text": "¡Modo Offline listo!", + "extra": [""] + }, + "offlinereadydesc": { + "text": "¡Ahora puedes jugar Offline!", + "extra": [""] + }, + "updatefound": { + "text": "¡Actualizacion encontrada!", + "extra": [""] + }, + "updatefounddesc": { + "text": "Se ha encontrado una nueva actualización y se está descargando en segundo plano", + "extra": [""] + }, + "updateready": { + "text": "¡Actualización lista!", + "extra": [""] + }, + "updatereadydesc": { + "text": "¡Se ha descargado una nueva actualización! Vuelva a cargar o haga clic aquí para cargar la nueva versión.", + "extra": [""] + }, + "tip1": { + "text": "¿Sabías que es posible jugar también en tu teléfono móvil?", + "extra": [""] + }, + "tip2": { + "text": "============== ¿Haces speedrun? ============== Únase a nuestra comunidad en discord.gg/ hTNX225Njt", + "extra": [""] + }, + "tip3": { + "text": "La tecla R reinicia el nivel, mientras que Ctrl + R reinicia todo el juego mientras se juega", + "extra": [""] + }, + "tip4": { + "text": "Activa el modo difícil en las opciones si ya eres un experto", + "extra": [""] + }, + "tip5": { + "text": "Activar el modo avanzado en las opciones para tener repeticiones de nivel", + "extra": [""] + }, + "tip6": { + "text": "En el modo avanzado, puede activar el modo de depuración en el menú de pausa o presionando F2", + "extra": [""] + }, + "selectlang": { + "text": "Seleccione el idioma", + "extra": [""] + }, + "ad1": { + "text": "No hay anuncios disponibles", + "extra": [""] + }, + "ad2": { + "text": "No más anuncios en medio del juego", + "extra": [""] + }, + "ad3": { + "text": "Los anuncios ya no aparecerán en medio del juego", + "extra": [""] + }, + "tip7": { + "text": "Puede cambiar los controles de movimiento en las opciones en cualquier momento", + "extra": [""] + }, + "default": { + "text": "Estándar", + "extra": [""] + }, + "electrical": { + "text": "Eléctrico", + "extra": [""] + }, + "pole": { + "text": "Polo", + "extra": [""] + }, + "pinkguy": { + "text": "Pink Guy", + "extra": [""] + }, + "ovoplus": { + "text": "OvO+", + "extra": [""] + }, + "knight": { + "text": "Caballero", + "extra": [""] + }, + "dknight": { + "text": "Caballero Oscuro", + "extra": [""] + }, + "lknight": { + "text": "Caballero de la Luz", + "extra": [""] + }, + "astronaut": { + "text": "Astronauta", + "extra": [""] + }, + "alien": { + "text": "Alien", + "extra": [""] + }, + "erigato": { + "text": "Erigato", + "extra": [""] + }, + "batter": { + "text": "Bateador", + "extra": [""] + }, + "adalich": { + "text": "Adalich", + "extra": [""] + }, + "fallen": { + "text": "Ancestral", + "extra": [""] + }, + "pulse": { + "text": "Pulse", + "extra": [""] + }, + "materwelon": { + "text": "MaterWelon", + "extra": [""] + }, + "flickd": { + "text": "Fl1ckd", + "extra": [""] + }, + "theliljoker": { + "text": "TheLilJoker", + "extra": [""] + }, + "amogus": { + "text": "AMUNGO", + "extra": [""] + }, + "french": { + "text": "", + "extra": [""] + }, + "english": { + "text": "", + "extra": [""] + }, + "spanish": { + "text": "", + "extra": [""] + }, + "brazilian": { + "text": "", + "extra": [""] + }, + "shyguy": { + "text": "ShyGuy", + "extra": [""] + }, + "hidden": { + "text": "Secreto", + "extra": [""] + }, + "choose": { + "text": "Escoger", + "extra": [""] + }, + "chosen": { + "text": "Seleccionado", + "extra": [""] + }, + "price": { + "text": "Precio: {0}", + "extra": [""] + }, + "achievement": { + "text": "Logro: {0}", + "extra": [""] + }, + "buy": { + "text": "Compra", + "extra": [""] + }, + "acquired": { + "text": "Adquirido", + "extra": [""] + }, + "back": { + "text": "VUELVE", + "extra": [""] + }, + "a1t": { + "text": "OvO", + "extra": [""] + }, + "a1d": { + "text": "¿Que es eso?", + "extra": [""] + }, + "a2t": { + "text": "Paulada en la cabeza", + "extra": [""] + }, + "a2d": { + "text": "Detente, porfavor", + "extra": [""] + }, + "a3t": { + "text": "Dolor de cabeza", + "extra": [""] + }, + "a3d": { + "text": ":(", + "extra": [""] + }, + "a4t": { + "text": "Tutorial", + "extra": [""] + }, + "a4d": { + "text": "Termina el tutorial", + "extra": [""] + }, + "a5t": { + "text": "Ponerse tenso", + "extra": [""] + }, + "a5d": { + "text": "Termina la sección \"Ponerse tenso\"", + "extra": [""] + }, + "a6t": { + "text": "Mecánica", + "extra": [""] + }, + "a6d": { + "text": "Termina la sección \"Mecánica\"", + "extra": [""] + }, + "a7t": { + "text": "La Gran Orden", + "extra": [""] + }, + "a7d": { + "text": "Termina la sección \"La Gran Orden\"", + "extra": [""] + }, + "a8t": { + "text": "Programa espacial OvO", + "extra": [""] + }, + "a8d": { + "text": "Termina la sección \"Programa espacial OvO\"", + "extra": [""] + }, + "a9t": { + "text": "Un viaje místico", + "extra": [""] + }, + "a9d": { + "text": "Termina la sección \"Un viaje místico\"", + "extra": [""] + }, + "a10t": { + "text": "Niveles comunitarios", + "extra": [""] + }, + "a10d": { + "text": "Termina los niveles de la comunidad", + "extra": [""] + }, + "a11t": { + "text": "Purificado", + "extra": [""] + }, + "a11d": { + "text": "Termina todos los niveles", + "extra": [""] + }, + "a12t": { + "text": "¡Monedas!", + "extra": [""] + }, + "a12d": { + "text": "Toma una moneda", + "extra": [""] + }, + "a13t": { + "text": "Entusiasta de las monedas", + "extra": [""] + }, + "a13d": { + "text": "Toma 5 monedas", + "extra": [""] + }, + "a14t": { + "text": "Tasador de monedas", + "extra": [""] + }, + "a14d": { + "text": "Toma 10 monedas", + "extra": [""] + }, + "a15t": { + "text": "Cazador de monedas", + "extra": [""] + }, + "a15d": { + "text": "Toma 30 monedas", + "extra": [""] + }, + "a16t": { + "text": "Dios de las monedas", + "extra": [""] + }, + "a16d": { + "text": "Toma 30 monedas", + "extra": [""] + }, + "a17t": { + "text": "¿Moneda secreta?", + "extra": [""] + }, + "a17d": { + "text": "Toma la moneda secreta", + "extra": [""] + }, + "a18t": { + "text": "corredor", + "extra": [""] + }, + "a18d": { + "text": "Termina el juego en menos de 30 minutos", + "extra": [""] + }, + "a19t": { + "text": "Speedrunner", + "extra": [""] + }, + "a19d": { + "text": "Termina el juego en menos de 20 minutos", + "extra": [""] + }, + "a20t": { + "text": "Maestro de la velocidad", + "extra": [""] + }, + "a20d": { + "text": "Termina el juego en menos de 10 minutos", + "extra": [""] + }, + "a21t": { + "text": "Top 10 mejores", + "extra": [""] + }, + "a21d": { + "text": "Termina el juego en menos de 12 minutos", + "extra": [""] + }, + "a22t": { + "text": "Velocidad de la luz", + "extra": [""] + }, + "a22d": { + "text": "Termina el juego en menos de 10 minutos", + "extra": [""] + }, + "likemagic": { + "text": "¡Como magia!", + "extra": [""] + }, + "unlockall": { + "text": "¡Has desbloqueado todos los niveles!", + "extra": [""] + }, + "achievementunlocked": { + "text": "Los anuncios no aparecerán en medio del juego", + "extra": [""] + }, + "skinunlocked": { + "text": "¡Nueva skin desbloqueada!", + "extra": [""] + }, + "goldearned": { + "text": "¡Ganaste algunas monedas!", + "extra": [""] + }, + "xgoldearned": { + "text": "{0} Dinero ganado", + "extra": [""] + }, + "locked": { + "text": "Obstruido", + "extra": [""] + }, + "music": { + "text": "Canción", + "extra": [""] + }, + "sounds": { + "text": "Sonidos", + "extra": [""] + }, + "hard": { + "text": "Modo difícil", + "extra": [""] + }, + "advanced": { + "text": "Modo avanzado", + "extra": [""] + }, + "inputs": { + "text": "Aperitivo", + "extra": [], + "size": 18 + }, + "savedata": { + "text": "Datos", + "extra": [], + "size": 18 + }, + "savedatatext": { + "text": "Guardar datos", + "extra": [""] + }, + "mobilemode": { + "text": "Dispositivo", + "extra": [], + "size": 18 + }, + "up": { + "text": "Arriba", + "extra": [""] + }, + "down": { + "text": "Bajo", + "extra": [""] + }, + "left": { + "text": "Izquierda", + "extra": [""] + }, + "right": { + "text": "Derecha", + "extra": [""] + }, + "setkey": { + "text": "Presione una tecla ...", + "extra": [""] + }, + "collectedcoins": { + "text": "Monedas colectadas", + "extra": [""] + }, + "clearsave": { + "text": "Borrar datos", + "extra": [], + "size": 10, + "alignY": 65 + }, + "clearcoins": { + "text": "Borrar monedas", + "extra": [], + "size": 10, + "alignY": 65 + }, + "autodetectinput": { + "text": "Detección automática", + "extra": [""] + }, + "forcemobile": { + "text": "Móvil", + "extra": [""] + }, + "forcedesktop": { + "text": "Ordenador", + "extra": [""] + }, + "whatdeviceinput": { + "text": "¿Cuál es tu dispositivo?", + "extra": [""] + }, + "madebydedra": { + "text": "Creado por Dedra", + "extra": [""] + }, + "poweredby": { + "text": "Hecho en Construct 2", + "extra": [""] + }, + "runsection": { + "text": "Sesiones del Run", + "extra": [""] + }, + "basics": { + "text": "Tutorial", + "extra": [""] + }, + "gettingserious": { + "text": "Ponerse tenso", + "extra": [""] + }, + "higherorder": { + "text": "La Gran Orden", + "extra": [""] + }, + "mechanicis": { + "text": "Mecánica", + "extra": [""] + }, + "ovospaceprogram": { + "text": "Programa espacial OvO", + "extra": [""] + }, + "jttp": { + "text": "Un viaje místico a través de portales", + "extra": [""] + }, + "community": { + "text": "Niveles comunitarios", + "extra": [""] + }, + "besttime": { + "text": "Mejor tiempo", + "extra": [""] + }, + "individuallevels": { + "text": "Niveles individuales", + "extra": [""] + }, + "loadreplay": { + "text": "Subir una repetición", + "extra": [], + "size": 12 + }, + "adplaying": { + "text": "Se reproducirá un anuncio", + "extra": [""] + }, + "toggledebug": { + "text": "Modo de depuración", + "extra": [], + "size": 12 + }, + "downloadreplay": { + "text": "Descargar Replay", + "extra": [], + "size": 20 + }, + "next": { + "text": "SIGUIENTE", + "extra": [], + "size": 18 + }, + "replay": { + "text": "REPETIR", + "extra": [], + "size": 22 + }, + "pause": { + "text": "PAUSA", + "extra": [""] + }, + "quit": { + "text": "SALIR", + "extra": [""] + }, + "lvltxt1-1": { + "text": "¡Hola! Bienvenido a OvO", + "extra": [""] + }, + "lvltxt1-2": { + "text": "Usa las flechas para moverte", + "extra": [""] + }, + "lvltxt1-3": { + "text": "Presiona Arriba para saltar", + "extra": [""] + }, + "lvltxt1-4": { + "text": "Este es el final del nivel", + "extra": [""] + }, + "lvltxt2-1": { + "text": "Saltar", + "extra": [""] + }, + "lvltxt2-2": { + "text": "Vete al muro", + "extra": [""] + }, + "lvltxt2-3": { + "text": "Y saltar más alto", + "extra": [""] + }, + "lvltxt2-4": { + "text": "Salta en tu lugar y presiona Abajo para aplastar", + "extra": [""] + }, + "lvltxt2-5": { + "text": "(Puedes cruzar con el aplastar aquí)", + "extra": [""] + }, + "lvltxt2-6": { + "text": "Saltar tras aplastar", + "extra": [""] + }, + "lvltxt2-7": { + "text": "Para saltar mucho mas alto", + "extra": [""] + }, + "lvltxt3-1": { + "text": "Puedes deslizarte por las paredes", + "extra": [""] + }, + "lvltxt3-2": { + "text": "Salta mientras te deslizas por las paredes para hacer un salto de pared", + "extra": [""] + }, + "lvltxt4-1": { + "text": "¡Incluso puedes deslizarte por el suelo!", + "extra": [""] + }, + "lvltxt4-2": { + "text": "Presione la tecla Abajo", + "extra": [""] + }, + "lvltxt4-3": { + "text": "Salta mientras te deslizas para sumergirte", + "extra": [""] + }, + "lvltxt4-4": { + "text": "Tenga cuidado de no golpearse la cabeza ...", + "extra": [""] + }, + "lvltxt5-1": { + "text": "Estos son los malos", + "extra": [""] + }, + "lvltxt5-2": { + "text": "Intenta aplastar mientras caminas directamente a bucear", + "extra": [""] + }, + "lvltxt6-1": { + "text": "Bucea de nuevo ...", + "extra": [""] + }, + "lvltxt6-2": { + "text": "¡Y salta!", + "extra": [""] + }, + "lvltxt6-3": { + "text": "Estos son los buenos", + "extra": [""] + }, + "lvltxt7-2": { + "text": "Aplastar los resortes no los activará", + "extra": [""] + }, + "lvltxt8-1": { + "text": "Saltar", + "extra": [""] + }, + "lvltxt8-2": { + "text": "Bucea de nuevo ...", + "extra": [""] + }, + "lvltxt8-3": { + "text": "¡Salta de nuevo!", + "extra": [""] + }, + "lvltxt9-1": { + "text": "Oye, esto se está", + "extra": [""] + }, + "lvltxt9-2": { + "text": "SMASH!", + "extra": [""] + }, + "lvltxt9-3": { + "text": "\"Poniendo tenso\"", + "extra": [""] + }, + "lvltxt10-1": { + "text": "Fuerte", + "extra": [""] + }, + "lvltxt10-2": { + "text": "Normal", + "extra": [""] + }, + "lvltxt10-3": { + "text": "Débil", + "extra": [""] + }, + "lvltct10-4": { + "text": "(El deslizamiento aumenta la velocidad)", + "extra": [""] + }, + "lvltxt10-4": { + "text": "Confía", + "extra": [""] + }, + "lvltxt14-1": { + "text": "¡Aqui!", + "extra": [""] + }, + "lvltxt17-1": { + "text": "¡Reduzca la velocidad!", + "extra": [""] + }, + "lvltxt19-1": { + "text": "Presione Arriba y Abajo", + "extra": [""] + }, + "lvltxt23-1": { + "text": "¡Confía y bucea!", + "extra": [""] + }, + "lvltxt28-1": { + "text": "Camino equivocado :)", + "extra": [""] + }, + "lvltxt25-1": { + "text": "¡Nada aquí, lo siento!", + "extra": [""] + }, + "lvltxt25-2": { + "text": "Debe haber alguna forma de abrir esto ...", + "extra": [""] + }, + "lvltxt51-1": { + "text": "Por Leetle Toady", + "extra": [""] + }, + "lvltxt33-1": { + "text": "¡Bienvenido al programa espacial OvO!", + "extra": [""] + }, + "lvltxt33-2": { + "text": "por aquí ---->", + "extra": [""] + }, + "lvltxt33-3": { + "text": "Paso 1 :", + "extra": [""] + }, + "lvltxt33-4": { + "text": "¡COHETES!", + "extra": [""] + }, + "lvltxt33-5": { + "text": "¡MÁS COHETES!", + "extra": [""] + }, + "lvltxt33-6": { + "text": "¡MÁS COHEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEETES!", + "extra": [""] + }, + "lvltxt34-1": { + "text": "Sea inventivo para evitar los cohetes", + "extra": [""] + }, + "lvltxt38-1": { + "text": "Moverse", + "extra": [""] + }, + "lvltxt41-1": { + "text": "Ràpidamente", + "extra": [""] + }, + "lvltxt41-2": { + "text": "Mediante", + "extra": [""] + }, + "lvltxt41-3": { + "text": "El", + "extra": [""] + }, + "lvltxt41-4": { + "text": "Portal", + "extra": [""] + }, + "": { + "text": "", + "extra": [""] + }, + "lvltxt40-1": { + "text": "<--- Bucea", + "extra": [""] + }, + "level1": { + "text": "Comienzo", + "extra": [""] + }, + "level2": { + "text": "Difícil", + "extra": [""] + }, + "level3": { + "text": "Muito Difícil", + "extra": [""] + }, + "level4": { + "text": "Extremadamente Difícil", + "extra": [""] + }, + "level5": { + "text": "Peligroso", + "extra": [""] + }, + "level6": { + "text": "Imposible", + "extra": [""] + }, + "level7": { + "text": "Agradable", + "extra": [""] + }, + "level8": { + "text": "Saltar y bucear", + "extra": [""] + }, + "level9": { + "text": "Una sabia decisión", + "extra": [""] + }, + "level10": { + "text": "Una cuestión de fuerza", + "extra": [""] + }, + "level11": { + "text": "Reactividad", + "extra": [""] + }, + "level12": { + "text": "Un pequeño laberinto de muros", + "extra": [""] + }, + "level13": { + "text": "Una cuestión de velocidad", + "extra": [""] + }, + "level14": { + "text": "Momento", + "extra": [""] + }, + "level15": { + "text": "Artilugio mortal I", + "extra": [""] + }, + "level16": { + "text": "Cuesta abajo", + "extra": [""] + }, + "level17": { + "text": "Con calma", + "extra": [""] + }, + "level18": { + "text": "Habitación con espejos I", + "extra": [""] + }, + "level19": { + "text": "Habitación pequeña puntiaguda", + "extra": [""] + }, + "level20": { + "text": "Artilugio durmiente", + "extra": [""] + }, + "level21": { + "text": "Cuesta arriba", + "extra": [""] + }, + "level22": { + "text": "Iteraciones", + "extra": [""] + }, + "level23": { + "text": "Salto de fe", + "extra": [""] + }, + "level24": { + "text": "Remolino", + "extra": [""] + }, + "level25": { + "text": "Mecánica simple", + "extra": [""] + }, + "level26": { + "text": "Tres puertas", + "extra": [""] + }, + "level27": { + "text": "Artilugio despierto", + "extra": [""] + }, + "level28": { + "text": "Artilugio mortal II", + "extra": [""] + }, + "level29": { + "text": "Pequeña plataforma amigable I", + "extra": [""] + }, + "level30": { + "text": "Pequeña plataforma amigable II", + "extra": [""] + }, + "level31": { + "text": "Cuadrilátero hilarante", + "extra": [""] + }, + "level32": { + "text": "Corre por tu vida", + "extra": [""] + }, + "level33": { + "text": "Examen de selección", + "extra": [""] + }, + "level34": { + "text": "Prueba de inteligencia", + "extra": [""] + }, + "level35": { + "text": "Prueba de instinto", + "extra": [""] + }, + "level36": { + "text": "Prueba de velocidad", + "extra": [""] + }, + "level37": { + "text": "Prueba de precisión", + "extra": [""] + }, + "level38": { + "text": "Prueba de adaptación", + "extra": [""] + }, + "level39": { + "text": "El diploma ...?", + "extra": [""] + }, + "level40": { + "text": "El examen final", + "extra": [""] + }, + "level41": { + "text": "Puesta en marcha", + "extra": [""] + }, + "level42": { + "text": "Procesal", + "extra": [""] + }, + "level43": { + "text": "Cuadrilátero histérico", + "extra": [""] + }, + "level44": { + "text": "Retropropagación", + "extra": [""] + }, + "level45": { + "text": "Aritmética", + "extra": [""] + }, + "level46": { + "text": "Recursividad", + "extra": [""] + }, + "level47": { + "text": "Ciencia espacial", + "extra": [""] + }, + "level48": { + "text": "Binario", + "extra": [""] + }, + "level49": { + "text": "La doncella de hierro", + "extra": [""] + }, + "level50": { + "text": "Hilo de aguja", + "extra": [""] + }, + "level51": { + "text": "Las torres Gemelas", + "extra": [""] + }, + "level52": { + "text": "Andrómeda", + "extra": [""] + }, + "yourfinaltime": { + "text": "Tu tiempo final:", + "extra": [""] + }, + "timerforthislevel": { + "text": "Tiempo de niveles", + "extra": [""] + }, + "tryagainhardmode": { + "text": "¡Vuelve a intentarlo en modo difícil!", + "extra": [""] + } + }, + "it-it": { + "play": { + "text": "GIOCA", + "extra": [""] + }, + "playlevelmenu": { + "text": "GIOCA", + "extra": [""] + }, + "resume": { + "text": "RIPRENDI", + "extra": [""] + }, + "restart": { + "text": "RICOMINCIA", + "extra": [""] + }, + "levels": { + "text": "LIVELLI", + "extra": [""] + }, + "credits": { + "text": "CREDITI", + "extra": [""] + }, + "removemidrollads": { + "text": "rimuovi pubblicità tra i livelli", + "extra": [""] + }, + "randomskin": { + "text": "SKIN CASUALE", + "extra": [""] + }, + "adblocktitle": { + "text": "ADLOCK RILEVATO", + "extra": [""] + }, + "adblockdescription": { + "text": "disabilità adblock e riprova", + "extra": [""] + }, + "offlineready": { + "text": "gioco offline pronto!", + "extra": [""] + }, + "offlinereadydesc": { + "text": "ora puoi giocare offline!", + "extra": [""] + }, + "updatefound": { + "text": "aggiornamento rilevato!", + "extra": [""] + }, + "updatefounddesc": { + "text": "un nuovo aggiornamento è stato rilevato e si sta scaricando nel background", + "extra": [""] + }, + "updateready": { + "text": "aggiornamento terminato!", + "extra": [""] + }, + "updatereadydesc": { + "text": "un nuovo aggiornamento è stato scaricato! ricarica il gioco o clicca QUI per caricare la nuova versione ", + "extra": [""] + }, + "tip1": { + "text": "sapevi che puoi giocare ad OvO anche su mobile ?", + "extra": [""] + }, + "tip2": { + "text": "vuoi diventare uno speedrunner di ovo? unisciti alla nostra community su discord.gg/hTNX225Njt", + "extra": [""] + }, + "tip3": { + "text": "premi R per ricominciare il livello, premi Ctrl + R per ricominciare la partita in modalità Gioca", + "extra": [""] + }, + "tip4": { + "text": "attiva la modalità esperto se sei un giocatore esperto", + "extra": [""] + }, + "tip5": { + "text": "attiva la modalità moderna per scaricare i replay dei livelli ", + "extra": [""] + }, + "tip6": { + "text": "in modalità moderna puoi attivare il debug nel menu di pausa o usando F2", + "extra": [""] + }, + "selectlang": { + "text": "seleziona la lingua ", + "extra": [""] + }, + "ad1": { + "text": "nessuna pubblicità disponibile", + "extra": [""] + }, + "ad2": { + "text": "nientepiù pubblicità tra i livelli", + "extra": [""] + }, + "ad3": { + "text": "le pubblicità non appariranno più tra i livelli", + "extra": [""] + }, + "tip7": { + "text": "sul desktopo puoi configurare i comandi che preferisci dalle opzioni ", + "extra": [""] + }, + "default": { + "text": "classica", + "extra": [""] + }, + "electrical": { + "text": "elettrica", + "extra": [""] + }, + "pole": { + "text": "poligono ", + "extra": [""] + }, + "pinkguy": { + "text": "Pink Guy", + "extra": [""] + }, + "ovoplus": { + "text": "OvO+", + "extra": [""] + }, + "knight": { + "text": "cavaliere", + "extra": [""] + }, + "dknight": { + "text": "cavaliere oscuro", + "extra": [""] + }, + "lknight": { + "text": "cavaliere della luce", + "extra": [""] + }, + "astronaut": { + "text": "astronauta", + "extra": [""] + }, + "alien": { + "text": "alieno", + "extra": [""] + }, + "erigato": { + "text": "Erigato", + "extra": [""] + }, + "batter": { + "text": "Battitore", + "extra": [""] + }, + "adalich": { + "text": "Adalich", + "extra": [""] + }, + "fallen": { + "text": "il caduto", + "extra": [""] + }, + "pulse": { + "text": "pulsante ", + "extra": [""] + }, + "materwelon": { + "text": "cocomero", + "extra": [""] + }, + "flickd": { + "text": "Fl1ckd", + "extra": [""] + }, + "theliljoker": { + "text": "TheLil Joker", + "extra": [""] + }, + "amogus": { + "text": "amogus ", + "extra": [""] + }, + "french": { + "text": "", + "extra": [""] + }, + "english": { + "text": "", + "extra": [""] + }, + "spanish": { + "text": "", + "extra": [""] + }, + "brazilian": { + "text": "", + "extra": [""] + }, + "shyguy": { + "text": "ShyGuy", + "extra": [""] + }, + "hidden": { + "text": "Nascosto", + "extra": [""] + }, + "choose": { + "text": "seleziona ", + "extra": [""] + }, + "chosen": { + "text": "selezionato", + "extra": [""] + }, + "price": { + "text": "prezzo: {0}", + "extra": [""] + }, + "achievement": { + "text": "Obbiettivi: {0}", + "extra": [""] + }, + "buy": { + "text": "compra ", + "extra": [""] + }, + "acquired": { + "text": "ottenuto", + "extra": [""] + }, + "back": { + "text": "INDIETRO", + "extra": [""] + }, + "a1t": { + "text": "OvO", + "extra": [""] + }, + "a1d": { + "text": "Cos'è questo?", + "extra": [""] + }, + "a2t": { + "text": "oh no la mia testa", + "extra": [""] + }, + "a2d": { + "text": "smettila per favore!", + "extra": [""] + }, + "a3t": { + "text": "mi fai male alla testa", + "extra": [""] + }, + "a3d": { + "text": ":(", + "extra": [""] + }, + "a4t": { + "text": "Tutorial", + "extra": [""] + }, + "a4d": { + "text": "finisci la sezione tutorial", + "extra": [""] + }, + "a5t": { + "text": "la cosa si fa seria", + "extra": [""] + }, + "a5d": { + "text": "finisci la sezione seria", + "extra": [""] + }, + "a6t": { + "text": "meccaniche", + "extra": [""] + }, + "a6d": { + "text": "finisci la sezione meccaniche", + "extra": [""] + }, + "a7t": { + "text": "ordine superiore", + "extra": [""] + }, + "a7d": { + "text": "finisci la sezione ordine superiore", + "extra": [""] + }, + "a8t": { + "text": "spazio ai programmatori di OvO", + "extra": [""] + }, + "a8d": { + "text": "finisci la sezione spazio ai programmatori", + "extra": [""] + }, + "a9t": { + "text": "avventura mistica", + "extra": [""] + }, + "a9d": { + "text": "finisci l'avventura attraverso il portale", + "extra": [""] + }, + "a10t": { + "text": "lavoro della community", + "extra": [""] + }, + "a10d": { + "text": "finisci i livelli della community", + "extra": [""] + }, + "a11t": { + "text": "Purificato", + "extra": [""] + }, + "a11d": { + "text": "finisci ogni livello", + "extra": [""] + }, + "a12t": { + "text": "monete !", + "extra": [""] + }, + "a12d": { + "text": "collezziona una moneta", + "extra": [""] + }, + "a13t": { + "text": "entusiasmo da denaro", + "extra": [""] + }, + "a13d": { + "text": "collezziona 5 monete", + "extra": [""] + }, + "a14t": { + "text": "denaro-sauro", + "extra": [""] + }, + "a14d": { + "text": "collezziona 10 monete", + "extra": [""] + }, + "a15t": { + "text": "cacciatore di risparmi", + "extra": [""] + }, + "a15d": { + "text": "collezziona 30 monete", + "extra": [""] + }, + "a16t": { + "text": "dio denaro", + "extra": [""] + }, + "a16d": { + "text": "collezziona 40 monete", + "extra": [""] + }, + "a17t": { + "text": "moneta segreta", + "extra": [""] + }, + "a17d": { + "text": "collezziona la moneta segreta", + "extra": [""] + }, + "a18t": { + "text": "corridore", + "extra": [""] + }, + "a18d": { + "text": "finisci il gioco in meno di 30 minuti", + "extra": [""] + }, + "a19t": { + "text": "speedrunner", + "extra": [""] + }, + "a19d": { + "text": "finisci il gioco in meno di 20 minuti", + "extra": [""] + }, + "a20t": { + "text": "maestro dello scatto", + "extra": [""] + }, + "a20d": { + "text": "finisci il gioco in meno di 15 minuti", + "extra": [""] + }, + "a21t": { + "text": "migliori corridori ", + "extra": [""] + }, + "a21d": { + "text": "finisci il gioco in meno di 12 minuti", + "extra": [""] + }, + "a22t": { + "text": "velocità della luce", + "extra": [""] + }, + "a22d": { + "text": "finisci il gioco in meno di 10 minuti", + "extra": [""] + }, + "likemagic": { + "text": "magia!", + "extra": [""] + }, + "unlockall": { + "text": "hai sbloccatp ogni livello!", + "extra": [""] + }, + "achievementunlocked": { + "text": "obbiettivo sbloccato!", + "extra": [""] + }, + "skinunlocked": { + "text": "skin sbloccata!", + "extra": [""] + }, + "goldearned": { + "text": "oro ottenuto!", + "extra": [""] + }, + "xgoldearned": { + "text": "hai ottenuto {0} di oro", + "extra": [""] + }, + "locked": { + "text": "bloccato", + "extra": [""] + }, + "music": { + "text": "musica", + "extra": [""] + }, + "sounds": { + "text": "suoni", + "extra": [""] + }, + "hard": { + "text": "modalità difficile", + "extra": [""] + }, + "advanced": { + "text": "modalità moderna", + "extra": [""] + }, + "inputs": { + "text": "comandi", + "extra": [""] + }, + "savedata": { + "text": "salvataggio", + "extra": [""] + }, + "savedatatext": { + "text": "salva progressi", + "extra": [""] + }, + "mobilemode": { + "text": "dispositivo", + "extra": [""] + }, + "up": { + "text": "su", + "extra": [""] + }, + "down": { + "text": "giù", + "extra": [""] + }, + "left": { + "text": "sinistra", + "extra": [""] + }, + "right": { + "text": "destra", + "extra": [""] + }, + "setkey": { + "text": "cambia un comando", + "extra": [""] + }, + "collectedcoins": { + "text": "monet collezzionate", + "extra": [""] + }, + "clearsave": { + "text": "cancella salvataggio", + "extra": [""] + }, + "clearcoins": { + "text": "resetta le monete", + "extra": [""] + }, + "autodetectinput": { + "text": "auto rilevazione", + "extra": [""] + }, + "forcemobile": { + "text": "forza mobile", + "extra": [""] + }, + "forcedesktop": { + "text": "forza il desktop", + "extra": [""] + }, + "whatdeviceinput": { + "text": "che dispositivo stai usando?", + "extra": [""] + }, + "madebydedra": { + "text": "creato da Dedra", + "extra": [""] + }, + "poweredby": { + "text": "offerto da construct 2", + "extra": [""] + }, + "runsection": { + "text": "sezione partita", + "extra": [""] + }, + "basics": { + "text": "le basi", + "extra": [""] + }, + "gettingserious": { + "text": "la cosa si fa seria", + "extra": [""] + }, + "higherorder": { + "text": "ordine superiore", + "extra": [""] + }, + "mechanicis": { + "text": "meccaniche", + "extra": [""] + }, + "ovospaceprogram": { + "text": "spazio ai programmatori di OvO", + "extra": [""] + }, + "jttp": { + "text": "avventura attraverso il portale", + "extra": [""] + }, + "community": { + "text": "livelli della community", + "extra": [""] + }, + "besttime": { + "text": "tempo migliore:", + "extra": [""] + }, + "individuallevels": { + "text": "livelli individuali", + "extra": [""] + }, + "loadreplay": { + "text": "carica replay", + "extra": [""] + }, + "adplaying": { + "text": "una pubblicità dovrebbe essere in corso", + "extra": [""] + }, + "toggledebug": { + "text": "attiva il debug", + "extra": [""] + }, + "downloadreplay": { + "text": "scarica replay", + "extra": [""] + }, + "next": { + "text": "PROSSIMO", + "extra": [""] + }, + "replay": { + "text": "REPLAY", + "extra": [""] + }, + "pause": { + "text": "PAUSA", + "extra": [""] + }, + "quit": { + "text": "ESCI", + "extra": [""] + }, + "lvltxt1-1": { + "text": "Ciao, e benvento su OvO", + "extra": [""] + }, + "lvltxt1-2": { + "text": "usa le frecce per muoverti!", + "extra": [""] + }, + "lvltxt1-3": { + "text": "premi la freccia SU per saltare ", + "extra": [""] + }, + "lvltxt1-4": { + "text": "questa è la fine del livello", + "extra": [""] + }, + "lvltxt2-1": { + "text": "SALTA", + "extra": [""] + }, + "lvltxt2-2": { + "text": "vai vicino al muro", + "extra": [""] + }, + "lvltxt2-3": { + "text": "e salta più in alto", + "extra": [""] + }, + "lvltxt2-4": { + "text": "fai uno schianto a terra premendo giù mentre sei in volo", + "extra": [""] + }, + "lvltxt2-5": { + "text": "(puoi rompere questo)", + "extra": [""] + }, + "lvltxt2-6": { + "text": "salta dopo uno schianto", + "extra": [""] + }, + "lvltxt2-7": { + "text": "per saltare più in alto", + "extra": [""] + }, + "lvltxt3-1": { + "text": "puoi scivolare lungo i muri", + "extra": [""] + }, + "lvltxt3-2": { + "text": "salta mentre scivoli per fare un salto a parete", + "extra": [""] + }, + "lvltxt4-1": { + "text": "puoi anche scivolare!", + "extra": [""] + }, + "lvltxt4-2": { + "text": "premi la freccia giù", + "extra": [""] + }, + "lvltxt4-3": { + "text": "salta mentre scivoli per fare un tuffo nell'aria", + "extra": [""] + }, + "lvltxt4-4": { + "text": "stai attento a non sbattere la testa", + "extra": [""] + }, + "lvltxt5-1": { + "text": "quest sono dei ragazzacci", + "extra": [""] + }, + "lvltxt5-2": { + "text": "prova a fare uno schianto poco prima di fare un tuffo", + "extra": [""] + }, + "lvltxt6-1": { + "text": "fai un altro tuffo", + "extra": [""] + }, + "lvltxt6-2": { + "text": "e salta", + "extra": [""] + }, + "lvltxt6-3": { + "text": "questi sono bravi ragazzi", + "extra": [""] + }, + "lvltxt7-2": { + "text": "se fai uno schianto sui trampolini non verranno attivati", + "extra": [""] + }, + "lvltxt8-1": { + "text": "salta", + "extra": [""] + }, + "lvltxt8-2": { + "text": "tuffo", + "extra": [""] + }, + "lvltxt8-3": { + "text": "ri-salta", + "extra": [""] + }, + "lvltxt9-1": { + "text": "hey questo è...", + "extra": [""] + }, + "lvltxt9-2": { + "text": "SCHANTO!", + "extra": [""] + }, + "lvltxt9-3": { + "text": "\"La cosa si fa SERIA\"", + "extra": [""] + }, + "lvltxt10-1": { + "text": "Forte", + "extra": [""] + }, + "lvltxt10-2": { + "text": "Normale", + "extra": [""] + }, + "lvltxt10-3": { + "text": "Debole", + "extra": [""] + }, + "lvltct10-4": { + "text": "(scivolare aumenta la velocità)", + "extra": [""] + }, + "lvltxt10-4": { + "text": "Fidati", + "extra": [""] + }, + "lvltxt14-1": { + "text": "QUI!", + "extra": [""] + }, + "lvltxt17-1": { + "text": "RALLENTA!", + "extra": [""] + }, + "lvltxt19-1": { + "text": "premi su e giù", + "extra": [""] + }, + "lvltxt23-1": { + "text": "fidati e tuffati", + "extra": [""] + }, + "lvltxt28-1": { + "text": "psto sbagliato :)", + "extra": [""] + }, + "lvltxt25-1": { + "text": "Mi dispiace, non c'è proprio niente qui...", + "extra": [""] + }, + "lvltxt25-2": { + "text": "si può aprire in qualche modo....", + "extra": [""] + }, + "lvltxt51-1": { + "text": "Di Leetle Toady", + "extra": [""] + }, + "lvltxt33-1": { + "text": "Prendi parte allo spazio per i programmatori di Ovo!", + "extra": [""] + }, + "lvltxt33-2": { + "text": "da questa parte ---->", + "extra": [""] + }, + "lvltxt33-3": { + "text": "il primo passo è...", + "extra": [""] + }, + "lvltxt33-4": { + "text": "RAZZI!", + "extra": [""] + }, + "lvltxt33-5": { + "text": "ALTRI RAZZI!", + "extra": [""] + }, + "lvltxt33-6": { + "text": "ANCORA RAZZIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII!", + "extra": [""] + }, + "lvltxt34-1": { + "text": "Dovrai cercare di stare fuori portata quando possibile", + "extra": [""] + }, + "lvltxt38-1": { + "text": "MUOVITI!", + "extra": [""] + }, + "lvltxt41-1": { + "text": "VELOCE", + "extra": [""] + }, + "lvltxt41-2": { + "text": "ATTRAVERSA", + "extra": [""] + }, + "lvltxt41-3": { + "text": "IL ", + "extra": [""] + }, + "lvltxt41-4": { + "text": "PORTALE!", + "extra": [""] + }, + "": { + "text": "", + "extra": [""] + }, + "lvltxt40-1": { + "text": "<--- tuffo", + "extra": [""] + }, + "level1": { + "text": "inizia", + "extra": [""] + }, + "level2": { + "text": "difficile", + "extra": [""] + }, + "level3": { + "text": "più difficile", + "extra": [""] + }, + "level4": { + "text": "il più difficile", + "extra": [""] + }, + "level5": { + "text": "infernale", + "extra": [""] + }, + "level6": { + "text": "impossiile", + "extra": [""] + }, + "level7": { + "text": "celestiale", + "extra": [""] + }, + "level8": { + "text": "salto & tuffo", + "extra": [""] + }, + "level9": { + "text": "una decisione saggia", + "extra": [""] + }, + "level10": { + "text": "questione di forza", + "extra": [""] + }, + "level11": { + "text": "reattività", + "extra": [""] + }, + "level12": { + "text": "un piccolo labirinto", + "extra": [""] + }, + "level13": { + "text": "questione di velocità", + "extra": [""] + }, + "level14": { + "text": "tempismo", + "extra": [""] + }, + "level15": { + "text": "aggeggio mortale 1", + "extra": [""] + }, + "level16": { + "text": "una via giù", + "extra": [""] + }, + "level17": { + "text": "con calma", + "extra": [""] + }, + "level18": { + "text": "stanza specchiata 1", + "extra": [""] + }, + "level19": { + "text": "piccola casa spinosa", + "extra": [""] + }, + "level20": { + "text": "aggeggio dormiente", + "extra": [""] + }, + "level21": { + "text": "una via SU", + "extra": [""] + }, + "level22": { + "text": "iterazioni", + "extra": [""] + }, + "level23": { + "text": "salto della fede", + "extra": [""] + }, + "level24": { + "text": "vortice", + "extra": [""] + }, + "level25": { + "text": "semplici meccaniche", + "extra": [""] + }, + "level26": { + "text": "tre porte", + "extra": [""] + }, + "level27": { + "text": "aggeggio risevegliato", + "extra": [""] + }, + "level28": { + "text": "aggeggio mortale 2", + "extra": [""] + }, + "level29": { + "text": "piccola piattaforma amichevole 1", + "extra": [""] + }, + "level30": { + "text": "piccola piattaforma amichevole 2", + "extra": [""] + }, + "level31": { + "text": "quadrilatero buffo", + "extra": [""] + }, + "level32": { + "text": "corri se vuoi vivere", + "extra": [""] + }, + "level33": { + "text": "esame di selezione", + "extra": [""] + }, + "level34": { + "text": "test di intelligenza", + "extra": [""] + }, + "level35": { + "text": "test di istinto", + "extra": [""] + }, + "level36": { + "text": "test di velocità", + "extra": [""] + }, + "level37": { + "text": "test di accuratezza", + "extra": [""] + }, + "level38": { + "text": "test di adattazzione", + "extra": [""] + }, + "level39": { + "text": "sfumature?", + "extra": [""] + }, + "level40": { + "text": "esame finale", + "extra": [""] + }, + "level41": { + "text": "inizializzazione", + "extra": [""] + }, + "level42": { + "text": "procedurale", + "extra": [""] + }, + "level43": { + "text": "quadrilatero isterico", + "extra": [""] + }, + "level44": { + "text": "propagazione all'indietro", + "extra": [""] + }, + "level45": { + "text": "aritmetica", + "extra": [""] + }, + "level46": { + "text": "ricorsione", + "extra": [""] + }, + "level47": { + "text": "scenza dei razzi", + "extra": [""] + }, + "level48": { + "text": "binario", + "extra": [""] + }, + "level49": { + "text": "la sirena d'acciaio", + "extra": [""] + }, + "level50": { + "text": "infilare l'ago", + "extra": [""] + }, + "level51": { + "text": "le torri gemelle", + "extra": [""] + }, + "level52": { + "text": "Andromeda", + "extra": [""] + }, + "yourfinaltime": { + "text": "Il tuo tempo finale", + "extra": [""] + }, + "timerforthislevel": { + "text": "Timer per questo livello", + "extra": [""] + }, + "tryagainhardmode": { + "text": "ora prova in modalità difficile!", + "extra": [""] + } + } + } +} diff --git a/gversion/gs/ovo/levels.json b/gversion/gs/ovo/levels.json new file mode 100644 index 0000000..96ebb72 --- /dev/null +++ b/gversion/gs/ovo/levels.json @@ -0,0 +1,44 @@ +[ + { + "name": "Basics", + "lang": "basics", + "textScale": 1, + "levels": [1, 8] + }, + { + "name": "Getting serious", + "lang": "gettingserious", + "textScale": 1, + "levels": [9, 16] + }, + { + "name": "Higher order", + "lang": "higherorder", + "textScale": 1, + "levels": [17, 24] + }, + { + "name": "Mechanics", + "lang": "mechanicis", + "textScale": 1, + "levels": [25, 32] + }, + { + "name": "OvO Space Program", + "lang": "ovospaceprogram", + "textScale": 1, + "levels": [33, 40] + }, + { + "name": "Journey through the portal", + "lang": "jttp", + "textScale": 0.8, + "levels": [41, 48] + }, + { + "name": "Community levels", + "lang": "community", + "textScale": 1, + "levels": [49, 52] + } +] diff --git a/gversion/gs/ovo/lightspeed.png b/gversion/gs/ovo/lightspeed.png new file mode 100644 index 0000000..da8ba9f Binary files /dev/null and b/gversion/gs/ovo/lightspeed.png differ diff --git a/gversion/gs/ovo/lknight.png b/gversion/gs/ovo/lknight.png new file mode 100644 index 0000000..071fd03 Binary files /dev/null and b/gversion/gs/ovo/lknight.png differ diff --git a/gversion/gs/ovo/loading-logo.png b/gversion/gs/ovo/loading-logo.png new file mode 100644 index 0000000..43a320b Binary files /dev/null and b/gversion/gs/ovo/loading-logo.png differ diff --git a/gversion/gs/ovo/lzma.js b/gversion/gs/ovo/lzma.js new file mode 100644 index 0000000..a2a6121 --- /dev/null +++ b/gversion/gs/ovo/lzma.js @@ -0,0 +1,5 @@ +var e=function(){"use strict";function r(e,r){postMessage({action:xt,cbn:r,result:e})}function t(e){var r=[];return r[e-1]=void 0,r}function o(e,r){return i(e[0]+r[0],e[1]+r[1])}function n(e,r){return u(~~Math.max(Math.min(e[1]/Ot,2147483647),-2147483648)&~~Math.max(Math.min(r[1]/Ot,2147483647),-2147483648),c(e)&c(r))}function s(e,r){var t,o;return e[0]==r[0]&&e[1]==r[1]?0:(t=0>e[1],o=0>r[1],t&&!o?-1:!t&&o?1:h(e,r)[1]<0?-1:1)}function i(e,r){var t,o;for(r%=0x10000000000000000,e%=0x10000000000000000,t=r%Ot,o=Math.floor(e/Ot)*Ot,r=r-t+o,e=e-o+t;0>e;)e+=Ot,r-=Ot;for(;e>4294967295;)e-=Ot,r+=Ot;for(r%=0x10000000000000000;r>0x7fffffff00000000;)r-=0x10000000000000000;for(;-0x8000000000000000>r;)r+=0x10000000000000000;return[e,r]}function _(e,r){return e[0]==r[0]&&e[1]==r[1]}function a(e){return e>=0?[e,0]:[e+Ot,-Ot]}function c(e){return e[0]>=2147483648?~~Math.max(Math.min(e[0]-Ot,2147483647),-2147483648):~~Math.max(Math.min(e[0],2147483647),-2147483648)}function u(e,r){var t,o;return t=e*Ot,o=r,0>r&&(o+=Ot),[o,t]}function f(e){return 30>=e?1<e[1])throw Error("Neg");return s=f(r),o=e[1]*s%0x10000000000000000,n=e[0]*s,t=n-n%Ot,o+=t,n-=t,o>=0x8000000000000000&&(o-=0x10000000000000000),[n,o]}function d(e,r){var t;return r&=63,t=f(r),i(Math.floor(e[0]/t),e[1]/t)}function p(e,r){var t;return r&=63,t=d(e,r),0>e[1]&&(t=o(t,m([2,0],63-r))),t}function h(e,r){return i(e[0]-r[0],e[1]-r[1])}function P(e,r){return e.Mc=r,e.Lc=0,e.Yb=r.length,e}function l(e){return e.Lc>=e.Yb?-1:255&e.Mc[e.Lc++]}function v(e,r,t,o){return e.Lc>=e.Yb?-1:(o=Math.min(o,e.Yb-e.Lc),M(e.Mc,e.Lc,r,t,o),e.Lc+=o,o)}function B(e){return e.Mc=t(32),e.Yb=0,e}function S(e){var r=e.Mc;return r.length=e.Yb,r}function g(e,r){e.Mc[e.Yb++]=r<<24>>24}function k(e,r,t,o){M(r,t,e.Mc,e.Yb,o),e.Yb+=o}function R(e,r,t,o,n){var s;for(s=r;t>s;++s)o[n++]=e.charCodeAt(s)}function M(e,r,t,o,n){for(var s=0;n>s;++s)t[o+s]=e[r+s]}function D(e,r){Ar(r,1<a;a+=8)g(o,255&c(d(n,a)));r.yb=(_.W=0,_.oc=t,_.pc=0,Mr(_),_.d.Ab=o,Fr(_),wr(_),br(_),_.$.rb=_.n+1-2,Qr(_.$,1<<_.Y),_.i.rb=_.n+1-2,Qr(_.i,1<<_.Y),void(_.g=Gt),X({},_))}function w(e,r,t){return e.Nb=B({}),b(e,P({},r),e.Nb,a(r.length),t),e}function E(e,r,t){var o,n,s,i,_="",c=[];for(n=0;5>n;++n){if(s=l(r),-1==s)throw Error("truncated input");c[n]=s<<24>>24}if(o=ir({}),!ar(o,c))throw Error("corrupted input");for(n=0;64>n;n+=8){if(s=l(r),-1==s)throw Error("truncated input");s=s.toString(16),1==s.length&&(s="0"+s),_=s+""+_}/^0+$|^f+$/i.test(_)?e.Tb=At:(i=parseInt(_,16),e.Tb=i>4294967295?At:a(i)),e.yb=nr(o,r,t,e.Tb)}function L(e,r){return e.Nb=B({}),E(e,P({},r),e.Nb),e}function y(e,r,o,n){var s;e.Bc=r,e._b=o,s=r+o+n,(null==e.c||e.Kb!=s)&&(e.c=null,e.Kb=s,e.c=t(e.Kb)),e.H=e.Kb-o}function C(e,r){return e.c[e.f+e.o+r]}function z(e,r,t,o){var n,s;for(e.T&&e.o+r+o>e.h&&(o=e.h-(e.o+r)),++t,s=e.f+e.o+r,n=0;o>n&&e.c[s+n]==e.c[s+n-t];++n);return n}function F(e){return e.h-e.o}function I(e){var r,t,o;for(o=e.f+e.o-e.Bc,o>0&&--o,t=e.f+e.h-o,r=0;t>r;++r)e.c[r]=e.c[o+r];e.f-=o}function x(e){var r;++e.o,e.o>e.zb&&(r=e.f+e.o,r>e.H&&I(e),N(e))}function N(e){var r,t,o;if(!e.T)for(;;){if(o=-e.f+e.Kb-e.h,!o)return;if(r=v(e.cc,e.c,e.f+e.h,o),-1==r)return e.zb=e.h,t=e.f+e.zb,t>e.H&&(e.zb=e.H-e.f),void(e.T=1);e.h+=r,e.h>=e.o+e._b&&(e.zb=e.h-e._b)}}function O(e,r){e.f+=r,e.zb-=r,e.o-=r,e.h-=r}function A(e,r,o,n,s){var i,_,a;1073741567>r&&(e.Fc=16+(n>>1),a=~~((r+o+n+s)/2)+256,y(e,r+o,n+s,a),e.ob=n,i=r+1,e.p!=i&&(e.L=t(2*(e.p=i))),_=65536,e.qb&&(_=r-1,_|=_>>1,_|=_>>2,_|=_>>4,_|=_>>8,_>>=1,_|=65535,_>16777216&&(_>>=1),e.Ec=_,++_,_+=e.R),_!=e.rc&&(e.ub=t(e.rc=_)))}function H(e,r){var t,o,n,s,i,_,a,c,u,f,m,d,p,h,P,l,v,B,S,g,k;if(e.h>=e.o+e.ob)h=e.ob;else if(h=e.h-e.o,e.xb>h)return W(e),0;for(v=0,P=e.o>e.p?e.o-e.p:0,o=e.f+e.o,l=1,c=0,u=0,e.qb?(k=Tt[255&e.c[o]]^255&e.c[o+1],c=1023&k,k^=(255&e.c[o+2])<<8,u=65535&k,f=(k^Tt[255&e.c[o+3]]<<5)&e.Ec):f=255&e.c[o]^(255&e.c[o+1])<<8,n=e.ub[e.R+f]||0,e.qb&&(s=e.ub[c]||0,i=e.ub[1024+u]||0,e.ub[c]=e.o,e.ub[1024+u]=e.o,s>P&&e.c[e.f+s]==e.c[o]&&(r[v++]=l=2,r[v++]=e.o-s-1),i>P&&e.c[e.f+i]==e.c[o]&&(i==s&&(v-=2),r[v++]=l=3,r[v++]=e.o-i-1,s=i),0!=v&&s==n&&(v-=2,l=1)),e.ub[e.R+f]=e.o,S=(e.k<<1)+1,g=e.k<<1,d=p=e.w,0!=e.w&&n>P&&e.c[e.f+n+e.w]!=e.c[o+e.w]&&(r[v++]=l=e.w,r[v++]=e.o-n-1),t=e.Fc;;){if(P>=n||0==t--){e.L[S]=e.L[g]=0;break}if(a=e.o-n,_=(e.k>=a?e.k-a:e.k-a+e.p)<<1,B=e.f+n,m=p>d?d:p,e.c[B+m]==e.c[o+m]){for(;++m!=h&&e.c[B+m]==e.c[o+m];);if(m>l&&(r[v++]=l=m,r[v++]=a-1,m==h)){e.L[g]=e.L[_],e.L[S]=e.L[_+1];break}}(255&e.c[o+m])>(255&e.c[B+m])?(e.L[g]=n,g=_+1,n=e.L[g],p=m):(e.L[S]=n,S=_,n=e.L[S],d=m)}return W(e),v}function G(e){e.f=0,e.o=0,e.h=0,e.T=0,N(e),e.k=0,O(e,-1)}function W(e){var r;++e.k>=e.p&&(e.k=0),x(e),1073741823==e.o&&(r=e.o-e.p,T(e.L,2*e.p,r),T(e.ub,e.rc,r),O(e,r))}function T(e,r,t){var o,n;for(o=0;r>o;++o)n=e[o]||0,t>=n?n=0:n-=t,e[o]=n}function Z(e,r){e.qb=r>2,e.qb?(e.w=0,e.xb=4,e.R=66560):(e.w=2,e.xb=3,e.R=0)}function Y(e,r){var t,o,n,s,i,_,a,c,u,f,m,d,p,h,P,l,v;do{if(e.h>=e.o+e.ob)d=e.ob;else if(d=e.h-e.o,e.xb>d){W(e);continue}for(p=e.o>e.p?e.o-e.p:0,o=e.f+e.o,e.qb?(v=Tt[255&e.c[o]]^255&e.c[o+1],_=1023&v,e.ub[_]=e.o,v^=(255&e.c[o+2])<<8,a=65535&v,e.ub[1024+a]=e.o,c=(v^Tt[255&e.c[o+3]]<<5)&e.Ec):c=255&e.c[o]^(255&e.c[o+1])<<8,n=e.ub[e.R+c],e.ub[e.R+c]=e.o,P=(e.k<<1)+1,l=e.k<<1,f=m=e.w,t=e.Fc;;){if(p>=n||0==t--){e.L[P]=e.L[l]=0;break}if(i=e.o-n,s=(e.k>=i?e.k-i:e.k-i+e.p)<<1,h=e.f+n,u=m>f?f:m,e.c[h+u]==e.c[o+u]){for(;++u!=d&&e.c[h+u]==e.c[o+u];);if(u==d){e.L[l]=e.L[s],e.L[P]=e.L[s+1];break}}(255&e.c[o+u])>(255&e.c[h+u])?(e.L[l]=n,l=s+1,n=e.L[l],m=u):(e.L[P]=n,P=s,n=e.L[P],f=u)}W(e)}while(0!=--r)}function V(e,r,t){var o=e.o-r-1;for(0>o&&(o+=e.M);0!=t;--t)o>=e.M&&(o=0),e.Lb[e.o++]=e.Lb[o++],e.o>=e.M&&$(e)}function j(e,r){(null==e.Lb||e.M!=r)&&(e.Lb=t(r)),e.M=r,e.o=0,e.h=0}function $(e){var r=e.o-e.h;r&&(k(e.cc,e.Lb,e.h,r),e.o>=e.M&&(e.o=0),e.h=e.o)}function K(e,r){var t=e.o-r-1;return 0>t&&(t+=e.M),e.Lb[t]}function q(e,r){e.Lb[e.o++]=r,e.o>=e.M&&$(e)}function J(e){$(e),e.cc=null}function Q(e){return e-=2,4>e?e:3}function U(e){return 4>e?0:10>e?e-3:e-6}function X(e,r){return e.cb=r,e.Z=null,e.zc=1,e}function er(e,r){return e.Z=r,e.cb=null,e.zc=1,e}function rr(e){if(!e.zc)throw Error("bad state");return e.cb?or(e):tr(e),e.zc}function tr(e){var r=sr(e.Z);if(-1==r)throw Error("corrupted input");e.Pb=At,e.Pc=e.Z.g,(r||s(e.Z.Nc,Gt)>=0&&s(e.Z.g,e.Z.Nc)>=0)&&($(e.Z.B),J(e.Z.B),e.Z.e.Ab=null,e.zc=0)}function or(e){Rr(e.cb,e.cb.Xb,e.cb.uc,e.cb.Kc),e.Pb=e.cb.Xb[0],e.cb.Kc[0]&&(Or(e.cb),e.zc=0)}function nr(e,r,t,o){return e.e.Ab=r,J(e.B),e.B.cc=t,_r(e),e.U=0,e.ib=0,e.Jc=0,e.Ic=0,e.Qc=0,e.Nc=o,e.g=Gt,e.jc=0,er({},e)}function sr(e){var r,t,n,i,_,u;if(u=c(e.g)&e.Dc,vt(e.e,e.Gb,(e.U<<4)+u)){if(vt(e.e,e.Zb,e.U))n=0,vt(e.e,e.Cb,e.U)?(vt(e.e,e.Db,e.U)?(vt(e.e,e.Eb,e.U)?(t=e.Qc,e.Qc=e.Ic):t=e.Ic,e.Ic=e.Jc):t=e.Jc,e.Jc=e.ib,e.ib=t):vt(e.e,e.pb,(e.U<<4)+u)||(e.U=7>e.U?9:11,n=1),n||(n=mr(e.sb,e.e,u)+2,e.U=7>e.U?8:11);else if(e.Qc=e.Ic,e.Ic=e.Jc,e.Jc=e.ib,n=2+mr(e.Rb,e.e,u),e.U=7>e.U?7:10,_=at(e.kb[Q(n)],e.e),_>=4){if(i=(_>>1)-1,e.ib=(2|1&_)<_)e.ib+=ut(e.kc,e.ib-_-1,e.e,i);else if(e.ib+=Bt(e.e,i-4)<<4,e.ib+=ct(e.Fb,e.e),0>e.ib)return-1==e.ib?1:-1}else e.ib=_;if(s(a(e.ib),e.g)>=0||e.ib>=e.nb)return-1;V(e.B,e.ib,n),e.g=o(e.g,a(n)),e.jc=K(e.B,0)}else r=Pr(e.gb,c(e.g),e.jc),e.jc=7>e.U?vr(r,e.e):Br(r,e.e,K(e.B,e.ib)),q(e.B,e.jc),e.U=U(e.U),e.g=o(e.g,Wt);return 0}function ir(e){e.B={},e.e={},e.Gb=t(192),e.Zb=t(12),e.Cb=t(12),e.Db=t(12),e.Eb=t(12),e.pb=t(192),e.kb=t(4),e.kc=t(114),e.Fb=_t({},4),e.Rb=dr({}),e.sb=dr({}),e.gb={};for(var r=0;4>r;++r)e.kb[r]=_t({},6);return e}function _r(e){e.B.h=0,e.B.o=0,gt(e.Gb),gt(e.pb),gt(e.Zb),gt(e.Cb),gt(e.Db),gt(e.Eb),gt(e.kc),lr(e.gb);for(var r=0;4>r;++r)gt(e.kb[r].G);pr(e.Rb),pr(e.sb),gt(e.Fb.G),St(e.e)}function ar(e,r){var t,o,n,s,i,_,a;if(5>r.length)return 0;for(a=255&r[0],n=a%9,_=~~(a/9),s=_%5,i=~~(_/5),t=0,o=0;4>o;++o)t+=(255&r[1+o])<<8*o;return t>99999999||!ur(e,n,s,i)?0:cr(e,t)}function cr(e,r){return 0>r?0:(e.Ob!=r&&(e.Ob=r,e.nb=Math.max(e.Ob,1),j(e.B,Math.max(e.nb,4096))),1)}function ur(e,r,t,o){if(r>8||t>4||o>4)return 0;hr(e.gb,t,r);var n=1<e.O;++e.O)e.ec[e.O]=_t({},3),e.hc[e.O]=_t({},3)}function mr(e,r,t){if(!vt(r,e.wc,0))return at(e.ec[t],r);var o=8;return o+=vt(r,e.wc,1)?8+at(e.tc,r):at(e.hc[t],r)}function dr(e){return e.wc=t(2),e.ec=t(16),e.hc=t(16),e.tc=_t({},8),e.O=0,e}function pr(e){gt(e.wc);for(var r=0;e.O>r;++r)gt(e.ec[r].G),gt(e.hc[r].G);gt(e.tc.G)}function hr(e,r,o){var n,s;if(null==e.V||e.u!=o||e.I!=r)for(e.I=r,e.qc=(1<n;++n)e.V[n]=Sr({})}function Pr(e,r,t){return e.V[((r&e.qc)<>>8-e.u)]}function lr(e){var r,t;for(t=1<r;++r)gt(e.V[r].Ib)}function vr(e,r){var t=1;do t=t<<1|vt(r,e.Ib,t);while(256>t);return t<<24>>24}function Br(e,r,t){var o,n,s=1;do if(n=t>>7&1,t<<=1,o=vt(r,e.Ib,(1+n<<8)+s),s=s<<1|o,n!=o){for(;256>s;)s=s<<1|vt(r,e.Ib,s);break}while(256>s);return s<<24>>24}function Sr(e){return e.Ib=t(768),e}function gr(e,r){var t,o,n,s;e.jb=r,n=e.a[r].r,o=e.a[r].j;do e.a[r].t&&(st(e.a[n]),e.a[n].r=n-1,e.a[r].Ac&&(e.a[n-1].t=0,e.a[n-1].r=e.a[r].r2,e.a[n-1].j=e.a[r].j2)),s=n,t=o,o=e.a[s].j,n=e.a[s].r,e.a[s].j=t,e.a[s].r=r,r=s;while(r>0);return e.mb=e.a[0].j,e.q=e.a[0].r}function kr(e){e.l=0,e.J=0;for(var r=0;4>r;++r)e.v[r]=0}function Rr(e,r,t,n){var i,u,f,m,d,p,P,l,v,B,S,g,k,R,M;if(r[0]=Gt,t[0]=Gt,n[0]=1,e.oc&&(e.b.cc=e.oc,G(e.b),e.W=1,e.oc=null),!e.pc){if(e.pc=1,R=e.g,_(e.g,Gt)){if(!F(e.b))return void Er(e,c(e.g));xr(e),k=c(e.g)&e.y,kt(e.d,e.C,(e.l<<4)+k,0),e.l=U(e.l),f=C(e.b,-e.s),rt(Xr(e.A,c(e.g),e.J),e.d,f),e.J=f,--e.s,e.g=o(e.g,Wt)}if(!F(e.b))return void Er(e,c(e.g));for(;;){if(P=Lr(e,c(e.g)),B=e.mb,k=c(e.g)&e.y,u=(e.l<<4)+k,1==P&&-1==B)kt(e.d,e.C,u,0),f=C(e.b,-e.s),M=Xr(e.A,c(e.g),e.J),7>e.l?rt(M,e.d,f):(v=C(e.b,-e.v[0]-1-e.s),tt(M,e.d,v,f)),e.J=f,e.l=U(e.l);else{if(kt(e.d,e.C,u,1),4>B){if(kt(e.d,e.bb,e.l,1),B?(kt(e.d,e.hb,e.l,1),1==B?kt(e.d,e.Ub,e.l,0):(kt(e.d,e.Ub,e.l,1),kt(e.d,e.vc,e.l,B-2))):(kt(e.d,e.hb,e.l,0),1==P?kt(e.d,e._,u,0):kt(e.d,e._,u,1)),1==P?e.l=7>e.l?9:11:(Kr(e.i,e.d,P-2,k),e.l=7>e.l?8:11),m=e.v[B],0!=B){for(p=B;p>=1;--p)e.v[p]=e.v[p-1];e.v[0]=m}}else{for(kt(e.d,e.bb,e.l,0),e.l=7>e.l?7:10,Kr(e.$,e.d,P-2,k),B-=4,g=Tr(B),l=Q(P),mt(e.K[l],e.d,g),g>=4&&(d=(g>>1)-1,i=(2|1&g)<g?Pt(e.Sb,i-g-1,e.d,d,S):(Rt(e.d,S>>4,d-4),pt(e.S,e.d,15&S),++e.Qb)),m=B,p=3;p>=1;--p)e.v[p]=e.v[p-1];e.v[0]=m,++e.Mb}e.J=C(e.b,P-1-e.s)}if(e.s-=P,e.g=o(e.g,a(P)),!e.s){if(e.Mb>=128&&wr(e),e.Qb>=16&&br(e),r[0]=e.g,t[0]=Mt(e.d),!F(e.b))return void Er(e,c(e.g));if(s(h(e.g,R),[4096,0])>=0)return e.pc=0,void(n[0]=0)}}}}function Mr(e){var r,t;e.b||(r={},t=4,e.X||(t=2),Z(r,t),e.b=r),Ur(e.A,e.eb,e.fb),(e.ab!=e.wb||e.Hb!=e.n)&&(A(e.b,e.ab,4096,e.n,274),e.wb=e.ab,e.Hb=e.n)}function Dr(e){var r;for(e.v=t(4),e.a=[],e.d={},e.C=t(192),e.bb=t(12),e.hb=t(12),e.Ub=t(12),e.vc=t(12),e._=t(192),e.K=[],e.Sb=t(114),e.S=ft({},4),e.$=qr({}),e.i=qr({}),e.A={},e.m=[],e.P=[],e.lb=[],e.nc=t(16),e.x=t(4),e.Q=t(4),e.Xb=[Gt],e.uc=[Gt],e.Kc=[0],e.fc=t(5),e.yc=t(128),e.vb=0,e.X=1,e.D=0,e.Hb=-1,e.mb=0,r=0;4096>r;++r)e.a[r]={};for(r=0;4>r;++r)e.K[r]=ft({},6);return e}function br(e){for(var r=0;16>r;++r)e.nc[r]=ht(e.S,r);e.Qb=0}function wr(e){var r,t,o,n,s,i,_,a;for(n=4;128>n;++n)i=Tr(n),o=(i>>1)-1,r=(2|1&i)<s;++s){for(t=e.K[s],_=s<<6,i=0;e.$b>i;++i)e.P[_+i]=dt(t,i);for(i=14;e.$b>i;++i)e.P[_+i]+=(i>>1)-1-4<<6;for(a=128*s,n=0;4>n;++n)e.lb[a+n]=e.P[_+n];for(;128>n;++n)e.lb[a+n]=e.P[_+Tr(n)]+e.yc[n]}e.Mb=0}function Er(e,r){Nr(e),Wr(e,r&e.y);for(var t=0;5>t;++t)bt(e.d)}function Lr(e,r){var t,o,n,s,i,_,a,c,u,f,m,d,p,h,P,l,v,B,S,g,k,R,M,D,b,w,E,L,y,I,x,N,O,A,H,G,W,T,Z,Y,V,j,$,K,q,J,Q,X,er,rr;if(e.jb!=e.q)return p=e.a[e.q].r-e.q,e.mb=e.a[e.q].j,e.q=e.a[e.q].r,p;if(e.q=e.jb=0,e.N?(d=e.vb,e.N=0):d=xr(e),E=e.D,b=F(e.b)+1,2>b)return e.mb=-1,1;for(b>273&&(b=273),Y=0,u=0;4>u;++u)e.x[u]=e.v[u],e.Q[u]=z(e.b,-1,e.x[u],273),e.Q[u]>e.Q[Y]&&(Y=u);if(e.Q[Y]>=e.n)return e.mb=Y,p=e.Q[Y],Ir(e,p-1),p;if(d>=e.n)return e.mb=e.m[E-1]+4,Ir(e,d-1),d;if(a=C(e.b,-1),v=C(e.b,-e.v[0]-1-1),2>d&&a!=v&&2>e.Q[Y])return e.mb=-1,1;if(e.a[0].Hc=e.l,A=r&e.y,e.a[1].z=Yt[e.C[(e.l<<4)+A]>>>2]+nt(Xr(e.A,r,e.J),e.l>=7,v,a),st(e.a[1]),B=Yt[2048-e.C[(e.l<<4)+A]>>>2],Z=B+Yt[2048-e.bb[e.l]>>>2],v==a&&(V=Z+zr(e,e.l,A),e.a[1].z>V&&(e.a[1].z=V,it(e.a[1]))),m=d>=e.Q[Y]?d:e.Q[Y],2>m)return e.mb=e.a[1].j,1;e.a[1].r=0,e.a[0].bc=e.x[0],e.a[0].ac=e.x[1],e.a[0].dc=e.x[2],e.a[0].lc=e.x[3],f=m;do e.a[f--].z=268435455;while(f>=2);for(u=0;4>u;++u)if(T=e.Q[u],!(2>T)){G=Z+Cr(e,u,e.l,A);do s=G+Jr(e.i,T-2,A),x=e.a[T],x.z>s&&(x.z=s,x.r=0,x.j=u,x.t=0);while(--T>=2)}if(D=B+Yt[e.bb[e.l]>>>2],f=e.Q[0]>=2?e.Q[0]+1:2,d>=f){for(L=0;f>e.m[L];)L+=2;for(;c=e.m[L+1],s=D+yr(e,c,f,A),x=e.a[f],x.z>s&&(x.z=s,x.r=0,x.j=c+4,x.t=0),f!=e.m[L]||(L+=2,L!=E);++f);}for(t=0;;){if(++t,t==m)return gr(e,t);if(S=xr(e),E=e.D,S>=e.n)return e.vb=S,e.N=1,gr(e,t);if(++r,O=e.a[t].r,e.a[t].t?(--O,e.a[t].Ac?($=e.a[e.a[t].r2].Hc,$=4>e.a[t].j2?7>$?8:11:7>$?7:10):$=e.a[O].Hc,$=U($)):$=e.a[O].Hc,O==t-1?$=e.a[t].j?U($):7>$?9:11:(e.a[t].t&&e.a[t].Ac?(O=e.a[t].r2,N=e.a[t].j2,$=7>$?8:11):(N=e.a[t].j,$=4>N?7>$?8:11:7>$?7:10),I=e.a[O],4>N?N?1==N?(e.x[0]=I.ac,e.x[1]=I.bc,e.x[2]=I.dc,e.x[3]=I.lc):2==N?(e.x[0]=I.dc,e.x[1]=I.bc,e.x[2]=I.ac,e.x[3]=I.lc):(e.x[0]=I.lc,e.x[1]=I.bc,e.x[2]=I.ac,e.x[3]=I.dc):(e.x[0]=I.bc,e.x[1]=I.ac,e.x[2]=I.dc,e.x[3]=I.lc):(e.x[0]=N-4,e.x[1]=I.bc,e.x[2]=I.ac,e.x[3]=I.dc)),e.a[t].Hc=$,e.a[t].bc=e.x[0],e.a[t].ac=e.x[1],e.a[t].dc=e.x[2],e.a[t].lc=e.x[3],_=e.a[t].z,a=C(e.b,-1),v=C(e.b,-e.x[0]-1-1),A=r&e.y,o=_+Yt[e.C[($<<4)+A]>>>2]+nt(Xr(e.A,r,C(e.b,-2)),$>=7,v,a),R=e.a[t+1],g=0,R.z>o&&(R.z=o,R.r=t,R.j=-1,R.t=0,g=1),B=_+Yt[2048-e.C[($<<4)+A]>>>2],Z=B+Yt[2048-e.bb[$]>>>2],v!=a||t>R.r&&!R.j||(V=Z+(Yt[e.hb[$]>>>2]+Yt[e._[($<<4)+A]>>>2]),R.z>=V&&(R.z=V,R.r=t,R.j=0,R.t=0,g=1)),w=F(e.b)+1,w=w>4095-t?4095-t:w,b=w,!(2>b)){if(b>e.n&&(b=e.n),!g&&v!=a&&(q=Math.min(w-1,e.n),P=z(e.b,0,e.x[0],q),P>=2)){for(K=U($),H=r+1&e.y,M=o+Yt[2048-e.C[(K<<4)+H]>>>2]+Yt[2048-e.bb[K]>>>2],y=t+1+P;y>m;)e.a[++m].z=268435455;s=M+(J=Jr(e.i,P-2,H),J+Cr(e,0,K,H)),x=e.a[y],x.z>s&&(x.z=s,x.r=t+1,x.j=0,x.t=1,x.Ac=0)}for(j=2,W=0;4>W;++W)if(h=z(e.b,-1,e.x[W],b),!(2>h)){l=h;do{for(;t+h>m;)e.a[++m].z=268435455;s=Z+(Q=Jr(e.i,h-2,A),Q+Cr(e,W,$,A)),x=e.a[t+h],x.z>s&&(x.z=s,x.r=t,x.j=W,x.t=0)}while(--h>=2);if(h=l,W||(j=h+1),w>h&&(q=Math.min(w-1-h,e.n),P=z(e.b,h,e.x[W],q),P>=2)){for(K=7>$?8:11,H=r+h&e.y,n=Z+(X=Jr(e.i,h-2,A),X+Cr(e,W,$,A))+Yt[e.C[(K<<4)+H]>>>2]+nt(Xr(e.A,r+h,C(e.b,h-1-1)),1,C(e.b,h-1-(e.x[W]+1)),C(e.b,h-1)),K=U(K),H=r+h+1&e.y,k=n+Yt[2048-e.C[(K<<4)+H]>>>2],M=k+Yt[2048-e.bb[K]>>>2],y=h+1+P;t+y>m;)e.a[++m].z=268435455;s=M+(er=Jr(e.i,P-2,H),er+Cr(e,0,K,H)),x=e.a[t+y],x.z>s&&(x.z=s,x.r=t+h+1,x.j=0,x.t=1,x.Ac=1,x.r2=t,x.j2=W)}}if(S>b){for(S=b,E=0;S>e.m[E];E+=2);e.m[E]=S,E+=2}if(S>=j){for(D=B+Yt[e.bb[$]>>>2];t+S>m;)e.a[++m].z=268435455;for(L=0;j>e.m[L];)L+=2;for(h=j;;++h)if(i=e.m[L+1],s=D+yr(e,i,h,A),x=e.a[t+h],x.z>s&&(x.z=s,x.r=t,x.j=i+4,x.t=0),h==e.m[L]){if(w>h&&(q=Math.min(w-1-h,e.n),P=z(e.b,h,i,q),P>=2)){for(K=7>$?7:10,H=r+h&e.y,n=s+Yt[e.C[(K<<4)+H]>>>2]+nt(Xr(e.A,r+h,C(e.b,h-1-1)),1,C(e.b,h-(i+1)-1),C(e.b,h-1)),K=U(K),H=r+h+1&e.y,k=n+Yt[2048-e.C[(K<<4)+H]>>>2],M=k+Yt[2048-e.bb[K]>>>2],y=h+1+P;t+y>m;)e.a[++m].z=268435455;s=M+(rr=Jr(e.i,P-2,H),rr+Cr(e,0,K,H)),x=e.a[t+y],x.z>s&&(x.z=s,x.r=t+h+1,x.j=0,x.t=1,x.Ac=1,x.r2=t,x.j2=i+4)}if(L+=2,L==E)break}}}}}function yr(e,r,t,o){var n,s=Q(t);return n=128>r?e.lb[128*s+r]:e.P[(s<<6)+Zr(r)]+e.nc[15&r],n+Jr(e.$,t-2,o)}function Cr(e,r,t,o){var n;return r?(n=Yt[2048-e.hb[t]>>>2],1==r?n+=Yt[e.Ub[t]>>>2]:(n+=Yt[2048-e.Ub[t]>>>2],n+=wt(e.vc[t],r-2))):(n=Yt[e.hb[t]>>>2],n+=Yt[2048-e._[(t<<4)+o]>>>2]),n}function zr(e,r,t){return Yt[e.hb[r]>>>2]+Yt[e._[(r<<4)+t]>>>2]}function Fr(e){kr(e),Dt(e.d),gt(e.C),gt(e._),gt(e.bb),gt(e.hb),gt(e.Ub),gt(e.vc),gt(e.Sb),et(e.A);for(var r=0;4>r;++r)gt(e.K[r].G);jr(e.$,1<0&&(Y(e.b,r),e.s+=r)}function xr(e){var r=0;return e.D=H(e.b,e.m),e.D>0&&(r=e.m[e.D-2],r==e.n&&(r+=z(e.b,r-1,e.m[e.D-1],273-r))),++e.s,r}function Nr(e){e.b&&e.W&&(e.b.cc=null,e.W=0)}function Or(e){Nr(e),e.d.Ab=null}function Ar(e,r){e.ab=r;for(var t=0;r>1<>24;for(var t=0;4>t;++t)e.fc[1+t]=e.ab>>8*t<<24>>24;k(r,e.fc,0,5)}function Wr(e,r){if(e.Gc){kt(e.d,e.C,(e.l<<4)+r,1),kt(e.d,e.bb,e.l,0),e.l=7>e.l?7:10,Kr(e.$,e.d,0,r);var t=Q(2);mt(e.K[t],e.d,63),Rt(e.d,67108863,26),pt(e.S,e.d,15)}}function Tr(e){return 2048>e?Zt[e]:2097152>e?Zt[e>>10]+20:Zt[e>>20]+40}function Zr(e){return 131072>e?Zt[e>>6]+12:134217728>e?Zt[e>>16]+32:Zt[e>>26]+52}function Yr(e,r,t,o){8>t?(kt(r,e.db,0,0),mt(e.Vb[o],r,t)):(t-=8,kt(r,e.db,0,1),8>t?(kt(r,e.db,1,0),mt(e.Wb[o],r,t)):(kt(r,e.db,1,1),mt(e.ic,r,t-8)))}function Vr(e){e.db=t(2),e.Vb=t(16),e.Wb=t(16),e.ic=ft({},8);for(var r=0;16>r;++r)e.Vb[r]=ft({},3),e.Wb[r]=ft({},3);return e}function jr(e,r){gt(e.db);for(var t=0;r>t;++t)gt(e.Vb[t].G),gt(e.Wb[t].G);gt(e.ic.G)}function $r(e,r,t,o,n){var s,i,_,a,c;for(s=Yt[e.db[0]>>>2],i=Yt[2048-e.db[0]>>>2],_=i+Yt[e.db[1]>>>2],a=i+Yt[2048-e.db[1]>>>2],c=0,c=0;8>c;++c){if(c>=t)return;o[n+c]=s+dt(e.Vb[r],c)}for(;16>c;++c){if(c>=t)return;o[n+c]=_+dt(e.Wb[r],c-8)}for(;t>c;++c)o[n+c]=a+dt(e.ic,c-8-8)}function Kr(e,r,t,o){Yr(e,r,t,o),0==--e.sc[o]&&($r(e,o,e.rb,e.Cc,272*o),e.sc[o]=e.rb)}function qr(e){return Vr(e),e.Cc=[],e.sc=[],e}function Jr(e,r,t){return e.Cc[272*t+r]}function Qr(e,r){for(var t=0;r>t;++t)$r(e,t,e.rb,e.Cc,272*t),e.sc[t]=e.rb}function Ur(e,r,o){var n,s;if(null==e.V||e.u!=o||e.I!=r)for(e.I=r,e.qc=(1<n;++n)e.V[n]=ot({})}function Xr(e,r,t){return e.V[((r&e.qc)<>>8-e.u)]}function et(e){var r,t=1<r;++r)gt(e.V[r].tb)}function rt(e,r,t){var o,n,s=1;for(n=7;n>=0;--n)o=t>>n&1,kt(r,e.tb,s,o),s=s<<1|o}function tt(e,r,t,o){var n,s,i,_,a=1,c=1;for(s=7;s>=0;--s)n=o>>s&1,_=c,a&&(i=t>>s&1,_+=1+i<<8,a=i==n),kt(r,e.tb,_,n),c=c<<1|n}function ot(e){return e.tb=t(768),e}function nt(e,r,t,o){var n,s,i=1,_=7,a=0;if(r)for(;_>=0;--_)if(s=t>>_&1,n=o>>_&1,a+=wt(e.tb[(1+s<<8)+i],n),i=i<<1|n,s!=n){--_;break}for(;_>=0;--_)n=o>>_&1,a+=wt(e.tb[i],n),i=i<<1|n;return a}function st(e){e.j=-1,e.t=0}function it(e){e.j=0,e.t=0}function _t(e,r){return e.F=r,e.G=t(1<o;++o)t=vt(r,e.G,n),n<<=1,n+=t,s|=t<s;++s)n=vt(t,e,r+i),i<<=1,i+=n,_|=n<>>n&1,kt(r,e.G,s,o),s=s<<1|o}function dt(e,r){var t,o,n=1,s=0;for(o=e.F;0!=o;)--o,t=r>>>o&1,s+=wt(e.G[n],t),n=(n<<1)+t;return s}function pt(e,r,t){var o,n,s=1;for(n=0;e.F>n;++n)o=1&t,kt(r,e.G,s,o),s=s<<1|o,t>>=1}function ht(e,r){var t,o,n=1,s=0;for(o=e.F;0!=o;--o)t=1&r,r>>>=1,s+=wt(e.G[n],t),n=n<<1|t;return s}function Pt(e,r,t,o,n){var s,i,_=1;for(i=0;o>i;++i)s=1&n,kt(t,e,r+_,s),_=_<<1|s,n>>=1}function lt(e,r,t,o){var n,s,i=1,_=0;for(s=t;0!=s;--s)n=1&o,o>>>=1,_+=Yt[(2047&(e[r+i]-n^-n))>>>2],i=i<<1|n;return _}function vt(e,r,t){var o,n=r[t];return o=(e.E>>>11)*n,(-2147483648^o)>(-2147483648^e.Bb)?(e.E=o,r[t]=n+(2048-n>>>5)<<16>>16,-16777216&e.E||(e.Bb=e.Bb<<8|l(e.Ab),e.E<<=8),0):(e.E-=o,e.Bb-=o,r[t]=n-(n>>>5)<<16>>16,-16777216&e.E||(e.Bb=e.Bb<<8|l(e.Ab),e.E<<=8),1)}function Bt(e,r){var t,o,n=0;for(t=r;0!=t;--t)e.E>>>=1,o=e.Bb-e.E>>>31,e.Bb-=e.E&o-1,n=n<<1|1-o,-16777216&e.E||(e.Bb=e.Bb<<8|l(e.Ab),e.E<<=8);return n}function St(e){e.Bb=0,e.E=-1;for(var r=0;5>r;++r)e.Bb=e.Bb<<8|l(e.Ab)}function gt(e){for(var r=e.length-1;r>=0;--r)e[r]=1024}function kt(e,r,t,s){var i,_=r[t];i=(e.E>>>11)*_,s?(e.xc=o(e.xc,n(a(i),[4294967295,0])),e.E-=i,r[t]=_-(_>>>5)<<16>>16):(e.E=i,r[t]=_+(2048-_>>>5)<<16>>16),-16777216&e.E||(e.E<<=8,bt(e))}function Rt(e,r,t){for(var n=t-1;n>=0;--n)e.E>>>=1,1==(r>>>n&1)&&(e.xc=o(e.xc,a(e.E))),-16777216&e.E||(e.E<<=8,bt(e))}function Mt(e){return o(o(a(e.Jb),e.mc),[4,0])}function Dt(e){e.mc=Gt,e.xc=Gt,e.E=-1,e.Jb=1,e.Oc=0}function bt(e){var r,t=c(p(e.xc,32));if(0!=t||s(e.xc,[4278190080,0])<0){e.mc=o(e.mc,a(e.Jb)),r=e.Oc;do g(e.Ab,r+t),r=255;while(0!=--e.Jb);e.Oc=c(e.xc)>>>24}++e.Jb,e.xc=m(n(e.xc,[16777215,0]),8)}function wt(e,r){return Yt[(2047&(e-r^-r))>>>2]}function Et(e){for(var r,t,o,n=0,s=0,i=e.length,_=[],a=[];i>n;++n,++s){if(r=255&e[n],128&r)if(192==(224&r)){if(n+1>=i)return e;if(t=255&e[++n],128!=(192&t))return e;a[s]=(31&r)<<6|63&t}else{if(224!=(240&r))return e; +if(n+2>=i)return e;if(t=255&e[++n],128!=(192&t))return e;if(o=255&e[++n],128!=(192&o))return e;a[s]=(15&r)<<12|(63&t)<<6|63&o}else{if(!r)return e;a[s]=r}16383==s&&(_.push(String.fromCharCode.apply(String,a)),s=-1)}return s>0&&(a.length=s,_.push(String.fromCharCode.apply(String,a))),_.join("")}function Lt(e){var r,t,o,n=[],s=0,i=e.length;if("object"==typeof e)return e;for(R(e,0,i,n,0),o=0;i>o;++o)r=n[o],r>=1&&127>=r?++s:s+=!r||r>=128&&2047>=r?2:3;for(t=[],s=0,o=0;i>o;++o)r=n[o],r>=1&&127>=r?t[s++]=r<<24>>24:!r||r>=128&&2047>=r?(t[s++]=(192|r>>6&31)<<24>>24,t[s++]=(128|63&r)<<24>>24):(t[s++]=(224|r>>12&15)<<24>>24,t[s++]=(128|r>>6&63)<<24>>24,t[s++]=(128|63&r)<<24>>24);return t}function yt(e){return e[1]+e[0]}function Ct(e,t,o,n){function s(){try{for(var e,r=(new Date).getTime();rr(a.c.yb);)if(i=yt(a.c.yb.Pb)/yt(a.c.Tb),(new Date).getTime()-r>200)return n(i),Nt(s,0),0;n(1),e=S(a.c.Nb),Nt(o.bind(null,e),0)}catch(t){o(null,t)}}var i,_,a={},c=void 0===o&&void 0===n;if("function"!=typeof o&&(_=o,o=n=0),n=n||function(e){return void 0!==_?r(e,_):void 0},o=o||function(e,r){return void 0!==_?postMessage({action:Ft,cbn:_,result:e,error:r}):void 0},c){for(a.c=w({},Lt(e),Vt(t));rr(a.c.yb););return S(a.c.Nb)}try{a.c=w({},Lt(e),Vt(t)),n(0)}catch(u){return o(null,u)}Nt(s,0)}function zt(e,t,o){function n(){try{for(var e,r=0,i=(new Date).getTime();rr(c.d.yb);)if(++r%1e3==0&&(new Date).getTime()-i>200)return _&&(s=yt(c.d.yb.Z.g)/a,o(s)),Nt(n,0),0;o(1),e=Et(S(c.d.Nb)),Nt(t.bind(null,e),0)}catch(u){t(null,u)}}var s,i,_,a,c={},u=void 0===t&&void 0===o;if("function"!=typeof t&&(i=t,t=o=0),o=o||function(e){return void 0!==i?r(_?e:-1,i):void 0},t=t||function(e,r){return void 0!==i?postMessage({action:It,cbn:i,result:e,error:r}):void 0},u){for(c.d=L({},e);rr(c.d.yb););return Et(S(c.d.Nb))}try{c.d=L({},e),a=yt(c.d.Tb),_=a>-1,o(0)}catch(f){return t(null,f)}Nt(n,0)}var Ft=1,It=2,xt=3,Nt="function"==typeof setImmediate?setImmediate:setTimeout,Ot=4294967296,At=[4294967295,-Ot],Ht=[0,-0x8000000000000000],Gt=[0,0],Wt=[1,0],Tt=function(){var e,r,t,o=[];for(e=0;256>e;++e){for(t=e,r=0;8>r;++r)0!=(1&t)?t=t>>>1^-306674912:t>>>=1;o[e]=t}return o}(),Zt=function(){var e,r,t,o=2,n=[0,1];for(t=2;22>t;++t)for(r=1<<(t>>1)-1,e=0;r>e;++e,++o)n[o]=t<<24>>24;return n}(),Yt=function(){var e,r,t,o,n=[];for(r=8;r>=0;--r)for(o=1<<9-r-1,e=1<<9-r,t=o;e>t;++t)n[t]=(r<<6)+(e-t<<6>>>9-r-1);return n}(),Vt=function(){var e=[{s:16,f:64,m:0},{s:20,f:64,m:0},{s:19,f:64,m:1},{s:20,f:64,m:1},{s:21,f:128,m:1},{s:22,f:128,m:1},{s:23,f:128,m:1},{s:24,f:255,m:1},{s:25,f:255,m:1}];return function(r){return e[r-1]||e[6]}}();return"undefined"==typeof onmessage||"undefined"!=typeof window&&void 0!==window.document||!function(){onmessage=function(r){r&&r.gc&&(r.gc.action==It?e.decompress(r.gc.gc,r.gc.cbn):r.gc.action==Ft&&e.compress(r.gc.gc,r.gc.Rc,r.gc.cbn))}}(),{compress:Ct,decompress:zt}}();this.LZMA=this.LZMA_WORKER=e; + +//! © 2015 Nathan Rugg | MIT +"undefined"==typeof Worker||"undefined"!=typeof location&&"file:"===location.protocol?"undefined"!=typeof global&&"undefined"!=typeof require?this.LZMA=function(n){return require(n||"./lzma_worker.js").LZMA}:"undefined"!=typeof window&&window.document?!function(){function n(n){var e;return r(n),e={compress:function(n,r,t,i){o.LZMA_WORKER?o.LZMA_WORKER.compress(n,r,t,i):setTimeout(function(){e.compress(n,r,t,i)},50)},decompress:function(n,r,t){o.LZMA_WORKER?o.LZMA_WORKER.decompress(n,r,t):setTimeout(function(){e.decompress(n,r,t)},50)},worker:function(){return null}}}var o,e=this,r=function(o){var r=document.createElement("script");r.type="text/javascript",r.src=o,r.onload=function(){e.LZMA=n},document.getElementsByTagName("head")[0].appendChild(r)};"undefined"!=typeof window?o=window:global&&(o=global),e.LZMA=n}():console.error("Can't load the worker. Sorry."):this.LZMA=function(n){var o=1,e=2,r=3,t={},i=new Worker(n||"./lzma_worker-min.js");return i.onmessage=function(n){n.data.action===r?t[n.data.cbn]&&"function"==typeof t[n.data.cbn].on_progress&&t[n.data.cbn].on_progress(n.data.result):t[n.data.cbn]&&"function"==typeof t[n.data.cbn].on_finish&&(t[n.data.cbn].on_finish(n.data.result,n.data.error),delete t[n.data.cbn])},i.onerror=function(n){var o=Error(n.message+" ("+n.filename+":"+n.lineno+")");for(var e in t)t[e].on_finish(null,o);console.error("Uncaught error in lzma_worker",o)},function(){function n(n,o,e,r,a){var c;do c=Math.floor(1e7*Math.random());while(void 0!==t[c]);t[c]={on_finish:r,on_progress:a},i.postMessage({action:n,cbn:c,data:o,mode:e})}return{compress:function(e,r,t,i){n(o,e,r,t,i)},decompress:function(o,r,t){n(e,o,!1,r,t)},worker:function(){return i}}}()}; \ No newline at end of file diff --git a/gversion/gs/ovo/materwelon.png b/gversion/gs/ovo/materwelon.png new file mode 100644 index 0000000..6677194 Binary files /dev/null and b/gversion/gs/ovo/materwelon.png differ diff --git a/gversion/gs/ovo/mechanics.png b/gversion/gs/ovo/mechanics.png new file mode 100644 index 0000000..9bc921e Binary files /dev/null and b/gversion/gs/ovo/mechanics.png differ diff --git a/gversion/gs/ovo/media/among us death.html b/gversion/gs/ovo/media/among us death.html new file mode 100644 index 0000000..ab183fe Binary files /dev/null and b/gversion/gs/ovo/media/among us death.html differ diff --git a/gversion/gs/ovo/media/among us death.ogg b/gversion/gs/ovo/media/among us death.ogg new file mode 100644 index 0000000..7751372 Binary files /dev/null and b/gversion/gs/ovo/media/among us death.ogg differ diff --git a/gversion/gs/ovo/media/among us slice.html b/gversion/gs/ovo/media/among us slice.html new file mode 100644 index 0000000..1c8d66d Binary files /dev/null and b/gversion/gs/ovo/media/among us slice.html differ diff --git a/gversion/gs/ovo/media/among us slice.ogg b/gversion/gs/ovo/media/among us slice.ogg new file mode 100644 index 0000000..77e9e4c Binary files /dev/null and b/gversion/gs/ovo/media/among us slice.ogg differ diff --git a/gversion/gs/ovo/media/button.html b/gversion/gs/ovo/media/button.html new file mode 100644 index 0000000..a2854d1 Binary files /dev/null and b/gversion/gs/ovo/media/button.html differ diff --git a/gversion/gs/ovo/media/button.ogg b/gversion/gs/ovo/media/button.ogg new file mode 100644 index 0000000..1ebec04 Binary files /dev/null and b/gversion/gs/ovo/media/button.ogg differ diff --git a/gversion/gs/ovo/media/click.html b/gversion/gs/ovo/media/click.html new file mode 100644 index 0000000..67a9495 Binary files /dev/null and b/gversion/gs/ovo/media/click.html differ diff --git a/gversion/gs/ovo/media/click.ogg b/gversion/gs/ovo/media/click.ogg new file mode 100644 index 0000000..05f82d5 Binary files /dev/null and b/gversion/gs/ovo/media/click.ogg differ diff --git a/gversion/gs/ovo/media/coin1.html b/gversion/gs/ovo/media/coin1.html new file mode 100644 index 0000000..139c6af Binary files /dev/null and b/gversion/gs/ovo/media/coin1.html differ diff --git a/gversion/gs/ovo/media/coin1.ogg b/gversion/gs/ovo/media/coin1.ogg new file mode 100644 index 0000000..b5a11f3 Binary files /dev/null and b/gversion/gs/ovo/media/coin1.ogg differ diff --git a/gversion/gs/ovo/media/death-2.html b/gversion/gs/ovo/media/death-2.html new file mode 100644 index 0000000..3002c40 Binary files /dev/null and b/gversion/gs/ovo/media/death-2.html differ diff --git a/gversion/gs/ovo/media/death-2.ogg b/gversion/gs/ovo/media/death-2.ogg new file mode 100644 index 0000000..95e36d1 Binary files /dev/null and b/gversion/gs/ovo/media/death-2.ogg differ diff --git a/gversion/gs/ovo/media/death.html b/gversion/gs/ovo/media/death.html new file mode 100644 index 0000000..942feb2 Binary files /dev/null and b/gversion/gs/ovo/media/death.html differ diff --git a/gversion/gs/ovo/media/death.ogg b/gversion/gs/ovo/media/death.ogg new file mode 100644 index 0000000..3e2c88a Binary files /dev/null and b/gversion/gs/ovo/media/death.ogg differ diff --git a/gversion/gs/ovo/media/first try.html b/gversion/gs/ovo/media/first try.html new file mode 100644 index 0000000..da087cd Binary files /dev/null and b/gversion/gs/ovo/media/first try.html differ diff --git a/gversion/gs/ovo/media/first try.ogg b/gversion/gs/ovo/media/first try.ogg new file mode 100644 index 0000000..570b906 Binary files /dev/null and b/gversion/gs/ovo/media/first try.ogg differ diff --git a/gversion/gs/ovo/media/footstep.html b/gversion/gs/ovo/media/footstep.html new file mode 100644 index 0000000..9619777 Binary files /dev/null and b/gversion/gs/ovo/media/footstep.html differ diff --git a/gversion/gs/ovo/media/footstep.ogg b/gversion/gs/ovo/media/footstep.ogg new file mode 100644 index 0000000..e0fd437 Binary files /dev/null and b/gversion/gs/ovo/media/footstep.ogg differ diff --git a/gversion/gs/ovo/media/heart loop.html b/gversion/gs/ovo/media/heart loop.html new file mode 100644 index 0000000..a3b1e0c Binary files /dev/null and b/gversion/gs/ovo/media/heart loop.html differ diff --git a/gversion/gs/ovo/media/heart loop.ogg b/gversion/gs/ovo/media/heart loop.ogg new file mode 100644 index 0000000..0a53716 Binary files /dev/null and b/gversion/gs/ovo/media/heart loop.ogg differ diff --git a/gversion/gs/ovo/media/hover.html b/gversion/gs/ovo/media/hover.html new file mode 100644 index 0000000..9e9755f Binary files /dev/null and b/gversion/gs/ovo/media/hover.html differ diff --git a/gversion/gs/ovo/media/hover.ogg b/gversion/gs/ovo/media/hover.ogg new file mode 100644 index 0000000..e5768cc Binary files /dev/null and b/gversion/gs/ovo/media/hover.ogg differ diff --git a/gversion/gs/ovo/media/hurt.html b/gversion/gs/ovo/media/hurt.html new file mode 100644 index 0000000..859561a Binary files /dev/null and b/gversion/gs/ovo/media/hurt.html differ diff --git a/gversion/gs/ovo/media/hurt.ogg b/gversion/gs/ovo/media/hurt.ogg new file mode 100644 index 0000000..a9ab92e Binary files /dev/null and b/gversion/gs/ovo/media/hurt.ogg differ diff --git a/gversion/gs/ovo/media/idontevenknow.html b/gversion/gs/ovo/media/idontevenknow.html new file mode 100644 index 0000000..d424bc8 Binary files /dev/null and b/gversion/gs/ovo/media/idontevenknow.html differ diff --git a/gversion/gs/ovo/media/idontevenknow.ogg b/gversion/gs/ovo/media/idontevenknow.ogg new file mode 100644 index 0000000..6eb1590 Binary files /dev/null and b/gversion/gs/ovo/media/idontevenknow.ogg differ diff --git a/gversion/gs/ovo/media/jump.html b/gversion/gs/ovo/media/jump.html new file mode 100644 index 0000000..16f1863 Binary files /dev/null and b/gversion/gs/ovo/media/jump.html differ diff --git a/gversion/gs/ovo/media/jump.ogg b/gversion/gs/ovo/media/jump.ogg new file mode 100644 index 0000000..85fef28 Binary files /dev/null and b/gversion/gs/ovo/media/jump.ogg differ diff --git a/gversion/gs/ovo/media/jumpboost.html b/gversion/gs/ovo/media/jumpboost.html new file mode 100644 index 0000000..05c8801 Binary files /dev/null and b/gversion/gs/ovo/media/jumpboost.html differ diff --git a/gversion/gs/ovo/media/jumpboost.ogg b/gversion/gs/ovo/media/jumpboost.ogg new file mode 100644 index 0000000..c3f0184 Binary files /dev/null and b/gversion/gs/ovo/media/jumpboost.ogg differ diff --git a/gversion/gs/ovo/media/jumpstrong.html b/gversion/gs/ovo/media/jumpstrong.html new file mode 100644 index 0000000..7644410 Binary files /dev/null and b/gversion/gs/ovo/media/jumpstrong.html differ diff --git a/gversion/gs/ovo/media/jumpstrong.ogg b/gversion/gs/ovo/media/jumpstrong.ogg new file mode 100644 index 0000000..0417a13 Binary files /dev/null and b/gversion/gs/ovo/media/jumpstrong.ogg differ diff --git a/gversion/gs/ovo/media/mechanical.html b/gversion/gs/ovo/media/mechanical.html new file mode 100644 index 0000000..8bc50f7 Binary files /dev/null and b/gversion/gs/ovo/media/mechanical.html differ diff --git a/gversion/gs/ovo/media/mechanical.ogg b/gversion/gs/ovo/media/mechanical.ogg new file mode 100644 index 0000000..11366ec Binary files /dev/null and b/gversion/gs/ovo/media/mechanical.ogg differ diff --git a/gversion/gs/ovo/media/menutrack.html b/gversion/gs/ovo/media/menutrack.html new file mode 100644 index 0000000..cdf07b4 Binary files /dev/null and b/gversion/gs/ovo/media/menutrack.html differ diff --git a/gversion/gs/ovo/media/menutrack.ogg b/gversion/gs/ovo/media/menutrack.ogg new file mode 100644 index 0000000..76f9237 Binary files /dev/null and b/gversion/gs/ovo/media/menutrack.ogg differ diff --git a/gversion/gs/ovo/media/plunge.html b/gversion/gs/ovo/media/plunge.html new file mode 100644 index 0000000..b0710c3 Binary files /dev/null and b/gversion/gs/ovo/media/plunge.html differ diff --git a/gversion/gs/ovo/media/plunge.ogg b/gversion/gs/ovo/media/plunge.ogg new file mode 100644 index 0000000..4f4b18f Binary files /dev/null and b/gversion/gs/ovo/media/plunge.ogg differ diff --git a/gversion/gs/ovo/media/pound.html b/gversion/gs/ovo/media/pound.html new file mode 100644 index 0000000..0e376e7 Binary files /dev/null and b/gversion/gs/ovo/media/pound.html differ diff --git a/gversion/gs/ovo/media/pound.ogg b/gversion/gs/ovo/media/pound.ogg new file mode 100644 index 0000000..28b7749 Binary files /dev/null and b/gversion/gs/ovo/media/pound.ogg differ diff --git a/gversion/gs/ovo/media/prepound.html b/gversion/gs/ovo/media/prepound.html new file mode 100644 index 0000000..dd9c2bc Binary files /dev/null and b/gversion/gs/ovo/media/prepound.html differ diff --git a/gversion/gs/ovo/media/prepound.ogg b/gversion/gs/ovo/media/prepound.ogg new file mode 100644 index 0000000..5dc800a Binary files /dev/null and b/gversion/gs/ovo/media/prepound.ogg differ diff --git a/gversion/gs/ovo/media/return.html b/gversion/gs/ovo/media/return.html new file mode 100644 index 0000000..f8e8e9b Binary files /dev/null and b/gversion/gs/ovo/media/return.html differ diff --git a/gversion/gs/ovo/media/return.ogg b/gversion/gs/ovo/media/return.ogg new file mode 100644 index 0000000..50b8ae0 Binary files /dev/null and b/gversion/gs/ovo/media/return.ogg differ diff --git a/gversion/gs/ovo/media/rocket-2.html b/gversion/gs/ovo/media/rocket-2.html new file mode 100644 index 0000000..5899c49 Binary files /dev/null and b/gversion/gs/ovo/media/rocket-2.html differ diff --git a/gversion/gs/ovo/media/rocket-2.ogg b/gversion/gs/ovo/media/rocket-2.ogg new file mode 100644 index 0000000..cf319cb Binary files /dev/null and b/gversion/gs/ovo/media/rocket-2.ogg differ diff --git a/gversion/gs/ovo/media/sfx_transition-01.html b/gversion/gs/ovo/media/sfx_transition-01.html new file mode 100644 index 0000000..a95fa14 Binary files /dev/null and b/gversion/gs/ovo/media/sfx_transition-01.html differ diff --git a/gversion/gs/ovo/media/sfx_transition-01.ogg b/gversion/gs/ovo/media/sfx_transition-01.ogg new file mode 100644 index 0000000..79b0265 Binary files /dev/null and b/gversion/gs/ovo/media/sfx_transition-01.ogg differ diff --git a/gversion/gs/ovo/media/sfx_transition-02.html b/gversion/gs/ovo/media/sfx_transition-02.html new file mode 100644 index 0000000..a037e64 Binary files /dev/null and b/gversion/gs/ovo/media/sfx_transition-02.html differ diff --git a/gversion/gs/ovo/media/sfx_transition-02.ogg b/gversion/gs/ovo/media/sfx_transition-02.ogg new file mode 100644 index 0000000..7bca10c Binary files /dev/null and b/gversion/gs/ovo/media/sfx_transition-02.ogg differ diff --git a/gversion/gs/ovo/media/sfx_transition-03.html b/gversion/gs/ovo/media/sfx_transition-03.html new file mode 100644 index 0000000..315de45 Binary files /dev/null and b/gversion/gs/ovo/media/sfx_transition-03.html differ diff --git a/gversion/gs/ovo/media/sfx_transition-03.ogg b/gversion/gs/ovo/media/sfx_transition-03.ogg new file mode 100644 index 0000000..6ece222 Binary files /dev/null and b/gversion/gs/ovo/media/sfx_transition-03.ogg differ diff --git a/gversion/gs/ovo/media/sfx_transition-04.html b/gversion/gs/ovo/media/sfx_transition-04.html new file mode 100644 index 0000000..718cb3d Binary files /dev/null and b/gversion/gs/ovo/media/sfx_transition-04.html differ diff --git a/gversion/gs/ovo/media/sfx_transition-04.ogg b/gversion/gs/ovo/media/sfx_transition-04.ogg new file mode 100644 index 0000000..a29568b Binary files /dev/null and b/gversion/gs/ovo/media/sfx_transition-04.ogg differ diff --git a/gversion/gs/ovo/media/sfx_transition-05.html b/gversion/gs/ovo/media/sfx_transition-05.html new file mode 100644 index 0000000..03e7071 Binary files /dev/null and b/gversion/gs/ovo/media/sfx_transition-05.html differ diff --git a/gversion/gs/ovo/media/sfx_transition-05.ogg b/gversion/gs/ovo/media/sfx_transition-05.ogg new file mode 100644 index 0000000..b213737 Binary files /dev/null and b/gversion/gs/ovo/media/sfx_transition-05.ogg differ diff --git a/gversion/gs/ovo/media/sfx_transition-06.html b/gversion/gs/ovo/media/sfx_transition-06.html new file mode 100644 index 0000000..6400677 Binary files /dev/null and b/gversion/gs/ovo/media/sfx_transition-06.html differ diff --git a/gversion/gs/ovo/media/sfx_transition-06.ogg b/gversion/gs/ovo/media/sfx_transition-06.ogg new file mode 100644 index 0000000..f0d3df5 Binary files /dev/null and b/gversion/gs/ovo/media/sfx_transition-06.ogg differ diff --git a/gversion/gs/ovo/media/sfx_transition-07.html b/gversion/gs/ovo/media/sfx_transition-07.html new file mode 100644 index 0000000..24543e1 Binary files /dev/null and b/gversion/gs/ovo/media/sfx_transition-07.html differ diff --git a/gversion/gs/ovo/media/sfx_transition-07.ogg b/gversion/gs/ovo/media/sfx_transition-07.ogg new file mode 100644 index 0000000..4eb9d91 Binary files /dev/null and b/gversion/gs/ovo/media/sfx_transition-07.ogg differ diff --git a/gversion/gs/ovo/media/sfx_transition-08.html b/gversion/gs/ovo/media/sfx_transition-08.html new file mode 100644 index 0000000..c004a2c Binary files /dev/null and b/gversion/gs/ovo/media/sfx_transition-08.html differ diff --git a/gversion/gs/ovo/media/sfx_transition-08.ogg b/gversion/gs/ovo/media/sfx_transition-08.ogg new file mode 100644 index 0000000..55f2bd5 Binary files /dev/null and b/gversion/gs/ovo/media/sfx_transition-08.ogg differ diff --git a/gversion/gs/ovo/media/sick of losing.html b/gversion/gs/ovo/media/sick of losing.html new file mode 100644 index 0000000..3139441 Binary files /dev/null and b/gversion/gs/ovo/media/sick of losing.html differ diff --git a/gversion/gs/ovo/media/sick of losing.ogg b/gversion/gs/ovo/media/sick of losing.ogg new file mode 100644 index 0000000..7b0b52d Binary files /dev/null and b/gversion/gs/ovo/media/sick of losing.ogg differ diff --git a/gversion/gs/ovo/media/slide.html b/gversion/gs/ovo/media/slide.html new file mode 100644 index 0000000..46b79e4 Binary files /dev/null and b/gversion/gs/ovo/media/slide.html differ diff --git a/gversion/gs/ovo/media/slide.ogg b/gversion/gs/ovo/media/slide.ogg new file mode 100644 index 0000000..07d22d7 Binary files /dev/null and b/gversion/gs/ovo/media/slide.ogg differ diff --git a/gversion/gs/ovo/media/slide_recover.html b/gversion/gs/ovo/media/slide_recover.html new file mode 100644 index 0000000..07c6f6c Binary files /dev/null and b/gversion/gs/ovo/media/slide_recover.html differ diff --git a/gversion/gs/ovo/media/slide_recover.ogg b/gversion/gs/ovo/media/slide_recover.ogg new file mode 100644 index 0000000..6e95f2f Binary files /dev/null and b/gversion/gs/ovo/media/slide_recover.ogg differ diff --git a/gversion/gs/ovo/media/soulmates.html b/gversion/gs/ovo/media/soulmates.html new file mode 100644 index 0000000..50a0122 Binary files /dev/null and b/gversion/gs/ovo/media/soulmates.html differ diff --git a/gversion/gs/ovo/media/soulmates.ogg b/gversion/gs/ovo/media/soulmates.ogg new file mode 100644 index 0000000..f9134a7 Binary files /dev/null and b/gversion/gs/ovo/media/soulmates.ogg differ diff --git a/gversion/gs/ovo/media/step.html b/gversion/gs/ovo/media/step.html new file mode 100644 index 0000000..02c97d1 Binary files /dev/null and b/gversion/gs/ovo/media/step.html differ diff --git a/gversion/gs/ovo/media/step.ogg b/gversion/gs/ovo/media/step.ogg new file mode 100644 index 0000000..dba6e89 Binary files /dev/null and b/gversion/gs/ovo/media/step.ogg differ diff --git a/gversion/gs/ovo/media/step2.html b/gversion/gs/ovo/media/step2.html new file mode 100644 index 0000000..d88f082 Binary files /dev/null and b/gversion/gs/ovo/media/step2.html differ diff --git a/gversion/gs/ovo/media/step2.ogg b/gversion/gs/ovo/media/step2.ogg new file mode 100644 index 0000000..305635f Binary files /dev/null and b/gversion/gs/ovo/media/step2.ogg differ diff --git a/gversion/gs/ovo/media/step3.html b/gversion/gs/ovo/media/step3.html new file mode 100644 index 0000000..19f44ed Binary files /dev/null and b/gversion/gs/ovo/media/step3.html differ diff --git a/gversion/gs/ovo/media/step3.ogg b/gversion/gs/ovo/media/step3.ogg new file mode 100644 index 0000000..3faff21 Binary files /dev/null and b/gversion/gs/ovo/media/step3.ogg differ diff --git a/gversion/gs/ovo/media/stun.html b/gversion/gs/ovo/media/stun.html new file mode 100644 index 0000000..8ceb080 Binary files /dev/null and b/gversion/gs/ovo/media/stun.html differ diff --git a/gversion/gs/ovo/media/stun.ogg b/gversion/gs/ovo/media/stun.ogg new file mode 100644 index 0000000..9e40731 Binary files /dev/null and b/gversion/gs/ovo/media/stun.ogg differ diff --git a/gversion/gs/ovo/media/superjump.html b/gversion/gs/ovo/media/superjump.html new file mode 100644 index 0000000..37eee15 Binary files /dev/null and b/gversion/gs/ovo/media/superjump.html differ diff --git a/gversion/gs/ovo/media/superjump.ogg b/gversion/gs/ovo/media/superjump.ogg new file mode 100644 index 0000000..11d1c2f Binary files /dev/null and b/gversion/gs/ovo/media/superjump.ogg differ diff --git a/gversion/gs/ovo/media/track1.html b/gversion/gs/ovo/media/track1.html new file mode 100644 index 0000000..014066e Binary files /dev/null and b/gversion/gs/ovo/media/track1.html differ diff --git a/gversion/gs/ovo/media/track1.ogg b/gversion/gs/ovo/media/track1.ogg new file mode 100644 index 0000000..7823cb9 Binary files /dev/null and b/gversion/gs/ovo/media/track1.ogg differ diff --git a/gversion/gs/ovo/media/track2.html b/gversion/gs/ovo/media/track2.html new file mode 100644 index 0000000..615fdab Binary files /dev/null and b/gversion/gs/ovo/media/track2.html differ diff --git a/gversion/gs/ovo/media/track2.ogg b/gversion/gs/ovo/media/track2.ogg new file mode 100644 index 0000000..9a23cc2 Binary files /dev/null and b/gversion/gs/ovo/media/track2.ogg differ diff --git a/gversion/gs/ovo/media/track3.html b/gversion/gs/ovo/media/track3.html new file mode 100644 index 0000000..e7e455d Binary files /dev/null and b/gversion/gs/ovo/media/track3.html differ diff --git a/gversion/gs/ovo/media/track3.ogg b/gversion/gs/ovo/media/track3.ogg new file mode 100644 index 0000000..a754703 Binary files /dev/null and b/gversion/gs/ovo/media/track3.ogg differ diff --git a/gversion/gs/ovo/media/track4.ogg b/gversion/gs/ovo/media/track4.ogg new file mode 100644 index 0000000..1c90d2d Binary files /dev/null and b/gversion/gs/ovo/media/track4.ogg differ diff --git a/gversion/gs/ovo/media/transition.html b/gversion/gs/ovo/media/transition.html new file mode 100644 index 0000000..d84916b Binary files /dev/null and b/gversion/gs/ovo/media/transition.html differ diff --git a/gversion/gs/ovo/media/transition.ogg b/gversion/gs/ovo/media/transition.ogg new file mode 100644 index 0000000..5747733 Binary files /dev/null and b/gversion/gs/ovo/media/transition.ogg differ diff --git a/gversion/gs/ovo/media/walljump.html b/gversion/gs/ovo/media/walljump.html new file mode 100644 index 0000000..7339ae8 Binary files /dev/null and b/gversion/gs/ovo/media/walljump.html differ diff --git a/gversion/gs/ovo/media/walljump.ogg b/gversion/gs/ovo/media/walljump.ogg new file mode 100644 index 0000000..21dac7f Binary files /dev/null and b/gversion/gs/ovo/media/walljump.ogg differ diff --git a/gversion/gs/ovo/offline.js b/gversion/gs/ovo/offline.js new file mode 100644 index 0000000..db1962d --- /dev/null +++ b/gversion/gs/ovo/offline.js @@ -0,0 +1,304 @@ +{ + "version": 1640023600, + "fileList": [ + "data.js", + "c2runtime.js", + "jquery-3.4.1.min.js", + "offlineClient.js", + "images/body-sheet0.png", + "images/head-sheet0.png", + "images/leftarm-sheet0.png", + "images/collider-sheet0.png", + "images/collider-sheet1.png", + "images/jumpboost-sheet0.png", + "images/endflag-sheet0.png", + "images/jumpthrough.png", + "images/spritefontdeluxe.png", + "images/spike-sheet0.png", + "images/solidmove.png", + "images/buttontrigger-sheet0.png", + "images/buttontrigger-sheet1.png", + "images/movearea-sheet0.png", + "images/movearea-sheet1.png", + "images/solid.png", + "images/groundpoundsolid.png", + "images/layoutnameholder-sheet0.png", + "images/rocket-sheet0.png", + "images/rocketlauncher-sheet0.png", + "images/solid2.png", + "images/spritefontdeluxew.png", + "images/spike2-sheet0.png", + "images/solid3.png", + "images/coin-sheet0.png", + "images/layoutnumber.png", + "images/portal-sheet0.png", + "images/triggerarea-sheet0.png", + "images/tiledbackground.png", + "images/layoutsubtitle.png", + "images/uidirectionbtn-sheet0.png", + "images/menubutton-sheet0.png", + "images/menubutton-sheet1.png", + "images/menubutton-sheet2.png", + "images/titlelogo-sheet0.png", + "images/credits-sheet0.png", + "images/listsubitembtn-sheet0.png", + "images/listsubitembtn-sheet1.png", + "images/listsubitembtn-sheet2.png", + "images/listparent-sheet0.png", + "images/endcarddialog-sheet0.png", + "images/particlesbg.png", + "images/sprite-sheet0.png", + "images/sprite-sheet1.png", + "images/particles.png", + "images/listitem-sheet0.png", + "images/inputsdialog.png", + "images/checkbox-sheet0.png", + "images/sliderbar-sheet0.png", + "images/loadinganim-sheet0.png", + "images/loadinganim-sheet1.png", + "images/fakeparseimage-sheet0.png", + "images/menubutton2-sheet0.png", + "images/adblocksign-sheet0.png", + "images/dialogoverlay-sheet0.png", + "images/dedraloader-sheet0.png", + "images/dedraloader-sheet1.png", + "images/menubutton3-sheet0.png", + "images/menubutton3-sheet1.png", + "images/levelbutton-sheet0.png", + "images/skin1-sheet0.png", + "images/skin3-sheet0.png", + "images/skin3-sheet1.png", + "images/skin3-sheet2.png", + "images/skin2-sheet0.png", + "images/skin4-sheet0.png", + "images/skin4-sheet1.png", + "images/skin4-sheet2.png", + "images/skin5-sheet0.png", + "images/skin6-sheet0.png", + "images/skin6-sheet1.png", + "images/skin7-sheet0.png", + "images/skin8-sheet0.png", + "images/skin9-sheet0.png", + "images/skin10-sheet0.png", + "images/skin10-sheet1.png", + "images/skin11-sheet0.png", + "images/skin12-sheet0.png", + "images/skin13-sheet0.png", + "images/skin14-sheet0.png", + "images/skin15-sheet0.png", + "images/pulse-sheet0.png", + "images/pulse-sheet1.png", + "images/pulse-sheet2.png", + "images/skin16-sheet0.png", + "images/skin17-sheet0.png", + "images/skin18-sheet0.png", + "images/skin19-sheet0.png", + "images/skin19-sheet1.png", + "images/cmgskin-sheet0.png", + "images/skin20-sheet0.png", + "images/skin21-sheet0.png", + "images/skin22-sheet0.png", + "images/skin23-sheet0.png", + "images/skin24-sheet0.png", + "images/sprite5-sheet0.png", + "images/border.png", + "images/decor-sheet0.png", + "images/decor-sheet1.png", + "images/sprite2-sheet0.png", + "images/vector-sheet0.png", + "images/coolmathgames800x-sheet0.png", + "images/camera-sheet0.png", + "images/background-sheet0.png", + "images/sprite4-sheet0.png", + "images/sprite6-sheet0.png", + "images/tiledbackground2.png", + "images/tiledbackground3.png", + "images/sprite7-sheet0.png", + "images/mark-sheet0.png", + "images/pumpkin-sheet0.png", + "images/fakenine-sheet0.png", + "images/bfakenine-sheet0.png", + "images/sprite8-sheet0.png", + "images/ablue-sheet0.png", + "images/agreen-sheet0.png", + "images/ared-sheet0.png", + "images/frank_1-sheet0.png", + "images/decor2-sheet0.png", + "images/bannercontainer-sheet0.png", + "images/runningcanvas.png", + "images/languageflag-sheet0.png", + "images/languagebutton-sheet0.png", + "images/languagebutton2-sheet0.png", + "images/sprite9-sheet0.png", + "media/click.m4a", + "media/click.ogg", + "media/hover.m4a", + "media/hover.ogg", + "media/return.m4a", + "media/return.ogg", + "media/step.m4a", + "media/step.ogg", + "media/step2.ogg", + "media/step2.m4a", + "media/step3.m4a", + "media/step3.ogg", + "media/footstep.m4a", + "media/footstep.ogg", + "media/pound.m4a", + "media/pound.ogg", + "media/prepound.m4a", + "media/prepound.ogg", + "media/stun.m4a", + "media/stun.ogg", + "media/jump.m4a", + "media/jump.ogg", + "media/jumpboost.m4a", + "media/jumpboost.ogg", + "media/hurt.m4a", + "media/hurt.ogg", + "media/plunge.m4a", + "media/plunge.ogg", + "media/jumpstrong.m4a", + "media/jumpstrong.ogg", + "media/superjump.m4a", + "media/superjump.ogg", + "media/walljump.m4a", + "media/walljump.ogg", + "media/sfx_transition-01.m4a", + "media/sfx_transition-01.ogg", + "media/sfx_transition-02.m4a", + "media/sfx_transition-02.ogg", + "media/sfx_transition-03.m4a", + "media/sfx_transition-03.ogg", + "media/sfx_transition-04.m4a", + "media/sfx_transition-04.ogg", + "media/sfx_transition-05.m4a", + "media/sfx_transition-05.ogg", + "media/sfx_transition-06.m4a", + "media/sfx_transition-06.ogg", + "media/sfx_transition-07.m4a", + "media/sfx_transition-07.ogg", + "media/sfx_transition-08.m4a", + "media/sfx_transition-08.ogg", + "media/slide.m4a", + "media/slide.ogg", + "media/slide_recover.m4a", + "media/slide_recover.ogg", + "media/button.m4a", + "media/button.ogg", + "media/rocket-2.m4a", + "media/rocket-2.ogg", + "media/coin1.m4a", + "media/coin1.ogg", + "media/among us death.m4a", + "media/among us death.ogg", + "media/among us slice.m4a", + "media/among us slice.ogg", + "media/death-2.m4a", + "media/death-2.ogg", + "media/transition.m4a", + "media/transition.ogg", + "media/death.m4a", + "media/death.ogg", + "media/menutrack.m4a", + "media/menutrack.ogg", + "media/idontevenknow.m4a", + "media/idontevenknow.ogg", + "media/heart loop.m4a", + "media/heart loop.ogg", + "media/transebeat 2.m4a", + "media/transebeat 2.ogg", + "media/first try.m4a", + "media/first try.ogg", + "media/mechanical.m4a", + "media/mechanical.ogg", + "media/sick of losing.m4a", + "media/sick of losing.ogg", + "media/soulmates.m4a", + "media/soulmates.ogg", + "media/track2.m4a", + "media/track2.ogg", + "media/track3.m4a", + "media/track3.ogg", + "media/track4.m4a", + "media/track4.ogg", + "media/track1.m4a", + "media/track1.ogg", + "icon-114.png", + "icon-128.png", + "icon-16.png", + "icon-256.png", + "icon-32.png", + "loading-logo.png", + "astronaut.png", + "batter.png", + "dknight.png", + "electrical.png", + "erigato.png", + "frank.png", + "knight.png", + "lknight.png", + "ovoplus.png", + "pole.png", + "default.png", + "alien.png", + "ada.png", + "thefall.png", + "pulse.png", + "materwelon.png", + "amongus.png", + "fl1ckd.png", + "theliljoker.png", + "cmg.png", + "french.png", + "brazilian.png", + "spanish.png", + "english.png", + "shyguy.png", + "ovo.png", + "ovo2.png", + "ovo3.png", + "ovospaceprogram.png", + "purified.png", + "coin.png", + "coin10.png", + "coin5.png", + "coin40.png", + "mechanics.png", + "higherorder.png", + "tutorials.png", + "coin30.png", + "coinsecret.png", + "gettingserious.png", + "lightspeed.png", + "runner.png", + "speedrunner.png", + "topcharts.png", + "velocity.png", + "jttp.png", + "community.png", + "achievements.json", + "levels.json", + "skins.json", + "tips.json", + "unlockalllevels.js", + "lzma.js", + "websdkwrapper.js", + "languages.json", + "adconfig.json", + "ovo-level-editor.js", + "check.png", + "style.css", + "fonts.css", + "retron2000.ttf", + "sdk.html", + "GameAnalytics.js", + "Tween.js", + "html2canvas.min.js", + "animate.css", + "hmmg_layoutTransition.css", + "jquery.gritter.js", + "jquery.gritter.css", + "howler.js" + ] +} \ No newline at end of file diff --git a/gversion/gs/ovo/offlineClient.js b/gversion/gs/ovo/offlineClient.js new file mode 100644 index 0000000..4e546a7 --- /dev/null +++ b/gversion/gs/ovo/offlineClient.js @@ -0,0 +1,53 @@ +"use strict"; + +(function() { + + class OfflineClient + { + constructor() + { + // Create a BroadcastChannel, if supported. + this._broadcastChannel = (typeof BroadcastChannel === "undefined" ? null : new BroadcastChannel("offline")); + + // Queue of messages received before a message callback is set. + this._queuedMessages = []; + + // The message callback. + this._onMessageCallback = null; + + // If BroadcastChannel is supported, listen for messages. + if (this._broadcastChannel) + this._broadcastChannel.onmessage = (e => this._OnBroadcastChannelMessage(e)); + } + + _OnBroadcastChannelMessage(e) + { + // Have a message callback set: just forward the call. + if (this._onMessageCallback) + { + this._onMessageCallback(e); + return; + } + + // Otherwise the app hasn't loaded far enough to set a message callback. + // Buffer the incoming messages to replay when the app sets a callback. + this._queuedMessages.push(e); + } + + SetMessageCallback(f) + { + this._onMessageCallback = f; + + // Replay any queued messages through the handler, then clear the queue. + for (let e of this._queuedMessages) + this._onMessageCallback(e); + + this._queuedMessages.length = 0; + } + }; + + // Create the offline client ASAP so we receive and start queueing any messages the SW broadcasts. + window.OfflineClientInfo = new OfflineClient(); + +}()); + diff --git a/gversion/gs/ovo/ovo-level-editor.js b/gversion/gs/ovo/ovo-level-editor.js new file mode 100644 index 0000000..2dcd3dd --- /dev/null +++ b/gversion/gs/ovo/ovo-level-editor.js @@ -0,0 +1,309 @@ +(() => { + globalThis.ovoLevelEditor = { + init() { + let old = globalThis.sdk_runtime; + c2_callFunction("execCode", ["globalThis.sdk_runtime = this.runtime"]); + let sdk_runtime = globalThis.sdk_runtime; + globalThis.sdk_runtime = old; + + let setLayout = (name) => { + if (sdk_runtime.layouts.hasOwnProperty(name)) { + sdk_runtime.changelayout = sdk_runtime.layouts[name]; + return sdk_runtime.layouts[name]; + } + }; + + let baseLayoutName = "Level Base"; + let baseLayout = sdk_runtime.layouts[baseLayoutName]; + let oldFn = baseLayout.startRunning.bind(baseLayout); + baseLayout.startRunning = () => { + console.log("start"); + globalThis.ovoLevelEditor.applySetup(); + oldFn(); + globalThis.ovoLevelEditor.applyCurrentLevel(); + }; + let setLayoutToBase = () => { + sdk_runtime.changelayout = baseLayout; + }; + + const types = { + Solid: sdk_runtime.types_by_index.find( + (x) => + x.name === "Solid" || + (x.plugin instanceof cr.plugins_.TiledBg && + x.texture_file && + x.texture_file.includes("/solid.png") && + x.behs_count === 2) + ), + Spike: sdk_runtime.types_by_index.find( + (x) => + x.name === "Spike" || + (x.plugin instanceof cr.plugins_.Sprite && + x.all_frames && + x.all_frames[0].texture_file.includes("spike-")) + ), + Flag: sdk_runtime.types_by_index.find( + (x) => + x.name === "EndFlag" || + (x.plugin instanceof cr.plugins_.Sprite && + x.all_frames && + x.all_frames[0].texture_file.includes("endflag")) + ), + JumpThrough: sdk_runtime.types_by_index.find( + (x) => + x.name === "JumpThrough" || + (x.plugin instanceof cr.plugins_.TiledBg && + x.texture_file && + x.texture_file.includes("jumpthrough") && + x.families.length === 2) + ), + GroundPoundSolid: sdk_runtime.types_by_index.find( + (x) => + x.name === "GroundPoundSolid" || + (x.plugin instanceof cr.plugins_.TiledBg && + x.texture_file && + x.texture_file.includes("groundpoundsolid") && + x.families.length === 2) + ), + RocketLauncher: sdk_runtime.types_by_index.find( + (x) => + x.name === "RocketLauncher" || + (x.plugin instanceof cr.plugins_.Sprite && + x.all_frames && + x.all_frames[0].texture_file.includes("rocketlauncher")) + ), + JumpBoost: sdk_runtime.types_by_index.find( + (x) => + x.name === "JumpBoost" || + (x.plugin instanceof cr.plugins_.Sprite && + x.all_frames && + x.all_frames[0].texture_file.includes("jumpboost")) + ), + LayoutNameHolder: sdk_runtime.types_by_index.find( + (x) => + x.name === "LayoutNameHolder" || + (x.plugin instanceof cr.plugins_.Sprite && + x.all_frames && + x.all_frames[0].texture_file.includes("layoutnameholder")) + ), + LayoutNumber: sdk_runtime.types_by_index.find( + (x) => + x.name === "LayoutNumber" || + (x.plugin instanceof cr.plugins_.SkymenSFPlusPLus && + x.texture_file && + x.texture_file.includes("layoutnumber")) + ), + LayoutSubtitle: sdk_runtime.types_by_index.find( + (x) => + x.name === "LayoutSubtitle" || + (x.plugin instanceof cr.plugins_.Sprite && + x.all_frames && + x.all_frames[0].texture_file.includes("layoutsubtitle")) + ), + }; + + const layers = { + "Layer 0": baseLayout.layers.find((x) => x.name === "Layer 0"), + Background: baseLayout.layers.find((x) => x.name === "Background"), + }; + + let create = (type, layer, { x, y, width, height, angle }) => { + let inst = sdk_runtime.createInstance(types[type], layers[layer], x, y); + inst.width = width || inst.width; + inst.height = height || inst.height; + inst.angle = angle || inst.angle; + inst.set_bbox_changed(); + return inst; + }; + + //create("Solid", "Layer 0", {x:100, y:100, angle: 45, height:8, width: 50}) + //create("Spike", "Layer 0", {x:100, y:500}) + + globalThis.ovoLevelEditor = { + startLevel(json) { + sdk_runtime.types_by_index.find( + (x) => + x.name === "Globals" || + (x.plugin instanceof cr.plugins_.Globals && + x.instvar_sids.length > 20) + ).instances[0].instance_vars[3] = 1; + this.curLevel = json; + setLayoutToBase(); + }, + wipeAllInstances() { + Object.values(layers).forEach((layer) => { + if (!layer) return; + console.log("wiping " + layer); + layer.instances + .filter((x) => Object.values(types).includes(x.type)) + .forEach(sdk_runtime.DestroyInstance.bind(sdk_runtime)); + }); + }, + getPlayer() { + return sdk_runtime.types_by_index + .filter( + (x) => + !!x.animations && + x.animations[0].frames[0].texture_file.includes("collider") + )[0] + .instances.filter( + (x) => x.instance_vars[17] === "" && x.behavior_insts[0].enabled + )[0]; + }, + async awaitForPlayer() { + let player = this.getPlayer(); + while (!player) { + await new Promise((resolve) => setTimeout(resolve, 20)); + player = this.getPlayer(); + } + return player; + }, + async setPlayerPosition(x, y) { + let player = this.getPlayer(); + while (!player) { + await new Promise((resolve) => setTimeout(resolve, 20)); + player = this.getPlayer(); + } + if (x) player.x = x; + if (y) player.y = y; + player.set_bbox_changed(); + }, + applySetup() { + if (!this.curLevel) return; + if (this.curLevel.layout) { + if (this.curLevel.layout.width) { + baseLayout.originalWidth = this.curLevel.layout.width; + baseLayout.width = this.curLevel.layout.width; + } + if (this.curLevel.layout.height) { + baseLayout.originalHeight = this.curLevel.layout.height; + baseLayout.height = this.curLevel.layout.height; + } + } + }, + async applyCurrentLevel() { + if (!this.curLevel) return; + this.wipeAllInstances(); + await this.awaitForPlayer(); + if (this.curLevel.player) { + this.setPlayerPosition( + this.curLevel.player.x, + this.curLevel.player.y + ); + } + Object.keys(this.curLevel.layers).forEach((layer) => { + if (!layers[layer]) return; + Object.keys(this.curLevel.layers[layer]).forEach((type) => { + if (!types[type]) return; + this.curLevel.layers[layer][type].forEach((inst) => { + let newInst = create(type, layer, inst); + sdk_runtime.trigger( + newInst.type.plugin.cnds.OnCreated, + newInst + ); + }); + }); + }); + sdk_runtime.trigger(sdk_runtime.system.cnds.OnLayoutStart); + if ( + this.curLevel.layout.holder && + typeof this.curLevel.layout.holder.x === "number" + ) { + let text = create( + "LayoutNumber", + "Layer 0", + this.curLevel.layout.holder + ); + sdk_runtime.trigger(text.type.plugin.cnds.OnCreated, text); + if (typeof this.curLevel.layout.number === "number") + text.text = this.curLevel.layout.number.toString(); + else text.text = "1"; + } + + let holder = create("LayoutNameHolder", "Layer 0", { + x: -500, + y: -500, + }); + holder.instance_vars[0] = this.curLevel.layout.name || ""; + holder.instance_vars[2] = !!this.curLevel.layout.useSlope; + sdk_runtime.trigger(holder.type.plugin.cnds.OnCreated, holder); + }, + handleDrop(ev) { + console.log("File(s) dropped"); + + // Prevent default behavior (Prevent file from being opened) + ev.preventDefault(); + let playFile = (file) => { + console.log(file); + file.text().then((text) => { + console.log(text); + try { + let json = JSON.parse(text); + if (globalThis.ovoLevelEditor.startLevel) + globalThis.ovoLevelEditor.startLevel(json); + } catch (error) { + alert("not a valid level file"); + } + }); + }; + if (ev.dataTransfer.items) { + // Use DataTransferItemList interface to access the file(s) + for (var i = 0; i < ev.dataTransfer.items.length; i++) { + // If dropped items aren't files, reject them + if (ev.dataTransfer.items[i].kind === "file") { + var file = ev.dataTransfer.items[i].getAsFile(); + playFile(file); + break; + } + } + } else { + // Use DataTransfer interface to access the file(s) + playFile(ev.dataTransfer.files[0]); + } + }, + }; + sdk_runtime.canvas.setAttribute("ondragover", "event.preventDefault();"); + sdk_runtime.canvas.setAttribute( + "ondrop", + "ovoLevelEditor.handleDrop(event)" + ); + }, + }; + + let messageHandler = (event) => { + if (!event.data.isLevelEditor || !event.data.messageType) return; + if (event.data.messageType.toLowerCase() === "isready") { + event.source.postMessage( + { + isReady: !globalThis.ovoLevelEditor.hasOwnProperty("init"), + isLevelEditor: true, + messageType: event.data.messageType, + }, + event.origin + ); + } + if (event.data.messageType.toLowerCase() === "startlevel") { + if (globalThis.ovoLevelEditor.hasOwnProperty("init")) { + event.source.postMessage( + { + levelStarted: false, + isLevelEditor: true, + messageType: event.data.messageType, + }, + event.origin + ); + return; + } + globalThis.ovoLevelEditor.startLevel(event.data.level); + event.source.postMessage( + { + levelStarted: true, + isLevelEditor: true, + messageType: event.data.messageType, + }, + event.origin + ); + } + }; + globalThis.window.addEventListener("message", messageHandler); +})(); diff --git a/gversion/gs/ovo/ovo.jpeg b/gversion/gs/ovo/ovo.jpeg new file mode 100644 index 0000000..a3686d0 Binary files /dev/null and b/gversion/gs/ovo/ovo.jpeg differ diff --git a/gversion/gs/ovo/ovo.png b/gversion/gs/ovo/ovo.png new file mode 100644 index 0000000..0b9216d Binary files /dev/null and b/gversion/gs/ovo/ovo.png differ diff --git a/gversion/gs/ovo/ovo2.png b/gversion/gs/ovo/ovo2.png new file mode 100644 index 0000000..ff256bf Binary files /dev/null and b/gversion/gs/ovo/ovo2.png differ diff --git a/gversion/gs/ovo/ovo3.png b/gversion/gs/ovo/ovo3.png new file mode 100644 index 0000000..96512a3 Binary files /dev/null and b/gversion/gs/ovo/ovo3.png differ diff --git a/gversion/gs/ovo/ovoplus.png b/gversion/gs/ovo/ovoplus.png new file mode 100644 index 0000000..17461f2 Binary files /dev/null and b/gversion/gs/ovo/ovoplus.png differ diff --git a/gversion/gs/ovo/ovospaceprogram.png b/gversion/gs/ovo/ovospaceprogram.png new file mode 100644 index 0000000..bdbbdd0 Binary files /dev/null and b/gversion/gs/ovo/ovospaceprogram.png differ diff --git a/gversion/gs/ovo/pole.png b/gversion/gs/ovo/pole.png new file mode 100644 index 0000000..37f10dd Binary files /dev/null and b/gversion/gs/ovo/pole.png differ diff --git a/gversion/gs/ovo/pulse.png b/gversion/gs/ovo/pulse.png new file mode 100644 index 0000000..99d70af Binary files /dev/null and b/gversion/gs/ovo/pulse.png differ diff --git a/gversion/gs/ovo/purified.png b/gversion/gs/ovo/purified.png new file mode 100644 index 0000000..7ff46b4 Binary files /dev/null and b/gversion/gs/ovo/purified.png differ diff --git a/gversion/gs/ovo/retron2000.ttf b/gversion/gs/ovo/retron2000.ttf new file mode 100644 index 0000000..f30c7e1 Binary files /dev/null and b/gversion/gs/ovo/retron2000.ttf differ diff --git a/gversion/gs/ovo/runner.png b/gversion/gs/ovo/runner.png new file mode 100644 index 0000000..ddb8a0a Binary files /dev/null and b/gversion/gs/ovo/runner.png differ diff --git a/gversion/gs/ovo/sdk.html b/gversion/gs/ovo/sdk.html new file mode 100644 index 0000000..bb95e9e --- /dev/null +++ b/gversion/gs/ovo/sdk.html @@ -0,0 +1,49 @@ + + + + + + Crazy Games + + + + + + + + + + + diff --git a/gversion/gs/ovo/shyguy.png b/gversion/gs/ovo/shyguy.png new file mode 100644 index 0000000..7abd07b Binary files /dev/null and b/gversion/gs/ovo/shyguy.png differ diff --git a/gversion/gs/ovo/silver.ttf b/gversion/gs/ovo/silver.ttf new file mode 100644 index 0000000..1587516 Binary files /dev/null and b/gversion/gs/ovo/silver.ttf differ diff --git a/gversion/gs/ovo/skins.json b/gversion/gs/ovo/skins.json new file mode 100644 index 0000000..69a6e63 --- /dev/null +++ b/gversion/gs/ovo/skins.json @@ -0,0 +1,209 @@ +[ + { + "name": "Default", + "hidden": false, + "icon": "default.png", + "skin": "", + "lang": "default", + "price": 0, + "achievement": -1 + }, + { + "name": "Electrical", + "hidden": false, + "icon": "electrical.png", + "skin": "elec", + "lang": "electrical", + "price": -1, + "achievement": 6 + }, + { + "name": "Pole", + "hidden": false, + "icon": "pole.png", + "skin": "pole", + "lang": "pole", + "price": 30, + "achievement": -1 + }, + { + "name": "Pink Guy", + "hidden": false, + "icon": "frank.png", + "skin": "frank", + "lang": "pinkguy", + "price": 20, + "achievement": -1 + }, + { + "name": "OvO+", + "hidden": true, + "icon": "ovoplus.png", + "skin": "ovo+", + "lang": "ovoplus", + "price": -1, + "achievement": 5 + }, + { + "name": "Knight", + "hidden": false, + "icon": "knight.png", + "skin": "knight", + "lang": "knight", + "price": 40, + "achievement": -1 + }, + { + "name": "Dark Knight", + "hidden": false, + "icon": "dknight.png", + "skin": "dknight", + "lang": "dknight", + "price": 60, + "achievement": -1 + }, + { + "name": "Light Knight", + "hidden": false, + "icon": "lknight.png", + "skin": "lknight", + "lang": "lknight", + "price": -1, + "achievement": 15 + }, + { + "name": "Astronaut", + "hidden": true, + "icon": "astronaut.png", + "skin": "astronaut", + "lang": "astronaut", + "price": -1, + "achievement": 7 + }, + { + "name": "Alien", + "hidden": false, + "icon": "alien.png", + "skin": "alien", + "lang": "alien", + "price": 70, + "achievement": -1 + }, + { + "name": "Erigato", + "hidden": false, + "icon": "erigato.png", + "skin": "erigato", + "lang": "erigato", + "price": 50, + "achievement": -1 + }, + { + "name": "Batter", + "hidden": true, + "icon": "batter.png", + "skin": "batter", + "lang": "batter", + "price": -1, + "achievement": 10 + }, + { + "name": "Adalich", + "hidden": false, + "icon": "ada.png", + "skin": "ada", + "lang": "adalich", + "price": 0, + "achievement": -1 + }, + { + "name": "The Fallen", + "hidden": true, + "icon": "thefall.png", + "skin": "thefall", + "lang": "fallen", + "price": -1, + "achievement": 20 + }, + { + "name": "Pulse", + "hidden": false, + "icon": "pulse.png", + "skin": "pulse", + "lang": "pulse", + "price": -1, + "achievement": 8 + }, + { + "name": "MaterWelon", + "hidden": false, + "icon": "materwelon.png", + "skin": "materwelon", + "lang": "materwelon", + "price": -1, + "achievement": 9 + }, + { + "name": "Fl1ckd", + "hidden": false, + "icon": "fl1ckd.png", + "skin": "fl1ckd", + "lang": "flickd", + "price": 50, + "achievement": -1 + }, + { + "name": "TheLilJoker", + "hidden": false, + "icon": "theliljoker.png", + "skin": "theliljoker", + "lang": "theliljoker", + "price": 50, + "achievement": -1 + }, + { + "name": "French", + "hidden": false, + "icon": "french.png", + "skin": "french", + "lang": "french", + "price": 0, + "achievement": -1 + }, + { + "name": "English", + "hidden": false, + "icon": "english.png", + "skin": "english", + "lang": "english", + "price": 0, + "achievement": -1 + }, + { + "name": "Spanish", + "hidden": false, + "icon": "spanish.png", + "skin": "spanish", + "lang": "spanish", + "price": 0, + "achievement": -1 + }, + { + "name": "Brazilian", + "hidden": false, + "icon": "brazilian.png", + "skin": "brazilian", + "lang": "brazilian", + "price": 0, + "achievement": -1 + }, + { + "name": "ShyGuy", + "hidden": false, + "icon": "shyguy.png", + "skin": "shyguy", + "lang": "shyguy", + "price": 0, + "achievement": -1 + } +] diff --git a/gversion/gs/ovo/spanish.png b/gversion/gs/ovo/spanish.png new file mode 100644 index 0000000..8545edd Binary files /dev/null and b/gversion/gs/ovo/spanish.png differ diff --git a/gversion/gs/ovo/speedrunner.png b/gversion/gs/ovo/speedrunner.png new file mode 100644 index 0000000..f1d2d4b Binary files /dev/null and b/gversion/gs/ovo/speedrunner.png differ diff --git a/gversion/gs/ovo/style.css b/gversion/gs/ovo/style.css new file mode 100644 index 0000000..ca6c2e5 --- /dev/null +++ b/gversion/gs/ovo/style.css @@ -0,0 +1,86 @@ +#button { + background-color: rgb(255, 255, 255); + color: rgb(0, 0, 0); + border: 2px solid #333; + margin: 2px +} + +#button:hover, +#button:focus { + box-shadow: 4px 4px rgba(0, 0, 0, 0.25); + color: #333; +} + +#button:active { + border: 4px solid #333; + color: #333; +} + +#link { + background-color: rgb(255, 255, 255); + color: rgb(122, 122, 122); + border: 0px solid rgb(255, 255, 255); +} + +#link:hover, +#link:focus { + text-decoration: underline; +} + +#link:active { + color: #333; +} + +#textbox { + text-align: center; + background: rgb(255, 255, 255); + color: rgb(0, 0, 0); + box-shadow: inset 4px 4px rgba(0, 0, 0, 0.1); + border: 4px solid #000; +} + +#textbox:hover { + box-shadow: inset 4px 4px rgba(0, 0, 0, 0.25); +} + +#textbox:focus, +#link:focus, +#button:focus { + outline: none; +} + +#check { + -moz-appearance: none; + -webkit-appearance: none; + clip: rect(0 0 0 0); + margin: -1px; + padding: 0; + border: 0; + padding-left: 25px; + background-image: url("check.png"); + -webkit-touch-callout: none; + -webkit-user-select: none; + -khtml-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + background-repeat: no-repeat; + height: 1em; + display: inline-block; + line-height: 100%; + background-repeat: no-repeat; + background-position: 0 0; + font-size: 25px; + vertical-align: middle; + background-size: 100% 200%; +} + +#check:hover, +#check:focus { + color: rgb(122, 122, 122); + text-decoration: underline; +} + +#check:checked { + background-position: 0 100%; +} \ No newline at end of file diff --git a/gversion/gs/ovo/sw.js b/gversion/gs/ovo/sw.js new file mode 100644 index 0000000..32ced4d --- /dev/null +++ b/gversion/gs/ovo/sw.js @@ -0,0 +1,403 @@ +"use strict"; + +const OFFLINE_DATA_FILE = "offline.js"; +const CACHE_NAME_PREFIX = "c2offline"; +const BROADCASTCHANNEL_NAME = "offline"; +const CONSOLE_PREFIX = "[SW] "; +const LAZYLOAD_KEYNAME = ""; + +// Create a BroadcastChannel if supported. +const broadcastChannel = (typeof BroadcastChannel === "undefined" ? null : new BroadcastChannel(BROADCASTCHANNEL_NAME)); + +////////////////////////////////////// +// Utility methods +function PostBroadcastMessage(o) +{ + if (!broadcastChannel) + return; // not supported + + // Impose artificial (and arbitrary!) delay of 3 seconds to make sure client is listening by the time the message is sent. + // Note we could remove the delay on some messages, but then we create a race condition where sometimes messages can arrive + // in the wrong order (e.g. "update ready" arrives before "started downloading update"). So to keep the consistent ordering, + // delay all messages by the same amount. + setTimeout(() => broadcastChannel.postMessage(o), 3000); +}; + +function Broadcast(type) +{ + PostBroadcastMessage({ + "type": type + }); +}; + +function BroadcastDownloadingUpdate(version) +{ + PostBroadcastMessage({ + "type": "downloading-update", + "version": version + }); +} + +function BroadcastUpdateReady(version) +{ + PostBroadcastMessage({ + "type": "update-ready", + "version": version + }); +} + +function IsUrlInLazyLoadList(url, lazyLoadList) +{ + if (!lazyLoadList) + return false; // presumably lazy load list failed to load + + try { + for (const lazyLoadRegex of lazyLoadList) + { + if (new RegExp(lazyLoadRegex).test(url)) + return true; + } + } + catch (err) + { + console.error(CONSOLE_PREFIX + "Error matching in lazy-load list: ", err); + } + + return false; +}; + +function WriteLazyLoadListToStorage(lazyLoadList) +{ + if (typeof localforage === "undefined") + return Promise.resolve(); // bypass if localforage not imported + else + return localforage.setItem(LAZYLOAD_KEYNAME, lazyLoadList) +}; + +function ReadLazyLoadListFromStorage() +{ + if (typeof localforage === "undefined") + return Promise.resolve([]); // bypass if localforage not imported + else + return localforage.getItem(LAZYLOAD_KEYNAME); +}; + +function GetCacheBaseName() +{ + // Include the scope to avoid name collisions with any other SWs on the same origin. + // e.g. "c2offline-https://example.com/foo/" (won't collide with anything under bar/) + return CACHE_NAME_PREFIX + "-" + self.registration.scope; +}; + +function GetCacheVersionName(version) +{ + // Append the version number to the cache name. + // e.g. "c2offline-https://example.com/foo/-v2" + return GetCacheBaseName() + "-v" + version; +}; + +// Return caches.keys() filtered down to just caches we're interested in (with the right base name). +// This filters out caches from unrelated scopes. +async function GetAvailableCacheNames() +{ + const cacheNames = await caches.keys(); + const cacheBaseName = GetCacheBaseName(); + return cacheNames.filter(n => n.startsWith(cacheBaseName)); +}; + +// Identify if an update is pending, which is the case when we have 2 or more available caches. +// One must be an update that is waiting, since the next navigate that does an upgrade will +// delete all the old caches leaving just one currently-in-use cache. +async function IsUpdatePending() +{ + const availableCacheNames = await GetAvailableCacheNames(); + return (availableCacheNames.length >= 2); +}; + +// Automatically deduce the main page URL (e.g. index.html or main.aspx) from the available browser windows. +// This prevents having to hard-code an index page in the file list, implicitly caching it like AppCache did. +async function GetMainPageUrl() +{ + const allClients = await clients.matchAll({ + includeUncontrolled: true, + type: "window" + }); + + for (const c of allClients) + { + // Parse off the scope from the full client URL, e.g. https://example.com/index.html -> index.html + let url = c.url; + if (url.startsWith(self.registration.scope)) + url = url.substring(self.registration.scope.length); + + if (url && url !== "/") // ./ is also implicitly cached so don't bother returning that + { + // If the URL is solely a search string, prefix it with / to ensure it caches correctly. + // e.g. https://example.com/?foo=bar needs to cache as /?foo=bar, not just ?foo=bar. + if (url.startsWith("?")) + url = "/" + url; + + return url; + } + } + + return ""; // no main page URL could be identified +}; + +// Hack to fetch optionally bypassing HTTP cache until fetch cache options are supported in Chrome (crbug.com/453190) +function fetchWithBypass(request, bypassCache) +{ + if (typeof request === "string") + request = new Request(request); + + if (bypassCache) + { + // bypass enabled: add a random search parameter to avoid getting a stale HTTP cache result + const url = new URL(request.url); + url.search += Math.floor(Math.random() * 1000000); + + return fetch(url, { + headers: request.headers, + mode: request.mode, + credentials: request.credentials, + redirect: request.redirect, + cache: "no-store" + }); + } + else + { + // bypass disabled: perform normal fetch which is allowed to return from HTTP cache + return fetch(request); + } +}; + +// Effectively a cache.addAll() that only creates the cache on all requests being successful (as a weak attempt at making it atomic) +// and can optionally cache-bypass with fetchWithBypass in every request +async function CreateCacheFromFileList(cacheName, fileList, bypassCache) +{ + // Kick off all requests and wait for them all to complete + const responses = await Promise.all(fileList.map(url => fetchWithBypass(url, bypassCache))); + + // Check if any request failed. If so don't move on to opening the cache. + // This makes sure we only open a cache if all requests succeeded. + let allOk = true; + + for (const response of responses) + { + if (!response.ok) + { + allOk = false; + console.error(CONSOLE_PREFIX + "Error fetching '" + response.url + "' (" + response.status + " " + response.statusText + ")"); + } + } + + if (!allOk) + throw new Error("not all resources were fetched successfully"); + + // Can now assume all responses are OK. Open a cache and write all responses there. + // TODO: ideally we can do this transactionally to ensure a complete cache is written as one atomic operation. + // This needs either new transactional features in the spec, or at the very least a way to rename a cache + // (so we can write to a temporary name that won't be returned by GetAvailableCacheNames() and then rename it when ready). + const cache = await caches.open(cacheName); + + try { + return await Promise.all(responses.map( + (response, i) => cache.put(fileList[i], response) + )); + } + catch (err) + { + // Not sure why cache.put() would fail (maybe if storage quota exceeded?) but in case it does, + // clean up the cache to try to avoid leaving behind an incomplete cache. + console.error(CONSOLE_PREFIX + "Error writing cache entries: ", err); + caches.delete(cacheName); + throw err; + } +}; + +async function UpdateCheck(isFirst) +{ + try { + // Always bypass cache when requesting offline.js to make sure we find out about new versions. + const response = await fetchWithBypass(OFFLINE_DATA_FILE, true); + + if (!response.ok) + throw new Error(OFFLINE_DATA_FILE + " responded with " + response.status + " " + response.statusText); + + const data = await response.json(); + + const version = data.version; + const fileList = data.fileList; + const lazyLoadList = data.lazyLoad; + const currentCacheName = GetCacheVersionName(version); + + const cacheExists = await caches.has(currentCacheName); + + // Don't recache if there is already a cache that exists for this version. Assume it is complete. + if (cacheExists) + { + // Log whether we are up-to-date or pending an update. + const isUpdatePending = await IsUpdatePending(); + if (isUpdatePending) + { + console.log(CONSOLE_PREFIX + "Update pending"); + Broadcast("update-pending"); + } + else + { + console.log(CONSOLE_PREFIX + "Up to date"); + Broadcast("up-to-date"); + } + return; + } + + // Implicitly add the main page URL to the file list, e.g. "index.html", so we don't have to assume a specific name. + const mainPageUrl = await GetMainPageUrl(); + + // Prepend the main page URL to the file list if we found one and it is not already in the list. + // Also make sure we request the base / which should serve the main page. + fileList.unshift("./"); + + if (mainPageUrl && fileList.indexOf(mainPageUrl) === -1) + fileList.unshift(mainPageUrl); + + console.log(CONSOLE_PREFIX + "Caching " + fileList.length + " files for offline use"); + + if (isFirst) + Broadcast("downloading"); + else + BroadcastDownloadingUpdate(version); + + // Note we don't bypass the cache on the first update check. This is because SW installation and the following + // update check caching will race with the normal page load requests. For any normal loading fetches that have already + // completed or are in-flight, it is pointless and wasteful to cache-bust the request for offline caching, since that + // forces a second network request to be issued when a response from the browser HTTP cache would be fine. + if (lazyLoadList) + await WriteLazyLoadListToStorage(lazyLoadList); // dump lazy load list to local storage# + + await CreateCacheFromFileList(currentCacheName, fileList, !isFirst); + const isUpdatePending = await IsUpdatePending(); + + if (isUpdatePending) + { + console.log(CONSOLE_PREFIX + "All resources saved, update ready"); + BroadcastUpdateReady(version); + } + else + { + console.log(CONSOLE_PREFIX + "All resources saved, offline support ready"); + Broadcast("offline-ready"); + } + } + catch (err) + { + // Update check fetches fail when we're offline, but in case there's any other kind of problem with it, log a warning. + console.warn(CONSOLE_PREFIX + "Update check failed: ", err); + } +}; + +self.addEventListener("install", event => +{ + // On install kick off an update check to cache files on first use. + // If it fails we can still complete the install event and leave the SW running, we'll just + // retry on the next navigate. + event.waitUntil( + UpdateCheck(true) // first update + .catch(() => null) + ); +}); + +async function GetCacheNameToUse(availableCacheNames, doUpdateCheck) +{ + // Prefer the oldest cache available. This avoids mixed-version responses by ensuring that if a new cache + // is created and filled due to an update check while the page is running, we keep returning resources + // from the original (oldest) cache only. + if (availableCacheNames.length === 1 || !doUpdateCheck) + return availableCacheNames[0]; + + // We are making a navigate request with more than one cache available. Check if we can expire any old ones. + const allClients = await clients.matchAll(); + + // If there are other clients open, don't expire anything yet. We don't want to delete any caches they + // might be using, which could cause mixed-version responses. + if (allClients.length > 1) + return availableCacheNames[0]; + + // Identify newest cache to use. Delete all the others. + const latestCacheName = availableCacheNames[availableCacheNames.length - 1]; + console.log(CONSOLE_PREFIX + "Updating to new version"); + + await Promise.all( + availableCacheNames.slice(0, -1) + .map(c => caches.delete(c)) + ); + + return latestCacheName; +}; + +async function HandleFetch(event, doUpdateCheck) +{ + const availableCacheNames = await GetAvailableCacheNames(); + + // No caches available: go to network + if (!availableCacheNames.length) + return fetch(event.request); + + const useCacheName = await GetCacheNameToUse(availableCacheNames, doUpdateCheck); + const cache = await caches.open(useCacheName); + const cachedResponse = await cache.match(event.request); + + if (cachedResponse) + return cachedResponse; // use cached response + + // We need to check if this request is to be lazy-cached. Send the request and load the lazy-load list + // from storage simultaneously. + const result = await Promise.all([fetch(event.request), ReadLazyLoadListFromStorage()]); + const fetchResponse = result[0]; + const lazyLoadList = result[1]; + + if (IsUrlInLazyLoadList(event.request.url, lazyLoadList)) + { + // Handle failure writing to the cache. This can happen if the storage quota is exceeded, which is particularly + // likely in Safari 11.1, which appears to have very tight storage limits. Make sure even in the event of an error + // we continue to return the response from the fetch. + try { + // Note clone response since we also respond with it + await cache.put(event.request, fetchResponse.clone()); + } + catch (err) + { + console.warn(CONSOLE_PREFIX + "Error caching '" + event.request.url + "': ", err); + } + } + + return fetchResponse; +}; + +self.addEventListener("fetch", event => +{ + /** NOTE (iain) + * This check is to prevent a bug with XMLHttpRequest where if its + * proxied with "FetchEvent.prototype.respondWith" no upload progress + * events are triggered. By returning we allow the default action to + * occur instead. Currently all cross-origin requests fall back to default. + */ + if (new URL(event.request.url).origin !== location.origin) + return; + + // Check for an update on navigate requests + const doUpdateCheck = (event.request.mode === "navigate"); + + const responsePromise = HandleFetch(event, doUpdateCheck); + + if (doUpdateCheck) + { + // allow the main request to complete, then check for updates + event.waitUntil( + responsePromise + .then(() => UpdateCheck(false)) // not first check + ); + } + + event.respondWith(responsePromise); +}); \ No newline at end of file diff --git a/gversion/gs/ovo/thefall.png b/gversion/gs/ovo/thefall.png new file mode 100644 index 0000000..1897158 Binary files /dev/null and b/gversion/gs/ovo/thefall.png differ diff --git a/gversion/gs/ovo/theliljoker.png b/gversion/gs/ovo/theliljoker.png new file mode 100644 index 0000000..6df5c19 Binary files /dev/null and b/gversion/gs/ovo/theliljoker.png differ diff --git a/gversion/gs/ovo/tips.json b/gversion/gs/ovo/tips.json new file mode 100644 index 0000000..6f2749d --- /dev/null +++ b/gversion/gs/ovo/tips.json @@ -0,0 +1,29 @@ +[{ + "text": "Did you know you could play this game on mobile?", + "frame": 0 + }, + { + "text": "Pressing R restarts the level. Shift + R resets the whole run in Play mode", + "frame": 0 + }, + { + "text": "Activate hard mode in the options if you're a tough player.", + "frame": 0 + }, + { + "text": "Activate advanced mode in the options to get level replays.", + "frame": 0 + }, + { + "text": "In advanced mode, your can toggle debug mode in the pause menu or using F2.", + "frame": 0 + }, + { + "text": "There is no Level 4C", + "frame": 0 + }, + { + "text": "On Desktop you can change the keys you wish to use for movement in the options", + "frame": 0 + } +] \ No newline at end of file diff --git a/gversion/gs/ovo/topcharts.png b/gversion/gs/ovo/topcharts.png new file mode 100644 index 0000000..0b5d592 Binary files /dev/null and b/gversion/gs/ovo/topcharts.png differ diff --git a/gversion/gs/ovo/tutorials.png b/gversion/gs/ovo/tutorials.png new file mode 100644 index 0000000..2fca08b Binary files /dev/null and b/gversion/gs/ovo/tutorials.png differ diff --git a/gversion/gs/ovo/unlockalllevels.js b/gversion/gs/ovo/unlockalllevels.js new file mode 100644 index 0000000..3a59bdd --- /dev/null +++ b/gversion/gs/ovo/unlockalllevels.js @@ -0,0 +1,564 @@ +// ================= CRAZY ADS =================== +// vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv + +function initWebSdkWrapper(debug = false) { + let config = globalThis.adconfig; + + let WebSdkWrapper = globalThis.WebSdkWrapper; + let postInit = () => { + WebSdkWrapper.onUnlockAllLevels(() => { + c2_callFunction("unlockAllLevels"); + }); + WebSdkWrapper.onPause(() => { + c2_callFunction("websdk > pause"); + }); + WebSdkWrapper.onResume(() => { + c2_callFunction("websdk > resume"); + }); + WebSdkWrapper.onMute(() => { + c2_callFunction("muteSounds"); + }); + WebSdkWrapper.onUnmute(() => { + c2_callFunction("unmuteSounds"); + }); + WebSdkWrapper.onAdStarted(() => { + c2_callFunction("adStarted"); + }); + }; + + try { + let json = JSON.parse(config); + if (json.hasOwnProperty("removeSocials")) { + globalThis.adconfigRemoveSocials = json.removeSocials ? 1 : 0; + } else { + globalThis.adconfigRemoveSocials = 0; + } + if (json.hasOwnProperty("stopAudioInBackground")) { + globalThis.adconfigStopAudioInBackground = json.stopAudioInBackground + ? 1 + : 0; + } else { + globalThis.adconfigStopAudioInBackground = 0; + } + if (json.hasOwnProperty("removeMidrollRewarded")) { + globalThis.adconfigRemoveMidrollRewarded = json.removeMidrollRewarded + ? 1 + : 0; + } else { + globalThis.adconfigRemoveMidrollRewarded = 0; + } + if (json.hasOwnProperty("noReligion")) { + globalThis.adconfigNoReligion = json.noReligion ? 1 : 0; + } else { + globalThis.adconfigNoReligion = 0; + } + WebSdkWrapper.init(json.name, !!debug, json).then(postInit); + } catch (e) { + WebSdkWrapper.init("", !!debug).then(postInit); + } +} + +var crazysdk; +window.adblockIsEnabled = false; +function crazyGamesLoaded() { + crazysdk = window.CrazyGames.CrazySDK.getInstance(); //Getting the SDK + crazysdk.init(); + crazysdk.addEventListener("adblockDetectionExecuted", function () { + window.adblockIsEnabled = crazysdk.hasAdblock; + }); + crazysdk.addEventListener("adStarted", function () { + c2_callFunction("muteSounds"); + c2_callFunction("adStarted"); + }); // mute sound + crazysdk.addEventListener("adFinished", function () { + c2_callFunction("adOver"); + }); // reenable sound, enable ui + crazysdk.addEventListener("adError", function () { + c2_callFunction("adOverFail"); + }); // reenable sound, enable ui + crazysdk.addEventListener("bannerRendered", (event) => { + console.log(`Banner for container ${event.containerId} has been + rendered!`); + }); + crazysdk.addEventListener("bannerError", (event) => { + console.log(`Banner render error: ${event.error}`); + }); + // crazyMidRoll(); +} + +function crazyRemoveBanner(id) { + //let div = document.getElementById(id); + //div.innerHTML = ""; +} + +function mobileCheck() { + let check = false; + (function (a) { + if ( + /(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows ce|xda|xiino/i.test( + a + ) || + /1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\-|your|zeto|zte\-/i.test( + a.substr(0, 4) + ) + ) + check = true; + })(navigator.userAgent || navigator.vendor || window.opera); + return check; +} + +function crazyCreateBanner(id) { + let bannerSize = "728x90"; + if (mobileCheck() && window.innerHeight > window.innerWidth) { + bannerSize = "320x100"; + } + if (crazysdk) + crazysdk.requestBanner([ + { + containerId: id, + size: bannerSize, + }, + ]); +} + +function crazyHappyTime() { + globalThis.WebSdkWrapper.happyTime(); +} + +function crazyMidRoll() { + globalThis.WebSdkWrapper.interstitial().then((success) => { + if (success) c2_callFunction("adOver"); + else c2_callFunction("adOverFail"); + }); + // if (crazysdk) crazysdk.requestAd("midgame"); +} + +function crazyRewarded() { + globalThis.WebSdkWrapper.rewarded().then((success) => { + if (success) c2_callFunction("adOver"); + else c2_callFunction("adOverFail"); + }); + // if (crazysdk) crazysdk.requestAd("rewarded"); +} + +function crazyGameplayStart() { + globalThis.WebSdkWrapper.gameplayStart(); + // if (crazysdk) crazysdk.gameplayStart(); +} + +function crazyGameplayStop() { + globalThis.WebSdkWrapper.gameplayStop(); + // if (crazysdk) crazysdk.gameplayStop(); +} + +// ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +// ================= CRAZY ADS =================== + +// =================== DEBUG ===================== +// vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv + +function execCode(code) { + c2_callFunction("execCode", [code]); +} + +function dumpSave() { + c2_callFunction("dumpSave"); +} + +(function () { + function handleAnyTouchEvent() { + c2_callFunction("Save > Auto Update Mobile Mode"); + } + var el = document.getElementsByTagName("canvas")[0]; + el.addEventListener("touchstart", handleAnyTouchEvent, false); + el.addEventListener("touchend", handleAnyTouchEvent, false); + el.addEventListener("touchcancel", handleAnyTouchEvent, false); + el.addEventListener("touchleave", handleAnyTouchEvent, false); + el.addEventListener("touchmove", handleAnyTouchEvent, false); +})(); + +function isIpad() { + const ua = window.navigator.userAgent; + if (ua.indexOf("iPad") > -1) { + return true; + } + + if (ua.indexOf("Macintosh") > -1) { + try { + document.createEvent("TouchEvent"); + return true; + } catch (e) {} + } + + return false; +} + +// ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +// =================== DEBUG ===================== + +// ================= LANGUAGES =================== +// vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv + +function tsvToArray(tsv) { + let tempArr = tsv.split(/\r?\n|\r/); + return tempArr.map((x) => x.split("\t")); +} + +function mergeInstanceVars() { + let saved = JSON.parse(globalThis.savedVars); + let real = JSON.parse(globalThis.curVars); + return JSON.stringify( + real.map((val, i) => (i < saved.length ? saved[i] : val)) + ); +} + +function detectLanguage() { + let langs = Object.keys(globalThis.languageJSON.languages); + var userLangs = navigator.language || navigator.userLanguage; + userLangs = navigator.languages || [userLangs]; + let compareLangs = (lang, curLang) => { + if (curLang.toLowerCase() === lang.slice(0, curLang.length).toLowerCase()) { + return true; + } + let subLang = curLang.split("-")[0]; + return ( + subLang.toLowerCase() === lang.slice(0, subLang.length).toLowerCase() + ); + }; + for (let i = 0; i < userLangs.length; i++) { + let curLang = userLangs[i]; + let res = langs.find(compareLangs.bind(null, curLang)); + if (res) return res; + } + return "en-us"; +} + +function translateTips(locale) { + if (!localeExists(locale)) locale = detectLanguage(); + let tips = globalThis.gatheredTips; + let json = JSON.parse(tips); + let res = json.map((tip, index) => { + key = `tip${index + 1}`; + return { + text: getLanguageValue(locale, key, "text", tip.text, ""), + frame: tip.frame, + }; + }); + if (globalThis.adconfigRemoveSocials) { + globalThis.tmptmp = res; + res = res.filter((x) => !x.text.includes("discord")); + } + return JSON.stringify(res); +} + +async function getTranslations() { + let result = await fetch( + "https://docs.google.com/spreadsheets/d/e/2PACX-1vSOU_pMce0njTy64pTFVI7yLN2t5ReGYaRCmJDdj_KRSSbAEL7XPixR80X4Jzm0r8sDL0KHq1QRkVGC/pub?output=tsv" + ); + let data = await result.text(); + let array = tsvToArray(data); + const json = {}; + json.version = array[0][0]; + const length = array[1].length; + json.languages = {}; + + const startX = 4; + const startY = 3; + const colsPerLang = 2; + const idColumn = 2; + const langRow = 1; + const langIdRow = 2; + const rowsPerLine = 1; + for (let i = startX; i < length; i += colsPerLang) { + json.languages[array[langIdRow][i]] = array[langRow][i]; + } + json.data = {}; + for (let i = startY; i < array.length; i += rowsPerLine) { + for (let j = startX; j < length; j += colsPerLang) { + json.data[array[langIdRow][j]] = json.data[array[langIdRow][j]] || {}; + if (json.data[array[langIdRow][j]][array[i][idColumn]]) { + console.warn("key " + array[i][idColumn] + "already exists"); + } + json.data[array[langIdRow][j]][array[i][idColumn]] = { + text: array[i][j], + extra: [], + }; + for (let k = 1; k < colsPerLang; k++) { + try { + let extrajson = JSON.parse(array[i][j + k]); + Object.keys(extrajson).forEach((key) => { + if (key === "text" || key === "extra") return; + json.data[array[langIdRow][j]][array[i][idColumn]][key] = + extrajson[key]; + }); + } catch (e) { + json.data[array[langIdRow][j]][array[i][idColumn]].extra.push( + array[i][j + k] + ); + } + } + } + } + c2_callFunction("Language > LoadLanguageFile", [JSON.stringify(json)]); + globalThis.languageJSON = json; + return json; +} + +function listLanguages() { + return JSON.stringify( + Object.keys(globalThis.languageJSON.languages).map((lang) => ({ + anim: lang.replace("-", ""), + name: globalThis.languageJSON.languages[lang], + })) + ); +} + +function getLocale(index) { + return Object.keys(globalThis.languageJSON.languages)[index]; +} + +function levenshteinDistance(str1 = "", str2 = "") { + const track = Array(str2.length + 1) + .fill(null) + .map(() => Array(str1.length + 1).fill(null)); + for (let i = 0; i <= str1.length; i += 1) { + track[0][i] = i; + } + for (let j = 0; j <= str2.length; j += 1) { + track[j][0] = j; + } + for (let j = 1; j <= str2.length; j += 1) { + for (let i = 1; i <= str1.length; i += 1) { + const indicator = str1[i - 1] === str2[j - 1] ? 0 : 1; + track[j][i] = Math.min( + track[j][i - 1] + 1, // deletion + track[j - 1][i] + 1, // insertion + track[j - 1][i - 1] + indicator // substitution + ); + } + } + return track[str2.length][str1.length]; +} + +function getLocaleName(locale) { + if (!localeExists(locale)) locale = detectLanguage(); + if ( + globalThis.languageJSON && + globalThis.languageJSON.languages.hasOwnProperty(locale) + ) + return globalThis.languageJSON.languages[locale]; + return "Unknown"; +} + +function setLanguageJSON() { + globalThis.languageJSON = JSON.parse(globalThis.tempLanguageJSON); +} + +function languageKeyExists(locale, key) { + if (key.trim() === "") return 0; + if (!localeExists(locale)) locale = detectLanguage(); + return globalThis.languageJSON.data[locale].hasOwnProperty(key) ? 1 : 0; +} + +let cache = {}; + +function findLanguageKey(locale, text) { + if (!localeExists(locale)) locale = detectLanguage(); + if (cache[locale] && cache[locale][text]) return cache[locale][text]; + let localeData = globalThis.languageJSON.data[locale]; + let key = Object.keys(localeData).find( + (key) => + levenshteinDistance( + localeData[key].text.toLowerCase(), + text.toLowerCase() + ) <= Math.min(3, Math.floor(text.length / 5)) + ); + console.log(key); + if (key) { + cache[locale] = cache[locale] || {}; + cache[locale][text] = key; + return key; + } + cache[locale] = cache[locale] || {}; + cache[locale][text] = ""; + return ""; +} + +function processString(string, ...params) { + params.forEach((param, i) => { + string = string.replace(`{${i}}`, param.toString()); + }); + return string; +} + +function localeExists(locale) { + return ( + globalThis.languageJSON && + globalThis.languageJSON.languages.hasOwnProperty(locale) + ); +} + +var __ovoIsSafari = /^((?!chrome|android).)*safari/i.test(navigator.userAgent); + +function doGetLanguageValue(locale, key, value, defaultValue, metadata) { + if (!localeExists(locale)) locale = detectLanguage(); + if (key !== "" && languageKeyExists(locale, key) === 1) { + let data = globalThis.languageJSON.data[locale][key]; + if (data.hasOwnProperty(value)) return data[value]; + } + if (metadata !== "") { + try { + let obj = JSON.parse(metadata); + if (obj.hasOwnProperty(value)) return obj[value]; + return defaultValue; + } catch (e) {} + } + return defaultValue; +} + +function getLanguageValue(locale, key, value, defaultValue, metadata) { + let ret = doGetLanguageValue(locale, key, value, defaultValue, metadata); + if ( + __ovoIsSafari && + value.trim().toLowerCase() === "aligny" && + ret < 90 && + ret > 10 + ) + return 50; + if (globalThis.adconfigNoReligion === 1) { + if ( + locale === "en-us" && + value.trim().toLowerCase() === "text" && + ret === "Hellish" + ) + return "Dangerous"; + if ( + locale === "en-us" && + value.trim().toLowerCase() === "text" && + ret === "Hellish" + ) + return "Dangerous"; + if ( + locale === "en-us" && + value.trim().toLowerCase() === "text" && + ret === "Coin God" + ) + return "Coin Master"; + } + return ret; +} + +// ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +// ================= LANGUAGES =================== + +// =============== LZMA COMPRESS ================= +// vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv + +function compressReplay(replay) { + LZMA_WORKER.compress(replay, "1", function (result, error) { + if (error) console.error(error); + else c2_callFunction("replayCompressed", [convert_to_formated_hex(result)]); + }); +} + +function decompressReplay(replay) { + var byte_arr = convert_formated_hex_to_bytes(replay); + if (byte_arr == false) { + alert("invalid replay file"); + return false; + } + LZMA_WORKER.decompress(byte_arr, function (result, error) { + if (error) console.error(error); + else c2_callFunction("replayDecompressed", [result]); + }); +} + +function convert_formated_hex_to_bytes(hex_str) { + var count = 0, + hex_arr, + hex_data = [], + hex_len, + i; + + if (hex_str.trim() == "") return []; + + /// Check for invalid hex characters. + if (/[^0-9a-fA-F\s]/.test(hex_str)) { + return false; + } + + hex_arr = hex_str.split(/([0-9a-fA-F]+)/g); + hex_len = hex_arr.length; + + for (i = 0; i < hex_len; ++i) { + if (hex_arr[i].trim() == "") { + continue; + } + hex_data[count++] = parseInt(hex_arr[i], 16); + } + + return hex_data; +} + +function convert_formated_hex_to_string(s) { + var byte_arr = convert_formated_hex_to_bytes(s); + var res = ""; + for (var i = 0; i < byte_arr.length; i += 2) { + res += String.fromCharCode(byte_arr[i] | (byte_arr[i + 1] << 8)); + } + return res; +} + +function convert_string_to_hex(s) { + var byte_arr = []; + for (var i = 0; i < s.length; i++) { + var value = s.charCodeAt(i); + byte_arr.push(value & 255); + byte_arr.push((value >> 8) & 255); + } + return convert_to_formated_hex(byte_arr); +} + +function is_array(input) { + return typeof input === "object" && input instanceof Array; +} + +function convert_to_formated_hex(byte_arr) { + var hex_str = "", + i, + len, + tmp_hex; + + if (!is_array(byte_arr)) { + return false; + } + + len = byte_arr.length; + + for (i = 0; i < len; ++i) { + if (byte_arr[i] < 0) { + byte_arr[i] = byte_arr[i] + 256; + } + if (byte_arr[i] === undefined) { + alert("Boom " + i); + byte_arr[i] = 0; + } + tmp_hex = byte_arr[i].toString(16); + + // Add leading zero. + if (tmp_hex.length == 1) tmp_hex = "0" + tmp_hex; + + if ((i + 1) % 16 === 0) { + tmp_hex += "\n"; + } else { + tmp_hex += " "; + } + + hex_str += tmp_hex; + } + + return hex_str.trim(); +} + +// ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +// =============== LZMA COMPRESS ================= diff --git a/gversion/gs/ovo/velocity.png b/gversion/gs/ovo/velocity.png new file mode 100644 index 0000000..55a65e3 Binary files /dev/null and b/gversion/gs/ovo/velocity.png differ diff --git a/gversion/gs/ovo/websdkwrapper.js b/gversion/gs/ovo/websdkwrapper.js new file mode 100644 index 0000000..5a2303c --- /dev/null +++ b/gversion/gs/ovo/websdkwrapper.js @@ -0,0 +1,559 @@ +globalThis.WebSdkWrapper = (function () { + function addScript(src, id, onload) { + if (document.getElementById(id)) return; + let fjs = document.getElementsByTagName("script")[0]; + let js = document.createElement("script"); + js.id = id; + fjs.parentNode.insertBefore(js, fjs); + js.onload = onload; + js.src = src; + } + + window.addEventListener("keydown", (ev) => { + if (["ArrowDown", "ArrowUp", " "].includes(ev.key)) { + ev.preventDefault(); + } + }); + window.addEventListener("wheel", (ev) => ev.preventDefault(), { + passive: false, + }); + + /* + ============== EVENT DISPATCHER ================= + vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv + */ + const events = {}; + + function listen(event, fn, { once = false } = {}) { + events[event] = events[event] || []; + events[event].push({ + fn, + once, + }); + } + + function listenOnce(event, fn) { + listen(event, fn, { once: true }); + } + + function dispatch(event, ...data) { + (events[event] || []).forEach((fnObj) => { + fnObj.fn(...data); + }); + events[event] = (events[event] || []).filter((fnObj) => !fnObj.once); + } + /* + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + ============== EVENT DISPATCHER ================= + */ + let sdk; + const sdkContext = {}; + let supportedNetworks = [ + { + name: "Poki", + get sdk() { + return globalThis.PokiSDK; + }, + scriptSrc: "//game-cdn.poki.com/scripts/v2/poki-sdk.js", + hasAds: true, + hasBanner: false, + enableOnlyInProduction: false, + implementation: { + //async preInit(debug = false) {}, + init(debug = false) { + return new Promise((resolve) => { + sdk + .init() + .then(() => { + sdkContext.hasAdblock = false; + resolve(); + }) + .catch(() => { + sdkContext.hasAdblock = true; + resolve(); + }); + sdk.setDebug(debug); + }); + }, + setUpEventListeners() { + listen("loadingStart", () => { + sdk.gameLoadingStart(); + }); + listen("loadingEnd", () => { + sdk.gameLoadingFinished(); + }); + listen("gameplayStart", () => { + if (sdkContext.gameplayStarted) return; + sdkContext.gameplayStarted = true; + sdk.gameplayStart(); + }); + listen("gameplayStop", () => { + if (!sdkContext.gameplayStarted) return; + sdkContext.gameplayStarted = false; + sdk.gameplayStop(); + }); + listen("interstitial", () => { + dispatch("adStarted", sdkContext.lastRequestedAd); + sdk.commercialBreak().then(() => { + dispatch("interstitialEnd", true); + }); + }); + listen("rewarded", () => { + dispatch("adStarted", sdkContext.lastRequestedAd); + sdk.rewardedBreak().then((success) => { + dispatch("rewardedEnd", success); + }); + }); + listen("happyTime", (scale) => { + sdk.happyTime(scale); + }); + }, + hasAdblock() { + return !!sdkContext.hasAdblock; + }, + }, + }, + { + name: "CrazyGames", + get sdk() { + if (!sdkContext.crazysdk) + sdkContext.crazysdk = globalThis?.CrazyGames?.CrazySDK?.getInstance(); + return sdkContext.crazysdk; + }, + scriptSrc: "//sdk.crazygames.com/crazygames-sdk-v1.js", + hasAds: true, + enableOnlyInProduction: false, + hasBanner: true, + implementation: { + //async preInit(debug = false) {}, + init() { + return new Promise((resolve) => { + sdk.addEventListener("adblockDetectionExecuted", (event) => { + sdkContext.hasAdblock = event.hasAdblock; + resolve(); + }); + sdk.init(); + }); + }, + setUpEventListeners() { + sdk.addEventListener("adStarted", () => { + dispatch("adStarted", sdkContext.lastRequestedAd); + }); + sdk.addEventListener("adFinished", () => { + if (sdkContext.lastRequestedAd === "interstitial") + dispatch("interstitialEnd", true); + else dispatch("rewardedEnd", true); + }); + sdk.addEventListener("adFinished", () => { + if (sdkContext.lastRequestedAd === "interstitial") + dispatch("interstitialEnd", true); + else dispatch("rewardedEnd", true); + }); + sdk.addEventListener("adError", () => { + if (sdkContext.lastRequestedAd === "interstitial") + dispatch("interstitialEnd", false); + else dispatch("rewardedEnd", false); + }); + listen("gameplayStart", () => { + if (sdkContext.gameplayStarted) return; + sdkContext.gameplayStarted = true; + sdk.gameplayStart(); + }); + listen("gameplayStop", () => { + if (!sdkContext.gameplayStarted) return; + sdkContext.gameplayStarted = false; + sdk.gameplayStop(); + }); + listen("interstitial", () => { + sdkContext.lastRequestedAd = "interstitial"; + sdk.requestAd("midgame"); + }); + listen("rewarded", () => { + sdkContext.lastRequestedAd = "rewarded"; + sdk.requestAd("rewarded"); + }); + listen("happyTime", () => { + sdk.happytime(); + }); + listen("banner", (data) => { + sdk.requestBanner(data); + }); + }, + hasAdblock() { + return !!sdkContext.hasAdblock; + }, + }, + }, + { + name: "GamePix", + get sdk() { + return globalThis.GamePix; + }, + scriptSrc: "//integration.gamepix.com/sdk/v3/gamepix.sdk.js", + hasAds: true, + enableOnlyInProduction: true, + hasBanner: false, + implementation: { + //async preInit(debug = false) {}, + //init() {}, + setUpEventListeners() { + listen("loadingProgress", (progress) => { + sdk.loading(progress); + }); + listen("loadingEnd", () => { + sdk.loaded(); + }); + sdk.pause = () => { + dispatch("pause"); + }; + sdk.resume = () => { + dispatch("resume"); + }; + listen("levelStart", (level) => { + sdk.updateLevel(level); + }); + listen("score", (score) => { + sdk.updateScore(score); + }); + listen("interstitial", () => { + dispatch("adStarted", sdkContext.lastRequestedAd); + sdk.interstitialAd().then(() => { + dispatch("interstitialEnd", true); + }); + }); + listen("rewarded", () => { + dispatch("adStarted", sdkContext.lastRequestedAd); + sdk.rewardAd().then((res) => { + dispatch("rewardedEnd", res.success); + }); + }); + listen("happyTime", () => { + sdk.happyMoment(); + }); + }, + hasAdblock() { + return false; + }, + }, + }, + { + name: "GameDistribution", + get sdk() { + return globalThis.gdsdk; + }, + scriptSrc: "//html5.api.gamedistribution.com/main.min.js", + hasAds: true, + enableOnlyInProduction: true, + hasBanner: false, + implementation: { + async preInit(debug = false, data) { + sdkContext.errors = 0; + window["GD_OPTIONS"] = { + gameId: data.gameId, + debug, + testing: debug, + onEvent: function (event) { + switch (event.name) { + case "SDK_GAME_START": + sdkContext.errors = 0; + // if (sdkContext.lastRequestedAd === "interstitial") + // dispatch("interstitialEnd", true); + // else dispatch("rewardedEnd", true); + break; + case "SDK_GAME_PAUSE": + dispatch("pause"); + break; + case "SDK_GDPR_TRACKING": + // this event is triggered when your user doesn't want to be tracked + break; + case "SDK_GDPR_TARGETING": + // this event is triggered when your user doesn't want personalised targeting of ads and such + break; + case "AD_ERROR": + sdkContext.errors += 1; + // if (sdkContext.errors >= 2) { + // if (sdkContext.lastRequestedAd === "interstitial") + // dispatch("interstitialEnd", false); + // else dispatch("rewardedEnd", false); + // } else { + // dispatch(sdkContext.lastRequestedAd); + // } + break; + } + }, + }; + }, + //init() {}, + setUpEventListeners() { + listen("interstitial", () => { + sdkContext.lastRequestedAd = "interstitial"; + dispatch("adStarted", sdkContext.lastRequestedAd); + sdk + .showAd() + .then((response) => { + dispatch("interstitialEnd", true); + }) + .catch((error) => { + dispatch("interstitialEnd", false); + }); + }); + listen("rewarded", () => { + sdkContext.lastRequestedAd = "rewarded"; + dispatch("adStarted", sdkContext.lastRequestedAd); + sdk + .showAd("rewarded") + .then((response) => { + dispatch("rewardedEnd", true); + }) + .catch((error) => { + dispatch("rewardedEnd", false); + }); + }); + }, + hasAdblock() { + return false; + }, + }, + }, + { + name: "GameMonetize", + get sdk() { + return globalThis.sdk; + }, + scriptSrc: "//html5.api.gamedistribution.com/main.min.js", + hasAds: true, + enableOnlyInProduction: true, + hasBanner: false, + implementation: { + async preInit(debug = false, data) { + window["SDK_OPTIONS "] = { + gameId: data.gameId, + debug, + testing: debug, + onEvent: function (event) { + switch (event.name) { + case "SDK_GAME_START": + if (sdkContext.lastRequestedAd === "interstitial") + dispatch("interstitialEnd", true); + else dispatch("rewardedEnd", true); + break; + case "SDK_GAME_PAUSE": + dispatch("pause"); + break; + case "SDK_GDPR_TRACKING": + // this event is triggered when your user doesn't want to be tracked + break; + case "SDK_GDPR_TARGETING": + // this event is triggered when your user doesn't want personalised targeting of ads and such + break; + case "AD_ERROR": + sdkContext.errors += 1; + if (sdkContext.errors >= 2) { + if (sdkContext.lastRequestedAd === "interstitial") + dispatch("interstitialEnd", false); + else dispatch("rewardedEnd", false); + } else { + dispatch(sdkContext.lastRequestedAd); + } + break; + } + }, + }; + }, + //init() {}, + setUpEventListeners() { + listen("interstitial", () => { + dispatch("adStarted", sdkContext.lastRequestedAd); + sdk.showBanner(); + }); + listen("rewarded", () => { + dispatch("adStarted", sdkContext.lastRequestedAd); + sdk.showBanner(); + }); + }, + hasAdblock() { + return false; + }, + }, + }, + { + name: "CoolMathGames", + get sdk() { + return null; + }, + scriptSrc: null, + hasAds: false, + enableOnlyInProduction: true, + hasBanner: false, + implementation: { + //async preInit(debug = false, data) {}, + init() {}, + setUpEventListeners() { + listen("replayLevel", (level) => { + parent.cmgGameEvent("replay", level.toString()); + }); + listen("gameplayStart", () => { + parent.cmgGameEvent("start"); + }); + listen("levelStart", (level) => { + parent.cmgGameEvent("start", level.toString()); + }); + }, + hasAdblock() { + return false; + }, + }, + }, + ]; + + let currentSdk = null; + let enabled = false; + const Wrapper = { + get enabled() { + return enabled; + }, + get currentSdk() { + return currentSdk; + }, + async init(name, debug = false, data = {}) { + return new Promise(async (resolve) => { + currentSdk = supportedNetworks.find( + (x) => x.name.toLowerCase() === name.toLowerCase() + ); + if (currentSdk) { + enabled = true; + if (currentSdk.enableOnlyInProduction && debug) { + enabled = false; + resolve(); + } else { + if (currentSdk.implementation.preInit) + await currentSdk.implementation.preInit(debug, data); + if (currentSdk.scriptSrc) { + addScript( + currentSdk.scriptSrc, + currentSdk.name + "-jssdk", + async () => { + sdk = currentSdk.sdk; + currentSdk.implementation.setUpEventListeners(); + if (currentSdk.implementation.init) + await currentSdk.implementation.init(debug, data); + resolve(); + } + ); + } else { + resolve(); + } + } + } else { + resolve(); + } + }); + }, + onPause(fn) { + listen("pause", fn); + }, + pause() { + dispatch("pause"); + }, + onResume(fn) { + listen("resume", fn); + }, + resume() { + dispatch("resume"); + }, + onMute(fn) { + listen("mute", fn); + }, + mute() { + dispatch("mute"); + }, + onUnmute(fn) { + listen("unmute", fn); + }, + unmute() { + dispatch("unmute"); + }, + onUnlockAllLevels(fn) { + window.unlockAllLevels = fn; + }, + hasAdblock() { + if (currentSdk && currentSdk.implementation.hasAdblock) + return currentSdk.implementation.hasAdblock(); + return false; + }, + loadingStart() { + dispatch("loadingStart"); + }, + loadingProgress(progress) { + progress = Math.min(Math.max(0, progress), 100); + dispatch("loadingProgress", progress); + }, + loadingEnd() { + dispatch("loadingEnd"); + }, + gameplayStart() { + dispatch("gameplayStart"); + }, + gameplayStop() { + dispatch("gameplayStop"); + }, + happyTime() { + dispatch("happyTime"); + }, + levelStart(level) { + dispatch("levelStart", level); + }, + replayLevel(level) { + dispatch("replayLevel", level); + }, + score(score) { + dispatch("score", score); + }, + banner(data) { + dispatch("banner", data); + }, + interstitial() { + sdkContext.lastRequestedAd = "interstitial"; + if (!currentSdk || !currentSdk.hasAds) { + dispatch("adStarted", sdkContext.lastRequestedAd); + return Promise.resolve(false); + } + return new Promise((resolve) => { + let gameplayStarted = sdkContext.gameplayStarted; + if (gameplayStarted) Wrapper.gameplayStop(); + Wrapper.mute(); + dispatch("interstitial"); + listenOnce("interstitialEnd", (...args) => { + if (gameplayStarted) Wrapper.gameplayStart(); + Wrapper.unmute(); + resolve(...args); + }); + }); + }, + rewarded() { + sdkContext.lastRequestedAd = "rewarded"; + if (!currentSdk || !currentSdk.hasAds) { + dispatch("adStarted", sdkContext.lastRequestedAd); + return Promise.resolve(false); + } + return new Promise((resolve) => { + let gameplayStarted = sdkContext.gameplayStarted; + if (gameplayStarted) Wrapper.gameplayStop(); + Wrapper.mute(); + dispatch("rewarded"); + listenOnce("rewardedEnd", (...args) => { + if (gameplayStarted) Wrapper.gameplayStart(); + Wrapper.unmute(); + resolve(...args); + }); + }); + }, + onAdStarted(fn) { + listen("adStarted", fn); + }, + hasAds() { + return currentSdk && currentSdk.hasAds ? 1 : 0; + }, + }; + return Wrapper; +})(); diff --git a/gversion/gs/tunnelrush2/tunnel-rush-favicon-m135x135.jpg b/gversion/gs/tunnelrush2/tunnel-rush-favicon-m135x135.jpg new file mode 100644 index 0000000..ecf84cb Binary files /dev/null and b/gversion/gs/tunnelrush2/tunnel-rush-favicon-m135x135.jpg differ diff --git a/gversion/gs/tunnelrush2/tunnel-rush.html b/gversion/gs/tunnelrush2/tunnel-rush.html new file mode 100644 index 0000000..09cd284 --- /dev/null +++ b/gversion/gs/tunnelrush2/tunnel-rush.html @@ -0,0 +1,32 @@ + + + +Play Tunnel Rush Game Online !
Tunnel Rush
Ok, PLAY NOW!
+ + \ No newline at end of file diff --git a/gversion/images/aitools.gif b/gversion/images/aitools.gif new file mode 100644 index 0000000..5f3af71 Binary files /dev/null and b/gversion/images/aitools.gif differ diff --git a/gversion/images/anime.gif b/gversion/images/anime.gif new file mode 100644 index 0000000..1038aef Binary files /dev/null and b/gversion/images/anime.gif differ diff --git a/gversion/images/games.gif b/gversion/images/games.gif new file mode 100644 index 0000000..5b66dda Binary files /dev/null and b/gversion/images/games.gif differ diff --git a/gversion/images/media.gif b/gversion/images/media.gif new file mode 100644 index 0000000..90092a2 Binary files /dev/null and b/gversion/images/media.gif differ diff --git a/gversion/images/return.gif b/gversion/images/return.gif new file mode 100644 index 0000000..d813eb1 Binary files /dev/null and b/gversion/images/return.gif differ diff --git a/gversion/mainsite.html b/gversion/mainsite.html new file mode 100644 index 0000000..4a7fe62 --- /dev/null +++ b/gversion/mainsite.html @@ -0,0 +1,77 @@ + + + + + + + + This content is blocked! + + + + + + + + + + + + + + \ No newline at end of file diff --git a/gversion/media.html b/gversion/media.html new file mode 100644 index 0000000..a9c2ae8 --- /dev/null +++ b/gversion/media.html @@ -0,0 +1,75 @@ + + + + + + + + This content is blocked! + + + + + + + + + + +
+ +
+
+
+ + + + + \ No newline at end of file diff --git a/gversion/mediahandler.js b/gversion/mediahandler.js new file mode 100644 index 0000000..352f467 --- /dev/null +++ b/gversion/mediahandler.js @@ -0,0 +1,67 @@ +const apiKey = 'd93115754010beb32ae8956c26dbc590'; // not my api key. is that bad? +const movieContainer = document.getElementById('mediascroller'); +const searchInput = document.getElementById('searchinputMedia'); +function newpage(url) { + window.location.href = url; +} +function addMediaButton(item) { + const button = document.createElement('button'); + button.className = 'mediabutton'; + + const image = document.createElement('img'); + image.src = item.poster_path ? `https://image.tmdb.org/t/p/w500${item.poster_path}` : 'placeholder.jpg'; + image.className = 'mediabutton-image'; + button.appendChild(image); + + const text = document.createElement('span'); + text.innerText = item.title || item.name; + button.appendChild(text); + + button.onclick = () => handleMediaClick(item); + + movieContainer.appendChild(button); +} + +function handleMediaClick(item) { + if (item.media_type === "movie") { + let id = item.id; + let season = -1; + let episode = -1; + newpage(`portal.html?id=${encodeURIComponent(id)}&season=${encodeURIComponent(season)}&episode=${encodeURIComponent(episode)}`); + } else if (item.media_type === "tv") { + let id = item.id; + let season = prompt('Which season?'); + let seasonnumber = Number(season) + let episode = prompt('What episode?'); + let episodenumber = Number(episode) + if(!isNaN(seasonnumber) && !isNaN(episodenumber && seasonnumber > 0 && episodenumber > 0) ) { + newpage(`portal.html?id=${encodeURIComponent(id)}&season=${encodeURIComponent(season)}&episode=${encodeURIComponent(episode)}`); + } + else {alert('invalid')} + + } +} + + +function searchmedia(query) { + fetch(`https://api.themoviedb.org/3/search/multi?api_key=${apiKey}&include_adult=false&query=${encodeURIComponent(query)}`) + .then(response => response.json()) + .then(data => { + movieContainer.innerHTML = ''; + data.results.forEach(item => { + if (!(item.genre_ids.includes(2000) && item.original_language === 'ja')) { + addMediaButton(item); + } + }); + }) + .catch(error => console.error('Error fetching movies and TV shows:', error)); +} + + +// event istener +searchInput.addEventListener('input', () => { + const query = searchInput.value.trim(); + if (query.length > 2) { + searchmedia(query); + } +}); diff --git a/gversion/newpage.js b/gversion/newpage.js new file mode 100644 index 0000000..5f5b75d --- /dev/null +++ b/gversion/newpage.js @@ -0,0 +1,3 @@ +function newpage(url) { + window.location.href = url; +} \ No newline at end of file diff --git a/gversion/portal.html b/gversion/portal.html new file mode 100644 index 0000000..2c44c77 --- /dev/null +++ b/gversion/portal.html @@ -0,0 +1,114 @@ + + + + + + + + + This content is blocked! + + + + + + + + + + + + + + \ No newline at end of file diff --git a/gversion/sorry.html b/gversion/sorry.html new file mode 100644 index 0000000..5cb6c95 --- /dev/null +++ b/gversion/sorry.html @@ -0,0 +1 @@ +sorry, as of now this is not a feature \ No newline at end of file diff --git a/htaccess b/htaccess index 960c3a4..e706e56 100644 --- a/htaccess +++ b/htaccess @@ -8,3 +8,50 @@ Header set Pragma "no-cache" Header set Expires "0" +# JavaScript files +AddType application/javascript .js + +# CSS files +AddType text/css .css + +# JSON files +AddType application/json .json + +# HTML files +AddType text/html .html .htm + +# Images +AddType image/jpeg .jpeg .jpg +AddType image/png .png +AddType image/gif .gif +AddType image/svg+xml .svg +AddType image/webp .webp + +# Fonts +AddType font/woff .woff +AddType font/woff2 .woff2 +AddType application/font-woff .woff +AddType application/font-woff2 .woff2 +AddType font/ttf .ttf +AddType font/otf .otf + +# Videos +AddType video/mp4 .mp4 +AddType video/webm .webm +AddType video/ogg .ogv + +# Audio +AddType audio/mpeg .mp3 +AddType audio/ogg .ogg + +# Documents +AddType application/pdf .pdf +AddType application/zip .zip +AddType application/x-rar-compressed .rar + +# Other +AddType text/plain .txt +AddType application/x-shockwave-flash .swf +AddType application/x-javascript .js +Options -Indexes +autoindex off; diff --git a/index.html b/index.html index 6dc3f87..8a47889 100644 --- a/index.html +++ b/index.html @@ -12,18 +12,6 @@ - - diff --git a/script.js b/script.js index ef0d2fe..a28890a 100644 --- a/script.js +++ b/script.js @@ -2,12 +2,15 @@ function switchStylesheet(newStylesheet) { //switches styles var link = document.getElementById('stylesheet'); link.href = newStylesheet; } + function newpage(url) { + window.location.href = url; + } function aboutblanker() { const iframe = document.getElementById('hiddenIframe'); var newWindow = window.open('about:blank'); if (newWindow) { window.location.replace("https://www.google.com/webhp?igu=1"); - var uURL = iframe.src + var uURL = new URL('/gversion/mainsite.html', location.origin + location.pathname).href; newWindow.document.open(); newWindow.document.write(` @@ -45,23 +48,27 @@ function aboutblanker() { document.addEventListener('DOMContentLoaded', () => { const secretCode = window.config.entryPhrase; const alternatecode = window.config.blanker; + const ifproxy = window.config.useproxy let input = ''; document.addEventListener('keydown', (event) => { input += event.key; // if statement to track inputs to switch styles and content on the site - if (input.endsWith(secretCode)) { + if (input.endsWith(secretCode) && ifproxy == "true") { document.getElementById('guard').style.display = 'none' switchStylesheet('truth.css') document.getElementById('secretContent').style.display = 'block'; } - if (input.endsWith(alternatecode)) { + if (input.endsWith(alternatecode) && ifproxy == "true") { aboutblanker(); } //optional if (input.length > secretCode.length) { input = input.slice(-secretCode.length); } + if (input.endsWith(secretCode) && ifproxy == "false") { + aboutblanker() + } }); }); diff --git a/security.js b/security.js index 7c9439f..d50ac98 100644 --- a/security.js +++ b/security.js @@ -2,7 +2,7 @@ // the idea of this is to stop administrators from seeing the true nature of the site // that being said you still can see the source code of the site pretty easily // and i also don't want to obfuscuation - +/* document.addEventListener('contextmenu', event => event.preventDefault()); document.onkeydown = (e) => { @@ -35,3 +35,4 @@ document.onkeydown = (e) => { e.stopPropagation(); } }; +*/ \ No newline at end of file diff --git a/service-worker.js b/service-worker.js deleted file mode 100644 index 0bd576e..0000000 --- a/service-worker.js +++ /dev/null @@ -1,16 +0,0 @@ -self.addEventListener('fetch', (event) => { - const url = new URL(event.request.url); - if (url.origin === location.origin) { - event.respondWith( - fetch(event.request).then(response => { - const clonedResponse = response.clone(); - caches.open('my-cache').then(cache => { - cache.put(event.request, clonedResponse); - }); - return response; - }).catch(() => { - return caches.match(event.request); - }) - ); - } -});